diff options
author | Michal Domonkos <mdomonko@redhat.com> | 2023-04-05 16:33:34 +0200 |
---|---|---|
committer | Panu Matilainen <pmatilai@redhat.com> | 2023-04-25 15:04:06 +0300 |
commit | 49befbc12381e95c2dacab50284ff32328a4ef99 (patch) | |
tree | ff6ccef92ec815887f845467a357414f49d59e19 /CMakeLists.txt | |
parent | 87b9e0c28c3df3937f6676ee1b4164d6154dd9d3 (diff) | |
download | rpm-49befbc12381e95c2dacab50284ff32328a4ef99.tar.gz |
Use CMake Lua module
While many distros ship a pkg-config file for Lua, the upstream source
tree does not provide one and so we shouldn't rely on it. Turns out,
CMake provides a native Lua module so just use that.
Unfortunately, the package doesn't define any IMPORTED target so add our
own, similarly to how we did this recently with libmagic and libimaevm.
Of particular note is that this adds an implicit dependency between
CMake and Lua (e.g. Lua 5.4 support was only added in CMake 3.18), but
that hopefully won't have much impact on most OS installations out
there.
Fixes: #2247
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r-- | CMakeLists.txt | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index f052271c5..230d18d1f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -135,11 +135,11 @@ set(REQFUNCS ) find_package(PkgConfig REQUIRED) +find_package(Lua 5.2 REQUIRED) find_package(ZLIB REQUIRED) find_package(BZip2) find_package(Iconv) -pkg_check_modules(LUA REQUIRED IMPORTED_TARGET lua>=5.2) pkg_check_modules(POPT REQUIRED IMPORTED_TARGET popt) pkg_check_modules(READLINE IMPORTED_TARGET readline) pkg_check_modules(ZSTD IMPORTED_TARGET libzstd>=1.3.8) @@ -147,6 +147,12 @@ pkg_check_modules(LIBELF IMPORTED_TARGET libelf) pkg_check_modules(LIBDW IMPORTED_TARGET libdw) pkg_check_modules(LIBLZMA IMPORTED_TARGET liblzma>=5.2.0) +# Lua module does not ship an IMPORTED target, define our own +add_library(LUA::LUA INTERFACE IMPORTED) +set_target_properties(LUA::LUA PROPERTIES + INTERFACE_LINK_LIBRARIES "${LUA_LIBRARIES}" + INTERFACE_INCLUDE_DIRECTORIES "${LUA_INCLUDE_DIR}") + # file >= 5.39 ships a pkg-config, may move to that later add_library(MAGIC::MAGIC UNKNOWN IMPORTED) find_library(MAGIC_LIBRARY NAMES magic REQUIRED) @@ -349,7 +355,7 @@ add_executable(rpmuncompress tools/rpmuncompress.c) add_executable(elfdeps tools/elfdeps.c) target_link_libraries(rpmsign PRIVATE librpmsign) -target_link_libraries(rpmlua PRIVATE PkgConfig::LUA) +target_link_libraries(rpmlua PRIVATE LUA::LUA) target_link_libraries(elfdeps PRIVATE PkgConfig::LIBELF) target_link_libraries(rpmbuild PRIVATE librpmbuild) target_link_libraries(rpmspec PRIVATE librpmbuild) |