fork
Configure Feed
Select the types of activity you want to include in your feed.
lol
fork
Configure Feed
Select the types of activity you want to include in your feed.
1ecmEnvHook() {
2 addToSearchPath XDG_DATA_DIRS "$1/share"
3 addToSearchPath XDG_CONFIG_DIRS "$1/etc/xdg"
4}
5addEnvHooks "$targetOffset" ecmEnvHook
6
7ecmPostHook() {
8 # Because we need to use absolute paths here, we must set *all* the paths.
9 cmakeFlags+=" -DKDE_INSTALL_EXECROOTDIR=${!outputBin}"
10 cmakeFlags+=" -DKDE_INSTALL_BINDIR=${!outputBin}/bin"
11 cmakeFlags+=" -DKDE_INSTALL_SBINDIR=${!outputBin}/sbin"
12 cmakeFlags+=" -DKDE_INSTALL_LIBDIR=${!outputLib}/lib"
13 cmakeFlags+=" -DKDE_INSTALL_LIBEXECDIR=${!outputLib}/libexec"
14 cmakeFlags+=" -DKDE_INSTALL_CMAKEPACKAGEDIR=${!outputDev}/lib/cmake"
15 cmakeFlags+=" -DKDE_INSTALL_INCLUDEDIR=${!outputInclude}/include"
16 cmakeFlags+=" -DKDE_INSTALL_LOCALSTATEDIR=/var"
17 cmakeFlags+=" -DKDE_INSTALL_DATAROOTDIR=${!outputBin}/share"
18 cmakeFlags+=" -DKDE_INSTALL_DATADIR=${!outputBin}/share"
19 cmakeFlags+=" -DKDE_INSTALL_DOCBUNDLEDIR=${!outputBin}/share/doc/HTML"
20 cmakeFlags+=" -DKDE_INSTALL_KCFGDIR=${!outputBin}/share/config.kcfg"
21 cmakeFlags+=" -DKDE_INSTALL_KCONFUPDATEDIR=${!outputBin}/share/kconf_update"
22 cmakeFlags+=" -DKDE_INSTALL_KSERVICES5DIR=${!outputBin}/share/kservices5"
23 cmakeFlags+=" -DKDE_INSTALL_KSERVICETYPES5DIR=${!outputBin}/share/kservicetypes5"
24 cmakeFlags+=" -DKDE_INSTALL_KXMLGUI5DIR=${!outputBin}/share/kxmlgui5"
25 cmakeFlags+=" -DKDE_INSTALL_KNOTIFY5RCDIR=${!outputBin}/share/knotifications5"
26 cmakeFlags+=" -DKDE_INSTALL_ICONDIR=${!outputBin}/share/icons"
27 cmakeFlags+=" -DKDE_INSTALL_LOCALEDIR=${!outputLib}/share/locale"
28 cmakeFlags+=" -DKDE_INSTALL_SOUNDDIR=${!outputBin}/share/sounds"
29 cmakeFlags+=" -DKDE_INSTALL_TEMPLATEDIR=${!outputBin}/share/templates"
30 cmakeFlags+=" -DKDE_INSTALL_WALLPAPERDIR=${!outputBin}/share/wallpapers"
31 cmakeFlags+=" -DKDE_INSTALL_APPDIR=${!outputBin}/share/applications"
32 cmakeFlags+=" -DKDE_INSTALL_DESKTOPDIR=${!outputBin}/share/desktop-directories"
33 cmakeFlags+=" -DKDE_INSTALL_MIMEDIR=${!outputBin}/share/mime/packages"
34 cmakeFlags+=" -DKDE_INSTALL_METAINFODIR=${!outputBin}/share/appdata"
35 cmakeFlags+=" -DKDE_INSTALL_MANDIR=${!outputBin}/share/man"
36 cmakeFlags+=" -DKDE_INSTALL_INFODIR=${!outputBin}/share/info"
37 cmakeFlags+=" -DKDE_INSTALL_DBUSDIR=${!outputBin}/share/dbus-1"
38 cmakeFlags+=" -DKDE_INSTALL_DBUSINTERFACEDIR=${!outputBin}/share/dbus-1/interfaces"
39 cmakeFlags+=" -DKDE_INSTALL_DBUSSERVICEDIR=${!outputBin}/share/dbus-1/services"
40 cmakeFlags+=" -DKDE_INSTALL_DBUSSYSTEMSERVICEDIR=${!outputBin}/share/dbus-1/system-services"
41 cmakeFlags+=" -DKDE_INSTALL_SYSCONFDIR=${!outputBin}/etc"
42 cmakeFlags+=" -DKDE_INSTALL_CONFDIR=${!outputBin}/etc/xdg"
43 cmakeFlags+=" -DKDE_INSTALL_AUTOSTARTDIR=${!outputBin}/etc/xdg/autostart"
44
45 if [ "$(uname)" = "Darwin" ]; then
46 cmakeFlags+=" -DKDE_INSTALL_BUNDLEDIR=${!outputBin}/Applications/KDE"
47 fi
48
49 if [ -n "${qtPluginPrefix-}" ]; then
50 cmakeFlags+=" -DKDE_INSTALL_QTPLUGINDIR=${!outputBin}/$qtPluginPrefix"
51 cmakeFlags+=" -DKDE_INSTALL_PLUGINDIR=${!outputBin}/$qtPluginPrefix"
52 fi
53
54 if [ -n "${qtQmlPrefix-}" ]; then
55 cmakeFlags+=" -DKDE_INSTALL_QMLDIR=${!outputBin}/$qtQmlPrefix"
56 fi
57}
58postHooks+=(ecmPostHook)
59
60xdgDataSubdirs=( \
61 "config.kcfg" "kconf_update" "kservices5" "kservicetypes5" \
62 "kxmlgui5" "knotifications5" "icons" "locale" "sounds" "templates" \
63 "wallpapers" "applications" "desktop-directories" "mime" "appdata" "dbus-1" \
64)
65
66# ecmHostPathsSeen is an associative array of the paths that have already been
67# seen by ecmHostPathHook.
68declare -gA ecmHostPathsSeen
69
70ecmHostPathIsNotSeen() {
71 if [[ -n "${ecmHostPathsSeen["$1"]:-}" ]]; then
72 # The path has been seen before.
73 return 1
74 else
75 # The path has not been seen before.
76 # Now it is seen, so record it.
77 ecmHostPathsSeen["$1"]=1
78 return 0
79 fi
80}
81
82ecmHostPathHook() {
83 ecmHostPathIsNotSeen "$1" || return 0
84
85 local xdgConfigDir="$1/etc/xdg"
86 if [ -d "$xdgConfigDir" ]
87 then
88 qtWrapperArgs+=(--prefix XDG_CONFIG_DIRS : "$xdgConfigDir")
89 fi
90
91 for xdgDataSubdir in "${xdgDataSubdirs[@]}"
92 do
93 if [ -d "$1/share/$xdgDataSubdir" ]
94 then
95 qtWrapperArgs+=(--prefix XDG_DATA_DIRS : "$1/share")
96 break
97 fi
98 done
99
100 local manDir="$1/man"
101 if [ -d "$manDir" ]
102 then
103 qtWrapperArgs+=(--prefix MANPATH : "$manDir")
104 fi
105
106 local infoDir="$1/info"
107 if [ -d "$infoDir" ]
108 then
109 qtWrapperArgs+=(--prefix INFOPATH : "$infoDir")
110 fi
111
112 if [ -d "$1/dbus-1" ]
113 then
114 propagatedUserEnvPkgs+=" $1"
115 fi
116}
117addEnvHooks "$targetOffset" ecmHostPathHook