mirror of
https://git.mirrors.martin98.com/https://github.com/prusa3d/PrusaSlicer.git
synced 2025-08-11 15:29:00 +08:00
Re-add a fixed version of FindEXPAT.cmake to fix wxWidgets build
Without this, wxWidgets will use the CMake default FindEXPAT which will not find our static expat correctly. This wrapper will do a config search first and always define EXPAT::EXPAT to point to the found library.
This commit is contained in:
parent
f85061d737
commit
c15501bf8a
35
cmake/modules/FindEXPAT.cmake
Normal file
35
cmake/modules/FindEXPAT.cmake
Normal file
@ -0,0 +1,35 @@
|
||||
set(_q "")
|
||||
if(EXPAT_FIND_QUIETLY)
|
||||
set(_q QUIET)
|
||||
endif()
|
||||
find_package(EXPAT ${EXPAT_FIND_VERSION} CONFIG ${_q})
|
||||
|
||||
if(NOT EXPAT_FIND_QUIETLY)
|
||||
if (NOT EXPAT_FOUND)
|
||||
message(STATUS "Falling back to MODULE search for EXPAT...")
|
||||
else()
|
||||
message(STATUS "EXPAT found in ${EXPAT_DIR}")
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if (NOT EXPAT_FOUND)
|
||||
set(_modpath ${CMAKE_MODULE_PATH})
|
||||
set(CMAKE_MODULE_PATH "")
|
||||
include(FindEXPAT)
|
||||
set(CMAKE_MODULE_PATH ${_modpath})
|
||||
|
||||
if (NOT TARGET EXPAT::EXPAT)
|
||||
add_library(EXPAT::EXPAT INTERFACE)
|
||||
target_link_libraries(EXPAT::EXPAT INTERFACE ${EXPAT_LIBRARIES})
|
||||
target_include_directories(EXPAT::EXPAT INTERFACE ${EXPAT_INCLUDE_DIRS})
|
||||
endif ()
|
||||
endif()
|
||||
|
||||
if (EXPAT_FOUND AND NOT TARGET EXPAT::EXPAT AND TARGET expat::expat)
|
||||
add_library(libexpat_ps_namefix INTERFACE)
|
||||
add_library(EXPAT::EXPAT ALIAS libexpat_ps_namefix)
|
||||
target_link_libraries(libexpat_ps_namefix INTERFACE expat::expat)
|
||||
if (NOT EXPAT_LIBRARIES)
|
||||
set(EXPAT_LIBRARIES expat::expat CACHE STRING "")
|
||||
endif ()
|
||||
endif ()
|
Loading…
x
Reference in New Issue
Block a user