Paravis USB installer 2.0 (C++ port)

This commit is contained in:
paravis committed 2026-11-07 20:40:47 +03:00
commit ce8b49d0ec
18 files changed
+4119

No files matched your search

+49
View File
@@ -0,0 +1,49 @@
cmake_minimum_required(VERSION 3.20)
project(ParavisInstallerCpp LANGUAGES CXX)
enable_language(RC)
set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS OFF)
add_executable(ParavisInstaller WIN32
src/main.cpp
src/install.cpp
src/disks.cpp
src/util.cpp
src/app.rc
)
# Keep the installer self-contained: no VC++ redistributable required.
set_property(TARGET ParavisInstaller PROPERTY MSVC_RUNTIME_LIBRARY
"MultiThreaded$<$<CONFIG:Debug>:Debug>")
target_compile_definitions(ParavisInstaller PRIVATE
UNICODE
_UNICODE
WIN32_LEAN_AND_MEAN
NOMINMAX
)
target_compile_options(ParavisInstaller PRIVATE
/utf-8
/W4
/permissive-
)
target_link_libraries(ParavisInstaller PRIVATE
comctl32
shell32
user32
gdi32
advapi32
)
# The manifest is embedded through app.rc; do not let the linker add a second one.
target_link_options(ParavisInstaller PRIVATE /MANIFEST:NO)
set_target_properties(ParavisInstaller PROPERTIES
OUTPUT_NAME "ParavisInstaller"
)