summaryrefslogtreecommitdiffstats
path: root/main/gcc/APKBUILD
blob: 03d48edaedaaefd69751ff106937755cca1060b6 (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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=gcc
pkgver=4.8.1
_piepatchver=0.5.6
_specs_ver=0.2.0
_specs_gcc_ver=4.4.3

_uclibc_abiver=0.9.32

pkgrel=2
pkgdesc="The GNU Compiler Collection"
url="http://gcc.gnu.org"
arch="all"
license="GPL LGPL"
_gccrel=$pkgver-r$pkgrel
depends="binutils libgomp=$_gccrel"
makedepends="bison flex gmp-dev mpfr-dev texinfo mpc1-dev gawk zlib-dev zip
	cloog-dev !libiconv-dev !gettext-dev"
subpackages="$pkgname-doc libgcc libgomp libstdc++:libcxx g++:gpp"
replaces="libstdc++"

: ${LANG_OBJC:=true}
: ${LANG_JAVA:=true}
: ${LANG_GO:=true}
: ${LANG_FORTRAN:=true}
: ${LANG_ADA:=true}

if [ "$CBUILD" != "$CHOST" ]; then
	# fixup flags. seems gcc treats CPPFLAGS as global without
	# _FOR_xxx variants. wrap it in CFLAGS and CXXFLAGS.
	export CFLAGS="$CPPFLAGS $CFLAGS"
	export CXXFLAGS="$CPPFLAGS $CXXFLAGS"
	unset CPPFLAGS

	# reset flags and cc for build
	export CC_FOR_BUILD="gcc"
	export CXX_FOR_BUILD="g++"
	export CFLAGS_FOR_BUILD=" "
	export CXXFLAGS_FOR_BUILD=" "
	export LDFLAGS_FOR_BUILD=" "

	LANG_OBJC=false
	LANG_JAVA=false
	LANG_GO=false
	LANG_FORTRAN=false
	# ada needs bootstrapping
	LANG_ADA=true
fi

_languages=c,c++
if $LANG_OBJC; then
	subpackages="$subpackages libobjc $pkgname-objc"
	_languages="$_languages,objc"
fi
if $LANG_JAVA; then
	subpackages="$subpackages libgcj $pkgname-java"
	makedepends="$makedepends paxctl"
	_languages="$_languages,java"
fi
if $LANG_GO; then
	subpackages="$subpackages libgo $pkgname-go"
	_languages="$_languages,go"
fi
if $LANG_FORTRAN; then
	subpackages="$subpackages libgfortran libquadmath gfortran"
	_languages="$_languages,fortran"
fi
if $LANG_ADA; then
	subpackages="$subpackages libgnat $pkgname-gnat"
	_languages="$_languages,ada"
	makedepends="$makedepends gcc-gnat"
fi

source="ftp://gcc.gnu.org/pub/gcc/releases/gcc-$pkgver/gcc-$pkgver.tar.bz2
	http://distfiles.gentoo.org/distfiles/gcc-$pkgver-piepatches-v${_piepatchver}.tar.bz2
	http://distfiles.gentoo.org/distfiles/gcc-$_specs_gcc_ver-specs-$_specs_ver.tar.bz2
	ftp://sourceware.org/pub/java/ecj-latest.jar

	12_all_default-warn-trampolines.patch
	15_all_libgfortran-Werror.patch
	16_all_libgomp-Werror.patch
	48_all_x86_pr53113_libitm-avx.patch
	50_all_libiberty-asprintf.patch
	51_all_libiberty-pic.patch
	67_all_gcc-poison-system-directories.patch
	74_all_gcc48_cloog-dl.patch

	gcc-spec-env.patch
	gcc-4.8-musl.patch
	libgcc-always-build-gcceh.a.patch
	pt_gnu_eh_frame.patch
	uclibc-getipinfo.patch
	gcc-4.6-pr32219.patch
	gcc-4.8-dynamic-linker.patch
	boehem-gc-uclibc.patch
	gcc-pure64.patch

	gcc-4.8-build-args.patch
	fix-cxxflags-passing.patch
	ada-no-pie.patch
	"

#	gcc-go.patch

# we build out-of-tree
_gccdir="$srcdir"/gcc-$pkgver
_builddir="$srcdir/build"
_gcclibdir=/usr/lib/gcc/${CHOST:-$_chost}/$pkgver
_gcclibexec=/usr/libexec/gcc/${CHOST:-$_chost}/$pkgver

prepare() {
	cd "$_gccdir"
	# verify we have set CHOST
	if [ -z "$CHOST" ]; then
		error "CHOST not set"
		return 1
	fi

	# PIE patches from gentoo
	# thanks to Zorry for hard work on those patches
	for i in "$srcdir"/piepatch/*.patch; do
		msg "Applying $i"
		patch -t -p0 -i $i || patch -t -p1 -i $i || return 1
	done

	# Gentoo and uclibc patches
	_err=
	for i in $source; do
		case "$i" in
		*.patch)
			msg "Applying $i"
			patch -p1 -F3 -i "$srcdir"/$i || _err="$_err $i"
			;;
		esac
	done

	if [ -n "$_err" ]; then
		error "The following patches failed:"
		for i in $_err; do
			echo "  $i"
		done
		return 1
	fi

	# enable hardened cflags by default
	# building gcc wih PIE seem to hit some strange bug. we probably run
	# out of some resource. so we disable PIE for gcc while enabling it
	# by default for everything else.
	local _hard_cflags="-DEFAULT_PIE_SSP -DEFAULT_RELRO -DEFAULT_BIND_NOW"
	sed -e "/^ALL_CFLAGS/iHARD_CFLAGS = ${_hard_cflags}" \
		-e 's|^ALL_CFLAGS = |ALL_CFLAGS = $(HARD_CFLAGS) |' \
		-e 's|^ALL_CXXFLAGS = |ALL_CXXFLAGS = $(HARD_CFLAGS) |' \
		-i gcc/Makefile.in || return 1

	# see http://gcc.gnu.org/ml/java/2008-04/msg00027.html
	mv "$srcdir"/ecj-latest.jar ecj.jar

	echo ${pkgver} > gcc/BASE-VER
}

build() {
	local _dynamic_linker=
	local _arch_configure=
	local _symvers=
	cd "$_gccdir"
	export CFLAGS="-fno-stack-protector $CFLAGS"
	[ -z "$CBUILD" ] && CBUILD="$CHOST"
	[ -z "$CTARGET" ] && CTARGET="$CHOST"

	case "$CHOST" in
		x86_64-*-uclibc)
			_dynamic_linker="--with-dynamic-linker=ld64-uClibc.so.$_uclibc_abiver"
			;;
		*-uclibc)
			_dynamic_linker="--with-dynamic-linker=ld-uClibc.so.$_uclibc_abiver"
			;;
		x86_64-*-gnu)
			_dynamic_linker="--with-dynamic-linker=ld-linux-x86-64.so.2"
			;;
		*-gnu)
			_dynamic_linker="--with-dynamic-linker=ld-linux.so.2"
			;;
		*)	_dynamic_linker=
			_symvers="--disable-symvers"
			;;
	esac

	# disable symvers for non-glibc (uclibc/musl)
	# ifunc attributes detection is broke in configure script so force
	# disable it for non-glibc. It is used heavily by Go lang.
	case "$CHOST" in
		*-gnu) ;;
		*)	export libat_cv_have_ifunc=no
			;;
	esac

	# --enable-target-optspace is broken on powerpc
	if [ "$CARCH" != "powerpc" ]; then
		_arch_configure="$_arch_configure --enable-target-optspace"
	fi

	case "$CARCH" in
	arm*) _arch_configure="$_arch_configure --with-float=hard";;
	esac

	if [ "${CHOST#*musl}" != "$CHOST" ]; then
		# musl does not support mudflap
		_arch_configure="$_arch_configure --disable-mudflap --disable-libmudflap"
		# gcc does not detect musl's ssp support, force it
		export gcc_cv_libc_provides_ssp=yes
	else
		_arch_configure="$_arch_configure --without-system-libunwind"
	fi

	msg "Building the following:"
	echo ""
	echo "  CBUILD=$CBUILD"
	echo "  CHOST=$CHOST"
	echo "  CTARGET=$CTARGET"
	echo "  languages=$_languages"
	echo "  dynamic_linker=$_dynamic_linker"
	echo "  arch_configure=$_arch_configure"
	echo ""

	mkdir -p "$_builddir"
	cd "$_builddir"
	"$_gccdir"/configure --prefix=/usr \
		--mandir=/usr/share/man \
		--infodir=/usr/share/info \
		--build=${CBUILD} \
		--host=${CHOST} \
		--target=${CTARGET} \
		--with-pkgversion="Alpine ${pkgver}" \
		--disable-altivec \
		--disable-build-with-cxx \
		--disable-checking \
		--disable-fixed-point \
		--disable-libssp \
		--disable-libstdcxx-pch \
		--disable-multilib \
		--disable-nls \
		--disable-werror \
		$_symvers \
		--enable-__cxa_atexit \
		--enable-cld \
		--enable-esp \
		--enable-cloog-backend \
		--enable-languages=$_languages \
		--enable-shared \
		$_arch_configure \
		--enable-tls \
		--enable-threads \
		$_dynamic_linker \
		--with-dynamic-linker-prefix=/lib \
		--with-system-zlib \
		|| return 1

	make || return 1
}

package() {
	cd "$_builddir"
	make -j1 DESTDIR="${pkgdir}" install || return 1
	find "$pkgdir" -name '*.la' -delete || return 1

	ln -s gcc "$pkgdir"/usr/bin/cc

	# binutils provides libiberty.a
	rm -f "$pkgdir"/usr/lib/libiberty.a

	# install the specs
	cd "$srcdir"/specs
	install -d "$pkgdir"/$_gcclibdir
	for i in *.specs; do
		install -m644 $i "$pkgdir"/$_gcclibdir/$i || return 1
	done

	# we dont support gcj -static
	# and saving 35MB is not bad.
	find "$pkgdir" -name libgcj.a -o -name libgtkpeer.a \
		-o -name libgjsmalsa.a -o -name libgcj-tools.a \
		-o -name libjvm.a -o -name libgij.a -o -name libgcj_bc.a \
		-o -name libjavamath.a \
		| xargs rm -f \
		|| return 1

	# strip debug info from some statib libs
	${CROSS_COMPILE}strip -g `find "$pkgdir" \( -name libgfortran.a -o -name libobjc.a -o -name libgomp.a \
		-o -name libmudflap.a -o -name libmudflapth.a \
		-o -name libgcc.a -o -name libgcov.a -o -name libquadmath.a \
		-o -name libitm.a -o -name libgo.a -o -name libcaf\*.a \
		-o -name libatomic.a -o -name libasan.a -o -name libtsan.a \) \
		-a -type f` || return 1

	if $LANG_JAVA; then
		sed -i -e 's/lib: /&%{static:%eJava programs cannot be linked statically}/' \
		"$pkdir"/usr/lib/libgcj.spec
	fi

	# remove ffi
	rm -f "$pkgdir"/usr/lib/libffi* "$pkgdir"/usr/share/man/man3/ffi*
	find "$pkgdir" -name 'ffi*.h' | xargs rm -f

	mkdir -p "$pkgdir"/usr/share/gdb/python/auto-load/usr/lib
	mv "$pkgdir"/usr/lib/*-gdb.py \
		"$pkgdir"/usr/share/gdb/python/auto-load/usr/lib/

	paxctl -c -pmrs "$pkgdir"/$_gcclibexec/cc1 || return 1

	# move ada runtime libs
	if $LANG_ADA; then
		for i in "$pkgdir"/$_gcclibdir/adalib/libgna*.so; do
			mv "$i" "$pkgdir"/usr/lib/ || return 1
			ln -s ../../../../${i##*/} $i || return 1
		done
	fi
}

libcxx() {
	pkgdesc="GNU C++ standard runtime library"
	depends=
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libstdc++.so.* "$subpkgdir"/usr/lib/
}

gpp() {
	pkgdesc="GNU C++ standard library and compiler"
	depends="libstdc++=$_gccrel gcc=$_gccrel libc-dev"
	mkdir -p "$subpkgdir/$_gcclibexec" \
		"$subpkgdir"/usr/bin \
		"$subpkgdir"/usr/include \
		"$subpkgdir"/usr/lib \

	mv "$pkgdir/$_gcclibexec/cc1plus" "$subpkgdir/$_gcclibexec/"
	paxctl -c -pmrs "$subpkgdir/$_gcclibexec/cc1plus" || return 1

	mv "$pkgdir"/usr/lib/*++* "$subpkgdir"/usr/lib/
	mv "$pkgdir"/usr/include/c++ "$subpkgdir"/usr/include/
	mv "$pkgdir"/usr/bin/*++ "$subpkgdir"/usr/bin/
}

libobjc() {
	pkgdesc="GNU Objective-C runtime"
	replaces="objc"
	depends=
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libobjc.so.* "$subpkgdir"/usr/lib/
}

objc() {
	pkgdesc="GNU Objective-C"
	replaces="gcc"
	depends="libc-dev gcc=$_gccrel libobjc=$_gccrel"
	mkdir -p "$subpkgdir"/$_gcclibdir/include \
		"$subpkgdir"/usr/lib \
		|| return 1
	mv "$pkgdir"/$_gcclibdir/include/objc "$subpkgdir"/$_gcclibdir/include/ \
		|| return 1
	mv "$pkgdir"/usr/lib/libobjc.so "$pkgdir"/usr/lib/libobjc.a \
		"$subpkgdir"/usr/lib/ || return 1
}

libgcc() {
	pkgdesc="GNU C compiler runtime libraries"
	depends=
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libgcc_s.so.* "$subpkgdir"/usr/lib/ || return 1
}

libgomp() {
	pkgdesc="GCC shared-memory parallel programming API library"
	depends=
	replaces="gcc"
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libgomp.so.* "$subpkgdir"/usr/lib/
}

java() {
	pkgdesc="Java support for GCC"
	depends="zlib-dev gcc=$_gccrel libgcj=$_gccrel"
	paxctl -c -pm "$pkgdir"/$_gcclibexec/ecj1 || return 1
	mkdir -p "$subpkgdir"/usr/bin "$subpkgdir"/usr/lib
	cd "$pkgdir"/usr/bin
	mv gcj gcj-dbtool gjavah gcjh jcf-dump "$subpkgdir"/usr/bin/
	cd "$pkgdir"
	for i in $(find usr/ -name ecj1 -o -name jc1 -o -name jvgenmain); do
		mkdir -p "$subpkgdir"/${i%/*}
		mv "$pkgdir"/$i "$subpkgdir"/$i || return 1
	done
	for i in "$pkgdir"/usr/lib/libgcj*.so; do
		if [ -L "$i" ]; then
			mv "$i" "$subpkgdir"/usr/lib/
		fi
	done
	mv \
		"$pkgdir"/usr/lib/libgij.so \
		"$pkgdir"/usr/lib/libgcj.spec \
		"$subpkgdir"/usr/lib/
}

libgcj() {
	pkgdesc="Java runtime library for gcc"
	# libgcj_bc.so moved from gcc-java to libgcj
	replaces="gcc-java"
	depends=
	mkdir -p "$subpkgdir"/usr/bin
	cd "$pkgdir"/usr/bin
	paxctl -c -pmse "$pkgdir"/usr/bin/gij || return 1
	mv aot-compile gappletviewer gc-analyze gij gjar gjarsigner gkeytool\
		gnative2ascii gorbd grmic grmid grmiregistry gserialver \
		gtnameserv i486-alpine-linux-uclibc-gcj jv-convert \
		rebuild-gcj-db \
		"$subpkgdir"/usr/bin/
	cd "$pkgdir"
	for i in $(find usr/lib -name jc1 -o -name jvgenmain); do
		mkdir -p "$subpkgdir"/${i%/*}
		mv "$pkgdir"/$i "$subpkgdir"/$i || return 1
	done
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/gcj-* \
		"$pkgdir"/usr/lib/libgcj_bc.so \
		"$pkgdir"/usr/lib/libgcj*.so.* \
		"$pkgdir"/usr/lib/libgij.so.* \
		"$pkgdir"/usr/lib/logging.properties \
		"$pkgdir"/usr/lib/security \
		"$subpkgdir"/usr/lib/ \
		|| return 1

	mkdir -p "$subpkgdir"/usr/share/
	mv "$pkgdir"/usr/share/java "$subpkgdir"/usr/share/
}

libgo() {
	pkgdesc="Go runtime library for GCC"
	depends=
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libgo.so.* "$subpkgdir"/usr/lib/
}

go() {
	pkgdesc="Go support for GCC"
	depends="gcc=$_gccrel libgo=$_gccrel"
	mkdir -p "$subpkgdir"/$_gcclibexec \
		"$subpkgdir"/usr/lib \
		"$subpkgdir"/usr/bin || return 1
	mv "$pkgdir"/usr/lib/go "$subpkgdir"/usr/lib/ || return 1
	mv "$pkgdir"/usr/bin/*gccgo "$subpkgdir"/usr/bin/ || return 1
	mv "$pkgdir"/$_gcclibexec/go1 "$subpkgdir"/$_gcclibexec/ || return 1
	mv "$pkgdir"/usr/lib/libgo.a \
		"$pkgdir"/usr/lib/libgo.so \
		"$pkgdir"/usr/lib/libgobegin.a \
		"$subpkgdir"/usr/lib/ || return 1
}

libgfortran() {
	pkgdesc="Fortran runtime library for GCC"
	depends=
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libgfortran.so.* "$subpkgdir"/usr/lib/
}

libquadmath() {
	replaces="gcc"
	pkgdesc="128-bit math library for GCC"
	depends=
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libquadmath.so.* "$subpkgdir"/usr/lib/
}

gfortran() {
	pkgdesc="GNU Fortran Compiler"
	depends="gcc=$_gccrel libgfortran=$_gccrel libquadmath=$_gccrel"
	replaces="gcc"
	mkdir -p "$subpkgdir"/$_gcclibexec \
		"$subpkgdir"/$_gcclibdir \
		"$subpkgdir"/usr/lib \
		"$subpkgdir"/usr/bin || return 1
	mv "$pkgdir"/usr/bin/*gfortran "$subpkgdir"/usr/bin/ || return 1
	mv "$pkgdir"/usr/lib/libgfortran.a \
		"$pkgdir"/usr/lib/libgfortran.so \
		"$pkgdir"/usr/lib/libquadmath.a \
		"$pkgdir"/usr/lib/libquadmath.so \
		"$subpkgdir"/usr/lib/ || return 1
	mv "$pkgdir"/$_gcclibexec/f951 \
		"$subpkgdir"/$_gcclibexec
	mv "$pkgdir"/$_gcclibdir/libgfortranbegin.a \
		"$subpkgdir"/$_gcclibdir
}

libgnat() {
	pkgdesc="GNU Ada 95 runtime shared libraries"
	mkdir -p "$subpkgdir"/usr/lib
	mv "$pkgdir"/usr/lib/libgna*.so "$subpkgdir"/usr/lib/
}

gnat() {
	pkgdesc="Ada 95 support for GCC"
	mkdir -p "$subpkgdir"/$_gcclibexec \
		"$subpkgdir"/$_gcclibdir \
		"$subpkgdir"/usr/bin \
		|| return 1
	mv "$pkgdir"/$_gcclibexec/gnat* "$subpkgdir"/$_gcclibexec/ \
		|| return 1
	mv "$pkgdir"/$_gcclibdir/ada* "$subpkgdir"/$_gcclibdir/ || return 1
	mv "$pkgdir"/usr/bin/gnat* "$subpkgdir"/usr/bin/ || return 1
}

md5sums="3b2386c114cd74185aa3754b58a79304  gcc-4.8.1.tar.bz2
f8ab875eee18868b319ad04dc19adcf6  gcc-4.8.1-piepatches-v0.5.6.tar.bz2
441c76504e1d97170117c294e65c7a72  gcc-4.4.3-specs-0.2.0.tar.bz2
d7cd6a27c8801e66cbaa964a039ecfdb  ecj-latest.jar
f28e9334c58ce14f69a9e988026bc772  12_all_default-warn-trampolines.patch
7eb9ad894dfdf1b3d4a8a407a339a6f1  15_all_libgfortran-Werror.patch
452e457a0ac45e6f8f75eb6d6ba4d04b  16_all_libgomp-Werror.patch
8975abab9ee8ae5028a55e84b930cf02  48_all_x86_pr53113_libitm-avx.patch
326fa30475ba206cc2ef1666ec4314c8  50_all_libiberty-asprintf.patch
d8692c56f04b92667096f59d843e95c5  51_all_libiberty-pic.patch
ca4f395856bbb80d23398246572c30fa  67_all_gcc-poison-system-directories.patch
9c443d9d0fba2ce97b12f674b7d14c7e  74_all_gcc48_cloog-dl.patch
a695d7648509b4f8e18b389a19e6037c  gcc-spec-env.patch
cd8ef37289815c939adc954ba95e9294  gcc-4.8-musl.patch
504c7dd8651c5d98229892c4cd9ea591  libgcc-always-build-gcceh.a.patch
ab83248e10b2bf4b3d9240de0fefb52b  pt_gnu_eh_frame.patch
6cc2385c5bbd6d0da6eaedd53c8bf547  uclibc-getipinfo.patch
32e8e4c0e23ed8f5de95a591cb30f1da  gcc-4.6-pr32219.patch
79d00ee1284fac5192456f7f7d3908aa  gcc-4.8-dynamic-linker.patch
2c6cb49bb9bfd8b6e690222e66ccc901  boehem-gc-uclibc.patch
2e2b787bb988d9007c9f7ce42178dfe6  gcc-pure64.patch
0a2041bbf83648e6c4f6d3484f7249ca  gcc-4.8-build-args.patch
4aea37d334ab00bb6bba37cd8c481367  fix-cxxflags-passing.patch
ac802687c02ca78687c8e612277e566a  ada-no-pie.patch"
sha256sums="545b44be3ad9f2c4e90e6880f5c9d4f0a8f0e5f67e1ffb0d45da9fa01bb05813  gcc-4.8.1.tar.bz2
4aa0ab0f114b0ff8af5d0c19c18930e3fcd5e5b0956f56ca24e58e5a243964b1  gcc-4.8.1-piepatches-v0.5.6.tar.bz2
f6c7cb99beead66dd4d06f7004c5731a9360330cbe878ce79792c618e008eed2  gcc-4.4.3-specs-0.2.0.tar.bz2
98fd128f1d374d9e42fd9d4836bdd249c6d511ebc6c0df17fbc1b9df96c3d781  ecj-latest.jar
ce7774aa13be5da274220258772ccbdd6f54abdad97a3798ba282865c809f042  12_all_default-warn-trampolines.patch
8b1450d5a7756af2b890588005690785a663601e2b1533671b609aa8cce0f718  15_all_libgfortran-Werror.patch
1f106fe03cede7c697bde7d81732e0d3bb2c7197e4967789182a5fd8db532900  16_all_libgomp-Werror.patch
cead5b092ab4881e8b830d51c0037a8fb149bab632e7661aa505ba574295e0e4  48_all_x86_pr53113_libitm-avx.patch
38f7c0841d99c6dd3610cd5618b68dd6579713c018eaed856217fc4263bcf6a6  50_all_libiberty-asprintf.patch
da6bbb5dc654d5e1df8ecae5c9ebb56265426c405931f14f5878248b8c79f78d  51_all_libiberty-pic.patch
8ba9dec0ecc2620c8ab1dfbeb0708dd4c29021e57d2e0ea23720108b1db3462e  67_all_gcc-poison-system-directories.patch
7d129093a6682418da9313611a90e3052855d8af4505d401f7b8b6a64e8f7b17  74_all_gcc48_cloog-dl.patch
64b01f29fb853fee5ecda998b66eeaa7ec86ff1fc3b21432bfd69eb543c93e6a  gcc-spec-env.patch
8b85ebc6603a1b3488e1eb800fdb00168515ae154006398a1a08af57c1d3b5b5  gcc-4.8-musl.patch
1975189156d70f5428cb7f1516533965d1c8734f3009fc89a9b8e289b72326f1  libgcc-always-build-gcceh.a.patch
78e75cb378bdfe870c98ab3cffef37f54be729d3912979191f27ca00651ad6c4  pt_gnu_eh_frame.patch
53184f842477569973c232dac7c85e71b0018cbe5c4962f95dd9e0273f42083e  uclibc-getipinfo.patch
89207a8b62137a857ee2c43499d6b5247d37b530d1338844dbb330a6846b2ad2  gcc-4.6-pr32219.patch
f3863b997acf8fdf5ad1d3626b41a8a0670b896505e9b7afb517916c7599fb1c  gcc-4.8-dynamic-linker.patch
02751ccf223dcfc898c0ce2214cd0859d275e90b742f1a66e38db5c50f94b38c  boehem-gc-uclibc.patch
f5473c6aea96d5137defd68898ba31042944a3f3ed26c05b964a40bd876c6f47  gcc-pure64.patch
bd7a6f514fcc457f29e5fda157203f3bcd013aeba5d53b3459196eef3ce752ab  gcc-4.8-build-args.patch
a395ba4cf047c48cac56985726fddf0948f4425c9f1a0c9ddba1812b2b3d8300  fix-cxxflags-passing.patch
a20f8ba10f6ee94c6af44752d9c43faf1c1ff3c631f18e3d85e2a7f2ca7f1e0d  ada-no-pie.patch"
sha512sums="1becc874aad77a469069b6d9da4158aae9e013e24afa9364fe4feff9a5094d0673ee7694b3840e892c860f73a56b3ece6174338a8214438c42b9f86dd6c35ea7  gcc-4.8.1.tar.bz2
274e16ef5136348415898d4e5a3bc71763078de8ae7c18645e8b07f54d705609b08c0efadbdb55117fdfb5f6490529b446d09def448174c2747372829d029a9d  gcc-4.8.1-piepatches-v0.5.6.tar.bz2
779ecb0a064d2138b54569c8ae501975b8a6b72e5a3acbf8597619a8db77ee42ef9b0e62608d5192a15e4393e7dfc009bb50b994782236faa744b2c46b5fe517  gcc-4.4.3-specs-0.2.0.tar.bz2
d4e1bf7538ace56e3d69fa91da5bbd16c272923b4de0a9d8dee23ea2b75f9f38c603de72fc4061df49285c450b63f3df211cee5270e9fffc5447445d1a9c9e4e  ecj-latest.jar
5069e4b741488913a646a9b5d871af8e7f7a606158ea09305d0ddd46257c5b659770627bc2ca3abeaae039da1717b3ba6c9cd90554a441da74eb4ecf24c13074  12_all_default-warn-trampolines.patch
c18a99b7303a734fe4dca9d4e90e21d18e5bd71c7d91e1a26c86b1354c73f567590a875941bfe64ce59f0393023b91c606c96b30885c55b98a790c3ab0c84ca7  15_all_libgfortran-Werror.patch
433404fd9bfa172d69fff4a5505e8648cbbbf5f052d2b4235608ff7af0c4063d557d25d80c85c5bd0d1e1ed64b568e7bbc0cdbce11cc74db4c0189af3a01634a  16_all_libgomp-Werror.patch
ff16f259fff8d78230593eee8641eab5a72c5c517c6ac5f09597edbc624d964b33f185a0dd5772d6029f757a5edb66431b3eab77dac71e76a0ef155bb7443d2c  48_all_x86_pr53113_libitm-avx.patch
c6c314a2d24531b4286436dec7189f83e443c4cfa9b88339a4c324c2d40812d766ed44dcfd4a0c3b67695bb76969a4d8a9784ff95876ceba23def305ef8a48f8  50_all_libiberty-asprintf.patch
0a0bc72b9366158f5d23fff1928e756fdd212433bac6ab1f00d632f241382820db8db5d475ddf11ea020eaf7e2e71b12fb9b1c3c870cf84adf6c2b16f15aabca  51_all_libiberty-pic.patch
47331f034e44aea16f1cbb67d9176f8ce8832d6cb7c13a8d3b438efaa3269cee177bd1dd8a9f353ac19cc6b3db436a995de9ae66d493d2772188630b09fbff51  67_all_gcc-poison-system-directories.patch
6e19b2dc43cff03a6b3ca4e18f76dcfd5b0682c15aac493e94f5c679f5b0a585fbaa09345d200182c0f47541ced2d714b78d65da130bc7d2e9f810362e07037d  74_all_gcc48_cloog-dl.patch
ce9c1f923e2c6d17347ec2d3d8482351a9644194b2753627389294d43bb4f11b9c2ef41eda1b46ad83d09901a0bedebd5b6b8a57a198646030ab61e8d2d8cb48  gcc-spec-env.patch
86ffdd09993004bc093233fcb1ea77d3a17965ccc0e09c59276b8f9e8ad79ae90eb6c6a3942472c638e9de31d2c83a25a46eee0903877033b46447e9f90258f8  gcc-4.8-musl.patch
d08d7ead2de0429e5c9055d5b029ec2be9a8c821d22cecaf9b51f633652c493333f98963d9267fa2fa63850c50ae5eefd5f59e5910ec10d20044dac082182a8b  libgcc-always-build-gcceh.a.patch
8464197f01d107872dfa6b47e86e95ae8d75c053527bafbdb7a86bcc7aff4bc5b20a8ec40d6e48d1ad455b0187a3cba9db337cff6c0a6245507c4533e4832d99  pt_gnu_eh_frame.patch
e3edf75df1f27af8771bd263e1bd607f6207c4eb5b2a5e11032577deba43ea201825e3b5008a720105f24e49d2821dd77a61c7ceba7ed91b3621c0dbd9292fc6  uclibc-getipinfo.patch
9fc5e32f2573ae67b6cf22119d636d10a47c42718635bceff7d457a93a3f664ae1ed10e154f70964ba2d26b0de04f879a8c05de6411112760d40433373dd0a80  gcc-4.6-pr32219.patch
db84b6582950378116723116be4f277881f7bdd05add216c58c2b86c0fb3a70abeb7798507a74a64b9b949d5b311167bd4df84a048d2d2d32f5836ea1d34c42e  gcc-4.8-dynamic-linker.patch
e1d6a450dfb40b134ad7f759c4c10174d2490b0093fe47cb33479245f26a3a8c54ebcf6255943c0ccfcb5095600d1c05e530baeed35609c8ffe75caac8e57c49  boehem-gc-uclibc.patch
4a5aeff0399782c752e6e3f2f48d984b2056dfb5d229b23a24eee1562d241339989b2203f139821cfc03c9b25c9bd7da6ccbbdc7a09d242e4de7f0d606c6f63c  gcc-pure64.patch
abe9aaf9aa956058d0386a4396a511d176a46bb3906b90e952383646cdc158cbeb0a5dc616a1ccb1ca7d49fd0b5e351532aa15a3b13362abbf1ca4266f54a687  gcc-4.8-build-args.patch
35d6d59f0b7b968f282f56767c9e0823a7bdc5aa0d450aca50fbd802649a7ca608b47671244a3faa208a9b0d6832cabb5a22724157dc817b2c0ad63d09f93282  fix-cxxflags-passing.patch
f00e0d57154fd7c0e121fa862b85b86943874edab8bc10e27a8b2bf363e55ea8690c091d8a07695493721a0185d52723e9f02279f7e618ece655e29b4e52b930  ada-no-pie.patch"