Post-merge; compare with indra\cmake from LL.

master
Nicky 2015-05-05 18:59:52 +02:00
parent 73f0a7d4c4
commit 55eb540c8e
10 changed files with 111 additions and 140 deletions

View File

@ -49,10 +49,10 @@ if (WINDOWS)
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /Od /Zi /MDd /MP -D_SCL_SECURE_NO_WARNINGS=1"
CACHE STRING "C++ compiler debug options" FORCE)
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO
"${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /Od /Zi /Zo /MD /MP /Ob0 -D_SECURE_STL=0"
"${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /Od /Zi /Zo /MD /MP8 /Ob0 -D_SECURE_STL=0"
CACHE STRING "C++ compiler release-with-debug options" FORCE)
set(CMAKE_CXX_FLAGS_RELEASE
"${CMAKE_CXX_FLAGS_RELEASE} ${LL_CXX_FLAGS} /O2 /Zi /Zo /MD /MP /Ob2 -D_SECURE_STL=0 -D_HAS_ITERATOR_DEBUGGING=0"
"${CMAKE_CXX_FLAGS_RELEASE} ${LL_CXX_FLAGS} /O2 /Zi /Zo /MD /MP8 /Ob2 -D_SECURE_STL=0 -D_HAS_ITERATOR_DEBUGGING=0"
CACHE STRING "C++ compiler release options" FORCE)
# zlib has assembly-language object files incompatible with SAFESEH
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} /LARGEADDRESSAWARE /SAFESEH:NO /NODEFAULTLIB:LIBCMT")
@ -80,7 +80,8 @@ if (WINDOWS)
if (USE_AVX_OPTIMIZATION)
add_definitions(
/DLL_WINDOWS=1
# /DDOM_DYNAMIC
/DNOMINMAX
# /DDOM_DYNAMIC # For shared library colladadom
/DUNICODE
/D_UNICODE
/GS
@ -238,7 +239,6 @@ if (LINUX)
-msse2
-mfpmath=sse
-pthread
# -std=gnu++0x
)
add_definitions(-DAPPID=secondlife)

View File

@ -19,7 +19,7 @@ if (USESYSTEMLIBS)
else (USESYSTEMLIBS)
use_prebuilt_binary(boost)
set(Boost_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include)
set(BOOST_VERSION "1.52")
set(BOOST_VERSION "1.55")
add_definitions(-DBOOST_ALL_NO_LIB)
if (WINDOWS)
@ -56,6 +56,9 @@ else (USESYSTEMLIBS)
set(BOOST_CONTEXT_LIBRARY
optimized libboost_context-mt
debug libboost_context-mt-gd)
set(BOOST_COROUTINE_LIBRARY
optimized libboost_coroutine-mt
debug libboost_coroutine-mt-gd)
set(BOOST_FILESYSTEM_LIBRARY
optimized libboost_filesystem-mt
debug libboost_filesystem-mt-gd)
@ -82,6 +85,9 @@ else (USESYSTEMLIBS)
set(BOOST_CONTEXT_LIBRARY
optimized boost_context-mt
debug boost_context-mt-d)
set(BOOST_COROUTINE_LIBRARY
optimized boost_coroutine-mt
debug boost_coroutine-mt-d)
set(BOOST_FILESYSTEM_LIBRARY
optimized boost_filesystem-mt
debug boost_filesystem-mt-d)
@ -107,6 +113,9 @@ else (USESYSTEMLIBS)
set(BOOST_CONTEXT_LIBRARY
optimized boost_context-mt
debug boost_context-mt-d)
set(BOOST_COROUTINE_LIBRARY
optimized boost_coroutine-mt
debug boost_coroutine-mt-d)
set(BOOST_FILESYSTEM_LIBRARY
optimized boost_filesystem-mt
debug boost_filesystem-mt-d)

View File

@ -40,8 +40,7 @@ if(WINDOWS)
libapriconv-1.dll
ssleay32.dll
libeay32.dll
# libcollada14dom22-d.dll
glod.dll
glod.dll
libhunspell.dll
)
@ -53,7 +52,6 @@ if(WINDOWS)
libapriconv-1.dll
ssleay32.dll
libeay32.dll
# libcollada14dom22.dll
glod.dll
libhunspell.dll
)
@ -194,16 +192,13 @@ elseif(DARWIN)
libapr-1.dylib
libaprutil-1.0.dylib
libaprutil-1.dylib
#libexception_handler.dylib
libexpat.1.5.2.dylib
libexpat.dylib
libGLOD.dylib
#libllqtwebkit.dylib
libminizip.a
libndofdev.dylib
libhunspell-1.3.0.dylib
# libexception_handler.dylib
libcollada14dom.dylib
libgrowl.dylib
libndofdev.dylib
libgrowl.dylib
libgrowl++.dylib
)
@ -251,53 +246,23 @@ elseif(LINUX)
libapr-1.so.0
libaprutil-1.so.0
libatk-1.0.so
libboost_context-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
libboost_wave-mt.so.${BOOST_VERSION}.0
libcollada14dom.so
libcrypto.so.1.0.0
# libdb-5.1.so
libdb-5.1.so
libexpat.so
libexpat.so.1
libfreetype.so.6.6.2
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
libssl.so
libuuid.so.16
libuuid.so.16.0.22
libssl.so.1.0.0
libfontconfig.so.1.4.4
# libpng15.so.15
# libpng15.so.15.13.0
#libnotify.so # *TODO test/fix/get linux libnotify(growl)
libfontconfig.so.1.8.0
libfontconfig.so.1
)
if( NOT ND_BUILD64BIT_ARCH )
set(release_files ${release_files}
libpng15.so.15
libpng15.so.15.13.0
)
else( NOT ND_BUILD64BIT_ARCH )
set(release_files ${release_files}
libpng15.so.15
libpng15.so.15.1.0
)
endif( NOT ND_BUILD64BIT_ARCH )
if (USE_TCMALLOC)
set(release_files ${release_files} "libtcmalloc_minimal.so")
endif (USE_TCMALLOC)

View File

@ -3,13 +3,16 @@
# - Find JSONCpp
# Find the JSONCpp includes and library
# This module defines
# JSONCPP_INCLUDE_DIRS, where to find json.h, etc.
# JSONCPP_INCLUDE_DIR, where to find json.h, etc.
# JSONCPP_LIBRARIES, the libraries needed to use jsoncpp.
# JSONCPP_FOUND, If false, do not try to use jsoncpp.
# also defined, but not for general use are
# JSONCPP_LIBRARY, where to find the jsoncpp library.
FIND_PATH(JSONCPP_INCLUDE_DIRS jsoncpp/json.h)
FIND_PATH(JSONCPP_INCLUDE_DIR jsoncpp/json.h
/usr/local/include
/usr/include
)
# Get the GCC compiler version
EXEC_PROGRAM(${CMAKE_CXX_COMPILER}
@ -28,13 +31,12 @@ FIND_LIBRARY(JSONCPP_LIBRARY
NAMES ${JSONCPP_NAMES}
)
IF (JSONCPP_LIBRARY AND JSONCPP_INCLUDE_DIRS)
IF (JSONCPP_LIBRARY AND JSONCPP_INCLUDE_DIR)
SET(JSONCPP_LIBRARIES ${JSONCPP_LIBRARY})
SET(JSONCPP_INCLUDE_DIR ${JSONCPP_INCLUDE_DIRS})
SET(JSONCPP_FOUND "YES")
ELSE (JSONCPP_LIBRARY AND JSONCPP_INCLUDE_DIRS)
ELSE (JSONCPP_LIBRARY AND JSONCPP_INCLUDE_DIR)
SET(JSONCPP_FOUND "NO")
ENDIF (JSONCPP_LIBRARY AND JSONCPP_INCLUDE_DIRS)
ENDIF (JSONCPP_LIBRARY AND JSONCPP_INCLUDE_DIR)
IF (JSONCPP_FOUND)
@ -48,10 +50,10 @@ ELSE (JSONCPP_FOUND)
ENDIF (JSONCPP_FOUND)
# Deprecated declarations.
SET (NATIVE_JSONCPP_INCLUDE_PATH ${JSONCPP_INCLUDE_DIRS} )
SET (NATIVE_JSONCPP_INCLUDE_PATH ${JSONCPP_INCLUDE_DIR} )
GET_FILENAME_COMPONENT (NATIVE_JSONCPP_LIB_PATH ${JSONCPP_LIBRARY} PATH)
MARK_AS_ADVANCED(
JSONCPP_LIBRARY
JSONCPP_INCLUDE_DIRS
JSONCPP_INCLUDE_DIR
)

View File

@ -11,8 +11,8 @@ else (USESYSTEMLIBS)
use_prebuilt_binary(jsoncpp)
if (WINDOWS)
set(JSONCPP_LIBRARIES
debug json_libmdd.lib
optimized json_libmd.lib)
debug json_libmtd.lib
optimized json_libmt.lib)
elseif (DARWIN)
set(JSONCPP_LIBRARIES libjson_darwin_libmt.a)
elseif (LINUX)

View File

@ -6,34 +6,40 @@ include(Boost)
use_prebuilt_binary(colladadom)
use_prebuilt_binary(pcre)
use_prebuilt_binary(libxml2)
set(LLPRIMITIVE_INCLUDE_DIRS
${LIBS_OPEN_DIR}/llprimitive
)
if (WINDOWS)
set(LLPRIMITIVE_LIBRARIES
set(LLPRIMITIVE_LIBRARIES
debug llprimitive
optimized llprimitive
# debug libcollada14dom22-d
debug libcollada14dom23-d
# optimized libcollada14dom22
optimized libcollada14dom23
debug libcollada14dom23-sd
optimized libcollada14dom23-s
libxml2_a
debug pcrecppd
optimized pcrecpp
debug pcred
optimized pcre
${BOOST_SYSTEM_LIBRARIES}
)
elseif (LINUX)
use_prebuilt_binary(libxml2)
set(LLPRIMITIVE_LIBRARIES
elseif (DARWIN)
set(LLPRIMITIVE_LIBRARIES
llprimitive
collada14dom
debug collada14dom-d
optimized collada14dom
minizip
xml2
pcrecpp
pcre
iconv # Required by libxml2
)
else (WINDOWS)
set(LLPRIMITIVE_LIBRARIES
elseif (LINUX)
set(LLPRIMITIVE_LIBRARIES
llprimitive
collada14dom
debug collada14dom-d
optimized collada14dom
minizip
xml2
pcrecpp

View File

@ -17,7 +17,7 @@ else (USESYSTEMLIBS)
endif (USESYSTEMLIBS)
if (LINUX)
set(CRYPTO_LIBRARIES crypto)
set(CRYPTO_LIBRARIES crypto dl)
elseif (DARWIN)
set(CRYPTO_LIBRARIES crypto)
endif (LINUX)

View File

@ -16,36 +16,16 @@ elseif (WINDOWS)
find_library(DEBUG_QUICKTIME_LIBRARY qtmlclient.lib
PATHS
${ARCH_PREBUILT_DIRS_DEBUG}
"${QUICKTIME_SDK_DIR}\\libraries"
)
find_library(RELEASE_QUICKTIME_LIBRARY qtmlclient.lib
PATHS
${ARCH_PREBUILT_DIRS_RELEASE}
"${QUICKTIME_SDK_DIR}\\libraries"
)
if (DEBUG_QUICKTIME_LIBRARY AND RELEASE_QUICKTIME_LIBRARY)
message ("Using QuickTime SDK libraries.")
else (DEBUG_QUICKTIME_LIBRARY AND RELEASE_QUICKTIME_LIBRARY)
message ("Using QuickTime prebuilt libraries.")
set (USE_QUICKTIME_PREBUILT ON CACHE BOOL "Using QuickTime prebuilt libraries.")
if (NOT INSTALL_PROPRIETARY)
include(Prebuilt)
use_prebuilt_binary(quicktime)
endif (NOT INSTALL_PROPRIETARY)
find_library(DEBUG_QUICKTIME_LIBRARY qtmlclient.lib
PATHS
${ARCH_PREBUILT_DIRS_RELEASE}
)
find_library(RELEASE_QUICKTIME_LIBRARY qtmlclient.lib
PATHS
${ARCH_PREBUILT_DIRS_RELEASE}
)
endif (DEBUG_QUICKTIME_LIBRARY AND RELEASE_QUICKTIME_LIBRARY)
if (DEBUG_QUICKTIME_LIBRARY AND RELEASE_QUICKTIME_LIBRARY)
set(QUICKTIME_LIBRARY
optimized ${RELEASE_QUICKTIME_LIBRARY}
@ -54,15 +34,10 @@ elseif (WINDOWS)
endif (DEBUG_QUICKTIME_LIBRARY AND RELEASE_QUICKTIME_LIBRARY)
if (USE_QUICKTIME_PREBUILT)
include_directories(
${LIBS_PREBUILT_DIR}/include/quicktime
include_directories(
${LIBS_PREBUILT_DIR}/include/quicktime
"${QUICKTIME_SDK_DIR}\\CIncludes"
)
else (USE_QUICKTIME_PREBUILT)
include_directories(
"${QUICKTIME_SDK_DIR}\\CIncludes"
)
endif (USE_QUICKTIME_PREBUILT)
endif (DARWIN)
mark_as_advanced(QUICKTIME_LIBRARY)

View File

@ -36,20 +36,20 @@ endif (USESYSTEMLIBS)
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
@ -66,30 +66,29 @@ elseif (LINUX)
set(WEBKIT_PLUGIN_LIBRARIES ${LLQTWEBKIT_LIBRARY} ${QT_LIBRARIES} ${QT_PLUGIN_LIBRARIES})
else (USESYSTEMLIBS)
set(WEBKIT_PLUGIN_LIBRARIES
llqtwebkit
# qico
# qpng
# qtiff
# qsvg
# QtSvg
QtWebKit
QtOpenGL
QtNetwork
QtGui
QtCore
llqtwebkit
# qico
# qpng
# qtiff
# qsvg
# QtSvg
QtWebKit
QtOpenGL
QtNetwork
QtGui
QtCore
jpeg
# jscore
fontconfig
X11
Xrender
GL
# jscore
# qgif
# qjpeg
# jpeg
fontconfig
X11
Xrender
GL
# sqlite3
# Xi
# SM
)
if( ND_BUILD64BIT_ARCH )
set(WEBKIT_PLUGIN_LIBRARIES ${WEBKIT_PLUGIN_LIBRARIES} jscore )
endif( ND_BUILD64BIT_ARCH )
endif (USESYSTEMLIBS)
# sqlite3
# Xi
# SM
)
endif (WINDOWS)

View File

@ -13,7 +13,22 @@ else (USESYSTEMLIBS)
set(ZLIB_LIBRARIES
debug zlibd
optimized zlib)
else (WINDOWS)
elseif (LINUX)
#
# When we have updated static libraries in competition with older
# shared libraries and we want the former to win, we need to do some
# extra work. The *_PRELOAD_ARCHIVES settings are invoked early
# and will pull in the entire archive to the binary giving it
# priority in symbol resolution. Beware of cmake moving the
# achive load itself to another place on the link command line. If
# that happens, you can try something like -Wl,-lz here to hide
# the archive. Also be aware that the linker will not tolerate a
# second whole-archive load of the archive. See viewer's
# CMakeLists.txt for more information.
#
set(ZLIB_PRELOAD_ARCHIVES -Wl,--whole-archive z -Wl,--no-whole-archive)
set(ZLIB_LIBRARIES z)
elseif (DARWIN)
set(ZLIB_LIBRARIES z)
endif (WINDOWS)
if (WINDOWS OR LINUX)