diff options
Diffstat (limited to 'v4l/Makefile')
-rw-r--r-- | v4l/Makefile | 78 |
1 files changed, 34 insertions, 44 deletions
diff --git a/v4l/Makefile b/v4l/Makefile index b8eba1a44..6f86925a6 100644 --- a/v4l/Makefile +++ b/v4l/Makefile @@ -244,66 +244,56 @@ reload:: ################################################# # Configuration rules -# SHELL used by kbuild -CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \ - else if [ -x /bin/bash ]; then echo /bin/bash; \ - else echo sh; fi ; fi) - -build := srctree=$(KDIR) HOSTCXX="$(CXX)" HOSTCC="$(HOSTCC)" CONFIG_SHELL="$(CONFIG_SHELL)" -f $(KDIR)/scripts/Makefile.build obj - -xconfig:: links .version - -if [ ! -f $(KDIR)/scripts/kconfig/qconf ]; then \ - $(MAKE) -C $(KDIR) $(build)=scripts/kconfig qconf-target=1 scripts/kconfig/qconf; \ - fi +# Kernel config programs +QCONF := $(KDIR)/scripts/kconfig/qconf +GCONF := $(KDIR)/scripts/kconfig/gconf +MCONF := $(KDIR)/scripts/kconfig/mconf +CONF := $(KDIR)/scripts/kconfig/conf + +# lxdialog can be in either scripts/lxdialog or scripts/kconfig/lxdialog +LXDIALOG_DIR := $(shell if [ -d $(KDIR)/scripts/kconfig/lxdialog ]; then echo kconfig/ ; fi) +LXDIALOG_LNK := $(if $(LXDIALOG_DIR),scripts/kconfig,scripts/lxdialog) +LXDIALOG := $(KDIR)/scripts/$(LXDIALOG_DIR)lxdialog/lxdialog + +xconfig:: links .version $(QCONF) ./scripts/make_kconfig.pl - $(KDIR)/scripts/kconfig/qconf Kconfig + $(QCONF) Kconfig ./scripts/make_noconfig.pl -gconfig:: links .version - -if [ ! -f $(KDIR)/scripts/kconfig/gconf ]; then \ - $(MAKE) -C $(KDIR) $(build)=scripts/kconfig scripts/kconfig/gconf; \ - fi +gconfig:: links .version $(GCONF) ./scripts/make_kconfig.pl - $(KDIR)/scripts/kconfig/gconf Kconfig + $(QCONF) Kconfig ./scripts/make_noconfig.pl -config:: links .version - -if [ ! -f $(KDIR)/scripts/kconfig/conf ]; then \ - $(MAKE) -C $(KDIR) $(build)=scripts/kconfig scripts/kconfig/conf; \ - fi +config:: links .version $(CONF) ./scripts/make_kconfig.pl - $(KDIR)/scripts/kconfig/conf Kconfig + $(CONF) Kconfig ./scripts/make_noconfig.pl -menuconfig:: links .version +menuconfig:: links .version $(MCONF) lxdialog ./scripts/make_kconfig.pl - -rm scripts/lxdialog scripts/kconfig - -if [ -d $(KDIR)/scripts/lxdialog ]; then \ - if [ ! -f $(KDIR)/scripts/lxdialog/lxdialog ]; then \ - $(MAKE) -C $(KDIR) $(build)=scripts/lxdialog; \ - fi; \ - ln -s $(KDIR)/scripts/lxdialog scripts/lxdialog; \ - fi - - -if [ -d $(KDIR)/scripts/kconfig ]; then \ - if [ -d $(KDIR)/scripts/kconfig/lxdialog ]; then \ - if [ ! -f $(KDIR)/scripts/kconfig/lxdialog ]; then \ - $(MAKE) -C $(KDIR) $(build)=scripts/kconfig/lxdialog; \ - fi; \ - fi; \ - if [ ! -f $(KDIR)/scripts/kconfig/mconf ]; then \ - $(MAKE) -C $(KDIR) $(build)=scripts/kconfig scripts/kconfig/mconf; \ - fi; \ - ln -s $(KDIR)/scripts/kconfig scripts/kconfig; \ - fi - - $(KDIR)/scripts/kconfig/mconf Kconfig + $(MCONF) Kconfig ./scripts/make_noconfig.pl allyesconfig allmodconfig:: links .version ./scripts/make_kconfig.pl 1 ./scripts/make_noconfig.pl +# rule to build kernel conf programs +KMAKEVARS := config-targets=1 mixed-targets=0 dot-config=0 +$(QCONF) $(GCONF) $(MCONF) $(CONF): + $(MAKE) -C $(KDIR) -f $(PWD)/Makefile.kernel $(KMAKEVARS) v4l-$(notdir $@) + +# lxdialog has two parts, a symlink and the actual binary +.PHONY: lxdialog +lxdialog: $(LXDIALOG) $(LXDIALOG_LNK) + +$(LXDIALOG_LNK): + ln -snf $(KDIR)/$(LXDIALOG_LNK) $(LXDIALOG_LNK) + +$(LXDIALOG): + $(MAKE) -C $(KDIR) -f $(PWD)/Makefile.kernel $(KMAKEVARS) v4l-$(LXDIALOG) + ################################################# # IVTV link rules |