the Fink project is an effort to port
popular Unix programs to Mac OS X
Info2: <<
Package: gcc42
Version: 4.2.4
Revision: 1002
Source: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%v/gcc-%v.tar.bz2
Source-MD5: d79f553e7916ea21c556329eacfeaa16
Type: -64bit
Architecture: ( %type_raw[-64bit] = -64bit ) powerpc, ( %type_raw[-64bit] = -64bit ) i386
Distribution: 10.4, 10.5
NoSetCPPFLAGS: True
NoSetLDFLAGS: True
Conflicts: gcc4, gcc43, gcc44, gcc45
Replaces: gcc4, gcc43, gcc44, gcc45
Depends: gmp-shlibs (>= 4.2.1-1), libmpfr1-shlibs (>= 2.2.0-2), %N-shlibs (>= %v-%r), libiconv, libgettext3-shlibs, xcode (>= 2.5)
BuildDepends: gmp (>= 4.2.1-1), libmpfr1 (>= 2.2.0-2), libiconv-dev, gettext-tools, libgettext3-dev, xcode (>= 2.5), fink (>= 0.24.12)
ConfigureParams: <<
--prefix=%p/lib/gcc4.2 --mandir=%p/share/man --infodir=%p/share/info --enable-languages=c,c++,fortran,objc,java \
`cc -v 2>&1|grep '^Configured'|tr ' ' '\n'|egrep '^\-\-(with\-(arch|tune)|host)='|sed 's|--with-arch=apple|--with-arch=nocona|g'|xargs` \
--with-gmp=%p --with-libiconv-prefix=%p --with-system-zlib --x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/lib --disable-libjava-multilib
<<
PatchFile: %n.patch
PatchFile-MD5: b8508cc612a2c56462782155e62cb108
CompileScript: <<
#!/bin/sh -ev
ulimit -s `ulimit -s`
mkdir ../darwin_objdir
cd ../darwin_objdir
../gcc-%v/configure %c
make
## make check requires autogen, dejagnu and expect, and should be run, in darwin_objdir, after install.
## on 32-bit processors use
# make -k check
## on 64-bit processors use
# make -k check RUNTESTFLAGS="--target_board=unix'{-m32,-m64}'"
<<
InstallScript: <<
#!/bin/sh -ev
cd ../darwin_objdir
make install DESTDIR=%d
mkdir -p %i/bin
ln -s %p/lib/gcc4.2/bin/gfortran %i/bin/gfortran
ln -s %p/lib/gcc4.2/bin/gcc %i/bin/gcc-4
ln -s %p/lib/gcc4.2/bin/g++ %i/bin/g++-4
ln -s %p/lib/gcc4.2/bin/c++ %i/bin/c++-4
ln -s %p/lib/gcc4.2/bin/cpp %i/bin/cpp-4
ln -s %p/lib/gcc4.2/bin/gcov %i/bin/gcov-4
ln -s %p/lib/gcc4.2/bin/gcj %i/bin/gcj
ln -s %p/lib/gcc4.2/bin/gcj-dbtool %i/bin/gcj-dbtool
ln -s %p/lib/gcc4.2/bin/gcjh %i/bin/gcjh
ln -s %p/lib/gcc4.2/bin/gij %i/bin/gij
ln -s %p/lib/gcc4.2/bin/gjnih %i/bin/gjnih
ln -s %p/lib/gcc4.2/bin/grmiregistry %i/bin/grmiregistry
ln -s %p/lib/gcc4.2/bin/grmic %i/bin/grmic
ln -s %p/lib/gcc4.2/bin/jcf-dump %i/bin/jcf-dump
ln -s %p/lib/gcc4.2/bin/jv-convert %i/bin/jv-convert
ln -s %p/lib/gcc4.2/bin/jv-scan %i/bin/jv-scan
mv %i/share/info/cpp.info %i/share/info/cpp-4.info
mv %i/share/info/gcc.info %i/share/info/gcc-4.info
mv %i/share/man/man1/cpp.1 %i/share/man/man1/cpp-4.1
mv %i/share/man/man1/g++.1 %i/share/man/man1/g++-4.1
mv %i/share/man/man1/gcc.1 %i/share/man/man1/gcc-4.1
mv %i/share/man/man1/gcov.1 %i/share/man/man1/gcov-4.1
# remove build path from .la files
perl -pi -e "s, \-L[^ ']*/%n-%v-%r/darwin_objdir/[^ ']*,,g" `find %i/lib/gcc4.2/lib -name '*.la'`
<<
SplitOff: <<
Package: %N-shlibs
Replaces: gcc4 (<= 20050130-4), gfortran-shlibs
Provides: gfortran-shlibs
Description: Shared libraries for gcc4
DocFiles: gcc/COPYING gcc/COPYING.LIB
Homepage: http://gcc.gnu.org/
Files: <<
lib/gcc4.2/lib/libgfortran.2*.dylib
lib/gcc4.2/lib/libffi.4*.dylib
lib/gcc4.2/lib/libstdc++.6*.dylib
lib/gcc4.2/lib/libgcc_s.1*.dylib
lib/gcc4.2/lib/libgcj.8*.dylib
lib/gcc4.2/lib/libgcj-tools.8*.dylib
lib/gcc4.2/lib/libgij.8*.dylib
lib/gcc4.2/lib/libssp.0*.dylib
lib/gcc4.2/lib/libobjc-gnu.2*.dylib
lib/gcc4.2/lib/libgomp.1*.dylib
lib/gcc4.2/lib/gcj-%v
lib/gcc4.2/%lib/libgfortran.2*.dylib
lib/gcc4.2/%lib/libstdc++.6*.dylib
lib/gcc4.2/%lib/libssp.0*.dylib
lib/gcc4.2/%lib/libobjc-gnu.2*.dylib
lib/gcc4.2/%lib/libgomp.1*.dylib
lib/gcc4.2/%lib/libffi.4*.dylib
<<
Shlibs: <<
%p/lib/gcc4.2/lib/libgfortran.2.dylib 3.0.0 %n (>= 4.1.999-20060915) 32
%p/lib/gcc4.2/lib/libffi.4.dylib 5.0.0 %n (>= 20050130-5) 32
%p/lib/gcc4.2/lib/libstdc++.6.dylib 7.0.0 %n (>= 4.1-1) 32
%p/lib/gcc4.2/lib/libgcc_s.1.dylib 1.0.0 %n (>= 4.1-1) 32-64
%p/lib/gcc4.2/lib/libgcj.8.dylib 9.0.0 %n (>= 4.1.999-20060915) 32
%p/lib/gcc4.2/lib/libgcj-tools.8.dylib 9.0.0 %n (>= 4.1.999-20060915) 32
%p/lib/gcc4.2/lib/libgij.8.dylib 9.0.0 %n (>= 4.1.999-20060915) 32
%p/lib/gcc4.2/lib/libssp.0.dylib 1.0.0 %n (>= 4.1-1) 32
%p/lib/gcc4.2/lib/libobjc-gnu.2.dylib 3.0.0 %n (>= 20050130-5) 32
%p/lib/gcc4.2/lib/libgomp.1.dylib 2.0.0 %n (>= 2:4.1.99-20060513) 32
%p/lib/gcc4.2/lib/gcj-4.2.4/libjvm.dylib 0.0.0 %n (>= 4.1-1) 32
%p/lib/gcc4.2/%lib/libgfortran.2.dylib 3.0.0 %n (>= 4.1.999-20060915) 64
%p/lib/gcc4.2/%lib/libstdc++.6.dylib 7.0.0 %n (>= 4.1-1) 64
%p/lib/gcc4.2/%lib/libssp.0.dylib 1.0.0 %n (>= 4.1-1) 64
%p/lib/gcc4.2/%lib/libobjc-gnu.2.dylib 3.0.0 %n (>= 20050130-5) 64
%p/lib/gcc4.2/%lib/libgomp.1.dylib 2.0.0 %n (>= 2:4.1.99-20060513) 64
%p/lib/gcc4.2/%lib/libffi.4.dylib 5.0.0 %n (>= 20050130-5) 64
<<
<<
License: GPL
Description: GNU Compiler Collection Version 4.2
InfoDocs: cpp-4.info cppinternals.info gcc-4.info gccinstall.info gccint.info gcj.info gfortran.info
DescDetail: <<
GCC, the GNU Compiler Collection, includes front ends for
C, C++, Objective-C, Objective-C++, Fortran, Java, and Ada.
.
C, C++, Objective C and Fortran and Java are included in this package.
.
The C and C++ compilers are named gcc-4 and g++-4 to avoid
conflicts with gcc and g++ installed by the Apple Developer Tools
<<
DescPackaging: <<
The multilib builds of boehm-gc, libffi and libjava are disabled
since the 64-bit support is incomplete on Darwin for those libraries.
The use of odcctools has been removed and replaced with a BuildDepends
and Depends on the gcc version from Xcode 2.4.1.
<<
Homepage: http://gcc.gnu.org/
Maintainer: None
<<
--- gcc-4.2.0/libgomp/testsuite/libgomp.c++/pr30703.C.org 2007-02-07 08:37:29.000000000 -0500
+++ gcc-4.2.0/libgomp/testsuite/libgomp.c++/pr30703.C 2007-05-17 19:48:03.000000000 -0400
@@ -1,5 +1,6 @@
// PR c++/30703
// { dg-do run }
+// { dg-options "-shared-libgcc" { target *-*-darwin* } }
#include
--- gcc-4.2-20060822/gcc/testsuite/lib/prune.exp.org 2006-08-23 18:33:56.000000000 -0400
+++ gcc-4.2-20060822/gcc/testsuite/lib/prune.exp 2006-08-23 18:41:28.000000000 -0400
@@ -43,6 +43,7 @@
regsub -all "(^|\n)\[^\n\]*file path prefix \[^\n\]* never used" $text "" text
regsub -all "(^|\n)\[^\n\]*linker input file unused since linking not done" $text "" text
+ regsub -all "(^|\n)can't find atom for N_GSYM stabs \[^\n\]* in \[^\n\]*" $text "" text
#send_user "After:$text\n"
return $text
--- gcc-4.2-20060825/libstdc++-v3/testsuite/lib/prune.exp.org 2006-08-26 11:22:52.000000000 -0400
+++ gcc-4.2-20060825/libstdc++-v3/testsuite/lib/prune.exp 2006-08-26 11:23:39.000000000 -0400
@@ -29,5 +29,7 @@
regsub -all "(^|\n)\[^\n\]*: Additional NOP may be necessary to workaround Itanium processor A/B step errata" $text "" text
regsub -all "(^|\n)\[^\n*\]*: Assembler messages:\[^\n\]*" $text "" text
+ regsub -all "(^|\n)can't find atom for N_GSYM stabs \[^\n\]* in \[^\n\]*" $text "" text
+
return $text
}
--- gcc-4.2.4/libjava/configure.orig 2008-05-19 10:28:07.000000000 -0400
+++ gcc-4.2.4/libjava/configure 2009-08-01 17:28:43.000000000 -0400
@@ -859,6 +859,7 @@
--enable-dependency-tracking do not reject slow dependency extractors
--enable-maintainer-mode enable make rules and dependencies not useful
(and sometimes confusing) to the casual installer
+ --enable-libjava-multilib build libjava as multilib
--enable-libgcj-debug enable runtime debugging code
--enable-java-awt list of AWT peer implementations to be built
--enable-shared=PKGS build shared libraries default=yes
@@ -1662,6 +1663,16 @@
fi;
+# Check whether --enable-libjava-multilib was given.
+if test "${enable_libjava_multilib+set}" = set; then
+ enableval=$enable_libjava_multilib;
+fi
+
+if test "$enable_libjava_multilib" = no; then
+ multilib=no
+ ac_configure_args="$ac_configure_args --disable-multilib"
+fi
+
# It may not be safe to run linking tests in AC_PROG_CC/AC_PROG_CXX.
--- gcc-4.2.4/libjava/configure.ac.orig 2007-07-23 08:54:02.000000000 -0400
+++ gcc-4.2.4/libjava/configure.ac 2009-08-01 17:25:02.000000000 -0400
@@ -77,6 +77,13 @@
[gconf_enabled=no]
)
+AC_ARG_ENABLE(libjava-multilib,
+ AS_HELP_STRING([--enable-libjava-multilib], [build libjava as multilib]))
+if test "$enable_libjava_multilib" = no; then
+ multilib=no
+ ac_configure_args="$ac_configure_args --disable-multilib"
+fi
+
# It may not be safe to run linking tests in AC_PROG_CC/AC_PROG_CXX.
GCC_NO_EXECUTABLES