From 9b6adb1ef56de84e6b6e536050de5945394e0cd2 Mon Sep 17 00:00:00 2001 From: Masterkatze Date: Thu, 19 Oct 2023 22:08:26 +0300 Subject: [PATCH] CMake refactoring --- CMakeLists.txt | 289 +- Externals/CMakeLists.txt | 18 +- Externals/GameSpy | 2 +- Externals/LuaJIT-proj/CMakeLists.txt | 628 +- .../HostBuildTools/buildvm/CMakeLists.txt | 17 +- .../HostBuildTools/minilua/CMakeLists.txt | 6 +- Externals/LuaJIT-proj/luajit.cmake | 645 -- Externals/NVTT/CMakeLists.txt | 4 - Externals/NVTT/src/nvcore/CMakeLists.txt | 91 +- .../NVTT/src/nvcore/poshlib/CMakeLists.txt | 10 +- Externals/NVTT/src/nvimage/CMakeLists.txt | 105 +- Externals/NVTT/src/nvmath/CMakeLists.txt | 72 +- Externals/NVTT/src/nvtt/CMakeLists.txt | 188 +- Externals/NVTT/src/nvtt/squish/CMakeLists.txt | 47 +- .../NVTT/src/nvtt/squish/colourblock.cpp | 2 +- Externals/NVTT/src/nvtt/tools/configdialog.h | 2 +- Externals/NVTT/src/nvtt/tools/main.cpp | 2 +- Externals/OPCODE/CMakeLists.txt | 171 +- Externals/cximage/CMakeLists.txt | 78 +- Externals/imgui-proj/CMakeLists.txt | 40 +- Externals/imgui-proj/imgui.cmake | 41 - Externals/luabind | 2 +- Externals/ode/CMakeLists.txt | 199 +- Externals/xrLuaFix | 2 +- cmake/FindLZO.cmake | 32 +- cmake/utils.cmake | 115 +- misc/CMakeLists.txt | 32 +- src/CMakeLists.txt | 2 - src/Common/Common.hpp | 2 + src/Layers/CMakeLists.txt | 12 +- src/Layers/xrAPI/CMakeLists.txt | 33 +- src/Layers/xrRenderPC_GL/CMakeLists.txt | 809 ++- src/Layers/xrRenderPC_R1/CMakeLists.txt | 77 +- src/Layers/xrRenderPC_R2/CMakeLists.txt | 56 + src/Layers/xrRenderPC_R4/CMakeLists.txt | 57 + src/utils/CMakeLists.txt | 7 +- src/utils/xrLCUtil/CMakeLists.txt | 50 +- src/utils/xrLC_Light/CMakeLists.txt | 379 +- src/utils/xrMiscMath/CMakeLists.txt | 34 +- src/utils/xrQSlim/CMakeLists.txt | 112 +- src/xrAICore/CMakeLists.txt | 576 +- src/xrCDB/CMakeLists.txt | 94 +- src/xrCore/CMakeLists.txt | 908 +-- src/xrEngine/CMakeLists.txt | 821 +-- src/xrGame/CMakeLists.txt | 5272 ++++++++--------- src/xrGameSpy/CMakeLists.txt | 120 +- src/xrNetServer/CMakeLists.txt | 81 +- src/xrParticles/CMakeLists.txt | 41 +- src/xrPhysics/CMakeLists.txt | 771 +-- src/xrScriptEngine/CMakeLists.txt | 240 +- src/xrScriptEngine/xrScriptEngine.hpp | 1 - src/xrSound/CMakeLists.txt | 255 +- src/xrUICore/CMakeLists.txt | 300 +- src/xr_3da/CMakeLists.txt | 39 +- 54 files changed, 7065 insertions(+), 6924 deletions(-) delete mode 100644 Externals/LuaJIT-proj/luajit.cmake create mode 100644 src/Layers/xrRenderPC_R2/CMakeLists.txt create mode 100644 src/Layers/xrRenderPC_R4/CMakeLists.txt diff --git a/CMakeLists.txt b/CMakeLists.txt index 08e4f3ef94c..340313d7b50 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,11 +1,14 @@ -cmake_minimum_required(VERSION 3.16) +cmake_minimum_required(VERSION 3.22) + +message(STATUS "CMAKE_VERSION: ${CMAKE_VERSION}") project(OpenXRay) set(CMAKE_CXX_STANDARD 17) +set(CMAKE_EXPORT_COMPILE_COMMANDS ON) +#set(CMAKE_VERBOSE_MAKEFILE ON) if (CMAKE_VERBOSE_MAKEFILE) - set(CMAKE_EXPORT_COMPILE_COMMANDS ON) set(CMAKE_EXECUTE_PROCESS_COMMAND_ECHO STDOUT) endif() @@ -18,22 +21,24 @@ if (CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) set(CMAKE_INSTALL_PREFIX "/usr") endif() -# Installation paths include(GNUInstallDirs) -set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake) -include(${PROJECT_SOURCE_DIR}/cmake/utils.cmake) +list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") + +include(utils) + +set_git_info() # Output all libraries and executable to one folder -set(COMPILE_OUTPUT_FOLDER ${CMAKE_SOURCE_DIR}/bin/${ARCH_TYPE}/${CMAKE_BUILD_TYPE}) -set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${COMPILE_OUTPUT_FOLDER}) -set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${COMPILE_OUTPUT_FOLDER}) -set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${COMPILE_OUTPUT_FOLDER}) -set(CMAKE_PDB_OUTPUT_DIRECTORY ${COMPILE_OUTPUT_FOLDER}) -set(CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY ${COMPILE_OUTPUT_FOLDER}) +set(COMPILE_OUTPUT_FOLDER "${CMAKE_SOURCE_DIR}/bin/${ARCH_TYPE}/${CMAKE_BUILD_TYPE}") +set(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${COMPILE_OUTPUT_FOLDER}") +set(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${COMPILE_OUTPUT_FOLDER}") +set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${COMPILE_OUTPUT_FOLDER}") +set(CMAKE_PDB_OUTPUT_DIRECTORY "${COMPILE_OUTPUT_FOLDER}") +set(CMAKE_COMPILE_PDB_OUTPUT_DIRECTORY "${COMPILE_OUTPUT_FOLDER}") if (DISABLE_PORTABLE_MODE) - add_definitions(-DDISABLE_PORTABLE_MODE) + add_compile_definitions(DISABLE_PORTABLE_MODE) endif() if (NOT DEFINED ALLOW_RPATH) @@ -42,18 +47,18 @@ endif() if (ALLOW_RPATH) # Set the shared object search path for the installation - set(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_FULL_LIBDIR}) + set(CMAKE_INSTALL_RPATH "${CMAKE_INSTALL_FULL_LIBDIR}") # Set the shared object search path for the build tree # On Linux/BSD we can use $ORIGIN to search for modules next to the executable if (NOT APPLE) set(CMAKE_BUILD_RPATH $ORIGIN) else() - set(CMAKE_BUILD_RPATH ${COMPILE_OUTPUT_FOLDER}) + set(CMAKE_BUILD_RPATH "${COMPILE_OUTPUT_FOLDER}") endif() endif() -message(STATUS "CMAKE_SYSTEM_PROCESSOR: " ${CMAKE_SYSTEM_PROCESSOR}) +message(STATUS "CMAKE_SYSTEM_PROCESSOR: ${CMAKE_SYSTEM_PROCESSOR}") if (CMAKE_SYSTEM_PROCESSOR STREQUAL "aarch64" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "arm64") set(PROJECT_PLATFORM_ARM64 TRUE) elseif (CMAKE_SYSTEM_PROCESSOR MATCHES "armv*") @@ -64,77 +69,32 @@ elseif (CMAKE_SYSTEM_PROCESSOR STREQUAL "ppc" OR CMAKE_SYSTEM_PROCESSOR STREQUAL set(PROJECT_PLATFORM_PPC TRUE) endif() - if (CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo") set(MASTER_GOLD_DEFAULT_VALUE ON) else() set(MASTER_GOLD_DEFAULT_VALUE OFF) endif() +message(STATUS "CMAKE_BUILD_TYPE: ${CMAKE_BUILD_TYPE}") option(MASTER_GOLD "Build with MASTER_GOLD" ${MASTER_GOLD_DEFAULT_VALUE}) -message(STATUS "MASTER_GOLD: ${MASTER_GOLD}") if (MASTER_GOLD) - add_definitions(-DMASTER_GOLD) + add_compile_definitions(MASTER_GOLD) endif() +message(STATUS "MASTER_GOLD: ${MASTER_GOLD}") option(STATIC_BUILD "Use static build" ${MASTER_GOLD}) -message(STATUS "STATIC_BUILD: ${STATIC_BUILD}") if (STATIC_BUILD) # XXX: Uncomment only after build with XRAY_STATIC_BUILD is fixed - #add_definitions(-DXRAY_STATIC_BUILD) + #add_compile_definitions(XRAY_STATIC_BUILD) endif() - -function(xr_install tgt) - if (NOT MSVC) - install(TARGETS ${tgt} DESTINATION "." - PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE # chmod 755 - ) - else() - install(TARGETS ${tgt} - CONFIGURATIONS Debug - RUNTIME DESTINATION Debug/ - LIBRARY DESTINATION Debug/ - ) - install(FILES $ - CONFIGURATIONS Debug - DESTINATION Debug/ - ) - install(TARGETS ${tgt} - CONFIGURATIONS Release - RUNTIME DESTINATION Release/ - LIBRARY DESTINATION Release/ - ) - endif() -endfunction() - -# Use only if install defined outside target directory(like luabind, for example) -function(xr_install_file tgt) - if (NOT MSVC) - install(FILES $ DESTINATION "." - PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE # chmod 755 - ) - else() - install($ - CONFIGURATIONS Debug - RUNTIME DESTINATION Debug/ - ) - install(FILES $ - CONFIGURATIONS Debug - DESTINATION Debug/ - ) - install($ - CONFIGURATIONS Release - RUNTIME DESTINATION Release/ - ) - endif() -endfunction() +message(STATUS "STATIC_BUILD: ${STATIC_BUILD}") find_program(CCACHE_FOUND ccache) if (CCACHE_FOUND) set_property(GLOBAL PROPERTY RULE_LAUNCH_COMPILE ccache) set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ccache) set(ENV{CCACHE_SLOPPINESS} pch_defines,time_macros) -endif (CCACHE_FOUND) +endif () if (CMAKE_CXX_COMPILER_ID MATCHES "GNU") if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 8.0 AND NOT PROJECT_PLATFORM_E2K) @@ -144,7 +104,11 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "GNU") endif() elseif (CMAKE_CXX_COMPILER_ID MATCHES "Clang") # XXX: Remove -fdelayed-template-parsing - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fdelayed-template-parsing -Wno-unused-command-line-argument -Wno-inconsistent-missing-override") + add_compile_options( + -fdelayed-template-parsing + -Wno-unused-command-line-argument + -Wno-inconsistent-missing-override + ) endif() if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND NOT XRAY_USE_DEFAULT_CXX_LIB) @@ -163,44 +127,41 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND NOT XRAY_USE_DEFAULT_CXX_LIB) endif() if (XRAY_CXX_LIB STREQUAL "libstdc++") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libstdc++") + add_compile_options(-stdlib=libstdc++) elseif (XRAY_CXX_LIB STREQUAL "libc++") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++") + add_compile_options(-stdlib=libc++) if (CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -stdlib=libc++ -lcxxrt") + add_compile_options(-lcxxrt) else() - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -stdlib=libc++ -lc++abi") + add_compile_options(-lc++abi) endif() endif() endif() -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-attributes") +add_compile_options(-Wno-attributes) if (APPLE) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,-undefined,error") + add_compile_options(-Wl,-undefined,error) else() - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,--no-undefined") + add_compile_options(-Wl,--no-undefined) endif() +# TODO test option(USE_ADDRESS_SANITIZER "Use AddressSanitizer" OFF) + if (USE_ADDRESS_SANITIZER) - set(SANITIZE_FLAGS - "-fsanitize=address" - "-fsanitize=leak" - "-fno-omit-frame-pointer" - "-fno-optimize-sibling-calls" - "-fsanitize=undefined" - "-fno-sanitize=vptr" + add_compile_options( + -fsanitize=address + -fsanitize=leak + -fsanitize=undefined + -fno-omit-frame-pointer + -fno-optimize-sibling-calls + -fno-sanitize=vptr ) - if (CMAKE_BUILD_TYPE STREQUAL "Debug") - list(APPEND SANITIZE_FLAGS "-g") - endif() - - if (CMAKE_CXX_COMPILER_ID MATCHES "Clang") - add_link_options("-shared-libasan") - endif() + add_link_options( + $<$:-shared-libasan> + ) endif() -string(REPLACE ";" " " SANITIZE_FLAGS "${SANITIZE_FLAGS}") message(STATUS "USE_ADDRESS_SANITIZER: ${USE_ADDRESS_SANITIZER}") @@ -212,7 +173,7 @@ if (USE_LTO) if (LTO_SUPPORTED) # With clang cmake only enables '-flto=thin' but we want full LTO if (CMAKE_CXX_COMPILER_ID MATCHES "Clang") - set(LTO_FLAGS "-flto=full") + add_compile_options(-flto=full) else() set(CMAKE_INTERPROCEDURAL_OPTIMIZATION ON) endif() @@ -221,35 +182,31 @@ endif() message(STATUS "USE_LTO: ${USE_LTO}") -set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${SANITIZE_FLAGS} ${LTO_FLAGS}") -set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${SANITIZE_FLAGS}") -set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} ${SANITIZE_FLAGS} ${LTO_FLAGS}") -set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} ${SANITIZE_FLAGS} ${LTO_FLAGS}") - -set(LUA_LIBRARIES xrLuajit) - if (PROJECT_PLATFORM_ARM) - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mfpu=neon") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mfpu=neon") + add_compile_options(-mfpu=neon) elseif (PROJECT_PLATFORM_ARM64) - set(CMAKE_C_FLAGS ${CMAKE_C_FLAGS}) + #add_compile_options() elseif (PROJECT_PLATFORM_E2K) - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unknown-pragmas") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-unknown-pragmas") + add_compile_options(-Wno-unknown-pragmas) elseif (PROJECT_PLATFORM_PPC) - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DNO_WARN_X86_INTRINSICS") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -maltivec -mabi=altivec -DNO_WARN_X86_INTRINSICS") + add_compile_options( + -maltivec + -mabi=altivec + ) + add_compile_definitions(NO_WARN_X86_INTRINSICS) else() - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -mfpmath=sse -msse3") - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -mfpmath=sse -msse3") + add_compile_options( + -mfpmath=sse + -msse3 + ) endif() option(XRAY_USE_DEFAULT_LINKER "Don't select linker, use system default." OFF) -if (NOT XRAY_LINKER AND NOT XRAY_USE_DEFAULT_LINKER AND NOT APPLE) # XXX: check if we can remove check for Apple +if (NOT XRAY_LINKER AND NOT XRAY_USE_DEFAULT_LINKER AND NOT APPLE) # XXX: check if we can remove this check for Apple include(CheckCXXCompilerFlag) - CHECK_CXX_COMPILER_FLAG("-fuse-ld=gold" GOLD_LINKER_AVAILABLE) - CHECK_CXX_COMPILER_FLAG("-fuse-ld=lld" LLD_LINKER_AVAILABLE) + check_cxx_compiler_flag("-fuse-ld=gold" GOLD_LINKER_AVAILABLE) + check_cxx_compiler_flag("-fuse-ld=lld" LLD_LINKER_AVAILABLE) if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND LLD_LINKER_AVAILABLE) set(XRAY_LINKER "lld" CACHE STRING "" FORCE) @@ -259,30 +216,21 @@ if (NOT XRAY_LINKER AND NOT XRAY_USE_DEFAULT_LINKER AND NOT APPLE) # XXX: check endif() if (XRAY_LINKER AND NOT XRAY_USE_DEFAULT_LINKER) - set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fuse-ld=${XRAY_LINKER}") - set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -fuse-ld=${XRAY_LINKER}") + add_link_options(-fuse-ld=${XRAY_LINKER}) endif() if (CMAKE_BUILD_TYPE STREQUAL "Debug") - add_definitions(-DDEBUG -DMIXED) - set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Og") - set(LUA_LIBRARIES xrLuajit-debug) -endif() - -set(LUA_FOUND true) - -message("CMake build ${CMAKE_BUILD_TYPE}, CFLAGS=${CMAKE_C_FLAGS}, CXXFLAGS=${CMAKE_CXX_FLAGS}") - -add_definitions(-D_MT -D_CPPUNWIND -DPURE_DYNAMIC_CAST -DDECLARE_SPECIALIZATION -DM_NOSTDCONTAINERS_EXT) -add_definitions(-DLUABIND_DYNAMIC_LINK) #self-explanatory -add_definitions(-DdSINGLE) # for ODE and xrPhysics -if (MASTER_GOLD) - add_definitions(-DLUABIND_NO_EXCEPTIONS) - add_definitions(-DLUABIND_NO_ERROR_CHECKING) - add_definitions(-DdNODEBUG) + add_compile_definitions( + DEBUG + MIXED + ) + add_compile_options(-Og) endif() -set(LUA_INCLUDE_DIR Externals/LuaJIT/src) +add_compile_definitions( + _MT + _CPPUNWIND +) if (NOT WIN32) find_package(SDL2 REQUIRED) @@ -308,75 +256,38 @@ else() endif() set_property(CACHE MEMORY_ALLOCATOR PROPERTY STRINGS "mimalloc" "standard") -if (MEMORY_ALLOCATOR STREQUAL "mimalloc") - add_definitions(-DUSE_MIMALLOC) - if (NOT mimalloc_FOUND) - message(FATAL_ERROR "mimalloc allocator requested but not found. Please, install mimalloc package or select standard allocator.") - endif() -else() - add_definitions(-DUSE_PURE_ALLOC) +if (MEMORY_ALLOCATOR STREQUAL "mimalloc" AND NOT mimalloc_FOUND) + message(FATAL_ERROR "mimalloc allocator requested but not found. Please, install mimalloc package or select standard allocator.") endif() message("Using ${MEMORY_ALLOCATOR} memory allocator") -# XXX: move to LuaJIT -include_directories(${LUA_INCLUDE_DIR}) - -execute_process(COMMAND git rev-parse --verify HEAD - WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}" - OUTPUT_VARIABLE GIT_SHA1 - ERROR_QUIET - OUTPUT_STRIP_TRAILING_WHITESPACE -) - -message("git commit: " ${GIT_SHA1}) - -execute_process(COMMAND git rev-parse --abbrev-ref HEAD - WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}" - OUTPUT_VARIABLE GIT_BRANCH - ERROR_QUIET - OUTPUT_STRIP_TRAILING_WHITESPACE -) - -message("git branch: " ${GIT_BRANCH}) - -include_directories( - ${CMAKE_SOURCE_DIR}/Externals - ${CMAKE_SOURCE_DIR}/Externals/luabind - ${CMAKE_SOURCE_DIR}/Externals/imgui -) +option(XRAY_USE_LUAJIT "Use LuaJIT" ON) add_subdirectory(Externals) -set(CMAKE_CXX_FLAGS - "${CMAKE_CXX_FLAGS}" - "-Wall" - #"-Werror" - "-Wextra" - #"-pedantic" - "-Wno-unknown-pragmas" - "-Wno-strict-aliasing" - "-Wno-parentheses" - "-Wno-unused-label" - "-Wno-unused-parameter" - "-Wno-switch" - #"-Wno-padded" - #"-Wno-c++98-compat" - #"-Wno-c++98-compat-pedantic" - #"-Wno-c++11-compat" - #"-Wno-c++11-compat-pedantic" - #"-Wno-c++14-compat" - #"-Wno-c++14-compat-pedantic" - #"-Wno-newline-eof" +add_compile_options( + -Wall + #-Werror + -Wextra + #-pedantic + -Wno-unknown-pragmas + -Wno-strict-aliasing + -Wno-parentheses + -Wno-unused-label + -Wno-unused-parameter + -Wno-switch + #-Wno-padded + #-Wno-c++98-compat + #-Wno-c++98-compat-pedantic + #-Wno-c++11-compat + #-Wno-c++11-compat-pedantic + #-Wno-c++14-compat + #-Wno-c++14-compat-pedantic + #-Wno-newline-eof + $<$:$<$:-Wno-class-memaccess>> + $<$:$<$:-Wno-interference-size>> ) -if (CMAKE_CXX_COMPILER_ID MATCHES "GNU") - set(CMAKE_CXX_FLAGS - "${CMAKE_CXX_FLAGS}" - "-Wno-class-memaccess" - "-Wno-interference-size" - ) -endif() -string(REPLACE ";" " " CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}") add_subdirectory(src) add_subdirectory(res) diff --git a/Externals/CMakeLists.txt b/Externals/CMakeLists.txt index d9772bd2753..c0152db9884 100644 --- a/Externals/CMakeLists.txt +++ b/Externals/CMakeLists.txt @@ -1,11 +1,25 @@ -add_subdirectory(LuaJIT-proj) +if (XRAY_USE_LUAJIT) + add_subdirectory(LuaJIT-proj) +else() + find_package(Lua51 REQUIRED) +endif() + add_subdirectory(xrLuaFix) add_subdirectory(luabind) + if (USE_CXIMAGE) add_subdirectory(cximage) endif() + add_subdirectory(GameSpy) add_subdirectory(OPCODE) add_subdirectory(ode) -#add_subdirectory(NVTT) +add_subdirectory(NVTT) add_subdirectory(imgui-proj) + +if (NOT TARGET xrLuabind) + message(FATAL_ERROR + "You probably have downloaded OpenXRay sources as ZIP archive, you can't do that. Use git to clone the repository.\n" + "Read the build instructions: https://github.com/OpenXRay/xray-16/wiki" + ) +endif() diff --git a/Externals/GameSpy b/Externals/GameSpy index 1c9eb9af6be..4576c370384 160000 --- a/Externals/GameSpy +++ b/Externals/GameSpy @@ -1 +1 @@ -Subproject commit 1c9eb9af6be4602bceb7b1913c7405f6bb76bea1 +Subproject commit 4576c370384e90e42e1049f9986f126a4a891959 diff --git a/Externals/LuaJIT-proj/CMakeLists.txt b/Externals/LuaJIT-proj/CMakeLists.txt index 6143cc05e0d..190bf019a5c 100644 --- a/Externals/LuaJIT-proj/CMakeLists.txt +++ b/Externals/LuaJIT-proj/CMakeLists.txt @@ -1 +1,627 @@ -include(luajit.cmake) +# Copyright (C) 2007-2013 LuaDist. +# Created by Peter Drahoš +# Redistribution and use of this file is allowed according to the terms of the MIT license. +# For details see the COPYRIGHT file distributed with LuaDist. +# Please note that the package source code is licensed under its own license. + +cmake_minimum_required(VERSION 3.13) + +project(xrLuaJIT C CXX ASM) + +# Version +set(MAJVER 2) +set(MINVER 0) +set(RELVER 5) +set(ABIVER 5.1) +set(NODOTABIVER 51) + +set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk") +set(LUAJIT_DIR ${CMAKE_SOURCE_DIR}/Externals/LuaJIT/src CACHE PATH "Location of luajit sources") + +option(LUAJIT_BUILD_STATIC_LIB "Build as static library" OFF) +option(LUAJIT_BUILD_APP "Build application" OFF) + +# NOTE: Not working because there is no lib_package_rel.c file +option(LUA_USE_RELATIVE_LOADLIB "Use modified loadlib.c with support for relative paths on posix systems (Not working)" OFF) + +# Extra flags +option(LUAJIT_DISABLE_FFI "Disable the FFI extension to reduce the size of the LuaJIT executable. But please consider that the FFI library is compiled-in, but NOT loaded by default. It only allocates any memory, if you actually make use of it" OFF) +option(LUAJIT_ENABLE_LUA52COMPAT "Features from Lua 5.2 that are unlikely to break existing code are enabled by default. Some other features that *might* break some existing code (e.g. __pairs or os.execute() return values) can be enabled here. Note: this does not provide full compatibility with Lua 5.2 at this time" OFF) +option(LUAJIT_DISABLE_JIT "Disable the JIT compiler, i.e. turn LuaJIT into a pure interpreter" OFF) +option(LUAJIT_DISABLE_GC64 "Disable LJ_GC64 mode for x64" OFF) +option(LUAJIT_USE_SYSMALLOC "Use the system provided memory allocator (realloc) instead of the bundled memory allocator. This is slower, but sometimes helpful for debugging. It's helpful for Valgrind's memcheck tool, too. This option cannot be enabled on x64, since the built-in allocator is mandatory" OFF) +option(LUAJIT_USE_VALGRIND "This option is required to run LuaJIT under Valgrind. The Valgrind header files must be installed. You should enable debug information, too." OFF) +option(LUAJIT_USE_GDBJIT "This is the client for the GDB JIT API. GDB 7.0 or higher is required to make use of it. See lj_gdbjit.c for details. Enabling this causes a non-negligible overhead, even when not running under GDB" OFF) + +option(LUA_USE_APICHECK "Turn on assertions for the Lua/C API to debug problems with lua_* calls. This is rather slow, use only while developing C libraries/embeddings" OFF) +option(LUA_USE_ASSERT "Turn on assertions for the whole LuaJIT VM. This significantly slows down everything. Use only if you suspect a problem with LuaJIT itself" OFF) + +#option(LUAJIT_DEBUG "Generate debug information" OFF) + +if (WIN32) + option(LUA_BUILD_WLUA "Build wluajit interpreter for no-console applications." ON) +elseif (APPLE) + option(LUA_USE_POSIX "Use POSIX functionality." ON) + option(LUA_USE_DLOPEN "Use dynamic linker to load modules." ON) +else() + option(LUA_USE_POSIX "Use POSIX functionality." ON) + option(LUA_USE_DLOPEN "Use dynamic linker to load modules." ON) +endif() + +# TODO: check if we need luaconf.h +# TODO: add other variables from luaconf.h if we need them +# Configuration for luaconf.h +set(LUA_PATH "LUA_PATH" CACHE STRING "Environment variable to use as package.path") +set(LUA_CPATH "LUA_CPATH" CACHE STRING "Environment variable to use as package.cpath") +set(LUA_INIT "LUA_INIT" CACHE STRING "Environment variable for initial script") + +if (APPLE) + set(ENV{SDKROOT} ${CMAKE_OSX_SYSROOT}) +endif() + +# Clean unnecessary files in LuaJIT source directory +execute_process( + COMMAND make clean + WORKING_DIRECTORY ${LUAJIT_DIR} +) + +# TODO: check windows supports same target name for static and shared lib +if (LUAJIT_BUILD_STATIC_LIB) + add_library(xrLuaJIT STATIC) +else() + add_library(xrLuaJIT SHARED) +endif() + +# Compiler options +if (PROJECT_PLATFORM_E2K) # E2K: O3 on mcst-lcc approximately equal to O2 at gcc X86/ARM + set(CCOPT_OPT_LEVEL "-O3") +else() + set(CCOPT_OPT_LEVEL "-O2") +endif() + +if (USE_ADDRESS_SANITIZER) + set(CCOPT "${CCOPT_OPT_LEVEL} -fno-stack-protector") +else() + set(CCOPT "${CCOPT_OPT_LEVEL} -fomit-frame-pointer -fno-stack-protector") +endif() + +set(CCOPT "${CCOPT} -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -U_FORTIFY_SOURCE") + +string(REPLACE " " ";" CCOPT "${CCOPT}") + +add_compile_options( + #-Wdeclaration-after-statement + #-Wredundant-decls + #-Wshadow + #-Wpointer-arith +) + +if (LUAJIT_DISABLE_FFI) + list(APPEND XCFLAGS "-DLUAJIT_DISABLE_FFI") +endif() + +if (LUAJIT_ENABLE_LUA52COMPAT) + list(APPEND XCFLAGS "-DLUAJIT_ENABLE_LUA52COMPAT") +endif() + +if (LUAJIT_DISABLE_JIT) + list(APPEND XCFLAGS "-DLUAJIT_DISABLE_JIT") +endif() + +if (LUAJIT_DISABLE_GC64) + list(APPEND XCFLAGS "-DLUAJIT_DISABLE_GC64") +endif() + +if (LUAJIT_USE_SYSMALLOC) + list(APPEND XCFLAGS "-DLUAJIT_USE_SYSMALLOC") +endif() + +if (LUAJIT_USE_VALGRIND) + list(APPEND XCFLAGS "-DLUAJIT_USE_VALGRIND") +endif() + +if (LUAJIT_USE_GDBJIT) + list(APPEND XCFLAGS "-DLUAJIT_USE_GDBJIT") +endif() + +if (LUA_USE_APICHECK) + list(APPEND XCFLAGS "-DLUA_USE_APICHECK") +endif() + +if (LUA_USE_ASSERT) + list(APPEND XCFLAGS "-DLUA_USE_ASSERT") +endif() + +set(CCOPTIONS "${CCOPT};${XCFLAGS}") + +target_compile_options(xrLuaJIT PRIVATE ${CCOPTIONS}) + +execute_process( + COMMAND ${CMAKE_C_COMPILER} ${CMAKE_C_FLAGS} ${CCOPTIONS} -E lj_arch.h -dM + WORKING_DIRECTORY "${LUAJIT_DIR}" + OUTPUT_VARIABLE TESTARCH_OUTPUT + ERROR_VARIABLE TESTARCH_ERROR +) + +if(NOT "${TESTARCH_ERROR}" STREQUAL "") + message("TESTARCH_ERROR=${TESTARCH_ERROR}") +endif() + +if ("${TESTARCH_OUTPUT}" MATCHES "LJ_TARGET_X64") + set(TARGET_LJARCH "x64") +elseif ("${TESTARCH_OUTPUT}" MATCHES "LJ_TARGET_X86") + set(TARGET_LJARCH "x86") + + string(APPEND TARGET_XCFLAGS " -march=i686 -msse -msse2 -mfpmath=sse") +elseif ("${TESTARCH_OUTPUT}" MATCHES "LJ_TARGET_ARM64") + set(TARGET_LJARCH "arm64") + if ("${TESTARCH_OUTPUT}" MATCHES "__AARCH64EB__") + set(TARGET_ARCH "-D__AARCH64EB__=1") + endif() +elseif ("${TESTARCH_OUTPUT}" MATCHES "LJ_TARGET_ARM") + set(TARGET_LJARCH "arm") +elseif ("${TESTARCH_OUTPUT}" MATCHES "LJ_TARGET_PPC") + set(TARGET_LJARCH "ppc") +elseif ("${TESTARCH_OUTPUT}" MATCHES "LJ_TARGET_MIPS") + if ("${TESTARCH_OUTPUT}" MATCHES "MIPSEL") + set(TARGET_ARCH "-D__MIPSEL__=1") + endif() + if ("${TESTARCH_OUTPUT}" MATCHES "LJ_TARGET_MIPS64") + set(TARGET_LJARCH "mips64") + else() + set(TARGET_LJARCH "mips") + endif() +elseif (${CMAKE_SYSTEM_PROCESSOR} STREQUAL "e2k") # MCST Elbrus 2000 + set(TARGET_LJARCH "e2k") +else() + message("${TESTARCH_OUTPUT}") + message(FATAL_ERROR "Unsupported luajit target architecture (see output above)") +endif() + +string(APPEND TARGET_ARCH "-DLUAJIT_TARGET=LUAJIT_ARCH_${TARGET_LJARCH}") + +# TODO: add PREFIX, TARGET_XCFLAGS, TARGET_DYNXLDOPTS, MULTILIB here (lines 289-302 in Makefile) +# TODO: use TARGET_STRIP flags? + +if (WIN32) + #string(APPEND TARGET_STRIP "--strip-unneeded") + + target_link_options(xrLuaJIT + PRIVATE + " -shared -Wl,--out-implib,libluajit-${ABIVER}.dll.a" + ) + + if (NOT LUAJIT_BUILD_STATIC_LIB) + string(APPEND HOST_XCFLAGS " -DLUA_BUILD_AS_DLL") + endif() + + set(LJVM_MODE peobj) +elseif (APPLE) + if (CMAKE_OSX_DEPLOYMENT_TARGET STREQUAL "") + message(FATAL_ERROR "Missing export MACOSX_DEPLOYMENT_TARGET=XX.YY") + endif() + + #string(APPEND TARGET_STRIP "-x") + # XXX: doesn't compile with Apple Clang + #string(APPEND TARGET_XSHLDFLAGS " -dynamiclib -single_module -undefined dynamic_lookup -fPIC") + #string(APPEND TARGET_XSHLDFLAGS " -install_name ${TARGET_DYLIBPATH} -compatibility_version ${MAJVER}.${MINVER} -current_version ${MAJVER}.${MINVER}.${RELVER}") + + if (${TARGET_LJARCH} STREQUAL "x64") + string(APPEND TARGET_XLDFLAGS " -pagezero_size 10000 -image_base 100000000 -image_base 7fff04c4a000") + elseif (${TARGET_LJARCH} STREQUAL "arm64") + string(APPEND TARGET_XCFLAGS " -fno-omit-frame-pointer") + endif() + + set(LJVM_MODE machasm) +else() + set(LJVM_MODE elfasm) +endif() + +# TODO: add HOST_SYS != TARGET_SYS code (lines 354-372 in Makefile) +#string(APPEND HOST_XCFLAGS "-DLUA_BUILD_AS_DLL -DLUAJIT_OS=LUAJIT_OS_WINDOWS") +# TODO: add "-DTARGET_OS_IPHONE=1" on iOS +#string(APPEND HOST_XCFLAGS "-DLUAJIT_OS=LUAJIT_OS_OSX") + +# NOTE: Defines in DASM_FLAGS should contain a space after -D for minilua to work + +if ("${TESTARCH_OUTPUT}" MATCHES "LJ_LE 1") + list(APPEND DASM_FLAGS "-D ENDIAN_LE") +else() + list(APPEND DASM_FLAGS "-D ENDIAN_BE") +endif() + +if ("${TESTARCH_OUTPUT}" MATCHES "LJ_ARCH_BITS 64") + list(APPEND DASM_FLAGS "-D P64") +endif() + +if ("${TESTARCH_OUTPUT}" MATCHES "LJ_HASJIT 1") + list(APPEND DASM_FLAGS "-D JIT") +endif() + +if ("${TESTARCH_OUTPUT}" MATCHES "LJ_HASFFI 1") + list(APPEND DASM_FLAGS "-D FFI") +endif() + +if ("${TESTARCH_OUTPUT}" MATCHES "LJ_DUALNUM 1") + list(APPEND DASM_FLAGS "-D DUALNUM") +endif() + +if ("${TESTARCH_OUTPUT}" MATCHES "LJ_ARCH_HASFPU 1") + list(APPEND DASM_FLAGS "-D FPU") + list(APPEND TARGET_ARCH "-DLJ_ARCH_HASFPU=1") +else() + list(APPEND TARGET_ARCH "-DLJ_ARCH_HASFPU=0") +endif() + +if ("${TESTARCH_OUTPUT}" MATCHES "LJ_ABI_SOFTFP 1") + list(APPEND TARGET_ARCH "-DLJ_ABI_SOFTFP=1") +else() + list(APPEND DASM_FLAGS "-D HFABI") + list(APPEND TARGET_ARCH "-DLJ_ABI_SOFTFP=0") +endif() + +if ("${TESTARCH_OUTPUT}" MATCHES "LJ_NO_UNWIND 1") + list(APPEND DASM_FLAGS "-D NO_UNWIND") + list(APPEND TARGET_ARCH "-DLUAJIT_NO_UNWIND") +endif() + +if ("${TESTARCH_OUTPUT}" MATCHES "LJ_ARCH_VERSION") + list(REGEX MATCH "LJ_ARCH_VERSION ([0-9]+)$" _ "${TESTARCH_OUTPUT}") + list(APPEND DASM_FLAGS "-D VER=${CMAKE_MATCH_1}") +else() + list(APPEND DASM_FLAGS "-D VER=") +endif() + +set(DASM_ARCH ${TARGET_LJARCH}) + +if (WIN32) + list(APPEND DASM_FLAGS "-D WIN") +endif() + +if (TARGET_LJARCH STREQUAL "x64") + if (NOT "${TESTARCH_OUTPUT}" MATCHES "LJ_FR2 1") + set(DASM_ARCH "x86") + endif() +elseif (TARGET_LJARCH STREQUAL "arm") + if (APPLE) + list(APPEND DASM_FLAGS "-D IOS") + endif() +elseif ("${TESTARCH_OUTPUT}" MATCHES "LJ_TARGET_MIPSR6") + list(APPEND DASM_FLAGS "-D MIPSR6") +endif() + +if (TARGET_LJARCH STREQUAL "ppc") + if ("${TESTARCH_OUTPUT}" MATCHES "LJ_ARCH_SQRT 1") + list(APPEND DASM_FLAGS "-D SQRT") + endif() + if ("${TESTARCH_OUTPUT}" MATCHES "LJ_ARCH_ROUND 1") + list(APPEND DASM_FLAGS "-D ROUND") + endif() + if ("${TESTARCH_OUTPUT}" MATCHES "LJ_ARCH_PPC32ON64 1") + list(APPEND DASM_FLAGS "-D GPR64") + endif() + if ("${TESTARCH_OUTPUT}" MATCHES "LJ_ARCH_PPC64") + set(DASM_ARCH "ppc64") + endif() +endif() + +set(HOST_ACFLAGS "${CMAKE_C_FLAGS} ${CCOPTIONS} ${TARGET_ARCH}") +set(HOST_ALDFLAGS "${CMAKE_C_FLAGS}") + +string(APPEND TARGET_XCFLAGS " -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -U_FORTIFY_SOURCE") + +separate_arguments(HOST_ACFLAGS) +separate_arguments(HOST_ALDFLAGS) +separate_arguments(DASM_FLAGS) +separate_arguments(TARGET_XCFLAGS) + +target_compile_options(xrLuaJIT + PRIVATE + ${TARGET_XCFLAGS} +) + +set(DASM_DASC "${LUAJIT_DIR}/vm_${DASM_ARCH}.dasc") +set(DASM "${LUAJIT_DIR}/../dynasm/dynasm.lua") + +if (PROJECT_PLATFORM_E2K) + set(BUILDVM_ARCH "${LUAJIT_DIR}/host/buildvm_arch.h") +else() + set(BUILDVM_ARCH "${CMAKE_CURRENT_BINARY_DIR}/buildvm_arch.h") +endif() + +# Generate buildvm arch header +if (NOT PROJECT_PLATFORM_E2K) + set(MINILUA_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/HostBuildTools/minilua") + set(MINILUA_FILE "${MINILUA_BINARY_DIR}/minilua") + + add_custom_command( + OUTPUT "${MINILUA_FILE}" + COMMAND ${CMAKE_COMMAND} + -B${MINILUA_BINARY_DIR} + -G${CMAKE_GENERATOR} + -S${CMAKE_CURRENT_SOURCE_DIR}/HostBuildTools/minilua + -DCMAKE_VERBOSE_MAKEFILE=${CMAKE_VERBOSE_MAKEFILE} + -DCMAKE_BUILD_TYPE=Release + -DLUAJIT_DIR=${LUAJIT_DIR} + -DLUA_USE_POSIX=${LUA_USE_POSIX} + -DHOST_ACFLAGS="${HOST_ACFLAGS}" + -DHOST_ALDFLAGS="${HOST_ALDFLAGS}" + COMMAND ${CMAKE_COMMAND} --build ${MINILUA_BINARY_DIR} --config Release --verbose + ) + + add_custom_command(OUTPUT ${BUILDVM_ARCH} + COMMAND "${MINILUA_FILE}" ${DASM} ${DASM_FLAGS} -o ${BUILDVM_ARCH} ${DASM_DASC} + DEPENDS "${MINILUA_FILE}" + ) + + add_custom_target(buildvm_arch + DEPENDS ${BUILDVM_ARCH} + ) + + set_target_properties(buildvm_arch PROPERTIES + ADDITIONAL_CLEAN_FILES "${MINILUA_BINARY_DIR}" + ) +endif() + +# Buildvm +set(BUILDVM_BINARY_DIR "${CMAKE_CURRENT_BINARY_DIR}/HostBuildTools/buildvm") +set(BUILDVM_FILE "${BUILDVM_BINARY_DIR}/buildvm") + +add_custom_command( + OUTPUT "${BUILDVM_FILE}" + COMMAND ${CMAKE_COMMAND} + -B${BUILDVM_BINARY_DIR} + -G${CMAKE_GENERATOR} + -S${CMAKE_CURRENT_SOURCE_DIR}/HostBuildTools/buildvm + -DCMAKE_VERBOSE_MAKEFILE=${CMAKE_VERBOSE_MAKEFILE} + -DCMAKE_BUILD_TYPE=Release + -DLUAJIT_DIR=${LUAJIT_DIR} + -DBUILDVM_ARCH=${BUILDVM_ARCH} + -DHOST_ACFLAGS="${HOST_ACFLAGS}" + -DHOST_ALDFLAGS="${HOST_ALDFLAGS}" + COMMAND ${CMAKE_COMMAND} --build ${BUILDVM_BINARY_DIR} --config Release --verbose +) + +add_custom_target(buildvm + DEPENDS "${BUILDVM_FILE}" +) + +set_target_properties(buildvm PROPERTIES + ADDITIONAL_CLEAN_FILES "${BUILDVM_BINARY_DIR}" +) + +if (NOT PROJECT_PLATFORM_E2K) + add_dependencies(buildvm buildvm_arch) +endif() + +list(APPEND LJLIB_C + "${LUAJIT_DIR}/lib_base.c" + "${LUAJIT_DIR}/lib_bit.c" + "${LUAJIT_DIR}/lib_debug.c" + "${LUAJIT_DIR}/lib_ffi.c" + "${LUAJIT_DIR}/lib_io.c" + "${LUAJIT_DIR}/lib_jit.c" + "${LUAJIT_DIR}/lib_math.c" + "${LUAJIT_DIR}/lib_os.c" + "${LUAJIT_DIR}/lib_string.c" + "${LUAJIT_DIR}/lib_table.c" +) + +if (LUA_USE_RELATIVE_LOADLIB) + list(APPEND LJLIB_C "${LUAJIT_DIR}/lib_package_rel.c") +else() + list(APPEND LJLIB_C "${LUAJIT_DIR}/lib_package.c") +endif() + +macro(add_buildvm_target target mode) + add_custom_command( + OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${target}" + COMMAND "${BUILDVM_FILE}" ARGS -m ${mode} -o ${CMAKE_CURRENT_BINARY_DIR}/${target} ${ARGN} + WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" + DEPENDS buildvm ${ARGN} + ) +endmacro() + +if (WIN32) + add_buildvm_target(lj_vm.obj peobj) + set(LJ_VM_SRC "${CMAKE_CURRENT_BINARY_DIR}/lj_vm.obj") +else() + add_buildvm_target(lj_vm.S ${LJVM_MODE}) + set(LJ_VM_SRC "${CMAKE_CURRENT_BINARY_DIR}/lj_vm.S") + set_source_files_properties("${LJ_VM_SRC}" PROPERTIES LANGUAGE CXX) +endif() + +add_buildvm_target("lj_bcdef.h" "bcdef" ${LJLIB_C}) +add_buildvm_target("lj_ffdef.h" "ffdef" ${LJLIB_C}) +add_buildvm_target("lj_libdef.h" "libdef" ${LJLIB_C}) +add_buildvm_target("lj_recdef.h" "recdef" ${LJLIB_C}) +add_buildvm_target("lj_folddef.h" "folddef" "${LUAJIT_DIR}/lj_opt_fold.c") +add_buildvm_target("jit/vmdef.lua" "libvm" ${LJLIB_C}) + +target_sources(xrLuaJIT PRIVATE + "${LJ_VM_SRC}" + "${CMAKE_CURRENT_BINARY_DIR}/lj_ffdef.h" + "${CMAKE_CURRENT_BINARY_DIR}/lj_bcdef.h" + "${CMAKE_CURRENT_BINARY_DIR}/lj_libdef.h" + "${CMAKE_CURRENT_BINARY_DIR}/lj_recdef.h" + "${CMAKE_CURRENT_BINARY_DIR}/lj_folddef.h" +) + +if (CMAKE_UNITY_BUILD) + target_sources(xrLuaJIT PRIVATE "${LUAJIT_DIR}/ljamalg.c") +else() + # TODO: use lj_asm_ lj_emit lj_target? + target_sources(xrLuaJIT PRIVATE + ${LJLIB_C} + "${LUAJIT_DIR}/lauxlib.h" + "${LUAJIT_DIR}/lib_aux.c" + "${LUAJIT_DIR}/lib_init.c" + "${LUAJIT_DIR}/lj_alloc.c" + "${LUAJIT_DIR}/lj_alloc.h" + "${LUAJIT_DIR}/lj_api.c" + "${LUAJIT_DIR}/lj_asm.c" + "${LUAJIT_DIR}/lj_asm.h" + "${LUAJIT_DIR}/lj_assert.c" + "${LUAJIT_DIR}/lj_bc.c" + "${LUAJIT_DIR}/lj_bc.h" + "${LUAJIT_DIR}/lj_bcdump.h" + "${LUAJIT_DIR}/lj_bcread.c" + "${LUAJIT_DIR}/lj_bcwrite.c" + "${LUAJIT_DIR}/lj_buf.c" + "${LUAJIT_DIR}/lj_buf.h" + "${LUAJIT_DIR}/lj_carith.c" + "${LUAJIT_DIR}/lj_carith.h" + "${LUAJIT_DIR}/lj_ccall.c" + "${LUAJIT_DIR}/lj_ccall.h" + "${LUAJIT_DIR}/lj_ccallback.c" + "${LUAJIT_DIR}/lj_ccallback.h" + "${LUAJIT_DIR}/lj_cconv.c" + "${LUAJIT_DIR}/lj_cconv.h" + "${LUAJIT_DIR}/lj_cdata.c" + "${LUAJIT_DIR}/lj_cdata.h" + "${LUAJIT_DIR}/lj_char.c" + "${LUAJIT_DIR}/lj_char.h" + "${LUAJIT_DIR}/lj_clib.c" + "${LUAJIT_DIR}/lj_clib.h" + "${LUAJIT_DIR}/lj_cparse.c" + "${LUAJIT_DIR}/lj_cparse.h" + "${LUAJIT_DIR}/lj_crecord.c" + "${LUAJIT_DIR}/lj_crecord.h" + "${LUAJIT_DIR}/lj_ctype.c" + "${LUAJIT_DIR}/lj_ctype.h" + "${LUAJIT_DIR}/lj_debug.c" + "${LUAJIT_DIR}/lj_debug.h" + "${LUAJIT_DIR}/lj_def.h" + "${LUAJIT_DIR}/lj_dispatch.c" + "${LUAJIT_DIR}/lj_dispatch.h" + "${LUAJIT_DIR}/lj_err.c" + "${LUAJIT_DIR}/lj_err.h" + "${LUAJIT_DIR}/lj_errmsg.h" + "${LUAJIT_DIR}/lj_ff.h" + "${LUAJIT_DIR}/lj_ffrecord.c" + "${LUAJIT_DIR}/lj_ffrecord.h" + "${LUAJIT_DIR}/lj_frame.h" + "${LUAJIT_DIR}/lj_func.c" + "${LUAJIT_DIR}/lj_func.h" + "${LUAJIT_DIR}/lj_gc.c" + "${LUAJIT_DIR}/lj_gc.h" + "${LUAJIT_DIR}/lj_gdbjit.c" + "${LUAJIT_DIR}/lj_gdbjit.h" + "${LUAJIT_DIR}/lj_ir.c" + "${LUAJIT_DIR}/lj_ircall.h" + "${LUAJIT_DIR}/lj_iropt.h" + "${LUAJIT_DIR}/lj_jit.h" + "${LUAJIT_DIR}/lj_lex.c" + "${LUAJIT_DIR}/lj_lex.h" + "${LUAJIT_DIR}/lj_lib.c" + "${LUAJIT_DIR}/lj_lib.h" + "${LUAJIT_DIR}/lj_load.c" + "${LUAJIT_DIR}/lj_mcode.c" + "${LUAJIT_DIR}/lj_mcode.h" + "${LUAJIT_DIR}/lj_meta.c" + "${LUAJIT_DIR}/lj_meta.h" + "${LUAJIT_DIR}/lj_obj.c" + "${LUAJIT_DIR}/lj_obj.h" + "${LUAJIT_DIR}/lj_opt_dce.c" + "${LUAJIT_DIR}/lj_opt_fold.c" + "${LUAJIT_DIR}/lj_opt_loop.c" + "${LUAJIT_DIR}/lj_opt_mem.c" + "${LUAJIT_DIR}/lj_opt_narrow.c" + "${LUAJIT_DIR}/lj_opt_sink.c" + "${LUAJIT_DIR}/lj_opt_split.c" + "${LUAJIT_DIR}/lj_parse.c" + "${LUAJIT_DIR}/lj_parse.h" + "${LUAJIT_DIR}/lj_prng.c" + "${LUAJIT_DIR}/lj_prng.h" + "${LUAJIT_DIR}/lj_profile.c" + "${LUAJIT_DIR}/lj_profile.h" + "${LUAJIT_DIR}/lj_record.c" + "${LUAJIT_DIR}/lj_record.h" + "${LUAJIT_DIR}/lj_snap.c" + "${LUAJIT_DIR}/lj_snap.h" + "${LUAJIT_DIR}/lj_state.c" + "${LUAJIT_DIR}/lj_state.h" + "${LUAJIT_DIR}/lj_str.c" + "${LUAJIT_DIR}/lj_str.h" + "${LUAJIT_DIR}/lj_strfmt.c" + "${LUAJIT_DIR}/lj_strfmt.h" + "${LUAJIT_DIR}/lj_strfmt_num.c" + "${LUAJIT_DIR}/lj_strscan.c" + "${LUAJIT_DIR}/lj_strscan.h" + "${LUAJIT_DIR}/lj_tab.c" + "${LUAJIT_DIR}/lj_tab.h" + "${LUAJIT_DIR}/lj_trace.c" + "${LUAJIT_DIR}/lj_trace.h" + "${LUAJIT_DIR}/lj_traceerr.h" + "${LUAJIT_DIR}/lj_udata.c" + "${LUAJIT_DIR}/lj_udata.h" + "${LUAJIT_DIR}/lj_vm.h" + "${LUAJIT_DIR}/lj_vmevent.c" + "${LUAJIT_DIR}/lj_vmevent.h" + "${LUAJIT_DIR}/lj_vmmath.c" + "${LUAJIT_DIR}/lua.h" + "${LUAJIT_DIR}/lua.hpp" + "${LUAJIT_DIR}/luaconf.h" + "${LUAJIT_DIR}/luajit.h" + "${LUAJIT_DIR}/lualib.h" + ) +endif() + +target_include_directories(xrLuaJIT + PUBLIC + "${CMAKE_SOURCE_DIR}/Externals/LuaJIT/src" + + PRIVATE + "${CMAKE_CURRENT_BINARY_DIR}" +) + +target_link_libraries(xrLuaJIT + PRIVATE + $<$:m> + $<$:dl> +) + +target_compile_options(xrLuaJIT + PRIVATE + -Wno-comment +) + +set_target_properties(xrLuaJIT PROPERTIES + PREFIX "" + UNITY_BUILD OFF +) + +install( + TARGETS xrLuaJIT LIBRARY + DESTINATION ${CMAKE_INSTALL_LIBDIR} +) + +if (LUAJIT_BUILD_APP) + add_executable(luajit + "${LUAJIT_DIR}/luajit.c" + ) + + target_link_libraries(luajit + PRIVATE + xrLuaJIT + ) + + target_link_options(luajit + PRIVATE + ${TARGET_XLDFLAGS} + ) + + # On Windows build a no-console variant also + if (LUA_BUILD_WLUA) + # TODO: check if it works + add_executable(wluajit WIN32 + "${LUAJIT_DIR}/wmain.c" + "${LUAJIT_DIR}/luajit.c" + "${LUAJIT_DIR}/luajit.rc" + ) + target_link_libraries(wluajit + PRIVATE + xrLuaJIT + ) + endif() +endif() diff --git a/Externals/LuaJIT-proj/HostBuildTools/buildvm/CMakeLists.txt b/Externals/LuaJIT-proj/HostBuildTools/buildvm/CMakeLists.txt index 2bc4fd473c5..f0c2eaaded2 100644 --- a/Externals/LuaJIT-proj/HostBuildTools/buildvm/CMakeLists.txt +++ b/Externals/LuaJIT-proj/HostBuildTools/buildvm/CMakeLists.txt @@ -1,6 +1,8 @@ -cmake_minimum_required(VERSION 3.13) +cmake_minimum_required(VERSION 3.22) -project(buildvm) +project(buildvm C) + +set(CMAKE_EXPORT_COMPILE_COMMANDS ON) if (CMAKE_VERBOSE_MAKEFILE) set(CMAKE_EXECUTE_PROCESS_COMMAND_ECHO STDOUT) @@ -8,13 +10,17 @@ endif() separate_arguments(HOST_ACFLAGS) separate_arguments(HOST_ALDFLAGS) -separate_arguments(BUILDVM_SRC NATIVE_COMMAND ${BUILDVM_SRC}) -separate_arguments(BUILDVM_ARCH) add_executable(buildvm) target_sources(buildvm PRIVATE - "${BUILDVM_SRC}" + "${LUAJIT_DIR}/host/buildvm_asm.c" + "${LUAJIT_DIR}/host/buildvm_fold.c" + "${LUAJIT_DIR}/host/buildvm_lib.c" + #"${LUAJIT_DIR}/host/buildvm_libbc.h" + "${LUAJIT_DIR}/host/buildvm_peobj.c" + "${LUAJIT_DIR}/host/buildvm.c" + "${LUAJIT_DIR}/host/buildvm.h" "${BUILDVM_ARCH}" ) @@ -27,6 +33,7 @@ target_include_directories(buildvm target_compile_options(buildvm PRIVATE ${HOST_ACFLAGS} + -Wno-discarded-qualifiers ) target_link_options(buildvm diff --git a/Externals/LuaJIT-proj/HostBuildTools/minilua/CMakeLists.txt b/Externals/LuaJIT-proj/HostBuildTools/minilua/CMakeLists.txt index 2c450dbf589..7f1d3e2b8ae 100644 --- a/Externals/LuaJIT-proj/HostBuildTools/minilua/CMakeLists.txt +++ b/Externals/LuaJIT-proj/HostBuildTools/minilua/CMakeLists.txt @@ -1,6 +1,8 @@ -cmake_minimum_required(VERSION 3.13) +cmake_minimum_required(VERSION 3.22) -project(minilua) +project(minilua C) + +set(CMAKE_EXPORT_COMPILE_COMMANDS ON) if (CMAKE_VERBOSE_MAKEFILE) set(CMAKE_EXECUTE_PROCESS_COMMAND_ECHO STDOUT) diff --git a/Externals/LuaJIT-proj/luajit.cmake b/Externals/LuaJIT-proj/luajit.cmake deleted file mode 100644 index e71ba2946d2..00000000000 --- a/Externals/LuaJIT-proj/luajit.cmake +++ /dev/null @@ -1,645 +0,0 @@ -# Copyright (C) 2007-2013 LuaDist. -# Created by Peter Drahoš -# Redistribution and use of this file is allowed according to the terms of the MIT license. -# For details see the COPYRIGHT file distributed with LuaDist. -# Please note that the package source code is licensed under its own license. - -cmake_minimum_required(VERSION 3.13) - -project(xrLuajit C CXX ASM) - -# Version -set(MAJVER 2) -set(MINVER 0) -set(RELVER 5) -set(ABIVER 5.1) -set(NODOTABIVER 51) - -set(CMAKE_OSX_SYSROOT "/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk") -set(LUAJIT_DIR ${CMAKE_SOURCE_DIR}/Externals/LuaJIT/src CACHE PATH "Location of luajit sources") - -option(BUILD_STATIC_LIB "Build static library" OFF) -option(BUILD_DYNAMIC_LIB "Build dynamic library" ON) -option(BUILD_LIB_ONLY "Build library only" ON) - -# NOTE: Not working because there is no lib_package_rel.c file -option(LUA_USE_RELATIVE_LOADLIB "Use modified loadlib.c with support for relative paths on posix systems (Not working)" OFF) - -# Extra flags -option(LUAJIT_DISABLE_FFI "Disable the FFI extension to reduce the size of the LuaJIT executable. But please consider that the FFI library is compiled-in, but NOT loaded by default. It only allocates any memory, if you actually make use of it" OFF) -option(LUAJIT_ENABLE_LUA52COMPAT "Features from Lua 5.2 that are unlikely to break existing code are enabled by default. Some other features that *might* break some existing code (e.g. __pairs or os.execute() return values) can be enabled here. Note: this does not provide full compatibility with Lua 5.2 at this time" OFF) -option(LUAJIT_DISABLE_JIT "Disable the JIT compiler, i.e. turn LuaJIT into a pure interpreter" OFF) -option(LUAJIT_DISABLE_GC64 "Disable LJ_GC64 mode for x64" OFF) -option(LUAJIT_USE_SYSMALLOC "Use the system provided memory allocator (realloc) instead of the bundled memory allocator. This is slower, but sometimes helpful for debugging. It's helpful for Valgrind's memcheck tool, too. This option cannot be enabled on x64, since the built-in allocator is mandatory" OFF) -option(LUAJIT_USE_VALGRIND "This option is required to run LuaJIT under Valgrind. The Valgrind header files must be installed. You should enable debug information, too." OFF) -option(LUAJIT_USE_GDBJIT "This is the client for the GDB JIT API. GDB 7.0 or higher is required to make use of it. See lj_gdbjit.c for details. Enabling this causes a non-negligible overhead, even when not running under GDB" OFF) - -option(LUA_USE_APICHECK "Turn on assertions for the Lua/C API to debug problems with lua_* calls. This is rather slow, use only while developing C libraries/embeddings" OFF) -option(LUA_USE_ASSERT "Turn on assertions for the whole LuaJIT VM. This significantly slows down everything. Use only if you suspect a problem with LuaJIT itself" OFF) - -option(LUAJIT_DEBUG "Generate debug information" OFF) - -if (WIN32) - option(LUA_BUILD_WLUA "Build wluajit interpreter for no-console applications." ON) -elseif (APPLE) - option(LUA_USE_POSIX "Use POSIX functionality." ON) - option(LUA_USE_DLOPEN "Use dynamic linker to load modules." ON) -else() - option(LUA_USE_POSIX "Use POSIX functionality." ON) - option(LUA_USE_DLOPEN "Use dynamic linker to load modules." ON) -endif() - -# TODO: check if we need luaconf.h -# TODO: add other variables from luaconf.h if we need them -# Configuration for luaconf.h -set(LUA_PATH "LUA_PATH" CACHE STRING "Environment variable to use as package.path") -set(LUA_CPATH "LUA_CPATH" CACHE STRING "Environment variable to use as package.cpath") -set(LUA_INIT "LUA_INIT" CACHE STRING "Environment variable for initial script") - -# Clean unnecessary files in LuaJIT source directory -execute_process( - COMMAND ${CMAKE_MAKE_PROGRAM} clean - WORKING_DIRECTORY ${LUAJIT_DIR} -) - -# Compiler options -if (PROJECT_PLATFORM_E2K) # E2K: O3 on mcst-lcc approximately equal to O2 at gcc X86/ARM - set(CCOPT_OPT_LEVEL "-O3") -else() - set(CCOPT_OPT_LEVEL "-O2") -endif() - -# TODO Refactor all these options -if (USE_ADDRESS_SANITIZER) - set(CCOPT "${CCOPT_OPT_LEVEL} -fno-stack-protector") -else() - set(CCOPT "${CCOPT_OPT_LEVEL} -fomit-frame-pointer -fno-stack-protector") -endif() - -# Target-specific compiler options -set(CCOPT_x86 "-march=i686 -msse -msse2 -mfpmath=sse") -set(CCOPT_x64 "") -set(CCOPT_arm "") -set(CCOPT_arm64 "") -set(CCOPT_ppc "") -set(CCOPT_mips "") - -if (CCDEBUG) - set(LUAJIT_DEBUG "-g") -endif() - -set(CCWARN "-Wall") -#string(APPEND CCWARN "-Wextra -Wdeclaration-after-statement -Wredundant-decls -Wshadow -Wpointer-arith") - -if (LUAJIT_DISABLE_FFI) - string(APPEND XCFLAGS " -DLUAJIT_DISABLE_FFI") -endif() - -if (LUAJIT_ENABLE_LUA52COMPAT) - string(APPEND XCFLAGS " -DLUAJIT_ENABLE_LUA52COMPAT") -endif() - -if (LUAJIT_DISABLE_JIT) - string(APPEND XCFLAGS " -DLUAJIT_DISABLE_JIT") -endif() - -if (LUAJIT_DISABLE_GC64) - string(APPEND XCFLAGS " -DLUAJIT_DISABLE_GC64") -endif() - -if (LUAJIT_USE_SYSMALLOC) - string(APPEND XCFLAGS " -DLUAJIT_USE_SYSMALLOC") -endif() - -if (LUAJIT_USE_VALGRIND) - string(APPEND XCFLAGS " -DLUAJIT_USE_VALGRIND") -endif() - -if (LUAJIT_USE_GDBJIT) - string(APPEND XCFLAGS " -DLUAJIT_USE_GDBJIT") -endif() - -if (LUA_USE_APICHECK) - string(APPEND XCFLAGS " -DLUA_USE_APICHECK") -endif() - -if (LUA_USE_ASSERT) - string(APPEND XCFLAGS " -DLUA_USE_ASSERT") -endif() - -set(ASOPTIONS ${CCOPT} ${CCWARN}${XCFLAGS}) -set(CCOPTIONS ${CCDEBUG} ${ASOPTIONS}) - -set(TESTARCH_C_FLAGS ${CMAKE_C_FLAGS}) -string(REPLACE " " ";" TESTARCH_C_FLAGS "${TESTARCH_C_FLAGS}") - -set(TESTARCH_FLAGS "${TESTARCH_C_FLAGS} ${CCOPTIONS} -E lj_arch.h -dM") -string(REPLACE " " ";" TESTARCH_FLAGS "${TESTARCH_FLAGS}") - -if (APPLE) - set(ENV{SDKROOT} ${CMAKE_OSX_SYSROOT}) -endif() - -execute_process( - COMMAND ${CMAKE_C_COMPILER} ${TESTARCH_FLAGS} - WORKING_DIRECTORY ${LUAJIT_DIR} - OUTPUT_VARIABLE TARGET_TESTARCH -) - -if ("${TARGET_TESTARCH}" MATCHES "LJ_TARGET_X64") - set(TARGET_LJARCH "x64") -elseif ("${TARGET_TESTARCH}" MATCHES "LJ_TARGET_X86") - set(TARGET_LJARCH "x86") -elseif ("${TARGET_TESTARCH}" MATCHES "LJ_TARGET_ARM64") - set(TARGET_LJARCH "arm64") - if ("${TARGET_TESTARCH}" MATCHES "__AARCH64EB__") - set(TARGET_ARCH "-D__AARCH64EB__=1") - endif() -elseif ("${TARGET_TESTARCH}" MATCHES "LJ_TARGET_ARM") - set(TARGET_LJARCH "arm") -elseif ("${TARGET_TESTARCH}" MATCHES "LJ_TARGET_PPC") - set(TARGET_LJARCH "ppc") -elseif ("${TARGET_TESTARCH}" MATCHES "LJ_TARGET_MIPS") - if ("${TARGET_TESTARCH}" MATCHES "MIPSEL") - set(TARGET_ARCH "-D__MIPSEL__=1") - endif() - if ("${TARGET_TESTARCH}" MATCHES "LJ_TARGET_MIPS64") - set(TARGET_LJARCH "mips64") - else() - set(TARGET_LJARCH "mips") - endif() -elseif (${CMAKE_SYSTEM_PROCESSOR} STREQUAL "e2k") # MCST Elbrus 2000 - set(TARGET_LJARCH "e2k") -else() - message(FATAL_ERROR "Unsupported luajit target architecture") -endif() - -string(APPEND TARGET_ARCH "-DLUAJIT_TARGET=LUAJIT_ARCH_${TARGET_LJARCH}") -string(APPEND TARGET_XCFLAGS "${CCOPT_${TARGET_LJARCH}}") - -# TODO: add PREFIX, TARGET_XCFLAGS, TARGET_DYNXLDOPTS, MULTILIB here (lines 289-302 in Makefile) - -# TODO: use TARGET_STRIP flags? - -if (WIN32) - #string(APPEND TARGET_STRIP "--strip-unneeded") - - set(TARGET_DLLDOTANAME "libluajit-${ABIVER}.dll.a") - string(APPEND TARGET_XSHLDFLAGS " -shared -Wl,--out-implib,${TARGET_DLLDOTANAME}") - - if (BUILD_DYNAMIC_LIB) - string(APPEND HOST_XCFLAGS " -DLUA_BUILD_AS_DLL") - endif() - - set(LJVM_MODE peobj) -elseif (APPLE) - if (CMAKE_OSX_DEPLOYMENT_TARGET STREQUAL "") - message(FATAL_ERROR "Missing export MACOSX_DEPLOYMENT_TARGET=XX.YY") - endif() - - #string(APPEND TARGET_STRIP "-x") - # XXX: doesn't compile with Apple Clang - #string(APPEND TARGET_XSHLDFLAGS " -dynamiclib -single_module -undefined dynamic_lookup -fPIC") - #string(APPEND TARGET_XSHLDFLAGS " -install_name ${TARGET_DYLIBPATH} -compatibility_version ${MAJVER}.${MINVER} -current_version ${MAJVER}.${MINVER}.${RELVER}") - - if (${TARGET_LJARCH} STREQUAL "x64") - string(APPEND TARGET_XLDFLAGS " -pagezero_size 10000 -image_base 100000000 -image_base 7fff04c4a000") - elseif (${TARGET_LJARCH} STREQUAL "arm64") - string(APPEND TARGET_XCFLAGS " -fno-omit-frame-pointer") - endif() - - set(LJVM_MODE machasm) -else() - set(LJVM_MODE elfasm) -endif() - -# TODO: add HOST_SYS != TARGET_SYS code (lines 354-372 in Makefile) -#string(APPEND HOST_XCFLAGS "-DLUA_BUILD_AS_DLL -DLUAJIT_OS=LUAJIT_OS_WINDOWS") -# TODO: add "-DTARGET_OS_IPHONE=1" on iOS -#string(APPEND HOST_XCFLAGS "-DLUAJIT_OS=LUAJIT_OS_OSX") - -if ("${TARGET_TESTARCH}" MATCHES "LJ_LE 1") - string(APPEND DASM_FLAGS "-D ENDIAN_LE") -else() - string(APPEND DASM_FLAGS "-D ENDIAN_BE") -endif() - -if ("${TARGET_TESTARCH}" MATCHES "LJ_ARCH_BITS 64") - string(APPEND DASM_FLAGS " -D P64") -endif() - -if ("${TARGET_TESTARCH}" MATCHES "LJ_HASJIT 1") - string(APPEND DASM_FLAGS " -D JIT") -endif() - -if ("${TARGET_TESTARCH}" MATCHES "LJ_HASFFI 1") - string(APPEND DASM_FLAGS " -D FFI") -endif() - -if ("${TARGET_TESTARCH}" MATCHES "LJ_DUALNUM 1") - string(APPEND DASM_FLAGS " -D DUALNUM") -endif() - -if ("${TARGET_TESTARCH}" MATCHES "LJ_ARCH_HASFPU 1") - string(APPEND DASM_FLAGS " -D FPU") - string(APPEND TARGET_ARCH " -DLJ_ARCH_HASFPU=1") -else() - string(APPEND TARGET_ARCH " -DLJ_ARCH_HASFPU=0") -endif() - -if ("${TARGET_TESTARCH}" MATCHES "LJ_ABI_SOFTFP 1") - string(APPEND TARGET_ARCH " -DLJ_ABI_SOFTFP=1") -else() - string(APPEND DASM_FLAGS " -D HFABI") - string(APPEND TARGET_ARCH " -DLJ_ABI_SOFTFP=0") -endif() - -if ("${TARGET_TESTARCH}" MATCHES "LJ_NO_UNWIND 1") - string(APPEND DASM_FLAGS " -D NO_UNWIND") - string(APPEND TARGET_ARCH " -DLUAJIT_NO_UNWIND") -endif() - -if ("${TARGET_TESTARCH}" MATCHES "LJ_ARCH_VERSION") - string(REGEX MATCH "LJ_ARCH_VERSION ([0-9]+)$" _ "${TARGET_TESTARCH}") - string(APPEND DASM_FLAGS " -D VER=${CMAKE_MATCH_1}") -else() - string(APPEND DASM_FLAGS " -D VER=") -endif() - -set(DASM_ARCH ${TARGET_LJARCH}) - -if (WIN32) - string(APPEND DASM_FLAGS " -D WIN") -endif() - -if (TARGET_LJARCH STREQUAL "x64") - if (NOT "${TARGET_TESTARCH}" MATCHES "LJ_FR2 1") - set(DASM_ARCH "x86") - endif() -elseif (TARGET_LJARCH STREQUAL "arm") - if (APPLE) - string(APPEND DASM_FLAGS " -D IOS") - endif() -elseif ("${TARGET_TESTARCH}" MATCHES "LJ_TARGET_MIPSR6") - string(APPEND DASM_FLAGS " -D MIPSR6") -endif() - -if (TARGET_LJARCH STREQUAL "ppc") - if ("${TARGET_TESTARCH}" MATCHES "LJ_ARCH_SQRT 1") - string(APPEND DASM_FLAGS " -D SQRT") - endif() - if ("${TARGET_TESTARCH}" MATCHES "LJ_ARCH_ROUND 1") - string(APPEND DASM_FLAGS " -D ROUND") - endif() - if ("${TARGET_TESTARCH}" MATCHES "LJ_ARCH_PPC32ON64 1") - string(APPEND DASM_FLAGS " -D GPR64") - endif() - if ("${TARGET_TESTARCH}" MATCHES "LJ_ARCH_PPC64") - set(DASM_ARCH "ppc64") - endif() -endif() - -set(HOST_ACFLAGS "${CMAKE_C_FLAGS} ${CCOPTIONS} ${TARGET_ARCH}") -set(HOST_ALDFLAGS "${CMAKE_C_FLAGS}") - -string(APPEND TARGET_XCFLAGS " -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -U_FORTIFY_SOURCE") - -string(REPLACE " " ";" CCOPTIONS "${CCOPTIONS}") -string(REPLACE " " ";" HOST_ACFLAGS "${HOST_ACFLAGS}") -string(REPLACE " " ";" HOST_ALDFLAGS "${HOST_ALDFLAGS}") -string(REPLACE " " ";" DASM_FLAGS "${DASM_FLAGS}") -string(REPLACE " " ";" TARGET_XCFLAGS "${TARGET_XCFLAGS}") - -set(DASM_DASC ${LUAJIT_DIR}/vm_${DASM_ARCH}.dasc) -set(DASM ${LUAJIT_DIR}/../dynasm/dynasm.lua) - -if (PROJECT_PLATFORM_E2K) - set(BUILDVM_ARCH "${LUAJIT_DIR}/host/buildvm_arch.h") -else() - set(BUILDVM_ARCH "${CMAKE_CURRENT_BINARY_DIR}/buildvm_arch.h") -endif() - -# Generate buildvm arch header -if (NOT PROJECT_PLATFORM_E2K) - add_custom_command( - OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/HostBuildTools/minilua/minilua" - COMMAND ${CMAKE_COMMAND} - -B"HostBuildTools/minilua" - -G "${CMAKE_GENERATOR}" - -H${CMAKE_CURRENT_SOURCE_DIR}/HostBuildTools/minilua - -DCMAKE_VERBOSE_MAKEFILE=${CMAKE_VERBOSE_MAKEFILE} - -DCMAKE_BUILD_TYPE:STRING="Release" - -DLUAJIT_DIR=${LUAJIT_DIR} - -DLUA_USE_POSIX="${LUA_USE_POSIX}" - -DHOST_ACFLAGS="${HOST_ACFLAGS}" - -DHOST_ALDFLAGS="${HOST_ALDFLAGS}" - COMMAND ${CMAKE_COMMAND} --build "${CMAKE_CURRENT_BINARY_DIR}/HostBuildTools/minilua" --config Release - ) - - add_custom_command(OUTPUT ${BUILDVM_ARCH} - COMMAND "${CMAKE_CURRENT_BINARY_DIR}/HostBuildTools/minilua/minilua" ${DASM} ${DASM_FLAGS} -o ${BUILDVM_ARCH} ${DASM_DASC} - DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/HostBuildTools/minilua/minilua" - ) - - add_custom_target(buildvm_arch - DEPENDS ${BUILDVM_ARCH} - ) -endif() - -# Buildvm -set(BUILDVM_SRC - "${LUAJIT_DIR}/host/buildvm_asm.c" - "${LUAJIT_DIR}/host/buildvm_fold.c" - "${LUAJIT_DIR}/host/buildvm_lib.c" - #"${LUAJIT_DIR}/host/buildvm_libbc.h" - "${LUAJIT_DIR}/host/buildvm_peobj.c" - "${LUAJIT_DIR}/host/buildvm.c" - "${LUAJIT_DIR}/host/buildvm.h" -) - -group_sources(BUILDVM_SRC) - -add_custom_command( - OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/HostBuildTools/buildvm/buildvm" - COMMAND ${CMAKE_COMMAND} - -B"HostBuildTools/buildvm" - -G "${CMAKE_GENERATOR}" - -H${CMAKE_CURRENT_SOURCE_DIR}/HostBuildTools/buildvm - -DCMAKE_VERBOSE_MAKEFILE=${CMAKE_VERBOSE_MAKEFILE} - -DCMAKE_BUILD_TYPE:STRING="Release" - -DLUAJIT_DIR=${LUAJIT_DIR} - -DBUILDVM_SRC="${BUILDVM_SRC}" - -DBUILDVM_ARCH="${BUILDVM_ARCH}" - -DHOST_ACFLAGS="${HOST_ACFLAGS}" - -DHOST_ALDFLAGS="${HOST_ALDFLAGS}" - COMMAND ${CMAKE_COMMAND} --build HostBuildTools/buildvm --config Release -) - -add_custom_target(buildvm - DEPENDS "${CMAKE_CURRENT_BINARY_DIR}/HostBuildTools/buildvm/buildvm" -) - -if (NOT PROJECT_PLATFORM_E2K) - add_dependencies(buildvm buildvm_arch) -endif() - -set(LJLIB_C - "${LUAJIT_DIR}/lib_base.c" - "${LUAJIT_DIR}/lib_bit.c" - "${LUAJIT_DIR}/lib_debug.c" - "${LUAJIT_DIR}/lib_ffi.c" - "${LUAJIT_DIR}/lib_io.c" - "${LUAJIT_DIR}/lib_jit.c" - "${LUAJIT_DIR}/lib_math.c" - "${LUAJIT_DIR}/lib_os.c" - "${LUAJIT_DIR}/lib_string.c" - "${LUAJIT_DIR}/lib_table.c" -) - -if (LUA_USE_RELATIVE_LOADLIB) - list(APPEND LJLIB_C "${LUAJIT_DIR}/lib_package_rel.c") -else() - list(APPEND LJLIB_C "${LUAJIT_DIR}/lib_package.c") -endif() - -macro(add_buildvm_target target mode) - add_custom_command( - OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/${target}" - COMMAND "${CMAKE_CURRENT_BINARY_DIR}/HostBuildTools/buildvm/buildvm" ARGS -m ${mode} -o ${CMAKE_CURRENT_BINARY_DIR}/${target} ${ARGN} - WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" - DEPENDS buildvm ${ARGN} - ) -endmacro() - -if (WIN32) - add_buildvm_target(lj_vm.obj peobj) - set(LJ_VM_SRC "${CMAKE_CURRENT_BINARY_DIR}/lj_vm.obj") -else() - add_buildvm_target(lj_vm.S ${LJVM_MODE}) - set(LJ_VM_SRC "${CMAKE_CURRENT_BINARY_DIR}/lj_vm.S") - set_source_files_properties(${LJ_VM_SRC} PROPERTIES LANGUAGE CXX) -endif() - -add_buildvm_target("lj_bcdef.h" "bcdef" ${LJLIB_C}) -add_buildvm_target("lj_ffdef.h" "ffdef" ${LJLIB_C}) -add_buildvm_target("lj_libdef.h" "libdef" ${LJLIB_C}) -add_buildvm_target("lj_recdef.h" "recdef" ${LJLIB_C}) -add_buildvm_target("lj_folddef.h" "folddef" "${LUAJIT_DIR}/lj_opt_fold.c") -add_buildvm_target("jit/vmdef.lua" "libvm" ${LJLIB_C}) - -SET(DEPS - ${LJ_VM_SRC} - "${CMAKE_CURRENT_BINARY_DIR}/lj_ffdef.h" - "${CMAKE_CURRENT_BINARY_DIR}/lj_bcdef.h" - "${CMAKE_CURRENT_BINARY_DIR}/lj_libdef.h" - "${CMAKE_CURRENT_BINARY_DIR}/lj_recdef.h" - "${CMAKE_CURRENT_BINARY_DIR}/lj_folddef.h" -) - -group_sources(DEPS) - -if (CMAKE_UNITY_BUILD) - set(LJCORE_C "${LUAJIT_DIR}/ljamalg.c") -else() - # TODO: use lj_asm_ lj_emit lj_target? - set(LJCORE_C - ${LJLIB_C} - "${LUAJIT_DIR}/lauxlib.h" - "${LUAJIT_DIR}/lib_aux.c" - "${LUAJIT_DIR}/lib_init.c" - "${LUAJIT_DIR}/lj_alloc.c" - "${LUAJIT_DIR}/lj_alloc.h" - "${LUAJIT_DIR}/lj_api.c" - "${LUAJIT_DIR}/lj_asm.c" - "${LUAJIT_DIR}/lj_asm.h" - "${LUAJIT_DIR}/lj_assert.c" - "${LUAJIT_DIR}/lj_bc.c" - "${LUAJIT_DIR}/lj_bc.h" - "${LUAJIT_DIR}/lj_bcdump.h" - "${LUAJIT_DIR}/lj_bcread.c" - "${LUAJIT_DIR}/lj_bcwrite.c" - "${LUAJIT_DIR}/lj_buf.c" - "${LUAJIT_DIR}/lj_buf.h" - "${LUAJIT_DIR}/lj_carith.c" - "${LUAJIT_DIR}/lj_carith.h" - "${LUAJIT_DIR}/lj_ccall.c" - "${LUAJIT_DIR}/lj_ccall.h" - "${LUAJIT_DIR}/lj_ccallback.c" - "${LUAJIT_DIR}/lj_ccallback.h" - "${LUAJIT_DIR}/lj_cconv.c" - "${LUAJIT_DIR}/lj_cconv.h" - "${LUAJIT_DIR}/lj_cdata.c" - "${LUAJIT_DIR}/lj_cdata.h" - "${LUAJIT_DIR}/lj_char.c" - "${LUAJIT_DIR}/lj_char.h" - "${LUAJIT_DIR}/lj_clib.c" - "${LUAJIT_DIR}/lj_clib.h" - "${LUAJIT_DIR}/lj_cparse.c" - "${LUAJIT_DIR}/lj_cparse.h" - "${LUAJIT_DIR}/lj_crecord.c" - "${LUAJIT_DIR}/lj_crecord.h" - "${LUAJIT_DIR}/lj_ctype.c" - "${LUAJIT_DIR}/lj_ctype.h" - "${LUAJIT_DIR}/lj_debug.c" - "${LUAJIT_DIR}/lj_debug.h" - "${LUAJIT_DIR}/lj_def.h" - "${LUAJIT_DIR}/lj_dispatch.c" - "${LUAJIT_DIR}/lj_dispatch.h" - "${LUAJIT_DIR}/lj_err.c" - "${LUAJIT_DIR}/lj_err.h" - "${LUAJIT_DIR}/lj_errmsg.h" - "${LUAJIT_DIR}/lj_ff.h" - "${LUAJIT_DIR}/lj_ffrecord.c" - "${LUAJIT_DIR}/lj_ffrecord.h" - "${LUAJIT_DIR}/lj_frame.h" - "${LUAJIT_DIR}/lj_func.c" - "${LUAJIT_DIR}/lj_func.h" - "${LUAJIT_DIR}/lj_gc.c" - "${LUAJIT_DIR}/lj_gc.h" - "${LUAJIT_DIR}/lj_gdbjit.c" - "${LUAJIT_DIR}/lj_gdbjit.h" - "${LUAJIT_DIR}/lj_ir.c" - "${LUAJIT_DIR}/lj_ircall.h" - "${LUAJIT_DIR}/lj_iropt.h" - "${LUAJIT_DIR}/lj_jit.h" - "${LUAJIT_DIR}/lj_lex.c" - "${LUAJIT_DIR}/lj_lex.h" - "${LUAJIT_DIR}/lj_lib.c" - "${LUAJIT_DIR}/lj_lib.h" - "${LUAJIT_DIR}/lj_load.c" - "${LUAJIT_DIR}/lj_mcode.c" - "${LUAJIT_DIR}/lj_mcode.h" - "${LUAJIT_DIR}/lj_meta.c" - "${LUAJIT_DIR}/lj_meta.h" - "${LUAJIT_DIR}/lj_obj.c" - "${LUAJIT_DIR}/lj_obj.h" - "${LUAJIT_DIR}/lj_opt_dce.c" - "${LUAJIT_DIR}/lj_opt_fold.c" - "${LUAJIT_DIR}/lj_opt_loop.c" - "${LUAJIT_DIR}/lj_opt_mem.c" - "${LUAJIT_DIR}/lj_opt_narrow.c" - "${LUAJIT_DIR}/lj_opt_sink.c" - "${LUAJIT_DIR}/lj_opt_split.c" - "${LUAJIT_DIR}/lj_parse.c" - "${LUAJIT_DIR}/lj_parse.h" - "${LUAJIT_DIR}/lj_prng.c" - "${LUAJIT_DIR}/lj_prng.h" - "${LUAJIT_DIR}/lj_profile.c" - "${LUAJIT_DIR}/lj_profile.h" - "${LUAJIT_DIR}/lj_record.c" - "${LUAJIT_DIR}/lj_record.h" - "${LUAJIT_DIR}/lj_snap.c" - "${LUAJIT_DIR}/lj_snap.h" - "${LUAJIT_DIR}/lj_state.c" - "${LUAJIT_DIR}/lj_state.h" - "${LUAJIT_DIR}/lj_str.c" - "${LUAJIT_DIR}/lj_str.h" - "${LUAJIT_DIR}/lj_strfmt.c" - "${LUAJIT_DIR}/lj_strfmt.h" - "${LUAJIT_DIR}/lj_strfmt_num.c" - "${LUAJIT_DIR}/lj_strscan.c" - "${LUAJIT_DIR}/lj_strscan.h" - "${LUAJIT_DIR}/lj_tab.c" - "${LUAJIT_DIR}/lj_tab.h" - "${LUAJIT_DIR}/lj_trace.c" - "${LUAJIT_DIR}/lj_trace.h" - "${LUAJIT_DIR}/lj_traceerr.h" - "${LUAJIT_DIR}/lj_udata.c" - "${LUAJIT_DIR}/lj_udata.h" - "${LUAJIT_DIR}/lj_vm.h" - "${LUAJIT_DIR}/lj_vmevent.c" - "${LUAJIT_DIR}/lj_vmevent.h" - "${LUAJIT_DIR}/lj_vmmath.c" - "${LUAJIT_DIR}/lua.h" - "${LUAJIT_DIR}/lua.hpp" - "${LUAJIT_DIR}/luaconf.h" - "${LUAJIT_DIR}/luajit.h" - "${LUAJIT_DIR}/lualib.h" - ) -endif() - -group_sources(LJCORE_C) - -if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug") - set(LIB_NAME ${PROJECT_NAME}-debug) -else() - set(LIB_NAME ${PROJECT_NAME}) -endif() - -# TODO: check windows supports same target name for static and shared lib -if (BUILD_STATIC_LIB) - add_library(${LIB_NAME} STATIC - ${LJCORE_C} - ${DEPS} - ) - target_link_libraries(${LIB_NAME} ${LIBS}) -endif() - -if (BUILD_DYNAMIC_LIB) - add_library(${LIB_NAME} SHARED - ${LJCORE_C} - ${DEPS} - ) -endif() - -target_include_directories(${LIB_NAME} - PRIVATE - ${CMAKE_CURRENT_BINARY_DIR} -) - -target_link_libraries(${LIB_NAME} - PRIVATE - $<$:m> - $<$:dl> -) - -target_compile_options(${LIB_NAME} - PRIVATE - ${CCOPTIONS} - ${TARGET_XCFLAGS} -) - -target_link_options(${LIB_NAME} - PRIVATE - ${TARGET_XSHLDFLAGS} -) - -set_target_properties(${LIB_NAME} PROPERTIES - PREFIX "" - UNITY_BUILD OFF -) - -install(TARGETS ${LIB_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ -) - -if (NOT ${BUILD_LIB_ONLY}) - add_executable(luajit - "${LUAJIT_DIR}/luajit.c" - ) - - target_link_libraries(luajit - PRIVATE - ${LIB_NAME} - ) - - target_link_options(luajit - PRIVATE - ${TARGET_XLDFLAGS} - ) - - # On Windows build a no-console variant also - if (LUA_BUILD_WLUA) - # TODO: check if it works - add_executable(wluajit WIN32 - "${LUAJIT_DIR}/wmain.c" - "${LUAJIT_DIR}/luajit.c" - "${LUAJIT_DIR}/luajit.rc" - ) - target_link_libraries(wluajit - PRIVATE - ${LIB_NAME} - ) - endif() -endif() diff --git a/Externals/NVTT/CMakeLists.txt b/Externals/NVTT/CMakeLists.txt index 9ed004a39a4..b704148eae8 100644 --- a/Externals/NVTT/CMakeLists.txt +++ b/Externals/NVTT/CMakeLists.txt @@ -1,9 +1,5 @@ -cmake_minimum_required(VERSION 3.10) - project(nvtt) -add_definitions(-DHAVE_SIGNAL_H -DHAVE_EXECINFO_H) - add_subdirectory(src/nvcore) add_subdirectory(src/nvimage) add_subdirectory(src/nvmath) diff --git a/Externals/NVTT/src/nvcore/CMakeLists.txt b/Externals/NVTT/src/nvcore/CMakeLists.txt index 1502d8ce089..e54b6d10ef5 100644 --- a/Externals/NVTT/src/nvcore/CMakeLists.txt +++ b/Externals/NVTT/src/nvcore/CMakeLists.txt @@ -1,62 +1,59 @@ -project(nvcore) +option(NVCORE_SHARED "Build nvcore as shared library" OFF) -set(NVCORE_SHARED OFF) - -# XXX: check if poshlib is needed? add_subdirectory(poshlib) -set(SRC_FILES - "nvcore.h" - "Ptr.h" - "BitArray.h" - "Memory.h" - "Memory.cpp" - "Debug.h" - "Debug.cpp" - "Containers.h" - "StrLib.h" - "StrLib.cpp" - "Stream.h" - "StdStream.h" - "TextReader.h" - "TextReader.cpp" - "TextWriter.h" - "TextWriter.cpp" - "Radix.h" - "Radix.cpp" - "Library.h" - "Library.cpp" -) - -group_sources(SRC_FILES) - if (NVCORE_SHARED) - add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) + add_library(nvcore SHARED) + + target_compile_definitions(nvcore + PRIVATE + NVCORE_SHARED + ) else() - add_library(${PROJECT_NAME} STATIC ${SRC_FILES}) + add_library(nvcore STATIC) endif() -target_include_directories(${PROJECT_NAME} +target_sources(nvcore PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/Externals/NVTT/src - ${CMAKE_SOURCE_DIR}/Externals/NVTT/include + nvcore.h + Ptr.h + BitArray.h + Memory.h + Memory.cpp + Debug.h + Debug.cpp + Containers.h + StrLib.h + StrLib.cpp + Stream.h + StdStream.h + TextReader.h + TextReader.cpp + TextWriter.h + TextWriter.cpp + Radix.h + Radix.cpp + Library.h + Library.cpp ) -target_compile_definitions(${PROJECT_NAME} +target_include_directories(nvcore + PUBLIC + "${CMAKE_SOURCE_DIR}/Externals/NVTT/src" + "${CMAKE_SOURCE_DIR}/Externals/NVTT/include" +) + +target_compile_definitions(nvcore PRIVATE - -DNVCORE_EXPORTS - $<$:-DNVCORE_SHARED=1> + NVCORE_EXPORTS + HAVE_EXECINFO_H + HAVE_SIGNAL_H ) -if (UNIX) - target_link_libraries(${PROJECT_NAME} - PRIVATE - ${CMAKE_DL_LIBS} # XXX: why? - ) -endif() +set_target_properties(nvcore PROPERTIES + POSITION_INDEPENDENT_CODE ON +) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS nvcore LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/Externals/NVTT/src/nvcore/poshlib/CMakeLists.txt b/Externals/NVTT/src/nvcore/poshlib/CMakeLists.txt index b0a52c9f641..1b8d4e37e2d 100644 --- a/Externals/NVTT/src/nvcore/poshlib/CMakeLists.txt +++ b/Externals/NVTT/src/nvcore/poshlib/CMakeLists.txt @@ -1,6 +1,6 @@ -set(SRC_FILES - "posh.c" - "posh.h" -) +add_library(posh STATIC) -add_library(posh STATIC ${SRC_FILES}) +target_sources(posh PRIVATE + posh.c + posh.h +) diff --git a/Externals/NVTT/src/nvimage/CMakeLists.txt b/Externals/NVTT/src/nvimage/CMakeLists.txt index 08e0c0b0a9a..830fd449ba7 100644 --- a/Externals/NVTT/src/nvimage/CMakeLists.txt +++ b/Externals/NVTT/src/nvimage/CMakeLists.txt @@ -1,72 +1,65 @@ -PROJECT(nvimage) - -set(NVIMAGE_SHARED OFF) - -set(SRC_FILES - "nvimage.h" - "FloatImage.h" - "FloatImage.cpp" - "Filter.h" - "Filter.cpp" - "Image.h" - "Image.cpp" - "ImageIO.h" - "ImageIO.cpp" - "ColorBlock.h" - "ColorBlock.cpp" - "BlockDXT.h" - "BlockDXT.cpp" - "HoleFilling.h" - "HoleFilling.cpp" - "DirectDrawSurface.h" - "DirectDrawSurface.cpp" - "Quantize.h" - "Quantize.cpp" - "NormalMap.h" - "NormalMap.cpp" - "NormalMipmap.h" - "NormalMipmap.cpp" - "PsdFile.h" - "TgaFile.h" -) - -group_sources(SRC_FILES) +option(NVIMAGE_SHARED "Build nvimage as shared library" OFF) if (NVIMAGE_SHARED) - add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) + add_library(nvimage SHARED) + + target_compile_definitions(nvimage + PRIVATE + NVIMAGE_SHARED=1 + ) else() - add_library(${PROJECT_NAME} STATIC ${SRC_FILES}) + add_library(nvimage STATIC) endif() -target_include_directories(${PROJECT_NAME} - PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/Externals/NVTT/src - ${CMAKE_SOURCE_DIR}/Externals/NVTT/include - $<$:${PNG_INCLUDE_DIR}> - $<$:${JPEG_INCLUDE_DIR}> - $<$:${TIFF_INCLUDE_DIR}> - $<$:${OPENEXR_INCLUDE_PATHS}> +target_sources(nvimage PRIVATE + nvimage.h + FloatImage.h + FloatImage.cpp + Filter.h + Filter.cpp + Image.h + Image.cpp + ImageIO.h + ImageIO.cpp + ColorBlock.h + ColorBlock.cpp + BlockDXT.h + BlockDXT.cpp + HoleFilling.h + HoleFilling.cpp + DirectDrawSurface.h + DirectDrawSurface.cpp + Quantize.h + Quantize.cpp + NormalMap.h + NormalMap.cpp + NormalMipmap.h + NormalMipmap.cpp + PsdFile.h + TgaFile.h ) -target_link_libraries(${PROJECT_NAME} - PRIVATE +target_link_libraries(nvimage + PUBLIC nvcore nvmath + PRIVATE posh - $<$:${PNG_LIBRARIES}> - $<$:${JPEG_LIBRARIES}> - $<$:${TIFF_LIBRARIES}> - $<$:${OPENEXR_LIBRARIES}> + $<$:PNG::PNG> + $<$:JPEG::JPEG> + $<$:TIFF::TIFF> + $<$:OpenEXR::OpenEXR> ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(nvimage PRIVATE - -DNVIMAGE_EXPORTS - $<$:-DNVIMAGE_SHARED=1> + NVIMAGE_EXPORTS +) + +set_property(TARGET nvimage PROPERTY + POSITION_INDEPENDENT_CODE ON ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS nvimage LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/Externals/NVTT/src/nvmath/CMakeLists.txt b/Externals/NVTT/src/nvmath/CMakeLists.txt index 807e44d0f48..36f7341aa80 100644 --- a/Externals/NVTT/src/nvmath/CMakeLists.txt +++ b/Externals/NVTT/src/nvmath/CMakeLists.txt @@ -1,54 +1,46 @@ -PROJECT(nvmath) - -set(NVMATH_SHARED OFF) - -set(SRC_FILES - "nvmath.h" - "Vector.h" - "Matrix.h" - "Quaternion.h" - "Box.h" - "Color.h" - "Montecarlo.h" - "Montecarlo.cpp" - "Random.h" - "Random.cpp" - "SphericalHarmonic.h" - "SphericalHarmonic.cpp" - "Basis.h" - "Basis.cpp" - "Triangle.h" - "Triangle.cpp" - "TriBox.cpp" -) - -group_sources(SRC_FILES) +option(NVMATH_SHARED "Build nvmath as shared library" OFF) if (NVMATH_SHARED) - add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) + add_library(nvmath SHARED) + + target_compile_definitions(nvmath + PRIVATE + NVCORE_SHARED + ) else() - add_library(${PROJECT_NAME} STATIC ${SRC_FILES}) + add_library(nvmath STATIC) endif() -target_include_directories(${PROJECT_NAME} - PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/Externals/NVTT/src - ${CMAKE_SOURCE_DIR}/Externals/NVTT/include +target_sources(nvmath PRIVATE + nvmath.h + Vector.h + Matrix.h + Quaternion.h + Box.h + Color.h + Montecarlo.h + Montecarlo.cpp + Random.h + Random.cpp + SphericalHarmonic.h + SphericalHarmonic.cpp + Basis.h + Basis.cpp + Triangle.h + Triangle.cpp + TriBox.cpp ) -target_link_libraries(${PROJECT_NAME} - PRIVATE +target_link_libraries(nvmath + PUBLIC nvcore ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(nvmath PRIVATE - -DNVCORE_EXPORTS - $<$:-DNVMATH_SHARED=1> + NVCORE_EXPORTS ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS nvmath LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/Externals/NVTT/src/nvtt/CMakeLists.txt b/Externals/NVTT/src/nvtt/CMakeLists.txt index 61e88df5b95..f58683b6bd6 100644 --- a/Externals/NVTT/src/nvtt/CMakeLists.txt +++ b/Externals/NVTT/src/nvtt/CMakeLists.txt @@ -1,143 +1,135 @@ -PROJECT(nvtt) - -ADD_SUBDIRECTORY(squish) - -set(NVTT_SHARED OFF) -set(NVTT_TEST_EXECUTABLES ON) - -set(SRC_FILES - "nvtt.h" - "nvtt.cpp" - "Compressor.h" - "Compressor.cpp" - "nvtt_wrapper.h" - "nvtt_wrapper.cpp" - "CompressDXT.h" - "CompressDXT.cpp" - "CompressRGB.h" - "CompressRGB.cpp" - "QuickCompressDXT.h" - "QuickCompressDXT.cpp" - "OptimalCompressDXT.h" - "OptimalCompressDXT.cpp" - "SingleColorLookup.h" - "CompressionOptions.h" - "CompressionOptions.cpp" - "InputOptions.h" - "InputOptions.cpp" - "OutputOptions.h" - "OutputOptions.cpp" - "cuda/CudaUtils.h" - "cuda/CudaUtils.cpp" - "cuda/CudaMath.h" - "cuda/Bitmaps.h" - "cuda/CudaCompressDXT.h" - "cuda/CudaCompressDXT.cpp" -) +add_subdirectory(squish) -# XXX: add "tests" and "tools" folders? +option(NVTT_SHARED "Build nvtt as shared library" OFF) +option(NVTT_BUILD_TEST_EXECUTABLES "Build nvtt test executables" OFF) +option(NVTT_BUILD_UI_TOOLS "Build nvtt UI tools" OFF) -if (CUDA_FOUND) - WRAP_CUDA(CUDA_SRCS cuda/CompressKernel.cu) - list(APPEND SRC_FILES ${CUDA_SRCS}) +if (NVTT_SHARED) + add_library(nvtt SHARED) + + target_compile_definitions(nvtt + PRIVATE + NVTT_SHARED + ) +else() + add_library(nvtt STATIC) endif() -group_sources(SRC_FILES) +target_sources(nvtt PRIVATE + nvtt.h + nvtt.cpp + Compressor.h + Compressor.cpp + nvtt_wrapper.h + nvtt_wrapper.cpp + CompressDXT.h + CompressDXT.cpp + CompressRGB.h + CompressRGB.cpp + QuickCompressDXT.h + QuickCompressDXT.cpp + OptimalCompressDXT.h + OptimalCompressDXT.cpp + SingleColorLookup.h + CompressionOptions.h + CompressionOptions.cpp + InputOptions.h + InputOptions.cpp + OutputOptions.h + OutputOptions.cpp + cuda/CudaUtils.h + cuda/CudaUtils.cpp + cuda/CudaMath.h + cuda/Bitmaps.h + cuda/CudaCompressDXT.h + cuda/CudaCompressDXT.cpp +) -if (NVTT_SHARED) - add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) -else() - add_library(${PROJECT_NAME} STATIC ${SRC_FILES}) +if (CUDA_FOUND) + wrap_cuda(CUDA_SRCS cuda/CompressKernel.cu) + list(APPEND SRC_FILES ${CUDA_SRCS}) endif() -target_include_directories(${PROJECT_NAME} +target_include_directories(nvtt PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/Externals/NVTT/src - ${CMAKE_SOURCE_DIR}/Externals/NVTT/include $<$:${CUDA_INCLUDE_PATH}> ) -target_link_libraries(${PROJECT_NAME} - PRIVATE +target_link_libraries(nvtt + PUBLIC nvcore nvmath nvimage + PRIVATE squish $<$:${CUDA_LIBRARIES}> ) -target_compile_definitions(${PROJECT_NAME} +# TODO use configure_file for nvconfig.h + +target_compile_definitions(nvtt PRIVATE - -DNVTT_EXPORTS - $<$:-DNVTT_SHARED=1> - $<$:-DHAVE_CUDA> + NVTT_EXPORTS + HAVE_SIGNAL_H + HAVE_EXECINFO_H + $<$:HAVE_CUDA> ) -install(TARGETS ${PROJECT_NAME} LIBRARY +install(TARGETS nvtt LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ ) -install(FILES "nvtt.h" DESTINATION "include/nvtt") +install(FILES nvtt.h DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}/nvtt") if (NVTT_TEST_EXECUTABLES) add_executable(nvcompress tools/compress.cpp tools/cmdline.h) - target_link_libraries(nvcompress nvcore nvmath nvimage nvtt) + target_link_libraries(nvcompress nvtt) add_executable(nvdecompress tools/decompress.cpp tools/cmdline.h) - target_link_libraries(nvdecompress nvcore nvmath nvimage) + target_link_libraries(nvdecompress nvmath nvimage) add_executable(nvddsinfo tools/ddsinfo.cpp tools/cmdline.h) - target_link_libraries(nvddsinfo nvcore nvmath nvimage) + target_link_libraries(nvddsinfo nvmath nvimage) add_executable(nvimgdiff tools/imgdiff.cpp tools/cmdline.h) - target_link_libraries(nvimgdiff nvcore nvmath nvimage) + target_link_libraries(nvimgdiff nvmath nvimage) add_executable(nvassemble tools/assemble.cpp tools/cmdline.h) - target_link_libraries(nvassemble nvcore nvmath nvimage) + target_link_libraries(nvassemble nvmath nvimage) add_executable(filtertest tests/filtertest.cpp tools/cmdline.h) - target_link_libraries(filtertest nvcore nvmath nvimage) + target_link_libraries(filtertest nvmath nvimage) add_executable(nvzoom tools/resize.cpp tools/cmdline.h) - target_link_libraries(nvzoom nvcore nvmath nvimage) + target_link_libraries(nvzoom nvmath nvimage) install(TARGETS nvcompress nvdecompress nvddsinfo nvimgdiff nvassemble nvzoom - DESTINATION ${CMAKE_INSTALL_LIBDIR} # XXX: change LIBDIR to BINDIR? + DESTINATION "${CMAKE_INSTALL_BINDIR}" ) endif() -# UI tools -# XXX: move to Qt5 -if (QT4_FOUND AND NOT MSVC) - set(QT_USE_QTOPENGL TRUE) - - set(SRC_FILES - "tools/main.cpp" - "tools/configdialog.h" - "tools/configdialog.cpp" - ) - - group_sources(SRC_FILES) - - add_executable(nvcompressui MACOSX_BUNDLE ${SRC_FILES} ${UICS} ${MOCS}) - - target_include_directories(${PROJECT_NAME} - PRIVATE - ${CMAKE_CURRENT_BINARY_DIR} # XXX: why? - ${QT_INCLUDE_DIR} # XXX: check if variable is correct - ) - - target_link_libraries(nvcompressui - PRIVATE - nvtt - ${QT_QTCORE_LIBRARY} # XXX: check if variable is correct - ${QT_QTGUI_LIBRARY} # XXX: check if variable is correct - ${QT_QTOPENGL_LIBRARY} # XXX: check if variable is correct - ) - - QT4_WRAP_UI(UICS tools/configdialog.ui) - QT4_WRAP_CPP(MOCS tools/configdialog.h) - #QT4_ADD_RESOURCES(RCCS tools/configdialog.rc) +if (NVTT_BUILD_UI_TOOLS) + find_package(Qt5 COMPONENTS Core Widgets OpenGL) + + if (Qt5Core_FOUND AND Qt5Gui_FOUND AND Qt5OpenGL_FOUND) + set(CMAKE_AUTOMOC ON) + set(CMAKE_AUTOUIC ON) + + add_executable(nvcompressui) + + target_sources(nvcompressui PRIVATE + tools/main.cpp + tools/configdialog.h + tools/configdialog.cpp + tools/configdialog.ui + ) + + target_link_libraries(nvcompressui + PRIVATE + nvtt + Qt5::Core + Qt5::Widgets + Qt5::OpenGL + ) + endif() endif() diff --git a/Externals/NVTT/src/nvtt/squish/CMakeLists.txt b/Externals/NVTT/src/nvtt/squish/CMakeLists.txt index 020fb49d88b..de8dc7194ce 100644 --- a/Externals/NVTT/src/nvtt/squish/CMakeLists.txt +++ b/Externals/NVTT/src/nvtt/squish/CMakeLists.txt @@ -1,34 +1,31 @@ PROJECT(squish) -set(SRC_FILES - "fastclusterfit.cpp" - "fastclusterfit.h" - "weightedclusterfit.cpp" - "weightedclusterfit.h" - "colourblock.cpp" - "colourblock.h" - "colourfit.cpp" - "colourfit.h" - "colourset.cpp" - "colourset.h" - "config.h" - "maths.cpp" - "maths.h" - "simd.h" - "simd_sse.h" - "simd_ve.h" -) - -group_sources(SRC_FILES) +add_library(squish STATIC) -add_library(${PROJECT_NAME} STATIC ${SRC_FILES}) +target_sources(squish PRIVATE + fastclusterfit.cpp + fastclusterfit.h + weightedclusterfit.cpp + weightedclusterfit.h + colourblock.cpp + colourblock.h + colourfit.cpp + colourfit.h + colourset.cpp + colourset.h + config.h + maths.cpp + maths.h + simd.h + simd_sse.h + simd_ve.h +) -target_include_directories(${PROJECT_NAME} +target_include_directories(squish PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ) -target_compile_definitions(${PROJECT_NAME} - PRIVATE - $<$:-fPIC> +set_property(TARGET squish PROPERTY + POSITION_INDEPENDENT_CODE ON ) diff --git a/Externals/NVTT/src/nvtt/squish/colourblock.cpp b/Externals/NVTT/src/nvtt/squish/colourblock.cpp index c0a022550a1..c2da6e82856 100644 --- a/Externals/NVTT/src/nvtt/squish/colourblock.cpp +++ b/Externals/NVTT/src/nvtt/squish/colourblock.cpp @@ -53,7 +53,7 @@ static int FloatTo565( Vec3::Arg colour ) return ( r << 11 ) | ( g << 5 ) | b; } -static void WriteColourBlock( int a, int b, u8* indices, void* block ) +void WriteColourBlock( int a, int b, u8* indices, void* block ) { // get the block as bytes u8* bytes = ( u8* )block; diff --git a/Externals/NVTT/src/nvtt/tools/configdialog.h b/Externals/NVTT/src/nvtt/tools/configdialog.h index 3c44073ca52..46264ca2172 100644 --- a/Externals/NVTT/src/nvtt/tools/configdialog.h +++ b/Externals/NVTT/src/nvtt/tools/configdialog.h @@ -24,7 +24,7 @@ #ifndef CONFIGDIALOG_H #define CONFIGDIALOG_H -#include +#include #include "ui_configdialog.h" diff --git a/Externals/NVTT/src/nvtt/tools/main.cpp b/Externals/NVTT/src/nvtt/tools/main.cpp index 48b95326fbe..4b5bc07e3b3 100644 --- a/Externals/NVTT/src/nvtt/tools/main.cpp +++ b/Externals/NVTT/src/nvtt/tools/main.cpp @@ -21,7 +21,7 @@ // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR // OTHER DEALINGS IN THE SOFTWARE. -#include +#include #include "configdialog.h" int main(int argc, char *argv[]) diff --git a/Externals/OPCODE/CMakeLists.txt b/Externals/OPCODE/CMakeLists.txt index 360996e4219..60656aa9f3c 100644 --- a/Externals/OPCODE/CMakeLists.txt +++ b/Externals/OPCODE/CMakeLists.txt @@ -1,111 +1,108 @@ -project(xrOPCODE) - -set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake) - -set(SRC_FILES - "OPC_AABBCollider.cpp" - "OPC_AABBCollider.h" - "OPC_AABB.cpp" - "OPC_AABB.h" - "OPC_AABBTree.cpp" - "OPC_AABBTree.h" - "OPC_BoundingSphere.h" - "OPC_BoxBoxOverlap.h" - "OPC_BVTCache.h" - "OPC_Collider.cpp" - "OPC_Collider.h" - "OPC_Common.cpp" - "OPC_Common.h" - "OPC_Container.cpp" - "OPC_Container.h" - "OPC_FPU.h" - "OPC_Matrix3x3.cpp" - "OPC_Matrix3x3.h" - "OPC_Matrix4x4.cpp" - "OPC_Matrix4x4.h" - "OPC_MemoryMacros.h" - "OPC_Model.cpp" - "OPC_Model.h" - "OPC_OBBCollider.cpp" - "OPC_OBBCollider.h" - "OPC_OBB.cpp" - "OPC_OBB.h" - "Opcode.cpp" - "Opcode.h" - "OPC_OptimizedTree.cpp" - "OPC_OptimizedTree.h" - "OPC_Plane.cpp" - "OPC_Plane.h" - "OPC_PlanesAABBOverlap.h" - "OPC_PlanesCollider.cpp" - "OPC_PlanesCollider.h" - "OPC_PlanesTriOverlap.h" - "OPC_Point.cpp" - "OPC_Point.h" - "OPC_Preprocessor.h" - "OPC_RayAABBOverlap.h" - "OPC_RayCollider.cpp" - "OPC_RayCollider.h" - "OPC_Ray.cpp" - "OPC_Ray.h" - "OPC_RayTriOverlap.h" - "OPC_Settings.h" - "OPC_SphereAABBOverlap.h" - "OPC_SphereCollider.cpp" - "OPC_SphereCollider.h" - "OPC_SphereTriOverlap.h" - "OPC_TreeBuilders.cpp" - "OPC_TreeBuilders.h" - "OPC_TreeCollider.cpp" - "OPC_TreeCollider.h" - "OPC_Triangle.cpp" - "OPC_Triangle.h" - "OPC_TriBoxOverlap.h" - "OPC_TriTriOverlap.h" - "OPC_Types.h" - "OPC_VolumeCollider.cpp" - "OPC_VolumeCollider.h" - "pch.cpp" - "pch.hpp" -) - -group_sources(SRC_FILES) - if (STATIC_BUILD) - add_library(${PROJECT_NAME} STATIC ${SRC_FILES}) + add_library(xrOPCODE STATIC) + + target_compile_definitions(xrOPCODE + PRIVATE + OPCODE_STATIC + ) else() - add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) + add_library(xrOPCODE SHARED) endif() -target_include_directories(${PROJECT_NAME} +target_sources(xrOPCODE PRIVATE + OPC_AABBCollider.cpp + OPC_AABBCollider.h + OPC_AABB.cpp + OPC_AABB.h + OPC_AABBTree.cpp + OPC_AABBTree.h + OPC_BoundingSphere.h + OPC_BoxBoxOverlap.h + OPC_BVTCache.h + OPC_Collider.cpp + OPC_Collider.h + OPC_Common.cpp + OPC_Common.h + OPC_Container.cpp + OPC_Container.h + OPC_FPU.h + OPC_Matrix3x3.cpp + OPC_Matrix3x3.h + OPC_Matrix4x4.cpp + OPC_Matrix4x4.h + OPC_MemoryMacros.h + OPC_Model.cpp + OPC_Model.h + OPC_OBBCollider.cpp + OPC_OBBCollider.h + OPC_OBB.cpp + OPC_OBB.h + Opcode.cpp + Opcode.h + OPC_OptimizedTree.cpp + OPC_OptimizedTree.h + OPC_Plane.cpp + OPC_Plane.h + OPC_PlanesAABBOverlap.h + OPC_PlanesCollider.cpp + OPC_PlanesCollider.h + OPC_PlanesTriOverlap.h + OPC_Point.cpp + OPC_Point.h + OPC_Preprocessor.h + OPC_RayAABBOverlap.h + OPC_RayCollider.cpp + OPC_RayCollider.h + OPC_Ray.cpp + OPC_Ray.h + OPC_RayTriOverlap.h + OPC_Settings.h + OPC_SphereAABBOverlap.h + OPC_SphereCollider.cpp + OPC_SphereCollider.h + OPC_SphereTriOverlap.h + OPC_TreeBuilders.cpp + OPC_TreeBuilders.h + OPC_TreeCollider.cpp + OPC_TreeCollider.h + OPC_Triangle.cpp + OPC_Triangle.h + OPC_TriBoxOverlap.h + OPC_TriTriOverlap.h + OPC_Types.h + OPC_VolumeCollider.cpp + OPC_VolumeCollider.h + pch.cpp + pch.hpp +) + +target_include_directories(xrOPCODE PRIVATE - ${CMAKE_SOURCE_DIR}/src + "${CMAKE_SOURCE_DIR}/src" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrOPCODE PRIVATE xrCore ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrOPCODE PRIVATE - -DOPCODE_EXPORTS - $<$:OPCODE_STATIC> + OPCODE_EXPORTS ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrOPCODE PROPERTIES PREFIX "" POSITION_INDEPENDENT_CODE ON ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrOPCODE PRIVATE - "pch.hpp" + pch.hpp ) if (NOT STATIC_BUILD) - install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ + install(TARGETS xrOPCODE LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) endif() diff --git a/Externals/cximage/CMakeLists.txt b/Externals/cximage/CMakeLists.txt index 86b6ee56d51..5d60d8345bc 100644 --- a/Externals/cximage/CMakeLists.txt +++ b/Externals/cximage/CMakeLists.txt @@ -1,62 +1,52 @@ -cmake_minimum_required(VERSION 3.10) - -project(cximage) - -set(CMAKE_CXX_STANDARD 17) - -set(SRC_FILES - "xfile.h" - "ximacfg.cpp" - "ximacfg.h" - "ximadef.h" - "ximaenc.cpp" - "ximaexif.cpp" - "ximage.cpp" - "ximage.h" - "ximainfo.cpp" - "ximaint.cpp" - "ximaiter.h" - "ximajpg.cpp" - "ximajpg.h" - "ximalpha.cpp" - "ximalyr.cpp" - "ximapal.cpp" - "ximasel.cpp" - "ximath.cpp" - "ximath.h" - "xiofile.h" - "xiofile.cpp" - "xmemfile.cpp" - "xmemfile.h" +add_library(cximage STATIC) + +target_sources(cximage PRIVATE + xfile.h + ximacfg.cpp + ximacfg.h + ximadef.h + ximaenc.cpp + ximaexif.cpp + ximage.cpp + ximage.h + ximainfo.cpp + ximaint.cpp + ximaiter.h + ximajpg.cpp + ximajpg.h + ximalpha.cpp + ximalyr.cpp + ximapal.cpp + ximasel.cpp + ximath.cpp + ximath.h + xiofile.h + xiofile.cpp + xmemfile.cpp + xmemfile.h ) -group_sources(SRC_FILES) - -add_library(${PROJECT_NAME} STATIC ${SRC_FILES}) - -target_include_directories(${PROJECT_NAME} +target_include_directories(cximage PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/src - $<$:${JPEG_INCLUDE_DIRS}> + "${CMAKE_SOURCE_DIR}/src" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(cximage PRIVATE - $<$:${JPEG_LIBRARIES}> + $<$:JPEG::JPEG> ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(cximage PRIVATE - -DCXIMAGE_BUILD + CXIMAGE_BUILD ) # XXX: Clang-9 internal error in function GetPixelColorInterpolated during optimization if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND (CMAKE_CXX_COMPILER_VERSION MATCHES "9.0.0" OR CMAKE_CXX_COMPILER_VERSION MATCHES "10.0.0")) - set_property(SOURCE "ximaint.cpp" PROPERTY SKIP_UNITY_BUILD_INCLUSION TRUE) + set_property(SOURCE ximaint.cpp PROPERTY SKIP_UNITY_BUILD_INCLUSION TRUE) endif() -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(cximage PROPERTIES PREFIX "" POSITION_INDEPENDENT_CODE ON ) diff --git a/Externals/imgui-proj/CMakeLists.txt b/Externals/imgui-proj/CMakeLists.txt index ee951d6a3f0..52c3c993ca0 100644 --- a/Externals/imgui-proj/CMakeLists.txt +++ b/Externals/imgui-proj/CMakeLists.txt @@ -1 +1,39 @@ -include(imgui.cmake) +add_library(xrImGui STATIC) + +set(IMGUI_DIR "${CMAKE_SOURCE_DIR}/Externals/imgui") + +target_sources(xrImGui PRIVATE + "${IMGUI_DIR}/imconfig.h" + "${IMGUI_DIR}/imgui.cpp" + "${IMGUI_DIR}/imgui.h" + "${IMGUI_DIR}/imgui_demo.cpp" + "${IMGUI_DIR}/imgui_draw.cpp" + "${IMGUI_DIR}/imgui_tables.cpp" + "${IMGUI_DIR}/imgui_widgets.cpp" + "${IMGUI_DIR}/imgui_internal.h" + "${IMGUI_DIR}/backends/imgui_impl_opengl3.cpp" + "${IMGUI_DIR}/backends/imgui_impl_opengl3.h" + "${IMGUI_DIR}/imstb_rectpack.h" + "${IMGUI_DIR}/imstb_textedit.h" + "${IMGUI_DIR}/imstb_truetype.h" +) + +target_include_directories(xrImGui + PUBLIC + "${IMGUI_DIR}" +) + +target_link_libraries(xrImGui + PRIVATE + dl +) + +target_compile_definitions(xrImGui + PRIVATE + IMGUI_EXPORTS +) + +set_target_properties(xrImGui PROPERTIES + PREFIX "" + POSITION_INDEPENDENT_CODE ON +) diff --git a/Externals/imgui-proj/imgui.cmake b/Externals/imgui-proj/imgui.cmake index 4098a51e430..e69de29bb2d 100644 --- a/Externals/imgui-proj/imgui.cmake +++ b/Externals/imgui-proj/imgui.cmake @@ -1,41 +0,0 @@ -project(xrImGui) - -set(IMGUI_DIR ${CMAKE_SOURCE_DIR}/Externals/imgui) - -set(KERNEL_SRC - "${IMGUI_DIR}/imconfig.h" - "${IMGUI_DIR}/imgui.cpp" - "${IMGUI_DIR}/imgui.h" - "${IMGUI_DIR}/imgui_demo.cpp" - "${IMGUI_DIR}/imgui_draw.cpp" - "${IMGUI_DIR}/imgui_tables.cpp" - "${IMGUI_DIR}/imgui_widgets.cpp" - "${IMGUI_DIR}/imgui_internal.h" - "${IMGUI_DIR}/backends/imgui_impl_opengl3.cpp" - "${IMGUI_DIR}/backends/imgui_impl_opengl3.h" - "${IMGUI_DIR}/imstb_rectpack.h" - "${IMGUI_DIR}/imstb_textedit.h" - "${IMGUI_DIR}/imstb_truetype.h" -) - -add_library(${PROJECT_NAME} STATIC ${KERNEL_SRC}) - -target_include_directories(${PROJECT_NAME} - PUBLIC - ${IMGUI_DIR} -) - -target_link_libraries(${PROJECT_NAME} - PRIVATE - dl -) - -target_compile_definitions(${PROJECT_NAME} - PRIVATE - -DIMGUI_EXPORTS -) - -set_target_properties(${PROJECT_NAME} PROPERTIES - PREFIX "" - POSITION_INDEPENDENT_CODE ON -) diff --git a/Externals/luabind b/Externals/luabind index f97166e3862..2684a7c43ff 160000 --- a/Externals/luabind +++ b/Externals/luabind @@ -1 +1 @@ -Subproject commit f97166e38629b2d07de557d1dec7f0238510b775 +Subproject commit 2684a7c43ffd494cfff97adce9edb1c7d76cc684 diff --git a/Externals/ode/CMakeLists.txt b/Externals/ode/CMakeLists.txt index fc4acfddc5a..f6fd21db86f 100644 --- a/Externals/ode/CMakeLists.txt +++ b/Externals/ode/CMakeLists.txt @@ -1,114 +1,121 @@ -project(xrODE) - -set(SRC_FILES - "ode/src/array.cpp" - "ode/src/array.h" - "ode/src/Bounder33.cpp" - "ode/src/Bounder33.h" - "ode/src/collision_kernel.cpp" - "ode/src/collision_kernel.h" - "ode/src/collision_quadtreespace.cpp" - "ode/src/collision_space.cpp" - "ode/src/collision_space_internal.h" - "ode/src/collision_std.cpp" - "ode/src/collision_std.h" - "ode/src/collision_transform.cpp" - "ode/src/collision_transform.h" - "ode/src/collision_trimesh_internal.h" - "ode/src/collision_util.cpp" - "ode/src/collision_util.h" - "ode/src/error.cpp" - "ode/src/export-dif.cpp" - "ode/src/fastdot.c" - "ode/src/fastldlt.c" - "ode/src/fastlsolve.c" - "ode/src/fastltsolve.c" - "ode/src/geom_internal.h" - "ode/src/joint.cpp" - "ode/src/joint.h" - "ode/src/Lcp33.h" - "ode/src/lcp.cpp" - "ode/src/lcp.h" - "ode/src/mass.cpp" - "ode/src/mat.cpp" - "ode/src/mat.h" - "ode/src/matrix.cpp" - "ode/src/memory.cpp" - "ode/src/misc.cpp" - "ode/src/objects.h" - "ode/src/obstack.cpp" - "ode/src/obstack.h" - "ode/src/ode.cpp" - "ode/src/odemath.cpp" - "ode/src/quickstep.cpp" - "ode/src/quickstep.h" - "ode/src/rotation.cpp" - "ode/src/stack.h" - "ode/src/step.cpp" - "ode/src/stepfast.cpp" - "ode/src/step.h" - "ode/src/StepJointInternal.cpp" - "ode/src/StepJointInternal.h" - "ode/src/testing.cpp" - "ode/src/testing.h" - "ode/src/timer.cpp" - "ode/src/util.cpp" - "ode/src/util.h" - "include/ode/collision.h" - "include/ode/collision_space.h" - "include/ode/collision_trimesh.h" - "include/ode/common.h" - "include/ode/compatibility.h" - "include/ode/config.h" - "include/ode/contact.h" - "include/ode/error.h" - "include/ode/export-dif.h" - "include/ode/geom.h" - "include/ode/mass.h" - "include/ode/matrix.h" - "include/ode/memory.h" - "include/ode/misc.h" - "include/ode/objects.h" - "include/ode/odecpp_collision.h" - "include/ode/odecpp.h" - "include/ode/ode.h" - "include/ode/odemath.h" - "include/ode/rotation.h" - "include/ode/space.h" - "include/ode/timer.h" - "contrib/msvc7/ode_default/de_padf_integration.cpp" - "contrib/msvc7/ode_default/de_padf_integration.h" -) - -group_sources(SRC_FILES) - if (STATIC_BUILD) - add_library(${PROJECT_NAME} STATIC ${SRC_FILES}) + add_library(xrODE STATIC) else() - add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) + add_library(xrODE SHARED) endif() -target_include_directories(${PROJECT_NAME} +target_sources(xrODE PRIVATE + ode/src/array.cpp + ode/src/array.h + ode/src/Bounder33.cpp + ode/src/Bounder33.h + ode/src/collision_kernel.cpp + ode/src/collision_kernel.h + ode/src/collision_quadtreespace.cpp + ode/src/collision_space.cpp + ode/src/collision_space_internal.h + ode/src/collision_std.cpp + ode/src/collision_std.h + ode/src/collision_transform.cpp + ode/src/collision_transform.h + ode/src/collision_trimesh_internal.h + ode/src/collision_util.cpp + ode/src/collision_util.h + ode/src/error.cpp + ode/src/export-dif.cpp + ode/src/fastdot.c + ode/src/fastldlt.c + ode/src/fastlsolve.c + ode/src/fastltsolve.c + ode/src/geom_internal.h + ode/src/joint.cpp + ode/src/joint.h + ode/src/Lcp33.h + ode/src/lcp.cpp + ode/src/lcp.h + ode/src/mass.cpp + ode/src/mat.cpp + ode/src/mat.h + ode/src/matrix.cpp + ode/src/memory.cpp + ode/src/misc.cpp + ode/src/objects.h + ode/src/obstack.cpp + ode/src/obstack.h + ode/src/ode.cpp + ode/src/odemath.cpp + ode/src/quickstep.cpp + ode/src/quickstep.h + ode/src/rotation.cpp + ode/src/stack.h + ode/src/step.cpp + ode/src/stepfast.cpp + ode/src/step.h + ode/src/StepJointInternal.cpp + ode/src/StepJointInternal.h + ode/src/testing.cpp + ode/src/testing.h + ode/src/timer.cpp + ode/src/util.cpp + ode/src/util.h + include/ode/collision.h + include/ode/collision_space.h + include/ode/collision_trimesh.h + include/ode/common.h + include/ode/compatibility.h + include/ode/config.h + include/ode/contact.h + include/ode/error.h + include/ode/export-dif.h + include/ode/geom.h + include/ode/mass.h + include/ode/matrix.h + include/ode/memory.h + include/ode/misc.h + include/ode/objects.h + include/ode/odecpp_collision.h + include/ode/odecpp.h + include/ode/ode.h + include/ode/odemath.h + include/ode/rotation.h + include/ode/space.h + include/ode/timer.h + contrib/msvc7/ode_default/de_padf_integration.cpp + contrib/msvc7/ode_default/de_padf_integration.h +) + +target_include_directories(xrODE PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR}/include + "${CMAKE_CURRENT_SOURCE_DIR}/include" ) -target_compile_definitions(${PROJECT_NAME} +# TODO platform-specific defines +target_compile_definitions(xrODE + PUBLIC + dSINGLE + dNODEBUG + PRIVATE - -DLINUX - -D_cdecl= - -D__forceinline=inline + LINUX + __cdecl= + __forceinline=inline ) -set_target_properties(${PROJECT_NAME} PROPERTIES +if (MASTER_GOLD) + target_compile_definitions(xrODE + PUBLIC + dNODEBUG + ) +endif() + +set_target_properties(xrODE PROPERTIES PREFIX "" POSITION_INDEPENDENT_CODE ON UNITY_BUILD OFF ) if (NOT STATIC_BUILD) - install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ + install(TARGETS xrODE LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) endif() diff --git a/Externals/xrLuaFix b/Externals/xrLuaFix index 933cdaed31e..07f79f035c0 160000 --- a/Externals/xrLuaFix +++ b/Externals/xrLuaFix @@ -1 +1 @@ -Subproject commit 933cdaed31e06407cadd4ef09e3837b6d8816111 +Subproject commit 07f79f035c04c086728245221dc30e0b8efbc35d diff --git a/cmake/FindLZO.cmake b/cmake/FindLZO.cmake index ed5d0ae8da8..c2659ffaa7b 100644 --- a/cmake/FindLZO.cmake +++ b/cmake/FindLZO.cmake @@ -24,25 +24,25 @@ #============================================================================= # If LZO_ROOT_DIR was defined in the environment, use it. -IF(NOT LZO_ROOT_DIR AND NOT $ENV{LZO_ROOT_DIR} STREQUAL "") - SET(LZO_ROOT_DIR $ENV{LZO_ROOT_DIR}) -ENDIF() +if(NOT LZO_ROOT_DIR AND NOT $ENV{LZO_ROOT_DIR} STREQUAL "") + set(LZO_ROOT_DIR $ENV{LZO_ROOT_DIR}) +endif() -SET(_lzo_SEARCH_DIRS +set(_lzo_SEARCH_DIRS ${LZO_ROOT_DIR} /usr/local /sw # Fink /opt/local # DarwinPorts ) -FIND_PATH(LZO_INCLUDE_DIR lzo/lzo1x.h +find_path(LZO_INCLUDE_DIR lzo/lzo1x.h HINTS ${_lzo_SEARCH_DIRS} PATH_SUFFIXES include ) -FIND_LIBRARY(LZO_LIBRARY +find_library(LZO_LIBRARY NAMES lzo2 HINTS @@ -53,16 +53,22 @@ FIND_LIBRARY(LZO_LIBRARY # handle the QUIETLY and REQUIRED arguments and set LZO_FOUND to TRUE if # all listed variables are TRUE -INCLUDE(FindPackageHandleStandardArgs) -FIND_PACKAGE_HANDLE_STANDARD_ARGS(LZO DEFAULT_MSG +include(FindPackageHandleStandardArgs) +find_package_handle_standard_args(LZO DEFAULT_MSG LZO_LIBRARY LZO_INCLUDE_DIR) -IF(LZO_FOUND) - SET(LZO_LIBRARIES ${LZO_LIBRARY}) - SET(LZO_INCLUDE_DIRS ${LZO_INCLUDE_DIR}) -ENDIF(LZO_FOUND) +if(LZO_FOUND) + set(LZO_LIBRARIES ${LZO_LIBRARY}) + set(LZO_INCLUDE_DIRS ${LZO_INCLUDE_DIR}) -MARK_AS_ADVANCED( + add_library(LZO::LZO UNKNOWN IMPORTED) + set_target_properties(LZO::LZO PROPERTIES + IMPORTED_LOCATION "${LZO_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${LZO_INCLUDE_DIR}" + ) +endif() + +mark_as_advanced( LZO_INCLUDE_DIR LZO_LIBRARY ) diff --git a/cmake/utils.cmake b/cmake/utils.cmake index 6dc938c01bc..c667d9997f1 100644 --- a/cmake/utils.cmake +++ b/cmake/utils.cmake @@ -1,28 +1,30 @@ -# XXX: remove add_dir macro after Externals/GameSpy cmake refactoring -macro(add_dir DIRS) - foreach (dir ${DIRS}) - message("adding ${dir} to ${PROJECT_NAME}") - include_directories(${dir}) - file(GLOB ${dir}__INCLUDES_H ${dir} ${dir}/*.h) - file(GLOB ${dir}__INCLUDES_HPP ${dir} ${dir}/*.hpp) - list(APPEND ${PROJECT_NAME}__INCLUDES ${${dir}__INCLUDES_H} ${${dir}__INCLUDES_HPP}) - file(GLOB ${dir}__SOURCES_CPP ${dir} ${dir}/*.cpp ${dir}/*.cxx) - file(GLOB ${dir}__SOURCES_C ${dir} ${dir}/*.c) - list(APPEND ${PROJECT_NAME}__SOURCES ${${dir}__SOURCES_C} ${${dir}__SOURCES_CPP}) - endforeach() -endmacro() - -macro(group_sources SRC_FILES) - foreach(source IN LISTS SRC_FILES) - get_filename_component(source_path "${source}" PATH) - string(REPLACE "/" "\\" source_path_msvc "${source_path}") - source_group("${source_path_msvc}" FILES "${source}") - endforeach() -endmacro() - -# ------------------------------------------ +function(target_sources_grouped) + cmake_parse_arguments( + PARSED_ARGS + "" + "TARGET;NAME;SCOPE" + "FILES" + ${ARGN} + ) + + if(NOT PARSED_ARGS_TARGET) + message(FATAL_ERROR "You must provide a target name") + endif() + + if(NOT PARSED_ARGS_NAME) + message(FATAL_ERROR "You must provide a source group name") + endif() + + if(NOT PARSED_ARGS_SCOPE) + set(PARSED_ARGS_SCOPE PRIVATE) + endif() + + target_sources(${PARSED_ARGS_TARGET} ${PARSED_ARGS_SCOPE} ${PARSED_ARGS_FILES}) + + source_group(${PARSED_ARGS_NAME} FILES ${PARSED_ARGS_FILES}) +endfunction() + # Detect arch type ( x86 or x64 ) -# ------------------------------------------ if (CMAKE_SIZEOF_VOID_P EQUAL 8) set(ARCH_TYPE x64) else (CMAKE_SIZEOF_VOID_P EQUAL 4) @@ -55,4 +57,67 @@ if (UNIX) endif() endif() -include(${PROJECT_SOURCE_DIR}/cmake/packaging.cmake) +function(set_git_info) + execute_process(COMMAND git rev-parse --verify HEAD + WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}" + OUTPUT_VARIABLE GIT_SHA1 + ERROR_QUIET + OUTPUT_STRIP_TRAILING_WHITESPACE + ) + message(STATUS "git commit: ${GIT_SHA1}") + + execute_process(COMMAND git rev-parse --abbrev-ref HEAD + WORKING_DIRECTORY "${CMAKE_SOURCE_DIR}" + OUTPUT_VARIABLE GIT_BRANCH + ERROR_QUIET + OUTPUT_STRIP_TRAILING_WHITESPACE + ) + message(STATUS "git branch: ${GIT_BRANCH}") +endfunction() + +include(packaging) + +function(xr_install tgt) + if (NOT MSVC) + install(TARGETS ${tgt} DESTINATION "." + PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE # chmod 755 + ) + else() + install(TARGETS ${tgt} + CONFIGURATIONS Debug + RUNTIME DESTINATION Debug/ + LIBRARY DESTINATION Debug/ + ) + install(FILES $ + CONFIGURATIONS Debug + DESTINATION Debug/ + ) + install(TARGETS ${tgt} + CONFIGURATIONS Release + RUNTIME DESTINATION Release/ + LIBRARY DESTINATION Release/ + ) + endif() +endfunction() + +# Use only if install defined outside target directory(like luabind, for example) +function(xr_install_file tgt) + if (NOT MSVC) + install(FILES $ DESTINATION "." + PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE # chmod 755 + ) + else() + install($ + CONFIGURATIONS Debug + RUNTIME DESTINATION Debug/ + ) + install(FILES $ + CONFIGURATIONS Debug + DESTINATION Debug/ + ) + install($ + CONFIGURATIONS Release + RUNTIME DESTINATION Release/ + ) + endif() +endfunction() \ No newline at end of file diff --git a/misc/CMakeLists.txt b/misc/CMakeLists.txt index 982b9c53461..f15592488d4 100644 --- a/misc/CMakeLists.txt +++ b/misc/CMakeLists.txt @@ -1,25 +1,25 @@ project(xrResources) -install(DIRECTORY linux/bash-completion DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/) +install(DIRECTORY linux/bash-completion DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}) install(FILES linux/openxray_cop.desktop DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/applications) install(FILES linux/openxray_cs.desktop DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/applications) install(FILES linux/openxray_soc.desktop DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/applications) -install(FILES media/icons/16x16/openxray_cop.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/16x16/apps/) -install(FILES media/icons/32x32/openxray_cop.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/32x32/apps/) -install(FILES media/icons/48x48/openxray_cop.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/48x48/apps/) -install(FILES media/icons/64x64/openxray_cop.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/64x64/apps/) -install(FILES media/icons/64x64/openxray_cop.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/pixmaps/) +install(FILES media/icons/16x16/openxray_cop.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/16x16/apps) +install(FILES media/icons/32x32/openxray_cop.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/32x32/apps) +install(FILES media/icons/48x48/openxray_cop.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/48x48/apps) +install(FILES media/icons/64x64/openxray_cop.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/64x64/apps) +install(FILES media/icons/64x64/openxray_cop.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/pixmaps) -install(FILES media/icons/16x16/openxray_cs.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/16x16/apps/) -install(FILES media/icons/32x32/openxray_cs.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/32x32/apps/) -install(FILES media/icons/48x48/openxray_cs.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/48x48/apps/) -install(FILES media/icons/64x64/openxray_cs.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/64x64/apps/) -install(FILES media/icons/64x64/openxray_cs.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/pixmaps/) +install(FILES media/icons/16x16/openxray_cs.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/16x16/apps) +install(FILES media/icons/32x32/openxray_cs.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/32x32/apps) +install(FILES media/icons/48x48/openxray_cs.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/48x48/apps) +install(FILES media/icons/64x64/openxray_cs.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/64x64/apps) +install(FILES media/icons/64x64/openxray_cs.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/pixmaps) -install(FILES media/icons/16x16/openxray_soc.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/16x16/apps/) -install(FILES media/icons/32x32/openxray_soc.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/32x32/apps/) -install(FILES media/icons/48x48/openxray_soc.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/48x48/apps/) -install(FILES media/icons/64x64/openxray_soc.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/64x64/apps/) -install(FILES media/icons/64x64/openxray_soc.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/pixmaps/) +install(FILES media/icons/16x16/openxray_soc.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/16x16/apps) +install(FILES media/icons/32x32/openxray_soc.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/32x32/apps) +install(FILES media/icons/48x48/openxray_soc.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/48x48/apps) +install(FILES media/icons/64x64/openxray_soc.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/icons/hicolor/64x64/apps) +install(FILES media/icons/64x64/openxray_soc.png DESTINATION ${CMAKE_INSTALL_DATAROOTDIR}/pixmaps) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 576028099ad..ccece4ac50b 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -13,5 +13,3 @@ add_subdirectory(xrParticles) add_subdirectory(xrPhysics) add_subdirectory(xrScriptEngine) add_subdirectory(xrSound) - -#add_subdirectory(xrMicroBenchmark) diff --git a/src/Common/Common.hpp b/src/Common/Common.hpp index 490fd574a6f..12f3cae38b0 100644 --- a/src/Common/Common.hpp +++ b/src/Common/Common.hpp @@ -1,6 +1,8 @@ #pragma once +#if _MSC_VER #include "submodule_check.hpp" +#endif #include "Common/Config.hpp" #include "Common/Platform.hpp" diff --git a/src/Layers/CMakeLists.txt b/src/Layers/CMakeLists.txt index 2ac726ff79a..b2a84b8aa36 100644 --- a/src/Layers/CMakeLists.txt +++ b/src/Layers/CMakeLists.txt @@ -1,6 +1,10 @@ add_subdirectory(xrAPI) -#add_subdirectory(xrRenderPC_R1) -#add_subdirectory(xrRenderPC_R2) -#add_subdirectory(xrRenderPC_R3) -#add_subdirectory(xrRenderPC_R4) + +# TODO test on Windows +if (WIN32) + add_subdirectory(xrRenderPC_R1) + add_subdirectory(xrRenderPC_R2) + add_subdirectory(xrRenderPC_R4) +endif() + add_subdirectory(xrRenderPC_GL) diff --git a/src/Layers/xrAPI/CMakeLists.txt b/src/Layers/xrAPI/CMakeLists.txt index 8b31e2ceac9..2d6408900a2 100644 --- a/src/Layers/xrAPI/CMakeLists.txt +++ b/src/Layers/xrAPI/CMakeLists.txt @@ -1,35 +1,30 @@ -project(xrAPI) +add_library(xrAPI SHARED) -set(KERNEL_SRC - "stdafx.h" - "stdafx.cpp" - "xrAPI.cpp" +target_sources(xrAPI PRIVATE + stdafx.h + stdafx.cpp + xrAPI.cpp ) -source_group("Kernel" FILES ${KERNEL_SRC}) - -add_library(${PROJECT_NAME} SHARED ${KERNEL_SRC}) - -target_include_directories(${PROJECT_NAME} +target_include_directories(xrAPI PRIVATE - ${CMAKE_SOURCE_DIR}/src + "${CMAKE_SOURCE_DIR}/src" ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrAPI PRIVATE - -DXRAPI_EXPORTS + XRAPI_EXPORTS ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrAPI PROPERTIES PREFIX "" ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrAPI PRIVATE - "stdafx.h" + stdafx.h ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS xrAPI LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/src/Layers/xrRenderPC_GL/CMakeLists.txt b/src/Layers/xrRenderPC_GL/CMakeLists.txt index 6475046b15a..46e03537f1a 100644 --- a/src/Layers/xrRenderPC_GL/CMakeLists.txt +++ b/src/Layers/xrRenderPC_GL/CMakeLists.txt @@ -1,409 +1,404 @@ -project(xrRender_GL) +add_library(xrRender_GL SHARED) -set(SRC_FILES - "gl_rendertarget_accum_direct.cpp" - "gl_rendertarget_build_textures.cpp" - "gl_rendertarget.h" - "gl_rendertarget_phase_combine.cpp" - "gl_rendertarget_phase_flip.cpp" - "gl_rendertarget_u_set_rt.cpp" - "r2_R_sun.cpp" - "r2_test_hw.cpp" - "rgl_shaders.cpp" - "stdafx.cpp" - "stdafx.h" - "xrRender_GL.cpp" - "../xrRender/Animation.cpp" - "../xrRender/Animation.h" - "../xrRender/AnimationKeyCalculate.h" - "../xrRender/Blender_CLSID.h" - "../xrRender/Blender.cpp" - "../xrRender/Blender.h" - "../xrRender/Blender_Recorder.cpp" - "../xrRender/Blender_Recorder.h" - "../xrRender/Blender_Recorder_R2.cpp" - "../xrRender/Blender_Recorder_StandartBinding.cpp" - "../xrRender/BufferUtils.h" - "../xrRender/ColorMapManager.cpp" - "../xrRender/ColorMapManager.h" - "../xrRender/D3DUtils.cpp" - "../xrRender/D3DUtils.h" - "../xrRender/D3DXRenderBase.cpp" - "../xrRender/D3DXRenderBase.h" - "../xrRender/DetailFormat.h" - "../xrRender/DetailManager_CACHE.cpp" - "../xrRender/DetailManager.cpp" - "../xrRender/DetailManager_Decompress.cpp" - "../xrRender/DetailManager_soft.cpp" - "../xrRender/DetailManager.h" - "../xrRender/DetailManager_VS.cpp" - "../xrRender/DetailModel.cpp" - "../xrRender/DetailModel.h" - "../xrRender/du_box.cpp" - "../xrRender/du_box.h" - "../xrRender/du_cone.cpp" - "../xrRender/du_cone.h" - "../xrRender/du_cylinder.cpp" - "../xrRender/du_cylinder.h" - "../xrRender/du_sphere.cpp" - "../xrRender/du_sphere.h" - "../xrRender/du_sphere_part.cpp" - "../xrRender/du_sphere_part.h" - "../xrRender/dxDebugRender.cpp" - "../xrRender/dxDebugRender.h" - "../xrRender/dxEnvironmentRender.cpp" - "../xrRender/dxEnvironmentRender.h" - "../xrRender/dxFontRender.cpp" - "../xrRender/dxFontRender.h" - "../xrRender/dxImGuiRender.cpp" - "../xrRender/dxImGuiRender.h" - "../xrRender/dxLensFlareRender.cpp" - "../xrRender/dxLensFlareRender.h" - "../xrRender/dxObjectSpaceRender.cpp" - "../xrRender/dxObjectSpaceRender.h" - "../xrRender/dxParticleCustom.cpp" - "../xrRender/dxParticleCustom.h" - "../xrRender/dxRainRender.cpp" - "../xrRender/dxRainRender.h" - "../xrRender/dxRenderFactory.cpp" - "../xrRender/dxRenderFactory.h" - "../xrRender/dxStatGraphRender.cpp" - "../xrRender/dxStatGraphRender.h" - "../xrRender/dxThunderboltDescRender.cpp" - "../xrRender/dxThunderboltDescRender.h" - "../xrRender/dxThunderboltRender.cpp" - "../xrRender/dxThunderboltRender.h" - "../xrRender/dxUIRender.cpp" - "../xrRender/dxUIRender.h" - "../xrRender/dxUISequenceVideoItem.cpp" - "../xrRender/dxUISequenceVideoItem.h" - "../xrRender/dxUIShader.cpp" - "../xrRender/dxUIShader.h" - "../xrRender/dxWallMarkArray.cpp" - "../xrRender/dxWallMarkArray.h" - "../xrRender/ETextureParams.cpp" - "../xrRender/ETextureParams.h" - "../xrRender/FBasicVisual.cpp" - "../xrRender/FBasicVisual.h" - "../xrRender/FHierrarhyVisual.cpp" - "../xrRender/FHierrarhyVisual.h" - "../xrRender/FLOD.cpp" - "../xrRender/FLOD.h" - "../xrRender/FProgressive.cpp" - "../xrRender/FProgressive.h" - "../xrRender/FSkinned.cpp" - "../xrRender/FSkinned.h" - "../xrRender/FSkinnedTypes.h" - "../xrRender/FTreeVisual.cpp" - "../xrRender/FTreeVisual.h" - "../xrRender/FVF.h" - "../xrRender/FVisual.cpp" - "../xrRender/FVisual.h" - "../xrRender/HOM.cpp" - "../xrRender/HOM.h" - "../xrRender/HWCaps.h" - "../xrRender/IRenderDetailModel.h" - "../xrRender/KinematicAnimatedDefs.h" - "../xrRender/KinematicsAddBoneTransform.hpp" - "../xrRender/light.cpp" - "../xrRender/Light_DB.cpp" - "../xrRender/Light_DB.h" - "../xrRender/light_gi.cpp" - "../xrRender/light_gi.h" - "../xrRender/light.h" - "../xrRender/Light_Package.cpp" - "../xrRender/Light_Package.h" - "../xrRender/Light_Render_Direct_ComputeXFS.cpp" - "../xrRender/Light_Render_Direct.cpp" - "../xrRender/Light_Render_Direct.h" - "../xrRender/light_smapvis.cpp" - "../xrRender/light_smapvis.h" - "../xrRender/LightTrack.cpp" - "../xrRender/LightTrack.h" - "../xrRender/light_vis.cpp" - "../xrRender/ModelPool.cpp" - "../xrRender/ModelPool.h" - "../xrRender/NvTriStrip.cpp" - "../xrRender/NvTriStrip.h" - "../xrRender/NvTriStripObjects.cpp" - "../xrRender/NvTriStripObjects.h" - "../xrRender/occRasterizer_core.cpp" - "../xrRender/occRasterizer.cpp" - "../xrRender/occRasterizer.h" - "../xrRender/ParticleEffect.cpp" - "../xrRender/ParticleEffectDef.cpp" - "../xrRender/ParticleEffectDef.h" - "../xrRender/ParticleEffect.h" - "../xrRender/ParticleGroup.cpp" - "../xrRender/ParticleGroup.h" - "../xrRender/PSLibrary.cpp" - "../xrRender/PSLibrary.h" - "../xrRender/QueryHelper.h" - "../xrRender/R_Backend.cpp" - "../xrRender/R_Backend_DBG.cpp" - "../xrRender/R_Backend.h" - "../xrRender/R_Backend_hemi.cpp" - "../xrRender/R_Backend_hemi.h" - "../xrRender/R_Backend_Runtime.cpp" - "../xrRender/R_Backend_Runtime.h" - "../xrRender/R_Backend_tree.cpp" - "../xrRender/R_Backend_tree.h" - "../xrRender/R_Backend_xform.cpp" - "../xrRender/R_Backend_xform.h" - "../xrRender/r_constants_cache.h" - "../xrRender/r_constants.cpp" - "../xrRender/r_constants.h" - "../xrRender/r__dsgraph_build.cpp" - "../xrRender/r__dsgraph_render.cpp" - "../xrRender/r__dsgraph_render_lods.cpp" - "../xrRender/r__dsgraph_types.h" - "../xrRender/R_DStreams.cpp" - "../xrRender/R_DStreams.h" - "../xrRender/ResourceManager.cpp" - "../xrRender/ResourceManager.h" - "../xrRender/ResourceManager_Loader.cpp" - "../xrRender/ResourceManager_Reset.cpp" - "../xrRender/ResourceManager_Resources.cpp" - #"../xrRender/ResourceManager_Scripting.cpp" - "../xrRender/r__occlusion.cpp" - "../xrRender/r__occlusion.h" - "../xrRender/r__pixel_calculator.cpp" - "../xrRender/r__pixel_calculator.h" - "../xrRender/r__screenshot.cpp" - "../xrRender/r__sector.cpp" - "../xrRender/r__sector.h" - "../xrRender/r__sector_detect.cpp" - "../xrRender/r__sector_traversal.cpp" - "../xrRender/r_sun_cascades.h" - "../xrRender/r__sync_point.cpp" - "../xrRender/r__sync_point.h" - "../xrRender/Shader.cpp" - "../xrRender/Shader.h" - "../xrRender/ShaderResourceTraits.h" - "../xrRender/SH_Atomic.cpp" - "../xrRender/SH_Atomic.h" - "../xrRender/SH_Constant.cpp" - "../xrRender/SH_Constant.h" - "../xrRender/SH_Matrix.cpp" - "../xrRender/SH_Matrix.h" - "../xrRender/SH_RT.h" - #"../xrRender/SH_Texture.cpp" - "../xrRender/SH_Texture.h" - "../xrRender/SkeletonAnimated.cpp" - "../xrRender/SkeletonAnimated.h" - "../xrRender/SkeletonCustom.cpp" - "../xrRender/SkeletonCustom.h" - "../xrRender/SkeletonRigid.cpp" - "../xrRender/SkeletonX.cpp" - "../xrRender/SkeletonX.h" - "../xrRender/SkeletonXSkinXW.h" - "../xrRender/SkeletonXSkinXW_CPP.cpp" - "../xrRender/SkeletonXSkinXW_SSE.cpp" - "../xrRender/SkeletonXVertRender.h" - #"../xrRender/stats_manager.cpp" - #"../xrRender/stats_manager.h" - #"../xrRender/Texture.cpp" - "../xrRender/TextureDescrManager.cpp" - "../xrRender/TextureDescrManager.h" - "../xrRender/tss_def.cpp" - "../xrRender/tss_def.h" - "../xrRender/tss.h" - "../xrRender/VertexCache.cpp" - "../xrRender/VertexCache.h" - "../xrRender/WallmarksEngine.cpp" - "../xrRender/WallmarksEngine.h" - "../xrRender/xr_effgamma.cpp" - "../xrRender/xr_effgamma.h" - "../xrRender/xrRender_console.cpp" - "../xrRender/xrRender_console.h" - "../xrRender/xrStripify.cpp" - "../xrRender/xrStripify.h" - "../xrRender/blenders/blender_bloom_build.cpp" - "../xrRender/blenders/blender_bloom_build.h" - #"../xrRender/blenders/Blender_Blur.cpp" - #"../xrRender/blenders/Blender_Blur.h" - #"../xrRender/blenders/Blender_BmmD.cpp" - "../xrRender/blenders/Blender_BmmD_deferred.cpp" - #"../xrRender/blenders/Blender_BmmD.h" - "../xrRender/blenders/blender_combine.cpp" - "../xrRender/blenders/blender_combine.h" - #"../xrRender/blenders/Blender_default_aref.cpp" - #"../xrRender/blenders/Blender_default_aref.h" - #"../xrRender/blenders/BlenderDefault.cpp" - #"../xrRender/blenders/BlenderDefault.h" - "../xrRender/blenders/blender_deffer_aref.cpp" - "../xrRender/blenders/blender_deffer_aref.h" - "../xrRender/blenders/blender_deffer_flat.cpp" - "../xrRender/blenders/blender_deffer_flat.h" - "../xrRender/blenders/blender_deffer_model.cpp" - "../xrRender/blenders/blender_deffer_model.h" - #"../xrRender/blenders/Blender_detail_still.cpp" - "../xrRender/blenders/Blender_detail_still_deferred.cpp" - #"../xrRender/blenders/Blender_detail_still.h" - "../xrRender/blenders/Blender_Editor_Selection.cpp" - "../xrRender/blenders/Blender_Editor_Selection.h" - "../xrRender/blenders/Blender_Editor_Wire.cpp" - "../xrRender/blenders/Blender_Editor_Wire.h" - #"../xrRender/blenders/Blender_LaEmB.cpp" - #"../xrRender/blenders/Blender_LaEmB.h" - "../xrRender/blenders/blender_light_direct_cascade.cpp" - "../xrRender/blenders/blender_light_direct_cascade.h" - "../xrRender/blenders/blender_light_direct.cpp" - "../xrRender/blenders/blender_light_direct.h" - "../xrRender/blenders/blender_light_mask.cpp" - "../xrRender/blenders/blender_light_mask.h" - "../xrRender/blenders/blender_light_occq.cpp" - "../xrRender/blenders/blender_light_occq.h" - "../xrRender/blenders/blender_light_point.cpp" - "../xrRender/blenders/blender_light_point.h" - "../xrRender/blenders/blender_light_reflected.cpp" - "../xrRender/blenders/blender_light_reflected.h" - "../xrRender/blenders/blender_light_spot.cpp" - "../xrRender/blenders/blender_light_spot.h" +target_sources(xrRender_GL PRIVATE + gl_rendertarget_accum_direct.cpp + gl_rendertarget_build_textures.cpp + gl_rendertarget.h + gl_rendertarget_phase_combine.cpp + gl_rendertarget_phase_flip.cpp + gl_rendertarget_u_set_rt.cpp + r2_R_sun.cpp + r2_test_hw.cpp + rgl_shaders.cpp + stdafx.cpp + stdafx.h + xrRender_GL.cpp + ../xrRender/Animation.cpp + ../xrRender/Animation.h + ../xrRender/AnimationKeyCalculate.h + ../xrRender/Blender_CLSID.h + ../xrRender/Blender.cpp + ../xrRender/Blender.h + ../xrRender/Blender_Recorder.cpp + ../xrRender/Blender_Recorder.h + ../xrRender/Blender_Recorder_R2.cpp + ../xrRender/Blender_Recorder_StandartBinding.cpp + ../xrRender/BufferUtils.h + ../xrRender/ColorMapManager.cpp + ../xrRender/ColorMapManager.h + ../xrRender/D3DUtils.cpp + ../xrRender/D3DUtils.h + ../xrRender/D3DXRenderBase.cpp + ../xrRender/D3DXRenderBase.h + ../xrRender/DetailFormat.h + ../xrRender/DetailManager_CACHE.cpp + ../xrRender/DetailManager.cpp + ../xrRender/DetailManager_Decompress.cpp + ../xrRender/DetailManager_soft.cpp + ../xrRender/DetailManager.h + ../xrRender/DetailManager_VS.cpp + ../xrRender/DetailModel.cpp + ../xrRender/DetailModel.h + ../xrRender/du_box.cpp + ../xrRender/du_box.h + ../xrRender/du_cone.cpp + ../xrRender/du_cone.h + ../xrRender/du_cylinder.cpp + ../xrRender/du_cylinder.h + ../xrRender/du_sphere.cpp + ../xrRender/du_sphere.h + ../xrRender/du_sphere_part.cpp + ../xrRender/du_sphere_part.h + ../xrRender/dxDebugRender.cpp + ../xrRender/dxDebugRender.h + ../xrRender/dxEnvironmentRender.cpp + ../xrRender/dxEnvironmentRender.h + ../xrRender/dxFontRender.cpp + ../xrRender/dxFontRender.h + ../xrRender/dxImGuiRender.cpp + ../xrRender/dxImGuiRender.h + ../xrRender/dxLensFlareRender.cpp + ../xrRender/dxLensFlareRender.h + ../xrRender/dxObjectSpaceRender.cpp + ../xrRender/dxObjectSpaceRender.h + ../xrRender/dxParticleCustom.cpp + ../xrRender/dxParticleCustom.h + ../xrRender/dxRainRender.cpp + ../xrRender/dxRainRender.h + ../xrRender/dxRenderFactory.cpp + ../xrRender/dxRenderFactory.h + ../xrRender/dxStatGraphRender.cpp + ../xrRender/dxStatGraphRender.h + ../xrRender/dxThunderboltDescRender.cpp + ../xrRender/dxThunderboltDescRender.h + ../xrRender/dxThunderboltRender.cpp + ../xrRender/dxThunderboltRender.h + ../xrRender/dxUIRender.cpp + ../xrRender/dxUIRender.h + ../xrRender/dxUISequenceVideoItem.cpp + ../xrRender/dxUISequenceVideoItem.h + ../xrRender/dxUIShader.cpp + ../xrRender/dxUIShader.h + ../xrRender/dxWallMarkArray.cpp + ../xrRender/dxWallMarkArray.h + ../xrRender/ETextureParams.cpp + ../xrRender/ETextureParams.h + ../xrRender/FBasicVisual.cpp + ../xrRender/FBasicVisual.h + ../xrRender/FHierrarhyVisual.cpp + ../xrRender/FHierrarhyVisual.h + ../xrRender/FLOD.cpp + ../xrRender/FLOD.h + ../xrRender/FProgressive.cpp + ../xrRender/FProgressive.h + ../xrRender/FSkinned.cpp + ../xrRender/FSkinned.h + ../xrRender/FSkinnedTypes.h + ../xrRender/FTreeVisual.cpp + ../xrRender/FTreeVisual.h + ../xrRender/FVF.h + ../xrRender/FVisual.cpp + ../xrRender/FVisual.h + ../xrRender/HOM.cpp + ../xrRender/HOM.h + ../xrRender/HWCaps.h + ../xrRender/IRenderDetailModel.h + ../xrRender/KinematicAnimatedDefs.h + ../xrRender/KinematicsAddBoneTransform.hpp + ../xrRender/light.cpp + ../xrRender/Light_DB.cpp + ../xrRender/Light_DB.h + ../xrRender/light_gi.cpp + ../xrRender/light_gi.h + ../xrRender/light.h + ../xrRender/Light_Package.cpp + ../xrRender/Light_Package.h + ../xrRender/Light_Render_Direct_ComputeXFS.cpp + ../xrRender/Light_Render_Direct.cpp + ../xrRender/Light_Render_Direct.h + ../xrRender/light_smapvis.cpp + ../xrRender/light_smapvis.h + ../xrRender/LightTrack.cpp + ../xrRender/LightTrack.h + ../xrRender/light_vis.cpp + ../xrRender/ModelPool.cpp + ../xrRender/ModelPool.h + ../xrRender/NvTriStrip.cpp + ../xrRender/NvTriStrip.h + ../xrRender/NvTriStripObjects.cpp + ../xrRender/NvTriStripObjects.h + ../xrRender/occRasterizer_core.cpp + ../xrRender/occRasterizer.cpp + ../xrRender/occRasterizer.h + ../xrRender/ParticleEffect.cpp + ../xrRender/ParticleEffectDef.cpp + ../xrRender/ParticleEffectDef.h + ../xrRender/ParticleEffect.h + ../xrRender/ParticleGroup.cpp + ../xrRender/ParticleGroup.h + ../xrRender/PSLibrary.cpp + ../xrRender/PSLibrary.h + ../xrRender/QueryHelper.h + ../xrRender/R_Backend.cpp + ../xrRender/R_Backend_DBG.cpp + ../xrRender/R_Backend.h + ../xrRender/R_Backend_hemi.cpp + ../xrRender/R_Backend_hemi.h + ../xrRender/R_Backend_Runtime.cpp + ../xrRender/R_Backend_Runtime.h + ../xrRender/R_Backend_tree.cpp + ../xrRender/R_Backend_tree.h + ../xrRender/R_Backend_xform.cpp + ../xrRender/R_Backend_xform.h + ../xrRender/r_constants_cache.h + ../xrRender/r_constants.cpp + ../xrRender/r_constants.h + ../xrRender/r__dsgraph_build.cpp + ../xrRender/r__dsgraph_render.cpp + ../xrRender/r__dsgraph_render_lods.cpp + ../xrRender/r__dsgraph_types.h + ../xrRender/R_DStreams.cpp + ../xrRender/R_DStreams.h + ../xrRender/ResourceManager.cpp + ../xrRender/ResourceManager.h + ../xrRender/ResourceManager_Loader.cpp + ../xrRender/ResourceManager_Reset.cpp + ../xrRender/ResourceManager_Resources.cpp + #../xrRender/ResourceManager_Scripting.cpp + ../xrRender/r__occlusion.cpp + ../xrRender/r__occlusion.h + ../xrRender/r__pixel_calculator.cpp + ../xrRender/r__pixel_calculator.h + ../xrRender/r__screenshot.cpp + ../xrRender/r__sector.cpp + ../xrRender/r__sector.h + ../xrRender/r__sector_detect.cpp + ../xrRender/r__sector_traversal.cpp + ../xrRender/r_sun_cascades.h + ../xrRender/r__sync_point.cpp + ../xrRender/r__sync_point.h + ../xrRender/Shader.cpp + ../xrRender/Shader.h + ../xrRender/ShaderResourceTraits.h + ../xrRender/SH_Atomic.cpp + ../xrRender/SH_Atomic.h + ../xrRender/SH_Constant.cpp + ../xrRender/SH_Constant.h + ../xrRender/SH_Matrix.cpp + ../xrRender/SH_Matrix.h + ../xrRender/SH_RT.h + #../xrRender/SH_Texture.cpp + ../xrRender/SH_Texture.h + ../xrRender/SkeletonAnimated.cpp + ../xrRender/SkeletonAnimated.h + ../xrRender/SkeletonCustom.cpp + ../xrRender/SkeletonCustom.h + ../xrRender/SkeletonRigid.cpp + ../xrRender/SkeletonX.cpp + ../xrRender/SkeletonX.h + ../xrRender/SkeletonXSkinXW.h + ../xrRender/SkeletonXSkinXW_CPP.cpp + ../xrRender/SkeletonXSkinXW_SSE.cpp + ../xrRender/SkeletonXVertRender.h + #../xrRender/stats_manager.cpp + #../xrRender/stats_manager.h + #../xrRender/Texture.cpp + ../xrRender/TextureDescrManager.cpp + ../xrRender/TextureDescrManager.h + ../xrRender/tss_def.cpp + ../xrRender/tss_def.h + ../xrRender/tss.h + ../xrRender/VertexCache.cpp + ../xrRender/VertexCache.h + ../xrRender/WallmarksEngine.cpp + ../xrRender/WallmarksEngine.h + ../xrRender/xr_effgamma.cpp + ../xrRender/xr_effgamma.h + ../xrRender/xrRender_console.cpp + ../xrRender/xrRender_console.h + ../xrRender/xrStripify.cpp + ../xrRender/xrStripify.h + ../xrRender/blenders/blender_bloom_build.cpp + ../xrRender/blenders/blender_bloom_build.h + #../xrRender/blenders/Blender_Blur.cpp + #../xrRender/blenders/Blender_Blur.h + #../xrRender/blenders/Blender_BmmD.cpp + ../xrRender/blenders/Blender_BmmD_deferred.cpp + #../xrRender/blenders/Blender_BmmD.h + ../xrRender/blenders/blender_combine.cpp + ../xrRender/blenders/blender_combine.h + #../xrRender/blenders/Blender_default_aref.cpp + #../xrRender/blenders/Blender_default_aref.h + #../xrRender/blenders/BlenderDefault.cpp + #../xrRender/blenders/BlenderDefault.h + ../xrRender/blenders/blender_deffer_aref.cpp + ../xrRender/blenders/blender_deffer_aref.h + ../xrRender/blenders/blender_deffer_flat.cpp + ../xrRender/blenders/blender_deffer_flat.h + ../xrRender/blenders/blender_deffer_model.cpp + ../xrRender/blenders/blender_deffer_model.h + #../xrRender/blenders/Blender_detail_still.cpp + ../xrRender/blenders/Blender_detail_still_deferred.cpp + #../xrRender/blenders/Blender_detail_still.h + ../xrRender/blenders/Blender_Editor_Selection.cpp + ../xrRender/blenders/Blender_Editor_Selection.h + ../xrRender/blenders/Blender_Editor_Wire.cpp + ../xrRender/blenders/Blender_Editor_Wire.h + #../xrRender/blenders/Blender_LaEmB.cpp + #../xrRender/blenders/Blender_LaEmB.h + ../xrRender/blenders/blender_light_direct_cascade.cpp + ../xrRender/blenders/blender_light_direct_cascade.h + ../xrRender/blenders/blender_light_direct.cpp + ../xrRender/blenders/blender_light_direct.h + ../xrRender/blenders/blender_light_mask.cpp + ../xrRender/blenders/blender_light_mask.h + ../xrRender/blenders/blender_light_occq.cpp + ../xrRender/blenders/blender_light_occq.h + ../xrRender/blenders/blender_light_point.cpp + ../xrRender/blenders/blender_light_point.h + ../xrRender/blenders/blender_light_reflected.cpp + ../xrRender/blenders/blender_light_reflected.h + ../xrRender/blenders/blender_light_spot.cpp + ../xrRender/blenders/blender_light_spot.h "../xrRender/blenders/Blender_Lm(EbB).cpp" "../xrRender/blenders/Blender_Lm(EbB).h" - "../xrRender/blenders/blender_luminance.cpp" - "../xrRender/blenders/blender_luminance.h" - #"../xrRender/blenders/Blender_Model.cpp" - #"../xrRender/blenders/Blender_Model_EbB.cpp" - "../xrRender/blenders/Blender_Model_EbB_deferred.cpp" - #"../xrRender/blenders/Blender_Model_EbB.h" - #"../xrRender/blenders/Blender_Model.h" - #"../xrRender/blenders/Blender_Particle.cpp" - "../xrRender/blenders/Blender_Particle_deferred.cpp" - #"../xrRender/blenders/Blender_Particle.h" - #"../xrRender/blenders/Blender_Screen_GRAY.cpp" - #"../xrRender/blenders/Blender_Screen_GRAY.h" - "../xrRender/blenders/Blender_Screen_SET.cpp" - "../xrRender/blenders/Blender_Screen_SET.h" - #"../xrRender/blenders/Blender_Shadow_World.cpp" - #"../xrRender/blenders/Blender_Shadow_World.h" - "../xrRender/blenders/blender_ssao.cpp" - "../xrRender/blenders/blender_ssao.h" - #"../xrRender/blenders/Blender_tree.cpp" - "../xrRender/blenders/Blender_tree_deferred.cpp" - #"../xrRender/blenders/Blender_tree.h" - #"../xrRender/blenders/Blender_Vertex_aref.cpp" - #"../xrRender/blenders/Blender_Vertex_aref.h" - #"../xrRender/blenders/Blender_Vertex.cpp" - #"../xrRender/blenders/Blender_Vertex.h" - #"../xrRender/blenders/dx11MinMaxSMBlender.cpp" - "../xrRender/blenders/dx11MinMaxSMBlender.h" - #"../xrRender/blenders/dx11MSAABlender.cpp" - "../xrRender/blenders/dx11MSAABlender.h" - #"../xrRender/blenders/dx11RainBlender.cpp" - "../xrRender/blenders/dx11RainBlender.h" - #"../xrRender/blenders/dx11HDAOCSBlender.cpp" - #"../xrRender/blenders/dx11HDAOCSBlender.h" - #"../xrRender/blenders/dx11MinMaxSMBlender.cpp" - #"../xrRender/blenders/dx11MinMaxSMBlender.h" - "../xrRender/blenders/glMinMaxSMBlender.cpp" - "../xrRender/blenders/glMSAABlender.cpp" - "../xrRender/blenders/glRainBlender.cpp" - "../xrRender/blenders/uber_deffer.cpp" - "../xrRender/blenders/uber_deffer.h" - "../xrRender_R2/r2.cpp" - "../xrRender_R2/r2.h" - "../xrRender_R2/r2_blenders.cpp" - "../xrRender_R2/r2_loader.cpp" - "../xrRender_R2/r2_R_calculate.cpp" - "../xrRender_R2/r2_R_lights.cpp" - "../xrRender_R2/r2_R_render.cpp" - "../xrRender_R2/r2_R_sun_support.h" - "../xrRender_R2/r2_rendertarget.cpp" - "../xrRender_R2/r2_rendertarget_accum_omnipart_geom.cpp" - "../xrRender_R2/r2_rendertarget_accum_point_geom.cpp" - "../xrRender_R2/r2_rendertarget_accum_reflected.cpp" - "../xrRender_R2/r2_rendertarget_accum_spot_geom.cpp" - "../xrRender_R2/r2_rendertarget_draw_volume.cpp" - "../xrRender_R2/r2_rendertarget_enable_scissor.cpp" - "../xrRender_R2/r2_rendertarget_phase_accumulator.cpp" - "../xrRender_R2/r2_rendertarget_phase_bloom.cpp" - "../xrRender_R2/r2_rendertarget_phase_luminance.cpp" - "../xrRender_R2/r2_rendertarget_phase_PP.cpp" - "../xrRender_R2/r2_rendertarget_phase_smap_S.cpp" - "../xrRender_R2/r2_rendertarget_wallmarks.h" - "../xrRender_R2/r2_types.h" - "../xrRender_R2/r3_R_rain.cpp" - "../xrRender_R2/r3_rendertarget_accum_point.cpp" - "../xrRender_R2/r3_rendertarget_accum_spot.cpp" - "../xrRender_R2/r3_rendertarget_create_minmaxSM.cpp" - "../xrRender_R2/r3_rendertarget_draw_rain.cpp" - "../xrRender_R2/r3_rendertarget_mark_msaa_edges.cpp" - "../xrRender_R2/r3_rendertarget_phase_ssao.cpp" - "../xrRender_R2/r3_rendertarget_phase_smap_D.cpp" - "../xrRender_R2/r3_rendertarget_phase_occq.cpp" - "../xrRender_R2/r3_rendertarget_phase_scene.cpp" - "../xrRender_R2/render_phase_sun.cpp" - "../xrRender_R2/SMAP_Allocator.h" - "../xrRenderGL/Blender_Recorder_GL.cpp" - "../xrRenderGL/CommonTypes.h" - "../xrRenderGL/glBufferUtils.cpp" - "../xrRenderGL/glDetailManager_VS.cpp" - "../xrRenderGL/glHWCaps.cpp" - "../xrRenderGL/glHW.cpp" - "../xrRenderGL/glHW.h" - "../xrRenderGL/glR_Backend_Runtime.h" - "../xrRenderGL/glr_constants.cpp" - "../xrRenderGL/glr_constants_cache.h" - "../xrRenderGL/glr_screenshot.cpp" - "../xrRenderGL/glResourceManager_Resources.cpp" - "../xrRenderGL/glResourceManager_Scripting.cpp" - "../xrRenderGL/glSH_RT.cpp" - "../xrRenderGL/glSH_Texture.cpp" - "../xrRenderGL/glState.cpp" - "../xrRenderGL/glState.h" - "../xrRenderGL/glStateUtils.cpp" - "../xrRenderGL/glStateUtils.h" - "../xrRenderGL/glTexture.cpp" - "../xrRenderGL/glTextureUtils.cpp" - "../xrRenderGL/glTextureUtils.h" - "../../Include/xrRender/animation_blend.h" - "../../Include/xrRender/animation_motion.h" - "../../Include/xrRender/DebugRender.h" - "../../Include/xrRender/DebugShader.h" - "../../Include/xrRender/DrawUtils.h" - "../../Include/xrRender/EnvironmentRender.h" - "../../Include/xrRender/FactoryPtr.h" - "../../Include/xrRender/FontRender.h" - "../../Include/xrRender/KinematicsAnimated.h" - "../../Include/xrRender/Kinematics.h" - "../../Include/xrRender/LensFlareRender.h" - "../../Include/xrRender/ObjectSpaceRender.h" - "../../Include/xrRender/ParticleCustom.h" - "../../Include/xrRender/particles_systems_library_interface.hpp" - "../../Include/xrRender/RainRender.h" - "../../Include/xrRender/RenderDetailModel.h" - "../../Include/xrRender/RenderFactory.h" - "../../Include/xrRender/RenderVisual.h" - "../../Include/xrRender/StatGraphRender.h" - "../../Include/xrRender/ThunderboltDescRender.h" - "../../Include/xrRender/ThunderboltRender.h" - "../../Include/xrRender/UIRender.h" - "../../Include/xrRender/UISequenceVideoItem.h" - "../../Include/xrRender/UIShader.h" - "../../Include/xrRender/WallMarkArray.h" + ../xrRender/blenders/blender_luminance.cpp + ../xrRender/blenders/blender_luminance.h + #../xrRender/blenders/Blender_Model.cpp + #../xrRender/blenders/Blender_Model_EbB.cpp + ../xrRender/blenders/Blender_Model_EbB_deferred.cpp + #../xrRender/blenders/Blender_Model_EbB.h + #../xrRender/blenders/Blender_Model.h + #../xrRender/blenders/Blender_Particle.cpp + ../xrRender/blenders/Blender_Particle_deferred.cpp + #../xrRender/blenders/Blender_Particle.h + #../xrRender/blenders/Blender_Screen_GRAY.cpp + #../xrRender/blenders/Blender_Screen_GRAY.h + ../xrRender/blenders/Blender_Screen_SET.cpp + ../xrRender/blenders/Blender_Screen_SET.h + #../xrRender/blenders/Blender_Shadow_World.cpp + #../xrRender/blenders/Blender_Shadow_World.h + ../xrRender/blenders/blender_ssao.cpp + ../xrRender/blenders/blender_ssao.h + #../xrRender/blenders/Blender_tree.cpp + ../xrRender/blenders/Blender_tree_deferred.cpp + #../xrRender/blenders/Blender_tree.h + #../xrRender/blenders/Blender_Vertex_aref.cpp + #../xrRender/blenders/Blender_Vertex_aref.h + #../xrRender/blenders/Blender_Vertex.cpp + #../xrRender/blenders/Blender_Vertex.h + #../xrRender/blenders/dx11MinMaxSMBlender.cpp + ../xrRender/blenders/dx11MinMaxSMBlender.h + #../xrRender/blenders/dx11MSAABlender.cpp + ../xrRender/blenders/dx11MSAABlender.h + #../xrRender/blenders/dx11RainBlender.cpp + ../xrRender/blenders/dx11RainBlender.h + #../xrRender/blenders/dx11HDAOCSBlender.cpp + #../xrRender/blenders/dx11HDAOCSBlender.h + #../xrRender/blenders/dx11MinMaxSMBlender.cpp + #../xrRender/blenders/dx11MinMaxSMBlender.h + ../xrRender/blenders/glMinMaxSMBlender.cpp + ../xrRender/blenders/glMSAABlender.cpp + ../xrRender/blenders/glRainBlender.cpp + ../xrRender/blenders/uber_deffer.cpp + ../xrRender/blenders/uber_deffer.h + ../xrRender_R2/r2.cpp + ../xrRender_R2/r2.h + ../xrRender_R2/r2_blenders.cpp + ../xrRender_R2/r2_loader.cpp + ../xrRender_R2/r2_R_calculate.cpp + ../xrRender_R2/r2_R_lights.cpp + ../xrRender_R2/r2_R_render.cpp + ../xrRender_R2/r2_R_sun_support.h + ../xrRender_R2/r2_rendertarget.cpp + ../xrRender_R2/r2_rendertarget_accum_omnipart_geom.cpp + ../xrRender_R2/r2_rendertarget_accum_point_geom.cpp + ../xrRender_R2/r2_rendertarget_accum_reflected.cpp + ../xrRender_R2/r2_rendertarget_accum_spot_geom.cpp + ../xrRender_R2/r2_rendertarget_draw_volume.cpp + ../xrRender_R2/r2_rendertarget_enable_scissor.cpp + ../xrRender_R2/r2_rendertarget_phase_accumulator.cpp + ../xrRender_R2/r2_rendertarget_phase_bloom.cpp + ../xrRender_R2/r2_rendertarget_phase_luminance.cpp + ../xrRender_R2/r2_rendertarget_phase_PP.cpp + ../xrRender_R2/r2_rendertarget_phase_smap_S.cpp + ../xrRender_R2/r2_rendertarget_wallmarks.h + ../xrRender_R2/r2_types.h + ../xrRender_R2/r3_R_rain.cpp + ../xrRender_R2/r3_rendertarget_accum_point.cpp + ../xrRender_R2/r3_rendertarget_accum_spot.cpp + ../xrRender_R2/r3_rendertarget_create_minmaxSM.cpp + ../xrRender_R2/r3_rendertarget_draw_rain.cpp + ../xrRender_R2/r3_rendertarget_mark_msaa_edges.cpp + ../xrRender_R2/r3_rendertarget_phase_ssao.cpp + ../xrRender_R2/r3_rendertarget_phase_smap_D.cpp + ../xrRender_R2/r3_rendertarget_phase_occq.cpp + ../xrRender_R2/r3_rendertarget_phase_scene.cpp + ../xrRender_R2/render_phase_sun.cpp + ../xrRender_R2/SMAP_Allocator.h + ../xrRenderGL/Blender_Recorder_GL.cpp + ../xrRenderGL/CommonTypes.h + ../xrRenderGL/glBufferUtils.cpp + ../xrRenderGL/glDetailManager_VS.cpp + ../xrRenderGL/glHWCaps.cpp + ../xrRenderGL/glHW.cpp + ../xrRenderGL/glHW.h + ../xrRenderGL/glR_Backend_Runtime.h + ../xrRenderGL/glr_constants.cpp + ../xrRenderGL/glr_constants_cache.h + ../xrRenderGL/glr_screenshot.cpp + ../xrRenderGL/glResourceManager_Resources.cpp + ../xrRenderGL/glResourceManager_Scripting.cpp + ../xrRenderGL/glSH_RT.cpp + ../xrRenderGL/glSH_Texture.cpp + ../xrRenderGL/glState.cpp + ../xrRenderGL/glState.h + ../xrRenderGL/glStateUtils.cpp + ../xrRenderGL/glStateUtils.h + ../xrRenderGL/glTexture.cpp + ../xrRenderGL/glTextureUtils.cpp + ../xrRenderGL/glTextureUtils.h + ../../Include/xrRender/animation_blend.h + ../../Include/xrRender/animation_motion.h + ../../Include/xrRender/DebugRender.h + ../../Include/xrRender/DebugShader.h + ../../Include/xrRender/DrawUtils.h + ../../Include/xrRender/EnvironmentRender.h + ../../Include/xrRender/FactoryPtr.h + ../../Include/xrRender/FontRender.h + ../../Include/xrRender/KinematicsAnimated.h + ../../Include/xrRender/Kinematics.h + ../../Include/xrRender/LensFlareRender.h + ../../Include/xrRender/ObjectSpaceRender.h + ../../Include/xrRender/ParticleCustom.h + ../../Include/xrRender/particles_systems_library_interface.hpp + ../../Include/xrRender/RainRender.h + ../../Include/xrRender/RenderDetailModel.h + ../../Include/xrRender/RenderFactory.h + ../../Include/xrRender/RenderVisual.h + ../../Include/xrRender/StatGraphRender.h + ../../Include/xrRender/ThunderboltDescRender.h + ../../Include/xrRender/ThunderboltRender.h + ../../Include/xrRender/UIRender.h + ../../Include/xrRender/UISequenceVideoItem.h + ../../Include/xrRender/UIShader.h + ../../Include/xrRender/WallMarkArray.h ) -group_sources(SRC_FILES) - -add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) - -target_include_directories(${PROJECT_NAME} +target_include_directories(xrRender_GL PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/src - ${CMAKE_SOURCE_DIR}/src/Layers/xrRender - ${CMAKE_SOURCE_DIR}/src/Include/xrRender - ${CMAKE_SOURCE_DIR}/src/Layers/xrRender_R2 - ${CMAKE_SOURCE_DIR}/sdk/include/DirectXMesh - ${CMAKE_SOURCE_DIR}/Externals/luabind - ${CMAKE_SOURCE_DIR}/Externals/gli - ${CMAKE_SOURCE_DIR}/Externals/gli/external - ${SDL2_INCLUDE_DIRS} + "${CMAKE_CURRENT_SOURCE_DIR}" + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/src/Layers/xrRender" + "${CMAKE_SOURCE_DIR}/src/Include/xrRender" + "${CMAKE_SOURCE_DIR}/src/Layers/xrRender_R2" + "${CMAKE_SOURCE_DIR}/sdk/include/DirectXMesh" + "${CMAKE_SOURCE_DIR}/Externals" + "${CMAKE_SOURCE_DIR}/Externals/gli" + "${CMAKE_SOURCE_DIR}/Externals/gli/external" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrRender_GL PRIVATE xrAPI xrCDB @@ -411,28 +406,26 @@ target_link_libraries(${PROJECT_NAME} xrEngine xrParticles xrScriptEngine - xrLuabind xrImGui OpenGL::GL GLEW::GLEW ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrRender_GL PRIVATE - -DXRRENDER_GL_EXPORTS - -DUSE_OGL + XRRENDER_GL_EXPORTS + USE_OGL ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrRender_GL PROPERTIES PREFIX "" ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrRender_GL PRIVATE - "stdafx.h" + stdafx.h ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS xrRender_GL LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/src/Layers/xrRenderPC_R1/CMakeLists.txt b/src/Layers/xrRenderPC_R1/CMakeLists.txt index 28ceb224141..54800c07124 100644 --- a/src/Layers/xrRenderPC_R1/CMakeLists.txt +++ b/src/Layers/xrRenderPC_R1/CMakeLists.txt @@ -1,68 +1,59 @@ -project(xrRenderPC_R1) - -set(SRC_FILES - "FStaticRender_Blenders.cpp" - "FStaticRender.cpp" - "FStaticRender_DetectSector.cpp" - "FStaticRender.h" - "FStaticRender_Loader.cpp" - "FStaticRender_RenderTarget.cpp" - "FStaticRender_RenderTarget.h" - "FStaticRender_Shaders.cpp" - "FStaticRender_Types.h" - "GlowManager.cpp" - "GlowManager.h" - "LightPPA.cpp" - "LightPPA.h" - "LightProjector.cpp" - "LightProjector.h" - "LightShadows.cpp" - "LightShadows.h" - "stdafx.cpp" - "stdafx.h" - "xrRender_R1.cpp" +add_library(xrRenderPC_R1 SHARED) + +target_sources(xrRenderPC_R1 PRIVATE + FStaticRender_Blenders.cpp + FStaticRender.cpp + FStaticRender_DetectSector.cpp + FStaticRender.h + FStaticRender_Loader.cpp + FStaticRender_RenderTarget.cpp + FStaticRender_RenderTarget.h + FStaticRender_Shaders.cpp + FStaticRender_Types.h + GlowManager.cpp + GlowManager.h + LightPPA.cpp + LightPPA.h + LightProjector.cpp + LightProjector.h + LightShadows.cpp + LightShadows.h + stdafx.cpp + stdafx.h + xrRender_R1.cpp ) -group_sources(SRC_FILES) - -add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) - -target_include_directories(${PROJECT_NAME} +target_include_directories(xrRenderPC_R1 PRIVATE - ${CMAKE_SOURCE_DIR}/src - ${CMAKE_SOURCE_DIR}/Externals/luabind - ${CMAKE_SOURCE_DIR}/sdk/include - ${SDL2_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/sdk/include" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrRenderPC_R1 PRIVATE xrCore - xrLuabind xrCDB xrEngine xrParticles xrScriptEngine xrAPI xrMiscMath - ${SDL2_LIBRARIES} ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrRenderPC_R1 PRIVATE - -DXRRENDER_R1_EXPORTS + XRRENDER_R1_EXPORTS ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrRenderPC_R1 PROPERTIES PREFIX "" ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrRenderPC_R1 PRIVATE - "stdafx.h" + stdafx.h ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS xrRenderPC_R1 LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/src/Layers/xrRenderPC_R2/CMakeLists.txt b/src/Layers/xrRenderPC_R2/CMakeLists.txt new file mode 100644 index 00000000000..b38400485b9 --- /dev/null +++ b/src/Layers/xrRenderPC_R2/CMakeLists.txt @@ -0,0 +1,56 @@ +add_library(xrRenderPC_R2 SHARED) + +target_sources(xrRenderPC_R2 PRIVATE + Light_Render_Direct_ComputeXFS.cpp + r2_rendertarget.h + r2_rendertarget_accum_direct.cpp + r2_rendertarget_accum_point.cpp + r2_rendertarget_accum_spot.cpp + r2_rendertarget_build_textures.cpp + r2_rendertarget_phase_combine.cpp + r2_rendertarget_phase_occq.cpp + r2_rendertarget_phase_scene.cpp + r2_rendertarget_phase_smap_D.cpp + r2_rendertarget_phase_ssao.cpp + r2_rendertarget_u_set_rt.cpp + r2_shaders.cpp + r2_test_hw.cpp + stdafx.cpp + stdafx.h + xrRender_R2.cpp +) + +target_include_directories(xrRenderPC_R2 + PRIVATE + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/sdk/include" +) + +target_link_libraries(xrRenderPC_R2 + PRIVATE + xrCore + xrCDB + xrEngine + xrParticles + xrScriptEngine + xrAPI + xrMiscMath +) + +target_compile_definitions(xrRenderPC_R2 + PRIVATE + XRRENDER_R2_EXPORTS +) + +set_target_properties(xrRenderPC_R2 PROPERTIES + PREFIX "" +) + +target_precompile_headers(xrRenderPC_R2 + PRIVATE + stdafx.h +) + +install(TARGETS xrRenderPC_R2 LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" +) diff --git a/src/Layers/xrRenderPC_R4/CMakeLists.txt b/src/Layers/xrRenderPC_R4/CMakeLists.txt new file mode 100644 index 00000000000..dfd3ab39daf --- /dev/null +++ b/src/Layers/xrRenderPC_R4/CMakeLists.txt @@ -0,0 +1,57 @@ +add_library(xrRenderPC_R4 SHARED) + +target_sources(xrRenderPC_R4 PRIVATE + ComputeShader.cpp + ComputeShader.h + CSCompiler.cpp + CSCompiler.h + packages.config + r2_test_hw.cpp + r4_rendertarget.h + r4_rendertarget_accum_direct.cpp + r4_rendertarget_build_textures.cpp + r4_rendertarget_phase_combine.cpp + r4_rendertarget_phase_hdao.cpp + r4_rendertarget_u_set_rt.cpp + r4_shaders.cpp + R_Backend_LOD.cpp + R_Backend_LOD.h + stdafx.cpp + stdafx.h + xrRender_R4.cpp +) + +target_include_directories(xrRenderPC_R4 + PRIVATE + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/sdk/include" +) + +target_link_libraries(xrRenderPC_R4 + PRIVATE + xrCore + xrCDB + xrEngine + xrParticles + xrScriptEngine + xrAPI + xrMiscMath +) + +target_compile_definitions(xrRenderPC_R4 + PRIVATE + XRRENDER_R4_EXPORTS +) + +set_target_properties(xrRenderPC_R4 PROPERTIES + PREFIX "" +) + +target_precompile_headers(xrRenderPC_R4 + PRIVATE + stdafx.h +) + +install(TARGETS xrRenderPC_R4 LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" +) diff --git a/src/utils/CMakeLists.txt b/src/utils/CMakeLists.txt index 569d71fc84f..b03646682fb 100644 --- a/src/utils/CMakeLists.txt +++ b/src/utils/CMakeLists.txt @@ -1,6 +1,11 @@ -#add_subdirectory(xrLC_Light) +if (WIN32) + add_subdirectory(xrLC_Light) +endif() + add_subdirectory(xrLCUtil) + if (NOT PROJECT_PLATFORM_E2K) # XXX: fix compilation on E2K add_subdirectory(xrQSlim) endif() + add_subdirectory(xrMiscMath) diff --git a/src/utils/xrLCUtil/CMakeLists.txt b/src/utils/xrLCUtil/CMakeLists.txt index 85a35eb5cc6..14f6f16ca2a 100644 --- a/src/utils/xrLCUtil/CMakeLists.txt +++ b/src/utils/xrLCUtil/CMakeLists.txt @@ -1,44 +1,40 @@ -project(xrLCUtil) - -set(SRC_FILES - #"ILevelCompilerLogger.hpp" - #"LevelCompilerLoggerWindow.hpp" - #"LevelCompilerLoggerWindow.cpp" - "pch.cpp" - "pch.cpp" - "resource.h" - "xrLCUtil.hpp" - "xrLCUtil.cpp" - "xrThread.hpp" - "xrThread.cpp" +add_library(xrLCUtil SHARED) + +target_sources(xrLCUtil PRIVATE + #ILevelCompilerLogger.hpp + #LevelCompilerLoggerWindow.hpp + #LevelCompilerLoggerWindow.cpp + pch.cpp + pch.cpp + resource.h + xrLCUtil.hpp + xrLCUtil.cpp + xrThread.hpp + xrThread.cpp ) -group_sources(SRC_FILES) - -add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) - -target_include_directories(${PROJECT_NAME} +target_include_directories(xrLCUtil PRIVATE - ${CMAKE_SOURCE_DIR}/src + "${CMAKE_SOURCE_DIR}/src" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrLCUtil PRIVATE xrCore ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrLCUtil PRIVATE - -DLEVEL_COMPILER - -DXRLCUTIL_EXPORTS - -D_USE_MATH_DEFINES + LEVEL_COMPILER + XRLCUTIL_EXPORTS + _USE_MATH_DEFINES ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrLCUtil PROPERTIES PREFIX "" ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrLCUtil PRIVATE - "pch.hpp" + pch.hpp ) diff --git a/src/utils/xrLC_Light/CMakeLists.txt b/src/utils/xrLC_Light/CMakeLists.txt index 3d738db359f..ad262e58951 100644 --- a/src/utils/xrLC_Light/CMakeLists.txt +++ b/src/utils/xrLC_Light/CMakeLists.txt @@ -1,189 +1,185 @@ -project(xrLC_Light) +add_library(xrLC_Light SHARED) -set(SRC_FILES - "base_basis.cpp" - "base_basis.h" - "base_color.cpp" - "base_color.h" - "base_face.cpp" - "base_face.h" - "base_face_ptr_storage.h" - "base_lighting.cpp" - "base_lighting.h" - "b_build_texture.cpp" - "b_build_texture.h" - "calculate_normals.h" - "compiler.cpp" - "detail_net_global_data.cpp" - "detail_net_global_data.h" - "detail_slot_calculate.cpp" - "detail_slot_calculate.h" - "ETextureParams.cpp" - "ETextureParams.h" - "execute_statistics.cpp" - "execute_statistics.h" - "file_compress.cpp" - "file_compress.h" - "fitter.cpp" - "fitter.h" - "gl_base_cl_data.cpp" - "gl_base_cl_data.h" - "global_calculation_data.cpp" - "global_calculation_data.h" - "global_slots_data.cpp" - "global_slots_data.h" - "hash2D.h" - "implicit_net_global_data.cpp" - "implicit_net_global_data.h" - "itterate_adjacents.h" - "itterate_adjacents_static.h" - "lcnet_execution_tasks_add.h" - "lc_net_global_data.cpp" - "lc_net_global_data.h" - "lcnet_task_manager.cpp" - "lcnet_task_manager.h" - "lcnet_task_menager_run_task.cpp" - "light_execute.cpp" - "light_execute.h" - "Lightmap.cpp" - "Lightmap.h" - "light_point.h" - "lightstab_interface.h" - "LightThread.cpp" - "LightThread.h" - "lm_layer.cpp" - "lm_layer.h" - "lm_net_global_data.cpp" - "lm_net_global_data.h" - "MeshStaic.cpp" - "MeshStructure.h" - "mu_light_net.cpp" - "mu_light_net.h" - "mu_model_face.cpp" - "mu_model_face_defs.h" - "mu_model_face.h" - "mu_model_light.cpp" - "mu_model_light.h" - "mu_model_light_threads.cpp" - "mu_model_light_threads.h" - "net_all_executions.h" - "net_all_globals.h" - "net_cl_data_prepare.cpp" - "net_cl_data_prepare.h" - "net_exec_pool.cpp" - "net_exec_pool.h" - "net_execution.cpp" - "net_execution_detail_light.cpp" - "net_execution_detail_light.h" - "net_execution_factory.cpp" - "net_execution_factory.h" - "net_execution_factory_register.cpp" - "net_execution_globals.cpp" - "net_execution_globals.h" - "net_execution.h" - "net_execution_implicit_light.cpp" - "net_execution_implicit_light.h" - "net_execution_lightmaps.cpp" - "net_execution_lightmaps.h" - "net_execution_mu_base.cpp" - "net_execution_mu_base.h" - "net_execution_mu_ref.cpp" - "net_execution_mu_ref.h" - "net_execution_vertex_light.cpp" - "net_execution_vertex_light.h" - "net_global_data_cleanup.cpp" - "net_global_data_cleanup.h" - "net_global_data.cpp" - "net_global_data.h" - "net_light.cpp" - "net_light.h" - "net_lightmaps_add_task.cpp" - "net_light_task.cpp" - "net_light_task.h" - "net_stream.cpp" - "net_stream.h" - "net_task_callback.cpp" - "net_task_callback.h" - "net_task.cpp" - "net_task.h" - "net_task_manager.cpp" - "net_task_manager.h" - "net_task_menager.cpp" - "net_task_menager.h" - "recalculation.cpp" - "recalculation.h" - "ref_model_net_global_data.cpp" - "ref_model_net_global_data.h" - "R_light.h" - "serialize.cpp" - "serialize.h" - "stdafx.cpp" - "stdafx.h" - "tcf.cpp" - "tcf.h" - "uv_tri.cpp" - "uv_tri.h" - "vector_clear.h" - "xrDeflectoL_Direct.cpp" - "xrDeflector.cpp" - "xrDeflectorDefs.h" - "xrDeflector.h" - "xrDeflectorLight.cpp" - "xrDXTC.h" - "xrFace.cpp" - "xrFaceDefs.h" - "xrFace.h" - "xrFaceInline.h" - "xrImage_Filter.cpp" - "xrImage_Filter.h" - "xrImage_Resampler.cpp" - "xrImage_Resampler.h" - "xrIsect.h" - "xrLC_GlobalData.cpp" - "xrLC_GlobalData.h" - "xrLC_Light.cpp" - "xrLC_Light.h" - "xrLightDoNet.cpp" - "xrLightDoNet.h" - "xrLight_ImlicitNet.cpp" - "xrLight_ImplicitCalcGlobs.cpp" - "xrLight_ImplicitCalcGlobs.h" - "xrLight_Implicit.cpp" - "xrLight_ImplicitDeflector.cpp" - "xrLight_ImplicitDeflector.h" - "xrLight_Implicit.h" - "xrLight_ImplicitRun.h" - "xrLight_ImplicitThread.cpp" - "xrLightVertex.cpp" - "xrLightVertex.h" - "xrLightVertexNet.cpp" - "xrMU_Model_Calc_faceopacity.cpp" - "xrMU_Model_Calc_lighting.cpp" - "xrMU_Model_Calc_materials.cpp" - "xrMU_Model_Calc_normals.cpp" - "xrMU_Model.cpp" - "xrMU_Model_export_cform_rcast.cpp" - "xrMU_Model.h" - "xrMU_Model_Load.cpp" - "xrMU_Model_Reference_Calc_Lighting.cpp" - "xrMU_Model_Reference.cpp" - "xrMU_Model_Reference.h" - "xrUVpoint.h" - "../Shader_xrLC.h" - "../../xrEngine/xrLoadSurface.cpp" +target_sources(xrLC_Light PRIVATE + base_basis.cpp + base_basis.h + base_color.cpp + base_color.h + base_face.cpp + base_face.h + base_face_ptr_storage.h + base_lighting.cpp + base_lighting.h + b_build_texture.cpp + b_build_texture.h + calculate_normals.h + compiler.cpp + detail_net_global_data.cpp + detail_net_global_data.h + detail_slot_calculate.cpp + detail_slot_calculate.h + ETextureParams.cpp + ETextureParams.h + execute_statistics.cpp + execute_statistics.h + file_compress.cpp + file_compress.h + fitter.cpp + fitter.h + gl_base_cl_data.cpp + gl_base_cl_data.h + global_calculation_data.cpp + global_calculation_data.h + global_slots_data.cpp + global_slots_data.h + hash2D.h + implicit_net_global_data.cpp + implicit_net_global_data.h + itterate_adjacents.h + itterate_adjacents_static.h + lcnet_execution_tasks_add.h + lc_net_global_data.cpp + lc_net_global_data.h + lcnet_task_manager.cpp + lcnet_task_manager.h + lcnet_task_menager_run_task.cpp + light_execute.cpp + light_execute.h + Lightmap.cpp + Lightmap.h + light_point.h + lightstab_interface.h + LightThread.cpp + LightThread.h + lm_layer.cpp + lm_layer.h + lm_net_global_data.cpp + lm_net_global_data.h + MeshStaic.cpp + MeshStructure.h + mu_light_net.cpp + mu_light_net.h + mu_model_face.cpp + mu_model_face_defs.h + mu_model_face.h + mu_model_light.cpp + mu_model_light.h + mu_model_light_threads.cpp + mu_model_light_threads.h + net_all_executions.h + net_all_globals.h + net_cl_data_prepare.cpp + net_cl_data_prepare.h + net_exec_pool.cpp + net_exec_pool.h + net_execution.cpp + net_execution_detail_light.cpp + net_execution_detail_light.h + net_execution_factory.cpp + net_execution_factory.h + net_execution_factory_register.cpp + net_execution_globals.cpp + net_execution_globals.h + net_execution.h + net_execution_implicit_light.cpp + net_execution_implicit_light.h + net_execution_lightmaps.cpp + net_execution_lightmaps.h + net_execution_mu_base.cpp + net_execution_mu_base.h + net_execution_mu_ref.cpp + net_execution_mu_ref.h + net_execution_vertex_light.cpp + net_execution_vertex_light.h + net_global_data_cleanup.cpp + net_global_data_cleanup.h + net_global_data.cpp + net_global_data.h + net_light.cpp + net_light.h + net_lightmaps_add_task.cpp + net_light_task.cpp + net_light_task.h + net_stream.cpp + net_stream.h + net_task_callback.cpp + net_task_callback.h + net_task.cpp + net_task.h + net_task_manager.cpp + net_task_manager.h + net_task_menager.cpp + net_task_menager.h + recalculation.cpp + recalculation.h + ref_model_net_global_data.cpp + ref_model_net_global_data.h + R_light.h + serialize.cpp + serialize.h + stdafx.cpp + stdafx.h + tcf.cpp + tcf.h + uv_tri.cpp + uv_tri.h + vector_clear.h + xrDeflectoL_Direct.cpp + xrDeflector.cpp + xrDeflectorDefs.h + xrDeflector.h + xrDeflectorLight.cpp + xrDXTC.h + xrFace.cpp + xrFaceDefs.h + xrFace.h + xrFaceInline.h + xrImage_Filter.cpp + xrImage_Filter.h + xrImage_Resampler.cpp + xrImage_Resampler.h + xrIsect.h + xrLC_GlobalData.cpp + xrLC_GlobalData.h + xrLC_Light.cpp + xrLC_Light.h + xrLightDoNet.cpp + xrLightDoNet.h + xrLight_ImlicitNet.cpp + xrLight_ImplicitCalcGlobs.cpp + xrLight_ImplicitCalcGlobs.h + xrLight_Implicit.cpp + xrLight_ImplicitDeflector.cpp + xrLight_ImplicitDeflector.h + xrLight_Implicit.h + xrLight_ImplicitRun.h + xrLight_ImplicitThread.cpp + xrLightVertex.cpp + xrLightVertex.h + xrLightVertexNet.cpp + xrMU_Model_Calc_faceopacity.cpp + xrMU_Model_Calc_lighting.cpp + xrMU_Model_Calc_materials.cpp + xrMU_Model_Calc_normals.cpp + xrMU_Model.cpp + xrMU_Model_export_cform_rcast.cpp + xrMU_Model.h + xrMU_Model_Load.cpp + xrMU_Model_Reference_Calc_Lighting.cpp + xrMU_Model_Reference.cpp + xrMU_Model_Reference.h + xrUVpoint.h + ../Shader_xrLC.h + ../xrLoadSurface.cpp ) -group_sources(SRC_FILES) - -add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) - -target_include_directories(${PROJECT_NAME} +target_include_directories(xrLC_Light PRIVATE - ${CMAKE_SOURCE_DIR}/src - ${CMAKE_SOURCE_DIR}/sdk/include + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/sdk/include" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrLC_Light PRIVATE xrCore xrCDB @@ -191,25 +187,24 @@ target_link_libraries(${PROJECT_NAME} xrLCUtil ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrLC_Light PRIVATE - -D_USRDLL - -DLEVEL_COMPILER - -D_USE_MATH_DEFINES - -DXRLC_LIGHT_EXPORTS - -DFORCE_NO_EXCEPTIONS + _USRDLL + LEVEL_COMPILER + _USE_MATH_DEFINES + XRLC_LIGHT_EXPORTS + FORCE_NO_EXCEPTIONS ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrLC_Light PROPERTIES PREFIX "" ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrLC_Light PRIVATE - "stdafx.h" + stdafx.h ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS xrLC_Light LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/src/utils/xrMiscMath/CMakeLists.txt b/src/utils/xrMiscMath/CMakeLists.txt index 86410fa1bbb..507c4072515 100644 --- a/src/utils/xrMiscMath/CMakeLists.txt +++ b/src/utils/xrMiscMath/CMakeLists.txt @@ -1,29 +1,25 @@ -project(xrMiscMath) +add_library(xrMiscMath STATIC) -set(SRC_FILES - "matrix.cpp" - "quaternion.cpp" - "vector.cpp" - "vector3d_ext.cpp" - "xrMiscMath.cpp" - "pch.hpp" - "pch.cpp" +target_sources(xrMiscMath PRIVATE + matrix.cpp + quaternion.cpp + vector.cpp + vector3d_ext.cpp + xrMiscMath.cpp + pch.hpp + pch.cpp ) -group_sources(SRC_FILES) - -add_library(${PROJECT_NAME} STATIC ${SRC_FILES}) - -target_include_directories(${PROJECT_NAME} - PUBLIC - ${CMAKE_SOURCE_DIR}/src +target_include_directories(xrMiscMath + PRIVATE + "${CMAKE_SOURCE_DIR}/src" ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrMiscMath PROPERTIES POSITION_INDEPENDENT_CODE ON ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrMiscMath PRIVATE - "pch.hpp" + pch.hpp ) diff --git a/src/utils/xrQSlim/CMakeLists.txt b/src/utils/xrQSlim/CMakeLists.txt index d14960ca911..5569062f2a3 100644 --- a/src/utils/xrQSlim/CMakeLists.txt +++ b/src/utils/xrQSlim/CMakeLists.txt @@ -1,65 +1,61 @@ -project(xrQSlim) +add_library(xrQSlim STATIC) -set(SRC_FILES - "geom3d.h" - "mat2.h" - "mat2.cpp" - "mat3.h" - "mat3.cpp" - "mat4.h" - "mat4.cpp" - "mixmops.h" - "mixmops.cpp" - "mixvops.h" - "MxBlock2.h" - "MxBlock.h" - "MxBlockModel.h" - "MxBlockModel.cpp" - "MxDefines.h" - "MxDynBlock.h" - "MxGeom3D.h" - "MxGeom3D.cpp" - "MxGeoPrims.h" - "MxHeap.h" - "MxHeap.cpp" - "MxMat2.h" - "MxMat3.h" - "MxMat3-jacobi.cpp" - "MxMat4-jacobi.cpp" - "MxMat4.h" - "MxMatrix.h" - "MxMatrix.cpp" - "MxPropSlim.h" - "MxPropSlim.cpp" - "MxQMetric3.h" - "MxQMetric3.cpp" - "MxQMetric.h" - "MxQMetric.cpp" - "MxQSlim.h" - "MxQSlim.cpp" - "MxStdModel.h" - "MxStdModel.cpp" - "MxStdSlim.h" - "MxStdSlim.cpp" - "MxVec3.h" - "MxVec4.h" - "MxVector.h" - "stdafx.h" - "vec2.h" - "vec3.h" - "vec4.h" +target_sources(xrQSlim PRIVATE + geom3d.h + mat2.h + mat2.cpp + mat3.h + mat3.cpp + mat4.h + mat4.cpp + mixmops.h + mixmops.cpp + mixvops.h + MxBlock2.h + MxBlock.h + MxBlockModel.h + MxBlockModel.cpp + MxDefines.h + MxDynBlock.h + MxGeom3D.h + MxGeom3D.cpp + MxGeoPrims.h + MxHeap.h + MxHeap.cpp + MxMat2.h + MxMat3.h + MxMat3-jacobi.cpp + MxMat4-jacobi.cpp + MxMat4.h + MxMatrix.h + MxMatrix.cpp + MxPropSlim.h + MxPropSlim.cpp + MxQMetric3.h + MxQMetric3.cpp + MxQMetric.h + MxQMetric.cpp + MxQSlim.h + MxQSlim.cpp + MxStdModel.h + MxStdModel.cpp + MxStdSlim.h + MxStdSlim.cpp + MxVec3.h + MxVec4.h + MxVector.h + stdafx.h + vec2.h + vec3.h + vec4.h ) -group_sources(SRC_FILES) - -add_library(${PROJECT_NAME} STATIC ${SRC_FILES}) - -target_include_directories(${PROJECT_NAME} - PUBLIC - ${CMAKE_SOURCE_DIR}/src +target_include_directories(xrQSlim + PRIVATE + "${CMAKE_SOURCE_DIR}/src" ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrQSlim PUBLIC - -DXR_QSLIM_EXPORTS + XR_QSLIM_EXPORTS ) diff --git a/src/xrAICore/CMakeLists.txt b/src/xrAICore/CMakeLists.txt index 9e96971b992..d6c9507dd16 100644 --- a/src/xrAICore/CMakeLists.txt +++ b/src/xrAICore/CMakeLists.txt @@ -1,297 +1,321 @@ -project(xrAICore) - -set(AI_SRC - "AISpaceBase.cpp" - "AISpaceBase.hpp" -) - -set(AI_COMPONENTS_PROBLEM_SOLVER_SRC - "Components/problem_solver.h" - "Components/problem_solver_inline.h" -) - -set(AI_COMPONENTS_PROBLEM_SOLVER_CONDITION_STATE_SRC - "Components/condition_state.h" - "Components/condition_state_inline.h" -) - -set(AI_COMPONENTS_PROBLEM_SOLVER_CONDITION_STATE_SCRIPT_WORLD_STATE_SRC - "Components/script_world_state.h" - "Components/script_world_state_script.cpp" -) - -set(AI_COMPONENTS_PROBLEM_SOLVER_OPERATOR_ABSTRACT_SRC - "Components/operator_abstract.h" - "Components/operator_abstract_inline.h" -) - -set(AI_COMPONENTS_PROBLEM_SOLVER_OPERATOR_CONDITION_SRC - "Components/operator_condition.h" - "Components/operator_condition_inline.h" -) - -set(AI_COMPONENTS_PROBLEM_SOLVER_OPERATOR_CONDITION_SCRIPT_WORLD_PROPERTY_SRC - "Components/script_world_property.h" - "Components/script_world_property_inline.h" - "Components/script_world_property_script.cpp" -) - -set(AI_NAVIGATION_GAME_GRAPH_SRC - "Navigation/game_graph.h" - "Navigation/game_graph_inline.h" - "Navigation/game_graph_script.cpp" - "Navigation/game_graph_space.h" -) - -set(AI_NAVIGATION_GAME_LEVEL_CROSS_TABLE_SRC - "Navigation/game_level_cross_table.h" - "Navigation/game_level_cross_table_inline.h" -) - -set(AI_NAVIGATION_GRAPH_ABSTRACT_SRC - "Navigation/graph_abstract.h" - "Navigation/graph_abstract_inline.h" - "Navigation/graph_edge.h" - "Navigation/graph_edge_inline.h" - "Navigation/graph_vertex.h" - "Navigation/graph_vertex_inline.h" -) - -set(AI_NAVIGATION_LEVEL_GRAPH - "Navigation/level_graph.cpp" - "Navigation/level_graph.h" - "Navigation/level_graph_inline.h" - "Navigation/level_graph_manager.h" - "Navigation/level_graph_space.h" - "Navigation/level_graph_vertex.cpp" - "Navigation/level_graph_vertex_inline.h" -) - -set(AI_NAVIGATION_OBJECT_LOCATION - "Navigation/ai_object_location.h" - "Navigation/ai_object_location_impl.h" - "Navigation/ai_object_location_inline.h" -) - -set(AI_NAVIGATION_PATHFINDING_ALGORITHMS_ASTAR - "Navigation/a_star.h" - "Navigation/a_star_inline.h" -) - -set(AI_NAVIGATION_PATHFINDING_ALGORITHMS_DIJKSTRA - "Navigation/dijkstra.h" - "Navigation/dijkstra_inline.h" -) - -set(AI_NAVIGATION_PATHFINDING_DATASTORAGES_CONSTRUCTORS - "Navigation/data_storage_constructor.h" -) - -set(AI_NAVIGATION_PATHFINDING_DATASTORAGES_PATH_BUILDERS - "Navigation/edge_path.h" - "Navigation/edge_path_inline.h" - "Navigation/vertex_path.h" - "Navigation/vertex_path_inline.h" -) - -set(AI_NAVIGATION_PATHFINDING_DATASTORAGES_PRIORITY_QUEUES - "Navigation/data_storage_binary_heap.h" - "Navigation/data_storage_binary_heap_inline.h" - "Navigation/data_storage_bucket_list.h" - "Navigation/data_storage_bucket_list_inline.h" -) - -set(AI_NAVIGATION_PATHFINDING_DATASTORAGES_VERTEX_ALLOCATORS - "Navigation/vertex_allocator_fixed.h" - "Navigation/vertex_allocator_fixed_inline.h" -) - -set(AI_NAVIGATION_PATHFINDING_DATASTORAGES_VERTEX_MANAGERS - "Navigation/vertex_manager_fixed.h" - "Navigation/vertex_manager_fixed_inline.h" - "Navigation/vertex_manager_hash_fixed.h" - "Navigation/vertex_manager_hash_fixed_inline.h" -) - -set(AI_NAVIGATION_PATHFINDING_GRAPH_ENGINE - "Navigation/graph_engine.h" - "Navigation/graph_engine_inline.h" - "Navigation/graph_engine_space.h" -) - -set(AI_NAVIGATION_PATHFINDING_PATH_MANAGERS - "Navigation/PathManagers/path_manager.h" -) - -set(AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_GAME - "Navigation/PathManagers/path_manager_game.h" - "Navigation/PathManagers/path_manager_game_inline.h" - "Navigation/PathManagers/path_manager_game_level.h" - "Navigation/PathManagers/path_manager_game_level_inline.h" - "Navigation/PathManagers/path_manager_game_vertex.h" - "Navigation/PathManagers/path_manager_game_vertex_inline.h" -) - -set(AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_GENERIC - "Navigation/PathManagers/path_manager_generic.h" - "Navigation/PathManagers/path_manager_generic_inline.h" -) - -set(AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_LEVEL - "Navigation/PathManagers/path_manager_level.h" - "Navigation/PathManagers/path_manager_level_inline.h" - "Navigation/PathManagers/path_manager_level_flooder.h" - "Navigation/PathManagers/path_manager_level_flooder_inline.h" - "Navigation/PathManagers/path_manager_level_nearest_vertex.h" - "Navigation/PathManagers/path_manager_level_nearest_vertex_inline.h" - "Navigation/PathManagers/path_manager_level_straight_line.h" - "Navigation/PathManagers/path_manager_level_straight_line_inline.h" -) - -set(AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_PARAMS - "Navigation/PathManagers/path_manager_params.h" - "Navigation/PathManagers/path_manager_params_flooder.h" - "Navigation/PathManagers/path_manager_params_game_level.h" - "Navigation/PathManagers/path_manager_params_game_vertex.h" - "Navigation/PathManagers/path_manager_params_nearest_vertex.h" - "Navigation/PathManagers/path_manager_params_straight_line.h" -) - -set(AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_SOLVER - "Navigation/PathManagers/path_manager_solver.h" - "Navigation/PathManagers/path_manager_solver_inline.h" -) - -set(AI_NAVIGATION_PATROL_PATH - "Navigation/PatrolPath/patrol_path.cpp" - "Navigation/PatrolPath/patrol_path.h" - "Navigation/PatrolPath/patrol_path_inline.h" -) - -set(AI_NAVIGATION_PATROL_PATH_PARAMS - "Navigation/PatrolPath/patrol_path_params.cpp" - "Navigation/PatrolPath/patrol_path_params.h" - "Navigation/PatrolPath/patrol_path_params_inline.h" - "Navigation/PatrolPath/patrol_path_params_script.cpp" -) - -set(AI_NAVIGATION_PATROL_PATH_PATROL_POINT - "Navigation/PatrolPath/patrol_point.cpp" - "Navigation/PatrolPath/patrol_point.h" - "Navigation/PatrolPath/patrol_point_inline.h" -) - -set(AI_NAVIGATION_PATROL_PATH_STORAGE - "Navigation/PatrolPath/patrol_path_storage.cpp" - "Navigation/PatrolPath/patrol_path_storage.h" - "Navigation/PatrolPath/patrol_path_storage_inline.h" -) - -set(KERNEL_SRC - "pch.cpp" - "pch.hpp" -) - -source_group("AI" FILES ${AI_SRC}) -source_group("AI\\Component\\ProblemSolver" FILES ${AI_COMPONENTS_PROBLEM_SOLVER_SRC}) -source_group("AI\\Component\\ProblemSolver\\ConditionState" FILES ${AI_COMPONENTS_PROBLEM_SOLVER_CONDITION_STATE_SRC}) -source_group("AI\\Component\\ProblemSolver\\ConditionState\\ScriptWorldState" FILES ${AI_COMPONENTS_PROBLEM_SOLVER_CONDITION_STATE_SCRIPT_WORLD_STATE_SRC}) -source_group("AI\\Component\\ProblemSolver\\OperatorAbstract" FILES ${AI_COMPONENTS_PROBLEM_SOLVER_OPERATOR_ABSTRACT_SRC}) -source_group("AI\\Component\\ProblemSolver\\OperatorCondition" FILES ${AI_COMPONENTS_PROBLEM_SOLVER_OPERATOR_CONDITION_SRC}) -source_group("AI\\Component\\ProblemSolver\\OperatorCondition\\ScriptWorldProperty" FILES ${AI_COMPONENTS_PROBLEM_SOLVER_OPERATOR_CONDITION_SCRIPT_WORLD_PROPERTY_SRC}) -source_group("AI\\Navigation\\GameGraph" FILES ${AI_NAVIGATION_GAME_GRAPH_SRC}) -source_group("AI\\Navigation\\GameLevelCrossTable" FILES ${AI_NAVIGATION_GAME_LEVEL_CROSS_TABLE_SRC}) -source_group("AI\\Navigation\\GraphAbstract" FILES ${AI_NAVIGATION_GRAPH_ABSTRACT_SRC}) -source_group("AI\\Navigation\\LevelGraph" FILES ${AI_NAVIGATION_LEVEL_GRAPH}) -source_group("AI\\Navigation\\ObjectLocation" FILES ${AI_NAVIGATION_OBJECT_LOCATION}) -source_group("AI\\Navigation\\Pathfinding\\Algorithms\\AStar" FILES ${AI_NAVIGATION_PATHFINDING_ALGORITHMS_ASTAR}) -source_group("AI\\Navigation\\Pathfinding\\Algorithms\\Dijkstra" FILES ${AI_NAVIGATION_PATHFINDING_ALGORITHMS_DIJKSTRA}) -source_group("AI\\Navigation\\Pathfinding\\DataStorages\\Constructors" FILES ${AI_NAVIGATION_PATHFINDING_DATASTORAGES_CONSTRUCTORS}) -source_group("AI\\Navigation\\Pathfinding\\DataStorages\\PathBuilders" FILES ${AI_NAVIGATION_PATHFINDING_DATASTORAGES_PATH_BUILDERS}) -source_group("AI\\Navigation\\Pathfinding\\DataStorages\\PriorityQueues" FILES ${AI_NAVIGATION_PATHFINDING_DATASTORAGES_PRIORITY_QUEUES}) -source_group("AI\\Navigation\\Pathfinding\\DataStorages\\VertexAllocators" FILES ${AI_NAVIGATION_PATHFINDING_DATASTORAGES_VERTEX_ALLOCATORS}) -source_group("AI\\Navigation\\Pathfinding\\DataStorages\\VertexManagers" FILES ${AI_NAVIGATION_PATHFINDING_DATASTORAGES_VERTEX_MANAGERS}) -source_group("AI\\Navigation\\Pathfinding\\GraphEngine" FILES ${AI_NAVIGATION_PATHFINDING_GRAPH_ENGINE}) -source_group("AI\\Navigation\\Pathfinding\\PathManagers" FILES ${AI_NAVIGATION_PATHFINDING_PATH_MANAGERS}) -source_group("AI\\Navigation\\Pathfinding\\PathManagers\\Game" FILES ${AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_GAME}) -source_group("AI\\Navigation\\Pathfinding\\PathManagers\\Generic" FILES ${AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_GENERIC}) -source_group("AI\\Navigation\\Pathfinding\\PathManagers\\Level" FILES ${AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_LEVEL}) -source_group("AI\\Navigation\\Pathfinding\\PathManagers\\Params" FILES ${AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_PARAMS}) -source_group("AI\\Navigation\\Pathfinding\\PathManagers\\Solver" FILES ${AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_SOLVER}) -source_group("AI\\Navigation\\PatrolPath" FILES ${AI_NAVIGATION_PATROL_PATH}) -source_group("AI\\Navigation\\PatrolPath\\Params" FILES ${AI_NAVIGATION_PATROL_PATH_PARAMS}) -source_group("AI\\Navigation\\PatrolPath\\PatrolPoint" FILES ${AI_NAVIGATION_PATROL_PATH_PATROL_POINT}) -source_group("AI\\Navigation\\PatrolPath\\Storage" FILES ${AI_NAVIGATION_PATROL_PATH_STORAGE}) -source_group("Kernel" FILES ${KERNEL_SRC}) - -add_library(${PROJECT_NAME} SHARED - ${AI_SRC} - ${AI_COMPONENTS_PROBLEM_SOLVER_SRC} - ${AI_COMPONENTS_PROBLEM_SOLVER_CONDITION_STATE_SRC} - ${AI_COMPONENTS_PROBLEM_SOLVER_CONDITION_STATE_SCRIPT_WORLD_STATE_SRC} - ${AI_COMPONENTS_PROBLEM_SOLVER_OPERATOR_ABSTRACT_SRC} - ${AI_COMPONENTS_PROBLEM_SOLVER_OPERATOR_CONDITION_SRC} - ${AI_COMPONENTS_PROBLEM_SOLVER_OPERATOR_CONDITION_SCRIPT_WORLD_PROPERTY_SRC} - ${AI_NAVIGATION_GAME_GRAPH_SRC} - ${AI_NAVIGATION_GAME_LEVEL_CROSS_TABLE_SRC} - ${AI_NAVIGATION_GRAPH_ABSTRACT_SRC} - ${AI_NAVIGATION_LEVEL_GRAPH} - ${AI_NAVIGATION_OBJECT_LOCATION} - ${AI_NAVIGATION_PATHFINDING_ALGORITHMS_ASTAR} - ${AI_NAVIGATION_PATHFINDING_ALGORITHMS_DIJKSTRA} - ${AI_NAVIGATION_PATHFINDING_DATASTORAGES_CONSTRUCTORS} - ${AI_NAVIGATION_PATHFINDING_DATASTORAGES_PATH_BUILDERS} - ${AI_NAVIGATION_PATHFINDING_DATASTORAGES_PRIORITY_QUEUES} - ${AI_NAVIGATION_PATHFINDING_DATASTORAGES_VERTEX_ALLOCATORS} - ${AI_NAVIGATION_PATHFINDING_DATASTORAGES_VERTEX_MANAGERS} - ${AI_NAVIGATION_PATHFINDING_GRAPH_ENGINE} - ${AI_NAVIGATION_PATHFINDING_PATH_MANAGERS} - ${AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_GAME} - ${AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_GENERIC} - ${AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_LEVEL} - ${AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_PARAMS} - ${AI_NAVIGATION_PATHFINDING_PATH_MANAGERS_SOLVER} - ${AI_NAVIGATION_PATROL_PATH} - ${AI_NAVIGATION_PATROL_PATH_PARAMS} - ${AI_NAVIGATION_PATROL_PATH_PATROL_POINT} - ${AI_NAVIGATION_PATROL_PATH_STORAGE} - ${KERNEL_SRC} -) - -target_include_directories(${PROJECT_NAME} +add_library(xrAICore SHARED) + +target_sources_grouped( + TARGET xrAICore + NAME "AI" + FILES + AISpaceBase.cpp + AISpaceBase.hpp +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Component\\ProblemSolver" + FILES + Components/problem_solver.h + Components/problem_solver_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Component\\ProblemSolver\\ConditionState" + FILES + Components/condition_state.h + Components/condition_state_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Component\\ProblemSolver\\ConditionState\\ScriptWorldState" + FILES + Components/script_world_state.h + Components/script_world_state_script.cpp +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Component\\ProblemSolver\\OperatorAbstract" + FILES + Components/operator_abstract.h + Components/operator_abstract_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Component\\ProblemSolver\\OperatorCondition" + FILES + Components/operator_condition.h + Components/operator_condition_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Component\\ProblemSolver\\OperatorCondition\\ScriptWorldProperty" + FILES + Components/script_world_property.h + Components/script_world_property_inline.h + Components/script_world_property_script.cpp +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\GameGraph" + FILES + Navigation/game_graph.h + Navigation/game_graph_inline.h + Navigation/game_graph_script.cpp + Navigation/game_graph_space.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\GameLevelCrossTable" + FILES + Navigation/game_level_cross_table.h + Navigation/game_level_cross_table_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\GraphAbstract" + FILES + Navigation/graph_abstract.h + Navigation/graph_abstract_inline.h + Navigation/graph_edge.h + Navigation/graph_edge_inline.h + Navigation/graph_vertex.h + Navigation/graph_vertex_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\LevelGraph" + FILES + Navigation/level_graph.cpp + Navigation/level_graph.h + Navigation/level_graph_inline.h + Navigation/level_graph_manager.h + Navigation/level_graph_space.h + Navigation/level_graph_vertex.cpp + Navigation/level_graph_vertex_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\ObjectLocation" + FILES + Navigation/ai_object_location.h + Navigation/ai_object_location_impl.h + Navigation/ai_object_location_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\Pathfinding\\Algorithms\\AStar" + FILES + Navigation/a_star.h + Navigation/a_star_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\Pathfinding\\Algorithms\\Dijkstra" + FILES + Navigation/dijkstra.h + Navigation/dijkstra_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\Pathfinding\\DataStorages\\Constructors" + FILES + Navigation/data_storage_constructor.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\Pathfinding\\DataStorages\\PathBuilders" + FILES + Navigation/edge_path.h + Navigation/edge_path_inline.h + Navigation/vertex_path.h + Navigation/vertex_path_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\Pathfinding\\DataStorages\\PriorityQueues" + FILES + Navigation/data_storage_binary_heap.h + Navigation/data_storage_binary_heap_inline.h + Navigation/data_storage_bucket_list.h + Navigation/data_storage_bucket_list_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\Pathfinding\\DataStorages\\VertexAllocators" + FILES + Navigation/vertex_allocator_fixed.h + Navigation/vertex_allocator_fixed_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\Pathfinding\\DataStorages\\VertexManagers" + FILES + Navigation/vertex_manager_fixed.h + Navigation/vertex_manager_fixed_inline.h + Navigation/vertex_manager_hash_fixed.h + Navigation/vertex_manager_hash_fixed_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\Pathfinding\\GraphEngine" + FILES + Navigation/graph_engine.h + Navigation/graph_engine_inline.h + Navigation/graph_engine_space.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\Pathfinding\\PathManagers" + FILES + Navigation/PathManagers/path_manager.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\Pathfinding\\PathManagers\\Game" + FILES + Navigation/PathManagers/path_manager_game.h + Navigation/PathManagers/path_manager_game_inline.h + Navigation/PathManagers/path_manager_game_level.h + Navigation/PathManagers/path_manager_game_level_inline.h + Navigation/PathManagers/path_manager_game_vertex.h + Navigation/PathManagers/path_manager_game_vertex_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\Pathfinding\\PathManagers\\Generic" + FILES + Navigation/PathManagers/path_manager_generic.h + Navigation/PathManagers/path_manager_generic_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\Pathfinding\\PathManagers\\Level" + FILES + Navigation/PathManagers/path_manager_level.h + Navigation/PathManagers/path_manager_level_inline.h + Navigation/PathManagers/path_manager_level_flooder.h + Navigation/PathManagers/path_manager_level_flooder_inline.h + Navigation/PathManagers/path_manager_level_nearest_vertex.h + Navigation/PathManagers/path_manager_level_nearest_vertex_inline.h + Navigation/PathManagers/path_manager_level_straight_line.h + Navigation/PathManagers/path_manager_level_straight_line_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\Pathfinding\\PathManagers\\Params" + FILES + Navigation/PathManagers/path_manager_params.h + Navigation/PathManagers/path_manager_params_flooder.h + Navigation/PathManagers/path_manager_params_game_level.h + Navigation/PathManagers/path_manager_params_game_vertex.h + Navigation/PathManagers/path_manager_params_nearest_vertex.h + Navigation/PathManagers/path_manager_params_straight_line.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\Pathfinding\\PathManagers\\Solver" + FILES + Navigation/PathManagers/path_manager_solver.h + Navigation/PathManagers/path_manager_solver_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\PatrolPath" + FILES + Navigation/PatrolPath/patrol_path.cpp + Navigation/PatrolPath/patrol_path.h + Navigation/PatrolPath/patrol_path_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\PatrolPath\\Params" + FILES + Navigation/PatrolPath/patrol_path_params.cpp + Navigation/PatrolPath/patrol_path_params.h + Navigation/PatrolPath/patrol_path_params_inline.h + Navigation/PatrolPath/patrol_path_params_script.cpp +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\PatrolPath\\PatrolPoint" + FILES + Navigation/PatrolPath/patrol_point.cpp + Navigation/PatrolPath/patrol_point.h + Navigation/PatrolPath/patrol_point_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "AI\\Navigation\\PatrolPath\\Storage" + FILES + Navigation/PatrolPath/patrol_path_storage.cpp + Navigation/PatrolPath/patrol_path_storage.h + Navigation/PatrolPath/patrol_path_storage_inline.h +) + +target_sources_grouped( + TARGET xrAICore + NAME "Kernel" + FILES + pch.cpp + pch.hpp +) + + +target_include_directories(xrAICore PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/src - ${CMAKE_SOURCE_DIR}/Externals/luabind - ${CMAKE_SOURCE_DIR}/sdk/include + "${CMAKE_CURRENT_SOURCE_DIR}" + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/sdk/include" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrAICore PRIVATE xrCore xrEngine xrMiscMath xrAPI xrScriptEngine - xrLuabind - ${LUA_LIBRARIES} ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrAICore PRIVATE - -DXRAICORE_EXPORTS + XRAICORE_EXPORTS ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrAICore PROPERTIES PREFIX "" ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrAICore PRIVATE - "pch.hpp" + pch.hpp ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS xrAICore LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/src/xrCDB/CMakeLists.txt b/src/xrCDB/CMakeLists.txt index 55227097472..2d4ff876ebe 100644 --- a/src/xrCDB/CMakeLists.txt +++ b/src/xrCDB/CMakeLists.txt @@ -1,52 +1,49 @@ -project(xrCDB) +add_library(xrCDB SHARED) -set(ENGINE_SRC - "ISpatial.cpp" - "ISpatial.h" - "ISpatial_q_box.cpp" - "ISpatial_q_frustum.cpp" - "ISpatial_q_ray.cpp" - "ISpatial_verify.cpp" - "xr_area.cpp" - "xr_area.h" - "xr_area_query.cpp" - "xr_area_raypick.cpp" - "xr_collide_defs.h" - "xrXRC.cpp" - "xrXRC.h" +target_sources_grouped( + TARGET xrCDB + NAME "engine" + FILES + ISpatial.cpp + ISpatial.h + ISpatial_q_box.cpp + ISpatial_q_frustum.cpp + ISpatial_q_ray.cpp + ISpatial_verify.cpp + xr_area.cpp + xr_area.h + xr_area_query.cpp + xr_area_raypick.cpp + xr_collide_defs.h + xrXRC.cpp + xrXRC.h ) -set(KERNEL_SRC - "Frustum.cpp" - "Frustum.h" - "Intersect.hpp" - "stdafx.h" - "StdAfx.cpp" - "xrCDB.cpp" - "xrCDB.h" - "xrCDB_box.cpp" - "xrCDB_Collector.cpp" - "xrCDB_frustum.cpp" - "xrCDB_ray.cpp" +target_sources_grouped( + TARGET xrCDB + NAME "Kernel" + FILES + Frustum.cpp + Frustum.h + Intersect.hpp + stdafx.h + StdAfx.cpp + xrCDB.cpp + xrCDB.h + xrCDB_box.cpp + xrCDB_Collector.cpp + xrCDB_frustum.cpp + xrCDB_ray.cpp ) -source_group("engine" FILES ${ENGINE_SRC}) -source_group("Kernel" FILES ${KERNEL_SRC}) - -set(SRC_FILES - ${ENGINE_SRC} - ${KERNEL_SRC} -) - -add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) - -target_include_directories(${PROJECT_NAME} +target_include_directories(xrCDB PRIVATE - ${CMAKE_SOURCE_DIR}/src - ${SDL2_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/Externals" + "${CMAKE_SOURCE_DIR}/Externals/imgui" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrCDB PRIVATE xrCore xrMiscMath @@ -54,22 +51,21 @@ target_link_libraries(${PROJECT_NAME} xrAPI ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrCDB PRIVATE - -DXRCDB_EXPORTS + XRCDB_EXPORTS $<$:OPCODE_STATIC> ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrCDB PROPERTIES PREFIX "" ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrCDB PRIVATE - "stdafx.h" + stdafx.h ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS xrCDB LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/src/xrCore/CMakeLists.txt b/src/xrCore/CMakeLists.txt index 40d7f4bbf58..4734307cec8 100644 --- a/src/xrCore/CMakeLists.txt +++ b/src/xrCore/CMakeLists.txt @@ -1,461 +1,491 @@ -project(xrCore) - -set(ANIMATION - "Animation/Bone.cpp" - "Animation/Bone.hpp" - "Animation/BoneEditor.cpp" - "Animation/Envelope.cpp" - "Animation/Envelope.hpp" - "Animation/interp.cpp" - "Animation/Motion.cpp" - "Animation/Motion.hpp" - "Animation/SkeletonMotionDefs.hpp" - "Animation/SkeletonMotions.cpp" - "Animation/SkeletonMotions.hpp" -) - -set(COMMON - "../Common/Common.hpp" - "../Common/Config.hpp" - "../Common/face_smoth_flags.h" - "../Common/FSMacros.hpp" - "../Common/LevelGameDef.h" - "../Common/Noncopyable.hpp" - "../Common/Platform.hpp" - "../Common/OGF_GContainer_Vertices.hpp" -) - -set(COMMON_OBJECT - "../Common/object_broker.h" - "../Common/object_cloner.h" - "../Common/object_comparer.h" - "../Common/object_destroyer.h" - "../Common/object_interfaces.h" - "../Common/object_loader.h" - "../Common/object_saver.h" - "../Common/object_type_traits.h" -) - -set(COMPRESSION_LZ - "LzHuf.cpp" - "lzhuf.h" -) - -set(COMPRESSION_LZO - "Compression/lzo_compressor.cpp" - "Compression/lzo_compressor.h" - "Compression/rt_compressor9.cpp" - "Compression/rt_compressor.cpp" - "Compression/rt_compressor.h" -) - -set(COMPRESSION_PPMD - "Compression/ppmd_compressor.cpp" - "Compression/ppmd_compressor.h" -) - -set(COMPRESSION_PPMD_COMMON - "Compression/PPMd.h" - "Compression/PPMdType.h" -) - -set(COMPRESSION_PPMD_CORE - "Compression/Coder.hpp" - "Compression/Model.cpp" -) - -set(COMPRESSION_PPMD_CORE_ALLOCATOR - "Compression/SubAlloc.hpp" -) - -set(COMPRESSION_PPMD_STREAM - "Compression/compression_ppmd_stream.h" - "Compression/compression_ppmd_stream_inline.h" -) - -set(CONTAINERS - "Containers/AssociativeVectorComparer.hpp" - "Containers/AssociativeVector.hpp" - "Containers/FixedMap.h" -) - -set(CRYPTO - "Crypto/trivial_encryptor.cpp" - "Crypto/trivial_encryptor.h" - "Crypto/xr_dsa.cpp" - "Crypto/xr_dsa.h" - "Crypto/xr_dsa_signer.cpp" - "Crypto/xr_dsa_signer.h" - "Crypto/xr_dsa_verifyer.cpp" - "Crypto/xr_dsa_verifyer.h" - "Crypto/xr_sha.h" -) - -set(DEBUG_CORE - #"Debug/MiniDump.cpp" - #"Debug/MiniDump.h" - "xrDebug.cpp" - "xrDebug.h" - "xrDebug_macros.h" -) - -#set(DEBUG_CORE_DXERR -# "Debug/dxerr.cpp" -# "Debug/dxerr.h" -# "Debug/DXGetErrorDescription.inl" -# "Debug/DXGetErrorString.inl" -# "Debug/DXTrace.inl" +add_library(xrCore SHARED) + +target_sources_grouped( + TARGET xrCore + NAME "Animation" + FILES + Animation/Bone.cpp + Animation/Bone.hpp + Animation/BoneEditor.cpp + Animation/Envelope.cpp + Animation/Envelope.hpp + Animation/interp.cpp + Animation/Motion.cpp + Animation/Motion.hpp + Animation/SkeletonMotionDefs.hpp + Animation/SkeletonMotions.cpp + Animation/SkeletonMotions.hpp +) + +target_sources_grouped( + TARGET xrCore + NAME "Common" + FILES + ../Common/Common.hpp + ../Common/Config.hpp + ../Common/face_smoth_flags.h + ../Common/FSMacros.hpp + ../Common/LevelGameDef.h + ../Common/Noncopyable.hpp + ../Common/Platform.hpp + ../Common/OGF_GContainer_Vertices.hpp +) + +target_sources_grouped( + TARGET xrCore + NAME "Common\\Object" + FILES + ../Common/object_broker.h + ../Common/object_cloner.h + ../Common/object_comparer.h + ../Common/object_destroyer.h + ../Common/object_interfaces.h + ../Common/object_loader.h + ../Common/object_saver.h + ../Common/object_type_traits.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Compression\\lz" + FILES + LzHuf.cpp + lzhuf.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Compression\\lzo" + FILES + Compression/lzo_compressor.cpp + Compression/lzo_compressor.h + Compression/rt_compressor9.cpp + Compression/rt_compressor.cpp + Compression/rt_compressor.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Compression\\ppmd" + FILES + Compression/ppmd_compressor.cpp + Compression/ppmd_compressor.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Compression\\ppmd\\common" + FILES + Compression/PPMd.h + Compression/PPMdType.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Compression\\ppmd\\core" + FILES + Compression/Coder.hpp + Compression/Model.cpp +) + +target_sources_grouped( + TARGET xrCore + NAME "Compression\\ppmd\\core\\allocator" + FILES + Compression/SubAlloc.hpp +) + +target_sources_grouped( + TARGET xrCore + NAME "Compression\\ppmd\\stream" + FILES + Compression/compression_ppmd_stream.h + Compression/compression_ppmd_stream_inline.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Containers" + FILES + Containers/AssociativeVectorComparer.hpp + Containers/AssociativeVector.hpp + Containers/FixedMap.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Crypto" + FILES + Crypto/trivial_encryptor.cpp + Crypto/trivial_encryptor.h + Crypto/xr_dsa.cpp + Crypto/xr_dsa.h + Crypto/xr_dsa_signer.cpp + Crypto/xr_dsa_signer.h + Crypto/xr_dsa_verifyer.cpp + Crypto/xr_dsa_verifyer.h + Crypto/xr_sha.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Debug core" + FILES + #Debug/MiniDump.cpp + #Debug/MiniDump.h + xrDebug.cpp + xrDebug.h + xrDebug_macros.h +) + +#target_sources_grouped( +# TARGET xrCore +# NAME "Debug core\\DxErr" +# FILES +# Debug/dxerr.cpp +# Debug/dxerr.h +# Debug/DXGetErrorDescription.inl +# Debug/DXGetErrorString.inl +# Debug/DXTrace.inl #) -set(EVENTS - "Events/Notifier.h" -) - -set(FMESH - "FMesh.cpp" - "FMesh.hpp" -) - -set(FS - "FileCRC32.cpp" - "FileCRC32.h" - "FileSystem.cpp" - "FileSystem.h" - "FileSystem_borland.cpp" - "FS.cpp" - "FS.h" - "FS_impl.h" - "FS_internal.h" - "LocatorAPI.cpp" - "LocatorAPI.h" - "LocatorAPI_auth.cpp" - "LocatorAPI_defs.cpp" - "LocatorAPI_defs.h" - "log.cpp" - "log.h" - "NET_utils.cpp" - "net_utils.h" - "xr_ini.cpp" - "xr_ini.h" -) - -set(FS_FILE_STREAM_READER - "file_stream_reader.cpp" - "file_stream_reader.h" -) - -set(FS_STREAM_READER - "stream_reader.cpp" - "stream_reader.h" - "stream_reader_inline.h" -) - -set(INTRUSIVE_PTR - "intrusive_ptr.h" -) - -set(KERNEL - "cdecl_cast.hpp" - "FTimer.cpp" - "FTimer.h" - "ModuleLookup.cpp" - "ModuleLookup.hpp" - "resource.h" - "xr_shortcut.h" - "xrCore.cpp" - "xrCore.h" -) - -set(KERNEL_COMMON - "../Common/_d3d_extensions.h" - "../Common/GUID.hpp" - "../Common/LevelStructure.hpp" - "../Common/Util.hpp" -) - -set(MATH - "_bitwise.h" - "_color.h" - "_compressed_normal.cpp" - "_compressed_normal.h" - "_cylinder.cpp" - "_cylinder.h" - "_fbox.h" - "_fbox2.h" - "_flags.h" - "_math.cpp" - "_math.h" - "_matrix.h" - "_matrix33.h" - "_obb.h" - "_plane.h" - "_plane2.h" - "_quaternion.h" - "_random.h" - "_rect.h" - "_sphere.cpp" - "_sphere.h" - "_vector2.h" - "_vector3d.h" - "_vector3d_ext.h" - "_vector4.h" - "dump_string.cpp" - "dump_string.h" - "math_constants.h" - "vector.h" - "xr_types.h" -) - -set(MATH_EXTENSIONS - #"ChooseTypes.H" - #"client_id.h" - "_std_extensions.cpp" - "_std_extensions.h" - "_stl_extensions.h" - "clsid.cpp" - "clsid.h" - "fastdelegate.h" - "xr_token.cpp" - "xr_token.h" - "xr_trims.cpp" - "xr_trims.h" -) - -set(MATH_EXTENSIONS_BUFFER_VECTOR - "buffer_vector.h" - "buffer_vector_inline.h" -) - -set(MATH_RNG - "Math/Random32.hpp" -) - -set(MATH_STLEXT - "FixedVector.h" - "xrPool.h" -) - -set(MEDIA - "Media/Image.cpp" - "Media/Image.hpp" - "Media/ImageJPEG.cpp" -) - -set(MEMORY - "Memory/xalloc.h" - "xrMemory.cpp" - "xrMemory.h" - #"Memory/xrMemory_align.cpp" - #"Memory/xrMemory_align.h" -) - -set(OS - "os_clipboard.cpp" - "os_clipboard.h" -) - -set(PCH - "stdafx.cpp" - "stdafx.h" -) - -set(POSTPROCESS - "PostProcess/PostProcess.cpp" - "PostProcess/PostProcess.hpp" - "PostProcess/PPInfo.cpp" - "PostProcess/PPInfo.hpp" -) - -set(SHARED_MEMORY_STRING_LIBRARY - "crc32.cpp" - "string_concatenations.cpp" - "string_concatenations.h" - "string_concatenations_inline.h" - "xr_resource.h" - "xr_shared.cpp" - "xr_shared.h" - "xrsharedmem.cpp" - "xrsharedmem.h" - "xrstring.cpp" - "xrstring.h" -) - -set(TEXT - "Text/StringConversion.cpp" - "Text/StringConversion.hpp" -) - -set(THREADING - "Threading/Event.cpp" - "Threading/Event.hpp" - "Threading/Lock.cpp" - "Threading/Lock.hpp" - "Threading/ParallelFor.hpp" - "Threading/ParallelForEach.hpp" - "Threading/ScopeLock.cpp" - "Threading/ScopeLock.hpp" - "Threading/Task.cpp" - "Threading/Task.hpp" - "Threading/TaskManager.cpp" - "Threading/TaskManager.hpp" -) - -set(THREADING_UTIL - "Threading/ThreadUtil.cpp" - "Threading/ThreadUtil.h" -) - -set(XML - "XML/XMLDocument.cpp" - "XML/XMLDocument.hpp" -) - -set(XML_TINY_XML - "XML/tinystr.cpp" - "XML/tinystr.h" - "XML/tinyxml.cpp" - "XML/tinyxmlerror.cpp" - "XML/tinyxml.h" - "XML/tinyxmlparser.cpp" -) - -source_group("Animation" FILES ${ANIMATION}) -source_group("Common" FILES ${COMMON}) -source_group("Common\\Object" FILES ${COMMON_OBJECT}) -source_group("Compression\\lz" FILES ${COMPRESSION_LZ}) -source_group("Compression\\lzo" FILES ${COMPRESSION_LZO}) -source_group("Compression\\ppmd" FILES ${COMPRESSION_PPMD}) -source_group("Compression\\ppmd\\common" FILES ${COMPRESSION_PPMD_COMMON}) -source_group("Compression\\ppmd\\core" FILES ${COMPRESSION_PPMD_CORE}) -source_group("Compression\\ppmd\\core\\allocator" FILES ${COMPRESSION_PPMD_CORE_ALLOCATOR}) -source_group("Compression\\ppmd\\stream" FILES ${COMPRESSION_PPMD_STREAM}) -source_group("Containers" FILES ${CONTAINERS}) -source_group("Crypto" FILES ${CRYPTO}) -source_group("Debug core" FILES ${DEBUG_CORE}) -#source_group("Debug core\\DxErr" FILES ${DEBUG_CORE_DXERR}) -source_group("Events" FILES ${EVENTS}) -source_group("FMesh" FILES ${FMESH}) -source_group("FS" FILES ${FS}) -source_group("FS\\file_stream_reader" FILES ${FS_FILE_STREAM_READER}) -source_group("FS\\stream_reader" FILES ${FS_STREAM_READER}) -source_group("intrusive_ptr" FILES ${INTRUSIVE_PTR}) -source_group("Kernel" FILES ${KERNEL}) -source_group("Kernel\\Common" FILES ${KERNEL_COMMON}) -source_group("Math" FILES ${MATH}) -source_group("Math\\Extensions" FILES ${MATH_EXTENSIONS}) -source_group("Math\\Extensions\\buffer_vector" FILES ${MATH_EXTENSIONS_BUFFER_VECTOR}) -source_group("Math\\RNG" FILES ${MATH_RNG}) -source_group("Math\\STLext" FILES ${MATH_STLEXT}) -source_group("Media" FILES ${MEDIA}) -source_group("Memory" FILES ${MEMORY}) -source_group("OS" FILES ${OS}) -source_group("PCH" FILES ${PCH}) -source_group("PostProcess" FILES ${POSTPROCESS}) -source_group("shared memory/string library" FILES ${SHARED_MEMORY_STRING_LIBRARY}) -source_group("Text" FILES ${TEXT}) -source_group("Threading" FILES ${THREADING}) -source_group("Threading\\Util" FILES ${THREADING_UTIL}) -source_group("XML" FILES ${XML}) -source_group("XML\\TinyXML" FILES ${XML_TINY_XML}) - -set(SRC_FILES - ${ANIMATION} - ${COMMON} - ${COMMON_OBJECT} - ${COMPRESSION_LZ} - ${COMPRESSION_LZO} - ${COMPRESSION_PPMD} - ${COMPRESSION_PPMD_COMMON} - ${COMPRESSION_PPMD_CORE} - ${COMPRESSION_PPMD_CORE_ALLOCATOR} - ${COMPRESSION_PPMD_STREAM} - ${CONTAINERS} - ${CRYPTO} - ${EVENTS} - ${DEBUG_CORE} - ${FMESH} - ${FS} - ${FS_FILE_STREAM_READER} - ${FS_STREAM_READER} - ${INTRUSIVE_PTR} - ${KERNEL} - ${KERNEL_COMMON} - ${MATH} - ${MATH_EXTENSIONS} - ${MATH_EXTENSIONS_BUFFER_VECTOR} - ${MATH_RNG} - ${MATH_STLEXT} - ${MEDIA} - ${MEMORY} - ${OS} - ${PCH} - ${POSTPROCESS} - ${SHARED_MEMORY_STRING_LIBRARY} - ${TEXT} - ${THREADING} - ${THREADING_UTIL} - ${XML} - ${XML_TINY_XML} -) - -if (PROJECT_PLATFORM_ARM OR PROJECT_PLATFORM_ARM64) - list(REMOVE_ITEM SRC_FILES "Math/PLC_SSE.cpp") - list(REMOVE_ITEM SRC_FILES "Math/PLC_SSE.hpp") -endif() - -add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) - -target_include_directories(${PROJECT_NAME} - PUBLIC - ${SDL2_INCLUDE_DIRS} +target_sources_grouped( + TARGET xrCore + NAME "Events" + FILES + Events/Notifier.h +) + +target_sources_grouped( + TARGET xrCore + NAME "FMesh" + FILES + FMesh.cpp + FMesh.hpp +) + +target_sources_grouped( + TARGET xrCore + NAME "FS" + FILES + FileCRC32.cpp + FileCRC32.h + FileSystem.cpp + FileSystem.h + FileSystem_borland.cpp + FS.cpp + FS.h + FS_impl.h + FS_internal.h + LocatorAPI.cpp + LocatorAPI.h + LocatorAPI_auth.cpp + LocatorAPI_defs.cpp + LocatorAPI_defs.h + log.cpp + log.h + NET_utils.cpp + net_utils.h + xr_ini.cpp + xr_ini.h +) + +target_sources_grouped( + TARGET xrCore + NAME "FS\\file_stream_reader" + FILES + file_stream_reader.cpp + file_stream_reader.h +) + +target_sources_grouped( + TARGET xrCore + NAME "FS\\stream_reader" + FILES + stream_reader.cpp + stream_reader.h + stream_reader_inline.h +) + +target_sources_grouped( + TARGET xrCore + NAME "intrusive_ptr" + FILES + intrusive_ptr.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Kernel" + FILES + cdecl_cast.hpp + FTimer.cpp + FTimer.h + ModuleLookup.cpp + ModuleLookup.hpp + resource.h + xr_shortcut.h + xrCore.cpp + xrCore.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Kernel\\Common" + FILES + ../Common/_d3d_extensions.h + ../Common/GUID.hpp + ../Common/LevelStructure.hpp + ../Common/Util.hpp +) + +target_sources_grouped( + TARGET xrCore + NAME "Math" + FILES + _bitwise.h + _color.h + _compressed_normal.cpp + _compressed_normal.h + _cylinder.cpp + _cylinder.h + _fbox.h + _fbox2.h + _flags.h + _math.cpp + _math.h + _matrix.h + _matrix33.h + _obb.h + _plane.h + _plane2.h + _quaternion.h + _random.h + _rect.h + _sphere.cpp + _sphere.h + _vector2.h + _vector3d.h + _vector3d_ext.h + _vector4.h + dump_string.cpp + dump_string.h + math_constants.h + vector.h + xr_types.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Math\\Extensions" + FILES + #ChooseTypes.H + #client_id.h + _std_extensions.cpp + _std_extensions.h + _stl_extensions.h + clsid.cpp + clsid.h + fastdelegate.h + xr_token.cpp + xr_token.h + xr_trims.cpp + xr_trims.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Math\\Extensions\\buffer_vector" + FILES + buffer_vector.h + buffer_vector_inline.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Math\\RNG" + FILES + Math/Random32.hpp +) + +target_sources_grouped( + TARGET xrCore + NAME "Math\\STLext" + FILES + FixedVector.h + xrPool.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Media" + FILES + Media/Image.cpp + Media/Image.hpp + Media/ImageJPEG.cpp +) + +target_sources_grouped( + TARGET xrCore + NAME "Memory" + FILES + Memory/xalloc.h + xrMemory.cpp + xrMemory.h + #Memory/xrMemory_align.cpp + #Memory/xrMemory_align.h +) + +target_sources_grouped( + TARGET xrCore + NAME "OS" + FILES + os_clipboard.cpp + os_clipboard.h +) + +target_sources_grouped( + TARGET xrCore + NAME "PCH" + FILES + stdafx.cpp + stdafx.h +) + +target_sources_grouped( + TARGET xrCore + NAME "PostProcess" + FILES + PostProcess/PostProcess.cpp + PostProcess/PostProcess.hpp + PostProcess/PPInfo.cpp + PostProcess/PPInfo.hpp +) + +target_sources_grouped( + TARGET xrCore + NAME "shared memory/string library" + FILES + crc32.cpp + string_concatenations.cpp + string_concatenations.h + string_concatenations_inline.h + xr_resource.h + xr_shared.cpp + xr_shared.h + xrsharedmem.cpp + xrsharedmem.h + xrstring.cpp + xrstring.h +) + +target_sources_grouped( + TARGET xrCore + NAME "Text" + FILES + Text/StringConversion.cpp + Text/StringConversion.hpp +) + +target_sources_grouped( + TARGET xrCore + NAME "Threading" + FILES + Threading/Event.cpp + Threading/Event.hpp + Threading/Lock.cpp + Threading/Lock.hpp + Threading/ParallelFor.hpp + Threading/ParallelForEach.hpp + Threading/ScopeLock.cpp + Threading/ScopeLock.hpp + Threading/Task.cpp + Threading/Task.hpp + Threading/TaskManager.cpp + Threading/TaskManager.hpp +) + +target_sources_grouped( + TARGET xrCore + NAME "Threading\\Util" + FILES + Threading/ThreadUtil.cpp + Threading/ThreadUtil.h +) + +target_sources_grouped( + TARGET xrCore + NAME "XML" + FILES + XML/XMLDocument.cpp + XML/XMLDocument.hpp +) + +target_sources_grouped( + TARGET xrCore + NAME "XML\\TinyXML" + FILES + XML/tinystr.cpp + XML/tinystr.h + XML/tinyxml.cpp + XML/tinyxmlerror.cpp + XML/tinyxml.h + XML/tinyxmlparser.cpp +) + +target_include_directories(xrCore PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/src - ${CMAKE_SOURCE_DIR}/Externals/mimalloc/include - $<$:${JPEG_INCLUDE_DIRS}> - ${LZO_INCLUDE_DIRS} + "${CMAKE_CURRENT_SOURCE_DIR}" + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/Externals/mimalloc/include" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrCore PUBLIC pthread $<$:execinfo> - ${SDL2_LIBRARIES} + SDL2::SDL2 + PRIVATE xrMiscMath dl $<$:mimalloc> - $<$:${JPEG_LIBRARIES}> - ${LZO_LIBRARIES} + $<$:JPEG::JPEG> + LZO::LZO ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrCore PRIVATE - -DXRCORE_EXPORTS - -DCI=$ENV{CI} - -DTRAVIS=$ENV{TRAVIS} - -DTRAVIS_BUILD_ID=$ENV{TRAVIS_BUILD_ID} - -DTRAVIS_BUILD_NUMBER=$ENV{TRAVIS_BUILD_NUMBER} - -DTRAVIS_REPO_SLUG=$ENV{TRAVIS_REPO_SLUG} - -DGITHUB_ACTIONS=$ENV{GITHUB_ACTIONS} - -DGITHUB_RUN_ID=$ENV{GITHUB_RUN_ID} - -DGITHUB_RUN_NUMBER=$ENV{GITHUB_RUN_NUMBER} - -DGITHUB_REPOSITORY=$ENV{GITHUB_REPOSITORY} - -DGIT_INFO_CURRENT_COMMIT=${GIT_SHA1} - -DGIT_INFO_CURRENT_BRANCH=${GIT_BRANCH} - -DCMAKE_INSTALL_FULL_DATAROOTDIR=${CMAKE_INSTALL_FULL_DATAROOTDIR} -) - -set_target_properties(${PROJECT_NAME} PROPERTIES + XRCORE_EXPORTS + CI=$ENV{CI} + TRAVIS=$ENV{TRAVIS} + TRAVIS_BUILD_ID=$ENV{TRAVIS_BUILD_ID} + TRAVIS_BUILD_NUMBER=$ENV{TRAVIS_BUILD_NUMBER} + TRAVIS_REPO_SLUG=$ENV{TRAVIS_REPO_SLUG} + GITHUB_ACTIONS=$ENV{GITHUB_ACTIONS} + GITHUB_RUN_ID=$ENV{GITHUB_RUN_ID} + GITHUB_RUN_NUMBER=$ENV{GITHUB_RUN_NUMBER} + GITHUB_REPOSITORY=$ENV{GITHUB_REPOSITORY} + GIT_INFO_CURRENT_COMMIT=${GIT_SHA1} + GIT_INFO_CURRENT_BRANCH=${GIT_BRANCH} + CMAKE_INSTALL_FULL_DATAROOTDIR="${CMAKE_INSTALL_FULL_DATAROOTDIR}" +) + +if (MEMORY_ALLOCATOR STREQUAL "mimalloc") + target_compile_definitions(xrCore PRIVATE USE_MIMALLOC) +else() + target_compile_definitions(xrCore PRIVATE USE_PURE_ALLOC) +endif() + +set_target_properties(xrCore PROPERTIES PREFIX "" ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrCore PRIVATE - "stdafx.h" + stdafx.h ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS xrCore LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/src/xrEngine/CMakeLists.txt b/src/xrEngine/CMakeLists.txt index 79d9b799d18..3ef3b9ea63f 100644 --- a/src/xrEngine/CMakeLists.txt +++ b/src/xrEngine/CMakeLists.txt @@ -1,435 +1,470 @@ -project(xrEngine) - -set(EDITOR_SRC - "editor_base.cpp" - "editor_base.h" - "editor_base_input.cpp" - "editor_helper.cpp" - "editor_helper.h" - "editor_weather.cpp" -) - -set(ENGINE_SRC - "Properties.h" - "pure.cpp" - "pure.h" - "std_classes.h" -) - -set(ENGINE_CONSOLE_SRC - "XR_IOConsole.cpp" - "XR_IOConsole.h" - "XR_IOConsole_callback.cpp" - "XR_IOConsole_control.cpp" - "XR_IOConsole_get.cpp" -) - -set(ENGINE_CONSOLE_COMMANDS_SRC - "xr_ioc_cmd.cpp" - "xr_ioc_cmd.h" -) - -set(ENGINE_CORE_SRC - "Engine.cpp" - "Engine.h" - "EngineAPI.cpp" - "EngineAPI.h" - "EventAPI.cpp" - "EventAPI.h" - "mailSlot.cpp" -) - -set(ENGINE_NOISE_SRC - "perlin.cpp" - "perlin.h" -) - -set(ENGINE_TEXT_EDITOR_EDIT_ACTIONS_SRC - "edit_actions.cpp" - "edit_actions.h" -) - -set(ENGINE_TEXT_EDITOR_LINE_EDITOR_SRC - "line_editor.cpp" - "line_editor.h" -) - -set(ENGINE_TEXT_EDITOR_LINE_EDITOR_CONTROL_SRC - "line_edit_control.cpp" - "line_edit_control.h" -) - -set(ENGINE_GAME_API_ANIMATOR_SRC - "ObjectAnimator.cpp" - "ObjectAnimator.h" -) - -set(ENGINE_GAME_API_CAMERAS_SRC - "CameraBase.cpp" - "CameraBase.h" - "CameraDefs.h" - "CameraManager.cpp" - "CameraManager.h" - "Effector.cpp" - "Effector.h" - "EffectorPP.cpp" - "EffectorPP.h" -) - -set(ENGINE_GAME_API_COLLISION_SRC - "cf_dynamic_mesh.cpp" - "cf_dynamic_mesh.h" - "xr_collide_form.cpp" - "xr_collide_form.h" -) - -set(ENGINE_GAME_API_DEBUG_SRC - "ObjectDump.cpp" - "ObjectDump.h" -) - -set(ENGINE_GAME_API_DEMO_SRC - "FDemoPlay.cpp" - "FDemoPlay.h" - "FDemoRecord.cpp" - "FDemoRecord.h" -) - -set(ENGINE_GAME_API_ENVIRONMENT_SRC - "Environment.cpp" - "Environment.h" - "Environment_misc.cpp" - "Environment_render.cpp" - "xrHemisphere.cpp" - "xrHemisphere.h" -) - -set(ENGINE_GAME_API_ENVIRONMENT_EFFECTS_SRC - "Rain.cpp" - "Rain.h" - "thunderbolt.cpp" - "thunderbolt.h" - "xr_efflensflare.cpp" - "xr_efflensflare.h" -) - -set(ENGINE_GAME_API_FEELERS_SRC - "Feel_Sound.h" - "Feel_Touch.cpp" - "Feel_Touch.h" - "Feel_Vision.cpp" - "Feel_Vision.h" -) - -set(ENGINE_GAME_API_HUD_SRC - "CustomHUD.cpp" - "CustomHUD.h" -) - -set(ENGINE_GAME_API_LEVEL_SRC - "IGame_Level.cpp" - "IGame_Level.h" - "IGame_Level_check_textures.cpp" -) - -set(ENGINE_GAME_API_LEVEL_CONTROLLER_SRC - "xr_level_controller.cpp" - "xr_level_controller.h" -) - -set(ENGINE_GAME_API_LEVEL_CONTROLLER_KEY_BINDINGS_SRC - "key_binding_registrator_script.cpp" -) - -set(ENGINE_GAME_API_MATERIALSYSTEM_SRC - "GameMtlLib.cpp" - "GameMtlLib.h" - "GameMtlLib_Engine.cpp" -) - -set(ENGINE_GAME_API_OBJECTS_SRC - "IGame_ObjectPool.cpp" - "IGame_ObjectPool.h" - "IGame_Persistent.cpp" - "IGame_Persistent.h" - "pure_relcase.cpp" - "pure_relcase.h" - "xr_object.h" - "xr_object_list.cpp" - "xr_object_list.h" -) - -set(ENGINE_GAME_API_STRING_TABLE_SRC - "StringTable/StringTable.cpp" - "StringTable/StringTable.h" -) - -set(GENERAL_SRC - "defines.cpp" - "defines.h" - "embedded_resources_management.h" - "main.cpp" - "main.h" - "mp_logging.h" - "splash.cpp" - "splash.h" - "stdafx.cpp" - "stdafx.h" - "x_ray.cpp" - "x_ray.h" -) - -set(GENERAL_PROFILER_SRC - "profiler.cpp" - "profiler.h" - "profiler_inline.h" -) - -set(INTERFACES_COLLIDABLE_SRC - "ICollidable.cpp" - "ICollidable.h" -) - -set(INTERFACES_ILOADINGSCREEN_SRC - "ILoadingScreen.h" -) - -set(INTERFACES_INPUT_SRC - "IInputReceiver.cpp" - "IInputReceiver.h" - "xr_input.cpp" - "xr_input.h" -) - -set(INTERFACES_PHYSICS_SRC - "IObjectPhysicsCollision.h" - "IPHdebug.h" - "IPhysicsGeometry.h" - "IPhysicsShell.h" - "phdebug.cpp" -) - -set(INTERFACES_RENDER_SRC - "IRenderable.cpp" - "IRenderable.h" - "Render.cpp" - "Render.h" -) +add_library(xrEngine SHARED) + +target_sources_grouped( + TARGET xrEngine + NAME "editor" + FILES + editor_base.cpp + editor_base.h + editor_base_input.cpp + editor_helper.cpp + editor_helper.h + editor_weather.cpp +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine" + FILES + Properties.h + pure.cpp + pure.h + std_classes.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Console" + FILES + XR_IOConsole.cpp + XR_IOConsole.h + XR_IOConsole_callback.cpp + XR_IOConsole_control.cpp + XR_IOConsole_get.cpp +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Console\\commands" + FILES + xr_ioc_cmd.cpp + xr_ioc_cmd.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Core" + FILES + Engine.cpp + Engine.h + EngineAPI.cpp + EngineAPI.h + EventAPI.cpp + EventAPI.h + mailSlot.cpp +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Noise" + FILES + perlin.cpp + perlin.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\text_editor\\edit_actions" + FILES + edit_actions.cpp + edit_actions.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\text_editor\\line_editor" + FILES + line_editor.cpp + line_editor.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\text_editor\\line_editor_control" + FILES + line_edit_control.cpp + line_edit_control.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\Animator" + FILES + ObjectAnimator.cpp + ObjectAnimator.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\Cameras" + FILES + CameraBase.cpp + CameraBase.h + CameraDefs.h + CameraManager.cpp + CameraManager.h + Effector.cpp + Effector.h + EffectorPP.cpp + EffectorPP.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\Collision" + FILES + cf_dynamic_mesh.cpp + cf_dynamic_mesh.h + xr_collide_form.cpp + xr_collide_form.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\Debug" + FILES + ObjectDump.cpp + ObjectDump.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\Demo" + FILES + FDemoPlay.cpp + FDemoPlay.h + FDemoRecord.cpp + FDemoRecord.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\Environment" + FILES + Environment.cpp + Environment.h + Environment_misc.cpp + Environment_render.cpp + xrHemisphere.cpp + xrHemisphere.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\Environment\\Effects" + FILES + Rain.cpp + Rain.h + thunderbolt.cpp + thunderbolt.h + xr_efflensflare.cpp + xr_efflensflare.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\Feelers" + FILES + Feel_Sound.h + Feel_Touch.cpp + Feel_Touch.h + Feel_Vision.cpp + Feel_Vision.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\HUD" + FILES + CustomHUD.cpp + CustomHUD.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\Level" + FILES + IGame_Level.cpp + IGame_Level.h + IGame_Level_check_textures.cpp +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\Level Controller" + FILES + xr_level_controller.cpp + xr_level_controller.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\Level Controller\\KeyBindings" + FILES + key_binding_registrator_script.cpp +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\MaterialSystem" + FILES + GameMtlLib.cpp + GameMtlLib.h + GameMtlLib_Engine.cpp +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\Objects" + FILES + IGame_ObjectPool.cpp + IGame_ObjectPool.h + IGame_Persistent.cpp + IGame_Persistent.h + pure_relcase.cpp + pure_relcase.h + xr_object.h + xr_object_list.cpp + xr_object_list.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Engine\\Game API\\StringTable" + FILES + StringTable/StringTable.cpp + StringTable/StringTable.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "General" + FILES + defines.cpp + defines.h + embedded_resources_management.h + main.cpp + main.h + mp_logging.h + splash.cpp + splash.h + stdafx.cpp + stdafx.h + x_ray.cpp + x_ray.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "General\\Profiler" + FILES + profiler.cpp + profiler.h + profiler_inline.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Interfaces\\Collidable" + FILES + ICollidable.cpp + ICollidable.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Interfaces\\ILoadingScreen" + FILES + ILoadingScreen.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Interfaces\\Input" + FILES + IInputReceiver.cpp + IInputReceiver.h + xr_input.cpp + xr_input.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Interfaces\\Physics" + FILES + IObjectPhysicsCollision.h + IPHdebug.h + IPhysicsGeometry.h + IPhysicsShell.h + phdebug.cpp +) + +target_sources_grouped( + TARGET xrEngine + NAME "Interfaces\\Render" + FILES + IRenderable.cpp + IRenderable.h + Render.cpp + Render.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Interfaces\\Sheduler" + FILES + ISheduled.cpp + ISheduled.h + xrSheduler.cpp + xrSheduler.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "OpenAutomate" + FILES + xrSASH.cpp + xrSASH.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Render\\Device" + FILES + device.cpp + device.h + Device_create.cpp + Device_destroy.cpp + Device_Initialize.cpp + Device_mode.cpp + Device_overdraw.cpp + IPerformanceAlert.hpp + PerformanceAlert.cpp + PerformanceAlert.hpp + StatGraph.cpp + StatGraph.h + Stats.cpp + Stats.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Render\\Execution & 3D\\Shaders" + FILES + WaveForm.h +) + +target_sources_grouped( + TARGET xrEngine + NAME "Render\\Execution & 3D\\Shaders\\Textures" + FILES + #tntQAVI.cpp + #tntQAVI.h + xrImage_Resampler.cpp + xrImage_Resampler.h + xrTheora_Stream.cpp + xrTheora_Stream.h + xrTheora_Surface.cpp + xrTheora_Surface.h +) + +#target_sources_grouped( +# TARGET xrEngine +# NAME "Render\\Execution & 3D\\TextConsole" +# FILES +# Text_Console.cpp +# Text_Console.h +# Text_Console_WndProc.cpp +#) -set(INTERFACES_SHEDULER_SRC - "ISheduled.cpp" - "ISheduled.h" - "xrSheduler.cpp" - "xrSheduler.h" +target_sources_grouped( + TARGET xrEngine + NAME "Render\\Font output" + FILES + GameFont.cpp + GameFont.h + IGameFont.hpp ) -set(OPEN_AUTOMATE_SRC - "xrSASH.cpp" - "xrSASH.h" +target_sources_grouped( + TARGET xrEngine + NAME "Render\\Lighting" + FILES + LightAnimLibrary.cpp + LightAnimLibrary.h ) -set(RENDER_DEVICE_SRC - "device.cpp" - "device.h" - "Device_create.cpp" - "Device_destroy.cpp" - "Device_Initialize.cpp" - "Device_mode.cpp" - "Device_overdraw.cpp" - "IPerformanceAlert.hpp" - "PerformanceAlert.cpp" - "PerformanceAlert.hpp" - "StatGraph.cpp" - "StatGraph.h" - "Stats.cpp" - "Stats.h" +target_sources_grouped( + TARGET xrEngine + NAME "Render\\Particle system" + FILES + PS_instance.cpp + PS_instance.h ) -set(RENDER_EXECUTION_AND_3D_SHADERS_SRC - "WaveForm.h" -) - -set(RENDER_EXECUTION_AND_3D_SHADERS_TEXTURES_SRC - #"tntQAVI.cpp" - #"tntQAVI.h" - "xrImage_Resampler.cpp" - "xrImage_Resampler.h" - "xrTheora_Stream.cpp" - "xrTheora_Stream.h" - "xrTheora_Surface.cpp" - "xrTheora_Surface.h" +target_sources_grouped( + TARGET xrEngine + NAME "Render\\Visibility" + FILES + ShadersExternalData.h + vis_common.h + vis_object_data.h ) -#set(RENDER_EXECUTION_AND_3D_TEXT_CONSOLE_SRC -# "Text_Console.cpp" -# "Text_Console.h" -# "Text_Console_WndProc.cpp" -#) - -set(RENDER_FONT_OUTPUT_SRC - "GameFont.cpp" - "GameFont.h" - "IGameFont.hpp" -) - -set(RENDER_LIGHTING_SRC - "LightAnimLibrary.cpp" - "LightAnimLibrary.h" -) - -set(RENDER_PARTICLE_SYSTEM_SRC - "PS_instance.cpp" - "PS_instance.h" -) - -set(RENDER_VISIBILITY_SRC - "ShadersExternalData.h" - "vis_common.h" - "vis_object_data.h" -) - -set(RENDER_VISUALS_SKELETON_SRC - "EnnumerateVertices.h" -) - -source_group("editor" FILES ${EDITOR_SRC}) -source_group("Engine" FILES ${ENGINE_SRC}) -source_group("Engine\\Console" FILES ${ENGINE_CONSOLE_SRC}) -source_group("Engine\\Console\\commands" FILES ${ENGINE_CONSOLE_COMMANDS_SRC}) -source_group("Engine\\Core" FILES ${ENGINE_CORE_SRC}) -source_group("Engine\\Noise" FILES ${ENGINE_NOISE_SRC}) -source_group("Engine\\text_editor\\edit_actions" FILES ${ENGINE_TEXT_EDITOR_EDIT_ACTIONS_SRC}) -source_group("Engine\\text_editor\\line_editor" FILES ${ENGINE_TEXT_EDITOR_LINE_EDITOR_SRC}) -source_group("Engine\\text_editor\\line_editor_control" FILES ${ENGINE_TEXT_EDITOR_LINE_EDITOR_CONTROL_SRC}) -source_group("Engine\\Game API\\Animator" FILES ${ENGINE_GAME_API_ANIMATOR_SRC}) -source_group("Engine\\Game API\\Cameras" FILES ${ENGINE_GAME_API_CAMERAS_SRC}) -source_group("Engine\\Game API\\Collision" FILES ${ENGINE_GAME_API_COLLISION_SRC}) -source_group("Engine\\Game API\\Debug" FILES ${ENGINE_GAME_API_DEBUG_SRC}) -source_group("Engine\\Game API\\Demo" FILES ${ENGINE_GAME_API_DEMO_SRC}) -source_group("Engine\\Game API\\Environment" FILES ${ENGINE_GAME_API_ENVIRONMENT_SRC}) -source_group("Engine\\Game API\\Environment\\Effects" FILES ${ENGINE_GAME_API_ENVIRONMENT_EFFECTS_SRC}) -source_group("Engine\\Game API\\Feelers" FILES ${ENGINE_GAME_API_FEELERS_SRC}) -source_group("Engine\\Game API\\HUD" FILES ${ENGINE_GAME_API_HUD_SRC}) -source_group("Engine\\Game API\\Level" FILES ${ENGINE_GAME_API_LEVEL_SRC}) -source_group("Engine\\Game API\\Level Controller" FILES ${ENGINE_GAME_API_LEVEL_CONTROLLER_SRC}) -source_group("Engine\\Game API\\Level Controller\\KeyBindings" FILES ${ENGINE_GAME_API_LEVEL_CONTROLLER_KEY_BINDINGS_SRC}) -source_group("Engine\\Game API\\MaterialSystem" FILES ${ENGINE_GAME_API_MATERIALSYSTEM_SRC}) -source_group("Engine\\Game API\\Objects" FILES ${ENGINE_GAME_API_OBJECTS_SRC}) -source_group("Engine\\Game API\\StringTable" FILES ${ENGINE_GAME_API_STRING_TABLE_SRC}) -source_group("General" FILES ${GENERAL_SRC}) -source_group("General\\Profiler" FILES ${GENERAL_PROFILER_SRC}) -source_group("Interfaces\\Collidable" FILES ${INTERFACES_COLLIDABLE_SRC}) -source_group("Interfaces\\ILoadingScreen" FILES ${INTERFACES_ILOADINGSCREEN_SRC}) -source_group("Interfaces\\Input" FILES ${INTERFACES_INPUT_SRC}) -source_group("Interfaces\\Physics" FILES ${INTERFACES_PHYSICS_SRC}) -source_group("Interfaces\\Render" FILES ${INTERFACES_RENDER_SRC}) -source_group("Interfaces\\Sheduler" FILES ${INTERFACES_SHEDULER_SRC}) -source_group("Interfaces\\Sound") -source_group("Interfaces\\SPATIAL") -source_group("OpenAutomate" FILES ${OPEN_AUTOMATE_SRC}) -source_group("Render\\Device" FILES ${RENDER_DEVICE_SRC}) -source_group("Render\\Execution & 3D\\Shaders" FILES ${RENDER_EXECUTION_AND_3D_SHADERS_SRC}) -source_group("Render\\Execution & 3D\\Shaders\\Textures" FILES ${RENDER_EXECUTION_AND_3D_SHADERS_TEXTURES_SRC}) -#source_group("Render\\Execution & 3D\\TextConsole" FILES ${RENDER_EXECUTION_AND_3D_TEXT_CONSOLE_SRC}) -source_group("Render\\Font output" FILES ${RENDER_FONT_OUTPUT_SRC}) -source_group("Render\\Lighting" FILES ${RENDER_LIGHTING_SRC}) -source_group("Render\\Particle system" FILES ${RENDER_PARTICLE_SYSTEM_SRC}) -source_group("Render\\Visibility" FILES ${RENDER_VISIBILITY_SRC}) -source_group("Render\\Visuals\\Skeleton" FILES ${RENDER_VISUALS_SKELETON_SRC}) - -add_library(${PROJECT_NAME} SHARED - ${EDITOR_SRC} - ${ENGINE_SRC} - ${ENGINE_CONSOLE_SRC} - ${ENGINE_CONSOLE_COMMANDS_SRC} - ${ENGINE_CORE_SRC} - ${ENGINE_NOISE_SRC} - ${ENGINE_TEXT_EDITOR_EDIT_ACTIONS_SRC} - ${ENGINE_TEXT_EDITOR_LINE_EDITOR_SRC} - ${ENGINE_TEXT_EDITOR_LINE_EDITOR_CONTROL_SRC} - ${ENGINE_GAME_API_ANIMATOR_SRC} - ${ENGINE_GAME_API_CAMERAS_SRC} - ${ENGINE_GAME_API_COLLISION_SRC} - ${ENGINE_GAME_API_DEBUG_SRC} - ${ENGINE_GAME_API_DEMO_SRC} - ${ENGINE_GAME_API_ENVIRONMENT_SRC} - ${ENGINE_GAME_API_ENVIRONMENT_EFFECTS_SRC} - ${ENGINE_GAME_API_FEELERS_SRC} - ${ENGINE_GAME_API_HUD_SRC} - ${ENGINE_GAME_API_LEVEL_SRC} - ${ENGINE_GAME_API_LEVEL_CONTROLLER_SRC} - ${ENGINE_GAME_API_LEVEL_CONTROLLER_KEY_BINDINGS_SRC} - ${ENGINE_GAME_API_MATERIALSYSTEM_SRC} - ${ENGINE_GAME_API_OBJECTS_SRC} - ${ENGINE_GAME_API_STRING_TABLE_SRC} - ${GENERAL_SRC} - ${GENERAL_PROFILER_SRC} - ${INTERFACES_COLLIDABLE_SRC} - ${INTERFACES_ILOADINGSCREEN_SRC} - ${INTERFACES_INPUT_SRC} - ${INTERFACES_PHYSICS_SRC} - ${INTERFACES_RENDER_SRC} - ${INTERFACES_SHEDULER_SRC} - ${OPEN_AUTOMATE_SRC} - ${RENDER_DEVICE_SRC} - ${RENDER_EXECUTION_AND_3D_SHADERS_SRC} - ${RENDER_EXECUTION_AND_3D_SHADERS_TEXTURES_SRC} - #${RENDER_EXECUTION_AND_3D_TEXT_CONSOLE_SRC} - ${RENDER_FONT_OUTPUT_SRC} - ${RENDER_LIGHTING_SRC} - ${RENDER_PARTICLE_SYSTEM_SRC} - ${RENDER_VISIBILITY_SRC} - ${RENDER_VISUALS_SKELETON_SRC} +target_sources_grouped( + TARGET xrEngine + NAME "Render\\Visuals\\Skeleton" + FILES + EnnumerateVertices.h ) # XXX: This is only used in utils, should be moved somewhere to utils -#set(SRC_FILES -# "xrLoadSurface.cpp" +#target_sources_grouped( +# TARGET xrEngine +# NAME "" +# FILES +# xrLoadSurface.cpp #) -target_include_directories(${PROJECT_NAME} +target_include_directories(xrEngine PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/src - ${CMAKE_SOURCE_DIR}/Externals/OpenAutomate/inc - ${CMAKE_SOURCE_DIR}/Externals/luabind - ${SDL2_INCLUDE_DIRS} + "${CMAKE_CURRENT_SOURCE_DIR}" + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/Externals/imgui" + "${CMAKE_SOURCE_DIR}/Externals/OpenAutomate/inc" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrEngine PUBLIC xrMiscMath + PRIVATE xrAPI xrCDB xrCore - xrLuabind xrSound xrScriptEngine xrNetServer xrImGui - ${LUA_LIBRARIES} - ${SDL2_LIBRARIES} ${OPENAL_LIBRARY} ${OGG_LIBRARIES} Theora::Theora ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrEngine PRIVATE - -DENGINE_BUILD + ENGINE_BUILD ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrEngine PROPERTIES PREFIX "" ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrEngine PRIVATE - "stdafx.h" + stdafx.h ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS xrEngine LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/src/xrGame/CMakeLists.txt b/src/xrGame/CMakeLists.txt index 5d3e2556a38..4119b41c997 100644 --- a/src/xrGame/CMakeLists.txt +++ b/src/xrGame/CMakeLists.txt @@ -1,2638 +1,2631 @@ -project(xrGame) +add_library(xrGame SHARED) -set(SRC_FILES - "abstract_location_selector.h" - "abstract_location_selector_inline.h" - "abstract_path_manager.h" - "abstract_path_manager_inline.h" - "account_manager_console.cpp" - "account_manager_console.h" - "account_manager.cpp" - "account_manager.h" - "account_manager_script.cpp" - "accumulative_states.h" - "action_base.h" - "action_base_inline.h" - "action_base_script.cpp" - "action_management_config.h" - "action_planner_action.h" - "action_planner_action_inline.h" - "action_planner_action_script.cpp" - "action_planner_action_script.h" - "action_planner_action_script_inline.h" - "action_planner.h" - "action_planner_inline.h" - "action_planner_script.cpp" - "action_planner_script.h" - "action_planner_script_inline.h" - "action_script_base.h" - "action_script_base_inline.h" - "ActivatingCharCollisionDelay.cpp" - "ActivatingCharCollisionDelay.h" - "ActorAnimation.cpp" - "ActorAnimation.h" - "actor_anim_defs.h" - "ActorCameras.cpp" - "actor_communication.cpp" - "ActorCondition.cpp" - "ActorCondition.h" - "Actor.cpp" - "actor_defs.h" - "ActorEffector.cpp" - "ActorEffector.h" - "ActorEffector_script.cpp" - "Actor_Events.cpp" - "Actor_Feel.cpp" - "Actor_Flags.h" - "ActorFollowers.cpp" - "ActorFollowers.h" - "Actor.h" - "ActorHelmet.cpp" - "ActorHelmet.h" - "ActorBackpack.cpp" - "ActorBackpack.h" - "ActorInput.cpp" - "actor_input_handler.cpp" - "actor_input_handler.h" - "actor_memory.cpp" - "actor_memory.h" - "ActorMountedWeapon.cpp" - "Actor_Movement.cpp" - "actor_mp_client.cpp" - "actor_mp_client_export.cpp" - "actor_mp_client.h" - "actor_mp_client_import.cpp" - "actor_mp_server.cpp" - "actor_mp_server_export.cpp" - "actor_mp_server.h" - "actor_mp_server_import.cpp" - "actor_mp_state.cpp" - "actor_mp_state.h" - "actor_mp_state_inline.h" - "Actor_Network.cpp" - "actor_script.cpp" - "Actor_Sleep.cpp" - "actor_statistic_defs.h" - "actor_statistic_mgr.cpp" - "actor_statistic_mgr.h" - "ActorVehicle.cpp" - "Actor_Weapon.cpp" - "AdvancedDetector.cpp" - "AdvancedDetector.h" - "agent_corpse_manager.cpp" - "agent_corpse_manager.h" - "agent_corpse_manager_inline.h" - "agent_enemy_manager.cpp" - "agent_enemy_manager.h" - "agent_enemy_manager_inline.h" - "agent_explosive_manager.cpp" - "agent_explosive_manager.h" - "agent_explosive_manager_inline.h" - "agent_location_manager.cpp" - "agent_location_manager.h" - "agent_location_manager_inline.h" - "agent_manager_actions.cpp" - "agent_manager_actions.h" - "agent_manager.cpp" - "agent_manager.h" - "agent_manager_inline.h" - "agent_manager_planner.cpp" - "agent_manager_planner.h" - "agent_manager_properties.cpp" - "agent_manager_properties.h" - "agent_manager_properties_inline.h" - "agent_manager_space.h" - "agent_member_manager.cpp" - "agent_member_manager.h" - "agent_member_manager_inline.h" - "agent_memory_manager.cpp" - "agent_memory_manager.h" - "agent_memory_manager_inline.h" - "ai_crow_script.cpp" - "ai_debug.h" - "ai_debug_variables.cpp" - "ai_debug_variables.h" - "aimers_base.cpp" - "aimers_base.h" - "aimers_base_inline.h" - "aimers_bone.h" - "aimers_bone_inline.h" - "aimers_weapon.cpp" - "aimers_weapon.h" - "aimers_weapon_inline.h" - "ai_monster_space.h" - "ai_obstacle.cpp" - "ai_obstacle.h" - "ai_obstacle_inline.h" - "AI_PhraseDialogManager.cpp" - "AI_PhraseDialogManager.h" - "ai_sounds.cpp" - "ai_space.cpp" - "ai_space.h" - "ai_space_inline.h" - "ai_stalker_alife.cpp" - "alife_abstract_registry.h" - "alife_abstract_registry_inline.h" - "alife_anomalous_zone.cpp" - "alife_combat_manager.cpp" - "alife_combat_manager.h" - "alife_combat_manager_inline.h" - "alife_communication_manager.cpp" - "alife_communication_manager.h" - "alife_communication_manager_inline.h" - "alife_communication_space.h" - "alife_creature_abstract.cpp" - "alife_dynamic_object.cpp" - "alife_graph_registry.cpp" - "alife_graph_registry.h" - "alife_graph_registry_inline.h" - "alife_group_abstract.cpp" - "alife_group_registry.cpp" - "alife_group_registry.h" - "alife_group_registry_inline.h" - "alife_human_abstract.cpp" - "alife_human_brain_save.h" - "alife_human_brain_script.cpp" - "alife_human_object_handler.cpp" - "alife_human_object_handler.h" - "alife_human_object_handler_inline.h" - "alife_human_object_handler_save.h" - "alife_interaction_manager.cpp" - "alife_interaction_manager.h" - "alife_interaction_manager_inline.h" - "alife_level_registry.h" - "alife_level_registry_inline.h" - "alife_monster_abstract.cpp" - "alife_monster_base.cpp" - "alife_monster_brain_script.cpp" - "alife_monster_detail_path_manager.cpp" - "alife_monster_detail_path_manager.h" - "alife_monster_detail_path_manager_inline.h" - "alife_monster_detail_path_manager_script.cpp" - "alife_monster_movement_manager.cpp" - "alife_monster_movement_manager.h" - "alife_monster_movement_manager_inline.h" - "alife_monster_movement_manager_script.cpp" - "alife_monster_patrol_path_manager.cpp" - "alife_monster_patrol_path_manager.h" - "alife_monster_patrol_path_manager_inline.h" - "alife_monster_patrol_path_manager_script.cpp" - "alife_object.cpp" - "alife_object_registry.cpp" - "alife_object_registry.h" - "alife_object_registry_inline.h" - "alife_online_offline_group_brain.cpp" - "alife_online_offline_group_brain.h" - "alife_online_offline_group_brain_inline.h" - "alife_online_offline_group.cpp" - "alife_registry_container_composition.h" - "alife_registry_container.cpp" - "alife_registry_container.h" - "alife_registry_container_inline.h" - "alife_registry_container_space.h" - "alife_registry_wrapper.h" - "alife_registry_wrappers.h" - "alife_schedule_registry.cpp" - "alife_schedule_registry.h" - "alife_schedule_registry_inline.h" - "alife_simulator_base2.cpp" - "alife_simulator_base.cpp" - "alife_simulator_base.h" - "alife_simulator_base_inline.h" - "alife_simulator.cpp" - "alife_simulator.h" - "alife_simulator_header.cpp" - "alife_simulator_header.h" - "alife_simulator_header_inline.h" - "alife_simulator_script.cpp" - "alife_smart_terrain_registry.cpp" - "alife_smart_terrain_registry.h" - "alife_smart_terrain_registry_inline.h" - "alife_smart_terrain_task.cpp" - "alife_smart_terrain_task.h" - "alife_smart_terrain_task_inline.h" - "alife_smart_terrain_task_script.cpp" - "alife_smart_zone.cpp" - "alife_spawn_registry.cpp" - "alife_spawn_registry.h" - "alife_spawn_registry_header.cpp" - "alife_spawn_registry_header.h" - "alife_spawn_registry_header_inline.h" - "alife_spawn_registry_inline.h" - "alife_spawn_registry_spawn.cpp" - "alife_storage_manager.cpp" - "alife_storage_manager.h" - "alife_storage_manager_inline.h" - "alife_story_registry.cpp" - "alife_story_registry.h" - "alife_story_registry_inline.h" - "alife_surge_manager.cpp" - "alife_surge_manager.h" - "alife_surge_manager_inline.h" - "alife_switch_manager.cpp" - "alife_switch_manager.h" - "alife_switch_manager_inline.h" - "alife_time_manager.cpp" - "alife_time_manager.h" - "alife_time_manager_inline.h" - "alife_trader_abstract.cpp" - "alife_trader.cpp" - "alife_update_manager.cpp" - "alife_update_manager.h" - "AmebaZone.cpp" - "AmebaZone.h" - "ammunition_groups.cpp" - "ammunition_groups.h" - "animation_movement_controller.cpp" - "animation_movement_controller.h" - "animation_script_callback.cpp" - "animation_script_callback.h" - "animation_utils.cpp" - "animation_utils.h" - #"AnselManager.cpp" - #"AnselManager.h" - "anticheat_dumpable_object.h" - "antirad.cpp" - "antirad.h" - "artefact_activation.cpp" - "artefact_activation.h" - "Artefact.cpp" - "Artefact.h" - "artefact_script.cpp" - "atlas_stalkercoppc_v1.c" - "atlas_stalkercoppc_v1.h" - #"atlas_stalkercs_v1.c" - #"atlas_stalkercs_v1.h" - "atlas_submit_queue.cpp" - "atlas_submit_queue.h" - "attachable_item.cpp" - "attachable_item.h" - "attachable_item_inline.h" - "attachment_owner.cpp" - "attachment_owner.h" - "autosave_manager.cpp" - "autosave_manager.h" - "autosave_manager_inline.h" - "awards_store.cpp" - "awards_store.h" - "base_client_classes_script.cpp" - "base_client_classes_wrappers.h" - "BastArtifact.cpp" - "BastArtifact.h" - "battleye.h" - #"battleye_system.cpp" - #"battleye_system.h" - "best_scores_helper.cpp" - "best_scores_helper.h" - "best_scores_store.cpp" - "best_scores_store.h" - "BlackDrops.cpp" - "BlackDrops.h" - "BlackGraviArtifact.cpp" - "BlackGraviArtifact.h" - "black_list.cpp" - "black_list.h" - "BlockAllocator.h" - "Bolt.cpp" - "Bolt.h" - "bone_groups.cpp" - "bone_groups.h" - "BoneProtections.cpp" - "BoneProtections.h" - "BottleItem.cpp" - "BottleItem.h" - "BreakableObject.cpp" - "BreakableObject.h" - "CameraEffector.cpp" - "CameraEffector.h" - "CameraFirstEye.cpp" - "CameraFirstEye.h" - "CameraLook.cpp" - "CameraLook.h" - "CameraRecoil.h" - "CaptureBoneCallback.h" - "CarCameras.cpp" - "Car.cpp" - "CarDamageParticles.cpp" - "CarDamageParticles.h" - "CarDoors.cpp" - "CarExhaust.cpp" - "Car.h" - "CarInput.cpp" - "CarLights.cpp" - "CarLights.h" - "car_memory.cpp" - "car_memory.h" - "CarScript.cpp" - "CarSound.cpp" - "CarWeapon.cpp" - "CarWeapon.h" - "CarWheels.cpp" - "cdkey_ban_list.cpp" - "cdkey_ban_list.h" - "character_community.cpp" - "character_community.h" - "character_hit_animations.cpp" - "character_hit_animations.h" - "character_hit_animations_params.h" - "CharacterPhysicsSupport.cpp" - "CharacterPhysicsSupport.h" - "character_rank.cpp" - "character_rank.h" - "character_reputation.cpp" - "character_reputation.h" - "character_shell_control.cpp" - "character_shell_control.h" - "client_spawn_manager.cpp" - "client_spawn_manager.h" - "client_spawn_manager_inline.h" - "client_spawn_manager_script.cpp" - "ClimableObject.cpp" - "ClimableObject.h" - "command_switch_counter.h" - "configs_common.cpp" - "configs_common.h" - "configs_dumper.cpp" - "configs_dumper.h" - "configs_dump_verifyer.cpp" - "configs_dump_verifyer.h" - "console_commands.cpp" - "console_commands_mp.cpp" - "console_registrator_script.cpp" - "ContextMenu.cpp" - "ContextMenu.h" - "control_action.h" - "control_action_inline.h" - "controller_state_panic_inline.h" - "cover_evaluators.cpp" - "cover_evaluators.h" - "cover_evaluators_inline.h" - "cover_manager.cpp" - "cover_manager.h" - "cover_manager_inline.h" - "cover_point.h" - "cover_point_inline.h" - "cover_point_script.cpp" - "cta_game_artefact_activation.cpp" - "cta_game_artefact_activation.h" - "cta_game_artefact.cpp" - "cta_game_artefact.h" - "CustomDetector.cpp" - "CustomDetector.h" - "CustomMonster.cpp" - "CustomMonster.h" - "CustomMonster_inline.h" - "CustomMonster_VCPU.cpp" - "CustomOutfit_script.cpp" - "CustomOutfit.cpp" - "CustomOutfit.h" - "CustomRocket.cpp" - "CustomRocket.h" - "CustomZone.cpp" - "CustomZone.h" - "CycleConstStorage.h" - "DamagableItem.cpp" - "DamagableItem.h" - "damage_manager.cpp" - "damage_manager.h" - "danger_cover_location.cpp" - "danger_cover_location.h" - "danger_cover_location_inline.h" - "danger_explosive.cpp" - "danger_explosive.h" - "danger_explosive_inline.h" - "danger_location.cpp" - "danger_location.h" - "danger_location_inline.h" - "danger_manager.cpp" - "danger_manager.h" - "danger_manager_inline.h" - "danger_object.cpp" - "danger_object.h" - "danger_object_inline.h" - "danger_object_location.cpp" - "danger_object_location.h" - "danger_object_location_inline.h" - "date_time.cpp" - "date_time.h" - "DBG_Car.cpp" - "dbg_draw_frustum.cpp" - "death_anims.cpp" - "death_anims.h" - "death_anims_predicates.cpp" - "debug_renderer.cpp" - "debug_renderer.h" - "debug_renderer_inline.h" - "debug_text_tree.cpp" - "debug_text_tree.h" - "debug_text_tree_inline.h" - "DelayedActionFuse.cpp" - "DelayedActionFuse.h" - "DemoInfo.cpp" - "DemoInfo.h" - "DemoInfo_Loader.cpp" - "DemoInfo_Loader.h" - "DemoPLay_Control.cpp" - "DemoPlay_Control.h" - "DestroyablePhysicsObject.cpp" - "DestroyablePhysicsObject.h" - "detail_path_builder.h" - "detail_path_manager.cpp" - "detail_path_manager.h" - "detail_path_manager_inline.h" - "detail_path_manager_smooth.cpp" - "detail_path_manager_space.h" - "doors_actor.cpp" - "doors_actor.h" - "doors_door.cpp" - "doors_door.h" - "doors.h" - "doors_manager.cpp" - "doors_manager.h" - "double_shot_double_kill.cpp" - "double_shot_double_kill.h" - "DummyArtifact.cpp" - "DummyArtifact.h" - #"DynamicHeightMap.cpp" - #"DynamicHeightMap.h" - "dynamic_obstacles_avoider.cpp" - "dynamic_obstacles_avoider.h" - "dynamic_obstacles_avoider_inline.h" - "eatable_item.cpp" - "eatable_item.h" - "eatable_item_object.cpp" - "eatable_item_object.h" - "ef_base.h" - "EffectorBobbing.cpp" - "EffectorBobbing.h" - "EffectorFall.cpp" - "EffectorFall.h" - "EffectorShot.cpp" - "EffectorShot.h" - "EffectorShotX.cpp" - "EffectorShotX.h" - "EffectorZoomInertion.cpp" - "EffectorZoomInertion.h" - "ef_pattern.cpp" - "ef_pattern.h" - "ef_primary.cpp" - "ef_primary.h" - "ef_storage.cpp" - "ef_storage.h" - "ef_storage_inline.h" - "ef_storage_script.cpp" - "ElectricBall.cpp" - "ElectricBall.h" - "EliteDetector.cpp" - "EliteDetector.h" - "encyclopedia_article.cpp" - "encyclopedia_article_defs.h" - "encyclopedia_article.h" - "enemy_manager.cpp" - "enemy_manager.h" - "enemy_manager_inline.h" - "entity_alive.cpp" - "entity_alive.h" - "entity_alive_inline.h" - "EntityCondition.cpp" - "EntityCondition.h" - "EntityCondition_script.cpp" - "Entity.cpp" - "Entity.h" - "event_conditions_collection.cpp" - "event_conditions_collection.h" - "ExoOutfit.cpp" - "ExoOutfit.h" - "Explosive.cpp" - "Explosive.h" - "ExplosiveItem.cpp" - "ExplosiveItem.h" - "ExplosiveRocket.cpp" - "ExplosiveRocket.h" - "ExplosiveScript.cpp" - "F1.h" - "FadedBall.cpp" - "FadedBall.h" - "faster_than_bullets_time.cpp" - "faster_than_bullets_time.h" - "filereceiver_node.cpp" - "filereceiver_node.h" - "filetransfer_common.h" - "file_transfer.cpp" - "file_transfer.h" - "filetransfer_node.cpp" - "filetransfer_node.h" - "firedeps.h" - "fire_disp_controller.cpp" - "fire_disp_controller.h" - "first_bullet_controller.cpp" - "first_bullet_controller.h" - "flare.cpp" - "flare.h" - "FoodItem.cpp" - "FoodItem.h" - "FryupZone.cpp" - "FryupZone.h" - "fs_registrator_script.cpp" - "GalantineArtifact.cpp" - "GalantineArtifact.h" - "game_base.cpp" - "game_base.h" - "game_base_kill_type.h" - "game_base_menu_events.h" - "game_base_script.cpp" - "game_cl_artefacthunt.cpp" - "game_cl_artefacthunt.h" - "game_cl_artefacthunt_snd_msg.h" - "game_cl_base.cpp" - "game_cl_base.h" - "game_cl_base_script.cpp" - "game_cl_base_weapon_usage_statistic.cpp" - "game_cl_base_weapon_usage_statistic.h" - "game_cl_base_weapon_usage_statistic_save.cpp" - "game_cl_capturetheartefact_buywnd.cpp" - "game_cl_capture_the_artefact_captions_manager.cpp" - "game_cl_capture_the_artefact_captions_manager.h" - "game_cl_capture_the_artefact.cpp" - "game_cl_capture_the_artefact.h" - "game_cl_capture_the_artefact_messages_menu.cpp" - "game_cl_capturetheartefact_snd_msg.h" - "game_cl_deathmatch_buywnd.cpp" - "game_cl_deathmatch.cpp" - "game_cl_deathmatch.h" - "game_cl_deathmatch_snd_messages.h" - "game_cl_mp.cpp" - "game_cl_mp.h" - "game_cl_mp_messages_menu.cpp" - "game_cl_mp_messages_menu.h" - "game_cl_mp_script.cpp" - "game_cl_mp_script.h" - "game_cl_mp_snd_messages.cpp" - "game_cl_mp_snd_messages.h" - "game_cl_single.cpp" - "game_cl_single.h" - "game_cl_teamdeathmatch.cpp" - "game_cl_teamdeathmatch.h" - "game_cl_teamdeathmatch_snd_messages.h" - "game_events_handler.h" - "game_location_selector.h" - "game_location_selector_inline.h" - "game_news.cpp" - "game_news.h" - "GameObject.cpp" - "GameObject.h" - "game_object_space.h" - "game_path_manager.h" - "game_path_manager_inline.h" - "GamePersistent.cpp" - "GamePersistent.h" - "game_state_accumulator.cpp" - "game_state_accumulator.h" - "game_state_accumulator_inline.h" - "game_state_accumulator_state_register.cpp" - "game_sv_artefacthunt.cpp" - "game_sv_artefacthunt.h" - "game_sv_artefacthunt_process_event.cpp" - "game_sv_base_console_vars.cpp" - "game_sv_base_console_vars.h" - "game_sv_base.cpp" - "game_sv_base.h" - "game_sv_base_script.cpp" - "game_sv_capture_the_artefact_buy_event.cpp" - "game_sv_capture_the_artefact.cpp" - "game_sv_capture_the_artefact.h" - "game_sv_capture_the_artefact_myteam_impl.cpp" - "game_sv_capture_the_artefact_process_event.cpp" - "game_sv_deathmatch.cpp" - "game_sv_deathmatch.h" - "game_sv_deathmatch_process_event.cpp" - "game_sv_deathmatch_script.cpp" - "game_sv_event_queue.cpp" - "game_sv_event_queue.h" - "game_sv_item_respawner.cpp" - "game_sv_item_respawner.h" - "game_sv_mp.cpp" - "game_sv_mp.h" - "game_sv_mp_script.cpp" - "game_sv_mp_script.h" - "game_sv_mp_team.h" - "game_sv_mp_vote_flags.h" - "game_sv_single.cpp" - "game_sv_single.h" - "game_sv_teamdeathmatch.cpp" - "game_sv_teamdeathmatch.h" - "game_sv_teamdeathmatch_process_event.cpp" - "GameTask.cpp" - "GameTaskDefs.h" - "GameTask.h" - "GametaskManager.cpp" - "GametaskManager.h" - "GameTask_script.cpp" - "game_type.cpp" - "game_type.h" - "GlobalFeelTouch.cpp" - "GlobalFeelTouch.hpp" - "GraviArtifact.cpp" - "GraviArtifact.h" - "GraviZone.cpp" - "GraviZone.h" - "Grenade.cpp" - "Grenade.h" - "GrenadeLauncher.cpp" - "GrenadeLauncher.h" - "group_hierarchy_holder.cpp" - "group_hierarchy_holder.h" - "group_hierarchy_holder_inline.h" - "gsc_dsigned_ltx.cpp" - "gsc_dsigned_ltx.h" - "HairsZone.cpp" - "HairsZone.h" - "HairsZone_script.cpp" - "HangingLamp.cpp" - "HangingLamp.h" - "harvest_time.cpp" - "harvest_time.h" - "Helicopter2.cpp" - "Helicopter.cpp" - "helicopter.h" - "HelicopterMovementManager.cpp" - "helicopter_script.cpp" - "HelicopterWeapon.cpp" - "Hit.cpp" - "Hit.h" - "hit_immunity.cpp" - "hit_immunity.h" - "hit_immunity_space.h" - "HitMarker.cpp" - "HitMarker.h" - "hit_memory_manager.cpp" - "hit_memory_manager.h" - "hit_memory_manager_inline.h" - "hits_store.cpp" - "hits_store.h" - "hits_store_inline.h" - "holder_custom.cpp" - "holder_custom.h" - "holder_custom_script.cpp" - "HUDCrosshair.cpp" - "HUDCrosshair.h" - "HudItem.cpp" - "HudItem.h" - "hud_item_object.cpp" - "hud_item_object.h" - "HUDManager.cpp" - "HUDManager.h" - "HudSound.cpp" - "HudSound.h" - "HUDTarget.cpp" - "HUDTarget.h" - "id_generator.h" - "ik_anim_state.cpp" - "ik_anim_state.h" - "ik_calculate_data.cpp" - "ik_calculate_data.h" - "ik_calculate_state.h" - "ik_collide_data.h" - "ik_dbg_matrix.cpp" - "ik_dbg_matrix.h" - "ik_foot_collider.cpp" - "ik_foot_collider.h" - "IKFoot.cpp" - "IKFoot.h" - "IKFoot_inl.h" - "IKLimbsController.cpp" - "IKLimbsController.h" - "ik_limb_state.cpp" - "ik_limb_state.h" - "ik_limb_state_predict.h" - "ik_object_shift.cpp" - "ik_object_shift.h" - "imotion_position.cpp" - "imotion_position.h" - "imotion_velocity.cpp" - "imotion_velocity.h" - "InfoDocument.cpp" - "InfoDocument.h" - "InfoPortion.cpp" - "InfoPortion.h" - "ini_id_loader.h" - "ini_table_loader.h" - "interactive_animation.cpp" - "interactive_animation.h" - "interactive_motion.cpp" - "interactive_motion.h" - "InventoryBox.cpp" - "InventoryBox.h" - "Inventory.cpp" - "Inventory.h" - "inventory_item.cpp" - "inventory_item.h" - "inventory_item_impl.h" - "inventory_item_inline.h" - "inventory_item_object.cpp" - "inventory_item_object.h" - "inventory_item_object_inline.h" - "inventory_item_upgrade.cpp" - "InventoryOwner.cpp" - "InventoryOwner.h" - "inventory_owner_info.cpp" - "inventory_owner_inline.h" - "inventory_quickswitch.cpp" - "inventory_upgrade_base.cpp" - "inventory_upgrade_base.h" - "inventory_upgrade_base_inline.h" - "inventory_upgrade.cpp" - "inventory_upgrade_group.cpp" - "inventory_upgrade_group.h" - "inventory_upgrade_group_inline.h" - "inventory_upgrade.h" - "inventory_upgrade_inline.h" - "inventory_upgrade_manager.cpp" - "inventory_upgrade_manager.h" - "inventory_upgrade_manager_inline.h" - "inventory_upgrade_property.cpp" - "inventory_upgrade_property.h" - "inventory_upgrade_property_inline.h" - "inventory_upgrade_root.cpp" - "inventory_upgrade_root.h" - "inventory_upgrade_root_inline.h" - "invincible_fury.cpp" - "invincible_fury.h" - "item_manager.cpp" - "item_manager.h" - "item_manager_inline.h" - "killer_victim_velocity_angle.cpp" - "killer_victim_velocity_angle.h" - "kills_store.cpp" - "kills_store.h" - "kills_store_inline.h" - "Level_Bullet_Manager.cpp" - "Level_bullet_manager_firetrace.cpp" - "Level_Bullet_Manager.h" - "level_changer.cpp" - "level_changer.h" - "Level.cpp" - "level_debug.cpp" - "level_debug.h" - #"LevelFogOfWar.cpp" - #"LevelFogOfWar.h" - "Level_GameSpy_Funcs.cpp" - "LevelGraphDebugRender.cpp" - "LevelGraphDebugRender.hpp" - "Level.h" - "Level_input.cpp" - "Level_load.cpp" - "level_location_selector.h" - "level_location_selector_inline.h" - "level_map_locations.cpp" - "Level_network_compressed_updates.cpp" - "Level_network.cpp" - "Level_network_Demo.cpp" - "Level_network_Demo.h" - "Level_network_digest_computer.cpp" - "Level_network_map_sync.cpp" - "Level_network_map_sync.h" - "Level_network_messages.cpp" - "Level_network_spawn.cpp" - "Level_network_start_client.cpp" - "level_path_builder.h" - "level_path_manager.h" - "level_path_manager_inline.h" - "level_script.cpp" - "Level_secure_messaging.cpp" - "Level_SLS_Default.cpp" - "Level_SLS_Load.cpp" - "Level_SLS_Save.cpp" - "level_sounds.cpp" - "level_sounds.h" - "Level_start.cpp" - "location_manager.cpp" - "location_manager.h" - "location_manager_inline.h" - "login_manager.cpp" - "login_manager.h" - "login_manager_script.cpp" - "magic_box3.cpp" - "magic_box3.h" - "magic_box3_inline.h" - "magic_minimize_1d.cpp" - "magic_minimize_1d.h" - "magic_minimize_1d_inline.h" - "magic_minimize_nd.h" - "magic_minimize_nd_inline.h" - "MainMenu.cpp" - "MainMenu.h" - "map_location.cpp" - "map_location_defs.h" - "map_location.h" - "map_manager.cpp" - "map_manager.h" - "map_script.cpp" - "map_spot.cpp" - "map_spot.h" - "material_manager.cpp" - "material_manager.h" - "material_manager_inline.h" - #"MathUtils.cpp" - #"MathUtils.h" - "matrix_utils.h" - "medkit.cpp" - "medkit.h" - "member_corpse.h" - "member_corpse_inline.h" - "member_enemy.h" - "member_enemy_inline.h" - "member_order.h" - "member_order_inline.h" - "memory_manager.cpp" - "memory_manager.h" - "memory_manager_inline.h" - "memory_space.h" - "memory_space_impl.h" - "memory_space_script.cpp" - "MercuryBall.cpp" - "MercuryBall.h" - "Message_Filter.cpp" - "Message_Filter.h" - "MilitaryOutfit.cpp" - "MilitaryOutfit.h" - "Mincer.cpp" - "Mincer.h" - "mincer_script.cpp" - "min_obb.cpp" - "Missile.cpp" - "Missile.h" - "mixed_delegate.h" - "mixed_delegate_unique_tags.h" - "monster_community.cpp" - "monster_community.h" - "MosquitoBald.cpp" - "MosquitoBald.h" - "MosquitoBald_script.cpp" - "movement_manager.cpp" - "movement_manager_game.cpp" - "movement_manager.h" - "movement_manager_impl.h" - "movement_manager_inline.h" - "movement_manager_level.cpp" - "movement_manager_patrol.cpp" - "movement_manager_physic.cpp" - "movement_manager_space.h" - "moving_bones_snd_player.cpp" - "moving_bones_snd_player.h" - "moving_object.cpp" - "moving_object.h" - "moving_object_inline.h" - "moving_objects.cpp" - "moving_objects_dynamic_collision.cpp" - "moving_objects_dynamic.cpp" - "moving_objects.h" - "moving_objects_impl.h" - "moving_objects_inline.h" - "moving_objects_static.cpp" - "mpactor_dump_impl.cpp" - "mp_config_sections.cpp" - "mp_config_sections.h" - "MPPlayersBag.cpp" - "MPPlayersBag.h" - "mt_config.h" - "Needles.cpp" - "Needles.h" - "NET_Queue.h" - "NoGravityZone.cpp" - "NoGravityZone.h" - "object_actions.cpp" - "object_actions.h" - "object_actions_inline.h" - #"ObjectDump.cpp" - #"ObjectDump.h" - "object_handler.cpp" - "object_handler.h" - "object_handler_inline.h" - "object_handler_planner.cpp" - "object_handler_planner.h" - "object_handler_planner_impl.h" - "object_handler_planner_inline.h" - "object_handler_planner_missile.cpp" - "object_handler_planner_weapon.cpp" - "object_handler_space.h" - "object_manager.h" - "object_manager_inline.h" - "object_property_evaluators.cpp" - "object_property_evaluators.h" - "object_property_evaluators_inline.h" - "obsolete_queue.h" - "obsolete_queue_inline.h" - "obstacles_query.cpp" - "obstacles_query.h" - "obstacles_query_inline.h" - "particle_params.h" - "particle_params_script.cpp" - "ParticlesObject.cpp" - "ParticlesObject.h" - "ParticlesPlayer.cpp" - "ParticlesPlayer.h" - "patrol_path_manager.cpp" - "patrol_path_manager.h" - "patrol_path_manager_inline.h" - "PDA.cpp" - "PDA.h" - "PdaMsg.h" - "pda_space.h" - "PHCollisionDamageReceiver.cpp" - "PHCollisionDamageReceiver.h" - "PHCommander.cpp" - "PHCommander.h" - "PHDebug.cpp" - "PHDebug.h" - "PHDestroyable.cpp" - "PHDestroyable.h" - "PHDestroyableNotificate.cpp" - "PHDestroyableNotificate.h" - "PHMovementControl.cpp" - "PHMovementControl.h" - "PHMovementDynamicActivate.cpp" - "Phrase.cpp" - "PhraseDialog.cpp" - "PhraseDialogDefs.h" - "PhraseDialog.h" - "PhraseDialogManager.cpp" - "PhraseDialogManager.h" - "PhraseDialog_script.cpp" - "Phrase.h" - "PhraseScript.cpp" - "PhraseScript.h" - "PHReqComparer.h" - "PHScriptCall.cpp" - "PHScriptCall.h" - "PHShellCreator.cpp" - "PHShellCreator.h" - "ph_shell_interface.h" - "PHSimpleCalls.cpp" - "PHSimpleCalls.h" - "PHSimpleCallsScript.cpp" - "PHSkeleton.cpp" - "PHSkeleton.h" - "PHSoundPlayer.cpp" - "PHSoundPlayer.h" - "physic_item.cpp" - "physic_item.h" - "physic_item_inline.h" - "PhysicObject.cpp" - "PhysicObject.h" - "PhysicObject_script.cpp" - "physics_element_scripted.cpp" - "physics_element_scripted.h" - "physics_game.cpp" - "physics_game.h" - "PhysicsGamePars.cpp" - "PhysicsGamePars.h" - "physics_joint_scripted.cpp" - "physics_joint_scripted.h" - "physics_shell_animated.cpp" - "physics_shell_animated.h" - "PhysicsShellHolder.cpp" - "PhysicsShellHolder.h" - #"PhysicsShellScript.cpp" - "physics_shell_scripted.cpp" - "physics_shell_scripted.h" - "PhysicsSkeletonObject.cpp" - "PhysicsSkeletonObject.h" - "physics_world_scripted.cpp" - "physics_world_scripted.h" - "player_account.cpp" - "player_account.h" - "player_hud.cpp" - "player_hud.h" - "player_hud_tune.cpp" - "player_name_modifyer.cpp" - "player_name_modifyer.h" - "player_spot_params.cpp" - "player_spot_params.h" - "player_state_achilles_heel.cpp" - "player_state_achilles_heel.h" - "player_state_ambassador.cpp" - "player_state_ambassador.h" - "player_state_ammo_elapsed.cpp" - "player_state_ammo_elapsed.h" - "player_state_avenger.cpp" - "player_state_avenger.h" - "player_state_blitzkrieg.cpp" - "player_state_blitzkrieg.h" - "player_state_cherub.cpp" - "player_state_cherub.h" - "player_state_climber.cpp" - "player_state_climber.h" - "player_state_mad.cpp" - "player_state_mad.h" - "player_state_marksman.cpp" - "player_state_marksman.h" - "player_state_multichampion.cpp" - "player_state_multichampion.h" - "player_state_opener.cpp" - "player_state_opener.h" - "player_state_param.h" - "player_state_params.cpp" - "player_state_params.h" - "player_state_remembrance.cpp" - "player_state_remembrance.h" - "player_state_skewer.cpp" - "player_state_skewer.h" - "player_state_toughy.cpp" - "player_state_toughy.h" - "player_team_win_score.cpp" - "player_team_win_score.h" - "pose_extrapolation.cpp" - "pose_extrapolation.h" - "poses_blending.cpp" - "poses_blending.h" - "PostprocessAnimator.cpp" - "PostprocessAnimator.h" - "pp_effector_custom.cpp" - "pp_effector_custom.h" - "pp_effector_distance.cpp" - "pp_effector_distance.h" - "profile_data_types.cpp" - "profile_data_types.h" - "profile_data_types_script.cpp" - "profile_data_types_script.h" - "profile_store.cpp" - "profile_store.h" - "profile_store_script.cpp" - "property_evaluator_const.h" - "property_evaluator.h" - "property_evaluator_inline.h" - "property_evaluator_member.h" - "property_evaluator_member_inline.h" - "property_evaluator_script.cpp" - "property_storage.h" - "property_storage_inline.h" - "property_storage_script.cpp" - "purchase_list.cpp" - "purchase_list.h" - "purchase_list_inline.h" - "quadtree.h" - "quadtree_inline.h" - "queued_async_method.h" - "RadioactiveZone.cpp" - "RadioactiveZone.h" - "Random.cpp" - "Random.hpp" - "rat_state_base.cpp" - "rat_state_base.h" - "rat_state_base_inline.h" - "rat_state_manager.cpp" - "rat_state_manager.h" - "rat_state_manager_inline.h" - "rat_states.cpp" - "rat_states.h" - "raypick.cpp" - "raypick.h" - "refreshable_obstacles_query.h" - "refreshable_obstacles_query_inline.h" - "RegistryFuncs.cpp" - "RegistryFuncs.h" - "relation_registry_actions.cpp" - "relation_registry.cpp" - "relation_registry_defs.h" - "relation_registry_fights.cpp" - "relation_registry.h" - "relation_registry_inline.h" - "restricted_object.cpp" - "restricted_object.h" - "restricted_object_inline.h" - "restricted_object_obstacle.cpp" - "restricted_object_obstacle.h" - "reward_event_generator.cpp" - "reward_event_generator.h" - "reward_event_handler.h" - "rewarding_events_handlers.cpp" - "rewarding_events_handlers.h" - "rewarding_state_events.cpp" - "rewarding_state_events.h" - "reward_manager.cpp" - "reward_manager.h" - "reward_snd_messages.h" - "RGD5.h" - "RocketLauncher.cpp" - "RocketLauncher.h" - "RustyHairArtifact.cpp" - "RustyHairArtifact.h" - "safe_map_iterator.h" - "safe_map_iterator_inline.h" - "saved_game_wrapper.cpp" - "saved_game_wrapper.h" - "saved_game_wrapper_inline.h" - "saved_game_wrapper_script.cpp" - "ScientificOutfit.cpp" - "ScientificOutfit.h" - "Scope.cpp" - "Scope.h" - "screenshot_manager.cpp" - "screenshot_manager.h" - "screenshots_common.cpp" - "screenshots_common.h" - "screenshot_server.cpp" - "screenshot_server.h" - "screenshots_writer.cpp" - "screenshots_writer.h" - "script_abstract_action.h" - "script_action_condition.h" - "script_action_condition_inline.h" - "script_action_condition_script.cpp" - "script_action_planner_action_wrapper.cpp" - "script_action_planner_action_wrapper.h" - "script_action_planner_action_wrapper_inline.h" - "script_action_planner_wrapper.cpp" - "script_action_planner_wrapper.h" - "script_action_planner_wrapper_inline.h" - "script_action_wrapper.cpp" - "script_action_wrapper.h" - "script_action_wrapper_inline.h" - "script_animation_action.h" - "script_animation_action_inline.h" - "script_animation_action_script.cpp" - "script_binder.cpp" - "script_binder.h" - "script_binder_inline.h" - "script_binder_object.cpp" - "script_binder_object.h" - "script_binder_object_script.cpp" - "script_binder_object_wrapper.cpp" - "script_binder_object_wrapper.h" - "script_bind_macroses.h" - "script_effector.cpp" - "script_effector.h" - "script_effector_inline.h" - "script_effector_script.cpp" - "script_effector_wrapper.cpp" - "script_effector_wrapper.h" - "script_effector_wrapper_inline.h" - "script_entity_action.cpp" - "script_entity_action.h" - "script_entity_action_inline.h" - "script_entity_action_script.cpp" - "script_entity.cpp" - "script_entity.h" - "script_entity_inline.h" - "script_entity_space.h" - "script_game_object2.cpp" - "script_game_object3.cpp" - "script_game_object4.cpp" - "script_game_object.cpp" - "script_game_object.h" - "script_game_object_impl.h" - "script_game_object_inventory_owner.cpp" - "script_game_object_script2.cpp" - "script_game_object_script3.cpp" - "script_game_object_script.cpp" - "script_game_object_script_trader.cpp" - "script_game_object_smart_covers.cpp" - "script_game_object_trader.cpp" - "script_game_object_use2.cpp" - "script_game_object_use.cpp" - "script_hit.cpp" - "script_hit.h" - "script_hit_inline.h" - "script_hit_script.cpp" - "script_lanim.cpp" - "script_monster_action.cpp" - "script_monster_action.h" - "script_monster_action_inline.h" - "script_monster_action_script.cpp" - "script_monster_hit_info.h" - "script_monster_hit_info_script.cpp" - "script_movement_action.cpp" - "script_movement_action.h" - "script_movement_action_inline.h" - "script_movement_action_script.cpp" - "script_object_action.cpp" - "script_object_action.h" - "script_object_action_inline.h" - "script_object_action_script.cpp" - "script_object.cpp" - "script_object.h" - "script_particle_action.cpp" - "script_particle_action.h" - "script_particle_action_inline.h" - "script_particle_action_script.cpp" - "script_particles.cpp" - "script_particles.h" - "script_particles_inline.h" - "script_particles_script.cpp" - "script_property_evaluator_wrapper.cpp" - "script_property_evaluator_wrapper.h" - "script_property_evaluator_wrapper_inline.h" - "script_render_device_script.cpp" - "script_sound_action.cpp" - "script_sound_action.h" - "script_sound_action_inline.h" - "script_sound_action_script.cpp" - "script_sound.cpp" - "script_sound.h" - "script_sound_info.h" - "script_sound_info_script.cpp" - "script_sound_inline.h" - "script_sound_script.cpp" - "script_watch_action.cpp" - "script_watch_action.h" - "script_watch_action_inline.h" - "script_watch_action_script.cpp" - "ScriptXMLInit.cpp" - "ScriptXMLInit.h" - "script_zone.cpp" - "script_zone.h" - "script_zone_script.cpp" - "searchlight.cpp" - "searchlight.h" - "secure_messaging.cpp" - "secure_messaging.h" - "seniority_hierarchy_holder.cpp" - "seniority_hierarchy_holder.h" - "seniority_hierarchy_holder_inline.h" - "seniority_hierarchy_space.h" - "server_entity_wrapper.cpp" - "server_entity_wrapper.h" - "server_entity_wrapper_inline.h" - "setup_manager.h" - "setup_manager_inline.h" - "ShootingObject.cpp" - "shootingObject_dump_impl.cpp" - "ShootingObject.h" - "sight_action.cpp" - "sight_action.h" - "sight_action_inline.h" - "sight_control_action.h" - "sight_control_action_inline.h" - "sight_manager.cpp" - "sight_manager.h" - "sight_manager_inline.h" - "sight_manager_space.h" - "sight_manager_target.cpp" - "Silencer.cpp" - "Silencer.h" - "silent_shots.cpp" - "silent_shots.h" - "SimpleDetector.cpp" - "SimpleDetector.h" - "SleepEffector.cpp" - "SleepEffector.h" - "smart_cover_action.cpp" - "smart_cover_action.h" - "smart_cover_action_inline.h" - "smart_cover_animation_planner.cpp" - "smart_cover_animation_planner.h" - "smart_cover_animation_planner_inline.h" - "smart_cover_animation_selector.cpp" - "smart_cover_animation_selector.h" - "smart_cover_animation_selector_inline.h" - "smart_cover.cpp" - "smart_cover_default_behaviour_planner.cpp" - "smart_cover_default_behaviour_planner.hpp" - "smart_cover_default_behaviour_planner_inline.hpp" - "smart_cover_description.cpp" - "smart_cover_description.h" - "smart_cover_description_inline.h" - "smart_cover_detail.cpp" - "smart_cover_detail.h" - "smart_cover_evaluators.cpp" - "smart_cover_evaluators.h" - "smart_cover.h" - "smart_cover_inline.h" - "smart_cover_loophole.cpp" - "smart_cover_loophole.h" - "smart_cover_loophole_inline.h" - "smart_cover_loophole_planner_actions.cpp" - "smart_cover_loophole_planner_actions.h" - "smart_cover_loophole_planner_actions_inline.h" - "smart_cover_object.cpp" - "smart_cover_object.h" - "smart_cover_object_inline.h" - "smart_cover_object_script.cpp" - "smart_cover_planner_actions.cpp" - "smart_cover_planner_actions.h" - "smart_cover_planner_actions_inline.h" - "smart_cover_planner_target_provider.cpp" - "smart_cover_planner_target_provider.h" - "smart_cover_planner_target_selector.cpp" - "smart_cover_planner_target_selector.h" - "smart_cover_planner_target_selector_inline.h" - "smart_cover_storage.cpp" - "smart_cover_storage.h" - "smart_cover_transition_animation.cpp" - "smart_cover_transition_animation.hpp" - "smart_cover_transition_animation_inline.hpp" - "smart_cover_transition.cpp" - "smart_cover_transition.hpp" - "smart_zone.h" - "sound_collection_storage.cpp" - "sound_collection_storage.h" - "sound_collection_storage_inline.h" - "sound_memory_manager.cpp" - "sound_memory_manager.h" - "sound_memory_manager_inline.h" - "sound_player.cpp" - "sound_player.h" - "sound_player_inline.h" - "sound_user_data_visitor.h" - "space_restriction_abstract.h" - "space_restriction_abstract_inline.h" - "space_restriction_base.cpp" - "space_restriction_base.h" - "space_restriction_base_inline.h" - "space_restriction_bridge.cpp" - "space_restriction_bridge.h" - "space_restriction_bridge_inline.h" - "space_restriction_composition.cpp" - "space_restriction_composition.h" - "space_restriction_composition_inline.h" - "space_restriction.cpp" - "space_restriction.h" - "space_restriction_holder.cpp" - "space_restriction_holder.h" - "space_restriction_holder_inline.h" - "space_restriction_inline.h" - "space_restriction_manager.cpp" - "space_restriction_manager.h" - "space_restriction_manager_inline.h" - "space_restriction_shape.cpp" - "space_restriction_shape.h" - "space_restriction_shape_inline.h" - "space_restrictor.cpp" - "space_restrictor.h" - "space_restrictor_inline.h" - "space_restrictor_script.cpp" - "SpaceUtils.h" - "spectator_camera_first_eye.cpp" - "spectator_camera_first_eye.h" - "Spectator.cpp" - "Spectator.h" - "sprinter_stopper.cpp" - "sprinter_stopper.h" - "squad_hierarchy_holder.cpp" - "squad_hierarchy_holder.h" - "squad_hierarchy_holder_inline.h" - "stalker_alife_actions.cpp" - "stalker_alife_actions.h" - "stalker_alife_planner.cpp" - "stalker_alife_planner.h" - "stalker_alife_task_actions.cpp" - "stalker_alife_task_actions.h" - "stalker_animation_callbacks.cpp" - "stalker_animation_data.cpp" - "stalker_animation_data.h" - "stalker_animation_data_storage.cpp" - "stalker_animation_data_storage.h" - "stalker_animation_data_storage_inline.h" - "stalker_animation_global.cpp" - "stalker_animation_head.cpp" - "stalker_animation_legs.cpp" - "stalker_animation_manager.cpp" - "stalker_animation_manager_debug.cpp" - "stalker_animation_manager.h" - "stalker_animation_manager_impl.h" - "stalker_animation_manager_inline.h" - "stalker_animation_manager_update.cpp" - "stalker_animation_names.cpp" - "stalker_animation_names.h" - #"stalker_animation_offsets.cpp" - #"stalker_animation_offsets.hpp" - "stalker_animation_pair.cpp" - "stalker_animation_pair.h" - "stalker_animation_pair_inline.h" - "stalker_animation_script.cpp" - "stalker_animation_script.h" - "stalker_animation_script_inline.h" - "stalker_animation_state.cpp" - "stalker_animation_state.h" - "stalker_animation_state_inline.h" - "stalker_animation_torso.cpp" - "stalker_anomaly_actions.cpp" - "stalker_anomaly_actions.h" - "stalker_anomaly_planner.cpp" - "stalker_anomaly_planner.h" - "stalker_base_action.cpp" - "stalker_base_action.h" - "stalker_combat_action_base.cpp" - "stalker_combat_action_base.h" - "stalker_combat_actions.cpp" - "stalker_combat_actions.h" - "stalker_combat_actions_inline.h" - "stalker_combat_planner.cpp" - "stalker_combat_planner.h" - "stalker_danger_by_sound_actions.cpp" - "stalker_danger_by_sound_actions.h" - "stalker_danger_by_sound_planner.cpp" - "stalker_danger_by_sound_planner.h" - "stalker_danger_grenade_actions.cpp" - "stalker_danger_grenade_actions.h" - "stalker_danger_grenade_planner.cpp" - "stalker_danger_grenade_planner.h" - "stalker_danger_in_direction_actions.cpp" - "stalker_danger_in_direction_actions.h" - "stalker_danger_in_direction_planner.cpp" - "stalker_danger_in_direction_planner.h" - "stalker_danger_planner.cpp" - "stalker_danger_planner.h" - "stalker_danger_planner_inline.h" - "stalker_danger_property_evaluators.cpp" - "stalker_danger_property_evaluators.h" - "stalker_danger_unknown_actions.cpp" - "stalker_danger_unknown_actions.h" - "stalker_danger_unknown_planner.cpp" - "stalker_danger_unknown_planner.h" - "stalker_death_actions.cpp" - "stalker_death_actions.h" - "stalker_death_planner.cpp" - "stalker_death_planner.h" - "stalker_decision_space.h" - "stalker_flair.cpp" - "stalker_flair.h" - "stalker_get_distance_actions.cpp" - "stalker_get_distance_actions.h" - "stalker_get_distance_planner.cpp" - "stalker_get_distance_planner.h" - "stalker_kill_wounded_actions.cpp" - "stalker_kill_wounded_actions.h" - "stalker_kill_wounded_planner.cpp" - "stalker_kill_wounded_planner.h" - "stalker_low_cover_actions.cpp" - "stalker_low_cover_actions.h" - "stalker_low_cover_planner.cpp" - "stalker_low_cover_planner.h" - "stalker_movement_manager_base.cpp" - "stalker_movement_manager_base.h" - "stalker_movement_manager_base_inline.h" - "stalker_movement_manager_obstacles.cpp" - "stalker_movement_manager_obstacles.h" - "stalker_movement_manager_obstacles_inline.h" - "stalker_movement_manager_obstacles_path.cpp" - "stalker_movement_manager_smart_cover.cpp" - "stalker_movement_manager_smart_cover_fov_range.cpp" - "stalker_movement_manager_smart_cover.h" - "stalker_movement_manager_smart_cover_inline.h" - "stalker_movement_manager_smart_cover_loopholes.cpp" - "stalker_movement_manager_space.h" - "stalker_movement_params.cpp" - "stalker_movement_params.h" - "stalker_movement_params_inline.h" - "stalker_movement_restriction.h" - "stalker_movement_restriction_inline.h" - "StalkerOutfit.cpp" - "StalkerOutfit.h" - "stalker_planner.cpp" - "stalker_planner.h" - "stalker_planner_inline.h" - "stalker_property_evaluators.cpp" - "stalker_property_evaluators.h" - "stalker_property_evaluators_inline.h" - "stalker_search_actions.cpp" - "stalker_search_actions.h" - "stalker_search_planner.cpp" - "stalker_search_planner.h" - "stalker_sound_data.cpp" - "stalker_sound_data.h" - "stalker_sound_data_inline.h" - "stalker_sound_data_visitor.cpp" - "stalker_sound_data_visitor.h" - "stalker_sound_data_visitor_inline.h" - "stalker_velocity_collection.cpp" - "stalker_velocity_collection.h" - "stalker_velocity_collection_inline.h" - "stalker_velocity_holder.cpp" - "stalker_velocity_holder.h" - "stalker_velocity_holder_inline.h" - "state_arguments_functions.cpp" - "state_arguments_functions.h" - "static_cast_checked.hpp" - #"static_cast_checked_test.cpp" - "static_obstacles_avoider.cpp" - "static_obstacles_avoider.h" - "static_obstacles_avoider_inline.h" - #"stats_submitter.cpp" - "stats_submitter_dsa_params.cpp" - "stats_submitter.h" - "StdAfx.cpp" - "StdAfx.h" - "steering_behaviour_alignment.h" - "steering_behaviour_base.h" - "steering_behaviour_base_inline.h" - "steering_behaviour_cohesion.h" - "steering_behaviour.cpp" - "steering_behaviour.h" - "steering_behaviour_separation.h" - "step_manager.cpp" - "step_manager_defs.h" - "step_manager.h" - "team_base_zone.cpp" - "team_base_zone.h" - "team_hierarchy_holder.cpp" - "team_hierarchy_holder.h" - "team_hierarchy_holder_inline.h" - "TeleWhirlwind.cpp" - "TeleWhirlwind.h" - "ThornArtifact.cpp" - "ThornArtifact.h" - "Torch.cpp" - "Torch.h" - "torch_script.cpp" - "TorridZone.cpp" - "TorridZone.h" - "Tracer.cpp" - "Tracer.h" - "trade2.cpp" - "trade_action_parameters.h" - "trade_action_parameters_inline.h" - "trade_bool_parameters.h" - "trade_bool_parameters_inline.h" - "trade.cpp" - "trade_factor_parameters.h" - "trade_factor_parameters_inline.h" - "trade_factors.h" - "trade_factors_inline.h" - "trade.h" - "trade_parameters.cpp" - "trade_parameters.h" - "trade_parameters_inline.h" - "traffic_optimization.cpp" - "traffic_optimization.h" - "trajectories.cpp" - "trajectories.h" - "UIAchivementsIndicator.cpp" - "UIAchivementsIndicator.h" - "UIDialogHolder.cpp" - "UIDialogHolder.h" - "ui_export_script.cpp" - #"UIFrameRect.cpp" - #"UIFrameRect.h" - "UIGameAHunt.cpp" - "UIGameAHunt.h" - "UIGameCTA.cpp" - "UIGameCTA.h" - "UIGameCustom.cpp" - "UIGameCustom.h" - #"UIGame_custom_script.cpp" - #"UIGame_custom_script.h" - "UIGameCustom_script.cpp" - "UIGameDM.cpp" - "UIGameDM.h" - "UIGameMP.cpp" - "UIGameMP.h" - "UIGameSP.cpp" - "UIGameSP.h" - "UIGameTDM.cpp" - "UIGameTDM.h" - "UIPanelsClassFactory.cpp" - "UIPanelsClassFactory.h" - "UIPlayerItem.cpp" - "UIPlayerItem.h" - "UITeamHeader.cpp" - "UITeamHeader.h" - "UITeamPanels.cpp" - "UITeamPanels.h" - "UITeamState.cpp" - "UITeamState.h" - "UITimeDilator.cpp" - "UITimeDilator.h" - "UIZoneMap.cpp" - "UIZoneMap.h" - "VersionSwitcher.cpp" - "VersionSwitcher.h" - "vision_client.cpp" - "vision_client.h" - "vision_client_inline.h" - "visual_memory_manager.cpp" - "visual_memory_manager.h" - "visual_memory_manager_inline.h" - "visual_memory_params.cpp" - "visual_memory_params.h" - "wallmark_manager.cpp" - "wallmark_manager.h" - "WeaponAK74.cpp" - "WeaponAK74.h" - "WeaponAmmo.cpp" - "weapon_ammo_dump_impl.cpp" - "WeaponAmmo.h" - "WeaponAutomaticShotgun.cpp" - "WeaponAutomaticShotgun.h" - "WeaponBinoculars.cpp" - "WeaponBinoculars.h" - "WeaponBinocularsVision.cpp" - "WeaponBinocularsVision.h" - "weaponBM16.cpp" - "weaponBM16.h" - "Weapon.cpp" - "WeaponCustomPistolAuto.cpp" - "WeaponCustomPistolAuto.h" - "WeaponCustomPistol.cpp" - "WeaponCustomPistol.h" - "WeaponDispersion.cpp" - "weapon_dump_impl.cpp" - "WeaponFire.cpp" - "WeaponFN2000.cpp" - "WeaponFN2000.h" - "WeaponFORT.h" - "WeaponGroza.cpp" - "WeaponGroza.h" - "Weapon.h" - "WeaponHPSA.cpp" - "WeaponHPSA.h" - "WeaponHUD.h" - "WeaponKnife.cpp" - "WeaponKnife.h" - "WeaponLR300.cpp" - "WeaponLR300.h" - "WeaponMagazined.cpp" - "WeaponMagazined.h" - "WeaponMagazinedWGrenade.cpp" - "WeaponMagazinedWGrenade.h" - "WeaponPistol.cpp" - "WeaponPistol.h" - "WeaponPM.cpp" - "WeaponPM.h" - "WeaponRevolver.cpp" - "WeaponRevolver.h" - "WeaponRG6.cpp" - "WeaponRG6.h" - "WeaponRPG7.cpp" - "WeaponRPG7.h" - "WeaponScript.cpp" - "WeaponShotgun.cpp" - "WeaponShotgun.h" - "WeaponStatMgun.cpp" - "WeaponStatMgunFire.cpp" - "WeaponStatMgun.h" - "WeaponStatMgunIR.cpp" - "WeaponSVD.cpp" - "WeaponSVD.h" - "WeaponSVU.h" - "WeaponUpgrade.cpp" - "WeaponUSP45.h" - "WeaponVal.cpp" - "WeaponVal.h" - "WeaponVintorez.cpp" - "WeaponVintorez.h" - "WeaponWalther.h" - "Wound.cpp" - "Wound.h" - "wrapper_abstract.h" - "wrapper_abstract_inline.h" - #"xr_Client_BattlEye.cpp" - #"xr_Client_BattlEye.h" - "xrClientsPool.cpp" - "xrClientsPool.h" - "xrGame.cpp" - "xrgame_dll_detach.cpp" - "xrGameSpy_GameSpyFuncs.cpp" - "xrGameSpyServer_callbacks.cpp" - "xrGameSpyServer_callbacks.h" - "xrGameSpyServer.cpp" - "xrGameSpyServer.h" - "xrServer_balance.cpp" - #"xr_Server_BattlEye.cpp" - #"xr_Server_BattlEye.h" - "xrServer_CL_connect.cpp" - "xrServer_CL_disconnect.cpp" - "xrServer_Connect.cpp" - "xrServer.cpp" - "xrServer_Disconnect.cpp" - "xrServer.h" - "xrServer_info.cpp" - "xrServer_info.h" - "xrServerMapSync.cpp" - "xrServerMapSync.h" - "xrServer_perform_GameExport.cpp" - "xrServer_perform_migration.cpp" - "xrServer_perform_RPgen.cpp" - "xrServer_perform_sls_default.cpp" - "xrServer_perform_sls_load.cpp" - "xrServer_perform_sls_save.cpp" - "xrServer_perform_transfer.cpp" - "xrServer_process_event_activate.cpp" - "xrServer_process_event.cpp" - "xrServer_process_event_destroy.cpp" - "xrServer_process_event_ownership.cpp" - "xrServer_process_event_reject.cpp" - "xrServer_process_spawn.cpp" - "xrServer_process_update.cpp" - "xrServer_secure_messaging.cpp" - "xrServer_sls_clear.cpp" - "xrServer_svclient_validation.cpp" - "xrServer_svclient_validation.h" - "xrServer_updates_compressor.cpp" - "xrServer_updates_compressor.h" - "xr_time.cpp" - "xr_time.h" - "ZoneCampfire.cpp" - "ZoneCampfire.h" - "zone_effector.cpp" - "zone_effector.h" - "ZoneVisual.cpp" - "ZoneVisual.h" - "ZudaArtifact.cpp" - "ZudaArtifact.h" - "ai/ai_monsters_anims.h" - "ai/ai_monsters_misc.cpp" - "ai/ai_monsters_misc.h" - "ai/position_prediction.h" - "ai/weighted_random.cpp" - "ai/weighted_random.h" - "ai/crow/ai_crow.cpp" - "ai/crow/ai_crow.h" - "ai/monsters/ai_monster_bones.cpp" - "ai/monsters/ai_monster_bones.h" - "ai/monsters/ai_monster_defs.h" - "ai/monsters/ai_monster_effector.cpp" - "ai/monsters/ai_monster_effector.h" - "ai/monsters/ai_monster_motion_stats.cpp" - "ai/monsters/ai_monster_motion_stats.h" - "ai/monsters/ai_monster_shared_data.h" - "ai/monsters/ai_monster_squad_attack.cpp" - "ai/monsters/ai_monster_squad.cpp" - "ai/monsters/ai_monster_squad.h" - "ai/monsters/ai_monster_squad_manager.cpp" - "ai/monsters/ai_monster_squad_manager.h" - "ai/monsters/ai_monster_squad_manager_inline.h" - "ai/monsters/ai_monster_squad_rest.cpp" - "ai/monsters/ai_monster_utils.cpp" - "ai/monsters/ai_monster_utils.h" - "ai/monsters/anim_triple.cpp" - "ai/monsters/anim_triple.h" - "ai/monsters/anomaly_detector.cpp" - "ai/monsters/anomaly_detector.h" - "ai/monsters/anti_aim_ability.cpp" - "ai/monsters/anti_aim_ability.h" - "ai/monsters/control_animation_base_accel.cpp" - "ai/monsters/control_animation_base.cpp" - "ai/monsters/control_animation_base.h" - "ai/monsters/control_animation_base_load.cpp" - "ai/monsters/control_animation_base_update.cpp" - "ai/monsters/control_animation.cpp" - "ai/monsters/control_animation.h" - "ai/monsters/control_combase.h" - "ai/monsters/control_com_defs.h" - "ai/monsters/control_critical_wound.cpp" - "ai/monsters/control_critical_wound.h" - "ai/monsters/control_direction_base.cpp" - "ai/monsters/control_direction_base.h" - "ai/monsters/control_direction.cpp" - "ai/monsters/control_direction.h" - "ai/monsters/control_jump.cpp" - "ai/monsters/control_jump.h" - "ai/monsters/controlled_actor.cpp" - "ai/monsters/controlled_actor.h" - "ai/monsters/controlled_entity.h" - "ai/monsters/controlled_entity_inline.h" - "ai/monsters/control_manager.cpp" - "ai/monsters/control_manager_custom.cpp" - "ai/monsters/control_manager_custom.h" - "ai/monsters/control_manager.h" - "ai/monsters/control_melee_jump.cpp" - "ai/monsters/control_melee_jump.h" - "ai/monsters/control_movement_base.cpp" - "ai/monsters/control_movement_base.h" - "ai/monsters/control_movement.cpp" - "ai/monsters/control_movement.h" - "ai/monsters/control_path_builder_base.cpp" - "ai/monsters/control_path_builder_base.h" - "ai/monsters/control_path_builder_base_inline.h" - "ai/monsters/control_path_builder_base_path.cpp" - "ai/monsters/control_path_builder_base_set.cpp" - "ai/monsters/control_path_builder_base_update.cpp" - "ai/monsters/control_path_builder.cpp" - "ai/monsters/control_path_builder.h" - "ai/monsters/control_rotation_jump.cpp" - "ai/monsters/control_rotation_jump.h" - "ai/monsters/control_run_attack.cpp" - "ai/monsters/control_run_attack.h" - "ai/monsters/control_sequencer.cpp" - "ai/monsters/control_sequencer.h" - "ai/monsters/control_threaten.cpp" - "ai/monsters/control_threaten.h" - "ai/monsters/corpse_cover.cpp" - "ai/monsters/corpse_cover.h" - "ai/monsters/custom_events.h" - "ai/monsters/energy_holder.cpp" - "ai/monsters/energy_holder.h" - "ai/monsters/invisibility.cpp" - "ai/monsters/invisibility.h" - "ai/monsters/melee_checker.cpp" - "ai/monsters/melee_checker.h" - "ai/monsters/melee_checker_inline.h" - "ai/monsters/monster_aura.cpp" - "ai/monsters/monster_aura.h" - "ai/monsters/monster_corpse_manager.cpp" - "ai/monsters/monster_corpse_manager.h" - "ai/monsters/monster_corpse_memory.cpp" - "ai/monsters/monster_corpse_memory.h" - "ai/monsters/monster_cover_manager.cpp" - "ai/monsters/monster_cover_manager.h" - "ai/monsters/monster_enemy_manager.cpp" - "ai/monsters/monster_enemy_manager.h" - "ai/monsters/monster_enemy_memory.cpp" - "ai/monsters/monster_enemy_memory.h" - "ai/monsters/monster_event_manager.cpp" - "ai/monsters/monster_event_manager_defs.h" - "ai/monsters/monster_event_manager.h" - "ai/monsters/monster_hit_memory.cpp" - "ai/monsters/monster_hit_memory.h" - "ai/monsters/monster_home.cpp" - "ai/monsters/monster_home.h" - "ai/monsters/monster_morale.cpp" - "ai/monsters/monster_morale.h" - "ai/monsters/monster_morale_inline.h" - "ai/monsters/monster_sound_defs.h" - "ai/monsters/monster_sound_memory.cpp" - "ai/monsters/monster_sound_memory.h" - "ai/monsters/monster_state_manager.h" - "ai/monsters/monster_state_manager_inline.h" - "ai/monsters/monster_velocity_space.h" - "ai/monsters/psy_aura.cpp" - "ai/monsters/psy_aura.h" - "ai/monsters/scanning_ability.h" - "ai/monsters/scanning_ability_inline.h" - "ai/monsters/state.cpp" - "ai/monsters/state_defs.h" - "ai/monsters/state.h" - "ai/monsters/state_inline.h" - "ai/monsters/state_manager.h" - "ai/monsters/telekinesis.cpp" - "ai/monsters/telekinesis.h" - "ai/monsters/telekinesis_inline.h" - "ai/monsters/telekinetic_object.cpp" - "ai/monsters/telekinetic_object.h" - "ai/monsters/basemonster/base_monster_anim.cpp" - "ai/monsters/basemonster/base_monster.cpp" - "ai/monsters/basemonster/base_monster_debug.cpp" - "ai/monsters/basemonster/base_monster_feel.cpp" - "ai/monsters/basemonster/base_monster.h" - "ai/monsters/basemonster/base_monster_inline.h" - "ai/monsters/basemonster/base_monster_misc.cpp" - "ai/monsters/basemonster/base_monster_net.cpp" - "ai/monsters/basemonster/base_monster_path.cpp" - "ai/monsters/basemonster/base_monster_script.cpp" - "ai/monsters/basemonster/base_monster_startup.cpp" - "ai/monsters/basemonster/base_monster_think.cpp" - "ai/monsters/bloodsucker/bloodsucker_alien.cpp" - "ai/monsters/bloodsucker/bloodsucker_alien.h" - "ai/monsters/bloodsucker/bloodsucker_attack_state.h" - "ai/monsters/bloodsucker/bloodsucker_attack_state_hide.h" - "ai/monsters/bloodsucker/bloodsucker_attack_state_hide_inline.h" - "ai/monsters/bloodsucker/bloodsucker_attack_state_inline.h" - "ai/monsters/bloodsucker/bloodsucker.cpp" - "ai/monsters/bloodsucker/bloodsucker.h" - "ai/monsters/bloodsucker/bloodsucker_predator.h" - "ai/monsters/bloodsucker/bloodsucker_predator_inline.h" - "ai/monsters/bloodsucker/bloodsucker_predator_lite.h" - "ai/monsters/bloodsucker/bloodsucker_predator_lite_inline.h" - "ai/monsters/bloodsucker/bloodsucker_script.cpp" - "ai/monsters/bloodsucker/bloodsucker_state_capture_jump.h" - "ai/monsters/bloodsucker/bloodsucker_state_capture_jump_inline.h" - "ai/monsters/bloodsucker/bloodsucker_state_manager.cpp" - "ai/monsters/bloodsucker/bloodsucker_state_manager.h" - "ai/monsters/bloodsucker/bloodsucker_vampire_approach.h" - "ai/monsters/bloodsucker/bloodsucker_vampire_approach_inline.h" - "ai/monsters/bloodsucker/bloodsucker_vampire_effector.cpp" - "ai/monsters/bloodsucker/bloodsucker_vampire_effector.h" - "ai/monsters/bloodsucker/bloodsucker_vampire_execute.h" - "ai/monsters/bloodsucker/bloodsucker_vampire_execute_inline.h" - "ai/monsters/bloodsucker/bloodsucker_vampire.h" - "ai/monsters/bloodsucker/bloodsucker_vampire_hide.h" - "ai/monsters/bloodsucker/bloodsucker_vampire_hide_inline.h" - "ai/monsters/bloodsucker/bloodsucker_vampire_inline.h" - "ai/monsters/boar/boar.cpp" - "ai/monsters/boar/boar.h" - "ai/monsters/boar/boar_script.cpp" - "ai/monsters/boar/boar_state_manager.cpp" - "ai/monsters/boar/boar_state_manager.h" - "ai/monsters/burer/burer.cpp" - "ai/monsters/burer/burer_fast_gravi.cpp" - "ai/monsters/burer/burer_fast_gravi.h" - "ai/monsters/burer/burer.h" - "ai/monsters/burer/burer_script.cpp" - "ai/monsters/burer/burer_state_attack_antiaim.h" - "ai/monsters/burer/burer_state_attack_antiaim_inline.h" - "ai/monsters/burer/burer_state_attack_gravi.h" - "ai/monsters/burer/burer_state_attack_gravi_inline.h" - "ai/monsters/burer/burer_state_attack.h" - "ai/monsters/burer/burer_state_attack_inline.h" - "ai/monsters/burer/burer_state_attack_melee.h" - "ai/monsters/burer/burer_state_attack_melee_inline.h" - "ai/monsters/burer/burer_state_attack_run_around.h" - "ai/monsters/burer/burer_state_attack_run_around_inline.h" - "ai/monsters/burer/burer_state_attack_shield.h" - "ai/monsters/burer/burer_state_attack_shield_inline.h" - "ai/monsters/burer/burer_state_attack_tele.h" - "ai/monsters/burer/burer_state_attack_tele_inline.h" - "ai/monsters/burer/burer_state_manager.cpp" - "ai/monsters/burer/burer_state_manager.h" - "ai/monsters/cat/cat.cpp" - "ai/monsters/cat/cat.h" - "ai/monsters/cat/cat_script.cpp" - "ai/monsters/cat/cat_state_manager.cpp" - "ai/monsters/cat/cat_state_manager.h" - "ai/monsters/chimera/chimera_attack_state.h" - "ai/monsters/chimera/chimera_attack_state_inline.h" - "ai/monsters/chimera/chimera.cpp" - "ai/monsters/chimera/chimera.h" - "ai/monsters/chimera/chimera_script.cpp" - "ai/monsters/chimera/chimera_state_hunting_come_out.h" - "ai/monsters/chimera/chimera_state_hunting_come_out_inline.h" - "ai/monsters/chimera/chimera_state_hunting.h" - "ai/monsters/chimera/chimera_state_hunting_inline.h" - "ai/monsters/chimera/chimera_state_hunting_move_to_cover.h" - "ai/monsters/chimera/chimera_state_hunting_move_to_cover_inline.h" - "ai/monsters/chimera/chimera_state_manager.cpp" - "ai/monsters/chimera/chimera_state_manager.h" - "ai/monsters/chimera/chimera_state_threaten.h" - "ai/monsters/chimera/chimera_state_threaten_inline.h" - "ai/monsters/chimera/chimera_state_threaten_roar.h" - "ai/monsters/chimera/chimera_state_threaten_roar_inline.h" - "ai/monsters/chimera/chimera_state_threaten_steal.h" - "ai/monsters/chimera/chimera_state_threaten_steal_inline.h" - "ai/monsters/chimera/chimera_state_threaten_walk.h" - "ai/monsters/chimera/chimera_state_threaten_walk_inline.h" - "ai/monsters/controller/controller_animation.cpp" - "ai/monsters/controller/controller_animation.h" - "ai/monsters/controller/controller.cpp" - "ai/monsters/controller/controller_direction.cpp" - "ai/monsters/controller/controller_direction.h" - "ai/monsters/controller/controller.h" - "ai/monsters/controller/controller_psy_hit.cpp" - "ai/monsters/controller/controller_psy_hit_effector.cpp" - "ai/monsters/controller/controller_psy_hit_effector.h" - "ai/monsters/controller/controller_psy_hit.h" - "ai/monsters/controller/controller_script.cpp" - "ai/monsters/controller/controller_state_attack_camp.h" - "ai/monsters/controller/controller_state_attack_camp_inline.h" - "ai/monsters/controller/controller_state_attack_fast_move.h" - "ai/monsters/controller/controller_state_attack_fast_move_inline.h" - "ai/monsters/controller/controller_state_attack_fire.h" - "ai/monsters/controller/controller_state_attack_fire_inline.h" - "ai/monsters/controller/controller_state_attack.h" - "ai/monsters/controller/controller_state_attack_hide.h" - "ai/monsters/controller/controller_state_attack_hide_inline.h" - "ai/monsters/controller/controller_state_attack_hide_lite.h" - "ai/monsters/controller/controller_state_attack_hide_lite_inline.h" - "ai/monsters/controller/controller_state_attack_inline.h" - "ai/monsters/controller/controller_state_attack_moveout.h" - "ai/monsters/controller/controller_state_attack_moveout_inline.h" - "ai/monsters/controller/controller_state_control_hit.h" - "ai/monsters/controller/controller_state_control_hit_inline.h" - "ai/monsters/controller/controller_state_manager.cpp" - "ai/monsters/controller/controller_state_manager.h" - "ai/monsters/controller/controller_state_panic.h" - "ai/monsters/controller/controller_tube.h" - "ai/monsters/controller/controller_tube_inline.h" - "ai/monsters/dog/dog.cpp" - "ai/monsters/dog/dog.h" - "ai/monsters/dog/dog_script.cpp" - "ai/monsters/dog/dog_state_manager.cpp" - "ai/monsters/dog/dog_state_manager.h" - "ai/monsters/flesh/flesh.cpp" - "ai/monsters/flesh/flesh.h" - "ai/monsters/flesh/flesh_script.cpp" - "ai/monsters/flesh/flesh_state_manager.cpp" - "ai/monsters/flesh/flesh_state_manager.h" - "ai/monsters/fracture/fracture.cpp" - "ai/monsters/fracture/fracture.h" - "ai/monsters/fracture/fracture_script.cpp" - "ai/monsters/fracture/fracture_state_manager.cpp" - "ai/monsters/fracture/fracture_state_manager.h" - "ai/monsters/group_states/group_state_attack.h" - "ai/monsters/group_states/group_state_attack_inline.h" - "ai/monsters/group_states/group_state_attack_run.h" - "ai/monsters/group_states/group_state_attack_run_inline.h" - "ai/monsters/group_states/group_state_custom.h" - "ai/monsters/group_states/group_state_custom_inline.h" - "ai/monsters/group_states/group_state_eat_drag.h" - "ai/monsters/group_states/group_state_eat_drag_inline.h" - "ai/monsters/group_states/group_state_eat_eat.h" - "ai/monsters/group_states/group_state_eat_eat_inline.h" - "ai/monsters/group_states/group_state_eat.h" - "ai/monsters/group_states/group_state_eat_inline.h" - "ai/monsters/group_states/group_state_hear_danger_sound.h" - "ai/monsters/group_states/group_state_hear_danger_sound_inline.h" - "ai/monsters/group_states/group_state_home_point_attack.h" - "ai/monsters/group_states/group_state_home_point_attack_inline.h" - "ai/monsters/group_states/group_state_panic.h" - "ai/monsters/group_states/group_state_panic_inline.h" - "ai/monsters/group_states/group_state_panic_run.h" - "ai/monsters/group_states/group_state_panic_run_inline.h" - "ai/monsters/group_states/group_state_rest.h" - "ai/monsters/group_states/group_state_rest_idle.h" - "ai/monsters/group_states/group_state_rest_idle_inline.h" - "ai/monsters/group_states/group_state_rest_inline.h" - "ai/monsters/group_states/group_state_squad_move_to_radius.h" - "ai/monsters/group_states/group_state_squad_move_to_radius_inline.h" - "ai/monsters/group_states/state_adapter.h" - "ai/monsters/poltergeist/poltergeist_ability.cpp" - "ai/monsters/poltergeist/poltergeist.cpp" - "ai/monsters/poltergeist/poltergeist_flame_thrower.cpp" - "ai/monsters/poltergeist/poltergeist.h" - "ai/monsters/poltergeist/poltergeist_movement.cpp" - "ai/monsters/poltergeist/poltergeist_movement.h" - "ai/monsters/poltergeist/poltergeist_script.cpp" - "ai/monsters/poltergeist/poltergeist_state_attack_hidden.h" - "ai/monsters/poltergeist/poltergeist_state_attack_hidden_inline.h" - "ai/monsters/poltergeist/poltergeist_state_manager.cpp" - "ai/monsters/poltergeist/poltergeist_state_manager.h" - "ai/monsters/poltergeist/poltergeist_state_rest.h" - "ai/monsters/poltergeist/poltergeist_telekinesis.cpp" - "ai/monsters/pseudodog/pseudodog.cpp" - "ai/monsters/pseudodog/pseudodog.h" - "ai/monsters/pseudodog/pseudodog_psi_effector.cpp" - "ai/monsters/pseudodog/pseudodog_psi_effector.h" - "ai/monsters/pseudodog/pseudodog_script.cpp" - "ai/monsters/pseudodog/pseudodog_state_manager.cpp" - "ai/monsters/pseudodog/pseudodog_state_manager.h" - "ai/monsters/pseudodog/psy_dog_aura.cpp" - "ai/monsters/pseudodog/psy_dog_aura.h" - "ai/monsters/pseudodog/psy_dog.cpp" - "ai/monsters/pseudodog/psy_dog.h" - "ai/monsters/pseudodog/psy_dog_state_manager.cpp" - "ai/monsters/pseudodog/psy_dog_state_manager.h" - "ai/monsters/pseudodog/psy_dog_state_psy_attack.h" - "ai/monsters/pseudodog/psy_dog_state_psy_attack_hide.h" - "ai/monsters/pseudodog/psy_dog_state_psy_attack_hide_inline.h" - "ai/monsters/pseudodog/psy_dog_state_psy_attack_inline.h" - "ai/monsters/pseudogigant/pseudo_gigant.cpp" - "ai/monsters/pseudogigant/pseudo_gigant.h" - "ai/monsters/pseudogigant/pseudogigant_script.cpp" - "ai/monsters/pseudogigant/pseudogigant_state_manager.cpp" - "ai/monsters/pseudogigant/pseudogigant_state_manager.h" - "ai/monsters/pseudogigant/pseudo_gigant_step_effector.cpp" - "ai/monsters/pseudogigant/pseudo_gigant_step_effector.h" - "ai/monsters/rats/ai_rat_animations.cpp" - "ai/monsters/rats/ai_rat_behaviour.cpp" - "ai/monsters/rats/ai_rat.cpp" - "ai/monsters/rats/ai_rat_feel.cpp" - "ai/monsters/rats/ai_rat_fire.cpp" - #"ai/monsters/rats/ai_rat_fsm.cpp" - "ai/monsters/rats/ai_rat.h" - "ai/monsters/rats/ai_rat_impl.h" - "ai/monsters/rats/ai_rat_inline.h" - "ai/monsters/rats/ai_rat_space.h" - "ai/monsters/rats/ai_rat_templates.cpp" - "ai/monsters/rats/rat_state_activation.cpp" - "ai/monsters/rats/rat_state_initialize.cpp" - "ai/monsters/rats/rat_state_switch.cpp" - "ai/monsters/snork/snork.cpp" - "ai/monsters/snork/snork.h" - "ai/monsters/snork/snork_jump.cpp" - "ai/monsters/snork/snork_jump.h" - "ai/monsters/snork/snork_script.cpp" - "ai/monsters/snork/snork_state_manager.cpp" - "ai/monsters/snork/snork_state_manager.h" - "ai/monsters/states/monster_state_attack_camp.h" - "ai/monsters/states/monster_state_attack_camp_inline.h" - "ai/monsters/states/monster_state_attack_camp_stealout.h" - "ai/monsters/states/monster_state_attack_camp_stealout_inline.h" - "ai/monsters/states/monster_state_attack.h" - "ai/monsters/states/monster_state_attack_inline.h" - "ai/monsters/states/monster_state_attack_melee.h" - "ai/monsters/states/monster_state_attack_melee_inline.h" - "ai/monsters/states/monster_state_attack_on_run.h" - "ai/monsters/states/monster_state_attack_on_run_inline.h" - "ai/monsters/states/monster_state_attack_run_attack.h" - "ai/monsters/states/monster_state_attack_run_attack_inline.h" - "ai/monsters/states/monster_state_attack_run.h" - "ai/monsters/states/monster_state_attack_run_inline.h" - "ai/monsters/states/monster_state_controlled_attack.h" - "ai/monsters/states/monster_state_controlled_attack_inline.h" - "ai/monsters/states/monster_state_controlled_follow.h" - "ai/monsters/states/monster_state_controlled_follow_inline.h" - "ai/monsters/states/monster_state_controlled.h" - "ai/monsters/states/monster_state_controlled_inline.h" - "ai/monsters/states/monster_state_eat_drag.h" - "ai/monsters/states/monster_state_eat_drag_inline.h" - "ai/monsters/states/monster_state_eat_eat.h" - "ai/monsters/states/monster_state_eat_eat_inline.h" - "ai/monsters/states/monster_state_eat.h" - "ai/monsters/states/monster_state_eat_inline.h" - "ai/monsters/states/monster_state_find_enemy_angry.h" - "ai/monsters/states/monster_state_find_enemy_angry_inline.h" - "ai/monsters/states/monster_state_find_enemy.h" - "ai/monsters/states/monster_state_find_enemy_inline.h" - "ai/monsters/states/monster_state_find_enemy_look.h" - "ai/monsters/states/monster_state_find_enemy_look_inline.h" - "ai/monsters/states/monster_state_find_enemy_run.h" - "ai/monsters/states/monster_state_find_enemy_run_inline.h" - "ai/monsters/states/monster_state_find_enemy_walk.h" - "ai/monsters/states/monster_state_find_enemy_walk_inline.h" - "ai/monsters/states/monster_state_hear_danger_sound.h" - "ai/monsters/states/monster_state_hear_danger_sound_inline.h" - "ai/monsters/states/monster_state_hear_int_sound.h" - "ai/monsters/states/monster_state_hear_int_sound_inline.h" - "ai/monsters/states/monster_state_help_sound.h" - "ai/monsters/states/monster_state_help_sound_inline.h" - "ai/monsters/states/monster_state_hitted.h" - "ai/monsters/states/monster_state_hitted_hide.h" - "ai/monsters/states/monster_state_hitted_hide_inline.h" - "ai/monsters/states/monster_state_hitted_inline.h" - "ai/monsters/states/monster_state_hitted_moveout.h" - "ai/monsters/states/monster_state_hitted_moveout_inline.h" - "ai/monsters/states/monster_state_home_point_attack.h" - "ai/monsters/states/monster_state_home_point_attack_inline.h" - "ai/monsters/states/monster_state_home_point_danger.h" - "ai/monsters/states/monster_state_home_point_danger_inline.h" - "ai/monsters/states/monster_state_home_point_rest.h" - "ai/monsters/states/monster_state_home_point_rest_inline.h" - "ai/monsters/states/monster_state_panic.h" - "ai/monsters/states/monster_state_panic_inline.h" - "ai/monsters/states/monster_state_panic_run.h" - "ai/monsters/states/monster_state_panic_run_inline.h" - "ai/monsters/states/monster_state_rest_fun.h" - "ai/monsters/states/monster_state_rest_fun_inline.h" - "ai/monsters/states/monster_state_rest.h" - "ai/monsters/states/monster_state_rest_idle.h" - "ai/monsters/states/monster_state_rest_idle_inline.h" - "ai/monsters/states/monster_state_rest_inline.h" - "ai/monsters/states/monster_state_rest_sleep.h" - "ai/monsters/states/monster_state_rest_sleep_inline.h" - "ai/monsters/states/monster_state_rest_walk_graph.h" - "ai/monsters/states/monster_state_rest_walk_graph_inline.h" - "ai/monsters/states/monster_state_smart_terrain_task_graph_walk.h" - "ai/monsters/states/monster_state_smart_terrain_task_graph_walk_inline.h" - "ai/monsters/states/monster_state_smart_terrain_task.h" - "ai/monsters/states/monster_state_smart_terrain_task_inline.h" - "ai/monsters/states/monster_state_squad_rest_follow.h" - "ai/monsters/states/monster_state_squad_rest_follow_inline.h" - "ai/monsters/states/monster_state_squad_rest.h" - "ai/monsters/states/monster_state_squad_rest_inline.h" - "ai/monsters/states/monster_state_steal.h" - "ai/monsters/states/monster_state_steal_inline.h" - "ai/monsters/states/state_custom_action.h" - "ai/monsters/states/state_custom_action_inline.h" - "ai/monsters/states/state_custom_action_look.h" - "ai/monsters/states/state_custom_action_look_inline.h" - "ai/monsters/states/state_data.h" - "ai/monsters/states/state_hide_from_point.h" - "ai/monsters/states/state_hide_from_point_inline.h" - "ai/monsters/states/state_hit_object.h" - "ai/monsters/states/state_hit_object_inline.h" - "ai/monsters/states/state_look_point.h" - "ai/monsters/states/state_look_point_inline.h" - "ai/monsters/states/state_look_unprotected_area.h" - "ai/monsters/states/state_look_unprotected_area_inline.h" - "ai/monsters/states/state_move_around_point.h" - "ai/monsters/states/state_move_around_point_inline.h" - "ai/monsters/states/state_move_to_point.h" - "ai/monsters/states/state_move_to_point_inline.h" - "ai/monsters/states/state_move_to_restrictor.h" - "ai/monsters/states/state_move_to_restrictor_inline.h" - "ai/monsters/states/state_test_look_actor.h" - "ai/monsters/states/state_test_look_actor_inline.h" - "ai/monsters/states/state_test_state.h" - "ai/monsters/states/state_test_state_inline.h" - "ai/monsters/tushkano/tushkano.cpp" - "ai/monsters/tushkano/tushkano.h" - "ai/monsters/tushkano/tushkano_script.cpp" - "ai/monsters/tushkano/tushkano_state_manager.cpp" - "ai/monsters/tushkano/tushkano_state_manager.h" - "ai/monsters/zombie/zombie.cpp" - "ai/monsters/zombie/zombie.h" - "ai/monsters/zombie/zombie_script.cpp" - "ai/monsters/zombie/zombie_state_attack_run.h" - "ai/monsters/zombie/zombie_state_attack_run_inline.h" - "ai/monsters/zombie/zombie_state_manager.cpp" - "ai/monsters/zombie/zombie_state_manager.h" - "ai/phantom/phantom.cpp" - "ai/phantom/phantom.h" - "ai/stalker/ai_stalker_cover.cpp" - "ai/stalker/ai_stalker.cpp" - "ai/stalker/ai_stalker_debug.cpp" - "ai/stalker/ai_stalker_events.cpp" - "ai/stalker/ai_stalker_feel.cpp" - "ai/stalker/ai_stalker_fire.cpp" - "ai/stalker/ai_stalker.h" - "ai/stalker/ai_stalker_impl.h" - "ai/stalker/ai_stalker_inline.h" - "ai/stalker/ai_stalker_misc.cpp" - "ai/stalker/ai_stalker_script.cpp" - "ai/stalker/ai_stalker_script_entity.cpp" - "ai/stalker/ai_stalker_space.h" - "ai/trader/ai_trader.cpp" - "ai/trader/ai_trader.h" - "ai/trader/ai_trader_script.cpp" - "ai/trader/trader_animation.cpp" - "ai/trader/trader_animation.h" - "CdkeyDecode/base32.c" - "CdkeyDecode/base32.h" - "CdkeyDecode/cdkeydecode.c" - "CdkeyDecode/cdkeydecode.h" - "ik/aint.cxx" - "ik/aint.h" - "ik/Dof7control.cpp" - "ik/Dof7control.h" - "ik/eqn.cxx" - "ik/eqn.h" - "ik/eulersolver.cxx" - "ik/eulersolver.h" - "ik/IKLimb.cpp" - "ik/IKLimb.h" - "ik/jtlimits.cxx" - "ik/jtlimits.h" - "ik/limb.cxx" - "ik/limb.h" - "ik/math3d.cpp" - "ik/math3d.h" - "ik/mathTrig.cpp" - "ik/mathTrig.h" - "ui/ArtefactDetectorUI.cpp" - "ui/ArtefactDetectorUI.h" - #"ui/CExtraContentFilter.cpp" - #"ui/CExtraContentFilter.h" - "ui/ChangeWeatherDialog.cpp" - "ui/ChangeWeatherDialog.hpp" - "ui/FactionState.cpp" - "ui/FactionState.h" - "ui/FactionState_inline.h" - "ui/FractionState.cpp" - "ui/FractionState.h" - "ui/FractionState_inline.h" - "ui/KillMessageStruct.h" - "ui/map_hint.cpp" - "ui/map_hint.h" - "ui/MMSound.cpp" - "ui/MMSound.h" - "ui/Restrictions.cpp" - "ui/Restrictions.h" - "ui/ServerList.cpp" - "ui/ServerList_GameSpy_func.cpp" - "ui/ServerList.h" - "ui/TeamInfo.cpp" - "ui/TeamInfo.h" - "ui/UIAchievements.cpp" - "ui/UIAchievements.h" - "ui/UIActorInfo.cpp" - "ui/UIActorInfo.h" - "ui/UIActorMenu_action.cpp" - "ui/UIActorMenu.cpp" - "ui/UIActorMenuDeadBodySearch.cpp" - "ui/UIActorMenu.h" - "ui/UIActorMenuInitialize.cpp" - "ui/UIActorMenuInventory.cpp" - "ui/UIActorMenu_script.cpp" - "ui/UIActorMenuTrade.cpp" - "ui/UIActorMenuUpgrade.cpp" - "ui/UIActorStateInfo.cpp" - "ui/UIActorStateInfo.h" - "ui/ui_af_params.cpp" - "ui/ui_af_params.h" - "ui/UIArtefactPanel.cpp" - "ui/UIArtefactPanel.h" - "ui/UIBoosterInfo.cpp" - "ui/UIBoosterInfo.h" - "ui/UIBuyWeaponTab.cpp" - "ui/UIBuyWeaponTab.h" - "ui/UIBuyWndBase.h" - "ui/UIBuyWndShared.cpp" - "ui/UIBuyWndShared.h" - "ui/UICarPanel.cpp" - "ui/UICarPanel.h" - "ui/UICDkey.cpp" - "ui/UICDkey.h" - "ui/UICellCustomItems.cpp" - "ui/UICellCustomItems.h" - "ui/UICellItem.cpp" - "ui/UICellItemFactory.cpp" - "ui/UICellItemFactory.h" - "ui/UICellItem.h" - "ui/UIChangeMap.cpp" - "ui/UIChangeMap.h" - "ui/UICharacterInfo.cpp" - "ui/UICharacterInfo.h" - "ui/UIChatWnd.cpp" - "ui/UIChatWnd.h" - "ui/UIColorAnimatorWrapper.cpp" - "ui/UIColorAnimatorWrapper.h" - "ui/UIDebugFonts.cpp" - "ui/UIDebugFonts.h" - "ui/UIDemoPlayControl.cpp" - "ui/UIDemoPlayControl.h" - "ui/UIDialogWnd.cpp" - "ui/UIDialogWnd.h" - "ui/UIDiaryWnd.h" - "ui/UIDragDropListEx.cpp" - "ui/UIDragDropListEx.h" - "ui/UIDragDropReferenceList.cpp" - "ui/UIDragDropReferenceList.h" - "ui/UIEditKeyBind.cpp" - "ui/UIEditKeyBind.h" - "ui/UIFactionWarWnd.cpp" - "ui/UIFactionWarWnd.h" - #"ui/UIFrags2.cpp" - #"ui/UIFrags2.h" - #"ui/UIFrags.cpp" - #"ui/UIFrags.h" - #"ui/UIFrameLine.cpp" - #"ui/UIFrameLine.h" - "ui/UIGameLog.cpp" - "ui/UIGameLog.h" - "ui/UIGameTutorial.cpp" - "ui/UIGameTutorial.h" - "ui/UIGameTutorialSimpleItem.cpp" - "ui/UIGameTutorialVideoItem.cpp" - "ui/UIHelper.cpp" - "ui/UIHelper.h" - "ui/UIHudStatesWnd.cpp" - "ui/UIHudStatesWnd.h" - "ui/UIInventoryUpgradeWnd_add.cpp" - "ui/UIInventoryUpgradeWnd.cpp" - "ui/UIInventoryUpgradeWnd.h" - "ui/UIInventoryUtilities.cpp" - "ui/UIInventoryUtilities.h" - "ui/UIInvUpgrade.cpp" - "ui/UIInvUpgrade.h" - "ui/UIInvUpgradeInfo.cpp" - "ui/UIInvUpgradeInfo.h" - "ui/UIInvUpgradeProperty.cpp" - "ui/UIInvUpgradeProperty.h" - "ui/UIItemInfo.cpp" - "ui/UIItemInfo.h" - "ui/UIKeyBinding.cpp" - "ui/UIKeyBinding.h" - "ui/UIKickPlayer.cpp" - "ui/UIKickPlayer.h" - "ui/UILabel.cpp" - "ui/UILabel.h" - #"ui/UIListBox_script.cpp" - #"ui/UIListItemAdv.cpp" - #"ui/UIListItemAdv.h" - #"ui/UIListItemEx.cpp" - #"ui/UIListItemEx.h" - #"ui/UIListItem.cpp" - #"ui/UIListItem.h" - "ui/UIListItemServer.cpp" - "ui/UIListItemServer.h" - #"ui/UIListWnd.cpp" - #"ui/UIListWnd.h" - #"ui/UIListWnd_inline.h" - #"ui/UIListWnd_script.cpp" - "ui/UILoadingScreen.cpp" - "ui/UILoadingScreen.h" - "ui/UILoadingScreenHardcoded.h" - "ui/UILogsWnd.cpp" - "ui/UILogsWnd.h" - "ui/UIMainIngameWnd.cpp" - "ui/UIMainIngameWnd.h" - "ui/UIMap.cpp" - "ui/UIMapDesc.cpp" - "ui/UIMapDesc.h" - "ui/UIMapFilters.cpp" - "ui/UIMapFilters.h" - "ui/UIMap.h" - "ui/UIMapInfo.cpp" - "ui/UIMapInfo.h" - "ui/UIMapInfo_script.cpp" - "ui/UIMapLegend.cpp" - "ui/UIMapLegend.h" - "ui/UIMapList.cpp" - "ui/UIMapList.h" - "ui/UIMapWnd2.cpp" - "ui/UIMapWndActions.cpp" - "ui/UIMapWndActions.h" - "ui/UIMapWndActionsSpace.h" - "ui/UIMapWnd.cpp" - "ui/UIMapWnd.h" - "ui/UIMessageBoxEx.cpp" - "ui/UIMessageBoxEx.h" - "ui/UIMessagesWindow.cpp" - "ui/UIMessagesWindow.h" - "ui/UIMMShniaga.cpp" - "ui/UIMMShniaga.h" - "ui/UIMoneyIndicator.cpp" - "ui/UIMoneyIndicator.h" - "ui/UIMotionIcon.cpp" - "ui/UIMotionIcon.h" - "ui/UIMPAdminMenu.cpp" - "ui/UIMPAdminMenu.h" - "ui/UIMPChangeMapAdm.cpp" - "ui/UIMPChangeMapAdm.h" - "ui/UIMpItemsStoreWnd.cpp" - "ui/UIMpItemsStoreWnd.h" - "ui/UIMPPlayersAdm.cpp" - "ui/UIMPPlayersAdm.h" - "ui/UIMPServerAdm.cpp" - "ui/UIMPServerAdm.h" - "ui/UIMpTradeWnd.cpp" - "ui/UIMpTradeWnd.h" - "ui/UIMpTradeWnd_init.cpp" - "ui/UIMpTradeWnd_items.cpp" - "ui/UIMpTradeWnd_misc.cpp" - "ui/UIMpTradeWnd_trade.cpp" - "ui/UIMpTradeWnd_wpn.cpp" - "ui/UINewsItemWnd.cpp" - "ui/UINewsItemWnd.h" - "ui/UIOptConCom.cpp" - "ui/UIOptConCom.h" - "ui/UIOutfitInfo.cpp" - "ui/UIOutfitInfo.h" - "ui/UIOutfitSlot.cpp" - "ui/UIOutfitSlot.h" - "ui/UIPdaKillMessage.cpp" - "ui/UIPdaKillMessage.h" - "ui/UIPdaMsgListItem.cpp" - "ui/UIPdaMsgListItem.h" - "ui/UIPdaWnd.cpp" - "ui/UIPdaWnd.h" - "ui/UIRankFaction.cpp" - "ui/UIRankFaction.h" - "ui/UIRankIndicator.cpp" - "ui/UIRankIndicator.h" - "ui/UIRankingWnd.cpp" - "ui/UIRankingWnd.h" - "ui/UIScriptWnd.cpp" - "ui/UIScriptWnd.h" - "ui/UIScriptWnd_script.cpp" - "ui/UISecondTaskWnd.cpp" - "ui/UISecondTaskWnd.h" - "ui/UIServerInfo.cpp" - "ui/UIServerInfo.h" - "ui/UISkinSelector.cpp" - "ui/UISkinSelector.h" - "ui/UISleepStatic.cpp" - "ui/UISleepStatic.h" - "ui/UISpawnWnd.cpp" - "ui/UISpawnWnd.h" - "ui/UISpeechMenu.cpp" - "ui/UISpeechMenu.h" - "ui/UIStatix.cpp" - "ui/UIStatix.h" - "ui/UIStats.cpp" - "ui/UIStats.h" - "ui/UIStatsIcon.cpp" - "ui/UIStatsIcon.h" - "ui/UIStatsPlayerInfo.cpp" - "ui/UIStatsPlayerInfo.h" - "ui/UIStatsPlayerList.cpp" - "ui/UIStatsPlayerList.h" - "ui/UITabButtonMP.cpp" - "ui/UITabButtonMP.h" - "ui/UITalkDialogWnd.cpp" - "ui/UITalkDialogWnd.h" - "ui/UITalkWnd.cpp" - "ui/UITalkWnd.h" - "ui/UITaskWnd.cpp" - "ui/UITaskWnd.h" - #"ui/UITextBanner.cpp" - #"ui/UITextBanner.h" - "ui/UITextVote.cpp" - "ui/UITextVote.h" - "ui/UITradeBar.cpp" - "ui/UITradeBar.h" - "ui/UITradeWnd.cpp" - "ui/UITradeWnd.h" - "ui/UIVersionList.cpp" - "ui/UIVersionList.h" - "ui/UIVote.cpp" - "ui/UIVote.h" - "ui/UIVoteStatusWnd.cpp" - "ui/UIVoteStatusWnd.h" - "ui/UIVotingCategory.cpp" - "ui/UIVotingCategory.h" - "ui/UIWarState.cpp" - "ui/UIWarState.h" - "ui/UIWeightBar.cpp" - "ui/UIWeightBar.h" - "ui/UIWindow_script.cpp" - "ui/UIWpnParams.cpp" - "ui/UIWpnParams.h" - "ui/UIXmlInit.cpp" - "ui/UIXmlInit.h" - "gamespy/GameSpy_QR2_callbacks.cpp" - "gamespy/GameSpy_QR2_callbacks.h" - "../xrServerEntities/ai_sounds.h" - "../xrServerEntities/alife_human_brain.cpp" - "../xrServerEntities/alife_human_brain.h" - "../xrServerEntities/alife_human_brain_inline.h" - "../xrServerEntities/alife_monster_brain.cpp" - "../xrServerEntities/alife_monster_brain.h" - "../xrServerEntities/alife_monster_brain_inline.h" - "../xrServerEntities/alife_movement_manager_holder.h" - "../xrServerEntities/alife_space.cpp" - "../xrServerEntities/alife_space.h" - "../xrServerEntities/character_info.cpp" - "../xrServerEntities/character_info_defs.h" - "../xrServerEntities/character_info.h" - "../xrServerEntities/clsid_game.h" - "../xrServerEntities/game_base_space.h" - "../xrServerEntities/gametype_chooser.cpp" - "../xrServerEntities/gametype_chooser.h" - "../xrServerEntities/InfoPortionDefs.h" - "../xrServerEntities/inventory_space.h" - "../xrServerEntities/ItemListTypes.h" - "../xrServerEntities/object_factory.cpp" - "../xrServerEntities/object_factory.h" - "../xrServerEntities/object_factory_impl.h" - "../xrServerEntities/object_factory_inline.h" - "../xrServerEntities/object_factory_register.cpp" - "../xrServerEntities/object_factory_script.cpp" - "../xrServerEntities/object_factory_space.h" - "../xrServerEntities/object_item_abstract.h" - "../xrServerEntities/object_item_abstract_inline.h" - "../xrServerEntities/object_item_client_server.h" - "../xrServerEntities/object_item_client_server_inline.h" - "../xrServerEntities/object_item_script.cpp" - "../xrServerEntities/object_item_script.h" - "../xrServerEntities/object_item_single.h" - "../xrServerEntities/object_item_single_inline.h" - "../xrServerEntities/pch_script.cpp" - "../xrServerEntities/pch_script.h" - "../xrServerEntities/PHNetState.h" - "../xrServerEntities/PHSynchronize.h" - "../xrServerEntities/PropertiesListHelper.h" - "../xrServerEntities/PropertiesListTypes.h" - "../xrServerEntities/restriction_space.h" - "../xrServerEntities/script_fcolor_script.cpp" - "../xrServerEntities/script_flags_script.cpp" - "../xrServerEntities/script_fmatrix_script.cpp" - "../xrServerEntities/script_fvector_script.cpp" - "../xrServerEntities/script_ini_file.cpp" - "../xrServerEntities/script_ini_file.h" - "../xrServerEntities/script_ini_file_script.cpp" - "../xrServerEntities/script_net_packet_script.cpp" - "../xrServerEntities/script_reader_script.cpp" - "../xrServerEntities/script_rtoken_list.h" - "../xrServerEntities/script_rtoken_list_inline.h" - "../xrServerEntities/script_rtoken_list_script.cpp" - "../xrServerEntities/script_sound_type_script.cpp" - "../xrServerEntities/script_token_list.cpp" - "../xrServerEntities/script_token_list.h" - "../xrServerEntities/script_token_list_script.cpp" - "../xrServerEntities/script_value_container.h" - "../xrServerEntities/script_value_container_impl.h" - "../xrServerEntities/ShapeData.h" - "../xrServerEntities/shared_data.h" - "../xrServerEntities/smart_cast.cpp" - "../xrServerEntities/smart_cast.h" - "../xrServerEntities/smart_cast_impl0.h" - "../xrServerEntities/smart_cast_impl1.h" - "../xrServerEntities/smart_cast_impl2.h" - "../xrServerEntities/smart_cast_stats.cpp" - "../xrServerEntities/specific_character.cpp" - "../xrServerEntities/specific_character.h" - "../xrServerEntities/xml_str_id_loader.h" - "../xrServerEntities/xrEProps.h" - "../xrServerEntities/xrMessages.h" - "../xrServerEntities/xrServer_Factory.cpp" - "../xrServerEntities/xrServer_Object_Base.cpp" - "../xrServerEntities/xrServer_Object_Base.h" - "../xrServerEntities/xrServer_Objects_Abstract.cpp" - "../xrServerEntities/xrServer_Objects_Abstract.h" - "../xrServerEntities/xrServer_Objects_ALife_All.h" - "../xrServerEntities/xrServer_Objects_ALife.cpp" - "../xrServerEntities/xrServer_Objects_ALife.h" - "../xrServerEntities/xrServer_Objects_ALife_Items.cpp" - "../xrServerEntities/xrServer_Objects_ALife_Items.h" - "../xrServerEntities/xrServer_Objects_ALife_Items_script2.cpp" - "../xrServerEntities/xrServer_Objects_ALife_Items_script3.cpp" - "../xrServerEntities/xrServer_Objects_ALife_Items_script.cpp" - "../xrServerEntities/xrServer_Objects_ALife_Monsters.cpp" - "../xrServerEntities/xrServer_Objects_ALife_Monsters.h" - "../xrServerEntities/xrServer_Objects_ALife_Monsters_script2.cpp" - "../xrServerEntities/xrServer_Objects_ALife_Monsters_script3.cpp" - "../xrServerEntities/xrServer_Objects_ALife_Monsters_script4.cpp" - "../xrServerEntities/xrServer_Objects_ALife_Monsters_script.cpp" - "../xrServerEntities/xrServer_Objects_ALife_script2.cpp" - "../xrServerEntities/xrServer_Objects_ALife_script3.cpp" - "../xrServerEntities/xrServer_Objects_ALife_script.cpp" - "../xrServerEntities/xrServer_Objects_Alife_Smartcovers.cpp" - "../xrServerEntities/xrServer_Objects_Alife_Smartcovers.h" - "../xrServerEntities/xrServer_Objects_Alife_Smartcovers_script.cpp" - "../xrServerEntities/xrServer_Objects.cpp" - "../xrServerEntities/xrServer_Objects.h" - "../xrServerEntities/xrServer_Objects_script2.cpp" - "../xrServerEntities/xrServer_Objects_script.cpp" - "../xrServerEntities/xrServer_script_macroses.h" - "../xrServerEntities/xrServer_Space.h" +target_sources(xrGame PRIVATE + abstract_location_selector.h + abstract_location_selector_inline.h + abstract_path_manager.h + abstract_path_manager_inline.h + account_manager_console.cpp + account_manager_console.h + account_manager.cpp + account_manager.h + account_manager_script.cpp + accumulative_states.h + action_base.h + action_base_inline.h + action_base_script.cpp + action_management_config.h + action_planner_action.h + action_planner_action_inline.h + action_planner_action_script.cpp + action_planner_action_script.h + action_planner_action_script_inline.h + action_planner.h + action_planner_inline.h + action_planner_script.cpp + action_planner_script.h + action_planner_script_inline.h + action_script_base.h + action_script_base_inline.h + ActivatingCharCollisionDelay.cpp + ActivatingCharCollisionDelay.h + ActorAnimation.cpp + ActorAnimation.h + actor_anim_defs.h + ActorCameras.cpp + actor_communication.cpp + ActorCondition.cpp + ActorCondition.h + Actor.cpp + actor_defs.h + ActorEffector.cpp + ActorEffector.h + ActorEffector_script.cpp + Actor_Events.cpp + Actor_Feel.cpp + Actor_Flags.h + ActorFollowers.cpp + ActorFollowers.h + Actor.h + ActorHelmet.cpp + ActorHelmet.h + ActorBackpack.cpp + ActorBackpack.h + ActorInput.cpp + actor_input_handler.cpp + actor_input_handler.h + actor_memory.cpp + actor_memory.h + ActorMountedWeapon.cpp + Actor_Movement.cpp + actor_mp_client.cpp + actor_mp_client_export.cpp + actor_mp_client.h + actor_mp_client_import.cpp + actor_mp_server.cpp + actor_mp_server_export.cpp + actor_mp_server.h + actor_mp_server_import.cpp + actor_mp_state.cpp + actor_mp_state.h + actor_mp_state_inline.h + Actor_Network.cpp + actor_script.cpp + Actor_Sleep.cpp + actor_statistic_defs.h + actor_statistic_mgr.cpp + actor_statistic_mgr.h + ActorVehicle.cpp + Actor_Weapon.cpp + AdvancedDetector.cpp + AdvancedDetector.h + agent_corpse_manager.cpp + agent_corpse_manager.h + agent_corpse_manager_inline.h + agent_enemy_manager.cpp + agent_enemy_manager.h + agent_enemy_manager_inline.h + agent_explosive_manager.cpp + agent_explosive_manager.h + agent_explosive_manager_inline.h + agent_location_manager.cpp + agent_location_manager.h + agent_location_manager_inline.h + agent_manager_actions.cpp + agent_manager_actions.h + agent_manager.cpp + agent_manager.h + agent_manager_inline.h + agent_manager_planner.cpp + agent_manager_planner.h + agent_manager_properties.cpp + agent_manager_properties.h + agent_manager_properties_inline.h + agent_manager_space.h + agent_member_manager.cpp + agent_member_manager.h + agent_member_manager_inline.h + agent_memory_manager.cpp + agent_memory_manager.h + agent_memory_manager_inline.h + ai_crow_script.cpp + ai_debug.h + ai_debug_variables.cpp + ai_debug_variables.h + aimers_base.cpp + aimers_base.h + aimers_base_inline.h + aimers_bone.h + aimers_bone_inline.h + aimers_weapon.cpp + aimers_weapon.h + aimers_weapon_inline.h + ai_monster_space.h + ai_obstacle.cpp + ai_obstacle.h + ai_obstacle_inline.h + AI_PhraseDialogManager.cpp + AI_PhraseDialogManager.h + ai_sounds.cpp + ai_space.cpp + ai_space.h + ai_space_inline.h + ai_stalker_alife.cpp + alife_abstract_registry.h + alife_abstract_registry_inline.h + alife_anomalous_zone.cpp + alife_combat_manager.cpp + alife_combat_manager.h + alife_combat_manager_inline.h + alife_communication_manager.cpp + alife_communication_manager.h + alife_communication_manager_inline.h + alife_communication_space.h + alife_creature_abstract.cpp + alife_dynamic_object.cpp + alife_graph_registry.cpp + alife_graph_registry.h + alife_graph_registry_inline.h + alife_group_abstract.cpp + alife_group_registry.cpp + alife_group_registry.h + alife_group_registry_inline.h + alife_human_abstract.cpp + alife_human_brain_save.h + alife_human_brain_script.cpp + alife_human_object_handler.cpp + alife_human_object_handler.h + alife_human_object_handler_inline.h + alife_human_object_handler_save.h + alife_interaction_manager.cpp + alife_interaction_manager.h + alife_interaction_manager_inline.h + alife_level_registry.h + alife_level_registry_inline.h + alife_monster_abstract.cpp + alife_monster_base.cpp + alife_monster_brain_script.cpp + alife_monster_detail_path_manager.cpp + alife_monster_detail_path_manager.h + alife_monster_detail_path_manager_inline.h + alife_monster_detail_path_manager_script.cpp + alife_monster_movement_manager.cpp + alife_monster_movement_manager.h + alife_monster_movement_manager_inline.h + alife_monster_movement_manager_script.cpp + alife_monster_patrol_path_manager.cpp + alife_monster_patrol_path_manager.h + alife_monster_patrol_path_manager_inline.h + alife_monster_patrol_path_manager_script.cpp + alife_object.cpp + alife_object_registry.cpp + alife_object_registry.h + alife_object_registry_inline.h + alife_online_offline_group_brain.cpp + alife_online_offline_group_brain.h + alife_online_offline_group_brain_inline.h + alife_online_offline_group.cpp + alife_registry_container_composition.h + alife_registry_container.cpp + alife_registry_container.h + alife_registry_container_inline.h + alife_registry_container_space.h + alife_registry_wrapper.h + alife_registry_wrappers.h + alife_schedule_registry.cpp + alife_schedule_registry.h + alife_schedule_registry_inline.h + alife_simulator_base2.cpp + alife_simulator_base.cpp + alife_simulator_base.h + alife_simulator_base_inline.h + alife_simulator.cpp + alife_simulator.h + alife_simulator_header.cpp + alife_simulator_header.h + alife_simulator_header_inline.h + alife_simulator_script.cpp + alife_smart_terrain_registry.cpp + alife_smart_terrain_registry.h + alife_smart_terrain_registry_inline.h + alife_smart_terrain_task.cpp + alife_smart_terrain_task.h + alife_smart_terrain_task_inline.h + alife_smart_terrain_task_script.cpp + alife_smart_zone.cpp + alife_spawn_registry.cpp + alife_spawn_registry.h + alife_spawn_registry_header.cpp + alife_spawn_registry_header.h + alife_spawn_registry_header_inline.h + alife_spawn_registry_inline.h + alife_spawn_registry_spawn.cpp + alife_storage_manager.cpp + alife_storage_manager.h + alife_storage_manager_inline.h + alife_story_registry.cpp + alife_story_registry.h + alife_story_registry_inline.h + alife_surge_manager.cpp + alife_surge_manager.h + alife_surge_manager_inline.h + alife_switch_manager.cpp + alife_switch_manager.h + alife_switch_manager_inline.h + alife_time_manager.cpp + alife_time_manager.h + alife_time_manager_inline.h + alife_trader_abstract.cpp + alife_trader.cpp + alife_update_manager.cpp + alife_update_manager.h + AmebaZone.cpp + AmebaZone.h + ammunition_groups.cpp + ammunition_groups.h + animation_movement_controller.cpp + animation_movement_controller.h + animation_script_callback.cpp + animation_script_callback.h + animation_utils.cpp + animation_utils.h + #AnselManager.cpp + #AnselManager.h + anticheat_dumpable_object.h + antirad.cpp + antirad.h + artefact_activation.cpp + artefact_activation.h + Artefact.cpp + Artefact.h + artefact_script.cpp + atlas_stalkercoppc_v1.c + atlas_stalkercoppc_v1.h + #atlas_stalkercs_v1.c + #atlas_stalkercs_v1.h + atlas_submit_queue.cpp + atlas_submit_queue.h + attachable_item.cpp + attachable_item.h + attachable_item_inline.h + attachment_owner.cpp + attachment_owner.h + autosave_manager.cpp + autosave_manager.h + autosave_manager_inline.h + awards_store.cpp + awards_store.h + base_client_classes_script.cpp + base_client_classes_wrappers.h + BastArtifact.cpp + BastArtifact.h + battleye.h + #battleye_system.cpp + #battleye_system.h + best_scores_helper.cpp + best_scores_helper.h + best_scores_store.cpp + best_scores_store.h + BlackDrops.cpp + BlackDrops.h + BlackGraviArtifact.cpp + BlackGraviArtifact.h + black_list.cpp + black_list.h + BlockAllocator.h + Bolt.cpp + Bolt.h + bone_groups.cpp + bone_groups.h + BoneProtections.cpp + BoneProtections.h + BottleItem.cpp + BottleItem.h + BreakableObject.cpp + BreakableObject.h + CameraEffector.cpp + CameraEffector.h + CameraFirstEye.cpp + CameraFirstEye.h + CameraLook.cpp + CameraLook.h + CameraRecoil.h + CaptureBoneCallback.h + CarCameras.cpp + Car.cpp + CarDamageParticles.cpp + CarDamageParticles.h + CarDoors.cpp + CarExhaust.cpp + Car.h + CarInput.cpp + CarLights.cpp + CarLights.h + car_memory.cpp + car_memory.h + CarScript.cpp + CarSound.cpp + CarWeapon.cpp + CarWeapon.h + CarWheels.cpp + cdkey_ban_list.cpp + cdkey_ban_list.h + character_community.cpp + character_community.h + character_hit_animations.cpp + character_hit_animations.h + character_hit_animations_params.h + CharacterPhysicsSupport.cpp + CharacterPhysicsSupport.h + character_rank.cpp + character_rank.h + character_reputation.cpp + character_reputation.h + character_shell_control.cpp + character_shell_control.h + client_spawn_manager.cpp + client_spawn_manager.h + client_spawn_manager_inline.h + client_spawn_manager_script.cpp + ClimableObject.cpp + ClimableObject.h + command_switch_counter.h + configs_common.cpp + configs_common.h + configs_dumper.cpp + configs_dumper.h + configs_dump_verifyer.cpp + configs_dump_verifyer.h + console_commands.cpp + console_commands_mp.cpp + console_registrator_script.cpp + ContextMenu.cpp + ContextMenu.h + control_action.h + control_action_inline.h + controller_state_panic_inline.h + cover_evaluators.cpp + cover_evaluators.h + cover_evaluators_inline.h + cover_manager.cpp + cover_manager.h + cover_manager_inline.h + cover_point.h + cover_point_inline.h + cover_point_script.cpp + cta_game_artefact_activation.cpp + cta_game_artefact_activation.h + cta_game_artefact.cpp + cta_game_artefact.h + CustomDetector.cpp + CustomDetector.h + CustomMonster.cpp + CustomMonster.h + CustomMonster_inline.h + CustomMonster_VCPU.cpp + CustomOutfit_script.cpp + CustomOutfit.cpp + CustomOutfit.h + CustomRocket.cpp + CustomRocket.h + CustomZone.cpp + CustomZone.h + CycleConstStorage.h + DamagableItem.cpp + DamagableItem.h + damage_manager.cpp + damage_manager.h + danger_cover_location.cpp + danger_cover_location.h + danger_cover_location_inline.h + danger_explosive.cpp + danger_explosive.h + danger_explosive_inline.h + danger_location.cpp + danger_location.h + danger_location_inline.h + danger_manager.cpp + danger_manager.h + danger_manager_inline.h + danger_object.cpp + danger_object.h + danger_object_inline.h + danger_object_location.cpp + danger_object_location.h + danger_object_location_inline.h + date_time.cpp + date_time.h + DBG_Car.cpp + dbg_draw_frustum.cpp + death_anims.cpp + death_anims.h + death_anims_predicates.cpp + debug_renderer.cpp + debug_renderer.h + debug_renderer_inline.h + debug_text_tree.cpp + debug_text_tree.h + debug_text_tree_inline.h + DelayedActionFuse.cpp + DelayedActionFuse.h + DemoInfo.cpp + DemoInfo.h + DemoInfo_Loader.cpp + DemoInfo_Loader.h + DemoPLay_Control.cpp + DemoPlay_Control.h + DestroyablePhysicsObject.cpp + DestroyablePhysicsObject.h + detail_path_builder.h + detail_path_manager.cpp + detail_path_manager.h + detail_path_manager_inline.h + detail_path_manager_smooth.cpp + detail_path_manager_space.h + doors_actor.cpp + doors_actor.h + doors_door.cpp + doors_door.h + doors.h + doors_manager.cpp + doors_manager.h + double_shot_double_kill.cpp + double_shot_double_kill.h + DummyArtifact.cpp + DummyArtifact.h + #DynamicHeightMap.cpp + #DynamicHeightMap.h + dynamic_obstacles_avoider.cpp + dynamic_obstacles_avoider.h + dynamic_obstacles_avoider_inline.h + eatable_item.cpp + eatable_item.h + eatable_item_object.cpp + eatable_item_object.h + ef_base.h + EffectorBobbing.cpp + EffectorBobbing.h + EffectorFall.cpp + EffectorFall.h + EffectorShot.cpp + EffectorShot.h + EffectorShotX.cpp + EffectorShotX.h + EffectorZoomInertion.cpp + EffectorZoomInertion.h + ef_pattern.cpp + ef_pattern.h + ef_primary.cpp + ef_primary.h + ef_storage.cpp + ef_storage.h + ef_storage_inline.h + ef_storage_script.cpp + ElectricBall.cpp + ElectricBall.h + EliteDetector.cpp + EliteDetector.h + encyclopedia_article.cpp + encyclopedia_article_defs.h + encyclopedia_article.h + enemy_manager.cpp + enemy_manager.h + enemy_manager_inline.h + entity_alive.cpp + entity_alive.h + entity_alive_inline.h + EntityCondition.cpp + EntityCondition.h + EntityCondition_script.cpp + Entity.cpp + Entity.h + event_conditions_collection.cpp + event_conditions_collection.h + ExoOutfit.cpp + ExoOutfit.h + Explosive.cpp + Explosive.h + ExplosiveItem.cpp + ExplosiveItem.h + ExplosiveRocket.cpp + ExplosiveRocket.h + ExplosiveScript.cpp + F1.h + FadedBall.cpp + FadedBall.h + faster_than_bullets_time.cpp + faster_than_bullets_time.h + filereceiver_node.cpp + filereceiver_node.h + filetransfer_common.h + file_transfer.cpp + file_transfer.h + filetransfer_node.cpp + filetransfer_node.h + firedeps.h + fire_disp_controller.cpp + fire_disp_controller.h + first_bullet_controller.cpp + first_bullet_controller.h + flare.cpp + flare.h + FoodItem.cpp + FoodItem.h + FryupZone.cpp + FryupZone.h + fs_registrator_script.cpp + GalantineArtifact.cpp + GalantineArtifact.h + game_base.cpp + game_base.h + game_base_kill_type.h + game_base_menu_events.h + game_base_script.cpp + game_cl_artefacthunt.cpp + game_cl_artefacthunt.h + game_cl_artefacthunt_snd_msg.h + game_cl_base.cpp + game_cl_base.h + game_cl_base_script.cpp + game_cl_base_weapon_usage_statistic.cpp + game_cl_base_weapon_usage_statistic.h + game_cl_base_weapon_usage_statistic_save.cpp + game_cl_capturetheartefact_buywnd.cpp + game_cl_capture_the_artefact_captions_manager.cpp + game_cl_capture_the_artefact_captions_manager.h + game_cl_capture_the_artefact.cpp + game_cl_capture_the_artefact.h + game_cl_capture_the_artefact_messages_menu.cpp + game_cl_capturetheartefact_snd_msg.h + game_cl_deathmatch_buywnd.cpp + game_cl_deathmatch.cpp + game_cl_deathmatch.h + game_cl_deathmatch_snd_messages.h + game_cl_mp.cpp + game_cl_mp.h + game_cl_mp_messages_menu.cpp + game_cl_mp_messages_menu.h + game_cl_mp_script.cpp + game_cl_mp_script.h + game_cl_mp_snd_messages.cpp + game_cl_mp_snd_messages.h + game_cl_single.cpp + game_cl_single.h + game_cl_teamdeathmatch.cpp + game_cl_teamdeathmatch.h + game_cl_teamdeathmatch_snd_messages.h + game_events_handler.h + game_location_selector.h + game_location_selector_inline.h + game_news.cpp + game_news.h + GameObject.cpp + GameObject.h + game_object_space.h + game_path_manager.h + game_path_manager_inline.h + GamePersistent.cpp + GamePersistent.h + game_state_accumulator.cpp + game_state_accumulator.h + game_state_accumulator_inline.h + game_state_accumulator_state_register.cpp + game_sv_artefacthunt.cpp + game_sv_artefacthunt.h + game_sv_artefacthunt_process_event.cpp + game_sv_base_console_vars.cpp + game_sv_base_console_vars.h + game_sv_base.cpp + game_sv_base.h + game_sv_base_script.cpp + game_sv_capture_the_artefact_buy_event.cpp + game_sv_capture_the_artefact.cpp + game_sv_capture_the_artefact.h + game_sv_capture_the_artefact_myteam_impl.cpp + game_sv_capture_the_artefact_process_event.cpp + game_sv_deathmatch.cpp + game_sv_deathmatch.h + game_sv_deathmatch_process_event.cpp + game_sv_deathmatch_script.cpp + game_sv_event_queue.cpp + game_sv_event_queue.h + game_sv_item_respawner.cpp + game_sv_item_respawner.h + game_sv_mp.cpp + game_sv_mp.h + game_sv_mp_script.cpp + game_sv_mp_script.h + game_sv_mp_team.h + game_sv_mp_vote_flags.h + game_sv_single.cpp + game_sv_single.h + game_sv_teamdeathmatch.cpp + game_sv_teamdeathmatch.h + game_sv_teamdeathmatch_process_event.cpp + GameTask.cpp + GameTaskDefs.h + GameTask.h + GametaskManager.cpp + GametaskManager.h + GameTask_script.cpp + game_type.cpp + game_type.h + GlobalFeelTouch.cpp + GlobalFeelTouch.hpp + GraviArtifact.cpp + GraviArtifact.h + GraviZone.cpp + GraviZone.h + Grenade.cpp + Grenade.h + GrenadeLauncher.cpp + GrenadeLauncher.h + group_hierarchy_holder.cpp + group_hierarchy_holder.h + group_hierarchy_holder_inline.h + gsc_dsigned_ltx.cpp + gsc_dsigned_ltx.h + HairsZone.cpp + HairsZone.h + HairsZone_script.cpp + HangingLamp.cpp + HangingLamp.h + harvest_time.cpp + harvest_time.h + Helicopter2.cpp + Helicopter.cpp + helicopter.h + HelicopterMovementManager.cpp + helicopter_script.cpp + HelicopterWeapon.cpp + Hit.cpp + Hit.h + hit_immunity.cpp + hit_immunity.h + hit_immunity_space.h + HitMarker.cpp + HitMarker.h + hit_memory_manager.cpp + hit_memory_manager.h + hit_memory_manager_inline.h + hits_store.cpp + hits_store.h + hits_store_inline.h + holder_custom.cpp + holder_custom.h + holder_custom_script.cpp + HUDCrosshair.cpp + HUDCrosshair.h + HudItem.cpp + HudItem.h + hud_item_object.cpp + hud_item_object.h + HUDManager.cpp + HUDManager.h + HudSound.cpp + HudSound.h + HUDTarget.cpp + HUDTarget.h + id_generator.h + ik_anim_state.cpp + ik_anim_state.h + ik_calculate_data.cpp + ik_calculate_data.h + ik_calculate_state.h + ik_collide_data.h + ik_dbg_matrix.cpp + ik_dbg_matrix.h + ik_foot_collider.cpp + ik_foot_collider.h + IKFoot.cpp + IKFoot.h + IKFoot_inl.h + IKLimbsController.cpp + IKLimbsController.h + ik_limb_state.cpp + ik_limb_state.h + ik_limb_state_predict.h + ik_object_shift.cpp + ik_object_shift.h + imotion_position.cpp + imotion_position.h + imotion_velocity.cpp + imotion_velocity.h + InfoDocument.cpp + InfoDocument.h + InfoPortion.cpp + InfoPortion.h + ini_id_loader.h + ini_table_loader.h + interactive_animation.cpp + interactive_animation.h + interactive_motion.cpp + interactive_motion.h + InventoryBox.cpp + InventoryBox.h + Inventory.cpp + Inventory.h + inventory_item.cpp + inventory_item.h + inventory_item_impl.h + inventory_item_inline.h + inventory_item_object.cpp + inventory_item_object.h + inventory_item_object_inline.h + inventory_item_upgrade.cpp + InventoryOwner.cpp + InventoryOwner.h + inventory_owner_info.cpp + inventory_owner_inline.h + inventory_quickswitch.cpp + inventory_upgrade_base.cpp + inventory_upgrade_base.h + inventory_upgrade_base_inline.h + inventory_upgrade.cpp + inventory_upgrade_group.cpp + inventory_upgrade_group.h + inventory_upgrade_group_inline.h + inventory_upgrade.h + inventory_upgrade_inline.h + inventory_upgrade_manager.cpp + inventory_upgrade_manager.h + inventory_upgrade_manager_inline.h + inventory_upgrade_property.cpp + inventory_upgrade_property.h + inventory_upgrade_property_inline.h + inventory_upgrade_root.cpp + inventory_upgrade_root.h + inventory_upgrade_root_inline.h + invincible_fury.cpp + invincible_fury.h + item_manager.cpp + item_manager.h + item_manager_inline.h + killer_victim_velocity_angle.cpp + killer_victim_velocity_angle.h + kills_store.cpp + kills_store.h + kills_store_inline.h + Level_Bullet_Manager.cpp + Level_bullet_manager_firetrace.cpp + Level_Bullet_Manager.h + level_changer.cpp + level_changer.h + Level.cpp + level_debug.cpp + level_debug.h + #LevelFogOfWar.cpp + #LevelFogOfWar.h + Level_GameSpy_Funcs.cpp + LevelGraphDebugRender.cpp + LevelGraphDebugRender.hpp + Level.h + Level_input.cpp + Level_load.cpp + level_location_selector.h + level_location_selector_inline.h + level_map_locations.cpp + Level_network_compressed_updates.cpp + Level_network.cpp + Level_network_Demo.cpp + Level_network_Demo.h + Level_network_digest_computer.cpp + Level_network_map_sync.cpp + Level_network_map_sync.h + Level_network_messages.cpp + Level_network_spawn.cpp + Level_network_start_client.cpp + level_path_builder.h + level_path_manager.h + level_path_manager_inline.h + level_script.cpp + Level_secure_messaging.cpp + Level_SLS_Default.cpp + Level_SLS_Load.cpp + Level_SLS_Save.cpp + level_sounds.cpp + level_sounds.h + Level_start.cpp + location_manager.cpp + location_manager.h + location_manager_inline.h + login_manager.cpp + login_manager.h + login_manager_script.cpp + magic_box3.cpp + magic_box3.h + magic_box3_inline.h + magic_minimize_1d.cpp + magic_minimize_1d.h + magic_minimize_1d_inline.h + magic_minimize_nd.h + magic_minimize_nd_inline.h + MainMenu.cpp + MainMenu.h + map_location.cpp + map_location_defs.h + map_location.h + map_manager.cpp + map_manager.h + map_script.cpp + map_spot.cpp + map_spot.h + material_manager.cpp + material_manager.h + material_manager_inline.h + #MathUtils.cpp + #MathUtils.h + matrix_utils.h + medkit.cpp + medkit.h + member_corpse.h + member_corpse_inline.h + member_enemy.h + member_enemy_inline.h + member_order.h + member_order_inline.h + memory_manager.cpp + memory_manager.h + memory_manager_inline.h + memory_space.h + memory_space_impl.h + memory_space_script.cpp + MercuryBall.cpp + MercuryBall.h + Message_Filter.cpp + Message_Filter.h + MilitaryOutfit.cpp + MilitaryOutfit.h + Mincer.cpp + Mincer.h + mincer_script.cpp + min_obb.cpp + Missile.cpp + Missile.h + mixed_delegate.h + mixed_delegate_unique_tags.h + monster_community.cpp + monster_community.h + MosquitoBald.cpp + MosquitoBald.h + MosquitoBald_script.cpp + movement_manager.cpp + movement_manager_game.cpp + movement_manager.h + movement_manager_impl.h + movement_manager_inline.h + movement_manager_level.cpp + movement_manager_patrol.cpp + movement_manager_physic.cpp + movement_manager_space.h + moving_bones_snd_player.cpp + moving_bones_snd_player.h + moving_object.cpp + moving_object.h + moving_object_inline.h + moving_objects.cpp + moving_objects_dynamic_collision.cpp + moving_objects_dynamic.cpp + moving_objects.h + moving_objects_impl.h + moving_objects_inline.h + moving_objects_static.cpp + mpactor_dump_impl.cpp + mp_config_sections.cpp + mp_config_sections.h + MPPlayersBag.cpp + MPPlayersBag.h + mt_config.h + Needles.cpp + Needles.h + NET_Queue.h + NoGravityZone.cpp + NoGravityZone.h + object_actions.cpp + object_actions.h + object_actions_inline.h + #ObjectDump.cpp + #ObjectDump.h + object_handler.cpp + object_handler.h + object_handler_inline.h + object_handler_planner.cpp + object_handler_planner.h + object_handler_planner_impl.h + object_handler_planner_inline.h + object_handler_planner_missile.cpp + object_handler_planner_weapon.cpp + object_handler_space.h + object_manager.h + object_manager_inline.h + object_property_evaluators.cpp + object_property_evaluators.h + object_property_evaluators_inline.h + obsolete_queue.h + obsolete_queue_inline.h + obstacles_query.cpp + obstacles_query.h + obstacles_query_inline.h + particle_params.h + particle_params_script.cpp + ParticlesObject.cpp + ParticlesObject.h + ParticlesPlayer.cpp + ParticlesPlayer.h + patrol_path_manager.cpp + patrol_path_manager.h + patrol_path_manager_inline.h + PDA.cpp + PDA.h + PdaMsg.h + pda_space.h + PHCollisionDamageReceiver.cpp + PHCollisionDamageReceiver.h + PHCommander.cpp + PHCommander.h + PHDebug.cpp + PHDebug.h + PHDestroyable.cpp + PHDestroyable.h + PHDestroyableNotificate.cpp + PHDestroyableNotificate.h + PHMovementControl.cpp + PHMovementControl.h + PHMovementDynamicActivate.cpp + Phrase.cpp + PhraseDialog.cpp + PhraseDialogDefs.h + PhraseDialog.h + PhraseDialogManager.cpp + PhraseDialogManager.h + PhraseDialog_script.cpp + Phrase.h + PhraseScript.cpp + PhraseScript.h + PHReqComparer.h + PHScriptCall.cpp + PHScriptCall.h + PHShellCreator.cpp + PHShellCreator.h + ph_shell_interface.h + PHSimpleCalls.cpp + PHSimpleCalls.h + PHSimpleCallsScript.cpp + PHSkeleton.cpp + PHSkeleton.h + PHSoundPlayer.cpp + PHSoundPlayer.h + physic_item.cpp + physic_item.h + physic_item_inline.h + PhysicObject.cpp + PhysicObject.h + PhysicObject_script.cpp + physics_element_scripted.cpp + physics_element_scripted.h + physics_game.cpp + physics_game.h + PhysicsGamePars.cpp + PhysicsGamePars.h + physics_joint_scripted.cpp + physics_joint_scripted.h + physics_shell_animated.cpp + physics_shell_animated.h + PhysicsShellHolder.cpp + PhysicsShellHolder.h + #PhysicsShellScript.cpp + physics_shell_scripted.cpp + physics_shell_scripted.h + PhysicsSkeletonObject.cpp + PhysicsSkeletonObject.h + physics_world_scripted.cpp + physics_world_scripted.h + player_account.cpp + player_account.h + player_hud.cpp + player_hud.h + player_hud_tune.cpp + player_name_modifyer.cpp + player_name_modifyer.h + player_spot_params.cpp + player_spot_params.h + player_state_achilles_heel.cpp + player_state_achilles_heel.h + player_state_ambassador.cpp + player_state_ambassador.h + player_state_ammo_elapsed.cpp + player_state_ammo_elapsed.h + player_state_avenger.cpp + player_state_avenger.h + player_state_blitzkrieg.cpp + player_state_blitzkrieg.h + player_state_cherub.cpp + player_state_cherub.h + player_state_climber.cpp + player_state_climber.h + player_state_mad.cpp + player_state_mad.h + player_state_marksman.cpp + player_state_marksman.h + player_state_multichampion.cpp + player_state_multichampion.h + player_state_opener.cpp + player_state_opener.h + player_state_param.h + player_state_params.cpp + player_state_params.h + player_state_remembrance.cpp + player_state_remembrance.h + player_state_skewer.cpp + player_state_skewer.h + player_state_toughy.cpp + player_state_toughy.h + player_team_win_score.cpp + player_team_win_score.h + pose_extrapolation.cpp + pose_extrapolation.h + poses_blending.cpp + poses_blending.h + PostprocessAnimator.cpp + PostprocessAnimator.h + pp_effector_custom.cpp + pp_effector_custom.h + pp_effector_distance.cpp + pp_effector_distance.h + profile_data_types.cpp + profile_data_types.h + profile_data_types_script.cpp + profile_data_types_script.h + profile_store.cpp + profile_store.h + profile_store_script.cpp + property_evaluator_const.h + property_evaluator.h + property_evaluator_inline.h + property_evaluator_member.h + property_evaluator_member_inline.h + property_evaluator_script.cpp + property_storage.h + property_storage_inline.h + property_storage_script.cpp + purchase_list.cpp + purchase_list.h + purchase_list_inline.h + quadtree.h + quadtree_inline.h + queued_async_method.h + RadioactiveZone.cpp + RadioactiveZone.h + Random.cpp + Random.hpp + rat_state_base.cpp + rat_state_base.h + rat_state_base_inline.h + rat_state_manager.cpp + rat_state_manager.h + rat_state_manager_inline.h + rat_states.cpp + rat_states.h + raypick.cpp + raypick.h + refreshable_obstacles_query.h + refreshable_obstacles_query_inline.h + RegistryFuncs.cpp + RegistryFuncs.h + relation_registry_actions.cpp + relation_registry.cpp + relation_registry_defs.h + relation_registry_fights.cpp + relation_registry.h + relation_registry_inline.h + restricted_object.cpp + restricted_object.h + restricted_object_inline.h + restricted_object_obstacle.cpp + restricted_object_obstacle.h + reward_event_generator.cpp + reward_event_generator.h + reward_event_handler.h + rewarding_events_handlers.cpp + rewarding_events_handlers.h + rewarding_state_events.cpp + rewarding_state_events.h + reward_manager.cpp + reward_manager.h + reward_snd_messages.h + RGD5.h + RocketLauncher.cpp + RocketLauncher.h + RustyHairArtifact.cpp + RustyHairArtifact.h + safe_map_iterator.h + safe_map_iterator_inline.h + saved_game_wrapper.cpp + saved_game_wrapper.h + saved_game_wrapper_inline.h + saved_game_wrapper_script.cpp + ScientificOutfit.cpp + ScientificOutfit.h + Scope.cpp + Scope.h + screenshot_manager.cpp + screenshot_manager.h + screenshots_common.cpp + screenshots_common.h + screenshot_server.cpp + screenshot_server.h + screenshots_writer.cpp + screenshots_writer.h + script_abstract_action.h + script_action_condition.h + script_action_condition_inline.h + script_action_condition_script.cpp + script_action_planner_action_wrapper.cpp + script_action_planner_action_wrapper.h + script_action_planner_action_wrapper_inline.h + script_action_planner_wrapper.cpp + script_action_planner_wrapper.h + script_action_planner_wrapper_inline.h + script_action_wrapper.cpp + script_action_wrapper.h + script_action_wrapper_inline.h + script_animation_action.h + script_animation_action_inline.h + script_animation_action_script.cpp + script_binder.cpp + script_binder.h + script_binder_inline.h + script_binder_object.cpp + script_binder_object.h + script_binder_object_script.cpp + script_binder_object_wrapper.cpp + script_binder_object_wrapper.h + script_bind_macroses.h + script_effector.cpp + script_effector.h + script_effector_inline.h + script_effector_script.cpp + script_effector_wrapper.cpp + script_effector_wrapper.h + script_effector_wrapper_inline.h + script_entity_action.cpp + script_entity_action.h + script_entity_action_inline.h + script_entity_action_script.cpp + script_entity.cpp + script_entity.h + script_entity_inline.h + script_entity_space.h + script_game_object2.cpp + script_game_object3.cpp + script_game_object4.cpp + script_game_object.cpp + script_game_object.h + script_game_object_impl.h + script_game_object_inventory_owner.cpp + script_game_object_script2.cpp + script_game_object_script3.cpp + script_game_object_script.cpp + script_game_object_script_trader.cpp + script_game_object_smart_covers.cpp + script_game_object_trader.cpp + script_game_object_use2.cpp + script_game_object_use.cpp + script_hit.cpp + script_hit.h + script_hit_inline.h + script_hit_script.cpp + script_lanim.cpp + script_monster_action.cpp + script_monster_action.h + script_monster_action_inline.h + script_monster_action_script.cpp + script_monster_hit_info.h + script_monster_hit_info_script.cpp + script_movement_action.cpp + script_movement_action.h + script_movement_action_inline.h + script_movement_action_script.cpp + script_object_action.cpp + script_object_action.h + script_object_action_inline.h + script_object_action_script.cpp + script_object.cpp + script_object.h + script_particle_action.cpp + script_particle_action.h + script_particle_action_inline.h + script_particle_action_script.cpp + script_particles.cpp + script_particles.h + script_particles_inline.h + script_particles_script.cpp + script_property_evaluator_wrapper.cpp + script_property_evaluator_wrapper.h + script_property_evaluator_wrapper_inline.h + script_render_device_script.cpp + script_sound_action.cpp + script_sound_action.h + script_sound_action_inline.h + script_sound_action_script.cpp + script_sound.cpp + script_sound.h + script_sound_info.h + script_sound_info_script.cpp + script_sound_inline.h + script_sound_script.cpp + script_watch_action.cpp + script_watch_action.h + script_watch_action_inline.h + script_watch_action_script.cpp + ScriptXMLInit.cpp + ScriptXMLInit.h + script_zone.cpp + script_zone.h + script_zone_script.cpp + searchlight.cpp + searchlight.h + secure_messaging.cpp + secure_messaging.h + seniority_hierarchy_holder.cpp + seniority_hierarchy_holder.h + seniority_hierarchy_holder_inline.h + seniority_hierarchy_space.h + server_entity_wrapper.cpp + server_entity_wrapper.h + server_entity_wrapper_inline.h + setup_manager.h + setup_manager_inline.h + ShootingObject.cpp + shootingObject_dump_impl.cpp + ShootingObject.h + sight_action.cpp + sight_action.h + sight_action_inline.h + sight_control_action.h + sight_control_action_inline.h + sight_manager.cpp + sight_manager.h + sight_manager_inline.h + sight_manager_space.h + sight_manager_target.cpp + Silencer.cpp + Silencer.h + silent_shots.cpp + silent_shots.h + SimpleDetector.cpp + SimpleDetector.h + SleepEffector.cpp + SleepEffector.h + smart_cover_action.cpp + smart_cover_action.h + smart_cover_action_inline.h + smart_cover_animation_planner.cpp + smart_cover_animation_planner.h + smart_cover_animation_planner_inline.h + smart_cover_animation_selector.cpp + smart_cover_animation_selector.h + smart_cover_animation_selector_inline.h + smart_cover.cpp + smart_cover_default_behaviour_planner.cpp + smart_cover_default_behaviour_planner.hpp + smart_cover_default_behaviour_planner_inline.hpp + smart_cover_description.cpp + smart_cover_description.h + smart_cover_description_inline.h + smart_cover_detail.cpp + smart_cover_detail.h + smart_cover_evaluators.cpp + smart_cover_evaluators.h + smart_cover.h + smart_cover_inline.h + smart_cover_loophole.cpp + smart_cover_loophole.h + smart_cover_loophole_inline.h + smart_cover_loophole_planner_actions.cpp + smart_cover_loophole_planner_actions.h + smart_cover_loophole_planner_actions_inline.h + smart_cover_object.cpp + smart_cover_object.h + smart_cover_object_inline.h + smart_cover_object_script.cpp + smart_cover_planner_actions.cpp + smart_cover_planner_actions.h + smart_cover_planner_actions_inline.h + smart_cover_planner_target_provider.cpp + smart_cover_planner_target_provider.h + smart_cover_planner_target_selector.cpp + smart_cover_planner_target_selector.h + smart_cover_planner_target_selector_inline.h + smart_cover_storage.cpp + smart_cover_storage.h + smart_cover_transition_animation.cpp + smart_cover_transition_animation.hpp + smart_cover_transition_animation_inline.hpp + smart_cover_transition.cpp + smart_cover_transition.hpp + smart_zone.h + sound_collection_storage.cpp + sound_collection_storage.h + sound_collection_storage_inline.h + sound_memory_manager.cpp + sound_memory_manager.h + sound_memory_manager_inline.h + sound_player.cpp + sound_player.h + sound_player_inline.h + sound_user_data_visitor.h + space_restriction_abstract.h + space_restriction_abstract_inline.h + space_restriction_base.cpp + space_restriction_base.h + space_restriction_base_inline.h + space_restriction_bridge.cpp + space_restriction_bridge.h + space_restriction_bridge_inline.h + space_restriction_composition.cpp + space_restriction_composition.h + space_restriction_composition_inline.h + space_restriction.cpp + space_restriction.h + space_restriction_holder.cpp + space_restriction_holder.h + space_restriction_holder_inline.h + space_restriction_inline.h + space_restriction_manager.cpp + space_restriction_manager.h + space_restriction_manager_inline.h + space_restriction_shape.cpp + space_restriction_shape.h + space_restriction_shape_inline.h + space_restrictor.cpp + space_restrictor.h + space_restrictor_inline.h + space_restrictor_script.cpp + SpaceUtils.h + spectator_camera_first_eye.cpp + spectator_camera_first_eye.h + Spectator.cpp + Spectator.h + sprinter_stopper.cpp + sprinter_stopper.h + squad_hierarchy_holder.cpp + squad_hierarchy_holder.h + squad_hierarchy_holder_inline.h + stalker_alife_actions.cpp + stalker_alife_actions.h + stalker_alife_planner.cpp + stalker_alife_planner.h + stalker_alife_task_actions.cpp + stalker_alife_task_actions.h + stalker_animation_callbacks.cpp + stalker_animation_data.cpp + stalker_animation_data.h + stalker_animation_data_storage.cpp + stalker_animation_data_storage.h + stalker_animation_data_storage_inline.h + stalker_animation_global.cpp + stalker_animation_head.cpp + stalker_animation_legs.cpp + stalker_animation_manager.cpp + stalker_animation_manager_debug.cpp + stalker_animation_manager.h + stalker_animation_manager_impl.h + stalker_animation_manager_inline.h + stalker_animation_manager_update.cpp + stalker_animation_names.cpp + stalker_animation_names.h + #stalker_animation_offsets.cpp + #stalker_animation_offsets.hpp + stalker_animation_pair.cpp + stalker_animation_pair.h + stalker_animation_pair_inline.h + stalker_animation_script.cpp + stalker_animation_script.h + stalker_animation_script_inline.h + stalker_animation_state.cpp + stalker_animation_state.h + stalker_animation_state_inline.h + stalker_animation_torso.cpp + stalker_anomaly_actions.cpp + stalker_anomaly_actions.h + stalker_anomaly_planner.cpp + stalker_anomaly_planner.h + stalker_base_action.cpp + stalker_base_action.h + stalker_combat_action_base.cpp + stalker_combat_action_base.h + stalker_combat_actions.cpp + stalker_combat_actions.h + stalker_combat_actions_inline.h + stalker_combat_planner.cpp + stalker_combat_planner.h + stalker_danger_by_sound_actions.cpp + stalker_danger_by_sound_actions.h + stalker_danger_by_sound_planner.cpp + stalker_danger_by_sound_planner.h + stalker_danger_grenade_actions.cpp + stalker_danger_grenade_actions.h + stalker_danger_grenade_planner.cpp + stalker_danger_grenade_planner.h + stalker_danger_in_direction_actions.cpp + stalker_danger_in_direction_actions.h + stalker_danger_in_direction_planner.cpp + stalker_danger_in_direction_planner.h + stalker_danger_planner.cpp + stalker_danger_planner.h + stalker_danger_planner_inline.h + stalker_danger_property_evaluators.cpp + stalker_danger_property_evaluators.h + stalker_danger_unknown_actions.cpp + stalker_danger_unknown_actions.h + stalker_danger_unknown_planner.cpp + stalker_danger_unknown_planner.h + stalker_death_actions.cpp + stalker_death_actions.h + stalker_death_planner.cpp + stalker_death_planner.h + stalker_decision_space.h + stalker_flair.cpp + stalker_flair.h + stalker_get_distance_actions.cpp + stalker_get_distance_actions.h + stalker_get_distance_planner.cpp + stalker_get_distance_planner.h + stalker_kill_wounded_actions.cpp + stalker_kill_wounded_actions.h + stalker_kill_wounded_planner.cpp + stalker_kill_wounded_planner.h + stalker_low_cover_actions.cpp + stalker_low_cover_actions.h + stalker_low_cover_planner.cpp + stalker_low_cover_planner.h + stalker_movement_manager_base.cpp + stalker_movement_manager_base.h + stalker_movement_manager_base_inline.h + stalker_movement_manager_obstacles.cpp + stalker_movement_manager_obstacles.h + stalker_movement_manager_obstacles_inline.h + stalker_movement_manager_obstacles_path.cpp + stalker_movement_manager_smart_cover.cpp + stalker_movement_manager_smart_cover_fov_range.cpp + stalker_movement_manager_smart_cover.h + stalker_movement_manager_smart_cover_inline.h + stalker_movement_manager_smart_cover_loopholes.cpp + stalker_movement_manager_space.h + stalker_movement_params.cpp + stalker_movement_params.h + stalker_movement_params_inline.h + stalker_movement_restriction.h + stalker_movement_restriction_inline.h + StalkerOutfit.cpp + StalkerOutfit.h + stalker_planner.cpp + stalker_planner.h + stalker_planner_inline.h + stalker_property_evaluators.cpp + stalker_property_evaluators.h + stalker_property_evaluators_inline.h + stalker_search_actions.cpp + stalker_search_actions.h + stalker_search_planner.cpp + stalker_search_planner.h + stalker_sound_data.cpp + stalker_sound_data.h + stalker_sound_data_inline.h + stalker_sound_data_visitor.cpp + stalker_sound_data_visitor.h + stalker_sound_data_visitor_inline.h + stalker_velocity_collection.cpp + stalker_velocity_collection.h + stalker_velocity_collection_inline.h + stalker_velocity_holder.cpp + stalker_velocity_holder.h + stalker_velocity_holder_inline.h + state_arguments_functions.cpp + state_arguments_functions.h + static_cast_checked.hpp + #static_cast_checked_test.cpp + static_obstacles_avoider.cpp + static_obstacles_avoider.h + static_obstacles_avoider_inline.h + #stats_submitter.cpp + stats_submitter_dsa_params.cpp + stats_submitter.h + StdAfx.cpp + StdAfx.h + steering_behaviour_alignment.h + steering_behaviour_base.h + steering_behaviour_base_inline.h + steering_behaviour_cohesion.h + steering_behaviour.cpp + steering_behaviour.h + steering_behaviour_separation.h + step_manager.cpp + step_manager_defs.h + step_manager.h + team_base_zone.cpp + team_base_zone.h + team_hierarchy_holder.cpp + team_hierarchy_holder.h + team_hierarchy_holder_inline.h + TeleWhirlwind.cpp + TeleWhirlwind.h + ThornArtifact.cpp + ThornArtifact.h + Torch.cpp + Torch.h + torch_script.cpp + TorridZone.cpp + TorridZone.h + Tracer.cpp + Tracer.h + trade2.cpp + trade_action_parameters.h + trade_action_parameters_inline.h + trade_bool_parameters.h + trade_bool_parameters_inline.h + trade.cpp + trade_factor_parameters.h + trade_factor_parameters_inline.h + trade_factors.h + trade_factors_inline.h + trade.h + trade_parameters.cpp + trade_parameters.h + trade_parameters_inline.h + traffic_optimization.cpp + traffic_optimization.h + trajectories.cpp + trajectories.h + UIAchivementsIndicator.cpp + UIAchivementsIndicator.h + UIDialogHolder.cpp + UIDialogHolder.h + ui_export_script.cpp + #UIFrameRect.cpp + #UIFrameRect.h + UIGameAHunt.cpp + UIGameAHunt.h + UIGameCTA.cpp + UIGameCTA.h + UIGameCustom.cpp + UIGameCustom.h + #UIGame_custom_script.cpp + #UIGame_custom_script.h + UIGameCustom_script.cpp + UIGameDM.cpp + UIGameDM.h + UIGameMP.cpp + UIGameMP.h + UIGameSP.cpp + UIGameSP.h + UIGameTDM.cpp + UIGameTDM.h + UIPanelsClassFactory.cpp + UIPanelsClassFactory.h + UIPlayerItem.cpp + UIPlayerItem.h + UITeamHeader.cpp + UITeamHeader.h + UITeamPanels.cpp + UITeamPanels.h + UITeamState.cpp + UITeamState.h + UITimeDilator.cpp + UITimeDilator.h + UIZoneMap.cpp + UIZoneMap.h + VersionSwitcher.cpp + VersionSwitcher.h + vision_client.cpp + vision_client.h + vision_client_inline.h + visual_memory_manager.cpp + visual_memory_manager.h + visual_memory_manager_inline.h + visual_memory_params.cpp + visual_memory_params.h + wallmark_manager.cpp + wallmark_manager.h + WeaponAK74.cpp + WeaponAK74.h + WeaponAmmo.cpp + weapon_ammo_dump_impl.cpp + WeaponAmmo.h + WeaponAutomaticShotgun.cpp + WeaponAutomaticShotgun.h + WeaponBinoculars.cpp + WeaponBinoculars.h + WeaponBinocularsVision.cpp + WeaponBinocularsVision.h + weaponBM16.cpp + weaponBM16.h + Weapon.cpp + WeaponCustomPistolAuto.cpp + WeaponCustomPistolAuto.h + WeaponCustomPistol.cpp + WeaponCustomPistol.h + WeaponDispersion.cpp + weapon_dump_impl.cpp + WeaponFire.cpp + WeaponFN2000.cpp + WeaponFN2000.h + WeaponFORT.h + WeaponGroza.cpp + WeaponGroza.h + Weapon.h + WeaponHPSA.cpp + WeaponHPSA.h + WeaponHUD.h + WeaponKnife.cpp + WeaponKnife.h + WeaponLR300.cpp + WeaponLR300.h + WeaponMagazined.cpp + WeaponMagazined.h + WeaponMagazinedWGrenade.cpp + WeaponMagazinedWGrenade.h + WeaponPistol.cpp + WeaponPistol.h + WeaponPM.cpp + WeaponPM.h + WeaponRevolver.cpp + WeaponRevolver.h + WeaponRG6.cpp + WeaponRG6.h + WeaponRPG7.cpp + WeaponRPG7.h + WeaponScript.cpp + WeaponShotgun.cpp + WeaponShotgun.h + WeaponStatMgun.cpp + WeaponStatMgunFire.cpp + WeaponStatMgun.h + WeaponStatMgunIR.cpp + WeaponSVD.cpp + WeaponSVD.h + WeaponSVU.h + WeaponUpgrade.cpp + WeaponUSP45.h + WeaponVal.cpp + WeaponVal.h + WeaponVintorez.cpp + WeaponVintorez.h + WeaponWalther.h + Wound.cpp + Wound.h + wrapper_abstract.h + wrapper_abstract_inline.h + #xr_Client_BattlEye.cpp + #xr_Client_BattlEye.h + xrClientsPool.cpp + xrClientsPool.h + xrGame.cpp + xrgame_dll_detach.cpp + xrGameSpy_GameSpyFuncs.cpp + xrGameSpyServer_callbacks.cpp + xrGameSpyServer_callbacks.h + xrGameSpyServer.cpp + xrGameSpyServer.h + xrServer_balance.cpp + #xr_Server_BattlEye.cpp + #xr_Server_BattlEye.h + xrServer_CL_connect.cpp + xrServer_CL_disconnect.cpp + xrServer_Connect.cpp + xrServer.cpp + xrServer_Disconnect.cpp + xrServer.h + xrServer_info.cpp + xrServer_info.h + xrServerMapSync.cpp + xrServerMapSync.h + xrServer_perform_GameExport.cpp + xrServer_perform_migration.cpp + xrServer_perform_RPgen.cpp + xrServer_perform_sls_default.cpp + xrServer_perform_sls_load.cpp + xrServer_perform_sls_save.cpp + xrServer_perform_transfer.cpp + xrServer_process_event_activate.cpp + xrServer_process_event.cpp + xrServer_process_event_destroy.cpp + xrServer_process_event_ownership.cpp + xrServer_process_event_reject.cpp + xrServer_process_spawn.cpp + xrServer_process_update.cpp + xrServer_secure_messaging.cpp + xrServer_sls_clear.cpp + xrServer_svclient_validation.cpp + xrServer_svclient_validation.h + xrServer_updates_compressor.cpp + xrServer_updates_compressor.h + xr_time.cpp + xr_time.h + ZoneCampfire.cpp + ZoneCampfire.h + zone_effector.cpp + zone_effector.h + ZoneVisual.cpp + ZoneVisual.h + ZudaArtifact.cpp + ZudaArtifact.h + ai/ai_monsters_anims.h + ai/ai_monsters_misc.cpp + ai/ai_monsters_misc.h + ai/position_prediction.h + ai/weighted_random.cpp + ai/weighted_random.h + ai/crow/ai_crow.cpp + ai/crow/ai_crow.h + ai/monsters/ai_monster_bones.cpp + ai/monsters/ai_monster_bones.h + ai/monsters/ai_monster_defs.h + ai/monsters/ai_monster_effector.cpp + ai/monsters/ai_monster_effector.h + ai/monsters/ai_monster_motion_stats.cpp + ai/monsters/ai_monster_motion_stats.h + ai/monsters/ai_monster_shared_data.h + ai/monsters/ai_monster_squad_attack.cpp + ai/monsters/ai_monster_squad.cpp + ai/monsters/ai_monster_squad.h + ai/monsters/ai_monster_squad_manager.cpp + ai/monsters/ai_monster_squad_manager.h + ai/monsters/ai_monster_squad_manager_inline.h + ai/monsters/ai_monster_squad_rest.cpp + ai/monsters/ai_monster_utils.cpp + ai/monsters/ai_monster_utils.h + ai/monsters/anim_triple.cpp + ai/monsters/anim_triple.h + ai/monsters/anomaly_detector.cpp + ai/monsters/anomaly_detector.h + ai/monsters/anti_aim_ability.cpp + ai/monsters/anti_aim_ability.h + ai/monsters/control_animation_base_accel.cpp + ai/monsters/control_animation_base.cpp + ai/monsters/control_animation_base.h + ai/monsters/control_animation_base_load.cpp + ai/monsters/control_animation_base_update.cpp + ai/monsters/control_animation.cpp + ai/monsters/control_animation.h + ai/monsters/control_combase.h + ai/monsters/control_com_defs.h + ai/monsters/control_critical_wound.cpp + ai/monsters/control_critical_wound.h + ai/monsters/control_direction_base.cpp + ai/monsters/control_direction_base.h + ai/monsters/control_direction.cpp + ai/monsters/control_direction.h + ai/monsters/control_jump.cpp + ai/monsters/control_jump.h + ai/monsters/controlled_actor.cpp + ai/monsters/controlled_actor.h + ai/monsters/controlled_entity.h + ai/monsters/controlled_entity_inline.h + ai/monsters/control_manager.cpp + ai/monsters/control_manager_custom.cpp + ai/monsters/control_manager_custom.h + ai/monsters/control_manager.h + ai/monsters/control_melee_jump.cpp + ai/monsters/control_melee_jump.h + ai/monsters/control_movement_base.cpp + ai/monsters/control_movement_base.h + ai/monsters/control_movement.cpp + ai/monsters/control_movement.h + ai/monsters/control_path_builder_base.cpp + ai/monsters/control_path_builder_base.h + ai/monsters/control_path_builder_base_inline.h + ai/monsters/control_path_builder_base_path.cpp + ai/monsters/control_path_builder_base_set.cpp + ai/monsters/control_path_builder_base_update.cpp + ai/monsters/control_path_builder.cpp + ai/monsters/control_path_builder.h + ai/monsters/control_rotation_jump.cpp + ai/monsters/control_rotation_jump.h + ai/monsters/control_run_attack.cpp + ai/monsters/control_run_attack.h + ai/monsters/control_sequencer.cpp + ai/monsters/control_sequencer.h + ai/monsters/control_threaten.cpp + ai/monsters/control_threaten.h + ai/monsters/corpse_cover.cpp + ai/monsters/corpse_cover.h + ai/monsters/custom_events.h + ai/monsters/energy_holder.cpp + ai/monsters/energy_holder.h + ai/monsters/invisibility.cpp + ai/monsters/invisibility.h + ai/monsters/melee_checker.cpp + ai/monsters/melee_checker.h + ai/monsters/melee_checker_inline.h + ai/monsters/monster_aura.cpp + ai/monsters/monster_aura.h + ai/monsters/monster_corpse_manager.cpp + ai/monsters/monster_corpse_manager.h + ai/monsters/monster_corpse_memory.cpp + ai/monsters/monster_corpse_memory.h + ai/monsters/monster_cover_manager.cpp + ai/monsters/monster_cover_manager.h + ai/monsters/monster_enemy_manager.cpp + ai/monsters/monster_enemy_manager.h + ai/monsters/monster_enemy_memory.cpp + ai/monsters/monster_enemy_memory.h + ai/monsters/monster_event_manager.cpp + ai/monsters/monster_event_manager_defs.h + ai/monsters/monster_event_manager.h + ai/monsters/monster_hit_memory.cpp + ai/monsters/monster_hit_memory.h + ai/monsters/monster_home.cpp + ai/monsters/monster_home.h + ai/monsters/monster_morale.cpp + ai/monsters/monster_morale.h + ai/monsters/monster_morale_inline.h + ai/monsters/monster_sound_defs.h + ai/monsters/monster_sound_memory.cpp + ai/monsters/monster_sound_memory.h + ai/monsters/monster_state_manager.h + ai/monsters/monster_state_manager_inline.h + ai/monsters/monster_velocity_space.h + ai/monsters/psy_aura.cpp + ai/monsters/psy_aura.h + ai/monsters/scanning_ability.h + ai/monsters/scanning_ability_inline.h + ai/monsters/state.cpp + ai/monsters/state_defs.h + ai/monsters/state.h + ai/monsters/state_inline.h + ai/monsters/state_manager.h + ai/monsters/telekinesis.cpp + ai/monsters/telekinesis.h + ai/monsters/telekinesis_inline.h + ai/monsters/telekinetic_object.cpp + ai/monsters/telekinetic_object.h + ai/monsters/basemonster/base_monster_anim.cpp + ai/monsters/basemonster/base_monster.cpp + ai/monsters/basemonster/base_monster_debug.cpp + ai/monsters/basemonster/base_monster_feel.cpp + ai/monsters/basemonster/base_monster.h + ai/monsters/basemonster/base_monster_inline.h + ai/monsters/basemonster/base_monster_misc.cpp + ai/monsters/basemonster/base_monster_net.cpp + ai/monsters/basemonster/base_monster_path.cpp + ai/monsters/basemonster/base_monster_script.cpp + ai/monsters/basemonster/base_monster_startup.cpp + ai/monsters/basemonster/base_monster_think.cpp + ai/monsters/bloodsucker/bloodsucker_alien.cpp + ai/monsters/bloodsucker/bloodsucker_alien.h + ai/monsters/bloodsucker/bloodsucker_attack_state.h + ai/monsters/bloodsucker/bloodsucker_attack_state_hide.h + ai/monsters/bloodsucker/bloodsucker_attack_state_hide_inline.h + ai/monsters/bloodsucker/bloodsucker_attack_state_inline.h + ai/monsters/bloodsucker/bloodsucker.cpp + ai/monsters/bloodsucker/bloodsucker.h + ai/monsters/bloodsucker/bloodsucker_predator.h + ai/monsters/bloodsucker/bloodsucker_predator_inline.h + ai/monsters/bloodsucker/bloodsucker_predator_lite.h + ai/monsters/bloodsucker/bloodsucker_predator_lite_inline.h + ai/monsters/bloodsucker/bloodsucker_script.cpp + ai/monsters/bloodsucker/bloodsucker_state_capture_jump.h + ai/monsters/bloodsucker/bloodsucker_state_capture_jump_inline.h + ai/monsters/bloodsucker/bloodsucker_state_manager.cpp + ai/monsters/bloodsucker/bloodsucker_state_manager.h + ai/monsters/bloodsucker/bloodsucker_vampire_approach.h + ai/monsters/bloodsucker/bloodsucker_vampire_approach_inline.h + ai/monsters/bloodsucker/bloodsucker_vampire_effector.cpp + ai/monsters/bloodsucker/bloodsucker_vampire_effector.h + ai/monsters/bloodsucker/bloodsucker_vampire_execute.h + ai/monsters/bloodsucker/bloodsucker_vampire_execute_inline.h + ai/monsters/bloodsucker/bloodsucker_vampire.h + ai/monsters/bloodsucker/bloodsucker_vampire_hide.h + ai/monsters/bloodsucker/bloodsucker_vampire_hide_inline.h + ai/monsters/bloodsucker/bloodsucker_vampire_inline.h + ai/monsters/boar/boar.cpp + ai/monsters/boar/boar.h + ai/monsters/boar/boar_script.cpp + ai/monsters/boar/boar_state_manager.cpp + ai/monsters/boar/boar_state_manager.h + ai/monsters/burer/burer.cpp + ai/monsters/burer/burer_fast_gravi.cpp + ai/monsters/burer/burer_fast_gravi.h + ai/monsters/burer/burer.h + ai/monsters/burer/burer_script.cpp + ai/monsters/burer/burer_state_attack_antiaim.h + ai/monsters/burer/burer_state_attack_antiaim_inline.h + ai/monsters/burer/burer_state_attack_gravi.h + ai/monsters/burer/burer_state_attack_gravi_inline.h + ai/monsters/burer/burer_state_attack.h + ai/monsters/burer/burer_state_attack_inline.h + ai/monsters/burer/burer_state_attack_melee.h + ai/monsters/burer/burer_state_attack_melee_inline.h + ai/monsters/burer/burer_state_attack_run_around.h + ai/monsters/burer/burer_state_attack_run_around_inline.h + ai/monsters/burer/burer_state_attack_shield.h + ai/monsters/burer/burer_state_attack_shield_inline.h + ai/monsters/burer/burer_state_attack_tele.h + ai/monsters/burer/burer_state_attack_tele_inline.h + ai/monsters/burer/burer_state_manager.cpp + ai/monsters/burer/burer_state_manager.h + ai/monsters/cat/cat.cpp + ai/monsters/cat/cat.h + ai/monsters/cat/cat_script.cpp + ai/monsters/cat/cat_state_manager.cpp + ai/monsters/cat/cat_state_manager.h + ai/monsters/chimera/chimera_attack_state.h + ai/monsters/chimera/chimera_attack_state_inline.h + ai/monsters/chimera/chimera.cpp + ai/monsters/chimera/chimera.h + ai/monsters/chimera/chimera_script.cpp + ai/monsters/chimera/chimera_state_hunting_come_out.h + ai/monsters/chimera/chimera_state_hunting_come_out_inline.h + ai/monsters/chimera/chimera_state_hunting.h + ai/monsters/chimera/chimera_state_hunting_inline.h + ai/monsters/chimera/chimera_state_hunting_move_to_cover.h + ai/monsters/chimera/chimera_state_hunting_move_to_cover_inline.h + ai/monsters/chimera/chimera_state_manager.cpp + ai/monsters/chimera/chimera_state_manager.h + ai/monsters/chimera/chimera_state_threaten.h + ai/monsters/chimera/chimera_state_threaten_inline.h + ai/monsters/chimera/chimera_state_threaten_roar.h + ai/monsters/chimera/chimera_state_threaten_roar_inline.h + ai/monsters/chimera/chimera_state_threaten_steal.h + ai/monsters/chimera/chimera_state_threaten_steal_inline.h + ai/monsters/chimera/chimera_state_threaten_walk.h + ai/monsters/chimera/chimera_state_threaten_walk_inline.h + ai/monsters/controller/controller_animation.cpp + ai/monsters/controller/controller_animation.h + ai/monsters/controller/controller.cpp + ai/monsters/controller/controller_direction.cpp + ai/monsters/controller/controller_direction.h + ai/monsters/controller/controller.h + ai/monsters/controller/controller_psy_hit.cpp + ai/monsters/controller/controller_psy_hit_effector.cpp + ai/monsters/controller/controller_psy_hit_effector.h + ai/monsters/controller/controller_psy_hit.h + ai/monsters/controller/controller_script.cpp + ai/monsters/controller/controller_state_attack_camp.h + ai/monsters/controller/controller_state_attack_camp_inline.h + ai/monsters/controller/controller_state_attack_fast_move.h + ai/monsters/controller/controller_state_attack_fast_move_inline.h + ai/monsters/controller/controller_state_attack_fire.h + ai/monsters/controller/controller_state_attack_fire_inline.h + ai/monsters/controller/controller_state_attack.h + ai/monsters/controller/controller_state_attack_hide.h + ai/monsters/controller/controller_state_attack_hide_inline.h + ai/monsters/controller/controller_state_attack_hide_lite.h + ai/monsters/controller/controller_state_attack_hide_lite_inline.h + ai/monsters/controller/controller_state_attack_inline.h + ai/monsters/controller/controller_state_attack_moveout.h + ai/monsters/controller/controller_state_attack_moveout_inline.h + ai/monsters/controller/controller_state_control_hit.h + ai/monsters/controller/controller_state_control_hit_inline.h + ai/monsters/controller/controller_state_manager.cpp + ai/monsters/controller/controller_state_manager.h + ai/monsters/controller/controller_state_panic.h + ai/monsters/controller/controller_tube.h + ai/monsters/controller/controller_tube_inline.h + ai/monsters/dog/dog.cpp + ai/monsters/dog/dog.h + ai/monsters/dog/dog_script.cpp + ai/monsters/dog/dog_state_manager.cpp + ai/monsters/dog/dog_state_manager.h + ai/monsters/flesh/flesh.cpp + ai/monsters/flesh/flesh.h + ai/monsters/flesh/flesh_script.cpp + ai/monsters/flesh/flesh_state_manager.cpp + ai/monsters/flesh/flesh_state_manager.h + ai/monsters/fracture/fracture.cpp + ai/monsters/fracture/fracture.h + ai/monsters/fracture/fracture_script.cpp + ai/monsters/fracture/fracture_state_manager.cpp + ai/monsters/fracture/fracture_state_manager.h + ai/monsters/group_states/group_state_attack.h + ai/monsters/group_states/group_state_attack_inline.h + ai/monsters/group_states/group_state_attack_run.h + ai/monsters/group_states/group_state_attack_run_inline.h + ai/monsters/group_states/group_state_custom.h + ai/monsters/group_states/group_state_custom_inline.h + ai/monsters/group_states/group_state_eat_drag.h + ai/monsters/group_states/group_state_eat_drag_inline.h + ai/monsters/group_states/group_state_eat_eat.h + ai/monsters/group_states/group_state_eat_eat_inline.h + ai/monsters/group_states/group_state_eat.h + ai/monsters/group_states/group_state_eat_inline.h + ai/monsters/group_states/group_state_hear_danger_sound.h + ai/monsters/group_states/group_state_hear_danger_sound_inline.h + ai/monsters/group_states/group_state_home_point_attack.h + ai/monsters/group_states/group_state_home_point_attack_inline.h + ai/monsters/group_states/group_state_panic.h + ai/monsters/group_states/group_state_panic_inline.h + ai/monsters/group_states/group_state_panic_run.h + ai/monsters/group_states/group_state_panic_run_inline.h + ai/monsters/group_states/group_state_rest.h + ai/monsters/group_states/group_state_rest_idle.h + ai/monsters/group_states/group_state_rest_idle_inline.h + ai/monsters/group_states/group_state_rest_inline.h + ai/monsters/group_states/group_state_squad_move_to_radius.h + ai/monsters/group_states/group_state_squad_move_to_radius_inline.h + ai/monsters/group_states/state_adapter.h + ai/monsters/poltergeist/poltergeist_ability.cpp + ai/monsters/poltergeist/poltergeist.cpp + ai/monsters/poltergeist/poltergeist_flame_thrower.cpp + ai/monsters/poltergeist/poltergeist.h + ai/monsters/poltergeist/poltergeist_movement.cpp + ai/monsters/poltergeist/poltergeist_movement.h + ai/monsters/poltergeist/poltergeist_script.cpp + ai/monsters/poltergeist/poltergeist_state_attack_hidden.h + ai/monsters/poltergeist/poltergeist_state_attack_hidden_inline.h + ai/monsters/poltergeist/poltergeist_state_manager.cpp + ai/monsters/poltergeist/poltergeist_state_manager.h + ai/monsters/poltergeist/poltergeist_state_rest.h + ai/monsters/poltergeist/poltergeist_telekinesis.cpp + ai/monsters/pseudodog/pseudodog.cpp + ai/monsters/pseudodog/pseudodog.h + ai/monsters/pseudodog/pseudodog_psi_effector.cpp + ai/monsters/pseudodog/pseudodog_psi_effector.h + ai/monsters/pseudodog/pseudodog_script.cpp + ai/monsters/pseudodog/pseudodog_state_manager.cpp + ai/monsters/pseudodog/pseudodog_state_manager.h + ai/monsters/pseudodog/psy_dog_aura.cpp + ai/monsters/pseudodog/psy_dog_aura.h + ai/monsters/pseudodog/psy_dog.cpp + ai/monsters/pseudodog/psy_dog.h + ai/monsters/pseudodog/psy_dog_state_manager.cpp + ai/monsters/pseudodog/psy_dog_state_manager.h + ai/monsters/pseudodog/psy_dog_state_psy_attack.h + ai/monsters/pseudodog/psy_dog_state_psy_attack_hide.h + ai/monsters/pseudodog/psy_dog_state_psy_attack_hide_inline.h + ai/monsters/pseudodog/psy_dog_state_psy_attack_inline.h + ai/monsters/pseudogigant/pseudo_gigant.cpp + ai/monsters/pseudogigant/pseudo_gigant.h + ai/monsters/pseudogigant/pseudogigant_script.cpp + ai/monsters/pseudogigant/pseudogigant_state_manager.cpp + ai/monsters/pseudogigant/pseudogigant_state_manager.h + ai/monsters/pseudogigant/pseudo_gigant_step_effector.cpp + ai/monsters/pseudogigant/pseudo_gigant_step_effector.h + ai/monsters/rats/ai_rat_animations.cpp + ai/monsters/rats/ai_rat_behaviour.cpp + ai/monsters/rats/ai_rat.cpp + ai/monsters/rats/ai_rat_feel.cpp + ai/monsters/rats/ai_rat_fire.cpp + #ai/monsters/rats/ai_rat_fsm.cpp + ai/monsters/rats/ai_rat.h + ai/monsters/rats/ai_rat_impl.h + ai/monsters/rats/ai_rat_inline.h + ai/monsters/rats/ai_rat_space.h + ai/monsters/rats/ai_rat_templates.cpp + ai/monsters/rats/rat_state_activation.cpp + ai/monsters/rats/rat_state_initialize.cpp + ai/monsters/rats/rat_state_switch.cpp + ai/monsters/snork/snork.cpp + ai/monsters/snork/snork.h + ai/monsters/snork/snork_jump.cpp + ai/monsters/snork/snork_jump.h + ai/monsters/snork/snork_script.cpp + ai/monsters/snork/snork_state_manager.cpp + ai/monsters/snork/snork_state_manager.h + ai/monsters/states/monster_state_attack_camp.h + ai/monsters/states/monster_state_attack_camp_inline.h + ai/monsters/states/monster_state_attack_camp_stealout.h + ai/monsters/states/monster_state_attack_camp_stealout_inline.h + ai/monsters/states/monster_state_attack.h + ai/monsters/states/monster_state_attack_inline.h + ai/monsters/states/monster_state_attack_melee.h + ai/monsters/states/monster_state_attack_melee_inline.h + ai/monsters/states/monster_state_attack_on_run.h + ai/monsters/states/monster_state_attack_on_run_inline.h + ai/monsters/states/monster_state_attack_run_attack.h + ai/monsters/states/monster_state_attack_run_attack_inline.h + ai/monsters/states/monster_state_attack_run.h + ai/monsters/states/monster_state_attack_run_inline.h + ai/monsters/states/monster_state_controlled_attack.h + ai/monsters/states/monster_state_controlled_attack_inline.h + ai/monsters/states/monster_state_controlled_follow.h + ai/monsters/states/monster_state_controlled_follow_inline.h + ai/monsters/states/monster_state_controlled.h + ai/monsters/states/monster_state_controlled_inline.h + ai/monsters/states/monster_state_eat_drag.h + ai/monsters/states/monster_state_eat_drag_inline.h + ai/monsters/states/monster_state_eat_eat.h + ai/monsters/states/monster_state_eat_eat_inline.h + ai/monsters/states/monster_state_eat.h + ai/monsters/states/monster_state_eat_inline.h + ai/monsters/states/monster_state_find_enemy_angry.h + ai/monsters/states/monster_state_find_enemy_angry_inline.h + ai/monsters/states/monster_state_find_enemy.h + ai/monsters/states/monster_state_find_enemy_inline.h + ai/monsters/states/monster_state_find_enemy_look.h + ai/monsters/states/monster_state_find_enemy_look_inline.h + ai/monsters/states/monster_state_find_enemy_run.h + ai/monsters/states/monster_state_find_enemy_run_inline.h + ai/monsters/states/monster_state_find_enemy_walk.h + ai/monsters/states/monster_state_find_enemy_walk_inline.h + ai/monsters/states/monster_state_hear_danger_sound.h + ai/monsters/states/monster_state_hear_danger_sound_inline.h + ai/monsters/states/monster_state_hear_int_sound.h + ai/monsters/states/monster_state_hear_int_sound_inline.h + ai/monsters/states/monster_state_help_sound.h + ai/monsters/states/monster_state_help_sound_inline.h + ai/monsters/states/monster_state_hitted.h + ai/monsters/states/monster_state_hitted_hide.h + ai/monsters/states/monster_state_hitted_hide_inline.h + ai/monsters/states/monster_state_hitted_inline.h + ai/monsters/states/monster_state_hitted_moveout.h + ai/monsters/states/monster_state_hitted_moveout_inline.h + ai/monsters/states/monster_state_home_point_attack.h + ai/monsters/states/monster_state_home_point_attack_inline.h + ai/monsters/states/monster_state_home_point_danger.h + ai/monsters/states/monster_state_home_point_danger_inline.h + ai/monsters/states/monster_state_home_point_rest.h + ai/monsters/states/monster_state_home_point_rest_inline.h + ai/monsters/states/monster_state_panic.h + ai/monsters/states/monster_state_panic_inline.h + ai/monsters/states/monster_state_panic_run.h + ai/monsters/states/monster_state_panic_run_inline.h + ai/monsters/states/monster_state_rest_fun.h + ai/monsters/states/monster_state_rest_fun_inline.h + ai/monsters/states/monster_state_rest.h + ai/monsters/states/monster_state_rest_idle.h + ai/monsters/states/monster_state_rest_idle_inline.h + ai/monsters/states/monster_state_rest_inline.h + ai/monsters/states/monster_state_rest_sleep.h + ai/monsters/states/monster_state_rest_sleep_inline.h + ai/monsters/states/monster_state_rest_walk_graph.h + ai/monsters/states/monster_state_rest_walk_graph_inline.h + ai/monsters/states/monster_state_smart_terrain_task_graph_walk.h + ai/monsters/states/monster_state_smart_terrain_task_graph_walk_inline.h + ai/monsters/states/monster_state_smart_terrain_task.h + ai/monsters/states/monster_state_smart_terrain_task_inline.h + ai/monsters/states/monster_state_squad_rest_follow.h + ai/monsters/states/monster_state_squad_rest_follow_inline.h + ai/monsters/states/monster_state_squad_rest.h + ai/monsters/states/monster_state_squad_rest_inline.h + ai/monsters/states/monster_state_steal.h + ai/monsters/states/monster_state_steal_inline.h + ai/monsters/states/state_custom_action.h + ai/monsters/states/state_custom_action_inline.h + ai/monsters/states/state_custom_action_look.h + ai/monsters/states/state_custom_action_look_inline.h + ai/monsters/states/state_data.h + ai/monsters/states/state_hide_from_point.h + ai/monsters/states/state_hide_from_point_inline.h + ai/monsters/states/state_hit_object.h + ai/monsters/states/state_hit_object_inline.h + ai/monsters/states/state_look_point.h + ai/monsters/states/state_look_point_inline.h + ai/monsters/states/state_look_unprotected_area.h + ai/monsters/states/state_look_unprotected_area_inline.h + ai/monsters/states/state_move_around_point.h + ai/monsters/states/state_move_around_point_inline.h + ai/monsters/states/state_move_to_point.h + ai/monsters/states/state_move_to_point_inline.h + ai/monsters/states/state_move_to_restrictor.h + ai/monsters/states/state_move_to_restrictor_inline.h + ai/monsters/states/state_test_look_actor.h + ai/monsters/states/state_test_look_actor_inline.h + ai/monsters/states/state_test_state.h + ai/monsters/states/state_test_state_inline.h + ai/monsters/tushkano/tushkano.cpp + ai/monsters/tushkano/tushkano.h + ai/monsters/tushkano/tushkano_script.cpp + ai/monsters/tushkano/tushkano_state_manager.cpp + ai/monsters/tushkano/tushkano_state_manager.h + ai/monsters/zombie/zombie.cpp + ai/monsters/zombie/zombie.h + ai/monsters/zombie/zombie_script.cpp + ai/monsters/zombie/zombie_state_attack_run.h + ai/monsters/zombie/zombie_state_attack_run_inline.h + ai/monsters/zombie/zombie_state_manager.cpp + ai/monsters/zombie/zombie_state_manager.h + ai/phantom/phantom.cpp + ai/phantom/phantom.h + ai/stalker/ai_stalker_cover.cpp + ai/stalker/ai_stalker.cpp + ai/stalker/ai_stalker_debug.cpp + ai/stalker/ai_stalker_events.cpp + ai/stalker/ai_stalker_feel.cpp + ai/stalker/ai_stalker_fire.cpp + ai/stalker/ai_stalker.h + ai/stalker/ai_stalker_impl.h + ai/stalker/ai_stalker_inline.h + ai/stalker/ai_stalker_misc.cpp + ai/stalker/ai_stalker_script.cpp + ai/stalker/ai_stalker_script_entity.cpp + ai/stalker/ai_stalker_space.h + ai/trader/ai_trader.cpp + ai/trader/ai_trader.h + ai/trader/ai_trader_script.cpp + ai/trader/trader_animation.cpp + ai/trader/trader_animation.h + CdkeyDecode/base32.c + CdkeyDecode/base32.h + CdkeyDecode/cdkeydecode.c + CdkeyDecode/cdkeydecode.h + ik/aint.cxx + ik/aint.h + ik/Dof7control.cpp + ik/Dof7control.h + ik/eqn.cxx + ik/eqn.h + ik/eulersolver.cxx + ik/eulersolver.h + ik/IKLimb.cpp + ik/IKLimb.h + ik/jtlimits.cxx + ik/jtlimits.h + ik/limb.cxx + ik/limb.h + ik/math3d.cpp + ik/math3d.h + ik/mathTrig.cpp + ik/mathTrig.h + ui/ArtefactDetectorUI.cpp + ui/ArtefactDetectorUI.h + #ui/CExtraContentFilter.cpp + #ui/CExtraContentFilter.h + ui/ChangeWeatherDialog.cpp + ui/ChangeWeatherDialog.hpp + ui/FactionState.cpp + ui/FactionState.h + ui/FactionState_inline.h + ui/FractionState.cpp + ui/FractionState.h + ui/FractionState_inline.h + ui/KillMessageStruct.h + ui/map_hint.cpp + ui/map_hint.h + ui/MMSound.cpp + ui/MMSound.h + ui/Restrictions.cpp + ui/Restrictions.h + ui/ServerList.cpp + ui/ServerList_GameSpy_func.cpp + ui/ServerList.h + ui/TeamInfo.cpp + ui/TeamInfo.h + ui/UIAchievements.cpp + ui/UIAchievements.h + ui/UIActorInfo.cpp + ui/UIActorInfo.h + ui/UIActorMenu_action.cpp + ui/UIActorMenu.cpp + ui/UIActorMenuDeadBodySearch.cpp + ui/UIActorMenu.h + ui/UIActorMenuInitialize.cpp + ui/UIActorMenuInventory.cpp + ui/UIActorMenu_script.cpp + ui/UIActorMenuTrade.cpp + ui/UIActorMenuUpgrade.cpp + ui/UIActorStateInfo.cpp + ui/UIActorStateInfo.h + ui/ui_af_params.cpp + ui/ui_af_params.h + ui/UIArtefactPanel.cpp + ui/UIArtefactPanel.h + ui/UIBoosterInfo.cpp + ui/UIBoosterInfo.h + ui/UIBuyWeaponTab.cpp + ui/UIBuyWeaponTab.h + ui/UIBuyWndBase.h + ui/UIBuyWndShared.cpp + ui/UIBuyWndShared.h + ui/UICarPanel.cpp + ui/UICarPanel.h + ui/UICDkey.cpp + ui/UICDkey.h + ui/UICellCustomItems.cpp + ui/UICellCustomItems.h + ui/UICellItem.cpp + ui/UICellItemFactory.cpp + ui/UICellItemFactory.h + ui/UICellItem.h + ui/UIChangeMap.cpp + ui/UIChangeMap.h + ui/UICharacterInfo.cpp + ui/UICharacterInfo.h + ui/UIChatWnd.cpp + ui/UIChatWnd.h + ui/UIColorAnimatorWrapper.cpp + ui/UIColorAnimatorWrapper.h + ui/UIDebugFonts.cpp + ui/UIDebugFonts.h + ui/UIDemoPlayControl.cpp + ui/UIDemoPlayControl.h + ui/UIDialogWnd.cpp + ui/UIDialogWnd.h + ui/UIDiaryWnd.h + ui/UIDragDropListEx.cpp + ui/UIDragDropListEx.h + ui/UIDragDropReferenceList.cpp + ui/UIDragDropReferenceList.h + ui/UIEditKeyBind.cpp + ui/UIEditKeyBind.h + ui/UIFactionWarWnd.cpp + ui/UIFactionWarWnd.h + #ui/UIFrags2.cpp + #ui/UIFrags2.h + #ui/UIFrags.cpp + #ui/UIFrags.h + #ui/UIFrameLine.cpp + #ui/UIFrameLine.h + ui/UIGameLog.cpp + ui/UIGameLog.h + ui/UIGameTutorial.cpp + ui/UIGameTutorial.h + ui/UIGameTutorialSimpleItem.cpp + ui/UIGameTutorialVideoItem.cpp + ui/UIHelper.cpp + ui/UIHelper.h + ui/UIHudStatesWnd.cpp + ui/UIHudStatesWnd.h + ui/UIInventoryUpgradeWnd_add.cpp + ui/UIInventoryUpgradeWnd.cpp + ui/UIInventoryUpgradeWnd.h + ui/UIInventoryUtilities.cpp + ui/UIInventoryUtilities.h + ui/UIInvUpgrade.cpp + ui/UIInvUpgrade.h + ui/UIInvUpgradeInfo.cpp + ui/UIInvUpgradeInfo.h + ui/UIInvUpgradeProperty.cpp + ui/UIInvUpgradeProperty.h + ui/UIItemInfo.cpp + ui/UIItemInfo.h + ui/UIKeyBinding.cpp + ui/UIKeyBinding.h + ui/UIKickPlayer.cpp + ui/UIKickPlayer.h + ui/UILabel.cpp + ui/UILabel.h + #ui/UIListBox_script.cpp + #ui/UIListItemAdv.cpp + #ui/UIListItemAdv.h + #ui/UIListItemEx.cpp + #ui/UIListItemEx.h + #ui/UIListItem.cpp + #ui/UIListItem.h + ui/UIListItemServer.cpp + ui/UIListItemServer.h + #ui/UIListWnd.cpp + #ui/UIListWnd.h + #ui/UIListWnd_inline.h + #ui/UIListWnd_script.cpp + ui/UILoadingScreen.cpp + ui/UILoadingScreen.h + ui/UILoadingScreenHardcoded.h + ui/UILogsWnd.cpp + ui/UILogsWnd.h + ui/UIMainIngameWnd.cpp + ui/UIMainIngameWnd.h + ui/UIMap.cpp + ui/UIMapDesc.cpp + ui/UIMapDesc.h + ui/UIMapFilters.cpp + ui/UIMapFilters.h + ui/UIMap.h + ui/UIMapInfo.cpp + ui/UIMapInfo.h + ui/UIMapInfo_script.cpp + ui/UIMapLegend.cpp + ui/UIMapLegend.h + ui/UIMapList.cpp + ui/UIMapList.h + ui/UIMapWnd2.cpp + ui/UIMapWndActions.cpp + ui/UIMapWndActions.h + ui/UIMapWndActionsSpace.h + ui/UIMapWnd.cpp + ui/UIMapWnd.h + ui/UIMessageBoxEx.cpp + ui/UIMessageBoxEx.h + ui/UIMessagesWindow.cpp + ui/UIMessagesWindow.h + ui/UIMMShniaga.cpp + ui/UIMMShniaga.h + ui/UIMoneyIndicator.cpp + ui/UIMoneyIndicator.h + ui/UIMotionIcon.cpp + ui/UIMotionIcon.h + ui/UIMPAdminMenu.cpp + ui/UIMPAdminMenu.h + ui/UIMPChangeMapAdm.cpp + ui/UIMPChangeMapAdm.h + ui/UIMpItemsStoreWnd.cpp + ui/UIMpItemsStoreWnd.h + ui/UIMPPlayersAdm.cpp + ui/UIMPPlayersAdm.h + ui/UIMPServerAdm.cpp + ui/UIMPServerAdm.h + ui/UIMpTradeWnd.cpp + ui/UIMpTradeWnd.h + ui/UIMpTradeWnd_init.cpp + ui/UIMpTradeWnd_items.cpp + ui/UIMpTradeWnd_misc.cpp + ui/UIMpTradeWnd_trade.cpp + ui/UIMpTradeWnd_wpn.cpp + ui/UINewsItemWnd.cpp + ui/UINewsItemWnd.h + ui/UIOptConCom.cpp + ui/UIOptConCom.h + ui/UIOutfitInfo.cpp + ui/UIOutfitInfo.h + ui/UIOutfitSlot.cpp + ui/UIOutfitSlot.h + ui/UIPdaKillMessage.cpp + ui/UIPdaKillMessage.h + ui/UIPdaMsgListItem.cpp + ui/UIPdaMsgListItem.h + ui/UIPdaWnd.cpp + ui/UIPdaWnd.h + ui/UIRankFaction.cpp + ui/UIRankFaction.h + ui/UIRankIndicator.cpp + ui/UIRankIndicator.h + ui/UIRankingWnd.cpp + ui/UIRankingWnd.h + ui/UIScriptWnd.cpp + ui/UIScriptWnd.h + ui/UIScriptWnd_script.cpp + ui/UISecondTaskWnd.cpp + ui/UISecondTaskWnd.h + ui/UIServerInfo.cpp + ui/UIServerInfo.h + ui/UISkinSelector.cpp + ui/UISkinSelector.h + ui/UISleepStatic.cpp + ui/UISleepStatic.h + ui/UISpawnWnd.cpp + ui/UISpawnWnd.h + ui/UISpeechMenu.cpp + ui/UISpeechMenu.h + ui/UIStatix.cpp + ui/UIStatix.h + ui/UIStats.cpp + ui/UIStats.h + ui/UIStatsIcon.cpp + ui/UIStatsIcon.h + ui/UIStatsPlayerInfo.cpp + ui/UIStatsPlayerInfo.h + ui/UIStatsPlayerList.cpp + ui/UIStatsPlayerList.h + ui/UITabButtonMP.cpp + ui/UITabButtonMP.h + ui/UITalkDialogWnd.cpp + ui/UITalkDialogWnd.h + ui/UITalkWnd.cpp + ui/UITalkWnd.h + ui/UITaskWnd.cpp + ui/UITaskWnd.h + #ui/UITextBanner.cpp + #ui/UITextBanner.h + ui/UITextVote.cpp + ui/UITextVote.h + ui/UITradeBar.cpp + ui/UITradeBar.h + ui/UITradeWnd.cpp + ui/UITradeWnd.h + ui/UIVersionList.cpp + ui/UIVersionList.h + ui/UIVote.cpp + ui/UIVote.h + ui/UIVoteStatusWnd.cpp + ui/UIVoteStatusWnd.h + ui/UIVotingCategory.cpp + ui/UIVotingCategory.h + ui/UIWarState.cpp + ui/UIWarState.h + ui/UIWeightBar.cpp + ui/UIWeightBar.h + ui/UIWindow_script.cpp + ui/UIWpnParams.cpp + ui/UIWpnParams.h + ui/UIXmlInit.cpp + ui/UIXmlInit.h + gamespy/GameSpy_QR2_callbacks.cpp + gamespy/GameSpy_QR2_callbacks.h + ../xrServerEntities/ai_sounds.h + ../xrServerEntities/alife_human_brain.cpp + ../xrServerEntities/alife_human_brain.h + ../xrServerEntities/alife_human_brain_inline.h + ../xrServerEntities/alife_monster_brain.cpp + ../xrServerEntities/alife_monster_brain.h + ../xrServerEntities/alife_monster_brain_inline.h + ../xrServerEntities/alife_movement_manager_holder.h + ../xrServerEntities/alife_space.cpp + ../xrServerEntities/alife_space.h + ../xrServerEntities/character_info.cpp + ../xrServerEntities/character_info_defs.h + ../xrServerEntities/character_info.h + ../xrServerEntities/clsid_game.h + ../xrServerEntities/game_base_space.h + ../xrServerEntities/gametype_chooser.cpp + ../xrServerEntities/gametype_chooser.h + ../xrServerEntities/InfoPortionDefs.h + ../xrServerEntities/inventory_space.h + ../xrServerEntities/ItemListTypes.h + ../xrServerEntities/object_factory.cpp + ../xrServerEntities/object_factory.h + ../xrServerEntities/object_factory_impl.h + ../xrServerEntities/object_factory_inline.h + ../xrServerEntities/object_factory_register.cpp + ../xrServerEntities/object_factory_script.cpp + ../xrServerEntities/object_factory_space.h + ../xrServerEntities/object_item_abstract.h + ../xrServerEntities/object_item_abstract_inline.h + ../xrServerEntities/object_item_client_server.h + ../xrServerEntities/object_item_client_server_inline.h + ../xrServerEntities/object_item_script.cpp + ../xrServerEntities/object_item_script.h + ../xrServerEntities/object_item_single.h + ../xrServerEntities/object_item_single_inline.h + ../xrServerEntities/pch_script.cpp + ../xrServerEntities/pch_script.h + ../xrServerEntities/PHNetState.h + ../xrServerEntities/PHSynchronize.h + ../xrServerEntities/PropertiesListHelper.h + ../xrServerEntities/PropertiesListTypes.h + ../xrServerEntities/restriction_space.h + ../xrServerEntities/script_fcolor_script.cpp + ../xrServerEntities/script_flags_script.cpp + ../xrServerEntities/script_fmatrix_script.cpp + ../xrServerEntities/script_fvector_script.cpp + ../xrServerEntities/script_ini_file.cpp + ../xrServerEntities/script_ini_file.h + ../xrServerEntities/script_ini_file_script.cpp + ../xrServerEntities/script_net_packet_script.cpp + ../xrServerEntities/script_reader_script.cpp + ../xrServerEntities/script_rtoken_list.h + ../xrServerEntities/script_rtoken_list_inline.h + ../xrServerEntities/script_rtoken_list_script.cpp + ../xrServerEntities/script_sound_type_script.cpp + ../xrServerEntities/script_token_list.cpp + ../xrServerEntities/script_token_list.h + ../xrServerEntities/script_token_list_script.cpp + ../xrServerEntities/script_value_container.h + ../xrServerEntities/script_value_container_impl.h + ../xrServerEntities/ShapeData.h + ../xrServerEntities/shared_data.h + ../xrServerEntities/smart_cast.cpp + ../xrServerEntities/smart_cast.h + ../xrServerEntities/smart_cast_impl0.h + ../xrServerEntities/smart_cast_impl1.h + ../xrServerEntities/smart_cast_impl2.h + ../xrServerEntities/smart_cast_stats.cpp + ../xrServerEntities/specific_character.cpp + ../xrServerEntities/specific_character.h + ../xrServerEntities/xml_str_id_loader.h + ../xrServerEntities/xrEProps.h + ../xrServerEntities/xrMessages.h + ../xrServerEntities/xrServer_Factory.cpp + ../xrServerEntities/xrServer_Object_Base.cpp + ../xrServerEntities/xrServer_Object_Base.h + ../xrServerEntities/xrServer_Objects_Abstract.cpp + ../xrServerEntities/xrServer_Objects_Abstract.h + ../xrServerEntities/xrServer_Objects_ALife_All.h + ../xrServerEntities/xrServer_Objects_ALife.cpp + ../xrServerEntities/xrServer_Objects_ALife.h + ../xrServerEntities/xrServer_Objects_ALife_Items.cpp + ../xrServerEntities/xrServer_Objects_ALife_Items.h + ../xrServerEntities/xrServer_Objects_ALife_Items_script2.cpp + ../xrServerEntities/xrServer_Objects_ALife_Items_script3.cpp + ../xrServerEntities/xrServer_Objects_ALife_Items_script.cpp + ../xrServerEntities/xrServer_Objects_ALife_Monsters.cpp + ../xrServerEntities/xrServer_Objects_ALife_Monsters.h + ../xrServerEntities/xrServer_Objects_ALife_Monsters_script2.cpp + ../xrServerEntities/xrServer_Objects_ALife_Monsters_script3.cpp + ../xrServerEntities/xrServer_Objects_ALife_Monsters_script4.cpp + ../xrServerEntities/xrServer_Objects_ALife_Monsters_script.cpp + ../xrServerEntities/xrServer_Objects_ALife_script2.cpp + ../xrServerEntities/xrServer_Objects_ALife_script3.cpp + ../xrServerEntities/xrServer_Objects_ALife_script.cpp + ../xrServerEntities/xrServer_Objects_Alife_Smartcovers.cpp + ../xrServerEntities/xrServer_Objects_Alife_Smartcovers.h + ../xrServerEntities/xrServer_Objects_Alife_Smartcovers_script.cpp + ../xrServerEntities/xrServer_Objects.cpp + ../xrServerEntities/xrServer_Objects.h + ../xrServerEntities/xrServer_Objects_script2.cpp + ../xrServerEntities/xrServer_Objects_script.cpp + ../xrServerEntities/xrServer_script_macroses.h + ../xrServerEntities/xrServer_Space.h ) -group_sources(SRC_FILES) - -add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) - -target_include_directories(${PROJECT_NAME} +target_include_directories(xrGame PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/src - ${CMAKE_SOURCE_DIR}/src/xrServerEntities - $<$:${CMAKE_SOURCE_DIR}/Externals/cximage> - ${CMAKE_SOURCE_DIR}/Externals/GameSpy/src - ${CMAKE_SOURCE_DIR}/Externals/luabind - ${CMAKE_SOURCE_DIR}/Externals/ode/include - ${CMAKE_SOURCE_DIR}/Externals/OpenAutomate/inc - ${CMAKE_SOURCE_DIR}/sdk/include - ${SDL2_INCLUDE_DIRS} + "${CMAKE_CURRENT_SOURCE_DIR}" + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/src/xrServerEntities" + "$<$:${CMAKE_SOURCE_DIR}/Externals/cximage>" + "${CMAKE_SOURCE_DIR}/Externals/GameSpy/src" + "${CMAKE_SOURCE_DIR}/Externals/ode/include" + "${CMAKE_SOURCE_DIR}/Externals/OpenAutomate/inc" + "${CMAKE_SOURCE_DIR}/sdk/include" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrGame PRIVATE xrCore xrEngine xrMiscMath - xrLuabind xrImGui xrAPI xrAICore @@ -2641,42 +2634,45 @@ target_link_libraries(${PROJECT_NAME} xrScriptEngine $<$:cximage> xrGameSpy - ${LUA_LIBRARIES} xrCDB xrPhysics xrNetServer ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrGame + PUBLIC + DECLARE_SPECIALIZATION + PURE_DYNAMIC_CAST + PRIVATE - -DXRGAME_EXPORTS + XRGAME_EXPORTS ) -target_compile_options(${PROJECT_NAME} +target_compile_options(xrGame PRIVATE -Wno-trigraphs ) -if ((CMAKE_BUILD_TYPE STREQUAL "Debug" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo") AND PROJECT_PLATFORM_E2K) # E2K: hack for debug compile (MCST lcc compiler does not support a file > 4Gb, this is a bug in EDG frontend) - target_compile_options(${PROJECT_NAME} +# E2K: hack for debug compile (MCST lcc compiler does not support a file > 4Gb, this is a bug in EDG frontend) +if ((CMAKE_BUILD_TYPE STREQUAL "Debug" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo") AND PROJECT_PLATFORM_E2K) + target_compile_options(xrGame PRIVATE -g0 ) message(STATUS "Build type is ${CMAKE_BUILD_TYPE}, so disable generation of debug info for xrGame module, because MCST lcc compiler does not support a file > 4 GB (this is a bug in EDG frontend).") endif() -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrGame PROPERTIES PREFIX "" UNITY_BUILD_BATCH_SIZE 50 ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrGame PRIVATE - "$<$:StdAfx.h>" - "$<$:pch_script.h>" + $<$:StdAfx.h> + $<$:pch_script.h> ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS xrGame LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/src/xrGameSpy/CMakeLists.txt b/src/xrGameSpy/CMakeLists.txt index 86126958e21..6c024db1bb2 100644 --- a/src/xrGameSpy/CMakeLists.txt +++ b/src/xrGameSpy/CMakeLists.txt @@ -1,88 +1,86 @@ -project(xrGameSpy) +if (STATIC_BUILD) + add_library(xrGameSpy STATIC) +else() + add_library(xrGameSpy SHARED) +endif() -set(KERNEL_SRC - "stdafx.cpp" - "stdafx.h" - "xrGameSpy.cpp" - "xrGameSpy.h" - "xrGameSpy_MainDefs.h" -) -set(WRAPPER_SRC - "GameSpy_ATLAS.cpp" - "GameSpy_ATLAS.h" - "GameSpy_Available.cpp" - "GameSpy_Available.h" - "GameSpy_Browser.cpp" - "GameSpy_Browser.h" - "GameSpy_BrowsersWrapper.cpp" - "GameSpy_BrowsersWrapper.h" - "GameSpy_Full.cpp" - "GameSpy_Full.h" - "GameSpy_GCD_Client.cpp" - "GameSpy_GCD_Client.h" - "GameSpy_GCD_Server.cpp" - "GameSpy_GCD_Server.h" - "GameSpy_GP.cpp" - "GameSpy_GP.h" - "GameSpy_HTTP.cpp" - "GameSpy_HTTP.h" - "GameSpy_Keys.h" - "GameSpy_Patching.cpp" - "GameSpy_Patching.h" - "GameSpy_QR2.cpp" - "GameSpy_QR2.h" - "GameSpy_SAKE.cpp" - "GameSpy_SAKE.h" +target_sources_grouped( + TARGET xrGameSpy + NAME "Kernel" + FILES + stdafx.cpp + stdafx.h + xrGameSpy.cpp + xrGameSpy.h + xrGameSpy_MainDefs.h ) -source_group("Kernel" FILES ${KERNEL_SRC}) -source_group("Wrapper" FILES ${WRAPPER_SRC}) - -if (STATIC_BUILD) - add_library(${PROJECT_NAME} STATIC ${KERNEL_SRC} ${WRAPPER_SRC}) -else() - add_library(${PROJECT_NAME} SHARED ${KERNEL_SRC} ${WRAPPER_SRC}) -endif() +target_sources_grouped( + TARGET xrGameSpy + NAME "Wrapper" + FILES + GameSpy_ATLAS.cpp + GameSpy_ATLAS.h + GameSpy_Available.cpp + GameSpy_Available.h + GameSpy_Browser.cpp + GameSpy_Browser.h + GameSpy_BrowsersWrapper.cpp + GameSpy_BrowsersWrapper.h + GameSpy_Full.cpp + GameSpy_Full.h + GameSpy_GCD_Client.cpp + GameSpy_GCD_Client.h + GameSpy_GCD_Server.cpp + GameSpy_GCD_Server.h + GameSpy_GP.cpp + GameSpy_GP.h + GameSpy_HTTP.cpp + GameSpy_HTTP.h + GameSpy_Keys.h + GameSpy_Patching.cpp + GameSpy_Patching.h + GameSpy_QR2.cpp + GameSpy_QR2.h + GameSpy_SAKE.cpp + GameSpy_SAKE.h +) -target_include_directories(${PROJECT_NAME} +target_include_directories(xrGameSpy PRIVATE - ${CMAKE_SOURCE_DIR}/src - ${CMAKE_SOURCE_DIR}/src/xrServerEntities - ${CMAKE_SOURCE_DIR}/Externals/GameSpy/src - ${CMAKE_SOURCE_DIR}/Externals/luabind - ${CMAKE_SOURCE_DIR}/Externals/ode/include - ${CMAKE_SOURCE_DIR}/Externals/OpenAutomate/inc - ${SDL2_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/src/xrServerEntities" + "${CMAKE_SOURCE_DIR}/Externals/GameSpy/src" + "${CMAKE_SOURCE_DIR}/Externals/ode/include" + "${CMAKE_SOURCE_DIR}/Externals/OpenAutomate/inc" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrGameSpy PRIVATE xrCore xrMiscMath GameSpy-oxr - ${SDL2_LIBRARIES} ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrGameSpy PRIVATE - -DXRGAMESPY_EXPORTS - -DXRAY_DISABLE_GAMESPY_WARNINGS + XRGAMESPY_EXPORTS + XRAY_DISABLE_GAMESPY_WARNINGS ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrGameSpy PROPERTIES PREFIX "" POSITION_INDEPENDENT_CODE ON ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrGameSpy PRIVATE - "stdafx.h" + stdafx.h ) if (NOT STATIC_BUILD) - install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ + install(TARGETS xrGameSpy LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) endif() diff --git a/src/xrNetServer/CMakeLists.txt b/src/xrNetServer/CMakeLists.txt index d8b86e44e53..84012b9f117 100644 --- a/src/xrNetServer/CMakeLists.txt +++ b/src/xrNetServer/CMakeLists.txt @@ -1,62 +1,57 @@ -project(xrNetServer) - -set(SRC_FILES - "guids.cpp" - "ip_filter.cpp" - "ip_filter.h" - "NET_AuthCheck.cpp" - "NET_AuthCheck.h" - #"NET_Client.cpp" - #"NET_Client.h" - "NET_Common.cpp" - "NET_Common.h" - "NET_Compressor.cpp" - "NET_Compressor.h" - "NET_Log.cpp" - "NET_Log.h" - "NET_Messages.h" - "NET_PlayersMonitor.h" - #"NET_Server.cpp" - #"NET_Server.h" - "NET_Shared.h" - "stdafx.cpp" - "stdafx.h" - "empty/NET_Client.cpp" - "empty/NET_Client.h" - "empty/NET_Server.cpp" - "empty/NET_Server.h" +add_library(xrNetServer SHARED) + +target_sources(xrNetServer PRIVATE + guids.cpp + ip_filter.cpp + ip_filter.h + NET_AuthCheck.cpp + NET_AuthCheck.h + #NET_Client.cpp + #NET_Client.h + NET_Common.cpp + NET_Common.h + NET_Compressor.cpp + NET_Compressor.h + NET_Log.cpp + NET_Log.h + NET_Messages.h + NET_PlayersMonitor.h + #NET_Server.cpp + #NET_Server.h + NET_Shared.h + stdafx.cpp + stdafx.h + empty/NET_Client.cpp + empty/NET_Client.h + empty/NET_Server.cpp + empty/NET_Server.h ) -group_sources(SRC_FILES) - -add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) - -target_include_directories(${PROJECT_NAME} +target_include_directories(xrNetServer PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/src + "${CMAKE_CURRENT_SOURCE_DIR}" + "${CMAKE_SOURCE_DIR}/src" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrNetServer PRIVATE xrCore ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrNetServer PRIVATE - -DXR_NETSERVER_EXPORTS + XR_NETSERVER_EXPORTS ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrNetServer PROPERTIES PREFIX "" ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrNetServer PRIVATE - "stdafx.h" + stdafx.h ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS xrNetServer LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/src/xrParticles/CMakeLists.txt b/src/xrParticles/CMakeLists.txt index 711ef5f59cc..84177fd879f 100644 --- a/src/xrParticles/CMakeLists.txt +++ b/src/xrParticles/CMakeLists.txt @@ -1,12 +1,18 @@ -project(xrParticles) +add_library(xrParticles SHARED) -set(KERNEL_SRC +target_sources_grouped( + TARGET xrParticles + NAME "Kernel" + FILES "psystem.h" "stdafx.h" "stdafx.cpp" ) -set(PARTICLE_API_SRC +target_sources_grouped( + TARGET xrParticles + NAME "ParticleAPI" + FILES "noise.cpp" "noise.h" "particle_actions.cpp" @@ -22,41 +28,32 @@ set(PARTICLE_API_SRC "particle_manager.h" ) -source_group("Kernel" FILES ${KERNEL_SRC}) -source_group("ParticleAPI" FILES ${PARTICLE_API_SRC}) - -add_library(${PROJECT_NAME} SHARED - ${KERNEL_SRC} - ${PARTICLE_API_SRC} -) - -target_include_directories(${PROJECT_NAME} +target_include_directories(xrParticles PRIVATE - ${CMAKE_SOURCE_DIR}/src + "${CMAKE_SOURCE_DIR}/src" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrParticles PRIVATE xrCore xrMiscMath xrEngine ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrParticles PRIVATE - -DXR_PARTICLES_EXPORTS + XR_PARTICLES_EXPORTS ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrParticles PROPERTIES PREFIX "" ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrParticles PRIVATE - "stdafx.h" + stdafx.h ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS xrParticles LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/src/xrPhysics/CMakeLists.txt b/src/xrPhysics/CMakeLists.txt index 3367548a5dd..24e8093eff7 100644 --- a/src/xrPhysics/CMakeLists.txt +++ b/src/xrPhysics/CMakeLists.txt @@ -1,369 +1,407 @@ -project(xrPhysics) - -set(KERNEL - "stdafx.cpp" - "StdAfx.h" - "xrPhysics.cpp" - "xrPhysics.h" -) - -set(PHYSICS - "console_vars.cpp" - "console_vars.h" - "ShellHit.cpp" -) - -set(PHYSICS_ACTIVATION_BOX - "IActivationShape.cpp" - "IActivationShape.h" - "PHActivationShape.cpp" - "PHActivationShape.h" -) - -set(PHYSICS_BASE - "DamageSource.h" - "ode_include.h" - "ode_redefine.h" - "PhysicsCommon.h" - "PhysicsExternalCommon.cpp" - "PhysicsExternalCommon.h" -) - -set(PHYSICS_BASE_DEBUG - "debug_output.cpp" - "debug_output.h" -) - -set(PHYSICS_BASE_IMPACT - "PHImpact.h" -) - -set(PHYSICS_BASE_OBJECTS - "PHDefs.h" -) - -set(PHYSICS_BASE_OBJECTS_BASE_SHELL - "IPhysicsShellHolder.h" - "PhysicsShell.cpp" - "PhysicsShell.h" -) - -set(PHYSICS_BASE_OBJECTS_BASE_SHELL_ANIMATOR - "PhysicsShellAnimatorBoneData.h" - "PhysicsShellAnimator.cpp" - "PhysicsShellAnimator.h" -) - -set(PHYSICS_BASE_OBJECTS_BODY_EFFECTORS - "PHBaseBodyEffector.h" - "PHContactBodyEffector.cpp" - "PHContactBodyEffector.h" -) - -set(PHYSICS_BASE_OBJECTS_BREAKABLE - "PHFracture.cpp" - "PHFracture.h" - "PHJointDestroyInfo.cpp" - "PHJointDestroyInfo.h" - "PHShellSplitter.cpp" - "PHShellSplitter.h" -) - -set(PHYSICS_BASE_OBJECTS_COLLIDE_VALIDATOR - "ICollideValidator.h" - "PHCollideValidator.cpp" - "PHCollideValidator.h" -) - -set(PHYSICS_BASE_OBJECTS_DISABLING - "DisablingParams.cpp" - "DisablingParams.h" - "PHDisabling.cpp" - "PHDisabling.h" -) - -set(PHYSICS_BASE_OBJECTS_ELEMENT - "PHElement.cpp" - "PHElement.h" - "PHElementInline.h" - "PHElementNetState.cpp" -) - -set(PHYSICS_BASE_OBJECTS_ELEMENT_GEOM - "ExtendedGeom.cpp" - "ExtendedGeom.h" - "Geometry.cpp" - "Geometry.h" - "PHGeometryOwner.cpp" - "PHGeometryOwner.h" -) - -set(PHYSICS_BASE_OBJECTS_JOINT - "PHJoint.cpp" - "PHJoint.h" -) - -set(PHYSICS_BASE_OBJECTS_MOVE_STORAGE - "PHMoveStorage.cpp" - "PHMoveStorage.h" -) - -set(PHYSICS_BASE_OBJECTS_PH_ISLAND - "PHIsland.cpp" - "PHIsland.h" -) - -set(PHYSICS_BASE_OBJECTS_PH_NET - "../xrServerEntities/PHNetState.cpp" - "../xrServerEntities/PHNetState.h" -) - -set(PHYSICS_BASE_OBJECTS_PH_OBJECT - "PHObject.cpp" - "PHObject.h" - "PHUpdateObject.h" -) - -set(PHYSICS_BASE_OBJECTS_PHY_MOVE_ACTOR_CHARACTER - "PHActorCharacter.cpp" - "PHActorCharacter.h" - "PHActorCharacterInline.h" -) - -set(PHYSICS_BASE_OBJECTS_PHY_MOVE_AI_CHARACTER - "PHAICharacter.cpp" - "PHAICharacter.h" -) - -set(PHYSICS_BASE_OBJECTS_PHY_MOVE_BASE_CHARACTER - "IColisiondamageInfo.h" - "MovementBoxDynamicActivate.cpp" - "MovementBoxDynamicActivate.h" - "PHCharacter.cpp" - "PHCharacter.h" -) - -set(PHYSICS_BASE_OBJECTS_PHY_MOVE_CAPTURE - "IPHCapture.h" - "PHCapture.cpp" - "PHCapture.h" - "PHCaptureInit.cpp" -) - -set(PHYSICS_BASE_OBJECTS_PHY_MOVE_SIMPLE_CHARACTER - "ElevatorState.cpp" - "ElevatorState.h" - "IClimableObject.h" - "IElevatorState.h" - "PHSimpleCharacter.cpp" - "PHSimpleCharacter.h" - "PHSimpleCharacterInline.h" -) - -set(PHYSICS_BASE_OBJECTS_SCRIPT - "iphysics_scripted.h" - "physics_scripted.cpp" - "physics_scripted.h" -) - -set(PHYSICS_BASE_OBJECTS_SHELL - "PHShell.cpp" - "PHShell.h" - "PHShellActivate.cpp" - "PHShellBuildJoint.h" - "PHShellNetState.cpp" -) - -set(PHYSICS_BASE_OBJECTS_SPLITED_SHELL - "PHSplitedShell.cpp" - "PHSplitedShell.h" -) - -set(PHYSICS_BASE_OBJECTS_STATIC_SHELL - "IPHStaticGeomShell.h" - "PHStaticGeomShell.cpp" - "PHStaticGeomShell.h" -) - -set(PHYSICS_BASE_OBJECTS_UTILS - "ph_valid_ode.h" - "phvalide.cpp" - "phvalide.h" - "PHValideValues.h" -) -set(PHYSICS_BASE_OBJECTS_UTILS_INTERPOLATION - "PHInterpolation.cpp" - "PHInterpolation.h" -) - -set(PHYSICS_BASE_OBJECTS_UTILS_MATH - "CalculateTriangle.h" - "MathUtils.cpp" - "MathUtils.h" - "MathUtilsOde.h" - "matrix_utils.h" - "PHDynamicData.cpp" - "PHDynamicData.h" - "SpaceUtils.h" -) - -set(PHYSICS_BASE_OBJECTS_UTILS_STORAGE - "BlockAllocator.h" - "CycleConstStorage.h" -) - -set(PHYSICS_BASE_OBJECTS_WORLD - "GeometryBits.cpp" - "GeometryBits.h" - "IPHWorld.h" - "params.cpp" - "params.h" - "PHItemList.h" - "PHWorld.cpp" - "PHWorld.h" - "Physics.cpp" - "Physics.h" -) - -set(CAMERA_COLLISION - "ActorCameraCollision.cpp" - "ActorCameraCollision.h" -) - -set(COLLIDERS_CYL - "dcylinder/dCylinder.cpp" - "dcylinder/dCylinder.h" -) - -set(COLLIDERS_RAY_MOTIONS - "dRayMotions.cpp" - "dRayMotions.h" -) - -set(COLLIDERS_TRI - "tri-colliderknoopc/__aabb_tri.h" - "tri-colliderknoopc/dcTriangle.h" - #"tri-colliderknoopc/dcTriListCollider.cpp" - #"tri-colliderknoopc/dcTriListCollider.h" - "tri-colliderknoopc/dSortTriPrimitive.cpp" - "tri-colliderknoopc/dSortTriPrimitive.h" - "tri-colliderknoopc/dTriBox.cpp" - "tri-colliderknoopc/dTriBox.h" - "tri-colliderknoopc/dTriCallideK.cpp" - "tri-colliderknoopc/dTriCollideK.h" - "tri-colliderknoopc/dTriColliderCommon.h" - "tri-colliderknoopc/dTriColliderMath.h" - "tri-colliderknoopc/dTriCylinder.cpp" - "tri-colliderknoopc/dTriCylinder.h" - "tri-colliderknoopc/dTriList.cpp" - "tri-colliderknoopc/dTriList.h" - "tri-colliderknoopc/dTriSphere.cpp" - "tri-colliderknoopc/dTriSphere.h" - "tri-colliderknoopc/dxTriList.h" - "tri-colliderknoopc/TriPrimitiveCollideClassDef.h") - -set(DAMAGE_RECEIVER - "collisiondamagereceiver.cpp" - "icollisiondamagereceiver.h" -) - -source_group("kernel" FILES ${KERNEL}) -source_group("physics" FILES ${PHYSICS}) -source_group("physics\\ActivationBox" FILES ${PHYSICS_ACTIVATION_BOX}) -source_group("physics\\Base" FILES ${PHYSICS_BASE}) -source_group("physics\\Base\\Debug" FILES ${PHYSICS_BASE_DEBUG}) -source_group("physics\\Base\\Impact" FILES ${PHYSICS_BASE_IMPACT}) -source_group("physics\\Base\\Objects" FILES ${PHYSICS_BASE_OBJECTS}) -source_group("physics\\Base\\Objects\\BaseShell" FILES ${PHYSICS_BASE_OBJECTS_BASE_SHELL}) -source_group("physics\\Base\\Objects\\BaseShell\\PhysicsShellAnimator" FILES ${PHYSICS_BASE_OBJECTS_BASE_SHELL_ANIMATOR}) -source_group("physics\\Base\\Objects\\BodyEffectors" FILES ${PHYSICS_BASE_OBJECTS_BODY_EFFECTORS}) -source_group("physics\\Base\\Objects\\Breakable" FILES ${PHYSICS_BASE_OBJECTS_BREAKABLE}) -source_group("physics\\Base\\Objects\\CollideValidator" FILES ${PHYSICS_BASE_OBJECTS_COLLIDE_VALIDATOR}) -source_group("physics\\Base\\Objects\\Disabling" FILES ${PHYSICS_BASE_OBJECTS_DISABLING}) -source_group("physics\\Base\\Objects\\Element" FILES ${PHYSICS_BASE_OBJECTS_ELEMENT}) -source_group("physics\\Base\\Objects\\Element\\Geom" FILES ${PHYSICS_BASE_OBJECTS_ELEMENT_GEOM}) -source_group("physics\\Base\\Objects\\Joint" FILES ${PHYSICS_BASE_OBJECTS_JOINT}) -source_group("physics\\Base\\Objects\\MoveStorage" FILES ${PHYSICS_BASE_OBJECTS_MOVE_STORAGE}) -source_group("physics\\Base\\Objects\\PHIsland" FILES ${PHYSICS_BASE_OBJECTS_PH_ISLAND}) -source_group("physics\\Base\\Objects\\PHNet" FILES ${PHYSICS_BASE_OBJECTS_PH_NET}) -source_group("physics\\Base\\Objects\\PHObject" FILES ${PHYSICS_BASE_OBJECTS_PH_OBJECT}) -source_group("physics\\Base\\Objects\\PhyMove\\ActorCharacter" FILES ${PHYSICS_BASE_OBJECTS_PHY_MOVE_ACTOR_CHARACTER}) -source_group("physics\\Base\\Objects\\PhyMove\\AICharacter" FILES ${PHYSICS_BASE_OBJECTS_PHY_MOVE_AI_CHARACTER}) -source_group("physics\\Base\\Objects\\PhyMove\\BaseCharacter" FILES ${PHYSICS_BASE_OBJECTS_PHY_MOVE_BASE_CHARACTER}) -source_group("physics\\Base\\Objects\\PhyMove\\Capture" FILES ${PHYSICS_BASE_OBJECTS_PHY_MOVE_CAPTURE}) -source_group("physics\\Base\\Objects\\PhyMove\\SimpleCharacter" FILES ${PHYSICS_BASE_OBJECTS_PHY_MOVE_SIMPLE_CHARACTER}) -source_group("physics\\Base\\Objects\\script" FILES ${PHYSICS_BASE_OBJECTS_SCRIPT}) -source_group("physics\\Base\\Objects\\Shell" FILES ${PHYSICS_BASE_OBJECTS_SHELL}) -source_group("physics\\Base\\Objects\\SplitedShell" FILES ${PHYSICS_BASE_OBJECTS_SPLITED_SHELL}) -source_group("physics\\Base\\Objects\\StaticShell" FILES ${PHYSICS_BASE_OBJECTS_STATIC_SHELL}) -source_group("physics\\Base\\Objects\\utils" FILES ${PHYSICS_BASE_OBJECTS_UTILS}) -source_group("physics\\Base\\Objects\\utils\\Interpolation" FILES ${PHYSICS_BASE_OBJECTS_UTILS_INTERPOLATION}) -source_group("physics\\Base\\Objects\\utils\\Math" FILES ${PHYSICS_BASE_OBJECTS_UTILS_MATH}) -source_group("physics\\Base\\Objects\\utils\\Storage" FILES ${PHYSICS_BASE_OBJECTS_UTILS_STORAGE}) -source_group("physics\\Base\\Objects\\World" FILES ${PHYSICS_BASE_OBJECTS_WORLD}) -source_group("physics\\Camera collision" FILES ${CAMERA_COLLISION}) -source_group("physics\\colliders\\cyl" FILES ${COLLIDERS_CYL}) -source_group("physics\\colliders\\RayMotions" FILES ${COLLIDERS_RAY_MOTIONS}) -source_group("physics\\colliders\\tri" FILES ${COLLIDERS_TRI}) -source_group("physics\\Damage receiver" FILES ${DAMAGE_RECEIVER}) - -set(SRC_FILES - ${KERNEL} - ${PHYSICS} - ${PHYSICS_ACTIVATION_BOX} - ${PHYSICS_BASE} - ${PHYSICS_BASE_DEBUG} - ${PHYSICS_BASE_IMPACT} - ${PHYSICS_BASE_OBJECTS} - ${PHYSICS_BASE_OBJECTS_BASE_SHELL} - ${PHYSICS_BASE_OBJECTS_BASE_SHELL_ANIMATOR} - ${PHYSICS_BASE_OBJECTS_BODY_EFFECTORS} - ${PHYSICS_BASE_OBJECTS_BREAKABLE} - ${PHYSICS_BASE_OBJECTS_COLLIDE_VALIDATOR} - ${PHYSICS_BASE_OBJECTS_DISABLING} - ${PHYSICS_BASE_OBJECTS_ELEMENT} - ${PHYSICS_BASE_OBJECTS_ELEMENT_GEOM} - ${PHYSICS_BASE_OBJECTS_JOINT} - ${PHYSICS_BASE_OBJECTS_MOVE_STORAGE} - ${PHYSICS_BASE_OBJECTS_PH_ISLAND} - ${PHYSICS_BASE_OBJECTS_PH_NET} - ${PHYSICS_BASE_OBJECTS_PH_OBJECT} - ${PHYSICS_BASE_OBJECTS_PHY_MOVE_ACTOR_CHARACTER} - ${PHYSICS_BASE_OBJECTS_PHY_MOVE_AI_CHARACTER} - ${PHYSICS_BASE_OBJECTS_PHY_MOVE_BASE_CHARACTER} - ${PHYSICS_BASE_OBJECTS_PHY_MOVE_CAPTURE} - ${PHYSICS_BASE_OBJECTS_PHY_MOVE_SIMPLE_CHARACTER} - ${PHYSICS_BASE_OBJECTS_SCRIPT} - ${PHYSICS_BASE_OBJECTS_SHELL} - ${PHYSICS_BASE_OBJECTS_SPLITED_SHELL} - ${PHYSICS_BASE_OBJECTS_STATIC_SHELL} - ${PHYSICS_BASE_OBJECTS_UTILS} - ${PHYSICS_BASE_OBJECTS_UTILS_INTERPOLATION} - ${PHYSICS_BASE_OBJECTS_UTILS_MATH} - ${PHYSICS_BASE_OBJECTS_UTILS_STORAGE} - ${PHYSICS_BASE_OBJECTS_WORLD} - ${CAMERA_COLLISION} - ${COLLIDERS_CYL} - ${COLLIDERS_RAY_MOTIONS} - ${COLLIDERS_TRI} - ${DAMAGE_RECEIVER} -) - if (STATIC_BUILD) - add_library(${PROJECT_NAME} STATIC ${SRC_FILES}) + add_library(xrPhysics STATIC) else() - add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) + add_library(xrPhysics SHARED) endif() -target_include_directories(${PROJECT_NAME} +target_sources_grouped( + TARGET xrPhysics + NAME "Kernel" + FILES + stdafx.cpp + StdAfx.h + xrPhysics.cpp + xrPhysics.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics" + FILES + console_vars.cpp + console_vars.h + ShellHit.cpp +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\ActivationBox" + FILES + IActivationShape.cpp + IActivationShape.h + PHActivationShape.cpp + PHActivationShape.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base" + FILES + DamageSource.h + ode_include.h + ode_redefine.h + PhysicsCommon.h + PhysicsExternalCommon.cpp + PhysicsExternalCommon.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Debug" + FILES + debug_output.cpp + debug_output.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Impact" + FILES + PHImpact.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects" + FILES + PHDefs.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\BaseShell" + FILES + IPhysicsShellHolder.h + PhysicsShell.cpp + PhysicsShell.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\BaseShell\\PhysicsShellAnimator" + FILES + PhysicsShellAnimatorBoneData.h + PhysicsShellAnimator.cpp + PhysicsShellAnimator.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\BodyEffectors" + FILES + PHBaseBodyEffector.h + PHContactBodyEffector.cpp + PHContactBodyEffector.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\Breakable" + FILES + PHFracture.cpp + PHFracture.h + PHJointDestroyInfo.cpp + PHJointDestroyInfo.h + PHShellSplitter.cpp + PHShellSplitter.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\CollideValidator" + FILES + ICollideValidator.h + PHCollideValidator.cpp + PHCollideValidator.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\Disabling" + FILES + DisablingParams.cpp + DisablingParams.h + PHDisabling.cpp + PHDisabling.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\Element" + FILES + PHElement.cpp + PHElement.h + PHElementInline.h + PHElementNetState.cpp +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\Element\\Geom" + FILES + ExtendedGeom.cpp + ExtendedGeom.h + Geometry.cpp + Geometry.h + PHGeometryOwner.cpp + PHGeometryOwner.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\Joint" + FILES + PHJoint.cpp + PHJoint.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\MoveStorage" + FILES + PHMoveStorage.cpp + PHMoveStorage.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\PHIsland" + FILES + PHIsland.cpp + PHIsland.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\PHNet" + FILES + ../xrServerEntities/PHNetState.cpp + ../xrServerEntities/PHNetState.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\PHObject" + FILES + PHObject.cpp + PHObject.h + PHUpdateObject.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\PhyMove\\ActorCharacter" + FILES + PHActorCharacter.cpp + PHActorCharacter.h + PHActorCharacterInline.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\PhyMove\\AICharacter" + FILES + PHAICharacter.cpp + PHAICharacter.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\PhyMove\\BaseCharacter" + FILES + IColisiondamageInfo.h + MovementBoxDynamicActivate.cpp + MovementBoxDynamicActivate.h + PHCharacter.cpp + PHCharacter.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\PhyMove\\Capture" + FILES + IPHCapture.h + PHCapture.cpp + PHCapture.h + PHCaptureInit.cpp +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\PhyMove\\SimpleCharacter" + FILES + ElevatorState.cpp + ElevatorState.h + IClimableObject.h + IElevatorState.h + PHSimpleCharacter.cpp + PHSimpleCharacter.h + PHSimpleCharacterInline.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\script" + FILES + iphysics_scripted.h + physics_scripted.cpp + physics_scripted.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\Shell" + FILES + PHShell.cpp + PHShell.h + PHShellActivate.cpp + PHShellBuildJoint.h + PHShellNetState.cpp +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\SplitedShell" + FILES + PHSplitedShell.cpp + PHSplitedShell.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\StaticShell" + FILES + IPHStaticGeomShell.h + PHStaticGeomShell.cpp + PHStaticGeomShell.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\utils" + FILES + ph_valid_ode.h + phvalide.cpp + phvalide.h + PHValideValues.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\utils\\Interpolation" + FILES + PHInterpolation.cpp + PHInterpolation.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\utils\\Math" + FILES + CalculateTriangle.h + MathUtils.cpp + MathUtils.h + MathUtilsOde.h + matrix_utils.h + PHDynamicData.cpp + PHDynamicData.h + SpaceUtils.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\utils\\Storage" + FILES + BlockAllocator.h + CycleConstStorage.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Base\\Objects\\World" + FILES + GeometryBits.cpp + GeometryBits.h + IPHWorld.h + params.cpp + params.h + PHItemList.h + PHWorld.cpp + PHWorld.h + Physics.cpp + Physics.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Camera collision" + FILES + ActorCameraCollision.cpp + ActorCameraCollision.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\colliders\\cyl" + FILES + dcylinder/dCylinder.cpp + dcylinder/dCylinder.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\colliders\\RayMotions" + FILES + dRayMotions.cpp + dRayMotions.h +) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\colliders\\tri" + FILES + tri-colliderknoopc/__aabb_tri.h + tri-colliderknoopc/dcTriangle.h + #tri-colliderknoopc/dcTriListCollider.cpp + #tri-colliderknoopc/dcTriListCollider.h + tri-colliderknoopc/dSortTriPrimitive.cpp + tri-colliderknoopc/dSortTriPrimitive.h + tri-colliderknoopc/dTriBox.cpp + tri-colliderknoopc/dTriBox.h + tri-colliderknoopc/dTriCallideK.cpp + tri-colliderknoopc/dTriCollideK.h + tri-colliderknoopc/dTriColliderCommon.h + tri-colliderknoopc/dTriColliderMath.h + tri-colliderknoopc/dTriCylinder.cpp + tri-colliderknoopc/dTriCylinder.h + tri-colliderknoopc/dTriList.cpp + tri-colliderknoopc/dTriList.h + tri-colliderknoopc/dTriSphere.cpp + tri-colliderknoopc/dTriSphere.h + tri-colliderknoopc/dxTriList.h + tri-colliderknoopc/TriPrimitiveCollideClassDef.h) + +target_sources_grouped( + TARGET xrPhysics + NAME "Physics\\Damage receiver" + FILES + collisiondamagereceiver.cpp + icollisiondamagereceiver.h +) + + +target_include_directories(xrPhysics + PUBLIC + "${CMAKE_SOURCE_DIR}/Externals" + PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/src - ${CMAKE_SOURCE_DIR}/Externals/ode/include - ${SDL2_INCLUDE_DIRS} + "${CMAKE_CURRENT_SOURCE_DIR}" + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/Externals/imgui" + "${CMAKE_SOURCE_DIR}/Externals/ode/include" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrPhysics PUBLIC xrODE PRIVATE @@ -376,24 +414,23 @@ target_link_libraries(${PROJECT_NAME} xrSound ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrPhysics PRIVATE - -DXRPHYSICS_EXPORTS + XRPHYSICS_EXPORTS ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrPhysics PROPERTIES PREFIX "" POSITION_INDEPENDENT_CODE ON ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrPhysics PRIVATE - "StdAfx.h" + StdAfx.h ) if (NOT STATIC_BUILD) - install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ + install(TARGETS xrPhysics LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) endif() diff --git a/src/xrScriptEngine/CMakeLists.txt b/src/xrScriptEngine/CMakeLists.txt index 7fb216717c0..ead48c5ce2b 100644 --- a/src/xrScriptEngine/CMakeLists.txt +++ b/src/xrScriptEngine/CMakeLists.txt @@ -1,138 +1,142 @@ -project(xrScriptEngine) - -set(DEBUG_SRC - "mslotutils.h" - "script_callStack.cpp" - "script_callStack.hpp" - "script_debugger.cpp" - "script_debugger.hpp" - "script_debugger_messages.hpp" - "script_debugger_threads.cpp" - "script_debugger_threads.hpp" - "script_lua_helper.cpp" - "script_lua_helper.hpp" -) - -set(ENGINE_SRC - "BindingsDumper.cpp" - "BindingsDumper.hpp" - "Functor.hpp" - "script_engine.cpp" - "script_engine.hpp" - "script_space_forward.hpp" - "ScriptEngineScript.cpp" - "ScriptEngineScript.hpp" -) - -set(EXPORT_SRC - "ScriptExporter.cpp" - "ScriptExporter.hpp" - "ScriptExportMacros.hpp" -) - -set(KERNEL_SRC - "DebugMacros.hpp" - "pch.cpp" - "pch.hpp" - "ScriptEngineConfig.hpp" - "xrScriptEngine.cpp" - "xrScriptEngine.hpp" -) - -set(LUA_STUDIO_SRC - "LuaStudio/Config.hpp" - "LuaStudio/Defines.hpp" - "LuaStudio/LuaStudio.cpp" - "LuaStudio/LuaStudio.hpp" -) - -set(LUA_STUDIO_BACKEND_SRC - "LuaStudio/Backend/Backend.hpp" - "LuaStudio/Backend/Engine.hpp" - "LuaStudio/Backend/Interfaces.hpp" - "LuaStudio/Backend/LibraryLinkage.hpp" - "LuaStudio/Backend/World.hpp" -) - -set(PROCESS_SRC - "script_process.cpp" - "script_process.hpp" -) - -set(SCRIPT_CALLBACK_EX_SRC - "script_callback_ex.h" -) - -set(THREAD_SRC - "script_thread.cpp" - "script_thread.hpp" -) - -set(THREAD_STACK_TRACKER_SRC - "script_stack_tracker.cpp" - "script_stack_tracker.hpp" -) - -source_group("Debug" FILES ${DEBUG_SRC}) -source_group("Engine" FILES ${ENGINE_SRC}) -source_group("Export" FILES ${EXPORT_SRC}) -source_group("Kernel" FILES ${KERNEL_SRC}) -source_group("LuaStudio" FILES ${LUA_STUDIO_SRC}) -source_group("LuaStudio\\Backend" FILES ${LUA_STUDIO_BACKEND_SRC}) -source_group("Process" FILES ${PROCESS_SRC}) -source_group("ScriptCallbackEx" FILES ${SCRIPT_CALLBACK_EX_SRC}) -source_group("Thread" FILES ${THREAD_SRC}) -source_group("Thread\\StackTracker" FILES ${THREAD_STACK_TRACKER_SRC}) - -add_library(${PROJECT_NAME} SHARED - ${DEBUG_SRC} - ${ENGINE_SRC} - ${EXPORT_SRC} - ${KERNEL_SRC} - ${LUA_STUDIO_SRC} - ${LUA_STUDIO_BACKEND_SRC} - ${PROCESS_SRC} - ${SCRIPT_CALLBACK_EX_SRC} - ${THREAD_SRC} - ${THREAD_STACK_TRACKER_SRC} -) - -target_include_directories(${PROJECT_NAME} +add_library(xrScriptEngine SHARED) + +target_sources_grouped( + TARGET xrScriptEngine + NAME "Debug" + FILES + mslotutils.h + script_callStack.cpp + script_callStack.hpp + script_debugger.cpp + script_debugger.hpp + script_debugger_messages.hpp + script_debugger_threads.cpp + script_debugger_threads.hpp + script_lua_helper.cpp + script_lua_helper.hpp +) + +target_sources_grouped( + TARGET xrScriptEngine + NAME "Engine" + FILES + BindingsDumper.cpp + BindingsDumper.hpp + Functor.hpp + script_engine.cpp + script_engine.hpp + script_space_forward.hpp + ScriptEngineScript.cpp + ScriptEngineScript.hpp +) + +target_sources_grouped( + TARGET xrScriptEngine + NAME "Export" + FILES + ScriptExporter.cpp + ScriptExporter.hpp + ScriptExportMacros.hpp +) + +target_sources_grouped( + TARGET xrScriptEngine + NAME "Kernel" + FILES + DebugMacros.hpp + pch.cpp + pch.hpp + ScriptEngineConfig.hpp + xrScriptEngine.cpp + xrScriptEngine.hpp +) + +target_sources_grouped( + TARGET xrScriptEngine + NAME "LuaStudio" + FILES + LuaStudio/Config.hpp + LuaStudio/Defines.hpp + LuaStudio/LuaStudio.cpp + LuaStudio/LuaStudio.hpp +) + +target_sources_grouped( + TARGET xrScriptEngine + NAME "LuaStudio\\Backend" + FILES + LuaStudio/Backend/Backend.hpp + LuaStudio/Backend/Engine.hpp + LuaStudio/Backend/Interfaces.hpp + LuaStudio/Backend/LibraryLinkage.hpp + LuaStudio/Backend/World.hpp +) + +target_sources_grouped( + TARGET xrScriptEngine + NAME "Process" + FILES + script_process.cpp + script_process.hpp +) + +target_sources_grouped( + TARGET xrScriptEngine + NAME "ScriptCallbackEx" + FILES + script_callback_ex.h +) + +target_sources_grouped( + TARGET xrScriptEngine + NAME "Thread" + FILES + script_thread.cpp + script_thread.hpp +) + +target_sources_grouped( + TARGET xrScriptEngine + NAME "Thread\\StackTracker" + FILES + script_stack_tracker.cpp + script_stack_tracker.hpp +) + +target_include_directories(xrScriptEngine PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/src - ${CMAKE_SOURCE_DIR}/Externals/xrLuaFix - ${CMAKE_SOURCE_DIR}/Externals/luabind - ${SDL2_INCLUDE_DIRS} + "${CMAKE_CURRENT_SOURCE_DIR}" + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/Externals" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrScriptEngine + PUBLIC + xrLuabind + PRIVATE xrAPI xrCore xrLuaFix - xrLuabind - ${LUA_LIBRARIES} ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrScriptEngine PRIVATE - -DXRSCRIPTENGINE_EXPORTS + XRSCRIPTENGINE_EXPORTS # Uncomment next string for debug script engine - #-DCONFIG_SCRIPT_ENGINE_LOG_EXPORTS - #-DCONFIG_SCRIPT_ENGINE_LOG_SKIPPED_EXPORTS + #CONFIG_SCRIPT_ENGINE_LOG_EXPORTS + #CONFIG_SCRIPT_ENGINE_LOG_SKIPPED_EXPORTS ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrScriptEngine PROPERTIES PREFIX "" ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrScriptEngine PRIVATE - "pch.hpp" + pch.hpp ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS xrScriptEngine LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/src/xrScriptEngine/xrScriptEngine.hpp b/src/xrScriptEngine/xrScriptEngine.hpp index 88750599fa9..a1bdf1f5ee3 100644 --- a/src/xrScriptEngine/xrScriptEngine.hpp +++ b/src/xrScriptEngine/xrScriptEngine.hpp @@ -18,7 +18,6 @@ extern "C" { #pragma warning(disable : 4459) // declaration of 'x' hides global declaration #pragma warning(disable : 4913) // user defined binary operator 'x' exists but no overload could convert all operands #pragma warning(disable : 4297) // function assumed not to throw exception but does -// XXX: define LUABIND_DYNAMIC_LINK in engine config header #include #include #include diff --git a/src/xrSound/CMakeLists.txt b/src/xrSound/CMakeLists.txt index 79f994f76fc..4c00ee6f84a 100644 --- a/src/xrSound/CMakeLists.txt +++ b/src/xrSound/CMakeLists.txt @@ -1,124 +1,136 @@ -project(xrSound) - -set(CACHE_SRC - "SoundRender_Cache.cpp" - "SoundRender_Cache.h" -) - -set(CORE_SRC - "SoundRender_Core.cpp" - "SoundRender_Core.h" - "SoundRender_Core_Processor.cpp" - "SoundRender_Core_SourceManager.cpp" - "SoundRender_Core_StartStop.cpp" -) - -set(CORE_OPENAL_SRC - "OpenALDeviceList.cpp" - "OpenALDeviceList.h" - "SoundRender_CoreA.cpp" - "SoundRender_CoreA.h" -) - -set(EFFECTS_SRC - "SoundRender_Effects.h" -) - -set(EFFECTS_OPENAL_SRC - "SoundRender_EffectsA_EAX.cpp" - "SoundRender_EffectsA_EAX.h" - "SoundRender_EffectsA_EFX.cpp" - "SoundRender_EffectsA_EFX.h" -) - -set(EMITTER_SRC - "SoundRender_Emitter.cpp" - "SoundRender_Emitter.h" - "SoundRender_Emitter_FSM.cpp" - "SoundRender_Emitter_StartStop.cpp" - "SoundRender_Emitter_streamer.cpp" -) - -set(ENVIRONMENT_SRC - "SoundRender_Environment.cpp" - "SoundRender_Environment.h" -) - -set(KERNEL_SRC - "guids.cpp" - "Sound.cpp" - "Sound.h" - "SoundRender.h" - "stdafx.cpp" - "stdafx.h" -) - -set(SOURCE_SRC - "SoundRender_Source.cpp" - "SoundRender_Source.h" - "SoundRender_Source_loader.cpp" -) - -set(TARGET_SRC - "SoundRender_Target.cpp" - "SoundRender_Target.h" -) - -set(TARGET_OPENAL_SRC - "SoundRender_TargetA.cpp" - "SoundRender_TargetA.h" -) - -#set(STREAMING_SRC -# "MusicStream.cpp" -# "MusicStream.h" -# "xr_streamsnd.cpp" -# "xr_streamsnd.h" +add_library(xrSound SHARED) + +target_sources_grouped( + TARGET xrSound + NAME "Cache" + FILES + SoundRender_Cache.cpp + SoundRender_Cache.h +) + +target_sources_grouped( + TARGET xrSound + NAME "Core" + FILES + SoundRender_Core.cpp + SoundRender_Core.h + SoundRender_Core_Processor.cpp + SoundRender_Core_SourceManager.cpp + SoundRender_Core_StartStop.cpp +) + +target_sources_grouped( + TARGET xrSound + NAME "Core\\OpenAL" + FILES + OpenALDeviceList.cpp + OpenALDeviceList.h + SoundRender_CoreA.cpp + SoundRender_CoreA.h +) + +target_sources_grouped( + TARGET xrSound + NAME "Effects" + FILES + SoundRender_Effects.h +) + +target_sources_grouped( + TARGET xrSound + NAME "Effects\\OpenAL" + FILES + SoundRender_EffectsA_EAX.cpp + SoundRender_EffectsA_EAX.h + SoundRender_EffectsA_EFX.cpp + SoundRender_EffectsA_EFX.h +) + +target_sources_grouped( + TARGET xrSound + NAME "Emitter" + FILES + SoundRender_Emitter.cpp + SoundRender_Emitter.h + SoundRender_Emitter_FSM.cpp + SoundRender_Emitter_StartStop.cpp + SoundRender_Emitter_streamer.cpp +) + +target_sources_grouped( + TARGET xrSound + NAME "Environment" + FILES + SoundRender_Environment.cpp + SoundRender_Environment.h +) + +target_sources_grouped( + TARGET xrSound + NAME "Kernel" + FILES + guids.cpp + Sound.cpp + Sound.h + SoundRender.h + stdafx.cpp + stdafx.h +) + +target_sources_grouped( + TARGET xrSound + NAME "Source" + FILES + SoundRender_Source.cpp + SoundRender_Source.h + SoundRender_Source_loader.cpp +) + +target_sources_grouped( + TARGET xrSound + NAME "Target" + FILES + SoundRender_Target.cpp + SoundRender_Target.h +) + +target_sources_grouped( + TARGET xrSound + NAME "Target\\OpenAL" + FILES + SoundRender_TargetA.cpp + SoundRender_TargetA.h +) + +#target_sources_grouped( +# TARGET xrSound +# NAME "Stream" +# FILES +# MusicStream.cpp +# MusicStream.h +# xr_streamsnd.cpp +# xr_streamsnd.h #) -#set(CDAUDIO_SRC -# "xr_cda.cpp" -# "xr_cda.h" +#target_sources_grouped( +# TARGET xrSound +# NAME "CDA" +# FILES +# xr_cda.cpp +# xr_cda.h #) -source_group("Cache" FILES ${CACHE_SRC}) -source_group("Core" FILES ${CORE_SRC}) -source_group("Core\\OpenAL" FILES ${CORE_OPENAL_SRC}) -source_group("Effects" FILES ${EFFECTS_SRC}) -source_group("Effects\\OpenAL" FILES ${EFFECTS_OPENAL_SRC}) -source_group("Emitter" FILES ${EMITTER_SRC}) -source_group("Environment" FILES ${ENVIRONMENT_SRC}) -source_group("Kernel" FILES ${KERNEL_SRC}) -source_group("Source" FILES ${SOURCE_SRC}) -source_group("Target" FILES ${TARGET_SRC}) -source_group("Target\\OpenAL" FILES ${TARGET_OPENAL_SRC}) - -add_library(${PROJECT_NAME} SHARED - ${CACHE_SRC} - ${CORE_SRC} - ${CORE_OPENAL_SRC} - ${EFFECTS_SRC} - ${EFFECTS_OPENAL_SRC} - ${EMITTER_SRC} - ${ENVIRONMENT_SRC} - ${KERNEL_SRC} - ${SOURCE_SRC} - ${TARGET_SRC} - ${TARGET_OPENAL_SRC} -) - -target_include_directories(${PROJECT_NAME} +target_include_directories(xrSound PRIVATE - ${CMAKE_SOURCE_DIR}/src - ${CMAKE_SOURCE_DIR}/src/xrEngine - ${CMAKE_SOURCE_DIR}/Externals/libvorbis/include - ${CMAKE_SOURCE_DIR}/Externals/libogg/include - ${OPENAL_INCLUDE_DIR} - ${OGG_INCLUDE_DIRS} - ${SDL2_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/src" + "${CMAKE_SOURCE_DIR}/src/xrEngine" + "${CMAKE_SOURCE_DIR}/Externals/libvorbis/include" + "${CMAKE_SOURCE_DIR}/Externals/libogg/include" + "${OPENAL_INCLUDE_DIR}" + "${OGG_INCLUDE_DIRS}" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xrSound PRIVATE xrCore xrMiscMath @@ -130,21 +142,20 @@ target_link_libraries(${PROJECT_NAME} Vorbis::VorbisFile ) -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrSound PRIVATE - -DXRSOUND_EXPORTS + XRSOUND_EXPORTS ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrSound PROPERTIES PREFIX "" ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrSound PRIVATE - "stdafx.h" + stdafx.h ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS xrSound LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/src/xrUICore/CMakeLists.txt b/src/xrUICore/CMakeLists.txt index 2150e028e16..372912018de 100644 --- a/src/xrUICore/CMakeLists.txt +++ b/src/xrUICore/CMakeLists.txt @@ -1,151 +1,144 @@ -project(xrUICore) +add_library(xrUICore SHARED) -set(SRC_FILES - "pch.cpp" - "pch.hpp" - "ui_base.cpp" - "ui_base.h" - "ui_debug.cpp" - "ui_debug.h" - "ui_defs.h" - "ui_styles.cpp" - "ui_styles.h" - "uiabstract.h" - "UIMessages.h" - "arrow/ui_arrow.cpp" - "arrow/ui_arrow.h" - "Buttons/UI3tButton.cpp" - "Buttons/UI3tButton.h" - "Buttons/UIBtnHint.cpp" - "Buttons/UIBtnHint.h" - "Buttons/UIButton.cpp" - "Buttons/UIButton.h" - "Buttons/UIButton_script.cpp" - "Buttons/UICheckButton.cpp" - "Buttons/UICheckButton.h" - "Buttons/UIRadioButton.cpp" - "Buttons/UIRadioButton.h" - "Callbacks/UIWndCallback.cpp" - "Callbacks/UIWndCallback.h" - "Callbacks/callback_info.h" - "ComboBox/UIComboBox.cpp" - "ComboBox/UIComboBox.h" - "ComboBox/UIComboBox_script.cpp" - "Cursor/UICursor.cpp" - "Cursor/UICursor.h" - "EditBox/UICustomEdit.cpp" - "EditBox/UICustomEdit.h" - "EditBox/UIEditBox.cpp" - "EditBox/UIEditBox.h" - "EditBox/UIEditBoxEx.cpp" - "EditBox/UIEditBoxEx.h" - "EditBox/UIEditBox_script.cpp" - "FontManager/FontManager.cpp" - "FontManager/FontManager.h" - "Hint/UIHint.cpp" - "Hint/UIHint.h" - "InteractiveBackground/UIInteractiveBackground.h" - "InteractiveBackground/UI_IB_Static.cpp" - "InteractiveBackground/UI_IB_Static.h" - "Lines/UILine.cpp" - "Lines/UILine.h" - "Lines/UILines.cpp" - "Lines/UILines.h" - "Lines/UISubLine.cpp" - "Lines/UISubLine.h" - "Lines/uilinestd.h" - "ListBox/UIListBox.cpp" - "ListBox/UIListBox.h" - "ListBox/UIListBoxItem.cpp" - "ListBox/UIListBoxItem.h" - "ListBox/UIListBoxItemMsgChain.cpp" - "ListBox/UIListBoxItemMsgChain.h" - "ListBox/UIListBox_script.cpp" - "ListWnd/UIListItem.cpp" - "ListWnd/UIListItem.h" - "ListWnd/UIListItemEx.cpp" - "ListWnd/UIListItemEx.h" - "ListWnd/UIListWnd.cpp" - "ListWnd/UIListWnd.h" - "ListWnd/UIListWnd_inline.h" - "ListWnd/UIListWnd_script.cpp" - "MessageBox/UIMessageBox.cpp" - "MessageBox/UIMessageBox.h" - "MessageBox/UIMessageBox_script.cpp" - "Options/UIOptionsItem.cpp" - "Options/UIOptionsItem.h" - "Options/UIOptionsManager.cpp" - "Options/UIOptionsManager.h" - "Options/UIOptionsManagerScript.cpp" - "Options/UIOptionsManagerScript.h" - "ProgressBar/UIDoubleProgressBar.cpp" - "ProgressBar/UIDoubleProgressBar.h" - "ProgressBar/UIProgressBar.cpp" - "ProgressBar/UIProgressBar.h" - "ProgressBar/UIProgressBar_script.cpp" - "ProgressBar/UIProgressShape.cpp" - "ProgressBar/UIProgressShape.h" - "PropertiesBox/UIPropertiesBox.cpp" - "PropertiesBox/UIPropertiesBox.h" - "PropertiesBox/UIPropertiesBox_script.cpp" - "ScrollBar/UIFixedScrollBar.cpp" - "ScrollBar/UIFixedScrollBar.h" - "ScrollBar/UIScrollBar.cpp" - "ScrollBar/UIScrollBar.h" - "ScrollBar/UIScrollBox.cpp" - "ScrollBar/UIScrollBox.h" - "ScrollView/UIScrollView.cpp" - "ScrollView/UIScrollView.h" - "SpinBox/UICustomSpin.cpp" - "SpinBox/UICustomSpin.h" - "SpinBox/UISpinNum.cpp" - "SpinBox/UISpinNum.h" - "SpinBox/UISpinText.cpp" - "SpinBox/UISpinText.h" - "Static/UIAnimatedStatic.cpp" - "Static/UIAnimatedStatic.h" - "Static/UILanimController.cpp" - "Static/UILanimController.h" - "Static/UIStatic.cpp" - "Static/UIStatic.h" - "Static/UIStaticItem.cpp" - "Static/UIStaticItem.h" - "Static/UIStatic_script.cpp" - "TabControl/UITabButton.cpp" - "TabControl/UITabButton.h" - "TabControl/UITabControl.cpp" - "TabControl/UITabControl.h" - "TabControl/UITabControl_script.cpp" - "TrackBar/UITrackBar.cpp" - "TrackBar/UITrackBar.h" - "Windows/UIFrameLineWnd.cpp" - "Windows/UIFrameLineWnd.h" - "Windows/UIFrameWindow.cpp" - "Windows/UIFrameWindow.h" - "Windows/UITextFrameLineWnd.cpp" - "Windows/UITextFrameLineWnd.h" - "Windows/UIWindow.cpp" - "Windows/UIWindow.h" - "Windows/UIWindow_script.cpp" - "XML/UITextureMaster.cpp" - "XML/UITextureMaster.h" - "XML/UIXmlInitBase.cpp" - "XML/UIXmlInitBase.h" - "XML/xrUIXmlParser.cpp" - "XML/xrUIXmlParser.h" +target_sources(xrUICore PRIVATE + pch.cpp + pch.hpp + ui_base.cpp + ui_base.h + ui_debug.cpp + ui_debug.h + ui_defs.h + ui_styles.cpp + ui_styles.h + uiabstract.h + UIMessages.h + arrow/ui_arrow.cpp + arrow/ui_arrow.h + Buttons/UI3tButton.cpp + Buttons/UI3tButton.h + Buttons/UIBtnHint.cpp + Buttons/UIBtnHint.h + Buttons/UIButton.cpp + Buttons/UIButton.h + Buttons/UIButton_script.cpp + Buttons/UICheckButton.cpp + Buttons/UICheckButton.h + Buttons/UIRadioButton.cpp + Buttons/UIRadioButton.h + Callbacks/UIWndCallback.cpp + Callbacks/UIWndCallback.h + Callbacks/callback_info.h + ComboBox/UIComboBox.cpp + ComboBox/UIComboBox.h + ComboBox/UIComboBox_script.cpp + Cursor/UICursor.cpp + Cursor/UICursor.h + EditBox/UICustomEdit.cpp + EditBox/UICustomEdit.h + EditBox/UIEditBox.cpp + EditBox/UIEditBox.h + EditBox/UIEditBoxEx.cpp + EditBox/UIEditBoxEx.h + EditBox/UIEditBox_script.cpp + FontManager/FontManager.cpp + FontManager/FontManager.h + Hint/UIHint.cpp + Hint/UIHint.h + InteractiveBackground/UIInteractiveBackground.h + InteractiveBackground/UI_IB_Static.cpp + InteractiveBackground/UI_IB_Static.h + Lines/UILine.cpp + Lines/UILine.h + Lines/UILines.cpp + Lines/UILines.h + Lines/UISubLine.cpp + Lines/UISubLine.h + Lines/uilinestd.h + ListBox/UIListBox.cpp + ListBox/UIListBox.h + ListBox/UIListBoxItem.cpp + ListBox/UIListBoxItem.h + ListBox/UIListBoxItemMsgChain.cpp + ListBox/UIListBoxItemMsgChain.h + ListBox/UIListBox_script.cpp + ListWnd/UIListItem.cpp + ListWnd/UIListItem.h + ListWnd/UIListItemEx.cpp + ListWnd/UIListItemEx.h + ListWnd/UIListWnd.cpp + ListWnd/UIListWnd.h + ListWnd/UIListWnd_inline.h + ListWnd/UIListWnd_script.cpp + MessageBox/UIMessageBox.cpp + MessageBox/UIMessageBox.h + MessageBox/UIMessageBox_script.cpp + Options/UIOptionsItem.cpp + Options/UIOptionsItem.h + Options/UIOptionsManager.cpp + Options/UIOptionsManager.h + Options/UIOptionsManagerScript.cpp + Options/UIOptionsManagerScript.h + ProgressBar/UIDoubleProgressBar.cpp + ProgressBar/UIDoubleProgressBar.h + ProgressBar/UIProgressBar.cpp + ProgressBar/UIProgressBar.h + ProgressBar/UIProgressBar_script.cpp + ProgressBar/UIProgressShape.cpp + ProgressBar/UIProgressShape.h + PropertiesBox/UIPropertiesBox.cpp + PropertiesBox/UIPropertiesBox.h + PropertiesBox/UIPropertiesBox_script.cpp + ScrollBar/UIFixedScrollBar.cpp + ScrollBar/UIFixedScrollBar.h + ScrollBar/UIScrollBar.cpp + ScrollBar/UIScrollBar.h + ScrollBar/UIScrollBox.cpp + ScrollBar/UIScrollBox.h + ScrollView/UIScrollView.cpp + ScrollView/UIScrollView.h + SpinBox/UICustomSpin.cpp + SpinBox/UICustomSpin.h + SpinBox/UISpinNum.cpp + SpinBox/UISpinNum.h + SpinBox/UISpinText.cpp + SpinBox/UISpinText.h + Static/UIAnimatedStatic.cpp + Static/UIAnimatedStatic.h + Static/UILanimController.cpp + Static/UILanimController.h + Static/UIStatic.cpp + Static/UIStatic.h + Static/UIStaticItem.cpp + Static/UIStaticItem.h + Static/UIStatic_script.cpp + TabControl/UITabButton.cpp + TabControl/UITabButton.h + TabControl/UITabControl.cpp + TabControl/UITabControl.h + TabControl/UITabControl_script.cpp + TrackBar/UITrackBar.cpp + TrackBar/UITrackBar.h + Windows/UIFrameLineWnd.cpp + Windows/UIFrameLineWnd.h + Windows/UIFrameWindow.cpp + Windows/UIFrameWindow.h + Windows/UITextFrameLineWnd.cpp + Windows/UITextFrameLineWnd.h + Windows/UIWindow.cpp + Windows/UIWindow.h + Windows/UIWindow_script.cpp + XML/UITextureMaster.cpp + XML/UITextureMaster.h + XML/UIXmlInitBase.cpp + XML/UIXmlInitBase.h + XML/xrUIXmlParser.cpp + XML/xrUIXmlParser.h ) -group_sources(SRC_FILES) - -add_library(${PROJECT_NAME} SHARED ${SRC_FILES}) - -target_include_directories(${PROJECT_NAME} +target_include_directories(xrUICore PRIVATE - ${CMAKE_CURRENT_SOURCE_DIR} - ${CMAKE_SOURCE_DIR}/src - ${CMAKE_SOURCE_DIR}/Externals/lzo/include - ${CMAKE_SOURCE_DIR}/Externals/luabind - ${SDL2_INCLUDE_DIRS} + "${CMAKE_CURRENT_SOURCE_DIR}" + "${CMAKE_SOURCE_DIR}/src" ) target_link_libraries(xrUICore @@ -156,30 +149,27 @@ target_link_libraries(xrUICore xrMiscMath xrImGui xrCore - xrLuabind - ${SDL2_LIBRARIES} ) if (WIN32) add_compile_options(/fp:fast "/Yupch.hpp") - set_source_files_properties(${CMAKE_CURRENT_SOURCE_DIR}/pch.cpp PROPERTIES COMPILE_FLAGS /Yc) + set_source_files_properties("${CMAKE_CURRENT_SOURCE_DIR}/pch.cpp" PROPERTIES COMPILE_FLAGS /Yc) endif() -target_compile_definitions(${PROJECT_NAME} +target_compile_definitions(xrUICore PRIVATE - -DXRUICORE_EXPORTS + XRUICORE_EXPORTS ) -set_target_properties(${PROJECT_NAME} PROPERTIES +set_target_properties(xrUICore PROPERTIES PREFIX "" ) -target_precompile_headers(${PROJECT_NAME} +target_precompile_headers(xrUICore PRIVATE - "pch.hpp" + pch.hpp ) -install(TARGETS ${PROJECT_NAME} LIBRARY - DESTINATION ${CMAKE_INSTALL_LIBDIR} - PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ +install(TARGETS xrUICore LIBRARY + DESTINATION "${CMAKE_INSTALL_LIBDIR}" ) diff --git a/src/xr_3da/CMakeLists.txt b/src/xr_3da/CMakeLists.txt index 9d49c464399..b253d1cb0fd 100644 --- a/src/xr_3da/CMakeLists.txt +++ b/src/xr_3da/CMakeLists.txt @@ -1,34 +1,35 @@ -project(xr_3da) +add_executable(xr_3da) -set(SRC_FILES - "AccessibilityShortcuts.hpp" - "entry_point.cpp" - "resource.h" - "stdafx.h" - "stdafx.cpp" +target_sources(xr_3da PRIVATE + AccessibilityShortcuts.hpp + entry_point.cpp + resource.h + stdafx.h + stdafx.cpp ) -group_sources(SRC_FILES) - -add_executable(${PROJECT_NAME} ${SRC_FILES}) -set_property(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} PROPERTY VS_STARTUP_PROJECT ${PROJECT_NAME}) +set_property( + DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" + PROPERTY + VS_STARTUP_PROJECT xr_3da +) -target_include_directories(${PROJECT_NAME} +target_include_directories(xr_3da PRIVATE - ${CMAKE_SOURCE_DIR}/src - ${SDL2_INCLUDE_DIRS} + "${CMAKE_SOURCE_DIR}/src" ) -target_link_libraries(${PROJECT_NAME} +target_link_libraries(xr_3da PRIVATE xrCore xrAPI xrEngine ) -set_target_properties(${PROJECT_NAME} PROPERTIES PREFIX "") +set_target_properties(xr_3da PROPERTIES + PREFIX "" +) -install(TARGETS ${PROJECT_NAME} RUNTIME - DESTINATION ${CMAKE_INSTALL_BINDIR} - PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE +install(TARGETS xr_3da RUNTIME + DESTINATION "${CMAKE_INSTALL_BINDIR}" )