X-Git-Url: http://git.annexia.org/?p=hivex.git;a=blobdiff_plain;f=configure.ac;h=fc11b07ed7d1308012f9bd435041f45cebd6cf10;hp=7c599e9a3ef80983e806bc33b60fd060a5e81732;hb=7cc9be00d446df95eaa0bebfc9892a69d3393227;hpb=ccdf51171372b87f887f6320f966fc0c526c037b diff --git a/configure.ac b/configure.ac index 7c599e9..fc11b07 100644 --- a/configure.ac +++ b/configure.ac @@ -1,5 +1,5 @@ # hivex -# Copyright (C) 2009-2010 Red Hat Inc. +# Copyright (C) 2009-2011 Red Hat Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -17,8 +17,8 @@ # major/minor/release must be numbers m4_define([hivex_major], [1]) -m4_define([hivex_minor], [2]) -m4_define([hivex_release], [2]) +m4_define([hivex_minor], [3]) +m4_define([hivex_release], [0]) # extra can be any string m4_define([hivex_extra], []) @@ -40,7 +40,7 @@ AC_DEFINE([PACKAGE_VERSION_EXTRA],["hivex_extra"],[Extra version string]) gl_EARLY gl_INIT -AC_PROG_LIBTOOL +AM_PROG_LIBTOOL dnl Check for basic C environment. AC_PROG_CC_STDC @@ -173,7 +173,10 @@ AC_SUBST([LIBXML2_LIBS]) 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_OCAML], + [test "x$OCAMLC" != "xno" && test "x$OCAMLFIND" != "xno"]) +AM_CONDITIONAL([HAVE_OCAMLOPT], + [test "x$OCAMLOPT" != "xno" && test "x$OCAMLFIND" != "xno"]) if test "x$OCAMLC" != "xno"; then dnl Check if we have caml/unixsupport.h header (OCaml bindings only). @@ -192,9 +195,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]) @@ -225,63 +228,53 @@ if test "x$missing_perl_modules" = "xyes"; then fi AM_CONDITIONAL([HAVE_PERL], - [test "x$PERL" != "xno" -a "x$missing_perl_modules" != "xyes"]) - -dnl dnl Check for Python (optional, for Python bindings). -dnl AC_CHECK_PROG([PYTHON],[python],[python],[no]) - -dnl PYTHON_PREFIX= -dnl PYTHON_VERSION= -dnl PYTHON_INCLUDEDIR= -dnl PYTHON_SITE_PACKAGES= - -dnl if test "x$PYTHON" != "xno"; then -dnl PYTHON_PREFIX=`$PYTHON -c "import sys; print sys.prefix"` -dnl PYTHON_VERSION=`$PYTHON -c "import sys; print sys.version[[0:3]]"` -dnl for d in \ -dnl $PYTHON_PREFIX/include/python$PYTHON_VERSION \ -dnl /usr/include/python$PYTHON_VERSION \ -dnl /usr/local/include/python$PYTHON_VERSION -dnl do -dnl AC_MSG_CHECKING([Python.h in $d]) -dnl if test -r "$d/Python.h"; then -dnl AC_MSG_RESULT([found]) -dnl PYTHON_INCLUDEDIR=$d -dnl break -dnl fi -dnl AC_MSG_RESULT([not found]) -dnl done -dnl for d in \ -dnl $PYTHON_PREFIX/lib64/python$PYTHON_VERSION/site-packages \ -dnl $PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages \ -dnl /usr/lib64/python$PYTHON_VERSION/site-packages \ -dnl /usr/lib/python$PYTHON_VERSION/site-packages \ -dnl /usr/local/lib/python$PYTHON_VERSION/site-packages -dnl do -dnl AC_MSG_CHECKING([for $d]) -dnl if test -d "$d"; then -dnl AC_MSG_RESULT([found]) -dnl PYTHON_SITE_PACKAGES=$d -dnl break -dnl fi -dnl AC_MSG_RESULT([not found]) -dnl done -dnl fi + [test "x$PERL" != "xno" && test "x$missing_perl_modules" != "xyes"]) + +dnl Check for Python (optional, for Python bindings). +AC_CHECK_PROG([PYTHON],[python],[python],[no]) + +PYTHON_PREFIX= +PYTHON_VERSION= + +if test "x$PYTHON" != "xno"; then + PYTHON_PREFIX=`$PYTHON -c "import sys; print sys.prefix"` + PYTHON_VERSION=`$PYTHON -c "import sys; print sys.version[[0:3]]"` + + AC_MSG_CHECKING([for Python include path]) + if test -z "$PYTHON_INCLUDEDIR"; then + python_path=`$PYTHON -c "import distutils.sysconfig; \ + print (distutils.sysconfig.get_python_inc ());"` + PYTHON_INCLUDEDIR=$python_path + fi + AC_MSG_RESULT([$PYTHON_INCLUDEDIR]) + + AC_MSG_CHECKING([for Python site-packages path]) + if test -z "$PYTHON_SITE_PACKAGES"; then + PYTHON_SITE_PACKAGES=`$PYTHON -c "import distutils.sysconfig; \ + print (distutils.sysconfig.get_python_lib(1,0));"` + fi + AC_MSG_RESULT([$PYTHON_SITE_PACKAGES]) + + old_LIBS="$LIBS" + LIBS="$LIBS -lpython$PYTHON_VERSION" + AC_CHECK_FUNCS([PyCapsule_New]) + LIBS="$old_LIBS" +fi -dnl AC_SUBST(PYTHON_PREFIX) -dnl AC_SUBST(PYTHON_VERSION) -dnl AC_SUBST(PYTHON_INCLUDEDIR) -dnl AC_SUBST(PYTHON_SITE_PACKAGES) +AC_SUBST(PYTHON_PREFIX) +AC_SUBST(PYTHON_VERSION) +AC_SUBST(PYTHON_INCLUDEDIR) +AC_SUBST(PYTHON_SITE_PACKAGES) -dnl AM_CONDITIONAL([HAVE_PYTHON], -dnl [test "x$PYTHON_INCLUDEDIR" != "x" -a "x$PYTHON_SITE_PACKAGES" != "x"]) +AM_CONDITIONAL([HAVE_PYTHON], + [test "x$PYTHON_INCLUDEDIR" != "x" && test "x$PYTHON_SITE_PACKAGES" != "x"]) -dnl dnl Check for Ruby and rake (optional, for Ruby bindings). -dnl AC_CHECK_LIB([ruby],[ruby_init],[HAVE_LIBRUBY=1],[HAVE_LIBRUBY=0]) -dnl AC_CHECK_PROG([RAKE],[rake],[rake],[no]) +dnl Check for Ruby and rake (optional, for Ruby bindings). +AC_CHECK_LIB([ruby],[ruby_init],[HAVE_LIBRUBY=1],[HAVE_LIBRUBY=0]) +AC_CHECK_PROG([RAKE],[rake],[rake],[no]) -dnl AM_CONDITIONAL([HAVE_RUBY], -dnl [test "x$RAKE" != "xno" -a -n "$HAVE_LIBRUBY"]) +AM_CONDITIONAL([HAVE_RUBY], + [test "x$RAKE" != "xno" && test -n "$HAVE_LIBRUBY"]) dnl dnl Check for Java. dnl AC_ARG_WITH(java_home, @@ -291,7 +284,7 @@ dnl [], dnl [with_java_home=check]) dnl if test "x$with_java_home" != "xno"; then -dnl if test "x$with_java_home" != "xyes" -a "x$with_java_home" != "xcheck" +dnl if test "x$with_java_home" != "xyes" && test "x$with_java_home" != "xcheck" dnl then dnl # Reject unsafe characters in $JAVA_HOME dnl jh_lf=' @@ -313,7 +306,7 @@ dnl for d in \ dnl /usr/lib/jvm/java \ dnl /usr/lib/jvm/java-6-openjdk dnl do -dnl if test -d $d -a -f $d/bin/java; then +dnl if test -d $d && test -f $d/bin/java; then dnl JAVA_HOME=$d dnl break dnl fi @@ -432,6 +425,7 @@ dnl [test "x$GHC" != "xno"]) dnl Produce output files. AC_CONFIG_HEADERS([config.h]) AC_CONFIG_FILES([Makefile + generator/Makefile gnulib/lib/Makefile gnulib/tests/Makefile hivex.pc @@ -440,10 +434,13 @@ AC_CONFIG_FILES([Makefile lib/tools/Makefile ocaml/Makefile ocaml/META perl/Makefile perl/Makefile.PL + python/Makefile po/Makefile.in regedit/Makefile + ruby/Makefile ruby/Rakefile sh/Makefile xml/Makefile]) +AC_CONFIG_FILES([python/run-python-tests], [chmod +x python/run-python-tests]) AC_OUTPUT dnl Produce summary. @@ -458,10 +455,10 @@ echo -n "OCaml bindings ...................... " if test "x$HAVE_OCAML_TRUE" = "x"; then echo "yes"; else echo "no"; fi echo -n "Perl bindings ....................... " if test "x$HAVE_PERL_TRUE" = "x"; then echo "yes"; else echo "no"; fi -dnl echo -n "Python bindings ..................... " -dnl if test "x$HAVE_PYTHON_TRUE" = "x"; then echo "yes"; else echo "no"; fi -dnl echo -n "Ruby bindings ....................... " -dnl if test "x$HAVE_RUBY_TRUE" = "x"; then echo "yes"; else echo "no"; fi +echo -n "Python bindings ..................... " +if test "x$HAVE_PYTHON_TRUE" = "x"; then echo "yes"; else echo "no"; fi +echo -n "Ruby bindings ....................... " +if test "x$HAVE_RUBY_TRUE" = "x"; then echo "yes"; else echo "no"; fi dnl echo -n "Java bindings ....................... " dnl if test "x$HAVE_JAVA_TRUE" = "x"; then echo "yes"; else echo "no"; fi dnl echo -n "Haskell bindings .................... "