Commit Graph

20 Commits

Author SHA1 Message Date
Aleksander Morgado
4bd8845f50 build: import used AX_ macros from autoconf-archive
This allows us to build from git without build-depending on
autoconf-archive, which is not always available as a package.
2021-07-27 00:10:02 +02:00
Aleksander Morgado
bdd340455a build: update introspection.m4
In sync with gobject-introspection 1.68.0
2021-07-27 00:10:02 +02:00
Aleksander Morgado
935e73c8df build: fix build with single plugins
We need to quote arguments with [] so that lists are not expanded as
different arguments.

Fixes 65560dd885
2020-11-22 14:34:07 +01:00
Aleksander Morgado
65560dd885 build: qcom-soc plugin by default disabled
It will not be automatically enabled by the implicit
--enable-all-plugins; instead, it must be explicitly enabled with
--enable-plugin-qcom-soc.

This plugin only makes sense under very specific SoC builds, so there
is no point in always building it by default. It should be explicitly
requested only in those SoC builds that are really going to make use
of it (e.g. postmarketOS).
2020-11-20 09:24:51 +00:00
Aleksander Morgado
f874b0f6b7 build: update builtin gtk-doc support
From gtkdocize (gtk-doc) 1.33.0.
2020-11-08 10:09:32 +01:00
Aleksander Morgado
1c078531a0 build: use AX_IS_RELEASE() and AX_COMPILER_FLAGS()
The autoconf macros AX_COMPILER_FLAGS_{CFLAGS|GIR|LDFLAGS} test
for compiler and linker support of various flags, and add the flags to
the generated output.

If the command-line option '--enable-compile-warnings' is specified to
'configure', a number of additional warning options is also added to the
output. This is the default.

This update requires the presence of the GNU autoconf-archive in the
system.
2020-01-30 11:59:14 +01:00
Aleksander Morgado
09080073ff build: setup plugin selection logic 2019-11-27 10:11:43 +00:00
Ben Chan
9dac5ece77 build: make compiler warning options compatible with clang
This patch updates m4/compiler-warnings.m4 as follows to make it more
compatible with clang:

* clang doesn't support -Wunused-but-set-variable, which can be replaced
  with -Wunused-variable as the latter covers unused variables with or
  without an assigned value and is supported by gcc and clang.

* -Wno-unused-function is added to let clang ignore unused functions that
  are auto-generated.
2019-04-05 08:02:14 +00:00
Dan Williams
88fac7f14a build: fix -Wunused-but-set-variable support and handle clang better
By default the build used -Wno-unused-but-set-variable but that's
clearly not what we want. Fix those problems.

When using clang, the compiler doesn't error on unknown compile
options, so let's add -Werror to the checking too.

CC='clang'
configure:3408: checking for gcc
configure:3435: result: clang
...
configure:17644: checking whether gcc understands -Wno-unused-but-set-variable
configure:17657: clang -c -Wall -std=gnu89 -g -O2 -Wmissing-declarations -Wmissing-prototypes -Wdeclaration-after-statement -Wstrict-prototypes -Wno-unused-parameter -Wno-sign-compare -Wno-deprecated-declarations -Wno-unused-but-set-variable  conftest.c >&5
warning: unknown warning option '-Wno-unused-but-set-variable'; did you mean '-Wno-unused-const-variable'? [-Wunknown-warning-option]
1 warning generated.
configure:17657: $? = 0
configure:17666: result: yes

Reported-by: Torsten Hilbrich <torsten.hilbrich@secunet.com>
2019-04-02 10:48:40 -05:00
Iain Lane
5072db3418 m4/compiler_warnings.m4: Let -Werror be disabled
It's annoying for distributors to build with -Werror, since it means
that compiler upgrades can break the build. Let's let them disable it,
but keep it enabled by default.
2018-04-24 18:08:29 +02:00
Aleksander Morgado
87341acaa8 build: import gtk-doc support
Remove the need to run `gtkdocize' when building from git; this should
be an operation done by the maintainer when modernizing the gtk-doc
setup (think of e.g. gettextize), no need to do it unconditionally.

This makes it easier for platforms without gtk-doc to build from git.

When trying to build with documentation enabled and gtk-doc isn't
found, we get some nice warnings and errors in the configure report:

    checking for gtk-doc... no
    configure: WARNING:
      You will not be able to create source packages with 'make dist'
      because gtk-doc >= 1.0 is not found.
    checking for gtkdoc-check... no
    checking for gtkdoc-check... no
    checking for gtkdoc-rebase... no
    checking for gtkdoc-mkpdf... no
    checking whether to build gtk-doc documentation... yes
    configure: error:
      You must have gtk-doc >= 1.0 installed to build documentation for
      ModemManager. Please install gtk-doc or disable building the
      documentation by adding '--disable-gtk-doc' to './configure'.

Files generated with gtkdocize (gtk-doc) 1.25.1.
2017-09-07 13:45:57 +02:00
Lubomir Rintel
a7942177c9 build: don't disable the aliasing checks
We now don't break the strict aliasing rules.

Also, having a compiler flag that disables a warning among the flags that are
meant to add extra sanity checking is not correct either:
--enable-extra-warnings=no would generate a bad aliasin warning while
the --enable-extra-warnings=yes would not.
2016-07-21 09:49:34 +02:00
Jakub Sitnicki
ffe2106d4e build: include ax_code_coverage.m4 serial 5
So that we don't require a fairly recent version of
autoconf-archive (v2014.10.15 or newer) to build.
2015-01-11 19:32:38 +01:00
Aleksander Morgado
d42011d6bf build: include vapigen.m4 and introspection.m4
So that we don't require vala or g-i for building even when not wanting them.
2013-08-15 19:20:59 +02:00
Aleksander Morgado
e63e062a76 build: use -Wformat-security 2013-05-17 23:16:01 +02:00
Aleksander Morgado
d74336e96d build: warn about unused but set variables 2012-08-24 11:37:38 +02:00
Aleksander Morgado
917a13217a build: avoid using -Wfloat-equal compilation option
In order to compile code generated by gdbus-codegen.
2012-03-15 14:14:18 +01:00
Aleksander Morgado
bc8010f792 build: avoid using -Wshadow compilation option
In order to compile code generated by gdbus-codegen.
2012-03-15 14:14:18 +01:00
Aleksander Morgado
ff31122eba build: do not warn about using deprecated methods
GValueArray is deprecated since GLib 2.31.14, but we need to use it for
dbus-glib based code.

We should re-enable deprecation warnings once we switch to GDBus.
2012-02-07 19:45:30 +01:00
Michael Biebl
22e687833c build: unify compiler warnings 2010-01-27 15:48:55 -08:00