blob: 8eae9c8fc68a71cd597a551bbf1544a3251a6cf4 (
plain)
1 # URL: http://gcc.gnu.org/fortran
2 # Description: Fortran (f95) add-on for GNU GCC compiler.
3 # Maintainer: Danny Rawlins, monster dot romster at gmail dot com
4 # Packager: acrux, acrux at linuxmail dot org
5 # Depends on: libmpfr
6
7 name=gcc-fortran
8 version=4.4.2
9 release=1
10 source=(ftp://sources.redhat.com/pub/gcc/releases/gcc-$version/gcc-{core,fortran}-$version.tar.bz2
11 gcc-nocheck-fixincludes.patch test-demangle.c.diff)
12
13 build() {
14 patch -d gcc-$version -p 1 -i $SRC/gcc-nocheck-fixincludes.patch
15 patch -d gcc-$version -p 0 -i $SRC/test-demangle.c.diff
16
17 mkdir build
18 cd build
19
20 ../gcc-$version/configure \
21 --with-pkgversion="(CRUX)" \
22 --prefix=/usr \
23 --libexecdir=/usr/lib \
24 --enable-languages=fortran \
25 --enable-threads=posix \
26 --enable-__cxa_atexit \
27 --enable-clocale=gnu \
28 --enable-shared \
29 --disable-nls \
30 --with-x=no
31
32 if [ -n "$(pkginfo -i | grep '^ccache ')" ]; then
33 make STAGE_CC_WRAPPER='/usr/bin/ccache' BOOT_CFLAGS="$CFLAGS" bootstrap
34 elif [ -n "$(pkginfo -i | grep '^distcc ')" ]; then
35 make STAGE_CC_WRAPPER='/usr/bin/distcc' BOOT_CFLAGS="$CFLAGS" bootstrap
36 else
37 make BOOT_CFLAGS="$CFLAGS" bootstrap
38 fi
39
40 make -j 1 check
41 make -j 1 DESTDIR=$PKG install
42
43 ln -fs gfortran $PKG/usr/bin/f90
44 ln -fs gfortran $PKG/usr/bin/f95
45
46 # remove un-needed files
47 find $PKG -name 'README' -delete
48
49 rm \
50 $PKG/usr/lib/libiberty.a \
51 $PKG/usr/bin/*-linux-gnu-* \
52 $PKG/usr/man/man1/{cpp,gcc,gcov}.1
53
54 rm -r \
55 $PKG/usr/info \
56 $PKG/usr/man/man7 \
57 $PKG/usr/lib/gcc/*/$version/install-tools \
58 $PKG/usr/lib/gcc/*/$version/include-fixed \
59 $PKG/usr/lib/gcc/*/$version/include
60
61 # remove files already on the system out of the port
62 for i in $(pkginfo -l gcc | sed -e "s|^|/|"); do
63 if [ -e "$i" ] && [ ! -d "$i" ]; then
64 if [ -e "$PKG$i" ]; then
65 rm "$PKG$i"
66 fi
67 fi
68 done
69
70 # Remove empty directories
71 find $PKG -depth -empty -exec rm -r {} \;
72
73 # remove build paths from *.la files
74 for i in $(find $PKG -name '*.la' | sed -e "s|$PKG|/|"); do
75 sed -i "s|-L$SRC[^ ]* ||g" $PKG/$i
76 done
77 }
|