Probably, only cmake scares me every time I have to touch it :) When I was digging through all of this, I wondered if going back to autotools would be preferable and fixing up the lld case (the --default-symver test exists in CMakeLists.txt, but not configure.ac).
On Mon, Oct 3, 2022 at 10:37 PM Khem Raj <[email protected]> wrote: > > Should it be using GNUInstallDirs cmake module I wonder > > On Mon, Oct 3, 2022 at 10:06 AM Alex Kiernan <[email protected]> wrote: > > > > When multilib is enabled, builds fail during package_qa: > > > > ERROR: jansson-2.14-r0 do_package: QA Issue: jansson: Files/directories > > were installed but not shipped in any package: > > /usr/lib > > /usr/lib/libjansson.a > > /usr/lib/pkgconfig > > /usr/lib/cmake > > /usr/lib/pkgconfig/jansson.pc > > /usr/lib/cmake/jansson > > /usr/lib/cmake/jansson/janssonTargets-noconfig.cmake > > /usr/lib/cmake/jansson/janssonConfig.cmake > > /usr/lib/cmake/jansson/janssonConfigVersion.cmake > > /usr/lib/cmake/jansson/janssonTargets.cmake > > Please set FILES such that these items are packaged. Alternatively if they > > are unneeded, avoid installing them or delete them within do_install. > > jansson: 10 installed and not shipped files. [installed-vs-shipped] > > ERROR: jansson-2.14-r0 do_package: Fatal QA errors were found, failing task. > > > > Signed-off-by: Alex Kiernan <[email protected]> > > --- > > .../jansson/0001-Honour-multilib-paths.patch | 63 +++++++++++++++++++ > > .../recipes-extended/jansson/jansson_2.14.bb | 4 +- > > 2 files changed, 66 insertions(+), 1 deletion(-) > > create mode 100644 > > meta-oe/recipes-extended/jansson/jansson/0001-Honour-multilib-paths.patch > > > > diff --git > > a/meta-oe/recipes-extended/jansson/jansson/0001-Honour-multilib-paths.patch > > b/meta-oe/recipes-extended/jansson/jansson/0001-Honour-multilib-paths.patch > > new file mode 100644 > > index 000000000000..513d1094593a > > --- /dev/null > > +++ > > b/meta-oe/recipes-extended/jansson/jansson/0001-Honour-multilib-paths.patch > > @@ -0,0 +1,63 @@ > > +From e66885e66a2ce7fd916933b12d1ba523a25141e4 Mon Sep 17 00:00:00 2001 > > +From: Alex Kiernan <[email protected]> > > +Date: Mon, 3 Oct 2022 13:25:05 +0100 > > +Subject: [PATCH] Honour multilib paths > > + > > +Upstream-Status: Pending > > +Signed-off-by: Alex Kiernan <[email protected]> > > +--- > > + CMakeLists.txt | 14 +++++++------- > > + 1 file changed, 7 insertions(+), 7 deletions(-) > > + > > +diff --git a/CMakeLists.txt b/CMakeLists.txt > > +index 39b9ad365f78..bf297e936a72 100644 > > +--- a/CMakeLists.txt > > ++++ b/CMakeLists.txt > > +@@ -20,8 +20,8 @@ endif () > > + > > + # Set some nicer output dirs. > > + set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/bin) > > +-set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/lib) > > +-set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/lib) > > ++set(CMAKE_LIBRARY_OUTPUT_DIRECTORY > > ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}) > > ++set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY > > ${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_INSTALL_LIBDIR}) > > + set(JANSSON_TEMP_DIR ${CMAKE_CURRENT_BINARY_DIR}/tmp) > > + > > + # Give the debug version a different postfix for windows, > > +@@ -573,14 +573,14 @@ endif () > > + # > > + > > + # Allow the user to override installation directories. > > +-set(JANSSON_INSTALL_LIB_DIR lib CACHE PATH "Installation directory > > for libraries") > > ++set(JANSSON_INSTALL_LIB_DIR ${CMAKE_INSTALL_LIBDIR} CACHE PATH > > "Installation directory for libraries") > > + set(JANSSON_INSTALL_BIN_DIR bin CACHE PATH "Installation directory > > for executables") > > + set(JANSSON_INSTALL_INCLUDE_DIR include CACHE PATH "Installation > > directory for header files") > > + > > + if(WIN32 AND NOT CYGWIN) > > + set(DEF_INSTALL_CMAKE_DIR cmake) > > + else() > > +- set(DEF_INSTALL_CMAKE_DIR lib/cmake/jansson) > > ++ set(DEF_INSTALL_CMAKE_DIR ${CMAKE_INSTALL_LIBDIR}/cmake/jansson) > > + endif() > > + > > + set(JANSSON_INSTALL_CMAKE_DIR ${DEF_INSTALL_CMAKE_DIR} CACHE PATH > > "Installation directory for CMake files") > > +@@ -633,8 +633,8 @@ option(JANSSON_INSTALL "Generate installation target" > > ON) > > + if (JANSSON_INSTALL) > > + install(TARGETS jansson > > + EXPORT janssonTargets > > +- LIBRARY DESTINATION "lib" > > +- ARCHIVE DESTINATION "lib" > > ++ LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" > > ++ ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" > > + RUNTIME DESTINATION "bin" > > + INCLUDES DESTINATION "include") > > + > > +@@ -644,7 +644,7 @@ if (JANSSON_INSTALL) > > + # Install the pkg-config. > > + install(FILES > > + ${CMAKE_CURRENT_BINARY_DIR}/jansson.pc > > +- DESTINATION lib/pkgconfig) > > ++ DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig) > > + > > + # Install the configs. > > + install(FILES > > diff --git a/meta-oe/recipes-extended/jansson/jansson_2.14.bb > > b/meta-oe/recipes-extended/jansson/jansson_2.14.bb > > index 94bb99ab71a9..68e24c890726 100644 > > --- a/meta-oe/recipes-extended/jansson/jansson_2.14.bb > > +++ b/meta-oe/recipes-extended/jansson/jansson_2.14.bb > > @@ -4,7 +4,9 @@ BUGTRACKER = "https://github.com/akheron/jansson/issues" > > LICENSE = "MIT" > > LIC_FILES_CHKSUM = "file://LICENSE;md5=afd92c4cfc08f4896003251b878cc0bf" > > > > -SRC_URI = > > "https://github.com/akheron/${BPN}/releases/download/v${PV}/${BP}.tar.bz2" > > +SRC_URI = > > "https://github.com/akheron/${BPN}/releases/download/v${PV}/${BP}.tar.bz2 \ > > + file://0001-Honour-multilib-paths.patch \ > > + " > > SRC_URI[sha256sum] = > > "fba956f27c6ae56ce6dfd52fbf9d20254aad42821f74fa52f83957625294afb9" > > > > UPSTREAM_CHECK_URI = "https://github.com/akheron/${BPN}/releases" > > -- > > 2.35.1 > > > > > > > > -- Alex Kiernan
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#99057): https://lists.openembedded.org/g/openembedded-devel/message/99057 Mute This Topic: https://lists.openembedded.org/mt/94095620/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
