[yocto] [meta-mingw][PATCH v2 0/19] Adding support for building QEMU for Windows

Nathan Rossi nathan at nathanrossi.com
Thu Mar 9 07:58:07 PST 2017


On 30 January 2017 at 18:44, Nathan Rossi <nathan at nathanrossi.com> wrote:
> This series enables a number of packages and dependencies to be built
> for mingw32. The goal is to enable the building and packaging of QEMU
> targeting mingw32 with support for SDL/VNC enabled as well as being able
> to execute the qemu* machines of oe-core/meta.
>
> The following series fixes a number of issues with compilation of
> certain components that are required to build and distribute QEMU. This
> series includes:
>
>  * Enabling 'secure-api' for mingw-w64-headers
>  * Fix/enable building of shared libraries for gettext
>  * Work around to avoid dependency on bash for glib-2.0, clean up of
>    some glib-2.0 appends which are resolved in oe-core meta
>  * Better packaging of libgcc for easy use on Windows (deploy dll to
>    bindir)
>  * Updating FILES_* to support locations for mingw32 output (bindir
>    contains .dll) for libgcc, expat, libpcre, gettext, glib-2.0, libsdl,
>    libgpg-error and libgcrypt
>  * Addition of PACKAGECONFIG options to libsdl, and configuring of
>    PACKAGECONFIG for libsdl, glib-2.0 and libgcrypt to handle Windows
>    only features and or ability to disable features that do not support
>    mingw32/Windows
>  * Enabling build of libfdt in the dtc recipe, but skipping dtc itself
>  * Fixes for configuring libgpg-error and libgcrypt when targeting
>    mingw32
>
> The intended build execution is to allow for 'buildtools-tarball' (or
> any populate_sdk target with 'nativesdk-qemu' in TOOLCHAIN_HOST_TASK) to
> create an output that includes all dependent nativesdk binaries as well
> as a nativesdk QEMU binaries. This series does not however address
> fixing the environment setup script or self-extracting installer shell
> script that is normally provided by buildtools-tarball.
>
> This series with the multiple oe-core/meta series was tested on the
> following target Windows platforms: Windows 10 (64-bit), Windows 8.1
> (64-bit) and Windows 7 SP1 (64-bit).
>
> The changes were also tested on the following Linux build hosts: Debian
> 8 (64-bit), Ubuntu 16.04 (64-bit), CentOS 7 (64-bit).
>
> For convenience this series is also available in the git repository:
>
>   https://github.com/nathanrossi/meta-mingw nrossi/mingw-qemu-v2
>
> This series partly depends on a set of series for oe-core/meta. The
> following series are required for building of QEMU (but not all parts of
> this series specifically), including dll packaging detection and
> libgcrypt support:
>
>   https://patchwork.openembedded.org/series/5049/
>   https://patchwork.openembedded.org/series/5050/
>   https://patchwork.openembedded.org/series/5051/
>   https://patchwork.openembedded.org/series/5052/
>   https://patchwork.openembedded.org/series/5053/

These patch series have been merged into oe-core. However the
gettext-libintl packaging patch was moved to a change in meta-mingw
layer as of v3 (see below).

I have updated and pushed a v3 branch of this meta-mingw series to the
meta-mingw-contrib repo here:

http://git.yoctoproject.org/cgit/cgit.cgi/meta-mingw-contrib/log/?h=nrossi/mingw-qemu-v3

    Changes v3:
     * Updated changes to layer on current master of oe/meta
     * Squished the gettext libintl packaging and dll packaging patches
     * Moved the adding of the libintl packaging to meta-mingw

To avoid patch spam, I have skipped sending the v3 patches
individually to the list. Please let me know if patch emails are
desired.

Thanks,
Nathan



More information about the yocto mailing list