dnl----- Licensing notice ---------------------------------------------------
dnl
-dnl This file is part of the Sensble Object Design, an object system for C.
+dnl This file is part of the Sensible Object Design, an object system for C.
dnl
dnl SOD is free software; you can redistribute it and/or modify
dnl it under the terms of the GNU General Public License as published by
AX_CFLAGS_WARN_ALL
mdw_LIBTOOL_VERSION_INFO
+dnl--------------------------------------------------------------------------
+dnl Convert the version number for ASDF.
+
+## This is surprisingly awful. The convention for official version numbers
+## is that they look like MAJOR.MINOR.PATCH[.BPB][-N-gHEX[+]]. ASDF
+## insists on simple numeric things separated by dots. If there's no Git
+## thing on the end, then the main version number will do fine. If there
+## is, then we insert /two/ `0's in, followed by N and the HEX converted to
+## decimal. Why two? Because if there's no brown-paper-bag number, we
+## want to make sure that the first BPB release is higher than any of the
+## preceding Git revisions.
+ver=AC_PACKAGE_VERSION
+case $ver in
+ *-*-g*)
+ base=${ver%%-*} tail=${ver#*-}
+ n=${tail%%-*} tail=${tail#*-g}
+ case $tail in *+) grubby=.1 tail=${tail%+} ;; *) grubby= ;; esac
+ rev=$(( 0x$tail ))
+ ASDF_VERSION=$base.0.0.$n.$rev$grubby
+ ;;
+ *)
+ ASDF_VERSION=$ver
+ ;;
+esac
+AC_SUBST([ASDF_VERSION])
+
dnl--------------------------------------------------------------------------
dnl Common Lisp things.
AC_MSG_RESULT([$LISPSYS])
AC_MSG_CHECKING([FASL file extension])
-FASL_TYPE=$($CL_LAUNCH -l $LISPSYS -ip \
+fasl=$($CL_LAUNCH -l $LISPSYS -ip \
'(pathname-type (compile-file-pathname "foo.lisp"))')
-AC_SUBST([FASL_TYPE])
-AC_MSG_RESULT([.$FASL_TYPE])
+AC_SUBST([fasl])
+AC_MSG_RESULT([.$fasl])
AC_ARG_WITH([lisp-source-dir],
[AS_HELP_STRING([--with-lisp-source-dir=DIR],
dnl--------------------------------------------------------------------------
dnl Output.
-AC_CONFIG_FILES([Makefile src/Makefile lib/Makefile])
+AC_CONFIG_FILES(
+ [Makefile]
+ [src/Makefile]
+ [lib/Makefile]
+ [doc/Makefile]
+ [test/Makefile])
AC_OUTPUT
dnl----- That's all, folks --------------------------------------------------