修复rpm -U安装时配置文件被覆盖
This commit is contained in:
@@ -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)
|
||||
|
||||
11
cmake/preInstall.sh
Normal file
11
cmake/preInstall.sh
Normal file
@@ -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
|
||||
6
cmake/preUninstall.sh
Normal file
6
cmake/preUninstall.sh
Normal file
@@ -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
|
||||
Reference in New Issue
Block a user