solenv: remove unused functions

Change-Id: I8e361beb954c742ddcecde4a4ba2a4ae57057c39
This commit is contained in:
Thomas Arnhold
2012-08-14 23:30:56 +02:00
committed by Tim Retout
parent ab03e87741
commit fe9f8c1800
20 changed files with 0 additions and 1492 deletions

View File

@@ -103,25 +103,6 @@ sub convert_whitespace_stringlist_into_array
return [map "$_\n", split /\s+/, $tmp];
}
#############################################################################
# Converting an array into a comma separated string
#############################################################################
sub convert_array_to_comma_separated_string
{
my ( $arrayref ) = @_;
my $newstring;
for (@{$arrayref}) {
my $tmp = $_;
$tmp =~ s/\s+$//;
$newstring .= "$tmp,";
}
$newstring =~ s/\,$//;
return $newstring;
}
#############################################################################
# Converting an array into a space separated string
#############################################################################

View File

@@ -282,21 +282,6 @@ sub tar_package
return ( -s $tarfilename );
}
#########################################################
# Setting type of installation
#########################################################
sub get_installation_type
{
my $type = "";
if ( $installer::globals::languagepack ) { $type = "langpack"; }
elsif ( $installer::globals::helppack ) { $type = "helppack"; }
else { $type = "install"; }
return $type;
}
#########################################################
# Setting installation languages
#########################################################
@@ -525,77 +510,6 @@ sub get_install_type
return $type;
}
#########################################################
# Setting installation addons
#########################################################
sub get_downloadname_addon
{
my $addon = "";
if ( $installer::globals::isdebbuild ) { $addon = $addon . "_deb"; }
if ( $installer::globals::product =~ /_wJRE\s*$/ ) { $addon = "_wJRE"; }
return $addon;
}
#########################################################
# Looking for versionstring in version.info
# This has to be the only content of this file.
#########################################################
sub _get_versionstring
{
my ( $versionfile ) = @_;
my $versionstring = "";
for ( @{$versionfile} )
{
next if /^\s*\#/; # comment line
if ( /^\s*\"\s*(.*?)\s*\"\s*$/ )
{
$versionstring = $1;
last;
}
}
return $versionstring;
}
#########################################################
# Returning the current product version
# This has to be defined in file "version.info"
# in directory $installer::globals::ooouploaddir
#########################################################
sub get_current_version
{
my $infoline = "";
my $versionstring = "";
my $filename = "version.info";
if ( -f $filename )
{
$infoline = "File $filename exists. Trying to find current version.\n";
push( @installer::globals::logfileinfo, $infoline);
my $versionfile = installer::files::read_file($filename);
$versionstring = _get_versionstring($versionfile);
$infoline = "Setting version string: $versionstring\n";
push( @installer::globals::logfileinfo, $infoline);
}
else
{
$infoline = "File $filename does not exist. No version setting in download file name.\n";
push( @installer::globals::logfileinfo, $infoline);
}
$installer::globals::oooversionstring = $versionstring;
return $versionstring;
}
###############################################################################################
# Setting the download file name
# Syntax:
@@ -781,26 +695,6 @@ sub get_language_string_from_language_block
return $newstring;
}
#######################################################
# Setting supported platform for LibreOffice
# builds
#######################################################
sub is_supported_platform
{
my $is_supported = 0;
if (( $installer::globals::isrpmbuild ) ||
( $installer::globals::issolarissparcbuild ) ||
( $installer::globals::issolarisx86build ) ||
( $installer::globals::iswindowsbuild ))
{
$is_supported = 1;
}
return $is_supported;
}
####################################################
# Creating download installation sets
####################################################

View File

@@ -2942,31 +2942,6 @@ sub analyze_rootpath
}
######################################################
# Including license and readme into
# Unix installation sets.
######################################################
sub put_installsetfiles_into_installset
{
my ($destdir) = @_;
# All files for the installation set are saved in the global
# array @installer::globals::installsetfiles
for ( my $i = 0; $i <= $#installer::globals::installsetfiles; $i++ )
{
my $onefile = $installer::globals::installsetfiles[$i];
my $sourcefile = $onefile->{'sourcepath'};
my $destfile = "";
$destfile = $destdir . $installer::globals::separator . $onefile->{'Name'};
installer::systemactions::copy_one_file($sourcefile, $destfile);
my $infoline = "Adding to installation set \"$destfile\" from source \"$sourcefile\".\n";
push( @installer::globals::logfileinfo, $infoline);
}
}
######################################################
# Replacing one variable in patchinfo file
######################################################

View File

@@ -99,116 +99,4 @@ sub save_followme_info
installer::logger::print_message( "... creating \"follow me\" info file $downloadinfofilename.\n" );
}
####################################################
# Reading the file, that contains all information
# to create a follow up process.
####################################################
sub read_followme_info
{
my ( $filename ) = @_;
if ( ! -f $filename ) { installer::exiter::exit_program("ERROR: Could not find file: $filename", "read_download_info"); }
installer::logger::print_message( "\n... reading \"follow me\" info file $filename\n" );
my %contenthash = ();
my $finalinstalldir = "";
my $downloadname = "";
my $currentinstallnumber = "";
my $loggingdir = "";
my $installlogdir = "";
my $languagestring = "";
my @includepatharray = ();
my @languagesarray = ();
my %allvariableshash = ();
# Global variables can be set directly
my $filecontent = installer::files::read_file($filename);
# First line has to contain the string "finalinstalldir:".
# Otherwise this is not a correct file.
if ( ! ( ${$filecontent}[0] =~ /s*finalinstalldir:\s*(.*?)\s*$/ )) { installer::exiter::exit_program("ERROR: Not a correct download info file: $filename", "read_download_info"); }
for ( my $i = 0; $i <= $#{$filecontent}; $i++ )
{
my $line = ${$filecontent}[$i];
if ( $line =~ /^\s*finalinstalldir:\s*(.*?)\s*$/ ) { $finalinstalldir = $1; }
if( $^O =~ /cygwin/i ) { $finalinstalldir =~ s/\\/\//; }
if ( $line =~ /^\s*downloadname:\s*(.*?)\s*$/ ) { $downloadname = $1; }
if ( $line =~ /^\s*currentinstallnumber:\s*(.*?)\s*$/ ) { $currentinstallnumber = $1; }
if ( $line =~ /^\s*loggingdir:\s*(.*?)\s*$/ ) { $loggingdir = $1; }
if( $^O =~ /cygwin/i ) { $loggingdir =~ s/\\/\//; }
if ( $line =~ /^\s*installlogdir:\s*(.*?)\s*$/ ) { $installlogdir = $1; }
if( $^O =~ /cygwin/i ) { $installlogdir =~ s/\\/\//; }
if ( $line =~ /^\s*languagestring:\s*(.*?)\s*$/ ) { $languagestring = $1; }
if ( $line =~ /^\s*languagesarray:\s*(.*?)\s*$/ ) { push(@languagesarray, $1); }
if ( $line =~ /^\s*includepatharray:\s*(.*?)\s*$/ )
{
my $path = $1;
if( $^O =~ /cygwin/i ) { $path =~ s/\\/\//; }
push(@includepatharray, $path . "\n");
}
if ( $line =~ /^\s*allvariableshash:\s*(.*?)\s*:\s*(.*?)\s*$/ ) { $allvariableshash{$1} = $2; }
if ( $line =~ /^\s*globals:(.*?)\s*:\s*(.*?)\s*$/ )
{
my $name = $1;
my $value = $2;
if ( $name eq "updatepack" ) { $installer::globals::updatepack = $value; }
if ( $name eq "added_english" ) { $installer::globals::added_english = $value; }
if ( $name eq "iswindowsbuild" ) { $installer::globals::iswindowsbuild = $value; }
if ( $name eq "issolarisbuild" ) { $installer::globals::issolarisbuild = $value; }
if ( $name eq "issolarispkgbuild" ) { $installer::globals::issolarispkgbuild = $value; }
if ( $name eq "issolarissparcbuild" ) { $installer::globals::issolarissparcbuild = $value; }
if ( $name eq "issolarisx86build" ) { $installer::globals::issolarisx86build = $value; }
if ( $name eq "isfreebsdpkgbuild" ) { $installer::globals::isfreebsdpkgbuild = $value; }
if ( $name eq "islinuxbuild" ) { $installer::globals::islinuxbuild = $value; }
if ( $name eq "isrpmbuild" ) { $installer::globals::isrpmbuild = $value; }
if ( $name eq "islinuxintelrpmbuild" ) { $installer::globals::islinuxintelrpmbuild = $value; }
if ( $name eq "islinuxppcrpmbuild" ) { $installer::globals::islinuxppcrpmbuild = $value; }
if ( $name eq "islinuxx86_64rpmbuild" ) { $installer::globals::islinuxx86_64rpmbuild = $value; }
if ( $name eq "isdebbuild" ) { $installer::globals::isdebbuild = $value; }
if ( $name eq "islinuxinteldebbuild" ) { $installer::globals::islinuxinteldebbuild = $value; }
if ( $name eq "islinuxppcdebbuild" ) { $installer::globals::islinuxppcdebbuild = $value; }
if ( $name eq "islinuxx86_64debbuild" ) { $installer::globals::islinuxx86_64debbuild = $value; }
if ( $name eq "issolaris" ) { $installer::globals::issolaris = $value; }
if ( $name eq "islinux" ) { $installer::globals::islinux = $value; }
if ( $name eq "unpackpath" ) { $installer::globals::unpackpath = $value; }
if( $^O =~ /cygwin/i ) { $installer::globals::unpackpath =~ s/\\/\//; }
if ( $name eq "idttemplatepath" ) { $installer::globals::idttemplatepath = $value; }
if( $^O =~ /cygwin/i ) { $installer::globals::idttemplatepath =~ s/\\/\//; }
if ( $name eq "idtlanguagepath" ) { $installer::globals::idtlanguagepath = $value; }
if( $^O =~ /cygwin/i ) { $installer::globals::idtlanguagepath =~ s/\\/\//; }
if ( $name eq "logfilename" ) { $installer::globals::logfilename = $value; }
if ( $name eq "product" ) { $installer::globals::product = $value; }
if ( $name eq "patch" ) { $installer::globals::patch = $value; }
if ( $name eq "languagepack" ) { $installer::globals::languagepack = $value; }
if ( $name eq "helppack" ) { $installer::globals::helppack = $value; }
if ( $name eq "installertypedir" ) { $installer::globals::installertypedir = $value; }
if ( $name eq "max_lang_length" ) { $installer::globals::max_lang_length = $value; }
if ( $name eq "compiler" ) { $installer::globals::compiler = $value; }
if ( $name eq "product" ) { $installer::globals::product = $value; }
if ( $name eq "minor" ) { $installer::globals::minor = $value; }
if ( $name eq "lastminor" ) { $installer::globals::lastminor = $value; }
}
}
$contenthash{'finalinstalldir'} = $finalinstalldir;
$contenthash{'downloadname'} = $downloadname;
$contenthash{'currentinstallnumber'} = $currentinstallnumber;
$contenthash{'loggingdir'} = $loggingdir;
$contenthash{'installlogdir'} = $installlogdir;
$contenthash{'languagestring'} = $languagestring;
$contenthash{'languagesarray'} = \@languagesarray;
$contenthash{'includepatharray'} = \@includepatharray;
$contenthash{'allvariableshash'} = \%allvariableshash;
return \%contenthash;
}
1;

View File

@@ -204,18 +204,4 @@ sub get_default_language
return ${$languagesref}[0]; # ToDo, only returning the first language
}
################################################################
# Determining the language used by the Java installer
################################################################
sub get_java_language
{
my ( $language ) = @_;
$javalanguage = $language;
$javalanguage =~ s/\-/\_/;
return $javalanguage;
}
1;

View File

@@ -57,21 +57,6 @@ sub remove_leading_and_ending_slashes
$$stringref =~ s/\/\s*$//g;
}
sub remove_ending_slashes
{
my ( $stringref ) = @_;
$$stringref =~ s/\/\s*$//g;
}
sub remove_leading_and_ending_pathseparators
{
my ( $stringref ) = @_;
$$stringref =~ s/^\s*\Q$installer::globals::separator\E//;
$$stringref =~ s/\Q$installer::globals::separator\E\s*$//;
}
sub remove_ending_pathseparator
{
my ( $stringref ) = @_;

View File

@@ -732,38 +732,6 @@ sub changing_name_of_language_dependent_keys
}
}
################################################################################
# Collecting language specific names for language packs
################################################################################
sub collect_language_specific_names
{
my ($itemsarrayref) = @_;
for ( my $i = 0; $i <= $#{$itemsarrayref}; $i++ )
{
my $oneitem = ${$itemsarrayref}[$i];
my $styles = "";
if ( $oneitem->{'Styles'} ) { $styles = $oneitem->{'Styles'}; }
if ( $styles =~ /\bUSELANGUAGENAME\b/ )
{
my $language = "";
if ( $oneitem->{'Language'} ) { $language = $oneitem->{'Language'}; }
my $specificlanguage = "";
if ( $oneitem->{'specificlanguage'} ) { $specificlanguage = $oneitem->{'specificlanguage'}; }
if (( $language ne "" ) && ( $language eq $specificlanguage ))
{
if (! grep {$_ eq $oneitem->{'Name'}} @installer::globals::languagenames )
{
push(@installer::globals::languagenames, $oneitem->{'Name'});
}
}
}
}
}
################################################################################
# Replacement of setup variables in ConfigurationItems and ProfileItems
# <productkey>, <buildid>, <sequence_languages>, <productcode>, <upgradecode>, <productupdate>
@@ -2698,45 +2666,4 @@ sub select_required_language_strings
}
}
#####################################################################################
# Unixlinks are not always required. For Linux RPMs and Solaris Packages they are
# created dynamically. Exception: For package formats "installed" or "archive".
# In scp2 this unixlinks have the flag LAYERLINK.
#####################################################################################
sub filter_layerlinks_from_unixlinks
{
my ( $unixlinksref ) = @_;
my @alllinks = ();
for ( my $i = 0; $i <= $#{$unixlinksref}; $i++ )
{
my $isrequired = 1;
my $onelink = ${$unixlinksref}[$i];
my $styles = "";
if ( $onelink->{'Styles'} ) { $styles = $onelink->{'Styles'}; }
if ( $styles =~ /\bLAYERLINK\b/ )
{
# Platforms, that do not need the layer links
if (( $installer::globals::isrpmbuild ) || ( $installer::globals::issolarispkgbuild ))
{
$isrequired = 0;
}
# Package formats, that need the layer link (platform independent)
if (( $installer::globals::packageformat eq "installed" ) || ( $installer::globals::packageformat eq "archive" ))
{
$isrequired = 1;
}
}
if ( $isrequired ) { push(@alllinks, $onelink); }
}
return \@alllinks;
}
1;

View File

@@ -60,22 +60,6 @@ sub check_simple_packager_project
}
}
########################################################################
# Getting the translation file for the Mac Language Pack installer
########################################################################
sub get_mac_translation_file
{
my $translationfilename = $installer::globals::maclangpackfilename;
if ( ! -f $translationfilename ) { installer::exiter::exit_program("ERROR: Could not find language file $translationfilename!", "get_mac_translation_file"); }
my $translationfile = installer::files::read_file($translationfilename);
my $infoline = "Reading translation file: $translationfilename\n";
push( @installer::globals::logfileinfo, $infoline);
return $translationfile;
}
##################################################################
# Collecting all identifier from ulf file
##################################################################

View File

@@ -747,48 +747,6 @@ sub copy_directory_with_fileextension
}
}
#########################################################
# Copying all files without a specified file extension
# from one directory to another directory.
#########################################################
sub copy_directory_except_fileextension
{
my ($sourcedir, $destdir, $extension) = @_;
my @sourcefiles = ();
$sourcedir =~ s/\Q$installer::globals::separator\E\s*$//;
$destdir =~ s/\Q$installer::globals::separator\E\s*$//;
$infoline = "\n";
push(@installer::globals::logfileinfo, $infoline);
$infoline = "Copying files without extension $extension from directory $sourcedir to directory $destdir\n";
push(@installer::globals::logfileinfo, $infoline);
opendir(DIR, $sourcedir);
@sourcefiles = readdir(DIR);
closedir(DIR);
my $onefile;
foreach $onefile (@sourcefiles)
{
if ((!($onefile eq ".")) && (!($onefile eq "..")))
{
if ( ! ( $onefile =~ /\.$extension\s*$/ )) # only copying not having the specified extension
{
my $sourcefile = $sourcedir . $installer::globals::separator . $onefile;
my $destfile = $destdir . $installer::globals::separator . $onefile;
if ( -f $sourcefile ) # only files, no directories
{
copy_one_file($sourcefile, $destfile);
}
}
}
}
}
########################################################
# Renaming all files with a specified file extension
# in a specified directory.
@@ -919,95 +877,6 @@ sub make_numbered_dir
return $returndir;
}
##############################################################
# Determining the highest number in the install directory.
##############################################################
sub determine_maximum_number
{
my ($dir, $languagestringref) = @_;
my $basedir = $dir;
installer::pathanalyzer::get_path_from_fullqualifiedname(\$basedir);
my $alldirs = get_all_directories($basedir);
my $maxnumber = 1;
# In control.pm the installation directory is determined as:
# $installer::globals::build . "_" . $installer::globals::lastminor . "_" .
# "native_inprogress-number_" . $$languagesref . "\." . $installer::globals::buildid;
# searching for the highest number extension after the first "-", which belongs to
# $installer::globals::build, $installer::globals::lastminor and $installer::globals::buildid
# In this step not looking for the language!
my @correctbuildiddirs = ();
for ( my $i = 0; $i <= $#{$alldirs}; $i++ )
{
my $onedir = ${$alldirs}[$i];
installer::pathanalyzer::make_absolute_filename_to_relative_filename(\$onedir);
if ( $onedir =~ /^\s*\Q$installer::globals::build\E\_\Q$installer::globals::lastminor\E\_(.*?)\-(\d+)\_(.*?)\.\Q$installer::globals::buildid\E\s*$/ )
{
my $number = $2;
if ( $number > $maxnumber ) { $maxnumber = $number; }
push(@correctbuildiddirs, $onedir);
}
}
# From all directories with correct $installer::globals::build, $installer::globals::lastminor
# and $installer::globals::buildid, those directories, which already have the maximum number
# have to be selected
my @maximumnumberdirs = ();
for ( my $i = 0; $i <= $#correctbuildiddirs; $i++ )
{
my $onedir = $correctbuildiddirs[$i];
if ( $onedir =~ /^\s*(.*?)\-(\d+)\_(.*?)\.(.*?)\s*$/ )
{
my $number = $2;
if ( $number == $maxnumber )
{
push(@maximumnumberdirs, $onedir);
}
}
}
# @maximumnumberdirs contains only those directories with correct $installer::globals::build,
# $installer::globals::lastminor and $installer::globals::buildid, which already have the maximum number.
# If the current language is part of this directory, the number has to be increased.
my $increase_counter = 0;
for ( my $i = 0; $i <= $#maximumnumberdirs; $i++ )
{
my $onedir = $maximumnumberdirs[$i];
if ( $onedir =~ /^\s*(.*?)\-(\d+)\_(.*?)\.(.*?)\s*$/ )
{
my $number = $2;
my $languagestring = $3;
if ( $languagestring eq $$languagestringref )
{
$increase_counter = 1;
}
}
}
if ( $increase_counter )
{
$maxnumber = $maxnumber + 1;
}
return $maxnumber;
}
#####################################################################################
# Renaming a directory by exchanging a string, for example from "01_inprogress_7"
# to "01_witherror_7".
@@ -1178,66 +1047,6 @@ sub get_all_directories_without_path
return \@alldirs;
}
##############################################################
# Collecting all files inside one directory
##############################################################
sub get_all_files_from_one_directory
{
my ($basedir) = @_;
my @allfiles = ();
my $direntry;
$basedir =~ s/\Q$installer::globals::separator\E\s*$//;
opendir(DIR, $basedir);
foreach $direntry (readdir (DIR))
{
next if $direntry eq ".";
next if $direntry eq "..";
my $completeentry = $basedir . $installer::globals::separator . $direntry;
if ( -f $completeentry ) { push(@allfiles, $completeentry); }
}
closedir(DIR);
return \@allfiles;
}
##############################################################
# Collecting all files inside one directory
##############################################################
sub get_all_files_from_one_directory_without_path
{
my ($basedir) = @_;
my @allfiles = ();
my $direntry;
$basedir =~ s/\Q$installer::globals::separator\E\s*$//;
opendir(DIR, $basedir);
foreach $direntry (readdir (DIR))
{
next if $direntry eq ".";
next if $direntry eq "..";
my $completeentry = $basedir . $installer::globals::separator . $direntry;
if ( -f $completeentry ) { push(@allfiles, $direntry); }
}
closedir(DIR);
return \@allfiles;
}
##############################################################
# Collecting all files and directories inside one directory
##############################################################

View File

@@ -143,35 +143,6 @@ sub get_msiassembly_file
return $onefile;
}
##############################################################
# Returning the file object for the msiassembly table.
##############################################################
sub get_msiassembly_file_by_gid
{
my ( $filesref, $gid ) = @_;
my $foundfile = 0;
my $onefile;
for ( my $i = 0; $i <= $#{$filesref}; $i++ )
{
$onefile = ${$filesref}[$i];
my $filegid = $onefile->{'gid'};
if ( $filegid eq $gid )
{
$foundfile = 1;
last;
}
}
# It does not need to exist. For example products that do not contain the libraries.
if (! $foundfile ) { $onefile = ""; }
return $onefile;
}
####################################################################################
# Creating the file MsiAssembly.idt dynamically
# Content:
@@ -219,24 +190,6 @@ sub create_msiassembly_table
push(@installer::globals::logfileinfo, $infoline);
}
####################################################################################
# Returning the name for the table MsiAssemblyName
####################################################################################
sub get_msiassemblyname_name
{
( $number ) = @_;
my $name = "";
if ( $number == 1 ) { $name = "name"; }
elsif ( $number == 2 ) { $name = "publicKeyToken"; }
elsif ( $number == 3 ) { $name = "version"; }
elsif ( $number == 4 ) { $name = "culture"; }
return $name;
}
####################################################################################
# Creating the file MsiAssemblyName.idt dynamically
# Content:

View File

@@ -75,35 +75,4 @@ sub create_font_table
}
#################################################################################
# Reading the Font version from the ttf file, to avoid installation
# of older files over newer files.
#################################################################################
sub get_font_version
{
my ( $fontfile ) = @_;
if ( ! -f $fontfile ) { installer::exiter::exit_program("ERROR: Font file does not exist: \"$fontfile\"", "get_font_version"); }
my $fontversion = 0;
my $infoline = "";
my $onefile = installer::files::read_binary_file($fontfile);
if ( $onefile =~ /Version\s+(\d+\.\d+\.*\d*)/ )
{
$fontversion = $1;
$infoline = "FONT: Font \"$fontfile\" version: $fontversion\n";
push(@installer::globals::logfileinfo, $infoline);
}
else
{
$infoline = "FONT: Could not determine font version: \"$fontfile\"\n";
push(@installer::globals::logfileinfo, $infoline);
}
return $fontversion;
}
1;

View File

@@ -850,37 +850,6 @@ sub get_rtflicensefilesource
return $$sourcefileref;
}
##############################################################
# Returning the source path of the licensefile for
# a specified language
##############################################################
sub get_licensefilesource
{
my ($language, $filesref) = @_;
my $licensefilename = "license_" . $language . ".txt";
my $sourcepath = "";
my $foundlicensefile = 0;
for ( my $i = 0; $i <= $#{$filesref}; $i++ )
{
my $onefile = ${$filesref}[$i];
my $filename = $onefile->{'Name'};
if ($filename eq $licensefilename)
{
$sourcepath = $onefile->{'sourcepath'};
$foundlicensefile = 1;
last;
}
}
if ( ! $foundlicensefile ) { installer::exiter::exit_program("ERROR: Did not find file $licensefilename in file collector!", "get_licensefilesource"); }
return $sourcepath;
}
##############################################################
# A simple converter to create the license text
# in rtf format
@@ -983,50 +952,6 @@ sub make_string_licensetext
return $rtf_licensetext;
}
##############################################################
# Setting the path, where the soffice.exe is installed, into
# the CustomAction table
##############################################################
sub add_officedir_to_database
{
my ($basedir, $allvariables) = @_;
my $customactionfilename = $basedir . $installer::globals::separator . "CustomAc.idt";
my $customacfile = installer::files::read_file($customactionfilename);
my $found = 0;
# Updating the values
if ( $installer::globals::officeinstalldirectoryset )
{
$found = 0;
for ( my $i = 0; $i <= $#{$customacfile}; $i++ )
{
if ( ${$customacfile}[$i] =~ /\bOFFICEDIRECTORYGID\b/ )
{
${$customacfile}[$i] =~ s/\bOFFICEDIRECTORYGID\b/$installer::globals::officeinstalldirectory/;
$found = 1;
}
}
if (( ! $found ) && ( ! $allvariables->{'IGNOREDIRECTORYLAYER'} ))
{
installer::exiter::exit_program("ERROR: \"OFFICEDIRECTORYGID\" not found in \"$customactionfilename\" !", "add_officedir_to_database");
}
}
# Saving the file
installer::files::save_file($customactionfilename ,$customacfile);
my $infoline = "Updated idt file: $customactionfilename\n";
push(@installer::globals::logfileinfo, $infoline);
}
##############################################################
# Including the license text into the table control.idt
##############################################################

View File

@@ -579,35 +579,6 @@ sub generate_cab_file_list
return \@cabfilelist; # contains all system calls for packaging process
}
########################################################################
# Returning the file sequence of a specified file.
########################################################################
sub get_file_sequence
{
my ($filesref, $uniquefilename) = @_;
my $sequence = "";
my $found_sequence = 0;
for ( my $i = 0; $i <= $#{$filesref}; $i++ )
{
my $onefile = ${$filesref}[$i];
my $uniquename = $onefile->{'uniquename'};
if ( $uniquename eq $uniquefilename )
{
$sequence = $onefile->{'sequencenumber'};
$found_sequence = 1;
last;
}
}
if ( ! $found_sequence ) { installer::exiter::exit_program("ERROR: No sequence found for $uniquefilename !", "get_file_sequence"); }
return $sequence;
}
########################################################################
# For update and patch reasons the pack order needs to be saved.
# The pack order is saved in the ddf files; the names and locations
@@ -1218,37 +1189,6 @@ sub rename_msi_database_in_installset
$installer::globals::msidatabasename = $newdatabasename;
}
#################################################################
# Copying the files defined as ScpActions into the
# installation set.
#################################################################
sub copy_scpactions_into_installset
{
my ($defaultlanguage, $installdir, $allscpactions) = @_;
installer::logger::include_header_into_logfile("Copying ScpAction files into installation set");
for ( my $i = 0; $i <= $#{$allscpactions}; $i++ )
{
my $onescpaction = ${$allscpactions}[$i];
if ( $onescpaction->{'Name'} eq "loader.exe" ) { next; } # do not copy this ScpAction loader
# only copying language independent files or files with the correct language (the defaultlanguage)
my $filelanguage = $onescpaction->{'specificlanguage'};
if ( ($filelanguage eq $defaultlanguage) || ($filelanguage eq "") )
{
my $sourcefile = $onescpaction->{'sourcepath'};
my $destfile = $installdir . $installer::globals::separator . $onescpaction->{'DestinationName'};
installer::systemactions::copy_one_file($sourcefile, $destfile);
}
}
}
#################################################################
# Copying MergeModules for the Windows installer into the
# installation set. The list of MergeModules is located
@@ -1360,55 +1300,6 @@ sub calculate_guid
return $guid;
}
#################################################################
# Filling the component hash with the values of the
# component file.
#################################################################
sub fill_component_hash
{
my ($componentfile) = @_;
my %components = ();
for ( my $i = 0; $i <= $#{$componentfile}; $i++ )
{
my $line = ${$componentfile}[$i];
if ( $line =~ /^\s*(.*?)\t(.*?)\s*$/ )
{
my $key = $1;
my $value = $2;
$components{$key} = $value;
}
}
return \%components;
}
#################################################################
# Creating a new component file, if new guids were generated.
#################################################################
sub create_new_component_file
{
my ($componenthash) = @_;
my @componentfile = ();
my $key;
foreach $key (keys %{$componenthash})
{
my $value = $componenthash->{$key};
my $input = "$key\t$value\n";
push(@componentfile ,$input);
}
return \@componentfile;
}
#################################################################
# Filling real component GUID into the component table.
# This works only on Windows

View File

@@ -595,35 +595,6 @@ sub set_codes_in_property_table
}
############################################################
# Setting the variable REGKEYPRODPATH, that is used
# by the language packs.
############################################################
sub set_regkeyprodpath_in_property_table
{
my ($basedir, , $allvariables) = @_;
# Reading the property file
my $properyfilename = $basedir . $installer::globals::separator . "Property.idt";
my $propertyfile = installer::files::read_file($properyfilename);
my $name = $allvariables->{'PRODUCTNAME'};
my $version = $allvariables->{'PRODUCTVERSION'};
my $onepropertyline = "REGKEYPRODPATH" . "\t" . "Software" . "\\" . $installer::globals::manufacturer . "\\". $name;
push(@{$propertyfile}, $onepropertyline);
# Saving the property file
installer::files::save_file($properyfilename ,$propertyfile);
my $infoline = "Added language content into idt file: $properyfilename\n";
push(@installer::globals::logfileinfo, $infoline);
}
############################################################
# Changing default for MS file type registration
# in Beta products.

View File

@@ -285,28 +285,6 @@ sub get_registry_value
return $value;
}
##############################################################
# Returning 64 bit value for registry table.
##############################################################
sub get_registry_val64
{
my ($registry, $allvariableshashref) = @_;
my $value = "";
if ( $registry->{'Val64'} ) { $value = $registry->{'Val64'}; }
$value =~ s/\\\"/\"/g; # no more masquerading of '"'
$value =~ s/\\\\\s*$/\\/g; # making "\\" at end of value to "\"
$value =~ s/\<progpath\>/\[INSTALLLOCATION\]/;
$value =~ s/\[INSTALLLOCATION\]\\/\[INSTALLLOCATION\]/; # removing "\" after "[INSTALLLOCATION]"
if ( $value =~ /\%/ ) { $value = installer::worker::replace_variables_in_string($value, $allvariableshashref); }
return $value;
}
##############################################################
# Returning component for registry table.
##############################################################

View File

@@ -32,34 +32,6 @@ use installer::files;
use installer::globals;
use installer::windows::idtglobal;
##############################################################
# Returning the file object for the msiassembly table.
##############################################################
sub get_file_by_name
{
my ( $filesref, $filename ) = @_;
my $foundfile = 0;
my $onefile;
for ( my $i = 0; $i <= $#{$filesref}; $i++ )
{
$onefile = ${$filesref}[$i];
my $name = $onefile->{'Name'};
if ( $name eq $filename )
{
$foundfile = 1;
last;
}
}
if (! $foundfile ) { $onefile = ""; }
return $onefile;
}
##############################################################
# Returning identifier for shortcut table.
##############################################################

View File

@@ -149,47 +149,6 @@ sub remove_old_installation_sets
installer::systemactions::create_directory($basedir);
}
###############################################################
# Removing all non successful installation sets on ship
###############################################################
sub remove_old_ship_installation_sets
{
my ($fulldir, $counter) = @_;
installer::logger::print_message( "... removing old installation directories ...\n" );
my $basedir = $fulldir;
installer::pathanalyzer::get_path_from_fullqualifiedname(\$basedir);
# collecting all directories next to the new installation directory
my $alldirs = installer::systemactions::get_all_directories($basedir);
if ( $fulldir =~ /^\s*(.*?inprogress\-)(\d+)(.*?)\s*$/ )
{
my $pre_inprogress = $1; # $pre still contains "inprogress"
my $number = $2;
my $post = $3;
my $pre_witherror = $pre_inprogress;
$pre_witherror =~ s/inprogress/witherror/;
for ( my $i = 0; $i <= $#{$alldirs}; $i++ )
{
if ( ${$alldirs}[$i] eq $fulldir ) { next; } # do not delete the newly created directory
if ( ${$alldirs}[$i] =~ /^\s*\Q$pre_inprogress\E\d+\Q$post\E\s*$/ ) # removing old "inprogress" directories
{
installer::systemactions::remove_complete_directory(${$alldirs}[$i], 1);
}
if ( ${$alldirs}[$i] =~ /^\s*\Q$pre_witherror\E\d+\Q$post\E\s*$/ ) # removing old "witherror" directories
{
installer::systemactions::remove_complete_directory(${$alldirs}[$i], 1);
}
}
}
}
###############################################################
# Creating the installation directory structure
###############################################################
@@ -1035,32 +994,6 @@ sub analyze_patch_files
return \@filesarray;
}
###########################################################
# Sorting an array
###########################################################
sub sort_array
{
my ( $arrayref ) = @_;
for ( my $i = 0; $i <= $#{$arrayref}; $i++ )
{
my $under = ${$arrayref}[$i];
for ( my $j = $i + 1; $j <= $#{$arrayref}; $j++ )
{
my $over = ${$arrayref}[$j];
if ( $under gt $over)
{
${$arrayref}[$i] = $over;
${$arrayref}[$j] = $under;
$under = $over;
}
}
}
}
###########################################################
# Renaming linux files with flag LINUXLINK
###########################################################
@@ -1466,167 +1399,6 @@ sub replace_variables_in_string
return $string;
}
###########################################################
# Replacing %-variables with the content
# of $allvariableshashref
###########################################################
sub replace_dollar_variables_in_string
{
my ( $string, $variableshashref ) = @_;
if ( $string =~ /^.*\$\{\w+\}.*$/ )
{
my $key;
foreach $key (keys %{$variableshashref})
{
my $value = $variableshashref->{$key};
$key = "\$\{" . $key . "\}";
$string =~ s/\Q$key\E/$value/g;
}
}
return $string;
}
###########################################################
# The list file contains the list of packages/RPMs that
# have to be copied.
###########################################################
sub get_all_files_from_filelist
{
my ( $listfile, $section ) = @_;
my @allpackages = ();
for (@{$listfile}) {
next unless /^\s*([^#].*?)\s*$/;
push @allpackages, $1;
}
return \@allpackages;
}
###########################################################
# Getting one section from a file. Section begins with
# [xyz] and ends with file end or next [abc].
###########################################################
sub get_section_from_file
{
my ($file, $sectionname) = @_;
my @section = ();
my $record = 0;
for ( my $i = 0; $i <= $#{$file}; $i++ )
{
my $line = ${$file}[$i];
if (( $record ) && ( $line =~ /^\s*\[/ ))
{
$record = 0;
last;
}
if ( $line =~ /^\s*\[\Q$sectionname\E\]\s*$/ ) { $record = 1; }
if ( $line =~ /^\s*\[/ ) { next; } # this is a section line
if ( $line =~ /^\s*\#/ ) { next; } # this is a comment line
if ( $line =~ /^\s*$/ ) { next; } # empty line
$line =~ s/^\s*//;
$line =~ s/\s*$//;
if ( $record ) { push(@section, $line); }
}
return \@section;
}
#######################################################
# Substituting one variable in the xml file
#######################################################
sub replace_one_dollar_variable
{
my ($file, $variable, $searchstring) = @_;
for ( my $i = 0; $i <= $#{$file}; $i++ )
{
${$file}[$i] =~ s/\$\{$searchstring\}/$variable/g;
}
}
#######################################################
# Substituting the variables in the xml file
#######################################################
sub substitute_dollar_variables
{
my ($file, $variableshashref) = @_;
my $key;
foreach $key (keys %{$variableshashref})
{
my $value = $variableshashref->{$key};
replace_one_dollar_variable($file, $value, $key);
}
}
#############################################################################
# Collecting all packages or rpms located in the installation directory
#############################################################################
sub get_all_packages_in_installdir
{
my ($directory) = @_;
my $infoline = "";
my @allpackages = ();
my $allpackages = \@allpackages;
if ( $installer::globals::isrpmbuild )
{
$allpackages = installer::systemactions::find_file_with_file_extension("rpm", $directory);
}
if ( $installer::globals::issolarisbuild )
{
$allpackages = installer::systemactions::get_all_directories($directory);
}
return $allpackages;
}
###############################################################
# The list of exclude packages can contain the
# beginning of the package name, not the complete name.
###############################################################
sub is_matching
{
my ($onepackage, $allexcludepackages ) = @_;
my $matches = 0;
for ( my $i = 0; $i <= $#{$allexcludepackages}; $i++ )
{
my $oneexcludepackage = ${$allexcludepackages}[$i];
if ( $onepackage =~ /^\s*$oneexcludepackage/ )
{
$matches = 1;
last;
}
}
return $matches;
}
######################################################
# Making systemcall
######################################################
@@ -1719,54 +1491,6 @@ sub collect_scpactions
}
}
#################################################################
# Setting the platform name for download
#################################################################
sub get_platform_name
{
my $platformname = "";
if (( $installer::globals::islinuxintelrpmbuild ) || ( $installer::globals::islinuxinteldebbuild ))
{
$platformname = "LinuxIntel";
}
elsif (( $installer::globals::islinuxppcrpmbuild ) || ( $installer::globals::islinuxppcdebbuild ))
{
$platformname = "LinuxPowerPC";
}
elsif (( $installer::globals::islinuxx86_64rpmbuild ) || ( $installer::globals::islinuxx86_64debbuild ))
{
$platformname = "LinuxX86-64";
}
elsif ( $installer::globals::issolarissparcbuild )
{
$platformname = "SolarisSparc";
}
elsif ( $installer::globals::issolarisx86build )
{
$platformname = "Solarisx86";
}
elsif ( $installer::globals::iswindowsbuild )
{
$platformname = "Win32Intel";
}
elsif ( $installer::globals::compiler =~ /^unxmacxi/ )
{
$platformname = "MacOSXIntel";
}
elsif ( $installer::globals::compiler =~ /^unxmacxp/ )
{
$platformname = "MacOSXPowerPC";
}
else
{
$platformname = $installer::globals::compiler;
}
return $platformname;
}
###########################################################
# Adding additional variables into the variableshashref,
# that are defined in include files in the solver. The
@@ -1902,33 +1626,6 @@ sub find_file_by_id
return $onefile;
}
##############################################
# Searching for an item with the gid
##############################################
sub find_item_by_gid
{
my ( $itemsref, $gid ) = @_;
my $founditem = 0;
my $oneitem = "";
for ( my $i = 0; $i <= $#{$itemsref}; $i++ )
{
my $localitem = ${$itemsref}[$i];
my $itemgid = $localitem->{'gid'};
if ( $itemgid eq $gid )
{
$oneitem = $localitem;
$founditem = 1;
last;
}
}
return $oneitem;
}
#########################################################
# Calling sum
#########################################################
@@ -2008,86 +1705,6 @@ sub call_wc
return $wcoutput;
}
##############################################
# Setting architecture ARCH=i86pc
# instead of ARCH=i386.
##############################################
sub set_old_architecture_string
{
my ($pkginfofile) = @_;
for ( my $i = 0; $i <= $#{$pkginfofile}; $i++ )
{
if ( ${$pkginfofile}[$i] =~ /^\s*ARCH=i386\s*$/ )
{
${$pkginfofile}[$i] =~ s/i386/i86pc/;
last;
}
}
}
##############################################
# For the new copied package, it is necessary
# that a value for the key SUNW_REQUIRES
# is set. Otherwise this copied package
# with ARCH=i86pc would be useless.
##############################################
sub check_requires_setting
{
my ($pkginfofile) = @_;
my $found = 0;
my $patchid = "";
for ( my $i = 0; $i <= $#{$pkginfofile}; $i++ )
{
if ( ${$pkginfofile}[$i] =~ /^\s*SUNW_REQUIRES=(\S*?)\s*$/ )
{
$patchid = $1;
$found = 1;
last;
}
}
if (( ! $found ) || ( $patchid eq "" )) { installer::exiter::exit_program("ERROR: No patch id defined for SUNW_REQUIRES in patch pkginfo file!", "check_requires_setting"); }
}
##############################################
# Setting checksum and wordcount for changed
# pkginfo file into pkgmap.
##############################################
sub set_pkginfo_line
{
my ($pkgmapfile, $pkginfofilename) = @_;
# 1 i pkginfo 442 34577 1166716297
# ->
# 1 i pkginfo 443 34737 1166716297
#
# wc -c pkginfo | cut -f6 -d' ' -> 442 (variable)
# sum pkginfo | cut -f1 -d' ' -> 34577 (variable)
# grep 'pkginfo' pkgmap | cut -f6 -d' ' -> 1166716297 (fix)
my $checksum = call_sum($pkginfofilename);
if ( $checksum =~ /^\s*(\d+)\s+.*$/ ) { $checksum = $1; }
my $wordcount = call_wc($pkginfofilename);
if ( $wordcount =~ /^\s*(\d+)\s+.*$/ ) { $wordcount = $1; }
for ( my $i = 0; $i <= $#{$pkgmapfile}; $i++ )
{
if ( ${$pkgmapfile}[$i] =~ /(^.*\bpkginfo\b\s+)(\d+)(\s+)(\d+)(\s+)(\d+)(\s*$)/ )
{
my $newline = $1 . $wordcount . $3 . $checksum . $5 . $6 . $7;
${$pkgmapfile}[$i] = $newline;
last;
}
}
}
##############################################
# Setting time stamp of copied files to avoid
# errors from pkgchk.
@@ -2122,33 +1739,6 @@ sub set_time_stamp
}
}
############################################################
# Generating paths for cygwin (first version)
# This function has problems with cygwin, if $tmpfilename
# contains many thousand files (OpenOffice SDK).
############################################################
sub generate_cygwin_paths_old
{
my ($filesref) = @_;
my ($tmpfilehandle, $tmpfilename) = tmpnam();
open SOURCEPATHLIST, ">$tmpfilename" or die "oops...\n";
for ( my $i = 0; $i <= $#{$filesref}; $i++ )
{
print SOURCEPATHLIST "${$filesref}[$i]->{'sourcepath'}\n";
}
close SOURCEPATHLIST;
my @cyg_sourcepathlist = qx{cygpath -w -f "$tmpfilename"};
chomp @cyg_sourcepathlist;
unlink "$tmpfilename" or die "oops\n";
for ( my $i = 0; $i <= $#{$filesref}; $i++ )
{
${$filesref}[$i]->{'cyg_sourcepath'} = $cyg_sourcepathlist[$i];
}
}
#################################################
# Generating paths for cygwin (second version)
# This function generates smaller files for
@@ -2235,29 +1825,6 @@ sub generate_cygwin_paths
installer::logger::include_timestamp_into_logfile("Ending generating cygwin paths");
}
##############################################
# Include only files from install directory
# in pkgmap file.
##############################################
sub filter_pkgmapfile
{
my ($pkgmapfile) = @_;
my @pkgmap = ();
my $line = ": 1 10\n";
push(@pkgmap, $line);
for ( my $i = 0; $i <= $#{$pkgmapfile}; $i++ )
{
$line = ${$pkgmapfile}[$i];
if ( $line =~ /^\s*1\si\s/ ) { push(@pkgmap, $line); }
}
return \@pkgmap;
}
################################################
# Files with flag HIDDEN get a dot at the
# beginning of the file name. This cannot be
@@ -2490,22 +2057,6 @@ sub put_license_into_setup
installer::files::save_file($setupfilename, $setupfile);
}
################################################
# Setting global path to getuid.so library
################################################
sub set_getuid_path
{
my ($includepatharrayref) = @_;
my $getuidlibraryname = "getuid.so";
my $getuidlibraryref = installer::scriptitems::get_sourcepath_from_filename_and_includepath(\$getuidlibraryname, $includepatharrayref, 0);
if ($$getuidlibraryref eq "") { installer::exiter::exit_program("ERROR: Could not find $getuidlibraryname!", "set_getuid_path"); }
$installer::globals::getuidpath = $$getuidlibraryref;
$installer::globals::getuidpathset = 1;
}
#########################################################
# Create a tar file from the binary package
#########################################################
@@ -2543,38 +2094,6 @@ sub tar_package
return $filesize;
}
#########################################################
# Create a tar file from the binary package
#########################################################
sub untar_package
{
my ( $installdir, $tarfilename, $getuidlibrary) = @_;
my $ldpreloadstring = "";
if ( $getuidlibrary ne "" ) { $ldpreloadstring = "LD_PRELOAD=" . $getuidlibrary; }
my $systemcall = "cd $installdir; $ldpreloadstring tar -xf $tarfilename";
my $returnvalue = system($systemcall);
my $infoline = "Systemcall: $systemcall\n";
push( @installer::globals::logfileinfo, $infoline);
if ($returnvalue)
{
$infoline = "ERROR: Could not execute \"$systemcall\"!\n";
push( @installer::globals::logfileinfo, $infoline);
}
else
{
$infoline = "Success: Executed \"$systemcall\" successfully!\n";
push( @installer::globals::logfileinfo, $infoline);
}
chmod 0775, $tarfilename;
}
#########################################################
# Shuffle an array (Fisher Yates shuffle)
#########################################################

View File

@@ -48,23 +48,6 @@ sub convert_array_to_hash
return \%newhash;
}
sub convert_hash_into_array
{
my ($hashref) = @_;
my @array = ();
my ($key, $value, $input);
foreach $key (keys %{$hashref})
{
$value = $hashref->{$key};
$input = "$key = $value\n";
push(@array ,$input);
}
return \@array
}
sub convert_stringlist_into_array_2
{
my ( $input, $separator ) = @_;

View File

@@ -1,66 +0,0 @@
#
# This file is part of the LibreOffice project.
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
# This file incorporates work covered by the following license notice:
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed
# with this work for additional information regarding copyright
# ownership. The ASF licenses this file to you under the Apache
# License, Version 2.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.apache.org/licenses/LICENSE-2.0 .
#
package par2script::shortcut;
use par2script::work;
############################################################
# Writing shortcuts to files behind the correct files and
# then shortcuts to shortcuts behind these shortcuts.
############################################################
sub shift_shortcut_positions
{
my ($script) = @_;
my $allshortcutgids = par2script::work::get_all_gids_from_script($script, "Shortcut");
# first all shortcuts that are assigned to files
for ( my $i = 0; $i <= $#{$allshortcutgids}; $i++ )
{
my $codeblock = par2script::work::get_definitionblock_from_script($script, ${$allshortcutgids}[$i]);
my $filegid = par2script::work::get_value_from_definitionblock($codeblock, "FileID");
if (!($filegid eq ""))
{
par2script::work::remove_definitionblock_from_script($script, ${$allshortcutgids}[$i]);
par2script::work::add_definitionblock_into_script($script, $codeblock, $filegid);
}
}
# secondly all shortcuts that are assigned to other shortcuts
for ( my $i = 0; $i <= $#{$allshortcutgids}; $i++ )
{
my $codeblock = par2script::work::get_definitionblock_from_script($script, ${$allshortcutgids}[$i]);
my $shortcutgid = par2script::work::get_value_from_definitionblock($codeblock, "ShortcutID");
if (!($shortcutgid eq ""))
{
par2script::work::remove_definitionblock_from_script($script, ${$allshortcutgids}[$i]);
par2script::work::add_definitionblock_into_script($script, $codeblock, $shortcutgid);
}
}
}
1;

View File

@@ -289,22 +289,6 @@ sub getlangfilename
return $pre2par::globals::langfilename;
}
###################################################
# Creating the ulf file name from the
# corresponding pre file name
###################################################
sub getulffilename
{
my ($prefilename) = @_;
my $ulffilename = $prefilename;
$ulffilename =~ s/\.pre\s*$/\.ulf/;
pre2par::pathanalyzer::make_absolute_filename_to_relative_filename(\$ulffilename);
return $ulffilename;
}
############################################
# Checking if a file exists
############################################