[Lemon-commits] Alpar Juttner: Add dist target to CMAKE conf. (#...
Lemon HG
hg at lemon.cs.elte.hu
Wed Feb 1 09:54:35 CET 2012
details: http://lemon.cs.elte.hu/hg/lemon/rev/fc1aa7c01c55
changeset: 1135:fc1aa7c01c55
user: Alpar Juttner <alpar [at] cs.elte.hu>
date: Wed Feb 01 06:43:50 2012 +0100
description:
Add dist target to CMAKE conf. (#434)
diffstat:
CMakeLists.txt | 27 +++++++++++++++++++++++++++
cmake/version.cmake.in | 2 +-
doc/CMakeLists.txt | 9 +++++++++
3 files changed, 37 insertions(+), 1 deletions(-)
diffs (62 lines):
diff --git a/CMakeLists.txt b/CMakeLists.txt
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -188,6 +188,33 @@
)
ENDIF()
+CONFIGURE_FILE(
+ ${PROJECT_SOURCE_DIR}/cmake/version.cmake.in
+ ${PROJECT_BINARY_DIR}/cmake/version.cmake
+ @ONLY
+)
+
+SET(ARCHIVE_BASE_NAME ${CMAKE_PROJECT_NAME})
+STRING(TOLOWER ${ARCHIVE_BASE_NAME} ARCHIVE_BASE_NAME)
+SET(ARCHIVE_NAME ${ARCHIVE_BASE_NAME}-${PROJECT_VERSION})
+ADD_CUSTOM_TARGET(dist
+ COMMAND cmake -E remove_directory ${ARCHIVE_NAME}
+ COMMAND hg archive ${ARCHIVE_NAME}
+ COMMAND cmake -E copy cmake/version.cmake ${ARCHIVE_NAME}/cmake/version.cmake
+ COMMAND tar -czf ${ARCHIVE_BASE_NAME}-nodoc-${PROJECT_VERSION}.tar.gz ${ARCHIVE_NAME}
+ COMMAND zip -r ${ARCHIVE_BASE_NAME}-nodoc-${PROJECT_VERSION}.zip ${ARCHIVE_NAME}
+ COMMAND cmake -E copy_directory doc/html ${ARCHIVE_NAME}/doc/html
+ COMMAND tar -czf ${ARCHIVE_NAME}.tar.gz ${ARCHIVE_NAME}
+ COMMAND zip -r ${ARCHIVE_NAME}.zip ${ARCHIVE_NAME}
+ COMMAND cmake -E copy_directory doc/html ${ARCHIVE_BASE_NAME}-doc-${PROJECT_VERSION}
+ COMMAND tar -czf ${ARCHIVE_BASE_NAME}-doc-${PROJECT_VERSION}.tar.gz ${ARCHIVE_BASE_NAME}-doc-${PROJECT_VERSION}
+ COMMAND zip -r ${ARCHIVE_BASE_NAME}-doc-${PROJECT_VERSION}.zip ${ARCHIVE_BASE_NAME}-doc-${PROJECT_VERSION}
+ COMMAND cmake -E remove_directory ${ARCHIVE_NAME}
+ COMMAND cmake -E remove_directory ${ARCHIVE_BASE_NAME}-doc-${PROJECT_VERSION}
+ DEPENDS html
+ WORKING_DIRECTORY ${PROJECT_BINARY_DIR})
+
+# CPACK config (Basically for NSIS)
IF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR})
SET(CPACK_PACKAGE_NAME ${PROJECT_NAME})
SET(CPACK_PACKAGE_VENDOR "EGRES")
diff --git a/cmake/version.cmake.in b/cmake/version.cmake.in
--- a/cmake/version.cmake.in
+++ b/cmake/version.cmake.in
@@ -1,1 +1,1 @@
-SET(LEMON_VERSION "@PACKAGE_VERSION@" CACHE STRING "LEMON version string.")
+SET(LEMON_VERSION "@LEMON_VERSION@" CACHE STRING "LEMON version string.")
diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt
--- a/doc/CMakeLists.txt
+++ b/doc/CMakeLists.txt
@@ -17,6 +17,15 @@
@ONLY
)
+# Copy doc from source (if exists)
+IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/html AND
+ NOT EXISTS ${CMAKE_CURRENT_BINARY_DIR}/html/index.html)
+ MESSAGE(STATUS "Copy doc from source tree")
+ EXECUTE_PROCESS(
+ COMMAND cmake -E copy_directory ${CMAKE_CURRENT_SOURCE_DIR}/html ${CMAKE_CURRENT_BINARY_DIR}/html
+ )
+ENDIF()
+
IF(DOXYGEN_EXECUTABLE AND PYTHONINTERP_FOUND AND GHOSTSCRIPT_EXECUTABLE)
FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/)
SET(GHOSTSCRIPT_OPTIONS -dNOPAUSE -dBATCH -q -dEPSCrop -dTextAlphaBits=4 -dGraphicsAlphaBits=4 -sDEVICE=pngalpha)
More information about the Lemon-commits
mailing list