author | kergoth <kergoth> | 2002-11-05 20:23:45 (UTC) |
---|---|---|
committer | kergoth <kergoth> | 2002-11-05 20:23:45 (UTC) |
commit | 8e8ffc20d1699ba678d380f25e08424492f7d8ab (patch) (unidiff) | |
tree | 7a9241f6706a35e8885614d5f0f509622b1eabe4 /Rules.make | |
parent | 8eda06d13cf3eacf986cf1ab32c884c64ee972ae (diff) | |
download | opie-8e8ffc20d1699ba678d380f25e08424492f7d8ab.zip opie-8e8ffc20d1699ba678d380f25e08424492f7d8ab.tar.gz opie-8e8ffc20d1699ba678d380f25e08424492f7d8ab.tar.bz2 |
Use stampfile to ensure header symlinks are in place
-rw-r--r-- | Rules.make | 20 |
1 files changed, 20 insertions, 0 deletions
@@ -1,42 +1,62 @@ | |||
1 | ## targets ## | 1 | ## targets ## |
2 | 2 | ||
3 | $(configs) : | 3 | $(configs) : |
4 | $(call makecfg,$@) | 4 | $(call makecfg,$@) |
5 | 5 | ||
6 | $(TOPDIR)/.depends : $(shell if [ -e $(TOPDIR)/config.in ]\; then echo $(TOPDIR)/config.in\; fi\;) $(TOPDIR)/.config $(TOPDIR)/packages | 6 | $(TOPDIR)/.depends : $(shell if [ -e $(TOPDIR)/config.in ]\; then echo $(TOPDIR)/config.in\; fi\;) $(TOPDIR)/.config $(TOPDIR)/packages |
7 | @echo Generating dependency information... | 7 | @echo Generating dependency information... |
8 | # add to subdir-y, and add descend rules | 8 | # add to subdir-y, and add descend rules |
9 | @cat $(TOPDIR)/packages | \ | 9 | @cat $(TOPDIR)/packages | \ |
10 | awk '/^#/ { next }; {print \ | 10 | awk '/^#/ { next }; {print \ |
11 | ".PHONY : " $$2 "\n" \ | 11 | ".PHONY : " $$2 "\n" \ |
12 | "subdir-$$(" $$1 ") += " $$2 "\n\n" \ | 12 | "subdir-$$(" $$1 ") += " $$2 "\n\n" \ |
13 | $$2 "/Makefile : " $$2 "/" $$3 " $$(TOPDIR)/qmake/qmake\n\t" \ | 13 | $$2 "/Makefile : " $$2 "/" $$3 " $$(TOPDIR)/qmake/qmake\n\t" \ |
14 | "$$(call makefilegen,$$@)\n\n" \ | 14 | "$$(call makefilegen,$$@)\n\n" \ |
15 | $$2 " : " $$2 "/Makefile\n\t$$(call descend,$$@)\n"}'\ | 15 | $$2 " : " $$2 "/Makefile\n\t$$(call descend,$$@)\n"}'\ |
16 | > $(TOPDIR)/.depends | 16 | > $(TOPDIR)/.depends |
17 | # interpackage dependency generation | 17 | # interpackage dependency generation |
18 | @cat $(TOPDIR)/packages | \ | 18 | @cat $(TOPDIR)/packages | \ |
19 | $(TOPDIR)/scripts/deps.pl >> $(TOPDIR)/.depends | 19 | $(TOPDIR)/scripts/deps.pl >> $(TOPDIR)/.depends |
20 | 20 | ||
21 | $(TOPDIR)/.depends.cfgs: | 21 | $(TOPDIR)/.depends.cfgs: |
22 | # config.in interdependencies | 22 | # config.in interdependencies |
23 | @echo $(configs) | sed -e 's,/config.in,,g' | ( for i in `cat`; do echo $$i; done ) > dirs | 23 | @echo $(configs) | sed -e 's,/config.in,,g' | ( for i in `cat`; do echo $$i; done ) > dirs |
24 | @cat dirs | ( for i in `cat`; do if [ "`cat dirs|grep $$i 2>/dev/null|wc -l`" -ne "1" ]; then deps=`cat dirs|grep $$i| grep -v "^$$i$$"|for i in \`cat|sed -e's,^$(TOPDIR)/,$$(TOPDIR)/,g'\`; do echo $$i/config.in; done`; echo `echo $$i/config.in|sed -e 's,^$(TOPDIR)/,$$(TOPDIR)/,'` : $$deps; fi; done ) >> $@ | 24 | @cat dirs | ( for i in `cat`; do if [ "`cat dirs|grep $$i 2>/dev/null|wc -l`" -ne "1" ]; then deps=`cat dirs|grep $$i| grep -v "^$$i$$"|for i in \`cat|sed -e's,^$(TOPDIR)/,$$(TOPDIR)/,g'\`; do echo $$i/config.in; done`; echo `echo $$i/config.in|sed -e 's,^$(TOPDIR)/,$$(TOPDIR)/,'` : $$deps; fi; done ) >> $@ |
25 | @-rm -f dirs | 25 | @-rm -f dirs |
26 | 26 | ||
27 | $(TOPDIR)/stamp-headers : | ||
28 | mkdir -p $(TOPDIR)/include/qpe $(TOPDIR)/include/qtopia \ | ||
29 | $(TOPDIR)/include/opie $(TOPDIR)/include/qtopia/private | ||
30 | ( cd include/qpe && rm -f *.h; ln -s ../../library/*.h .; ln -s ../../library/backend/*.h .; rm -f *_p.h; ) | ||
31 | ( cd include/qtopia && rm -f *.h; ln -s ../../library/*.h .; ) | ||
32 | ( cd include/qtopia/private && rm -f *.h; ln -s ../../../library/backend/*.h .; ) | ||
33 | ( cd include/opie && rm -f *.h; ln -s ../../libopie/*.h .; rm -f *_p.h; ) | ||
34 | ( cd include/opie && ln -s ../../libsql/*.h .; ) | ||
35 | ( cd include/opie && ln -s ../../libopie/pim/*.h .; ) | ||
36 | ( cd include/opie; for generatedHeader in `cd ../../libopie; ls *.ui | sed -e "s,\.ui,\.h,g"`; do \ | ||
37 | ln -s ../../libopie/$$generatedHeader $$generatedHeader; done ) | ||
38 | touch $@ | ||
39 | |||
40 | |||
41 | |||
27 | $(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 $(TOPDIR)/qmake/qmake : | 42 | $(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 $(TOPDIR)/qmake/qmake : |
28 | $(call descend,$(shell dirname $@),$(shell basename $@)) | 43 | $(call descend,$(shell dirname $@),$(shell basename $@)) |
29 | 44 | ||
45 | $(TOPDIR)/qmake/qmake : $(TOPDIR)/mkspecs/default | ||
46 | |||
47 | $(TOPDIR)/mkspecs/default : | ||
48 | ln -sf linux-g++ $@ | ||
49 | |||
30 | ## general rules ## | 50 | ## general rules ## |
31 | 51 | ||
32 | define descend | 52 | define descend |
33 | $(MAKE) -C $(1) $(2) | 53 | $(MAKE) -C $(1) $(2) |
34 | endef | 54 | endef |
35 | 55 | ||
36 | define makefilegen | 56 | define makefilegen |
37 | cd $(shell dirname $(1)); $(TOPDIR)/qmake/qmake $(3) -o $(shell basename $(1)) `echo $(1)|sed -e 's,/Makefile$$,,g' -e 's,.*/,,g'`.pro | 57 | cd $(shell dirname $(1)); $(TOPDIR)/qmake/qmake $(3) -o $(shell basename $(1)) `echo $(1)|sed -e 's,/Makefile$$,,g' -e 's,.*/,,g'`.pro |
38 | endef | 58 | endef |
39 | 59 | ||
40 | define makecfg | 60 | define makecfg |
41 | $(TOPDIR)/scripts/makecfg.pl $1 | 61 | $(TOPDIR)/scripts/makecfg.pl $1 |
42 | endef | 62 | endef |