X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=CMakeLists.txt;h=abf9ce0e206bbb3196510265332b8f9ef9db6b7c;hb=0ea66542289a560310edeacf8dabab3ce6a663bd;hp=4616ba8707b2a23b7c18d140fbff1c537769532a;hpb=1b3871b30287e38d7587861d4a4438c6ea683933;p=lyx.git diff --git a/CMakeLists.txt b/CMakeLists.txt index 4616ba8707..abf9ce0e20 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -100,7 +100,7 @@ LYX_OPTION(PROFILE "Build profile version" OFF GCC) LYX_OPTION(EXTERNAL_BOOST "Use external boost" OFF GCC) LYX_OPTION(PROGRAM_SUFFIX "Append version suffix to binaries" ON GCC) LYX_OPTION(DEBUG_GLIBC "Enable libstdc++ debug mode" OFF GCC) -LYX_OPTION(DEBUG_GLIBC_PEDANTIC "Enable libstdc++pedantic debug mode" OFF GCC) +LYX_OPTION(DEBUG_GLIBC_PEDANTIC "Enable libstdc++ pedantic debug mode" OFF GCC) LYX_OPTION(STDLIB_DEBUG "Use debug stdlib" OFF GCC) LYX_OPTION(CONCEPT_CHECKS "Enable concept-checks" OFF GCC) LYX_OPTION(PROFILE "Build with options for gprof" OFF GCC) @@ -129,15 +129,15 @@ endif() # Check option dependencies -if(LYX_CPACK) - set(LYX_INSTALL ON) -endif() - if(LYX_DMG) set(LYX_BUNDLE ON) set(LYX_CPACK ON) endif() +if(LYX_CPACK) + set(LYX_INSTALL ON) +endif() + if(LYX_INSTALL) set(LYX_NLS ON) if (WIN32) @@ -149,7 +149,9 @@ if(LYX_INSTALL) set(LYX_CONSOLE OFF) endif() set(LYX_PACKAGE_SUFFIX ON) - set(LYX_RELEASE ON) + if(NOT LYX_DEBUG) + set(LYX_RELEASE ON) + endif() set(LYX_PROFILE OFF) endif() @@ -237,12 +239,16 @@ else() set(USE_POSIX_PACKAGING ON) endif() -macro(setstripped _varname _value) - string(STRIP ${_value} _v) - if(USE_POSIX_PACKAGING) - string(TOLOWER ${_v} ${_varname}) +macro(setstripped _varname) + if(${ARGC} GREATER 1) + string(STRIP "${ARGV1}" _v) + if(USE_POSIX_PACKAGING) + string(TOLOWER ${_v} ${_varname}) + else() + set(${_varname} ${_v}) + endif() else() - set(${_varname} ${_v}) + set(${_varname}) endif() endmacro(setstripped) @@ -277,6 +283,7 @@ if (LYX_LOCALVERSIONING) # We use this value than also to set the package-patch-value MATH(EXPR tmp_REVISION_VERSION "(${CMAKE_MATCH_1}+40000)") set(LYX_REVISION_VERSION "${LYX_PATCH_VERSION}-${tmp_REVISION_VERSION}git") + set(ENABLE_DIST ON) endif() else() set(LYX_REVISION_VERSION git) #TODO use date @@ -447,7 +454,7 @@ if(NOT MSVC) set(LYX_CXX_FLAGS "${LYX_CXX_FLAGS} -D_GLIBCPP_CONCEPT_CHECKS") endif() set(CMAKE_CXX_FLAGS "${LYX_CXX_FLAGS} -fno-strict-aliasing " CACHE TYPE STRING FORCE) - set(CMAKE_CXX_FLAGS_DEBUG "${LYX_CXX_FLAGS} -fno-strict-aliasing -O0 -g -D_DEBUG" CACHE TYPE STRING FORCE) + set(CMAKE_CXX_FLAGS_DEBUG "${LYX_CXX_FLAGS} -fno-strict-aliasing -O0 -g3 -D_DEBUG" CACHE TYPE STRING FORCE) if(MINGW) set(CMAKE_CXX_FLAGS_RELEASE "${LYX_CXX_FLAGS} -O2 -DNDEBUG" CACHE TYPE STRING FORCE) else() @@ -756,4 +763,21 @@ endif() include("${TOP_CMAKE_PATH}/LyxPackaging.cmake") +if(ENABLE_DIST) + # Use git to create the source package + # git archive --format=tgz --output=/home/kornel/x.tar.gz master + if(UNIX) + set(DIST_FORMAT tgz) + else() + set(DIST_FORMAT zip) + endif() + set(DIST_NAME ${CMAKE_PROJECT_NAME}-${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}-${CMAKE_SYSTEM_NAME}.${DIST_FORMAT}) + + add_custom_command( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${DIST_NAME} + COMMAND ${LYX_GITVERSION} archive --format=${DIST_FORMAT} --output=${CMAKE_CURRENT_BINARY_DIR}/${DIST_NAME} master + WORKING_DIRECTORY ${TOP_SRC_DIR}) + add_custom_target(git-archive DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${DIST_NAME}) +endif() + message(STATUS)