From 493060955b44d81508abf081037873632fccb6c0 Mon Sep 17 00:00:00 2001 From: Gary Talent Date: Fri, 9 Mar 2018 21:45:46 -0600 Subject: [PATCH] Cleanup build files --- deps/ox/CMakeLists.txt | 30 ++++++++++++++++++++++++------ deps/ox/build/Makefile | 16 +++++----------- deps/ox/cmake/Modules/GBA.cmake | 19 +------------------ deps/ox/scripts/setup_build | 1 + 4 files changed, 31 insertions(+), 35 deletions(-) diff --git a/deps/ox/CMakeLists.txt b/deps/ox/CMakeLists.txt index 188227d7..de56f667 100644 --- a/deps/ox/CMakeLists.txt +++ b/deps/ox/CMakeLists.txt @@ -15,29 +15,47 @@ if(OX_BUILD_EXEC STREQUAL "OFF" OR OX_USE_STDLIB STREQUAL "OFF") set(OX_RUN_TESTS "OFF") endif() +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(CMAKE_CXX_EXTENSIONS OFF) + if(OX_USE_STDLIB STREQUAL "ON") add_definitions(-DOX_USE_STDLIB) endif() if(NOT MSVC) add_definitions( - -std=c++11 - -Wall + -std=c++17 -nostdlib -fno-exceptions -fno-rtti + -Wall + -Wextra -Wsign-compare -Wunused-variable - #--analyze - #-Os # GCC size optimization flag ) - if (CMAKE_BUILD_TYPE STREQUAL "Release") add_definitions( -Werror + -O3 ) endif() -endif(NOT MSVC) + if(CMAKE_CXX_COMPILER_ID STREQUAL "Clang") + add_definitions( + -fdiagnostics-color # forces colored output when using ninja + ) + endif() +endif() + +if (CMAKE_BUILD_TYPE STREQUAL "Release") + add_definitions( + -DNDEBUG + ) +else() + add_definitions( + -DDEBUG + ) +endif() enable_testing() diff --git a/deps/ox/build/Makefile b/deps/ox/build/Makefile index a1bd3c20..e4a65ed2 100644 --- a/deps/ox/build/Makefile +++ b/deps/ox/build/Makefile @@ -1,32 +1,26 @@ -ifneq ($(shell which gmake),) - MAKE=gmake -j -else - MAKE=make -endif - all: gba_build native_build native_debug_build windows_release windows_debug gba_build: @if [ -d gba-release ]; then \ - ${MAKE} -C gba-release ${ARGS}; \ + cmake --build gba-release --target ${ARGS}; \ fi native_build: @if [ -d ${HOST_ENV}-release ]; then \ - ${MAKE} -C ${HOST_ENV}-release ${ARGS}; \ + cmake --build ${HOST_ENV}-release --target ${ARGS}; \ fi native_debug_build: @if [ -d ${HOST_ENV}-debug ]; then \ - ${MAKE} -C ${HOST_ENV}-debug ${ARGS}; \ + cmake --build ${HOST_ENV}-debug --target ${ARGS}; \ fi windows_release: @if [ -d windows-release ]; then \ - ${MAKE} -C windows-release ${ARGS}; \ + cmake --build windows-release --target ${ARGS}; \ fi windows_debug: @if [ -d windows-debug ]; then \ - ${MAKE} -C windows-debug ${ARGS}; \ + cmake --build windows-debug --target ${ARGS}; \ fi diff --git a/deps/ox/cmake/Modules/GBA.cmake b/deps/ox/cmake/Modules/GBA.cmake index 6440e228..97ea3420 100644 --- a/deps/ox/cmake/Modules/GBA.cmake +++ b/deps/ox/cmake/Modules/GBA.cmake @@ -1,11 +1,6 @@ set(CMAKE_SYSTEM_NAME "Generic") set(DEVKITARM $ENV{DEVKITARM}) -set(DEVKITPRO $ENV{DEVKITPRO}) - -if(NOT DEVKITPRO) - message(FATAL_ERROR "DEVKITPRO environment variable not set") -endif() if(NOT DEVKITARM) message(FATAL_ERROR "DEVKITARM environment variable not set") @@ -13,7 +8,7 @@ endif() set(CMAKE_C_COMPILER ${DEVKITARM}/bin/arm-none-eabi-gcc) set(CMAKE_CXX_COMPILER ${DEVKITARM}/bin/arm-none-eabi-g++) -set(CMAKE_FIND_ROOT_PATH ${DEVKITARM} ${DEVKITPRO}/libgba) +set(CMAKE_FIND_ROOT_PATH ${DEVKITARM}) set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) @@ -26,16 +21,4 @@ add_definitions ( -DARM7 ) -find_library(GBA_LIBRARY - NAMES - gba - PATHS - /lib -) -find_path(GBA_INCLUDE_DIR gba.h - PATHS - /include -) - include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(GBA DEFAULT_MSG GBA_LIBRARY) diff --git a/deps/ox/scripts/setup_build b/deps/ox/scripts/setup_build index f416aa15..0b7f47d8 100755 --- a/deps/ox/scripts/setup_build +++ b/deps/ox/scripts/setup_build @@ -24,6 +24,7 @@ fi mkdir -p $buildDir pushd $buildDir cmake -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \ + -GNinja \ $buildTypeArgs \ $toolchain \ $project