1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-02-23 15:40:42 +00:00

Merge branch 'fix_boost' into 'master'

Fix build with lld linker

See merge request OpenMW/openmw!1903
This commit is contained in:
psi29a 2022-05-22 20:53:57 +00:00
commit e3f891c0b0
6 changed files with 14 additions and 6 deletions

View File

@ -432,6 +432,11 @@ endif()
set(Boost_NO_BOOST_CMAKE ON) set(Boost_NO_BOOST_CMAKE ON)
find_package(Boost 1.6.2 REQUIRED COMPONENTS ${BOOST_COMPONENTS} OPTIONAL_COMPONENTS ${BOOST_OPTIONAL_COMPONENTS}) find_package(Boost 1.6.2 REQUIRED COMPONENTS ${BOOST_COMPONENTS} OPTIONAL_COMPONENTS ${BOOST_OPTIONAL_COMPONENTS})
if(Boost_VERSION_STRING VERSION_GREATER_EQUAL 1.77.0)
find_package(Boost 1.77.0 REQUIRED COMPONENTS atomic)
endif()
if(OPENMW_USE_SYSTEM_MYGUI) if(OPENMW_USE_SYSTEM_MYGUI)
find_package(MyGUI 3.4.1 REQUIRED) find_package(MyGUI 3.4.1 REQUIRED)
endif() endif()

View File

@ -145,7 +145,6 @@ target_link_libraries(openmw
${OSG_LIBRARIES} ${OSG_LIBRARIES}
${Boost_SYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}
${Boost_THREAD_LIBRARY}
${Boost_FILESYSTEM_LIBRARY} ${Boost_FILESYSTEM_LIBRARY}
${Boost_PROGRAM_OPTIONS_LIBRARY} ${Boost_PROGRAM_OPTIONS_LIBRARY}
${OPENAL_LIBRARY} ${OPENAL_LIBRARY}

View File

@ -6,7 +6,7 @@ namespace
{ {
template<typename T> template<typename T>
void create(const MWWorld::Store<T>& list, const std::string& name, boost::any& refValue, MWWorld::Ptr& ptrValue) void create(const MWWorld::Store<T>& list, const std::string& name, std::any& refValue, MWWorld::Ptr& ptrValue)
{ {
const T* base = list.find(name); const T* base = list.find(name);
@ -26,7 +26,7 @@ namespace
MWWorld::LiveCellRef<T> ref(cellRef, base); MWWorld::LiveCellRef<T> ref(cellRef, base);
refValue = ref; refValue = ref;
ptrValue = MWWorld::Ptr(&boost::any_cast<MWWorld::LiveCellRef<T>&>(refValue), nullptr); ptrValue = MWWorld::Ptr(&std::any_cast<MWWorld::LiveCellRef<T>&>(refValue), nullptr);
} }
} }

View File

@ -1,7 +1,7 @@
#ifndef GAME_MWWORLD_MANUALREF_H #ifndef GAME_MWWORLD_MANUALREF_H
#define GAME_MWWORLD_MANUALREF_H #define GAME_MWWORLD_MANUALREF_H
#include <boost/any.hpp> #include <any>
#include "ptr.hpp" #include "ptr.hpp"
@ -10,7 +10,7 @@ namespace MWWorld
/// \brief Manually constructed live cell ref /// \brief Manually constructed live cell ref
class ManualRef class ManualRef
{ {
boost::any mRef; std::any mRef;
Ptr mPtr; Ptr mPtr;
ManualRef (const ManualRef&); ManualRef (const ManualRef&);

View File

@ -411,6 +411,10 @@ target_link_libraries(components
yaml-cpp yaml-cpp
) )
if(Boost_VERSION_STRING VERSION_GREATER_EQUAL 1.77.0)
target_link_libraries(components ${Boost_ATOMIC_LIBRARY})
endif()
target_link_libraries(components ${BULLET_LIBRARIES}) target_link_libraries(components ${BULLET_LIBRARIES})
if (WIN32) if (WIN32)

View File

@ -12,7 +12,7 @@ set(OSG_FFMPEG_VIDEOPLAYER_SOURCE_FILES
include_directories(${FFmpeg_INCLUDE_DIRS}) include_directories(${FFmpeg_INCLUDE_DIRS})
add_library(${OSG_FFMPEG_VIDEOPLAYER_LIBRARY} STATIC ${OSG_FFMPEG_VIDEOPLAYER_SOURCE_FILES}) add_library(${OSG_FFMPEG_VIDEOPLAYER_LIBRARY} STATIC ${OSG_FFMPEG_VIDEOPLAYER_SOURCE_FILES})
target_link_libraries(${OSG_FFMPEG_VIDEOPLAYER_LIBRARY} ${FFmpeg_LIBRARIES} ${Boost_THREAD_LIBRARY}) target_link_libraries(${OSG_FFMPEG_VIDEOPLAYER_LIBRARY} ${FFmpeg_LIBRARIES})
target_link_libraries(${OSG_FFMPEG_VIDEOPLAYER_LIBRARY} ${OSG_LIBRARIES}) target_link_libraries(${OSG_FFMPEG_VIDEOPLAYER_LIBRARY} ${OSG_LIBRARIES})
link_directories(${CMAKE_CURRENT_BINARY_DIR}) link_directories(${CMAKE_CURRENT_BINARY_DIR})