Re: [cmake-developers] CPackComponentsDEB-components-depend2 test fails
Am Donnerstag, 4. Juli 2019, 23:33:22 CEST schrieb Rolf Eike Beer: > Raffi Enficiaud wrote: > > On 04.07.19 12:59, Rolf Eike Beer wrote: > > > I have a Gentoo and an openSUSE system, that both have various dpkg* > > > tools > > > installed for $reasons. > > > > > > I know that I need to disable the CPackDEB tests, they create a dynamic > > > executable and check the deb afterwards. Since this is no Debian like > > > system the libc this links to is not covered by any dep. > > > > Hi, > > > > I wrote those tests quite some time ago. They are basically checking if > > CPackDEB is handling the options that were passed to it properly. > > > > > When running the CPackComponentsDEB-components-depend2 test I get this > > > output: [...] > > > > > > Is this the same reason and I should just filter this test out (in > > > contrast to the other CPackComponentsDEB tests, which work fine), do we > > > need some sort of automatic detection, or what? > > > > This failure indicates that: > > > > - the default CPACK_DEBIAN_PACKAGE_SHLIBDEPS is on: it activates the > > automatic detection of the dependencies with shlibdeps. This is a Debian > > tool. > > - for all components but the application one, the shlibdeps is disabled > > - the application component should inherit from the default one > > - since the application points to the shared library, then it should > > have this dependency while it does not according to shlibdeps. > > > > Here the test assumes that there is a shared library the application > > component links to. > > > > I do not know much about Gentoo. Maybe the line > > > > -- Tests/CPackComponentsDEB/CMakeLists.txt:13 > > > > # Create the mylib library > > add_library(mylib mylib.cpp) > > > > --- > > > > is not creating a shared library by default on this distribution or is > > interacting with other options you may have passed? > > What if you explicitly write those lines like this: > > > > add_library(mylib SHARED mylib.cpp) I have looked into the library deb file: in case it is a static library it contains /usr/lib64/libmylib.a, in case of a shared library it only contains an empty /usr. Greetings, Eike signature.asc Description: This is a digitally signed message part. -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: https://cmake.org/mailman/listinfo/cmake-developers
Re: [cmake-developers] CPackComponentsDEB-components-depend2 test fails
Raffi Enficiaud wrote: > On 04.07.19 12:59, Rolf Eike Beer wrote: > > I have a Gentoo and an openSUSE system, that both have various dpkg* tools > > installed for $reasons. > > > > I know that I need to disable the CPackDEB tests, they create a dynamic > > executable and check the deb afterwards. Since this is no Debian like > > system the libc this links to is not covered by any dep. > > Hi, > > I wrote those tests quite some time ago. They are basically checking if > CPackDEB is handling the options that were passed to it properly. > > > When running the CPackComponentsDEB-components-depend2 test I get this > > output: [...] > > > > Is this the same reason and I should just filter this test out (in > > contrast to the other CPackComponentsDEB tests, which work fine), do we > > need some sort of automatic detection, or what? > > This failure indicates that: > > - the default CPACK_DEBIAN_PACKAGE_SHLIBDEPS is on: it activates the > automatic detection of the dependencies with shlibdeps. This is a Debian > tool. > - for all components but the application one, the shlibdeps is disabled > - the application component should inherit from the default one > - since the application points to the shared library, then it should > have this dependency while it does not according to shlibdeps. > > Here the test assumes that there is a shared library the application > component links to. > > I do not know much about Gentoo. Maybe the line > > -- Tests/CPackComponentsDEB/CMakeLists.txt:13 > > # Create the mylib library > add_library(mylib mylib.cpp) > > --- > > is not creating a shared library by default on this distribution or is > interacting with other options you may have passed? > What if you explicitly write those lines like this: > > add_library(mylib SHARED mylib.cpp) Here is the output on my openSUSE system: eike@daneel:~/repos/build/CMake$ ctest -V -R CPackComponentsDEB-components- depend2 UpdateCTestConfiguration from :/home/eike/repos/build/CMake/ DartConfiguration.tcl Parse Config file:/home/eike/repos/build/CMake/DartConfiguration.tcl Add coverage exclude regular expressions. Add coverage exclude: XCode Add coverage exclude: /Source/(cm|kw)sys/ Add coverage exclude: /CMakeFiles/CMakeTmp/ Add coverage exclude: [A-Za-z]./[Qq]t/qt-.+-opensource-src SetCTestConfiguration:CMakeCommand:/usr/bin/cmake UpdateCTestConfiguration from :/home/eike/repos/build/CMake/ DartConfiguration.tcl Parse Config file:/home/eike/repos/build/CMake/DartConfiguration.tcl Test project /home/eike/repos/build/CMake Constructing a list of tests Guessing configuration NoConfig Done constructing a list of tests Updating test list for fixtures Added 0 tests to meet fixture requirements Checking test dependency graph... Checking test dependency graph end test 152 Start 152: CPackComponentsDEB-components-depend2 152: Test command: /home/eike/repos/build/CMake/bin/ctest "-C" "NoConfig" "-- build-and-test" "/home/eike/repos/CMake/Tests/CPackComponentsDEB" "/home/eike/ repos/build/CMake/Tests/CPackComponentsDEB/buildDEB-components-depend2" "-- build-generator" "Unix Makefiles" "--build-project" "CPackComponentsDEB" "-- build-options" "-DCMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/gmake" "- DCPACK_GENERATOR:STRING=DEB" "-DCPACK_BINARY_DEB:BOOL=ON" "- DCPackDEBConfiguration=components-depend2" "--graphviz=CPackComponentsDEB.dot" "--test-command" "/home/eike/repos/build/CMake/bin/cmake" "- DCPackComponentsDEB_SOURCE_DIR:PATH=/home/eike/repos/CMake/Tests/ CPackComponentsDEB" "-DCPackComponentsDEB_BINARY_DIR:PATH=/home/eike/repos/ build/CMake/Tests/CPackComponentsDEB/buildDEB-components-depend2" "- DCPackGen=DEB" "-DCPackDEBConfiguration=components-depend2" "-P" "/home/eike/ repos/CMake/Tests/CPackComponentsDEB/RunCPackVerifyResult-components- depend2.cmake" 152: Test timeout computed to be: 1500 152: Generate graphviz: /home/eike/repos/build/CMake/Tests/CPackComponentsDEB/ buildDEB-components-depend2/CPackComponentsDEB.dot 152: Writing /home/eike/repos/build/CMake/Tests/CPackComponentsDEB/buildDEB- components-depend2/CPackComponentsDEB.dot.mylib... 152: Writing /home/eike/repos/build/CMake/Tests/CPackComponentsDEB/buildDEB- components-depend2/CPackComponentsDEB.dot.mylibapp... 152: Writing /home/eike/repos/build/CMake/Tests/CPackComponentsDEB/buildDEB- components-depend2/CPackComponentsDEB.dot.mylibapp2... 152: Writing /home/eike/repos/build/CMake/Tests/CPackComponentsDEB/buildDEB- components-depend2/CPackComponentsDEB.dot.mylib.dependers... 152: Writing /home/eike/repos/build/CMake/Tests/CPackComponentsDEB/buildDEB- components-depend2/CPackComponentsDEB.dot.mylibapp.dependers... 152: Writing /home/eike/repos/build/CMake/Tests/CPackComponentsDEB/buildDEB- components-depend2/CPackComponentsDEB.dot.mylibapp2.dependers... 152: Writing /home/eike/repos/build/CMake/Tests/CPackComponentsDEB/buildDEB- components-depend2/CPackComponentsDEB.dot... 152: Internal cmake changing into directory: /home/eike/repos/build/CMake/ Tests/
Re: [cmake-developers] CPackComponentsDEB-components-depend2 test fails
On 04.07.19 12:59, Rolf Eike Beer wrote: > I have a Gentoo and an openSUSE system, that both have various dpkg* tools > installed for $reasons. > > I know that I need to disable the CPackDEB tests, they create a dynamic > executable and check the deb afterwards. Since this is no Debian like system > the libc this links to is not covered by any dep. Hi, I wrote those tests quite some time ago. They are basically checking if CPackDEB is handling the options that were passed to it properly. > When running the CPackComponentsDEB-components-depend2 test I get this output: > [...] > > Is this the same reason and I should just filter this test out (in contrast > to > the other CPackComponentsDEB tests, which work fine), do we need some sort > of automatic detection, or what? This failure indicates that: - the default CPACK_DEBIAN_PACKAGE_SHLIBDEPS is on: it activates the automatic detection of the dependencies with shlibdeps. This is a Debian tool. - for all components but the application one, the shlibdeps is disabled - the application component should inherit from the default one - since the application points to the shared library, then it should have this dependency while it does not according to shlibdeps. Here the test assumes that there is a shared library the application component links to. I do not know much about Gentoo. Maybe the line -- Tests/CPackComponentsDEB/CMakeLists.txt:13 # Create the mylib library add_library(mylib mylib.cpp) --- is not creating a shared library by default on this distribution or is interacting with other options you may have passed? What if you explicitly write those lines like this: add_library(mylib SHARED mylib.cpp) Best, Raffi -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: https://cmake.org/mailman/listinfo/cmake-developers
[cmake-developers] CPackComponentsDEB-components-depend2 test fails
I have a Gentoo and an openSUSE system, that both have various dpkg* tools installed for $reasons. I know that I need to disable the CPackDEB tests, they create a dynamic executable and check the deb afterwards. Since this is no Debian like system the libc this links to is not covered by any dep. When running the CPackComponentsDEB-components-depend2 test I get this output: 152: CPack Verbose: Install configuration: "NoConfig" 152: CPack Verbose: Installing: /home/ebeer/repos/build/CMake/Tests/ CPackComponentsDEB/buildDEB-components-depend2/_CPack_Packages/Linux/DEB/ MyLib-1.0.2-Linux/headers/usr/include/mylib.h 152: CPack: Create package 152: CPack Verbose: Package files to: /home/ebeer/repos/build/CMake/Tests/ CPackComponentsDEB/buildDEB-components-depend2/_CPack_Packages/Linux/DEB/ MyLib-1.0.2-Linux.deb 152: -- CPACK_DEBIAN_PACKAGE_DEPENDS not set, the package will have no dependencies. 152: CPack Verbose: Copying final package(s) [3]: 152: CPack: - package: /home/ebeer/repos/build/CMake/Tests/CPackComponentsDEB/ buildDEB-components-depend2/mylib-applications_1.0.2_amd64.deb generated. 152: CPack: - package: /home/ebeer/repos/build/CMake/Tests/CPackComponentsDEB/ buildDEB-components-depend2/mylib-headers_1.0.2_amd64.deb generated. 152: CPack: - package: /home/ebeer/repos/build/CMake/Tests/CPackComponentsDEB/ buildDEB-components-depend2/mylib-libraries_1.0.2_amd64.deb generated. 152: 152: -- CPack_error=CPackDeb: - Generating dependency list 152: 152: -- package='mylib-applications', dependencies='' 152: -- package='mylib-headers', dependencies='mylib-libraries (= 1.0.2), depend-headers' 152: -- package='mylib-libraries', dependencies='depend-default' 152: CMake Error at /home/ebeer/repos/upstream/CMake/Tests/CPackComponentsDEB/ RunCPackVerifyResult-components-depend2.cmake:93 (message): 152: dpkg-deb checks failed: 152: 152: ;dpkg-deb: 152: /home/ebeer/repos/build/CMake/Tests/CPackComponentsDEB/buildDEB- components-depend2/mylib-applications_1.0.2_amd64.deb: 152: Incorrect dependencies for package mylib-applications: '' does not contain 152: any 'lib' Is this the same reason and I should just filter this test out (in contrast to the other CPackComponentsDEB tests, which work fine), do we need some sort of automatic detection, or what? Eike -- -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: https://cmake.org/mailman/listinfo/cmake-developers