Do not use character class regexp
[llpp.git] / build.ninja
blob3576dd17c9800b6aae160136e04de098df491214
1 cc = gcc
2 include .config
3 ocamlflags = -warn-error +a -w +a -g -safe-string
4 libs = -lmupdf $mujs -lpthread -Lmupdf/build/$buildtype
6 cflags = $cflags -Wall -Werror -Imupdf/include -g $
7        -std=c99 -pedantic-errors -Wunused-parameter -Wsign-compare -Wshadow
9 rule cc
10      deps = gcc
11      depfile = $out.d
12      command = $ocamlc -cc "$cc" -ccopt "$cflags -MMD -MF $out.d -o $out" -c $in
13      description = cc $out
15 rule ocamlc
16      command = env incs="$incs" pp="$pp" /bin/sh $srcdir/doocaml.sh $
17              $ocamlc $out $in -c $ocamlflags
18      description = ocamlc $out
20 rule genhelp
21      command = /bin/sh $srcdir/mkhelp.sh $srcdir/KEYS >$out
22      description = genhelp
24 build $builddir/help.ml: genhelp $srcdir/mkhelp.sh $srcdir/KEYS
25 build $builddir/link.o: cc $srcdir/link.c
26       cflags = $cflags -D_GNU_SOURCE -DFFP
27 build $builddir/help$cmo: ocamlc $builddir/help.ml
28 build $builddir/utils$cmo: ocamlc $srcdir/utils.ml
29 build $builddir/bo$cmo: ocamlc $srcdir/le/bo.ml
30 build $builddir/wsi.cmi: ocamlc $srcdir/wsi.mli $
31       | $builddir/utils$cmo
32 build $builddir/wsi$cmo: ocamlc $srcdir/wsi.ml $
33       | $builddir/bo$cmo $builddir/utils$cmo $builddir/wsi.cmi
34 build $builddir/parser$cmo: ocamlc $srcdir/parser.ml
35 build $builddir/config$cmo: ocamlc $srcdir/config.ml $
36       | $builddir/wsi.cmi $builddir/utils$cmo $
37         $builddir/parser$cmo $builddir/help$cmo
38       incs = $lablglcflags
39 build $builddir/main$cmo: ocamlc $srcdir/main.ml $
40       | $builddir/wsi.cmi $builddir/utils$cmo $builddir/config$cmo $
41         $builddir/help$cmo $srcdir/doocaml.sh $srcdir/pp.sed
42         incs = $lablglcflags
43         pp = sed -f $srcdir/pp.sed
45 rule linkso
46      command = $cc -g -o $out -shared $in $libs $lflags
47      description = linkso $out
49 build $builddir/link.so: linkso $builddir/link.o
51 rule link
52      command = $ocamlc -g -o $out $lablglcflags $
53              str$cma unix$cma lablgl$cma $in $
54              $ocamllflags
55      description = link $out
57 build $builddir/llpp.custom: link $
58      $builddir/help$cmo $
59      $builddir/utils$cmo $
60      $builddir/parser$cmo $
61      $builddir/bo$cmo $
62      $builddir/wsi$cmo $
63      $builddir/config$cmo $
64      $builddir/main$cmo $
65      $builddir/link.o
66      ocamllflags = $customflag -cclib "$libs -lX11 $lflags"
68 build $builddir/llpp: link $
69      $builddir/help$cmo $
70      $builddir/utils$cmo $
71      $builddir/parser$cmo $
72      $builddir/bo$cmo $
73      $builddir/wsi$cmo $
74      $builddir/config$cmo $
75      $builddir/main$cmo $
76      | $builddir/link.so
77      ocamllflags = $linksocclib $builddir/link.so
79 default $builddir/llpp