Portfile

# $Id: Portfile 22732 2007-03-13 03:56:11Z yves@macports.org $

PortSystem 1.0

name gcc41
version 4.1.2
revision 1
platforms darwin
categories lang
maintainers mww@macports.org
description The GNU compiler collection
long_description The GNU compiler collection, including front ends for C, \
C++, Objective-C, Objective-C++, Java and Fortran95.

homepage http://gcc.gnu.org/
master_sites ftp://ftp.funet.fi/pub/mirrors/sources.redhat.com/pub/gcc/releases/gcc-${version}/ \
ftp://ftp.nluug.nl/mirror/languages/gcc/releases/gcc-${version}/ \
ftp://ftp.gwdg.de/pub/linux/gcc/releases/gcc-${version}/ \
ftp://gcc.gnu.org/pub/gcc/releases/gcc-${version}/ \
gnu:/gcc/gcc-${version}

set dcore gcc-core-${version}.tar.bz2
set dfort gcc-fortran-${version}.tar.bz2
set dcxx gcc-g++-${version}.tar.bz2
set djava gcc-java-${version}.tar.bz2
set dobjc gcc-objc-${version}.tar.bz2
distfiles ${dcore} ${dfort} ${dcxx} ${djava} ${dobjc}

checksums ${dcore} sha1 d6875295f6df1bec4a6f4ab8f0da54bfb8d97306 \
${dfort} sha1 827ca3cba74ca50b2129fa707354af2ee1123d5d \
${dcxx} sha1 e29c6e151050f8b5ac5d680b99483df522606143 \
${djava} sha1 e83838428b83a6aa76ee6d8b3db1cbd4fdc383bc \
${dobjc} sha1 ea97dab0f7096d267eba17d53a861d15b519868a

use_bzip2 yes

depends_lib port:gmp port:mpfr port:libiconv

set major 4.1

worksrcdir build

pre-patch {
file mkdir ${worksrcpath}
}
patch.dir ${workpath}/gcc-${version}

configure.cmd ../gcc-${version}/configure
configure.args --enable-languages=c,c++,java,objc,obj-c++,fortran \
--libdir=${prefix}/lib/${name} \
--includedir=${prefix}/include/${name} \
--infodir=${prefix}/share/info \
--mandir=${prefix}/share/man \
--with-local-prefix=${prefix} \
--with-system-zlib \
--disable-multilib \
--disable-nls \
--program-suffix=-dp-${major} \
--with-gxx-include-dir=${prefix}/include/${name}/c++/ \
--with-gmp=${prefix} \
--with-mpfr=${prefix}

build.target profiledbootstrap

post-destroot {
cd ${destroot}${prefix}
file delete -force share/man/man7
file delete -force share/info
}

platform darwin 8 {
configure.env CC=/usr/bin/gcc-4.0 CPP=/usr/bin/cpp-4.0 CXX=/usr/bin/g++-4.0
}

platform darwin i386 {
patchfiles patch-darwin.h
}

platform powerpc {
post-destroot {
system "cd ${destroot}${prefix}/include/${name} && \
cp ../../lib/${name}/gcc/*/${version}/include/libffi/ffitarget.h ."
}
}

variant odcctools {
depends_lib-append bin:odas:odcctools
patch {
reinplace "s|/usr/bin/libtool|${prefix}/bin/odlibtool|g" \
${workpath}/gcc-${version}/gcc/config/darwin.h
}
configure.args-append --with-as=${prefix}/bin/odas \
--with-ld=${prefix}/bin/odld \
--with-ar=${prefix}/bin/odar
}

livecheck.check regex
livecheck.url http://gcc.gnu.org/gcc-4.1/
livecheck.regex GCC (4\\.1\\.\[0-9\])

files