summaryrefslogtreecommitdiff
path: root/emulators/wine-devel/Makefile
blob: 650e35b0061a7dfa2fb6acf692e475ba25c37f29 (plain) (blame)
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
# ex:ts=8
# New ports collection makefile for:    wine
# Date created:         Sa   9 Nov 1996 00:52:22 MET
# Whom:			se
#
# $FreeBSD$
#

PORTNAME=	wine
# We will skip the 2000.06.14 snapshot of Wine as this proved to be
# somewhat unstable (also on other platforms).
PORTVERSION=	2000.05.26
CATEGORIES=	emulators
MASTER_SITES=	${MASTER_SITE_SUNSITE}
MASTER_SITE_SUBDIR=	ALPHA/wine/development
DISTNAME=	Wine-${PORTVERSION:S/.//g}

MAINTAINER=	pfeifer@dbai.tuwien.ac.at

LIB_DEPENDS=	Xpm.4:${PORTSDIR}/graphics/xpm \
		GL.14:${PORTSDIR}/graphics/Mesa3

WRKSRC=		${WRKDIR}/wine-${PORTVERSION:S/.//g}
GNU_CONFIGURE=	yes
CONFIGURE_ENV=	LIBS=-Wl,-rpath,${PREFIX}/lib/wine
INSTALLS_SHLIB=	yes
LDCONFIG_DIRS=	%%PREFIX%%/lib/wine
MAN1=		wine.1
MAN5=		wine.conf.5
ONLY_FOR_ARCHS=	i386

.if !defined(NDEBUG)
STRIP=
CFLAGS+=	-g
.else
pre-extract:
	@${ECHO} "NDEBUG has been set, building without debug info..."
	@${ECHO} "This will save diskspace but it makes debugging harder."
	@${ECHO} "If for example wine crashes and you would like to send"
	@${ECHO} "the backtrace it then dumps to the developers (or"
	@${ECHO} "comp.emulators.ms-windows.wine) it will be much more useful"
	@${ECHO} "to them if you first rebuild without this and generate it again."
	@${ECHO} "(If you're _not_ low on diskspace there is not really a reason to"
	@${ECHO} "use this flag, the resulting wine won't use more VM or anything like"
	@${ECHO} "that when running, only when it has to enter the debugger...)"
.endif

post-patch:
	@${PERL} -pi.sofix -e 's/SOVERSION = 1.0/SOVERSION = 1/g' \
		${WRKSRC}/Makefile.in
.for F in avifil32/Makefile.in comctl32/Makefile.in commdlg/Makefile.in dciman32/Makefile.in ddraw/Makefile.in dinput/Makefile.in dplayx/Makefile.in dsound/Makefile.in gdi/Makefile.in icmp/Makefile.in imagehlp/Makefile.in imm32/Makefile.in lzexpand/Makefile.in mpr/Makefile.in msacm/Makefile.in msacm32/Makefile.in msnet32/Makefile.in msvideo/Makefile.in odbc32/Makefile.in ole32/Makefile.in oleaut32/Makefile.in olecli/Makefile.in oledlg/Makefile.in olepro32/Makefile.in olesvr/Makefile.in opengl32/Makefile.in psapi/Makefile.in rasapi32/Makefile.in richedit/Makefile.in setupx/Makefile.in shell32/Makefile.in sound/Makefile.in stress/Makefile.in tapi32/Makefile.in ttydrv/Makefile.in urlmon/Makefile.in user/Makefile.in version/Makefile.in win32s/Makefile.in win87em/Makefile.in winaspi/Makefile.in windebug/Makefile.in wing/Makefile.in wininet/Makefile.in winmm/Makefile.in winmm/joystick/Makefile.in winmm/mcianim/Makefile.in winmm/mciavi/Makefile.in winmm/mcicda/Makefile.in winmm/mciseq/Makefile.in winmm/mciwave/Makefile.in winmm/midimap/Makefile.in winmm/wavemap/Makefile.in winmm/wineoss/Makefile.in winsock/Makefile.in winspool/Makefile.in x11drv/Makefile.in
	@${PERL} -pi.sofix -e 's/SOVERSION = 1.0/SOVERSION = 1/g' \
		${WRKSRC}/dlls/${F}
.endfor

post-configure:
	cd ${WRKSRC} && make depend

post-build:
	cd ${WRKSRC}/programs/regapi && ${MAKE}
	${SED} '1s/bash/sh/;s-\./\(reg.*\.pl\)-'${PREFIX}/lib/wine/reg/'\1-' <${WRKSRC}/programs/regapi/regSet.sh >${WRKDIR}/regSet.sh
	${SED} 's-\(Change directory to \)<dirs to wine>/tools$$-\1your program'"'"'s dir (or wherever you need to be to run it)-;s-\./\(bug_report\.pl\)-'${PREFIX}/lib/wine/'\1-' <${WRKSRC}/documentation/bugreports >${WRKDIR}/bugreports
	${SED} 's-\(look at the file \)<dirs to wine>/wine.ini-\1'${PREFIX}/etc/wine.conf.sample- <${WRKSRC}/documentation/config >${WRKDIR}/config

do-install:
	cd ${WRKSRC} && ${MAKE} install
	${INSTALL_SCRIPT} ${WRKDIR}/regSet.sh ${PREFIX}/bin
	${INSTALL_DATA} ${WRKSRC}/wine.ini ${PREFIX}/etc/wine.conf.sample
	[ -f ${PREFIX}/etc/wine.conf ] \
		|| ${INSTALL_DATA} ${WRKSRC}/wine.ini ${PREFIX}/etc/wine.conf
	${INSTALL_DATA} ${WRKSRC}/documentation/wine.man ${PREFIX}/man/man1/wine.1
	${INSTALL_DATA} ${WRKSRC}/documentation/wine.conf.man ${PREFIX}/man/man5/wine.conf.5
	-@${MKDIR} ${PREFIX}/lib/wine/documentation ${PREFIX}/lib/wine/reg 2>/dev/null
	${INSTALL_DATA} ${WRKDIR}/bugreports ${WRKDIR}/config \
		${WRKSRC}/README \
		${WRKSRC}/ANNOUNCE \
		${WRKSRC}/AUTHORS \
		${WRKSRC}/LICENSE \
		${WRKSRC}/WARRANTY \
		${WRKSRC}/documentation/cdrom-labels \
		${WRKSRC}/documentation/debugging \
		${WRKSRC}/documentation/dlls \
		${WRKSRC}/documentation/fonts \
		${WRKSRC}/documentation/ioport-trace-hints \
		${WRKSRC}/documentation/no-windows \
		${WRKSRC}/documentation/printing \
		${WRKSRC}/documentation/psdriver \
		${WRKSRC}/documentation/psdrv.reg \
		${WRKSRC}/documentation/ttfserver \
		${PREFIX}/lib/wine/documentation
	${INSTALL_DATA} ${WRKSRC}/debugger/README \
		${PREFIX}/lib/wine/documentation/README.debugger
	${INSTALL_DATA} ${WRKSRC}/programs/regapi/README \
		${PREFIX}/lib/wine/documentation/README.regapi
	${INSTALL_SCRIPT} ${WRKSRC}/tools/bug_report.pl \
		${PREFIX}/lib/wine
	${INSTALL_SCRIPT} \
		${WRKSRC}/programs/regapi/regFixer.pl \
		${WRKSRC}/programs/regapi/regRestorer.pl \
		${PREFIX}/lib/wine/reg
	${INSTALL_DATA} ${FILESDIR}/README.patch \
		${FILESDIR}/patch-3.3-sys-ldtshare \
		${FILESDIR}/patch-3.3-sys-sigtrap \
		${FILESDIR}/patch-3.3-sys-fsgs \
		${PREFIX}/lib/wine
	${INSTALL_DATA} ${WRKSRC}/winedefault.reg ${PREFIX}/lib/wine
	${ECHO}
	@${SED} s+%%PREFIX%%+${PREFIX}+g <${PKGMESSAGE}

.include <bsd.port.mk>