Pull translations from Transifex.
[hivex.git] / configure.ac
index fecf85b..f3c1037 100644 (file)
@@ -17,8 +17,8 @@
 
 # major/minor/release must be numbers
 m4_define([hivex_major],   [1])
-m4_define([hivex_minor],   [1])
-m4_define([hivex_release], [2])
+m4_define([hivex_minor],   [2])
+m4_define([hivex_release], [4])
 # extra can be any string
 m4_define([hivex_extra],   [])
 
@@ -87,6 +87,8 @@ if test "$gl_gcc_warnings" = yes; then
   nw="$nw -Wunsafe-loop-optimizations" # just a warning that an optimization
                                     # was not possible, safe to ignore
   nw="$nw -Wpacked"                 # Allow attribute((packed)) on structs
+  nw="$nw -Wlong-long"              # Allow long long since it's required
+                                    # by xstrtoll.
 
   gl_MANYWARN_ALL_GCC([ws])
   gl_MANYWARN_COMPLEMENT([ws], [$ws], [$nw])
@@ -116,6 +118,12 @@ test "x$U" != "x" && AC_MSG_ERROR([Compiler not ANSI compliant])
 
 AM_PROG_CC_C_O
 
+dnl Work out how to specify the linker script to the linker.
+VERSION_SCRIPT_FLAGS=-Wl,--version-script=
+`/usr/bin/ld --help 2>&1 | grep -- --version-script >/dev/null` || \
+    VERSION_SCRIPT_FLAGS="-Wl,-M -Wl,"
+AC_SUBST(VERSION_SCRIPT_FLAGS)
+
 dnl Check support for 64 bit file offsets.
 AC_SYS_LARGEFILE
 
@@ -143,7 +151,7 @@ AC_ARG_WITH([readline],
 LIBREADLINE=
 AS_IF([test "x$with_readline" != xno],
     [AC_CHECK_LIB([readline], [main],
-        [AC_SUBST([LIBREADLINE], ["-lreadline -lncurses"])
+        [AC_SUBST([LIBREADLINE], ["-lreadline"])
          AC_DEFINE([HAVE_LIBREADLINE], [1],
                    [Define if you have libreadline])
         ],
@@ -151,7 +159,7 @@ AS_IF([test "x$with_readline" != xno],
          AC_MSG_FAILURE(
              [--with-readline was given, but test for readline failed])
          fi
-        ], -lncurses)])
+        ])])
 
 dnl For i18n.
 AM_GNU_GETTEXT([external])
@@ -167,6 +175,35 @@ AC_PROG_OCAML
 AC_PROG_FINDLIB
 AM_CONDITIONAL([HAVE_OCAML],[test "x$OCAMLC" != "xno" -a "x$OCAMLFIND" != "xno"])
 
+if test "x$OCAMLC" != "xno"; then
+    dnl Check if we have caml/unixsupport.h header (OCaml bindings only).
+    old_CFLAGS="$CFLAGS"
+    CFLAGS="$CFLAGS -I$OCAMLLIB"
+    AC_CHECK_HEADERS([caml/unixsupport.h],[],[],
+    [
+    #include <caml/config.h>
+    #include <caml/mlvalues.h>
+    ])
+    CFLAGS="$old_CFLAGS"
+
+    dnl Do we have function caml_raise_with_args?
+    f=caml_raise_with_args
+    AC_MSG_CHECKING([for function $f])
+    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
+        AC_DEFINE([HAVE_CAML_RAISE_WITH_ARGS],[1],
+                  [Defined if function caml_raise_with_args exists.])
+        AC_MSG_RESULT([found])
+    else
+        AC_MSG_RESULT([not found])
+    fi
+    rm -f conftest conftest.* conftest_ml.*
+fi
+
 dnl Check for Perl (optional, for Perl bindings).
 dnl XXX This isn't quite right, we should check for Perl devel library.
 AC_CHECK_PROG([PERL],[perl],[perl],[no])
@@ -174,7 +211,7 @@ AC_CHECK_PROG([PERL],[perl],[perl],[no])
 dnl Check for Perl modules that must be present to compile and
 dnl test the Perl bindings.
 missing_perl_modules=no
-for pm in Test::More Test::Pod Test::Pod::Coverage ExtUtils::MakeMaker; do
+for pm in Test::More ExtUtils::MakeMaker IO::Stringy; do
     AC_MSG_CHECKING([for $pm])
     if ! perl -M$pm -e1 >/dev/null 2>&1; then
         AC_MSG_RESULT([no])
@@ -214,6 +251,10 @@ if test "x$PYTHON" != "xno"; then
         fi
         AC_MSG_RESULT([not found])
     done
+    if test "x$PYTHON_INCLUDEDIR" = "x"; then
+        AC_MSG_WARN([Python include directory not found])
+    fi
+
     for d in \
         $PYTHON_PREFIX/lib64/python$PYTHON_VERSION/site-packages \
         $PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages \
@@ -229,6 +270,14 @@ if test "x$PYTHON" != "xno"; then
         fi
         AC_MSG_RESULT([not found])
     done
+    if test "x$PYTHON_SITE_PACKAGES" = "x"; then
+        AC_MSG_WARN([Python site-packages directory not found])
+    fi
+
+    old_LIBS="$LIBS"
+    LIBS="$LIBS -lpython$PYTHON_VERSION"
+    AC_CHECK_FUNCS([PyCapsule_New])
+    LIBS="$old_LIBS"
 fi
 
 AC_SUBST(PYTHON_PREFIX)
@@ -401,7 +450,11 @@ AC_CONFIG_FILES([Makefile
                  images/Makefile
                  lib/Makefile
                  lib/tools/Makefile
+                 ocaml/Makefile ocaml/META
+                 perl/Makefile perl/Makefile.PL
+                 python/Makefile
                  po/Makefile.in
+                 regedit/Makefile
                  sh/Makefile
                  xml/Makefile])
 AC_OUTPUT