the Fink project is an effort to port
popular Unix programs to Mac OS X
Info2: <<
Package: gcc43
Version: 4.3.5
Revision: 1001
Source: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%v/gcc-%v.tar.bz2
Source-MD5: e588cfde3bf323f82918589b94f14a15
Source2: ftp://sourceware.org/pub/java/ecj-latest.jar
Source2-MD5: fd299f26c02268878b5d6c0e86f57c43
PatchFile: %n.patch
PatchFile-MD5: d2670aa8d5fe01e4eb8b3fc541120502
Distribution: 10.4, 10.5
Type: -64bit -64bit
Architecture: powerpc, i386
NoSetCPPFLAGS: True
NoSetLDFLAGS: True
Conflicts: gcc42, gcc44, gcc45, gcc46
Replaces: gcc42, gcc44, gcc45, gcc46
Depends: %N-compiler (= %v-%r)
BuildDepends: gmp (>= 4.3.2-1), libmpfr1 (>= 2.4.2-2), libiconv-dev, gettext-tools, libgettext8-dev, xcode (>= 2.5), fink (>= 0.27.2)
ConfigureParams: <<
--prefix=%p/lib/gcc4.3 --mandir=%p/share/man --infodir=%p/lib/gcc4.3/info --enable-languages=c,c++,fortran,objc,obj-c++,java \
--with-gmp=%p --with-libiconv-prefix=%p --with-system-zlib --x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/lib \
--program-suffix=-fsf-4.3 --disable-libjava-multilib
<<
InfoTest: <<
TestDepends: autogen, dejagnu
TestScript: cd ../darwin_objdir; make -k check || :
<<
InfoDocs: cp-tools.info gcc.info gfortran.info cpp.info gccinstall.info libgomp.info cppinternals.info gccint.info gcj.info
CompileScript: <<
#!/bin/bash -ev
set +x
if [ -e /usr/local/lib/libgmp.a ] || [ -e /usr/local/lib/libgmp.dylib ]; then
echo "-----WARNING-----WARNING-----WARNING-----"
echo "You seem to have GMP installed in /usr/local."
echo "This is known to cause %N to fail to build."
echo "Please move aside /usr/local and try again."
echo "-----WARNING-----WARNING-----WARNING-----"
exit 1
fi
set -x
ulimit -s `ulimit -s`
mv ../ecj-latest.jar ecj.jar
mkdir ../darwin_objdir
cd ../darwin_objdir
darwinvers=`uname -r|cut -f1 -d.`
if [ "%m" = "powerpc" ]; then
../gcc-%v/configure %c --build=%m-apple-darwin${darwinvers} --host=%m-apple-darwin${darwinvers} --target=%m-apple-darwin${darwinvers}
else
../gcc-%v/configure %c --with-arch=nocona --with-tune=generic --build=i686-apple-darwin${darwinvers} --host=i686-apple-darwin${darwinvers} --target=i686-apple-darwin${darwinvers}
fi
num_cpu=$(echo `sysctl -n hw.ncpu`)
make -j $num_cpu
## 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
darwinvers=`uname -r`
cd ../darwin_objdir
make install DESTDIR=%d
mkdir -p %i/bin
# Add symlinks to recreate previous naming of executables in %p/bin
# as well as %p/lib/gcc4.3/bin and new -fsf-4.3 naming in %p/bin.
binfiles="gcc g++ c++ cpp gcov"
for binfile in $binfiles ; do
ln -s %p/lib/gcc4.3/bin/$binfile-fsf-4.3 %i/lib/gcc4.3/bin/$binfile-4
ln -s %p/lib/gcc4.3/bin/$binfile-fsf-4.3 %i/bin/$binfile-4
ln -s %p/lib/gcc4.3/bin/$binfile-fsf-4.3 %i/bin/$binfile-fsf-4.3
done
binfiles="gfortran gcj gcj-dbtool gcjh gij gjnih grmiregistry grmic jcf-dump jv-convert jv-scan"
for binfile in $binfiles ; do
ln -s %p/lib/gcc4.3/bin/$binfile-fsf-4.3 %i/lib/gcc4.3/bin/$binfile
ln -s %p/lib/gcc4.3/bin/$binfile-fsf-4.3 %i/bin/$binfile
ln -s %p/lib/gcc4.3/bin/$binfile-fsf-4.3 %i/bin/$binfile-fsf-4.3
done
# Add symlinks for manpages under old names.
man1files="cpp g++ gcc gcov"
for man1file in $man1files ; do
ln -s %p/share/man/man1/$man1file-fsf-4.3.1 %i/share/man/man1/$man1file-4.1
done
man1files="aot-compile gappletviewer gc-analyze gcj-dbtool gcj gcjh gfortran gij gjar gjarsigner gjavah gjdoc gkeytool gnative2ascii gorbd grmic grmid grmiregistry gserialver gtnameserv jcf-dump jv-convert rebuild-gcj-db"
for man1file in $man1files ; do
ln -s %p/share/man/man1/$man1file-fsf-4.3.1 %i/share/man/man1/$man1file.1
done
# Rename manpages with -fsf-4.3 suffix and create symlinks to old names.
man7files="fsf-funding gfdl gpl"
for man7file in $man7files ; do
mv %i/share/man/man7/$man7file.7 %i/share/man/man7/$man7file-fsf-4.3.7
ln -s %p/share/man/man7/$man7file-fsf-4.3.7 %i/share/man/man7/$man7file.7
done
# Add dir for installed info files, and link them to %i/share/info.
# the %i/lib/gcc4.3/info/* files will go into the -compiler package
# and the files in %i/share/info go into the main package, this allows
# the info files for specific compiler versions to be accessed with
# e.g. `info -d /fink_install_dir/lib/gcc4.3/info gcc', but the "main" info files will
# be available for the install gcc4N package in %p/share/info, as usual
install -d -m 755 %i/share/info
for infofile in $(find %i/lib/gcc4.3/info -name '*.info*'); do
infobase=$(basename $infofile)
case $infofile in
*info) /usr/bin/install-info --infodir=%i/lib/gcc4.3/info ${infofile} ;;
esac
ln -s %p/lib/gcc4.3/info/$infobase %i/share/info/$infobase
done
# remove build path from .la files
perl -pi -e "s, \-L[^ ']*/%n-%v-%r/darwin_objdir/[^ ']*,,g" `find %i/lib/gcc4.3/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.3/lib/libgfortran.3*.dylib
lib/gcc4.3/lib/libffi.4*.dylib
lib/gcc4.3/lib/libstdc++.6*.dylib
lib/gcc4.3/lib/libgcc_s.1*.dylib
lib/gcc4.3/lib/libgcj.9*.dylib
lib/gcc4.3/lib/libgcj-tools.9*.dylib
lib/gcc4.3/lib/libgij.9*.dylib
lib/gcc4.3/lib/libssp.0*.dylib
lib/gcc4.3/lib/libobjc-gnu.2*.dylib
lib/gcc4.3/lib/libgomp.1*.dylib
lib/gcc4.3/lib/gcj-4.3.5-9
lib/gcc4.3/%lib/libgfortran.3*.dylib
lib/gcc4.3/%lib/libffi.4*.dylib
lib/gcc4.3/%lib/libstdc++.6*.dylib
lib/gcc4.3/%lib/libssp.0*.dylib
lib/gcc4.3/%lib/libobjc-gnu.2*.dylib
lib/gcc4.3/%lib/libgomp.1*.dylib
<<
Shlibs: <<
%p/lib/gcc4.3/lib/libgfortran.3.dylib 4.0.0 %n (>= 4.3-1)
%p/lib/gcc4.3/lib/libffi.4.dylib 5.0.0 %n (>= 4.3-1)
%p/lib/gcc4.3/lib/libstdc++.6.dylib 7.0.0 %n (>= 4.3-1)
%p/lib/gcc4.3/lib/libgcc_s.1.dylib 1.0.0 %n (>= 4.3-1)
%p/lib/gcc4.3/lib/libgcj.9.dylib 10.0.0 %n (>= 4.3-1)
%p/lib/gcc4.3/lib/libgcj-tools.9.dylib 10.0.0 %n (>= 4.3-1)
%p/lib/gcc4.3/lib/libgij.9.dylib 10.0.0 %n (>= 4.3-1)
%p/lib/gcc4.3/lib/libssp.0.dylib 1.0.0 %n (>= 4.3-1)
%p/lib/gcc4.3/lib/libobjc-gnu.2.dylib 3.0.0 %n (>= 4.3-1)
%p/lib/gcc4.3/lib/libgomp.1.dylib 2.0.0 %n (>= 4.3-1)
%p/lib/gcc4.3/lib/gcj-4.3.5-9/libjvm.dylib 0.0.0 %n (>= 4.3-1)
%p/lib/gcc4.3/%lib/libgfortran.3.dylib 4.0.0 %n (>= 4.3-1) 64
%p/lib/gcc4.3/%lib/libffi.4.dylib 5.0.0 %n (>= 4.3-1) 64
%p/lib/gcc4.3/%lib/libstdc++.6.dylib 7.0.0 %n (>= 4.3-1) 64
%p/lib/gcc4.3/%lib/libssp.0.dylib 1.0.0 %n (>= 4.3-1) 64
%p/lib/gcc4.3/%lib/libobjc-gnu.2.dylib 3.0.0 %n (>= 4.3-1) 64
%p/lib/gcc4.3/%lib/libgomp.1.dylib 2.0.0 %n (>= 4.3-1) 64
<<
<<
SplitOff2: <<
Package: %N-compiler
Depends: gmp-shlibs (>= 4.3.2-1), libgmpxx-shlibs (>= 4.3.2-1), libmpfr1-shlibs (>= 2.4.2-2), %N-shlibs (= %v-%r), libiconv, libgettext8-shlibs, xcode (>= 2.5)
Description: Compiler Binaries for gcc43.
DocFiles: gcc/COPYING gcc/COPYING.LIB
Homepage: http://gcc.gnu.org/
Files: <<
bin/*-fsf-4.3
lib/gcc4.3
share/man/man1/*-fsf-4.3.1
share/man/man7/*-fsf-4.3.7
<<
<<
License: GPL
Description: GNU Compiler Collection Version 4.3
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 build of libjava is disabled.
Build with -fsf-4.3 suffix and place non-overlapping files into new gcc43-compiler
package which can co-exist with other gcc4x-compiler packages. Overlapping files
are left in main gcc43 package which still conflicts with other gcc4x packages.
<<
Homepage: http://gcc.gnu.org/
Maintainer: Jack Howarth
<<
--- gcc/libjava/configure.ac.org 2008-01-25 18:55:24.000000000 -0500
+++ gcc/libjava/configure.ac 2008-01-25 18:56:16.000000000 -0500
@@ -82,6 +82,13 @@
[allow rebuilding of .class and .h files]))
AM_CONDITIONAL(JAVA_MAINTAINER_MODE, test "$enable_java_maintainer_mode" = yes)
+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
--- gcc/libjava/configure.org 2008-01-25 18:56:41.000000000 -0500
+++ gcc/libjava/configure 2008-01-25 18:57:21.000000000 -0500
@@ -1018,6 +1018,8 @@
--enable-gconf-peer compile GConf native peers for util.preferences
--enable-java-maintainer-mode
allow rebuilding of .class and .h files
+ --enable-libjava-multilib
+ build libjava as multilib
--disable-dependency-tracking speeds up one-time build
--enable-dependency-tracking do not reject slow dependency extractors
--enable-maintainer-mode enable make rules and dependencies not useful
@@ -1850,6 +1852,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.