public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
From: Pete Batard <pete@akeo.ie>
To: edk2-devel@lists.01.org
Cc: liming.gao@intel.com
Subject: [PATCH 0/1] Update for the 2017-10-18 VS2017 proposal
Date: Thu, 16 Nov 2017 13:21:09 +0000	[thread overview]
Message-ID: <20171116132110.11060-1-pete@akeo.ie> (raw)

The following is a set of changes that I'd like to see applied to Liming's
2017-10-18 VS2017 support proposal for IA32 and X64.
(See https://lists.01.org/pipermail/edk2-devel/2017-October/016175.html)

Since I am planning to submit a v2 of my VS2017 ARM/AARCH64 proposal, that
relies on these alterations, I am sending this preliminary patch for review.

The 3 main changes that are being introduced from the existing proposal are:
1. The use of %WindowsSdkVerBinPath% if defined, to locate the most recent
   version of the Windows 10 SDK. The fact that vcvars32.bat should have been
   called should usually ensure that this variable has been set, which in turn
   should ensure that we can access the required ARM64 tools and libraries. Of
   course, if the variable is not defined, the fallback to the hardcoded SDK
   top directory should still work fine for IA32 and X64.
2. Follow the way Microsoft structured the Visual Studio 2017 toolchains by
   introducing a specific VS2017_BIN_HOST, for host-specific elements, that is
   separate from the various VS2017_BIN_<ARCH> targets. I believe this will
   make maintenance easier in the long run, as it makes the breakdown of what
   relates to the host and what relates to the target a lot more explicit.
   Note that, for clarity's sake, and unlike the convention that was used
   previously, I chose to add an underscore between BIN and <ARCH>. This is
   because, once we start dealing with things like VS2017_BIN_ARM and
   VS2017_BIN_AARCH64, we'll probably be happier with a separator for <ARCH>.
3. Factorize the elements that are HOST related, since they don't need to be
   duplicated.

I'm hoping that these alterations can be agreed on. If that is the case, and
considering that these changes need to be applied on top of the current VS2017
proposal, I can submit a v2 of Liming's patches, that includes these changes,
for review and integration.

I should also point out that, outside of these modification, the current
proposal looks good to me especially as I have tested the generation of the
IA32 and X64 OVMF using VS2017 (from a regular command prompt rather than a
VS2017 one), as well as a handful of IA32 and X64 applications and found no
issues. For the sake of validating my proposed changes, I tested both the
x86 and x64 VS2017 HOSTs.

Regards,

/Pete

Pete Batard (1):
  BaseTools: Use VS2017 SDK path if defined and reorganize variables

 BaseTools/Conf/tools_def.template | 66 ++++++++++++++++++---------------------
 BaseTools/set_vsprefix_envs.bat   | 15 ++++-----
 2 files changed, 39 insertions(+), 42 deletions(-)

-- 
2.9.3.windows.2



             reply	other threads:[~2017-11-16 13:17 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-11-16 13:21 Pete Batard [this message]
2017-11-16 13:21 ` [PATCH 1/1] BaseTools: Use VS2017 SDK path if defined and reorganize variables Pete Batard
2017-11-16 14:48   ` Gao, Liming
2017-11-16 15:45     ` Pete Batard

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=20171116132110.11060-1-pete@akeo.ie \
    --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