Index: head/sysutils/Makefile =================================================================== --- head/sysutils/Makefile +++ head/sysutils/Makefile @@ -1411,6 +1411,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: head/sysutils/uefi-edk2-bhyve-devel/Makefile =================================================================== --- head/sysutils/uefi-edk2-bhyve-devel/Makefile +++ head/sysutils/uefi-edk2-bhyve-devel/Makefile @@ -0,0 +1,79 @@ +# $FreeBSD$ + +PORTNAME= uefi-edk2-bhyve-devel +DISTVERSION= g20190424 +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 +USE_GCC= 8+ +USE_GITHUB= yes +GH_ACCOUNT= freebsd +GH_PROJECT= uefi-edk2 +GH_TAGNAME= 0613ec3 +GH_TUPLE= openssl:openssl:OpenSSL_1_1_0j:openssl/src/github.com/openssl/openssl + +PLIST_FILES= share/uefi-firmware/BHYVE_UEFI_CODE${PLIST_SUFFIX}-devel.fd \ + 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 + +BASH_CMD= ${LOCALBASE}/bin/bash + +MAKE_ARGS+= EXTRA_LDFLAGS=-static +MAKE_ARGS+= SHELL=${BASH_CMD} +MAKE_ENV+= PYTHON_COMMAND=${PYTHON_CMD} +BUILD_ARGS= -DDEBUG_ON_SERIAL_PORT=TRUE + +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 + ${SETENV} ${MAKE_ENV} ${BASH_CMD} -c "cd ${WRKSRC}; . ./edksetup.sh; ${MAKE_CMD} ${MAKE_ARGS} -C ${WRKSRC}/BaseTools" + ${SETENV} ${MAKE_ENV} ${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: head/sysutils/uefi-edk2-bhyve-devel/distinfo =================================================================== --- head/sysutils/uefi-edk2-bhyve-devel/distinfo +++ head/sysutils/uefi-edk2-bhyve-devel/distinfo @@ -0,0 +1,5 @@ +TIMESTAMP = 1556115530 +SHA256 (freebsd-uefi-edk2-g20190424-0613ec3_GH0.tar.gz) = fbdb9bedfcb2a05981e94027a2f29d1d16e89d923daad72e9437723ec9d1cbc0 +SIZE (freebsd-uefi-edk2-g20190424-0613ec3_GH0.tar.gz) = 34125617 +SHA256 (openssl-openssl-OpenSSL_1_1_0j_GH0.tar.gz) = 95f9d879e66f76711db28d8c2f24ab4e049ab7d5afb7266238a312c95bb9f338 +SIZE (openssl-openssl-OpenSSL_1_1_0j_GH0.tar.gz) = 5949610 Index: head/sysutils/uefi-edk2-bhyve-devel/files/patch-CryptoPkg_Library_OpensslLib_openssl_crypto_uid.c =================================================================== --- head/sysutils/uefi-edk2-bhyve-devel/files/patch-CryptoPkg_Library_OpensslLib_openssl_crypto_uid.c +++ head/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: head/sysutils/uefi-edk2-bhyve-devel/pkg-descr =================================================================== --- head/sysutils/uefi-edk2-bhyve-devel/pkg-descr +++ head/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