public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: "Jayaprakash, N" <n.jayaprakash@intel.com>
To: "devel@edk2.groups.io" <devel@edk2.groups.io>,
	"Jayaprakash, N" <n.jayaprakash@intel.com>
Cc: Rebecca Cran <rebecca@nuviainc.com>,
	"Kinney, Michael D" <michael.d.kinney@intel.com>
Subject: Re: [edk2-devel] [edk2-libc Patch 1/1] AppPkg/Applications/Python/Python3.6.8: add IA32 support for py3 package creation batch script
Date: Tue, 21 Sep 2021 14:37:12 +0000	[thread overview]
Message-ID: <DM6PR11MB3337B9CEF740C9996FFEAF8DEEA19@DM6PR11MB3337.namprd11.prod.outlook.com> (raw)
In-Reply-To: <16A638C89F9F20A4.6604@groups.io>

Hi Rebecca,

This another patch submitted to add IA32 support for py3 UEFI package creation batch script. 

Would you be able to review and merge this change?

Regards,
JP
-----Original Message-----
From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Jayaprakash, N
Sent: 19 September 2021 17:55
To: devel@edk2.groups.io
Cc: Rebecca Cran <rebecca@nuviainc.com>; Kinney, Michael D <michael.d.kinney@intel.com>; Jayaprakash, N <n.jayaprakash@intel.com>
Subject: [edk2-devel] [edk2-libc Patch 1/1] AppPkg/Applications/Python/Python3.6.8: add IA32 support for py3 package creation batch script

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3638

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 <rebecca@nuviainc.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Signed-off-by: Jayaprakash N <n.jayaprakash@intel.com>
---
 .../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/AppPkg/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 population
   of the target EFI package.  Execute this script from within the
   AppPkg/Applications/Python/Python-3.6.8 directory, providing the Tool Chain, Target
-  Build and destination directory which is the path to the destination directory.  
+  Build, Architecture and Directory path to the destination directory. 
   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
                                               ^^^^^^^^^^^^^^   
-  copied into the specified destination directory.
+  copied into the specified Destination directory.
 
   Replace "RELEASE_VS2017", in the source path, with values appropriate for your tool chain.
 
diff --git a/AppPkg/Applications/Python/Python-3.6.8/create_python368_pkg.bat 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 @@
 
 set TOOL_CHAIN_TAG=%1
 set TARGET=%2
-set OUT_FOLDER=%3
+set ARCH=%3
+set OUT_FOLDER=%4
 if "%TOOL_CHAIN_TAG%"=="" goto usage
 if "%TARGET%"=="" goto usage
+if "%ARCH%"=="" goto usage
 if "%OUT_FOLDER%"=="" goto usage
 goto continue
 
 :usage
 echo.
+echo Batch Script to create Python EFI Package.
 echo.
+echo Invalid command line arguments passed, please see the below usage 
+instructions
 echo.
-echo Creates Python EFI Package. 
-echo.
-echo "Usage: %0 <ToolChain> <Target> <OutFolder>"
-echo.
-echo    ToolChain  = one of VS2013x86, VS2015x86, VS2017, VS2019
-echo    Target     = one of RELEASE, DEBUG
-echo    OutFolder  = Target folder where package needs to create
-echo.
+echo "Usage: %0 <ToolChain> <Target> <Architecture> <OutFolder>"
 echo.
+echo    ToolChain     = one of VS2013x86, VS2015x86, VS2017, VS2019
+echo    Target        = one of RELEASE, DEBUG
+echo    Architecture  = one of IA32, X64
+echo    OutFolder     = Output directory for creating the package
 echo.
 
 goto :eof
 
 :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\StdLib\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
+)
 
+if not exist %OUT_FOLDER%\EFI\Tools (
+   mkdir %OUT_FOLDER%\EFI\Tools  
+)   
+xcopy Build\AppPkg\%TARGET%_%TOOL_CHAIN_TAG%\%ARCH%\Python368.efi 
+%OUT_FOLDER%\EFI\Tools\ /y
 
-:all_done
-exit /b %ec%
-
+if not exist %OUT_FOLDER%\EFI\StdLib\lib\python36.8 ( 
+    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\StdLib\lib\python36.8\    /Y /S /I
+xcopy StdLib\Efi\StdLib\etc\*  %OUT_FOLDER%\EFI\StdLib\etc\  /Y /S /I 
+echo.
 
+if not x%OUT_FOLDER::=%==x%OUT_FOLDER% (
+    echo Python EFI package available at %OUT_FOLDER%
+) else (
+    echo Python EFI package available at %CD%\%OUT_FOLDER%
+)
+goto all_done
 
+:error
+echo Failed to Create Python EFI Package echo Python368.efi is not 
+available at Build\AppPkg\%TARGET%_%TOOL_CHAIN_TAG%\%ARCH%\
+echo Follow the instructions in Py368ReadMe.txt to build Python 
+interpreter echo Then use this script to create a Python EFI package
 
+:all_done
+exit /b %ERRORLEVEL%
--
2.32.0.windows.2







      parent reply	other threads:[~2021-09-21 14:37 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-09-19 12:25 [edk2-libc Patch 0/1] Add IA32 support for Py3 packaging script Jayaprakash, N
2021-09-19 12:25 ` [edk2-libc Patch 1/1] AppPkg/Applications/Python/Python3.6.8: add IA32 support for py3 package creation batch script Jayaprakash, N
2021-09-21 16:35   ` Rebecca Cran
2021-09-22  2:33     ` [edk2-devel] " Jayaprakash, N
2021-09-23  1:29       ` Rebecca Cran
2021-09-23  4:22         ` Jayaprakash, N
2021-09-23 18:32           ` Rebecca Cran
2021-09-24  8:04             ` Jayaprakash, N
2021-10-04  0:35               ` Jayaprakash, N
2021-10-14  3:48                 ` Rebecca Cran
     [not found]     ` <16A7043165EA916C.27516@groups.io>
2021-09-22 13:05       ` Jayaprakash, N
     [not found] ` <16A638C89F9F20A4.6604@groups.io>
2021-09-21 14:37   ` Jayaprakash, N [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-list from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DM6PR11MB3337B9CEF740C9996FFEAF8DEEA19@DM6PR11MB3337.namprd11.prod.outlook.com \
    --to=devel@edk2.groups.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox