extra-cmake-modules broken "noarch" support

Daniel Vrátil dvratil at redhat.com
Tue Jun 3 12:08:28 UTC 2014


Hi,

I noticed that in ECM, the generated file in 
/usr/share/ECM/cmake/ECMConfigVersion.cmake contains an architecture check:

# check that the installed version has the same 32/64bit-ness as the one which 
is currently searching:
if(NOT "${CMAKE_SIZEOF_VOID_P}"  STREQUAL  "4")
   math(EXPR installedBits "4 * 8")
   set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)")
   set(PACKAGE_VERSION_UNSUITABLE TRUE)
endif()

However ECM is "noarch"  - it installs only non-binary files to /usr/share, so 
it should not matter what architecture it has been "compiled" on and what arch 
it's installed on. However thanks to the arch check, when the package gets 
build on an i686 builder (which happened to me in this case), it's not 
possible to build any 64bit packages against it:

  Could not find a configuration file for package "ECM" that is compatible
  with requested version "0.0.14".
  The following configuration files were considered but not accepted:
    /usr/share/ECM/cmake/ECMConfig.cmake, version: 0.0.14 (32bit)
-- Configuring incomplete, errors occurred!
See also "/builddir/build/BUILD/attica-4.100.0/x86_64-redhat-linux-
gnu/CMakeFiles/CMakeOutput.log".


I know that ECMConfigVersion.cmake is generated by CMake, but I think that 
having the arch check in ECMConfigVersion.cmake is a bug, that should be fixed 
in ECM (shipping custom ECMConfigVersion.cmake.in?) and later in CMake (some 
NoArchCheck option to write_basic_package_version_file).

For now I can work around this by removing the check manually in SPEC file 
after ECM is built, but it would be preferable if upstream could do something 
about it :-)

Thanks,
Daniel

-- 
Daniel Vrátil | dvratil at redhat.com | dvratil on #kde-devel, #kontact, #akonadi
KDE Desktop Team
Associate Software Engineer, Red Hat

GPG Key: 0xC59D614F6F4AE348
Fingerprint: 4EC1 86E3 C54E 0B39 5FDD B5FB C59D 614F 6F4A E348
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 490 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20140603/a13aff8d/attachment.sig>


More information about the Kde-frameworks-devel mailing list