done
distclean: clean test_clean
- rm -rf config.status configure config.log autom4te.cache .remake Remakefile remake
+ rm -rf config.status configure config.log autom4te.cache .remake Remakefile remake Makefile
%.class: %.java
javac $<
fi
%.cmx %.dep:
- REMAKE="$(REMAKE) -v OCAMLNATIVE=-native"
base=$*
- dirname=${base%/*}
- if test -f "$dirname".pack; then
- #we are below a pack directory
- PACKDIR=`basename $dirname`
- PACKINCLUDE="-I $dirname"
- elif test -f $*.pack -a -d $*; then
- $(REMAKE) $*.pack
- PACKINCLUDE="-I $*"
- PACKDIR=`basename $*`
- DOPACK=1
- fi
- if test "$PACKDIR"; then
- PACKNAME=`echo $PACKDIR | cut -b1 | tr a-z A-Z`${PACKDIR#?}
- FORPACK="-for-pack $PACKNAME"
- fi
-
- if test "$DOPACK"; then
- modules=`cat $*.pack`
- objects=`echo $modules | xargs tools/ocamlmoduledep.sh -native $PACKINCLUDE -I $(SRC) `
- else
- $REMAKE $*.ml
- modules=`$(OCAMLDEP) $(OCAMLFINDFLAGS) -modules $*.ml | cut -f 2- -d ':'`
- objects=`tools/ocamlmoduledep.sh -native $PACKINCLUDE -I $(SRC) $modules`
- fi
-
- $REMAKE $objects
-
- deps=`echo $objects | sed 's/[.]cm[ix]/.dep/g'`
- rm -f $*.dep; touch $*.dep
- $(REMAKE) $deps
- for f in $deps; do
- for g in `cat $f`; do
- if grep -q $g $*.dep; then continue; fi
- echo $g >> $*.dep
- done
- if grep -q $f $*.dep; then continue; fi
- echo $f >> $*.dep
- done
- if test -f $*.mli; then $REMAKE -v PACKINCLUDE="$PACKINCLUDE" $*.cmi; fi
- if test "$DOPACK"; then
- sorted_objects=`cat $*.dep | grep "$PACKDIR" | sed 's/[.]dep/.cmx/' | xargs`
- cat $*.dep | grep -v "$PACKDIR" > $*.tmp
- mv $*.tmp $*.dep
- $(OCAMLOPT) -o $@ -pack $(OCAMLFLAGS) $(OCAMLOPTFLAGS) $(OCAMLFINDFLAGS) $sorted_objects
- else
- $(OCAMLOPT) -o $@ $FORPACK -c $PACKINCLUDE $(OCAMLFLAGS) $(OCAMLOPTFLAGS) $(OCAMLFINDFLAGS) $*.ml
- fi
+ target=$@
+ NATIVE=-native
+ REMAKE="$(REMAKE) -v OCAMLNATIVE=$NATIVE"
+ OCAMLDEP="$(OCAMLDEP) $(OCAMLFINDFLAGS)"
+ SRC=$(SRC)
+ COMPILE="$(OCAMLOPT) $(OCAMLFLAGS) $(OCAMLOPTFLAGS) $(OCAMLFINDFLAGS)"
+ . tools/ocamldriver.sh
%.cmo %.dep:
- REMAKE="$(REMAKE)"
base=$*
- dirname=${base%/*}
- if test -f "$dirname".pack; then
- #we are below a pack directory
- PACKDIR=`basename $dirname`
- PACKINCLUDE="-I $dirname"
- elif test -f $*.pack -a -d $*; then
- PACKINCLUDE="-I $*"
- PACKDIR=`basename $*`
- DOPACK=1
- fi
-
- if test "$DOPACK"; then
- modules=`cat $*.pack`
- objects=`echo $modules | xargs tools/ocamlmoduledep.sh $PACKINCLUDE -I $(SRC) `
- $REMAKE $objects
- else
- $REMAKE $*.ml
- modules=`$(OCAMLDEP) $(OCAMLFINDFLAGS) -modules $*.ml | cut -f 2- -d ':'`
- objects=`tools/ocamlmoduledep.sh $PACKINCLUDE -I $(SRC) $modules`
- $REMAKE $objects
- fi
-
- deps=`echo $objects | sed 's/[.]cm[io]/.dep/g'`
- rm -f $*.dep; touch $*.dep
- $(REMAKE) $deps
- for f in $deps; do
- for g in `cat $f`; do
- if grep -q $g $*.dep; then continue; fi
- echo $g >> $*.dep
- done
- if grep -q $f $*.dep; then continue; fi
- echo $f >> $*.dep
- done
-
- if test -f $*.mli; then $REMAKE -v PACKINCLUDE="$PACKINCLUDE" $*.cmi; fi
- if test "$DOPACK"; then
- sorted_objects=`cat $*.dep | grep "$PACKDIR" | sed 's/[.]dep/.cmo/' | xargs`
- cat $*.dep | grep -v "$PACKDIR" > $*.tmp
- mv $*.tmp $*.dep
- $(OCAMLC) -o $@ -pack $(OCAMLFLAGS) $(OCAMLCFLAGS) $(OCAMLFINDFLAGS) $sorted_objects
- else
- $(OCAMLC) -o $@ -c $PACKINCLUDE $(OCAMLFLAGS) $(OCAMLCFLAGS) $(OCAMLFINDFLAGS) $*.ml
- fi
+ target=$@
+ NATIVE=
+ REMAKE="$(REMAKE) -v OCAMLNATIVE=$NATIVE"
+ OCAMLDEP="$(OCAMLDEP) $(OCAMLFINDFLAGS)"
+ SRC=$(SRC)
+ COMPILE="$(OCAMLC) $(OCAMLFLAGS) $(OCAMLCFLAGS) $(OCAMLFINDFLAGS)"
+ . tools/ocamldriver.sh
%.cmi:
$(REMAKE) $*.mli