summaryrefslogtreecommitdiff
path: root/indra/newview/CMakeLists.txt
diff options
context:
space:
mode:
authorNat Goodspeed <nat@lindenlab.com>2015-03-05 19:17:21 -0500
committerNat Goodspeed <nat@lindenlab.com>2015-03-05 19:17:21 -0500
commit032f27aaebc99b0ae4398ed40adc38cc295ba6c8 (patch)
tree1871c1a5e5b915b2ed777a9b7b3aefdc5d1af73e /indra/newview/CMakeLists.txt
parent611913f572db28a2805a07b092e9e1599bb0a6f3 (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-xindra/newview/CMakeLists.txt19
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