2022-11-19 03:03:02 +11:00
|
|
|
cmake_minimum_required(VERSION 3.3 FATAL_ERROR)
|
2022-10-06 18:57:58 +11:00
|
|
|
project(padlab C)
|
|
|
|
set(TARGET padlab)
|
2022-11-16 04:46:33 +11:00
|
|
|
|
2023-06-28 19:52:14 +10:00
|
|
|
option(BUILD_OPENGL_LEGACY "Build legacy OpenGL 1.1 compatibility profile executable" ON)
|
|
|
|
option(BUILD_METAL "Build executable using Metal for drawing (WIP)" ${APPLE})
|
|
|
|
option(BUILD_OPENGL "Build OpenGL 3.3 core profile executable (WIP)" OFF)
|
2022-11-18 05:44:30 +11:00
|
|
|
|
2022-11-19 03:03:02 +11:00
|
|
|
list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
|
2022-11-16 09:20:44 +11:00
|
|
|
set(CMAKE_C_STANDARD 99)
|
2023-01-18 23:45:17 +11:00
|
|
|
set(GNU_COMPILERS GNU Clang AppleClang)
|
|
|
|
if (CMAKE_C_COMPILER_ID IN_LIST GNU_COMPILERS)
|
|
|
|
set(GNU 1)
|
2022-11-22 08:01:41 +11:00
|
|
|
elseif (MSVC)
|
|
|
|
string(REPLACE "/W3" "/W4" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
|
|
|
|
endif()
|
2022-11-16 09:20:44 +11:00
|
|
|
|
2022-11-16 04:46:33 +11:00
|
|
|
find_package(SDL2 REQUIRED)
|
2023-06-28 19:52:14 +10:00
|
|
|
if (BUILD_OPENGL OR BUILD_OPENGL_LEGACY)
|
2023-01-18 23:45:17 +11:00
|
|
|
if (NOT DEFINED OpenGL_GL_PREFERENCE)
|
|
|
|
set(OpenGL_GL_PREFERENCE "GLVND")
|
|
|
|
endif()
|
2022-11-18 05:44:30 +11:00
|
|
|
find_package(OpenGL REQUIRED)
|
|
|
|
endif()
|
2022-11-16 04:46:33 +11:00
|
|
|
|
2022-11-19 03:03:02 +11:00
|
|
|
add_subdirectory(src)
|