The only difference is about the usage of preinstall target. The Ninja generator does not use it, and it should because it need to build sqlcipher before packaging it...
the interesting part of vimdiff of cpack --trace : * Unix Makefiles | Ninja* CPack: Install projects | CPack: Install projects ---------------------------------------------- --------| CPack: - Run preinstall target for: sqlcipher CPack: - Install project: sqlcipher | CPack: - Install project: sqlcipher Regards, Le mer. 25 avr. 2018 à 13:03, Alfred Sawaya <alf...@huji.fr> a écrit : > Hello folks, > > I ran into an issue today and I think it is an unexpected behaviour. > > I have a CMake project that build an external project (autotools) and pack > it into a .deb. > It works when I use the Makefile generator (cmake /my/path) but it does > not when I use the Ninja generator (cmake -G Ninja /my/path) -> it produces > an valid but empty package. > > I expected that the behaviour would be the same regardless the generator I > use. Is that correct ? > > *Here is the complete CMakeLists.txt : * > > project(sqlcipher) > cmake_minimum_required (VERSION 2.8) > include(ExternalProject) > > ExternalProject_Add( > lsqlcipher > GIT_REPOSITORY https://github.com/sqlcipher/sqlcipher.git > BUILD_IN_SOURCE true > CONFIGURE_COMMAND ./configure --enable-tempstore=yes > "CFLAGS=-DSQLITE_HAS_CODEC" > ) > > SET(CPACK_DEBIAN_PACKAGE_DEPENDS "libssl1.0.2,libssl-dev") > SET(CPACK_DEBIAN_PACKAGE_PROVIDES "libqlcipher0, libsqlcipher-dev, > sqlcipher") > SET(CPACK_DEBIAN_PACKAGE_REPLACES ${CPACK_DEBIAN_PACKAGE_PROVIDES}) > SET(CPACK_GENERATOR "DEB") > SET(CPACK_PACKAGE_NAME "my-sqlcipher") > SET(CPACK_PACKAGE_VERSION "3.20.1") > SET(CPACK_DEBIAN_PACKAGE_MAINTAINER "Me") > SET(CPACK_DEBIAN_PACKAGE_DESCRIPTION "Install the last version of > sqlcipher") > SET(CPACK_DEBIAN_PACKAGE_ARCHITECTURE "all") > SET(CPACK_PACKAGE_FILE_NAME > "${CPACK_PACKAGE_NAME}_${CPACK_PACKAGE_VERSION}_${CPACK_DEBIAN_PACKAGE_ARCHITECTURE}") > INCLUDE(CPack) > > *To reproduce : * > > 1. Copy the CMakeLists.txt content to a file > 2. mkdir build > 3. cd build > 4. cmake .. > 5. make package > 6. dpkg -c *.deb # => there is contents > 7. rm -rf * > 8. cmake -G Ninja .. > 9. ninja package > 10. dpkg -c *.deb # => it is empty... > > Any idea of what I am doing wrong ? Or is it a bug in CMake/CPack ? > > Thank you, > > Alfred > -- > Cordialement, > Alfred Sawaya > -- Cordialement, Alfred Sawaya
-- 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