# __________ __ ___. # Open \______ \ ____ ____ | | _\_ |__ _______ ___ # Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / # Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < # Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ # \/ \/ \/ \/ \/ # $Id$ # ifndef V SILENT=@ endif # Needed to build the features list. INCLUDES= $(TARGET_INC) -I$(FIRMDIR)/include -I$(FIRMDIR)/export -I. -I$(BUILDDIR) \ -I$(BUILDDIR)/bitmaps -I$(OBJDIR) .PHONY: all buildmanual clean MANFILE := rockbox-build VERSION= `$(TOOLSDIR)/version.sh $(ROOTDIR)` all: manual-pdf features: $(OBJDIR)/features manual-prep: rockbox.tex @if [ "$(OBJDIR)" = "" ]; then echo Run make in you build directory!; false; fi @mkdir -p $(OBJDIR) @find * -type d \! -regex '.*\.svn.*' -exec mkdir -p $(OBJDIR)/{} \; @find * -type f \! -regex '.*\.svn.*' -exec cp {} $(OBJDIR)/{} \; @printf "%s%%" $(VERSION) > $(OBJDIR)/version.tex @perl credits.pl < $(DOCSDIR)/CREDITS > $(OBJDIR)/CREDITS.tex @printf "\\\\newcommand{\\\\platform}{${MANUALDEV}}\n" > $(OBJDIR)/$(MANFILE).tex @printf "\\\\newcommand{\\\\buildversion}{$(VERSION)}\n" >> $(OBJDIR)/$(MANFILE).tex @printf "\\\\input{rockbox.tex}\n" >> $(OBJDIR)/$(MANFILE).tex @mv $(OBJDIR)/Makefile.pdflatex $(OBJDIR)/Makefile $(OBJDIR)/features: $(ROOTDIR)/apps/features.txt @echo "processing $(notdir $^)" $(SILENT)mkdir -p `dirname $@` $(SILENT)cat $< | $(HOSTCC) -DMEMORYSIZE=$(MEMORYSIZE) $(INCLUDES) \ $(TARGET) $(DEFINES) $(EXTRA_DEFINES) -E -P -imacros "config.h" -imacros "button.h" - | \ grep -v "^\#" | grep -v "^$$" > $@; \ for f in `cat $(OBJDIR)/features`; do feat="$$feat\\n\\\\edef\\\\UseOption{\\\\UseOption,$$f}" ; done ; \ printf "$$feat" >$(OBJDIR)/features.tex manual-pdf: features manual-prep rockbox.tex $(MAKE) -C $(OBJDIR) buildmanual manual-html: features manual-prep rockbox.tex $(MAKE) -C $(OBJDIR) buildhtml manual-txt: manual-html $(MAKE) -C $(OBJDIR) buildtxt manual-txt-zip: manual-txt $(MAKE) -C $(OBJDIR) txtzip manual-zip: manual-html $(MAKE) -C $(OBJDIR) htmlzip clean: @if [ "$(OBJDIR)" = "" ]; then echo Run make in you build directory!; false; fi @rm -rf $(OBJDIR)/manual $(OBJDIR)/*.pdf @rm -rf $(OBJDIR)/html $(OBJDIR)/txt