From nobody Sat Nov 2 08:37:37 2024 Delivered-To: importer@patchew.org Received-SPF: none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) client-ip=198.145.21.10; envelope-from=edk2-devel-bounces@lists.01.org; helo=ml01.01.org; Authentication-Results: mx.zoho.com; spf=none (zoho.com: 198.145.21.10 is neither permitted nor denied by domain of lists.01.org) smtp.mailfrom=edk2-devel-bounces@lists.01.org; Return-Path: Received: from ml01.01.org (ml01.01.org [198.145.21.10]) by mx.zohomail.com with SMTPS id 1492573198999542.3939296407112; Tue, 18 Apr 2017 20:39:58 -0700 (PDT) Received: from [127.0.0.1] (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id 91FBF21DFA7AF; Tue, 18 Apr 2017 20:39:54 -0700 (PDT) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id ACB3B21A6F108 for ; Tue, 18 Apr 2017 20:39:52 -0700 (PDT) Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga105.jf.intel.com with ESMTP; 18 Apr 2017 20:39:52 -0700 Received: from mdkinney-mobl.amr.corp.intel.com ([10.241.98.50]) by FMSMGA003.fm.intel.com with ESMTP; 18 Apr 2017 20:39:52 -0700 X-Original-To: edk2-devel@lists.01.org X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.37,219,1488873600"; d="scan'208";a="847467184" From: Michael Kinney To: edk2-devel@lists.01.org Date: Tue, 18 Apr 2017 20:39:48 -0700 Message-Id: <1492573188-12276-2-git-send-email-michael.d.kinney@intel.com> X-Mailer: git-send-email 2.6.3.windows.1 In-Reply-To: <1492573188-12276-1-git-send-email-michael.d.kinney@intel.com> References: <1492573188-12276-1-git-send-email-michael.d.kinney@intel.com> Subject: [edk2] [edk2-BuildSpecification PATCH] Add NMAKE response file for long command lines X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Kevin W Shaw , Liming Gao MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Errors-To: edk2-devel-bounces@lists.01.org Sender: "edk2-devel" X-ZohoMail: RSF_4 Z_629925259 SPT_0 Content-Type: text/plain; charset="utf-8" https://bugzilla.tianocore.org/show_bug.cgi?id=3D479 If an NMAKE command line is too long, then the include paths and tool flags are added to a response file that is passed to NMAKE. Cc: Liming Gao Cc: Yonghong Zhu Cc: Kevin W Shaw Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Michael Kinney Reviewed-by: Yonghong Zhu =20 --- .../82_auto-generation_process.md | 20 ++++++++++++++++= ++++ README.md | 1 + 2 files changed, 21 insertions(+) diff --git a/8_pre-build_autogen_stage/82_auto-generation_process.md b/8_pr= e-build_autogen_stage/82_auto-generation_process.md index 4175552..b7c81ea 100644 --- a/8_pre-build_autogen_stage/82_auto-generation_process.md +++ b/8_pre-build_autogen_stage/82_auto-generation_process.md @@ -991,6 +991,26 @@ Quotes are also required if the path to the pre-build = command contains space or special characters. ********** =20 +#### 8.2.4.14 NMAKE Command line limitation handling + +`NMAKE` is limited to command-line length of 4096 characters. Due to the = large +number of `/I` directives specified on command line (one per include direc= tory), +the path length of `WORKSPACE` is multiplied by the number of `/I` directi= ves +and can exceed this command-line length limitation. When this issue occurs= , the +build tools pass the command line options via a response file instead of +directly on the command line. The contents of the response file is combin= ation +of `FLAGS` options and `INC` options. If a build fails, the build tools pr= int +the response file's file location and the contents of the response file. + +The **build** command supports the options `-l` and `--cmd-len` to set the +maximum command line length. The default value is 4096. + +********** +**Note:** The following `FLAGS` options are included in the response file: +`PP_FLAGS`, `CC_FLAGS`, `VFRPP_FLAGS`, `APP_FLAGS`, `ASLPP_FLAGS`, `ASLCC_= FLAGS`, +and `ASM_FLAGS`. +********** + ### 8.2.5 Post processing =20 Once all files are parsed, the build tools will do following work for each= EDK diff --git a/README.md b/README.md index 2d9adb1..21bb782 100644 --- a/README.md +++ b/README.md @@ -205,3 +205,4 @@ Copyright (c) 2008-2017, Intel Corporation. All rights = reserved. | | [#472](https://bugzilla.tianocore.org/show_bug.cgi?id=3D472= ) [Build Spec] Extend macro usage in the !include statements for DSC/FDF fi= les = = |= | | | [#483](https://bugzilla.tianocore.org/show_bug.cgi?id=3D483= ) Build Spec: add description for merge Pre-build and Post-build into build= process = = |= | | | [#490](https://bugzilla.tianocore.org/show_bug.cgi?id=3D490= ) Build Spec: specify the alignment requirements for VOID* PCDs stored in a= PCD section = = |= | +| | [#479](https://bugzilla.tianocore.org/show_bug.cgi?id=3D479= ) Build spec: add description for nmake long command line handling = = = |= | --=20 2.6.3.windows.1 _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel