1 # builds "hard" prerequisites and llpp
5 while getopts j
: opt
; do
9 printf "usage: $0 [-j N] [opt]\n";
13 shift $
(($OPTIND - 1))
19 lablgl
=http
://wwwfun.kurims.kyoto-u.ac.jp
/soft
/lsl
/dist
/lablgl-1.04.
tar.gz
20 baseurl
="http://git.ghostscript.com/"
22 mupdfrev
=1b4b5fdfa6b74827631d42efd2a61226125f036b
23 submodules
="freetype jbig2dec jpeg openjpeg zlib"
24 freetyperev
=2ef0a19842ae1172bec153225328aaaeaf130a18
25 jbig2decrev
=3e6c1b0670740be3b138228dcc134bf5e6c1eceb
26 jpegrev
=219d59dcfd0e6ce8a3d8c5510e29237f0b5078ed
27 openjpegrev
=d5693f4ec8635d81defc92619c02134b6b785b06
28 zlibrev
=c16b1b18ddaaf090caf321af831bccac6381a381
30 mudir
=mupdf-$
(printf "%.7s" $mupdfrev)
31 mutgz
=mupdf-
$mupdfrev.tgz
32 muurl
="${baseurl}?p=mupdf.git;a=snapshot;h=$mupdfrev;sf=tgz"
34 test -d lablGL-1.04 ||
(wget
-nc $lablgl && tar -xzf lablgl-1.04.
tar.gz
)
36 test -e $mutgz || wget
-nc $muurl -O $mutgz
37 test -d $mudir ||
tar -xzf $mutgz
39 for m
in $submodules; do
41 d
=$m-$
(printf "%.7s" $r)
44 test $m = jbig2dec || p
=thirdparty
/$m
45 u
="${baseurl}?p=$p.git;a=snapshot;h=$r;sf=tgz"
46 test -e $t || wget
-nc $u -O $t
47 rm -fr $mudir/thirdparty
/$m
48 tar -xzf $t && mv $d $mudir/thirdparty
/$m
52 command -v $1 >/dev
/null
2>&1
55 executable_p gmake
&& make=gmake ||
make=make
58 && sed 17d Makefile.config.linux.mdk
> Makefile.config \
59 && $make -j 1 lib $
(test "$1" = opt
&& echo libopt
) \
60 && $make -j 1 install \
62 LIBDIR
=$root/lib
/ocaml \
63 DLLDIR
=$root/lib
/ocaml
/stublibs \
64 INSTALLDIR
=$root/lib
/ocaml
/lablGL
)
66 (cd $mudir && $make -j "$jobs" build
=release
)
72 tp
=$root/$mudir/thirdparty
75 ccopt
="$ccopt -I $tp/jbig2dec"
76 ccopt
="$ccopt -I $tp/jpeg"
77 ccopt
="$ccopt -I $tp/freetype/include"
78 ccopt
="$ccopt -I $tp/openjpeg/libopenjpeg"
79 ccopt
="$ccopt -I $tp/zlib"
80 ccopt
="$ccopt -I $root/$mudir/fitz -I $root/$mudir/pdf -I $root/$mudir/xps"
81 ccopt
="$ccopt -I $root/$mudir/cbz"
83 ccopt
="$ccopt -include $tp/freetype/include/ft2build.h -D_GNU_SOURCE"
85 cclib
="$cclib -L$root/$mudir/build/release"
87 cclib
="$cclib -lz -ljpeg -lopenjpeg -ljbig2dec -lfreetype -lpthread"
92 sh
$srcpath/mkhelp.sh
$srcpath/keystoml.ml
$srcpath/KEYS
> help.ml
94 if test "$1" = "opt"; then
95 executable_p ocamlopt.opt
&& comp
=ocamlopt.opt || comp
=ocamlopt
99 -I $root/lib
/ocaml
/lablGL \
100 str.cmxa unix.cmxa lablgl.cmxa \
110 executable_p ocamlc.opt
&& comp
=ocamlc.opt || comp
=ocamlc
113 $comp -custom -o llpp \
114 -I $root/lib
/ocaml
/lablGL \
115 str.cma unix.cma lablgl.cma \
126 $comp -c -o link.o
-ccopt "$ccopt" $srcpath/link.c
127 $comp -c -o help.
$cmsuf help.ml
128 $comp -c -o utils.
$cmsuf $srcpath/utils.ml
129 $comp -c -o wsi.cmi
$srcpath/wsi.mli
130 $comp -c -o wsi.
$cmsuf $srcpath/wsi.ml
131 $comp -c -o parser.
$cmsuf $srcpath/parser.ml
132 $comp -c -o main.
$cmsuf -I $root/lib
/ocaml
/lablGL
$srcpath/main.ml