1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- top_srcdir ?= ../../
- include $(top_srcdir)Rules.mak
- include $(top_srcdir)Makerules
- # ugh
- top_srcdir:=$(shell cd $(top_srcdir) && pwd)/
- ifdef O
- top_builddir ?= ../../
- else
- top_builddir = ../../
- endif
- srctree := $(top_srcdir)
- src := extra/config
- obj := $(top_builddir)$(src)
- generated := $(patsubst %_shipped,%,$(wildcard *_shipped))
- generated := $(addprefix $(obj)/,$(generated:.c=.o))
- include $(top_srcdir)extra/config/Makefile.kconfig
- PHONY += $(always)
- chk-lxdialog := $(top_srcdir)$(src)/lxdialog/check-lxdialog.sh
- check-lxdialog := cd $(obj) && $(CONFIG_SHELL) $(chk-lxdialog)
- HOST_EXTRACFLAGS = $(shell $(CONFIG_SHELL) -c '$(check-lxdialog) -ccflags')
- HOST_LOADLIBES = $(shell $(CONFIG_SHELL) -c '$(check-lxdialog) -ldflags $(HOSTCC)')
- HOST_EXTRACFLAGS += -DLOCALE
- HOST_EXTRACFLAGS += $(shell $(CONFIG_SHELL) -c '$(srctree)/$(src)/check.sh $(HOSTCC) $(HOSTCFLAGS)')
- # do not create temporary object in the readonly srctree
- $(obj)/dochecklxdialog:
- $(Q)cd $(obj) && $(CONFIG_SHELL) $(chk-lxdialog) -check $(HOSTCC) $(HOST_EXTRACFLAGS) $(HOST_LOADLIBES)
- HOSTCFLAGS_lex.zconf.o := -I$(top_srcdir)$(src)
- HOSTCFLAGS_zconf.tab.o := -I$(top_srcdir)$(src)
- conf-objs := $(addprefix $(obj)/,$(conf-objs))
- mconf-objs := $(addprefix $(obj)/,$(mconf-objs))
- kxgettext-objs := $(addprefix $(obj)/,$(kxgettext-objs))
- ifeq ($(findstring mconf,$(MAKECMDGOALS)),mconf)
- hostprogs-y += mconf
- endif
- #BUILD_CFLAGS-config = -W -Wall -pedantic
- #BUILD_CFLAGS-lxdialog = -W -Wall -pedantic
- __hostprogs := $(sort $(hostprogs-y) $(hostprogs-m))
- host-csingle:= $(foreach m,$(__hostprogs),$(if $($(m)-objs),,$(m)))
- host-cmulti := $(foreach m,$(__hostprogs),\
- $(if $($(m)-cxxobjs),,$(if $($(m)-objs),$(m))))
- host-cobjs := $(sort $(foreach m,$(__hostprogs),$($(m)-objs)))
- conf mconf kxgettext: %: $(obj)/%
- $(obj)/conf $(obj)/mconf $(obj)/kxgettext: BUILD_LDFLAGS=$(HOST_LOADLIBES)
- $(obj)/conf: $(conf-objs)
- $(hcompile.u)
- $(obj)/mconf: $(mconf-objs)
- $(hcompile.u)
- $(obj)/kxgettext: $(kxgettext-objs)
- $(hcompile.u)
- $(host-csingle) $(host-cmulti) $(host-cobjs): BUILD_CFLAGS=$(HOST_EXTRACFLAGS) \
- $(HOSTCFLAGS) $(HOSTCFLAGS_$(@F))
- host-cobjs.nogen := $(filter-out $(generated),$(host-cobjs))
- host-cobjs.generated := $(filter $(generated),$(host-cobjs))
- $(host-cobjs.nogen): $(obj)/%.o: $(top_srcdir)$(src)/%.c
- $(hcompile.o)
- $(host-cobjs.generated): $(obj)/%.o: $(obj)/%.c
- $(hcompile.o)
- ifndef LKC_GENPARSER
- $(obj)/%:: $(top_srcdir)$(src)/%_shipped
- @$(disp_gen)
- $(Q)cat $< > $@
- endif
- CLEAN_extra/config menuconfig_clean:
- $(do_rm) $(clean-files) $(lxdialog) conf $(wildcard *.o)
- distclean: clean
- $(do_rm) $(lxdialog) $(conf-objs) $(mconf-objs) \
- $(kxgettext-objs) \
- $(hostprogs-y) $(qconf-cxxobjs) $(qconf-objs) $(gconf-objs) \
- .depend
- $(do_rm) -r $(top_builddir)include/config
- FORCE:
- .PHONY: FORCE clean distclean $(always)
|