From ce11649a11fa0378167b9ab78c22378d1ae3f90c Mon Sep 17 00:00:00 2001 From: Dave Parker Date: Fri, 5 Apr 2013 22:51:44 +0000 Subject: [PATCH] Move version number into prism.Version and automate build process to extract version. git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@6663 bbc10eb1-c90d-0410-af57-cb519fbb1720 --- Makefile | 16 +++++++++++----- prism/src/prism/Prism.java | 9 ++++----- prism/src/prism/Version.java | 9 +++++++++ 3 files changed, 24 insertions(+), 10 deletions(-) create mode 100644 prism/src/prism/Version.java diff --git a/Makefile b/Makefile index 1af9825f..9789c7d1 100644 --- a/Makefile +++ b/Makefile @@ -7,9 +7,14 @@ default: none none: @echo 'Did you want to build PRISM? Do "cd prism" and then "make"' -VERSION=# default value for VERSION is blank to force provision at command-line +# By default, extract version number from Version.java +# Can be overridden by passing VERSION=xxx +VERSION_NUM = $(shell grep versionString prism/src/prism/Version.java | sed -E 's/[^"]+"([^"]+)"[^"]+/\1/') +VERSION_SUFFIX = $(shell grep versionSuffixString prism/src/prism/Version.java | sed -E 's/[^"]+"([^"]*)"[^"]+/\1/') +VERSION = "$(VERSION_NUM)$(VERSION_SUFFIX)" -dist_src: dist_check_version +# Build a source distribution +dist_src: version mkdir dontcopy @if [ -e prism/examples ]; then \ echo "mv prism/examples dontcopy"; mv prism/examples dontcopy; \ @@ -21,9 +26,10 @@ dist_src: dist_check_version mv cudd prism mv prism "prism-$(VERSION)-src" (cd "prism-$(VERSION)-src"; $(MAKE) dist_src ) - tar cfz "prism-$(VERSION)-src.tar.gz" "prism-$(VERSION)-src" + tar --exclude=.svn cfz "prism-$(VERSION)-src.tar.gz" "prism-$(VERSION)-src" -dist_check_version: - @if [ "$(VERSION)" = "" ]; then echo "Usage: make dist_src VERSION=XXX"; exit 1; fi +# Display version +version: + @echo VERSION = $(VERSION) ################################################# diff --git a/prism/src/prism/Prism.java b/prism/src/prism/Prism.java index 6c09ae23..510d9b11 100644 --- a/prism/src/prism/Prism.java +++ b/prism/src/prism/Prism.java @@ -49,11 +49,10 @@ import prism.Model; */ public class Prism implements PrismSettingsListener { - // prism version - private static String version = "4.1"; - // prism version suffix - //private static String versionSuffix = ""; - private static String versionSuffix = ".beta.r6251"; + // PRISM version + private static String version = prism.Version.versionString; + // PRISM version suffix + private static String versionSuffix = prism.Version.versionSuffixString; //------------------------------------------------------------------------------ // Constants diff --git a/prism/src/prism/Version.java b/prism/src/prism/Version.java new file mode 100644 index 00000000..199f4993 --- /dev/null +++ b/prism/src/prism/Version.java @@ -0,0 +1,9 @@ +package prism; + +public class Version +{ + // PRISM version number: just a single string (will be extracted by scripts) + public static String versionString = "4.1"; + // PRISM version suffix: just a single string (will be extracted by scripts) + public static String versionSuffixString = ".beta"; +}