Skip to content
Snippets Groups Projects
Commit b7637e58 authored by Andrew A. de Laix's avatar Andrew A. de Laix
Browse files

mac buiding with autobuild and autobuild style packages (just say no to install.py)

parent 5d3e7c8e
No related branches found
No related tags found
No related merge requests found
Showing
with 206 additions and 107 deletions
...@@ -853,6 +853,18 @@ ...@@ -853,6 +853,18 @@
<string>kdu</string> <string>kdu</string>
<key>platforms</key> <key>platforms</key>
<map> <map>
<key>darwin</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>408f1375f5a4d864cfb47b36c8ab6052</string>
<key>url</key>
<string>scp:install-packages.lindenlab.com:/local/www/install-packages/doc/kdu-6.4.1-darwin-20110112.tar.bz2</string>
</map>
<key>name</key>
<string>darwin</string>
</map>
<key>windows</key> <key>windows</key>
<map> <map>
<key>archive</key> <key>archive</key>
...@@ -970,9 +982,9 @@ ...@@ -970,9 +982,9 @@
<key>archive</key> <key>archive</key>
<map> <map>
<key>hash</key> <key>hash</key>
<string>54e179ff85bce44b65f4f186bf4c14b1</string> <string>d3890220418a66607569fe406ebe24c7</string>
<key>url</key> <key>url</key>
<string>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/llqtwebkit-4.6%2bcookies-darwin-20101013.tar.bz2</string> <string>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/llqtwebkit-4.7.1-darwin-20110113.tar.bz2</string>
</map> </map>
<key>name</key> <key>name</key>
<string>darwin</string> <string>darwin</string>
...@@ -1265,7 +1277,7 @@ ...@@ -1265,7 +1277,7 @@
</map> </map>
</map> </map>
</map> </map>
<key>vivox</key> <key>slvoice</key>
<map> <map>
<key>license_file</key> <key>license_file</key>
<string>LICENSES/apr_suite.txt</string> <string>LICENSES/apr_suite.txt</string>
...@@ -1299,6 +1311,28 @@ ...@@ -1299,6 +1311,28 @@
</map> </map>
</map> </map>
</map> </map>
<key>tut</key>
<map>
<key>license_file</key>
<string>LICENSES/tut.txt</string>
<key>name</key>
<string>tut</string>
<key>platforms</key>
<map>
<key>common</key>
<map>
<key>archive</key>
<map>
<key>hash</key>
<string>5c6d3e606f027e78f056cb77b20f228e</string>
<key>url</key>
<string>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/tut-2008-11-30-common-20101001.tar.bz2</string>
</map>
<key>name</key>
<string>common</string>
</map>
</map>
</map>
<key>xmlrpc-epi</key> <key>xmlrpc-epi</key>
<map> <map>
<key>license_file</key> <key>license_file</key>
......
...@@ -38,21 +38,15 @@ else (STANDALONE) ...@@ -38,21 +38,15 @@ else (STANDALONE)
set(APR_selector "a") set(APR_selector "a")
set(APRUTIL_selector "a") set(APRUTIL_selector "a")
endif (LLCOMMON_LINK_SHARED) endif (LLCOMMON_LINK_SHARED)
set(APR_LIBRARIES set(APR_LIBRARIES libapr-1.${APR_selector})
debug ${ARCH_PREBUILT_DIRS_DEBUG}/libapr-1.${APR_selector} set(APRUTIL_LIBRARIES libaprutil-1.${APRUTIL_selector})
optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libapr-1.${APR_selector}
)
set(APRUTIL_LIBRARIES
debug ${ARCH_PREBUILT_DIRS_DEBUG}/libaprutil-1.${APRUTIL_selector}
optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libaprutil-1.${APRUTIL_selector}
)
set(APRICONV_LIBRARIES iconv) set(APRICONV_LIBRARIES iconv)
else (WINDOWS) else (WINDOWS)
set(APR_LIBRARIES apr-1) set(APR_LIBRARIES apr-1)
set(APRUTIL_LIBRARIES aprutil-1) set(APRUTIL_LIBRARIES aprutil-1)
set(APRICONV_LIBRARIES iconv) set(APRICONV_LIBRARIES iconv)
endif (WINDOWS) endif (WINDOWS)
set(APR_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/apr-1) set(APR_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include/apr-1)
if (LINUX) if (LINUX)
if (VIEWER) if (VIEWER)
......
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
# VisualStudio. # VisualStudio.
include(CMakeCopyIfDifferent) include(CMakeCopyIfDifferent)
include(Linking)
################################################################### ###################################################################
# set up platform specific lists of files that need to be copied # set up platform specific lists of files that need to be copied
...@@ -135,14 +136,10 @@ elseif(DARWIN) ...@@ -135,14 +136,10 @@ elseif(DARWIN)
libvivoxplatform.dylib libvivoxplatform.dylib
libvivoxsdk.dylib libvivoxsdk.dylib
) )
# *TODO - update this to use LIBS_PREBUILT_DIR and LL_ARCH_DIR variables set(debug_src_dir "${ARCH_PREBUILT_DIRS_DEBUG}")
# or ARCH_PREBUILT_DIRS
set(debug_src_dir "${CMAKE_SOURCE_DIR}/../libraries/universal-darwin/lib_debug")
set(debug_files set(debug_files
) )
# *TODO - update this to use LIBS_PREBUILT_DIR and LL_ARCH_DIR variables set(release_src_dir "${ARCH_PREBUILT_DIRS_RELEASE}")
# or ARCH_PREBUILT_DIRS
set(release_src_dir "${CMAKE_SOURCE_DIR}/../libraries/universal-darwin/lib_release")
set(release_files set(release_files
libapr-1.0.3.7.dylib libapr-1.0.3.7.dylib
libapr-1.dylib libapr-1.dylib
......
...@@ -10,7 +10,7 @@ elseif (LINUX) ...@@ -10,7 +10,7 @@ elseif (LINUX)
use_prebuilt_binary(dbusglib) use_prebuilt_binary(dbusglib)
set(DBUSGLIB_FOUND ON FORCE BOOL) set(DBUSGLIB_FOUND ON FORCE BOOL)
set(DBUSGLIB_INCLUDE_DIRS set(DBUSGLIB_INCLUDE_DIRS
${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/glib-2.0 ${LIBS_PREBUILT_DIR}/include/glib-2.0
) )
# We don't need to explicitly link against dbus-glib itself, because # We don't need to explicitly link against dbus-glib itself, because
# the viewer probes for the system's copy at runtime. # the viewer probes for the system's copy at runtime.
......
# -*- cmake -*-
#
# Find the autobuild tool
#
# Output variables:
#
# AUTOBUILD_EXECUTABLE - path to autobuild or pautobuild executable
# *TODO - if cmake was executed by autobuild, autobuild will have set the AUTOBUILD env var
# update this to check for that case
IF (NOT AUTOBUILD_EXECUTABLE)
IF(WIN32)
SET(AUTOBUILD_EXE_NAMES autobuild.cmd autobuild.exe)
ELSE(WIN32)
SET(AUTOBUILD_EXE_NAMES autobuild)
ENDIF(WIN32)
SET(AUTOBUILD_EXECUTABLE)
FIND_PROGRAM(
AUTOBUILD_EXECUTABLE
NAMES ${AUTOBUILD_EXE_NAMES}
PATHS
ENV PATH
${CMAKE_SOURCE_DIR}/..
${CMAKE_SOURCE_DIR}/../..
${CMAKE_SOURCE_DIR}/../../..
PATH_SUFFIXES "/autobuild/bin/"
)
IF (AUTOBUILD_EXECUTABLE)
GET_FILENAME_COMPONENT(_autobuild_name ${AUTOBUILD_EXECUTABLE} NAME_WE)
MESSAGE(STATUS "Using autobuild at: ${AUTOBUILD_EXECUTABLE}")
ELSE (AUTOBUILD_EXECUTABLE)
IF (AUTOBUILD_FIND_REQUIRED)
MESSAGE(FATAL_ERROR "Could not find autobuild executable")
ENDIF (AUTOBUILD_FIND_REQUIRED)
ENDIF (AUTOBUILD_EXECUTABLE)
MARK_AS_ADVANCED(AUTOBUILD_EXECUTABLE)
ENDIF (NOT AUTOBUILD_EXECUTABLE)
...@@ -9,7 +9,7 @@ else (STANDALONE) ...@@ -9,7 +9,7 @@ else (STANDALONE)
use_prebuilt_binary(freetype) use_prebuilt_binary(freetype)
if (LINUX) if (LINUX)
set(FREETYPE_INCLUDE_DIRS set(FREETYPE_INCLUDE_DIRS
${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include) ${LIBS_PREBUILT_DIR}/include)
else (LINUX) else (LINUX)
set(FREETYPE_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include) set(FREETYPE_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include)
endif (LINUX) endif (LINUX)
......
...@@ -13,9 +13,9 @@ elseif (LINUX) ...@@ -13,9 +13,9 @@ elseif (LINUX)
set(GSTREAMER010_FOUND ON FORCE BOOL) set(GSTREAMER010_FOUND ON FORCE BOOL)
set(GSTREAMER010_PLUGINS_BASE_FOUND ON FORCE BOOL) set(GSTREAMER010_PLUGINS_BASE_FOUND ON FORCE BOOL)
set(GSTREAMER010_INCLUDE_DIRS set(GSTREAMER010_INCLUDE_DIRS
${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/gstreamer-0.10 ${LIBS_PREBUILT_DIR}/include/gstreamer-0.10
${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/glib-2.0 ${LIBS_PREBUILT_DIR}/include/glib-2.0
${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/libxml2 ${LIBS_PREBUILT_DIR}/include/libxml2
) )
# We don't need to explicitly link against gstreamer itself, because # We don't need to explicitly link against gstreamer itself, because
# LLMediaImplGStreamer probes for the system's copy at runtime. # LLMediaImplGStreamer probes for the system's copy at runtime.
......
...@@ -4,7 +4,9 @@ include(Prebuilt) ...@@ -4,7 +4,9 @@ include(Prebuilt)
if (STANDALONE) if (STANDALONE)
include(FindGooglePerfTools) include(FindGooglePerfTools)
else (STANDALONE) else (STANDALONE)
if(NOT DARWIN)
use_prebuilt_binary(google) use_prebuilt_binary(google)
endif()
if (WINDOWS) if (WINDOWS)
use_prebuilt_binary(google-perftools) use_prebuilt_binary(google-perftools)
set(TCMALLOC_LIBRARIES set(TCMALLOC_LIBRARIES
...@@ -17,7 +19,7 @@ else (STANDALONE) ...@@ -17,7 +19,7 @@ else (STANDALONE)
set(STACKTRACE_LIBRARIES stacktrace) set(STACKTRACE_LIBRARIES stacktrace)
set(PROFILER_LIBRARIES profiler) set(PROFILER_LIBRARIES profiler)
set(GOOGLE_PERFTOOLS_INCLUDE_DIR set(GOOGLE_PERFTOOLS_INCLUDE_DIR
${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include) ${LIBS_PREBUILT_DIR}/include)
set(GOOGLE_PERFTOOLS_FOUND "YES") set(GOOGLE_PERFTOOLS_FOUND "YES")
endif (LINUX) endif (LINUX)
endif (STANDALONE) endif (STANDALONE)
......
# -*- cmake -*- # -*- cmake -*-
include(Variables)
if (NOT STANDALONE) if (NOT STANDALONE)
set(ARCH_PREBUILT_DIRS ${AUTOBUILD_INSTALL_DIR}/lib)
set(ARCH_PREBUILT_DIRS_RELEASE ${AUTOBUILD_INSTALL_DIR}/lib/release)
set(ARCH_PREBUILT_DIRS_DEBUG ${AUTOBUILD_INSTALL_DIR}/lib/debug)
if (WINDOWS) if (WINDOWS)
set(ARCH_PREBUILT_DIRS ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/lib) set(SHARED_LIB_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs)
set(ARCH_PREBUILT_DIRS_RELEASE ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/lib/release) set(EXE_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs)
set(ARCH_PREBUILT_DIRS_DEBUG ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/lib/debug)
set(SHARED_LIB_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs CACHE FILEPATH "Location of staged DLLs")
set(EXE_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs CACHE FILEPATH "Location of staged executables")
elseif (LINUX) elseif (LINUX)
if (VIEWER) set(SHARED_LIB_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs/lib)
set(ARCH_PREBUILT_DIRS ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/lib_release_client) set(EXE_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs/bin)
else (VIEWER)
set(ARCH_PREBUILT_DIRS ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/lib_release)
endif (VIEWER)
set(ARCH_PREBUILT_DIRS_RELEASE ${ARCH_PREBUILT_DIRS})
set(ARCH_PREBUILT_DIRS_DEBUG ${ARCH_PREBUILT_DIRS})
set(SHARED_LIB_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs/lib CACHE FILEPATH "Location of staged .sos")
set(EXE_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs/bin CACHE FILEPATH "Location of staged executables")
elseif (DARWIN) elseif (DARWIN)
set(ARCH_PREBUILT_DIRS_RELEASE ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/lib_release) set(SHARED_LIB_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs)
set(ARCH_PREBUILT_DIRS ${ARCH_PREBUILT_DIRS_RELEASE}) set(EXE_STAGING_DIR "${CMAKE_BINARY_DIR}/sharedlibs/\$(CONFIGURATION)")
set(ARCH_PREBUILT_DIRS_DEBUG ${ARCH_PREBUILT_DIRS_RELEASE})
set(SHARED_LIB_STAGING_DIR ${CMAKE_BINARY_DIR}/sharedlibs CACHE FILEPATH "Location of staged DLLs")
set(EXE_STAGING_DIR "${CMAKE_BINARY_DIR}/sharedlibs/\$(CONFIGURATION)" CACHE FILEPATH "Location of staged executables")
endif (WINDOWS) endif (WINDOWS)
endif (NOT STANDALONE) endif (NOT STANDALONE)
link_directories(${ARCH_PREBUILT_DIRS}) # Autobuild packages must provide 'release' versions of libraries, but may provide versions for
# specific build types. AUTOBUILD_LIBS_INSTALL_DIRS lists first the build type directory and then
# the 'release' directory (as a default fallback).
# *NOTE - we have to take special care to use CMAKE_CFG_INTDIR on IDE generators (like mac and
# windows) and CMAKE_BUILD_TYPE on Makefile based generators (like linux). The reason for this is
# that CMAKE_BUILD_TYPE is essentially meaningless at configuration time for IDE generators and
# CMAKE_CFG_INTDIR is meaningless at build time for Makefile generators
if(WINDOWS OR DARWIN)
# the cmake xcode and VS generators implicitly append ${CMAKE_CFG_INTDIR} to the library paths for us
# fortunately both windows and darwin are case insensitive filesystems so this works.
set(AUTOBUILD_LIBS_INSTALL_DIRS "${AUTOBUILD_INSTALL_DIR}/lib/")
else(WINDOWS OR DARWIN)
# else block is for linux and any other makefile based generators
string(TOLOWER ${CMAKE_BUILD_TYPE} CMAKE_BUILD_TYPE_LOWER)
set(AUTOBUILD_LIBS_INSTALL_DIRS ${AUTOBUILD_INSTALL_DIR}/lib/${CMAKE_BUILD_TYPE_LOWER})
endif(WINDOWS OR DARWIN)
list(APPEND AUTOBUILD_LIBS_INSTALL_DIRS ${ARCH_PREBUILT_DIRS_RELEASE})
link_directories(${AUTOBUILD_LIBS_INSTALL_DIRS})
if (LINUX) if (LINUX)
set(DL_LIBRARY dl) set(DL_LIBRARY dl)
......
...@@ -37,9 +37,9 @@ IF (DARWIN) ...@@ -37,9 +37,9 @@ IF (DARWIN)
ELSE (DARWIN) ELSE (DARWIN)
SET(MONO_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include) SET(MONO_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include)
SET(GLIB_2_0_PLATFORM_INCLUDE_DIR SET(GLIB_2_0_PLATFORM_INCLUDE_DIR
${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/glib-2.0) ${LIBS_PREBUILT_DIR}/include/glib-2.0)
SET(GLIB_2_0_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include/glib-2.0) SET(GLIB_2_0_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include/glib-2.0)
INCLUDE_DIRECTORIES( INCLUDE_DIRECTORIES(
......
...@@ -7,7 +7,7 @@ use_prebuilt_binary(mysql) ...@@ -7,7 +7,7 @@ use_prebuilt_binary(mysql)
if (LINUX) if (LINUX)
if (WORD_SIZE EQUAL 32 OR DEBIAN_VERSION STREQUAL "3.1") if (WORD_SIZE EQUAL 32 OR DEBIAN_VERSION STREQUAL "3.1")
set(MYSQL_LIBRARIES mysqlclient) set(MYSQL_LIBRARIES mysqlclient)
set(MYSQL_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include) set(MYSQL_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include)
else (WORD_SIZE EQUAL 32 OR DEBIAN_VERSION STREQUAL "3.1") else (WORD_SIZE EQUAL 32 OR DEBIAN_VERSION STREQUAL "3.1")
# Use the native MySQL library on a 64-bit system. # Use the native MySQL library on a 64-bit system.
set(MYSQL_FIND_QUIETLY ON) set(MYSQL_FIND_QUIETLY ON)
...@@ -16,9 +16,9 @@ if (LINUX) ...@@ -16,9 +16,9 @@ if (LINUX)
endif (WORD_SIZE EQUAL 32 OR DEBIAN_VERSION STREQUAL "3.1") endif (WORD_SIZE EQUAL 32 OR DEBIAN_VERSION STREQUAL "3.1")
elseif (WINDOWS) elseif (WINDOWS)
set(MYSQL_LIBRARIES mysqlclient) set(MYSQL_LIBRARIES mysqlclient)
set(MYSQL_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include) set(MYSQL_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include)
elseif (DARWIN) elseif (DARWIN)
set(MYSQL_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include) set(MYSQL_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include)
set(MYSQL_LIBRARIES set(MYSQL_LIBRARIES
optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libmysqlclient.a optimized ${ARCH_PREBUILT_DIRS_RELEASE}/libmysqlclient.a
debug ${ARCH_PREBUILT_DIRS_DEBUG}/libmysqlclient.a debug ${ARCH_PREBUILT_DIRS_DEBUG}/libmysqlclient.a
......
...@@ -5,5 +5,5 @@ if (NOT STANDALONE) ...@@ -5,5 +5,5 @@ if (NOT STANDALONE)
use_prebuilt_binary(GL) use_prebuilt_binary(GL)
# possible glh_linear should have its own .cmake file instead # possible glh_linear should have its own .cmake file instead
use_prebuilt_binary(glh_linear) use_prebuilt_binary(glh_linear)
set(GLEXT_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include) set(GLEXT_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include)
endif (NOT STANDALONE) endif (NOT STANDALONE)
...@@ -13,7 +13,7 @@ else (STANDALONE) ...@@ -13,7 +13,7 @@ else (STANDALONE)
else (WINDOWS) else (WINDOWS)
set(OPENSSL_LIBRARIES ssl) set(OPENSSL_LIBRARIES ssl)
endif (WINDOWS) endif (WINDOWS)
set(OPENSSL_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include) set(OPENSSL_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include)
endif (STANDALONE) endif (STANDALONE)
if (LINUX) if (LINUX)
......
# -*- cmake -*- # -*- cmake -*-
include(Python) include(FindAutobuild)
include(FindSCP)
macro (use_prebuilt_binary _binary) macro (use_prebuilt_binary _binary)
if (NOT STANDALONE) if (NOT DEFINED STANDALONE_${_binary})
set(STANDALONE_${_binary} ${STANDALONE})
endif (NOT DEFINED STANDALONE_${_binary})
if (NOT STANDALONE_${_binary})
if(${CMAKE_BINARY_DIR}/temp/sentinel_installed IS_NEWER_THAN ${CMAKE_BINARY_DIR}/temp/${_binary}_installed) if(${CMAKE_BINARY_DIR}/temp/sentinel_installed IS_NEWER_THAN ${CMAKE_BINARY_DIR}/temp/${_binary}_installed)
if(INSTALL_PROPRIETARY) if(INSTALL_PROPRIETARY)
include(FindSCP) include(FindSCP)
if(DEBUG_PREBUILT) if(DEBUG_PREBUILT)
message("cd ${SCRIPTS_DIR} && ${PYTHON_EXECUTABLE} install.py --install-dir=${CMAKE_SOURCE_DIR}/.. --scp=${SCP_EXECUTABLE} ${_binary}") message("cd ${CMAKE_SOURCE_DIR} && ${AUTOBUILD_EXECUTABLE} install
--install-dir=${AUTOBUILD_INSTALL_DIR}
#--scp="${SCP_EXECUTABLE}"
--skip-license-check
${_binary} ")
endif(DEBUG_PREBUILT) endif(DEBUG_PREBUILT)
execute_process(COMMAND ${PYTHON_EXECUTABLE} execute_process(COMMAND "${AUTOBUILD_EXECUTABLE}"
install.py install
--install-dir=${CMAKE_SOURCE_DIR}/.. --install-dir=${AUTOBUILD_INSTALL_DIR}
--scp=${SCP_EXECUTABLE} #--scp="${SCP_EXECUTABLE}"
--skip-license-check
${_binary} ${_binary}
WORKING_DIRECTORY ${SCRIPTS_DIR} WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
RESULT_VARIABLE ${_binary}_installed RESULT_VARIABLE ${_binary}_installed
) )
else(INSTALL_PROPRIETARY) else(INSTALL_PROPRIETARY)
if(DEBUG_PREBUILT) if(DEBUG_PREBUILT)
message("cd ${SCRIPTS_DIR} && ${PYTHON_EXECUTABLE} install.py --install-dir=${CMAKE_SOURCE_DIR}/.. ${_binary}") message("cd ${CMAKE_SOURCE_DIR} && ${AUTOBUILD_EXECUTABLE} install
--install-dir=${AUTOBUILD_INSTALL_DIR}
--skip-license-check
${_binary} ")
endif(DEBUG_PREBUILT) endif(DEBUG_PREBUILT)
execute_process(COMMAND ${PYTHON_EXECUTABLE} execute_process(COMMAND "${AUTOBUILD_EXECUTABLE}"
install.py install
--install-dir=${CMAKE_SOURCE_DIR}/.. --install-dir=${AUTOBUILD_INSTALL_DIR}
--skip-license-check
${_binary} ${_binary}
WORKING_DIRECTORY ${SCRIPTS_DIR} WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}"
RESULT_VARIABLE ${_binary}_installed RESULT_VARIABLE ${_binary}_installed
) )
endif(INSTALL_PROPRIETARY) endif(INSTALL_PROPRIETARY)
...@@ -40,5 +52,5 @@ macro (use_prebuilt_binary _binary) ...@@ -40,5 +52,5 @@ macro (use_prebuilt_binary _binary)
"Failed to download or unpack prebuilt '${_binary}'." "Failed to download or unpack prebuilt '${_binary}'."
" Process returned ${${_binary}_installed}.") " Process returned ${${_binary}_installed}.")
endif (NOT ${_binary}_installed EQUAL 0) endif (NOT ${_binary}_installed EQUAL 0)
endif (NOT STANDALONE) endif (NOT STANDALONE_${_binary})
endmacro (use_prebuilt_binary _binary) endmacro (use_prebuilt_binary _binary)
...@@ -33,7 +33,7 @@ elseif (WINDOWS) ...@@ -33,7 +33,7 @@ elseif (WINDOWS)
endif (DEBUG_QUICKTIME_LIBRARY AND RELEASE_QUICKTIME_LIBRARY) endif (DEBUG_QUICKTIME_LIBRARY AND RELEASE_QUICKTIME_LIBRARY)
include_directories( include_directories(
${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/quicktime ${LIBS_PREBUILT_DIR}/include/quicktime
"${QUICKTIME_SDK_DIR}\\CIncludes" "${QUICKTIME_SDK_DIR}\\CIncludes"
) )
endif (DARWIN) endif (DARWIN)
......
...@@ -51,11 +51,11 @@ else (STANDALONE) ...@@ -51,11 +51,11 @@ else (STANDALONE)
endif (LINUX) endif (LINUX)
include_directories ( include_directories (
${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include ${LIBS_PREBUILT_DIR}/include
${LIBS_PREBUILT_DIR}/include ${LIBS_PREBUILT_DIR}/include
) )
foreach(include ${${LL_ARCH}_INCLUDES}) foreach(include ${${LL_ARCH}_INCLUDES})
include_directories(${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/${include}) include_directories(${LIBS_PREBUILT_DIR}/include/${include})
endforeach(include) endforeach(include)
endif (STANDALONE) endif (STANDALONE)
......
...@@ -17,6 +17,10 @@ ...@@ -17,6 +17,10 @@
# Relative and absolute paths to subtrees. # Relative and absolute paths to subtrees.
if(NOT DEFINED COMMON_CMAKE_DIR)
set(COMMON_CMAKE_DIR "${CMAKE_SOURCE_DIR}/cmake")
endif(NOT DEFINED COMMON_CMAKE_DIR)
set(LIBS_CLOSED_PREFIX) set(LIBS_CLOSED_PREFIX)
set(LIBS_OPEN_PREFIX) set(LIBS_OPEN_PREFIX)
set(LIBS_SERVER_PREFIX) set(LIBS_SERVER_PREFIX)
...@@ -26,14 +30,26 @@ set(VIEWER_PREFIX) ...@@ -26,14 +30,26 @@ set(VIEWER_PREFIX)
set(INTEGRATION_TESTS_PREFIX) set(INTEGRATION_TESTS_PREFIX)
set(LL_TESTS ON CACHE BOOL "Build and run unit and integration tests (disable for build timing runs to reduce variation") set(LL_TESTS ON CACHE BOOL "Build and run unit and integration tests (disable for build timing runs to reduce variation")
if(LIBS_CLOSED_DIR)
file(TO_CMAKE_PATH "${LIBS_CLOSED_DIR}" LIBS_CLOSED_DIR)
else(LIBS_CLOSED_DIR)
set(LIBS_CLOSED_DIR ${CMAKE_SOURCE_DIR}/${LIBS_CLOSED_PREFIX}) set(LIBS_CLOSED_DIR ${CMAKE_SOURCE_DIR}/${LIBS_CLOSED_PREFIX})
set(LIBS_OPEN_DIR ${CMAKE_SOURCE_DIR}/${LIBS_OPEN_PREFIX}) endif(LIBS_CLOSED_DIR)
if(LIBS_COMMON_DIR)
file(TO_CMAKE_PATH "${LIBS_COMMON_DIR}" LIBS_COMMON_DIR)
else(LIBS_COMMON_DIR)
set(LIBS_COMMON_DIR ${CMAKE_SOURCE_DIR}/${LIBS_OPEN_PREFIX})
endif(LIBS_COMMON_DIR)
set(LIBS_OPEN_DIR ${LIBS_COMMON_DIR})
set(LIBS_SERVER_DIR ${CMAKE_SOURCE_DIR}/${LIBS_SERVER_PREFIX}) set(LIBS_SERVER_DIR ${CMAKE_SOURCE_DIR}/${LIBS_SERVER_PREFIX})
set(SCRIPTS_DIR ${CMAKE_SOURCE_DIR}/${SCRIPTS_PREFIX}) set(SCRIPTS_DIR ${CMAKE_SOURCE_DIR}/${SCRIPTS_PREFIX})
set(SERVER_DIR ${CMAKE_SOURCE_DIR}/${SERVER_PREFIX}) set(SERVER_DIR ${CMAKE_SOURCE_DIR}/${SERVER_PREFIX})
set(VIEWER_DIR ${CMAKE_SOURCE_DIR}/${VIEWER_PREFIX}) set(VIEWER_DIR ${CMAKE_SOURCE_DIR}/${VIEWER_PREFIX})
set(LIBS_PREBUILT_DIR ${CMAKE_SOURCE_DIR}/../libraries CACHE PATH set(AUTOBUILD_INSTALL_DIR ${CMAKE_BINARY_DIR}/packages)
set(LIBS_PREBUILT_DIR ${AUTOBUILD_INSTALL_DIR} CACHE PATH
"Location of prebuilt libraries.") "Location of prebuilt libraries.")
if (EXISTS ${CMAKE_SOURCE_DIR}/Server.cmake) if (EXISTS ${CMAKE_SOURCE_DIR}/Server.cmake)
...@@ -41,6 +57,10 @@ if (EXISTS ${CMAKE_SOURCE_DIR}/Server.cmake) ...@@ -41,6 +57,10 @@ if (EXISTS ${CMAKE_SOURCE_DIR}/Server.cmake)
set(INSTALL_PROPRIETARY ON CACHE BOOL "Install proprietary binaries") set(INSTALL_PROPRIETARY ON CACHE BOOL "Install proprietary binaries")
endif (EXISTS ${CMAKE_SOURCE_DIR}/Server.cmake) endif (EXISTS ${CMAKE_SOURCE_DIR}/Server.cmake)
if (NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE RelWithDebInfo CACHE STRING
"Build type. One of: Debug Release RelWithDebInfo" FORCE)
endif (NOT CMAKE_BUILD_TYPE)
if (${CMAKE_SYSTEM_NAME} MATCHES "Windows") if (${CMAKE_SYSTEM_NAME} MATCHES "Windows")
set(WINDOWS ON BOOL FORCE) set(WINDOWS ON BOOL FORCE)
...@@ -54,20 +74,19 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Linux") ...@@ -54,20 +74,19 @@ if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set(LINUX ON BOOl FORCE) set(LINUX ON BOOl FORCE)
# If someone has specified a word size, use that to determine the # If someone has specified a word size, use that to determine the
# architecture. Otherwise, let the compiler specify the word size. # architecture. Otherwise, let the architecture specify the word size.
# Using uname will break under chroots and other cross arch compiles. RC
if (WORD_SIZE EQUAL 32) if (WORD_SIZE EQUAL 32)
set(ARCH i686) set(ARCH i686)
elseif (WORD_SIZE EQUAL 64) elseif (WORD_SIZE EQUAL 64)
set(ARCH x86_64) set(ARCH x86_64)
else (WORD_SIZE EQUAL 32) else (WORD_SIZE EQUAL 32)
if(CMAKE_SIZEOF_VOID_P MATCHES 4) execute_process(COMMAND uname -m COMMAND sed s/i.86/i686/
set(ARCH i686) OUTPUT_VARIABLE ARCH OUTPUT_STRIP_TRAILING_WHITESPACE)
set(WORD_SIZE 32) if (ARCH STREQUAL x86_64)
else(CMAKE_SIZEOF_VOID_P MATCHES 4)
set(ARCH x86_64)
set(WORD_SIZE 64) set(WORD_SIZE 64)
endif(CMAKE_SIZEOF_VOID_P MATCHES 4) else (ARCH STREQUAL x86_64)
set(WORD_SIZE 32)
endif (ARCH STREQUAL x86_64)
endif (WORD_SIZE EQUAL 32) endif (WORD_SIZE EQUAL 32)
set(LL_ARCH ${ARCH}_linux) set(LL_ARCH ${ARCH}_linux)
...@@ -77,24 +96,11 @@ endif (${CMAKE_SYSTEM_NAME} MATCHES "Linux") ...@@ -77,24 +96,11 @@ endif (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin") if (${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
set(DARWIN 1) set(DARWIN 1)
# NOTE: If specifying a different SDK with CMAKE_OSX_SYSROOT at configure # To support a different SDK update these Xcode settings:
# time you should also specify CMAKE_OSX_DEPLOYMENT_TARGET explicitly, set(CMAKE_OSX_DEPLOYMENT_TARGET 10.5)
# otherwise CMAKE_OSX_SYSROOT will be overridden here. We can't just check
# for it being unset, as it gets set to the system default :(
# Default to building against the 10.4 SDK if no deployment target is
# specified.
if (NOT CMAKE_OSX_DEPLOYMENT_TARGET)
# NOTE: setting -isysroot is NOT adequate: http://lists.apple.com/archives/Xcode-users/2007/Oct/msg00696.html
# see http://public.kitware.com/Bug/view.php?id=9959 + poppy
set(CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX10.5.sdk) set(CMAKE_OSX_SYSROOT /Developer/SDKs/MacOSX10.5.sdk)
set(CMAKE_OSX_DEPLOYMENT_TARGET 10.4) set(CMAKE_XCODE_ATTRIBUTE_GCC_VERSION "4.2")
endif (NOT CMAKE_OSX_DEPLOYMENT_TARGET) set(CMAKE_XCODE_ATTRIBUTE_DEBUG_INFORMATION_FORMAT "DWARF with dSYM File")
# GCC 4.2 is incompatible with the MacOSX 10.4 SDK
if (${CMAKE_OSX_SYSROOT} MATCHES "10.4u")
set(CMAKE_XCODE_ATTRIBUTE_GCC_VERSION "4.0")
endif (${CMAKE_OSX_SYSROOT} MATCHES "10.4u")
# NOTE: To attempt an i386/PPC Universal build, add this on the configure line: # NOTE: To attempt an i386/PPC Universal build, add this on the configure line:
# -DCMAKE_OSX_ARCHITECTURES:STRING='i386;ppc' # -DCMAKE_OSX_ARCHITECTURES:STRING='i386;ppc'
...@@ -125,6 +131,7 @@ set(VIEWER ON CACHE BOOL "Build Second Life viewer.") ...@@ -125,6 +131,7 @@ set(VIEWER ON CACHE BOOL "Build Second Life viewer.")
set(VIEWER_CHANNEL "LindenDeveloper" CACHE STRING "Viewer Channel Name") set(VIEWER_CHANNEL "LindenDeveloper" CACHE STRING "Viewer Channel Name")
set(VIEWER_LOGIN_CHANNEL ${VIEWER_CHANNEL} CACHE STRING "Fake login channel for A/B Testing") set(VIEWER_LOGIN_CHANNEL ${VIEWER_CHANNEL} CACHE STRING "Fake login channel for A/B Testing")
set(VERSION_BUILD "0" CACHE STRING "Revision number passed in from the outside")
set(STANDALONE OFF CACHE BOOL "Do not use Linden-supplied prebuilt libraries.") set(STANDALONE OFF CACHE BOOL "Do not use Linden-supplied prebuilt libraries.")
if (NOT STANDALONE AND EXISTS ${CMAKE_SOURCE_DIR}/llphysics) if (NOT STANDALONE AND EXISTS ${CMAKE_SOURCE_DIR}/llphysics)
...@@ -144,3 +151,4 @@ endif (LINUX AND SERVER AND VIEWER) ...@@ -144,3 +151,4 @@ endif (LINUX AND SERVER AND VIEWER)
set(USE_PRECOMPILED_HEADERS ON CACHE BOOL "Enable use of precompiled header directives where supported.") set(USE_PRECOMPILED_HEADERS ON CACHE BOOL "Enable use of precompiled header directives where supported.")
source_group("CMake Rules" FILES CMakeLists.txt) source_group("CMake Rules" FILES CMakeLists.txt)
...@@ -121,8 +121,8 @@ if (DARWIN) ...@@ -121,8 +121,8 @@ if (DARWIN)
add_custom_command( add_custom_command(
TARGET media_plugin_webkit POST_BUILD TARGET media_plugin_webkit POST_BUILD
# OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/libllqtwebkit.dylib # OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/libllqtwebkit.dylib
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/../libraries/universal-darwin/lib_release/libllqtwebkit.dylib ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/ COMMAND ${CMAKE_COMMAND} -E copy ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/
DEPENDS media_plugin_webkit ${CMAKE_SOURCE_DIR}/../libraries/universal-darwin/lib_release/libllqtwebkit.dylib DEPENDS media_plugin_webkit ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib
) )
endif (DARWIN) endif (DARWIN)
......
...@@ -566,7 +566,7 @@ def construct(self): ...@@ -566,7 +566,7 @@ def construct(self):
self.path("Info-SecondLife.plist", dst="Info.plist") self.path("Info-SecondLife.plist", dst="Info.plist")
# copy additional libs in <bundle>/Contents/MacOS/ # copy additional libs in <bundle>/Contents/MacOS/
self.path("../../libraries/universal-darwin/lib_release/libndofdev.dylib", dst="MacOS/libndofdev.dylib") self.path("../packages/lib/release/libndofdev.dylib", dst="MacOS/libndofdev.dylib")
self.path("../viewer_components/updater/scripts/darwin/update_install", "MacOS/update_install") self.path("../viewer_components/updater/scripts/darwin/update_install", "MacOS/update_install")
...@@ -616,7 +616,7 @@ def construct(self): ...@@ -616,7 +616,7 @@ def construct(self):
self.path("vivox-runtime/universal-darwin/libvivoxplatform.dylib", "libvivoxplatform.dylib") self.path("vivox-runtime/universal-darwin/libvivoxplatform.dylib", "libvivoxplatform.dylib")
self.path("vivox-runtime/universal-darwin/SLVoice", "SLVoice") self.path("vivox-runtime/universal-darwin/SLVoice", "SLVoice")
libdir = "../../libraries/universal-darwin/lib_release" libdir = "../packages/lib/release"
dylibs = {} dylibs = {}
# Need to get the llcommon dll from any of the build directories as well # Need to get the llcommon dll from any of the build directories as well
...@@ -685,7 +685,7 @@ def construct(self): ...@@ -685,7 +685,7 @@ def construct(self):
if self.prefix(src="", dst="llplugin"): if self.prefix(src="", dst="llplugin"):
self.path("../media_plugins/quicktime/" + self.args['configuration'] + "/media_plugin_quicktime.dylib", "media_plugin_quicktime.dylib") self.path("../media_plugins/quicktime/" + self.args['configuration'] + "/media_plugin_quicktime.dylib", "media_plugin_quicktime.dylib")
self.path("../media_plugins/webkit/" + self.args['configuration'] + "/media_plugin_webkit.dylib", "media_plugin_webkit.dylib") self.path("../media_plugins/webkit/" + self.args['configuration'] + "/media_plugin_webkit.dylib", "media_plugin_webkit.dylib")
self.path("../../libraries/universal-darwin/lib_release/libllqtwebkit.dylib", "libllqtwebkit.dylib") self.path("../packages/lib/release/libllqtwebkit.dylib", "libllqtwebkit.dylib")
self.end_prefix("llplugin") self.end_prefix("llplugin")
......
...@@ -379,8 +379,8 @@ endif (DARWIN OR WINDOWS) ...@@ -379,8 +379,8 @@ endif (DARWIN OR WINDOWS)
if (DARWIN) if (DARWIN)
add_custom_command(TARGET llmediaplugintest POST_BUILD add_custom_command(TARGET llmediaplugintest POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_SOURCE_DIR}/../libraries/universal-darwin/lib_release/libllqtwebkit.dylib ${PLUGINS_DESTINATION_DIR} COMMAND ${CMAKE_COMMAND} -E copy ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib ${PLUGINS_DESTINATION_DIR}
DEPENDS ${CMAKE_SOURCE_DIR}/../libraries/universal-darwin/lib_release/libllqtwebkit.dylib DEPENDS ${ARCH_PREBUILT_DIRS_RELEASE}/libllqtwebkit.dylib
) )
endif (DARWIN) endif (DARWIN)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment