修复rpm -U安装时配置文件被覆盖
This commit is contained in:
@@ -34,6 +34,7 @@ include_directories(/opt/MESA/include/MESA/)
|
|||||||
|
|
||||||
file(GLOB SRC
|
file(GLOB SRC
|
||||||
"src/*.c"
|
"src/*.c"
|
||||||
|
"src/*.cpp"
|
||||||
)
|
)
|
||||||
|
|
||||||
set(DNS_DEPEND_DYN_LIB ssl crypto)
|
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})
|
target_link_libraries(quic ${DNS_DEPEND_DYN_LIB})
|
||||||
set_target_properties(quic PROPERTIES OUTPUT_NAME ${lib_name})
|
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(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.inf DESTINATION ${CMAKE_INSTALL_PREFIX}/plug/protocol/quic COMPONENT PROFILE)
|
||||||
install(FILES bin/quic.conf DESTINATION ${CMAKE_INSTALL_PREFIX}/conf/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