Add: introduce CMake for project management

CMake works on all our supported platforms, like MSVC, Mingw, GCC,
Clang, and many more. It allows for a single way of doing things,
so no longer we need shell scripts and vbs scripts to work on all
our supported platforms.

Additionally, CMake allows to generate project files for like MSVC,
KDevelop, etc.

This heavily reduces the lines of code we need to support multiple
platforms from a project perspective.

Addtiionally, this heavily improves our detection of libraries, etc.
This commit is contained in:
Patric Stout
2019-04-07 11:57:55 +02:00
committed by glx22
parent 85315e2e31
commit 56d54cf60e
69 changed files with 3116 additions and 1144 deletions

35
src/video/CMakeLists.txt Normal file
View File

@@ -0,0 +1,35 @@
add_subdirectory(cocoa)
if (NOT OPTION_DEDICATED)
add_files(
allegro_v.cpp
allegro_v.h
CONDITION Allegro_FOUND
)
add_files(
sdl_v.cpp
sdl_v.h
CONDITION SDL_FOUND
)
add_files(
sdl2_v.cpp
sdl2_v.h
CONDITION SDL2_FOUND
)
add_files(
win32_v.cpp
win32_v.h
CONDITION WIN32
)
endif (NOT OPTION_DEDICATED)
add_files(
dedicated_v.cpp
dedicated_v.h
null_v.cpp
null_v.h
video_driver.hpp
)

View File

@@ -0,0 +1,8 @@
add_files(
cocoa_keys.h
cocoa_v.h
cocoa_v.mm
event.mm
wnd_quartz.mm
CONDITION APPLE
)