diff --git a/CMakeLists.txt b/CMakeLists.txt index 0a60904..666b898 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -34,6 +34,7 @@ include_directories(/opt/MESA/include/MESA/) file(GLOB SRC "src/*.c" + "src/*.cpp" ) set(DNS_DEPEND_DYN_LIB ssl crypto) @@ -44,6 +45,14 @@ set_target_properties(quic PROPERTIES PREFIX "") target_link_libraries(quic ${DNS_DEPEND_DYN_LIB}) set_target_properties(quic PROPERTIES OUTPUT_NAME ${lib_name}) +set(CPACK_RPM_USER_FILELIST "%config(noreplace) ${CMAKE_INSTALL_PREFIX}/plug/protocol/quic/quic.inf" + "%config(noreplace) ${CMAKE_INSTALL_PREFIX}/conf/quic/quic.conf" + "%config(noreplace) ${CMAKE_INSTALL_PREFIX}/etc/entrylist.conf" + "%config(noreplace) ${CMAKE_INSTALL_PREFIX}/plug/conflist.inf ") + +SET(CPACK_RPM_PRE_INSTALL_SCRIPT_FILE "${PROJECT_SOURCE_DIR}/cmake/preInstall.sh") +SET(CPACK_RPM_PRE_UNINSTALL_SCRIPT_FILE "${PROJECT_SOURCE_DIR}/cmake/preUninstall.sh") + install(TARGETS quic LIBRARY DESTINATION ${CMAKE_INSTALL_PREFIX}/plug/protocol/quic COMPONENT LIBRARY) install(FILES bin/quic.inf DESTINATION ${CMAKE_INSTALL_PREFIX}/plug/protocol/quic COMPONENT PROFILE) install(FILES bin/quic.conf DESTINATION ${CMAKE_INSTALL_PREFIX}/conf/quic COMPONENT PROFILE) diff --git a/cmake/preInstall.sh b/cmake/preInstall.sh new file mode 100644 index 0000000..7188830 --- /dev/null +++ b/cmake/preInstall.sh @@ -0,0 +1,11 @@ +#!/bin/sh +DST=${RPM_INSTALL_PREFIX} +mkdir -p ${DST}/plug/protocol/ +touch ${DST}/plug/conflist.inf +touch ${DST}/etc/entrylist.conf +if [[ -z `grep -rn 'quic.inf' ${DST}/plug/conflist.inf` ]];then + sed -i '/\[protocol\]/a\./plug/protocol/quic/quic.inf' ${DST}/plug/conflist.inf +fi +if [[ -z `grep -rn 'quic' ${DST}etc/entrylist.conf` ]];then + echo "QUIC" >> ${DST}etc/entrylist.conf +fi diff --git a/cmake/preUninstall.sh b/cmake/preUninstall.sh new file mode 100644 index 0000000..ae4c8fc --- /dev/null +++ b/cmake/preUninstall.sh @@ -0,0 +1,6 @@ +#!/bin/sh +DST=${RPM_INSTALL_PREFIX} +mkdir -p ${DST}/plug/business/ +touch ${DST}/plug/conflist.inf +sed -i '/quic.inf/d' ${DST}/plug/conflist.inf +sed -i '/QUIC/d' ${DST}etc/entrylist.conf