File: //proc/self/root/scripts.20110531.215904.25158/fetchimagemagick
#!/usr/bin/perl
# cpanel - fetchimagemagick Copyright(c) 2010 cPanel, Inc.
# All rights Reserved.
# copyright@cpanel.net http://cpanel.net
# This code is subject to the cPanel license. Unauthorized copying is prohibited
BEGIN { unshift @INC, '/usr/local/cpanel'; }
use Cpanel::OSSys ();
use Cpanel::Sys::OS ();
$| = 1;
my $system = ( Cpanel::OSSys::uname() )[0];
if ( $system =~ /freebsd/i ) {
if ( !-e '/usr/local/lib/libMagick.so' && !-e '/usr/lib/libMagick.so' ) {
exec( "/scripts/installpkg", "--force", "ImageMagick" );
}
else {
exec( "/scripts/installpkg", "ImageMagick" );
}
exit();
}
opendir( IMDIR, "/usr/local/cpanel/src/3rdparty/gpl" );
my @FILES = readdir(IMDIR);
closedir(IMDIR);
my $maxmajor = 6;
my $maxminor = 0;
my $maxrev = 0;
foreach my $file (@FILES) {
next if ( $file !~ m{ \A ImageMagick- }xms );
$file =~ /(ImageMagick-[^\"]+)/;
my $filename = $1;
next if ( $filename !~ /\.tar\.gz$/ );
my $version = $filename;
$version =~ s/^ImageMagick-//g;
$version =~ s/\.tar\.gz$//g;
my ( $major, $minor, $rev ) = split( /\./, $version );
next if ( $major ne "6" );
if ( $maxminor < $minor ) {
$maxminor = $minor;
$maxrev = $rev;
}
elsif ( $maxrev < $rev ) {
$maxrev = $rev;
}
}
print "ImageMagick-${maxmajor}.${maxminor}.${maxrev}.tar.gz\n";
system("/scripts/checkccompiler");
system( "rm", "-rf", "/home/cpimkbuild" );
system( "mkdir", "/home/cpimkbuild" );
chdir("/home/cpimkbuild");
system( "cp", "-fv", "/usr/local/cpanel/src/3rdparty/gpl/ImageMagick-${maxmajor}.${maxminor}.${maxrev}.tar.gz", "." );
system( "tar", "xfzv", "ImageMagick-${maxmajor}.${maxminor}.${maxrev}.tar.gz" );
$dir = glob("ImageMagick-*");
chdir($dir);
system("pwd");
my $prefix = '/usr';
if ( -e '/usr/X11R6/bin/convert' ) {
$prefix = '/usr/X11R6';
}
if ( $system =~ /freebsd/i ) { $prefix = '/usr/local'; }
my @CONF;
if ( -e "/usr/local/lib/libpng.so" ) {
@CONF = ( "./configure", "--prefix=${prefix}", "--with-png=/usr/local" );
}
else {
@CONF = ( "./configure", "--prefix=${prefix}" );
}
if ( -e "/usr/lib64" && !grep( /skip64/, @ARGV ) ) {
push( @CONF, "--libdir=/usr/lib64" );
}
system(@CONF);
# Would be nice, but is it safe?
#my $distro = Cpanel::Sys::OS::getos();
#if ($distro ne 'gentoo' && $distro ne 'freebsd' && -x '/usr/bin/rpm') {
# system 'rpm','-e','ImageMagick','ImageMagick-devel'; #remove rpm installed versions as they will conflict.
#}
system("make");
system( "make", "install" );
chdir("/");
system( "rm", "-rf", "/home/cpimkbuild" );
if ( $system =~ /freebsd/i ) {
system("cp -fv /usr/local/lib/libMagick.so* /usr/lib");
}