reorganize files and fix build.
+ build is split into dist and nox variants.
This commit is contained in:
39
cmake/imgui.cmake
Normal file
39
cmake/imgui.cmake
Normal file
@@ -0,0 +1,39 @@
|
||||
find_package(SDL2 REQUIRED)
|
||||
find_package(OpenGL REQUIRED)
|
||||
find_package(Freetype)
|
||||
if (DEFINED FREETYPE_INCLUDE_DIRS)
|
||||
add_definitions(-DIMGUI_ENABLE_FREETYPE)
|
||||
set(FREETYPE_SOURCES
|
||||
ext/imgui/misc/freetype/imgui_freetype.cpp
|
||||
ext/imgui/misc/freetype/imgui_freetype.h)
|
||||
endif()
|
||||
|
||||
add_library(imgui STATIC
|
||||
# Main Imgui files
|
||||
ext/imgui/imgui.cpp
|
||||
ext/imgui/imgui.h
|
||||
ext/imgui/imgui_draw.cpp
|
||||
ext/imgui/imgui_tables.cpp
|
||||
ext/imgui/imgui_widgets.cpp
|
||||
ext/imgui/imgui_demo.cpp
|
||||
|
||||
ext/imgui/backends/imgui_impl_sdl2.cpp
|
||||
ext/imgui/backends/imgui_impl_sdl2.h
|
||||
ext/imgui/backends/imgui_impl_opengl3.cpp
|
||||
ext/imgui/backends/imgui_impl_opengl3.h
|
||||
|
||||
$<IF:$<TARGET_EXISTS:Freetype::Freetype>,${FREETYPE_SOURCES},>)
|
||||
add_library(imgui::imgui ALIAS imgui)
|
||||
target_link_libraries(imgui
|
||||
PUBLIC
|
||||
OpenGL::GL
|
||||
$<IF:$<TARGET_EXISTS:Freetype::Freetype>,Freetype::Freetype,>
|
||||
$<TARGET_NAME_IF_EXISTS:SDL2::SDL2main>
|
||||
$<IF:$<TARGET_EXISTS:SDL2::SDL2>,SDL2::SDL2,SDL2::SDL2-static>)
|
||||
target_include_directories(imgui PUBLIC
|
||||
ext/imgui/
|
||||
ext/imgui/backends/
|
||||
ext/imgui/misc/freetype
|
||||
$<IF:$<TARGET_EXISTS:Freetype::Freetype>,${FREETYPE_INCLUDE_DIRS},>)
|
||||
|
||||
include_directories(ext/ ${SDL2_INCLUDE_DIRS})
|
||||
41
cmake/packaging.cmake
Normal file
41
cmake/packaging.cmake
Normal file
@@ -0,0 +1,41 @@
|
||||
# Packaging support
|
||||
include(InstallRequiredSystemLibraries)
|
||||
|
||||
set(CPACK_PACKAGE_VENDOR "Shimmering Clarity")
|
||||
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "kyle's editor")
|
||||
set(CPACK_PACKAGE_VERSION_MAJOR ${PROJECT_VERSION_MAJOR})
|
||||
set(CPACK_PACKAGE_VERSION_MINOR ${PROJECT_VERSION_MINOR})
|
||||
set(CPACK_PACKAGE_VERSION_PATCH ${PROJECT_VERSION_PATCH})
|
||||
|
||||
# Debian settings
|
||||
set(CPACK_DEBIAN_PACKAGE_MAINTAINER "K. Isom")
|
||||
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "kyle's editor")
|
||||
set(CPACK_PACKAGE_DESCRIPTION ${CPACK_PACKAGE_DESCRIPTION})
|
||||
if(${BUILD_GUI})
|
||||
set(CPACK_DEBIAN_PACKAGE_DEPENDS
|
||||
"libsdl2-2.0-0, libfreetype6 (>= 2.11.1)"
|
||||
)
|
||||
endif()
|
||||
set(CPACK_DEBIAN_PACKAGE_SECTION universe/editors)
|
||||
set(CPACK_DEB_COMPONENT_INSTALL ON)
|
||||
set(CPACK_COMPONENTS_ALL dist nox)
|
||||
set(CPACK_COMPONENTS_GROUPING ONE_PER_GROUP)
|
||||
|
||||
if(LINUX)
|
||||
set(CPACK_GENERATOR "DEB;STGZ;TGZ")
|
||||
elseif(APPLE)
|
||||
set(CPACK_GENERATOR "productbuild;TGZ")
|
||||
elseif(MSVC OR MSYS OR MINGW)
|
||||
set(CPACK_GENERATOR "NSIS;ZIP")
|
||||
else()
|
||||
set(CPACK_GENERATOR "ZIP")
|
||||
endif()
|
||||
|
||||
set(CPACK_SOURCE_GENERATOR "TGZ;ZIP")
|
||||
set(CPACK_SOURCE_IGNORE_FILES
|
||||
/.git
|
||||
/.idea
|
||||
/dist
|
||||
/.*build.*)
|
||||
|
||||
include(CPack)
|
||||
Reference in New Issue
Block a user