diff options
| author | John "Lameguy" Wilbert Villamor <lameguy64@gmail.com> | 2022-10-19 17:57:06 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-10-19 17:57:06 +0800 |
| commit | e08a3d9366f8ca14a76b3dd569dac1fb9f569748 (patch) | |
| tree | 33654513b0b184c27f8035dbc405640fcbeb44ab /CMakeLists.txt | |
| parent | c4a2533d21dfd05cde841ea48c67b05e0e6a853f (diff) | |
| parent | 9b2ffc6078a850b7d354855cca7622090b41f30c (diff) | |
| download | psn00bsdk-e08a3d9366f8ca14a76b3dd569dac1fb9f569748.tar.gz | |
Merge pull request #59 from spicyjpeg/psxmdec
IRQ handler fix, .STR playback example, multiple library builds (v0.21)
Diffstat (limited to 'CMakeLists.txt')
| -rw-r--r-- | CMakeLists.txt | 42 |
1 files changed, 28 insertions, 14 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 4f255a2..3ce6573 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,13 +6,13 @@ # workaround is to use ExternalProject_Add() to launch multiple independent # CMake instances, creating what's known as a "superbuild". -cmake_minimum_required(VERSION 3.20) +cmake_minimum_required(VERSION 3.21) include(ExternalProject) project( PSn00bSDK LANGUAGES NONE - VERSION 0.20 + VERSION 0.21 DESCRIPTION "Open source PlayStation 1 SDK" HOMEPAGE_URL "http://lameguy64.net/?page=psn00bsdk" ) @@ -89,11 +89,17 @@ set( -DPSN00BSDK_BUILD_DATE:STRING=${PSN00BSDK_BUILD_DATE} -DPSN00BSDK_GIT_TAG:STRING=${PSN00BSDK_GIT_TAG} -DPSN00BSDK_GIT_COMMIT:STRING=${PSN00BSDK_GIT_COMMIT} - -DMKPSXISO_NO_LIBFLAC:BOOL=${MKPSXISO_NO_LIBFLAC} +) +set( + _tools_args + ${_common_args} + -DCMAKE_TOOLCHAIN_FILE:FILEPATH=${CMAKE_TOOLCHAIN_FILE} + -DCMAKE_INSTALL_PREFIX:PATH=${PROJECT_BINARY_DIR}/tree -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE} + -DMKPSXISO_NO_LIBFLAC:BOOL=${MKPSXISO_NO_LIBFLAC} ) set( - _sdk_args + _libpsn00b_args ${_common_args} -DCMAKE_TOOLCHAIN_FILE:FILEPATH=${CMAKE_TOOLCHAIN_FILE} -DCMAKE_INSTALL_PREFIX:PATH=${PROJECT_BINARY_DIR}/tree @@ -103,6 +109,7 @@ set( ${_common_args} -DCMAKE_TOOLCHAIN_FILE:FILEPATH=${PROJECT_BINARY_DIR}/tree/${CMAKE_INSTALL_LIBDIR}/libpsn00b/cmake/sdk.cmake -DCMAKE_INSTALL_PREFIX:PATH=${PROJECT_BINARY_DIR}/examples + -DCMAKE_BUILD_TYPE:STRING=${CMAKE_BUILD_TYPE} ) # Ensure PSn00bSDK isn't being built using the toolchain file from PSn00bSDK @@ -120,35 +127,42 @@ endif() ExternalProject_Add( tools + PREFIX subprojects SOURCE_DIR ${PROJECT_SOURCE_DIR}/tools - BINARY_DIR tools-build - CMAKE_CACHE_ARGS ${_sdk_args} + CMAKE_CACHE_ARGS ${_tools_args} INSTALL_DIR tree ) ExternalProject_Add( mkpsxiso + PREFIX subprojects SOURCE_DIR ${PROJECT_SOURCE_DIR}/tools/mkpsxiso - BINARY_DIR mkpsxiso-build - CMAKE_CACHE_ARGS ${_sdk_args} + CMAKE_CACHE_ARGS ${_tools_args} + INSTALL_DIR tree +) +ExternalProject_Add( + libpsn00b-debug + PREFIX subprojects + SOURCE_DIR ${PROJECT_SOURCE_DIR}/libpsn00b + CMAKE_GENERATOR ${LIBPSN00B_GENERATOR} + CMAKE_CACHE_ARGS ${_libpsn00b_args} -DCMAKE_BUILD_TYPE:STRING=Debug INSTALL_DIR tree ) ExternalProject_Add( - libpsn00b + libpsn00b-release + PREFIX subprojects SOURCE_DIR ${PROJECT_SOURCE_DIR}/libpsn00b - BINARY_DIR libpsn00b-build CMAKE_GENERATOR ${LIBPSN00B_GENERATOR} - CMAKE_CACHE_ARGS ${_sdk_args} + CMAKE_CACHE_ARGS ${_libpsn00b_args} -DCMAKE_BUILD_TYPE:STRING=Release INSTALL_DIR tree - #DEPENDS tools ) ExternalProject_Add( examples + PREFIX subprojects SOURCE_DIR ${PROJECT_SOURCE_DIR}/examples - BINARY_DIR examples-build CMAKE_GENERATOR ${LIBPSN00B_GENERATOR} CMAKE_CACHE_ARGS ${_examples_args} INSTALL_DIR examples - DEPENDS libpsn00b tools mkpsxiso + DEPENDS libpsn00b-debug libpsn00b-release tools mkpsxiso EXCLUDE_FROM_ALL ${SKIP_EXAMPLES} ) |
