Commit graph

16365 commits

Author SHA1 Message Date
Thomas Haller 2ac6c5a981 build: rename intermediate doc xmls
Allows to use pattern rules by making the
related files having a common naming scheme.

This commit only renames files.
2016-11-24 16:54:17 +01:00
Thomas Haller ec4a1b7540 build: avoid some uses of BUILT_SOURCES in Makefile.am
BUILT_SOURCES only matters during `make all`, `make check`
and `make install`.

It would be nice to be able to build every target specifically
from an empty git-tree.

Drop the use of BUILT_SOURCES where we already have the explicit
dependencies declared.
2016-11-24 16:52:27 +01:00
Thomas Haller 99bf51d3c7 build: add explicit dependency objects to generated source files
BUILT_DIR only matters during `make all` and `make check`.
2016-11-24 15:59:27 +01:00
Thomas Haller 53496b3bb7 build: don't use $(top_*dir) in Makefile.am
It's the same as the current directory. For consistency
don't use the "top_" prefix.
2016-11-24 15:59:27 +01:00
Thomas Haller a332e17f6b build: consistently use $() instead of ${} in Makefile.am 2016-11-24 15:59:27 +01:00
Thomas Haller 063bacdb84 build: drop $(top_builddir) for referring to libnm/libnm.la 2016-11-24 15:59:27 +01:00
Thomas Haller d38e5c3b38 tools: add test script to build various configurations
Script to schedule out-of-tree builds
2016-11-24 15:59:27 +01:00
Thomas Haller 33e8da438e build: enable --with-introspection in default configure options of autogen.sh 2016-11-24 15:59:19 +01:00
Lubomir Rintel 743d372d72 libnm/vpn-service-plugin: transition to STOPPED state from INIT too
We may want to stop the plugin before we started connecting e.g. when the
plugin NeedsSecrets but we can't supply them.
2016-11-24 14:13:13 +01:00
Thomas Haller 7729d85c8c contrib/rpm: let RPM package own %{systemd_dir}/network-online.target.wants
# rpm -qf /usr/lib/systemd/system/network-online.target.wants/NetworkManager-wait-online.service
  NetworkManager-1.5.2-16352.e0c50a9703.fc24.x86_64
  # rpm -qf /usr/lib/systemd/system/network-online.target.wants
  file /usr/lib/systemd/system/network-online.target.wants is not owned by any package
2016-11-24 12:57:27 +01:00
Lubomir Rintel 88f3f29882 build: install the D-Bus introspection data
This would make it easier to develop against NetworkManager D-Bus API.
2016-11-23 15:43:42 +01:00
Lubomir Rintel 972e0d2803 all: rename the introspection data to use the interface paths in names
This makes it easier to install the files with proper names.
Also, it makes the makefile rules slightly simpler.

Lastly, the documentation is now generated into docs/api, which makes it
possible to get rid of the awkward relative file names in docbook.
2016-11-23 15:43:42 +01:00
Francesco Giudici 0ce7da1e22 libnm-core: remove INFERRABLE flag from dhcp-hostname property
When assuming a dhcp connection don't consider the DHCP "Host Name"
Option (12) passed in the DHCP request for the match of the available
connections.

https://bugzilla.redhat.com/show_bug.cgi?id=1393997
2016-11-23 09:13:35 +01:00
Francesco Giudici e0c50a9703 merge: branch 'fg/802-3-prop_rh1353612_II'
https://bugzilla.redhat.com/show_bug.cgi?id=1353612
2016-11-22 15:28:23 +01:00
Thomas Haller d5a743a619 core: merge NM_PLATFORM_LINK_DUPLEX_UNSET and UNKNOWN
They have basically the same use, except that certain places handled
one but not the other.
2016-11-22 15:24:47 +01:00
Thomas Haller 417f5ad6ed libnm-core: refactor NMSettingWired:verify() to use NM_IN_STRSET() 2016-11-22 15:24:47 +01:00
Francesco Giudici 3bcca564c7 ifcfg-rh/tests: add tests for link negotiation options
Thanks to Thomas Haller for making test code much more compact taking
advantage of the nmtst_create_minimal_connection function.
2016-11-22 15:24:47 +01:00
Francesco Giudici 173819b73d device/ethernet: check and apply link negotiation properties
This will allow to enforce link mode (autonegotiation, speed and duplex)
as specified in 802-3-ethernet properties.
2016-11-22 15:24:47 +01:00
Francesco Giudici 61faa5080e nm-device-ethernet: refactor act_stage1_prepare code
Refactored the code a bit without changing functionality: let the function
immediately return on error.
2016-11-22 15:24:47 +01:00
Francesco Giudici 16fdef33dd nmcli: add get functions for 802-3.speed and 802-3.duplex properties 2016-11-22 15:24:47 +01:00
Francesco Giudici e196137f3a nmcli: enable set on 802-3 properties 2016-11-22 15:24:47 +01:00
Francesco Giudici 12b9d30ae6 ifcfg-rh: add support to 802-3.[auto-negotiate,speed,duplex] properties
NOTE: changed the default value for auto-negotiate from TRUE to FALSE.

Normalization enforces that no values for speed and duplex are there
when autonegotiation is on. This is required as autoneg on with specific
speed and duplex set means to ethtool to use autonegotiation but
advertise that specific speed and duplex only.

autoneg off, speed 0 and duplex NULL means to ignore link negotiation.
2016-11-22 15:24:47 +01:00
Francesco Giudici de88a46775 ifcfg-rh: rework ETHTOOL_OPT parsing function
This would allow to make easier adding support to more ETHTOOL options.
2016-11-22 15:24:47 +01:00
Francesco Giudici ab0954b0e5 platform: add APIs to allow link negotiation management
Added platform functions to retrieve device link mode status and to
switch from auto to manual link negotiation:
nm_platform_ethtool_get_link_settings
nm_platform_ethtool_set_link_settings
2016-11-22 15:24:47 +01:00
Thomas Haller 7b16b28a62 build: merge branch 'th/build-cleanup' 2016-11-22 11:04:37 +01:00
Thomas Haller f1017b7f69 build: move setting install_manpages variable 2016-11-22 11:00:49 +01:00
Thomas Haller 269c2afee8 build: don't consider clients/cli/settings-docs.c for SETTING_DOCS_AVAILABLE
"clients/cli/settings-docs.c" is only required for nmcli. Makefile.am will
check for the existance of the file during the build.

It doesn't matter for SETTING_DOCS_AVAILABLE.
2016-11-22 11:00:49 +01:00
Thomas Haller 2c9572d302 build: remove redundant check for ENABLE_GTK_DOC
BUILD_SETTING_DOCS is only enabled when we have also ENABLE_GTK_DOC.
Remove the redundant check.
2016-11-22 11:00:49 +01:00
Thomas Haller 98ac6ba5e5 build: print state of introspection in configure summary 2016-11-22 11:00:49 +01:00
Thomas Haller 5bd42a0ea9 build: fail configure if pygobject is not available
There is on configure option to select for the use of pygobject.
We don't need it. If a user selects --enable-gtk-doc and
--with-introspection, we want to BUILD_SETTING_DOCS.
In this case, just require the python library too.
2016-11-22 11:00:49 +01:00
Thomas Haller 8f0c9e0d07 build: drop no longer used defines BUILD_SETTING_DOCS and HAVE_SETTING_DOCS 2016-11-22 09:59:05 +01:00
Thomas Haller 104546cc21 cli: always include "settings-docs.c"
We now require settings-docs.c to be present. Either, configure
with --enable-gtk-doc to have it build, or use the pre-generated file
from the source tarball.
2016-11-21 20:20:14 +01:00
Lubomir Rintel f2afabe610 build: enable gtk-doc by default 2016-11-21 18:34:50 +01:00
Lubomir Rintel 6143e71464 libnm/generate-plugin-docs: don't replace newlines with spaces
That serves no purpose whatsoever.
2016-11-21 18:34:50 +01:00
Lubomir Rintel 612351471c contrib/rpm: drop XML::Parser BR
We don't depend on it already.
2016-11-21 18:34:47 +01:00
Lubomir Rintel d3f7f7abca all: drop YAML dependency 2016-11-21 18:15:42 +01:00
Lubomir Rintel 3b64dc9cbd libnm/generate-plugin-docs: drop YAML dependency
It makes little sense to produce a YAML and then decompose it.
2016-11-21 18:15:42 +01:00
Thomas Haller 11e26d015a build: add explicit dependency of nmcli sources to "settings-docs.c"
Instead of relying on BUILT_SOURCES.

  $ git clean -fdx && NOCONFIGURE=x ./autogen.sh && ./configure --enable-gtk-doc && make clients/cli/nmcli

Also, add the file to DISTCLEANFILES.
2016-11-21 15:48:05 +01:00
Lubomir Rintel bd01d9ca2e build: silence some verbose make rules 2016-11-21 15:35:12 +01:00
Thomas Haller 44f9d16d18 build: merge branch 'th/build-include-paths' 2016-11-21 14:29:46 +01:00
Thomas Haller 58236425cb build: cleanup include paths in Makefile.am
- Use -I$() instead of -I${}
- omit "top_" for -I$(srcdir)
- remove quoting for include paths
  We don't quote other places either. You just cannot
  build NetworkManager in a path that contain invalid
  characters.
- remove trailing slash from include paths
- fix indention with spaces in Makefile.am
2016-11-21 14:26:37 +01:00
Thomas Haller 44ecb41593 build: don't add subdirectories to include search path but require qualified include
Keep the include paths clean and separate. We use directories to group source
files together. That makes sense (I guess), but then we should use this
grouping also when including files. Thus require to #include files with their
path relative to "src/".

Also, we build various artifacts from the "src/" tree. Instead of having
individual CFLAGS for each artifact in Makefile.am, the CFLAGS should be
unified. Previously, the CFLAGS for each artifact differ and are inconsistent
in which paths they add to the search path. Fix the inconsistency by just
don't add the paths at all.
2016-11-21 14:26:37 +01:00
Thomas Haller a65762ca33 build: rename "src/ppp-manager" to "src/ppp"
The ppp directory does not only contain the manager
instance, but various files related to ppp.

Rename.
2016-11-21 14:07:47 +01:00
Thomas Haller 8c7f5e2653 build: rename "src/dnsmasq-manager" to "src/dnsmasq"
The dnsmasq directory does not only contain the manager
instance, but various files related to dnsmasq.

Rename.
2016-11-21 14:07:47 +01:00
Thomas Haller 2603b01684 build: rename "src/vpn-manager" to "src/vpn"
The vpn directory does not only contain the manager
instance, but various files related to VPN.

Rename.
2016-11-21 14:07:47 +01:00
Thomas Haller 62c2e6ccda build: rename "src/dns-manager" to "src/dns"
The dns directory does not only contain the manager
instance, but various files related to DNS.

Rename.
2016-11-21 14:07:47 +01:00
Thomas Haller e053996881 build: rename "src/dhcp-manager" to "src/dhcp"
The dhcp directory does not only contain the manager
instance, but various files related to DHCP.

Rename.
2016-11-21 14:07:47 +01:00
Thomas Haller 1706366351 build: rename "src/supplicant-manager" to "src/supplicant"
The supplicant directory does not only contain the manager
instance, but various files related to wpa-supplicant.

Rename.
2016-11-21 14:07:47 +01:00
Thomas Haller d080b5d0ff build: add dependency for ifcfg-rh objects to "nmdbus-ifcfg-rh.h"
$ git clean -fdx && NOCONFIGURE=x ./autogen.sh && mkdir -p x/y && cd x/y && ../../configure && make src/settings/plugins/ifcfg-rh/libnm-settings-plugin-ifcfg-rh.la
  ...
  ../../src/settings/plugins/ifcfg-rh/nms-ifcfg-rh-plugin.c:49:55: fatal error: settings/plugins/ifcfg-rh/nmdbus-ifcfg-rh.h: No such file or directory
  #include "settings/plugins/ifcfg-rh/nmdbus-ifcfg-rh.h"
2016-11-21 14:07:47 +01:00
Lubomir Rintel 2d2b21501f libnm-core/vpn-editor-plugin: add missing documentation
../../libnm-core/nm-vpn-editor-plugin.h:108: warning: Field description for NMVpnEditorPluginInterface::notify_plugin_info_set is missing in source code comment block.
2016-11-21 13:53:03 +01:00