JF,
Okay. Untested gcc45-x86_64.info with a gcc45-compiler
splitoff. Still needs the libffi update-alternatives.
Jack
Info2: <<
Package: gcc45
Version: 4.5.0
Revision: 1001
Source: ftp://gcc.gnu.org/pub/gcc/releases/gcc-%v/gcc-%v.tar.bz2
Source-MD5: ff27b7c4a5d5060c8a8543a44abca31f
Source2: ftp://sourceware.org/pub/java/ecj-latest.jar
Source2-MD5: fd299f26c02268878b5d6c0e86f57c43
PatchFile: %n.patch
PatchFile-MD5: 8f46507fc8892e65cb23d0097bcd791d
Distribution: 10.5, 10.6
Type: -64bit .
Architecture: x86_64
NoSetCPPFLAGS: True
NoSetLDFLAGS: True
Conflicts: gcc42, gcc43, gcc44, gcc46
Replaces: gcc42, gcc43, gcc44, gcc46
Depends: gmp-shlibs (>= 4.3.1-1000), libgmpxx-shlibs (>= 4.3.1-1000),
libmpfr1-shlibs (>= 2.4.1-1), %N-compiler (>= %v-%r), libiconv,
libgettext8-shlibs, ppl-shlibs (>= 0.10.2-1), cloog-shlibs (>= 0.15.9-1),
libmpc2-shlibs (>= 0.8-1), xcode (>= 3.1.2)
BuildDepends: gmp (>= 4.3.1-1000), libmpfr1 (>= 2.4.1-1), libiconv-dev,
gettext-tools, libgettext8-dev, ppl (>= 0.10.2-1), cloog (>= 0.15.9-1), libmpc2
(>= 0.8-1), xcode (>= 3.1.2), fink (>= 0.27.2)
ConfigureParams: <<
--prefix=%p/lib/gcc4.5 --mandir=%p/share/man --infodir=%p/share/info
--enable-languages=c,c++,fortran,objc,obj-c++,java \
--with-gmp=%p --with-libiconv-prefix=%p --with-ppl=%p --with-cloog=%p
--with-mpc=%p --with-system-zlib \
--x-includes=/usr/X11R6/include --x-libraries=/usr/X11R6/lib
--program-suffix=-fsf-4.5
<<
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
../gcc-%v/configure %c
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/lib/gcc4.5/bin and new -fsf-4.5 naming in %p/bin.
binfiles="gcc g++ c++ cpp gcov"
for binfile in $binfiles ; do
ln -s %p/lib/gcc4.5/bin/$binfile-fsf-4.5 %i/lib/gcc4.5/bin/$binfile-4
ln -s %p/lib/gcc4.5/bin/$binfile-fsf-4.5 %i/bin/$binfile-4
ln -s %p/lib/gcc4.5/bin/$binfile-fsf-4.5 %i/bin/$binfile-fsf-4.5
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.5/bin/$binfile-fsf-4.5 %i/lib/gcc4.5/bin/$binfile
ln -s %p/lib/gcc4.5/bin/$binfile-fsf-4.5 %i/bin/$binfile
ln -s %p/lib/gcc4.5/bin/$binfile-fsf-4.5 %i/bin/$binfile-fsf-4.5
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.5.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.5.1 %i/share/man/man1/$man1file.1
done
man3files="ffi ffi_call ffi_prep_cif"
for man3file in $man3files ; do
ln -s %p/man/man3/$man3file-fsf-4.5.3 %i/share/man/man3/$man3file.3
done
# Rename manpages with -fsf-4.5 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.5.7
ln -s %p/share/man/man7/$man7file-fsf-4.5.7 %i/share/man/man7/$man7file.7
done
# Rename info files with -fsf-4.5 suffix.
infofiles="cp-tools cpp cppinternals gcc gccinstall gccint gcj gfortran
libgomp"
for infofile in $infofiles ; do
mv %i/share/info/$infofile.info %i/share/info/$infofile-fsf-4.5.info
done
# Add symlinks for info files under old names.
infofiles="cpp gcc"
for infofile in $infofiles ; do
ln -s %p/share/info/$infofile-fsf-4.5.info %i/share/info/$infofile-4.info
done
infofiles="cp-tools cppinternals gccinstall gccint gcj gfortran libgomp"
for infofile in $infofiles ; do
ln -s %p/share/info/$infofile-fsf-4.5.info %i/share/info/$infofile.info
done
cp %b/gcc/config/darwin-sections.def
%i/lib/gcc4.5/lib/gcc/%m-apple-darwin${darwinvers}/%v/plugin/include/config
# remove build path from .la files
perl -pi -e "s, \-L[^ ']*/%n-%v-%r/darwin_objdir/[^ ']*,,g" `find
%i/lib/gcc4.5/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.5/lib/libgfortran.3*.dylib
lib/gcc4.5/lib/libffi.4*.dylib
lib/gcc4.5/lib/libstdc++.6*.dylib
lib/gcc4.5/lib/libgcc_s.1*.dylib
lib/gcc4.5/lib/libgcc_ext.1*.dylib
lib/gcc4.5/lib/libgcj.11*.dylib
lib/gcc4.5/lib/libgcj-tools.11*.dylib
lib/gcc4.5/lib/libgij.11*.dylib
lib/gcc4.5/lib/libssp.0*.dylib
lib/gcc4.5/lib/libobjc-gnu.2*.dylib
lib/gcc4.5/lib/libgomp.1*.dylib
lib/gcc4.5/lib/gcj-4.5.0-11
lib/gcc4.5/lib/i386/libgfortran.3*.dylib
lib/gcc4.5/lib/i386/libffi.4*.dylib
lib/gcc4.5/lib/i386/libgcj.11*.dylib
lib/gcc4.5/lib/i386/libgcj-tools.11*.dylib
lib/gcc4.5/lib/i386/libgij.11*.dylib
lib/gcc4.5/lib/i386/libstdc++.6*.dylib
lib/gcc4.5/lib/i386/libssp.0*.dylib
lib/gcc4.5/lib/i386/libobjc-gnu.2*.dylib
lib/gcc4.5/lib/i386/libgomp.1*.dylib
lib/gcc4.5/lib/i386/gcj-4.5.0-11
<<
Shlibs: <<
%p/lib/gcc4.5/lib/libgfortran.3.dylib 4.0.0 %n (>= 4.3-20070711)
%p/lib/gcc4.5/lib/libffi.4.dylib 5.0.0 %n (>= 20050130-5)
%p/lib/gcc4.5/lib/libstdc++.6.dylib 7.0.0 %n (>= 4.1-1)
%p/lib/gcc4.5/lib/libgcc_s.1.dylib 1.0.0 %n (>= 4.1-1)
%p/lib/gcc4.5/lib/libgcj.11.dylib 12.0.0 %n (>= 4.1.999-20060915)
%p/lib/gcc4.5/lib/libgcj-tools.11.dylib 12.0.0 %n (>= 4.1.999-20060915)
%p/lib/gcc4.5/lib/libgij.11.dylib 12.0.0 %n (>= 4.1.999-20060915)
%p/lib/gcc4.5/lib/libssp.0.dylib 1.0.0 %n (>= 4.1-1)
%p/lib/gcc4.5/lib/libobjc-gnu.2.dylib 3.0.0 %n (>= 20050130-5)
%p/lib/gcc4.5/lib/libgomp.1.dylib 2.0.0 %n (>= 2:4.1.99-20060513)
%p/lib/gcc4.5/lib/gcj-4.5.0-11/libjvm.dylib 0.0.0 %n (>= 4.1-1)
%p/lib/gcc4.5/lib/i386/libgfortran.3.dylib 4.0.0 %n (>= 4.3-20070711) 32
%p/lib/gcc4.5/lib/i386/libffi.4.dylib 5.0.0 %n (>= 20050130-5) 32
%p/lib/gcc4.5/lib/i386/libgcj.11.dylib 12.0.0 %n (>= 4.1.999-20060915) 32
%p/lib/gcc4.5/lib/i386/libgcj-tools.11.dylib 12.0.0 %n (>=
4.1.999-20060915) 32
%p/lib/gcc4.5/lib/i386/libgij.11.dylib 12.0.0 %n (>= 4.1.999-20060915) 32
%p/lib/gcc4.5/lib/i386/libstdc++.6.dylib 7.0.0 %n (>= 4.1-1) 32
%p/lib/gcc4.5/lib/i386/libssp.0.dylib 1.0.0 %n (>= 4.1-1) 32
%p/lib/gcc4.5/lib/i386/libobjc-gnu.2.dylib 3.0.0 %n (>= 20050130-5) 32
%p/lib/gcc4.5/lib/i386/libgomp.1.dylib 2.0.0 %n (>= 2:4.1.99-20060513) 32
%p/lib/gcc4.5/lib/i386/gcj-4.5.0-11/libjvm.dylib 0.0.0 %n (>= 4.1-1) 32
<<
<<
SplitOff2: <<
Package: %N-compiler
Depends: %N-shlibs (>= %v-%r)
Description: Compiler Binaries for gcc45.
DocFiles: gcc/COPYING gcc/COPYING.LIB
Homepage: http://gcc.gnu.org/
Files: <<
bin/*-fsf-4.5
lib/gcc4.5
share/info/*-fsf-4.5.info
share/man/man*/*-fsf-4.5.*
<<
<<
License: GPL
Description: GNU Compiler Collection Version 4.5
InfoDocs: cp-tools-fsf-4.5.info cpp-fsf-4.5.info cppinternals-fsf-4.5.info
gcc-fsf-4.5.info gccinstall-fsf-4.5.info gccint-fsf-4.5.info gcj-fsf-4.5.info
gfortran-fsf-4.5.info libgomp-fsf-4.5.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: <<
Build with -fsf-4.5 suffix and move overlapping files into new gcc45-compiler
package which creates those as symlinks to the new program names. Original
program names are retained in gcc45 package with %p/lib/gcc4.5/bin.
<<
Homepage: http://gcc.gnu.org/
Maintainer: Jack Howarth <[email protected]>
<<
------------------------------------------------------------------------------
_______________________________________________
Fink-devel mailing list
[email protected]
http://news.gmane.org/gmane.os.apple.fink.devel
Subscription management:
https://lists.sourceforge.net/lists/listinfo/fink-devel