summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* clutter: Install cally headers again when using autotoolsJonas Ådahl2018-11-071-0/+3
| | | | The install step was accidentally removed.
* cogl: Expose more headers for introspectionGeorges Basile Stavracas Neto2018-11-072-12/+12
| | | | | | This will allow CoglFramebuffer and its implementations to be exposed to GJS and other language bindings. This is a necessary part of the bigger work to make framebuffer management explicit.
* cogl/framebuffer: Mark CoglOffscreen as a CoglFramebuffer implementationGeorges Basile Stavracas Neto2018-11-071-1/+2
| | | | | | | | | CoglOffscreen is effectively a CoglFramebuffer, but it isn't being marked as such by the GType machinery. This makes it impossible for introspection to correctly set this class up. Fix that by adding a COGL_GTYPE_IMPLEMENT_INTERFACE() code into the declaration of CoglOffscreen. This does not have any functional changes though.
* Add .gitlab-ci.yml for build testingJonas Ådahl2018-11-072-0/+22
| | | | | | | | | | | | | | This adds compilation testing using meson on the gitlab instance. It uses a prebuild image built, described in .gitlab-ci/Dockerfile, based on Fedora 29. The image is build and published by running: cd .gitlab-ci/ docker build -t registry.gitlab.gnome.org/gnome/mutter/master:v1 . docker push registry.gitlab.gnome.org/gnome/mutter/master:v1 Resolves: https://gitlab.gnome.org/GNOME/mutter/merge_requests/132
* build: Make libmutter-cogl-path a dependency for test-journalGeorges Basile Stavracas Neto2018-11-061-0/+1
| | | | | | Otherwise, it might trigger the actual race condition that Continuous is running into, and access the generated enum headers before they're created.
* build: Prefer dependencies instead of link_withGeorges Basile Stavracas Neto2018-11-068-19/+33
| | | | | | | | | | Meson uses the 'dependencies' field to determine and parallelize build steps, but that isn't entirely true with 'link_with'; this might cause a race condition when generating header files while trying to build them. Fix that by only using 'dependencies' instead of 'link_with'.
* gudev: Require 232Georges Basile Stavracas Neto2018-11-061-1/+2
| | | | | | | | | | | | gudev and libudev might have different versions, and since 361bf847 we require gudev >= 232 to be able to use g_autoptr with gudev types. Since the previous commit, however, the meson build was using the same version for libudev and gudev. Fix that by requiring different versions for gudev (>= 232) and libudev (>= 228).
* build: Make minimum udev version as 228Georges Basile Stavracas Neto2018-11-061-1/+1
| | | | | | | Continuous' latest udev version is 228, and that is not going to change too soon. Since we do not depend on udev 232 specific features or bugfixes, just lower the minimum version and make Continouos happy.
* Add meson build supportJonas Ådahl2018-11-0639-0/+3876
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds meson build support to mutter. It takes a step away from the three separate code bases with three different autotools setups into a single meson build system. There are still places that can be unified better, for example by removing various "config.h" style files from cogl and clutter, centralizing debug C flags and other configurable macros, and similar artifacts that are there only because they were once separate code bases. There are some differences between the autotools setup and the new meson. Here are a few: The meson setup doesn't generate wrapper scripts for various cogl and clutter test cases. What these tests did was more or less generate a tiny script that called an executable with a test name as the argument. To run particular tests, just run the test executable with the name of the test as the argument. The meson setup doesn't install test files anymore. The autotools test suite was designed towards working with installed tests, but it didn't really still, and now with meson, it doesn't install anything at all, but instead makes sure that everything runs with the uninstalled input files, binaries and libraries when running the test suite. Installable tests may come later. Tests from cogl, clutter and mutter are run on 'meson test'. In autotools, only cogl and clutter tests were run on 'make check'.
* wayland/eglstream: Don't build skeleton when disabledJonas Ådahl2018-11-065-10/+31
| | | | | Instead of calling no-op functions when EGLStream support isn't enabled, make it clear at the call site that EGLStream support is optional.
* wayland/touch: Only handle touch when using the native backendJonas Ådahl2018-11-061-4/+34
| | | | | | The touch handling code uses evdev API, thus will not work on other backends. Thus, put touch handling code behind runtime backend checks and only include the code when native backend support is enabled.
* wayland/tablet: Fix warnings when native backend is disabledJonas Ådahl2018-11-062-1/+3
|
* Fix compiler errors when Wayland support is disabledJonas Ådahl2018-11-061-0/+1
|
* Make it possible to build without GLX supportJonas Ådahl2018-11-063-0/+12
|
* Make it possible to build without EGL supportJonas Ådahl2018-11-064-0/+14
| | | | | | This will avoid building anything related to EGL. For meson, this will mean that both the native backend an the Wayland support must also be disabled.
* autotools: Make install directories paths more consistentJonas Ådahl2018-11-0614-26/+31
| | | | | | | | Install include files in $prefix/include/mutter-$apiversion/[clutter,cogl,...,meta]/, and datafiles in /usr/share/mutter-$apiversion/.... We still would conflict e.g. given that our gettext name is "mutter", and how keybindings are installed, but it's a step in the right direction.
* tests: Move out test client path init into helper functionJonas Ådahl2018-11-061-11/+28
| | | | Makes the common test init function simpler to read.
* tests/headless-start-test: Use common test init functionJonas Ådahl2018-11-061-3/+1
| | | | | Outsource the initialization of GTest to the same function used by the other tests.
* tests: Call g_test_init() in test-runner tooJonas Ådahl2018-11-064-54/+10
| | | | | This makes the log handler that breaks test redundant, as GTest already does this.
* Fix some of introspection comment issuesJonas Ådahl2018-11-062-3/+3
| | | | Missing colon and incorrect type reference in descriptions.
* tests: Add env var to override plugin used for testsJonas Ådahl2018-11-061-1/+7
| | | | This is so that the test suite can point at the non-installed version.
* plugin: Rename the .so file from plugin.so to libplugin.soJonas Ådahl2018-11-068-10/+21
| | | | | | | This is the filename convention you get when you define a shared module in meson, and since there is no particular reason to not include the "lib" prefix, lets make it easier to port it over. While at it, de-duplicate the retrieval of the plugin name.
* Move meta-enum-type.*.in into meta/Jonas Ådahl2018-11-063-6/+6
| | | | | | It'll be installed in the meta/ directory, so put the template files in the corresponding directory in the tarball. This will also simplify the port to meson.
* Fix warnings when building without verbose modeJonas Ådahl2018-11-063-0/+12
|
* Pass -D_GNU_SOURCE instead of defining it in sourceJonas Ådahl2018-11-0610-19/+2
|
* x11: Require XInput 2.3 at build timeJonas Ådahl2018-11-066-28/+1
| | | | The needed libXi version was released 5 years ago, so should be fine.
* x11: Require xrandr 1.5 at build timeJonas Ådahl2018-11-065-37/+2
| | | | | | While leaving the runtime checks in place, requiring xrandr 1.5 at build time allows us to remove some seemingly unnecessary conditional inclusion of functionality.
* Clean up include macros messJonas Ådahl2018-11-06274-1367/+1479
| | | | | | The order and way include macros were structured was chaotic, with no real common thread between files. Try to tidy up the mess with some common scheme, to make things look less messy.
* tests: Make testboxes an actual testJonas Ådahl2018-11-065-69/+76
| | | | | | | | testboxes was a binary that did unit testing, but it wasn't integrated to the test system, so in effect, it was never run. Instead integrate it into the other mutter unit tests. This includes changing a few of meta_warning()s into g_warning()s so that the GTest framework can handle them.
* Always generate meta-default-modes.hJonas Ådahl2018-11-066-65/+26
| | | | | This adds a hard requirement on having cvt installed, which in the past was soft, where the generated file was added to the repository.
* clutter/tests/micro-bench: Don't define unused macroJonas Ådahl2018-11-061-1/+0
| | | | TESTS_DATA_DIR was not used by any of the tests, so no use defining it.
* clutter/tests: Unconditionally include tests using gdk-pixbufJonas Ådahl2018-11-062-31/+6
| | | | | We already have gdk-pixbuf as a dependency, so there is no reason to make it conditional here.
* clutter: Unconditionalize a few X11 extensionsJonas Ådahl2018-11-066-188/+63
| | | | We now require xcomposite, xkb, xi 2.2, at least at compile time.
* clutter/configure.ac: Remove left-over gbm and drm dependenciesJonas Ådahl2018-11-061-2/+1
| | | | The gbm and drm facing code has since long been moved into mutter.
* clutter/configure.ac: Remove unused gdk dependencyJonas Ådahl2018-11-061-2/+0
|
* clutter: Assume compiler supports visibility flag and attributesJonas Ådahl2018-11-063-24/+2
| | | | | Unconditionally pass -fvisibility=hidden to compiler and define _CLUTTER_EXTERN to __attribute__((visibility("default"))) extern.
* clutter: Fix a couple of guard macrosJonas Ådahl2018-11-062-2/+2
| | | | Use #ifdef instead of #if in a couple of places.
* clutter: Remove examplesJonas Ådahl2018-11-0622-4273/+1
| | | | | Running clutter apps standalone using mutters fork is not something worth supporting.
* clutter: Remove useless OS_LINUX macroJonas Ådahl2018-11-062-7/+4
| | | | It was unconditionally set to 1.
* clutter: Require full relative path when includingJonas Ådahl2018-11-062-16/+1
|
* clutter: Stop defining some unused macrosJonas Ådahl2018-11-061-4/+0
|
* clutter: Remove clutter specific versionJonas Ådahl2018-11-06148-2433/+1706
| | | | Use the mutter version when something is still needed.
* cogl: Pass unit-tests file to run-tests.shJonas Ådahl2018-11-063-4/+12
| | | | | | There are different unit-tests file generated containing lists of tests the test-runner.sh should run. Running run-tests.sh read the unit-tests in the current directory, which is inconvenient to do when using meson.
* cogl: Fix HAVE_COGL_GL guardJonas Ådahl2018-11-061-1/+1
| | | | Macro was only defined when defined to 1.
* cogl: Make cogl-config.h include check explicitJonas Ådahl2018-11-063-3/+5
| | | | | Don't rely on some combination of macros, but an explicit definition to check whether cogl-config.h was included.
* cogl: Require relative full paths when includingJonas Ådahl2018-11-0662-157/+153
| | | | | I.e. including a OpenGL driver file, the path "driver/gl/..." must be specified when including.
* cogl: Remove left-over WebGL pathsJonas Ådahl2018-11-065-21/+0
|
* clutter: Unconditionally include clutter-build-config.hJonas Ådahl2018-11-06120-241/+2
|
* cogl: Unconditionally include cogl-config.hJonas Ådahl2018-11-06109-219/+0
|
* cogl: Unconditionally depend on cairoJonas Ådahl2018-11-062-27/+5
|