minecraft-pi-reborn/dependencies/imgui/glad/CMakeLists.txt
2024-11-24 21:31:26 -05:00

49 lines
1.0 KiB
CMake

project(imgui-glad)
# Directories
set_and_mkdir(GLAD_DIR "${CMAKE_CURRENT_BINARY_DIR}/glad")
set_and_mkdir(GLAD_SRC_DIR "${GLAD_DIR}/src")
set_and_mkdir(GLAD_INCLUDE_DIR "${GLAD_DIR}/include")
# Files
set(GLAD_SOURCES
"${GLAD_INCLUDE_DIR}/KHR/khrplatform.h"
"${GLAD_INCLUDE_DIR}/glad/glad.h"
"${GLAD_SRC_DIR}/glad.c"
)
# Find Python
find_package(Python REQUIRED QUIET)
# Generate
add_custom_command(
OUTPUT ${GLAD_SOURCES}
COMMAND "${Python_EXECUTABLE}"
ARGS "-m" "glad"
"--out" "${GLAD_DIR}"
"--api" "gl=1.1"
"--generator" "c"
"--reproducible"
"--quiet"
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/src"
VERBATIM
)
# Build
add_library(glad SHARED ${GLAD_SOURCES})
target_compile_definitions(glad
PUBLIC GLAD_GLAPI_EXPORT
PRIVATE GLAD_GLAPI_EXPORT_BUILD
)
# Link
target_link_libraries(glad PRIVATE dl)
# Headers
setup_header_dirs(glad
"${GLAD_INCLUDE_DIR}"
"${CMAKE_CURRENT_SOURCE_DIR}/include"
)
# Install
setup_library(glad TRUE FALSE)