
%_kde_langlist af ar ast be bg bn br bs ca ca@valencia cs csb cy da de el en en_GB en_US eo es es_AR et eu fa fi fr fy ga gl gu he hi hne hr hsb hu id is it ja ka kk km ko ku lo lt lv mai mk ml mr ms nb nds ne nl nn oc pa pl pt pt_BR ro ru se si sk sl sr sr@Latn sr@ijekavian sr@ijekavianlatin sr@latin sv ta tg th tr uk uz uz@cyrillic vi wa xh zh_CN zh_TW zu

# KDE4

%_K4prefix %prefix
%_K4sysconfdir %_sysconfdir
%_K4bindir %_bindir
%_K4sbindir %_sbindir
%_K4libdir %_libdir
%_K4link %_libdir/kde4/devel
%_K4datadir %_datadir/kde4
%_K4iconsdir %_iconsdir
%_K4includedir %_includedir/kde4
%_kde4_prefix %_K4datadir
%__kde4_prefix %(/bin/sh -c "echo 'Warning!!! Deprecated macros __kde4_prefix' >&2")%_kde4_prefix
%_kde4_bindir %_libexecdir/kde4/bin
%__kde4_bindir %(/bin/sh -c "echo 'Warning!!! Deprecated macros __kde4_bindir' >&2")%_kde4_bindir
%_kde4_sbindir %_libexecdir/kde4/sbin
%__kde4_sbindir %(/bin/sh -c "echo 'Warning!!! Deprecated macros __kde4_sbindir' >&2")%_kde4_sbindir
%_kde4_libdir_link %_K4link
%__kde4_libdir_link %(/bin/sh -c "echo 'Warning!!! Deprecated macros __kde4_libdir_link' >&2")%_kde4_libdir_link
%_kde4_iconsdir %_K4datadir/icons
%__kde4_iconsdir %(/bin/sh -c "echo 'Warning!!! Deprecated macros __kde4_iconsdir' >&2")%_kde4_iconsdir

%_K4lib %_K4libdir/kde4
%_K4exec %_K4lib/libexec
%_K4plug %_K4lib/plugins

%_K4start %_K4datadir/autostart
%_K4xdg_menu %_sysconfdir/xdg/menus
%_K4xdg_apps %_desktopdir/kde4
%_K4xdg_dirs %_datadir/desktop-directories
%_K4xdg_mime %_datadir/mime/packages
%_K4applnk %_datadir/applnk
%_kde4_xdg_menu %_sysconfdir/kde4/xdg/menus
%__kde4_xdg_menu %(/bin/sh -c "echo 'Warning!!! Deprecated macros __kde4_xdg_menu' >&2")%_kde4_xdg_menu
%_kde4_xdg_apps %_K4datadir/applications/kde4
%__kde4_xdg_apps %(/bin/sh -c "echo 'Warning!!! Deprecated macros __kde4_xdg_apps' >&2")%_kde4_xdg_apps
%_kde4_xdg_dirs %_K4datadir/desktop-directories
%__kde4_xdg_dirs %(/bin/sh -c "echo 'Warning!!! Deprecated macros __kde4_xdg_dirs' >&2")%_kde4_xdg_dirs

%_K4conf %_K4datadir/config
%_K4cfg %_K4datadir/config.kcfg

%_K4apps %_K4datadir/apps
%_K4conf_update %_K4apps/kconf_update
%_K4conf_bin %_K4libdir/kconf4_update_bin

%_K4emo %_K4prefix/share/emoticons
%_K4mimelnk %_K4datadir/mimelnk
%_K4snd %_K4datadir/sounds
%_K4tmpl %_K4datadir/templates
%_K4wall %_datadir/wallpapers
%_K4doc %_K4datadir/doc/HTML
%__kde4_doc %(/bin/sh -c "echo 'Warning!!! Deprecated macros __kde4_doc' >&2")%_K4doc

%_K4i18n %_K4datadir/locale
%_K4srv %_K4datadir/services
%_K4srvtyp %_K4datadir/servicetypes

%_K4dbus_interfaces %_datadir/dbus-1/interfaces
%_K4dbus_services %_datadir/dbus-1/services
%_K4dbus_system %_sysconfdir/dbus-1/system.d

# utils

%_K_if_ver_gt() %if "%(rpmvercmp '%1' '%2')" > "0"
%_K_if_ver_gteq() %if "%(rpmvercmp '%1' '%2')" >= "0"
%_K_if_ver_lt() %if "%(rpmvercmp '%2' '%1')" > "0"
%_K_if_ver_lteq() %if "%(rpmvercmp '%2' '%1')" >= "0"

# build
%__kde4_buildtype %{!?_K4buildtype:MinSizeRel}%{?_K4buildtype:%?_K4buildtype}
%__kde4_alt_placement %{?__kde4_alternate_placement:1}%{?_kde4_alternate_placement:1}

%K4cmake \
    __kde4_cmake() \
    { \
	export PATH=%_kde4_bindir:$PATH \
	pushd BUILD-%_target_platform \
	cmake .. \\\
	    -DCMAKE_SKIP_RPATH:BOOL=yes \\\
	    -DCMAKE_BUILD_TYPE=%__kde4_buildtype \\\
	    -DCMAKE_C_FLAGS:STRING='%optflags' \\\
	    -DCMAKE_CXX_FLAGS:STRING='%optflags' \\\
	    -DCMAKE_EXE_LINKER_FLAGS:STRING='-L%_libdir/kde4link -L%_K4link' \\\
	    -DCMAKE_MODULE_LINKER_FLAGS:STRING='-L%_libdir/kde4link -L%_K4link' \\\
	    -DCMAKE_SHARED_LINKER_FLAGS:STRING='-L%_libdir/kde4link -L%_K4link' \\\
	    -DCMAKE_LIBRARY_PATH:LIST='%_K4link;%_libdir/kde4link;%_libdir;/%_lib' \\\
	    -DLIB_DESTINATION=%_lib \\\
	    %if "%_lib" == "lib64" \
	    -DLIB_SUFFIX="64" \\\
	    %else \
	    -DLIB_SUFFIX="" \\\
	    %endif \
	    \\\
	    %if "%__kde4_alt_placement" == "1" \
	    -DCMAKE_INSTALL_PREFIX=%_kde4_prefix \\\
	    -DBIN_INSTALL_DIR=%_kde4_bindir \\\
	    -DSBIN_INSTALL_DIR=%_kde4_sbindir \\\
	    -DICON_INSTALL_DIR=%_kde4_iconsdir \\\
	    -DXDG_APPS_INSTALL_DIR=%_kde4_xdg_apps \\\
	    -DXDG_DIRECTORY_INSTALL_DIR=%_kde4_xdg_dirs \\\
	    %else \
	    -DCMAKE_INSTALL_PREFIX=%_K4prefix \\\
	    -DBIN_INSTALL_DIR=%_K4bindir \\\
	    -DSBIN_INSTALL_DIR=%_K4sbindir \\\
	    -DICON_INSTALL_DIR=%_K4iconsdir \\\
	    -DXDG_APPS_INSTALL_DIR=%_K4xdg_apps \\\
	    -DXDG_DIRECTORY_INSTALL_DIR=%_K4xdg_dirs \\\
	    %endif \
	    -DLIB_INSTALL_DIR=%_K4libdir \\\
	    -DLIBEXEC_INSTALL_DIR=%_K4exec \\\
	    -DINCLUDE_INSTALL_DIR=%_K4includedir \\\
	    -DSYSCONF_INSTALL_DIR=%_sysconfdir  \\\
	    -DDATA_INSTALL_DIR=%_K4apps \\\
	    -DCONFIG_INSTALL_DIR=%_K4conf \\\
	    -DKCFG_INSTALL_DIR=%_K4cfg \\\
	    -DHTML_INSTALL_DIR=%_K4doc \\\
	    -DAPPLNK_INSTALL_DIR=%_K4applnk \\\
	    -DLOCALE_INSTALL_DIR=%_K4i18n \\\
	    -DSERVICES_INSTALL_DIR=%_K4srv \\\
	    -DSERVICETYPES_INSTALL_DIR=%_K4srvtyp \\\
	    -DKCONF_UPDATE_INSTALL_DIR=%_K4conf_update \\\
	    -DXDG_MIME_INSTALL_DIR=%_K4xdg_mime \\\
	    -DAUTOSTART_INSTALL_DIR=%_K4start \\\
	    -DSOUND_INSTALL_DIR=%_K4snd \\\
	    -DTEMPLATES_INSTALL_DIR=%_K4tmpl \\\
	    -DWALLPAPER_INSTALL_DIR=%_K4wall \\\
	    -DDBUS_INTERFACES_INSTALL_DIR=%_K4dbus_interfaces \\\
	    -DDBUS_SERVICES_INSTALL_DIR=%_K4dbus_services \\\
	    -DMAN_INSTALL_DIR=%_mandir \\\
	    -DINFO_INSTALL_DIR=%_infodir \\\
	    "$@" \
	popd \
    } \
    mkdir -p BUILD-%_target_platform; \
    __kde4_cmake

%K4configure %K4cmake

%K4make \
    __kde4_make() \
    { \
	pushd BUILD-%_target_platform \
	%make_build VERBOSE=1 "$@" \
	popd \
    } \
    __kde4_make

%K4build \
    __kde4_build() \
    { \
	%K4cmake "$@" \
	%K4make \
    } \
    __kde4_build

%__kde4_install_move_files_to_alternate_placement \
    mkdir -p %buildroot/%_K4link \
    pushd %buildroot/%_K4libdir \
    for l in lib*.so \
    do \
	[ -L "$l" ] || continue \
	f=`readlink "$l"` \
	ln -sf `relative "%buildroot/%_K4libdir/$f" "%buildroot/%_K4link/$f"` "%buildroot/%_K4link/$l" \
	rm -f "$l" \
	done \
    popd \
    \
    if [ -d %buildroot/%_K4libdir/kconf_update_bin ]; then \
	mkdir -p %buildroot/%_K4libdir/kconf4_update_bin/ \
	find %buildroot/%_K4libdir/kconf_update_bin/ -type f | \\\
	while read f \
	do \
	    mv $f %buildroot/%_K4libdir/kconf4_update_bin/ \
	done \
    fi \
    if [ -d %buildroot/%_kde4_iconsdir/oxygen ]; then \
	mkdir -p %buildroot/%_K4iconsdir/ \
	rm -rf %buildroot/%_K4iconsdir/oxygen \
	mv %buildroot/%_kde4_iconsdir/oxygen %buildroot/%_K4iconsdir/ \
    fi \
    if [ -d %buildroot/%_K4xdg_menu ]; then \
	mkdir -p %buildroot/%_kde4_xdg_menu \
	rm -rf %buildroot/%_kde4_xdg_menu \
	mv %buildroot/%_K4xdg_menu %buildroot/%_sysconfdir/kde4/xdg/ \
    fi \
    if [ -d %buildroot/%_kde4_prefix/share ]; then \
	mkdir -p %buildroot/%_K4prefix/share \
	mv %buildroot/%_kde4_prefix/share/* %buildroot/%_K4prefix/share/ ||: \
	rm -rf %buildroot/%_kde4_prefix/share \
    fi \
    if [ -d %buildroot/%_K4apps/cmake/modules/ ]; then \
	find %buildroot/%_K4apps/cmake/modules/ -type f | while read f ; do \
	    sed -ni -e 'H;${x;s|[[:space:]][[:space:]]*PATHS[[:space:]]*\\n| PATHS |g;p}' $f \
	    sed -ni -e 'H;${x;s|\\n[[:space:]]*HINTS[[:space:]][[:space:]]*| HINTS |g;p}' $f \
	    sed -i -e 's|PATHS[[:space:]][[:space:]]*${KDE4_LIB_INSTALL_DIR}|PATHS %_libdir/kde4link ${KDE4_LIB_INSTALL_DIR}|' $f \
	    sed -i -e 's|PATHS[[:space:]][[:space:]]*${LIB_INSTALL_DIR}|PATHS %_libdir/kde4link ${LIB_INSTALL_DIR}|' $f \
	    sed -i -e 's|PATHS[[:space:]][[:space:]]*${KDE4_LIB_DIR}|PATHS %_libdir/kde4link ${KDE4_LIB_DIR}|' $f \
	    sed -i -e 's|\\([Ff][Ii][Nn][Dd]_[Ll][Ii][Bb][Rr][Aa][Rr][Yy].*[[:space:]]HINTS[[:space:]]\\)\\(.*\\)|\\1%_libdir/kde4link \\2|g' $f \
	done \
    fi

%K4install \
    __kde4_install() \
    { \
	%make -C BUILD-%_target_platform DESTDIR=%buildroot install "$@" \
	%if "%__kde4_alt_placement" == "1" \
	%__kde4_install_move_files_to_alternate_placement \
	%endif \
    } \
    __kde4_install

%K4find_lang %_bindir/kde-devel-find-lang

# KDE3

%_kdedir %prefix
%_bK_menudir %buildroot/%_menudir
%_libkde %_libdir/kde3
%_kdeconfdir %_sysconfdir/kde
%_Kconfig %_kdeconfdir/share/config
%_bKconfig %buildroot/%_kdeconfdir/share/config
%_Kcfg %_datadir/config.kcfg
%_bKcfg %buildroot/%_datadir/config.kcfg
%_Klibdir %_libkde
%_bKlibdir %buildroot/%_libkde
%_Kautostart %_datadir/autostart
%_bKautostart %buildroot/%_datadir/autostart
%_Kmenudir %_datadir/applications/kde
%_bKmenudir %buildroot/%_datadir/applications/kde
%_Kservices %_datadir/services
%_bKservices %buildroot/%_datadir/services
%_Kapps %_datadir/apps
%_bKapps %buildroot/%_datadir/apps
%_Kapplnk %_datadir/applnk
%_bKapplnk %buildroot/%_datadir/applnk
%_Kmimelnk %_datadir/mimelnk
%_bKmimelnk %buildroot/%_datadir/mimelnk
%_Kservices %_datadir/services
%_bKservices %buildroot/%_datadir/services
%_Kservicetypes %_datadir/servicetypes
%_bKservicetypes %buildroot/%_datadir/servicetypes
%_Ksounds %_datadir/sounds
%_bKsounds %buildroot/%_datadir/sounds
%_Kwallpapers %_datadir/wallpapers
%_bKwallpapers %buildroot/%_datadir/wallpapers

# deprecated
%Kmenudir %(/bin/sh -c "echo 'Warning!!! Deprecated macros Kmenudir' >&2")%_Kmenudir
%Kbmenudir %(/bin/sh -c "echo 'Warning!!! Deprecated macros Kbmenudir' >&2")%_bKmenudir
%Kapplnk %(/bin/sh -c "echo 'Warning!!! Deprecated macros Kapplnk' >&2")%_Kapplnk
%Kbapplnk %(/bin/sh -c "echo 'Warning!!! Deprecated macros Kbapplnk' >&2")%_bKapplnk
%Kb_menudir %(/bin/sh -c "echo 'Warning!!! Deprecated macros Kb_menudir' >&2")%_bK_menudir
%Kd2m %(/bin/sh -c "echo 'Warning!!! Deprecated macros Kd2m' >&2")/bin/true
%_Kd2m %(/bin/sh -c "echo 'Warning!!! Deprecated macros _Kd2m' >&2")/bin/true
