diff --git a/CMakeLists.txt b/CMakeLists.txt index ed70ac5c..3c4e3205 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,11 +1,11 @@ -# CMake Specifications -------------------------------------------------------- +# CMake Specifications cmake_minimum_required(VERSION 3.10) # Yet Another Zelda3 Editor # by scawful project(yaze VERSION 0.01) -# C++ Standard Specifications ------------------------------------------------- +# C++ Standard Specifications set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_EXTENSIONS ON) @@ -18,46 +18,22 @@ set(CMAKE_MODULE_LINKER_FLAGS \"-Wl,--no-undefined -Wl,--no-undefined\") set(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH}) set(BUILD_SHARED_LIBS ON) -# Abseil Standard Specifications ---------------------------------------------- +# Abseil Standard Specifications include(cmake/absl.cmake) add_subdirectory(src/lib/abseil-cpp) include(cmake/openssl.cmake) -set(Protobuf_PROTOC_EXECUTABLE "/Users/scawful/code/protobuf/bin/protoc") -set(Protobuf_INCLUDE_DIRS "/Users/scawful/code/protobuf/include/") -set(PROTOBUF_INCLUDE_PATH ${CMAKE_CURRENT_BINARY_DIR} - CACHE INTERNAL "Path to generated protobuf files.") -include_directories(${PROTOBUF_INCLUDE_PATH}) -# Video Libraries ------------------------------------------------------------- +# Video Libraries find_package(PNG REQUIRED) find_package(OpenGL REQUIRED) +include(cmake/sdl2.cmake) -# SDL2 ------------------------------------------------------------------------ -if (UNIX) - add_subdirectory(src/lib/SDL) -else() - find_package(SDL2) -endif() -set(SDL2MIXER_OPUS OFF) -set(SDL2MIXER_FLAC OFF) -set(SDL2MIXER_MOD OFF) -set(SDL2MIXER_MIDI_FLUIDSYNTH OFF) -find_library(SDL_MIXER_LIBRARY - NAMES SDL_mixer - HINTS - ENV SDLMIXERDIR - ENV SDLDIR - PATH_SUFFIXES lib ${VC_LIB_PATH_SUFFIX} - ) -add_subdirectory(src/lib/SDL_mixer) -find_package(SDL2_image) - -# Asar ------------------------------------------------------------------------ +# Asar # add_subdirectory(src/lib/asar/src) # include(cmake/asar.cmake) -# snes-spc -------------------------------------------------------------------- +# snes-spc ADD_DEFINITIONS(-DSNES_SPC_EXPORTS) set(SNES_SPC_SOURCES "../src/lib/snes_spc/snes_spc/spc.cpp" @@ -73,7 +49,7 @@ set(SNES_SPC_SOURCES include_directories(src/lib/snes_spc/snes_spc) ADD_LIBRARY(snes_spc STATIC ${SNES_SPC_SOURCES} src/app/zelda3/music/spc700.def) -# ImGui ----------------------------------------------------------------------- +# ImGui include(cmake/imgui.cmake) # Project Files diff --git a/cmake/sdl2.cmake b/cmake/sdl2.cmake new file mode 100644 index 00000000..3b2299e2 --- /dev/null +++ b/cmake/sdl2.cmake @@ -0,0 +1,19 @@ +# SDL2, SDL2_image and SDL2_mixer +if (UNIX) + add_subdirectory(src/lib/SDL) +else() + find_package(SDL2) +endif() +set(SDL2MIXER_OPUS OFF) +set(SDL2MIXER_FLAC OFF) +set(SDL2MIXER_MOD OFF) +set(SDL2MIXER_MIDI_FLUIDSYNTH OFF) +find_library(SDL_MIXER_LIBRARY + NAMES SDL_mixer + HINTS + ENV SDLMIXERDIR + ENV SDLDIR + PATH_SUFFIXES lib ${VC_LIB_PATH_SUFFIX} + ) +add_subdirectory(src/lib/SDL_mixer) +find_package(SDL2_image) \ No newline at end of file diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index e2701c43..8062641e 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -72,7 +72,7 @@ if(MACOS) ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" LIBRARY_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/lib" RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/bin" - # MACOSX_BUNDLE_INFO_PLIST ${CMAKE_SOURCE_DIR}/cmake/yaze.plist.in + MACOSX_BUNDLE_INFO_PLIST ${CMAKE_SOURCE_DIR}/cmake/yaze.plist.in ) elseif(UNIX) set_target_properties(yaze