MMCT TEAM
Server IP : 103.53.40.154  /  Your IP : 3.147.28.111
Web Server : Apache
System : Linux md-in-35.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
User : ppcad7no ( 715)
PHP Version : 8.2.25
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0555) :  /bin/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //bin/ppmquant
#!/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 Pnmquant.
#  An old program coded to call Ppmquant will continue working because
#  this interface exists.  All new (or newly modified) programs should
#  call Pnmquant or Pnmremap instead.
#
#  In days past, Pnmquant and Pnmremap did not exist.  Ppmquant did
#  the job of both Pnmremap and Pnmquant, but only on PPM images.
##############################################################################

use strict;

sub doVersionHack($) {
    my ($argvR) = @_;

    my $arg1 = $argvR->[0];

    if (defined($arg1) && (($arg1 eq "--version") || ($arg1 eq "-version"))) {
        my $termStatus = system('pnmquant', '--version');
        exit($termStatus == 0 ? 0 : 1);
    }
}

doVersionHack(\@ARGV);

use Getopt::Long;

my @ppmquantArgv = @ARGV;

Getopt::Long::Configure('pass_through');

my $validOptions = GetOptions('mapfile' => \my $mapfileopt);

my $mapfileOptionPresent = ($validOptions && $mapfileopt);

if ($mapfileOptionPresent) {
    system('pnmremap', @ppmquantArgv);
} else {
    system('pnmquant', @ppmquantArgv);
}

MMCT - 2023