# Relative location of the xsl files
RELXSLDIR := $(AONROOTDIR)/common/xsl
EPUBSCRIPT := $(RELSCRIPT)/gbtoepub.pl
+COVERSCRIPT := $(RELSCRIPT)/create-epub-cover.pl
COVERIMAGE := $(AONROOTDIR)/$(BLANG)/jpeg/$(SERIES)/$(BASENAME)/skins/ebook/cover.jpg
+ALTCOVERIMAGE := $(AONROOTDIR)/$(BLANG)/epub/$(SERIES)/$(BASENAME)/OEBPS/cover.jpg
# -------------------------------- BEGIN FONT SELECTION -----------------------------------------------------------
# Location of the font files, this is adjustable here in order to make it possible to run
ifeq ($(SERIES), lw)
FONTDIR := $(AONROOTDIR)/../fontfiles/
endif
+ifeq ($(SERIES), ls)
+FONTDIR := $(AONROOTDIR)/../fontfiles/
+endif
ifeq ($(SERIES), gs)
FONTDIR := $(AONROOTDIR)/../fontfiles/
endif
# Generate the ePub file from the XML file
epub: $(EPUB)
-$(AONROOTDIR)/$(BLANG)/epub/$(SERIES)/$(BASENAME)/$(EPUB): $(XMLFILE) $(EPUBSCRIPT) $(XSLFILES)
+$(AONROOTDIR)/$(BLANG)/epub/$(SERIES)/$(BASENAME)/$(EPUB): $(XMLFILE) $(XSLFILES)
cd $(AONROOTDIR) && perl $(EPUBSCRIPT) --language=$(BLANG) --font-files=$(FONTDIR) $(BASENAME)
+# Create cover page if not existing
+ @if [ ! -e $(COVERIMAGE) ] ; then \
+ cd $(AONROOTDIR) && perl $(COVERSCRIPT) --language=$(BLANG) --font-files=$(FONTDIR) $(BASENAME) ; \
+ fi
-$(EPUB): $(AONROOTDIR)/$(BLANG)/epub/$(SERIES)/$(BASENAME)/$(EPUB) ebook-convert
+$(EPUB): $(AONROOTDIR)/$(BLANG)/epub/$(SERIES)/$(BASENAME)/$(EPUB)
+ @[ -x `which ebook-convert` ] || { echo "ERROR: Cannot find 'ebook-convert', please install Calibre" >&2; exit 1; }
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)
+ @if [ -e $(ALTCOVERIMAGE) ] && [ ! -e $(COVERIMAGE) ] ; then \
+ ebook-convert $(EPUB) regen_$(EPUB) --cover $(ALTCOVERIMAGE) ; \
+ fi
+ @if [ -e $(COVERIMAGE) ] ; then \
+ ebook-convert $(EPUB) regen_$(EPUB) --cover $(COVERIMAGE) ; \
+ fi
+ @if [ ! -e $(ALTCOVERIMAGE) ] && [ ! -e $(COVERIMAGE) ] ; then \
+ ebook-convert $(EPUB) regen_$(EPUB) ; \
+ fi
+
mv regen_$(EPUB) $(EPUB)
-rm -f cover.jpg $(BASENAME).opf
# 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 ebook-convert
+%.mobi: %.epub
+ @[ -x `which ebook-convert` ] || { echo "ERROR: Cannot find 'ebook-convert', please install Calibre" >&2; exit 1; }
ebook-convert $< $@
# Generate the pdb file from the ePub (eReader / Palm Media format)
-%.pdb: %.epub ebook-convert
+%.pdb: %.epub
+ @[ -x `which ebook-convert` ] || { echo "ERROR: Cannot find 'ebook-convert', please install Calibre" >&2; exit 1; }
ebook-convert $< $@
# Generate the lrf file from the ePub (Broadband eBooks (BBeB) format)
-%.lrf: %.epub ebook-convert
+%.lrf: %.epub
+ @[ -x `which ebook-convert` ] || { echo "ERROR: Cannot find 'ebook-convert', please install Calibre" >&2; exit 1; }
ebook-convert $< $@
# Generate the lit file from the ePub (Microsoft LIT format for Microsoft Reader)
-%.lit: %.epub ebook-convert
+%.lit: %.epub
+ @[ -x `which ebook-convert` ] || { echo "ERROR: Cannot find 'ebook-convert', please install Calibre" >&2; exit 1; }
ebook-convert $< $@
# Generate the pdf file from the ePub
-%.pdf: %.epub ebook-convert
+%.pdf: %.epub
+ @[ -x `which ebook-convert` ] || { echo "ERROR: Cannot find 'ebook-convert', please install Calibre" >&2; exit 1; }
ebook-convert $< $@
# Generate the snb file from the ePub
-%.snb: %.epub ebook-convert
+%.snb: %.epub
+ @[ -x `which ebook-convert` ] || { echo "ERROR: Cannot find 'ebook-convert', please install Calibre" >&2; exit 1; }
ebook-convert $< $@
# Generate the pml file from the ePub
-%.pml: %.epub ebook-convert
+%.pml: %.epub
+ @[ -x `which ebook-convert` ] || { echo "ERROR: Cannot find 'ebook-convert', please install Calibre" >&2; exit 1; }
ebook-convert $< $@
# Generate the fb2 file from the ePub (Fictionbook format used by BeBook, PocketBook, Cybook, Papyre and others)
-%.fb2: %.epub ebook-convert
+%.fb2: %.epub
+ @[ -x `which ebook-convert` ] || { echo "ERROR: Cannot find 'ebook-convert', please install Calibre" >&2; exit 1; }
ebook-convert $< $@