71ed73b1b313e5efda823e0df68831ace830aa6a
[hdw-linux/hdw-linux.git] / packages / toolchain / gcc / gcc
1 # hdw - linux toolchain gcc package
2 #
3 # author: hackbard@hackdaworld.dyndns.org
4 #
5 # [V] 4.1.1
6 # [S] 0-1 0-4
7 # [D] gcc-4.1.1.tar.bz2 ftp://ftp.fu-berlin.de/unix/gnu/gcc/gcc-4.1.1/
8
9
10 extraver="-$ver"
11 [ "$ver" = "cvs" ] && extraver=""
12
13 confopt="$confopt --enable-shared --with-local-prefix=$prefix"
14 confopt="$confopt --libexecdir=$prefix/lib"
15
16 if [ "$priority" = "1" ] ; then
17         confopt="$confopt --enable-languages=c --disable-nls"
18
19         post_install()  {
20                 ln -sf gcc $prefix/bin/cc
21                         }
22 fi
23
24 if [ "$priority" = "4" ] ; then
25         confopt="$confopt --enable-clocale=gnu --enable-threads=posix"
26         confopt="$confopt --enable-__cxa_atexit --enable-languages=c,c++"
27         confopt="$confopt --disable-libstdcxx-pch"
28         make_conf=""
29
30         pre_install()   {
31                 echo "patching gcc specs now"
32                 for i in gcc/config/*/{pa-,}linux*.h; do
33                         echo "patching $i ..."
34                         mv $i $i.orig
35                 sed "s%-dynamic-linker /lib%-dynamic-linker $prefix/lib%g" \
36                         $i.orig > $i
37                 done
38                 # patch sysv4 entries
39                 for i in gcc/config/*/sysv4.h; do
40                         echo "patching $i ..."
41                         mv $i $i.orig
42                 sed "s%-dynamic-linker /lib%-dynamic-linker $prefix/lib%g" \
43                         $i.orig > $i
44                 done
45                 # sparc specific
46                 for i in gcc/config/sparc/linux*.h; do
47                         echo "patching $i ..."
48                         mv $i $i.orig
49                         sed "s%/usr/lib%$prefix/lib%g" $i.orig > $i
50                 done
51                 # general linux.h
52                 echo "patching gcc/config/linux.h ..."
53                 echo "#undef STANDARD_INCLUDE_DIR" >> gcc/config/linux.h
54                 echo "#define STANDARD_INCLUDE_DIR 0" >> gcc/config/linux.h
55                 # no fix includes
56         [ -f $hdw_home_dir/packages/base/gcc/no_fix_includes.patch ] && \
57         patch -Nfp1 < $hdw_home_dir/packages/base/gcc/no_fix_includes.patch
58                         }
59 fi
60
61 build_main()    {
62         mkdir -p ../gcc-build && cd ../gcc-build
63         ../gcc${extraver}/configure $confopt &&
64         make $make_conf &&
65         make install
66                 }