cmake_minimum_required(VERSION 3.19) set(CMAKE_POLICY_DEFAULT_CMP0110 NEW) # requires CMake 3.19 if(BUILDCORE_TARGET STREQUAL "gba") project(jasper ASM CXX) elseif(APPLE) project(jasper C CXX OBJC OBJCXX) else() project(jasper C CXX) endif() include(deps/nostalgia/deps/buildcore/base.cmake) set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS OFF) if(BUILDCORE_TARGET STREQUAL "gba") include(deps/nostalgia/deps/gbabuildcore/base.cmake) else() set(CMAKE_POSITION_INDEPENDENT_CODE ON) endif() set(NOSTALGIA_BUILD_PLAYER OFF) set(NOSTALGIA_BUILD_STUDIO_APP OFF) set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin) if(APPLE) set(CMAKE_MACOSX_RPATH OFF) else() if(UNIX) set(BUILD_SHARED_LIBS ON) endif() set(CMAKE_INSTALL_RPATH "$ORIGIN/../lib") set(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE) endif() include_directories( deps/nostalgia/deps/ox/src ) add_subdirectory(deps/nostalgia) add_subdirectory(src)