2024-11-30 00:36:33 +01:00
|
|
|
cmake_minimum_required(VERSION 3.12)
|
|
|
|
|
2023-06-17 01:44:38 +02:00
|
|
|
project(omohrenderer)
|
|
|
|
|
2024-09-12 23:46:13 +02:00
|
|
|
file(GLOB_RECURSE SOURCES_RENDERER "./*.c" "./*.cpp" "../renderercommon/tr_*.c")
|
2024-12-01 22:17:08 +01:00
|
|
|
list(REMOVE_ITEM SOURCES_RENDERER "./tr_subs.c")
|
2023-06-17 01:44:38 +02:00
|
|
|
|
2024-12-06 00:09:07 +01:00
|
|
|
set(SOURCES_RENDERER ${SOURCES_RENDERER}
|
|
|
|
"../tiki/tiki_mesh.cpp"
|
|
|
|
)
|
|
|
|
|
|
|
|
if (${USE_RENDERER_DLOPEN})
|
|
|
|
add_library(omohrenderer SHARED ${SOURCES_RENDERER})
|
|
|
|
else()
|
|
|
|
add_library(omohrenderer STATIC ${SOURCES_RENDERER})
|
|
|
|
endif()
|
2024-10-07 20:51:23 +02:00
|
|
|
target_include_directories(omohrenderer PUBLIC "../sdl" "../renderercommon")
|
2023-06-17 01:44:38 +02:00
|
|
|
target_compile_features(omohrenderer PUBLIC cxx_nullptr)
|
|
|
|
target_compile_features(omohrenderer PUBLIC c_variadic_macros)
|
2024-09-12 23:33:21 +02:00
|
|
|
target_compile_definitions(omohrenderer PRIVATE USE_INTERNAL_JPEG=1)
|
2024-12-06 00:09:07 +01:00
|
|
|
target_link_libraries(omohrenderer PRIVATE qcommon_shared)
|
2024-12-01 22:17:08 +01:00
|
|
|
target_link_libraries(omohrenderer PRIVATE omohsdl_gl)
|
|
|
|
|
|
|
|
get_target_property(target_type omohrenderer TYPE)
|
|
|
|
if (target_type STREQUAL "SHARED_LIBRARY")
|
|
|
|
target_sources(omohrenderer PRIVATE "./tr_subs.c")
|
2024-12-06 00:09:07 +01:00
|
|
|
target_compile_definitions(omohrenderer PUBLIC USE_RENDERER_DLOPEN=1)
|
2024-12-01 22:17:08 +01:00
|
|
|
endif ()
|
2024-10-07 20:51:23 +02:00
|
|
|
|
|
|
|
if(USE_INTERNAL_JPEG)
|
|
|
|
file(GLOB_RECURSE SOURCES_JPEG_8 "../jpeg-8c/*.c")
|
|
|
|
add_library(jpeg8 STATIC ${SOURCES_JPEG_8})
|
|
|
|
target_include_directories(jpeg8 PRIVATE "../jpeg-8c")
|
|
|
|
target_include_directories(omohrenderer PUBLIC "../jpeg-8c")
|
|
|
|
target_link_libraries(omohrenderer PRIVATE jpeg8)
|
|
|
|
else()
|
|
|
|
target_include_directories(omohrenderer PUBLIC ${JPEG_INCLUDE_DIRS})
|
|
|
|
target_link_libraries(omohrenderer PRIVATE ${JPEG_LIBRARIES})
|
|
|
|
endif()
|
2024-12-06 00:09:07 +01:00
|
|
|
|
|
|
|
set_target_properties(omohrenderer PROPERTIES PREFIX "")
|
|
|
|
set_target_properties(omohrenderer PROPERTIES OUTPUT_NAME "renderer_opengl1${TARGET_BIN_SUFFIX}")
|
|
|
|
|
|
|
|
|
|
|
|
if (target_type STREQUAL "SHARED_LIBRARY")
|
|
|
|
INSTALL(TARGETS omohrenderer DESTINATION ${CMAKE_INSTALL_LIBDIR}/${LIB_INSTALL_SUBDIR})
|
|
|
|
|
|
|
|
if(MSVC)
|
|
|
|
INSTALL(FILES $<TARGET_PDB_FILE:omohrenderer> DESTINATION ${CMAKE_INSTALL_LIBDIR}/${LIB_INSTALL_SUBDIR} OPTIONAL)
|
|
|
|
endif()
|
|
|
|
endif ()
|