Index: emulators/qemu-sbruno/Makefile =================================================================== --- emulators/qemu-sbruno/Makefile (revision 379116) +++ emulators/qemu-sbruno/Makefile (working copy) @@ -3,6 +3,7 @@ PORTNAME= qemu PORTVERSION= 2.2.50.g20150215 +PORTREVISION= 1 CATEGORIES= emulators MASTER_SITES= GH GHC \ LOCAL/nox \ @@ -51,6 +52,13 @@ OPTIONS_DEFAULT=X11 GTK2 OPENGL GNUTLS SASL JPEG P CONFLICTS_INSTALL= qemu-[0-9]* qemu-devel-* .endif +.if defined(QEMU_USER_STATIC) +.if exists(/usr/sbin/binmiscctl) +USE_RC_SUBR= qemu_user_static +SUB_LIST= NAME=qemu_user_static +.endif +.endif + .include CONFIGURE_ARGS+= --localstatedir=/var Index: emulators/qemu-sbruno/files/qemu_user_static.in =================================================================== --- emulators/qemu-sbruno/files/qemu_user_static.in (revision 0) +++ emulators/qemu-sbruno/files/qemu_user_static.in (working copy) @@ -0,0 +1,109 @@ +#!/bin/sh +# +# $FreeBSD$ +# + +# PROVIDE: %%NAME%% +# REQUIRE: LOGIN +# KEYWORD: shutdown + +# Add the following lines to /etc/rc.conf to enable `%%NAME%%': +# +# %%NAME%%_enable="YES" +# + +. /etc/rc.subr + +name=%%NAME%% +rcvar=%%NAME%%_enable + +# read configuration and set defaults +load_rc_config "$name" + +: ${%%NAME%%_enable:="NO"} + +BINMISCCTL=/usr/sbin/binmiscctl +QEMU_DIR=%%PREFIX%%/bin +QEMU_PREFIX=qemu- +QEMU_SUFFIX=-static + +start_cmd=%%NAME%%_start +stop_cmd=%%NAME%%_stop +extra_commands=list +list_cmd="${BINMISCCTL} list" + +%%NAME%%_start() +{ + # register armv6 interpreter styled 'arm' + interpreter=${QEMU_DIR}/${QEMU_PREFIX}arm${QEMU_SUFFIX} + if [ -x "${interpreter}" ]; then + ${BINMISCCTL} add armv6 --interpreter "${interpreter}" \ + --magic "\x7f\x45\x4c\x46\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00" \ + --mask "\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff" \ + --size 20 --set-enabled + else + echo "$0: interpreter ${interpreter} not found, cannot register." + fi + # register mips interpreter styled 'mips' + interpreter=${QEMU_DIR}/${QEMU_PREFIX}mips${QEMU_SUFFIX} + if [ -x "${interpreter}" ]; then + ${BINMISCCTL} add mips --interpreter "${interpreter}" \ + --magic "\x7f\x45\x4c\x46\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08" \ + --mask "\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff" \ + --size 20 --set-enabled + else + echo "$0: interpreter ${interpreter} not found, cannot register." + fi + # register mips64 interpreter styled 'mips64' + interpreter=${QEMU_DIR}/${QEMU_PREFIX}mips64${QEMU_SUFFIX} + if [ -x "${interpreter}" ]; then + ${BINMISCCTL} add mips64 --interpreter "${interpreter}" \ + --magic "\x7f\x45\x4c\x46\x02\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x08" \ + --mask "\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff" \ + --size 20 --set-enabled + else + echo "$0: interpreter ${interpreter} not found, cannot register." + fi + # register powerpc interpreter styled 'ppc' + interpreter=${QEMU_DIR}/${QEMU_PREFIX}ppc${QEMU_SUFFIX} + if [ -x "${interpreter}" ]; then + ${BINMISCCTL} add powerpc --interpreter "${interpreter}" \ + --magic "\x7f\x45\x4c\x46\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x14" \ + --mask "\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff" \ + --size 20 --set-enabled + else + echo "$0: interpreter ${interpreter} not found, cannot register." + fi + # register powerpc64 interpreter styled 'ppc64' + interpreter=${QEMU_DIR}/${QEMU_PREFIX}ppc64${QEMU_SUFFIX} + if [ -x "${interpreter}" ]; then + ${BINMISCCTL} add powerpc64 --interpreter "${interpreter}" \ + --magic "\x7f\x45\x4c\x46\x01\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x15" \ + --mask "\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff" \ + --size 20 --set-enabled + else + echo "$0: interpreter ${interpreter} not found, cannot register." + fi + # register sparc64 interpreter styled 'sparc64' + interpreter=${QEMU_DIR}/${QEMU_PREFIX}sparc64${QEMU_SUFFIX} + if [ -x "${interpreter}" ]; then + ${BINMISCCTL} add sparc64 --interpreter "${interpreter}" \ + --magic "\x7f\x45\x4c\x46\x02\x02\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x2b" \ + --mask "\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff" \ + --size 20 --set-enabled + else + echo "$0: interpreter ${interpreter} not found, cannot register." + fi +} + +%%NAME%%_stop() +{ + ${BINMISCCTL} remove mips64 + ${BINMISCCTL} remove armv6 + ${BINMISCCTL} remove mips + ${BINMISCCTL} remove powerpc + ${BINMISCCTL} remove powerpc64 + ${BINMISCCTL} remove sparc64 +} + +run_rc_command "$1" Property changes on: emulators/qemu-sbruno/files/qemu_user_static.in ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: emulators/qemu-user-static/Makefile =================================================================== --- emulators/qemu-user-static/Makefile (revision 379042) +++ emulators/qemu-user-static/Makefile (working copy) @@ -18,7 +18,12 @@ post-install: @${RM} -r ${STAGEDIR}${PREFIX}/bin/qemu-img @${RM} -r ${STAGEDIR}${PREFIX}/bin/qemu-io @${RM} -r ${STAGEDIR}${PREFIX}/bin/qemu-nbd + @${MV} ${STAGEDIR}${PREFIX}/etc/rc.d ${WRKDIR} @${RM} -r ${STAGEDIR}${PREFIX}/etc +.if exists(/usr/sbin/binmiscctl) + @${MKDIR} ${STAGEDIR}${PREFIX}/etc + @${MV} ${WRKDIR}/rc.d ${STAGEDIR}${PREFIX}/etc +.endif @${RM} -r ${STAGEDIR}${PREFIX}/man @${RM} -r ${STAGEDIR}${DATADIR} @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/qemu-*