[Pkg-cmake-team] Bug#900240: cmake: FTBFS on hurd-i386

Svante Signell svante.signell at gmail.com
Sun Aug 12 11:59:55 BST 2018


On Sat, 2018-08-11 at 21:09 +0200, Petter Reinholdtsen wrote:
> [Svante Signell]
> > Currently cmake FTBFS on GNU/Hurd due to a PATH_MAX issue. Attached
> > is
> > the patch path_max.patch also provided by the first attachment in
> > this
> > bug #900240, there named path_max.path. With the attached patch and
> > the
> > upcoming bug report on linux-any, providing
> > Source_Modules_FindLibUV.cmake.diff cmake builds fine. 
> 
> I tested the patch, and it seem to solve the problem.  I hope this
> issue
> can be fixed soon, as the missing cmake is blocking a lot of builds.
> 
> But one of the 496 tests failed:
> 
>   Actual stderr:
> 

>    actual-err>   ;/home/pere/cmake-
> 3.12.1/Build/Tests/RunCMake/DEB/CPack/GENERATE_SHLIBS-build-
> soversion_not_zero-subtest/data_shlibs/usr/foo/libtest_lib.so.0.8:
>    actual-err>   linked,
> BuildID[sha1]=dd4771c7b0eef02c878a458492e8b02797b12a0a, with
>    actual-err>   debug_info, not stripped
>    actual-err> 
>    actual-err>   '; readelf "
>    actual-err> 
>    actual-err>   "
>    actual-err> Call Stack (most recent call first):
>    actual-err>   /home/pere/cmake-
> 3.12.1/Tests/RunCMake/CPack/tests/GENERATE_SHLIBS/VerifyResult.cmake:
> 9 (verifyDebControl)
>    actual-err>   /home/pere/cmake-
> 3.12.1/Tests/RunCMake/CPack/VerifyResult.cmake:129 (include)
> 
> Call Stack (most recent call first):
>   /home/pere/cmake-3.12.1/Tests/RunCMake/RunCMake.cmake:164
> (run_cmake)
>   /home/pere/cmake-
> 3.12.1/Tests/RunCMake/CPack/CPackTestHelpers.cmake:98
> (run_cmake_command)
>   /home/pere/cmake-
> 3.12.1/Tests/RunCMake/CPack/CPackTestHelpers.cmake:123
> (run_cpack_test_common_)
>   /home/pere/cmake-3.12.1/Tests/RunCMake/CPack/RunCMakeTest.cmake:16
> (run_cpack_test_subtests)
> 
> 
> -- GENERATE_SHLIBS-soversion_zero-subtest-COMPONENT-type - PASSED
> -- GENERATE_SHLIBS-soversion_zero-subtest-COMPONENT-type-Build -
> PASSED
> CMake Error at /home/pere/cmake-
> 3.12.1/Tests/RunCMake/RunCMake.cmake:150 (message):
>   DEB/GENERATE_SHLIBS-soversion_zero-subtest-COMPONENT-type - FAILED:
> 
>   Result is [1], not [0].
> 
>   stderr does not match that expected.
> 
>   Command was:
> 
>    command> "/home/pere/cmake-3.12.1/Build/bin/cmake" "-
> DRunCMake_TEST=GENERATE_SHLIBS-soversion_zero-subtest-COMPONENT-type" 
> "-DRunCMake_TEST_FILE_PREFIX=GENERATE_SHLIBS" "-
> DRunCMake_SUBTEST_SUFFIX=soversion_zero" "-DGENERATOR_TYPE=DEB" "-
> DPACKAGING_TYPE=COMPONENT" "-Dsrc_dir=/home/pere/cmake-
> 3.12.1/Tests/RunCMake/CPack" "-Dbin_dir=/home/pere/cmake-
> 3.12.1/Build/Tests/RunCMake/DEB/CPack/GENERATE_SHLIBS-build-
> soversion_zero-subtest" "-Dconfig_file=/home/pere/cmake-
> 3.12.1/Build/Tests/RunCMake/CPack/conf/DEB_config.cmake" "-P"
> "/home/pere/cmake-3.12.1/Tests/RunCMake/CPack/VerifyResult.cmake"
> 
>   Actual stdout:
> 
>    actual-out> 
> 
>   Expected stderr to match:
> 
>    expect-err> ^$
> 
>   Actual stderr:
> 
>    actual-err> CMake Error at /home/pere/cmake-
> 3.12.1/Tests/RunCMake/CPack/DEB/Helpers.cmake:144 (message):
>    actual-err>   Expected Debian control file does not exist:
> 'shlibs' Extra: install files
>    actual-err>   '/home/pere/cmake-
> 3.12.1/Build/Tests/RunCMake/DEB/CPack/GENERATE_SHLIBS-build-
> soversion_zero-subtest/data_shlibs/usr/foo/libtest_lib.so:
>    actual-err>   symbolic link to libtest_lib.so.0
>    actual-err> 
>    actual-err>   
>    actual-err>   ;/home/pere/cmake-
> 3.12.1/Build/Tests/RunCMake/DEB/CPack/GENERATE_SHLIBS-build-
> soversion_zero-subtest/data_shlibs/usr/foo/libtest_lib.so.0:
>    actual-err>   ELF 32-bit LSB pie executable, Intel 80386, version
> 1 (SYSV), dynamically
>    actual-err>   linked,
> BuildID[sha1]=38ff16f7199f1977d05e2eed1242c7c88a383db6, with
>    actual-err>   debug_info, not stripped
>    actual-err> 
>    actual-err>   '; readelf "
>    actual-err> 
>    actual-err>   "
>    actual-err> Call Stack (most recent call first):
>    actual-err>   /home/pere/cmake-
> 3.12.1/Tests/RunCMake/CPack/tests/GENERATE_SHLIBS/VerifyResult.cmake:
> 9 (verifyDebControl)
>    actual-err>   /home/pere/cmake-
> 3.12.1/Tests/RunCMake/CPack/VerifyResult.cmake:129 (include)
> 
> Call Stack (most recent call first):
>   /home/pere/cmake-3.12.1/Tests/RunCMake/RunCMake.cmake:164
> (run_cmake)
>   /home/pere/cmake-
> 3.12.1/Tests/RunCMake/CPack/CPackTestHelpers.cmake:98
> (run_cmake_command)
>   /home/pere/cmake-
> 3.12.1/Tests/RunCMake/CPack/CPackTestHelpers.cmake:123
> (run_cpack_test_common_)
>   /home/pere/cmake-3.12.1/Tests/RunCMake/CPack/RunCMakeTest.cmake:16
> (run_cpack_test_subtests)
> 
> 
> -- GENERATE_SHLIBS_LDCONFIG-COMPONENT-type - PASSED
> -- GENERATE_SHLIBS_LDCONFIG-COMPONENT-type-Build - PASSED
> CMake Error at /home/pere/cmake-
> 3.12.1/Tests/RunCMake/RunCMake.cmake:150 (message):
>   DEB/GENERATE_SHLIBS_LDCONFIG-COMPONENT-type - FAILED:
> 
>   Result is [1], not [0].
> 
>   stderr does not match that expected.
> 
>   Command was:
> 
>    command> "/home/pere/cmake-3.12.1/Build/bin/cmake" "-
> DRunCMake_TEST=GENERATE_SHLIBS_LDCONFIG-COMPONENT-type" "-
> DRunCMake_TEST_FILE_PREFIX=GENERATE_SHLIBS_LDCONFIG" "-
> DRunCMake_SUBTEST_SUFFIX=" "-DGENERATOR_TYPE=DEB" "-
> DPACKAGING_TYPE=COMPONENT" "-Dsrc_dir=/home/pere/cmake-
> 3.12.1/Tests/RunCMake/CPack" "-Dbin_dir=/home/pere/cmake-
> 3.12.1/Build/Tests/RunCMake/DEB/CPack/GENERATE_SHLIBS_LDCONFIG-build" 
> "-Dconfig_file=/home/pere/cmake-
> 3.12.1/Build/Tests/RunCMake/CPack/conf/DEB_config.cmake" "-P"
> "/home/pere/cmake-3.12.1/Tests/RunCMake/CPack/VerifyResult.cmake"
> 
>   Actual stdout:
> 
>    actual-out> 
> 
>   Expected stderr to match:
> 
>    expect-err> ^$
> 
>   Actual stderr:
> 
>    actual-err> CMake Error at /home/pere/cmake-
> 3.12.1/Tests/RunCMake/CPack/DEB/Helpers.cmake:144 (message):
>    actual-err>   Expected Debian control file does not exist:
> 'shlibs' Extra: install files
>    actual-err>   '/home/pere/cmake-
> 3.12.1/Build/Tests/RunCMake/DEB/CPack/GENERATE_SHLIBS_LDCONFIG-
> build/data_shlibs/usr/lib/libtest_lib.so.0.8:
>    actual-err>   ELF 32-bit LSB pie executable, Intel 80386, version
> 1 (SYSV), dynamically

I've been in contact with #cmake. The problem here is that file reports
ELF 32-bit LSB pie executable,
but the comparison in Modules/CPackDeb.cmake expects an output of 
ELF 32-bit LSB shared object
in its check:
if(_FILE MATCHES "ELF.*shared object")

We tried to find out how that file libtest_lib.so.0.8 was generated,
but did not succeed. Maybe there is a bug in file(1).

Version 5.33-3 and 5.34-{1,2} reports:
ELF 32-bit LSB pie executable, Intel 80386, version 1 (SYSV),
dynamically linked,
BuildID[sha1]=f7eb0213a2606a5e3b1bc46d369d2fc47db1d8c5, with
debug_info, not stripped

while 5.29-3 reports:
ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV),
dynamically linked,
BuildID[sha1]=f7eb0213a2606a5e3b1bc46d369d2fc47db1d8c5, not stripped



More information about the Pkg-cmake-team mailing list