dbus: switching back to autotools to fix big endian issue

According to the upstream developers of dbus, cmake is only inteded for
windows. Unix like operating systems should continue to use the
autotools stack.

Since the changeover to cmake, the dbus was no longer usable on all big
endian systems because the name binding no longer worked.

In cmake, it is not evaluated whether it should run on a little endian
or big endian system.

This fixes issue #17780. The original problem occurred when using the
modem manager on the big endian system (MIPS).

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
This commit is contained in:
Florian Eckert 2022-02-04 11:30:38 +01:00
parent 2b28e3dfdb
commit da442b467d
1 changed files with 33 additions and 21 deletions

View File

@ -19,11 +19,13 @@ PKG_MAINTAINER:=
PKG_LICENSE:=AFL-2.1
PKG_CPE_ID:=cpe:/a:freedesktop:dbus
PKG_BUILD_PARALLEL:=1
PKG_INSTALL:=1
PKG_CONFIG_DEPENDS:= \
CONFIG_DBUS_VERBOSE
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
define Package/dbus/Default
SECTION:=utils
@ -78,27 +80,37 @@ define Package/dbus/config
source "$(SOURCE)/Config.in"
endef
CMAKE_OPTIONS += \
-DDBUS_SYSTEM_SOCKET=/var/run/dbus/system_bus_socket \
-DDBUS_SESSION_SOCKET_DIR=/tmp \
-DDBUS_BUILD_TESTS=OFF \
-DDBUS_LINUX=ON \
-DDBUS_DISABLE_ASSERT=ON \
-DBUS_ENABLE_STATS=OFF \
-DDBUS_ENABLE_CONTAINERS=OFF \
-DENABLE_SYSTEMD=OFF \
-DDBUS_BUS_ENABLE_SYSTEMD=OFF \
-DHAVE_SYSTEMD=OFF \
-DDBUS_WITH_GLIB=OFF \
-DDBUS_ENABLE_VERBOSE_MODE=OFF \
-DDBUS_DISABLE_CHECKS=ON \
-DDBUS_BUILD_X11=OFF \
-DDBUS_ENABLE_DOXYGEN_DOCS=OFF \
-DDBUS_ENABLE_QTHELP_DOCS=OFF \
-DDBUS_ENABLE_XML_DOCS=OFF
CONFIGURE_ARGS += \
--disable-maintainer-mode \
--disable-developer \
--enable-debug=no \
--enable-shared \
--disable-static \
--disable-verbose-mode \
--disable-asserts \
--disable-xml-docs \
--disable-doxygen-docs \
--disable-ducktype-docs \
--disable-selinux \
--disable-apparmor \
--disable-libaudit \
--enable-inotify \
--disable-kqueue \
--disable-console-owner-file \
--disable-systemd \
--disable-tests \
--disable-code-coverage \
--disable-x11-autolaunch \
--with-session-socket-dir=/tmp \
--with-system-socket=/var/run/dbus/system_bus_socket \
--with-system-pid-file=/var/run/dbus.pid \
--with-dbus-user=root \
--without-x \
--enable-qt-help=no \
--disable-xml-docs
ifeq ($(CONFIG_DBUS_VERBOSE),y)
CMAKE_OPTIONS += -DDBUS_ENABLE_VERBOSE_MODE=ON
CONFIGURE_ARGS += --disable-verbose-mode
endif
define Build/InstallDev
@ -130,7 +142,7 @@ define Package/dbus/install
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/dbus-uuidgen $(1)/usr/bin/
$(INSTALL_BIN) ./files/dbus-launch $(1)/usr/bin/
$(INSTALL_DIR) $(1)/usr/lib
$(INSTALL_BIN) $(PKG_BUILD_DIR)/bin/dbus-daemon-launch-helper $(1)/usr/lib/
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/lib/dbus-daemon-launch-helper $(1)/usr/lib/
$(INSTALL_DIR) $(1)/etc/init.d
$(INSTALL_BIN) ./files/dbus.init $(1)/etc/init.d/dbus
$(INSTALL_DIR) $(1)/usr/share/dbus-1