Emmanuele Bassi
d09ccaaf35
build: Define G_LOG_USE_STRUCTURED in GDK
...
We want to use the new structured logging support in GLib.
2017-05-03 15:10:58 +01:00
Emmanuele Bassi
9e8ba70d69
build: Add common flags to GDK backends
...
The common compiler and linker flags control, among other things, the
default visibility of symbols; without them, we leak symbols that ought
to be private.
2017-05-03 15:10:58 +01:00
Emmanuele Bassi
17518ef89b
build: Improve consistency of the "coding" style
...
We're mixing a lot of styles in the Meson build files. This is an
attempt at making everything slightly more consistent in terms of
whitespace and indentation.
2017-05-03 15:10:57 +01:00
Emmanuele Bassi
561f41d112
build: Clean up Wayland protocol code generation
...
We can build the name of the input and output files for the Wayland
protocols we use from the protocol name, stability, and version. This is
similar to how the autotools build does it, except much more clear and
without shelling out twice to sed just to resolve the Makefile rule.
2017-05-03 15:10:57 +01:00
Emmanuele Bassi
d35d82fb35
build: Rename GSK resource generator script
...
Maintain the naming convention, since we have similar scripts for GDK
and GTK already.
2017-05-03 15:10:57 +01:00
Emmanuele Bassi
5e2eaa5dbc
build: Add introspection generation
...
Currently, no platform-specific introspection is generated; there will
be a follow-up commit.
2017-05-03 15:10:56 +01:00
Emmanuele Bassi
e18d9a85ca
build: Use the common linker flags in GDK and GSK
...
Instead of hard-coding `-Bsymbolic`.
2017-05-03 15:10:56 +01:00
Emmanuele Bassi
68039b610b
build: Add compiler warnings and errors
...
We don't want to build buggy code.
2017-05-03 15:10:56 +01:00
Emmanuele Bassi
9105227b56
build: Do not mix private and public GDK headers
...
The type generation script inside gtk/ will use the `gdk_headers`
variable, and that must not contain private headers.
2017-05-03 15:10:56 +01:00
Tim-Philipp Müller
e1dc4f7ae1
meson: gdk: fix static library names
...
Fix double lib prefix in filenames (liblibgdk-xyz.a)
2017-05-03 15:10:56 +01:00
Tim-Philipp Müller
e850973956
meson: build input modules
...
We have to work around some ordering problems here. We still
manage to keep most of the guts in modules/input/meson.build,
so it's not too ugly overall.
(The autotools build solves this with a 'make -C ../../input/modules'
inside gtk/Makefile, but that's not something we can or want to do.)
2017-05-03 15:10:56 +01:00
Tim-Philipp Müller
1c14e93e69
meson: check for xinerama
2017-05-03 15:10:56 +01:00
Tim-Philipp Müller
2f3c975058
meson: remove duplicate libm variable
...
Only need one of libm and mlib
2017-05-03 15:10:55 +01:00
Tim-Philipp Müller
f67a9d58db
meson: make sure gsk/gdk generated headers exist for libgtk_dep users
...
Add back dependencies on libgdk_dep and libsk_dep which are declared
dependencies. We removed this before because these declarations had
link_with: lines that dragged in the static libgdk.a and libgsk.a libs
which are linked into libgtk-4.so anyway and thus shouldn't be used
when linking internal exes/tools against libgtk-4. Remove the static
libs from the declared dependencies and have libgtk link those in
explicitly, so that the declared deps now just provide all the built
dependencies and include dirs and such for declared libgtk_dep users
such as the internal exes/tools, which want all the generated gsk/gdk/gtk
headers to exist before attempting to compile anything against the
gtk+ headers.
2017-05-03 15:10:54 +01:00
Tim-Philipp Müller
07ffb19c42
meson: gdk, gsk: fix install path of generated files
2017-05-03 15:10:54 +01:00
Tim-Philipp Müller
c7d3fe5e26
meson: gdk: add quartz backend skeleton
...
Won't even build yet, just put basic bits in place.
2017-05-03 15:10:54 +01:00
Tim-Philipp Müller
442185388b
meson: gdk: win32: add skeleton bits for win32 backend
...
Won't even build, configure bits still missing.
2017-05-03 15:10:54 +01:00
Tim-Philipp Müller
cbb6a62496
meson: gdk: wayland: generate private wayland headers first
...
gdkprivate-wayland.h includes generated wayland client protocol
headers and is included from gdkdisplaymanager.c, so we need to
generate those client protocol headers first also when building
main gdk itself.
2017-05-03 15:10:54 +01:00
Tim-Philipp Müller
152a25d099
meson: gdk: add Mir backend bits
...
Completely untested, might not even build.
2017-05-03 15:10:54 +01:00
Tim-Philipp Müller
e001d95538
meson: gdk: build individual backends as static libs
...
This is how it's done in the autotools build. Also avoids problems
with multiple source files having the same name (gdkeventsource.c).
Also move broadway backend code into broadway subdir.
2017-05-03 15:10:54 +01:00
Tim-Philipp Müller
d4881df0d8
meson: gdk: wayland: move wayland bits into wayland subdir
2017-05-03 15:10:54 +01:00
Tim-Philipp Müller
4b969b1b40
meson: gdk: wayland: use array for protocol file generation
2017-05-03 15:10:54 +01:00
Tim-Philipp Müller
22d7b825fb
meson: gdk: move x11 bits into x11 subdirectory
...
Also install headers.
2017-05-03 15:10:54 +01:00
Tim-Philipp Müller
b947e88fbf
meson: gdk: update and sync with Makefiles
...
Also create gdk.gresource.xml at build-time.
2017-05-03 15:10:53 +01:00
Tim-Philipp Müller
95979f4d2f
meson: add vulkan bits
2017-05-03 15:10:53 +01:00
Tim-Philipp Müller
37d5938561
meson: update list of sources for changes in git master
2017-05-03 15:10:53 +01:00
Timm Bäder
4fcca9945f
meson: update build files
2017-05-03 15:10:52 +01:00
Timm Bäder
409ed21594
meson: Sort input files by name
2017-05-03 15:10:52 +01:00
Timm Bäder
092f6d5c43
meson: Install libgtk and libgdk
2017-05-03 15:10:52 +01:00
Tim-Philipp Müller
1125e4d77c
meson: figure out wayland-protocols pkgdatadir via pkg-config
...
Instead of hardcoding the location.
2017-05-03 15:10:51 +01:00
Timm Bäder
abe80bb7c4
meson: Use -Bsymbolic
2017-05-03 15:10:51 +01:00
Timm Bäder
5116b2b612
meson: Require gtkmarshal_h before we build gtk
2017-05-03 15:10:51 +01:00
Timm Bäder
2144b776b2
meson: Generate demos.h for gtk3-demo
2017-05-03 15:10:51 +01:00
Timm Bäder
294ebd70b3
build: Generate wayland protocol files
2017-05-03 15:10:51 +01:00
Timm Bäder
41d019851c
wayland: Include generated sources from builddir, not srcdir
2017-05-03 15:10:51 +01:00
Timm Bäder
3f62b935e5
meson: Use xrandr
2017-05-03 15:10:51 +01:00
Timm Bäder
df965304d4
meson: make gtk buildable
...
x11 only
2017-05-03 15:10:51 +01:00
Timm Bäder
082cf3553d
meson: Build gtk marshallers
...
And fix libgtk_dep/libgdk_dep to link_with the shared lib
2017-05-03 15:10:50 +01:00
Timm Bäder
7fff2901aa
meson: Add options for x/wayland/broadway backends
2017-05-03 15:10:50 +01:00
Timm Bäder
5475768d32
Meson build v2
2017-05-03 15:10:50 +01:00
Emmanuele Bassi
7a90e06a3c
Add Meson build files
...
Original work by: Jussi Pakkanen <jpakkane@gmail.com>
https://bugzilla.gnome.org/show_bug.cgi?id=769881
2017-05-03 15:10:50 +01:00
Emmanuele Bassi
71ad17cae1
Remove gdkkeysyms-compat.h
...
The compatibility header was needed after GTK+ 3.0 renamed the key
symbols from `GDK_*` to `GDK_KEY_*` to avoid collisions.
2017-05-03 14:54:37 +01:00
Timm Bäder
5c79d65717
fallback-c89: Include config.h
...
It holds all the HAVE_<func> definitions.
2017-05-03 14:47:14 +01:00
Emmanuele Bassi
98b1075764
gdk: Remove GdkX11DisplayManager from the build
...
We don't instantiate it, and we don't use it any more.
2017-05-03 14:15:57 +01:00
Matthias Clasen
caacab13e9
Remove the gdk backend API too
...
The GTK+ level API for this is already gone.
2017-05-02 16:17:33 -04:00
Emmanuele Bassi
2a4f07ed9f
wayland: Annotate the log_handler function
...
The log_handler() internal function is a candidate for the GCC format
attribute for printf-like functions.
2017-04-28 23:12:26 +01:00
Emmanuele Bassi
739588cc3c
wayland: Add declaration of private get_type() function
2017-04-28 23:03:14 +01:00
Emmanuele Bassi
278e54b88d
gdk: Make more private functions static
...
These symbols are not exported and are local to their compilation unit.
2017-04-28 23:03:10 +01:00
Emmanuele Bassi
7619c9c739
wayland: Mark private function as static
2017-04-28 22:47:29 +01:00
Emmanuele Bassi
82800fae52
wayland: Mark private function as static
...
The selection_lookup_offer_by_atom() function is private to the file and
not used elsewhere.
2017-04-28 22:21:19 +01:00