View | Details | Raw Unified | Return to bug 242625 | Differences between
and this patch

Collapse All | Expand All

(-)b/emulators/i386-wine-devel/Makefile.i386 (-3 / +11 lines)
Lines 14-23 PKGDEINSTALL= ${PKGINSTALL} Link Here
14
14
15
RUN_DEPENDS=	mesa-dri>0:graphics/mesa-dri
15
RUN_DEPENDS=	mesa-dri>0:graphics/mesa-dri
16
16
17
CONFLICTS_INSTALL?=	wine-[0-9]* wine-staging-[0-9]* wine-devel-[0-9]* \
17
CONFLICTS_INSTALL?=	wine-[0-9]* wine-staging-[0-9]* \
18
			i386-wine-[0-9]* i386-wine-staging-[0-9]*
18
			i386-wine-[0-9]* i386-wine-staging-[0-9]*
19
19
20
ACTUAL-PACKAGE-DEPENDS=	${DO_NADA}
21
WINELIBDIR=	${PREFIX}/lib32
20
WINELIBDIR=	${PREFIX}/lib32
22
CONFIGURE_ARGS+=	--bindir=${PREFIX}/bin32 --libdir=${WINELIBDIR}
21
CONFIGURE_ARGS+=	--bindir=${PREFIX}/bin32 --libdir=${WINELIBDIR}
23
PLIST_REINPLACE+=	winelib
22
PLIST_REINPLACE+=	winelib
Lines 36-42 post-install-script: Link Here
36
	# Fix pkg-plist references
35
	# Fix pkg-plist references
37
	${REINPLACE_CMD} -e 's!lib/!lib32/!g' ${TMPPLIST}
36
	${REINPLACE_CMD} -e 's!lib/!lib32/!g' ${TMPPLIST}
38
	# Install bounce script to access the 32-bit executables
37
	# Install bounce script to access the 32-bit executables
39
	${INSTALL_SCRIPT} ${SLAVEDIR}/files/binbounce ${STAGEDIR}${PREFIX}/bin/wine
38
	${INSTALL_SCRIPT} ${SLAVEDIR}/files/${BINBOUNCE} ${STAGEDIR}${PREFIX}/bin/wine
40
	for i in `${GREP} ^bin ${TMPPLIST} | ${XARGS} -n1 basename` ; do \
39
	for i in `${GREP} ^bin ${TMPPLIST} | ${XARGS} -n1 basename` ; do \
41
		[ "$${i}" = "wine" ] || ${LN} -f ${STAGEDIR}${PREFIX}/bin/wine ${STAGEDIR}${PREFIX}/bin/$${i} ; \
40
		[ "$${i}" = "wine" ] || ${LN} -f ${STAGEDIR}${PREFIX}/bin/wine ${STAGEDIR}${PREFIX}/bin/$${i} ; \
42
		${ECHO_CMD} bin32/$${i} >> ${TMPPLIST} ; \
41
		${ECHO_CMD} bin32/$${i} >> ${TMPPLIST} ; \
Lines 77-79 post-install-script: Link Here
77
	${ECHO_CMD} ${DATADIR:S|$(PREFIX)/||}/patch-nvidia.sh >> ${TMPPLIST}
76
	${ECHO_CMD} ${DATADIR:S|$(PREFIX)/||}/patch-nvidia.sh >> ${TMPPLIST}
78
77
79
.include "${MASTERDIR}/Makefile"
78
.include "${MASTERDIR}/Makefile"
79
80
.if ${PORT_OPTIONS:MWOW64}
81
ACTUAL-PACKAGE-DEPENDS=${ECHO_CMD} "\"wine-devel\": {origin: \"emulators/wine-devel\", version: \"${PKGVERSION}\"}"
82
BINBOUNCE=		binbounce.wow64
83
.else
84
CONFLICTS_INSTALL+=	wine-devel-[0-9]*
85
ACTUAL-PACKAGE-DEPENDS=${DO_NADA}
86
BINBOUNCE=		binbounce
87
.endif
(-)b/emulators/i386-wine-devel/files/binbounce.wow64 (+25 lines)
Added Link Here
1
#!/bin/sh
2
3
TARGET="`realpath $0`"
4
5
LOCALBASE=${TARGET%/*}/..
6
BINNAME=${TARGET##*/}
7
8
if [ -z "$__BINBOUNCE_BOOTSTRAP" ]
9
then
10
  export LIBGL_DRIVERS_PATH=$LOCALBASE/lib32/dri
11
  export LD_32_LIBRARY_PATH="$LOCALBASE/lib32":"$LOCALBASE/lib32/wine":"$LD_32_LIBRARY_PATH":/usr/lib32
12
  export LD_32_LIBRARY_PATH_RPATH=y
13
  export PATH="$LOCALBASE/bin32":"$PATH"
14
  export __BINBOUNCE_BOOTSTRAP="1"
15
16
  WINE32_VERSION=`$LOCALBASE/bin32/wine --version`
17
  WINE64_VERSION=`wine64 --version`
18
  if [ "$WINE32_VERSION" != "$WINE64_VERSION" ]
19
  then
20
    echo "Please, make sure that wine [$WINE32_VERSION] and wine64 [$WINE64_VERSION] versions match each other."
21
    exit 1
22
  fi
23
fi
24
25
exec "$LOCALBASE/bin32/$BINNAME" "$@"
(-)b/emulators/wine-devel/Makefile (-12 / +27 lines)
Lines 3-9 Link Here
3
3
4
PORTNAME=	wine
4
PORTNAME=	wine
5
DISTVERSION=	4.21
5
DISTVERSION=	4.21
6
PORTEPOCH=	1
6
PORTEPOCH=	2
7
CATEGORIES=	emulators
7
CATEGORIES=	emulators
8
MASTER_SITES=	SF/${PORTNAME}/Source \
8
MASTER_SITES=	SF/${PORTNAME}/Source \
9
		http://mirrors.ibiblio.org/wine/source/4.x/
9
		http://mirrors.ibiblio.org/wine/source/4.x/
Lines 27-33 LIB_DEPENDS= libFAudio.so:audio/faudio \ Link Here
27
USES=		bison desktop-file-utils gmake localbase shebangfix tar:xz xorg
27
USES=		bison desktop-file-utils gmake localbase shebangfix tar:xz xorg
28
28
29
CONFLICTS_INSTALL=	wine-[0-9]* wine-staging-[0-9]* i386-wine-[0-9]* \
29
CONFLICTS_INSTALL=	wine-[0-9]* wine-staging-[0-9]* i386-wine-[0-9]* \
30
			i386-wine-staging-[0-9]* i386-wine-devel-[0-9]*
30
			i386-wine-staging-[0-9]*
31
31
32
GNU_CONFIGURE=	yes
32
GNU_CONFIGURE=	yes
33
CONFIGURE_ARGS+=--verbose \
33
CONFIGURE_ARGS+=--verbose \
Lines 55-63 SHEBANG_FILES= tools/make_requests tools/winemaker/winemaker \ Link Here
55
55
56
SUB_FILES=	pkg-message
56
SUB_FILES=	pkg-message
57
57
58
PORTDATA=	l_intl.nls wine.inf
58
OPTIONS_DEFINE=	CUPS DOCS DOSBOX GCC GNUTLS HAL LDAP LIBXSLT MPG123 OPENAL STAGING V4L VKD3D VULKAN WINEMAKER X11 GECKO MONO WOW64
59
60
OPTIONS_DEFINE=	CUPS DOCS DOSBOX GCC GNUTLS HAL LDAP LIBXSLT MPG123 OPENAL STAGING V4L VKD3D VULKAN WINEMAKER X11 GECKO MONO
61
OPTIONS_DEFAULT=GCC GNUTLS X11
59
OPTIONS_DEFAULT=GCC GNUTLS X11
62
OPTIONS_SUB=	yes
60
OPTIONS_SUB=	yes
63
61
Lines 68-73 VULKAN_DESC= Vulkan API support Link Here
68
WINEMAKER_DESC=	Fully support winemaker (requires Perl)
66
WINEMAKER_DESC=	Fully support winemaker (requires Perl)
69
GECKO_DESC=	Bundle Gecko MSI package for Wine
67
GECKO_DESC=	Bundle Gecko MSI package for Wine
70
MONO_DESC=	Bundle Mono MSI package for Wine
68
MONO_DESC=	Bundle Mono MSI package for Wine
69
WOW64_DESC=	Allow simultaneous installation of 32- and 64-bit components
71
70
72
CUPS_CONFIGURE_WITH=	cups
71
CUPS_CONFIGURE_WITH=	cups
73
CUPS_LIB_DEPENDS=	libcups.so:print/cups
72
CUPS_LIB_DEPENDS=	libcups.so:print/cups
Lines 122-127 X11_LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ Link Here
122
121
123
.include <bsd.port.pre.mk>
122
.include <bsd.port.pre.mk>
124
123
124
.if empty(PORT_OPTIONS:MWOW64) || ${ARCH} == amd64
125
PORTDATA=	l_intl.nls wine.inf
126
.endif
127
128
.if empty(PORT_OPTIONS:MWOW64)
129
CONFLICTS_INSTALL+=	i386-wine-devel-[0-9]*
130
.endif
131
125
.if ${ARCH} == amd64
132
.if ${ARCH} == amd64
126
# Wine is composed of three parts:
133
# Wine is composed of three parts:
127
#  - wine (aka this port) is the 32-bit component and runs 32-bit programs (on FreeBSD/i386)
134
#  - wine (aka this port) is the 32-bit component and runs 32-bit programs (on FreeBSD/i386)
Lines 136-148 X11_LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ Link Here
136
# --libdir is required since Wine defaults to "${PREFIX}/lib64" on amd64.
143
# --libdir is required since Wine defaults to "${PREFIX}/lib64" on amd64.
137
CONFIGURE_ARGS+=	--enable-win64 --libdir=${PREFIX}/lib
144
CONFIGURE_ARGS+=	--enable-win64 --libdir=${PREFIX}/lib
138
PLIST_SUB+=		WINE32="@comment " WINE64=""
145
PLIST_SUB+=		WINE32="@comment " WINE64=""
139
140
# Wine assumes a WoW64 package is available, however WoW64 is not yet
141
# available on FreeBSD. Also fix the desktop file.
142
post-patch:
143
	${REINPLACE_CMD} 's|/wine|/wine64|g' ${WRKSRC}/tools/wineapploader.in
144
	${REINPLACE_CMD} '/Exec/s|wine|wine64|g' ${WRKSRC}/loader/wine.desktop
145
146
.else
146
.else
147
PLIST_SUB+=		WINE32="" WINE64="@comment "
147
PLIST_SUB+=		WINE32="" WINE64="@comment "
148
.endif
148
.endif
Lines 175-180 post-install: Link Here
175
.endfor
175
.endfor
176
	${INSTALL_DATA} ${WRKSRC}/programs/winedbg/README ${STAGEDIR}${DOCSDIR}/README.winedbg
176
	${INSTALL_DATA} ${WRKSRC}/programs/winedbg/README ${STAGEDIR}${DOCSDIR}/README.winedbg
177
	${INSTALL_DATA} ${WRKSRC}/tools/winedump/README ${STAGEDIR}${DOCSDIR}/README.winedump
177
	${INSTALL_DATA} ${WRKSRC}/tools/winedump/README ${STAGEDIR}${DOCSDIR}/README.winedump
178
.if ${ARCH} == i386 && ${PORT_OPTIONS:MWOW64}
179
	for i in `${GREP} ^bin ${TMPPLIST} | ${XARGS} -n1 basename` ; do \
180
		[ "$${i}" = "wine" ] || ${RM} ${STAGEDIR}${PREFIX}/bin/$${i} ${STAGEDIR}${PREFIX}/bin32/$${i} ; \
181
	done
182
	${RM} -r ${STAGEDIR}${PREFIX}/include/wine
183
	${RM} -r ${STAGEDIR}${PREFIX}/man
184
	${RM} -r ${STAGEDIR}${PREFIX}/share/wine/fonts
185
	${RM} -r ${STAGEDIR}${PREFIX}/share/wine/gecko
186
	${RM} -r ${STAGEDIR}${PREFIX}/share/wine/mono
187
	${RM} -r ${STAGEDIR}${DOCSDIR}
188
	${RM} ${STAGEDIR}${PREFIX}/share/applications/wine.desktop
189
	${RM} ${STAGEDIR}${PREFIX}/share/wine/*.inf
190
	${RM} ${STAGEDIR}${PREFIX}/share/wine/*.nls
191
	${REINPLACE_CMD} -n -E -e "/^(@|bin\/wine$$|lib\/)/p" ${TMPPLIST}
192
.endif
178
193
179
check-wine-devel-vs-staging:
194
check-wine-devel-vs-staging:
180
	@${GREP} %%STAGING%% pkg-plist | while read f; do \
195
	@${GREP} %%STAGING%% pkg-plist | while read f; do \

Return to bug 242625