From d8b8530d4b920618e188bdfbe8e17d0a150df692 Mon Sep 17 00:00:00 2001 From: Michael Stahl Date: Fri, 12 Apr 2013 21:21:17 +0200 Subject: [PATCH] remove guw.pl, whatever that is Change-Id: I3fb41fe649f68f82566e465ba4fa2de52e6201ac --- solenv/bin/guw.pl | 329 ---------------------------------------------- 1 file changed, 329 deletions(-) delete mode 100644 solenv/bin/guw.pl diff --git a/solenv/bin/guw.pl b/solenv/bin/guw.pl deleted file mode 100644 index 99bd4a17391f..000000000000 --- a/solenv/bin/guw.pl +++ /dev/null @@ -1,329 +0,0 @@ -: -eval 'exec perl -wS $0 ${1+"$@"}' - if 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 . -# -# Description: ?? - -#--------------------------------------------------------------------------- -# external modules -use Text::ParseWords; - -# global vars -@params = (); - -# set debug mode here: -#$debug="true"; -#$debug_light="true"; - -#--------------------------------------------------------------------------- -# Define known parameter exceptions -%knownpara = ( 'echo', [ '/TEST', 'QQQ', 'CCC', 'uno:' ], - 'cl', [ '-clr:', '-Z' ], - 'csc', [ '-target:' ], - 'lib', [ 'OUT:', 'EXTRACT:','out:', 'def:', 'machine:' ], - 'link', [ 'BASE:', 'DEBUG', 'DLL', 'LIBPATH', 'MACHINE:', - 'MAP', 'NODEFAULTLIB', 'OPT', 'PDB', 'RELEASE', - 'SUBSYSTEM', 'STACK', 'out:', 'map:', 'ENTRY:', - 'implib:', 'delayload:', 'def', 'COMMENT:' ], - 'regmerge', [ '/UCR' ], - 'rc', [ '-D' ], - 'rsc', [ '-DOOO_' ] ); - -#--------------------------------------------------------------------------- -# procedures - - -#---------------------------------------------------------- -# Function name: myCygpath -# Description: Transform POSIX path to DOS path -# Arguments: 1. Variable (string) with one token -# 2. optional - if set remove spaces and shorten to 8.3 -# representation. -# Return value: Reformatted String -#---------------------------------------------------------- -sub myCygpath { - my $posixpath = shift; - my $shortenpath = shift || ''; - - my $dospath; - - if ( $posixpath =~ / / and $shortenpath ) { - chomp( $dospath = qx{cygpath -d "$posixpath"} ); - # "cygpath -d" returns "" if the file doesn't exist. - if ($dospath eq "") { - $dospath = "."; - print(STDERR "Error: guw.pl: Path: $posixpath:\nhas a problem! Probably nonexistent filename with space.\n"); - if ( (defined $debug_light) or (defined $debug) ) { - die "exiting ...\n"; - } - } - } else { - if ( $posixpath =~ /^\// ) { - chomp( $dospath = qx{cygpath -w "$posixpath"} ); - } else { - $dospath = $posixpath; - $dospath =~ s/\//\\/g; - } - } - return $dospath; -} - -#---------------------------------------------------------- -# Function name: WinFormat -# Description: Format variables to Windows Format. -# Arguments: 1. Variable (string) with one token -# Return value: Reformatted String -#---------------------------------------------------------- -sub WinFormat { - my $variable = shift @_; - my( $d1, $d1_prefix, $d2 ); - - $variable =~ s/(\$\w+)/$1/eeg ; # expand the variables - $variable =~ s/(\$\w+)/$1/eeg ; # expand the variables twice! - - # Include paths or parameters with filenames - if ( $variable =~ /\A(-D[\w\.]*=)[\'\"]?((?:\/?[\w\.\-\+ ~]+)+\/?)[\'\"]?\Z/ ) { - # This regex evaluates -D=, sometimes with quotes or "/" at the end - # option -> $1, filename without quotes -> $2 - if ( defined $debug ) { print(STDERR "WinFormat:\ninclude (-D=) path:\n$variable\n"); } - $d1_prefix = $1; - $d1 = $2; - $d2 = myCygpath($2,1); - if ( $d2 ne "" ) { - $d2 =~ s/\\/\\\\/g ; - } - } elsif ( $variable =~ /\A(-?\w[\w\.]*=)[\'\"]?((?:\/?[\w\.\-\+ ~]+)+\/?)[\'\"]?\Z/ ) { - # This regex evaluates [-]X=, sometimes with quotes or "/" at the end - # option -> $1, filename without quotes -> $2 - if ( defined $debug ) { print(STDERR "WinFormat:\ninclude ([-]=) path:\n$variable\n"); } - $d1_prefix = $1; - $d1 = $2; - $d2 = myCygpath($2,1); - } elsif ( $variable =~ /\A(--\w[\w\.\-]*=)[\'\"]?((?:\/?[\w\.\-\+ ~]+)+\/?)[\'\"]?\Z/ ) { - # This regex evaluates --=, sometimes with quotes or "/" at the end - # option -> $1, filename without quotes -> $2 - if ( defined $debug ) { print(STDERR "WinFormat:\ninclude (--=) path:\n$variable\n"); } - $d1_prefix = $1; - $d1 = $2; - $d2 = myCygpath($2,1); - } elsif ( $variable =~ /\A(-\w[\w\.]*:)[\'\"]?((?:\/?[\w\.\-\+ ~]+)+\/?)[\'\"]?\Z/ ) { - # This regex evaluates -X:, sometimes with quotes or "/" at the end - # option -> $1, filename without quotes -> $2 - if ( defined $debug ) { print(STDERR "WinFormat:\nFound (-:):\n$variable\n"); } - $d1_prefix = $1; - $d1 = $2; - $d2 = myCygpath($2,1); - } elsif ( $variable =~ /\A(-\w+:)(.*)\Z/ ) { - # This regex evaluates -X:, and prevents translating of these. - # option -> $1, rest -> $2 - if ( defined $debug ) { print(STDERR "WinFormat:\nFound (-:):\n$variable\n"); } - $d1_prefix = $1; - $d1 = $2; - $d2 = myCygpath($2,1); - } elsif ( $variable =~ /\A(\w+:)[\'\"]?\/\/\/((?:\/?[\w\.\-\+ ~]+)+\/?)[\'\"]?\Z/ ) { - # See iz35982 for the reason for the special treatment of this switch. - # This regex evaluates :///, sometimes with quotes or "/" at the end - # option -> $1, filename without quotes -> $2 - if ( defined $debug ) { print(STDERR "WinFormat:\nFound (:///):\n$variable\n"); } - $d1_prefix = $1."///"; - $d1 = $2; - $d2 = myCygpath($2,1); - $d2 =~ s/\\/\//g ; - } elsif ( $variable =~ /\A(-\w)[\'\"]?((?:\/[\w\.\-\+ ~]+)+\/?)[\'\"]?\Z/ ) { - # This regex evaluates -X, sometimes with quotes or "/" at the end - # option -> $1, filename without quotes -> $2 - if ( defined $debug ) { print(STDERR "WinFormat:\ninclude (-X) path:\n$variable\n"); } - $d1_prefix = $1; - $d1 = $2; - $d2 = myCygpath($2,1); - } elsif ( $variable =~ /\A(-F[ARdemopr])[\'\"]?((?:\/[\w\.\-\+ ~]+)+\/?)[\'\"]?\Z/ ) { - # This regex evaluates -FX (MSVC switches for output naming), sometimes with quotes or "/" at the end - # option -> $1, filename without quotes -> $2 - if ( defined $debug ) { print(STDERR "WinFormat:\ncompiler naming (-FX) path:\n$variable\n"); } - $d1_prefix = $1; - $d1 = $2; - $d2 = myCygpath($2,1); - } else { - $d2 = ""; - } - if ( $d2 ne "" ) { - # Found a parameter - $d1 =~ s/\+/\\\+/ ; - $d1 =~ s/\./\\\./ ; - $variable =~ s/$d1/$d2/ ; - } else { - # Found no parameter, assume a path - $variable =~ s/:/;/g; - $variable =~ s/([;]|\A)(\w);/$1$2:/g; # get back the drives - - # Search for posix path ;entry; (The regex accepts valid paths with at least one /) - # and replace with DOS path, accept quotes. - # iz28717 Accept ',' as path seperator. - while ( $variable =~ /(?:[;,]|\A)[\'\"]?([\w\.\-\+ ~]*(?:\/[\w\.\-\+ ~]+)+\/?)[\'\"]?(?:[;,]|\Z)/ ) { - # Normal paths - $d1 = $1; - $d2 = myCygpath($d1); - if ( defined $debug ) { - print(STDERR "WinFormat:\nFull path:\n$variable\nTranslated part:$d2\n"); - } - $d1 =~ s/\+/\\\+/ ; - $variable =~ s/$d1/$d2/ ; - } - } - - # Sanity check for -X - if ( $variable =~ /-\w[\'\"]?(?:(?:\/[\w\.\-\+ ~]+)+)/ ) { - print(STDERR "Error: guw.pl: WinFormat: Not converted -X/... type switch in :$variable:.\n"); - if ( (defined $debug_light) or (defined $debug) ) { die "\nNot processed -X/...\n"; } - } - # Sanity check for [-]X(:|=) case - if ( $variable =~ /\A-?\w[\w\.]*[=:][\'\"]?(?:\/[\w\.\-\+ ~]+)+/ ) { - print(STDERR "Error: guw.pl: WinFormat: Not converted [-]X(=|:)/ type switch in :$variable:.\n"); - if ( (defined $debug_light) or (defined $debug) ) { die "\nNot processed [-]X(=|:)/...\n"; } - } - - if ( defined $debug ) { print(STDERR "WinFormat:\nresult:$variable\n");}; - return $variable; -} - -#---------------------------------------------------------- -# Function name: replace_cyg -# Description: Process all arguments and change them to Windows Format. -# Arguments: Reference to array with arguments -# Return value: - -#---------------------------------------------------------- -sub replace_cyg { - my $args = shift; - my( @cmd_file, @cmd_temp ); - my $atchars; - foreach my $para ( @$args ) - { - if ( $para =~ "^@" ) { - # it's a command file - if ( defined $debug ) { print(STDERR "----------------------------\n");}; - # Workaround, iz28717, keep number of @'s. - $para =~ s/(^\@+)//; - $atchars = $1; - $filename = $para; - if ( defined $debug ) { print(STDERR "filename = $filename \n");}; - # open this command file for reading - open(CMD, "$filename"); - while ( ) { - # Remove DOS lineendings. Bug in Cygwin / Perl? - $_ =~ s/\r//g; - # Remove lineendings and trailing spaces. ( Needed by &parse_line ) - $_ =~ s/\n$//g; - $_ =~ s/\s+$//g; - # Fill all tokens into array - @cmd_temp = &parse_line('\s+', 1, $_ ); - if ( $#cmd_temp > -1 ) { - push( @cmd_file, @cmd_temp); - } - } - close(CMD); - # reformat all tokens - replace_cyg(\@cmd_file); - if ( defined $debug ) { print(STDERR "Tokens processed:\n");}; - foreach $i (@cmd_file) { - if ( defined $debug ) { print(STDERR "!".$i."!\n");}; - } - # open this filename for writing (truncate) Textmode? - open(CMD, '>', $filename); - # write all tokens back into this file - print(CMD join(' ', @cmd_file)); - close(CMD); - # convert '@filename' to dos style - $para = WinFormat( $para ); - if ( defined $debug ) { print(STDERR "----------------------------\n");}; - if ( (defined $debug_light) or (defined $debug) ) { print(STDERR "\nParameter in File:".join(' ', @cmd_file).":\n");} - $para = $atchars.$para; - } else { - # it's just a parameter - if ( defined $debug ) { print(STDERR "\nParameter:---${para}---\n");}; - # If $tmp1 is empty then $para is a parameter. - my $is_no_para = 1; - # remove .exe and convert to lower case - $shortcommand = lc $command ; - $shortcommand =~ s/\.exe$//; - $shortcommand =~ /([^\/]+$)/; - $shortcommand = $1; - foreach $i (@{$knownpara{$shortcommand}}) { - if( $para =~ /$i/ ) { - $is_no_para = 0; - if ( defined $debug ) { print(STDERR "Is parameter exception for ${shortcommand}: ${para}:\n" );}; - last; - } - } - if( $is_no_para ) { - $para = WinFormat($para); - } - if ( defined $debug ) { print(STDERR "Converted line:${para}:\n" );}; - } # else - } # foreach loop -} - -#---------------------------------------------------------- -# Function name: replace_cyg_env -# Description: Process selected environment variables and change -# them to Windows Format. -# Arguments: - -# Return value: - -#---------------------------------------------------------- -sub replace_cyg_env { - @affected_vars = ( - 'SOLAR_VERSION', - 'SOLARVERSION', - 'SOLARVER', - 'SRC_ROOT', - 'SOLARENV', - 'CLASSPATH', - 'JAVA_HOME' - ); - foreach my $one_var ( @affected_vars ) - { - my $this_var = $ENV{ $one_var }; - if ( defined $this_var ) - { - if ( defined $debug ) { print(STDERR "ENV $one_var before: ".$ENV{ $one_var}."\n" );}; - $ENV{ $one_var } = WinFormat( $this_var ); - if ( defined $debug ) { print(STDERR "ENV $one_var after : ".$ENV{ $one_var}."\n" );}; - } - } - -} -#--------------------------------------------------------------------------- -# main -@params = @ARGV; - -$command = shift(@params); -while ( $command =~ /^-/ ) -{ - if ( $command eq "-env" ) - { - replace_cyg_env; - } - - $command = shift(@params); -} -if ( (defined $debug_light) or (defined $debug) ) { print( STDERR "Command: $command\n" ); } - -replace_cyg(\@params); -if ( (defined $debug_light) or (defined $debug) ) { print(STDERR "\n---------------------\nExecute: $command @params\n----------------\n");}; -exec( "$command", @params) or die( "\nError: guw.pl: executing $command failed!\n" ); -