[libinline-java-perl] 105/398: Added fix for Cygwin paths
Jonas Smedegaard
dr at jones.dk
Thu Feb 26 11:42:54 UTC 2015
This is an automated email from the git hooks/post-receive script.
js pushed a commit to tag 0.55
in repository libinline-java-perl.
commit 1eea0823806c65e5fcea4acc2a7968f64c1d960d
Author: Patrick LeBoutillier <patl at cpan.org>
Date: Wed Jun 6 16:45:11 2001 +0000
Added fix for Cygwin paths
---
Java.pm | 35 ++++++++++++++++++++++++++++++++---
1 file changed, 32 insertions(+), 3 deletions(-)
diff --git a/Java.pm b/Java.pm
index c4b65b0..8f046e4 100644
--- a/Java.pm
+++ b/Java.pm
@@ -639,10 +639,10 @@ sub set_classpath {
push @list, $o->{ILSM}->{CLASSPATH} ;
}
if (defined($path)){
- push @list, $path ;
+ push @list, portable("SUB_FIX_CLASSPATH", $path) ;
}
- my $sep = portable("ENV_VAR_PATH_SEP") ;
+ my $sep = portable("ENV_VAR_PATH_SEP_CP") ;
my @cp = split(/$sep/, join($sep, @list)) ;
my %cp = map { ($_ !~ /^\s*$/ ? ($_, 1) : ()) } @cp ;
@@ -1158,18 +1158,21 @@ sub portable {
my $defmap = {
EXE_EXTENSION => '',
ENV_VAR_PATH_SEP => ':',
+ ENV_VAR_PATH_SEP_CP => ':',
PATH_SEP => '/',
PATH_SEP_RE => '/',
RE_FILE => [],
IO_REDIR => '2>&1',
GOT_ALARM => 1,
COMMAND_COM => 0,
+ SUB_FIX_CLASSPATH => undef,
} ;
my $map = {
MSWin32 => {
EXE_EXTENSION => '.exe',
ENV_VAR_PATH_SEP => ';',
+ ENV_VAR_PATH_SEP_CP => ';',
PATH_SEP => '\\',
PATH_SEP_RE => '\\\\',
RE_FILE => ['/', '\\'],
@@ -1178,9 +1181,20 @@ sub portable {
GOT_ALARM => 0,
COMMAND_COM => $COMMAND_COM,
},
+ cygwin => {
+ ENV_VAR_PATH_SEP_CP => ';',
+ SUB_FIX_CLASSPATH => sub {
+ my $val = shift ;
+ if (defined($val)&&($val)){
+ $val = `cygpath -w \"$val\"` ;
+ chomp($val) ;
+ }
+ return $val ;
+ },
+ },
} ;
- if (! defined($defmap->{$key})){
+ if (! exists($defmap->{$key})){
croak "Portability issue $key not defined!" ;
}
@@ -1198,6 +1212,17 @@ sub portable {
return undef ;
}
}
+ elsif ($key =~ /^SUB_/){
+ my $sub = $map->{$^O}->{$key} ;
+ if (defined($sub)){
+ $val = $sub->($val) ;
+ Inline::Java::debug("portable: $key => $val for $^O is '$val'") ;
+ return $val ;
+ }
+ else{
+ return $val ;
+ }
+ }
else{
Inline::Java::debug("portable: $key for $^O is '$map->{$^O}->{$key}'") ;
return $map->{$^O}->{$key} ;
@@ -1208,6 +1233,10 @@ sub portable {
Inline::Java::debug("portable: $key => $val for $^O is default '$val'") ;
return $val ;
}
+ if ($key =~ /^SUB_/){
+ Inline::Java::debug("portable: $key => $val for $^O is default '$val'") ;
+ return $val ;
+ }
else{
Inline::Java::debug("portable: $key for $^O is default '$defmap->{$key}'") ;
return $defmap->{$key} ;
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/libinline-java-perl.git
More information about the Pkg-perl-cvs-commits
mailing list