summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLarry Knox <lrknox@hdfgroup.org>2015-10-13 03:40:34 (GMT)
committerLarry Knox <lrknox@hdfgroup.org>2015-10-13 03:40:34 (GMT)
commit1771404cd0b35da1fdc5013edeb363714a6bc33d (patch)
treeea16deb579622f4db3e33a92bb559fcf5499488e
parentf6747fb9d7a29ef6111188d1e7bd78cbbecd89db (diff)
downloadhdf5-1771404cd0b35da1fdc5013edeb363714a6bc33d.zip
hdf5-1771404cd0b35da1fdc5013edeb363714a6bc33d.tar.gz
hdf5-1771404cd0b35da1fdc5013edeb363714a6bc33d.tar.bz2
[svn-r28046] bin/h5vers:
revised script to address HDFFV-9411 - patch<n> is an official release and should not include the string "currently under development" config/lt_vers.am: add LT_*_VERS_* variables to allow incrementing wrapper libtool version numbers for shared library files independent of each other and the libhdf5 libtool version number. */Makefile.am match variables for each wrapper to use version numbers set in config/lt_vers.am */Makefile.in updated by reconfigure with changes to lt_vers.am and */Makefile.am.
-rwxr-xr-xbin/h5vers46
-rw-r--r--c++/src/Makefile.am2
-rw-r--r--c++/src/Makefile.in17
-rw-r--r--config/lt_vers.am20
-rwxr-xr-xconfigure2
-rw-r--r--fortran/src/Makefile.am2
-rw-r--r--fortran/src/Makefile.in17
-rw-r--r--hl/c++/src/Makefile.am2
-rw-r--r--hl/c++/src/Makefile.in17
-rw-r--r--hl/fortran/src/Makefile.am2
-rw-r--r--hl/fortran/src/Makefile.in17
-rw-r--r--hl/src/Makefile.am2
-rw-r--r--hl/src/Makefile.in17
-rw-r--r--src/Makefile.in15
14 files changed, 149 insertions, 29 deletions
diff --git a/bin/h5vers b/bin/h5vers
index 2fe9105..169f89b 100755
--- a/bin/h5vers
+++ b/bin/h5vers
@@ -243,6 +243,14 @@ if ($set) {
@newver = @curver;
}
+# Note if the new version is for an official release.
+# if the fourth version field is empty or contains "patch",
+# "currently under development" shouldn't be printed as
+# part of the version string.
+my $is_official_release="";
+if ($newver[3] eq "" || $newver[3] =~ /patch\d/) {
+ $is_official_release="true";
+}
# Note if the version increased or decreased
my $version_increased="";
# Print a warning if the version got smaller (don't check annot field)
@@ -276,25 +284,29 @@ if ($LT_VERS && $version_increased) {
close FILE;
local($_) = $contentsy;
-
- my ($lt_revision) = /^LT_VERS_REVISION\s*=\s*(\d+)/m;
- my $new_lt_revision = $lt_revision+1;
- ($contentsy) =~ s/^(LT_VERS_REVISION\s*=\s*)\d+/$1$new_lt_revision/m;
-
- open FILE, ">$LT_VERS" or die "$LT_VERS: $!\n";
- print FILE $contentsy;
- close FILE;
+
+ # As of the HDF5 v1.8.16 release, h5vers should not increment
+ # the LT_VERS numbers, so the next 6 lines are commented out.
+ # A future version may copy the numbers to H5public.h, so this
+ # section is retained for future reference.
+ #my ($lt_revision) = /^LT_VERS_REVISION\s*=\s*(\d+)/m;
+ #my $new_lt_revision = $lt_revision+1;
+ #($contentsy) =~ s/^(LT_VERS_REVISION\s*=\s*)\d+/$1$new_lt_revision/m;
+
+ #open FILE, ">$LT_VERS" or die "$LT_VERS: $!\n";
+ #print FILE $contentsy;
+ #close FILE;
}
+
# Update the README.txt file
if ($README) {
open FILE, $README or die "$README: $!\n";
my @contents = <FILE>;
close FILE;
- $contents[0] = sprintf("HDF5 version %d.%d.%d%s %s",
+ $contents[0] = sprintf("HDF5 version %d.%d.%d%s\n",
@newver[0,1,2],
- $newver[3] eq "" ? "" : "-".$newver[3],
- "currently under development\n");
+ $is_official_release ? $newver[3] eq "" ? "" : "-".$newver[3] : "-".$newver[3]." currently under development");
open FILE, ">$README" or die "$README: $!\n";
print FILE @contents;
close FILE;
@@ -305,10 +317,9 @@ if ($RELEASE) {
open FILE, $RELEASE or die "$RELEASE: $!\n";
my @contents = <FILE>;
close FILE;
- $contents[0] = sprintf("HDF5 version %d.%d.%d%s %s",
+ $contents[0] = sprintf("HDF5 version %d.%d.%d%s\n",
@newver[0,1,2],
- $newver[3] eq "" ? "" : "-".$newver[3],
- "currently under development\n");
+ $is_official_release ? $newver[3] eq "" ? "" : "-".$newver[3] : "-".$newver[3]." currently under development");
open FILE, ">$RELEASE" or die "$RELEASE: $!\n";
print FILE @contents;
close FILE;
@@ -317,10 +328,9 @@ if ($RELEASE) {
# Update the c++/src/cpp_doc_config file
if ($CPP_DOC_CONFIG) {
my $data = read_file($CPP_DOC_CONFIG);
- my $version_string = sprintf("\"%d.%d.%d%s %s\"",
- @newver[0,1,2],
- $newver[3] eq "" ? "" : "-".$newver[3],
- "currently under development");
+ my $version_string = sprintf("\"%d.%d.%d%s\"",
+ @newver[0,1,2],
+ $is_official_release ? $newver[3] eq "" ? "" : "-".$newver[3] : "-".$newver[3]." currently under development");
$data =~ s/PROJECT_NUMBER\s*=.*/PROJECT_NUMBER = $version_string/;
diff --git a/c++/src/Makefile.am b/c++/src/Makefile.am
index 84af348..6cd4768 100644
--- a/c++/src/Makefile.am
+++ b/c++/src/Makefile.am
@@ -28,7 +28,7 @@ AM_CPPFLAGS+=-I$(top_srcdir)/src
lib_LTLIBRARIES=libhdf5_cpp.la
# Add libtool numbers to the HDF5 C++ library (from config/lt_vers.am)
-libhdf5_cpp_la_LDFLAGS= -version-info $(LT_VERS_INTERFACE):$(LT_VERS_REVISION):$(LT_VERS_AGE) $(AM_LDFLAGS)
+libhdf5_cpp_la_LDFLAGS= -version-info $(LT_CXX_VERS_INTERFACE):$(LT_CXX_VERS_REVISION):$(LT_CXX_VERS_AGE) $(AM_LDFLAGS)
bin_SCRIPTS=h5c++
diff --git a/c++/src/Makefile.in b/c++/src/Makefile.in
index 2acaf12..e425c9f 100644
--- a/c++/src/Makefile.in
+++ b/c++/src/Makefile.in
@@ -673,12 +673,27 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.clog2
LT_VERS_INTERFACE = 11
LT_VERS_REVISION = 0
LT_VERS_AGE = 1
+LT_CXX_VERS_INTERFACE = 11
+LT_CXX_VERS_REVISION = 0
+LT_CXX_VERS_AGE = 0
+LT_F_VERS_INTERFACE = 11
+LT_F_VERS_REVISION = 0
+LT_F_VERS_AGE = 1
+LT_HL_VERS_INTERFACE = 11
+LT_HL_VERS_REVISION = 0
+LT_HL_VERS_AGE = 1
+LT_HL_CXX_VERS_INTERFACE = 11
+LT_HL_CXX_VERS_REVISION = 0
+LT_HL_CXX_VERS_AGE = 1
+LT_HL_F_VERS_INTERFACE = 11
+LT_HL_F_VERS_REVISION = 0
+LT_HL_F_VERS_AGE = 1
# This is our main target
lib_LTLIBRARIES = libhdf5_cpp.la
# Add libtool numbers to the HDF5 C++ library (from config/lt_vers.am)
-libhdf5_cpp_la_LDFLAGS = -version-info $(LT_VERS_INTERFACE):$(LT_VERS_REVISION):$(LT_VERS_AGE) $(AM_LDFLAGS)
+libhdf5_cpp_la_LDFLAGS = -version-info $(LT_CXX_VERS_INTERFACE):$(LT_CXX_VERS_REVISION):$(LT_CXX_VERS_AGE) $(AM_LDFLAGS)
bin_SCRIPTS = h5c++
# Source files for the library
diff --git a/config/lt_vers.am b/config/lt_vers.am
index ed7de1b..41e757c 100644
--- a/config/lt_vers.am
+++ b/config/lt_vers.am
@@ -44,6 +44,26 @@ LT_VERS_AGE = 1
## bin/h5vers, don't move LT_VERS_REVISION from the fourth line
## without also editing the script!
+## Version numbers for wrapper shared library files.
+LT_CXX_VERS_INTERFACE = 11
+LT_CXX_VERS_REVISION = 0
+LT_CXX_VERS_AGE = 0
+
+LT_F_VERS_INTERFACE = 11
+LT_F_VERS_REVISION = 0
+LT_F_VERS_AGE = 1
+
+LT_HL_VERS_INTERFACE = 11
+LT_HL_VERS_REVISION = 0
+LT_HL_VERS_AGE = 1
+
+LT_HL_CXX_VERS_INTERFACE = 11
+LT_HL_CXX_VERS_REVISION = 0
+LT_HL_CXX_VERS_AGE = 1
+
+LT_HL_F_VERS_INTERFACE = 11
+LT_HL_F_VERS_REVISION = 0
+LT_HL_F_VERS_AGE = 1
# Copyright by The HDF Group.
# Copyright by the Board of Trustees of the University of Illinois.
diff --git a/configure b/configure
index ebec12d..be53292 100755
--- a/configure
+++ b/configure
@@ -1,5 +1,5 @@
#! /bin/sh
-# From configure.ac Id: configure.ac 27947 2015-10-04 10:48:11Z hdftest .
+# From configure.ac Id: configure.ac 28014 2015-10-08 22:14:41Z lrknox .
# Guess values for system-dependent variables and create Makefiles.
# Generated by GNU Autoconf 2.69 for HDF5 1.8.16-pre1.
#
diff --git a/fortran/src/Makefile.am b/fortran/src/Makefile.am
index a4b3843..b199bce 100644
--- a/fortran/src/Makefile.am
+++ b/fortran/src/Makefile.am
@@ -32,7 +32,7 @@ AM_FCLIBS=$(LIBHDF5)
lib_LTLIBRARIES=libhdf5_fortran.la
# Add libtool numbers to the HDF5 Fortran library (from config/lt_vers.am)
-libhdf5_fortran_la_LDFLAGS= -version-info $(LT_VERS_INTERFACE):$(LT_VERS_REVISION):$(LT_VERS_AGE) $(AM_LDFLAGS)
+libhdf5_fortran_la_LDFLAGS= -version-info $(LT_F_VERS_INTERFACE):$(LT_F_VERS_REVISION):$(LT_F_VERS_AGE) $(AM_LDFLAGS)
# Some Fortran compilers can't build shared libraries, so sometimes we
# want to build a shared C library and a static Fortran library. If so,
diff --git a/fortran/src/Makefile.in b/fortran/src/Makefile.in
index e23aab7..9b81bfb 100644
--- a/fortran/src/Makefile.in
+++ b/fortran/src/Makefile.in
@@ -726,13 +726,28 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.clog2
LT_VERS_INTERFACE = 11
LT_VERS_REVISION = 0
LT_VERS_AGE = 1
+LT_CXX_VERS_INTERFACE = 11
+LT_CXX_VERS_REVISION = 0
+LT_CXX_VERS_AGE = 0
+LT_F_VERS_INTERFACE = 11
+LT_F_VERS_REVISION = 0
+LT_F_VERS_AGE = 1
+LT_HL_VERS_INTERFACE = 11
+LT_HL_VERS_REVISION = 0
+LT_HL_VERS_AGE = 1
+LT_HL_CXX_VERS_INTERFACE = 11
+LT_HL_CXX_VERS_REVISION = 0
+LT_HL_CXX_VERS_AGE = 1
+LT_HL_F_VERS_INTERFACE = 11
+LT_HL_F_VERS_REVISION = 0
+LT_HL_F_VERS_AGE = 1
AM_FCLIBS = $(LIBHDF5)
# This is our main target, the fortran library
lib_LTLIBRARIES = libhdf5_fortran.la
# Add libtool numbers to the HDF5 Fortran library (from config/lt_vers.am)
-libhdf5_fortran_la_LDFLAGS = -version-info $(LT_VERS_INTERFACE):$(LT_VERS_REVISION):$(LT_VERS_AGE) $(AM_LDFLAGS)
+libhdf5_fortran_la_LDFLAGS = -version-info $(LT_F_VERS_INTERFACE):$(LT_F_VERS_REVISION):$(LT_F_VERS_AGE) $(AM_LDFLAGS)
@BUILD_PARALLEL_CONDITIONAL_FALSE@PARALLEL_COND_SRC = HDF5.f90
# Include HDF5.f90 if parallel is disabled, HDF5mpiof* if parallel is enabled
diff --git a/hl/c++/src/Makefile.am b/hl/c++/src/Makefile.am
index b268948..c78f5fa 100644
--- a/hl/c++/src/Makefile.am
+++ b/hl/c++/src/Makefile.am
@@ -28,7 +28,7 @@ AM_CPPFLAGS+=-I$(top_srcdir)/src -I$(top_srcdir)/hl/src
lib_LTLIBRARIES=libhdf5_hl_cpp.la
# Add libtool numbers to the HDF5 HL C++ library (from config/lt_vers.am)
-libhdf5_hl_cpp_la_LDFLAGS= -version-info $(LT_VERS_INTERFACE):$(LT_VERS_REVISION):$(LT_VERS_AGE) $(AM_LDFLAGS)
+libhdf5_hl_cpp_la_LDFLAGS= -version-info $(LT_HL_CXX_VERS_INTERFACE):$(LT_HL_CXX_VERS_REVISION):$(LT_HL_CXX_VERS_AGE) $(AM_LDFLAGS)
# Source files for the library
# At the moment, only the H5PT Packet Table has a C++ API.
diff --git a/hl/c++/src/Makefile.in b/hl/c++/src/Makefile.in
index 7ff2405..d661bfa 100644
--- a/hl/c++/src/Makefile.in
+++ b/hl/c++/src/Makefile.in
@@ -664,12 +664,27 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.clog2
LT_VERS_INTERFACE = 11
LT_VERS_REVISION = 0
LT_VERS_AGE = 1
+LT_CXX_VERS_INTERFACE = 11
+LT_CXX_VERS_REVISION = 0
+LT_CXX_VERS_AGE = 0
+LT_F_VERS_INTERFACE = 11
+LT_F_VERS_REVISION = 0
+LT_F_VERS_AGE = 1
+LT_HL_VERS_INTERFACE = 11
+LT_HL_VERS_REVISION = 0
+LT_HL_VERS_AGE = 1
+LT_HL_CXX_VERS_INTERFACE = 11
+LT_HL_CXX_VERS_REVISION = 0
+LT_HL_CXX_VERS_AGE = 1
+LT_HL_F_VERS_INTERFACE = 11
+LT_HL_F_VERS_REVISION = 0
+LT_HL_F_VERS_AGE = 1
# This is our main target
lib_LTLIBRARIES = libhdf5_hl_cpp.la
# Add libtool numbers to the HDF5 HL C++ library (from config/lt_vers.am)
-libhdf5_hl_cpp_la_LDFLAGS = -version-info $(LT_VERS_INTERFACE):$(LT_VERS_REVISION):$(LT_VERS_AGE) $(AM_LDFLAGS)
+libhdf5_hl_cpp_la_LDFLAGS = -version-info $(LT_HL_CXX_VERS_INTERFACE):$(LT_HL_CXX_VERS_REVISION):$(LT_HL_CXX_VERS_AGE) $(AM_LDFLAGS)
# Source files for the library
# At the moment, only the H5PT Packet Table has a C++ API.
diff --git a/hl/fortran/src/Makefile.am b/hl/fortran/src/Makefile.am
index 512c2c8..f4d39e3 100644
--- a/hl/fortran/src/Makefile.am
+++ b/hl/fortran/src/Makefile.am
@@ -30,7 +30,7 @@ AM_FCFLAGS+=-I$(top_builddir)/fortran/src $(F9XMODFLAG)$(top_builddir)/fortran/s
lib_LTLIBRARIES=libhdf5hl_fortran.la
# Add libtool numbers to the HDF5 HL Fortran library (from config/lt_vers.am)
-libhdf5hl_fortran_la_LDFLAGS= -version-info $(LT_VERS_INTERFACE):$(LT_VERS_REVISION):$(LT_VERS_AGE) $(AM_LDFLAGS)
+libhdf5hl_fortran_la_LDFLAGS= -version-info $(LT_HL_F_VERS_INTERFACE):$(LT_HL_F_VERS_REVISION):$(LT_HL_F_VERS_AGE) $(AM_LDFLAGS)
# Some Fortran compilers can't build shared libraries, so sometimes we
# want to build a shared C library and a static Fortran library. If so,
diff --git a/hl/fortran/src/Makefile.in b/hl/fortran/src/Makefile.in
index ade1ead..c0f1f3d 100644
--- a/hl/fortran/src/Makefile.in
+++ b/hl/fortran/src/Makefile.in
@@ -682,12 +682,27 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.clog2
LT_VERS_INTERFACE = 11
LT_VERS_REVISION = 0
LT_VERS_AGE = 1
+LT_CXX_VERS_INTERFACE = 11
+LT_CXX_VERS_REVISION = 0
+LT_CXX_VERS_AGE = 0
+LT_F_VERS_INTERFACE = 11
+LT_F_VERS_REVISION = 0
+LT_F_VERS_AGE = 1
+LT_HL_VERS_INTERFACE = 11
+LT_HL_VERS_REVISION = 0
+LT_HL_VERS_AGE = 1
+LT_HL_CXX_VERS_INTERFACE = 11
+LT_HL_CXX_VERS_REVISION = 0
+LT_HL_CXX_VERS_AGE = 1
+LT_HL_F_VERS_INTERFACE = 11
+LT_HL_F_VERS_REVISION = 0
+LT_HL_F_VERS_AGE = 1
# Our main target, the high-level fortran library
lib_LTLIBRARIES = libhdf5hl_fortran.la
# Add libtool numbers to the HDF5 HL Fortran library (from config/lt_vers.am)
-libhdf5hl_fortran_la_LDFLAGS = -version-info $(LT_VERS_INTERFACE):$(LT_VERS_REVISION):$(LT_VERS_AGE) $(AM_LDFLAGS)
+libhdf5hl_fortran_la_LDFLAGS = -version-info $(LT_HL_F_VERS_INTERFACE):$(LT_HL_F_VERS_REVISION):$(LT_HL_F_VERS_AGE) $(AM_LDFLAGS)
# Source files for the library
#if BUILD_PARALLEL_CONDITIONAL
diff --git a/hl/src/Makefile.am b/hl/src/Makefile.am
index 09c24dc..f2b90d0 100644
--- a/hl/src/Makefile.am
+++ b/hl/src/Makefile.am
@@ -28,7 +28,7 @@ AM_CPPFLAGS+=-I$(top_srcdir)/src
lib_LTLIBRARIES=libhdf5_hl.la
# Add libtool numbers to the HDF5 hl library (from config/lt_vers.am)
-libhdf5_hl_la_LDFLAGS= -version-info $(LT_VERS_INTERFACE):$(LT_VERS_REVISION):$(LT_VERS_AGE) $(AM_LDFLAGS)
+libhdf5_hl_la_LDFLAGS= -version-info $(LT_HL_VERS_INTERFACE):$(LT_HL_VERS_REVISION):$(LT_HL_VERS_AGE) $(AM_LDFLAGS)
# List sources to include in the HDF5 HL Library.
libhdf5_hl_la_SOURCES=H5DO.c H5DS.c H5IM.c H5LT.c H5LTanalyze.c H5LTparse.c H5PT.c H5TB.c
diff --git a/hl/src/Makefile.in b/hl/src/Makefile.in
index a1cbcc7..f5a9fce 100644
--- a/hl/src/Makefile.in
+++ b/hl/src/Makefile.in
@@ -663,12 +663,27 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.clog2
LT_VERS_INTERFACE = 11
LT_VERS_REVISION = 0
LT_VERS_AGE = 1
+LT_CXX_VERS_INTERFACE = 11
+LT_CXX_VERS_REVISION = 0
+LT_CXX_VERS_AGE = 0
+LT_F_VERS_INTERFACE = 11
+LT_F_VERS_REVISION = 0
+LT_F_VERS_AGE = 1
+LT_HL_VERS_INTERFACE = 11
+LT_HL_VERS_REVISION = 0
+LT_HL_VERS_AGE = 1
+LT_HL_CXX_VERS_INTERFACE = 11
+LT_HL_CXX_VERS_REVISION = 0
+LT_HL_CXX_VERS_AGE = 1
+LT_HL_F_VERS_INTERFACE = 11
+LT_HL_F_VERS_REVISION = 0
+LT_HL_F_VERS_AGE = 1
# This library is our main target.
lib_LTLIBRARIES = libhdf5_hl.la
# Add libtool numbers to the HDF5 hl library (from config/lt_vers.am)
-libhdf5_hl_la_LDFLAGS = -version-info $(LT_VERS_INTERFACE):$(LT_VERS_REVISION):$(LT_VERS_AGE) $(AM_LDFLAGS)
+libhdf5_hl_la_LDFLAGS = -version-info $(LT_HL_VERS_INTERFACE):$(LT_HL_VERS_REVISION):$(LT_HL_VERS_AGE) $(AM_LDFLAGS)
# List sources to include in the HDF5 HL Library.
libhdf5_hl_la_SOURCES = H5DO.c H5DS.c H5IM.c H5LT.c H5LTanalyze.c H5LTparse.c H5PT.c H5TB.c
diff --git a/src/Makefile.in b/src/Makefile.in
index fdbbc8e..4b1a7f1 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -721,6 +721,21 @@ CHECK_CLEANFILES = *.chkexe *.chklog *.clog *.clog2
LT_VERS_INTERFACE = 11
LT_VERS_REVISION = 0
LT_VERS_AGE = 1
+LT_CXX_VERS_INTERFACE = 11
+LT_CXX_VERS_REVISION = 0
+LT_CXX_VERS_AGE = 0
+LT_F_VERS_INTERFACE = 11
+LT_F_VERS_REVISION = 0
+LT_F_VERS_AGE = 1
+LT_HL_VERS_INTERFACE = 11
+LT_HL_VERS_REVISION = 0
+LT_HL_VERS_AGE = 1
+LT_HL_CXX_VERS_INTERFACE = 11
+LT_HL_CXX_VERS_REVISION = 0
+LT_HL_CXX_VERS_AGE = 1
+LT_HL_F_VERS_INTERFACE = 11
+LT_HL_F_VERS_REVISION = 0
+LT_HL_F_VERS_AGE = 1
# Our main target, the HDF5 library
lib_LTLIBRARIES = libhdf5.la