qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Super Bisquit <superbisquit@gmail.com>
To: Blue Swirl <blauwirbel@gmail.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Question on qemu build environment.
Date: Tue, 26 Apr 2011 21:48:17 -0400	[thread overview]
Message-ID: <BANLkTimzS6dbTgZCHMj2XOviHjV0tMo12Q@mail.gmail.com> (raw)
In-Reply-To: <BANLkTi=kDq+ZGo_BtQjnUN5ndnmmhWNuow@mail.gmail.com>


[-- Attachment #1.1: Type: text/plain, Size: 1079 bytes --]

Those are the current settings. I can run ./configure or vi the file to add
the sparc cpu value. I've installed extra sdl bindings/parts.addons from
ports.


I've enabled gnutls and pcap. Bsd user doesn't work currently for sparc64.
I had sent the files earlier. These contain patches from nox (Juergen Lock)
made a patch which helped the port to build.
I've added WITH_DEBUG=yes to the /etc/make.conf. Something tells me now that
it may be out of context. Probably should be a cflag.

On Tue, Apr 26, 2011 at 2:11 PM, Blue Swirl <blauwirbel@gmail.com> wrote:

> On Tue, Apr 26, 2011 at 4:23 PM, Super Bisquit <superbisquit@gmail.com>
> wrote:
> > I have noticed that qemu does not fully function on FreeBSD sparc64.
> > Besides nox@freebsd.org and myself, has anyone tried building and
> > running qemu under FreeBSD sparc64?
>
> I think you are the first to report. On OpenBSD/Sparc64 I could run
> qemu-system-sparc with the test image and get a command prompt (it
> seems to be broken now), but i386 emulator (or Sparc64 TCG target) has
> problems with unaligned accesses.
>

[-- Attachment #1.2: Type: text/html, Size: 1536 bytes --]

[-- Attachment #2: Makefile --]
[-- Type: application/octet-stream, Size: 4886 bytes --]

# New ports collection makefile for:	qemu
# Date created:			2004/05/31
# Whom:				Juergen Lock <nox@jelal.kn-bremen.de>
#
# $FreeBSD: ports/emulators/qemu-devel/Makefile,v 1.119 2011/04/01 19:30:20 nox Exp $
#

PORTNAME=	qemu
PORTVERSION=	0.14.0
CATEGORIES=	emulators
MASTER_SITES=	SAVANNAH:release \
		LOCAL:snapshot
MASTER_SITE_SUBDIR=	qemu/:release nox/:snapshot
PKGNAMESUFFIX=	-devel
DISTFILES=	${DISTNAME}${EXTRACT_SUFX}:release
DIST_SUBDIR=	qemu

MAINTAINER=	nox@FreeBSD.org
COMMENT=	QEMU CPU Emulator - development version

HAS_CONFIGURE=	yes
USE_GMAKE=	yes
USE_PERL5_BUILD=	yes
PATCH_STRIP=	-p1
MAKE_ENV+=	BSD_MAKE="${MAKE}" LDFLAGS="${LDFLAGS}"
MAN1=		qemu.1 qemu-img.1
MAN8=		qemu-nbd.8
ONLY_FOR_ARCHS=	amd64 i386 powerpc sparc64
CONFLICTS_INSTALL=	qemu-[0-9]*
MAKE_JOBS_SAFE=	yes

OPTIONS=	SAMBA "samba dependency (for -smb)" Off \
		SDL "SDL/X dependency (graphical output)" On \
		GNUTLS "gnutls dependency (vnc encryption)" On \
		CURL "libcurl dependency (remote images)" On \
		PCAP "pcap dependency (networking with bpf)" On \
		CDROM_DMA "IDE CDROM DMA" On \
		ADD_AUDIO "Emulate more audio hardware (experimental!)" Off \
		ALL_TARGETS "Also build bsd-user targets (for testing)" Off

.include <bsd.port.pre.mk>

.if defined(WITHOUT_ALL_TARGETS)
CONFIGURE_ARGS+=	--disable-bsd-user
PLIST_SUB+=	ALLTARGETS="@comment "
.else
PLIST_SUB+=	ALLTARGETS=""
.if ${ARCH} == "sparc64"
IGNORE=		bsd-user targets not tested on sparc64
.endif
.endif

WITHOUT_CPU_CFLAGS=yes	#to avoid problems with register allocation
CFLAGS:=	${CFLAGS:C/-fno-tree-vrp//}
CONFIGURE_ARGS+=	--prefix=${PREFIX} --cc=${CC} --enable-docs \
	--disable-linux-user --disable-linux-aio \
        --disable-bsd-user \
	--disable-darwin-user --disable-kvm --disable-xen \
	--extra-cflags=-DSMBD_COMMAND=\\\"${LOCALBASE}/sbin/smbd\\\"\ -I${WRKSRC}\ -I${LOCALBASE}/include\ -DPREFIX=\\\"${PREFIX}\\\"

.if defined(WITHOUT_SDL)
CONFIGURE_ARGS+=	--disable-sdl
.else
USE_SDL=	sdl
.endif

.if defined(WITHOUT_GNUTLS)
CONFIGURE_ARGS+=	--disable-vnc-tls
.else
LIB_DEPENDS+=	gnutls:${PORTSDIR}/security/gnutls
.endif

.if defined(WITHOUT_CURL)
CONFIGURE_ARGS+=	--disable-curl
.else
LIB_DEPENDS+=	curl:${PORTSDIR}/ftp/curl
.endif

.if defined(WITH_PCAP)
CONFIGURE_ARGS+=	--enable-pcap
.endif

.if defined(WITH_ADD_AUDIO)
CONFIGURE_ARGS+=	--audio-card-list=ac97,es1370,sb16,cs4231a,adlib,gus,hda
.endif

.if defined(WITH_SAMBA)
RUN_DEPENDS+=	${LOCALBASE}/sbin/smbd:${PORTSDIR}/net/samba34
.endif

.if defined(NOPORTDOCS)
MAKE_ARGS+=	NOPORTDOCS=${NOPORTDOCS}
.else
BUILD_DEPENDS+=	texi2html:${PORTSDIR}/textproc/texi2html
.endif

.if ${ARCH} == "amd64"
MAKE_ARGS+=	ARCH=x86_64
.endif

.if ${ARCH} == "powerpc"
MAKE_ARGS+=	ARCH=ppc
.endif

.if ${ARCH} == "sparc64"
CONFIGURE_ARGS+= --sparc_cpu=v9
.endif

.if ${OSVERSION} < 900033 && ${ARCH} == "amd64"
BUILD_DEPENDS+=	${LOCALBASE}/bin/as:${PORTSDIR}/devel/binutils
CONFIGURE_ENV+=	COMPILER_PATH=${LOCALBASE}/bin
MAKE_ENV+=	COMPILER_PATH=${LOCALBASE}/bin
.endif

pre-patch:
	@for A in ${ONLY_FOR_ARCHS}; do \
		${MKDIR} ${WRKSRC}/bsd/$$A; \
	done

post-patch:
.if (${ARCH} == "powerpc" || ${ARCH} == "sparc64")
.if ${OSVERSION} < 800030
# These OSVERSION don't have all the needed long double fns in their
# libc so just disable 80 bit floats completely.
	@cd ${WRKSRC} && ${PATCH} --quiet -R ${PATCH_STRIP} < ${FILESDIR}/patch-libmath_FreeBSD-version
	@cd ${WRKSRC} && ${PATCH} --quiet -R ${PATCH_STRIP} < ${FILESDIR}/patch-fbsd
.else
# ...else we only need to disable the libmath build. (since its
# x86-specific.)
	@cd ${WRKSRC} && ${PATCH} --quiet < ${FILESDIR}/revert-fbsd-libmath-patch
.endif
.endif

.if defined(WITH_PCAP)
	@cd ${WRKSRC} && ${PATCH} --quiet < ${FILESDIR}/pcap-patch
.endif
.if defined(WITHOUT_CDROM_DMA)
	@cd ${WRKSRC} && ${PATCH} --quiet < ${FILESDIR}/cdrom-dma-patch
.endif
	@${REINPLACE_CMD} -E \
		-e "s|^(CFLAGS=).*|\1${CFLAGS} -fno-strict-aliasing|" \
		-e "s|^(LDFLAGS=).*|\1${LDFLAGS}|" \
		${WRKSRC}/Makefile.target
	@${REINPLACE_CMD} -E \
		-e "s|^(CFLAGS=).*|\1${CFLAGS} -fno-strict-aliasing -I.|" \
		-e "s|^(LDFLAGS=).*|\1${LDFLAGS}|" \
		${WRKSRC}/Makefile
	@${REINPLACE_CMD} -E \
		-e "1s|^(#! )/usr/bin/perl|\1${PERL}|" \
		${WRKSRC}/scripts/texi2pod.pl

.if ${OSVERSION} >= 800091
# XXX need to disable usb host code on head while it's not ported to the
# new usb stack yet
post-configure:
	@${REINPLACE_CMD} -E \
		-e "s|^(HOST_USB=)bsd|\1stub|" \
		${WRKSRC}/config-host.mak
.endif

post-install:
	@${INSTALL_SCRIPT} ${FILESDIR}/qemu-ifup.sample ${PREFIX}/etc
	@${INSTALL_SCRIPT} ${FILESDIR}/qemu-ifdown.sample ${PREFIX}/etc
	@if [ ! -f ${PREFIX}/etc/qemu-ifup ]; then \
	    ${CP} -p ${PREFIX}/etc/qemu-ifup.sample ${PREFIX}/etc/qemu-ifup ; \
	fi
	@if [ ! -f ${PREFIX}/etc/qemu-ifdown ]; then \
	    ${CP} -p ${PREFIX}/etc/qemu-ifdown.sample ${PREFIX}/etc/qemu-ifdown ; \
	fi
	@${CAT} ${PKGMESSAGE}

.include <bsd.port.post.mk>

  reply	other threads:[~2011-04-27  1:48 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-26 13:23 [Qemu-devel] Question on qemu build environment Super Bisquit
2011-04-26 18:11 ` Blue Swirl
2011-04-27  1:48   ` Super Bisquit [this message]
2011-04-27 16:32     ` Super Bisquit

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=BANLkTimzS6dbTgZCHMj2XOviHjV0tMo12Q@mail.gmail.com \
    --to=superbisquit@gmail.com \
    --cc=blauwirbel@gmail.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).