svn commit: r500503 - in head/sysutils/uefi-edk2-qemu: . files

Rebecca Cran bcran at FreeBSD.org
Tue Apr 30 16:25:08 UTC 2019


Author: bcran (src committer)
Date: Tue Apr 30 16:25:03 2019
New Revision: 500503
URL: https://svnweb.freebsd.org/changeset/ports/500503

Log:
  sysutils/uefi-edk2-qemu: add new port
  
  Add a port for the QEMU build of OVMF
  
  Reviewed by:	mat, emaste, tsoome, araujo, manu
  Approved by:	portmgr (mat)
  Differential Revision:	https://reviews.freebsd.org/D19869

Added:
  head/sysutils/uefi-edk2-qemu/
  head/sysutils/uefi-edk2-qemu/Makefile   (contents, props changed)
  head/sysutils/uefi-edk2-qemu/distinfo   (contents, props changed)
  head/sysutils/uefi-edk2-qemu/files/
  head/sysutils/uefi-edk2-qemu/files/patch-CryptoPkg_Library_OpensslLib_openssl_crypto_uid.c   (contents, props changed)
  head/sysutils/uefi-edk2-qemu/pkg-descr   (contents, props changed)

Added: head/sysutils/uefi-edk2-qemu/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/uefi-edk2-qemu/Makefile	Tue Apr 30 16:25:03 2019	(r500503)
@@ -0,0 +1,90 @@
+# $FreeBSD$
+
+PORTNAME=	uefi-edk2-qemu
+DISTVERSION=	g20190307
+CATEGORIES=	sysutils
+
+MAINTAINER=	bcran at FreeBSD.org
+COMMENT=	UEFI-EDK2 firmware for QEMU
+
+LICENSE=	BSD2CLAUSE
+
+ONLY_FOR_ARCHS=	amd64
+
+BUILD_DEPENDS=	bash:shells/bash \
+		nasm:devel/nasm \
+		${PYTHON_PKGNAMEPREFIX}sqlite3>=2.7:databases/py-sqlite3@${PY_FLAVOR}
+
+FLAVORS=	x86_64 i386
+
+x86_64_PKGNAMESUFFIX=	-x86_64
+i386_PKGNAMESUFFIX=	-i386
+
+USES=		gmake \
+		python:2.7,build
+
+USE_GCC=	8+
+USE_GITHUB=	yes
+GH_ACCOUNT=	tianocore openssl:ssl
+GH_PROJECT=	edk2 openssl:ssl
+GH_TAGNAME=	edk2-stable201903 OpenSSL_1_1_0j:ssl
+GH_SUBDIR=	CryptoPkg/Library/OpensslLib/openssl:ssl
+
+PLIST_FILES=	share/uefi-edk2-qemu/QEMU_UEFI_CODE${PLIST_SUFFIX}-${PKGSUFFIX}.fd \
+		share/uefi-edk2-qemu/QEMU_UEFI_VARS${PLIST_SUFFIX}-${PKGSUFFIX}.fd
+
+MAKE_ARGS=	EXTRA_LDFLAGS=-static
+BUILD_ARGS=	-DDEBUG_ON_SERIAL_PORT=TRUE
+
+OPTIONS_DEFINE=	DEBUG HTTP_BOOT
+OPTIONS_DEFAULT=HTTP_BOOT
+
+DEBUG_DESC=	Build a debug configuration
+HTTP_BOOT_DESC=	Build with HTTP(S) boot support
+
+DEBUG_VARS=	uefi_target=DEBUG
+DEBUG_VARS_OFF=	uefi_target=RELEASE
+HTTP_BOOT_VARS=	build_args+=-DHTTP_BOOT_ENABLE=TRUE
+
+.if "${FLAVOR:U}" != i386
+EDK2ARCH=X64
+EDK2BLDDIR=X64
+PKGSUFFIX=x86_64
+.endif
+
+.if ${FLAVOR:U} == i386
+EDK2ARCH=IA32
+EDK2BLDDIR=Ia32
+PKGSUFFIX=i386
+.endif
+
+post-patch:
+	${MKDIR} ${BUILD_WRKSRC}/BaseTools/Bin/FreeBSD-${MACHINE};
+	${LN} -sf ${LOCALBASE}/bin/gcc${GCC_DEFAULT} ${BUILD_WRKSRC}/BaseTools/Bin/FreeBSD-${MACHINE}/gcc
+	${LN} -sf ${LOCALBASE}/bin/gcc${GCC_DEFAULT} ${BUILD_WRKSRC}/BaseTools/Bin/FreeBSD-${MACHINE}/cc
+	${LN} -sf ${LOCALBASE}/bin/g++${GCC_DEFAULT} ${BUILD_WRKSRC}/BaseTools/Bin/FreeBSD-${MACHINE}/g++
+	${LN} -sf ${LOCALBASE}/bin/ld ${BUILD_WRKSRC}/BaseTools/Bin/FreeBSD-${MACHINE}/ld
+	${LN} -sf ${LOCALBASE}/bin/gmake ${BUILD_WRKSRC}/BaseTools/Bin/FreeBSD-${MACHINE}/make
+	${LN} -sf ${LOCALBASE}/bin/gcc-ar${GCC_DEFAULT} ${BUILD_WRKSRC}/BaseTools/Bin/FreeBSD-${MACHINE}/gcc-ar
+	${LN} -sf ${LOCALBASE}/bin/gcc-nm${GCC_DEFAULT} ${BUILD_WRKSRC}/BaseTools/Bin/FreeBSD-${MACHINE}/gcc-nm
+	${LN} -sf ${LOCALBASE}/bin/objcopy ${BUILD_WRKSRC}/BaseTools/Bin/FreeBSD-${MACHINE}/objcopy
+	${LN} -sf ${LOCALBASE}/bin/python2.7 ${BUILD_WRKSRC}/BaseTools/Bin/FreeBSD-${MACHINE}/python
+	${LN} -sf ${LOCALBASE}/bin/nasm ${BUILD_WRKSRC}/BaseTools/Bin/FreeBSD-${MACHINE}/nasm
+
+do-build:
+	bash -c "cd ${WRKSRC}; . ./edksetup.sh; ${MAKE_CMD} -j4 ${MAKE_ARGS} -C ${WRKSRC}/BaseTools"
+	bash -c " \
+		cd ${BUILD_WRKSRC}; \
+		unset ARCH; unset MAKEFLAGS; \
+		. ./edksetup.sh; \
+		build -t GCC5 -a ${EDK2ARCH} -b ${UEFI_TARGET} -p OvmfPkg/OvmfPkg${EDK2ARCH}.dsc ${BUILD_ARGS} \
+	"
+
+do-install:
+	${MKDIR} ${STAGEDIR}${PREFIX}/share/uefi-edk2-qemu/
+	${INSTALL} ${BUILD_WRKSRC}/Build/Ovmf${EDK2BLDDIR}/${UEFI_TARGET}_GCC5/FV/OVMF_CODE.fd \
+		${STAGEDIR}${PREFIX}/share/uefi-edk2-qemu/QEMU_UEFI_CODE${PLIST_SUFFIX}-${PKGSUFFIX}.fd
+	${INSTALL} ${BUILD_WRKSRC}/Build/Ovmf${EDK2BLDDIR}/${UEFI_TARGET}_GCC5/FV/OVMF_VARS.fd \
+		${STAGEDIR}${PREFIX}/share/uefi-edk2-qemu/QEMU_UEFI_VARS${PLIST_SUFFIX}-${PKGSUFFIX}.fd
+
+.include <bsd.port.mk>

Added: head/sysutils/uefi-edk2-qemu/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/uefi-edk2-qemu/distinfo	Tue Apr 30 16:25:03 2019	(r500503)
@@ -0,0 +1,5 @@
+TIMESTAMP = 1554843803
+SHA256 (tianocore-edk2-g20190307-edk2-stable201903_GH0.tar.gz) = 4ec9bc5036c8c7daa1caa743c63df184ac18b119fdae8ad81f939921ba08c065
+SIZE (tianocore-edk2-g20190307-edk2-stable201903_GH0.tar.gz) = 34067318
+SHA256 (openssl-openssl-OpenSSL_1_1_0j_GH0.tar.gz) = 95f9d879e66f76711db28d8c2f24ab4e049ab7d5afb7266238a312c95bb9f338
+SIZE (openssl-openssl-OpenSSL_1_1_0j_GH0.tar.gz) = 5949610

Added: head/sysutils/uefi-edk2-qemu/files/patch-CryptoPkg_Library_OpensslLib_openssl_crypto_uid.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/uefi-edk2-qemu/files/patch-CryptoPkg_Library_OpensslLib_openssl_crypto_uid.c	Tue Apr 30 16:25:03 2019	(r500503)
@@ -0,0 +1,11 @@
+--- CryptoPkg/Library/OpensslLib/openssl/crypto/uid.c.orig	2019-03-20 05:39:21 UTC
++++ CryptoPkg/Library/OpensslLib/openssl/crypto/uid.c
+@@ -14,6 +14,8 @@
+ 
+ # include OPENSSL_UNISTD
+ 
++int issetugid(void);
++
+ int OPENSSL_issetugid(void)
+ {
+     return issetugid();

Added: head/sysutils/uefi-edk2-qemu/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/uefi-edk2-qemu/pkg-descr	Tue Apr 30 16:25:03 2019	(r500503)
@@ -0,0 +1,6 @@
+UEFI-EDK2 firmware for QEMU.
+This package contains the TianoCore EDK2 OVMF (Open Virtual Machine Firmware)
+configured to run under QEMU.
+OVMF provides UEFI firmware for virtual machines.
+
+WWW: https://github.com/tianocore/edk2


More information about the svn-ports-all mailing list