All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bin Meng <bmeng.cn@gmail.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v2 0/8] tools: Support building U-Boot host tools for Windows via MSYS2
Date: Wed, 23 Oct 2019 20:11:44 -0700	[thread overview]
Message-ID: <1571886712-24514-1-git-send-email-bmeng.cn@gmail.com> (raw)

Per current U-Boot README, building Windows versions of the utilities
in the tools directory is done via the MinGW toolchain. But testing
shows that it is broken and actually it must have been broken for
quite a long time.

Fixing MinGW build seems quite amount of work as developers of
U-Boot normally work on Linux boxes hence codes written are mainly
for Linux or POSIX OSes. We must investigate another way of building
host tools for Windows, and now we have MSYS2, a software distro and
building platform for Windows, to build POSIX compliant software on
Windows using an emulation layer.

This small series fixes several issues in current U-Boot tools codes,
that only assume a Linux host is used. Cases are using standard C
typedefs whenever possbile, or using compiler builtin functions to
improve portability, etc.

A reST document for how to build U-Boot host tools for both platforms
is added.

A new CI pipeline configuration for Microsoft Azure Pipelines is added
for U-Boot. We rely on it to ensure future host tools for Windows build
does not break. I've also investigated putting what we have for now on
GitLab-CI and Travis-CI to Azure Pipelines, but buildman hangs forever
and the root cause is not figured out yet.

Changes in v2:
- new patch: Add .gitattributes for line endings
- new patch: tools: Avoid creating symbolic links for tools/version.h
- new patch: Add Micirosoft Azure pipelines configuration

Bin Meng (8):
  tools: image.h: Use portable uint32_t instead of linux-specific __be32
  tools: mtk_image.h: Use portable uintXX_t instead of linux-specific
    __leXX
  tools: zynqmpbif: Use compiler builtin instead of linux-specific
    __swab32
  linux/types.h: Surround 'struct ustat' with __linux__
  doc: Add documentation for how to build U-Boot host tools
  Add .gitattributes for line endings
  tools: Avoid creating symbolic links for tools/version.h
  Add Micirosoft Azure pipelines configuration

 .gitattributes        |  2 ++
 Makefile              |  9 ++++--
 azure-pipelines.yml   | 35 +++++++++++++++++++++
 doc/build/index.rst   |  9 ++++++
 doc/build/tools.rst   | 47 ++++++++++++++++++++++++++++
 doc/index.rst         | 11 +++++++
 include/image.h       | 14 ++++-----
 include/linux/types.h |  2 ++
 tools/.gitignore      |  1 +
 tools/mtk_image.h     | 86 +++++++++++++++++++++++++--------------------------
 tools/version.h       |  1 -
 tools/zynqmpbif.c     |  2 +-
 12 files changed, 164 insertions(+), 55 deletions(-)
 create mode 100644 .gitattributes
 create mode 100644 azure-pipelines.yml
 create mode 100644 doc/build/index.rst
 create mode 100644 doc/build/tools.rst
 delete mode 120000 tools/version.h

-- 
2.7.4

             reply	other threads:[~2019-10-24  3:11 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-24  3:11 Bin Meng [this message]
2019-10-24  3:11 ` [U-Boot] [PATCH v2 1/8] tools: image.h: Use portable uint32_t instead of linux-specific __be32 Bin Meng
2019-10-24  3:11 ` [U-Boot] [PATCH v2 2/8] tools: mtk_image.h: Use portable uintXX_t instead of linux-specific __leXX Bin Meng
2019-10-24  3:11 ` [U-Boot] [PATCH v2 3/8] tools: zynqmpbif: Use compiler builtin instead of linux-specific __swab32 Bin Meng
2019-10-24  3:11 ` [U-Boot] [PATCH v2 4/8] linux/types.h: Surround 'struct ustat' with __linux__ Bin Meng
2019-10-24  3:11 ` [U-Boot] [PATCH v2 5/8] doc: Add documentation for how to build U-Boot host tools Bin Meng
2019-10-24  3:11 ` [U-Boot] [PATCH v2 6/8] Add .gitattributes for line endings Bin Meng
2019-10-24  3:11 ` [U-Boot] [PATCH v2 7/8] tools: Avoid creating symbolic links for tools/version.h Bin Meng
2019-10-24  3:11 ` [U-Boot] [PATCH v2 8/8] Add Micirosoft Azure pipelines configuration Bin Meng
2019-10-24 15:01   ` Tom Rini
2019-10-24 15:10     ` Bin Meng
2019-10-24 15:31       ` Bin Meng
2019-10-24 15:38         ` Tom Rini
2019-10-25  5:52           ` Bin Meng
2019-10-26 12:12             ` Bin Meng
2019-10-26 12:32               ` Tom Rini

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-all 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=1571886712-24514-1-git-send-email-bmeng.cn@gmail.com \
    --to=bmeng.cn@gmail.com \
    --cc=u-boot@lists.denx.de \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.