diff options
author | Nat Goodspeed <nat@lindenlab.com> | 2015-03-05 19:17:21 -0500 |
---|---|---|
committer | Nat Goodspeed <nat@lindenlab.com> | 2015-03-05 19:17:21 -0500 |
commit | 032f27aaebc99b0ae4398ed40adc38cc295ba6c8 (patch) | |
tree | 1871c1a5e5b915b2ed777a9b7b3aefdc5d1af73e /indra/newview/CMakeLists.txt | |
parent | 611913f572db28a2805a07b092e9e1599bb0a6f3 (diff) |
Simplify CMake code to generate viewer_version.txt and summary.json.
The quoting used for the cygwin printf command didn't work for 'cmake -E
echo'. The whole content was enclosed in single quotes, with individual
string elements enclosed in double quotes. But we ended up with a summary.json
containing (e.g.):
'{Type:viewer,Version:3.7.26.33262}'
instead of the desired:
{"Type":"viewer","Version":"3.7.26.33262"}
HOWEVER: I see no compelling reason why either of these files must be deferred
to build time. It's simpler and more robust to generate them both directly
from CMake at configure time.
Diffstat (limited to 'indra/newview/CMakeLists.txt')
-rwxr-xr-x | indra/newview/CMakeLists.txt | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 530699cfd9..e2c213389b 100755 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -1307,18 +1307,14 @@ source_group("CMake Rules" FILES ViewerInstall.cmake) # the viewer_version.txt file created here is for passing to viewer_manifest and autobuild # the summary.json file is created for the benefit of the TeamCity builds, where # it is used to provide descriptive information to the build results page -add_custom_target(generate_viewer_version ALL - COMMENT Generating '${CMAKE_CURRENT_BINARY_DIR}/viewer_version.txt' for manifest processing - COMMAND ${CMAKE_COMMAND} -E echo '${VIEWER_SHORT_VERSION}.${VIEWER_VERSION_REVISION}' > ${CMAKE_CURRENT_BINARY_DIR}/viewer_version.txt - - COMMENT Generating '${CMAKE_BINARY_DIR}/summary.json' for TeamCity builds - COMMAND ${CMAKE_COMMAND} -E echo '{"Type":"viewer","Version":"${VIEWER_SHORT_VERSION}.${VIEWER_VERSION_REVISION}"}' > ${CMAKE_BINARY_DIR}/summary.json - ) +file(WRITE "${CMAKE_CURRENT_BINARY_DIR}/viewer_version.txt" + "${VIEWER_SHORT_VERSION}.${VIEWER_VERSION_REVISION}\n") +file(WRITE "${CMAKE_BINARY_DIR}/summary.json" + "{\"Type\":\"viewer\",\"Version\":\"${VIEWER_SHORT_VERSION}.${VIEWER_VERSION_REVISION}\"}\n") set_source_files_properties( llversioninfo.cpp tests/llversioninfo_test.cpp PROPERTIES - DEPENDS generate_viewer_version # dummy dependency to force recompile every time COMPILE_DEFINITIONS "${VIEWER_CHANNEL_VERSION_DEFINES}" # see BuildVersion.cmake ) @@ -1676,8 +1672,6 @@ if (WINDOWS) LINK_FLAGS_RELEASE "/FORCE:MULTIPLE /MAP\"secondlife-bin.MAP\" /OPT:REF /LARGEADDRESSAWARE" ) - add_dependencies(${VIEWER_BINARY_NAME} generate_viewer_version) - if(USE_PRECOMPILED_HEADERS) set_target_properties( ${VIEWER_BINARY_NAME} @@ -2002,8 +1996,6 @@ if (LINUX) llcommon ) - add_dependencies(${VIEWER_BINARY_NAME} generate_viewer_version) - add_custom_command( OUTPUT ${product}.tar.bz2 COMMAND ${PYTHON_EXECUTABLE} @@ -2087,8 +2079,6 @@ if (DARWIN) "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app/Contents/Info.plist" ) - add_dependencies(${VIEWER_BINARY_NAME} generate_viewer_version) - add_custom_command( TARGET ${VIEWER_BINARY_NAME} POST_BUILD COMMAND ${PYTHON_EXECUTABLE} @@ -2121,7 +2111,6 @@ if (DARWIN) if (PACKAGE) add_custom_target(llpackage ALL DEPENDS ${VIEWER_BINARY_NAME}) - add_dependencies(llpackage generate_viewer_version) add_custom_command( TARGET llpackage POST_BUILD |