Message ID | 20201017011356.50029-1-aman@tmm1.net |
---|---|
State | Changes Requested |
Headers | show |
Series | [1/1] package/rpi-userland: build on arm64 | expand |
Aman, All, Thanks fior this patch. However, I have some comments about it, see below... On 2020-10-16 18:13 -0700, Aman Karmani spake thusly: > Parts of the userland (such as `vcgencmd`) are now usable on aarch64 This has already been proposed a few times already (review all the messages in those threads): http://lists.busybox.net/pipermail/buildroot/2020-August/289559.html http://lists.busybox.net/pipermail/buildroot/2020-January/271577.html There, it was pointed out that the set of libraries instaleld on AArch64 is different from AArch32, and most notably "no libegl, libgles, libopenmax, libopenvg" are built and installed. This means that rpi-userland couldn't be an EGL or GLES or OPENMAX provider when building for AArch64. Has that situation improved now? Regards, Yann E. MORIN. > Signed-off-by: Aman Karmani <aman@tmm1.net> > --- > package/rpi-userland/Config.in | 4 ++-- > package/rpi-userland/rpi-userland.mk | 6 ++++++ > 2 files changed, 8 insertions(+), 2 deletions(-) > > diff --git a/package/rpi-userland/Config.in b/package/rpi-userland/Config.in > index 342faf26e3..81f3588822 100644 > --- a/package/rpi-userland/Config.in > +++ b/package/rpi-userland/Config.in > @@ -1,6 +1,6 @@ > config BR2_PACKAGE_RPI_USERLAND > bool "rpi-userland" > - depends on BR2_arm > + depends on BR2_arm || BR2_aarch64 > depends on BR2_INSTALL_LIBSTDCPP > depends on BR2_TOOLCHAIN_HAS_THREADS > depends on !BR2_STATIC_LIBS > @@ -40,6 +40,6 @@ config BR2_PACKAGE_RPI_USERLAND_HELLO > endif > > comment "rpi-userland needs a toolchain w/ C++, threads, dynamic library" > - depends on BR2_arm > + depends on BR2_arm || BR2_aarch64 > depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ > BR2_STATIC_LIBS > diff --git a/package/rpi-userland/rpi-userland.mk b/package/rpi-userland/rpi-userland.mk > index 4cfd5cb832..97270f2eb4 100644 > --- a/package/rpi-userland/rpi-userland.mk > +++ b/package/rpi-userland/rpi-userland.mk > @@ -13,6 +13,12 @@ RPI_USERLAND_CONF_OPTS = -DVMCS_INSTALL_PREFIX=/usr > > RPI_USERLAND_PROVIDES = libegl libgles libopenmax libopenvg > > +ifeq ($(BR2_aarch64),y) > + > +RPI_USERLAND_CONF_OPTS += -DARM64=ON > + > +endif > + > ifeq ($(BR2_PACKAGE_RPI_USERLAND_HELLO),y) > > RPI_USERLAND_CONF_OPTS += -DALL_APPS=ON > -- > 2.28.0 > > _______________________________________________ > buildroot mailing list > buildroot@busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot
Aman, All, [sorry, I hit 'send' too early; see more review below...] On 2020-10-17 10:25 +0200, Yann E. MORIN spake thusly: > On 2020-10-16 18:13 -0700, Aman Karmani spake thusly: > > Parts of the userland (such as `vcgencmd`) are now usable on aarch64 > This has already been proposed a few times already (review all the > messages in those threads): > > http://lists.busybox.net/pipermail/buildroot/2020-August/289559.html > http://lists.busybox.net/pipermail/buildroot/2020-January/271577.html > > There, it was pointed out that the set of libraries instaleld on AArch64 > is different from AArch32, and most notably "no libegl, libgles, > libopenmax, libopenvg" are built and installed. > > This means that rpi-userland couldn't be an EGL or GLES or OPENMAX > provider when building for AArch64. > > Has that situation improved now? If the situation is better now, then please address that in the commit log. If not, please see the the aforementioned threads for suggested improvements (like making the EGL/GLES/OPENMAX provider conditional). Please note that there is one big question, about libfdt, in one of those threads, which must be addressed too (although it does not seem to be AArch64-related?). For now, I've marked this patch as changes requested. Regards, Yann E. MORIN.
diff --git a/package/rpi-userland/Config.in b/package/rpi-userland/Config.in index 342faf26e3..81f3588822 100644 --- a/package/rpi-userland/Config.in +++ b/package/rpi-userland/Config.in @@ -1,6 +1,6 @@ config BR2_PACKAGE_RPI_USERLAND bool "rpi-userland" - depends on BR2_arm + depends on BR2_arm || BR2_aarch64 depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS depends on !BR2_STATIC_LIBS @@ -40,6 +40,6 @@ config BR2_PACKAGE_RPI_USERLAND_HELLO endif comment "rpi-userland needs a toolchain w/ C++, threads, dynamic library" - depends on BR2_arm + depends on BR2_arm || BR2_aarch64 depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ BR2_STATIC_LIBS diff --git a/package/rpi-userland/rpi-userland.mk b/package/rpi-userland/rpi-userland.mk index 4cfd5cb832..97270f2eb4 100644 --- a/package/rpi-userland/rpi-userland.mk +++ b/package/rpi-userland/rpi-userland.mk @@ -13,6 +13,12 @@ RPI_USERLAND_CONF_OPTS = -DVMCS_INSTALL_PREFIX=/usr RPI_USERLAND_PROVIDES = libegl libgles libopenmax libopenvg +ifeq ($(BR2_aarch64),y) + +RPI_USERLAND_CONF_OPTS += -DARM64=ON + +endif + ifeq ($(BR2_PACKAGE_RPI_USERLAND_HELLO),y) RPI_USERLAND_CONF_OPTS += -DALL_APPS=ON
Parts of the userland (such as `vcgencmd`) are now usable on aarch64 Signed-off-by: Aman Karmani <aman@tmm1.net> --- package/rpi-userland/Config.in | 4 ++-- package/rpi-userland/rpi-userland.mk | 6 ++++++ 2 files changed, 8 insertions(+), 2 deletions(-)