diff options
author | Dominik Riebeling <Dominik.Riebeling@gmail.com> | 2011-11-05 10:53:10 +0000 |
---|---|---|
committer | Dominik Riebeling <Dominik.Riebeling@gmail.com> | 2011-11-05 10:53:10 +0000 |
commit | 3a66005739da7b757711d8f6424c86f6293d81b5 (patch) | |
tree | b9bfa2087fdef4e0128ba799f2fa12649f3d8118 | |
parent | 767672df4ce25bc0eefce00a4aef46b452e83181 (diff) | |
download | rockbox-3a66005739da7b757711d8f6424c86f6293d81b5.tar.gz rockbox-3a66005739da7b757711d8f6424c86f6293d81b5.zip |
Rework manual Makefile a bit.
- move some stuff out of manual-prep and improve dependencies.
- always update version information, version.sh is run anyway.
- use $(SILENT) in more places to allow showing the commands.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30902 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | manual/Makefile | 63 |
1 files changed, 38 insertions, 25 deletions
diff --git a/manual/Makefile b/manual/Makefile index cfccc4d7b2..6e5241c187 100644 --- a/manual/Makefile +++ b/manual/Makefile | |||
@@ -15,28 +15,42 @@ endif | |||
15 | INCLUDES= $(TARGET_INC) -I$(FIRMDIR)/include -I$(FIRMDIR)/export -I. -I$(BUILDDIR) \ | 15 | INCLUDES= $(TARGET_INC) -I$(FIRMDIR)/include -I$(FIRMDIR)/export -I. -I$(BUILDDIR) \ |
16 | -I$(BUILDDIR)/bitmaps -I$(OBJDIR) | 16 | -I$(BUILDDIR)/bitmaps -I$(OBJDIR) |
17 | 17 | ||
18 | .PHONY: all buildmanual clean | 18 | .PHONY: all buildmanual clean objdir-check |
19 | MANFILE := rockbox-build | 19 | MANFILE := rockbox-build |
20 | 20 | ||
21 | VERSION= `$(TOOLSDIR)/version.sh $(ROOTDIR)` | 21 | VERSION= `$(TOOLSDIR)/version.sh $(ROOTDIR)` |
22 | 22 | ||
23 | .PHONY: $(OBJDIR)/version.tex $(OBJDIR)/$(MANFILE).tex | ||
24 | |||
23 | all: manual-pdf | 25 | all: manual-pdf |
24 | 26 | ||
25 | features: $(OBJDIR)/features | 27 | features: $(OBJDIR)/features.tex |
26 | 28 | ||
27 | manual-prep: rockbox.tex | 29 | objdir-check: |
28 | @if [ "$(OBJDIR)" = "" ]; then echo Run make in you build directory!; false; fi | 30 | @if [ "$(OBJDIR)" = "" ]; then echo Run make in you build directory!; false; fi |
29 | @mkdir -p $(OBJDIR) | 31 | |
30 | @find * -type d \! -regex '.*\.svn.*' -exec mkdir -p $(OBJDIR)/{} \; | 32 | |
31 | @find * -type f \! -regex '.*\.svn.*' -exec cp {} $(OBJDIR)/{} \; | 33 | manual-prep: objdir-check rockbox.tex $(OBJDIR)/CREDITS.tex $(OBJDIR)/version.tex $(OBJDIR)/$(MANFILE).tex |
32 | @printf "%s%%" $(VERSION) > $(OBJDIR)/version.tex | 34 | $(SILENT)mkdir -p $(OBJDIR) |
33 | @perl credits.pl < $(DOCSDIR)/CREDITS > $(OBJDIR)/CREDITS.tex | 35 | $(SILENT)find * -type d \! -regex '.*\.svn.*' -exec mkdir -p $(OBJDIR)/{} \; |
34 | @printf "\\\\newcommand{\\\\platform}{${MANUALDEV}}\n" > $(OBJDIR)/$(MANFILE).tex | 36 | $(SILENT)find * -type f \! -regex '.*\.svn.*' -exec cp {} $(OBJDIR)/{} \; |
35 | @printf "\\\\newcommand{\\\\buildversion}{$(VERSION)}\n" >> $(OBJDIR)/$(MANFILE).tex | 37 | $(SILENT)mv $(OBJDIR)/Makefile.pdflatex $(OBJDIR)/Makefile |
36 | @printf "\\\\input{rockbox.tex}\n" >> $(OBJDIR)/$(MANFILE).tex | 38 | |
37 | @mv $(OBJDIR)/Makefile.pdflatex $(OBJDIR)/Makefile | 39 | $(OBJDIR)/$(MANFILE).tex: |
38 | 40 | @echo "creating $(notdir $@)" | |
39 | $(OBJDIR)/features: $(ROOTDIR)/apps/features.txt | 41 | $(SILENT)printf "\\\\newcommand{\\\\platform}{${MANUALDEV}}\n" > $(OBJDIR)/$(MANFILE).tex |
42 | $(SILENT)printf "\\\\newcommand{\\\\buildversion}{$(VERSION)}\n" >> $(OBJDIR)/$(MANFILE).tex | ||
43 | $(SILENT)printf "\\\\input{rockbox.tex}\n" >> $(OBJDIR)/$(MANFILE).tex | ||
44 | |||
45 | $(OBJDIR)/CREDITS.tex: $(DOCSDIR)/CREDITS | ||
46 | @echo "processing $(notdir $^)" | ||
47 | $(SILENT)perl credits.pl < $(DOCSDIR)/CREDITS > $(OBJDIR)/CREDITS.tex | ||
48 | |||
49 | $(OBJDIR)/version.tex: | ||
50 | @echo "creating $(notdir $@)" | ||
51 | $(SILENT)printf "%s%%" $(VERSION) > $(OBJDIR)/version.tex | ||
52 | |||
53 | $(OBJDIR)/features.tex: $(ROOTDIR)/apps/features.txt | ||
40 | @echo "processing $(notdir $^)" | 54 | @echo "processing $(notdir $^)" |
41 | $(SILENT)mkdir -p `dirname $@` | 55 | $(SILENT)mkdir -p `dirname $@` |
42 | $(SILENT)cat $< | $(HOSTCC) -DMEMORYSIZE=$(MEMORYSIZE) $(INCLUDES) \ | 56 | $(SILENT)cat $< | $(HOSTCC) -DMEMORYSIZE=$(MEMORYSIZE) $(INCLUDES) \ |
@@ -45,22 +59,21 @@ $(OBJDIR)/features: $(ROOTDIR)/apps/features.txt | |||
45 | for f in `cat $(OBJDIR)/features`; do feat="$$feat\\n\\\\edef\\\\UseOption{\\\\UseOption,$$f}" ; done ; \ | 59 | for f in `cat $(OBJDIR)/features`; do feat="$$feat\\n\\\\edef\\\\UseOption{\\\\UseOption,$$f}" ; done ; \ |
46 | printf "$$feat" >$(OBJDIR)/features.tex | 60 | printf "$$feat" >$(OBJDIR)/features.tex |
47 | 61 | ||
48 | manual-pdf: features manual-prep rockbox.tex | 62 | manual-pdf: objdir-check features manual-prep rockbox.tex |
49 | $(MAKE) -C $(OBJDIR) buildmanual | 63 | $(SILENT)$(MAKE) -C $(OBJDIR) buildmanual |
50 | 64 | ||
51 | manual-html: features manual-prep rockbox.tex | 65 | manual-html: objdir-check features manual-prep rockbox.tex |
52 | $(MAKE) -C $(OBJDIR) buildhtml | 66 | $(SILENT)$(MAKE) -C $(OBJDIR) buildhtml |
53 | 67 | ||
54 | manual-txt: manual-html | 68 | manual-txt: manual-html |
55 | $(MAKE) -C $(OBJDIR) buildtxt | 69 | $(SILENT)$(MAKE) -C $(OBJDIR) buildtxt |
56 | 70 | ||
57 | manual-txt-zip: manual-txt | 71 | manual-txt-zip: manual-txt |
58 | $(MAKE) -C $(OBJDIR) txtzip | 72 | $(SILENT)$(MAKE) -C $(OBJDIR) txtzip |
59 | 73 | ||
60 | manual-zip: manual-html | 74 | manual-zip: manual-html |
61 | $(MAKE) -C $(OBJDIR) htmlzip | 75 | $(SILENT)$(MAKE) -C $(OBJDIR) htmlzip |
62 | 76 | ||
63 | clean: | 77 | clean: objdir-check |
64 | @if [ "$(OBJDIR)" = "" ]; then echo Run make in you build directory!; false; fi | 78 | $(SILENT)rm -rf $(OBJDIR)/manual $(OBJDIR)/*.pdf |
65 | @rm -rf $(OBJDIR)/manual $(OBJDIR)/*.pdf | 79 | $(SILENT)rm -rf $(OBJDIR)/html $(OBJDIR)/txt |
66 | @rm -rf $(OBJDIR)/html $(OBJDIR)/txt | ||