68 lines
2.4 KiB
CMake
68 lines
2.4 KiB
CMake
# - G4X11Shim
|
|
#
|
|
# Geant4's Geant4Config.cmake file aims to support CMake 3.8 and newer
|
|
# The X11 dependency is located through CMake's builtin FindX11
|
|
# module and linked through the X11:: imported targets.
|
|
# These targets are however only available from CMake 3.14, so recreate
|
|
# those we need if they do not exist.
|
|
|
|
if(X11_FOUND)
|
|
if (NOT TARGET X11::X11)
|
|
add_library(X11::X11 UNKNOWN IMPORTED)
|
|
set_target_properties(X11::X11 PROPERTIES
|
|
IMPORTED_LOCATION "${X11_X11_LIB}"
|
|
INTERFACE_INCLUDE_DIRECTORIES "${X11_X11_INCLUDE_PATH}")
|
|
endif ()
|
|
|
|
if (X11_ICE_FOUND AND NOT TARGET X11::ICE)
|
|
add_library(X11::ICE UNKNOWN IMPORTED)
|
|
set_target_properties(X11::ICE PROPERTIES
|
|
IMPORTED_LOCATION "${X11_ICE_LIB}"
|
|
INTERFACE_INCLUDE_DIRECTORIES "${X11_ICE_INCLUDE_PATH}")
|
|
endif ()
|
|
|
|
if (X11_SM_FOUND AND NOT TARGET X11::SM)
|
|
add_library(X11::SM UNKNOWN IMPORTED)
|
|
set_target_properties(X11::SM PROPERTIES
|
|
IMPORTED_LOCATION "${X11_SM_LIB}"
|
|
INTERFACE_INCLUDE_DIRECTORIES "${X11_SM_INCLUDE_PATH}")
|
|
endif ()
|
|
|
|
if (X11_Xext_FOUND AND NOT TARGET X11::Xext)
|
|
# CMake < 3.14 won't search for Xext headers
|
|
if(NOT X11_Xext_INCLUDE_PATH)
|
|
find_path(X11_Xext_INCLUDE_PATH X11/extensions/Xext.h ${X11_INC_SEARCH_PATH})
|
|
mark_as_advanced(X11_Xext_INCLUDE_PATH)
|
|
endif()
|
|
add_library(X11::Xext UNKNOWN IMPORTED)
|
|
set_target_properties(X11::Xext PROPERTIES
|
|
IMPORTED_LOCATION "${X11_Xext_LIB}"
|
|
INTERFACE_INCLUDE_DIRECTORIES "${X11_Xext_INCLUDE_PATH}"
|
|
INTERFACE_LINK_LIBRARIES "X11::X11")
|
|
endif ()
|
|
|
|
if (X11_Xmu_FOUND AND NOT TARGET X11::Xmu)
|
|
add_library(X11::Xmu UNKNOWN IMPORTED)
|
|
set_target_properties(X11::Xmu PROPERTIES
|
|
IMPORTED_LOCATION "${X11_Xmu_LIB}"
|
|
INTERFACE_INCLUDE_DIRECTORIES "${X11_Xmu_INCLUDE_PATH}"
|
|
INTERFACE_LINK_LIBRARIES "X11::Xt;X11::Xext;X11::X11")
|
|
endif ()
|
|
|
|
if (X11_Xpm_FOUND AND NOT TARGET X11::Xpm)
|
|
add_library(X11::Xpm UNKNOWN IMPORTED)
|
|
set_target_properties(X11::Xpm PROPERTIES
|
|
IMPORTED_LOCATION "${X11_Xpm_LIB}"
|
|
INTERFACE_INCLUDE_DIRECTORIES "${X11_Xpm_INCLUDE_PATH}"
|
|
INTERFACE_LINK_LIBRARIES "X11::X11")
|
|
endif ()
|
|
|
|
if (X11_Xt_FOUND AND NOT TARGET X11::Xt)
|
|
add_library(X11::Xt UNKNOWN IMPORTED)
|
|
set_target_properties(X11::Xt PROPERTIES
|
|
IMPORTED_LOCATION "${X11_Xt_LIB}"
|
|
INTERFACE_INCLUDE_DIRECTORIES "${X11_Xt_INCLUDE_PATH}"
|
|
INTERFACE_LINK_LIBRARIES "X11::ICE;X11::SM;X11::X11")
|
|
endif ()
|
|
endif()
|