summaryrefslogtreecommitdiff
authorkergoth <kergoth>2002-11-05 17:37:14 (UTC)
committer kergoth <kergoth>2002-11-05 17:37:14 (UTC)
commite0ad922e8a2599a9c3f5c4b2ef32f18d4ac6b44c (patch) (side-by-side diff)
tree72a2d40e09ad865e0082d7ff204fc4160482bedd
parentcf2ae9bf818d7cdddc56a3d6eea21ded4e815b68 (diff)
downloadopie-e0ad922e8a2599a9c3f5c4b2ef32f18d4ac6b44c.zip
opie-e0ad922e8a2599a9c3f5c4b2ef32f18d4ac6b44c.tar.gz
opie-e0ad922e8a2599a9c3f5c4b2ef32f18d4ac6b44c.tar.bz2
Rule consolodation
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--Rules.make18
1 files changed, 7 insertions, 11 deletions
diff --git a/Rules.make b/Rules.make
index 96e528b..362659a 100644
--- a/Rules.make
+++ b/Rules.make
@@ -1,45 +1,41 @@
## targets ##
$(configs) :
$(call makecfg,$@)
$(TOPDIR)/.depends : $(TOPDIR)/config.in
+ # add to subdir-y, and add descend rules
@cat $(TOPDIR)/packages | \
awk '/^#/ { next }; {print \
".PHONY : " $$2 "\n" \
"subdir-$$(" $$1 ") += " $$2 "\n\n" \
$$2 "/Makefile : " $$2 "/" $$3 " $$(TOPDIR)/qmake/qmake\n\t" \
"$$(call makefilegen,$$@)\n\n" \
$$2 " : " $$2 "/Makefile\n\t$$(call descend,$$@)\n"}'\
> $(TOPDIR)/.depends
+ # interpackage dependency generation
@cat $(TOPDIR)/packages | \
$(TOPDIR)/scripts/deps.pl >> $(TOPDIR)/.depends
+ # generation of config.in files, and config.in interdependencies
+ find ./ -name config.in | ( for cfg in `cat`; do dir=`dirname $cfg`; name=`basename $dir`; if [ ! -e $dir/$name.pro ]; then echo $dir; fi; done; ) > dirs
+ cat dirs | for i in `cat`; do numlines="`cat dirs|grep $i 2>/dev/null|wc -l`"; if [ "$numlines" -ne "1" ]; then deps=`cat dirs|grep $i| grep -v "^$i$"|for i in \`cat|sed -e's,^./,$(TOPDIR)/,g'\`; do echo $i/config.in; done`; echo `echo $i|sed -e 's,^./,$(TOPDIR)/,'` : $deps; fi; done;
$(TOPDIR)/qmake/qmake :
$(call descend,$(TOPDIR)/qmake)
-$(TOPDIR)/scripts/lxdialog/lxdialog :
- $(call descend,$(TOPDIR)/scripts/lxdialog)
-
-$(TOPDIR)/scripts/kconfig/conf scripts/kconfig/conf:
- $(call descend,$(TOPDIR)/scripts/kconfig,conf)
-
-$(TOPDIR)/scripts/kconfig/mconf scripts/kconfig/mconf:
- $(call descend,$(TOPDIR)/scripts/kconfig,mconf)
-
-$(TOPDIR)/scripts/kconfig/qconf scripts/kconfijg/qconf:
- $(call descend,$(TOPDIR)/scripts/kconfig,qconf)
+$(TOPDIR)/scripts/lxdialog/lxdialog $(TOPDIR)/scripts/kconfig/conf scripts/kconfig/conf $(TOPDIR)/scripts/kconfig/mconf scripts/kconfig/mconf $(TOPDIR)/scripts/kconfig/qconf scripts/kconfig/qconf :
+ $(call descend,$(shell dirname $@),$(shell basename $@))
## general rules ##
define descend
$(MAKE) -C $(1) $(2)
endef
define makefilegen
cd $(shell dirname $(1)); $(TOPDIR)/qmake/qmake $(3) -o $(shell basename $(1)) `echo $(1)|sed -e 's,/Makefile$$,,g' -e 's,.*/,,g'`.pro
endef
define makecfg
$(TOPDIR)/scripts/makecfg.pl $1
endef