summaryrefslogtreecommitdiff
path: root/configure.ac
Commit message (Collapse)AuthorAgeFilesLines
* Revert "build: fix detection of NSS library on Debian"Thomas Haller2016-02-181-5/+1
| | | | | | | | | | | | | Sorry, it was not Debian's fault. It is only libnss-devel package on Ubuntu 12.04/Precise [1]. Revert the workaround and avoid the failure by dropping the version check altogether. NSS 3.11 is from 2006, it's unlikely a user tries to build current NetworkManager against such an old version of the library. [1] https://bugs.launchpad.net/ubuntu/+source/nss/+bug/1547147 This reverts commit d48790cbec7d19b20a10e1627dd8ee1c996425b1.
* build: fix detection of NSS library on DebianThomas Haller2016-02-181-1/+5
| | | | | | | Debian added an epoch "2" to the version of NSS library. Fix configure to account for that. Related: https://launchpad.net/debian/sid/+source/nss
* build: remove spurious comma from configure.acDan Williams2016-01-201-1/+1
|
* release: bump version to 1.1.90 (1.2-beta1)1.2-beta1Lubomir Rintel2016-01-191-1/+1
|
* build: use symlinks for nmtuiMichael Biebl2016-01-071-0/+2
| | | | | | Make /usr/bin/nmtui-* symbolic links to /usr/bin/nmtui. https://bugzilla.gnome.org/show_bug.cgi?id=759824
* build: rename directory "include" to "shared"Thomas Haller2015-12-241-2/+2
| | | | | | | | | | Up to now, the "include" directory contained (only) header files that were used project-wide by libs, core, clients, et al. Since the directory now also contains a non-header file, the "include" name is misleading. Instead of adding yet another directory that is project-wide, with non-header-only content, rename the "include" directory to "shared".
* build: bump soup requirement to 2.40Lubomir Rintel2015-12-101-2/+2
| | | | The dns-manager uses some newer API.
* build: use soup 2.32Lubomir Rintel2015-12-101-1/+2
| | | | | We already use 2.32 API and also use API that was replaced with new one after 2.42 and deprecated in 2.53.
* examples: add README for python-networkmanager NetworkManager libraryThomas Haller2015-12-071-0/+1
|
* initscript: remove all distribution initscriptsThomas Haller2015-12-071-7/+0
| | | | | | | | | | | | | | | These initscripts weren't modified for a long time. Are they just unused or flawless? It seems they are no longer best-practice (e.g. NetworkManager supports reloading configuration via SIGHUP, which none of these scripts implement). Nowadays some distributions moved to systemd and quite possible nobody uses these scripts. Also, any potential downstream user probably has an adjusted copy of them in their repositories. Just remove them. https://mail.gnome.org/archives/networkmanager-list/2015-December/msg00003.html
* build: substitute config directory in MakefileLubomir Rintel2015-11-271-1/+0
| | | | | | | The autoconf substitutions should be expanded in Makefiles and shell scripts only, does not work well in XML. Fixes: 3e0b590e107add3ab1d1ac23e473fcf0c5fe32b1
* build: Remove NM_CONFIG_KEYFILE_PATH_DEFAULT from config.hLubomir Rintel2015-11-271-3/+0
| | | | | | | | | | Can't just substitute sysconfdir into a header file -- it's meant to be expanded in a Makefile. Otherwise, unexpanded ${prefix} will end up in a header file. We do that for NMCONFDIR already, let's use it here too. Fixes: 2144457fab9138c9f5ddac9759f48e2a8735dcfb
* nmtst/valgrind: allow calling 'run-test-valgrind.sh' script directlyThomas Haller2015-11-241-1/+1
| | | | | | | | | | | | | | | | | | When you want to run valgrind for a test, you either had to invoke valgrind manually, or doing it via `make check` (provided you configured --with-valgrind). Make it more convenient to run valgrind by passing the test to run to the "run-test-valgrind.sh" wrapper. This also allows to pass -p/-s to the test, which is not possible during `make check` because selecting tests conflicts with "--tap". The following invocations are largely equivalent and work as expected: $ ./tools/run-test-valgrind.sh ./src/platform/tests/test-link-linux -p /link/software/detect/vlan $ NMTST_DEBUG=no-debug,p=/link/software/detect/vlan ./tools/run-test-valgrind.sh ./src/platform/tests/test-link-linux
* build/nmcli: make nmcli build optionalJoel Holdsworth2015-11-191-3/+10
| | | | | https://mail.gnome.org/archives/networkmanager-list/2015-November/msg00043.html https://mail.gnome.org/archives/networkmanager-list/2015-November/msg00063.html
* lldp: add test caseBeniamino Galvani2015-11-101-0/+2
| | | | | | | Add a test for the LLDP listener to ensure that things don't accidentally break when we import new code from systemd upstream. https://bugzilla.gnome.org/show_bug.cgi?id=757005
* build: no longer link against libnl-route-3 libraryThomas Haller2015-11-021-1/+1
|
* platform: create netlink messages directly without libnl-route-3Thomas Haller2015-11-021-13/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of using libnl-route-3 library to serialize netlink messages, construct the netlink messages ourselves. This has several advantages: - Creating the netlink message ourself is actually more straight forward then having an intermediate layer between NM and the kernel. Now it is immediately clear, how a platform request translates to a netlink/kernel request. You can look at the kernel sources how a certain netlink attribute behaves, and then it's immediately clear how to set that (and vice versa). - Older libnl versions might have bugs or missing features for which we needed to workaround (often by offering a reduced/broken/untested functionality). Now we can get rid or workaround like _nl_has_capability(), check_support_libnl_extended_ifa_flags(), HAVE_LIBNL_INET6_TOKEN. Another example is a libnl bug when setting vlan ingress map which isn't even yet fixed in libnl upstream. - We no longer need libnl-route-3 at all and can drop that runtime requirement, saving some 400k. Constructing the messages ourselves also gives better performance because we don't have to create the intermediate libnl object. - In the future we will add more link-type support which is easier to support by basing directly on the plain kernel/netlink API, instead of requiring also libnl3 to expose this functionality. E.g. adding macvtap support: we already parsed macvtap properties ourselves because of missing libnl support. To *add* macvtap support, we also would have to do it ourself (or extend libnl).
* platform: parse netlink messages ourselves without libnl-route-3Thomas Haller2015-11-011-17/+0
| | | | | | | | | | | | | | | | | | | | | | Constructing the libnl3 object only to parse the message is wasteful. It involves several memory allocations, thread synchronization and parsing fields that we don't care about. But moreover, older libnl version might not support all the fields we are interested in, hence we have workarounds like _nl_link_parse_info_data(). Certain features might not fully work unless libnl supports it too (although kernel would). As we already parse the data ourselves sometimes, just go all they way and don't construct the intermediate libnl object. This will allow us to drop the _nl_link_parse_info_data() workarounds in next commits. That is important, because _nl_link_parse_info_data() sidesteps our platform cache and is not in sync with the cache (not to mention the extra work to explicitly refetch the data on every lookup). Also, it gets us 60% on the way to no longer needing 'libnl-route-3.so' at all and eventually drop requiring the library.
* build: no longer link against libnl-genl-3 libraryThomas Haller2015-11-011-1/+1
|
* dns-unbound: use the correct path when calling dnssec-trigger-scriptLubomir Rintel2015-10-301-0/+10
| | | | | | | Debian systems don't have /usr/libexec, so the script is installed in a different path. Based on a patch from Arto Jantunen <viiru@debian.org>
* keyfile: make the keyfile location configurableThomas Haller2015-10-141-0/+3
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=755995
* merge: merge branch 'systemd' into masterBeniamino Galvani2015-10-081-0/+1
|\
* | build: make NM_MORE_ASSERTS define numeric for different levels of more-assertsThomas Haller2015-10-051-2/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | Allows to enable more-asserts more granularly. Unfortunately, the old check was "${enable_more_asserts} == "yes", thus we cannot extend "--enable-more-assert=level" because that would mean that the same build script cannot set the option on both old and new NetworkManager. Thus, add a new option --with-more-asserts=level. If you put the following in your build script, it will work as expected whether you build a new or an old version of NetworkManager. ./configure --enable-more-asserts --with-more-asserts=5
* | build: extract version macros from "nm-version.h" to new header file ↵Thomas Haller2015-09-301-2/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | "nm-version-macros.h" For libnm library, "nm-dbus-interface.h" contains defines like the D-Bus paths of NetworkManager. It is desirable to have this header usable without having a dependency on "glib.h", for example for a QT application. For that, commit c0852964a890cf43cc2dcaeff41ac6edc5028f24 removed that dependancy. For libnm-glib library, the analog to "nm-dbus-interface.h" is "NetworkManager.h", and the same applies there. Commit 159e827a72f420048e12d318f8ba1edd3f641fc8 removed that include. However, that broke build on PackageKit [1] which expected to get the version macros by including "NetworkManager.h". So at least for libnm-glib, we need to preserve old behavior so that a user including "NetworkManager.h" gets the version macros, but not "glib.h". Extract the version macros to a new header file "nm-version-macros.h". This header doesn't include "glib.h" and can be included from "NetworkManager.h". This gives as previous behavior and a glib-free include. For libnm we still don't include "nm-version-macros.h" to "nm-dbus-interface.h". Very few users will actually need the version macros, but not using libnm. Users that use libnm, should just include (libnm's) "NetworkManager.h" to get all headers. As a special case, a user who doesn't want to use glib/libnm, but still needs both "nm-dbus-interface.h" and "nm-version-macros.h", can include them both separately. [1] https://github.com/hughsie/PackageKit/issues/85 Fixes: 4545a7fe9670ce4d7c259c11c2cc853bfae6729b
* | supplicant: adjust fragment_size according to MTU (bgo #755145)Jiří Klimeš2015-09-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | NetworkManager set wpa_supplicant's fragment_size option to 1300. But if MTU was lower, wpa_supplicant failed with "l2_packet_send - sendto: Message too long" due to fragmentation of EAP-TLS or EAP-PEAP packets. Actually, MTU has to be 14 bytes bigger than the "fragment_size" parameter. Ideally, wpa_supplicant would take MTU in the account and adjust the fragmentation limit accordingly. See discussion in http://lists.shmoo.com/pipermail/hostap/2015-August/033546.html https://bugzilla.gnome.org/show_bug.cgi?id=755145
* | build: avoid premature expandingLubomir Rintel2015-08-211-6/+6
| | | | | | | | | | We want ${prefix} unexpanded in a .pc files and the rest expands just fine in Makefiles.
* | build: create xz compressed by defaultLubomir Rintel2015-08-131-1/+1
| | | | | | | | | | | | GNOME release tooling repacks the bz2 to a xz anyway. This makes it easier for packagers to use tarballs created with "make dist" in place of distribution tarballs.
* | configure.ac: do not hardcode pkg-configQuentin Glidic2015-08-111-2/+2
| | | | | | | | | | | | | | | | Always use $PKG_CONFIG instead Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net> https://bugzilla.gnome.org/show_bug.cgi?id=753502
* | build: make libnm-util/libnm-glib optionalDan Winship2015-08-101-5/+11
| | | | | | | | | | | | Add --without-libnm-glib, for people who don't want to build the legacy client libraries. When building with this option, dbus-glib and libdbus are not required.
* | core: final gdbus portingDan Winship2015-08-101-14/+0
| | | | | | | | | | | | | | | | | | | | Port remaining bits to gdbus and remove stray dbus-glib references Drop the dbus-glib version check from configure, since nothing depends on new dbus-glib any more. Move nm-dbus-glib-types.h and nm-gvaluearray-compat.h from include/ to libnm-util/ since they are now only used by libnm-util and libnm-glib.
* | sleep-monitor: add support for ConsoleKit2 inhibitEric Koegel2015-08-071-8/+18
| | | | | | | | | | | | | | | | | | | | ConsoleKit2 has added the same suspend/resume DBUS API that Systemd uses. This patch adds the code to use ConsoleKit2's inhibit API. http://consolekit2.github.io/ConsoleKit2/#Manager.Inhibit [thaller@redhat.com: modified original patch] https://bugzilla.gnome.org/show_bug.cgi?id=752836
* | build: print configure result for default configuration values in a common ↵Thomas Haller2015-08-041-3/+3
| | | | | | | | format
* | build: fix configure bug for detecting libaudit supportThomas Haller2015-08-041-2/+2
| | | | | | | | Fixes: c4c0bbb28c9c75d14e2a03d713723afb8d395ccb
* | audit-manager: enable logging.audit by default when libaudit support is ↵Thomas Haller2015-08-041-5/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | available Previously, when compiling NetworkManager with libaudit support, it was disabled by default and only used after setting logging.audit=true. Turn that around. If we compile NetworkManager with audit support, we also enable it by default. The user can then explicitly disable it by configuring logging.audit in NetworkManager.conf. But also, add a configure option 'yes-disabled-by-default' to compile with audit support, but have it disabled by default. This would be the previous behavior, but it must be enabled explicitly. Fixes: be49a59fb649d7383b456403deb323a2eb9dab4b
* | core: add audit supportBeniamino Galvani2015-08-041-0/+17
| | | | | | | | | | | | Introduce some primitives to deliver messages about relevant configuration changes to the Linux audit subsystem through libaudit (if enabled at build time) and to the logging system.
* | build: remove SELinux AM_CONDITIONAL from configure.acBeniamino Galvani2015-08-041-1/+0
| |
* | build: remove unneeded AC_SUBST macros after PKG_CHECK_MODULESBeniamino Galvani2015-08-041-28/+0
| | | | | | | | | | | | | | | | | | | | The PKG_CHECK_MODULES macro shipped with modern versions (at least 0.24) of pkg-config already calls AC_SUBST to generate ${PKG}_CFLAGS and ${PKG}_LIBS variables in Makefiles. Remove the unneeded occurrences of AC_SUBST after PKG_CHECK_MODULES in configure.ac; this should be safe because we are already assuming that pkg-config version is recent enough in some other places.
* | all: rename nm-glib-compat.h to nm-glib.h, use everywhereDan Winship2015-07-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rather than randomly including one or more of <glib.h>, <glib-object.h>, and <gio/gio.h> everywhere (and forgetting to include "nm-glib-compat.h" most of the time), rename nm-glib-compat.h to nm-glib.h, include <gio/gio.h> from there, and then change all .c files in NM to include "nm-glib.h" rather than including the glib headers directly. (Public headers files still have to include the real glib headers, since nm-glib.h isn't installed...) Also, remove glib includes from header files that are already including a base object header file (which must itself already include the glib headers).
* | build: fix comment for NM_MORE_LOGGINGLubomir Rintel2015-07-151-1/+1
| | | | | | | | Reported-by: Michael Biebl <biebl@debian.org>
* | logging: add compile time default for logging.backend configurationThomas Haller2015-07-141-1/+21
| |
* | build: detect systemd-journald supportThomas Haller2015-07-141-0/+25
| |
* | build: fix $nmlibdir to be "/usr/lib/NetworkManager"Thomas Haller2015-07-021-1/+1
| | | | | | | | | | | | Was detected as "/usr/lib64/NetworkManager". Fixes: 32dbc51dbd2842a6196bc84f9c303bee9c16a2de
* | settings: enable "ibft" plugin by default together with "ifcfg-rh"Thomas Haller2015-07-021-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Originally, ibft settings were handled by "ifcfg-rh" plugin. Later, we added a separate "ibft" plugin and moved the functionality there. The problem was that users quite possibly had a configuration like [main] plugins=ifcfg-rh in their "NetworkManager.conf". That meant, after upgrade users would no longer have ibft support. We fixed that by installing "/etc/NetworkManager/conf.d/10-ibft-plugin.conf" which was read after the main file and contained: [main] plugins+=ibft We no longer want to install configuration snippets with our core packages to /etc. Avoid the regression by changing the meaning of "ifcfg-rh". By enabling "ifcfg-rh" you now implicitly enable "ibft" plugin as well. This can be turned off via "no-ibft". And you can continue to enable "ibft" plugin alone.
* | build: add nmlibdir defineThomas Haller2015-07-021-0/+2
| |
* | settings/example: remove 'example' settings pluginThomas Haller2015-06-121-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The 'example' settings plugin is (obviously) unused, but it is also badly maintained and no longer best-practice in several ways: - it directly reads "NetworkManager.conf" instead of using NMConfig. - it parses device specs itself, instead of using nm_match_spec_split(). - read_connections() doesn't ensure that loading a file does not replace a previously loaded one (due to conflicting UUID). In general the example doesn't show/handle the complexity of potential UUID conflicts. Instead of fixing these issues it is better to ensure our main plugin ('keyfile') corresponds to current best practices. Should we ever add a new pluginww, 'keyfile' should be the example.
* | settings: remove ifcfg-suse pluginBeniamino Galvani2015-06-121-5/+1
| | | | | | | | | | | | | | | | | | After the hostname functionality has been moved from plugins to core, the ifcfg-suse plugin contains only boilerplate code with no actual functionality. Remove the plugin, mark it as deprecated in manual page and print a warning when it is selected in configuration file.
* | core: move handling of hostname from plugins to coreBeniamino Galvani2015-06-121-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | How to write and read the machine hostname is something that has been handled until now by plugins; this is questionable since the method using for storing the hostname should depend only on the distro used and not on which plugins are enabled. This commit moves all hostname-related functions from plugins to the core and allows to specify the method used to load and store the hostname at build time with the --with-hostname-persist=default|suse|gentoo configure option. 'default' method stores the hostname to /etc/hostname and monitors it to detect runtime changes. When the selected method is 'suse', the hostname gets read from and written to /etc/HOSTNAME; the file /etc/sysconfig/network/dhcp is also read to detect if the hostname is dynamic and thus invalid. Both files are monitored for changes. 'gentoo' method relies on /etc/conf.d/hostname for storing the hostname.
* | build: don't abort configure if there's no systemd devel headersLubomir Rintel2015-06-021-3/+10
| | | | | | | | Just disable systemd-logind session tracking instead.
* | builds: only enable TAP driver for glib >= 2.37.6Lubomir Rintel2015-05-281-1/+5
| | | | | | | | | | No TAP support for previous versions and --tap argument is silently ignored, confusing the TAP driver.
* | build: support runstatedir configure optionPavel Šimerda2015-05-281-1/+5
| | | | | | | | | | | | https://bugzilla.gnome.org/show_bug.cgi?id=737139 [thaller@redhat.com: modified original patch]