diff options
Diffstat (limited to 'CMakeLists.txt')
| -rw-r--r-- | CMakeLists.txt | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 3c98b7c..aedfac7 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,20 +6,36 @@ endif() set(CMAKE_C_COMPILER psx-gcc) set(CMAKE_CXX_COMPILER psx-g++) +set(CMAKE_AR mipsel-unknown-elf-ar) set(CMAKE_SYSTEM_NAME Generic) set(CMAKE_CROSSCOMPILING 1) project(pinboid C) -add_executable(${PROJECT_NAME} - "src/main.c" +add_executable(${PROJECT_NAME} "src/main.c") + +set(modules + "res" + "src/game" + "src/gfx" + "src/system" ) + +set(mode pal) # pal or ntsc + +foreach(c ${modules}) + add_subdirectory(${c}) +endforeach() + +target_link_libraries(${PROJECT_NAME} PUBLIC init game) + target_link_directories(${PROJECT_NAME} PUBLIC $ENV{PSXSDK_PATH}/lib) target_compile_options(${PROJECT_NAME} PUBLIC -DFIXMATH_FAST_SIN -D_PAL_MODE_ - -DPSXSDK_DEBUG -DNO_CDDA -DNO_INTRO -Wall -g3 -Og) + -DPSXSDK_DEBUG -DNO_CDDA -DNO_INTRO -Wall -g3 -Og -ffunction-sections + -fdata-sections) target_link_libraries(${PROJECT_NAME} PUBLIC -lpsx -lfixmath) target_include_directories(${PROJECT_NAME} PRIVATE . $ENV{PSXSDK_PATH}/include) -set(cdroot cdimg) +set(cdroot ${CMAKE_SOURCE_DIR}/cdimg) add_custom_target(exe ALL elf2exe ${PROJECT_NAME} ${cdroot}/${PROJECT_NAME}.exe -mark="A homebrew game created with PSXSDK" DEPENDS ${PROJECT_NAME}) |
