1- cmake_minimum_required (VERSION 2 .8)
1+ cmake_minimum_required (VERSION 3 .8)
22project (libevdevPlus)
33
44set (CMAKE_CXX_STANDARD 11)
5+ set (PROJECT_VERSION "0.1.0" )
6+ set (CPACK_PACKAGE_VERSION ${PROJECT_VERSION} )
7+ set (CPACK_PACKAGE_VERSION_MAJOR "0" )
8+ set (CPACK_PACKAGE_VERSION_MINOR "1" )
9+ set (CPACK_PACKAGE_VERSION_PATCH "0" )
10+ set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "An easy-to-use C++ event device library" )
11+ set (CPACK_PACKAGE_CONTACT "Yuki Workshop <https://github.com/YukiWorkshop>" )
12+ set (CMAKE_PROJECT_HOMEPAGE_URL "https://github.com/YukiWorkshop/libevdevPlus" )
13+ set (CPACK_DEBIAN_PACKAGE_HOMEPAGE ${CMAKE_PROJECT_HOMEPAGE_URL} )
14+ set (CPACK_DEBIAN_PACKAGE_DEPENDS "libc6 (>= 2.14), libstdc++6 (>= 5.2)" )
15+ set (CPACK_PACKAGE_FILE_NAME ${PROJECT_NAME} _${PROJECT_VERSION} _${CPACK_DEBIAN_PACKAGE_ARCHITECTURE} )
16+ set (CPACK_DEBIAN_DEBUGINFO_PACKAGE yes )
17+ set (CPACK_DEBIAN_COMPRESSION_TYPE "xz" )
18+ set (CPACK_GENERATOR "DEB;RPM;TXZ" )
19+ set (CPACK_SOURCE_GENERATOR "DEB;RPM;TXZ" )
20+ include (CPack)
21+
22+ include (GNUInstallDirs)
523
624set (SOURCE_FILES
725 evdevPlus.cpp
826 evdevPlus.hpp CommonIncludes.hpp InputEvent.hpp Resource .cpp)
927
1028add_library (evdevPlus SHARED ${SOURCE_FILES} )
1129add_library (evdevPlus_Static STATIC ${SOURCE_FILES} )
30+
31+ set_target_properties (evdevPlus PROPERTIES VERSION ${PROJECT_VERSION} )
32+ set_target_properties (evdevPlus PROPERTIES SOVERSION ${CPACK_PACKAGE_VERSION_MAJOR} )
1233set_target_properties (evdevPlus_Static PROPERTIES OUTPUT_NAME evdevPlus)
1334
1435add_executable (evdevPlus_test test .cpp)
1536target_link_libraries (evdevPlus_test evdevPlus)
1637
17- install (TARGETS evdevPlus evdevPlus_Static DESTINATION lib)
38+ install (TARGETS evdevPlus
39+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} )
40+
41+ install (TARGETS evdevPlus_Static
42+ DESTINATION ${CMAKE_INSTALL_LIBDIR} )
43+
1844install (FILES evdevPlus.hpp InputEvent.hpp CommonIncludes.hpp DESTINATION include /evdevPlus/)
0 commit comments