Kaydet (Commit) 9268b63d authored tarafından Andre Fischer's avatar Andre Fischer

#i119732# Renamed download_external_libraries.pl to…

#i119732# Renamed download_external_libraries.pl to download_external_dependencies.pl and made it the default in bootstrap.1.
üst 2f5938b5
......@@ -39,11 +39,7 @@ chmod +x "$SRC_ROOT/solenv/bin/gccinstlib.pl"
# fetch or update external tarballs
if [ "$DO_FETCH_TARBALLS" = "yes" ]; then
if [ "X$USE_NEW_EXTLIB_DOWNLOAD" != "X" ]; then
download_external_libraries.pl $SRC_ROOT/external_libs.lst
else
$SRC_ROOT/fetch_tarballs.sh $SRC_ROOT/ooo.lst
fi
download_external_dependencies.pl $SRC_ROOT/external_deps.lst
fi
# ------------------------------------------------------------------------------
......
......@@ -41,13 +41,13 @@ if ( true )
URL1 = http://sourceforge.net/projects/hunspell/files/MyThes/1.2.0/mythes-1.2.0.tar.gz/download
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SYSTEM_LIBTEXTCAT != YES)
MD5 = 128cfc86ed5953e57fe0f5ae98b62c2e
name = libtextcat-2.2.tar.gz
URL1 = http://software.wise-guys.nl/download/libtextcat-2.2.tar.gz
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SOLAR_JAVA == TRUE)
MD5 = 17410483b5b5f267aa18b7e00b65e6e0
name = hsqldb_1_8_0.zip
URL1 = http://sourceforge.net/projects/hsqldb/files/hsqldb/hsqldb_1_8_0/hsqldb_1_8_0_10.zip/download
......@@ -58,7 +58,7 @@ if ( true )
name = Adobe-Core35_AFMs-314.tar.gz
URL1 = $(SVN_TRUNK)$(MD5)-$(name)
if (SOLAR_JAVA=TRUE)
if (SOLAR_JAVA == TRUE)
MD5 = 17960f35b2239654ba608cf1f3e256b3
name = lucene-2.9.4-src.tar.gz
URL1 = http://www.us.apache.org/dist/lucene/java/2.9.4/lucene-2.9.4-src.tar.gz
......@@ -66,37 +66,37 @@ if (SOLAR_JAVA=TRUE)
URL2 = http://svn.apache.org/repos/asf/!svn/bc/1337615/incubator/ooo/trunk/ext_sources/$(MD5)-$(name)
URL3 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (WITH_MOZILLA != NO)
MD5 = 1f24ab1d39f4a51faf22244c94a6203f
name = xmlsec1-1.2.14.tar.gz
URL1 = ftp://ftp.aleksey.com/pub/xmlsec/releases/xmlsec1-1.2.14.tar.gz
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SYSTEM_REDLAND != YES)
MD5 = 284e768eeda0e2898b0d5bf7e26a016e
name = raptor-1.4.18.tar.gz
URL1 = http://download.librdf.org/source/raptor-1.4.18.tar.gz
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SYSTEM_REDLAND != YES)
MD5 = ca66e26082cab8bb817185a116db809b
name = redland-1.0.8.tar.gz
URL1 = http://download.librdf.org/source/redland-1.0.8.tar.gz
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SYSTEM_REDLAND != YES)
MD5 = fca8706f2c4619e2fa3f8f42f8fc1e9d
name = rasqal-0.9.16.tar.gz
URL1 = http://download.librdf.org/source/rasqal-0.9.16.tar.gz
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SOLAR_JAVA==TRUE && ENABLE_MEDIAWIKI==YES)
MD5 = 2c9b0f83ed5890af02c0df1c1776f39b
name = commons-httpclient-3.1-src.tar.gz
URL1 = http://archive.apache.org/dist/httpcomponents/commons-httpclient/source/commons-httpclient-3.1-src.tar.gz
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SOLAR_JAVA==TRUE && ENABLE_MEDIAWIKI==YES)
MD5 = 2e482c7567908d334785ce7d69ddfff7
name = commons-codec-1.6-src.tar.gz
URL1 = http://apache.spinellicreations.com//commons/codec/source/commons-codec-1.6-src.tar.gz
......@@ -113,25 +113,30 @@ if ( true )
name = serf-1.0.0.tar.bz2
URL1 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SOLAR_JAVA==TRUE && (ENABLE_MEDIAWIKI==YES || ENABLE_REPORTBUILDER==YES))
MD5 = 3c219630e4302863a9a83d0efde889db
name = commons-logging-1.1.1-src.tar.gz
# This seems to be the original host, but the MD5 sum does not match.
# URL1 = http://www.alliedquotes.com/mirrors/apache//commons/logging/source/commons-logging-1.1.1-src.tar.gz
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SOLAR_JAVA==TRUE && ENABLE_MEDIAWIKI==YES)
MD5 = 625ff5f2f968dd908bca43c9469d6e6b
name = commons-lang-2.4-src.tar.gz
URL1 = http://archive.apache.org/dist/commons/lang/source/commons-lang-2.4-src.tar.gz
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SYSTEM_OPENSSL!=YES && DISABLE_OPENSSL!=TRUE)
MD5 = 63ddc5116488985e820075e65fbe6aa4
name = openssl-0.9.8o.tar.gz
URL1 = http://www.openssl.org/source/openssl-0.9.8o.tar.gz
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
MD5 = 97262fe54dddaf583eaaee3497a426e1
name = apr-1.4.5.tar.gz
URL1 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
MD5 = 666a5d56098a9debf998510e304c8095
name = apr-util-1.4.1.tar.gz
......@@ -157,59 +162,54 @@ if ( true )
name = STLport-4.5-0119.tar.gz
URL1 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SYSTEM_LIBXML != YES)
MD5 = 7740a8ec23878a2f50120e1faa2730f2
name = libxml2-2.7.6.tar.gz
URL1 = ftp://xmlsoft.org/libxml2/libxml2-2.7.6.tar.gz
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SYSTEM_LIBXSLT != YES)
MD5 = e61d0364a30146aaa3001296f853b2b9
name = libxslt-1.1.26.tar.gz
URL1 = ftp://xmlsoft.org/libxml2/libxslt-1.1.26.tar.gz
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SOLAR_JAVA == TRUE)
MD5 = 7e4e73c21f031d5a4c93c128baf7fd75
name = apache-tomcat-5.5.35-src.tar.gz
# This seems to be the original host, but the MD5 sum does not match.
# URL1 = http://apache.ziply.com/tomcat/tomcat-5/v5.5.35/bin/apache-tomcat-5.5.35.tar.gz
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
MD5 = 97262fe54dddaf583eaaee3497a426e1
name = apr-1.4.5.tar.gz
URL1 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SOLAR_JAVA == TRUE)
MD5 = 980143f96b3f6ce45d2e4947da21a5e9
name = stax-src-1.2.0.zip
URL1 = http://dist.codehaus.org/stax/distributions/stax-src-1.2.0.zip
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SYSTEM_JPEG != YES)
MD5 = a2c10c04f396a9ce72894beb18b4e1f9
name = jpeg-8c.tar.gz
URL1 = http://www.ijg.org/files/jpegsrc.v8c.tar.gz
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (ENABLE_MEDIAWIKI == YES)
MD5 = a7983f859eafb2677d7ff386a023bc40
name = xsltml_2.1.2.zip
URL1 = http://sourceforge.net/projects/xsltml/files/xsltml/v.2.1.2/xsltml_2.1.2.zip/download
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SYSTEM_PYTHON != YES)
MD5 = bc702168a2af16869201dbe91e46ae48
name = LICENSE_Python-2.6.1
URL1 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SYSTEM_PYTHON != YES)
MD5 = e81c2f0953aa60f8062c05a4673f2be0
name = Python-2.6.1.tar.bz2
URL1 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (GUI!=UNX || SYSTEM_ZLIB!=YES)
MD5 = c735eab2d659a96e5a594c9e8541ad63
name = zlib-1.2.5.tar.gz
URL1 = $(SVN_TRUNK)$(MD5)-$(name)
......@@ -219,30 +219,30 @@ if ( true )
name = mdds_0.3.0.tar.bz2
URL1 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SYSTEM_VIGRA != YES)
MD5 = ea91f2fb4212a21d708aced277e6e85a
name = vigra1.4.0.tar.gz
URL1 = http://hci.iwr.uni-heidelberg.de/vigra/vigra1.4.0.tar.gz
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SYSTEM_CURL != YES)
MD5 = ecb2e37e45c9933e2a963cabe03670ab
name = curl-7.19.7.tar.gz
URL1 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SYSTEM_EXPAT != YES)
MD5 = ee8b492592568805593f81f8cdf2a04c
name = expat-2.0.1.tar.gz
URL1 = http://sourceforge.net/projects/expat/files/expat/2.0.1/expat-2.0.1.tar.gz/download
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if (WITH_CATA_FONTS=YES)
if (WITH_CATA_FONTS == YES)
MD5 = f872f4ac066433d8ff92f5e316b36ff9
name = dejavu-fonts-ttf-2.33.zip
URL1 = http://sourceforge.net/projects/dejavu/files/dejavu/2.33/dejavu-fonts-ttf-2.33.zip/download
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if ( true )
if (SYSTEM_BOOST!=YES || (OS==SOLARIS && COM!=GCC))
MD5 = fcc6df1160753d0b8c835d17fdeeb0a7
name = boost_1_39_0.tar.gz
URL1 = http://sourceforge.net/projects/boost/files/boost/1.39.0/boost_1_39_0.tar.gz/download
......@@ -260,23 +260,23 @@ if ( true )
# Libraries with category B license
#
if (ENABLE_CATEGORY_B=YES)
if (ENABLE_CATEGORY_B==YES)
MD5 = 24be19595acad0a2cae931af77a0148a
name = LICENSE_source-9.0.0.7-bj.html
URL1 = $(SVN_TRUNK)$(MD5)-$(name)
if (ENABLE_CATEGORY_B=YES)
if (ENABLE_CATEGORY_B==YES)
MD5 = 2b5f1ca58d6ef30f18f1415b65bed81c
name = CoinMP-1.6.0.tgz
URL1 = $(OOO_EXTRAS)$(MD5)-$(name)
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if (ENABLE_CATEGORY_B=YES)
if (ENABLE_CATEGORY_B==YES)
MD5 = 377a60170e5185eb63d3ed2fae98e621
name = README_silgraphite-2.3.1.txt
URL1 = $(SVN_TRUNK)$(MD5)-$(name)
if (ENABLE_CATEGORY_B=YES)
if (WITH_CATB_FONTS == YES)
MD5 = 35efabc239af896dfb79be7ebdd6e6b9
name = gentiumbasic-fonts-1.10.zip
# This seems to be the original host, but the MD5 sum does not match.
......@@ -284,39 +284,39 @@ if (ENABLE_CATEGORY_B=YES)
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
URL3 = $(SVN_TRUNK)$(MD5)-$(name)
if (ENABLE_CATEGORY_B=YES)
if (ENABLE_CATEGORY_B==YES)
MD5 = 48470d662650c3c074e1c3fabbc67bbd
name = README_source-9.0.0.7-bj.txt
URL1 = $(SVN_TRUNK)$(MD5)-$(name)
if (ENABLE_CATEGORY_B=YES)
if (ENABLE_CATEGORY_B==YES && ENABLE_HYPHEN==YES)
MD5 = 48a9f787f43a09c0a9b7b00cd1fddbbf
name = hyphen-2.7.1.tar.gz
URL1 = http://sourceforge.net/projects/hunspell/files/Hyphen/2.7/hyphen-2.7.1.tar.gz/download
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
URL3 = $(SVN_TRUNK)$(MD5)-$(name)
if (ENABLE_CATEGORY_B=YES && WITH_CATB_FONTS=YES)
if (ENABLE_CATEGORY_B==YES && WITH_CATB_FONTS==YES)
MD5 = 61f59e4110781cbe66b46449eadac231
name = croscorefonts-1.21.0.tar.gz
URL1 = $(OOO_EXTRAS)$(MD5)-$(name)
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if (ENABLE_CATEGORY_B=YES)
if (ENABLE_CATEGORY_B==YES && ENABLE_HUNSPELL==YES)
name = hunspell-1.2.9.tar.gz
MD5 = 68dd2e8253d9a7930e9fd50e2d7220d0
URL1 = http://sourceforge.net/projects/hunspell/files/Hunspell/1.2.9/hunspell-1.2.9.tar.gz/download
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
URL3 = $(SVN_TRUNK)$(MD5)-$(name)
if (ENABLE_CATEGORY_B=YES)
if (ENABLE_CATEGORY_B==YES && SOLAR_JAVA==TRUE && ENABLE_JAVASCRIPT==YES)
MD5 = 99d94103662a8d0b571e247a77432ac5
name = rhino1_7R3.zip
URL1 = ftp://ftp.mozilla.org/pub/mozilla.org/js/rhino1_7R3.zip
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
URL3 = $(SVN_TRUNK)$(MD5)-$(name)
if (ENABLE_CATEGORY_B=YES && WITH_MOZILLA!=NO && BUILD_MOZAB=TRUE)
if (ENABLE_CATEGORY_B==YES && WITH_MOZILLA!=NO && BUILD_MOZAB==TRUE)
MD5 = a169ab152209200a7bad29a275cb0333
name = seamonkey-1.1.14.source.tar.gz
# This seems to be the original host, but the MD5 sum does not match.
......@@ -324,26 +324,26 @@ if (ENABLE_CATEGORY_B=YES && WITH_MOZILLA!=NO && BUILD_MOZAB=TRUE)
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
URL3 = $(SVN_TRUNK)$(MD5)-$(name)
if (ENABLE_CATEGORY_B=YES)
if (ENABLE_CATEGORY_B==YES && ENABLE_NSS_MODULE==YES)
MD5 = b92261a5679276c400555004937af965
name = nss-3.12.6-with-nspr-4.8.4.tar.gz
URL1 = $(OOO_EXTRAS)$(MD5)-$(name)
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if (ENABLE_CATEGORY_B=YES)
if (ENABLE_CATEGORY_B==YES && SYSTEM_SAXON!=YES && DISABLE_SAXON!=YES && SOLAR_JAVA==TRUE)
MD5 = ada24d37d8d638b3d8a9985e80bc2978
name = source-9.0.0.7-bj.zip
URL1 = $(OOO_EXTRAS)$(MD5)-$(name)
URL2 = $(SVN_TRUNK)$(MD5)-$(name)
if (ENABLE_CATEGORY_B=YES)
if (ENABLE_CATEGORY_B==YES && SYSTEM_GRAPHITE!=YES && ENABLE_GRAPHITE==TRUE)
MD5 = d35724900f6a4105550293686688bbb3
name = silgraphite-2.3.1.tar.gz
URL1 = http://sourceforge.net/projects/silgraphite/files/silgraphite/2.3.1/silgraphite-2.3.1.tar.gz/download
URL2 = $(OOO_EXTRAS)$(MD5)-$(name)
URL3 = $(SVN_TRUNK)$(MD5)-$(name)
if (ENABLE_CATEGORY_B=YES)
if (ENABLE_CATEGORY_B==YES && SOLAR_JAVA==TRUE && DISABLE_BEANSHELL!=YES)
MD5 = ea570af93c284aa9e5621cd563f54f4d
name = bsh-2.0b1-src.tar.gz
# This seems to be the original host, but the MD5 sum does not match.
......
# Format of this file:
# Comments start with '#' and are ignored.
# Empty lines (except for whitespace) are ignored.
# Full URLs (http and ftp) are loaded as is.
# Partial URLs (http and ftp) end in '/' and are added to the following lines.
# Load libraries from svn.apache.org. When the source code was checked out
# with SVN then these should already be present.
### TODO: update the revision when the content of ext_sources is changed!
http://svn.apache.org/repos/asf/!svn/bc/1336449/incubator/ooo/trunk/ext_sources/
# Libraries with category A license
0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz
067201ea8b126597670b5eff72e1f66c-mythes-1.2.0.tar.gz
128cfc86ed5953e57fe0f5ae98b62c2e-libtextcat-2.2.tar.gz
17410483b5b5f267aa18b7e00b65e6e0-hsqldb_1_8_0.zip
1756c4fa6c616ae15973c104cd8cb256-Adobe-Core35_AFMs-314.tar.gz
17960f35b2239654ba608cf1f3e256b3-lucene-2.9.4-src.tar.gz
18f577b374d60b3c760a3a3350407632-STLport-4.5.tar.gz
1f24ab1d39f4a51faf22244c94a6203f-xmlsec1-1.2.14.tar.gz
284e768eeda0e2898b0d5bf7e26a016e-raptor-1.4.18.tar.gz
2c9b0f83ed5890af02c0df1c1776f39b-commons-httpclient-3.1-src.tar.gz
2e482c7567908d334785ce7d69ddfff7-commons-codec-1.6-src.tar.gz
2f6ecca935948f7db92d925d88d0d078-icu4c-4_0_1-src.tgz
3b179ed18f65c43141528aa6d2440db4-serf-1.0.0.tar.bz2
3c219630e4302863a9a83d0efde889db-commons-logging-1.1.1-src.tar.gz
625ff5f2f968dd908bca43c9469d6e6b-commons-lang-2.4-src.tar.gz
63ddc5116488985e820075e65fbe6aa4-openssl-0.9.8o.tar.gz
666a5d56098a9debf998510e304c8095-apr-util-1.4.1.tar.gz
7376930b0d3f3d77a685d94c4a3acda8-STLport-4.5-0119.tar.gz
7740a8ec23878a2f50120e1faa2730f2-libxml2-2.7.6.tar.gz
7e4e73c21f031d5a4c93c128baf7fd75-apache-tomcat-5.5.35-src.tar.gz
97262fe54dddaf583eaaee3497a426e1-apr-1.4.5.tar.gz
980143f96b3f6ce45d2e4947da21a5e9-stax-src-1.2.0.zip
a2c10c04f396a9ce72894beb18b4e1f9-jpeg-8c.tar.gz
a7983f859eafb2677d7ff386a023bc40-xsltml_2.1.2.zip
bc702168a2af16869201dbe91e46ae48-LICENSE_Python-2.6.1
c441926f3a552ed3e5b274b62e86af16-STLport-4.0.tar.gz
c735eab2d659a96e5a594c9e8541ad63-zlib-1.2.5.tar.gz
ca66e26082cab8bb817185a116db809b-redland-1.0.8.tar.gz
cf8a6967f7de535ae257fa411c98eb88-mdds_0.3.0.tar.bz2
e61d0364a30146aaa3001296f853b2b9-libxslt-1.1.26.tar.gz
e81c2f0953aa60f8062c05a4673f2be0-Python-2.6.1.tar.bz2
ea91f2fb4212a21d708aced277e6e85a-vigra1.4.0.tar.gz
ecb2e37e45c9933e2a963cabe03670ab-curl-7.19.7.tar.gz
ee8b492592568805593f81f8cdf2a04c-expat-2.0.1.tar.gz
WITH_CATA_FONTS:f872f4ac066433d8ff92f5e316b36ff9-dejavu-fonts-ttf-2.33.zip
fca8706f2c4619e2fa3f8f42f8fc1e9d-rasqal-0.9.16.tar.gz
fcc6df1160753d0b8c835d17fdeeb0a7-boost_1_39_0.tar.gz
fdb27bfe2dbe2e7b57ae194d9bf36bab-SampleICC-1.3.2.tar.gz
# Libraries with category B license
24be19595acad0a2cae931af77a0148a-LICENSE_source-9.0.0.7-bj.html
2b5f1ca58d6ef30f18f1415b65bed81c-CoinMP-1.6.0.tgz
377a60170e5185eb63d3ed2fae98e621-README_silgraphite-2.3.1.txt
WITH_CATB_FONTS:35efabc239af896dfb79be7ebdd6e6b9-gentiumbasic-fonts-1.10.zip
48470d662650c3c074e1c3fabbc67bbd-README_source-9.0.0.7-bj.txt
48a9f787f43a09c0a9b7b00cd1fddbbf-hyphen-2.7.1.tar.gz
WITH_CATB_FONTS:61f59e4110781cbe66b46449eadac231-croscorefonts-1.21.0.tar.gz
68dd2e8253d9a7930e9fd50e2d7220d0-hunspell-1.2.9.tar.gz
99d94103662a8d0b571e247a77432ac5-rhino1_7R3.zip
a169ab152209200a7bad29a275cb0333-seamonkey-1.1.14.source.tar.gz
b92261a5679276c400555004937af965-nss-3.12.6-with-nspr-4.8.4.tar.gz
ada24d37d8d638b3d8a9985e80bc2978-source-9.0.0.7-bj.zip
d35724900f6a4105550293686688bbb3-silgraphite-2.3.1.tar.gz
ea570af93c284aa9e5621cd563f54f4d-bsh-2.0b1-src.tar.gz
# This file has been replaced by main/external_deps.lst
......@@ -150,7 +150,7 @@ sub ProcessLastBlock ()
# Ignore the block if the selector does not match.
if ( ! EvaluateExpression(SubstituteVariables($LocalEnvironment->{'selector'})))
{
printf("ignoring %s because its prerequisites are not fullfilled\n", GetValue('name'));
printf("ignoring %s because its prerequisites are not fulfilled\n", GetValue('name'));
}
else
{
......@@ -243,17 +243,23 @@ sub SubstituteVariables ($)
Evaluate the $expression of an "if" statement to either 0 or 1. It can
be a single term (see EvaluateTerm for a description), or several terms
separated by either all ||s or &&s. Mixing || and && is not supported
and will result in an error.
separated by either all ||s or &&s. A term can also be an expression
enclosed in parantheses.
=cut
sub EvaluateExpression ($)
{
my $expression = shift;
# Evaluate sub expressions enclosed in parantheses.
while ($expression =~ /^(.*)\(([^\(\)]+)\)(.*)$/)
{
$expression = $1 . (EvaluateExpression($2) ? " true " : " false ") . $3;
}
if ($expression =~ /&&/ && $expression =~ /\|\|/)
{
die "selctor can contain either && or || but not both at the same time";
die "expression can contain either && or || but not both at the same time";
}
elsif ($expression =~ /&&/)
{
......@@ -275,8 +281,6 @@ sub EvaluateExpression ($)
{
return EvaluateTerm($expression);
}
print $expression."\n";
return 1;
}
......@@ -294,12 +298,13 @@ sub EvaluateTerm ($)
{
my $term = shift;
if ($term =~ /^\s*([a-zA-Z_0-9]+)\s*(=|!=)\s*(.*)\s*$/)
if ($term =~ /^\s*([a-zA-Z_0-9]+)\s*(==|!=)\s*(.*)\s*$/)
{
my ($variable_name, $operator, $given_value) = ($1,$2,$3);
my $variable_value = $ENV{$variable_name};
$variable_value = "" if ! defined $variable_value;
if ($operator eq "=")
if ($operator eq "==")
{
return $variable_value eq $given_value;
}
......@@ -316,6 +321,10 @@ sub EvaluateTerm ($)
{
return 1;
}
elsif ($term =~ /^\s*false\s*$/i)
{
return 0;
}
else
{
die "term $term is not of the form <environment-variable> (=|==) <value>";
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment