45 lines
923 B
CMake
45 lines
923 B
CMake
cmake_minimum_required(VERSION 3.20)
|
|
|
|
project(ChangeBootloaderCpp LANGUAGES CXX)
|
|
|
|
enable_language(RC)
|
|
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
|
set(CMAKE_CXX_EXTENSIONS OFF)
|
|
|
|
add_executable(ChangeBootLoader WIN32
|
|
src/main.cpp
|
|
src/boot.cpp
|
|
src/util.cpp
|
|
src/app.rc
|
|
)
|
|
|
|
set_property(TARGET ChangeBootLoader PROPERTY MSVC_RUNTIME_LIBRARY
|
|
"MultiThreaded$<$<CONFIG:Debug>:Debug>")
|
|
|
|
target_compile_definitions(ChangeBootLoader PRIVATE
|
|
UNICODE
|
|
_UNICODE
|
|
WIN32_LEAN_AND_MEAN
|
|
NOMINMAX
|
|
)
|
|
|
|
target_compile_options(ChangeBootLoader PRIVATE
|
|
/utf-8
|
|
/W4
|
|
/permissive-
|
|
)
|
|
|
|
target_link_libraries(ChangeBootLoader PRIVATE
|
|
user32
|
|
gdi32
|
|
)
|
|
|
|
# The manifest is embedded through app.rc; do not let the linker add a second one.
|
|
target_link_options(ChangeBootLoader PRIVATE /MANIFEST:NO)
|
|
|
|
set_target_properties(ChangeBootLoader PROPERTIES
|
|
OUTPUT_NAME "Change_BootLoader"
|
|
)
|