Implements c++ reflection check

This commit is contained in:
2025-11-15 23:29:49 -05:00
parent 2adae5a893
commit fdfc8b62ec
8 changed files with 88 additions and 15 deletions

View File

@@ -0,0 +1 @@
include(features/reflection)

View File

@@ -7,15 +7,15 @@
function(SetFGLFlags TARGET)
GET_PROPERTY(FGL_COMPILE_FLAGS GLOBAL PROPERTY FGL_COMPILE_FLAGS)
GET_PROPERTY(FGL_LINKS_FLAGS GLOBAL PROPERTY FGL_LINK_FLAGS)
target_compile_options(${TARGET} PUBLIC ${FGL_COMPILE_FLAGS})
target_compile_options(${TARGET} PRIVATE ${FGL_COMPILE_FLAGS})
message("Set target ${TARGET} to use flags\n${FGL_COMPILE_FLAGS}")
target_link_options(${TARGET} PUBLIC ${FGL_LINK_FLAGS})
target_link_options(${TARGET} PRIVATE ${FGL_LINK_FLAGS})
endfunction()
function(SetDependencyFlags TARGET)
GET_PROPERTY(FGL_CHILD_FLAGS GLOBAL PROPERTY FGL_CHILD_FLAGS)
GET_PROPERTY(FGL_LINKS_FLAGS GLOBAL PROPERTY FGL_LINK_FLAGS)
target_compile_options(${TARGET} PUBLIC ${FGL_CHILD_FLAGS})
target_compile_options(${TARGET} PRIVATE ${FGL_CHILD_FLAGS})
message("Set dependency ${TARGET} to use flags\n${FGL_CHILD_FLAGS}")
target_link_options(${TARGET} PUBLIC ${FGL_LINK_FLAGS})
target_link_options(${TARGET} PRIVATE ${FGL_LINK_FLAGS})
endfunction()

View File

@@ -136,7 +136,10 @@
list(APPEND FGL_CONFIG "-ftree-vectorize")
list(APPEND FGL_CONFIG "-fmax-errors=2")
list(APPEND FGL_CONFIG "-std=c++23")
if (HAS_CPP_REFLECTION)
list(APPEND FGL_CONFIG "-freflection")
endif ()
list(APPEND FGL_CONFIG "-fdata-sections")
list(APPEND FGL_CONFIG "-ffunction-sections")
@@ -183,8 +186,10 @@
set(FGL_LINK_FLAGS "-Wl,--gcc-sections;-Wl,--print-gc-sections" PARENT_SCOPE)
SET_PROPERTY(GLOBAL PROPERTY FGL_FLAGS ${FGL_FLAGS})
SET_PROPERTY(GLOBAL PROPERTY FGL_CHILD_FLAGS ${FGL_CHILD_FLAGS})
set_property(GLOBAL PROPERTY FGL_COMPILE_FLAGS ${FGL_FLAGS})
set_property(GLOBAL PROPERTY FGL_LINK_FLAGS ${FGL_LINK_FLAGS})
set_property(GLOBAL PROPERTY FGL_CHILD_FLAGS ${FGL_CHILD_FLAGS})
message("-- FGL_FLAGS: ${FGL_FLAGS}")
message("-- FGL_CHILD_FLAGS: ${FGL_CHILD_FLAGS}")