Magellan Linux

Annotation of /smage/trunk/include/gcc-toolchain.sminc

Parent Directory Parent Directory | Revision Log Revision Log


Revision 16200 - (hide annotations) (download)
Tue Sep 19 11:27:04 2023 UTC (7 months, 3 weeks ago) by niro
File size: 3176 byte(s)
-sync with upstream
1 niro 9533 # $Id$
2     # gcc toolchain functions
3    
4     # helper functions
5     lang_enabled()
6     {
7     local lang="$1"
8    
9     if [[ ${MyLanguages//${lang}} != ${MyLanguages} ]]
10     then
11     return 0
12     else
13     return 1
14     fi
15     }
16    
17     install_gcc_library()
18     {
19     local library="$1"
20    
21     cd ${SRCDIR}/build
22     mmake -C ${CHOST}/${library} DESTDIR=${BINDIR} install-toolexeclibLTLIBRARIES || die
23 niro 16200 if [[ ${ARCH} = x86_64 ]]
24 niro 9533 then
25     if [ -d ${CHOST}/32/${library} ]
26     then
27     mmake -C ${CHOST}/32/${library} DESTDIR=${BINDIR} install-toolexeclibLTLIBRARIES || die
28     fi
29     fi
30     }
31    
32 niro 13738 uninstall_gcc_library()
33     {
34     local library="$1"
35    
36     cd ${SRCDIR}/build
37     mmake -C ${CHOST}/${library} DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
38 niro 16200 if [[ ${ARCH} = x86_64 ]]
39 niro 13738 then
40     if [ -d ${CHOST}/32/${library} ]
41     then
42     mmake -C ${CHOST}/32/${library} DESTDIR=${BINDIR} uninstall-toolexeclibLTLIBRARIES || die
43     fi
44     fi
45     }
46    
47 niro 9533 versionize_all_bins()
48     {
49     local bin
50    
51     for bin in $(find ${BINDIR}/usr/bin -type f)
52     do
53     # only rename unversionized bins
54     if [[ ${bin//${PVER}} = ${bin} ]] && [[ ! -e ${bin}-${PVER} ]]
55     then
56     echo ${bin}
57     mv ${bin} ${bin}-${PVER} || die
58     ln -snf $(basename ${bin}-${PVER}) ${bin} || die
59     fi
60     done
61     }
62    
63     keep_dev_package_libs()
64     {
65     local libs="$@"
66    
67 niro 13765 # run zapmost only if the directories exists, which fixes empy libvtv issues
68     if [[ -d ${BINDIR}/usr/$(mlibdir) ]]
69     then
70     # cleanup, only keep the libs, everything else get provided by the dev-package
71     zapmost ${BINDIR}/usr/$(mlibdir) "${libs}" || die
72     fi
73 niro 9533 # multilib as well
74 niro 16200 if [[ $(ARCH=x86_64 mlibdir) != lib ]] && [[ -d ${BINDIR}/usr/$(ARCH=x86_64 mlibdir) ]]
75 niro 9533 then
76 niro 16200 zapmost ${BINDIR}/usr/$(ARCH=x86_64 mlibdir) "${libs}" || die
77 niro 9533 fi
78 niro 16200 if [[ $(ARCH=i686 mlibdir) != lib ]] && [[ -d ${BINDIR}/usr/$(ARCH=i686 mlibdir) ]] && [[ ${MAGE_LIB32_SPLIT} != true ]]
79     then
80     zapmost ${BINDIR}/usr/$(ARCH=i686 mlibdir) "${libs}" || die
81     fi
82 niro 9533
83     # cleanup the rest, keep only libs
84 niro 16200 zapmost ${BINDIR} usr/$(mlibdir) \
85     $([[ $(ARCH=x86_64 mlibdir) != lib ]] && echo "usr/$(ARCH=x86_64 mlibdir)") \
86     $([[ $(ARCH=i686 mlibdir) != lib ]] && [[ ${MAGE_LIB32_SPLIT} != true ]] && echo "usr/$(ARCH=i686 mlibdir)") || die
87 niro 9533 }
88    
89 niro 16200 keep_dev_package_libs_only32()
90     {
91     local libs="$@"
92    
93     if [[ $(ARCH=i686 mlibdir) != lib ]] && [[ -d ${BINDIR}/usr/$(ARCH=i686 mlibdir) ]] && [[ ${MAGE_LIB32_SPLIT} = true ]]
94     then
95     zapmost ${BINDIR}/usr/$(ARCH=i686 mlibdir) "${libs}" || die
96     fi
97    
98     # cleanup the rest, keep only libs
99     zapmost ${BINDIR} \
100     $([[ $(ARCH=i686 mlibdir) != lib ]] && [[ ${MAGE_LIB32_SPLIT} = true ]] && echo "usr/$(ARCH=i686 mlibdir)") || die
101     }
102    
103 niro 9533 delete_dev_package_libs()
104     {
105     local libs="$@"
106     local i
107    
108     # cleanup, the solibs are provided by the non-dev package
109     for i in ${libs}
110     do
111 niro 13765 # run cleanup only if the directories exists, which fixes empy libvtv issues
112     if [[ -d ${BINDIR}/usr/$(mlibdir) ]]
113     then
114     rm ${BINDIR}/usr/$(mlibdir)/${i} || die
115     fi
116 niro 9533 # multilib as well
117 niro 16200 if [[ $(ARCH=x86_64 mlibdir) != lib ]] && [[ -d ${BINDIR}/usr/$(ARCH=x86_64 mlibdir) ]]
118 niro 9533 then
119 niro 16200 rm ${BINDIR}/usr/$(ARCH=x86_64 mlibdir)/${i} || die
120 niro 9533 fi
121 niro 16200 if [[ $(ARCH=i686 mlibdir) != lib ]] && [[ -d ${BINDIR}/usr/$(ARCH=i686 mlibdir) ]]
122     then
123     rm ${BINDIR}/usr/$(ARCH=i686 mlibdir)/${i} || die
124     fi
125 niro 9533 done
126     }