diff --git a/solenv/bin/striplanguagetags.sh b/bin/striplanguagetags.sh similarity index 100% rename from solenv/bin/striplanguagetags.sh rename to bin/striplanguagetags.sh diff --git a/solenv/bin/_mkout b/solenv/bin/_mkout deleted file mode 100755 index 3737310ba9a9..000000000000 --- a/solenv/bin/_mkout +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/sh -e -# -# 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 . -# -if [ -z "$1" ]; then - exit 1; -fi -mkdir -p "$1"/bin -mkdir -p "$1"/inc -mkdir -p "$1"/lib -mkdir -p "$1"/misc -mkdir -p "$1"/obj -mkdir -p "$1"/slb -mkdir -p "$1"/slo diff --git a/solenv/bin/addsym-mingw.sh b/solenv/bin/addsym-mingw.sh deleted file mode 100755 index bdbba7aea893..000000000000 --- a/solenv/bin/addsym-mingw.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/bash - -# -# 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 . -# - -# This script is needed in the process of generating exported -# symbols list out of map files on MinGW -# The magic generating the regular expression from the temporary -# mapfile containing only star and question mark symbols -# -# The script has to be called as follows: -# nm -gx .o | addsym-mingw.sh -# See tg_shl.mk for an example of how to use the script -# -# Replace every * with .* and every ? with . to get awk expression -# Remove whitespaces and comments in expression -# Put ^ at the beginning of every expression -# Put $ at the beginning of every expression -# Connect them all on one line, separated by | -# Remove | at the end of this regular expression because the last end -# of line was also replaced by | - -if [ -s $1 ] -then -cat $1 | sed 's#*#.*#g -s#?#.#g -s#;.*##g -s# ##g -s# ##g -s#^#^# -s#$#$#' | tr '\n' '|' | sed "s#|\$##" >$2 - -# Please note that the awk expression expects to get the output of 'nm -gP'! -awk -v SYMBOLSREGEXP="`cat $2`" ' -match (substr ($1,2) ,SYMBOLSREGEXP) > 0 { print substr ($1,2) ";" }' -fi - diff --git a/solenv/bin/chrel.sed b/solenv/bin/chrel.sed deleted file mode 100644 index 19455b00c252..000000000000 --- a/solenv/bin/chrel.sed +++ /dev/null @@ -1,2 +0,0 @@ -s/\(\.\.\/\)\{2,4\}/..\//g -s/\(\.\.\\\)\{2,4\}/..\\/g diff --git a/solenv/bin/cleandiff.pl b/solenv/bin/cleandiff.pl deleted file mode 100644 index 85e8f0f529e2..000000000000 --- a/solenv/bin/cleandiff.pl +++ /dev/null @@ -1,36 +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 . -# - -while (<>) -{ - next if /^Only in/ ; - next if /^diff -rc / ; - next if /^diff -ru / ; - next if /^Common sub/ ; - - if ( /^---/ || /^\*\*\*/ || /^\+\+\+/ ) - { - s/\\/\//g; - } - - print ; -} - diff --git a/solenv/bin/concat-deps.pl b/solenv/bin/concat-deps.pl deleted file mode 100755 index 97dfc28e8d1c..000000000000 --- a/solenv/bin/concat-deps.pl +++ /dev/null @@ -1,89 +0,0 @@ -#! /usr/bin/env perl -# -# 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/. -# - -# reads a list of dependency files from a file, opens and -# concatenates them, while eliding duplicate nop rules. -use File::Spec; - -sub read_depfiles($) -{ - my $name = shift; - my $depfh; - my @files; - open ($depfh, $name) || die "Can't open list of dependencies: $name: $!"; - while (<$depfh>) { - push @files, split(/\s+/, $_); - } - close ($depfh); - -# print STDERR "dep files: " . join ("'", @files) . "\n"; - return @files; -} - -my @depfiles = read_depfiles (shift @ARGV); - -my %rules; -print "# concatenated, reduced dependencies generated by solenv/bin/concat-deps.pl\n"; -print "# generated with \$(SRCDIR) = $ENV{SRCDIR}\n"; -print "# generated with \$(OUTDIR) = $ENV{OUTDIR}\n"; - -my $boost_path = $ENV{OUTDIR} . '/inc/boost/'; - -for my $fname (@depfiles) { - my $fileh; - - next if ($fname eq ''); - open ($fileh, $fname) || die "Can't open $fname: $!\n"; - - my $last = ''; - my $rule_count = 0; - my $with_boost_count = 0; - while (<$fileh>) { - # canonicalise path - m/^(\s*)([^\s\n:]*)(.*\n?)$/; - my $pre = $1; - my $path = $2; - my $post = $3; - $rule_count++ if ($post =~ m/:/); - if (length($path) > 0 && index($path,$ENV{SRCDIR}) == 0) { - $path = File::Spec->rel2abs($2); - if (index($path,$ENV{OUTDIR}) == 0) { - my $solverpath = substr($path, length($ENV{OUTDIR})); - if ($solverpath =~ m|/inc/boost/|) { - if ($with_boost_count != $rule_count || !($post =~ m/\\/)) { - $path = '$(OUTDIR)/inc/boost/deliver.log'; - $with_boost_count = $rule_count; - } else { # elide it - $path = ''; $pre = ''; $post = ''; - } - } else { - $path = "\$(OUTDIR)" . $solverpath; - } - } else { - $path = "\$(SRCDIR)" . substr($path, length($ENV{SRCDIR})); - } - } - $line = "$pre$path$post"; - - if ($line eq "\n") { - if ($last =~ /^(.*):\s*$/) { - if (defined $rules{$1}) { - $last = ''; - next; - } - $rules{$1} = 1; - } - } - print $last; - $last = $line; - } - print "$last\n"; # in case of missing newline - - close ($fileh); -} diff --git a/solenv/bin/convertlinks.pl b/solenv/bin/convertlinks.pl deleted file mode 100644 index 96a45286df05..000000000000 --- a/solenv/bin/convertlinks.pl +++ /dev/null @@ -1,138 +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 . -# - -# -# convertlinks - a perl script to make hrefs to -# http://api.openoffice.org/common/ref relativ. -# - -use File::Find; - -# for the convenience of &wanted calls, including -eval statements: -use vars qw/*name *dir/; -*name = *File::Find::name; -*dir = *File::Find::dir; -@files = (); - -if($#ARGV == 1) -{ - $pattern = "www"; -} else -{ - $pattern = $ARGV[2]; -} - -find(\&wanted, "$ARGV[0]"); - -$return = 1; - -foreach $i (@files) -{ - next if( $i->{directory} =~ /.*common((\/|\\)ref(.*))/ || - $i->{directory} =~ /.*cpp((\/|\\)ref(.*))/ || - $i->{directory} =~ /.*java((\/|\\)ref(.*))/ ); - - open ( FILEIN, $i->{filename} ) || die "could not open $i->{filename} for reading"; - - $relPath = "."; - $relToSource = "."; - if( $i->{directory} =~ /.*$pattern((\/|\\)(.*))/ ) - { - $relPath = $3; - $relPath =~ s#\w+#\.\.#go; - if($pattern eq "examples") - { - $relPath = "\.\.\/$relPath"; - } - if($pattern eq "www") - { - $relToSource = "\.\.\/$relPath"; - } else - { - $relToSource = $relPath; - } - } else - { - if($pattern eq "examples") - { - $relPath = "\.\."; - } - if($pattern eq "www") - { - $relToSource = "\.\."; - } else - { - $relToSource = $relPath; - } - } - - @lines = ; - close( FILEIN ); - open( FILEOUT, ">$i->{filename}.tmp" ) || die "could not open $i->{filename} for writing"; - foreach $_ (@lines) - { - # change the refenreces to the index in dependency of UDK or ODK - if("$ARGV[1]" eq "udk_" | "$ARGV[1]" eq "odk_") - { - s#((\")(index.html\"))#$2$ARGV[1]$3#go; - s#((\/|\")(faq.html\"))#$2$ARGV[1]$3#go; - s#((\/|\")(bylaws.html\"))#$2$ARGV[1]$3#go; - } - - s#((http:\/\/api\.openoffice\.org\/)(common\/ref[^\"]+))#$relPath\/$3#go; - s#((http:\/\/api\.openoffice\.org\/unbranded-source\/)(.*)(examples\/examples.html))#$relToSource\/$4#go; - - if($pattern eq "examples") - { - # change the links for the C++/Java examples in the ODK - s#((http:\/\/api\.openoffice\.org\/source\/browse\/api\/odk\/examples\/)(java\/*))#$3#go; - s#((http:\/\/api\.openoffice\.org\/source\/browse\/api\/odk\/examples\/)(cpp\/*))#$3#go; - s#((http:\/\/api\.openoffice\.org\/source\/browse\/api\/odk\/examples\/)(basic\/*))#$3#go; - s#((http:\/\/api\.openoffice\.org\/source\/browse\/api\/odk\/examples\/)(OLE\/*))#$3#go; - - # change link api specific stuff - s#((http:\/\/api\.openoffice\.org\/)(design_guide.html))#$relPath\/www\/$3#go; - s#(http:\/\/api\.openoffice\.org\/index.html)#$relPath\/www\/odk_index.html#go; - - # change the links for the C++ examples in the UDK - s#((http:\/\/udk\.openoffice\.org\/source\/browse\/udk\/product\/examples\/)(cpp\/*))#$3#go; - - # change the links to udk.openoffice.org to relativ links - s#(http:\/\/udk\.openoffice\.org\/index.html)#$relPath\/www\/udk_index.html#go; - s#((http:\/\/udk\.openoffice\.org)(\/*))#$relPath\/www$3#go; - - # change the link to tutorial - s#((http:\/\/api\.openoffice\.org\/)(basic\/man\/tutorial\/tutorial.pdf))#$relPath\/www\/$3#go; - } - print FILEOUT $_; - } - close FILEOUT; - chmod 0666, $i->{filename}; - rename "$i->{filename}.tmp", $i->{filename} || die "could not rename $i->{filename}.tmp to $i->{filename}"; - $return = 0; -} - -exit $return; - -sub wanted { - %file = ( - directory => $dir, - filename => $name - ); - push @files, {%file} if /^.*\.html\z/s; -} diff --git a/solenv/bin/gen_userfeedback_VCL_names.pl b/solenv/bin/gen_userfeedback_VCL_names.pl deleted file mode 100644 index 002fd50595c2..000000000000 --- a/solenv/bin/gen_userfeedback_VCL_names.pl +++ /dev/null @@ -1,186 +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 . -# -# -# pushids - push HID.LST and *.win files for userexperience feedback -# - -use lib ("$ENV{SOLARENV}/bin/modules", "$ENV{COMMON_ENV_TOOLS}/modules"); - -use Carp; - -sub parse_info($$); - -if ( @ARGV != 3 ) -{ - print "usage: $ARGV[0] \n"; - print "example: $ARGV[0] ./hid.lst global/win common/misc/UserFeedbackNames.csv\n\n"; - die "invalid params"; -} - -my ($hid, $winpath, $outfile) = @ARGV; - -my @names; - -open HID, "<$hid" or die "can't open file $filename $! $^E"; -for () { - chop; - my ($longname, $ID) = split " +"; - next if ( ! $ID ); - $upperlongname = $longname; - $upperlongname =~ tr/a-z/A-Z/; - $undeclared_hids{$upperlongname} = $longname; - - if ( exists $hids{$upperlongname} && ( $hids{$upperlongname} != $ID ) ) - { - print STDERR "warn: unclear definition of longname: $longname = $hids{$upperlongname} or $ID\n"; - } - $hids{$upperlongname} = $ID; - - if ( exists $revhids{ $ID } && ( $revhids{ $ID } ne $upperlongname ) ) - { - print STDERR "warn: two longnames have the same ID: $longname and $revhids{$ID} share ID $ID\n"; - } - $revhids{$ID} = $upperlongname; -} - -close HID; - -undef @revhids; - -#Add Active -$hids{"ACTIVE"} = 0; - -my %dialogs = (); - -foreach ( glob("$winpath/*win") ) { - $filename = $_; - open WIN, "< $filename" or die "can't open file $filename $! $^E"; - my $parentinfo = ""; - my @dialog = (); - my $parentshortname = ""; - - for ( ) { - chop; - - s/^ +//; - s/ +/ /g; - - next if /^ *'/; - next if /^ *$/; - - my $ID = ""; - my $iteminfo; - my ($shortname, $longname) = split " +"; - - $shortname = "" if ( !$shortname ); - $longname = "" if ( !$longname ); - - # fake a correct entry if only *active is given and overwrite the attempt to declare it differently - if ( $shortname =~ /\*active/i ) - { - $longname = "Active"; - } - - -# find UNO Names - if ( $longname =~ /^(.uno:|http|private:factory|service:|macro:|.HelpId:)/i || $longname =~ s/^sym://i ) - { - $ID = $longname; - $longname = ""; - } - else - { - my $upperlongname = $longname; - $upperlongname =~ tr/a-z/A-Z/; - if ( $shortname !~ /^[\+\*]/ && !exists $hids{$upperlongname} ) - { - print STDERR "warn: Longname not in hid.lst: $filename $longname\n"; - } - if ( exists $hids{$upperlongname} ) - { - $ID = $hids{$upperlongname}; - } - delete $undeclared_hids{$upperlongname}; - } - - $iteminfo = "$shortname $longname $ID"; - $iteminfo =~ s/^\*//; - $iteminfo =~ s/^\+//; - -# find start of deklaration - if ( $shortname =~ s/^\+// ) - { - # copy existing dialog - if ( exists $dialogs{ $longname } ) - { - my @old = @{$dialogs{ $longname }}; - my ($oldshort, $oldlong, $oldID ) = split ( " ", shift @old ); - $iteminfo = "$shortname $oldlong $oldID"; - - $parentinfo = $iteminfo; - $parentshortname = $shortname; - $dialogs{ $parentshortname } = \@dialog; - @dialog = (); # break the link - push ( @{$dialogs{ $parentshortname }}, $iteminfo ); - push @names, " $parentinfo"; - - for ( @old ) - { - push @names, "$parentinfo $_"; - } - } - else - { # fake new dialog instead - $shortname = "*".$shortname; - } - } - if ( $shortname =~ s/^\*// ) - { - $parentinfo = $iteminfo; - $parentshortname = $shortname; - $dialogs{ $parentshortname } = \@dialog; - @dialog = (); # break the link - push ( @{$dialogs{ $parentshortname }}, $iteminfo ); - push @names, " $parentinfo"; - } - else - { - push ( @{$dialogs{ $parentshortname }}, $iteminfo ); - push @names, "$parentinfo $iteminfo"; - } - - } - close WIN; -} - -for ( keys %undeclared_hids ) { - $iteminfo = "$undeclared_hids{$_} $undeclared_hids{$_} $hids{$_}"; - push @names, " $iteminfo"; -} - -#---------------------------------------------------------------------------- -# write to files - -open HIDS, ">$outfile" or die "can't open file $filename $! $^E"; -print HIDS join "\n", @names; -print HIDS "\n"; -close HIDS; - diff --git a/solenv/bin/genmap b/solenv/bin/genmap deleted file mode 100755 index 78d67bf6f06f..000000000000 --- a/solenv/bin/genmap +++ /dev/null @@ -1 +0,0 @@ -less $2 diff --git a/solenv/bin/getcsym.awk b/solenv/bin/getcsym.awk deleted file mode 100644 index d167e3c587df..000000000000 --- a/solenv/bin/getcsym.awk +++ /dev/null @@ -1,25 +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 . -# - -BEGIN { global_found = "false" } -/[ \t]*#/ { sub("#.*", "") } -/[ \t]*local:/ { global_found = "false" } -/[ \t]*}/ { global_found = "false" } -/^[ \t]*$/ { next } -global_found == "true" { print $0 } -/[ \t]*global:/ { global_found = "true" } diff --git a/solenv/bin/langwrap b/solenv/bin/langwrap deleted file mode 100755 index 09113e869da4..000000000000 --- a/solenv/bin/langwrap +++ /dev/null @@ -1,142 +0,0 @@ -#!/usr/bin/perl -w -# -# 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 . -# -# langwrap - language wrapper for building resources -# - -use Getopt::Std; - -###### globals ###### - -$is_debug = 0; -$nfield = 0; -@LoL = (); -@command = (); - -###### main ###### - -# Version -print "langwrap -- Version: 1.2\n"; - -# Options -&check_options(); - -# parse command file -&parse_commandfile($opt_c); - -# create list with command lines -&create_commands(); - -# finally execute commands -foreach $cmd (@command) { - if ($is_debug) { - print $cmd . "\n"; - } else { - system($cmd); - $res = $? >> 8; - if ($res) { - print "langwrap: command execution failed with exitcode $res.\n"; - exit($res); - } - } -} - -exit(0); - -###### routines ###### - -### parse_commandfile() -sub parse_commandfile { - my($file) = shift; - my(@field); - - open(COMMAND, "<$file") or die "canīt open $file"; - - while () { - $line = $_; - chomp($line); - if ( ($line =~ //) || ($line =~ /^\r/) || ($line =~ /^#/) ) { - next; - } - - @field = split " ", $line; - push @LoL, [@field]; - if (!$nfield) { - $nfield = $#field + 1; - } else { - if ( $nfield != ($#field + 1) ) { - print "langwrap: error in : every row must "; - print "have the same # of columns.\n"; - exit(3); - } - } - } - - close(COMMAND); -} - -### create_command() -sub create_commands() { - my($cmd, $cmdline, $arg_string, $ntempl); - - $cmd = shift @ARGV; - $arg_string = join(" ", @ARGV); - # just count the number of templates - $ntempl = ($arg_string =~ s/@\d+@/$&/eg); - if ( $ntempl >= $nfield ) { - print "lnagwrap: # of templates > # of fields in .\n"; - exit(4); - } - - # create command lines - for $i (0..$#LoL) { - $cmdline = $arg_string; - $cmdline =~ s/@(\d+)@/$LoL[$i][$1]/eg; - push @command, $cmd . " " . $cmdline; - } -} - -### check_options() -sub check_options { - - if ( !getopts('c:') ) { - &usage(); - } - - if ( !$opt_c ) { - &usage(); - } - - if ( ! -r $opt_c ) { - print "langwrap: $opt_c is not a readable file.\n"; - exit(2); - } - - if ( $#ARGV < 1 ) { - print "langwrap: empty .\n"; - &usage(); - } -} - -### usage() -sub usage { - print "Usage: langwrap -c cmdfile tool \n"; - print " is of form: ...\@1\@ .... \@2\@...\n"; - print "with \@\@ template #n\n"; - exit(1); -} diff --git a/solenv/bin/leconvert.pl b/solenv/bin/leconvert.pl deleted file mode 100644 index 04333058c40d..000000000000 --- a/solenv/bin/leconvert.pl +++ /dev/null @@ -1,82 +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 . -# -my $target_format = ""; -my @filelist; -#my $debug=1; -my $debug=0; - -parameter_parse(@ARGV); -print "@filelist\n" if ( $debug ); -foreach my $onefile ( @filelist ) { - convert_file( $onefile ); -} - - -sub convert_file -{ - my $filename = shift; - if ( $target_format eq "dos" ) { - $lineend = "\r\n"; - } else { - $lineend = "\n"; - } - open INFILE, "$filename"or die "ERROR: Couldn\'t open $filename for reading.\n"; - my @lines = ; - close INFILE; - - foreach my $oneline ( @lines ) { - $oneline =~ s/\r*\n*$/$lineend/; - } - - open OUTFILE, ">$filename" or die "ERROR: Couldn\'t open $filename for writing.\n"; - syswrite OUTFILE, join "", @lines; - close OUTFILE; - -} - -sub parameter_parse -{ - if ( $target_format eq "" ) { - $target_format = shift ; - usage() if ( $target_format ne "unix" && $target_format ne "dos" ); - usage() if ( $#_ == -1 ); - } - foreach my $param ( @_ ) { - if ( $param =~ "^@" ) { - my $filename = $param; - $filename =~ s/^@//; - open CMDFILE, "$filename" or die "ERROR: Couldn\'t open $filename for reading.\n"; - my @filelist = ; - close CMDFILE; - parameter_parse( @filelist ); - } else { - push @filelist, $param; - } - } -} - -sub usage -{ - print "Convert text files to the desired lineend convention:\n"; - print "$0 [more files/lists]\n"; - exit 1; -} - diff --git a/solenv/bin/licinserter.pl b/solenv/bin/licinserter.pl deleted file mode 100644 index f95a39641f26..000000000000 --- a/solenv/bin/licinserter.pl +++ /dev/null @@ -1,129 +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 . -# - -# -# licinserter.pl - create license entries in extension description.xml -# - -use File::Basename; - -my $langswitch; - -sub usage() -{ - print STDERR "\nCreate extension descriptions with license-text entries\n"; - print STDERR "matching the language activated.\n"; - print STDERR "\nUsage:\n"; - print STDERR "\t$0 [--langsplit] infile \"naming pattern\" destination\n\n"; - print STDERR "\nExample:\n\n"; - print STDERR "$0 description.xml dir/license_xxx.txt outdir/description.xml\n\n"; - print STDERR "Creates \"someoutdir/description.xml\" with the license file entries like\n\"dir/license_en.US.txt\" "; - print STDERR "for all languages found in the WITH_LANG environment\nvariable\n\n\n"; - print STDERR "Example2:\n\n"; - print STDERR "$0 --langsplit description.xml dir/license_xxx.txt someoutdir\n\n"; - print STDERR "Creates \"someoutdir//description.xml\" with one license file entry\n\"somedir/license_.txt\" "; - print STDERR "for all languages found in the WITH_LANG\nenvironment variable.\n\nNOTE: when using --langsplit \"destination\" needs to be a directory\n"; -} - -if ( $ARGV[0] =~ /^-/ ) { - $langswitch = shift @ARGV; - if ( $langswitch ne "--langsplit" ) { - usage(); - exit 1; - } - if ( ! -d $ARGV[2] ) { - print STDERR "\nERROR - $ARGV[2] is not directory\n"; - usage(); - exit 2; - } -} - -if ( $#ARGV != 2 ) { - print "zzz\n"; - usage(); - exit 1; -} - -open INFILE,$ARGV[0] or die "oops - no such file $ARGV[0]!\n"; - -my @inlines = ; -close INFILE; - -chomp @inlines; - -# Empty or unset WITH_LANG environment variable is set to default en-US. -# When WITH_LANG is set but does not contain en-US then that is prepended. -my $WithLang = $ENV{WITH_LANG}; -if ( ! defined $WithLang || $WithLang eq "") -{ - $WithLang = "en-US"; -} -elsif ($WithLang !~ /\ben-US\b/) -{ - $WithLang = "en-US " . $WithLang; -} - - -if ( $langswitch eq "" ) { - my @outlines; - foreach my $i (@inlines) { - if ( $i =~ /license-text/ ) { - my $ii; - my $name; - foreach my $code ( split(/\s+/,$WithLang) ) { - $ii = $i; - $name = $ARGV[1]; - $name =~ s/xxx/$code/; - $ii =~ s/isocode/$code/g; - $ii =~ s?licensefile?$name?g; - push @outlines, "$ii\n"; - } - } else { - push @outlines, "$i\n"; - } - } - open OUTFILE, ">$ARGV[2]" or die "ooops - can't open $ARGV[2] for writing\n"; - print OUTFILE @outlines; - close OUTFILE or die "ooops - can't write to $ARGV[2]\n"; -} else { - my @outlines; - my $outname = basename($ARGV[0],()); - foreach my $code ( split(/\s+/,$ENV{WITH_LANG}) ) { - @outlines=(); - foreach my $i (@inlines) { - if ( $i =~ /license-text/ ) { - my $name; - my $ii = $i; - $name = $ARGV[1]; - $name =~ s/xxx/$code/; - $ii =~ s/isocode/$code/g; - $ii =~ s?licensefile?$name?g; - push @outlines, "$ii\n"; - } else { - push @outlines, "$i\n"; - } - } - mkdir "$ARGV[2]/$code"; - open OUTFILE, ">$ARGV[2]/$code/$outname" or die "ooops - can't open $ARGV[2]/$code/$outname for writing\n"; - print OUTFILE @outlines; - close OUTFILE or die "ooops - can't write to $ARGV[2]/$code/$outname\n"; - } -} diff --git a/solenv/bin/make_ext_update_info.pl b/solenv/bin/make_ext_update_info.pl deleted file mode 100644 index f8a93255f06a..000000000000 --- a/solenv/bin/make_ext_update_info.pl +++ /dev/null @@ -1,604 +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 . -# - -#here the definition for d would be written into dependencies. The reason is that when the event handler -#for the element is called, we can only find out the namespace but not the prefix. So we cannot -#distinguish if the namespace is used because the element was prefixed or because it uses the default -#namespace. -use warnings; -use strict; - -use XML::Parser; -use Getopt::Long; -use Carp; - -sub getUpdateInfoFileName($); -sub writeUpdateInformationData($); -sub findAttribute($$); -sub getNotDefPrefs($$$); -sub collectPrefixes($$$$); -sub determineNsDefinitions($$$); -sub determineNsDefinitionForItem($$$); - -my $inDescription = 0; -my $inDependencies = 0; -my $inIdentifier = 0; -my $inVersion = 0; -my $descNS = "http://openoffice.org/extensions/description/2006"; - my $indent; -my $identifier; -my $version; - -#contains prefixes and the corresponding namespaces which are used in the -#element and all children of the description.xml -my @usedNsInDependencies; - -#Maps prefix to namespaces which are valid in . That is, they are -#either defined in or in the hirarchy above -my %validPrefsInDep; -#Contains the prefixes which are defined in -my @newPrefsInDep; -#Contains the prefixes/namespaces which need to be defined in but which are currently -#not. For example a prefix is defined in the parent and is used in a child of -my %notDefInDep; - -#prefix used in start and end element -my $prefix; - -#The default namespace valid in -my $defNsInDep; -#The prefix which we use for the default namespace used in -my $generatedPrefix; - -my $helptext = -"make_ext_update_info.pl produces an update information file for an extension. ". -"It will use a dummy URL as URL for the extension update unless a URL has been ". -"provided with the --update_url option. The name of the update ". -"information file, which must be provided with the --out switch, should be formed ". -"according to this scheme: \n\n". -"extension_identifier.update.xml\n\n". -"extension_identifier should correspond to the extension identifier. In some cases ". -"this may not be possible because the identifier may contain characters which are not ". -"allowd in file names.\n\n". -"usage:\n". -"perl make_ext_update_info.pl [--help][--update_url url] --out update_information_file description.xml \n\n". -"Options: \n". -"--help - prints the help message and exits \n". -"--out file - the update information file to be written including the path \n". -"--update-url url - inserts the url under the element. It may be necessary to enclose the urls in quotes in case they contain characters such as \"?\". ". -"It can be used multiple times\n\n"; - -#handling of arguments -my $help = 0; -my $out; -my @update_urls; -if (!GetOptions('help|?' => \$help, - 'out=s' => \$out, - 'update-url=s'=> \@update_urls)) -{ - print $helptext; - exit -1; -} -my $cArgs = scalar @ARGV; -die "You need to provide a description.xml\n\n$helptext" if $cArgs ==0; -die "You need to provide the name of the update information file ". - "with the --out switch.\n" unless ($out); -die "Too many arguments. \n\n$helptext" if $cArgs > 1; -print $helptext if $help; - - -#open the update information file for writing -my $FH; -open $FH, "> $out" or die $!; - -#write the xml header and root element -print $FH '', "\n"; -print $FH '', "\n"; - -#obtain from description.xml the data for the update information -writeUpdateInformationData($ARGV[0]); -#We will die if there is no or in the description.xml -die "Error: The description.xml does not contain a element.\n" unless $identifier; -die "Error: The description.xml does not contain a element. \n" unless $version; - -#write the write the update-download element and the children. -#the indention of corresponds to that of -print $FH ' 'x$indent, '', "\n"; -#check if update-urls have been provided through --update-url option -if (scalar @update_urls) -{ - my $urlIndent = $indent > 8 ? 8 : 2 * $indent; - #use provided urls - for (@update_urls) - { - print $FH ' 'x$urlIndent, '', "\n"; - } -} -else -{ - #use dummy update url - print $FH ' 'x8, '', "\n"; -} -print $FH ' 'x$indent, '', "\n"; - -print $FH '', "\n"; -close $FH; - -exit 0; - - - -sub start_handler -{ - my $parser = shift; - my $name = shift; - - if ($name eq "description" - && $descNS eq $parser->namespace($name)) - { - $inDescription = 1; - } - elsif ($inDescription - && $name eq "version" - && $descNS eq $parser->namespace($name)) - { - $inVersion = 1; - $version = 1; - $indent = $parser->current_column(); - print $FH " "x$indent, $parser->original_string(); - } - elsif ($inDescription - && $name eq "identifier" - && $descNS eq $parser->namespace($name)) - { - $inIdentifier = 1; - $identifier = 1; - print $FH " "x$parser->current_column(), $parser->original_string(); - } - elsif ($inDescription - && $name eq "dependencies" - && $descNS eq $parser->namespace($name)) - { - $inDependencies = 1; - my $dep = $parser->original_string(); - #add the additional namespace definitions, which we have discovered during the first - #parsing - #cut of the closing > or /> from the start element, so we can append the namespace definitions - $dep =~ /(\s*<.*) ((\s*\/>)|(\s*>))/x; - my $dep1 = $1; - $dep1.= " xmlns:".$_.'="'.$notDefInDep{$_}.'"' for (keys %notDefInDep); - $dep1.= $2; - print $FH " "x$parser->current_column(), $dep1; - } - elsif ($inDependencies) - { - #$prefix is global because we need to use it in the end element as well. - $prefix = ""; - my $fullString; - my $orig = $parser->original_string(); - #Split up the string so we can insert the prefix for the element. - # - # - $orig=~/(\s*<)(.*?)\s/x; - #in $2 is the element name, look for the prefix - if ($2 !~/(.*?):/ && $parser->namespace($name)) { - #no prefix, that is element uses default namespace. - #Now check if the default namespace in is the same as the one in this - #element. If not, then the default ns was defined "after" . Because all - #children of are copied into the update information, so will this default - #namespace definition. Hence this element will have the same default namespace in the - #update information. - my $defNsDep = $validPrefsInDep{"#default"}; - #we must have #default, see the if statement above - my $defNsCur = $parser->expand_ns_prefix("#default"); - - if ($defNsDep eq $defNsCur) { - #Determine if there is in a prefix defined (only valid there and need not - #directly defined in this element). If there is no prefix defined then we will - #add a new definition to . - for (keys %validPrefsInDep) { - if (($validPrefsInDep{$_} eq $defNsDep) && $_ ne "#default") { - $prefix = $_; last; - } - } - if (! $prefix) { - #If there was no prefix, we will add new prefix definition to - #Which prefix this is has been determined during the first parsing. - for (keys %notDefInDep) { - if (($notDefInDep{$_} eq $defNsCur) && $_ ne "#default") { - $prefix = $_; last; - } - } - } - #die if we have no prefix - confess "No prefix defined for default namespace " unless $prefix; - #get the full part after < - $orig=~/(\s*<)(.*)/x; - $fullString= $1.$prefix.":".$2; - } - - } - $fullString = $orig unless $fullString; - - # We record anything within . - print $FH $fullString; - } -} - -sub end_handler -{ - my $parser = shift; - my $name = shift; - - if ($name eq "description" - && $descNS eq $parser->namespace($name)) - { - $inDescription = 0; - } - elsif ($inDescription - && $name eq "version" - && $descNS eq $parser->namespace($name)) - { - $inVersion = 0; - print $FH $parser->original_string(), "\n"; - } - elsif ($inDescription - && $name eq "identifier" - && $descNS eq $parser->namespace($name)) - { - $inIdentifier = 0; - print $FH $parser->original_string(), "\n"; - } - elsif($inDescription - && $name eq "dependencies" - && $descNS eq $parser->namespace($name)) - { - $inDependencies = 0; - print $FH $parser->original_string(), "\n"; - } - elsif ($inDependencies) - { - my $orig = $parser->original_string(); - #$orig is empty if we have tags like this: - if ($orig && $prefix) { - $orig=~/(\s*<\/)(.*)/x; - $orig= $1.$prefix.":".$2; - } - print $FH $orig; - } -} - -#We write the complete content between start and end tags of -# , , -sub default_handler -{ - my $parser = shift; - my $name = shift; - if ($inIdentifier || $inVersion) { - print $FH $parser->original_string(); - } elsif ($inDependencies) { - print $FH $parser->original_string(); - } - -} # End of default_handler - -#sax handler used for the first parsing to recognize the used prefixes in and its -#children and to find out if we need to define a new prefix for the current default namespace. -sub start_handler_infos -{ - my $parser = shift; - my $name = shift; - if ($name eq "description" - && $descNS eq $parser->namespace($name)) { - $inDescription = 1; - } - elsif ($inDescription - && $name eq "dependencies" - && $descNS eq $parser->namespace($name)) { - $inDependencies = 1; - #build the map of prefix/namespace which are valid in - my @cur = $parser->current_ns_prefixes(); - for (@cur) { - $validPrefsInDep{$_} = $parser->expand_ns_prefix($_); - } - #remember the prefixes defined in - @newPrefsInDep = $parser->new_ns_prefixes(); - - collectPrefixes($parser, $name, \@_, \@usedNsInDependencies); - return if $generatedPrefix; - - #determine if need to create a new prefix for the current element if it uses a default ns. - #Split up the string so we can see if there is a prefix used - # - # - my $orig = $parser->original_string(); - $orig=~/(\s*<)(.*?)\s/x; - #in $2 is the element name, look for the prefix - if ($2 !~/(.*?):/ && $parser->namespace($name)) { - #no prefix, that is element uses default namespace. - #Now check if the default namespace in is the same as the one in this - #element. If not, then the default ns was defined "after" . Because all - #children of are copied into the update information, so will this default - #namespace definition. Hence this element will have the same default namespace in the - #update information. - my $defNsDep = $validPrefsInDep{"#default"}; - #we must have #default, see the if statement above - my $defNsCur = $parser->expand_ns_prefix("#default"); - - if ($defNsDep eq $defNsCur) { - #Determine if there is in a prefix defined (only valid there and need not - #directly defined in this element). If there is no prefix defined then we will - #add a new definition to . - for (keys %validPrefsInDep) { - if (($validPrefsInDep{$_} eq $defNsDep) && $_ ne "#default") { - $prefix = $_; last; - } - } - - if (! $prefix) { - - #define a new prefix - #actually there can be only onle prefix, which is the case when the element - #uses the same default namespace as otherwise, the default - #namespace was redefined by the children of . These are completely - #copied and still valid in the update information file - $generatedPrefix = "a"; - $defNsInDep = $defNsDep; - } - } - } - - } - elsif ($inDependencies) { - determineNsDefinitions($parser, $name, \@_); - collectPrefixes($parser, $name, \@_, \@usedNsInDependencies); - } -} -#sax handler used for the first parsing to recognize the used prefixes in and its -#children -sub end_handler_infos -{ - my $parser = shift; - my $name = shift; - - if ($name eq "description" - && $descNS eq $parser->namespace($name)) { - $inDescription = 0; - } - elsif($inDescription - && $name eq "dependencies" - && $descNS eq $parser->namespace($name)) { - $inDependencies = 0; - } -} - -sub writeUpdateInformationData($) -{ - my $desc = shift; - { - #parse description xml to collect information about all used - #prefixes and names within - - my $parser = new XML::Parser(ErrorContext => 2, - Namespaces => 1); - $parser->setHandlers(Start => \&start_handler_infos, - End => \&end_handler_infos); - - $parser->parsefile($desc); - - - } - #remove duplicates in the array containing the prefixes - if ($generatedPrefix) { - my %hashtmp; - @usedNsInDependencies = grep(!$hashtmp{$_}++, @usedNsInDependencies); - - #check that the prefix for the default namespace in does not clash - #with any other prefixes - my $clash; - do { - $clash = 0; - for (@usedNsInDependencies) { - if ($_ eq $generatedPrefix) { - $generatedPrefix++; - $clash = 1; last; - } - } - } while ($clash); - $notDefInDep{$generatedPrefix} = $defNsInDep; - } - #if $notDefInDep contains the prefix #default then we need to add the generated prefix as well - - #add the special prefix for the default namespace into the map of prefixes that will be - #added to the element in the update information file - - - ($inDependencies, $inDescription) = (0,0); - { - my $parser = new XML::Parser(ErrorContext => 2, - Namespaces => 1); - $parser->setHandlers( - Start => \&start_handler, - End => \&end_handler, - Default => \&default_handler); - $parser->parsefile($desc); - } -} - -# param 1: name of the attribute we look for -# param 2: array of name value pairs, the first subscript is the attribute and the second -# is the value. -sub findAttribute($$) -{ - my ($name, $args_r) = @_; - my @args = @{$args_r}; - my $value; - while (my $attr = shift(@args)) - { - if ($attr eq $name) { - $value = shift(@args); - die "href attribut has no valid URL" unless $value; - last; - } else { # shift away the following value for the attribute - shift(@args); - } - } - return $value; -} - -#collect the prefixes used in an xml element -#param 1: parser, -#param 2: element name, -#param 3: array of name and values of attributes -#param 4: out parameter, the array containing the prefixes -sub collectPrefixes($$$$) -{ - my $parser = shift; - my $name = shift; - my $attr_r = shift; - my $out_r = shift; - #get the prefixes which are currently valid - my @cur = $parser->current_ns_prefixes(); - my %map_ns; - #get the namespaces for the prefixes - for (@cur) { - if ($_ eq '#default') { - next; - } - my $ns = $parser->expand_ns_prefix($_); - $map_ns{$ns} = $_; - } - #investigat ns of element - my $pref = $map_ns{$parser->namespace($name)}; - push(@{$out_r}, $pref) if $pref; - #now go over the attributes - - while (my $attr = shift(@{$attr_r})) { - my $ns = $parser->namespace($attr); - if (! $ns) { - shift(@{$attr_r}); - next; - } - $pref = $map_ns{$ns}; - push( @{$out_r}, $pref) if $pref; - shift(@{$attr_r}); - } - #also add newly defined prefixes - my @newNs = $parser->new_ns_prefixes(); - for (@newNs) { - if ($_ eq '#default') { - next; - } - push (@{$out_r}, $_); - } -} - -#The function is called for each child element of dependencies. It finds out the prefixes -#which are used by the children and which are defined by the parents of . These -#would be lost when copying the children of into the update information file. -#Therefore these definitions are collected so that they then can be written in the -#element of the update information file. -#param 1: parser -#param 2: namsepace -#param 3: the @_ received in the start handler -sub determineNsDefinitions($$$) -{ - my ($parser, $name, $attr_r) = @_; - my @attr = @{$attr_r}; - - determineNsDefinitionForItem($parser, $name, 1); - - while (my $attr = shift(@attr)) { - determineNsDefinitionForItem($parser, $attr, 0); - shift @attr; - } -} - -#do not call this function for the element that does not use a prefix -#param 1: parser -#param 2: name of the element or attribute -#param 3: 1 if called for an elment name and 0 when called for attribue -sub determineNsDefinitionForItem($$$) -{ - my ($parser, $name) = @_; - my $ns = $parser->namespace($name); - if (! $ns) { - return; - } - #If the namespace was not kwown in then it was defined in one of its children - #or in this element. Then we are done since this namespace definition is copied into the - #update information. - my $bNsKnownInDep; - for ( keys %validPrefsInDep) { - if ( $validPrefsInDep{$_} eq $ns) { - $bNsKnownInDep = 1; - last; - } - } - #If the namespace of the current element is known in then check if the same - #prefix is used. If not, then the prefix was defined in one of the children of - #and was assigned the same namespace. Because we copy of children into the update information, - #this definition is also copied. - if ($bNsKnownInDep) { - #create a map of currently valid prefix/namespace - my %curPrefToNs; - my @curNs = $parser->current_ns_prefixes(); - for (@curNs) { - $curPrefToNs{$_} = $parser->expand_ns_prefix($_); - } - #find the prefix used in to define the namespace of the current element - my $validDepPref; - for (keys %validPrefsInDep) { - if ($validPrefsInDep{$_} eq $ns) { - #ignore #default - next if $_ eq "#default"; - $validDepPref = $_; - last; - } - } - #find the prefix defined in the current element used for the namespace of the element - my $curPref; - for (keys %curPrefToNs) { - if ($curPrefToNs{$_} eq $ns) { - #ignore #default - next if $_ eq "#default"; - $curPref = $_; - last; - } - } - if ($curPref && $validDepPref && ($curPref eq $validDepPref)) { - #If the prefixes and ns are the same, then the prefix definition of or its - #parent can be used. However, we need to find out which prefixed are NOT defined in - # so we can add them to it when we write the update information. - my $bDefined = 0; - for (@newPrefsInDep) { - if ($curPref eq $_) { - $bDefined = 1; - last; - } - } - if (! $bDefined) { - $notDefInDep{$curPref} = $ns; - } - } - } -} diff --git a/solenv/bin/makedepn b/solenv/bin/makedepn deleted file mode 100755 index 4b90fd1f1adb..000000000000 --- a/solenv/bin/makedepn +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/sh -e -# -# 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 . -# -if [ -z "$1" ]; then - exit 1; -fi -infile=`echo "$1" | sed 's/^@//'` -for i in `cat "$infile"`; do - i=`echo "$i" | fgrep -- "-O:" | awk -F: '{print $2}'` - if [ ! -z "$i" ]; then - echo "#" > "$i" - exit 0; - fi; -done -exit 1 diff --git a/solenv/bin/makemani.pl b/solenv/bin/makemani.pl deleted file mode 100644 index 94c5f7f7f476..000000000000 --- a/solenv/bin/makemani.pl +++ /dev/null @@ -1,95 +0,0 @@ -#! /usr/bin/perl -w - eval 'exec /usr/bin/perl -S $0 ${1+"$@"}' - if 0; #$running_under_some_shell -# -# 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 . -# - -use strict; -use File::Find (); -use Cwd qw (cwd); - -my @findlist; - -# Set the variable $File::Find::dont_use_nlink if you're using AFS, -# since AFS cheats. - -# for the convenience of &wanted calls, including -eval statements: -use vars qw/*name *dir *prune/; -*name = *File::Find::name; -*dir = *File::Find::dir; -*prune = *File::Find::prune; - -sub wanted; - - - -sub wanted { - /^.*\.xc(s|u)\z/s - && ( push @findlist, $name ); -} - -sub usage -{ - print STDERR "\n$0 - append *.xcu file entries to .oxt manifest.xml\n\n"; - print STDERR "usage: $0 \n\n"; - print STDERR " static part - file containig all other content for mainfest.xml\n"; - print STDERR " start dir - directory to change to before starting search\n"; - print STDERR " out dir - destination directory to write manifes.xml to\n\n"; - exit 1; -} - -if ( $#ARGV != 3 ) { usage(); }; - -my $manifest_head = $ARGV[0]; -my $start_dir = $ARGV[1]; -my $dynamic_dir = $ARGV[2]; -my $out_dir = $ARGV[3]; - -# Traverse desired filesystems -my $work_dir = cwd(); -chdir $start_dir or die "$0: ERROR - cannot change directory to \"$start_dir\"\n"; -File::Find::find({wanted => \&wanted}, $dynamic_dir); -chdir $work_dir or die "$0: ERROR - oops... cannot change dir to where i came from!\n"; - -open (HEAD, "$manifest_head") or die "$0: ERROR - Cannot open $manifest_head\n"; -my @headlines = ; -close HEAD; -chomp @headlines; -chomp @findlist; - -my @bodylines; -my @taillines = (""); - -foreach my $i (@findlist) { - if ($i =~ m/^.*\.xcu\z/s) { - push @bodylines, " "; -} - -open (MANIOUT,">$out_dir/manifest.xml") or die "$0: ERROR - cannot open \"$out_dir/manifest.xml\" for writing.\n"; -binmode MANIOUT; - -foreach my $j (@headlines, @bodylines, @taillines) { - print MANIOUT "$j\n"; -} - -close MANIOUT; - diff --git a/solenv/bin/mapgen.pl b/solenv/bin/mapgen.pl deleted file mode 100644 index d336e634551a..000000000000 --- a/solenv/bin/mapgen.pl +++ /dev/null @@ -1,196 +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 . -# - -# -# mapgen - generate a map file for Unix libraries -# - -#use File::Path; -#use File::Copy; - -#### script id ##### - -( $script_name = $0 ) =~ s/^.*\b(\w+)\.pl$/$1/; -print "$script_name -- version: 1.6\n"; -print "Multi Platform Enabled Edition\n"; - -######################### -# # -# Globale Variablen # -# # -######################### - -$dump_file = ''; -$flt_file = ''; -$map_file = ''; -$first_string = ''; -$tab = ' '; - -#### main #### - -&get_options; -if (!(open (DUMP_FILE, $dump_file))) { - &print_error("Unable open $dump_file"); -}; -if (!(open (FLT_FILE, $flt_file))) { - close DUMP_FILE; - &print_error("Unable open $flt_file"); -}; -unlink $map_file; -if (!(open (MAP_FILE, ">>$map_file"))) { - close DUMP_FILE; - close FLT_FILE; - &print_error("Unable open $map_file"); -}; - -if ($ENV{OS} eq 'SOLARIS') { - &gen_sol; -} elsif ($ENV{OS} eq 'LINUX') { - &gen_lnx; -} else { - &print_error ('Environment not set!!'); -}; - -close DUMP_FILE; -close FLT_FILE; -close MAP_FILE; - -#### end of main procedure #### - -######################### -# # -# Procedures # -# # -######################### - -# -# Generate a map file for solaris -# -sub gen_sol { - my %symbols = (); - foreach () { - next if (!(/\s*(\S+)\s*\|\s*(\S+)\s*\|\s*(\S+)\s*\|\s*(\S+)\s*\|\s*(\S+)\s*\|\s*(\S+)\s*\|\s*(\S+)\s*\|\s*(\S+)\s*/)); - next if (($7 =~ /UNDEF/) || ($7 =~ /ABS/)); - next if ($5 eq 'LOCL'); - $symbols{$8}++; - }; - &filter_symbols(\%symbols); -}; - -# -# Generate a map file for linux -# -sub gen_lnx { - my %symbols = (); - foreach () { - next if (!(/^\S+ [A|B|C|D|G|I|N|R|S|T|U|V|W|-|\?|-] (\S+)/)); - $symbols{$1}++; - }; - &filter_symbols(\%symbols); -} - -# -# Filter symbols with filters from $flt_file -# -sub filter_symbols { - my $symbols = shift; - my $env_section = ''; - my @filters = (); - my @filtered_symbols = (); - while () { - s/\r//; - s/\n//; - $env_section = '1' and next if ((/^# SOLARIS #$/) && ($ENV{OS} eq 'SOLARIS')); - $env_section = '1' and next if ((/^# LINUX #$/) && ($ENV{OS} eq 'LINUX')); - $env_section = '1' and next if ((/^# FREEBSD #$/) && ($ENV{OS} eq 'FREEBSD')); - $env_section = '1' and next if ((/^# NETBSD #$/) && ($ENV{OS} eq 'NETBSD')); - $env_section = '1' and next if ((/^# OPENBSD #$/) && ($ENV{OS} eq 'OPENBSD')); - $env_section = '1' and next if ((/^# DRAGONFLY #$/) && ($ENV{OS} eq 'DRAGONFLY')); - last if ($env_section && ((/^# SOLARIS #$/) || (/^# FREEBSD #$/) || (/^# LINUX #$/) || (/^# NETBSD #$/) || (/^# OPENBSD #$/) (/^# DRAGONFLY #$/))); - next if (!$_ || /^#/); - push(@filters, $_); - }; - foreach my $symbol (keys %$symbols) { - my $export = '-'; - foreach my $filter_str (@filters) { - my $add = substr ($filter_str, 0, 1); - my $filter = substr($filter_str, 1); - if ($symbol =~ /$filter/) { - $export = $add; - }; - }; - if ($export eq '+') { - push(@filtered_symbols, $symbol); - }; - }; - &write_mapfile(\@filtered_symbols); -}; - -# -# Write a map file -# -sub write_mapfile { - my $symbols = shift; - print MAP_FILE $first_string . " {\n$tab" . "global:\n"; - foreach (@$symbols) { - print MAP_FILE "$tab$tab$_\;\n"; - }; - print MAP_FILE "$tab" . "local:\n$tab\*\;\n}\;"; -}; - -# -# Get all options passed -# -sub get_options { - -$dump_file = ''; -$flt_file = ''; -$map_file = ''; - my ($arg); - &usage() && exit(0) if ($#ARGV == -1); - while ($arg = shift @ARGV) { - $arg =~ /^-d$/ and $dump_file = shift @ARGV and next; - $arg =~ /^-f$/ and $flt_file = shift @ARGV and next; - $arg =~ /^-m$/ and $map_file = shift @ARGV and next; - $arg =~ /^-h$/ and &usage and exit(0); - $arg =~ /^--help$/ and &usage and exit(0); - $arg =~ /^-s$/ and $first_string = shift @ARGV and next; - }; - if (!$dump_file || - !$flt_file || - !$first_string || - !$map_file) { - &usage; - exit(1); - }; -}; - -sub print_error { - my $message = shift; - print STDERR "\nERROR: $message\n"; - exit(1) -}; - -sub usage { - print STDERR "\nmapgen:\n"; - print STDERR "Syntax: mapgen -d dump_file -s first_string -f filter_file -m map_file [-h|--help]\n"; -}; - diff --git a/solenv/bin/mkdir.pl b/solenv/bin/mkdir.pl deleted file mode 100644 index a3bf01015dc4..000000000000 --- a/solenv/bin/mkdir.pl +++ /dev/null @@ -1,82 +0,0 @@ -: # -*- perl -*- -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 . -# -# -# mkdir - a perl script to substitute mkdir -p -# accepts "/", ":", and "\" as delimiters of subdirectories -# options -p (for compatibility) -# -mode mode -# - -use Cwd; - -$currdir = cwd; - -$MODE = 00777 ; - -while ( $#ARGV >= 0 ) { - if ( $ARGV[0] eq "-mode" ) { - $MODE = oct $ARGV[1] ; - shift @ARGV ; - shift @ARGV ; - } - elsif ( $ARGV[0] eq "-p" ) { - shift @ARGV ; - # -p does not do anything, it's supported just for compatibility - } - else { - - $ARGV[0] =~ s?\\|:?/?g ; - @SUBDIRS = split "/", $ARGV[0] ; - - # absolute path UNIX - if ( $SUBDIRS[0] eq "" ) { - chdir '/' ; - shift @SUBDIRS ; - } - # absolute path WINDOWS - if ( $#SUBDIRS > 1 ) { - if ( $SUBDIRS[1] eq "" ) { - if ( $SUBDIRS[0] =~ /\w/ ) { - chdir "$SUBDIRS[0]:\\" ; - shift @SUBDIRS ; - shift @SUBDIRS ; - } ; - } ; - } - - while (@SUBDIRS) { - if ( -e $SUBDIRS[0] ) { - if ( ! -d $SUBDIRS[0] ) { - die "file exists\n" - } - } - else { - mkdir $SUBDIRS[0], $MODE or die "Can't create directory $SUBDIRS[0]" - } - chdir $SUBDIRS[0] or die "Can't cd to $SUBDIRS[0]" ; - shift @SUBDIRS ; - } ; - - shift @ARGV ; - } ; - chdir $currdir; -} diff --git a/solenv/bin/mkout.pl b/solenv/bin/mkout.pl deleted file mode 100755 index 3b5b6ec17fac..000000000000 --- a/solenv/bin/mkout.pl +++ /dev/null @@ -1,147 +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 . -# - -# -# mkout.pl - create output tree -# - -use Cwd; -use Getopt::Std; -use File::Path; - -#### script id ##### - -( $script_name = $0 ) =~ s/^.*\b(\w+)\.pl$/$1/; - -#### globals #### - -$is_debug = 0; - -$base_dir = 0; # path to module base directory -$dir_mode = 0755; # default directory creation mode - -$envpath = 0; # platform/product combination -$opt_r = 0; # create 'remote' subdirs - -%sub_dirs = ( -# dirname remote(yes/no) - 'bin' => 1, - 'class' => 0, - 'inc' => 0, - 'lib' => 1, - 'misc/logs' => 1, - 'obj' => 1, - 'res' => 1, - 'slb' => 1, - 'slo' => 1, - 'srs' => 1 - ); - -#### main #### - -parse_options(); -init_globals(); -create_dirs(); - -exit(0); - -#### subroutines ##### - -sub parse_options { - my $rc; - - $rc = getopts('r'); - - if ( !$rc || $#ARGV > 0 ) { - usage(); - exit(1); - } - $envpath = $ARGV[0] if defined($ARGV[0]); -} - -sub init_globals { - my $umask; - $base_dir = get_base(); - print "Base_Diri=$base_dir\n" if $is_debug; - - $umask = umask(); - if ( defined($umask) ) { - $dir_mode = 0777 - $umask; - } - $envpath = $ENV{INPATH} unless $envpath; - - if ( !$envpath ) { - print_error("can't determine platform/environment"); - exit(3); - } - print "Platform/Environment: $envpath\n" if $is_debug; -} - -sub get_base { - # a module base dir contains a subdir 'prj' - # which in turn contains a file 'd.lst' - my (@field, $base, $dlst); - my $path = cwd(); - - @field = split(/\//, $path); - - while ( $#field != -1 ) { - $base = join('/', @field); - $dlst = $base . '/prj/d.lst'; - last if -e $dlst; - pop @field; - } - - if ( $#field == -1 ) { - print_error("can't determine module"); - exit(2); - } - else { - return $base; - } -} - -sub create_dirs { - foreach $dir ( keys %sub_dirs ) { - $path = $base_dir . '/' . $envpath . '/' . $dir; - if ( $opt_r && $sub_dirs{$dir} ) { - $path .= "/remote"; - } - eval { mkpath($path, 0, $dir_mode) }; - if ( $@ ) { - print_error( "$@" ); - } - print "Create path: $path\n" if $is_debug; - } -} - -sub print_error { - my $message = shift; - - print STDERR "$script_name: ERROR: $message\n"; -} - -sub usage { - print STDERR "Usage:\n$script_name [-r] [platform/environment]\n"; - print STDERR "Options:\n -r create 'remote' directories\n"; -} - -# vim: set ts=4 shiftwidth=4 expandtab syntax=perl: diff --git a/solenv/bin/patch_sanitizer.pl b/solenv/bin/patch_sanitizer.pl deleted file mode 100644 index 81c83ce4ad72..000000000000 --- a/solenv/bin/patch_sanitizer.pl +++ /dev/null @@ -1,117 +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 . -# - -use utf8; -use warnings; -use strict; - -# command line arguments -my $oldpatchfile = shift; -my $newpatchfile = shift; -my $sortedfile = shift; - -show_help() unless defined $oldpatchfile and defined $newpatchfile and defined $sortedfile; - -my %oldpatchfile = parse_patch($oldpatchfile); -my %newpatchfile = parse_patch($newpatchfile); - -open SORTEDPATCH, "> $sortedfile"; - -foreach my $file (sort (keys %newpatchfile)) { - print SORTEDPATCH $file."\t"; - if (defined($oldpatchfile{$file})) { - if ( (join '', @{$oldpatchfile{$file}{'data'}}) eq (join '', @{$newpatchfile{$file}{'data'}}) ) { - # patch data for the file hasn't been modified, use the header from - # the old patch, to reduce noise (keep the old timestamps) - print SORTEDPATCH $oldpatchfile{$file}{'origtimestamp'}."\n"; - print SORTEDPATCH $oldpatchfile{$file}{'patchedfilename'}."\t"; - print SORTEDPATCH $oldpatchfile{$file}{'patchedtimestamp'}."\n"; - print SORTEDPATCH @{$oldpatchfile{$file}{'data'}}; - next; - } - } - # either file wasn't patched before, or the patchset changed, so use the new - # values for it.. - print SORTEDPATCH $newpatchfile{$file}{'origtimestamp'}."\n"; - print SORTEDPATCH $newpatchfile{$file}{'patchedfilename'}."\t"; - print SORTEDPATCH $newpatchfile{$file}{'patchedtimestamp'}."\n"; - print SORTEDPATCH @{$newpatchfile{$file}{'data'}}; -} -close SORTEDPATCH; - -############### -# Helper subs -############### -sub show_help { - print "Usage: $0 oldpatch newpatch outputfilename\n"; - print "oldpatch and newpatch can be the very same file\n"; - print "will output a sanitized form of newpatch to outputfilename\n"; - print "if outputfilename is '-', the patch will be printed to stdout\n"; - print "sanitized means: It will avoid all unnecessary changes\n"; - exit 1; -} -sub parse_patch { - my $patchfile = shift; - my $patchtype; - my $pfirst; - my $psecond; - - my %hunks = (); - my $origfilename; - open PATCHFILE, "< $patchfile" or die "Cannot open file $patchfile $!"; - my @patchfile = ; - close PATCHFILE; - return %hunks if ( $#patchfile == -1 ); - if ( $patchfile[0] =~ /^---/ ) { - $patchtype = "unified"; - $pfirst = '^--- [^\*]*$'; - $psecond = '^\+\+\+ [^\*]*$'; - } elsif ( $patchfile[0] =~ /^\*\*\*/ ) { - $patchtype = "content"; - $pfirst = '^\*\*\* [^\*]*$'; - $psecond = '^--- .*\t.*$'; - } else { - die "unknown patch format\n"; - } - - foreach (@patchfile) { - if ( /$pfirst/ ) { - my $timestamp; - # extract the filename, to be able to compare the old - # with the new file... - ($origfilename, $timestamp) = split(/\t/, $_, 2); - chomp $timestamp; - # ideally convert the timestamp to iso-format... - $hunks{$origfilename}{'origtimestamp'} = $timestamp; - next; - } elsif ( $_ =~ /$psecond/ ) { - my ($filename, $timestamp) = split(/\t/, $_, 2); - chomp $timestamp; - # ideally convert the timestamp to iso-format... - $hunks{$origfilename}{'patchedfilename'} = $filename; - $hunks{$origfilename}{'patchedtimestamp'} = $timestamp; - next; - } - push (@{$hunks{$origfilename}{'data'}}, $_); - - } - return %hunks; -} diff --git a/solenv/bin/remangle32to64.pl b/solenv/bin/remangle32to64.pl deleted file mode 100644 index 68ac7abb1a61..000000000000 --- a/solenv/bin/remangle32to64.pl +++ /dev/null @@ -1,310 +0,0 @@ -#!/usr/bin/perl -w /* -*- indent-tabs-mode: nil -*- */ - -# -# 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/. -# - -# Change MSVC mangled C++ names from 32-bit form to the corresponding -# 64-bit form. Each line of input can contain at most one mangled -# name. - -# Based on experimentation with MSVC2008 and the following web pages: - -# http://www.geoffchappell.com/viewer.htm?doc=studies/msvc/language/decoration/index.htm -# Thorough but incomplete. Still, describes details the below sources -# don't mention. - -# http://cvs.winehq.com/cvsweb/wine/dlls/msvcrt/undname.c -# Wine's __unDname function, presumably the most complete, although -# not really written to act as "documentation" - -# http://mearie.org/documents/mscmangle/ -# Relatively complete but a bit badly structured and terse. - -# http://en.wikipedia.org/wiki/Microsoft_Visual_C%2B%2B_Name_Mangling -# seems to be mostly a ripoff on the mearie.org page - -# Example transformation: -# ??0ORealDynamicLoader@salhelper@@IAE@PAPAV01@ABVOUString@rtl@@1PAX2@Z => -# ??0ORealDynamicLoader@salhelper@@IEAA@PEAPEAV01@AEBVOUString@rtl@@1PEAX2@Z - -# It should be relatively easy to remove the modification parts of the -# below code and use the regex for some other task on MSVC mangled -# names. - -# The regular expression below accepts also nonsensical mangled names, -# so it should not be used to verify correctness of mangled names. - -use strict; - -my @opstack = (); - -sub parse_number($) -{ - my ($num) = @_; - - return $num + 1 if ($num eq '0' || ($num ge '1' && $num le '9')); - - $num =~ tr/ABCDEFGHIJKLMNOP@/0123456789ABCDEF /; - hex($num); -} - -sub format_number($) -{ - my ($num) = @_; - - return $num - 1 if ($num <= 10); - - $num = sprintf("%X", $num); - $num =~ tr/0123456789ABCDEF/ABCDEFGHIJKLMNOP/; - $num.'@'; -} - -sub double_thunk($$) -{ - my ($number, $position) = @_; - - my $bytes = parse_number($number); - $bytes *= 2; - push(@opstack, 'r '.($position - length($number)).' '.length($number).' '.format_number($bytes)); -} - -while (<>) - { - m/ - # Named subpattern definitions. I use names of the form - # __CamelCase__ for the named subpatters so that they are easier - # to see. - (?(DEFINE) - (?<__Number__> - \?? ([0-9] | [A-P]+@) - ) - (?<__32BitChecksum__> - [A-P]{8}@ - ) - (?<__CallingConvention__> - (?: - [AB] - | - [C-L] - (?{ push(@opstack, 'r '.(pos()-1).' 1 A cdecl'); }) - ) - ) - (?<__StringLiteralText__> - (?: - [_a-zA-Z0-9] - | - \?\$[A-P][A-P] - | - \?[0-9A-Za-z] - ){1,20} - ) - (?<__Identifier__> - [_a-zA-Z\$][_a-zA-Z0-9\$]*@ - ) - (?<__ArgsZTerminated__> - (?&__DataTypeInArgs__)+ @? Z - ) - (?<__ArgsNonZTerminated__> - (?&__DataTypeInArgs__)+ @? - ) - (?<__TemplateName__> - (?&__Identifier__) (?&__ArgsNonZTerminated__) - ) - (?<__Class__> - (?: - [0-9] - | - \?\$ (?&__TemplateName__) - | - (?&__Identifier__) - )+@ - ) - (?<__DataTypeCommon__> - (?: - # extended types like _int64, bool and wchar_t - _[D-NW] - | - # simple types - [C-KMNOXZ] - | - # class, struct, union, cointerface - [TUVY] (?&__Class__) - | - # references - [AB] - (?{ push(@opstack, 'i '.pos().' E reference'); }) - (?&__ModifiedType__) - | - # pointers - [QRS] - (?{ push(@opstack, 'i '.pos().' E pointer'); }) - (?&__ModifiedType__) - | - P - (?: - # function pointer - 6 (?&__CallingConvention__) (?&__DataTypeNotInArgs__) (?&__ArgsZTerminated__) - | - # other pointer - (?{ push(@opstack, 'i '.pos().' E pointer'); }) - (?&__ModifiedType__) - ) - | - W 4 (?&__Class__) - | - [0-9] - | - \$ (?: - [0DQ] (?&__Number__) - | - F (?&__Number__){2} - | - G (?&__Number__){3} - | - \$ [ABCD] (?&__DataTypeNotInArgs__) - ) - ) - ) - (?<__ModifiedType__> - [ABCD] - (?: - # multidimensional array - Y (?&__Number__)+ - )? - (?&__DataTypeNotInArgs__) - ) - (?<__DataTypeInArgs__> - (?: - (?&__DataTypeCommon__) - | - # template parameter - \? (?&__Number__) - ) - ) - (?<__DataTypeNotInArgs__> - (?: - (?&__DataTypeCommon__) - | - \? (?&__ModifiedType__) - ) - ) - ) - - # All mangled names start with a question mark - \? - (?: - # Ctors, dtors, operators etc have separate a priori defined - # special mangled names like the very simple ?0 for constructor - # and ?_R16789 for "RTTI Base Class Descriptor at (6,7,8,9)" - # whatever that might mean. - ( - \? - ([0-9A-Z] - | - _(?: - # C is for string literals, see below - # R is RTTI, see immediately below - [0-9ABD-QS-Z] - | - R0(?&__DataTypeNotInArgs__) - | - R1(?&__Number__){4} - | - R[234] - | - _(?: - E - ) - ) - ) - )? - (?&__Class__) - - (?: - # Static members and normal variables - [0-5] - (?&__DataTypeNotInArgs__) - [ABCD] - | - # Compiler-generated static - [67] - [ABCD] - (?: - @ - | - (?&__Class__) - ) - | - # Non-static Methods, implicit 'this' - [ABEFIJMNQRUV] - [AB] - (?{ push(@opstack, 'i '.(pos()-1).' E this'); }) - (?&__CallingConvention__) - (?: - @ - | - (?&__DataTypeNotInArgs__) - ) - (?&__ArgsZTerminated__) - | - # Static methods - [CDKLST] - (?&__CallingConvention__) - (?: - @ - | - (?&__DataTypeNotInArgs__) - ) - (?&__ArgsZTerminated__) - | - # Thunks - [GHOPWX] - ((?&__Number__)) - (?{ double_thunk($^N, pos()); }) - [AB] - (?{ push(@opstack, 'i '.(pos()-1).' E this'); }) - (?&__CallingConvention__) - (?: - @ - | - (?&__DataTypeNotInArgs__) - ) - (?&__ArgsZTerminated__) - | - # Functions - [YZ] - (?&__CallingConvention__) - (?: - @ - | - (?&__DataTypeNotInArgs__) - ) - (?&__ArgsZTerminated__) - | - # Template - \$ (?&__Identifier__) (?&__ArgsNonZTerminated__) - ) - | - # pooled string literals - \?_C\@_[01](?&__Number__)(?&__32BitChecksum__)(?&__StringLiteralText__)@ - ) - /x; - - while (my $op = pop(@opstack)) - { - # print STDERR "op=$op\n"; - my @a = split (' ', $op); - if ($a[0] eq 'i') { - substr($_,$a[1],0) = $a[2]; - } elsif ($a[0] eq 'r') { - substr($_,$a[1],$a[2]) = $a[3]; - } - } - - print; - } diff --git a/solenv/bin/rmdir.pl b/solenv/bin/rmdir.pl deleted file mode 100644 index 301cada768c3..000000000000 --- a/solenv/bin/rmdir.pl +++ /dev/null @@ -1,37 +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 . -# - -my $r_code=0; -if ( ! defined $ARGV[0] || "$ARGV[0]" eq "" ) { - print STDERR "Nothing to delete\n"; - exit 1; -} -while ( defined $ARGV[0] ) { -if ( rmdir $ARGV[0] ) { -# exit 0; -} else { - print STDERR "ERROR removing $ARGV[0]: $!\n"; - $r_code = 1; -} -shift @ARGV; -} -exit $r_code; - diff --git a/solenv/bin/rpm-wrapper b/solenv/bin/rpm-wrapper deleted file mode 100755 index 98a55da0243c..000000000000 --- a/solenv/bin/rpm-wrapper +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/bash -# -# 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 . -# - -# At least on v20z-so3, when /so/env/bt_linux_libc2.11/DEV300/bin/rpm is called -# and internally looks for a ld-linux.so.2, it picks up -# /lib/tls/i686/cmov/ld-linux.so.2 and SIGSEGVs. This is prevented by -# adding /so/env/bt_linux_libc2.11/DEV300/lib to the LD_LIBRARY_PATH, thus -# picking up the ld-linux.so.2 from there: - -set -e -if [ "$OUTPATH" = "unxlngi6" ] -then -LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}:}${LIBRARY_PATH?} \ - ${BUILD_TOOLS?}/rpmbuild "$@" -else -if [ "$OUTPATH" = "unxlngx6" ] -then -LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}:}${LIBRARY_PATH?} \ - ${BUILD_TOOLS?}/rpmbuild "$@" -else -LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}:}${COMPATH?}/lib \ - ${BUILD_TOOLS?}/rpm "$@" -fi -fi diff --git a/solenv/bin/slfl.pl b/solenv/bin/slfl.pl deleted file mode 100644 index 4ea42213163b..000000000000 --- a/solenv/bin/slfl.pl +++ /dev/null @@ -1,167 +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: Wrapper script to change '/' to '\' in command-line -# arguments. - -#--------------------------------------------------------------------------- -# external modules -use Text::ParseWords; - -# global vars -@params = (); - -#--------------------------------------------------------------------------- -# procedures - - -#---------------------------------------------------------- -# 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 @_; - - $variable =~ s!(.)/!$1\\!g; # Replace all but the leading slashes with backslashes - - 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; - if ( $is_no_para ) { - $para = WinFormat($para); - } - if ( defined $debug ) { - print(STDERR "Converted line:${para}:\n" ); - } - } # else - } # foreach loop -} - - -#--------------------------------------------------------------------------- -# main -@params = @ARGV; - -$command = shift(@params); - -while ( $command =~ /^-/ ) -{ - if ( $command eq "-dbg" ) { - $debug="true"; - } - elsif ( $command eq "-ldbg" ) { - $debug_light="true"; - } - - $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: slfl.pl: executing $command failed!\n" ); - diff --git a/solenv/bin/touch.pl b/solenv/bin/touch.pl deleted file mode 100644 index fb39097da4d1..000000000000 --- a/solenv/bin/touch.pl +++ /dev/null @@ -1,33 +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 . -# -# -# workaround for broken 4nt -# internal touch command -# - -foreach my $filename (@ARGV) { - open KKK, ">>$filename" or die "ERROR: cannot open $filename!\n"; - $size=(stat($filename))[7]; - print KKK "x"; - truncate KKK, $size; - close KKK; -} - diff --git a/solenv/bin/unxmap-to-macosx-explist.awk b/solenv/bin/unxmap-to-macosx-explist.awk deleted file mode 100644 index b8ae5acb8fd7..000000000000 --- a/solenv/bin/unxmap-to-macosx-explist.awk +++ /dev/null @@ -1,54 +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 . -# - -# Generate an exported symbols list out of a map file (as use on Linux/Solaris) in order to -# build shared libraries on Mac OS X -# -# The below code fails may fail with 'perverted' mapfiles (using a strange line layout etc.) - -# Skip 'SECTION_NAME {' lines -/^[\t ]*.*[\t ]*\{/ { next } - -# Skip 'global:' or 'local:' lines -/global:/ || /local:/ { next } - -# Skip '*;' lines -/^[\t ]*\*;[\t ]*/ { next } - -# Skip section end '}?;' lines -/^[\t ]*\}[\t ]*.*[;]*/ { next } - -# Skip comment or empty lines -/^[\t ]*#.*/ || /^[\t ]*$/ || /^$/ { next } - -# Echo all lines containing symbol names and prefix them with '_' -# because symbols on Mac OS X start always with '__' -{ - # There may appear multiple symbols in one line - # e.g. "sym1; sym2; # and finally a comment" - # take this into account - for (i = 1; i <= NF ; i++) { - if ($i !~ /^[\t ]*#.*/) { # as long as the current field doesn't start with '#' - gsub(/[\t ;]/, "", $i) # Remove leading spaces and trailing ';' - printf("_%s\n",$i) - } - else { # ignore everything after a '#' (comment) sign - break - } - } -}