-
9af14d8c
by Erik Faye-Lund at 2022-06-01T13:46:53+00:00
meson: disable annoying msvc-warnings
We already do this in the CMake build system, so let's also disable them
in the Meson one.
-
697d41d0
by Erik Faye-Lund at 2022-06-01T13:46:53+00:00
meson: suppress a few msvc warnings
These are very verbose, and pretty much benign; let's ignore them. We
also ignore these in main Mesa build system.
-
fbed3b3e
by Erik Faye-Lund at 2022-06-01T13:46:53+00:00
meson: suppress more annoying warnings
These two warnings are a bit annoying, and mismatches with what GCC /
Clang seems to care about. Let's disable them to avoid needless churn
and divergence between GLX and WGL versions of code.
-
c1fcfd88
by Erik Faye-Lund at 2022-06-01T13:46:53+00:00
wglutil.c: clean up size-wrangling
Without this, I get a warninig on MSVC about the cast to WORD. While
we're at it, let's also change the immediate type to size_t, because
that's both what sizeof returns and memset wants here, and it avoids a
cast that could have truncated the value.
-
1145bac5
by Erik Faye-Lund at 2022-06-01T13:46:53+00:00
glinfo_common.c: add int-casts
These length of these strings are never going to be too large to fit in
an int, so let's just cast these to int right away.
This fixes some warnings on MSVC.
-
67b9f4ba
by Erik Faye-Lund at 2022-06-01T13:46:53+00:00
glinfo_common.c: do not shadow variable i
The name 'i' has already been used earlier in these sources, so let's
not needlessly shadow these variables. Instead use the common name 'j'
for the second loop-counters.
-
23023bf8
by Erik Faye-Lund at 2022-06-01T13:46:53+00:00
readtex.c: use float literals
-
a7d73270
by Erik Faye-Lund at 2022-06-01T13:46:53+00:00
readtex.c: add explicit cast
-
f3b0b5a3
by Erik Faye-Lund at 2022-06-01T13:46:53+00:00
wglcontext.c: cast size_t to int
This string can't possibly be too large for int, so let's just cast the
result of strlen to int.
-
8d4d9b2f
by Erik Faye-Lund at 2022-06-01T13:46:53+00:00
wglinfo.c: fixup indent
-
4abea4f6
by Erik Faye-Lund at 2022-06-01T13:46:53+00:00
showbuffer.c: use float-literal
-
b97b54c8
by Erik Faye-Lund at 2022-06-01T13:46:53+00:00
wglthreads.c: remove unused argument
-
57c767d4
by Erik Faye-Lund at 2022-06-01T13:46:53+00:00
sharedtex_mt.c: cast through uintptr_t
MSVC doesn't like casting integers to pointers of different sizes
directly. Let's fix this, by casting to uintptr_t first, showing that we
intend to go to a pointer-size.
-
ea99b861
by Erik Faye-Lund at 2022-06-01T13:46:53+00:00
wincopy.c: do not copy potentially uninitialized member
We can't copy msg.wParam all the way out here, where we don't know if
the struct has actually been initialized or not. Let's instead copy it
each time we process a message.
But then we also need to stop overwriting it each time we get the
message, otherwise we'll end up with GetMessage's return value as the
final return value. Before we overwrote that variable with the wParam of
the last message in the end.
-
ef24aae2
by Ben Brown at 2022-06-08T20:40:24+01:00
meson: Add missing build dependencies on glu
With current versions of meson, multiple build errors occur due to
gl_wrap.h pulling in GL/glu.h, which is included by various sources,
e.g.:
In file included from ../src/egl/opengl/xeglgears.c:45:
../src/util/gl_wrap.h:13:12: fatal error: GL/glu.h: No such file or directory
13 | # include <GL/glu.h>
| ^~~~~~~~~~
-
493bf86f
by Erik Faye-Lund at 2022-06-21T09:55:34+00:00
README.rst: rename heading
This is no longer a link to an FTP site, so let's rename the heading to
be protocol agnostic.
-
4dd482cb
by Erik Faye-Lund at 2022-06-21T09:55:34+00:00
README.rst: capitalize GLUT and FreeGLUT
The "official" styling of these names appears to be GLUT and FreeGLUT.
These are the names that Wikipedia uses, as well as what FreeGLUT uses
for their github organization and CMake package.
-
93d267ea
by Erik Faye-Lund at 2022-06-21T09:55:34+00:00
README.rst: highlight folder names
This makes the list a bit easier on the eyes, highlighting the important
information first. It also matches what we do for the src directory just
before.
-
f2caef72
by Erik Faye-Lund at 2022-06-21T09:55:34+00:00
README.rst: remove Distribution from heading
The word Distribution seems a bit clunky and needless here. Let's drop
it, "Mesa Demos" is clear enough.
-
49c89ab7
by Anders Kaseorg at 2022-07-14T10:52:06+00:00
meson: Fix DEMOS_DATA_DIR when with-system-data-files is enabled
DEMOS_DATA_DIR needs to be an absolute path with a trailing slash.
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
-
abfead37
by Erik Faye-Lund at 2022-08-01T17:30:44+02:00
remove cmake and autotools support
These build systems were deprecated in Mesa-Demos 8.5.0, which was
released at the end of May. It's about time to remove them, so people
don't have to keep maintaining three build systems.
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Eric Engestrom <eric@igalia.com>
-
a0bb0410
by Erik Faye-Lund at 2022-08-01T17:30:48+02:00
gitlab-ci: clean up job-names
There's no need to specify the build-system in the job-names now that we
only have one build-system.
Reviewed-by: Emma Anholt <emma@anholt.net>
Reviewed-by: Eric Engestrom <eric@igalia.com>
-
2a5e3d5c
by Hoe Hao Cheng at 2022-08-25T00:48:34+08:00
eglinfo: fix whitespace
Acked-by: Marek Olšák <marek.olsak@amd.com>
-
3da8242f
by Hoe Hao Cheng at 2022-08-25T00:53:45+08:00
eglinfo: hook up glinfo_common.h
We're interested in the gl_versions array found inside the header.
Acked-by: Marek Olšák <marek.olsak@amd.com>
-
2576d9cd
by Hoe Hao Cheng at 2022-08-25T22:40:32+08:00
eglinfo: print OpenGL[ES] extensions
Acked-by: Marek Olšák <marek.olsak@amd.com>
-
77b8247b
by Hoe Hao Cheng at 2022-09-27T16:14:15+08:00
eglinfo: add dep_gl to meson.build
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
-
caac7be4
by Ville Syrjälä at 2022-12-15T22:23:01+02:00
glxgears: Use NET_WM_STATE_FULLSCREEN
At least some window managers don't do proper fullscreen with
just the motif hints/etc. currently being set. Eg. with mate's
marco the panels keep hovering over the glxgears window. Fix
that by marking the window as fullscreen via NET_WM_STATE.
Acked-by: Marek Olšák <marek.olsak@amd.com>
-
026d18b3
by Ville Syrjälä at 2022-12-15T22:23:08+02:00
xeglgears: Use NET_WM_STATE_FULLSCREEN
Use NET_WM_STATE to make the window proper fullscreen.
Acked-by: Marek Olšák <marek.olsak@amd.com>
-
58bbe82e
by Ville Syrjälä at 2022-12-15T22:23:29+02:00
xeglgears: Don't use override redirect
Override redirect is rude. On my system with mate's marco the
window no longer gets keyboard input so can't be exited cleanly,
nor can I alt-tab back to anything else either.
Acked-by: Marek Olšák <marek.olsak@amd.com>
-
437e2544
by Ville Syrjälä at 2022-12-15T22:23:57+02:00
xeglgears: Setup initial viewport size correctly
In fullscreen mode the window is likely not 300x300 so stop
assuming that for the initial viewport setup. Instead use
the actual size of the window we created.
Acked-by: Marek Olšák <marek.olsak@amd.com>
-
f5e202be
by Ville Syrjälä at 2022-12-15T22:24:19+02:00
xeglgears: Fix window resize
Fix the surface_type check during ConfigureNotify processing
so that we'll actually resize the viewport to match the new
window dimensions.
Acked-by: Marek Olšák <marek.olsak@amd.com>
-
1ad4d0f9
by Erik Faye-Lund at 2023-01-27T08:24:44+00:00
samples: remove unused variable
-
82ec158e
by Erik Faye-Lund at 2023-01-27T08:24:44+00:00
util: remove unused source-file
This source-file isn't used; let's just get rid of it.
-
c33e2f73
by Erik Faye-Lund at 2023-01-27T08:24:44+00:00
egl,util: factor out matrix-code from es2gears to util
This factors out some commonly useful matrix-code from es2gears so it
can be reused elsewhere.
-
a5edccf2
by Erik Faye-Lund at 2023-01-27T08:24:44+00:00
use matrix util code instead of open-coding
-
38db4ccc
by Erik Faye-Lund at 2023-01-27T08:24:44+00:00
glsl: use matrix utils
-
4538d016
by Erik Faye-Lund at 2023-01-27T08:24:44+00:00
redbook: use matrix utils
-
82bf39ac
by Erik Faye-Lund at 2023-01-27T08:31:07+00:00
install meson 0.59.4 from pip
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
67faa4c1
by Erik Faye-Lund at 2023-01-27T08:31:07+00:00
meson: update meson_version to 0.59
Mesa has updated it's meson_version to 0.59, so let's do the same for
this project. After all, the current value was set to the same as what
Mesa was using at the time.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
6e0d59f6
by Bram Stolk at 2023-01-27T08:42:01+00:00
Take out non-sensical test: array is always not-null.
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
53448446
by Erik Faye-Lund at 2023-01-27T10:13:43+01:00
meson: fallback to glut-dependency
We should really prefer loading GLUT from a dependency, and then fall
back to looking for the header and library file if that fails instead.
Otherwise, we'll miss the system-installed GLUT on some systems, like
Debian, due to missing the include file in the default include path.
So let's try a dependency first, and fall back to the system-include if
not found.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
7b0ee71e
by Erik Faye-Lund at 2023-01-27T09:16:47+00:00
tests: remove unused variable
When I reworked the code for this, I forgot to remove this variable.
This introduced a warning, whoops!
Fixes: 38db4ccc ("glsl: use matrix utils")
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
f87eeb37
by Erik Faye-Lund at 2023-01-27T10:22:03+01:00
eglut_wayland: terminate mainloop on display-close
When we're closing the native display, we can't really keep processing
events. Let's terminate the mainloop to prevent crashes.
It's not clear to me why this used to work, but it seems like *somehow*
the frame-callback saved us.
Fixes: 12ff8b7b ("eglut_wayland: do not use frame-listener")
Closes: https://gitlab.freedesktop.org/mesa/demos/-/issues/28
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
c7165d57
by Erik Faye-Lund at 2023-01-30T09:44:33+01:00
gitlab-ci: drop needless sys_root property
This is harmless now, but once we start using pkg-config, this path will
be appended to every include/lib dir, which will break stuff.
Fixes: 70ea768b ("gitlab-ci: build with meson")
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
0634e16e
by Erik Faye-Lund at 2023-01-30T09:44:37+01:00
gitlab-ci: add package for mingw pkg-config
We missed the mingw-version of pkg-config until now. It wasn't a big
deal, because we didn't really end up using it. But that's about to
change, so let's install the missing package.
Fixes: 70ea768b ("gitlab-ci: build with meson")
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
bb34ec2e
by Erik Faye-Lund at 2023-01-30T09:44:41+01:00
gitlab-ci: switch to pkg-config for glut on mingw
This makes the handling of glut more in line with other dependencies.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
b19fd22d
by Erik Faye-Lund at 2023-01-30T09:44:44+01:00
meson: deprecate with-glut option
This approach has issues, where we can't pass the dependency we get from
declare_dependency to cc.has_function().
This flag was added to support the MinGW CI-build in the first place, but
that's now done using a pkg-config wrapper-file. So let's just mark it
as deprecated in case someone is using it, and move forward.
I wish we could use the "deprecated" keyword from Meson 0.60, but we
don't require a new enough version yet. Oh well, this isn't too bad
either.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
9f6c7fbb
by Erik Faye-Lund at 2023-01-30T09:44:49+01:00
meson: use a feature-option for glut
This unifies how we deal with glut compared to other features.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
e024cfc1
by Erik Faye-Lund at 2023-01-30T09:44:52+01:00
meson: pass dep_glut to freeglut-detection
Without this, we fail to detect FreeGLUT on platforms where GLUT isn't
in the system include path already.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
31770bb7
by Erik Faye-Lund at 2023-01-30T10:43:19+01:00
util: rename mat4_frustum to mat4_frustum_gl
This reflects the fact that this is an OpenGL frustum matrix. For
Vulkan, we're going to want a different matrix.
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com>
-
c4aada2a
by Erik Faye-Lund at 2023-01-30T10:43:19+01:00
util: add vulkan frustrum util
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com>
-
a92d6f62
by Erik Faye-Lund at 2023-01-30T10:45:28+01:00
vulkan: add vkgears demo
Reviewed-by: Antonino Maniscalco <antonino.maniscalco@collabora.com>
-
f9e744f1
by antonino at 2023-01-30T10:45:31+01:00
vkgears: factor out VkRenderPass creation
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
1fc10a6b
by antonino at 2023-01-30T10:45:31+01:00
vkgears: implement MSAA option in vkgears
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
e3583f62
by antonino at 2023-01-30T10:45:31+01:00
vkgears: add swapinterval option
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
c13dd7bc
by antonino at 2023-01-30T10:45:31+01:00
vkgears: factor out interface for wsi
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
495b412d
by antonino at 2023-01-30T10:45:31+01:00
vkgears: x11 support
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
6dd73401
by antonino at 2023-01-30T10:45:31+01:00
vkgears: fullscreen, size parameters and exit
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
813ebef7
by antonino at 2023-01-30T10:45:31+01:00
vkgears: keyboard support
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
5aaa7fae
by antonino at 2023-01-30T10:49:12+01:00
vkgears: use keymap and handle repeat on wayland
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
ed7c064f
by Hoe Hao Cheng at 2023-01-30T18:41:54+08:00
es2_info: turn it into a proper .c file
It was a symlink. Occasionally, this confuses git (or something else),
causing this error message to pop up:
../src/egl/opengles2/es2_info.c:1:1: error: expected identifier or `(` before `.` token
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
c7f55903
by Hoe Hao Cheng at 2023-01-30T19:10:48+08:00
glinfo_common: move gl_versions out into another header
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
54dd68bf
by Hoe Hao Cheng at 2023-01-30T19:11:00+08:00
eglinfo: use the glad library
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
e2be6e7a
by Hoe Hao Cheng at 2023-01-30T19:11:06+08:00
eglinfo: refactor the platform display if-ladder
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
4997a4d9
by Hoe Hao Cheng at 2023-01-30T19:11:11+08:00
eglinfo: add command line options
"-a <api>" does nothing so far, the functionality will be added in the
next patch.
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
b4c2aa20
by Hoe Hao Cheng at 2023-01-30T19:11:15+08:00
eglinfo: support api selection
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
74ff5452
by Hoe Hao Cheng at 2023-01-30T19:11:19+08:00
eglinfo: fix interaction with pre-1.4 EGL
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
3dfb37f3
by Hoe Hao Cheng at 2023-01-30T19:11:22+08:00
eglinfo: add -B brief output support
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
1afb829b
by Erik Faye-Lund at 2023-01-31T11:54:38+01:00
eglut_wayland: handle keyboard-input
This uses wl_seat + xkbcommon to handle keyboard input.
Currently lacks support for key-repeat and reporting keys pressed while
window was inactive.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
32f1087a
by Erik Faye-Lund at 2023-01-31T11:54:42+01:00
eglut_wayland: refactor polling
This prepares us for polling a second file-descriptor.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
d63c15f7
by Erik Faye-Lund at 2023-01-31T11:54:56+01:00
eglut_wayland: properly handle key-repeats
This handles key-repeats, as well as-retriggering events on enter.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
cddce8d7
by Erik Faye-Lund at 2023-01-31T11:58:23+01:00
remove geometry-shader demos
It's been over a decade since mesa removed support for
GL_ARB_geometry_shader4, meaning that this demo hasn't been working
since then.
I don't think the value in keeping this test around is terribly high,
as it's an very trivial test, that does almost nothing. And there's
plenty of other sources of much more interesting geometry-shader
content out there.
So let's just delete it. It has outlived it's usefulness.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
31fba66b
by Erik Faye-Lund at 2023-01-31T12:05:53+01:00
gitlab-ci: re-sort packages
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
43b9de60
by Erik Faye-Lund at 2023-01-31T12:05:57+01:00
vulkan: move wsi code into a wsi directory
This makes it a bit more apparent that this is support-code, and would
be reused by other demos, in case we add any.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
a8e7e6cd
by Erik Faye-Lund at 2023-01-31T12:06:00+01:00
vulkan: move wsi selection to common code
This seems reasonable to reuse if we have more than one demo.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
14ca46a7
by Erik Faye-Lund at 2023-01-31T12:06:04+01:00
README.rst: mention vulkan demos
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
11463e2d
by Erik Faye-Lund at 2023-02-01T10:57:59+01:00
egl: correct typo in copyright statement
The name of the company was "Tungsten Graphics", not "Tunsgten
Graphics".
Acked-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
03c2b8f5
by Erik Faye-Lund at 2023-02-01T10:58:07+01:00
meson: add missing license-headers
Seems I forgot to add licenses to these files, whoops. Here's the
missing ones!
Acked-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
1fda2489
by Erik Faye-Lund at 2023-02-01T10:58:11+01:00
vulkan: add missing license headers
We forgot to add license-texts to these sources, so let's add them!
Acked-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
1ec94abc
by Alexandros Frantzis at 2023-02-02T18:31:42+00:00
egl: Add texture from pixmap example for GLES2.
Signed-off-by: Joseph Kogut <joseph.kogut@gmail.com>
Acked-by: Hoe Hao Cheng <haochengho12907@gmail.com>
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
2e268341
by Hoe Hao Cheng at 2023-02-03T07:54:45+08:00
eglgears: support rotating the gears
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
562fb3ee
by Hoe Hao Cheng at 2023-02-03T07:55:05+08:00
eglut_wayland: do not segfault if special_cb is not set
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
650c915a
by Erik Faye-Lund at 2023-02-03T13:46:18+01:00
meson: rework vulkan-detection
Without this, the auto-setting doesn't really work; we check against
enabled, not wether or not the thing we were looking for was found.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
4ddd48f5
by Erik Faye-Lund at 2023-02-03T13:46:21+01:00
vulkan: install vkgears
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
ed049bc2
by Erik Faye-Lund at 2023-02-06T07:19:53+00:00
add a mailmap-file
This mailmap-file is based on the output of "git shorlog -se", and then
taken duplicate entries and trying to figure out what the "preferred" or
current email address is. Most of those were picked from Mesa's
mailmap-file, which is likely to contain the contributors preference
already. Some were based on best-effort guesswork.
This allows us to see up-to-date-ish email addresses for old
contributions, which can be useful.
Acked-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
573c9187
by Erik Faye-Lund at 2023-02-07T09:36:00+00:00
egl: add missing license texts
Brian Paul said[1] that we should just throw the MIT license blurb on
these, so here we go.
All of these already have Tungsten Graphics / VMWare copyrights on them
anyway, so Brian should be the right authority to relicese these.
[1]: https://gitlab.freedesktop.org/mesa/demos/-/issues/17#note_623214
Reviewed-by: Brian Paul <brianp@vmware.com>
Closes: https://gitlab.freedesktop.org/mesa/demos/-/issues/17
-
9a57ab98
by Erik Faye-Lund at 2023-02-07T09:42:27+00:00
remove perf-tests
We have a more actively maintained micro-benchmarks in Piglit these
days. We don't need to maintain another set here, I think.
Acked-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
bda377b8
by Hoe Hao Cheng at 2023-02-08T09:39:47+00:00
ci: add dependencies of libdecor to CI
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
2f8c8733
by Erik Faye-Lund at 2023-02-08T09:39:47+00:00
meson: add a wrap for libdecor
Some distros have not packaged libdecor yet, use this as a workaround.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
4bc3cfb7
by Hoe Hao Cheng at 2023-02-08T09:39:47+00:00
eglut_wayland: use libdecor for top-level decoration
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
de5b9679
by Hoe Hao Cheng at 2023-02-08T09:39:47+00:00
vulkan/wsi/wayland: use libdecor for top-level decoration
This mirrors the change done to eglut_wayland.
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
1d0507e5
by Erik Faye-Lund at 2023-02-08T10:41:46+01:00
egl: install opengl-demos
Some distros (e.g Arch Linux) want these installed, and currently do so
manually. There's no good reason we don't want to install these by
default, so let's just do it so distros don't have to work around it.
Closes: https://gitlab.freedesktop.org/mesa/demos/-/issues/29
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
615878f5
by Jan Beich at 2023-02-17T11:28:33+00:00
meson/wayland: depend on epoll-shim after d63c15f7bd57/5aaa7faeb4de
ld: error: undefined symbol: timerfd_create
>>> referenced by eglut_wayland.c:221 (src/egl/eglut/eglut_wayland.c:221)
>>> libeglut_wayland.a.p/eglut_wayland.c.o:(seat_capabilities) in archive src/egl/eglut/libeglut_wayland.a
ld: error: undefined symbol: timerfd_create
>>> referenced by wayland.c:237 (src/vulkan/wsi/wayland.c:237)
>>> src/vulkan/vkgears.p/wsi_wayland.c.o:(init_display)
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
3a9d0853
by orbea at 2023-02-17T12:49:19+01:00
meson: dep_libdecor is disabled without wayland
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
ea546659
by Erik Faye-Lund at 2023-02-20T07:21:15+00:00
ci: forward concurrent-flag from ci-templates
This speeds up the builds by quite a big factor, because 4 is way less
than what the builders provides. It brings the build time for me from
around 1.5 minutes to about 20 seconds per job.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
3d73c8c4
by Erik Faye-Lund at 2023-02-20T07:22:45+00:00
vkgears: fix non-gnu compilation
We can't use powf() as a compile-time function, which is required for a
global const array initializer.
So let's move this into the draw_gears() function instead. This is what
we do for the other arrays here as well, and a sufficiently clever
compiler should be able to tell that it's not being modified anyway.
Fixes: a92d6f62 ("vulkan: add vkgears demo")
Closes: https://gitlab.freedesktop.org/mesa/demos/-/issues/30
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
fd24cdfe
by Erik Faye-Lund at 2023-02-20T07:24:21+00:00
ci: build using clang
This should ensure that mesa-demos builds on systems that use clang
instead of GCC by default. It also might increase the chance of building
on other compilers as well.
While we're at it, rename the "build" to "build-gcc".
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
6b4edcc8
by Jan Beich at 2023-02-20T07:27:23+00:00
meson: explicitly depend clear demo on EGL (like autotools did)
src/egl/opengles1/clear.c:35:10: fatal error: 'EGL/egl.h' file not found
#include <EGL/egl.h>
^~~~~~~~~~~
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
012c18fd
by Jan Beich at 2023-02-20T07:27:23+00:00
meson: disable eglfbdev on non-Linux (requires Mesa < 10.6, anyway)
src/egl/opengles1/eglfbdev.c:43:10: fatal error: 'linux/kd.h' file not found
#include <linux/kd.h>
^~~~~~~~~~~~
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
36b5b8ce
by Erik Faye-Lund at 2023-02-20T07:37:47+00:00
meson: build vkgears if either xcb or wayland is missing
Both dep_wayland and dep_xcb are disablers if missing, and will disable
building the target alltogether. So let's make the dependency usage
explicit here, so we can build with only one of them present.
Fixes: 650c915a ("meson: rework vulkan-detection")
Closes: https://gitlab.freedesktop.org/mesa/demos/-/issues/31
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
770c23b1
by Jan Beich at 2023-02-20T07:40:08+00:00
meson: disable XCB dependencies with -Dx11=disabled
If `required` is `false` then the dependency is optional, not disabled.
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
62b43904
by Erik Faye-Lund at 2023-02-20T07:43:07+00:00
ignore checked-out subprojects
Using the libdecor wrap here is going to check it out under the source
tree. Let's ignore subdirectories inside the subprojects folder, as
they're not going to be our source-code to care about.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
3fe8d403
by Hoe Hao Cheng at 2023-02-20T07:45:35+00:00
demos: fix clang warnings on implicit conversions
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
a23c4b0c
by Hoe Hao Cheng at 2023-02-20T07:45:35+00:00
demos: fix clang warning on abs use
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
3690ee69
by Hoe Hao Cheng at 2023-02-20T07:45:35+00:00
eglut_wayland: fix clang warnings on missing field initializers
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
a790f247
by Hoe Hao Cheng at 2023-02-20T07:45:35+00:00
vulkan/wsi/wayland: fix clang warnings on missing field initializers
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
07f08808
by Hoe Hao Cheng at 2023-02-20T07:45:35+00:00
es2gears: remove arithmetics on a null pointer
Clang says this is UB
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
803ee02f
by Jan Beich at 2023-02-20T11:16:04+00:00
meson: simplify 3a9d085315d5 via null_dep
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
e9301f3f
by Erik Faye-Lund at 2023-02-21T11:17:47+00:00
update to glad 0.1.36
While we're at it, update the recipe to upgrade glad as well. It seems
this was missed previously.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
6007b74c
by Erik Faye-Lund at 2023-02-21T12:20:41+01:00
vulkan/wsi: add missing space
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
d80cbe4d
by Erik Faye-Lund at 2023-02-21T12:20:45+01:00
vulkan/wsi: mark fini_display as static
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
d0dc0c43
by Erik Faye-Lund at 2023-02-21T12:20:45+01:00
vulkan/wsi: explicitly mark functions as void
Without this, I get missing prototype warnings, if I enable more
warnings. This makes sense, because an empty argument list in a
prototype means that the argument list is unknown.
So let's explicitly mark this as void. And for good measure, do the
same for the implementations as well.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
91e9a367
by Erik Faye-Lund at 2023-02-21T12:20:45+01:00
xdemos: avoid needless fallthrough
Since we're doing nothing here, we might as well break instead of
falling through.
This quiets a compiler-warning on Clang, when using sufficiently strict
compiler flags.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
94dc57b5
by Erik Faye-Lund at 2023-02-21T12:20:45+01:00
meson: check argument syntax instead of compiler
This should give compilers like clang-cl and intel-cl a fighting chance,
in case anyone ever want to build mesa demos with these.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
433afbec
by Erik Faye-Lund at 2023-02-21T12:20:45+01:00
meson: enable some warnings on gcc/clang
This list was taken from Mesa, assuming it's a reasonable list to
ensure reasonable compatibility across compilers.
One difference from the list in mesa, is that I've changed
-Wimplicit-fallthrough to -Wimplicit-fallthrough=3. That change
makes this only enable on GCC, because Clang doesn't support
fallthrough comments like GCC does. Without this, we'd need to define
some FALLTHROUGH macro or something, because fallthrough annotations
aren't portable enough. So let's just punt on this, and get
fallthrough warnings on GCC only for now.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
d8a95f41
by orbea at 2023-02-22T06:10:46-08:00
vulkan/wsi: Fix -Wreturn-type warning
There are no other instances of X11_SUPPORT and meson.build defines
XCB_SUPPORT which should be used instead.
../mesa-progs-9999/src/vulkan/wsi/wsi.c:38:1: error: control reaches end of non-void function [-Werror=return-type]
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
17e4d6a1
by Erik Faye-Lund at 2023-02-27T08:55:05+00:00
meson: allow falling back to alternative glu-detection
By requiring the first detection of glu when X11 is found, we don't
allow falling back to the second one. Fix that, by moving it to the
second one instead.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
d248d8ce
by Erik Faye-Lund at 2023-02-27T08:55:05+00:00
meson: do not search for glu on macos
On macOS, GLU is part of OpenGL.Framework, so we don't need to search
explicitly for it. Even if we did, we wouldn't find it, because we
include it by a different path than on other platforms.
So let's just bypass this entire check on macOS. We'll be fine anyway.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
a3c64093
by Erik Faye-Lund at 2023-02-27T08:55:05+00:00
util: do not require sincos()
This function isn't portable, so we need to check for it.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
000d0bf1
by Erik Faye-Lund at 2023-02-27T08:55:05+00:00
meson: disable some warnings on macos
On macOS, there's a difference between GLhandleARB and GLuint, which
means that the prototypes between GL_ARB_vertex_shader and the core
version of these APIs aren't strictly speaking compatible.
This isn't a real problem in reality, because nobody ends up with more
than 2^32-1 handles. But it makes the compiler complain.
So let's silence these warnings on macOS. It's going to be fine.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
1d0f8fe4
by Hoe Hao Cheng at 2023-02-27T20:28:08+08:00
demos: check for _WIN32 instead of WIN32
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
af947da7
by Hoe Hao Cheng at 2023-02-27T20:28:12+08:00
meson: add various preprocessor defines for various OSes
This is a cut-down version of the same check in Mesa. This is needed
to enable `c_std=c11`.
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
49439b31
by Hoe Hao Cheng at 2023-02-27T20:28:23+08:00
meson: update standard to C11 and C++17
Mesa is already using those options, so doing this in mesa-demos should be
fine.
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
34300551
by Erik Faye-Lund at 2023-03-02T12:45:41+00:00
meson: explicitly check for glx dependency
X11 and GLX are really separate dependencies, and we can't assume GLX
is available just because X11 is. This matters on macOS, where GLX
isn't available unless xquartz is installed.
So let's test for glx seperately, so we know if we can use it or not.
For XQuartz-builds, we let libGL also provide GLX.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
233e061f
by Erik Faye-Lund at 2023-03-03T09:16:53+01:00
es2gears: do not define _GNU_SOURCE
We're defining it from the build-system now, and doing both gives us a
compiler-warning. Let's drop doing it here.
Fixes: af947da7 ("meson: add various preprocessor defines for various OSes")
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
e2fef121
by Hoe Hao Cheng at 2023-03-03T21:08:59+08:00
glinfo_common, glxinfo: switch to GLAD completely
eglinfo uses GLAD while glxinfo uses libGL. The result is that we cannot
make those two share the same glinfo_common on Linux (linking error
ensues if you do that), so let's switch glxinfo to GLAD.
Then we clean up some of the leftover code that are irrelevant to GLAD so
that things build again.
-
e10df65f
by Hoe Hao Cheng at 2023-03-03T21:08:59+08:00
glinfo_common: remove wglinfo and glxinfo specific bits
This creates some code duplication in both tools as a result, but those code
doesn't make sense for eglinfo.
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
5f88ddbb
by Hoe Hao Cheng at 2023-03-03T21:08:59+08:00
eglinfo: start including glinfo_common
We aren't using any of its functionality yet (except ELEMENTS).
-
5042b952
by Hoe Hao Cheng at 2023-03-03T21:08:59+08:00
glinfo_common: move from xdemos to utils
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
05d76d11
by Hoe Hao Cheng at 2023-03-03T21:08:59+08:00
eglinfo: use print_extension_list() provided by glinfo_common
Right now the single-line-per-extension mode is hardcoded to false. The
next patch will add the relevant command line option to enable it.
Also changes the output format slightly - now it includes commas.
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
34b9ec63
by Hoe Hao Cheng at 2023-03-03T21:08:59+08:00
eglinfo: parse -s option for single-extension-per-line output
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
aa62c6a7
by Hoe Hao Cheng at 2023-03-03T21:08:59+08:00
eglinfo: make PrintContextExtensions() return a string
This will be useful in the following patches. Also, this is consistent
with the other Print functions.
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
0a630873
by Hoe Hao Cheng at 2023-03-03T21:08:59+08:00
eglinfo: let createEGLContext() return version of the created context
The version is returned in an integer consisting of 2 digits. First
digit is the major version, second digit is the minor version.
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
c3617a66
by Hoe Hao Cheng at 2023-03-03T21:08:59+08:00
eglinfo: parse -l for printing OpenGL limits
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
a77e1ca8
by Hoe Hao Cheng at 2023-03-03T21:08:59+08:00
eglinfo: print GPU memory info
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
d0e43d19
by Hoe Hao Cheng at 2023-03-03T21:08:59+08:00
eglinfo: fix the ifdef-guard in parse_args()
Theoretically this only affects people compiling eglinfo with EGL 1.2
headers...
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
b82f1307
by Hoe Hao Cheng at 2023-03-03T21:36:58+08:00
eglinfo: parse -v option for verbose visual infos
Acked-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
-
bcb82b19
by Erik Faye-Lund at 2023-03-06T09:56:10+01:00
util: use gl2 program validation
There's a glValidateProgram function in GL2 and later; let's use that
instead of trying to use the ARB function and falling back to nothing.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
604a8fb2
by Erik Faye-Lund at 2023-03-06T09:56:13+01:00
util: use gl2 program-parameters
There's no good reason to use the ARB versions instead of the non-ARB
versions.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
afce83c2
by Erik Faye-Lund at 2023-03-06T09:56:16+01:00
util: remove defective arb-shader fallback
We already call glCompileShader() without fallback to the ARB version in
the CompileShaderText() function. In fact, we've been doing this for
well over a decade now.
The ARB-shader code-path is broken, and it seems nobody noticed until
now.
So let's just get rid of it.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
84ced0fa
by Erik Faye-Lund at 2023-03-06T09:56:20+01:00
util: do not call gl2 through extra func-ptrs
Since we no longer support loading ARB shaders, using these function
pointers makes no sense. They can only ever resolve to one function, and
we already load that one through GLAD.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
db952f9f
by Erik Faye-Lund at 2023-03-06T09:56:23+01:00
tests: use gl2-functions for logs
glGetInfoLogARB is only available in ARB_shader_objects, which we don't
really use. So let's use the GL2 equivialents instead.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
ba656c10
by Erik Faye-Lund at 2023-03-10T09:36:59+01:00
meson: use win_subsystem instead of gui_app
gui_app has been deprecated, so let's switch to win_subsystem for the
same effect instead.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
1d1700f4
by Erik Faye-Lund at 2023-03-13T07:27:08+00:00
update some WIN32 vs _WIN32 checks
When we did the switch to C11, we missed a few sources that doesn't
currently build for Windows on CI. Let's fix these.
Fixes: 49439b31 ("meson: update standard to C11 and C++17")
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
ded2627d
by Erik Faye-Lund at 2023-03-13T07:27:08+00:00
meson: avoid building unix-source on windows
This was already done for CMake in af9e1d12 ("cmake: texleak requires
unix."), and we should have added a similar condition in the Meson build
system as well, but we somehow missed it. Add that condition back.
Fixes: 4973b62b ("add a meson build system")
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
fb6f655e
by Erik Faye-Lund at 2023-03-13T08:39:26+01:00
demos/glinfo: make sure GL_SHADING_LANGUAGE_VERSION is defined
This is needed for Windows support here, because the Windows GL/gl.h
header is missing the definition.
Usually it'd be better to use GLAD for modern GL support on Windows,
but this is an extremely simple program, so it doesn't seem worth it.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
5a82968d
by Erik Faye-Lund at 2023-03-13T08:39:26+01:00
tests/texobj: require gl 1.1 headers
The GL_VERSION_1_1 define tells us that we have an gl.h file that
supports OpenGL 1.1. Considering it's been several decades since OpenGL
1.1 was released, let's just always assume that it's recent enough.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
f01418ca
by Erik Faye-Lund at 2023-03-13T08:39:26+01:00
redbook: require gl 1.3 headers
The GL_VERSION_X_Y defines tells us that we have an gl.h file that
supports OpenGL X.Y. Considering it's been several decades since OpenGL
1.3 was released, let's just always assume that it's recent enough.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
9780885a
by Erik Faye-Lund at 2023-03-13T08:39:26+01:00
demos: require gl 2.0 headers
The GL_VERSION_X_Y defines tells us that we have an gl.h file that
supports OpenGL X.Y. Considering it's been almost two decades since
OpenGL 2.0 was released, let's just always assume that it's recent
enough.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
193ebb12
by Erik Faye-Lund at 2023-03-13T08:39:26+01:00
xdemos: require gl 3.2 headers
The GL_VERSION_X_Y defines tells us that we have an gl.h file that
supports OpenGL X.Y. Considering it's been well over a decade since
OpenGL 3.2 was released, let's just always assume that it's recent
enough.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
658c28bf
by Erik Faye-Lund at 2023-03-13T08:51:46+01:00
meson: correct spelling
This spelling-error originates in Mesa, but we copied it when we copied
the initial list of warning-disables here. Whoops, let's fix it!
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
6fec4e9c
by Erik Faye-Lund at 2023-03-13T08:51:49+01:00
meson: disable some msvc warnings for c++
The macro definition warning is about APIENTRY, which glad defines in an
incompatible way with windows.h. But this is fixed in glad 2.x, so instead
of tring to fix every single test to undef APIENTRY, let's just disable
the warning until we land the glad 2.x upgrade.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
08f1bcc8
by Erik Faye-Lund at 2023-03-13T08:51:53+01:00
demos/vao_demo: pass literal pointers through uintptr_t
This avoids a compiler-warning on MSVC.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
cfdfde19
by Erik Faye-Lund at 2023-03-13T08:51:57+01:00
tests/texdown: cast pointer to uintptr_t
This avoids a compiler-warning on MSVC.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
7a5bd8c7
by Erik Faye-Lund at 2023-03-14T16:27:45+00:00
ci: enable mr-pipelines
We need this for CI to work now, due to some changes on the gitlab
infrastructure.
See this link for details:
https://gitlab.freedesktop.org/freedesktop/freedesktop/-/issues/438#what-it-means-for-me-a-maintainer-of-a-project-part-of-gitlabfreedesktoporg
-
f5085908
by Erik Faye-Lund at 2023-03-14T16:30:24+00:00
completely retire xmesa/fx code
This is ancient code that hasn't been hooked up to the build system
since the conversion to autoconf, back in 2007.
The code is here to support Mesa on Glide, which isn't something that
hasn't been supported in Mesa since Mesa 7.2/3, released in 2009. We
had a dummy implementation in Mesa that did nothing and always reported
failure until 2017, but now even that is gone.
It's about time to let this code go, as it has no chance to even build
on new Mesa versions.
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
8c167832
by Erik Faye-Lund at 2023-03-22T12:02:22+01:00
osdemos: link to dep_osmesa rather than dep_gl
This fixes the OSMesa demos for me, and matches what we did for the old
Autotools build system.
Closes: https://gitlab.freedesktop.org/mesa/demos/-/issues/35
Reviewed-by: Hoe Hao Cheng <haochengho12907@gmail.com>
-
66168176
by Erik Faye-Lund at 2023-03-22T13:13:43+01:00
bump version to 9.0.0 for release
-
1471952c
by Timo Aaltonen at 2023-03-23T08:46:16+02:00
Merge branch 'upstream-unstable' into debian-unstable
-
ef5ab343
by Timo Aaltonen at 2023-03-23T08:46:36+02:00
version bump
-
b6413b7a
by Timo Aaltonen at 2023-03-23T15:17:21+02:00
watch: Updated.
-
34fc7f45
by Timo Aaltonen at 2023-03-23T15:28:09+02:00
no_eglfbdev.diff: Dropped, with meson eglfbdev is only built on Linux.
-
63c61f8c
by Timo Aaltonen at 2023-03-23T15:41:20+02:00
control: Add libdecor-0-dev and libxkbcommon-dev build-deps for wayland support.
-
f23f8745
by Timo Aaltonen at 2023-03-23T15:46:01+02:00
install: Add new tools.
-
ac962111
by Timo Aaltonen at 2023-03-24T10:43:16+02:00
Enable vulkan support, adds vkgears.
-
83c3cbff
by Timo Aaltonen at 2023-03-24T10:50:19+02:00
release to experimental