diff --git a/configure b/configure index 0165c3c9b7..fb802c1aba 100755 --- a/configure +++ b/configure @@ -804,6 +804,7 @@ SHELL' ac_subst_files='' ac_user_opts=' enable_option_checking +with_extra_version with_template with_includes with_libraries @@ -1507,6 +1508,8 @@ Optional Features: Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --with-extra-version=STRING + append STRING to version --with-template=NAME override operating system template --with-includes=DIRS look for additional header files in DIRS --with-libraries=DIRS look for additional libraries in DIRS @@ -2047,11 +2050,6 @@ ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. configure_args=$ac_configure_args - -cat >>confdefs.h <<_ACEOF -#define PG_VERSION "$PACKAGE_VERSION" -_ACEOF - PG_MAJORVERSION=`expr "$PACKAGE_VERSION" : '\([0-9][0-9]*\.[0-9][0-9]*\)'` @@ -2060,6 +2058,39 @@ cat >>confdefs.h <<_ACEOF _ACEOF + + + +# Check whether --with-extra-version was given. +if test "${with_extra_version+set}" = set; then + withval=$with_extra_version; + case $withval in + yes) + { { $as_echo "$as_me:$LINENO: error: argument required for --with-extra-version option" >&5 +$as_echo "$as_me: error: argument required for --with-extra-version option" >&2;} + { (exit 1); exit 1; }; } + ;; + no) + { { $as_echo "$as_me:$LINENO: error: argument required for --with-extra-version option" >&5 +$as_echo "$as_me: error: argument required for --with-extra-version option" >&2;} + { (exit 1); exit 1; }; } + ;; + *) + PG_VERSION="$PACKAGE_VERSION$withval" + ;; + esac + +else + PG_VERSION="$PACKAGE_VERSION" +fi + + + +cat >>confdefs.h <<_ACEOF +#define PG_VERSION "$PG_VERSION" +_ACEOF + + # Make sure we can run config.sub. $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || { { $as_echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5 @@ -30284,7 +30315,7 @@ fi cat >>confdefs.h <<_ACEOF -#define PG_VERSION_STR "PostgreSQL $PACKAGE_VERSION on $host, compiled by $cc_string, `expr $ac_cv_sizeof_void_p \* 8`-bit" +#define PG_VERSION_STR "PostgreSQL $PG_VERSION on $host, compiled by $cc_string, `expr $ac_cv_sizeof_void_p \* 8`-bit" _ACEOF diff --git a/configure.in b/configure.in index 5479eab75c..ebbb712295 100644 --- a/configure.in +++ b/configure.in @@ -29,11 +29,15 @@ AC_CONFIG_AUX_DIR(config) AC_PREFIX_DEFAULT(/usr/local/pgsql) AC_SUBST(configure_args, [$ac_configure_args]) -AC_DEFINE_UNQUOTED(PG_VERSION, "$PACKAGE_VERSION", [PostgreSQL version as a string]) [PG_MAJORVERSION=`expr "$PACKAGE_VERSION" : '\([0-9][0-9]*\.[0-9][0-9]*\)'`] AC_SUBST(PG_MAJORVERSION) AC_DEFINE_UNQUOTED(PG_MAJORVERSION, "$PG_MAJORVERSION", [PostgreSQL major version as a string]) +PGAC_ARG_REQ(with, extra-version, [STRING], [append STRING to version], + [PG_VERSION="$PACKAGE_VERSION$withval"], + [PG_VERSION="$PACKAGE_VERSION"]) +AC_DEFINE_UNQUOTED(PG_VERSION, "$PG_VERSION", [PostgreSQL version as a string]) + AC_CANONICAL_HOST template= @@ -1914,7 +1918,7 @@ else fi AC_DEFINE_UNQUOTED(PG_VERSION_STR, - ["PostgreSQL $PACKAGE_VERSION on $host, compiled by $cc_string, `expr $ac_cv_sizeof_void_p \* 8`-bit"], + ["PostgreSQL $PG_VERSION on $host, compiled by $cc_string, `expr $ac_cv_sizeof_void_p \* 8`-bit"], [A string containing the version number, platform, and C compiler]) # Supply a numeric version string for use by 3rd party add-ons diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml index 2bdb3f10b3..fc6559d708 100644 --- a/doc/src/sgml/installation.sgml +++ b/doc/src/sgml/installation.sgml @@ -628,6 +628,19 @@ su - postgres + + + + + Append STRING to the PostgreSQL version number. You + can use this, for example, to mark binaries built from unreleased Git + snapshots or containing custom patches with an extra version string + such as a git describe identifier or a + distribution package release number. + + + +