From e3c9422177d8c6adc7e5e7b6f938cee1b8cc7ca2 Mon Sep 17 00:00:00 2001 From: Max Henzerling Date: Wed, 12 Jul 2023 19:51:27 -0700 Subject: [PATCH] add updated cmake files from openmw and re-add macro to fix msvc builds --- apps/openmw-mp/CMakeLists.txt | 4 ++-- apps/openmw-mp/Script/Types.hpp | 4 ++++ cmake/FindFFmpeg.cmake | 2 +- cmake/FindLZ4.cmake | 2 ++ cmake/FindLuaJit.cmake | 7 +++---- 5 files changed, 12 insertions(+), 7 deletions(-) diff --git a/apps/openmw-mp/CMakeLists.txt b/apps/openmw-mp/CMakeLists.txt index 7e8d41c32..373339e82 100644 --- a/apps/openmw-mp/CMakeLists.txt +++ b/apps/openmw-mp/CMakeLists.txt @@ -20,7 +20,7 @@ if(BUILD_WITH_LUA) find_package(LuaJit REQUIRED) MESSAGE(STATUS "Found LuaJit_LIBRARIES: ${LuaJit_LIBRARIES}") - MESSAGE(STATUS "Found LuaJit_INCLUDE_DIRS: ${LuaJit_INCLUDE_DIRS}") + MESSAGE(STATUS "Found LuaJit_INCLUDE_DIR: ${LuaJit_INCLUDE_DIR}") set(LuaScript_Sources Script/LangLua/LangLua.cpp @@ -29,7 +29,7 @@ if(BUILD_WITH_LUA) Script/LangLua/LangLua.hpp) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DENABLE_LUA") - include_directories(SYSTEM ${LuaJit_INCLUDE_DIRS} ${CMAKE_SOURCE_DIR}/extern/LuaBridge) + include_directories(SYSTEM ${LuaJit_INCLUDE_DIR} ${CMAKE_SOURCE_DIR}/extern/LuaBridge) endif(BUILD_WITH_LUA) include_directories(${CMAKE_SOURCE_DIR}/extern/PicoSHA2) diff --git a/apps/openmw-mp/Script/Types.hpp b/apps/openmw-mp/Script/Types.hpp index 3a12e99a4..fcbde06cf 100644 --- a/apps/openmw-mp/Script/Types.hpp +++ b/apps/openmw-mp/Script/Types.hpp @@ -101,7 +101,11 @@ struct ScriptFunctionPointer : public ScriptIdentity void *addr; template +#if (!defined(__clang__) && defined(__GNUC__)) constexpr ScriptFunctionPointer(Function addr) : ScriptIdentity(addr), addr(reinterpret_cast(reinterpret_cast(addr))) {} +#else + constexpr ScriptFunctionPointer(Function addr) : ScriptIdentity(addr), addr(addr) {} +#endif }; struct ScriptFunctionData diff --git a/cmake/FindFFmpeg.cmake b/cmake/FindFFmpeg.cmake index 830030e32..15c64c87e 100644 --- a/cmake/FindFFmpeg.cmake +++ b/cmake/FindFFmpeg.cmake @@ -10,7 +10,7 @@ # FFmpeg_LIBRARIES - Link these to use the required ffmpeg components. # FFmpeg_DEFINITIONS - Compiler switches required for using the required ffmpeg components. # -# For each of the components it will additionaly set. +# For each of the components it will additionally set. # - AVCODEC # - AVDEVICE # - AVFORMAT diff --git a/cmake/FindLZ4.cmake b/cmake/FindLZ4.cmake index ec854c6b1..5b148cb64 100644 --- a/cmake/FindLZ4.cmake +++ b/cmake/FindLZ4.cmake @@ -95,6 +95,8 @@ include(FindPackageHandleStandardArgs) find_package_handle_standard_args(LZ4 DEFAULT_MSG LZ4_LIBRARY LZ4_INCLUDE_DIR LZ4_VERSION) +set(LZ4_INCLUDE_DIR ${LZ4_INCLUDE_DIR} CACHE PATH "LZ4 include dir hint") +set(LZ4_LIBRARY ${LZ4_LIBRARY} CACHE FILEPATH "LZ4 library path hint") mark_as_advanced(LZ4_INCLUDE_DIR LZ4_LIBRARY) set(LZ4_LIBRARIES ${LZ4_LIBRARY}) diff --git a/cmake/FindLuaJit.cmake b/cmake/FindLuaJit.cmake index 9bc5ceb25..6e7110dea 100644 --- a/cmake/FindLuaJit.cmake +++ b/cmake/FindLuaJit.cmake @@ -1,14 +1,13 @@ # Once found, defines: # LuaJit_FOUND -# LuaJit_INCLUDE_DIRS +# LuaJit_INCLUDE_DIR # LuaJit_LIBRARIES include(LibFindMacros) libfind_pkg_detect(LuaJit luajit - FIND_PATH luajit.h - PATH_SUFFIXES luajit - FIND_LIBRARY NAMES luajit-5.1 luajit + FIND_PATH luajit.h PATH_SUFFIXES luajit luajit-2.1 + FIND_LIBRARY luajit-5.1 luajit ) libfind_process(LuaJit) \ No newline at end of file