Skip to content

Commit d923e94

Browse files
committed
package devel patch 2.7
1 parent 678fc71 commit d923e94

File tree

1 file changed

+48
-0
lines changed

1 file changed

+48
-0
lines changed

CMakeLists.txt

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
cmake_minimum_required(VERSION 3.28)
2+
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR}/.devcontainer/cmake)
3+
include(preproject)
4+
project(patch VERSION 2.7)
5+
set(buildpro_REV 24.03)
6+
include(flags)
7+
include(GNUInstallDirs)
8+
set(XP_INSTALL_CMAKEDIR ${CMAKE_INSTALL_DATADIR}/cmake)
9+
include(ExternalProject)
10+
set_property(DIRECTORY PROPERTY "EP_BASE" ${CMAKE_BINARY_DIR}/epbase)
11+
if(WIN32 AND NOT UNIX)
12+
set(VER 2.7.6)
13+
ExternalProject_Add(${PROJECT_NAME}
14+
DOWNLOAD_EXTRACT_TIMESTAMP true
15+
URL https://github.com/smanders/externpro/releases/download/20.10.1/patch-${VER}-bin.zip
16+
URL_MD5 e0d4690179d85c1cf543f52856a63db9
17+
CONFIGURE_COMMAND ${CMAKE_COMMAND} -E copy_if_different
18+
<SOURCE_DIR>/patch.exe <INSTALL_DIR>/bin/patcz.exe
19+
BUILD_COMMAND ${CMAKE_COMMAND} -E copy_if_different
20+
<SOURCE_DIR>/msys-2.0.dll <INSTALL_DIR>/bin/
21+
INSTALL_COMMAND ""
22+
)
23+
set(patchExe bin/patcz)
24+
string(JOIN "\n" EXT3 # NOTE: --binary so it can handle line ending character issue
25+
"set(PATCH_CMD \${PATCH_EXE} --binary)"
26+
"list(APPEND reqVars PATCH_CMD)"
27+
""
28+
)
29+
else()
30+
set(VER 2.7.5)
31+
ExternalProject_Add(${PROJECT_NAME}
32+
DOWNLOAD_EXTRACT_TIMESTAMP true
33+
URL http://ftp.gnu.org/gnu/patch/patch-${VER}.tar.gz
34+
URL_MD5 ed4d5674ef4543b4eb463db168886dc7
35+
CONFIGURE_COMMAND <SOURCE_DIR>/configure --prefix=<INSTALL_DIR>
36+
BUILD_COMMAND # use default
37+
INSTALL_COMMAND # use default
38+
)
39+
set(patchExe bin/patch)
40+
string(JOIN "\n" EXT3
41+
"set(PATCH_CMD \${PATCH_EXE})"
42+
"list(APPEND reqVars PATCH_CMD)"
43+
""
44+
)
45+
endif()
46+
xpPackageDevel(EXE_PATH ${patchExe})
47+
ExternalProject_Get_Property(${PROJECT_NAME} INSTALL_DIR)
48+
install(DIRECTORY ${INSTALL_DIR}/ DESTINATION . USE_SOURCE_PERMISSIONS)

0 commit comments

Comments
 (0)