From 822e3b15e2491ce8f3bd76c5b3ac70be695108e4 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Fri, 31 Aug 2018 14:17:00 -0400 Subject: [PATCH 01/21] SL-957: Use tar -C instead of changing tar's WORKING_DIRECTORY. Seems VIEWER_SYMBOL_FILE arrives from build.sh as a relative pathname, so passing that pathname to tar when we run tar with WORKING_DIRECTORY confuses it. But if we use tar's -C switch, we can achieve the effect we want (no leading directory prefixes in the tarball) without WORKING_DIRECTORY. Thing is, we have to run the desired directory through cygpath first, which is why we went with WORKING_DIRECTORY in the first place. --- indra/newview/CMakeLists.txt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 10210cd918..a54ee7279c 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -2271,6 +2271,9 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE execute_process(COMMAND "cygpath" "-u" "${VIEWER_SYMBOL_FILE}" OUTPUT_VARIABLE VIEWER_SYMBOL_FILE_CYGWIN OUTPUT_STRIP_TRAILING_WHITESPACE) + execute_process(COMMAND "cygpath" "-u" "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}" + OUTPUT_VARIABLE PARENT_DIRECTORY_CYGWIN + OUTPUT_STRIP_TRAILING_WHITESPACE) add_custom_command(OUTPUT "${VIEWER_SYMBOL_FILE}" # Use of 'tar ...j' here assumes VIEWER_SYMBOL_FILE endswith .tar.bz2; # testing a string suffix is painful enough in CMake language that @@ -2279,8 +2282,9 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE ARGS "cjf" "${VIEWER_SYMBOL_FILE_CYGWIN}" + "-C" + "${PARENT_DIRECTORY_CYGWIN}" "secondlife-bin.pdb" - WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}" DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/secondlife-bin.pdb" COMMENT "Packing viewer PDB into ${VIEWER_SYMBOL_FILE_CYGWIN}" ) From 392bf44a1f28dfac7583aca551745fe8499e9fe8 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Fri, 31 Aug 2018 14:26:32 -0400 Subject: [PATCH 02/21] SL-957: Name VIEWER_BINARY_NAME directly, not an assigned variable. If this theory is correct, setting VIEWER_APP_EXECUTABLE to VIEWER_BINARY_NAME and then referencing VIEWER_APP_EXECUTABLE instead of VIEWER_BINARY_NAME confuses CMake as to the filename involved. --- indra/newview/CMakeLists.txt | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index a54ee7279c..6997a4330f 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -2129,12 +2129,7 @@ if (DARWIN) ) set(VIEWER_APP_BUNDLE "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app") - # VIEWER_APP_EXECUTABLE was originally a prediction of the executable - # pathname that would result from running viewer_manifest.py, but CMake - # complained that there was no rule to make that executable. Try using the - # existing target. - set(VIEWER_APP_EXECUTABLE "${VIEWER_BINARY_NAME}") - set(VIEWER_APP_DSYM "${VIEWER_APP_EXECUTABLE}.dSYM") + set(VIEWER_APP_DSYM "${VIEWER_BINARY_NAME}.dSYM") set(VIEWER_APP_XCARCHIVE "${VIEWER_APP_BUNDLE}/../${product}.xcarchive.zip") configure_file( @@ -2296,12 +2291,12 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE add_custom_command(OUTPUT "${VIEWER_APP_DSYM}" COMMAND "dsymutil" ARGS - "${VIEWER_APP_EXECUTABLE}" - DEPENDS "${VIEWER_APP_EXECUTABLE}" + "${VIEWER_BINARY_NAME}" + DEPENDS "${VIEWER_BINARY_NAME}" COMMENT "Generating ${VIEWER_APP_DSYM}" ) add_custom_target(dsym_generate DEPENDS "${VIEWER_APP_DSYM}") - add_dependencies(dsym_generate "${VIEWER_APP_EXECUTABLE}") + add_dependencies(dsym_generate "${VIEWER_BINARY_NAME}") add_custom_command(OUTPUT "${VIEWER_SYMBOL_FILE}" # See above comments about "tar ...j" COMMAND "tar" From 503c2aa9a30ed484d9f41b415af6ec0f9ca93353 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Fri, 31 Aug 2018 15:42:58 -0400 Subject: [PATCH 03/21] SL-957: Pass an absolute pathname to CMake for VIEWER_SYMBOL_FILE. --- build.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/build.sh b/build.sh index d6a6d7aca8..de7e474479 100755 --- a/build.sh +++ b/build.sh @@ -116,8 +116,10 @@ pre_build() symplat="linux" ;; esac - # This name is consumed by indra/newview/CMakeLists.txt - VIEWER_SYMBOL_FILE="$build_dir/newview/$variant/secondlife-symbols-$symplat-${AUTOBUILD_ADDRSIZE}.tar.bz2" + # This name is consumed by indra/newview/CMakeLists.txt. Make it + # absolute because we've had troubles with relative pathnames. + abs_build_dir="$(cd "$build_dir"; pwd)" + VIEWER_SYMBOL_FILE="$abs_build_dir/newview/$variant/secondlife-symbols-$symplat-${AUTOBUILD_ADDRSIZE}.tar.bz2" fi # don't spew credentials into build log From 92b64fd59e6ac83bec8c165eb2f1ee31ff5eb059 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Fri, 31 Aug 2018 16:04:31 -0400 Subject: [PATCH 04/21] SL-957: Try removing quotes from ${VIEWER_BINARY_NAME} in CMake deps. --- indra/newview/CMakeLists.txt | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 6997a4330f..bed0132e23 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -2251,8 +2251,8 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE DEPENDS generate_breakpad_symbols.py VERBATIM) - add_custom_target(generate_symbols DEPENDS "${VIEWER_SYMBOL_FILE}" "${VIEWER_BINARY_NAME}" "${VIEWER_COPY_MANIFEST}") - add_dependencies(generate_symbols "${VIEWER_BINARY_NAME}") + add_custom_target(generate_symbols DEPENDS "${VIEWER_SYMBOL_FILE}" ${VIEWER_BINARY_NAME} "${VIEWER_COPY_MANIFEST}") + add_dependencies(generate_symbols ${VIEWER_BINARY_NAME}) if (WINDOWS OR LINUX) add_dependencies(generate_symbols "${VIEWER_COPY_MANIFEST}") endif (WINDOWS OR LINUX) @@ -2283,20 +2283,20 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/secondlife-bin.pdb" COMMENT "Packing viewer PDB into ${VIEWER_SYMBOL_FILE_CYGWIN}" ) - add_custom_target(generate_symbols DEPENDS "${VIEWER_SYMBOL_FILE}" "${VIEWER_BINARY_NAME}") - add_dependencies(generate_symbols "${VIEWER_BINARY_NAME}") + add_custom_target(generate_symbols DEPENDS "${VIEWER_SYMBOL_FILE}" ${VIEWER_BINARY_NAME}) + add_dependencies(generate_symbols ${VIEWER_BINARY_NAME}) endif (WINDOWS) if (DARWIN) # Have to run dsymutil first, then pack up the resulting .dSYM directory add_custom_command(OUTPUT "${VIEWER_APP_DSYM}" COMMAND "dsymutil" ARGS - "${VIEWER_BINARY_NAME}" - DEPENDS "${VIEWER_BINARY_NAME}" + ${VIEWER_BINARY_NAME} + DEPENDS ${VIEWER_BINARY_NAME} COMMENT "Generating ${VIEWER_APP_DSYM}" ) add_custom_target(dsym_generate DEPENDS "${VIEWER_APP_DSYM}") - add_dependencies(dsym_generate "${VIEWER_BINARY_NAME}") + add_dependencies(dsym_generate ${VIEWER_BINARY_NAME}) add_custom_command(OUTPUT "${VIEWER_SYMBOL_FILE}" # See above comments about "tar ...j" COMMAND "tar" From db76dbba33b6c161486099b20b6f820f0e374ef6 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Fri, 31 Aug 2018 16:59:59 -0400 Subject: [PATCH 05/21] SL-957: Convert absolute VIEWER_SYMBOL_FILE to native_path. Thanks Ansariel. --- build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.sh b/build.sh index de7e474479..1f9daa78b2 100755 --- a/build.sh +++ b/build.sh @@ -119,7 +119,7 @@ pre_build() # This name is consumed by indra/newview/CMakeLists.txt. Make it # absolute because we've had troubles with relative pathnames. abs_build_dir="$(cd "$build_dir"; pwd)" - VIEWER_SYMBOL_FILE="$abs_build_dir/newview/$variant/secondlife-symbols-$symplat-${AUTOBUILD_ADDRSIZE}.tar.bz2" + VIEWER_SYMBOL_FILE="$(native_path "$abs_build_dir/newview/$variant/secondlife-symbols-$symplat-${AUTOBUILD_ADDRSIZE}.tar.bz2")" fi # don't spew credentials into build log From 444fbd1b44ae5c48e95030b326c0b14225e87dbe Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Tue, 4 Sep 2018 15:37:21 -0400 Subject: [PATCH 06/21] SL-957: Try removing redundant add_custom_command() dependency. --- indra/newview/CMakeLists.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index bed0132e23..915bfdc39e 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -2292,7 +2292,8 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE COMMAND "dsymutil" ARGS ${VIEWER_BINARY_NAME} - DEPENDS ${VIEWER_BINARY_NAME} +## redundant with add_dependencies() below, and possibly harmful +## DEPENDS ${VIEWER_BINARY_NAME} COMMENT "Generating ${VIEWER_APP_DSYM}" ) add_custom_target(dsym_generate DEPENDS "${VIEWER_APP_DSYM}") From 150199d542453f6e9a3b6c6e466e778ca5a027d0 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Tue, 4 Sep 2018 16:43:34 -0400 Subject: [PATCH 07/21] SL-957: Try being more explicit about VIEWER_APP_DSYM full pathname. --- indra/newview/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 915bfdc39e..f3b87cb93c 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -2129,7 +2129,7 @@ if (DARWIN) ) set(VIEWER_APP_BUNDLE "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app") - set(VIEWER_APP_DSYM "${VIEWER_BINARY_NAME}.dSYM") + set(VIEWER_APP_DSYM "${VIEWER_APP_BUNDLE}/Contents/MacOS/${product}.dSYM") set(VIEWER_APP_XCARCHIVE "${VIEWER_APP_BUNDLE}/../${product}.xcarchive.zip") configure_file( From d1c6b9820c3c5eda2ca797df104927f4e8f02b24 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Tue, 4 Sep 2018 19:28:55 -0400 Subject: [PATCH 08/21] SL-957: Try passing dsymutil the full pathname of VIEWER_APP_EXE. --- indra/newview/CMakeLists.txt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index f3b87cb93c..e573b927d7 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -2129,7 +2129,8 @@ if (DARWIN) ) set(VIEWER_APP_BUNDLE "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${product}.app") - set(VIEWER_APP_DSYM "${VIEWER_APP_BUNDLE}/Contents/MacOS/${product}.dSYM") + set(VIEWER_APP_EXE "${VIEWER_APP_BUNDLE}/Contents/MacOS/${product}") + set(VIEWER_APP_DSYM "${VIEWER_APP_EXE}.dSYM") set(VIEWER_APP_XCARCHIVE "${VIEWER_APP_BUNDLE}/../${product}.xcarchive.zip") configure_file( @@ -2291,9 +2292,7 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE add_custom_command(OUTPUT "${VIEWER_APP_DSYM}" COMMAND "dsymutil" ARGS - ${VIEWER_BINARY_NAME} -## redundant with add_dependencies() below, and possibly harmful -## DEPENDS ${VIEWER_BINARY_NAME} + ${VIEWER_APP_EXE} COMMENT "Generating ${VIEWER_APP_DSYM}" ) add_custom_target(dsym_generate DEPENDS "${VIEWER_APP_DSYM}") From 42931d67a15d9a018f06ec2e5fc8d78549ab4cd8 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Wed, 5 Sep 2018 17:27:24 -0400 Subject: [PATCH 09/21] SL-957: Don't move viewer executable until final viewer_manifest run. viewer_manifest is run twice by CMakeLists.txt: once with --actions=copy and once with the default actions copy and package. The fact that we (try to) move the Mac viewer executable both times has confused things on a number of occasions. Currently it's bollixing our attempt to run dsymutil on the executable so we can package up the Mac symbols for both codeticket and BugSplat. Introduce DarwinManifest.is_rearranging() that tests whether either "package" or "unpacked" is in self.args["actions"], echoing an earlier test. Make several things conditional on that, notably moving the executable. --- indra/newview/viewer_manifest.py | 64 +++++++++++++++++++------------- 1 file changed, 39 insertions(+), 25 deletions(-) diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index f73b444a6e..d70dbed9e0 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -899,6 +899,12 @@ class DarwinManifest(ViewerManifest): # darwin requires full app bundle packaging even for debugging. return True + def is_rearranging(self): + # That said, some stuff should still only be performed once. + # Are either of these actions in 'actions'? Is the set intersection + # non-empty? + return bool(set(["package", "unpacked"]).intersection(self.args['actions'])) + def construct(self): # These are the names of the top-level application and the embedded # applications for the VMP and for the actual viewer, respectively. @@ -926,18 +932,19 @@ class DarwinManifest(ViewerManifest): # the one file in top-level MacOS directory is the trampoline to # our nested launcher_app - with self.prefix(dst="MacOS"): - toplevel_MacOS = self.get_dst_prefix() - trampoline = self.put_in_file("""\ + if self.is_rearranging(): + with self.prefix(dst="MacOS"): + toplevel_MacOS = self.get_dst_prefix() + trampoline = self.put_in_file("""\ #!/bin/bash open "%s" --args "$@" """ % - # up one directory from MacOS to its sibling Resources directory - os.path.join('$(dirname "$0")', os.pardir, 'Resources', launcher_app), - "SL_Launcher", # write this file - "trampoline") # flag to add to list of copied files - # Script must be executable - self.run_command(["chmod", "+x", trampoline]) + # up one directory from MacOS to its sibling Resources directory + os.path.join('$(dirname "$0")', os.pardir, 'Resources', launcher_app), + "SL_Launcher", # write this file + "trampoline") # flag to add to list of copied files + # Script must be executable + self.run_command(["chmod", "+x", trampoline]) # Make a symlink to a nested app Frameworks directory that doesn't # yet exist. We shouldn't need this; the only things that need @@ -1018,12 +1025,19 @@ open "%s" --args "$@" continue fromwhere = os.path.join(toplevel_MacOS, f) towhere = self.dst_path_of(f) - print "Moving %s => %s" % \ - (self.relpath(fromwhere, relbase), - self.relpath(towhere, relbase)) - # now do it, only without relativizing paths - os.rename(fromwhere, towhere) + fromrel = self.relpath(fromwhere, relbase) + torel = self.relpath(towhere, relbase) + if not self.is_rearranging(): + print "Not yet moving {} => {}".format(fromrel, torel) + else: + print "Moving {} => {}".format(fromrel, torel) + # now do it, only without relativizing paths + os.rename(fromwhere, towhere) + # If we haven't yet moved executables, find our viewer + # executable where it was linked, in toplevel_MacOS. + # If we have, find it here. + whichdir = here if self.is_rearranging() else toplevel_MacOS # Pick the biggest of the executables as the real viewer. # Make (basename, fullpath) pairs; for each pair, # expand to (size, basename, fullpath) triples; sort @@ -1032,11 +1046,10 @@ open "%s" --args "$@" _, exename, exepath = \ sorted((os.path.getsize(path), name, path) for name, path in - ((name, os.path.join(here, name)) - for name in os.listdir(here)))[-1] + ((name, os.path.join(whichdir, name)) + for name in os.listdir(whichdir)))[-1] - if ("package" in self.args['actions'] or - "unpacked" in self.args['actions']): + if self.is_rearranging(): # NOTE: the -S argument to strip causes it to keep # enough info for annotated backtraces (i.e. function # names in the crash log). 'strip' with no arguments @@ -1192,13 +1205,14 @@ open "%s" --args "$@" # our apps executable_path = {} - for app_bld_dir, app in (("mac_crash_logger", "mac-crash-logger.app"), - # plugin launcher - (os.path.join("llplugin", "slplugin"), "SLPlugin.app"), - ): - self.path2basename(os.path.join(os.pardir, - app_bld_dir, self.args['configuration']), - app) + for app_bld_dir, app in ( + ("mac_crash_logger", "mac-crash-logger.app"), + # plugin launcher + (os.path.join("llplugin", "slplugin"), "SLPlugin.app"), + ): + self.path2basename( + os.path.join(os.pardir, app_bld_dir, self.args['configuration']), + app) executable_path[app] = \ self.dst_path_of(os.path.join(app, "Contents", "MacOS")) From 137c8db8cc1aa49a306531413e9cba5688cb9990 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Wed, 5 Sep 2018 20:33:19 -0400 Subject: [PATCH 10/21] SL-957: Previous commit skipped a couple assignments used later. --- indra/newview/viewer_manifest.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index d70dbed9e0..aa03780e19 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -930,11 +930,13 @@ class DarwinManifest(ViewerManifest): # top-level Info.plist is as generated by CMake Info_plist = self.dst_path_of("Info.plist") + toplevel_MacOS = self.dst_path_of("MacOS") # the one file in top-level MacOS directory is the trampoline to # our nested launcher_app - if self.is_rearranging(): + if not self.is_rearranging(): + trampoline = "" + else: with self.prefix(dst="MacOS"): - toplevel_MacOS = self.get_dst_prefix() trampoline = self.put_in_file("""\ #!/bin/bash open "%s" --args "$@" From c9ad54212ec0bf874177e78e034b30ccd0b93212 Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Tue, 4 Sep 2018 12:39:56 -0400 Subject: [PATCH 11/21] use copy_if_different to copy CrashReporter.nib so that it creates the directory if needed --- indra/mac_crash_logger/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/indra/mac_crash_logger/CMakeLists.txt b/indra/mac_crash_logger/CMakeLists.txt index ab20388261..f6c4dfb59d 100644 --- a/indra/mac_crash_logger/CMakeLists.txt +++ b/indra/mac_crash_logger/CMakeLists.txt @@ -85,7 +85,7 @@ add_custom_command( COMMAND ${CMAKE_COMMAND} ARGS -E - copy_directory + copy_if_different ${CMAKE_CURRENT_SOURCE_DIR}/CrashReporter.nib ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/mac-crash-logger.app/Contents/Resources/CrashReporter.nib ) From a906ccd478c4aad1780d1f6e9a4a7926ff8934fb Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Wed, 5 Sep 2018 09:12:21 -0400 Subject: [PATCH 12/21] remove duplicated EDU definitions --- BuildParams | 5 ----- 1 file changed, 5 deletions(-) diff --git a/BuildParams b/BuildParams index cb908f1532..c5f96d5ee3 100755 --- a/BuildParams +++ b/BuildParams @@ -62,11 +62,6 @@ Linux.additional_packages = "" EDU_sourceid = "" EDU_viewer_channel_suffix = "edu" -# The EDU package allows us to create a separate release channel whose expirations -# are synchronized as much as possible with the academic year -EDU_sourceid = "" -EDU_viewer_channel_suffix = "edu" - # Notifications - to configure email notices use the TeamCity parameter # setting screen for your project or build configuration to set the # environment variable 'email' to a space-separated list of email addresses From 49c483eeb350f3620f26ce933007c3d4e9f66d4f Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Wed, 5 Sep 2018 18:07:35 -0400 Subject: [PATCH 13/21] add more block structure to TeamCity log output for components --- indra/CMakeLists.txt | 2 ++ indra/cmake/00-Common.cmake | 21 +++++++++++++++++++ indra/cmake/LLAddBuildTest.cmake | 4 ++++ .../llimage_libtest/CMakeLists.txt | 3 ++- .../llui_libtest/CMakeLists.txt | 1 + indra/linux_crash_logger/CMakeLists.txt | 4 +++- indra/llappearance/CMakeLists.txt | 2 ++ indra/llaudio/CMakeLists.txt | 1 + indra/llcharacter/CMakeLists.txt | 1 + indra/llcommon/CMakeLists.txt | 2 ++ indra/llcorehttp/CMakeLists.txt | 2 ++ indra/llcrashlogger/CMakeLists.txt | 1 + indra/llimage/CMakeLists.txt | 1 + indra/llimagej2coj/CMakeLists.txt | 3 +++ indra/llinventory/CMakeLists.txt | 1 + indra/llkdu/CMakeLists.txt | 1 + indra/llmath/CMakeLists.txt | 1 + indra/llmessage/CMakeLists.txt | 1 + indra/llplugin/CMakeLists.txt | 1 + indra/llplugin/slplugin/CMakeLists.txt | 3 ++- indra/llprimitive/CMakeLists.txt | 1 + indra/llrender/CMakeLists.txt | 2 ++ indra/llui/CMakeLists.txt | 1 + indra/llvfs/CMakeLists.txt | 1 + indra/llwindow/CMakeLists.txt | 2 ++ indra/llxml/CMakeLists.txt | 1 + indra/mac_crash_logger/CMakeLists.txt | 1 + indra/media_plugins/base/CMakeLists.txt | 3 ++- indra/media_plugins/cef/CMakeLists.txt | 3 ++- indra/media_plugins/example/CMakeLists.txt | 3 ++- .../media_plugins/gstreamer010/CMakeLists.txt | 3 ++- indra/media_plugins/libvlc/CMakeLists.txt | 3 ++- indra/newview/CMakeLists.txt | 7 +++++++ indra/test/CMakeLists.txt | 1 + indra/viewer_components/login/CMakeLists.txt | 1 + indra/win_crash_logger/CMakeLists.txt | 1 + 36 files changed, 82 insertions(+), 8 deletions(-) diff --git a/indra/CMakeLists.txt b/indra/CMakeLists.txt index a40b2c0846..08d0c7b510 100644 --- a/indra/CMakeLists.txt +++ b/indra/CMakeLists.txt @@ -44,6 +44,8 @@ if (WINDOWS AND EXISTS ${LIBS_CLOSED_DIR}copy_win_scripts) endif (WINDOWS AND EXISTS ${LIBS_CLOSED_DIR}copy_win_scripts) add_custom_target(viewer) +buildscripts_block(viewer) + add_subdirectory(${LIBS_OPEN_PREFIX}llcrashlogger) add_subdirectory(${LIBS_OPEN_PREFIX}llplugin) add_subdirectory(${LIBS_OPEN_PREFIX}llui) diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake index 40fc706a99..24f6329d10 100644 --- a/indra/cmake/00-Common.cmake +++ b/indra/cmake/00-Common.cmake @@ -217,4 +217,25 @@ else (USESYSTEMLIBS) ) endif (USESYSTEMLIBS) +macro (buildscripts_block target_name) + # add custom commands to bracket a target build to make logs easier to read + + if (DEFINED ENV{TEAMCITY_BUILDCONF_NAME}) + add_custom_command(TARGET ${target_name} PRE_BUILD + COMMAND echo ARGS "##teamcity[blockOpened name='${target_name}']" VERBATIM + ) + add_custom_command(TARGET ${target_name} POST_BUILD + COMMAND echo ARGS "##teamcity[blockClosed name='${target_name}']" VERBATIM + ) + else (DEFINED ENV{TEAMCITY_BUILDCONF_NAME}) + add_custom_command(TARGET ${target_name} PRE_BUILD + COMMAND echo ARGS "################## START ${target_name}" VERBATIM + ) + add_custom_command(TARGET ${target_name} POST_BUILD + COMMAND echo ARGS "################## FINISH ${target_name}" VERBATIM + ) + endif (DEFINED ENV{TEAMCITY_BUILDCONF_NAME}) + +endmacro (buildscripts_block target_name) + endif(NOT DEFINED ${CMAKE_CURRENT_LIST_FILE}_INCLUDED) diff --git a/indra/cmake/LLAddBuildTest.cmake b/indra/cmake/LLAddBuildTest.cmake index 024bfe14a1..3b5bc0af7c 100644 --- a/indra/cmake/LLAddBuildTest.cmake +++ b/indra/cmake/LLAddBuildTest.cmake @@ -1,4 +1,5 @@ # -*- cmake -*- +include(00-Common) include(LLTestCommand) include(GoogleMock) include(Tut) @@ -104,6 +105,7 @@ INCLUDE(GoogleMock) # Setup target ADD_EXECUTABLE(PROJECT_${project}_TEST_${name} ${${name}_test_SOURCE_FILES}) + buildscripts_block(PROJECT_${project}_TEST_${name}) SET_TARGET_PROPERTIES(PROJECT_${project}_TEST_${name} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${EXE_STAGING_DIR}") # @@ -165,6 +167,7 @@ INCLUDE(GoogleMock) # Add the test runner target per-project # (replaces old _test_ok targets all over the place) ADD_CUSTOM_TARGET(${project}_tests ALL DEPENDS ${${project}_TEST_OUTPUT}) + buildscripts_block(${project}_tests) ADD_DEPENDENCIES(${project} ${project}_tests) ENDMACRO(LL_ADD_PROJECT_UNIT_TESTS) @@ -212,6 +215,7 @@ FUNCTION(LL_ADD_INTEGRATION_TEST message(STATUS "ADD_EXECUTABLE(INTEGRATION_TEST_${testname} ${source_files})") endif(TEST_DEBUG) ADD_EXECUTABLE(INTEGRATION_TEST_${testname} ${source_files}) + buildscripts_block(INTEGRATION_TEST_${testname}) SET_TARGET_PROPERTIES(INTEGRATION_TEST_${testname} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${EXE_STAGING_DIR}" diff --git a/indra/integration_tests/llimage_libtest/CMakeLists.txt b/indra/integration_tests/llimage_libtest/CMakeLists.txt index 13cf1f7bde..4e23a1fc87 100644 --- a/indra/integration_tests/llimage_libtest/CMakeLists.txt +++ b/indra/integration_tests/llimage_libtest/CMakeLists.txt @@ -40,7 +40,8 @@ add_executable(llimage_libtest WIN32 MACOSX_BUNDLE ${llimage_libtest_SOURCE_FILES} -) + ) +buildscripts_block(llimage_libtest) set_target_properties(llimage_libtest PROPERTIES diff --git a/indra/integration_tests/llui_libtest/CMakeLists.txt b/indra/integration_tests/llui_libtest/CMakeLists.txt index 34e34c7e47..2d21f9af0f 100644 --- a/indra/integration_tests/llui_libtest/CMakeLists.txt +++ b/indra/integration_tests/llui_libtest/CMakeLists.txt @@ -56,6 +56,7 @@ set_source_files_properties(${llui_libtest_HEADER_FILES} list(APPEND llui_libtest_SOURCE_FILES ${llui_libtest_HEADER_FILES}) add_executable(llui_libtest ${llui_libtest_SOURCE_FILES}) +buildscripts_block(llui_libtest) # Link with OS-specific libraries for LLWindow dependency if (DARWIN) diff --git a/indra/linux_crash_logger/CMakeLists.txt b/indra/linux_crash_logger/CMakeLists.txt index 029096df37..165b33fede 100644 --- a/indra/linux_crash_logger/CMakeLists.txt +++ b/indra/linux_crash_logger/CMakeLists.txt @@ -55,6 +55,7 @@ list(APPEND linux_crash_logger_SOURCE_FILES set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--as-needed") add_executable(linux-crash-logger ${linux_crash_logger_SOURCE_FILES}) +buildscripts_block(linux-crash-logger) # llcommon uses `clock_gettime' which is provided by librt on linux. set(LIBRT_LIBRARY rt) @@ -78,4 +79,5 @@ target_link_libraries(linux-crash-logger ) add_custom_target(linux-crash-logger-target ALL - DEPENDS linux-crash-logger) + DEPENDS linux-crash-logger) +buildscripts_block(linux-crash-logger-target) diff --git a/indra/llappearance/CMakeLists.txt b/indra/llappearance/CMakeLists.txt index 20eb4678dd..ad33fed010 100644 --- a/indra/llappearance/CMakeLists.txt +++ b/indra/llappearance/CMakeLists.txt @@ -77,6 +77,7 @@ set_source_files_properties(${llappearance_HEADER_FILES} list(APPEND llappearance_SOURCE_FILES ${llappearance_HEADER_FILES}) add_library (llappearance ${llappearance_SOURCE_FILES}) +buildscripts_block(llappearance) target_link_libraries(llappearance ${LLCHARACTER_LIBRARIES} @@ -94,6 +95,7 @@ target_link_libraries(llappearance if (BUILD_HEADLESS) add_library (llappearanceheadless ${llappearance_SOURCE_FILES}) + buildscripts_block(llappearanceheadless) target_link_libraries(llappearanceheadless ${LLCHARACTER_LIBRARIES} diff --git a/indra/llaudio/CMakeLists.txt b/indra/llaudio/CMakeLists.txt index e943dd5d5c..fc81d8c6f2 100644 --- a/indra/llaudio/CMakeLists.txt +++ b/indra/llaudio/CMakeLists.txt @@ -77,6 +77,7 @@ set_source_files_properties(${llaudio_HEADER_FILES} list(APPEND llaudio_SOURCE_FILES ${llaudio_HEADER_FILES}) add_library (llaudio ${llaudio_SOURCE_FILES}) +buildscripts_block(llaudio) target_link_libraries( llaudio ${LLCOMMON_LIBRARIES} diff --git a/indra/llcharacter/CMakeLists.txt b/indra/llcharacter/CMakeLists.txt index a17a5b0aa6..3d0eb09ada 100644 --- a/indra/llcharacter/CMakeLists.txt +++ b/indra/llcharacter/CMakeLists.txt @@ -79,6 +79,7 @@ set_source_files_properties(${llcharacter_HEADER_FILES} list(APPEND llcharacter_SOURCE_FILES ${llcharacter_HEADER_FILES}) add_library (llcharacter ${llcharacter_SOURCE_FILES}) +buildscripts_block(llcharacter) target_link_libraries( llcharacter diff --git a/indra/llcommon/CMakeLists.txt b/indra/llcommon/CMakeLists.txt index 42ad56f1b0..0d58a59e3f 100644 --- a/indra/llcommon/CMakeLists.txt +++ b/indra/llcommon/CMakeLists.txt @@ -24,6 +24,7 @@ include_directories( ) # add_executable(lltreeiterators lltreeiterators.cpp) +# buildscripts_block(lltreeiterators) # # target_link_libraries(lltreeiterators # ${LLCOMMON_LIBRARIES}) @@ -279,6 +280,7 @@ if(LLCOMMON_LINK_SHARED) else(LLCOMMON_LINK_SHARED) add_library (llcommon ${llcommon_SOURCE_FILES}) endif(LLCOMMON_LINK_SHARED) +buildscripts_block(llcommon) target_link_libraries( llcommon diff --git a/indra/llcorehttp/CMakeLists.txt b/indra/llcorehttp/CMakeLists.txt index 9dbc6f447e..c42bd7b6b2 100644 --- a/indra/llcorehttp/CMakeLists.txt +++ b/indra/llcorehttp/CMakeLists.txt @@ -90,6 +90,7 @@ endif (DARWIN OR LINUX) list(APPEND llcorehttp_SOURCE_FILES ${llcorehttp_HEADER_FILES}) add_library (llcorehttp ${llcorehttp_SOURCE_FILES}) +buildscripts_block(llcorehttp) target_link_libraries( llcorehttp ${CURL_LIBRARIES} @@ -214,6 +215,7 @@ endif (DARWIN) add_executable(http_texture_load ${llcorehttp_EXAMPLE_SOURCE_FILES} ) + buildscripts_block(http_texture_load) set_target_properties(http_texture_load PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${EXE_STAGING_DIR}" diff --git a/indra/llcrashlogger/CMakeLists.txt b/indra/llcrashlogger/CMakeLists.txt index da23b46b7b..7d7f3f0167 100644 --- a/indra/llcrashlogger/CMakeLists.txt +++ b/indra/llcrashlogger/CMakeLists.txt @@ -41,3 +41,4 @@ set_source_files_properties(${llcrashlogger_HEADER_FILES} list(APPEND llcrashlogger_SOURCE_FILES ${llcrashlogger_HEADER_FILES}) add_library(llcrashlogger ${llcrashlogger_SOURCE_FILES}) +buildscripts_block(llcrashlogger) diff --git a/indra/llimage/CMakeLists.txt b/indra/llimage/CMakeLists.txt index 293ada7548..4b57a77999 100644 --- a/indra/llimage/CMakeLists.txt +++ b/indra/llimage/CMakeLists.txt @@ -59,6 +59,7 @@ set_source_files_properties(${llimage_HEADER_FILES} list(APPEND llimage_SOURCE_FILES ${llimage_HEADER_FILES}) add_library (llimage ${llimage_SOURCE_FILES}) +buildscripts_block(llimage) # Libraries on which this library depends, needed for Linux builds # Sort by high-level to low-level if (USE_KDU) diff --git a/indra/llimagej2coj/CMakeLists.txt b/indra/llimagej2coj/CMakeLists.txt index 97d22cf86a..f05842b721 100644 --- a/indra/llimagej2coj/CMakeLists.txt +++ b/indra/llimagej2coj/CMakeLists.txt @@ -29,7 +29,10 @@ set_source_files_properties(${llimagej2coj_HEADER_FILES} list(APPEND llimagej2coj_SOURCE_FILES ${llimagej2coj_HEADER_FILES}) add_library (llimagej2coj ${llimagej2coj_SOURCE_FILES}) +buildscripts_block(llimagej2coj) + target_link_libraries( llimagej2coj ${OPENJPEG_LIBRARIES} ) + diff --git a/indra/llinventory/CMakeLists.txt b/indra/llinventory/CMakeLists.txt index 68dd00d880..6a5892127d 100644 --- a/indra/llinventory/CMakeLists.txt +++ b/indra/llinventory/CMakeLists.txt @@ -60,6 +60,7 @@ set_source_files_properties(${llinventory_HEADER_FILES} list(APPEND llinventory_SOURCE_FILES ${llinventory_HEADER_FILES}) add_library (llinventory ${llinventory_SOURCE_FILES}) +buildscripts_block(llinventory) diff --git a/indra/llkdu/CMakeLists.txt b/indra/llkdu/CMakeLists.txt index cb0e204e91..59f6d08517 100644 --- a/indra/llkdu/CMakeLists.txt +++ b/indra/llkdu/CMakeLists.txt @@ -50,6 +50,7 @@ set_source_files_properties(${llkdu_SOURCE_FILES} if (USE_KDU) add_library (llkdu ${llkdu_SOURCE_FILES}) + buildscripts_block(llkdu) target_link_libraries(llkdu ${KDU_LIBRARY}) diff --git a/indra/llmath/CMakeLists.txt b/indra/llmath/CMakeLists.txt index 4c8bcdac91..110173add3 100644 --- a/indra/llmath/CMakeLists.txt +++ b/indra/llmath/CMakeLists.txt @@ -101,6 +101,7 @@ set_source_files_properties(${llmath_HEADER_FILES} list(APPEND llmath_SOURCE_FILES ${llmath_HEADER_FILES}) add_library (llmath ${llmath_SOURCE_FILES}) +buildscripts_block(llmath) target_link_libraries(llmath ${LLCOMMON_LIBRARIES} diff --git a/indra/llmessage/CMakeLists.txt b/indra/llmessage/CMakeLists.txt index e0922c0667..ab59c8bb40 100644 --- a/indra/llmessage/CMakeLists.txt +++ b/indra/llmessage/CMakeLists.txt @@ -203,6 +203,7 @@ set_source_files_properties(${llmessage_HEADER_FILES} list(APPEND llmessage_SOURCE_FILES ${llmessage_HEADER_FILES}) add_library (llmessage ${llmessage_SOURCE_FILES}) +buildscripts_block(llmessage) if (LINUX) target_link_libraries( diff --git a/indra/llplugin/CMakeLists.txt b/indra/llplugin/CMakeLists.txt index 5cc129a267..9d79eabbb3 100644 --- a/indra/llplugin/CMakeLists.txt +++ b/indra/llplugin/CMakeLists.txt @@ -65,6 +65,7 @@ endif(NOT ADDRESS_SIZE EQUAL 32) list(APPEND llplugin_SOURCE_FILES ${llplugin_HEADER_FILES}) add_library (llplugin ${llplugin_SOURCE_FILES}) +buildscripts_block(llplugin) add_subdirectory(slplugin) diff --git a/indra/llplugin/slplugin/CMakeLists.txt b/indra/llplugin/slplugin/CMakeLists.txt index 0e5e835777..3a9d661ff6 100644 --- a/indra/llplugin/slplugin/CMakeLists.txt +++ b/indra/llplugin/slplugin/CMakeLists.txt @@ -48,7 +48,8 @@ add_executable(SLPlugin WIN32 MACOSX_BUNDLE ${SLPlugin_SOURCE_FILES} -) + ) +buildscripts_block(SLPlugin) if (WINDOWS) set_target_properties(SLPlugin diff --git a/indra/llprimitive/CMakeLists.txt b/indra/llprimitive/CMakeLists.txt index dd2e806dda..12c6882844 100644 --- a/indra/llprimitive/CMakeLists.txt +++ b/indra/llprimitive/CMakeLists.txt @@ -71,6 +71,7 @@ set_source_files_properties(${llprimitive_HEADER_FILES} list(APPEND llprimitive_SOURCE_FILES ${llprimitive_HEADER_FILES}) add_library (llprimitive ${llprimitive_SOURCE_FILES}) +buildscripts_block(llprimitive) target_link_libraries(llprimitive ${LLCOMMON_LIBRARIES} diff --git a/indra/llrender/CMakeLists.txt b/indra/llrender/CMakeLists.txt index 07a0d8c402..de5f24758c 100644 --- a/indra/llrender/CMakeLists.txt +++ b/indra/llrender/CMakeLists.txt @@ -91,6 +91,7 @@ if (BUILD_HEADLESS) add_library (llrenderheadless ${llrender_SOURCE_FILES} ) + buildscripts_block(llrenderheadless) set_property(TARGET llrenderheadless PROPERTY COMPILE_DEFINITIONS LL_MESA=1 LL_MESA_HEADLESS=1 @@ -110,6 +111,7 @@ if (BUILD_HEADLESS) endif (BUILD_HEADLESS) add_library (llrender ${llrender_SOURCE_FILES}) +buildscripts_block(llrender) if (SDL_FOUND) set_property(TARGET llrender diff --git a/indra/llui/CMakeLists.txt b/indra/llui/CMakeLists.txt index 8054eb3619..41a79d5752 100644 --- a/indra/llui/CMakeLists.txt +++ b/indra/llui/CMakeLists.txt @@ -269,6 +269,7 @@ set_source_files_properties(llurlentry.cpp list(APPEND llui_SOURCE_FILES ${llui_HEADER_FILES}) add_library (llui ${llui_SOURCE_FILES}) +buildscripts_block(llui) # Libraries on which this library depends, needed for Linux builds # Sort by high-level to low-level target_link_libraries(llui diff --git a/indra/llvfs/CMakeLists.txt b/indra/llvfs/CMakeLists.txt index 67dce8c073..a9d602d333 100644 --- a/indra/llvfs/CMakeLists.txt +++ b/indra/llvfs/CMakeLists.txt @@ -64,6 +64,7 @@ set_source_files_properties(${llvfs_HEADER_FILES} list(APPEND llvfs_SOURCE_FILES ${llvfs_HEADER_FILES}) add_library (llvfs ${llvfs_SOURCE_FILES}) +buildscripts_block(llvfs) set(vfs_BOOST_LIBRARIES ${BOOST_FILESYSTEM_LIBRARY} diff --git a/indra/llwindow/CMakeLists.txt b/indra/llwindow/CMakeLists.txt index 0743fd899f..d7ab3bfebb 100644 --- a/indra/llwindow/CMakeLists.txt +++ b/indra/llwindow/CMakeLists.txt @@ -175,6 +175,7 @@ if (BUILD_HEADLESS) ${llwindow_SOURCE_FILES} ${llwindowheadless_SOURCE_FILES} ) + buildscripts_block(llwindowheadless) set_property(TARGET llwindowheadless PROPERTY COMPILE_DEFINITIONS LL_MESA=1 LL_MESA_HEADLESS=1 ) @@ -191,6 +192,7 @@ endif (llwindow_HEADER_FILES) ${llwindow_SOURCE_FILES} ${viewer_SOURCE_FILES} ) + buildscripts_block(llwindow) if (SDL_FOUND) set_property(TARGET llwindow diff --git a/indra/llxml/CMakeLists.txt b/indra/llxml/CMakeLists.txt index 17400a203e..cb2d0f5c76 100644 --- a/indra/llxml/CMakeLists.txt +++ b/indra/llxml/CMakeLists.txt @@ -40,6 +40,7 @@ set_source_files_properties(${llxml_HEADER_FILES} list(APPEND llxml_SOURCE_FILES ${llxml_HEADER_FILES}) add_library (llxml ${llxml_SOURCE_FILES}) +buildscripts_block(llxml) # Libraries on which this library depends, needed for Linux builds # Sort by high-level to low-level target_link_libraries( llxml diff --git a/indra/mac_crash_logger/CMakeLists.txt b/indra/mac_crash_logger/CMakeLists.txt index f6c4dfb59d..f62bab5673 100644 --- a/indra/mac_crash_logger/CMakeLists.txt +++ b/indra/mac_crash_logger/CMakeLists.txt @@ -58,6 +58,7 @@ list(APPEND mac_crash_logger_SOURCE_FILES ${mac_crash_logger_RESOURCE_FILES}) add_executable(mac-crash-logger MACOSX_BUNDLE ${mac_crash_logger_SOURCE_FILES}) +buildscripts_block(mac-crash-logger) set_target_properties(mac-crash-logger PROPERTIES diff --git a/indra/media_plugins/base/CMakeLists.txt b/indra/media_plugins/base/CMakeLists.txt index 70c81d4023..8ab535e14c 100644 --- a/indra/media_plugins/base/CMakeLists.txt +++ b/indra/media_plugins/base/CMakeLists.txt @@ -48,5 +48,6 @@ set(media_plugin_base_HEADER_FILES add_library(media_plugin_base ${media_plugin_base_SOURCE_FILES} -) + ) +buildscripts_block(media_plugin_base) diff --git a/indra/media_plugins/cef/CMakeLists.txt b/indra/media_plugins/cef/CMakeLists.txt index 5452fd9d1e..dedc47e341 100644 --- a/indra/media_plugins/cef/CMakeLists.txt +++ b/indra/media_plugins/cef/CMakeLists.txt @@ -81,7 +81,8 @@ list(APPEND media_plugin_cef_SOURCE_FILES ${media_plugin_cef_HEADER_FILES}) add_library(media_plugin_cef SHARED ${media_plugin_cef_SOURCE_FILES} -) + ) +buildscripts_block(media_plugin_cef) #add_dependencies(media_plugin_cef # ${MEDIA_PLUGIN_BASE_LIBRARIES} diff --git a/indra/media_plugins/example/CMakeLists.txt b/indra/media_plugins/example/CMakeLists.txt index 6f5b28b8e9..95d3d5b5a2 100644 --- a/indra/media_plugins/example/CMakeLists.txt +++ b/indra/media_plugins/example/CMakeLists.txt @@ -47,7 +47,8 @@ set(media_plugin_example_SOURCE_FILES add_library(media_plugin_example SHARED ${media_plugin_example_SOURCE_FILES} -) + ) +buildscripts_block(media_plugin_example) target_link_libraries(media_plugin_example ${LLPLUGIN_LIBRARIES} diff --git a/indra/media_plugins/gstreamer010/CMakeLists.txt b/indra/media_plugins/gstreamer010/CMakeLists.txt index 6d18814b1e..18b4b761cf 100644 --- a/indra/media_plugins/gstreamer010/CMakeLists.txt +++ b/indra/media_plugins/gstreamer010/CMakeLists.txt @@ -56,7 +56,8 @@ set(media_plugin_gstreamer010_HEADER_FILES add_library(media_plugin_gstreamer010 SHARED ${media_plugin_gstreamer010_SOURCE_FILES} -) + ) +buildscripts_block(media_plugin_gstreamer010) target_link_libraries(media_plugin_gstreamer010 ${LLPLUGIN_LIBRARIES} diff --git a/indra/media_plugins/libvlc/CMakeLists.txt b/indra/media_plugins/libvlc/CMakeLists.txt index d3e9243069..7946e7ccfc 100644 --- a/indra/media_plugins/libvlc/CMakeLists.txt +++ b/indra/media_plugins/libvlc/CMakeLists.txt @@ -48,7 +48,8 @@ set(media_plugin_libvlc_SOURCE_FILES add_library(media_plugin_libvlc SHARED ${media_plugin_libvlc_SOURCE_FILES} -) + ) +buildscripts_block(media_plugin_libvlc) target_link_libraries(media_plugin_libvlc ${LLPLUGIN_LIBRARIES} diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index e573b927d7..560c9d0737 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -1722,6 +1722,7 @@ add_executable(${VIEWER_BINARY_NAME} MACOSX_BUNDLE ${viewer_SOURCE_FILES} ) +buildscripts_block(${VIEWER_BINARY_NAME}) if (SDL_FOUND) set_property(TARGET ${VIEWER_BINARY_NAME} @@ -1914,6 +1915,7 @@ if (WINDOWS) ${CMAKE_CFG_INTDIR}/touched.bat windows-setup-build-all ) + buildscripts_block(llpackage) # temporarily disable packaging of event_host until hg subrepos get # sorted out on the parabuild cluster... #${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/event_host.tar.bz2) @@ -2253,6 +2255,7 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE VERBATIM) add_custom_target(generate_symbols DEPENDS "${VIEWER_SYMBOL_FILE}" ${VIEWER_BINARY_NAME} "${VIEWER_COPY_MANIFEST}") + buildscripts_block(generate_symbols) add_dependencies(generate_symbols ${VIEWER_BINARY_NAME}) if (WINDOWS OR LINUX) add_dependencies(generate_symbols "${VIEWER_COPY_MANIFEST}") @@ -2285,6 +2288,7 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE COMMENT "Packing viewer PDB into ${VIEWER_SYMBOL_FILE_CYGWIN}" ) add_custom_target(generate_symbols DEPENDS "${VIEWER_SYMBOL_FILE}" ${VIEWER_BINARY_NAME}) + buildscripts_block(generate_symbols) add_dependencies(generate_symbols ${VIEWER_BINARY_NAME}) endif (WINDOWS) if (DARWIN) @@ -2296,6 +2300,7 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE COMMENT "Generating ${VIEWER_APP_DSYM}" ) add_custom_target(dsym_generate DEPENDS "${VIEWER_APP_DSYM}") + buildscripts_block(dsym_generate) add_dependencies(dsym_generate ${VIEWER_BINARY_NAME}) add_custom_command(OUTPUT "${VIEWER_SYMBOL_FILE}" # See above comments about "tar ...j" @@ -2310,6 +2315,7 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE COMMENT "Packing dSYM into ${VIEWER_SYMBOL_FILE}" ) add_custom_target(dsym_tarball DEPENDS "${VIEWER_SYMBOL_FILE}") + buildscripts_block(dsym_tarball) add_dependencies(dsym_tarball dsym_generate) add_custom_command(OUTPUT "${VIEWER_APP_XCARCHIVE}" COMMAND "zip" @@ -2337,6 +2343,7 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE "${VIEWER_APP_XCARCHIVE}" "${CMAKE_CURRENT_BINARY_DIR}/dsym.stamp" ) + buildscripts_block(generate_symbols) add_dependencies(generate_symbols dsym_tarball dsym_xcarchive) endif (DARWIN) if (LINUX) diff --git a/indra/test/CMakeLists.txt b/indra/test/CMakeLists.txt index 8344cead57..11ec2226ea 100644 --- a/indra/test/CMakeLists.txt +++ b/indra/test/CMakeLists.txt @@ -81,6 +81,7 @@ set_source_files_properties(${test_HEADER_FILES} list(APPEND test_SOURCE_FILES ${test_HEADER_FILES}) add_executable(lltest ${test_SOURCE_FILES}) +buildscripts_block(lltest) target_link_libraries(lltest ${LLDATABASE_LIBRARIES} diff --git a/indra/viewer_components/login/CMakeLists.txt b/indra/viewer_components/login/CMakeLists.txt index 3bedeb7292..79706e0df4 100644 --- a/indra/viewer_components/login/CMakeLists.txt +++ b/indra/viewer_components/login/CMakeLists.txt @@ -42,6 +42,7 @@ list(APPEND add_library(lllogin ${login_SOURCE_FILES} ) +buildscripts_block(lllogin) target_link_libraries(lllogin ${LLMESSAGE_LIBRARIES} diff --git a/indra/win_crash_logger/CMakeLists.txt b/indra/win_crash_logger/CMakeLists.txt index 144d037a31..9d651fcbc9 100644 --- a/indra/win_crash_logger/CMakeLists.txt +++ b/indra/win_crash_logger/CMakeLists.txt @@ -71,6 +71,7 @@ list(APPEND find_library(DXGUID_LIBRARY dxguid ${DIRECTX_LIBRARY_DIR}) add_executable(windows-crash-logger WIN32 ${win_crash_logger_SOURCE_FILES}) +buildscripts_block(windows-crash-logger) target_link_libraries(windows-crash-logger ${BREAKPAD_EXCEPTION_HANDLER_LIBRARIES} From bf8f467b02ac5669a59de7b21c693adf816452a3 Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Thu, 6 Sep 2018 10:40:59 -0400 Subject: [PATCH 14/21] modify the path command progress message to show fully resolved src and dst paths --- indra/lib/python/indra/util/llmanifest.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/indra/lib/python/indra/util/llmanifest.py b/indra/lib/python/indra/util/llmanifest.py index c4dcad51b7..d51718c0a7 100755 --- a/indra/lib/python/indra/util/llmanifest.py +++ b/indra/lib/python/indra/util/llmanifest.py @@ -775,13 +775,13 @@ class LLManifest(object): return self.path(os.path.join(path, file), file) def path(self, src, dst=None): - sys.stdout.write("Processing %s => %s ... " % (src, dst)) sys.stdout.flush() if src == None: raise ManifestError("No source file, dst is " + dst) if dst == None: dst = src dst = os.path.join(self.get_dst_prefix(), dst) + sys.stdout.write("Processing %s => %s ... " % (src, dst)) def try_path(src): # expand globs From 8725d8e34a0f843860aea1678796c659f9b5f1ef Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Thu, 6 Sep 2018 11:08:33 -0400 Subject: [PATCH 15/21] improve error message for unfound files --- indra/lib/python/indra/util/llmanifest.py | 26 +++++++++++------------ 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/indra/lib/python/indra/util/llmanifest.py b/indra/lib/python/indra/util/llmanifest.py index d51718c0a7..6919419953 100755 --- a/indra/lib/python/indra/util/llmanifest.py +++ b/indra/lib/python/indra/util/llmanifest.py @@ -50,7 +50,9 @@ class ManifestError(RuntimeError): class MissingError(ManifestError): """You specified a file that doesn't exist""" - pass + def __init__(self, msg): + self.msg = msg + super(MissingError, self).__init__(self.msg) def path_ancestors(path): drive, path = os.path.splitdrive(os.path.normpath(path)) @@ -801,22 +803,18 @@ class LLManifest(object): count += self.process_file(src, dst) return count - for pfx in self.get_src_prefix(), self.get_artwork_prefix(), self.get_build_prefix(): + try_prefixes = [self.get_src_prefix(), self.get_artwork_prefix(), self.get_build_prefix()] + tried=[] + count=0 + while not count and try_prefixes: + pfx = try_prefixes.pop(0) try: count = try_path(os.path.join(pfx, src)) except MissingError: - # If src isn't a wildcard, and if that file doesn't exist in - # this pfx, try next pfx. - count = 0 - continue - - # Here try_path() didn't raise MissingError. Did it process any files? - if count: - break - # Even though try_path() didn't raise MissingError, it returned 0 - # files. src is probably a wildcard meant for some other pfx. Loop - # back to try the next. - + tried.append(pfx) + if not try_prefixes: + # no more prefixes left to try + print "unable to find '%s'; looked in:\n %s" % (src, '\n '.join(tried)) print "%d files" % count # Let caller check whether we processed as many files as expected. In From 10f2101515fe8ba230848cce41faaf7613c9b6d8 Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Thu, 6 Sep 2018 14:32:15 -0400 Subject: [PATCH 16/21] make the .app name channel sensitive to match cmake --- indra/newview/viewer_manifest.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index aa03780e19..464f7aa3e9 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -910,7 +910,8 @@ class DarwinManifest(ViewerManifest): # applications for the VMP and for the actual viewer, respectively. # These names, without the .app suffix, determine the flyover text for # their corresponding Dock icons. - toplevel_app, toplevel_icon = "Second Life.app", "secondlife.icns" + toplevel_app = self.channel()+".app" + toplevel_icon = "secondlife.icns" launcher_app, launcher_icon = "Second Life Launcher.app", "secondlife.icns" viewer_app, viewer_icon = "Second Life Viewer.app", "secondlife.icns" From fa1ad3f4df766e6047c2e819a97261400cd3ab7f Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Thu, 6 Sep 2018 15:15:16 -0400 Subject: [PATCH 17/21] make start and end messages for packages more prominentt --- indra/lib/python/indra/util/llmanifest.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/indra/lib/python/indra/util/llmanifest.py b/indra/lib/python/indra/util/llmanifest.py index 6919419953..9ab77414be 100755 --- a/indra/lib/python/indra/util/llmanifest.py +++ b/indra/lib/python/indra/util/llmanifest.py @@ -245,13 +245,13 @@ def main(extra=[]): # Build base package. touch = args.get('touch') if touch: - print 'Creating base package' + print '================ Creating base package' wm = LLManifest.for_platform(args['platform'], args.get('arch'))(args) wm.do(*args['actions']) # Store package file for later if making touched file. base_package_file = "" if touch: - print 'Created base package ', wm.package_file + print '================ Created base package ', wm.package_file base_package_file = "" + wm.package_file # handle multiple packages if set @@ -279,14 +279,14 @@ def main(extra=[]): args['sourceid'] = os.environ.get(package_id + "_sourceid") args['dest'] = base_dest_template.format(package_id) if touch: - print 'Creating additional package for "', package_id, '" in ', args['dest'] + print '================ Creating additional package for "', package_id, '" in ', args['dest'] try: wm = LLManifest.for_platform(args['platform'], args.get('arch'))(args) wm.do(*args['actions']) except Exception as err: sys.exit(str(err)) if touch: - print 'Created additional package ', wm.package_file, ' for ', package_id + print '================ Created additional package ', wm.package_file, ' for ', package_id with open(base_touch_template.format(package_id), 'w') as fp: fp.write('set package_file=%s\n' % wm.package_file) From 050f9ead3b7509a5a03cb41492386414db15e5e0 Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Thu, 6 Sep 2018 15:57:25 -0400 Subject: [PATCH 18/21] add markers for non-package uses of viewer_manifest.py --- indra/lib/python/indra/util/llmanifest.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/indra/lib/python/indra/util/llmanifest.py b/indra/lib/python/indra/util/llmanifest.py index 9ab77414be..8904e72440 100755 --- a/indra/lib/python/indra/util/llmanifest.py +++ b/indra/lib/python/indra/util/llmanifest.py @@ -246,6 +246,8 @@ def main(extra=[]): touch = args.get('touch') if touch: print '================ Creating base package' + else: + print '================ Starting base copy' wm = LLManifest.for_platform(args['platform'], args.get('arch'))(args) wm.do(*args['actions']) # Store package file for later if making touched file. @@ -253,6 +255,8 @@ def main(extra=[]): if touch: print '================ Created base package ', wm.package_file base_package_file = "" + wm.package_file + else: + print '================ Finished base copy' # handle multiple packages if set # ''.split() produces empty list @@ -280,6 +284,8 @@ def main(extra=[]): args['dest'] = base_dest_template.format(package_id) if touch: print '================ Creating additional package for "', package_id, '" in ', args['dest'] + else: + print '================ Starting additional copy for "', package_id, '" in ', args['dest'] try: wm = LLManifest.for_platform(args['platform'], args.get('arch'))(args) wm.do(*args['actions']) @@ -289,7 +295,8 @@ def main(extra=[]): print '================ Created additional package ', wm.package_file, ' for ', package_id with open(base_touch_template.format(package_id), 'w') as fp: fp.write('set package_file=%s\n' % wm.package_file) - + else: + print '================ Finished additional copy "', package_id, '" in ', args['dest'] # Write out the package file in this format, so that it can easily be called # and used in a .bat file - yeah, it sucks, but this is the simplest... if touch: From fac16e53f6b806245b16229b53eb325a5875fc59 Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Fri, 7 Sep 2018 08:30:21 -0400 Subject: [PATCH 19/21] refine TeamCity blocks to avoid double nesting, and disable for Windows --- indra/cmake/00-Common.cmake | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake index 24f6329d10..503f4208fe 100644 --- a/indra/cmake/00-Common.cmake +++ b/indra/cmake/00-Common.cmake @@ -219,22 +219,24 @@ endif (USESYSTEMLIBS) macro (buildscripts_block target_name) # add custom commands to bracket a target build to make logs easier to read - - if (DEFINED ENV{TEAMCITY_BUILDCONF_NAME}) + # this is disabled for windows because VS interleaves output in a way that defeats it + if (NOT WINDOWS AND DEFINED ENV{TEAMCITY_BUILDCONF_NAME}) add_custom_command(TARGET ${target_name} PRE_BUILD - COMMAND echo ARGS "##teamcity[blockOpened name='${target_name}']" VERBATIM + COMMAND echo ARGS "-n" "##" + COMMAND echo ARGS "teamcity[blockOpened name='${target_name}']" ) add_custom_command(TARGET ${target_name} POST_BUILD - COMMAND echo ARGS "##teamcity[blockClosed name='${target_name}']" VERBATIM + COMMAND echo ARGS "-n" "##" + COMMAND echo ARGS "teamcity[blockClosed name='${target_name}']" ) - else (DEFINED ENV{TEAMCITY_BUILDCONF_NAME}) + else (NOT WINDOWS AND DEFINED ENV{TEAMCITY_BUILDCONF_NAME}) add_custom_command(TARGET ${target_name} PRE_BUILD - COMMAND echo ARGS "################## START ${target_name}" VERBATIM + COMMAND echo ARGS "################## START ${target_name}" ) add_custom_command(TARGET ${target_name} POST_BUILD - COMMAND echo ARGS "################## FINISH ${target_name}" VERBATIM + COMMAND echo ARGS "################## FINISH ${target_name}" ) - endif (DEFINED ENV{TEAMCITY_BUILDCONF_NAME}) + endif (NOT WINDOWS AND DEFINED ENV{TEAMCITY_BUILDCONF_NAME}) endmacro (buildscripts_block target_name) From 9f27bff9fb82aa56fd61f95dc57fca1e119ef767 Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Fri, 7 Sep 2018 11:58:11 -0400 Subject: [PATCH 20/21] make the path output strip the 'dest' prefix --- indra/lib/python/indra/util/llmanifest.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/indra/lib/python/indra/util/llmanifest.py b/indra/lib/python/indra/util/llmanifest.py index 8904e72440..9569014a47 100755 --- a/indra/lib/python/indra/util/llmanifest.py +++ b/indra/lib/python/indra/util/llmanifest.py @@ -500,6 +500,19 @@ class LLManifest(object): relative to the destination directory.""" return os.path.join(self.get_dst_prefix(), relpath) + def _relative_dst_path(self, dstpath): + """ + Returns the path to a file or directory relative to the destination directory. + This should only be used for generating diagnostic output in the path method. + """ + dest_root=self.dst_prefix[0] + if dstpath.startswith(dest_root+os.path.sep): + return dstpath[len(dest_root)+1:] + elif dstpath.startswith(dest_root): + return dstpath[len(dest_root):] + else: + return dstpath + def ensure_src_dir(self, reldir): """Construct the path for a directory relative to the source path, and ensures that it exists. Returns the @@ -790,7 +803,7 @@ class LLManifest(object): if dst == None: dst = src dst = os.path.join(self.get_dst_prefix(), dst) - sys.stdout.write("Processing %s => %s ... " % (src, dst)) + sys.stdout.write("Processing %s => %s ... " % (src, self._relative_dst_path(dst))) def try_path(src): # expand globs From 9fd463bd9496ba5d97abec6ee75b9c0c089aa69d Mon Sep 17 00:00:00 2001 From: Oz Linden Date: Fri, 7 Sep 2018 09:13:57 -0400 Subject: [PATCH 21/21] remove only-partially-successful attempt to put teamcity blocks around targets --- indra/CMakeLists.txt | 1 - indra/cmake/00-Common.cmake | 23 ------------------- indra/cmake/LLAddBuildTest.cmake | 3 --- .../llimage_libtest/CMakeLists.txt | 1 - .../llui_libtest/CMakeLists.txt | 1 - indra/linux_crash_logger/CMakeLists.txt | 2 -- indra/llappearance/CMakeLists.txt | 2 -- indra/llaudio/CMakeLists.txt | 1 - indra/llcharacter/CMakeLists.txt | 1 - indra/llcommon/CMakeLists.txt | 2 -- indra/llcorehttp/CMakeLists.txt | 2 -- indra/llcrashlogger/CMakeLists.txt | 1 - indra/llimage/CMakeLists.txt | 1 - indra/llimagej2coj/CMakeLists.txt | 1 - indra/llinventory/CMakeLists.txt | 1 - indra/llkdu/CMakeLists.txt | 1 - indra/llmath/CMakeLists.txt | 1 - indra/llmessage/CMakeLists.txt | 1 - indra/llplugin/CMakeLists.txt | 1 - indra/llplugin/slplugin/CMakeLists.txt | 1 - indra/llprimitive/CMakeLists.txt | 1 - indra/llrender/CMakeLists.txt | 2 -- indra/llui/CMakeLists.txt | 1 - indra/llvfs/CMakeLists.txt | 1 - indra/llwindow/CMakeLists.txt | 2 -- indra/llxml/CMakeLists.txt | 1 - indra/mac_crash_logger/CMakeLists.txt | 1 - indra/media_plugins/base/CMakeLists.txt | 1 - indra/media_plugins/cef/CMakeLists.txt | 1 - indra/media_plugins/example/CMakeLists.txt | 1 - .../media_plugins/gstreamer010/CMakeLists.txt | 1 - indra/media_plugins/libvlc/CMakeLists.txt | 1 - indra/newview/CMakeLists.txt | 7 ------ indra/test/CMakeLists.txt | 1 - indra/viewer_components/login/CMakeLists.txt | 1 - indra/win_crash_logger/CMakeLists.txt | 1 - 36 files changed, 72 deletions(-) diff --git a/indra/CMakeLists.txt b/indra/CMakeLists.txt index 08d0c7b510..6c20a813ba 100644 --- a/indra/CMakeLists.txt +++ b/indra/CMakeLists.txt @@ -44,7 +44,6 @@ if (WINDOWS AND EXISTS ${LIBS_CLOSED_DIR}copy_win_scripts) endif (WINDOWS AND EXISTS ${LIBS_CLOSED_DIR}copy_win_scripts) add_custom_target(viewer) -buildscripts_block(viewer) add_subdirectory(${LIBS_OPEN_PREFIX}llcrashlogger) add_subdirectory(${LIBS_OPEN_PREFIX}llplugin) diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake index 503f4208fe..40fc706a99 100644 --- a/indra/cmake/00-Common.cmake +++ b/indra/cmake/00-Common.cmake @@ -217,27 +217,4 @@ else (USESYSTEMLIBS) ) endif (USESYSTEMLIBS) -macro (buildscripts_block target_name) - # add custom commands to bracket a target build to make logs easier to read - # this is disabled for windows because VS interleaves output in a way that defeats it - if (NOT WINDOWS AND DEFINED ENV{TEAMCITY_BUILDCONF_NAME}) - add_custom_command(TARGET ${target_name} PRE_BUILD - COMMAND echo ARGS "-n" "##" - COMMAND echo ARGS "teamcity[blockOpened name='${target_name}']" - ) - add_custom_command(TARGET ${target_name} POST_BUILD - COMMAND echo ARGS "-n" "##" - COMMAND echo ARGS "teamcity[blockClosed name='${target_name}']" - ) - else (NOT WINDOWS AND DEFINED ENV{TEAMCITY_BUILDCONF_NAME}) - add_custom_command(TARGET ${target_name} PRE_BUILD - COMMAND echo ARGS "################## START ${target_name}" - ) - add_custom_command(TARGET ${target_name} POST_BUILD - COMMAND echo ARGS "################## FINISH ${target_name}" - ) - endif (NOT WINDOWS AND DEFINED ENV{TEAMCITY_BUILDCONF_NAME}) - -endmacro (buildscripts_block target_name) - endif(NOT DEFINED ${CMAKE_CURRENT_LIST_FILE}_INCLUDED) diff --git a/indra/cmake/LLAddBuildTest.cmake b/indra/cmake/LLAddBuildTest.cmake index 3b5bc0af7c..b3f42c1a5e 100644 --- a/indra/cmake/LLAddBuildTest.cmake +++ b/indra/cmake/LLAddBuildTest.cmake @@ -105,7 +105,6 @@ INCLUDE(GoogleMock) # Setup target ADD_EXECUTABLE(PROJECT_${project}_TEST_${name} ${${name}_test_SOURCE_FILES}) - buildscripts_block(PROJECT_${project}_TEST_${name}) SET_TARGET_PROPERTIES(PROJECT_${project}_TEST_${name} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${EXE_STAGING_DIR}") # @@ -167,7 +166,6 @@ INCLUDE(GoogleMock) # Add the test runner target per-project # (replaces old _test_ok targets all over the place) ADD_CUSTOM_TARGET(${project}_tests ALL DEPENDS ${${project}_TEST_OUTPUT}) - buildscripts_block(${project}_tests) ADD_DEPENDENCIES(${project} ${project}_tests) ENDMACRO(LL_ADD_PROJECT_UNIT_TESTS) @@ -215,7 +213,6 @@ FUNCTION(LL_ADD_INTEGRATION_TEST message(STATUS "ADD_EXECUTABLE(INTEGRATION_TEST_${testname} ${source_files})") endif(TEST_DEBUG) ADD_EXECUTABLE(INTEGRATION_TEST_${testname} ${source_files}) - buildscripts_block(INTEGRATION_TEST_${testname}) SET_TARGET_PROPERTIES(INTEGRATION_TEST_${testname} PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${EXE_STAGING_DIR}" diff --git a/indra/integration_tests/llimage_libtest/CMakeLists.txt b/indra/integration_tests/llimage_libtest/CMakeLists.txt index 4e23a1fc87..d9353f904c 100644 --- a/indra/integration_tests/llimage_libtest/CMakeLists.txt +++ b/indra/integration_tests/llimage_libtest/CMakeLists.txt @@ -41,7 +41,6 @@ add_executable(llimage_libtest MACOSX_BUNDLE ${llimage_libtest_SOURCE_FILES} ) -buildscripts_block(llimage_libtest) set_target_properties(llimage_libtest PROPERTIES diff --git a/indra/integration_tests/llui_libtest/CMakeLists.txt b/indra/integration_tests/llui_libtest/CMakeLists.txt index 2d21f9af0f..34e34c7e47 100644 --- a/indra/integration_tests/llui_libtest/CMakeLists.txt +++ b/indra/integration_tests/llui_libtest/CMakeLists.txt @@ -56,7 +56,6 @@ set_source_files_properties(${llui_libtest_HEADER_FILES} list(APPEND llui_libtest_SOURCE_FILES ${llui_libtest_HEADER_FILES}) add_executable(llui_libtest ${llui_libtest_SOURCE_FILES}) -buildscripts_block(llui_libtest) # Link with OS-specific libraries for LLWindow dependency if (DARWIN) diff --git a/indra/linux_crash_logger/CMakeLists.txt b/indra/linux_crash_logger/CMakeLists.txt index 165b33fede..315aed8d11 100644 --- a/indra/linux_crash_logger/CMakeLists.txt +++ b/indra/linux_crash_logger/CMakeLists.txt @@ -55,7 +55,6 @@ list(APPEND linux_crash_logger_SOURCE_FILES set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,--as-needed") add_executable(linux-crash-logger ${linux_crash_logger_SOURCE_FILES}) -buildscripts_block(linux-crash-logger) # llcommon uses `clock_gettime' which is provided by librt on linux. set(LIBRT_LIBRARY rt) @@ -80,4 +79,3 @@ target_link_libraries(linux-crash-logger add_custom_target(linux-crash-logger-target ALL DEPENDS linux-crash-logger) -buildscripts_block(linux-crash-logger-target) diff --git a/indra/llappearance/CMakeLists.txt b/indra/llappearance/CMakeLists.txt index ad33fed010..20eb4678dd 100644 --- a/indra/llappearance/CMakeLists.txt +++ b/indra/llappearance/CMakeLists.txt @@ -77,7 +77,6 @@ set_source_files_properties(${llappearance_HEADER_FILES} list(APPEND llappearance_SOURCE_FILES ${llappearance_HEADER_FILES}) add_library (llappearance ${llappearance_SOURCE_FILES}) -buildscripts_block(llappearance) target_link_libraries(llappearance ${LLCHARACTER_LIBRARIES} @@ -95,7 +94,6 @@ target_link_libraries(llappearance if (BUILD_HEADLESS) add_library (llappearanceheadless ${llappearance_SOURCE_FILES}) - buildscripts_block(llappearanceheadless) target_link_libraries(llappearanceheadless ${LLCHARACTER_LIBRARIES} diff --git a/indra/llaudio/CMakeLists.txt b/indra/llaudio/CMakeLists.txt index fc81d8c6f2..e943dd5d5c 100644 --- a/indra/llaudio/CMakeLists.txt +++ b/indra/llaudio/CMakeLists.txt @@ -77,7 +77,6 @@ set_source_files_properties(${llaudio_HEADER_FILES} list(APPEND llaudio_SOURCE_FILES ${llaudio_HEADER_FILES}) add_library (llaudio ${llaudio_SOURCE_FILES}) -buildscripts_block(llaudio) target_link_libraries( llaudio ${LLCOMMON_LIBRARIES} diff --git a/indra/llcharacter/CMakeLists.txt b/indra/llcharacter/CMakeLists.txt index 3d0eb09ada..a17a5b0aa6 100644 --- a/indra/llcharacter/CMakeLists.txt +++ b/indra/llcharacter/CMakeLists.txt @@ -79,7 +79,6 @@ set_source_files_properties(${llcharacter_HEADER_FILES} list(APPEND llcharacter_SOURCE_FILES ${llcharacter_HEADER_FILES}) add_library (llcharacter ${llcharacter_SOURCE_FILES}) -buildscripts_block(llcharacter) target_link_libraries( llcharacter diff --git a/indra/llcommon/CMakeLists.txt b/indra/llcommon/CMakeLists.txt index 0d58a59e3f..42ad56f1b0 100644 --- a/indra/llcommon/CMakeLists.txt +++ b/indra/llcommon/CMakeLists.txt @@ -24,7 +24,6 @@ include_directories( ) # add_executable(lltreeiterators lltreeiterators.cpp) -# buildscripts_block(lltreeiterators) # # target_link_libraries(lltreeiterators # ${LLCOMMON_LIBRARIES}) @@ -280,7 +279,6 @@ if(LLCOMMON_LINK_SHARED) else(LLCOMMON_LINK_SHARED) add_library (llcommon ${llcommon_SOURCE_FILES}) endif(LLCOMMON_LINK_SHARED) -buildscripts_block(llcommon) target_link_libraries( llcommon diff --git a/indra/llcorehttp/CMakeLists.txt b/indra/llcorehttp/CMakeLists.txt index c42bd7b6b2..9dbc6f447e 100644 --- a/indra/llcorehttp/CMakeLists.txt +++ b/indra/llcorehttp/CMakeLists.txt @@ -90,7 +90,6 @@ endif (DARWIN OR LINUX) list(APPEND llcorehttp_SOURCE_FILES ${llcorehttp_HEADER_FILES}) add_library (llcorehttp ${llcorehttp_SOURCE_FILES}) -buildscripts_block(llcorehttp) target_link_libraries( llcorehttp ${CURL_LIBRARIES} @@ -215,7 +214,6 @@ endif (DARWIN) add_executable(http_texture_load ${llcorehttp_EXAMPLE_SOURCE_FILES} ) - buildscripts_block(http_texture_load) set_target_properties(http_texture_load PROPERTIES RUNTIME_OUTPUT_DIRECTORY "${EXE_STAGING_DIR}" diff --git a/indra/llcrashlogger/CMakeLists.txt b/indra/llcrashlogger/CMakeLists.txt index 7d7f3f0167..da23b46b7b 100644 --- a/indra/llcrashlogger/CMakeLists.txt +++ b/indra/llcrashlogger/CMakeLists.txt @@ -41,4 +41,3 @@ set_source_files_properties(${llcrashlogger_HEADER_FILES} list(APPEND llcrashlogger_SOURCE_FILES ${llcrashlogger_HEADER_FILES}) add_library(llcrashlogger ${llcrashlogger_SOURCE_FILES}) -buildscripts_block(llcrashlogger) diff --git a/indra/llimage/CMakeLists.txt b/indra/llimage/CMakeLists.txt index 4b57a77999..293ada7548 100644 --- a/indra/llimage/CMakeLists.txt +++ b/indra/llimage/CMakeLists.txt @@ -59,7 +59,6 @@ set_source_files_properties(${llimage_HEADER_FILES} list(APPEND llimage_SOURCE_FILES ${llimage_HEADER_FILES}) add_library (llimage ${llimage_SOURCE_FILES}) -buildscripts_block(llimage) # Libraries on which this library depends, needed for Linux builds # Sort by high-level to low-level if (USE_KDU) diff --git a/indra/llimagej2coj/CMakeLists.txt b/indra/llimagej2coj/CMakeLists.txt index f05842b721..c9423d50dd 100644 --- a/indra/llimagej2coj/CMakeLists.txt +++ b/indra/llimagej2coj/CMakeLists.txt @@ -29,7 +29,6 @@ set_source_files_properties(${llimagej2coj_HEADER_FILES} list(APPEND llimagej2coj_SOURCE_FILES ${llimagej2coj_HEADER_FILES}) add_library (llimagej2coj ${llimagej2coj_SOURCE_FILES}) -buildscripts_block(llimagej2coj) target_link_libraries( llimagej2coj diff --git a/indra/llinventory/CMakeLists.txt b/indra/llinventory/CMakeLists.txt index 6a5892127d..68dd00d880 100644 --- a/indra/llinventory/CMakeLists.txt +++ b/indra/llinventory/CMakeLists.txt @@ -60,7 +60,6 @@ set_source_files_properties(${llinventory_HEADER_FILES} list(APPEND llinventory_SOURCE_FILES ${llinventory_HEADER_FILES}) add_library (llinventory ${llinventory_SOURCE_FILES}) -buildscripts_block(llinventory) diff --git a/indra/llkdu/CMakeLists.txt b/indra/llkdu/CMakeLists.txt index 59f6d08517..cb0e204e91 100644 --- a/indra/llkdu/CMakeLists.txt +++ b/indra/llkdu/CMakeLists.txt @@ -50,7 +50,6 @@ set_source_files_properties(${llkdu_SOURCE_FILES} if (USE_KDU) add_library (llkdu ${llkdu_SOURCE_FILES}) - buildscripts_block(llkdu) target_link_libraries(llkdu ${KDU_LIBRARY}) diff --git a/indra/llmath/CMakeLists.txt b/indra/llmath/CMakeLists.txt index 110173add3..4c8bcdac91 100644 --- a/indra/llmath/CMakeLists.txt +++ b/indra/llmath/CMakeLists.txt @@ -101,7 +101,6 @@ set_source_files_properties(${llmath_HEADER_FILES} list(APPEND llmath_SOURCE_FILES ${llmath_HEADER_FILES}) add_library (llmath ${llmath_SOURCE_FILES}) -buildscripts_block(llmath) target_link_libraries(llmath ${LLCOMMON_LIBRARIES} diff --git a/indra/llmessage/CMakeLists.txt b/indra/llmessage/CMakeLists.txt index ab59c8bb40..e0922c0667 100644 --- a/indra/llmessage/CMakeLists.txt +++ b/indra/llmessage/CMakeLists.txt @@ -203,7 +203,6 @@ set_source_files_properties(${llmessage_HEADER_FILES} list(APPEND llmessage_SOURCE_FILES ${llmessage_HEADER_FILES}) add_library (llmessage ${llmessage_SOURCE_FILES}) -buildscripts_block(llmessage) if (LINUX) target_link_libraries( diff --git a/indra/llplugin/CMakeLists.txt b/indra/llplugin/CMakeLists.txt index 9d79eabbb3..5cc129a267 100644 --- a/indra/llplugin/CMakeLists.txt +++ b/indra/llplugin/CMakeLists.txt @@ -65,7 +65,6 @@ endif(NOT ADDRESS_SIZE EQUAL 32) list(APPEND llplugin_SOURCE_FILES ${llplugin_HEADER_FILES}) add_library (llplugin ${llplugin_SOURCE_FILES}) -buildscripts_block(llplugin) add_subdirectory(slplugin) diff --git a/indra/llplugin/slplugin/CMakeLists.txt b/indra/llplugin/slplugin/CMakeLists.txt index 3a9d661ff6..33520ad64c 100644 --- a/indra/llplugin/slplugin/CMakeLists.txt +++ b/indra/llplugin/slplugin/CMakeLists.txt @@ -49,7 +49,6 @@ add_executable(SLPlugin MACOSX_BUNDLE ${SLPlugin_SOURCE_FILES} ) -buildscripts_block(SLPlugin) if (WINDOWS) set_target_properties(SLPlugin diff --git a/indra/llprimitive/CMakeLists.txt b/indra/llprimitive/CMakeLists.txt index 12c6882844..dd2e806dda 100644 --- a/indra/llprimitive/CMakeLists.txt +++ b/indra/llprimitive/CMakeLists.txt @@ -71,7 +71,6 @@ set_source_files_properties(${llprimitive_HEADER_FILES} list(APPEND llprimitive_SOURCE_FILES ${llprimitive_HEADER_FILES}) add_library (llprimitive ${llprimitive_SOURCE_FILES}) -buildscripts_block(llprimitive) target_link_libraries(llprimitive ${LLCOMMON_LIBRARIES} diff --git a/indra/llrender/CMakeLists.txt b/indra/llrender/CMakeLists.txt index de5f24758c..07a0d8c402 100644 --- a/indra/llrender/CMakeLists.txt +++ b/indra/llrender/CMakeLists.txt @@ -91,7 +91,6 @@ if (BUILD_HEADLESS) add_library (llrenderheadless ${llrender_SOURCE_FILES} ) - buildscripts_block(llrenderheadless) set_property(TARGET llrenderheadless PROPERTY COMPILE_DEFINITIONS LL_MESA=1 LL_MESA_HEADLESS=1 @@ -111,7 +110,6 @@ if (BUILD_HEADLESS) endif (BUILD_HEADLESS) add_library (llrender ${llrender_SOURCE_FILES}) -buildscripts_block(llrender) if (SDL_FOUND) set_property(TARGET llrender diff --git a/indra/llui/CMakeLists.txt b/indra/llui/CMakeLists.txt index 41a79d5752..8054eb3619 100644 --- a/indra/llui/CMakeLists.txt +++ b/indra/llui/CMakeLists.txt @@ -269,7 +269,6 @@ set_source_files_properties(llurlentry.cpp list(APPEND llui_SOURCE_FILES ${llui_HEADER_FILES}) add_library (llui ${llui_SOURCE_FILES}) -buildscripts_block(llui) # Libraries on which this library depends, needed for Linux builds # Sort by high-level to low-level target_link_libraries(llui diff --git a/indra/llvfs/CMakeLists.txt b/indra/llvfs/CMakeLists.txt index a9d602d333..67dce8c073 100644 --- a/indra/llvfs/CMakeLists.txt +++ b/indra/llvfs/CMakeLists.txt @@ -64,7 +64,6 @@ set_source_files_properties(${llvfs_HEADER_FILES} list(APPEND llvfs_SOURCE_FILES ${llvfs_HEADER_FILES}) add_library (llvfs ${llvfs_SOURCE_FILES}) -buildscripts_block(llvfs) set(vfs_BOOST_LIBRARIES ${BOOST_FILESYSTEM_LIBRARY} diff --git a/indra/llwindow/CMakeLists.txt b/indra/llwindow/CMakeLists.txt index d7ab3bfebb..0743fd899f 100644 --- a/indra/llwindow/CMakeLists.txt +++ b/indra/llwindow/CMakeLists.txt @@ -175,7 +175,6 @@ if (BUILD_HEADLESS) ${llwindow_SOURCE_FILES} ${llwindowheadless_SOURCE_FILES} ) - buildscripts_block(llwindowheadless) set_property(TARGET llwindowheadless PROPERTY COMPILE_DEFINITIONS LL_MESA=1 LL_MESA_HEADLESS=1 ) @@ -192,7 +191,6 @@ endif (llwindow_HEADER_FILES) ${llwindow_SOURCE_FILES} ${viewer_SOURCE_FILES} ) - buildscripts_block(llwindow) if (SDL_FOUND) set_property(TARGET llwindow diff --git a/indra/llxml/CMakeLists.txt b/indra/llxml/CMakeLists.txt index cb2d0f5c76..17400a203e 100644 --- a/indra/llxml/CMakeLists.txt +++ b/indra/llxml/CMakeLists.txt @@ -40,7 +40,6 @@ set_source_files_properties(${llxml_HEADER_FILES} list(APPEND llxml_SOURCE_FILES ${llxml_HEADER_FILES}) add_library (llxml ${llxml_SOURCE_FILES}) -buildscripts_block(llxml) # Libraries on which this library depends, needed for Linux builds # Sort by high-level to low-level target_link_libraries( llxml diff --git a/indra/mac_crash_logger/CMakeLists.txt b/indra/mac_crash_logger/CMakeLists.txt index f62bab5673..f6c4dfb59d 100644 --- a/indra/mac_crash_logger/CMakeLists.txt +++ b/indra/mac_crash_logger/CMakeLists.txt @@ -58,7 +58,6 @@ list(APPEND mac_crash_logger_SOURCE_FILES ${mac_crash_logger_RESOURCE_FILES}) add_executable(mac-crash-logger MACOSX_BUNDLE ${mac_crash_logger_SOURCE_FILES}) -buildscripts_block(mac-crash-logger) set_target_properties(mac-crash-logger PROPERTIES diff --git a/indra/media_plugins/base/CMakeLists.txt b/indra/media_plugins/base/CMakeLists.txt index 8ab535e14c..7f2b82ffdd 100644 --- a/indra/media_plugins/base/CMakeLists.txt +++ b/indra/media_plugins/base/CMakeLists.txt @@ -49,5 +49,4 @@ set(media_plugin_base_HEADER_FILES add_library(media_plugin_base ${media_plugin_base_SOURCE_FILES} ) -buildscripts_block(media_plugin_base) diff --git a/indra/media_plugins/cef/CMakeLists.txt b/indra/media_plugins/cef/CMakeLists.txt index dedc47e341..ce6278963d 100644 --- a/indra/media_plugins/cef/CMakeLists.txt +++ b/indra/media_plugins/cef/CMakeLists.txt @@ -82,7 +82,6 @@ add_library(media_plugin_cef SHARED ${media_plugin_cef_SOURCE_FILES} ) -buildscripts_block(media_plugin_cef) #add_dependencies(media_plugin_cef # ${MEDIA_PLUGIN_BASE_LIBRARIES} diff --git a/indra/media_plugins/example/CMakeLists.txt b/indra/media_plugins/example/CMakeLists.txt index 95d3d5b5a2..eb067a7f6e 100644 --- a/indra/media_plugins/example/CMakeLists.txt +++ b/indra/media_plugins/example/CMakeLists.txt @@ -48,7 +48,6 @@ add_library(media_plugin_example SHARED ${media_plugin_example_SOURCE_FILES} ) -buildscripts_block(media_plugin_example) target_link_libraries(media_plugin_example ${LLPLUGIN_LIBRARIES} diff --git a/indra/media_plugins/gstreamer010/CMakeLists.txt b/indra/media_plugins/gstreamer010/CMakeLists.txt index 18b4b761cf..571eb57b24 100644 --- a/indra/media_plugins/gstreamer010/CMakeLists.txt +++ b/indra/media_plugins/gstreamer010/CMakeLists.txt @@ -57,7 +57,6 @@ add_library(media_plugin_gstreamer010 SHARED ${media_plugin_gstreamer010_SOURCE_FILES} ) -buildscripts_block(media_plugin_gstreamer010) target_link_libraries(media_plugin_gstreamer010 ${LLPLUGIN_LIBRARIES} diff --git a/indra/media_plugins/libvlc/CMakeLists.txt b/indra/media_plugins/libvlc/CMakeLists.txt index 7946e7ccfc..97392bbe08 100644 --- a/indra/media_plugins/libvlc/CMakeLists.txt +++ b/indra/media_plugins/libvlc/CMakeLists.txt @@ -49,7 +49,6 @@ add_library(media_plugin_libvlc SHARED ${media_plugin_libvlc_SOURCE_FILES} ) -buildscripts_block(media_plugin_libvlc) target_link_libraries(media_plugin_libvlc ${LLPLUGIN_LIBRARIES} diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index 560c9d0737..e573b927d7 100644 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -1722,7 +1722,6 @@ add_executable(${VIEWER_BINARY_NAME} MACOSX_BUNDLE ${viewer_SOURCE_FILES} ) -buildscripts_block(${VIEWER_BINARY_NAME}) if (SDL_FOUND) set_property(TARGET ${VIEWER_BINARY_NAME} @@ -1915,7 +1914,6 @@ if (WINDOWS) ${CMAKE_CFG_INTDIR}/touched.bat windows-setup-build-all ) - buildscripts_block(llpackage) # temporarily disable packaging of event_host until hg subrepos get # sorted out on the parabuild cluster... #${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/event_host.tar.bz2) @@ -2255,7 +2253,6 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE VERBATIM) add_custom_target(generate_symbols DEPENDS "${VIEWER_SYMBOL_FILE}" ${VIEWER_BINARY_NAME} "${VIEWER_COPY_MANIFEST}") - buildscripts_block(generate_symbols) add_dependencies(generate_symbols ${VIEWER_BINARY_NAME}) if (WINDOWS OR LINUX) add_dependencies(generate_symbols "${VIEWER_COPY_MANIFEST}") @@ -2288,7 +2285,6 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE COMMENT "Packing viewer PDB into ${VIEWER_SYMBOL_FILE_CYGWIN}" ) add_custom_target(generate_symbols DEPENDS "${VIEWER_SYMBOL_FILE}" ${VIEWER_BINARY_NAME}) - buildscripts_block(generate_symbols) add_dependencies(generate_symbols ${VIEWER_BINARY_NAME}) endif (WINDOWS) if (DARWIN) @@ -2300,7 +2296,6 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE COMMENT "Generating ${VIEWER_APP_DSYM}" ) add_custom_target(dsym_generate DEPENDS "${VIEWER_APP_DSYM}") - buildscripts_block(dsym_generate) add_dependencies(dsym_generate ${VIEWER_BINARY_NAME}) add_custom_command(OUTPUT "${VIEWER_SYMBOL_FILE}" # See above comments about "tar ...j" @@ -2315,7 +2310,6 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE COMMENT "Packing dSYM into ${VIEWER_SYMBOL_FILE}" ) add_custom_target(dsym_tarball DEPENDS "${VIEWER_SYMBOL_FILE}") - buildscripts_block(dsym_tarball) add_dependencies(dsym_tarball dsym_generate) add_custom_command(OUTPUT "${VIEWER_APP_XCARCHIVE}" COMMAND "zip" @@ -2343,7 +2337,6 @@ if (PACKAGE AND (RELEASE_CRASH_REPORTING OR NON_RELEASE_CRASH_REPORTING) AND VIE "${VIEWER_APP_XCARCHIVE}" "${CMAKE_CURRENT_BINARY_DIR}/dsym.stamp" ) - buildscripts_block(generate_symbols) add_dependencies(generate_symbols dsym_tarball dsym_xcarchive) endif (DARWIN) if (LINUX) diff --git a/indra/test/CMakeLists.txt b/indra/test/CMakeLists.txt index 11ec2226ea..8344cead57 100644 --- a/indra/test/CMakeLists.txt +++ b/indra/test/CMakeLists.txt @@ -81,7 +81,6 @@ set_source_files_properties(${test_HEADER_FILES} list(APPEND test_SOURCE_FILES ${test_HEADER_FILES}) add_executable(lltest ${test_SOURCE_FILES}) -buildscripts_block(lltest) target_link_libraries(lltest ${LLDATABASE_LIBRARIES} diff --git a/indra/viewer_components/login/CMakeLists.txt b/indra/viewer_components/login/CMakeLists.txt index 79706e0df4..3bedeb7292 100644 --- a/indra/viewer_components/login/CMakeLists.txt +++ b/indra/viewer_components/login/CMakeLists.txt @@ -42,7 +42,6 @@ list(APPEND add_library(lllogin ${login_SOURCE_FILES} ) -buildscripts_block(lllogin) target_link_libraries(lllogin ${LLMESSAGE_LIBRARIES} diff --git a/indra/win_crash_logger/CMakeLists.txt b/indra/win_crash_logger/CMakeLists.txt index 9d651fcbc9..144d037a31 100644 --- a/indra/win_crash_logger/CMakeLists.txt +++ b/indra/win_crash_logger/CMakeLists.txt @@ -71,7 +71,6 @@ list(APPEND find_library(DXGUID_LIBRARY dxguid ${DIRECTX_LIBRARY_DIR}) add_executable(windows-crash-logger WIN32 ${win_crash_logger_SOURCE_FILES}) -buildscripts_block(windows-crash-logger) target_link_libraries(windows-crash-logger ${BREAKPAD_EXCEPTION_HANDLER_LIBRARIES}