Hilko Bengen
2011-May-11 19:17 UTC
[Libguestfs] [PATCH 1/2] hivex: Use OCaml bytecode compiler for caml_raise_with_args check
From: Hilko Bengen <bengen at debian.org> On installations where no native OCaml compiler is available, the test program can't be compiled and so we get this message: ,---- | checking for function caml_raise_with_args... not found `---- This breaks building of the OCaml bindings. ,---- | gcc -std=gnu99 -I.. -I/usr/lib/ocaml -I../ocaml -I../lib -g -O2 -fPIC -Wall -c hivex_c.c | hivex_c.c:52: error: static declaration of 'caml_raise_with_args' follows non-static declaration | /usr/lib/ocaml/caml/fail.h:30: note: previous declaration of 'caml_raise_with_args' was here | make[2]: *** [hivex_c.o] Error 1 `---- (Successfully tested on Debian/unstable on alpha) --- configure.ac | 6 +++--- 1 files changed, 3 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index 5805ddd..ef19543 100644 --- a/configure.ac +++ b/configure.ac @@ -192,9 +192,9 @@ if test "x$OCAMLC" != "xno"; then echo "char $f (); char foo() { return $f (); }" > conftest.c rm -f conftest_ml.ml touch conftest_ml.ml - if $OCAMLOPT -c conftest.c 2>/dev/null && \ - $OCAMLOPT -c conftest_ml.ml 2>/dev/null && \ - $OCAMLOPT conftest.o conftest_ml.cmx -o conftest 2>/dev/null ; then + if $OCAMLC -c conftest.c 2>/dev/null && \ + $OCAMLC -c conftest_ml.ml 2>/dev/null && \ + $OCAMLC conftest.o conftest_ml.cmo -o conftest 2>/dev/null ; then AC_DEFINE([HAVE_CAML_RAISE_WITH_ARGS],[1], [Defined if function caml_raise_with_args exists.]) AC_MSG_RESULT([found]) -- 1.7.5.1
Hilko Bengen
2011-May-11 19:17 UTC
[Libguestfs] [PATCH 2/2] hivex: check for presence of OCaml native compiler
From: Hilko Bengen <bengen at debian.org> Only compile bytecode otherwise, avoiding ocamlfind's helpful error message "ocamlfind: Not supported in your configuration: ocamlopt" (Successfully tested on Debian/unstable on alpha) --- configure.ac | 1 + ocaml/Makefile.am | 6 +++++- 2 files changed, 6 insertions(+), 1 deletions(-) diff --git a/configure.ac b/configure.ac index ef19543..7e006e8 100644 --- a/configure.ac +++ b/configure.ac @@ -174,6 +174,7 @@ dnl Check for OCaml (optional, for OCaml bindings). AC_PROG_OCAML AC_PROG_FINDLIB AM_CONDITIONAL([HAVE_OCAML],[test "x$OCAMLC" != "xno" -a "x$OCAMLFIND" != "xno"]) +AM_CONDITIONAL([HAVE_OCAMLOPT], [test "x$OCAMLOPT" != "xno" -a "x$OCAMLFIND" != "xno"]) if test "x$OCAMLC" != "xno"; then dnl Check if we have caml/unixsupport.h header (OCaml bindings only). diff --git a/ocaml/Makefile.am b/ocaml/Makefile.am index 7412d8d..76c33b9 100644 --- a/ocaml/Makefile.am +++ b/ocaml/Makefile.am @@ -31,7 +31,11 @@ AM_CPPFLAGS = \ if HAVE_OCAML -noinst_DATA = mlhivex.cma mlhivex.cmxa META +noinst_DATA = mlhivex.cma META + +if HAVE_OCAMLOPT +noinst_DATA += mlhivex.cmxa +endif OBJS = hivex_c.o hivex.cmo XOBJS = $(OBJS:.cmo=.cmx) -- 1.7.5.1
Reasonably Related Threads
- [PATCH 1/3] hivex: Use OCaml bytecode compiler for caml_raise_with_args check
- [PATCH] Don't rely on OCaml native compiler for tests
- [PATCH hivex] ocaml: Link the C bindings with LDFLAGS (RHBZ#1548536).
- [PATCH] hivex: A few tweaks to enable building in a separate directory
- [PATCH] ocaml: Change calls to caml_named_value() to cope with const value* return.