# $Id$ sminclude kde4 # generate a meta package # 1=yes, 0=no : ${KDE4_GENERATE_META_PACKAGE=1} # fake an empty src_install for split-packages kde-split_src_install() { :; } kde4-split_src_install_wrapper() { local KDEMODULE="$1" # fix modulename kdesdk4-kate -> kate [[ ${KDEMODULE/${SPLIT_PACKAGE_BASE}-/} != ${KDEMODULE} ]] && KDEMODULE="${KDEMODULE/${SPLIT_PACKAGE_BASE}-/}" cd ${BUILDDIR}/build # install the kde module mmake -C ${KDEMODULE} DESTDIR=${BINDIR} ${KDE4_MAKE_OPTS} install || die # install docs if [[ -d doc/${KDEMODULE} ]] then mmake -C doc/${KDEMODULE} DESTDIR=${BINDIR} ${KDE4_MAKE_OPTS} install || die fi # move dbus service dirs to a proper location if KDEDIR != /usr if [[ ${KDEDIR} != /usr ]] then if [[ -d ${BINDIR}/${KDEDIR}/share/dbus-1 ]] then echo -e "${COLYELLOW}Warning: using dbus hotfix, dbus locations should be fixed!${COLDEFAULT}" minstalldir /usr/share || die cp -R ${BINDIR}/${KDEDIR}/share/dbus-1 ${BINDIR}/usr/share/ || die rm -r ${BINDIR}/${KDEDIR}/share/dbus-1 || die fi fi cd ${SRCDIR} local i for i in ABOUT-NLS AUTHORS BUGS CHANGES ChangeLog COPYING \ FAQ LICENSE NEWS README TODO do if [ -f ${SRCDIR}/${i} ] then minstalldocs ${i} || die fi done } #kde4-split_common_dependencies() #{ # local subpackage # local commondepend # # # common dependencies # commondepend=">= x11-libs/qt-4.5 # >= x11-libs/libXext-1.1-r1 # >= x11-libs/libXt-1 # >= x11-libs/libXinerama-1 # >= x11-libs/libXxf86vm-1 # == kde-base/kdelibs4-${PVER}" # # if [[ ${PVER%.*} = 4.3 ]] # then # commondepend+="== kde-base/kdelibs4-experimental-${PVER}" # fi # # case ${PNAME/-${subpackage}} in # kdegraphics) # commondepend+=" # == kde-base/kdebase4-runtime-${PVER} # >= kde-base/qimageblitz-0.0.4" # ;; # # kdepim) # commondepend+=" # == kde-base/kdebase4-runtime-${PVER}" # ;; # # kdepim-runtime) # commondepend+=" # == kde-base/kdebase4-runtime-${PVER} # >= dev-libs/boost-1.40 # == kde-base/kdepimlibs4-${PVER}" # ;; # ## case ${PN} in ## akregator|kaddressbook|kjots|kmail|knode|knotes|korganizer|ktimetracker) ## IUSE+=" +kontact" ## if ! slot_is_at_least 4.4 ${SLOT} || [[ ${SLOT} == 4.4 && ${PV} < 4.3.68 ]]; then ## RDEPEND+=" kontact? ( $(add_kdebase_dep kontactinterfaces) )" ## fi ## ;; ## esac ## ;; ## ## kdegames) ## if [[ ${PN} != libkdegames ]]; then ## COMMONDEPEND+=" $(add_kdebase_dep libkdegames)" ## fi ## ;; # esac #} kde4-split_generate_split_info() { local subpackage # get all subpackages with the specified pcat for subpackage in ${SPLIT_PACKAGES} do # exclude meta packages [[ ${subpackage} = ${PNAME}-meta ]] && continue eval "kde4-split_split_info_${subpackage}() { DESCRIPTION=\"'${subpackage/${PNAME}-/}' from ${PNAME}.\" DEPEND=\"== kde-base/kdelibs-${PVER} == kde-base/kdepimlibs-${PVER} == kde-base/kdebase-runtime-${PVER}\" }" export_inherits kde4-split split_info_${subpackage} done } kde4-split_generate_meta_package() { local subpackage local export_depends # get all subpackages with the specified pcat for subpackage in ${SPLIT_PACKAGES} do # we assume the pcat is always kde-base! export_depends="${export_depends} >= ${PCAT}/${subpackage}-${PVER}" done eval "split_info_${PNAME}-meta() { DESCRIPTION=\"Meta package for ${PNAME}.\" DEPEND=\"${export_depends}\" PKGTYPE=\"virtual\" # drop everything we don't need in the meta package: INHERITS="" SPECIAL_VARS="" SPECIAL_FUNCTIONS="" SDEPEND="" PROVIDE="" unset -f preinstall unset -f postinstall unset -f preremove unset -f postremove }" export SPLIT_PACKAGES+=" ${PNAME}-meta" } kde4-split_generate_src_install() { local subpackage # run kde4-split_src_install for all SPLIT_PACKAGES for subpackage in ${SPLIT_PACKAGES} do # exclude meta packages [[ ${subpackage} = ${PNAME}-meta ]] && continue # create function kde-split_src_install-${subpackage} eval "kde4-split_src_install_${subpackage}(){ kde4-split_src_install_wrapper ${subpackage} || die; }" # export kde-split_src_install_${subpackage} as src_install_${subpackage} export_inherits kde4-split src_install_${subpackage} done } # generate generic split_infos kde4-split_generate_split_info # generate a meta package # run this after kde-split_generate_split_info # as we add the virtual meta package [[ ${KDE4_GENERATE_META_PACKAGE} = 1 ]] && kde4-split_generate_meta_package # run kde4-split_src_install for all SPLIT_PACKAGES kde4-split_generate_src_install # export empty src_install export_inherits kde4-split src_install