diff options
author | Tavian Barnes <tavianator@tavianator.com> | 2024-08-28 15:29:46 -0400 |
---|---|---|
committer | Tavian Barnes <tavianator@tavianator.com> | 2024-08-28 15:34:32 -0400 |
commit | 4a278d3e39a685379711727eac7bfaa83679e0e4 (patch) | |
tree | 855bedf766d8c0c4ba72ca59bdb19a137ae06c94 | |
parent | 97849b81fb146cc1d53a369dda03c60360da08b5 (diff) | |
download | bfs-4a278d3e39a685379711727eac7bfaa83679e0e4.tar.xz |
build: Allow ./configure --version=X.Y.Z
-rw-r--r-- | build/config.mk | 1 | ||||
-rwxr-xr-x | configure | 12 |
2 files changed, 8 insertions, 5 deletions
diff --git a/build/config.mk b/build/config.mk index 80206c7..86a4861 100644 --- a/build/config.mk +++ b/build/config.mk @@ -38,6 +38,7 @@ gen/vars.mk:: @printf 'MKDIR := %s\n' "$$XMKDIR" >>$@ @printf 'PKG_CONFIG := %s\n' "$$XPKG_CONFIG" >>$@ @printf 'RM := %s\n' "$$XRM" >>$@ + @test -z "$$VERSION" || printf 'export VERSION=%s\n' "$$VERSION" >>$@ ${VCAT} $@ # Sets the build flags. This depends on vars.mk and uses a recursive make so @@ -7,6 +7,9 @@ set -eu +# Get the relative path to the source tree based on how the script was run +DIR=$(dirname -- "$0") + # Print the help message help() { cat <<EOF @@ -57,6 +60,8 @@ Packaging: Set the installation prefix (default: /usr) --mandir=/path Set the man page directory (default: \$PREFIX/share/man) + --version=X.Y.Z + Set the version string (default: $("$DIR/build/version.sh")) This script is a thin wrapper around a makefile-based configuration system. Any other arguments will be passed directly to the $MAKE invocation, e.g. @@ -134,7 +139,7 @@ for arg; do printf 'warning: Treating "%s" like "%s"\n' "$old" "$arg" >&2 ;; esac - ;; + ;; esac case "$arg" in @@ -165,7 +170,7 @@ for arg; do esac ;; - --prefix=*|--mandir=*) + --prefix=*|--mandir=*|--version=*) set -- "$@" "$NAME=$value" ;; @@ -188,9 +193,6 @@ for arg; do esac done -# Get the relative path to the source tree based on how the script was run -DIR=$(dirname -- "$0") - # Set up symbolic links for out-of-tree builds for f in Makefile build completions docs src tests; do test -e "$f" || ln -s "$DIR/$f" "$f" |