1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
|
#-*- tab-width: 4; -*-
# ex:ts=4
#
# $FreeBSD$
# $NetBSD$
# $MCom: ports-experimental/Mk/bsd.mate.mk,v 1.13 2012/09/03 17:02:31 mezz Exp $
#
# Please view me with 4 column tabs!
#######################################################
#
# *** WARNING: Disable MARCUSCOM before merge in FreeBSD!
# Please also remove this section before merging into FreeBSD.
#
#MARCUSCOM_CVS=yes
# ======================= USERS =================================
#
# There are no significant user-definable settings in here.
# This file is a framework to make it easier to create MATE ports.
#
# ======================= /USERS ================================
.if !defined(_POSTMKINCLUDED) && !defined(Mate_Pre_Include)
# Please make sure all changes to this file are passed through the maintainer.
# Do not commit them yourself (unless of course you're the Port's Wraith ;).
Mate_Include_MAINTAINER= gnome@FreeBSD.org
Mate_Pre_Include= bsd.mate.mk
# This section defines possible names of MATE components and all information
# necessary for ports to use those components.
# Ports can use this as follows:
#
# USE_MATE= caja common desktop
#
# .include <bsd.port.mk>
#
# As a result proper LIB_DEPENDS/RUN_DEPENDS will be added and CONFIGURE_ENV
# and MAKE_ENV defined.
#
# non-version specific components. Do not use :build/:run on those.
_USE_MATE_ALL= autogen intlhack intltool ltasneededhack lthack ltverhack
# These *hack* tools are the same as in bsd.gnome.mk but are run in
# pre-configure because pre-patch is when we run autogen.sh.
# MATE components, you can use the :build or :run if need. Without the :build
# and :run, it will be added in both build and run dependency. It will check
# for the library dependency first. If not exists then do the build/run on
# the *.pc file instead.
_USE_MATE_ALL+= caja common controlcenter desktop dialogs docutils icontheme \
keyring libmatekbd libmatekeyring libmateweather libmatewnck \
marco menus mucharmap notificationdaemon panel polkit pluma \
settingsdaemon
SCROLLKEEPER_DIR= /var/db/rarian
lthack_PRE_PATCH= ${FIND} ${WRKSRC} -name "configure" -type f | ${XARGS} ${REINPLACE_CMD} -e \
'/^LIBTOOL_DEPS="$$ac_aux_dir\/ltmain.sh"$$/s|$$|; $$ac_aux_dir/ltconfig $$LIBTOOL_DEPS;|'
caja_DETECT= ${LOCALBASE}/libdata/pkgconfig/libcaja-extension.pc
caja_BUILD_DEPENDS= ${caja_DETECT}:${PORTSDIR}/x11-fm/mate-file-manager
caja_LIB_DEPENDS= libcaja-extension.so:${PORTSDIR}/x11-fm/mate-file-manager
caja_RUN_DEPENDS= ${caja_DETECT}:${PORTSDIR}/x11-fm/mate-file-manager
mucharmap_DETECT= ${LOCALBASE}/libdata/pkgconfig/mucharmap-2.pc
mucharmap_BUILD_DEPENDS=${mucharmap_DETECT}:${PORTSDIR}/deskutils/mate-character-map
mucharmap_LIB_DEPENDS= libmucharmap.so:${PORTSDIR}/deskutils/mate-character-map
mucharmap_RUN_DEPENDS= ${mucharmap_DETECT}:${PORTSDIR}/deskutils/mate-character-map
common_DETECT= ${LOCALBASE}/bin/mate-autogen
common_BUILD_DEPENDS= ${common_DETECT}:${PORTSDIR}/devel/mate-common
common_RUN_DEPENDS= ${common_DETECT}:${PORTSDIR}/devel/mate-common
controlcenter_DETECT= ${LOCALBASE}/libdata/pkgconfig/mate-window-settings-2.0.pc
controlcenter_BUILD_DEPENDS= ${controlcenter_DETECT}:${PORTSDIR}/sysutils/mate-control-center
controlcenter_LIB_DEPENDS= libmate-window-settings.so:${PORTSDIR}/sysutils/mate-control-center
controlcenter_RUN_DEPENDS= ${controlcenter_DETECT}:${PORTSDIR}/sysutils/mate-control-center
desktop_DETECT= ${LOCALBASE}/libdata/pkgconfig/mate-desktop-2.0.pc
desktop_BUILD_DEPENDS= ${desktop_DETECT}:${PORTSDIR}/x11/mate-desktop
desktop_LIB_DEPENDS= libmate-desktop-2.so:${PORTSDIR}/x11/mate-desktop
desktop_RUN_DEPENDS= ${desktop_DETECT}:${PORTSDIR}/x11/mate-desktop
dialogs_DETECT= ${LOCALBASE}/bin/matedialog
dialogs_BUILD_DEPENDS= ${dialogs_DETECT}:${PORTSDIR}/x11/mate-dialogs
dialogs_RUN_DEPENDS= ${dialogs_DETECT}:${PORTSDIR}/x11/mate-dialogs
docutils_DETECT= ${LOCALBASE}/libdata/pkgconfig/mate-doc-utils.pc
docutils_BUILD_DEPENDS= ${docutils_DETECT}:${PORTSDIR}/textproc/mate-doc-utils
docutils_RUN_DEPENDS= ${docutils_DETECT}:${PORTSDIR}/textproc/mate-doc-utils
icontheme_DETECT= ${LOCALBASE}/libdata/pkgconfig/mate-icon-theme.pc
icontheme_BUILD_DEPENDS=${icontheme_DETECT}:${PORTSDIR}/x11-themes/mate-icon-theme
icontheme_RUN_DEPENDS= ${icontheme_DETECT}:${PORTSDIR}/x11-themes/mate-icon-theme
intltool_DETECT= ${LOCALBASE}/bin/intltool-extract
intltool_BUILD_DEPENDS= ${intltool_DETECT}:${PORTSDIR}/textproc/intltool
intlhack_PRE_PATCH= ${FIND} ${WRKSRC} -name "intltool-merge.in" | ${XARGS} ${REINPLACE_CMD} -e \
's|mkdir $$lang or|mkdir $$lang, 0777 or| ; \
s|^push @INC, "/.*|push @INC, "${LOCALBASE}/share/intltool";| ; \
s|/usr/bin/iconv|${LOCALBASE}/bin/iconv|g ; \
s|unpack *[(]'"'"'U\*'"'"'|unpack ('"'"'C*'"'"'|'
.if ${USE_MATE:Mintlhack}!=""
USE_MATE+= intltool
.endif
keyring_DETECT= ${LOCALBASE}/libdata/pkgconfig/mate-gcr-0.pc
keyring_BUILD_DEPENDS= ${keyring_DETECT}:${PORTSDIR}/security/mate-keyring
keyring_LIB_DEPENDS= libmategcr.so:${PORTSDIR}/security/mate-keyring
keyring_RUN_DEPENDS= ${keyring_DETECT}:${PORTSDIR}/security/mate-keyring
libmatekbd_DETECT= ${LOCALBASE}/libdata/pkgconfig/libmatekbd.pc
libmatekbd_BUILD_DEPENDS= ${libmatekbd_DETECT}:${PORTSDIR}/x11/libmatekbd
libmatekbd_LIB_DEPENDS= libmatekbd.so:${PORTSDIR}/x11/libmatekbd
libmatekbd_RUN_DEPENDS= ${libmatekbd_DETECT}:${PORTSDIR}/x11/libmatekbd
libmatekeyring_DETECT= ${LOCALBASE}/libdata/pkgconfig/mate-keyring-1.pc
libmatekeyring_BUILD_DEPENDS= ${libmatekeyring_DETECT}:${PORTSDIR}/security/libmatekeyring
libmatekeyring_LIB_DEPENDS= libmate-keyring.so:${PORTSDIR}/security/libmatekeyring
libmatekeyring_RUN_DEPENDS= ${libmatekeyring_DETECT}:${PORTSDIR}/security/libmatekeyring
libmateweather_DETECT= ${LOCALBASE}/libdata/pkgconfig/mateweather.pc
libmateweather_BUILD_DEPENDS= ${libmateweather_DETECT}:${PORTSDIR}/net/libmateweather
libmateweather_LIB_DEPENDS= libmateweather.so:${PORTSDIR}/net/libmateweather
libmateweather_RUN_DEPENDS= ${libmateweather_DETECT}:${PORTSDIR}/net/libmateweather
libmatewnck_DETECT= ${LOCALBASE}/libdata/pkgconfig/libmatewnck.pc
libmatewnck_BUILD_DEPENDS= ${libmatewnck_DETECT}:${PORTSDIR}/x11-toolkits/libmatewnck
libmatewnck_LIB_DEPENDS= libmatewnck.so:${PORTSDIR}/x11-toolkits/libmatewnck
libmatewnck_RUN_DEPENDS= ${libmatewnck_DETECT}:${PORTSDIR}/x11-toolkits/libmatewnck
marco_DETECT= ${LOCALBASE}/libdata/pkgconfig/libmarco-private.pc
marco_BUILD_DEPENDS= ${marco_DETECT}:${PORTSDIR}/x11-wm/mate-window-manager
marco_LIB_DEPENDS= libmarco-private.so:${PORTSDIR}/x11-wm/mate-window-manager
marco_RUN_DEPENDS= ${marco_DETECT}:${PORTSDIR}/x11-wm/mate-window-manager
menus_DETECT= ${LOCALBASE}/libdata/pkgconfig/libmate-menu.pc
menus_BUILD_DEPENDS= ${menus_DETECT}:${PORTSDIR}/x11/mate-menus
menus_LIB_DEPENDS= libmate-menu.so:${PORTSDIR}/x11/mate-menus
menus_RUN_DEPENDS= ${menus_DETECT}:${PORTSDIR}/x11/mate-menus
notificationdaemon_DETECT= ${LOCALBASE}/libexec/mate-notification-daemon
notificationdaemon_BUILD_DEPENDS= ${notificationdaemon_DETECT}:${PORTSDIR}/deskutils/mate-notification-daemon
notificationdaemon_RUN_DEPENDS= ${notificationdaemon_DETECT}:${PORTSDIR}/deskutils/mate-notification-daemon
panel_DETECT= ${LOCALBASE}/libdata/pkgconfig/libmatepanelapplet-4.0.pc
panel_BUILD_DEPENDS= ${panel_DETECT}:${PORTSDIR}/x11/mate-panel
panel_LIB_DEPENDS= libmate-panel-applet-4.so:${PORTSDIR}/x11/mate-panel
panel_RUN_DEPENDS= ${panel_DETECT}:${PORTSDIR}/x11/mate-panel
polkit_DETECT= ${LOCALBASE}/libdata/pkgconfig/polkit-gtk-mate-1.pc
polkit_BUILD_DEPENDS= ${polkit_DETECT}:${PORTSDIR}/sysutils/mate-polkit
polkit_LIB_DEPENDS= libpolkit-gtk-mate-1.so:${PORTSDIR}/sysutils/mate-polkit
polkit_RUN_DEPENDS= ${polkit_DETECT}:${PORTSDIR}/sysutils/mate-polkit
pluma_DETECT= ${LOCALBASE}/libdata/pkgconfig/pluma.pc
pluma_BUILD_DEPENDS= ${pluma_DETECT}:${PORTSDIR}/editors/mate-text-editor
pluma_RUN_DEPENDS= ${pluma_DETECT}:${PORTSDIR}/editors/mate-text-editor
settingsdaemon_DETECT= ${LOCALBASE}/libdata/pkgconfig/mate-settings-daemon.pc
settingsdaemon_BUILD_DEPENDS= ${settingsdaemon_DETECT}:${PORTSDIR}/sysutils/mate-settings-daemon
settingsdaemon_RUN_DEPENDS= ${settingsdaemon_DETECT}:${PORTSDIR}/sysutils/mate-settings-daemon
# End component definition section
.endif
# End of optional part.
.if defined(_POSTMKINCLUDED) && !defined(Mate_Post_Include)
Mate_Post_Include= bsd.mate.mk
.if defined(USE_MATE)
# Then handle the ltverhack component (it has to be done here, because
# we rely on some bsd.autotools.mk variables, and bsd.autotools.mk is
# included in the post-makefile section).
.if defined(_AUTOTOOL_libtool)
lthacks_CONFIGURE_ENV= ac_cv_path_DOLT_BASH=
lthacks_PRE_PATCH= ${CP} -pf ${LTMAIN} ${WRKDIR}/mate-ltmain.sh && \
${CP} -pf ${LIBTOOL} ${WRKDIR}/mate-libtool && \
for file in ${LIBTOOLFILES}; do \
${REINPLACE_CMD} -e \
'/^ltmain=/!s|$$ac_aux_dir/ltmain\.sh|${LIBTOOLFLAGS} ${WRKDIR}/mate-ltmain.sh|g; \
/^LIBTOOL=/s|$$(top_builddir)/libtool|${WRKDIR}/mate-libtool|g' \
${PATCH_WRKSRC}/$$file; \
done;
.else
. if ${USE_MATE:Mltverhack*}!="" || ${USE_MATE:Mltasneededhack}!=""
IGNORE= cannot install: ${PORTNAME} uses the ltverhack and/or ltasneededhack MATE components but does not use libtool
. endif
.endif
.if ${USE_MATE:Mltverhack\:*:C/^[^:]+:([^:]+).*/\1/}==""
ltverhack_LIB_VERSION= major=.`expr $$current - $$age`
.else
ltverhack_LIB_VERSION= major=".${USE_MATE:Mltverhack\:*:C/^[^:]+:([^:]+).*/\1/}"
.endif
ltverhack_PATCH_DEPENDS=${LIBTOOL_DEPENDS}
ltverhack_PRE_PATCH= for file in mate-ltmain.sh mate-libtool; do \
if [ -f ${WRKDIR}/$$file ]; then \
${REINPLACE_CMD} -e \
'/freebsd-elf)/,/;;/ s|major="\.$$current"|${ltverhack_LIB_VERSION}|; \
/freebsd-elf)/,/;;/ s|versuffix="\.$$current"|versuffix="$$major"|' \
${WRKDIR}/$$file; \
fi; \
done
ltasneededhack_PATCH_DEPENDS=${LIBTOOL_DEPENDS}
ltasneededhack_PRE_PATCH= if [ -f ${WRKDIR}/mate-libtool ]; then \
${REINPLACE_CMD} -e \
'/^archive_cmds=/s/-shared/-shared -Wl,--as-needed/ ; \
/^archive_expsym_cmds=/s/-shared/-shared -Wl,--as-needed/' \
${WRKDIR}/mate-libtool; \
fi
# Comparing between USE_MATE and _USE_MATE_ALL to make sure the component
# exists in _USE_MATE_ALL. If it does not exist then give an error about it.
#. for component in ${USE_MATE:O:u:C/^([^:]+).*/\1/}
. for component in ${USE_MATE:C/^([^:]+).*/\1/}
#. for component in ${USE_GNOME:C/^([^:]+).*/\1/}
. if ${_USE_MATE_ALL:M${component}}==""
.error cannot install: Unknown component USE_MATE=${component}
. endif
. endfor
. if ${USE_MATE:Mltverhack*}!= "" || ${USE_MATE:Mltasneededhack}!= ""
MATE_PRE_PATCH+= ${lthacks_PRE_PATCH}
CONFIGURE_ENV+= ${lthacks_CONFIGURE_ENV}
. endif
. for component in ${USE_MATE:O:u:C/^([^:]+).*/\1/}
. if defined(${component}_PATCH_DEPENDS)
PATCH_DEPENDS+= ${${component}_PATCH_DEPENDS}
. endif
. if defined(${component}_DETECT)
. if ${USE_MATE:M${component}\:build}!=""
BUILD_DEPENDS+= ${${component}_BUILD_DEPENDS}
. elif ${USE_MATE:M${component}\:run}!=""
RUN_DEPENDS+= ${${component}_RUN_DEPENDS}
. else
. if defined(${component}_LIB_DEPENDS)
LIB_DEPENDS+= ${${component}_LIB_DEPENDS}
. else
BUILD_DEPENDS+= ${${component}_BUILD_DEPENDS}
RUN_DEPENDS+= ${${component}_RUN_DEPENDS}
. endif
. endif
. endif
. if defined(${component}_CONFIGURE_TARGET)
CONFIGURE_ARGS+=${${component}_CONFIGURE_ARGS}
. endif
. if defined(${component}_CONFIGURE_ENV)
CONFIGURE_ENV+= ${${component}_CONFIGURE_ENV}
. endif
. if defined(${component}_MAKE_ENV)
MAKE_ENV+= ${${component}_MAKE_ENV}
. endif
. if !defined(CONFIGURE_TARGET) && defined(${component}_CONFIGURE_TARGET)
CONFIGURE_TARGET= ${${component}_CONFIGURE_TARGET}
. endif
. if defined(${component}_PRE_PATCH)
MATE_PRE_PATCH+= ; ${${component}_PRE_PATCH}
. endif
. endfor
.endif # USE_MATE check
.if ${USE_MATE:Mautogen}!=""
CONFIGURE_ENV+= NOCONFIGURE=yes
pre-configure: mate-pre-configure
mate-pre-configure:
@(cd ${CONFIGURE_WRKSRC} ; ${SETENV} ${CONFIGURE_ENV} ./autogen.sh)
.endif
.if defined(MATE_PRE_PATCH)
pre-configure-script: mate-pre-configure-script
mate-pre-configure-script:
@${MATE_PRE_PATCH:C/^;//1}
.endif
.if ${MAINTAINER}=="gnome@FreeBSD.org"
CONFIGURE_FAIL_MESSAGE= "Please run the gnomelogalyzer, available from \"http://www.freebsd.org/gnome/gnomelogalyzer.sh\", which will diagnose the problem and suggest a solution. If - and only if - the gnomelogalyzer cannot solve the problem, report the build failure to the FreeBSD MATE team at ${MAINTAINER}, and attach (a) \"${CONFIGURE_WRKSRC}/${CONFIGURE_LOG}\", (b) the output of the failed make command, and (c) the gnomelogalyzer output. Also, it might be a good idea to provide an overview of all packages installed on your system (i.e. an \`ls ${PKG_DBDIR}\`). Put your attachment up on any website, copy-and-paste into http://freebsd-gnome.pastebin.com, or use send-pr(1) with the attachment. Try to avoid sending any attachments to the mailing list (${MAINTAINER}), because attachments sent to FreeBSD mailing lists are usually discarded by the mailing list software."
.endif
.endif
# End of use part.
|