Magellan Linux

Contents of /trunk/core/gcc/gcc-5.1.0-r1.smage2

Parent Directory Parent Directory | Revision Log Revision Log


Revision 25975 - (show annotations) (download)
Wed Nov 26 03:29:29 2014 UTC (9 years, 6 months ago) by niro
File size: 45569 byte(s)
-fixed broken cpp symlink and enabled bootstrap. better comment libstdc++ abi force
1 # $Id$
2
3 PNAME="gcc"
4 PVER="5.1.0"
5 PBUILD="r1"
6
7 # in-tree isl
8 ISL_PVER="0.14.1"
9
10 PCAT="sys-dev"
11 HOMEPAGE="http://www.gnu.org/software/gcc/gcc.html"
12
13 # packages which needs rebuild: libtool, java-gcj-compat, llvm
14
15 # languages to build into gcc
16 # options are: c,c++,java,ada,fortran,go,objc,obj-c++,lto
17 # obj-c++ requires objc
18 #
19 # while toolchain bootstrap, only build c,c++ and after that rebuild the whole toolchain:
20 # linux-libc-headers -> binutils -> libc -> gcc -> binutils -> gcc -> libc
21 MyLanguages=c,c++,ada,fortran,go,objc,obj-c++,lto
22
23 # 1=bootstrap the whole gcc suite, using bootstrap-lean method
24 # 0=no bootstrap, use this only for quick builds to test something but never for release
25 GCC_BOOTSTRAP="1"
26
27 # 1=bootstrap ada, using precompiled gnat binaries
28 # 0=no bootstrap, build ada with system gnat - requires sys-dev/gcc-gnat
29 ADA_BOOTSTRAP="0"
30
31 # 1=enable dev split packages
32 # 0=disable dev split packages
33 ENABLE_DEV_PACKAGES="0"
34
35 SPLIT_PACKAGES="libgcc libssp libgomp libquadmath libitm libatomic libstdc++ libasan libubsan libcilkrts libvtv libmpx"
36
37 # dev packages
38 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
39 then
40 SPLIT_PACKAGES+=" libgcc-dev libssp-dev libgomp-dev libquadmath-dev libitm-dev libatomic-dev libstdc++-dev libasan-dev libubsan-dev libcilkrts-dev libvtv-dev libmpx-dev"
41 fi
42
43 # thread/leak sanitizer is only available on x86_64
44 if [[ ${ARCH} = x86_64 ]]
45 then
46 SPLIT_PACKAGES+=" libtsan liblsan"
47 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
48 then
49 SPLIT_PACKAGES+=" libtsan-dev liblsan-dev"
50 fi
51 fi
52
53 # always enable gcc
54 SPLIT_PACKAGES+=" gcc"
55
56 # helper functions
57 lang_enabled()
58 {
59 local lang="$1"
60
61 if [[ ${MyLanguages//${lang}} != ${MyLanguages} ]]
62 then
63 return 0
64 else
65 return 1
66 fi
67 }
68
69 install_gcc_library()
70 {
71 local library="$1"
72
73 cd ${SRCDIR}/build
74 mmake -j1 -C ${CHOST}/${library} DESTDIR=${BINDIR} install-toolexeclibLTLIBRARIES || die
75 if [[ $(mlibdir) != lib ]]
76 then
77 if [ -d ${CHOST}/32/${library} ]
78 then
79 mmake -j1 -C ${CHOST}/32/${library} DESTDIR=${BINDIR} install-toolexeclibLTLIBRARIES || die
80 fi
81 fi
82 }
83
84 versionize_all_bins()
85 {
86 local bin
87
88 for bin in $(find ${BINDIR}/usr/bin -type f)
89 do
90 echo ${bin}
91 mv ${bin} ${bin}-${PVER} || die
92 ln -snf $(basename ${bin}-${PVER}) ${bin} || die
93 done
94 }
95
96 keep_dev_package_libs()
97 {
98 local libs="$@"
99
100 # cleanup, only keep the libs, everything else get provided by the dev-package
101 zapmost ${BINDIR}/usr/$(mlibdir) "${libs}" || die
102 # multilib as well
103 if [[ $(mlibdir) != lib ]] && [[ -d ${BINDIR}/usr/lib ]]
104 then
105 zapmost ${BINDIR}/usr/lib "${libs}" || die
106 fi
107
108 # cleanup the rest, keep only libs
109 zapmost ${BINDIR} /usr/$(mlibdir) $([[ $(mlibdir) != lib ]] && echo "/usr/lib") || die
110 }
111
112 delete_dev_package_libs()
113 {
114 local libs="$@"
115 local i
116
117 # cleanup, the solibs are provided by the non-dev package
118 for i in ${libs}
119 do
120 rm ${BINDIR}/usr/$(mlibdir)/${i} || die
121 # multilib as well
122 if [[ $(mlibdir) != lib ]] && [[ -d ${BINDIR}/usr/lib ]]
123 then
124 rm ${BINDIR}/usr/lib/${i} || die
125 fi
126 done
127 }
128
129 GLIBC_DEPEND=">= virtual/glibc"
130 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
131 then
132 GLIBCDEV_DEPEND=">= virtual/glibc-dev"
133 fi
134 ZLIB_DEPEND=">= sys-libs/zlib-1.2.7"
135 COMMON_DEPEND="${GLIBC_DEPEND}
136 ${ZLIB_DEPEND}
137 >= dev-libs/gmp-6.0
138 >= dev-libs/mpfr-3.1.2
139 >= dev-libs/mpc-1.0.3"
140 LIBGCC_DEPEND="${GLIBC_DEPEND}"
141 LIBSSP_DEPEND="${GLIBC_DEPEND}"
142 LIBGOMP_DEPEND="${GLIBC_DEPEND}"
143 LIBQUADMATH_DEPEND="${GLIBC_DEPEND}"
144 LIBITM_DEPEND="${GLIBC_DEPEND}"
145 LIBATOMIC_DEPEND="${GLIBC_DEPEND}"
146 LIBASAN_DEPEND="${GLIBC_DEPEND}"
147 LIBLSAN_DEPEND="${GLIBC_DEPEND}"
148 LIBUBSAN_DEPEND="${GLIBC_DEPEND}"
149 LIBTSAN_DEPEND="${GLIBC_DEPEND}"
150 LIBCILKRTS_DEPEND="${GLIBC_DEPEND}"
151 LIBVTV_DEPEND="${GLIBC_DEPEND}"
152 LIBMPX_DEPEND="${GLIBC_DEPEND}"
153 LIBSTDCPP_DEPEND="${GLIBC_DEPEND}"
154
155 GCC_DEPEND="${COMMON_DEPEND}
156 >= sys-dev/binutils-2.25
157 >= dev-libs/elfutils-0.161"
158 # >= dev-libs/isl-0.12
159 # >= dev-libs/cloog-0.18
160
161 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
162 then
163 GCC_DEPEND="${GCC_DEPEND}
164 ${GLIBCDEV_DEPEND}"
165 fi
166
167 # special handling for libtsan, only x86-64
168 DEPEND_x86_64=">= sys-libs/libtsan-${PVER}
169 >= sys-libs/liblsan-${PVER}"
170 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
171 then
172 DEPEND_x86_64="${DEPEND_x86_64}
173 >= sys-libs/libtsan-dev-${PVER}
174 >= sys-libs/liblsan-dev-${PVER}"
175 fi
176 SPECIAL_VARS="DEPEND_x86_64"
177
178 if lang_enabled java
179 then
180 SPLIT_PACKAGES+=" libgcj"
181 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
182 then
183 SPLIT_PACKAGES+=" libgcj-dev"
184 fi
185 SPLIT_PACKAGES+=" gcc-gcj"
186 LIBGCJ_DEPEND="${GLIBC_DEPEND}
187 ${ZLIB_DEPEND}"
188 JAVA_DEPEND="${COMMON_DEPEND}
189 >= dev-java/eclipse-ecj-3.6
190 >= dev-java/fastjar-0.98
191 >= sys-apps/file-5
192 >= app-arch/unzip-6
193 >= app-arch/zip-3
194 >= media-libs/alsa-lib-1.0.28
195 >= x11-libs/libSM-1.2
196 >= x11-libs/libXtst-1.2
197 >= dev-libs/glib2-2.40
198 >= x11-libs/gtk2+-2.24
199 >= media-libs/libart_lgpl-2.3.21"
200
201 # provided java version
202 JAVA_PVER="1.5.0-gcj-1.5.0.0"
203 fi
204
205 if lang_enabled ada
206 then
207 SPLIT_PACKAGES+=" libgnat"
208 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
209 then
210 SPLIT_PACKAGES+=" libgnat-dev"
211 fi
212 SPLIT_PACKAGES+=" gcc-gnat"
213 LIBGNAT_DEPEND="${GLIBC_DEPEND}"
214 ADA_DEPEND="${COMMON_DEPEND}"
215 if [[ ${ADA_BOOTSTRAP} = 1 ]]
216 then
217 GNAT_BIN_x86="gnatboot-4.3-i686.tar.bz2"
218 GNAT_BIN_x86_64="gnatboot-4.3-amd64.tar.bz2"
219 GNAT_BIN="$(eval echo \$GNAT_BIN_${ARCH/i*86/x86})"
220 GNAT_BIN_SRCDIR="${BUILDDIR}/gnat"
221 SRC_URI+=( mirror://${PNAME}/${GNAT_BIN_x86} )
222 SRC_URI+=( mirror://${PNAME}/${GNAT_BIN_x86_64} )
223 fi
224 fi
225
226 if lang_enabled fortran
227 then
228 SPLIT_PACKAGES+=" libgfortran"
229 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
230 then
231 SPLIT_PACKAGES+=" libgfortran-dev"
232 fi
233 SPLIT_PACKAGES+=" gcc-gfortran"
234 LIBGFORTRAN_DEPEND="${GLIBC_DEPEND}"
235 FORTRAN_DEPEND="${COMMON_DEPEND}"
236 fi
237
238 if lang_enabled go
239 then
240 SPLIT_PACKAGES+=" libgo"
241 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
242 then
243 SPLIT_PACKAGES+=" libgo-dev"
244 fi
245 SPLIT_PACKAGES+=" gcc-go"
246 LIBGO_DEPEND="${GLIBC_DEPEND}"
247 GO_DEPEND="${COMMON_DEPEND}"
248 fi
249
250 if lang_enabled objc
251 then
252 SPLIT_PACKAGES+=" libobjc"
253 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
254 then
255 SPLIT_PACKAGES+=" libobjc-dev"
256 fi
257 SPLIT_PACKAGES+=" gcc-objc"
258 LIBOBJC_DEPEND="${GLIBC_DEPEND}"
259 OBJC_DEPEND="${COMMON_DEPEND}"
260
261 if lang_enabled obj-c++
262 then
263 SPLIT_PACKAGES+=" gcc-objc++"
264 OBJCPP_DEPEND="${COMMON_DEPEND}"
265 fi
266 fi
267
268 SDEPEND="${LIBGCC_DEPEND}
269 ${LIBSSP_DEPEND}
270 ${LIBGOMP_DEPEND}
271 ${LIBQUADMATH_DEPEND}
272 ${LIBITM_DEPEND}
273 ${LIBATOMIC_DEPEND}
274 ${LIBASAN_DEPEND}
275 ${LIBLSAN_DEPEND}
276 ${LIBUBSAN_DEPEND}
277 ${LIBTSAN_DEPEND}
278 ${LIBCILKRTS_DEPEND}
279 ${LIBVTV_DEPEND}
280 ${LIBMPX_DEPEND}
281 ${LIBSTDCPP_DEPEND}
282 ${GCC_DEPEND}
283 ${LIBGCJ_DEPEND}
284 ${JAVA_DEPEND}
285 ${LIBGNAT_DEPEND}
286 ${ADA_DEPEND}
287 ${LIBGFORTRAN_DEPEND}
288 ${FORTRAN_DEPEND}
289 ${LIBGO_DEPEND}
290 ${GO_DEPEND}
291 ${LIBOBJC_DEPEND}
292 ${OBJC_DEPEND}
293 ${OBJCPP_DEPEND}
294 >= virtual/kernel-headers"
295
296 if [[ ${ADA_BOOTSTRAP} != 1 ]]
297 then
298 # add gnat to SDEPEND
299 SDEPEND="${SDEPEND}
300 >= sys-dev/gcc-gnat-4.9"
301 fi
302
303 SRCFILE="${PNAME}-${PVER}.tar.bz2"
304 SRCDIR="${BUILDDIR}/${PNAME}-${PVER}"
305
306 ISL_SRCFILE="isl-${ISL_PVER}.tar.bz2"
307 ISL_SRCDIR="${BUILDDIR}/isl-${ISL_PVER}"
308
309 # you better off when not using distcc to compile
310 # your new compiler :) maybe not all are the same
311 msetfeature "!distcc"
312
313 sminclude mtools cleanutils libtool
314
315 SRC_URI=(
316 ${SRC_URI[*]}
317 gnu://${PNAME}/${PNAME}-${PVER}/${SRCFILE}
318 http://isl.gforge.inria.fr/${ISL_SRCFILE}
319 mirror://${PNAME}/${SRCFILE}
320 mirror://${PNAME}/${ISL_SRCFILE}
321 mirror://${PNAME}/${PNAME}-4.5.1-no-fixincludes.patch
322 )
323
324 UP2DATE="updatecmd 'http://ftp.gnu.org/gnu/${PNAME}/' | utf8encode | grep '\[DIR\].*${PNAME}' | sed 's:.*${PNAME}-\(.*\)/.*:\1:' | upsort_pipe"
325
326 # gcc don't like strong CFLAGS
327 export CFLAGS="${CFLAGS//-O?} -O2"
328 export CXXFLAGS="${CFLAGS}"
329
330 # check for crosscompile or export default CHOST
331 if [[ -z ${CTARGET} ]]
332 then
333 # no crosscompile defined
334 export CTARGET=${CHOST}
335 else
336 # use crosscompile host
337 export CTARGET=${CTARGET}
338 fi
339
340 split_info_gcc()
341 {
342 DESCRIPTION="Modern C/C++ compiler written by the GNU people."
343
344 DEPEND="== sys-libs/libgcc-${PVER}
345 == sys-libs/libssp-${PVER}
346 == sys-libs/libgomp-${PVER}
347 == sys-libs/libquadmath-${PVER}
348 == sys-libs/libitm-${PVER}
349 == sys-libs/libatomic-${PVER}
350 == sys-libs/libstdc++-${PVER}
351 == sys-libs/libasan-${PVER}
352 == sys-libs/libubsan-${PVER}
353 == sys-libs/libcilkrts-${PVER}
354 == sys-libs/libvtv-${PVER}
355 == sys-libs/libmpx-${PVER}
356 $(marchdepend)
357 ${GCC_DEPEND}"
358
359 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
360 then
361 DEPEND="${DEPEND}
362 == sys-libs/libgcc-dev-${PVER}
363 == sys-libs/libssp-dev-${PVER}
364 == sys-libs/libgomp-dev-${PVER}
365 == sys-libs/libquadmath-dev-${PVER}
366 == sys-libs/libitm-dev-${PVER}
367 == sys-libs/libatomic-dev-${PVER}
368 == sys-libs/libstdc++-dev-${PVER}
369 == sys-libs/libasan-dev-${PVER}
370 == sys-libs/libubsan-dev-${PVER}
371 == sys-libs/libcilkrts-dev-${PVER}
372 == sys-libs/libvtv-dev-${PVER}
373 == sys-libs/libmpx-dev-${PVER}"
374 fi
375 }
376
377 split_info_libgcc()
378 {
379 DESCRIPTION="GCC shared support library."
380 DEPEND="${LIBGCC_DEPEND}"
381 PCAT="sys-libs"
382 }
383
384 split_info_libgcc-dev()
385 {
386 DESCRIPTION="Development files for libgcc."
387 DEPEND="== sys-libs/libgcc-${PVER}"
388 PCAT="sys-libs"
389 }
390
391 split_info_libssp()
392 {
393 DESCRIPTION="Stack Smashing Protection library from GCC."
394 DEPEND="${LIBSSP_DEPEND}"
395 PCAT="sys-libs"
396 }
397
398 split_info_libssp-dev()
399 {
400 DESCRIPTION="Development files for libssp."
401 DEPEND="== sys-libs/libssp-${PVER}"
402 PCAT="sys-libs"
403 }
404
405 split_info_libgomp()
406 {
407 DESCRIPTION="GNU OpenMP runtime library."
408 DEPEND="${LIBGOMP_DEPEND}"
409 PCAT="sys-libs"
410 }
411
412 split_info_libgomp-dev()
413 {
414 DESCRIPTION="Development files for libgomp."
415 DEPEND="== sys-libs/libgomp-${PVER}"
416 PCAT="sys-libs"
417 }
418
419 split_info_libquadmath()
420 {
421 DESCRIPTION="GCC __float128 shared support library."
422 DEPEND="${LIBQUADMATH_DEPEND}"
423 PCAT="sys-libs"
424 }
425
426 split_info_libquadmath-dev()
427 {
428 DESCRIPTION="Development files for libquadmath."
429 DEPEND="== sys-libs/libquadmath-${PVER}"
430 PCAT="sys-libs"
431 }
432
433 split_info_libitm()
434 {
435 DESCRIPTION="The GNU Transactional Memory library."
436 DEPEND="${LIBITM_DEPEND}"
437 PCAT="sys-libs"
438 }
439
440 split_info_libitm-dev()
441 {
442 DESCRIPTION="Development files for libitm."
443 DEPEND="== sys-libs/libitm-${PVER}"
444 PCAT="sys-libs"
445 }
446
447 split_info_libatomic()
448 {
449 DESCRIPTION="The GNU Atomic library."
450 DEPEND="${LIBATOMIC_DEPEND}"
451 PCAT="sys-libs"
452 }
453
454 split_info_libatomic-dev()
455 {
456 DESCRIPTION="Development files for libatomic."
457 DEPEND="== sys-libs/libatomic-${PVER}"
458 PCAT="sys-libs"
459 }
460
461 split_info_libasan()
462 {
463 DESCRIPTION="The Address Sanitizer runtime library."
464 DEPEND="== sys-libs/libgcc-${PVER}
465 == sys-libs/libstdc++-${PVER}
466 ${LIBASAN_DEPEND}"
467 PCAT="sys-libs"
468 }
469
470 split_info_libasan-dev()
471 {
472 DESCRIPTION="Development files for libasan."
473 DEPEND="== sys-libs/libasan-${PVER}"
474 PCAT="sys-libs"
475 }
476
477 split_info_liblsan()
478 {
479 DESCRIPTION="The Leak Sanitizer runtime library."
480 DEPEND="== sys-libs/libgcc-${PVER}
481 == sys-libs/libstdc++-${PVER}
482 ${LIBLSAN_DEPEND}"
483 PCAT="sys-libs"
484 }
485
486 split_info_liblsan-dev()
487 {
488 DESCRIPTION="Development files for liblsan."
489 DEPEND="== sys-libs/liblsan-${PVER}"
490 PCAT="sys-libs"
491 }
492
493 split_info_libubsan()
494 {
495 DESCRIPTION="The Undefined behavior Sanitizer runtime library."
496 DEPEND="== sys-libs/libgcc-${PVER}
497 == sys-libs/libstdc++-${PVER}
498 ${LIBUBSAN_DEPEND}"
499 PCAT="sys-libs"
500 }
501
502 split_info_libubsan-dev()
503 {
504 DESCRIPTION="Development files for libubsan."
505 DEPEND="== sys-libs/libubsan-${PVER}"
506 PCAT="sys-libs"
507 }
508
509 split_info_libtsan()
510 {
511 DESCRIPTION="The Thread Sanitizer runtime library."
512 DEPEND="== sys-libs/libgcc-${PVER}
513 == sys-libs/libstdc++-${PVER}
514 ${LIBTSAN_DEPEND}"
515 PCAT="sys-libs"
516 }
517
518 split_info_libtsan-dev()
519 {
520 DESCRIPTION="Development files for libtsan."
521 DEPEND="== sys-libs/libtsan-${PVER}
522 == sys-libs/libgcc-dev-${PVER}
523 == sys-libs/libstdc++-dev-${PVER}"
524 PCAT="sys-libs"
525 }
526
527 split_info_libcilkrts()
528 {
529 DESCRIPTION="The Cilk+ runtime library."
530 DEPEND="== sys-libs/libgcc-${PVER}
531 == sys-libs/libstdc++-${PVER}
532 ${LIBCILKRTS_DEPEND}"
533 PCAT="sys-libs"
534 }
535
536 split_info_libcilkrts-dev()
537 {
538 DESCRIPTION="Development files for libcilkrts."
539 DEPEND="== sys-libs/libcilkrts-${PVER}
540 == sys-libs/libgcc-dev-${PVER}
541 == sys-libs/libstdc++-dev-${PVER}"
542 PCAT="sys-libs"
543 }
544
545 split_info_libvtv()
546 {
547 DESCRIPTION="Vtable Verification runtime library."
548 DEPEND="${LIBVTV_DEPEND}"
549 PCAT="sys-libs"
550 }
551
552 split_info_libvtv-dev()
553 {
554 DESCRIPTION="Development files for libvtv."
555 DEPEND="== sys-libs/libvtv-${PVER}"
556 PCAT="sys-libs"
557 }
558
559 split_info_libmpx()
560 {
561 DESCRIPTION="Memory Protection Extensions runtime library."
562 DEPEND="${LIBMPX_DEPEND}"
563 PCAT="sys-libs"
564 }
565
566 split_info_libmpx-dev()
567 {
568 DESCRIPTION="Development files for libmpx."
569 DEPEND="== sys-libs/libmpx-${PVER}"
570 PCAT="sys-libs"
571 }
572
573 split_info_libstdc++()
574 {
575 DESCRIPTION="Standard GNU C and C++ libraries."
576 DEPEND="== sys-libs/libgcc-${PVER}
577 ${LIBSTDCPP_DEPEND}"
578 PCAT="sys-libs"
579 }
580
581 split_info_libstdc++-dev()
582 {
583 DESCRIPTION="Development files for libstdc++."
584 DEPEND="== sys-libs/libstdc++-${PVER}
585 == sys-libs/libgcc-dev-${PVER}"
586 PCAT="sys-libs"
587 }
588
589 if lang_enabled java
590 then
591 split_info_libgcj()
592 {
593 DESCRIPTION="Java runtime library for GCC."
594 DEPEND="== sys-libs/libgcc-${PVER}
595 ${LIBGCJ_DEPEND}"
596 PCAT="sys-libs"
597 }
598
599 split_info_libgcj-dev()
600 {
601 DESCRIPTION="Development files for libgcj."
602 DEPEND="== sys-libs/libgcj-${PVER}
603 == sys-libs/libgcc-dev-${PVER}"
604 PCAT="sys-libs"
605 }
606
607 split_info_gcc-gcj()
608 {
609 DESCRIPTION="Java support for GCC."
610 DEPEND="== sys-libs/libgcc-${PVER}
611 == sys-libs/libstdc++-${PVER}
612 == sys-libs/libgcj-${PVER}
613 == sys-dev/gcc-${PVER}
614 ${JAVA_DEPEND}"
615 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
616 then
617 DEPEND="${DEPEND}
618 == sys-libs/libgcc-dev-${PVER}
619 == sys-libs/libstdc++-dev-${PVER}
620 == sys-libs/libgcj-dev-${PVER}"
621 fi
622 }
623 fi
624
625 if lang_enabled ada
626 then
627 split_info_libgnat()
628 {
629 DESCRIPTION="Gnu Ada 95 library which is needed to run Ada programs."
630 DEPEND="== sys-libs/libgcc-${PVER}
631 ${LIBGNAT_DEPEND}"
632 PCAT="sys-libs"
633 }
634
635 split_info_libgnat-dev()
636 {
637 DESCRIPTION="Development files for libgnat."
638 DEPEND="== sys-libs/libgnat-${PVER}
639 == sys-libs/libgcc-dev-${PVER}"
640 PCAT="sys-libs"
641 }
642
643 split_info_gcc-gnat()
644 {
645 DESCRIPTION="Ada 95 support for GCC."
646 DEPEND="== sys-libs/libgcc-${PVER}
647 == sys-libs/libstdc++-${PVER}
648 == sys-libs/libgnat-${PVER}
649 == sys-dev/gcc-${PVER}
650 ${ADA_DEPEND}"
651 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
652 then
653 DEPEND="${DEPEND}
654 == sys-libs/libgcc-dev-${PVER}
655 == sys-libs/libstdc++-dev-${PVER}
656 == sys-libs/libgnat-dev-${PVER}"
657 fi
658 }
659 fi
660
661 if lang_enabled fortran
662 then
663 split_info_libgfortran()
664 {
665 DESCRIPTION="Gnu Fortran library which is needed to run Fortran programs."
666 DEPEND="== sys-libs/libquadmath-${PVER}
667 ${LIBGFORTRAN_DEPEND}"
668 PCAT="sys-libs"
669 }
670
671 split_info_libgfortran-dev()
672 {
673 DESCRIPTION="Development files for libgfortran."
674 DEPEND="== sys-libs/libgfortran-${PVER}
675 == sys-libs/libquadmath-dev-${PVER}"
676 PCAT="sys-libs"
677 }
678
679 split_info_gcc-gfortran()
680 {
681 DESCRIPTION="Fortran support for GCC."
682 DEPEND="== sys-libs/libgcc-${PVER}
683 == sys-libs/libstdc++-${PVER}
684 == sys-libs/libgfortran-${PVER}
685 == sys-dev/gcc-${PVER}
686 ${FORTRAN_DEPEND}"
687 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
688 then
689 DEPEND="${DEPEND}
690 == sys-libs/libgcc-dev-${PVER}
691 == sys-libs/libstdc++-dev-${PVER}
692 == sys-libs/libgfortran-dev-${PVER}"
693 fi
694 }
695 fi
696
697 if lang_enabled go
698 then
699 split_info_libgo()
700 {
701 DESCRIPTION="Go library which is needed to run Go programs."
702 DEPEND="== sys-libs/libgcc-${PVER}
703 ${LIBGO_DEPEND}"
704 PCAT="sys-libs"
705 }
706
707 split_info_libgo-dev()
708 {
709 DESCRIPTION="Development files for libgo."
710 DEPEND="== sys-libs/libgo-${PVER}
711 == sys-libs/libgcc-dev-${PVER}"
712 PCAT="sys-libs"
713 }
714
715 split_info_gcc-go()
716 {
717 DESCRIPTION="Go support for GCC."
718 DEPEND="== sys-libs/libgcc-${PVER}
719 == sys-libs/libstdc++-${PVER}
720 == sys-libs/libgo-${PVER}
721 == sys-dev/gcc-${PVER}
722 ${GO_DEPEND}"
723 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
724 then
725 DEPEND="${DEPEND}
726 == sys-libs/libgcc-dev-${PVER}
727 == sys-libs/libstdc++-dev-${PVER}
728 == sys-libs/libgo-dev-${PVER}"
729 fi
730 }
731 fi
732
733 if lang_enabled objc
734 then
735 split_info_libobjc()
736 {
737 DESCRIPTION="Objective-C library which is needed to run Objective-C programs."
738 DEPEND="== sys-libs/libgcc-${PVER}
739 ${LIBOBJC_DEPEND}"
740 PCAT="sys-libs"
741 }
742
743 split_info_libobjc-dev()
744 {
745 DESCRIPTION="Development files for libobjc."
746 DEPEND="== sys-libs/libobjc-${PVER}
747 == sys-libs/libgcc-dev-${PVER}"
748 PCAT="sys-libs"
749 }
750
751 split_info_gcc-objc()
752 {
753 DESCRIPTION="Objective-C support for GCC."
754 DEPEND="== sys-libs/libgcc-${PVER}
755 == sys-libs/libstdc++-${PVER}
756 == sys-libs/libobjc-${PVER}
757 == sys-dev/gcc-${PVER}
758 ${OBJC_DEPEND}"
759 }
760
761 if lang_enabled obj-c++
762 then
763 split_info_gcc-objc++()
764 {
765 DESCRIPTION="Objective-C++ support for GCC."
766 DEPEND="== sys-libs/libgcc-${PVER}
767 == sys-libs/libstdc++-${PVER}
768 == sys-libs/libobjc-${PVER}
769 == sys-dev/gcc-${PVER}
770 == sys-dev/gcc-objc-${PVER}
771 ${OBJCPP_DEPEND}"
772 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
773 then
774 DEPEND="${DEPEND}
775 == sys-libs/libgcc-dev-${PVER}
776 == sys-libs/libstdc++-dev-${PVER}
777 == sys-libs/libobjc-dev-${PVER}"
778 fi
779 }
780 fi
781 fi
782
783 src_prepare()
784 {
785 munpack ${SRCFILE} || die
786
787 # prepare isl in-tree build
788 munpack ${ISL_SRCFILE} || die
789 ln -snf ${ISL_SRCDIR} ${SRCDIR}/isl || die
790
791 if lang_enabled ada
792 then
793 if [[ ${ADA_BOOTSTRAP} = 1 ]]
794 then
795 # setup binary ada if boostrap is enabled
796 install -d ${GNAT_BIN_SRCDIR} || die
797 munpack ${GNAT_BIN} ${GNAT_BIN_SRCDIR} || die
798 # gnat wrapper has problems with quotation
799 sed -i \
800 -e "/-DREVISION/d" \
801 -e "/-DDEVPHASE/d" \
802 -e "s: -DDATESTAMP=\$(DATESTAMP_s)::" \
803 ${SRCDIR}/gcc/Makefile.in || die
804 sed -i \
805 -e "s: DATESTAMP DEVPHASE REVISION::" \
806 -e "s:PKGVERSION:\"\":" \
807 ${SRCDIR}/gcc/version.c || die
808 fi
809 cd ${SRCDIR}
810 fi
811
812 cd ${SRCDIR}
813
814 # generic fixes
815 mpatch ${PNAME}-4.5.1-no-fixincludes.patch || die
816
817 # suppress installation of libffi, we're using libffi3 instead
818 sed -i 's/\(install.*:\) install-.*recursive/\1/' libffi/Makefile.in || die
819 sed -i 's/\(install-data-am:\).*/\1/' libffi/include/Makefile.in || die
820
821 install -d ${SRCDIR}/build || die
822 }
823
824 src_compile()
825 {
826 if lang_enabled ada
827 then
828 if [[ ${ADA_BOOTSTRAP} = 1 ]]
829 then
830 # export binary gnat pathes
831 export PATH="${GNAT_BIN_SRCDIR}/usr/bin:${PATH}"
832 export CC="${GNAT_BIN_SRCDIR}/usr/bin/gnatgcc"
833 # CPATH is supposed to be applied for any language, thus
834 # superseding either of C/CPLUS/OBJC_INCLUDE_PATHs
835 export CPATH="${GNAT_BIN_SRCDIR}/usr/lib/include"
836 export LIB_DIR="${GNAT_BIN_SRCDIR}/usr/lib"
837 export LDFLAGS="-L${GNAT_BIN_SRCDIR}/usr/lib"
838 export LIBRARY_PATH="${GNAT_BIN_SRCDIR}/usr/lib"
839 export ADA_OBJECTS_PATH="${GNAT_BIN_SRCDIR}/usr/lib/adalib"
840 export ADA_INCLUDE_PATH="${GNAT_BIN_SRCDIR}/usr/lib/adainclude"
841
842 # prepare some tools
843 cd ${GNAT_BIN_SRCDIR}
844 cp -v ${SRCDIR}/gcc/ada/xtreeprs.adb ${GNAT_BIN_SRCDIR} || die
845 cp -v ${SRCDIR}/gcc/ada/csinfo.adb ${GNAT_BIN_SRCDIR} || die
846 cp -v ${SRCDIR}/gcc/ada/ceinfo.adb ${GNAT_BIN_SRCDIR} || die
847 cp -v ${SRCDIR}/gcc/ada/xsinfo.adb ${GNAT_BIN_SRCDIR} || die
848 cp -v ${SRCDIR}/gcc/ada/xeinfo.adb ${GNAT_BIN_SRCDIR} || die
849 cp -v ${SRCDIR}/gcc/ada/xnmake.adb ${GNAT_BIN_SRCDIR} || die
850 cp -v ${SRCDIR}/gcc/ada/xutil.ad{s,b} ${GNAT_BIN_SRCDIR} || die
851 gnatmake xtreeprs || die
852 gnatmake xsinfo || die
853 gnatmake xeinfo || die
854 gnatmake xnmake || die
855 fi
856 fi
857
858 cd ${SRCDIR}/build
859 local myconf
860
861 # Straight from the GCC install doc:
862 # "GCC has code to correctly determine the correct value for target
863 # for nearly all native systems. Therefore, we highly recommend you
864 # not provide a configure target when configuring a native compiler."
865 if [[ ${CHOST} != ${CTARGET} ]]
866 then
867 myconf+=" --target=${CTARGET}"
868 fi
869
870 if lang_enabled java
871 then
872 myconf+=" --enable-java-awt=gtk
873 --enable-gtk-cairo
874 --enable-libgcj-multifile
875 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar
876 --with-fastjar=/usr/bin/fastjar
877 --enable-hash-synchronization"
878 # disable mutilib for java
879 myconf+=" --disable-libjava-multilib"
880 # java home, must be the same of java-gcj-compat
881 myconf+=" --with-java-home=/usr/$(mlibdir)/jvm/java-${JAVA_PVER}/jre"
882 fi
883
884 # use isl backend
885 myconf+=" --with-isl"
886
887 # install libiberty, as we will NOT using the one from binutils
888 myconf+=" --enable-install-libiberty"
889
890 # enable memory protections extension
891 myconf+=" --enable-libmpx"
892
893 # no ssp
894 myconf+=" --disable-libssp"
895
896 # enable gold but ise default linker as default
897 #myconf+=" --enable-gold"
898 #myconf+=" --with-plugin-ld=ld.gold"
899 #myconf+=" --enable-ld=default"
900
901 # use the old default c++ abi until LLVM is fixed
902 # later we switch to c++11
903 # see: http://allanmcrae.com/2015/06/the-case-of-gcc-5-1-and-the-two-c-abis/
904 myconf+=" --with-default-libstdcxx-abi=c++98"
905
906 # gcc >= 4.3 has now configure flags for uri and version - yeah!
907 AR=ar \
908 ../configure \
909 --with-bugurl="http://bugs.magellan-linux.de/" \
910 --with-pkgversion="Magellan-Linux" \
911 --build=${CHOST} \
912 --host=${CHOST} \
913 --prefix=/usr \
914 --sbindir=/usr/bin \
915 --mandir=/usr/share/man \
916 --infodir=/usr/share/info \
917 --libdir=/usr/$(mlibdir) \
918 --libexecdir=/usr/$(mlibdir) \
919 --enable-shared \
920 --enable-threads=posix \
921 --enable-__cxa_atexit \
922 --enable-clocale=gnu \
923 --enable-checking=release \
924 --disable-libunwind-exceptions \
925 --with-linker-hash-style=gnu \
926 --with-system-zlib \
927 --enable-languages=${MyLanguages} \
928 --disable-libstdcxx-pch \
929 --enable-gnu-unique-object \
930 --enable-gnu-indirect-function \
931 --enable-lto \
932 --enable-plugin \
933 --enable-linker-build-id \
934 --disable-werror \
935 ${myconf} \
936 || die
937
938 # parallel builds seems to break sometimes on x86_64
939 local myopts
940 [[ ${ARCH} = x86_64 ]] && myopts=-j1
941
942 # enable bootstrap if requested
943 local target
944 [[ ${GCC_BOOTSTRAP} = 1 ]] && target="bootstrap-lean"
945
946 mmake ${myopts} ${target} || die
947 }
948
949 src_install_gcc()
950 {
951 local i
952 local bin
953
954 cd ${SRCDIR}/build
955 minstalldir /$(mlibdir) || die
956
957 # install all targets
958 make DESTDIR=${BINDIR} install || die
959
960 # move gdb scripts to a proper location and to pretty-print ldconfig
961 minstalldir /usr/share/gdb/auto-load/usr/$(mlibdir) || die
962 mmove ${BINDIR}/usr/$(mlibdir)/libstdc++\*gdb.py\* /usr/share/gdb/auto-load/usr/$(mlibdir)/ || die
963 # multilib as well
964 if [[ $(mlibdir) != lib ]] && [[ -d ${BINDIR}/usr/lib ]]
965 then
966 minstalldir /usr/share/gdb/auto-load/usr/lib || die
967 mmove ${BINDIR}/usr/lib/libstdc++\*gdb.py\* /usr/share/gdb/auto-load/usr/lib/ || die
968 fi
969
970 # deletes libstdc++ && libgcc_s && libssp && libgomp && libquadmath && libitm && libatomic && libasan && &&libubsan && libcilkrts && libvtv
971 mdelete /usr/$(mlibdir)/libgcc_s.so\* || die
972 mmake -j1 -C ${CHOST}/libssp DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
973 mmake -j1 -C ${CHOST}/libgomp DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
974 mmake -j1 -C ${CHOST}/libquadmath DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
975 mmake -j1 -C ${CHOST}/libitm DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
976 mmake -j1 -C ${CHOST}/libatomic DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
977 mmake -j1 -C ${CHOST}/libsanitizer/asan DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
978 mmake -j1 -C ${CHOST}/libsanitizer/ubsan DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
979 mmake -j1 -C ${CHOST}/libcilkrts DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
980 mmake -j1 -C ${CHOST}/libvtv DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
981 mmake -j1 -C ${CHOST}/libmpx DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
982 if [[ ${ARCH} = x86_64 ]]
983 then
984 mmake -j1 -C ${CHOST}/libsanitizer/tsan DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
985 mmake -j1 -C ${CHOST}/libsanitizer/lsan DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
986 fi
987 mmake -j1 -C ${CHOST}/libstdc++-v3/src DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
988 if [[ $(mlibdir) != lib ]]
989 then
990 mdelete /usr/lib/libgcc_s.so\* || die
991 mmake -j1 -C ${CHOST}/32/libssp DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
992 mmake -j1 -C ${CHOST}/32/libgomp DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
993 mmake -j1 -C ${CHOST}/32/libquadmath DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
994 mmake -j1 -C ${CHOST}/32/libitm DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
995 mmake -j1 -C ${CHOST}/32/libatomic DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
996 mmake -j1 -C ${CHOST}/32/libsanitizer/asan DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
997 mmake -j1 -C ${CHOST}/32/libsanitizer/ubsan DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
998 mmake -j1 -C ${CHOST}/32/libcilkrts DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
999 mmake -j1 -C ${CHOST}/32/libvtv DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1000 mmake -j1 -C ${CHOST}/32/libmpx DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1001 # only 64bit exist
1002 # mmake -j1 -C ${CHOST}/32/libsanitizer/tsan DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1003 # mmake -j1 -C ${CHOST}/32/libsanitizer/lsan DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1004 mmake -j1 -C ${CHOST}/32/libstdc++-v3/src DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1005 fi
1006 mdelete /usr/share/info/libgomp.info || die
1007 mdelete /usr/share/info/libitm.info || die
1008 mdelete /usr/share/info/libquadmath.info || die
1009 find ${BINDIR}/usr/share/locale -name libstdc++.mo | xargs --no-run-if-empty --verbose rm -v || die
1010
1011 # deletes all java specific
1012 if lang_enabled java
1013 then
1014 mmake -j1 -C ${CHOST}/libjava DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1015 if [[ $(mlibdir) != lib ]]
1016 then
1017 mmake -j1 -C ${CHOST}/32/libjava DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1018 fi
1019 mdelete /usr/$(mlibdir)/libgcj_bc.so\* || die
1020 mdelete -r /usr/include/c++/${PVER}/gcj || die
1021 mdelete -r /usr/include/c++/${PVER}/gnu || die
1022 mdelete -r /usr/include/c++/${PVER}/java || die
1023 mdelete -r /usr/include/c++/${PVER}/javax || die
1024 mdelete -r /usr/include/c++/${PVER}/org || die
1025 mdelete -r /usr/include/c++/${PVER}/sun || die
1026 mdelete -r /usr/$(mlibdir)/gcj\* || die
1027 mdelete /usr/$(mlibdir)/logging.properties || die
1028 mdelete /usr/$(mlibdir)/libgcj.spec || die
1029 mdelete /usr/$(mlibdir)/pkgconfig/libgcj\*.pc || die
1030 mdelete -r /usr/$(mlibdir)/security || die
1031 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/ecj1 || die
1032 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/jc1 || die
1033 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/jvgenmain || die
1034 mdelete -r /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/include/gcj || die
1035 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/include/jvmpi.h || die
1036 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/include/jawt.h || die
1037 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/include/jawt_md.h || die
1038 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/include/jni.h || die
1039 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/include/jni_md.h || die
1040 if [[ $(mlibdir) != lib ]] && [[ -d ${BINDIR}/usr/lib ]]
1041 then
1042 mdelete /usr/lib/libgcj_bc.so\* || die
1043 mdelete -r /usr/lib/gcj\* || die
1044 mdelete /usr/lib/logging.properties || die
1045 mdelete /usr/lib/pkgconfig/libgcj\*.pc || die
1046 mdelete -r /usr/lib/security || die
1047 fi
1048 mdelete /usr/share/info/cp-tools.info || die
1049 mdelete /usr/share/info/gcj.info || die
1050 mdelete -r /usr/share/java || die
1051 mdelete -r /usr/share/gcc-${PVER}/python/libjava || die
1052 for i in aot-compile gappletviewer gc-analyze gcj gcj-dbtool gcjh gij gjar \
1053 gjarsigner gjavah gjdoc gkeytool gnative2ascii gorbd grmic grmid grmiregistry \
1054 gserialver gtnameserv jcf-dump jv-convert rebuild-gcj-db ${CHOST}-gcj
1055 do
1056 if [ -f ${BINDIR}/usr/bin/${i} ]
1057 then
1058 mdelete /usr/bin/${i} || die
1059 fi
1060 if [ -f ${BINDIR}/usr/share/man/man1/${i}.1 ]
1061 then
1062 mdelete /usr/share/man/man1/${i}.1 || die
1063 fi
1064 done
1065 fi
1066
1067 # deletes all ada specific
1068 if lang_enabled ada
1069 then
1070 mdelete /usr/bin/gnat\* || die
1071 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/gnat1 || die
1072 mdelete -r /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/adalib || die
1073 mdelete -r /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/adainclude || die
1074 if [[ $(mlibdir) != lib ]]
1075 then
1076 mdelete -r /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/adalib || die
1077 mdelete -r /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/adainclude || die
1078 fi
1079 mdelete /usr/share/info/gnat\*.info || die
1080 fi
1081
1082 # deletes all fortran specific
1083 if lang_enabled fortran
1084 then
1085 mmake -j1 -C ${CHOST}/libgfortran DESTDIR=${BINDIR} uninstall || die
1086 if [[ $(mlibdir) != lib ]]
1087 then
1088 mmake -j1 -C ${CHOST}/32/libgfortran DESTDIR=${BINDIR} uninstall || die
1089 fi
1090 mdelete /usr/bin/gfortran || die
1091 mdelete /usr/bin/${CHOST}-gfortran || die
1092 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/f951 || die
1093 mdelete /usr/share/info/gfortran.info || die
1094 mdelete /usr/share/man/man1/gfortran.1 || die
1095 fi
1096
1097 # deletes all go specific
1098 if lang_enabled go
1099 then
1100 mmake -j1 -C ${CHOST}/libgo DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1101 if [[ $(mlibdir) != lib ]]
1102 then
1103 mmake -j1 -C ${CHOST}/32/libgo DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1104 fi
1105 mdelete /usr/bin/gccgo || die
1106 mdelete /usr/bin/${CHOST}-gccgo || die
1107 mdelete -r /usr/$(mlibdir)/go || die
1108 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/go1 || die
1109 mdelete /usr/$(mlibdir)/libgobegin.a || die
1110 if [[ $(mlibdir) != lib ]]
1111 then
1112 mdelete -r /usr/lib/go || die
1113 mdelete /usr/lib/libgobegin.a || die
1114 fi
1115 mdelete /usr/share/info/gccgo.info || die
1116 mdelete /usr/share/man/man1/gccgo.1 || die
1117 fi
1118
1119 # deletes all objc + obj-c++
1120 if lang_enabled objc
1121 then
1122 mdelete /usr/$(mlibdir)/libobjc.so\* || die
1123 mdelete /usr/$(mlibdir)/libobjc.a || die
1124 mdelete /usr/$(mlibdir)/libobjc.la || die
1125 if [[ $(mlibdir) != lib ]]
1126 then
1127 mdelete /usr/lib/libobjc.so\* || die
1128 mdelete /usr/lib/libobjc.a || die
1129 mdelete /usr/lib/libobjc.la || die
1130 fi
1131 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/cc1obj || die
1132 mdelete -r /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/include/objc || die
1133
1134 if lang_enabled obj-c++
1135 then
1136 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/cc1objplus || die
1137 fi
1138 fi
1139
1140 # versionize all bins and symlink them
1141 versionize_all_bins || die
1142
1143 mlink ../bin/cpp-${PVER} /usr/$(mlibdir)/cpp || die
1144 # this one is needed on multilib systems.
1145 # rpcgen may not find the cpp compiler correctly if not in /lib/cpp
1146 if [[ $(mlibdir) != lib ]]
1147 then
1148 minstalldir /usr/lib || die
1149 mlink ../bin/cpp-${PVER} /usr/lib/cpp || die
1150 fi
1151 mlink gcc-${PVER} /usr/bin/cc || die
1152
1153 # fix all .la files
1154 # they may contain invalid libpathes which are not needed
1155 local la
1156 for la in $(find ${BINDIR} -name \*.la)
1157 do
1158 fix_la_file ${la} || die ${la}
1159 done
1160
1161 # remove /lib dirs to be usr-move compat
1162 if [[ -d ${BINDIR}/$(mlibdir) ]]
1163 then
1164 mdelete -r /$(mlibdir) || die
1165 fi
1166 if [[ $(mlibdir) != lib ]]
1167 then
1168 if [[ -d ${BINDIR}/lib ]]
1169 then
1170 mdelete -r /lib || die
1171 fi
1172 fi
1173 }
1174
1175 src_install_libgcc-common()
1176 {
1177 cd ${SRCDIR}/build
1178 mmake -j1 -C ${CHOST}/libgcc DESTDIR=${BINDIR} install-shared || die
1179 if [[ $(mlibdir) != lib ]]
1180 then
1181 mmake -j1 -C${CHOST}/32/libgcc DESTDIR=${BINDIR} install-shared || die
1182 fi
1183 mdelete -r /usr/$(mlibdir)/gcc || die
1184 }
1185
1186 src_install_libgcc()
1187 {
1188 src_install_libgcc-common || die
1189 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1190 then
1191 keep_dev_package_libs 'libgcc_s.so.*' || die
1192 fi
1193 }
1194
1195 src_install_libgcc-dev()
1196 {
1197 src_install_libgcc-common || die
1198 delete_dev_package_libs 'libgcc_s.so.*' || die
1199 }
1200
1201 src_install_libssp-common()
1202 {
1203 install_gcc_library "libssp" || die
1204 }
1205
1206 src_install_libssp()
1207 {
1208 src_install_libssp-common || die
1209 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1210 then
1211 keep_dev_package_libs 'libssp.so.*' || die
1212 fi
1213 }
1214
1215 src_install_libssp-dev()
1216 {
1217 src_install_libssp-common || die
1218 delete_dev_package_libs 'libssp.so.*' || die
1219 }
1220
1221 src_install_libgomp-common()
1222 {
1223 install_gcc_library "libgomp" || die
1224 mmake -j1 -C ${CHOST}/libgomp DESTDIR=${BINDIR} install-info || die
1225 }
1226
1227 src_install_libgomp()
1228 {
1229 src_install_libgomp-common || die
1230 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1231 then
1232 keep_dev_package_libs 'libgomp.so.*' || die
1233 fi
1234 }
1235
1236 src_install_libgomp-dev()
1237 {
1238 src_install_libgomp-common || die
1239 delete_dev_package_libs 'libgomp.so.*' || die
1240 }
1241
1242 src_install_libquadmath-common()
1243 {
1244 install_gcc_library "libquadmath" || die
1245 mmake -j1 -C ${CHOST}/libquadmath DESTDIR=${BINDIR} install-info || die
1246 }
1247
1248 src_install_libquadmath()
1249 {
1250 src_install_libquadmath-common || die
1251 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1252 then
1253 keep_dev_package_libs 'libquadmath.so.*' || die
1254 fi
1255 }
1256
1257 src_install_libquadmath-dev()
1258 {
1259 src_install_libquadmath-common || die
1260 delete_dev_package_libs 'libquadmath.so.*' || die
1261 }
1262
1263 src_install_libitm-common()
1264 {
1265 install_gcc_library "libitm"
1266 mmake -j1 -C ${CHOST}/libitm DESTDIR=${BINDIR} install-info || die
1267 }
1268
1269 src_install_libitm()
1270 {
1271 src_install_libitm-common || die
1272 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1273 then
1274 keep_dev_package_libs 'libitm.so.*' || die
1275 fi
1276 }
1277
1278 src_install_libitm-dev()
1279 {
1280 src_install_libitm-common || die
1281 delete_dev_package_libs 'libitm.so.*' || die
1282 }
1283
1284 src_install_libatomic-common()
1285 {
1286 install_gcc_library "libatomic" || die
1287 }
1288
1289 src_install_libatomic()
1290 {
1291 src_install_libatomic-common || die
1292 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1293 then
1294 keep_dev_package_libs 'libatomic.so.*' || die
1295 fi
1296 }
1297
1298 src_install_libatomic-dev()
1299 {
1300 src_install_libatomic-common || die
1301 delete_dev_package_libs 'libatomic.so.*' || die
1302 }
1303
1304 src_install_libasan-common()
1305 {
1306 install_gcc_library "libsanitizer/asan" || die
1307 }
1308
1309 src_install_libasan()
1310 {
1311 src_install_libasan-common || die
1312 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1313 then
1314 keep_dev_package_libs 'libasan.so.*' || die
1315 fi
1316 }
1317
1318 src_install_libasan-dev()
1319 {
1320 src_install_libasan-common || die
1321 delete_dev_package_libs 'libasan.so.*' || die
1322 }
1323
1324 src_install_liblsan-common()
1325 {
1326 install_gcc_library "libsanitizer/lsan" || die
1327 }
1328
1329 src_install_liblsan()
1330 {
1331 src_install_liblsan-common || die
1332 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1333 then
1334 keep_dev_package_libs 'liblsan.so.*' || die
1335 fi
1336 }
1337
1338 src_install_liblsan-dev()
1339 {
1340 src_install_liblsan-common || die
1341 delete_dev_package_libs 'liblsan.so.*' || die
1342 }
1343
1344 src_install_libubsan-common()
1345 {
1346 install_gcc_library "libsanitizer/ubsan" || die
1347 }
1348
1349 src_install_libubsan()
1350 {
1351 src_install_libubsan-common || die
1352 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1353 then
1354 keep_dev_package_libs 'libubsan.so.*' || die
1355 fi
1356 }
1357
1358 src_install_libubsan-dev()
1359 {
1360 src_install_libubsan-common || die
1361 delete_dev_package_libs 'libubsan.so.*' || die
1362 }
1363
1364 src_install_libtsan-common()
1365 {
1366 install_gcc_library "libsanitizer/tsan" || die
1367 }
1368
1369 src_install_libtsan()
1370 {
1371 src_install_libtsan-common || die
1372 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1373 then
1374 keep_dev_package_libs 'libtsan.so.*' || die
1375 fi
1376 }
1377 src_install_libtsan-dev()
1378 {
1379 src_install_libtsan-common || die
1380 delete_dev_package_libs 'libtsan.so.*' || die
1381 }
1382
1383 src_install_libcilkrts-common()
1384 {
1385 install_gcc_library "libcilkrts" || die
1386 }
1387
1388 src_install_libcilkrts()
1389 {
1390 src_install_libcilkrts-common || die
1391 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1392 then
1393 keep_dev_package_libs 'libcilkrts.so.*' || die
1394 fi
1395 }
1396
1397 src_install_libcilkrts-dev()
1398 {
1399 src_install_libcilkrts-common || die
1400 delete_dev_package_libs 'libcilkrts.so.*' || die
1401 }
1402
1403 src_install_libvtv-common()
1404 {
1405 install_gcc_library "libvtv" || die
1406 }
1407
1408 src_install_libvtv()
1409 {
1410 src_install_libvtv-common || die
1411 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1412 then
1413 keep_dev_package_libs 'libvtv.so.*' || die
1414 fi
1415 }
1416
1417 src_install_libvtv-dev()
1418 {
1419 src_install_libvtv-common || die
1420 delete_dev_package_libs 'libvtv.so.*' || die
1421 }
1422
1423 src_install_libmpx-common()
1424 {
1425 install_gcc_library "libmpx" || die
1426 }
1427
1428 src_install_libmpx()
1429 {
1430 src_install_libmpx-common || die
1431 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1432 then
1433 keep_dev_package_libs 'libmpx.so.*' || die
1434 fi
1435 }
1436
1437 src_install_libmpx-dev()
1438 {
1439 src_install_libmpx-common || die
1440 delete_dev_package_libs 'libmpx.so.*' || die
1441 }
1442
1443 src_install_libstdc++-common()
1444 {
1445 install_gcc_library "libstdc++-v3/src" || die
1446 mmake -j1 -C ${CHOST}/libstdc++-v3/po DESTDIR=${BINDIR} install || die
1447 }
1448
1449 src_install_libstdc++()
1450 {
1451 src_install_libstdc++-common || die
1452 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1453 then
1454 keep_dev_package_libs 'libstdc++.so.*' || die
1455 fi
1456 }
1457
1458 src_install_libstdc++-dev()
1459 {
1460 src_install_libstdc++-common || die
1461 delete_dev_package_libs 'libstdc++.so.*' || die
1462 }
1463
1464 if lang_enabled java
1465 then
1466 src_install_libgcj-common()
1467 {
1468 install_gcc_library "libjava"
1469 }
1470
1471 src_install_libgcj()
1472 {
1473 src_install_libgcj-common || die
1474 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1475 then
1476 keep_dev_package_libs 'libgcj_bc.so.* libgcj-tools.so.* libgcj.so.* libgij.so.*' || die
1477 fi
1478 }
1479
1480 src_install_libgcj-dev()
1481 {
1482 src_install_libgcj-common || die
1483 delete_dev_package_libs 'libgcj_bc.so.* libgcj-tools.so.* libgcj.so.* libgij.so.*' || die
1484 }
1485
1486 src_install_gcc-gcj()
1487 {
1488 cd ${SRCDIR}/build
1489
1490 # install only java targets
1491 make -C ${CHOST}/libjava DESTDIR=${BINDIR} install || die
1492 make -C gcc DESTDIR=${BINDIR} java.install-common || die
1493 make -C gcc DESTDIR=${BINDIR} java.install-man || die
1494
1495 # missing bins
1496 minstallexec gcc/jc1 /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/ || die
1497 minstallexec gcc/jvgenmain /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/ || die
1498
1499 # remove libraries and files already included elsewhere
1500 mmake -j1 -C ${CHOST}/libjava DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1501 mdelete /usr/$(mlibdir)/libgcj_bc.so\* || die
1502 if [[ $(mlibdir) != lib ]]
1503 then
1504 mmake -j1 -C ${CHOST}/32/libjava DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1505 mdelete /usr/lib/libgcj_bc.so\* || die
1506 fi
1507
1508 # versionize all bins and symlink them
1509 versionize_all_bins || die
1510 }
1511 fi
1512
1513 if lang_enabled ada
1514 then
1515 src_install_libgnat-common()
1516 {
1517 cd ${SRCDIR}/build
1518 mmake -C gcc DESTDIR=${BINDIR} ada.install-common || die
1519 if [[ $(mlibdir) != lib ]]
1520 then
1521 # install 32bit libgnat
1522 # make tries to execute the libs, which fails
1523 # we override the INSTALL commands to *not* do that
1524 mmake -C ${CHOST}/32/libada DESTDIR=${BINDIR} INSTALL="install" INSTALL_DATA="install -m0644" install-gnatlib || die
1525 fi
1526 zapmost ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/adalib libgnarl*.* libgnat*.* || die
1527
1528 # move so-libs to the right location
1529 mmove ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/adalib/libgnarl-${PVER%.*}.so /usr/$(mlibdir) || die
1530 mmove ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/adalib/libgnat-${PVER%.*}.so /usr/$(mlibdir) || die
1531 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/adalib/libgnarl.so || die
1532 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/adalib/libgnat.so || die
1533 mlink libgnarl-${PVER%.*}.so /usr/$(mlibdir)/libgnarl.so || die
1534 mlink libgnat-${PVER%.*}.so /usr/$(mlibdir)/libgnat.so || die
1535 mlink ../../../../libgnarl-${PVER%.*}.so /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/adalib/libgnarl-${PVER%.*}.so || die
1536 mlink ../../../../libgnat-${PVER%.*}.so /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/adalib/libgnat-${PVER%.*}.so || die
1537 mlink ../../../../libgnarl-${PVER%.*}.so /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/adalib/libgnarl.so || die
1538 mlink ../../../../libgnat-${PVER%.*}.so /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/adalib/libgnat.so || die
1539
1540 mdelete -r /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/adainclude || die
1541
1542 if [[ $(mlibdir) != lib ]]
1543 then
1544 zapmost ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/adalib libgnarl*.* libgnat*.* || die
1545
1546 # move so-libs to the right location
1547 minstalldir /usr/lib || die
1548 mmove ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/adalib/libgnarl-${PVER%.*}.so /usr/lib || die
1549 mmove ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/adalib/libgnat-${PVER%.*}.so /usr/lib || die
1550 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/adalib/libgnarl.so || die
1551 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/adalib/libgnat.so || die
1552 mlink libgnarl-${PVER%.*}.so /usr/lib/libgnarl.so || die
1553 mlink libgnat-${PVER%.*}.so /usr/lib/libgnat.so || die
1554 mlink ../../../../../../lib/libgnarl-${PVER%.*}.so /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/adalib/libgnarl-${PVER%.*}.so || die
1555 mlink ../../../../../../lib/libgnat-${PVER%.*}.so /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/adalib/libgnat-${PVER%.*}.so || die
1556 mlink ../../../../../../lib/libgnarl-${PVER%.*}.so /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/adalib/libgnarl.so || die
1557 mlink ../../../../../../lib/libgnat-${PVER%.*}.so /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/adalib/libgnat.so || die
1558
1559 mdelete -r /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/adainclude || die
1560 fi
1561
1562 # remove other
1563 mdelete -r /usr/bin || die
1564 }
1565
1566 src_install_libgnat()
1567 {
1568 src_install_libgnat-common || die
1569 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1570 then
1571 keep_dev_package_libs "libgnarl-${PVER%.*}.so libgnarl.so libgnat-${PVER%.*}.so libgnat.so" || die
1572 fi
1573 }
1574
1575 src_install_libgnat-dev()
1576 {
1577 src_install_libgnat-common || die
1578 delete_dev_package_libs "libgnarl-${PVER%.*}.so libgnarl.so libgnat-${PVER%.*}.so libgnat.so" || die
1579 }
1580
1581 src_install_gcc-gnat()
1582 {
1583 cd ${SRCDIR}/build
1584 mmake -C gcc DESTDIR=${BINDIR} ada.install-common || die
1585 if [[ $(mlibdir) != lib ]]
1586 then
1587 # install 32bit libgnat
1588 # make tries to execute the libs, which fails
1589 # we override the INSTALL commands to *not* do that
1590 mmake -C ${CHOST}/32/libada DESTDIR=${BINDIR} INSTALL="install" INSTALL_DATA="install -m0644" install-gnatlib || die
1591 fi
1592 mmake -C gcc DESTDIR=${BINDIR} ada.install-info || die
1593 minstallexec gcc/gnat1 /usr/$(mlibdir)/gcc/${CHOST}/${PVER} || die
1594
1595 # remove libraries already included elsewhere
1596 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/adalib/libgnarl\*.\* || die
1597 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/adalib/libgnat\*.\* || die
1598 if [[ $(mlibdir) != lib ]]
1599 then
1600 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/adalib/libgnarl\*.\* || die
1601 mdelete /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/adalib/libgnat\*.\* || die
1602 fi
1603
1604 # versionize all bins and symlink them
1605 versionize_all_bins || die
1606 }
1607 fi
1608
1609 if lang_enabled fortran
1610 then
1611 src_install_libgfortran-common()
1612 {
1613 install_gcc_library "libgfortran"
1614 }
1615
1616 src_install_libgfortran()
1617 {
1618 src_install_libgfortran-common || die
1619 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1620 then
1621 keep_dev_package_libs 'libgfortran.so.*' || die
1622 fi
1623 }
1624
1625 src_install_libgfortran-dev()
1626 {
1627 src_install_libgfortran-common || die
1628 delete_dev_package_libs 'libgfortran.so.*' || die
1629 }
1630
1631 src_install_gcc-gfortran()
1632 {
1633 cd ${SRCDIR}/build
1634
1635 # omp headers needed by fortran
1636 mmake -C ${CHOST}/libgomp DESTDIR=${BINDIR} install-nodist_fincludeHEADERS || die
1637 mmake -C gcc DESTDIR=${BINDIR} fortran.install-common || die
1638 mmake -C gcc DESTDIR=${BINDIR} fortran.install-man || die
1639 mmake -C gcc DESTDIR=${BINDIR} fortran.install-info || die
1640 # missing binaries
1641 minstallexec gcc/f951 /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/f951 || die
1642 mlink gfortran /usr/bin/f95 || die
1643
1644 # remove libraries already included elsewhere
1645 mmake -C ${CHOST}/libgomp DESTDIR=${BINDIR} uninstall-nodist_fincludeHEADERS || die
1646
1647 # versionize all bins and symlink them
1648 versionize_all_bins || die
1649 }
1650 fi
1651
1652 if lang_enabled go
1653 then
1654 src_install_libgo-common()
1655 {
1656 install_gcc_library "libgo" || die
1657 }
1658
1659 src_install_libgo()
1660 {
1661 src_install_libgo-common || die
1662 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1663 then
1664 keep_dev_package_libs 'libgo.so.*' || die
1665 fi
1666 }
1667
1668 src_install_libgo-dev()
1669 {
1670 src_install_libgo-common || die
1671 delete_dev_package_libs 'libgo.so.*' || die
1672 }
1673
1674 src_install_gcc-go()
1675 {
1676 cd ${SRCDIR}/build
1677 mmake DESTDIR=${BINDIR} install-target-libgo || die
1678 mmake -C gcc DESTDIR=${BINDIR} go.install-common || die
1679 mmake -C gcc DESTDIR=${BINDIR} go.install-man || die
1680 mmake -C gcc DESTDIR=${BINDIR} go.install-info || die
1681 minstallexec gcc/go1 /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/ || die
1682
1683 # remove libraries already included elsewhere
1684 mmake -j1 -C ${CHOST}/libgo DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1685 mmake -j1 -C ${CHOST}/libatomic DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1686 if [[ $(mlibdir) != lib ]]
1687 then
1688 mmake -j1 -C ${CHOST}/32/libgo DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1689 mmake -j1 -C ${CHOST}/32/libatomic DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
1690 fi
1691
1692 # versionize all bins and symlink them
1693 versionize_all_bins || die
1694 }
1695 fi
1696
1697 if lang_enabled objc
1698 then
1699 src_install_libobjc-common()
1700 {
1701 install_gcc_library "libobjc" || die
1702 }
1703
1704 src_install_libobjc()
1705 {
1706 cd ${SRCDIR}/build
1707 mmake -j1 -C ${CHOST}/libobjc DESTDIR=${BINDIR} install-libs || die
1708 if [[ $(mlibdir) != lib ]]
1709 then
1710 mmake -j1 -C ${CHOST}/32/libobjc DESTDIR=${BINDIR} install-libs || die
1711 fi
1712
1713 if [[ ${ENABLE_DEV_PACKAGES} = 1 ]]
1714 then
1715 keep_dev_package_libs 'libobjc.so.*' || die
1716 fi
1717 }
1718
1719 src_install_libobjc-dev()
1720 {
1721 cd ${SRCDIR}/build
1722 mmake -j1 -C ${CHOST}/libobjc DESTDIR=${BINDIR} install-libs || die
1723 if [[ $(mlibdir) != lib ]]
1724 then
1725 mmake -j1 -C ${CHOST}/32/libobjc DESTDIR=${BINDIR} install-libs || die
1726 fi
1727 delete_dev_package_libs 'libobjc.so.*' || die
1728 }
1729
1730 src_install_gcc-objc()
1731 {
1732 cd ${SRCDIR}/build
1733 mmake -j1 -C ${CHOST}/libobjc DESTDIR=${BINDIR} install-headers || die
1734 if [[ $(mlibdir) != lib ]]
1735 then
1736 mmake -j1 -C ${CHOST}/32/libobjc DESTDIR=${BINDIR} install-headers || die
1737 fi
1738 minstalldir /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/ || die
1739 minstallexec gcc/cc1obj /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/ || die
1740 }
1741
1742 if lang_enabled obj-c++
1743 then
1744 src_install_gcc-objc++()
1745 {
1746 cd ${SRCDIR}/build
1747 minstalldir /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/ || die
1748 minstallexec gcc/cc1objplus /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/ || die
1749 }
1750 fi
1751 fi