Message ID | 20211203215438.213437-1-nolange79@gmail.com |
---|---|
State | Accepted |
Headers | show |
Series | [v3,1/2] package/pkg-meson: separate infrastructure logic from package | expand |
On 03/12/2021 22:54, Norbert Lange wrote: > Move all logic related to handling meson packages to the > package/pkg-meson file. This now mirrors the other build > systems and keeps the package itself clean. > > Correctly prefix variables with PKG_MESON_ > > Signed-off-by: Norbert Lange <nolange79@gmail.com> > --- > v2->v3: > - rebase, split up the moving > > v1->v2: > - squash 2 commits, really hard to separate as moving and renaming > variables from 2 to one location affects alot code. > - use TOOLCHAIN_POST_INSTALL_STAGING_HOOKS again. > - consistently use double quotes for sed patterns > > Signed-off-by: Norbert Lange <nolange79@gmail.com> > --- > package/meson/meson.mk | 38 -------------------------------------- > package/pkg-meson.mk | 40 +++++++++++++++++++++++++++++++++++++++- > 2 files changed, 39 insertions(+), 39 deletions(-) > > diff --git a/package/meson/meson.mk b/package/meson/meson.mk > index a8c846126a..5553c15d91 100644 > --- a/package/meson/meson.mk > +++ b/package/meson/meson.mk > @@ -13,44 +13,6 @@ MESON_SETUP_TYPE = setuptools > HOST_MESON_DEPENDENCIES = host-ninja > HOST_MESON_NEEDS_HOST_PYTHON = python3 > > -HOST_MESON_TARGET_ENDIAN = $(call qstrip,$(call LOWERCASE,$(BR2_ENDIAN))) > -HOST_MESON_TARGET_CPU = $(GCC_TARGET_CPU) > - > -# https://mesonbuild.com/Reference-tables.html#cpu-families > -ifeq ($(BR2_arcle)$(BR2_arceb),y) > -HOST_MESON_TARGET_CPU_FAMILY = arc > -else ifeq ($(BR2_arm)$(BR2_armeb),y) > -HOST_MESON_TARGET_CPU_FAMILY = arm > -else ifeq ($(BR2_aarch64)$(BR2_aarch64_be),y) > -HOST_MESON_TARGET_CPU_FAMILY = aarch64 > -else ifeq ($(BR2_i386),y) > -HOST_MESON_TARGET_CPU_FAMILY = x86 > -else ifeq ($(BR2_m68k),y) > -HOST_MESON_TARGET_CPU_FAMILY = m68k > -else ifeq ($(BR2_microblazeel)$(BR2_microblazebe),y) > -HOST_MESON_TARGET_CPU_FAMILY = microblaze > -else ifeq ($(BR2_mips)$(BR2_mipsel),y) > -HOST_MESON_TARGET_CPU_FAMILY = mips > -else ifeq ($(BR2_mips64)$(BR2_mips64el),y) > -HOST_MESON_TARGET_CPU_FAMILY = mips64 > -else ifeq ($(BR2_powerpc),y) > -HOST_MESON_TARGET_CPU_FAMILY = ppc > -else ifeq ($(BR2_powerpc64)$(BR2_powerpc64le),y) > -HOST_MESON_TARGET_CPU_FAMILY = ppc64 > -else ifeq ($(BR2_riscv),y) > -HOST_MESON_TARGET_CPU_FAMILY = riscv64 > -else ifeq ($(BR2_sh4)$(BR2_sh4eb)$(BR2_sh4a)$(BR2_sh4aeb),y) > -HOST_MESON_TARGET_CPU_FAMILY = sh4 > -else ifeq ($(BR2_sparc),y) > -HOST_MESON_TARGET_CPU_FAMILY = sparc > -else ifeq ($(BR2_sparc64),y) > -HOST_MESON_TARGET_CPU_FAMILY = sparc64 > -else ifeq ($(BR2_x86_64),y) > -HOST_MESON_TARGET_CPU_FAMILY = x86_64 > -else > -HOST_MESON_TARGET_CPU_FAMILY = $(ARCH) > -endif > - > # Avoid interpreter shebang longer than 128 chars > define HOST_MESON_SET_INTERPRETER > $(SED) '1s:.*:#!/usr/bin/env python3:' $(HOST_DIR)/bin/meson > diff --git a/package/pkg-meson.mk b/package/pkg-meson.mk > index 16a90d157b..4914486665 100644 > --- a/package/pkg-meson.mk > +++ b/package/pkg-meson.mk > @@ -185,9 +185,47 @@ meson-package = $(call inner-meson-package,$(pkgname),$(call UPPERCASE,$(pkgname > host-meson-package = $(call inner-meson-package,host-$(pkgname),$(call UPPERCASE,host-$(pkgname)),$(call UPPERCASE,$(pkgname)),host) > > ################################################################################ > -# Generation of the Meson cross-compilation.conf file > +# Generation of the Meson compile flags and cross-compilation file > ################################################################################ > > +# https://mesonbuild.com/Reference-tables.html#cpu-families > +ifeq ($(BR2_arcle)$(BR2_arceb),y) > +PKG_MESON_TARGET_CPU_FAMILY = arc > +else ifeq ($(BR2_arm)$(BR2_armeb),y) > +PKG_MESON_TARGET_CPU_FAMILY = arm > +else ifeq ($(BR2_aarch64)$(BR2_aarch64_be),y) > +PKG_MESON_TARGET_CPU_FAMILY = aarch64 > +else ifeq ($(BR2_i386),y) > +PKG_MESON_TARGET_CPU_FAMILY = x86 > +else ifeq ($(BR2_m68k),y) > +PKG_MESON_TARGET_CPU_FAMILY = m68k > +else ifeq ($(BR2_microblazeel)$(BR2_microblazebe),y) > +PKG_MESON_TARGET_CPU_FAMILY = microblaze > +else ifeq ($(BR2_mips)$(BR2_mipsel),y) > +PKG_MESON_TARGET_CPU_FAMILY = mips > +else ifeq ($(BR2_mips64)$(BR2_mips64el),y) > +PKG_MESON_TARGET_CPU_FAMILY = mips64 > +else ifeq ($(BR2_powerpc),y) > +PKG_MESON_TARGET_CPU_FAMILY = ppc > +else ifeq ($(BR2_powerpc64)$(BR2_powerpc64le),y) > +PKG_MESON_TARGET_CPU_FAMILY = ppc64 > +else ifeq ($(BR2_riscv),y) > +PKG_MESON_TARGET_CPU_FAMILY = riscv64 > +else ifeq ($(BR2_sh4)$(BR2_sh4eb)$(BR2_sh4a)$(BR2_sh4aeb),y) > +PKG_MESON_TARGET_CPU_FAMILY = sh4 > +else ifeq ($(BR2_sparc),y) > +PKG_MESON_TARGET_CPU_FAMILY = sparc > +else ifeq ($(BR2_sparc64),y) > +PKG_MESON_TARGET_CPU_FAMILY = sparc64 > +else ifeq ($(BR2_x86_64),y) > +PKG_MESON_TARGET_CPU_FAMILY = x86_64 > +else > +PKG_MESON_TARGET_CPU_FAMILY = $(ARCH) > +endif > + > +HOST_MESON_TARGET_ENDIAN = $(call qstrip,$(call LOWERCASE,$(BR2_ENDIAN))) > +HOST_MESON_TARGET_CPU = $(GCC_TARGET_CPU) I moved all this to the beginning of the file, since it's (indirectly) used within inner-meson-package. Applied to master with that changed, thanks. Regards, Arnout > + > # Generate a Meson cross-compilation.conf suitable for use with the > # SDK; also install the file as a template for users to add their > # own flags if they need to.
diff --git a/package/meson/meson.mk b/package/meson/meson.mk index a8c846126a..5553c15d91 100644 --- a/package/meson/meson.mk +++ b/package/meson/meson.mk @@ -13,44 +13,6 @@ MESON_SETUP_TYPE = setuptools HOST_MESON_DEPENDENCIES = host-ninja HOST_MESON_NEEDS_HOST_PYTHON = python3 -HOST_MESON_TARGET_ENDIAN = $(call qstrip,$(call LOWERCASE,$(BR2_ENDIAN))) -HOST_MESON_TARGET_CPU = $(GCC_TARGET_CPU) - -# https://mesonbuild.com/Reference-tables.html#cpu-families -ifeq ($(BR2_arcle)$(BR2_arceb),y) -HOST_MESON_TARGET_CPU_FAMILY = arc -else ifeq ($(BR2_arm)$(BR2_armeb),y) -HOST_MESON_TARGET_CPU_FAMILY = arm -else ifeq ($(BR2_aarch64)$(BR2_aarch64_be),y) -HOST_MESON_TARGET_CPU_FAMILY = aarch64 -else ifeq ($(BR2_i386),y) -HOST_MESON_TARGET_CPU_FAMILY = x86 -else ifeq ($(BR2_m68k),y) -HOST_MESON_TARGET_CPU_FAMILY = m68k -else ifeq ($(BR2_microblazeel)$(BR2_microblazebe),y) -HOST_MESON_TARGET_CPU_FAMILY = microblaze -else ifeq ($(BR2_mips)$(BR2_mipsel),y) -HOST_MESON_TARGET_CPU_FAMILY = mips -else ifeq ($(BR2_mips64)$(BR2_mips64el),y) -HOST_MESON_TARGET_CPU_FAMILY = mips64 -else ifeq ($(BR2_powerpc),y) -HOST_MESON_TARGET_CPU_FAMILY = ppc -else ifeq ($(BR2_powerpc64)$(BR2_powerpc64le),y) -HOST_MESON_TARGET_CPU_FAMILY = ppc64 -else ifeq ($(BR2_riscv),y) -HOST_MESON_TARGET_CPU_FAMILY = riscv64 -else ifeq ($(BR2_sh4)$(BR2_sh4eb)$(BR2_sh4a)$(BR2_sh4aeb),y) -HOST_MESON_TARGET_CPU_FAMILY = sh4 -else ifeq ($(BR2_sparc),y) -HOST_MESON_TARGET_CPU_FAMILY = sparc -else ifeq ($(BR2_sparc64),y) -HOST_MESON_TARGET_CPU_FAMILY = sparc64 -else ifeq ($(BR2_x86_64),y) -HOST_MESON_TARGET_CPU_FAMILY = x86_64 -else -HOST_MESON_TARGET_CPU_FAMILY = $(ARCH) -endif - # Avoid interpreter shebang longer than 128 chars define HOST_MESON_SET_INTERPRETER $(SED) '1s:.*:#!/usr/bin/env python3:' $(HOST_DIR)/bin/meson diff --git a/package/pkg-meson.mk b/package/pkg-meson.mk index 16a90d157b..4914486665 100644 --- a/package/pkg-meson.mk +++ b/package/pkg-meson.mk @@ -185,9 +185,47 @@ meson-package = $(call inner-meson-package,$(pkgname),$(call UPPERCASE,$(pkgname host-meson-package = $(call inner-meson-package,host-$(pkgname),$(call UPPERCASE,host-$(pkgname)),$(call UPPERCASE,$(pkgname)),host) ################################################################################ -# Generation of the Meson cross-compilation.conf file +# Generation of the Meson compile flags and cross-compilation file ################################################################################ +# https://mesonbuild.com/Reference-tables.html#cpu-families +ifeq ($(BR2_arcle)$(BR2_arceb),y) +PKG_MESON_TARGET_CPU_FAMILY = arc +else ifeq ($(BR2_arm)$(BR2_armeb),y) +PKG_MESON_TARGET_CPU_FAMILY = arm +else ifeq ($(BR2_aarch64)$(BR2_aarch64_be),y) +PKG_MESON_TARGET_CPU_FAMILY = aarch64 +else ifeq ($(BR2_i386),y) +PKG_MESON_TARGET_CPU_FAMILY = x86 +else ifeq ($(BR2_m68k),y) +PKG_MESON_TARGET_CPU_FAMILY = m68k +else ifeq ($(BR2_microblazeel)$(BR2_microblazebe),y) +PKG_MESON_TARGET_CPU_FAMILY = microblaze +else ifeq ($(BR2_mips)$(BR2_mipsel),y) +PKG_MESON_TARGET_CPU_FAMILY = mips +else ifeq ($(BR2_mips64)$(BR2_mips64el),y) +PKG_MESON_TARGET_CPU_FAMILY = mips64 +else ifeq ($(BR2_powerpc),y) +PKG_MESON_TARGET_CPU_FAMILY = ppc +else ifeq ($(BR2_powerpc64)$(BR2_powerpc64le),y) +PKG_MESON_TARGET_CPU_FAMILY = ppc64 +else ifeq ($(BR2_riscv),y) +PKG_MESON_TARGET_CPU_FAMILY = riscv64 +else ifeq ($(BR2_sh4)$(BR2_sh4eb)$(BR2_sh4a)$(BR2_sh4aeb),y) +PKG_MESON_TARGET_CPU_FAMILY = sh4 +else ifeq ($(BR2_sparc),y) +PKG_MESON_TARGET_CPU_FAMILY = sparc +else ifeq ($(BR2_sparc64),y) +PKG_MESON_TARGET_CPU_FAMILY = sparc64 +else ifeq ($(BR2_x86_64),y) +PKG_MESON_TARGET_CPU_FAMILY = x86_64 +else +PKG_MESON_TARGET_CPU_FAMILY = $(ARCH) +endif + +HOST_MESON_TARGET_ENDIAN = $(call qstrip,$(call LOWERCASE,$(BR2_ENDIAN))) +HOST_MESON_TARGET_CPU = $(GCC_TARGET_CPU) + # Generate a Meson cross-compilation.conf suitable for use with the # SDK; also install the file as a template for users to add their # own flags if they need to.