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);
                


Reply via email to