diff --git a/CMakeLists.txt b/CMakeLists.txt index 94d6c2c..cf13996 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -20,3 +20,24 @@ target_link_libraries(cpackexamplelib Boost::filesystem ${YAML_CPP_LIBRARIES}) DEAL_II_SETUP_TARGET("${PROJECT_NAME}") DEAL_II_SETUP_TARGET(cpackexamplelib) + +include(GNUInstallDirs) + +install(TARGETS cpackexample + RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} +) + +install(TARGETS cpackexamplelib + LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} + ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} +) + +install(FILES + filesystem/filesystem.hpp + fem/fem.hpp + flatset/flatset.hpp + yamlParser/yamlParser.hpp + DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/cpackexamplelib +) + +include(cmake/CPackConfig.cmake) diff --git a/Dockerfile b/Dockerfile index bd5207d..bc2a714 100644 --- a/Dockerfile +++ b/Dockerfile @@ -12,14 +12,9 @@ RUN apt-get -qq update && \ vim \ tree \ lintian \ - unzip - -# Get, unpack, build, and install yaml-cpp -RUN mkdir software && cd software && \ - wget https://github.com/jbeder/yaml-cpp/archive/refs/tags/yaml-cpp-0.6.3.zip && unzip yaml-cpp-0.6.3.zip && \ - cd yaml-cpp-yaml-cpp-0.6.3 && mkdir build && cd build && \ - cmake -DYAML_BUILD_SHARED_LIBS=ON .. && make -j4 && make install - + unzip \ + libyaml-cpp-dev + # This is some strange Docker feature. Normally, you don't need to add /usr/local to these ENV LIBRARY_PATH $LIBRARY_PATH:/usr/local/lib/ ENV LD_LIBRARY_PATH $LD_LIBRARY_PATH:/usr/local/lib/ diff --git a/cmake/CPackConfig.cmake b/cmake/CPackConfig.cmake new file mode 100644 index 0000000..f80a70d --- /dev/null +++ b/cmake/CPackConfig.cmake @@ -0,0 +1,15 @@ +set(CPACK_PACKAGE_NAME "${PROJECT_NAME}") +set(CPACK_PACKAGE_VENDOR "Megha Darda") +set(CPACK_PACKAGE_CONTACT "meghardarda@gmail.com") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "CPack exercise SSE") +set(CPACK_PACKAGE_HOMEPAGE_URL "https://github.com/megha-darda/cpack-exercise-wt2526") +set(CPACK_GENERATOR "TGZ;DEB") + +set(CPACK_DEBIAN_PACKAGE_MAINTAINER "Megha Darda ") +set(CPACK_DEBIAN_PACKAGE_DESCRIPTION "This is for CPack exercise SSE") +set(CPACK_DEBIAN_FILE_NAME DEB-DEFAULT) + +set(CPACK_DEBIAN_PACKAGE_SHLIBDEPS ON) +set(CPACK_STRIP_FILES ON) + +include(CPack) diff --git a/lintian.txt b/lintian.txt new file mode 100644 index 0000000..a0b95cb --- /dev/null +++ b/lintian.txt @@ -0,0 +1,19 @@ +-- Before +lintian ./cpackexample_0.1.0_amd64.deb +running with root privileges is not recommended! +E: cpackexample: description-synopsis-is-duplicated line 1 +E: cpackexample: malformed-contact Maintainer Megha +E: cpackexample: no-changelog usr/share/doc/cpackexample/changelog.gz (native package) +E: cpackexample: no-copyright-file +E: cpackexample: unstripped-binary-or-object [usr/bin/cpackexample] +W: cpackexample: no-manual-page [usr/bin/cpackexample] + + + +-- After +lintian ./cpackexample_0.1.0_amd64.deb +running with root privileges is not recommended! +E: cpackexample: no-changelog usr/share/doc/cpackexample/changelog.gz (native package) +E: cpackexample: no-copyright-file +W: cpackexample: no-manual-page [usr/bin/cpackexample] +root@799880555f08:/mnt/cpack-exercise/build# \ No newline at end of file