Commit Graph

50725 Commits

Author SHA1 Message Date
Christoph Reiter
8d538cadab CI: save meson build logs 2019-03-29 16:16:34 +08:00
Christoph Reiter
79370bcb1e tests: don't overwrite GSETTINGS_SCHEMA_DIR when running under meson
Under autotools the compiled schemas are in the build directory and with
meson they are in the root build dir. Avoid changing the autotools build for
now and add a special GTK_TEST_MESON env var which we can use to differentiate
the two.

See 1253e7bfcb for a similar fix on master.
2019-03-29 16:16:34 +08:00
Christoph Reiter
7d6c558c20 meson: disable some broken immodules for now
To fix the build.
We need to port the source generation logic from gtk4 for this.
2019-03-29 16:16:34 +08:00
Christoph Reiter
2299c7cc9f meson: fix build of immultipress.c with mingw
There is no need to escape the quotes since we are not in a shell here
and things get passed to the compiler as is.
2019-03-29 16:16:34 +08:00
Christoph Reiter
dba85922c5 CI: add meson build jobs for Fedora and MSYS2 2019-03-29 16:16:34 +08:00
Christoph Reiter
a5600b3145 meson: check for and set HAVE_IPRINTDIALOGCALLBACK
It's needed under mingw in the print backend
2019-03-29 16:16:34 +08:00
Christoph Reiter
643d9d892c meson: gdk: add missing pangowin32 dep 2019-03-29 16:16:34 +08:00
Christoph Reiter
e32d672a47 meson: add fribidi dep 2019-03-29 16:16:34 +08:00
Chun-wei Fan
7c8d31b08b meson: Install the icons for the demo programs
Those should be installed as well, and will also eliminate the error
that gtk-update-icon-cache failed during the post install.
2019-03-29 16:16:34 +08:00
Chun-wei Fan
7fb1d800ed meson: Really fix Broadway builds
We must also feed rawinflate.min.js into gen-c-array.py, so that the
windows really show up in the browser when running GTK programs using
broadway.
2019-03-29 16:16:34 +08:00
Chun-wei Fan
c48d03b63b meson: Build libgail-util
This adds libgail-util to the build process.
2019-03-29 16:16:34 +08:00
Chun-wei Fan
57e84df9ec meson: Build the input modules
Build the input modules for GTK+, either as modules or built directly
into GTK.  Also provide a configure option to build the specified
immodules, or all, or the backend immodule(s) or none of the immodules
into GTK.  Note that for Visual Studio all immodules are built into
the GTK DLL by default, like what is done in the Visual Studio projects.

Note that building the backend immodules for Quartz, X11 and Wayland are
currently untested.
2019-03-29 16:16:34 +08:00
Chun-wei Fan
f694c71d08 meson: Fix GDK-Win32 build
We have a new source file that we must build,
gdkwin32langnotification.c.
2019-03-29 16:16:34 +08:00
Chun-wei Fan
b5064501f6 meson: Make post-install script a Python script
This is so that the post install script will work on environments where
*NIX shell scripts are not supported, such as on Windows cmd.exe for
Visual Studio builds.
2019-03-29 16:16:34 +08:00
Chun-wei Fan
ab655cc607 meson: Build the .rc files on Windows
This will ensure that the version info is easily visible from the
GDK/GTK+ DLLs, and ensure that the print dialogs will have a more modern
look and feel.
2019-03-29 16:16:34 +08:00
Chun-wei Fan
9a2a125995 tests/: Declare variables at the top-of-block
This will ensure that the code will build for pre-C99 compilers.
2019-03-29 16:16:34 +08:00
Chun-wei Fan
1330da8000 tests/animated-resizing.c: Include gtk/fallback-c89.c
This is to ensure that compilers that do not have round() in math.h can
still build the code.
2019-03-29 16:16:34 +08:00
Chun-wei Fan
cf33fa698e testsuite/gtk/stylecontext.c: Declare variables at top-of-block
This will ensure the code builds on pre-C99 compilers.
2019-03-29 16:16:34 +08:00
Chun-wei Fan
e4ee849bd2 examples/bp/bloatpad.c: Declare variables at top-of-block
This is to ensure that the code will build on pre-C99 compilers.
2019-03-29 16:16:34 +08:00
Chun-wei Fan
3639a9aeb6 demos/gtk-demo/meson.build: Build gtk3-demo-application
This should also get built as well.
2019-03-29 16:16:34 +08:00
Chun-wei Fan
317ab99d0c meson: Fix Broadway builds
Make sure the source files are in line with GTK+-3.x Broadway backend
sources.
2019-03-29 16:16:33 +08:00
Chun-wei Fan
b220e14c4f meson: Enable GLES Windows builds via libANGLE
Check whether the libepoxy library is built on Windows with support for
GLES.  If so, enable GLES/EGL support on Windows as well.
2019-03-29 16:16:33 +08:00
Chun-wei Fan
c1ad4b58af gdk/meson.build: Force-export gdk_win32_display_manager_get_type()
...on Visual Studio builds, as it seems that the linker is optimizing
that symbol out (hence it is not exported in the DLL).  This is to
ensure that the introspection files for GdkWin32 build.
2019-03-29 16:16:33 +08:00
Chun-wei Fan
3fd44c0542 gdk/meson.build: Fix typo for GdkWin32 Introspection
It is gdk_win32_gir, not gdk_x11_gir...
2019-03-29 16:16:33 +08:00
Chun-wei Fan
7f3427bf39 meson: Only use fallbacks for PangoFT2 and FreeType when needed
PangoFT2 is optional on Windows, so we only really need the fallback if
when it is required.

Along with that, since FreeType does not typically ship with pkg-config
files in its CMake builds, check for the needed headers, .lib and
function and then use the fallback when they could not be found and
PangoFT2 is used.
2019-03-29 16:16:33 +08:00
Chun-wei Fan
8d8b460cc1 meson: Only use cairo fallbacks when needed
On Visual Studio builds, since Cairo builds tend not to generate
pkg-config files for us, look for the headers and .lib's, before
attempting to download the Cairo repo (which is quite large) and
building it.

We can simplify this process when Meson gains the ability to check
for the dependencies in a declarative fashion, but before that, this
is what must be done.
2019-03-29 16:16:33 +08:00
Chun-wei Fan
f4d1144b5f meson.build: Bump version 2019-03-29 16:16:33 +08:00
Nirbheek Chauhan
5404ea0c4a meson: Add wrap files for building with subprojects 2019-03-29 16:16:33 +08:00
Nirbheek Chauhan
81f13782de meson: Cleanup tests and gdk testsuite 2019-03-29 16:16:33 +08:00
Nirbheek Chauhan
a81dce1589 meson: Fix introspection generation on Linux 2019-03-29 16:16:33 +08:00
Nirbheek Chauhan
8ff1641b21 meson: Don't target gnu89 as the c_std
Meson propagates c_std to all subprojects, including those that
require gnu99 or c11, etc.

https://github.com/mesonbuild/meson/issues/1889
2019-03-29 16:16:33 +08:00
Nirbheek Chauhan
ceeaddb908 meson: Disable discarded-qualifiers warning
This branch is not going to receive the reworks required fix warnings
about discarding of const qualifiers, so disable that warning instead.
2019-03-29 16:16:33 +08:00
Nirbheek Chauhan
313dfc348c gtk: Fix compiler warning about deprecated declaration 2019-03-29 16:16:33 +08:00
Nirbheek Chauhan
577f5ff920 meson: Add fallback subprojects for more dependencies 2019-03-29 16:16:33 +08:00
Philippe Normand
a86247d8c4 meson: Set the compatibility version correctly on macOS
And bump to Meson 0.48 as this feature requires it.
2019-03-29 16:16:33 +08:00
Philippe Normand
f94207da46 meson: Disable --export-dynamic for clang
It doesn't seem to be supported, at least when compiling on macOS.
2019-03-29 16:16:33 +08:00
Philippe Normand
4efd89dd3e meson: Build fixes for macOS 2019-03-29 16:16:33 +08:00
Philippe Normand
e68275625c gtk: Fix paste/clipboard usage on macOS
In Mojave the build fails because declareTypes is nil. Instead use the
clearContents method, although I'm not really sure this is the same.
2019-03-29 16:16:33 +08:00
Philippe Normand
9ae6f49bbf meson: Disable X11 support on Darwin
The Quartz backend should fulfill most requirements anyway.
2019-03-29 16:16:33 +08:00
Nirbheek Chauhan
77ba194d34 meson_options.txt: Disable introspection by default
It's broken. Fix later.
2019-03-29 16:16:33 +08:00
Nirbheek Chauhan
d3d76ed42e gtk-launch: Fix compilation with MSVC 2019-03-29 16:16:33 +08:00
Nirbheek Chauhan
1573af8223 meson: Sync build files with master and update to 3.24 2019-03-29 16:16:33 +08:00
Chun-wei Fan
9cbdfd97e2 tests: Include system headers appropriately
Don't include unistd.h on Windows, and include the appropriate headers on
Windows as necessary.

https://bugzilla.gnome.org/show_bug.cgi?id=773299
2019-03-29 16:16:33 +08:00
Nirbheek Chauhan
a2c22bda2c Import meson build files from an 3.22
Specifically, from 6dd6660c68
2019-03-29 16:16:33 +08:00
Matthias Clasen
1bb106012a Merge branch 'fix-gi-build-with-lto' into 'gtk-3-24'
Fix the introspection build with "-Wl,--as-needed -flto -O2". Fixes #1692

See merge request GNOME/gtk!665
2019-03-27 05:56:15 +00:00
Benjamin Otte
bbb70857be gtk: Remove all gtk_widget_set_redraw_on_allocate() calls
They're either wrong (when using FALSE because the widgets don't account
for changes to the CSS) or unnecessary (when using TRUE because it's the
default).

Fixes !1777
2019-03-27 00:02:34 +01:00
Matthias Clasen
f35ce26336 color editor: Don't warn if editing is cancelled
Thats a valid way to end color picking.
2019-03-25 16:52:40 -04:00
Jakub Steiner
fc3317138e Adwaita: tone down app icon shadows
- based on Tobias' and Allan's feedback, the app icon dropshadow
  were too prominent.
2019-03-25 17:59:24 +01:00
Christoph Reiter
55e73682cc Fix the introspection build with "-Wl,--as-needed -flto -O2". Fixes #1692
The above flags in combination with "-fvisibility=hidden" break the
g-i build because it results in the g-i generated dumper executable not
linking against the libraries because they are detected as unused and
thrown out.

Fix by only using -fvisibility=hidden for the library and not g-i.
2019-03-25 09:54:54 +01:00
Benjamin Otte
df5d18a5b1 Merge branch 'inspector-theme-find' into 'gtk-3-24'
Inspector: Find themes the same way GtkCSSProvider does

See merge request GNOME/gtk!663
2019-03-22 23:44:14 +00:00