cmake_minimum_required(VERSION 3.5) project(psp-chip8) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3") set(CMAKE_CXX_STANDARD 20) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -Wpedantic") set(SOURCES callback.cpp main.cpp ) add_executable(${PROJECT_NAME} ${SOURCES}) target_compile_definitions(${PROJECT_NAME} PRIVATE __GLIBC_USE=0) target_link_libraries(${PROJECT_NAME} PRIVATE pspgum pspgu pspge pspaudio pspaudiolib pspvram pspdisplay pspdebug pspctrl psppower m ) # Create an EBOOT.PBP file create_pbp_file( TARGET ${PROJECT_NAME} ICON_PATH ${CMAKE_CURRENT_SOURCE_DIR}/ICON0.PNG BACKGROUND_PATH NULL PREVIEW_PATH NULL TITLE "CHIP-8 Emulator v1.0" VERSION 01.00 ) add_custom_target( run COMMAND PPSSPPSDL ./EBOOT.PBP DEPENDS EBOOT.PBP ) add_custom_target( dist COMMAND rm -rf dist && mkdir -p dist/roms && cp EBOOT.PBP PARAM.SFO ../config.toml dist/ && wget https://archive.org/download/Chip-8RomsThatAreInThePublicDomain/c8games.zip && unzip c8games.zip -d dist/roms && rm c8games.zip && 7z a dist.zip dist DEPENDS EBOOT.PBP )