-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathCMakeLists.txt
More file actions
56 lines (47 loc) · 2.11 KB
/
CMakeLists.txt
File metadata and controls
56 lines (47 loc) · 2.11 KB
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
50
51
52
53
54
55
56
cmake_minimum_required(VERSION 3.23)
# set(CMAKE_OSX_ARCHITECTURES "x86_64;arm64" CACHE STRING "" FORCE)
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.9" CACHE STRING "" FORCE)
set(CMAKE_POSITION_INDEPENDENT_CODE ON CACHE BOOL "" FORCE)
set(BUILD_SHARED_LIBS OFF CACHE BOOL "" FORCE)
set(SDL_CAMERA OFF CACHE BOOL "" FORCE)
set(SDL_JOYSTICK OFF CACHE BOOL "" FORCE)
set(SDL_HAPTIC OFF CACHE BOOL "" FORCE)
set(SDL_HIDAPI OFF CACHE BOOL "" FORCE)
set(SDL_POWER OFF CACHE BOOL "" FORCE)
set(SDL_SENSOR OFF CACHE BOOL "" FORCE)
set(SDL_DIALOG OFF CACHE BOOL "" FORCE)
set(SDL_TRAY OFF CACHE BOOL "" FORCE)
set(SDL_SHARED OFF CACHE BOOL "" FORCE)
set(SDL_STATIC ON CACHE BOOL "" FORCE)
set(SDL_TESTS OFF CACHE BOOL "" FORCE)
set(SDL_X11_XDBE OFF CACHE BOOL "" FORCE)
# set(SDL_X11_XINPUT OFF CACHE BOOL "" FORCE)
set(SDL_X11_XCURSOR OFF CACHE BOOL "" FORCE)
set(SDL_X11_XFIXES OFF CACHE BOOL "" FORCE)
set(SDL_X11_XSCRNSAVER OFF CACHE BOOL "" FORCE)
set(SDL_X11_XSHAPE OFF CACHE BOOL "" FORCE)
set(SDL_X11_XSYNC OFF CACHE BOOL "" FORCE)
set(SDL_X11_XTEST OFF CACHE BOOL "" FORCE)
# set(SDLMIXER_FLAC_DRFLAC ON CACHE BOOL "" FORCE)
set(SDLMIXER_VENDORED ON CACHE BOOL "" FORCE)
set(SDLMIXER_DEPS_SHARED OFF CACHE BOOL "" FORCE)
set(SDLMIXER_MP3_MPG123 OFF CACHE BOOL "" FORCE)
set(SDLMIXER_FLAC_LIBFLAC OFF CACHE BOOL "" FORCE)
project(JoBase)
find_package(Python3 COMPONENTS Development.Module REQUIRED)
add_subdirectory(lib/sdl EXCLUDE_FROM_ALL)
add_subdirectory(lib/mix EXCLUDE_FROM_ALL)
file(GLOB SOURCES src/*.c lib/libtess2/Source/*.c)
add_library(JoBase MODULE ${SOURCES})
target_include_directories(JoBase PRIVATE include lib/stb lib/libtess2/Include)
target_link_libraries(JoBase PRIVATE SDL3::SDL3 SDL3_mixer::SDL3_mixer Python3::Module)
set_target_properties(JoBase PROPERTIES
PREFIX ""
SUFFIX "${JOBASE_EXT}"
OUTPUT_NAME "__init__"
LIBRARY_OUTPUT_DIRECTORY "${JOBASE_DIR}"
LIBRARY_OUTPUT_DIRECTORY_RELEASE "${JOBASE_DIR}"
RUNTIME_OUTPUT_DIRECTORY "${JOBASE_DIR}"
RUNTIME_OUTPUT_DIRECTORY_RELEASE "${JOBASE_DIR}"
RUNTIME_OUTPUT_DIRECTORY_RELWITHDEBINFO "${JOBASE_DIR}"
RUNTIME_OUTPUT_DIRECTORY_MINSIZEREL "${JOBASE_DIR}")