27 |
|
|
28 |
SPLIT_PACKAGES="libgcc libssp libgomp libmudflap libquadmath libitm libatomic libstdc++ libasan" |
SPLIT_PACKAGES="libgcc libssp libgomp libmudflap libquadmath libitm libatomic libstdc++ libasan" |
29 |
|
|
30 |
|
# split solib names |
31 |
|
SPLIT_SOLIBS="libgcc_s libssp libgomp libmudflap libquadmath libitm libatomic libstdc++ libasan" |
32 |
|
|
33 |
# thread sanitizer is only available on x86_64 |
# thread sanitizer is only available on x86_64 |
34 |
if [[ ${ARCH} = x86_64 ]] |
if [[ ${ARCH} = x86_64 ]] |
35 |
then |
then |
36 |
SPLIT_PACKAGES+=" libtsan" |
SPLIT_PACKAGES+=" libtsan" |
37 |
|
SPLIT_SOLIBS+=" libtsan" |
38 |
fi |
fi |
39 |
|
|
40 |
# always enable gcc |
# always enable gcc |
65 |
done |
done |
66 |
} |
} |
67 |
|
|
68 |
|
remove_split_solibs() |
69 |
|
{ |
70 |
|
local libname |
71 |
|
|
72 |
|
for libname in ${SPLIT_SOLIBS} |
73 |
|
do |
74 |
|
rm -f ${BINDIR}/usr/$(mlibdir)/${libname}*.* || die |
75 |
|
if [[ $(mlibdir) != lib ]] && [[ -d ${BINDIR}/usr/lib ]] |
76 |
|
then |
77 |
|
rm -f ${BINDIR}/usr/$(mlibdir)/${libname}*.* || die |
78 |
|
fi |
79 |
|
done |
80 |
|
} |
81 |
|
|
82 |
# install_gcc_library TARGET LIBNAME |
# install_gcc_library TARGET LIBNAME |
83 |
install_gcc_library() |
install_gcc_library() |
84 |
{ |
{ |
119 |
|
|
120 |
# provided java version |
# provided java version |
121 |
JAVA_PVER="1.5.0-gcj-1.5.0.0" |
JAVA_PVER="1.5.0-gcj-1.5.0.0" |
122 |
|
|
123 |
|
SPLIT_SOLIBS+=" libgcj libgij" |
124 |
fi |
fi |
125 |
|
|
126 |
if lang_enabled ada |
if lang_enabled ada |
142 |
then |
then |
143 |
SPLIT_PACKAGES+=" libgfortran gcc-gfortran" |
SPLIT_PACKAGES+=" libgfortran gcc-gfortran" |
144 |
FORTRAN_DEPEND="" |
FORTRAN_DEPEND="" |
145 |
|
|
146 |
|
SPLIT_SOLIBS+=" libgfortran" |
147 |
fi |
fi |
148 |
|
|
149 |
if lang_enabled go |
if lang_enabled go |
150 |
then |
then |
151 |
SPLIT_PACKAGES+=" libgo gcc-go" |
SPLIT_PACKAGES+=" libgo gcc-go" |
152 |
GO_DEPEND="" |
GO_DEPEND="" |
153 |
|
|
154 |
|
SPLIT_SOLIBS+=" libgo" |
155 |
fi |
fi |
156 |
|
|
157 |
if lang_enabled objc |
if lang_enabled objc |
159 |
SPLIT_PACKAGES+=" libobjc gcc-objc" |
SPLIT_PACKAGES+=" libobjc gcc-objc" |
160 |
OBJC_DEPEND="" |
OBJC_DEPEND="" |
161 |
|
|
162 |
|
SPLIT_SOLIBS+=" libobjc" |
163 |
|
|
164 |
if lang_enabled obj-c++ |
if lang_enabled obj-c++ |
165 |
then |
then |
166 |
SPLIT_PACKAGES+=" gcc-objc++" |
SPLIT_PACKAGES+=" gcc-objc++" |
630 |
make DESTDIR=${BINDIR} install || die |
make DESTDIR=${BINDIR} install || die |
631 |
|
|
632 |
# deletes libstdc++ && libgcc_s && libssp && libgomp libmudflap && libquadmath && libitm && libatomic && libasan |
# deletes libstdc++ && libgcc_s && libssp && libgomp libmudflap && libquadmath && libitm && libatomic && libasan |
633 |
rm ${BINDIR}/usr/$(mlibdir)/{libgcc_s,libstdc++,libssp,libgomp,libmudflap,libquadmath,libitm,libatomic,libasan}*.* || die |
# rm ${BINDIR}/usr/$(mlibdir)/{libgcc_s,libstdc++,libssp,libgomp,libmudflap,libquadmath,libitm,libatomic,libasan}*.* || die |
634 |
if [[ $(mlibdir) != lib ]] && [[ -d ${BINDIR}/usr/lib ]] |
# if [[ $(mlibdir) != lib ]] && [[ -d ${BINDIR}/usr/lib ]] |
635 |
then |
# then |
636 |
rm ${BINDIR}/usr/lib/{libgcc_s,libstdc++,libssp,libgomp,libmudflap,libquadmath,libitm,libatomic,libasan}*.* || die |
# rm ${BINDIR}/usr/lib/{libgcc_s,libstdc++,libssp,libgomp,libmudflap,libquadmath,libitm,libatomic,libasan}*.* || die |
637 |
fi |
# fi |
638 |
|
remove_split_solibs || die |
639 |
# thread sanitizer are only available on x86_64 |
|
640 |
if [[ ${ARCH} = x86_64 ]] |
# # thread sanitizer are only available on x86_64 |
641 |
then |
# if [[ ${ARCH} = x86_64 ]] |
642 |
rm ${BINDIR}/usr/$(mlibdir)/libtsan*.* || die |
# then |
643 |
fi |
# rm ${BINDIR}/usr/$(mlibdir)/libtsan*.* || die |
644 |
|
# fi |
645 |
|
|
646 |
# deletes all java specific |
# deletes all java specific |
647 |
if lang_enabled java |
if lang_enabled java |
648 |
then |
then |
649 |
rm -r ${BINDIR}/usr/include/c++/${PVER}/{gcj,gnu,java{,x},org,sun} || die |
rm -r ${BINDIR}/usr/include/c++/${PVER}/{gcj,gnu,java{,x},org,sun} || die |
650 |
rm ${BINDIR}/usr/$(mlibdir)/{libgcj,libgij}*.* || die |
# rm ${BINDIR}/usr/$(mlibdir)/{libgcj,libgij}*.* || die |
651 |
rm -r ${BINDIR}/usr/$(mlibdir)/gcj* || die |
rm -r ${BINDIR}/usr/$(mlibdir)/gcj* || die |
652 |
rm ${BINDIR}/usr/$(mlibdir)/logging.properties || die |
rm ${BINDIR}/usr/$(mlibdir)/logging.properties || die |
653 |
rm ${BINDIR}/usr/$(mlibdir)/pkgconfig/libgcj*.pc || die |
rm ${BINDIR}/usr/$(mlibdir)/pkgconfig/libgcj*.pc || die |
659 |
rm ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/include/{{jawt,jni}{,_md},jvmpi}.h || die |
rm ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/include/{{jawt,jni}{,_md},jvmpi}.h || die |
660 |
if [[ $(mlibdir) != lib ]] && [[ -d ${BINDIR}/usr/lib ]] |
if [[ $(mlibdir) != lib ]] && [[ -d ${BINDIR}/usr/lib ]] |
661 |
then |
then |
662 |
rm ${BINDIR}/usr/lib/{libgcj,libgij}*.* || die |
# rm ${BINDIR}/usr/lib/{libgcj,libgij}*.* || die |
663 |
rm -r ${BINDIR}/usr/lib/gcj* || die |
rm -r ${BINDIR}/usr/lib/gcj* || die |
664 |
rm ${BINDIR}/usr/lib/logging.properties || die |
rm ${BINDIR}/usr/lib/logging.properties || die |
665 |
rm -r ${BINDIR}/usr/lib/security || die |
rm -r ${BINDIR}/usr/lib/security || die |
701 |
then |
then |
702 |
rm ${BINDIR}/usr/bin/gfortran || die |
rm ${BINDIR}/usr/bin/gfortran || die |
703 |
rm ${BINDIR}/usr/bin/${CHOST}-gfortran || die |
rm ${BINDIR}/usr/bin/${CHOST}-gfortran || die |
704 |
rm ${BINDIR}/usr/$(mlibdir)/libgfortran*.* || die |
# rm ${BINDIR}/usr/$(mlibdir)/libgfortran*.* || die |
705 |
rm ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/f951 || die |
rm ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/f951 || die |
706 |
rm ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/libgfortran*.* || die |
rm ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/libgfortran*.* || die |
707 |
if [[ $(mlibdir) != lib ]] |
if [[ $(mlibdir) != lib ]] |
708 |
then |
then |
709 |
rm ${BINDIR}/usr/lib/libgfortran*.* || die |
# rm ${BINDIR}/usr/lib/libgfortran*.* || die |
710 |
rm ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/libgfortran*.* || die |
rm ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/32/libgfortran*.* || die |
711 |
fi |
fi |
712 |
rm ${BINDIR}/usr/share/info/gfortran.info || die |
rm ${BINDIR}/usr/share/info/gfortran.info || die |
718 |
then |
then |
719 |
rm ${BINDIR}/usr/bin/gccgo || die |
rm ${BINDIR}/usr/bin/gccgo || die |
720 |
rm ${BINDIR}/usr/bin/${CHOST}-gccgo || die |
rm ${BINDIR}/usr/bin/${CHOST}-gccgo || die |
721 |
rm ${BINDIR}/usr/$(mlibdir)/libgo*.* || die |
# rm ${BINDIR}/usr/$(mlibdir)/libgo*.* || die |
722 |
rm -r ${BINDIR}/usr/$(mlibdir)/go || die |
rm -r ${BINDIR}/usr/$(mlibdir)/go || die |
723 |
rm ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/go1 || die |
rm ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/go1 || die |
724 |
if [[ $(mlibdir) != lib ]] |
if [[ $(mlibdir) != lib ]] |
725 |
then |
then |
726 |
rm ${BINDIR}/usr/lib/libgo*.* || die |
# rm ${BINDIR}/usr/lib/libgo*.* || die |
727 |
rm -r ${BINDIR}/usr/lib/go || die |
rm -r ${BINDIR}/usr/lib/go || die |
728 |
fi |
fi |
729 |
rm ${BINDIR}/usr/share/info/gccgo.info || die |
rm ${BINDIR}/usr/share/info/gccgo.info || die |
733 |
# deletes all objc + obj-c++ |
# deletes all objc + obj-c++ |
734 |
if lang_enabled objc |
if lang_enabled objc |
735 |
then |
then |
736 |
rm ${BINDIR}/usr/$(mlibdir)/libobjc*.* || die |
# rm ${BINDIR}/usr/$(mlibdir)/libobjc*.* || die |
737 |
rm ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/cc1obj || die |
rm ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/cc1obj || die |
738 |
rm -r ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/include/objc || die |
rm -r ${BINDIR}/usr/$(mlibdir)/gcc/${CHOST}/${PVER}/include/objc || die |
739 |
if [[ $(mlibdir) != lib ]] |
if [[ $(mlibdir) != lib ]] |
740 |
then |
then |
741 |
rm ${BINDIR}/usr/lib/libobjc*.* || die |
# rm ${BINDIR}/usr/lib/libobjc*.* || die |
742 |
fi |
fi |
743 |
|
|
744 |
if lang_enabled obj-c++ |
if lang_enabled obj-c++ |
867 |
minstallexec gcc/jvgenmain /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/ || die |
minstallexec gcc/jvgenmain /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/ || die |
868 |
|
|
869 |
# remove libraries already included elsewhere |
# remove libraries already included elsewhere |
870 |
rm ${BINDIR}/usr/$(mlibdir)/libgcj*.* || die |
remove_split_solibs || die |
871 |
rm ${BINDIR}/usr/$(mlibdir)/libgij*.* || die |
# rm ${BINDIR}/usr/$(mlibdir)/libgcj*.* || die |
872 |
if [[ $(mlibdir) != lib ]] |
# rm ${BINDIR}/usr/$(mlibdir)/libgij*.* || die |
873 |
then |
# |
874 |
rm ${BINDIR}/usr/lib/libgcj*.* || die |
# if [[ $(mlibdir) != lib ]] |
875 |
rm ${BINDIR}/usr/lib/libgij*.* || die |
# then |
876 |
fi |
# rm ${BINDIR}/usr/lib/libgcj*.* || die |
877 |
|
# rm ${BINDIR}/usr/lib/libgij*.* || die |
878 |
|
# fi |
879 |
|
|
880 |
# versionize all bins and symlink them |
# versionize all bins and symlink them |
881 |
versionize_all_bins || die |
versionize_all_bins || die |
966 |
minstallexec gcc/f951 /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/f951 || die |
minstallexec gcc/f951 /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/f951 || die |
967 |
|
|
968 |
# remove libraries already included elsewhere |
# remove libraries already included elsewhere |
969 |
rm ${BINDIR}/usr/$(mlibdir)/libgfortran*.* || die |
remove_split_solibs || die |
970 |
if [[ $(mlibdir) != lib ]] |
# rm ${BINDIR}/usr/$(mlibdir)/libgfortran*.* || die |
971 |
then |
# if [[ $(mlibdir) != lib ]] |
972 |
rm ${BINDIR}/usr/lib/libgfortran*.* || die |
# then |
973 |
fi |
# rm ${BINDIR}/usr/lib/libgfortran*.* || die |
974 |
|
# fi |
975 |
|
|
976 |
# versionize all bins and symlink them |
# versionize all bins and symlink them |
977 |
versionize_all_bins || die |
versionize_all_bins || die |
996 |
minstallexec gcc/go1 /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/ || die |
minstallexec gcc/go1 /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/ || die |
997 |
|
|
998 |
# remove libraries already included elsewhere |
# remove libraries already included elsewhere |
999 |
rm ${BINDIR}/usr/$(mlibdir)/libgo*.* || die |
remove_split_solibs || die |
1000 |
if [[ $(mlibdir) != lib ]] |
# rm ${BINDIR}/usr/$(mlibdir)/libgo*.* || die |
1001 |
then |
# if [[ $(mlibdir) != lib ]] |
1002 |
rm ${BINDIR}/usr/lib/libgo*.* || die |
# then |
1003 |
fi |
# rm ${BINDIR}/usr/lib/libgo*.* || die |
1004 |
|
# fi |
1005 |
|
|
1006 |
# versionize all bins and symlink them |
# versionize all bins and symlink them |
1007 |
versionize_all_bins || die |
versionize_all_bins || die |
1026 |
minstallexec gcc/cc1obj /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/ || die |
minstallexec gcc/cc1obj /usr/$(mlibdir)/gcc/${CHOST}/${PVER}/ || die |
1027 |
|
|
1028 |
# remove libraries already included elsewhere |
# remove libraries already included elsewhere |
1029 |
rm ${BINDIR}/usr/$(mlibdir)/libobjc*.* || die |
remove_split_solibs || die |
1030 |
if [[ $(mlibdir) != lib ]] |
# rm ${BINDIR}/usr/$(mlibdir)/libobjc*.* || die |
1031 |
then |
# if [[ $(mlibdir) != lib ]] |
1032 |
rm ${BINDIR}/usr/lib/libobjc*.* || die |
# then |
1033 |
fi |
# rm ${BINDIR}/usr/lib/libobjc*.* || die |
1034 |
|
# fi |
1035 |
} |
} |
1036 |
|
|
1037 |
if lang_enabled obj-c++ |
if lang_enabled obj-c++ |