community/networkmanager: update to 1.18.1

Closes GH-7519
This commit is contained in:
Rasmus Thomsen 2019-05-03 11:45:11 +02:00 committed by Kevin Daudt
parent c936e3dd1a
commit 2a2668df51
6 changed files with 118 additions and 133 deletions

View File

@ -1,15 +1,14 @@
# Contributor: Stuart Cardall <developer@it-offshore.co.uk>
# Maintainer:
# Maintainer: Rasmus Thomsen <oss@cogitri.dev>
pkgname=networkmanager
pkgver=1.16.0
pkgver=1.18.1
pkgrel=0
pkgdesc="network management tool"
url="http://projects.gnome.org/NetworkManager/"
pkgdesc="Network Management daemon"
url="https://wiki.gnome.org/Projects/NetworkManager"
arch="all"
license="GPL-2.0-or-later"
depends="dhcpcd iptables dbus"
install="$pkgname.pre-install $pkgname.pre-upgrade"
depends_dev=
makedepends="$depends_dev
curl-dev
dbus-glib-dev
@ -31,9 +30,10 @@ makedepends="$depends_dev
util-linux-dev
jansson-dev
vala
autoconf
automake
libtool
meson
py-gobject3
libpsl-dev
python2
"
subpackages="$pkgname-dev $pkgname-doc $pkgname-lang $pkgname-openrc"
source="https://download.gnome.org/sources/NetworkManager/${pkgver:0:4}/NetworkManager-$pkgver.tar.xz
@ -42,81 +42,76 @@ source="https://download.gnome.org/sources/NetworkManager/${pkgver:0:4}/NetworkM
$pkgname.rules
musl-basic.patch
musl-network-support.patch
musl-dlopen-configure-ac.patch
musl-fix-includes.patch
musl-process-util.patch
musl-has-not-secure-getenv.patch
musl-compar.patch
"
options="!check"
options="!check" # fail to compile on musl
builddir="$srcdir"/NetworkManager-$pkgver
prepare() {
cd "$builddir"
default_prepare
autoreconf
}
build() {
cd "$builddir"
./configure \
meson \
--prefix=/usr \
--sysconfdir=/etc \
--mandir=/usr/share/man \
--infodir=/usr/share/info \
--localstatedir=/var \
--enable-concheck \
--enable-ifupdown \
--enable-modify-system \
--enable-polkit-agent \
--with-config-dhcp-default=dhcpcd \
--with-crypto=nss \
--with-dhcpcd=yes \
--with-dhclient=yes \
--with-modem-manager-1 \
--with-nmtui=yes \
--with-resolvconf=yes \
--with-session-tracking=no \
--with-systemdsystemunitdir=no \
--with-systemd-journal=no \
--with-systemd-logind=no \
--with-suspend-resume=upower \
--with-wext=yes \
--disable-config-plugin-ibft \
--disable-gtk-doc \
--disable-introspection \
--disable-more-warnings \
--disable-tests \
--without-valgrind \
--disable-wimax
make libnm-core/nm-core-enum-types.h
make
-Dsystemdsystemunitdir=no \
-Dudev_dir=/lib/udev \
-Diptables=/sbin/iptables \
-Ddnsmasq=/usr/sbin/dnsmasq \
-Dmodify_system=true \
-Dselinux=false \
-Dsystemd_journal=false \
-Dlibaudit=no \
-Diwd=true \
-Dpppd=/usr/sbin/pppd \
-Dconfig_plugins_default=ifupdown \
-Difupdown=true \
-Ddhcpcd=true \
-Dconfig_dhcp_default=dhcpcd \
-Dvapi=true \
-Dtests=no \
-Dlibnm_glib=true \
-Dpolkit_agent=true \
-Dsession_tracking=no \
-Dqt=false \
. output
ninja -C output
}
check() {
ninja -C output test
}
package() {
cd "$builddir"
make DESTDIR="$pkgdir" install
DESTDIR="$pkgdir" ninja -C output install
install -m755 -D "$srcdir"/networkmanager.initd "$pkgdir"/etc/init.d/networkmanager
install -m644 -D "$srcdir/$pkgname.conf" "$pkgdir"/etc/NetworkManager/NetworkManager.conf
# allow plugdev users to modify connections
install -m644 -D "$srcdir/$pkgname.rules" \
"$pkgdir/usr/share/polkit-1/rules.d/01-org.freedesktop.NetworkManager.settings.modify.system.rules"
"$pkgdir/usr/share/polkit-1/rules.d/01-org.freedesktop.NetworkManager.settings.modify.system.rules"
mkdir -p "$pkgdir/usr/share/apk-tools/$pkgname"
# post-install message
mv "$pkgdir/usr/share/doc/NetworkManager" "$pkgdir/usr/share/doc/$pkgname"
cat > $pkgdir/usr/share/doc/$pkgname/README.alpine <<EOF
To modify system network connections without the root password: add your user account to the 'plugdev' group.
cat > $pkgdir/usr/share/doc/$pkgname/README.alpine <<EOF
To modify system network connections without the root password: add your user account to the 'plugdev' group, or use Polkit.
To use iwd instead of the default wpa_supplicant install iwd and the following to your /etc/NetworkManager/NetworkManager.conf:
[device]
wifi.backend=iwd
EOF
}
sha512sums="e9d8365d8e59e5bc7c0bc13482139fb96b1d87183c8884e71e84eaf05fe121f2bcac519edd916bd242be4e9a9e2d2140a1065f529a9a02bda87b6d2bd4192584 NetworkManager-1.16.0.tar.xz
sha512sums="24ffd5b5802692ce392a5ce65623679014d4e476cddedf76222829118f3ab4c92e180c1814db80438f66e2ab7a4e93eb1bac1e0b77575ff7620b0bf0e27d2992 NetworkManager-1.18.1.tar.xz
a6e507260e2ceffad4cacb2b49a1d4f6b933e5ae8bc50c1bd56f828298c5dc8d9d17aa4be766faeacefbe3c6c0c748e4ef499a55bb5ee40f0f04bbf766fbbc82 networkmanager.conf
477c4cbb6e8c4805a61cdd9442c6a951c8f96173552d943a2f21938ba0facead455f247d65b2b79d1dcdd42abc6db8a8d06c49847bf028001c99ccfca1782bbd networkmanager.initd
9820ed2ead0af689644842de57657bb10330a1eaff0e85b21ae9913f55e399e47d8b41b0a12956f30de80272b4424c6e55f33acbc88e156879003a260bf576f6 networkmanager.rules
966ecda70a33bc918e12085fd466a56f6d6356145dfe36b7e3456c21cb095454087e421fedb4ac48984113cdaa1eff9ab6bb9f670e40b48478da19ac576ad8f6 musl-basic.patch
9d1a9185b0b50f677a4173a8b67e808ba36971111165ae446e9a15b5c7adcc8cc6d44fa7bddac05762c50d80b04818a483756eaf2aaefe0162e1f37cd070fca4 musl-basic.patch
095c1d944f3274ba31435cd1af8e2affb4187bdd921a0cc0c185b59810b73cfab7919b5f551bab3d9e4644fbee8f9ac017b4c5d69a771fb68319cbefa37c71a3 musl-network-support.patch
1b5a84cd1e0c2b40987e41b41747c0cb21fc12c6c439c114e820d7e17025222a241c44ea6b3c9388c6be3db38020e6f07f5d68977d54c5f9a4ba185c978c143b musl-dlopen-configure-ac.patch
226ac7bc68ebb73476169bcb9801839dda9439b7657ee1e58ffc595cdfa1c3ebb8c24285194715d0127e424bc4a2b93368721cbf6615e20cf7b37aba33f29508 musl-fix-includes.patch
a3fe34eb93cb918650390ea01696a8e8489455a89721e479d6b83ab730f6608e9cf78cd0d993e7c8051708b695eea420490e36d85d400fa39ec0ff5d3882d26b musl-fix-includes.patch
b5cd94928ca3ba1fb71aec28d9ff66f319f6d23131e02c90f1dfbfaf16c537935228a9981c95f29ffb74e91752a17801c94d09ca57b7ba98028262b9e8e5d322 musl-process-util.patch
1e2ef2847815319a2137fa60fe5ae1954b282cbb66f70e152b67a218248e8eab284c7bb9664b5579bd9d63a415bdbbc6b68d43f6d094a0b22013297630a25041 musl-has-not-secure-getenv.patch"
76b6728389686c91df6acafbbe17af7f0e01971e5f7185e164dcb39f93982ac6b73fc2cdf0ba2018e3fa80321178621fe2a5d910546de98bfc52484aa5d90d34 musl-has-not-secure-getenv.patch
634377674691b52da80ca4c445a727d39cd40269f7deef0d3ccc1e1041cc262e8bc1423200e9a2b0cf1804e9950059ebbbc827f1200c6a97c58bc76080a6d6d2 musl-compar.patch"

View File

@ -1,31 +1,5 @@
Usual fix for musl libc
--- a/shared/systemd/src/basic/stdio-util.h
+++ b/shared/systemd/src/basic/stdio-util.h
@@ -19,7 +19,9 @@
along with systemd; If not, see <http://www.gnu.org/licenses/>.
***/
+#if defined(__GLIBC__)
#include <printf.h>
+#endif
#include <stdarg.h>
#include <stdio.h>
#include <sys/types.h>
--- a/shared/systemd/src/basic/util.h
+++ b/shared/systemd/src/basic/util.h
@@ -46,6 +46,12 @@
#include "missing.h"
#include "time-util.h"
+#if !defined(__GLIBC__)
+typedef int (*__compar_fn_t) (const void*, const void*);
+typedef __compar_fn_t comparison_fn_t;
+typedef int (*__compar_d_fn_t) (const void *, const void *, void *);
+#endif
+
size_t page_size(void) _pure_;
#define PAGE_ALIGN(l) ALIGN_TO((l), page_size())
diff --git a/libnm-core/nm-json.c b/libnm-core/nm-json.c
index aa181a4..98c39fc 100644
--- a/libnm-core/nm-json.c
+++ b/libnm-core/nm-json.c
@@ -23,6 +23,10 @@
@ -39,3 +13,34 @@ Usual fix for musl libc
void *_nm_jansson_json_object_iter_value;
void *_nm_jansson_json_object_key_to_iter;
void *_nm_jansson_json_integer;
diff --git a/shared/systemd/src/basic/stdio-util.h b/shared/systemd/src/basic/stdio-util.h
index c3b9448..e80a938 100644
--- a/shared/systemd/src/basic/stdio-util.h
+++ b/shared/systemd/src/basic/stdio-util.h
@@ -1,7 +1,9 @@
/* SPDX-License-Identifier: LGPL-2.1+ */
#pragma once
+#if defined(__GLIBC__)
#include <printf.h>
+#endif
#include <stdarg.h>
#include <stdio.h>
#include <sys/types.h>
diff --git a/shared/systemd/src/basic/util.h b/shared/systemd/src/basic/util.h
index 25e6ab8..7967e8a 100644
--- a/shared/systemd/src/basic/util.h
+++ b/shared/systemd/src/basic/util.h
@@ -46,6 +46,12 @@ static inline unsigned u64log2(uint64_t n) {
#endif
}
+#if !defined(__GLIBC__)
+typedef int (*__compar_fn_t) (const void*, const void*);
+typedef __compar_fn_t comparison_fn_t;
+typedef int (*__compar_d_fn_t) (const void *, const void *, void *);
+#endif
+
static inline unsigned u32ctz(uint32_t n) {
#if __SIZEOF_INT__ == 4
return n != 0 ? __builtin_ctz(n) : 32;

View File

@ -0,0 +1,18 @@
diff --git a/shared/systemd/src/basic/sort-util.h b/shared/systemd/src/basic/sort-util.h
index e029f86..935f136 100644
--- a/shared/systemd/src/basic/sort-util.h
+++ b/shared/systemd/src/basic/sort-util.h
@@ -5,6 +5,13 @@
#include "macro.h"
+#ifndef __COMPAR_FN_T
+# define __COMPAR_FN_T
+typedef int (*__compar_fn_t) (const void *, const void *);
+typedef __compar_fn_t comparison_fn_t;
+typedef int (*__compar_d_fn_t) (const void *, const void *, void *);
+#endif
+
void *xbsearch_r(const void *key, const void *base, size_t nmemb, size_t size,
__compar_d_fn_t compar, void *arg);

View File

@ -1,34 +0,0 @@
From cdd5865a6a31a593b8d33ee338638ebe3bed6391 Mon Sep 17 00:00:00 2001
From: Beniamino Galvani <bgalvani@redhat.com>
Date: Fri, 29 Mar 2019 09:13:59 +0100
Subject: [PATCH] build: fix searching dlopen in configure
The 4th argument of AC_SEARCH_LIBS is a list of additional libraries,
not the name of the variable to hold the result which is always
ac_cv_search_$function. Also, we should ignore the result when it is
"none required".
Fixes: 1f2eeb85d80d ('build: rename $(LIBDL) to $(DL_LIBS) and modify detection')
---
configure.ac | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/configure.ac b/configure.ac
index 334d9272d..fc09bd461 100644
--- a/configure.ac
+++ b/configure.ac
@@ -240,8 +240,9 @@ AM_CONDITIONAL(WITH_IWD, test x"${ac_with_iwd}" = x"yes")
dnl
dnl Checks for libdl - on certain platforms its part of libc
dnl
-AC_SEARCH_LIBS([dlopen], [dl dld], [], [ac_cv_search_dlopen=])
-AC_SUBST([DL_LIBS], "$ac_cv_search_dlopen")
+AC_SEARCH_LIBS([dlopen], [dl dld],
+ [test "$ac_cv_search_dlopen" = "none required" || AC_SUBST([DL_LIBS], "$ac_cv_search_dlopen"]),
+ [])
PKG_CHECK_MODULES(GLIB, [gio-unix-2.0 >= 2.37.6 gmodule-2.0],
[AC_SUBST(LOG_DRIVER, '$(top_srcdir)/build-aux/tap-driver.sh')
--
2.20.1

View File

@ -1,3 +1,5 @@
diff --git a/src/devices/nm-device.c b/src/devices/nm-device.c
index bd4fbcc..cb5436f 100644
--- a/src/devices/nm-device.c
+++ b/src/devices/nm-device.c
@@ -32,7 +32,11 @@
@ -11,7 +13,9 @@
+#endif
#include <linux/rtnetlink.h>
#include <linux/pkt_sched.h>
diff --git a/src/nm-manager.c b/src/nm-manager.c
index 40e068a..aa57ce8 100644
--- a/src/nm-manager.c
+++ b/src/nm-manager.c
@@ -26,6 +26,7 @@
@ -20,8 +24,10 @@
#include <unistd.h>
+#include <asm/types.h>
#include "nm-utils/nm-c-list.h"
#include "nm-glib-aux/nm-c-list.h"
diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c
index d4b0115..c934f10 100644
--- a/src/platform/nm-linux-platform.c
+++ b/src/platform/nm-linux-platform.c
@@ -20,6 +20,7 @@
@ -32,23 +38,15 @@
#include <arpa/inet.h>
#include <dlfcn.h>
@@ -27,7 +28,11 @@
#include <fcntl.h>
@@ -28,7 +29,11 @@
#include <libudev.h>
#include <linux/fib_rules.h>
#include <linux/ip.h>
+#if defined(__GLIBC__)
#include <linux/if_arp.h>
+#else
+#include <linux/if.h>
+#endif
#include <linux/if_bridge.h>
#include <linux/if_link.h>
#include <linux/if_tun.h>
#include <linux/if_tunnel.h>
@@ -53,7 +58,6 @@
#include "nm-platform-private.h"
#include "wifi/nm-wifi-utils.h"
#include "wifi/nm-wifi-utils-wext.h"
-#include "wpan/nm-wpan-utils.h"
#include "nm-utils/unaligned.h"
#include "nm-utils/nm-io-utils.h"
#include "nm-utils/nm-udev-utils.h"

View File

@ -1,5 +1,7 @@
--- a/src/systemd/sd-adapt-core/nm-sd-adapt-core.h 2019-03-17 16:56:13.649901535 +0100
+++ b/src/systemd/sd-adapt-core/nm-sd-adapt-core.h 2019-03-17 16:56:35.278786119 +0100
diff --git a/src/systemd/sd-adapt-core/nm-sd-adapt-core.h b/src/systemd/sd-adapt-core/nm-sd-adapt-core.h
index 8c07c53..d043afc 100644
--- a/src/systemd/sd-adapt-core/nm-sd-adapt-core.h
+++ b/src/systemd/sd-adapt-core/nm-sd-adapt-core.h
@@ -65,7 +65,7 @@
# ifdef HAVE___SECURE_GETENV
# define secure_getenv __secure_getenv
@ -8,3 +10,4 @@
+# define secure_getenv getenv
# endif
#endif