From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id CD5B9AC0B3C for ; Wed, 7 Feb 2024 03:41:22 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=Pims1smXg/mWs8LgXFwUSSD5U7SGvyoQ1/EfR8c45L8=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20140610; t=1707277281; v=1; b=XM0vwb9DmvOoNgSAhCqdMvTuwOvd8hjmL52HvVKN6IP3pkYDbtObtn3L1fdFk/E0L2tFUdQO P+h86KMZxY8yJWJIUpDMmoEVd3jWOcEs7TVsKTzJTJMhCLBjCBqIR6GroKChMnPiAmQ+wJGZRvQ 7NeuLEeebv58lJQh3KCOtOjQ= X-Received: by 127.0.0.2 with SMTP id kAxtYY7687511xPdOn9vPbr9; Tue, 06 Feb 2024 19:41:21 -0800 X-Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.12]) by mx.groups.io with SMTP id smtpd.web10.13160.1707277278891658966 for ; Tue, 06 Feb 2024 19:41:19 -0800 X-IronPort-AV: E=McAfee;i="6600,9927,10976"; a="12258664" X-IronPort-AV: E=Sophos;i="6.05,250,1701158400"; d="scan'208";a="12258664" X-Received: from orviesa008.jf.intel.com ([10.64.159.148]) by orvoesa104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Feb 2024 19:41:18 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.05,250,1701158400"; d="scan'208";a="1568986" X-Received: from mdkinney-mobl.amr.corp.intel.com ([10.209.93.91]) by orviesa008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 Feb 2024 19:41:19 -0800 From: "Michael D Kinney" To: devel@edk2.groups.io Cc: Michael Kubacki , Sean Brogan Subject: [edk2-devel] [edk2-stable202402][Patch 3/7] UnitTestFrameworkPkg: Expand host-based exception handling and gcov Date: Tue, 6 Feb 2024 19:41:02 -0800 Message-Id: <20240207034106.1860-4-michael.d.kinney@intel.com> In-Reply-To: <20240207034106.1860-1-michael.d.kinney@intel.com> References: <20240207034106.1860-1-michael.d.kinney@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Reply-To: devel@edk2.groups.io,michael.d.kinney@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: Qt0iQ0AwxhBB1knbK38EwqXox7686176AA= Content-Transfer-Encoding: 8bit X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20140610 header.b=XM0vwb9D; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io Update MSFT CC_FLAGS for host-based unit tests to use /EHs instead of /EHsc to support building C functions with SEH (Structured Exception Handling) enabled. This is required to build UnitTestDebugAssertLibHost.inf. Update GCC CC_FLAGS for host-based unit tests to use -fexceptions to support catching exceptions. Update GCC CC_FLAGS to add --coverage for host-based builds for all GCC toolchains. Cc: Michael Kubacki Cc: Sean Brogan Signed-off-by: Michael D Kinney --- .../Library/GoogleTestLib/GoogleTestLib.inf | 4 ++-- UnitTestFrameworkPkg/UnitTestFrameworkPkg.ci.yaml | 2 ++ UnitTestFrameworkPkg/UnitTestFrameworkPkgHost.dsc.inc | 7 ++++--- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/UnitTestFrameworkPkg/Library/GoogleTestLib/GoogleTestLib.inf b/UnitTestFrameworkPkg/Library/GoogleTestLib/GoogleTestLib.inf index bdab98a54f0e..0c522832e9d8 100644 --- a/UnitTestFrameworkPkg/Library/GoogleTestLib/GoogleTestLib.inf +++ b/UnitTestFrameworkPkg/Library/GoogleTestLib/GoogleTestLib.inf @@ -29,5 +29,5 @@ [Packages] [BuildOptions] MSFT:*_*_*_CC_FLAGS == /c /EHs /Zi /Od /MT - GCC:*_*_IA32_CC_FLAGS == -g -c -fshort-wchar -O0 -m32 - GCC:*_*_X64_CC_FLAGS == -g -c -fshort-wchar -O0 -m64 + GCC:*_*_IA32_CC_FLAGS == -g -c -fshort-wchar -fexceptions -O0 -m32 -malign-double -fno-pie + GCC:*_*_X64_CC_FLAGS == -g -c -fshort-wchar -fexceptions -O0 -m64 -fno-pie "-DEFIAPI=__attribute__((ms_abi))" diff --git a/UnitTestFrameworkPkg/UnitTestFrameworkPkg.ci.yaml b/UnitTestFrameworkPkg/UnitTestFrameworkPkg.ci.yaml index 40a396dd9f71..b61a6a0b0717 100644 --- a/UnitTestFrameworkPkg/UnitTestFrameworkPkg.ci.yaml +++ b/UnitTestFrameworkPkg/UnitTestFrameworkPkg.ci.yaml @@ -102,6 +102,8 @@ "cobertura", "DHAVE", # build flag for cmocka in the INF "gtest", # file name in GoogleTestLib.inf + "defiapi", # build flag for gtest + "fexceptions", # build flag for gtest "corthon", # Contact GitHub account in Readme "mdkinney", # Contact GitHub account in Readme "spbrogan" # Contact GitHub account in Readme diff --git a/UnitTestFrameworkPkg/UnitTestFrameworkPkgHost.dsc.inc b/UnitTestFrameworkPkg/UnitTestFrameworkPkgHost.dsc.inc index 00f8d9a895be..24a50a22106f 100644 --- a/UnitTestFrameworkPkg/UnitTestFrameworkPkgHost.dsc.inc +++ b/UnitTestFrameworkPkg/UnitTestFrameworkPkgHost.dsc.inc @@ -31,13 +31,14 @@ [BuildOptions] GCC:*_*_*_CC_FLAGS = -D UNIT_TESTING_DEBUG=1 XCODE:*_*_*_CC_FLAGS = -D UNIT_TESTING_DEBUG=1 !endif - GCC:*_GCC5_*_CC_FLAGS = --coverage - GCC:*_GCC5_*_DLINK_FLAGS = --coverage + GCC:*_*_*_CC_FLAGS = -fexceptions + GCC:*_*_*_CC_FLAGS = --coverage + GCC:*_*_*_DLINK_FLAGS = --coverage [BuildOptions.common.EDKII.HOST_APPLICATION] # # MSFT # - MSFT:*_*_*_CC_FLAGS = /EHsc + MSFT:*_*_*_CC_FLAGS = /EHs MSFT:*_*_*_DLINK_FLAGS == /out:"$(BIN_DIR)\$(MODULE_NAME_GUID).exe" /pdb:"$(BIN_DIR)\$(MODULE_NAME_GUID).pdb" /IGNORE:4001 /NOLOGO /SUBSYSTEM:CONSOLE /DEBUG /STACK:0x40000,0x40000 /WHOLEARCHIVE MSFT:*_*_IA32_DLINK_FLAGS = /MACHINE:I386 MSFT:*_*_X64_DLINK_FLAGS = /MACHINE:AMD64 -- 2.40.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#115227): https://edk2.groups.io/g/devel/message/115227 Mute This Topic: https://groups.io/mt/104212830/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-