mirror of
https://github.com/koreader/koreader.git
synced 2025-08-10 00:52:38 +00:00
Merge pull request #205 from hwhw/master
Adaptions for dynamic library aware koreader-base and some streamlining
This commit is contained in:
152
Makefile
152
Makefile
@@ -9,124 +9,84 @@ KOR_BASE=koreader-base
|
||||
VERSION=$(shell git describe HEAD)
|
||||
|
||||
# subdirectory we use to build the installation bundle
|
||||
INSTALL_DIR=koreader
|
||||
INSTALL_DIR_KOBO=mnt/onboard/.kobo
|
||||
INSTALL_DIR=koreader-$(MACHINE)
|
||||
|
||||
# subdirectory we use to setup emulation environment
|
||||
EMU_DIR=emu
|
||||
|
||||
# files to copy from main directory
|
||||
LUA_FILES=reader.lua
|
||||
# files to link from main directory
|
||||
INSTALL_FILES=reader.lua frontend resources koreader.sh \
|
||||
koreader_kobo.sh defaults.lua \
|
||||
git-rev README.md COPYING
|
||||
|
||||
# for gettext
|
||||
DOMAIN=koreader
|
||||
TEMPLATE_DIR=l10n/templates
|
||||
KOREADER_MISC_TOOL=../misc
|
||||
XGETTEXT_BIN=$(KOREADER_MISC_TOOL)/gettext/lua_xgettext.py
|
||||
MO_DIR=i18n
|
||||
MO_DIR=$(INSTALL_DIR)/koreader/i18n
|
||||
|
||||
|
||||
all: $(KOR_BASE)/koreader-base $(KOR_BASE)/extr $(KOR_BASE)/sdcv mo fonts
|
||||
all: $(KOR_BASE)/$(OUTPUT_DIR)/luajit mo
|
||||
echo $(VERSION) > git-rev
|
||||
mkdir -p $(INSTALL_DIR)/koreader
|
||||
cp -rfL $(KOR_BASE)/$(OUTPUT_DIR)/* $(INSTALL_DIR)/koreader/
|
||||
ifdef EMULATE_READER
|
||||
cp -f $(KOR_BASE)/ev_replay.py $(INSTALL_DIR)/koreader/
|
||||
endif
|
||||
for f in $(INSTALL_FILES); do \
|
||||
ln -sf ../../$$f $(INSTALL_DIR)/koreader/; \
|
||||
done
|
||||
cp -rpL resources/fonts/* $(INSTALL_DIR)/koreader/fonts/
|
||||
mkdir -p $(INSTALL_DIR)/koreader/screenshots
|
||||
mkdir -p $(INSTALL_DIR)/koreader/data/dict
|
||||
mkdir -p $(INSTALL_DIR)/koreader/data/tessdata
|
||||
mkdir -p $(INSTALL_DIR)/koreader/fonts/host
|
||||
# Kindle startup
|
||||
ln -sf ../extensions $(INSTALL_DIR)/
|
||||
ln -sf ../launchpad $(INSTALL_DIR)/
|
||||
# Kobo startup
|
||||
mkdir -p $(INSTALL_DIR)/kobo/mnt/onboard/.kobo
|
||||
ln -sf ../../../../../fmon $(INSTALL_DIR)/kobo/mnt/onboard/.kobo/
|
||||
ln -sf ../../../../resources/koreader.png $(INSTALL_DIR)/kobo/mnt/onboard/
|
||||
cd $(INSTALL_DIR)/kobo && tar -czhf ../KoboRoot.tgz mnt
|
||||
# clean up
|
||||
rm -rf $(INSTALL_DIR)/koreader/data/{cr3.ini,cr3skin-format.txt,desktop,devices,manual}
|
||||
rm $(INSTALL_DIR)/koreader/fonts/droid/DroidSansFallbackFull.ttf
|
||||
|
||||
$(KOR_BASE)/koreader-base $(KOR_BASE)/extr $(KOR_BASE)/sdcv:
|
||||
make -C $(KOR_BASE) koreader-base extr sdcv
|
||||
$(KOR_BASE)/$(OUTPUT_DIR)/luajit:
|
||||
$(MAKE) -C $(KOR_BASE)
|
||||
|
||||
fetchthirdparty:
|
||||
git submodule init
|
||||
git submodule update
|
||||
make -C $(KOR_BASE) fetchthirdparty
|
||||
$(MAKE) -C $(KOR_BASE) fetchthirdparty
|
||||
|
||||
clean:
|
||||
make -C $(KOR_BASE) clean
|
||||
|
||||
cleanthirdparty:
|
||||
make -C $(KOR_BASE) cleanthirdparty
|
||||
|
||||
bootstrapemu:
|
||||
test -d $(EMU_DIR) || mkdir $(EMU_DIR)
|
||||
test -d $(EMU_DIR)/libs-emu || (cd $(EMU_DIR) && ln -s ../$(KOR_BASE)/libs-emu ./)
|
||||
test -d $(EMU_DIR)/fonts || (cd $(EMU_DIR) && ln -s ../$(KOR_BASE)/fonts ./)
|
||||
test -d $(EMU_DIR)/data || (cd $(EMU_DIR) && ln -s ../$(KOR_BASE)/data ./)
|
||||
test -d $(EMU_DIR)/frontend || (cd $(EMU_DIR) && ln -s ../frontend ./)
|
||||
test -d $(EMU_DIR)/resources || (cd $(EMU_DIR) && ln -s ../resources ./)
|
||||
test -e $(EMU_DIR)/koreader-base || (cd $(EMU_DIR) && ln -s ../$(KOR_BASE)/koreader-base ./)
|
||||
test -e $(EMU_DIR)/extr || (cd $(EMU_DIR) && ln -s ../$(KOR_BASE)/extr ./)
|
||||
test -e $(EMU_DIR)/sdcv || (cd $(EMU_DIR) && ln -s ../$(KOR_BASE)/sdcv ./)
|
||||
test -e $(EMU_DIR)/reader.lua || (cd $(EMU_DIR) && ln -s ../reader.lua ./)
|
||||
test -e $(EMU_DIR)/defaults.lua || (cd $(EMU_DIR) && ln -s ../defaults.lua ./)
|
||||
test -e $(EMU_DIR)/history || (mkdir $(EMU_DIR)/history)
|
||||
test -e $(EMU_DIR)/$(MO_DIR) || (cd $(EMU_DIR) && ln -s ../$(MO_DIR) ./)
|
||||
test -e $(EMU_DIR)/ev_replay.py || (cd $(EMU_DIR) && ln -s ../$(KOR_BASE)/ev_replay.py ./)
|
||||
test -e $(EMU_DIR)/defaults.lua || (cd $(EMU_DIR) && ln -s ../defaults.lua ./)
|
||||
rm -rf $(INSTALL_DIR)
|
||||
$(MAKE) -C $(KOR_BASE) clean
|
||||
|
||||
customupdate: all
|
||||
# ensure that the binaries were built for ARM
|
||||
file $(KOR_BASE)/koreader-base | grep ARM || exit 1
|
||||
file $(KOR_BASE)/extr | grep ARM || exit 1
|
||||
# remove old package and dir if any
|
||||
rm -f koreader-$(VERSION).zip
|
||||
rm -rf $(INSTALL_DIR)
|
||||
# create new dir for package
|
||||
mkdir -p $(INSTALL_DIR)/{history,screenshots,clipboard,libs}
|
||||
cp -p README.md COPYING $(KOR_BASE)/{koreader-base,extr,sdcv} koreader.sh koreader_kobo.sh $(LUA_FILES) $(INSTALL_DIR)
|
||||
$(STRIP) --strip-unneeded $(INSTALL_DIR)/koreader-base $(INSTALL_DIR)/extr $(INSTALL_DIR)/sdcv
|
||||
mkdir $(INSTALL_DIR)/data $(INSTALL_DIR)/data/dict $(INSTALL_DIR)/data/tessdata
|
||||
cp -L koreader-base/$(DJVULIB) $(KOR_BASE)/$(CRELIB) \
|
||||
$(KOR_BASE)/$(LUALIB) $(KOR_BASE)/$(K2PDFOPTLIB) \
|
||||
$(KOR_BASE)/$(LEPTONICALIB) $(KOR_BASE)/$(TESSERACTLIB) \
|
||||
$(INSTALL_DIR)/libs
|
||||
$(STRIP) --strip-unneeded $(INSTALL_DIR)/libs/*
|
||||
cp -rpL $(KOR_BASE)/data/*.css $(INSTALL_DIR)/data
|
||||
cp -rpL $(KOR_BASE)/data/hyph $(INSTALL_DIR)/data/hyph
|
||||
cp -rpL $(KOR_BASE)/fonts $(INSTALL_DIR)
|
||||
cp -rp $(MO_DIR) $(INSTALL_DIR)
|
||||
rm $(INSTALL_DIR)/fonts/droid/DroidSansFallbackFull.ttf
|
||||
echo $(VERSION) > git-rev
|
||||
cp -r git-rev resources $(INSTALL_DIR)
|
||||
rm -r $(INSTALL_DIR)/resources/fonts
|
||||
cp -rpL frontend $(INSTALL_DIR)
|
||||
cp defaults.lua $(INSTALL_DIR)
|
||||
mkdir $(INSTALL_DIR)/fonts/host
|
||||
zip -9 -r koreader-$(VERSION).zip $(INSTALL_DIR) launchpad/ extensions/
|
||||
rm -rf $(INSTALL_DIR)
|
||||
file $(INSTALL_DIR)/koreader/luajit | grep ARM || exit 1
|
||||
# remove old package if any
|
||||
rm -f koreader-kindle-$(MACHINE)-$(VERSION).zip
|
||||
# create new package
|
||||
cd $(INSTALL_DIR) && \
|
||||
zip -9 -r \
|
||||
../koreader-kindle-$(MACHINE)-$(VERSION).zip \
|
||||
extensions koreader launchpad \
|
||||
-x "koreader/resources/fonts/*"
|
||||
# @TODO write an installation script for KUAL (houqp)
|
||||
|
||||
koboupdate: all
|
||||
# ensure that the binaries were built for ARM
|
||||
file $(KOR_BASE)/koreader-base | grep ARM || exit 1
|
||||
file $(KOR_BASE)/extr | grep ARM || exit 1
|
||||
# remove old package and dir if any
|
||||
rm -f koreader-kobo-$(VERSION).zip
|
||||
rm -rf $(INSTALL_DIR)
|
||||
# create new dir for package
|
||||
mkdir -p $(INSTALL_DIR)/{history,screenshots,clipboard,libs}
|
||||
cp -p README.md COPYING $(KOR_BASE)/{koreader-base,extr,sdcv} koreader.sh koreader_kobo.sh $(LUA_FILES) $(INSTALL_DIR)
|
||||
$(STRIP) --strip-unneeded $(INSTALL_DIR)/koreader-base $(INSTALL_DIR)/extr $(INSTALL_DIR)/sdcv
|
||||
mkdir $(INSTALL_DIR)/data $(INSTALL_DIR)/data/dict $(INSTALL_DIR)/data/tessdata
|
||||
cp -L koreader-base/$(DJVULIB) $(KOR_BASE)/$(CRELIB) \
|
||||
$(KOR_BASE)/$(LUALIB) $(KOR_BASE)/$(K2PDFOPTLIB) \
|
||||
$(KOR_BASE)/$(LEPTONICALIB) $(KOR_BASE)/$(TESSERACTLIB) \
|
||||
$(INSTALL_DIR)/libs
|
||||
$(STRIP) --strip-unneeded $(INSTALL_DIR)/libs/*
|
||||
cp -rpL $(KOR_BASE)/data/*.css $(INSTALL_DIR)/data
|
||||
cp -rpL $(KOR_BASE)/data/hyph $(INSTALL_DIR)/data/hyph
|
||||
cp -rpL $(KOR_BASE)/fonts $(INSTALL_DIR)
|
||||
cp -rp $(MO_DIR) $(INSTALL_DIR)
|
||||
rm $(INSTALL_DIR)/fonts/droid/DroidSansFallbackFull.ttf
|
||||
echo $(VERSION) > git-rev
|
||||
cp -r git-rev resources $(INSTALL_DIR)
|
||||
rm -r $(INSTALL_DIR)/resources/fonts
|
||||
cp -rpL frontend $(INSTALL_DIR)
|
||||
cp defaults.lua $(INSTALL_DIR)
|
||||
mkdir $(INSTALL_DIR)/fonts/host
|
||||
mkdir -p $(INSTALL_DIR_KOBO)/fmon
|
||||
cp -rpL fmon $(INSTALL_DIR_KOBO)
|
||||
cp -p resources/koreader.png $(INSTALL_DIR_KOBO)/..
|
||||
tar -zcvf KoboRoot.tgz mnt/
|
||||
zip -9 -r koreader-kobo-$(VERSION).zip $(INSTALL_DIR) KoboRoot.tgz
|
||||
rm KoboRoot.tgz
|
||||
rm -rf mnt/
|
||||
rm -rf $(INSTALL_DIR)
|
||||
file $(INSTALL_DIR)/koreader/luajit | grep ARM || exit 1
|
||||
# remove old package if any
|
||||
rm -f koreader-kobo-$(MACHINE)-$(VERSION).zip
|
||||
# create new package
|
||||
cd $(INSTALL_DIR) && \
|
||||
zip -9 -r \
|
||||
../koreader-kobo-$(MACHINE)-$(VERSION).zip \
|
||||
KoboRoot.tgz koreader \
|
||||
-x "koreader/resources/fonts/*"
|
||||
|
||||
pot:
|
||||
$(XGETTEXT_BIN) reader.lua `find frontend -iname "*.lua"` \
|
||||
@@ -140,5 +100,3 @@ mo:
|
||||
msgfmt -o $(MO_DIR)/$$lingua/LC_MESSAGES/$$resource.mo $$po ; \
|
||||
done
|
||||
|
||||
fonts:
|
||||
cp -rpL resources/fonts/* $(KOR_BASE)/fonts
|
||||
|
||||
Submodule koreader-base updated: 2dfda0da69...94e558612d
Reference in New Issue
Block a user