mirror of
https://port.numenaute.org/aleajactaest/khanat-opennel-code.git
synced 2024-12-27 11:20:54 +00:00
Merge with develop
--HG-- branch : compatibility-develop
This commit is contained in:
commit
a1ee429b92
7 changed files with 234 additions and 222 deletions
|
@ -304,9 +304,6 @@ void CFontManager::computeStringInfo ( const ucstring &s,
|
|||
// ***************************************************************************
|
||||
string CFontManager::getCacheInformation() const
|
||||
{
|
||||
// stringstream ss;
|
||||
// ss << "MaxMemory: " << (uint) _MaxMemory << " MemSize: " << (uint) _MemSize << " NbChar: " << (uint) _NbChar;
|
||||
// return ss.str();
|
||||
string str;
|
||||
str = "MaxMemory: " + NLMISC::toString(_MaxMemory) + " MemSize: " + NLMISC::toString(_MemSize) + " NbChar: " + NLMISC::toString(_NbChar);
|
||||
return str;
|
||||
|
|
|
@ -2163,13 +2163,11 @@ uint8 CBitmap::readTGA( NLMISC::IStream &f)
|
|||
|
||||
// Determining whether file is in Original or New TGA format
|
||||
|
||||
bool newTgaFormat;
|
||||
uint32 extAreaOffset;
|
||||
uint32 devDirectoryOffset;
|
||||
char signature[16];
|
||||
|
||||
f.seek (0, f.end);
|
||||
newTgaFormat = false;
|
||||
if (f.getPos() >= 26)
|
||||
{
|
||||
f.seek (-26, f.end);
|
||||
|
@ -2179,8 +2177,6 @@ uint8 CBitmap::readTGA( NLMISC::IStream &f)
|
|||
{
|
||||
f.serial(signature[i]);
|
||||
}
|
||||
if(strncmp(signature,"TRUEVISION-XFILE",16)==0)
|
||||
newTgaFormat = true;
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -37,11 +37,10 @@ SOURCE_GROUP(QtGeneratedMocQrcSrc FILES ${CRASHREPORT_MOC_SRC})
|
|||
SOURCE_GROUP("source files" FILES ${CRASHREPORT_SRC})
|
||||
SOURCE_GROUP("header files" FILES ${CRASHREPORT_HDR})
|
||||
|
||||
ADD_EXECUTABLE(crash_report WIN32 MACOSX_BUNDLE ${CRASHREPORT_SRC} ${CRASHREPORT_HDR} ${CRASHREPORT_MOC_SRC} ${CRASHREPORT_UI_HDR})
|
||||
ADD_EXECUTABLE(crash_report WIN32 ${CRASHREPORT_SRC} ${CRASHREPORT_HDR} ${CRASHREPORT_MOC_SRC} ${CRASHREPORT_UI_HDR})
|
||||
TARGET_LINK_LIBRARIES(crash_report ${QT_LIBRARIES})
|
||||
|
||||
NL_DEFAULT_PROPS(crash_report "NeL, Tools, Misc: Crash Report")
|
||||
NL_ADD_RUNTIME_FLAGS(crash_report)
|
||||
|
||||
INSTALL(TARGETS crash_report RUNTIME DESTINATION ${NL_BIN_PREFIX})
|
||||
|
||||
|
|
|
@ -2,175 +2,173 @@
|
|||
ADD_SUBDIRECTORY(client_sheets)
|
||||
|
||||
IF(WITH_RYZOM_CLIENT)
|
||||
# These are Windows/MFC apps
|
||||
SET(SEVENZIP_LIBRARY "ryzom_sevenzip")
|
||||
|
||||
# These are Windows/MFC apps
|
||||
SET(SEVENZIP_LIBRARY "ryzom_sevenzip")
|
||||
ADD_SUBDIRECTORY(seven_zip)
|
||||
|
||||
ADD_SUBDIRECTORY(seven_zip)
|
||||
# Patch should never be enabled on Steam
|
||||
IF(WITH_RYZOM_PATCH AND NOT WITH_RYZOM_STEAM)
|
||||
ADD_DEFINITIONS(-DRZ_USE_PATCH)
|
||||
|
||||
# Patch should never be enabled on Steam
|
||||
IF(WITH_RYZOM_PATCH AND NOT WITH_RYZOM_STEAM)
|
||||
ADD_DEFINITIONS(-DRZ_USE_PATCH)
|
||||
|
||||
IF(WITH_RYZOM_CUSTOM_PATCH_SERVER)
|
||||
ADD_DEFINITIONS(-DRZ_USE_CUSTOM_PATCH_SERVER)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
FILE(GLOB CFG ../*.cfg)
|
||||
FILE(GLOB SRC *.cpp *.h motion/*.cpp motion/*.h client.rc)
|
||||
FILE(GLOB SRC_INTERFACE interface_v3/*.h interface_v3/*.cpp)
|
||||
FILE(GLOB SRC_MODE motion/modes/*.cpp motion/modes/*.h)
|
||||
FILE(GLOB SRC_R2 r2/*.h r2/*.cpp r2/dmc/*.h r2/dmc/*.cpp)
|
||||
|
||||
# Filter out the source files not actually compiled.
|
||||
LIST(REMOVE_ITEM SRC
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/animated_scene_object.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/animated_scene_object.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/animation_fx_sheet.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/animation_fx_sheet.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/3d_notes.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/3d_notes.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/rosace_functions.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/rosace_functions.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/scene_parser.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/scene_parser.h)
|
||||
LIST(REMOVE_ITEM SRC_MODE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/motion/modes/free_head.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/motion/modes/free_head.h)
|
||||
LIST(REMOVE_ITEM SRC_INTERFACE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/interface_v3/lua_dll.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/interface_v3/lua_dll.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/interface_v3/view_bitmap_progress.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/interface_v3/view_bitmap_progress.h)
|
||||
|
||||
SOURCE_GROUP("" FILES ${SRC})
|
||||
SOURCE_GROUP("cfg" FILES ${CFG})
|
||||
SOURCE_GROUP("interface_v3" FILES ${SRC_INTERFACE})
|
||||
SOURCE_GROUP("mode" FILES ${SRC_MODE})
|
||||
SOURCE_GROUP("r2" FILES ${SRC_R2})
|
||||
|
||||
# on Mac, create a .App Bundle
|
||||
if(APPLE)
|
||||
SET(MACOSX_BUNDLE_INFO_STRING "Ryzom")
|
||||
SET(MACOSX_BUNDLE_ICON_FILE "ryzom.icns")
|
||||
SET(MACOSX_BUNDLE_GUI_IDENTIFIER "com.winchgate.Ryzom")
|
||||
SET(MACOSX_BUNDLE_LONG_VERSION_STRING ${RYZOM_VERSION})
|
||||
SET(MACOSX_BUNDLE_BUNDLE_NAME "Ryzom")
|
||||
SET(MACOSX_BUNDLE_SHORT_VERSION_STRING ${RYZOM_VERSION})
|
||||
SET(MACOSX_BUNDLE_BUNDLE_VERSION "1.0")
|
||||
SET(MACOSX_BUNDLE_COPYRIGHT ${COPYRIGHT})
|
||||
SET(RYZOM_OUTPUT_DIR ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${MACOSX_BUNDLE_BUNDLE_NAME}.app)
|
||||
SET(RYZOM_CONTENTS_DIR ${RYZOM_OUTPUT_DIR}/Contents)
|
||||
SET(RYZOM_RESOURCES_DIR ${RYZOM_CONTENTS_DIR}/Resources)
|
||||
SET(MAC_RESOURCES_DIR ${CMAKE_SOURCE_DIR}/ryzom/client/macosx)
|
||||
ENDIF()
|
||||
|
||||
ADD_EXECUTABLE(ryzom_client WIN32 MACOSX_BUNDLE ${SRC} ${SRC_INTERFACE} ${SRC_MODE} ${SRC_R2})
|
||||
|
||||
IF(APPLE)
|
||||
SET_TARGET_PROPERTIES(ryzom_client PROPERTIES OUTPUT_NAME ${MACOSX_BUNDLE_BUNDLE_NAME})
|
||||
SET_TARGET_PROPERTIES(ryzom_client PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${MAC_RESOURCES_DIR}/Info.plist)
|
||||
ADD_CUSTOM_COMMAND(TARGET ryzom_client PRE_BUILD COMMAND mkdir -p ${RYZOM_RESOURCES_DIR})
|
||||
ADD_CUSTOM_COMMAND(TARGET ryzom_client POST_BUILD COMMAND cp ARGS -p ${MAC_RESOURCES_DIR}/PkgInfo ${RYZOM_CONTENTS_DIR})
|
||||
ADD_CUSTOM_COMMAND(TARGET ryzom_client POST_BUILD COMMAND cp ARGS -p ${MAC_RESOURCES_DIR}/ryzom.icns ${RYZOM_RESOURCES_DIR})
|
||||
ADD_CUSTOM_COMMAND(TARGET ryzom_client POST_BUILD COMMAND cp ARGS -p ${CMAKE_SOURCE_DIR}/ryzom/client/client_default.cfg ${RYZOM_RESOURCES_DIR})
|
||||
|
||||
IF(RYZOM_DATA_DIR)
|
||||
ADD_CUSTOM_COMMAND(TARGET ryzom_client POST_BUILD COMMAND cp ARGS -RpX ${RYZOM_DATA_DIR} ${RYZOM_RESOURCES_DIR})
|
||||
ENDIF()
|
||||
|
||||
IF(APPLE_CERTIFICATE)
|
||||
# Find codesign_allocate
|
||||
|
||||
# Xcode 7.0 and later versions
|
||||
SET(CODESIGN_ALLOCATE ${OSX_DEVELOPER_ROOT}/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate)
|
||||
|
||||
IF(NOT EXISTS "${CODESIGN_ALLOCATE}")
|
||||
# Xcode 6.4 and previous versions
|
||||
SET(CODESIGN_ALLOCATE ${CMAKE_OSX_SYSROOT}/usr/bin/codesign_allocate)
|
||||
ENDIF()
|
||||
|
||||
IF(NOT EXISTS "${CODESIGN_ALLOCATE}")
|
||||
# System path
|
||||
SET(CODESIGN_ALLOCATE /usr/bin/codesign_allocate)
|
||||
ENDIF()
|
||||
|
||||
IF(NOT EXISTS "${CODESIGN_ALLOCATE}")
|
||||
MESSAGE(WARNING "Unable to find codesign_allocate in standard directories")
|
||||
ELSE()
|
||||
ADD_CUSTOM_COMMAND(TARGET ryzom_client POST_BUILD COMMAND CODESIGN_ALLOCATE=${CODESIGN_ALLOCATE} codesign -fs "${APPLE_CERTIFICATE}" "${RYZOM_OUTPUT_DIR}" COMMENT "Signing bundle...")
|
||||
IF(WITH_RYZOM_CUSTOM_PATCH_SERVER)
|
||||
ADD_DEFINITIONS(-DRZ_USE_CUSTOM_PATCH_SERVER)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
IF(WITH_RYZOM_STEAM)
|
||||
ADD_CUSTOM_COMMAND(TARGET ryzom_client POST_BUILD COMMAND cp ARGS -p ${MAC_RESOURCES_DIR}/installscript_osx.vdf ${RYZOM_OUTPUT_DIR})
|
||||
FILE(GLOB CFG ../*.cfg)
|
||||
FILE(GLOB SRC *.cpp *.h motion/*.cpp motion/*.h client.rc)
|
||||
FILE(GLOB SRC_INTERFACE interface_v3/*.h interface_v3/*.cpp)
|
||||
FILE(GLOB SRC_MODE motion/modes/*.cpp motion/modes/*.h)
|
||||
FILE(GLOB SRC_R2 r2/*.h r2/*.cpp r2/dmc/*.h r2/dmc/*.cpp)
|
||||
|
||||
# Filter out the source files not actually compiled.
|
||||
LIST(REMOVE_ITEM SRC
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/animated_scene_object.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/animated_scene_object.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/animation_fx_sheet.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/animation_fx_sheet.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/3d_notes.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/3d_notes.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/rosace_functions.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/rosace_functions.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/scene_parser.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/scene_parser.h)
|
||||
LIST(REMOVE_ITEM SRC_MODE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/motion/modes/free_head.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/motion/modes/free_head.h)
|
||||
LIST(REMOVE_ITEM SRC_INTERFACE
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/interface_v3/lua_dll.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/interface_v3/lua_dll.h
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/interface_v3/view_bitmap_progress.cpp
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/interface_v3/view_bitmap_progress.h)
|
||||
|
||||
SOURCE_GROUP("" FILES ${SRC})
|
||||
SOURCE_GROUP("cfg" FILES ${CFG})
|
||||
SOURCE_GROUP("interface_v3" FILES ${SRC_INTERFACE})
|
||||
SOURCE_GROUP("mode" FILES ${SRC_MODE})
|
||||
SOURCE_GROUP("r2" FILES ${SRC_R2})
|
||||
|
||||
# on Mac, create a .App Bundle
|
||||
if(APPLE)
|
||||
SET(MACOSX_BUNDLE_INFO_STRING "Ryzom")
|
||||
SET(MACOSX_BUNDLE_ICON_FILE "ryzom.icns")
|
||||
SET(MACOSX_BUNDLE_GUI_IDENTIFIER "com.winchgate.Ryzom")
|
||||
SET(MACOSX_BUNDLE_LONG_VERSION_STRING ${RYZOM_VERSION})
|
||||
SET(MACOSX_BUNDLE_BUNDLE_NAME "Ryzom")
|
||||
SET(MACOSX_BUNDLE_SHORT_VERSION_STRING ${RYZOM_VERSION})
|
||||
SET(MACOSX_BUNDLE_BUNDLE_VERSION "1.0")
|
||||
SET(MACOSX_BUNDLE_COPYRIGHT ${COPYRIGHT})
|
||||
SET(RYZOM_OUTPUT_DIR ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${MACOSX_BUNDLE_BUNDLE_NAME}.app)
|
||||
SET(RYZOM_CONTENTS_DIR ${RYZOM_OUTPUT_DIR}/Contents)
|
||||
SET(RYZOM_RESOURCES_DIR ${RYZOM_CONTENTS_DIR}/Resources)
|
||||
SET(MAC_RESOURCES_DIR ${CMAKE_SOURCE_DIR}/ryzom/client/macosx)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
INCLUDE_DIRECTORIES(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${LIBXML2_INCLUDE_DIR}
|
||||
${LUA_INCLUDE_DIR}
|
||||
${LUABIND_INCLUDE_DIR}
|
||||
${CURL_INCLUDE_DIRS}
|
||||
${ZLIB_INCLUDE_DIR}
|
||||
)
|
||||
ADD_EXECUTABLE(ryzom_client WIN32 MACOSX_BUNDLE ${SRC} ${SRC_INTERFACE} ${SRC_MODE} ${SRC_R2})
|
||||
|
||||
TARGET_LINK_LIBRARIES(ryzom_client
|
||||
nelmisc
|
||||
nelnet
|
||||
nelligo
|
||||
nelgeorges
|
||||
nel3d
|
||||
nelgui
|
||||
nelsound
|
||||
ryzom_clientsheets
|
||||
ryzom_gameshare
|
||||
nelpacs
|
||||
${LIBXML2_LIBRARIES}
|
||||
${LUA_LIBRARIES}
|
||||
${LUABIND_LIBRARIES}
|
||||
${CURL_LIBRARIES}
|
||||
${SEVENZIP_LIBRARY}
|
||||
)
|
||||
IF(APPLE)
|
||||
SET_TARGET_PROPERTIES(ryzom_client PROPERTIES OUTPUT_NAME ${MACOSX_BUNDLE_BUNDLE_NAME})
|
||||
SET_TARGET_PROPERTIES(ryzom_client PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${MAC_RESOURCES_DIR}/Info.plist)
|
||||
ADD_CUSTOM_COMMAND(TARGET ryzom_client PRE_BUILD COMMAND mkdir -p ${RYZOM_RESOURCES_DIR})
|
||||
ADD_CUSTOM_COMMAND(TARGET ryzom_client POST_BUILD COMMAND cp ARGS -p ${MAC_RESOURCES_DIR}/PkgInfo ${RYZOM_CONTENTS_DIR})
|
||||
ADD_CUSTOM_COMMAND(TARGET ryzom_client POST_BUILD COMMAND cp ARGS -p ${MAC_RESOURCES_DIR}/ryzom.icns ${RYZOM_RESOURCES_DIR})
|
||||
ADD_CUSTOM_COMMAND(TARGET ryzom_client POST_BUILD COMMAND cp ARGS -p ${CMAKE_SOURCE_DIR}/ryzom/client/client_default.cfg ${RYZOM_RESOURCES_DIR})
|
||||
|
||||
IF(NOT APPLE AND NOT WIN32)
|
||||
TARGET_LINK_LIBRARIES(ryzom_client ${X11_LIBRARIES})
|
||||
ENDIF()
|
||||
IF(RYZOM_DATA_DIR)
|
||||
ADD_CUSTOM_COMMAND(TARGET ryzom_client POST_BUILD COMMAND cp ARGS -RpX ${RYZOM_DATA_DIR} ${RYZOM_RESOURCES_DIR})
|
||||
ENDIF()
|
||||
|
||||
IF(APPLE)
|
||||
FIND_LIBRARY(FOUNDATION_LIBRARY Foundation)
|
||||
TARGET_LINK_LIBRARIES(ryzom_client ${FOUNDATION_LIBRARY})
|
||||
ENDIF()
|
||||
IF(APPLE_CERTIFICATE)
|
||||
# Find codesign_allocate
|
||||
|
||||
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} ${CURL_DEFINITIONS} ${LUABIND_DEFINITIONS})
|
||||
# Xcode 7.0 and later versions
|
||||
SET(CODESIGN_ALLOCATE ${OSX_DEVELOPER_ROOT}/Toolchains/XcodeDefault.xctoolchain/usr/bin/codesign_allocate)
|
||||
|
||||
NL_DEFAULT_PROPS(ryzom_client "Ryzom, Client: Ryzom Client")
|
||||
NL_ADD_RUNTIME_FLAGS(ryzom_client)
|
||||
IF(NOT EXISTS "${CODESIGN_ALLOCATE}")
|
||||
# Xcode 6.4 and previous versions
|
||||
SET(CODESIGN_ALLOCATE ${CMAKE_OSX_SYSROOT}/usr/bin/codesign_allocate)
|
||||
ENDIF()
|
||||
|
||||
IF(FINAL_VERSION)
|
||||
NL_ADD_LIB_SUFFIX(ryzom_client)
|
||||
ELSE()
|
||||
IF(WIN32)
|
||||
SET_TARGET_PROPERTIES(ryzom_client PROPERTIES DEBUG_POSTFIX "_dev_d" RELEASE_POSTFIX "_dev_r")
|
||||
IF(NOT EXISTS "${CODESIGN_ALLOCATE}")
|
||||
# System path
|
||||
SET(CODESIGN_ALLOCATE /usr/bin/codesign_allocate)
|
||||
ENDIF()
|
||||
|
||||
IF(NOT EXISTS "${CODESIGN_ALLOCATE}")
|
||||
MESSAGE(WARNING "Unable to find codesign_allocate in standard directories")
|
||||
ELSE()
|
||||
ADD_CUSTOM_COMMAND(TARGET ryzom_client POST_BUILD COMMAND CODESIGN_ALLOCATE=${CODESIGN_ALLOCATE} codesign -fs "${APPLE_CERTIFICATE}" "${RYZOM_OUTPUT_DIR}" COMMENT "Signing bundle...")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
IF(WITH_RYZOM_STEAM)
|
||||
ADD_CUSTOM_COMMAND(TARGET ryzom_client POST_BUILD COMMAND cp ARGS -p ${MAC_RESOURCES_DIR}/installscript_osx.vdf ${RYZOM_OUTPUT_DIR})
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
INCLUDE_DIRECTORIES(
|
||||
${CMAKE_CURRENT_SOURCE_DIR}
|
||||
${LIBXML2_INCLUDE_DIR}
|
||||
${LUA_INCLUDE_DIR}
|
||||
${LUABIND_INCLUDE_DIR}
|
||||
${CURL_INCLUDE_DIRS}
|
||||
${ZLIB_INCLUDE_DIR}
|
||||
)
|
||||
|
||||
TARGET_LINK_LIBRARIES(ryzom_client
|
||||
nelmisc
|
||||
nelnet
|
||||
nelligo
|
||||
nelgeorges
|
||||
nel3d
|
||||
nelgui
|
||||
nelsound
|
||||
ryzom_clientsheets
|
||||
ryzom_gameshare
|
||||
nelpacs
|
||||
${LIBXML2_LIBRARIES}
|
||||
${LUA_LIBRARIES}
|
||||
${LUABIND_LIBRARIES}
|
||||
${CURL_LIBRARIES}
|
||||
${SEVENZIP_LIBRARY}
|
||||
)
|
||||
|
||||
IF(NOT APPLE AND NOT WIN32)
|
||||
TARGET_LINK_LIBRARIES(ryzom_client ${X11_LIBRARIES})
|
||||
ENDIF()
|
||||
|
||||
IF(APPLE)
|
||||
FIND_LIBRARY(FOUNDATION_LIBRARY Foundation)
|
||||
TARGET_LINK_LIBRARIES(ryzom_client ${FOUNDATION_LIBRARY})
|
||||
ENDIF()
|
||||
|
||||
ADD_DEFINITIONS(${LIBXML2_DEFINITIONS} ${CURL_DEFINITIONS} ${LUABIND_DEFINITIONS})
|
||||
|
||||
NL_DEFAULT_PROPS(ryzom_client "Ryzom, Client: Ryzom Client")
|
||||
NL_ADD_RUNTIME_FLAGS(ryzom_client)
|
||||
|
||||
IF(FINAL_VERSION)
|
||||
NL_ADD_LIB_SUFFIX(ryzom_client)
|
||||
ELSE()
|
||||
SET_TARGET_PROPERTIES(ryzom_client PROPERTIES POSTFIX "_dev")
|
||||
IF(WIN32)
|
||||
SET_TARGET_PROPERTIES(ryzom_client PROPERTIES DEBUG_POSTFIX "_dev_d" RELEASE_POSTFIX "_dev_r")
|
||||
ELSE()
|
||||
SET_TARGET_PROPERTIES(ryzom_client PROPERTIES POSTFIX "_dev")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
IF(WITH_RYZOM_CLIENT_UAC)
|
||||
IF(CMAKE_GENERATOR MATCHES "Visual Studio")
|
||||
SET_PROPERTY(TARGET ryzom_client PROPERTY LINK_FLAGS_RELEASE "/level='requireAdministrator'")
|
||||
ELSEIF(CMAKE_GENERATOR MATCHES "NMake Makefiles")
|
||||
SET_PROPERTY(TARGET ryzom_client PROPERTY LINK_FLAGS_RELEASE "/MANIFESTUAC:\"level='requireAdministrator' uiAccess='false'\"")
|
||||
IF(WITH_RYZOM_CLIENT_UAC)
|
||||
IF(CMAKE_GENERATOR MATCHES "Visual Studio")
|
||||
SET_PROPERTY(TARGET ryzom_client PROPERTY LINK_FLAGS_RELEASE "/level='requireAdministrator'")
|
||||
ELSEIF(CMAKE_GENERATOR MATCHES "NMake Makefiles")
|
||||
SET_PROPERTY(TARGET ryzom_client PROPERTY LINK_FLAGS_RELEASE "/MANIFESTUAC:\"level='requireAdministrator' uiAccess='false'\"")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
|
||||
IF(WITH_PCH AND (NOT MINGW OR NOT WITH_SYMBOLS))
|
||||
ADD_NATIVE_PRECOMPILED_HEADER(ryzom_client ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.h ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.cpp)
|
||||
ENDIF()
|
||||
|
||||
INSTALL(TARGETS ryzom_client RUNTIME DESTINATION ${RYZOM_GAMES_PREFIX} COMPONENT client BUNDLE DESTINATION /Applications)
|
||||
IF(WITH_PCH AND (NOT MINGW OR NOT WITH_SYMBOLS))
|
||||
ADD_NATIVE_PRECOMPILED_HEADER(ryzom_client ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.h ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.cpp)
|
||||
ENDIF()
|
||||
|
||||
INSTALL(TARGETS ryzom_client RUNTIME DESTINATION ${RYZOM_GAMES_PREFIX} COMPONENT client BUNDLE DESTINATION /Applications)
|
||||
ENDIF()
|
||||
|
|
|
@ -254,6 +254,43 @@ extern NL3D::UDriver *Driver;
|
|||
extern CRyzomTime RT;
|
||||
extern string Cookie;
|
||||
extern string FSAddr;
|
||||
|
||||
extern uint64 Debug_OldCPUMask;
|
||||
extern uint64 Debug_NewCPUMask;
|
||||
|
||||
// For multi cpu, active only one CPU for the main thread
|
||||
void setCPUMask(uint64 userCPUMask)
|
||||
{
|
||||
uint64 cpuMask = IProcess::getCurrentProcess()->getCPUMask();
|
||||
Debug_OldCPUMask = cpuMask;
|
||||
|
||||
// if user CPU mask is valid
|
||||
if (cpuMask & userCPUMask)
|
||||
{
|
||||
// use it
|
||||
IProcess::getCurrentProcess ()->setCPUMask(cpuMask & userCPUMask);
|
||||
}
|
||||
else
|
||||
{
|
||||
// else get first available CPU
|
||||
|
||||
// get the processor to allow process
|
||||
uint i = 0;
|
||||
while ((i < 64) && ((cpuMask & (UINT64_CONSTANT(1) << i)) == 0))
|
||||
i++;
|
||||
|
||||
// Set the CPU mask
|
||||
if (i < 64)
|
||||
{
|
||||
IProcess::getCurrentProcess ()->setCPUMask(UINT64_CONSTANT(1) << i);
|
||||
}
|
||||
}
|
||||
|
||||
// check
|
||||
cpuMask = IProcess::getCurrentProcess ()->getCPUMask();
|
||||
Debug_NewCPUMask = cpuMask;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/////////////
|
||||
|
@ -1663,6 +1700,22 @@ void CClientConfig::setValues()
|
|||
SetPriorityClass (GetCurrentProcess(), priority[index]);
|
||||
#endif // NL_OS_WINDOWS
|
||||
|
||||
sint cpuMask;
|
||||
|
||||
if (ClientCfg.CPUMask < 1)
|
||||
{
|
||||
CTime::CTimerInfo timerInfo;
|
||||
NLMISC::CTime::probeTimerInfo(timerInfo);
|
||||
|
||||
cpuMask = timerInfo.RequiresSingleCore ? 1:0;
|
||||
}
|
||||
else
|
||||
{
|
||||
cpuMask = ClientCfg.CPUMask;
|
||||
}
|
||||
|
||||
if (cpuMask) setCPUMask(cpuMask);
|
||||
|
||||
// Init Verbose Modes (at the beginning to be able to display them as soon as possible).
|
||||
::VerboseVP = ClientCfg.VerboseVP;
|
||||
::VerboseAnimUser = ClientCfg.VerboseAnimUser;
|
||||
|
|
|
@ -374,30 +374,8 @@ void outOfMemory()
|
|||
nlstopex (("OUT OF MEMORY"));
|
||||
}
|
||||
|
||||
// For multi cpu, active only one CPU for the main thread
|
||||
uint64 Debug_OldCPUMask= 0;
|
||||
uint64 Debug_NewCPUMask= 0;
|
||||
void setCPUMask ()
|
||||
{
|
||||
uint64 cpuMask = IProcess::getCurrentProcess ()->getCPUMask();
|
||||
Debug_OldCPUMask= cpuMask;
|
||||
|
||||
// get the processor to allow process
|
||||
uint i = 0;
|
||||
while ((i<64) && ((cpuMask&(SINT64_CONSTANT(1)<<i)) == 0))
|
||||
i++;
|
||||
|
||||
// Set the CPU mask
|
||||
if (i<64)
|
||||
{
|
||||
IProcess::getCurrentProcess ()->setCPUMask(1<<i);
|
||||
//IThread::getCurrentThread ()->setCPUMask (1<<i);
|
||||
}
|
||||
|
||||
// check
|
||||
cpuMask = IProcess::getCurrentProcess ()->getCPUMask();
|
||||
Debug_NewCPUMask= cpuMask;
|
||||
}
|
||||
uint64 Debug_OldCPUMask = 0;
|
||||
uint64 Debug_NewCPUMask = 0;
|
||||
|
||||
void displayCPUInfo()
|
||||
{
|
||||
|
@ -791,14 +769,25 @@ void prelogInit()
|
|||
{
|
||||
try
|
||||
{
|
||||
H_AUTO ( RZ_Client_Init );
|
||||
|
||||
// Assert if no more memory
|
||||
// NLMEMORY::SetOutOfMemoryHook(outOfMemory);
|
||||
set_new_handler(outOfMemory);
|
||||
|
||||
NLMISC_REGISTER_CLASS(CStage);
|
||||
NLMISC_REGISTER_CLASS(CStageSet);
|
||||
NLMISC_REGISTER_CLASS(CEntityManager);
|
||||
NLMISC_REGISTER_CLASS(CCharacterCL);
|
||||
NLMISC_REGISTER_CLASS(CPlayerCL);
|
||||
NLMISC_REGISTER_CLASS(CUserEntity);
|
||||
NLMISC_REGISTER_CLASS(CFxCL);
|
||||
NLMISC_REGISTER_CLASS(CItemCL);
|
||||
NLMISC_REGISTER_CLASS(CNamedEntityPositionState);
|
||||
NLMISC_REGISTER_CLASS(CAnimalPositionState);
|
||||
|
||||
// Progress bar for init() and connection()
|
||||
ProgressBar.reset (BAR_STEP_INIT_CONNECTION);
|
||||
|
||||
set_new_handler(outOfMemory);
|
||||
|
||||
// save screen saver state and disable it
|
||||
LastScreenSaverEnabled = CSystemUtils::isScreensaverEnabled();
|
||||
|
||||
|
@ -813,37 +802,16 @@ void prelogInit()
|
|||
_control87 (_EM_INVALID|_EM_DENORMAL/*|_EM_ZERODIVIDE|_EM_OVERFLOW*/|_EM_UNDERFLOW|_EM_INEXACT, _MCW_EM);
|
||||
#endif // NL_OS_WINDOWS
|
||||
|
||||
CTime::CTimerInfo timerInfo;
|
||||
NLMISC::CTime::probeTimerInfo(timerInfo);
|
||||
if (timerInfo.RequiresSingleCore) // TODO: Also have a FV configuration value to force single core.
|
||||
setCPUMask();
|
||||
|
||||
FPU_CHECKER_ONCE
|
||||
|
||||
NLMISC::TTime initStart = ryzomGetLocalTime ();
|
||||
|
||||
H_AUTO ( RZ_Client_Init );
|
||||
|
||||
NLMISC_REGISTER_CLASS(CStage);
|
||||
NLMISC_REGISTER_CLASS(CStageSet);
|
||||
NLMISC_REGISTER_CLASS(CEntityManager);
|
||||
NLMISC_REGISTER_CLASS(CCharacterCL);
|
||||
NLMISC_REGISTER_CLASS(CPlayerCL);
|
||||
NLMISC_REGISTER_CLASS(CUserEntity);
|
||||
NLMISC_REGISTER_CLASS(CFxCL);
|
||||
NLMISC_REGISTER_CLASS(CItemCL);
|
||||
NLMISC_REGISTER_CLASS(CNamedEntityPositionState);
|
||||
NLMISC_REGISTER_CLASS(CAnimalPositionState);
|
||||
|
||||
// _CrtSetDbgFlag( _CRTDBG_CHECK_CRT_DF );
|
||||
|
||||
// Init XML Lib allocator
|
||||
// Due to Bug #906, we disable the stl xml allocation
|
||||
// nlverify (xmlMemSetup (XmlFree4NeL, XmlMalloc4NeL, XmlRealloc4NeL, XmlStrdup4NeL) == 0);
|
||||
|
||||
// Init the debug memory
|
||||
initDebugMemory();
|
||||
|
||||
// Add a displayer for Debug Infos.
|
||||
createDebug();
|
||||
|
||||
|
@ -856,14 +824,24 @@ void prelogInit()
|
|||
ErrorLog->addDisplayer (ClientLogDisplayer);
|
||||
AssertLog->addDisplayer (ClientLogDisplayer);
|
||||
|
||||
// Display the client version.
|
||||
nlinfo("RYZOM VERSION : %s", getDebugVersion().c_str());
|
||||
|
||||
// Init the debug memory
|
||||
initDebugMemory();
|
||||
|
||||
// Load the application configuration.
|
||||
ucstring nmsg("Loading config file...");
|
||||
ProgressBar.newMessage (nmsg);
|
||||
|
||||
ClientCfg.init(ConfigFileName);
|
||||
CLoginProgressPostThread::getInstance().init(ClientCfg.ConfigFile);
|
||||
|
||||
setCrashCallback(crashCallback);
|
||||
|
||||
// Display Some Info On CPU
|
||||
displayCPUInfo();
|
||||
|
||||
// Display the client version.
|
||||
nlinfo("RYZOM VERSION : %s", getDebugVersion().c_str());
|
||||
|
||||
FPU_CHECKER_ONCE
|
||||
|
||||
// Set default email value for reporting error
|
||||
|
@ -881,14 +859,6 @@ void prelogInit()
|
|||
//ICommand::execute("iFileAccessLogStart",*NLMISC::InfoLog);
|
||||
#endif
|
||||
|
||||
// Load the application configuration.
|
||||
ucstring nmsg("Loading config file...");
|
||||
ProgressBar.newMessage (nmsg);
|
||||
|
||||
ClientCfg.init(ConfigFileName);
|
||||
|
||||
CLoginProgressPostThread::getInstance().init(ClientCfg.ConfigFile);
|
||||
|
||||
// check "BuildName" in ClientCfg
|
||||
//nlassert(!ClientCfg.BuildName.empty()); // TMP comment by nico do not commit
|
||||
|
||||
|
|
|
@ -58,7 +58,7 @@ SOURCE_GROUP("Forms" FILES ${CLIENT_CONFIG_UIS})
|
|||
SOURCE_GROUP("Generated Files" FILES ${CLIENT_CONFIG_UI_HDRS} ${CLIENT_CONFIG_MOC_SRC})
|
||||
SOURCE_GROUP("Translation Files" FILES ${CLIENT_CONFIG_TRANS} )
|
||||
|
||||
ADD_EXECUTABLE(ryzom_configuration_qt WIN32 MACOSX_BUNDLE ${SRC} ${CLIENT_CONFIG_MOC_SRC} ${CLIENT_CONFIG_UI_HDRS} ${CLIENT_CONFIG_RC_SRCS} ${CLIENT_CONFIG_TRANS} ${CLIENT_CONFIG_QM})
|
||||
ADD_EXECUTABLE(ryzom_configuration_qt WIN32 ${SRC} ${CLIENT_CONFIG_MOC_SRC} ${CLIENT_CONFIG_UI_HDRS} ${CLIENT_CONFIG_RC_SRCS} ${CLIENT_CONFIG_TRANS} ${CLIENT_CONFIG_QM})
|
||||
NL_DEFAULT_PROPS(ryzom_configuration_qt "Ryzom, Tools: Ryzom Configuration Qt" )
|
||||
NL_ADD_RUNTIME_FLAGS( ryzom_configuration_qt )
|
||||
NL_ADD_LIB_SUFFIX( ryzom_configuration_qt )
|
||||
|
@ -68,5 +68,4 @@ IF(WITH_PCH)
|
|||
ADD_NATIVE_PRECOMPILED_HEADER(ryzom_configuration_qt ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.h ${CMAKE_CURRENT_SOURCE_DIR}/stdpch.cpp)
|
||||
ENDIF()
|
||||
|
||||
INSTALL(TARGETS ryzom_configuration_qt RUNTIME DESTINATION ${RYZOM_GAMES_PREFIX} COMPONENT client BUNDLE DESTINATION /Applications)
|
||||
|
||||
INSTALL(TARGETS ryzom_configuration_qt RUNTIME DESTINATION ${RYZOM_GAMES_PREFIX} COMPONENT client)
|
||||
|
|
Loading…
Reference in a new issue