From mboxrd@z Thu Jan 1 00:00:00 1970 From: Romain Naour Date: Tue, 1 May 2018 17:01:27 +0200 Subject: [Buildroot] [PATCH 2/2] qemu: add support for python 3.6 In-Reply-To: <20180427154055.23272-2-aduskett@gmail.com> References: <20180427154055.23272-1-aduskett@gmail.com> <20180427154055.23272-2-aduskett@gmail.com> Message-ID: <068f2f4d-47c0-4c07-0f71-a5bc90a40ad2@gmail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: buildroot@busybox.net Hi Adam, Le 27/04/2018 ? 17:40, Adam Duskett a ?crit?: > qemu 2.12.0 now supports building against python3. > see: https://wiki.qemu.org/ChangeLog/2.12#Build_Dependencies > > Signed-off-by: Adam Duskett > --- > package/qemu/qemu.mk | 20 +++++++++++++++----- > 1 file changed, 15 insertions(+), 5 deletions(-) > > diff --git a/package/qemu/qemu.mk b/package/qemu/qemu.mk > index 975dfba490..6a24e2848d 100644 > --- a/package/qemu/qemu.mk > +++ b/package/qemu/qemu.mk > @@ -16,7 +16,7 @@ QEMU_LICENSE_FILES = COPYING COPYING.LIB > #------------------------------------------------------------- > # Host-qemu > > -HOST_QEMU_DEPENDENCIES = host-pkgconf host-python host-zlib host-libglib2 host-pixman > +HOST_QEMU_DEPENDENCIES = host-pkgconf host-zlib host-libglib2 host-pixman > > # BR ARCH qemu > # ------- ---- > @@ -119,6 +119,16 @@ HOST_QEMU_OPTS += --enable-vde > HOST_QEMU_DEPENDENCIES += host-vde2 > endif > > +ifeq ($(BR2_PACKAGE_PYTHON3),y) > +HOST_QEMU_DEPENDENCIES += host-python3 > +QEMU_DEPENDENCIES += host-python3 > +QEMU_PYLIBVER = python$(PYTHON3_VERSION_MAJOR) > +else > +HOST_QEMU_DEPENDENCIES += host-python > +QEMU_DEPENDENCIES += host-python This doesn't work since you're using QEMU_DEPENDENCIES bellow $(eval $(generic-package)). host-python is missing from qemu (target) dependencies. I had a build issue with make qemu. Best regards, Romain > +QEMU_PYLIBVER = python$(PYTHON_VERSION_MAJOR) > +endif > + > # Override CPP, as it expects to be able to call it like it'd > # call the compiler. > define HOST_QEMU_CONFIGURE_CMDS > @@ -129,7 +139,7 @@ define HOST_QEMU_CONFIGURE_CMDS > --interp-prefix=$(STAGING_DIR) \ > --cc="$(HOSTCC)" \ > --host-cc="$(HOSTCC)" \ > - --python=$(HOST_DIR)/bin/python2 \ > + --python=$(HOST_DIR)/bin/$(QEMU_PYLIBVER) \ > --extra-cflags="$(HOST_CFLAGS)" \ > --extra-ldflags="$(HOST_LDFLAGS)" \ > $(HOST_QEMU_OPTS) > @@ -151,7 +161,7 @@ QEMU_USER = $(HOST_DIR)/bin/qemu-$(HOST_QEMU_ARCH) > #------------------------------------------------------------- > # Target-qemu > > -QEMU_DEPENDENCIES = host-pkgconf host-python libglib2 zlib pixman > +QEMU_DEPENDENCIES = host-pkgconf libglib2 zlib pixman > > # Need the LIBS variable because librt and libm are > # not automatically pulled. :-( > @@ -161,8 +171,8 @@ QEMU_OPTS = > > QEMU_VARS = \ > LIBTOOL=$(HOST_DIR)/bin/libtool \ > - PYTHON=$(HOST_DIR)/bin/python2 \ > - PYTHONPATH=$(TARGET_DIR)/usr/lib/python$(PYTHON_VERSION_MAJOR)/site-packages > + PYTHON=$(HOST_DIR)/bin/$(QEMU_PYLIBVER) \ > + PYTHONPATH=$(TARGET_DIR)/usr/lib/$(QEMU_PYLIBVER)/site-packages > > # If we want to specify only a subset of targets, we must still enable all > # of them, so that QEMU properly builds its list of default targets, from >