From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received-SPF: Pass (sender SPF authorized) identity=mailfrom; client-ip=104.47.40.97; helo=nam03-co1-obe.outbound.protection.outlook.com; envelope-from=christopher.co@microsoft.com; receiver=edk2-devel@lists.01.org Received: from NAM03-CO1-obe.outbound.protection.outlook.com (mail-co1nam03on0097.outbound.protection.outlook.com [104.47.40.97]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 6991B210C642C for ; Fri, 22 Jun 2018 17:57:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=5DnvFfgeXk0w5sMIjjFqHpfP03PTxRtotEtYrXKE+FE=; b=PddGYubQav46O2/Cry9tbna4NsDLoLNhWWOWiOCGkctIXYhY7wnSjs7ud+d9hWrbGJeOdJ2T5bkD65IiNyOLlOI2oepsLUhJTSvdA/vOPz1PqcOiDLJ1LGKviZ7AMK8OBI+KQ72Qlgl/7v4t0O9eLPLoYkjoYGst7AVyzH/tkNI= Received: from DM5PR2101MB1128.namprd21.prod.outlook.com (52.132.133.20) by DM5PR2101MB0936.namprd21.prod.outlook.com (52.132.131.166) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.906.3; Sat, 23 Jun 2018 00:57:51 +0000 Received: from DM5PR2101MB1128.namprd21.prod.outlook.com ([fe80::28cb:9380:49e8:e0d0]) by DM5PR2101MB1128.namprd21.prod.outlook.com ([fe80::28cb:9380:49e8:e0d0%2]) with mapi id 15.20.0906.004; Sat, 23 Jun 2018 00:57:51 +0000 From: Chris Co To: "edk2-devel@lists.01.org" CC: Yonghong Zhu , Liming Gao , Leif Lindholm Thread-Topic: [PATCH v2 1/1] BaseTools/tools_def: Add GCC49xASL Toolchain support Thread-Index: AQHUCo025Yvcza0FRU+cJ4rJFggoQg== Date: Sat, 23 Jun 2018 00:57:51 +0000 Message-ID: <20180623005740.43200-2-christopher.co@microsoft.com> References: <20180623005740.43200-1-christopher.co@microsoft.com> In-Reply-To: <20180623005740.43200-1-christopher.co@microsoft.com> Accept-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: CY4PR13CA0081.namprd13.prod.outlook.com (2603:10b6:903:152::19) To DM5PR2101MB1128.namprd21.prod.outlook.com (2603:10b6:4:a8::20) x-ms-exchange-messagesentrepresentingtype: 1 x-originating-ip: [2001:4898:80e8:a:a5f8:8678:5c4c:49cc] x-ms-publictraffictype: Email x-microsoft-exchange-diagnostics: 1; DM5PR2101MB0936; 7:6Kwgi8HYfSYEGXr53add5znhmdENSYiBhJXuRi0WaSSHPQnKQAQAAWuV7edeEVTQ9Ngg0TlpcG0eWL3GrmubmaQsVbkYy/wOY4froFB0+nE9O847S7Te3eD/wy8zW0kWzbr0/ert6TJ8GpJTfJ1TMfu35lqUzy2+fTI/6J+x+YtwbHzWBO+eTTB225wiE+3zAvMMTXj99IkliJ39RWT7J67ZSvBGT83mkBMESjb5JLYGYYCHVGw8JevmrJAEDVJf x-ms-office365-filtering-correlation-id: 67755c03-7efe-4b7f-cc56-08d5d8a4586b x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: UriScan:; BCL:0; PCL:0; RULEID:(7020095)(4652020)(8989117)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600026)(711020)(48565401081)(2017052603328)(7193020); SRVR:DM5PR2101MB0936; x-ms-traffictypediagnostic: DM5PR2101MB0936: authentication-results: spf=none (sender IP is ) smtp.mailfrom=Christopher.Co@microsoft.com; x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:(28532068793085)(89211679590171)(228905959029699); x-ms-exchange-senderadcheck: 1 x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(8211001083)(6040522)(2401047)(8121501046)(5005006)(93006095)(93001095)(10201501046)(3002001)(3231254)(2018427008)(944501410)(52105095)(6055026)(149027)(150027)(6041310)(20161123560045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123558120)(20161123564045)(6072148)(201708071742011)(7699016); SRVR:DM5PR2101MB0936; BCL:0; PCL:0; RULEID:; SRVR:DM5PR2101MB0936; x-forefront-prvs: 07126E493C x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(396003)(346002)(39860400002)(366004)(376002)(39380400002)(199004)(189003)(2616005)(6486002)(11346002)(476003)(86612001)(2501003)(1076002)(5250100002)(6506007)(446003)(386003)(6116002)(25786009)(966005)(68736007)(76176011)(4326008)(86362001)(186003)(72206003)(6436002)(99286004)(102836004)(53936002)(2351001)(486006)(14454004)(5660300001)(54906003)(52116002)(478600001)(36756003)(2900100001)(6512007)(8936002)(97736004)(22452003)(10290500003)(3280700002)(81156014)(6306002)(5640700003)(46003)(8676002)(105586002)(305945005)(106356001)(7736002)(10090500001)(81166006)(316002)(2906002)(3660700001)(6916009)(22906009)(460985005); DIR:OUT; SFP:1102; SCL:1; SRVR:DM5PR2101MB0936; H:DM5PR2101MB1128.namprd21.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; MX:1; received-spf: None (protection.outlook.com: microsoft.com does not designate permitted sender hosts) x-microsoft-antispam-message-info: TCk4ySZUmlfxhzW8k+JOZCkRsqQtqSUzX1hesGpubWHkOtxQ764W0uLMcqBSIB5vT5pxfanaxNJEJ5UqOm5GVPjuo9mBEadSqMaT+VkaeBwiddS20fAEhldwzTeynm8EekQPoxYAzLi9Ye5m1uHnBsV6InFpfYbSqp5hVHkp2HP56qkPJiCDjR/HibZ145bvDaMmQU/3wTYzacnCjKWBghqqJUGCJFRfjVzoKW4biPXgXCMkFb5BsIwbGqs9AMoDybkH6MHGD2ed7vm6J4ZuKmYWpzxBIg6iWYcnxxVemr+h2srJuCpmZ0ssSGOspUQgakSL3avdMly/3xoFaXqsjA== spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM MIME-Version: 1.0 X-OriginatorOrg: microsoft.com X-MS-Exchange-CrossTenant-Network-Message-Id: 67755c03-7efe-4b7f-cc56-08d5d8a4586b X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Jun 2018 00:57:51.5901 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR2101MB0936 Subject: [PATCH v2 1/1] BaseTools/tools_def: Add GCC49xASL Toolchain support X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 23 Jun 2018 00:57:52 -0000 Content-Language: en-US Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable From: Chris Co This patch adds a build option for invoking GCC49 ARM cross compiler in the Windows environment to build firmware for Windows 10 IoT devices using NXP i.MX6 and i.MX7 SoCs. In addition, this build option targets the Microsoft ASL compiler instead of iasl. The Microsoft ASL compiler is necessary to expose Windows-specific Pin Function Config Descriptors on Windows IoT devices. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Christopher Co Cc: Yonghong Zhu Cc: Liming Gao Cc: Leif Lindholm --- BaseTools/Conf/tools_def.template | 61 ++++++++++++++++++++ 1 file changed, 61 insertions(+) diff --git a/BaseTools/Conf/tools_def.template b/BaseTools/Conf/tools_def.t= emplate index 11a79029b890..f7a375ebaf1e 100755 --- a/BaseTools/Conf/tools_def.template +++ b/BaseTools/Conf/tools_def.template @@ -393,6 +393,12 @@ DEFINE DTC_BIN =3D ENV(DTC_PREFIX)dtc # Required to build platforms or ACPI tables: # Intel(r) ACPI Compiler from # https://acpica.org/downloads +# GCC49xASL -Windows- Requires: +# GCC 4.9 targeting arm-none-eabi +# Optional: +# Required to build platforms or ACPI tables: +# Microsoft ASL ACPI Compiler (asl.exe) from= Windows WDK +# https://docs.microsoft.com/en-us/windows-h= ardware/drivers/download-the-wdk # GCC5 -Linux,Windows- Requires: # GCC 5 with LTO support, targeting x86_64-lin= ux-gnu, aarch64-linux-gnu, or arm-linux-gnueabi # Optional: @@ -5466,6 +5472,61 @@ RELEASE_GCC49_AARCH64_DLINK_FLAGS =3D DEF(GCC49_AAR= CH64_DLINK_FLAGS) NOOPT_GCC49_AARCH64_DLINK_FLAGS =3D DEF(GCC49_AARCH64_DLINK_FLAGS) -z c= ommon-page-size=3D0x1000 -O0 NOOPT_GCC49_AARCH64_DLINK_XIPFLAGS =3D -z common-page-size=3D0x20 -O0 =20 +##########################################################################= ########## +# +# GCC49xASL - This configuration is used to compile under Windows to produ= ce +# PE/COFF binaries using GCC 4.9. +# +##########################################################################= ########## +*_GCC49xASL_*_*_FAMILY =3D GCC + +*_GCC49xASL_*_MAKE_PATH =3D DEF(GCC_HOST_PREFIX)make +*_GCC49xASL_*_*_DLL =3D ENV(GCC49_DLL) +*_GCC49xASL_*_ASL_PATH =3D DEF(WIN_ASL_BIN) + +*_GCC49xASL_*_PP_FLAGS =3D DEF(GCC_PP_FLAGS) +*_GCC49xASL_*_ASLPP_FLAGS =3D DEF(GCC_ASLPP_FLAGS) +*_GCC49xASL_*_ASLCC_FLAGS =3D DEF(GCC_ASLCC_FLAGS) +*_GCC49xASL_*_VFRPP_FLAGS =3D DEF(GCC_VFRPP_FLAGS) +*_GCC49xASL_*_APP_FLAGS =3D +*_GCC49xASL_*_ASL_FLAGS =3D /MsftInternal +*_GCC49xASL_*_ASL_OUTFLAGS =3D DEF(MS_ASL_OUTFLAGS) + +################## +# GCC49xASL ARM definitions +################## +*_GCC49xASL_ARM_OBJCOPY_PATH =3D noop +*_GCC49xASL_ARM_CC_PATH =3D ENV(GCC49_ARM_PREFIX)gcc +*_GCC49xASL_ARM_SLINK_PATH =3D ENV(GCC49_ARM_PREFIX)ar +*_GCC49xASL_ARM_DLINK_PATH =3D ENV(GCC49_ARM_PREFIX)gcc +*_GCC49xASL_ARM_ASLDLINK_PATH =3D ENV(GCC49_ARM_PREFIX)gcc +*_GCC49xASL_ARM_ASM_PATH =3D ENV(GCC49_ARM_PREFIX)gcc +*_GCC49xASL_ARM_PP_PATH =3D ENV(GCC49_ARM_PREFIX)gcc +*_GCC49xASL_ARM_VFRPP_PATH =3D ENV(GCC49_ARM_PREFIX)gcc +*_GCC49xASL_ARM_ASLCC_PATH =3D ENV(GCC49_ARM_PREFIX)gcc +*_GCC49xASL_ARM_ASLPP_PATH =3D ENV(GCC49_ARM_PREFIX)gcc +*_GCC49xASL_ARM_RC_PATH =3D ENV(GCC49_ARM_PREFIX)objcopy +*_GCC49xASL_ARM_SYMRENAME_PATH =3D noop + +*_GCC49xASL_ARM_ARCHCC_FLAGS =3D -mthumb +*_GCC49xASL_ARM_PLATFORM_FLAGS =3D -march=3Darmv7-a + +*_GCC49xASL_ARM_ASLCC_FLAGS =3D DEF(GCC_ASLCC_FLAGS) +*_GCC49xASL_ARM_ASLDLINK_FLAGS =3D DEF(GCC49_ARM_ASLDLINK_FLAGS) +*_GCC49xASL_ARM_ASM_FLAGS =3D DEF(GCC49_ARM_ASM_FLAGS) +*_GCC49xASL_ARM_DLINK_FLAGS =3D DEF(GCC49_ARM_DLINK_FLAGS) +*_GCC49xASL_ARM_DLINK2_FLAGS =3D DEF(GCC49_ARM_DLINK2_FLAGS) +*_GCC49xASL_ARM_DTCPP_FLAGS =3D DEF(GCC_DTCPP_FLAGS) +*_GCC49xASL_ARM_PLATFORM_FLAGS =3D -march=3Darmv7-a +*_GCC49xASL_ARM_PP_FLAGS =3D $(ARCHCC_FLAGS) $(PLATFORM_FLAGS)= DEF(GCC_PP_FLAGS) +*_GCC49xASL_ARM_RC_FLAGS =3D DEF(GCC_ARM_RC_FLAGS) +*_GCC49xASL_ARM_VFRPP_FLAGS =3D $(ARCHCC_FLAGS) $(PLATFORM_FLAGS)= DEF(GCC_VFRPP_FLAGS) +*_GCC49xASL_ARM_CC_XIPFLAGS =3D DEF(GCC49_ARM_CC_XIPFLAGS) + + DEBUG_GCC49xASL_ARM_CC_FLAGS =3D DEF(GCC49_ARM_CC_FLAGS) -O0 +RELEASE_GCC49xASL_ARM_CC_FLAGS =3D DEF(GCC49_ARM_CC_FLAGS) -Wno-unus= ed-but-set-variable -Wno-unused-const-variable + NOOPT_GCC49xASL_ARM_CC_FLAGS =3D DEF(GCC49_ARM_CC_FLAGS) -O0 + ##########################################################################= ########## # # GCC 5 - This configuration is used to compile under Linux to produce --=20 2.16.2.gvfs.1.33.gf5370f1