Index: sysutils/Makefile =================================================================== --- sysutils/Makefile +++ sysutils/Makefile @@ -1410,6 +1410,7 @@ SUBDIR += udfclient SUBDIR += uefi-edk2-bhyve SUBDIR += uefi-edk2-bhyve-csm + SUBDIR += uefi-edk2-bhyve-devel SUBDIR += ufs_copy SUBDIR += uhidd SUBDIR += uif2iso Index: sysutils/uefi-edk2-bhyve-devel/Makefile =================================================================== --- /dev/null +++ sysutils/uefi-edk2-bhyve-devel/Makefile @@ -0,0 +1,82 @@ +# $FreeBSD$ + +PORTNAME= uefi-edk2-bhyve-devel +DISTVERSIONPREFIX= v +DISTVERSION= g20190401 +CATEGORIES= sysutils + +MAINTAINER= araujo@FreeBSD.org +COMMENT= UEFI-EDK2 firmware for bhyve + +LICENSE= BSD2CLAUSE + +ONLY_FOR_ARCHS= amd64 + +BUILD_DEPENDS= ${BASH_CMD}:shells/bash \ + nasm:devel/nasm \ + ${PYTHON_LIBDIR}/lib-dynload/_sqlite3.so:databases/py-sqlite3@${PY_FLAVOR} + +USES= gmake \ + python:2.7,build \ + shebangfix +USE_GCC= 8+ +USE_GITHUB= yes +GH_ACCOUNT= freebsd +GH_PROJECT= uefi-edk2 +GH_TAGNAME= 4c7c2a5 +GH_TUPLE= openssl:openssl:OpenSSL_1_1_0j:openssl/src/github.com/openssl/openssl + +PLIST_FILES= ${PREFIX}/share/uefi-firmware/BHYVE_UEFI_CODE${PLIST_SUFFIX}-devel.fd \ + ${PREFIX}/share/uefi-firmware/BHYVE_UEFI_VARS${PLIST_SUFFIX}-devel.fd + +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 + +MAKE_ARGS+= EXTRA_LDFLAGS=-static + +BASH_CMD= ${LOCALBASE}/bin/bash + +BUILD_ARGS= -DDEBUG_ON_SERIAL_PORT=TRUE + +.include + +post-extract: + @${RMDIR} ${WRKSRC}/CryptoPkg/Library/OpensslLib/openssl + @${MV} ${WRKSRC}/src/github.com/openssl/openssl \ + ${WRKSRC}/CryptoPkg/Library/OpensslLib/openssl +do-build: + ${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/nasm ${BUILD_WRKSRC}/BaseTools/Bin/FreeBSD-${MACHINE}/nasm + unset ARCH; unset MAKEFLAGS + ${BASH_CMD} -c "cd ${WRKSRC}; . ./edksetup.sh; ${MAKE_CMD} ${MAKE_ARGS} -C ${WRKSRC}/BaseTools" + ${BASH_CMD} -c " \ + cd ${BUILD_WRKSRC}; \ + unset ARCH; unset MAKEFLAGS; \ + . ./edksetup.sh; \ + build -t GCC5 -a X64 -b ${UEFI_TARGET} -p OvmfPkg/OvmfPkgX64.dsc ${BUILD_ARGS} \ + " + +do-install: + ${MKDIR} ${STAGEDIR}${PREFIX}/share/uefi-firmware/ + ${INSTALL} ${BUILD_WRKSRC}/Build/OvmfX64/${UEFI_TARGET}_GCC5/FV/OVMF_CODE.fd \ + ${STAGEDIR}${PREFIX}/share/uefi-firmware/BHYVE_UEFI_CODE${PLIST_SUFFIX}-devel.fd + ${INSTALL} ${BUILD_WRKSRC}/Build/OvmfX64/${UEFI_TARGET}_GCC5/FV/OVMF_VARS.fd \ + ${STAGEDIR}${PREFIX}/share/uefi-firmware/BHYVE_UEFI_VARS${PLIST_SUFFIX}-devel.fd + +.include +RUN_DEPENDS:= ${RUN_DEPENDS:Ngcc*} Index: sysutils/uefi-edk2-bhyve-devel/distinfo =================================================================== --- /dev/null +++ sysutils/uefi-edk2-bhyve-devel/distinfo @@ -0,0 +1,5 @@ +TIMESTAMP = 1555235811 +SHA256 (freebsd-uefi-edk2-vg20190401-4c7c2a5_GH0.tar.gz) = 06733b4dc82848c4238456ba5d55696dd02d29d1110f9418280a518f93e7fd26 +SIZE (freebsd-uefi-edk2-vg20190401-4c7c2a5_GH0.tar.gz) = 34123855 +SHA256 (openssl-openssl-OpenSSL_1_1_0j_GH0.tar.gz) = 95f9d879e66f76711db28d8c2f24ab4e049ab7d5afb7266238a312c95bb9f338 +SIZE (openssl-openssl-OpenSSL_1_1_0j_GH0.tar.gz) = 5949610 Index: sysutils/uefi-edk2-bhyve-devel/files/patch-CryptoPkg_Library_OpensslLib_openssl_crypto_uid.c =================================================================== --- /dev/null +++ sysutils/uefi-edk2-bhyve-devel/files/patch-CryptoPkg_Library_OpensslLib_openssl_crypto_uid.c @@ -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(); Index: sysutils/uefi-edk2-bhyve-devel/pkg-descr =================================================================== --- /dev/null +++ sysutils/uefi-edk2-bhyve-devel/pkg-descr @@ -0,0 +1,3 @@ +UEFI-EDK2 firmware for bhyve. + +WWW: https://github.com/freebsd/uefi-edk2/tree/bhyve/edk2-stable201903