diff --git a/CMakeLists.txt b/CMakeLists.txt index 142dce2e..ddb7b529 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -23,12 +23,35 @@ option(WITH_PERSISTENCE "Build dxf/dwg support" ON) # Define compiler warnings if (NOT MSVC) # Too much warnings on MSVC add_definitions("-Wall") + include(GNUInstallDirs) endif() -include(GNUInstallDirs) set(FINAL_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}") if(EXISTS "${CMAKE_SOURCE_DIR}/conan_toolchain.cmake") + #set(FINAL_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}") + set(FINAL_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}") + set(CMAKE_INSTALL_BINDIR "bin") + + #SET(CPACK_GENERATOR "ZIP;TGZ") + SET(CPACK_BINARY_NSIS True) + SET(CPACK_NSIS_DISPLAY_NAME "LibreCAD3") + set(CPACK_NSIS_PACKAGE_NAME "LibreCAD3") + set(CPACK_PACKAGE_VENDOR "librecad.org") + set(CPACK_SOURCE_INSTALLED_DIRECTORIES "${CMAKE_SOURCE_DIR}/build/bin;.") + set(CPACK_BUILD_SOURCE_DIRS "${CMAKE_SOURCE_DIR}/build/bin") + + #SET(CPACK_NSIS_INSTALLED_ICON_NAME "${CMAKE_SOURCE_DIR}/build/bin/librecad.exe") + SET(CPACK_NSIS_PACKAGE_NAME "LibreCAD3") + set(CPACK_CREATE_DESKTOP_LINKS "LibreCAD3") + set(CPACK_PACKAGE_EXECUTABLES "librecad.exe;LibreCAD3") + set(CPACK_PACKAGE_INSTALL_DIRECTORY "LibreCAD3") + set(CPACK_PACKAGE_NAME "LibreCAD3") + set(CPACK_INSTALL_CMAKE_PROJECTS "build/bin/Release;LibreCAD3;ALL;/") + set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_SOURCE_DIR}/LICENSE") + file(COPY "${CMAKE_SOURCE_DIR}/LICENSE" DESTINATION "${FINAL_INSTALL_DIR}") + include(CPack) + #include(${CMAKE_SOURCE_DIR}/conan_toolchain.cmake) set(CMAKE_FIND_LIBRARY_PREFIXES "" "lib") @@ -36,18 +59,6 @@ if(EXISTS "${CMAKE_SOURCE_DIR}/conan_toolchain.cmake") set(WITH_LUACMDINTERFACE FALSE) set(WITH_RENDERING_UNITTESTS OFF) set(WITH_CAIRO OFF) - include(CPack) - SET(CPACK_GENERATOR "ZIP;TGZ") - SET(CPACK_BINARY_NSIS True) - SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin\\librecad.exe") - set(CPACK_CREATE_DESKTOP_LINKS "bin\\librecad.exe") - set(CPACK_PACKAGE_EXECUTABLES "bin\\librecad.exe") - set(CPACK_PACKAGE_INSTALL_DIRECTORY "LibreCAD3") - set(CPACK_NSIS_PACKAGE_NAME "LibreCAD3") - set(CPACK_PACKAGE_VENDOR "librecad.org") - set(CPACK_PACKAGE_NAME "LibreCAD") - set(CPACK_INSTALL_CMAKE_PROJECTS "build;LibreCAD3;lcUI;C:/Program Files") - #set(WITH_UNITTESTS ON) #set(Boost_NO_SYSTEM_PATHS true) diff --git a/lcUI/CMakeLists.txt b/lcUI/CMakeLists.txt index 961ff30c..ca121b40 100644 --- a/lcUI/CMakeLists.txt +++ b/lcUI/CMakeLists.txt @@ -12,19 +12,6 @@ set(CMAKE_AUTORCC ON) # Instruct CMake to run moc automatically when needed. set(CMAKE_AUTOMOC ON) -if (MSVC) - include(CPack) - SET(CPACK_GENERATOR "ZIP;TGZ") - SET(CPACK_BINARY_NSIS True) - SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin/librecad.exe") - set(CPACK_CREATE_DESKTOP_LINKS "bin/librecad.exe") - set(CPACK_PACKAGE_EXECUTABLES "bin/librecad.exe") - set(CPACK_PACKAGE_INSTALL_DIRECTORY "LibreCAD3") - set(CPACK_NSIS_PACKAGE_NAME "LibreCAD3") - set(CPACK_PACKAGE_VENDOR "librecad.org") - set(CPACK_PACKAGE_NAME "LibreCAD") - set(CPACK_INSTALL_CMAKE_PROJECTS, "build;LibreCAD3;lcUI;C:/Program Files") -endif() set(QT_USE_QTOPENGL TRUE) @@ -312,11 +299,12 @@ endif() # INSTALLATION install(TARGETS librecad DESTINATION "${CMAKE_INSTALL_BINDIR}") -if (MSVC) - install(DIRECTORY "${CMAKE_SOURCE_DIR}/lcUI/ui" DESTINATION "lcUI") +if (NOT MSVC) + install(DIRECTORY "${CMAKE_SOURCE_DIR}/lcUI/ui" DESTINATION "usr/share/librecad/lcUI") else() - install(DIRECTORY "${CMAKE_SOURCE_DIR}/lcUI/ui" DESTINATION "usr/share/librecad/lcUI") + install(TARGETS librecad DESTINATION "${FINAL_INSTALL_DIR}") + install(DIRECTORY "${CMAKE_SOURCE_DIR}/build/bin/lcUI/ui" DESTINATION "lcUI") endif() - file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/default_ui_settings.json" DESTINATION "${SETTINGS_PATH}") file(COPY "${CMAKE_CURRENT_SOURCE_DIR}/settings_schema.json" DESTINATION "${SETTINGS_PATH}") + diff --git a/lckernel/CMakeLists.txt b/lckernel/CMakeLists.txt index a37a8454..79941184 100644 --- a/lckernel/CMakeLists.txt +++ b/lckernel/CMakeLists.txt @@ -2,17 +2,11 @@ cmake_minimum_required(VERSION 3.6...3.27) project(LCKERNEL) #TODO: Fix this +include(CPack) set(PATTERN_RESOURCE_PATH ${CMAKE_SOURCE_DIR}/res/hatch) -if (MSVC) - string(REGEXP REPLACE "^?:/" "" FINAL_INSTALL_DIR "${FINAL_INSTALL_DIR}") - install(DIRECTORY "${CMAKE_SOURCE_DIR}/res/hatch" - DESTINATION "${FINAL_INSTALL_DIR}/librecad" - ) -else() - install(DIRECTORY "${CMAKE_SOURCE_DIR}/res/hatch" - DESTINATION "${FINAL_INSTALL_DIR}/usr/share/librecad" - ) -endif() +install(DIRECTORY "${CMAKE_SOURCE_DIR}/res/hatch" + DESTINATION "${FINAL_INSTALL_DIR}/usr/share/librecad" +) #Include TinySpline add_definitions("-DTINYSPLINE_DOUBLE_PRECISION") @@ -300,9 +294,6 @@ if (MSVC) endif() # INSTALLATION -if (MSVC) - include(CPack) -endif() install(TARGETS lckernel ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})