public inbox for cluster-cvs@sourceware.org help / color / mirror / Atom feed
From: fabbione@sourceware.org To: cluster-cvs@sources.redhat.com, cluster-devel@redhat.com Subject: Cluster Project branch, master, updated. gfs-kernel_0_1_22-93-g53bfde1 Date: Fri, 21 Mar 2008 05:47:00 -0000 [thread overview] Message-ID: <20080321054742.7171.qmail@sourceware.org> (raw) This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Cluster Project". http://sources.redhat.com/git/gitweb.cgi?p=cluster.git;a=commitdiff;h=53bfde1e82343cfa5d2c713f97372beecee60eb6 The branch, master has been updated via 53bfde1e82343cfa5d2c713f97372beecee60eb6 (commit) from 99a0f20cc084fbf5be602db8be24b67a1e9ab6ac (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 53bfde1e82343cfa5d2c713f97372beecee60eb6 Author: Fabio M. Di Nitto <fabbione@fabbione.net> Date: Fri Mar 21 06:32:04 2008 +0100 [BUILD] Fix handling of version and libraries soname The overall handling of release_major/minor/micro was wrong and it was discovered only after the first STABLE2 release. This change obsoletes release_major/minor/micro and introduces 3 new configure options: release_version, somajor and sominor. And add options to make/official_release_version. somajor/sominor should only be numbers (no sanity check is performed) and they can either be specified when invoking configure (both must be present at the same time and they will override official_release_version) or in make/official_release_version as: SONAME "2.2" If not specified anywhere they will be generated as before. release_version can now be a random string that will be shown when asking for tool versions. When specified from the configure it will override the one specified in make/official_release_version as previously documented (ex: VERSION "2.02.01"). If not specified anywhere it will be generated by somajor.sominor. NOTE to developers: you will need to rerun configure to regenerate make/defines.mk. NOTE to packagers: sorry about this intrusive change but the problem was noticed too late. Removing --release_major/minor/micro from your configure invokation should be enough and usually those values should be set by upstream. While we provide an easy option to override values, please try to keep them consistent with upstream for easy tracking of bugs vs released versions. NOTE to release manager: make/official_release_version is not tracked in git and should now contains 2 keywords to work properly (order is not important). Signed-off-by: Fabio M. Di Nitto <fabbione@fabbione.net> ----------------------------------------------------------------------- Summary of changes: cman/lib/Makefile | 14 +++++----- configure | 79 ++++++++++++++++++++++++++++++----------------------- dlm/lib/Makefile | 26 +++++++++--------- 3 files changed, 65 insertions(+), 54 deletions(-) diff --git a/cman/lib/Makefile b/cman/lib/Makefile index 7124b80..fbc4a28 100644 --- a/cman/lib/Makefile +++ b/cman/lib/Makefile @@ -14,16 +14,16 @@ TARGET= libcman LIBDIRT=$(TARGET).a \ - $(TARGET).so.$(RELEASE_MAJOR).$(RELEASE_MINOR) + $(TARGET).so.$(SOMAJOR).$(SOMINOR) LIBSYMT=$(TARGET).so \ - $(TARGET).so.$(RELEASE_MAJOR) + $(TARGET).so.$(SOMAJOR) INCDIRT=$(TARGET).h include ../../make/defines.mk -SHAREDLIB=$(TARGET).so.${RELEASE_MAJOR}.${RELEASE_MINOR} +SHAREDLIB=$(TARGET).so.${SOMAJOR}.${SOMINOR} STATICLIB=$(TARGET).a all: $(STATICLIB) $(SHAREDLIB) @@ -41,9 +41,9 @@ $(TARGET).a: $(TARGET).o ${AR} r $@ $^ ${RANLIB} $@ -$(TARGET).so.${RELEASE_MAJOR}.${RELEASE_MINOR}: $(TARGET).o - $(CC) -shared -o $@ -Wl,-soname=$(TARGET).so.$(RELEASE_MAJOR) $< - ln -sf $(TARGET).so.$(RELEASE_MAJOR).$(RELEASE_MINOR) $(TARGET).so - ln -sf $(TARGET).so.$(RELEASE_MAJOR).$(RELEASE_MINOR) $(TARGET).so.$(RELEASE_MAJOR) +$(TARGET).so.${SOMAJOR}.${SOMINOR}: $(TARGET).o + $(CC) -shared -o $@ -Wl,-soname=$(TARGET).so.$(SOMAJOR) $< + ln -sf $(TARGET).so.$(SOMAJOR).$(SOMINOR) $(TARGET).so + ln -sf $(TARGET).so.$(SOMAJOR).$(SOMINOR) $(TARGET).so.$(SOMAJOR) clean: generalclean diff --git a/configure b/configure index 2cd1b56..21e9dbc 100755 --- a/configure +++ b/configure @@ -80,9 +80,9 @@ my %options = ( conffile => \$conffile, fence_agents => \$fence_agents, enable_xen => \$enable_xen, - release_major => \$release_major, - release_minor => \$release_minor, - release_micro => \$release_micro, + somajor => \$somajor, + sominor => \$sominor, + release_version => \$release_version, without_ccs => \$without_ccs, without_cman => \$without_cman, without_dlm => \$without_dlm, @@ -143,9 +143,9 @@ my $err = &GetOptions (\%options, 'sharedir=s', 'confdir=s', 'conffile=s', - 'release_major=s', - 'release_minor=s', - 'release_micro=s', + 'somajor=s', + 'sominor=s', + 'release_version=s', 'fence_agents=s', 'enable_xen', 'without_ccs', @@ -527,14 +527,14 @@ if (!$without_rgmanager) { if (!$disable_kernel_check) { $disable_kernel_check=0; } -if (defined($release_major) && not length $release_major) { - $release_major=""; +if (defined($somajor) && not length $somajor) { + $somajor=""; } -if (defined($release_minor) && not length $release_minor) { - $release_minor=""; +if (defined($sominor) && not length $sominor) { + $sominor=""; } -if (defined($release_micro) && not length $release_micro) { - $release_micro=""; +if (defined($release_version) && not length $release_version) { + $release_version=""; } @args = "find fence/agents -mindepth 2 -maxdepth 2 -name Makefile -printf '%h'"; @@ -624,39 +624,50 @@ while (<IFILE>) { close IFILE; -if ((not defined($release_major)) || (not defined($release_minor)) || (not defined($release_micro))) { +if ((not defined($somajor)) || (not defined($sominor)) || (not defined($release_version))) { + + my $current_soname; + my $current_version; if ( -f 'make/official_release_version' ) { - my $current_version = 0; open OFFICIAL_VERSION, '<', "make/official_release_version"; while (<OFFICIAL_VERSION>) { + if ($_ =~ /SONAME/) { + $current_soname = $_; + } if ($_ =~ /VERSION/) { $current_version = $_; - last; } } close OFFICIAL_VERSION; - $current_version =~ s/.*"(.*)"\n/$1/; - my @release_version = split /\./, $current_version; - $release_major = $release_version[0]; - $release_minor = $release_version[1]; - $release_micro = $release_version[2]; - } else { - $release_major = DEVEL; - $release_minor = `date +%s`; - chomp $release_minor; - $release_micro = 0; } -} -print OFILE "RELEASE_VERSION = $release_major.$release_minor.$release_micro\n"; -print OFILE "CFLAGS += -DRELEASE_VERSION=\\\"$release_major.$release_minor.$release_micro\\\"\n"; + if ((not defined($somajor)) || (not defined($sominor))) { + if (not defined($current_soname)) { + $somajor = DEVEL; + $sominor = `date +%s`; + chomp $sominor; + } else { + $current_soname =~ s/.*"(.*)"\n/$1/; + my @release_soname = split /\./, $current_soname; + $somajor = $release_soname[0]; + $sominor = $release_soname[1]; + } + } + + if (not defined($release_version)) { + if (not defined($current_version)) { + $release_version = "$somajor.$sominor"; + } else { + $release_version = $current_version; + $release_version =~ s/.*"(.*)"\n/$1/; + } + } +} -$release_major = abs $release_major; -$release_minor = abs $release_minor; -$release_micro = abs $release_micro; -print OFILE "RELEASE_MAJOR = $release_major\n"; -print OFILE "RELEASE_MINOR = $release_minor\n"; -print OFILE "RELEASE_MICRO = $release_micro\n"; +print OFILE "SOMAJOR = $somajor\n"; +print OFILE "SOMINOR = $sominor\n"; +print OFILE "RELEASE_VERSION = $release_version\n"; +print OFILE "CFLAGS += -DRELEASE_VERSION=\\\"$release_version\\\"\n"; close OFILE; diff --git a/dlm/lib/Makefile b/dlm/lib/Makefile index 85a78b2..b223df7 100644 --- a/dlm/lib/Makefile +++ b/dlm/lib/Makefile @@ -15,13 +15,13 @@ TARGET= libdlm LIBDIRT=$(TARGET).a \ $(TARGET)_lt.a \ - $(TARGET).so.${RELEASE_MAJOR}.${RELEASE_MINOR} \ - $(TARGET)_lt.so.${RELEASE_MAJOR}.${RELEASE_MINOR} + $(TARGET).so.${SOMAJOR}.${SOMINOR} \ + $(TARGET)_lt.so.${SOMAJOR}.${SOMINOR} LIBSYMT=$(TARGET).so \ $(TARGET)_lt.so \ - $(TARGET).so.$(RELEASE_MAJOR) \ - $(TARGET)_lt.so.$(RELEASE_MAJOR) + $(TARGET).so.$(SOMAJOR) \ + $(TARGET)_lt.so.$(SOMAJOR) INCDIRT=$(TARGET).h @@ -29,7 +29,7 @@ UDEVT=51-dlm.rules include ../../make/defines.mk -SHAREDLIB=$(TARGET).so.${RELEASE_MAJOR}.${RELEASE_MINOR} $(TARGET)_lt.so.${RELEASE_MAJOR}.${RELEASE_MINOR} +SHAREDLIB=$(TARGET).so.${SOMAJOR}.${SOMINOR} $(TARGET)_lt.so.${SOMAJOR}.${SOMINOR} STATICLIB=$(TARGET).a $(TARGET)_lt.a all: $(STATICLIB) $(SHAREDLIB) @@ -55,15 +55,15 @@ $(TARGET)_lt.a: $(TARGET)_lt.o ${AR} r $@ $^ ${RANLIB} $@ -$(TARGET).so.${RELEASE_MAJOR}.${RELEASE_MINOR}: $(TARGET).po $(AISTARGET).po - $(CC) $(PTHREAD_LDFLAGS) $(LDFLAGS) -shared -o $@ -Wl,-soname=$(TARGET).so.$(RELEASE_MAJOR) $< - ln -sf $(TARGET).so.$(RELEASE_MAJOR).$(RELEASE_MINOR) $(TARGET).so - ln -sf $(TARGET).so.$(RELEASE_MAJOR).$(RELEASE_MINOR) $(TARGET).so.$(RELEASE_MAJOR) +$(TARGET).so.${SOMAJOR}.${SOMINOR}: $(TARGET).po $(AISTARGET).po + $(CC) $(PTHREAD_LDFLAGS) $(LDFLAGS) -shared -o $@ -Wl,-soname=$(TARGET).so.$(SOMAJOR) $< + ln -sf $(TARGET).so.$(SOMAJOR).$(SOMINOR) $(TARGET).so + ln -sf $(TARGET).so.$(SOMAJOR).$(SOMINOR) $(TARGET).so.$(SOMAJOR) -$(TARGET)_lt.so.${RELEASE_MAJOR}.${RELEASE_MINOR}: $(TARGET)_lt.po - $(CC) $(LDFLAGS) -shared -o $@ -Wl,-soname=$(TARGET)_lt.so.$(RELEASE_MAJOR) $< - ln -sf $(TARGET)_lt.so.$(RELEASE_MAJOR).$(RELEASE_MINOR) $(TARGET)_lt.so - ln -sf $(TARGET)_lt.so.$(RELEASE_MAJOR).$(RELEASE_MINOR) $(TARGET)_lt.so.$(RELEASE_MAJOR) +$(TARGET)_lt.so.${SOMAJOR}.${SOMINOR}: $(TARGET)_lt.po + $(CC) $(LDFLAGS) -shared -o $@ -Wl,-soname=$(TARGET)_lt.so.$(SOMAJOR) $< + ln -sf $(TARGET)_lt.so.$(SOMAJOR).$(SOMINOR) $(TARGET)_lt.so + ln -sf $(TARGET)_lt.so.$(SOMAJOR).$(SOMINOR) $(TARGET)_lt.so.$(SOMAJOR) %_lt.o: $(S)/%.c $(CC) $(CFLAGS) -c -o $@ $< hooks/post-receive -- Cluster Project
reply other threads:[~2008-03-21 5:47 UTC|newest] Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20080321054742.7171.qmail@sourceware.org \ --to=fabbione@sourceware.org \ --cc=cluster-cvs@sources.redhat.com \ --cc=cluster-devel@redhat.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).