root/main/trunk/greenstone2/bin/script/full-import.pl @ 24192

Revision 24192, 2.2 KB (checked in by ak19, 8 years ago)

Sam discovered that using dollar-Config{perlpath} in place of dollar-hat-X is the better way to obtain the path to the perl that is being used. We hope this will not be a relative path on the Mac as dollar-hat-x was on Professor Witten's Mac when we tried it there today.

  • Property svn:executable set to *
Line 
1#!/usr/bin/perl -w
2
3###########################################################################
4#
5# full-import.pl -- runs import.pl with -removeold option on
6# A component of the Greenstone digital library software
7# from the New Zealand Digital Library Project at the
8# University of Waikato, New Zealand.
9#
10# Copyright (C) 2009 New Zealand Digital Library Project
11#
12# This program is free software; you can redistribute it and/or modify
13# it under the terms of the GNU General Public License as published by
14# the Free Software Foundation; either version 2 of the License, or
15# (at your option) any later version.
16#
17# This program is distributed in the hope that it will be useful,
18# but WITHOUT ANY WARRANTY; without even the implied warranty of
19# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20# GNU General Public License for more details.
21#
22# You should have received a copy of the GNU General Public License
23# along with this program; if not, write to the Free Software
24# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
25#
26###########################################################################
27
28
29# This program will import (or re-import) a collection from scratch
30# Runs:        import.pl -removeold ...
31
32
33BEGIN {
34    die "GSDLOS not set\n" unless defined $ENV{'GSDLOS'};
35}
36
37use strict;
38use Config; # for getting the perlpath in the recommended way
39
40my $quoted_argv = join(" ", map { "\"$_\"" } @ARGV);
41
42my $import_cmd = "import.pl -removeold $quoted_argv";
43if($ENV{'PERLPATH'}) {
44    # need to ensure that the path to perl is quoted (in case there's spaces in it)
45    if($ENV{'GSDLOS'} =~ m/windows/) {
46    $import_cmd = "\"$ENV{'PERLPATH'}\\Perl.exe\" -S $import_cmd";
47    } else {
48    $import_cmd = "\"$ENV{'PERLPATH'}/perl\" -S $import_cmd";
49    }
50} else {
51    #Config{perlpath}, like $^X, is a special variable containing the full path to the current perl executable we are in
52    $import_cmd = "\"$Config{perlpath}\" -S $import_cmd";
53}
54
55my $import_status = system($import_cmd)/256;
56
57if ($import_status != 0) {
58    print STDERR "Error: Failed to run: $import_cmd\n";
59    print STDERR "       $!\n" if ($! ne "");
60    exit(-1);
61}
62
63
64
Note: See TracBrowser for help on using the browser.