-The @PACKAGE_NAME@, version @PACKAGE_VERSION@
+@PACKAGE_NAME@, version @PACKAGE_VERSION@
-# Empty file to avoid a dependency on automake: autoreconf calls aclocal to
-# generate a temporary aclocal.m4t when no aclocal.m4 is present.
+# FP_SETUP_PROJECT_INFO
+# ---------------------
+AC_DEFUN([FP_SETUP_PROJECT_INFO],
+[# Some renamings
+AC_SUBST([ProjectName], [$PACKAGE_NAME])
+AC_SUBST([ProjectNameShort], [$PACKAGE_TARNAME])
+AC_SUBST([ProjectVersion], [$PACKAGE_VERSION])
+
+# Split PACKAGE_VERSION into (possibly empty) parts
+VERSION_MAJOR=`echo $PACKAGE_VERSION | sed 's/^\(@<:@^.@:>@*\)\(\.\?\(.*\)\)$/\1'/`
+VERSION_TMP=`echo $PACKAGE_VERSION | sed 's/^\(@<:@^.@:>@*\)\(\.\?\(.*\)\)$/\3'/`
+VERSION_MINOR=`echo $VERSION_TMP | sed 's/^\(@<:@^.@:>@*\)\(\.\?\(.*\)\)$/\1'/`
+ProjectPatchLevel=`echo $VERSION_TMP | sed 's/^\(@<:@^.@:>@*\)\(\.\?\(.*\)\)$/\3'/`
+
+# Calculate project version as an integer, using 2 digits for minor version
+case $VERSION_MINOR in
+ ?) ProjectVersionInt=${VERSION_MAJOR}0${VERSION_MINOR} ;;
+ ??) ProjectVersionInt=${VERSION_MAJOR}${VERSION_MINOR} ;;
+ *) AC_MSG_ERROR([bad minor version in $PACKAGE_VERSION]) ;;
+esac
+AC_SUBST([ProjectVersionInt])
+
+# The project patchlevel is zero unless stated otherwise
+test -z "$ProjectPatchLevel" && ProjectPatchLevel=0
+AC_SUBST([ProjectPatchLevel])
+])# FP_SETUP_PROJECT_INFO
# Initialise and check sanity.
-AC_INIT([Glasgow Haskell Compiler], [6.3], [glasgow-haskell-bugs@haskell.org], [ghc])
+AC_INIT([The Glorious Glasgow Haskell Compilation System], [6.3], [glasgow-haskell-bugs@haskell.org], [ghc])
AC_CONFIG_SRCDIR([ghc.spec.in])
-# Calculate project version as an integer, using 2 digits for minor version
-case $PACKAGE_VERSION in
- *.?) ProjectVersionInt=`echo "$PACKAGE_VERSION" | sed 's,^\(.*\)\.\(.\)$,\10\2,'` ;;
- *.??) ProjectVersionInt=`echo "$PACKAGE_VERSION" | sed 's,^\(.*\)\.\(..\)$,\1\2,'` ;;
- *.?.*) ProjectVersionInt=`echo "$PACKAGE_VERSION" | sed 's,^\(.*\)\.\(.\)\.\(.*\)$,\10\2,'` ;;
- *.??.*) ProjectVersionInt=`echo "$PACKAGE_VERSION" | sed 's,^\(.*\)\.\(..\)\.\(.*\)$,\1\2,'` ;;
- *) AC_MSG_ERROR([bad package version $PACKAGE_VERSION]) ;;
-esac
-AC_SUBST([ProjectVersionInt])
+FP_SETUP_PROJECT_INFO
# Hmmm, we fix the RPM release number to 1 here... Is this convenient?
AC_SUBST([release], [1])
# change between versions. Rationale: calling conventions or other
# random .o-file stuff might change even if the .hi syntax doesn't
-ProjectName = The Glorious Glasgow Haskell Compilation System
-ProjectNameShort = ghc
-ProjectVersion = @PACKAGE_VERSION@
+ProjectName = @ProjectName@
+ProjectNameShort = @ProjectNameShort@
+ProjectVersion = @ProjectVersion@
ProjectVersionInt = @ProjectVersionInt@
-ProjectPatchLevel = 0
+ProjectPatchLevel = @ProjectPatchLevel@
# Interface file version (hi-boot files only)
#