[c-host] restructure project to use cmake

This commit is contained in:
Geoffrey McRae
2019-04-09 16:28:11 +10:00
parent ccd0fd8902
commit a82b1a2e2f
25 changed files with 237 additions and 99 deletions

View File

@@ -0,0 +1,15 @@
list(REMOVE_AT CAPTURE 0)
list(REMOVE_AT CAPTURE_LINK 0)
list(LENGTH CAPTURE CAPTURE_COUNT)
file(APPEND ${CAPTURE_H} "#define LG_CAPTURE_COUNT ${CAPTURE_COUNT}\n")
foreach(renderer ${CAPTURE})
file(APPEND ${CAPTURE_C} "extern CaptureInterface Capture_${renderer};\n")
endforeach()
file(APPEND ${CAPTURE_C} "\nconst CaptureInterface * CaptureInterfaces[] =\n{\n")
foreach(renderer ${CAPTURE})
file(APPEND ${CAPTURE_C} " &Capture_${renderer},\n")
endforeach()
file(APPEND ${CAPTURE_C} " NULL\n};")

View File

@@ -0,0 +1,16 @@
set(CAPTURE_H "${CMAKE_BINARY_DIR}/include/dynamic/capture.h")
set(CAPTURE_C "${CMAKE_BINARY_DIR}/src/capture.c")
file(WRITE ${CAPTURE_H} "#include \"interface/capture.h\"\n\n")
file(APPEND ${CAPTURE_H} "extern CaptureInterface * CaptureInterfaces[];\n\n")
file(WRITE ${CAPTURE_C} "#include \"interface/capture.h\"\n\n")
file(APPEND ${CAPTURE_C} "#include <stddef.h>\n\n")
set(CAPTURE "_")
set(CAPTURE_LINK "_")
function(add_capture name)
set(CAPTURE "${CAPTURE};${name}" PARENT_SCOPE)
set(CAPTURE_LINK "${CAPTURE_LINK};capture_${name}" PARENT_SCOPE)
add_subdirectory(${name})
endfunction()