Allow bytecode and native code build.
authorRichard Jones <rjones@redhat.com>
Fri, 27 Mar 2009 16:06:17 +0000 (16:06 +0000)
committerRichard Jones <rjones@redhat.com>
Fri, 27 Mar 2009 16:06:17 +0000 (16:06 +0000)
Makefile.am
configure.ac

index 41ddc7b..b294d68 100644 (file)
@@ -25,15 +25,28 @@ EXTRA_DIST = \
        $(MLFILES) rpmdepsize_about.ml.in \
        rpmdepsize.spec rpmdepsize.spec.in
 
-CLEANFILES = rpmdepsize
+CLEANFILES = rpmdepsize *.annot *.cmi *.cmo *.cmx *.o *~
 
 bin_SCRIPTS = rpmdepsize
 
-rpmdepsize: $(MLFILES)
-       $(OCAMLFIND) $(OCAMLBEST) \
-         -dtypes \
-         -package lablgtk2,sexplib,unix,extlib,sexplib.syntax \
-         -syntax camlp4o \
-         -linkpkg \
-         gtkInit.cmx \
-         $^ -o $@
+OCAMLFLAGS = \
+       -dtypes \
+       -package lablgtk2,sexplib,unix,extlib,sexplib.syntax \
+       -syntax camlp4o
+OCAMLCLIBS = -linkpkg gtkInit.cmo
+OCAMLOPTLIBS = -linkpkg gtkInit.cmx
+
+if OCAML_BYTE_COMPILER
+rpmdepsize: $(MLFILES:.ml=.cmo)
+       $(OCAMLFIND) ocamlc $(OCAMLFLAGS) $(OCAMLCLIBS) $^ -o $@
+else
+rpmdepsize: $(MLFILES:.ml=.cmx)
+       $(OCAMLFIND) ocamlopt $(OCAMLFLAGS) $(OCAMLOPTLIBS) $^ -o $@
+endif
+
+.mli.cmi:
+       $(OCAMLFIND) ocamlc $(OCAMLFLAGS) -c $<
+.ml.cmo:
+       $(OCAMLFIND) ocamlc $(OCAMLFLAGS) -c $<
+.ml.cmx:
+       $(OCAMLFIND) ocamlopt $(OCAMLFLAGS) -c $<
index 8874a2b..1a8b2e7 100644 (file)
@@ -26,6 +26,9 @@ AC_PROG_OCAML
 if test "$OCAMLC" = "no"; then
   AC_MSG_ERROR([You must install the OCaml compiler])
 fi
+
+AM_CONDITIONAL(OCAML_BYTE_COMPILER,[test "x$OCAMLOPT" = "xbyte"])
+
 AC_PROG_FINDLIB
 if test "$OCAMLFIND" = "no"; then
   AC_MSG_ERROR([You must install OCaml findlib (the ocamlfind command)])