From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga05.intel.com (mga05.intel.com []) by mx.groups.io with SMTP id smtpd.web12.5095.1572304978964245437 for ; Mon, 28 Oct 2019 16:22:59 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=fail (domain: intel.com, ip: , mailfrom: ashley.e.desimone@intel.com) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga105.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 28 Oct 2019 16:22:58 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.68,241,1569308400"; d="scan'208";a="283071867" Received: from aedesimo-desk.amr.corp.intel.com ([10.7.159.171]) by orsmga001.jf.intel.com with ESMTP; 28 Oct 2019 16:22:58 -0700 From: "Desimone, Ashley E" To: devel@edk2.groups.io Cc: Nate DeSimone , Puja Pandya Subject: [edk2-staging/EdkRepo] [PATCH 3/3] EdkRepo: Multiple Command Package Build Script Update Date: Mon, 28 Oct 2019 16:22:45 -0700 Message-Id: <20191028232245.6712-3-ashley.e.desimone@intel.com> X-Mailer: git-send-email 2.16.2.windows.1 In-Reply-To: <20191028232245.6712-1-ashley.e.desimone@intel.com> References: <20191028232245.6712-1-ashley.e.desimone@intel.com> Add support for building extension packages. Signed-off-by: Ashley E Desimone Cc: Nate DeSimone Cc: Puja Pandya --- build-scripts/set_version_and_build_wheels.py | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/build-scripts/set_version_and_build_wheels.py b/build-scripts/set_version_and_build_wheels.py index e8d467e..6fd5ab5 100755 --- a/build-scripts/set_version_and_build_wheels.py +++ b/build-scripts/set_version_and_build_wheels.py @@ -195,16 +195,23 @@ def make_selfextract_version_script(version): ver.write('chcp 437\n') print("VersionInfo script written to set_version.bat\n") -def build_wheels(): +def build_wheels(extension_pkgs): dir_path = os.path.dirname(os.path.abspath(os.path.dirname(__file__))) file_path = os.path.join(dir_path, "setup.py") if ostype == WIN: check_call("py {} \"{}\" bdist_wheel".format(PYTHON_VERSION, file_path), shell=True, cwd=dir_path) else: check_call('python3 "{}" bdist_wheel'.format(file_path), shell=True, cwd=dir_path) + for pkg in extension_pkgs: + ext_dir_path = os.path.abspath(pkg) + ext_file_path = os.path.join(ext_dir_path, 'setup.py') + if ostype == WIN: + check_call("py {} \"{}\" bdist_wheel".format(PYTHON_VERSION, ext_file_path), shell=True, cwd=ext_dir_path) + else: + check_call('python3 "{}" bdist_wheel'.format(ext_file_path), shell=True, cwd=ext_dir_path) print("Wheels built successfully") -def copy_wheels_and_set_xml(package_version): +def copy_wheels_and_set_xml(package_version, extension_pkgs): dir_path = os.path.join(os.path.dirname(os.path.abspath(os.path.dirname(__file__))), "dist") dest_path = os.path.join(dir_path, "self_extract") if ostype == LINUX: @@ -218,6 +225,14 @@ def copy_wheels_and_set_xml(package_version): if data: wheels.append((data.group(1), file_name)) _copy_file(os.path.join(dir_path, file_name), os.path.join(dest_path, file_name)) + for pkg in extension_pkgs: + ext_dir_path = os.path.join(os.path.abspath(pkg), 'dist') + for file_name in os.listdir(ext_dir_path): + if fnmatch.fnmatch(file_name, "*.whl"): + data = wheel_package.match(file_name) + if data: + wheels.append((data.group(1), file_name)) + _copy_file(os.path.join(ext_dir_path, file_name), os.path.join(dest_path, file_name)) _set_version_number_and_wheels_cr_tools_installer_config(package_version, wheels) def create_final_copy_script(version): @@ -251,6 +266,7 @@ def make_version_cfg_file(version): install_cfg.write(f) def main(): + extension_pkgs = [] print("Building Python packages and generating new version number...") (version, package_version) = get_current_version_number() set_version_number_setup_py(package_version) @@ -259,8 +275,8 @@ def main(): set_version_number_setup_launcher_rc(version) make_selfextract_version_script(version) print("Version number generated and set successfully") - build_wheels() - copy_wheels_and_set_xml(package_version) + build_wheels(extension_pkgs) + copy_wheels_and_set_xml(package_version, extension_pkgs) make_version_cfg_file(version) create_final_copy_script(version) -- 2.16.2.windows.1