diff --git a/srcpkgs/ModemManager/patches/fix-musl.patch b/srcpkgs/ModemManager/patches/fix-musl.patch new file mode 100644 index 00000000000..d2c5ecda6da --- /dev/null +++ b/srcpkgs/ModemManager/patches/fix-musl.patch @@ -0,0 +1,51 @@ +Source: maxice8 +Upstream: no. Feel free. +Reason: fixes compilation on musl + +--- src/kerneldevice/mm-kernel-device-generic.c ++++ src/kerneldevice/mm-kernel-device-generic.c +@@ -120,7 +120,7 @@ preload_sysfs_path (MMKernelDeviceGeneric *self) + mm_kernel_event_properties_get_subsystem (self->priv->properties), + mm_kernel_event_properties_get_name (self->priv->properties)); + +- self->priv->sysfs_path = canonicalize_file_name (tmp); ++ self->priv->sysfs_path = realpath(tmp, NULL); + if (!self->priv->sysfs_path || !g_file_test (self->priv->sysfs_path, G_FILE_TEST_EXISTS)) { + mm_warn ("Invalid sysfs path read for %s/%s", + mm_kernel_event_properties_get_subsystem (self->priv->properties), +@@ -163,7 +163,7 @@ preload_interface_sysfs_path (MMKernelDeviceGeneric *self) + * The correct parent dir we want to have is the first one with "usb" subsystem. + */ + aux = g_strdup_printf ("%s/device", self->priv->sysfs_path); +- dirpath = canonicalize_file_name (aux); ++ dirpath = realpath(aux, NULL); + g_free (aux); + + while (dirpath) { +@@ -179,7 +179,7 @@ preload_interface_sysfs_path (MMKernelDeviceGeneric *self) + gchar *canonicalized_subsystem; + gchar *subsystem_name; + +- canonicalized_subsystem = canonicalize_file_name (subsystem_filepath); ++ canonicalized_subsystem = realpath(subsystem_filepath, NULL); + g_free (subsystem_filepath); + + subsystem_name = g_path_get_basename (canonicalized_subsystem); +@@ -239,7 +239,7 @@ preload_driver (MMKernelDeviceGeneric *self) + gchar *tmp2; + + tmp = g_strdup_printf ("%s/driver", self->priv->interface_sysfs_path); +- tmp2 = canonicalize_file_name (tmp); ++ tmp2 = realpath(tmp, NULL); + if (tmp2 && g_file_test (tmp2, G_FILE_TEST_EXISTS)) + self->priv->driver = g_path_get_basename (tmp2); + g_free (tmp2); +@@ -308,7 +308,7 @@ preload_physdev_subsystem (MMKernelDeviceGeneric *self) + gchar *subsyspath; + + aux = g_strdup_printf ("%s/subsystem", self->priv->physdev_sysfs_path); +- subsyspath = canonicalize_file_name (aux); ++ subsyspath = realpath(aux, NULL); + self->priv->physdev_subsystem = g_path_get_dirname (subsyspath); + g_free (subsyspath); + g_free (aux); diff --git a/srcpkgs/ModemManager/template b/srcpkgs/ModemManager/template index 14816f21ccb..b3a06bbbdc1 100644 --- a/srcpkgs/ModemManager/template +++ b/srcpkgs/ModemManager/template @@ -1,22 +1,22 @@ # Template file for 'ModemManager' pkgname=ModemManager -version=1.6.12 +version=1.8.0 revision=1 build_style=gnu-configure configure_args="--disable-static --sbindir=/usr/bin --with-udev-base-dir=/usr/lib/udev --with-polkit=permissive $(vopt_enable gir introspection)" -hostmakedepends="pkg-config intltool glib-devel autoconf +hostmakedepends="pkg-config glib-devel autoconf $(vopt_if gir 'vala-devel gobject-introspection')" makedepends="glib-devel libgudev-devel polkit-devel libqmi-devel libmbim-devel ppp" depends="hicolor-icon-theme ppp" short_desc="Mobile broadband modem management service" maintainer="Juan RP " +license="GPL-2.0-or-later" homepage="http://www.freedesktop.org/wiki/Software/ModemManager/" -license="GPL-2" -distfiles="$FREEDESKTOP_SITE/$pkgname/$pkgname-$version.tar.xz" -checksum=eefb7615c2c7ebc994abfc2782bfa9e798643a633362b40db96f7f61706a6283 +distfiles="${FREEDESKTOP_SITE}/${pkgname}/${pkgname}-${version}.tar.xz" +checksum=18abe34421aa3b52ff47d4ba93aa282f8f8944717dd644a5c0c81eeeac9c7eb1 build_options="gir" if [ -z "$CROSS_BUILD" ]; then @@ -24,7 +24,8 @@ if [ -z "$CROSS_BUILD" ]; then fi pre_configure() { - # Disable -Werror for gcc6 -Wmisleading-indentation + # Werror ___Guarantees___ failure to build for any non-trivial project + # in any machine that doesn't run the same software as upstream sed -i configure -e"s; -Werror;;g" } @@ -41,6 +42,7 @@ ModemManager-devel_package() { fi } } + libmm-glib_package() { short_desc+=" - GLib library" pkg_install() {