ooo-build r13804 - in branches/ooo-build-3-0: . patches/dev300



Author: tml
Date: Fri Sep  5 09:16:06 2008
New Revision: 13804
URL: http://svn.gnome.org/viewvc/ooo-build?rev=13804&view=rev

Log:
2008-09-05  Tor Lillqvist  <tml novell com>

	* patches/src680/novell-win32-msi-patchability.diff
	(solenv/bin/modules/installer/windows/file.pm): In order to get a
	"build counter" or "patch level" into the versioning, add back
	code to installer::windows::file::get_fileversion(). This affects
	the Version column in the File table. This time don't use the
	binary file version from .exe and .dll files, upstream doesn't
	either, and their patches work. Do use the more
	human-understandable PACKAGEVERSION (3.0.0) instead of the weird
	LIBRARYVERSION (9.0.0), though. Append the OOO_PATCHLEVEL
	environment variable which acts as a build number.



Modified:
   branches/ooo-build-3-0/ChangeLog
   branches/ooo-build-3-0/patches/dev300/novell-win32-msi-patchability.diff

Modified: branches/ooo-build-3-0/patches/dev300/novell-win32-msi-patchability.diff
==============================================================================
--- branches/ooo-build-3-0/patches/dev300/novell-win32-msi-patchability.diff	(original)
+++ branches/ooo-build-3-0/patches/dev300/novell-win32-msi-patchability.diff	Fri Sep  5 09:16:06 2008
@@ -225,3 +225,55 @@
 +tg = "{C5C00559-A17F-4ED2-B475-82D94A5BB1B4}"
  multiwestern = "{385A1970-0257-4C57-9383-DD2D668B23CE}"
  multiasia = "{74543111-6ABF-4A12-AC11-D315E2939D2A}"
+--- solenv/bin/modules/installer/windows/file.pm
++++ solenv/bin/modules/installer/windows/file.pm
+@@ -302,11 +302,46 @@
+ 
+ 	if ( $allvariables->{'USE_FILEVERSION'} )
+ 	{
+-		if ( ! $allvariables->{'LIBRARYVERSION'} ) { installer::exiter::exit_program("ERROR: USE_FILEVERSION is set, but not LIBRARYVERSION", "get_fileversion"); } 
+-		$fileversion = $allvariables->{'LIBRARYVERSION'} . "\." . $installer::globals::buildid;
++
++		# Upstream uses LIBRARYVERSION appended with buildid
++		# as the Version column values in the file
++		# table. I.e. values like 3.0.0.0344 That means there
++		# is no space for a "patch level" counter.  We do want
++		# to leave space for a build counter or patch level in
++		# sequential builds (typically with different sets of
++		# patches) of the same upstream source.
++
++		# So, just use PACKAGEVERSION appended with the patch
++		# level.
++
++		my @packageversion;
++
++		# So far PACKAGEVERSION in openoffice.lst is three
++		# numbers separated by periods, but be liberal here
++		# and accept also three numbers followed by whatever,
++		# or just two numbers followed by whatever. As a
++		# fallback, use just the buildid.
++
++		if (($allvariables->{'PACKAGEVERSION'} =~ /^(\d+)\.(\d+)\.(\d+)/)
++		{
++			@packageversion = ($allvariables->{'PACKAGEVERSION'} =~ /^(\d+)\.(\d+)\.(\d+)$/);
++		} 
++		else if (($allvariables->{'PACKAGEVERSION'} =~ /^(\d+)\.(\d+)/)
++		{
++			@packageversion = ($allvariables->{'PACKAGEVERSION'} =~ /^(\d+)\.(\d+)$/);
++			push (@packageversion, 0);
++		} 
++		else
++		{
++			@packageversion = ($installer::globals::buildid);
++			push (@packageversion, 0);
++			push (@packageversion, 0);
++		}
++		my $patchlevel = '0';
++		$patchlevel = $ENV{'OOO_PATCHLEVEL'} if defined $ENV{'OOO_PATCHLEVEL'};
++		$fileversion = $packageversion[0] . '.' . $packageversion[1] . '.' . $packageversion[2] . '.' . $patchlevel;
+ 	}
+ 	
+-	if ( $installer::globals::prepare_winpatch ) { $fileversion = ""; } # Windows patches do not allow this version # -> who says so?
+ 		
+ 	return $fileversion;
+ }



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]