diff --git a/autobuild.xml b/autobuild.xml index 54a92a20798fb8156509b76d6a390e1ec623358b..45577e037398e1803281a5d7b10df4929bc73f49 100644 --- a/autobuild.xml +++ b/autobuild.xml @@ -1472,6 +1472,38 @@ <key>version</key> <string>1.0</string> </map> + <key>llphysicsextensions_tpv</key> + <map> + <key>copyright</key> + <string>Copyright (c) 2010, Linden Research, Inc.</string> + <key>license</key> + <string>commercial</string> + <key>license_file</key> + <string>LICENSES/llphysicsextensions.txt</string> + <key>name</key> + <string>llphysicsextensions_tpv</string> + <key>platforms</key> + <map> + <key>windows64</key> + <map> + <key>archive</key> + <map> + <key>hash</key> + <string>9c39018c783443ee4b4eb368c937aeb3</string> + <key>hash_algorithm</key> + <string>md5</string> + <key>url</key> + <string>file://c:/bld/havok/llphysicsextensions_tpv-1.0.571939-windows64-571939.tar.bz2</string> + </map> + <key>name</key> + <string>windows64</string> + </map> + </map> + <key>source_type</key> + <string>hg</string> + <key>version</key> + <string>1.0.571939</string> + </map> <key>minizip-ng</key> <map> <key>canonical_repo</key> diff --git a/indra/cmake/00-Common.cmake b/indra/cmake/00-Common.cmake index 87c10b8f033eb2752d793023091b2df13cd32bf4..2160d7230bc72124ab161ebb23f67c518cab2795 100644 --- a/indra/cmake/00-Common.cmake +++ b/indra/cmake/00-Common.cmake @@ -356,6 +356,10 @@ else() add_definitions(-URELEASE_SHOW_ASSERT) endif() +if(HAVOK_TPV) + add_definitions(-DHAVOK_BUILD=1) +endif(HAVOK_TPV) + option(ENABLE_TIMING "Enable all fast timers" ON) if(ENABLE_TIMING) add_definitions(-DAL_ENABLE_ALL_TIMERS=1) diff --git a/indra/llcommon/lluuid.h b/indra/llcommon/lluuid.h index 165c8a071a14129ee24d634277020add656fe700..78c4bd52c670fe65b65bdcafd068a96628461f63 100644 --- a/indra/llcommon/lluuid.h +++ b/indra/llcommon/lluuid.h @@ -58,9 +58,15 @@ class LL_COMMON_API LLUUID // CREATORS // LLUUID() = default; +#if HAVOK_BUILD + LLUUID(const LLUUID& rhs) { memcpy(mData, rhs.mData, UUID_BYTES); } + ~LLUUID() {} +#endif explicit LLUUID(const char *in_string); // Convert from string. explicit LLUUID(const std::string_view in_string); // Convert from string. + + // // MANIPULATORS // @@ -265,9 +271,11 @@ class LL_COMMON_API LLUUID U8 mData[UUID_BYTES] = {}; }; +#ifndef HAVOK_BUILD static_assert(std::is_trivially_copyable<LLUUID>::value, "LLUUID must be trivial copy"); static_assert(std::is_trivially_move_assignable<LLUUID>::value, "LLUUID must be trivial move"); static_assert(std::is_standard_layout<LLUUID>::value, "LLUUID must be a standard layout type"); +#endif typedef std::vector<LLUUID> uuid_vec_t; typedef std::set<LLUUID> uuid_set_t;