From nobody Sun Feb 8 11:21:59 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) client-ip=66.175.222.108; envelope-from=bounce+27952+80864+1787277+3901457@groups.io; helo=mail02.groups.io; Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+80864+1787277+3901457@groups.io; dmarc=fail(p=none dis=none) header.from=intel.com ARC-Seal: i=1; a=rsa-sha256; t=1632054357; cv=none; d=zohomail.com; s=zohoarc; b=VX7KnpazpQuy8opODNyTpZAUcED2Z93+hL3spXfekmerBEWrlikhay77LlxuyLtrOX1da8hfJOJMq73K0POqGwUKncMLCBuyBMY2sZMfX7sA9ExxGvFocqqII2Zs0+W/oBGbZlzPHsjPsX6eo5bS79g0XHiWe9HpOExu5a7JtVU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1632054357; h=Content-Transfer-Encoding:Cc:Date:From:In-Reply-To:List-Subscribe:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Reply-To:References:Sender:Subject:To; bh=dC8ouodDVYdjUQLWlPf3hoP6/ITuaPX2vlQ5bX+fHWY=; b=OjrsnEQ48/wZKluFZe5Pm1LOxCM/8R5l6mWWomUesC5en8NfVjPJ+sd5maGWL4clC9ZaR1Ux6RQA3ytAK04OVy0EDESNyOTOxgQ8/I7GsHuGjzGdRRggAU+gaWHC7Ls++EelvWjj/2EzJ47MIzLv+R+64R5gPStJGKLufu5wSqY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce+27952+80864+1787277+3901457@groups.io; dmarc=fail header.from= (p=none dis=none) Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by mx.zohomail.com with SMTPS id 1632054357829758.7241506444828; Sun, 19 Sep 2021 05:25:57 -0700 (PDT) Return-Path: X-Received: by 127.0.0.2 with SMTP id AP6VYY1788612xjiUes4lnh1; Sun, 19 Sep 2021 05:25:57 -0700 X-Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mx.groups.io with SMTP id smtpd.web12.10084.1632054345446752976 for ; Sun, 19 Sep 2021 05:25:49 -0700 X-IronPort-AV: E=McAfee;i="6200,9189,10111"; a="223047571" X-IronPort-AV: E=Sophos;i="5.85,305,1624345200"; d="scan'208";a="223047571" X-Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 19 Sep 2021 05:25:48 -0700 X-IronPort-AV: E=Sophos;i="5.85,305,1624345200"; d="scan'208";a="555627009" X-Received: from njayapra-mobl1.gar.corp.intel.com ([10.213.108.23]) by fmsmga002-auth.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 19 Sep 2021 05:25:46 -0700 From: "Jayaprakash, N" To: devel@edk2.groups.io Cc: Rebecca Cran , Michael D Kinney , Jayaprakash N Subject: [edk2-devel] [edk2-libc Patch 1/1] AppPkg/Applications/Python/Python3.6.8: add IA32 support for py3 package creation batch script Date: Sun, 19 Sep 2021 17:55:28 +0530 Message-Id: <20210919122528.2184-2-n.jayaprakash@intel.com> In-Reply-To: <20210919122528.2184-1-n.jayaprakash@intel.com> References: <20210919122528.2184-1-n.jayaprakash@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Unsubscribe: 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,n.jayaprakash@intel.com X-Gm-Message-State: JK3zlv1YgAN3wFB2aeY5yhjJx1787277AA= Content-Transfer-Encoding: quoted-printable DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=groups.io; q=dns/txt; s=20140610; t=1632054357; bh=qqHAUJ0v9pFDNHy2Dr7Dc2a3ITRyDrR+JhmYYdqp1HQ=; h=Cc:Date:From:Reply-To:Subject:To; b=FBjPdpSzpZ+LQi4EEwSiQ5vDQrCdkar8kucAQvHJ9UleZjKnL23xcS/b+cnvzgkyhyi 5ilJYbG0oeZYSK9zcDDZGrW2IipiMwtbiTQibgpkYmsJsGhkgjsgA6leocCJjN1zTFF8r OHfh3QE0YOAgKKPUkkF4RhTH7f6/X3kudR0= X-ZohoMail-DKIM: pass (identity @groups.io) X-ZM-MESSAGEID: 1632054359534100006 Content-Type: text/plain; charset="utf-8" REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3638 This change is to add IA32 support into py3 EFI package creation batch script. Enhanced the script take Architecture as an additional parameter. With this the script can be used to create deployable Python 3.6.8 EFI package from X64 and IA32 builds as required by the user Cc: Rebecca Cran Cc: Michael D Kinney Signed-off-by: Jayaprakash N --- .../Python/Python-3.6.8/Py368ReadMe.txt | 4 +- .../Python-3.6.8/create_python368_pkg.bat | 62 ++++++++++++------- 2 files changed, 41 insertions(+), 25 deletions(-) diff --git a/AppPkg/Applications/Python/Python-3.6.8/Py368ReadMe.txt b/AppP= kg/Applications/Python/Python-3.6.8/Py368ReadMe.txt index 94dbccc..8f4fdc6 100644 --- a/AppPkg/Applications/Python/Python-3.6.8/Py368ReadMe.txt +++ b/AppPkg/Applications/Python/Python-3.6.8/Py368ReadMe.txt @@ -118,11 +118,11 @@ system as follows: A script, create_python368_pkg.bat , is provided which facilitates the p= opulation of the target EFI package. Execute this script from within the AppPkg/Applications/Python/Python-3.6.8 directory, providing the Tool Ch= ain, Target - Build and destination directory which is the path to the destination dir= ectory. =20 + Build, Architecture and Directory path to the destination directory.=20 The appropriate contents of the AppPkg/Applications/Python/Python-3.6.8/= Lib and Python368.efi Application from Build/AppPkg/RELEASE_VS2017/X64/ will be ^^^^^^^^^^^^^^ =20 - copied into the specified destination directory. + copied into the specified Destination directory. =20 Replace "RELEASE_VS2017", in the source path, with values appropriate fo= r your tool chain. =20 diff --git a/AppPkg/Applications/Python/Python-3.6.8/create_python368_pkg.b= at b/AppPkg/Applications/Python/Python-3.6.8/create_python368_pkg.bat index 6bbdbd9..2bb62b6 100644 --- a/AppPkg/Applications/Python/Python-3.6.8/create_python368_pkg.bat +++ b/AppPkg/Applications/Python/Python-3.6.8/create_python368_pkg.bat @@ -2,47 +2,63 @@ =20 set TOOL_CHAIN_TAG=3D%1 set TARGET=3D%2 -set OUT_FOLDER=3D%3 +set ARCH=3D%3 +set OUT_FOLDER=3D%4 if "%TOOL_CHAIN_TAG%"=3D=3D"" goto usage if "%TARGET%"=3D=3D"" goto usage +if "%ARCH%"=3D=3D"" goto usage if "%OUT_FOLDER%"=3D=3D"" goto usage goto continue =20 :usage echo. +echo Batch Script to create Python EFI Package. echo. +echo Invalid command line arguments passed, please see the below usage ins= tructions=20 echo. -echo Creates Python EFI Package.=20 -echo. -echo "Usage: %0 " -echo. -echo ToolChain =3D one of VS2013x86, VS2015x86, VS2017, VS2019 -echo Target =3D one of RELEASE, DEBUG -echo OutFolder =3D Target folder where package needs to create -echo. +echo "Usage: %0 " echo. +echo ToolChain =3D one of VS2013x86, VS2015x86, VS2017, VS2019 +echo Target =3D one of RELEASE, DEBUG +echo Architecture =3D one of IA32, X64 +echo OutFolder =3D Output directory for creating the package echo. =20 goto :eof =20 :continue cd ..\..\..\..\ -IF NOT EXIST Build\AppPkg\%TARGET%_%TOOL_CHAIN_TAG%\X64\Python368.efi goto= error -mkdir %OUT_FOLDER%\EFI\Tools -xcopy Build\AppPkg\%TARGET%_%TOOL_CHAIN_TAG%\X64\Python368.efi %OUT_FOLDER= %\EFI\Tools\ /y -mkdir %OUT_FOLDER%\EFI\StdLib\lib\python36.8 -mkdir %OUT_FOLDER%\EFI\StdLib\etc -xcopy AppPkg\Applications\Python\Python-3.6.8\Lib\* %OUT_FOLDER%\EFI\St= dLib\lib\python36.8\ /Y /S /I -xcopy StdLib\Efi\StdLib\etc\* %OUT_FOLDER%\EFI\StdLib\etc\ /Y /S /I -goto all_done - -:error -echo Failed to Create Python 3.6.8 Package, Python368.efi is not available= on build location Build\AppPkg\%TARGET%_%TOOL_CHAIN_TAG%\X64\ +if not exist Build\AppPkg\%TARGET%_%TOOL_CHAIN_TAG%\%ARCH%\Python368.efi ( + goto error +) =20 +if not exist %OUT_FOLDER%\EFI\Tools ( + mkdir %OUT_FOLDER%\EFI\Tools =20 +) =20 +xcopy Build\AppPkg\%TARGET%_%TOOL_CHAIN_TAG%\%ARCH%\Python368.efi %OUT_FOL= DER%\EFI\Tools\ /y =20 -:all_done -exit /b %ec% - +if not exist %OUT_FOLDER%\EFI\StdLib\lib\python36.8 (=20 + mkdir %OUT_FOLDER%\EFI\StdLib\lib\python36.8 +) +if not exist %OUT_FOLDER%\EFI\StdLib\etc ( + mkdir %OUT_FOLDER%\EFI\StdLib\etc +) +xcopy AppPkg\Applications\Python\Python-3.6.8\Lib\* %OUT_FOLDER%\EFI\StdL= ib\lib\python36.8\ /Y /S /I +xcopy StdLib\Efi\StdLib\etc\* %OUT_FOLDER%\EFI\StdLib\etc\ /Y /S /I +echo. =20 +if not x%OUT_FOLDER::=3D%=3D=3Dx%OUT_FOLDER% ( + echo Python EFI package available at %OUT_FOLDER%=20 +) else ( + echo Python EFI package available at %CD%\%OUT_FOLDER% +) +goto all_done =20 +:error +echo Failed to Create Python EFI Package +echo Python368.efi is not available at Build\AppPkg\%TARGET%_%TOOL_CHAIN_T= AG%\%ARCH%\ +echo Follow the instructions in Py368ReadMe.txt to build Python interpreter +echo Then use this script to create a Python EFI package=20 =20 +:all_done +exit /b %ERRORLEVEL% --=20 2.32.0.windows.2 -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#80864): https://edk2.groups.io/g/devel/message/80864 Mute This Topic: https://groups.io/mt/85716779/1787277 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org] -=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-=3D-