Working on improving the cross compiler
This commit is contained in:
@@ -14,27 +14,35 @@ include(FetchContent)
|
||||
#Vars
|
||||
set(DEPS_DIR "${PROJECT_BINARY_DIR}/_deps")
|
||||
|
||||
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/modules)
|
||||
|
||||
# set(SDL2_DIR ${CMAKE_CURRENT_LIST_DIR}/lib/SDL2)
|
||||
|
||||
################################## Settings ####################################
|
||||
# Platform Settings
|
||||
################################ Setting Degs ##################################
|
||||
set(SETTING_PLATFORM_GLFW 1)
|
||||
set(SETTING_PLATFORM_SDL 2)
|
||||
set(SETTING_PLATFORM_GBM 3)
|
||||
set(SETTING_PLATFORM SETTING_PLATFORM_GLFW)
|
||||
|
||||
set(SETTING_USE_GLAD 1)
|
||||
|
||||
# Game Settings
|
||||
set(SETTING_GAME_POKER 1)
|
||||
set(SETTING_GAME_DAWN 2)
|
||||
set(SETTING_GAME SETTING_GAME_POKER)
|
||||
|
||||
set(SETTING_GAME SETTING_GAME_POKER)
|
||||
set(SETTING_GAME_NAME "DawnGame")
|
||||
|
||||
################################## Targets #####################################
|
||||
set(SETTING_TARGET_WIN32 1)
|
||||
set(SETTING_TARGET_RG351 2)
|
||||
|
||||
set(SETTING_TARGET SETTING_TARGET_RG351)
|
||||
|
||||
# Win32
|
||||
if(${SETTING_TARGET} EQUAL ${SETTING_TARGET_WIN32})
|
||||
set(SETTING_PLATFORM SETTING_PLATFORM_SDL)
|
||||
set(SETTING_PLATFORM_USE_GLAD 1)
|
||||
endif()
|
||||
|
||||
# RG351
|
||||
if(${SETTING_TARGET} EQUAL ${SETTING_TARGET_RG351})
|
||||
set(SETTING_PLATFORM SETTING_PLATFORM_SDL)
|
||||
set(SETTING_PLATFORM_USE_GLAD 1)
|
||||
endif()
|
||||
|
||||
# Configuring
|
||||
configure_file(config.h.in config.h)
|
||||
|
||||
@@ -61,40 +69,36 @@ if(${SETTING_PLATFORM} EQUAL ${SETTING_PLATFORM_SDL})
|
||||
list(APPEND HEADER_FILES ${HDRS})
|
||||
endif()
|
||||
|
||||
# GBM Sources
|
||||
if(${SETTING_PLATFORM} EQUAL ${SETTING_PLATFORM_GBM})
|
||||
file(GLOB_RECURSE SRC ${CMAKE_SOURCE_DIR}/platform/gbm/*.c)
|
||||
file(GLOB_RECURSE HDRS ${CMAKE_SOURCE_DIR}/platform/gbm/*.h)
|
||||
list(APPEND SOURCE_FILES ${SRC})
|
||||
list(APPEND HEADER_FILES ${HDRS})
|
||||
endif()
|
||||
|
||||
file(COPY ${CMAKE_CURRENT_LIST_DIR}/assets DESTINATION ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
##################################### LIBS #####################################
|
||||
include_directories(${CMAKE_SOURCE_DIR}/lib/stb)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/include)
|
||||
include_directories(${CMAKE_CURRENT_BINARY_DIR})
|
||||
include_directories(/usr/lib/aarch64-linux-gnu/)
|
||||
|
||||
# RG351
|
||||
if(${SETTING_TARGET} EQUAL ${SETTING_TARGET_RG351})
|
||||
include_directories(${CMAKE_SOURCE_DIR}/include/rg351)
|
||||
include_directories(${CMAKE_SOURCE_DIR}/include/rg351/SDL2)
|
||||
endif()
|
||||
|
||||
include_directories(${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
################################## EXECUTABLE ##################################
|
||||
add_executable(${PROJECT_NAME} ${HEADER_FILES} ${SOURCE_FILES})
|
||||
|
||||
################################# STATIC LIBS ##################################
|
||||
|
||||
# Math
|
||||
if(NOT WIN32)
|
||||
target_link_libraries(${PROJECT_NAME} m)
|
||||
endif()
|
||||
|
||||
# GLAD
|
||||
if(${SETTING_USE_GLAD} EQUAL 1)
|
||||
if(${SETTING_PLATFORM_USE_GLAD} EQUAL 1)
|
||||
add_subdirectory(${CMAKE_SOURCE_DIR}/lib/glad)
|
||||
target_link_libraries(${PROJECT_NAME} glad)
|
||||
endif()
|
||||
|
||||
# GLFW and GLAD
|
||||
# GLFW
|
||||
if(${SETTING_PLATFORM} EQUAL ${SETTING_PLATFORM_GLFW})
|
||||
if(NOT glfw3_FOUND)
|
||||
FetchContent_Declare(
|
||||
@@ -114,16 +118,6 @@ if(${SETTING_PLATFORM} EQUAL ${SETTING_PLATFORM_SDL})
|
||||
target_link_libraries(${PROJECT_NAME} ${SDL2_LIBRARIES})
|
||||
endif()
|
||||
|
||||
#GBM
|
||||
if(${SETTING_PLATFORM} EQUAL ${SETTING_PLATFORM_GBM})
|
||||
find_package(Libdrm REQUIRED)
|
||||
find_package(gbm REQUIRED)
|
||||
target_link_libraries(${PROJECT_NAME} Libdrm::Libdrm)
|
||||
target_link_libraries(${PROJECT_NAME} gbm::gbm)
|
||||
target_link_libraries(${PROJECT_NAME} EGL GLESv2)
|
||||
endif()
|
||||
|
||||
|
||||
# CGLM
|
||||
if(NOT cglm_FOUND)
|
||||
FetchContent_Declare(
|
||||
@@ -137,4 +131,8 @@ target_link_libraries(${PROJECT_NAME} cglm)
|
||||
|
||||
# OpenGL
|
||||
find_package(OpenGL REQUIRED)
|
||||
target_link_libraries(${PROJECT_NAME} OpenGL::GL)
|
||||
# target_link_libraries(${PROJECT_NAME} OpenGL::GL)
|
||||
# include_directories(${OPENGL_INCLUDE_DIR} ${OPENGL_INCLUDE_DIRS})
|
||||
|
||||
# CMake
|
||||
target_link_libraries(${PROJECT_NAME} ${CMAKE_DL_LIBS})
|
Reference in New Issue
Block a user