summaryrefslogtreecommitdiff
path: root/cross/cross-mips64el-unknown-linux-gnu-gcc-core-shared/PKGBUILD
blob: 3c61dbfca32c33c04fca5b159705d879f91eb6e8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
# Contributor: Nicolás Reynolds <fauno@parabola.nu>
# Contributor (mipsel): Vojtech Horky <vojta . horky at-symbol seznam . cz>
# This package is used to bootstrap a cross glibc and full featured cross gcc
# Change the following variables to match your target
_pkgname=gcc
_target="mips64el-unknown-linux-gnu"
_sysroot="/usr/${_target}"
_ARCH=mips

unset LDFLAGS CFLAGS CXXFLAGS

pkgname=cross-${_target}-gcc-core-shared
pkgver=4.6.2
pkgrel=8
pkgdesc="The GNU Compiler Collection for the MIPS/Loongson2f architecture (shared version)"
url="http://www.gnu.org/software/binutils/"
arch=('i686' 'x86_64')
license=('GPL')
depends=('libmpc' 'sh' "cross-${_target}-binutils" 'cloog' 'ppl')
makedepends=("cross-${_target}-glibc-headers"
             "cross-${_target}-gcc-core")
options=('!ccache' '!distcc' '!emptydirs' '!libtool' '!strip')
source=("ftp://ftp.gnu.org/gnu/gcc/gcc-${pkgver}/${_pkgname}-${pkgver}.tar.bz2")
md5sums=('028115c4fbfb6cfd75d6369f4a90d87e')

build() {
  cd ${srcdir}
  mkdir gcc-build && cd gcc-build
  mkdir ${_target}

  Copy headers for libgcc2
  cp -av /usr/${_target}/usr/include ${_target}/include

    CC_FOR_BUILD=${CHOST}-gcc \
    CFLAGS=" -pipe " \
    LDFLAGS= \
    ${srcdir}/${_pkgname}-${pkgver}/configure \
        --build=${CHOST} \
        --host=${CHOST} \
        --target=${_target} \
        --prefix=/usr \
        --with-local-prefix=${_sysroot} \
        --disable-multilib \
        --disable-libmudflap \
        --with-sysroot=${_sysroot} \
        --enable-shared \
        --with-arch=loongson2f \
        --with-abi=n32 \
        --enable-__cxa_atexit \
        --with-gmp \
        --with-mpfr \
        --with-mpc \
        --with-ppl \
        --enable-cloog-backend=isl \
        --with-libelf \
        --enable-lto \
        --with-host-libstdcxx="-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm -lpwl" \
        --enable-target-optspace \
        --disable-libgomp \
        --disable-libmudflap \
        --disable-nls \
        --enable-languages=c

    msg2 "Configuring gcc and libgcc"
    make ${MAKEFLAGS} configure-gcc configure-libcpp configure-build-libiberty

    msg2 "Making libcpp and libiberty"
    make ${MAKEFLAGS} all-libcpp all-build-libiberty

    msg2 "Configuring libdecnumber"
    make ${MAKEFLAGS} configure-libdecnumber

    msg2 "Making libdecnumber"
    make ${MAKEFLAGS} -C libdecnumber libdecnumber.a 

    msg2 "Making mvars"
    make ${MAKEFLAGS} -C gcc libgcc.mvars

# Remove -lc since we don't have it yet
    sed -r -i -e 's@-lc@@g' gcc/libgcc.mvars

    msg2 "Making gcc and libgcc"
    make ${MAKEFLAGS} all-gcc all-target-libgcc
}

package() {
	cd ${srcdir}/${_pkgname}-build
	
	make ${MAKEFLAGS} DESTDIR=${pkgdir} install-gcc install-target-libgcc

    rm -r ${pkgdir}/usr/share
}