Merge from vendor branch TNF:
[pkgsrcv2.git] / x11 / kdebase3 / Makefile
1 # $NetBSD: Makefile,v 1.160 2011/01/25 11:13:13 markd Exp $
2
3 DISTNAME=       kdebase-${_KDE_VERSION}
4 PKGREVISION=    14
5 CATEGORIES=     x11
6 COMMENT=        Base modules for the KDE 3 integrated X11 desktop
7
8 #PATCH_SITES=   ftp://ftp.kde.org/pub/kde/security_patches/ \
9 #               http://mirrors.isc.org/pub/kde/security_patches/
10 #PATCHFILES=    post-3.5.7-kdebase-konqueror-2.diff post-3.5.7-kdebase-kdm.diff
11
12 PKG_DESTDIR_SUPPORT=    user-destdir
13
14 .include "../../meta-pkgs/kde3/Makefile.kde3"
15
16 DISTFILES=      ${DISTNAME}${EXTRACT_SUFX} Daemon.png Daemon.README
17 DISTFILES+=     NetBSD-flag-1.0.png
18 SITES.Daemon.png=       ${MASTER_SITE_LOCAL}
19 SITES.Daemon.README=    ${MASTER_SITE_LOCAL}
20 SITES.NetBSD-flag-1.0.png=      ${MASTER_SITE_LOCAL}
21
22 EXTRACT_ONLY=   ${DISTNAME}${EXTRACT_SUFX}
23
24 UNLIMIT_RESOURCES=      datasize
25 USE_TOOLS+=             pkg-config mkfontdir bdftopcf
26
27 FONTS_DIRS.x11+=        ${PREFIX}/share/kde/apps/konsole/fonts
28 REQD_DIRS+=             ${PREFIX}/share/kde/apps/konsole
29 REQD_DIRS+=             ${PREFIX}/share/kde/apps/konsole/fonts
30
31 FONTS_DIRS.x11+=        ${PREFIX}/share/kde/fonts/override
32 REQD_DIRS+=             ${PREFIX}/share/kde/fonts
33 REQD_DIRS+=             ${PREFIX}/share/kde/fonts/override
34
35 CONFIGURE_ARGS+=        --with-ldap="${BUILDLINK_PREFIX.openldap-client}"
36 CONFIGURE_ARGS+=        --with-ssl-dir="${BUILDLINK_PREFIX.openssl}"
37 CONFIGURE_ARGS+=        --without-java
38
39 REPLACE_PERL+=          kcontrol/keys/convertShortcuts.pl \
40                         khelpcenter/searchhandlers/khc_docbookdig.pl.in \
41                         khelpcenter/searchhandlers/khc_htdig.pl.in \
42                         khelpcenter/searchhandlers/khc_htsearch.pl \
43                         khelpcenter/searchhandlers/khc_mansearch.pl \
44                         kicker/kicker/kicker-3.1-properSizeSetting.pl \
45                         kicker/kicker/kicker-3.5-kconfigXTize.pl \
46                         kicker/kicker/kicker-3.5-taskbarEnums.pl \
47                         kioslave/finger/kio_finger.pl \
48                         kioslave/info/kde-info2html \
49                         klipper/klipper-1-2.pl \
50                         kwin/data/kwin3_plugin.pl \
51                         kwin/data/pluginlibFix.pl \
52                         konsole/schemaStrip.pl
53
54 CONF_FILES=             ${PREFIX}/share/kde/config/kdm/kdmrc \
55                         ${PKG_SYSCONFDIR}/kdm/kdmrc
56 CONF_FILES+=            ${PREFIX}/share/examples/kdebase3/ksysguarddrc \
57                         ${PKG_SYSCONFDIR}/ksysguarddrc
58 CONF_FILES+=            ${PREFIX}/share/examples/kdebase3/kde-information.menu \
59                         ${PKG_SYSCONFDIR}/xdg/menus/kde-information.menu
60 CONF_FILES+=            ${PREFIX}/share/examples/kdebase3/kde-screensavers.menu \
61                         ${PKG_SYSCONFDIR}/xdg/menus/kde-screensavers.menu
62 CONF_FILES+=            ${PREFIX}/share/examples/kdebase3/kde-settings.menu \
63                         ${PKG_SYSCONFDIR}/xdg/menus/kde-settings.menu
64 CONF_FILES+=            ${PREFIX}/share/examples/kdebase3/applications-merged/kde-essential.menu \
65                         ${PKG_SYSCONFDIR}/xdg/menus/applications-merged/kde-essential.menu
66 MAKE_DIRS+=             ${PKG_SYSCONFDIR}/xdg/menus/applications-merged
67 OWN_DIRS=               ${PKG_SYSCONFDIR}/kdm
68 RCD_SCRIPTS=            kdm
69
70 .include "../../mk/bsd.prefs.mk"
71
72 LIBS.NetBSD+=           ${EXPORT_SYMBOLS_LDFLAGS}
73
74 PLIST_SRC=              ${WRKDIR}/PLIST.Xdpms
75
76 _KDE3_EXTRA_INCLUDES=   ${PREFIX}/include:${X11BASE}/include:${BUILDLINK_PREFIX.freetype2}/include/freetype2
77
78 # Don't execute kappfinder_install at install-time.  This causes random
79 # applications to be found which causes random .desktop files to be created
80 # in the applnk directory.
81 #
82 CONFIGURE_ENV+=         RUN_KAPPFINDER=no
83
84 PLIST_SRC+=             ${PKGDIR}/PLIST
85
86 .include "options.mk"
87
88 BUILDLINK_API_DEPENDS.Xrandr+=  Xrandr>=1.0
89 BUILDLINK_API_DEPENDS.kdelibs+= kdelibs>=${_KDE_VERSION}
90
91 DEPENDS+=               htdig>=3.2.0:../../www/htdig-devel
92
93 # Solaris 10 has libusb only for 32 bit ABI (see PR 33727).
94 .if ${OPSYS} == "SunOS" && ${MACHINE_ARCH} == "x86_64"
95 CONFIGURE_ARGS+=       --without-libusb
96 .endif
97
98 PLIST_VARS+=            usbview
99 .if ${OPSYS} == "NetBSD" || ${OPSYS} == "FreeBSD" || ${OPSYS} == "Linux"
100 PLIST.usbview=          yes
101 .endif
102
103 PLIST_VARS+=            joystick
104 .if ${OPSYS} == "Linux"
105 PLIST.joystick=         yes
106 .endif
107
108 ICONDIR=                share/icons
109
110 .if ${OPSYS} == "NetBSD" || ${OPSYS} == "FreeBSD" || ${OPSYS} == "DragonFly"
111 SPECIAL_PERMS+= ${PREFIX}/bin/ksysguardd        ${REAL_ROOT_USER} kmem 2555
112 .endif
113
114 .if ${OPSYS} == "NetBSD" || ${OPSYS} == "FreeBSD" || ${OPSYS} == "OpenBSD" || ${OPSYS} == "DragonFly" || ${OPSYS} == "SunOS"
115 SUBST_CLASSES+=         varlock
116 SUBST_STAGE.varlock=    post-patch
117 SUBST_MESSAGE.varlock=  Fix lock directory path.
118 SUBST_FILES.varlock=    kcheckpass/kcheckpass.c
119 .if ${OPSYS} == "SunOS"
120 SUBST_SED.varlock=      -e s:/var/lock:/var/spool/locks:
121 .else
122 SUBST_SED.varlock=      -e s:/var/lock:/var/spool/lock:
123 .endif
124 .endif
125
126 SUBST_CLASSES+=         htdig
127 SUBST_STAGE.htdig=      post-patch
128 SUBST_MESSAGE.htdig=    Fix htdig paths.
129 SUBST_FILES.htdig=      khelpcenter/searchhandlers/khc_htsearch.pl
130 SUBST_SED.htdig=        -e s:/srv/www/cgi-bin:${PREFIX}/libexec/cgi-bin:
131
132 SUBST_CLASSES+=         paths
133 SUBST_FILES.paths=      kcontrol/kdm/main.cpp kioslave/info/kde-info2html.conf
134 SUBST_SED.paths=        -e 's,@PKG_SYSCONFDIR@,${PKG_SYSCONFDIR},g'
135 SUBST_SED.paths+=       -e 's,@LOCALBASE@,${PREFIX},g'
136 SUBST_STAGE.paths=      post-patch
137
138 SUBST_CLASSES+=         xkb
139 SUBST_FILES.xkb=        kxkb/x11helper.cpp
140 SUBST_SED.xkb=          -e 's:XLIBDIR:"${X11BASE}/lib/X11/", "${X11BASE}/share/X11/", XLIBDIR:'
141 SUBST_STAGE.xkb=        post-patch
142
143 # genkdmconf wont install faces if using destdir so do it ourselves
144 INSTALLATION_DIRS+= share/kde/apps/kdm/faces share/kde/templates/.source/emptydir
145
146 pre-configure:
147         cd ${WRKSRC}/ksysguard/ksysguardd && rm -f DragonFly && ln -s FreeBSD DragonFly
148
149 post-install:
150         ${INSTALL_DATA} ${WRKSRC}/kdm/kfrontend/pics/default1.png \
151                 ${DESTDIR}${PREFIX}/share/kde/apps/kdm/faces/.default.face.icon
152         ${INSTALL_DATA} ${WRKSRC}/kdm/kfrontend/pics/root1.png \
153                 ${DESTDIR}${PREFIX}/share/kde/apps/kdm/faces/root.face.icon
154         ${INSTALL_DATA} ${DISTDIR}/NetBSD-flag-1.0.png ${DESTDIR}${PREFIX}/${ICONDIR}/NetBSD-flag.png
155         ${INSTALL_DATA} ${DISTDIR}/Daemon.png ${DESTDIR}${PREFIX}/${ICONDIR}
156         ${INSTALL_DATA} ${DISTDIR}/Daemon.README                        \
157                 ${DESTDIR}${PREFIX}/share/doc/kde/HTML/en/kdm
158
159         @# The global desktop template files need to be user-writeable, or
160         @# else users won't be able to alter them after copying them to
161         @# their local directories.
162         @#
163         ${CHMOD} u+w ${DESTDIR}${PREFIX}/share/kde/templates/.source/*
164
165         @# On some systems, the Xdpms routines aren't available in a shared
166         @# library, and some libraries aren't created as a result.
167         @#
168         ( files="                                                       \
169                 lib/kde3/libkcm_energy.so                               \
170                 lib/kde3/libkcm_screensaver.so                          \
171           ";                                                            \
172           for file in $${files}; do                                     \
173                 if [ -f ${DESTDIR}${PREFIX}/$${file} ]; then            \
174                         ${ECHO} "$${file}";                             \
175                 fi;                                                     \
176           done;                                                         \
177         ) > ${WRKDIR}/PLIST.Xdpms
178
179 .if ${OPSYS} == "NetBSD"
180         @# NetBSD Advertisement O:-)
181         cd ${DESTDIR}${PREFIX}/share/kde/config/kdm;                    \
182         ${SED} -e 's|^\(LogoPixmap\)=.*|\1=${PREFIX}/${ICONDIR}/NetBSD-flag.png|' \
183                 kdmrc > ${WRKDIR}/kdmrc.ad;                             \
184         ${CP} -f ${WRKDIR}/kdmrc.ad kdmrc
185 .endif
186
187 .if ${OPSYS} == "NetBSD" && !empty(OS_VERSION:M1.[0-6]*)
188 CONFIGURE_ENV+= ac_cv_func_getutxent='no'
189 .endif
190
191 .if ${OPSYS} == "NetBSD"
192 # We always use pkg-config for detecting the fontconfig version, since there
193 # may exist an old version of fontconfig-config on systems that have been
194 # updated from NetBSD 1.x.
195 CONFIGURE_ENV+= kde_cv_path_fontconfig_config='NONE'
196 .endif
197
198 .include "../../meta-pkgs/kde3/kde3.mk"
199 .include "../../sysutils/desktop-file-utils/desktopdb.mk"
200
201 .include "../../databases/openldap-client/buildlink3.mk"
202 .if ${OPSYS} != "SunOS"
203 .include "../../devel/libusb/buildlink3.mk"
204 .endif
205 .include "../../devel/zlib/buildlink3.mk"
206 .include "../../fonts/fontconfig/buildlink3.mk"
207 .include "../../graphics/freetype2/buildlink3.mk"
208 .include "../../graphics/hicolor-icon-theme/buildlink3.mk"
209 .include "../../graphics/openexr/buildlink3.mk"
210 .include "../../security/openssl/buildlink3.mk"
211 .include "../../x11/kdelibs3/buildlink3.mk"
212 .include "../../x11/libXcursor/buildlink3.mk"
213 .include "../../x11/libXrandr/buildlink3.mk"
214 .include "../../x11/libXt/buildlink3.mk"
215 .include "../../x11/libxkbfile/buildlink3.mk"
216
217 .include "../../mk/bsd.pkg.mk"