summaryrefslogtreecommitdiff
path: root/meson.build
AgeCommit message (Collapse)AuthorFilesLines
2018-09-06meson: Fix building with -Ddga=falseLyude Paul1-0/+1
We forget to assign a value to xf86dgaproto_dep if -Ddga=false, which causes the meson build to fail: meson.build:448:0: ERROR: Unknown variable "xf86dgaproto_dep". A full log can be found at /home/lyudess/build/xserver/meson-logs/meson-log.txt FAILED: build.ninja So, just set it to an empty dependency to fix that. Signed-off-by: Lyude Paul <lyude@redhat.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-08-28meson: Add an option to build XSELINUX.Eric Anholt1-3/+17
Dependencies are ported from the automake build. v2: Make it a tristate defaulting to 'auto'. Use pkg-config for libaudit. Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-08-09meson: Add detection of libsystemd-daemon.Eric Anholt1-0/+7
This enables Xtrans's systemd socket activation. Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-08-09meson: Make xf86vidmodeproto mandatory.Eric Anholt1-2/+1
This is silly to have optional based on detection of the protocol headers, particularly now that we have a single protocol header repo to install. Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Eric Anholt <eric@anholt.net>
2018-07-02meson: use absolute paths in manpage substitutionsJon Turney1-3/+3
paths returned by get_option('foodir') are potentially relative to prefix Noticed when comparing manpages generated by a meson build with those generated by an autotools build Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-05-14meson: don't put literal 'PACKAGE_STRING' and 'XORG_MAN_PAGE' in man pagesJon Turney1-2/+2
Instead, substitute the same values as autotools does Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk>
2018-05-14Post-1.20 version bumpAdam Jackson1-1/+1
Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-05-10xserver 1.20xorg-server-1.20.0Adam Jackson1-1/+1
Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-05-09meson: Fix module_dir configuration (v2)Aaron Plattner1-6/+3
meson.build has code to set the module_dir variable to ${libdir}/xorg/modules if the module_dir option string is empty. However, this has several problems: 1. The variable is only used for an unused @moduledir@ substitution in the man page. The rule for xorg-server.pc uses option('module_dir') directly instead. 2. The 'module_dir' option has a default value of 'xorg/modules' so the above rule doesn't do anything by default. 3. The xorg-server.pc rule uses ${exec_prefix}/option('module_dir'), so the effect of #2 is that the default moduledir is different between autoconf and meson. E.g. if ${prefix} is /X, then you get autoconf: moduledir=/X/lib/xorg/modules meson: moduledir=/X/xorg/modules Fix this by using the module_dir variable when generating xorg-server.pc, and by using join_paths() to assign module_dir unconditionally. v2: Keep the 'xorg/modules' default path, but use join_paths() unconditionally (Thierry Reding) Signed-off-by: Aaron Plattner <aplattner@nvidia.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2018-04-30meson: Bump version number here tooAdam Jackson1-1/+1
Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-04-24xwayland: Add glamor egl_backend for EGLStreamsLyude Paul1-0/+15
This adds initial support for displaying Xwayland applications through the use of EGLStreams and nvidia's custom wayland protocol by adding another egl_backend driver. This also adds some additional egl_backend hooks that are required to make things work properly. EGLStreams work a lot differently then the traditional way of handling buffers with wayland. Unfortunately, there are also a LOT of various pitfalls baked into it's design that need to be explained. This has a very large and unfortunate implication: direct rendering is, for the time being at least, impossible to do through EGLStreams. The main reason being that the EGLStream spec mandates that we lose the entire color buffer contents with each eglSwapBuffers(), which goes against X's requirement of not losing data with pixmaps. no way to use an allocated EGLSurface as the storage for glamor rendering like we do with GBM, we have to rely on blitting each pixmap to it's respective EGLSurface producer each frame. In order to pull this off, we add two different additional egl_backend hooks that GBM opts out of implementing: - egl_backend.allow_commits for holding off displaying any EGLStream backed pixmaps until the point where it's stream is completely initialized and ready for use - egl_backend.post_damage for blitting the content of the EGLStream surface producer before Xwayland actually damages and commits the wl_surface to the screen. The other big pitfall here is that using nvidia's wayland-eglstreams helper library is also not possible for the most part. All of it's API for creating and destroying streams rely on being able to perform a roundtrip in order to bring each stream to completion since the wayland compositor must perform it's job of connecting a consumer to each EGLstream. Because Xwayland has to potentially handle both responding to the wayland compositor and it's own X clients, the situation of the wayland compositor being one of our X clients must be considered. If we perform a roundtrip with the Wayland compositor, it's possible that the wayland compositor might currently be connected to us as an X client and thus hang while both Xwayland and the wayland compositor await responses from eachother. To avoid this, we work directly with the wayland protocol and use wl_display_sync() events along with release() events to set up and destroy EGLStreams asynchronously alongside handling X clients. Additionally, since setting up EGLStreams is not an atomic operation we have to take into consideration the fact that an EGLStream can potentially be created in response to a window resize, then immediately deleted due to another pending window resize in the same X client's pending reqests before Xwayland hits the part of it's event loop where we read from the wayland compositor. To make this even more painful, we also have to take into consideration that since EGLStreams are not atomic that it's possible we could delete wayland resources for an EGLStream before the compositor even finishes using them and thus run into errors. So, we use quite a bit of tracking logic to keep EGLStream objects alive until we know the compositor isn't using them (even if this means the stream outlives the pixmap it backed). While the default backend for glamor remains GBM, this patch exists for users who have had to deal with the reprecussion of their GPU manufacturers ignoring the advice of upstream and the standardization of GBM across most major GPU manufacturers. It is not intended to be a final solution to the GBM debate, but merely a baindaid so our users don't have to suffer from the consequences of companies avoiding working upstream. New drivers are strongly encouraged not to use this as a backend, and use GBM like everyone else. We even spit this out as an error from Xwayland when using the eglstream backend. Signed-off-by: Lyude Paul <lyude@redhat.com> Acked-by: Daniel Stone <daniels@collabora.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-04-19meson: Ensure we always build Xext/hashtable.c for glxLyude Paul1-0/+9
Seems that while glxvnd relies on some of the hashtable functions in Xext, we only build hashtable support for Xext if we're also building the res extension. This leads to some errors if you try to build glx without res enabled: glx/liblibglxvnd.a(vndcmds.c.o): In function `LookupVendorPrivDispatch': /home/lyudess/Projects/xserver/glx/vndcmds.c:65: undefined reference to `ht_find' /home/lyudess/Projects/xserver/glx/vndcmds.c:67: undefined reference to `ht_add' glx/liblibglxvnd.a(vndcmds.c.o): In function `GlxDispatchInit': /home/lyudess/Projects/xserver/glx/vndcmds.c:405: undefined reference to `ht_generic_compare' /home/lyudess/Projects/xserver/glx/vndcmds.c:405: undefined reference to `ht_generic_hash' /home/lyudess/Projects/xserver/glx/vndcmds.c:405: undefined reference to `ht_create' glx/liblibglxvnd.a(vndcmds.c.o): In function `GlxDispatchReset': /home/lyudess/Projects/xserver/glx/vndcmds.c:468: undefined reference to `ht_destroy' collect2: error: ld returned 1 exit status ninja: build stopped: subcommand failed. So, make sure that hashtable.c gets both for both glx and res Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Lyude Paul <lyude@redhat.com>
2018-04-10xserver 1.20 RC4xorg-server-1.19.99.904Adam Jackson1-1/+1
Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-04-02xserver 1.20 RC3xorg-server-1.19.99.903Adam Jackson1-1/+1
Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-04-02meson: Add pixman-1 to required modules in xorg-server.pcThierry Reding1-1/+5
pixman headers will be included for builds of external modules against the xorg-server SDK. Make sure pixman is listed as a required module so that the correct CFLAGS will be added. Note that the xorg-server.pc generated by the autotools-based build has many more modules listed, but this seems to be enough to build at least some of the external drivers against an X server built with Meson (I've tested with xf86-input-libinput, xf86-video-nouveau and xf86-video-ati). Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
2018-04-02meson: Remove usage of pkg-config --variable=includedirThierry Reding1-1/+0
Querying a pkg-config variable using the --variable option produces the value of the given variable as stored in the pkg-config file and should not be used to add directories to the include search path. The reason for this is that it breaks cross-compilation, because header files are installed relative to the host sysroot. pkg-config supports a PKG_CONFIG_SYSROOT_DIR environment variable that points to this sysroot and will prepend that to the path of directories in -I or -L options in pkg-config's Cflags, Libs or Libs.private keywords. However, because no context can be inferred from variable names, as opposed to the keywords with fixed meaning, the sysroot path will not be prepended to them. The build system is responsible for doing so if necessary since it is aware of the context in which the variable is used. Adding the include directory returned by pkg-config to the include path leaks build system information into the cross-build and break with very confusing errors such as this: In file included from include/misc.h:82:0, from dix/atom.c:55: /usr/include/pthread.h:682:6: warning: '__regparm__' attribute directive ignored [-Wattributes] __cleanup_fct_attribute; ^~~~~~~~~~~~~~~~~~~~~~~ or this: In file included from include/misc.h:139:0, from dix/atom.c:55: /usr/include/stdlib.h:133:8: error: '_Float128' is not supported on this target extern _Float128 strtof128 (const char *__restrict __nptr, ^~~~~~~~~ Fix this by replacing the include directory with the appropriate xproto dependency required to add the correct include directory to the compile command for subdirectories that are missing the dependency. As detailed above, this gives pkg-config the opportunity to prepend the sysroot for all paths in -I compiler options. Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Thierry Reding <treding@nvidia.com>
2018-03-28xserver 1.20 RC2xorg-server-1.19.99.902Adam Jackson1-1/+1
Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-03-28meson: Properly extract ABI versions for xorg-server.pcThierry Reding1-4/+4
The newline in the middle of the awk expression confuses Meson and causes it to pass only the string before the newline to awk, which will subsequently fail because it encounters an unterminated string. One fix would be to escape the newlines ('\\n'), but that causes the newline to end up in the pkg-config file and separate the ABI version lines by blank lines. Instead, simply drop the newlines to make the generated pkg-config file look more like the one generated as part of the autotools-based build. Signed-off-by: Thierry Reding <treding@nvidia.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-03-28meson: Fix generation of xorg-server.pcThierry Reding1-7/+7
Meson stores relative paths for includedir, libdir and friends. These have to be concatenated with the ${prefix} or ${exec_prefix} variables to create a working pkg-config file. While at it, set a default value for the module_dir option so that it points to the same location as used in the autotools-based build. Signed-off-by: Thierry Reding <treding@nvidia.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-03-28meson: Fix build if Xdmcp is missingThierry Reding1-1/+7
Xdmcp is an optional dependency, so make sure the build succeeds if it is missing. Signed-off-by: Thierry Reding <treding@nvidia.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-03-27meson: Add option to set default font path (v2)Adam Jackson1-1/+17
The autotools build gets this from some macros in fontutil, but they're just wrappers around pkgconfig. v2: Use same default as autotools (Keith Packard) Signed-off-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Keith Packard <keithp@keithp.com>
2018-03-27Revert "suid touchup"Adam Jackson1-2/+1
Pushed the wrong thing, sigh. This reverts commit 73a0562615aa1adfb934b953e23b1e69b126db4f.
2018-03-27suid touchupAdam Jackson1-1/+2
2018-03-27meson: Install xorg-server.m4Adam Jackson1-0/+3
Signed-off-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Keith Packard <keithp@keithp.com>
2018-03-27meson: Generate xorg-server.pcAdam Jackson1-0/+54
Otherwise external drivers can't build against us. Signed-off-by: Adam Jackson <ajax@redhat.com> Acked-by: Keith Packard <keithp@keithp.com>
2018-03-27meson: Install man pagesAdam Jackson1-0/+37
Signed-off-by: Adam Jackson <ajax@redhat.com> Acked-by: Keith Packard <keithp@keithp.com>
2018-03-27meson: Fix installing protocol.txtAdam Jackson1-1/+1
One fix the constructed path, two actually install it. Signed-off-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Keith Packard <keithp@keithp.com>
2018-03-21meson: Add the x(org)proto headers to the include pathAdam Jackson1-0/+1
Without this meson won't properly use headers installed into a non-default location. Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-03-09meson: Require libdrm for dri1/2/3 when configured 'auto' as well as 'true'Jon Turney1-5/+10
If dri1/2/3 are configured for auto-detection, libdrm is required, as well as the corresponding proto. (Practically we will always have the corresponding protos now, as they are part of xorgproto). Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2018-03-05glamor: Implement GetSupportedModifiersLouis-Francis Ratté-Boulianne1-1/+3
Implement function added in DRI3 v1.1. A newest version of libepoxy (>= 1.4.4) is required as earlier versions use a problematic version of Khronos EXT_image_dma_buf_import_modifiers spec. v4: Only send scanout-supported modifiers if flipping is possible v5: Fix memory corruption in XWayland (uninitialized pointer) Signed-off-by: Louis-Francis Ratté-Boulianne <lfrb@collabora.com> Reviewed-by: Daniel Stone <daniels@collabora.com> Acked-by: Keith Packard <keithp@keithp.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-03-05dri3: Add multi-planar/modifier buffer requestsLouis-Francis Ratté-Boulianne1-1/+1
Initial implementation for DRI3 v1.1. Only the DRI3 implementation is there, backends need to implement the proper hooks. Version is still set to 1.0 so clients shouldn't use the new requests yet. v2: Use depth/bpp instead of DRM formats in requests v3: Remove DMA fence requests from v1.1 Add screen/drawable modifier sets v4: Free array returned by 'get_drawable_modifiers()' v5: Fix FD leak Signed-off-by: Daniel Stone <daniels@collabora.com> Signed-off-by: Louis-Francis Ratté-Boulianne <lfrb@collabora.com> Acked-by: Keith Packard <keithp@keithp.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-03-05Require libdrm 2.4.89 or newerKeith Packard1-10/+2
Both autotools and meson build systems had complicated logic around what version of libdrm to require for various options. Remove that and just check for a new enough version to support all of the options which need libdrm. Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-03-02meson: Make SHM extension optionalLaurent Carlier1-1/+7
v2: check for header 'sys/shm.h' Signed-off-by: Laurent Carlier <lordheavym@gmail.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-03-02meson: Make ACPI support optionalLaurent Carlier1-1/+10
v2: Define HAVE_ACPI in dix-config.h Signed-off-by: Laurent Carlier <lordheavym@gmail.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-03-02meson: Make APM support optionalLaurent Carlier1-1/+8
v2: Define HAVE_APM in dix-config.h Signed-off-by: Laurent Carlier <lordheavym@gmail.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-02-28xserver 1.20 RC 1xorg-server-1.19.99.901Adam Jackson1-1/+1
Signed-off-by: Adam Jackson <ajax@redhat.com>
2018-02-27Add RandR leases with modesetting driver support [v6]Keith Packard1-1/+1
This adds support for RandR CRTC/Output leases through the modesetting driver, creating a lease using new kernel infrastructure and returning that to a client through an fd which will have access to only those resources. v2: Restore CRTC mode when leases terminate When a lease terminates for a crtc we have saved data for, go ahead and restore the saved mode. v3: Report RR_Rotate_0 rotations for leased crtcs. Ignore leased CRTCs when selecting screen size. Stop leasing encoders, the kernel doesn't do that anymore. Turn off crtc->enabled while leased so that modesetting ignores them. Check lease status before calling any driver mode functions When starting a lease, mark leased CRTCs as disabled and hide their cursors. Also, check to see if there are other non-leased CRTCs which are driving leased Outputs and mark them as disabled as well. Sometimes an application will lease an idle crtc instead of the one already associated with the leased output. When terminating a lease, reset any CRTCs which are driving outputs that are no longer leased so that they start working again. This required splitting the DIX level lease termination code into two pieces, one to remove the lease from the system (RRLeaseTerminated) and a new function that frees the lease data structure (RRLeaseFree). v4: Report RR_Rotate_0 rotation for leased crtcs. v5: Terminate all leases on server reset. Leases hang around after the associated client exits so that the client doesn't need to occupy an X server client slot and consume a file descriptor once it has gotten the output resources necessary. Any leases still hanging around when the X server resets or shuts down need to be cleaned up by calling the kernel to terminate the lease and freeing any DIX structures. Note that we cannot simply use the existing drmmode_terminate_lease function on each lease as that wants to also reset the video mode, and during server shut down that modesetting: Validate leases on VT enter The kernel doesn't allow any master ioctls to run when another VT is active, including simple things like listing the active leases. To deal with that, we check the list of leases whenever the X server VT is activated. xfree86: hide disabled cursors when resetting after lease termination The lessee may well have played with cursors and left one active on our screen. Just tell the kernel to turn it off. v6: Add meson build infrastructure [Also bumped libdrm requirement - ajax] Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-02-27xf86-video-modesetting: Record non-desktop kernel property at PreInit timeKeith Packard1-1/+1
Save any value of the kernel non-desktop property in the xf86Output structure to avoid non-desktop outputs in the default configuration. [Also bump randrproto requirement to a version that defines RR_PROPERTY_NON_DESKTOP - ajax] Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-by: Adam Jackson <ajax@nwnk.net>
2018-02-19meson: Make DGA extension optionalLaurent Carlier1-2/+11
Signed-off-by: Laurent Carlier <lordheavym@gmail.com>
2018-02-19meson: Make Xv and XvMC extensions optionalLaurent Carlier1-1/+6
Just mimic autoconf file, XvMC can't be enabled without Xv Signed-off-by: Laurent Carlier <lordheavym@gmail.com>
2018-02-14meson: Make Security extension optionalLaurent Carlier1-1/+7
Just mimic autoconf file, Security extension needs X-ACE extension Signed-off-by: Laurent Carlier <lordheavym@gmail.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-02-14meson: Make more extensions optionalLaurent Carlier1-5/+6
Just mimic autoconf file for xf86bigfont, screensaver, xres, xace and xinerama extensions Signed-off-by: Laurent Carlier <lordheavym@gmail.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-02-14meson: Make DPMS extension optionalLaurent Carlier1-1/+5
Just mimic autoconf file, DPMS is disabled with Xquartz Signed-off-by: Laurent Carlier <lordheavym@gmail.com> Reviewed-by: Adam Jackson <ajax@redhat.com>
2018-02-02meson: Get more xkb configuration from xkbcomp.pcAdam Jackson1-3/+10
Signed-off-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Daniel Stone <daniels@collabora.com>
2018-01-24xwayland: Add optional xdg-output supportOlivier Fourdan1-1/+1
The xdg-output protocol aims at describing outputs in way which is more in line with the concept of an output on desktop oriented systems. For now it just features the position and logical size which describe the output position and size in the global compositor space. This is however much useful for Xwayland to advertise the output size and position to X11 clients which need this to configure their surfaces in the global compositor space as the compositor may apply a different scale from what is advertised by the output scaling property (to achieve fractional scaling, for example). This was added in wayland-protocols 1.10. Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Olivier Fourdan <ofourdan@redhat.com>
2017-10-25meson: Use [ true, false, auto ] for tristate valuesAdam Jackson1-21/+21
For symmetry with the boolean options. I really do not want to care whether an option is a tristate if I'm trying to set it explicitly. Signed-off-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2017-10-24meson: Don't use '' in link_with, everLyude Paul1-2/+2
String arguments as elements in the array passed to the link_with argument in meson's executable() functions are not valid and will end up causing the build file generation to file. This actually ended up exposing a bug in meson that caused it not to report where in the meson.build file it was failing: https://github.com/mesonbuild/meson/pull/2527 The proper way to have a variable that can contain either an empty link target or an actual link target is: some_target = [] if some_cond some_target = static_library(...) endif This way if some_cond is False, some_target gets set to [], gets passed to executable() in the link_with array, and then gets removed by array flattening. This also unbreaks Xwayland builds with -Dglx=false, the thing that originally made me notice this. Signed-off-by: Lyude Paul <lyude@redhat.com> Reviewed-by: Jon Turney <jon.turney@dronecode.org.uk>
2017-10-12meson: Fix linkage of loadable modules for PE/COFFJon Turney1-1/+1
For the loadable modules it makes sense to build for PE/COFF targets, link those loadable modules with the import library for the Xorg executable, so that symbols provided by the executable can be satisfied at link time (as required by PE/COFF). Since this uses the syntax of using the returned build target object from an executable() with an implib: kwarg to link_with:, introduced in meson 0.42 and a syntax error with older meson, also update the minimum meson version which we require in project() to that. Signed-off-by: Jon Turney <jon.turney@dronecode.org.uk>
2017-10-12meson: Add xkb_bin_dir optionLyude Paul1-0/+5
Now that we can actually configure all of the directories xkb uses for finding things, we can (finally, but only with meson) finally make it so that with the correct meson configuration the Xserver will "just work" without any additional changes to the installation prefix after building. For the people like me who have since scripted this part out of their build process and forgotten about it, building and installing the X server into a non-standard prefix has always required the following (or something else that makes sure that X has a valid xkbcomp configuration) commands be run right after doing the installation: # start in root of prefix you installed X to mkdir -pv share/X11/xkb/rules ln -s /usr/share/X11/xkb/rules/evdev share/X11/xkb/rules/ rm -f bin/xkbcomp ln -s /usr/bin/xkbcomp bin/ The one last piece of getting rid of this post-install junk is making sure that we can control the directory that X uses for finding the xkbcomp binary from meson so we can point it at the system provided xkbcomp (/usr/bin/xkbcomp or similar). So, this patch adds a configuration option for controlling this called xkb_bin_dir. Signed-off-by: Lyude Paul <lyude@redhat.com> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Daniel Stone <daniels@collabora.com>
2017-10-04meson: Port default warning flags from xorg-macrosAdam Jackson1-2/+43
Well, almost all of them. No -Wdeclaration-after-statement because that's legal in C99, and in the limited ways we use it, more readable. Signed-off-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Daniel Stone <daniels@collabora.com>