summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
blob: 33fe7a562f2381c0a4bb94022f29dc762b762ed2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
cmake_minimum_required( VERSION 3.15 )
project( ReiLua )

# find_package( raylib 3.7 REQUIRED ) # Requires at least version 3.7

set( CMAKE_C_STANDARD 11 ) # Requires C11 standard

if( UNIX )
	set( CMAKE_C_COMPILER "gcc" )
elseif( APPLE )
	set( CMAKE_C_COMPILER "clang" )
endif()

set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O0 -ggdb -std=c11 -Wall -pedantic -fno-common" )
# set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -O3 -std=c11 -Wall -pedantic -fno-common" )

option( STATIC ON )
option( DRM OFF )

include_directories( include )
file( GLOB SOURCES "src/*.c" )
add_executable( ${PROJECT_NAME} ${SOURCES} )

if( STATIC )
	message( Static )
	target_link_libraries( ${PROJECT_NAME} ${CMAKE_SOURCE_DIR}/lib/libraylib.a )
	target_link_libraries( ${PROJECT_NAME} ${CMAKE_SOURCE_DIR}/lib/liblua.a )
else()
	find_package( raylib 4.0 REQUIRED ) # Requires at least version 4.0
	message( Shared )
	target_link_libraries( ${PROJECT_NAME} raylib )
	target_link_libraries( ${PROJECT_NAME} lua )
endif()

if( UNIX )
	if( DRM ) # Raspberry pi
		# target_link_libraries( ${PROJECT_NAME} GLESv2 EGL drm gbm rt bcm_host m dl pthread )
		target_link_libraries( ${PROJECT_NAME} GLESv2 EGL drm gbm rt m dl pthread )
	else()
		target_link_libraries( ${PROJECT_NAME} m dl pthread )
	endif()
endif()

# Checks if OSX and links appropriate frameworks (Only required on MacOS)
if( APPLE )
    target_link_libraries( ${PROJECT_NAME} "-framework IOKit" )
    target_link_libraries( ${PROJECT_NAME} "-framework Cocoa" )
    target_link_libraries( ${PROJECT_NAME} "-framework OpenGL" )
endif()