summaryrefslogtreecommitdiff
path: root/amiga
diff options
context:
space:
mode:
authorChris Young <chris@unsatisfactorysoftware.co.uk>2008-10-08 22:55:58 +0000
committerChris Young <chris@unsatisfactorysoftware.co.uk>2008-10-08 22:55:58 +0000
commitea205ecf23c1d2b4eb1c2bec6f9f14751106b5be (patch)
tree2fb8cd69e1044933fb1f01643ccfdc3064742342 /amiga
parent54013eb1fae2de815e7036e161089e691136fa42 (diff)
downloadnetsurf-ea205ecf23c1d2b4eb1c2bec6f9f14751106b5be.tar.gz
netsurf-ea205ecf23c1d2b4eb1c2bec6f9f14751106b5be.tar.bz2
Generate AmigaOS version string in correct format, taking:
netsurf_version_major from desktop/version.c as version SVN revision from local repository as revision This should ensure that the internal version number will increase correctly (version and revision are treated as seperate values > 0), whereas NetSurf's public release version (currently coming up to 2.0) is not guaranteed to be in legal AmigaOS format or increase validly under AmigaOS rules. The internal version string has been added for future AmiUpdate support as well as making it easier to see and compare versions of interim builds. amiga/version.c can safely be removed from the source list when cross-compiling (where ARexx is not available), or manually created, as it only defines this internal version string and does not contain any code. amiga/version.c is automatically removed after linking to ensure it always reflects the current SVN revision. svn path=/trunk/netsurf/; revision=5510
Diffstat (limited to 'amiga')
-rw-r--r--amiga/version.rexx45
1 files changed, 45 insertions, 0 deletions
diff --git a/amiga/version.rexx b/amiga/version.rexx
new file mode 100644
index 000000000..b649d7b53
--- /dev/null
+++ b/amiga/version.rexx
@@ -0,0 +1,45 @@
+/*
+ * Copyright 2008 Chris Young <chris@unsatisfactorysoftware.co.uk>
+ *
+ * This file is part of NetSurf, http://www.netsurf-browser.org/
+ *
+ * NetSurf is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * NetSurf is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+/* This file generates an AmigaOS compliant version string in version.h */
+
+address command 'svn info >t:ns_svn'
+
+if open('tmp','t:ns_svn','R') then do
+ do until word(var,1) = "REVISION:"
+ var = upper(readln('tmp'))
+ end
+ dummy = close('tmp')
+ address command 'delete t:ns_svn'
+end
+
+svnrev = word(var,2)
+
+if open('tmp','desktop/version.c','R') then do
+ do until word(var,3) = "NETSURF_VERSION_MAJOR"
+ var = upper(readln('tmp'))
+ end
+ dummy = close('tmp')
+end
+
+majorver = compress(word(var,5),";")
+date = translate(date('E'),'.','/')
+
+say '/* This file was automatically generated from version.rexx */'
+say 'static __attribute__((used)) char verstag[] = "\0$VER: NetSurf' majorver || '.' || svnrev '(' || date || ')\0";'
+