diff --git a/package/mesa3d/Config.in b/package/mesa3d/Config.in index 9a5183915d..295a26cb6d 100644 --- a/package/mesa3d/Config.in +++ b/package/mesa3d/Config.in @@ -4,6 +4,7 @@ menuconfig BR2_PACKAGE_MESA3D depends on !BR2_STATIC_LIBS depends on BR2_TOOLCHAIN_HAS_SYNC_1 depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL + depends on !BR2_m68k || BR2_TOOLCHAIN_GCC_AT_LEAST_7 # m68k needs gcc >= 7.x select BR2_PACKAGE_EXPAT select BR2_PACKAGE_LIBDRM select BR2_PACKAGE_WAYLAND_PROTOCOLS if BR2_PACKAGE_WAYLAND @@ -462,3 +463,7 @@ comment "mesa3d needs a toolchain w/ C++, NPTL, dynamic library" depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \ BR2_STATIC_LIBS depends on BR2_TOOLCHAIN_HAS_SYNC_1 + +comment "mesa3d needs a toolchain w/ gcc >= 7" + depends on BR2_m68k + depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_7 diff --git a/package/mesa3d/mesa3d.mk b/package/mesa3d/mesa3d.mk index ca44a66e54..ca8dac8959 100644 --- a/package/mesa3d/mesa3d.mk +++ b/package/mesa3d/mesa3d.mk @@ -260,4 +260,13 @@ else MESA3D_CONF_OPTS += -Dzstd=disabled endif +MESA3D_CFLAGS = $(TARGET_CFLAGS) + +# m68k needs 32-bit offsets in switch tables to build +ifeq ($(BR2_m68k),y) +MESA3D_CFLAGS += -mlong-jump-table-offsets +endif + +MESA3D_CONF_OPTS += -DCMAKE_C_FLAGS="$(MESA3D_CFLAGS)" + $(eval $(meson-package))