diff options
author | David Walter Seikel | 2011-12-03 18:50:34 +1000 |
---|---|---|
committer | David Walter Seikel | 2011-12-03 18:50:34 +1000 |
commit | d3b9f715f0ad9516fa350a5c0b83330b733ee0f9 (patch) | |
tree | e1481a7b83ae6f4fa0a88c4eebb6dbecd83e86fd /linden/indra/cmake | |
parent | Another possible fix for misplaced HUDs? (diff) | |
parent | Made the voice license window resizable (diff) | |
download | meta-impy-d3b9f715f0ad9516fa350a5c0b83330b733ee0f9.zip meta-impy-d3b9f715f0ad9516fa350a5c0b83330b733ee0f9.tar.gz meta-impy-d3b9f715f0ad9516fa350a5c0b83330b733ee0f9.tar.bz2 meta-impy-d3b9f715f0ad9516fa350a5c0b83330b733ee0f9.tar.xz |
Merge branch 'next' of git://github.com/imprudence/imprudence into next
Removed the new "Set your own Imprudence tag colour feature". Should check though, might be bits left that where not obvious.
Conflicts:
.gitignore
linden/indra/cmake/00-Common.cmake
linden/indra/newview/llvoavatar.cpp
linden/indra/newview/res/viewerRes.rc
linden/indra/newview/skins/default/xui/en-us/panel_login.xml
linden/indra/newview/viewer_manifest.py
linden/indra/newview/viewerinfo.cpp
The usual branding conflicts.
Diffstat (limited to 'linden/indra/cmake')
-rw-r--r-- | linden/indra/cmake/00-Common.cmake | 41 | ||||
-rw-r--r-- | linden/indra/cmake/CopyWinLibs.cmake | 67 |
2 files changed, 97 insertions, 11 deletions
diff --git a/linden/indra/cmake/00-Common.cmake b/linden/indra/cmake/00-Common.cmake index 9ff5906..897112e 100644 --- a/linden/indra/cmake/00-Common.cmake +++ b/linden/indra/cmake/00-Common.cmake | |||
@@ -1,6 +1,6 @@ | |||
1 | # -*- cmake -*- | 1 | # -*- cmake -*- |
2 | # | 2 | # |
3 | # Compilation options shared by all components. | 3 | # Compilation options shared by all viewer components. |
4 | 4 | ||
5 | include(Variables) | 5 | include(Variables) |
6 | 6 | ||
@@ -10,6 +10,8 @@ include(Variables) | |||
10 | set(CMAKE_CXX_FLAGS_DEBUG "-D_DEBUG -DLL_DEBUG=1") | 10 | set(CMAKE_CXX_FLAGS_DEBUG "-D_DEBUG -DLL_DEBUG=1") |
11 | set(CMAKE_CXX_FLAGS_RELEASE | 11 | set(CMAKE_CXX_FLAGS_RELEASE |
12 | "-DLL_RELEASE=1 -DLL_RELEASE_FOR_DOWNLOAD=1 -D_SECURE_SCL=0 -DLL_SEND_CRASH_REPORTS=1 -DNDEBUG") | 12 | "-DLL_RELEASE=1 -DLL_RELEASE_FOR_DOWNLOAD=1 -D_SECURE_SCL=0 -DLL_SEND_CRASH_REPORTS=1 -DNDEBUG") |
13 | set(CMAKE_CXX_FLAGS_RELEASESSE2 | ||
14 | "-DLL_RELEASE=1 -DLL_RELEASE_FOR_DOWNLOAD=1 -D_SECURE_SCL=0 -DLL_SEND_CRASH_REPORTS=1 -DNDEBUG") | ||
13 | set(CMAKE_CXX_FLAGS_RELWITHDEBINFO | 15 | set(CMAKE_CXX_FLAGS_RELWITHDEBINFO |
14 | "-DLL_RELEASE=1 -D_SECURE_SCL=0 -DLL_SEND_CRASH_REPORTS=0 -DNDEBUG -DLL_RELEASE_WITH_DEBUG_INFO=1") | 16 | "-DLL_RELEASE=1 -D_SECURE_SCL=0 -DLL_SEND_CRASH_REPORTS=0 -DNDEBUG -DLL_RELEASE_WITH_DEBUG_INFO=1") |
15 | 17 | ||
@@ -17,7 +19,7 @@ set(CMAKE_CXX_FLAGS_RELWITHDEBINFO | |||
17 | # Available build types / configurations. | 19 | # Available build types / configurations. |
18 | # Add our current build type first, to coax Xcode into selecting it by default. | 20 | # Add our current build type first, to coax Xcode into selecting it by default. |
19 | 21 | ||
20 | set(TYPES ${CMAKE_BUILD_TYPE} RelWithDebInfo Release Debug) | 22 | set(TYPES ${CMAKE_BUILD_TYPE} RelWithDebInfo Release ReleaseSSE2 Debug) |
21 | list(REMOVE_DUPLICATES TYPES) | 23 | list(REMOVE_DUPLICATES TYPES) |
22 | set(CMAKE_CONFIGURATION_TYPES ${TYPES} CACHE STRING "Supported build types." FORCE) | 24 | set(CMAKE_CONFIGURATION_TYPES ${TYPES} CACHE STRING "Supported build types." FORCE) |
23 | unset(TYPES) | 25 | unset(TYPES) |
@@ -44,12 +46,18 @@ if (WINDOWS) | |||
44 | CACHE STRING "C++ compiler release-with-debug options" FORCE) | 46 | CACHE STRING "C++ compiler release-with-debug options" FORCE) |
45 | if (MSVC80) | 47 | if (MSVC80) |
46 | set(CMAKE_CXX_FLAGS_RELEASE | 48 | set(CMAKE_CXX_FLAGS_RELEASE |
47 | "${CMAKE_CXX_FLAGS_RELEASE} /O2 /Ob2 /Oi /Ot /GT /Zi /MD" | 49 | "${CMAKE_CXX_FLAGS_RELEASE} /O2 /Ob2 /Oi /Ot /GT /Zi /MD" |
48 | CACHE STRING "C++ compiler release options" FORCE) | 50 | CACHE STRING "C++ compiler release options" FORCE) |
51 | set(CMAKE_CXX_FLAGS_RELEASESSE2 | ||
52 | "${CMAKE_CXX_FLAGS_RELEASESSE2} /O2 /Ob2 /Oi /Ot /GT /Zi /MD /arch:SSE2" | ||
53 | CACHE STRING "C++ compiler release (SSE2 optimized) options" FORCE) | ||
49 | else (MSVC80) | 54 | else (MSVC80) |
50 | set(CMAKE_CXX_FLAGS_RELEASE | 55 | set(CMAKE_CXX_FLAGS_RELEASE |
51 | "${CMAKE_CXX_FLAGS_RELEASE} ${LL_CXX_FLAGS} /O2 /Zi /MD" | 56 | "${CMAKE_CXX_FLAGS_RELEASE} ${LL_CXX_FLAGS} /O2 /Zi /MD" |
52 | CACHE STRING "C++ compiler release options" FORCE) | 57 | CACHE STRING "C++ compiler release options" FORCE) |
58 | set(CMAKE_CXX_FLAGS_RELEASESSE2 | ||
59 | "${CMAKE_CXX_FLAGS_RELEASESSE2} ${LL_CXX_FLAGS} /O2 /Zi /MD /arch:SSE2" | ||
60 | CACHE STRING "C++ compiler release (SSE2 optimized) options" FORCE) | ||
53 | endif (MSVC80) | 61 | endif (MSVC80) |
54 | 62 | ||
55 | set(CMAKE_CXX_STANDARD_LIBRARIES "") | 63 | set(CMAKE_CXX_STANDARD_LIBRARIES "") |
@@ -77,6 +85,9 @@ if (WINDOWS) | |||
77 | set(CMAKE_CXX_FLAGS_RELEASE | 85 | set(CMAKE_CXX_FLAGS_RELEASE |
78 | "${CMAKE_CXX_FLAGS_RELEASE} -D_SECURE_STL=0 -D_HAS_ITERATOR_DEBUGGING=0" | 86 | "${CMAKE_CXX_FLAGS_RELEASE} -D_SECURE_STL=0 -D_HAS_ITERATOR_DEBUGGING=0" |
79 | CACHE STRING "C++ compiler release options" FORCE) | 87 | CACHE STRING "C++ compiler release options" FORCE) |
88 | set(CMAKE_CXX_FLAGS_RELEASESSE2 | ||
89 | "${CMAKE_CXX_FLAGS_RELEASESSE2} -D_SECURE_STL=0 -D_HAS_ITERATOR_DEBUGGING=0" | ||
90 | CACHE STRING "C++ compiler release (SSE2 optimized) options" FORCE) | ||
80 | 91 | ||
81 | add_definitions( | 92 | add_definitions( |
82 | /Zc:wchar_t- | 93 | /Zc:wchar_t- |
@@ -195,10 +206,12 @@ if (LINUX) | |||
195 | add_definitions(-DLINUX64=1 -pipe) | 206 | add_definitions(-DLINUX64=1 -pipe) |
196 | set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -fomit-frame-pointer -mmmx -msse -mfpmath=sse -msse2 -ffast-math -ftree-vectorize -fweb -fexpensive-optimizations -frename-registers") | 207 | set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -fomit-frame-pointer -mmmx -msse -mfpmath=sse -msse2 -ffast-math -ftree-vectorize -fweb -fexpensive-optimizations -frename-registers") |
197 | endif (${ARCH} STREQUAL "x86_64") | 208 | endif (${ARCH} STREQUAL "x86_64") |
209 | set(CMAKE_CXX_FLAGS_RELEASESSE2 "${CMAKE_CXX_FLAGS_RELEASESSE2} -mfpmath=sse2 -msse2") | ||
198 | endif (VIEWER) | 210 | endif (VIEWER) |
199 | 211 | ||
200 | set(CMAKE_CXX_FLAGS_DEBUG "-fno-inline ${CMAKE_CXX_FLAGS_DEBUG}") | 212 | set(CMAKE_CXX_FLAGS_DEBUG "-fno-inline ${CMAKE_CXX_FLAGS_DEBUG}") |
201 | set(CMAKE_CXX_FLAGS_RELEASE "-O2 ${CMAKE_CXX_FLAGS_RELEASE}") | 213 | set(CMAKE_CXX_FLAGS_RELEASE "-O2 ${CMAKE_CXX_FLAGS_RELEASE}") |
214 | set(CMAKE_CXX_FLAGS_RELEASESSE2 "-O2 ${CMAKE_CXX_FLAGS_RELEASESSE2}") | ||
202 | endif (LINUX) | 215 | endif (LINUX) |
203 | 216 | ||
204 | 217 | ||
@@ -217,6 +230,8 @@ if (DARWIN) | |||
217 | # NOTE: it's critical to have both CXX_FLAGS and C_FLAGS covered. | 230 | # NOTE: it's critical to have both CXX_FLAGS and C_FLAGS covered. |
218 | set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O0 ${CMAKE_CXX_FLAGS_RELWITHDEBINFO}") | 231 | set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O0 ${CMAKE_CXX_FLAGS_RELWITHDEBINFO}") |
219 | set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O0 ${CMAKE_C_FLAGS_RELWITHDEBINFO}") | 232 | set(CMAKE_C_FLAGS_RELWITHDEBINFO "-O0 ${CMAKE_C_FLAGS_RELWITHDEBINFO}") |
233 | set(CMAKE_CXX_FLAGS_RELEASESSE2 "-msse2 -mfpmath=sse ${CMAKE_CXX_FLAGS_RELEASESSE2}") | ||
234 | set(CMAKE_C_FLAGS_RELEASESSE2 "-msse2 -mfpmath=sse ${CMAKE_C_FLAGS_RELEASESSE2}") | ||
220 | endif (DARWIN) | 235 | endif (DARWIN) |
221 | 236 | ||
222 | 237 | ||
@@ -269,3 +284,17 @@ endif (STANDALONE) | |||
269 | if(SERVER) | 284 | if(SERVER) |
270 | include_directories(${LIBS_PREBUILT_DIR}/include/havok) | 285 | include_directories(${LIBS_PREBUILT_DIR}/include/havok) |
271 | endif(SERVER) | 286 | endif(SERVER) |
287 | |||
288 | SET(CMAKE_EXE_LINKER_FLAGS_RELEASESSE2 | ||
289 | "${CMAKE_EXE_LINKER_FLAGS_RELEASE}" CACHE STRING | ||
290 | "Flags used for linking binaries under SSE2 optimized build." | ||
291 | FORCE ) | ||
292 | SET(CMAKE_SHARED_LINKER_FLAGS_RELEASESSE2 | ||
293 | "${CMAKE_SHARED_LINKER_FLAGS_RELEASE}" CACHE STRING | ||
294 | "Flags used by the shared libraries linker under SSE2 optimized build." | ||
295 | FORCE ) | ||
296 | MARK_AS_ADVANCED( | ||
297 | CMAKE_CXX_FLAGS_RELEASESSE2 | ||
298 | CMAKE_C_FLAGS_RELEASESSE2 | ||
299 | CMAKE_EXE_LINKER_FLAGS_RELEASESSE2 | ||
300 | CMAKE_SHARED_LINKER_FLAGS_RELEASESSE2 ) | ||
diff --git a/linden/indra/cmake/CopyWinLibs.cmake b/linden/indra/cmake/CopyWinLibs.cmake index e7f1aa3..36f99aa 100644 --- a/linden/indra/cmake/CopyWinLibs.cmake +++ b/linden/indra/cmake/CopyWinLibs.cmake | |||
@@ -177,6 +177,15 @@ copy_if_different( | |||
177 | ) | 177 | ) |
178 | set(all_targets ${all_targets} ${out_targets}) | 178 | set(all_targets ${all_targets} ${out_targets}) |
179 | 179 | ||
180 | |||
181 | copy_if_different( | ||
182 | ${plugintest_release_src_dir} | ||
183 | "${CMAKE_CURRENT_BINARY_DIR}/../test_apps/llplugintest/ReleaseSSE2" | ||
184 | out_targets | ||
185 | ${plugintest_release_files} | ||
186 | ) | ||
187 | set(all_targets ${all_targets} ${out_targets}) | ||
188 | |||
180 | # Release & ReleaseDebInfo config runtime files required for the plugin test mule (Qt image format plugins) | 189 | # Release & ReleaseDebInfo config runtime files required for the plugin test mule (Qt image format plugins) |
181 | set(plugintest_release_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/release/imageformats") | 190 | set(plugintest_release_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/release/imageformats") |
182 | set(plugintest_release_files | 191 | set(plugintest_release_files |
@@ -205,6 +214,14 @@ set(all_targets ${all_targets} ${out_targets}) | |||
205 | 214 | ||
206 | copy_if_different( | 215 | copy_if_different( |
207 | ${plugintest_release_src_dir} | 216 | ${plugintest_release_src_dir} |
217 | "${CMAKE_CURRENT_BINARY_DIR}/../test_apps/llplugintest/ReleaseSSE2/imageformats" | ||
218 | out_targets | ||
219 | ${plugintest_release_files} | ||
220 | ) | ||
221 | set(all_targets ${all_targets} ${out_targets}) | ||
222 | |||
223 | copy_if_different( | ||
224 | ${plugintest_release_src_dir} | ||
208 | "${CMAKE_CURRENT_BINARY_DIR}/Release/llplugin/imageformats" | 225 | "${CMAKE_CURRENT_BINARY_DIR}/Release/llplugin/imageformats" |
209 | out_targets | 226 | out_targets |
210 | ${plugintest_release_files} | 227 | ${plugintest_release_files} |
@@ -219,6 +236,14 @@ copy_if_different( | |||
219 | ) | 236 | ) |
220 | set(all_targets ${all_targets} ${out_targets}) | 237 | set(all_targets ${all_targets} ${out_targets}) |
221 | 238 | ||
239 | copy_if_different( | ||
240 | ${plugintest_release_src_dir} | ||
241 | "${CMAKE_CURRENT_BINARY_DIR}/ReleaseSSE2/llplugin/imageformats" | ||
242 | out_targets | ||
243 | ${plugintest_release_files} | ||
244 | ) | ||
245 | set(all_targets ${all_targets} ${out_targets}) | ||
246 | |||
222 | # Debug config runtime files required for the plugins | 247 | # Debug config runtime files required for the plugins |
223 | set(plugins_debug_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/debug") | 248 | set(plugins_debug_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/debug") |
224 | set(plugins_debug_files | 249 | set(plugins_debug_files |
@@ -267,6 +292,14 @@ copy_if_different( | |||
267 | ) | 292 | ) |
268 | set(all_targets ${all_targets} ${out_targets}) | 293 | set(all_targets ${all_targets} ${out_targets}) |
269 | 294 | ||
295 | copy_if_different( | ||
296 | ${plugins_release_src_dir} | ||
297 | "${CMAKE_CURRENT_BINARY_DIR}/ReleaseSSE2/llplugin" | ||
298 | out_targets | ||
299 | ${plugins_release_files} | ||
300 | ) | ||
301 | set(all_targets ${all_targets} ${out_targets}) | ||
302 | |||
270 | set(release_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/release") | 303 | set(release_src_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/release") |
271 | set(release_files | 304 | set(release_files |
272 | alut.dll | 305 | alut.dll |
@@ -364,14 +397,15 @@ copy_if_different( | |||
364 | set(all_targets ${all_targets} ${out_targets}) | 397 | set(all_targets ${all_targets} ${out_targets}) |
365 | 398 | ||
366 | copy_if_different( | 399 | copy_if_different( |
367 | ${vivox_src_dir} | 400 | ${release_src_dir} |
368 | "${CMAKE_CURRENT_BINARY_DIR}/RelWithDebInfo" | 401 | "${CMAKE_CURRENT_BINARY_DIR}/ReleaseSSE2" |
369 | out_targets | 402 | out_targets |
370 | ${vivox_files} | 403 | ${release_files} |
371 | ) | 404 | ) |
372 | set(all_targets ${all_targets} ${out_targets}) | 405 | set(all_targets ${all_targets} ${out_targets}) |
373 | 406 | ||
374 | 407 | ||
408 | |||
375 | # Copy MS C runtime dlls, required for packaging. | 409 | # Copy MS C runtime dlls, required for packaging. |
376 | # We always need the VS 2005 redist. | 410 | # We always need the VS 2005 redist. |
377 | # *TODO - Adapt this to support VC9 | 411 | # *TODO - Adapt this to support VC9 |
@@ -442,6 +476,14 @@ if(EXISTS ${release_msvc8_redist_path}) | |||
442 | ) | 476 | ) |
443 | set(all_targets ${all_targets} ${out_targets}) | 477 | set(all_targets ${all_targets} ${out_targets}) |
444 | 478 | ||
479 | copy_if_different( | ||
480 | ${release_msvc8_redist_path} | ||
481 | "${CMAKE_CURRENT_BINARY_DIR}/ReleaseSSE2" | ||
482 | out_targets | ||
483 | ${release_msvc8_files} | ||
484 | ) | ||
485 | set(all_targets ${all_targets} ${out_targets}) | ||
486 | |||
445 | set(release_appconfig_file ${CMAKE_CURRENT_BINARY_DIR}/Release/${VIEWER_BINARY_NAME}.exe.config) | 487 | set(release_appconfig_file ${CMAKE_CURRENT_BINARY_DIR}/Release/${VIEWER_BINARY_NAME}.exe.config) |
446 | add_custom_command( | 488 | add_custom_command( |
447 | OUTPUT ${release_appconfig_file} | 489 | OUTPUT ${release_appconfig_file} |
@@ -455,6 +497,20 @@ if(EXISTS ${release_msvc8_redist_path}) | |||
455 | COMMENT "Creating release app config file" | 497 | COMMENT "Creating release app config file" |
456 | ) | 498 | ) |
457 | 499 | ||
500 | |||
501 | set(releasesse2_appconfig_file ${CMAKE_CURRENT_BINARY_DIR}/ReleaseSSE2/${VIEWER_BINARY_NAME}.exe.config) | ||
502 | add_custom_command( | ||
503 | OUTPUT ${releasesse2_appconfig_file} | ||
504 | COMMAND ${PYTHON_EXECUTABLE} | ||
505 | ARGS | ||
506 | ${CMAKE_CURRENT_SOURCE_DIR}/build_win32_appConfig.py | ||
507 | ${CMAKE_CURRENT_BINARY_DIR}/ReleaseSSE2/Microsoft.VC80.CRT.manifest | ||
508 | ${CMAKE_CURRENT_SOURCE_DIR}/meta-impy.exe.config | ||
509 | ${releasesse2_appconfig_file} | ||
510 | DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/ReleaseSSE2/Microsoft.VC80.CRT.manifest | ||
511 | COMMENT "Creating release (SSE2 optimized) app config file" | ||
512 | ) | ||
513 | |||
458 | set(relwithdebinfo_appconfig_file ${CMAKE_CURRENT_BINARY_DIR}/RelWithDebInfo/${VIEWER_BINARY_NAME}.exe.config) | 514 | set(relwithdebinfo_appconfig_file ${CMAKE_CURRENT_BINARY_DIR}/RelWithDebInfo/${VIEWER_BINARY_NAME}.exe.config) |
459 | add_custom_command( | 515 | add_custom_command( |
460 | OUTPUT ${relwithdebinfo_appconfig_file} | 516 | OUTPUT ${relwithdebinfo_appconfig_file} |
@@ -467,13 +523,14 @@ if(EXISTS ${release_msvc8_redist_path}) | |||
467 | DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/RelWithDebInfo/Microsoft.VC80.CRT.manifest | 523 | DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/RelWithDebInfo/Microsoft.VC80.CRT.manifest |
468 | COMMENT "Creating relwithdebinfo app config file" | 524 | COMMENT "Creating relwithdebinfo app config file" |
469 | ) | 525 | ) |
470 | 526 | ||
471 | endif (EXISTS ${release_msvc8_redist_path}) | 527 | endif (EXISTS ${release_msvc8_redist_path}) |
472 | 528 | ||
473 | add_custom_target(copy_win_libs ALL | 529 | add_custom_target(copy_win_libs ALL |
474 | DEPENDS | 530 | DEPENDS |
475 | ${all_targets} | 531 | ${all_targets} |
476 | ${release_appconfig_file} | 532 | ${release_appconfig_file} |
533 | ${releasesse2_appconfig_file} | ||
477 | ${relwithdebinfo_appconfig_file} | 534 | ${relwithdebinfo_appconfig_file} |
478 | ${debug_appconfig_file} | 535 | ${debug_appconfig_file} |
479 | ) | 536 | ) |