aboutsummaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
authorJuergen Lock <nox@FreeBSD.org>2014-05-19 17:12:58 +0000
committerJuergen Lock <nox@FreeBSD.org>2014-05-19 17:12:58 +0000
commit6f2df1132f5bd159a92bcc43868f34ef2bf737f3 (patch)
tree95ea12216bd65ade2efbd94bffaa686457c7c04a /emulators
parent3d3236b5e77ad35c7e2fa2998ef37479bdefdd43 (diff)
downloadports-6f2df1132f5bd159a92bcc43868f34ef2bf737f3.tar.gz
ports-6f2df1132f5bd159a92bcc43868f34ef2bf737f3.zip
Notes
Diffstat (limited to 'emulators')
-rw-r--r--emulators/Makefile1
-rw-r--r--emulators/qemu-devel/Makefile27
-rw-r--r--emulators/qemu-devel/pkg-plist216
-rw-r--r--emulators/qemu-user-static/Makefile27
-rw-r--r--emulators/qemu-user-static/pkg-descr23
5 files changed, 180 insertions, 114 deletions
diff --git a/emulators/Makefile b/emulators/Makefile
index e556d6ed9dc6..fb4062da696b 100644
--- a/emulators/Makefile
+++ b/emulators/Makefile
@@ -112,6 +112,7 @@
SUBDIR += qemu
SUBDIR += qemu-devel
SUBDIR += qemu-launcher
+ SUBDIR += qemu-user-static
SUBDIR += qmc2
SUBDIR += qtemu
SUBDIR += quasi88
diff --git a/emulators/qemu-devel/Makefile b/emulators/qemu-devel/Makefile
index 52c595696b9a..f0300695724b 100644
--- a/emulators/qemu-devel/Makefile
+++ b/emulators/qemu-devel/Makefile
@@ -7,12 +7,12 @@ PORTREVISION= 2
CATEGORIES= emulators
MASTER_SITES= http://wiki.qemu.org/download/:release \
LOCAL/nox:snapshot
-PKGNAMESUFFIX= -devel
+PKGNAMESUFFIX?= -devel
DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:release
DIST_SUBDIR= qemu/${PORTVERSION}
MAINTAINER= nox@FreeBSD.org
-COMMENT= QEMU CPU Emulator - development version
+COMMENT?= QEMU CPU Emulator - development version
HAS_CONFIGURE= yes
USES= gmake pkgconfig bison perl5 tar:bzip2
@@ -23,7 +23,6 @@ USE_GNOME+= glib20
PATCH_STRIP= -p1
MAKE_ENV+= BSD_MAKE="${MAKE}"
ONLY_FOR_ARCHS= amd64 i386 powerpc powerpc64 # XXX someone wants to debug sparc64 hosts?
-CONFLICTS_INSTALL= qemu-[0-9]*
OPTIONS_DEFINE= SAMBA X11 GTK2 OPENGL GNUTLS SASL JPEG PNG CURL \
CDROM_DMA PCAP USBREDIR GNS3 X86_TARGETS BSD_USER \
@@ -42,6 +41,10 @@ BSD_USER_DESC= Also build bsd-user targets (for testing)
STATIC_LINK_DESC= Statically link the executables
OPTIONS_DEFAULT=X11 GTK2 OPENGL GNUTLS SASL JPEG PNG CDROM_DMA CURL PCAP
+.if !defined(QEMU_USER_STATIC)
+CONFLICTS_INSTALL= qemu-[0-9]*
+.endif
+
.include <bsd.port.options.mk>
.if ${PORT_OPTIONS:MBSD_USER}
@@ -70,6 +73,13 @@ CONFIGURE_ARGS+= --extra-ldflags=-L${LOCALBASE}/lib
CONFIGURE_ARGS+= --disable-smartcard-nss --disable-libssh2
PORTDOCS= docs qemu-doc.html qemu-tech.html qmp-commands.txt
+.if defined(QEMU_USER_STATIC)
+.if ${ARCH} != "amd64"
+CONFIGURE_ARGS+= --target-list=i386-bsd-user,sparc-bsd-user,arm-bsd-user,mips-bsd-user,mipsel-bsd-user
+.else
+CONFIGURE_ARGS+= --target-list=i386-bsd-user,x86_64-bsd-user,sparc-bsd-user,sparc64-bsd-user,arm-bsd-user,mips-bsd-user,mipsel-bsd-user,mips64-bsd-user,mips64el-bsd-user
+.endif
+.else
.if ${PORT_OPTIONS:MX86_TARGETS}
.if ${PORT_OPTIONS:MBSD_USER}
.if ${ARCH} != "amd64"
@@ -89,6 +99,7 @@ CONFIGURE_ARGS+= --target-list=i386-softmmu,x86_64-softmmu,aarch64-softmmu,alpha
.endif
.endif
.endif
+.endif
.if empty(PORT_OPTIONS:MBSD_USER)
PLIST_SUB+= BSD_USER="@comment "
@@ -110,6 +121,14 @@ PLIST_SUB+= NONX86="@comment "
PLIST_SUB+= NONX86=""
.endif
+.if defined(QEMU_USER_STATIC)
+PLIST_SUB+= SOFTMMU="@comment "
+PLIST_SUB+= STATIC="-static"
+.else
+PLIST_SUB+= SOFTMMU=""
+PLIST_SUB+= STATIC=""
+.endif
+
.if ${PORT_OPTIONS:MGNS3}
EXTRA_PATCHES+= ${FILESDIR}/hw_e1000_c.patch
.endif
@@ -269,6 +288,7 @@ post-configure:
${WRKSRC}/config-host.mak
.endif
+.if !target(post-install)
post-install:
.if ${PORT_OPTIONS:MDOCS}
@(cd ${WRKSRC} && ${COPYTREE_SHARE} docs ${STAGEDIR}${DOCSDIR}/)
@@ -281,5 +301,6 @@ post-install:
@if [ ! -f ${PREFIX}/etc/qemu-ifdown ]; then \
${CP} -p ${STAGEDIR}${PREFIX}/etc/qemu-ifdown.sample ${STAGEDIR}${PREFIX}/etc/qemu-ifdown ; \
fi
+.endif
.include <bsd.port.mk>
diff --git a/emulators/qemu-devel/pkg-plist b/emulators/qemu-devel/pkg-plist
index b07846baa7b0..c08099762974 100644
--- a/emulators/qemu-devel/pkg-plist
+++ b/emulators/qemu-devel/pkg-plist
@@ -1,12 +1,12 @@
-bin/qemu-ga
-bin/qemu-img
-bin/qemu-io
-bin/qemu-nbd
+%%SOFTMMU%%bin/qemu-ga
+%%SOFTMMU%%bin/qemu-img
+%%SOFTMMU%%bin/qemu-io
+%%SOFTMMU%%bin/qemu-nbd
%%NONX86%%bin/qemu-system-aarch64
%%NONX86%%bin/qemu-system-alpha
%%NONX86%%bin/qemu-system-arm
%%NONX86%%bin/qemu-system-cris
-bin/qemu-system-i386
+%%SOFTMMU%%bin/qemu-system-i386
%%NONX86%%bin/qemu-system-lm32
%%NONX86%%bin/qemu-system-m68k
%%NONX86%%bin/qemu-system-microblaze
@@ -26,118 +26,112 @@ bin/qemu-system-i386
%%NONX86%%bin/qemu-system-sparc
%%NONX86%%bin/qemu-system-sparc64
%%NONX86%%bin/qemu-system-unicore32
-%%BSD_USER%%bin/qemu-arm
-%%BSD_USER%%bin/qemu-i386
-%%BSD_USER%%bin/qemu-mips
-%%BSD_USER64%%bin/qemu-mips64
-%%BSD_USER64%%bin/qemu-mips64el
-%%BSD_USER%%bin/qemu-mipsel
-%%BSD_USER%%bin/qemu-sparc
-%%BSD_USER64%%bin/qemu-sparc64
-%%BSD_USER64%%bin/qemu-x86_64
-bin/qemu-system-x86_64
+%%BSD_USER%%bin/qemu-arm%%STATIC%%
+%%BSD_USER%%bin/qemu-i386%%STATIC%%
+%%BSD_USER%%bin/qemu-mips%%STATIC%%
+%%BSD_USER64%%bin/qemu-mips64%%STATIC%%
+%%BSD_USER64%%bin/qemu-mips64el%%STATIC%%
+%%BSD_USER%%bin/qemu-mipsel%%STATIC%%
+%%BSD_USER%%bin/qemu-sparc%%STATIC%%
+%%BSD_USER64%%bin/qemu-sparc64%%STATIC%%
+%%BSD_USER64%%bin/qemu-x86_64%%STATIC%%
+%%SOFTMMU%%bin/qemu-system-x86_64
%%NONX86%%bin/qemu-system-xtensa
%%NONX86%%bin/qemu-system-xtensaeb
-man/man1/qemu.1.gz
-man/man1/qemu-img.1.gz
-man/man8/qemu-nbd.8.gz
-@unexec if cmp -s %D/etc/qemu-ifup.sample %D/etc/qemu-ifup; then rm -f %D/etc/qemu-ifup; fi
-etc/qemu-ifup.sample
-@exec if [ ! -f %D/etc/qemu-ifup ] ; then cp -p %D/%F %B/qemu-ifup; fi
-@unexec if cmp -s %D/etc/qemu-ifdown.sample %D/etc/qemu-ifdown; then rm -f %D/etc/qemu-ifdown; fi
-etc/qemu-ifdown.sample
-@exec if [ ! -f %D/etc/qemu-ifdown ] ; then cp -p %D/%F %B/qemu-ifdown; fi
-@unexec if cmp -s %D/etc/qemu/target-x86_64.conf.sample %D/etc/qemu/target-x86_64.conf; then rm -f %D/etc/qemu/target-x86_64.conf; fi
-etc/qemu/target-x86_64.conf.sample
-@exec if [ ! -f %D/etc/qemu/target-x86_64.conf ] ; then cp -p %D/%F %D/etc/qemu/target-x86_64.conf; fi
-@dirrmtry etc/qemu
-%%DATADIR%%/QEMU,tcx.bin
-%%DATADIR%%/QEMU,cgthree.bin
-%%DATADIR%%/acpi-dsdt.aml
-%%DATADIR%%/q35-acpi-dsdt.aml
-%%DATADIR%%/bios-256k.bin
-%%DATADIR%%/bios.bin
-%%DATADIR%%/efi-e1000.rom
-%%DATADIR%%/efi-eepro100.rom
-%%DATADIR%%/efi-ne2k_pci.rom
-%%DATADIR%%/efi-pcnet.rom
-%%DATADIR%%/efi-rtl8139.rom
-%%DATADIR%%/efi-virtio.rom
-%%DATADIR%%/s390-ccw.img
-%%DATADIR%%/vgabios.bin
-%%DATADIR%%/vgabios-cirrus.bin
-%%DATADIR%%/vgabios-qxl.bin
-%%DATADIR%%/vgabios-stdvga.bin
-%%DATADIR%%/vgabios-vmware.bin
-%%DATADIR%%/palcode-clipper
-%%DATADIR%%/ppc_rom.bin
-%%DATADIR%%/openbios-ppc
-%%DATADIR%%/openbios-sparc32
-%%DATADIR%%/openbios-sparc64
-%%DATADIR%%/pxe-e1000.rom
-%%DATADIR%%/pxe-eepro100.rom
-%%DATADIR%%/pxe-ne2k_pci.rom
-%%DATADIR%%/pxe-rtl8139.rom
-%%DATADIR%%/pxe-pcnet.rom
-%%DATADIR%%/pxe-virtio.rom
-%%DATADIR%%/petalogix-ml605.dtb
-%%DATADIR%%/spapr-rtas.bin
-%%DATADIR%%/slof.bin
-%%DATADIR%%/s390-zipl.rom
-%%DATADIR%%/linuxboot.bin
-%%DATADIR%%/multiboot.bin
-%%DATADIR%%/sgabios.bin
-%%DATADIR%%/petalogix-s3adsp1800.dtb
-%%DATADIR%%/bamboo.dtb
-%%DATADIR%%/kvmvapic.bin
-%%DATADIR%%/qemu-icon.bmp
-%%DATADIR%%/qemu_logo_no_text.svg
-%%DATADIR%%/keymaps/ar
-%%DATADIR%%/keymaps/bepo
-%%DATADIR%%/keymaps/common
-%%DATADIR%%/keymaps/cz
-%%DATADIR%%/keymaps/da
-%%DATADIR%%/keymaps/de
-%%DATADIR%%/keymaps/de-ch
-%%DATADIR%%/keymaps/en-gb
-%%DATADIR%%/keymaps/en-us
-%%DATADIR%%/keymaps/es
-%%DATADIR%%/keymaps/et
-%%DATADIR%%/keymaps/fi
-%%DATADIR%%/keymaps/fo
-%%DATADIR%%/keymaps/fr
-%%DATADIR%%/keymaps/fr-be
-%%DATADIR%%/keymaps/fr-ca
-%%DATADIR%%/keymaps/fr-ch
-%%DATADIR%%/keymaps/hr
-%%DATADIR%%/keymaps/hu
-%%DATADIR%%/keymaps/is
-%%DATADIR%%/keymaps/it
-%%DATADIR%%/keymaps/ja
-%%DATADIR%%/keymaps/lt
-%%DATADIR%%/keymaps/lv
-%%DATADIR%%/keymaps/mk
-%%DATADIR%%/keymaps/modifiers
-%%DATADIR%%/keymaps/nl
-%%DATADIR%%/keymaps/nl-be
-%%DATADIR%%/keymaps/no
-%%DATADIR%%/keymaps/pl
-%%DATADIR%%/keymaps/pt
-%%DATADIR%%/keymaps/pt-br
-%%DATADIR%%/keymaps/ru
-%%DATADIR%%/keymaps/sl
-%%DATADIR%%/keymaps/sv
-%%DATADIR%%/keymaps/th
-%%DATADIR%%/keymaps/tr
+%%SOFTMMU%%man/man1/qemu.1.gz
+%%SOFTMMU%%man/man1/qemu-img.1.gz
+%%SOFTMMU%%man/man8/qemu-nbd.8.gz
+%%SOFTMMU%%@sample etc/qemu-ifup.sample
+%%SOFTMMU%%@sample etc/qemu-ifdown.sample
+%%SOFTMMU%%@sample etc/qemu/target-x86_64.conf.sample
+%%SOFTMMU%%@dirrmtry etc/qemu
+%%SOFTMMU%%%%DATADIR%%/QEMU,tcx.bin
+%%SOFTMMU%%%%DATADIR%%/QEMU,cgthree.bin
+%%SOFTMMU%%%%DATADIR%%/acpi-dsdt.aml
+%%SOFTMMU%%%%DATADIR%%/q35-acpi-dsdt.aml
+%%SOFTMMU%%%%DATADIR%%/bios-256k.bin
+%%SOFTMMU%%%%DATADIR%%/bios.bin
+%%SOFTMMU%%%%DATADIR%%/efi-e1000.rom
+%%SOFTMMU%%%%DATADIR%%/efi-eepro100.rom
+%%SOFTMMU%%%%DATADIR%%/efi-ne2k_pci.rom
+%%SOFTMMU%%%%DATADIR%%/efi-pcnet.rom
+%%SOFTMMU%%%%DATADIR%%/efi-rtl8139.rom
+%%SOFTMMU%%%%DATADIR%%/efi-virtio.rom
+%%SOFTMMU%%%%DATADIR%%/s390-ccw.img
+%%SOFTMMU%%%%DATADIR%%/vgabios.bin
+%%SOFTMMU%%%%DATADIR%%/vgabios-cirrus.bin
+%%SOFTMMU%%%%DATADIR%%/vgabios-qxl.bin
+%%SOFTMMU%%%%DATADIR%%/vgabios-stdvga.bin
+%%SOFTMMU%%%%DATADIR%%/vgabios-vmware.bin
+%%SOFTMMU%%%%DATADIR%%/palcode-clipper
+%%SOFTMMU%%%%DATADIR%%/ppc_rom.bin
+%%SOFTMMU%%%%DATADIR%%/openbios-ppc
+%%SOFTMMU%%%%DATADIR%%/openbios-sparc32
+%%SOFTMMU%%%%DATADIR%%/openbios-sparc64
+%%SOFTMMU%%%%DATADIR%%/pxe-e1000.rom
+%%SOFTMMU%%%%DATADIR%%/pxe-eepro100.rom
+%%SOFTMMU%%%%DATADIR%%/pxe-ne2k_pci.rom
+%%SOFTMMU%%%%DATADIR%%/pxe-rtl8139.rom
+%%SOFTMMU%%%%DATADIR%%/pxe-pcnet.rom
+%%SOFTMMU%%%%DATADIR%%/pxe-virtio.rom
+%%SOFTMMU%%%%DATADIR%%/petalogix-ml605.dtb
+%%SOFTMMU%%%%DATADIR%%/spapr-rtas.bin
+%%SOFTMMU%%%%DATADIR%%/slof.bin
+%%SOFTMMU%%%%DATADIR%%/s390-zipl.rom
+%%SOFTMMU%%%%DATADIR%%/linuxboot.bin
+%%SOFTMMU%%%%DATADIR%%/multiboot.bin
+%%SOFTMMU%%%%DATADIR%%/sgabios.bin
+%%SOFTMMU%%%%DATADIR%%/petalogix-s3adsp1800.dtb
+%%SOFTMMU%%%%DATADIR%%/bamboo.dtb
+%%SOFTMMU%%%%DATADIR%%/kvmvapic.bin
+%%SOFTMMU%%%%DATADIR%%/qemu-icon.bmp
+%%SOFTMMU%%%%DATADIR%%/qemu_logo_no_text.svg
+%%SOFTMMU%%%%DATADIR%%/keymaps/ar
+%%SOFTMMU%%%%DATADIR%%/keymaps/bepo
+%%SOFTMMU%%%%DATADIR%%/keymaps/common
+%%SOFTMMU%%%%DATADIR%%/keymaps/cz
+%%SOFTMMU%%%%DATADIR%%/keymaps/da
+%%SOFTMMU%%%%DATADIR%%/keymaps/de
+%%SOFTMMU%%%%DATADIR%%/keymaps/de-ch
+%%SOFTMMU%%%%DATADIR%%/keymaps/en-gb
+%%SOFTMMU%%%%DATADIR%%/keymaps/en-us
+%%SOFTMMU%%%%DATADIR%%/keymaps/es
+%%SOFTMMU%%%%DATADIR%%/keymaps/et
+%%SOFTMMU%%%%DATADIR%%/keymaps/fi
+%%SOFTMMU%%%%DATADIR%%/keymaps/fo
+%%SOFTMMU%%%%DATADIR%%/keymaps/fr
+%%SOFTMMU%%%%DATADIR%%/keymaps/fr-be
+%%SOFTMMU%%%%DATADIR%%/keymaps/fr-ca
+%%SOFTMMU%%%%DATADIR%%/keymaps/fr-ch
+%%SOFTMMU%%%%DATADIR%%/keymaps/hr
+%%SOFTMMU%%%%DATADIR%%/keymaps/hu
+%%SOFTMMU%%%%DATADIR%%/keymaps/is
+%%SOFTMMU%%%%DATADIR%%/keymaps/it
+%%SOFTMMU%%%%DATADIR%%/keymaps/ja
+%%SOFTMMU%%%%DATADIR%%/keymaps/lt
+%%SOFTMMU%%%%DATADIR%%/keymaps/lv
+%%SOFTMMU%%%%DATADIR%%/keymaps/mk
+%%SOFTMMU%%%%DATADIR%%/keymaps/modifiers
+%%SOFTMMU%%%%DATADIR%%/keymaps/nl
+%%SOFTMMU%%%%DATADIR%%/keymaps/nl-be
+%%SOFTMMU%%%%DATADIR%%/keymaps/no
+%%SOFTMMU%%%%DATADIR%%/keymaps/pl
+%%SOFTMMU%%%%DATADIR%%/keymaps/pt
+%%SOFTMMU%%%%DATADIR%%/keymaps/pt-br
+%%SOFTMMU%%%%DATADIR%%/keymaps/ru
+%%SOFTMMU%%%%DATADIR%%/keymaps/sl
+%%SOFTMMU%%%%DATADIR%%/keymaps/sv
+%%SOFTMMU%%%%DATADIR%%/keymaps/th
+%%SOFTMMU%%%%DATADIR%%/keymaps/tr
%%GTK2%%share/locale/de_DE/LC_MESSAGES/qemu.mo
%%GTK2%%share/locale/fr_FR/LC_MESSAGES/qemu.mo
%%GTK2%%share/locale/it/LC_MESSAGES/qemu.mo
%%GTK2%%share/locale/hu/LC_MESSAGES/qemu.mo
%%GTK2%%share/locale/tr/LC_MESSAGES/qemu.mo
-@dirrm %%DATADIR%%/keymaps
+%%SOFTMMU%%@dirrm %%DATADIR%%/keymaps
%%GTK2%%@dirrmtry share/locale/de_DE/LC_MESSAGES
%%GTK2%%@dirrmtry share/locale/de_DE
-@dirrmtry %%DATADIR%%
-@exec mkdir -p %D/var/run
-@dirrmtry var/run
-@dirrmtry var
+%%SOFTMMU%%@dirrmtry %%DATADIR%%
+%%SOFTMMU%%@exec mkdir -p %D/var/run
+%%SOFTMMU%%@dirrmtry var/run
+%%SOFTMMU%%@dirrmtry var
diff --git a/emulators/qemu-user-static/Makefile b/emulators/qemu-user-static/Makefile
new file mode 100644
index 000000000000..d04ab4aff218
--- /dev/null
+++ b/emulators/qemu-user-static/Makefile
@@ -0,0 +1,27 @@
+# Created by: nox@FreeBSD.org
+# $FreeBSD$
+
+MAINTAINER= nox@FreeBSD.org
+COMMENT= QEMU CPU Emulator development version - static bsd-user targets
+PKGNAMESUFFIX= -user-static
+
+QEMU_USER_STATIC= yes
+PKGMESSAGE= /dev/null
+DESCR= ${.CURDIR}/pkg-descr
+OPTIONS_SLAVE= STATIC_LINK BSD_USER X86_TARGETS
+OPTIONS_EXCLUDE=SAMBA X11 GTK2 OPENGL GNUTLS SASL JPEG PNG CURL \
+ CDROM_DMA PCAP USBREDIR GNS3 DOCS
+MASTERDIR= ${.CURDIR}/../qemu-devel
+
+post-install:
+ @${RM} -r ${STAGEDIR}${PREFIX}/bin/qemu-ga
+ @${RM} -r ${STAGEDIR}${PREFIX}/bin/qemu-img
+ @${RM} -r ${STAGEDIR}${PREFIX}/bin/qemu-io
+ @${RM} -r ${STAGEDIR}${PREFIX}/bin/qemu-nbd
+ @${RM} -r ${STAGEDIR}${PREFIX}/etc
+ @${RM} -r ${STAGEDIR}${PREFIX}/man
+ @${RM} -r ${STAGEDIR}${DATADIR}
+ @(cd ${STAGEDIR}${PREFIX}/bin && \
+ for i in qemu-*; do ${MV} -i $$i $$i-static; done)
+
+.include "${MASTERDIR}/Makefile"
diff --git a/emulators/qemu-user-static/pkg-descr b/emulators/qemu-user-static/pkg-descr
new file mode 100644
index 000000000000..ecfa60cb90ee
--- /dev/null
+++ b/emulators/qemu-user-static/pkg-descr
@@ -0,0 +1,23 @@
+QEMU is a FAST! processor emulator using dynamic translation to achieve
+good emulation speed.
+QEMU has two operating modes:
+
+ * Full system emulation. In this mode, QEMU emulates a full system
+(for example a PC), including a processor and various peripherials.
+It can be used to launch different Operating Systems without rebooting
+the PC or to debug system code.
+ * User mode emulation (Linux host only). In this mode, QEMU can launch
+Linux processes compiled for one CPU on another CPU. It can be used to
+launch the Wine Windows API emulator or to ease cross-compilation and
+cross-debugging.
+
+As QEMU requires no host kernel patches to run, it is very safe and easy to use.
+
+This is a slave port of emulators/qemu-devel to build only static
+bsd-user targets named like qemu-mips-static. While still being
+experimental people have already built quite a few armv6/mips/mips64
+packages using these and e.g. poudriere. Some notes are also here:
+
+ http://wiki.freebsd.org/QemuUserModeHowTo
+
+WWW: http://wiki.qemu.org/Main_Page