cmake/Tests/RunCMake/FindPkgConfig/FindPkgConfig_SYSTEM_PATH.cmake

43 lines
1.4 KiB
CMake
Raw Normal View History

2021-11-20 13:41:27 +01:00
find_package(PkgConfig REQUIRED)
2022-08-04 22:12:04 +02:00
set(ROOT "${CMAKE_CURRENT_BINARY_DIR}/root")
string(REPLACE " " "\\ " ESCAPED_ROOT "${ROOT}")
set(LIB_DIR "${ROOT}/lib")
2023-12-07 09:12:54 +01:00
set(INCLUDE_DIR "${ROOT}/include")
2022-08-04 22:12:04 +02:00
set(PKGCONFIG_DIR "${LIB_DIR}/pkgconfig")
file(WRITE "${PKGCONFIG_DIR}/zot.pc" "
prefix=${ESCAPED_ROOT}
2021-11-20 13:41:27 +01:00
libdir=\${prefix}/lib
2023-12-07 09:12:54 +01:00
includedir=\${prefix}/include
2021-11-20 13:41:27 +01:00
Name: Zot
2022-08-04 22:12:04 +02:00
Description: Dummy package to test LIBRARY_DIR support
2021-11-20 13:41:27 +01:00
Version: 1.0
Libs: -L\${libdir} -lzot
2023-12-07 09:12:54 +01:00
Cflags: -I\${includedir}
2021-11-20 13:41:27 +01:00
")
# Create a "library" file to find in libdir.
set(CMAKE_FIND_LIBRARY_PREFIXES "prefix-")
set(CMAKE_FIND_LIBRARY_SUFFIXES "-suffix")
2022-08-04 22:12:04 +02:00
file(WRITE "${LIB_DIR}/prefix-zot-suffix")
2021-11-20 13:41:27 +01:00
# 'pkg-config --libs' drops -L flags in PKG_CONFIG_SYSTEM_LIBRARY_PATH by default.
2022-08-04 22:12:04 +02:00
set(ENV{PKG_CONFIG_SYSTEM_LIBRARY_PATH} "${LIB_DIR}")
2023-12-07 09:12:54 +01:00
# 'pkg-config --cflags' drops -I flags in PKG_CONFIG_SYSTEM_INCLUDE_PATH by default.
set(ENV{PKG_CONFIG_SYSTEM_INCLUDE_PATH} "${INCLUDE_DIR}")
2021-11-20 13:41:27 +01:00
# 'pkgconf --libs' also drops -L flags in LIBRARY_PATH by default.
2022-08-04 22:12:04 +02:00
set(ENV{LIBRARY_PATH} "${LIB_DIR}")
2023-12-07 09:12:54 +01:00
# 'pkgconf --cflags' also drops -I flags in CPATH by default.
set(ENV{CPATH} "${INCLUDE_DIR}")
2021-11-20 13:41:27 +01:00
2022-08-04 22:12:04 +02:00
set(ENV{PKG_CONFIG_PATH} "${PKGCONFIG_DIR}")
2021-11-20 13:41:27 +01:00
pkg_check_modules(ZOT REQUIRED zot)
message(STATUS "ZOT_LIBRARIES='${ZOT_LIBRARIES}'")
message(STATUS "ZOT_LINK_LIBRARIES='${ZOT_LINK_LIBRARIES}'")
message(STATUS "ZOT_LDFLAGS='${ZOT_LDFLAGS}'")
2023-12-07 09:12:54 +01:00
message(STATUS "ZOT_CFLAGS='${ZOT_CFLAGS}'")