ae2f_docs
Loading...
Searching...
No Matches
Inc.cmake
1
2
3# -DINC_LEAVE_NFOUND
4# When this flag is set ON, on ignoring nfound of path, it will write the include again.
5function(ae2f_Inc_init prm_DIRLEN prm_PATHLEN prm_STACKLEN prm_INC_IGNORE_STACKSMASH prm_INC_IGNORE_NFOUND prm_INC_REPT_CHECK)
6 file(REMOVE_RECURSE ${ae2f_Inc_ROOT}/build)
7 message("[ae2f_Inc_init] ${CMAKE_GENERATOR}")
8
9 if(DEFINED CMAKE_C_STANDARD)
10 set(cstd "-DCMAKE_C_STANDARD=${CMAKE_C_STANDARD}")
11 else()
12 set(cstd "")
13 endif()
14
15 if(DEFINED CMAKE_C_COMPILER)
16 set(cc "-DCMAKE_C_COMPILER=${CMAKE_C_COMPILER}")
17 else()
18 set(cc "")
19 endif()
20
21 if(DEFINED CMAKE_GENERATOR)
22 set(gen "-G${CMAKE_GENERATOR}")
23 else()
24 set(gen "")
25 endif()
26
27 execute_process(
28 WORKING_DIRECTORY ${ae2f_Inc_ROOT}
29 COMMAND ${CMAKE_COMMAND}
30 "-S" "." "-B" "./build"
31 ${gen} ${cstd} ${cc}
32 -DDIRLEN=${prm_DIRLEN}
33 -DPATHLEN=${prm_PATHLEN}
34 -DSTACKLEN=${prm_STACKLEN}
35 -DINC_IGNORE_SMASH=${prm_INC_IGNORE_STACKSMASH}
36 -DINC_IGNORE_NFOUND=${prm_INC_IGNORE_NFOUND}
37 -DINC_REPT_CHECK=${prm_INC_REPT_CHECK}
38 ${ae2f_PreProc_C_PRM}
39 ${ARGN}
40 RESULT_VARIABLE ConfOut
41 )
42
43 if(NOT ConfOut EQUAL 0)
44 message(FATAL_ERROR "[ae2f_Inc_init] Configuration failed. ${ConfOut}")
45 endif()
46
47 execute_process(
48 WORKING_DIRECTORY ${ae2f_Inc_ROOT}
49 COMMAND ${CMAKE_COMMAND} "--build" "build"
50 RESULT_VARIABLE BuildOut
51 )
52
53 if(NOT BuildOut EQUAL 0)
54 message(FATAL_ERROR "[ae2f_Inc_init] Build failed. ${BuildOut}")
55 endif()
56
57 message("[ae2f_Inc_init] Succeed.")
58endfunction()
59
60function(ae2f_Inc_Run_One inp_file_absolute out_file_absolute)
61 file(GLOB_RECURSE cmd ${ae2f_Inc_ROOT}/build/bin