Magellan Linux

Annotation of /branches/R11-unstable/include/kde4-split.sminc

Parent Directory Parent Directory | Revision Log Revision Log


Revision 24893 - (hide annotations) (download)
Tue Nov 25 02:21:44 2014 UTC (9 years, 6 months ago) by niro
File size: 4671 byte(s)
-release R11-unstable
1 niro 4133 # $Id$
2    
3     sminclude kde4
4    
5 niro 12303 # generate a meta package
6     # 1=yes, 0=no
7     : ${KDE4_GENERATE_META_PACKAGE=1}
8    
9 niro 4133 # fake an empty src_install for split-packages
10     kde-split_src_install() { :; }
11    
12     kde4-split_src_install_wrapper()
13     {
14     local KDEMODULE="$1"
15    
16     # fix modulename kdesdk4-kate -> kate
17     [[ ${KDEMODULE/${SPLIT_PACKAGE_BASE}-/} != ${KDEMODULE} ]] && KDEMODULE="${KDEMODULE/${SPLIT_PACKAGE_BASE}-/}"
18    
19     cd ${BUILDDIR}/build
20    
21     # install the kde module
22     mmake -C ${KDEMODULE} DESTDIR=${BINDIR} ${KDE4_MAKE_OPTS} install || die
23    
24     # install docs
25     if [[ -d doc/${KDEMODULE} ]]
26     then
27     mmake -C doc/${KDEMODULE} DESTDIR=${BINDIR} ${KDE4_MAKE_OPTS} install || die
28     fi
29    
30     # move dbus service dirs to a proper location if KDEDIR != /usr
31     if [[ ${KDEDIR} != /usr ]]
32     then
33     if [[ -d ${BINDIR}/${KDEDIR}/share/dbus-1 ]]
34     then
35     echo -e "${COLYELLOW}Warning: using dbus hotfix, dbus locations should be fixed!${COLDEFAULT}"
36     minstalldir /usr/share || die
37     cp -R ${BINDIR}/${KDEDIR}/share/dbus-1 ${BINDIR}/usr/share/ || die
38     rm -r ${BINDIR}/${KDEDIR}/share/dbus-1 || die
39     fi
40     fi
41    
42     cd ${SRCDIR}
43     local i
44     for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \
45     FAQ LICENSE NEWS README TODO
46     do
47     if [ -f ${SRCDIR}/${i} ]
48     then
49     minstalldocs ${i} || die
50     fi
51     done
52     }
53    
54 niro 19655 kde4-split_common_dependencies()
55     {
56     local subpackage
57     local commondepend
58    
59     # common dependencies
60     commondepend=">= x11-libs/qt-4.5
61     >= x11-libs/libXext-1.1-r1
62     >= x11-libs/libXt-1
63     >= x11-libs/libXinerama-1
64     >= x11-libs/libXxf86vm-1
65     == kde-base/kdelibs4-${PVER}"
66    
67     if [[ ${PVER%.*} = 4.3 ]]
68     then
69     commondepend+="== kde-base/kdelibs4-experimental-${PVER}"
70     fi
71    
72     case ${PNAME/-${subpackage}} in
73     kdegraphics)
74     commondepend+="
75     == kde-base/kdebase4-runtime-${PVER}
76     >= kde-base/qimageblitz-0.0.4"
77     ;;
78    
79     kdepim)
80     commondepend+="
81     == kde-base/kdebase4-runtime-${PVER}"
82     ;;
83    
84     kdepim-runtime)
85     commondepend+="
86     == kde-base/kdebase4-runtime-${PVER}
87     >= dev-libs/boost-1.40
88     == kde-base/kdepimlibs4-${PVER}"
89     ;;
90    
91     # case ${PN} in
92     # akregator|kaddressbook|kjots|kmail|knode|knotes|korganizer|ktimetracker)
93     # IUSE+=" +kontact"
94     # if ! slot_is_at_least 4.4 ${SLOT} || [[ ${SLOT} == 4.4 && ${PV} < 4.3.68 ]]; then
95     # RDEPEND+=" kontact? ( $(add_kdebase_dep kontactinterfaces) )"
96     # fi
97     # ;;
98     # esac
99     # ;;
100 niro 4133 #
101 niro 19655 # kdegames)
102     # if [[ ${PN} != libkdegames ]]; then
103     # COMMONDEPEND+=" $(add_kdebase_dep libkdegames)"
104     # fi
105     # ;;
106     esac
107     }
108 niro 4133
109     kde4-split_generate_split_info()
110     {
111     local subpackage
112    
113 niro 9863 # get all subpackages with the specified pcat
114 niro 4133 for subpackage in ${SPLIT_PACKAGES}
115     do
116     # exclude meta packages
117     [[ ${subpackage} = ${PNAME}-meta ]] && continue
118    
119     eval "kde4-split_split_info_${subpackage}()
120     {
121     DESCRIPTION=\"'${subpackage/${PNAME}-/}' from ${PNAME}.\"
122     DEPEND=\"== kde-base/kdelibs4-${PVER}
123     == kde-base/kdepimlibs4-${PVER}
124     == kde-base/kdebase4-runtime-${PVER}\"
125 niro 4898
126     if [[ ${PVER%.*} = 4.3 ]]
127     then
128 niro 4899 DEPEND+=\"
129 niro 4900 == kde-base/kdelibs4-experimental-${PVER}\"
130 niro 4898 fi
131 niro 4133 }"
132     export_inherits kde4-split split_info_${subpackage}
133     done
134     }
135    
136     kde4-split_generate_meta_package()
137     {
138     local subpackage
139     local export_depends
140    
141 niro 9863 # get all subpackages with the specified pcat
142 niro 4133 for subpackage in ${SPLIT_PACKAGES}
143     do
144 niro 9863 # we assume the pcat is always kde-base!
145 niro 4133 export_depends="${export_depends}
146 niro 9863 >= ${PCAT}/${subpackage}-${PVER}"
147 niro 4133 done
148    
149     eval "split_info_${PNAME}-meta()
150     {
151     DESCRIPTION=\"Meta package for ${PNAME}.\"
152     DEPEND=\"${export_depends}\"
153     PKGTYPE=\"virtual\"
154    
155     # drop everything we don't need in the meta package:
156     INHERITS=""
157     SPECIAL_VARS=""
158     SPECIAL_FUNCTIONS=""
159     SDEPEND=""
160     PROVIDE=""
161     unset -f preinstall
162     unset -f postinstall
163     unset -f preremove
164     unset -f postremove
165     }"
166    
167     export SPLIT_PACKAGES+=" ${PNAME}-meta"
168     }
169    
170     kde4-split_generate_src_install()
171     {
172     local subpackage
173    
174     # run kde4-split_src_install for all SPLIT_PACKAGES
175     for subpackage in ${SPLIT_PACKAGES}
176     do
177     # exclude meta packages
178     [[ ${subpackage} = ${PNAME}-meta ]] && continue
179    
180     # create function kde-split_src_install-${subpackage}
181     eval "kde4-split_src_install_${subpackage}(){ kde4-split_src_install_wrapper ${subpackage} || die; }"
182    
183     # export kde-split_src_install_${subpackage} as src_install_${subpackage}
184     export_inherits kde4-split src_install_${subpackage}
185     done
186     }
187    
188     # generate generic split_infos
189     kde4-split_generate_split_info
190    
191     # generate a meta package
192     # run this after kde-split_generate_split_info
193     # as we add the virtual meta package
194 niro 12303 [[ ${KDE4_GENERATE_META_PACKAGE} = 1 ]] && kde4-split_generate_meta_package
195 niro 4133
196     # run kde4-split_src_install for all SPLIT_PACKAGES
197     kde4-split_generate_src_install
198    
199     # export empty src_install
200     export_inherits kde4-split src_install