]> git.sur5r.net Git - kconfig-frontends/blob - Makefile.am
Makefile: split long lines
[kconfig-frontends] / Makefile.am
1 ACLOCAL_AMFLAGS = -I scripts/.autostuff/m4
2 MAKEFLAGS = $(SILENT_MAKEFLAGS_$(V))
3 SILENT_MAKEFLAGS_ = $(SILENT_MAKEFLAGS_$(AM_DEFAULT_VERBOSITY))
4 SILENT_MAKEFLAGS_0 = --no-print-directory -s
5 SILENT_MAKEFLAGS_1 =
6
7 EXTRA_DIST = .version
8
9 bin_PROGRAMS =
10 bin_SCRIPTS =
11 dist_bin_SCRIPTS =
12
13 lib_LTLIBRARIES =
14 noinst_LIBRARIES =
15
16 CLEANFILES =
17 DISTCLEANFILES =
18 BUILT_SOURCES =
19
20 #===============================================================================
21 # Docs
22 dist_doc_DATA = \
23         docs/kconfig-language.txt \
24         docs/kconfig.txt
25
26 #===============================================================================
27 # Libraries
28
29 SUFFIXES = .gperf
30
31 lib_LTLIBRARIES += libs/parser/libkconfig-parser.la
32 libs_parser_libkconfig_parser_la_SOURCES = libs/parser/yconf.y
33 dist_EXTRA_libs_parser_libkconfig_parser_la_SOURCES = \
34         libs/parser/hconf.gperf \
35         libs/parser/lconf.l \
36         libs/parser/confdata.c \
37         libs/parser/menu.c \
38         libs/parser/symbol.c \
39         libs/parser/util.c \
40         libs/parser/expr.c \
41         libs/parser/expr.h \
42         libs/parser/lkc.h \
43         libs/parser/lkc_proto.h
44 libs_parser_libkconfig_parser_la_CPPFLAGS = \
45         -DROOTMENU="\"$(root_menu)\"" \
46         -DCONFIG_=\"$(config_prefix)\" \
47         -DGPERF_LEN_TYPE="$(GPERF_LEN_TYPE)" \
48         $(intl_CPPFLAGS) \
49         -I$(top_srcdir)/libs/parser \
50         -I$(top_builddir)/libs/parser
51 libs_parser_libkconfig_parser_la_CFLAGS = \
52         $(AM_CFLAGS) \
53         $(kf_CFLAGS)
54 libs_parser_libkconfig_parser_la_LDFLAGS = \
55         -release $(KCONFIGPARSER_LIB_VERSION) \
56         -no-undefined
57 libs_parser_libkconfig_parser_la_LIBADD = $(intl_LIBS)
58
59 libs_parser_kconfig_includedir = $(includedir)/kconfig
60 libs_parser_kconfig_include_HEADERS = \
61         libs/parser/list.h \
62         libs/parser/lkc.h \
63         libs/parser/expr.h \
64         libs/parser/lkc_proto.h
65
66 AM_V_GPERF = $(AM_V_GPERF_$(V))
67 AM_V_GPERF_ = $(AM_V_GPERF_$(AM_DEFAULT_VERBOSITY))
68 AM_V_GPERF_0 = @echo "  GPERF   " $@;
69 AM_V_GPERF_1 =
70
71 .gperf.c:
72         $(AM_V_GPERF)$(GPERF) -t --output-file $@ -a -C -E -g -k 1,3,$$ -p -t $<
73
74 # The following rule may produce a warning with some versions of automake:
75 #   Makefile.am:85: user target `.l.c' defined here...
76 #   /usr/share/automake-1.11/am/lex.am: ... overrides Automake target
77 #   `.l.c' defined here
78 #
79 # This is expected, and can't be avoided (for now).
80 # That's because, when working with lex+yacc sources, the default is to
81 # build each files searately, and then link them together into the final
82 # output. But the Linux kernel's parser simply #include-s the lexer,
83 # so we can't put lconf.l into the _SOURCES (it's in EXTRA_SOURCES),
84 # and thus automake does not catch the need to call lex.
85 # Secondly, when flex is told to change the symbols' prefix (kconfig
86 # uses zconf in lieue of the original yy), then the output file is
87 # also renamed, but automake does not now that, and make would fail
88 # because it would think no file was generated.
89 .l.c:
90         $(AM_V_LEX)$(LEXCOMPILE) -o$@ $<
91
92 BUILT_SOURCES += \
93         libs/parser/hconf.c \
94         libs/parser/lconf.c
95 CLEANFILES += \
96         libs/parser/hconf.c \
97         libs/parser/lconf.c \
98         libs/parser/yconf.c
99 EXTRA_DIST += \
100         libs/parser/hconf.c \
101         libs/parser/hconf.gperf.patch \
102         libs/parser/yconf.y.patch
103
104 # libs/parser/kconfig-parser.pc generated by AC_CONFIG_FILES in configure.ac
105 pkgconfigdir = $(libdir)/pkg-config
106 pkgconfig_DATA = libs/parser/kconfig-parser.pc
107 DISTCLEANFILES += libs/parser/kconfig-parser.pc
108 EXTRA_DIST += libs/parser/kconfig-parser.pc.in
109
110 #--------------------------
111 # lxdialog lib (for mconf)
112 if COND_lxdialog
113
114 noinst_LIBRARIES += libs/lxdialog/libkconfig-lxdialog.a
115
116 libs_lxdialog_libkconfig_lxdialog_a_SOURCES = \
117         libs/lxdialog/checklist.c \
118         libs/lxdialog/dialog.h \
119         libs/lxdialog/inputbox.c \
120         libs/lxdialog/menubox.c \
121         libs/lxdialog/textbox.c \
122         libs/lxdialog/util.c \
123         libs/lxdialog/yesno.c
124 libs_lxdialog_libkconfig_lxdialog_a_CPPFLAGS = \
125         $(AM_CPPFLAGS) \
126         $(ncurses_mconf_CPPFLAGS) \
127         $(intl_CPPFLAGS)
128 libs_lxdialog_liblxdialog_a_CFLAGS = \
129         $(AM_CFLAGS) \
130         $(kf_CFLAGS)
131
132 endif # COND_lxdialog
133
134 #--------------------------
135 # kconfig meta frontend
136 if COND_images
137
138 noinst_LIBRARIES += libs/images/libkconfig-images.a
139
140 libs_images_libkconfig_images_a_SOURCES = libs/images/images.c_orig
141 nodist_libs_images_libkconfig_images_a_SOURCES = libs/images/images.c
142
143 libs/images/images.c: libs/images/images.c_orig
144         $(AM_V_GEN)$(SED) -e 's/^static //' $< >$@
145
146 libs/images/images.h: libs/images/images.c_orig
147         $(AM_V_GEN)$(SED) -e '/^static \(const char \*xpm_\(.\{1,\}\)\[\]\) = {/!d; s//extern \1;/' \
148                 $< >$@
149
150 BUILT_SOURCES += \
151         libs/images/images.c \
152         libs/images/images.h
153 CLEANFILES += \
154         libs/images/images.c \
155         libs/images/images.h
156
157 endif # COND_images
158
159 #===============================================================================
160 # Frontends
161
162 #--------------------------
163 # kconfig meta frontend
164 if COND_kconfig
165
166 bin_SCRIPTS += frontends/kconfig
167
168 frontends/kconfig: frontends/kconfig.in
169         $(AM_V_GEN)$(SED) -e 's/@KCFG_LIST@/$(kcfg_list)/g' \
170                 $< >$@
171         @chmod +x $@
172
173 EXTRA_DIST += frontends/kconfig.in
174
175 endif # COND_kconfig
176
177 #--------------------------
178 # conf frontend
179 if COND_conf
180
181 bin_PROGRAMS += frontends/conf/kconfig-conf
182
183 frontends_conf_kconfig_conf_SOURCES = frontends/conf/conf.c
184 frontends_conf_kconfig_conf_CPPFLAGS = \
185         $(AM_CPPFLAGS) \
186         $(intl_CPPFLAGS) \
187         -I$(top_srcdir)/libs/parser
188 frontends_conf_kconfig_conf_CFLAGS = \
189         $(AM_CFLAGS) \
190         $(kf_CFLAGS)
191 frontends_conf_kconfig_conf_LDADD = \
192         $(top_builddir)/libs/parser/libkconfig-parser.la \
193         $(intl_LIBS) \
194         $(conf_EXTRA_LIBS)
195
196 endif # COND_conf
197
198 #--------------------------
199 # mconf frontend
200 if COND_mconf
201
202 bin_PROGRAMS += frontends/mconf/kconfig-mconf
203
204 frontends_mconf_kconfig_mconf_SOURCES = frontends/mconf/mconf.c
205 frontends_mconf_kconfig_mconf_CPPFLAGS = \
206         $(AM_CPPFLAGS) \
207         $(ncurses_mconf_CPPFLAGS) \
208         $(intl_CPPFLAGS) \
209         -I$(top_srcdir)/libs \
210         -I$(top_srcdir)/libs/parser
211 frontends_mconf_kconfig_mconf_CFLAGS = \
212         $(AM_CFLAGS) \
213         $(kf_CFLAGS)
214 frontends_mconf_kconfig_mconf_LDADD = \
215         $(top_builddir)/libs/parser/libkconfig-parser.la \
216         $(top_builddir)/libs/lxdialog/libkconfig-lxdialog.a \
217         $(intl_LIBS) $(ncurses_LIBS) $(mconf_EXTRA_LIBS)
218
219 endif # COND_mconf
220
221 #--------------------------
222 # nconf frontend
223 if COND_nconf
224
225 bin_PROGRAMS += frontends/nconf/kconfig-nconf
226
227 frontends_nconf_kconfig_nconf_SOURCES = \
228         frontends/nconf/nconf.c \
229         frontends/nconf/nconf.gui.c \
230         frontends/nconf/nconf.h
231 frontends_nconf_kconfig_nconf_CPPFLAGS = \
232         $(AM_CPPFLAGS) \
233         $(intl_CPPFLAGS) \
234         $(ncurses_nconf_CPPFLAGS) \
235         -I$(top_srcdir)/libs/parser
236 frontends_nconf_kconfig_nconf_CFLAGS = \
237         $(AM_CFLAGS) \
238         $(kf_CFLAGS)
239 frontends_nconf_kconfig_nconf_LDADD = \
240         $(top_builddir)/libs/parser/libkconfig-parser.la \
241         $(intl_LIBS) $(ncurses_panel_menu_LIBS) $(ncurses_LIBS) \
242         $(nconf_EXTRA_LIBS)
243
244 endif # COND_nconf
245
246 #--------------------------
247 # gconf frontend
248 if COND_gconf
249
250 bin_PROGRAMS += frontends/gconf/kconfig-gconf
251
252 frontends_gconf_kconfig_gconf_SOURCES = \
253         frontends/gconf/gconf.c \
254         frontends/gconf/gconf.glade
255 frontends_gconf_kconfig_gconf_CPPFLAGS = \
256         $(AM_CPPFLAGS) \
257         $(intl_CPPFLAGS) \
258         -I$(top_srcdir)/libs/parser \
259         -I$(top_builddir)/libs/images \
260         -DGUI_PATH='"$(pkgdatadir)/gconf.glade"'
261 frontends_gconf_kconfig_gconf_CFLAGS = \
262         $(AM_CFLAGS) \
263         $(kf_CFLAGS) \
264         $(gtk_CFLAGS)
265 frontends_gconf_kconfig_gconf_LDADD = \
266         $(top_builddir)/libs/parser/libkconfig-parser.la \
267         $(top_builddir)/libs/images/libkconfig-images.a \
268         $(intl_LIBS) \
269         $(gtk_LIBS) \
270         $(gconf_EXTRA_LIBS)
271 frontends_gconf_kconfig_gconfdir = $(pkgdatadir)
272 frontends_gconf_kconfig_gconf_DATA = frontends/gconf/gconf.glade
273
274 EXTRA_DIST += frontends/gconf/gconf.c.patch
275
276 endif # COND_gconf
277
278 #--------------------------
279 # gconf frontend
280 if COND_qconf
281
282 bin_PROGRAMS += frontends/qconf/kconfig-qconf
283
284 frontends_qconf_kconfig_qconf_SOURCES = \
285         frontends/qconf/qconf.cc \
286         frontends/qconf/qconf.h
287 BUILT_SOURCES += frontends/qconf/qconf.moc
288 frontends_qconf_kconfig_qconf_CPPFLAGS = \
289         $(AM_CPPFLAGS) \
290         $(intl_CPPFLAGS) \
291         -I$(top_srcdir)/libs/parser \
292         -I$(top_builddir)/libs/images \
293         -I$(top_builddir)/frontends/qconf
294 frontends_qconf_kconfig_qconf_CXXFLAGS = \
295         $(AM_CXXFLAGS) \
296         $(kf_CFLAGS) \
297         $(Qt5_CFLAGS) \
298         -fPIC
299 frontends_qconf_kconfig_qconf_LDADD = \
300         $(top_builddir)/libs/parser/libkconfig-parser.la \
301         $(top_builddir)/libs/images/libkconfig-images.a \
302         $(intl_LIBS) $(Qt5_LIBS) $(qconf_EXTRA_LIBS)
303
304 AM_V_MOC = $(AM_V_MOC_$(V))
305 AM_V_MOC_ = $(AM_V_MOC_$(AM_DEFAULT_VERBOSITY))
306 AM_V_MOC_0 = @echo "  MOC     " $@;
307 AM_V_MOC_1 =
308
309 .h.moc:
310         $(AM_V_MOC)$(MOC) -i $< -o $@
311
312 CLEANFILES += frontends/qconf/qconf.moc
313 EXTRA_DIST += frontends/qconf/qconf.cc.patch
314
315 endif # COND_qconf
316
317 #===============================================================================
318 # Utilities
319 if COND_utils
320
321 bin_SCRIPTS += utils/kconfig-tweak
322 dist_bin_SCRIPTS += utils/kconfig-diff utils/kconfig-merge
323
324 if COND_utils_gettext
325 MAYBE_utils_gettext = utils/kconfig-gettext
326 endif
327 bin_PROGRAMS += $(MAYBE_utils_gettext)
328
329 utils_kconfig_gettext_SOURCES = utils/gettext.c
330 utils_kconfig_gettext_CPPFLAGS = \
331         $(AM_CPPFLAGS) \
332         -I$(top_srcdir)/libs/parser
333 utils_kconfig_gettext_CFLAGS = \
334         $(AM_CFLAGS) \
335         $(kf_CFLAGS)
336 utils_kconfig_gettext_LDADD = \
337         $(top_builddir)/libs/parser/libkconfig-parser.la \
338         $(intl_LIBS)
339
340 CLEANFILES += utils/kconfig-tweak
341 EXTRA_DIST += \
342         utils/kconfig-tweak.in \
343         utils/kconfig-tweak.in.patch
344
345 utils/kconfig-tweak: utils/kconfig-tweak.in
346         $(AM_V_GEN)$(SED) -e "s/@CONFIG_@/$(config_prefix)/g" \
347                 $< >$@
348         @chmod +x $@
349
350 endif # COND_utils
351
352 #===============================================================================
353 # Misc. scripts
354 EXTRA_DIST += \
355         scripts/ksync.sh \
356         scripts/ksync.list \
357         scripts/version.sh