blob: 8ddb14ead74c5ca9b9d3b92100d89d5f026a5741 (
plain)
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
|
# $NetBSD: Makefile,v 1.107 2013/03/29 15:26:26 tsutsui Exp $
DISTNAME= qemu-1.3.1
CATEGORIES= emulators
MASTER_SITES= http://wiki.qemu.org/download/
EXTRACT_SUFX= .tar.bz2
MAINTAINER= pkgsrc-users@NetBSD.org
HOMEPAGE= http://www.qemu.org/
COMMENT= CPU emulator using dynamic translation
LICENSE= gnu-gpl-v2 AND gnu-lgpl-v2.1 AND mit AND modified-bsd
CONFLICTS+= qemu-bin-[0-9]*
NOT_FOR_PLATFORM= NetBSD-1.[0-6]*-*
# qemu 1 does not work on NetBSD-5; see http://gnats.netbsd.org/46565.
# As a workaround, use emulators/qemu0.
NOT_FOR_PLATFORM= NetBSD-5*-*
USE_TOOLS+= gmake makeinfo perl:build pkg-config
UNLIMIT_RESOURCES= datasize
HAS_CONFIGURE= yes
BUILD_DEPENDS+= texi2html-[0-9]*:../../textproc/texi2html
.include "options.mk"
.include "../../mk/bsd.prefs.mk"
CONFIGURE_ENV+= mansuffix=/${PKGMANDIR}
CONFIGURE_ARGS+= --prefix=${PREFIX}
CONFIGURE_ARGS+= --interp-prefix=${PREFIX}/share/qemu
CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}
CONFIGURE_ARGS+= --python=${PYTHONBIN}
CONFIGURE_ARGS+= --smbd=${PREFIX}/sbin/smbd
CONFIGURE_ARGS+= --mandir=${PREFIX}/${PKGMANDIR}
CONF_FILES= ${EGDIR}/target-x86_64.conf \
${PKG_SYSCONFDIR}/target-x86_64.conf
EGDIR= ${PREFIX}/share/examples/qemu
INSTALL_MAKE_FLAGS= egdir=${EGDIR}
PKG_SYSCONFSUBDIR= qemu
# Avoid clash with system include file:
pre-patch:
mv ${WRKSRC}/audio/audio.h ${WRKSRC}/audio/qaudio.h
SUBST_CLASSES+= qaudio
SUBST_STAGE.qaudio= pre-configure
SUBST_FILES.qaudio= arch_init.c monitor.c savevm.c vl.c \
audio/*.c \
hw/ac97.c \
hw/adlib.c \
hw/cs4231a.c \
hw/es1370.c \
hw/gus.c \
hw/hda-audio.c \
hw/lm4549.c \
hw/lm4549.h \
hw/marvell_88w8618_audio.c \
hw/milkymist-ac97.c \
hw/mips_fulong2e.c \
hw/mips_jazz.c \
hw/mips_malta.c \
hw/omap2.c \
hw/palm.c \
hw/pcspk.c \
hw/sb16.c \
hw/spitz.c \
hw/tsc210x.c \
hw/usb/dev-audio.c \
hw/wm8750.c \
hw/z2.c \
ui/vnc.h
SUBST_SED.qaudio= -e s,audio.h\",qaudio.h\",g
SUBST_MESSAGE.qaudio= Fixing audio.h confusion
REPLACE_PERL+= scripts/texi2pod.pl
BUILDLINK_PASSTHRU_DIRS+= /usr/lib
BUILDLINK_PASSTHRU_RPATHDIRS+= /usr/lib
INSTALLATION_DIRS= ${PKGMANDIR}/man1 share/doc/qemu
UE_ARCHS+= alpha arm armeb cris i386 m68k microblaze mips mipsel
UE_ARCHS+= or32 ppc ppc64 ppc64abi32 sh4 sh4eb sparc sparc32plus
UE_ARCHS+= sparc64 x86_64 microblazeel s390x unicore32
.if ${OPSYS} == "NetBSD"
. if (!empty(OS_VERSION:M5.99.*) || !empty(OS_VERSION:M[6-9].*))
# XXX
# i386 and x86_64 user emul require newer binutils for PROVIDE_HIDDEN()
# http://git.qemu.org/qemu.git/commit/?id=845f2c2812d9ed24b36c02a3d06ee83aeafe8b49
# but binutils-2.19 was enabled around 5.99.22:
# http://cvsweb.NetBSD.org/bsdweb.cgi/src/share/mk/bsd.own.mk#rev1.594
USER_EMUL= i386 x86_64 sparc sparc64
. else
CONFIGURE_ARGS+= --disable-bsd-user
USER_EMUL=
. endif
PLIST.nbd= YES
.elif !empty(OPSYS:M*BSD) || !empty(OPSYS:MDragonFly)
USER_EMUL= i386 x86_64 sparc sparc64
PLIST.nbd= YES
.elif !empty(OPSYS:MDarwin)
USER_EMUL=
CONFIGURE_ARGS+= --disable-bsd-user
PLIST.nbd= YES
.elif !empty(OPSYS:MLinux)
USER_EMUL= ${UE_ARCHS}
PLIST.nbd= YES
.endif
PLIST_VARS+= ${UE_ARCHS} nbd
.for _var_ in ${USER_EMUL}
PLIST.${_var_}= YES
.endfor
post-install:
${INSTALL_DATA} ${FILESDIR}/Makefile.multinode-NetBSD \
${DESTDIR}${PREFIX}/share/doc/qemu/
# On Darwin, qemu uses Cocoa and CoreAudio
.if empty(OPSYS:MDarwin)
.include "../../mk/oss.buildlink3.mk"
.endif
.include "../../devel/glib2/buildlink3.mk"
.include "../../devel/zlib/buildlink3.mk"
.include "../../lang/python/extension.mk"
.include "../../x11/pixman/buildlink3.mk"
.include "../../mk/curses.buildlink3.mk"
.include "../../mk/pthread.buildlink3.mk"
.include "../../mk/bsd.pkg.mk"
|