Skip to content

Commit ecfe7fc

Browse files
committed
Added configure‑time file(MAKE_DIRECTORY/TOUCH/COPY) logic in CMakeLists.txt
1 parent dde90b2 commit ecfe7fc

File tree

1 file changed

+15
-18
lines changed

1 file changed

+15
-18
lines changed

CMakeLists.txt

Lines changed: 15 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -137,25 +137,22 @@ target_link_options(mklev PRIVATE
137137
# READ_ME step 4: make the directory 700 mode
138138
# READ_ME step 5: create perm (0 length regular file)
139139

140-
add_custom_target(setup_hackdir ALL
141-
COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/hackdir
142-
COMMAND ${CMAKE_COMMAND} -E make_directory ${CMAKE_BINARY_DIR}/hackdir/save
143-
COMMAND ${CMAKE_COMMAND} -E touch ${CMAKE_BINARY_DIR}/hackdir/perm
144-
COMMAND ${CMAKE_COMMAND} -E rm -rf ${CMAKE_BINARY_DIR}/hackdir/record
145-
COMMAND ${CMAKE_COMMAND} -E rm -rf ${CMAKE_BINARY_DIR}/hackdir/news
146-
COMMAND ${CMAKE_COMMAND} -E rm -rf ${CMAKE_BINARY_DIR}/hackdir/moves
147-
COMMAND ${CMAKE_COMMAND} -E copy
148-
${CMAKE_CURRENT_SOURCE_DIR}/original/record
149-
${CMAKE_BINARY_DIR}/hackdir/record
150-
151-
# Copy game data files from original
152-
COMMAND ${CMAKE_COMMAND} -E copy
153-
${CMAKE_CURRENT_SOURCE_DIR}/original/news
154-
${CMAKE_BINARY_DIR}/hackdir/news
155-
COMMAND ${CMAKE_COMMAND} -E copy
156-
${CMAKE_CURRENT_SOURCE_DIR}/original/moves
157-
${CMAKE_BINARY_DIR}/hackdir/moves
140+
set(_HACKDIR_PATH "${CMAKE_BINARY_DIR}/hackdir")
141+
file(MAKE_DIRECTORY "${_HACKDIR_PATH}")
142+
file(MAKE_DIRECTORY "${_HACKDIR_PATH}/save")
143+
file(TOUCH "${_HACKDIR_PATH}/perm")
144+
foreach(name IN ITEMS record news moves)
145+
set(_src "${CMAKE_CURRENT_SOURCE_DIR}/original/${name}")
146+
set(_dst "${_HACKDIR_PATH}/${name}")
147+
file(REMOVE_RECURSE "${_dst}")
148+
if(EXISTS "${_src}")
149+
file(COPY "${_src}" DESTINATION "${_HACKDIR_PATH}")
150+
else()
151+
file(TOUCH "${_dst}")
152+
endif()
153+
endforeach()
158154

155+
add_custom_target(setup_hackdir ALL
159156
COMMENT "Setting up hackdir (READ_ME steps 2-5)"
160157
VERBATIM
161158
)

0 commit comments

Comments
 (0)