From e72d546fe36ffb262a6a844ac4aae432df357ed5 Mon Sep 17 00:00:00 2001 From: Monty Brandenberg Date: Fri, 11 Apr 2014 19:19:22 -0400 Subject: Mac: Update llqtwebkit build, build and package dylib Qt4 pieces. Part of the switchover to dynamic Qt4. This mostly completes the Mac side. Webkit is functional on Mac, plugins work. The two test programs, llfbconnectest and llplugintest, need a little more work to run without manual fixup ('.' on PATH and maybe a symlink to libz.1.dylib and they run and function on Mac). Also need to address libz.dylib vs libz.a. Currently resolving against dylib which is not what I want. --- indra/media_plugins/webkit/CMakeLists.txt | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'indra/media_plugins') diff --git a/indra/media_plugins/webkit/CMakeLists.txt b/indra/media_plugins/webkit/CMakeLists.txt index 0c1c3d800e..5a8fe90bdd 100755 --- a/indra/media_plugins/webkit/CMakeLists.txt +++ b/indra/media_plugins/webkit/CMakeLists.txt @@ -121,12 +121,12 @@ if (DARWIN) ) # copy the webkit dylib to the build directory - add_custom_command( - TARGET media_plugin_webkit POST_BUILD -# OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/libllqtwebkit.dylib - COMMAND ${CMAKE_COMMAND} -E copy ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/ - DEPENDS media_plugin_webkit ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib - ) +# add_custom_command( +# TARGET media_plugin_webkit POST_BUILD +# # OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/libllqtwebkit.dylib +# COMMAND ${CMAKE_COMMAND} -E copy ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/ +# DEPENDS media_plugin_webkit ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib +# ) endif (DARWIN) -- cgit v1.3 From 403ec62e3ce9c32961d50ff13b38a48c24a5cc4b Mon Sep 17 00:00:00 2001 From: Monty Brandenberg Date: Wed, 28 May 2014 19:40:45 +0000 Subject: All: Update library SDL to 290309, c-ares to 290089, boost to 290191, colladadom to 290229, curl to 290186, fontconfig to 290258, freetype to 290255, google-mock/gmock/gtest to 290199, libpng to 290081, libxml2 to 290157, llqtwebkit to 290262/250147 (to be fixed shortly), openssl to 290083, pcre to 290150, zlib to 290080. The freetype2 headers are now normalized to what they would normally be on a unix-type system. Libxml2 and pcre are available on all platforms. Libraries generally move in the direction of static archives rather than shared libraries (e.g. openssl). The llqtwebkit side is a step back from the more ambitious goal. What will be used (290262) will be a simple rebuild of the existing 4.7.1 library with updated package dependencies. The bigger work will be in the future. --- autobuild.xml | 278 ++++++++++++++----------- indra/cmake/Copy3rdPartyLibs.cmake | 19 +- indra/cmake/FreeType.cmake | 2 +- indra/cmake/GStreamer010Plugin.cmake | 2 +- indra/cmake/GoogleMock.cmake | 2 +- indra/cmake/LLPrimitive.cmake | 13 +- indra/cmake/OpenSSL.cmake | 2 +- indra/cmake/WebKitLibPlugin.cmake | 18 +- indra/media_plugins/webkit/CMakeLists.txt | 12 +- indra/newview/viewer_manifest.py | 71 +------ indra/test_apps/llfbconnecttest/CMakeLists.txt | 118 +++-------- indra/test_apps/llplugintest/CMakeLists.txt | 126 +++-------- 12 files changed, 238 insertions(+), 425 deletions(-) (limited to 'indra/media_plugins') diff --git a/autobuild.xml b/autobuild.xml index 338942b5b1..28c6cd5002 100755 --- a/autobuild.xml +++ b/autobuild.xml @@ -66,9 +66,9 @@ archive hash - 7beeb31c3996bb27cd6964a50fd70d4d + 528d0b78611d87527d778320a6bcea8e url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-sdl-update/rev/288993/arch/Linux/installer/SDL-1.2.15-linux-20140412.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-sdl-update/rev/290309/arch/Linux/installer/SDL-1.2.15-linux-20140528.tar.bz2 name linux @@ -138,9 +138,9 @@ archive hash - a53abee08e4068852d65426dec445271 + d46a7edc12e9d3ec55b3af5a48a4109b url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-ares-update/rev/288988/arch/Darwin/installer/ares-1.10.0-darwin-20140411.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-ares-update/rev/290089/arch/Darwin/installer/ares-1.10.0-darwin-20140516.tar.bz2 name darwin @@ -150,9 +150,9 @@ archive hash - ea125c52a2a3bf4c2d90a80ab95a480e + 5c0319efe5b27a174bf8d418e5f1e8e8 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-ares-update/rev/288988/arch/Linux/installer/ares-1.10.0-linux-20140412.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-ares-update/rev/290089/arch/Linux/installer/ares-1.10.0-linux-20140516.tar.bz2 name linux @@ -162,9 +162,9 @@ archive hash - 895a014dde535fb418b894b4ebd9a5ca + 9a675008e81b870876e1bf11a42526c7 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-ares-update/rev/288988/arch/CYGWIN/installer/ares-1.10.0-windows-20140411.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-ares-update/rev/290089/arch/CYGWIN/installer/ares-1.10.0-windows-20140516.tar.bz2 name windows @@ -186,9 +186,9 @@ archive hash - e52cf8be6f7e285eff8f8671810b77df + 7856ed94bf33773b0356b23adc1dbdab url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-boost-update/rev/289003/arch/Darwin/installer/boost-1.55.0-darwin-20140414.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-boost-update/rev/290191/arch/Darwin/installer/boost-1.55.0-darwin-20140521.tar.bz2 name darwin @@ -198,9 +198,9 @@ archive hash - 6bea4b8528439f37381a807b9be87756 + 1fbf9f45eb7f298c204b66e923a4dc69 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-boost-update/rev/289003/arch/Linux/installer/boost-1.55.0-linux-20140414.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-boost-update/rev/290191/arch/Linux/installer/boost-1.55.0-linux-20140521.tar.bz2 name linux @@ -210,9 +210,9 @@ archive hash - 5de094775997e47ea55eff5a348c585e + a2a4a3a45a1fd7fb01f6d6a73a095641 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-boost-update/rev/289003/arch/CYGWIN/installer/boost-1.55.0-windows-20140414.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-boost-update/rev/290191/arch/CYGWIN/installer/boost-1.55.0-windows-20140521.tar.bz2 name windows @@ -234,9 +234,9 @@ archive hash - 480b27a0cb39a4adfcdeabef895de3e1 + e503eb218d4f10f593fefbddb5f92851 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-colladadom/rev/227230/arch/Darwin/installer/colladadom-2.2-darwin-20110420.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-colladadom-update/rev/290229/arch/Darwin/installer/colladadom-2.3-darwin-20140522.tar.bz2 name darwin @@ -246,9 +246,9 @@ archive hash - be7321370b69b6d66938b82a9230a067 + 2e2cbdc3976825134b0201f3fe42b609 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-colladadom/rev/233450/arch/Linux/installer/colladadom-2.2-linux-20110621.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-colladadom-update/rev/290229/arch/Linux/installer/colladadom-2.3-linux-20140522.tar.bz2 name linux @@ -258,9 +258,9 @@ archive hash - a9f548eb6f9aaf292508a8b09c7f2f73 + 67c7da074b45ad262a555310454ea2e6 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-colladadom/rev/226584/arch/CYGWIN/installer/colladadom-2.2-windows-20110413.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-colladadom-update/rev/290229/arch/CYGWIN/installer/colladadom-2.3-windows-20140522.tar.bz2 name windows @@ -282,9 +282,9 @@ archive hash - 4f680e07945749267ac987a1dd6586cf + 4de6ce017c8c4f9d1c06d548df191048 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-curl-update/rev/289005/arch/Darwin/installer/curl-7.34.0-darwin-20140414.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-curl-update/rev/290186/arch/Darwin/installer/curl-7.37.0-darwin-20140521.tar.bz2 name darwin @@ -294,9 +294,9 @@ archive hash - ca7277fd16177f56a88a698c289585cd + 38844575f625e40c83f33912ebf83c3a url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-curl-update/rev/289005/arch/Linux/installer/curl-7.34.0-linux-20140414.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-curl-update/rev/290186/arch/Linux/installer/curl-7.37.0-linux-20140521.tar.bz2 name linux @@ -306,9 +306,9 @@ archive hash - c9261587a5711619df7db8441217dbeb + 2d848966f01988e393fbc708df5a7bf1 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-curl-update/rev/289005/arch/CYGWIN/installer/curl-7.34.0-windows-20140414.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-curl-update/rev/290186/arch/CYGWIN/installer/curl-7.37.0-windows-20140521.tar.bz2 name windows @@ -546,9 +546,9 @@ archive hash - f78379e28b7dcf3305b91e8a4f72b734 + d090edb48c00ee8d89002483fdcb1c1b url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-fontconfig-update/rev/283252/arch/Linux/installer/fontconfig-2.11.0-linux-20131101.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-fontconfig-update/rev/290258/arch/Linux/installer/fontconfig-2.11.0-linux-20140524.tar.bz2 name linux @@ -594,9 +594,9 @@ archive hash - c0eacb6348e032fbc69cfdc4bd215ee4 + cc70fb25612a1e257a8179f8ac432811 url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/freetype-2.4.4-darwin-20110307.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-freetype-update/rev/290255/arch/Darwin/installer/freetype-2.4.4-darwin-20140523.tar.bz2 name darwin @@ -606,9 +606,9 @@ archive hash - bd6f84f9fb3c2e68850676d06935373f + f391b2d2a758e1caec10b863d7b94fcc url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-freetype/rev/271684/arch/Linux/installer/freetype-2.4.4-linux-20130312.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-freetype-update/rev/290255/arch/Linux/installer/freetype-2.4.4-linux-20140524.tar.bz2 name linux @@ -618,9 +618,9 @@ archive hash - 271349827b939406162ce42e42cd18e0 + 831224b9c7e83c962eb62b176335e642 url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/freetype-2.4.4-windows-20110218.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-freetype-update/rev/290255/arch/CYGWIN/installer/freetype-2.4.4-windows-20140523.tar.bz2 name windows @@ -747,14 +747,14 @@ - google_breakpad + gmock license bsd license_file - LICENSES/google_breakpad.txt + LICENSES/gmock.txt name - google_breakpad + gmock platforms darwin @@ -762,9 +762,9 @@ archive hash - aff5566e04003de0383941981198e04e + 5d1af8fe41a4f860f48ff6d8fda209e2 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/273073/arch/Darwin/installer/google_breakpad-0.0.0-rev1099-darwin-20130329.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-google-mock-update/rev/290199/arch/Darwin/installer/gmock-1.7.0-darwin-20140521.tar.bz2 name darwin @@ -774,9 +774,9 @@ archive hash - 52257e5eb166a0b69c9c0c38f6e1920e + 0c8305dde07d0cbd26d295c458f3689b url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/273079/arch/Linux/installer/google_breakpad-0.0.0-rev1099-linux-20130329.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-google-mock-update/rev/290199/arch/Linux/installer/gmock-1.7.0-linux-20140522.tar.bz2 name linux @@ -786,23 +786,23 @@ archive hash - a1e519d08c507c12f9d412b2ae8328c8 + 9b539f6313c4d46eb47f029d42d46658 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/279804/arch/CYGWIN/installer/google_breakpad-0.0.0-rev1099-windows-20130813.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-google-mock-update/rev/290199/arch/CYGWIN/installer/gmock-1.7.0-windows-20140521.tar.bz2 name windows - googlemock + google_breakpad license bsd license_file - LICENSES/googlemock.txt + LICENSES/google_breakpad.txt name - googlemock + google_breakpad platforms darwin @@ -810,9 +810,9 @@ archive hash - 886ee428f058005ab7f90f61784ec9d9 + aff5566e04003de0383941981198e04e url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/googlemock-1.1.0-darwin-20101004.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/273073/arch/Darwin/installer/google_breakpad-0.0.0-rev1099-darwin-20130329.tar.bz2 name darwin @@ -822,9 +822,9 @@ archive hash - 782ca04e56d8eab755adcae297cafa7c + 52257e5eb166a0b69c9c0c38f6e1920e url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/googlemock-1.1.0-linux-20101001.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/273079/arch/Linux/installer/google_breakpad-0.0.0-rev1099-linux-20130329.tar.bz2 name linux @@ -834,9 +834,9 @@ archive hash - d2542614df9dd99cbb5ff67e76d4a6c1 + a1e519d08c507c12f9d412b2ae8328c8 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-mock/rev/274899/arch/CYGWIN/installer/gmock-1.6.0-windows-20130426.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-google-breakpad/rev/279804/arch/CYGWIN/installer/google_breakpad-0.0.0-rev1099-windows-20130813.tar.bz2 name windows @@ -1194,9 +1194,9 @@ archive hash - 2d8595c7cee28646ac5f2e1bc6735eb2 + d3691526296a95cb06338e2b7318153d url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libpng-update/rev/288992/arch/Darwin/installer/libpng-1.6.8-darwin-20140411.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libpng-update/rev/290081/arch/Darwin/installer/libpng-1.6.8-darwin-20140515.tar.bz2 name darwin @@ -1206,9 +1206,9 @@ archive hash - 324e8a9109147bb1a1637afb34106b5f + 1b0b31b7852c4dfc94aca69e5e8e4660 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libpng-update/rev/288992/arch/Linux/installer/libpng-1.6.8-linux-20140412.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libpng-update/rev/290081/arch/Linux/installer/libpng-1.6.8-linux-20140515.tar.bz2 name linux @@ -1218,9 +1218,9 @@ archive hash - cb7cebc4589fb4988343224acc5ebd31 + b20d6a8718d87b333d8a572ea813ca7a url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libpng-update/rev/288992/arch/CYGWIN/installer/libpng-1.6.8-windows-20140411.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libpng-update/rev/290081/arch/CYGWIN/installer/libpng-1.6.8-windows-20140515.tar.bz2 name windows @@ -1251,28 +1251,52 @@ - libxml + libxml2 license mit license_file - LICENSES/libxml.txt + LICENSES/libxml2.txt name - libxml + libxml2 platforms + darwin + + archive + + hash + c78df230a00a7d8e2f3ba56672f5f98f + url + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libxml-update/rev/290157/arch/Darwin/installer/libxml2-2.9.1-darwin-20140520.tar.bz2 + + name + darwin + linux archive hash - 3387100e6096f3edf91ddb0bda2e247c + e46d9ab2478d16178d4160d2155ec2d7 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-libxml-update/rev/283232/arch/Linux/installer/libxml2-2.9.1-linux-20131101.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libxml-update/rev/290157/arch/Linux/installer/libxml2-2.9.1-linux-20140520.tar.bz2 name linux + windows + + archive + + hash + 33ff18389f4bc7fe96ecb85c066d9634 + url + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libxml-update/rev/290157/arch/CYGWIN/installer/libxml2-2.9.1-windows-20140520.tar.bz2 + + name + windows + llappearanceutility-source @@ -1420,9 +1444,9 @@ archive hash - 8c55280761991226b8acbf1f05fcc292 + 4a98d727561cd1f4ac5ee02907411df1 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-llqtwebkit2/rev/289008/arch/Darwin/installer/llqtwebkit-4.7.1-darwin-20140414.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-llqtwebkit/rev/250147/arch/Darwin/installer/llqtwebkit-4.7.1-darwin-20120228.tar.bz2 name darwin @@ -1432,9 +1456,9 @@ archive hash - 07ad70f0420c68d93d2c00f9137e26ab + 21246ee9b7a3fabd1fef7fe407770d56 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-llqtwebkit2/rev/289008/arch/Linux/installer/llqtwebkit-4.7.1-linux-20140414.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-llqtwebkit-minimum/rev/290262/arch/Linux/installer/llqtwebkit-4.7.1-linux-20140524.tar.bz2 name linux @@ -1444,9 +1468,9 @@ archive hash - 25c4f5c992125b97a21fdb73d328fa7c + 5e3cd6af397e853a963a6de40d440ff4 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-llqtwebkit2/rev/289008/arch/CYGWIN/installer/llqtwebkit-4.7.1-windows-20140414.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-llqtwebkit/rev/250147/arch/CYGWIN/installer/llqtwebkit-4.7.1-windows-20120228.tar.bz2 name windows @@ -1597,36 +1621,26 @@ - openSSL + openal_soft license - openSSL + lgpl license_file - LICENSES/openssl.txt + LICENSES/OPENAL.txt name - openSSL + openal_soft platforms - darwin - - archive - - hash - c29ab6c1c3fa125a53d3da28ed549c03 - url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-openssl-update/rev/288991/arch/Darwin/installer/openssl-1.0.1g-darwin-20140411.tar.bz2 - - name - darwin - linux archive hash - cfbe3efd2e274edba8f3ee39e6925994 + fccdca18a950ac9363c6fb39118b80e1 + hash_algorithm + md5 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-openssl-update/rev/288991/arch/Linux/installer/openssl-1.0.1g-linux-20140412.tar.bz2 + http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/openal-3ad86a1c-linux-20110114.tar.bz2 name linux @@ -1636,35 +1650,47 @@ archive hash - 035716f4a1120585b4340db23d92be1f + 04df406f3e5d04cf176660bdac66c3a1 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-openssl-update/rev/288991/arch/CYGWIN/installer/openssl-1.0.1g-windows-20140411.tar.bz2 + http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/openal-1.12.854-1.1.0-windows-20110301.tar.bz2 name windows + version + 3ad86a1c - openal_soft + openjpeg license - lgpl + openjpeg license_file - LICENSES/OPENAL.txt + LICENSES/openjpeg.txt name - openal_soft + openjpeg platforms + darwin + + archive + + hash + 4be51c7cca7d84831e30b63279df7ae5 + url + http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/openjpeg-1.4-darwin-20110302.tar.bz2 + + name + darwin + linux archive hash - fccdca18a950ac9363c6fb39118b80e1 - hash_algorithm - md5 + fb2382014c79e0049746e4e29bd834f9 url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/openal-3ad86a1c-linux-20110114.tar.bz2 + http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/openjpeg-1.4-linux-20110314.tar.bz2 name linux @@ -1674,25 +1700,23 @@ archive hash - 04df406f3e5d04cf176660bdac66c3a1 + ca5765af55f798724d601720afdf6953 url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/openal-1.12.854-1.1.0-windows-20110301.tar.bz2 + http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/openjpeg-1.4-windows-20110302.tar.bz2 name windows - version - 3ad86a1c - openjpeg + openssl license - openjpeg + openssl license_file - LICENSES/openjpeg.txt + LICENSES/openssl.txt name - openjpeg + openssl platforms darwin @@ -1700,9 +1724,9 @@ archive hash - 4be51c7cca7d84831e30b63279df7ae5 + 2658b5d362eb78f4acd79c8fc67f936c url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/openjpeg-1.4-darwin-20110302.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-openssl-update/rev/290083/arch/Darwin/installer/openssl-1.0.1g-darwin-20140515.tar.bz2 name darwin @@ -1712,9 +1736,9 @@ archive hash - fb2382014c79e0049746e4e29bd834f9 + 5a260d60cd3c91fe21f969f2eb478e53 url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/openjpeg-1.4-linux-20110314.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-openssl-update/rev/290083/arch/Linux/installer/openssl-1.0.1g-linux-20140516.tar.bz2 name linux @@ -1724,9 +1748,9 @@ archive hash - ca5765af55f798724d601720afdf6953 + 6a816d0af5481d717a681e3fb25c0a94 url - http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/openjpeg-1.4-windows-20110302.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-openssl-update/rev/290083/arch/CYGWIN/installer/openssl-1.0.1g-windows-20140515.tar.bz2 name windows @@ -1748,9 +1772,9 @@ archive hash - a8e74694a0f4248228c13c845ed0a6f8 + 5532e04d74bcdcc6aa60e99b1200dcc9 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-pcre/rev/228822/arch/Darwin/installer/pcre-7.6-darwin-20110504.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-pcre-update/rev/290150/arch/Darwin/installer/pcre-8.35-darwin-20140520.tar.bz2 name darwin @@ -1760,9 +1784,21 @@ archive hash - bb0abe962b3b8208ed2dab0424aab33d + be592c5749a7fea74aed6160694ecd05 + url + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-pcre-update/rev/290150/arch/Linux/installer/pcre-8.35-linux-20140520.tar.bz2 + + name + linux + + windows + + archive + + hash + a1a440a297a2de47661a661cfed6ecae url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3p-pcre/rev/228822/arch/Linux/installer/pcre-7.6-linux-20110504.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-pcre-update/rev/290150/arch/CYGWIN/installer/pcre-8.35-windows-20140520.tar.bz2 name linux @@ -1928,9 +1964,9 @@ archive hash - c6666f9231da49dac7388a306beca450 + 44f898ad513cc40ace8609073a594fa5 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-zlib-update/rev/288987/arch/Darwin/installer/zlib-1.2.8-darwin-20140411.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-zlib-update/rev/290080/arch/Darwin/installer/zlib-1.2.8-darwin-20140515.tar.bz2 name darwin @@ -1940,9 +1976,9 @@ archive hash - 585880fa78da054739e3c60d3bd29bd2 + 8db178c604df50682d85bb8a78065903 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-zlib-update/rev/288987/arch/Linux/installer/zlib-1.2.8-linux-20140412.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-zlib-update/rev/290080/arch/Linux/installer/zlib-1.2.8-linux-20140515.tar.bz2 name linux @@ -1952,9 +1988,9 @@ archive hash - 5f23fb919a365b19a3d5e1ba2f57436a + 99157bfc04655ca870d4c5ddd4358f34 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-zlib-update/rev/288987/arch/CYGWIN/installer/zlib-1.2.8-windows-20140411.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-zlib-update/rev/290080/arch/CYGWIN/installer/zlib-1.2.8-windows-20140515.tar.bz2 name windows diff --git a/indra/cmake/Copy3rdPartyLibs.cmake b/indra/cmake/Copy3rdPartyLibs.cmake index 068f1e9af7..ff8cbedfd4 100755 --- a/indra/cmake/Copy3rdPartyLibs.cmake +++ b/indra/cmake/Copy3rdPartyLibs.cmake @@ -40,7 +40,6 @@ if(WINDOWS) libapriconv-1.dll ssleay32.dll libeay32.dll - libcollada14dom22-d.dll glod.dll libhunspell.dll ) @@ -53,7 +52,6 @@ if(WINDOWS) libapriconv-1.dll ssleay32.dll libeay32.dll - libcollada14dom22.dll glod.dll libhunspell.dll ) @@ -213,13 +211,12 @@ elseif(DARWIN) libapr-1.dylib libaprutil-1.0.dylib libaprutil-1.dylib - libcollada14dom.dylib libexception_handler.dylib libexpat.1.5.2.dylib libexpat.dylib libGLOD.dylib libhunspell-1.3.0.dylib - libminizip.a + libllqtwebkit.dylib libndofdev.dylib ) @@ -258,28 +255,14 @@ elseif(LINUX) libapr-1.so.0 libaprutil-1.so.0 libatk-1.0.so - libboost_context-mt.so.${BOOST_VERSION}.0 - libboost_coroutine-mt.so.${BOOST_VERSION}.0 - libboost_filesystem-mt.so.${BOOST_VERSION}.0 - libboost_program_options-mt.so.${BOOST_VERSION}.0 - libboost_regex-mt.so.${BOOST_VERSION}.0 - libboost_signals-mt.so.${BOOST_VERSION}.0 - libboost_system-mt.so.${BOOST_VERSION}.0 - libboost_thread-mt.so.${BOOST_VERSION}.0 - libcollada14dom.so libdb-5.1.so libexpat.so libexpat.so.1 libfreetype.so.6 libGLOD.so - libgmock_main.so - libgmock.so.0 libgmodule-2.0.so libgobject-2.0.so - libgtest_main.so - libgtest.so.0 libhunspell-1.3.so.0.0.0 - libminizip.so libopenal.so libopenjpeg.so libuuid.so.16 diff --git a/indra/cmake/FreeType.cmake b/indra/cmake/FreeType.cmake index c9a90a9a8d..d5bbfc7d84 100755 --- a/indra/cmake/FreeType.cmake +++ b/indra/cmake/FreeType.cmake @@ -7,7 +7,7 @@ if (STANDALONE) pkg_check_modules(FREETYPE REQUIRED freetype2) else (STANDALONE) use_prebuilt_binary(freetype) - set(FREETYPE_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include) + set(FREETYPE_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include/freetype2/) set(FREETYPE_LIBRARIES freetype) endif (STANDALONE) diff --git a/indra/cmake/GStreamer010Plugin.cmake b/indra/cmake/GStreamer010Plugin.cmake index d2d0699bcd..8918ee0c90 100755 --- a/indra/cmake/GStreamer010Plugin.cmake +++ b/indra/cmake/GStreamer010Plugin.cmake @@ -9,7 +9,7 @@ if (STANDALONE) elseif (LINUX) use_prebuilt_binary(gstreamer) # possible libxml should have its own .cmake file instead - use_prebuilt_binary(libxml) + use_prebuilt_binary(libxml2) set(GSTREAMER010_FOUND ON FORCE BOOL) set(GSTREAMER010_PLUGINS_BASE_FOUND ON FORCE BOOL) set(GSTREAMER010_INCLUDE_DIRS diff --git a/indra/cmake/GoogleMock.cmake b/indra/cmake/GoogleMock.cmake index c4c96a9af7..cac072988e 100755 --- a/indra/cmake/GoogleMock.cmake +++ b/indra/cmake/GoogleMock.cmake @@ -2,7 +2,7 @@ include(Prebuilt) include(Linking) -use_prebuilt_binary(googlemock) +use_prebuilt_binary(gmock) set(GOOGLEMOCK_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include) diff --git a/indra/cmake/LLPrimitive.cmake b/indra/cmake/LLPrimitive.cmake index 0d87ff579a..71b80a1ae4 100755 --- a/indra/cmake/LLPrimitive.cmake +++ b/indra/cmake/LLPrimitive.cmake @@ -6,7 +6,7 @@ include(Boost) use_prebuilt_binary(colladadom) use_prebuilt_binary(pcre) -use_prebuilt_binary(libxml) +use_prebuilt_binary(libxml2) set(LLPRIMITIVE_INCLUDE_DIRS ${LIBS_OPEN_DIR}/llprimitive @@ -15,14 +15,19 @@ if (WINDOWS) set(LLPRIMITIVE_LIBRARIES debug llprimitive optimized llprimitive - debug libcollada14dom22-d - optimized libcollada14dom22 + debug libcollada14dom23-sd + optimized libcollada14dom23-s + debug pcrecppd + optimized pcrecpp + debug pcred + optimized pcre ${BOOST_SYSTEM_LIBRARIES} ) else (WINDOWS) set(LLPRIMITIVE_LIBRARIES llprimitive - collada14dom + debug collada14dom-d + optimized collada14dom minizip xml2 pcrecpp diff --git a/indra/cmake/OpenSSL.cmake b/indra/cmake/OpenSSL.cmake index 4593821921..a1c75ad489 100755 --- a/indra/cmake/OpenSSL.cmake +++ b/indra/cmake/OpenSSL.cmake @@ -7,7 +7,7 @@ set(OpenSSL_FIND_REQUIRED ON) if (STANDALONE) include(FindOpenSSL) else (STANDALONE) - use_prebuilt_binary(openSSL) + use_prebuilt_binary(openssl) if (WINDOWS) set(OPENSSL_LIBRARIES ssleay32 libeay32) else (WINDOWS) diff --git a/indra/cmake/WebKitLibPlugin.cmake b/indra/cmake/WebKitLibPlugin.cmake index 9c4579ecf3..cab176a096 100755 --- a/indra/cmake/WebKitLibPlugin.cmake +++ b/indra/cmake/WebKitLibPlugin.cmake @@ -1,6 +1,7 @@ # -*- cmake -*- include(Linking) include(Prebuilt) +include(OpenSSL) if (STANDALONE) # The minimal version, 4.4.3, is rather arbitrary: it's the version in Debian/Lenny. @@ -53,18 +54,8 @@ if (WINDOWS) ) elseif (DARWIN) set(WEBKIT_PLUGIN_LIBRARIES - optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.a - optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libQtWebKit.4.dylib - optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libQtOpenGL.4.dylib - optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libQtNetwork.4.dylib - optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libQtGui.4.dylib - optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libQtCore.4.dylib - debug ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.a - debug ${ARCH_PREBUILT_DIRS_RELEASE}/libQtWebKit.4.dylib - debug ${ARCH_PREBUILT_DIRS_RELEASE}/libQtOpenGL.4.dylib - debug ${ARCH_PREBUILT_DIRS_RELEASE}/libQtNetwork.4.dylib - debug ${ARCH_PREBUILT_DIRS_RELEASE}/libQtGui.4.dylib - debug ${ARCH_PREBUILT_DIRS_RELEASE}/libQtCore.4.dylib + optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib + debug ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ) elseif (LINUX) set(WEBKIT_PLUGIN_LIBRARIES ${LLQTWEBKIT_LIBRARY} ${QT_LIBRARIES} ${QT_PLUGIN_LIBRARIES}) @@ -78,9 +69,10 @@ elseif (LINUX) QtWebKit QtOpenGL QtNetwork + ${OPENSSL_LIBRARIES} QtGui QtCore -# jscore + jscore # qgif # qjpeg # jpeg diff --git a/indra/media_plugins/webkit/CMakeLists.txt b/indra/media_plugins/webkit/CMakeLists.txt index 5a8fe90bdd..0c1c3d800e 100755 --- a/indra/media_plugins/webkit/CMakeLists.txt +++ b/indra/media_plugins/webkit/CMakeLists.txt @@ -121,12 +121,12 @@ if (DARWIN) ) # copy the webkit dylib to the build directory -# add_custom_command( -# TARGET media_plugin_webkit POST_BUILD -# # OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/libllqtwebkit.dylib -# COMMAND ${CMAKE_COMMAND} -E copy ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/ -# DEPENDS media_plugin_webkit ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib -# ) + add_custom_command( + TARGET media_plugin_webkit POST_BUILD +# OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/libllqtwebkit.dylib + COMMAND ${CMAKE_COMMAND} -E copy ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/ + DEPENDS media_plugin_webkit ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib + ) endif (DARWIN) diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index e85f4929ae..6729cd617a 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -768,21 +768,13 @@ class Darwin_i386_Manifest(ViewerManifest): # dylibs that vary based on configuration if self.args['configuration'].lower() == 'debug': for libfile in ( - "libcrypto.1.0.0.dylib", - "libcrypto.dylib", "libfmodexL.dylib", - "libssl.1.0.0.dylib", - "libssl.dylib", ): dylibs += path_optional(os.path.join("../packages/lib/debug", libfile), libfile) else: for libfile in ( - "libcrypto.1.0.0.dylib", - "libcrypto.dylib", "libfmodex.dylib", - "libssl.1.0.0.dylib", - "libssl.dylib", ): dylibs += path_optional(os.path.join("../packages/lib/release", libfile), libfile) @@ -804,42 +796,14 @@ class Darwin_i386_Manifest(ViewerManifest): symlinkf(os.path.join(os.pardir, os.pardir, os.pardir, libfile), os.path.join(resource_path, libfile)) - # SLPlugin.app/Contents/Resources gets those Qt4 libraries it needs. - if self.prefix(src="", dst="SLPlugin.app/Contents/Resources"): - for libfile in ('libQtCore.4.dylib', - 'libQtCore.4.7.1.dylib', - 'libQtGui.4.dylib', - 'libQtGui.4.7.1.dylib', - 'libQtNetwork.4.dylib', - 'libQtNetwork.4.7.1.dylib', - 'libQtOpenGL.4.dylib', - 'libQtOpenGL.4.7.1.dylib', - 'libQtSvg.4.dylib', - 'libQtSvg.4.7.1.dylib', - 'libQtWebKit.4.dylib', - 'libQtWebKit.4.7.1.dylib', - 'libQtXml.4.dylib', - 'libQtXml.4.7.1.dylib'): - self.path2basename("../packages/lib/release", libfile) - self.end_prefix("SLPlugin.app/Contents/Resources") - - # Qt4 codecs go to llplugin. Not certain why but this is the first - # location probed according to dtruss so we'll go with that. - if self.prefix(src="../packages/plugins/codecs/", dst="llplugin/codecs"): - self.path("libq*.dylib") - self.end_prefix("llplugin/codecs") - - # Similarly for imageformats. - if self.prefix(src="../packages/plugins/imageformats/", dst="llplugin/imageformats"): - self.path("libq*.dylib") - self.end_prefix("llplugin/imageformats") - - # SLPlugin plugins proper + # plugins if self.prefix(src="", dst="llplugin"): self.path2basename("../media_plugins/quicktime/" + self.args['configuration'], "media_plugin_quicktime.dylib") self.path2basename("../media_plugins/webkit/" + self.args['configuration'], "media_plugin_webkit.dylib") + self.path2basename("../packages/lib/release", "libllqtwebkit.dylib") + self.end_prefix("llplugin") self.end_prefix("Resources") @@ -1111,7 +1075,6 @@ class Linux_i686_Manifest(LinuxManifest): self.path("libaprutil-1.so.0") self.path("libaprutil-1.so.0.4.1") self.path("libboost_context-mt.so.*") - self.path("libboost_coroutine-mt.so.*") self.path("libboost_filesystem-mt.so.*") self.path("libboost_program_options-mt.so.*") self.path("libboost_regex-mt.so.*") @@ -1156,6 +1119,7 @@ class Linux_i686_Manifest(LinuxManifest): # previous call did, without having to explicitly state the # version number. self.path("libfontconfig.so.*.*") + self.path("libfreetype.so.*.*") try: self.path("libtcmalloc.so*") #formerly called google perf tools pass @@ -1185,33 +1149,6 @@ class Linux_i686_Manifest(LinuxManifest): self.path("libvivoxplatform.so") self.end_prefix("lib") - # plugin runtime - if self.prefix(src="../packages/lib/release", dst="lib"): - self.path("libQtCore.so*") - self.path("libQtGui.so*") - self.path("libQtNetwork.so*") - self.path("libQtOpenGL.so*") - self.path("libQtWebKit.so*") - self.end_prefix("lib") - - # For WebKit/Qt plugin runtimes (image format plugins) - if self.prefix(src="../packages/plugins/imageformats", dst="bin/llplugin/imageformats"): - self.path("libqgif.so") - self.path("libqico.so") - self.path("libqjpeg.so") - self.path("libqmng.so") - self.path("libqsvg.so") - self.path("libqtiff.so") - self.end_prefix("bin/llplugin/imageformats") - - # For WebKit/Qt plugin runtimes (codec/character encoding plugins) - if self.prefix(src="../packages/plugins/codecs", dst="bin/llplugin/codecs"): - self.path("libqcncodecs.so") - self.path("libqjpcodecs.so") - self.path("libqkrcodecs.so") - self.path("libqtwcodecs.so") - self.end_prefix("bin/llplugin/codecs") - self.strip_binaries() diff --git a/indra/test_apps/llfbconnecttest/CMakeLists.txt b/indra/test_apps/llfbconnecttest/CMakeLists.txt index e598124924..f56329a010 100644 --- a/indra/test_apps/llfbconnecttest/CMakeLists.txt +++ b/indra/test_apps/llfbconnecttest/CMakeLists.txt @@ -122,26 +122,34 @@ add_custom_command(TARGET llfbconnecttest POST_BUILD ) -get_target_property(BUILT_WEBKIT_PLUGIN media_plugin_webkit LOCATION) -add_custom_command(TARGET llfbconnecttest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${BUILT_WEBKIT_PLUGIN} ${PLUGINS_DESTINATION_DIR} - DEPENDS ${BUILT_WEBKIT_PLUGIN} -) +if (DARWIN OR WINDOWS) + get_target_property(BUILT_WEBKIT_PLUGIN media_plugin_webkit LOCATION) + add_custom_command(TARGET llfbconnecttest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${BUILT_WEBKIT_PLUGIN} ${PLUGINS_DESTINATION_DIR} + DEPENDS ${BUILT_WEBKIT_PLUGIN} + ) -# copy over bookmarks file if llfbconnecttest gets built -get_target_property(BUILT_LLFBCONNECTTEST llfbconnecttest LOCATION) -add_custom_command(TARGET llfbconnecttest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${CMAKE_CURRENT_BINARY_DIR}/ - DEPENDS ${BUILT_LLFBCONNECTTEST} -) + # copy over bookmarks file if llfbconnecttest gets built + get_target_property(BUILT_LLFBCONNECTTEST llfbconnecttest LOCATION) + add_custom_command(TARGET llfbconnecttest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${CMAKE_CURRENT_BINARY_DIR}/ + DEPENDS ${BUILT_LLFBCONNECTTEST} + ) + # also copy it to the same place as SLPlugin, which is what the mac wants... + add_custom_command(TARGET llfbconnecttest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${PLUGINS_DESTINATION_DIR} + DEPENDS ${BUILT_LLFBCONNECTTEST} + ) +endif (DARWIN OR WINDOWS) -# also copy it to the same place as SLPlugin, which is what the mac wants... -add_custom_command(TARGET llfbconnecttest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${PLUGINS_DESTINATION_DIR} - DEPENDS ${BUILT_LLFBCONNECTTEST} -) +if (DARWIN) + add_custom_command(TARGET llfbconnecttest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ${PLUGINS_DESTINATION_DIR} + DEPENDS ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib + ) +endif (DARWIN) -if (WINDOWS) +if(WINDOWS) #******************** # Plugin test library deploy # @@ -293,80 +301,4 @@ if (WINDOWS) endif(WINDOWS) -if (DARWIN) - set(fbconnecttest_release_src_dir "${ARCH_PREBUILT_DIRS_RELEASE}") - set(fbconnecttest_release_files - libexception_handler.dylib - libaprutil-1.0.dylib - libapr-1.0.dylib - libexpat.1.5.2.dylib - libQtCore.4.7.1.dylib - libQtCore.4.dylib - libQtGui.4.7.1.dylib - libQtGui.4.dylib - libQtNetwork.4.7.1.dylib - libQtNetwork.4.dylib - libQtOpenGL.4.7.1.dylib - libQtOpenGL.4.dylib - libQtWebKit.4.7.1.dylib - libQtWebKit.4.dylib - libQtSvg.4.7.1.dylib - libQtSvg.4.dylib - libQtXml.4.7.1.dylib - libQtXml.4.dylib - ) - copy_if_different( - ${fbconnecttest_release_src_dir} - "${PLUGINS_DESTINATION_DIR}" - out_targets - ${fbconnecttest_release_files} - ) - set(fbconnect_test_targets ${fbconnect_test_targets} ${out_targets}) - - # Release & ReleaseDebInfo config runtime files required for the FB connect test (Qt image format plugins) - set(fbconnecttest_release_src_dir "${ARCH_PREBUILT_DIRS_PLUGINS}/imageformats") - set(fbconnecttest_release_files - libqgif.dylib - libqico.dylib - libqjpeg.dylib - libqmng.dylib - libqsvg.dylib - libqtiff.dylib - ) - copy_if_different( - ${fbconnecttest_release_src_dir} - "${PLUGINS_DESTINATION_DIR}/imageformats" - out_targets - ${fbconnecttest_release_files} - ) - set(fbconnect_test_targets ${fbconnect_test_targets} ${out_targets}) - - # Release & ReleaseDebInfo config runtime files required for the FB connect test (Qt codec plugins) - set(fbconnecttest_release_src_dir "${ARCH_PREBUILT_DIRS_PLUGINS}/codecs") - set(fbconnecttest_release_files - libqcncodecs.dylib - libqjpcodecs.dylib - libqkrcodecs.dylib - libqtwcodecs.dylib - ) - copy_if_different( - ${fbconnecttest_release_src_dir} - "${PLUGINS_DESTINATION_DIR}/codecs" - out_targets - ${fbconnecttest_release_files} - ) - set(fbconnect_test_targets ${fbconnect_test_targets} ${out_targets}) - - add_custom_target(copy_fbconnecttest_libs ALL - DEPENDS - ${fbconnect_test_targets} - ) - - add_dependencies(llfbconnecttest copy_fbconnecttest_libs) -endif (DARWIN) - -if (LINUX) - -endif (LINUX) - ll_deploy_sharedlibs_command(llfbconnecttest) diff --git a/indra/test_apps/llplugintest/CMakeLists.txt b/indra/test_apps/llplugintest/CMakeLists.txt index 9d9f9a6a2b..8179be66f5 100755 --- a/indra/test_apps/llplugintest/CMakeLists.txt +++ b/indra/test_apps/llplugintest/CMakeLists.txt @@ -346,44 +346,44 @@ add_custom_command(TARGET llmediaplugintest POST_BUILD DEPENDS ${BUILT_LLCOMMON} ) -get_target_property(BUILT_WEBKIT_PLUGIN media_plugin_webkit LOCATION) -add_custom_command(TARGET llmediaplugintest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${BUILT_WEBKIT_PLUGIN} ${PLUGINS_DESTINATION_DIR} - DEPENDS ${BUILT_WEBKIT_PLUGIN} -) if (DARWIN OR WINDOWS) + get_target_property(BUILT_WEBKIT_PLUGIN media_plugin_webkit LOCATION) + add_custom_command(TARGET llmediaplugintest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${BUILT_WEBKIT_PLUGIN} ${PLUGINS_DESTINATION_DIR} + DEPENDS ${BUILT_WEBKIT_PLUGIN} + ) + get_target_property(BUILT_QUICKTIME_PLUGIN media_plugin_quicktime LOCATION) add_custom_command(TARGET llmediaplugintest POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy ${BUILT_QUICKTIME_PLUGIN} ${PLUGINS_DESTINATION_DIR} DEPENDS ${BUILT_QUICKTIME_PLUGIN} ) -endif (DARWIN OR WINDOWS) -get_target_property(BUILT_EXAMPLE_PLUGIN media_plugin_example LOCATION) -add_custom_command(TARGET llmediaplugintest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${BUILT_EXAMPLE_PLUGIN} ${PLUGINS_DESTINATION_DIR} - DEPENDS ${BUILT_EXAMPLE_PLUGIN} -) + get_target_property(BUILT_EXAMPLE_PLUGIN media_plugin_example LOCATION) + add_custom_command(TARGET llmediaplugintest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${BUILT_EXAMPLE_PLUGIN} ${PLUGINS_DESTINATION_DIR} + DEPENDS ${BUILT_EXAMPLE_PLUGIN} + ) -# copy over bookmarks file if llmediaplugintest gets built -get_target_property(BUILT_LLMEDIAPLUGINTEST llmediaplugintest LOCATION) -add_custom_command(TARGET llmediaplugintest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${CMAKE_CURRENT_BINARY_DIR}/ - DEPENDS ${BUILT_LLMEDIAPLUGINTEST} -) - -# also copy it to the same place as SLPlugin, which is what the mac wants... -add_custom_command(TARGET llmediaplugintest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${PLUGINS_DESTINATION_DIR} - DEPENDS ${BUILT_LLMEDIAPLUGINTEST} -) + # copy over bookmarks file if llmediaplugintest gets built + get_target_property(BUILT_LLMEDIAPLUGINTEST llmediaplugintest LOCATION) + add_custom_command(TARGET llmediaplugintest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${CMAKE_CURRENT_BINARY_DIR}/ + DEPENDS ${BUILT_LLMEDIAPLUGINTEST} + ) + # also copy it to the same place as SLPlugin, which is what the mac wants... + add_custom_command(TARGET llmediaplugintest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${PLUGINS_DESTINATION_DIR} + DEPENDS ${BUILT_LLMEDIAPLUGINTEST} + ) +endif (DARWIN OR WINDOWS) if (DARWIN) -# add_custom_command(TARGET llmediaplugintest POST_BUILD -# COMMAND ${CMAKE_COMMAND} -E copy ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ${PLUGINS_DESTINATION_DIR} -# DEPENDS ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib -# ) + add_custom_command(TARGET llmediaplugintest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ${PLUGINS_DESTINATION_DIR} + DEPENDS ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib + ) endif (DARWIN) if(WINDOWS) @@ -538,76 +538,4 @@ if(WINDOWS) endif(WINDOWS) -if (DARWIN) - set(plugintest_release_src_dir "${ARCH_PREBUILT_DIRS_RELEASE}") - set(plugintest_release_files - libexception_handler.dylib - libaprutil-1.0.dylib - libapr-1.0.dylib - libexpat.1.5.2.dylib - libQtCore.4.7.1.dylib - libQtCore.4.dylib - libQtGui.4.7.1.dylib - libQtGui.4.dylib - libQtNetwork.4.7.1.dylib - libQtNetwork.4.dylib - libQtOpenGL.4.7.1.dylib - libQtOpenGL.4.dylib - libQtWebKit.4.7.1.dylib - libQtWebKit.4.dylib - libQtSvg.4.7.1.dylib - libQtSvg.4.dylib - libQtXml.4.7.1.dylib - libQtXml.4.dylib - ) - copy_if_different( - ${plugintest_release_src_dir} - "${PLUGINS_DESTINATION_DIR}" - out_targets - ${plugintest_release_files} - ) - set(plugin_test_targets ${plugin_test_targets} ${out_targets}) - - # Release & ReleaseDebInfo config runtime files required for the FB connect test (Qt image format plugins) - set(plugintest_release_src_dir "${ARCH_PREBUILT_DIRS_PLUGINS}/imageformats") - set(plugintest_release_files - libqgif.dylib - libqico.dylib - libqjpeg.dylib - libqmng.dylib - libqsvg.dylib - libqtiff.dylib - ) - copy_if_different( - ${plugintest_release_src_dir} - "${PLUGINS_DESTINATION_DIR}/imageformats" - out_targets - ${plugintest_release_files} - ) - set(plugin_test_targets ${plugin_test_targets} ${out_targets}) - - # Release & ReleaseDebInfo config runtime files required for the FB connect test (Qt codec plugins) - set(plugintest_release_src_dir "${ARCH_PREBUILT_DIRS_PLUGINS}/codecs") - set(plugintest_release_files - libqcncodecs.dylib - libqjpcodecs.dylib - libqkrcodecs.dylib - libqtwcodecs.dylib - ) - copy_if_different( - ${plugintest_release_src_dir} - "${PLUGINS_DESTINATION_DIR}/codecs" - out_targets - ${plugintest_release_files} - ) - set(plugin_test_targets ${plugin_test_targets} ${out_targets}) - - add_custom_target(copy_plugintest_libs ALL - DEPENDS - ${plugin_test_targets} - ) - - add_dependencies(llmediaplugintest copy_plugintest_libs) -endif (DARWIN) - ll_deploy_sharedlibs_command(llmediaplugintest) -- cgit v1.3 From 5b542e227bb952f1517c32c2de8c8af0294ec617 Mon Sep 17 00:00:00 2001 From: Monty Brandenberg Date: Tue, 3 Jun 2014 19:37:58 -0400 Subject: All: Committing to llqtwebkit2 and the future. Updating all libraries. Updating SDL to 290561, c-ares to 290399, Boost to 290566, colladadom to 290576, curl to 290567, fontconfig to 290569, freetype to 290557, google-mock to 290574, libpng to 290558, libxml2 to 290562, llqtwebkit to 290578, openssl to 290560, PCRE to 290406, zlib to 290556. Document compiling and linking in new 00-COMPILE-LINK-RUN.txt in indra/cmake. It is the README for the building process based on things learned during this library project. Switch building process back to style used for new llqtwebkit2 repo. This builds shared libraries for Qt4 products on all platforms using current build machines and TC task templates. All platforms are building. All have comparable FPS rates. Builds are getting quieter. Forward, comrades! --- autobuild.xml | 152 ++++++------- indra/cmake/00-COMPILE-LINK-RUN.txt | 302 +++++++++++++++++++++++++ indra/cmake/Copy3rdPartyLibs.cmake | 3 +- indra/cmake/LLPrimitive.cmake | 13 +- indra/cmake/WebKitLibPlugin.cmake | 41 ++-- indra/media_plugins/webkit/CMakeLists.txt | 12 +- indra/newview/viewer_manifest.py | 76 +++++-- indra/test_apps/llfbconnecttest/CMakeLists.txt | 118 ++++++++-- indra/test_apps/llplugintest/CMakeLists.txt | 128 ++++++++--- 9 files changed, 675 insertions(+), 170 deletions(-) create mode 100644 indra/cmake/00-COMPILE-LINK-RUN.txt (limited to 'indra/media_plugins') diff --git a/autobuild.xml b/autobuild.xml index 1969098178..ea434dccf7 100755 --- a/autobuild.xml +++ b/autobuild.xml @@ -66,9 +66,9 @@ archive hash - 528d0b78611d87527d778320a6bcea8e + 8da309d24fb0bad8eaaa667fb04c6dc7 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-sdl-update/rev/290309/arch/Linux/installer/SDL-1.2.15-linux-20140528.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-sdl-update/rev/290561/arch/Linux/installer/SDL-1.2.15-linux-20140602.tar.bz2 name linux @@ -138,9 +138,9 @@ archive hash - d46a7edc12e9d3ec55b3af5a48a4109b + 127c6c37726b11a0750cd4d3b920beff url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-ares-update/rev/290089/arch/Darwin/installer/ares-1.10.0-darwin-20140516.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-ares-update/rev/290399/arch/Darwin/installer/ares-1.10.0-darwin-20140529.tar.bz2 name darwin @@ -150,9 +150,9 @@ archive hash - 5c0319efe5b27a174bf8d418e5f1e8e8 + 92f6a454d90b5740a38fb68e369cc13e url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-ares-update/rev/290089/arch/Linux/installer/ares-1.10.0-linux-20140516.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-ares-update/rev/290399/arch/Linux/installer/ares-1.10.0-linux-20140529.tar.bz2 name linux @@ -162,9 +162,9 @@ archive hash - 9a675008e81b870876e1bf11a42526c7 + 887c93c4075beefefa44b69fb2c0461e url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-ares-update/rev/290089/arch/CYGWIN/installer/ares-1.10.0-windows-20140516.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-ares-update/rev/290399/arch/CYGWIN/installer/ares-1.10.0-windows-20140529.tar.bz2 name windows @@ -186,9 +186,9 @@ archive hash - 7856ed94bf33773b0356b23adc1dbdab + b57789bd22dd166aade4a35ec5d36fbb url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-boost-update/rev/290191/arch/Darwin/installer/boost-1.55.0-darwin-20140521.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-boost-update/rev/290566/arch/Darwin/installer/boost-1.55.0-darwin-20140602.tar.bz2 name darwin @@ -198,9 +198,9 @@ archive hash - 1fbf9f45eb7f298c204b66e923a4dc69 + 2f076eae296600a1b810ce375dc4b42d url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-boost-update/rev/290191/arch/Linux/installer/boost-1.55.0-linux-20140521.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-boost-update/rev/290566/arch/Linux/installer/boost-1.55.0-linux-20140602.tar.bz2 name linux @@ -210,9 +210,9 @@ archive hash - a2a4a3a45a1fd7fb01f6d6a73a095641 + 8af0500013739866a41cfc2ce90e4f4b url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-boost-update/rev/290191/arch/CYGWIN/installer/boost-1.55.0-windows-20140521.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-boost-update/rev/290566/arch/CYGWIN/installer/boost-1.55.0-windows-20140602.tar.bz2 name windows @@ -234,9 +234,9 @@ archive hash - e503eb218d4f10f593fefbddb5f92851 + 68dc13f49a686331df6f0128c5483da3 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-colladadom-update/rev/290229/arch/Darwin/installer/colladadom-2.3-darwin-20140522.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-colladadom-update/rev/290576/arch/Darwin/installer/colladadom-2.3-darwin-20140602.tar.bz2 name darwin @@ -246,9 +246,9 @@ archive hash - 2e2cbdc3976825134b0201f3fe42b609 + bdec5fe5fd008da4328f84115128ee61 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-colladadom-update/rev/290229/arch/Linux/installer/colladadom-2.3-linux-20140522.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-colladadom-update/rev/290576/arch/Linux/installer/colladadom-2.3-linux-20140602.tar.bz2 name linux @@ -258,9 +258,9 @@ archive hash - 67c7da074b45ad262a555310454ea2e6 + ae103c9481be20cd6c035940832b2650 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-colladadom-update/rev/290229/arch/CYGWIN/installer/colladadom-2.3-windows-20140522.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-colladadom-update/rev/290576/arch/CYGWIN/installer/colladadom-2.3-windows-20140602.tar.bz2 name windows @@ -282,9 +282,9 @@ archive hash - 4de6ce017c8c4f9d1c06d548df191048 + 9a3e5c5df35a8a3971b0c2c86549ff29 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-curl-update/rev/290186/arch/Darwin/installer/curl-7.37.0-darwin-20140521.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-curl-update/rev/290567/arch/Darwin/installer/curl-7.37.0-darwin-20140602.tar.bz2 name darwin @@ -294,9 +294,9 @@ archive hash - 38844575f625e40c83f33912ebf83c3a + e28e06e73852c1fee0b3c6689aa3180d url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-curl-update/rev/290186/arch/Linux/installer/curl-7.37.0-linux-20140521.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-curl-update/rev/290567/arch/Linux/installer/curl-7.37.0-linux-20140602.tar.bz2 name linux @@ -306,9 +306,9 @@ archive hash - 2d848966f01988e393fbc708df5a7bf1 + e5194983014a6182457ceca4cf7a5d0c url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-curl-update/rev/290186/arch/CYGWIN/installer/curl-7.37.0-windows-20140521.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-curl-update/rev/290567/arch/CYGWIN/installer/curl-7.37.0-windows-20140602.tar.bz2 name windows @@ -546,9 +546,9 @@ archive hash - d090edb48c00ee8d89002483fdcb1c1b + 2843c48e6c84a51e3d6aa05dace4c8c0 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-fontconfig-update/rev/290258/arch/Linux/installer/fontconfig-2.11.0-linux-20140524.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-fontconfig-update/rev/290569/arch/Linux/installer/fontconfig-2.11.0-linux-20140602.tar.bz2 name linux @@ -594,9 +594,9 @@ archive hash - cc70fb25612a1e257a8179f8ac432811 + 71c8d80de052f0c2a49e4c7ddf1a56a0 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-freetype-update/rev/290255/arch/Darwin/installer/freetype-2.4.4-darwin-20140523.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-freetype-update/rev/290557/arch/Darwin/installer/freetype-2.4.4-darwin-20140602.tar.bz2 name darwin @@ -606,9 +606,9 @@ archive hash - f391b2d2a758e1caec10b863d7b94fcc + 52f87a65cc61ec4b05721c079d015b19 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-freetype-update/rev/290255/arch/Linux/installer/freetype-2.4.4-linux-20140524.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-freetype-update/rev/290557/arch/Linux/installer/freetype-2.4.4-linux-20140602.tar.bz2 name linux @@ -618,9 +618,9 @@ archive hash - 831224b9c7e83c962eb62b176335e642 + 6e9fc0fe628a7c88f6f614bf3b0450ae url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-freetype-update/rev/290255/arch/CYGWIN/installer/freetype-2.4.4-windows-20140523.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-freetype-update/rev/290557/arch/CYGWIN/installer/freetype-2.4.4-windows-20140602.tar.bz2 name windows @@ -762,9 +762,9 @@ archive hash - 5d1af8fe41a4f860f48ff6d8fda209e2 + 36b0ea1a8be38f5749a7b13536b871ab url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-google-mock-update/rev/290199/arch/Darwin/installer/gmock-1.7.0-darwin-20140521.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-google-mock-update/rev/290574/arch/Darwin/installer/gmock-1.7.0-darwin-20140602.tar.bz2 name darwin @@ -774,9 +774,9 @@ archive hash - 0c8305dde07d0cbd26d295c458f3689b + 3de99704847b34c7acccf5ab87222f6c url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-google-mock-update/rev/290199/arch/Linux/installer/gmock-1.7.0-linux-20140522.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-google-mock-update/rev/290574/arch/Linux/installer/gmock-1.7.0-linux-20140602.tar.bz2 name linux @@ -786,9 +786,9 @@ archive hash - 9b539f6313c4d46eb47f029d42d46658 + 5d91c1d03780aa26bcd5481145ee9e86 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-google-mock-update/rev/290199/arch/CYGWIN/installer/gmock-1.7.0-windows-20140521.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-google-mock-update/rev/290574/arch/CYGWIN/installer/gmock-1.7.0-windows-20140602.tar.bz2 name windows @@ -1194,9 +1194,9 @@ archive hash - d3691526296a95cb06338e2b7318153d + 80a84bbbb363e1a38f39bb6be8a3f166 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libpng-update/rev/290081/arch/Darwin/installer/libpng-1.6.8-darwin-20140515.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libpng-update/rev/290558/arch/Darwin/installer/libpng-1.6.8-darwin-20140602.tar.bz2 name darwin @@ -1206,9 +1206,9 @@ archive hash - 1b0b31b7852c4dfc94aca69e5e8e4660 + 3368a25b361c22a03f7ec7e0f8d5ff9d url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libpng-update/rev/290081/arch/Linux/installer/libpng-1.6.8-linux-20140515.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libpng-update/rev/290558/arch/Linux/installer/libpng-1.6.8-linux-20140602.tar.bz2 name linux @@ -1218,9 +1218,9 @@ archive hash - b20d6a8718d87b333d8a572ea813ca7a + 596f4798f90941817b1ca5009c24d16a url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libpng-update/rev/290081/arch/CYGWIN/installer/libpng-1.6.8-windows-20140515.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libpng-update/rev/290558/arch/CYGWIN/installer/libpng-1.6.8-windows-20140602.tar.bz2 name windows @@ -1266,9 +1266,9 @@ archive hash - c78df230a00a7d8e2f3ba56672f5f98f + 4a5880b8235beb5ca21f1e252a46e342 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libxml-update/rev/290157/arch/Darwin/installer/libxml2-2.9.1-darwin-20140520.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libxml-update/rev/290562/arch/Darwin/installer/libxml2-2.9.1-darwin-20140602.tar.bz2 name darwin @@ -1278,9 +1278,9 @@ archive hash - e46d9ab2478d16178d4160d2155ec2d7 + 7eb90f075730f8d7d176f8fb7bad5ef5 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libxml-update/rev/290157/arch/Linux/installer/libxml2-2.9.1-linux-20140520.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libxml-update/rev/290562/arch/Linux/installer/libxml2-2.9.1-linux-20140602.tar.bz2 name linux @@ -1290,9 +1290,9 @@ archive hash - 33ff18389f4bc7fe96ecb85c066d9634 + ba20e2634b4c249a7064620d135f7972 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libxml-update/rev/290157/arch/CYGWIN/installer/libxml2-2.9.1-windows-20140520.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-libxml-update/rev/290562/arch/CYGWIN/installer/libxml2-2.9.1-windows-20140602.tar.bz2 name windows @@ -1444,9 +1444,9 @@ archive hash - 73ee7e3507945fce1405490c4c2dde48 + ef634af120da8f8ee00d06d294a701af url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-llqtwebkit-minimum/rev/290262/arch/Darwin/installer/llqtwebkit-4.7.1-darwin-20140523.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-llqtwebkit2/rev/290578/arch/Darwin/installer/llqtwebkit-4.7.1-darwin-20140602.tar.bz2 name darwin @@ -1456,9 +1456,9 @@ archive hash - 21246ee9b7a3fabd1fef7fe407770d56 + cb9e94219391c4ca7d904ff7fab68a20 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-llqtwebkit-minimum/rev/290262/arch/Linux/installer/llqtwebkit-4.7.1-linux-20140524.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-llqtwebkit2/rev/290578/arch/Linux/installer/llqtwebkit-4.7.1-linux-20140602.tar.bz2 name linux @@ -1468,9 +1468,9 @@ archive hash - 90064050909b0f14b498fba40a70fa5c + 5cb4e4d8b34e2566313fc2616dfca6bc url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-llqtwebkit-minimum/rev/290262/arch/CYGWIN/installer/llqtwebkit-4.7.1-windows-20140523.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-llqtwebkit2/rev/290578/arch/CYGWIN/installer/llqtwebkit-4.7.1-windows-20140602.tar.bz2 name windows @@ -1724,9 +1724,9 @@ archive hash - 2658b5d362eb78f4acd79c8fc67f936c + ef74230aa851331bf29a3947309e9883 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-openssl-update/rev/290083/arch/Darwin/installer/openssl-1.0.1g-darwin-20140515.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-openssl-update/rev/290560/arch/Darwin/installer/openssl-1.0.1g-darwin-20140602.tar.bz2 name darwin @@ -1736,9 +1736,9 @@ archive hash - 5a260d60cd3c91fe21f969f2eb478e53 + 0f0a72a8f0ffbf46e71551a6c545b1f5 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-openssl-update/rev/290083/arch/Linux/installer/openssl-1.0.1g-linux-20140516.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-openssl-update/rev/290560/arch/Linux/installer/openssl-1.0.1g-linux-20140602.tar.bz2 name linux @@ -1748,9 +1748,9 @@ archive hash - 6a816d0af5481d717a681e3fb25c0a94 + b622c5974a2a61b473e7e0747c1e38d5 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-openssl-update/rev/290083/arch/CYGWIN/installer/openssl-1.0.1g-windows-20140515.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-openssl-update/rev/290560/arch/CYGWIN/installer/openssl-1.0.1g-windows-20140602.tar.bz2 name windows @@ -1772,9 +1772,9 @@ archive hash - 5532e04d74bcdcc6aa60e99b1200dcc9 + af0d38a4c56b52c4df40a4ff0d51efef url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-pcre-update/rev/290150/arch/Darwin/installer/pcre-8.35-darwin-20140520.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-pcre-update/rev/290406/arch/Darwin/installer/pcre-8.35-darwin-20140529.tar.bz2 name darwin @@ -1784,9 +1784,9 @@ archive hash - be592c5749a7fea74aed6160694ecd05 + 5e6368d39b95f2c0d5162dac2c17c67f url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-pcre-update/rev/290150/arch/Linux/installer/pcre-8.35-linux-20140520.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-pcre-update/rev/290406/arch/Linux/installer/pcre-8.35-linux-20140530.tar.bz2 name linux @@ -1796,9 +1796,9 @@ archive hash - a1a440a297a2de47661a661cfed6ecae + 9250f74fed826ad1b8700229e964519d url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-pcre-update/rev/290150/arch/CYGWIN/installer/pcre-8.35-windows-20140520.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-pcre-update/rev/290406/arch/CYGWIN/installer/pcre-8.35-windows-20140529.tar.bz2 name linux @@ -1964,9 +1964,9 @@ archive hash - 44f898ad513cc40ace8609073a594fa5 + 6658071e3b54b1dd5f5279227aff402a url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-zlib-update/rev/290080/arch/Darwin/installer/zlib-1.2.8-darwin-20140515.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-zlib-update/rev/290556/arch/Darwin/installer/zlib-1.2.8-darwin-20140602.tar.bz2 name darwin @@ -1976,9 +1976,9 @@ archive hash - 8db178c604df50682d85bb8a78065903 + 63a62bb3cbef2aad3cca49cb6f2d0aeb url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-zlib-update/rev/290080/arch/Linux/installer/zlib-1.2.8-linux-20140515.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-zlib-update/rev/290556/arch/Linux/installer/zlib-1.2.8-linux-20140602.tar.bz2 name linux @@ -1988,9 +1988,9 @@ archive hash - 99157bfc04655ca870d4c5ddd4358f34 + ab45a628e22a495814e806ce46081806 url - http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-zlib-update/rev/290080/arch/CYGWIN/installer/zlib-1.2.8-windows-20140515.tar.bz2 + http://automated-builds-secondlife-com.s3.amazonaws.com/hg/repo/3pl_3p-zlib-update/rev/290556/arch/CYGWIN/installer/zlib-1.2.8-windows-20140602.tar.bz2 name windows diff --git a/indra/cmake/00-COMPILE-LINK-RUN.txt b/indra/cmake/00-COMPILE-LINK-RUN.txt new file mode 100644 index 0000000000..8f72448fe9 --- /dev/null +++ b/indra/cmake/00-COMPILE-LINK-RUN.txt @@ -0,0 +1,302 @@ + + A short guide to compiling, linking, running and debugging issues + in the viewer and its packaged libraries. + +Introduction + + A recent pass through some third-party libraries resulted in the + collection of a lot of information about how things should and + shouldn't be built in the viewer. Some of that is presented below + with hints and rules about doing things well. What's presented is + a guideline only. Not all suggestions are hard rules and you'll + find exceptions all over. Some exceptions arise from solid + reasining, others may be legacy that hasn't been re-examined. + + Use good engineering judgement when applying this information. + +Compilation + + Windows Targets + + Significant compilation flags and defines follow: + + ---------------------------------------------------------------------------- + Option Release RelWithDebInfo Debug + ---------------------------------------------------------------------------- + wchar_t /Zc:wchar_t- " " + RTL type /MD /MD /MDd + FLoating Point /fp:fast " " + Debug Info /Zi (app/dll), /Z7 (lib) " " + Optimizer /O2 /Ob2 /GR /Od /Ob0 /GR /Od /GR + Incr. Link /INCREMENTAL:NO /INCREMENTAL /INCREMENTAL:NO + Debug /DEBUG /DEBUG /DEBUG + /OPT:REF + Ignore Libs LIBCMT LIBCMT LIBCMT;LIBCMTD;MSVCRT + Alignment Default " " + + Defines WIN32 " " + _WINDOWS " " + LL_RELEASE=1 LL_RELEASE=1 n/a + LL_RELEASE_FOR_DOWNLOAD=1 n/a n/a + NDEBUG NDEBUG _DEBUG + n/a n/a LL_DEBUG=1 + n/a LL_RELEASE_WITH_\ n/a + DEBUG_INFO=1 + n/a n/a _SCL_SECURE_NO_WARNINGS=1 + _SECURE_STL=0 _SECURE_STL=0 _SECURE_STL=0 + _HAS_ITERATOR_DEBUGGING=0 n/a n/a + LL_WINDOWS=1 " " + UNICODE " " + _UNICODE " " + WINVER=0x0501 " " + _WIN32_WINNT=0x0501 " " + LL_OS_DRAGDROP_ENABLED=1 " " + CARES_STATICLIB " " + LIB_NDOF=1 " " + + ---------------------------------------------------------------------------- + Notes: + + 1. /Zc:wchar_t-. Not certain where this comes from. It may be + due to a default set of compilation flags in Qt 4.X that then + propagates outward. In Qt 5.X, this setting is flipped back to + default (wchar_t is a built-in). Other options for dealing with + this include: + + http://msdn.microsoft.com/en-us/library/dh8che7s%28v=vs.110%29.aspx + + Recommend trying to stay with /Zc:wchar_t (the default) when + adding libraries. If incompatible, you'll typically get some + missing ostream '<<' operators or something similar in the stream + headers. + + 2. /Z7 (VC 7.0 compatibility symbols) gives us debug information + in the static libraries we build. Otherwise builds generate + vc100.pdb files all over the place which generally aren't useful. + DLL's and .EXEs are to get /Zi or /ZI with separate .PDB files. + These .PDB files can then be packaged up in symbol tarballs for + the crash dump analyzer or used in debugging. There are issues here + for VS 2013 (see below). + + + Mac Targets + + Fairly straightforward, optimization level is easily changed (may + be little or negative gain for -O3 and RelWithDebInfo should be + kicked up to 1 or 2. Boost debug symbols to dwarf-2 with a goal + of dwarf-2 in separate dSYM file when building .dylibs and + executables. + + ---------------------------------------------------------------------------- + Option Release RelWithDebInfo Debug + ---------------------------------------------------------------------------- + Strip Debug Symbols On " " + During Copy + + Generate Debug Syms On " " + + Level Debug Syms -gdwarf-2 " " + + Optimization -O3 -O0 -O0 + + PIC -fPIC -DPIC " " + + Defines LL_RELEASE=1 LL_RELEASE=1 n/a + LL_RELEASE_FOR_DOWNLOAD=1 n/a n/a + NDEBUG NDEBUG _DEBUG + n/a n/a LL_DEBUG=1 + n/a LL_RELEASE_WITH_\ n/a + DEBUG_INFO=1 + LL_DARWIN=1 " " + LL_OS_DRAGDROP_ENABLED=1 " " + CARES_STATICLIB " " + LIB_NDOF=1 " " + + ---------------------------------------------------------------------------- + Notes: + + 1. We’re also building dylibs in a somewhat unusual way. They’re + currently being generated with a link path of + ‘@executable_path/../Resources/’. If we were to follow + the recommendations in dyld’s man page, we’d instead reference + ‘@loader_path/’, use -rpath on the executable link + (pointing to the ‘Resources’ subdir of the main executable), and + be able to avoid some symlinking in the .app tree. + + 2. Use the -headerpad_max_install_names link option on all .dylibs. + + + Linux Targets + + Not much variety here. + + ---------------------------------------------------------------------------- + Option Release RelWithDebInfo Debug + ---------------------------------------------------------------------------- + Debug Level -g (-g0/1 better?) -g -g + During Copy + + Optimization -O2 -O0 -O0 + + PIC -fPIC " " + ---------------------------------------------------------------------------- + Notes: + + +Linking + + The library update work has generally moved in the direction of + preferring static libraries over dynamic (Qt4 being the notable + exception). It also mostly eliminated the extremely bad practice + of having multiple versions of a library built into an image. + + How bad was it? Very. Appalling. A nightmare. On Windows, at + least four versions of zlib (1.2.3, 1.2.5, 1.2.6, unknown), three + versions of Boost (1.45, 1.48, 1.52), two versions of OpenSSL + (0.9.8q, 1.0.0g) and three different builds of libexpat + 2.0.5/1.5.2 were used. Mac was worse with five builds or versions + of zlib, two of PCRE, two of c-ares, and three of OpenSSL. Linux + topped that by adding two builds of libpng. + + DO NOT ALLOW THIS TO HAPPEN AGAIN. It isn't enough to update a + library and then stuff a new triplet of S3 URLs into the viewer's + autobuild.xml. If you update a library you MUST: + + * Update the autobuild.xml of ALL consumers of the library. In + the case of zlib, that meant updating freetype, libpng, openssl, + libxml2, fontconfig, curl, Boost, SDL, llqtwebkit, google-mock and + colladadom. + + * Confirm by test and observation that the consumers actually use + your library rather than 'call home to mother' and find + system-supplied versions of your library. This may consist of + watching configuration scripts, probing with ldd/depends/otool, + pulling text out of binaries with 'strings'. The previously- + mentioned libraries all have a README.Linden file that gives + examples specific to the consumer library. + + * DO NOT RE-EXPORT LIBRARIES. Colladadom was the worst offender + of this rule. As a shared library, it was re-exporting part, but + not all, of Boost filesystem and system, some zlib, some PCRE, + some libxml2 and minizip. This meant that depending upon link- + time and run-time symbol resolution, data constructed with one + version of a library might be processed by a method built in a + second, incompatible version of the library. Switching colladadom + to a static library ended the re-export problem. + + * Preventing re-export is not sufficient. other libraries will + still be shipped as shared and they can still have Singleton and + Fragile Base Class issues. A DLL may be built with a static + archive of a library that has global data. That same static + archive might be linked into the application proper. An object + created with a method in the DLL may pass into a method in the + application where the archive's global data has a second instance + and no knowledge of the object. This is a failure due to an + assumption of Singleton global data which leads to some kind of + failure. This is the same effect as when, in Windows, both MSVCRT + and MSVCRTD get activated in a program. If you're lucky, some + asserts fail in that case having to do with file handle global + data. + + +Running + + Windows Debug Build. Seems to have been rendered nearly useless + by having the LL_CHECK_MEMORY define in llmemory.h calling + _CrtCheckMemory(). Viewer is almost useful disabling this in + llvoavatar code alone but not quite. + + +Futures + + Static Versus Dynamic Libraries + + One solution to the above linking problems is the use of static + libraries for everything. Single version, singleton instancing of + data, etc. But it's not the 1950's and we're not running our + applications on bare metal. Every platform comes with 100s of + libraries waiting to interfere with operations by breaking the + single-version and singleton-data assumption. + + Additionally, there are libraries that simply expect to be built + into shared libraries. Qt4 is one such. The version we're using + now, 4.7.1, is actually trying to disable both Webkit and plugin + modules because we're building it statically on Mac and Linux. + It's only because of configuration bugs that we're getting the + functionality out of it that we want. + + With enough libraries and a single, global namespace, eventually + there will be collisions and there may not be a warning. All it + takes is two programmers who thought that 'FILE * open_file(const + char *);' was a safe signature to use between compilation units in + their libraries and glorious debugging sessions are in your + future. Having debugged it, you will now become the proud owner + of a one-off version of one of those libraries that uses a special + symbol prefix which you will be maintaining forever. + + Lastly, we have some binary blobs that we must use as delivered. + Executables can be isolated at run-time if necessary. Shared + libraries are a different problem. They may bring their own + library dependencies that affect link- and run-time symbol + resolution and they'll impose that on us according to platform + rules. + + So, what to do? My natural bias for large software is to use + shared libraries for everything. It's a path to single-version + and singleton data and isolates namespaces and prevents + interactions. It also has some field servicability benefits if + you need to debug some bizarre problem a user has. + + But there's a local preference for static. Here, my + rules-of-thumb are: + + * Static library used by default. + + * Shared library where the library must be built shared. + + * Shared library if that is the only means to enforce the + single-version and singleton-data requirements. + + * Shared library *on a case-by-case basis* if the library is also + provided by the platform and some benefit is plausible. (An + example of this is freetype/fontconfig on Linux. The .so + versions we build with, and incompletely ship, are inferior in + behavior to the platform libraries. By being shared libraries, + the platform-supplied option is available to all Linux users.) + + In all cases, beware of cmake which appears to collapse and move + library references in links. This can drastically affect symbol + resolution when there are multiple sources for a symbol. + + General + + VS 2013. The /Z7 flag is rumored to be somewhat broken in 2013. + But it also sounds like there are explicit controls to name .PDB + files associated with static archives. That would make this an + ideal time to switch to /Zi or /ZI everywhere with explicit naming + and bring all the .PDBs together. + + The embedded browser technology (e.g. Qt4 with Webkit) is the + 800-pound gorilla in the viewer. When starting any major work, + decide what changes you need here as those changes will propagate + outwards forcing many other decisions (cf: /Zc:wchar_t- flag). + + Next library project. I'd recommend working on the related set of + libexpat, apr, aprutil, xmlrpc-epi. We know libexpat has some + updates that should improve stability. Libapr consumes it and it + could use some /Z7 flag work to get rid of some 1000's of PDB + warnings and improve our debug symbols. + + Miscellany to be sorted out: + + * The packaging of libfreetype and libfontconfig on Linux. + Determine what the right thing is, do it. + + * Maybe do something with ICU4C. Qt5 will require it and a number + of our packages can consume it typically replacing iconv or some + other library. But it is a huge bolus of static data. It can be + trimmed, but still. + + * Revisit openssl. Package as a shared library? Replace with + LibreSSL when available? Start using platform-supplied crypto? + diff --git a/indra/cmake/Copy3rdPartyLibs.cmake b/indra/cmake/Copy3rdPartyLibs.cmake index ff8cbedfd4..8cd1e3e63b 100755 --- a/indra/cmake/Copy3rdPartyLibs.cmake +++ b/indra/cmake/Copy3rdPartyLibs.cmake @@ -216,7 +216,6 @@ elseif(DARWIN) libexpat.dylib libGLOD.dylib libhunspell-1.3.0.dylib - libllqtwebkit.dylib libndofdev.dylib ) @@ -258,6 +257,7 @@ elseif(LINUX) libdb-5.1.so libexpat.so libexpat.so.1 + libfreetype.so.6.6.2 libfreetype.so.6 libGLOD.so libgmodule-2.0.so @@ -268,6 +268,7 @@ elseif(LINUX) libuuid.so.16 libuuid.so.16.0.22 libfontconfig.so.1.8.0 + libfontconfig.so.1 ) if (USE_TCMALLOC) diff --git a/indra/cmake/LLPrimitive.cmake b/indra/cmake/LLPrimitive.cmake index d02160e439..93626f689f 100755 --- a/indra/cmake/LLPrimitive.cmake +++ b/indra/cmake/LLPrimitive.cmake @@ -24,7 +24,18 @@ if (WINDOWS) optimized pcre ${BOOST_SYSTEM_LIBRARIES} ) -else (WINDOWS) +elseif (DARWIN) + set(LLPRIMITIVE_LIBRARIES + llprimitive + debug collada14dom-d + optimized collada14dom + minizip + xml2 + pcrecpp + pcre + iconv # Required by libxml2 + ) +elseif (LINUX) set(LLPRIMITIVE_LIBRARIES llprimitive debug collada14dom-d diff --git a/indra/cmake/WebKitLibPlugin.cmake b/indra/cmake/WebKitLibPlugin.cmake index cab176a096..89f7a6197b 100755 --- a/indra/cmake/WebKitLibPlugin.cmake +++ b/indra/cmake/WebKitLibPlugin.cmake @@ -37,27 +37,32 @@ endif (STANDALONE) if (WINDOWS) set(WEBKIT_PLUGIN_LIBRARIES - debug llqtwebkitd - debug QtWebKitd4 - debug QtOpenGLd4 - debug QtNetworkd4 - debug QtGuid4 - debug QtCored4 - debug qtmaind - optimized llqtwebkit - optimized QtWebKit4 - optimized QtOpenGL4 - optimized QtNetwork4 - optimized QtGui4 - optimized QtCore4 - optimized qtmain + debug llqtwebkitd + debug QtWebKitd4 + debug QtOpenGLd4 + debug QtNetworkd4 + debug QtGuid4 + debug QtCored4 + debug qtmaind + optimized llqtwebkit + optimized QtWebKit4 + optimized QtOpenGL4 + optimized QtNetwork4 + optimized QtGui4 + optimized QtCore4 + optimized qtmain ) elseif (DARWIN) set(WEBKIT_PLUGIN_LIBRARIES - optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib - debug ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib - ) + ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.a + ${ARCH_PREBUILT_DIRS_RELEASE}/libQtWebKit.4.dylib + ${ARCH_PREBUILT_DIRS_RELEASE}/libQtOpenGL.4.dylib + ${ARCH_PREBUILT_DIRS_RELEASE}/libQtNetwork.4.dylib + ${ARCH_PREBUILT_DIRS_RELEASE}/libQtGui.4.dylib + ${ARCH_PREBUILT_DIRS_RELEASE}/libQtCore.4.dylib + ) elseif (LINUX) + # *HUH: What does this do? set(WEBKIT_PLUGIN_LIBRARIES ${LLQTWEBKIT_LIBRARY} ${QT_LIBRARIES} ${QT_PLUGIN_LIBRARIES}) set(WEBKIT_PLUGIN_LIBRARIES llqtwebkit @@ -72,7 +77,7 @@ elseif (LINUX) ${OPENSSL_LIBRARIES} QtGui QtCore - jscore +# jscore # qgif # qjpeg # jpeg diff --git a/indra/media_plugins/webkit/CMakeLists.txt b/indra/media_plugins/webkit/CMakeLists.txt index 0c1c3d800e..5a8fe90bdd 100755 --- a/indra/media_plugins/webkit/CMakeLists.txt +++ b/indra/media_plugins/webkit/CMakeLists.txt @@ -121,12 +121,12 @@ if (DARWIN) ) # copy the webkit dylib to the build directory - add_custom_command( - TARGET media_plugin_webkit POST_BUILD -# OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/libllqtwebkit.dylib - COMMAND ${CMAKE_COMMAND} -E copy ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/ - DEPENDS media_plugin_webkit ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib - ) +# add_custom_command( +# TARGET media_plugin_webkit POST_BUILD +# # OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/libllqtwebkit.dylib +# COMMAND ${CMAKE_COMMAND} -E copy ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/ +# DEPENDS media_plugin_webkit ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib +# ) endif (DARWIN) diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 6729cd617a..2c173d9aaa 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -795,15 +795,42 @@ class Darwin_i386_Manifest(ViewerManifest): for libfile in dylibs: symlinkf(os.path.join(os.pardir, os.pardir, os.pardir, libfile), os.path.join(resource_path, libfile)) - - # plugins + # SLPlugin.app/Contents/Resources gets those Qt4 libraries it needs. + if self.prefix(src="", dst="SLPlugin.app/Contents/Resources"): + for libfile in ('libQtCore.4.dylib', + 'libQtCore.4.7.1.dylib', + 'libQtGui.4.dylib', + 'libQtGui.4.7.1.dylib', + 'libQtNetwork.4.dylib', + 'libQtNetwork.4.7.1.dylib', + 'libQtOpenGL.4.dylib', + 'libQtOpenGL.4.7.1.dylib', + 'libQtSvg.4.dylib', + 'libQtSvg.4.7.1.dylib', + 'libQtWebKit.4.dylib', + 'libQtWebKit.4.7.1.dylib', + 'libQtXml.4.dylib', + 'libQtXml.4.7.1.dylib'): + self.path2basename("../packages/lib/release", libfile) + self.end_prefix("SLPlugin.app/Contents/Resources") + + # Qt4 codecs go to llplugin. Not certain why but this is the first + # location probed according to dtruss so we'll go with that. + if self.prefix(src="../packages/plugins/codecs/", dst="llplugin/codecs"): + self.path("libq*.dylib") + self.end_prefix("llplugin/codecs") + + # Similarly for imageformats. + if self.prefix(src="../packages/plugins/imageformats/", dst="llplugin/imageformats"): + self.path("libq*.dylib") + self.end_prefix("llplugin/imageformats") + + # SLPlugin plugins proper if self.prefix(src="", dst="llplugin"): self.path2basename("../media_plugins/quicktime/" + self.args['configuration'], "media_plugin_quicktime.dylib") self.path2basename("../media_plugins/webkit/" + self.args['configuration'], "media_plugin_webkit.dylib") - self.path2basename("../packages/lib/release", "libllqtwebkit.dylib") - self.end_prefix("llplugin") self.end_prefix("Resources") @@ -1074,20 +1101,9 @@ class Linux_i686_Manifest(LinuxManifest): self.path("libaprutil-1.so") self.path("libaprutil-1.so.0") self.path("libaprutil-1.so.0.4.1") - self.path("libboost_context-mt.so.*") - self.path("libboost_filesystem-mt.so.*") - self.path("libboost_program_options-mt.so.*") - self.path("libboost_regex-mt.so.*") - self.path("libboost_signals-mt.so.*") - self.path("libboost_system-mt.so.*") - self.path("libboost_thread-mt.so.*") - self.path("libcollada14dom.so") self.path("libdb*.so") - self.path("libcrypto.so.*") self.path("libexpat.so.*") - self.path("libssl.so.1.0.0") self.path("libGLOD.so") - self.path("libminizip.so") self.path("libuuid.so*") self.path("libSDL-1.2.so.*") self.path("libdirectfb-1.*.so.*") @@ -1119,7 +1135,10 @@ class Linux_i686_Manifest(LinuxManifest): # previous call did, without having to explicitly state the # version number. self.path("libfontconfig.so.*.*") + + # Include libfreetype.so. but have it work as libfontconfig does. self.path("libfreetype.so.*.*") + try: self.path("libtcmalloc.so*") #formerly called google perf tools pass @@ -1149,6 +1168,33 @@ class Linux_i686_Manifest(LinuxManifest): self.path("libvivoxplatform.so") self.end_prefix("lib") + # plugin runtime + if self.prefix(src="../packages/lib/release", dst="lib"): + self.path("libQtCore.so*") + self.path("libQtGui.so*") + self.path("libQtNetwork.so*") + self.path("libQtOpenGL.so*") + self.path("libQtWebKit.so*") + self.end_prefix("lib") + + # For WebKit/Qt plugin runtimes (image format plugins) + if self.prefix(src="../packages/plugins/imageformats", dst="bin/llplugin/imageformats"): + self.path("libqgif.so") + self.path("libqico.so") + self.path("libqjpeg.so") + self.path("libqmng.so") + self.path("libqsvg.so") + self.path("libqtiff.so") + self.end_prefix("bin/llplugin/imageformats") + + # For WebKit/Qt plugin runtimes (codec/character encoding plugins) + if self.prefix(src="../packages/plugins/codecs", dst="bin/llplugin/codecs"): + self.path("libqcncodecs.so") + self.path("libqjpcodecs.so") + self.path("libqkrcodecs.so") + self.path("libqtwcodecs.so") + self.end_prefix("bin/llplugin/codecs") + self.strip_binaries() diff --git a/indra/test_apps/llfbconnecttest/CMakeLists.txt b/indra/test_apps/llfbconnecttest/CMakeLists.txt index f56329a010..512bf202ae 100644 --- a/indra/test_apps/llfbconnecttest/CMakeLists.txt +++ b/indra/test_apps/llfbconnecttest/CMakeLists.txt @@ -122,32 +122,24 @@ add_custom_command(TARGET llfbconnecttest POST_BUILD ) -if (DARWIN OR WINDOWS) - get_target_property(BUILT_WEBKIT_PLUGIN media_plugin_webkit LOCATION) - add_custom_command(TARGET llfbconnecttest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${BUILT_WEBKIT_PLUGIN} ${PLUGINS_DESTINATION_DIR} - DEPENDS ${BUILT_WEBKIT_PLUGIN} - ) - - # copy over bookmarks file if llfbconnecttest gets built - get_target_property(BUILT_LLFBCONNECTTEST llfbconnecttest LOCATION) - add_custom_command(TARGET llfbconnecttest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${CMAKE_CURRENT_BINARY_DIR}/ - DEPENDS ${BUILT_LLFBCONNECTTEST} - ) - # also copy it to the same place as SLPlugin, which is what the mac wants... - add_custom_command(TARGET llfbconnecttest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${PLUGINS_DESTINATION_DIR} - DEPENDS ${BUILT_LLFBCONNECTTEST} - ) -endif (DARWIN OR WINDOWS) +get_target_property(BUILT_WEBKIT_PLUGIN media_plugin_webkit LOCATION) +add_custom_command(TARGET llfbconnecttest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${BUILT_WEBKIT_PLUGIN} ${PLUGINS_DESTINATION_DIR} + DEPENDS ${BUILT_WEBKIT_PLUGIN} +) -if (DARWIN) - add_custom_command(TARGET llfbconnecttest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ${PLUGINS_DESTINATION_DIR} - DEPENDS ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib - ) -endif (DARWIN) +# copy over bookmarks file if llfbconnecttest gets built +get_target_property(BUILT_LLFBCONNECTTEST llfbconnecttest LOCATION) +add_custom_command(TARGET llfbconnecttest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${CMAKE_CURRENT_BINARY_DIR}/ + DEPENDS ${BUILT_LLFBCONNECTTEST} +) + +# also copy it to the same place as SLPlugin, which is what the mac wants... +add_custom_command(TARGET llfbconnecttest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${PLUGINS_DESTINATION_DIR} + DEPENDS ${BUILT_LLFBCONNECTTEST} +) if(WINDOWS) #******************** @@ -301,4 +293,80 @@ if(WINDOWS) endif(WINDOWS) +if (DARWIN) + set(fbconnecttest_release_src_dir "${ARCH_PREBUILT_DIRS_RELEASE}") + set(fbconnecttest_release_files + libexception_handler.dylib + libaprutil-1.0.dylib + libapr-1.0.dylib + libexpat.1.5.2.dylib + libQtCore.4.7.1.dylib + libQtCore.4.dylib + libQtGui.4.7.1.dylib + libQtGui.4.dylib + libQtNetwork.4.7.1.dylib + libQtNetwork.4.dylib + libQtOpenGL.4.7.1.dylib + libQtOpenGL.4.dylib + libQtWebKit.4.7.1.dylib + libQtWebKit.4.dylib + libQtSvg.4.7.1.dylib + libQtSvg.4.dylib + libQtXml.4.7.1.dylib + libQtXml.4.dylib + ) + copy_if_different( + ${fbconnecttest_release_src_dir} + "${PLUGINS_DESTINATION_DIR}" + out_targets + ${fbconnecttest_release_files} + ) + set(fbconnect_test_targets ${fbconnect_test_targets} ${out_targets}) + + # Release & ReleaseDebInfo config runtime files required for the FB connect test (Qt image format plugins) + set(fbconnecttest_release_src_dir "${ARCH_PREBUILT_DIRS_PLUGINS}/imageformats") + set(fbconnecttest_release_files + libqgif.dylib + libqico.dylib + libqjpeg.dylib + libqmng.dylib + libqsvg.dylib + libqtiff.dylib + ) + copy_if_different( + ${fbconnecttest_release_src_dir} + "${PLUGINS_DESTINATION_DIR}/imageformats" + out_targets + ${fbconnecttest_release_files} + ) + set(fbconnect_test_targets ${fbconnect_test_targets} ${out_targets}) + + # Release & ReleaseDebInfo config runtime files required for the FB connect test (Qt codec plugins) + set(fbconnecttest_release_src_dir "${ARCH_PREBUILT_DIRS_PLUGINS}/codecs") + set(fbconnecttest_release_files + libqcncodecs.dylib + libqjpcodecs.dylib + libqkrcodecs.dylib + libqtwcodecs.dylib + ) + copy_if_different( + ${fbconnecttest_release_src_dir} + "${PLUGINS_DESTINATION_DIR}/codecs" + out_targets + ${fbconnecttest_release_files} + ) + set(fbconnect_test_targets ${fbconnect_test_targets} ${out_targets}) + + add_custom_target(copy_fbconnecttest_libs ALL + DEPENDS + ${fbconnect_test_targets} + ) + + add_dependencies(llfbconnecttest copy_fbconnecttest_libs) +endif (DARWIN) + +if (LINUX) + +endif (LINUX) + ll_deploy_sharedlibs_command(llfbconnecttest) diff --git a/indra/test_apps/llplugintest/CMakeLists.txt b/indra/test_apps/llplugintest/CMakeLists.txt index 8179be66f5..9d44563e26 100755 --- a/indra/test_apps/llplugintest/CMakeLists.txt +++ b/indra/test_apps/llplugintest/CMakeLists.txt @@ -346,44 +346,44 @@ add_custom_command(TARGET llmediaplugintest POST_BUILD DEPENDS ${BUILT_LLCOMMON} ) +get_target_property(BUILT_WEBKIT_PLUGIN media_plugin_webkit LOCATION) +add_custom_command(TARGET llmediaplugintest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${BUILT_WEBKIT_PLUGIN} ${PLUGINS_DESTINATION_DIR} + DEPENDS ${BUILT_WEBKIT_PLUGIN} +) if (DARWIN OR WINDOWS) - get_target_property(BUILT_WEBKIT_PLUGIN media_plugin_webkit LOCATION) - add_custom_command(TARGET llmediaplugintest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${BUILT_WEBKIT_PLUGIN} ${PLUGINS_DESTINATION_DIR} - DEPENDS ${BUILT_WEBKIT_PLUGIN} - ) - get_target_property(BUILT_QUICKTIME_PLUGIN media_plugin_quicktime LOCATION) add_custom_command(TARGET llmediaplugintest POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy ${BUILT_QUICKTIME_PLUGIN} ${PLUGINS_DESTINATION_DIR} DEPENDS ${BUILT_QUICKTIME_PLUGIN} ) - - get_target_property(BUILT_EXAMPLE_PLUGIN media_plugin_example LOCATION) - add_custom_command(TARGET llmediaplugintest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${BUILT_EXAMPLE_PLUGIN} ${PLUGINS_DESTINATION_DIR} - DEPENDS ${BUILT_EXAMPLE_PLUGIN} - ) - - # copy over bookmarks file if llmediaplugintest gets built - get_target_property(BUILT_LLMEDIAPLUGINTEST llmediaplugintest LOCATION) - add_custom_command(TARGET llmediaplugintest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${CMAKE_CURRENT_BINARY_DIR}/ - DEPENDS ${BUILT_LLMEDIAPLUGINTEST} - ) - # also copy it to the same place as SLPlugin, which is what the mac wants... - add_custom_command(TARGET llmediaplugintest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${PLUGINS_DESTINATION_DIR} - DEPENDS ${BUILT_LLMEDIAPLUGINTEST} - ) endif (DARWIN OR WINDOWS) +get_target_property(BUILT_EXAMPLE_PLUGIN media_plugin_example LOCATION) +add_custom_command(TARGET llmediaplugintest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${BUILT_EXAMPLE_PLUGIN} ${PLUGINS_DESTINATION_DIR} + DEPENDS ${BUILT_EXAMPLE_PLUGIN} +) + +# copy over bookmarks file if llmediaplugintest gets built +get_target_property(BUILT_LLMEDIAPLUGINTEST llmediaplugintest LOCATION) +add_custom_command(TARGET llmediaplugintest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${CMAKE_CURRENT_BINARY_DIR}/ + DEPENDS ${BUILT_LLMEDIAPLUGINTEST} +) + +# also copy it to the same place as SLPlugin, which is what the mac wants... +add_custom_command(TARGET llmediaplugintest POST_BUILD + COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/bookmarks.txt ${PLUGINS_DESTINATION_DIR} + DEPENDS ${BUILT_LLMEDIAPLUGINTEST} +) + if (DARWIN) - add_custom_command(TARGET llmediaplugintest POST_BUILD - COMMAND ${CMAKE_COMMAND} -E copy ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ${PLUGINS_DESTINATION_DIR} - DEPENDS ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib - ) +# add_custom_command(TARGET llmediaplugintest POST_BUILD +# COMMAND ${CMAKE_COMMAND} -E copy ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ${PLUGINS_DESTINATION_DIR} +# DEPENDS ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib +# ) endif (DARWIN) if(WINDOWS) @@ -538,4 +538,76 @@ if(WINDOWS) endif(WINDOWS) +if (DARWIN) + set(plugintest_release_src_dir "${ARCH_PREBUILT_DIRS_RELEASE}") + set(plugintest_release_files + libexception_handler.dylib + libaprutil-1.0.dylib + libapr-1.0.dylib + libexpat.1.5.2.dylib + libQtCore.4.7.1.dylib + libQtCore.4.dylib + libQtGui.4.7.1.dylib + libQtGui.4.dylib + libQtNetwork.4.7.1.dylib + libQtNetwork.4.dylib + libQtOpenGL.4.7.1.dylib + libQtOpenGL.4.dylib + libQtWebKit.4.7.1.dylib + libQtWebKit.4.dylib + libQtSvg.4.7.1.dylib + libQtSvg.4.dylib + libQtXml.4.7.1.dylib + libQtXml.4.dylib + ) + copy_if_different( + ${plugintest_release_src_dir} + "${PLUGINS_DESTINATION_DIR}" + out_targets + ${plugintest_release_files} + ) + set(plugin_test_targets ${plugin_test_targets} ${out_targets}) + + # Release & ReleaseDebInfo config runtime files required for the FB connect test (Qt image format plugins) + set(plugintest_release_src_dir "${ARCH_PREBUILT_DIRS_PLUGINS}/imageformats") + set(plugintest_release_files + libqgif.dylib + libqico.dylib + libqjpeg.dylib + libqmng.dylib + libqsvg.dylib + libqtiff.dylib + ) + copy_if_different( + ${plugintest_release_src_dir} + "${PLUGINS_DESTINATION_DIR}/imageformats" + out_targets + ${plugintest_release_files} + ) + set(plugin_test_targets ${plugin_test_targets} ${out_targets}) + + # Release & ReleaseDebInfo config runtime files required for the FB connect test (Qt codec plugins) + set(plugintest_release_src_dir "${ARCH_PREBUILT_DIRS_PLUGINS}/codecs") + set(plugintest_release_files + libqcncodecs.dylib + libqjpcodecs.dylib + libqkrcodecs.dylib + libqtwcodecs.dylib + ) + copy_if_different( + ${plugintest_release_src_dir} + "${PLUGINS_DESTINATION_DIR}/codecs" + out_targets + ${plugintest_release_files} + ) + set(plugin_test_targets ${plugin_test_targets} ${out_targets}) + + add_custom_target(copy_plugintest_libs ALL + DEPENDS + ${plugin_test_targets} + ) + + add_dependencies(llmediaplugintest copy_plugintest_libs) +endif (DARWIN) + ll_deploy_sharedlibs_command(llmediaplugintest) -- cgit v1.3