Dbtoepub is actually not used, comment out
[project-aon.git] / common / epub / Makefile.common
index 1cca39f..43fc645 100644 (file)
@@ -17,26 +17,51 @@ COVERIMAGE := $(AONROOTDIR)/$(BLANG)/jpeg/$(SERIES)/$(BASENAME)/skins/ebook/cove
 # Location of the font files, this is adjustable here in order to make it possible to run
 # the build scripts as not all developers might have the Souvernir fonts.
 
-# Option 1 (to be used for official builds) - Souvenir font 
-# ---------------------------------------------------------
-# Use this when using Souvenir fonts and make sure the font is available in the directory you configure here. 
-# Note that the fontfiles are *not* available in Project Aon's SVN repository as they are not under
-# a free license
+# Option 1 (to be used for the Lone wolf and Grey star series) - Souvenir font 
+# ---------------------------------------------------------------------------
+# Use this when buidling Lone Wolf books, using Souvenir fonts and make sure
+# the font is available in the directory you configure here.  Note that the
+# fontfiles are *not* available in Project Aon's SVN repository as they are not
+# under a free license. For more information see /common/fonts/README.txt
 #
 # If using this configure, please make sure the following fonts are available in this directory:
 # SouvenirStd-DemiItalic.otf  SouvenirStd-Demi.otf  SouvenirStd-LightItalic.otf  SouvenirStd-Light.otf
 
-# FONTDIR := $(AONROOTDIR)/../fontfiles/
-
-# Option 2 (to be used for test builds) - Carlito font 
-# ---------------------------------------------------------
-# Use this when running test builds and you do not have the Souvenir font available.
-# This will build the documents using the fonts available in the SVN repository which
-# (at the time of this writting) are the Carlito font, which is distributed with an Open Font license.
+ifeq ($(SERIES), lw)
+FONTDIR := $(AONROOTDIR)/../fontfiles/
+endif
+ifeq ($(SERIES), gs)
+FONTDIR := $(AONROOTDIR)/../fontfiles/
+endif
+
+# Option 2 (to be used for Freway Warrior series builds) - Carlito font 
+# ---------------------------------------------------------------------
+# Use this when running builds of the Freeway Warrior series using the Carlito
+# fonts.  This will build the documents using the fonts available in the SVN
+# repository which (at the time of this writting) are the Carlito font, which
+# is distributed with an Open Font license.
+
+ifeq ($(SERIES), fw)
+FONTDIR := $(AONROOTDIR)/common/fonts/
+endif
+# --------------------------------- END FONT SELECTION -----------------------------------------------------------
 
+ifndef FONTDIR
+$(info FONTDIR is not defined,  defauling to AONROOTDIR/common/fonts/)
 FONTDIR := $(AONROOTDIR)/common/fonts/
+endif
+
+# Sanity checks before going further
+ifndef SERIES
+$(error WARNING: Book series is not defined, please define variable 'SERIES')
+endif
+ifndef BLANG
+$(error WARNING: Book language is not defined, please define variable 'BLANG')
+endif
+ifndef BASENAME
+$(error WARNING: Book basic name is not defined, please define variable 'BASENAME')
+endif
 
-# --------------------------------- END FONT SELECTION -----------------------------------------------------------
 
 EPUB=$(BASENAME).epub
 MOBI=$(BASENAME).mobi
@@ -66,8 +91,11 @@ XSLFILES=$(RELXSLDIR)/epub-opf-metadata.xsl $(RELXSLDIR)/epub-xhtml.xsl  \
 epub: $(EPUB)
 $(AONROOTDIR)/$(BLANG)/epub/$(SERIES)/$(BASENAME)/$(EPUB): $(XMLFILE) $(EPUBSCRIPT) $(XSLFILES)
        cd $(AONROOTDIR) && perl $(EPUBSCRIPT) --language=$(BLANG) --font-files=$(FONTDIR) $(BASENAME) 
+# Alternate generation mechanism
+#      @[ -x  `which dbtoepub` ] || { echo "ERROR: Cannot find 'dbtoepub', please install this package" >&2; exit 1;  }
+#      dbtoepub -o $(BOOK) $(XMLFILE) >$(BOOK).log 2>&1; \
 
-$(EPUB): $(AONROOTDIR)/$(BLANG)/epub/$(SERIES)/$(BASENAME)/$(EPUB)
+$(EPUB): $(AONROOTDIR)/$(BLANG)/epub/$(SERIES)/$(BASENAME)/$(EPUB) ebook-convert
        cp -p $(AONROOTDIR)/$(BLANG)/epub/$(SERIES)/$(BASENAME)/$(EPUB) .
 # Regenerate to include the covers properly within the Ebook and fix the EPUB
        ebook-convert $(EPUB) regen_$(EPUB) --cover $(COVERIMAGE)
@@ -78,37 +106,40 @@ $(EPUB): $(AONROOTDIR)/$(BLANG)/epub/$(SERIES)/$(BASENAME)/$(EPUB)
 # Convert to other formats. For a full list of format that we can convert to using 
 # Calibre see http://manual.calibre-ebook.com/cli/ebook-convert.html
 
+ebook-convert:
+       @[ -x  `which ebook-convert` ] || { echo "ERROR: Cannot find 'ebook-convert', please install Calibre" >&2; exit 1;  }
+
 # Generate the mobi file from the ePub (Mobipocket format)
 mobi: $(MOBI)
-%.mobi: %.epub
+%.mobi: %.epub ebook-convert
         ebook-convert $< $@
 
 # Generate the pdb file from the ePub (eReader / Palm Media format)
-%.pdb: %.epub
+%.pdb: %.epub ebook-convert
         ebook-convert $< $@
 
 # Generate the lrf file from the ePub (Broadband eBooks (BBeB) format)
-%.lrf: %.epub
+%.lrf: %.epub ebook-convert
         ebook-convert $< $@
 
 # Generate the lit file from the ePub (Microsoft LIT format for Microsoft Reader)
-%.lit: %.epub
+%.lit: %.epub ebook-convert
         ebook-convert $< $@
 
 # Generate the pdf file from the ePub 
-%.pdf: %.epub
+%.pdf: %.epub ebook-convert
         ebook-convert $< $@
 
 # Generate the snb file from the ePub 
-%.snb: %.epub
+%.snb: %.epub ebook-convert
         ebook-convert $< $@
 
 # Generate the pml file from the ePub 
-%.pml: %.epub
+%.pml: %.epub ebook-convert
         ebook-convert $< $@
 
 # Generate the fb2 file from the ePub  (Fictionbook format used by BeBook, PocketBook, Cybook, Papyre and others)
-%.fb2: %.epub
+%.fb2: %.epub ebook-convert
         ebook-convert $< $@
 
 
@@ -154,4 +185,4 @@ clean:
 distclean: clean
        -rm -rf $(AONROOTDIR)/$(BLANG)/epub/$(SERIES)/$(BASENAME)/
 
-.PHONY: all install publish clean distclean epub mobi
+.PHONY: all install publish clean distclean epub mobi ebook-convert