- 11 Jun, 2019 1 commit
-
-
Thomas Haller authored
We no longer add these. If you use Emacs, configure it yourself. Also, due to our "smart-tab" usage the editor anyway does a subpar job handling our tabs. However, on the upside every user can choose whatever tab-width he/she prefers. If "smart-tabs" are used properly (like we do), every tab-width will work. No manual changes, just ran commands: F=($(git grep -l -e '-\*-')) sed '1 { /\/\* *-\*- *[mM]ode.*\*\/$/d }' -i "${F[@]}" sed '1,4 { /^\(#\|--\|dnl\) *-\*- [mM]ode/d }' -i "${F[@]}" Check remaining lines with: git grep -e '-\*-' The ultimate purpose of this is to cleanup our files and eventually use SPDX license identifiers. For that, first get rid of the boilerplate lines.
-
- 29 May, 2019 1 commit
-
-
Thomas Haller authored
clang on CentOS 7.6 (3.4.2-9.el7) warns: CC clients/tui/newt/clients_tui_newt_libnmt_newt_a-nmt-newt-button.o In file included from ../clients/tui/newt/nmt-newt-button.c:26: In file included from ../shared/nm-default.h:280: ../shared/nm-glib-aux/nm-macros-internal.h:1617:2: error: unknown warning group -Wstringop-truncation, ignored [-Werror,-Wunknown-pragmas] NM_PRAGMA_WARNING_DISABLE ("-Wstringop-truncation"); ^ ../shared/nm-glib-aux/nm-macros-internal.h:419:9: note: expanded from macro NM_PRAGMA_WARNING_DISABLE _Pragma(_NM_PRAGMA_WARNING_DO(warning)) ^ <scratch space>:109:25: note: expanded from here GCC diagnostic ignored "-Wstringop-truncation" ^ This warning totally defeats the purpose of why we use the pragma in the first place.
-
- 16 Apr, 2019 1 commit
-
-
Lubomir Rintel authored
[default=meh] instead of (default is meh) or (default: meh). https://github.com/NetworkManager/NetworkManager/pull/344
-
- 08 Feb, 2019 1 commit
-
-
Thomas Haller authored
We should always get the nesting in struct initializers right. Everyhing else is error-prone, and the warning is good. Enable it.
-
- 04 Feb, 2019 1 commit
-
-
Beniamino Galvani authored
Building with link-time optimization requires some tricks explained in [1]. [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=48200#c28
-
- 18 Sep, 2018 1 commit
-
-
Beniamino Galvani authored
If configure.ac automatically adds compiler flags to CFLAGS, it becomes hard to override one of them for a specific target because CFLAGS is added last. It is better to use AM_CFLAGS. See [1]. [1] https://www.gnu.org/software/automake/manual/html_node/Flag-Variables-Ordering.html
-
- 07 Aug, 2018 2 commits
-
-
Lubomir Rintel authored
Some warnings depends on others: -Wformat-security won't work without -Wformat. With -Wall we're confident enough that we have important warnings enabled and in any case we're going to enable it anyway. https://github.com/NetworkManager/NetworkManager/pull/175
-
Lubomir Rintel authored
g-ir-scanner uses distutils that have an unfortunate misfeature of inheriting the compiler flags it itself was built with. This includes the hardening flags that don't work with without redhat-rpm-build and break with clang every full moon. A configure check makes it clear about what went wrong in case introspection is desired, otherwise turns it off. (Taken from network-manager commit 678890ed0347849990787e8893122a39f95cb708)
-
- 17 Jul, 2018 2 commits
-
-
Thomas Haller authored
With --enable-more-warnings, we already used -std=gnu99, see commit ba2b2de3. Compilation may behave differently depending on the selected C standard that we choose. It seems wrong, with more-warnings, to build against a C standard, while otherwise leaving it undefind. Indeed, one might argue, that our build system should not use such compiler specific options. At least, not without detecting support for the compiler option during ./configure. However: - we already did this for --enable-more-warnings. - we should not program against a theoretical compiler. In practice, only gcc and clang works to build NetworkManager. Both these compilers support this option, so there is no reason to not use it. If we ever come into the situation to support another compiler, adjusting -std=gnu99 will be the smallest problem. Until that happens (and that's far from imminent), don't pretend to be portable to non-existing compilers and use the flag that in practice is available. See-also: https://gcc.gnu.org/onlinedocs/gcc/Standards.html
-
Thomas Haller authored
-
- 16 Feb, 2018 1 commit
-
-
Lubomir Rintel authored
Make it possible to add compiler options to a different variable than CFLAGS. This is useful to conditionally disable a compiler warning for a subpart of a tree.
-
- 08 Feb, 2018 1 commit
-
-
Lubomir Rintel authored
-
- 07 Feb, 2018 2 commits
-
-
Thomas Haller authored
We commonly only allow tabs at the beginning of a line, not afterwards. The reason for this style is so that the code looks formated right with tabstop=4 and tabstop=8.
-
Lubomir Rintel authored
This fixes the GCC 8 build. It disables the warning conditionally so that we get the warning back if glib gets fixed.
-
- 18 Dec, 2017 1 commit
-
-
Lubomir Rintel authored
It was disabled for shady reasons (not checking write() return value) that are long gone. Worse even, it hid some real bugs.
-
- 15 Dec, 2017 1 commit
-
-
Thomas Haller authored
We don't use them, so add a compiler warning about their use. I think they are annoying, because sizeof(x) and typeof(x) might evaluate at runtime. Especially the typeof() extension is useful for macros, but behaves badly with variable-length arrays due to running code at runtime. But the worst is, G_STATIC_ASSERT() is implemented by declaring an array of negative length. Usually, the checked condition should be a compile time constant, but with VLAs the compiler would not evaluate the static-assert at compile time and instead accept it silently. It's easy to mess up static asserts to wrongly have a non-constant condition, especially when the static-assert is used inside a macro. Just say no.
-
- 20 Oct, 2017 1 commit
-
-
Beniamino Galvani authored
Ideally we should switch to the standard macro AX_CODE_COVERAGE for code coverage, but infortunately it's not supported on older distros (e.g. on Travis). Keep using the current macro, but remove the lcov version check as it's not clear why it's needed in the first place (see [1]). The latest version of lcov is now 1.13. [1] http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=commit;h=dedd290bdb647704d74c13992bd04275d9cb648e
-
- 18 May, 2017 1 commit
-
-
Thomas Haller authored
-
- 18 Apr, 2017 1 commit
-
-
Lubomir Rintel authored
src/NetworkManagerUtils.c:347:18: error: suggest braces around initialization of subobject [-Werror,-Wmissing-braces] NMIPAddr a1 = { 0 }, a2 = { 0 }; ^ {} Should we initialize unions this way? I think it's all right -- the initializer works well and { { { 0 } } } is probably not what we'd like to see. (cherry picked from commit 43012156)
-
- 15 Apr, 2017 1 commit
-
-
Lubomir Rintel authored
src/NetworkManagerUtils.c:347:18: error: suggest braces around initialization of subobject [-Werror,-Wmissing-braces] NMIPAddr a1 = { 0 }, a2 = { 0 }; ^ {} Should we initialize unions this way? I think it's all right -- the initializer works well and { { { 0 } } } is probably not what we'd like to see.
-
- 10 Feb, 2017 2 commits
-
-
Thomas Haller authored
... and prepend the $ld_gc_flags instead of appending to the $CFLAGS.
-
Thomas Haller authored
-
- 06 Feb, 2017 5 commits
-
-
Thomas Haller authored
Mostly sort alphabetically, but - keep -Wextra first - move "-Wno-*" flags to the end
-
Thomas Haller authored
-
Thomas Haller authored
The warning seems questionable and overly strict. For now, just disable it to allow building with gcc7. src/systemd/src/basic/time-util.c: In function ‘format_timespan’: src/systemd/src/basic/time-util.c:509:46: error: ‘%0*lu’ directive output between 1 and 2147483648 bytes may cause result to exceed ‘INT_MAX’ [-Werror=format-truncation=] "%s"USEC_FMT".%0*"PRI_USEC"%s", ^~~~ src/systemd/src/basic/time-util.c:509:60: note: format string is defined here "%s"USEC_FMT".%0*"PRI_USEC"%s", src/systemd/src/basic/time-util.c:509:46: note: directive argument in the range [0, 18446744073709551614] "%s"USEC_FMT".%0*"PRI_USEC"%s", ^~~~ https://mail.gnome.org/archives/networkmanager-list/2017-February/msg00001.html
-
Thomas Haller authored
-
Thomas Haller authored
No change in behavior.
-
- 19 Jan, 2017 1 commit
-
-
Lubomir Rintel authored
It will make it easier to policy the default. (cherry picked from commit 8647be37)
-
- 18 Jan, 2017 1 commit
-
-
Lubomir Rintel authored
It will make it easier to policy the default.
-
- 10 Nov, 2016 1 commit
-
-
Thomas Haller authored
We already use several GCC extenions, like typeof() and __attribute__((cleanup)). They are too convinient to miss and every supported compiler must support these. Currently, gcc and clang does. Maybe other compilers would support that too, but who knows, nobody seems to test that. We also already use stdbool.h (C99) and the imported systemd code is mostly gnu99 too (it's not clear to me, because I don't find it precisely documented. Certainly it makes use of C99 features too). C99/gnu99 has some nice improvements that we no longer should miss out. For example "flexible array members" or "variable declaration in init-part of for loop". It doesn't mean we have to use every obscure (badly supported?) feature, it means we don't have to forgo features that are well supported. C99 is 17 years old, I mean, really... If somebody comes along and ports NM to non-gcc/clang, we can address bugs about unsupported language features as they surface. But let's not restrict us to some hypothetical compiler (or language specification). Also, NetworkManager is not ported on environment beside Linux. We don't have to be so considerate about the required build environment. Gcc is probably the most portable compiler out there. I doubt porting NetworkManager to *BSD fails due to missing gnu99 features. And if that causes issues, we should fix them after they happen in practice.
-
- 14 Sep, 2016 1 commit
-
-
Thomas Haller authored
We want to embed the current commit-id in the ./configure script. That way the generated ./configure file in the source tarball references the commit-id from which the tarball was created. Then, in a second step, a script can check ./configure to find the parent commit. This is for example done by the 'makerepo.sh' script. This is generally useful, and also done by network-manager-applet and libnl3 projects. Move the function to a separate m4 macro to reuse it. It should also be re-used in NetworkManager's VPN plugins.
-
- 06 Jun, 2016 1 commit
-
-
- 03 Jun, 2016 3 commits
-
-
Beniamino Galvani authored
We break the aliasing rules in the code, and thus the flag should always be enabled to prevent wrong optimizations, even without --enable-more-warnings.
-
Beniamino Galvani authored
It contains useful macros for determining compiler support for flags/attributes. We already similar macros in compiler_options.m4, but the plan is to replace them.
-
Dan Williams authored
New with gcc 6.0.
-
- 18 May, 2016 3 commits
-
-
Lubomir Rintel authored
Also, fold duplicate chunks together.
-
Lubomir Rintel authored
We'll use that for more compiler feature-checking macros.
-
Lubomir Rintel authored
Some of the checks include glib headers.
-
- 09 Mar, 2016 1 commit
-
-
Thomas Haller authored
Duplicated const specifiers are allowed by C99 and can easily happen in macros. Also, systemd's interal code will use them. Disable this warning, it doesn't seem useful.
-
- 04 Mar, 2016 1 commit
-
-
Thomas Haller authored
Originally m4/introspection.m4 was copied from gobject-introspection repository. We however modified it in commit f6272144. Reimport the file with latest changes, but still preserving our workaround.
-