You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openoffice.apache.org by yd...@apache.org on 2012/02/16 19:04:07 UTC

svn commit: r1245106 - in /incubator/ooo/trunk/main/solenv/bin/modules/installer: control.pm epmfile.pm globals.pm parameter.pm pathanalyzer.pm simplepackage.pm

Author: ydario
Date: Thu Feb 16 18:04:07 2012
New Revision: 1245106

URL: http://svn.apache.org/viewvc?rev=1245106&view=rev
Log:
i118923 - OS/2 port: add os2 support to perl installation code.

Modified:
    incubator/ooo/trunk/main/solenv/bin/modules/installer/control.pm
    incubator/ooo/trunk/main/solenv/bin/modules/installer/epmfile.pm
    incubator/ooo/trunk/main/solenv/bin/modules/installer/globals.pm
    incubator/ooo/trunk/main/solenv/bin/modules/installer/parameter.pm
    incubator/ooo/trunk/main/solenv/bin/modules/installer/pathanalyzer.pm
    incubator/ooo/trunk/main/solenv/bin/modules/installer/simplepackage.pm

Modified: incubator/ooo/trunk/main/solenv/bin/modules/installer/control.pm
URL: http://svn.apache.org/viewvc/incubator/ooo/trunk/main/solenv/bin/modules/installer/control.pm?rev=1245106&r1=1245105&r2=1245106&view=diff
==============================================================================
--- incubator/ooo/trunk/main/solenv/bin/modules/installer/control.pm (original)
+++ incubator/ooo/trunk/main/solenv/bin/modules/installer/control.pm Thu Feb 16 18:04:07 2012
@@ -87,6 +87,11 @@ sub check_system_path
 		# has to be converted to DOS style for further use.
 		$local_pathseparator = ';';
 	}
+	if( $^O =~ /os2/i )
+	{
+		# has to be converted to DOS style for further use.
+		$local_pathseparator = ';';
+	}
 	my $patharrayref = installer::converter::convert_stringlist_into_array(\$pathvariable, $local_pathseparator);
 	
 	$installer::globals::patharray = $patharrayref;
@@ -110,7 +115,7 @@ sub check_system_path
 		}
 		
 	}
-	elsif ($installer::globals::iswin)
+	elsif ($installer::globals::iswin || $installer::globals::isos2)
 	{	
 		@needed_files_in_path = ("zip.exe");
 	}

Modified: incubator/ooo/trunk/main/solenv/bin/modules/installer/epmfile.pm
URL: http://svn.apache.org/viewvc/incubator/ooo/trunk/main/solenv/bin/modules/installer/epmfile.pm?rev=1245106&r1=1245105&r2=1245106&view=diff
==============================================================================
--- incubator/ooo/trunk/main/solenv/bin/modules/installer/epmfile.pm (original)
+++ incubator/ooo/trunk/main/solenv/bin/modules/installer/epmfile.pm Thu Feb 16 18:04:07 2012
@@ -385,7 +385,7 @@ sub create_epm_header
 
 	# License and Readme file can be included automatically from the file list
 	
-	if ( $installer::globals::iswindowsbuild )
+	if ( $installer::globals::iswindowsbuild || $installer::globals::isos2 )
 	{
 		$licensefilename = "license.txt";
 		$readmefilename = "readme.txt";
@@ -399,7 +399,7 @@ sub create_epm_header
 	if (( $installer::globals::languagepack )	# in language packs the files LICENSE and README are removed, because they are not language specific
 		|| ( $variableshashref->{'NO_README_IN_ROOTDIR'} ))
 	{
-		if ( $installer::globals::iswindowsbuild )
+		if ( $installer::globals::iswindowsbuild || $installer::globals::isos2 )
 		{
 			$licensefilename = "license_$searchlanguage.txt";
 			$readmefilename = "readme_$searchlanguage.txt";

Modified: incubator/ooo/trunk/main/solenv/bin/modules/installer/globals.pm
URL: http://svn.apache.org/viewvc/incubator/ooo/trunk/main/solenv/bin/modules/installer/globals.pm?rev=1245106&r1=1245105&r2=1245106&view=diff
==============================================================================
--- incubator/ooo/trunk/main/solenv/bin/modules/installer/globals.pm (original)
+++ incubator/ooo/trunk/main/solenv/bin/modules/installer/globals.pm Thu Feb 16 18:04:07 2012
@@ -125,6 +125,7 @@ BEGIN
 	$islinux = 0;	
 	$issolaris = 0;
 	$ismacosx = 0;
+	$isos2 = 0;
 	$iswindowsbuild = 0;
 	$islinuxbuild = 0;
 	$islinuxrpmbuild = 0;
@@ -513,6 +514,20 @@ BEGIN
 		%savedrev83mapping = ();
 		%saved83dirmapping = ();
 	}
+	elsif ( $plat =~ /os2/i )
+	{ 
+		print "Setup OS/2 platform\n";
+		$zippath = "zip";					# Has to be in the path: /usr/bin/zip
+		$checksumfile = "so_checksum";
+		$unopkgfile = "unopkg.exe";
+		$separator = "/";
+		$pathseparator = "\:";
+		$libextension = "\.dll";
+		$isunix = 0;
+		$iswin = 0;
+		$isos2 = 1;
+                $archiveformat = ".zip";
+	}
 	else
 	{ 
 		$zippath = "zip";					# Has to be in the path: /usr/bin/zip
@@ -540,6 +555,7 @@ BEGIN
 	if ( $plat =~ /kfreebsd/i ) { $islinux = 1; } 
 	if ( $plat =~ /solaris/i ) { $issolaris = 1; } 
     if ( $plat =~ /darwin/i ) { $ismacosx = 1; }
+	if ( $plat =~ /os2/i ) { $isos2 = 1; } 
 
 	# ToDo: Needs to be expanded for additional platforms
 

Modified: incubator/ooo/trunk/main/solenv/bin/modules/installer/parameter.pm
URL: http://svn.apache.org/viewvc/incubator/ooo/trunk/main/solenv/bin/modules/installer/parameter.pm?rev=1245106&r1=1245105&r2=1245106&view=diff
==============================================================================
--- incubator/ooo/trunk/main/solenv/bin/modules/installer/parameter.pm (original)
+++ incubator/ooo/trunk/main/solenv/bin/modules/installer/parameter.pm Thu Feb 16 18:04:07 2012
@@ -219,7 +219,7 @@ sub make_path_absolute
 		}
 	}
 
-	if ( $installer::globals::iswin )
+	if ( $installer::globals::iswin || $installer::globals::isos2 )
 	{
 		if ( $^O =~ /cygwin/i )
 		{

Modified: incubator/ooo/trunk/main/solenv/bin/modules/installer/pathanalyzer.pm
URL: http://svn.apache.org/viewvc/incubator/ooo/trunk/main/solenv/bin/modules/installer/pathanalyzer.pm?rev=1245106&r1=1245105&r2=1245106&view=diff
==============================================================================
--- incubator/ooo/trunk/main/solenv/bin/modules/installer/pathanalyzer.pm (original)
+++ incubator/ooo/trunk/main/solenv/bin/modules/installer/pathanalyzer.pm Thu Feb 16 18:04:07 2012
@@ -58,7 +58,7 @@ sub make_absolute_filename_to_relative_f
 		}
 	}
 
-	if ( $installer::globals::iswin )
+	if ( $installer::globals::iswin || $installer::globals::isos2 )
 	{
 		# Either '/' or '\'. It would be possible to use $installer::globals::separator.
 		if ( $$longfilenameref =~ /^.*[\/\\](\S.+\S?)/ )

Modified: incubator/ooo/trunk/main/solenv/bin/modules/installer/simplepackage.pm
URL: http://svn.apache.org/viewvc/incubator/ooo/trunk/main/solenv/bin/modules/installer/simplepackage.pm?rev=1245106&r1=1245105&r2=1245106&view=diff
==============================================================================
--- incubator/ooo/trunk/main/solenv/bin/modules/installer/simplepackage.pm (original)
+++ incubator/ooo/trunk/main/solenv/bin/modules/installer/simplepackage.pm Thu Feb 16 18:04:07 2012
@@ -371,7 +371,15 @@ sub create_package
 		$from = cwd();
 		$return_to_start = 1;
 		chdir($tempdir);
-		$systemcall = "$installer::globals::zippath -qr $archive .";
+		if ( $^O =~ /os2/i )
+		{
+			my $zip = Cwd::realpath($archive);
+			$systemcall = "$installer::globals::zippath -qr $zip .";
+		}
+	 	else
+		{
+			$systemcall = "$installer::globals::zippath -qr $archive .";
+		}
 		
 		# Using Archive::Zip fails because of very long path names below "share/uno_packages/cache"
 		# my $packzip = Archive::Zip->new();
@@ -655,7 +663,7 @@ sub create_simple_package
 			
 			if ( ! -d $destdir )
 			{
-				if ( $^O =~ /cygwin/i ) # Cygwin performance check
+				if ( $^O =~ /cygwin/i || $^O =~ /os2/i ) # Cygwin performance check
 				{
 					$infoline = "Try to create directory $destdir\n";
 					push(@installer::globals::logfileinfo, $infoline);
@@ -671,7 +679,7 @@ sub create_simple_package
 	}
 
 	# stripping files ?!
-	if (( $installer::globals::strip ) && ( ! $installer::globals::iswindowsbuild )) { installer::strip::strip_libraries($filesref, $languagestringref); }
+	if (( $installer::globals::strip ) && ( ! $installer::globals::iswindowsbuild ) && ( ! $installer::globals::isos2 )) { installer::strip::strip_libraries($filesref, $languagestringref); }
 	
 	# copy Files
 	installer::logger::print_message( "... copying files ...\n" );
@@ -694,7 +702,7 @@ sub create_simple_package
 		$source =~ s/\$\$/\$/;
 		$destination =~ s/\$\$/\$/;
 
-		if ( $^O =~ /cygwin/i )	# Cygwin performance, do not use copy_one_file. "chmod -R" at the end
+		if ( $^O =~ /cygwin/i || $^O =~ /os2/i )	# Cygwin performance, do not use copy_one_file. "chmod -R" at the end
 		{
 			my $copyreturn = copy($source, $destination);