mod: use customed cmake rules to build CREngine libraries

This commit is contained in:
Qingping Hou
2012-04-02 11:52:34 +08:00
parent 9e4b2675f0
commit 2814102d28
5 changed files with 50 additions and 21 deletions

4
.gitmodules vendored
View File

@@ -7,6 +7,6 @@
[submodule "djvulibre"]
path = djvulibre
url = git://djvu.git.sourceforge.net/gitroot/djvu/djvulibre.git
[submodule "crengine"]
path = crengine
[submodule "kpvcrlib/crengine"]
path = kpvcrlib/crengine
url = git://crengine.git.sourceforge.net/gitroot/crengine/crengine

View File

@@ -5,7 +5,8 @@ MUPDFDIR=mupdf
MUPDFTARGET=build/debug
MUPDFLIBDIR=$(MUPDFDIR)/$(MUPDFTARGET)
DJVUDIR=djvulibre
CRENGINEDIR=crengine
KPVCRLIGDIR=kpvcrlib
CRENGINEDIR=$(KPVCRLIGDIR)/crengine
FREETYPEDIR=$(MUPDFDIR)/thirdparty/freetype-2.4.8
LFSDIR=luafilesystem
@@ -59,19 +60,13 @@ DJVULIBS := $(DJVUDIR)/build/libdjvu/.libs/libdjvulibre.a
CRENGINELIBS := $(CRENGINEDIR)/crengine/libcrengine.a \
$(CRENGINEDIR)/thirdparty/chmlib/libchmlib.a \
$(CRENGINEDIR)/thirdparty/libpng/libpng.a \
$(CRENGINEDIR)/thirdparty/libjpeg/libjpeg.a \
$(CRENGINEDIR)/thirdparty/zlib/libz.a \
$(CRENGINEDIR)/thirdparty/antiword/libantiword.a
THIRDPARTYLIBS := $(MUPDFLIBDIR)/libfreetype.a \
$(MUPDFLIBDIR)/libopenjpeg.a \
$(MUPDFLIBDIR)/libjbig2dec.a \
$(MUPDFLIBDIR)/libjpeg.a \
$(MUPDFLIBDIR)/libz.a
# @TODO the libjpeg used by mupdf is too new for crengine and will cause
# a segment fault when decoding jpeg images in crengine, we need to fix
# this. 28.03 2012 (houqp)
#$(MUPDFLIBDIR)/libjpeg.a
LUALIB := $(LUADIR)/src/liblua.a
kpdfview: kpdfview.o einkfb.o pdf.o blitbuffer.o drawcontext.o input.o util.o ft.o lfs.o $(MUPDFLIBS) $(THIRDPARTYLIBS) $(LUALIB) djvu.o $(DJVULIBS) cre.o $(CRENGINELIBS)
@@ -117,8 +112,6 @@ fetchthirdparty:
-rm -Rf mupdf/thirdparty
git submodule init
git submodule update
grep USE_FONTCONFIG $(CRENGINEDIR)/crengine/include/crsetup.h && grep -v USE_FONTCONFIG $(CRENGINEDIR)/crengine/include/crsetup.h > /tmp/new && mv /tmp/new $(CRENGINEDIR)/crengine/include/crsetup.h
test -f $(CRENGINEDIR)/thirdparty/zlib/qconfig.h || touch $(CRENGINEDIR)/thirdparty/zlib/qconfig.h
test -f mupdf-thirdparty.zip || wget http://www.mupdf.com/download/mupdf-thirdparty.zip
unzip mupdf-thirdparty.zip -d mupdf
test -f lua-5.1.4.tar.gz || wget http://www.lua.org/ftp/lua-5.1.4.tar.gz
@@ -130,7 +123,10 @@ clean:
cleanthirdparty:
make -C $(LUADIR) clean
make -C $(MUPDFDIR) clean
make -C $(CRENGINEDIR) clean
make -C $(CRENGINEDIR)/thirdparty/antiword clean
make -C $(CRENGINEDIR)/thirdparty/chmlib clean
make -C $(CRENGINEDIR)/thirdparty/libpng clean
make -C $(CRENGINEDIR)/crengine clean
-rm -rf $(DJVUDIR)/build
-rm -f $(MUPDFDIR)/fontdump.host
-rm -f $(MUPDFDIR)/cmapdump.host
@@ -159,13 +155,7 @@ endif
make -C $(DJVUDIR)/build
$(CRENGINELIBS):
cd $(CRENGINEDIR) && cmake -D CR3_PNG=1 -D CR3_JPEG=1 .
cd $(CRENGINEDIR)/thirdparty/libjpeg && make
cd $(CRENGINEDIR)/thirdparty/chmlib && make
cd $(CRENGINEDIR)/thirdparty/antiword && make
cd $(CRENGINEDIR)/thirdparty/libpng && make
cd $(CRENGINEDIR)/thirdparty/zlib && make
cd $(CRENGINEDIR)/crengine && make
cd $(KPVCRLIGDIR) && CC="$(CC)" CXX="$(CXX)" cmake . && make
$(LUALIB):
make -C lua/src CC="$(CC)" CFLAGS="$(CFLAGS)" MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-Wl,-E" liblua.a

Submodule crengine deleted from e0a86d85a3

39
kpvcrlib/CMakeLists.txt Normal file
View File

@@ -0,0 +1,39 @@
PROJECT(kpvcrlib)
cmake_minimum_required(VERSION 2.6)
SET(CR_3RDPARTY_DIR crengine/thirdparty)
SET(CR3_PNG 1)
SET(CR3_JPEG 1)
SET(FREETYPE_INCLUDE_DIRS ${CR_3RDPARTY_DIR}/freetype/include)
SET(ANTIWORD_INCLUDE_DIR ${CR_3RDPARTY_DIR}/antiword)
SET(CHM_INCLUDE_DIRS ${CR_3RDPARTY_DIR}/chmlib)
SET(PNG_INCLUDE_DIR ${CR_3RDPARTY_DIR}/libpng)
INCLUDE_DIRECTORIES(
${FREETYPE_INCLUDE_DIRS}
${ANTIWORD_INCLUDE_DIR}
${CHM_INCLUDE_DIRS}
${PNG_INCLUDE_DIR}
)
ADD_DEFINITIONS(-DUSE_FONTCONFIG=0 -DUSE_FREETYPE=1 -DCR3_PATCH=1 -DNDEBUG=1)
#ADD_SUBDIRECTORY(crengine)
message("Will build patched LIBCHM library")
ADD_DEFINITIONS(-DCHM_SUPPORT_ENABLED=1)
ADD_SUBDIRECTORY(${CR_3RDPARTY_DIR}/chmlib)
message("Will build patched LIBPNG library")
ADD_SUBDIRECTORY(${CR_3RDPARTY_DIR}/libpng)
message("Will build patched ANTIWORD library")
ADD_DEFINITIONS(-DENABLE_ANTIWORD=1)
ADD_DEFINITIONS(-DCR3_ANTIWORD_PATCH=1)
ADD_SUBDIRECTORY(${CR_3RDPARTY_DIR}/antiword)
SET(GUI kpv)
ADD_SUBDIRECTORY(crengine/crengine)

1
kpvcrlib/crengine Submodule

Submodule kpvcrlib/crengine added at ba469d3347