* [meta-mingw][PATCH 0/19] Adding support for building QEMU for Windows
@ 2017-01-30 8:41 Nathan Rossi
2017-01-30 8:41 ` [meta-mingw][PATCH 1/19] mingw-w64-headers: Add 'secure-api' PACKAGECONFIG Nathan Rossi
2017-01-30 8:44 ` [meta-mingw][PATCH 0/19] Adding support for building QEMU for Windows Nathan Rossi
0 siblings, 2 replies; 3+ messages in thread
From: Nathan Rossi @ 2017-01-30 8:41 UTC (permalink / raw)
To: yocto; +Cc: Alistair Francis
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/
A branch which has the series above merged has been published to allow
for easy testing, it is available at:
https://github.com/nathanrossi/openembedded-core testing/mingw-support-2017-01-30
---
Changes v2:
* Moved a number of patches from oe-core series to this series
* Updated cover letter to reflect series additional inclusion
* Bring cover letter info from oe-core/meta series
* Updated commit messages
Nathan Rossi (19):
mingw-w64-headers: Add 'secure-api' PACKAGECONFIG
libgcc: Relocate and package dll's in bindir
expat: Fix ${PN}-bin handling for .exe files
libpcre: Handle shipping .exe and .dll files for mingw32
gettext_0.19.%.bbappend: Fix/enable shared building of gettext
gettext_0.19.%.bbappend: Handle packaging .dll's for mingw32
gettext_0.19.%.bbappend: Handle gettext-libintl .dll packaging
glib-2.0: Prevent a bash dependency via bash-completion
glib-2.0: Disable libmount support for mingw32 targets
glib-2.0: Handle packaging .dll and .exe files for mingw32
glib-2.0: Clean up unnecessary appends that are resolved in oe-core
dtc: Only build libfdt for mingw32
libsdl: Windows specific PACKAGECONFIG
libsdl: Fix ${PN}-bin handling for .exe files
libgpg-error: Handle packaging .exe files
libgpg-error_1.25.bbappend: Add patch to fix configure bug for mingw32
libgcrypt: Handle packaging of .exe and .def files
libgcrypt: Disable 'capabilities' for mingw32
libgcrypt_1.7.3.bbappend: Add patch to fix configure bug for mingw32
recipes-core/dtc/dtc_%.bbappend | 16 ++++++
recipes-core/expat/expat_%.bbappend | 3 +
.../fix-gl_cv_prog_as_underscore-test.patch | 67 ++++++++++++++++++++++
recipes-core/gettext/gettext_0.19.%.bbappend | 11 +++-
recipes-core/glib-2.0/glib-2.0_%.bbappend | 17 +++++-
recipes-devtools/gcc/libgcc_%.bbappend | 8 ++-
.../mingw-w64/nativesdk-mingw-w64-headers_3.1.0.bb | 4 ++
recipes-graphics/libsdl/libsdl_%.bbappend | 9 +++
...c-Set-mym4_revision-to-0-if-not-a-git-rep.patch | 46 +++++++++++++++
recipes-support/libgcrypt/libgcrypt_%.bbappend | 11 ++++
recipes-support/libgcrypt/libgcrypt_1.7.3.bbappend | 6 ++
...c-Set-mym4_revision-to-0-if-not-a-git-rep.patch | 46 +++++++++++++++
.../libgpg-error/libgpg-error_%.bbappend | 3 +
.../libgpg-error/libgpg-error_1.25.bbappend | 6 ++
recipes-support/libpcre/libpcre_%.bbappend | 6 ++
15 files changed, 255 insertions(+), 4 deletions(-)
create mode 100644 recipes-core/dtc/dtc_%.bbappend
create mode 100644 recipes-core/expat/expat_%.bbappend
create mode 100644 recipes-core/gettext/gettext/fix-gl_cv_prog_as_underscore-test.patch
create mode 100644 recipes-graphics/libsdl/libsdl_%.bbappend
create mode 100644 recipes-support/libgcrypt/files/configure.ac-Set-mym4_revision-to-0-if-not-a-git-rep.patch
create mode 100644 recipes-support/libgcrypt/libgcrypt_%.bbappend
create mode 100644 recipes-support/libgcrypt/libgcrypt_1.7.3.bbappend
create mode 100644 recipes-support/libgpg-error/files/configure.ac-Set-mym4_revision-to-0-if-not-a-git-rep.patch
create mode 100644 recipes-support/libgpg-error/libgpg-error_%.bbappend
create mode 100644 recipes-support/libgpg-error/libgpg-error_1.25.bbappend
create mode 100644 recipes-support/libpcre/libpcre_%.bbappend
--
2.11.0
^ permalink raw reply [flat|nested] 3+ messages in thread
* [meta-mingw][PATCH 1/19] mingw-w64-headers: Add 'secure-api' PACKAGECONFIG
2017-01-30 8:41 [meta-mingw][PATCH 0/19] Adding support for building QEMU for Windows Nathan Rossi
@ 2017-01-30 8:41 ` Nathan Rossi
2017-01-30 8:44 ` [meta-mingw][PATCH 0/19] Adding support for building QEMU for Windows Nathan Rossi
1 sibling, 0 replies; 3+ messages in thread
From: Nathan Rossi @ 2017-01-30 8:41 UTC (permalink / raw)
To: yocto; +Cc: Alistair Francis
Add the 'secure-api' PACKAGECONFIG and enable it by default. The
'secure-api' feature enables the secure string functions that are
provided in the MS C Runtime e.g. "strerror_s".
These functions are needed for glib-2.0 compilation.
Signed-off-by: Nathan Rossi <nathan@nathanrossi.com>
---
| 4 ++++
1 file changed, 4 insertions(+)
--git a/recipes-devtools/mingw-w64/nativesdk-mingw-w64-headers_3.1.0.bb b/recipes-devtools/mingw-w64/nativesdk-mingw-w64-headers_3.1.0.bb
index 06312d604e..5cd4e34e09 100644
--- a/recipes-devtools/mingw-w64/nativesdk-mingw-w64-headers_3.1.0.bb
+++ b/recipes-devtools/mingw-w64/nativesdk-mingw-w64-headers_3.1.0.bb
@@ -18,6 +18,10 @@ inherit autotools nativesdk
INHIBIT_DEFAULT_DEPS = "1"
DEPENDS = ""
+PACKAGECONFIG ??= "secure-api"
+
+PACKAGECONFIG[secure-api] = "--enable-secure-api,--disable-secure-api"
+
do_configure() {
oe_runconf
}
--
2.11.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [meta-mingw][PATCH 0/19] Adding support for building QEMU for Windows
2017-01-30 8:41 [meta-mingw][PATCH 0/19] Adding support for building QEMU for Windows Nathan Rossi
2017-01-30 8:41 ` [meta-mingw][PATCH 1/19] mingw-w64-headers: Add 'secure-api' PACKAGECONFIG Nathan Rossi
@ 2017-01-30 8:44 ` Nathan Rossi
1 sibling, 0 replies; 3+ messages in thread
From: Nathan Rossi @ 2017-01-30 8:44 UTC (permalink / raw)
To: yocto; +Cc: Alistair Francis
Sorry this should have v2 in the subject. I realized just as the
second patch was sent. I've resent with v2 for clarity.
Regards,
Nathan
On 30 January 2017 at 18:41, Nathan Rossi <nathan@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/
>
> A branch which has the series above merged has been published to allow
> for easy testing, it is available at:
>
> https://github.com/nathanrossi/openembedded-core testing/mingw-support-2017-01-30
>
> ---
>
> Changes v2:
> * Moved a number of patches from oe-core series to this series
> * Updated cover letter to reflect series additional inclusion
> * Bring cover letter info from oe-core/meta series
> * Updated commit messages
>
> Nathan Rossi (19):
> mingw-w64-headers: Add 'secure-api' PACKAGECONFIG
> libgcc: Relocate and package dll's in bindir
> expat: Fix ${PN}-bin handling for .exe files
> libpcre: Handle shipping .exe and .dll files for mingw32
> gettext_0.19.%.bbappend: Fix/enable shared building of gettext
> gettext_0.19.%.bbappend: Handle packaging .dll's for mingw32
> gettext_0.19.%.bbappend: Handle gettext-libintl .dll packaging
> glib-2.0: Prevent a bash dependency via bash-completion
> glib-2.0: Disable libmount support for mingw32 targets
> glib-2.0: Handle packaging .dll and .exe files for mingw32
> glib-2.0: Clean up unnecessary appends that are resolved in oe-core
> dtc: Only build libfdt for mingw32
> libsdl: Windows specific PACKAGECONFIG
> libsdl: Fix ${PN}-bin handling for .exe files
> libgpg-error: Handle packaging .exe files
> libgpg-error_1.25.bbappend: Add patch to fix configure bug for mingw32
> libgcrypt: Handle packaging of .exe and .def files
> libgcrypt: Disable 'capabilities' for mingw32
> libgcrypt_1.7.3.bbappend: Add patch to fix configure bug for mingw32
>
> recipes-core/dtc/dtc_%.bbappend | 16 ++++++
> recipes-core/expat/expat_%.bbappend | 3 +
> .../fix-gl_cv_prog_as_underscore-test.patch | 67 ++++++++++++++++++++++
> recipes-core/gettext/gettext_0.19.%.bbappend | 11 +++-
> recipes-core/glib-2.0/glib-2.0_%.bbappend | 17 +++++-
> recipes-devtools/gcc/libgcc_%.bbappend | 8 ++-
> .../mingw-w64/nativesdk-mingw-w64-headers_3.1.0.bb | 4 ++
> recipes-graphics/libsdl/libsdl_%.bbappend | 9 +++
> ...c-Set-mym4_revision-to-0-if-not-a-git-rep.patch | 46 +++++++++++++++
> recipes-support/libgcrypt/libgcrypt_%.bbappend | 11 ++++
> recipes-support/libgcrypt/libgcrypt_1.7.3.bbappend | 6 ++
> ...c-Set-mym4_revision-to-0-if-not-a-git-rep.patch | 46 +++++++++++++++
> .../libgpg-error/libgpg-error_%.bbappend | 3 +
> .../libgpg-error/libgpg-error_1.25.bbappend | 6 ++
> recipes-support/libpcre/libpcre_%.bbappend | 6 ++
> 15 files changed, 255 insertions(+), 4 deletions(-)
> create mode 100644 recipes-core/dtc/dtc_%.bbappend
> create mode 100644 recipes-core/expat/expat_%.bbappend
> create mode 100644 recipes-core/gettext/gettext/fix-gl_cv_prog_as_underscore-test.patch
> create mode 100644 recipes-graphics/libsdl/libsdl_%.bbappend
> create mode 100644 recipes-support/libgcrypt/files/configure.ac-Set-mym4_revision-to-0-if-not-a-git-rep.patch
> create mode 100644 recipes-support/libgcrypt/libgcrypt_%.bbappend
> create mode 100644 recipes-support/libgcrypt/libgcrypt_1.7.3.bbappend
> create mode 100644 recipes-support/libgpg-error/files/configure.ac-Set-mym4_revision-to-0-if-not-a-git-rep.patch
> create mode 100644 recipes-support/libgpg-error/libgpg-error_%.bbappend
> create mode 100644 recipes-support/libgpg-error/libgpg-error_1.25.bbappend
> create mode 100644 recipes-support/libpcre/libpcre_%.bbappend
>
> --
> 2.11.0
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2017-01-30 8:44 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-30 8:41 [meta-mingw][PATCH 0/19] Adding support for building QEMU for Windows Nathan Rossi
2017-01-30 8:41 ` [meta-mingw][PATCH 1/19] mingw-w64-headers: Add 'secure-api' PACKAGECONFIG Nathan Rossi
2017-01-30 8:44 ` [meta-mingw][PATCH 0/19] Adding support for building QEMU for Windows Nathan Rossi
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.