summaryrefslogtreecommitdiff
path: root/odk/configure.pl
diff options
context:
space:
mode:
Diffstat (limited to 'odk/configure.pl')
-rwxr-xr-xodk/configure.pl312
1 files changed, 95 insertions, 217 deletions
diff --git a/odk/configure.pl b/odk/configure.pl
index ac88c0064e5f..eee53241e17e 100755
--- a/odk/configure.pl
+++ b/odk/configure.pl
@@ -43,23 +43,11 @@ $main::operatingSystem = `$main::sdkpath/config.guess | cut -d"-" -f3,4`;
chomp ($main::operatingSystem);
$main::OO_SDK_HOME = $main::sdkpath;
-#$main::OO_SDK_HOME = "";
$main::OO_SDK_HOME_SUGGESTION = $main::sdkpath;
-$main::OFFICE_OR_URE = "Office";
-$main::OFFICE_OR_URE_SUGGESTION = "Office";
-
$main::OFFICE_HOME = "";
-$main::OFFICE_BASE_HOME = substr($main::sdkpath, 0, rindex($main::sdkpath, "/sdk"));
-
-if ( $main::operatingSystem =~ m/darwin/ )
-{
-# $main::OO_SDK_URE_HOME = `cd $main::sdkpath/../ure-link && pwd`;
-} else {
- $main::OO_SDK_URE_HOME = `cd $main::sdkpath/../ure-link && pwd`;
-}
-chomp($main::OO_SDK_URE_HOME);
+#$main::OFFICE_BASE_HOME = substr($main::sdkpath, 0, rindex($main::sdkpath, "/sdk"));
$main::OO_SDK_MAKE_HOME = "";
$main::makeName = "make";
@@ -115,143 +103,106 @@ $main::skipOutputDir = 0;
$main::return = 0;
-if ( $main::OFFICE_OR_URE eq "Office" )
+if ( $main::operatingSystem =~ m/darwin/ )
{
- if ( $main::operatingSystem =~ m/darwin/ )
- {
# used for a SDK as part of the office installation
-# $main::OFFICE_HOME = `cd $main::sdkpath/../../.. && pwd`;
-# chomp($main::OFFICE_HOME);
-# print " Used Office = $main::OFFICE_HOME\n";
- print " Used SDK = $main::OO_SDK_HOME\n\n";
-
- $main::OFFICE_HOME_SUGGESTION = searchMacOffice();
- while ( (! -d "$main::OFFICE_HOME" ) ||
- ((-d "$main::OFFICE_HOME") && (! -d "$main::OFFICE_HOME/Contents/MacOS")) )
- {
- print " Enter the Office installation directory [$main::OFFICE_HOME_SUGGESTION]: ";
- $main::OFFICE_HOME = readStdIn();
- chop($main::OFFICE_HOME);
- if ( $main::OFFICE_HOME eq "" )
- {
- $main::OFFICE_HOME = $main::OFFICE_HOME_SUGGESTION;
- }
-
- if ( ! -d "$main::OFFICE_HOME" )
- {
- $main::OFFICE_HOME = "";
- print " Error: An office installation is required, please specify the path to a valid installation.\n";
- }
+# $main::OFFICE_HOME = `cd $main::sdkpath/../../.. && pwd`;
+# chomp($main::OFFICE_HOME);
+# print " Used Office = $main::OFFICE_HOME\n";
+ print " Used SDK = $main::OO_SDK_HOME\n\n";
+
+ $main::OFFICE_HOME_SUGGESTION = searchMacOffice();
+ while ( (! -d "$main::OFFICE_HOME" ) ||
+ ((-d "$main::OFFICE_HOME") && (! -d "$main::OFFICE_HOME/Contents/MacOS")) )
+ {
+ print " Enter the Office installation directory [$main::OFFICE_HOME_SUGGESTION]: ";
+ $main::OFFICE_HOME = readStdIn();
+ chop($main::OFFICE_HOME);
+ if ( $main::OFFICE_HOME eq "" )
+ {
+ $main::OFFICE_HOME = $main::OFFICE_HOME_SUGGESTION;
+ }
- # check more details
- if ( -d "$main::OFFICE_HOME/Contents/basis-link" ) {
- $main::OFFICE_BASE_HOME = "$main::OFFICE_HOME/Contents/basis-link";
- if ( -d "$main::OFFICE_BASE_HOME/ure-link" ) {
- $main::OO_SDK_URE_HOME = "$main::OFFICE_BASE_HOME/ure-link";
- } else {
- $main::OFFICE_HOME = "";
- $main::OFFICE_BASE_HOME = "";
- $main::OO_SDK_URE_HOME = "";
- print " Error: no URE found in office installation, please specify the path to a valid installation.\n";
- }
- } else {
- $main::OFFICE_HOME = "";
- $main::OFFICE_BASE_HOME = "";
- $main::OO_SDK_URE_HOME = "";
- print " Error: no base layer found in office installation, please specify the path to a valid installation.\n";
- }
- }
- } else
+ if ( ! -d "$main::OFFICE_HOME" )
{
- $main::OFFICE_HOME_SUGGESTION = searchoffice();
+ $main::OFFICE_HOME = "";
+ print " Error: An office installation is required, please specify the path to a valid installation.\n";
+ }
- if ( $main::OFFICE_HOME_SUGGESTION eq "" ) {
- # prepare Office path
- $main::OFFICE_HOME_SUGGESTION = searchprog("soffice");
- }
+# $main::OFFICE_BASE_HOME = "$main::OFFICE_HOME/Contents";
+ }
+} else
+{
+ $main::OFFICE_HOME_SUGGESTION = searchoffice();
- if ( ! $main::OFFICE_HOME_SUGGESTION eq "" )
- {
- my $tmpOffice = readlink "$main::OFFICE_HOME_SUGGESTION/soffice";
+ if ( $main::OFFICE_HOME_SUGGESTION eq "" ) {
+ # prepare Office path
+ $main::OFFICE_HOME_SUGGESTION = searchprog("soffice");
+ }
- if ( $tmpOffice eq "" )
- {
- $tmpOffice = "$main::OFFICE_HOME_SUGGESTION/soffice";
- }
+ if ( ! $main::OFFICE_HOME_SUGGESTION eq "" )
+ {
+ my $tmpOffice = readlink "$main::OFFICE_HOME_SUGGESTION/soffice";
- my $offset = rindex($tmpOffice, "/program/soffice");
- if ( $offset != -1 )
- {
- $main::OFFICE_HOME_SUGGESTION = substr($tmpOffice, 0, $offset);
- } else
- {
- $offset = rindex($tmpOffice, "/soffice");
- if ( $offset != -1 )
- {
- $main::OFFICE_HOME_SUGGESTION = substr($tmpOffice, 0, $offset);
- } else
- {
- $main::OFFICE_HOME_SUGGESTION = "";
- }
- }
- }
+ if ( $tmpOffice eq "" )
+ {
+ $tmpOffice = "$main::OFFICE_HOME_SUGGESTION/soffice";
+ }
- while ( (! -d "$main::OFFICE_HOME" ) ||
- ((-d "$main::OFFICE_HOME") && (! -d "$main::OFFICE_HOME/program")) )
+ my $offset = rindex($tmpOffice, "/program/soffice");
+ if ( $offset != -1 )
+ {
+ $main::OFFICE_HOME_SUGGESTION = substr($tmpOffice, 0, $offset);
+ } else
+ {
+ $offset = rindex($tmpOffice, "/soffice");
+ if ( $offset != -1 )
{
- print " Enter the Office installation directory [$main::OFFICE_HOME_SUGGESTION]: ";
- $main::OFFICE_HOME = readStdIn();
- chop($main::OFFICE_HOME);
- if ( $main::OFFICE_HOME eq "" )
- {
- $main::OFFICE_HOME = $main::OFFICE_HOME_SUGGESTION;
- }
+ $main::OFFICE_HOME_SUGGESTION = substr($tmpOffice, 0, $offset);
+ } else
+ {
+ $main::OFFICE_HOME_SUGGESTION = "";
+ }
+ }
+ }
- if ( ! -d "$main::OFFICE_HOME" )
- {
- $main::OFFICE_HOME = "";
- print " Error: An office installation is required, please specify the path to a valid installation.\n";
- } else
- {
- # special work for a network installation, no prgram directory but a link to the soffice binary
- if ( (! -d "$main::OFFICE_HOME/program") && (-e "$main::OFFICE_HOME/soffice") )
- {
- my $soserver = `ls -l $OFFICE_HOME_SUGGESTION/soffice | sed -n 's/.* -> //p'`;
- $soserver= substr($soserver, 0, rindex($soserver, "program") - 1);
+ while ( (! -d "$main::OFFICE_HOME" ) ||
+ ((-d "$main::OFFICE_HOME") && (! -d "$main::OFFICE_HOME/program")) )
+ {
+ print " Enter the Office installation directory [$main::OFFICE_HOME_SUGGESTION]: ";
+ $main::OFFICE_HOME = readStdIn();
+ chop($main::OFFICE_HOME);
+ if ( $main::OFFICE_HOME eq "" )
+ {
+ $main::OFFICE_HOME = $main::OFFICE_HOME_SUGGESTION;
+ }
- if ( ! -d $soserver )
- {
- $main::OFFICE_HOME = "";
- print " Error: An office installation is required, please specify the path to a valid installation.\n";
- } else
- {
- $main::OFFICE_HOME = $soserver;
- }
- }
- }
+ if ( ! -d "$main::OFFICE_HOME" )
+ {
+ $main::OFFICE_HOME = "";
+ print " Error: An office installation is required, please specify the path to a valid installation.\n";
+ } else
+ {
+ # special work for a network installation, no prgram directory but a link to the soffice binary
+ if ( (! -d "$main::OFFICE_HOME/program") && (-e "$main::OFFICE_HOME/soffice") )
+ {
+ my $soserver = `ls -l $OFFICE_HOME_SUGGESTION/soffice | sed -n 's/.* -> //p'`;
+ $soserver= substr($soserver, 0, rindex($soserver, "program") - 1);
+
+ if ( ! -d $soserver )
+ {
+ $main::OFFICE_HOME = "";
+ print " Error: An office installation is required, please specify the path to a valid installation.\n";
+ } else
+ {
+ $main::OFFICE_HOME = $soserver;
+ }
}
}
-}
-else
-{
- # prepare URE path
- $main::OO_SDK_URE_HOME_SUGGESTION = "/opt/openoffice/ure";
- $main::OO_SDK_URE_HOME_SUGGESTION = "" unless
- -e "$main::OO_SDK_URE_HOME_SUGGESTION/bin/uno";
- for (;;)
- {
- print " Enter the URE installation directory",
- " [$main::OO_SDK_URE_HOME_SUGGESTION]: ";
- $main::OO_SDK_URE_HOME = readStdIn();
- chop $main::OO_SDK_URE_HOME;
- $main::OO_SDK_URE_HOME = $main::OO_SDK_URE_HOME_SUGGESTION if
- $main::OO_SDK_URE_HOME eq "" &&
- $main::OO_SDK_URE_HOME_SUGGESTION ne "";
- last if -e "$main::OO_SDK_URE_HOME/bin/uno";
- print " Error: A valid URE installation is required.\n";
}
}
+
# prepare GNU make path
while ( (!$main::correctVersion) &&
((! -d "$main::OO_SDK_MAKE_HOME" ) ||
@@ -573,25 +524,18 @@ while ( (!$main::skipOutputDir) &&
}
# prepare auto deployment
-if ( $main::OFFICE_OR_URE eq "Office" )
+while ( $main::SDK_AUTO_DEPLOYMENT eq "" ||
+ ((! $main::SDK_AUTO_DEPLOYMENT eq "YES") &&
+ (! $main::SDK_AUTO_DEPLOYMENT eq "NO")) )
{
- while ( $main::SDK_AUTO_DEPLOYMENT eq "" ||
- ((! $main::SDK_AUTO_DEPLOYMENT eq "YES") &&
- (! $main::SDK_AUTO_DEPLOYMENT eq "NO")) )
- {
- print " Automatic deployment of UNO components (YES/NO) [$main::SDK_AUTO_DEPLOYMENT_SUGGESTION]: ";
- $main::SDK_AUTO_DEPLOYMENT = uc <STDIN>;
- chop($main::SDK_AUTO_DEPLOYMENT);
- if ( $main::SDK_AUTO_DEPLOYMENT eq "" )
- {
- $main::SDK_AUTO_DEPLOYMENT = "YES";
- }
+ print " Automatic deployment of UNO components (YES/NO) [$main::SDK_AUTO_DEPLOYMENT_SUGGESTION]: ";
+ $main::SDK_AUTO_DEPLOYMENT = uc <STDIN>;
+ chop($main::SDK_AUTO_DEPLOYMENT);
+ if ( $main::SDK_AUTO_DEPLOYMENT eq "" )
+ {
+ $main::SDK_AUTO_DEPLOYMENT = "YES";
}
}
-else
-{
- $main::SDK_AUTO_DEPLOYMENT = "NO";
-}
prepareScriptFile("setsdkenv_unix.sh.in", "setsdkenv_unix.sh");
chmod 0644, "$main::OO_SDK_CONFIG_HOME/$main::hostname/setsdkenv_unix.sh";
@@ -714,19 +658,6 @@ sub searchMacOffice
if (-d "/Applications/OpenOffice.app" ) {
return "/Applications/OpenOffice.app"
}
- if (-d "/Applications/OpenOffice.org.app" ) {
- return "/Applications/OpenOffice.org.app"
- }
- if (-d "/Applications/Oracle Open Office.app" ) {
- return "/Applications/Oracle Open Office.app";
- }
- if (-d "/Applications/StarOffice.app" ) {
- return "/Applications/StarOffice.app";
- }
- if (-d "/Applications/StarSuite.app" ) {
- return "/Applications/StarSuite.app";
- }
-
return "";
}
@@ -744,59 +675,7 @@ sub searchoffice
if (-d $officepath && -e "$officepath/program/soffice") {
return $officepath;
}
- # fallback
- my $tmpversion = $main::OO_MAJORVERSION;
-# if ( $main::OO_MINORVERSION > 0) {
-# $tmpversion = "$tmpversion.$main::OO_MINORVERSION";
-# }
-
- $officepath = "$tmpOffice/oracle_open_office$tmpversion";
- if (-d $officepath && -e "$officepath/program/soffice") {
- return $officepath;
- }
-
- my $tmpversion = $main::OO_MAJORVERSION + 6;
- if ( $main::OO_MINORVERSION > 0) {
- $tmpversion = "$tmpversion.$main::OO_MINORVERSION";
- }
-
- $officepath = "$tmpOffice/staroffice$tmpversion";
- if (-d $officepath && -e "$officepath/program/soffice") {
- return $officepath;
- }
- $officepath = "$tmpOffice/StarOffice$tmpversion";
- if (-d $officepath && -e "$officepath/program/soffice") {
- return $officepath;
- }
- $officepath = "$tmpOffice/starsuite$tmpversion";
- if (-d $officepath && -e "$officepath/program/soffice") {
- return $officepath;
- }
- $officepath = "$tmpOffice/StarSuite$tmpversion";
- if (-d $officepath && -e "$officepath/program/soffice") {
- return $officepath;
- }
- $officepath = "";
-
- # search other potential matching office versions
- my $path = "/opt/";
- my $entry = "";
- my $version = "0";
- for $entry (glob($path.'*')) {
- ## if the file is a directory
- if( -d $entry) {
-
- if ($entry =~ m#(.+(o|O)ffice(\.org){0,1}(\d([\d\.]){0,2}))# ||
- $entry =~ m#(.+(s|S)uite(.*)(\d([\d\.]){0,2}))# )
- {
- if ($4 > $version) {
- $version = $4;
- $officepath = $entry;
- }
- }
- }
- }
- return $officepath;
+ return "";
}
@@ -865,8 +744,7 @@ sub prepareScriptFile()
$_ =~ s#\@OO_SDK_NAME\@#$main::OO_SDK_NAME#go;
$_ =~ s#\@OO_SDK_HOME\@#$main::OO_SDK_HOME#go;
$_ =~ s#\@OFFICE_HOME\@#$main::OFFICE_HOME#go;
- $_ =~ s#\@OFFICE_BASE_HOME\@#$main::OFFICE_BASE_HOME#go;
- $_ =~ s#\@OO_SDK_URE_HOME\@#$main::OO_SDK_URE_HOME#go;
+# $_ =~ s#\@OFFICE_BASE_HOME\@#$main::OFFICE_BASE_HOME#go;
$_ =~ s#\@OO_SDK_MAKE_HOME\@#$main::OO_SDK_MAKE_HOME#go;
$_ =~ s#\@OO_SDK_ZIP_HOME\@#$main::OO_SDK_ZIP_HOME#go;
$_ =~ s#\@OO_SDK_CAT_HOME\@#$main::OO_SDK_CAT_HOME#go;