diff options
| author | _ov4 <ov4@ov4.org> | 2026-10-22 11:35:16 +0000 |
|---|---|---|
| committer | _ov4 <ov4@ov4.org> | 2026-10-22 11:35:16 +0000 |
| commit | 2f033fe5c922cc7d1ca1b619dc665cbc21341983 (patch) | |
| tree | c6d5eafaf4eaa7881f60a00427a1fb60e3332d43 /cmake/Release.cmake | |
| parent | 0ee55887474146f7a8b679db65ff12c2e9b61815 (diff) | |
build: package and invoke install.cmd instead of install.ps1
The Windows ZIP now ships install.cmd, rewritten to CRLF by
configure_file so the package is right on any build host. The CMake
install target runs it through "cmd /d /c call", and install.cmd
replaces install.ps1 in the version input paths.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'cmake/Release.cmake')
| -rw-r--r-- | cmake/Release.cmake | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/cmake/Release.cmake b/cmake/Release.cmake index c825f74..c1ab9be 100644 --- a/cmake/Release.cmake +++ b/cmake/Release.cmake @@ -23,7 +23,6 @@ set(cpsc_package_dir "${CPSC_BINARY_DIR}/release/${cpsc_package_name}") if(CPSC_WINDOWS) set(cpsc_archive "${CPSC_BINARY_DIR}/${cpsc_package_name}.zip") set(cpsc_binary_name cpsc.exe) - set(cpsc_installer install.ps1) set(cpsc_manual cpsc.html) set(cpsc_language_extension html) set(cpsc_tar_flags cf) @@ -31,7 +30,6 @@ if(CPSC_WINDOWS) else() set(cpsc_archive "${CPSC_BINARY_DIR}/${cpsc_package_name}.tar.xz") set(cpsc_binary_name cpsc) - set(cpsc_installer install.sh) set(cpsc_manual cpsc.1) set(cpsc_language_extension 7) set(cpsc_tar_flags cJf) @@ -41,8 +39,14 @@ endif() file(REMOVE_RECURSE "${cpsc_package_dir}") file(MAKE_DIRECTORY "${cpsc_package_dir}/doc") configure_file("${CPSC_EXECUTABLE}" "${cpsc_package_dir}/${cpsc_binary_name}" COPYONLY) -file(COPY "${CPSC_SOURCE_DIR}/${cpsc_installer}" "${CPSC_SOURCE_DIR}/LICENSE" - DESTINATION "${cpsc_package_dir}") +file(COPY "${CPSC_SOURCE_DIR}/LICENSE" DESTINATION "${cpsc_package_dir}") +if(CPSC_WINDOWS) + # cmd needs CRLF line endings whatever the packaging host is; install.cmd contains no @NAME@ sequences. + configure_file("${CPSC_SOURCE_DIR}/install.cmd" "${cpsc_package_dir}/install.cmd" + @ONLY NEWLINE_STYLE CRLF) +else() + file(COPY "${CPSC_SOURCE_DIR}/install.sh" DESTINATION "${cpsc_package_dir}") +endif() file(COPY "${CPSC_BINARY_DIR}/doc/${cpsc_manual}" DESTINATION "${cpsc_package_dir}/doc") # Package the current source set, preserving categories and ignoring stale outputs. file(GLOB_RECURSE cpsc_language_sources "${CPSC_SOURCE_DIR}/doc/language/cpsc-*.7.md") |
