Skip to content

Commit 1e91629

Browse files
chore: update CMake minimum version to 3.28 and refactor executable target definition
1 parent b6972c0 commit 1e91629

1 file changed

Lines changed: 14 additions & 10 deletions

File tree

CMakeLists.txt

Lines changed: 14 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required(VERSION 3.24)
1+
cmake_minimum_required(VERSION 3.28)
22
project(vectorjs VERSION 0.1.0 LANGUAGES CXX)
33

44
# Require C++23 standard
@@ -52,23 +52,27 @@ FetchContent_MakeAvailable(cli11 raylib quickjs-ng qjswrapper)
5252
# 2. Executable Target
5353
# -----------------------------------------------------------------------------
5454

55-
add_executable(vectorjs ${SRC_FILES})
55+
# Define the target executable
56+
add_executable(vectorjs)
57+
58+
# Add source files to the target
59+
target_sources(vectorjs PRIVATE
60+
"src/main.cpp"
61+
"src/engine.cpp"
62+
"src/api/api_application.cpp"
63+
"src/api/api_classes.cpp"
64+
"src/api/api_enums.cpp"
65+
)
5666

5767
# Hide console on Windows, keep standard main() entry point
5868
if(WIN32)
5969
target_link_options(vectorjs PRIVATE "/SUBSYSTEM:WINDOWS" "/ENTRY:mainCRTStartup")
6070
endif()
6171

62-
target_sources(vectorjs PRIVATE
63-
"src/main.cpp"
64-
"src/engine.cpp"
65-
"src/api/api_application.cpp"
66-
"src/api/api_classes.cpp"
67-
"src/api/api_enums.cpp"
68-
)
69-
72+
# Include directories
7073
target_include_directories(vectorjs PRIVATE src)
7174

75+
# Link dependencies
7276
target_link_libraries(vectorjs PRIVATE
7377
CLI11::CLI11
7478
raylib

0 commit comments

Comments
 (0)