| 1 |
# -*- coding: utf-8; mode: tcl; tab-width: 4; truncate-lines: t; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:et:sw=4:ts=4:sts=4 |
|---|
| 2 |
# $Id$ |
|---|
| 3 |
|
|---|
| 4 |
PortSystem 1.0 |
|---|
| 5 |
|
|---|
| 6 |
name gcc43 |
|---|
| 7 |
version 4.3.1 |
|---|
| 8 |
revision 1 |
|---|
| 9 |
platforms darwin |
|---|
| 10 |
categories lang |
|---|
| 11 |
maintainers mww |
|---|
| 12 |
description The GNU compiler collection |
|---|
| 13 |
long_description The GNU compiler collection, including front ends for \ |
|---|
| 14 |
C, C++, Objective-C, Objective-C++, Java and Fortran95. |
|---|
| 15 |
|
|---|
| 16 |
homepage http://gcc.gnu.org/ |
|---|
| 17 |
master_sites ftp://ftp.funet.fi/pub/mirrors/sources.redhat.com/pub/gcc/releases/gcc-${version}/ \ |
|---|
| 18 |
ftp://ftp.gwdg.de/pub/linux/gcc/releases/gcc-${version}/ \ |
|---|
| 19 |
ftp://gcc.ftp.nluug.nl/mirror/languages/gcc/releases/gcc-${version}/ \ |
|---|
| 20 |
ftp://gcc.gnu.org/pub/gcc/releases/gcc-${version}/ \ |
|---|
| 21 |
gnu:/gcc/gcc-${version} |
|---|
| 22 |
|
|---|
| 23 |
set dcore gcc-core-${version}.tar.bz2 |
|---|
| 24 |
set dfort gcc-fortran-${version}.tar.bz2 |
|---|
| 25 |
set dcxx gcc-g++-${version}.tar.bz2 |
|---|
| 26 |
set djava gcc-java-${version}.tar.bz2 |
|---|
| 27 |
set dobjc gcc-objc-${version}.tar.bz2 |
|---|
| 28 |
distfiles ${dcore} ${dfort} ${dcxx} ${djava} ${dobjc} |
|---|
| 29 |
|
|---|
| 30 |
checksums ${dcore} sha1 2d47e33344b7978a59af04885c1d3947c3dc360e \ |
|---|
| 31 |
${dfort} sha1 9cdd7eb07784d66bf78d687b8f50b5cc66ea4cca \ |
|---|
| 32 |
${dcxx} sha1 3d29de4077a9deeb1de512321c7961b7b97513c5 \ |
|---|
| 33 |
${djava} sha1 91f32153b9a6628ae920a723153011bd70515af1 \ |
|---|
| 34 |
${dobjc} sha1 351e251040e0437ab6651f43a665d0ffdf24ee9c |
|---|
| 35 |
|
|---|
| 36 |
use_bzip2 yes |
|---|
| 37 |
|
|---|
| 38 |
depends_lib port:gmp port:mpfr port:libiconv |
|---|
| 39 |
|
|---|
| 40 |
set major 4.3 |
|---|
| 41 |
|
|---|
| 42 |
worksrcdir build |
|---|
| 43 |
|
|---|
| 44 |
pre-configure { |
|---|
| 45 |
file mkdir ${worksrcpath} |
|---|
| 46 |
} |
|---|
| 47 |
|
|---|
| 48 |
configure.cmd ../gcc-${version}/configure |
|---|
| 49 |
configure.args --enable-languages=c,c++,objc,obj-c++,java,fortran \ |
|---|
| 50 |
--libdir=${prefix}/lib/${name} \ |
|---|
| 51 |
--includedir=${prefix}/include/${name} \ |
|---|
| 52 |
--infodir=${prefix}/share/info \ |
|---|
| 53 |
--mandir=${prefix}/share/man \ |
|---|
| 54 |
--with-local-prefix=${prefix} \ |
|---|
| 55 |
--with-system-zlib \ |
|---|
| 56 |
--disable-nls \ |
|---|
| 57 |
--program-suffix=-mp-${major} \ |
|---|
| 58 |
--with-gxx-include-dir=${prefix}/include/${name}/c++/ \ |
|---|
| 59 |
--with-gmp=${prefix} \ |
|---|
| 60 |
--with-mpfr=${prefix} |
|---|
| 61 |
# do NOT use MacPorts binutils -- they do not work |
|---|
| 62 |
configure.env-append AR_FOR_TARGET=/usr/bin/ar \ |
|---|
| 63 |
AS_FOR_TARGET=/usr/bin/as \ |
|---|
| 64 |
LD_FOR_TARGET=/usr/bin/ld \ |
|---|
| 65 |
NM_FOR_TARGET=/usr/bin/nm \ |
|---|
| 66 |
OBJDUMP_FOR_TARGET=/usr/bin/objdump \ |
|---|
| 67 |
RANLIB_FOR_TARGET=/usr/bin/ranlib \ |
|---|
| 68 |
STRIP_FOR_TARGET=/usr/bin/strip |
|---|
| 69 |
|
|---|
| 70 |
use_parallel_build yes |
|---|
| 71 |
|
|---|
| 72 |
destroot.target install install-info-host |
|---|
| 73 |
# install-info # errors on objc-info files |
|---|
| 74 |
|
|---|
| 75 |
post-destroot { |
|---|
| 76 |
# move manuals to gcc43-specific directory |
|---|
| 77 |
xinstall -m 755 -d ${destroot}${prefix}/share/gcc43/man/man7 |
|---|
| 78 |
xinstall -m 755 -d ${destroot}${prefix}/share/gcc43/info |
|---|
| 79 |
eval xinstall -m 0644 [glob ${destroot}${prefix}/share/man/man7/*] ${destroot}${prefix}/share/gcc43/man/man7 |
|---|
| 80 |
eval xinstall -m 0644 [glob ${destroot}${prefix}/share/info/*] ${destroot}${prefix}/share/gcc43/info |
|---|
| 81 |
# install/copy ffitarget.h only if we have it |
|---|
| 82 |
if {![catch {set ffitarget.h [glob ${destroot}${prefix}/lib/${name}/gcc/*/${version}/include/ffitarget.h]} result]} { |
|---|
| 83 |
file copy ${ffitarget.h} ${destroot}${prefix}/include/${name}/ |
|---|
| 84 |
} |
|---|
| 85 |
# install select file for gcc_select |
|---|
| 86 |
xinstall -m 755 -d ${destroot}${prefix}/etc/select/gcc |
|---|
| 87 |
xinstall -m 444 ${filespath}/mp-gcc43 ${destroot}${prefix}/etc/select/gcc/ |
|---|
| 88 |
} |
|---|
| 89 |
|
|---|
| 90 |
#platform darwin 7 { |
|---|
| 91 |
# configure.cflags-append -force_cpusubtype_ALL |
|---|
| 92 |
# configure.env BOOT_CFLAGS="-g -O2 -force_cpusubtype_ALL" |
|---|
| 93 |
# build.args-append XCFLAGS=-force_cpusubtype_ALL |
|---|
| 94 |
#} |
|---|
| 95 |
|
|---|
| 96 |
platform powerpc { |
|---|
| 97 |
configure.args-append --disable-multilib |
|---|
| 98 |
} |
|---|
| 99 |
|
|---|
| 100 |
# Java support does not compile on 10.4 |
|---|
| 101 |
platform darwin 8 { |
|---|
| 102 |
configure.args-delete --enable-languages=c,c++,objc,obj-c++,java,fortran |
|---|
| 103 |
configure.args-append --enable-languages=c,c++,objc,obj-c++,fortran |
|---|
| 104 |
} |
|---|
| 105 |
# odcctools currently do not compile for x64 - move to variant for the time being |
|---|
| 106 |
#variant odcctools \ |
|---|
| 107 |
# description "Use the odcctools instead of the system provided ones - does not work for x64 currently!" { |
|---|
| 108 |
# depends_lib-append port:odcctools |
|---|
| 109 |
# patch { |
|---|
| 110 |
# reinplace "s|/usr/bin/libtool|${prefix}/bin/odlibtool|g" \ |
|---|
| 111 |
# ${workpath}/gcc-${version}/gcc/config/darwin.h |
|---|
| 112 |
# } |
|---|
| 113 |
# configure.args-append --with-as=${prefix}/bin/odas \ |
|---|
| 114 |
# --with-ld=${prefix}/bin/odld \ |
|---|
| 115 |
# --with-ar=${prefix}/bin/odar |
|---|
| 116 |
#} |
|---|
| 117 |
|
|---|
| 118 |
livecheck.check regex |
|---|
| 119 |
livecheck.url http://gcc.gnu.org/gcc-4.3/ |
|---|
| 120 |
livecheck.regex GCC (4\\.3\\.\[0-9\]) |
|---|
| 121 |
|
|---|