From 425decdf7e9284d15aa726e3ae96b9942fb0e3ea Mon Sep 17 00:00:00 2001 From: IronClawTrem Date: Sun, 16 Feb 2020 03:40:06 +0000 Subject: create tremded branch --- src/renderergl2/CMakeLists.txt | 146 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 146 insertions(+) create mode 100644 src/renderergl2/CMakeLists.txt (limited to 'src/renderergl2/CMakeLists.txt') diff --git a/src/renderergl2/CMakeLists.txt b/src/renderergl2/CMakeLists.txt new file mode 100644 index 0000000..b821436 --- /dev/null +++ b/src/renderergl2/CMakeLists.txt @@ -0,0 +1,146 @@ +include("${CMAKE_SOURCE_DIR}/cmake/SDL2.cmake") + +find_package(OpenGL) + +set(PARENT_DIR ${CMAKE_SOURCE_DIR}/src) +include_directories( + ${PARENT_DIR}/jpeg-8c + ${PARENT_DIR}/renderercommon + ${PARENT_DIR}/nettle-3.3 + ${SDL2_INCLUDE_DIRS} + ) + +set(GLSL_SHADERS + glsl/bokeh_fp.glsl + glsl/bokeh_vp.glsl + glsl/calclevels4x_fp.glsl + glsl/calclevels4x_vp.glsl + glsl/depthblur_fp.glsl + glsl/depthblur_vp.glsl + glsl/dlight_fp.glsl + glsl/dlight_vp.glsl + glsl/down4x_fp.glsl + glsl/down4x_vp.glsl + glsl/fogpass_fp.glsl + glsl/fogpass_vp.glsl + glsl/generic_fp.glsl + glsl/generic_vp.glsl + glsl/lightall_fp.glsl + glsl/lightall_vp.glsl + glsl/pshadow_fp.glsl + glsl/pshadow_vp.glsl + glsl/shadowfill_fp.glsl + glsl/shadowfill_vp.glsl + glsl/shadowmask_fp.glsl + glsl/shadowmask_vp.glsl + glsl/ssao_fp.glsl + glsl/ssao_vp.glsl + glsl/texturecolor_fp.glsl + glsl/texturecolor_vp.glsl + glsl/tonemap_fp.glsl + glsl/tonemap_vp.glsl + ) + +# Converts ^^^GSLS shaders^^^ into const char* C-strings. +file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/glsl/) +foreach(shader ${GLSL_SHADERS}) + set(in ${CMAKE_CURRENT_SOURCE_DIR}/${shader}) + + get_filename_component(out ${in} NAME_WE) + set(out ${CMAKE_CURRENT_BINARY_DIR}/glsl/${out}.c) + + get_filename_component(shader ${shader} NAME_WE) + message(STATUS "-- Generating embeded GLSL ${shader}") + + file(READ ${in} contents HEX) + file(WRITE ${out} "const char *fallbackShader_${shader} = \"") + + string(LENGTH "${contents}" contents_length) + math(EXPR contents_length "${contents_length} - 1") + + foreach(iter RANGE 0 ${contents_length} 2) + string(SUBSTRING ${contents} ${iter} 2 line) + file(APPEND "${out}" "\\x${line}") + endforeach() + file(APPEND "${out}" "\";\n") + + list(APPEND renderergl2_SHADERS "${out}") + set_source_files_properties(${out} PROPERTIES GENERATED TRUE) +endforeach(shader) + +set(renderergl2_SRCS + ${renderergl2_SHADERS} + tr_local.h + tr_dsa.h + tr_extramath.h + tr_extratypes.h + tr_fbo.h + tr_postprocess.h + tr_animation.cpp + tr_backend.cpp + tr_bsp.cpp + tr_cmds.cpp + tr_curve.cpp + tr_dsa.cpp + tr_extensions.cpp + tr_extramath.cpp + tr_fbo.cpp + tr_flares.cpp + tr_glsl.cpp + tr_image.cpp + tr_image_dds.cpp + tr_init.cpp + tr_light.cpp + tr_main.cpp + tr_marks.cpp + tr_mesh.cpp + tr_model.cpp + tr_model_iqm.cpp + tr_postprocess.cpp + tr_scene.cpp + tr_shade.cpp + tr_shade_calc.cpp + tr_shader.cpp + tr_shadows.cpp + tr_sky.cpp + tr_subs.cpp + tr_surface.cpp + tr_vbo.cpp + tr_world.cpp + ${CMAKE_SOURCE_DIR}/src/common/puff.cpp + ${CMAKE_SOURCE_DIR}/src/common/q_shared.c + ${CMAKE_SOURCE_DIR}/src/common/q_math.c + ) + +if(NOT USE_RENDERER_DLOPEN) + + add_library( + renderergl2 STATIC + ${renderergl2_SRCS}) + + target_link_libraries( + renderergl2 renderercommon + ${SDL2_LIBRARIES}) + +else(NOT USE_RENDERER_DLOPEN) + + add_library( + renderergl2 SHARED + ${renderergl2_SRCS} + ) + + target_link_libraries( + renderergl2 + renderercommon + ${FRAMEWORKS} + ${OPENGL_LIBRARIES} + ${SDL2_LIBRARIES} + ) + add_custom_command( + TARGET renderergl2 + POST_BUILD COMMAND ${CMAKE_COMMAND} + ARGS -E copy ${CMAKE_CURRENT_BINARY_DIR}/librenderergl2${CMAKE_SHARED_LIBRARY_SUFFIX} ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/renderer_opengl2${CMAKE_SHARED_LIBRARY_SUFFIX} + ) + +endif(NOT USE_RENDERER_DLOPEN) + -- cgit