about summary refs log tree commit diff
path: root/other/pamfixtrunc
blob: 1aa3ff94902a1aef6a3cba86ce0ee6152b8c127b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!/bin/sh

##############################################################################
# This is essentially a Perl program.  We exec the Perl interpreter specifying
# this same file as the Perl program and use the -x option to cause the Perl
# interpreter to skip down to the Perl code.  The reason we do this instead of
# just making /usr/bin/perl the script interpreter (instead of /bin/sh) is
# that the user may have multiple Perl interpreters and the one he wants to
# use is properly located in the PATH.  The user's choice of Perl interpreter
# may be crucial, such as when the user also has a PERL5LIB environment
# variable and it selects modules that work with only a certain main
# interpreter program.
#
# An alternative some people use is to have /usr/bin/env as the script
# interpreter.  We don't do that because we think the existence and
# compatibility of /bin/sh is more reliable.
#
# Note that we aren't concerned about efficiency because the user who needs
# high efficiency can use directly the programs that this program invokes.
#
##############################################################################

exec perl -w -x -S -- "$0" "$@"

#!/usr/bin/perl
##############################################################################
#  This is nothing but a compatibility interface for Pamfixtrunc.
#  An old program coded to call Pamfixtrunc will continue working because
#  this interface exists.  All new (or newly modified) programs should
#  call Pamfix instead.
##############################################################################

use strict;
use File::Basename;
use Cwd 'abs_path';

my @pamFixOptions;

@pamFixOptions = @ARGV;  # initial value

push(@pamFixOptions, '-truncate');

# We want to get Pamfix from the same directory we came from if
# it's there.  Frequently, the directory containing Netpbm programs is
# not in the PATH and we were invoked by absolute path.

my $my_directory = abs_path(dirname($0));
$ENV{"PATH"} = $my_directory . ":" . $ENV{"PATH"};

exit(system('pamfix', @pamFixOptions)>>8);