xref: /Universal-ctags/source.mak (revision 1f8ea58bf82dbb01cef9c8a772b60efb30928704)
1#
2# Shared macros
3#
4#   $(NULL) at the end of a list makes diff readable
5
6# REPOINFO_HEADS is included from REPOINFO_SRCS
7# only when the building environment has ability
8# to generate the header file.
9# REPOINFO_OBJS is always linked to ctags executable.
10REPOINFO_HEADS = main/repoinfo.h
11REPOINFO_SRCS  = main/repoinfo.c
12REPOINFO_OBJS  = $(REPOINFO_SRCS:.c=.$(OBJEXT))
13
14MIO_HEADS = main/mio.h
15MIO_SRCS  = main/mio.c
16
17UTIL_PUBLIC_HEADS = \
18	main/general.h		\
19	\
20	main/gcc-attr.h		\
21	main/inline.h		\
22	main/routines.h		\
23	main/trashbox.h 	\
24	main/vstring.h		\
25	\
26	$(NULL)
27
28UTIL_PRIVATE_HEADS = \
29	main/routines_p.h	\
30	\
31	$(NULL)
32
33UTIL_HEADS = \
34	$(UTIL_PUBLIC_HEADS)	\
35	$(UTIL_PRIVATE_HEADS)	\
36	\
37	$(NULL)
38
39UTIL_SRCS = \
40	main/routines.c		\
41	main/trashbox.c		\
42	main/vstring.c		\
43	\
44	$(NULL)
45UTIL_OBJS = $(UTIL_SRCS:.c=.$(OBJEXT))
46
47MAIN_PUBLIC_HEADS =		\
48	$(UTIL_PUBLIC_HEADS)	\
49	\
50	main/dependency.h	\
51	main/entry.h		\
52	main/field.h		\
53	main/gvars.h		\
54	main/htable.h		\
55	main/keyword.h		\
56	main/kind.h		\
57	main/lregex.h		\
58	main/lxpath.h		\
59	main/mbcs.h		\
60	main/nestlevel.h	\
61	main/numarray.h		\
62	main/objpool.h		\
63	main/options.h		\
64	main/param.h		\
65	main/parse.h		\
66	main/promise.h		\
67	main/ptrarray.h		\
68	main/rbtree.h		\
69	main/read.h		\
70	main/selectors.h	\
71	main/strlist.h		\
72	main/subparser.h	\
73	main/tokeninfo.h	\
74	main/trace.h		\
75	main/types.h		\
76	main/unwindi.h  	\
77	main/xtag.h		\
78	\
79	$(NULL)
80
81LIB_PRIVATE_HEADS =		\
82	$(UTIL_PRIVATE_HEADS)	\
83	\
84	main/args_p.h		\
85	main/colprint_p.h	\
86	main/dependency_p.h	\
87	main/entry_p.h		\
88	main/error_p.h		\
89	main/field_p.h		\
90	main/flags_p.h		\
91	main/fmt_p.h		\
92	main/interactive_p.h	\
93	main/keyword_p.h	\
94	main/kind_p.h		\
95	main/lregex_p.h		\
96	main/lxpath_p.h		\
97	main/main_p.h		\
98	main/mbcs_p.h		\
99	main/options_p.h	\
100	main/param_p.h		\
101	main/parse_p.h		\
102	main/parsers_p.h	\
103	main/portable-dirent_p.h\
104	main/promise_p.h	\
105	main/ptag_p.h		\
106	main/read_p.h		\
107	main/script_p.h		\
108	main/sort_p.h		\
109	main/stats_p.h		\
110	main/subparser_p.h	\
111	main/trashbox_p.h	\
112	main/writer_p.h		\
113	main/xtag_p.h		\
114	\
115	$(NULL)
116
117LIB_HEADS =			\
118	main/ctags.h		\
119	\
120	$(MAIN_PUBLIC_HEADS)	\
121	$(LIB_PRIVATE_HEADS)	\
122	\
123	$(MIO_HEADS)		\
124	\
125	$(NULL)
126
127LIB_SRCS =			\
128	$(UTIL_SRCS)			\
129	\
130	main/args.c			\
131	main/colprint.c			\
132	main/dependency.c		\
133	main/entry.c			\
134	main/entry_private.c		\
135	main/error.c			\
136	main/field.c			\
137	main/flags.c			\
138	main/fmt.c			\
139	main/htable.c			\
140	main/keyword.c			\
141	main/kind.c			\
142	main/lregex.c			\
143	main/lregex-default.c		\
144	main/lxpath.c			\
145	main/main.c			\
146	main/mbcs.c			\
147	main/nestlevel.c		\
148	main/numarray.c			\
149	main/objpool.c			\
150	main/options.c			\
151	main/param.c			\
152	main/parse.c			\
153	main/portable-scandir.c		\
154	main/promise.c			\
155	main/ptag.c			\
156	main/ptrarray.c			\
157	main/rbtree.c			\
158	main/read.c			\
159	main/script.c			\
160	main/seccomp.c			\
161	main/selectors.c		\
162	main/sort.c			\
163	main/stats.c			\
164	main/strlist.c			\
165	main/trace.c			\
166	main/tokeninfo.c		\
167	main/unwindi.c			\
168	main/writer.c			\
169	main/writer-etags.c		\
170	main/writer-ctags.c		\
171	main/writer-json.c		\
172	main/writer-xref.c		\
173	main/xtag.c			\
174	\
175	$(TXT2CSTR_SRCS) \
176	\
177	$(REPOINFO_SRCS) \
178	$(MIO_SRCS)      \
179	\
180	$(NULL)
181
182CMDLINE_HEADS =
183CMDLINE_SRCS = \
184	main/cmd.c \
185	\
186	$(NULL)
187
188DEBUG_HEADS = main/debug.h
189DEBUG_SRCS = main/debug.c
190
191MINI_GEANY_HEADS =
192MINI_GEANY_SRCS = \
193	main/mini-geany.c \
194	\
195	$(NULL)
196
197OPTSCRIPT_SRCS = \
198	extra-cmds/optscript-repl.c \
199	\
200	$(NULL)
201OPTSCRIPT_OBJS = $(OPTSCRIPT_SRCS:.c=.$(OBJEXT))
202
203OPTLIB2C_PCRE2_INPUT =       \
204   optlib/rdoc.ctags         \
205   \
206   $(NULL)
207OPTLIB2C_PCRE2_SRCS = $(OPTLIB2C_PCRE2_INPUT:.ctags=.c)
208
209OPTLIB2C_INPUT = \
210	optlib/cmake.ctags			\
211	optlib/ctags-optlib.ctags		\
212	optlib/elixir.ctags			\
213	optlib/gdbinit.ctags			\
214	optlib/inko.ctags			\
215	optlib/iPythonCell.ctags		\
216	optlib/kconfig.ctags			\
217	optlib/lex.ctags			\
218	optlib/man.ctags			\
219	optlib/meson.ctags			\
220	optlib/mesonOptions.ctags		\
221	optlib/org.ctags			\
222	optlib/passwd.ctags			\
223	optlib/pod.ctags			\
224	optlib/puppetManifest.ctags		\
225	optlib/qemuhx.ctags			\
226	optlib/rpmMacros.ctags			\
227	optlib/scss.ctags			\
228	optlib/systemtap.ctags			\
229	optlib/yacc.ctags			\
230	\
231	$(NULL)
232OPTLIB2C_SRCS = $(OPTLIB2C_INPUT:.ctags=.c)
233
234TXT2CSTR_INPUT = \
235	main/CommonPrelude.ps			\
236	\
237	$(NULL)
238TXT2CSTR_SRCS = $(TXT2CSTR_INPUT:.ps=.c)
239
240PEG_INPUT = \
241       peg/varlink.peg				\
242       peg/kotlin.peg				\
243       peg/thrift.peg				\
244       peg/elm.peg					\
245       \
246       $(NULL)
247PEG_SRCS = $(PEG_INPUT:.peg=.c)
248PEG_HEADS = $(PEG_INPUT:.peg=.h)
249PEG_EXTRA_HEADS = peg/peg_common.h $(PEG_INPUT:.peg=_pre.h) $(PEG_INPUT:.peg=_post.h)
250PEG_OBJS = $(PEG_SRCS:.c=.$(OBJEXT))
251
252PARSER_HEADS = \
253	parsers/autoconf.h \
254	parsers/cpreprocessor.h \
255	\
256	parsers/cxx/cxx_debug.h \
257	parsers/cxx/cxx_keyword.h \
258	parsers/cxx/cxx_parser_internal.h \
259	parsers/cxx/cxx_parser.h \
260	parsers/cxx/cxx_scope.h \
261	parsers/cxx/cxx_subparser.h \
262	parsers/cxx/cxx_subparser_internal.h \
263	parsers/cxx/cxx_tag.h \
264	parsers/cxx/cxx_token.h \
265	parsers/cxx/cxx_token_chain.h \
266	\
267	parsers/frontmatter.h \
268	parsers/iniconf.h \
269	parsers/m4.h \
270	parsers/make.h \
271	parsers/markdown.h \
272	parsers/perl.h \
273	parsers/r.h \
274	parsers/ruby.h \
275	parsers/tcl.h \
276	parsers/tex.h \
277	\
278	$(NULL)
279
280PARSER_SRCS =				\
281	parsers/abaqus.c		\
282	parsers/abc.c			\
283	parsers/ada.c			\
284	parsers/ant.c			\
285	parsers/asciidoc.c		\
286	parsers/asm.c			\
287	parsers/asp.c			\
288	parsers/autoconf.c		\
289	parsers/autoit.c		\
290	parsers/automake.c		\
291	parsers/awk.c			\
292	parsers/basic.c			\
293	parsers/beta.c			\
294	parsers/bibtex.c		\
295	parsers/c-based.c		\
296	parsers/c.c			\
297	parsers/clojure.c		\
298	parsers/css.c			\
299	parsers/cobol.c			\
300	parsers/cpreprocessor.c		\
301	parsers/cxx/cxx.c		\
302	parsers/cxx/cxx_debug.c		\
303	parsers/cxx/cxx_debug_type.c	\
304	parsers/cxx/cxx_keyword.c		\
305	parsers/cxx/cxx_parser.c		\
306	parsers/cxx/cxx_parser_block.c		\
307	parsers/cxx/cxx_parser_function.c	\
308	parsers/cxx/cxx_parser_lambda.c		\
309	parsers/cxx/cxx_parser_namespace.c	\
310	parsers/cxx/cxx_parser_template.c	\
311	parsers/cxx/cxx_parser_tokenizer.c	\
312	parsers/cxx/cxx_parser_typedef.c	\
313	parsers/cxx/cxx_parser_using.c		\
314	parsers/cxx/cxx_parser_variable.c	\
315	parsers/cxx/cxx_subparser.c	\
316	parsers/cxx/cxx_qtmoc.c		\
317	parsers/cxx/cxx_scope.c		\
318	parsers/cxx/cxx_tag.c		\
319	parsers/cxx/cxx_token.c		\
320	parsers/cxx/cxx_token_chain.c	\
321	parsers/diff.c			\
322	parsers/dosbatch.c		\
323	parsers/dtd.c			\
324	parsers/dts.c			\
325	parsers/eiffel.c		\
326	parsers/erlang.c		\
327	parsers/falcon.c		\
328	parsers/flex.c			\
329	parsers/fortran.c		\
330	parsers/frontmatter.c		\
331	parsers/fypp.c			\
332	parsers/gdscript.c		\
333	parsers/gemspec.c		\
334	parsers/go.c			\
335	parsers/haskell.c		\
336	parsers/haxe.c			\
337	parsers/html.c			\
338	parsers/iniconf.c		\
339	parsers/itcl.c			\
340	parsers/jprop.c			\
341	parsers/jscript.c		\
342	parsers/json.c			\
343	parsers/julia.c			\
344	parsers/ldscript.c		\
345	parsers/lisp.c			\
346	parsers/lua.c			\
347	parsers/m4.c			\
348	parsers/make.c			\
349	parsers/markdown.c			\
350	parsers/matlab.c		\
351	parsers/myrddin.c		\
352	parsers/nsis.c			\
353	parsers/objc.c			\
354	parsers/ocaml.c			\
355	parsers/pascal.c		\
356	parsers/perl.c			\
357	parsers/perl-function-parameters.c \
358	parsers/perl-moose.c		\
359	parsers/perl6.c			\
360	parsers/php.c			\
361	parsers/powershell.c		\
362	parsers/protobuf.c		\
363	parsers/python.c		\
364	parsers/pythonloggingconfig.c	\
365	parsers/r-r6class.c		\
366	parsers/r-s4class.c		\
367	parsers/r.c			\
368	parsers/rake.c			\
369	parsers/rexx.c			\
370	parsers/rmarkdown.c		\
371	parsers/robot.c			\
372	parsers/rpmspec.c		\
373	parsers/rspec.c			\
374	parsers/rst.c			\
375	parsers/ruby.c			\
376	parsers/rust.c			\
377	parsers/scheme.c		\
378	parsers/sh.c			\
379	parsers/slang.c			\
380	parsers/sml.c			\
381	parsers/sql.c			\
382	parsers/systemdunit.c		\
383	parsers/tcl.c			\
384	parsers/tcloo.c			\
385	parsers/tex.c			\
386	parsers/tex-beamer.c		\
387	parsers/ttcn.c			\
388	parsers/txt2tags.c		\
389	parsers/typescript.c		\
390	parsers/vera.c			\
391	parsers/verilog.c		\
392	parsers/vhdl.c			\
393	parsers/vim.c			\
394	parsers/windres.c		\
395	parsers/yumrepo.c		\
396	\
397	$(OPTLIB2C_SRCS)		\
398	\
399	$(NULL)
400
401XML_HEADS = parsers/xml.h
402XML_SRCS = \
403	parsers/maven2.c		\
404	parsers/dbusintrospect.c	\
405	parsers/glade.c			\
406	parsers/svg.c			\
407	parsers/plist.c			\
408	parsers/relaxng.c		\
409	parsers/xml.c			\
410	parsers/xslt.c			\
411	\
412	$(NULL)
413
414YAML_HEADS = parsers/yaml.h
415YAML_SRCS = \
416	parsers/yaml.c		\
417	\
418	parsers/openapi.c	\
419	\
420	parsers/ansibleplaybook.c	\
421	\
422	parsers/yamlfrontmatter.c	\
423	\
424	$(NULL)
425
426PCRE2_HEADS =
427PCRE2_SRCS = \
428	    main/lregex-pcre2.c \
429	    \
430	    $(NULL)
431
432OPTSCRIPT_DSL_HEADS = \
433	dsl/es.h \
434	dsl/optscript.h \
435	\
436	$(NULL)
437
438OPTSCRIPT_DSL_SRCS = \
439	dsl/es.c \
440	dsl/optscript.c \
441	\
442	$(NULL)
443OPTSCRIPT_DSL_OBJS = $(OPTSCRIPT_DSL_SRCS:.c=.$(OBJEXT))
444
445READTAGS_DSL_HEADS = \
446	dsl/es.h \
447	dsl/dsl.h \
448	dsl/formatter.h \
449	dsl/qualifier.h \
450	dsl/sorter.h \
451	\
452	$(MIO_HEADS) \
453	\
454	$(NULL)
455
456READTAGS_DSL_SRCS = \
457	dsl/es.c \
458	dsl/dsl.c \
459	dsl/formatter.c \
460	dsl/qualifier.c \
461	dsl/sorter.c \
462	\
463	$(MIO_SRCS) \
464	\
465	$(NULL)
466READTAGS_DSL_OBJS = $(READTAGS_DSL_SRCS:.c=.$(OBJEXT))
467
468READTAGS_SRCS  = \
469	libreadtags/readtags.c      \
470	extra-cmds/printtags.c  \
471	extra-cmds/readtags-cmd.c  \
472	extra-cmds/readtags-stub.c \
473	\
474	$(NULL)
475READTAGS_HEADS = \
476	libreadtags/readtags.h \
477	extra-cmds/printtags.h  \
478	extra-cmds/readtags-stub.h \
479	\
480	$(NULL)
481READTAGS_OBJS  = $(READTAGS_SRCS:.c=.$(OBJEXT))
482
483PACKCC_SRC = misc/packcc/src/packcc.c
484PACKCC_OBJ = $(PACKCC_SRC:.c=.$(OBJEXT))
485
486WIN32_HEADS = main/e_msoft.h
487WIN32_SRCS = win32/mkstemp/mkstemp.c
488WIN32_OBJS = $(WIN32_SRCS:.c=.$(OBJEXT))
489
490# common to MVC and MINGW
491COMMON_GNULIB_HEADS = \
492	gnulib/regex.h			\
493	gnulib/fnmatch.h		\
494	\
495	$(NULL)
496COMMON_GNULIB_SRCS = \
497	gnulib/regex.c			\
498	gnulib/nl_langinfo.c		\
499	gnulib/setlocale_null.c		\
500	gnulib/malloc/dynarray_resize.c	\
501	gnulib/fnmatch.c		\
502	gnulib/mempcpy.c		\
503	gnulib/wmempcpy.c		\
504	\
505	$(NULL)
506
507MVC_GNULIB_HEADS = \
508	$(COMMON_GNULIB_HEADS)		\
509	\
510	$(NULL)
511MVC_GNULIB_SRCS = \
512	$(COMMON_GNULIB_SRCS)		\
513	\
514	$(NULL)
515
516MINGW_GNULIB_HEADS = \
517	$(COMMON_GNULIB_HEADS)		\
518	\
519	$(NULL)
520MINGW_GNULIB_SRCS = \
521	$(COMMON_GNULIB_SRCS)		\
522	gnulib/localeconv.c		\
523	\
524	$(NULL)
525
526ENVIRONMENT_HEADS =
527ENVIRONMENT_SRCS =
528
529ALL_LIB_HEADS = $(LIB_HEADS) $(PARSER_HEADS) $(DEBUG_HEADS) $(DSL_HEADS) $(OPTSCRIPT_DSL_HEADS)
530ALL_LIB_SRCS  = $(LIB_SRCS) $(PARSER_SRCS) $(DEBUG_SRCS) $(DSL_SRCS) $(OPTSCRIPT_DSL_SRCS)
531ALL_LIB_OBJS = \
532	$(ALL_LIB_SRCS:.c=.$(OBJEXT)) \
533	$(LIBOBJS)
534
535ALL_HEADS = $(ALL_LIB_HEADS) $(CMDLINE_HEADS)
536ALL_SRCS = $(ALL_LIB_SRCS) $(CMDLINE_SRCS)
537ALL_OBJS = \
538	$(ALL_SRCS:.c=.$(OBJEXT)) \
539	$(LIBOBJS)
540
541# vim: ts=8
542