@@ -71,9 +71,9 @@ function(add_header target_name)
7171 )
7272endfunction (add_header)
7373
74- function (add_gen_header2 target_name)
74+ function (add_gen_header target_name)
7575 cmake_parse_arguments (
76- "ADD_GEN_HDR2 "
76+ "ADD_GEN_HDR "
7777 "PUBLIC" # No optional arguments
7878 "YAML_FILE;DEF_FILE;GEN_HDR" # Single value arguments
7979 "DEPENDS" # Multi value arguments
@@ -84,25 +84,25 @@ function(add_gen_header2 target_name)
8484 add_library (${fq_target_name} INTERFACE )
8585 return ()
8686 endif ()
87- if (NOT ADD_GEN_HDR2_DEF_FILE )
88- message (FATAL_ERROR "`add_gen_hdr2 ` rule requires DEF_FILE to be specified." )
87+ if (NOT ADD_GEN_HDR_DEF_FILE )
88+ message (FATAL_ERROR "`add_gen_hdr ` rule requires DEF_FILE to be specified." )
8989 endif ()
90- if (NOT ADD_GEN_HDR2_GEN_HDR )
91- message (FATAL_ERROR "`add_gen_hdr2 ` rule requires GEN_HDR to be specified." )
90+ if (NOT ADD_GEN_HDR_GEN_HDR )
91+ message (FATAL_ERROR "`add_gen_hdr ` rule requires GEN_HDR to be specified." )
9292 endif ()
93- if (NOT ADD_GEN_HDR2_YAML_FILE )
94- message (FATAL_ERROR "`add_gen_hdr2 ` rule requires YAML_FILE to be specified." )
93+ if (NOT ADD_GEN_HDR_YAML_FILE )
94+ message (FATAL_ERROR "`add_gen_hdr ` rule requires YAML_FILE to be specified." )
9595 endif ()
9696
97- set (absolute_path ${CMAKE_CURRENT_SOURCE_DIR} /${ADD_GEN_HDR2_GEN_HDR } )
97+ set (absolute_path ${CMAKE_CURRENT_SOURCE_DIR} /${ADD_GEN_HDR_GEN_HDR } )
9898 file (RELATIVE_PATH relative_path ${LIBC_INCLUDE_SOURCE_DIR} ${absolute_path} )
9999 set (out_file ${LIBC_INCLUDE_DIR} /${relative_path} )
100- set (yaml_file ${CMAKE_SOURCE_DIR} /${ADD_GEN_HDR2_YAML_FILE } )
101- set (def_file ${CMAKE_CURRENT_SOURCE_DIR} /${ADD_GEN_HDR2_DEF_FILE } )
100+ set (yaml_file ${CMAKE_SOURCE_DIR} /${ADD_GEN_HDR_YAML_FILE } )
101+ set (def_file ${CMAKE_CURRENT_SOURCE_DIR} /${ADD_GEN_HDR_DEF_FILE } )
102102
103103 set (fq_data_files "" )
104- if (ADD_GEN_HDR2_DATA_FILES )
105- foreach (data_file IN LISTS ADD_GEN_HDR2_DATA_FILES )
104+ if (ADD_GEN_HDR_DATA_FILES )
105+ foreach (data_file IN LISTS ADD_GEN_HDR_DATA_FILES )
106106 list (APPEND fq_data_files "${CMAKE_CURRENT_SOURCE_DIR} /${data_file} " )
107107 endforeach (data_file)
108108 endif ()
@@ -118,7 +118,7 @@ function(add_gen_header2 target_name)
118118 ${entry_points}
119119 --output_dir ${out_file}
120120 DEPENDS ${yaml_file} ${def_file} ${fq_data_files}
121- COMMENT "Generating header ${ADD_GEN_HDR2_GEN_HDR } from ${yaml_file} and ${def_file} "
121+ COMMENT "Generating header ${ADD_GEN_HDR_GEN_HDR } from ${yaml_file} and ${def_file} "
122122 )
123123 if (LIBC_TARGET_OS_IS_GPU)
124124 file (MAKE_DIRECTORY ${LIBC_INCLUDE_DIR} /llvm-libc-decls)
@@ -136,99 +136,6 @@ function(add_gen_header2 target_name)
136136 )
137137 endif ()
138138
139- if (ADD_GEN_HDR2_DEPENDS)
140- get_fq_deps_list(fq_deps_list ${ADD_GEN_HDR2_DEPENDS} )
141- # Dependencies of a add_header target can only be another add_gen_header target
142- # or an add_header target.
143- foreach (dep IN LISTS fq_deps_list)
144- get_target_property (header_file ${dep} HEADER_FILE_PATH)
145- if (NOT header_file)
146- message (FATAL_ERROR "Invalid dependency '${dep} ' for '${fq_target_name} '." )
147- endif ()
148- endforeach ()
149- endif ()
150- set (generated_hdr_target ${fq_target_name} .__generated_hdr__)
151- add_custom_target (
152- ${generated_hdr_target}
153- DEPENDS ${out_file} ${fq_deps_list} ${decl_out_file}
154- )
155-
156- add_header_library(
157- ${target_name}
158- HDRS
159- ${out_file}
160- )
161-
162- add_dependencies (${fq_target_name} ${generated_hdr_target} )
163-
164- set_target_properties (
165- ${fq_target_name}
166- PROPERTIES
167- HEADER_FILE_PATH ${out_file}
168- DECLS_FILE_PATH "${decl_out_file} "
169- DEPS "${fq_deps_list} "
170- )
171-
172-
173- endfunction (add_gen_header2)
174-
175- # Usage:
176- # add_gen_header(
177- # <target name>
178- # DEF_FILE <.h.def file>
179- # GEN_HDR <generated header file name>
180- # PARAMS <list of name=value pairs>
181- # DATA_FILES <list input data files>
182- # )
183- function (add_gen_header target_name)
184- cmake_parse_arguments (
185- "ADD_GEN_HDR"
186- "PUBLIC" # No optional arguments
187- "DEF_FILE;GEN_HDR" # Single value arguments
188- "PARAMS;DATA_FILES;DEPENDS" # Multi value arguments
189- ${ARGN}
190- )
191- get_fq_target_name(${target_name} fq_target_name)
192- if (NOT LLVM_LIBC_FULL_BUILD)
193- # We don't want to use generated headers if we are doing a non-full-build.
194- add_library (${fq_target_name} INTERFACE )
195- return ()
196- endif ()
197- if (NOT ADD_GEN_HDR_DEF_FILE)
198- message (FATAL_ERROR "`add_gen_hdr` rule requires DEF_FILE to be specified." )
199- endif ()
200- if (NOT ADD_GEN_HDR_GEN_HDR)
201- message (FATAL_ERROR "`add_gen_hdr` rule requires GEN_HDR to be specified." )
202- endif ()
203-
204- set (absolute_path ${CMAKE_CURRENT_SOURCE_DIR} /${ADD_GEN_HDR_GEN_HDR} )
205- file (RELATIVE_PATH relative_path ${LIBC_INCLUDE_SOURCE_DIR} ${absolute_path} )
206- set (out_file ${LIBC_INCLUDE_DIR} /${relative_path} )
207- set (in_file ${CMAKE_CURRENT_SOURCE_DIR} /${ADD_GEN_HDR_DEF_FILE} )
208-
209- set (fq_data_files "" )
210- if (ADD_GEN_HDR_DATA_FILES)
211- foreach (data_file IN LISTS ADD_GEN_HDR_DATA_FILES)
212- list (APPEND fq_data_files "${CMAKE_CURRENT_SOURCE_DIR} /${data_file} " )
213- endforeach (data_file)
214- endif ()
215-
216- set (replacement_params "" )
217- if (ADD_GEN_HDR_PARAMS)
218- list (APPEND replacement_params "--args" ${ADD_GEN_HDR_PARAMS} )
219- endif ()
220-
221- set (gen_hdr_script "${LIBC_BUILD_SCRIPTS_DIR} /gen_hdr.py" )
222-
223- set (ENTRYPOINT_NAME_LIST_ARG ${TARGET_ENTRYPOINT_NAME_LIST} )
224- list (TRANSFORM ENTRYPOINT_NAME_LIST_ARG PREPEND "--e=" )
225-
226- if (LIBC_TARGET_OS_IS_GPU)
227- file (MAKE_DIRECTORY ${LIBC_INCLUDE_DIR} /llvm-libc-decls)
228- file (MAKE_DIRECTORY ${LIBC_INCLUDE_DIR} /llvm-libc-decls/gpu)
229- set (decl_out_file ${LIBC_INCLUDE_DIR} /llvm-libc-decls/${relative_path} )
230- endif ()
231-
232139 if (ADD_GEN_HDR_DEPENDS)
233140 get_fq_deps_list(fq_deps_list ${ADD_GEN_HDR_DEPENDS} )
234141 # Dependencies of a add_header target can only be another add_gen_header target
@@ -252,9 +159,6 @@ function(add_gen_header target_name)
252159 ${out_file}
253160 )
254161
255- # We add the dependencies separately and not list under add_header_library's
256- # DEPENDS option above. This is because, deps of add_header_library are
257- # used with target_link_libraries.
258162 add_dependencies (${fq_target_name} ${generated_hdr_target} )
259163
260164 set_target_properties (
@@ -264,4 +168,6 @@ function(add_gen_header target_name)
264168 DECLS_FILE_PATH "${decl_out_file} "
265169 DEPS "${fq_deps_list} "
266170 )
171+
172+
267173endfunction (add_gen_header)
0 commit comments