Commit Graph

189 Commits

Author SHA1 Message Date
Thomas Haller
2238ccb48b travis: run tests in parallel 2016-10-21 17:37:56 +02:00
Thomas Haller
491aad08a9 contrib/rpm: run make check in parallel (again)
Revert commit f551c91d33 and restore
parallel `make check`. It should work.
2016-10-19 15:26:30 +02:00
Thomas Haller
f551c91d33 Revert "contrib/rpm: run make check in parallel"
`make check -C libnm/tests` is not yet ready to run in
parallel. Revert.

This reverts commit 0a1508358d.
2016-10-14 15:48:27 +02:00
Thomas Haller
5ea3196376 contrib/rpm: rename obsoletes_nmver to obsoletes_version_device_plugins
We will have multiple obsoletes
2016-10-14 11:26:13 +02:00
Thomas Haller
c4325f6494 contrib/rpm: force compilation with "--enable-ld-gc"
It should already be autodetected. Just be explicit about it.
2016-10-14 10:33:30 +02:00
Thomas Haller
0a1508358d contrib/rpm: run make check in parallel 2016-10-14 10:33:30 +02:00
Thomas Haller
cf678811b5 contrib/rpm: regenerate the linker version script NetworkManager.ver while building the package 2016-10-14 10:33:30 +02:00
Thomas Haller
54f701b95c contrib/rpm: fix build_clean.sh --quick after removing shared/Makefile.am
Fixes: 24f566afa0
2016-10-14 10:02:46 +02:00
Lubomir Rintel
790e23df67 build: fix required packages list 2016-10-10 18:51:23 +02:00
Lubomir Rintel
e59ed6451f contrib/rpm: require at least the version of glib we built against
glib neither versions its symbols nor bumps SONAME on API changes, so rpm can't
figure out the correct dependencies itself.

https://bugzilla.redhat.com/show_bug.cgi?id=1378809
2016-09-23 12:20:23 +02:00
Thomas Haller
4cce0b7cf4 contrib/rpm: fix wrong argument to configure script
Fixes: aff491b6f3
(cherry picked from commit 5d09d45b42)
2016-08-18 14:54:04 +02:00
Thomas Haller
959e151722 contrib/rpm: update spec file to make it more similar to RHEL's version
(cherry picked from commit aff491b6f3)
2016-08-18 12:40:08 +02:00
Thomas Haller
cfd3e1a13c contrib/rpm: improve detection of ppp_version from spec file
https://bugzilla.redhat.com/show_bug.cgi?id=1334913
2016-07-07 12:33:09 +02:00
Thomas Haller
c87e1ef525 contrib/rpm: fix %{snap} define to have snapshot before git-sha
In case, where both
  %global snapshot git20160606
  %global git_sha b769b4df
is set, they version number should be
  .git20160606.b769b4df
not
  .b769b4df.git20160606
2016-07-07 12:33:09 +02:00
Thomas Haller
24430e4b07 contrib/rpm: don't enable sanitizer for debug build
There are valid failures, for which sanitizer would kill
NetworkManager:

  audit[1380]: AVC avc:  denied  { setrlimit } for  pid=1380 comm="NetworkManager" scontext=system_u:system_r:NetworkManager_t:s0 tcontext=system_u:system_r:NetworkManager_t:s0 tclass=process permissive=0
  NetworkManager[1380]: ==1380==ERROR: AddressSanitizer setrlimit() failed 13

Disable sanitizer to make debug builds working again, at least for now.
2016-06-07 09:15:26 +02:00
Beniamino Galvani
01540cf1d3 build: add options to compile with address/undefined sanitizers
This adds two new options to the configure scripts to compile NM,
clients and libraries with the address and undefined-behavior
sanitizers available in recent GCC versions. Clang is not supported at
moment.
2016-06-03 22:19:38 +02:00
Thomas Haller
5dea2efd9e contrib/rpm: add Requires to exact wwan version for NetworkManager-bluetooth subpackage
rpmdiff complains:

  Subpackage NetworkManager-bluetooth on aarch64 x86_64 ppc64 ppc64le s390x
  consumes library libnm-wwan.so()(64bit) from subpackage NetworkManager-wwan
  but does not have explicit package version requirement.
  Please add Requires: NetworkManager-wwan = %{version}-%{release} to
  NetworkManager-bluetooth in the specfile to avoid the need to test
  interoperability between the various combinations of old and new subpackages.

And indeed, device plugins don't have a stable API/ABI, and requires
exact NetworkManager and wwan versions. This was already enforced implicitly,
because all device plugins require the same exact NetworkManager version.
2016-06-02 09:44:37 +02:00
Thomas Haller
aae89ab8bb contrib: update REQUIRED_PACKAGES list
Needed to build contrib/rpm.
2016-05-31 16:54:47 +02:00
Thomas Haller
13ab20fe8c contrib/rpm: refactor specifying package version in spec file
Similar to what we do for RHEL and Fedora's spec file.
2016-05-06 15:54:19 +02:00
Thomas Haller
a38aa2fdb2 contrib/rpm: make package "NetworkManager-dispatcher-routing-rules" as "BuildArch: noarch" 2016-05-05 19:43:32 +02:00
Thomas Haller
a447942fc0 contrib/rpm: rename package "NetworkManager-config-routing-rules" to "NetworkManager-dispatcher-routing-rules" 2016-05-05 19:25:53 +02:00
Thomas Haller
781e9603ca contrib/rpm: split "10-ifcfg-rh-routes.sh" script to NetworkManager-config-routing-rules package
Like we do on RHEL. The package-split was originally necessary because
installing a pre-up dispatcher script would block activation (even if there
were no relevant route files.

Even if we have now the no-wait.d/ directory for dispatchers, still
split the package. It makes sense to have the routing-rules in a
separate RPM.

For contrib/rpm, we don't properly obsolete an older version of
NetworkManager package and thus the upgrade path will be broken.
2016-05-05 19:18:45 +02:00
Beniamino Galvani
7e5b0c94e6 contrib/fedora: add dependency on jansson 2016-04-18 21:50:36 +02:00
Lubomir Rintel
0fc0cc68fc man: move nmcli-examples to section 7
It really is not a configuration file and doesn't belong to section 5.
2016-04-05 14:37:51 +02:00
Thomas Haller
4be28b3916 contrib/rpm: fix logic in build.sh about specifying source
When the user neither specifies SOURCE or SOURCE_FROM_GIT,
we first want to detect a tarball in the current directory,
and as second fallback to SOURCE_FROM_GIT=1.

If either SOURCE or SOURCE_FROM_GIT is set, we want to do
that and not detect anything.

The logic was wrong.
2016-04-01 15:54:06 +02:00
Thomas Haller
6fb80e1060 contrib/rpm: improve build_clean.sh to explicitly set $SOURCE_FROM_GIT
Presiouvly, when there was a tarball file in the top git-tree, it would
have been choosen and no easy way to overwrite the decision to build
from a git-archive. Now you can safely build current HEAD by simply calling

  ./contrib/fedora/rpm/build_clean.sh -g

Contrary to the regular build which calls `make dist`, this doesn't
require a clean working copy and no need to purge it with git-clean.
2016-04-01 09:25:11 +02:00
Thomas Haller
3b6fc5cbda contrib/rpm: add comments to build.sh to list script arguments 2016-03-30 15:00:02 +02:00
Thomas Haller
a348bda6ea contrib/rpm: fix obtaining SOURCE via git-archive
- when user provided a $SOURCE argument, do call abs_path on
  it. abs_path allows the user to provide relative paths in
  the original directory.

- don't call abs_path on "$GITDIR/NetworkManager-$VERSION".tar.xz
  abs_path is there to verify user input and it will abort the script
  if the file doesn't exist.

- when creating a temporary tarball via git-archive, put it
  into the output directory and not overwriting files in
  $GITDIR.

- fix abs_path to return an error code and let callers abort
  the script

- add a new parameter $SOURCE_FROM_GIT so that you can control
  whether git-archive is used. You can now specify either $SOURCE
  or $SOURCE_FROM_GIT. In case of absence of both, it tries to
  detect a tar file in the $GITDIR directory.

Fixes: 9e9ec1a3da
2016-03-30 14:50:55 +02:00
Lubomir Rintel
9e9ec1a3da contrib/rpm: allow building of a git archive
No need for a make dist.
2016-03-30 13:25:49 +02:00
Lubomir Rintel
e3e0a49075 contrib/rpm: allow building w/o prebuilt documentation 2016-03-30 13:25:49 +02:00
Lubomir Rintel
6da97a8c48 contrib/rpm: with-udev-dir now has a sensible default 2016-03-14 16:32:15 +01:00
Lubomir Rintel
df9ac197c0 contrib/rpm: macro cosmetics 2016-03-05 18:56:28 +01:00
Lubomir Rintel
c0d7810271 contrib/rpm: include the valgrind suppression file in debuginfo package 2016-03-05 18:56:28 +01:00
Thomas Haller
6adf25c53c contrib/rpm: print dnf-install command at the end of build.sh 2016-02-26 14:36:49 +01:00
Thomas Haller
0685780566 contrib/rpm: add README, improve usage output and rename --no-build option to --no-dist 2016-02-17 11:44:09 +01:00
Thomas Haller
7ec5acdc66 travis: fix setting NMTST_DEBUG for travis-check.sh script 2016-02-12 16:54:40 +01:00
Thomas Haller
ac97715688 contrib/rpm: create dnsmasq-shared.d configuration directory 2016-02-12 13:01:53 +01:00
Thomas Haller
e58b3dac80 contrib/rpm: wrap long description lines
rpmlint warns description-line-too-long if the line exceeds 79 characters.
2016-02-04 18:04:43 +01:00
Thomas Haller
0661f66c40 contrib/rpm: minor cleanup 2016-02-04 17:59:05 +01:00
Thomas Haller
05b34e11d6 contrib/rpm: update comment in 00-server.conf 2016-02-03 16:25:19 +01:00
Thomas Haller
b4d1e3eb7b contrib/rpm: remove unneeded chkconfig and systemd-sysv requirements 2016-02-03 16:19:02 +01:00
Thomas Haller
5344a3297b contrib/rpm: remove unused 10-ibft-plugin.conf file
Fixes: 6f0036151f
2016-02-03 15:57:58 +01:00
Thomas Haller
6490dc154c contrib/rpm: add rpm_version in spec file
and rename realversion to real_version to follow the pattern.
2016-02-03 15:47:28 +01:00
Thomas Haller
455b981215 contrib/rpm: update comment for patches in spec file
We don't want to create backups of original files when
patching. Update the comment in the spec file to indicate
that.
2016-02-03 15:42:19 +01:00
Thomas Haller
87dc14476b contrib/rpm: make build more configurable by using conditionals
Also add a new conditional "debug" to enable more assertions and
more logging, which is disabled by default.

Also add a conditional "test" to disable running the unit tests
(make check) while building the package.

http://rpm.org/wiki/PackagerDocs/ConditionalBuilds
2016-02-02 16:09:24 +01:00
Thomas Haller
3b01d25561 contrib/rpm: add --no-build option to build_clean.sh
Option to skip building the source package. Useful if you already
have a source tarball from a previous run.
2016-02-02 16:05:23 +01:00
Thomas Haller
bb78d14467 contrib/rpm: add comment to NetworkManager.conf about debug logfiles 2016-01-27 14:11:24 +01:00
Lubomir Rintel
1408b8c0a2 travis: add coverity submission
Also, decouple the build from the test run; it looks better in the .yml file as
well as in the travis UI.
2016-01-22 22:12:43 +01:00
Thomas Haller
34050e9c0b travis: move build script to a separate script and improve debugging for failed tests 2016-01-22 11:06:09 +01:00
Thomas Haller
bc7ad75d99 contrib/rpm: install pre-up dispatcher script "10-ifcfg-rh-routes.sh" as no-wait
The main reason to introduce the "no-wait.d" dispatcher directory was
"10-ifcfg-rh-routes.sh", which (as a pre-up script) delays activation.
We even extracted the script to a separate package on RHEL to avoid
delays by default.

Invoke the script via no-wait.d.
2016-01-08 14:27:18 +01:00