configure.ac 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. AC_INIT(guile-lzlib, 0.2)
  2. AC_SUBST(HVERSION, "\"0.2\"")
  3. AC_SUBST(AUTHOR, "\"Mathieu Othacehe\"")
  4. AC_SUBST(COPYRIGHT, "'(2020)")
  5. AC_SUBST(LICENSE, gpl3+)
  6. AC_CONFIG_SRCDIR(lzlib.scm)
  7. AC_CONFIG_AUX_DIR([build-aux])
  8. AM_INIT_AUTOMAKE([1.12 gnu silent-rules subdir-objects color-tests parallel-tests -Woverride -Wno-portability])
  9. AM_SILENT_RULES([yes])
  10. AC_CONFIG_FILES([Makefile lzlib/config.scm])
  11. AC_CONFIG_FILES([pre-inst-env], [chmod +x pre-inst-env])
  12. dnl Search for 'guile' and 'guild'. This macro defines
  13. dnl 'GUILE_EFFECTIVE_VERSION'.
  14. GUILE_PKG([3.0 2.2 2.0])
  15. GUILE_PROGS
  16. GUILE_SITE_DIR
  17. if test "x$GUILD" = "x"; then
  18. AC_MSG_ERROR(['guild' binary not found; please check your GNU Guile installation.])
  19. fi
  20. if test "$cross_compiling" != no; then
  21. GUILE_TARGET="--target=$host_alias"
  22. AC_SUBST([GUILE_TARGET])
  23. fi
  24. AC_DEFUN([GUILE_LIBLZ_FILE_NAME], [
  25. AC_REQUIRE([PKG_PROG_PKG_CONFIG])
  26. AC_CACHE_CHECK([lzlib's file name],
  27. [guile_cv_liblz_libdir],
  28. [if test "$cross_compiling" = yes; then
  29. # When cross-compiling, we cannot rely on 'ldd'. Instead, look
  30. # the output of 'ld --verbose', assuming we're using GNU ld.
  31. echo 'int main () { return LZ_decompress_open(); }' > conftest.c
  32. guile_cv_liblz_libdir="\
  33. `$CC conftest.c -o conftest$EXEEXT -llz -Wl,--verbose 2>/dev/null \
  34. | grep -E '^/.*/liblz\.(a|so)'`"
  35. rm -f conftest.c conftest$EXEEXT
  36. else
  37. old_LIBS="$LIBS"
  38. LIBS="-llz"
  39. AC_LINK_IFELSE([AC_LANG_SOURCE([int main () { return LZ_decompress_open(); }])],
  40. [guile_cv_liblz_libdir="`ldd conftest$EXEEXT | grep liblz | sed '-es/.*=> \(.*\) .*$/\1/g'`"])
  41. LIBS="$old_LIBS"
  42. fi])
  43. $1="$guile_cv_liblz_libdir"
  44. ])
  45. dnl Library name of lzlib suitable for 'dynamic-link'.
  46. GUILE_LIBLZ_FILE_NAME([LIBLZ_LIBDIR])
  47. if test "x$LIBLZ_LIBDIR" = "x"; then
  48. LIBLZ_LIBDIR="liblz"
  49. else
  50. # Strip the .so or .so.1 extension since that's what 'dynamic-link' expects.
  51. LIBLZ_LIBDIR="`echo $LIBLZ_LIBDIR | sed -es'/\.so\(\.[[0-9.]]\+\)\?//g'`"
  52. fi
  53. AC_SUBST([LIBLZ_LIBDIR])
  54. dnl Installation directories for .scm and .go files.
  55. guilemoduledir="${datarootdir}/guile/site/$GUILE_EFFECTIVE_VERSION"
  56. guileobjectdir="${libdir}/guile/$GUILE_EFFECTIVE_VERSION/site-ccache"
  57. AC_SUBST([guilemoduledir])
  58. AC_SUBST([guileobjectdir])
  59. AC_OUTPUT