Summary: | media-libs/libsdl2: sdl2-config-version.cmake hardcodes /usr/lib/ (breaks Profile 17.0 -> 17.1 upgrade) | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Vasily Pupkin <public.avatar> |
Component: | Current packages | Assignee: | Gentoo Linux bug wranglers <bug-wranglers> |
Status: | RESOLVED INVALID | ||
Severity: | normal | ||
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: |
Patched sdl2-config-version.cmake which works for me
faudio-20.09: build.log faudio-20.09: CMackeCache.txt faudio-20.09: build.make cmake --debug-find output |
Description
Vasily Pupkin
2020-11-10 06:37:45 UTC
Created attachment 670661 [details]
Patched sdl2-config-version.cmake which works for me
Please convince me this is no duplicate of bug 644538. /usr/lib/cmake /usr/lib/cmake/SDL2 /usr/lib/cmake/SDL2/sdl2-config-version.cmake /usr/lib/cmake/SDL2/sdl2-config.cmake /usr/lib64/cmake /usr/lib64/cmake/SDL2 /usr/lib64/cmake/SDL2/sdl2-config-version.cmake /usr/lib64/cmake/SDL2/sdl2-config.cmake If /usr/lib/ is hardcoded in /usr/lib/, and /usr/lib64/ is hardcoded in /usr/lib64/ that's fine, and only the (known) one-time breakage through the profile change exists and is fixed by rebuild of the package. Well, I had rebuild SDL2 before I created this bug. Or you mean some other package? I really have these files: qlist media-libs/libsdl2 | grep cmake /usr/share/doc/libsdl2-2.0.12-r2/README-cmake.md.bz2 /usr/lib/cmake/SDL2/sdl2-config.cmake /usr/lib/cmake/SDL2/sdl2-config-version.cmake /usr/lib64/cmake/SDL2/sdl2-config.cmake /usr/lib64/cmake/SDL2/sdl2-config-version.cmake Still, there was an issue at least with faudio. Created attachment 670733 [details]
faudio-20.09: build.log
Created attachment 670736 [details]
faudio-20.09: CMackeCache.txt
Created attachment 670739 [details]
faudio-20.09: build.make
Well, according to --debug-find cmake tries defs from /usr/lib/cmake, not from /usr/lib64/cmake. Created attachment 670802 [details]
cmake --debug-find output
cmake --debug-find -C /tmp/portage/app-emulation/faudio-20.09/work/FAudio-20.09-abi_x86_64.amd64/gentoo_common_config.cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_BINDIR=bin -DCMAKE_INSTALL_INCLUDEDIR=include/FAudio -DCMAKE_INSTALL_LIBDIR=lib64 -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release -DFORCE_ENABLE_DEBUGCONFIGURATION=OFF -DBUILD_TESTS=OFF -DBUILD_UTILS=OFF -DDUMP_VOICES=ON -DGSTREAMER=ON -DXNASONG=OFF -DCMAKE_BUILD_TYPE=Gentoo -DCMAKE_TOOLCHAIN_FILE=/tmp/portage/app-emulation/faudio-20.09/work/FAudio-20.09-abi_x86_64.amd64/gentoo_toolchain.cmake /tmp/portage/app-emulation/faudio-20.09/work/FAudio-20.09 2>log.txt.2 1>log.txt.1
Please make sure your /usr/lib is no symlink to /usr/lib64. (In reply to Alexey Shevchuck from comment #0) > SDL2 installs own cmake configuration to > /usr/lib/cmake/SDL2/sdl2-config.cmake > > There is an instruction to specify libSDL2.so library directly by path, > rather then by -lSDL2. > > add_library(SDL2::SDL2 SHARED IMPORTED) > set_target_properties(SDL2::SDL2 PROPERTIES > INTERFACE_INCLUDE_DIRECTORIES "${prefix}/include/SDL2" > IMPORTED_LINK_INTERFACE_LANGUAGES "C" > IMPORTED_LOCATION "/usr/lib/libSDL2.so" > INTERFACE_LINK_LIBRARIES "${SDL2_EXTRA_LINK_FLAGS}") Again, coming back to your initial description, this is completely fine and what you should have been looking at ever only was the cmake files below /usr/lib64. If you meddled with cmake and -configs as described here and in other bugs I can only assume you broke your system. Ok. What can be broken and how to check that? Well, this is certainly not an faudio issue. I unpacked fresh gentoo profile, and yes, it's fine there. The problem is my cmake for some strange reason starts to find packages (and everything) from /usr/lib, not /usr/lib64. |