summaryrefslogtreecommitdiff
path: root/BaseTools/Source/C/Makefile
AgeCommit message (Collapse)AuthorFilesLines
2024-12-21BaseTools: Adding cross compilation of BaseTool for Windows ARM/ARM64Kun Qin1-0/+2
This change adds the support of crossbuilding basetool for Windows ARM/ ARM64 systems, which will enable the generally available pipeline agents to build binary tools and make releases as they see fit. The EDK2 base tools build script is also updated to support cross compilation using this script. The crossbuilt binary output is tested on Windows ARM based hardware systems. Cc: Rebecca Cran <rebecca@bsdio.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Bob Feng <bob.c.feng@intel.com> Cc: Yuwei Chen <yuwei.chen@intel.com> Signed-off-by: Kun Qin <kun.qin@microsoft.com>
2021-01-21BaseTools: Convert Split tool to pythonBob Feng1-1/+0
REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3165 There are 2 reasons to convert Split tool from C to Python. 1. We are in the process of moving the Basetools Python code to a separate repository. But there still are many C tools under edk2/BaseTools. To make all Basetools be in the separate repo, we can convert the C tools to Python tools. 2. The original Split tool is very slow. This python tool can reduce 90% time. Signed-off-by: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <gaoliming@byosoft.com.cn> Cc: Yuwei Chen <yuwei.chen@intel.com> Reviewed-by: Liming Gao <gaoliming@byosoft.com.cn> Reviewed-by: Yuwei Chen <yuwei.chen@intel.com>
2019-09-11BaseTools: Robustness for multiple build environmentsBurt Silverman1-0/+2
When building BaseTools, GNUmakefile builds create directory BaseTools/Source/C/libs/. On the other hand, Makefile builds use libs as an nmake pseudo target, so it either must NOT exist as a file or directory, OR it must phony dependency like .PHONY. The latter solution conflicts with NmakeSubdirs.py. Therefore, I make it go away in the cleanall target. I could also add it to the clean target, but it strikes me that cleanall should be more forceful. Signed-off-by: Burt Silverman <burtms@gmail.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
2019-07-11Revert "BaseTools/BfmLib: Add a tool BfmLib"Liming Gao1-1/+0
This reverts commit dc7b0dc8d662b3bedece2cf1015e2a94884cb111. There are the concerns on code design and code quality, and request to rewrite FCE, BfmLib and FMMT for the review. Cc: Leif Lindholm <leif.lindholm@linaro.org> Cc: Feng Bob C <bob.c.feng@intel.com> Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Feng Bob C <bob.c.feng@intel.com>
2019-07-11Revert "BaseTools/FCE: Add a tool FCE"Liming Gao1-2/+1
This reverts commit 3c59d94637adbfdd497b5a2c16073c7dc62b669c. There are the concerns on code design and code quality, and request to rewrite FCE, BfmLib and FMMT for the review. Cc: Leif Lindholm <leif.lindholm@linaro.org> Cc: Feng Bob C <bob.c.feng@intel.com> Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Feng Bob C <bob.c.feng@intel.com>
2019-07-11Revert "BaseTools/FMMT: Add a tool FMMT"Liming Gao1-1/+0
This reverts commit 080981d72dcbb782ad73716c439639324b0aa4dd. There are the concerns on code design and code quality, and request to rewrite FCE, BfmLib and FMMT for the review. Cc: Leif Lindholm <leif.lindholm@linaro.org> Cc: Feng Bob C <bob.c.feng@intel.com> Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Feng Bob C <bob.c.feng@intel.com>
2019-07-04BaseTools/FMMT: Add a tool FMMTShenglei Zhang1-0/+1
FMMT is a tool to enable removal, addition and replacement of FFS files in FD image binaries. https://bugzilla.tianocore.org/show_bug.cgi?id=1847 Cc: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com> Reviewed-by: Bob Feng <bob.c.feng@intel.com>
2019-07-04BaseTools/FCE: Add a tool FCEShenglei Zhang1-1/+2
FCE is a tool to retrieve and change HII configuration data in Firmware Device(*.fd) files. https://bugzilla.tianocore.org/show_bug.cgi?id=1848 Cc: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com> Reviewed-by: Bob Feng <bob.c.feng@intel.com>
2019-07-04BaseTools/BfmLib: Add a tool BfmLibShenglei Zhang1-0/+1
BmfLib is added for FCE tool. https://bugzilla.tianocore.org/show_bug.cgi?id=1848 Cc: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com> Reviewed-by: Bob Feng <bob.c.feng@intel.com>
2019-04-09BaseTools: Replace BSD License with BSD+Patent LicenseMichael D Kinney1-7/+1
https://bugzilla.tianocore.org/show_bug.cgi?id=1373 Replace BSD 2-Clause License with BSD+Patent License. This change is based on the following emails: https://lists.01.org/pipermail/edk2-devel/2019-February/036260.html https://lists.01.org/pipermail/edk2-devel/2018-October/030385.html RFCs with detailed process for the license change: V3: https://lists.01.org/pipermail/edk2-devel/2019-March/038116.html V2: https://lists.01.org/pipermail/edk2-devel/2019-March/037669.html V1: https://lists.01.org/pipermail/edk2-devel/2019-March/037500.html Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael D Kinney <michael.d.kinney@intel.com> Reviewed-by: Bob Feng <bob.c.feng@intel.com>
2019-03-15BaseTools: Fixed the issue of BaseTools Make cleanall failed.Feng, Bob C1-2/+2
BZ:https://bugzilla.tianocore.org/show_bug.cgi?id=1622 There is duplicated $(PYTHON_COMMAND) in the command of cleanall Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
2019-02-01BaseTools: Update PYTHON env to PYTHON_COMMANDLiming Gao1-4/+8
Update PYTHON env to PYTHON_COMMAND. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Bob Feng <bob.c.feng@intel.com>
2019-02-01BaseTools: Update windows and linux run scripts file to use Python3Zhijux Fan1-4/+4
Modify windows script, PosixLike script, edksetup.sh, edksetup.bat to use Python3 based on PYTHON3_ENABLE environment. Cc: Bob Feng <bob.c.feng@intel.com> Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Zhiju.Fan <zhijux.fan@intel.com> Tested-by: Laszlo Ersek <lersek@redhat.com> Tested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Bob Feng <bob.c.feng@intel.com>
2018-12-06BaseTools: Remove tools only used by DuetPkgShenglei Zhang1-4/+0
Given that DuetPkg will be removed, tools only used by DuetPkg can also be removed after its removal operation. https://bugzilla.tianocore.org/show_bug.cgi?id=1322 v2:Remove these tools in Makefile and GNUmakefile. v4:Remove these tools in BinWrappers/PosixLike/ and UserManuals. Cc: Ruiyu Ni <ruiyu.ni@intel.com> Cc: Hao Wu <hao.a.wu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com> Reviewed-by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed-by: Hao Wu <hao.a.wu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
2018-12-05BaseTools: Remove GenVtfShenglei Zhang1-1/+0
GenVtf C tool is IPF specific. IPF support has been removed from edk2 trunk. This tool can be removed. https://bugzilla.tianocore.org/show_bug.cgi?id=1349 v2:Remove GenVtf in Makefile and GNUmakefile. v3:Remove BinWrappers/PosixLike/GenVtf and the user manual of GenVtf. Cc: Yonghong Zhu <yonghong.zhu@intel.com> Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
2018-10-15Revert BaseTools: PYTHON3 migrationLiming Gao1-4/+4
This reverts commit 6693f359b3c213513c5096a06c6f67244a44dc52.. 678f85131238622e576705117e299d81cff755c9. Python3 migration is the fundamental change. It requires every developer to install Python3. Before this migration, the well communication and wide verification must be done. But now, most people is not aware of this change, and not try it. So, Python3 migration is reverted and be moved to edk2-staging Python3 branch for the edk2 user evaluation. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com>
2018-10-13BaseTools: Update Makefile to ignore python tools makeYunhua Feng1-4/+4
ignore make python tools, replace PYTHON_HOME by PYTHON3 Cc: Liming Gao <liming.gao@intel.com> Cc: Yonghong Zhu <yonghong.zhu@intel.com> Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
2018-09-12BaseTools: Support multi thread build Basetool on WindowsDongao Guo1-7/+7
Add NmakeSubdirs.py to replace NmakeSubdirs.bat in VS Makefile. This script will invoke nmake in multi thread mode. It can save more than half time of BaseTools C clean build. GCC make supports multiple thread in make phase. So, GNUmakefile doesn't need apply this script. single task or job=1: just single thread and invoke subprocess,subprocess will use system.stdout to print output. multi task: thread number is logic cpu count.All subprocess output will pass to python script by PIPE and then script print it to system.stdout. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Dongao Guo<dongao.guo@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> Test-by: Liming Gao <liming.gao@intel.com>
2017-12-31BaseTools: Add DevicePath support for PCD valuesYonghong Zhu1-2/+3
Use C code parse device path to output hex string, and Python run command when PCD Value need device path parse. https://bugzilla.tianocore.org/show_bug.cgi?id=541 Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Yunhua Feng <yunhuax.feng@intel.com> Signed-off-by: Yonghong Zhu <yonghong.zhu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
2017-11-30BaseTools: Replace ARCH with HOST_ARCH in C Makefile to avoid conflictLiming Gao1-1/+1
https://bugzilla.tianocore.org/show_bug.cgi?id=793 ARCH is too generic. It may cause confuse of target arch or host arch. To be clarified, replace it with HOST_ARCH in BaseTools C Makefile. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Liming Gao <liming.gao@intel.com> Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com>
2017-03-29BaseTools: Add Brotli algorithm toolSong, BinX1-0/+1
- Add Brotli algorithm tool support Cc: Liming Gao <liming.gao@intel.com> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Bell Song <binx.song@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com>
2014-08-25Fix nmake cleanall bugs.Yingke Liu1-2/+1
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Yingke Liu <yingke.d.liu@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15887 6f19259b-4bc3-4df7-8a09-765794883524
2012-04-10Sync BaseTools Trunk (version r2518) to EDKII main trunk.lgao41-1/+2
Signed-off-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13178 6f19259b-4bc3-4df7-8a09-765794883524
2010-05-18Sync EDKII BaseTools to BaseTools project r1971lgao41-2/+2
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10502 6f19259b-4bc3-4df7-8a09-765794883524
2010-03-04Sync EDKII BaseTools to BaseTools project r1913.qhuang81-61/+73
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10193 6f19259b-4bc3-4df7-8a09-765794883524
2009-07-17Check In tool source code based on Build tool project revision r1655.lgao41-0/+61
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8964 6f19259b-4bc3-4df7-8a09-765794883524