From 8bdf070ff046f482f6eb5e2b15ebc216f5d1e3da Mon Sep 17 00:00:00 2001 From: Michael Biebl Date: Wed, 12 Feb 2025 13:46:50 +0100 Subject: New upstream version 1.51.90 --- .gitlab-ci.yml | 219 +- .gitlab-ci/README.md | 4 +- .gitlab-ci/ci.template | 17 +- .gitlab-ci/config.yml | 26 +- .gitlab-ci/distros-info.yml | 42 +- .gitlab-ci/distros_support.py | 234 + .gitlab-ci/run-test.sh | 48 +- .triage-policies.yml | 46 + CONTRIBUTING.md | 7 +- MAINTAINERS.md | 4 +- Makefile.am | 5949 --------------- Makefile.examples | 221 - Makefile.glib | 168 - Makefile.vapigen | 62 - NEWS | 64 +- autogen.sh | 31 - config-extra.h.mk | 27 - config.h.meson | 6 - configure.ac | 1503 ---- contrib/alpine/REQUIRED_PACKAGES | 2 - contrib/debian/REQUIRED_PACKAGES | 4 - contrib/fedora/REQUIRED_PACKAGES | 21 +- contrib/fedora/rpm/NetworkManager.spec | 175 +- contrib/fedora/rpm/build.sh | 15 +- contrib/fedora/rpm/build_clean.sh | 137 +- contrib/fedora/rpm/configure-for-system.sh | 277 +- contrib/fedora/rpm/release.sh | 30 +- contrib/fedora/utils/makerepo.sh | 6 + contrib/scripts/checkpatch.pl | 2 +- contrib/scripts/nm-ci-run.sh | 219 +- contrib/scripts/nm-copr-build.sh | 2 +- data/meson.build | 18 +- docs/api/Makefile.am | 140 - docs/api/network-manager-docs.xml | 1 + docs/libnm/Makefile.am | 117 - docs/libnm/libnm-docs.xml | 2 + examples/C/glib/vpn-import-libnm.c | 2 +- introspection/meson.build | 1 + ...rg.freedesktop.NetworkManager.Device.Ipvlan.xml | 38 + m4/attributes.m4 | 290 - m4/ax_lib_readline.m4 | 158 - m4/ax_pthread.m4 | 522 -- m4/compiler_options.m4 | 227 - m4/git-sha-record.m4 | 15 - m4/gnome-code-coverage.m4 | 142 - m4/introspection.m4 | 92 - m4/vapigen.m4 | 87 - man/NetworkManager-dispatcher.xml | 7 +- man/NetworkManager.conf.xml | 94 +- man/common.ent.in | 1 + man/nm-cloud-setup.xml | 32 + man/nm-initrd-generator.xml | 34 + man/nm-settings-nmcli.xsl | 9 +- meson.build | 32 +- meson_options.txt | 3 +- po/de.po | 7889 +++++++++++--------- po/ru.po | 4 +- po/sl.po | 4 +- po/sv.po | 4 +- po/tr.po | 2 +- src/contrib/nm-vpn-plugin-utils.c | 97 +- src/contrib/nm-vpn-plugin-utils.h | 6 +- src/core/NetworkManagerUtils.c | 58 +- src/core/NetworkManagerUtils.h | 62 +- src/core/devices/adsl/nm-device-adsl.c | 5 +- src/core/devices/bluetooth/nm-bluez-manager.c | 10 +- src/core/devices/bluetooth/nm-bluez5-dun.c | 4 +- src/core/devices/bluetooth/nm-device-bt.c | 3 +- src/core/devices/nm-device-6lowpan.c | 29 +- src/core/devices/nm-device-bond.c | 7 +- src/core/devices/nm-device-bridge.c | 33 +- src/core/devices/nm-device-dummy.c | 16 +- src/core/devices/nm-device-ethernet.c | 8 +- src/core/devices/nm-device-factory.c | 3 +- src/core/devices/nm-device-factory.h | 12 +- src/core/devices/nm-device-infiniband.c | 26 +- src/core/devices/nm-device-ip-tunnel.c | 31 +- src/core/devices/nm-device-ipvlan.c | 467 ++ src/core/devices/nm-device-ipvlan.h | 31 + src/core/devices/nm-device-loopback.c | 16 +- src/core/devices/nm-device-macsec.c | 33 +- src/core/devices/nm-device-macvlan.c | 41 +- src/core/devices/nm-device-ppp.c | 19 +- src/core/devices/nm-device-private.h | 4 +- src/core/devices/nm-device-tun.c | 3 +- src/core/devices/nm-device-utils.c | 2 +- src/core/devices/nm-device-vlan.c | 37 +- src/core/devices/nm-device-vrf.c | 5 +- src/core/devices/nm-device-vxlan.c | 29 +- src/core/devices/nm-device-wireguard.c | 20 +- src/core/devices/nm-device-wpan.c | 3 +- src/core/devices/nm-device.c | 712 +- src/core/devices/nm-lldp-listener.c | 10 +- src/core/devices/ovs/nm-device-ovs-interface.c | 2 +- src/core/devices/ovs/nm-device-ovs-port.c | 4 +- src/core/devices/ovs/nm-ovsdb.c | 22 +- src/core/devices/team/nm-device-team.c | 3 +- src/core/devices/wifi/nm-device-iwd-p2p.c | 3 +- src/core/devices/wifi/nm-device-iwd.c | 15 +- src/core/devices/wifi/nm-device-olpc-mesh.c | 3 +- src/core/devices/wifi/nm-device-wifi-p2p.c | 3 +- src/core/devices/wifi/nm-device-wifi.c | 5 +- src/core/devices/wifi/nm-wifi-utils.c | 16 +- src/core/devices/wwan/nm-modem-broadband.c | 41 +- src/core/devices/wwan/nm-modem-ofono.c | 4 +- src/core/devices/wwan/nm-modem.c | 2 +- src/core/dhcp/nm-dhcp-client.c | 80 +- src/core/dhcp/nm-dhcp-client.h | 7 +- src/core/dhcp/nm-dhcp-dhclient.c | 5 + src/core/dhcp/nm-dhcp-dhcpcanon.c | 239 - src/core/dhcp/nm-dhcp-listener.c | 3 - src/core/dhcp/nm-dhcp-nettools.c | 82 +- src/core/dhcp/nm-dhcp-options.c | 5 +- src/core/dhcp/nm-dhcp-options.h | 3 +- src/core/dhcp/nm-dhcp-systemd.c | 2 +- src/core/dhcp/nm-dhcp-utils.c | 35 +- src/core/dhcp/nm-dhcp-utils.h | 6 + src/core/dhcp/tests/test-dhcp-dhclient.c | 2 +- src/core/dhcp/tests/test-dhcp-utils.c | 12 +- src/core/dns/nm-dns-dnsconfd.c | 802 ++ src/core/dns/nm-dns-dnsconfd.h | 29 + src/core/dns/nm-dns-dnsmasq.c | 19 +- src/core/dns/nm-dns-manager.c | 43 +- src/core/dns/nm-dns-systemd-resolved.c | 39 +- src/core/dnsmasq/nm-dnsmasq-manager.c | 47 +- src/core/dnsmasq/nm-dnsmasq-manager.h | 2 + src/core/meson.build | 3 +- src/core/ndisc/nm-fake-ndisc.c | 2 +- src/core/ndisc/nm-lndp-ndisc.c | 2 +- src/core/ndisc/nm-ndisc.c | 37 +- src/core/ndisc/nm-ndisc.h | 2 +- src/core/ndisc/tests/test-ndisc-linux.c | 2 +- src/core/nm-audit-manager.c | 4 +- src/core/nm-auth-manager.c | 2 +- src/core/nm-auth-utils.c | 6 +- src/core/nm-bond-manager.c | 2 +- src/core/nm-config-data.c | 134 +- src/core/nm-config-data.h | 10 + src/core/nm-config.c | 68 +- src/core/nm-connectivity.c | 4 +- src/core/nm-core-utils.c | 24 +- src/core/nm-dbus-manager.c | 2 +- src/core/nm-dbus-object.h | 6 +- src/core/nm-dbus-utils.h | 52 +- src/core/nm-dispatcher.c | 16 +- src/core/nm-firewall-utils.c | 6 +- src/core/nm-ip-config.c | 50 +- src/core/nm-l3-config-data.c | 115 +- src/core/nm-l3-config-data.h | 11 +- src/core/nm-l3-ipv4ll.c | 27 +- src/core/nm-l3-ipv6ll.c | 2 +- src/core/nm-l3cfg.c | 297 +- src/core/nm-l3cfg.h | 21 +- src/core/nm-manager.c | 138 +- src/core/nm-netns.c | 14 +- src/core/nm-pacrunner-manager.c | 2 +- src/core/nm-policy.c | 6 +- src/core/nm-rfkill-manager.c | 2 +- src/core/platform/nm-fake-platform.c | 2 +- src/core/platform/tests/test-common.c | 24 +- src/core/platform/tests/test-common.h | 32 +- src/core/platform/tests/test-link.c | 34 +- src/core/platform/tests/test-route.c | 30 +- src/core/platform/tests/test-tc.c | 2 +- src/core/ppp/nm-ppp-manager.c | 6 +- src/core/ppp/nm-ppp-mgr.c | 6 +- src/core/ppp/nm-pppd-compat.c | 8 +- src/core/settings/nm-secret-agent.c | 2 +- src/core/settings/nm-settings-connection.c | 2 +- src/core/settings/nm-settings-plugin.c | 2 +- src/core/settings/nm-settings-utils.c | 4 +- src/core/settings/nm-settings-utils.h | 2 +- src/core/settings/nm-settings.c | 2 +- .../plugins/ifcfg-rh/nms-ifcfg-rh-reader.c | 21 +- .../plugins/ifcfg-rh/nms-ifcfg-rh-writer.c | 34 +- src/core/settings/plugins/ifcfg-rh/shvar.c | 6 +- .../plugins/ifcfg-rh/tests/test-ifcfg-rh.c | 29 +- .../plugins/ifupdown/nms-ifupdown-plugin.c | 2 +- .../keyfile/tests/keyfiles/Test_Duplicate_Gateways | 17 + .../tests/keyfiles/Test_Write_Bluetooth_DUN | 24 + .../tests/keyfiles/Test_Write_Bridge_Component | 14 + .../keyfile/tests/keyfiles/Test_Write_Bridge_Main | 20 + .../plugins/keyfile/tests/keyfiles/Test_Write_Enum | 16 + .../keyfile/tests/keyfiles/Test_Write_Flags | 18 + .../plugins/keyfile/tests/keyfiles/Test_Write_GSM | 26 + .../keyfile/tests/keyfiles/Test_Write_Infiniband | 19 + .../plugins/keyfile/tests/keyfiles/Test_Write_TC | 21 + .../keyfile/tests/keyfiles/Test_Write_Wired | 36 + .../keyfile/tests/keyfiles/Test_Write_Wired_IP6 | 20 + .../keyfile/tests/keyfiles/Test_Write_Wireless | 20 + .../plugins/keyfile/tests/test-keyfile-settings.c | 125 +- src/core/supplicant/nm-supplicant-config.c | 2 +- src/core/supplicant/nm-supplicant-interface.c | 16 +- src/core/supplicant/nm-supplicant-manager.c | 2 +- src/core/tests/config/test-config.c | 7 +- src/core/tests/test-core.c | 52 +- src/core/tests/test-l3cfg.c | 14 +- src/core/vpn/nm-vpn-connection.c | 23 +- src/libnm-base/nm-base.h | 13 +- src/libnm-base/nm-config-base.h | 6 +- src/libnm-base/nm-ethtool-base.c | 13 +- src/libnm-base/nm-ethtool-utils-base.h | 2 + src/libnm-client-impl/libnm.ver | 42 +- src/libnm-client-impl/meson.build | 1 + src/libnm-client-impl/nm-active-connection.c | 4 +- src/libnm-client-impl/nm-client.c | 17 +- src/libnm-client-impl/nm-device-ipvlan.c | 233 + src/libnm-client-impl/nm-device.c | 7 +- src/libnm-client-impl/nm-ip-config.c | 21 +- src/libnm-client-impl/nm-libnm-utils.c | 1 + src/libnm-client-impl/nm-libnm-utils.h | 23 +- src/libnm-client-impl/nm-secret-agent-old.c | 2 +- src/libnm-client-impl/nm-vpn-service-plugin.c | 32 +- src/libnm-client-impl/tests/test-libnm.c | 15 +- src/libnm-client-impl/tests/test-nm-client.c | 14 +- src/libnm-client-impl/tests/test-secret-agent.c | 2 +- src/libnm-client-public/NetworkManager.h | 2 + src/libnm-client-public/meson.build | 1 + src/libnm-client-public/nm-autoptr.h | 2 + src/libnm-client-public/nm-device-ipvlan.h | 54 + src/libnm-client-public/nm-ethtool-utils.h | 2 + src/libnm-client-test/nm-test-utils-impl.c | 2 +- src/libnm-core-aux-intern/meson.build | 1 + src/libnm-core-aux-intern/nm-libnm-core-utils.c | 462 +- src/libnm-core-aux-intern/nm-libnm-core-utils.h | 57 +- src/libnm-core-aux-intern/tests/meson.build | 34 + .../tests/test-libnm-core-utils.c | 364 + .../gen-metadata-nm-settings-libnm-core.xml.in | 110 + src/libnm-core-impl/meson.build | 1 + src/libnm-core-impl/nm-connection-private.h | 4 + src/libnm-core-impl/nm-connection.c | 101 +- src/libnm-core-impl/nm-keyfile-utils.c | 19 - src/libnm-core-impl/nm-keyfile.c | 143 +- src/libnm-core-impl/nm-meta-setting-base-impl.c | 11 +- src/libnm-core-impl/nm-setting-bridge.c | 2 +- src/libnm-core-impl/nm-setting-connection.c | 422 +- src/libnm-core-impl/nm-setting-ethtool.c | 45 + src/libnm-core-impl/nm-setting-gsm.c | 304 +- src/libnm-core-impl/nm-setting-ip-config.c | 305 +- src/libnm-core-impl/nm-setting-ip4-config.c | 63 +- src/libnm-core-impl/nm-setting-ip6-config.c | 24 + src/libnm-core-impl/nm-setting-ipvlan.c | 290 + src/libnm-core-impl/nm-setting-private.h | 8 +- src/libnm-core-impl/nm-setting-sriov.c | 4 +- src/libnm-core-impl/nm-setting-vlan.c | 2 +- src/libnm-core-impl/nm-setting-wired.c | 4 +- src/libnm-core-impl/nm-setting-wireguard.c | 6 +- src/libnm-core-impl/nm-setting.c | 4 +- src/libnm-core-impl/nm-team-utils.c | 6 +- src/libnm-core-impl/nm-utils-private.h | 2 +- src/libnm-core-impl/nm-utils.c | 16 +- src/libnm-core-impl/nm-vpn-editor-plugin.c | 3 + src/libnm-core-impl/tests/test-general.c | 351 +- src/libnm-core-impl/tests/test-keyfile.c | 6 +- src/libnm-core-impl/tests/test-setting.c | 135 +- src/libnm-core-intern/nm-core-internal.h | 3 + src/libnm-core-intern/nm-keyfile-utils.h | 2 - src/libnm-core-intern/nm-meta-setting-base-impl.h | 1 + src/libnm-core-public/meson.build | 1 + src/libnm-core-public/nm-core-types.h | 1 + src/libnm-core-public/nm-dbus-interface.h | 3 + src/libnm-core-public/nm-setting-connection.h | 89 +- src/libnm-core-public/nm-setting-ethtool.h | 27 + src/libnm-core-public/nm-setting-gsm.h | 55 +- src/libnm-core-public/nm-setting-ip-config.h | 84 +- src/libnm-core-public/nm-setting-ip4-config.h | 27 +- src/libnm-core-public/nm-setting-ipvlan.h | 69 + src/libnm-core-public/nm-version-macros.h.in | 1 + src/libnm-core-public/nm-version.h | 14 + src/libnm-core-public/nm-vpn-editor-plugin.h | 24 +- src/libnm-glib-aux/nm-dbus-aux.c | 2 +- src/libnm-glib-aux/nm-dedup-multi.c | 4 +- src/libnm-glib-aux/nm-hash-utils.h | 20 +- src/libnm-glib-aux/nm-inet-utils.h | 6 +- src/libnm-glib-aux/nm-io-utils.c | 4 +- src/libnm-glib-aux/nm-json-aux.c | 2 +- src/libnm-glib-aux/nm-keyfile-aux.c | 19 + src/libnm-glib-aux/nm-keyfile-aux.h | 2 + src/libnm-glib-aux/nm-macros-internal.h | 94 +- src/libnm-glib-aux/nm-prioq.c | 6 +- src/libnm-glib-aux/nm-random-utils.c | 448 +- src/libnm-glib-aux/nm-random-utils.h | 18 +- src/libnm-glib-aux/nm-secret-utils.h | 12 +- src/libnm-glib-aux/nm-shared-utils.c | 74 +- src/libnm-glib-aux/nm-shared-utils.h | 50 +- src/libnm-glib-aux/nm-test-utils.h | 2 +- src/libnm-glib-aux/nm-uuid.h | 4 +- src/libnm-glib-aux/nm-value-type.h | 4 +- src/libnm-glib-aux/tests/test-json-aux.c | 8 +- src/libnm-glib-aux/tests/test-shared-general.c | 27 +- src/libnm-lldp/nm-lldp-rx.c | 2 +- src/libnm-lldp/nm-lldp.h | 12 +- src/libnm-platform/nm-linux-platform.c | 81 +- src/libnm-platform/nm-netlink.c | 4 +- src/libnm-platform/nm-netlink.h | 21 +- src/libnm-platform/nm-platform-utils.c | 72 +- src/libnm-platform/nm-platform-utils.h | 4 + src/libnm-platform/nm-platform.c | 84 +- src/libnm-platform/nm-platform.h | 46 +- src/libnm-platform/nmp-base.h | 1 + src/libnm-platform/nmp-global-tracker.c | 22 +- src/libnm-platform/nmp-netns.c | 2 +- src/libnm-platform/nmp-object.c | 12 + src/libnm-platform/nmp-object.h | 8 + src/libnm-platform/nmp-plobj.h | 13 +- src/libnm-platform/tests/test-nm-platform.c | 68 +- src/libnm-platform/wifi/nm-wifi-utils-nl80211.c | 2 +- src/libnm-std-aux/nm-std-aux.h | 2 + src/libnm-systemd-core/nm-sd.c | 2 +- .../src/libsystemd-network/dhcp-duid-internal.h | 2 +- .../src/libsystemd-network/dhcp6-internal.h | 5 +- .../src/libsystemd-network/dhcp6-lease-internal.h | 3 + .../src/libsystemd-network/dhcp6-network.c | 18 +- .../src/libsystemd-network/dhcp6-option.c | 77 +- .../src/libsystemd-network/dhcp6-protocol.h | 14 +- .../src/libsystemd-network/network-common.c | 2 +- .../src/libsystemd-network/sd-dhcp6-client.c | 11 +- .../src/libsystemd-network/sd-dhcp6-lease.c | 121 +- .../src/libsystemd/sd-device/device-private.c | 4 +- .../src/libsystemd/sd-device/device-private.h | 8 +- .../src/libsystemd/sd-device/device-util.h | 2 +- .../src/libsystemd/sd-device/sd-device.c | 176 +- .../src/libsystemd/sd-event/event-source.h | 3 + .../src/libsystemd/sd-event/event-util.c | 9 + .../src/libsystemd/sd-event/event-util.h | 2 + .../src/libsystemd/sd-event/sd-event.c | 267 +- .../src/libsystemd/sd-id128/id128-util.c | 63 + .../src/libsystemd/sd-id128/id128-util.h | 3 + .../src/libsystemd/sd-id128/sd-id128.c | 52 +- src/libnm-systemd-core/src/systemd/_sd-common.h | 11 + src/libnm-systemd-core/src/systemd/sd-device.h | 30 +- .../src/systemd/sd-dhcp6-lease.h | 2 + .../src/systemd/sd-dhcp6-protocol.h | 5 +- src/libnm-systemd-core/src/systemd/sd-event.h | 27 +- src/libnm-systemd-core/src/systemd/sd-id128.h | 15 +- src/libnm-systemd-core/src/systemd/sd-ndisc.h | 6 +- src/libnm-systemd-shared/meson.build | 6 +- .../sd-adapt-shared/dns-resolver-internal.h | 3 + .../sd-adapt-shared/keyring-util.h | 3 + .../sd-adapt-shared/nm-sd-adapt-shared.h | 5 + .../sd-adapt-shared/syslog-util.h | 3 + src/libnm-systemd-shared/src/basic/alloc-util.c | 11 +- src/libnm-systemd-shared/src/basic/alloc-util.h | 19 +- src/libnm-systemd-shared/src/basic/arphrd-util.h | 2 +- src/libnm-systemd-shared/src/basic/bitfield.h | 73 + src/libnm-systemd-shared/src/basic/cgroup-util.h | 48 +- src/libnm-systemd-shared/src/basic/chase.h | 8 +- src/libnm-systemd-shared/src/basic/chattr-util.c | 176 + src/libnm-systemd-shared/src/basic/chattr-util.h | 64 + src/libnm-systemd-shared/src/basic/constants.h | 14 +- src/libnm-systemd-shared/src/basic/devnum-util.c | 11 +- src/libnm-systemd-shared/src/basic/env-util.c | 54 +- src/libnm-systemd-shared/src/basic/env-util.h | 7 +- src/libnm-systemd-shared/src/basic/errno-util.h | 11 +- src/libnm-systemd-shared/src/basic/escape.c | 12 +- .../src/basic/ether-addr-util.c | 2 +- .../src/basic/ether-addr-util.h | 4 +- src/libnm-systemd-shared/src/basic/fd-util.c | 192 +- src/libnm-systemd-shared/src/basic/fd-util.h | 16 +- src/libnm-systemd-shared/src/basic/fileio.c | 235 +- src/libnm-systemd-shared/src/basic/fileio.h | 42 +- src/libnm-systemd-shared/src/basic/format-ifname.c | 39 + src/libnm-systemd-shared/src/basic/format-ifname.h | 27 + src/libnm-systemd-shared/src/basic/format-util.c | 51 +- src/libnm-systemd-shared/src/basic/format-util.h | 28 +- src/libnm-systemd-shared/src/basic/fs-util.c | 363 +- src/libnm-systemd-shared/src/basic/fs-util.h | 50 +- src/libnm-systemd-shared/src/basic/glyph-util.c | 6 +- src/libnm-systemd-shared/src/basic/glyph-util.h | 10 +- src/libnm-systemd-shared/src/basic/hashmap.c | 20 + src/libnm-systemd-shared/src/basic/hashmap.h | 5 + src/libnm-systemd-shared/src/basic/hexdecoct.c | 25 +- src/libnm-systemd-shared/src/basic/hexdecoct.h | 4 +- src/libnm-systemd-shared/src/basic/in-addr-util.c | 81 +- src/libnm-systemd-shared/src/basic/in-addr-util.h | 21 +- src/libnm-systemd-shared/src/basic/inotify-util.c | 14 +- src/libnm-systemd-shared/src/basic/iovec-util.h | 35 +- src/libnm-systemd-shared/src/basic/label.c | 11 +- src/libnm-systemd-shared/src/basic/label.h | 6 +- src/libnm-systemd-shared/src/basic/locale-util.c | 3 +- src/libnm-systemd-shared/src/basic/lock-util.h | 4 +- src/libnm-systemd-shared/src/basic/log.h | 59 +- src/libnm-systemd-shared/src/basic/macro.h | 69 - src/libnm-systemd-shared/src/basic/memory-util.h | 11 +- src/libnm-systemd-shared/src/basic/missing_fcntl.h | 8 + src/libnm-systemd-shared/src/basic/missing_pidfd.h | 48 + .../src/basic/missing_random.h | 16 +- .../src/basic/missing_socket.h | 55 +- .../src/basic/missing_syscall.h | 80 +- .../src/basic/missing_threads.h | 4 +- src/libnm-systemd-shared/src/basic/missing_type.h | 4 +- src/libnm-systemd-shared/src/basic/missing_wait.h | 12 + .../src/basic/namespace-util.h | 51 +- src/libnm-systemd-shared/src/basic/parse-util.c | 19 +- src/libnm-systemd-shared/src/basic/parse-util.h | 2 - src/libnm-systemd-shared/src/basic/path-util.c | 137 +- src/libnm-systemd-shared/src/basic/path-util.h | 60 +- src/libnm-systemd-shared/src/basic/pidfd-util.c | 279 + src/libnm-systemd-shared/src/basic/pidfd-util.h | 21 + src/libnm-systemd-shared/src/basic/pidref.h | 78 +- src/libnm-systemd-shared/src/basic/prioq.c | 25 +- src/libnm-systemd-shared/src/basic/process-util.c | 551 +- src/libnm-systemd-shared/src/basic/process-util.h | 63 +- src/libnm-systemd-shared/src/basic/random-util.c | 114 +- src/libnm-systemd-shared/src/basic/random-util.h | 2 + src/libnm-systemd-shared/src/basic/ratelimit.c | 28 +- src/libnm-systemd-shared/src/basic/ratelimit.h | 6 +- src/libnm-systemd-shared/src/basic/sha256.c | 52 + src/libnm-systemd-shared/src/basic/sha256.h | 16 + src/libnm-systemd-shared/src/basic/signal-util.c | 41 +- src/libnm-systemd-shared/src/basic/signal-util.h | 21 +- src/libnm-systemd-shared/src/basic/socket-util.c | 99 +- src/libnm-systemd-shared/src/basic/socket-util.h | 15 +- src/libnm-systemd-shared/src/basic/stat-util.c | 138 +- src/libnm-systemd-shared/src/basic/stat-util.h | 23 +- src/libnm-systemd-shared/src/basic/stdio-util.h | 4 +- src/libnm-systemd-shared/src/basic/string-table.h | 13 +- src/libnm-systemd-shared/src/basic/string-util.c | 285 +- src/libnm-systemd-shared/src/basic/string-util.h | 120 +- src/libnm-systemd-shared/src/basic/strv.c | 286 +- src/libnm-systemd-shared/src/basic/strv.h | 18 +- src/libnm-systemd-shared/src/basic/time-util.c | 180 +- src/libnm-systemd-shared/src/basic/time-util.h | 18 +- src/libnm-systemd-shared/src/basic/tmpfile-util.c | 63 +- src/libnm-systemd-shared/src/basic/tmpfile-util.h | 2 + src/libnm-systemd-shared/src/basic/user-util.h | 34 +- src/libnm-systemd-shared/src/basic/utf8.c | 79 +- src/libnm-systemd-shared/src/basic/utf8.h | 23 +- .../src/fundamental/iovec-util-fundamental.h | 37 + .../src/fundamental/macro-fundamental.h | 85 +- .../src/fundamental/sha256-fundamental.c | 274 + .../src/fundamental/sha256-fundamental.h | 39 + src/libnm-systemd-shared/src/fundamental/sha256.c | 280 - src/libnm-systemd-shared/src/fundamental/sha256.h | 39 - src/libnm-systemd-shared/src/shared/dns-domain.c | 158 +- src/libnm-systemd-shared/src/shared/dns-domain.h | 2 + src/libnmc-base/nm-client-utils.c | 2 +- src/libnmc-base/nm-polkit-listener.c | 2 +- src/libnmc-base/nm-secret-agent-simple.c | 10 +- src/libnmc-setting/nm-meta-setting-base-impl.c | 11 +- src/libnmc-setting/nm-meta-setting-base-impl.h | 1 + src/libnmc-setting/nm-meta-setting-desc.c | 220 +- src/libnmc-setting/nm-meta-setting-desc.h | 3 + src/libnmc-setting/settings-docs.h.in | 35 +- src/meson.build | 1 + src/nm-cloud-setup/main.c | 34 +- src/nm-cloud-setup/meson.build | 8 + src/nm-cloud-setup/nm-cloud-setup-utils.c | 45 +- src/nm-cloud-setup/nm-cloud-setup-utils.h | 9 +- src/nm-cloud-setup/nm-cloud-setup.service.in | 1 + src/nm-cloud-setup/nm-http-client.c | 6 +- src/nm-cloud-setup/nmcs-provider-azure.c | 2 +- src/nm-cloud-setup/nmcs-provider-gcp.c | 2 +- src/nm-cloud-setup/nmcs-provider-oci.c | 221 + src/nm-cloud-setup/nmcs-provider-oci.h | 27 + src/nm-cloud-setup/nmcs-provider.c | 10 +- src/nm-cloud-setup/nmcs-provider.h | 7 - src/nm-dispatcher/nm-dispatcher-utils.c | 41 +- src/nm-initrd-generator/nm-initrd-generator.c | 66 +- src/nm-initrd-generator/nm-initrd-generator.h | 5 +- src/nm-initrd-generator/nmi-cmdline-reader.c | 69 +- .../tests/test-cmdline-reader.c | 100 +- src/nm-priv-helper/nm-priv-helper.c | 2 +- src/nmcli/common.c | 8 +- src/nmcli/common.h | 2 +- src/nmcli/connections.c | 45 +- src/nmcli/devices.c | 24 +- src/nmcli/gen-metadata-nm-settings-nmcli.c | 13 + src/nmcli/gen-metadata-nm-settings-nmcli.xml.in | 110 +- src/nmcli/general.c | 4 +- src/nmcli/settings.c | 53 +- src/nmcli/settings.h | 3 + src/nmcli/utils.c | 27 +- src/nmcli/utils.h | 4 +- src/tests/check-systemd-unit.sh | 22 + .../test-client.check-on-disk/test_002.expected | 14 +- .../test-client.check-on-disk/test_003.expected | 1626 ++-- .../test-client.check-on-disk/test_004.expected | 1980 +++-- src/tests/client/test-client.py | 727 +- tools/create-exports-NetworkManager.sh | 36 - tools/generate-docs-nm-property-infos.py | 1 + tools/generate-docs-nm-settings-docs-merge.py | 2 + tools/nm-guest-data/bin-nm-deploy.sh.in | 7 +- tools/nm-guest-data/etc-bashrc.my.in | 1 - tools/nm-guest-data/etc-motd-container.in | 56 +- tools/nm-guest-data/etc-motd-vm.in | 56 +- tools/nm-in-container | 3 +- tools/nm-in-vm | 2 +- tools/run-nm-test.sh | 22 +- tools/test-build.sh | 56 - tools/test-cloud-meta-mock.py | 5 +- tools/test-networkmanager-service.py | 200 +- vapi/NM-1.0.metadata | 2 + 493 files changed, 22435 insertions(+), 20882 deletions(-) create mode 100755 .gitlab-ci/distros_support.py delete mode 100644 Makefile.am delete mode 100644 Makefile.examples delete mode 100644 Makefile.glib delete mode 100644 Makefile.vapigen delete mode 100755 autogen.sh delete mode 100644 config-extra.h.mk delete mode 100644 configure.ac delete mode 100644 docs/api/Makefile.am delete mode 100644 docs/libnm/Makefile.am create mode 100644 introspection/org.freedesktop.NetworkManager.Device.Ipvlan.xml delete mode 100644 m4/attributes.m4 delete mode 100644 m4/ax_lib_readline.m4 delete mode 100644 m4/ax_pthread.m4 delete mode 100644 m4/compiler_options.m4 delete mode 100644 m4/git-sha-record.m4 delete mode 100644 m4/gnome-code-coverage.m4 delete mode 100644 m4/introspection.m4 delete mode 100644 m4/vapigen.m4 create mode 100644 src/core/devices/nm-device-ipvlan.c create mode 100644 src/core/devices/nm-device-ipvlan.h delete mode 100644 src/core/dhcp/nm-dhcp-dhcpcanon.c create mode 100644 src/core/dns/nm-dns-dnsconfd.c create mode 100644 src/core/dns/nm-dns-dnsconfd.h create mode 100644 src/core/settings/plugins/keyfile/tests/keyfiles/Test_Duplicate_Gateways create mode 100644 src/core/settings/plugins/keyfile/tests/keyfiles/Test_Write_Bluetooth_DUN create mode 100644 src/core/settings/plugins/keyfile/tests/keyfiles/Test_Write_Bridge_Component create mode 100644 src/core/settings/plugins/keyfile/tests/keyfiles/Test_Write_Bridge_Main create mode 100644 src/core/settings/plugins/keyfile/tests/keyfiles/Test_Write_Enum create mode 100644 src/core/settings/plugins/keyfile/tests/keyfiles/Test_Write_Flags create mode 100644 src/core/settings/plugins/keyfile/tests/keyfiles/Test_Write_GSM create mode 100644 src/core/settings/plugins/keyfile/tests/keyfiles/Test_Write_Infiniband create mode 100644 src/core/settings/plugins/keyfile/tests/keyfiles/Test_Write_TC create mode 100644 src/core/settings/plugins/keyfile/tests/keyfiles/Test_Write_Wired create mode 100644 src/core/settings/plugins/keyfile/tests/keyfiles/Test_Write_Wired_IP6 create mode 100644 src/core/settings/plugins/keyfile/tests/keyfiles/Test_Write_Wireless create mode 100644 src/libnm-client-impl/nm-device-ipvlan.c create mode 100644 src/libnm-client-public/nm-device-ipvlan.h create mode 100644 src/libnm-core-aux-intern/tests/meson.build create mode 100644 src/libnm-core-aux-intern/tests/test-libnm-core-utils.c create mode 100644 src/libnm-core-impl/nm-setting-ipvlan.c create mode 100644 src/libnm-core-public/nm-setting-ipvlan.h create mode 100644 src/libnm-systemd-shared/sd-adapt-shared/dns-resolver-internal.h create mode 100644 src/libnm-systemd-shared/sd-adapt-shared/keyring-util.h create mode 100644 src/libnm-systemd-shared/sd-adapt-shared/syslog-util.h create mode 100644 src/libnm-systemd-shared/src/basic/bitfield.h create mode 100644 src/libnm-systemd-shared/src/basic/chattr-util.c create mode 100644 src/libnm-systemd-shared/src/basic/chattr-util.h create mode 100644 src/libnm-systemd-shared/src/basic/format-ifname.c create mode 100644 src/libnm-systemd-shared/src/basic/format-ifname.h create mode 100644 src/libnm-systemd-shared/src/basic/missing_pidfd.h create mode 100644 src/libnm-systemd-shared/src/basic/missing_wait.h create mode 100644 src/libnm-systemd-shared/src/basic/pidfd-util.c create mode 100644 src/libnm-systemd-shared/src/basic/pidfd-util.h create mode 100644 src/libnm-systemd-shared/src/basic/sha256.c create mode 100644 src/libnm-systemd-shared/src/basic/sha256.h create mode 100644 src/libnm-systemd-shared/src/fundamental/iovec-util-fundamental.h create mode 100644 src/libnm-systemd-shared/src/fundamental/sha256-fundamental.c create mode 100644 src/libnm-systemd-shared/src/fundamental/sha256-fundamental.h delete mode 100644 src/libnm-systemd-shared/src/fundamental/sha256.c delete mode 100644 src/libnm-systemd-shared/src/fundamental/sha256.h create mode 100644 src/nm-cloud-setup/nmcs-provider-oci.c create mode 100644 src/nm-cloud-setup/nmcs-provider-oci.h create mode 100755 src/tests/check-systemd-unit.sh delete mode 100755 tools/test-build.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5d2aba95..75816296 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -60,11 +60,11 @@ variables: # # This is done by running `ci-fairy generate-template` and possibly bumping # ".default_tag". - ALPINE_TAG: 'tag-1a1fa0d53067' - CENTOS_TAG: 'tag-4960ce3d0698' - DEBIAN_TAG: 'tag-e9c1178c8d3b' - FEDORA_TAG: 'tag-4960ce3d0698' - UBUNTU_TAG: 'tag-e9c1178c8d3b' + ALPINE_TAG: 'tag-77ec3d923fd6' + CENTOS_TAG: 'tag-8af9c6a05c7b' + DEBIAN_TAG: 'tag-ecad19904683' + FEDORA_TAG: 'tag-8af9c6a05c7b' + UBUNTU_TAG: 'tag-ecad19904683' ALPINE_EXEC: 'bash .gitlab-ci/alpine-install.sh' CENTOS_EXEC: 'bash .gitlab-ci/fedora-install.sh' @@ -111,16 +111,86 @@ tier1:fedora:41@prep: FDO_DISTRIBUTION_VERSION: '41' FDO_DISTRIBUTION_TAG: $FEDORA_TAG FDO_DISTRIBUTION_EXEC: $FEDORA_EXEC + rules: + - if: $CI_PIPELINE_SOURCE != 'schedule' || $SCHEDULED_PIPELINE_NAME == "weekly" + +tier2:fedora:rawhide@prep: + extends: + - .fdo.container-build@fedora + stage: prep + variables: + GIT_STRATEGY: none + FDO_DISTRIBUTION_VERSION: 'rawhide' + FDO_DISTRIBUTION_TAG: $FEDORA_TAG + FDO_DISTRIBUTION_EXEC: $FEDORA_EXEC rules: - if: $CI_PIPELINE_SOURCE != 'schedule' + when: manual + allow_failure: true -tier2:alpine:3.21@prep: +tier2:centos:stream9@prep: + extends: + - .fdo.container-build@centos + stage: prep + variables: + GIT_STRATEGY: none + FDO_DISTRIBUTION_VERSION: 'stream9' + FDO_DISTRIBUTION_TAG: $CENTOS_TAG + FDO_DISTRIBUTION_EXEC: $CENTOS_EXEC + rules: + - if: $CI_PIPELINE_SOURCE != 'schedule' + when: manual + allow_failure: true + +tier2:ubuntu:devel@prep: + extends: + - .fdo.container-build@ubuntu + stage: prep + variables: + GIT_STRATEGY: none + FDO_DISTRIBUTION_VERSION: 'devel' + FDO_DISTRIBUTION_TAG: $UBUNTU_TAG + FDO_DISTRIBUTION_EXEC: $UBUNTU_EXEC + rules: + - if: $CI_PIPELINE_SOURCE != 'schedule' + when: manual + allow_failure: true + +tier2:debian:testing@prep: + extends: + - .fdo.container-build@debian + stage: prep + variables: + GIT_STRATEGY: none + FDO_DISTRIBUTION_VERSION: 'testing' + FDO_DISTRIBUTION_TAG: $DEBIAN_TAG + FDO_DISTRIBUTION_EXEC: $DEBIAN_EXEC + rules: + - if: $CI_PIPELINE_SOURCE != 'schedule' + when: manual + allow_failure: true + +tier2:debian:sid@prep: + extends: + - .fdo.container-build@debian + stage: prep + variables: + GIT_STRATEGY: none + FDO_DISTRIBUTION_VERSION: 'sid' + FDO_DISTRIBUTION_TAG: $DEBIAN_TAG + FDO_DISTRIBUTION_EXEC: $DEBIAN_EXEC + rules: + - if: $CI_PIPELINE_SOURCE != 'schedule' + when: manual + allow_failure: true + +tier2:alpine:edge@prep: extends: - .fdo.container-build@alpine stage: prep variables: GIT_STRATEGY: none - FDO_DISTRIBUTION_VERSION: '3.21' + FDO_DISTRIBUTION_VERSION: 'edge' FDO_DISTRIBUTION_TAG: $ALPINE_TAG FDO_DISTRIBUTION_EXEC: $ALPINE_EXEC rules: @@ -212,13 +282,13 @@ tier3:debian:12@prep: when: manual allow_failure: true -tier3:alpine:3.20@prep: +tier3:alpine:3.21@prep: extends: - .fdo.container-build@alpine stage: prep variables: GIT_STRATEGY: none - FDO_DISTRIBUTION_VERSION: '3.20' + FDO_DISTRIBUTION_VERSION: '3.21' FDO_DISTRIBUTION_TAG: $ALPINE_TAG FDO_DISTRIBUTION_EXEC: $ALPINE_EXEC rules: @@ -226,13 +296,13 @@ tier3:alpine:3.20@prep: when: manual allow_failure: true -tier3:alpine:3.19@prep: +tier3:alpine:3.20@prep: extends: - .fdo.container-build@alpine stage: prep variables: GIT_STRATEGY: none - FDO_DISTRIBUTION_VERSION: '3.19' + FDO_DISTRIBUTION_VERSION: '3.20' FDO_DISTRIBUTION_TAG: $ALPINE_TAG FDO_DISTRIBUTION_EXEC: $ALPINE_EXEC rules: @@ -240,13 +310,13 @@ tier3:alpine:3.19@prep: when: manual allow_failure: true -tier3:alpine:3.18@prep: +tier3:alpine:3.19@prep: extends: - .fdo.container-build@alpine stage: prep variables: GIT_STRATEGY: none - FDO_DISTRIBUTION_VERSION: '3.18' + FDO_DISTRIBUTION_VERSION: '3.19' FDO_DISTRIBUTION_TAG: $ALPINE_TAG FDO_DISTRIBUTION_EXEC: $ALPINE_EXEC rules: @@ -254,15 +324,15 @@ tier3:alpine:3.18@prep: when: manual allow_failure: true -tier3:centos:stream9@prep: +tier3:alpine:3.18@prep: extends: - - .fdo.container-build@centos + - .fdo.container-build@alpine stage: prep variables: GIT_STRATEGY: none - FDO_DISTRIBUTION_VERSION: 'stream9' - FDO_DISTRIBUTION_TAG: $CENTOS_TAG - FDO_DISTRIBUTION_EXEC: $CENTOS_EXEC + FDO_DISTRIBUTION_VERSION: '3.18' + FDO_DISTRIBUTION_TAG: $ALPINE_TAG + FDO_DISTRIBUTION_EXEC: $ALPINE_EXEC rules: - if: $CI_PIPELINE_SOURCE != 'schedule' when: manual @@ -307,17 +377,87 @@ t_fedora:41: rules: - if: $CI_PIPELINE_SOURCE != 'schedule' -t_alpine:3.21: +t_fedora:rawhide: + extends: + - .build@template + - .fdo.distribution-image@fedora + - .nm_artifacts_debug + stage: tier2 + variables: + FDO_DISTRIBUTION_VERSION: 'rawhide' + FDO_DISTRIBUTION_TAG: $FEDORA_TAG + needs: + - "tier2:fedora:rawhide@prep" + rules: + - if: $CI_PIPELINE_SOURCE != 'schedule' + +t_centos:stream9: + extends: + - .build@template + - .fdo.distribution-image@centos + - .nm_artifacts_debug + stage: tier2 + variables: + FDO_DISTRIBUTION_VERSION: 'stream9' + FDO_DISTRIBUTION_TAG: $CENTOS_TAG + needs: + - "tier2:centos:stream9@prep" + rules: + - if: $CI_PIPELINE_SOURCE != 'schedule' + +t_ubuntu:devel: + extends: + - .build@template + - .fdo.distribution-image@ubuntu + - .nm_artifacts_debug + stage: tier2 + variables: + FDO_DISTRIBUTION_VERSION: 'devel' + FDO_DISTRIBUTION_TAG: $UBUNTU_TAG + needs: + - "tier2:ubuntu:devel@prep" + rules: + - if: $CI_PIPELINE_SOURCE != 'schedule' + +t_debian:testing: + extends: + - .build@template + - .fdo.distribution-image@debian + - .nm_artifacts_debug + stage: tier2 + variables: + FDO_DISTRIBUTION_VERSION: 'testing' + FDO_DISTRIBUTION_TAG: $DEBIAN_TAG + needs: + - "tier2:debian:testing@prep" + rules: + - if: $CI_PIPELINE_SOURCE != 'schedule' + +t_debian:sid: + extends: + - .build@template + - .fdo.distribution-image@debian + - .nm_artifacts_debug + stage: tier2 + variables: + FDO_DISTRIBUTION_VERSION: 'sid' + FDO_DISTRIBUTION_TAG: $DEBIAN_TAG + needs: + - "tier2:debian:sid@prep" + rules: + - if: $CI_PIPELINE_SOURCE != 'schedule' + +t_alpine:edge: extends: - .build@template - .fdo.distribution-image@alpine - .nm_artifacts_debug stage: tier2 variables: - FDO_DISTRIBUTION_VERSION: '3.21' + FDO_DISTRIBUTION_VERSION: 'edge' FDO_DISTRIBUTION_TAG: $ALPINE_TAG needs: - - "tier2:alpine:3.21@prep" + - "tier2:alpine:edge@prep" rules: - if: $CI_PIPELINE_SOURCE != 'schedule' @@ -405,59 +545,59 @@ t_debian:12: rules: - if: $CI_PIPELINE_SOURCE != 'schedule' -t_alpine:3.20: +t_alpine:3.21: extends: - .build@template - .fdo.distribution-image@alpine - .nm_artifacts_debug stage: tier3 variables: - FDO_DISTRIBUTION_VERSION: '3.20' + FDO_DISTRIBUTION_VERSION: '3.21' FDO_DISTRIBUTION_TAG: $ALPINE_TAG needs: - - "tier3:alpine:3.20@prep" + - "tier3:alpine:3.21@prep" rules: - if: $CI_PIPELINE_SOURCE != 'schedule' -t_alpine:3.19: +t_alpine:3.20: extends: - .build@template - .fdo.distribution-image@alpine - .nm_artifacts_debug stage: tier3 variables: - FDO_DISTRIBUTION_VERSION: '3.19' + FDO_DISTRIBUTION_VERSION: '3.20' FDO_DISTRIBUTION_TAG: $ALPINE_TAG needs: - - "tier3:alpine:3.19@prep" + - "tier3:alpine:3.20@prep" rules: - if: $CI_PIPELINE_SOURCE != 'schedule' -t_alpine:3.18: +t_alpine:3.19: extends: - .build@template - .fdo.distribution-image@alpine - .nm_artifacts_debug stage: tier3 variables: - FDO_DISTRIBUTION_VERSION: '3.18' + FDO_DISTRIBUTION_VERSION: '3.19' FDO_DISTRIBUTION_TAG: $ALPINE_TAG needs: - - "tier3:alpine:3.18@prep" + - "tier3:alpine:3.19@prep" rules: - if: $CI_PIPELINE_SOURCE != 'schedule' -t_centos:stream9: +t_alpine:3.18: extends: - .build@template - - .fdo.distribution-image@centos + - .fdo.distribution-image@alpine - .nm_artifacts_debug stage: tier3 variables: - FDO_DISTRIBUTION_VERSION: 'stream9' - FDO_DISTRIBUTION_TAG: $CENTOS_TAG + FDO_DISTRIBUTION_VERSION: '3.18' + FDO_DISTRIBUTION_TAG: $ALPINE_TAG needs: - - "tier3:centos:stream9@prep" + - "tier3:alpine:3.18@prep" rules: - if: $CI_PIPELINE_SOURCE != 'schedule' @@ -504,7 +644,7 @@ check-tree: - date '+%Y%m%d-%H%M%S'; git ls-files -z -- 'po/*.po' | xargs -0 -n1 msgfmt -vc - date '+%Y%m%d-%H%M%S'; contrib/scripts/nm-code-format.sh -n - date '+%Y%m%d-%H%M%S'; ci-fairy generate-template && git diff --exit-code - - date '+%Y%m%d-%H%M%S'; ./autogen.sh --disable-autotools-deprecation && [ "$(LANG=C make -C po update-po 2>&1 1>/dev/null | grep -c 'warning:')" = 0 ] + - date '+%Y%m%d-%H%M%S'; meson setup build && [ "$(LANG=C ninja -C build NetworkManager-update-po 2>&1 1>/dev/null | grep -c 'warning:')" = 0 ] pages: stage: deploy @@ -538,15 +678,16 @@ coverity: extends: - .fdo.distribution-image@fedora variables: - FDO_DISTRIBUTION_VERSION: '40' + FDO_DISTRIBUTION_VERSION: '41' FDO_DISTRIBUTION_TAG: $FEDORA_TAG stage: coverity - needs: [] + needs: + - "tier1:fedora:41@prep" rules: - if: $CI_PIPELINE_SOURCE == "schedule" && $SCHEDULED_PIPELINE_NAME == "weekly" script: - dnf install -y curl - - BUILD_TYPE=meson CC=gcc CONFIGURE_ONLY=1 contrib/scripts/nm-ci-run.sh + - CC=gcc CONFIGURE_ONLY=1 contrib/scripts/nm-ci-run.sh - cd build - ../.gitlab-ci/coverity.sh download - cov-analysis-linux64-*/bin/cov-build --dir cov-int ninja diff --git a/.gitlab-ci/README.md b/.gitlab-ci/README.md index 5619a418..5214f7bc 100644 --- a/.gitlab-ci/README.md +++ b/.gitlab-ci/README.md @@ -19,8 +19,8 @@ Regenerate the yml by running `ci-fairy generate-template`. There are also tests for checking that the yml is correct: 1) run `tools/check-gitlab-ci.sh` -2) run `make check-local-gitlab-ci`, which runs 1). This also - runs as part of `make check`. +2) run `meson test check-local-gitlab-ci`, which runs 1). This also + runs as part of `meson test`. In both cases, the test is skipped if `ci-fairy` is not in the path. Install the correct `ci-fairy` version. diff --git a/.gitlab-ci/ci.template b/.gitlab-ci/ci.template index a804a2ee..3af5cac4 100644 --- a/.gitlab-ci/ci.template +++ b/.gitlab-ci/ci.template @@ -119,8 +119,10 @@ tier{{distro.tier}}:{{distro.name}}:{{version}}@prep: FDO_DISTRIBUTION_TAG: ${{distro.name.upper()}}_TAG FDO_DISTRIBUTION_EXEC: ${{distro.name.upper()}}_EXEC rules: +{% if distro.tier == 1 %} + - if: $CI_PIPELINE_SOURCE != 'schedule' || $SCHEDULED_PIPELINE_NAME == "weekly" +{% else %} - if: $CI_PIPELINE_SOURCE != 'schedule' -{% if distro.tier > 1 %} when: manual allow_failure: true {% endif %} @@ -225,7 +227,7 @@ check-tree: - date '+%Y%m%d-%H%M%S'; git ls-files -z -- 'po/*.po' | xargs -0 -n1 msgfmt -vc - date '+%Y%m%d-%H%M%S'; contrib/scripts/nm-code-format.sh -n - date '+%Y%m%d-%H%M%S'; ci-fairy generate-template && git diff --exit-code - - date '+%Y%m%d-%H%M%S'; ./autogen.sh --disable-autotools-deprecation && [ "$(LANG=C make -C po update-po 2>&1 1>/dev/null | grep -c 'warning:')" = 0 ] + - date '+%Y%m%d-%H%M%S'; meson setup build && [ "$(LANG=C ninja -C build NetworkManager-update-po 2>&1 1>/dev/null | grep -c 'warning:')" = 0 ] pages: stage: deploy @@ -257,17 +259,18 @@ triage:issues: coverity: extends: - - .fdo.distribution-image@fedora + - .fdo.distribution-image@{{default_distro.name}} variables: - FDO_DISTRIBUTION_VERSION: '40' - FDO_DISTRIBUTION_TAG: $FEDORA_TAG + FDO_DISTRIBUTION_VERSION: '{{default_distro.versions[0]}}' + FDO_DISTRIBUTION_TAG: ${{default_distro.name.upper()}}_TAG stage: coverity - needs: [] + needs: + - "tier{{default_distro.tier}}:{{default_distro.name}}:{{default_distro.versions[0]}}@prep" rules: - if: $CI_PIPELINE_SOURCE == "schedule" && $SCHEDULED_PIPELINE_NAME == "weekly" script: - dnf install -y curl - - BUILD_TYPE=meson CC=gcc CONFIGURE_ONLY=1 contrib/scripts/nm-ci-run.sh + - CC=gcc CONFIGURE_ONLY=1 contrib/scripts/nm-ci-run.sh - cd build - ../.gitlab-ci/coverity.sh download - cov-analysis-linux64-*/bin/cov-build --dir cov-int ninja diff --git a/.gitlab-ci/config.yml b/.gitlab-ci/config.yml index 8b9fcac3..39607308 100644 --- a/.gitlab-ci/config.yml +++ b/.gitlab-ci/config.yml @@ -27,10 +27,27 @@ distributions: # TIER 2: distribution versions that will or might use the current NM version. # Run when doing a release. + - name: fedora + tier: 2 + versions: + - 'rawhide' + - name: centos + tier: 2 + versions: + - 'stream9' + - name: ubuntu + tier: 2 + versions: + - 'devel' + - name: debian + tier: 2 + versions: + - 'testing' + - 'sid' - name: alpine tier: 2 versions: - - '3.21' + - 'edge' # TIER 3: distribution versions not in EOL but don't use the current NM version. # Run when doing a release, but a failure won't be blocking for the release. @@ -52,10 +69,7 @@ distributions: - name: alpine tier: 3 versions: + - '3.21' - '3.20' - '3.19' - - '3.18' - - name: centos - tier: 3 - versions: - - 'stream9' \ No newline at end of file + - '3.18' \ No newline at end of file diff --git a/.gitlab-ci/distros-info.yml b/.gitlab-ci/distros-info.yml index 53a63e21..d96ec125 100644 --- a/.gitlab-ci/distros-info.yml +++ b/.gitlab-ci/distros-info.yml @@ -2,25 +2,25 @@ # cadence: every 6 months # support: 13 months # Image aliases: latest, rawhide +# Releases and support info: https://docs.fedoraproject.org/en-US/releases/lifecycle/ +# NetworkManager versions info: https://src.fedoraproject.org/rpms/NetworkManager fedora: - version: rawhide support: yes nm: main +- version: 41 + support: 2025-11-19 + nm: 1.50 + tier1-default: yes - version: 40 support: 2025-05-13 nm: 1.46 -- version: 39 - support: 2024-11-12 - nm: 1.44 # CentOS Stream centos: - version: stream9 support: 2027-05-31 nm: main -- version: stream8 - support: 2024-05-31 ## EOL - nm: 1.40 # RHEL: # Even minor versions: @@ -29,10 +29,14 @@ centos: # Odd minor versions: # cadence: every year (every other 6 months than even versions) # support: 6 months +# Releases and support info: https://access.redhat.com/support/policy/updates/errata rhel: -- version: 9.5 +- version: 9.6 # not released yet support: yes nm: main +- version: 9.5 + support: yes + nm: 1.48 - version: 9.4 support: 2026-04-30 extended-support: 2028-04-30 @@ -67,12 +71,18 @@ rhel: # cadence: every 6 months # support: 9 months # Image aliases: latest (LTS), rolling (LTS or non-LTS), devel +# Releases and support info: https://salsa.debian.org/debian/distro-info-data/-/blob/main/ubuntu.csv +# NetworkManager versions info: https://packages.ubuntu.com/search?keywords=network-manager ubuntu: - version: devel support: yes nm: main +- version: 24.10 + name: oracular + support: 2025-07-10 + nm: 1.48 - version: 24.04 - name: focal + name: noble support: 2029-05-31 extended-support: 2034-04-25 nm: 1.46 @@ -82,7 +92,7 @@ ubuntu: extended-support: 2032-04-21 nm: 1.36 - version: 20.04 - name: noble + name: focal support: 2025-05-29 extended-support: 2030-04-23 nm: 1.22 @@ -90,9 +100,11 @@ ubuntu: # Debian: # cadence: every 2 years # support: 3 years + 2 years LTS -# Images aliases: stable, oldstable, oldoldstable +# Images aliases: testing, sid, stable, oldstable, oldoldstable +# Releases and support info: https://salsa.debian.org/debian/distro-info-data/-/blob/main/debian.csv +# NetworkManager versions info: https://packages.debian.org/search?keywords=network-manager debian: -- version: devel +- version: testing support: yes nm: main - version: sid @@ -113,10 +125,15 @@ debian: # cadence: every 6 months # support: 2 years # Image aliases: latest, edge (development) +# Releases and support info: https://alpinelinux.org/releases/ +# NetworkManager versions info (manually select Alpine version): https://pkgs.alpinelinux.org/packages?name=networkmanager&arch=x86_64 alpine: - version: edge support: yes nm: main +- version: 3.21 + support: 2026-11-01 + nm: 1.50 - version: 3.20 support: 2026-04-01 nm: 1.46 @@ -126,6 +143,3 @@ alpine: - version: 3.18 support: 2025-05-09 nm: 1.42 -- version: 3.17 - support: 2024-11-22 - nm: 1.40 diff --git a/.gitlab-ci/distros_support.py b/.gitlab-ci/distros_support.py new file mode 100755 index 00000000..f4989fba --- /dev/null +++ b/.gitlab-ci/distros_support.py @@ -0,0 +1,234 @@ +#!/usr/bin/env python3 + +import datetime +import os +import sys + +try: + import yaml +except ImportError: + print("Error: missing pyyaml. Install with `pip install pyyaml`.", file=sys.stderr) + quit(code=1) + + +# These are the distros that we currently check, ordered by priority to be chosen as Tier 1 +ci_distros = ("fedora", "centos", "debian", "ubuntu", "alpine") + + +def _parse_date(date_str) -> datetime.date: + return datetime.datetime.strptime(date_str, "%Y-%m-%d").date() + + +def _is_supported(val_str, today) -> bool: + val_str = val_str.lower() + if val_str in ("yes", "true"): + return True + elif val_str in ("no", "false"): + return False + else: + support_date = _parse_date(val_str) + return today <= support_date + + +def _nm_version_is_newer(nm_ver, nm_ver_from): + if nm_ver == "main": + return nm_ver_from != "main" # main is newer than anything except main itself + elif nm_ver_from == "main": + return False + nm_ver = nm_ver.split(".") + nm_ver_from = nm_ver_from.split(".") + if int(nm_ver[0]) > int(nm_ver_from[0]): + return True + elif nm_ver[0] == nm_ver_from[0] and int(nm_ver[1]) > int(nm_ver_from[1]): + return True + return False + + +def _print_usage(): + print("Usage: distros_support.py [-a|--all] | ") + print(" -a|--all: print NM versions still active in any distro") + print(" nm_version: print all info and config.yml file of the specified NM version") + + +if len(sys.argv) == 2 and sys.argv[1] in ("-h", "--help", "help"): + _print_usage() + quit() +elif len(sys.argv) > 2: + print("Error: wrong arguments.", file=sys.stderr) + _print_usage() + quit(code=1) + +today = datetime.date.today() +with open(os.path.dirname(__file__) + "/distros-info.yml") as f: + distros_info = yaml.load(f, Loader=yaml.BaseLoader) + +# Warn about EOL'd distros to remove them +for distro, versions in distros_info.items(): + for info in versions: + if _is_supported(info["support"], today): + continue + if "extended-support" in info and _is_supported( + info["extended-support"], today + ): + continue + print( + f"Warn: {distro} {info['version']} reached EOL, consider deleting this entry", + file=sys.stderr, + ) + +# If --all is selected, print all active NM versions and return +if len(sys.argv) < 2 or sys.argv[1] in ("-a", "--all"): + nm_versions = {} + + for distro, versions in distros_info.items(): + for info in versions: + if not _is_supported(info["support"], today): + continue + nm_versions.setdefault(info["nm"], []).append(f"{distro} {info['version']}") + + for nm_ver, distros in sorted(nm_versions.items(), reverse=True): + print("- NM {}: {}".format(nm_ver, ", ".join(distros))) + + quit() + +# Otherwise, print all the info related to the specified NM version +nm_version = sys.argv[1] + +# Print distros that uses this nm_version +print(f"# List of distros using NM {nm_version}") +print("---") +for distro, versions in distros_info.items(): + for info in versions: + if nm_version == info["nm"] and _is_supported(info["support"], today): + try: + support_end_date = _parse_date(info["support"]) + print( + f"- {distro} {info['version']}, supported until {info['support']}" + ) + except ValueError: + print(f"- {distro} {info['version']}, supported") + +# Collect info about what distros should be Tier 2 and 3 +tier2 = {} +tier3 = {} +for distro, versions in distros_info.items(): + if distro not in ci_distros: + continue + for info in versions: + if not _is_supported(info["support"], today): + continue + if nm_version == info["nm"]: + tier2.setdefault(distro, []).append(info["version"]) + elif _nm_version_is_newer(nm_version, info["nm"]): + tier3.setdefault(distro, []).append(info["version"]) + +# Select a Tier1 distro +tier1_distro, tier1_version = "", "" + +for fed_ver_info in distros_info["fedora"]: + # We prefer the Fedora version marked as tier1-default + if fed_ver_info.get("tier1-default", False): + for tier in (tier2, tier3): + if fed_ver_info["version"] in tier.get("fedora", []): + tier1_distro = "fedora" + tier1_version = fed_ver_info["version"] + tier["fedora"].remove(fed_ver_info["version"]) + if not tier["fedora"]: + del tier["fedora"] + +for distro in ci_distros: + if tier1_distro: + break + + for tier in (tier2, tier3): + if distro in tier: + # Exception: we want to use fedora:latest instead of fedora:rawhide because + # we don't want lot of build failures in Tier 1, which is run for every MR. + # We just ignore fedora:rawhide for Tier 1. + if distro == "fedora" and tier[distro][0] == "rawhide": + if len(tier[distro]) == 1: + continue + idx = 1 + else: + idx = 0 + + tier1_distro = distro + tier1_version = tier[distro].pop(idx) + if not tier[distro]: + del tier[distro] + break + +if not tier1_distro or not tier1_version: + print("Warn: no suitable distro for Tier 1 found", file=sys.stderr) + +# Always add CentOS Stream at least as Tier 3 +for centos_ver_info in distros_info["centos"]: + version = centos_ver_info["version"] + found = False + + if tier1_distro == "centos" and tier1_version == version: + found = True + for tier in (tier2, tier3): + if "centos" in tier and version in tier["centos"]: + found = True + break + + if not found: + tier3.setdefault("centos", []).append(version) + +# Print the config.yml needed for the corresponding stable branch +branch = "main" if nm_version == "main" else "nm-" + nm_version.replace(".", "-") +print("\n# .gitlab-ci/config.yml for branch '{}'".format(branch)) +print( + """--- +# This file contains the configuration for the gitlab ci. +# +# To recreate the .gitlab-ci.yml file, run +# ci-fairy generate-template +# +# The ci-fairy tool is part of +# https://gitlab.freedesktop.org/freedesktop/ci-templates +# + +# Some distros are fairly similar, and we reuse similar scripts. +# The base type maps the distro name to their base. +base_types: + fedora: fedora + centos: fedora + debian: debian + ubuntu: debian + alpine: alpine + +# The list of all distributions we want to create job for. +distributions: + # TIER 1: CI run for all MRs. + # The first tier:1 in the list is used to build the pages and check-{tree,patch}.""" +) +print(" - name: {}".format(tier1_distro)) +print(" tier: 1") +print(" versions:") +print(" - '{}'".format(tier1_version)) + +print( + """ + # TIER 2: distribution versions that will or might use the current NM version. + # Run when doing a release.""" +) +for distro, versions in tier2.items(): + print(" - name: {}".format(distro)) + print(" tier: 2") + print(" versions:") + for version in versions: + print(" - '{}'".format(version)) + +print( + """ + # TIER 3: distribution versions not in EOL but don't use the current NM version. + # Run when doing a release, but a failure won't be blocking for the release.""" +) +for distro, versions in tier3.items(): + print(" - name: {}".format(distro)) + print(" tier: 3") + print(" versions:") + for version in versions: + print(" - '{}'".format(version)) diff --git a/.gitlab-ci/run-test.sh b/.gitlab-ci/run-test.sh index 2008c189..265dbd54 100755 --- a/.gitlab-ci/run-test.sh +++ b/.gitlab-ci/run-test.sh @@ -50,7 +50,7 @@ meson --version export NMTST_SKIP_CHECK_GITLAB_CI=1 # Assert that "$1" is one of the valid values for NM_TEST_SELECT_RUN. die() otherwise. -check_run_assert() { +is_run_selected_assert() { { set +x; } 2>/dev/null local run="$1" local a @@ -83,27 +83,19 @@ check_run_assert() { } [ -z "$NM_TEST_SELECT_RUN" ] && NM_TEST_SELECT_RUN=all -check_run_assert "$NM_TEST_SELECT_RUN" +is_run_selected_assert "$NM_TEST_SELECT_RUN" -check_run() { - local test_no="$1" +is_run_selected() { + local run="$1" - check_run_assert "$test_no" + is_run_selected_assert "$run" # Usually, we run the build several times. However, for testing # the build script manually, it can be useful to explicitly select # one step to run. For example, if step 3 is known to fail, you # can still manually run step A by setting NM_TEST_SELECT_RUN=A. - test "$NM_TEST_SELECT_RUN" = all -o "$NM_TEST_SELECT_RUN" = "$test_no" -} - -check_run_clean() { - if ! check_run "$1" ; then - return 1 - fi - do_clean - return 0 + test "$NM_TEST_SELECT_RUN" = all -o "$NM_TEST_SELECT_RUN" = "$run" } die_with_testlog() { @@ -111,30 +103,35 @@ die_with_testlog() { exit 1 } -if check_run_clean meson+gcc+docs+valgrind ; then - BUILD_TYPE=meson CC=gcc WITH_DOCS=1 WITH_VALGRIND=1 contrib/scripts/nm-ci-run.sh || die_with_testlog +if is_run_selected meson+gcc+docs+valgrind ; then + do_clean + CC=gcc WITH_DOCS=1 WITH_VALGRIND=1 contrib/scripts/nm-ci-run.sh || die_with_testlog mv INST/share/gtk-doc/html "$ARTIFACT_DIR/docs-html" fi -if check_run_clean meson+clang; then - BUILD_TYPE=meson CC=clang WITH_DOCS=0 contrib/scripts/nm-ci-run.sh || die_with_testlog +if is_run_selected meson+clang; then + do_clean + CC=clang WITH_DOCS=0 contrib/scripts/nm-ci-run.sh || die_with_testlog fi -if check_run_clean rpm+meson; then +if is_run_selected rpm+meson; then + do_clean if [[ $IS_FEDORA = 1 ]]; then ./contrib/fedora/rpm/build_clean.sh -g -w crypto_gnutls -w debug -w iwd -w test -w meson || die_with_testlog fi fi -if check_run_clean tarball && [ "$NM_BUILD_TARBALL" = 1 ]; then +if is_run_selected tarball && [ "$NM_BUILD_TARBALL" = 1 ]; then + do_clean SIGN_SOURCE=0 ./contrib/fedora/rpm/build_clean.sh -r || die_with_testlog mv ./build/meson-dist/NetworkManager-1*.tar.xz "$ARTIFACT_DIR/" mv ./contrib/fedora/rpm/latest/SRPMS/NetworkManager-1*.src.rpm "$ARTIFACT_DIR/" do_clean fi -if check_run_clean tarball+meson; then - BUILD_TYPE=meson CC=gcc WITH_DOCS=1 CONFIGURE_ONLY=1 contrib/scripts/nm-ci-run.sh || die_with_testlog +if is_run_selected tarball+meson; then + do_clean + CC=gcc WITH_DOCS=1 CONFIGURE_ONLY=1 contrib/scripts/nm-ci-run.sh || die_with_testlog fi ############################################################################### @@ -162,7 +159,8 @@ test_subtree() { popd } -if check_run_clean subtree; then +if is_run_selected subtree; then + do_clean for d in c-list c-rbtree c-siphash c-stdaux n-acd n-dhcp4 ; do for cc in gcc clang; do test_subtree "$d" "$cc" @@ -174,10 +172,10 @@ fi if [ "$NM_BUILD_TARBALL" = 1 ]; then do_clean - if check_run meson+gcc+docs+valgrind ; then + if is_run_selected meson+gcc+docs+valgrind ; then mv "$ARTIFACT_DIR/docs-html/" ./ fi - if check_run tarball ; then + if is_run_selected tarball ; then mv \ "$ARTIFACT_DIR"/NetworkManager-1*.tar.xz \ "$ARTIFACT_DIR"/NetworkManager-1*.src.rpm \ diff --git a/.triage-policies.yml b/.triage-policies.yml index 6176b919..fa82fcdf 100644 --- a/.triage-policies.yml +++ b/.triage-policies.yml @@ -1,3 +1,5 @@ +# Gitlab-triage documentation: https://gitlab.com/gitlab-org/ruby/gems/gitlab-triage/-/blob/master/README.md + host_url: https://gitlab.freedesktop.org resource_rules: @@ -182,3 +184,47 @@ resource_rules: Work is necessary to move it forward. labels: - stale + + - name: Label for MRs authored by core contributors (member_of project) + conditions: + state: opened + forbidden_labels: + - core-contributor + - community-contributor + author_member: + source: project + condition: member_of + source_id: NetworkManager/NetworkManager + actions: + labels: + - core-contributor + + - name: Label for MRs authored by core contributors (member_of group) + conditions: + state: opened + forbidden_labels: + - core-contributor + - community-contributor + author_member: + source: group + condition: member_of + source_id: NetworkManager + actions: + labels: + - core-contributor + + - name: Label for MRs authored by community contributors and ensure CI is run + conditions: + state: opened + forbidden_labels: + - core-contributor + - community-contributor + actions: + labels: + - community-contributor + comment_type: thread + comment: >- + Attention maintainers: remember to run the CI!! + + This MR is authored by a contributor from the community and the CI does not + run automatically. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 215298e1..d755ef74 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -256,14 +256,13 @@ maintained by the upstream maintainers. There you find builds of latest `main` a Unit Tests ---------- -We have plenty of unit tests. Run them with `make check` or -`meson test -C build`. +We have plenty of unit tests. Run them with `meson test -C build`. Note that some files in the source tree are both generated and commited to git. That means, certain changes to the code also affect these generated files. The unit test fail in that case, to indicate that the generated files no longer match what is commited to git. -You can also automatically regenerate the files by running `NM_TEST_REGENERATE=1 make check`. +You can also automatically regenerate the files by running `NM_TEST_REGENERATE=1 meson test`. Note that test-client requires working translation. See the [comment](src/tests/client/test-client.py#L14) for how to configure it. @@ -416,7 +415,7 @@ have `-I. -I./src/` in their build arguments. So to include a header like [`src/libnm-glib-aux/nm-random-utils.h`](src/libnm-glib-aux/nm-random-utils.h) you'd do `#include "libnm-glib-aux/nm-random-utils.h"`. -Note that there are exceptions. For example, `src/libnm-std-aux/nm-linux-compat.h`](src/libnm-std-aux/nm-linux-compat.h) +Note that there are exceptions. For example, [`src/libnm-std-aux/nm-linux-compat.h`](src/libnm-std-aux/nm-linux-compat.h) may need to be included before system headers as it is supposed to include headers from `src/linux-headers`](src/linux-headers). diff --git a/MAINTAINERS.md b/MAINTAINERS.md index ab00ed31..9be6901e 100644 --- a/MAINTAINERS.md +++ b/MAINTAINERS.md @@ -254,10 +254,10 @@ Versioning scheme (version numbers are called MAJOR.MINOR.MICRO): When doing a release, follow this process: 1. Ensure that `NEWS` file is up to date. -2. Increment the version in `configure.ac`, commit and tag the commit. Example: +2. Increment the version in `meson.build`, commit and tag the commit. Example: `git tag -s 1.2.8 -m 'Tag 1.2.8'`. 3. Ensure that you are on the right commit and create the tarball: - `git clean -fdx && ./autogen.sh && make distcheck` + `git clean -fdx && meson setup build && cd build && meson dist` 4. Upload the tarball: `scp ./*-*.tar.xz "$user@master.gnome.org:"` 5. Login to `master.gnome.org` and run `ftpadmin install`. Ensure the new tarballs show up at https://download.gnome.org/sources/ diff --git a/Makefile.am b/Makefile.am deleted file mode 100644 index edf77e85..00000000 --- a/Makefile.am +++ /dev/null @@ -1,5949 +0,0 @@ -include $(GLIB_MAKEFILE) --include $(INTROSPECTION_MAKEFILE) -include Makefile.vapigen - -@GNOME_CODE_COVERAGE_RULES@ - -@NM_LOG_COMPILER@ - -############################################################################### - -AUTOMAKE_OPTIONS = subdir-objects - -noinst_LTLIBRARIES = -check_LTLIBRARIES = -noinst_PROGRAMS = -noinst_LIBRARIES = -check_PROGRAMS = -noinst_DATA = -sbin_PROGRAMS = -bin_PROGRAMS = -libexec_PROGRAMS = -dist_libexec_SCRIPTS = -lib_LTLIBRARIES = -plugin_LTLIBRARIES = -core_plugins = -service_DATA = -man_MANS = -examples_DATA = -CLEANFILES = -DISTCLEANFILES = -EXTRA_DIST = -EXTRA_LTLIBRARIES = -dist_hook = -dist_dependencies = -dist_configure_check = -install_data_hook = -install_exec_hook = -uninstall_hook = -TESTS = -BUILT_SOURCES = -GLIB_GENERATED = -man_pages = -man_pages_autogen = -check_programs = -check_programs_norun = -check_ltlibraries = -check_local = -VAPIGEN_VAPIS = -dbusservice_DATA = -dbusactivation_DATA = -systemdsystemunit_DATA = - -INTROSPECTION_GIRS = -INTROSPECTION_SCANNER_ARGS = -INTROSPECTION_COMPILER_ARGS = -# Pass SANITIZER_ENV where a command that uses built libraries is -# executed, to suppress possible errors -INTROSPECTION_SCANNER_ENV = $(SANITIZER_ENV) LDFLAGS="$(SANITIZER_LIB_LDFLAGS)" - -libnmincludedir = $(includedir)/libnm -libnminclude_HEADERS = -nodist_libnminclude_HEADERS = - -pkgconfigdir = $(libdir)/pkgconfig -pkgconfig_DATA = - -pppd_plugindir = $(PPPD_PLUGIN_DIR) -pppd_plugin_LTLIBRARIES = - -vapidir = $(datadir)/vala/vapi -vapi_DATA = - -examplesdir = $(docdir)/examples - -rundir=$(runstatedir)/NetworkManager -statedir=$(localstatedir)/lib/NetworkManager - -plugindir=$(pkglibdir)/$(NM_DIST_VERSION) - -dbusactivationdir = $(datadir)/dbus-1/system-services - -servicedir = $(datadir)/dbus-1/system-services - -completiondir = $(datadir)/bash-completion/completions - -nmlocaledir = $(datadir)/locale - -INTROSPECTION_EXTRA_CFLAGS = -Wno-incompatible-pointer-types-discards-qualifiers - -GLIB_MKENUMS_H_FLAGS = --identifier-prefix NM -GLIB_MKENUMS_C_FLAGS = --identifier-prefix NM - -SUBDIRS = \ - . \ - po - -if HAVE_DOCS - -SUBDIRS += \ - docs/libnm \ - docs/api - -endif - -dflt_cppflags = -std=gnu11 - -############################################################################### - -include config-extra.h.mk - -DISTCLEANFILES += config-extra.h - -$(src_libnm_core_public_mkenums_c): config-extra.h -$(src_libnm_core_public_mkenums_h): config-extra.h -src/core/dhcp/.dirstamp: config-extra.h -src/libnm-base/.dirstamp: config-extra.h -src/libnm-client-public/.dirstamp: config-extra.h -src/libnm-client-public/.dirstamp: config-extra.h -src/libnm-core-impl/.dirstamp: config-extra.h -src/libnm-core-impl/.dirstamp: config-extra.h -src/libnm-crypto/.dirstamp: config-extra.h -src/libnm-glib-aux/.dirstamp: config-extra.h -src/libnm-glib-aux/tests/.dirstamp: config-extra.h -src/libnm-log-core/.dirstamp: config-extra.h -src/libnm-log-null/.dirstamp: config-extra.h -src/libnm-platform/.dirstamp: config-extra.h -src/libnm-platform/tests/.dirstamp: config-extra.h -src/libnm-platform/wifi/.dirstamp: config-extra.h -src/libnm-platform/wpan/.dirstamp: config-extra.h -src/libnm-std-aux/.dirstamp: config-extra.h -src/libnm-systemd-shared/.dirstamp: config-extra.h -src/libnm-systemd-shared/src/basic/.dirstamp: config-extra.h -src/libnm-systemd-shared/src/fundamental/.dirstamp: config-extra.h -src/libnm-systemd-shared/src/shared/.dirstamp: config-extra.h -src/libnm-udev-aux/.dirstamp: config-extra.h - -############################################################################### - -set_sanitizer_env = \ - [ -n "$(SANITIZER_ENV)" ] && export $(SANITIZER_ENV) ; \ - if echo $(SANITIZER_LIB_CFLAGS) $(SANITIZER_EXEC_CFLAGS) | grep -e -fsanitize=address > /dev/null; then \ - [ -n "$(1)" ] && export LD_PRELOAD="$${LD_PRELOAD}:$$(ldd $(1) | grep libasan\.so\.. -o | head -n 1)"; \ - [ -n "$(2)" ] && export LD_PRELOAD="$${LD_PRELOAD}:$$(ldd $(2) | grep libasan\.so\.. -o | head -n 1)"; \ - fi - -check_so_symbols = \ - $(call set_sanitizer_env,$(1),$(builddir)/src/core/NetworkManager); \ - LD_BIND_NOW=1 LD_PRELOAD=$${LD_PRELOAD}:$(1) $(builddir)/src/core/NetworkManager --version >/dev/null - -############################################################################### - -DISTCHECK_CONFIGURE_FLAGS = \ - --enable-tests=yes \ - --with-valgrind=no \ - --enable-gtk-doc \ - --enable-more-warnings=error \ - --with-udev-dir=$$dc_install_base/lib/udev \ - --with-wext=no \ - --enable-ifcfg-rh \ - --with-dhclient=yes \ - --enable-ifupdown \ - --disable-dependency-tracking \ - --disable-autotools-deprecation \ - $(NULL) - -dist-configure-check: - @echo "*** 'make dist' requires '--enable-gtk-doc --enable-introspection'. ***" - @false -if !BUILD_DOCS -dist_configure_check += dist-configure-check -endif - -# Gettext's Makefile has a race with parallel builds during dist. -# Hack around that. -# See also: -# https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1094#note_1435313 -# https://lists.gnu.org/archive/html/bug-gettext/2022-06/msg00022.html -# https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/merge_requests/1405 -po/.Makefile.patched: - sed -i \ - -e 's#^dist2: \$$(srcdir)/stamp-po \$$(DISTFILES)#dist2: \$$(srcdir)/stamp-po\n\t\$$(MAKE) \$$(DISTFILES)#' \ - -e 's#^dist2: stamp-po \$$(DISTFILES)#dist2: stamp-po\n\t\$$(MAKE) \$$(DISTFILES)#' \ - "$(builddir)/po/Makefile" && \ - touch "$(builddir)/po/.Makefile.patched" - -DISTCLEANFILES += po/.Makefile.patched - -dist: po/.Makefile.patched - -dist: $(dist_configure_check) $(dist_dependencies) - -############################################################################### - -install-data-hook-dirs: - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmconfdir)/conf.d - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmconfdir)/system-connections - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmconfdir)/dnsmasq.d - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmconfdir)/dnsmasq-shared.d - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmlibdir)/conf.d - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmlibdir)/VPN - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmlibdir)/system-connections - $(mkinstalldirs) -m 0700 $(DESTDIR)$(nmstatedir) - $(mkinstalldirs) -m 0755 $(DESTDIR)$(plugindir) - -install_data_hook += install-data-hook-dirs - -############################################################################### - -data_edit = sed \ - -e 's|@NM_VERSION[@]|$(NM_VERSION)|g' \ - -e 's|@bindir[@]|$(bindir)|g' \ - -e 's|@sbindir[@]|$(sbindir)|g' \ - -e 's|@sysconfdir[@]|$(sysconfdir)|g' \ - -e 's|@nmrundir[@]|$(nmrundir)|g' \ - -e 's|@nmstatedir[@]|$(nmstatedir)|g' \ - -e 's|@localstatedir[@]|$(localstatedir)|g' \ - -e 's|@libexecdir[@]|$(libexecdir)|g' \ - -e 's|@DISTRO_NETWORK_SERVICE[@]|$(DISTRO_NETWORK_SERVICE)|g' \ - -e 's|@NM_CONFIG_DEFAULT_MAIN_AUTH_POLKIT_TEXT[@]|$(NM_CONFIG_DEFAULT_MAIN_AUTH_POLKIT_TEXT)|g' \ - -e 's|@NM_CONFIG_DEFAULT_LOGGING_BACKEND_TEXT[@]|$(NM_CONFIG_DEFAULT_LOGGING_BACKEND_TEXT)|g' \ - -e 's|@NM_CONFIG_DEFAULT_LOGGING_AUDIT_TEXT[@]|$(NM_CONFIG_DEFAULT_LOGGING_AUDIT_TEXT)|g' \ - -e 's|@NM_CONFIG_DEFAULT_MAIN_RC_MANAGER[@]|$(NM_CONFIG_DEFAULT_MAIN_RC_MANAGER)|g' \ - -e 's|@NM_CONFIG_DEFAULT_MAIN_DHCP[@]|$(NM_CONFIG_DEFAULT_MAIN_DHCP)|g' \ - -e 's|@NM_CONFIG_DEFAULT_MAIN_MIGRATE_IFCFG_RH_TEXT[@]|$(NM_CONFIG_DEFAULT_MAIN_MIGRATE_IFCFG_RH_TEXT)|g' \ - -e 's|@NM_CONFIG_DEFAULT_WIFI_BACKEND_TEXT[@]|$(NM_CONFIG_DEFAULT_WIFI_BACKEND_TEXT)|g' - -############################################################################### - -polkit_policydir = $(datadir)/polkit-1/actions - -dist_polkit_policy_in_in_files = \ - data/org.freedesktop.NetworkManager.policy.in.in - -dist_polkit_policy_in_files = $(dist_polkit_policy_in_in_files:.policy.in.in=.policy.in) - -polkit_policy_DATA = $(dist_polkit_policy_in_files:.policy.in=.policy) - -$(polkit_policy_DATA): $(dist_polkit_policy_in_files) - $(AM_V_GEN)$(MSGFMT) --xml --template $< -d $(top_srcdir)/po -o $@ - -DISTCLEANFILES += $(polkit_policy_DATA) - -############################################################################### - -EXTRA_DIST += \ - src/c-stdaux/src/c-stdaux-generic.h \ - src/c-stdaux/src/c-stdaux-gnuc.h \ - src/c-stdaux/src/c-stdaux-unix.h \ - src/c-stdaux/src/c-stdaux.h \ - $(NULL) - -############################################################################### - -noinst_LTLIBRARIES += src/c-siphash/libc-siphash.la - -src_c_siphash_libc_siphash_la_CFLAGS = \ - $(AM_CFLAGS) \ - -std=c11 \ - -I$(srcdir)/src/c-stdaux/src \ - $(NULL) - -src_c_siphash_libc_siphash_la_CPPFLAGS = \ - $(CODE_COVERAGE_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -src_c_siphash_libc_siphash_la_LDFLAGS = \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -src_c_siphash_libc_siphash_la_SOURCES = \ - src/c-siphash/src/c-siphash.c \ - src/c-siphash/src/c-siphash.h \ - $(NULL) - -############################################################################### - -noinst_LTLIBRARIES += src/c-rbtree/libc-rbtree.la - -src_c_rbtree_libc_rbtree_la_CFLAGS = \ - $(AM_CFLAGS) \ - -std=c11 \ - -I$(srcdir)/src/c-stdaux/src \ - $(NULL) - -src_c_rbtree_libc_rbtree_la_CPPFLAGS = \ - $(CODE_COVERAGE_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -src_c_rbtree_libc_rbtree_la_LDFLAGS = \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -src_c_rbtree_libc_rbtree_la_SOURCES = \ - src/c-rbtree/src/c-rbtree.c \ - src/c-rbtree/src/c-rbtree.h \ - src/c-rbtree/src/c-rbtree-private.h \ - $(NULL) - -############################################################################### - -noinst_LTLIBRARIES += src/n-acd/libn-acd.la - -src_n_acd_libn_acd_la_CFLAGS = \ - $(AM_CFLAGS) \ - -std=c11 \ - -Wno-pointer-arith \ - -Wno-vla \ - $(NULL) - -src_n_acd_libn_acd_la_CPPFLAGS = \ - -D_GNU_SOURCE \ - -DSO_ATTACH_BPF=50 \ - $(CODE_COVERAGE_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - -I$(srcdir)/src/c-stdaux/src \ - -I$(srcdir)/src/c-list/src \ - -I$(srcdir)/src/c-siphash/src \ - -I$(srcdir)/src/c-rbtree/src \ - $(NULL) - -src_n_acd_libn_acd_la_LDFLAGS = \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -src_n_acd_libn_acd_la_SOURCES = \ - src/n-acd/src/n-acd.c \ - src/n-acd/src/n-acd.h \ - src/n-acd/src/n-acd-private.h \ - src/n-acd/src/n-acd-probe.c \ - src/n-acd/src/util/timer.c \ - src/n-acd/src/util/timer.h \ - $(NULL) - -if WITH_EBPF -src_n_acd_libn_acd_la_SOURCES += src/n-acd/src/n-acd-bpf.c -else -src_n_acd_libn_acd_la_SOURCES += src/n-acd/src/n-acd-bpf-fallback.c -endif - -############################################################################### - -noinst_LTLIBRARIES += src/n-dhcp4/libn-dhcp4.la - -src_n_dhcp4_libn_dhcp4_la_CFLAGS = \ - $(AM_CFLAGS) \ - -std=c11 \ - -Wno-error=declaration-after-statement \ - -Wno-pointer-arith \ - $(NULL) - -src_n_dhcp4_libn_dhcp4_la_CPPFLAGS = \ - -D_GNU_SOURCE \ - $(CODE_COVERAGE_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - -I$(srcdir)/src/c-stdaux/src \ - -I$(srcdir)/src/c-list/src \ - -I$(srcdir)/src/c-siphash/src \ - $(NULL) - -src_n_dhcp4_libn_dhcp4_la_LDFLAGS = \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -src_n_dhcp4_libn_dhcp4_la_SOURCES = \ - src/n-dhcp4/src/n-dhcp4-c-connection.c \ - src/n-dhcp4/src/n-dhcp4-c-lease.c \ - src/n-dhcp4/src/n-dhcp4-c-probe.c \ - src/n-dhcp4/src/n-dhcp4-client.c \ - src/n-dhcp4/src/n-dhcp4-incoming.c \ - src/n-dhcp4/src/n-dhcp4-outgoing.c \ - src/n-dhcp4/src/n-dhcp4-private.h \ - src/n-dhcp4/src/n-dhcp4-socket.c \ - src/n-dhcp4/src/n-dhcp4.h \ - src/n-dhcp4/src/util/packet.c \ - src/n-dhcp4/src/util/packet.h \ - src/n-dhcp4/src/util/socket.c \ - src/n-dhcp4/src/util/socket.h \ - $(NULL) - -############################################################################### - -noinst_LTLIBRARIES += src/libnm-std-aux/libnm-std-aux.la - -src_libnm_std_aux_libnm_std_aux_la_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(CODE_COVERAGE_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -src_libnm_std_aux_libnm_std_aux_la_SOURCES = \ - src/c-list/src/c-list.h \ - src/libnm-std-aux/c-list-util.c \ - src/libnm-std-aux/c-list-util.h \ - src/libnm-std-aux/nm-dbus-compat.h \ - src/libnm-std-aux/nm-default-std.h \ - src/libnm-std-aux/nm-linux-compat.h \ - src/libnm-std-aux/nm-networkmanager-compilation.h \ - src/libnm-std-aux/nm-std-aux.h \ - src/libnm-std-aux/nm-std-utils.c \ - src/libnm-std-aux/nm-std-utils.h \ - src/libnm-std-aux/unaligned-fundamental.h \ - src/libnm-std-aux/unaligned.h \ - $(NULL) - -src_libnm_std_aux_libnm_std_aux_la_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -EXTRA_DIST += src/libnm-std-aux/meson.build - -############################################################################### - -src_libnm_glib_aux_cppflags = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(CODE_COVERAGE_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(NULL) - -noinst_LTLIBRARIES += src/libnm-glib-aux/libnm-glib-aux.la - -src_libnm_glib_aux_libnm_glib_aux_la_CPPFLAGS = \ - $(src_libnm_glib_aux_cppflags) \ - $(NULL) - -src_libnm_glib_aux_libnm_glib_aux_la_SOURCES = \ - src/libnm-glib-aux/nm-c-list.h \ - src/libnm-glib-aux/nm-dbus-aux.c \ - src/libnm-glib-aux/nm-dbus-aux.h \ - src/libnm-glib-aux/nm-dedup-multi.c \ - src/libnm-glib-aux/nm-dedup-multi.h \ - src/libnm-glib-aux/nm-default-glib-i18n-lib.h \ - src/libnm-glib-aux/nm-default-glib-i18n-prog.h \ - src/libnm-glib-aux/nm-default-glib.h \ - src/libnm-glib-aux/nm-enum-utils.c \ - src/libnm-glib-aux/nm-enum-utils.h \ - src/libnm-glib-aux/nm-errno.c \ - src/libnm-glib-aux/nm-errno.h \ - src/libnm-glib-aux/nm-gassert-patch.h \ - src/libnm-glib-aux/nm-glib.h \ - src/libnm-glib-aux/nm-hash-utils.c \ - src/libnm-glib-aux/nm-hash-utils.h \ - src/libnm-glib-aux/nm-inet-utils.c \ - src/libnm-glib-aux/nm-inet-utils.h \ - src/libnm-glib-aux/nm-io-utils.c \ - src/libnm-glib-aux/nm-io-utils.h \ - src/libnm-glib-aux/nm-jansson.h \ - src/libnm-glib-aux/nm-json-aux.c \ - src/libnm-glib-aux/nm-json-aux.h \ - src/libnm-glib-aux/nm-keyfile-aux.c \ - src/libnm-glib-aux/nm-keyfile-aux.h \ - src/libnm-glib-aux/nm-logging-base.c \ - src/libnm-glib-aux/nm-logging-base.h \ - src/libnm-glib-aux/nm-logging-fwd.h \ - src/libnm-glib-aux/nm-logging-syslog.h \ - src/libnm-glib-aux/nm-macros-internal.h \ - src/libnm-glib-aux/nm-obj.h \ - src/libnm-glib-aux/nm-prioq.c \ - src/libnm-glib-aux/nm-prioq.h \ - src/libnm-glib-aux/nm-random-utils.c \ - src/libnm-glib-aux/nm-random-utils.h \ - src/libnm-glib-aux/nm-ref-string.c \ - src/libnm-glib-aux/nm-ref-string.h \ - src/libnm-glib-aux/nm-secret-utils.c \ - src/libnm-glib-aux/nm-secret-utils.h \ - src/libnm-glib-aux/nm-shared-utils.c \ - src/libnm-glib-aux/nm-shared-utils.h \ - src/libnm-glib-aux/nm-str-buf.h \ - src/libnm-glib-aux/nm-test-utils.h \ - src/libnm-glib-aux/nm-time-utils.c \ - src/libnm-glib-aux/nm-time-utils.h \ - src/libnm-glib-aux/nm-uuid.c \ - src/libnm-glib-aux/nm-uuid.h \ - src/libnm-glib-aux/nm-value-type.h \ - $(NULL) - -src_libnm_glib_aux_libnm_glib_aux_la_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -src_libnm_glib_aux_libnm_glib_aux_la_LIBADD = \ - $(GLIB_LIBS) \ - $(NULL) - -EXTRA_DIST += src/libnm-glib-aux/meson.build - -############################################################################### - -noinst_LTLIBRARIES += src/libnm-udev-aux/libnm-udev-aux.la - -src_libnm_udev_aux_libnm_udev_aux_la_CPPFLAGS = \ - $(src_libnm_glib_aux_cppflags) \ - $(LIBUDEV_CFLAGS) \ - $(NULL) - -src_libnm_udev_aux_libnm_udev_aux_la_SOURCES = \ - src/libnm-udev-aux/nm-udev-utils.c \ - src/libnm-udev-aux/nm-udev-utils.h \ - $(NULL) - -src_libnm_udev_aux_libnm_udev_aux_la_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -src_libnm_udev_aux_libnm_udev_aux_la_LIBADD = \ - $(GLIB_LIBS) \ - $(LIBUDEV_LIBS) \ - $(NULL) - -EXTRA_DIST += src/libnm-udev-aux/meson.build - -############################################################################### - -noinst_LTLIBRARIES += src/libnm-lldp/libnm-lldp.la - -src_libnm_lldp_libnm_lldp_la_CFLAGS = \ - $(src_libnm_glib_aux_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(NULL) - -src_libnm_lldp_libnm_lldp_la_CPPFLAGS = \ - $(CODE_COVERAGE_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -src_libnm_lldp_libnm_lldp_la_LDFLAGS = \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -src_libnm_lldp_libnm_lldp_la_SOURCES = \ - src/libnm-lldp/nm-lldp-neighbor.c \ - src/libnm-lldp/nm-lldp-neighbor.h \ - src/libnm-lldp/nm-lldp-network.c \ - src/libnm-lldp/nm-lldp-network.h \ - src/libnm-lldp/nm-lldp-rx-internal.h \ - src/libnm-lldp/nm-lldp-rx.c \ - src/libnm-lldp/nm-lldp-rx.h \ - src/libnm-lldp/nm-lldp.h \ - $(NULL) - -EXTRA_DIST += src/libnm-lldp/meson.build - -############################################################################### - -noinst_LTLIBRARIES += src/libnm-base/libnm-base.la - -src_libnm_base_libnm_base_la_CPPFLAGS = \ - $(src_libnm_glib_aux_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(NULL) - -src_libnm_base_libnm_base_la_SOURCES = \ - src/libnm-base/nm-base.c \ - src/libnm-base/nm-base.h \ - src/libnm-base/nm-config-base.h \ - src/libnm-base/nm-ethtool-base.c \ - src/libnm-base/nm-ethtool-base.h \ - src/libnm-base/nm-ethtool-utils-base.h \ - src/libnm-base/nm-net-aux.c \ - src/libnm-base/nm-net-aux.h \ - src/libnm-base/nm-priv-helper-utils.c \ - src/libnm-base/nm-priv-helper-utils.h \ - $(NULL) - -src_libnm_base_libnm_base_la_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -src_libnm_base_libnm_base_la_LIBADD = \ - $(GLIB_LIBS) \ - $(NULL) - -EXTRA_DIST += src/libnm-base/meson.build - -############################################################################### - -noinst_LTLIBRARIES += src/libnm-log-core/libnm-log-core.la - -src_libnm_log_core_libnm_log_core_la_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(CODE_COVERAGE_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(SYSTEMD_JOURNAL_CFLAGS) \ - $(NULL) - -src_libnm_log_core_libnm_log_core_la_SOURCES = \ - src/libnm-log-core/nm-logging.c \ - src/libnm-log-core/nm-logging.h \ - $(NULL) - -src_libnm_log_core_libnm_log_core_la_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -src_libnm_log_core_libnm_log_core_la_LIBADD = \ - $(GLIB_LIBS) \ - $(SYSTEMD_JOURNAL_LIBS) \ - $(NULL) - -EXTRA_DIST += src/libnm-log-core/meson.build - -noinst_LTLIBRARIES += src/libnm-log-null/libnm-log-null.la - -src_libnm_log_null_libnm_log_null_la_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(CODE_COVERAGE_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(NULL) - -src_libnm_log_null_libnm_log_null_la_SOURCES = \ - src/libnm-log-null/nm-logging-null.c \ - $(NULL) - -src_libnm_log_null_libnm_log_null_la_LIBADD = \ - $(GLIB_LIBS) \ - $(CODE_COVERAGE_LDFLAGS) \ - $(NULL) - -EXTRA_DIST += src/libnm-log-null/meson.build - -############################################################################### - -noinst_LTLIBRARIES += src/libnm-platform/libnm-platform.la - -src_libnm_platform_libnm_platform_la_CPPFLAGS = \ - $(src_libnm_glib_aux_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(NULL) - -src_libnm_platform_libnm_platform_la_SOURCES = \ - \ - src/linux-headers/ethtool.h \ - src/linux-headers/mptcp.h \ - src/linux-headers/nl802154.h \ - \ - src/nm-compat-headers/linux/if_addr.h \ - \ - src/libnm-platform/nm-linux-platform.c \ - src/libnm-platform/nm-linux-platform.h \ - src/libnm-platform/nm-netlink.c \ - src/libnm-platform/nm-netlink.h \ - src/libnm-platform/nm-platform-private.h \ - src/libnm-platform/nm-platform-utils.c \ - src/libnm-platform/nm-platform-utils.h \ - src/libnm-platform/nm-platform.c \ - src/libnm-platform/nm-platform.h \ - src/libnm-platform/nmp-base.c \ - src/libnm-platform/nmp-base.h \ - src/libnm-platform/nmp-global-tracker.c \ - src/libnm-platform/nmp-global-tracker.h \ - src/libnm-platform/nmp-netns.c \ - src/libnm-platform/nmp-netns.h \ - src/libnm-platform/nmp-object.c \ - src/libnm-platform/nmp-object.h \ - src/libnm-platform/nmp-plobj.c \ - src/libnm-platform/nmp-plobj.h \ - src/libnm-platform/devlink/nm-devlink.c \ - src/libnm-platform/devlink/nm-devlink.h \ - src/libnm-platform/wifi/nm-wifi-utils-nl80211.c \ - src/libnm-platform/wifi/nm-wifi-utils-nl80211.h \ - src/libnm-platform/wifi/nm-wifi-utils-private.h \ - src/libnm-platform/wifi/nm-wifi-utils.c \ - src/libnm-platform/wifi/nm-wifi-utils.h \ - src/libnm-platform/wpan/nm-wpan-utils.c \ - src/libnm-platform/wpan/nm-wpan-utils.h \ - \ - $(NULL) - -if WITH_WEXT -src_libnm_platform_libnm_platform_la_SOURCES += \ - src/libnm-platform/wifi/nm-wifi-utils-wext.c \ - src/libnm-platform/wifi/nm-wifi-utils-wext.h \ - $(NULL) -endif - -src_libnm_platform_libnm_platform_la_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -src_libnm_platform_libnm_platform_la_LIBADD = \ - $(GLIB_LIBS) \ - $(NULL) - -EXTRA_DIST += src/libnm-platform/meson.build - -############################################################################### - -check_programs += src/libnm-platform/tests/test-nm-platform - -src_libnm_platform_tests_test_nm_platform_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(CODE_COVERAGE_CFLAGS) \ - $(SYSTEMD_JOURNAL_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -src_libnm_platform_tests_test_nm_platform_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_libnm_platform_tests_test_nm_platform_LDADD = \ - src/libnm-platform/libnm-platform.la \ - src/libnm-udev-aux/libnm-udev-aux.la \ - src/libnm-base/libnm-base.la \ - src/libnm-log-core/libnm-log-core.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - $(SYSTEMD_JOURNAL_LIBS) \ - $(GLIB_LIBS) \ - $(NULL) - -EXTRA_DIST += \ - src/libnm-platform/tests/meson.build \ - $(NULL) - -############################################################################### - -noinst_LTLIBRARIES += src/libnm-core-aux-intern/libnm-core-aux-intern.la - -src_libnm_core_aux_intern_libnm_core_aux_intern_la_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(builddir)/src \ - -I$(srcdir)/src \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-core-public \ - $(CODE_COVERAGE_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -src_libnm_core_aux_intern_libnm_core_aux_intern_la_SOURCES = \ - src/libnm-core-aux-intern/nm-auth-subject.c \ - src/libnm-core-aux-intern/nm-auth-subject.h \ - src/libnm-core-aux-intern/nm-common-macros.h \ - src/libnm-core-aux-intern/nm-libnm-core-utils.c \ - src/libnm-core-aux-intern/nm-libnm-core-utils.h \ - $(NULL) - -src_libnm_core_aux_intern_libnm_core_aux_intern_la_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -src_libnm_core_aux_intern_libnm_core_aux_intern_la_LIBADD = \ - $(GLIB_LIBS) \ - $(NULL) - -$(src_libnm_core_aux_intern_libnm_core_aux_intern_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += \ - src/libnm-core-aux-intern/README.md \ - src/libnm-core-aux-intern/meson.build \ - $(NULL) - -############################################################################### - -noinst_LTLIBRARIES += src/libnm-core-aux-extern/libnm-core-aux-extern.la - -src_libnm_core_aux_extern_libnm_core_aux_extern_la_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-core-public \ - -I$(srcdir)/src \ - $(CODE_COVERAGE_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -src_libnm_core_aux_extern_libnm_core_aux_extern_la_SOURCES = \ - src/libnm-core-aux-extern/nm-dispatcher-api.h \ - src/libnm-core-aux-extern/nm-libnm-core-aux.c \ - src/libnm-core-aux-extern/nm-libnm-core-aux.h \ - $(NULL) - -src_libnm_core_aux_extern_libnm_core_aux_extern_la_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -src_libnm_core_aux_extern_libnm_core_aux_extern_la_LIBADD = \ - $(GLIB_LIBS) \ - $(NULL) - -$(src_libnm_core_aux_extern_libnm_core_aux_extern_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += \ - src/libnm-core-aux-extern/README.md \ - src/libnm-core-aux-extern/meson.build \ - $(NULL) - -############################################################################### - -noinst_LTLIBRARIES += src/libnm-client-aux-extern/libnm-client-aux-extern.la - -src_libnm_client_aux_extern_libnm_client_aux_extern_la_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-client-public \ - -I$(builddir)/src/libnm-client-public \ - $(CODE_COVERAGE_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -src_libnm_client_aux_extern_libnm_client_aux_extern_la_SOURCES = \ - src/libnm-client-aux-extern/nm-libnm-aux.c \ - src/libnm-client-aux-extern/nm-libnm-aux.h \ - $(NULL) - -src_libnm_client_aux_extern_libnm_client_aux_extern_la_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -src_libnm_client_aux_extern_libnm_client_aux_extern_la_LIBADD = \ - $(GLIB_LIBS) \ - src/libnm-client-impl/libnm.la \ - $(NULL) - -$(src_libnm_client_aux_extern_libnm_client_aux_extern_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_libnm_client_aux_extern_libnm_client_aux_extern_la_OBJECTS): $(src_libnm_client_public_mkenums_h) - -EXTRA_DIST += \ - src/libnm-client-aux-extern/README.md \ - src/libnm-client-aux-extern/meson.build \ - src/libnm-client-aux-extern/tests/meson.build \ - $(NULL) - -############################################################################### - -check_programs += src/libnm-client-aux-extern/tests/test-libnm-client-aux - -src_libnm_client_aux_extern_tests_test_libnm_client_aux_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src/libnm-core-public \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-client-public \ - -I$(builddir)/src/libnm-client-public \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(CODE_COVERAGE_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -src_libnm_client_aux_extern_tests_test_libnm_client_aux_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_libnm_client_aux_extern_tests_test_libnm_client_aux_LDADD = \ - src/libnm-core-aux-extern/libnm-core-aux-extern.la \ - src/libnm-core-aux-intern/libnm-core-aux-intern.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) \ - $(NULL) - -$(src_libnm_client_aux_extern_tests_test_libnm_client_aux_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_libnm_client_aux_extern_tests_test_libnm_client_aux_OBJECTS): $(src_libnm_client_public_mkenums_h) - -############################################################################### - -noinst_LTLIBRARIES += src/libnm-client-test/libnm-client-test.la - -src_libnm_client_test_libnm_client_test_la_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-client-public \ - -I$(builddir)/src/libnm-client-public \ - $(CODE_COVERAGE_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -src_libnm_client_test_libnm_client_test_la_SOURCES = \ - src/libnm-client-test/nm-test-libnm-utils.h \ - src/libnm-client-test/nm-test-utils-impl.c \ - $(NULL) - -src_libnm_client_test_libnm_client_test_la_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -src_libnm_client_test_libnm_client_test_la_LIBADD = \ - $(GLIB_LIBS) \ - $(NULL) - -$(src_libnm_client_test_libnm_client_test_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_libnm_client_test_libnm_client_test_la_OBJECTS): $(src_libnm_client_public_mkenums_h) - -EXTRA_DIST += \ - src/libnm-client-test/meson.build \ - $(NULL) - -############################################################################### - -EXTRA_DIST += \ - src/libnm-glib-aux/tests/meson.build \ - $(NULL) - -check_programs += src/libnm-glib-aux/tests/test-shared-general - -src_libnm_glib_aux_tests_test_shared_general_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(CODE_COVERAGE_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -src_libnm_glib_aux_tests_test_shared_general_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_libnm_glib_aux_tests_test_shared_general_LDADD = \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - $(GLIB_LIBS) \ - $(NULL) - -############################################################################### - -if WITH_JANSSON - -check_programs += src/libnm-glib-aux/tests/test-json-aux - -src_libnm_glib_aux_tests_test_json_aux_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(CODE_COVERAGE_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(JANSSON_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -src_libnm_glib_aux_tests_test_json_aux_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_libnm_glib_aux_tests_test_json_aux_LDADD = \ - $(JANSSON_LIBS) \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - $(GLIB_LIBS) \ - $(NULL) - -endif - -############################################################################### - -noinst_LTLIBRARIES += introspection/libnmdbus.la - -introspection_libnmdbus_la_CPPFLAGS = \ - $(GLIB_CFLAGS) \ - $(INTROSPECTION_EXTRA_CFLAGS) \ - $(NULL) - -introspection_sources = \ - introspection/org.freedesktop.NetworkManager.AccessPoint.c \ - introspection/org.freedesktop.NetworkManager.AccessPoint.h \ - introspection/org.freedesktop.NetworkManager.AgentManager.c \ - introspection/org.freedesktop.NetworkManager.AgentManager.h \ - introspection/org.freedesktop.NetworkManager.Checkpoint.c \ - introspection/org.freedesktop.NetworkManager.Checkpoint.h \ - introspection/org.freedesktop.NetworkManager.Connection.Active.c \ - introspection/org.freedesktop.NetworkManager.Connection.Active.h \ - introspection/org.freedesktop.NetworkManager.DHCP4Config.c \ - introspection/org.freedesktop.NetworkManager.DHCP4Config.h \ - introspection/org.freedesktop.NetworkManager.DHCP6Config.c \ - introspection/org.freedesktop.NetworkManager.DHCP6Config.h \ - introspection/org.freedesktop.NetworkManager.Device.Adsl.c \ - introspection/org.freedesktop.NetworkManager.Device.Adsl.h \ - introspection/org.freedesktop.NetworkManager.Device.Bluetooth.c \ - introspection/org.freedesktop.NetworkManager.Device.Bluetooth.h \ - introspection/org.freedesktop.NetworkManager.Device.Bond.c \ - introspection/org.freedesktop.NetworkManager.Device.Bond.h \ - introspection/org.freedesktop.NetworkManager.Device.Bridge.c \ - introspection/org.freedesktop.NetworkManager.Device.Bridge.h \ - introspection/org.freedesktop.NetworkManager.Device.Dummy.c \ - introspection/org.freedesktop.NetworkManager.Device.Dummy.h \ - introspection/org.freedesktop.NetworkManager.Device.Generic.c \ - introspection/org.freedesktop.NetworkManager.Device.Generic.h \ - introspection/org.freedesktop.NetworkManager.Device.Hsr.c \ - introspection/org.freedesktop.NetworkManager.Device.Hsr.h \ - introspection/org.freedesktop.NetworkManager.Device.IPTunnel.c \ - introspection/org.freedesktop.NetworkManager.Device.IPTunnel.h \ - introspection/org.freedesktop.NetworkManager.Device.Infiniband.c \ - introspection/org.freedesktop.NetworkManager.Device.Infiniband.h \ - introspection/org.freedesktop.NetworkManager.Device.Loopback.c \ - introspection/org.freedesktop.NetworkManager.Device.Loopback.h \ - introspection/org.freedesktop.NetworkManager.Device.Lowpan.c \ - introspection/org.freedesktop.NetworkManager.Device.Lowpan.h \ - introspection/org.freedesktop.NetworkManager.Device.Macsec.c \ - introspection/org.freedesktop.NetworkManager.Device.Macsec.h \ - introspection/org.freedesktop.NetworkManager.Device.Macvlan.c \ - introspection/org.freedesktop.NetworkManager.Device.Macvlan.h \ - introspection/org.freedesktop.NetworkManager.Device.Modem.c \ - introspection/org.freedesktop.NetworkManager.Device.Modem.h \ - introspection/org.freedesktop.NetworkManager.Device.OlpcMesh.c \ - introspection/org.freedesktop.NetworkManager.Device.OlpcMesh.h \ - introspection/org.freedesktop.NetworkManager.Device.OvsBridge.c \ - introspection/org.freedesktop.NetworkManager.Device.OvsBridge.h \ - introspection/org.freedesktop.NetworkManager.Device.OvsInterface.c \ - introspection/org.freedesktop.NetworkManager.Device.OvsInterface.h \ - introspection/org.freedesktop.NetworkManager.Device.OvsPort.c \ - introspection/org.freedesktop.NetworkManager.Device.OvsPort.h \ - introspection/org.freedesktop.NetworkManager.Device.Ppp.c \ - introspection/org.freedesktop.NetworkManager.Device.Ppp.h \ - introspection/org.freedesktop.NetworkManager.Device.Statistics.c \ - introspection/org.freedesktop.NetworkManager.Device.Statistics.h \ - introspection/org.freedesktop.NetworkManager.Device.Team.c \ - introspection/org.freedesktop.NetworkManager.Device.Team.h \ - introspection/org.freedesktop.NetworkManager.Device.Tun.c \ - introspection/org.freedesktop.NetworkManager.Device.Tun.h \ - introspection/org.freedesktop.NetworkManager.Device.Veth.c \ - introspection/org.freedesktop.NetworkManager.Device.Veth.h \ - introspection/org.freedesktop.NetworkManager.Device.Vlan.c \ - introspection/org.freedesktop.NetworkManager.Device.Vlan.h \ - introspection/org.freedesktop.NetworkManager.Device.Vrf.c \ - introspection/org.freedesktop.NetworkManager.Device.Vrf.h \ - introspection/org.freedesktop.NetworkManager.Device.Vxlan.c \ - introspection/org.freedesktop.NetworkManager.Device.Vxlan.h \ - introspection/org.freedesktop.NetworkManager.Device.WiMax.c \ - introspection/org.freedesktop.NetworkManager.Device.WiMax.h \ - introspection/org.freedesktop.NetworkManager.Device.WifiP2P.c \ - introspection/org.freedesktop.NetworkManager.Device.WifiP2P.h \ - introspection/org.freedesktop.NetworkManager.Device.WireGuard.c \ - introspection/org.freedesktop.NetworkManager.Device.WireGuard.h \ - introspection/org.freedesktop.NetworkManager.Device.Wired.c \ - introspection/org.freedesktop.NetworkManager.Device.Wired.h \ - introspection/org.freedesktop.NetworkManager.Device.Wireless.c \ - introspection/org.freedesktop.NetworkManager.Device.Wireless.h \ - introspection/org.freedesktop.NetworkManager.Device.Wpan.c \ - introspection/org.freedesktop.NetworkManager.Device.Wpan.h \ - introspection/org.freedesktop.NetworkManager.Device.c \ - introspection/org.freedesktop.NetworkManager.Device.h \ - introspection/org.freedesktop.NetworkManager.DnsManager.c \ - introspection/org.freedesktop.NetworkManager.DnsManager.h \ - introspection/org.freedesktop.NetworkManager.IP4Config.c \ - introspection/org.freedesktop.NetworkManager.IP4Config.h \ - introspection/org.freedesktop.NetworkManager.IP6Config.c \ - introspection/org.freedesktop.NetworkManager.IP6Config.h \ - introspection/org.freedesktop.NetworkManager.WifiP2PPeer.c \ - introspection/org.freedesktop.NetworkManager.WifiP2PPeer.h \ - introspection/org.freedesktop.NetworkManager.PPP.c \ - introspection/org.freedesktop.NetworkManager.PPP.h \ - introspection/org.freedesktop.NetworkManager.SecretAgent.c \ - introspection/org.freedesktop.NetworkManager.SecretAgent.h \ - introspection/org.freedesktop.NetworkManager.Settings.Connection.c \ - introspection/org.freedesktop.NetworkManager.Settings.Connection.h \ - introspection/org.freedesktop.NetworkManager.Settings.c \ - introspection/org.freedesktop.NetworkManager.Settings.h \ - introspection/org.freedesktop.NetworkManager.VPN.Connection.c \ - introspection/org.freedesktop.NetworkManager.VPN.Connection.h \ - introspection/org.freedesktop.NetworkManager.VPN.Plugin.c \ - introspection/org.freedesktop.NetworkManager.VPN.Plugin.h \ - introspection/org.freedesktop.NetworkManager.c \ - introspection/org.freedesktop.NetworkManager.h \ - $(NULL) - -nodist_introspection_libnmdbus_la_SOURCES = $(introspection_sources) - -DBUS_INTERFACE_DOCS = \ - docs/api/dbus-org.freedesktop.NetworkManager.AccessPoint.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.AgentManager.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Checkpoint.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Connection.Active.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.DHCP4Config.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.DHCP6Config.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Adsl.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Bluetooth.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Bond.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Bridge.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Dummy.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Generic.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Hsr.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.IPTunnel.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Infiniband.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Loopback.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Lowpan.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Macsec.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Macvlan.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Modem.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.OlpcMesh.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.OvsBridge.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.OvsInterface.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.OvsPort.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Ppp.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Statistics.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Team.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Tun.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Veth.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Vlan.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Vrf.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Vxlan.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.WiMax.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.WifiP2P.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.WireGuard.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Wired.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Wireless.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.Wpan.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Device.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.DnsManager.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.IP4Config.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.IP6Config.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.PPP.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.SecretAgent.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Settings.Connection.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.Settings.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.VPN.Connection.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.VPN.Plugin.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.WifiP2PPeer.xml \ - docs/api/dbus-org.freedesktop.NetworkManager.xml \ - $(NULL) - -introspection/%.c: introspection/%.xml - @$(MKDIR_P) introspection/ - $(AM_V_GEN) gdbus-codegen \ - --generate-c-code $(basename $@) \ - --generate-docbook docs/api/dbus \ - --c-namespace NMDBus \ - --interface-prefix org.freedesktop.NetworkManager \ - $< - -introspection/%.h: introspection/%.c - $() - -docs/api/dbus-%.xml: introspection/%.c - $() - -dbusinterfacesdir = $(datadir)/dbus-1/interfaces - -dbusinterfaces_DATA = \ - introspection/org.freedesktop.NetworkManager.AccessPoint.xml \ - introspection/org.freedesktop.NetworkManager.AgentManager.xml \ - introspection/org.freedesktop.NetworkManager.Checkpoint.xml \ - introspection/org.freedesktop.NetworkManager.Connection.Active.xml \ - introspection/org.freedesktop.NetworkManager.DHCP4Config.xml \ - introspection/org.freedesktop.NetworkManager.DHCP6Config.xml \ - introspection/org.freedesktop.NetworkManager.Device.Adsl.xml \ - introspection/org.freedesktop.NetworkManager.Device.Bluetooth.xml \ - introspection/org.freedesktop.NetworkManager.Device.Bond.xml \ - introspection/org.freedesktop.NetworkManager.Device.Bridge.xml \ - introspection/org.freedesktop.NetworkManager.Device.Dummy.xml \ - introspection/org.freedesktop.NetworkManager.Device.Generic.xml \ - introspection/org.freedesktop.NetworkManager.Device.Hsr.xml \ - introspection/org.freedesktop.NetworkManager.Device.IPTunnel.xml \ - introspection/org.freedesktop.NetworkManager.Device.Infiniband.xml \ - introspection/org.freedesktop.NetworkManager.Device.Loopback.xml \ - introspection/org.freedesktop.NetworkManager.Device.Lowpan.xml \ - introspection/org.freedesktop.NetworkManager.Device.Macsec.xml \ - introspection/org.freedesktop.NetworkManager.Device.Macvlan.xml \ - introspection/org.freedesktop.NetworkManager.Device.Modem.xml \ - introspection/org.freedesktop.NetworkManager.Device.OlpcMesh.xml \ - introspection/org.freedesktop.NetworkManager.Device.OvsBridge.xml \ - introspection/org.freedesktop.NetworkManager.Device.OvsInterface.xml \ - introspection/org.freedesktop.NetworkManager.Device.OvsPort.xml \ - introspection/org.freedesktop.NetworkManager.Device.Ppp.xml \ - introspection/org.freedesktop.NetworkManager.Device.Statistics.xml \ - introspection/org.freedesktop.NetworkManager.Device.Team.xml \ - introspection/org.freedesktop.NetworkManager.Device.Tun.xml \ - introspection/org.freedesktop.NetworkManager.Device.Veth.xml \ - introspection/org.freedesktop.NetworkManager.Device.Vlan.xml \ - introspection/org.freedesktop.NetworkManager.Device.Vrf.xml \ - introspection/org.freedesktop.NetworkManager.Device.Vxlan.xml \ - introspection/org.freedesktop.NetworkManager.Device.WiMax.xml \ - introspection/org.freedesktop.NetworkManager.Device.WifiP2P.xml \ - introspection/org.freedesktop.NetworkManager.Device.WireGuard.xml \ - introspection/org.freedesktop.NetworkManager.Device.Wired.xml \ - introspection/org.freedesktop.NetworkManager.Device.Wireless.xml \ - introspection/org.freedesktop.NetworkManager.Device.Wpan.xml \ - introspection/org.freedesktop.NetworkManager.Device.xml \ - introspection/org.freedesktop.NetworkManager.DnsManager.xml \ - introspection/org.freedesktop.NetworkManager.IP4Config.xml \ - introspection/org.freedesktop.NetworkManager.IP6Config.xml \ - introspection/org.freedesktop.NetworkManager.PPP.xml \ - introspection/org.freedesktop.NetworkManager.SecretAgent.xml \ - introspection/org.freedesktop.NetworkManager.Settings.Connection.xml \ - introspection/org.freedesktop.NetworkManager.Settings.xml \ - introspection/org.freedesktop.NetworkManager.VPN.Connection.xml \ - introspection/org.freedesktop.NetworkManager.VPN.Plugin.xml \ - introspection/org.freedesktop.NetworkManager.WiMax.Nsp.xml \ - introspection/org.freedesktop.NetworkManager.WifiP2PPeer.xml \ - introspection/org.freedesktop.NetworkManager.xml \ - $(NULL) - -CLEANFILES += $(introspection_sources) -CLEANFILES += $(DBUS_INTERFACE_DOCS) - -$(src_libnm_client_impl_libnm_client_impl_la_OBJECTS): $(introspection_sources) -$(src_libnm_client_impl_libnm_la_OBJECTS): $(introspection_sources) - -EXTRA_DIST += \ - $(dbusinterfaces_DATA) \ - introspection/meson.build - -check-docs: - $(srcdir)/tools/check-docs.sh "$(srcdir)" "$(builddir)" - -check_local += check-docs - -############################################################################### - -src_libnm_core_impl_lib_h_pub_real = \ - src/libnm-core-public/nm-connection.h \ - src/libnm-core-public/nm-core-types.h \ - src/libnm-core-public/nm-dbus-interface.h \ - src/libnm-core-public/nm-errors.h \ - src/libnm-core-public/nm-keyfile.h \ - src/libnm-core-public/nm-setting-6lowpan.h \ - src/libnm-core-public/nm-setting-8021x.h \ - src/libnm-core-public/nm-setting-adsl.h \ - src/libnm-core-public/nm-setting-bluetooth.h \ - src/libnm-core-public/nm-setting-bond-port.h \ - src/libnm-core-public/nm-setting-bond.h \ - src/libnm-core-public/nm-setting-bridge-port.h \ - src/libnm-core-public/nm-setting-bridge.h \ - src/libnm-core-public/nm-setting-cdma.h \ - src/libnm-core-public/nm-setting-connection.h \ - src/libnm-core-public/nm-setting-dcb.h \ - src/libnm-core-public/nm-setting-dummy.h \ - src/libnm-core-public/nm-setting-ethtool.h \ - src/libnm-core-public/nm-setting-generic.h \ - src/libnm-core-public/nm-setting-gsm.h \ - src/libnm-core-public/nm-setting-hostname.h \ - src/libnm-core-public/nm-setting-hsr.h \ - src/libnm-core-public/nm-setting-infiniband.h \ - src/libnm-core-public/nm-setting-ip-config.h \ - src/libnm-core-public/nm-setting-ip-tunnel.h \ - src/libnm-core-public/nm-setting-ip4-config.h \ - src/libnm-core-public/nm-setting-ip6-config.h \ - src/libnm-core-public/nm-setting-link.h \ - src/libnm-core-public/nm-setting-loopback.h \ - src/libnm-core-public/nm-setting-macsec.h \ - src/libnm-core-public/nm-setting-macvlan.h \ - src/libnm-core-public/nm-setting-match.h \ - src/libnm-core-public/nm-setting-olpc-mesh.h \ - src/libnm-core-public/nm-setting-ovs-bridge.h \ - src/libnm-core-public/nm-setting-ovs-dpdk.h \ - src/libnm-core-public/nm-setting-ovs-external-ids.h \ - src/libnm-core-public/nm-setting-ovs-interface.h \ - src/libnm-core-public/nm-setting-ovs-other-config.h \ - src/libnm-core-public/nm-setting-ovs-patch.h \ - src/libnm-core-public/nm-setting-ovs-port.h \ - src/libnm-core-public/nm-setting-ppp.h \ - src/libnm-core-public/nm-setting-pppoe.h \ - src/libnm-core-public/nm-setting-proxy.h \ - src/libnm-core-public/nm-setting-serial.h \ - src/libnm-core-public/nm-setting-sriov.h \ - src/libnm-core-public/nm-setting-tc-config.h \ - src/libnm-core-public/nm-setting-team-port.h \ - src/libnm-core-public/nm-setting-team.h \ - src/libnm-core-public/nm-setting-tun.h \ - src/libnm-core-public/nm-setting-user.h \ - src/libnm-core-public/nm-setting-veth.h \ - src/libnm-core-public/nm-setting-vlan.h \ - src/libnm-core-public/nm-setting-vpn.h \ - src/libnm-core-public/nm-setting-vrf.h \ - src/libnm-core-public/nm-setting-vxlan.h \ - src/libnm-core-public/nm-setting-wifi-p2p.h \ - src/libnm-core-public/nm-setting-wimax.h \ - src/libnm-core-public/nm-setting-wired.h \ - src/libnm-core-public/nm-setting-wireguard.h \ - src/libnm-core-public/nm-setting-wireless-security.h \ - src/libnm-core-public/nm-setting-wireless.h \ - src/libnm-core-public/nm-setting-wpan.h \ - src/libnm-core-public/nm-setting.h \ - src/libnm-core-public/nm-simple-connection.h \ - src/libnm-core-public/nm-utils.h \ - src/libnm-core-public/nm-version-macros.h \ - src/libnm-core-public/nm-version.h \ - src/libnm-core-public/nm-vpn-dbus-interface.h \ - src/libnm-core-public/nm-vpn-editor-plugin.h \ - src/libnm-core-public/nm-vpn-plugin-info.h \ - $(NULL) -src_libnm_core_public_mkenums_h = \ - src/libnm-core-public/nm-core-enum-types.h \ - $(NULL) -src_libnm_core_impl_lib_h_priv = \ - src/libnm-core-impl/nm-connection-private.h \ - src/libnm-core-impl/nm-default-libnm-core.h \ - src/libnm-core-impl/nm-setting-private.h \ - src/libnm-core-impl/nm-team-utils.h \ - src/libnm-core-impl/nm-utils-private.h \ - src/libnm-core-intern/nm-core-internal.h \ - src/libnm-core-intern/nm-keyfile-internal.h \ - src/libnm-core-intern/nm-keyfile-utils.h \ - src/libnm-core-intern/nm-meta-setting-base-impl.h \ - src/libnm-core-intern/nm-meta-setting-base.h \ - $(NULL) -src_libnm_core_impl_lib_c_settings_real = \ - src/libnm-core-impl/nm-setting-6lowpan.c \ - src/libnm-core-impl/nm-setting-8021x.c \ - src/libnm-core-impl/nm-setting-adsl.c \ - src/libnm-core-impl/nm-setting-bluetooth.c \ - src/libnm-core-impl/nm-setting-bond-port.c \ - src/libnm-core-impl/nm-setting-bond.c \ - src/libnm-core-impl/nm-setting-bridge-port.c \ - src/libnm-core-impl/nm-setting-bridge.c \ - src/libnm-core-impl/nm-setting-cdma.c \ - src/libnm-core-impl/nm-setting-connection.c \ - src/libnm-core-impl/nm-setting-dcb.c \ - src/libnm-core-impl/nm-setting-dummy.c \ - src/libnm-core-impl/nm-setting-ethtool.c \ - src/libnm-core-impl/nm-setting-generic.c \ - src/libnm-core-impl/nm-setting-gsm.c \ - src/libnm-core-impl/nm-setting-hostname.c \ - src/libnm-core-impl/nm-setting-hsr.c \ - src/libnm-core-impl/nm-setting-infiniband.c \ - src/libnm-core-impl/nm-setting-ip-config.c \ - src/libnm-core-impl/nm-setting-ip-tunnel.c \ - src/libnm-core-impl/nm-setting-ip4-config.c \ - src/libnm-core-impl/nm-setting-ip6-config.c \ - src/libnm-core-impl/nm-setting-link.c \ - src/libnm-core-impl/nm-setting-loopback.c \ - src/libnm-core-impl/nm-setting-macsec.c \ - src/libnm-core-impl/nm-setting-macvlan.c \ - src/libnm-core-impl/nm-setting-match.c \ - src/libnm-core-impl/nm-setting-olpc-mesh.c \ - src/libnm-core-impl/nm-setting-ovs-bridge.c \ - src/libnm-core-impl/nm-setting-ovs-dpdk.c \ - src/libnm-core-impl/nm-setting-ovs-external-ids.c \ - src/libnm-core-impl/nm-setting-ovs-interface.c \ - src/libnm-core-impl/nm-setting-ovs-other-config.c \ - src/libnm-core-impl/nm-setting-ovs-patch.c \ - src/libnm-core-impl/nm-setting-ovs-port.c \ - src/libnm-core-impl/nm-setting-ppp.c \ - src/libnm-core-impl/nm-setting-pppoe.c \ - src/libnm-core-impl/nm-setting-proxy.c \ - src/libnm-core-impl/nm-setting-serial.c \ - src/libnm-core-impl/nm-setting-sriov.c \ - src/libnm-core-impl/nm-setting-tc-config.c \ - src/libnm-core-impl/nm-setting-team-port.c \ - src/libnm-core-impl/nm-setting-team.c \ - src/libnm-core-impl/nm-setting-tun.c \ - src/libnm-core-impl/nm-setting-user.c \ - src/libnm-core-impl/nm-setting-veth.c \ - src/libnm-core-impl/nm-setting-vlan.c \ - src/libnm-core-impl/nm-setting-vpn.c \ - src/libnm-core-impl/nm-setting-vrf.c \ - src/libnm-core-impl/nm-setting-vxlan.c \ - src/libnm-core-impl/nm-setting-wifi-p2p.c \ - src/libnm-core-impl/nm-setting-wimax.c \ - src/libnm-core-impl/nm-setting-wired.c \ - src/libnm-core-impl/nm-setting-wireguard.c \ - src/libnm-core-impl/nm-setting-wireless-security.c \ - src/libnm-core-impl/nm-setting-wireless.c \ - src/libnm-core-impl/nm-setting-wpan.c \ - $(NULL) -src_libnm_core_impl_lib_c_real = \ - $(src_libnm_core_impl_lib_c_settings_real) \ - src/libnm-core-impl/nm-connection.c \ - src/libnm-core-impl/nm-errors.c \ - src/libnm-core-impl/nm-keyfile-utils.c \ - src/libnm-core-impl/nm-keyfile.c \ - src/libnm-core-impl/nm-meta-setting-base-impl.c \ - src/libnm-core-impl/nm-setting.c \ - src/libnm-core-impl/nm-simple-connection.c \ - src/libnm-core-impl/nm-team-utils.c \ - src/libnm-core-impl/nm-utils.c \ - src/libnm-core-impl/nm-vpn-editor-plugin.c \ - src/libnm-core-impl/nm-vpn-plugin-info.c \ - $(NULL) - -src_libnm_core_public_mkenums_c = \ - src/libnm-core-public/nm-core-enum-types.c \ - $(NULL) - -libnminclude_HEADERS += \ - $(src_libnm_core_impl_lib_h_pub_real) - -nodist_libnminclude_HEADERS += \ - $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += \ - src/libnm-core-impl/README.md \ - src/libnm-core-impl/meson.build \ - src/libnm-core-intern/README.md \ - src/libnm-core-intern/meson.build \ - src/libnm-core-public/README.md \ - src/libnm-core-public/meson.build \ - $(NULL) - -############################################################################### - -dflt_cppflags_libnm_core = \ - $(dflt_cppflags) \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-core-public \ - -I$(srcdir)/src \ - $(CODE_COVERAGE_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(LIBUDEV_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -noinst_LTLIBRARIES += src/libnm-core-impl/libnm-core-impl.la - -src/libnm-client-public/nm-enum-types.h.stamp: src/libnm-client-public/.dirstamp -src/libnm-client-public/nm-enum-types.c.stamp: src/libnm-client-public/.dirstamp - -GLIB_GENERATED += \ - $(src_libnm_core_public_mkenums_h) \ - $(src_libnm_core_public_mkenums_c) \ - $(NULL) -nm_core_enum_types_sources = $(src_libnm_core_impl_lib_h_pub_real) - -nm_core_enum_types_MKENUMS_C_FLAGS = --fhead '\#undef G_LOG_DOMAIN\n\#include "src/libnm-core-impl/nm-default-libnm-core.h"\n' - -src/libnm-core-public/nm-core-enum-types.h.stamp: src/libnm-core-public/.dirstamp -src/libnm-core-public/nm-core-enum-types.c.stamp: src/libnm-core-public/.dirstamp - -$(src_nm_dispatcher_libnm_dispatcher_core_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_nm_dispatcher_nm_dispatcher_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_libnm_core_impl_libnm_core_impl_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_libnm_client_impl_libnm_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_contrib_tests_libnm_vpn_plugin_utils_test_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_NetworkManager_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_devices_adsl_libnm_device_plugin_adsl_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_devices_bluetooth_libnm_device_plugin_bluetooth_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_devices_team_libnm_device_plugin_team_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_devices_wifi_libnm_device_plugin_wifi_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_devices_wwan_libnm_device_plugin_wwan_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_devices_ovs_libnm_device_plugin_ovs_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -src_libnm_core_impl_libnm_core_impl_la_CPPFLAGS = \ - $(dflt_cppflags_libnm_core) \ - -I$(srcdir)/src/libnm-core-intern/ \ - $(NULL) - -src_libnm_core_impl_libnm_core_impl_la_SOURCES = \ - $(src_libnm_core_impl_lib_h_pub_real) \ - $(src_libnm_core_impl_lib_h_priv) \ - $(src_libnm_core_impl_lib_c_real) - -nodist_src_libnm_core_impl_libnm_core_impl_la_SOURCES = \ - $(src_libnm_core_public_mkenums_h) \ - $(src_libnm_core_public_mkenums_c) \ - $(NULL) - -src_libnm_core_impl_libnm_core_impl_la_LIBADD = \ - $(GLIB_LIBS) \ - $(NULL) - -src_libnm_core_impl_libnm_core_impl_la_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -EXTRA_DIST += \ - src/libnm-core-impl/meson.build \ - $(NULL) - -src/libnm-core-public/nm-vpn-dbus-types.xml: src/libnm-core-public/nm-vpn-dbus-interface.h tools/enums-to-docbook.pl - @$(MKDIR_P) src/libnm-core-public/ - $(AM_V_GEN) @PERL@ $(srcdir)/tools/enums-to-docbook.pl 'nm-vpn-dbus-types' 'VPN Plugin D-Bus API Types' $< >$@ - -src/libnm-core-public/nm-dbus-types.xml: src/libnm-core-public/nm-dbus-interface.h tools/enums-to-docbook.pl - @$(MKDIR_P) src/libnm-core-public/ - $(AM_V_GEN) @PERL@ $(srcdir)/tools/enums-to-docbook.pl 'nm-dbus-types' 'NetworkManager D-Bus API Types' $< >$@ - -BUILT_SOURCES += \ - src/libnm-core-public/nm-vpn-dbus-types.xml \ - src/libnm-core-public/nm-dbus-types.xml - -dist_dependencies += \ - src/libnm-core-public/nm-vpn-dbus-types.xml \ - src/libnm-core-public/nm-dbus-types.xml - -############################################################################### - -noinst_LTLIBRARIES += src/libnm-crypto/libnm-crypto.la - -src_libnm_crypto_libnm_crypto_la_SOURCES = \ - src/libnm-crypto/nm-crypto-impl.h \ - src/libnm-crypto/nm-crypto.c \ - src/libnm-crypto/nm-crypto.h \ - $(NULL) - -src_libnm_crypto_libnm_crypto_la_CPPFLAGS = \ - $(dflt_cppflags_libnm_core) \ - $(NULL) - -src_libnm_crypto_libnm_crypto_la_LIBADD = \ - $(GLIB_LIBS) \ - $(NULL) - -src_libnm_crypto_libnm_crypto_la_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_LIB_LDFLAGS) \ - $(NULL) - -if HAVE_CRYPTO_GNUTLS -if WITH_GNUTLS -libnm_crypto_lib = src/libnm-crypto/libnm-crypto-gnutls.la -else -check_ltlibraries += src/libnm-crypto/libnm-crypto-gnutls.la -endif - -src_libnm_crypto_libnm_crypto_gnutls_la_SOURCES = src/libnm-crypto/nm-crypto-gnutls.c -src_libnm_crypto_libnm_crypto_gnutls_la_CPPFLAGS = \ - $(src_libnm_core_impl_libnm_core_impl_la_CPPFLAGS) \ - $(GNUTLS_CFLAGS) -src_libnm_crypto_libnm_crypto_gnutls_la_LDFLAGS = \ - $(src_libnm_core_impl_libnm_core_impl_la_LDFLAGS) -src_libnm_crypto_libnm_crypto_gnutls_la_LIBADD = \ - $(GLIB_LIBS) \ - $(GNUTLS_LIBS) -endif - -if HAVE_CRYPTO_NSS -if WITH_NSS -libnm_crypto_lib = src/libnm-crypto/libnm-crypto-nss.la -else -check_ltlibraries += src/libnm-crypto/libnm-crypto-nss.la -endif - -src_libnm_crypto_libnm_crypto_nss_la_SOURCES = src/libnm-crypto/nm-crypto-nss.c -src_libnm_crypto_libnm_crypto_nss_la_CPPFLAGS = \ - $(src_libnm_core_impl_libnm_core_impl_la_CPPFLAGS) \ - $(NSS_CFLAGS) -src_libnm_crypto_libnm_crypto_nss_la_LDFLAGS = \ - $(src_libnm_core_impl_libnm_core_impl_la_LDFLAGS) -src_libnm_crypto_libnm_crypto_nss_la_LIBADD = \ - $(GLIB_LIBS) \ - $(NSS_LIBS) -endif - -if !WITH_GNUTLS -if !WITH_NSS -libnm_crypto_lib = src/libnm-crypto/libnm-crypto-null.la -else -check_ltlibraries += src/libnm-crypto/libnm-crypto-null.la -endif -else -check_ltlibraries += src/libnm-crypto/libnm-crypto-null.la -endif - -src_libnm_crypto_libnm_crypto_null_la_SOURCES = src/libnm-crypto/nm-crypto-null.c -src_libnm_crypto_libnm_crypto_null_la_CPPFLAGS = \ - $(src_libnm_core_impl_libnm_core_impl_la_CPPFLAGS) \ - $(NULL) -src_libnm_crypto_libnm_crypto_null_la_LDFLAGS = \ - $(src_libnm_core_impl_libnm_core_impl_la_LDFLAGS) \ - $(NULL) -src_libnm_crypto_libnm_crypto_null_la_LIBADD = \ - $(GLIB_LIBS) \ - $(NULL) - -noinst_LTLIBRARIES += $(libnm_crypto_lib) - -EXTRA_DIST += \ - src/libnm-crypto/README.md \ - src/libnm-crypto/meson.build \ - src/libnm-crypto/nm-crypto-gnutls.c \ - src/libnm-crypto/nm-crypto-nss.c \ - $(NULL) - -############################################################################### - -check_programs += \ - src/libnm-core-impl/tests/test-crypto \ - src/libnm-core-impl/tests/test-general \ - src/libnm-core-impl/tests/test-keyfile \ - src/libnm-core-impl/tests/test-secrets \ - src/libnm-core-impl/tests/test-setting \ - src/libnm-core-impl/tests/test-settings-defaults - -GLIB_GENERATED += \ - src/libnm-core-impl/tests/nm-core-tests-enum-types.h \ - src/libnm-core-impl/tests/nm-core-tests-enum-types.c -nm_core_tests_enum_types_sources = src/libnm-core-impl/tests/test-general-enums.h -nm_core_tests_enum_types_MKENUMS_C_FLAGS = --fhead '\#undef G_LOG_DOMAIN\n\#include "src/libnm-core-impl/nm-default-libnm-core.h"\n' - -src/libnm-core-impl/tests/nm-core-tests-enum-types.h.stamp: src/libnm-core-impl/tests/.dirstamp -src/libnm-core-impl/tests/nm-core-tests-enum-types.c.stamp: src/libnm-core-impl/tests/.dirstamp - -$(src_libnm_core_impl_tests_test_general_OBJECTS): src/libnm-core-impl/tests/nm-core-tests-enum-types.h - -src_libnm_core_impl_tests_cppflags = \ - -I$(builddir)/src/libnm-core-impl/tests \ - -I$(srcdir)/src/libnm-core-impl/tests \ - -I$(srcdir)/src/libnm-core-impl \ - -I$(srcdir)/src/ \ - -I$(builddir)/src/ \ - $(dflt_cppflags_libnm_core) \ - $(SANITIZER_EXEC_CFLAGS) \ - $(NULL) - -src_libnm_core_impl_tests_test_crypto_CPPFLAGS = $(src_libnm_core_impl_tests_cppflags) -src_libnm_core_impl_tests_test_general_CPPFLAGS = $(src_libnm_core_impl_tests_cppflags) -src_libnm_core_impl_tests_test_keyfile_CPPFLAGS = $(src_libnm_core_impl_tests_cppflags) -src_libnm_core_impl_tests_test_secrets_CPPFLAGS = $(src_libnm_core_impl_tests_cppflags) -src_libnm_core_impl_tests_test_setting_CPPFLAGS = $(src_libnm_core_impl_tests_cppflags) -src_libnm_core_impl_tests_test_settings_defaults_CPPFLAGS = $(src_libnm_core_impl_tests_cppflags) - -src_libnm_core_impl_tests_test_general_SOURCES = \ - src/libnm-core-impl/tests/test-general-enums.h \ - src/libnm-core-impl/tests/test-general.c \ - $(NULL) - -nodist_src_libnm_core_impl_tests_test_general_SOURCES = \ - src/libnm-core-impl/tests/nm-core-tests-enum-types.c \ - src/libnm-core-impl/tests/nm-core-tests-enum-types.h \ - $(NULL) - -src_libnm_core_impl_tests_ldadd = \ - src/libnm-core-aux-extern/libnm-core-aux-extern.la \ - src/libnm-core-impl/libnm-core-impl.la \ - src/libnm-crypto/libnm-crypto.la \ - $(libnm_crypto_lib) \ - src/libnm-core-aux-intern/libnm-core-aux-intern.la \ - src/libnm-base/libnm-base.la \ - src/libnm-systemd-shared/libnm-systemd-shared.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - $(GLIB_LIBS) \ - $(NULL) - -src_libnm_core_impl_tests_ldflags = \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_libnm_core_impl_tests_test_crypto_LDADD = $(src_libnm_core_impl_tests_ldadd) -src_libnm_core_impl_tests_test_general_LDADD = $(src_libnm_core_impl_tests_ldadd) -src_libnm_core_impl_tests_test_keyfile_LDADD = $(src_libnm_core_impl_tests_ldadd) -src_libnm_core_impl_tests_test_secrets_LDADD = $(src_libnm_core_impl_tests_ldadd) -src_libnm_core_impl_tests_test_setting_LDADD = $(src_libnm_core_impl_tests_ldadd) -src_libnm_core_impl_tests_test_settings_defaults_LDADD = $(src_libnm_core_impl_tests_ldadd) - -src_libnm_core_impl_tests_test_crypto_LDFLAGS = $(src_libnm_core_impl_tests_ldflags) -src_libnm_core_impl_tests_test_general_LDFLAGS = $(src_libnm_core_impl_tests_ldflags) -src_libnm_core_impl_tests_test_keyfile_LDFLAGS = $(src_libnm_core_impl_tests_ldflags) -src_libnm_core_impl_tests_test_secrets_LDFLAGS = $(src_libnm_core_impl_tests_ldflags) -src_libnm_core_impl_tests_test_setting_LDFLAGS = $(src_libnm_core_impl_tests_ldflags) -src_libnm_core_impl_tests_test_settings_defaults_LDFLAGS = $(src_libnm_core_impl_tests_ldflags) - -$(src_libnm_core_impl_tests_test_crypto_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_libnm_core_impl_tests_test_general_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_libnm_core_impl_tests_test_keyfile_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_libnm_core_impl_tests_test_secrets_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_libnm_core_impl_tests_test_setting_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_libnm_core_impl_tests_test_settings_defaults_OBJECTS): $(src_libnm_core_public_mkenums_h) - -# test-cert.p12 created with: -# -# openssl pkcs12 -export \ -# -in test_key_and_cert.pem \ -# -inkey test_key_and_cert.pem \ -# -certfile test_ca_cert.pem \ -# -name "test-pkcs12" \ -# -out test-cert.p12 - -EXTRA_DIST += \ - src/libnm-core-impl/tests/certs/ca-no-ending-newline.pem \ - src/libnm-core-impl/tests/certs/pkcs8-decrypted.der \ - src/libnm-core-impl/tests/certs/pkcs8-enc-key.pem \ - src/libnm-core-impl/tests/certs/pkcs8-noenc-key.pem \ - src/libnm-core-impl/tests/certs/test2_ca_cert.pem \ - src/libnm-core-impl/tests/certs/test2-cert.p12 \ - src/libnm-core-impl/tests/certs/test2_key_and_cert.pem \ - src/libnm-core-impl/tests/certs/test-aes-128-key.pem \ - src/libnm-core-impl/tests/certs/test-aes-256-key.pem \ - src/libnm-core-impl/tests/certs/test-aes-128-ec-key.pem \ - src/libnm-core-impl/tests/certs/test-aes-256-ec-key.pem \ - src/libnm-core-impl/tests/certs/test_ca_cert.der \ - src/libnm-core-impl/tests/certs/test_ca_cert.pem \ - src/libnm-core-impl/tests/certs/test-ca-cert.pem \ - src/libnm-core-impl/tests/certs/test-cert.p12 \ - src/libnm-core-impl/tests/certs/test_key_and_cert.pem \ - src/libnm-core-impl/tests/certs/test-key-and-cert.pem \ - src/libnm-core-impl/tests/certs/test-key-only-decrypted.der \ - src/libnm-core-impl/tests/certs/test-key-only-decrypted.pem \ - src/libnm-core-impl/tests/certs/test-ec-key-only-decrypted.der \ - src/libnm-core-impl/tests/certs/test-ec-key-only-decrypted.pem \ - src/libnm-core-impl/tests/certs/test-key-only.pem \ - src/libnm-core-impl/tests/certs/test-tpm2wrapped-key.pem \ - src/libnm-core-impl/tests/nm-core-tests-enum-types.c.template \ - src/libnm-core-impl/tests/nm-core-tests-enum-types.h.template \ - src/libnm-core-impl/tests/meson.build - -############################################################################### - -libnm_lib_h_pub_real = \ - src/libnm-client-public/NetworkManager.h \ - src/libnm-client-public/nm-access-point.h \ - src/libnm-client-public/nm-active-connection.h \ - src/libnm-client-public/nm-autoptr.h \ - src/libnm-client-public/nm-checkpoint.h \ - src/libnm-client-public/nm-client.h \ - src/libnm-client-public/nm-conn-utils.h \ - src/libnm-client-public/nm-device-6lowpan.h \ - src/libnm-client-public/nm-device-adsl.h \ - src/libnm-client-public/nm-device-bond.h \ - src/libnm-client-public/nm-device-bridge.h \ - src/libnm-client-public/nm-device-bt.h \ - src/libnm-client-public/nm-device-dummy.h \ - src/libnm-client-public/nm-device-ethernet.h \ - src/libnm-client-public/nm-device-generic.h \ - src/libnm-client-public/nm-device-hsr.h \ - src/libnm-client-public/nm-device-infiniband.h \ - src/libnm-client-public/nm-device-ip-tunnel.h \ - src/libnm-client-public/nm-device-loopback.h \ - src/libnm-client-public/nm-device-macsec.h \ - src/libnm-client-public/nm-device-macvlan.h \ - src/libnm-client-public/nm-device-modem.h \ - src/libnm-client-public/nm-device-olpc-mesh.h \ - src/libnm-client-public/nm-device-ovs-bridge.h \ - src/libnm-client-public/nm-device-ovs-interface.h \ - src/libnm-client-public/nm-device-ovs-port.h \ - src/libnm-client-public/nm-device-ppp.h \ - src/libnm-client-public/nm-device-team.h \ - src/libnm-client-public/nm-device-tun.h \ - src/libnm-client-public/nm-device-veth.h \ - src/libnm-client-public/nm-device-vlan.h \ - src/libnm-client-public/nm-device-vrf.h \ - src/libnm-client-public/nm-device-vxlan.h \ - src/libnm-client-public/nm-device-wifi-p2p.h \ - src/libnm-client-public/nm-device-wifi.h \ - src/libnm-client-public/nm-device-wimax.h \ - src/libnm-client-public/nm-device-wireguard.h \ - src/libnm-client-public/nm-device-wpan.h \ - src/libnm-client-public/nm-device.h \ - src/libnm-client-public/nm-dhcp-config.h \ - src/libnm-client-public/nm-ethtool-utils.h \ - src/libnm-client-public/nm-ip-config.h \ - src/libnm-client-public/nm-object.h \ - src/libnm-client-public/nm-remote-connection.h \ - src/libnm-client-public/nm-secret-agent-old.h \ - src/libnm-client-public/nm-vpn-connection.h \ - src/libnm-client-public/nm-vpn-editor.h \ - src/libnm-client-public/nm-vpn-plugin-old.h \ - src/libnm-client-public/nm-vpn-service-plugin.h \ - src/libnm-client-public/nm-wifi-p2p-peer.h \ - src/libnm-client-public/nm-wimax-nsp.h \ - $(NULL) -src_libnm_client_public_mkenums_h = \ - src/libnm-client-public/nm-enum-types.h \ - $(NULL) -libnm_lib_h_priv = \ - src/libnm-client-impl/nm-dbus-helpers.h \ - src/libnm-client-aux-extern/nm-default-client.h \ - src/libnm-client-impl/nm-default-libnm.h \ - src/libnm-client-impl/nm-device-private.h \ - src/libnm-client-impl/nm-dhcp4-config.h \ - src/libnm-client-impl/nm-dhcp6-config.h \ - src/libnm-client-impl/nm-dns-manager.h \ - src/libnm-client-impl/nm-ip4-config.h \ - src/libnm-client-impl/nm-ip6-config.h \ - src/libnm-client-impl/nm-libnm-utils.h \ - src/libnm-client-impl/nm-object-private.h \ - src/libnm-client-impl/nm-remote-connection-private.h \ - $(NULL) -libnm_lib_c_real = \ - src/libnm-client-impl/nm-client.c \ - src/libnm-client-impl/nm-object.c \ - src/libnm-client-impl/nm-device.c \ - src/libnm-client-impl/nm-active-connection.c \ - \ - src/libnm-client-impl/nm-access-point.c \ - src/libnm-client-impl/nm-checkpoint.c \ - src/libnm-client-impl/nm-conn-utils.c \ - src/libnm-client-impl/nm-dbus-helpers.c \ - src/libnm-client-impl/nm-device-6lowpan.c \ - src/libnm-client-impl/nm-device-adsl.c \ - src/libnm-client-impl/nm-device-bond.c \ - src/libnm-client-impl/nm-device-bridge.c \ - src/libnm-client-impl/nm-device-bt.c \ - src/libnm-client-impl/nm-device-dummy.c \ - src/libnm-client-impl/nm-device-ethernet.c \ - src/libnm-client-impl/nm-device-generic.c \ - src/libnm-client-impl/nm-device-hsr.c \ - src/libnm-client-impl/nm-device-infiniband.c \ - src/libnm-client-impl/nm-device-ip-tunnel.c \ - src/libnm-client-impl/nm-device-loopback.c \ - src/libnm-client-impl/nm-device-macsec.c \ - src/libnm-client-impl/nm-device-macvlan.c \ - src/libnm-client-impl/nm-device-modem.c \ - src/libnm-client-impl/nm-device-olpc-mesh.c \ - src/libnm-client-impl/nm-device-ovs-bridge.c \ - src/libnm-client-impl/nm-device-ovs-interface.c \ - src/libnm-client-impl/nm-device-ovs-port.c \ - src/libnm-client-impl/nm-device-ppp.c \ - src/libnm-client-impl/nm-device-team.c \ - src/libnm-client-impl/nm-device-tun.c \ - src/libnm-client-impl/nm-device-veth.c \ - src/libnm-client-impl/nm-device-vlan.c \ - src/libnm-client-impl/nm-device-vrf.c \ - src/libnm-client-impl/nm-device-vxlan.c \ - src/libnm-client-impl/nm-device-wifi-p2p.c \ - src/libnm-client-impl/nm-device-wifi.c \ - src/libnm-client-impl/nm-device-wimax.c \ - src/libnm-client-impl/nm-device-wireguard.c \ - src/libnm-client-impl/nm-device-wpan.c \ - src/libnm-client-impl/nm-dhcp-config.c \ - src/libnm-client-impl/nm-dhcp4-config.c \ - src/libnm-client-impl/nm-dhcp6-config.c \ - src/libnm-client-impl/nm-dns-manager.c \ - src/libnm-client-impl/nm-ip-config.c \ - src/libnm-client-impl/nm-ip4-config.c \ - src/libnm-client-impl/nm-ip6-config.c \ - src/libnm-client-impl/nm-libnm-utils.c \ - src/libnm-client-impl/nm-remote-connection.c \ - src/libnm-client-impl/nm-secret-agent-old.c \ - src/libnm-client-impl/nm-vpn-connection.c \ - src/libnm-client-impl/nm-vpn-editor.c \ - src/libnm-client-impl/nm-vpn-plugin-old.c \ - src/libnm-client-impl/nm-vpn-service-plugin.c \ - src/libnm-client-impl/nm-wifi-p2p-peer.c \ - src/libnm-client-impl/nm-wimax-nsp.c \ - $(NULL) -src_libnm_client_public_mkenums_c = \ - src/libnm-client-public/nm-enum-types.c \ - $(NULL) - -libnminclude_HEADERS += \ - $(libnm_lib_h_pub_real) - -nodist_libnminclude_HEADERS += \ - $(src_libnm_client_public_mkenums_h) - -EXTRA_DIST += src/libnm-client-public/meson.build - -check-local-nm-autoptr: - $(srcdir)/tools/check-nm-autoptr.sh - -check_local += check-local-nm-autoptr - -############################################################################### - -noinst_PROGRAMS += src/libnm-core-impl/gen-metadata-nm-settings-libnm-core - -src_libnm_core_impl_gen_metadata_nm_settings_libnm_core_SOURCES = \ - src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.c \ - $(NULL) - -src_libnm_core_impl_gen_metadata_nm_settings_libnm_core_CPPFLAGS = \ - $(clients_cppflags) \ - $(NULL) - -src_libnm_core_impl_gen_metadata_nm_settings_libnm_core_LDADD = \ - src/libnm-core-impl/libnm-core-impl.la \ - src/libnm-crypto/libnm-crypto.la \ - $(libnm_crypto_lib) \ - src/libnm-core-aux-intern/libnm-core-aux-intern.la \ - src/libnm-base/libnm-base.la \ - src/libnm-systemd-shared/libnm-systemd-shared.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - $(GLIB_LIBS) \ - $(NULL) - -src_libnm_core_impl_gen_metadata_nm_settings_libnm_core_LDFLAGS = \ - -Wl,--version-script="$(srcdir)/linker-script-binary.ver" \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -$(src_libnm_core_impl_gen_metadata_nm_settings_libnm_core_OBJECTS): $(src_libnm_core_public_mkenums_h) - -############################################################################### - -noinst_LTLIBRARIES += src/libnm-client-impl/libnm-client-impl.la - -src_libnm_client_impl_libnm_client_impl_la_CPPFLAGS = \ - -I$(builddir)/src/libnm-client-public \ - -I$(srcdir)/src/libnm-client-public \ - -I$(srcdir)/src \ - $(dflt_cppflags_libnm_core) \ - $(INTROSPECTION_CFLAGS) \ - $(NULL) - -src_libnm_client_impl_libnm_client_impl_la_SOURCES = \ - $(libnm_lib_c_real) \ - $(NULL) - -nodist_src_libnm_client_impl_libnm_client_impl_la_SOURCES = \ - $(src_libnm_client_public_mkenums_h) \ - $(src_libnm_client_public_mkenums_c) \ - $(NULL) - -src_libnm_client_impl_libnm_client_impl_la_LIBADD = \ - src/libnm-core-aux-extern/libnm-core-aux-extern.la \ - src/libnm-core-impl/libnm-core-impl.la \ - src/libnm-crypto/libnm-crypto.la \ - $(libnm_crypto_lib) \ - src/libnm-core-aux-intern/libnm-core-aux-intern.la \ - src/libnm-base/libnm-base.la \ - introspection/libnmdbus.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-systemd-shared/libnm-systemd-shared.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-udev-aux/libnm-udev-aux.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - $(GLIB_LIBS) \ - $(DL_LIBS) \ - $(LIBUDEV_LIBS) \ - $(NULL) - -$(src_libnm_client_impl_libnm_client_impl_la_OBJECTS) : $(src_libnm_client_public_mkenums_h) -$(src_libnm_client_impl_libnm_client_impl_la_OBJECTS) : $(src_libnm_core_public_mkenums_h) - -############################################################################### - -lib_LTLIBRARIES += src/libnm-client-impl/libnm.la - -GLIB_GENERATED += \ - $(src_libnm_client_public_mkenums_h) \ - $(src_libnm_client_public_mkenums_c) -nm_enum_types_sources = \ - $(src_libnm_client_public_mkenums_h) \ - $(libnm_lib_h_pub_real) -nm_enum_types_MKENUMS_H_FLAGS = --fhead '\#include "nm-core-enum-types.h"\n' -nm_enum_types_MKENUMS_C_FLAGS = --fhead '\#undef G_LOG_DOMAIN\n\#include "libnm-client-impl/nm-default-libnm.h"\n' - -$(src_nm_dispatcher_nm_dispatcher_OBJECTS): $(src_libnm_client_public_mkenums_h) -$(src_nm_dispatcher_libnm_dispatcher_core_la_OBJECTS): $(src_libnm_client_public_mkenums_h) -$(src_libnm_client_impl_libnm_la_OBJECTS): $(src_libnm_client_public_mkenums_h) -$(src_contrib_tests_libnm_vpn_plugin_utils_test_la_OBJECTS): $(src_libnm_client_public_mkenums_h) - -src_libnm_client_impl_libnm_la_CPPFLAGS = \ - -I$(builddir)/src/libnm-client-public \ - -I$(srcdir)/src/libnm-client-public \ - -I$(srcdir)/src \ - $(dflt_cppflags_libnm_core) \ - $(LIBUDEV_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -src_libnm_client_impl_libnm_la_SOURCES = \ - $(libnm_lib_h_pub_real) \ - $(libnm_lib_h_priv) \ - $(NULL) - -EXTRA_src_libnm_client_impl_libnm_la_DEPENDENCIES = \ - src/libnm-client-impl/libnm.ver - -src_libnm_client_impl_libnm_la_LIBADD = \ - src/libnm-client-impl/libnm-client-impl.la \ - $(NULL) - -src_libnm_client_impl_libnm_la_LDFLAGS = \ - -Wl,--version-script="$(srcdir)/src/libnm-client-impl/libnm.ver" \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_LIB_LDFLAGS) \ - -version-info "1:0:1" - -check-local-exports-libnm: src/libnm-client-impl/libnm.la - $(srcdir)/tools/check-exports.sh "$(builddir)/src/libnm-client-impl/.libs/libnm.so" "$(srcdir)/src/libnm-client-impl/libnm.ver" - -check_local += check-local-exports-libnm - -pkgconfig_DATA += src/libnm-client-impl/libnm.pc - -DISTCLEANFILES += \ - src/libnm-client-impl/libnm.pc - -EXTRA_DIST += \ - src/libnm-client-public/nm-enum-types.c.template \ - src/libnm-client-public/nm-enum-types.h.template \ - \ - src/libnm-client-impl/libnm.pc.in \ - src/libnm-client-impl/libnm.ver - -############################################################################### - -src/libnm-client-impl/NM-1.0.gir: src/libnm-client-impl/libnm.la -src_libnm_client_impl_NM_1_0_gir_INCLUDES = Gio-2.0 -src_libnm_client_impl_NM_1_0_gir_PACKAGES = gio-2.0 -src_libnm_client_impl_NM_1_0_gir_EXPORT_PACKAGES = libnm -src_libnm_client_impl_NM_1_0_gir_CFLAGS = \ - $(filter-out -DGLIB_VERSION_%, $(src_libnm_client_impl_libnm_la_CPPFLAGS)) \ - -DNETWORKMANAGER_COMPILATION \ - $(NULL) -src_libnm_client_impl_NM_1_0_gir_LIBS = src/libnm-client-impl/libnm.la -src_libnm_client_impl_NM_1_0_gir_FILES = \ - $(src_libnm_core_public_mkenums_h) \ - $(src_libnm_core_impl_lib_h_pub_real) \ - $(src_libnm_core_public_mkenums_c) \ - $(src_libnm_core_impl_lib_c_real) \ - $(src_libnm_client_public_mkenums_h) \ - $(libnm_lib_h_pub_real) \ - $(src_libnm_client_public_mkenums_c) \ - $(libnm_lib_c_real) -src_libnm_client_impl_NM_1_0_gir_SCANNERFLAGS = --warn-all --identifier-prefix=NM --symbol-prefix=nm --c-include="NetworkManager.h" - -src/libnm-client-impl/libnm.typelib: src/libnm-client-impl/libnm.gir - $(INTROSPECTION_COMPILER) --includedir=$(srcdir)/src/libnm-core-public --includedir=$(builddir)/src/libnm-core-public --includedir=$(srcdir)/libnm-client-public --includedir=$(builddir)/libnm-client-public $< -o $@ - - -libnm_noinst_data = \ - src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml \ - src/nmcli/gen-metadata-nm-settings-nmcli.xml \ - man/nm-settings-docs-dbus.xml \ - man/nm-settings-docs-nmcli.xml \ - src/libnm-client-impl/nm-property-infos-dbus.xml \ - src/libnm-client-impl/nm-property-infos-ifcfg-rh.xml \ - src/libnm-client-impl/nm-property-infos-keyfile.xml \ - src/libnm-client-impl/nm-property-infos-nmcli.xml \ - src/libnm-client-impl/nm-settings-docs-gir-dbus.xml \ - src/libnm-client-impl/nm-settings-docs-gir-ifcfg-rh.xml \ - src/libnm-client-impl/nm-settings-docs-gir-keyfile.xml \ - src/libnm-client-impl/nm-settings-docs-gir-nmcli.xml \ - src/libnmc-setting/settings-docs-input.xml \ - $(NULL) - -if HAVE_INTROSPECTION -INTROSPECTION_GIRS += src/libnm-client-impl/NM-1.0.gir -noinst_DATA += $(libnm_noinst_data) -DISTCLEANFILES += $(libnm_noinst_data) - -EXTRA_DIST += \ - src/nmcli/gen-metadata-nm-settings-nmcli.xml.in \ - src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml.in - -src_libnm_client_impl_NM_1_0_typelib = src/libnm-client-impl/NM-1.0.typelib -else -src_libnm_client_impl_NM_1_0_typelib = -endif - -############################################################################### - -if BUILD_DOCS -src/nmcli/gen-metadata-nm-settings-nmcli.xml: src/nmcli/gen-metadata-nm-settings-nmcli - $(AM_V_GEN) src/nmcli/gen-metadata-nm-settings-nmcli > "$@" -check-local-gen-metadata-nm-settings-nmcli: src/nmcli/gen-metadata-nm-settings-nmcli.xml - $(srcdir)/tools/check-compare-generated.sh "$(srcdir)/src/nmcli/gen-metadata-nm-settings-nmcli.xml.in" "$(builddir)/src/nmcli/gen-metadata-nm-settings-nmcli.xml" -check_local += check-local-gen-metadata-nm-settings-nmcli -DISTCLEANFILES += src/nmcli/gen-metadata-nm-settings-nmcli.xml - -src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml: src/libnm-core-impl/gen-metadata-nm-settings-libnm-core - $(AM_V_GEN) src/libnm-core-impl/gen-metadata-nm-settings-libnm-core > "$@" -check-local-gen-metadata-nm-settings-libnm-core: src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml - $(srcdir)/tools/check-compare-generated.sh "$(srcdir)/src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml.in" "$(builddir)/src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml" -check_local += check-local-gen-metadata-nm-settings-libnm-core -DISTCLEANFILES += src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml -else -src/nmcli/gen-metadata-nm-settings-nmcli.xml: src/nmcli/gen-metadata-nm-settings-nmcli.xml.in - $(AM_V_GEN) cp $^ $@ -check-local-gen-metadata-nm-settings-nmcli: - -src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml: src/libnm-core-impl/gen-metadata-nm-settings-libnm-core.xml.in - $(AM_V_GEN) cp $^ $@ -check-local-gen-metadata-nm-settings-libnm-core: -endif - -libnm_docs_sources = $(src_libnm_core_impl_lib_c_settings_real) - -src/libnm-client-impl/nm-property-infos-%.xml: tools/generate-docs-nm-property-infos.py src/libnm-core-impl/libnm-core-impl.la src/libnm-client-impl/NM-1.0.gir $(libnm_docs_sources) - $(AM_V_GEN) \ - "$(PYTHON)" \ - $(srcdir)/tools/generate-docs-nm-property-infos.py \ - $(patsubst nm-property-infos-%.xml,%,$(notdir $@)) \ - $@ \ - $(wordlist 3,1000,$^) - -src/libnm-client-impl/nm-settings-docs-gir-%.xml: tools/generate-docs-nm-settings-docs-gir.py src/libnm-client-impl/NM-1.0.gir src/libnm-client-impl/NM-1.0.typelib src/libnm-client-impl/libnm.la $(libnm_docs_sources) - $(AM_V_GEN) \ - export GI_TYPELIB_PATH=$(abs_builddir)/src/libnm-client-impl$${GI_TYPELIB_PATH:+:$$GI_TYPELIB_PATH}; \ - export LD_LIBRARY_PATH=$(abs_builddir)/src/libnm-client-impl/.libs$${LD_LIBRARY_PATH:+:$$LD_LIBRARY_PATH}; \ - $(call set_sanitizer_env,$(abs_builddir)/src/libnm-client-impl/.libs/libnm.so); \ - "$(PYTHON)" \ - $(srcdir)/tools/generate-docs-nm-settings-docs-gir.py \ - --gir $(builddir)/src/libnm-client-impl/NM-1.0.gir \ - --output $@ \ - --target $(patsubst nm-settings-docs-gir-%.xml,%,$(notdir $@)) - -man/nm-settings-docs-nmcli.xml: src/nmcli/gen-metadata-nm-settings-nmcli.xml src/libnm-client-impl/nm-property-infos-nmcli.xml src/libnm-client-impl/nm-settings-docs-gir-nmcli.xml tools/generate-docs-nm-settings-docs-merge.py man/common.ent - $(AM_V_GEN) \ - "$(PYTHON)" \ - "$(srcdir)/tools/generate-docs-nm-settings-docs-merge.py" \ - "$@" \ - --only-properties-from \ - "$<" \ - $(wordlist 1,3,$^) - -src/libnmc-setting/settings-docs-input.xml: src/libnm-client-impl/nm-property-infos-nmcli.xml src/libnm-client-impl/nm-settings-docs-gir-nmcli.xml tools/generate-docs-nm-settings-docs-merge.py - $(AM_V_GEN) "$(PYTHON)" $(srcdir)/tools/generate-docs-nm-settings-docs-merge.py $@ $(wordlist 1,2,$^) - -man/nm-settings-docs-%.xml: src/libnm-client-impl/nm-property-infos-%.xml src/libnm-client-impl/nm-settings-docs-gir-%.xml tools/generate-docs-nm-settings-docs-merge.py man/common.ent - $(AM_V_GEN) "$(PYTHON)" $(srcdir)/tools/generate-docs-nm-settings-docs-merge.py $@ $(wordlist 1,2,$^) - - -EXTRA_DIST += \ - tools/generate-docs-nm-property-infos.py \ - tools/generate-docs-nm-settings-docs-merge.py \ - tools/generate-docs-nm-settings-docs-gir.py \ - src/libnm-client-impl/meson.build \ - $(NULL) - -############################################################################### - -check_programs += src/libnm-client-impl/tests/test-libnm - -src_libnm_client_impl_tests_programs_req_introspection = \ - src/libnm-client-impl/tests/test-nm-client \ - src/libnm-client-impl/tests/test-remote-settings-client \ - src/libnm-client-impl/tests/test-secret-agent - -check-local-libnm-gir: $(builddir)/src/libnm-client-impl/NM-1.0.gir -check-local-libnm-gir: $(srcdir)/src/libnm-client-impl/libnm.ver -check-local-libnm-gir: - "$(PYTHON)" $(srcdir)/src/libnm-client-impl/tests/test-gir.py \ - --gir $(builddir)/src/libnm-client-impl/NM-1.0.gir \ - --ver $(srcdir)/src/libnm-client-impl/libnm.ver - -if HAVE_INTROSPECTION -check_programs += $(src_libnm_client_impl_tests_programs_req_introspection) -check_local += check-local-libnm-gir -else -check_programs_norun += $(src_libnm_client_impl_tests_programs_req_introspection) -endif - -src_libnm_client_impl_tests_cppflags = \ - -I$(srcdir)/src/libnm-client-public \ - -I$(builddir)/src/libnm-client-public \ - $(dflt_cppflags_libnm_core) \ - $(SANITIZER_EXEC_CFLAGS) \ - $(NULL) - -src_libnm_client_impl_tests_ldadd = \ - src/libnm-client-test/libnm-client-test.la \ - src/libnm-client-impl/libnm-client-impl.la \ - $(GLIB_LIBS) \ - $(NULL) - -src_libnm_client_impl_tests_ldflags = \ - $(SANITIZER_EXEC_LDFLAGS) - -src_libnm_client_impl_tests_test_libnm_CPPFLAGS = $(src_libnm_client_impl_tests_cppflags) -src_libnm_client_impl_tests_test_nm_client_CPPFLAGS = $(src_libnm_client_impl_tests_cppflags) -src_libnm_client_impl_tests_test_remote_settings_client_CPPFLAGS = $(src_libnm_client_impl_tests_cppflags) -src_libnm_client_impl_tests_test_secret_agent_CPPFLAGS = $(src_libnm_client_impl_tests_cppflags) - -src_libnm_client_impl_tests_test_libnm_SOURCES = \ - src/contrib/nm-compat.c \ - src/contrib/nm-compat.h \ - src/libnm-client-impl/tests/test-libnm.c \ - $(NULL) - -src_libnm_client_impl_tests_test_libnm_LDADD = $(src_libnm_client_impl_tests_ldadd) -src_libnm_client_impl_tests_test_nm_client_LDADD = $(src_libnm_client_impl_tests_ldadd) -src_libnm_client_impl_tests_test_remote_settings_client_LDADD = $(src_libnm_client_impl_tests_ldadd) -src_libnm_client_impl_tests_test_secret_agent_LDADD = $(src_libnm_client_impl_tests_ldadd) - -src_libnm_client_impl_tests_test_libnm_LDFLAGS = $(src_libnm_client_impl_tests_ldflags) -src_libnm_client_impl_tests_test_nm_client_LDFLAGS = $(src_libnm_client_impl_tests_ldflags) -src_libnm_client_impl_tests_test_remote_settings_client_LDFLAGS = $(src_libnm_client_impl_tests_ldflags) -src_libnm_client_impl_tests_test_secret_agent_LDFLAGS = $(src_libnm_client_impl_tests_ldflags) - -$(src_libnm_client_impl_tests_test_libnm_OBJECTS): $(src_libnm_core_public_mkenums_h) $(src_libnm_client_public_mkenums_h) -$(src_libnm_client_impl_tests_test_nm_client_OBJECTS): $(src_libnm_core_public_mkenums_h) $(src_libnm_client_public_mkenums_h) -$(src_libnm_client_impl_tests_test_remote_settings_client_OBJECTS): $(src_libnm_core_public_mkenums_h) $(src_libnm_client_public_mkenums_h) -$(src_libnm_client_impl_tests_test_secret_agent_OBJECTS): $(src_libnm_core_public_mkenums_h) $(src_libnm_client_public_mkenums_h) - -# tools/test-networkmanager-service.py uses libnm's typelib. Ensure it -# is built first. -$(src_libnm_client_impl_tests_test_nm_client_OBJECTS): $(src_libnm_client_impl_NM_1_0_typelib) -$(src_libnm_client_impl_tests_test_remote_settings_client_OBJECTS): $(src_libnm_client_impl_NM_1_0_typelib) -$(src_libnm_client_impl_tests_test_secret_agent_OBJECTS): $(src_libnm_client_impl_NM_1_0_typelib) - -EXTRA_DIST += \ - src/libnm-client-impl/tests/meson.build \ - src/libnm-client-impl/tests/test-gir.py - -############################################################################### - -# just test, that we can build "nm-vpn-plugin-utils.c" - -check_ltlibraries += src/contrib/tests/libnm-vpn-plugin-utils-test.la - -src_contrib_tests_libnm_vpn_plugin_utils_test_la_SOURCES = \ - src/contrib/nm-vpn-plugin-utils.c \ - src/contrib/nm-vpn-plugin-utils.h \ - $(NULL) - -src_contrib_tests_libnm_vpn_plugin_utils_test_la_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-client-public \ - -I$(builddir)/src/libnm-client-public \ - $(GLIB_CFLAGS) \ - $(SANITIZER_EXEC_CFLAGS) \ - $(NULL) - -src_contrib_tests_libnm_vpn_plugin_utils_test_la_LIBADD = \ - $(GLIB_LIBS) \ - $(NULL) - -EXTRA_DIST += \ - src/contrib/meson.build \ - src/contrib/tests/meson.build \ - $(NULL) - -############################################################################### -# src/core/ -############################################################################### - -src_core_cppflags_base = \ - -I$(srcdir)/src/core \ - $(dflt_cppflags_libnm_core) \ - $(SANITIZER_EXEC_CFLAGS) \ - $(NULL) - -src_core_cppflags_base_test = \ - $(src_core_cppflags_base) \ - $(NULL) - -src_core_cppflags_device_plugin = \ - $(src_core_cppflags_base) - -src_core_cppflags = \ - $(src_core_cppflags_base) \ - \ - $(LIBNDP_CFLAGS) \ - $(LIBPSL_CFLAGS) \ - $(LIBCURL_CFLAGS) \ - $(SELINUX_CFLAGS) \ - $(LIBAUDIT_CFLAGS) \ - $(SYSTEMD_LOGIN_CFLAGS) \ - $(SYSTEMD_JOURNAL_CFLAGS) \ - \ - $(NULL) - -src_core_cppflags_test = \ - $(src_core_cppflags) \ - $(NULL) - -if REQUIRE_ROOT_TESTS -src_core_cppflags_test += -DREQUIRE_ROOT_TESTS=1 -endif - -src_core_ldflags = $(CODE_COVERAGE_LDFLAGS) - -sbin_PROGRAMS += \ - src/core/NetworkManager - -noinst_LTLIBRARIES += \ - src/core/libNetworkManagerBase.la \ - src/core/libNetworkManager.la \ - src/libnm-systemd-core/libnm-systemd-core.la \ - $(NULL) - -check-config-options: - $(srcdir)/tools/check-config-options.sh "$(srcdir)" - -check_local += check-config-options - -############################################################################### - -libsystemd_cppflags = \ - $(dflt_cppflags) \ - -I$(srcdir)/src/ \ - -I$(builddir)/src/ \ - -I$(srcdir)/src/libnm-systemd-shared/ \ - -I$(srcdir)/src/libnm-systemd-shared/sd-adapt-shared \ - -I$(srcdir)/src/libnm-systemd-shared/src/basic \ - -I$(srcdir)/src/libnm-systemd-shared/src/fundamental \ - -I$(srcdir)/src/libnm-systemd-shared/src/shared \ - $(LIBSYSTEMD_NM_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(CODE_COVERAGE_CFLAGS) \ - $(NULL) - -noinst_LTLIBRARIES += src/libnm-systemd-shared/libnm-systemd-shared.la - -src_libnm_systemd_shared_libnm_systemd_shared_la_CPPFLAGS = \ - $(libsystemd_cppflags) \ - $(NULL) - -src_libnm_systemd_shared_libnm_systemd_shared_la_SOURCES = \ - src/libnm-systemd-shared/nm-default-systemd-shared.h \ - src/libnm-systemd-shared/nm-sd-utils-shared.c \ - src/libnm-systemd-shared/nm-sd-utils-shared.h \ - src/libnm-systemd-shared/sd-adapt-shared/architecture.h \ - src/libnm-systemd-shared/sd-adapt-shared/argv-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/arphrd-list.h \ - src/libnm-systemd-shared/sd-adapt-shared/blockdev-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/build.h \ - src/libnm-systemd-shared/sd-adapt-shared/chase-symlinks.h \ - src/libnm-systemd-shared/sd-adapt-shared/chase.h \ - src/libnm-systemd-shared/sd-adapt-shared/copy.h \ - src/libnm-systemd-shared/sd-adapt-shared/dhcp-server-internal.h \ - src/libnm-systemd-shared/sd-adapt-shared/dirent-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/errno-list.h \ - src/libnm-systemd-shared/sd-adapt-shared/filesystems.h \ - src/libnm-systemd-shared/sd-adapt-shared/glob-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/gunicode.h \ - src/libnm-systemd-shared/sd-adapt-shared/hmac.h \ - src/libnm-systemd-shared/sd-adapt-shared/idn-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/ioprio.h \ - src/libnm-systemd-shared/sd-adapt-shared/mallinfo-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/memfd-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/memstream-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/missing_fs.h \ - src/libnm-systemd-shared/sd-adapt-shared/missing_ioprio.h \ - src/libnm-systemd-shared/sd-adapt-shared/missing_keyctl.h \ - src/libnm-systemd-shared/sd-adapt-shared/missing_magic.h \ - src/libnm-systemd-shared/sd-adapt-shared/missing_network.h \ - src/libnm-systemd-shared/sd-adapt-shared/missing_sched.h \ - src/libnm-systemd-shared/sd-adapt-shared/missing_syscall_def.h \ - src/libnm-systemd-shared/sd-adapt-shared/missing_timerfd.h \ - src/libnm-systemd-shared/sd-adapt-shared/mkdir.h \ - src/libnm-systemd-shared/sd-adapt-shared/mountpoint-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/namespace-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/nm-sd-adapt-shared.h \ - src/libnm-systemd-shared/sd-adapt-shared/nulstr-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/os-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/psi-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/raw-clone.h \ - src/libnm-systemd-shared/sd-adapt-shared/rlimit-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/sync-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/sysctl-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/terminal-util.h \ - src/libnm-systemd-shared/sd-adapt-shared/unaligned-fundamental.h \ - src/libnm-systemd-shared/sd-adapt-shared/unaligned.h \ - src/libnm-systemd-shared/sd-adapt-shared/virt.h \ - src/libnm-systemd-shared/src/basic/alloc-util.c \ - src/libnm-systemd-shared/src/basic/alloc-util.h \ - src/libnm-systemd-shared/src/basic/arphrd-util.h \ - src/libnm-systemd-shared/src/basic/btrfs.c \ - src/libnm-systemd-shared/src/basic/btrfs.h \ - src/libnm-systemd-shared/src/basic/cgroup-util.h \ - src/libnm-systemd-shared/src/basic/chase.h \ - src/libnm-systemd-shared/src/basic/constants.h \ - src/libnm-systemd-shared/src/basic/devnum-util.c \ - src/libnm-systemd-shared/src/basic/devnum-util.h \ - src/libnm-systemd-shared/src/basic/dns-def.h \ - src/libnm-systemd-shared/src/basic/env-file.c \ - src/libnm-systemd-shared/src/basic/env-file.h \ - src/libnm-systemd-shared/src/basic/env-util.c \ - src/libnm-systemd-shared/src/basic/env-util.h \ - src/libnm-systemd-shared/src/basic/errno-util.h \ - src/libnm-systemd-shared/src/basic/escape.c \ - src/libnm-systemd-shared/src/basic/escape.h \ - src/libnm-systemd-shared/src/basic/ether-addr-util.c \ - src/libnm-systemd-shared/src/basic/ether-addr-util.h \ - src/libnm-systemd-shared/src/basic/extract-word.c \ - src/libnm-systemd-shared/src/basic/extract-word.h \ - src/libnm-systemd-shared/src/basic/fd-util.c \ - src/libnm-systemd-shared/src/basic/fd-util.h \ - src/libnm-systemd-shared/src/basic/fileio.c \ - src/libnm-systemd-shared/src/basic/fileio.h \ - src/libnm-systemd-shared/src/basic/format-util.c \ - src/libnm-systemd-shared/src/basic/format-util.h \ - src/libnm-systemd-shared/src/basic/fs-util.c \ - src/libnm-systemd-shared/src/basic/fs-util.h \ - src/libnm-systemd-shared/src/basic/glyph-util.c \ - src/libnm-systemd-shared/src/basic/glyph-util.h \ - src/libnm-systemd-shared/src/basic/hash-funcs.c \ - src/libnm-systemd-shared/src/basic/hash-funcs.h \ - src/libnm-systemd-shared/src/basic/hashmap.c \ - src/libnm-systemd-shared/src/basic/hashmap.h \ - src/libnm-systemd-shared/src/basic/hexdecoct.c \ - src/libnm-systemd-shared/src/basic/hexdecoct.h \ - src/libnm-systemd-shared/src/basic/hostname-util.c \ - src/libnm-systemd-shared/src/basic/hostname-util.h \ - src/libnm-systemd-shared/src/basic/in-addr-util.c \ - src/libnm-systemd-shared/src/basic/in-addr-util.h \ - src/libnm-systemd-shared/src/basic/inotify-util.c \ - src/libnm-systemd-shared/src/basic/inotify-util.h \ - src/libnm-systemd-shared/src/basic/io-util.c \ - src/libnm-systemd-shared/src/basic/io-util.h \ - src/libnm-systemd-shared/src/basic/iovec-util.h \ - src/libnm-systemd-shared/src/basic/label.c \ - src/libnm-systemd-shared/src/basic/label.h \ - src/libnm-systemd-shared/src/basic/list.h \ - src/libnm-systemd-shared/src/basic/locale-util.c \ - src/libnm-systemd-shared/src/basic/locale-util.h \ - src/libnm-systemd-shared/src/basic/lock-util.h \ - src/libnm-systemd-shared/src/basic/log.h \ - src/libnm-systemd-shared/src/basic/macro.h \ - src/libnm-systemd-shared/src/basic/memory-util.c \ - src/libnm-systemd-shared/src/basic/memory-util.h \ - src/libnm-systemd-shared/src/basic/mempool.c \ - src/libnm-systemd-shared/src/basic/mempool.h \ - src/libnm-systemd-shared/src/basic/missing_fcntl.h \ - src/libnm-systemd-shared/src/basic/missing_random.h \ - src/libnm-systemd-shared/src/basic/missing_socket.h \ - src/libnm-systemd-shared/src/basic/missing_stat.h \ - src/libnm-systemd-shared/src/basic/missing_syscall.h \ - src/libnm-systemd-shared/src/basic/missing_threads.h \ - src/libnm-systemd-shared/src/basic/missing_type.h \ - src/libnm-systemd-shared/src/basic/namespace-util.h \ - src/libnm-systemd-shared/src/basic/ordered-set.c \ - src/libnm-systemd-shared/src/basic/ordered-set.h \ - src/libnm-systemd-shared/src/basic/origin-id.h \ - src/libnm-systemd-shared/src/basic/parse-util.c \ - src/libnm-systemd-shared/src/basic/parse-util.h \ - src/libnm-systemd-shared/src/basic/path-util.c \ - src/libnm-systemd-shared/src/basic/path-util.h \ - src/libnm-systemd-shared/src/basic/pidref.h \ - src/libnm-systemd-shared/src/basic/prioq.c \ - src/libnm-systemd-shared/src/basic/prioq.h \ - src/libnm-systemd-shared/src/basic/process-util.c \ - src/libnm-systemd-shared/src/basic/process-util.h \ - src/libnm-systemd-shared/src/basic/random-util.c \ - src/libnm-systemd-shared/src/basic/random-util.h \ - src/libnm-systemd-shared/src/basic/ratelimit.c \ - src/libnm-systemd-shared/src/basic/ratelimit.h \ - src/libnm-systemd-shared/src/basic/set.h \ - src/libnm-systemd-shared/src/basic/signal-util.c \ - src/libnm-systemd-shared/src/basic/signal-util.h \ - src/libnm-systemd-shared/src/basic/siphash24.h \ - src/libnm-systemd-shared/src/basic/socket-util.c \ - src/libnm-systemd-shared/src/basic/socket-util.h \ - src/libnm-systemd-shared/src/basic/sort-util.h \ - src/libnm-systemd-shared/src/basic/sparse-endian.h \ - src/libnm-systemd-shared/src/basic/stat-util.c \ - src/libnm-systemd-shared/src/basic/stat-util.h \ - src/libnm-systemd-shared/src/basic/stdio-util.h \ - src/libnm-systemd-shared/src/basic/string-table.c \ - src/libnm-systemd-shared/src/basic/string-table.h \ - src/libnm-systemd-shared/src/basic/string-util.c \ - src/libnm-systemd-shared/src/basic/string-util.h \ - src/libnm-systemd-shared/src/basic/strv.c \ - src/libnm-systemd-shared/src/basic/strv.h \ - src/libnm-systemd-shared/src/basic/strxcpyx.c \ - src/libnm-systemd-shared/src/basic/strxcpyx.h \ - src/libnm-systemd-shared/src/basic/time-util.c \ - src/libnm-systemd-shared/src/basic/time-util.h \ - src/libnm-systemd-shared/src/basic/tmpfile-util.c \ - src/libnm-systemd-shared/src/basic/tmpfile-util.h \ - src/libnm-systemd-shared/src/basic/umask-util.h \ - src/libnm-systemd-shared/src/basic/user-util.h \ - src/libnm-systemd-shared/src/basic/utf8.c \ - src/libnm-systemd-shared/src/basic/utf8.h \ - src/libnm-systemd-shared/src/fundamental/logarithm.h \ - src/libnm-systemd-shared/src/fundamental/macro-fundamental.h \ - src/libnm-systemd-shared/src/fundamental/memory-util-fundamental.h \ - src/libnm-systemd-shared/src/fundamental/sha256.c \ - src/libnm-systemd-shared/src/fundamental/sha256.h \ - src/libnm-systemd-shared/src/fundamental/string-util-fundamental.c \ - src/libnm-systemd-shared/src/fundamental/string-util-fundamental.h \ - src/libnm-systemd-shared/src/shared/dns-domain.c \ - src/libnm-systemd-shared/src/shared/dns-domain.h \ - src/libnm-systemd-shared/src/shared/log-link.h \ - src/libnm-systemd-shared/src/shared/web-util.c \ - src/libnm-systemd-shared/src/shared/web-util.h \ - $(NULL) - -src_libnm_systemd_shared_libnm_systemd_shared_la_LIBADD = \ - $(GLIB_LIBS) \ - $(CODE_COVERAGE_LDFLAGS) \ - $(NULL) - -EXTRA_DIST += src/libnm-systemd-shared/meson.build - -############################################################################### - -src_libnm_systemd_core_libnm_systemd_core_la_cppflags = \ - $(libsystemd_cppflags) \ - -I$(srcdir)/src/libnm-systemd-core/sd-adapt-core \ - -I$(srcdir)/src/libnm-systemd-core/src/systemd \ - -I$(srcdir)/src/libnm-systemd-core/src/libsystemd-network \ - -I$(srcdir)/src/libnm-systemd-core/src/libsystemd/sd-device \ - -I$(srcdir)/src/libnm-systemd-core/src/libsystemd/sd-event \ - $(NULL) - -src_libnm_systemd_core_libnm_systemd_core_la_libadd = \ - $(GLIB_LIBS) \ - $(CODE_COVERAGE_LDFLAGS) \ - $(NULL) - -src_libnm_systemd_core_libnm_systemd_core_la_SOURCES = \ - src/libnm-systemd-core/nm-default-systemd-core.h \ - src/libnm-systemd-core/nm-sd.c \ - src/libnm-systemd-core/nm-sd.h \ - src/libnm-systemd-core/sd-adapt-core/condition.h \ - src/libnm-systemd-core/sd-adapt-core/conf-parser.h \ - src/libnm-systemd-core/sd-adapt-core/khash.h \ - src/libnm-systemd-core/sd-adapt-core/netif-util.c \ - src/libnm-systemd-core/sd-adapt-core/netif-util.h \ - src/libnm-systemd-core/sd-adapt-core/network-util.h \ - src/libnm-systemd-core/sd-adapt-core/nm-sd-adapt-core.c \ - src/libnm-systemd-core/sd-adapt-core/nm-sd-adapt-core.h \ - src/libnm-systemd-core/sd-adapt-core/sd-daemon.h \ - src/libnm-systemd-core/sd-adapt-core/sd-messages.h \ - src/libnm-systemd-core/sd-adapt-core/udev-util.h \ - src/libnm-systemd-core/src/libsystemd-network/sd-dhcp-duid.c \ - src/libnm-systemd-core/src/libsystemd-network/dhcp-duid-internal.h \ - src/libnm-systemd-core/src/libsystemd-network/dhcp6-client-internal.h \ - src/libnm-systemd-core/src/libsystemd-network/dhcp6-internal.h \ - src/libnm-systemd-core/src/libsystemd-network/dhcp6-lease-internal.h \ - src/libnm-systemd-core/src/libsystemd-network/dhcp6-network.c \ - src/libnm-systemd-core/src/libsystemd-network/dhcp6-option.c \ - src/libnm-systemd-core/src/libsystemd-network/dhcp6-option.h \ - src/libnm-systemd-core/src/libsystemd-network/dhcp6-protocol.c \ - src/libnm-systemd-core/src/libsystemd-network/dhcp6-protocol.h \ - src/libnm-systemd-core/src/libsystemd-network/network-common.c \ - src/libnm-systemd-core/src/libsystemd-network/network-common.h \ - src/libnm-systemd-core/src/libsystemd-network/sd-dhcp6-client.c \ - src/libnm-systemd-core/src/libsystemd-network/sd-dhcp6-lease.c \ - src/libnm-systemd-core/src/libsystemd/sd-device/device-internal.h \ - src/libnm-systemd-core/src/libsystemd/sd-device/device-private.c \ - src/libnm-systemd-core/src/libsystemd/sd-device/device-private.h \ - src/libnm-systemd-core/src/libsystemd/sd-device/device-util.h \ - src/libnm-systemd-core/src/libsystemd/sd-device/sd-device.c \ - src/libnm-systemd-core/src/libsystemd/sd-event/event-source.h \ - src/libnm-systemd-core/src/libsystemd/sd-event/event-util.c \ - src/libnm-systemd-core/src/libsystemd/sd-event/event-util.h \ - src/libnm-systemd-core/src/libsystemd/sd-event/sd-event.c \ - src/libnm-systemd-core/src/libsystemd/sd-id128/id128-util.c \ - src/libnm-systemd-core/src/libsystemd/sd-id128/id128-util.h \ - src/libnm-systemd-core/src/libsystemd/sd-id128/sd-id128.c \ - src/libnm-systemd-core/src/systemd/_sd-common.h \ - src/libnm-systemd-core/src/systemd/sd-device.h \ - src/libnm-systemd-core/src/systemd/sd-dhcp-duid.h \ - src/libnm-systemd-core/src/systemd/sd-dhcp6-client.h \ - src/libnm-systemd-core/src/systemd/sd-dhcp6-lease.h \ - src/libnm-systemd-core/src/systemd/sd-dhcp6-option.h \ - src/libnm-systemd-core/src/systemd/sd-dhcp6-protocol.h \ - src/libnm-systemd-core/src/systemd/sd-event.h \ - src/libnm-systemd-core/src/systemd/sd-id128.h \ - src/libnm-systemd-core/src/systemd/sd-ndisc.h \ - $(NULL) - -src_libnm_systemd_core_libnm_systemd_core_la_CPPFLAGS = $(src_libnm_systemd_core_libnm_systemd_core_la_cppflags) -src_libnm_systemd_core_libnm_systemd_core_la_LIBADD = \ - $(GLIB_LIBS) \ - $(CODE_COVERAGE_LDFLAGS) \ - $(NULL) -$(src_libnm_systemd_core_libnm_systemd_core_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += src/libnm-systemd-core/meson.build - -############################################################################### - -src_core_libNetworkManagerBase_la_CPPFLAGS = \ - $(libsystemd_cppflags) \ - $(src_core_cppflags) - -src_core_libNetworkManagerBase_la_SOURCES = \ - \ - src/core/nm-core-utils.c \ - src/core/nm-core-utils.h \ - \ - src/core/NetworkManagerUtils.c \ - src/core/NetworkManagerUtils.h \ - \ - src/core/ndisc/nm-lndp-ndisc.c \ - src/core/ndisc/nm-lndp-ndisc.h \ - src/core/ndisc/nm-ndisc.c \ - src/core/ndisc/nm-ndisc.h \ - src/core/ndisc/nm-ndisc-private.h \ - \ - src/core/nm-dbus-utils.c \ - src/core/nm-dbus-utils.h \ - src/core/nm-dbus-object.c \ - src/core/nm-dbus-object.h \ - src/core/nm-netns.c \ - src/core/nm-netns.h \ - src/core/nm-l3-config-data.c \ - src/core/nm-l3-config-data.h \ - src/core/nm-l3-ipv4ll.c \ - src/core/nm-l3-ipv4ll.h \ - src/core/nm-l3-ipv6ll.c \ - src/core/nm-l3-ipv6ll.h \ - src/core/nm-l3cfg.c \ - src/core/nm-l3cfg.h \ - src/core/nm-ip-config.c \ - src/core/nm-ip-config.h \ - src/core/nm-bond-manager.c \ - src/core/nm-bond-manager.h \ - \ - src/core/dhcp/nm-dhcp-client.c \ - src/core/dhcp/nm-dhcp-client.h \ - src/core/dhcp/nm-dhcp-client-logging.h \ - src/core/dhcp/nm-dhcp-nettools.c \ - src/core/dhcp/nm-dhcp-utils.c \ - src/core/dhcp/nm-dhcp-utils.h \ - src/core/dhcp/nm-dhcp-options.c \ - src/core/dhcp/nm-dhcp-options.h \ - src/core/dhcp/nm-dhcp-systemd.c \ - src/core/dhcp/nm-dhcp-manager.c \ - src/core/dhcp/nm-dhcp-manager.h \ - \ - src/core/main-utils.c \ - src/core/main-utils.h \ - \ - $(NULL) - -src_core_libNetworkManagerBase_la_LIBADD = \ - $(GLIB_LIBS) \ - $(LIBUDEV_LIBS) \ - $(NULL) - -$(src_core_libNetworkManagerBase_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -############################################################################### - -src_core_libNetworkManager_la_CPPFLAGS = $(src_core_cppflags) - -src_core_libNetworkManager_la_SOURCES = \ - \ - src/core/nm-default-daemon.h \ - \ - src/core/nm-checkpoint.c \ - src/core/nm-checkpoint.h \ - src/core/nm-checkpoint-manager.c \ - src/core/nm-checkpoint-manager.h \ - \ - src/core/devices/nm-lldp-listener.c \ - src/core/devices/nm-lldp-listener.h \ - src/core/devices/nm-device-utils.c \ - src/core/devices/nm-device-utils.h \ - src/core/devices/nm-device.c \ - src/core/devices/nm-device.h \ - src/core/devices/nm-device-ethernet-utils.c \ - src/core/devices/nm-device-ethernet-utils.h \ - src/core/devices/nm-device-factory.c \ - src/core/devices/nm-device-factory.h \ - src/core/devices/nm-device-generic.c \ - src/core/devices/nm-device-generic.h \ - src/core/devices/nm-device-logging.h \ - src/core/devices/nm-device-private.h \ - \ - src/core/devices/nm-device-6lowpan.c \ - src/core/devices/nm-device-6lowpan.h \ - src/core/devices/nm-device-bond.c \ - src/core/devices/nm-device-bond.h \ - src/core/devices/nm-device-bridge.c \ - src/core/devices/nm-device-bridge.h \ - src/core/devices/nm-device-dummy.c \ - src/core/devices/nm-device-dummy.h \ - src/core/devices/nm-device-ethernet.c \ - src/core/devices/nm-device-ethernet.h \ - src/core/devices/nm-device-hsr.c \ - src/core/devices/nm-device-hsr.h \ - src/core/devices/nm-device-infiniband.c \ - src/core/devices/nm-device-infiniband.h \ - src/core/devices/nm-device-ip-tunnel.c \ - src/core/devices/nm-device-ip-tunnel.h \ - src/core/devices/nm-device-loopback.c \ - src/core/devices/nm-device-loopback.h \ - src/core/devices/nm-device-macsec.c \ - src/core/devices/nm-device-macsec.h \ - src/core/devices/nm-device-macvlan.c \ - src/core/devices/nm-device-macvlan.h \ - src/core/devices/nm-device-ppp.c \ - src/core/devices/nm-device-ppp.h \ - src/core/devices/nm-device-tun.c \ - src/core/devices/nm-device-tun.h \ - src/core/devices/nm-device-veth.c \ - src/core/devices/nm-device-veth.h \ - src/core/devices/nm-device-vlan.c \ - src/core/devices/nm-device-vlan.h \ - src/core/devices/nm-device-vrf.c \ - src/core/devices/nm-device-vrf.h \ - src/core/devices/nm-device-vxlan.c \ - src/core/devices/nm-device-vxlan.h \ - src/core/devices/nm-device-wireguard.c \ - src/core/devices/nm-device-wireguard.h \ - src/core/devices/nm-device-wpan.c \ - src/core/devices/nm-device-wpan.h \ - \ - src/core/dhcp/nm-dhcp-dhcpcanon.c \ - src/core/dhcp/nm-dhcp-dhclient.c \ - src/core/dhcp/nm-dhcp-dhcpcd.c \ - src/core/dhcp/nm-dhcp-helper-api.h \ - src/core/dhcp/nm-dhcp-listener.c \ - src/core/dhcp/nm-dhcp-listener.h \ - src/core/dhcp/nm-dhcp-dhclient-utils.c \ - src/core/dhcp/nm-dhcp-dhclient-utils.h \ - \ - src/core/dns/nm-dns-manager.c \ - src/core/dns/nm-dns-manager.h \ - src/core/dns/nm-dns-plugin.c \ - src/core/dns/nm-dns-plugin.h \ - src/core/dns/nm-dns-dnsmasq.c \ - src/core/dns/nm-dns-dnsmasq.h \ - src/core/dns/nm-dns-systemd-resolved.c \ - src/core/dns/nm-dns-systemd-resolved.h \ - \ - src/core/dnsmasq/nm-dnsmasq-manager.c \ - src/core/dnsmasq/nm-dnsmasq-manager.h \ - src/core/dnsmasq/nm-dnsmasq-utils.c \ - src/core/dnsmasq/nm-dnsmasq-utils.h \ - \ - src/core/ppp/nm-ppp-mgr.c \ - src/core/ppp/nm-ppp-mgr.h \ - src/core/ppp/nm-ppp-manager-call.c \ - src/core/ppp/nm-ppp-manager-call.h \ - src/core/ppp/nm-ppp-manager.h \ - src/core/ppp/nm-ppp-status.h \ - \ - src/core/nm-hostname-manager.c \ - src/core/nm-hostname-manager.h \ - \ - src/core/settings/nm-agent-manager.c \ - src/core/settings/nm-agent-manager.h \ - src/core/settings/nm-secret-agent.c \ - src/core/settings/nm-secret-agent.h \ - src/core/settings/nm-settings-connection.c \ - src/core/settings/nm-settings-connection.h \ - src/core/settings/nm-settings-storage.c \ - src/core/settings/nm-settings-storage.h \ - src/core/settings/nm-settings-plugin.c \ - src/core/settings/nm-settings-plugin.h \ - src/core/settings/nm-settings.c \ - src/core/settings/nm-settings.h \ - src/core/settings/nm-settings-utils.c \ - src/core/settings/nm-settings-utils.h \ - \ - src/core/settings/plugins/keyfile/nms-keyfile-storage.c \ - src/core/settings/plugins/keyfile/nms-keyfile-storage.h \ - src/core/settings/plugins/keyfile/nms-keyfile-plugin.c \ - src/core/settings/plugins/keyfile/nms-keyfile-plugin.h \ - src/core/settings/plugins/keyfile/nms-keyfile-reader.c \ - src/core/settings/plugins/keyfile/nms-keyfile-reader.h \ - src/core/settings/plugins/keyfile/nms-keyfile-utils.c \ - src/core/settings/plugins/keyfile/nms-keyfile-utils.h \ - src/core/settings/plugins/keyfile/nms-keyfile-writer.c \ - src/core/settings/plugins/keyfile/nms-keyfile-writer.h \ - \ - src/core/supplicant/nm-supplicant-config.c \ - src/core/supplicant/nm-supplicant-config.h \ - src/core/supplicant/nm-supplicant-interface.c \ - src/core/supplicant/nm-supplicant-interface.h \ - src/core/supplicant/nm-supplicant-manager.c \ - src/core/supplicant/nm-supplicant-manager.h \ - src/core/supplicant/nm-supplicant-settings-verify.c \ - src/core/supplicant/nm-supplicant-settings-verify.h \ - src/core/supplicant/nm-supplicant-types.h \ - \ - src/core/vpn/nm-vpn-connection.c \ - src/core/vpn/nm-vpn-connection.h \ - src/core/vpn/nm-vpn-manager.c \ - src/core/vpn/nm-vpn-manager.h \ - \ - src/core/nm-act-request.c \ - src/core/nm-act-request.h \ - src/core/nm-active-connection.c \ - src/core/nm-active-connection.h \ - src/core/nm-audit-manager.c \ - src/core/nm-audit-manager.h \ - src/core/nm-dbus-manager.c \ - src/core/nm-dbus-manager.h \ - src/core/nm-config.c \ - src/core/nm-config.h \ - src/core/nm-config-data.c \ - src/core/nm-config-data.h \ - src/core/nm-connectivity.c \ - src/core/nm-connectivity.h \ - src/core/nm-dcb.c \ - src/core/nm-dcb.h \ - src/core/nm-dhcp-config.c \ - src/core/nm-dhcp-config.h \ - src/core/nm-dispatcher.c \ - src/core/nm-dispatcher.h \ - src/core/nm-firewall-utils.c \ - src/core/nm-firewall-utils.h \ - src/core/nm-firewalld-manager.c \ - src/core/nm-firewalld-manager.h \ - src/core/nm-auth-manager.c \ - src/core/nm-auth-manager.h \ - src/core/nm-auth-utils.c \ - src/core/nm-auth-utils.h \ - src/core/nm-manager.c \ - src/core/nm-manager.h \ - src/core/nm-pacrunner-manager.c \ - src/core/nm-pacrunner-manager.h \ - src/core/nm-policy.c \ - src/core/nm-policy.h \ - src/core/nm-rfkill-manager.c \ - src/core/nm-rfkill-manager.h \ - src/core/nm-session-monitor.c \ - src/core/nm-session-monitor.h \ - src/core/nm-priv-helper-call.c \ - src/core/nm-priv-helper-call.h \ - src/core/nm-keep-alive.c \ - src/core/nm-keep-alive.h \ - src/core/nm-power-monitor.c \ - src/core/nm-power-monitor.h \ - src/core/nm-types.h \ - \ - $(NULL) - -src_core_libNetworkManager_la_LIBADD = \ - src/core/libNetworkManagerBase.la \ - src/libnm-core-aux-extern/libnm-core-aux-extern.la \ - src/libnm-core-impl/libnm-core-impl.la \ - src/libnm-crypto/libnm-crypto.la \ - $(libnm_crypto_lib) \ - src/libnm-core-aux-intern/libnm-core-aux-intern.la \ - src/libnm-platform/libnm-platform.la \ - src/libnm-base/libnm-base.la \ - src/libnm-log-core/libnm-log-core.la \ - src/libnm-lldp/libnm-lldp.la \ - src/libnm-udev-aux/libnm-udev-aux.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/libnm-systemd-core/libnm-systemd-core.la \ - src/libnm-systemd-shared/libnm-systemd-shared.la \ - src/n-acd/libn-acd.la \ - src/n-dhcp4/libn-dhcp4.la \ - src/c-rbtree/libc-rbtree.la \ - src/c-siphash/libc-siphash.la \ - $(GLIB_LIBS) \ - $(LIBUDEV_LIBS) \ - $(SYSTEMD_LOGIN_LIBS) \ - $(SYSTEMD_JOURNAL_LIBS) \ - $(LIBNDP_LIBS) \ - $(DL_LIBS) \ - $(SELINUX_LIBS) \ - $(LIBAUDIT_LIBS) \ - $(LIBPSL_LIBS) \ - $(LIBCURL_LIBS) \ - $(NULL) - -$(src_core_libNetworkManager_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -############################################################################### - -check_ltlibraries += src/core/libNetworkManagerTest.la - -src_core_tests_cppflags_fake = $(src_core_cppflags_test) -DSETUP=nm_fake_platform_setup -src_core_tests_cppflags_linux = $(src_core_cppflags_test) -DSETUP=nm_linux_platform_setup - -src_core_libNetworkManagerTest_la_CPPFLAGS = $(src_core_cppflags_test) - -src_core_libNetworkManagerTest_la_SOURCES = \ - src/core/ndisc/nm-fake-ndisc.c \ - src/core/ndisc/nm-fake-ndisc.h \ - src/core/platform/nm-fake-platform.c \ - src/core/platform/nm-fake-platform.h \ - src/core/platform/tests/test-common.c \ - src/core/platform/tests/test-common.h \ - $(NULL) - -src_core_libNetworkManagerTest_la_LIBADD = \ - src/core/libNetworkManager.la \ - $(CODE_COVERAGE_LDFLAGS) \ - $(GLIB_LIBS) \ - $(LIBUDEV_LIBS) \ - $(PTHREAD_LIBS) \ - $(NULL) - -$(src_core_libNetworkManagerTest_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -############################################################################### - -noinst_PROGRAMS += src/core/NetworkManager-all-sym - -src_core_NetworkManager_all_sym_CPPFLAGS = $(src_core_cppflags) - -src_core_NetworkManager_all_sym_SOURCES = \ - src/core/main.c - -src_core_NetworkManager_all_sym_LDADD = \ - src/core/libNetworkManager.la \ - $(GLIB_LIBS) \ - $(NULL) - -src_core_NetworkManager_all_sym_LDFLAGS = \ - -rdynamic \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -$(src_core_NetworkManager_all_sym_OBJECTS): $(src_libnm_core_public_mkenums_h) - -src/core/NetworkManager.ver: src/core/NetworkManager-all-sym $(core_plugins) - $(AM_V_GEN) LIBTOOL="$(LIBTOOL)" NM="$(NM)" "$(srcdir)/tools/create-exports-NetworkManager.sh" --called-from-build "$(srcdir)" - -CLEANFILES += src/core/NetworkManager.ver - -EXTRA_src_core_NetworkManager_DEPENDENCIES = \ - src/core/NetworkManager.ver - -src_core_NetworkManager_CPPFLAGS = $(src_core_cppflags) - -src_core_NetworkManager_SOURCES = \ - src/core/main.c - -src_core_NetworkManager_LDADD = \ - src/core/libNetworkManager.la \ - $(GLIB_LIBS) \ - $(NULL) - -src_core_NetworkManager_LDFLAGS = \ - -rdynamic \ - -Wl,--version-script="src/core/NetworkManager.ver" \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -$(src_core_NetworkManager_OBJECTS): $(src_libnm_core_public_mkenums_h) - -############################################################################### - -noinst_LTLIBRARIES += src/nm-initrd-generator/libnmi-core.la - -src_nm_initrd_generator_libnmi_core_la_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src/libnm-core-public \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(CODE_COVERAGE_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(LIBUDEV_CFLAGS) \ - $(SYSTEMD_JOURNAL_CFLAGS) \ - $(SANITIZER_LIB_CFLAGS) \ - $(NULL) - -src_nm_initrd_generator_libnmi_core_la_SOURCES = \ - src/nm-initrd-generator/nm-initrd-generator.h \ - src/nm-initrd-generator/nmi-cmdline-reader.c \ - src/nm-initrd-generator/nmi-dt-reader.c \ - src/nm-initrd-generator/nmi-ibft-reader.c \ - $(NULL) - -libexec_PROGRAMS += src/nm-initrd-generator/nm-initrd-generator - -src_nm_initrd_generator_nm_initrd_generator_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src/libnm-core-public \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(CODE_COVERAGE_CFLAGS) \ - $(GLIB_CFLAGS) \ - $(LIBUDEV_CFLAGS) \ - $(SYSTEMD_JOURNAL_CFLAGS) \ - $(SANITIZER_EXEC_CFLAGS) \ - $(NULL) - -src_nm_initrd_generator_nm_initrd_generator_LDADD = \ - src/nm-initrd-generator/libnmi-core.la \ - src/libnm-core-impl/libnm-core-impl.la \ - src/libnm-crypto/libnm-crypto.la \ - $(libnm_crypto_lib) \ - src/libnm-core-aux-intern/libnm-core-aux-intern.la \ - src/libnm-platform/libnm-platform.la \ - src/libnm-base/libnm-base.la \ - src/libnm-log-core/libnm-log-core.la \ - src/libnm-platform/libnm-platform.la \ - src/libnm-udev-aux/libnm-udev-aux.la \ - src/libnm-systemd-shared/libnm-systemd-shared.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - $(SYSTEMD_JOURNAL_LIBS) \ - $(GLIB_LIBS) \ - $(NULL) - -src_nm_initrd_generator_nm_initrd_generator_LDFLAGS = \ - -Wl,--version-script="$(srcdir)/linker-script-binary.ver" \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -check_programs += src/nm-initrd-generator/tests/test-dt-reader - -src_nm_initrd_generator_tests_test_dt_reader_CPPFLAGS = \ - $(src_nm_initrd_generator_nm_initrd_generator_CPPFLAGS) - -src_nm_initrd_generator_tests_test_dt_reader_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_nm_initrd_generator_tests_test_dt_reader_LDADD = \ - $(src_nm_initrd_generator_nm_initrd_generator_LDADD) - -check_programs += src/nm-initrd-generator/tests/test-ibft-reader - -src_nm_initrd_generator_tests_test_ibft_reader_CPPFLAGS = \ - $(src_nm_initrd_generator_nm_initrd_generator_CPPFLAGS) - -src_nm_initrd_generator_tests_test_ibft_reader_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_nm_initrd_generator_tests_test_ibft_reader_LDADD = \ - $(src_nm_initrd_generator_nm_initrd_generator_LDADD) - -check_programs += src/nm-initrd-generator/tests/test-cmdline-reader - -src_nm_initrd_generator_tests_test_cmdline_reader_CPPFLAGS = \ - $(src_nm_initrd_generator_nm_initrd_generator_CPPFLAGS) - -src_nm_initrd_generator_tests_test_cmdline_reader_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_nm_initrd_generator_tests_test_cmdline_reader_LDADD = \ - $(src_nm_initrd_generator_nm_initrd_generator_LDADD) - -$(src_nm_initrd_generator_libnmi_core_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_nm_initrd_generator_nm_initrd_generator_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_nm_initrd_generator_tests_test_cmdline_reader_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_nm_initrd_generator_tests_test_ibft_reader_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_nm_initrd_generator_tests_test_dt_reader_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += \ - src/nm-initrd-generator/meson.build \ - src/nm-initrd-generator/tests/meson.build \ - src/nm-initrd-generator/tests/sysfs/class/net/eth0/address \ - src/nm-initrd-generator/tests/sysfs/class/net/eth2/address \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet0/prefix-len \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet0/hostname \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet0/gateway \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet0/mac \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet0/vlan \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet0/primary-dns \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet0/dhcp \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet0/origin \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet0/secondary-dns \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet0/ip-addr \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet0/subnet-mask \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet0/index \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet0/flags \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/initiator/isns-server \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/initiator/initiator-name \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/initiator/pri-radius-server \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/initiator/slp-server \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/initiator/sec-radius-server \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/initiator/index \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/initiator/flags \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target0/nic-assoc \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target0/ip-addr \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target0/chap-type \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target0/index \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target0/lun \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target0/flags \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target0/port \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target2/target-name \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target2/nic-assoc \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target2/ip-addr \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target2/chap-type \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target2/index \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target2/lun \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target2/flags \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/target2/port \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/acpi_header/oem_table_id \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/acpi_header/oem_id \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/acpi_header/signature \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet2/prefix-len \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet2/hostname \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet2/gateway \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet2/mac \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet2/vlan \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet2/primary-dns \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet2/dhcp \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet2/origin \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet2/secondary-dns \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet2/ip-addr \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet2/subnet-mask \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet2/index \ - src/nm-initrd-generator/tests/sysfs/firmware/ibft/ethernet2/flags \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/class/net/eth0/address \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/ethernet0/prefix-len \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/ethernet0/gateway \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/ethernet0/mac \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/ethernet0/vlan \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/ethernet0/primary-dns \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/ethernet0/origin \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/ethernet0/secondary-dns \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/ethernet0/ip-addr \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/ethernet0/subnet-mask \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/ethernet0/index \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/initiator/initiator-name \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/target0/target-name \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/target0/ip-addr \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/target0/index \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/target0/lun \ - src/nm-initrd-generator/tests/sysfs-bad-dns1/firmware/ibft/target0/port \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/class/net/eth0/address \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/ethernet0/prefix-len \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/ethernet0/gateway \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/ethernet0/mac \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/ethernet0/vlan \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/ethernet0/primary-dns \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/ethernet0/origin \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/ethernet0/secondary-dns \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/ethernet0/ip-addr \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/ethernet0/subnet-mask \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/ethernet0/index \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/initiator/initiator-name \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/target0/target-name \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/target0/ip-addr \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/target0/index \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/target0/lun \ - src/nm-initrd-generator/tests/sysfs-bad-dns2/firmware/ibft/target0/port \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/class/net/eth0/address \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/ethernet0/prefix-len \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/ethernet0/gateway \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/ethernet0/mac \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/ethernet0/vlan \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/ethernet0/primary-dns \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/ethernet0/origin \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/ethernet0/secondary-dns \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/ethernet0/ip-addr \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/ethernet0/subnet-mask \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/ethernet0/index \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/initiator/initiator-name \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/target0/target-name \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/target0/ip-addr \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/target0/index \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/target0/lun \ - src/nm-initrd-generator/tests/sysfs-bad-gateway/firmware/ibft/target0/port \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/class/net/eth0/address \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/ethernet0/prefix-len \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/ethernet0/gateway \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/ethernet0/mac \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/ethernet0/vlan \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/ethernet0/primary-dns \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/ethernet0/origin \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/ethernet0/secondary-dns \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/ethernet0/ip-addr \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/ethernet0/subnet-mask \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/ethernet0/index \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/initiator/initiator-name \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/target0/target-name \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/target0/ip-addr \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/target0/index \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/target0/lun \ - src/nm-initrd-generator/tests/sysfs-bad-ipaddr/firmware/ibft/target0/port \ - src/nm-initrd-generator/tests/sysfs-dhcp/class/net/eth0/address \ - src/nm-initrd-generator/tests/sysfs-dhcp/class/net/eth1/address \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/ethernet0/gateway \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/ethernet0/mac \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/ethernet0/vlan \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/ethernet0/primary-dns \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/ethernet0/origin \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/ethernet0/secondary-dns \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/ethernet0/index \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/initiator/initiator-name \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/target0/target-name \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/target0/ip-addr \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/target0/index \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/target0/lun \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/target0/port \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/ethernet1/gateway \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/ethernet1/mac \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/ethernet1/vlan \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/ethernet1/primary-dns \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/ethernet1/origin \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/ethernet1/secondary-dns \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/ethernet1/index \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/target1/target-name \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/target1/ip-addr \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/target1/index \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/target1/lun \ - src/nm-initrd-generator/tests/sysfs-dhcp/firmware/ibft/target1/port \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/chosen/bootpath \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/chosen/bootp-request \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/chosen/bootp-response \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/chosen/broadcast-ip \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/chosen/client-ip \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/chosen/client-name \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/chosen/domain-name \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/chosen/gateway-ip \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/chosen/name \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/chosen/netmask-ip \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/chosen/root-path \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/chosen/server-ip \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/chosen/tftp-file \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/chosen/vendor-options \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/ethernet/device_type \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/ethernet/local-mac-address \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/ethernet/mac-address \ - src/nm-initrd-generator/tests/sysfs-dt/firmware/devicetree/base/ethernet/name \ - src/nm-initrd-generator/tests/sysfs-dt-tftp/firmware/devicetree/base/chosen/bootpath \ - src/nm-initrd-generator/tests/sysfs-static/class/net/eth0/address \ - src/nm-initrd-generator/tests/sysfs-static/class/net/eth1/address \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet0/prefix-len \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet0/gateway \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet0/mac \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet0/vlan \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet0/primary-dns \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet0/origin \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet0/secondary-dns \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet0/ip-addr \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet0/subnet-mask \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet0/index \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/initiator/initiator-name \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/target0/target-name \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/target0/ip-addr \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/target0/index \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/target0/lun \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/target0/port \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet1/gateway \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet1/mac \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet1/vlan \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet1/primary-dns \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet1/origin \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet1/secondary-dns \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/ethernet1/index \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/target1/target-name \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/target1/ip-addr \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/target1/index \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/target1/lun \ - src/nm-initrd-generator/tests/sysfs-static/firmware/ibft/target1/port \ - src/nm-initrd-generator/tests/sysfs-vlan/class/net/eth0/address \ - src/nm-initrd-generator/tests/sysfs-vlan/firmware/ibft/ethernet0/prefix-len \ - src/nm-initrd-generator/tests/sysfs-vlan/firmware/ibft/ethernet0/mac \ - src/nm-initrd-generator/tests/sysfs-vlan/firmware/ibft/ethernet0/vlan \ - src/nm-initrd-generator/tests/sysfs-vlan/firmware/ibft/ethernet0/origin \ - src/nm-initrd-generator/tests/sysfs-vlan/firmware/ibft/ethernet0/ip-addr \ - src/nm-initrd-generator/tests/sysfs-vlan/firmware/ibft/ethernet0/subnet-mask \ - src/nm-initrd-generator/tests/sysfs-vlan/firmware/ibft/ethernet0/index \ - src/nm-initrd-generator/tests/sysfs-vlan/firmware/ibft/initiator/initiator-name \ - src/nm-initrd-generator/tests/sysfs-vlan/firmware/ibft/target0/target-name \ - src/nm-initrd-generator/tests/sysfs-vlan/firmware/ibft/target0/ip-addr \ - src/nm-initrd-generator/tests/sysfs-vlan/firmware/ibft/target0/index \ - src/nm-initrd-generator/tests/sysfs-vlan/firmware/ibft/target0/lun \ - src/nm-initrd-generator/tests/sysfs-vlan/firmware/ibft/target0/port \ - $(NULL) - -############################################################################### - -EXTRA_DIST += \ - src/core/org.freedesktop.NetworkManager.conf \ - src/core/nm-test-utils-core.h \ - src/core/meson.build - -############################################################################### -# src/core/dhcp -############################################################################### - -libexec_PROGRAMS += src/core/dhcp/nm-dhcp-helper - -src_core_dhcp_nm_dhcp_helper_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(GLIB_CFLAGS) \ - $(NULL) - -src_core_dhcp_nm_dhcp_helper_SOURCES = \ - src/core/dhcp/nm-dhcp-helper.c \ - src/core/dhcp/nm-dhcp-helper-api.h \ - $(NULL) - -src_core_dhcp_nm_dhcp_helper_LDFLAGS = \ - -Wl,--version-script="$(srcdir)/linker-script-binary.ver" - -src_core_dhcp_nm_dhcp_helper_LDADD = $(GLIB_LIBS) - -EXTRA_DIST += \ - src/core/dhcp/meson.build - -############################################################################### -# src/core/dhcp/tests -############################################################################### - -src_core_dhcp_tests_cppflags = $(src_core_cppflags_test) - -src_core_dhcp_tests_ldadd = \ - src/core/libNetworkManagerTest.la - -check_programs += \ - src/core/dhcp/tests/test-dhcp-dhclient \ - src/core/dhcp/tests/test-dhcp-utils - -src_core_dhcp_tests_test_dhcp_dhclient_CPPFLAGS = $(src_core_dhcp_tests_cppflags) -src_core_dhcp_tests_test_dhcp_utils_CPPFLAGS = $(src_core_dhcp_tests_cppflags) - -src_core_dhcp_tests_test_dhcp_dhclient_LDADD = $(src_core_dhcp_tests_ldadd) -src_core_dhcp_tests_test_dhcp_utils_LDADD = $(src_core_dhcp_tests_ldadd) - -src_core_dhcp_tests_test_dhcp_dhclient_LDFLAGS = $(src_core_tests_ldflags) -src_core_dhcp_tests_test_dhcp_utils_LDFLAGS = $(src_core_tests_ldflags) - -$(src_core_dhcp_tests_test_dhcp_dhclient_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_dhcp_tests_test_dhcp_utils_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += \ - src/core/dhcp/tests/test-dhclient-duid.leases \ - src/core/dhcp/tests/test-dhclient-commented-duid.leases \ - src/core/dhcp/tests/meson.build - -############################################################################### -# src/core/ppp -############################################################################### - -if WITH_PPP - -core_plugins += src/core/ppp/libnm-ppp-plugin.la - -pppd_plugin_LTLIBRARIES += src/core/ppp/nm-pppd-plugin.la - -src_core_ppp_nm_pppd_plugin_la_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-core-public \ - $(GLIB_CFLAGS) \ - $(PPPD_CFLAGS) \ - $(NULL) - -src_core_ppp_nm_pppd_plugin_la_SOURCES = \ - src/core/ppp/nm-pppd-compat.c \ - src/core/ppp/nm-pppd-compat.h \ - src/core/ppp/nm-pppd-plugin.c \ - src/core/ppp/nm-pppd-plugin.h \ - src/core/ppp/nm-ppp-status.h - -src_core_ppp_nm_pppd_plugin_la_LDFLAGS = \ - -module -avoid-version - -src_core_ppp_nm_pppd_plugin_la_LIBADD = \ - $(GLIB_LIBS) \ - $(DL_LIBS) \ - $(NULL) - -$(src_core_ppp_nm_pppd_plugin_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -src_core_ppp_libnm_ppp_plugin_la_SOURCES = \ - src/core/ppp/nm-pppd-plugin.h \ - src/core/ppp/nm-ppp-manager.c \ - src/core/ppp/nm-ppp-manager.h \ - src/core/ppp/nm-ppp-plugin-api.h \ - src/core/ppp/nm-ppp-status.h \ - $(NULL) - -EXTRA_src_core_ppp_libnm_ppp_plugin_la_DEPENDENCIES = \ - src/core/ppp/nm-ppp-plugin.ver \ - $(NULL) - -src_core_ppp_libnm_ppp_plugin_la_CPPFLAGS = $(src_core_cppflags_base) - -src_core_ppp_libnm_ppp_plugin_la_LDFLAGS = \ - -module -avoid-version \ - -Wl,--version-script="$(srcdir)/src/core/ppp/nm-ppp-plugin.ver" \ - $(NULL) - -src_core_ppp_libnm_ppp_plugin_la_LIBADD = \ - $(GLIB_LIBS) \ - $(NULL) - -$(src_core_ppp_libnm_ppp_plugin_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -check-local-ppp-plugin: src/core/NetworkManager src/core/ppp/libnm-ppp-plugin.la - $(srcdir)/tools/check-exports.sh $(builddir)/src/core/ppp/.libs/libnm-ppp-plugin.so "$(srcdir)/src/core/ppp/nm-ppp-plugin.ver" - $(call check_so_symbols,$(builddir)/src/core/ppp/.libs/libnm-ppp-plugin.so) - -check_local += check-local-ppp-plugin - -endif - -EXTRA_DIST += \ - src/core/ppp/meson.build - -############################################################################### -# src/core/settings/plugins/keyfile/tests -############################################################################### - -check_programs += src/core/settings/plugins/keyfile/tests/test-keyfile-settings - -src_core_settings_plugins_keyfile_tests_test_keyfile_settings_CPPFLAGS = $(src_core_cppflags_test) - -src_core_settings_plugins_keyfile_tests_test_keyfile_settings_LDFLAGS = \ - $(GLIB_LIBS) \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) - -src_core_settings_plugins_keyfile_tests_test_keyfile_settings_LDADD = \ - src/core/libNetworkManagerTest.la - -$(src_core_settings_plugins_keyfile_tests_test_keyfile_settings_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Wired_Connection \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_GSM_Connection \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Wireless_Connection \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Wired_Connection_MAC_Case \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_MAC_Old_Format \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_MAC_IB_Old_Format \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Wired_Connection_IP6 \ - src/core/settings/plugins/keyfile/tests/keyfiles/ATT_Data_Connect_BT \ - src/core/settings/plugins/keyfile/tests/keyfiles/ATT_Data_Connect_Plain \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_String_SSID \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Intlist_SSID \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Intlike_SSID \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Intlike_SSID_2 \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Wired_TLS_Old \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Wired_TLS_New \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Wired_TLS_Blob \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Wired_TLS_Path_Missing \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_InfiniBand_Connection \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Bridge_Main \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Bridge_Component \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_New_Wired_Group_Name \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_New_Wireless_Group_Names \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_minimal_1 \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_minimal_2 \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_minimal_port_1 \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_minimal_port_2 \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_minimal_port_3 \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_minimal_port_4 \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Missing_Vlan_Setting \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Missing_Vlan_Flags \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Missing_ID_UUID \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Enum_Property \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_Flags_Property \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_dcb_connection \ - src/core/settings/plugins/keyfile/tests/keyfiles/Test_TC_Config \ - \ - src/core/settings/plugins/keyfile/tests/keyfiles/test-ca-cert.pem \ - src/core/settings/plugins/keyfile/tests/keyfiles/test-key-and-cert.pem \ - \ - src/core/settings/plugins/keyfile/tests/meson.build - -############################################################################### -# src/core/settings/plugins/ifcfg-rh -############################################################################### - -if CONFIG_PLUGIN_IFCFG_RH - -core_plugins += src/core/settings/plugins/ifcfg-rh/libnm-settings-plugin-ifcfg-rh.la - -noinst_LTLIBRARIES += \ - src/core/settings/plugins/ifcfg-rh/libnmdbus-ifcfg-rh.la \ - src/core/settings/plugins/ifcfg-rh/libnms-ifcfg-rh-core.la - -############################################################################### - -nodist_src_core_settings_plugins_ifcfg_rh_libnmdbus_ifcfg_rh_la_SOURCES = \ - src/core/settings/plugins/ifcfg-rh/nmdbus-ifcfg-rh.c \ - src/core/settings/plugins/ifcfg-rh/nmdbus-ifcfg-rh.h - -src_core_settings_plugins_ifcfg_rh_libnmdbus_ifcfg_rh_la_CPPFLAGS = \ - $(filter-out -DGLIB_VERSION_MAX_ALLOWED%,$(src_core_cppflags_base)) \ - $(INTROSPECTION_EXTRA_CFLAGS) \ - $(NULL) - -CLEANFILES += $(nodist_src_core_settings_plugins_ifcfg_rh_libnmdbus_ifcfg_rh_la_SOURCES) - -src/core/settings/plugins/ifcfg-rh/nmdbus-ifcfg-rh.h: src/core/settings/plugins/ifcfg-rh/nm-ifcfg-rh.xml - @$(MKDIR_P) src/core/settings/plugins/ifcfg-rh/ - $(AM_V_GEN) gdbus-codegen \ - --generate-c-code $(basename $@) \ - --c-namespace NMDBus \ - --interface-prefix com.redhat \ - $< - -src/core/settings/plugins/ifcfg-rh/nmdbus-ifcfg-rh.c: src/core/settings/plugins/ifcfg-rh/nmdbus-ifcfg-rh.h - @true - -############################################################################### - -src_core_settings_plugins_ifcfg_rh_libnms_ifcfg_rh_core_la_SOURCES = \ - src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-common.h \ - src/core/settings/plugins/ifcfg-rh/shvar.c \ - src/core/settings/plugins/ifcfg-rh/shvar.h \ - src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-utils.c \ - src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-utils.h \ - src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c \ - src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.h \ - src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-writer.c \ - src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-writer.h \ - $(NULL) - -src_core_settings_plugins_ifcfg_rh_libnms_ifcfg_rh_core_la_CPPFLAGS = $(src_core_cppflags_base) - -$(src_core_settings_plugins_ifcfg_rh_libnms_ifcfg_rh_core_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -############################################################################### - -src_core_settings_plugins_ifcfg_rh_libnm_settings_plugin_ifcfg_rh_la_SOURCES = \ - src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-storage.c \ - src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-storage.h \ - src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-plugin.c \ - src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-plugin.h \ - $(NULL) - -src_core_settings_plugins_ifcfg_rh_libnm_settings_plugin_ifcfg_rh_la_CPPFLAGS = $(src_core_cppflags_base) - -src_core_settings_plugins_ifcfg_rh_libnm_settings_plugin_ifcfg_rh_la_LDFLAGS = \ - -module -avoid-version \ - -Wl,--version-script="$(srcdir)/linker-script-settings.ver" \ - $(SANITIZER_EXEC_LDFLAGS) - -src_core_settings_plugins_ifcfg_rh_libnm_settings_plugin_ifcfg_rh_la_LIBADD = \ - src/core/settings/plugins/ifcfg-rh/libnms-ifcfg-rh-core.la - -$(src_core_settings_plugins_ifcfg_rh_libnm_settings_plugin_ifcfg_rh_la_OBJECTS): src/core/settings/plugins/ifcfg-rh/nmdbus-ifcfg-rh.h -$(src_core_settings_plugins_ifcfg_rh_libnm_settings_plugin_ifcfg_rh_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -check-local-symbols-settings-ifcfg-rh: src/core/settings/plugins/ifcfg-rh/libnm-settings-plugin-ifcfg-rh.la - $(call check_so_symbols,$(builddir)/src/core/settings/plugins/ifcfg-rh/.libs/libnm-settings-plugin-ifcfg-rh.so) - -check_local += check-local-symbols-settings-ifcfg-rh - -############################################################################### -# src/core/settings/plugins/ifcfg-rh/tests -############################################################################### - -check_programs += src/core/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh - -src_core_settings_plugins_ifcfg_rh_tests_test_ifcfg_rh_SOURCES = \ - src/core/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c - -src_core_settings_plugins_ifcfg_rh_tests_test_ifcfg_rh_CPPFLAGS = $(src_core_cppflags_base_test) - -src_core_settings_plugins_ifcfg_rh_tests_test_ifcfg_rh_LDFLAGS = \ - $(GLIB_LIBS) \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) - -src_core_settings_plugins_ifcfg_rh_tests_test_ifcfg_rh_LDADD = \ - src/core/settings/plugins/ifcfg-rh/libnms-ifcfg-rh-core.la \ - src/core/libNetworkManagerTest.la - -$(src_core_settings_plugins_ifcfg_rh_tests_test_ifcfg_rh_OBJECTS): $(src_libnm_core_public_mkenums_h) - -dist_libexec_SCRIPTS += \ - src/core/settings/plugins/ifcfg-rh/nm-ifup \ - src/core/settings/plugins/ifcfg-rh/nm-ifdown - -install-data-hook-ifcfg-rh: - $(mkinstalldirs) -m 0755 $(DESTDIR)$(sysconfdir)/sysconfig/network-scripts - -install_data_hook += install-data-hook-ifcfg-rh - -endif - -EXTRA_DIST += \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-System_test-bridge-component-a.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-System_test-bridge-component-b.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-System_test-wired-802-1X-subj-matches.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_User_1.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_Bond_Main.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_Bridge_Component.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_Permissions.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_Proxy_Basic.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_Routing_Rules.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_Team_Infiniband_Port.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_Team_Port.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_VLAN_reorder_hdr.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_WiFi_AP_Mode.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_WiFi_Band_A.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_WiFi_Hidden.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_WiFi_MAC_always.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_WiFi_MAC_default.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_WiFi_MAC_missing.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_WiFi_MAC_never.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_Wifi_LEAP.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_Wifi_WEP_104_ASCII.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_Wired_Auto-Negotiate.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_Wired_Static_Routes.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_Wired_Wake-on-LAN.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Test_Write_Wired_match.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-Vlan_test-vlan-interface.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-dcb-test.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-netmask-1 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-netmask-1.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-random_wifi_connection.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-random_wifi_connection_2.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-team-port-enp31s0f1-142.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-bond-eth-type \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-bond-main \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-bond-mode-numeric \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-bond-port \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-bond-port-bond0 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-bond-port-ib \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-bridge-component \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-bridge-main \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-bridge-missing-stp \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-dcb \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-dcb-bad-booleans \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-dcb-bad-percent \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-dcb-bad-uints \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-dcb-default-app-priorities \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-dcb-pgpct-not-100 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-dcb-short-booleans \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-dcb-short-percent \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-dcb-short-uints \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-dns-options \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-fcoe-fabric \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-fcoe-vn2vn \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-ibft \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-infiniband0 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-infiniband1 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-infiniband2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-ip6-disabled.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-ipoib \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-link_local \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-minimal \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-misc-variables \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-nm-controlled \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-nm-controlled-unrecognized \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-noip \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-onboot-no \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-permissions \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-read-proxy-basic \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-sit-ignore \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-sriov \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-sriov-write.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-static-routes-legacy \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-static-routes-legacy.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-tc \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-tc-write-empty.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-tc-write.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-team-controller-1 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-team-controller-2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-team-controller-invalid \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-team-port-1 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-team-port-2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-team-port-empty-config \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-unrecognized \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-variables-corner-cases-1 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-vlan-flags-1 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-vlan-flags-2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-vlan-interface \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-vlan-only-device \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-vlan-only-vlanid \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-vlan-physdev \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-vlan-reorder-hdr-1 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-vlan-reorder-hdr-2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-vlan-trailing-spaces \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-vlan-vlanid-use \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-vlan-vlanid-use.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-band-a \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-band-a-channel-mismatch \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-band-bg-channel-mismatch \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-dynamic-wep-leap \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-hidden \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-leap \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-leap-agent \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-leap-always-ask \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-mac-random-always \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-mac-random-default \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-mac-random-missing \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-mac-random-never \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-open \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-open-auto \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-open-ssid-bad-hex \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-open-ssid-hex \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-open-ssid-long-hex \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-open-ssid-long-quoted \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-open-ssid-quoted \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-owe \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-sae \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wep \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wep-104-ascii \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wep-40-ascii \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wep-adhoc \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wep-agent-keys \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wep-eap-ttls-chap \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wep-no-keys \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wep-passphrase \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wpa-eap-suite-b-192-tls \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wpa-eap-tls \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wpa-eap-ttls-tls \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wpa-psk \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wpa-psk-2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wpa-psk-adhoc \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wpa-psk-hex \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wpa-psk-unquoted \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wifi-wpa-psk-unquoted2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-802-1X-subj-matches \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-802-1x-password-raw \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-802-1x-ttls-eapgtc \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-8021x-peap-mschapv2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-8021x-tls-agent \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-8021x-tls-always \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-8021x-tls-p12-no-client-cert \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-auto-negotiate-on \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-autoip \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-ctc-static \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-defroute-no \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-defroute-no-gatewaydev-yes \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-dhcp \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-dhcp-plus-ip \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-dhcp-send-hostname \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-dhcp6-only \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-dhcpv6-hostname-fallback \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-global-gateway \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-global-gateway-ignore \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-ipv4-manual-1 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-ipv4-manual-2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-ipv4-manual-3 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-ipv4-manual-4 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-ipv6-manual \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-ipv6-only \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-ipv6-only-1 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-never-default \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-obsolete-gateway-n \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-qeth-static \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-shared-plus-ip \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-static \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-static-bootproto \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-static-no-prefix-16 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-static-no-prefix-24 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-static-no-prefix-8 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-static-routes \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-static-routes-legacy \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-unknown-ethtool-opt \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-wired-wake-on-lan \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-write-unknown-1 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-write-unknown-1.expected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-write-unknown-2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-write-unknown-2.expected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-write-unknown-3 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-write-unknown-3.expected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-write-unknown-4 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test-write-unknown-4.expected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test_roundtrip_ethtool-1.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test_roundtrip_ethtool-2.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test_roundtrip_ethtool-3.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test_roundtrip_ethtool-4.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test_roundtrip_ethtool-5.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test_roundtrip_ethtool-6.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test_roundtrip_ethtool-7.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test_roundtrip_ethtool-8.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test_roundtrip_ethtool-9.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-test_write_wired_auto_negotiate_on.cexpected \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-dynamic-wep-leap \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-leap \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-sae \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-wep \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-wep-104-ascii \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-wep-40-ascii \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-wep-adhoc \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-wep-eap-ttls-chap \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-wep-passphrase \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-wpa-eap-tls \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-wpa-eap-ttls-tls \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-wpa-psk \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-wpa-psk-2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-wpa-psk-adhoc \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-wpa-psk-hex \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-wpa-psk-unquoted \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wifi-wpa-psk-unquoted2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wired-802-1x-password-raw \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/keys-test-wired-8021x-peap-mschapv2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/network-test-wired-defroute-no-gatewaydev-yes \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/network-test-wired-global-gateway \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/network-test-wired-global-gateway-ignore \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/network-test-wired-never-default \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/route-test-static-routes-legacy \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/route-test-wired-static-routes \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/route-test-wired-static-routes-legacy \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/route6-test-wired-ipv6-manual \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/test1_key_and_cert.pem \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/test_ca_cert.pem \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/test_client.p12 \ - $(NULL) - -# make target dependencies can't have colons in their names, which ends up -# meaning that we can't add the alias files to EXTRA_DIST. They are instead -# dist'ed via dist-hook-settings-ifcfg-rh below. -src_core_settings_plugins_ifcfg_rh_tests_network_scripts_alias_files = \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-aliasem0 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-aliasem0:1 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-aliasem0:2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-aliasem0:99 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-aliasem1 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-aliasem1:1 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-aliasem2 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-aliasem2:1 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-aliasem3 \ - src/core/settings/plugins/ifcfg-rh/tests/network-scripts/ifcfg-aliasem3:1 - -dist-hook-settings-ifcfg-rh-alias-files: - @for f in $(src_core_settings_plugins_ifcfg_rh_tests_network_scripts_alias_files); do \ - cp $(abs_srcdir)/$$f $(distdir)/src/core/settings/plugins/ifcfg-rh/tests/network-scripts/; \ - done - -dist_hook += dist-hook-settings-ifcfg-rh-alias-files - -############################################################################### - -if CONFIG_PLUGIN_IFCFG_RH -dbusservice_DATA += src/core/settings/plugins/ifcfg-rh/nm-ifcfg-rh.conf -endif - -EXTRA_DIST += \ - src/core/settings/plugins/ifcfg-rh/nm-ifcfg-rh.conf \ - src/core/settings/plugins/ifcfg-rh/nm-ifcfg-rh.xml \ - src/core/settings/plugins/ifcfg-rh/meson.build \ - src/core/settings/plugins/ifcfg-rh/tests/meson.build - -############################################################################### -# src/core/settings/plugins/ifupdown -############################################################################### - -if CONFIG_PLUGIN_IFUPDOWN - -core_plugins += src/core/settings/plugins/ifupdown/libnm-settings-plugin-ifupdown.la - -noinst_LTLIBRARIES += src/core/settings/plugins/ifupdown/libnms-ifupdown-core.la - -src_core_settings_plugins_ifupdown_libnms_ifupdown_core_la_SOURCES = \ - src/core/settings/plugins/ifupdown/nms-ifupdown-interface-parser.c \ - src/core/settings/plugins/ifupdown/nms-ifupdown-interface-parser.h \ - src/core/settings/plugins/ifupdown/nms-ifupdown-parser.c \ - src/core/settings/plugins/ifupdown/nms-ifupdown-parser.h \ - $(NULL) - -src_core_settings_plugins_ifupdown_libnms_ifupdown_core_la_CPPFLAGS = $(src_core_cppflags_base) - -src_core_settings_plugins_ifupdown_libnms_ifupdown_core_la_LIBADD = \ - $(LIBUDEV_LIBS) \ - $(NULL) - -src_core_settings_plugins_ifupdown_libnm_settings_plugin_ifupdown_la_SOURCES = \ - src/core/settings/plugins/ifupdown/nms-ifupdown-plugin.c \ - src/core/settings/plugins/ifupdown/nms-ifupdown-plugin.h \ - $(NULL) - -src_core_settings_plugins_ifupdown_libnm_settings_plugin_ifupdown_la_CPPFLAGS = $(src_core_cppflags_base) - -src_core_settings_plugins_ifupdown_libnm_settings_plugin_ifupdown_la_LDFLAGS = \ - -module -avoid-version \ - -Wl,--version-script="$(srcdir)/linker-script-settings.ver" \ - $(NULL) - -src_core_settings_plugins_ifupdown_libnm_settings_plugin_ifupdown_la_LIBADD = \ - src/core/settings/plugins/ifupdown/libnms-ifupdown-core.la \ - $(LIBUDEV_LIBS) \ - $(NULL) - -$(src_core_settings_plugins_ifupdown_libnm_settings_plugin_ifupdown_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_settings_plugins_ifupdown_libnms_ifupdown_core_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -check-local-symbols-settings-ifupdown: src/core/settings/plugins/ifupdown/libnm-settings-plugin-ifupdown.la - $(call check_so_symbols,$(builddir)/src/core/settings/plugins/ifupdown/.libs/libnm-settings-plugin-ifupdown.so) - -check_local += check-local-symbols-settings-ifupdown - -############################################################################### - -check_programs += src/core/settings/plugins/ifupdown/tests/test-ifupdown - -src_core_settings_plugins_ifupdown_tests_test_ifupdown_CPPFLAGS = $(src_core_cppflags_base_test) - -src_core_settings_plugins_ifupdown_tests_test_ifupdown_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) - -src_core_settings_plugins_ifupdown_tests_test_ifupdown_LDADD = \ - src/core/settings/plugins/ifupdown/libnms-ifupdown-core.la \ - src/core/libNetworkManagerTest.la \ - $(GLIB_LIBS) \ - $(NULL) - -$(src_core_settings_plugins_ifupdown_tests_test_ifupdown_OBJECTS): $(src_libnm_core_public_mkenums_h) - -endif - -EXTRA_DIST += \ - src/core/settings/plugins/ifupdown/tests/test1 \ - src/core/settings/plugins/ifupdown/tests/test2 \ - src/core/settings/plugins/ifupdown/tests/test3 \ - src/core/settings/plugins/ifupdown/tests/test4 \ - src/core/settings/plugins/ifupdown/tests/test5 \ - src/core/settings/plugins/ifupdown/tests/test6 \ - src/core/settings/plugins/ifupdown/tests/test7 \ - src/core/settings/plugins/ifupdown/tests/test8 \ - src/core/settings/plugins/ifupdown/tests/test9 \ - src/core/settings/plugins/ifupdown/tests/test11 \ - src/core/settings/plugins/ifupdown/tests/test12 \ - src/core/settings/plugins/ifupdown/tests/test13 \ - src/core/settings/plugins/ifupdown/tests/test14 \ - src/core/settings/plugins/ifupdown/tests/test15 \ - src/core/settings/plugins/ifupdown/tests/test16 \ - src/core/settings/plugins/ifupdown/tests/test17-wired-static-verify-ip4 \ - src/core/settings/plugins/ifupdown/tests/test18-wired-static-verify-ip6 \ - src/core/settings/plugins/ifupdown/tests/test19-wired-static-verify-ip4-plen \ - src/core/settings/plugins/ifupdown/tests/test20-source-stanza \ - src/core/settings/plugins/ifupdown/tests/test20-source-stanza.eth0 \ - src/core/settings/plugins/ifupdown/tests/test20-source-stanza.eth1 \ - src/core/settings/plugins/ifupdown/tests/test21-source-dir-stanza \ - src/core/settings/plugins/ifupdown/tests/test21-source-dir-stanza.d \ - src/core/settings/plugins/ifupdown/tests/test22-duplicate-stanzas \ - src/core/settings/plugins/ifupdown/meson.build \ - src/core/settings/plugins/ifupdown/tests/meson.build - -############################################################################### -# src/core/devices -############################################################################### - -EXTRA_DIST += \ - src/core/devices/meson.build - -############################################################################### -# src/core/devices/adsl -############################################################################### - -core_plugins += src/core/devices/adsl/libnm-device-plugin-adsl.la - -src_core_devices_adsl_libnm_device_plugin_adsl_la_SOURCES = \ - src/core/devices/adsl/nm-atm-manager.c \ - src/core/devices/adsl/nm-device-adsl.c \ - src/core/devices/adsl/nm-device-adsl.h - -src_core_devices_adsl_libnm_device_plugin_adsl_la_CPPFLAGS = $(src_core_cppflags_device_plugin) - -src_core_devices_adsl_libnm_device_plugin_adsl_la_LDFLAGS = \ - -module -avoid-version \ - -Wl,--version-script="$(srcdir)/linker-script-devices.ver" - -src_core_devices_adsl_libnm_device_plugin_adsl_la_LIBADD = \ - $(LIBUDEV_LIBS) - -check-local-devices-adsl: src/core/devices/adsl/libnm-device-plugin-adsl.la - $(srcdir)/tools/check-exports.sh $(builddir)/src/core/devices/adsl/.libs/libnm-device-plugin-adsl.so "$(srcdir)/linker-script-devices.ver" - $(call check_so_symbols,$(builddir)/src/core/devices/adsl/.libs/libnm-device-plugin-adsl.so) - -check_local += check-local-devices-adsl - -EXTRA_DIST += \ - src/core/devices/adsl/meson.build - -############################################################################### -# src/core/devices/wwan -############################################################################### - -if WITH_MODEM_MANAGER_1 - -src_core_devices_wwan_cppflags = \ - $(src_core_cppflags_device_plugin) \ - $(MM_GLIB_CFLAGS) \ - $(NULL) - -core_plugins += src/core/devices/wwan/libnm-wwan.la - -src_core_devices_wwan_libnm_wwan_la_SOURCES = \ - src/core/devices/wwan/nm-modem-broadband.c \ - src/core/devices/wwan/nm-modem-broadband.h \ - src/core/devices/wwan/nm-modem-manager.c \ - src/core/devices/wwan/nm-modem-manager.h \ - src/core/devices/wwan/nm-modem.c \ - src/core/devices/wwan/nm-modem.h \ - src/core/devices/wwan/nm-service-providers.c \ - src/core/devices/wwan/nm-service-providers.h \ - $(NULL) - -if WITH_OFONO -src_core_devices_wwan_libnm_wwan_la_SOURCES += \ - src/core/devices/wwan/nm-modem-ofono.c \ - src/core/devices/wwan/nm-modem-ofono.h -endif - -src_core_devices_wwan_libnm_wwan_la_CPPFLAGS = $(src_core_devices_wwan_cppflags) - -src_core_devices_wwan_libnm_wwan_la_LDFLAGS = \ - -avoid-version \ - -Wl,--version-script="$(srcdir)/src/core/devices/wwan/libnm-wwan.ver" - -src_core_devices_wwan_libnm_wwan_la_LIBADD = \ - $(GLIB_LIBS) \ - $(LIBSYSTEMD_LIBS) \ - $(MM_GLIB_LIBS) - -$(src_core_devices_wwan_libnm_wwan_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_src_core_devices_wwan_libnm_wwan_la_DEPENDENCIES = \ - src/core/devices/wwan/libnm-wwan.ver - -core_plugins += src/core/devices/wwan/libnm-device-plugin-wwan.la - -src_core_devices_wwan_libnm_device_plugin_wwan_la_SOURCES = \ - src/core/devices/wwan/nm-wwan-factory.c \ - src/core/devices/wwan/nm-device-modem.c \ - src/core/devices/wwan/nm-device-modem.h - -src_core_devices_wwan_libnm_device_plugin_wwan_la_CPPFLAGS = $(src_core_devices_wwan_cppflags) - -src_core_devices_wwan_libnm_device_plugin_wwan_la_LDFLAGS = \ - -module -avoid-version \ - -Wl,--version-script="$(srcdir)/linker-script-devices.ver" - -src_core_devices_wwan_libnm_device_plugin_wwan_la_LIBADD = \ - src/core/devices/wwan/libnm-wwan.la \ - $(GLIB_LIBS) - -check-local-devices-wwan: src/core/devices/wwan/libnm-device-plugin-wwan.la src/core/devices/wwan/libnm-wwan.la - $(srcdir)/tools/check-exports.sh $(builddir)/src/core/devices/wwan/.libs/libnm-device-plugin-wwan.so "$(srcdir)/linker-script-devices.ver" - $(call check_so_symbols,$(builddir)/src/core/devices/wwan/.libs/libnm-device-plugin-wwan.so) - $(srcdir)/tools/check-exports.sh $(builddir)/src/core/devices/wwan/.libs/libnm-wwan.so "$(srcdir)/src/core/devices/wwan/libnm-wwan.ver" - $(call check_so_symbols,$(builddir)/src/core/devices/wwan/.libs/libnm-wwan.so) - -check_local += check-local-devices-wwan - -src_core_devices_wwan_tests_test_service_providers_SOURCES = \ - src/core/devices/wwan/tests/test-service-providers.c \ - src/core/devices/wwan/nm-service-providers.c \ - src/core/devices/wwan/nm-service-providers.h \ - $(NULL) - -src_core_devices_wwan_tests_test_service_providers_CPPFLAGS = \ - $(src_core_cppflags_base_test) \ - -I$(srcdir)/src/core/devices/wwan \ - $(NULL) - -src_core_devices_wwan_tests_test_service_providers_LDFLAGS = \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_core_devices_wwan_tests_test_service_providers_LDADD = \ - src/core/libNetworkManagerTest.la \ - $(GLIB_LIBS) \ - $(NULL) - -check_programs += src/core/devices/wwan/tests/test-service-providers - -$(src_core_devices_wwan_tests_test_service_providers_OBJECTS): $(src_libnm_core_public_mkenums_h) - -endif - -EXTRA_DIST += \ - src/core/devices/wwan/libnm-wwan.ver \ - src/core/devices/wwan/meson.build \ - src/core/devices/wwan/tests/test-service-providers.xml \ - $(NULL) - -############################################################################### -# src/core/devices/bluetooth -############################################################################### - -if WITH_MODEM_MANAGER_1 - -noinst_LTLIBRARIES += src/core/devices/bluetooth/libnm-bluetooth-utils.la - -src_core_devices_bluetooth_libnm_bluetooth_utils_la_SOURCES = \ - src/core/devices/bluetooth/nm-bluez-common.h \ - src/core/devices/bluetooth/nm-bt-error.c \ - src/core/devices/bluetooth/nm-bt-error.h \ - $(NULL) - -src_core_devices_bluetooth_libnm_bluetooth_utils_la_CPPFLAGS = \ - $(src_core_cppflags_base) \ - $(NULL) - -src_core_devices_bluetooth_libnm_bluetooth_utils_la_LIBADD = \ - $(GLIB_LIBS) \ - $(NULL) - -if WITH_BLUEZ5_DUN -src_core_devices_bluetooth_libnm_bluetooth_utils_la_SOURCES += \ - src/core/devices/bluetooth/nm-bluez5-dun.c \ - src/core/devices/bluetooth/nm-bluez5-dun.h \ - $(NULL) - -src_core_devices_bluetooth_libnm_bluetooth_utils_la_CPPFLAGS += $(BLUEZ5_CFLAGS) -src_core_devices_bluetooth_libnm_bluetooth_utils_la_LIBADD += $(BLUEZ5_LIBS) -endif - -$(src_core_devices_bluetooth_libnm_bluetooth_utils_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -############################################################################### - -core_plugins += src/core/devices/bluetooth/libnm-device-plugin-bluetooth.la - -src_core_devices_bluetooth_libnm_device_plugin_bluetooth_la_SOURCES = \ - src/core/devices/bluetooth/nm-bluez-manager.c \ - src/core/devices/bluetooth/nm-bluez-manager.h \ - src/core/devices/bluetooth/nm-device-bt.c \ - src/core/devices/bluetooth/nm-device-bt.h \ - $(NULL) - -src_core_devices_bluetooth_libnm_device_plugin_bluetooth_la_CPPFLAGS = $(src_core_cppflags_device_plugin) - -src_core_devices_bluetooth_libnm_device_plugin_bluetooth_la_LDFLAGS = \ - -module -avoid-version \ - -Wl,--version-script="$(srcdir)/linker-script-devices.ver" - -src_core_devices_bluetooth_libnm_device_plugin_bluetooth_la_LIBADD = \ - src/core/devices/bluetooth/libnm-bluetooth-utils.la \ - src/core/devices/wwan/libnm-wwan.la \ - $(GLIB_LIBS) \ - $(NULL) - -############################################################################### - -check_programs_norun += \ - src/core/devices/bluetooth/tests/nm-bt-test - -src_core_devices_bluetooth_tests_nm_bt_test_CPPFLAGS = \ - $(src_core_cppflags_test) \ - $(NULL) - -src_core_devices_bluetooth_tests_nm_bt_test_LDFLAGS = \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_core_devices_bluetooth_tests_nm_bt_test_LDADD = \ - src/core/devices/bluetooth/libnm-bluetooth-utils.la \ - src/core/libNetworkManager.la \ - $(GLIB_LIBS) \ - $(NULL) - -$(src_core_devices_bluetooth_tests_nm_bt_test_OBJECTS): $(src_libnm_core_public_mkenums_h) - -############################################################################### - -check-local-devices-bluetooth: src/core/devices/bluetooth/libnm-device-plugin-bluetooth.la - $(srcdir)/tools/check-exports.sh $(builddir)/src/core/devices/bluetooth/.libs/libnm-device-plugin-bluetooth.so "$(srcdir)/linker-script-devices.ver" - $(call check_so_symbols,$(builddir)/src/core/devices/bluetooth/.libs/libnm-device-plugin-bluetooth.so) - -check_local += check-local-devices-bluetooth - -endif - -EXTRA_DIST += \ - src/core/devices/bluetooth/meson.build \ - $(NULL) - -############################################################################### -# src/core/devices/wifi -############################################################################### - -if WITH_WIFI - -noinst_LTLIBRARIES += src/core/devices/wifi/libnm-wifi-base.la - -src_core_devices_wifi_libnm_wifi_base_la_SOURCES = \ - src/core/devices/wifi/nm-device-olpc-mesh.c \ - src/core/devices/wifi/nm-device-olpc-mesh.h \ - src/core/devices/wifi/nm-device-wifi-p2p.c \ - src/core/devices/wifi/nm-device-wifi-p2p.h \ - src/core/devices/wifi/nm-device-wifi.c \ - src/core/devices/wifi/nm-device-wifi.h \ - src/core/devices/wifi/nm-wifi-ap.c \ - src/core/devices/wifi/nm-wifi-ap.h \ - src/core/devices/wifi/nm-wifi-common.c \ - src/core/devices/wifi/nm-wifi-common.h \ - src/core/devices/wifi/nm-wifi-p2p-peer.c \ - src/core/devices/wifi/nm-wifi-p2p-peer.h \ - src/core/devices/wifi/nm-wifi-utils.c \ - src/core/devices/wifi/nm-wifi-utils.h \ - $(NULL) - -if WITH_IWD -src_core_devices_wifi_libnm_wifi_base_la_SOURCES += \ - src/core/devices/wifi/nm-device-iwd.c \ - src/core/devices/wifi/nm-device-iwd.h \ - src/core/devices/wifi/nm-device-iwd-p2p.c \ - src/core/devices/wifi/nm-device-iwd-p2p.h \ - src/core/devices/wifi/nm-iwd-manager.c \ - src/core/devices/wifi/nm-iwd-manager.h \ - $(NULL) -endif - -src_core_devices_wifi_libnm_wifi_base_la_CPPFLAGS = $(src_core_cppflags_device_plugin) - -src_core_devices_wifi_libnm_wifi_base_la_LIBADD = \ - $(GLIB_LIBS) - -$(src_core_devices_wifi_libnm_wifi_base_la_OBJECTS): $(src_libnm_core_public_mkenums_h) - -core_plugins += src/core/devices/wifi/libnm-device-plugin-wifi.la - -src_core_devices_wifi_libnm_device_plugin_wifi_la_SOURCES = \ - src/core/devices/wifi/nm-wifi-factory.c \ - $(NULL) - -src_core_devices_wifi_libnm_device_plugin_wifi_la_CPPFLAGS = $(src_core_cppflags_device_plugin) - -src_core_devices_wifi_libnm_device_plugin_wifi_la_LDFLAGS = \ - -module -avoid-version \ - -Wl,--version-script="$(srcdir)/linker-script-devices.ver" - -src_core_devices_wifi_libnm_device_plugin_wifi_la_LIBADD = \ - src/core/devices/wifi/libnm-wifi-base.la \ - $(GLIB_LIBS) - -check-local-devices-wifi: src/core/devices/wifi/libnm-device-plugin-wifi.la - $(srcdir)/tools/check-exports.sh $(builddir)/src/core/devices/wifi/.libs/libnm-device-plugin-wifi.so "$(srcdir)/linker-script-devices.ver" - $(call check_so_symbols,$(builddir)/src/core/devices/wifi/.libs/libnm-device-plugin-wifi.so) - -check_local += check-local-devices-wifi - -check_programs += src/core/devices/wifi/tests/test-devices-wifi - -src_core_devices_wifi_tests_test_devices_wifi_SOURCES = \ - src/core/devices/wifi/tests/test-devices-wifi.c \ - $(NULL) - -src_core_devices_wifi_tests_test_devices_wifi_CPPFLAGS = $(src_core_cppflags_base_test) - -src_core_devices_wifi_tests_test_devices_wifi_LDADD = \ - src/core/devices/wifi/libnm-wifi-base.la \ - src/core/libNetworkManagerTest.la \ - src/core/libNetworkManagerBase.la \ - $(NULL) - -src_core_devices_wifi_tests_test_devices_wifi_LDFLAGS = $(SANITIZER_EXEC_LDFLAGS) - -$(src_core_devices_wifi_tests_test_devices_wifi_OBJECTS): $(src_libnm_core_public_mkenums_h) - -endif - -EXTRA_DIST += \ - src/core/devices/wifi/meson.build \ - $(NULL) - -############################################################################### -# src/core/devices/team -############################################################################### - -if WITH_TEAMDCTL - -core_plugins += src/core/devices/team/libnm-device-plugin-team.la - -src_core_devices_team_libnm_device_plugin_team_la_SOURCES = \ - src/core/devices/team/nm-team-factory.c \ - src/core/devices/team/nm-device-team.c \ - src/core/devices/team/nm-device-team.h \ - $(NULL) - -src_core_devices_team_libnm_device_plugin_team_la_CPPFLAGS = \ - $(src_core_cppflags_device_plugin) \ - $(LIBTEAMDCTL_CFLAGS) \ - $(JANSSON_CFLAGS) \ - $(NULL) - -src_core_devices_team_libnm_device_plugin_team_la_LDFLAGS = \ - -module -avoid-version \ - -Wl,--version-script="$(srcdir)/linker-script-devices.ver" \ - $(NULL) - -src_core_devices_team_libnm_device_plugin_team_la_LIBADD = \ - $(LIBTEAMDCTL_LIBS) \ - $(JANSSON_LIBS) \ - $(GLIB_LIBS) \ - $(NULL) - -check-local-devices-team: src/core/devices/team/libnm-device-plugin-team.la - $(srcdir)/tools/check-exports.sh $(builddir)/src/core/devices/team/.libs/libnm-device-plugin-team.so "$(srcdir)/linker-script-devices.ver" - $(call check_so_symbols,$(builddir)/src/core/devices/team/.libs/libnm-device-plugin-team.so) - -check_local += check-local-devices-team - -endif - -EXTRA_DIST += \ - src/core/devices/team/meson.build - -############################################################################### -# src/core/devices/ovs -############################################################################### - -if WITH_OPENVSWITCH - -if HAVE_SYSTEMD - -systemdnmunitdir = $(systemdsystemunitdir)/NetworkManager.service.d -systemdnmunit_DATA = \ - data/NetworkManager-ovs.conf - -endif - -core_plugins += src/core/devices/ovs/libnm-device-plugin-ovs.la - -src_core_devices_ovs_libnm_device_plugin_ovs_la_SOURCES = \ - src/core/devices/ovs/nm-ovsdb.c \ - src/core/devices/ovs/nm-ovsdb.h \ - src/core/devices/ovs/nm-ovs-factory.c \ - src/core/devices/ovs/nm-device-ovs-interface.c \ - src/core/devices/ovs/nm-device-ovs-interface.h \ - src/core/devices/ovs/nm-device-ovs-port.c \ - src/core/devices/ovs/nm-device-ovs-port.h \ - src/core/devices/ovs/nm-device-ovs-bridge.c \ - src/core/devices/ovs/nm-device-ovs-bridge.h \ - $(NULL) - -src_core_devices_ovs_libnm_device_plugin_ovs_la_CPPFLAGS = \ - $(src_core_cppflags_device_plugin) \ - $(JANSSON_CFLAGS) \ - $(NULL) - -src_core_devices_ovs_libnm_device_plugin_ovs_la_LDFLAGS = \ - -module -avoid-version \ - -Wl,--version-script="$(srcdir)/linker-script-devices.ver" \ - $(NULL) - -src_core_devices_ovs_libnm_device_plugin_ovs_la_LIBADD = \ - $(JANSSON_LIBS) \ - $(GLIB_LIBS) \ - $(NULL) - -check-local-devices-ovs: src/core/devices/ovs/libnm-device-plugin-ovs.la - $(srcdir)/tools/check-exports.sh $(builddir)/src/core/devices/ovs/.libs/libnm-device-plugin-ovs.so "$(srcdir)/linker-script-devices.ver" - $(call check_so_symbols,$(builddir)/src/core/devices/ovs/.libs/libnm-device-plugin-ovs.so) - -check_local += check-local-devices-ovs - -endif - -EXTRA_DIST += \ - data/NetworkManager-ovs.conf \ - src/core/devices/ovs/meson.build - -############################################################################### -# src/core/dnsmasq/tests -############################################################################### - -check_programs += src/core/dnsmasq/tests/test-dnsmasq-utils - -src_core_dnsmasq_tests_test_dnsmasq_utils_CPPFLAGS = $(src_core_cppflags_test) - -src_core_dnsmasq_tests_test_dnsmasq_utils_LDADD = \ - src/core/libNetworkManagerTest.la - -src_core_dnsmasq_tests_test_dnsmasq_utils_LDFLAGS = \ - $(SANITIZER_EXEC_LDFLAGS) - -$(src_core_dnsmasq_tests_test_dnsmasq_utils_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += \ - src/core/dnsmasq/tests/meson.build - -############################################################################### -# src/core/platform/tests -############################################################################### - -src_core_platform_tests_ldflags = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) - -src_core_platform_tests_libadd = \ - src/core/libNetworkManagerTest.la \ - $(GLIB_LIBS) \ - $(LIBUDEV_LIBS) - -check_programs_norun += \ - src/core/platform/tests/monitor - -check_programs += \ - src/core/platform/tests/test-address-fake \ - src/core/platform/tests/test-address-linux \ - src/core/platform/tests/test-cleanup-fake \ - src/core/platform/tests/test-cleanup-linux \ - src/core/platform/tests/test-link-fake \ - src/core/platform/tests/test-link-linux \ - src/core/platform/tests/test-nmp-object \ - src/core/platform/tests/test-platform-general \ - src/core/platform/tests/test-route-fake \ - src/core/platform/tests/test-route-linux \ - src/core/platform/tests/test-tc-linux \ - $(NULL) - -src_core_platform_tests_monitor_CPPFLAGS = $(src_core_cppflags_test) -src_core_platform_tests_monitor_LDFLAGS = $(src_core_platform_tests_ldflags) -src_core_platform_tests_monitor_LDADD = $(src_core_platform_tests_libadd) - -src_core_platform_tests_test_address_fake_SOURCES = src/core/platform/tests/test-address.c -src_core_platform_tests_test_address_fake_CPPFLAGS = $(src_core_tests_cppflags_fake) -src_core_platform_tests_test_address_fake_LDFLAGS = $(src_core_platform_tests_ldflags) -src_core_platform_tests_test_address_fake_LDADD = $(src_core_platform_tests_libadd) - -src_core_platform_tests_test_address_linux_SOURCES = src/core/platform/tests/test-address.c -src_core_platform_tests_test_address_linux_CPPFLAGS = $(src_core_tests_cppflags_linux) -src_core_platform_tests_test_address_linux_LDFLAGS = $(src_core_platform_tests_ldflags) -src_core_platform_tests_test_address_linux_LDADD = $(src_core_platform_tests_libadd) - -src_core_platform_tests_test_cleanup_fake_SOURCES = src/core/platform/tests/test-cleanup.c -src_core_platform_tests_test_cleanup_fake_CPPFLAGS = $(src_core_tests_cppflags_fake) -src_core_platform_tests_test_cleanup_fake_LDFLAGS = $(src_core_platform_tests_ldflags) -src_core_platform_tests_test_cleanup_fake_LDADD = $(src_core_platform_tests_libadd) - -src_core_platform_tests_test_cleanup_linux_SOURCES = src/core/platform/tests/test-cleanup.c -src_core_platform_tests_test_cleanup_linux_CPPFLAGS = $(src_core_tests_cppflags_linux) -src_core_platform_tests_test_cleanup_linux_LDFLAGS = $(src_core_platform_tests_ldflags) -src_core_platform_tests_test_cleanup_linux_LDADD = $(src_core_platform_tests_libadd) - -src_core_platform_tests_test_link_fake_SOURCES = src/core/platform/tests/test-link.c -src_core_platform_tests_test_link_fake_CPPFLAGS = $(src_core_tests_cppflags_fake) -src_core_platform_tests_test_link_fake_LDFLAGS = $(src_core_platform_tests_ldflags) -src_core_platform_tests_test_link_fake_LDADD = $(src_core_platform_tests_libadd) - -src_core_platform_tests_test_link_linux_SOURCES = src/core/platform/tests/test-link.c -src_core_platform_tests_test_link_linux_CPPFLAGS = $(src_core_tests_cppflags_linux) -src_core_platform_tests_test_link_linux_LDFLAGS = $(src_core_platform_tests_ldflags) -src_core_platform_tests_test_link_linux_LDADD = $(src_core_platform_tests_libadd) - -src_core_platform_tests_test_nmp_object_CPPFLAGS = $(src_core_cppflags_test) -src_core_platform_tests_test_nmp_object_LDFLAGS = $(src_core_platform_tests_ldflags) -src_core_platform_tests_test_nmp_object_LDADD = src/core/libNetworkManagerTest.la - -src_core_platform_tests_test_platform_general_CPPFLAGS = $(src_core_cppflags_test) -src_core_platform_tests_test_platform_general_LDFLAGS = $(src_core_platform_tests_ldflags) -src_core_platform_tests_test_platform_general_LDADD = src/core/libNetworkManagerTest.la - -src_core_platform_tests_test_route_fake_SOURCES = src/core/platform/tests/test-route.c -src_core_platform_tests_test_route_fake_CPPFLAGS = $(src_core_tests_cppflags_fake) -src_core_platform_tests_test_route_fake_LDFLAGS = $(src_core_platform_tests_ldflags) -src_core_platform_tests_test_route_fake_LDADD = $(src_core_platform_tests_libadd) - -src_core_platform_tests_test_route_linux_SOURCES = src/core/platform/tests/test-route.c -src_core_platform_tests_test_route_linux_CPPFLAGS = $(src_core_tests_cppflags_linux) -src_core_platform_tests_test_route_linux_LDFLAGS = $(src_core_platform_tests_ldflags) -src_core_platform_tests_test_route_linux_LDADD = $(src_core_platform_tests_libadd) - -src_core_platform_tests_test_tc_linux_SOURCES = src/core/platform/tests/test-tc.c -src_core_platform_tests_test_tc_linux_CPPFLAGS = $(src_core_tests_cppflags_linux) -src_core_platform_tests_test_tc_linux_LDFLAGS = $(src_core_platform_tests_ldflags) -src_core_platform_tests_test_tc_linux_LDADD = $(src_core_platform_tests_libadd) - - -$(src_core_platform_tests_monitor_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_platform_tests_test_address_fake_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_platform_tests_test_address_linux_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_platform_tests_test_cleanup_fake_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_platform_tests_test_cleanup_linux_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_platform_tests_test_link_fake_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_platform_tests_test_link_linux_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_platform_tests_test_nmp_object_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_platform_tests_test_platform_general_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_platform_tests_test_route_fake_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_platform_tests_test_route_linux_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_platform_tests_test_tc_fake_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_platform_tests_test_tc_linux_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += \ - src/core/platform/tests/meson.build \ - $(NULL) - -############################################################################### -# src/core/devices/tests -############################################################################### - -src_core_devices_tests_ldflags = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) - -check_programs += \ - src/core/devices/tests/test-lldp \ - $(NULL) - -src_core_devices_tests_test_lldp_CPPFLAGS = $(src_core_cppflags_test) -src_core_devices_tests_test_lldp_LDFLAGS = $(src_core_devices_tests_ldflags) -src_core_devices_tests_test_lldp_LDADD = \ - src/core/libNetworkManagerTest.la - -$(src_core_devices_tests_test_lldp_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += \ - src/core/devices/tests/meson.build - -############################################################################### -# src/core/ndisc/tests -############################################################################### - -src_core_ndisc_tests_ldflags = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) - -src_core_ndisc_tests_ldadd = \ - src/core/libNetworkManagerTest.la \ - $(GLIB_LIBS) - -check_programs += src/core/ndisc/tests/test-ndisc-fake -check_programs_norun += src/core/ndisc/tests/test-ndisc-linux - -src_core_ndisc_tests_test_ndisc_linux_CPPFLAGS = $(src_core_cppflags_test) -src_core_ndisc_tests_test_ndisc_linux_LDFLAGS = $(src_core_ndisc_tests_ldflags) -src_core_ndisc_tests_test_ndisc_linux_LDADD = $(src_core_ndisc_tests_ldadd) - -src_core_ndisc_tests_test_ndisc_fake_CPPFLAGS = $(src_core_cppflags_test) -src_core_ndisc_tests_test_ndisc_fake_LDFLAGS = $(src_core_ndisc_tests_ldflags) -src_core_ndisc_tests_test_ndisc_fake_LDADD = $(src_core_ndisc_tests_ldadd) - -$(src_core_ndisc_tests_test_ndisc_linux_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_ndisc_tests_test_ndisc_fake_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += \ - src/core/ndisc/tests/meson.build - -############################################################################### -# src/core/supplicant/tests -############################################################################### - -check_programs += src/core/supplicant/tests/test-supplicant-config - -src_core_supplicant_tests_test_supplicant_config_CPPFLAGS = $(src_core_cppflags_test) - -src_core_supplicant_tests_test_supplicant_config_LDADD = \ - src/core/libNetworkManagerTest.la - -src_core_supplicant_tests_test_supplicant_config_LDFLAGS = \ - $(SANITIZER_EXEC_LDFLAGS) - -$(src_core_supplicant_tests_test_supplicant_config_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += \ - src/core/supplicant/tests/certs/test-ca-cert.pem \ - src/core/supplicant/tests/certs/test-cert.p12 \ - src/core/supplicant/tests/meson.build - -############################################################################### -# src/core/tests/config -############################################################################### - -check_programs += src/core/tests/config/test-config - -src_core_tests_config_test_config_SOURCES = \ - src/core/tests/config/nm-test-device.c \ - src/core/tests/config/nm-test-device.h \ - src/core/tests/config/test-config.c - -src_core_tests_config_test_config_CPPFLAGS = $(src_core_cppflags_test) - -src_core_tests_config_test_config_LDADD = \ - src/core/libNetworkManagerTest.la - -src_core_tests_config_test_config_LDFLAGS = \ - $(SANITIZER_EXEC_LDFLAGS) - -$(src_core_tests_config_test_config_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += \ - src/core/tests/config/NetworkManager.conf \ - src/core/tests/config/NetworkManager-warn.conf \ - src/core/tests/config/NetworkManager.state \ - src/core/tests/config/bad.conf \ - src/core/tests/config/global-dns-good.conf \ - src/core/tests/config/global-dns-invalid.conf \ - src/core/tests/config/global-dns-options.conf \ - src/core/tests/config/conf.d/00-overrides.conf \ - src/core/tests/config/conf.d/10-more.conf \ - src/core/tests/config/conf.d/20-config-enable-1.conf \ - src/core/tests/config/conf.d/90-last.conf \ - src/core/tests/config/meson.build - -############################################################################### -# src/core/tests -############################################################################### - -src_core_tests_ldflags = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) - -src_core_tests_ldadd = \ - src/core/libNetworkManagerTest.la - -check_programs += \ - src/core/tests/test-core \ - src/core/tests/test-core-with-expect \ - src/core/tests/test-dcb \ - src/core/tests/test-l3cfg \ - src/core/tests/test-systemd \ - src/core/tests/test-utils \ - src/core/tests/test-wired-defname \ - $(NULL) - -src_core_tests_test_dcb_CPPFLAGS = $(src_core_cppflags_test) -src_core_tests_test_dcb_LDFLAGS = $(src_core_tests_ldflags) -src_core_tests_test_dcb_LDADD = $(src_core_tests_ldadd) - -src_core_tests_test_core_CPPFLAGS = $(src_core_cppflags_test) -src_core_tests_test_core_LDFLAGS = $(src_core_tests_ldflags) -src_core_tests_test_core_LDADD = $(src_core_tests_ldadd) - -src_core_tests_test_core_with_expect_CPPFLAGS = $(src_core_cppflags_test) -src_core_tests_test_core_with_expect_LDFLAGS = $(src_core_tests_ldflags) -src_core_tests_test_core_with_expect_LDADD = $(src_core_tests_ldadd) - -src_core_tests_test_wired_defname_CPPFLAGS = $(src_core_cppflags_test) -src_core_tests_test_wired_defname_LDFLAGS = $(src_core_tests_ldflags) -src_core_tests_test_wired_defname_LDADD = $(src_core_tests_ldadd) - -src_core_tests_test_utils_CPPFLAGS = $(src_core_cppflags_test) -src_core_tests_test_utils_LDFLAGS = $(src_core_tests_ldflags) -src_core_tests_test_utils_LDADD = $(src_core_tests_ldadd) - -src_core_tests_test_l3cfg_CPPFLAGS = $(src_core_cppflags_test) -src_core_tests_test_l3cfg_LDFLAGS = $(src_core_devices_tests_ldflags) -src_core_tests_test_l3cfg_LDADD = $(src_core_tests_ldadd) - -$(src_core_tests_test_core_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_tests_test_core_with_expect_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_tests_test_dcb_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_tests_test_l3cfg_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_tests_test_utils_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_core_tests_test_wired_defname_OBJECTS): $(src_libnm_core_public_mkenums_h) - -src_core_tests_test_systemd_CPPFLAGS = \ - $(src_libnm_systemd_core_libnm_systemd_core_la_cppflags) \ - $(NULL) - -src_core_tests_test_systemd_LDFLAGS = \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_core_tests_test_systemd_LDADD = \ - src/libnm-systemd-core/libnm-systemd-core.la \ - src/libnm-systemd-shared/libnm-systemd-shared.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - $(GLIB_LIBS) \ - $(CODE_COVERAGE_LDFLAGS) \ - $(NULL) - -$(src_core_tests_test_systemd_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += \ - src/core/tests/test-secret-agent.py \ - src/core/tests/meson.build - -############################################################################### -# src/nm-dispatcher -############################################################################### - -dispatcher_nmdbus_dispatcher_sources = \ - src/nm-dispatcher/nmdbus-dispatcher.h \ - src/nm-dispatcher/nmdbus-dispatcher.c \ - $(NULL) - -src/nm-dispatcher/nmdbus-dispatcher.h: src/nm-dispatcher/nm-dispatcher.xml - @$(MKDIR_P) src/nm-dispatcher/ - $(AM_V_GEN) gdbus-codegen \ - --generate-c-code $(basename $@) \ - --c-namespace NMDBus \ - --interface-prefix org.freedesktop \ - $< - -src/nm-dispatcher/nmdbus-dispatcher.c: src/nm-dispatcher/nmdbus-dispatcher.h - -CLEANFILES += $(dispatcher_nmdbus_dispatcher_sources) - -############################################################################### - -libexec_PROGRAMS += src/nm-dispatcher/nm-dispatcher - -noinst_LTLIBRARIES += src/nm-dispatcher/libnm-dispatcher-core.la - -dispatcher_cppflags = \ - $(dflt_cppflags) \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-core-public \ - -I$(builddir)/src/libnm-client-public \ - -I$(srcdir)/src/libnm-client-public \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(GLIB_CFLAGS) \ - $(NULL) - -src_nm_dispatcher_libnm_dispatcher_core_la_SOURCES = \ - src/nm-dispatcher/nm-dispatcher-utils.c \ - src/nm-dispatcher/nm-dispatcher-utils.h \ - $(NULL) - -src_nm_dispatcher_libnm_dispatcher_core_la_CPPFLAGS = $(dispatcher_cppflags) - -src_nm_dispatcher_libnm_dispatcher_core_la_LIBADD = \ - src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) - -src_nm_dispatcher_nm_dispatcher_SOURCES = \ - src/nm-dispatcher/nm-dispatcher.c \ - $(NULL) - -src_nm_dispatcher_nm_dispatcher_CPPFLAGS = $(dispatcher_cppflags) - -src_nm_dispatcher_nm_dispatcher_LDFLAGS = \ - -Wl,--version-script="$(srcdir)/linker-script-binary.ver" \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_nm_dispatcher_nm_dispatcher_LDADD = \ - src/nm-dispatcher/libnm-dispatcher-core.la \ - src/libnm-client-impl/libnm.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - $(GLIB_LIBS) \ - $(NULL) - -src/nm-dispatcher/org.freedesktop.nm_dispatcher.service: $(srcdir)/src/nm-dispatcher/org.freedesktop.nm_dispatcher.service.in - @sed \ - -e 's|@sbindir[@]|$(sbindir)|g' \ - -e 's|@sysconfdir[@]|$(sysconfdir)|g' \ - -e 's|@localstatedir[@]|$(localstatedir)|g' \ - -e 's|@libexecdir[@]|$(libexecdir)|g' \ - $< >$@ - -dbusactivation_DATA += src/nm-dispatcher/org.freedesktop.nm_dispatcher.service -CLEANFILES += src/nm-dispatcher/org.freedesktop.nm_dispatcher.service - -install-data-hook-dispatcher: - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmconfdir)/dispatcher.d - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmconfdir)/dispatcher.d/pre-down.d - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmconfdir)/dispatcher.d/pre-up.d - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmconfdir)/dispatcher.d/no-wait.d - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmlibdir)/dispatcher.d - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmlibdir)/dispatcher.d/pre-down.d - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmlibdir)/dispatcher.d/pre-up.d - $(mkinstalldirs) -m 0755 $(DESTDIR)$(nmlibdir)/dispatcher.d/no-wait.d - -install_data_hook += install-data-hook-dispatcher - -dbusservice_DATA += src/nm-dispatcher/nm-dispatcher.conf - -EXTRA_DIST += \ - src/nm-dispatcher/nm-dispatcher.conf \ - src/nm-dispatcher/org.freedesktop.nm_dispatcher.service.in \ - src/nm-dispatcher/nm-dispatcher.xml \ - src/nm-dispatcher/meson.build \ - $(NULL) - -############################################################################### -# src/nm-dispatcher/tests -############################################################################### - -check_programs += src/nm-dispatcher/tests/test-dispatcher-envp - -src_nm_dispatcher_tests_test_dispatcher_envp_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-client-public \ - -I$(builddir)/src/libnm-client-public \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(GLIB_CFLAGS) \ - $(SANITIZER_EXEC_CFLAGS) \ - $(INTROSPECTION_EXTRA_CFLAGS) \ - $(NULL) - -src_nm_dispatcher_tests_test_dispatcher_envp_SOURCES = \ - src/nm-dispatcher/tests/test-dispatcher-envp.c \ - $(NULL) - -nodist_src_nm_dispatcher_tests_test_dispatcher_envp_SOURCES = $(dispatcher_nmdbus_dispatcher_sources) - -$(src_nm_dispatcher_tests_test_dispatcher_envp_OBJECTS): $(dispatcher_nmdbus_dispatcher_sources) -$(src_nm_dispatcher_tests_test_dispatcher_envp_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_nm_dispatcher_tests_test_dispatcher_envp_OBJECTS): $(src_libnm_client_public_mkenums_h) - -src_nm_dispatcher_tests_test_dispatcher_envp_LDFLAGS = \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_nm_dispatcher_tests_test_dispatcher_envp_LDADD = \ - src/nm-dispatcher/libnm-dispatcher-core.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) \ - $(NULL) - -$(src_nm_dispatcher_tests_test_dispatcher_envp_OBJECTS): $(src_libnm_core_public_mkenums_h) - -EXTRA_DIST += \ - src/nm-dispatcher/tests/dispatcher-connectivity-full \ - src/nm-dispatcher/tests/dispatcher-connectivity-unknown \ - src/nm-dispatcher/tests/dispatcher-down \ - src/nm-dispatcher/tests/dispatcher-external \ - src/nm-dispatcher/tests/dispatcher-up \ - src/nm-dispatcher/tests/dispatcher-vpn-down \ - src/nm-dispatcher/tests/dispatcher-vpn-up \ - src/nm-dispatcher/tests/meson.build \ - $(NULL) - -############################################################################### -# src/nm-priv-helper -############################################################################### - -libexec_PROGRAMS += src/nm-priv-helper/nm-priv-helper - -src_nm_priv_helper_nm_priv_helper_SOURCES = \ - src/nm-priv-helper/nm-priv-helper.c \ - $(NULL) - -src_nm_priv_helper_nm_priv_helper_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-core-public \ - -I$(builddir)/src/libnm-client-public \ - -I$(srcdir)/src/libnm-client-public \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(GLIB_CFLAGS) \ - $(NULL) - -src_nm_priv_helper_nm_priv_helper_LDFLAGS = \ - -Wl,--version-script="$(srcdir)/linker-script-binary.ver" \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_nm_priv_helper_nm_priv_helper_LDADD = \ - src/libnm-base/libnm-base.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - $(GLIB_LIBS) \ - $(NULL) - -src/nm-priv-helper/org.freedesktop.nm_priv_helper.service: $(srcdir)/src/nm-priv-helper/org.freedesktop.nm_priv_helper.service.in - @sed \ - -e 's|@libexecdir[@]|$(libexecdir)|g' \ - $< >$@ - -dbusactivation_DATA += src/nm-priv-helper/org.freedesktop.nm_priv_helper.service -CLEANFILES += src/nm-priv-helper/org.freedesktop.nm_priv_helper.service - -dbusservice_DATA += src/nm-priv-helper/nm-priv-helper.conf - -EXTRA_DIST += \ - src/nm-priv-helper/nm-priv-helper.conf \ - src/nm-priv-helper/org.freedesktop.nm_priv_helper.service.in \ - src/nm-priv-helper/meson.build \ - $(NULL) - -############################################################################### -# src/nm-daemon-helper -############################################################################### - -libexec_PROGRAMS += src/nm-daemon-helper/nm-daemon-helper - -src_nm_daemon_helper_nm_daemon_helper_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - $(NULL) - -src_nm_daemon_helper_nm_daemon_helper_LDFLAGS = \ - -Wl,--version-script="$(srcdir)/linker-script-binary.ver" \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_nm_daemon_helper_nm_daemon_helper_LDADD = \ - src/libnm-std-aux/libnm-std-aux.la \ - $(NULL) - -EXTRA_DIST += \ - src/nm-daemon-helper/meson.build \ - $(NULL) - -############################################################################### -# src/nm-online -############################################################################### - -bin_PROGRAMS += src/nm-online/nm-online - -src_nm_online_nm_online_CPPFLAGS = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-client-public \ - -I$(builddir)/src/libnm-client-public \ - $(GLIB_CFLAGS) \ - $(NULL) - -src_nm_online_nm_online_LDFLAGS = \ - -Wl,--version-script="$(srcdir)/linker-script-binary.ver" \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_nm_online_nm_online_LDADD = \ - src/libnm-client-impl/libnm.la \ - src/libnm-client-aux-extern/libnm-client-aux-extern.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - $(GLIB_LIBS) \ - $(NULL) - -$(src_nm_online_nm_online_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_nm_online_nm_online_OBJECTS): $(src_libnm_client_public_mkenums_h) - -EXTRA_DIST += src/nm-online/meson.build - -############################################################################### -# src/libnmc-base -############################################################################### - -clients_cppflags = \ - $(dflt_cppflags) \ - -I$(srcdir)/src \ - -I$(builddir)/src \ - -I$(srcdir)/src/libnm-core-public \ - -I$(builddir)/src/libnm-core-public \ - -I$(srcdir)/src/libnm-client-public \ - -I$(builddir)/src/libnm-client-public \ - $(GLIB_CFLAGS) \ - $(SANITIZER_EXEC_CFLAGS) \ - $(NULL) - -check_ltlibraries += src/libnmc-base/libnmc-base.la - -src_libnmc_base_libnmc_base_la_SOURCES = \ - src/libnmc-base/nm-client-utils.c \ - src/libnmc-base/nm-client-utils.h \ - src/libnmc-base/nm-polkit-listener.c \ - src/libnmc-base/nm-polkit-listener.h \ - src/libnmc-base/nm-secret-agent-simple.c \ - src/libnmc-base/nm-secret-agent-simple.h \ - src/libnmc-base/nm-vpn-helpers.c \ - src/libnmc-base/nm-vpn-helpers.h \ - $(NULL) - -EXTRA_DIST += \ - src/libnmc-base/qrcodegen.c \ - src/libnmc-base/qrcodegen.h \ - $(NULL) - -src_libnmc_base_libnmc_base_la_CPPFLAGS = \ - $(clients_cppflags) \ - $(NULL) - -src_libnmc_base_libnmc_base_la_LIBADD = \ - src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) \ - $(NULL) - -$(src_libnmc_base_libnmc_base_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_libnmc_base_libnmc_base_la_OBJECTS): $(src_libnm_client_public_mkenums_h) - -EXTRA_DIST += src/libnmc-base/meson.build - -############################################################################### -# src/libnmc-setting -############################################################################### - -libnmc_setting_settings_doc_h = src/libnmc-setting/settings-docs.h -if BUILD_DOCS -$(libnmc_setting_settings_doc_h): src/libnmc-setting/settings-docs-input.xml src/libnmc-setting/.dirstamp tools/generate-docs-settings-docs.py - $(AM_V_GEN) "$(PYTHON)" $(srcdir)/tools/generate-docs-settings-docs.py --output $@ --xml $< -DISTCLEANFILES += $(libnmc_setting_settings_doc_h) -check-local-settings-docs: $(libnmc_setting_settings_doc_h) - $(srcdir)/tools/check-compare-generated.sh "$(srcdir)/$(libnmc_setting_settings_doc_h).in" "$(builddir)/$(libnmc_setting_settings_doc_h)" -check_local += check-local-settings-docs -else -$(libnmc_setting_settings_doc_h): $(libnmc_setting_settings_doc_h).in src/libnmc-setting/.dirstamp - $(AM_V_GEN) cp "$(srcdir)/$(libnmc_setting_settings_doc_h).in" "$(builddir)/$(libnmc_setting_settings_doc_h)" -check-local-settings-docs: -endif -EXTRA_DIST += \ - tools/generate-docs-settings-docs.py \ - $(libnmc_setting_settings_doc_h) \ - $(libnmc_setting_settings_doc_h).in - -check_ltlibraries += src/libnmc-setting/libnmc-setting.la - -src_libnmc_setting_libnmc_setting_la_SOURCES = \ - src/libnmc-setting/nm-meta-setting-access.c \ - src/libnmc-setting/nm-meta-setting-access.h \ - src/libnmc-setting/nm-meta-setting-base-impl.c \ - src/libnmc-setting/nm-meta-setting-base-impl.h \ - src/libnmc-setting/nm-meta-setting-base.h \ - src/libnmc-setting/nm-meta-setting-desc.c \ - src/libnmc-setting/nm-meta-setting-desc.h \ - $(NULL) - -src_libnmc_setting_libnmc_setting_la_CPPFLAGS = \ - $(clients_cppflags) \ - $(NULL) - -src_libnmc_setting_libnmc_setting_la_LIBADD = \ - src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) \ - $(NULL) - -$(src_libnmc_setting_libnmc_setting_la_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_libnmc_setting_libnmc_setting_la_OBJECTS): $(src_libnm_client_public_mkenums_h) -$(src_libnmc_setting_libnmc_setting_la_OBJECTS): $(libnmc_setting_settings_doc_h) -$(src_libnmc_setting_libnmc_setting_la_OBJECTS): src/libnmc-setting/.dirstamp - -############################################################################### - -check_programs += src/libnmc-setting/tests/test-libnmc-setting - -src_libnmc_setting_tests_test_libnmc_setting_CPPFLAGS = \ - $(clients_cppflags) \ - $(NULL) - -src_libnmc_setting_tests_test_libnmc_setting_LDFLAGS = \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_libnmc_setting_tests_test_libnmc_setting_LDADD = \ - src/libnmc-setting/libnmc-setting.la \ - src/libnmc-base/libnmc-base.la \ - src/libnm-core-aux-extern/libnm-core-aux-extern.la \ - src/libnm-core-aux-intern/libnm-core-aux-intern.la \ - src/libnm-base/libnm-base.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) - -$(src_libnmc_setting_tests_test_libnmc_setting_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_libnmc_setting_tests_test_libnmc_setting_OBJECTS): $(src_libnm_client_public_mkenums_h) - -EXTRA_DIST += \ - src/libnmc-setting/tests/wg-test0.conf \ - src/libnmc-setting/tests/wg-test1.conf \ - src/libnmc-setting/tests/wg-test2.conf \ - src/libnmc-setting/tests/wg-test3.conf \ - $(NULL) - -############################################################################### -# src/nmcli -############################################################################### - -if BUILD_NMCLI - -bin_PROGRAMS += src/nmcli/nmcli - -src_nmcli_nmcli_SOURCES = \ - src/nmcli/common.c \ - src/nmcli/common.h \ - src/nmcli/utils.c \ - src/nmcli/utils.h \ - src/nmcli/agent.c \ - src/nmcli/general.c \ - src/nmcli/connections.c \ - src/nmcli/connections.h \ - src/nmcli/devices.c \ - src/nmcli/devices.h \ - src/nmcli/settings.c \ - src/nmcli/settings.h \ - src/nmcli/nmcli.c \ - src/nmcli/nmcli.h \ - src/nmcli/polkit-agent.c \ - src/nmcli/polkit-agent.h \ - $(NULL) - -src_nmcli_nmcli_CPPFLAGS = \ - $(clients_cppflags) \ - $(NULL) - -src_nmcli_nmcli_LDADD = \ - src/libnmc-setting/libnmc-setting.la \ - src/libnmc-base/libnmc-base.la \ - src/libnm-core-aux-extern/libnm-core-aux-extern.la \ - src/libnm-core-aux-intern/libnm-core-aux-intern.la \ - src/libnm-base/libnm-base.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - src/libnm-client-aux-extern/libnm-client-aux-extern.la \ - src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) \ - $(READLINE_LIBS) - -src_nmcli_nmcli_LDFLAGS = \ - -Wl,--version-script="$(srcdir)/linker-script-binary.ver" \ - $(SANITIZER_EXEC_LDFLAGS) - -$(src_nmcli_nmcli_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_nmcli_nmcli_OBJECTS): $(src_libnm_client_public_mkenums_h) - -install-data-hook-nmcli: - $(mkinstalldirs) $(DESTDIR)$(completiondir) - $(INSTALL_DATA) $(srcdir)/src/nmcli/nmcli-completion $(DESTDIR)$(completiondir)/nmcli - -install_data_hook += install-data-hook-nmcli - -uninstall-hook-nmcli: - rm -f $(DESTDIR)$(completiondir)/nmcli - -uninstall_hook += uninstall-hook-nmcli - -endif - -############################################################################### - -noinst_PROGRAMS += src/nmcli/gen-metadata-nm-settings-nmcli - -src_nmcli_gen_metadata_nm_settings_nmcli_SOURCES = \ - src/nmcli/gen-metadata-nm-settings-nmcli.c \ - $(NULL) - -src_nmcli_gen_metadata_nm_settings_nmcli_CPPFLAGS = \ - $(clients_cppflags) \ - $(NULL) - -src_nmcli_gen_metadata_nm_settings_nmcli_LDADD = \ - src/libnmc-setting/libnmc-setting.la \ - src/libnmc-base/libnmc-base.la \ - src/libnm-client-aux-extern/libnm-client-aux-extern.la \ - src/libnm-core-aux-extern/libnm-core-aux-extern.la \ - src/libnm-core-aux-intern/libnm-core-aux-intern.la \ - src/libnm-base/libnm-base.la \ - src/libnm-client-impl/libnm.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - $(GLIB_LIBS) \ - $(NULL) - -src_nmcli_gen_metadata_nm_settings_nmcli_LDFLAGS = \ - -Wl,--version-script="$(srcdir)/linker-script-binary.ver" \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -$(src_nmcli_gen_metadata_nm_settings_nmcli_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_nmcli_gen_metadata_nm_settings_nmcli_OBJECTS): $(src_libnm_client_public_mkenums_h) - -############################################################################### - -EXTRA_DIST += \ - src/nmcli/nmcli-completion \ - src/nmcli/meson.build \ - src/libnmc-setting/meson.build \ - src/libnmc-setting/tests/meson.build - -############################################################################### -# src/libnmt-newt -############################################################################### - -if BUILD_NMTUI - -noinst_LIBRARIES += src/libnmt-newt/libnmt-newt.a - -src_libnmt_newt_libnmt_newt_a_SOURCES = \ - src/libnmt-newt/nmt-newt-button-box.c \ - src/libnmt-newt/nmt-newt-button-box.h \ - src/libnmt-newt/nmt-newt-button.c \ - src/libnmt-newt/nmt-newt-button.h \ - src/libnmt-newt/nmt-newt-checkbox.c \ - src/libnmt-newt/nmt-newt-checkbox.h \ - src/libnmt-newt/nmt-newt-component.c \ - src/libnmt-newt/nmt-newt-component.h \ - src/libnmt-newt/nmt-newt-container.c \ - src/libnmt-newt/nmt-newt-container.h \ - src/libnmt-newt/nmt-newt-entry-numeric.c \ - src/libnmt-newt/nmt-newt-entry-numeric.h \ - src/libnmt-newt/nmt-newt-entry.c \ - src/libnmt-newt/nmt-newt-entry.h \ - src/libnmt-newt/nmt-newt-form.c \ - src/libnmt-newt/nmt-newt-form.h \ - src/libnmt-newt/nmt-newt-grid.c \ - src/libnmt-newt/nmt-newt-grid.h \ - src/libnmt-newt/nmt-newt-hacks.c \ - src/libnmt-newt/nmt-newt-hacks.h \ - src/libnmt-newt/nmt-newt-label.c \ - src/libnmt-newt/nmt-newt-label.h \ - src/libnmt-newt/nmt-newt-listbox.c \ - src/libnmt-newt/nmt-newt-listbox.h \ - src/libnmt-newt/nmt-newt-popup.c \ - src/libnmt-newt/nmt-newt-popup.h \ - src/libnmt-newt/nmt-newt-section.c \ - src/libnmt-newt/nmt-newt-section.h \ - src/libnmt-newt/nmt-newt-separator.c \ - src/libnmt-newt/nmt-newt-separator.h \ - src/libnmt-newt/nmt-newt-stack.c \ - src/libnmt-newt/nmt-newt-stack.h \ - src/libnmt-newt/nmt-newt-textbox.c \ - src/libnmt-newt/nmt-newt-textbox.h \ - src/libnmt-newt/nmt-newt-toggle-button.c \ - src/libnmt-newt/nmt-newt-toggle-button.h \ - src/libnmt-newt/nmt-newt-types.h \ - src/libnmt-newt/nmt-newt-utils.c \ - src/libnmt-newt/nmt-newt-utils.h \ - src/libnmt-newt/nmt-newt-widget.c \ - src/libnmt-newt/nmt-newt-widget.h \ - src/libnmt-newt/nmt-newt.h \ - $(NULL) - -src_libnmt_newt_libnmt_newt_a_CPPFLAGS = \ - $(clients_cppflags) \ - $(NEWT_CFLAGS) \ - $(NULL) - -$(src_libnmt_newt_libnmt_newt_a_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_libnmt_newt_libnmt_newt_a_OBJECTS): $(src_libnm_client_public_mkenums_h) - -endif - -EXTRA_DIST += src/libnmt-newt/meson.build - -############################################################################### -# src/nmtui -############################################################################### - -if BUILD_NMTUI - -bin_PROGRAMS += src/nmtui/nmtui - -src_nmtui_nmtui_SOURCES = \ - src/nmtui/nmtui.c \ - src/nmtui/nmtui.h \ - src/nmtui/nmtui-connect.c \ - src/nmtui/nmtui-connect.h \ - src/nmtui/nmtui-edit.c \ - src/nmtui/nmtui-edit.h \ - src/nmtui/nmtui-hostname.c \ - src/nmtui/nmtui-hostname.h \ - src/nmtui/nmtui-radio.c \ - src/nmtui/nmtui-radio.h \ - \ - src/nmtui/nm-editor-bindings.c \ - src/nmtui/nm-editor-bindings.h \ - src/nmtui/nm-editor-utils.c \ - src/nmtui/nm-editor-utils.h \ - \ - src/nmtui/nmt-8021x-fields.c \ - src/nmtui/nmt-8021x-fields.h \ - src/nmtui/nmt-address-list.c \ - src/nmtui/nmt-address-list.h \ - src/nmtui/nmt-connect-connection-list.c \ - src/nmtui/nmt-connect-connection-list.h \ - src/nmtui/nmt-device-entry.c \ - src/nmtui/nmt-device-entry.h \ - src/nmtui/nmt-edit-connection-list.c \ - src/nmtui/nmt-edit-connection-list.h \ - src/nmtui/nmt-editor-grid.c \ - src/nmtui/nmt-editor-grid.h \ - src/nmtui/nmt-editor-page-device.c \ - src/nmtui/nmt-editor-page-device.h \ - src/nmtui/nmt-editor-page.c \ - src/nmtui/nmt-editor-page.h \ - src/nmtui/nmt-editor-section.c \ - src/nmtui/nmt-editor-section.h \ - src/nmtui/nmt-editor.c \ - src/nmtui/nmt-editor.h \ - src/nmtui/nmt-ip-entry.c \ - src/nmtui/nmt-ip-entry.h \ - src/nmtui/nmt-mac-entry.c \ - src/nmtui/nmt-mac-entry.h \ - src/nmtui/nmt-mtu-entry.c \ - src/nmtui/nmt-mtu-entry.h \ - src/nmtui/nmt-page-bond-port.c \ - src/nmtui/nmt-page-bond-port.h \ - src/nmtui/nmt-page-bond.c \ - src/nmtui/nmt-page-bond.h \ - src/nmtui/nmt-page-bridge-port.c \ - src/nmtui/nmt-page-bridge-port.h \ - src/nmtui/nmt-page-bridge.c \ - src/nmtui/nmt-page-bridge.h \ - src/nmtui/nmt-page-dsl.c \ - src/nmtui/nmt-page-dsl.h \ - src/nmtui/nmt-page-ethernet.c \ - src/nmtui/nmt-page-ethernet.h \ - src/nmtui/nmt-page-infiniband.c \ - src/nmtui/nmt-page-infiniband.h \ - src/nmtui/nmt-page-ip-tunnel.c \ - src/nmtui/nmt-page-ip-tunnel.h \ - src/nmtui/nmt-page-ip4.c \ - src/nmtui/nmt-page-ip4.h \ - src/nmtui/nmt-page-ip6.c \ - src/nmtui/nmt-page-ip6.h \ - src/nmtui/nmt-page-macsec.c \ - src/nmtui/nmt-page-macsec.h \ - src/nmtui/nmt-page-ppp.c \ - src/nmtui/nmt-page-ppp.h \ - src/nmtui/nmt-page-team-port.c \ - src/nmtui/nmt-page-team-port.h \ - src/nmtui/nmt-page-team.c \ - src/nmtui/nmt-page-team.h \ - src/nmtui/nmt-page-veth.c \ - src/nmtui/nmt-page-veth.h \ - src/nmtui/nmt-page-vlan.c \ - src/nmtui/nmt-page-vlan.h \ - src/nmtui/nmt-page-wifi.c \ - src/nmtui/nmt-page-wifi.h \ - src/nmtui/nmt-page-wireguard.c \ - src/nmtui/nmt-page-wireguard.h \ - src/nmtui/nmt-password-dialog.c \ - src/nmtui/nmt-password-dialog.h \ - src/nmtui/nmt-password-fields.c \ - src/nmtui/nmt-password-fields.h \ - src/nmtui/nmt-route-editor.c \ - src/nmtui/nmt-route-editor.h \ - src/nmtui/nmt-route-entry.c \ - src/nmtui/nmt-route-entry.h \ - src/nmtui/nmt-route-table.c \ - src/nmtui/nmt-route-table.h \ - src/nmtui/nmt-port-list.c \ - src/nmtui/nmt-port-list.h \ - src/nmtui/nmt-utils.c \ - src/nmtui/nmt-utils.h \ - src/nmtui/nmt-widget-list.c \ - src/nmtui/nmt-widget-list.h \ - src/nmtui/nmt-wireguard-peer-editor.c \ - src/nmtui/nmt-wireguard-peer-editor.h \ - src/nmtui/nmt-wireguard-peer-list.c \ - src/nmtui/nmt-wireguard-peer-list.h \ - $(NULL) - -src_nmtui_nmtui_CPPFLAGS = \ - $(clients_cppflags) \ - $(NEWT_CFLAGS) \ - $(NULL) - -src_nmtui_nmtui_LDFLAGS = \ - -Wl,--version-script="$(srcdir)/linker-script-binary.ver" \ - $(SANITIZER_EXEC_LDFLAGS) - -src_nmtui_nmtui_LDADD = \ - src/libnmt-newt/libnmt-newt.a \ - src/libnmc-setting/libnmc-setting.la \ - src/libnmc-base/libnmc-base.la \ - src/libnm-client-aux-extern/libnm-client-aux-extern.la \ - src/libnm-core-aux-extern/libnm-core-aux-extern.la \ - src/libnm-core-aux-intern/libnm-core-aux-intern.la \ - src/libnm-base/libnm-base.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) \ - $(NEWT_LIBS) \ - $(NULL) - -$(src_nmtui_nmtui_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_nmtui_nmtui_OBJECTS): $(src_libnm_client_public_mkenums_h) - -nmtui_links = \ - nmtui-edit \ - nmtui-connect \ - nmtui-hostname \ - $(NULL) - -install-exec-hook-nmtui: - for link in $(nmtui_links); do \ - $(LN_S) -f nmtui "$(DESTDIR)$(bindir)/$$link"; \ - done - -install_exec_hook += install-exec-hook-nmtui - -uninstall-hook-nmtui: - for link in $(nmtui_links); do \ - rm -f "$(DESTDIR)$(bindir)/$$link"; \ - done - -uninstall_hook += uninstall-hook-nmtui - -endif - -EXTRA_DIST += src/nmtui/meson.build - -############################################################################### -# src/nm-cloud-setup -############################################################################### - -if BUILD_NM_CLOUD_SETUP - -noinst_LIBRARIES += src/nm-cloud-setup/libnm-cloud-setup-core.a - -src_nm_cloud_setup_libnm_cloud_setup_core_a_SOURCES = \ - src/nm-cloud-setup/nm-cloud-setup-utils.c \ - src/nm-cloud-setup/nm-cloud-setup-utils.h \ - src/nm-cloud-setup/nm-http-client.c \ - src/nm-cloud-setup/nm-http-client.h \ - src/nm-cloud-setup/nmcs-provider.c \ - src/nm-cloud-setup/nmcs-provider.h \ - src/nm-cloud-setup/nmcs-provider-ec2.c \ - src/nm-cloud-setup/nmcs-provider-ec2.h \ - src/nm-cloud-setup/nmcs-provider-gcp.c \ - src/nm-cloud-setup/nmcs-provider-gcp.h \ - src/nm-cloud-setup/nmcs-provider-azure.c \ - src/nm-cloud-setup/nmcs-provider-azure.h \ - src/nm-cloud-setup/nmcs-provider-aliyun.c \ - src/nm-cloud-setup/nmcs-provider-aliyun.h \ - $(NULL) - -src_nm_cloud_setup_libnm_cloud_setup_core_a_CPPFLAGS = \ - $(clients_cppflags) \ - $(LIBCURL_CFLAGS) \ - $(NULL) - -$(src_nm_cloud_setup_libnm_cloud_setup_core_a_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_nm_cloud_setup_libnm_cloud_setup_core_a_OBJECTS): $(src_libnm_client_public_mkenums_h) - -libexec_PROGRAMS += src/nm-cloud-setup/nm-cloud-setup - -src_nm_cloud_setup_nm_cloud_setup_SOURCES = \ - src/nm-cloud-setup/main.c \ - $(NULL) - -src_nm_cloud_setup_nm_cloud_setup_CPPFLAGS = \ - $(clients_cppflags) \ - $(LIBCURL_CFLAGS) \ - $(NULL) - -src_nm_cloud_setup_nm_cloud_setup_LDFLAGS = \ - -Wl,--version-script="$(srcdir)/linker-script-binary.ver" \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_nm_cloud_setup_nm_cloud_setup_LDADD = \ - src/nm-cloud-setup/libnm-cloud-setup-core.a \ - src/libnm-client-aux-extern/libnm-client-aux-extern.la \ - src/libnm-core-aux-extern/libnm-core-aux-extern.la \ - src/libnm-core-aux-intern/libnm-core-aux-intern.la \ - src/libnm-base/libnm-base.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) \ - $(LIBCURL_LIBS) \ - $(NULL) - -$(src_nm_cloud_setup_nm_cloud_setup_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_nm_cloud_setup_nm_cloud_setup_OBJECTS): $(src_libnm_client_public_mkenums_h) - -if HAVE_SYSTEMD - -systemdsystemunit_DATA += \ - src/nm-cloud-setup/nm-cloud-setup.service \ - src/nm-cloud-setup/nm-cloud-setup.timer \ - $(NULL) - -src/nm-cloud-setup/nm-cloud-setup.service: $(srcdir)/src/nm-cloud-setup/nm-cloud-setup.service.in - $(AM_V_GEN) $(data_edit) $< >$@ - -install-data-hook-cloud-setup: install-data-hook-dispatcher - $(INSTALL_SCRIPT) "$(srcdir)/src/nm-cloud-setup/90-nm-cloud-setup.sh" "$(DESTDIR)$(nmlibdir)/dispatcher.d/pre-up.d/" - ln -fs ../pre-up.d/90-nm-cloud-setup.sh "$(DESTDIR)$(nmlibdir)/dispatcher.d/no-wait.d/90-nm-cloud-setup.sh" - ln -fs no-wait.d/90-nm-cloud-setup.sh "$(DESTDIR)$(nmlibdir)/dispatcher.d/90-nm-cloud-setup.sh" - -install_data_hook += install-data-hook-cloud-setup - -uninstall-hook-cloud-setup: - rm -f "$(DESTDIR)$(nmlibdir)/dispatcher.d/pre-up.d/90-nm-cloud-setup.sh" - rm -f "$(DESTDIR)$(nmlibdir)/dispatcher.d/no-wait.d/90-nm-cloud-setup.sh" - rm -f "$(DESTDIR)$(nmlibdir)/dispatcher.d/90-nm-cloud-setup.sh" - -uninstall_hook += uninstall-hook-cloud-setup - -endif - -EXTRA_DIST += \ - src/nm-cloud-setup/90-nm-cloud-setup.sh \ - src/nm-cloud-setup/meson.build \ - src/nm-cloud-setup/nm-cloud-setup.service.in \ - src/nm-cloud-setup/nm-cloud-setup.timer \ - src/nm-cloud-setup/tests/meson.build \ - $(NULL) - -CLEANFILES += \ - src/nm-cloud-setup/nm-cloud-setup.service - -check_programs += src/nm-cloud-setup/tests/test-cloud-setup-general - -src_nm_cloud_setup_tests_test_cloud_setup_general_CPPFLAGS = \ - $(clients_cppflags) \ - $(LIBCURL_CFLAGS) \ - $(NULL) - -src_nm_cloud_setup_tests_test_cloud_setup_general_LDFLAGS = \ - $(CODE_COVERAGE_LDFLAGS) \ - $(SANITIZER_EXEC_LDFLAGS) \ - $(NULL) - -src_nm_cloud_setup_tests_test_cloud_setup_general_LDADD = \ - src/nm-cloud-setup/libnm-cloud-setup-core.a \ - src/libnm-client-aux-extern/libnm-client-aux-extern.la \ - src/libnm-core-aux-extern/libnm-core-aux-extern.la \ - src/libnm-core-aux-intern/libnm-core-aux-intern.la \ - src/libnm-base/libnm-base.la \ - src/libnm-glib-aux/libnm-glib-aux.la \ - src/libnm-log-null/libnm-log-null.la \ - src/libnm-std-aux/libnm-std-aux.la \ - src/c-siphash/libc-siphash.la \ - src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) \ - $(LIBCURL_LIBS) \ - $(NULL) - -$(src_nm_cloud_setup_tests_test_cloud_setup_general_OBJECTS): $(src_libnm_core_public_mkenums_h) -$(src_nm_cloud_setup_tests_test_cloud_setup_general_OBJECTS): $(src_libnm_client_public_mkenums_h) - -endif - -############################################################################### -# src/tests/client -############################################################################### - -check-local-tests-client: src/nmcli/nmcli src/tests/client/test-client.py - LIBTOOL="$(LIBTOOL)" "$(srcdir)/src/tests/client/test-client.sh" "$(builddir)" "$(srcdir)" "$(PYTHON)" -- TestNmcli - -check_local += check-local-tests-client - -check-local-tests-cloud-setup: src/nm-cloud-setup/nm-cloud-setup src/tests/client/test-client.py - LIBTOOL="$(LIBTOOL)" "$(srcdir)/src/tests/client/test-client.sh" "$(builddir)" "$(srcdir)" "$(PYTHON)" -- TestNmCloudSetup - -if BUILD_NM_CLOUD_SETUP -check_local += check-local-tests-cloud-setup -endif - -CLEANFILES += src/tests/client/test-client.log - -EXTRA_DIST += \ - src/tests/client/test-client.sh \ - src/tests/client/test-client.py \ - src/tests/client/test-client.check-on-disk/test_001.expected \ - src/tests/client/test-client.check-on-disk/test_002.expected \ - src/tests/client/test-client.check-on-disk/test_003.expected \ - src/tests/client/test-client.check-on-disk/test_004.expected \ - src/tests/client/test-client.check-on-disk/test_offline.expected \ - src/tests/client/test-client.check-on-disk/test_version_warn.expected \ - src/tests/client/test-client.check-on-disk/test_daemon_not_running.expected \ - \ - src/tests/client/meson.build \ - $(NULL) - -############################################################################### - -check-local-gitlab-ci: - "$(srcdir)/tools/check-gitlab-ci.sh" "$(srcdir)" - -check_local += check-local-gitlab-ci - -############################################################################### -# data -############################################################################### - -if HAVE_SYSTEMD - -systemdsystemunit_DATA += \ - data/NetworkManager.service \ - data/NetworkManager-wait-online.service \ - data/NetworkManager-dispatcher.service \ - data/nm-priv-helper.service \ - $(NULL) - -data/NetworkManager.service: $(srcdir)/data/NetworkManager.service.in - $(AM_V_GEN) $(data_edit) $< >$@ - -data/NetworkManager-wait-online.service: $(srcdir)/data/NetworkManager-wait-online.service.in - $(AM_V_GEN) $(data_edit) $< >$@ - -data/NetworkManager-dispatcher.service: $(srcdir)/data/NetworkManager-dispatcher.service.in - $(AM_V_GEN) $(data_edit) $< >$@ - -data/nm-priv-helper.service: $(srcdir)/data/nm-priv-helper.service.in - $(AM_V_GEN) $(data_edit) $< >$@ - -endif - -examples_DATA += data/server.conf - -if WITH_UDEV_DIR -udevrulesdir = $(UDEV_DIR)/rules.d -udevrules_DATA = \ - data/84-nm-drivers.rules \ - data/85-nm-unmanaged.rules \ - data/90-nm-thunderbolt.rules -endif - -data/server.conf: $(srcdir)/data/server.conf.in - @$(MKDIR_P) data/ - $(AM_V_GEN) $(data_edit) $< >$@ - -if WITH_FIREWALLD_ZONE -firewalldzonedir = $(prefix)/lib/firewalld/zones -firewalldzone_DATA = data/nm-shared.xml -endif - -EXTRA_DIST += \ - data/84-nm-drivers.rules \ - data/85-nm-unmanaged.rules \ - data/90-nm-thunderbolt.rules \ - data/NetworkManager-dispatcher.service.in \ - data/NetworkManager-wait-online.service.in \ - data/NetworkManager.service.in \ - data/nm-priv-helper.service.in \ - data/meson.build \ - data/nm-shared.xml \ - data/server.conf.in \ - $(NULL) - -CLEANFILES += \ - data/NetworkManager-dispatcher.service \ - data/NetworkManager-wait-online.service \ - data/NetworkManager.service \ - data/nm-priv-helper.service \ - data/server.conf \ - $(NULL) - -############################################################################### -# man -############################################################################### - -man/common.ent: man/common.ent.in - @$(MKDIR_P) man/ - $(AM_V_GEN) $(data_edit) $< >$@ - -xsltproc_flags = \ - --path man \ - --xinclude \ - --nonet \ - --stringparam man.output.quietly 1 \ - --stringparam funcsynopsis.style ansi \ - --stringparam man.th.extra1.suppress 1 \ - --stringparam man.authors.section.enabled 0 \ - --stringparam man.copyright.section.enabled 0 \ - --stringparam man.th.title.max.length 30 - -if BUILD_DOCS - -man/%.1 man/%.5 man/%.7 man/%.8: man/%.xml man/common.ent - $(AM_V_GEN) $(XSLTPROC) --output $@ $(xsltproc_flags) http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $< - -endif - -man_nm_settings_xml = \ - man/nm-settings-dbus.xml \ - man/nm-settings-ifcfg-rh.xml \ - man/nm-settings-keyfile.xml \ - man/nm-settings-nmcli.xml \ - $(NULL) - -if HAVE_INTROSPECTION - -man/nm-settings-%.xml: man/nm-settings-%.xsl man/nm-settings-docs-%.xml man/common.ent - $(AM_V_GEN) $(XSLTPROC) --output $@ $(xsltproc_flags) $< $(word 2,$^) - -man/nm-settings-keyfile.xml: man/nm-settings-keyfile.xsl src/libnm-client-impl/nm-property-infos-keyfile.xml man/common.ent - $(AM_V_GEN) $(XSLTPROC) --output $@ $(xsltproc_flags) $< $(word 2,$^) -man/nm-settings-ifcfg-rh.xml: man/nm-settings-ifcfg-rh.xsl src/libnm-client-impl/nm-property-infos-ifcfg-rh.xml man/common.ent - $(AM_V_GEN) $(XSLTPROC) --output $@ $(xsltproc_flags) $< $(word 2,$^) - -CLEANFILES += $(man_nm_settings_xml) - -endif - -man_pages += \ - man/NetworkManager-dispatcher.8 \ - man/NetworkManager-wait-online.service.8 \ - man/NetworkManager.8 \ - man/NetworkManager.conf.5 \ - man/nm-initrd-generator.8 \ - man/nm-online.1 \ - man/nmcli-examples.7 \ - man/nmcli.1 \ - man/nmtui.1 \ - $(NULL) - -man_pages_autogen += \ - man/nm-settings-dbus.5 \ - man/nm-settings-keyfile.5 \ - man/nm-settings-nmcli.5 \ - $(NULL) - -if CONFIG_PLUGIN_IFCFG_RH -man_pages_autogen += man/nm-settings-ifcfg-rh.5 -else -EXTRA_DIST += man/nm-settings-ifcfg-rh.5 -dist_dependencies += man/nm-settings-ifcfg-rh.5 -endif - -if WITH_OPENVSWITCH -man_pages += man/nm-openvswitch.7 -else -EXTRA_DIST += man/nm-openvswitch.7 -dist_dependencies += man/nm-openvswitch.7 -endif - -if BUILD_NM_CLOUD_SETUP -man_pages += man/nm-cloud-setup.8 -else -EXTRA_DIST += man/nm-cloud-setup.8 -dist_dependencies += man/nm-cloud-setup.8 -endif - -CLEANFILES += \ - man/common.ent - -EXTRA_DIST += \ - man/common.ent.in \ - $(man_nm_settings_xml) \ - $(addsuffix .xsl,$(basename $(man_nm_settings_xml))) \ - $(man_pages) \ - $(addsuffix .xml,$(basename $(man_pages))) \ - $(man_pages_autogen) \ - $(NULL) - - -if HAVE_DOCS - -install-data-hook-man: - for link in $(nmtui_links); do \ - ln -f $(DESTDIR)$(mandir)/man1/nmtui.1 $(DESTDIR)$(mandir)/man1/$$link.1; \ - done; \ - ln -f $(DESTDIR)$(mandir)/man5/NetworkManager.conf.5 $(DESTDIR)$(mandir)/man5/nm-system-settings.conf.5; \ - ln -f $(DESTDIR)$(mandir)/man5/nm-settings-nmcli.5 $(DESTDIR)$(mandir)/man5/nm-settings.5; - -install_data_hook += install-data-hook-man - -uninstall-hook-man: - for link in $(nmtui_links); do \ - rm -f $(DESTDIR)$(mandir)/man1/$$link.1; \ - done; \ - rm -f $(DESTDIR)$(mandir)/man5/nm-system-settings.conf.5; \ - rm -f $(DESTDIR)$(mandir)/man5/nm-settings.5; - -uninstall_hook += uninstall-hook-man - -man_MANS += $(man_pages) -man_MANS += $(man_pages_autogen) - -endif - -if BUILD_DOCS -CLEANFILES += $(man_pages) -CLEANFILES += $(man_pages_autogen) -endif - -dist_dependencies += $(man_pages) -dist_dependencies += $(man_pages_autogen) - -EXTRA_DIST += \ - man/meson.build - -############################################################################### -# vapi -############################################################################### - -if ENABLE_VAPIGEN - -VAPIGEN_VAPIS += \ - vapi/libnm.vapi - -vapi/libnm.vapi: \ - $(builddir)/src/libnm-client-impl/NM-1.0.gir \ - vapi/libnm.deps \ - vapi/NM-1.0.metadata \ - $(NULL) - -vapi_libnm_vapi_METADATADIRS = $(srcdir)/vapi -vapi_libnm_vapi_FILES = $(builddir)/src/libnm-client-impl/NM-1.0.gir -vapi_libnm_vapi_DEPS = gio-2.0 - -vapi_DATA += \ - $(VAPIGEN_VAPIS) \ - $(VAPIGEN_VAPIS:.vapi=.deps) - -CLEANFILES += $(VAPIGEN_VAPIS) - -endif - -EXTRA_DIST += \ - vapi/NM-1.0.metadata \ - vapi/libnm.deps \ - vapi/meson.build - -check-local-vapi: - $(srcdir)/tools/check-vapi.sh - -check_local += check-local-vapi - -############################################################################### - -girdir = $(datadir)/gir-1.0 -gir_DATA = $(INTROSPECTION_GIRS) -BUILT_SOURCES += $(gir_DATA) - -typelibdir = $(libdir)/girepository-1.0 -typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib) -BUILT_SOURCES += $(typelib_DATA) - -dbusservicedir = $(DBUS_SYS_DIR) -dbusservice_DATA += src/core/org.freedesktop.NetworkManager.conf - -############################################################################### - -if ENABLE_TESTS -noinst_PROGRAMS += $(check_programs) $(check_programs_norun) -noinst_LTLIBRARIES += $(check_ltlibraries) -else -check_PROGRAMS += $(check_programs) $(check_programs_norun) -check_LTLIBRARIES += $(check_ltlibraries) -endif - -plugin_LTLIBRARIES += $(core_plugins) - -TESTS += $(check_programs) - -EXTRA_DIST += \ - \ - AUTHORS \ - COPYING \ - ChangeLog \ - NEWS \ - README.md \ - \ - CONTRIBUTING.md \ - COPYING.LGPL \ - COPYING.GFDL \ - \ - linker-script-binary.ver \ - linker-script-devices.ver \ - linker-script-settings.ver \ - src/core/ppp/nm-ppp-plugin.ver \ - Makefile.glib \ - autogen.sh \ - lsan.suppressions \ - valgrind.suppressions \ - meson.build \ - meson_options.txt \ - config.h.meson \ - config-extra.h.meson \ - docs/meson.build \ - \ - po/meson.build \ - \ - src/meson.build \ - \ - src/libnm-core-public/nm-version-macros.h.in \ - \ - src/contrib/nm-vpn-editor-plugin-call.h \ - \ - tools/check-compare-generated.sh \ - tools/check-config-options.sh \ - tools/check-docs.sh \ - tools/check-exports.sh \ - tools/check-gitlab-ci.sh \ - tools/check-nm-autoptr.sh \ - tools/check-tree.sh \ - tools/check-vapi.sh \ - tools/create-exports-NetworkManager.sh \ - tools/debug-helper.py \ - tools/enums-to-docbook.pl \ - tools/meson-post-install.sh \ - tools/meson-dist-data.sh \ - tools/run-nm-test.sh \ - tools/test-cloud-meta-mock.py \ - tools/test-networkmanager-service.py \ - tools/test-sudo-wrapper.sh \ - \ - src/core/settings/plugins/meson.build \ - \ - $(NULL) - -CLEANFILES += \ - $(GLIB_GENERATED) \ - $(INTROSPECTION_GIRS) \ - $(typelib_DATA) \ - \ - cscope.in.out \ - cscope.out \ - cscope.po.out \ - \ - $(NULL) - -############################################################################### - -include Makefile.examples - -############################################################################### - -check-tree: - "$(top_srcdir)/tools/check-tree.sh" - -check_local += check-tree - -check-po-msgfmt: - @echo "check-po-msgfmt: check $(top_srcdir)/po/*.po files with msgfmt -vc" - @for f in "$(top_srcdir)/po"/*.po ; do \ - if ! msgfmt -vc "$$f" -o /dev/null &>/dev/null ; then \ - echo "invalid po file: msgfmt -vc $$f -o /dev/null" ; \ - msgfmt -vc "$$f" -o /dev/null ; \ - exit 1 ; \ - fi ; \ - done - -check_local += check-po-msgfmt - -############################################################################### - -check-local: $(check_local) - -dist-hook: $(dist_hook) - -############################################################################### - -install-exec-hook: $(install_exec_hook) - -install-data-hook: $(install_data_hook) - -uninstall-hook: $(uninstall_hook) - -############################################################################### - -cscope: - cscope -b -q -R -ssrc - -############################################################################### - -check-progs: all $(check_PROGRAMS) $(check_LTLIBRARIES) - -############################################################################### - -.PRECIOUS: test-suite.log -.DELETE_ON_ERROR: -.PHONY: check-progs cscope dist-configure-check $(check_local) $(dist_hook) diff --git a/Makefile.examples b/Makefile.examples deleted file mode 100644 index 3b262209..00000000 --- a/Makefile.examples +++ /dev/null @@ -1,221 +0,0 @@ -############################################################################### -# examples/C/glib -############################################################################### - -examples_C_glib_cppflags = \ - -I$(top_srcdir)/src/libnm-core-public \ - -I$(top_builddir)/src/libnm-core-public \ - -I$(top_srcdir)/src/libnm-client-public \ - -I$(top_builddir)/src/libnm-client-public \ - $(GLIB_CFLAGS) - -examples_C_glib_cppflags_gdbus = $(examples_C_glib_cppflags) -examples_C_glib_cppflags_libnm = $(examples_C_glib_cppflags) - -check_programs_norun += \ - examples/C/glib/add-connection-gdbus \ - examples/C/glib/add-connection-libnm \ - examples/C/glib/get-active-connections-gdbus \ - examples/C/glib/get-ap-info-libnm \ - examples/C/glib/list-connections-gdbus \ - examples/C/glib/list-connections-libnm \ - examples/C/glib/monitor-nm-running-gdbus \ - examples/C/glib/monitor-nm-state-gdbus \ - examples/C/glib/vpn-import-libnm \ - $(NULL) - -examples_C_glib_add_connection_gdbus_CPPFLAGS = $(examples_C_glib_cppflags_gdbus) -examples_C_glib_add_connection_gdbus_LDADD = \ - $(GLIB_LIBS) \ - $(UUID_LIBS) -$(examples_C_glib_add_connection_gdbus_OBJECTS): $(src_libnm_core_public_mkenums_h) $(src_libnm_client_public_mkenums_h) - -examples_C_glib_add_connection_libnm_CPPFLAGS = $(examples_C_glib_cppflags_libnm) -examples_C_glib_add_connection_libnm_LDADD = \ - src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) -$(examples_C_glib_add_connection_libnm_OBJECTS): $(src_libnm_core_public_mkenums_h) $(src_libnm_client_public_mkenums_h) - -examples_C_glib_get_active_connections_gdbus_CPPFLAGS = $(examples_C_glib_cppflags_gdbus) -examples_C_glib_get_active_connections_gdbus_LDADD = \ - $(GLIB_LIBS) -$(examples_C_glib_get_active_connections_gdbus_OBJECTS): $(src_libnm_core_public_mkenums_h) $(src_libnm_client_public_mkenums_h) - -examples_C_glib_get_ap_info_libnm_CPPFLAGS = $(examples_C_glib_cppflags_libnm) -examples_C_glib_get_ap_info_libnm_LDADD = \ - src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) -$(examples_C_glib_get_ap_info_libnm_OBJECTS): $(src_libnm_core_public_mkenums_h) $(src_libnm_client_public_mkenums_h) - -examples_C_glib_list_connections_gdbus_CPPFLAGS = $(examples_C_glib_cppflags_gdbus) -examples_C_glib_list_connections_gdbus_LDADD = \ - $(GLIB_LIBS) - -examples_C_glib_list_connections_libnm_CPPFLAGS = $(examples_C_glib_cppflags_libnm) -examples_C_glib_list_connections_libnm_LDADD = \ - src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) -$(examples_C_glib_list_connections_libnm_OBJECTS): $(src_libnm_core_public_mkenums_h) $(src_libnm_client_public_mkenums_h) - -examples_C_glib_monitor_nm_running_gdbus_CPPFLAGS = $(examples_C_glib_cppflags_gdbus) -examples_C_glib_monitor_nm_running_gdbus_LDADD = \ - $(GLIB_LIBS) - -examples_C_glib_monitor_nm_state_gdbus_CPPFLAGS = $(examples_C_glib_cppflags_gdbus) -examples_C_glib_monitor_nm_state_gdbus_LDADD = \ - $(GLIB_LIBS) - -examples_C_glib_vpn_import_libnm_CPPFLAGS = $(examples_C_glib_cppflags_libnm) -examples_C_glib_vpn_import_libnm_LDADD = \ - src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) -$(examples_C_glib_vpn_import_libnm_OBJECTS): $(src_libnm_core_public_mkenums_h) $(src_libnm_client_public_mkenums_h) - -EXTRA_DIST += \ - examples/C/glib/meson.build - -############################################################################### -# examples/C/qt -############################################################################### - -if WITH_QT - -examples_C_qt_cppflags = \ - -I$(top_builddir)/src/libnm-core-public \ - -I$(top_srcdir)/src/libnm-core-public \ - -I$(top_builddir)/libnm \ - -I$(top_srcdir)/libnm \ - -I$(builddir)/examples/C/qt \ - $(DBUS_CFLAGS) \ - $(QT_CFLAGS) - -check_programs_norun += \ - examples/C/qt/add-connection-wired \ - examples/C/qt/list-connections \ - examples/C/qt/change-ipv4-addresses \ - examples/C/qt/monitor-nm-running - -examples_C_qt_add_connection_wired_SOURCES = examples/C/qt/add-connection-wired.cpp -examples_C_qt_add_connection_wired_CPPFLAGS = $(examples_C_qt_cppflags) -examples_C_qt_add_connection_wired_LDADD = \ - $(DBUS_LIBS) \ - $(QT_LIBS) - -examples_C_qt_list_connections_SOURCES = examples/C/qt/list-connections.cpp -examples_C_qt_list_connections_CPPFLAGS = $(examples_C_qt_cppflags) -examples_C_qt_list_connections_LDADD = \ - $(DBUS_LIBS) \ - $(QT_LIBS) - -examples_C_qt_change_ipv4_addresses_SOURCES = examples/C/qt/change-ipv4-addresses.cpp -examples_C_qt_change_ipv4_addresses_CPPFLAGS = $(examples_C_qt_cppflags) -examples_C_qt_change_ipv4_addresses_LDADD = \ - $(DBUS_LIBS) \ - $(QT_LIBS) - -examples_C_qt_monitor_nm_running_SOURCES = examples/C/qt/monitor-nm-running.cpp -examples_C_qt_monitor_nm_running_CPPFLAGS = $(examples_C_qt_cppflags) -examples_C_qt_monitor_nm_running_LDADD = \ - $(DBUS_LIBS) \ - $(QT_LIBS) - -examples/C/qt/monitor-nm-running.moc: examples/C/qt/monitor-nm-running.cpp - $(AM_V_GEN) $(MOC) -i $< -o $@ - -$(examples_C_qt_monitor_nm_running_OBJECTS): examples/C/qt/monitor-nm-running.moc - -CLEANFILES += \ - examples/C/qt/monitor-nm-running.moc - -endif - -EXTRA_DIST += \ - examples/C/qt/add-connection-wired.cpp \ - examples/C/qt/list-connections.cpp \ - examples/C/qt/change-ipv4-addresses.cpp \ - examples/C/qt/monitor-nm-running.cpp \ - examples/C/qt/meson.build - -############################################################################### -# examples -############################################################################### - -EXTRA_DIST += \ - examples/dispatcher/10-ifcfg-rh-routes.sh \ - examples/dispatcher/70-wifi-wired-exclusive.sh \ - \ - examples/js/get_ips.js \ - \ - examples/lua/lgi/add-connection.lua \ - examples/lua/lgi/change-vpn-username.lua \ - examples/lua/lgi/deactivate-all.lua \ - examples/lua/lgi/get-basic-nm-info.lua \ - examples/lua/lgi/get-ips.lua \ - examples/lua/lgi/list-connections.lua \ - examples/lua/lgi/list-devices.lua \ - examples/lua/lgi/show-wifi-networks.lua \ - \ - examples/nm-conf.d/30-anon.conf \ - examples/nm-conf.d/31-mac-addr-change.conf \ - \ - examples/python/dbus/add-connection-compat.py \ - examples/python/dbus/add-connection.py \ - examples/python/dbus/add-wifi-eap-connection.py \ - examples/python/dbus/add-wifi-psk-connection.py \ - examples/python/dbus/add-wifi-sae-connection.py \ - examples/python/dbus/checkpoint.py \ - examples/python/dbus/create-bond.py \ - examples/python/dbus/disconnect-device.py \ - examples/python/dbus/get-active-connection-uuids.py \ - examples/python/dbus/is-wwan-default.py \ - examples/python/dbus/list-connections.py \ - examples/python/dbus/list-devices.py \ - examples/python/dbus/nm-state.py \ - examples/python/dbus/show-bssids.py \ - examples/python/dbus/update-ip4-method.py \ - examples/python/dbus/update-secrets.py \ - examples/python/dbus/vpn.py \ - examples/python/dbus/wifi-active-ap.py\ - examples/python/dbus/wifi-hotspot.py \ - \ - examples/python/gi/README \ - examples/python/gi/add_connection.py \ - examples/python/gi/checkpoint.py \ - examples/python/gi/deactivate-all.py \ - examples/python/gi/device-reapply.py \ - examples/python/gi/device-state-ip4config.py \ - examples/python/gi/dns.py \ - examples/python/gi/firewall-zone.py \ - examples/python/gi/get-active-connections.py \ - examples/python/gi/get-devices.py \ - examples/python/gi/get-interface-flags.py \ - examples/python/gi/get-lldp-neighbors.py \ - examples/python/gi/get_ips.py \ - examples/python/gi/gmaincontext.py \ - examples/python/gi/list-connections.py \ - examples/python/gi/nm-add-connection2.py \ - examples/python/gi/nm-connection-update-stable-id.py \ - examples/python/gi/nm-keyfile.py \ - examples/python/gi/nm-up-many.py \ - examples/python/gi/nm-update2.py \ - examples/python/gi/nm-wg-set \ - examples/python/gi/ovs-external-ids.py \ - examples/python/gi/setting-user-data.py \ - examples/python/gi/show-wifi-networks.py \ - examples/python/gi/update-ip4-method.py \ - examples/python/gi/vpn-import.py \ - examples/python/gi/wifi-p2p.py \ - \ - examples/python/python-networkmanager/README \ - \ - examples/ruby/add-connection.rb \ - examples/ruby/get-basic-nm-info.rb \ - examples/ruby/list-devices.rb \ - \ - examples/shell/active-wifi.sh \ - examples/shell/disconnect-device.sh \ - examples/shell/get-hostname.sh \ - examples/shell/list-devices.sh \ - examples/shell/nm-logging.sh \ - \ - $(NULL) diff --git a/Makefile.glib b/Makefile.glib deleted file mode 100644 index 2e02ef46..00000000 --- a/Makefile.glib +++ /dev/null @@ -1,168 +0,0 @@ -# -# Work-in-progress... -# See https://bugzilla.gnome.org/show_bug.cgi?id=654395 - -_GLIB_CLEANFILES = -_GLIB_DISTCLEANFILES = - -_GLIB_V_GEN = $(_glib_v_gen_$(V)) -_glib_v_gen_ = $(_glib_v_gen_$(AM_DEFAULT_VERBOSITY)) -_glib_v_gen_0 = @echo " GEN " $(subst .stamp,,$@); - - -### glib-genmarshal - -_GLIB_MARSHAL_GENERATED = $(subst .h,,$(filter %marshal.h,$(GLIB_GENERATED))) - -_glib_marshal_prefix = $(subst marshal,,$(subst _marshal,,$(subst -,_,$(notdir $(1)))))_marshal -_glib_marshal_sources_var = $(subst -,_,$(notdir $(1)))_sources -_glib_marshal_sources = $(filter-out %.h,$(filter-out $(GLIB_GENERATED),$($(_glib_marshal_sources_var)))) - -define _glib_make_genmarshal_rules -$(if $(_glib_marshal_sources),,$(error Need to define $(_glib_marshal_sources_var) for $(1).[ch])) - -$(1).list.stamp: $(_glib_marshal_sources) Makefile - $$(_GLIB_V_GEN) LC_ALL=C sed -ne 's/.*_$(_glib_marshal_prefix)_\([_A-Z]*\).*/\1/p' $$(filter-out Makefile, $$^) | sort -u | sed -e 's/__/:/' -e 's/_/,/g' > $(1).list.tmp && \ - (cmp -s $(1).list.tmp $(1).list || cp $(1).list.tmp $(1).list) && \ - rm -f $(1).list.tmp && \ - echo timestamp > $$@ - -$(1).list: $(1).list.stamp - @true - -$(1).h: $(1).list - $$(_GLIB_V_GEN) $$(GLIB_GENMARSHAL) \ - --prefix=_$(_glib_marshal_prefix) --header \ - $$(GLIB_GENMARSHAL_H_FLAGS) \ - $$($(_glib_marshal_prefix)_GENMARSHAL_H_FLAGS) \ - $$< > $$@.tmp && \ - mv $$@.tmp $$@ - -$(1).c: $(1).list - $$(_GLIB_V_GEN) (echo "#include \"$$(subst .c,.h,$$(@F))\""; $$(GLIB_GENMARSHAL) \ - --prefix=_$(_glib_marshal_prefix) --body \ - $$(GLIB_GENMARSHAL_C_FLAGS) \ - $$($(_glib_marshal_prefix)_GENMARSHAL_C_FLAGS) \ - $$< ) > $$@.tmp && \ - mv $$@.tmp $$@ - -_GLIB_CLEANFILES += $(1).list.stamp $(1).list -_GLIB_DISTCLEANFILES += $(1).h $(1).c -endef - -$(foreach f,$(_GLIB_MARSHAL_GENERATED),$(eval $(call _glib_make_genmarshal_rules,$f))) - - -### glib-mkenums - -_GLIB_ENUM_TYPES_GENERATED = $(subst .h,,$(filter %enum-types.h %enumtypes.h,$(GLIB_GENERATED))) - -_glib_enum_types_prefix = $(subst -,_,$(notdir $(1))) -_glib_enum_types_guard = __$(shell LC_ALL=C echo $(_glib_enum_types_prefix) | tr 'a-z' 'A-Z')_H__ -_glib_enum_types_sources_var = $(_glib_enum_types_prefix)_sources -_glib_enum_types_sources = $(filter-out $(GLIB_GENERATED),$($(_glib_enum_types_sources_var))) -_glib_enum_types_h_sources = $(filter %.h,$(_glib_enum_types_sources)) - -define _glib_make_mkenums_rules -$(if $(_glib_enum_types_sources),,$(error Need to define $(_glib_enum_types_sources_var) for $(1).[ch])) - -$(1).h.stamp: $(_glib_enum_types_h_sources) Makefile - $$(_GLIB_V_GEN) $$(GLIB_MKENUMS) \ - --fhead "/* Generated by glib-mkenums. Do not edit */\n\n#ifndef $(_glib_enum_types_guard)\n#define $(_glib_enum_types_guard)\n\n" \ - $$(GLIB_MKENUMS_H_FLAGS) \ - $$($(_glib_enum_types_prefix)_MKENUMS_H_FLAGS) \ - --fhead "#include \n\nG_BEGIN_DECLS\n" \ - --vhead "GType @enum_name@_get_type (void) G_GNUC_CONST;\n#define @ENUMPREFIX@_TYPE_@ENUMSHORT@ (@enum_name@_get_type ())\n" \ - --ftail "G_END_DECLS\n\n#endif /* $(_glib_enum_types_guard) */" \ - $$(filter-out Makefile, $$^) > $(1).h.tmp && \ - (cmp -s $(1).h.tmp $(1).h || cp $(1).h.tmp $(1).h) && \ - rm -f $(1).h.tmp && \ - echo timestamp > $$@ - -$(1).h: $(1).h.stamp - @true - -$(1).c.stamp: $(_glib_enum_types_h_sources) Makefile - $$(_GLIB_V_GEN) $$(GLIB_MKENUMS) \ - --fhead "/* Generated by glib-mkenums. Do not edit */\n\n#include \"config.h\"\n\n#include \"$(notdir $(1)).h\"\n" \ - $$(GLIB_MKENUMS_C_FLAGS) \ - $$($(_glib_enum_types_prefix)_MKENUMS_C_FLAGS) \ - --fhead "$$(foreach f,$$(filter-out Makefile,$$(^F)),\n#include \"$$(f)\")\n\n" \ - --vhead "GType\n@enum_name@_get_type (void)\n{\n static volatile gsize g_define_type_id__volatile = 0;\n\n if (g_once_init_enter (&g_define_type_id__volatile))\n {\n static const G@Type@Value values[] = {\n" \ - --vprod " { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" },\n" \ - --vtail " { 0, NULL, NULL }\n };\n GType g_define_type_id =\n g_@type@_register_static (g_intern_static_string (\"@EnumName@\"), values);\n g_once_init_leave (&g_define_type_id__volatile, g_define_type_id);\n }\n\n return g_define_type_id__volatile;\n}\n" \ - $$(filter-out Makefile, $$^) > $(1).c.tmp && \ - (cmp -s $(1).c.tmp $(1).c || cp $(1).c.tmp $(1).c) && \ - rm -f $(1).c.tmp && \ - echo timestamp > $$@ - -$(1).c: $(1).c.stamp - @true - -_GLIB_CLEANFILES += $(1).h.stamp $(1).c.stamp -_GLIB_DISTCLEANFILES += $(1).h $(1).c $(1).h.stamp $(1).c.stamp -endef - -$(foreach f,$(_GLIB_ENUM_TYPES_GENERATED),$(eval $(call _glib_make_mkenums_rules,$f))) - - -### glib-compile-schemas - -_GLIB_ENUMS_XML_GENERATED = $(filter %.enums.xml,$(GLIB_GENERATED)) -_GLIB_GSETTINGS_SCHEMA_FILES = $(filter %.gschema.xml,$(gsettingsschema_DATA)) -_GLIB_GSETTINGS_VALID_FILES = $(subst .xml,.valid,$(_GLIB_GSETTINGS_SCHEMA_FILES)) - -_glib_enums_xml_prefix = $(subst .,_,$(notdir $(1))) -_glib_enums_xml_sources_var = $(_glib_enums_xml_prefix)_sources -_glib_enums_xml_sources = $(filter-out $(GLIB_GENERATED),$($(_glib_enums_xml_sources_var))) -_glib_enums_xml_namespace = $(subst .enums.xml,,$(notdir $(1))) - -define _glib_make_enums_xml_rule -$(if $(_glib_enums_xml_sources),,$(error Need to define $(_glib_enums_xml_sources_var) for $(1))) - -$(1): $(_glib_enums_xml_sources) Makefile - $$(_GLIB_V_GEN) $$(GLIB_MKENUMS) --comments '' --fhead "" --vhead " <@type@ id='$(_glib_enums_xml_namespace).@EnumName@'>" --vprod " " --vtail " " --ftail "" $$(filter-out Makefile, $$^) > $$@.tmp && mv $$@.tmp $$@ -endef - -_GLIB_V_CHECK = $(_glib_v_check_$(V)) -_glib_v_check_ = $(_glib_v_check_$(AM_DEFAULT_VERBOSITY)) -_glib_v_check_0 = @echo " CHECK " $(subst .valid,.xml,$@); - -define _glib_make_schema_validate_rule -$(subst .xml,.valid,$(1)): $(_GLIB_ENUMS_XML_GENERATED) $(1) - $$(_GLIB_V_CHECK) $$(GLIB_COMPILE_SCHEMAS) --strict --dry-run $$(addprefix --schema-file=,$$^) && touch $$@ -endef - -define _glib_make_schema_rules -all-am: $(_GLIB_GSETTINGS_VALID_FILES) - -install-data-am: glib-install-schemas-hook - -glib-install-schemas-hook: install-gsettingsschemaDATA - @test -n "$(GSETTINGS_DISABLE_SCHEMAS_COMPILE)$(DESTDIR)" || (echo $(GLIB_COMPILE_SCHEMAS) $(gsettingsschemadir); $(GLIB_COMPILE_SCHEMAS) $(gsettingsschemadir)) - -uninstall-am: glib-uninstall-schemas-hook - -glib-uninstall-schemas-hook: uninstall-gsettingsschemaDATA - @test -n "$(GSETTINGS_DISABLE_SCHEMAS_COMPILE)$(DESTDIR)" || (echo $(GLIB_COMPILE_SCHEMAS) $(gsettingsschemadir); $(GLIB_COMPILE_SCHEMAS) $(gsettingsschemadir)) - -.PHONY: glib-install-schemas-hook glib-uninstall-schemas-hook -endef - -_GLIB_CLEANFILES += $(_GLIB_ENUMS_XML_GENERATED) $(_GLIB_GSETTINGS_VALID_FILES) - -$(foreach f,$(_GLIB_ENUMS_XML_GENERATED),$(eval $(call _glib_make_enums_xml_rule,$f))) -$(foreach f,$(_GLIB_GSETTINGS_SCHEMA_FILES),$(eval $(call _glib_make_schema_validate_rule,$f))) -$(if $(_GLIB_GSETTINGS_SCHEMA_FILES),$(eval $(_glib_make_schema_rules))) - - -### Cleanup -.PHONY: clean-glib distclean-glib - -clean-am: clean-glib -clean-glib: - $(if $(strip $(_GLIB_CLEANFILES)),-rm -f $(_GLIB_CLEANFILES)) - -distclean-am: distclean-glib -distclean-glib: - $(if $(strip $(_GLIB_DISTCLEANFILES)),-rm -f $(_GLIB_DISTCLEANFILES)) diff --git a/Makefile.vapigen b/Makefile.vapigen deleted file mode 100644 index 7a2ece00..00000000 --- a/Makefile.vapigen +++ /dev/null @@ -1,62 +0,0 @@ -# Makefile for Vala API Generator (vapigen) -# Written by Evan Nemerson -# -# The author disclaims copyright to this source code. In place of -# a legal notice, here is a blessing: -# -# May you do good and not evil. -# May you find forgiveness for yourself and forgive others. -# May you share freely, never taking more than you give. -# -# See http://live.gnome.org/Vala/UpstreamGuide for detailed documentation -# -# Variables: -# -# VAPIGEN_FILES -# -# VAPIs to create -# -# *_DEPS / VAPIGEN_DEPS -# -# The dependencies. Generally the pkg-config names. -# -# *_METADATADIRS / VAPIGEN_METADATADIRS -# -# Directory containing the metadata. -# -# *_VAPIDIRS / VAPIGEN_VAPIDIRS -# -# Additional location(s) to search for VAPI dependencies. -# -# *_GIRDIRS / VAPIGEN_GIRDIRS -# -# Additional location(s) to search for GIR dependencies. -# -# *_FILES -# -# The files which should be used to generate the VAPI. - -_vapigen_silent_prefix = $(_vapigen_silent_prefix_$(V)) -_vapigen_silent_prefix_ = $(_vapigen_silent_prefix_$(AM_DEFAULT_VERBOSITY)) -_vapigen_silent_prefix_0 = @echo " VAPIGEN $(1)"; -_vapigen_silent_opts = $(_vapigen_silent_opts_$(V)) -_vapigen_silent_opts_ = $(_vapigen_silent_opts_$(AM_DEFAULT_VERBOSITY)) -_vapigen_silent_opts_0 = --quiet - -_vapi_name = $(subst /,_,$(subst -,_,$(subst .,_,$(1)))) - -define vapigen -$(1): $$($(_vapi_name)_GIR) - $(_vapigen_silent_prefix) \ - G_DEBUG='' \ - $(VAPIGEN) $(_vapigen_silent_opts) \ - --library $(1:.vapi=) \ - $(foreach _vapi_metadatadir_name,$(if $($(_vapi_name)_METADATADIRS),$($(_vapi_name)_METADATADIRS),$(VAPIGEN_METADATADIRS)),--metadatadir $(_vapi_metadatadir_name)) \ - $(foreach _vapi_dir_name,$(if $($(_vapi_name)_VAPIDIRS),$($(_vapi_name)_VAPIDIRS),$(VAPIGEN_VAPIDIRS)),--vapidir $(_vapi_dir_name)) \ - $(foreach _vapi_gir_dir,$(if $($(_vapi_name)_GIRDIRS),$($(_vapi_name)_GIRDIRS),$(VAPIGEN_GIRDIRS)),--girdir $(_vapi_gir_dir)) \ - $(foreach _vapi_dep_name,$(if $($(_vapi_name)_DEPS),$($(_vapi_name)_DEPS),$(VAPIGEN_DEPS)),--pkg $(_vapi_dep_name)) \ - $$($(_vapi_name)_FILES) && \ - touch $(1) -endef - -$(foreach vapi,$(VAPIGEN_VAPIS),$(eval $(call vapigen,$(vapi)))) diff --git a/NEWS b/NEWS index 24ca2303..da99a777 100644 --- a/NEWS +++ b/NEWS @@ -1,30 +1,42 @@ -=============================================== -NetworkManager-1.50.2 -Overview of changes since NetworkManager-1.50.1 -=============================================== - -* Fix potential crash when the property "ipv4.dhcp-send-release" is - enabled. -* Support routing rules for VPN connections. -* Place the route to the VPN gateway into the table defined by the - "ipv{4,6}.route-table" properties. -* Fix error handling rp_filter when kernel don't support MPTCP. -* Fix configuration of VLAN QoS mappings. - -=============================================== -NetworkManager-1.50.1 -Overview of changes since NetworkManager-1.50.0 -=============================================== +============================================= +NetworkManager-1.52-rc1 +Overview of changes since NetworkManager-1.50 +============================================= -* nmcli: fix handling of connection.down-on-poweroff property -* sriov: only validate sriov capacity when enabled -* wwan: fix crash with IPv4 and method=auto -* dns: fix deleting internal global DNS configuration -* wifi: fix list corruption when scanning with explicit SSID -* bonding: steer IGMP queries to the active bond balance-slb primary port -* remove routes added by NM on reapply -* never retry ACD on NOARP interfaces -* support IPv6 EUI64 link-local address for ipv6 tunnels +This is a NetworkManager release candidate. The API is +subject to change and not guaranteed to be compatible with +the later release. +USE AT YOUR OWN RISK. NOT RECOMMENDED FOR PRODUCTION USE! + +* Store interactive history in `$XDG_CACHE_HOME/nmcli-history` instead of + `~/.nmcli-history` +* Add new ipv4.link-local=fallback to set an IPv4 link-local address + when no other IPv4 is set. +* Remove support for building with Autotools +* Add IPVLAN interface support +* Allow to manually configure the authentication of LTE's initial EPS Bearer. +* Add support for the "IPv6-only preferred" DHCPv4 option (RFC 8925), + used to indicate that a host supports an IPv6-only mode and is + willing to forgo obtaining an IPv4 address if the network provides + IPv6 connectivity. +* Support automatically adding routes to DNS servers via the + ipv4.routed-dns and ipv6.routed-dns properties; when enabled, each + name server is reached only via the device that specifies it. +* Support OCI in nm-cloud-setup +* Added support for ethtool FEC mode +* Add new ipv4.shared-dhcp-range and ipv4.shared-dhcp-lease-time, + which allows you to customize the DHCP range and lease time offered + by DHCP server in `shared` connection method. +* DNS servers can now be specified with a URI-like syntax which supports + DNS over TLS name servers. +* The initrd-generator understands the "rd.net.dns" option to configure + global name servers. +* Drop support for the "dhcpcanon" DHCP client. +* global-dns configuration section now has 2 additional keys: "resolve-mode" + and "certification-authority". +* Dnsconfd plugin can now be used for configuration of system-wide DNS + caching resolver. If dnsconfd plugin is enabled and ipvX.routed-dns is + set to -1 then adding routes is by default enabled. ============================================= NetworkManager-1.50 diff --git a/autogen.sh b/autogen.sh deleted file mode 100755 index 7973c51e..00000000 --- a/autogen.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/sh -# Run this to generate all the initial makefiles, etc. - -set -e - -srcdir=`dirname $0` -if test -z "$srcdir"; then - srcdir=. -fi - -olddir=`pwd` - -REQUIRED_AUTOMAKE_VERSION=1.9 -PKG_NAME=NetworkManager - -(test -f $srcdir/configure.ac \ - && test -f $srcdir/src/core/main.c) || { - printf "**Error**: Directory "\`$srcdir\'" does not look like the" >&2 - echo " top-level $PKG_NAME directory" >&2 - exit 1 -} - -cd $srcdir - -gtkdocize -autoreconf --verbose --force --install - -cd $olddir -if test -z "$NOCONFIGURE"; then - exec $srcdir/configure --enable-maintainer-mode --enable-more-warnings=error --enable-gtk-doc --enable-introspection "$@" -fi diff --git a/config-extra.h.mk b/config-extra.h.mk deleted file mode 100644 index c5e21d44..00000000 --- a/config-extra.h.mk +++ /dev/null @@ -1,27 +0,0 @@ -# With autotools, it is not easily possible to generate these defines -# from configure.ac. -# -# See https://www.gnu.org/software/autoconf/manual/autoconf-2.63/html_node/Installation-Directory-Variables.html -# -# With meson-only, they could just be set via config.h.meson -config-extra.h: config-extra.h.mk config.h config.status - $(AM_V_GEN) \ - echo "/* Generated by Makefile.am */" >$@ && \ - echo "#define BINDIR \"$(bindir)\"" >>$@ && \ - echo "#define DATADIR \"$(datadir)\"" >>$@ && \ - echo "#define LIBEXECDIR \"$(libexecdir)\"" >>$@ && \ - echo "#define LOCALSTATEDIR \"$(localstatedir)\"" >>$@ && \ - echo "#define NMCONFDIR \"$(nmconfdir)\"" >>$@ && \ - echo "#define NMLIBDIR \"$(nmlibdir)\"" >>$@ && \ - echo "#define NMLOCALEDIR \"$(nmlocaledir)\"" >>$@ && \ - echo "#define NMPLUGINDIR \"$(plugindir)\"" >>$@ && \ - echo "#define NMRUNDIR \"$(nmrundir)\"" >>$@ && \ - echo "#define NMSTATEDIR \"$(nmstatedir)\"" >>$@ && \ - echo "#define NMVPNDIR \"$(pkglibdir)\"" >>$@ && \ - echo "#define NM_BUILD_BUILDDIR \"$(abs_builddir)\"" >>$@ && \ - echo "#define NM_BUILD_SRCDIR \"$(abs_srcdir)\"" >>$@ && \ - echo "#define PPPD_PLUGIN_DIR \"$(PPPD_PLUGIN_DIR)\"" >>$@ && \ - echo "#define PREFIX \"$(prefix)\"" >>$@ && \ - echo "#define RUNSTATEDIR \"$(runstatedir)\"" >>$@ && \ - echo "#define SYSCONFDIR \"$(sysconfdir)\"" >>$@ && \ - true diff --git a/config.h.meson b/config.h.meson index d364f762..e59160de 100644 --- a/config.h.meson +++ b/config.h.meson @@ -4,9 +4,6 @@ /* Define to path of dhclient binary */ #mesondefine DHCLIENT_PATH -/* Define to path of dhcpcanon binary */ -#mesondefine DHCPCANON_PATH - /* Define to path of dhcpcd binary */ #mesondefine DHCPCD_PATH @@ -224,9 +221,6 @@ /* Define if you have dhclient */ #mesondefine WITH_DHCLIENT -/* Define if you have dhcpcanon */ -#mesondefine WITH_DHCPCANON - /* Define if you have dhcpcd */ #mesondefine WITH_DHCPCD diff --git a/configure.ac b/configure.ac deleted file mode 100644 index 04bcc7d6..00000000 --- a/configure.ac +++ /dev/null @@ -1,1503 +0,0 @@ -AC_PREREQ([2.63]) - -dnl The NM version number -dnl -dnl NOTE: When incrementing version also: -dnl - add corresponding NM_VERSION_x_y_z macros in -dnl "shared/nm-version-macros.h.in" -dnl - update number in meson.build -m4_define([nm_major_version], [1]) -m4_define([nm_minor_version], [50]) -m4_define([nm_micro_version], [2]) -m4_define([nm_version], - [nm_major_version.nm_minor_version.nm_micro_version]) - -AC_INIT([NetworkManager], [nm_version], - [http://bugzilla.gnome.org/enter_bug.cgi?product=NetworkManager], - [NetworkManager]) - -deprecation_message() { - echo "Building with Autotools is deprecated; meson is the recommended way to build NetworkManager." - echo "To learn more, see the CONTRIBUTING.md file." - echo "To ignore this, pass '--disable-autotools-deprecation' when configuring." - exit 1 -} - -AC_ARG_ENABLE([autotools-deprecation], - AS_HELP_STRING([--disable-autotools-deprecation], - [Building with autotools is deprecated, passing this argument overrides this error.]), - [ test "$enableval" != "no" && deprecation_message ], - [ deprecation_message ] -) - -AC_CONFIG_HEADERS([config.h]) -AC_CONFIG_MACRO_DIR([m4]) -AC_CONFIG_AUX_DIR([build-aux]) -AC_REQUIRE_AUX_FILE([tap-driver.sh]) - -AM_INIT_AUTOMAKE(1.12 foreign tar-pax no-dist-gzip dist-xz -Wno-portability) dnl NB: Do not [quote] this parameter. -AM_MAINTAINER_MODE([enable]) -AM_SILENT_RULES([yes]) - -dnl Define _SYSTEM_EXTENSIONS for various things like strcasestr() -AC_USE_SYSTEM_EXTENSIONS - -dnl -dnl Require programs -dnl -AC_PROG_CC -AM_PROG_CC_C_O - -# C++ only required if --enable-qt=yes -AC_PROG_CXX - -AC_PROG_LN_S -AC_PROG_MKDIR_P - -# Prefer gcc-* variants; the ones libtool would choose don't work with LTO -AC_CHECK_TOOLS(AR, [gcc-ar ar], false) -AC_CHECK_TOOLS(RANLIB, [gcc-ranlib ranlib], :) -AC_CHECK_TOOLS(NM, [$BINUTILS_NM gcc-nm nm]) - -dnl Initialize libtool -LT_PREREQ([2.2]) -LT_INIT([disable-static]) - -dnl Version stuff -NM_MAJOR_VERSION=nm_major_version -NM_MINOR_VERSION=nm_minor_version -NM_MICRO_VERSION=nm_micro_version -NM_VERSION=nm_version -AC_SUBST(NM_MAJOR_VERSION) -AC_SUBST(NM_MINOR_VERSION) -AC_SUBST(NM_MICRO_VERSION) -AC_SUBST(NM_VERSION) - -GIT_SHA_RECORD(NM_GIT_SHA) - -dnl -dnl Checks for typedefs, structures, and compiler characteristics. -dnl -AC_TYPE_PID_T -AC_CHECK_SIZEOF(pid_t) -AC_CHECK_SIZEOF(uid_t) -AC_CHECK_SIZEOF(gid_t) -AC_CHECK_SIZEOF(dev_t) -AC_CHECK_SIZEOF(ino_t) -AC_CHECK_SIZEOF(time_t) -AC_CHECK_SIZEOF(rlim_t,,[[#include ]]) - -AC_CHECK_DECLS([ - explicit_bzero], - [], [], [[ -#include -]]) - -AC_CHECK_DECLS([ - reallocarray], - [], [], [[ -#include -#include -]]) - -AC_CHECK_DECLS([ - memfd_create], - [], [], [[ -#include -]]) - -AC_CHECK_DECLS([ - pidfd_open], - [], [], [[ -#include -#include -#include -#include -]]) - -AC_CHECK_DECLS([ - pidfd_send_signal], - [], [], [[ -#include -#include -#include -#include -]]) - -AC_CHECK_DECLS([ - rt_sigqueueinfo], - [], [], [[ -#include -#include -#include -#include -]]) - -AC_CHECK_HEADERS(sys/auxv.h) -AC_CHECK_HEADERS(threads.h, - [], - [AC_DEFINE([HAVE_THREADS_H], [0], [Define to 1 if you have the header file.])]) - -AC_CHECK_DECLS([getrandom], - [AC_DEFINE([USE_SYS_RANDOM_H], [1], [sys/random.h is usable]) - AC_DEFINE([HAVE_GETRANDOM], [1], [has getrandom]) - ], - [AC_CHECK_DECLS([getrandom], - [AC_DEFINE([USE_SYS_RANDOM_H], [0], [sys/random.h is usable]) - AC_DEFINE([HAVE_GETRANDOM], [1], [has getrandom])], - [AC_DEFINE([USE_SYS_RANDOM_H], [0], [sys/random.h is usable]) - AC_DEFINE([HAVE_GETRANDOM], [0], [has getrandom])], - [[#include - ]])], - [[#include - ]]) - -dnl -dnl translation support -dnl -AM_GNU_GETTEXT([external]) -# Remove AM_GNU_GETTEXT_VERSION once autoreconf supports REQUIRE_VERSION -AM_GNU_GETTEXT_VERSION([0.19.8]) -AM_GNU_GETTEXT_REQUIRE_VERSION([0.19.8]) - -GETTEXT_PACKAGE=NetworkManager -AC_SUBST(GETTEXT_PACKAGE) -AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Gettext package]) - -# autoconf 2.70 adds option --runstatedir. To make the directory also configurable -# on older versions, add --with-runstatedir option. Note that this option overwrites -# --runstatedir (should it be set). If you know to use autoconf >= 2.70, you should -# instead use --runstatedir. -AC_ARG_WITH([runstatedir], - AS_HELP_STRING([--with-runstatedir=DIR], - [Directory for /var/run. Defaults to $localstatedir/run. In autoconf >= 2.70, you should instead use --runstatedir option. This option takes precedence over --runstatedir.]), - [runstatedir="$withval"]) -AS_IF([test -z "$runstatedir"], runstatedir="$localstatedir/run") -AC_SUBST(runstatedir) - -# NetworkManager paths -AC_SUBST(nmbinary, '${sbindir}'/$PACKAGE, [NetworkManager binary executable]) -AC_SUBST(nmconfdir, '${sysconfdir}'/$PACKAGE, [NetworkManager configuration directory]) -AC_SUBST(nmlibdir, '${prefix}'/lib/$PACKAGE, [NetworkManager library directory]) -AC_SUBST(nmdatadir, '${datadir}'/$PACKAGE, [NetworkManager shared data directory]) -AC_SUBST(nmstatedir, '${localstatedir}'/lib/$PACKAGE, [NetworkManager persistent state directory]) -AC_SUBST(nmrundir, '${runstatedir}'/$PACKAGE, [NetworkManager runtime state directory]) - -AC_CHECK_FUNCS([__secure_getenv secure_getenv]) - -# Alternative configuration plugins -AC_ARG_ENABLE(ifcfg-rh, AS_HELP_STRING([--enable-ifcfg-rh], [enable ifcfg-rh configuration plugin (Fedora/RHEL) (deprecated)])) -AC_ARG_ENABLE(ifupdown, AS_HELP_STRING([--enable-ifupdown], [enable ifupdown configuration plugin (Debian/Ubuntu)])) -# Default alternative plugins by distribution -AS_IF([test -z "$enable_ifupdown" -a -f /etc/debian_version], enable_ifupdown=yes) -# Otherwise, plugins default to "no" -AS_IF([test -z "$enable_ifcfg_rh"], enable_ifcfg_rh=no) -AS_IF([test -z "$enable_ifupdown"], enable_ifupdown=no) -# Create automake conditionals -AM_CONDITIONAL(CONFIG_PLUGIN_IFCFG_RH, test "$enable_ifcfg_rh" = "yes") -AM_CONDITIONAL(CONFIG_PLUGIN_IFUPDOWN, test "$enable_ifupdown" = "yes") - -AC_ARG_WITH(config-plugins-default, - AS_HELP_STRING([--with-config-plugins-default=PLUGINS], - [Default configuration option for main.plugins setting, used as fallback if the configuration option is unset]), - [config_plugins_default="$withval"], [config_plugins_default=""]) - -AC_DEFINE_UNQUOTED(NM_CONFIG_DEFAULT_MAIN_PLUGINS, "$config_plugins_default", [Default configuration option for main.plugins setting]) - -if test "$enable_ifcfg_rh" = "yes"; then - DISTRO_NETWORK_SERVICE=network.service -fi -AC_SUBST(DISTRO_NETWORK_SERVICE) - -if test "$enable_ifcfg_rh" = yes; then - AC_DEFINE(WITH_CONFIG_PLUGIN_IFCFG_RH, 1, [Build with ifcfg-rh settings plugin]) -else - AC_DEFINE(WITH_CONFIG_PLUGIN_IFCFG_RH, 0, [Build with ifcfg-rh settings plugin]) -fi - -if test "$enable_ifupdown" = yes; then - AC_DEFINE(WITH_CONFIG_PLUGIN_IFUPDOWN, 1, [Build with ifupdown settings plugin]) -else - AC_DEFINE(WITH_CONFIG_PLUGIN_IFUPDOWN, 0, [Build with ifupdown settings plugin]) -fi - -# Code coverage -GNOME_CODE_COVERAGE - -dnl -dnl Distribution version string -dnl -AC_ARG_WITH(dist-version, - AS_HELP_STRING([--with-dist-version=], - [Define the NM''s distribution version string]), - ac_distver=$withval, ac_distver=$NM_VERSION) -AC_DEFINE_UNQUOTED(NM_DIST_VERSION, "$ac_distver", [Define the distribution version string]) -AC_SUBST(NM_DIST_VERSION, "$ac_distver") - -AC_ARG_ENABLE(wifi, AS_HELP_STRING([--enable-wifi], [enable Wi-Fi support])) -if test "${enable_wifi}" != "no"; then - enable_wifi='yes' -fi -AM_CONDITIONAL(WITH_WIFI, test "${enable_wifi}" = "yes") - -dnl -dnl Default to using WEXT but allow it to be disabled -dnl -AC_ARG_WITH(wext, - AS_HELP_STRING([--with-wext=yes], - [Enable or disable Linux Wireless Extensions]), - ac_with_wext=$withval, ac_with_wext="$enable_wifi") -if test "$ac_with_wext" != 'no'; then - ac_with_wext='yes' -fi -if test x"$ac_with_wext" = x"yes"; then - if test "$enable_wifi" != "yes"; then - AC_MSG_ERROR(Enabling WEXT support and disabling Wi-Fi makes no sense) - fi - AC_DEFINE(HAVE_WEXT, 1, [Define if you have Linux Wireless Extensions support]) -else - AC_DEFINE(HAVE_WEXT, 0, [Define if you have Linux Wireless Extensions support]) -fi -AM_CONDITIONAL(WITH_WEXT, test x"${ac_with_wext}" = x"yes") - -dnl -dnl Default to using wpa_supplicant but allow IWD as wifi backend -dnl -AC_ARG_WITH(iwd, - AS_HELP_STRING([--with-iwd=yes], - [Support IWD as wifi-backend in addition to wpa_supplicant (experimental)]), - ac_with_iwd=$withval, ac_with_iwd="no") -if test "$ac_with_iwd" != 'no'; then - ac_with_iwd='yes' -fi -if test x"$ac_with_iwd" = x"yes"; then - if test "$enable_wifi" != "yes"; then - AC_MSG_ERROR(Enabling IWD support and disabling Wi-Fi makes no sense) - fi - AC_DEFINE(WITH_IWD, 1, [Define to compile with the IWD wifi-backend]) -else - AC_DEFINE(WITH_IWD, 0, [Define to compile without the IWD wifi-backend]) -fi -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], - [test "$ac_cv_search_dlopen" = "none required" || AC_SUBST([DL_LIBS], "$ac_cv_search_dlopen"]), - []) - -PKG_CHECK_MODULES(GLIB, [gio-unix-2.0 >= 2.42 gmodule-2.0]) - -AC_SUBST(LOG_DRIVER, '$(top_srcdir)/build-aux/test-driver') - -GLIB_CFLAGS="$GLIB_CFLAGS -DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_42 -DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_42" - -AC_SUBST(GLIB_CFLAGS) -AC_SUBST(GLIB_LIBS) - -GOBJECT_INTROSPECTION_CHECK([0.9.6]) - -PKG_CHECK_MODULES([LIBUDEV], [libudev >= 175]) - -# Qt4 -PKG_CHECK_MODULES(QT, [QtCore >= 4 QtDBus QtNetwork], [have_qt=yes],[have_qt=no]) -AC_ARG_ENABLE(qt, - AS_HELP_STRING([--enable-qt], [enable Qt examples]), - [enable_qt=${enableval}], [enable_qt=${have_qt}]) -if test "${enable_qt}" = "yes"; then - if test x"$have_qt" = x"no"; then - AC_MSG_ERROR(Qt development headers are required) - fi - # Check for moc-qt4 and if not found then moc - QT4_BINDIR=`$PKG_CONFIG QtCore --variable moc_location` - AC_CHECK_PROGS(MOC, [moc-qt4 moc],, [$QT4_BINDIR:$PATH]) -fi -AM_CONDITIONAL(WITH_QT, test "${enable_qt}" = "yes") - -AC_ARG_WITH(udev-dir, - AS_HELP_STRING([--with-udev-dir=DIR], - [Absolute path of the udev base directory. Set to 'no' not to install the udev rules]), - [], [with_udev_dir="yes"]) -if test "$with_udev_dir" != 'no'; then - if test "$with_udev_dir" = 'yes' -o "$with_udev_dir" = "" ; then - with_udev_dir="\${prefix}/lib/udev" - else - if printf '%s' "$with_udev_dir" | grep -v -q '^/'; then - AC_MSG_ERROR([--with-udev-dir must be an absolute path or 'yes' or 'no'. Instead it is '$with_udev_dir']) - fi - fi - UDEV_DIR="$with_udev_dir" - AC_SUBST(UDEV_DIR) -fi -AM_CONDITIONAL(WITH_UDEV_DIR, test "$with_udev_dir" != 'no') - -# systemd unit support -AC_ARG_WITH([systemdsystemunitdir], - AS_HELP_STRING([--with-systemdsystemunitdir=DIR], - [Directory for systemd service files])) -# default location -AS_IF([test -z "$with_systemdsystemunitdir" && $PKG_CONFIG systemd], - with_systemdsystemunitdir=`$PKG_CONFIG systemd '--define-variable=prefix=${prefix}' '--define-variable=root_prefix=${prefix}' --variable systemdsystemunitdir`) -AS_IF([test -z "$with_systemdsystemunitdir"], with_systemdsystemunitdir=no) -# add conditional and subst -AM_CONDITIONAL(HAVE_SYSTEMD, [test "$with_systemdsystemunitdir" != no]) -if test "$with_systemdsystemunitdir" != no; then - AC_SUBST([systemdsystemunitdir], [$with_systemdsystemunitdir]) -fi - -# Hostname persist mode -AC_ARG_WITH(hostname-persist, - AS_HELP_STRING([--with-hostname-persist=default|suse|gentoo|slackware], - [Hostname persist method])) - -AS_IF([test "$with_hostname_persist" = "suse"], hostname_persist=suse) -AS_IF([test "$with_hostname_persist" = "gentoo"], hostname_persist=gentoo) -AS_IF([test "$with_hostname_persist" = "slackware"], hostname_persist=slackware) -AS_IF([test "$with_hostname_persist" = "default"], hostname_persist=default) -# if the method was not explicitly set, try to guess it from the enabled plugins -AS_IF([test -z "$hostname_persist" -a -f /etc/SuSE-release], hostname_persist=suse) -AS_IF([test -z "$hostname_persist" -a -f /etc/gentoo-release], hostname_persist=gentoo) -AS_IF([test -z "$hostname_persist" -a -f /etc/slackware-version], hostname_persist=slackware) -AS_IF([test -z "$hostname_persist"], hostname_persist=default) - -if test "$hostname_persist" = suse; then - AC_DEFINE(HOSTNAME_PERSIST_SUSE, 1, [Enable SuSE hostname persist method]) -elif test "$hostname_persist" = gentoo; then - AC_DEFINE(HOSTNAME_PERSIST_GENTOO, 1, [Enable Gentoo hostname persist method]) -elif test "$hostname_persist" = slackware; then - AC_DEFINE(HOSTNAME_PERSIST_SLACKWARE, 1, [Enable Slackware hostname persist method]) -fi - -PKG_CHECK_MODULES(LIBSYSTEMD, [libsystemd >= 209], - [AC_DEFINE([HAVE_LIBSYSTEMD], 1, [Define to 1 if libsystemd is available])], - [AC_DEFINE([HAVE_LIBSYSTEMD], 0, [Define to 1 if libsystemd is available])]) - -AC_ARG_WITH(systemd-journal, - AS_HELP_STRING([--with-systemd-journal=yes|no], - [Use systemd journal for logging])) -have_systemd_journal=no -if test "$with_systemd_journal" != "no"; then - PKG_CHECK_MODULES(SYSTEMD_JOURNAL, [libsystemd >= 209], [have_systemd_journal=yes], - [PKG_CHECK_MODULES(SYSTEMD_JOURNAL, - [libsystemd-journal], - [have_systemd_journal=yes], - [have_systemd_journal=no])]) - if test "$have_systemd_journal" != "yes"; then - if test "$with_systemd_journal" = "yes"; then - AC_MSG_ERROR([Missing systemd-journald support]) - fi - fi -fi -if test "$have_systemd_journal" = "yes"; then - AC_DEFINE([SYSTEMD_JOURNAL], 1, [Define to 1 if libsystemd-journald is available]) -else - AC_DEFINE([SYSTEMD_JOURNAL], 0, [Define to 1 if libsystemd-journald is available]) -fi - -AC_ARG_WITH(config-logging-backend-default, - AS_HELP_STRING([--with-config-logging-backend-default=backend], - [Default value for logging.backend]), - nm_config_logging_backend_default="$withval", - nm_config_logging_backend_default="") - -if test "$nm_config_logging_backend_default" != 'syslog' \ - -a "$nm_config_logging_backend_default" != 'journal'; then - # unknown backend. Reset to default. Silently accept the invalid value to - # be future proof. - nm_config_logging_backend_default='' -fi -if test "$nm_config_logging_backend_default" = ""; then - if test "$have_systemd_journal" = "yes"; then - nm_config_logging_backend_default='journal' - else - nm_config_logging_backend_default='syslog' - fi -fi -AC_DEFINE_UNQUOTED(NM_CONFIG_DEFAULT_LOGGING_BACKEND, "$nm_config_logging_backend_default", [Default configuration option for logging.backend]) -NM_CONFIG_DEFAULT_LOGGING_BACKEND_TEXT="$nm_config_logging_backend_default" -AC_SUBST(NM_CONFIG_DEFAULT_LOGGING_BACKEND_TEXT) - -AC_ARG_WITH(config-migrate-ifcfg-rh-default, - AS_HELP_STRING([--with-config-migrate-ifcfg-rh-default=yes|no], - [Default value for main.migrate-ifcfg-rh]), - nm_config_migrate_ifcfg_rh_default="$withval", - nm_config_migrate_ifcfg_rh_default="no") - -if test "$nm_config_migrate_ifcfg_rh_default" = yes; then - if test "$enable_ifcfg_rh" = no; then - AC_MSG_ERROR([ifcfg-rh migration can be enabled by default only when the ifcfg-rh plugin is enabled]) - fi - AC_DEFINE(NM_CONFIG_DEFAULT_MAIN_MIGRATE_IFCFG_RH, "true", [The default value of the main.migrate-ifcfg-rh configuration option]) - NM_CONFIG_DEFAULT_MAIN_MIGRATE_IFCFG_RH_TEXT='true' -elif test "$nm_config_migrate_ifcfg_rh_default" = no; then - AC_DEFINE(NM_CONFIG_DEFAULT_MAIN_MIGRATE_IFCFG_RH, "false", [The default value of the main.migrate-ifcfg-rh configuration option]) - NM_CONFIG_DEFAULT_MAIN_MIGRATE_IFCFG_RH_TEXT='false' -else - AC_MSG_ERROR([The value of --with-config-migrate-ifcfg-rh-default must be either "yes" or "no".]) -fi -AC_SUBST(NM_CONFIG_DEFAULT_MAIN_MIGRATE_IFCFG_RH_TEXT) - -AC_ARG_WITH(config-wifi-backend-default, - AS_HELP_STRING([--with-config-wifi-backend-default=backend], - [Default value for wifi.backend]), - nm_config_wifi_backend_default="$withval", - nm_config_wifi_backend_default="wpa_supplicant") - -if test "$nm_config_wifi_backend_default" != 'iwd' \ - -a "$nm_config_wifi_backend_default" != 'wpa_supplicant'; then - AC_MSG_ERROR([The default Wi-Fi backend must be either wpa_supplicant or iwd.]) -fi -if test "$nm_config_wifi_backend_default" = "iwd"; then - if test "$ac_with_iwd" != "yes"; then - AC_MSG_ERROR([Setting the default Wi-Fi backend to iwd requires iwd support.]) - fi -fi -AC_DEFINE_UNQUOTED(NM_CONFIG_DEFAULT_WIFI_BACKEND, "$nm_config_wifi_backend_default", [Default configuration option for wifi.backend]) -NM_CONFIG_DEFAULT_WIFI_BACKEND_TEXT="$nm_config_wifi_backend_default" -AC_SUBST(NM_CONFIG_DEFAULT_WIFI_BACKEND_TEXT) - -# Session tracking support -AC_ARG_WITH(systemd-logind, - AS_HELP_STRING([--with-systemd-logind=yes|no], - [Support systemd session tracking])) -AC_ARG_WITH(consolekit, - AS_HELP_STRING([--with-consolekit=yes|no], - [Support consolekit session tracking])) -AC_ARG_WITH(session-tracking, - AS_HELP_STRING([--with-session-tracking=systemd|elogind|consolekit|no], - [Compatibility option to choose one session tracking module])) -# backwards compatibility -AS_IF([test "$with_session_tracking" = "ck"], [use_consolekit="yes" use_systemd_logind="no" use_elogind="no"]) -AS_IF([test "$with_session_tracking" = "consolekit"], [use_consolekit="yes" use_systemd_logind="no" use_elogind="no"]) -AS_IF([test "$with_session_tracking" = "systemd"], [use_consolekit="no" use_systemd_logind="yes" use_elogind="no"]) -AS_IF([test "$with_session_tracking" = "elogind"], [use_consolekit="no" use_systemd_logind="no" use_elogind="yes"]) -AS_IF([test "$with_session_tracking" = "no"], [use_consolekit="no" use_systemd_logind="no" use_elogind="no"]) -AS_IF([test "$with_session_tracking" = "none"], [use_consolekit="no" use_systemd_logind="no" use_elogind="no"]) -# current options -AS_IF([test -n "$with_systemd_logind" ], [use_systemd_logind="$with_systemd_logind"]) -AS_IF([test -n "$with_consolekit" ], [use_consolekit="$with_consolekit"]) -# defaults -AS_IF([test -z "$use_systemd_logind"], [use_systemd_logind="auto"]) -AS_IF([test -z "$use_consolekit"], [use_consolekit="yes"]) -# output -session_tracking= -if test "$use_systemd_logind" = "yes" -o "$use_systemd_logind" = "auto"; then - PKG_CHECK_MODULES(SYSTEMD_LOGIN, [libsystemd], [have_systemd_logind=yes], [PKG_CHECK_MODULES(SYSTEMD_LOGIN, [libsystemd-login], [have_systemd_logind=yes], [have_systemd_logind=no])]) -else - have_systemd_logind=no -fi -if test "$use_systemd_logind" = "yes" -a "$have_systemd_logind" = "no"; then - AC_MSG_ERROR([You must have libsystemd installed to build with systemd-logind support.]) -fi -if test "$have_systemd_logind" = "yes"; then - AC_DEFINE([SESSION_TRACKING_SYSTEMD], 1, [Define to 1 if libsystemd-login is available]) - session_tracking="$session_tracking, systemd-logind" -else - AC_DEFINE([SESSION_TRACKING_SYSTEMD], 0, [Define to 1 if libsystemd-login is available]) -fi - -if test "$use_elogind" = "yes" -a "$have_systemd_logind" = "yes"; then - AC_MSG_ERROR([Cannot enable systemd-logind together with elogind.]) -fi -if test "$use_elogind" = "yes"; then - PKG_CHECK_MODULES(SYSTEMD_LOGIN, [libelogind], [have_elogind=yes], [PKG_CHECK_MODULES(SYSTEMD_LOGIN, [libelogind], [have_elogind=yes], [have_elogind=no])]) -else - have_elogind=no -fi -if test "$use_elogind" = "yes" -a "$have_elogind" = "no"; then - AC_MSG_ERROR([You must have libelogind installed to build with elogind support.]) -fi -if test "$have_elogind" = "yes"; then - AC_DEFINE([SESSION_TRACKING_ELOGIND], 1, [Define to 1 if libelogin is available]) - session_tracking="$session_tracking, elogind" -else - AC_DEFINE([SESSION_TRACKING_ELOGIND], 0, [Define to 1 if libelogin is available]) -fi - -if test "$use_consolekit" = "yes"; then - AC_DEFINE([SESSION_TRACKING_CONSOLEKIT], 1, [Define to 1 if ConsoleKit is available]) - session_tracking="$session_tracking, consolekit" -else - AC_DEFINE([SESSION_TRACKING_CONSOLEKIT], 0, [Define to 1 if ConsoleKit is available]) -fi -session_tracking="$(printf '%s' "${session_tracking}" | sed 's/^, //')" - -AC_ARG_WITH(suspend-resume, - AS_HELP_STRING([--with-suspend-resume=systemd|elogind|consolekit], - [Build NetworkManager with specific suspend/resume support])) -if test "z$with_suspend_resume" = "z"; then - PKG_CHECK_EXISTS([libsystemd >= 209], [have_systemd_inhibit=yes], - [PKG_CHECK_EXISTS([libsystemd-login >= 183], [have_systemd_inhibit=yes], [have_systemd_inhibit=no])]) - if test "z${have_systemd_inhibit}" = "zyes"; then - # Use systemd if it's new enough - with_suspend_resume="systemd" - else - PKG_CHECK_EXISTS([libelogind >= 219], [have_elogind_inhibit=yes], - [PKG_CHECK_EXISTS([libelogind >= 219], [have_elogind_inhibit=yes], [have_elogind_inhibit=no])]) - if test "z${have_elogind_inhibit}" = "zyes"; then - # Use elogind if it's new enough - with_suspend_resume="elogind" - else - # Fallback to consolekit - with_suspend_resume="consolekit" - fi - fi -fi - -case $with_suspend_resume in - systemd) - PKG_CHECK_MODULES(SYSTEMD_INHIBIT, [libsystemd >= 209],, - [PKG_CHECK_MODULES(SYSTEMD_INHIBIT, [libsystemd-login >= 183])]) - AC_DEFINE([SUSPEND_RESUME_SYSTEMD], 1, [Define to 1 to use systemd suspend api]) - ;; - elogind) - PKG_CHECK_MODULES(ELOGIND_INHIBIT, [libelogind >= 219],, - [PKG_CHECK_MODULES(ELOGIND_INHIBIT, [libelogind >= 219])]) - AC_DEFINE([SUSPEND_RESUME_ELOGIND], 1, [Define to 1 to use elogind suspend api]) - ;; - consolekit) - AC_DEFINE([SUSPEND_RESUME_CONSOLEKIT], 1, [Define to 1 to use ConsoleKit2 suspend api]) - ;; - *) - AC_MSG_ERROR(--with-suspend-resume must be one of [systemd, elogind, consolekit]) - ;; -esac - -# eBPF support -AC_ARG_WITH(ebpf, - AS_HELP_STRING([--with-ebpf=yes|no|auto], [Build with eBPF support [default=auto]]), - [], [with_ebpf=auto]) -# 'auto' means 'false' because there are still some issues. -if test "$with_ebpf" = "yes" ; then - AC_CHECK_HEADER(linux/bpf.h, [have_ebpf=yes], [have_ebpf=no]) -else - have_ebpf=no -fi -if test "$with_ebpf" = "yes" -a "$have_ebpf" = "no"; then - AC_MSG_ERROR([--with-ebpf=yes requires eBPF kernel header]) -fi -AM_CONDITIONAL(WITH_EBPF, test "${have_ebpf}" = "yes") - -# SELinux support -AC_ARG_WITH(selinux, - AS_HELP_STRING([--with-selinux=yes|no|auto], [Build with SELinux [default=auto]]), - [], [with_selinux=auto]) -if test "$with_selinux" = "yes" -o "$with_selinux" = "auto"; then - PKG_CHECK_MODULES(SELINUX, libselinux, [have_selinux=yes], [have_selinux=no]) -else - have_selinux=no -fi -if test "$with_selinux" = "yes" -a "$have_selinux" = "no"; then - AC_MSG_ERROR([You must have libselinux installed to build --with-selinux=yes.]) -fi -if test "$have_selinux" = "yes"; then - AC_DEFINE(HAVE_SELINUX, 1, [Define if you have SELinux support]) -else - AC_DEFINE(HAVE_SELINUX, 0, [Define if you have SELinux support]) -fi - -# libaudit support -AC_ARG_WITH(libaudit, AS_HELP_STRING([--with-libaudit=yes|yes-disabled-by-default|no|auto], [Build with audit daemon support [default=auto]. yes-disabled-by-default enables support, but disables it unless explicitly configured via NetworkManager.conf]),,[with_libaudit=auto]) -if test "$with_libaudit" = "yes" -o "$with_libaudit" = "yes-disabled-by-default" -o "$with_libaudit" = "auto"; then - PKG_CHECK_MODULES(LIBAUDIT, audit, [have_libaudit=yes], [have_libaudit=no]) - if test "$with_libaudit" != "auto" -a "$have_libaudit" = "no"; then - AC_MSG_ERROR([You must have libaudit installed to build --with-libaudit=$with_libaudit.]) - fi -else - have_libaudit=no -fi -if test "$have_libaudit" = "yes"; then - AC_DEFINE(HAVE_LIBAUDIT, 1, [Define if you have libaudit support]) - if test "$with_libaudit" = "yes-disabled-by-default"; then - AC_DEFINE(NM_CONFIG_DEFAULT_LOGGING_AUDIT, "false", [The default value of the logging.audit configuration option]) - NM_CONFIG_DEFAULT_LOGGING_AUDIT_TEXT='false' - else - AC_DEFINE(NM_CONFIG_DEFAULT_LOGGING_AUDIT, "true", [The default value of the logging.audit configuration option]) - NM_CONFIG_DEFAULT_LOGGING_AUDIT_TEXT='true' - fi -else - AC_DEFINE(HAVE_LIBAUDIT, 0, [Define if you have libaudit support]) - AC_DEFINE(NM_CONFIG_DEFAULT_LOGGING_AUDIT, "false", [The default value of the logging.audit configuration option]) - NM_CONFIG_DEFAULT_LOGGING_AUDIT_TEXT='false' -fi -AC_SUBST(NM_CONFIG_DEFAULT_LOGGING_AUDIT_TEXT) - -# uuid library -PKG_CHECK_MODULES(UUID, uuid) - -# Teamd control checks - -PKG_CHECK_MODULES(JANSSON, [jansson >= 2.7], [have_jansson=yes], [have_jansson=no]) -if test "$have_jansson" = "yes"; then - AC_DEFINE(WITH_JANSSON, 1, [Define if JANSSON is enabled]) - - AC_CHECK_TOOLS(READELF, [eu-readelf readelf]) - JANSSON_LIBDIR=`$PKG_CONFIG --variable=libdir jansson` - JANSSON_SONAME=`$READELF -d $JANSSON_LIBDIR/libjansson.so |sed -n 's/.*SONAME.*\[[\([^]]*\)]]/\1/p'` - - if test "$JANSSON_SONAME" = ""; then - AC_MSG_ERROR(Unable to locate the Jansson library) - fi - AC_DEFINE_UNQUOTED(JANSSON_SONAME, "$JANSSON_SONAME", [Define to path to the Jansson shared library]) -else - have_jansson=no - JANSSON_SONAME= - AC_DEFINE(WITH_JANSSON, 0, [Define if JANSSON is enabled]) -fi -AM_CONDITIONAL(WITH_JANSSON, test "${have_jansson}" = "yes") - -PKG_CHECK_MODULES(LIBTEAMDCTL, [libteamdctl >= 1.9], [have_teamdctl=yes],[have_teamdctl=no]) -if test "$have_jansson" = "yes" -a "$have_teamdctl" = "yes"; then - have_team_prereq=yes -else - have_team_prereq=no -fi - -AC_ARG_ENABLE(teamdctl, - AS_HELP_STRING([--enable-teamdctl], [enable Teamd control support]), - [enable_teamdctl=${enableval}], [enable_teamdctl=${have_team_prereq}]) -if test "${enable_teamdctl}" = "yes"; then - if test "$have_teamdctl" = "no"; then - AC_MSG_ERROR(Libteamdctl is required for team support) - fi - if test "$have_jansson" = "no"; then - AC_MSG_ERROR(Jansson is required for team support) - fi - # temporary bug workaround - LIBTEAMDCTL_CFLAGS=`echo $LIBTEAMDCTL_CFLAGS | sed -e 's:/teamdctl.h::'` -fi -AM_CONDITIONAL(WITH_TEAMDCTL, test "${enable_teamdctl}" = "yes") - -# we usually compile with polkit support. --enable-polkit=yes|no only sets the -# default configuration for main.auth-polkit. User can always enable/disable polkit -# authorization via config. -AC_ARG_ENABLE(polkit, - AS_HELP_STRING([--enable-polkit=yes|no|root-only], - [set default value for auth-polkit configuration option. This value can be overwritten by NM configuration. 'disabled' is an alias for 'no']), - [enable_polkit=${enableval}], [enable_polkit=yes]) -if test "${enable_polkit}" = "root-only" ; then - enable_polkit='root-only' -elif test "${enable_polkit}" != "no" -a "${enable_polkit}" != "disabled" ; then - enable_polkit=true -else - enable_polkit=false -fi -AC_DEFINE_UNQUOTED(NM_CONFIG_DEFAULT_MAIN_AUTH_POLKIT, "$enable_polkit", [The default value of the auth-polkit configuration option]) -AC_SUBST(NM_CONFIG_DEFAULT_MAIN_AUTH_POLKIT_TEXT, "$enable_polkit") - -AC_ARG_WITH([polkit-agent-helper-1], - AS_HELP_STRING([--with-polkit-agent-helper-1=/path/to/polkit-agent-helper-1], - [Path to the polkit-agent-helper-1 binary from polkit]), - POLKIT_AGENT_HELPER_1_PATH="$withval", - POLKIT_AGENT_HELPER_1_PATH="") -if test -z "$POLKIT_AGENT_HELPER_1_PATH" ; then - for p in /usr/libexec/polkit-agent-helper-1 \ - /usr/lib/polkit-1/polkit-agent-helper-1 \ - /usr/lib/policykit-1/polkit-agent-helper-1 ; do - if test -f "$p" ; then - POLKIT_AGENT_HELPER_1_PATH="$p" - break - fi - done -fi -test -z "$POLKIT_AGENT_HELPER_1_PATH" && POLKIT_AGENT_HELPER_1_PATH=/usr/lib/polkit-1/polkit-agent-helper-1 -if test "$POLKIT_AGENT_HELPER_1_PATH" = "${POLKIT_AGENT_HELPER_1_PATH#/}" ; then - AC_MSG_ERROR(["polkit_agent_helper_1 must be an absolute path, but is '$POLKIT_AGENT_HELPER_1_PATH'"]) -fi -AC_DEFINE_UNQUOTED([POLKIT_AGENT_HELPER_1_PATH], - ["$POLKIT_AGENT_HELPER_1_PATH"], - [path to polkit-agent-helper-1 binary]) - -AC_ARG_ENABLE(modify-system, AS_HELP_STRING([--enable-modify-system], [Allow users to modify system connections])) -if test "${enable_modify_system}" = "yes"; then - NM_MODIFY_SYSTEM_POLICY="yes" -else - NM_MODIFY_SYSTEM_POLICY="auth_admin_keep" -fi -AC_SUBST(NM_MODIFY_SYSTEM_POLICY) - -AC_ARG_ENABLE(firewalld-zone, - AS_HELP_STRING([--enable-firewalld-zone], [Install and use firewalld zone for shared mode]), - [enable_firewalld_zone=${enableval}], - [enable_firewalld_zone=yes]) - -if test "${enable_firewalld_zone}" = "yes"; then - AC_DEFINE(WITH_FIREWALLD_ZONE, 1, [Define if NetworkManager uses a custom zone for shared mode]) -else - AC_DEFINE(WITH_FIREWALLD_ZONE, 0, [Define if NetworkManager uses a custom zone for shared mode]) -fi -AM_CONDITIONAL(WITH_FIREWALLD_ZONE, test "${enable_firewalld_zone}" = "yes") - -PKG_CHECK_MODULES(GNUTLS, [gnutls >= 2.12], [have_crypto_gnutls=yes], [have_crypto_gnutls=no]) -PKG_CHECK_MODULES(NSS, [nss], [have_crypto_nss=yes], [have_crypto_nss=yes]) -if test "${have_crypto_nss}" = "yes"; then - # Work around a pkg-config bug (fdo #29801) where exists != usable - FOO=`$PKG_CONFIG --cflags --libs nss` - if test x"$?" != "x0"; then - have_crypto_nss=no - fi -fi -AM_CONDITIONAL(HAVE_CRYPTO_GNUTLS, test "${have_crypto_gnutls}" = 'yes') -AM_CONDITIONAL(HAVE_CRYPTO_NSS, test "${have_crypto_nss}" = 'yes') - -AC_ARG_WITH(crypto, - AS_HELP_STRING([--with-crypto=nss|gnutls|null], - [Cryptography library to use for certificate and key operations]), - with_crypto=$withval, - with_crypto=nss) -if test "$with_crypto" = 'nss'; then - if test "${have_crypto_nss}" != "yes"; then - AC_MSG_ERROR([No usable NSS found for --with-crypto=nss]) - fi -elif test "$with_crypto" = 'gnutls'; then - if test "${have_crypto_gnutls}" != "yes"; then - AC_MSG_ERROR([No usable gnutls found for --with-crypto=gnutls]) - fi -elif test "$with_crypto" = 'null'; then - : -else - AC_MSG_ERROR([Please choose either 'nss', 'gnutls' or 'null' for certificate and crypto operations]) -fi -AM_CONDITIONAL(WITH_NSS, test "$with_crypto" = 'nss') -AM_CONDITIONAL(WITH_GNUTLS, test "$with_crypto" = 'gnutls') - -GLIB_MAKEFILE='$(top_srcdir)/Makefile.glib' -AC_SUBST(GLIB_MAKEFILE) -GLIB_MKENUMS=`$PKG_CONFIG --variable=glib_mkenums glib-2.0` -AC_SUBST(GLIB_MKENUMS) - -AC_ARG_WITH(dbus-sys-dir, - AS_HELP_STRING([--with-dbus-sys-dir=DIR], [where D-BUS system.d directory is])) -if test -n "$with_dbus_sys_dir" ; then - DBUS_SYS_DIR="$with_dbus_sys_dir" -else - DBUS_SYS_DIR="${datadir}/dbus-1/system.d" -fi -AC_SUBST(DBUS_SYS_DIR) - -# pppd -NM_PPP_VERSION_2_5_OR_NEWER=0 -PPPD_VERSION=2.4.9 -PKG_CHECK_EXISTS([pppd], [ - PPPD_VERSION=`$PKG_CONFIG --modversion pppd` - PPPD_CFLAGS=`$PKG_CONFIG --cflags pppd` - NM_PPP_VERSION_2_5_OR_NEWER=1 -]) - -AC_ARG_ENABLE(ppp, - AS_HELP_STRING([--enable-ppp], [enable PPP/PPPoE support]), - [enable_ppp=${enableval}], [enable_ppp=yes]) -if test "${enable_ppp}" = "yes"; then - if test -z "$PPPD_CFLAGS" ; then - AC_CHECK_HEADERS(pppd/pppd.h,, - AC_MSG_ERROR("couldn't find pppd.h. pppd development headers are required."),) - fi - AC_SUBST(PPPD_CFLAGS, ["$PPPD_CFLAGS"]) - AC_DEFINE(WITH_PPP, 1, [Define if you have PPP support]) -else - AC_DEFINE(WITH_PPP, 0, [Define if you have PPP support]) -fi -AM_CONDITIONAL(WITH_PPP, test "${enable_ppp}" = "yes") - -AC_ARG_WITH([pppd-plugin-dir], - AS_HELP_STRING([--with-pppd-plugin-dir=DIR], [path to the pppd plugins directory])) -if test -n "$with_pppd_plugin_dir" ; then - PPPD_PLUGIN_DIR="$with_pppd_plugin_dir" -else - PPPD_PLUGIN_DIR="${libdir}/pppd/$PPPD_VERSION" -fi -AC_SUBST(PPPD_PLUGIN_DIR) -AC_DEFINE_UNQUOTED(NM_PPP_VERSION_2_5_OR_NEWER, $NM_PPP_VERSION_2_5_OR_NEWER, [The detected ppp API version]) - -AC_ARG_WITH(pppd, AS_HELP_STRING([--with-pppd=/path/to/pppd], [path to pppd binary])) -if test "x${with_pppd}" = x; then - AC_PATH_PROG(PPPD_PATH, pppd, [], $PATH:/sbin:/usr/sbin) -else - PPPD_PATH="$with_pppd" -fi -AC_DEFINE_UNQUOTED(PPPD_PATH, "$PPPD_PATH", [Define to path of pppd binary]) -AC_SUBST(PPPD_PATH) - -# ModemManager1 with libmm-glib -AC_ARG_WITH(modem-manager-1, - AS_HELP_STRING([--with-modem-manager-1], - [Enable new ModemManager1 interface support]), - [], [with_modem_manager_1=auto]) -if test "${with_modem_manager_1}" != "no"; then - PKG_CHECK_MODULES(MM_GLIB, - [mm-glib >= 0.7.991], - [have_libmm_glib=yes], - [have_libmm_glib=no]) - - if test "${have_libmm_glib}" = "no"; then - if test "${with_modem_manager_1}" = "yes"; then - AC_MSG_ERROR([Couldn't find libmm-glib]) - else - with_modem_manager_1="no" - fi - else - with_modem_manager_1="yes" - - PKG_CHECK_MODULES(MOBILE_BROADBAND_PROVIDER_INFO, [mobile-broadband-provider-info], - [MOBILE_BROADBAND_PROVIDER_INFO_DATABASE=`$PKG_CONFIG --variable=database mobile-broadband-provider-info`], - [MOBILE_BROADBAND_PROVIDER_INFO_DATABASE="$prefix/share/mobile-broadband-provider-info/serviceproviders.xml"]) - AC_DEFINE_UNQUOTED([MOBILE_BROADBAND_PROVIDER_INFO_DATABASE], - ["$MOBILE_BROADBAND_PROVIDER_INFO_DATABASE"], - [Mobile Broadband Service Provider Information Database location]) - fi -fi -AM_CONDITIONAL(WITH_MODEM_MANAGER_1, test "${with_modem_manager_1}" = "yes") - - - - -# Bluez5 DUN support -PKG_CHECK_MODULES(BLUEZ5, [bluez >= 5], [have_bluez5=yes],[have_bluez5=no]) -AC_ARG_ENABLE(bluez5-dun, - AS_HELP_STRING([--enable-bluez5-dun], [enable Bluez5 DUN support]), - [enable_bluez5_dun=${enableval}], [enable_bluez5_dun=${have_bluez5}]) -if test "${enable_bluez5_dun}" = "yes"; then - if test x"$have_bluez5" = x"no"; then - AC_MSG_ERROR(Bluez 5.x development headers are required) - fi - AC_DEFINE(WITH_BLUEZ5_DUN, 1, [Define if you have Bluez 5 libraries]) -else - AC_DEFINE(WITH_BLUEZ5_DUN, 0, [Define if you have Bluez 5 libraries]) -fi -AM_CONDITIONAL(WITH_BLUEZ5_DUN, test "${enable_bluez5_dun}" = "yes") - -# OFONO -AC_ARG_WITH(ofono, - AS_HELP_STRING([--with-ofono], [Enable oFono support (experimental)]), - [], [with_ofono=no]) -if test "${with_ofono}" = "yes"; then - AC_DEFINE(WITH_OFONO, 1, [Define if you have oFono support (experimental)]) -else - AC_DEFINE(WITH_OFONO, 0, [Define if you have oFono support (experimental)]) -fi -AM_CONDITIONAL(WITH_OFONO, test "${with_ofono}" = "yes") - -# DHCP client support with dhcpcanon -AC_ARG_WITH([dhcpcanon], - AS_HELP_STRING([--with-dhcpcanon=yes|no|path], [Enable dhcpcanon support (experimental)])) -if test "$with_dhcpcanon" != "no"; then - with_dhcpcanon_="$with_dhcpcanon" - AC_PATH_PROGS(with_dhcpcanon, dhcpcanon, no, /sbin:/usr/sbin:/usr/local/sbin:/usr/bin:/usr/local/bin) - if test "$with_dhcpcanon" = "no"; then - if test "$with_dhcpcanon_" = yes; then - AC_MSG_WARN([dhcpcanon not found, assume path /sbin/dhcpcanon]) - with_dhcpcanon=/sbin/dhcpcanon - fi - fi -fi -if test "$with_dhcpcanon" != "no"; then - AC_DEFINE(WITH_DHCPCANON, 1, [Define if you have dhcpcanon]) - AC_DEFINE_UNQUOTED(DHCPCANON_PATH, "$with_dhcpcanon", [Define path to dhcpcanon]) -else - AC_DEFINE(WITH_DHCPCANON, 0, [Define if you have dhcpcanon]) -fi - -# Open vSwitch integration -AC_ARG_ENABLE(ovs, AS_HELP_STRING([--enable-ovs], [enable Open vSwitch support])) -if test "${enable_ovs}" != "no"; then - enable_ovs='yes' - if test "$have_jansson" = "no"; then - AC_MSG_ERROR(Jansson is required for ovs support) - fi -fi -AM_CONDITIONAL(WITH_OPENVSWITCH, test "${enable_ovs}" = "yes") -if test "${enable_ovs}" = "yes" ; then - AC_DEFINE(WITH_OPENVSWITCH, 1, [Whether we build with OVS plugin]) -else - AC_DEFINE(WITH_OPENVSWITCH, 0, [Whether we build with OVS plugin]) -fi - -# DHCP client support -AC_ARG_WITH([dhclient], - AS_HELP_STRING([--with-dhclient=yes|no|path], [Enable dhclient support (deprecated)]), - with_dhclient="$withval", - with_dhclient="no") -if test "$with_dhclient" = yes; then - AC_PATH_PROGS(with_dhclient, dhclient, no, /sbin:/usr/sbin:/usr/local/sbin) - if test "$with_dhclient" = "no"; then - AC_MSG_WARN([dhclient not found, assume path /usr/sbin/dhclient]) - with_dhclient=/usr/sbin/dhclient - fi -fi -if test "$with_dhclient" != "no"; then - AC_MSG_WARN([dhclient is unmaintained and support for it is deprecated]) - AC_DEFINE(WITH_DHCLIENT, 1, [Define if you have dhclient]) - AC_DEFINE_UNQUOTED(DHCLIENT_PATH, "$with_dhclient", [Define path to dhclient]) -else - AC_DEFINE(WITH_DHCLIENT, 0, [Define if you have dhclient]) -fi - -AC_ARG_WITH([dhcpcd], - AS_HELP_STRING([--with-dhcpcd=yes|no|path], [Enable dhcpcd 4.x support])) -if test "$with_dhcpcd" != "no"; then - with_dhcpcd_="$with_dhcpcd" - AC_PATH_PROGS(with_dhcpcd, dhcpcd, no, /sbin:/usr/sbin:/usr/local/sbin) - if test "$with_dhcpcd" = "no"; then - if test "$with_dhcpcd_" = yes; then - AC_MSG_WARN([dhcpcd not found, assume path /usr/sbin/dhcpcd]) - with_dhcpcd=/usr/sbin/dhcpcd - fi - fi -fi -if test "$with_dhcpcd" != "no"; then - AC_DEFINE(WITH_DHCPCD, 1, [Define if you have dhcpcd]) - AC_DEFINE_UNQUOTED(DHCPCD_PATH, "$with_dhcpcd", [Define path to dhcpcd]) -else - AC_DEFINE(WITH_DHCPCD, 0, [Define if you have dhcpcd]) -fi - -AC_ARG_WITH(config-dhcp-default, - AS_HELP_STRING([--with-config-dhcp-default=dhclient|dhcpcd|internal], - [Default configuration option for main.dhcp setting, used as fallback if the configuration option is unset [default=internal]]), - [config_dhcp_default="$withval"], [config_dhcp_default=""]) -if test "$config_dhcp_default" = yes -o "$config_dhcp_default" = no -o -z "$config_dhcp_default"; then - config_dhcp_default='internal' -fi -AC_DEFINE_UNQUOTED(NM_CONFIG_DEFAULT_MAIN_DHCP, "$config_dhcp_default", [Default configuration option for main.dhcp setting]) -AC_SUBST(NM_CONFIG_DEFAULT_MAIN_DHCP, $config_dhcp_default) - -AC_ARG_WITH(resolvconf, AS_HELP_STRING([--with-resolvconf=yes|no|path], [Enable resolvconf support])) -AC_ARG_WITH(netconfig, AS_HELP_STRING([--with-netconfig=yes|no], [Enable SUSE netconfig support])) -AC_ARG_WITH(config-dns-rc-manager-default, AS_HELP_STRING([--with-config-dns-rc-manager-default=auto|symlink|file|netconfig|resolvconf], [Configure default value for main.rc-manager setting]), [config_dns_rc_manager_default=$withval]) -if test "$config_dns_rc_manager_default" != "" -a \ - "$config_dns_rc_manager_default" != auto -a \ - "$config_dns_rc_manager_default" != file -a \ - "$config_dns_rc_manager_default" != symlink -a \ - "$config_dns_rc_manager_default" != netconfig -a \ - "$config_dns_rc_manager_default" != resolvconf; then - AC_MSG_WARN([Unknown --with-config-dns-rc-manager-default=$config_dns_rc_manager_default setting.]) - config_dns_rc_manager_default=auto -fi -# Use netconfig by default on SUSE -AS_IF([test -z "$with_netconfig" -a -f /etc/SuSE-release], with_netconfig=yes) -# Otherwise, default to "no" -AS_IF([test -z "$with_resolvconf"], with_resolvconf=no) -AS_IF([test -z "$with_netconfig"], with_netconfig=no) - -if test "$with_resolvconf" = "yes"; then - AC_PATH_PROGS(with_resolvconf, resolvconf, 'yes', /sbin:/usr/sbin:/usr/local/sbin) - if test "$with_resolvconf" = "yes"; then - AC_MSG_ERROR(cannot find resolvconf in path. Set the path explicitly via --with-resolvconf=PATH.) - fi -fi - -if test "$with_netconfig" = "yes"; then - AC_PATH_PROGS(with_netconfig, netconfig, yes, /sbin:/usr/sbin:/usr/local/sbin) - if test "$with_netconfig" = "yes"; then - AC_MSG_ERROR(cannot find netconfig in path. Set the path explicitly via --with-netconfig=PATH.) - fi -fi - -if test "$with_resolvconf" != "no"; then - AC_DEFINE_UNQUOTED(RESOLVCONF_PATH, "$with_resolvconf", [Path to resolvconf]) -fi -if test "$with_netconfig" != "no"; then - AC_DEFINE_UNQUOTED(NETCONFIG_PATH, "$with_netconfig", [Path to netconfig]) -fi -AC_DEFINE_UNQUOTED(NM_CONFIG_DEFAULT_MAIN_RC_MANAGER, "$config_dns_rc_manager_default", [Default value for main.rc-manager setting (--with-config-dns-rc-manager-default)]) -AC_SUBST(NM_CONFIG_DEFAULT_MAIN_RC_MANAGER, $config_dns_rc_manager_default) - -AC_ARG_WITH(iptables, - AS_HELP_STRING([--with-iptables=/usr/sbin/iptables], [path to iptables])) -if test "x${with_iptables}" = x; then - AC_PATH_PROG(IPTABLES_PATH, iptables, [], $PATH:/sbin:/usr/sbin) - if test "x$IPTABLES_PATH" = x; then - IPTABLES_PATH='/usr/sbin/iptables' - fi -else - IPTABLES_PATH="$with_iptables" -fi -AC_DEFINE_UNQUOTED(IPTABLES_PATH, "$IPTABLES_PATH", [Define to path of iptables binary]) -AC_SUBST(IPTABLES_PATH) - -AC_ARG_WITH(nft, - AS_HELP_STRING([--with-nft=/usr/sbin/nft], [path to nft])) -if test "x${with_nft}" = x; then - AC_PATH_PROG(NFT_PATH, nft, [], $PATH:/sbin:/usr/sbin) - if test "x$NFT_PATH" = x; then - NFT_PATH='/usr/sbin/nft' - fi -else - NFT_PATH="$with_nft" -fi -AC_DEFINE_UNQUOTED(NFT_PATH, "$NFT_PATH", [Define to path of nft binary]) -AC_SUBST(NFT_PATH) - -AC_ARG_WITH(modprobe, - AS_HELP_STRING([--with-modprobe=/sbin/modprobe], [path to modprobe])) -if test "x${with_modprobe}" = x; then - AC_PATH_PROG(MODPROBE_PATH, modprobe, [], $PATH:/sbin:/usr/sbin) - if test "x$MODPROBE_PATH" = x; then - MODPROBE_PATH='/sbin/modprobe' - fi -else - MODPROBE_PATH="$with_modprobe" -fi -AC_DEFINE_UNQUOTED(MODPROBE_PATH, "$MODPROBE_PATH", [Define to path of modprobe binary]) -AC_SUBST(MODPROBE_PATH) - -AC_ARG_WITH(dnsmasq, - AS_HELP_STRING([--with-dnsmasq=/path/to/dnsmasq], [path to dnsmasq])) -if test "x${with_dnsmasq}" = x; then - AC_PATH_PROG(DNSMASQ_PATH, dnsmasq, [], $PATH:/sbin:/usr/sbin) -else - DNSMASQ_PATH="$with_dnsmasq" -fi -AC_DEFINE_UNQUOTED(DNSMASQ_PATH, "$DNSMASQ_PATH", [Define to path of dnsmasq binary]) -AC_SUBST(DNSMASQ_PATH) - -# system CA certificates path -AC_ARG_WITH(system-ca-path, - AS_HELP_STRING([--with-system-ca-path=/path/to/ssl/certs], [path to system CA certificates])) -if test "x${with_system_ca_path}" = x; then - SYSTEM_CA_PATH=/etc/ssl/certs -else - SYSTEM_CA_PATH="$with_system_ca_path" -fi -AC_DEFINE_UNQUOTED(SYSTEM_CA_PATH, "$SYSTEM_CA_PATH", [Define to path to system CA certificates]) -AC_SUBST(SYSTEM_CA_PATH) - -AC_ARG_WITH(kernel-firmware-dir, - AS_HELP_STRING([--with-kernel-firmware-dir=DIR], [where kernel firmware directory is [default=/lib/firmware]])) -if test -n "$with_kernel_firmware_dir" ; then - KERNEL_FIRMWARE_DIR="$with_kernel_firmware_dir" -else - KERNEL_FIRMWARE_DIR="/lib/firmware" -fi -AC_DEFINE_UNQUOTED(KERNEL_FIRMWARE_DIR, "$KERNEL_FIRMWARE_DIR", [Define to path of the kernel firmware directory]) -AC_SUBST(KERNEL_FIRMWARE_DIR) - -PKG_CHECK_MODULES(LIBPSL, [libpsl >= 0.1], [have_libpsl=yes],[have_libpsl=no]) -AC_ARG_WITH(libpsl, - AS_HELP_STRING([--with-libpsl=yes|no], [Link against libpsl]), - [], [with_libpsl=${have_libpsl}]) -if test "$with_libpsl" != "no"; then - if test "$have_libpsl" != "yes"; then - AC_MSG_ERROR(libpsl library not found) - fi - with_libpsl='yes' - AC_DEFINE(WITH_LIBPSL, 1, [Define if you have libpsl]) -else - AC_DEFINE(WITH_LIBPSL, 0, [Define if you have libpsl]) -fi -AM_CONDITIONAL(WITH_LIBPSL, test "$with_libpsl" != "no") - -have_libcurl='' - -AC_ARG_ENABLE(concheck, - AS_HELP_STRING([--enable-concheck], [enable connectivity checking support]), - [enable_concheck=${enableval}], [enable_concheck=yes]) -if test "${enable_concheck}" = "yes"; then - PKG_CHECK_MODULES(LIBCURL, [libcurl >= 7.24.0], [have_libcurl=yes], [have_libcurl=no]) - if test "$have_libcurl" != "yes"; then - AC_MSG_ERROR(--enable-concheck requires libcurl library.) - fi - AC_DEFINE(WITH_CONCHECK, 1, [Define if you want connectivity checking support]) -else - enable_concheck=no - AC_DEFINE(WITH_CONCHECK, 0, [Define if you want connectivity checking support]) -fi - -PKG_CHECK_MODULES(LIBNDP, [libndp]) - -AX_LIB_READLINE - -AC_ARG_WITH(nmcli, - AS_HELP_STRING([--with-nmcli=yes|no], [Build nmcli]), - [], - [with_nmcli=yes]) -if test "$with_nmcli" = yes; then - if test "$with_readline" = none; then - AC_MSG_FAILURE([nmcli requires readline library. Use --with-readline or --with-nmcli=no]) - fi - build_nmcli=yes -elif test "$with_nmcli" = no; then - build_nmcli=no -else - AC_MSG_ERROR([invalid --with-nmcli option. Valid options are --with-nmcli=yes|no]) -fi -AM_CONDITIONAL(BUILD_NMCLI, test "$build_nmcli" = yes) - -AC_ARG_WITH(nm-cloud-setup, - AS_HELP_STRING([--with-nm-cloud-setup=yes|no], [Build nm-cloud-setup, a tool for automatically configuring networking in cloud])) -if test "$with_nm_cloud_setup" != no; then - if test "$have_libcurl" = ""; then - PKG_CHECK_MODULES(LIBCURL, [libcurl >= 7.24.0], [have_libcurl=yes], [have_libcurl=no]) - fi - if test "$have_libcurl" != "yes"; then - AC_MSG_ERROR(--with-nm-cloud-setup requires libcurl library.) - fi - with_nm_cloud_setup=yes -fi -AM_CONDITIONAL(BUILD_NM_CLOUD_SETUP, test "$with_nm_cloud_setup" = yes) - -AC_ARG_WITH(nmtui, - AS_HELP_STRING([--with-nmtui=yes|no], [Build nmtui])) -if test "$with_nmtui" != no; then - PKG_CHECK_MODULES(NEWT, [libnewt >= 0.52.15], [build_nmtui=yes], [build_nmtui=no]) -else - build_nmtui=no -fi -if test "$with_nmtui" = yes -a "$build_nmtui" = no; then - AC_MSG_ERROR([You must have libnewt installed to build nmtui.]) -fi -AM_CONDITIONAL(BUILD_NMTUI, test "$build_nmtui" = yes) - -if test $(( ${NM_MINOR_VERSION} % 2 )) = "1"; then - # A development version - more_warnings_default=error - more_asserts_default=100 - more_logging_default=yes -else - # A release version - more_warnings_default=yes - more_asserts_default=0 - more_logging_default=no -fi - -NM_COMPILER_WARNINGS(AM_CFLAGS, ${more_warnings_default}) - -for w in \ - -Wno-nonnull-compare \ - ; do - NM_COMPILER_WARNING_FLAG(LIBSYSTEMD_NM_CFLAGS, "$w") -done -AC_SUBST(LIBSYSTEMD_NM_CFLAGS) - -CC_CHECK_FLAGS_APPEND([with_cflags], [CFLAGS], [\ - -fno-strict-aliasing \ -]) -AM_CFLAGS="$AM_CFLAGS $with_cflags" - -AC_ARG_ENABLE(more-asserts, - AS_HELP_STRING([--enable-more-asserts], - [Enable more assertions for debugging [default=auto]. Deprecated option. Use --with-more-asserts=level])) -if test "${enable_more_asserts}" = "yes"; then - more_asserts=100 -fi -AC_ARG_WITH(more-asserts, - AS_HELP_STRING([--with-more-asserts=level], [Enable more assertions for debugging (0 = none, 100 = all) [default=auto]]), - [more_asserts=${with_more_asserts}], - []) -if test "${more_asserts}" = "no"; then - more_asserts=0 -else - if test "${more_asserts}" = "yes"; then - more_asserts=100 - fi -fi -if test "${more_asserts}" = ""; then - more_asserts=${more_asserts_default} -fi -AC_DEFINE_UNQUOTED(NM_MORE_ASSERTS, $more_asserts, [Define if more asserts are enabled]) - -AC_ARG_ENABLE(more-logging, AS_HELP_STRING([--enable-more-logging], [Enable more debug logging [default=auto]])) -if test "${enable_more_logging}" = ""; then - enable_more_logging=${more_logging_default} -fi -if test "${enable_more_logging}" = "yes"; then - AC_DEFINE(NM_MORE_LOGGING, [1], [Define if more debug logging is enabled]) -else - AC_DEFINE(NM_MORE_LOGGING, [0], [Define if more debug logging is enabled]) -fi - -NM_LTO -NM_LD_GC - -AC_ARG_WITH(address-sanitizer, - AS_HELP_STRING([--with-address-sanitizer=yes|no|exec], [Enable address sanitizer [default=no]])) -if test "$with_address_sanitizer" = yes -o "$with_address_sanitizer" = "exec"; then - CC_CHECK_FLAGS_APPEND([asan_cflags], [CFLAGS], [-fsanitize=address]) - AS_IF([test -z "$asan_cflags"], - [AC_MSG_ERROR([*** -fsanitize=address is not supported])]) - - sanitizer_exec_cflags="$sanitizer_exec_cflags -fsanitize=address" - sanitizer_exec_ldflags="$sanitizer_exec_ldflags -Wc,-fsanitize=address" - AC_DEFINE(ASAN_BUILD, 1, [Whether NM is built with address sanitizer]) - - if test "$with_address_sanitizer" = "yes"; then - sanitizer_lib_cflags="$sanitizer_lib_cflags -fsanitize=address" - sanitizer_lib_ldflags="$sanitizer_lib_ldflags -Wc,-fsanitize=address" - sanitizers="${sanitizers}address " - asan_options="ASAN_OPTIONS=detect_leaks=0" - else - sanitizers="${sanitizers}address(executables-only) " - fi -elif test "$with_address_sanitizer" = "" -o "$with_address_sanitizer" = no; then - with_address_sanitizer=no -else - AC_MSG_ERROR(["Invalid asan option --with-address-sanitizer=$with_address_sanitizer"]) -fi - -AC_ARG_ENABLE(undefined-sanitizer, - AS_HELP_STRING([--enable-undefined-sanitizer], - [Compile with undefined behavior sanitizer [default=no]])) -if test "${enable_undefined_sanitizer}" = "yes"; then - CC_CHECK_FLAGS_APPEND([ubsan_cflags], [CFLAGS], [-fsanitize=undefined]) - AS_IF([test -z "$ubsan_cflags"], - [AC_MSG_ERROR([*** -fsanitize=undefined is not supported])]) - - sanitizer_exec_cflags="$sanitizer_exec_cflags -fsanitize=undefined" - sanitizer_lib_cflags="$sanitizer_lib_cflags -fsanitize=undefined" - sanitizer_exec_ldflags="$sanitizer_exec_ldflags -Wc,-fsanitize=undefined" - sanitizer_lib_ldflags="$sanitizer_lib_ldflags -Wc,-fsanitize=undefined" - sanitizers="${sanitizers}undefined-behavior " -elif test "$enable_undefined_sanitizer" = "" -o "$enable_undefined_sanitizer" = no; then - enable_undefined_sanitizer=no -else - AC_MSG_ERROR(["Invalid asan option --enable-undefined-sanitizer=$enable_undefined_sanitizer"]) -fi - -if test -n "$sanitizers"; then - sanitizers="${sanitizers% }" - AC_SUBST(SANITIZER_ENV, ["$asan_options"]) - AC_SUBST(SANITIZER_EXEC_CFLAGS, ["$sanitizer_exec_cflags -DVALGRIND=1 -fno-omit-frame-pointer"]) - AC_SUBST(SANITIZER_LIB_CFLAGS, ["$sanitizer_lib_cflags -DVALGRIND=1 -fno-omit-frame-pointer"]) - AC_SUBST(SANITIZER_EXEC_LDFLAGS, [$sanitizer_exec_ldflags]) - AC_SUBST(SANITIZER_LIB_LDFLAGS, [$sanitizer_lib_ldflags]) -fi - -AC_MSG_CHECKING([CC support C11 _Generic()]) -AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int foo(void); static const char *const buf[1] = { "a" }; int foo() { int a = 0; int b = _Generic (a, int: 4) + _Generic(buf, const char *const*: 5); return b + a; }]], - [[foo();]])], - [cc_support_generic=1], - [cc_support_generic=0]) -AC_MSG_RESULT($cc_support_generic) -AC_DEFINE_UNQUOTED(_NM_CC_SUPPORT_GENERIC, $cc_support_generic, [Define whether the compiler supports C11 _Generic()]) - -AC_MSG_CHECKING([CC support gcc __auto_type]) -AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int foo(void); int foo() { int a = 0; __auto_type b = a; return b + a; }]], - [[foo();]])], - [cc_support_auto_type=1], - [cc_support_auto_type=0]) -AC_MSG_RESULT($cc_support_auto_type) -AC_DEFINE_UNQUOTED(_NM_CC_SUPPORT_AUTO_TYPE, $cc_support_auto_type, [Define whether the compiler support gcc __auto_type]) - -dnl ------------------------- -dnl Vala bindings -dnl ------------------------- - -VAPIGEN_CHECK(0.17.1.24) -AC_CONFIG_COMMANDS([vapi], [$MKDIR_P vapi]) - -# Tests, utilities and documentation -AC_ARG_ENABLE(tests, AS_HELP_STRING([--enable-tests=root|yes|no], [Build NetworkManager tests [default=yes]])) -AC_ARG_WITH(valgrind, - AS_HELP_STRING([--with-valgrind=yes|no|path], [Use valgrind to memory-check the tests [default=no]])) -# Fallback to --with-tests -AC_ARG_WITH(tests, - AS_HELP_STRING([--with-tests], [Build NetworkManager tests (deprecated)])) -AS_IF([test -n "$with_tests"], enable_tests="$with_tests") -# Default to --enable-tests --with-valgrind=no -AS_IF([test -z "$enable_tests"], enable_tests="yes") -AS_IF([test -z "$with_valgrind"], with_valgrind="no") -# Normalize values -AS_IF([test "$enable_tests" != "yes" -a "$enable_tests" != "root"], enable_tests="no") -# Search for tools -AS_IF([test "$with_valgrind" = "yes"], - [AC_PATH_PROGS(with_valgrind, valgrind, no)]) -# Add conditionals and substitutions -AM_CONDITIONAL(ENABLE_TESTS, test "$enable_tests" != "no") -AM_CONDITIONAL(REQUIRE_ROOT_TESTS, test "$enable_tests" = "root") -AC_ARG_WITH(valgrind-suppressions, - AS_HELP_STRING([--with-valgrind-suppressions=path], [Use specific valgrind suppression file])) -if test "$with_valgrind" = no; then - with_valgrind_suppressions= -else - if test "$with_valgrind_suppressions" = ""; then - with_valgrind_suppressions='$(top_srcdir)/valgrind.suppressions' - fi -fi -AC_SUBST(NM_LOG_COMPILER, 'LOG_COMPILER = "$(top_srcdir)/tools/run-nm-test.sh" --called-from-make "$(abs_top_builddir)" "$(LIBTOOL)" "$(with_valgrind)" "'"$with_valgrind_suppressions"'" --launch-dbus=auto') - -AX_PTHREAD([], [AC_MSG_ERROR([Threads are required for the NetworkManager tests])]) - -if test -n "$PYTHON" ; then - AM_PATH_PYTHON([], [], []) -else - AM_PATH_PYTHON([3], [], [PYTHON=]) - if test -z "$PYTHON"; then - AM_PATH_PYTHON([], [], []) - fi -fi -AC_SUBST(PYTHON, [$PYTHON]) -AC_DEFINE_UNQUOTED(TEST_NM_PYTHON, "$PYTHON", [Define python path for test binary]) - -GTK_DOC_CHECK(1.0) - -# check if we can build setting property documentation -build_docs=no -if test -n "$INTROSPECTION_MAKEFILE"; then - # If g-i is installed we know we have python, but we might not have pygobject - if ! "$PYTHON" -c 'from gi.repository import GObject' > /dev/null 2>&1; then - AC_MSG_ERROR(["--enable-introspection aims to build the settings documentation. This requires GObject introspection for python (pygobject)]) - fi - - AC_PATH_PROG(PERL, perl) - if test -z "$PERL"; then - AC_MSG_ERROR([--enable-introspection requires perl]) - fi - AC_PATH_PROG(XSLTPROC, xsltproc) - if test -z "$XSLTPROC"; then - AC_MSG_ERROR([--enable-introspection requires xsltproc]) - fi - - have_introspection=yes - if test "$enable_gtk_doc" = "yes"; then - build_docs=yes - fi -else - if test "$enable_gtk_doc" = "yes"; then - # large parts of the documentation require introspection/pygobject to extract - # the documentation out of the source files. You cannot enable gtk-doc without alone. - AC_MSG_ERROR(["--enable-gtk-doc requires --enable-introspection"]) - fi - have_introspection=no -fi - -# check for pregenerated manpages and documentation to be installed -use_pregen_docs=no -if test "$build_docs" != "yes" -a \ - -f "$srcdir"/man/NetworkManager-dispatcher.8 -a \ - -f "$srcdir"/man/NetworkManager-wait-online.service.8 -a \ - -f "$srcdir"/man/NetworkManager.8 -a \ - -f "$srcdir"/man/NetworkManager.conf.5 -a \ - -f "$srcdir"/man/nm-online.1 -a \ - -f "$srcdir"/man/nmcli-examples.7 -a \ - -f "$srcdir"/man/nmcli.1 -a \ - -f "$srcdir"/man/nmtui.1 -a \ - \ - -f "$srcdir"/man/nm-openvswitch.7 -a \ - -f "$srcdir"/man/nm-cloud-setup.8 -a \ - \ - -f "$srcdir"/man/nm-settings-dbus.5 -a \ - -f "$srcdir"/man/nm-settings-ifcfg-rh.5 -a \ - -f "$srcdir"/man/nm-settings-keyfile.5 -a \ - -f "$srcdir"/man/nm-settings-nmcli.5 -a \ - \ - -f "$srcdir"/man/nm-settings-dbus.xml -a \ - -f "$srcdir"/man/nm-settings-ifcfg-rh.xml -a \ - -f "$srcdir"/man/nm-settings-keyfile.xml -a \ - -f "$srcdir"/man/nm-settings-nmcli.xml -a \ - \ - -f "$srcdir"/docs/api/settings-spec.xml; then - use_pregen_docs=yes -fi - -AM_CONDITIONAL(BUILD_DOCS, test "$build_docs" = "yes") -AM_CONDITIONAL(HAVE_DOCS, test "$build_docs" = "yes" -o "$use_pregen_docs" = "yes") -AC_SUBST(AM_CFLAGS) - -AC_CONFIG_FILES([ -Makefile -po/Makefile.in -data/org.freedesktop.NetworkManager.policy.in -docs/api/Makefile -docs/api/version.xml -docs/libnm/Makefile -docs/libnm/version.xml -src/libnm-client-impl/libnm.pc -src/libnm-core-public/nm-version-macros.h -]) -AC_OUTPUT - -# Print build configuration -echo -echo "System paths:" -echo " prefix: $prefix" -echo " exec_prefix: $exec_prefix" -echo " sysconfdir: $sysconfdir" -echo " localstatedir: $localstatedir" -echo " runstatedir: $runstatedir" -echo " datarootdir: $datarootdir" -echo " datadir: $datadir" -echo " systemdunitdir: $with_systemdsystemunitdir" -echo " udev-dir: $with_udev_dir" -echo " nmbinary: $nmbinary" -echo " nmconfdir: $nmconfdir" -echo " nmlibdir: $nmlibdir" -echo " nmdatadir: $nmdatadir" -echo " nmstatedir: $nmstatedir" -echo " nmrundir: $nmrundir" -echo " system-ca-path: $with_system_ca_path" -echo " dbus-sys-dir: $DBUS_SYS_DIR" -echo - -echo "Platform:" -echo " session tracking: $session_tracking" -echo " suspend/resume: $with_suspend_resume" -if test "${enable_modify_system}" = "yes"; then - echo " policykit: main.auth-polkit=${enable_polkit} (permissive modify.system)" -else - echo " policykit: main.auth-polkit=${enable_polkit} (restrictive modify.system)" -fi -echo " polkit-agent-helper-1: $POLKIT_AGENT_HELPER_1_PATH" -echo " selinux: $have_selinux" -echo " systemd-journald: $have_systemd_journal (default: logging.backend=${nm_config_logging_backend_default})" -echo " hostname persist: ${hostname_persist}" -echo " libaudit: $have_libaudit (default: logging.audit=${NM_CONFIG_DEFAULT_LOGGING_AUDIT_TEXT})" -echo - -echo "Features:" -echo " wext: $ac_with_wext" -echo " wifi: $enable_wifi" -echo " ppp: $enable_ppp ${PPPD_PATH} plugins:${PPPD_PLUGIN_DIR}" -echo " modemmanager-1: $with_modem_manager_1" -echo " ofono: $with_ofono" -echo " concheck: $enable_concheck" -echo " libteamdctl: $enable_teamdctl" -echo " ovs: $enable_ovs" -echo " nmcli: $build_nmcli" -echo " nmtui: $build_nmtui" -echo " nm-cloud-setup: $with_nm_cloud_setup" -echo " iwd: $ac_with_iwd" -echo " jansson: $have_jansson${JANSSON_SONAME:+ (soname: $JANSSON_SONAME)}" -echo " iptables: $IPTABLES_PATH" -echo " nft: $NFT_PATH" -echo " modprobe: $MODPROBE_PATH" -echo - -echo "Configuration plugins (main.plugins=${config_plugins_default})" -echo " ifcfg-rh: ${enable_ifcfg_rh}" -echo " default value of main.migrate-ifcfg-rh: ${nm_config_migrate_ifcfg_rh_default}" -echo " ifupdown: ${enable_ifupdown}" -echo - -echo "Handlers for /etc/resolv.conf:" -echo " resolvconf: ${with_resolvconf}" -echo " netconfig: ${with_netconfig}" -echo " config-dns-rc-manager-default: ${config_dns_rc_manager_default}" -echo - -echo "DHCP clients (default $config_dhcp_default):" -echo " dhcpcanon: $with_dhcpcanon" -echo " dhclient: $with_dhclient (deprecated)" -echo " dhcpcd: $with_dhcpcd" -echo - -echo "Miscellaneous:" -echo " have introspection: $have_introspection" -echo " build documentation and manpages: $build_docs" -echo " install pregenerated documentation and manpages: $use_pregen_docs" -echo " install and use firewalld shared zone: $enable_firewalld_zone" -echo " tests: $enable_tests" -echo " more-asserts: $more_asserts" -echo " more-logging: $enable_more_logging" -echo " more-warnings: $set_more_warnings" -echo " valgrind: $with_valgrind $with_valgrind_suppressions" -echo " code coverage: $enable_code_coverage" -echo " LTO: $enable_lto" -echo " linker garbage collection: $enable_ld_gc" -echo " crypto: $with_crypto (have-gnutls: $have_crypto_gnutls, have-nss: $have_crypto_nss)" -echo " sanitizers: $sanitizers" -echo " Mozilla Public Suffix List: $with_libpsl" -echo " eBPF: $have_ebpf" -echo " readline: $with_readline" -echo " python: $PYTHON" -echo diff --git a/contrib/alpine/REQUIRED_PACKAGES b/contrib/alpine/REQUIRED_PACKAGES index f05147eb..358214fd 100755 --- a/contrib/alpine/REQUIRED_PACKAGES +++ b/contrib/alpine/REQUIRED_PACKAGES @@ -7,7 +7,6 @@ apk update apk add \ 'alpine-sdk' \ 'autoconf' \ - 'automake' \ 'bash' \ 'clang' \ 'curl-dev' \ @@ -31,7 +30,6 @@ apk add \ 'libteam-dev' \ 'libtool' \ 'linux-headers' \ - 'make' \ 'meson' \ 'mobile-broadband-provider-info' \ 'modemmanager-dev' \ diff --git a/contrib/debian/REQUIRED_PACKAGES b/contrib/debian/REQUIRED_PACKAGES index 1c7186d7..fa73b21a 100755 --- a/contrib/debian/REQUIRED_PACKAGES +++ b/contrib/debian/REQUIRED_PACKAGES @@ -32,9 +32,6 @@ install_ignore_missing() { install \ \ - autoconf \ - automake \ - autopoint \ clang \ dbus \ dbus-x11 \ @@ -67,7 +64,6 @@ install \ libtool \ libudev-dev \ locales \ - make \ meson \ mobile-broadband-provider-info \ pkg-config \ diff --git a/contrib/fedora/REQUIRED_PACKAGES b/contrib/fedora/REQUIRED_PACKAGES index 38ca9026..d47e6098 100755 --- a/contrib/fedora/REQUIRED_PACKAGES +++ b/contrib/fedora/REQUIRED_PACKAGES @@ -25,12 +25,6 @@ install() { fi } -install_ignore_missing() { - for p; do - install "$p" || : - done -} - if test "$NM_NO_EXTRA" != 1; then # these packages are convenient for developing, but not necessary # for CI testing. @@ -52,7 +46,7 @@ install \ clang \ dbus-devel \ dbus-x11 \ - dhclient \ + ethtool \ firewalld-filesystem \ gcc-c++ \ gettext-devel \ @@ -69,7 +63,6 @@ install \ libselinux-devel \ libtool \ libuuid-devel \ - make \ meson \ mobile-broadband-provider-info-devel \ newt-devel \ @@ -83,17 +76,18 @@ install \ readline-devel \ rpm-build \ systemd-devel \ - teamd-devel \ util-linux \ vala \ valgrind \ which \ - "${EXTRA_PACKAGES[@]}" + #end -# some packages don't exist in certain distributions. Install them one-by-one, and ignore errors. -install_ignore_missing \ +# Some packages don't exist in certain distributions. Ignore errors +# installing them, but still drag them in when available. +install --skip-unavailable \ black \ dbus-python \ + dhclient \ iproute-tc \ libasan \ libpsl-devel \ @@ -104,5 +98,6 @@ install_ignore_missing \ python-gobject-base \ python36-pexpect \ qt-devel \ + teamd-devel \ vala-devel \ - #end + "${EXTRA_PACKAGES[@]}" diff --git a/contrib/fedora/rpm/NetworkManager.spec b/contrib/fedora/rpm/NetworkManager.spec index 3c44d7f9..2af0f446 100644 --- a/contrib/fedora/rpm/NetworkManager.spec +++ b/contrib/fedora/rpm/NetworkManager.spec @@ -49,10 +49,8 @@ ############################################################################### %if 0%{?fedora} > 40 || 0%{?rhel} >= 10 -%bcond_without meson %bcond_with dhclient %else -%bcond_with meson %bcond_without dhclient %endif %bcond_without adsl @@ -206,6 +204,8 @@ Requires: dbus >= %{dbus_version} Requires: glib2 >= %{glib2_version} Requires: %{name}-libnm%{?_isa} = %{epoch}:%{version}-%{release} +Recommends: iputils + %if 0%{?rhel} == 8 # Older libndp versions use select() (rh#1933041). On well known distros, # choose a version that has the necessary fix. @@ -252,16 +252,10 @@ Conflicts: NetworkManager-initscripts-ifcfg-rh <= 1:1.47.5-3 Conflicts: NetworkManager-dispatcher-routing-rules <= 1:1.47.5-3 %endif -BuildRequires: make BuildRequires: gcc BuildRequires: libtool BuildRequires: pkgconfig -%if %{with meson} BuildRequires: meson -%else -BuildRequires: automake -BuildRequires: autoconf -%endif BuildRequires: gettext-devel >= 0.19.8 BuildRequires: dbus-devel >= %{dbus_version} @@ -521,6 +515,7 @@ Group: System Environment/Base %if %{with split_ifcfg_rh} Requires: %{name}-initscripts-ifcfg-rh %endif +Requires: ipcalc BuildArch: noarch Provides: %{name}-config-routing-rules = %{epoch}:%{version}-%{release} Obsoletes: %{name}-config-routing-rules < 1:1.31.0 @@ -594,7 +589,6 @@ Preferably use nmcli instead. %build -%if %{with meson} %meson \ -Db_ndebug=false \ --warnlevel 2 \ @@ -608,7 +602,6 @@ Preferably use nmcli instead. %else -Ddhclient=no \ %endif - -Ddhcpcanon=no \ -Ddhcpcd=no \ -Dcrypto=gnutls \ %if %{with debug} @@ -727,158 +720,8 @@ Preferably use nmcli instead. %meson_build -%else -# autotools -%if %{with regen_docs} -gtkdocize -%endif -autoreconf --install --force -%configure \ - --with-runstatedir=%{_rundir} \ - --enable-silent-rules=no \ - --enable-static=no \ - --with-nft=%{_sbindir}/nft \ - --with-iptables=%{_sbindir}/iptables \ -%if %{with dhclient} - --with-dhclient=%{_sbindir}/dhclient \ -%else - --with-dhclient=no \ -%endif - --with-dhcpcd=no \ - --with-dhcpcanon=no \ - --with-crypto=gnutls \ -%if %{with sanitizer} - --with-address-sanitizer=exec \ - --enable-undefined-sanitizer=yes \ -%else - --with-address-sanitizer=no \ - --enable-undefined-sanitizer=no \ -%endif -%if %{with debug} - --enable-more-logging=yes \ - --with-more-asserts=10000 \ -%else - --enable-more-logging=no \ - --with-more-asserts=0 \ -%endif - --enable-ld-gc=yes \ -%if %{with lto} - --enable-lto=yes \ -%else - --enable-lto=no \ -%endif - --with-libaudit=yes-disabled-by-default \ -%if 0%{?with_modem_manager_1} - --with-modem-manager-1=yes \ -%else - --with-modem-manager-1=no \ -%endif -%if %{with wifi} - --enable-wifi=yes \ -%if 0%{?fedora} - --with-wext=yes \ -%else - --with-wext=no \ -%endif -%else - --enable-wifi=no \ -%endif -%if %{with iwd} - --with-iwd=yes \ -%else - --with-iwd=no \ -%endif -%if %{with bluetooth} - --enable-bluez5-dun=yes \ -%else - --enable-bluez5-dun=no \ -%endif -%if %{with nmtui} - --with-nmtui=yes \ -%else - --with-nmtui=no \ -%endif -%if %{with nm_cloud_setup} - --with-nm-cloud-setup=yes \ -%else - --with-nm-cloud-setup=no \ -%endif - --enable-vala=yes \ - --enable-introspection=yes \ -%if %{with regen_docs} - --enable-gtk-doc=yes \ -%else - --enable-gtk-doc=no \ -%endif -%if %{with team} - --enable-teamdctl=yes \ -%else - --enable-teamdctl=no \ -%endif -%if %{with ovs} - --enable-ovs=yes \ -%else - --enable-ovs=no \ -%endif - --with-selinux=yes \ - --enable-polkit=yes \ - --enable-modify-system=yes \ - --enable-concheck=yes \ -%if 0%{?fedora} - --with-libpsl=yes \ -%else - --with-libpsl=no \ -%endif - --with-ebpf=%{ebpf_enabled} \ - --with-session-tracking=systemd \ - --with-suspend-resume=systemd \ - --with-systemdsystemunitdir=%{_unitdir} \ - --with-system-ca-path=/etc/pki/tls/cert.pem \ - --with-dbus-sys-dir=%{dbus_sys_dir} \ - --with-tests=yes \ -%if %{with test} - --enable-more-warnings=error \ -%else - --enable-more-warnings=yes \ -%endif - --with-valgrind=no \ -%if %{with ifcfg_rh} - --enable-ifcfg-rh=yes \ -%else - --enable-ifcfg-rh=no \ -%endif - --enable-ifupdown=no \ -%if %{with ppp} - --enable-ppp=yes \ - --with-pppd="%{_sbindir}/pppd" \ - --with-pppd-plugin-dir="%{_libdir}/pppd/%{ppp_version}" \ -%else - --enable-ppp=no \ -%endif - --enable-firewalld-zone=yes \ - --with-dist-version=%{version}-%{release} \ -%if %{with default_ifcfg_rh} - --with-config-plugins-default=ifcfg-rh \ -%endif -%if %{with ifcfg_migrate} - --with-config-migrate-ifcfg-rh-default=yes \ -%endif - --with-resolvconf=no \ - --with-netconfig=no \ - --with-config-dns-rc-manager-default=%{dns_rc_manager_default} \ - --with-config-logging-backend-default=journal \ - --disable-autotools-deprecation - -%make_build - -%endif - %install -%if %{with meson} %meson_install -%else -%make_install -%endif cp %{SOURCE1} %{buildroot}%{_sysconfdir}/%{name}/ @@ -918,7 +761,7 @@ rm -f %{buildroot}%{_libdir}/pppd/%{ppp_version}/*.la rm -f %{buildroot}%{nmplugindir}/*.la # Ensure the documentation timestamps are constant to avoid multilib conflicts -find %{buildroot}%{_datadir}/gtk-doc -exec touch --reference configure.ac '{}' \+ +find %{buildroot}%{_datadir}/gtk-doc -exec touch --reference meson.build '{}' \+ %if 0%{?__debug_package} && ! 0%{?flatpak} mkdir -p %{buildroot}%{_prefix}/src/debug/NetworkManager-%{real_version} @@ -932,21 +775,11 @@ touch %{buildroot}%{_sbindir}/ifdown %check -%if %{with meson} %if %{with test} %meson_test %else %ninja_test -C %{_vpath_builddir} || : %endif -%else -# autotools -%if %{with test} -make -k %{?_smp_mflags} check -%else -make -k %{?_smp_mflags} check || : -%endif -%endif - %pre if [ -f "%{_unitdir}/network-online.target.wants/NetworkManager-wait-online.service" ] ; then diff --git a/contrib/fedora/rpm/build.sh b/contrib/fedora/rpm/build.sh index 8160b915..f46b9ba5 100755 --- a/contrib/fedora/rpm/build.sh +++ b/contrib/fedora/rpm/build.sh @@ -1,6 +1,8 @@ #!/bin/bash #set -vx +set -e +set -o pipefail # Set arguments via environment variables. # Argument can be omitted and defaults will be detected. @@ -76,14 +78,7 @@ abs_path() { } get_version() { - local major minor micro - local F="${1:-"$GITDIR/configure.ac"}" - - vars="$(sed -n 's/^m4_define(\[nm_\(major\|minor\|micro\)_version\], *\[\([0-9]\+\)\]) *$/local \1='\''\2'\''/p' "$F" 2>/dev/null)" - eval "$vars" - - [[ -n "$major" && -n "$minor" && "$micro" ]] || return 1 - echo "$major.$minor.$micro" + grep -E -m1 '^\s+version:' "$GITDIR/meson.build" | cut -d"'" -f2 } write_changelog() { @@ -122,7 +117,7 @@ COMMIT="${COMMIT:-$(printf '%s' "$COMMIT_FULL" | sed 's/^\(.\{10\}\).*/\1/' || d BCOND_DEFAULT_DEBUG="${BCOND_DEFAULT_DEBUG:-0}" BCOND_DEFAULT_TEST="${BCOND_DEFAULT_TEST:-0}" BCOND_DEFAULT_LTO="${BCOND_DEFAULT_LTO}" -USERNAME="${USERNAME:-"$(git config user.name) <$(git config user.email)>"}" +USERNAME="${USERNAME:-"$(git config user.name || :) <$(git config user.email || :)>"}" SPECFILE="$(abs_path "$SPECFILE" "$SCRIPTDIR/NetworkManager.spec")" || die "invalid \$SPECFILE argument" SOURCE_FROM_GIT="$(coerce_bool "$SOURCE_FROM_GIT" "")" SOURCE="$(abs_path "$SOURCE")" || die "invalid \$SOURCE argument" @@ -269,7 +264,7 @@ ls -dla \ "$TEMP_LATEST"/RPMS/*/*.rpm \ "$TEMP_LATEST"/SRPMS/ \ "$TEMP_LATEST"/SRPMS/*.rpm \ - 2>/dev/null | sed 's/^/ /' + 2>/dev/null | sed 's/^/ /' || : LOG if [[ "$BUILDTYPE" == "SRPM" ]]; then LOG sudo $(command -v dnf &>/dev/null && echo dnf builddep || echo yum-builddep) $TEMP_LATEST/SRPMS/*.src.rpm diff --git a/contrib/fedora/rpm/build_clean.sh b/contrib/fedora/rpm/build_clean.sh index 37436c1b..b1944d77 100755 --- a/contrib/fedora/rpm/build_clean.sh +++ b/contrib/fedora/rpm/build_clean.sh @@ -1,5 +1,7 @@ #!/bin/bash +set -e +set -o pipefail die() { echo "$*" >&2 @@ -18,11 +20,9 @@ usage() { echo " -f|--force: force build, even if working directory is not clean and has local modifications" echo " -c|--clean: run \`git-clean -fdx :/\` before build" echo " -S|--srpm: only build the SRPM" - echo " -g|--git: create tarball from current git HEAD (skips make dist)" + echo " -g|--git: create tarball from current git HEAD (skips meson dist)" echo " -Q|--quick: only create the distribution tarball, without running checks" - echo " -N|--no-dist: skip creating the source tarball if you already did \`make dist\`" - echo " -m|--meson: (default) use meson to create the source tarball" - echo " -A|--autotools: use autotools to create the source tarball" + echo " -N|--no-dist: skip creating the source tarball if you already did \`meson dist\`" echo " -w|--with \$OPTION: pass --with \$OPTION to rpmbuild. For example --with debug" echo " -W|--without \$OPTION: pass --without \$OPTION to rpmbuild. For example --without debug" echo " -s|--snapshot TEXT: use TEXT as the snapshot version for the new package (overwrites \$NM_BUILD_SNAPSHOT environment)" @@ -99,14 +99,6 @@ while [[ $# -gt 0 ]]; do IGNORE_DIRTY=1 SOURCE_FROM_GIT=1 ;; - -m|--meson) - [ "$USE_AUTOTOOLS" = 1 ] && die "conflicting argument: $A when building with autotools is requested"; - USE_MESON=1 - ;; - -A|--autotools) - [ "$USE_MESON" = 1 ] && die "conflicting argument: $A when building with meson is explicitly requested"; - USE_AUTOTOOLS=1 - ;; -Q|--quick) QUICK=1 ;; @@ -199,100 +191,53 @@ if [[ $IGNORE_DIRTY != 1 ]]; then fi get_version_meson() { - meson introspect "$GITDIR/build" --projectinfo | jq -r .version + meson introspect "$GITDIR/build" --projectinfo | + python -c 'import json, sys; print(json.load(sys.stdin)["version"])' } if [[ $NO_DIST != 1 ]]; then - if [[ $USE_AUTOTOOLS != 1 ]]; then - meson setup "$GITDIR/build" \ - --prefix=/usr \ - --bindir=/usr/bin \ - --sbindir=/usr/sbin \ - --sysconfdir=/etc \ - --datadir=/usr/share \ - --includedir=/usr/include \ - --libdir=/usr/lib \ - --libexecdir=/usr/libexec \ - --localstatedir=/var \ - --sharedstatedir=/var/lib \ - --mandir=/usr/share/man \ - --infodir=/usr/share/info \ - -Ddocs=true \ - -Dintrospection=true \ - -Difcfg_rh=true \ - -Difupdown=true \ - -Dconfig_logging_backend_default=syslog \ - -Dconfig_wifi_backend_default=wpa_supplicant \ - -Dlibaudit=yes-disabled-by-default \ - -Dpolkit=true \ - -Dnm_cloud_setup=true \ - -Ddhclient=/usr/sbin/dhclient \ - -Dconfig_dhcp_default=internal \ - -Dconfig_dns_rc_manager_default=auto \ - -Diptables=/usr/sbin/iptables \ - -Dnft=/usr/bin/nft \ - || die "Error meson setup" - - VERSION="${VERSION:-$(get_version_meson || die "Could not read $VERSION")}" - if [[ $QUICK == 1 ]]; then - meson dist --allow-dirty -C "$GITDIR/build/" --no-tests || die "Error meson dist" - else - meson dist --allow-dirty -C "$GITDIR/build/" || die "Error meson dist with tests" - fi - export SOURCE="$(ls -1 "$GITDIR/build/meson-dist/NetworkManager-${VERSION}.tar.xz" 2>/dev/null | head -n1)" - else - ./autogen.sh \ - --with-runstatedir=/run \ - --program-prefix= \ - --prefix=/usr \ - --exec-prefix=/usr \ - --bindir=/usr/bin \ - --sbindir=/usr/sbin \ - --sysconfdir=/etc \ - --datadir=/usr/share \ - --includedir=/usr/include \ - --libdir=/usr/lib \ - --libexecdir=/usr/libexec \ - --localstatedir=/var \ - --sharedstatedir=/var/lib \ - --mandir=/usr/share/man \ - --infodir=/usr/share/info \ - \ - --disable-dependency-tracking \ - --enable-gtk-doc \ - --enable-introspection \ - --enable-ifcfg-rh \ - --enable-ifupdown \ - --with-config-logging-backend-default=syslog \ - --with-config-wifi-backend-default=wpa_supplicant \ - --with-libaudit=yes-disabled-by-default \ - --enable-polkit=yes \ - --with-nm-cloud-setup=yes \ - --with-dhclient=yes \ - --with-config-dhcp-default=internal \ - --with-config-dns-rc-manager-default=auto \ - \ - --with-iptables=/usr/sbin/iptables \ - --with-nft=/usr/sbin/nft \ - --disable-autotools-deprecation \ - \ - || die "Error autogen.sh" - if [[ $QUICK == 1 ]]; then - make dist -j 7 || die "Error make dist" - else - make distcheck -j 7 || die "Error make distcheck" - fi + meson setup "$GITDIR/build" \ + --prefix=/usr \ + --bindir=/usr/bin \ + --sbindir=/usr/sbin \ + --sysconfdir=/etc \ + --datadir=/usr/share \ + --includedir=/usr/include \ + --libdir=/usr/lib \ + --libexecdir=/usr/libexec \ + --localstatedir=/var \ + --sharedstatedir=/var/lib \ + --mandir=/usr/share/man \ + --infodir=/usr/share/info \ + -Ddocs=true \ + -Dintrospection=true \ + -Difcfg_rh=true \ + -Difupdown=true \ + -Dconfig_logging_backend_default=syslog \ + -Dconfig_wifi_backend_default=wpa_supplicant \ + -Dlibaudit=yes-disabled-by-default \ + -Dpolkit=true \ + -Dnm_cloud_setup=true \ + -Ddhclient=/usr/sbin/dhclient \ + -Dconfig_dhcp_default=internal \ + -Dconfig_dns_rc_manager_default=auto \ + -Diptables=/usr/sbin/iptables \ + -Dnft=/usr/bin/nft \ + || die "Error meson setup" + + VERSION="${VERSION:-$(get_version_meson || die "Could not read VERSION")}" + TEST_FLAG="" + if [[ $QUICK == 1 ]]; then + TEST_FLAG="--no-tests" fi + meson dist --allow-dirty -C "$GITDIR/build/" $TEST_FLAG || die "Error meson dist" + export SOURCE="$(ls -1 "$GITDIR/build/meson-dist/NetworkManager-${VERSION}.tar.xz" 2>/dev/null | head -n1)" fi if [[ "$ADD_WITH_TEST" == 1 ]]; then WITH_LIST=("${WITH_LIST[@]}" "--with" "test") fi -if [[ "$USE_AUTOTOOLS" != 1 ]]; then - WITH_LIST=("${WITH_LIST[@]}" "--with" "meson") -fi - export SOURCE_FROM_GIT export BUILDTYPE export NM_RPMBUILD_ARGS="${WITH_LIST[@]}" diff --git a/contrib/fedora/rpm/configure-for-system.sh b/contrib/fedora/rpm/configure-for-system.sh index 37966ae4..fff426bc 100755 --- a/contrib/fedora/rpm/configure-for-system.sh +++ b/contrib/fedora/rpm/configure-for-system.sh @@ -1,7 +1,7 @@ #!/bin/bash # Run configure/meson for NetworkManager in a way similar to how an RPM build does it. -# The effect is, that if you do `make install`, that it will overwrite the files that +# The effect is, that if you do `meson install`, that it will overwrite the files that # you'd usually get by installing the NetworkManager RPM. Also, it means you can afterwards # systemctl restart NetworkManager. @@ -30,10 +30,10 @@ vars_with_vals() { } usage() { - echo "$ $0 [-m|--meson ] [-a|--autotools] [-s|--show] [-B|--no-build] [-h|--help]" + echo "$ $0 [-m|--meson ] [-s|--show] [-B|--no-build] [-h|--help]" echo "" echo "Configure NetworkManager in a way that is similar to when building" - echo "RPMs of NetworkManager for Fedora/RHEL. The effect is that \`make install\`" + echo "RPMs of NetworkManager for Fedora/RHEL. The effect is that \`meson install\`" echo "will overwrite the files in /usr that you installed via the package management" echo "systemd. Also, subsequent \`systemctl restart NetworkManager\` works." echo "You don't want to do this on your real system, because it messes up your" @@ -44,14 +44,7 @@ usage() { } get_version() { - local major minor micro - local F="./configure.ac" - - vars="$(sed -n 's/^m4_define(\[nm_\(major\|minor\|micro\)_version\], *\[\([0-9]\+\)\]) *$/local \1='\''\2'\''/p' "$F" 2>/dev/null)" - eval "$vars" - - [[ -n "$major" && -n "$minor" && "$micro" ]] || return 1 - echo "$major.$minor.$micro" + grep -E -m1 '^\s+version:' meson.build | cut -d"'" -f2 } bool() { @@ -149,7 +142,6 @@ P_NOBUILD="${NOBUILD-0}" P_DEBUG="${DEBUG-1}" -P_BUILD_TYPE="${BUILD_TYPE-meson}" P_MESON_BUILDDIR="${MESON_BUILDDIR-./build}" [ -n "$MESON_BUILDDIR" ] && P_MESON_BUILDDIR_FORCE=1 P_CFLAGS="${CFLAGS-}" @@ -313,14 +305,10 @@ while [[ $# -gt 0 ]] ; do shift case "$A" in --meson|-m) - P_BUILD_TYPE=meson P_MESON_BUILDDIR="$1" P_MESON_BUILDDIR_FORCE=1 shift ;; - --autotools|-a) - P_BUILD_TYPE=autotools - ;; -s|--show) SHOW_CMD=show_cmd ;; @@ -338,7 +326,7 @@ while [[ $# -gt 0 ]] ; do esac done -if [ "$P_BUILD_TYPE" = meson -a "$P_MESON_BUILDDIR_FORCE" != 1 ]; then +if [ "$P_MESON_BUILDDIR_FORCE" != 1 ]; then if [ -d "$P_MESON_BUILDDIR" ]; then echo "Build directory '$P_MESON_BUILDDIR' chosen by default, but it exists and will be overwritten." \ "If you really want that, pass '--meson \"$P_MESON_BUILDDIR\"'." >&2 @@ -348,181 +336,88 @@ fi vars_with_vals -if [ "$P_BUILD_TYPE" == meson ] ; then - MESON_RECONFIGURE= - if test -d "$P_MESON_BUILDDIR" ; then - MESON_RECONFIGURE="--reconfigure" - fi - - $SHOW_CMD \ - env \ - CC="$P_CC" \ - CFLAGS="$P_CFLAGS" \ - meson setup\ - $MESON_RECONFIGURE \ - --buildtype=plain \ - --prefix="$D_PREFIX" \ - --libdir="$D_LIBDIR" \ - --libexecdir="$D_LIBEXECDIR" \ - --bindir="$D_BINDIR" \ - --sbindir="$D_SBINDIR" \ - --includedir="$D_INCLUDEDIR" \ - --datadir="$D_DATADIR" \ - --mandir="$D_MANDIR" \ - --infodir="$D_INFODIR" \ - --localedir="$D_DATADIR"/locale \ - --sysconfdir="$D_SYSCONFDIR" \ - --localstatedir="$D_LOCALSTATEDIR" \ - --sharedstatedir="$D_SHAREDSTATEDIR" \ - --wrap-mode=nodownload \ - --auto-features=enabled \ - -Db_ndebug=false \ - --warnlevel 2 \ - $(args_enable "$P_TEST" --werror) \ - -Dnft="${D_SBINDIR}/nft" \ - -Diptables="${D_SBINDIR}/iptables" \ - -Ddhclient="${D_SBINDIR}/dhclient" \ - -Ddhcpcanon=no \ - -Ddhcpcd=no \ - -Dconfig_dhcp_default="$P_DHCP_DEFAULT" \ - "-Dcrypto=$P_CRYPTO" \ - $(args_enable "$P_DEBUG" -Dmore_logging=true -Dmore_asserts=10000) \ - $(args_enable "$(bool_not_true "$P_DEBUG")" -Dmore_logging=false -Dmore_asserts=0 ) \ - -Dld_gc=true \ - -Db_lto="$(bool_true "$P_LTO")" \ - -Dlibaudit=yes-disabled-by-default \ - -Dmodem_manager="$(bool_true "$P_MODEM_MANAGER_1")" \ - $(args_enable "$P_WIFI" -Dwifi=true -Dwext="$(bool_true "$P_FEDORA")") \ - $(args_enable "$(bool_not_true "$P_WIFI")" -Dwifi=false ) \ - -Diwd="$(bool_true "$P_IWD")" \ - -Dbluez5_dun="$(bool_true "$P_BLUETOOTH")" \ - -Dnmtui="$(bool_true "$P_NMTUI")" \ - -Dnm_cloud_setup="$(bool_true "$P_NM_CLOUD_SETUP")" \ - -Dvapi=true \ - -Dintrospection=true \ - -Ddocs="$(bool_true "$P_REGEN_DOCS")" \ - -Dteamdctl="$(bool_true "$P_TEAM")" \ - -Dovs="$(bool_true "$P_OVS")" \ - -Dselinux=true \ - -Dpolkit=true \ - -Dconfig_auth_polkit_default=true \ - -Dmodify_system=true \ - -Dconcheck=true \ - -Dlibpsl="$(bool_true "$P_FEDORA")" \ - -Debpf="$(bool_true "$P_EBPF_ENABLED")" \ - -Dsession_tracking=systemd \ - -Dsuspend_resume=systemd \ - -Dsystemdsystemunitdir=/usr/lib/systemd/system \ - -Dsystem_ca_path=/etc/pki/tls/cert.pem \ - -Ddbus_conf_dir="$P_DBUS_SYS_DIR" \ - -Dtests=yes \ - -Dvalgrind=no \ - -Difcfg_rh=true \ - -Difupdown=false \ - $(args_enable "$P_PPP" -Dppp=true -Dpppd="$D_SBINDIR/pppd" -Dpppd_plugin_dir="$D_LIBDIR/pppd/$P_PPP_VERSION") \ - $(args_enable "$(bool_not_true "$P_PPP")" -Dppp=false ) \ - -Dfirewalld_zone="$(bool_true "$P_FIREWALLD_ZONE}")" \ - -Ddist_version="$P_VERSION-$P_RELEASE" \ - $(args_enable "$P_CONFIG_PLUGINS_DEFAULT_IFCFG_RH" -Dconfig_plugins_default=ifcfg-rh) \ - -Dresolvconf=no \ - -Dnetconfig=no \ - -Dconfig_dns_rc_manager_default="$P_DNS_RC_MANAGER_DEFAULT" \ - -Dconfig_logging_backend_default="$P_LOGGING_BACKEND_DEFAULT" \ - \ - "$P_MESON_BUILDDIR" \ - ; -else - if ! test -x ./configure ; then - if [ -z "$SHOW_CMD" ]; then - NOCONFIGURE=yes ./autogen.sh - fi - fi - $SHOW_CMD \ - ./configure \ - --build=x86_64-redhat-linux-gnu \ - --host=x86_64-redhat-linux-gnu \ - --program-prefix= \ - --prefix="$D_PREFIX" \ - --exec-prefix=/usr \ - --bindir="$D_BINDIR" \ - --sbindir="$D_SBINDIR" \ - --sysconfdir="$D_SYSCONFDIR" \ - --datadir="$D_DATADIR" \ - --includedir="$D_INCLUDEDIR" \ - --libdir="$D_LIBDIR" \ - --libexecdir="$D_LIBEXECDIR" \ - --localstatedir="$D_LOCALSTATEDIR" \ - --sharedstatedir="$D_SHAREDSTATEDIR" \ - --mandir="$D_MANDIR" \ - --infodir="$D_INFODIR" \ - \ - CC="$P_CC" \ - CFLAGS="$P_CFLAGS" \ - \ - --enable-dependency-tracking=yes \ - \ - --with-runstatedir="$D_RUNDIR" \ - --enable-silent-rules="$(bool_yes "$P_SILENT_RULES")" \ - --enable-static=no \ - --with-nft="${D_SBINDIR}/nft" \ - --with-iptables="${D_SBINDIR}/iptables" \ - --with-dhclient="${D_SBINDIR}/dhclient" \ - --with-dhcpcd=no \ - --with-dhcpcanon=no \ - --with-config-dhcp-default="$P_DHCP_DEFAULT" \ - --with-crypto="$P_CRYPTO" \ - $(args_enable "$P_SANITIZER" --with-address-sanitizer=exec --enable-undefined-sanitizer="$( (bool "$P_FEDORA" || test "$P_RHEL" -ge 8) && echo yes || echo no)" ) \ - $(args_enable "$(bool_not_true "$P_SANITIZER")" --with-address-sanitizer=no --enable-undefined-sanitizer=no ) \ - $(args_enable "$P_DEBUG" --enable-more-logging=yes --with-more-asserts=10000) \ - $(args_enable "$(bool_not_true "$P_DEBUG")" --enable-more-logging=no --with-more-asserts=0 ) \ - --enable-ld-gc=yes \ - --enable-lto="$(bool_yes "$P_LTO")" \ - --with-libaudit=yes-disabled-by-default \ - --with-modem-manager-1="$(bool_yes "$P_MODEM_MANAGER_1")" \ - $(args_enable "$P_WIFI" --enable-wifi=yes --with-wext="$(bool_yes "$P_FEDORA")") \ - $(args_enable "$(bool_not_true "$P_WIFI")" --enable-wifi=no ) \ - --with-iwd="$(bool_yes "$P_IWD")" \ - --enable-bluez5-dun="$(bool_yes "$P_BLUETOOTH")" \ - --with-nmtui="$(bool_yes "$P_NMTUI")" \ - --with-nm-cloud-setup="$(bool_yes "$P_NM_CLOUD_SETUP")" \ - --enable-vala=yes \ - --enable-introspection=yes \ - --enable-gtk-doc="$(bool_yes "$P_REGEN_DOCS")" \ - --enable-teamdctl="$(bool_yes "$P_TEAM")" \ - --enable-ovs="$(bool_yes "$P_OVS")" \ - --with-selinux=yes \ - --enable-polkit=yes \ - --enable-modify-system=yes \ - --enable-concheck=yes \ - --with-libpsl="$(bool_yes "$P_FEDORA")" \ - --with-ebpf="$(bool_yes "$P_EBPF_ENABLED")" \ - --with-session-tracking=systemd \ - --with-suspend-resume=systemd \ - --with-systemdsystemunitdir=/usr/lib/systemd/system \ - --with-system-ca-path=/etc/pki/tls/cert.pem \ - --with-dbus-sys-dir="$P_DBUS_SYS_DIR" \ - --with-tests=yes \ - --enable-more-warnings="$(bool "$P_TEST" && echo error || echo yes)" \ - --with-valgrind=no \ - --enable-ifcfg-rh=yes \ - --enable-ifupdown=no \ - $(args_enable "$P_PPP" --enable-ppp=yes --with-pppd="$D_SBINDIR/pppd" --with-pppd-plugin-dir="$D_LIBDIR/pppd/$P_PPP_VERSION") \ - $(args_enable "$(bool_not_true "$P_PPP")" --enable-ppp=no ) \ - --enable-firewalld-zone="$(bool_yes "$P_FIREWALLD_ZONE")" \ - --with-dist-version="$P_VERSION-$P_RELEASE" \ - $(args_enable "$P_CONFIG_PLUGINS_DEFAULT_IFCFG_RH" --with-config-plugins-default=ifcfg-rh) \ - --with-resolvconf=no \ - --with-netconfig=no \ - --with-config-dns-rc-manager-default="$P_DNS_RC_MANAGER_DEFAULT" \ - --with-config-logging-backend-default="$P_LOGGING_BACKEND_DEFAULT" \ - --disable-autotools-deprecation \ - ; +MESON_RECONFIGURE= +if test -d "$P_MESON_BUILDDIR" ; then + MESON_RECONFIGURE="--reconfigure" fi +$SHOW_CMD \ +env \ +CC="$P_CC" \ +CFLAGS="$P_CFLAGS" \ +meson setup\ + $MESON_RECONFIGURE \ + --buildtype=plain \ + --prefix="$D_PREFIX" \ + --libdir="$D_LIBDIR" \ + --libexecdir="$D_LIBEXECDIR" \ + --bindir="$D_BINDIR" \ + --sbindir="$D_SBINDIR" \ + --includedir="$D_INCLUDEDIR" \ + --datadir="$D_DATADIR" \ + --mandir="$D_MANDIR" \ + --infodir="$D_INFODIR" \ + --localedir="$D_DATADIR"/locale \ + --sysconfdir="$D_SYSCONFDIR" \ + --localstatedir="$D_LOCALSTATEDIR" \ + --sharedstatedir="$D_SHAREDSTATEDIR" \ + --wrap-mode=nodownload \ + --auto-features=enabled \ + -Db_ndebug=false \ + --warnlevel 2 \ + $(args_enable "$P_TEST" --werror) \ + -Dnft="${D_SBINDIR}/nft" \ + -Diptables="${D_SBINDIR}/iptables" \ + -Ddhclient="${D_SBINDIR}/dhclient" \ + -Ddhcpcd=no \ + -Dconfig_dhcp_default="$P_DHCP_DEFAULT" \ + "-Dcrypto=$P_CRYPTO" \ + $(args_enable "$P_DEBUG" -Dmore_logging=true -Dmore_asserts=10000) \ + $(args_enable "$(bool_not_true "$P_DEBUG")" -Dmore_logging=false -Dmore_asserts=0 ) \ + -Dld_gc=true \ + -Db_lto="$(bool_true "$P_LTO")" \ + -Dlibaudit=yes-disabled-by-default \ + -Dmodem_manager="$(bool_true "$P_MODEM_MANAGER_1")" \ + $(args_enable "$P_WIFI" -Dwifi=true -Dwext="$(bool_true "$P_FEDORA")") \ + $(args_enable "$(bool_not_true "$P_WIFI")" -Dwifi=false ) \ + -Diwd="$(bool_true "$P_IWD")" \ + -Dbluez5_dun="$(bool_true "$P_BLUETOOTH")" \ + -Dnmtui="$(bool_true "$P_NMTUI")" \ + -Dnm_cloud_setup="$(bool_true "$P_NM_CLOUD_SETUP")" \ + -Dvapi=true \ + -Dintrospection=true \ + -Ddocs="$(bool_true "$P_REGEN_DOCS")" \ + -Dteamdctl="$(bool_true "$P_TEAM")" \ + -Dovs="$(bool_true "$P_OVS")" \ + -Dselinux=true \ + -Dpolkit=true \ + -Dconfig_auth_polkit_default=true \ + -Dmodify_system=true \ + -Dconcheck=true \ + -Dlibpsl="$(bool_true "$P_FEDORA")" \ + -Debpf="$(bool_true "$P_EBPF_ENABLED")" \ + -Dsession_tracking=systemd \ + -Dsuspend_resume=systemd \ + -Dsystemdsystemunitdir=/usr/lib/systemd/system \ + -Dsystem_ca_path=/etc/pki/tls/cert.pem \ + -Ddbus_conf_dir="$P_DBUS_SYS_DIR" \ + -Dtests=yes \ + -Dvalgrind=no \ + -Difcfg_rh=true \ + -Difupdown=false \ + $(args_enable "$P_PPP" -Dppp=true -Dpppd="$D_SBINDIR/pppd" -Dpppd_plugin_dir="$D_LIBDIR/pppd/$P_PPP_VERSION") \ + $(args_enable "$(bool_not_true "$P_PPP")" -Dppp=false ) \ + -Dfirewalld_zone="$(bool_true "$P_FIREWALLD_ZONE}")" \ + -Ddist_version="$P_VERSION-$P_RELEASE" \ + $(args_enable "$P_CONFIG_PLUGINS_DEFAULT_IFCFG_RH" -Dconfig_plugins_default=ifcfg-rh) \ + -Dresolvconf=no \ + -Dnetconfig=no \ + -Dconfig_dns_rc_manager_default="$P_DNS_RC_MANAGER_DEFAULT" \ + -Dconfig_logging_backend_default="$P_LOGGING_BACKEND_DEFAULT" \ + \ + "$P_MESON_BUILDDIR" \ + ; + if ! bool "$P_NOBUILD" ; then - if [ "$P_BUILD_TYPE" == meson ] ; then - $SHOW_CMD ninja -C "$P_MESON_BUILDDIR" - else - $SHOW_CMD make -j 10 - fi + $SHOW_CMD ninja -C "$P_MESON_BUILDDIR" fi diff --git a/contrib/fedora/rpm/release.sh b/contrib/fedora/rpm/release.sh index 32e5e7d1..5a7e0c16 100755 --- a/contrib/fedora/rpm/release.sh +++ b/contrib/fedora/rpm/release.sh @@ -99,14 +99,17 @@ do_command() { fi } +SCRIPTDIR="$(dirname "$(readlink -f "$0")")" +GITDIR="$(cd "$SCRIPTDIR" && git rev-parse --show-toplevel || die "Could not get GITDIR")" + parse_version() { - local MAJ="$(sed -n '1,20 s/^m4_define(\[nm_major_version\], \[\([0-9]\+\)\])$/\1/p' ./configure.ac)" - local MIN="$(sed -n '1,20 s/^m4_define(\[nm_minor_version\], \[\([0-9]\+\)\])$/\1/p' ./configure.ac)" - local MIC="$(sed -n '1,20 s/^m4_define(\[nm_micro_version\], \[\([0-9]\+\)\])$/\1/p' ./configure.ac)" + local VERSION=$(grep -E -m1 '^\s+version:' "$GITDIR/meson.build" \ + | cut -d"'" -f2 \ + | sed 's/\./ /g') re='^(0|[1-9][0-9]*) (0|[1-9][0-9]*) (0|[1-9][0-9]*)$' - [[ "$MAJ $MIN $MIC" =~ $re ]] || return 1 - echo "$MAJ $MIN $MIC" + [[ "$VERSION" =~ $re ]] || return 1 + echo "$VERSION" } number_is_even() { @@ -150,25 +153,12 @@ check_gitlab_pipeline() { return 0 } -set_version_number_autotools() { - sed -i \ - -e '1,20 s/^m4_define(\[nm_major_version\], \[\([0-9]\+\)\])$/m4_define([nm_major_version], ['"$1"'])/' \ - -e '1,20 s/^m4_define(\[nm_minor_version\], \[\([0-9]\+\)\])$/m4_define([nm_minor_version], ['"$2"'])/' \ - -e '1,20 s/^m4_define(\[nm_micro_version\], \[\([0-9]\+\)\])$/m4_define([nm_micro_version], ['"$3"'])/' \ - ./configure.ac -} - -set_version_number_meson() { +set_version_number() { sed -i \ -e '1,20 s/^\( *version: *'\''\)[0-9]\+\.[0-9]\+\.[0-9]\+\('\'',\)$/\1'"$1.$2.$3"'\2/' \ meson.build } -set_version_number() { - set_version_number_autotools "$@" && - set_version_number_meson "$@" -} - check_news() { local mode="$1" shift @@ -377,7 +367,7 @@ if [ -n "$RELEASE_BRANCH" ]; then fi if [ "$ALLOW_LOCAL_BRANCHES" != 1 ]; then - cmp <(git show "$ORIGIN/nm-1-50:contrib/fedora/rpm/release.sh") "$BASH_SOURCE_ABSOLUTE" || die "$BASH_SOURCE is not identical to \`git show \"$ORIGIN/nm-1-50:contrib/fedora/rpm/release.sh\"\`" + cmp <(git show "$ORIGIN/main:contrib/fedora/rpm/release.sh") "$BASH_SOURCE_ABSOLUTE" || die "$BASH_SOURCE is not identical to \`git show \"$ORIGIN/main:contrib/fedora/rpm/release.sh\"\`" fi if ! check_news "$RELEASE_MODE" "@{VERSION_ARR[@]}" ; then diff --git a/contrib/fedora/utils/makerepo.sh b/contrib/fedora/utils/makerepo.sh index 266aac8f..e81c478b 100755 --- a/contrib/fedora/utils/makerepo.sh +++ b/contrib/fedora/utils/makerepo.sh @@ -262,6 +262,12 @@ detect_dirname() { # the unpacked tarball (that is, stripping the suffix). for T in $(ls -1 "$BUILD_TYPE"*"$suffix" 2>/dev/null); do D="${T%$suffix}" + # At some point FEDPKG changed the behavior of "prep" command + # now it generates the directory with "-build" suffix and the + # real directory inside. We just move it out. + rm -rf $D + mv $D-build/$D . + rm -rf $D-build [[ -d "$D" ]] && DIRS=("${DIRS[@]}" "$D") done done diff --git a/contrib/scripts/checkpatch.pl b/contrib/scripts/checkpatch.pl index c24db35e..2b4669c0 100755 --- a/contrib/scripts/checkpatch.pl +++ b/contrib/scripts/checkpatch.pl @@ -203,7 +203,7 @@ complain ("Don't use g_direct_equal() for hash tables, pass NULL for pointer equ complain ("Prefer nm_pint_hash()/nm_pint64_hash()/nm_pdouble_hash() over g_int_hash()/g_int64_hash()/g_double_hash(). Those use siphash24") if $line =~ /\b(g_int_hash|g_int64_hash|g_double_hash)\b/; complain ("Prefer nm_pint_equal()/nm_pint64_equal()/nm_pdouble_equal() over g_int_equal()/g_int64_equal()/g_double_equal(). Those names mirror our nm_p*_hash() functions") if $line =~ /\b(g_int_equal|g_int64_equal|g_double_equal)\b/; complain ("Avoid g_clear_pointer() and use nm_clear_pointer() (or nm_clear_g_free(), g_clear_object(), etc.)") if $line =~ /\b(g_clear_pointer)\b/; -complain ("Define setting properties with _nm_setting_property_define_direct_*() API") if $line =~ /g_param_spec_/ and $filename =~ /\/libnm-core-impl\/nm-setting/; +complain ("Define setting properties with _nm_setting_property_define_direct_*() API") if $line =~ /g_param_spec_/ and $filename =~ /\/libnm-core-impl\/nm-setting/ and (not $filename =~ /\/nm-setting-ip-config.c$/); complain ("Use nm_g_array_{index,first,last,index_p}() instead of g_array_index(), as it nm_assert()s for valid element size and out-of-bound access") if $line =~ /\bg_array_index\b/; complain ("Use spaces instead of tabs") if $line =~ /\t/; complain ("Prefer implementing private pointers via _NM_GET_PRIVATE() or _NM_GET_PRIVATE_PTR() (the latter, if the private data has an opqaue pointer in the header file)") if $line =~ /\b(g_type_class_add_private|G_TYPE_INSTANCE_GET_PRIVATE)\b/; diff --git a/contrib/scripts/nm-ci-run.sh b/contrib/scripts/nm-ci-run.sh index 162b9da1..3864620f 100755 --- a/contrib/scripts/nm-ci-run.sh +++ b/contrib/scripts/nm-ci-run.sh @@ -3,7 +3,6 @@ # Arguments via environment variables: # - CI # - CC -# - BUILD_TYPE # - CFLAGS # - WITH_DOCS @@ -50,23 +49,13 @@ grep -q '^NAME=.*\(Alpine\)' /etc/os-release && IS_ALPINE=1 ############################################################################### -if [ "$BUILD_TYPE" == meson ]; then - _TRUE=true - _FALSE=false -elif [ "$BUILD_TYPE" == autotools ]; then - _TRUE=yes - _FALSE=no -else - die "invalid \$BUILD_TYPE \"$BUILD_TYPE\"" -fi - _WITH_CRYPTO="gnutls" _WITH_WERROR=1 -_WITH_LIBTEAM="$_TRUE" -_WITH_DOCS="$_TRUE" -_WITH_SYSTEMD_LOGIND="$_TRUE" +_WITH_LIBTEAM="true" +_WITH_DOCS="true" +_WITH_SYSTEMD_LOGIND="true" if [ $IS_ALPINE = 1 ]; then - _WITH_SYSTEMD_LOGIND="$_FALSE" + _WITH_SYSTEMD_LOGIND="false" fi if [ -z "${NMTST_SEED_RAND+x}" ]; then @@ -92,9 +81,9 @@ fi if [ "$WITH_DOCS" != "" ]; then if _is_true "$WITH_DOCS"; then - _WITH_DOCS="$_TRUE" + _WITH_DOCS="true" else - _WITH_DOCS="$_FALSE" + _WITH_DOCS="false" fi fi @@ -149,149 +138,71 @@ _print_test_logs() { fi } -run_autotools() { - NOCONFIGURE=1 ./autogen.sh - mkdir ./build - if [ "$_WITH_WERROR" == 1 ]; then - _WITH_WERROR_VAL="error" - else - _WITH_WERROR_VAL="yes" - fi - DISABLE_DEPENDENCY_TRACKING= - if [ $IS_ALPINE = 1 ]; then - DISABLE_DEPENDENCY_TRACKING='--disable-dependency-tracking' - fi - pushd ./build - ../configure \ - --prefix="$PWD/INST" \ - $DISABLE_DEPENDENCY_TRACKING \ - \ - --enable-introspection=$_WITH_DOCS \ - --enable-gtk-doc=$_WITH_DOCS \ - --with-systemd-logind=$_WITH_SYSTEMD_LOGIND \ - --enable-more-warnings="$_WITH_WERROR_VAL" \ - --enable-tests=yes \ - --with-crypto=$_WITH_CRYPTO \ - \ - --with-ebpf=no \ - \ - --with-iwd=yes \ - --with-ofono=yes \ - --enable-teamdctl=$_WITH_LIBTEAM \ - \ - --with-dhcpcanon=yes \ - --with-dhcpcd=yes \ - --with-dhclient=yes \ - \ - --with-netconfig=/bin/nowhere/netconfig \ - --with-resolvconf=/bin/nowhere/resolvconf \ - \ - --enable-ifcfg-rh=yes \ - --enable-ifupdown=yes \ - --disable-autotools-deprecation \ - \ - #end - - if [ "$CONFIGURE_ONLY" != 1 ]; then - make -j 6 - make install - - export NM_TEST_CLIENT_CHECK_L10N=1 - - if ! make check -j 6 -k ; then - _print_test_logs "first-test" - echo ">>>> RUN SECOND TEST (start)" - NMTST_DEBUG="debug,TRACE,no-expect-message" make check -k || : - echo ">>>> RUN SECOND TEST (done)" - _print_test_logs "second-test" - die "autotools test failed" - fi - - if _with_valgrind; then - if ! NMTST_USE_VALGRIND=1 make check -j 3 -k ; then - _print_test_logs "(valgrind test)" - die "autotools+valgrind test failed" - fi - fi - fi - popd -} - ############################################################################### -run_meson() { - if [ "$_WITH_WERROR" == 1 ]; then - _WITH_WERROR_VAL="--werror" - else - _WITH_WERROR_VAL="" - fi - meson setup build \ - \ - -Dprefix="$PWD/INST" \ - \ - --warnlevel 2 \ - $_WITH_WERROR_VAL \ - \ - -D ld_gc=false \ - -D session_tracking=no \ - -D systemdsystemunitdir=no \ - -D systemd_journal=false \ - -D selinux=false \ - -D libaudit=no \ - -D libpsl=false \ - -D vapi=false \ - -D introspection=$_WITH_DOCS \ - -D qt=false \ - -D crypto=$_WITH_CRYPTO \ - -D docs=$_WITH_DOCS \ - \ - -D ebpf=false \ - \ - -D iwd=true \ - -D ofono=true \ - -D teamdctl=$_WITH_LIBTEAM \ - \ - -D dhclient=/bin/nowhere/dhclient \ - -D dhcpcanon=/bin/nowhere/dhcpcanon \ - -D dhcpcd=/bin/nowhere/dhcpd \ - \ - -D netconfig=/bin/nowhere/netconfig \ - -D resolvconf=/bin/nowhere/resolvconf \ - \ - -D ifcfg_rh=false \ - -D ifupdown=true \ - \ - #end - - export NM_TEST_CLIENT_CHECK_L10N=1 - - if [ "$CONFIGURE_ONLY" != 1 ]; then - ninja -C build -v - ninja -C build install +if [ "$_WITH_WERROR" == 1 ]; then + _WITH_WERROR_VAL="--werror" +else + _WITH_WERROR_VAL="" +fi - if ! meson test -C build -v --print-errorlogs ; then - echo ">>>> RUN SECOND TEST (start)" - NMTST_DEBUG="debug,TRACE,no-expect-message" \ - meson test -C build -v --print-errorlogs || : - echo ">>>> RUN SECOND TEST (done)" - die "meson test failed" - fi +meson setup build \ + \ + -Dprefix="$PWD/INST" \ + \ + --warnlevel 2 \ + $_WITH_WERROR_VAL \ + \ + -D ld_gc=false \ + -D session_tracking=no \ + -D systemdsystemunitdir=no \ + -D systemd_journal=false \ + -D selinux=false \ + -D libaudit=no \ + -D libpsl=false \ + -D vapi=false \ + -D introspection=$_WITH_DOCS \ + -D qt=false \ + -D crypto=$_WITH_CRYPTO \ + -D docs=$_WITH_DOCS \ + \ + -D ebpf=false \ + \ + -D iwd=true \ + -D ofono=true \ + -D teamdctl=$_WITH_LIBTEAM \ + \ + -D dhclient=/bin/nowhere/dhclient \ + -D dhcpcd=/bin/nowhere/dhcpd \ + \ + -D netconfig=/bin/nowhere/netconfig \ + -D resolvconf=/bin/nowhere/resolvconf \ + \ + -D ifcfg_rh=false \ + -D ifupdown=true \ + \ + #end + +export NM_TEST_CLIENT_CHECK_L10N=1 + +if [ "$CONFIGURE_ONLY" != 1 ]; then + ninja -C build -v + ninja -C build install + + if ! meson test -C build -v --print-errorlogs ; then + echo ">>>> RUN SECOND TEST (start)" + NMTST_DEBUG="debug,TRACE,no-expect-message" \ + meson test -C build -v --print-errorlogs || : + echo ">>>> RUN SECOND TEST (done)" + die "meson test failed" + fi - if _with_valgrind; then - if ! NMTST_USE_VALGRIND=1 meson test -C build -v --print-errorlogs ; then - _print_test_logs "(valgrind test)" - die "meson+valgrind test failed" - fi + if _with_valgrind; then + if ! NMTST_USE_VALGRIND=1 meson test -C build -v --print-errorlogs ; then + _print_test_logs "(valgrind test)" + die "meson+valgrind test failed" fi fi -} - -############################################################################### - -if [ "$BUILD_TYPE" == autotools ]; then - run_autotools -elif [ "$BUILD_TYPE" == meson ]; then - run_meson fi if [ "$USE_CCACHE" = 1 ]; then diff --git a/contrib/scripts/nm-copr-build.sh b/contrib/scripts/nm-copr-build.sh index 94c804fb..93dcc083 100755 --- a/contrib/scripts/nm-copr-build.sh +++ b/contrib/scripts/nm-copr-build.sh @@ -70,7 +70,7 @@ get_nm_git_bundle() { if [ -n "${NM_GIT_BUNDLE+x}" ]; then return 0 fi - NM_GIT_BUNDLE='https://download.copr.fedorainfracloud.org/results/networkmanager/NetworkManager-main/fedora-38-x86_64/06008259-nm-git-bundle/nm-git-bundle-20230606-102458.noarch.rpm' + NM_GIT_BUNDLE='https://download.copr.fedorainfracloud.org/results/networkmanager/NetworkManager-main/fedora-41-x86_64/08367599-nm-git-bundle/nm-git-bundle-20241209-150540.noarch.rpm' fi mkdir nm-git-bundle pushd nm-git-bundle diff --git a/data/meson.build b/data/meson.build index 79c88ed7..facdab8d 100644 --- a/data/meson.build +++ b/data/meson.build @@ -9,19 +9,25 @@ configure_file( if install_systemdunitdir services = [ - 'NetworkManager-dispatcher.service.in', - 'NetworkManager.service.in', - 'nm-priv-helper.service.in', - 'NetworkManager-wait-online.service.in', + 'NetworkManager-dispatcher.service', + 'NetworkManager.service', + 'nm-priv-helper.service', + 'NetworkManager-wait-online.service', ] foreach service: services configure_file( - input: service, - output: '@BASENAME@', + input: service + '.in', + output: service, install_dir: systemd_systemdsystemunitdir, configuration: data_conf, ) + + test( + 'check-' + service, + find_program(join_paths(source_root, 'src/tests/check-systemd-unit.sh')), + args: [ join_paths(meson.current_build_dir(), service) ], + ) endforeach if enable_ovs diff --git a/docs/api/Makefile.am b/docs/api/Makefile.am deleted file mode 100644 index 069fd639..00000000 --- a/docs/api/Makefile.am +++ /dev/null @@ -1,140 +0,0 @@ -AUTOMAKE_OPTIONS = 1.7 - -XSLTPROC = xsltproc --xinclude --nonet -XMLS = $(wildcard $(top_srcdir)/introspection/nm-*.xml) -GENERATED_FILES = - -if BUILD_DOCS -GENERATED_FILES += settings-spec.xml -endif - -# The name of the module. -DOC_MODULE=NetworkManager - -# The top-level SGML file. -DOC_MAIN_SGML_FILE=network-manager-docs.xml - -DOC_SOURCE_DIR=$(srcdir) - -# Extra options to supply to gtkdoc-mkdb -MKDB_OPTIONS=--sgml-mode --output-format=xml - -# Extra options to supply to gtkdoc-mktmpl -MKTMPL_OPTIONS= - -# Extra options to supply to gtkdoc-mkhtml -MKHTML_OPTIONS=--path="$(abs_srcdir)" - -# Files to be included in $(DOC_MAIN_SGML_FILE) -content_files = \ - $(GENERATED_FILES) \ - dbus-org.freedesktop.NetworkManager.AccessPoint.xml \ - dbus-org.freedesktop.NetworkManager.AgentManager.xml \ - dbus-org.freedesktop.NetworkManager.Connection.Active.xml \ - dbus-org.freedesktop.NetworkManager.DHCP4Config.xml \ - dbus-org.freedesktop.NetworkManager.DHCP6Config.xml \ - dbus-org.freedesktop.NetworkManager.Device.Adsl.xml \ - dbus-org.freedesktop.NetworkManager.Device.Bluetooth.xml \ - dbus-org.freedesktop.NetworkManager.Device.Bond.xml \ - dbus-org.freedesktop.NetworkManager.Device.Bridge.xml \ - dbus-org.freedesktop.NetworkManager.Device.Dummy.xml \ - dbus-org.freedesktop.NetworkManager.Device.Generic.xml \ - dbus-org.freedesktop.NetworkManager.Device.Hsr.xml \ - dbus-org.freedesktop.NetworkManager.Device.IPTunnel.xml \ - dbus-org.freedesktop.NetworkManager.Device.Infiniband.xml \ - dbus-org.freedesktop.NetworkManager.Device.Loopback.xml \ - dbus-org.freedesktop.NetworkManager.Device.Macsec.xml \ - dbus-org.freedesktop.NetworkManager.Device.Macvlan.xml \ - dbus-org.freedesktop.NetworkManager.Device.Modem.xml \ - dbus-org.freedesktop.NetworkManager.Device.OlpcMesh.xml \ - dbus-org.freedesktop.NetworkManager.Device.Statistics.xml \ - dbus-org.freedesktop.NetworkManager.Device.Team.xml \ - dbus-org.freedesktop.NetworkManager.Device.Tun.xml \ - dbus-org.freedesktop.NetworkManager.Device.Veth.xml \ - dbus-org.freedesktop.NetworkManager.Device.Vlan.xml \ - dbus-org.freedesktop.NetworkManager.Device.Vxlan.xml \ - dbus-org.freedesktop.NetworkManager.Device.WifiP2P.xml \ - dbus-org.freedesktop.NetworkManager.Device.WireGuard.xml \ - dbus-org.freedesktop.NetworkManager.Device.Wired.xml \ - dbus-org.freedesktop.NetworkManager.Device.Wireless.xml \ - dbus-org.freedesktop.NetworkManager.Device.xml \ - dbus-org.freedesktop.NetworkManager.DnsManager.xml \ - dbus-org.freedesktop.NetworkManager.IP4Config.xml \ - dbus-org.freedesktop.NetworkManager.IP6Config.xml \ - dbus-org.freedesktop.NetworkManager.PPP.xml \ - dbus-org.freedesktop.NetworkManager.SecretAgent.xml \ - dbus-org.freedesktop.NetworkManager.Settings.Connection.xml \ - dbus-org.freedesktop.NetworkManager.Settings.xml \ - dbus-org.freedesktop.NetworkManager.VPN.Connection.xml \ - dbus-org.freedesktop.NetworkManager.VPN.Plugin.xml \ - dbus-org.freedesktop.NetworkManager.xml \ - $(top_builddir)/src/libnm-core-public/nm-dbus-types.xml \ - $(top_builddir)/src/libnm-core-public/nm-vpn-dbus-types.xml \ - $(top_builddir)/man/nmcli.xml \ - $(top_builddir)/man/nmtui.xml \ - $(top_builddir)/man/nm-online.xml \ - $(top_builddir)/man/nm-initrd-generator.xml \ - $(top_builddir)/man/NetworkManager.xml \ - $(top_builddir)/man/NetworkManager-dispatcher.xml \ - $(top_builddir)/man/NetworkManager.conf.xml \ - $(top_builddir)/man/NetworkManager-wait-online.service.xml \ - $(top_builddir)/man/nmcli-examples.xml \ - $(top_builddir)/man/nm-settings-dbus.xml \ - $(top_builddir)/man/nm-settings-keyfile.xml \ - $(top_builddir)/man/nm-settings-nmcli.xml \ - version.xml \ - $(NULL) - - -if WITH_OPENVSWITCH -content_files += $(top_builddir)/man/nm-openvswitch.xml -endif - -if BUILD_NM_CLOUD_SETUP -content_files += $(top_builddir)/man/nm-cloud-setup.xml -endif - -if CONFIG_PLUGIN_IFCFG_RH -content_files += $(top_builddir)/man/nm-settings-ifcfg-rh.xml -endif - -include $(top_srcdir)/gtk-doc.make - -# workaround setup-build.stamp from gtk-doc.make, which copies -# the file as read-only. That breaks later build steps, as the -# file can no longer be written. Instead, copy the file with `cp -f` -# only. -setup-build.stamp: - -$(GTK_DOC_V_SETUP)if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ - files=`echo $(SETUP_FILES) $(DOC_MODULE).types`; \ - if test "x$$files" != "x" ; then \ - for file in $$files ; do \ - destdir=`dirname $(abs_builddir)/$$file`; \ - test -d "$$destdir" || mkdir -p "$$destdir"; \ - test -f $(abs_srcdir)/$$file && \ - ( cp -pf $(abs_srcdir)/$$file $(abs_builddir)/$$file ; \ - chmod u+w $(abs_builddir)/$$file ) || true; \ - done; \ - fi; \ - fi - $(AM_V_at)touch setup-build.stamp - -settings-spec.xml: settings-spec.xsl $(top_builddir)/man/nm-settings-docs-dbus.xml - $(AM_V_GEN) (! test -f $@ || chmod u+w $@) && xsltproc --output $@ $^ - -EXTRA_DIST += \ - version.xml.in \ - settings-spec.xsl \ - meson.build \ - $(GENERATED_FILES) \ - $(NULL) - -CLEANFILES += \ - html/* \ - tmpl/* \ - xml/* \ - NetworkManager-overrides.txt \ - NetworkManager-sections.txt \ - NetworkManager.actions \ - settings-spec.xml \ - $(NULL) diff --git a/docs/api/network-manager-docs.xml b/docs/api/network-manager-docs.xml index a7cf2461..caff6fa4 100644 --- a/docs/api/network-manager-docs.xml +++ b/docs/api/network-manager-docs.xml @@ -186,6 +186,7 @@ + diff --git a/docs/libnm/Makefile.am b/docs/libnm/Makefile.am deleted file mode 100644 index 87ab81cc..00000000 --- a/docs/libnm/Makefile.am +++ /dev/null @@ -1,117 +0,0 @@ -## Process this file with automake to produce Makefile.in -AUTOMAKE_OPTIONS = 1.6 - -check_local = - -# The name of the module -DOC_MODULE=libnm - -# The top-level SGML file. -DOC_MAIN_SGML_FILE=$(DOC_MODULE)-docs.xml - -# The directory containing the source code. Relative to $(srcdir). -# gtk-doc will search all .c & .h files beneath here for inline comments -# documenting functions and macros. -DOC_SOURCE_DIR= \ - $(top_builddir)/src/libnm-core-public \ - $(top_srcdir)/src/libnm-core-public \ - $(top_builddir)/src/libnm-core-impl \ - $(top_srcdir)/src/libnm-core-impl \ - $(top_srcdir)/src/libnm-client-public \ - $(top_builddir)/src/libnm-client-public \ - $(top_srcdir)/src/libnm-client-impl \ - $(top_builddir)/src/libnm-client-impl \ - $(NULL) - -# Extra options to supply to gtkdoc-scan. -SCAN_OPTIONS=--rebuild-types --rebuild-sections --ignore-decorators='NM_AVAILABLE_IN_\d+_\d+|NM_DEPRECATED_IN_\d+_\d+|NM_DEPRECATED_IN_\d+_\d+_FOR\(\)' - -# Extra options to supply to gtkdoc-mkdb. -MKDB_OPTIONS=--sgml-mode --output-format=xml - -# Extra options to supply to gtkdoc-fixref. -FIXXREF_OPTIONS= - -# Used for dependencies. -HFILE_GLOB=$(top_srcdir)/src/libnm-core-public/*.h $(top_srcdir)/src/libnm-client-public/*.h -CFILE_GLOB=$(top_srcdir)/src/libnm-core-impl/*.c $(top_srcdir)/src/libnm-client-impl/*.c - -# Header files to ignore when scanning. -IGNORE_HFILES= \ - nm-dbus-helpers.h \ - nm-default-libnm.h \ - nm-device-private.h \ - nm-dhcp4-config.h \ - nm-dhcp6-config.h \ - nm-dns-manager.h \ - nm-ip4-config.h \ - nm-ip6-config.h \ - nm-libnm-utils.h \ - nm-object-private.h \ - nm-remote-connection-private.h \ - \ - nm-connection-private.h \ - nm-default-libnm-core.h \ - nm-setting-private.h \ - nm-team-utils.h \ - nm-utils-private.h \ - \ - nm-core-tests-enum-types.h \ - test-general-enums.h \ - \ - $(NULL) - -# Images to copy into HTML directory. -HTML_IMAGES = libnm.png - -# Extra XML files that are included by $(DOC_MAIN_SGML_FILE). -content_files = version.xml - -# Other files to distribute. -extra_files = libnm.png - - -# CFLAGS and LDFLAGS for compiling scan program. Only needed -# if $(DOC_MODULE).types is non-empty. -GTKDOC_CFLAGS = \ - -I$(top_builddir)/src/libnm-core-public \ - -I$(top_srcdir)/src/libnm-core-public \ - -I$(top_srcdir)/src/libnm-client-public \ - -I$(top_builddir)/src/libnm-client-public \ - -DNM_VERSION_MIN_REQUIRED=NM_VERSION_0_9_8 \ - $(GLIB_CFLAGS) \ - $(SANITIZER_EXEC_CFLAGS) - -GTKDOC_LIBS = \ - $(top_builddir)/src/libnm-client-impl/libnm.la \ - $(GLIB_LIBS) \ - $(SANITIZER_EXEC_LDFLAGS) - - -# include common portion ... -include $(top_srcdir)/gtk-doc.make - -EXTRA_DIST += \ - version.xml.in \ - meson.build \ - $(NULL) - -CLEANFILES += \ - html/* \ - tmpl/* \ - xml/* \ - libnm-overrides.txt \ - libnm-sections.txt \ - libnm.actions \ - $(NULL) - -if GTK_DOC_BUILD_HTML -check-local-gtk-doc-patch: - @if grep -q -F 'nm-setting-user' "$(top_builddir)/docs/libnm/html/index.html"; then \ - echo "WARNING: The generated documentation has issues. Patch your gtk-doc (see https://gitlab.gnome.org/GNOME/gtk-doc/merge_requests/2). Let this check fail with NMTST_CHECK_GTK_DOC=1"; \ - test "$$NMTST_CHECK_GTK_DOC" != 1; \ - fi -check_local += check-local-gtk-doc-patch -endif - -check-local: $(check_local) diff --git a/docs/libnm/libnm-docs.xml b/docs/libnm/libnm-docs.xml index 1b37fdd2..4ed07939 100644 --- a/docs/libnm/libnm-docs.xml +++ b/docs/libnm/libnm-docs.xml @@ -325,6 +325,7 @@ print ("NetworkManager version " + client.get_version())]]> + @@ -378,6 +379,7 @@ print ("NetworkManager version " + client.get_version())]]> + diff --git a/examples/C/glib/vpn-import-libnm.c b/examples/C/glib/vpn-import-libnm.c index 61a33a76..fe22a7d1 100644 --- a/examples/C/glib/vpn-import-libnm.c +++ b/examples/C/glib/vpn-import-libnm.c @@ -107,7 +107,7 @@ connection_add(NMConnection *conn) nm_connection_get_id(conn), nm_connection_get_uuid(conn)); - rdata = (RequestData){ + rdata = (RequestData) { .loop = g_main_loop_new(NULL, FALSE), .rconn = NULL, .error = NULL, diff --git a/introspection/meson.build b/introspection/meson.build index 81afa7d6..16bb5ed4 100644 --- a/introspection/meson.build +++ b/introspection/meson.build @@ -18,6 +18,7 @@ ifaces = [ 'org.freedesktop.NetworkManager.Device.Hsr', 'org.freedesktop.NetworkManager.Device.IPTunnel', 'org.freedesktop.NetworkManager.Device.Infiniband', + 'org.freedesktop.NetworkManager.Device.Ipvlan', 'org.freedesktop.NetworkManager.Device.Loopback', 'org.freedesktop.NetworkManager.Device.Lowpan', 'org.freedesktop.NetworkManager.Device.Macsec', diff --git a/introspection/org.freedesktop.NetworkManager.Device.Ipvlan.xml b/introspection/org.freedesktop.NetworkManager.Device.Ipvlan.xml new file mode 100644 index 00000000..db7a779d --- /dev/null +++ b/introspection/org.freedesktop.NetworkManager.Device.Ipvlan.xml @@ -0,0 +1,38 @@ + + + + + + + + + + + + + + + + + + + diff --git a/m4/attributes.m4 b/m4/attributes.m4 deleted file mode 100644 index 7f785afa..00000000 --- a/m4/attributes.m4 +++ /dev/null @@ -1,290 +0,0 @@ -dnl Macros to check the presence of generic (non-typed) symbols. -dnl Copyright (c) 2006-2008 Diego Pettenò -dnl Copyright (c) 2006-2008 xine project -dnl Copyright (c) 2012 Lucas De Marchi -dnl -dnl This program is free software; you can redistribute it and/or modify -dnl it under the terms of the GNU General Public License as published by -dnl the Free Software Foundation; either version 2, or (at your option) -dnl any later version. -dnl -dnl This program is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -dnl GNU General Public License for more details. -dnl -dnl You should have received a copy of the GNU General Public License -dnl along with this program. -dnl -dnl As a special exception, the copyright owners of the -dnl macro gives unlimited permission to copy, distribute and modify the -dnl configure scripts that are the output of Autoconf when processing the -dnl Macro. You need not follow the terms of the GNU General Public -dnl License when using or distributing such scripts, even though portions -dnl of the text of the Macro appear in them. The GNU General Public -dnl License (GPL) does govern all other use of the material that -dnl constitutes the Autoconf Macro. -dnl -dnl This special exception to the GPL applies to versions of the -dnl Autoconf Macro released by this project. When you make and -dnl distribute a modified version of the Autoconf Macro, you may extend -dnl this special exception to the GPL to apply to your modified version as -dnl well. - -dnl Check if FLAG in ENV-VAR is supported by compiler and append it -dnl to WHERE-TO-APPEND variable. Note that we invert -Wno-* checks to -dnl -W* as gcc cannot test for negated warnings. If a C snippet is passed, -dnl use it, otherwise use a simple main() definition that just returns 0. -dnl CC_CHECK_FLAG_APPEND([WHERE-TO-APPEND], [ENV-VAR], [FLAG], [C-SNIPPET]) - -AC_DEFUN([CC_CHECK_FLAG_APPEND], [ - AC_CACHE_CHECK([if $CC supports flag $3 in envvar $2], - AS_TR_SH([cc_cv_$2_$3]), - [eval "AS_TR_SH([cc_save_$2])='${$2}'" - eval "AS_TR_SH([$2])='${cc_save_$2} -Werror `echo "$3" | sed 's/^-Wno-/-W/'`'" - AC_LINK_IFELSE([AC_LANG_SOURCE(ifelse([$4], [], - [int main(void) { return 0; } ], - [$4]))], - [eval "AS_TR_SH([cc_cv_$2_$3])='yes'"], - [eval "AS_TR_SH([cc_cv_$2_$3])='no'"]) - eval "AS_TR_SH([$2])='$cc_save_$2'"]) - - AS_IF([eval test x$]AS_TR_SH([cc_cv_$2_$3])[ = xyes], - [eval "$1='${$1} $3'"]) -]) - -dnl CC_CHECK_FLAGS_APPEND([WHERE-TO-APPEND], [ENV-VAR], [FLAG1 FLAG2], [C-SNIPPET]) -AC_DEFUN([CC_CHECK_FLAGS_APPEND], [ - for flag in [$3]; do - CC_CHECK_FLAG_APPEND([$1], [$2], $flag, [$4]) - done -]) - -dnl Check if the flag is supported by linker (cacheable) -dnl CC_CHECK_LDFLAGS([FLAG], [ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND]) - -AC_DEFUN([CC_CHECK_LDFLAGS], [ - AC_CACHE_CHECK([if $CC supports $1 flag], - AS_TR_SH([cc_cv_ldflags_$1]), - [ac_save_LDFLAGS="$LDFLAGS" - LDFLAGS="$LDFLAGS $1" - AC_LINK_IFELSE([int main() { return 1; }], - [eval "AS_TR_SH([cc_cv_ldflags_$1])='yes'"], - [eval "AS_TR_SH([cc_cv_ldflags_$1])="]) - LDFLAGS="$ac_save_LDFLAGS" - ]) - - AS_IF([eval test x$]AS_TR_SH([cc_cv_ldflags_$1])[ = xyes], - [$2], [$3]) -]) - -dnl define the LDFLAGS_NOUNDEFINED variable with the correct value for -dnl the current linker to avoid undefined references in a shared object. -AC_DEFUN([CC_NOUNDEFINED], [ - dnl We check $host for which systems to enable this for. - AC_REQUIRE([AC_CANONICAL_HOST]) - - case $host in - dnl FreeBSD (et al.) does not complete linking for shared objects when pthreads - dnl are requested, as different implementations are present; to avoid problems - dnl use -Wl,-z,defs only for those platform not behaving this way. - *-freebsd* | *-openbsd*) ;; - *) - dnl First of all check for the --no-undefined variant of GNU ld. This allows - dnl for a much more readable command line, so that people can understand what - dnl it does without going to look for what the heck -z defs does. - for possible_flags in "-Wl,--no-undefined" "-Wl,-z,defs"; do - CC_CHECK_LDFLAGS([$possible_flags], [LDFLAGS_NOUNDEFINED="$possible_flags"]) - break - done - ;; - esac - - AC_SUBST([LDFLAGS_NOUNDEFINED]) -]) - -dnl Check for a -Werror flag or equivalent. -Werror is the GCC -dnl and ICC flag that tells the compiler to treat all the warnings -dnl as fatal. We usually need this option to make sure that some -dnl constructs (like attributes) are not simply ignored. -dnl -dnl Other compilers don't support -Werror per se, but they support -dnl an equivalent flag: -dnl - Sun Studio compiler supports -errwarn=%all -AC_DEFUN([CC_CHECK_WERROR], [ - AC_CACHE_CHECK( - [for $CC way to treat warnings as errors], - [cc_cv_werror], - [CC_CHECK_CFLAGS_SILENT([-Werror], [cc_cv_werror=-Werror], - [CC_CHECK_CFLAGS_SILENT([-errwarn=%all], [cc_cv_werror=-errwarn=%all])]) - ]) -]) - -AC_DEFUN([CC_CHECK_ATTRIBUTE], [ - AC_REQUIRE([CC_CHECK_WERROR]) - AC_CACHE_CHECK([if $CC supports __attribute__(( ifelse([$2], , [$1], [$2]) ))], - AS_TR_SH([cc_cv_attribute_$1]), - [ac_save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $cc_cv_werror" - AC_COMPILE_IFELSE([AC_LANG_SOURCE([$3])], - [eval "AS_TR_SH([cc_cv_attribute_$1])='yes'"], - [eval "AS_TR_SH([cc_cv_attribute_$1])='no'"]) - CFLAGS="$ac_save_CFLAGS" - ]) - - AS_IF([eval test x$]AS_TR_SH([cc_cv_attribute_$1])[ = xyes], - [AC_DEFINE( - AS_TR_CPP([SUPPORT_ATTRIBUTE_$1]), 1, - [Define this if the compiler supports __attribute__(( ifelse([$2], , [$1], [$2]) ))] - ) - $4], - [$5]) -]) - -AC_DEFUN([CC_ATTRIBUTE_CONSTRUCTOR], [ - CC_CHECK_ATTRIBUTE( - [constructor],, - [void __attribute__((constructor)) ctor() { int a; }], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_FORMAT], [ - CC_CHECK_ATTRIBUTE( - [format], [format(printf, n, n)], - [void __attribute__((format(printf, 1, 2))) printflike(const char *fmt, ...) { fmt = (void *)0; }], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_FORMAT_ARG], [ - CC_CHECK_ATTRIBUTE( - [format_arg], [format_arg(printf)], - [char *__attribute__((format_arg(1))) gettextlike(const char *fmt) { fmt = (void *)0; }], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_VISIBILITY], [ - CC_CHECK_ATTRIBUTE( - [visibility_$1], [visibility("$1")], - [void __attribute__((visibility("$1"))) $1_function() { }], - [$2], [$3]) -]) - -AC_DEFUN([CC_ATTRIBUTE_NONNULL], [ - CC_CHECK_ATTRIBUTE( - [nonnull], [nonnull()], - [void __attribute__((nonnull())) some_function(void *foo, void *bar) { foo = (void*)0; bar = (void*)0; }], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_UNUSED], [ - CC_CHECK_ATTRIBUTE( - [unused], , - [void some_function(void *foo, __attribute__((unused)) void *bar);], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_SENTINEL], [ - CC_CHECK_ATTRIBUTE( - [sentinel], , - [void some_function(void *foo, ...) __attribute__((sentinel));], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_DEPRECATED], [ - CC_CHECK_ATTRIBUTE( - [deprecated], , - [void some_function(void *foo, ...) __attribute__((deprecated));], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_ALIAS], [ - CC_CHECK_ATTRIBUTE( - [alias], [weak, alias], - [void other_function(void *foo) { } - void some_function(void *foo) __attribute__((weak, alias("other_function")));], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_MALLOC], [ - CC_CHECK_ATTRIBUTE( - [malloc], , - [void * __attribute__((malloc)) my_alloc(int n);], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_PACKED], [ - CC_CHECK_ATTRIBUTE( - [packed], , - [struct astructure { char a; int b; long c; void *d; } __attribute__((packed));], - [$1], [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_CONST], [ - CC_CHECK_ATTRIBUTE( - [const], , - [int __attribute__((const)) twopow(int n) { return 1 << n; } ], - [$1], [$2]) -]) - -AC_DEFUN([CC_FLAG_VISIBILITY], [ - AC_REQUIRE([CC_CHECK_WERROR]) - AC_CACHE_CHECK([if $CC supports -fvisibility=hidden], - [cc_cv_flag_visibility], - [cc_flag_visibility_save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $cc_cv_werror" - CC_CHECK_CFLAGS_SILENT([-fvisibility=hidden], - cc_cv_flag_visibility='yes', - cc_cv_flag_visibility='no') - CFLAGS="$cc_flag_visibility_save_CFLAGS"]) - - AS_IF([test "x$cc_cv_flag_visibility" = "xyes"], - [AC_DEFINE([SUPPORT_FLAG_VISIBILITY], 1, - [Define this if the compiler supports the -fvisibility flag]) - $1], - [$2]) -]) - -AC_DEFUN([CC_FUNC_EXPECT], [ - AC_REQUIRE([CC_CHECK_WERROR]) - AC_CACHE_CHECK([if compiler has __builtin_expect function], - [cc_cv_func_expect], - [ac_save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $cc_cv_werror" - AC_COMPILE_IFELSE([AC_LANG_SOURCE( - [int some_function() { - int a = 3; - return (int)__builtin_expect(a, 3); - }])], - [cc_cv_func_expect=yes], - [cc_cv_func_expect=no]) - CFLAGS="$ac_save_CFLAGS" - ]) - - AS_IF([test "x$cc_cv_func_expect" = "xyes"], - [AC_DEFINE([SUPPORT__BUILTIN_EXPECT], 1, - [Define this if the compiler supports __builtin_expect() function]) - $1], - [$2]) -]) - -AC_DEFUN([CC_ATTRIBUTE_ALIGNED], [ - AC_REQUIRE([CC_CHECK_WERROR]) - AC_CACHE_CHECK([highest __attribute__ ((aligned ())) supported], - [cc_cv_attribute_aligned], - [ac_save_CFLAGS="$CFLAGS" - CFLAGS="$CFLAGS $cc_cv_werror" - for cc_attribute_align_try in 64 32 16 8 4 2; do - AC_COMPILE_IFELSE([AC_LANG_SOURCE([ - int main() { - static char c __attribute__ ((aligned($cc_attribute_align_try))) = 0; - return c; - }])], [cc_cv_attribute_aligned=$cc_attribute_align_try; break]) - done - CFLAGS="$ac_save_CFLAGS" - ]) - - if test "x$cc_cv_attribute_aligned" != "x"; then - AC_DEFINE_UNQUOTED([ATTRIBUTE_ALIGNED_MAX], [$cc_cv_attribute_aligned], - [Define the highest alignment supported]) - fi -]) diff --git a/m4/ax_lib_readline.m4 b/m4/ax_lib_readline.m4 deleted file mode 100644 index bbe42e74..00000000 --- a/m4/ax_lib_readline.m4 +++ /dev/null @@ -1,158 +0,0 @@ -# =========================================================================== -# https://www.gnu.org/software/autoconf-archive/ax_lib_readline.html -# =========================================================================== -# -# SYNOPSIS -# -# AX_LIB_READLINE -# -# DESCRIPTION -# -# Searches for a readline compatible library. If found, defines -# `HAVE_LIBREADLINE'. If the found library has the `add_history' function, -# sets also `HAVE_READLINE_HISTORY'. Also checks for the locations of the -# necessary include files and sets `HAVE_READLINE_H' or -# `HAVE_READLINE_READLINE_H' and `HAVE_READLINE_HISTORY_H' or -# 'HAVE_HISTORY_H' if the corresponding include files exists. -# -# The libraries that may be readline compatible are `libedit', -# `libeditline' and `libreadline'. Sometimes we need to link a termcap -# library for readline to work, this macro tests these cases too by trying -# to link with `libtermcap', `libcurses' or `libncurses' before giving up. -# -# Here is an example of how to use the information provided by this macro -# to perform the necessary includes or declarations in a C file: -# -# #ifdef HAVE_LIBREADLINE -# # if defined(HAVE_READLINE_READLINE_H) -# # include -# # elif defined(HAVE_READLINE_H) -# # include -# # else /* !defined(HAVE_READLINE_H) */ -# extern char *readline (); -# # endif /* !defined(HAVE_READLINE_H) */ -# char *cmdline = NULL; -# #else /* !defined(HAVE_READLINE_READLINE_H) */ -# /* no readline */ -# #endif /* HAVE_LIBREADLINE */ -# -# #ifdef HAVE_READLINE_HISTORY -# # if defined(HAVE_READLINE_HISTORY_H) -# # include -# # elif defined(HAVE_HISTORY_H) -# # include -# # else /* !defined(HAVE_HISTORY_H) */ -# extern void add_history (); -# extern int write_history (); -# extern int read_history (); -# # endif /* defined(HAVE_READLINE_HISTORY_H) */ -# /* no history */ -# #endif /* HAVE_READLINE_HISTORY */ -# -# LICENSE -# -# Copyright (c) 2008 Ville Laurikari -# -# Copying and distribution of this file, with or without modification, are -# permitted in any medium without royalty provided the copyright notice -# and this notice are preserved. This file is offered as-is, without any -# warranty. - -#serial 8 - -AU_ALIAS([VL_LIB_READLINE], [AX_LIB_READLINE]) -AC_DEFUN([AX_LIB_READLINE], [ - - AC_ARG_WITH(readline, - AS_HELP_STRING([--with-readline=auto|libreadline|libedit|none], [Using libreadline (auto) or libedit]), - [], - [with_readline=auto]) - - if test "$with_readline" != "none"; then - - AC_CACHE_CHECK([for a readline compatible library], - ax_cv_lib_readline, [ - ORIG_LIBS="$LIBS" - - if test "$with_readline" = "libreadline"; then - search_readlines="readline" - elif test "$with_readline" = "libedit"; then - search_readlines="edit" - elif test "$with_readline" = "auto"; then - search_readlines="readline edit" - else - AC_MSG_ERROR([invalid --with-readline option. Valid options are --with-readline=auto|libreadline|libedit|none]) - fi - - for readline_lib in $search_readlines; do - # prefer ncurses since we use it for nmtui too - for termcap_lib in "" termcap curses ncurses; do - if test -z "$termcap_lib"; then - TRY_LIB="-l$readline_lib" - else - TRY_LIB="-l$readline_lib -l$termcap_lib" - fi - LIBS="$ORIG_LIBS $TRY_LIB" - AC_LINK_IFELSE([AC_LANG_CALL([], [readline])], [ax_cv_lib_readline="$TRY_LIB"]) - if test -n "$ax_cv_lib_readline"; then - break - fi - done - if test -n "$ax_cv_lib_readline"; then - if test "$with_readline" = auto; then - if test "$readline_lib" = readline; then - with_readline=libreadline - else - with_readline=libedit - fi - fi - break - fi - done - if test -z "$ax_cv_lib_readline"; then - if test "$with_readline" != auto; then - AC_MSG_ERROR([libreadline not found for --with-readline=$with_readline"]) - fi - with_readline=none - ax_cv_lib_readline="no" - fi - LIBS="$ORIG_LIBS" - ]) - - if test "$ax_cv_lib_readline" != "no"; then - READLINE_LIBS="$ax_cv_lib_readline" - AC_SUBST(READLINE_LIBS) - AC_DEFINE(HAVE_LIBREADLINE, 1, - [Define if you have a readline compatible library]) - - if test "$with_readline" = "libedit"; then - AC_DEFINE(HAVE_EDITLINE_READLINE, 1, - [Explicitly set to 1 when libedit shall be used]) - else - AC_DEFINE(HAVE_EDITLINE_READLINE, 0, - [By default the libreadline is used as readline library]) - - fi - - ORIG_LIBS="$LIBS" - LIBS="$ORIG_LIBS $ax_cv_lib_readline" - AC_CACHE_CHECK([whether readline supports history], - ax_cv_lib_readline_history, [ - ax_cv_lib_readline_history="no" - AC_LINK_IFELSE([AC_LANG_CALL([], [history_set_history_state])], - [ax_cv_lib_readline_history="yes"]) - ]) - LIBS=$ORIG_LIBS - - if test "$ax_cv_lib_readline_history" = "yes"; then - AC_DEFINE(HAVE_READLINE_HISTORY, 1, - [Define if your readline library has \`history_set_history_state']) - AC_CHECK_HEADERS(readline/history.h histedit.h) - else - AC_DEFINE(HAVE_READLINE_HISTORY, 0, - [Explicitly set to 0 when libreadline shall not be used]) - fi - fi - - fi -])dnl diff --git a/m4/ax_pthread.m4 b/m4/ax_pthread.m4 deleted file mode 100644 index e5858e50..00000000 --- a/m4/ax_pthread.m4 +++ /dev/null @@ -1,522 +0,0 @@ -# =========================================================================== -# https://www.gnu.org/software/autoconf-archive/ax_pthread.html -# =========================================================================== -# -# SYNOPSIS -# -# AX_PTHREAD([ACTION-IF-FOUND[, ACTION-IF-NOT-FOUND]]) -# -# DESCRIPTION -# -# This macro figures out how to build C programs using POSIX threads. It -# sets the PTHREAD_LIBS output variable to the threads library and linker -# flags, and the PTHREAD_CFLAGS output variable to any special C compiler -# flags that are needed. (The user can also force certain compiler -# flags/libs to be tested by setting these environment variables.) -# -# Also sets PTHREAD_CC and PTHREAD_CXX to any special C compiler that is -# needed for multi-threaded programs (defaults to the value of CC -# respectively CXX otherwise). (This is necessary on e.g. AIX to use the -# special cc_r/CC_r compiler alias.) -# -# NOTE: You are assumed to not only compile your program with these flags, -# but also to link with them as well. For example, you might link with -# $PTHREAD_CC $CFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS -# $PTHREAD_CXX $CXXFLAGS $PTHREAD_CFLAGS $LDFLAGS ... $PTHREAD_LIBS $LIBS -# -# If you are only building threaded programs, you may wish to use these -# variables in your default LIBS, CFLAGS, and CC: -# -# LIBS="$PTHREAD_LIBS $LIBS" -# CFLAGS="$CFLAGS $PTHREAD_CFLAGS" -# CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS" -# CC="$PTHREAD_CC" -# CXX="$PTHREAD_CXX" -# -# In addition, if the PTHREAD_CREATE_JOINABLE thread-attribute constant -# has a nonstandard name, this macro defines PTHREAD_CREATE_JOINABLE to -# that name (e.g. PTHREAD_CREATE_UNDETACHED on AIX). -# -# Also HAVE_PTHREAD_PRIO_INHERIT is defined if pthread is found and the -# PTHREAD_PRIO_INHERIT symbol is defined when compiling with -# PTHREAD_CFLAGS. -# -# ACTION-IF-FOUND is a list of shell commands to run if a threads library -# is found, and ACTION-IF-NOT-FOUND is a list of commands to run it if it -# is not found. If ACTION-IF-FOUND is not specified, the default action -# will define HAVE_PTHREAD. -# -# Please let the authors know if this macro fails on any platform, or if -# you have any other suggestions or comments. This macro was based on work -# by SGJ on autoconf scripts for FFTW (http://www.fftw.org/) (with help -# from M. Frigo), as well as ac_pthread and hb_pthread macros posted by -# Alejandro Forero Cuervo to the autoconf macro repository. We are also -# grateful for the helpful feedback of numerous users. -# -# Updated for Autoconf 2.68 by Daniel Richard G. -# -# LICENSE -# -# Copyright (c) 2008 Steven G. Johnson -# Copyright (c) 2011 Daniel Richard G. -# Copyright (c) 2019 Marc Stevens -# -# This program is free software: you can redistribute it and/or modify it -# under the terms of the GNU General Public License as published by the -# Free Software Foundation, either version 3 of the License, or (at your -# option) any later version. -# -# This program is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General -# Public License for more details. -# -# You should have received a copy of the GNU General Public License along -# with this program. If not, see . -# -# As a special exception, the respective Autoconf Macro's copyright owner -# gives unlimited permission to copy, distribute and modify the configure -# scripts that are the output of Autoconf when processing the Macro. You -# need not follow the terms of the GNU General Public License when using -# or distributing such scripts, even though portions of the text of the -# Macro appear in them. The GNU General Public License (GPL) does govern -# all other use of the material that constitutes the Autoconf Macro. -# -# This special exception to the GPL applies to versions of the Autoconf -# Macro released by the Autoconf Archive. When you make and distribute a -# modified version of the Autoconf Macro, you may extend this special -# exception to the GPL to apply to your modified version as well. - -#serial 30 - -AU_ALIAS([ACX_PTHREAD], [AX_PTHREAD]) -AC_DEFUN([AX_PTHREAD], [ -AC_REQUIRE([AC_CANONICAL_TARGET]) -AC_REQUIRE([AC_PROG_CC]) -AC_REQUIRE([AC_PROG_SED]) -AC_LANG_PUSH([C]) -ax_pthread_ok=no - -# We used to check for pthread.h first, but this fails if pthread.h -# requires special compiler flags (e.g. on Tru64 or Sequent). -# It gets checked for in the link test anyway. - -# First of all, check if the user has set any of the PTHREAD_LIBS, -# etcetera environment variables, and if threads linking works using -# them: -if test "x$PTHREAD_CFLAGS$PTHREAD_LIBS" != "x"; then - ax_pthread_save_CC="$CC" - ax_pthread_save_CFLAGS="$CFLAGS" - ax_pthread_save_LIBS="$LIBS" - AS_IF([test "x$PTHREAD_CC" != "x"], [CC="$PTHREAD_CC"]) - AS_IF([test "x$PTHREAD_CXX" != "x"], [CXX="$PTHREAD_CXX"]) - CFLAGS="$CFLAGS $PTHREAD_CFLAGS" - LIBS="$PTHREAD_LIBS $LIBS" - AC_MSG_CHECKING([for pthread_join using $CC $PTHREAD_CFLAGS $PTHREAD_LIBS]) - AC_LINK_IFELSE([AC_LANG_CALL([], [pthread_join])], [ax_pthread_ok=yes]) - AC_MSG_RESULT([$ax_pthread_ok]) - if test "x$ax_pthread_ok" = "xno"; then - PTHREAD_LIBS="" - PTHREAD_CFLAGS="" - fi - CC="$ax_pthread_save_CC" - CFLAGS="$ax_pthread_save_CFLAGS" - LIBS="$ax_pthread_save_LIBS" -fi - -# We must check for the threads library under a number of different -# names; the ordering is very important because some systems -# (e.g. DEC) have both -lpthread and -lpthreads, where one of the -# libraries is broken (non-POSIX). - -# Create a list of thread flags to try. Items with a "," contain both -# C compiler flags (before ",") and linker flags (after ","). Other items -# starting with a "-" are C compiler flags, and remaining items are -# library names, except for "none" which indicates that we try without -# any flags at all, and "pthread-config" which is a program returning -# the flags for the Pth emulation library. - -ax_pthread_flags="pthreads none -Kthread -pthread -pthreads -mthreads pthread --thread-safe -mt pthread-config" - -# The ordering *is* (sometimes) important. Some notes on the -# individual items follow: - -# pthreads: AIX (must check this before -lpthread) -# none: in case threads are in libc; should be tried before -Kthread and -# other compiler flags to prevent continual compiler warnings -# -Kthread: Sequent (threads in libc, but -Kthread needed for pthread.h) -# -pthread: Linux/gcc (kernel threads), BSD/gcc (userland threads), Tru64 -# (Note: HP C rejects this with "bad form for `-t' option") -# -pthreads: Solaris/gcc (Note: HP C also rejects) -# -mt: Sun Workshop C (may only link SunOS threads [-lthread], but it -# doesn't hurt to check since this sometimes defines pthreads and -# -D_REENTRANT too), HP C (must be checked before -lpthread, which -# is present but should not be used directly; and before -mthreads, -# because the compiler interprets this as "-mt" + "-hreads") -# -mthreads: Mingw32/gcc, Lynx/gcc -# pthread: Linux, etcetera -# --thread-safe: KAI C++ -# pthread-config: use pthread-config program (for GNU Pth library) - -case $target_os in - - freebsd*) - - # -kthread: FreeBSD kernel threads (preferred to -pthread since SMP-able) - # lthread: LinuxThreads port on FreeBSD (also preferred to -pthread) - - ax_pthread_flags="-kthread lthread $ax_pthread_flags" - ;; - - hpux*) - - # From the cc(1) man page: "[-mt] Sets various -D flags to enable - # multi-threading and also sets -lpthread." - - ax_pthread_flags="-mt -pthread pthread $ax_pthread_flags" - ;; - - openedition*) - - # IBM z/OS requires a feature-test macro to be defined in order to - # enable POSIX threads at all, so give the user a hint if this is - # not set. (We don't define these ourselves, as they can affect - # other portions of the system API in unpredictable ways.) - - AC_EGREP_CPP([AX_PTHREAD_ZOS_MISSING], - [ -# if !defined(_OPEN_THREADS) && !defined(_UNIX03_THREADS) - AX_PTHREAD_ZOS_MISSING -# endif - ], - [AC_MSG_WARN([IBM z/OS requires -D_OPEN_THREADS or -D_UNIX03_THREADS to enable pthreads support.])]) - ;; - - solaris*) - - # On Solaris (at least, for some versions), libc contains stubbed - # (non-functional) versions of the pthreads routines, so link-based - # tests will erroneously succeed. (N.B.: The stubs are missing - # pthread_cleanup_push, or rather a function called by this macro, - # so we could check for that, but who knows whether they'll stub - # that too in a future libc.) So we'll check first for the - # standard Solaris way of linking pthreads (-mt -lpthread). - - ax_pthread_flags="-mt,-lpthread pthread $ax_pthread_flags" - ;; -esac - -# Are we compiling with Clang? - -AC_CACHE_CHECK([whether $CC is Clang], - [ax_cv_PTHREAD_CLANG], - [ax_cv_PTHREAD_CLANG=no - # Note that Autoconf sets GCC=yes for Clang as well as GCC - if test "x$GCC" = "xyes"; then - AC_EGREP_CPP([AX_PTHREAD_CC_IS_CLANG], - [/* Note: Clang 2.7 lacks __clang_[a-z]+__ */ -# if defined(__clang__) && defined(__llvm__) - AX_PTHREAD_CC_IS_CLANG -# endif - ], - [ax_cv_PTHREAD_CLANG=yes]) - fi - ]) -ax_pthread_clang="$ax_cv_PTHREAD_CLANG" - - -# GCC generally uses -pthread, or -pthreads on some platforms (e.g. SPARC) - -# Note that for GCC and Clang -pthread generally implies -lpthread, -# except when -nostdlib is passed. -# This is problematic using libtool to build C++ shared libraries with pthread: -# [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=25460 -# [2] https://bugzilla.redhat.com/show_bug.cgi?id=661333 -# [3] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=468555 -# To solve this, first try -pthread together with -lpthread for GCC - -AS_IF([test "x$GCC" = "xyes"], - [ax_pthread_flags="-pthread,-lpthread -pthread -pthreads $ax_pthread_flags"]) - -# Clang takes -pthread (never supported any other flag), but we'll try with -lpthread first - -AS_IF([test "x$ax_pthread_clang" = "xyes"], - [ax_pthread_flags="-pthread,-lpthread -pthread"]) - - -# The presence of a feature test macro requesting re-entrant function -# definitions is, on some systems, a strong hint that pthreads support is -# correctly enabled - -case $target_os in - darwin* | hpux* | linux* | osf* | solaris*) - ax_pthread_check_macro="_REENTRANT" - ;; - - aix*) - ax_pthread_check_macro="_THREAD_SAFE" - ;; - - *) - ax_pthread_check_macro="--" - ;; -esac -AS_IF([test "x$ax_pthread_check_macro" = "x--"], - [ax_pthread_check_cond=0], - [ax_pthread_check_cond="!defined($ax_pthread_check_macro)"]) - - -if test "x$ax_pthread_ok" = "xno"; then -for ax_pthread_try_flag in $ax_pthread_flags; do - - case $ax_pthread_try_flag in - none) - AC_MSG_CHECKING([whether pthreads work without any flags]) - ;; - - *,*) - PTHREAD_CFLAGS=`echo $ax_pthread_try_flag | sed "s/^\(.*\),\(.*\)$/\1/"` - PTHREAD_LIBS=`echo $ax_pthread_try_flag | sed "s/^\(.*\),\(.*\)$/\2/"` - AC_MSG_CHECKING([whether pthreads work with "$PTHREAD_CFLAGS" and "$PTHREAD_LIBS"]) - ;; - - -*) - AC_MSG_CHECKING([whether pthreads work with $ax_pthread_try_flag]) - PTHREAD_CFLAGS="$ax_pthread_try_flag" - ;; - - pthread-config) - AC_CHECK_PROG([ax_pthread_config], [pthread-config], [yes], [no]) - AS_IF([test "x$ax_pthread_config" = "xno"], [continue]) - PTHREAD_CFLAGS="`pthread-config --cflags`" - PTHREAD_LIBS="`pthread-config --ldflags` `pthread-config --libs`" - ;; - - *) - AC_MSG_CHECKING([for the pthreads library -l$ax_pthread_try_flag]) - PTHREAD_LIBS="-l$ax_pthread_try_flag" - ;; - esac - - ax_pthread_save_CFLAGS="$CFLAGS" - ax_pthread_save_LIBS="$LIBS" - CFLAGS="$CFLAGS $PTHREAD_CFLAGS" - LIBS="$PTHREAD_LIBS $LIBS" - - # Check for various functions. We must include pthread.h, - # since some functions may be macros. (On the Sequent, we - # need a special flag -Kthread to make this header compile.) - # We check for pthread_join because it is in -lpthread on IRIX - # while pthread_create is in libc. We check for pthread_attr_init - # due to DEC craziness with -lpthreads. We check for - # pthread_cleanup_push because it is one of the few pthread - # functions on Solaris that doesn't have a non-functional libc stub. - # We try pthread_create on general principles. - - AC_LINK_IFELSE([AC_LANG_PROGRAM([#include -# if $ax_pthread_check_cond -# error "$ax_pthread_check_macro must be defined" -# endif - static void *some_global = NULL; - static void routine(void *a) - { - /* To avoid any unused-parameter or - unused-but-set-parameter warning. */ - some_global = a; - } - static void *start_routine(void *a) { return a; }], - [pthread_t th; pthread_attr_t attr; - pthread_create(&th, 0, start_routine, 0); - pthread_join(th, 0); - pthread_attr_init(&attr); - pthread_cleanup_push(routine, 0); - pthread_cleanup_pop(0) /* ; */])], - [ax_pthread_ok=yes], - []) - - CFLAGS="$ax_pthread_save_CFLAGS" - LIBS="$ax_pthread_save_LIBS" - - AC_MSG_RESULT([$ax_pthread_ok]) - AS_IF([test "x$ax_pthread_ok" = "xyes"], [break]) - - PTHREAD_LIBS="" - PTHREAD_CFLAGS="" -done -fi - - -# Clang needs special handling, because older versions handle the -pthread -# option in a rather... idiosyncratic way - -if test "x$ax_pthread_clang" = "xyes"; then - - # Clang takes -pthread; it has never supported any other flag - - # (Note 1: This will need to be revisited if a system that Clang - # supports has POSIX threads in a separate library. This tends not - # to be the way of modern systems, but it's conceivable.) - - # (Note 2: On some systems, notably Darwin, -pthread is not needed - # to get POSIX threads support; the API is always present and - # active. We could reasonably leave PTHREAD_CFLAGS empty. But - # -pthread does define _REENTRANT, and while the Darwin headers - # ignore this macro, third-party headers might not.) - - # However, older versions of Clang make a point of warning the user - # that, in an invocation where only linking and no compilation is - # taking place, the -pthread option has no effect ("argument unused - # during compilation"). They expect -pthread to be passed in only - # when source code is being compiled. - # - # Problem is, this is at odds with the way Automake and most other - # C build frameworks function, which is that the same flags used in - # compilation (CFLAGS) are also used in linking. Many systems - # supported by AX_PTHREAD require exactly this for POSIX threads - # support, and in fact it is often not straightforward to specify a - # flag that is used only in the compilation phase and not in - # linking. Such a scenario is extremely rare in practice. - # - # Even though use of the -pthread flag in linking would only print - # a warning, this can be a nuisance for well-run software projects - # that build with -Werror. So if the active version of Clang has - # this misfeature, we search for an option to squash it. - - AC_CACHE_CHECK([whether Clang needs flag to prevent "argument unused" warning when linking with -pthread], - [ax_cv_PTHREAD_CLANG_NO_WARN_FLAG], - [ax_cv_PTHREAD_CLANG_NO_WARN_FLAG=unknown - # Create an alternate version of $ac_link that compiles and - # links in two steps (.c -> .o, .o -> exe) instead of one - # (.c -> exe), because the warning occurs only in the second - # step - ax_pthread_save_ac_link="$ac_link" - ax_pthread_sed='s/conftest\.\$ac_ext/conftest.$ac_objext/g' - ax_pthread_link_step=`AS_ECHO(["$ac_link"]) | sed "$ax_pthread_sed"` - ax_pthread_2step_ac_link="($ac_compile) && (echo ==== >&5) && ($ax_pthread_link_step)" - ax_pthread_save_CFLAGS="$CFLAGS" - for ax_pthread_try in '' -Qunused-arguments -Wno-unused-command-line-argument unknown; do - AS_IF([test "x$ax_pthread_try" = "xunknown"], [break]) - CFLAGS="-Werror -Wunknown-warning-option $ax_pthread_try -pthread $ax_pthread_save_CFLAGS" - ac_link="$ax_pthread_save_ac_link" - AC_LINK_IFELSE([AC_LANG_SOURCE([[int main(void){return 0;}]])], - [ac_link="$ax_pthread_2step_ac_link" - AC_LINK_IFELSE([AC_LANG_SOURCE([[int main(void){return 0;}]])], - [break]) - ]) - done - ac_link="$ax_pthread_save_ac_link" - CFLAGS="$ax_pthread_save_CFLAGS" - AS_IF([test "x$ax_pthread_try" = "x"], [ax_pthread_try=no]) - ax_cv_PTHREAD_CLANG_NO_WARN_FLAG="$ax_pthread_try" - ]) - - case "$ax_cv_PTHREAD_CLANG_NO_WARN_FLAG" in - no | unknown) ;; - *) PTHREAD_CFLAGS="$ax_cv_PTHREAD_CLANG_NO_WARN_FLAG $PTHREAD_CFLAGS" ;; - esac - -fi # $ax_pthread_clang = yes - - - -# Various other checks: -if test "x$ax_pthread_ok" = "xyes"; then - ax_pthread_save_CFLAGS="$CFLAGS" - ax_pthread_save_LIBS="$LIBS" - CFLAGS="$CFLAGS $PTHREAD_CFLAGS" - LIBS="$PTHREAD_LIBS $LIBS" - - # Detect AIX lossage: JOINABLE attribute is called UNDETACHED. - AC_CACHE_CHECK([for joinable pthread attribute], - [ax_cv_PTHREAD_JOINABLE_ATTR], - [ax_cv_PTHREAD_JOINABLE_ATTR=unknown - for ax_pthread_attr in PTHREAD_CREATE_JOINABLE PTHREAD_CREATE_UNDETACHED; do - AC_LINK_IFELSE([AC_LANG_PROGRAM([#include ], - [int attr = $ax_pthread_attr; return attr /* ; */])], - [ax_cv_PTHREAD_JOINABLE_ATTR=$ax_pthread_attr; break], - []) - done - ]) - AS_IF([test "x$ax_cv_PTHREAD_JOINABLE_ATTR" != "xunknown" && \ - test "x$ax_cv_PTHREAD_JOINABLE_ATTR" != "xPTHREAD_CREATE_JOINABLE" && \ - test "x$ax_pthread_joinable_attr_defined" != "xyes"], - [AC_DEFINE_UNQUOTED([PTHREAD_CREATE_JOINABLE], - [$ax_cv_PTHREAD_JOINABLE_ATTR], - [Define to necessary symbol if this constant - uses a non-standard name on your system.]) - ax_pthread_joinable_attr_defined=yes - ]) - - AC_CACHE_CHECK([whether more special flags are required for pthreads], - [ax_cv_PTHREAD_SPECIAL_FLAGS], - [ax_cv_PTHREAD_SPECIAL_FLAGS=no - case $target_os in - solaris*) - ax_cv_PTHREAD_SPECIAL_FLAGS="-D_POSIX_PTHREAD_SEMANTICS" - ;; - esac - ]) - AS_IF([test "x$ax_cv_PTHREAD_SPECIAL_FLAGS" != "xno" && \ - test "x$ax_pthread_special_flags_added" != "xyes"], - [PTHREAD_CFLAGS="$ax_cv_PTHREAD_SPECIAL_FLAGS $PTHREAD_CFLAGS" - ax_pthread_special_flags_added=yes]) - - AC_CACHE_CHECK([for PTHREAD_PRIO_INHERIT], - [ax_cv_PTHREAD_PRIO_INHERIT], - [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], - [[int i = PTHREAD_PRIO_INHERIT; - return i;]])], - [ax_cv_PTHREAD_PRIO_INHERIT=yes], - [ax_cv_PTHREAD_PRIO_INHERIT=no]) - ]) - AS_IF([test "x$ax_cv_PTHREAD_PRIO_INHERIT" = "xyes" && \ - test "x$ax_pthread_prio_inherit_defined" != "xyes"], - [AC_DEFINE([HAVE_PTHREAD_PRIO_INHERIT], [1], [Have PTHREAD_PRIO_INHERIT.]) - ax_pthread_prio_inherit_defined=yes - ]) - - CFLAGS="$ax_pthread_save_CFLAGS" - LIBS="$ax_pthread_save_LIBS" - - # More AIX lossage: compile with *_r variant - if test "x$GCC" != "xyes"; then - case $target_os in - aix*) - AS_CASE(["x/$CC"], - [x*/c89|x*/c89_128|x*/c99|x*/c99_128|x*/cc|x*/cc128|x*/xlc|x*/xlc_v6|x*/xlc128|x*/xlc128_v6], - [#handle absolute path differently from PATH based program lookup - AS_CASE(["x$CC"], - [x/*], - [ - AS_IF([AS_EXECUTABLE_P([${CC}_r])],[PTHREAD_CC="${CC}_r"]) - AS_IF([test "x${CXX}" != "x"], [AS_IF([AS_EXECUTABLE_P([${CXX}_r])],[PTHREAD_CXX="${CXX}_r"])]) - ], - [ - AC_CHECK_PROGS([PTHREAD_CC],[${CC}_r],[$CC]) - AS_IF([test "x${CXX}" != "x"], [AC_CHECK_PROGS([PTHREAD_CXX],[${CXX}_r],[$CXX])]) - ] - ) - ]) - ;; - esac - fi -fi - -test -n "$PTHREAD_CC" || PTHREAD_CC="$CC" -test -n "$PTHREAD_CXX" || PTHREAD_CXX="$CXX" - -AC_SUBST([PTHREAD_LIBS]) -AC_SUBST([PTHREAD_CFLAGS]) -AC_SUBST([PTHREAD_CC]) -AC_SUBST([PTHREAD_CXX]) - -# Finally, execute ACTION-IF-FOUND/ACTION-IF-NOT-FOUND: -if test "x$ax_pthread_ok" = "xyes"; then - ifelse([$1],,[AC_DEFINE([HAVE_PTHREAD],[1],[Define if you have POSIX threads libraries and header files.])],[$1]) - : -else - ax_pthread_ok=no - $2 -fi -AC_LANG_POP -])dnl AX_PTHREAD diff --git a/m4/compiler_options.m4 b/m4/compiler_options.m4 deleted file mode 100644 index 843eb7b4..00000000 --- a/m4/compiler_options.m4 +++ /dev/null @@ -1,227 +0,0 @@ -AC_DEFUN([_NM_COMPILER_FLAG], [ - CFLAGS_SAVED="$CFLAGS" - CFLAGS="$CFLAGS $GLIB_CFLAGS -Werror $1" - AC_MSG_CHECKING([whether $1 works as expected]) - - AC_COMPILE_IFELSE([AC_LANG_SOURCE([[]])], [ - AC_COMPILE_IFELSE([AC_LANG_SOURCE([[$2]])], [ - AC_MSG_RESULT(yes) - CFLAGS="$CFLAGS_SAVED" - $3 - ],[ - AC_MSG_RESULT(no) - CFLAGS="$CFLAGS_SAVED" - $4 - ]) - ],[ - AC_MSG_RESULT(not supported) - CFLAGS="$CFLAGS_SAVED" - ]) -]) - -dnl Check whether a particular compiler flag is supported, -dnl append it to the specified variable if the check succeeds. -dnl NM_COMPILER_FLAG([ENV-VAR], [FLAG], [ACTION-IF-SUPPORTED], [ACTION-IF-NOT-SUPPORTED]) -AC_DEFUN([NM_COMPILER_FLAG], [ - _NM_COMPILER_FLAG([$2], [], [ - eval "AS_TR_SH([$1])='$$1 $2'" - $3 - ], [$4]) -]) - -dnl Check whether a particular warning is supported. If yes, the flag -dnl is appended to [ENV-VAR]. -dnl NM_COMPILER_WARNING_FLAG([ENV-VAR], [WARNING]) -AC_DEFUN([NM_COMPILER_WARNING_FLAG], [ - dnl "-Wno-*" requires special handling, see https://gcc.gnu.org/wiki/FAQ#wnowarning. - _NM_COMPILER_FLAG([-Wall $(printf '%s' "$2" | sed -e 's/^-W\(no-\|no-error=\)/-W/')], [], [eval "AS_TR_SH([$1])='$$1 $2'"], []) -]) - -dnl Check whether a particular warning is not emitted with code provided, -dnl append an option to disable the warning to a specified variable if the check fails. -dnl Note that this always either adds -W$2 or -Wno-$2, depending on whether it's supported. -dnl NM_COMPILER_WARNING([ENV-VAR], [WARNING], [C-SNIPPET]) -AC_DEFUN([NM_COMPILER_WARNING], [ - _NM_COMPILER_FLAG([-W$2], [$3], [eval "AS_TR_SH([$1])='$$1 -W$2'"], [eval "AS_TR_SH([$1])='$$1 -Wno-$2'"]) -]) - -dnl NM_COMPILER_WARNINGS([ENV-VAR], [MORE-WARNINGS]) -AC_DEFUN([NM_COMPILER_WARNINGS], -[AC_ARG_ENABLE(more-warnings, - AS_HELP_STRING([--enable-more-warnings], [Possible values: no/yes/error]), - set_more_warnings="$enableval",set_more_warnings=$2) -AC_MSG_CHECKING(for more warnings) -if test "$GCC" = "yes" -a "$set_more_warnings" != "no"; then - AC_MSG_RESULT(yes) - - dnl This is enabled in clang by default, makes little sense, - dnl and causes the build to abort with -Werror. - CFLAGS_SAVED="$CFLAGS" - CFLAGS="$CFLAGS -Qunused-arguments" - AC_COMPILE_IFELSE([AC_LANG_SOURCE([])], eval "AS_TR_SH([$1])='$$1 -Qunused-arguments'", []) - CFLAGS="$CFLAGS_SAVED" - - dnl clang only warns about unknown warnings, unless - dnl called with "-Werror=unknown-warning-option" - dnl Test if the compiler supports that, and if it does - dnl attach it to the CFLAGS. - NM_COMPILER_WARNING([$1], [unknown-warning-option], []) - - CFLAGS_MORE_WARNINGS="-Wall" - - if test "x$enable_lto" = xyes; then - dnl With LTO and optimizations enabled, gcc 10.2.1-1.fc32 is really - dnl adamant to warn about correct uses of strncpy. Disable "-Wstringop-overflow". - _CFLAGS_MORE_WARNINGS_DISABLE_LTO="-Wno-stringop-overflow" - - dnl We want to build with "-Wmaybe-uninitialized" enabled. With LTO that - dnl can easily lead to false positives. For manual testing, disable the - dnl warning here by uncommenting the following line. - dnl _CFLAGS_MORE_WARNINGS_DISABLE_LTO="$_CFLAGS_MORE_WARNINGS_DISABLE_LTO -Wno-error=maybe-uninitialized" - else - _CFLAGS_MORE_WARNINGS_DISABLE_LTO= - fi - - if test "x$set_more_warnings" = xerror; then - CFLAGS_MORE_WARNINGS="$CFLAGS_MORE_WARNINGS -Werror" - fi - - for option in \ - $_CFLAGS_MORE_WARNINGS_DISABLE_LTO \ - -Wall \ - -Wextra \ - -Wcast-align=strict \ - -Wdeclaration-after-statement \ - -Wfloat-equal \ - -Wformat-nonliteral \ - -Wformat-security \ - -Wimplicit-function-declaration \ - -Wimplicit-int \ - -Winit-self \ - -Wint-conversion \ - -Wlogical-op \ - -Wmissing-declarations \ - -Wmissing-include-dirs \ - -Wmissing-prototypes \ - -Wold-style-definition \ - -Wparentheses-equality \ - -Wpointer-arith \ - -Wshadow \ - -Wshift-negative-value \ - -Wstrict-prototypes \ - -Wtypedef-redefinition \ - -Wundef \ - -Wunknown-attributes \ - -Wvla \ - -Wno-duplicate-decl-specifier \ - -Wno-format-truncation \ - -Wno-format-y2k \ - -Wno-gnu-variable-sized-type-not-at-end \ - -Wno-missing-field-initializers \ - -Wno-pragmas \ - -Wno-sign-compare \ - -Wno-tautological-constant-out-of-range-compare \ - -Wno-unknown-pragmas \ - -Wno-unused-parameter \ - ; do - dnl GCC 4.4 does not warn when checking for -Wno-* flags (https://gcc.gnu.org/wiki/FAQ#wnowarning) - _NM_COMPILER_FLAG([-Wall $(printf '%s' "$option" | sed -e 's/^-W\(no-\|no-error=\)/-W/')], [], - [CFLAGS_MORE_WARNINGS="$CFLAGS_MORE_WARNINGS $option"], []) - done - unset option - - dnl Disable warnings triggered by known compiler problems - - dnl https://bugzilla.gnome.org/show_bug.cgi?id=745821 - NM_COMPILER_WARNING([$1], [unknown-attributes], [#include ]) - - dnl https://bugzilla.gnome.org/show_bug.cgi?id=744473 - NM_COMPILER_WARNING([$1], [typedef-redefinition], [#include ]) - - dnl https://llvm.org/bugs/show_bug.cgi?id=21614 - NM_COMPILER_WARNING([$1], [array-bounds], - [#include ] - [void f () { strcmp ("something", "0"); }] - ) - - dnl https://llvm.org/bugs/show_bug.cgi?id=22949 - NM_COMPILER_WARNING([$1], [parentheses-equality], - [#include ] - [void f () { if (WIFCONTINUED(0)) return; }] - ) - - dnl systemd-dhcp's log_internal macro and our handle_warn are sometimes - dnl used in void context,u sometimes in int. Makes clang unhappy. - NM_COMPILER_WARNING([$1], [unused-value], - [#define yolo ({ (666 + 666); })] - [int f () { int i = yolo; yolo; return i; }] - ) - - dnl a new warning in gcc 8, glib 2.55 doesn't play nice yet - dnl https://bugzilla.gnome.org/show_bug.cgi?id=793272 - NM_COMPILER_WARNING([$1], [cast-function-type], - [#include ] - [typedef struct { GObject parent; } NMObject;] - [typedef struct { GObjectClass parent; } NMObjectClass;] - [static void nm_object_init (NMObject *object) { } ] - [static void nm_object_class_init (NMObjectClass *object) { }] - [G_DEFINE_TYPE (NMObject, nm_object, G_TYPE_OBJECT)] - ) - - dnl clang started supporting -Wimplicit-fallthrough, but it does not - dnl honor the code comments to suppress the warning. Disable the - dnl warning with clang. - dnl - NM_COMPILER_WARNING([$1], [implicit-fallthrough], - [int foo(int a); - int foo(int a) { - int r = 0; - switch (a) { - case 1: - r++; - /* fall-through */ - case 2: - r++; - break; - } - return r; - }] - ) - - eval "AS_TR_SH([$1])='$CFLAGS_MORE_WARNINGS $$1'" -else - AC_MSG_RESULT(no) -fi -]) - -AC_DEFUN([NM_LTO], -[AC_ARG_ENABLE(lto, AS_HELP_STRING([--enable-lto], [Enable Link Time Optimization for smaller size [default=no]])) -if (test "${enable_lto}" = "yes"); then - CC_CHECK_FLAG_APPEND([lto_flags], [CFLAGS], [-flto -flto-partition=none]) - if (test -n "${lto_flags}"); then - CFLAGS="-flto -flto-partition=none $CFLAGS" - else - AC_MSG_ERROR([Link Time Optimization -flto is not supported.]) - fi -else - enable_lto='no' -fi -]) - -AC_DEFUN([NM_LD_GC], -[AC_ARG_ENABLE(ld-gc, AS_HELP_STRING([--enable-ld-gc], [Enable garbage collection of unused symbols on linking [default=auto]])) -if (test "${enable_ld_gc}" != "no"); then - CC_CHECK_FLAG_APPEND([ld_gc_flags], [CFLAGS], [-fdata-sections -ffunction-sections -Wl,--gc-sections]) - if (test -n "${ld_gc_flags}"); then - enable_ld_gc="yes" - CFLAGS="$ld_gc_flags $CFLAGS" - else - if (test "${enable_ld_gc}" = "yes"); then - AC_MSG_ERROR([Unused symbol eviction requested but not supported.]) - else - enable_ld_gc="no" - fi - fi -fi -]) - diff --git a/m4/git-sha-record.m4 b/m4/git-sha-record.m4 deleted file mode 100644 index e259b39f..00000000 --- a/m4/git-sha-record.m4 +++ /dev/null @@ -1,15 +0,0 @@ -dnl GIT_SHA_RECORD($1, $2) -dnl -dnl $1: the name of the assigned variable. For example NM_GIT_SHA, -dnl NMA_GIT_SHA, LIBNL_GIT_SHA. -dnl $2: by default, a define to config.h is added. This can be -dnl suppressed by passing "no-config-h". -dnl -AC_DEFUN([GIT_SHA_RECORD], [ - m4_define([git_sha_record_v], - [m4_esyscmd([ ( [ -d ./.git/ ] && [ "$(readlink -f ./.git/)" = "$(readlink -f "$(git rev-parse --git-dir 2>/dev/null)" 2>/dev/null)" ] && git rev-parse --verify -q HEAD 2>/dev/null ) || true ])]) -$1=git_sha_record_v -if test ""$2"" != "no-config-h" ; then - AC_DEFINE_UNQUOTED($1,"$$1",[git commit id of the original source code version]) -fi -]) diff --git a/m4/gnome-code-coverage.m4 b/m4/gnome-code-coverage.m4 deleted file mode 100644 index 6c920dd5..00000000 --- a/m4/gnome-code-coverage.m4 +++ /dev/null @@ -1,142 +0,0 @@ -dnl GNOME_CODE_COVERAGE -dnl -dnl Defines CODE_COVERAGE_CFLAGS and CODE_COVERAGE_LDFLAGS which should be -dnl included in the CFLAGS and LIBS/LDFLAGS variables of every build target -dnl (program or library) which should be built with code coverage support. -dnl Also defines GNOME_CODE_COVERAGE_RULES which should be substituted in your -dnl Makefile; and $enable_code_coverage which can be used in subsequent -dnl configure output. -dnl -dnl Note that all optimisation flags in CFLAGS must be disabled when code -dnl coverage is enabled. -dnl -dnl Derived from Makefile.decl in GLib, originally licenced under LGPLv2.1+. -dnl This file is licenced under LGPLv2.1+. -dnl -dnl Usage example: -dnl configure.ac: -dnl GNOME_CODE_COVERAGE -dnl -dnl Makefile.am: -dnl @GNOME_CODE_COVERAGE_RULES@ -dnl my_program_LIBS = … $(CODE_COVERAGE_LDFLAGS) … -dnl my_program_CFLAGS = … $(CODE_COVERAGE_CFLAGS) … -dnl -dnl This results in a “check-code-coverage” rule being added to any Makefile.am -dnl which includes “@GNOME_CODE_COVERAGE_RULES@” (assuming the module has been -dnl configured with --enable-code-coverage). Running `make check-code-coverage` -dnl in that directory will run the module’s test suite (`make check`) and build -dnl a code coverage report detailing the code which was touched, then print the -dnl URI for the report. - -AC_DEFUN([GNOME_CODE_COVERAGE],[ - dnl Check for --enable-code-coverage - AC_MSG_CHECKING([whether to build with code coverage support]) - AC_ARG_ENABLE([code-coverage], AS_HELP_STRING([--enable-code-coverage], [Whether to enable code coverage support]),, enable_code_coverage=no) - AM_CONDITIONAL([CODE_COVERAGE_ENABLED], [test x$enable_code_coverage = xyes]) - AC_SUBST([CODE_COVERAGE_ENABLED], [$enable_code_coverage]) - AC_MSG_RESULT($enable_code_coverage) - - AS_IF([ test "$enable_code_coverage" = "yes" ], [ - dnl Check if gcc is being used - AS_IF([ test "$GCC" = "no" ], [ - AC_MSG_ERROR([not compiling with gcc, which is required for gcov code coverage]) - ]) - - AC_CHECK_PROG([LCOV], [lcov], [lcov]) - AC_CHECK_PROG([GENHTML], [genhtml], [genhtml]) - - AS_IF([ test -z "$LCOV" ], [ - AC_MSG_ERROR([lcov is needed to enable code coverage reporting]) - ]) - - AS_IF([ test -z "$GENHTML" ], [ - AC_MSG_ERROR([Could not find genhtml from the lcov package]) - ]) - - dnl Build the code coverage flags - CODE_COVERAGE_CFLAGS="-O0 -g -fprofile-arcs -ftest-coverage" - CODE_COVERAGE_LDFLAGS="-lgcov" - - AC_SUBST([CODE_COVERAGE_CFLAGS]) - AC_SUBST([CODE_COVERAGE_LDFLAGS]) - ]) - -GNOME_CODE_COVERAGE_RULES=' -# Code coverage -# -# Optional: -# - CODE_COVERAGE_DIRECTORY: Top-level directory for code coverage reporting. -# (Default: $(top_builddir)) -# - CODE_COVERAGE_OUTPUT_FILE: Filename and path for the .info file generated -# by lcov for code coverage. (Default: -# $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage.info) -# - CODE_COVERAGE_OUTPUT_DIRECTORY: Directory for generated code coverage -# reports to be created. (Default: -# $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage) -# - CODE_COVERAGE_LCOV_OPTIONS: Extra options to pass to the lcov instance. -# (Default: empty) -# - CODE_COVERAGE_GENHTML_OPTIONS: Extra options to pass to the genhtml -# instance. (Default: empty) -# - CODE_COVERAGE_IGNORE_PATTERN: Extra glob pattern of files to ignore -# -# The generated report will be titled using the $(PACKAGE_NAME) and -# $(PACKAGE_VERSION). In order to add the current git hash to the title, -# use the git-version-gen script, available online. - -# Optional variables -CODE_COVERAGE_DIRECTORY ?= $(top_builddir) -CODE_COVERAGE_OUTPUT_FILE ?= $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage.info -CODE_COVERAGE_OUTPUT_DIRECTORY ?= $(PACKAGE_NAME)-$(PACKAGE_VERSION)-coverage -CODE_COVERAGE_LCOV_OPTIONS ?= -CODE_COVERAGE_GENHTML_OPTIONS ?= -CODE_COVERAGE_IGNORE_PATTERN ?= - -code_coverage_quiet = $(code_coverage_quiet_$(V)) -code_coverage_quiet_ = $(code_coverage_quiet_$(AM_DEFAULT_VERBOSITY)) -code_coverage_quiet_0 = --quiet - -# Use recursive makes in order to ignore errors during check -check-code-coverage: -ifeq ($(CODE_COVERAGE_ENABLED),yes) - -$(MAKE) $(AM_MAKEFLAGS) -k check - $(MAKE) $(AM_MAKEFLAGS) code-coverage-capture -else - @echo "Need to reconfigure with --enable-code-coverage" -endif - -# Capture code coverage data -code-coverage-capture: code-coverage-capture-hook -ifeq ($(CODE_COVERAGE_ENABLED),yes) - $(LCOV) $(code_coverage_quiet) --directory $(CODE_COVERAGE_DIRECTORY) --capture --output-file "$(CODE_COVERAGE_OUTPUT_FILE).tmp" --test-name "$(PACKAGE_NAME)-$(PACKAGE_VERSION)" --no-checksum --compat-libtool $(CODE_COVERAGE_LCOV_OPTIONS) - $(LCOV) $(code_coverage_quiet) --directory $(CODE_COVERAGE_DIRECTORY) --remove "$(CODE_COVERAGE_OUTPUT_FILE).tmp" "/tmp/*" $(CODE_COVERAGE_IGNORE_PATTERN) --output-file "$(CODE_COVERAGE_OUTPUT_FILE)" - -@rm -f $(CODE_COVERAGE_OUTPUT_FILE).tmp - LANG=C $(GENHTML) $(code_coverage_quiet) --prefix $(CODE_COVERAGE_DIRECTORY) --output-directory "$(CODE_COVERAGE_OUTPUT_DIRECTORY)" --title "$(PACKAGE_NAME)-$(PACKAGE_VERSION) Code Coverage" --legend --show-details "$(CODE_COVERAGE_OUTPUT_FILE)" $(CODE_COVERAGE_GENHTML_OPTIONS) - @echo "file://$(abs_builddir)/$(CODE_COVERAGE_OUTPUT_DIRECTORY)/index.html" -else - @echo "Need to reconfigure with --enable-code-coverage" -endif - -# Hook rule executed before code-coverage-capture, overridable by the user -code-coverage-capture-hook: - -ifeq ($(CODE_COVERAGE_ENABLED),yes) -clean: code-coverage-clean -code-coverage-clean: - -$(LCOV) --directory $(top_builddir) -z - -rm -rf $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_FILE).tmp $(CODE_COVERAGE_OUTPUT_DIRECTORY) - -find . -name "*.gcda" -o -name "*.gcov" -delete -endif - -GITIGNOREFILES ?= -GITIGNOREFILES += $(CODE_COVERAGE_OUTPUT_FILE) $(CODE_COVERAGE_OUTPUT_DIRECTORY) - -DISTCHECK_CONFIGURE_FLAGS ?= -DISTCHECK_CONFIGURE_FLAGS += --disable-code-coverage - -.PHONY: check-code-coverage code-coverage-capture code-coverage-capture-hook code-coverage-clean -' - - AC_SUBST([GNOME_CODE_COVERAGE_RULES]) - m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([GNOME_CODE_COVERAGE_RULES])]) -]) diff --git a/m4/introspection.m4 b/m4/introspection.m4 deleted file mode 100644 index b3c2844e..00000000 --- a/m4/introspection.m4 +++ /dev/null @@ -1,92 +0,0 @@ -dnl Copyright 2009 Johan Dahlin -dnl -dnl This file is free software; the author(s) gives unlimited -dnl permission to copy and/or distribute it, with or without -dnl modifications, as long as this notice is preserved. -dnl - -# serial 1 - -m4_define([_GOBJECT_INTROSPECTION_CHECK_INTERNAL], -[ - AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first - AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first - AC_BEFORE([LT_INIT],[$0])dnl setup libtool first - - dnl enable/disable introspection - m4_if([$2], [require], - [dnl - enable_introspection=yes - ],[dnl - AC_ARG_ENABLE(introspection, - AS_HELP_STRING([--enable-introspection[=@<:@no/auto/yes@:>@]], - [Enable introspection for this build]),, - [enable_introspection=auto]) - ])dnl - - INTROSPECTION_SCANNER= - INTROSPECTION_COMPILER= - INTROSPECTION_GENERATE= - INTROSPECTION_GIRDIR= - INTROSPECTION_TYPELIBDIR= - - if test "x$enable_introspection" = "xno"; then - found_introspection="no" - else - PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], [ - INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0` - INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0` - INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0` - INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0` - INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)" - INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0` - INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0` - INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection - - AC_MSG_CHECKING([if $INTROSPECTION_SCANNER works]) - if CFLAGS="${CFLAGS} -Wno-error" "$INTROSPECTION_SCANNER" --namespace=test --library=c /dev/null --output /dev/null >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD; then - found_introspection=yes - else - found_introspection="no (compiler failure -- check config.log)" - fi - AC_MSG_RESULT([$found_introspection]) - ], [found_introspection="no (not installed)"]) - - if test "x$enable_introspection" = "xyes"; then - if test "x$found_introspection" != "xyes"; then - AC_MSG_ERROR([introspection enabled but can't be used]) - fi - elif test "x$enable_introspection" != "xauto"; then - AC_MSG_ERROR([invalid argument passed to --enable-introspection, should be one of @<:@no/auto/yes@:>@]) - fi - fi - - AC_SUBST(INTROSPECTION_SCANNER, 'CFLAGS="${CFLAGS} -Wno-error" '"$INTROSPECTION_SCANNER") - AC_SUBST(INTROSPECTION_COMPILER) - AC_SUBST(INTROSPECTION_GENERATE) - AC_SUBST(INTROSPECTION_GIRDIR) - AC_SUBST(INTROSPECTION_TYPELIBDIR) - AC_SUBST(INTROSPECTION_CFLAGS) - AC_SUBST(INTROSPECTION_LIBS) - AC_SUBST(INTROSPECTION_MAKEFILE) - - AM_CONDITIONAL(HAVE_INTROSPECTION, test "x$found_introspection" = "xyes") -]) - - -dnl Usage: -dnl GOBJECT_INTROSPECTION_CHECK([minimum-g-i-version]) - -AC_DEFUN([GOBJECT_INTROSPECTION_CHECK], -[ - _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1]) -]) - -dnl Usage: -dnl GOBJECT_INTROSPECTION_REQUIRE([minimum-g-i-version]) - - -AC_DEFUN([GOBJECT_INTROSPECTION_REQUIRE], -[ - _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1], [require]) -]) diff --git a/m4/vapigen.m4 b/m4/vapigen.m4 deleted file mode 100644 index a2055fe1..00000000 --- a/m4/vapigen.m4 +++ /dev/null @@ -1,87 +0,0 @@ -dnl vala.m4 -dnl -dnl Copyright 2012 Evan Nemerson -dnl -dnl This library is free software; you can redistribute it and/or -dnl modify it under the terms of the GNU Lesser General Public -dnl License as published by the Free Software Foundation; either -dnl version 2.1 of the License, or (at your option) any later version. -dnl -dnl This library is distributed in the hope that it will be useful, -dnl but WITHOUT ANY WARRANTY; without even the implied warranty of -dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -dnl Lesser General Public License for more details. -dnl -dnl You should have received a copy of the GNU Lesser General Public -dnl License along with this library. - -# VAPIGEN_CHECK([VERSION], [API_VERSION], [FOUND-INTROSPECTION]) -# -------------------------------------- -# Check that vapigen existence and version -# -# See http://live.gnome.org/Vala/UpstreamGuide for detailed documentation -AC_DEFUN([VAPIGEN_CHECK], -[ - AC_BEFORE([GOBJECT_INTROSPECTION_CHECK],[$0]) - AC_BEFORE([GOBJECT_INTROSPECTION_REQUIRE],[$0]) - - AC_ARG_ENABLE([vala], - AS_HELP_STRING([--enable-vala[=@<:@no/auto/yes@:>@]], - [build Vala bindings [default=auto]]),, - [enable_vala=auto]) - - AS_CASE([$enable_vala], [no], [], - [yes], [ - AS_IF([test "x$3" != "xyes" -a "x$found_introspection" != "xyes"], [ - AC_MSG_ERROR([Vala bindings require GObject Introspection]) - ]) - ], [auto], [ - AS_IF([test "x$3" != "xyes" -a "x$found_introspection" != "xyes"], [ - enable_vala=no - ]) - ], [ - AC_MSG_ERROR([Invalid argument passed to --enable-vala, should be one of @<:@no/auto/yes@:>@]) - ]) - - AS_IF([test "x$2" = "x"], [ - vapigen_pkg_name=vapigen - ], [ - vapigen_pkg_name=vapigen-$2 - ]) - AS_IF([test "x$1" = "x"], [ - vapigen_pkg="$vapigen_pkg_name" - ], [ - vapigen_pkg="$vapigen_pkg_name >= $1" - ]) - - PKG_PROG_PKG_CONFIG - - PKG_CHECK_EXISTS([$vapigen_pkg], [ - AS_IF([test "$enable_vala" = "auto"], [ - enable_vala=yes - ]) - ], [ - AS_CASE([$enable_vala], [yes], [ - AC_MSG_ERROR([$vapigen_pkg not found]) - ], [auto], [ - enable_vala=no - ]) - ]) - - AS_CASE([$enable_vala], - [yes], [ - VAPIGEN=`$PKG_CONFIG --variable=vapigen vapigen` - VAPIGEN_MAKEFILE=`$PKG_CONFIG --variable=datadir vapigen`/vala/Makefile.vapigen - AS_IF([test "x$2" = "x"], [ - VAPIGEN_VAPIDIR=`$PKG_CONFIG --variable=vapidir vapigen` - ], [ - VAPIGEN_VAPIDIR=`$PKG_CONFIG --variable=vapidir_versioned vapigen` - ]) - ]) - - AC_SUBST([VAPIGEN]) - AC_SUBST([VAPIGEN_VAPIDIR]) - AC_SUBST([VAPIGEN_MAKEFILE]) - - AM_CONDITIONAL(ENABLE_VAPIGEN, test "x$enable_vala" = "xyes") -]) diff --git a/man/NetworkManager-dispatcher.xml b/man/NetworkManager-dispatcher.xml index 807e5c4c..8c1e2d34 100644 --- a/man/NetworkManager-dispatcher.xml +++ b/man/NetworkManager-dispatcher.xml @@ -50,9 +50,10 @@ NetworkManager-dispatcher will execute scripts in the /{etc,usr/lib}/NetworkManager/dispatcher.d directory or subdirectories in - alphabetical order in response to network events. Each script should - be a regular executable file owned by root. Furthermore, it must not be - writable by group or other, and not setuid. + alphabetical order in response to network events. Files in /etc + take precedence over identically-named files in /usr/lib. + Each script should be a regular executable file owned by root. Furthermore, it must + not be writable by group or other, and not setuid. Each script receives two arguments, the first being the interface name of the diff --git a/man/NetworkManager.conf.xml b/man/NetworkManager.conf.xml index 474e7951..46528879 100644 --- a/man/NetworkManager.conf.xml +++ b/man/NetworkManager.conf.xml @@ -167,17 +167,14 @@ plugins-=remove-me dhcp - This key sets up what DHCP client - NetworkManager will use. Allowed values depend on build configuration and - typically include internal and dhcpcd. - Support for unmaintained dhclient client has been deprecated - and disabled by default. + This key sets up what DHCP client NetworkManager will + use. Allowed values depend on build configuration; this version of + NetworkManager was built with support for the following clients: + &NM_DHCP_CLIENTS_ENABLED_TEXT;. The internal client is built-in, while other options may require an external DHCP client to be installed. If this key is missing, &NM_CONFIG_DEFAULT_MAIN_DHCP; - is used with a fallback to other suppored clients in this order: - internal, dhcpcd, - dhclient. + is used with a fallback to other supported clients. no-auto-default @@ -335,20 +332,24 @@ no-auto-default=* systemd-resolved: NetworkManager will push the DNS configuration to systemd-resolved + dnsconfd: NetworkManager will + push the DNS configuration to dnsconfd and by default set ipvX.routed-dns to + yes, so servers are contacted through right interfaces. + none: NetworkManager will not modify resolv.conf. This implies rc-manager unmanaged - Note that the plugins dnsmasq and systemd-resolved - are caching local nameservers. + Note that the plugins dnsmasq,systemd-resolved + and dnsconfd are caching local nameservers. Hence, when NetworkManager writes &nmrundir;/resolv.conf and /etc/resolv.conf (according to rc-manager setting below), the name server there will be localhost only. NetworkManager also writes a file &nmrundir;/no-stub-resolv.conf that contains the original name servers pushed to the DNS plugin. - When using dnsmasq and systemd-resolved, - per-connection added dns servers will always be queried using + When using dnsmasq,systemd-resolved and + dnsconfd per-connection added dns servers will always be queried using the device the connection has been activated on. @@ -360,7 +361,7 @@ no-auto-default=* management mode. This option is about how NetworkManager writes to /etc/resolv.conf, if at all. The default value depends on NetworkManager build - options, and this version of NetworkManager was build with a default of + options, and this version of NetworkManager was built with a default of "&NM_CONFIG_DEFAULT_MAIN_RC_MANAGER;". Regardless of this setting, NetworkManager will always write its version of resolv.conf to its runtime state directory @@ -868,6 +869,10 @@ ipv6.ip6-privacy=0 connection.down-on-poweroff Whether the connection will be brought down before the system is powered off. + + connection.ip-ping-addresses-require-all + Whether it is sufficient for any ping check to succeed among the list of target addresses, or if all ping checks must succeed for the entire list of target addresses. + connection.mud-url If unspecified, MUD URL defaults to "none". @@ -937,6 +942,9 @@ ipv6.ip6-privacy=0 ip-tunnel.mtu If configured explicitly to 0, the MTU is not reconfigured during device activation unless it is required due to IPv6 constraints. If left unspecified, a DHCP/IPv6 SLAAC provided value is used or a default of 1500. + + ipv4.routed-dns + ipv4.dad-timeout @@ -950,10 +958,18 @@ ipv6.ip6-privacy=0 ipv4.dhcp-iaid If left unspecified, it defaults to "ifname". + + ipv4.dhcp-ipv6-only-preferred + If left unspecified, the "IPv6-only preferred" DHCPv4 option is disabled. + ipv4.dhcp-hostname-flags If left unspecified, the value 3 (fqdn-encoded,fqdn-serv-update) is used. + + ipv4.dhcp-send-hostname + Whether a hostname is sent to the DHCP server when acquiring a lease. When the property is not specified in the connection, the global value from NetworkManager configuration is looked up. If the global value is not set, the value from ipv4.dhcp-send-hostname-deprecated, which defaults to true, is used for backwards compatibility. In the future this will change and, in absence of a global default, it will always fallback to true. + ipv4.dhcp-send-release Whether the DHCP client will send RELEASE message when bringing the connection down. @@ -989,6 +1005,9 @@ ipv6.ip6-privacy=0 removes extraneous routes from the tables. + + ipv6.routed-dns + ipv6.addr-gen-mode If the per-profile setting is either "default" or "default-or-eui64", the @@ -1011,6 +1030,10 @@ ipv6.ip6-privacy=0 ipv6.dhcp-hostname-flags If left unspecified, the value 1 (fqdn-serv-update) is used. + + ipv6.dhcp-send-hostname + Whether a hostname is sent to the DHCP server when acquiring a lease. When the property is not specified in the connection, the global value from NetworkManager configuration is looked up. If the global value is not set, the value from ipv6.dhcp-send-hostname-deprecated, which defaults to true, is used for backwards compatibility. In the future this will change and, in absence of a global default, it will always fallback to true. + ipv6.dhcp-send-release Whether the DHCP client will send RELEASE message when bringing the connection down. @@ -1495,7 +1518,7 @@ managed=1 If set, controls what body content NetworkManager checks for when requesting the URI for connectivity checking. Note that this only compares - that the HTTP response starts with the specifid text, + that the HTTP response starts with the specified text, it does not compare the exact string. This behavior might change in the future, so avoid relying on it. If missing, the response defaults to "NetworkManager is online". @@ -1528,6 +1551,29 @@ managed=1 + + resolve-mode + + + String indicating how DNS servers retrieved from global configuration and connections + should be used. backup - Indicates that they can be freely merged + and used for the same purposes. prefer - Forbids DNS servers + retrieved from connections to be used for general queries that are not subdomains of + domains set by connection. exclusive - Forbids use of connection + DNS servers for any query. Currently relevant only for Dnsconfd plugin. + + + + + certification-authority + + + String specifying absolute path to bundle of CA certificates that must be used for + validation of certificates presented by DNS servers when encrypted DNS is used. + Currently relevant only for Dnsconfd plugin. + + + @@ -1553,8 +1599,24 @@ managed=1 servers - A list of addresses of DNS servers to be used for the given domain. - + A list of addresses of DNS servers to be used for the + given domain. Each server can be specified either as a + plain IP address or with a URI syntax. When it is + specified as an URI, the following forms are supported: + + + + dns+udp://ADDRESS[:PORT] : DNS + dns+tls://ADDRESS[:PORT][#SERVERNAME] : DNS over TLS + + + + ADDRESS is an IPv4 or IPv6 + address. When it is IPv6, it must be enclosed in square + brackets ('[' and ']'). When it is a IPv6 link-local + address, the address should be followed by a percent + sign ('%') and an interface name. + diff --git a/man/common.ent.in b/man/common.ent.in index 71a47f42..2d17b146 100644 --- a/man/common.ent.in +++ b/man/common.ent.in @@ -10,3 +10,4 @@ + diff --git a/man/nm-cloud-setup.xml b/man/nm-cloud-setup.xml index 7f9a7dbc..b24de6b9 100644 --- a/man/nm-cloud-setup.xml +++ b/man/nm-cloud-setup.xml @@ -184,6 +184,10 @@ NM_CLOUD_SETUP_ALIYUN: boolean, whether Alibaba Cloud (Aliyun) support is enabled. Defaults to no. + + NM_CLOUD_SETUP_OCI: boolean, whether Oracle Cloud (OCI) support is enabled. Defaults + to no. + @@ -417,6 +421,34 @@ ln -s /etc/systemd/system/timers.target.wants/nm-cloud-setup.timer /usr/lib/syst + + Oracle Cloud (OCI) + + For OCI, the tools tries to fetch configuration from http://169.254.169.254/. Currently, it only + configures IPv4 and does nothing about IPv6. It will do the following. + + + + First fetch http://169.254.169.254/opc/v2/instance to determine whether the + expected API is present. This determines whether OCI environment is detected and whether to proceed + to configure the host using OCI meta data. + + + Fetch http://169.254.169.254/opc/v2/vnics to get the configuration + for all the VNICs, getting their MAC address, private IP address, gateway and subnet block. + + + Then nm-cloud-setup iterates over all interfaces for which it could fetch a configuration. + If no ethernet device for the respective MAC address is found, it is skipped. + Also, if the device is currently not activated in NetworkManager or if the currently + activated profile has a user-data org.freedesktop.nm-cloud-setup.skip=yes, + it is skipped. Also, there is only one interface and one IP address, the tool does nothing. + Then the tool configures the system like doing for AWS environment. That is, using source based policy routing + with the tables/rules 30200/30400. + + + + diff --git a/man/nm-initrd-generator.xml b/man/nm-initrd-generator.xml index 51015ea8..2d3d8755 100644 --- a/man/nm-initrd-generator.xml +++ b/man/nm-initrd-generator.xml @@ -157,6 +157,9 @@ + + + @@ -225,6 +228,37 @@ + + NetworkManager supports the + =VALUE + kernel command line option to configure the DNS processing + mode. See the description of the "dns" key in + the "main section" paragraph of NetworkManager.conf5. For + example: rd.net.dns-backend=systemd-resolved, + rd.net.dns-backend=dnsconfd + + + + + NetworkManager supports the + =SERVER + kernel command line option to configure a global (non + interface-specific) DNS server. The option can be specified + multiple time to add more than one server. Each server can be + specified as a plain IP or as an URI according to the + description in the "global-dns-domains sections" paragraph of + NetworkManager.conf5. For + example: rd.net.dns=2001:db8::1, + rd.net.dns=dns+tls://192.0.2.0, + rd.net.dns=dns+tls://[2001:db8::2]:5353#example.org. + In addition, it supports configuring the "resolve-mode" + key in the global DNS configuration via the + command line option. + + + NetworkManager supports the ={CS0|CS4|CS6} diff --git a/man/nm-settings-nmcli.xsl b/man/nm-settings-nmcli.xsl index 2f1d035c..0da9d095 100644 --- a/man/nm-settings-nmcli.xsl +++ b/man/nm-settings-nmcli.xsl @@ -141,7 +141,14 @@ diff --git a/meson.build b/meson.build index 60782966..e976974e 100644 --- a/meson.build +++ b/meson.build @@ -2,11 +2,10 @@ project( 'NetworkManager', 'c', -# NOTE: When incrementing version also: -# - add corresponding NM_VERSION_x_y_z macros in -# "src/libnm-core-public/nm-version-macros.h.in" -# - update number in configure.ac - version: '1.50.2', +# NOTE: When incrementing version also add corresponding +# NM_VERSION_x_y_z macros in +# "src/libnm-core-public/nm-version-macros.h.in" + version: '1.51.90', license: 'GPL2+', default_options: [ 'buildtype=debugoptimized', @@ -174,11 +173,18 @@ endif enable_lto = get_option('b_lto') if enable_lto - # meson already adds '-flto' - lto_flag = '-flto-partition=none' - assert(cc.has_argument(lto_flag), '-flto-partition=none not supported. Disable link-time optimization with -Db_lto=false.') - common_flags += lto_flag - common_ldflags += lto_flag + if cc.get_id() == 'clang' + clang_version = cc.version() + if clang_version <= '18.0.0' + error('Clang version should be greater then 18.0.0 got : ' + clang_version) + endif + else + # Meson already adds '-flto' + lto_flag = '-flto-partition=none' + assert(cc.has_argument(lto_flag), '-flto-partition=none not supported. Disable link-time optimization with -Db_lto=false.') + common_flags += lto_flag + common_ldflags += lto_flag + endif endif common_flags += cc.get_supported_arguments([ @@ -625,8 +631,9 @@ config_h.set10('WITH_OFONO', enable_ofono) # DHCP client support config_dhcp_default = get_option('config_dhcp_default') config_h.set_quoted('NM_CONFIG_DEFAULT_MAIN_DHCP', config_dhcp_default) +config_dhcp_clients_enabled = [ 'internal' ] dhcp_summary = '' -foreach client : [ 'dhclient', 'dhcpcd', 'dhcpcanon' ] +foreach client : [ 'dhcpcd', 'dhclient' ] client_path = get_option(client) client_enable = (client_path != 'no') if client_enable @@ -656,6 +663,7 @@ foreach client : [ 'dhclient', 'dhcpcd', 'dhcpcanon' ] dhcp_summary += (' ' + client + ': ' + client_enable.to_string()) if (client_enable) dhcp_summary += (' ' + client_path) + config_dhcp_clients_enabled += client endif if (client == 'dhclient') dhcp_summary += ' (deprecated)' @@ -801,6 +809,7 @@ endif enable_nm_cloud_setup = get_option('nm_cloud_setup') if enable_nm_cloud_setup assert(libcurl_dep.found(), 'nm-cloud-setup requires libcurl library. Use -Dnm_cloud_setup=false to disable it') + assert(jansson_dep.found(), 'nm-cloud-setup requires jansson library. Use -Dnm_cloud_setup=false to disable it') endif enable_docs = get_option('docs') @@ -928,6 +937,7 @@ data_conf.set('NM_CONFIG_DEFAULT_MAIN_DHCP', config_dhcp_default) data_conf.set('NM_CONFIG_DEFAULT_MAIN_RC_MANAGER', config_dns_rc_manager_default) data_conf.set('NM_CONFIG_DEFAULT_MAIN_MIGRATE_IFCFG_RH_TEXT', config_migrate_ifcfg_rh_default) data_conf.set('NM_CONFIG_DEFAULT_WIFI_BACKEND_TEXT', config_wifi_backend_default) +data_conf.set('NM_DHCP_CLIENTS_ENABLED', ', '.join(config_dhcp_clients_enabled)) data_conf.set('NM_MAJOR_VERSION', nm_major_version) data_conf.set('NM_MICRO_VERSION', nm_micro_version) data_conf.set('NM_MINOR_VERSION', nm_minor_version) diff --git a/meson_options.txt b/meson_options.txt index 93eeac86..4bc11aa0 100644 --- a/meson_options.txt +++ b/meson_options.txt @@ -58,9 +58,8 @@ option('config_dns_rc_manager_default', type: 'combo', choices: ['auto', 'symlin # dhcp clients option('dhclient', type: 'string', value: 'no', description: 'Enable dhclient support (deprecated)') -option('dhcpcanon', type: 'string', value: '', description: 'Enable dhcpcanon support (experimental)') option('dhcpcd', type: 'string', value: '', description: 'Enable dhcpcd support') -option('config_dhcp_default', type: 'combo', choices: ['dhcpcanon', 'dhclient', 'dhcpcd', 'internal', 'nettools'], value: 'internal', description: 'Default configuration option for main.dhcp setting, used as fallback if the configuration option is unset') +option('config_dhcp_default', type: 'combo', choices: ['dhclient', 'dhcpcd', 'internal', 'nettools'], value: 'internal', description: 'Default configuration option for main.dhcp setting, used as fallback if the configuration option is unset') # miscellaneous option('introspection', type: 'boolean', value: true, description: 'Enable introspection for this build') diff --git a/po/de.po b/po/de.po index 5616c7c1..a2179089 100644 --- a/po/de.po +++ b/po/de.po @@ -24,8 +24,8 @@ msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: https://gitlab.freedesktop.org/NetworkManager/" "NetworkManager/issues\n" -"POT-Creation-Date: 2024-01-24 15:26+0000\n" -"PO-Revision-Date: 2024-01-26 23:04+0100\n" +"POT-Creation-Date: 2024-10-30 15:26+0000\n" +"PO-Revision-Date: 2024-10-26 12:49+0200\n" "Last-Translator: Tim Sabsch \n" "Language-Team: Deutsch \n" "Language: de\n" @@ -33,7 +33,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 3.4.2\n" +"X-Generator: Poedit 3.5\n" #: data/org.freedesktop.NetworkManager.policy.in.in:13 msgid "Enable or disable system networking" @@ -42,8 +42,8 @@ msgstr "System-Netzwerke aktivieren oder deaktivieren" #: data/org.freedesktop.NetworkManager.policy.in.in:14 msgid "System policy prevents enabling or disabling system networking" msgstr "" -"Die Systemrichtlinien verhindern die Aktivierung oder Deaktivierung von System-" -"Netzwerken" +"Die Systemrichtlinien verhindern die Aktivierung oder Deaktivierung von " +"System-Netzwerken" #: data/org.freedesktop.NetworkManager.policy.in.in:22 msgid "Reload NetworkManager configuration" @@ -55,8 +55,8 @@ msgstr "Die Systemrichtlinien verhindern das Neuladen von NetworkManager" #: data/org.freedesktop.NetworkManager.policy.in.in:32 msgid "" -"Put NetworkManager to sleep or wake it up (should only be used by system power " -"management)" +"Put NetworkManager to sleep or wake it up (should only be used by system " +"power management)" msgstr "" "NetworkManager in den Schlafzustand versetzen oder daraus aufwecken (Sollte " "nur von der System-Energieverwaltung verwendet werden)" @@ -104,7 +104,8 @@ msgstr "Die Kontrolle von Netzwerkverbindungen erlauben" #: data/org.freedesktop.NetworkManager.policy.in.in:69 msgid "System policy prevents control of network connections" -msgstr "Die Systemrichtlinien verhindern die Kontrolle von Netzwerkverbindungen" +msgstr "" +"Die Systemrichtlinien verhindern die Kontrolle von Netzwerkverbindungen" #: data/org.freedesktop.NetworkManager.policy.in.in:78 msgid "Allow control of Wi-Fi scans" @@ -119,7 +120,8 @@ msgid "Connection sharing via a protected Wi-Fi network" msgstr "Verbindungsfreigabe über ein geschütztes WLAN-Netzwerk" #: data/org.freedesktop.NetworkManager.policy.in.in:89 -msgid "System policy prevents sharing connections via a protected Wi-Fi network" +msgid "" +"System policy prevents sharing connections via a protected Wi-Fi network" msgstr "" "Die Systemrichtlinien verhindern Verbindungsfreigaben über ein geschütztes " "WLAN-Netzwerk" @@ -151,8 +153,8 @@ msgstr "Netzwerkverbindungen für alle Benutzer bearbeiten" #: data/org.freedesktop.NetworkManager.policy.in.in:117 msgid "System policy prevents modification of network settings for all users" msgstr "" -"Die Systemrichtlinien verhindern das Bearbeiten von Netzwerkeinstellungen für " -"alle Benutzer" +"Die Systemrichtlinien verhindern das Bearbeiten von Netzwerkeinstellungen " +"für alle Benutzer" #: data/org.freedesktop.NetworkManager.policy.in.in:126 msgid "Modify persistent system hostname" @@ -170,7 +172,8 @@ msgstr "Die dauerhafte globale DNS-Konfiguration bearbeiten" #: data/org.freedesktop.NetworkManager.policy.in.in:137 msgid "" -"System policy prevents modification of the persistent global DNS configuration" +"System policy prevents modification of the persistent global DNS " +"configuration" msgstr "" "Die Systemrichtlinien verhindern das Ändern der ständigen globalen DNS-" "Konfiguration" @@ -218,7 +221,7 @@ msgid "%s %u" msgstr "%s %u" #: src/core/devices/adsl/nm-device-adsl.c:118 -#: src/libnmc-setting/nm-meta-setting-desc.c:8647 +#: src/libnmc-setting/nm-meta-setting-desc.c:8798 msgid "ADSL connection" msgstr "ADSL-Verbindung" @@ -258,12 +261,12 @@ msgid "DUN connection must include a GSM or CDMA setting" msgstr "Die DUN-Verbindung muss eine GSM- oder CDMA-Einstellung enthalten" #: src/core/devices/bluetooth/nm-device-bt.c:382 -#: src/core/devices/wwan/nm-modem-broadband.c:897 +#: src/core/devices/wwan/nm-modem-broadband.c:918 msgid "GSM connection" msgstr "GSM-Verbindung" #: src/core/devices/bluetooth/nm-device-bt.c:384 -#: src/core/devices/wwan/nm-modem-broadband.c:918 +#: src/core/devices/wwan/nm-modem-broadband.c:939 msgid "CDMA connection" msgstr "CDMA-Verbindung" @@ -283,7 +286,7 @@ msgstr "6LOWPAN-Verbindung" msgid "Bond connection" msgstr "Bündel-Verbindung" -#: src/core/devices/nm-device-bridge.c:164 +#: src/core/devices/nm-device-bridge.c:165 msgid "Bridge connection" msgstr "Brückenverbindung" @@ -297,7 +300,7 @@ msgid "Wired connection %d" msgstr "Kabelgebundene Verbindung %d" #: src/core/devices/nm-device-ethernet.c:1641 -#: src/libnmc-setting/nm-meta-setting-desc.c:8689 +#: src/libnmc-setting/nm-meta-setting-desc.c:8841 msgid "Veth connection" msgstr "Veth-Verbindung" @@ -310,7 +313,7 @@ msgid "Wired connection" msgstr "Kabelgebundene Verbindung" #: src/core/devices/nm-device-infiniband.c:160 -#: src/libnmc-setting/nm-meta-setting-desc.c:8662 +#: src/libnmc-setting/nm-meta-setting-desc.c:8813 msgid "InfiniBand connection" msgstr "InfiniBand-Verbindung" @@ -331,17 +334,17 @@ msgid "TUN connection" msgstr "TUN-Verbindung" #: src/core/devices/nm-device-vlan.c:380 -#: src/libnmc-setting/nm-meta-setting-desc.c:8690 +#: src/libnmc-setting/nm-meta-setting-desc.c:8842 msgid "VLAN connection" msgstr "VLAN-Verbindung" #: src/core/devices/nm-device-vrf.c:185 -#: src/libnmc-setting/nm-meta-setting-desc.c:8692 +#: src/libnmc-setting/nm-meta-setting-desc.c:8844 msgid "VRF connection" msgstr "VRF-Verbindung" #: src/core/devices/nm-device-vxlan.c:385 -#: src/libnmc-setting/nm-meta-setting-desc.c:8693 +#: src/libnmc-setting/nm-meta-setting-desc.c:8845 msgid "VXLAN connection" msgstr "VXLAN-Verbindung" @@ -351,7 +354,7 @@ msgstr "WPAN-Verbindung" #: src/core/devices/team/nm-device-team.c:131 msgid "Team connection" -msgstr "Netzwerk-Team" +msgstr "Teamverbindung" #: src/core/devices/wifi/nm-device-olpc-mesh.c:112 src/nmcli/devices.c:1415 msgid "Mesh" @@ -380,7 +383,8 @@ msgstr "Eine LEAP-Legitimierung ist nicht kompatibel mit Ad-Hoc-Modus" #: src/core/devices/wifi/nm-wifi-utils.c:130 msgid "LEAP authentication is incompatible with 802.1x setting" -msgstr "Eine LEAP-Legitimierung ist nicht kompatibel mit der 802.1x-Einstellung" +msgstr "" +"Eine LEAP-Legitimierung ist nicht kompatibel mit der 802.1x-Einstellung" #: src/core/devices/wifi/nm-wifi-utils.c:150 #, c-format @@ -439,7 +443,8 @@ msgstr "Die ad-hoc WPA-Legitimierung erfordert das RSN-Protokoll" #: src/core/devices/wifi/nm-wifi-utils.c:377 msgid "WPA Ad-Hoc authentication requires 'ccmp' pairwise cipher" msgstr "" -"Die WPA Ad-Hoc-Legitimierung erfordert den paarweisen Chiffrierschlüssel »ccmp«" +"Die WPA Ad-Hoc-Legitimierung erfordert den paarweisen Chiffrierschlüssel " +"»ccmp«" #: src/core/devices/wifi/nm-wifi-utils.c:390 msgid "WPA Ad-Hoc requires 'ccmp' group cipher" @@ -500,7 +505,8 @@ msgstr "" #: src/core/devices/wifi/nm-wifi-utils.c:761 msgid "" -"WPA authentication is incompatible with non-EAP (original) LEAP or Dynamic WEP" +"WPA authentication is incompatible with non-EAP (original) LEAP or Dynamic " +"WEP" msgstr "" "WPA-Legitimierung ist inkompatibel mit nicht-EAP (original) LEAP oder " "dynamischem WEP" @@ -573,7 +579,8 @@ msgstr "Protokollierungsstufe: Eine von [%s]" #, c-format msgid "Log domains separated by ',': any combination of [%s]" msgstr "" -"Protokoll-Domänen, durch Kommata getrennt. Eine beliebige Kombination von [%s]" +"Protokoll-Domänen, durch Kommata getrennt. Eine beliebige Kombination von " +"[%s]" #: src/core/main.c:219 msgid "Make all warnings fatal" @@ -595,7 +602,8 @@ msgid "" "should associate with." msgstr "" "Die Netzwerkverwaltung überwacht alle Netzwerkverbindungen und wählt\n" -"automatisch die beste Verbindung zur Verwendung aus. Außerdem ermöglicht sie\n" +"automatisch die beste Verbindung zur Verwendung aus. Außerdem ermöglicht " +"sie\n" "dem Anwender diejenigen Drahtlos-Zugangspunkte anzugeben, mit welchen sich\n" "die Drahtlos-Netzwerkkarten des Rechners verbinden sollen." @@ -605,8 +613,8 @@ msgid "Could not daemonize: %s [error %u]\n" msgstr "Hintergrunddienst nicht möglich: %s [error %u]\n" #: src/core/nm-config.c:544 src/libnm-core-impl/nm-setting-ovs-bridge.c:187 -#: src/libnmc-setting/nm-meta-setting-desc.c:2188 -#: src/libnmc-setting/nm-meta-setting-desc.c:4334 +#: src/libnmc-setting/nm-meta-setting-desc.c:2163 +#: src/libnmc-setting/nm-meta-setting-desc.c:4309 #, c-format msgid "'%s' is not valid" msgstr "»%s» ist ungültig" @@ -673,41 +681,41 @@ msgstr "Einstellungen von NetworkManager" msgid "Show NetworkManager options" msgstr "Die Einstellungen von NetworkManager anzeigen" -#: src/core/nm-manager.c:6886 src/libnmc-setting/nm-meta-setting-desc.c:8691 +#: src/core/nm-manager.c:6950 src/libnmc-setting/nm-meta-setting-desc.c:8843 msgid "VPN connection" msgstr "VPN-Verbindung" -#: src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c:5650 -#: src/libnm-client-impl/nm-device.c:1781 -#: src/libnm-core-impl/nm-connection.c:3237 src/nmtui/nm-editor-utils.c:196 +#: src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c:5652 +#: src/libnm-client-impl/nm-device.c:1782 +#: src/libnm-core-impl/nm-connection.c:3266 src/nmtui/nm-editor-utils.c:196 msgid "Bond" msgstr "Gebündelt" -#: src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c:5721 -#: src/libnm-client-impl/nm-device.c:1783 -#: src/libnm-core-impl/nm-connection.c:3239 src/nmtui/nm-editor-utils.c:214 +#: src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c:5723 +#: src/libnm-client-impl/nm-device.c:1784 +#: src/libnm-core-impl/nm-connection.c:3268 src/nmtui/nm-editor-utils.c:214 msgid "Team" -msgstr "Bündelung" +msgstr "Team" -#: src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c:6058 -#: src/libnm-client-impl/nm-device.c:1785 -#: src/libnm-core-impl/nm-connection.c:3241 src/nmtui/nm-editor-utils.c:205 +#: src/core/settings/plugins/ifcfg-rh/nms-ifcfg-rh-reader.c:6060 +#: src/libnm-client-impl/nm-device.c:1786 +#: src/libnm-core-impl/nm-connection.c:3270 src/nmtui/nm-editor-utils.c:205 msgid "Bridge" msgstr "Brücke" -#: src/core/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c:9024 -#: src/libnm-core-impl/nm-team-utils.c:2391 +#: src/core/settings/plugins/ifcfg-rh/tests/test-ifcfg-rh.c:9027 +#: src/libnm-core-impl/nm-team-utils.c:2395 msgid "invalid json" msgstr "Ungültiges json" -#: src/libnm-client-impl/nm-client.c:3816 +#: src/libnm-client-impl/nm-client.c:3817 #, c-format msgid "request succeeded with %s but object is in an unsuitable state" msgstr "" "Anfrage war erfolgreich mit %s, aber das Objekt ist in einem ungeeigneten " "Zustand" -#: src/libnm-client-impl/nm-client.c:3908 +#: src/libnm-client-impl/nm-client.c:3909 #, c-format msgid "operation succeeded but object %s does not exist" msgstr "Der Vorgang war erfolgreich, aber das Objekt %s ist nicht vorhanden" @@ -719,8 +727,8 @@ msgstr "" #: src/libnm-client-impl/nm-conn-utils.c:171 msgid "" -"The name of the WireGuard config must be a valid interface name followed by \"." -"conf\"" +"The name of the WireGuard config must be a valid interface name followed by " +"\".conf\"" msgstr "" "Der Name der WireGuard-Konfiguration muss ein gültiger Schnittstellenname " "sein, gefolgt von ».conf«" @@ -775,9 +783,11 @@ msgstr "" "Die Bluetooth-Adressen des Geräts und der Verbindung stimmen nicht überein." #: src/libnm-client-impl/nm-device-bt.c:173 -msgid "The device is lacking Bluetooth capabilities required by the connection." +msgid "" +"The device is lacking Bluetooth capabilities required by the connection." msgstr "" -"Dem Gerät fehlen Bluetooth-Fähigkeiten, die für die Verbindung notwendig sind." +"Dem Gerät fehlen Bluetooth-Fähigkeiten, die für die Verbindung notwendig " +"sind." #: src/libnm-client-impl/nm-device-dummy.c:62 msgid "The connection was not a dummy connection." @@ -895,7 +905,8 @@ msgstr "Die Verbindung war keine VLAN-Verbindung." #: src/libnm-client-impl/nm-device-vlan.c:131 msgid "The VLAN identifiers of the device and the connection didn't match." -msgstr "Die VLAN-Bezeichner des Geräts und der Verbindung stimmen nicht überein." +msgstr "" +"Die VLAN-Bezeichner des Geräts und der Verbindung stimmen nicht überein." #: src/libnm-client-impl/nm-device-vlan.c:148 msgid "The hardware address of the device and the connection didn't match." @@ -929,7 +940,8 @@ msgstr "Die Verbindung war keine WLAN-Verbindung." #: src/libnm-client-impl/nm-device-wifi.c:511 msgid "The device is lacking WPA capabilities required by the connection." -msgstr "Dem Gerät fehlen WPA-Fähigkeiten, die für die Verbindung notwendig sind." +msgstr "" +"Dem Gerät fehlen WPA-Fähigkeiten, die für die Verbindung notwendig sind." #: src/libnm-client-impl/nm-device-wifi.c:521 msgid "The device is lacking WPA2/RSN capabilities required by the connection." @@ -940,141 +952,148 @@ msgstr "" msgid "The connection was not a wpan connection." msgstr "Die Verbindung war keine wpan-Verbindung." -#: src/libnm-client-impl/nm-device.c:1761 src/nmtui/nm-editor-utils.c:144 +#: src/libnm-client-impl/nm-device.c:1762 src/nmtui/nm-editor-utils.c:144 msgid "Ethernet" msgstr "Ethernet" -#: src/libnm-client-impl/nm-device.c:1763 src/nmtui/nm-editor-utils.c:160 +#: src/libnm-client-impl/nm-device.c:1764 src/nmtui/nm-editor-utils.c:160 #: src/nmtui/nmtui-radio.c:58 msgid "Wi-Fi" msgstr "WLAN" -#: src/libnm-client-impl/nm-device.c:1765 +#: src/libnm-client-impl/nm-device.c:1766 msgid "Bluetooth" msgstr "Bluetooth" -#: src/libnm-client-impl/nm-device.c:1767 +#: src/libnm-client-impl/nm-device.c:1768 msgid "OLPC Mesh" msgstr "OLPC-Mesh" # "öffnen" oder "offen" ? -#: src/libnm-client-impl/nm-device.c:1769 +#: src/libnm-client-impl/nm-device.c:1770 msgid "Open vSwitch Interface" msgstr "VSwitch-Schnittstelle öffnen" -#: src/libnm-client-impl/nm-device.c:1771 +#: src/libnm-client-impl/nm-device.c:1772 msgid "Open vSwitch Port" msgstr "vSwitch-Port öffnen" -#: src/libnm-client-impl/nm-device.c:1773 +#: src/libnm-client-impl/nm-device.c:1774 msgid "Open vSwitch Bridge" msgstr "vSwitch-Brücke öffnen" -#: src/libnm-client-impl/nm-device.c:1775 +#: src/libnm-client-impl/nm-device.c:1776 msgid "WiMAX" msgstr "WiMAX" -#: src/libnm-client-impl/nm-device.c:1777 src/nmtui/nm-editor-utils.c:178 +#: src/libnm-client-impl/nm-device.c:1778 src/nmtui/nm-editor-utils.c:178 msgid "Mobile Broadband" msgstr "Mobiles Breitband" -#: src/libnm-client-impl/nm-device.c:1779 -#: src/libnm-core-impl/nm-connection.c:3245 src/nmtui/nm-editor-utils.c:169 +#: src/libnm-client-impl/nm-device.c:1780 +#: src/libnm-core-impl/nm-connection.c:3274 src/nmtui/nm-editor-utils.c:169 msgid "InfiniBand" msgstr "InfiniBand" -#: src/libnm-client-impl/nm-device.c:1787 -#: src/libnm-core-impl/nm-connection.c:3243 src/nmtui/nm-editor-utils.c:223 +#: src/libnm-client-impl/nm-device.c:1788 +#: src/libnm-core-impl/nm-connection.c:3272 src/nmtui/nm-editor-utils.c:223 #: src/nmtui/nmt-page-vlan.c:57 msgid "VLAN" msgstr "VLAN" -#: src/libnm-client-impl/nm-device.c:1789 +#: src/libnm-client-impl/nm-device.c:1790 msgid "ADSL" msgstr "ADSL" -#: src/libnm-client-impl/nm-device.c:1791 +#: src/libnm-client-impl/nm-device.c:1792 msgid "MACVLAN" msgstr "MACVLAN" # virtuelles LAN, z.B. in virtualisierten Umgebungen -#: src/libnm-client-impl/nm-device.c:1793 +#: src/libnm-client-impl/nm-device.c:1794 msgid "VXLAN" msgstr "VXLAN" -#: src/libnm-client-impl/nm-device.c:1795 +#: src/libnm-client-impl/nm-device.c:1796 msgid "IPTunnel" msgstr "IP-Tunnel" -#: src/libnm-client-impl/nm-device.c:1797 +#: src/libnm-client-impl/nm-device.c:1798 msgid "Tun" msgstr "Tun" # Hier stimmt was nicht. # Steht das evtl für "virtuelles Ethernet"? k.a. -#: src/libnm-client-impl/nm-device.c:1799 src/nmtui/nm-editor-utils.c:152 +#: src/libnm-client-impl/nm-device.c:1800 +#: src/libnm-core-impl/nm-connection.c:3284 src/nmtui/nm-editor-utils.c:152 msgid "Veth" msgstr "Veth" -#: src/libnm-client-impl/nm-device.c:1801 src/nmtui/nm-editor-utils.c:239 +#: src/libnm-client-impl/nm-device.c:1802 src/nmtui/nm-editor-utils.c:239 #: src/nmtui/nmt-page-macsec.c:99 msgid "MACsec" msgstr "MACsec" -#: src/libnm-client-impl/nm-device.c:1803 +#: src/libnm-client-impl/nm-device.c:1804 msgid "Dummy" msgstr "Platzhalter" -#: src/libnm-client-impl/nm-device.c:1805 +#: src/libnm-client-impl/nm-device.c:1806 msgid "PPP" msgstr "PPP" -#: src/libnm-client-impl/nm-device.c:1807 +#: src/libnm-client-impl/nm-device.c:1808 msgid "IEEE 802.15.4" msgstr "IEEE 802.15.4" -#: src/libnm-client-impl/nm-device.c:1809 +#: src/libnm-client-impl/nm-device.c:1810 msgid "6LoWPAN" msgstr "6LoWPAN" -#: src/libnm-client-impl/nm-device.c:1811 -#: src/libnm-core-impl/nm-connection.c:3251 src/nmtui/nm-editor-utils.c:271 +#: src/libnm-client-impl/nm-device.c:1812 +#: src/libnm-core-impl/nm-connection.c:3280 src/nmtui/nm-editor-utils.c:271 #: src/nmtui/nmt-page-wireguard.c:57 msgid "WireGuard" msgstr "WireGuard" -#: src/libnm-client-impl/nm-device.c:1813 +#: src/libnm-client-impl/nm-device.c:1814 msgid "Wi-Fi P2P" msgstr "WLAN P2P" -#: src/libnm-client-impl/nm-device.c:1815 +#: src/libnm-client-impl/nm-device.c:1816 msgid "VRF" msgstr "VRF" -#: src/libnm-client-impl/nm-device.c:1817 +#: src/libnm-client-impl/nm-device.c:1818 msgid "Loopback" msgstr "Loopback" -#: src/libnm-client-impl/nm-device.c:1819 +#: src/libnm-client-impl/nm-device.c:1820 msgid "HSR" msgstr "" +#: src/libnm-client-impl/nm-device.c:1822 +#, fuzzy +#| msgid "VLAN" +msgid "IPVLAN" +msgstr "VLAN" + #. TRANSLATORS: Unknown reason for a device state change (NMDeviceStateReason) #. TRANSLATORS: Unknown reason for a connection state change (NMActiveConnectionStateReason) -#: src/libnm-client-impl/nm-device.c:1826 src/libnmc-base/nm-client-utils.c:352 -#: src/libnmc-base/nm-client-utils.c:473 src/nmcli/utils.c:1841 +#: src/libnm-client-impl/nm-device.c:1829 src/libnmc-base/nm-client-utils.c:352 +#: src/libnmc-base/nm-client-utils.c:502 src/nmcli/utils.c:1852 msgid "Unknown" msgstr "Unbekannt" -#: src/libnm-client-impl/nm-device.c:1851 +#: src/libnm-client-impl/nm-device.c:1854 msgid "Wired" msgstr "Kabelgebunden" -#: src/libnm-client-impl/nm-device.c:1883 +#: src/libnm-client-impl/nm-device.c:1886 msgid "PCI" msgstr "PCI" -#: src/libnm-client-impl/nm-device.c:1885 +#: src/libnm-client-impl/nm-device.c:1888 msgid "USB" msgstr "USB" @@ -1084,18 +1103,19 @@ msgstr "USB" #. * "%2$s (%1$s)" if there's no grammatical way to combine #. * the strings otherwise. #. -#: src/libnm-client-impl/nm-device.c:2184 src/libnm-client-impl/nm-device.c:2203 +#: src/libnm-client-impl/nm-device.c:2187 +#: src/libnm-client-impl/nm-device.c:2206 #, c-format msgctxt "long device name" msgid "%s %s" msgstr "%s %s" -#: src/libnm-client-impl/nm-device.c:2863 +#: src/libnm-client-impl/nm-device.c:2866 #, c-format msgid "The connection was not valid: %s" msgstr "Die Verbindung war ungültig: %s" -#: src/libnm-client-impl/nm-device.c:2875 +#: src/libnm-client-impl/nm-device.c:2878 #, fuzzy #| msgid "The interface names of the device and the connection didn't match." msgid "The interface names of the device and the connection didn't match" @@ -1107,7 +1127,7 @@ msgid "registration failed" msgstr "Registrierung fehlgeschlagen" #: src/libnm-client-impl/nm-vpn-plugin-old.c:807 -#: src/libnm-client-impl/nm-vpn-service-plugin.c:1055 +#: src/libnm-client-impl/nm-vpn-service-plugin.c:1075 msgid "No service name specified" msgstr "Es wurde kein Dienstname angegeben" @@ -1168,43 +1188,47 @@ msgstr "Die Eigenschaft darf nicht länger als 255 Byte sein" msgid "property cannot contain any nul bytes" msgstr "Die Eigenschaft darf keine nul-Byte enthalten" -#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:674 +#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:474 +msgid "invalid DSCP value; allowed values are: 'CS0', 'CS4', 'CS6'" +msgstr "" + +#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:691 #: src/libnm-core-impl/nm-setting-ovs-external-ids.c:82 #: src/libnm-core-impl/nm-setting-user.c:93 msgid "missing key" msgstr "Schlüssel fehlt" -#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:682 +#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:699 #: src/libnm-core-impl/nm-setting-ovs-external-ids.c:90 #: src/libnm-core-impl/nm-setting-user.c:101 msgid "key is too long" msgstr "Der Schlüssel ist zu lang" -#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:689 +#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:706 #: src/libnm-core-impl/nm-setting-ovs-external-ids.c:97 #: src/libnm-core-impl/nm-setting-user.c:108 msgid "key must be UTF8" msgstr "Schlüssel muss in UTF-8 vorliegen" -#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:698 +#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:715 #: src/libnm-core-impl/nm-setting-ovs-external-ids.c:106 #: src/libnm-core-impl/nm-setting-user.c:155 msgid "key contains invalid characters" msgstr "Schlüssel enthält ungültige Zeichen" -#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:726 +#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:743 #: src/libnm-core-impl/nm-setting-ovs-external-ids.c:195 #: src/libnm-core-impl/nm-setting-user.c:182 msgid "value is missing" msgstr "Wert fehlt" -#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:735 +#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:752 #: src/libnm-core-impl/nm-setting-ovs-external-ids.c:204 #: src/libnm-core-impl/nm-setting-user.c:191 msgid "value is too large" msgstr "Wert ist zu groß" -#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:743 +#: src/libnm-core-aux-intern/nm-libnm-core-utils.c:760 #: src/libnm-core-impl/nm-setting-ovs-external-ids.c:212 #: src/libnm-core-impl/nm-setting-user.c:199 msgid "value is not valid UTF8" @@ -1234,49 +1258,53 @@ msgstr "" msgid "has duplicate UUIDs" msgstr "hat mehrfache UUIDs" -#: src/libnm-core-impl/nm-connection.c:1839 +#: src/libnm-core-impl/nm-connection.c:1860 msgid "setting not found" msgstr "Einstellung nicht gefunden" -#: src/libnm-core-impl/nm-connection.c:1893 -#: src/libnm-core-impl/nm-connection.c:1918 -#: src/libnm-core-impl/nm-connection.c:1943 -msgid "setting is required for non-slave connections" +#: src/libnm-core-impl/nm-connection.c:1914 +#: src/libnm-core-impl/nm-connection.c:1939 +#: src/libnm-core-impl/nm-connection.c:1964 +#, fuzzy +#| msgid "setting is required for non-slave connections" +msgid "setting is required for non-port connections" msgstr "Einstellung ist für Nicht-Slave-Verbindungen notwendig" -#: src/libnm-core-impl/nm-connection.c:1906 -#: src/libnm-core-impl/nm-connection.c:1931 -#: src/libnm-core-impl/nm-connection.c:1956 -msgid "setting not allowed in slave connection" +#: src/libnm-core-impl/nm-connection.c:1927 +#: src/libnm-core-impl/nm-connection.c:1952 +#: src/libnm-core-impl/nm-connection.c:1977 +#, fuzzy +#| msgid "setting not allowed in slave connection" +msgid "setting not allowed in port connection" msgstr "Die Einstellung ist nicht erlaubt für eine Slave-Verbindung" -#: src/libnm-core-impl/nm-connection.c:2068 +#: src/libnm-core-impl/nm-connection.c:2089 msgid "Unexpected failure to normalize the connection" msgstr "Unerwarteter Fehler beim Normalisieren der Verbindung" -#: src/libnm-core-impl/nm-connection.c:2129 +#: src/libnm-core-impl/nm-connection.c:2150 msgid "Unexpected failure to verify the connection" msgstr "Unerwarteter Fehler beim Überprüfen der Verbindung" -#: src/libnm-core-impl/nm-connection.c:2166 +#: src/libnm-core-impl/nm-connection.c:2187 #, c-format msgid "unexpected uuid %s instead of %s" msgstr "" -#: src/libnm-core-impl/nm-connection.c:3095 -#: src/libnm-core-impl/nm-setting-8021x.c:2621 -#: src/libnm-core-impl/nm-setting-8021x.c:2658 -#: src/libnm-core-impl/nm-setting-8021x.c:2676 -#: src/libnm-core-impl/nm-setting-8021x.c:2814 +#: src/libnm-core-impl/nm-connection.c:3116 +#: src/libnm-core-impl/nm-setting-8021x.c:2641 +#: src/libnm-core-impl/nm-setting-8021x.c:2678 +#: src/libnm-core-impl/nm-setting-8021x.c:2696 +#: src/libnm-core-impl/nm-setting-8021x.c:2834 #: src/libnm-core-impl/nm-setting-adsl.c:171 #: src/libnm-core-impl/nm-setting-bluetooth.c:126 #: src/libnm-core-impl/nm-setting-bluetooth.c:190 #: src/libnm-core-impl/nm-setting-bluetooth.c:207 #: src/libnm-core-impl/nm-setting-cdma.c:142 -#: src/libnm-core-impl/nm-setting-connection.c:1210 -#: src/libnm-core-impl/nm-setting-connection.c:1248 -#: src/libnm-core-impl/nm-setting-connection.c:1577 -#: src/libnm-core-impl/nm-setting-ip-config.c:5480 +#: src/libnm-core-impl/nm-setting-connection.c:1252 +#: src/libnm-core-impl/nm-setting-connection.c:1290 +#: src/libnm-core-impl/nm-setting-connection.c:1619 +#: src/libnm-core-impl/nm-setting-ip-config.c:5556 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:405 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:97 #: src/libnm-core-impl/nm-setting-ovs-patch.c:75 @@ -1285,15 +1313,15 @@ msgstr "" #: src/libnm-core-impl/nm-setting-wifi-p2p.c:119 #: src/libnm-core-impl/nm-setting-wimax.c:106 #: src/libnm-core-impl/nm-setting-wireless-security.c:912 -#: src/libnm-core-impl/nm-setting-wireless.c:895 +#: src/libnm-core-impl/nm-setting-wireless.c:1100 msgid "property is missing" msgstr "Eigenschaft fehlt" -#: src/libnm-core-impl/nm-connection.c:3249 +#: src/libnm-core-impl/nm-connection.c:3278 msgid "IP Tunnel" msgstr "IP-Tunnel" -#: src/libnm-core-impl/nm-connection.c:3253 +#: src/libnm-core-impl/nm-connection.c:3282 msgid "TUN/TAP" msgstr "TUN/TAP" @@ -1379,7 +1407,7 @@ msgid "ignoring invalid DNS server IPv%c address '%s'" msgstr "Ungültige DNS-Server IPv%c-Adresse »%s« wird ignoriert" #: src/libnm-core-impl/nm-keyfile.c:1177 -#: src/libnmc-setting/nm-meta-setting-desc.c:1678 +#: src/libnmc-setting/nm-meta-setting-desc.c:1653 #, c-format msgid "invalid option '%s', use one of [%s]" msgstr "ungültige Option »%s«. Verwenden Sie eine aus [%s]" @@ -1477,64 +1505,76 @@ msgstr "" "Ungültiges Byte-Element »%u« wird ignoriert (nicht zwischen 0 und " "einschließlich 255)" -#: src/libnm-core-impl/nm-keyfile.c:3570 +#: src/libnm-core-impl/nm-keyfile.c:3580 +#, fuzzy, c-format +#| msgid "invalid value for key '%s'" +msgid "invalid value for '%s.dhcp-send-hostname'" +msgstr "Ungültiger Wert für Schlüssel »%s«" + +#: src/libnm-core-impl/nm-keyfile.c:3601 +#, c-format +msgid "invalid value for '%s.dhcp-send-hostname-deprecated'" +msgstr "" + +#: src/libnm-core-impl/nm-keyfile.c:3626 #, c-format msgid "invalid setting name '%s'" msgstr "Ungültiger Einstellungsname »%s«" -#: src/libnm-core-impl/nm-keyfile.c:3617 +#: src/libnm-core-impl/nm-keyfile.c:3675 #, c-format msgid "invalid key '%s.%s'" msgstr "Ungültiger Schlüssel »%s.%s«" -#: src/libnm-core-impl/nm-keyfile.c:3633 +#: src/libnm-core-impl/nm-keyfile.c:3691 #, c-format msgid "key '%s.%s' is not boolean" msgstr "Der Schlüssel »%s.%s« ist kein Boolean" -#: src/libnm-core-impl/nm-keyfile.c:3650 +#: src/libnm-core-impl/nm-keyfile.c:3708 #, c-format msgid "key '%s.%s' is not a uint32" msgstr "Schlüssel »%s.%s« ist keine uint32" -#: src/libnm-core-impl/nm-keyfile.c:3707 +#: src/libnm-core-impl/nm-keyfile.c:3765 #, fuzzy, c-format msgid "invalid peer public key in section '%s'" msgstr "Ungültiger Peer öffentlicher Schlüssel in Abschnitt »%s«" -#: src/libnm-core-impl/nm-keyfile.c:3722 +#: src/libnm-core-impl/nm-keyfile.c:3780 #, c-format msgid "key '%s.%s' is not a valid 256 bit key in base64 encoding" msgstr "" -"Der Schlüssel »%s.%s« ist kein gültiger 256-Bit-Schlüssel mit base64-Kodierung" +"Der Schlüssel »%s.%s« ist kein gültiger 256-Bit-Schlüssel mit base64-" +"Kodierung" -#: src/libnm-core-impl/nm-keyfile.c:3745 +#: src/libnm-core-impl/nm-keyfile.c:3803 #, fuzzy, c-format msgid "key '%s.%s' is not a valid secret flag" msgstr "Schlüssel »%s.%s« ist kein gültiges DCB-Flag" -#: src/libnm-core-impl/nm-keyfile.c:3768 +#: src/libnm-core-impl/nm-keyfile.c:3826 #, c-format msgid "key '%s.%s' is not a integer in range 0 to 2^32" msgstr "Der Schlüssel »%s.%s« ist keine Ganzzahl im Bereich 0 bis 2^32" -#: src/libnm-core-impl/nm-keyfile.c:3784 +#: src/libnm-core-impl/nm-keyfile.c:3842 #, c-format msgid "key '%s.%s' is not a valid endpoint" msgstr "Schlüssel »%s.%s« ist kein gültiger Endpunkt" -#: src/libnm-core-impl/nm-keyfile.c:3810 +#: src/libnm-core-impl/nm-keyfile.c:3868 #, fuzzy, c-format msgid "key '%s.%s' has invalid allowed-ips" msgstr "Der Schlüssel »%s.%s« enthält ungültige erlaubte IP-Adressen" -#: src/libnm-core-impl/nm-keyfile.c:3825 +#: src/libnm-core-impl/nm-keyfile.c:3883 #, fuzzy, c-format #| msgid "'%s' is not valid" msgid "peer '%s' is invalid: %s" msgstr "»%s» ist ungültig" -#: src/libnm-core-impl/nm-keyfile.c:4353 +#: src/libnm-core-impl/nm-keyfile.c:4433 #, fuzzy, c-format #| msgid "unsupported attribute '%s' of type '%s'" msgid "unsupported option \"%s.%s\" of variant type %s" @@ -1548,7 +1588,7 @@ msgid "property is not specified" msgstr "Eigenschaft ist nicht angegeben" #: src/libnm-core-impl/nm-setting-6lowpan.c:104 -#: src/libnm-core-impl/nm-setting-macsec.c:315 +#: src/libnm-core-impl/nm-setting-macsec.c:333 #: src/libnm-core-impl/nm-setting-vlan.c:625 #, c-format msgid "'%s' value doesn't match '%s=%s'" @@ -1556,7 +1596,7 @@ msgstr "Wert »%s« entspricht nicht »%s=%s«" #: src/libnm-core-impl/nm-setting-6lowpan.c:120 #: src/libnm-core-impl/nm-setting-ip-tunnel.c:378 -#: src/libnm-core-impl/nm-setting-macsec.c:331 +#: src/libnm-core-impl/nm-setting-macsec.c:349 #: src/libnm-core-impl/nm-setting-macvlan.c:138 #: src/libnm-core-impl/nm-setting-vlan.c:641 #: src/libnm-core-impl/nm-setting-vxlan.c:377 @@ -1564,70 +1604,70 @@ msgstr "Wert »%s« entspricht nicht »%s=%s«" msgid "'%s' is neither an UUID nor an interface name" msgstr "»%s« ist weder eine UUID noch ein Schnittstellenname" -#: src/libnm-core-impl/nm-setting-8021x.c:235 +#: src/libnm-core-impl/nm-setting-8021x.c:237 msgid "binary data missing" msgstr "Binärdaten fehlen" -#: src/libnm-core-impl/nm-setting-8021x.c:267 +#: src/libnm-core-impl/nm-setting-8021x.c:269 msgid "URI not NUL terminated" msgstr "Adresse ist nicht mit NUL terminiert" -#: src/libnm-core-impl/nm-setting-8021x.c:276 +#: src/libnm-core-impl/nm-setting-8021x.c:278 msgid "URI is empty" msgstr "Adresse ist leer" -#: src/libnm-core-impl/nm-setting-8021x.c:284 +#: src/libnm-core-impl/nm-setting-8021x.c:286 msgid "URI is not valid UTF-8" msgstr "Die Adresse ist kein gültiges UTF-8" -#: src/libnm-core-impl/nm-setting-8021x.c:302 +#: src/libnm-core-impl/nm-setting-8021x.c:304 msgid "data missing" msgstr "Daten fehlen" -#: src/libnm-core-impl/nm-setting-8021x.c:323 -#: src/libnm-core-impl/nm-setting-8021x.c:691 +#: src/libnm-core-impl/nm-setting-8021x.c:325 +#: src/libnm-core-impl/nm-setting-8021x.c:693 #, c-format msgid "certificate is invalid: %s" msgstr "Zertifikat ist ungültig: %s" -#: src/libnm-core-impl/nm-setting-8021x.c:332 +#: src/libnm-core-impl/nm-setting-8021x.c:334 msgid "certificate detected as invalid scheme" msgstr "Zertifikat erkannt als ungültiges Schema" -#: src/libnm-core-impl/nm-setting-8021x.c:558 +#: src/libnm-core-impl/nm-setting-8021x.c:560 msgid "CA certificate must be in X.509 format" msgstr "CA-Zertifikat muss im X.509-Format vorliegen" -#: src/libnm-core-impl/nm-setting-8021x.c:570 +#: src/libnm-core-impl/nm-setting-8021x.c:572 msgid "invalid certificate format" msgstr "Ungültiges Zertifikatsformat" -#: src/libnm-core-impl/nm-setting-8021x.c:702 +#: src/libnm-core-impl/nm-setting-8021x.c:704 msgid "password is not supported when certificate is not on a PKCS#11 token" msgstr "" -#: src/libnm-core-impl/nm-setting-8021x.c:2626 -#: src/libnm-core-impl/nm-setting-8021x.c:2666 -#: src/libnm-core-impl/nm-setting-8021x.c:2685 -#: src/libnm-core-impl/nm-setting-8021x.c:2855 +#: src/libnm-core-impl/nm-setting-8021x.c:2646 +#: src/libnm-core-impl/nm-setting-8021x.c:2686 +#: src/libnm-core-impl/nm-setting-8021x.c:2705 #: src/libnm-core-impl/nm-setting-8021x.c:2875 #: src/libnm-core-impl/nm-setting-8021x.c:2895 -#: src/libnm-core-impl/nm-setting-8021x.c:2961 +#: src/libnm-core-impl/nm-setting-8021x.c:2915 #: src/libnm-core-impl/nm-setting-8021x.c:2981 -#: src/libnm-core-impl/nm-setting-8021x.c:3035 +#: src/libnm-core-impl/nm-setting-8021x.c:3001 +#: src/libnm-core-impl/nm-setting-8021x.c:3055 #: src/libnm-core-impl/nm-setting-adsl.c:179 #: src/libnm-core-impl/nm-setting-cdma.c:147 #: src/libnm-core-impl/nm-setting-cdma.c:157 -#: src/libnm-core-impl/nm-setting-connection.c:1220 -#: src/libnm-core-impl/nm-setting-connection.c:1263 -#: src/libnm-core-impl/nm-setting-connection.c:1515 -#: src/libnm-core-impl/nm-setting-gsm.c:396 -#: src/libnm-core-impl/nm-setting-gsm.c:411 -#: src/libnm-core-impl/nm-setting-gsm.c:454 -#: src/libnm-core-impl/nm-setting-gsm.c:463 -#: src/libnm-core-impl/nm-setting-ip-config.c:5489 -#: src/libnm-core-impl/nm-setting-ip4-config.c:284 -#: src/libnm-core-impl/nm-setting-ip4-config.c:296 +#: src/libnm-core-impl/nm-setting-connection.c:1262 +#: src/libnm-core-impl/nm-setting-connection.c:1305 +#: src/libnm-core-impl/nm-setting-connection.c:1557 +#: src/libnm-core-impl/nm-setting-gsm.c:542 +#: src/libnm-core-impl/nm-setting-gsm.c:557 +#: src/libnm-core-impl/nm-setting-gsm.c:600 +#: src/libnm-core-impl/nm-setting-gsm.c:609 +#: src/libnm-core-impl/nm-setting-ip-config.c:5565 +#: src/libnm-core-impl/nm-setting-ip4-config.c:307 +#: src/libnm-core-impl/nm-setting-ip4-config.c:319 #: src/libnm-core-impl/nm-setting-pppoe.c:149 #: src/libnm-core-impl/nm-setting-pppoe.c:159 #: src/libnm-core-impl/nm-setting-vpn.c:553 @@ -1635,36 +1675,37 @@ msgstr "" #: src/libnm-core-impl/nm-setting-wimax.c:107 #: src/libnm-core-impl/nm-setting-wireless-security.c:968 #: src/libnm-core-impl/nm-setting-wireless-security.c:996 -#: src/libnm-core-impl/nm-setting.c:2531 +#: src/libnm-core-impl/nm-setting.c:2626 msgid "property is empty" msgstr "Eigenschaft ist leer" -#: src/libnm-core-impl/nm-setting-8021x.c:2699 +#: src/libnm-core-impl/nm-setting-8021x.c:2719 #, c-format msgid "has to match '%s' property for PKCS#12" msgstr "muss mit der Eigenschaft »%s« für PKCS#12 übereinstimmen" -#: src/libnm-core-impl/nm-setting-8021x.c:2722 +#: src/libnm-core-impl/nm-setting-8021x.c:2742 msgid "exactly one property must be set" msgstr "genau eine Eigenschaft muss festgelegt sein" -#: src/libnm-core-impl/nm-setting-8021x.c:2802 +#: src/libnm-core-impl/nm-setting-8021x.c:2822 msgid "can be enabled only on Ethernet connections" msgstr "darf nur für Ethernet-Verbindungen aktiviert werden" -#: src/libnm-core-impl/nm-setting-8021x.c:2823 +#: src/libnm-core-impl/nm-setting-8021x.c:2843 #: src/libnm-core-impl/nm-setting-bluetooth.c:108 +#: src/libnm-core-impl/nm-setting-generic.c:84 #: src/libnm-core-impl/nm-setting-infiniband.c:175 #: src/libnm-core-impl/nm-setting-infiniband.c:187 -#: src/libnm-core-impl/nm-setting-ip4-config.c:232 -#: src/libnm-core-impl/nm-setting-ip4-config.c:248 -#: src/libnm-core-impl/nm-setting-ip6-config.c:301 -#: src/libnm-core-impl/nm-setting-ip6-config.c:317 +#: src/libnm-core-impl/nm-setting-ip4-config.c:254 +#: src/libnm-core-impl/nm-setting-ip4-config.c:271 +#: src/libnm-core-impl/nm-setting-ip6-config.c:343 +#: src/libnm-core-impl/nm-setting-ip6-config.c:359 #: src/libnm-core-impl/nm-setting-olpc-mesh.c:135 #: src/libnm-core-impl/nm-setting-wifi-p2p.c:131 #: src/libnm-core-impl/nm-setting-wimax.c:119 -#: src/libnm-core-impl/nm-setting-wired.c:842 -#: src/libnm-core-impl/nm-setting-wired.c:855 +#: src/libnm-core-impl/nm-setting-wired.c:1028 +#: src/libnm-core-impl/nm-setting-wired.c:1041 #: src/libnm-core-impl/nm-setting-wireless-security.c:1008 #: src/libnm-core-impl/nm-setting-wireless-security.c:1020 #: src/libnm-core-impl/nm-setting-wireless-security.c:1032 @@ -1673,18 +1714,19 @@ msgstr "darf nur für Ethernet-Verbindungen aktiviert werden" #: src/libnm-core-impl/nm-setting-wireless-security.c:1089 #: src/libnm-core-impl/nm-setting-wireless-security.c:1156 #: src/libnm-core-impl/nm-setting-wireless-security.c:1205 -#: src/libnm-core-impl/nm-setting-wireless.c:991 -#: src/libnm-core-impl/nm-setting-wireless.c:1003 -#: src/libnm-core-impl/nm-setting-wireless.c:1016 -#: src/libnm-core-impl/nm-setting-wpan.c:164 src/libnm-core-impl/nm-utils.c:4557 +#: src/libnm-core-impl/nm-setting-wireless.c:1196 +#: src/libnm-core-impl/nm-setting-wireless.c:1208 +#: src/libnm-core-impl/nm-setting-wireless.c:1221 +#: src/libnm-core-impl/nm-setting-wpan.c:164 +#: src/libnm-core-impl/nm-utils.c:4559 msgid "property is invalid" msgstr "Eigenschaft ist ungültig" -#: src/libnm-core-impl/nm-setting-8021x.c:2849 #: src/libnm-core-impl/nm-setting-8021x.c:2869 #: src/libnm-core-impl/nm-setting-8021x.c:2889 -#: src/libnm-core-impl/nm-setting-8021x.c:2955 +#: src/libnm-core-impl/nm-setting-8021x.c:2909 #: src/libnm-core-impl/nm-setting-8021x.c:2975 +#: src/libnm-core-impl/nm-setting-8021x.c:2995 #: src/libnm-core-impl/nm-setting-adsl.c:191 #: src/libnm-core-impl/nm-setting-adsl.c:204 #: src/libnm-core-impl/nm-setting-bluetooth.c:143 @@ -1693,12 +1735,12 @@ msgstr "Eigenschaft ist ungültig" msgid "'%s' is not a valid value for the property" msgstr "Fehler: »%s« ist kein gültiger Wert für die Eigenschaft" -#: src/libnm-core-impl/nm-setting-8021x.c:2908 +#: src/libnm-core-impl/nm-setting-8021x.c:2928 #, c-format msgid "invalid auth flags: '%d' contains unknown flags" msgstr "" -#: src/libnm-core-impl/nm-setting-8021x.c:2933 +#: src/libnm-core-impl/nm-setting-8021x.c:2953 msgid "" "invalid auth flags: both enable and disable are set for the same TLS version" msgstr "" @@ -1715,6 +1757,7 @@ msgstr "Die Verbindung »%s« erfordert die Einstellung »%s«" #: src/libnm-core-impl/nm-setting-bond-port.c:99 #: src/libnm-core-impl/nm-setting-bridge-port.c:326 +#: src/libnm-core-impl/nm-setting-generic.c:100 #: src/libnm-core-impl/nm-setting-ovs-bridge.c:151 #: src/libnm-core-impl/nm-setting-ovs-interface.c:306 #: src/libnm-core-impl/nm-setting-ovs-port.c:411 @@ -1725,11 +1768,15 @@ msgstr "fehlende Einstellung" #: src/libnm-core-impl/nm-setting-bond-port.c:109 #: src/libnm-core-impl/nm-setting-bridge-port.c:336 #: src/libnm-core-impl/nm-setting-ovs-interface.c:329 +#: src/libnm-core-impl/nm-setting-ovs-port.c:434 #: src/libnm-core-impl/nm-setting-team-port.c:331 -#, c-format +#, fuzzy, c-format +#| msgid "" +#| "A connection with a '%s' setting must have the slave-type set to '%s'. " +#| "Instead it is '%s'" msgid "" -"A connection with a '%s' setting must have the slave-type set to '%s'. Instead " -"it is '%s'" +"A connection with a '%s' setting must have the port-type set to '%s'. " +"Instead it is '%s'" msgstr "" "Für Verbindungen mit einer »%s«-Einstellung muss der Slave-Typ auf »%s« " "gesetzt sein, hier ist es jedoch »%s«." @@ -1807,7 +1854,8 @@ msgstr "die Option »%s« muss ein vielfacher Wert von »%s« sein" #, c-format msgid "'%s' option requires '%s' or '%s'option to be set" msgstr "" -"Die Option »%s« erfordert, dass eine der Optionen »%s« oder »%s« festgelegt ist" +"Die Option »%s« erfordert, dass eine der Optionen »%s« oder »%s« festgelegt " +"ist" #: src/libnm-core-impl/nm-setting-bond.c:1085 #: src/libnm-core-impl/nm-setting-bond.c:1095 @@ -1878,92 +1926,94 @@ msgstr "Die Option »%s« muss eine mathematische Potenz von 2 sein" #: src/libnm-core-impl/nm-setting-bridge.c:1325 msgid "bridge connection should have a ethernet setting as well" -msgstr "Eine Brücken-Verbindung sollte ebenfalls eine Ethernet-Einstellung haben" +msgstr "" +"Eine Brücken-Verbindung sollte ebenfalls eine Ethernet-Einstellung haben" -#: src/libnm-core-impl/nm-setting-connection.c:1103 +#: src/libnm-core-impl/nm-setting-connection.c:1146 #, c-format msgid "setting required for connection of type '%s'" msgstr "Einstellung ist für den Verbindungstyp »%s« notwendig" -#: src/libnm-core-impl/nm-setting-connection.c:1134 -#, c-format -msgid "Unknown slave type '%s'" +#: src/libnm-core-impl/nm-setting-connection.c:1177 +#, fuzzy, c-format +#| msgid "Unknown slave type '%s'" +msgid "Unknown port type '%s'" msgstr "Unbekannter Slave-Typ »%s«" -#: src/libnm-core-impl/nm-setting-connection.c:1149 +#: src/libnm-core-impl/nm-setting-connection.c:1192 #, c-format msgid "Slave connections need a valid '%s' property" msgstr "Für Slave-Verbindungen ist eine gültige »%s«-Eigenschaft nötig" -#: src/libnm-core-impl/nm-setting-connection.c:1173 +#: src/libnm-core-impl/nm-setting-connection.c:1215 #, c-format msgid "Cannot set '%s' without '%s'" msgstr "»%s« kann nicht ohne »%s« gesetzt werden" -#: src/libnm-core-impl/nm-setting-connection.c:1232 +#: src/libnm-core-impl/nm-setting-connection.c:1274 #, c-format msgid "'%s' is not a valid UUID" msgstr "»%s» ist keine gültige UUID" -#: src/libnm-core-impl/nm-setting-connection.c:1277 +#: src/libnm-core-impl/nm-setting-connection.c:1319 #, c-format msgid "connection type '%s' is not valid" msgstr "Verbindungstyp »%s« ist ungültig" -#: src/libnm-core-impl/nm-setting-connection.c:1383 +#: src/libnm-core-impl/nm-setting-connection.c:1425 #, c-format -msgid "'%s' connections must be enslaved to '%s', not '%s'" +msgid "'%s' connections must be attached as port to '%s', not '%s'" msgstr "" -#: src/libnm-core-impl/nm-setting-connection.c:1398 +#: src/libnm-core-impl/nm-setting-connection.c:1440 #, c-format msgid "metered value %d is not valid" msgstr "Der gemessene Wert %d ist ungültig" -#: src/libnm-core-impl/nm-setting-connection.c:1412 -#: src/libnm-core-impl/nm-setting-connection.c:1426 -#: src/libnm-core-impl/nm-setting-connection.c:1440 -#: src/libnm-core-impl/nm-setting-connection.c:1501 +#: src/libnm-core-impl/nm-setting-connection.c:1454 +#: src/libnm-core-impl/nm-setting-connection.c:1468 +#: src/libnm-core-impl/nm-setting-connection.c:1482 +#: src/libnm-core-impl/nm-setting-connection.c:1543 #, c-format msgid "value %d is not valid" msgstr "Der Wert %d ist ungültig" -#: src/libnm-core-impl/nm-setting-connection.c:1456 +#: src/libnm-core-impl/nm-setting-connection.c:1498 msgid "\"disabled\" flag cannot be combined with other MPTCP flags" msgstr "" -#: src/libnm-core-impl/nm-setting-connection.c:1470 +#: src/libnm-core-impl/nm-setting-connection.c:1512 msgid "cannot set both \"signal\" and \"fullmesh\" MPTCP flags" msgstr "" -#: src/libnm-core-impl/nm-setting-connection.c:1482 +#: src/libnm-core-impl/nm-setting-connection.c:1524 #, fuzzy, c-format #| msgid "'%u' flags are not valid; use combination of %s" msgid "value %u is not a valid combination of MPTCP flags" msgstr "Flags »%u« sind ungültig. Verwenden Sie eine Kombination von %s" -#: src/libnm-core-impl/nm-setting-connection.c:1529 +#: src/libnm-core-impl/nm-setting-connection.c:1571 #, fuzzy #| msgid "interface name is longer than 15 characters" msgid "DHCP option cannot be longer than 255 characters" msgstr "Schnittstellenname ist länger als 15 Zeichen" -#: src/libnm-core-impl/nm-setting-connection.c:1540 +#: src/libnm-core-impl/nm-setting-connection.c:1582 #, fuzzy #| msgid "URI is not valid UTF-8" msgid "MUD URL is not a valid URL" msgstr "Die Adresse ist kein gültiges UTF-8" -#: src/libnm-core-impl/nm-setting-connection.c:1560 +#: src/libnm-core-impl/nm-setting-connection.c:1602 msgid "invalid permissions not in format \"user:$UNAME[:]\"" msgstr "" -#: src/libnm-core-impl/nm-setting-connection.c:1589 +#: src/libnm-core-impl/nm-setting-connection.c:1631 #, c-format msgid "property type should be set to '%s'" msgstr "Der Eigenschaftentyp sollte auf »%s« eingestellt sein" -#: src/libnm-core-impl/nm-setting-connection.c:1607 +#: src/libnm-core-impl/nm-setting-connection.c:1649 #, fuzzy, c-format #| msgid "slave-type '%s' requires a '%s' setting in the connection" msgid "port-type '%s' requires a '%s' setting in the connection" @@ -1971,27 +2021,31 @@ msgstr "" "Der Slave-Typ »%s« erfordert das Vorhandensein der Einstellung »%s« in der " "Verbindung" -#: src/libnm-core-impl/nm-setting-connection.c:1618 -#, c-format +#: src/libnm-core-impl/nm-setting-connection.c:1660 +#, fuzzy, c-format +#| msgid "" +#| "Detect a slave connection with '%s' set and a port type '%s'. '%s' should " +#| "be set to '%s'" msgid "" -"Detect a slave connection with '%s' set and a port type '%s'. '%s' should be " +"Detect a port connection with '%s' set and a port type '%s'. '%s' should be " "set to '%s'" msgstr "" -"Eine Slave-Verbindung mit gesetztem »%s« und dem Port-Typ »%s« erkennen. »%s« " -"sollte auf »%s« gesetzt werden." +"Eine Slave-Verbindung mit gesetztem »%s« und dem Port-Typ »%s« erkennen. " +"»%s« sollte auf »%s« gesetzt werden." -#: src/libnm-core-impl/nm-setting-connection.c:1644 -#, c-format -msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting" +#: src/libnm-core-impl/nm-setting-connection.c:1686 +#, fuzzy, c-format +#| msgid "A slave connection with '%s' set to '%s' cannot have a '%s' setting" +msgid "A port connection with '%s' set to '%s' cannot have a '%s' setting" msgstr "" "Eine Slave-Verbindung mit gesetztem »%s« für »%s« darf nicht die Einstellung " "»%s« haben" -#: src/libnm-core-impl/nm-setting-connection.c:1661 +#: src/libnm-core-impl/nm-setting-connection.c:1703 msgid "UUID needs normalization" msgstr "UUID erfordert Normalisierung" -#: src/libnm-core-impl/nm-setting-connection.c:1676 +#: src/libnm-core-impl/nm-setting-connection.c:1718 msgid "read-only is deprecated and not settable for the user" msgstr "" @@ -2046,42 +2100,49 @@ msgstr "" msgid "unknown ethtool option '%s'" msgstr "Unbekannte Ethtool-Option »%s«" -#: src/libnm-core-impl/nm-setting-gsm.c:337 +#: src/libnm-core-impl/nm-setting-generic.c:109 +#, fuzzy, c-format +#| msgid "property cannot be set when dhcp-hostname is also set" +msgid "the property is required when %s.%s is set" +msgstr "" +"Eigenschaft darf nicht gesetzt sein, wenn dhcp-hostname auch gesetzt ist" + +#: src/libnm-core-impl/nm-setting-gsm.c:483 #, fuzzy #| msgid "property is empty" msgid "property value is empty" msgstr "Eigenschaft ist leer" -#: src/libnm-core-impl/nm-setting-gsm.c:346 +#: src/libnm-core-impl/nm-setting-gsm.c:492 #, fuzzy #| msgid "property value '%s' is empty or too long (>64)" msgid "property value is too long (>64)" msgstr "Eigenschaftswert »%s« ist leer oder zu lang (>64)" -#: src/libnm-core-impl/nm-setting-gsm.c:378 +#: src/libnm-core-impl/nm-setting-gsm.c:524 #, c-format msgid "'%s' contains invalid char(s) (use [A-Za-z._-])" msgstr "»%s« enthält ungültige Zeichen (Verwenden Sie [A-Za-z._-])" -#: src/libnm-core-impl/nm-setting-gsm.c:425 +#: src/libnm-core-impl/nm-setting-gsm.c:571 #, c-format msgid "'%s' length is invalid (should be 5 or 6 digits)" msgstr "»%s« Länge ist ungültig (muss 5 oder 6 Ziffern sein)" -#: src/libnm-core-impl/nm-setting-gsm.c:439 +#: src/libnm-core-impl/nm-setting-gsm.c:585 #, c-format msgid "'%s' is not a number" msgstr "»%s« ist keine Zahl" -#: src/libnm-core-impl/nm-setting-gsm.c:476 +#: src/libnm-core-impl/nm-setting-gsm.c:622 msgid "property is empty or wrong size" msgstr "Eigenschaft ist leer oder hat eine falsche Größe" -#: src/libnm-core-impl/nm-setting-gsm.c:489 +#: src/libnm-core-impl/nm-setting-gsm.c:635 msgid "property must contain only digits" msgstr "die Eigenschaft darf nur Ziffern enthalten" -#: src/libnm-core-impl/nm-setting-gsm.c:503 +#: src/libnm-core-impl/nm-setting-gsm.c:649 msgid "can't be enabled when manual configuration is present" msgstr "" @@ -2109,8 +2170,8 @@ msgstr "die Werte 0 und 0x8000 sind nicht erlaubt" #: src/libnm-core-impl/nm-setting-infiniband.c:260 #, c-format msgid "" -"interface name of software infiniband device must be '%s' or unset (instead it " -"is '%s')" +"interface name of software infiniband device must be '%s' or unset (instead " +"it is '%s')" msgstr "" "Schnittstellenname des Software Infiniband-Geräts muss »%s« oder nicht " "festgelegt sein (es ist statt dessen »%s«)" @@ -2118,8 +2179,8 @@ msgstr "" #: src/libnm-core-impl/nm-setting-infiniband.c:268 #, fuzzy, c-format #| msgid "" -#| "interface name of software infiniband device must be '%s' or unset (instead " -#| "it is '%s')" +#| "interface name of software infiniband device must be '%s' or unset " +#| "(instead it is '%s')" msgid "" "interface name of software infiniband device with MAC address must be unset " "(instead it is '%s')" @@ -2166,12 +2227,12 @@ msgid "Invalid routing metric '%s'" msgstr "Ungültige Routing-Metrik »%s«" #: src/libnm-core-impl/nm-setting-ip-config.c:1339 -#: src/libnm-core-impl/nm-setting-sriov.c:400 +#: src/libnm-core-impl/nm-setting-sriov.c:410 msgid "unknown attribute" msgstr "Unbekanntes Attribut" #: src/libnm-core-impl/nm-setting-ip-config.c:1349 -#: src/libnm-core-impl/nm-setting-sriov.c:410 +#: src/libnm-core-impl/nm-setting-sriov.c:420 #, c-format msgid "invalid attribute type '%s'" msgstr "Ungültiger Attributtyp »%s«" @@ -2394,88 +2455,95 @@ msgstr "Zertifikat ist ungültig: %s" msgid "invalid address family" msgstr "Ungültige Adressfamilie" -#: src/libnm-core-impl/nm-setting-ip-config.c:5108 +#: src/libnm-core-impl/nm-setting-ip-config.c:5112 #, fuzzy, c-format #| msgid "certificate is invalid: %s" msgid "rule #%u is invalid: %s" msgstr "Zertifikat ist ungültig: %s" -#: src/libnm-core-impl/nm-setting-ip-config.c:5510 +#: src/libnm-core-impl/nm-setting-ip-config.c:5586 #, fuzzy, c-format #| msgid "%d. DNS server address is invalid" msgid "%u. DNS server address is invalid" msgstr "%d. DNS-Server-Adresse ist ungültig" -#: src/libnm-core-impl/nm-setting-ip-config.c:5530 +#: src/libnm-core-impl/nm-setting-ip-config.c:5606 #, c-format msgid "%d. IP address is invalid" msgstr "%d. IP-Adresse ist ungültig" -#: src/libnm-core-impl/nm-setting-ip-config.c:5545 +#: src/libnm-core-impl/nm-setting-ip-config.c:5621 #, c-format msgid "%d. IP address has 'label' property with invalid type" msgstr "%d. IP-Adresse hat die Eigenschaft »label« mit einem ungültigen Typ" -#: src/libnm-core-impl/nm-setting-ip-config.c:5557 +#: src/libnm-core-impl/nm-setting-ip-config.c:5633 #, c-format msgid "%d. IP address has invalid label '%s'" msgstr "%d. IP-Adresse hat den ungültigen Typ »%s«" -#: src/libnm-core-impl/nm-setting-ip-config.c:5575 +#: src/libnm-core-impl/nm-setting-ip-config.c:5651 msgid "gateway cannot be set if there are no addresses configured" msgstr "" "Gateway kann nicht festgelegt werden, wenn keine Adressen eingerichtet sind" -#: src/libnm-core-impl/nm-setting-ip-config.c:5587 +#: src/libnm-core-impl/nm-setting-ip-config.c:5663 msgid "gateway is invalid" msgstr "Gateway ist ungültig" -#: src/libnm-core-impl/nm-setting-ip-config.c:5605 +#: src/libnm-core-impl/nm-setting-ip-config.c:5681 #, c-format msgid "%d. route is invalid" msgstr "%d. Route ist ungültig" -#: src/libnm-core-impl/nm-setting-ip-config.c:5618 +#: src/libnm-core-impl/nm-setting-ip-config.c:5694 #, c-format msgid "invalid attribute: %s" msgstr "Ungültiges Attribut: %s" -#: src/libnm-core-impl/nm-setting-ip-config.c:5638 +#: src/libnm-core-impl/nm-setting-ip-config.c:5714 #, c-format msgid "%u. rule has wrong address-family" msgstr "" -#: src/libnm-core-impl/nm-setting-ip-config.c:5650 +#: src/libnm-core-impl/nm-setting-ip-config.c:5726 #, c-format msgid "%u. rule is invalid: %s" msgstr "%u. Route ist ungültig: %s" -#: src/libnm-core-impl/nm-setting-ip-config.c:5666 +#: src/libnm-core-impl/nm-setting-ip-config.c:5742 #, c-format msgid "'%s' is not a valid IAID" msgstr "»%s» ist keine gültige IAID" -#: src/libnm-core-impl/nm-setting-ip-config.c:5680 +#: src/libnm-core-impl/nm-setting-ip-config.c:5756 #, fuzzy, c-format #| msgid "property cannot be set when dhcp-hostname is also set" msgid "the property cannot be set when '%s' is disabled" -msgstr "Eigenschaft darf nicht gesetzt sein, wenn dhcp-hostname auch gesetzt ist" +msgstr "" +"Eigenschaft darf nicht gesetzt sein, wenn dhcp-hostname auch gesetzt ist" -#: src/libnm-core-impl/nm-setting-ip-config.c:5706 +#: src/libnm-core-impl/nm-setting-ip-config.c:5782 msgid "the property is currently supported only for DHCPv4" msgstr "" -#: src/libnm-core-impl/nm-setting-ip-config.c:5723 +#: src/libnm-core-impl/nm-setting-ip-config.c:5799 #, fuzzy, c-format #| msgid "'%s' is not a valid IP address" msgid "'%s' is not a valid IP or subnet" msgstr "»%s« ist keine gültige IP-Adresse" -#: src/libnm-core-impl/nm-setting-ip-config.c:5739 +#: src/libnm-core-impl/nm-setting-ip-config.c:5823 #, c-format msgid "a gateway is incompatible with '%s'" msgstr "ein Gateway ist nicht kompatibel mit »%s«" +#: src/libnm-core-impl/nm-setting-ip-config.c:5837 +#, fuzzy, c-format +#| msgid "a gateway is incompatible with '%s'" +msgid "the value is inconsistent with '%s'" +msgstr "ein Gateway ist nicht kompatibel mit »%s«" + #: src/libnm-core-impl/nm-setting-ip-tunnel.c:364 #, c-format msgid "'%d' is not a valid tunnel mode" @@ -2502,8 +2570,8 @@ msgstr "»%s« ist kein gültiger Tunnel-Schlüssel" #: src/libnm-core-impl/nm-setting-ip-tunnel.c:483 msgid "a fixed TTL is allowed only when path MTU discovery is enabled" msgstr "" -"ein fester TTL-wert ist nur erlaubt, sofern »path MTU discovery« eingeschaltet " -"ist" +"ein fester TTL-wert ist nur erlaubt, sofern »path MTU discovery« " +"eingeschaltet ist" #: src/libnm-core-impl/nm-setting-ip-tunnel.c:502 #, c-format @@ -2519,77 +2587,82 @@ msgstr "darf nur für VTI-Tunnel festgelegt werden" msgid "wired setting not allowed for mode %s" msgstr "" -#: src/libnm-core-impl/nm-setting-ip4-config.c:171 -#: src/libnm-core-impl/nm-setting-ip6-config.c:236 +#: src/libnm-core-impl/nm-setting-ip4-config.c:193 +#: src/libnm-core-impl/nm-setting-ip6-config.c:278 #, c-format msgid "method '%s' requires at least an address or a route" msgstr "" -#: src/libnm-core-impl/nm-setting-ip4-config.c:186 -#: src/libnm-core-impl/nm-setting-ip4-config.c:200 -#: src/libnm-core-impl/nm-setting-ip4-config.c:216 -#: src/libnm-core-impl/nm-setting-ip6-config.c:255 -#: src/libnm-core-impl/nm-setting-ip6-config.c:269 -#: src/libnm-core-impl/nm-setting-ip6-config.c:283 +#: src/libnm-core-impl/nm-setting-ip4-config.c:208 +#: src/libnm-core-impl/nm-setting-ip4-config.c:222 +#: src/libnm-core-impl/nm-setting-ip4-config.c:238 +#: src/libnm-core-impl/nm-setting-ip6-config.c:297 +#: src/libnm-core-impl/nm-setting-ip6-config.c:311 +#: src/libnm-core-impl/nm-setting-ip6-config.c:325 #, c-format msgid "this property is not allowed for '%s=%s'" msgstr "Diese Eigenschaft ist nicht erlaubt für »%s=%s«" -#: src/libnm-core-impl/nm-setting-ip4-config.c:260 +#: src/libnm-core-impl/nm-setting-ip4-config.c:283 msgid "cannot enable ipv4.link-local with ipv4.method=disabled" msgstr "" -#: src/libnm-core-impl/nm-setting-ip4-config.c:272 +#: src/libnm-core-impl/nm-setting-ip4-config.c:295 msgid "cannot disable ipv4.link-local with ipv4.method=link-local" msgstr "" -#: src/libnm-core-impl/nm-setting-ip4-config.c:308 +#: src/libnm-core-impl/nm-setting-ip4-config.c:331 #, c-format msgid "'%s' is not a valid FQDN" msgstr "»%s« ist keine gültiger FQDN" -#: src/libnm-core-impl/nm-setting-ip4-config.c:321 +#: src/libnm-core-impl/nm-setting-ip4-config.c:344 msgid "property cannot be set when dhcp-hostname is also set" -msgstr "Eigenschaft darf nicht gesetzt sein, wenn dhcp-hostname auch gesetzt ist" +msgstr "" +"Eigenschaft darf nicht gesetzt sein, wenn dhcp-hostname auch gesetzt ist" -#: src/libnm-core-impl/nm-setting-ip4-config.c:336 +#: src/libnm-core-impl/nm-setting-ip4-config.c:359 msgid "FQDN flags requires a FQDN set" msgstr "" -#: src/libnm-core-impl/nm-setting-ip4-config.c:355 +#: src/libnm-core-impl/nm-setting-ip4-config.c:378 #, c-format msgid "multiple addresses are not allowed for '%s=%s'" msgstr "mehrfache Adressen sind nicht erlaubt für »%s=%s«" -#: src/libnm-core-impl/nm-setting-ip4-config.c:372 +#: src/libnm-core-impl/nm-setting-ip4-config.c:395 msgid "property should be TRUE when method is set to disabled" msgstr "" "Der Eigenschaft sollte auf »TRUE« eingestellt sein, wenn die Methode " "deaktiviert ist" -#: src/libnm-core-impl/nm-setting-ip6-config.c:335 +#: src/libnm-core-impl/nm-setting-ip6-config.c:377 msgid "value is not a valid token" msgstr "Der Wert ist keine gültiges Token" -#: src/libnm-core-impl/nm-setting-ip6-config.c:349 +#: src/libnm-core-impl/nm-setting-ip6-config.c:391 msgid "only makes sense with EUI64 address generation mode" msgstr "ergibt nur einen Sinn im Modus EUI64-Addressenerstellung" -#: src/libnm-core-impl/nm-setting-ip6-config.c:363 +#: src/libnm-core-impl/nm-setting-ip6-config.c:405 msgid "invalid DUID" msgstr "Ungültige DUID" -#: src/libnm-core-impl/nm-setting-ip6-config.c:380 +#: src/libnm-core-impl/nm-setting-ip6-config.c:422 #, fuzzy #| msgid "Invalid IPv6 address prefix '%u'" msgid "must be a valid IPv6 address with prefix" msgstr "Ungültiges IPv6-Adressenpräfix »%u«" -#: src/libnm-core-impl/nm-setting-ip6-config.c:395 +#: src/libnm-core-impl/nm-setting-ip6-config.c:435 +msgid "DHCP DSCP is not supported for IPv6" +msgstr "" + +#: src/libnm-core-impl/nm-setting-ip6-config.c:449 msgid "token is not in canonical form" msgstr "Token ist nicht in kanonischer Form" -#: src/libnm-core-impl/nm-setting-ip6-config.c:412 +#: src/libnm-core-impl/nm-setting-ip6-config.c:466 #, fuzzy #| msgid "property should be TRUE when method is set to disabled" msgid "property should be TRUE when method is set to ignore or disabled" @@ -2615,42 +2688,42 @@ msgstr "" msgid "a loopback profile cannot be a port" msgstr "" -#: src/libnm-core-impl/nm-setting-macsec.c:249 +#: src/libnm-core-impl/nm-setting-macsec.c:267 msgid "the key is empty" msgstr "Schlüssel ist leer" -#: src/libnm-core-impl/nm-setting-macsec.c:259 +#: src/libnm-core-impl/nm-setting-macsec.c:277 #, c-format msgid "the key must be %d characters" msgstr "Schlüssel muss %d Zeichen lang sein" -#: src/libnm-core-impl/nm-setting-macsec.c:269 +#: src/libnm-core-impl/nm-setting-macsec.c:287 #, fuzzy #| msgid "IV must be an even number of bytes in length." msgid "the key must have an even number of characters between 2 and 64" msgstr "IV muss eine gerade Anzahl an Byte lang sein." -#: src/libnm-core-impl/nm-setting-macsec.c:278 +#: src/libnm-core-impl/nm-setting-macsec.c:296 msgid "the key contains non-hexadecimal characters" msgstr "Schlüssel enthält nicht-hexadezimale Zeichen" -#: src/libnm-core-impl/nm-setting-macsec.c:347 +#: src/libnm-core-impl/nm-setting-macsec.c:365 #: src/libnm-core-impl/nm-setting-macvlan.c:154 #: src/libnm-core-impl/nm-setting-vlan.c:654 #, c-format msgid "property is not specified and neither is '%s:%s'" msgstr "Eigenschaft ist nicht festgelegt und ebensowenig ist »%s:%s«" -#: src/libnm-core-impl/nm-setting-macsec.c:378 +#: src/libnm-core-impl/nm-setting-macsec.c:396 #, c-format msgid "EAP key management requires '%s' setting presence" msgstr "EAP-Schlüsselverwaltung erfordert Vorhandensein der Einstellung »%s«" -#: src/libnm-core-impl/nm-setting-macsec.c:387 +#: src/libnm-core-impl/nm-setting-macsec.c:405 msgid "must be either psk (0) or eap (1)" msgstr "muss entweder psk (0) oder eap (1) sein" -#: src/libnm-core-impl/nm-setting-macsec.c:398 +#: src/libnm-core-impl/nm-setting-macsec.c:416 msgid "only valid for psk mode" msgstr "nur gültig für psk-Modus" @@ -2666,20 +2739,22 @@ msgid "is empty" msgstr "ist leer" #: src/libnm-core-impl/nm-setting-olpc-mesh.c:110 -#: src/libnm-core-impl/nm-setting-wireless.c:908 +#: src/libnm-core-impl/nm-setting-wireless.c:1113 msgid "SSID length is out of range <1-32> bytes" msgstr "Länge der SSID ist außerhalb des Bereichs <1-32> Byte" #: src/libnm-core-impl/nm-setting-olpc-mesh.c:122 -#: src/libnm-core-impl/nm-setting-wireless.c:961 +#: src/libnm-core-impl/nm-setting-wireless.c:1166 #, c-format msgid "'%d' is not a valid channel" msgstr "»%d« ist kein gültiger Kanal" #: src/libnm-core-impl/nm-setting-ovs-bridge.c:160 -#, c-format -msgid "A connection with a '%s' setting must not have a master." +#, fuzzy, c-format +msgid "A connection with a '%s' setting must not have a controller." msgstr "" +"Für eine Verbindung des Typs »%s« muss connection.type auf »ovs-interface« " +"gesetzt sein, es ist aber »%s« gesetzt" #: src/libnm-core-impl/nm-setting-ovs-bridge.c:174 #, c-format @@ -2700,8 +2775,8 @@ msgstr "Schlüssel darf kein »..« enthalten" #: src/libnm-core-impl/nm-setting-ovs-external-ids.c:166 #, c-format msgid "" -"OVS %s can only be added to a profile of type OVS bridge/port/interface or to " -"OVS system interface" +"OVS %s can only be added to a profile of type OVS bridge/port/interface or " +"to OVS system interface" msgstr "" #: src/libnm-core-impl/nm-setting-ovs-external-ids.c:363 @@ -2789,6 +2864,7 @@ msgid "Missing ovs interface type" msgstr "Typ der ovs-Schnittstelle fehlt" #: src/libnm-core-impl/nm-setting-ovs-interface.c:315 +#: src/libnm-core-impl/nm-setting-ovs-port.c:420 #, fuzzy, c-format msgid "A connection with a '%s' setting must have a controller." msgstr "" @@ -2809,25 +2885,6 @@ msgstr "" msgid "VLANs %u and %u are not sorted in ascending order" msgstr "" -#: src/libnm-core-impl/nm-setting-ovs-port.c:420 -#, fuzzy, c-format -msgid "A connection with a '%s' setting must have a master." -msgstr "" -"Für eine Verbindung des Typs »%s« muss connection.type auf »ovs-interface« " -"gesetzt sein, es ist aber »%s« gesetzt" - -#: src/libnm-core-impl/nm-setting-ovs-port.c:434 -#, fuzzy, c-format -#| msgid "" -#| "A connection with a '%s' setting must have the slave-type set to '%s'. " -#| "Instead it is '%s'" -msgid "" -"A connection with a '%s' setting must have the port-type set to '%s'. Instead " -"it is '%s'" -msgstr "" -"Für Verbindungen mit einer »%s«-Einstellung muss der Slave-Typ auf »%s« " -"gesetzt sein, hier ist es jedoch »%s«." - #: src/libnm-core-impl/nm-setting-ovs-port.c:457 #, c-format msgid "'%s' is not allowed in vlan_mode" @@ -2857,8 +2914,8 @@ msgstr "»%d« ist außerhalb des Bereichs <128-16384>" #, c-format msgid "setting this property requires non-zero '%s' property" msgstr "" -"Festlegen dieser Eigenschaft erfordert eine von Null verschiedene Eigenschaft " -"»%s«" +"Festlegen dieser Eigenschaft erfordert eine von Null verschiedene " +"Eigenschaft »%s«" #: src/libnm-core-impl/nm-setting-proxy.c:137 msgid "invalid proxy method" @@ -2881,34 +2938,34 @@ msgstr "Das Skript ist kein gültiges UTF8" msgid "the script lacks FindProxyForURL function" msgstr "dem Skript fehlt die Funktion FindProxyForURL" -#: src/libnm-core-impl/nm-setting-sriov.c:422 -#: src/libnm-core-impl/nm-setting-wired.c:809 -#: src/libnm-core-impl/nm-setting-wired.c:825 -#: src/libnm-core-impl/nm-setting-wired.c:899 -#: src/libnm-core-impl/nm-setting-wired.c:958 -#: src/libnm-core-impl/nm-setting-wireless.c:1051 -#: src/libnm-core-impl/nm-setting-wireless.c:1070 -#: src/libnmc-setting/nm-meta-setting-desc.c:4283 +#: src/libnm-core-impl/nm-setting-sriov.c:432 +#: src/libnm-core-impl/nm-setting-wired.c:993 +#: src/libnm-core-impl/nm-setting-wired.c:1010 +#: src/libnm-core-impl/nm-setting-wired.c:1085 +#: src/libnm-core-impl/nm-setting-wired.c:1144 +#: src/libnm-core-impl/nm-setting-wireless.c:1257 +#: src/libnm-core-impl/nm-setting-wireless.c:1277 +#: src/libnmc-setting/nm-meta-setting-desc.c:4258 #, c-format msgid "'%s' is not a valid MAC address" msgstr "»%s« ist keine gültige MAC-Adresse" -#: src/libnm-core-impl/nm-setting-sriov.c:1045 +#: src/libnm-core-impl/nm-setting-sriov.c:1103 #, c-format msgid "VF with index %u, but the total number of VFs is %u" msgstr "VF mit Index %u, aber die Gesamtzahl der VFs ist %u" -#: src/libnm-core-impl/nm-setting-sriov.c:1059 +#: src/libnm-core-impl/nm-setting-sriov.c:1117 #, c-format msgid "invalid VF %u: %s" msgstr "ungültige VF %u: %s" -#: src/libnm-core-impl/nm-setting-sriov.c:1073 +#: src/libnm-core-impl/nm-setting-sriov.c:1131 #, c-format msgid "duplicate VF index %u" msgstr "" -#: src/libnm-core-impl/nm-setting-sriov.c:1097 +#: src/libnm-core-impl/nm-setting-sriov.c:1155 #, c-format msgid "VFs %d and %d are not sorted by ascending index" msgstr "VFs %d und %d sind nicht nach aufsteigendem Index sortiert" @@ -2943,33 +3000,33 @@ msgid "there are duplicate TC filters" msgstr "" #: src/libnm-core-impl/nm-setting-team.c:119 -#: src/libnm-core-impl/nm-setting-team.c:193 -#: src/libnm-core-impl/nm-setting-team.c:325 +#: src/libnm-core-impl/nm-setting-team.c:189 +#: src/libnm-core-impl/nm-setting-team.c:321 #, c-format msgid "%s is out of range [0, %d]" msgstr "»%s« ist außerhalb des Bereichs [0, %d]" -#: src/libnm-core-impl/nm-setting-team.c:170 +#: src/libnm-core-impl/nm-setting-team.c:166 msgid "Missing target-host in nsna_ping link watcher" msgstr "Fehlender Zielhost in der nsna_ping Verbindungsüberwachung" -#: src/libnm-core-impl/nm-setting-team.c:178 -#: src/libnm-core-impl/nm-setting-team.c:301 +#: src/libnm-core-impl/nm-setting-team.c:174 +#: src/libnm-core-impl/nm-setting-team.c:297 #, c-format msgid "target-host '%s' contains invalid characters" msgstr "Zielhost »%s« enthält ungültige Zeichen" -#: src/libnm-core-impl/nm-setting-team.c:292 +#: src/libnm-core-impl/nm-setting-team.c:288 #, c-format msgid "Missing %s in arp_ping link watcher" msgstr "Fehlender %s in der arp_ping Verbindungsüberwachung" -#: src/libnm-core-impl/nm-setting-team.c:310 +#: src/libnm-core-impl/nm-setting-team.c:306 #, c-format msgid "source-host '%s' contains invalid characters" msgstr "Quellrechner »%s« enthält ungültige Zeichen" -#: src/libnm-core-impl/nm-setting-team.c:335 +#: src/libnm-core-impl/nm-setting-team.c:331 #, fuzzy #| msgid "%s is out of range [0, %d]" msgid "vlanid is out of range [-1, 4094]" @@ -3030,26 +3087,27 @@ msgstr "Eine vlan-Einstellung sollte ebenfalls eine Ethernet-Einstellung haben" msgid "cannot set connection.multi-connect for VPN setting" msgstr "" -#: src/libnm-core-impl/nm-setting-vpn.c:612 +#: src/libnm-core-impl/nm-setting-vpn.c:647 msgid "setting contained a secret with an empty name" msgstr "Die Einstellung enthält ein Geheimnis mit einem leeren Namen" -#: src/libnm-core-impl/nm-setting-vpn.c:651 src/libnm-core-impl/nm-setting.c:3481 +#: src/libnm-core-impl/nm-setting-vpn.c:694 +#: src/libnm-core-impl/nm-setting.c:3579 msgid "not a secret property" msgstr "Keine Eigenschaft von »Geheimnis«" -#: src/libnm-core-impl/nm-setting-vpn.c:659 +#: src/libnm-core-impl/nm-setting-vpn.c:702 msgid "secret is not of correct type" msgstr "»Geheimnis« ist nicht vom richtigen Typ" -#: src/libnm-core-impl/nm-setting-vpn.c:741 -#: src/libnm-core-impl/nm-setting-vpn.c:791 +#: src/libnm-core-impl/nm-setting-vpn.c:789 +#: src/libnm-core-impl/nm-setting-vpn.c:840 #, fuzzy #| msgid "'%s' cannot be empty" msgid "secret name cannot be empty" msgstr "»%s« darf nicht leer sein" -#: src/libnm-core-impl/nm-setting-vpn.c:757 +#: src/libnm-core-impl/nm-setting-vpn.c:805 #, fuzzy #| msgid "secret not found" msgid "secret flags property not found" @@ -3073,126 +3131,126 @@ msgstr "»%s« ist keine gültige IP%c-Adresse" msgid "%d is greater than local port max %d" msgstr "%d ist größer als das Maximum %d des lokalen Ports" -#: src/libnm-core-impl/nm-setting-wired.c:789 +#: src/libnm-core-impl/nm-setting-wired.c:973 #, c-format msgid "'%s' is not a valid Ethernet port value" msgstr "»%s« ist kein gültiger Wert für einen Ethernet-Port" -#: src/libnm-core-impl/nm-setting-wired.c:799 +#: src/libnm-core-impl/nm-setting-wired.c:983 #, c-format msgid "'%s' is not a valid duplex value" msgstr "»%s« ist kein gültiger Duplex-Wert" -#: src/libnm-core-impl/nm-setting-wired.c:872 +#: src/libnm-core-impl/nm-setting-wired.c:1058 #, fuzzy, c-format #| msgid "invalid key \"%s\": %s" msgid "invalid key '%s'" msgstr "Ungültiger Schlüsselname »%s«: %s" -#: src/libnm-core-impl/nm-setting-wired.c:884 +#: src/libnm-core-impl/nm-setting-wired.c:1070 #, c-format msgid "invalid value for key '%s'" msgstr "Ungültiger Wert für Schlüssel »%s«" -#: src/libnm-core-impl/nm-setting-wired.c:933 +#: src/libnm-core-impl/nm-setting-wired.c:1119 msgid "Wake-on-LAN mode 'default' and 'ignore' are exclusive flags" msgstr "" "Modi »default« und »ignore« für Wake-on-LAN schließen sich gegenseitig aus" -#: src/libnm-core-impl/nm-setting-wired.c:946 +#: src/libnm-core-impl/nm-setting-wired.c:1132 msgid "Wake-on-LAN password can only be used with magic packet mode" msgstr "" "Passwort für Wake-on-LAN kann nur zusammen mit dem magischen Paketmodus " "verwendet werden" -#: src/libnm-core-impl/nm-setting-wired.c:977 +#: src/libnm-core-impl/nm-setting-wired.c:1163 msgid "both speed and duplex should have a valid value or both should be unset" msgstr "" -#: src/libnm-core-impl/nm-setting-wired.c:978 +#: src/libnm-core-impl/nm-setting-wired.c:1164 msgid "both speed and duplex are required for static link configuration" msgstr "" "sowohl Geschwindigkeit als auch Duplexmodus sind für eine statische Link-" "Konfiguration notwendig" -#: src/libnm-core-impl/nm-setting-wireguard.c:748 +#: src/libnm-core-impl/nm-setting-wireguard.c:747 msgid "missing public-key for peer" msgstr "" -#: src/libnm-core-impl/nm-setting-wireguard.c:754 +#: src/libnm-core-impl/nm-setting-wireguard.c:753 msgid "invalid public-key for peer" msgstr "" -#: src/libnm-core-impl/nm-setting-wireguard.c:764 +#: src/libnm-core-impl/nm-setting-wireguard.c:763 #, fuzzy #| msgid "invalid private key" msgid "invalid preshared-key for peer" msgstr "Ungültiger privater Schlüssel" -#: src/libnm-core-impl/nm-setting-wireguard.c:783 +#: src/libnm-core-impl/nm-setting-wireguard.c:782 #, fuzzy #| msgid "Local endpoint [none]" msgid "invalid endpoint for peer" msgstr "Lokaler Endpunkt [keiner]" -#: src/libnm-core-impl/nm-setting-wireguard.c:795 +#: src/libnm-core-impl/nm-setting-wireguard.c:794 #, fuzzy, c-format #| msgid "invalid IP address: %s" msgid "invalid IP address \"%s\" for allowed-ip of peer" msgstr "Ungültige IP-Adresse: %s" -#: src/libnm-core-impl/nm-setting-wireguard.c:806 +#: src/libnm-core-impl/nm-setting-wireguard.c:805 msgid "invalid preshared-key-flags for peer" msgstr "" -#: src/libnm-core-impl/nm-setting-wireguard.c:1588 +#: src/libnm-core-impl/nm-setting-wireguard.c:1587 #, c-format msgid "peer #%u has no public-key" msgstr "" -#: src/libnm-core-impl/nm-setting-wireguard.c:1601 +#: src/libnm-core-impl/nm-setting-wireguard.c:1600 #, c-format msgid "peer #%u has invalid public-key" msgstr "" -#: src/libnm-core-impl/nm-setting-wireguard.c:1617 +#: src/libnm-core-impl/nm-setting-wireguard.c:1616 #, c-format msgid "peer #%u has invalid endpoint" msgstr "" -#: src/libnm-core-impl/nm-setting-wireguard.c:1649 +#: src/libnm-core-impl/nm-setting-wireguard.c:1648 #, c-format msgid "peer #%u has invalid allowed-ips setting" msgstr "" -#: src/libnm-core-impl/nm-setting-wireguard.c:1663 +#: src/libnm-core-impl/nm-setting-wireguard.c:1662 #, fuzzy, c-format #| msgid "certificate is invalid: %s" msgid "peer #%u is invalid: %s" msgstr "Zertifikat ist ungültig: %s" -#: src/libnm-core-impl/nm-setting-wireguard.c:1735 -#: src/libnm-core-impl/nm-setting-wireguard.c:1754 +#: src/libnm-core-impl/nm-setting-wireguard.c:1734 +#: src/libnm-core-impl/nm-setting-wireguard.c:1753 #, c-format msgid "method \"%s\" is not supported for WireGuard" msgstr "" -#: src/libnm-core-impl/nm-setting-wireguard.c:1778 +#: src/libnm-core-impl/nm-setting-wireguard.c:1777 msgid "key must be 32 bytes base64 encoded" msgstr "" -#: src/libnm-core-impl/nm-setting-wireguard.c:1909 +#: src/libnm-core-impl/nm-setting-wireguard.c:1908 #, fuzzy #| msgid "Invalid secrets" msgid "invalid peer secrets" msgstr "Ungültige Passwörter" -#: src/libnm-core-impl/nm-setting-wireguard.c:1935 +#: src/libnm-core-impl/nm-setting-wireguard.c:1934 #, c-format msgid "peer #%u lacks public-key" msgstr "" -#: src/libnm-core-impl/nm-setting-wireguard.c:1952 +#: src/libnm-core-impl/nm-setting-wireguard.c:1951 #, c-format msgid "non-existing peer '%s'" msgstr "" @@ -3231,51 +3289,63 @@ msgid "" "suite-b-192' key management" msgstr "" -#: src/libnm-core-impl/nm-setting-wireless.c:920 +#: src/libnm-core-impl/nm-setting-wireless.c:1125 #, c-format msgid "'%s' is not a valid Wi-Fi mode" msgstr "»%s« ist kein gültiger WLAN-Modus" -#: src/libnm-core-impl/nm-setting-wireless.c:933 +#: src/libnm-core-impl/nm-setting-wireless.c:1138 #, c-format msgid "'%s' is not a valid band" msgstr "»%s« ist kein gültiges Band" -#: src/libnm-core-impl/nm-setting-wireless.c:946 +#: src/libnm-core-impl/nm-setting-wireless.c:1151 #, c-format msgid "'%s' requires setting '%s' property" msgstr "»%s« erfordert eine Festlegung der Eigenschaft »%s«" -#: src/libnm-core-impl/nm-setting-wireless.c:976 +#: src/libnm-core-impl/nm-setting-wireless.c:1181 #, fuzzy, c-format #| msgid "'%s' requires setting '%s' property" msgid "'%s' requires '%s' and '%s' property" msgstr "»%s« erfordert eine Festlegung der Eigenschaft »%s«" -#: src/libnm-core-impl/nm-setting-wireless.c:1088 -#: src/libnm-core-impl/nm-team-utils.c:2251 +#: src/libnm-core-impl/nm-setting-wireless.c:1295 +#: src/libnm-core-impl/nm-team-utils.c:2254 msgid "invalid value" msgstr "Ungültiger Wert" -#: src/libnm-core-impl/nm-setting-wireless.c:1101 +#: src/libnm-core-impl/nm-setting-wireless.c:1308 msgid "Wake-on-WLAN mode 'default' and 'ignore' are exclusive flags" msgstr "" -#: src/libnm-core-impl/nm-setting-wireless.c:1112 +#: src/libnm-core-impl/nm-setting-wireless.c:1319 msgid "Wake-on-WLAN trying to set unknown flag" msgstr "" -#: src/libnm-core-impl/nm-setting-wireless.c:1125 +#: src/libnm-core-impl/nm-setting-wireless.c:1332 msgid "AP isolation can be set only in AP mode" msgstr "" -#: src/libnm-core-impl/nm-setting-wireless.c:1143 +#: src/libnm-core-impl/nm-setting-wireless.c:1345 +msgid "a specific channel width can be set only in AP mode" +msgstr "" + +#: src/libnm-core-impl/nm-setting-wireless.c:1357 +msgid "a specific channel width can be set only together with a fixed channel" +msgstr "" + +#: src/libnm-core-impl/nm-setting-wireless.c:1370 +msgid "80MHz channels are only supported in the 5GHz band" +msgstr "" + +#: src/libnm-core-impl/nm-setting-wireless.c:1389 msgid "conflicting value of mac-address-randomization and cloned-mac-address" msgstr "" "Im Konflikt stehende Werte für »mac-address-randomization« und »cloned-mac-" "address«" -#: src/libnm-core-impl/nm-setting-wireless.c:1155 +#: src/libnm-core-impl/nm-setting-wireless.c:1401 msgid "property is deprecated and not implemented" msgstr "" @@ -3293,14 +3363,14 @@ msgstr "" msgid "channel must not be between %d and %d" msgstr "" -#: src/libnm-core-impl/nm-setting.c:1709 src/libnm-core-impl/nm-setting.c:1749 -#: src/libnm-core-impl/nm-setting.c:2060 +#: src/libnm-core-impl/nm-setting.c:1774 src/libnm-core-impl/nm-setting.c:1814 +#: src/libnm-core-impl/nm-setting.c:2125 #, c-format msgid "can't set property of type '%s' from value of type '%s'" msgstr "" "Eigenschaft des Typs »%s« von Wert des Typs »%s« kann nicht gesetzt werden" -#: src/libnm-core-impl/nm-setting.c:1725 +#: src/libnm-core-impl/nm-setting.c:1790 #, fuzzy, c-format #| msgid "" #| "value \"%s\" of type '%s' is invalid or out of range for property '%s' of " @@ -3310,440 +3380,448 @@ msgstr "" "Wert »%s« des Typs »%s« ist ungültig oder nicht im Wertebereich für " "Eigenschaft »%s« des Typs »%s«" -#: src/libnm-core-impl/nm-setting.c:1770 +#: src/libnm-core-impl/nm-setting.c:1835 #, c-format msgid "can not set property: %s" msgstr "Die Eigenschaft kann nicht festgelegt werden: %s" -#: src/libnm-core-impl/nm-setting.c:1999 +#: src/libnm-core-impl/nm-setting.c:2064 msgid "duplicate property" msgstr "Doppelte Eigenschaft" -#: src/libnm-core-impl/nm-setting.c:2019 +#: src/libnm-core-impl/nm-setting.c:2084 msgid "unknown property" msgstr "Unbekannte Eigenschaft" -#: src/libnm-core-impl/nm-setting.c:2093 src/libnm-core-impl/nm-setting.c:2175 +#: src/libnm-core-impl/nm-setting.c:2158 src/libnm-core-impl/nm-setting.c:2240 #, c-format msgid "failed to set property: %s" msgstr "Eigenschaft konnte nicht festgelegt werden: %s" -#: src/libnm-core-impl/nm-setting.c:2444 +#: src/libnm-core-impl/nm-setting.c:2515 +#, fuzzy, c-format +#| msgid "invalid value for '%s' at %s:%zu" +msgid "invalid value %d, expected %d-%d" +msgstr "Ungültiger Wert für »%s« bei %s:%zu" + +#: src/libnm-core-impl/nm-setting.c:2539 #, fuzzy #| msgid "'%s' cannot be empty" msgid "cannot be empty" msgstr "»%s« darf nicht leer sein" -#: src/libnm-core-impl/nm-setting.c:3378 +#: src/libnm-core-impl/nm-setting.c:3476 msgid "secret not found" msgstr "Passwort nicht gefunden" -#: src/libnm-core-impl/nm-team-utils.c:1530 -#: src/libnm-core-impl/nm-team-utils.c:1547 +#: src/libnm-core-impl/nm-team-utils.c:1532 +#: src/libnm-core-impl/nm-team-utils.c:1549 #, fuzzy, c-format #| msgid "invalid runner \"%s\"" msgid "invalid D-Bus property \"%s\"" msgstr "ungültiger Runner »%s«" -#: src/libnm-core-impl/nm-team-utils.c:1559 +#: src/libnm-core-impl/nm-team-utils.c:1561 #, fuzzy, c-format #| msgid "duplicate property" msgid "duplicate D-Bus property \"%s\"" msgstr "Doppelte Eigenschaft" -#: src/libnm-core-impl/nm-team-utils.c:1579 +#: src/libnm-core-impl/nm-team-utils.c:1581 #, fuzzy, c-format #| msgid "invalid file owner %d for %s" msgid "invalid D-Bus property \"%s\" for \"%s\"" msgstr "Ungültiger Dateibesitzer %d für %s" -#: src/libnm-core-impl/nm-team-utils.c:1651 +#: src/libnm-core-impl/nm-team-utils.c:1653 #, fuzzy, c-format msgid "unknown link-watcher name \"%s\"" msgstr "Unbekannte VPN-Erweiterung »%s«" -#: src/libnm-core-impl/nm-team-utils.c:2238 -msgid "value out or range" +#: src/libnm-core-impl/nm-team-utils.c:2241 +#, fuzzy +#| msgid "value out or range" +msgid "value out of range" msgstr "Wert ist außerhalb des Wertebereiches" -#: src/libnm-core-impl/nm-team-utils.c:2270 +#: src/libnm-core-impl/nm-team-utils.c:2274 #, fuzzy #| msgid "invalid runner \"%s\"" msgid "invalid runner-tx-hash" msgstr "ungültiger Runner »%s«" -#: src/libnm-core-impl/nm-team-utils.c:2298 +#: src/libnm-core-impl/nm-team-utils.c:2302 #, fuzzy, c-format #| msgid "'%s' is not allowed in lacp" msgid "%s is only allowed for runner %s" msgstr "»%s« ist nicht mit »lacp« erlaubt" -#: src/libnm-core-impl/nm-team-utils.c:2308 +#: src/libnm-core-impl/nm-team-utils.c:2312 #, fuzzy, c-format #| msgid "'%s' option is only valid for '%s=%s'" msgid "%s is only allowed for runners %s" msgstr "Option »%s« ist nur gültig für »%s=%s«." -#: src/libnm-core-impl/nm-team-utils.c:2329 +#: src/libnm-core-impl/nm-team-utils.c:2333 msgid "cannot set parameters for lacp and activebackup runners together" msgstr "" -#: src/libnm-core-impl/nm-team-utils.c:2343 +#: src/libnm-core-impl/nm-team-utils.c:2347 msgid "missing link watcher" msgstr "Fehlende Verbindungsüberwachung" -#: src/libnm-core-impl/nm-team-utils.c:2369 +#: src/libnm-core-impl/nm-team-utils.c:2373 msgid "team config exceeds size limit" msgstr "Die Team-Konfiguration übersteigt die Größenbeschränkung" -#: src/libnm-core-impl/nm-team-utils.c:2380 +#: src/libnm-core-impl/nm-team-utils.c:2384 #, fuzzy #| msgid "URI is not valid UTF-8" msgid "team config is not valid UTF-8" msgstr "Die Adresse ist kein gültiges UTF-8" -#: src/libnm-core-impl/nm-team-utils.c:2555 +#: src/libnm-core-impl/nm-team-utils.c:2559 #, fuzzy, c-format #| msgid "invalid runner \"%s\"" msgid "invalid D-Bus type \"%s\"" msgstr "ungültiger Runner »%s«" -#: src/libnm-core-impl/nm-team-utils.c:2594 +#: src/libnm-core-impl/nm-team-utils.c:2598 #, fuzzy, c-format #| msgid "invalid tfilter: %s" msgid "invalid link-watchers: %s" msgstr "ungültiger tfilter: %s" -#: src/libnm-core-impl/nm-utils.c:1365 +#: src/libnm-core-impl/nm-utils.c:1367 #, fuzzy #| msgid "Expected a value for '%s'\n" msgid "Expected value of type \"au\"" msgstr "Ein Wert wurde für »%s« erwartet\n" -#: src/libnm-core-impl/nm-utils.c:1508 src/libnm-core-impl/nm-utils.c:1673 +#: src/libnm-core-impl/nm-utils.c:1510 src/libnm-core-impl/nm-utils.c:1675 #, fuzzy #| msgid "Expected a value for '%s'\n" msgid "Expected value of type \"aau\"" msgstr "Ein Wert wurde für »%s« erwartet\n" -#: src/libnm-core-impl/nm-utils.c:1519 +#: src/libnm-core-impl/nm-utils.c:1521 msgid "Expected \"address-labels\" of type \"as\"" msgstr "" -#: src/libnm-core-impl/nm-utils.c:1541 +#: src/libnm-core-impl/nm-utils.c:1543 #, fuzzy, c-format #| msgid "Invalid IPv4 address prefix '%u'" msgid "Incomplete IPv4 address (idx=%u)" msgstr "Ungültiges IPv4-Adressenpräfix »%u«" -#: src/libnm-core-impl/nm-utils.c:1554 src/libnm-core-impl/nm-utils.c:1710 -#: src/libnm-core-impl/nm-utils.c:2019 src/libnm-core-impl/nm-utils.c:2216 -#: src/libnm-core-impl/nm-utils.c:2372 src/libnm-core-impl/nm-utils.c:2557 +#: src/libnm-core-impl/nm-utils.c:1556 src/libnm-core-impl/nm-utils.c:1712 +#: src/libnm-core-impl/nm-utils.c:2021 src/libnm-core-impl/nm-utils.c:2218 +#: src/libnm-core-impl/nm-utils.c:2374 src/libnm-core-impl/nm-utils.c:2559 #, fuzzy, c-format #| msgid "%s (%s)" msgid "%s (idx=%u)" msgstr "%s (%s)" -#: src/libnm-core-impl/nm-utils.c:1691 +#: src/libnm-core-impl/nm-utils.c:1693 #, c-format msgid "Incomplete IPv4 route (idx=%u)" msgstr "" -#: src/libnm-core-impl/nm-utils.c:1819 +#: src/libnm-core-impl/nm-utils.c:1821 #, fuzzy #| msgid "Expected a value for '%s'\n" msgid "Expected value of type \"aay\"" msgstr "Ein Wert wurde für »%s« erwartet\n" -#: src/libnm-core-impl/nm-utils.c:1844 +#: src/libnm-core-impl/nm-utils.c:1846 #, fuzzy, c-format #| msgid "Invalid IPv6 address prefix '%u'" msgid "Invalid IPv6 DNS address length (idx=%u)" msgstr "Ungültiges IPv6-Adressenpräfix »%u«" -#: src/libnm-core-impl/nm-utils.c:1971 +#: src/libnm-core-impl/nm-utils.c:1973 msgid "Expected value of type \"a(ayuay)\"" msgstr "" -#: src/libnm-core-impl/nm-utils.c:1993 +#: src/libnm-core-impl/nm-utils.c:1995 #, c-format msgid "Expected value of type \"(ayuay)\" (idx=%u)" msgstr "" -#: src/libnm-core-impl/nm-utils.c:2006 +#: src/libnm-core-impl/nm-utils.c:2008 #, fuzzy, c-format #| msgid "%d. IPv6 address has invalid prefix" msgid "IPv6 address with invalid length (idx=%u)" msgstr "%d. IPv6-Adresse hat ein ungültiges Präfix" -#: src/libnm-core-impl/nm-utils.c:2036 +#: src/libnm-core-impl/nm-utils.c:2038 #, c-format msgid "IPv6 gateway with invalid length (idx=%u)" msgstr "" -#: src/libnm-core-impl/nm-utils.c:2148 +#: src/libnm-core-impl/nm-utils.c:2150 msgid "Expected value of type \"a(ayuayu)\"" msgstr "" -#: src/libnm-core-impl/nm-utils.c:2172 +#: src/libnm-core-impl/nm-utils.c:2174 #, c-format msgid "Expected value of type \"(ayuayu)\" (idx=%u)" msgstr "" -#: src/libnm-core-impl/nm-utils.c:2185 +#: src/libnm-core-impl/nm-utils.c:2187 #, fuzzy, c-format #| msgid "%d. IPv6 address has invalid prefix" msgid "IPv6 dest address with invalid length (idx=%u)" msgstr "%d. IPv6-Adresse hat ein ungültiges Präfix" -#: src/libnm-core-impl/nm-utils.c:2198 +#: src/libnm-core-impl/nm-utils.c:2200 #, fuzzy, c-format #| msgid "%d. IPv6 address has invalid prefix" msgid "IPv6 next-hop address with invalid length (idx=%u)" msgstr "%d. IPv6-Adresse hat ein ungültiges Präfix" -#: src/libnm-core-impl/nm-utils.c:2341 src/libnm-core-impl/nm-utils.c:2520 +#: src/libnm-core-impl/nm-utils.c:2343 src/libnm-core-impl/nm-utils.c:2522 #, fuzzy #| msgid "Expected a value for '%s'\n" msgid "Expected value of type \"aa{sv}\"" msgstr "Ein Wert wurde für »%s« erwartet\n" -#: src/libnm-core-impl/nm-utils.c:2359 +#: src/libnm-core-impl/nm-utils.c:2361 #, c-format -msgid "IP address requires fields \"dest\" and \"prefix\" (idx=%u)" +msgid "IP address requires fields \"address\" and \"prefix\" (idx=%u)" msgstr "" -#: src/libnm-core-impl/nm-utils.c:2538 +#: src/libnm-core-impl/nm-utils.c:2540 #, c-format msgid "Route requires fields \"dest\" and \"prefix\" (idx=%u)" msgstr "" -#: src/libnm-core-impl/nm-utils.c:2660 +#: src/libnm-core-impl/nm-utils.c:2662 #, c-format msgid "'%s' is not a valid handle." msgstr "»%s« ist kein gültiges Handle." -#: src/libnm-core-impl/nm-utils.c:2808 +#: src/libnm-core-impl/nm-utils.c:2810 #, c-format msgid "'%s' unexpected: parent already specified." msgstr "" -#: src/libnm-core-impl/nm-utils.c:2826 +#: src/libnm-core-impl/nm-utils.c:2828 #, fuzzy, c-format msgid "invalid handle: '%s'" msgstr "Ungültige Option »%s«" -#: src/libnm-core-impl/nm-utils.c:2848 +#: src/libnm-core-impl/nm-utils.c:2850 msgid "parent not specified." msgstr "Es wurde kein übergeordnetes Element angegeben." -#: src/libnm-core-impl/nm-utils.c:2912 +#: src/libnm-core-impl/nm-utils.c:2914 #, c-format msgid "unsupported qdisc option: '%s'." msgstr "Nicht unterstützte qdisc-Option »%s«." -#: src/libnm-core-impl/nm-utils.c:3042 +#: src/libnm-core-impl/nm-utils.c:3044 msgid "action name missing." msgstr "Es fehlt ein Name für die Aktion." -#: src/libnm-core-impl/nm-utils.c:3067 +#: src/libnm-core-impl/nm-utils.c:3069 #, c-format msgid "unsupported action option: '%s'." msgstr "Nicht unterstützte Option »%s« für die Aktion." -#: src/libnm-core-impl/nm-utils.c:3204 +#: src/libnm-core-impl/nm-utils.c:3206 msgid "invalid action: " msgstr "Ungültige Aktion: " -#: src/libnm-core-impl/nm-utils.c:3208 +#: src/libnm-core-impl/nm-utils.c:3210 #, c-format msgid "unsupported tfilter option: '%s'." msgstr "Nicht unterstützte tfilter-Option »%s«." -#: src/libnm-core-impl/nm-utils.c:3508 +#: src/libnm-core-impl/nm-utils.c:3510 #, c-format msgid "failed stat file %s: %s" msgstr "Abfragen der Datei %s schlug fehl: %s" -#: src/libnm-core-impl/nm-utils.c:3519 +#: src/libnm-core-impl/nm-utils.c:3521 #, c-format msgid "not a file (%s)" msgstr "Keine Datei (%s)" -#: src/libnm-core-impl/nm-utils.c:3530 +#: src/libnm-core-impl/nm-utils.c:3532 #, c-format msgid "invalid file owner %d for %s" msgstr "Ungültiger Dateibesitzer %d für %s" -#: src/libnm-core-impl/nm-utils.c:3542 +#: src/libnm-core-impl/nm-utils.c:3544 #, c-format msgid "file permissions for %s" msgstr "Dateiberechtigungen für %s" -#: src/libnm-core-impl/nm-utils.c:3552 +#: src/libnm-core-impl/nm-utils.c:3554 #, c-format msgid "reject %s" msgstr "%s zurückweisen" -#: src/libnm-core-impl/nm-utils.c:3572 +#: src/libnm-core-impl/nm-utils.c:3574 #, c-format msgid "path is not absolute (%s)" msgstr "Der Pfad ist nicht absolut (%s)" -#: src/libnm-core-impl/nm-utils.c:3587 +#: src/libnm-core-impl/nm-utils.c:3589 #, c-format msgid "Plugin file does not exist (%s)" msgstr "Erweiterungs-Datei ist nicht vorhanden (%s)" -#: src/libnm-core-impl/nm-utils.c:3596 +#: src/libnm-core-impl/nm-utils.c:3598 #, c-format msgid "Plugin is not a valid file (%s)" msgstr "Erweiterung ist keine gültige Datei (%s)" -#: src/libnm-core-impl/nm-utils.c:3607 +#: src/libnm-core-impl/nm-utils.c:3609 #, c-format msgid "libtool archives are not supported (%s)" msgstr "libtool-Archive werden nicht unterstützt (%s)" -#: src/libnm-core-impl/nm-utils.c:3684 +#: src/libnm-core-impl/nm-utils.c:3686 #, c-format msgid "Could not find \"%s\" binary" msgstr "Binärdatei »%s« konnte nicht gefunden werden" -#: src/libnm-core-impl/nm-utils.c:4508 +#: src/libnm-core-impl/nm-utils.c:4510 #, fuzzy #| msgid "unknown setting name" msgid "unknown secret flags" msgstr "Unbekannter Einstellungsname" -#: src/libnm-core-impl/nm-utils.c:4518 +#: src/libnm-core-impl/nm-utils.c:4520 msgid "conflicting secret flags" msgstr "" -#: src/libnm-core-impl/nm-utils.c:4529 +#: src/libnm-core-impl/nm-utils.c:4531 msgid "secret flags must not be \"not-required\"" msgstr "" -#: src/libnm-core-impl/nm-utils.c:4537 +#: src/libnm-core-impl/nm-utils.c:4539 #, fuzzy #| msgid "unsupported qdisc option: '%s'." msgid "unsupported secret flags" msgstr "Nicht unterstützte qdisc-Option »%s«." -#: src/libnm-core-impl/nm-utils.c:4567 +#: src/libnm-core-impl/nm-utils.c:4569 msgid "can't be simultaneously disabled and enabled" msgstr "darf nicht gleichzeitig ein- und ausgeschaltet sein" -#: src/libnm-core-impl/nm-utils.c:4575 +#: src/libnm-core-impl/nm-utils.c:4577 msgid "WPS is required" msgstr "WPS ist erforderlich" -#: src/libnm-core-impl/nm-utils.c:4643 +#: src/libnm-core-impl/nm-utils.c:4645 #, c-format msgid "not a valid ethernet MAC address for mask at position %lld" msgstr "keine gültige Ethernet MAC-Adresse für die Maske an Position %lld" -#: src/libnm-core-impl/nm-utils.c:4662 +#: src/libnm-core-impl/nm-utils.c:4664 #, c-format msgid "not a valid ethernet MAC address #%u at position %lld" msgstr "Keine gültige Ethernet MAC-Adresse #%u an Position %lld" -#: src/libnm-core-impl/nm-utils.c:5319 +#: src/libnm-core-impl/nm-utils.c:5321 msgid "not valid utf-8" msgstr "kein gültiges UTF-8" -#: src/libnm-core-impl/nm-utils.c:5340 src/libnm-core-impl/nm-utils.c:5393 +#: src/libnm-core-impl/nm-utils.c:5342 src/libnm-core-impl/nm-utils.c:5395 msgid "is not a JSON object" msgstr "kein JSON-Objekt" -#: src/libnm-core-impl/nm-utils.c:5369 +#: src/libnm-core-impl/nm-utils.c:5371 msgid "value is NULL" msgstr "Wert ist NULL" -#: src/libnm-core-impl/nm-utils.c:5369 +#: src/libnm-core-impl/nm-utils.c:5371 msgid "value is empty" msgstr "Wert ist leer" -#: src/libnm-core-impl/nm-utils.c:5381 +#: src/libnm-core-impl/nm-utils.c:5383 #, c-format msgid "invalid JSON at position %d (%s)" msgstr "Ungültiges JSON an Position %d (%s)" -#: src/libnm-core-impl/nm-utils.c:5506 src/libnm-core-impl/nm-utils.c:5526 +#: src/libnm-core-impl/nm-utils.c:5508 src/libnm-core-impl/nm-utils.c:5528 msgid "unterminated escape sequence" msgstr "Nicht abgeschlossene Escape-Sequenz" -#: src/libnm-core-impl/nm-utils.c:5552 +#: src/libnm-core-impl/nm-utils.c:5554 #, c-format msgid "unknown attribute '%s'" msgstr "Unbekanntes Attribut »%s«" -#: src/libnm-core-impl/nm-utils.c:5570 +#: src/libnm-core-impl/nm-utils.c:5572 #, c-format msgid "missing key-value separator '%c' after '%s'" msgstr "" -#: src/libnm-core-impl/nm-utils.c:5590 +#: src/libnm-core-impl/nm-utils.c:5592 #, c-format msgid "invalid uint32 value '%s' for attribute '%s'" msgstr "Ungültiger uint32-Wert »%s« für Attribut »%s«" -#: src/libnm-core-impl/nm-utils.c:5604 +#: src/libnm-core-impl/nm-utils.c:5606 #, fuzzy, c-format #| msgid "invalid uint32 value '%s' for attribute '%s'" msgid "invalid int32 value '%s' for attribute '%s'" msgstr "Ungültiger uint32-Wert »%s« für Attribut »%s«" -#: src/libnm-core-impl/nm-utils.c:5617 +#: src/libnm-core-impl/nm-utils.c:5619 #, fuzzy, c-format #| msgid "invalid uint8 value '%s' for attribute '%s'" msgid "invalid uint64 value '%s' for attribute '%s'" msgstr "Ungültiger uint8-Wert »%s« für Attribut »%s«" -#: src/libnm-core-impl/nm-utils.c:5630 +#: src/libnm-core-impl/nm-utils.c:5632 #, c-format msgid "invalid uint8 value '%s' for attribute '%s'" msgstr "Ungültiger uint8-Wert »%s« für Attribut »%s«" -#: src/libnm-core-impl/nm-utils.c:5644 +#: src/libnm-core-impl/nm-utils.c:5646 #, c-format msgid "invalid boolean value '%s' for attribute '%s'" msgstr "Ungültiger boolescher Wert »%s« für Attribut »%s«" -#: src/libnm-core-impl/nm-utils.c:5658 +#: src/libnm-core-impl/nm-utils.c:5660 #, c-format msgid "unsupported attribute '%s' of type '%s'" msgstr "Nicht unterstützter Parameter »%s« des Typs »%s«" -#: src/libnm-core-impl/nm-utils.c:5959 +#: src/libnm-core-impl/nm-utils.c:5961 #, c-format msgid "Bridge VLANs %d and %d are not sorted by ascending vid" msgstr "" -#: src/libnm-core-impl/nm-utils.c:5983 +#: src/libnm-core-impl/nm-utils.c:5985 #, c-format msgid "duplicate bridge VLAN vid %u" msgstr "" -#: src/libnm-core-impl/nm-utils.c:5995 +#: src/libnm-core-impl/nm-utils.c:5997 msgid "only one VLAN can be the PVID" msgstr "" -#: src/libnm-core-impl/nm-utils.c:6138 +#: src/libnm-core-impl/nm-utils.c:6140 #, c-format msgid "unknown flags 0x%x" msgstr "" -#: src/libnm-core-impl/nm-utils.c:6150 +#: src/libnm-core-impl/nm-utils.c:6152 msgid "" "'fqdn-no-update' and 'fqdn-serv-update' flags cannot be set at the same time" msgstr "" -#: src/libnm-core-impl/nm-utils.c:6161 +#: src/libnm-core-impl/nm-utils.c:6163 msgid "'fqdn-clear-flags' flag is incompatible with other FQDN flags" msgstr "" -#: src/libnm-core-impl/nm-utils.c:6169 +#: src/libnm-core-impl/nm-utils.c:6171 msgid "DHCPv6 does not support the E (encoded) FQDN flag" msgstr "" @@ -3755,29 +3833,31 @@ msgstr "Erweiterung »%s« kann nicht geladen werden: %s" #: src/libnm-core-impl/nm-vpn-editor-plugin.c:295 #, c-format msgid "failed to load nm_vpn_editor_plugin_factory() from %s (%s)" -msgstr "Laden von nm_vpn_editor_plugin_factory() von %s (%s) ist fehlgeschlagen" +msgstr "" +"Laden von nm_vpn_editor_plugin_factory() von %s (%s) ist fehlgeschlagen" -#: src/libnm-core-impl/nm-vpn-editor-plugin.c:321 +#: src/libnm-core-impl/nm-vpn-editor-plugin.c:324 #, c-format msgid "unknown error initializing plugin %s" msgstr "Unbekannter Fehler beim Initialisieren der Erweiterung %s" -#: src/libnm-core-impl/nm-vpn-editor-plugin.c:341 +#: src/libnm-core-impl/nm-vpn-editor-plugin.c:344 #, c-format msgid "cannot load VPN plugin in '%s': missing plugin name" msgstr "" "VPN-Erweiterung in »%s« kann nicht geladen werden: Name der Erweiterung fehlt" -#: src/libnm-core-impl/nm-vpn-editor-plugin.c:349 +#: src/libnm-core-impl/nm-vpn-editor-plugin.c:352 #, c-format msgid "cannot load VPN plugin in '%s': invalid service name" -msgstr "VPN-Erweiterung in »%s« kann nicht geladen werden: Ungültiger Dienstname" +msgstr "" +"VPN-Erweiterung in »%s« kann nicht geladen werden: Ungültiger Dienstname" -#: src/libnm-core-impl/nm-vpn-editor-plugin.c:493 +#: src/libnm-core-impl/nm-vpn-editor-plugin.c:496 msgid "the plugin does not support import capability" msgstr "Das Plugin unterstützt nicht die Import-Fähigkeit" -#: src/libnm-core-impl/nm-vpn-editor-plugin.c:517 +#: src/libnm-core-impl/nm-vpn-editor-plugin.c:520 msgid "the plugin does not support export capability" msgstr "Das Plugin unterstützt nicht die Export-Fähigkeit" @@ -3799,8 +3879,8 @@ msgstr "Dateiname hat ein ungültiges Format (%s)" #, c-format msgid "there exists a conflicting plugin (%s) that has the same %s.%s value" msgstr "" -"es ist ein im Konflikt stehendes Plugin (%s) vorhanden, das den gleichen Wert " -"%s.%s hat" +"es ist ein im Konflikt stehendes Plugin (%s) vorhanden, das den gleichen " +"Wert %s.%s hat" #: src/libnm-core-impl/nm-vpn-plugin-info.c:458 #, c-format @@ -3816,7 +3896,8 @@ msgstr "Einstellung »Erweiterung« fehlt" #: src/libnm-core-impl/nm-vpn-plugin-info.c:1060 #, c-format msgid "%s: don't retry loading plugin which already failed previously" -msgstr "%s: Erneutes Laden des Plugins nicht versuchen, welches zuvor fehlschlug" +msgstr "" +"%s: Erneutes Laden des Plugins nicht versuchen, welches zuvor fehlschlug" #: src/libnm-core-impl/nm-vpn-plugin-info.c:1134 msgid "missing filename to load VPN plugin info" @@ -3927,7 +4008,8 @@ msgstr "Die Initialisierung des Entschlüsselungsstrom-Slots scheiterte." #: src/libnm-crypto/nm-crypto-nss.c:150 msgid "Failed to set symmetric key for decryption." -msgstr "Das Anlegen des symmetrischen Schlüssels zur Entschlüsselung scheiterte." +msgstr "" +"Das Anlegen des symmetrischen Schlüssels zur Entschlüsselung scheiterte." #: src/libnm-crypto/nm-crypto-nss.c:161 msgid "Failed to set IV for decryption." @@ -3960,7 +4042,8 @@ msgstr "Die Initialisierung des Verschlüsselungsstromslots scheiterte." #: src/libnm-crypto/nm-crypto-nss.c:309 msgid "Failed to set symmetric key for encryption." -msgstr "Das Anlegen des symmetrischen Schlüssels zur Verschlüsselung scheiterte." +msgstr "" +"Das Anlegen des symmetrischen Schlüssels zur Verschlüsselung scheiterte." #: src/libnm-crypto/nm-crypto-nss.c:318 msgid "Failed to set IV for encryption." @@ -4146,10 +4229,11 @@ msgstr " Eigenschaft »%s« von Objektklasse »%s« ist nicht schreibbar" #: src/libnm-glib-aux/nm-shared-utils.c:2457 #, c-format -msgid "construct property \"%s\" for object '%s' can't be set after construction" +msgid "" +"construct property \"%s\" for object '%s' can't be set after construction" msgstr "" -"Konstruktor-Eigenschaft »%s« für Objekt »%s« kann nicht nach der Konstruktion " -"gesetzt werden" +"Konstruktor-Eigenschaft »%s« für Objekt »%s« kann nicht nach der " +"Konstruktion gesetzt werden" #: src/libnm-glib-aux/nm-shared-utils.c:2468 #, c-format @@ -4161,67 +4245,69 @@ msgstr "" #, c-format msgid "unable to set property '%s' of type '%s' from value of type '%s'" msgstr "" -"Eigenschaft »%s« des Typs »%s« von Wert des Typs »%s« kann nicht gesetzt werden" +"Eigenschaft »%s« des Typs »%s« von Wert des Typs »%s« kann nicht gesetzt " +"werden" #: src/libnm-glib-aux/nm-shared-utils.c:2493 #, c-format msgid "" -"value \"%s\" of type '%s' is invalid or out of range for property '%s' of type " -"'%s'" +"value \"%s\" of type '%s' is invalid or out of range for property '%s' of " +"type '%s'" msgstr "" "Wert »%s« des Typs »%s« ist ungültig oder nicht im Wertebereich für " "Eigenschaft »%s« des Typs »%s«" -#: src/libnm-glib-aux/nm-shared-utils.c:5516 +#: src/libnm-glib-aux/nm-shared-utils.c:5570 msgid "interface name is missing" msgstr "Schnittstellenname fehlt" -#: src/libnm-glib-aux/nm-shared-utils.c:5524 +#: src/libnm-glib-aux/nm-shared-utils.c:5578 msgid "interface name is too short" msgstr "Schnittstellenname ist zu kurz" -#: src/libnm-glib-aux/nm-shared-utils.c:5532 +#: src/libnm-glib-aux/nm-shared-utils.c:5586 msgid "interface name is reserved" msgstr "Schnittstellenname ist reserviert" -#: src/libnm-glib-aux/nm-shared-utils.c:5545 +#: src/libnm-glib-aux/nm-shared-utils.c:5599 msgid "interface name contains an invalid character" msgstr "Schnittstellenname enthält ein ungültiges Zeichen" -#: src/libnm-glib-aux/nm-shared-utils.c:5553 +#: src/libnm-glib-aux/nm-shared-utils.c:5607 msgid "interface name is longer than 15 characters" msgstr "Schnittstellenname ist länger als 15 Zeichen" -#: src/libnm-glib-aux/nm-shared-utils.c:5578 +#: src/libnm-glib-aux/nm-shared-utils.c:5632 #, c-format msgid "'%%' is not allowed in interface names" msgstr "»%%« ist nicht in einem Schnittstellennamen erlaubt" -#: src/libnm-glib-aux/nm-shared-utils.c:5590 +#: src/libnm-glib-aux/nm-shared-utils.c:5644 #, c-format msgid "'%s' is not allowed as interface name" msgstr "»%s« ist nicht als Schnittstellenname erlaubt" -#: src/libnm-glib-aux/nm-shared-utils.c:5612 -msgid "interface name must be alphanumerical with no forward or backward slashes" +#: src/libnm-glib-aux/nm-shared-utils.c:5666 +msgid "" +"interface name must be alphanumerical with no forward or backward slashes" msgstr "" "Der Schnittstellenname muss alphanumerisch sein und darf weder »/« noch »\\« " "enthalten." -#: src/libnm-glib-aux/nm-shared-utils.c:5629 +#: src/libnm-glib-aux/nm-shared-utils.c:5683 msgid "interface name must not be empty" msgstr "Schnittstellenname darf nicht leer sein" -#: src/libnm-glib-aux/nm-shared-utils.c:5637 +#: src/libnm-glib-aux/nm-shared-utils.c:5691 msgid "interface name must be UTF-8 encoded" msgstr "Schnittstellenname muss in UTF-8 kodiert sein" -#: src/libnm-log-core/nm-logging.c:252 +#: src/libnm-log-core/nm-logging.c:251 #, fuzzy, c-format msgid "Unknown log level '%s'" msgstr "Unbekanntes Gerät »%s«." -#: src/libnm-log-core/nm-logging.c:360 +#: src/libnm-log-core/nm-logging.c:359 #, fuzzy, c-format msgid "Unknown log domain '%s'" msgstr "Unbekannter Befehl: »%s«\n" @@ -4254,21 +4340,22 @@ msgstr "»%s« ist mehrdeutig: %s" msgid "missing name, try one of [%s]" msgstr "Fehlender Name, versuchen Sie einen von [%s]" -#: src/libnmc-base/nm-client-utils.c:248 src/nmcli/connections.c:3771 -#: src/nmcli/connections.c:3829 +#: src/libnmc-base/nm-client-utils.c:248 src/nmcli/connections.c:3781 +#: src/nmcli/connections.c:3847 #, c-format msgid "'%s' not among [%s]" msgstr "»%s« ist nicht unter [%s]" #: src/libnmc-base/nm-client-utils.c:291 src/libnmc-base/nm-client-utils.c:305 #: src/libnmc-base/nm-client-utils.c:341 src/libnmc-base/nm-client-utils.c:346 -#: src/libnmc-setting/nm-meta-setting-desc.c:1842 -#: src/libnmc-setting/nm-meta-setting-desc.c:1873 -#: src/libnmc-setting/nm-meta-setting-desc.c:2882 -#: src/libnmc-setting/nm-meta-setting-desc.c:2940 src/nmcli/common.c:1611 -#: src/nmcli/connections.c:79 src/nmcli/connections.c:89 src/nmcli/devices.c:485 -#: src/nmcli/devices.c:592 src/nmcli/devices.c:598 src/nmcli/devices.c:604 -#: src/nmcli/general.c:30 src/nmcli/general.c:85 src/nmcli/general.c:91 +#: src/libnmc-setting/nm-meta-setting-desc.c:1817 +#: src/libnmc-setting/nm-meta-setting-desc.c:1848 +#: src/libnmc-setting/nm-meta-setting-desc.c:2857 +#: src/libnmc-setting/nm-meta-setting-desc.c:2915 src/nmcli/common.c:1611 +#: src/nmcli/connections.c:79 src/nmcli/connections.c:89 +#: src/nmcli/devices.c:485 src/nmcli/devices.c:592 src/nmcli/devices.c:598 +#: src/nmcli/devices.c:604 src/nmcli/general.c:30 src/nmcli/general.c:85 +#: src/nmcli/general.c:91 msgid "unknown" msgstr "unbekannt" @@ -4338,19 +4425,19 @@ msgstr "wird deaktiviert" #: src/libnmc-base/nm-client-utils.c:342 #: src/libnmc-setting/nm-meta-setting-desc.c:875 -#: src/libnmc-setting/nm-meta-setting-desc.c:2874 src/nmcli/connections.c:5576 -#: src/nmcli/connections.c:7554 src/nmcli/connections.c:7555 +#: src/libnmc-setting/nm-meta-setting-desc.c:2849 src/nmcli/connections.c:5595 +#: src/nmcli/connections.c:7582 src/nmcli/connections.c:7583 #: src/nmcli/devices.c:591 src/nmcli/devices.c:597 src/nmcli/devices.c:603 -#: src/nmcli/devices.c:1427 src/nmcli/general.c:92 src/nmcli/utils.h:316 +#: src/nmcli/devices.c:1427 src/nmcli/general.c:92 src/nmcli/utils.h:317 msgid "yes" msgstr "ja" #: src/libnmc-base/nm-client-utils.c:343 #: src/libnmc-setting/nm-meta-setting-desc.c:875 -#: src/libnmc-setting/nm-meta-setting-desc.c:2877 src/nmcli/connections.c:5575 -#: src/nmcli/connections.c:7554 src/nmcli/connections.c:7555 +#: src/libnmc-setting/nm-meta-setting-desc.c:2852 src/nmcli/connections.c:5594 +#: src/nmcli/connections.c:7582 src/nmcli/connections.c:7583 #: src/nmcli/devices.c:591 src/nmcli/devices.c:597 src/nmcli/devices.c:603 -#: src/nmcli/devices.c:1427 src/nmcli/general.c:93 src/nmcli/utils.h:316 +#: src/nmcli/devices.c:1427 src/nmcli/general.c:93 src/nmcli/utils.h:317 msgid "no" msgstr "nein" @@ -4367,8 +4454,8 @@ msgid "No reason given" msgstr "Kein Grund angegeben" #. We should not really come here -#: src/libnmc-base/nm-client-utils.c:354 src/nmcli/connections.c:3791 -#: src/nmcli/connections.c:3850 +#: src/libnmc-base/nm-client-utils.c:354 src/nmcli/connections.c:3801 +#: src/nmcli/connections.c:3868 msgid "Unknown error" msgstr "Unbekannter Fehler" @@ -4441,7 +4528,8 @@ msgstr "DHCP-Client fehlgeschlagen" #: src/libnmc-base/nm-client-utils.c:382 msgid "Shared connection service failed to start" -msgstr "Dienst für gemeinsam verwendete Verbindung konnte nicht gestartet werden" +msgstr "" +"Dienst für gemeinsam verwendete Verbindung konnte nicht gestartet werden" #: src/libnmc-base/nm-client-utils.c:384 msgid "Shared connection service failed" @@ -4545,7 +4633,8 @@ msgstr "Das Modem wurde nicht gefunden" #: src/libnmc-base/nm-client-utils.c:426 msgid "The Bluetooth connection failed or timed out" -msgstr "Die Bluetooth-Verbindung ist fehlgeschlagen oder benötigte zu viel Zeit" +msgstr "" +"Die Bluetooth-Verbindung ist fehlgeschlagen oder benötigte zu viel Zeit" #: src/libnmc-base/nm-client-utils.c:428 msgid "GSM Modem's SIM card not inserted" @@ -4645,75 +4734,127 @@ msgstr "Das Einrichten der SR-IOV-Parameter schlug fehl." msgid "The Wi-Fi P2P peer could not be found" msgstr "Das WLAN konnte nicht gefunden werden" +#: src/libnmc-base/nm-client-utils.c:469 +msgid "The device handler dispatcher returned an error" +msgstr "" + +#: src/libnmc-base/nm-client-utils.c:471 +msgid "" +"The device is unmanaged because networking is disabled or the system is " +"suspended" +msgstr "" + #: src/libnmc-base/nm-client-utils.c:474 +msgid "The device is unmanaged because NetworkManager is quitting" +msgstr "" + +#: src/libnmc-base/nm-client-utils.c:476 +msgid "The device is unmanaged because the link is not initialized by udev" +msgstr "" + +#: src/libnmc-base/nm-client-utils.c:478 +msgid "" +"The device is unmanaged by explicit user decision (e.g. 'nmcli device set " +"$DEV managed no')" +msgstr "" + +#: src/libnmc-base/nm-client-utils.c:482 +msgid "" +"The device is unmanaged by user decision via settings plugin (\"unmanaged-" +"devices\" for keyfile or \"NM_CONTROLLED=no\" for ifcfg-rh)" +msgstr "" + +#: src/libnmc-base/nm-client-utils.c:485 +msgid "" +"The device is unmanaged by user decision in NetworkManager.conf ('unmanaged' " +"in a [device*] section" +msgstr "" + +#: src/libnmc-base/nm-client-utils.c:489 +msgid "The device is unmanaged because the device type is unmanaged by default" +msgstr "" + +#: src/libnmc-base/nm-client-utils.c:491 +#, fuzzy +#| msgid "The device disappeared" +msgid "The device is unmanaged via udev rule" +msgstr "Das Gerät verschwand" + +#: src/libnmc-base/nm-client-utils.c:493 +msgid "" +"The device is unmanaged because it is an external device and is unconfigured " +"(down or without addresses)" +msgstr "" + +#: src/libnmc-base/nm-client-utils.c:503 msgid "Unknown reason" msgstr "Unbekannte Ursache" -#: src/libnmc-base/nm-client-utils.c:476 +#: src/libnmc-base/nm-client-utils.c:505 msgid "The connection was disconnected" msgstr "Die Verbindung wurde getrennt" -#: src/libnmc-base/nm-client-utils.c:478 +#: src/libnmc-base/nm-client-utils.c:507 msgid "Disconnected by user" msgstr "Durch Benutzer getrennt" -#: src/libnmc-base/nm-client-utils.c:480 +#: src/libnmc-base/nm-client-utils.c:509 msgid "The base network connection was interrupted" msgstr "Die Basisverbindung wurde unterbrochen" -#: src/libnmc-base/nm-client-utils.c:482 +#: src/libnmc-base/nm-client-utils.c:511 msgid "The VPN service stopped unexpectedly" msgstr "Der VPN-Dienst wurde unerwartet gestoppt" -#: src/libnmc-base/nm-client-utils.c:484 +#: src/libnmc-base/nm-client-utils.c:513 msgid "The VPN service returned invalid configuration" msgstr "Der VPN-Dienst gab ungültige Einstellungen zurück" -#: src/libnmc-base/nm-client-utils.c:486 +#: src/libnmc-base/nm-client-utils.c:515 msgid "The connection attempt timed out" msgstr "Der Verbindungsversuch benötigte zu viel Zeit" -#: src/libnmc-base/nm-client-utils.c:488 +#: src/libnmc-base/nm-client-utils.c:517 msgid "The VPN service did not start in time" msgstr "Der VPN-Dienst wurde nicht rechtzeitig gestartet" -#: src/libnmc-base/nm-client-utils.c:490 +#: src/libnmc-base/nm-client-utils.c:519 msgid "The VPN service failed to start" msgstr "Der VPN-Dienst konnte nicht gestartet werden" -#: src/libnmc-base/nm-client-utils.c:491 +#: src/libnmc-base/nm-client-utils.c:520 msgid "No valid secrets" msgstr "Keine gültigen Passwörter" -#: src/libnmc-base/nm-client-utils.c:492 +#: src/libnmc-base/nm-client-utils.c:521 msgid "Invalid secrets" msgstr "Ungültige Passwörter" -#: src/libnmc-base/nm-client-utils.c:494 +#: src/libnmc-base/nm-client-utils.c:523 msgid "The connection was removed" msgstr "Die Verbindung wurde entfernt" -#: src/libnmc-base/nm-client-utils.c:496 +#: src/libnmc-base/nm-client-utils.c:525 msgid "Master connection failed" msgstr "Master-Verbindung ist fehlgeschlagen" -#: src/libnmc-base/nm-client-utils.c:498 +#: src/libnmc-base/nm-client-utils.c:527 msgid "Could not create a software link" msgstr "Software-Link konnte nicht erstellt werden" -#: src/libnmc-base/nm-client-utils.c:500 +#: src/libnmc-base/nm-client-utils.c:529 msgid "The device disappeared" msgstr "Das Gerät verschwand" -#: src/libnmc-base/nm-client-utils.c:826 +#: src/libnmc-base/nm-client-utils.c:855 msgid "missing colon for \".:\" format" msgstr "" -#: src/libnmc-base/nm-client-utils.c:843 +#: src/libnmc-base/nm-client-utils.c:872 msgid "missing dot for \".:\" format" msgstr "" -#: src/libnmc-base/nm-client-utils.c:849 +#: src/libnmc-base/nm-client-utils.c:878 #, fuzzy #| msgid "use 'goto ' first, or 'set .'\n" msgid "missing setting for \".:\" format" @@ -4721,23 +4862,23 @@ msgstr "" "Verwenden Sie zuerst »goto «, oder »set ." "«\n" -#: src/libnmc-base/nm-client-utils.c:860 +#: src/libnmc-base/nm-client-utils.c:889 msgid "missing property for \".:\" format" msgstr "" -#: src/libnmc-base/nm-client-utils.c:870 +#: src/libnmc-base/nm-client-utils.c:899 #, fuzzy #| msgid "invalid setting name '%s'" msgid "invalid setting name" msgstr "Ungültiger Einstellungsname »%s«" -#: src/libnmc-base/nm-client-utils.c:884 +#: src/libnmc-base/nm-client-utils.c:913 #, fuzzy #| msgid "Property name? " msgid "property name is not UTF-8" msgstr "Eigenschaftenname? " -#: src/libnmc-base/nm-client-utils.c:901 src/libnmc-base/nm-client-utils.c:907 +#: src/libnmc-base/nm-client-utils.c:930 src/libnmc-base/nm-client-utils.c:936 #, fuzzy #| msgid "secret is not set" msgid "secret is not UTF-8" @@ -4754,59 +4895,60 @@ msgstr "" msgid "Could not retrieve session id: %s" msgstr "Verbindungen konnte nicht aktiviert werden: %s" -#: src/libnmc-base/nm-secret-agent-simple.c:222 +#: src/libnmc-base/nm-secret-agent-simple.c:225 #, c-format msgid "Preshared-key for %s" msgstr "" -#: src/libnmc-base/nm-secret-agent-simple.c:270 -#: src/libnmc-base/nm-secret-agent-simple.c:357 -#: src/libnmc-setting/nm-meta-setting-desc.c:5200 -#: src/nmtui/nmt-8021x-fields.c:182 src/nmtui/nmt-8021x-fields.c:353 -#: src/nmtui/nmt-8021x-fields.c:457 src/nmtui/nmt-page-dsl.c:51 +#: src/libnmc-base/nm-secret-agent-simple.c:274 +#: src/libnmc-base/nm-secret-agent-simple.c:361 +#: src/libnmc-setting/nm-meta-setting-desc.c:5146 +#: src/nmtui/nmt-8021x-fields.c:183 src/nmtui/nmt-8021x-fields.c:516 +#: src/nmtui/nmt-8021x-fields.c:622 src/nmtui/nmt-page-dsl.c:51 #: src/nmtui/nmt-page-wifi.c:345 msgid "Username" msgstr "Benutzername" -#: src/libnmc-base/nm-secret-agent-simple.c:275 -#: src/libnmc-base/nm-secret-agent-simple.c:312 -#: src/libnmc-base/nm-secret-agent-simple.c:335 -#: src/libnmc-base/nm-secret-agent-simple.c:367 -#: src/libnmc-base/nm-secret-agent-simple.c:917 -#: src/libnmc-base/nm-secret-agent-simple.c:952 -#: src/libnmc-base/nm-secret-agent-simple.c:979 +#: src/libnmc-base/nm-secret-agent-simple.c:279 +#: src/libnmc-base/nm-secret-agent-simple.c:316 +#: src/libnmc-base/nm-secret-agent-simple.c:339 +#: src/libnmc-base/nm-secret-agent-simple.c:371 +#: src/libnmc-base/nm-secret-agent-simple.c:954 +#: src/libnmc-base/nm-secret-agent-simple.c:989 +#: src/libnmc-base/nm-secret-agent-simple.c:1016 #: src/libnmc-base/nm-vpn-helpers.c:144 src/libnmc-base/nm-vpn-helpers.c:148 #: src/libnmc-base/nm-vpn-helpers.c:154 src/libnmc-base/nm-vpn-helpers.c:159 -#: src/nmcli/devices.c:4736 src/nmtui/nmt-8021x-fields.c:195 -#: src/nmtui/nmt-8021x-fields.c:373 src/nmtui/nmt-8021x-fields.c:477 +#: src/nmcli/devices.c:4727 src/nmtui/nmt-8021x-fields.c:196 +#: src/nmtui/nmt-8021x-fields.c:536 src/nmtui/nmt-8021x-fields.c:642 #: src/nmtui/nmt-page-dsl.c:64 src/nmtui/nmt-page-wifi.c:287 #: src/nmtui/nmt-page-wifi.c:319 src/nmtui/nmt-page-wifi.c:358 msgid "Password" msgstr "Passwort" -#: src/libnmc-base/nm-secret-agent-simple.c:284 src/nmtui/nmt-8021x-fields.c:204 +#: src/libnmc-base/nm-secret-agent-simple.c:288 +#: src/nmtui/nmt-8021x-fields.c:365 msgid "Identity" msgstr "Identität" -#: src/libnmc-base/nm-secret-agent-simple.c:289 +#: src/libnmc-base/nm-secret-agent-simple.c:293 msgid "Private key password" msgstr "Passwort für geheimen Schlüssel" -#: src/libnmc-base/nm-secret-agent-simple.c:325 src/nmtui/nmt-page-wifi.c:298 +#: src/libnmc-base/nm-secret-agent-simple.c:329 src/nmtui/nmt-page-wifi.c:298 msgid "Key" msgstr "Schlüssel" -#: src/libnmc-base/nm-secret-agent-simple.c:362 src/nmtui/nmt-page-dsl.c:67 +#: src/libnmc-base/nm-secret-agent-simple.c:366 src/nmtui/nmt-page-dsl.c:67 msgid "Service" msgstr "Dienst" -#: src/libnmc-base/nm-secret-agent-simple.c:473 +#: src/libnmc-base/nm-secret-agent-simple.c:500 #, fuzzy #| msgid "invalid private key" msgid "WireGuard private-key" msgstr "Ungültiger privater Schlüssel" -#: src/libnmc-base/nm-secret-agent-simple.c:512 +#: src/libnmc-base/nm-secret-agent-simple.c:539 #, fuzzy, c-format #| msgid "Secrets are required to access the wired network '%s'" msgid "Secrets are required to connect WireGuard VPN '%s'" @@ -4814,90 +4956,103 @@ msgstr "" "Passwörter oder Schlüssel sind erforderlich, um auf das Kabelnetzwerk »%s« " "zuzugreifen" -#: src/libnmc-base/nm-secret-agent-simple.c:620 -#: src/libnmc-base/nm-secret-agent-simple.c:913 -#: src/libnmc-base/nm-secret-agent-simple.c:948 -#: src/libnmc-base/nm-secret-agent-simple.c:975 -#: src/libnmc-base/nm-secret-agent-simple.c:994 +#: src/libnmc-base/nm-secret-agent-simple.c:651 +#: src/libnmc-base/nm-secret-agent-simple.c:950 +#: src/libnmc-base/nm-secret-agent-simple.c:985 +#: src/libnmc-base/nm-secret-agent-simple.c:1012 +#: src/libnmc-base/nm-secret-agent-simple.c:1031 #, c-format msgid "A password is required to connect to '%s'." msgstr "Es wird ein Passwort benötigt, um sich mit »%s« zu verbinden." -#: src/libnmc-base/nm-secret-agent-simple.c:878 +#: src/libnmc-base/nm-secret-agent-simple.c:909 msgid "Authentication required by wireless network" msgstr "Legitimierung für Funknetzwerk wird benötigt" -#: src/libnmc-base/nm-secret-agent-simple.c:880 +#: src/libnmc-base/nm-secret-agent-simple.c:911 +#, fuzzy, c-format +#| msgid "" +#| "Passwords or encryption keys are required to access the wireless network " +#| "'%s'." +msgid "" +"Push of the WPS button on the router or a password is required to access the " +"wireless network '%s'." +msgstr "" +"Passwörter oder Schlüssel sind erforderlich, um auf das Funknetzwerk »%s« " +"zuzugreifen." + +#: src/libnmc-base/nm-secret-agent-simple.c:916 #, c-format msgid "" -"Passwords or encryption keys are required to access the wireless network '%s'." +"Passwords or encryption keys are required to access the wireless network " +"'%s'." msgstr "" "Passwörter oder Schlüssel sind erforderlich, um auf das Funknetzwerk »%s« " "zuzugreifen." -#: src/libnmc-base/nm-secret-agent-simple.c:886 +#: src/libnmc-base/nm-secret-agent-simple.c:923 msgid "Wired 802.1X authentication" msgstr "Kabelgebundene 802.1X-Legitimierung" -#: src/libnmc-base/nm-secret-agent-simple.c:887 +#: src/libnmc-base/nm-secret-agent-simple.c:924 #, c-format msgid "Secrets are required to access the wired network '%s'" msgstr "" "Passwörter oder Schlüssel sind erforderlich, um auf das Kabelnetzwerk »%s« " "zuzugreifen" -#: src/libnmc-base/nm-secret-agent-simple.c:893 +#: src/libnmc-base/nm-secret-agent-simple.c:930 msgid "DSL authentication" msgstr "DSL-Legitimierung" -#: src/libnmc-base/nm-secret-agent-simple.c:894 +#: src/libnmc-base/nm-secret-agent-simple.c:931 #, c-format msgid "Secrets are required for the DSL connection '%s'" msgstr "Passwörter sind für die DSL-Verbindung »%s« notwendig" -#: src/libnmc-base/nm-secret-agent-simple.c:903 +#: src/libnmc-base/nm-secret-agent-simple.c:940 msgid "PIN code required" msgstr "PIN-Code ist erforderlich" -#: src/libnmc-base/nm-secret-agent-simple.c:904 +#: src/libnmc-base/nm-secret-agent-simple.c:941 msgid "PIN code is needed for the mobile broadband device" msgstr "Für das mobile Breitbandgerät ist ein PIN-Code erforderlich" -#: src/libnmc-base/nm-secret-agent-simple.c:907 +#: src/libnmc-base/nm-secret-agent-simple.c:944 msgid "PIN" msgstr "PIN" -#: src/libnmc-base/nm-secret-agent-simple.c:912 -#: src/libnmc-base/nm-secret-agent-simple.c:947 -#: src/libnmc-base/nm-secret-agent-simple.c:974 +#: src/libnmc-base/nm-secret-agent-simple.c:949 +#: src/libnmc-base/nm-secret-agent-simple.c:984 +#: src/libnmc-base/nm-secret-agent-simple.c:1011 msgid "Mobile broadband network password" msgstr "Passwort der mobilen Breitbandverbindung" -#: src/libnmc-base/nm-secret-agent-simple.c:925 +#: src/libnmc-base/nm-secret-agent-simple.c:962 #, c-format msgid "Secrets are required to access the MACsec network '%s'" msgstr "" "Passwörter oder Schlüssel sind erforderlich, um auf das MACsec-Netzwerk »%s« " "zuzugreifen" -#: src/libnmc-base/nm-secret-agent-simple.c:929 +#: src/libnmc-base/nm-secret-agent-simple.c:966 msgid "MACsec PSK authentication" msgstr "MACsec-PSK-Legitimierung" -#: src/libnmc-base/nm-secret-agent-simple.c:931 -#: src/libnmc-setting/nm-meta-setting-desc.c:6896 +#: src/libnmc-base/nm-secret-agent-simple.c:968 +#: src/libnmc-setting/nm-meta-setting-desc.c:7002 msgid "MKA CAK" msgstr "MKA CAK" -#: src/libnmc-base/nm-secret-agent-simple.c:936 +#: src/libnmc-base/nm-secret-agent-simple.c:973 msgid "MACsec EAP authentication" msgstr "MACsec-EAP-Legitimierung" -#: src/libnmc-base/nm-secret-agent-simple.c:941 +#: src/libnmc-base/nm-secret-agent-simple.c:978 msgid "WireGuard VPN secret" msgstr "" -#: src/libnmc-base/nm-secret-agent-simple.c:984 +#: src/libnmc-base/nm-secret-agent-simple.c:1021 msgid "VPN password required" msgstr "VPN-Passwort ist erforderlich" @@ -4916,8 +5071,8 @@ msgstr "Erweiterung »%s« kann nicht geladen werden: %s" msgid "" "cannot load VPN plugin \"%s\" due to missing \"%s\". Missing client plugin?" msgstr "" -"VPN-Erweiterung »%s« kann wegen fehlendem »%s« nicht geladen werden. Fehlt die " -"Client-Erweiterung?" +"VPN-Erweiterung »%s« kann wegen fehlendem »%s« nicht geladen werden. Fehlt " +"die Client-Erweiterung?" #: src/libnmc-base/nm-vpn-helpers.c:73 #, c-format @@ -4999,11 +5154,11 @@ msgstr "Ungültige IP-Adresse: %s" #: src/libnmc-setting/nm-meta-setting-desc.c:294 msgid "" -"The valid syntax is: 'ip[/prefix] [next-hop] [metric] [attribute=val]... [,ip[/" -"prefix] ...]'" +"The valid syntax is: 'ip[/prefix] [next-hop] [metric] [attribute=val]... [," +"ip[/prefix] ...]'" msgstr "" -"Die gültige Syntax lautet: 'IP[/Präfix] [next-hop] [Metrik] [Attribut=Wert]... " -"[,IP[/Präfix] ...]'" +"Die gültige Syntax lautet: 'IP[/Präfix] [next-hop] [Metrik] " +"[Attribut=Wert]... [,IP[/Präfix] ...]'" #: src/libnmc-setting/nm-meta-setting-desc.c:340 #, c-format @@ -5053,139 +5208,139 @@ msgstr "Team-Konfigurationsdatei »%s« enthält ungültiges UTF-8" msgid "auto" msgstr "auto" -#: src/libnmc-setting/nm-meta-setting-desc.c:1193 +#: src/libnmc-setting/nm-meta-setting-desc.c:1179 #, c-format msgid "%s (%s)" msgstr "%s (%s)" -#: src/libnmc-setting/nm-meta-setting-desc.c:1447 -#: src/libnmc-setting/nm-meta-setting-desc.c:1455 -#: src/libnmc-setting/nm-meta-setting-desc.c:4513 +#: src/libnmc-setting/nm-meta-setting-desc.c:1435 +#: src/libnmc-setting/nm-meta-setting-desc.c:1443 +#: src/libnmc-setting/nm-meta-setting-desc.c:4488 msgid "'%s' is out of range [%" msgstr "»%s« ist außerhalb des Bereichs [%" -#: src/libnmc-setting/nm-meta-setting-desc.c:1463 +#: src/libnmc-setting/nm-meta-setting-desc.c:1451 #, c-format msgid "'%s' is not a valid number" msgstr "»%s« ist keine gültige Zahl" -#: src/libnmc-setting/nm-meta-setting-desc.c:1519 +#: src/libnmc-setting/nm-meta-setting-desc.c:1507 #, c-format msgid "'%s' is out of range [0, %u]" msgstr "»%s« ist außerhalb des Bereichs [0, %u]" -#: src/libnmc-setting/nm-meta-setting-desc.c:1570 +#: src/libnmc-setting/nm-meta-setting-desc.c:1558 #, c-format msgid "'%s' is not a valid Ethernet MAC" msgstr "»%s« ist keine gültige Ethernet MAC-Adresse" -#: src/libnmc-setting/nm-meta-setting-desc.c:1672 +#: src/libnmc-setting/nm-meta-setting-desc.c:1647 #, c-format msgid "invalid option '%s', use a combination of [%s]" msgstr "ungültige Option »%s«. Verwenden Sie eine Kombination aus [%s]" -#: src/libnmc-setting/nm-meta-setting-desc.c:1809 +#: src/libnmc-setting/nm-meta-setting-desc.c:1784 #, c-format msgid "%d (key)" msgstr "%d (Schlüssel)" -#: src/libnmc-setting/nm-meta-setting-desc.c:1811 +#: src/libnmc-setting/nm-meta-setting-desc.c:1786 #, c-format msgid "%d (passphrase)" msgstr "%d (Passphrase)" -#: src/libnmc-setting/nm-meta-setting-desc.c:1814 +#: src/libnmc-setting/nm-meta-setting-desc.c:1789 #, c-format msgid "%d (unknown)" msgstr "%d (unbekannt)" -#: src/libnmc-setting/nm-meta-setting-desc.c:1827 +#: src/libnmc-setting/nm-meta-setting-desc.c:1802 msgid "0 (NONE)" msgstr "0 (KEINES)" -#: src/libnmc-setting/nm-meta-setting-desc.c:1833 +#: src/libnmc-setting/nm-meta-setting-desc.c:1808 msgid "REORDER_HEADERS, " msgstr "REORDER_HEADERS, " -#: src/libnmc-setting/nm-meta-setting-desc.c:1835 +#: src/libnmc-setting/nm-meta-setting-desc.c:1810 msgid "GVRP, " msgstr "GVRP, " -#: src/libnmc-setting/nm-meta-setting-desc.c:1837 +#: src/libnmc-setting/nm-meta-setting-desc.c:1812 msgid "LOOSE_BINDING, " msgstr "LOOSE_BINDING, " -#: src/libnmc-setting/nm-meta-setting-desc.c:1839 +#: src/libnmc-setting/nm-meta-setting-desc.c:1814 msgid "MVRP, " msgstr "MVRP, " -#: src/libnmc-setting/nm-meta-setting-desc.c:1860 +#: src/libnmc-setting/nm-meta-setting-desc.c:1835 msgid "0 (none)" msgstr "0 (keine)" -#: src/libnmc-setting/nm-meta-setting-desc.c:1866 +#: src/libnmc-setting/nm-meta-setting-desc.c:1841 msgid "agent-owned, " msgstr "Agent-Besitz, " -#: src/libnmc-setting/nm-meta-setting-desc.c:1868 +#: src/libnmc-setting/nm-meta-setting-desc.c:1843 msgid "not saved, " msgstr "nicht gespeichert, " -#: src/libnmc-setting/nm-meta-setting-desc.c:1870 +#: src/libnmc-setting/nm-meta-setting-desc.c:1845 msgid "not required, " msgstr "nicht notwendig, " -#: src/libnmc-setting/nm-meta-setting-desc.c:2075 +#: src/libnmc-setting/nm-meta-setting-desc.c:2050 #, c-format msgid "'%s' is not valid; use