Make hooks run in a unity build
This commit is contained in:
parent
c1a006de50
commit
b98e64501c
@ -8,6 +8,8 @@ if (EnableCotire)
|
|||||||
set (CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/external/cotire/CMake")
|
set (CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/external/cotire/CMake")
|
||||||
cmake_policy(SET CMP0011 NEW)
|
cmake_policy(SET CMP0011 NEW)
|
||||||
include(cotire)
|
include(cotire)
|
||||||
|
file(GLOB_RECURSE ignore_files *.cpp)
|
||||||
|
set(ignore_files ${ignore_files} CACHE INTERNAL "")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(NOT CMAKE_BUILD_TYPE)
|
if(NOT CMAKE_BUILD_TYPE)
|
||||||
@ -27,6 +29,7 @@ set(Game "tf2" CACHE STRING "Target game")
|
|||||||
set(GameValues "tf2;hl2dm;dab;tf2c;css;dynamic" CACHE INTERNAL "List of supported game types")
|
set(GameValues "tf2;hl2dm;dab;tf2c;css;dynamic" CACHE INTERNAL "List of supported game types")
|
||||||
set_property(CACHE Game PROPERTY STRINGS ${GameValues})
|
set_property(CACHE Game PROPERTY STRINGS ${GameValues})
|
||||||
|
|
||||||
|
set(EnableUnityBuilds 1 CACHE BOOL "Enable Profiler")
|
||||||
set(EnableProfiler 0 CACHE BOOL "Enable Profiler")
|
set(EnableProfiler 0 CACHE BOOL "Enable Profiler")
|
||||||
set(EnableVisuals 1 CACHE BOOL "Enable Visuals")
|
set(EnableVisuals 1 CACHE BOOL "Enable Visuals")
|
||||||
set(ExternalDrawing 0 CACHE BOOL "External Visuals")
|
set(ExternalDrawing 0 CACHE BOOL "External Visuals")
|
||||||
@ -161,7 +164,8 @@ add_subdirectory(modules)
|
|||||||
|
|
||||||
if (EnableCotire)
|
if (EnableCotire)
|
||||||
set_target_properties(cathook PROPERTIES COTIRE_CXX_PREFIX_HEADER_INIT "${CMAKE_SOURCE_DIR}/include/common.hpp")
|
set_target_properties(cathook PROPERTIES COTIRE_CXX_PREFIX_HEADER_INIT "${CMAKE_SOURCE_DIR}/include/common.hpp")
|
||||||
set_target_properties(cathook PROPERTIES COTIRE_ADD_UNITY_BUILD FALSE)
|
set_target_properties(cathook PROPERTIES COTIRE_ADD_UNITY_BUILD true)
|
||||||
|
set_source_files_properties(${ignore_files} PROPERTIES COTIRE_EXCLUDED true)
|
||||||
cotire(cathook)
|
cotire(cathook)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
@ -1,3 +1,4 @@
|
|||||||
|
#pragma once
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
#if ENABLE_IRC
|
#if ENABLE_IRC
|
||||||
#include <string>
|
#include <string>
|
||||||
|
@ -1,27 +1,28 @@
|
|||||||
target_sources(cathook PRIVATE
|
set(files "${CMAKE_CURRENT_LIST_DIR}/CanPacket.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/CanPacket.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/CreateMove.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/CreateMove.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/DispatchUserMessage.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/DispatchUserMessage.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/FireGameEvent.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/FireGameEvent.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/GetFriendPersonaName.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/GetFriendPersonaName.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/GetUserCmd.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/GetUserCmd.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/LevelInit.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/LevelInit.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/LevelShutdown.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/LevelShutdown.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/nographics.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/nographics.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/others.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/others.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/Paint.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/Paint.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/PreDataUpdate.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/PreDataUpdate.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/SendNetMsg.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/SendNetMsg.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/Shutdown.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/Shutdown.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/FireEvent.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/FireEvent.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/FireEventClientSide.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/FireEventClientSide.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/IsPlayingTimeDemo.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/IsPlayingTimeDemo.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/HookTools.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/HookTools.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/SendDatagram.cpp")
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/SendDatagram.cpp")
|
target_sources(cathook PRIVATE ${files})
|
||||||
|
list(REMOVE_ITEM ignore_files ${files})
|
||||||
|
set(ignore_files ${ignore_files} CACHE INTERNAL "")
|
||||||
|
|
||||||
if(EnableVisuals)
|
if(EnableVisuals)
|
||||||
add_subdirectory(visual)
|
add_subdirectory(visual)
|
||||||
endif()
|
else()
|
||||||
if(NOT EnableVisuals)
|
|
||||||
add_subdirectory(textmode)
|
add_subdirectory(textmode)
|
||||||
endif()
|
endif()
|
||||||
|
@ -1,10 +1,12 @@
|
|||||||
target_sources(cathook PRIVATE
|
set(files "${CMAKE_CURRENT_LIST_DIR}/BeginFrame.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/BeginFrame.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/DrawModelExecute.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/DrawModelExecute.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/FrameStageNotify.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/FrameStageNotify.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/OverrideView.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/OverrideView.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/PaintTraverse.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/PaintTraverse.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/RandomInt.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/RandomInt.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/SDL_GL_SwapWindow.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/SDL_GL_SwapWindow.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/SDL_PollEvent.cpp"
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/SDL_PollEvent.cpp"
|
"${CMAKE_CURRENT_LIST_DIR}/IN_KeyEvent.cpp")
|
||||||
"${CMAKE_CURRENT_LIST_DIR}/IN_KeyEvent.cpp")
|
target_sources(cathook PRIVATE ${files})
|
||||||
|
list(REMOVE_ITEM ignore_files ${files})
|
||||||
|
set(ignore_files ${ignore_files} CACHE INTERNAL "")
|
||||||
|
@ -11,7 +11,7 @@
|
|||||||
#include <menu/menu/Menu.hpp>
|
#include <menu/menu/Menu.hpp>
|
||||||
#include "clip.h"
|
#include "clip.h"
|
||||||
|
|
||||||
static bool init{ false };
|
static bool swapwindow_init{ false };
|
||||||
static bool init_wminfo{ false };
|
static bool init_wminfo{ false };
|
||||||
static SDL_SysWMinfo wminfo{};
|
static SDL_SysWMinfo wminfo{};
|
||||||
|
|
||||||
@ -63,14 +63,14 @@ DEFINE_HOOKED_METHOD(SDL_GL_SwapWindow, void, SDL_Window *window)
|
|||||||
#endif
|
#endif
|
||||||
static int prev_width, prev_height;
|
static int prev_width, prev_height;
|
||||||
PROF_SECTION(SWAPWINDOW_cathook);
|
PROF_SECTION(SWAPWINDOW_cathook);
|
||||||
if (not init || draw::width != prev_width || draw::height != prev_height)
|
if (not swapwindow_init || draw::width != prev_width || draw::height != prev_height)
|
||||||
{
|
{
|
||||||
prev_width = draw::width;
|
prev_width = draw::width;
|
||||||
prev_height = draw::height;
|
prev_height = draw::height;
|
||||||
draw::InitGL();
|
draw::InitGL();
|
||||||
if (zerokernel::Menu::instance)
|
if (zerokernel::Menu::instance)
|
||||||
zerokernel::Menu::instance->resize(draw::width, draw::height);
|
zerokernel::Menu::instance->resize(draw::width, draw::height);
|
||||||
init = true;
|
swapwindow_init = true;
|
||||||
}
|
}
|
||||||
draw::BeginGL();
|
draw::BeginGL();
|
||||||
DrawCache();
|
DrawCache();
|
||||||
|
Reference in New Issue
Block a user