Contents of /branches/R11-unstable/include/kde4.sminc
Parent Directory | Revision Log
Revision 23681 -
(show annotations)
(download)
Thu Jul 10 07:31:21 2014 UTC (10 years, 2 months ago) by niro
Original Path: trunk/include/kde4.sminc
File size: 5979 byte(s)
Thu Jul 10 07:31:21 2014 UTC (10 years, 2 months ago) by niro
Original Path: trunk/include/kde4.sminc
File size: 5979 byte(s)
-added kde4_add_baloo_depend() and kde_add_nepomuk_depend() functions
1 | # $Id$ |
2 | |
3 | sminclude mtools cmake qt4 dbus |
4 | msetfeature "!check" # no check target in Makefile |
5 | |
6 | ## some global vars ## |
7 | export KDEDIR=/usr |
8 | export KDECONFDIR=/etc/kde4 |
9 | export QT_PLUGIN_PATH=${KDEDIR}/$(mlibdir)/kde4/plugins |
10 | |
11 | # fixes some compile issues ala "kde-config: command not found" |
12 | export PATH="${KDEDIR}/bin:${PATH}" |
13 | export PKG_CONFIG_PATH=${PKG_CONFIG_PATH}:${KDEDIR}/$(mlibdir)/pkgconfig |
14 | |
15 | # if kde is already installed it may fuck up the build process because it |
16 | # try to use the wrong docp etc. |
17 | # so we prevent this: |
18 | export KDEDIRS=${KDEDIR} |
19 | |
20 | # nepomuk or baloo support or both? |
21 | KDE4_ENABLE_NEPOMUK=0 |
22 | KDE4_ENABLE_BALOO=1 |
23 | |
24 | # some sane default values |
25 | : ${PCAT="kde-base"} |
26 | if [[ -z ${SRCFILE} ]] |
27 | then |
28 | if [[ ${PVER%%.*} = 0 ]] |
29 | then |
30 | KDE4_TARBALL_EXTENSION="tar.bz2" |
31 | elif [[ ${PVER//.} -ge 483 ]] |
32 | then |
33 | KDE4_TARBALL_EXTENSION="tar.xz" |
34 | else |
35 | KDE4_TARBALL_EXTENSION="tar.bz2" |
36 | fi |
37 | fi |
38 | : ${SRCFILE="${PNAME/4/}-${PVER}.${KDE4_TARBALL_EXTENSION}"} |
39 | : ${SRCDIR="${BUILDDIR}/${PNAME/4/}-${PVER}"} |
40 | : ${DESCRIPTION="${PNAME}"} |
41 | : ${HOMEPAGE="http://www.kde.org/"} |
42 | |
43 | case ${PNAME} in |
44 | oxygen-icons|kde-base-artwork|kdeartwork-*|kde-wallpapers) ;; # no common deps required |
45 | *) |
46 | DEPEND="${DEPEND} |
47 | >= x11-libs/libXt-1 |
48 | >= x11-libs/libXinerama-1 |
49 | >= x11-libs/qt4-gui-4.8 |
50 | >= x11-libs/qt4-qt3support-4.8 |
51 | >= x11-libs/qt4-script-4.8 |
52 | >= x11-libs/qt4-sql-4.8 |
53 | >= x11-libs/qt4-svg-4.8 |
54 | >= x11-libs/qt4-test-4.8 |
55 | >= x11-libs/qt4-dbus-4.8 |
56 | >= x11-libs/qt4-opengl-4.8 |
57 | >= x11-libs/qt4-webkit-4.8 |
58 | >= x11-libs/qt4-declarative-4.8" |
59 | ;; |
60 | esac |
61 | |
62 | case ${PNAME} in |
63 | phonon|phonon-backend-*|oxygen-icons|kde-base-artwork|kdeartwork-*|kde-wallpapers|automoc4) ;; # no phonon deps required |
64 | *) |
65 | DEPEND="${DEPEND} |
66 | >= virtual/phonon |
67 | >= virtual/phonon-backend" |
68 | ;; |
69 | esac |
70 | |
71 | SDEPEND="${SDEPEND} |
72 | >= dev-util/cmake-2.8.12 |
73 | >= dev-util/pkgconfig-0.25 |
74 | >= app-text/docbook-xml-dtd42-4.2 |
75 | >= app-text/docbook-xsl-stylesheets-1.76" |
76 | |
77 | if [[ ${PNAME} != automoc4 ]] |
78 | then |
79 | SDEPEND="${SDEPEND} |
80 | >= kde-base/automoc4-0.9.88" |
81 | fi |
82 | |
83 | # small hack to fix kdemirrors |
84 | [[ ${KDE_MIRROR_UNSTABLE} = 1 ]] && KDE_MIRRORS=$(echo ${KDE_MIRRORS} | sed "s:/stable:/unstable:g") |
85 | |
86 | SRC_URI=( |
87 | ${SRC_URI[*]} |
88 | kde://${PVER}/src/${SRCFILE} |
89 | kde://${PVER%.*}/src/${SRCFILE} |
90 | mirror://${PNAME}/${SRCFILE} |
91 | ) |
92 | |
93 | UP2DATE="updatecmd -listonly http://download.kde.org/stable/ | grep 'stable/[0-9]' | sed -n 's:.*/\([0-9].*\)/:\1:;$ p'" |
94 | |
95 | # exported functions and variables for mage-file |
96 | SPECIAL_VARS="${SPECIAL_VARS} KDEDIR" |
97 | SPECIAL_FUNCTIONS="${SPECIAL_FUNCTIONS} kde4_postinstall kde4_postremove" |
98 | |
99 | kde4_add_nepomuk_depend() |
100 | { |
101 | local var="$1" |
102 | local dep="$2" |
103 | [[ -n ${var} ]] || die "kde4_add_nepomuk_depend(): no variable given" |
104 | [[ -n ${dep} ]] || die "kde4_add_nepomuk_depend(): no deps given" |
105 | |
106 | if [[ ${KDE4_ENABLE_NEPOMUK} = 1 ]] |
107 | then |
108 | eval "$(echo -e ${var}=\"\${${var}}\\n${dep}\")" |
109 | else |
110 | [[ ${SILENT} = 0 ]] && echo "Nepomuk disabled, not adding '${dep}' to '${var}'" |
111 | fi |
112 | } |
113 | |
114 | kde4_add_baloo_depend() |
115 | { |
116 | local var="$1" |
117 | local dep="$2" |
118 | [[ -n ${var} ]] || die "kde4_add_baloo_depend(): no variable given" |
119 | [[ -n ${dep} ]] || die "kde4_add_baloo_depend(): no deps given" |
120 | |
121 | if [[ ${KDE4_ENABLE_BALOO} = 1 ]] |
122 | then |
123 | eval "$(echo -e ${var}=\"\${${var}}\\n${dep}\")" |
124 | else |
125 | [[ ${SILENT} = 0 ]] && echo "Baloo disabled, not adding '${dep}' to '${var}'" |
126 | fi |
127 | } |
128 | |
129 | kde4_configure() |
130 | { |
131 | local configure_opts |
132 | |
133 | # disabled, seems to be broken atm |
134 | # # use --enable-final only on i*86 |
135 | # [[ ${ARCH} = i*86 ]] && configure_opts+=" -DKDE4_ENABLE_FINAL=ON" |
136 | configure_opts+=" -DCMAKE_BUILD_TYPE=Release" |
137 | |
138 | # use full rpath on non /usr installations |
139 | [[ ${KDEDIR} != /usr ]] && configure_opts+=" -DKDE4_USE_ALWAYS_FULL_RPATH=ON" |
140 | |
141 | # add akonadi dbus dir |
142 | if [[ ${PNAME/4/} = akonadi ]] || [[ ${PNAME/4/} = kdepim-runtime ]] |
143 | then |
144 | configure_opts+=" -DAKONADI_DBUS_INTERFACES_DIR=$(mget-dbus-interfaces-dir)" |
145 | configure_opts+=" -DAKONADI_DBUS_SERVICES_DIR=$(mget-dbus-session-bus-services-dir)" |
146 | fi |
147 | |
148 | # add commandline given arguments |
149 | configure_opts+=" $@" |
150 | |
151 | # remove build dir if exist |
152 | [[ -d ${BUILDDIR}/build ]] && rm -rf ${BUILDDIR}/build |
153 | |
154 | # build outside of the source dir |
155 | install -d ${BUILDDIR}/build || die |
156 | cd ${BUILDDIR}/build |
157 | |
158 | cmake_configure \ |
159 | -DCMAKE_INSTALL_PREFIX=${KDEDIR} \ |
160 | -DSYSCONF_INSTALL_DIR=${KDECONFDIR} \ |
161 | -DLIB_INSTALL_DIR=${KDEDIR}/$(mlibdir) \ |
162 | -DDBUS_INTERFACES_INSTALL_DIR=$(mget-dbus-interfaces-dir) \ |
163 | -DDBUS_SERVICES_INSTALL_DIR=$(mget-dbus-session-bus-services-dir) \ |
164 | -DKDE4_DBUS_INTERFACES_DIR=$(mget-dbus-interfaces-dir) \ |
165 | -DKDE4_DBUS_SERVICES_DIR=$(mget-dbus-session-bus-services-dir) \ |
166 | -DKDE4_ENABLE_FPIE=ON \ |
167 | -DKDE4_BUILD_TESTS=OFF \ |
168 | -DKDE4_ENABLE_HTMLHANDBOOK=ON \ |
169 | ${configure_opts} \ |
170 | || die |
171 | } |
172 | |
173 | kde4_src_prepare() |
174 | { |
175 | munpack ${SRCFILE} || die |
176 | } |
177 | |
178 | kde4_src_compile() |
179 | { |
180 | cd ${SRCDIR} |
181 | |
182 | kde4_configure || die |
183 | mmake ${KDE4_MAKE_OPTS} || die |
184 | } |
185 | |
186 | kde4_src_install() |
187 | { |
188 | cd ${BUILDDIR}/build |
189 | mmake DESTDIR=${BINDIR} ${KDE4_MAKE_OPTS} install || die |
190 | |
191 | # move dbus service dirs to a proper location if KDEDIR != /usr |
192 | if [[ ${KDEDIR} != /usr ]] |
193 | then |
194 | if [[ -d ${BINDIR}/${KDEDIR}/share/dbus-1 ]] |
195 | then |
196 | echo -e "${COLYELLOW}Warning: using dbus hotfix, dbus locations should be fixed!${COLDEFAULT}" |
197 | minstalldir /usr/share || die |
198 | cp -R ${BINDIR}/${KDEDIR}/share/dbus-1 ${BINDIR}/usr/share/ || die |
199 | rm -r ${BINDIR}/${KDEDIR}/share/dbus-1 || die |
200 | fi |
201 | fi |
202 | # or if KDECONFDIR != /etc |
203 | if [[ ${KDECONFDIR} != /etc ]] |
204 | then |
205 | if [[ -d ${BINDIR}/${KDECONFDIR}/dbus-1 ]] |
206 | then |
207 | echo -e "${COLYELLOW}Warning: using dbus hotfix, dbus locations should be fixed!${COLDEFAULT}" |
208 | minstalldir /etc || die |
209 | cp -R ${BINDIR}/${KDECONFDIR}/dbus-1 ${BINDIR}/etc/ || die |
210 | rm -r ${BINDIR}/${KDECONFDIR}/dbus-1 || die |
211 | fi |
212 | fi |
213 | |
214 | cd ${SRCDIR} |
215 | local i |
216 | for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \ |
217 | FAQ LICENSE NEWS README TODO |
218 | do |
219 | if [ -f ${SRCDIR}/${i} ] |
220 | then |
221 | minstalldocs ${i} || die |
222 | fi |
223 | done |
224 | } |
225 | |
226 | export_inherits kde4 src_prepare src_compile src_install |