Bug 341719 - 5.4.0: generated macros ignore fact that @CMAKECONFIG_INSTALL_DIR@ can be absolute
Summary: 5.4.0: generated macros ignore fact that @CMAKECONFIG_INSTALL_DIR@ can be ab...
Status: REPORTED
Alias: None
Product: buildsystem
Classification: Developer tools
Component: general (show other bugs)
Version: unspecified
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Alex Merry
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-12-09 21:51 UTC by Arkadiusz Miskiewicz
Modified: 2019-04-21 01:52 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Arkadiusz Miskiewicz 2014-12-09 21:51:48 UTC
./KF5I18nConfig.cmake.in:set(KI18N_MODULE_DIR "${PACKAGE_PREFIX_DIR}/@CMAKECONFIG_INSTALL_DIR@")

but CMAKECONFIG_INSTALL_DIR can be absolute path (and this is perfect configuration).

Unortunately KF5I18nConfig.cmake concatenates prefix and absolute CMAKECONFIG_INSTALL_DIR which ends like this:

/usr/lib64/cmake/KF5I18n/KF5I18nConfig.cmake:set(KI18N_MODULE_DIR "${PACKAGE_PREFIX_DIR}//usr/lib64/cmake/KF5I18n")

so double prefix.

Reproducible: Always

Steps to Reproduce:
1. Set cmake variables, so CMAKECONFIG_INSTALL_DIR ends up being absolute
2.
3.
Comment 1 Chusslove Illich 2014-12-11 11:08:20 UTC
Is this issue specific to Ki18n, or some other frameworks exhibit it too? I can see this pattern ("${PACKAGE_PREFIX_DIR}/@SOME_INSTALL_DIR@") in config files of many other frameworks. I could make some sort of quick fix, but I'd prefer a more uniform solution.

Also, how should I actually invoke cmake to create this problem?
Comment 2 Arkadiusz Miskiewicz 2014-12-11 11:15:33 UTC
More. kauth, kded, k18n, kjs and probably some others.

cmake was invoked like this:
+ CC=x86_64-pld-linux-gcc CXX=x86_64-pld-linux-g++ CPPFLAGS= /usr/bin/cmake '-DCMAKE_VERBOSE_MAKEFILE=ON' '-DCMAKE_BUILD_TYPE=PLD' '-DCMAKE_INSTALL_BINDIR:PATH=/usr/bin' '-DCMAKE_INSTALL_SBINDIR:PATH=/usr/sbin' '-DCMAKE_INSTALL_LIBEXECDIR:PATH=/usr/lib64' '-DCMAKE_INSTALL_SYSCONFDIR:PATH=/etc' '-DCMAKE_INSTALL_SHAREDSTATEDIRPATH:PATH=/var/lib' '-DCMAKE_INSTALL_LOCALSTATEDIRPATH:PATH=/var' '-DCMAKE_INSTALL_LIBDIR:PATH=/usr/lib64' '-DCMAKE_INSTALL_INCLUDEDIR:PATH=/usr/include' '-DCMAKE_INSTALL_OLDINCLUDEDIR:PATH=/usr/include' '-DCMAKE_INSTALL_DATAROOTDIR:PATH=/usr/share' '-DCMAKE_INSTALL_DATADIR:PATH=/usr/share' '-DCMAKE_INSTALL_INFODIR:PATH=/usr/share/info' '-DCMAKE_INSTALL_LOCALEDIR:PATH=/usr/share/locale' '-DCMAKE_INSTALL_MANDIR:PATH=/usr/share/man' '-DCMAKE_INSTALL_DOCDIR:PATH=/usr/share/doc' '-DCMAKE_INSTALL_PREFIX:PATH=/usr' '-DSYSCONF_INSTALL_DIR:PATH=/etc' '-DCMAKE_CXX_FLAGS_PLD=-O2 -fwrapv -pipe -Wformat -Werror=format-security -gdwarf-4 -fno-debug-types-section -fvar-tracking-assignments -g2 -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -fPIC -march=x86-64 -gdwarf-4 -fno-debug-types-section -fvar-tracking-assignments -g2  -DNDEBUG -DQT_NO_DEBUG' '-DCMAKE_C_FLAGS_PLD=-O2 -fwrapv -pipe -Wformat -Werror=format-security -gdwarf-4 -fno-debug-types-section -fvar-tracking-assignments -g2 -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -fPIC -march=x86-64 -gdwarf-4 -fno-debug-types-section -fvar-tracking-assignments -g2  -DNDEBUG -DQT_NO_DEBUG' '-DCMAKE_Fortran_FLAGS_PLD=-O2 -fwrapv -pipe -Wformat -Werror=format-security -gdwarf-4 -fno-debug-types-section -fvar-tracking-assignments -g2 -Wp,-D_FORTIFY_SOURCE=2 -fstack-protector --param=ssp-buffer-size=4 -fPIC -march=x86-64 -gdwarf-4 -fno-debug-types-section -fvar-tracking-assignments -g2  -DNDEBUG -DQT_NO_DEBUG' '-DCMAKE_EXE_LINKER_FLAGS_PLD=-Wl,--as-needed -Wl,--no-copy-dt-needed-entries -Wl,-z,relro -Wl,-z,combreloc ' '-DCMAKE_SHARED_LINKER_FLAGS_PLD=-Wl,--as-needed -Wl,--no-copy-dt-needed-entries -Wl,-z,relro -Wl,-z,combreloc ' '-DCMAKE_MODULE_LINKER_FLAGS_PLD=-Wl,--as-needed -Wl,--no-copy-dt-needed-entries -Wl,-z,relro -Wl,-z,combreloc ' '-DLIB_SUFFIX=64' '-DBUILD_SHARED_LIBS:BOOL=ON' '-DKDE_INSTALL_USE_QT_SYS_PATHS=ON' ../


https://bugs.kde.org/show_bug.cgi?id=341714
Comment 3 Chusslove Illich 2014-12-11 12:31:34 UTC
Ah yes, reassigning to buildsystem, that's a good idea :)