![Matt Weber](/assets/img/avatar_default.png)
Previously was defined in qmi-util.h to fix musl compatibility. It was missed that this is a shared header which causes other dependent package builds to fail, so the static definition was moved into the implementation where it was used. Upstream bug report has been updated and this resolves the following autobuilder related failures. http://autobuild.buildroot.net/results/fe9b6b1b1399a4e8aafc6a326c81ec97c2480025 http://autobuild.buildroot.net/results/40eef797b4d8d53fc6e10f2048316d63549caf6d test-pkg testing was performed against 10 random toolchains ++ Config snippet ++ BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_EUDEV=y BR2_PACKAGE_MODEM_MANAGER_LIBQMI=y BR2_PACKAGE_MODEM_MANAGER=y BR2_PACKAGE_LIBQMI=y ++ Tested Toolchains ++ (Verified I hit all libc variants) br-arm-cortex-a9-musl br-arm-full-static br-m68k-68040-full (uclibc) br-mips32r6-el-hf-glibc br-mips64-n64-full br-mips64r6-el-hf-glibc br-mipsel-o32-full br-sparc64-glibc linaro-arm sourcery-arm Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com> Tested-by: Vicente Olivert Riera <Vincent.Riera@imgtec.com> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
62 lines
1.6 KiB
Diff
62 lines
1.6 KiB
Diff
From 8f6181b6f8dd82aa1ab1288cc7f2fd05d4a2519f Mon Sep 17 00:00:00 2001
|
|
From: Matt Weber <matthew.weber@rockwellcollins.com>
|
|
Date: Mon, 1 May 2017 19:55:07 -0500
|
|
Subject: [PATCH] musl compat canonicalize_file_name()
|
|
|
|
Adds an equivalent of canonicalize_file_name
|
|
using realpath().
|
|
|
|
Bug report (origin of this patch):
|
|
https://bugs.freedesktop.org/show_bug.cgi?id=99944
|
|
|
|
Bug report has been updated with suggestion to not use inline.
|
|
|
|
Signed-off-by: Matthew Weber <matthew.weber@rockwellcollins.com>
|
|
---
|
|
configure.ac | 2 ++
|
|
src/libqmi-glib/qmi-utils.c | 15 +++++++++++++++
|
|
2 files changed, 17 insertions(+)
|
|
|
|
diff --git a/configure.ac b/configure.ac
|
|
index c56fa3e..d835db4 100644
|
|
--- a/configure.ac
|
|
+++ b/configure.ac
|
|
@@ -80,6 +80,8 @@ AC_SUBST(GLIB_LIBS)
|
|
GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0`
|
|
AC_SUBST(GLIB_MKENUMS)
|
|
|
|
+AC_CHECK_FUNCS([canonicalize_file_name])
|
|
+
|
|
dnl qmi-firmware-update is optional, enabled by default
|
|
AC_ARG_ENABLE([firmware-update],
|
|
AS_HELP_STRING([--enable-firmware-update],
|
|
diff --git a/src/libqmi-glib/qmi-utils.c b/src/libqmi-glib/qmi-utils.c
|
|
index 29e5f22..26aff9e 100644
|
|
--- a/src/libqmi-glib/qmi-utils.c
|
|
+++ b/src/libqmi-glib/qmi-utils.c
|
|
@@ -34,6 +34,21 @@
|
|
#include "qmi-utils.h"
|
|
#include "qmi-error-types.h"
|
|
|
|
+#ifndef HAVE_CANONICALIZE_FILE_NAME
|
|
+#include <limits.h>
|
|
+static char * canonicalize_file_name(const char *path)
|
|
+{
|
|
+ char buf[PATH_MAX] = { };
|
|
+
|
|
+ snprintf(buf, sizeof(buf) - 1, "%s", path);
|
|
+
|
|
+ if (!realpath(path, buf))
|
|
+ return NULL;
|
|
+
|
|
+ return strdup(buf);
|
|
+}
|
|
+#endif
|
|
+
|
|
/**
|
|
* SECTION:qmi-utils
|
|
* @title: Common utilities
|
|
--
|
|
1.9.1
|
|
|