Commit graph

745 commits

Author SHA1 Message Date
Matt Turner 08467b4d7d gitlab-ci: Build with -Werror
The next commit will remove -Werror from the default autotools and meson
builds, but we would like to continue treating warnings as errors in CI.
2020-06-25 11:59:38 -07:00
Matt Turner 2a1dd5e494 autotools: Add a --enable-werror option 2020-06-25 11:58:58 -07:00
Kyle Brenneman a4c332e326 Merge branch 'use-python-element-tree' into 'master'
generate: Use xml.etree.ElementTree instead of cElementTree.

Closes #204

See merge request glvnd/libglvnd!227
2020-06-10 15:08:02 +00:00
Kyle Brenneman f936adad89 generate: Use xml.etree.ElementTree instead of cElementTree.
The cElementTree module is deprecated as of 3.3, so use the normal ElementTree
module instead.

Fixes https://gitlab.freedesktop.org/glvnd/libglvnd/-/issues/204
2020-06-10 08:59:44 -06:00
Kyle Brenneman 3e8684a739 Merge branch 'meson-werror' into 'master'
meson: Treat warnings as errors.

See merge request glvnd/libglvnd!226
2020-05-20 20:38:51 +00:00
Kyle Brenneman 4f9e991246 meson: Treat warnings as errors.
In the Meson build, treat warnings as errors like we do in the autotools build.
2020-05-20 13:52:39 -06:00
Kyle Brenneman 7e81b3560b Merge branch 'update-egl-headers' into 'master'
egl: sync with Khronos

See merge request glvnd/libglvnd!225
2020-05-07 21:44:59 +00:00
Simon Ser 4acb9be27d
egl: sync with Khronos
Updated the EGL headers and XML file to the Khronos repository, from commit
90b78b0662e2f0548cfd1926fb77bf628933541b.
2020-05-07 23:36:13 +02:00
Matt Turner 1c32de0707 Bump the version number to 1.3.1. 2020-02-21 13:28:47 -08:00
Matt Turner 810ae24776 Merge branch 'hjl/cet/master' into 'master'
x86: Add ENDBR at function entries

See merge request glvnd/libglvnd!223
2020-02-21 21:28:29 +00:00
H.J. Lu f96f6bde04 x86: Add ENDBR at function entries
Intel Control-flow Enforcement Technology (CET):

https://software.intel.com/en-us/articles/intel-sdm

contains shadow stack (SHSTK) and indirect branch tracking (IBT). When
CET is enabled, ELF object files must be marked with .note.gnu.property
section. Also when IBT is enabled, all indirect branch targets must
start with ENDBR instruction which is NOP on non-CET processors.

This fixes:

https://gitlab.freedesktop.org/glvnd/libglvnd/issues/202
2020-02-21 21:28:29 +00:00
Matt Turner cb7b1fb019 Merge branch 'tests-remove-glxint-h' into 'master'
tests: Remove an include for GL/glxint.h.

See merge request glvnd/libglvnd!220
2020-01-24 18:59:45 +00:00
Kyle Brenneman f2226650d8 Merge branch 'parisc' into 'master'
tests: Add _GLOBAL_OFFSET_TABLE_ to PLATFORM_SYMBOLS

See merge request glvnd/libglvnd!222
2020-01-17 15:37:58 +00:00
Matt Turner a322bd006c tests: Add _GLOBAL_OFFSET_TABLE_ to PLATFORM_SYMBOLS
On PA-RISC, the _GLOBAL_OFFSET_TABLE_ symbol is always exposed. See

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=blob;f=bfd/elf32-hppa.c;h=2e653083ce05a77b3e33c056e2f9a51b327c2b22#l1001
https://sourceware.org/git/gitweb.cgi?p=glibc.git;a=blob;f=sysdeps/hppa/dl-machine.h;h=9e98366ea3b09612d54a3e956d5c35c1bdc86560#l80
2020-01-16 09:40:24 -08:00
Kyle Brenneman b2b9e80eed Merge branch 'meson-fix-pkgconfig-datadir' into 'master'
Meson: Add datadir and datarootdir variables to libglvnd.pc.

See merge request glvnd/libglvnd!221
2020-01-15 17:33:06 +00:00
Kyle Brenneman 45e2a061e8 Meson: Add datadir and datarootdir variables to libglvnd.pc.
Add the missing datadir and datarootdir variables to the libglvnd.pc file that
Meson generates.
2020-01-10 12:11:01 -07:00
Kyle Brenneman 42a25c1ed7 Merge branch 'meson-fix-armel' into 'master'
Fix Meson on armel

See merge request glvnd/libglvnd!219
2019-12-17 15:31:54 +00:00
Eric Engestrom d14e580a31 Merge branch 'python-path' into 'master'
egl: avoid hard-coding the path to `python`

See merge request glvnd/libglvnd!216
2019-12-17 00:24:08 +00:00
Kyle Brenneman 682c8d4050 Merge branch 'gitlab-ci-xvfb-run' into 'master'
Use xvfb-run in CI scripts

See merge request glvnd/libglvnd!212
2019-12-13 21:19:21 +00:00
Kyle Brenneman dd64270964 tests: Remove an include for GL/glxint.h.
GL/glxint.h isn't a standard GLX header, and isn't needed for anything, so just
remove it.
2019-12-13 09:22:17 -07:00
Kyle Brenneman 6103052046 meson: Try to detect older ARM builds.
When building for armel, Meson's cpu() and cpu_family() strings aren't always
sufficient.

Instead, try to check for some predefined macros to determine if it's building
for ARMv7 or something older.
2019-12-13 09:21:00 -07:00
Kyle Brenneman 444035fd46 meson: Print the CPU and CPU family. 2019-12-13 09:20:57 -07:00
Kyle Brenneman 27251993ba gitlab-ci: Use xvfb-run
Change the CI scripts to use xvfb-run instead of running Xvfb directly.

That avoids a potential race condition, where a test could fail because Xvfb
hasn't started listening for connections yet. xvfb-run will wait for Xvfb to be
ready before it runs any other programs.

That also simplifies error handling, because the CI scripts can just use
"set -e" instead of having to store the exit code, kill Xvfb, and then check
for an error.
2019-12-13 07:05:41 -07:00
Eric Engestrom 9dcdd2807f Merge branch 'meson-test-dummy-link' into 'master'
Meson: Fix linking the unit tests' vendor libraries

See merge request glvnd/libglvnd!213
2019-12-12 23:54:38 +00:00
Eric Engestrom e77d52dadb egl/glx: avoid hard-coding the path to python 2019-12-12 23:47:24 +00:00
Eric Engestrom 0c38c8ad24 egl: drop shebang on non-executable script 2019-12-12 23:45:37 +00:00
Eric Engestrom 7ebf831e68 Merge branch 'readme' into 'master'
README: mention that the repo now lives on gitlab.fdo

See merge request glvnd/libglvnd!208
2019-12-12 23:43:55 +00:00
Eric Engestrom e924dd2707 README: mention that the repo now lives on gitlab.freedesktop.org 2019-12-12 23:41:37 +00:00
Eric Engestrom f0c2ce450d Merge branch 'python' into 'master'
egl: misc python fixes

See merge request glvnd/libglvnd!218
2019-12-12 23:37:15 +00:00
Eric Engestrom e470308497 Merge branch 'stddef' into 'master'
egl: #include <stddef.h> for `NULL`

See merge request glvnd/libglvnd!215
2019-12-12 23:32:08 +00:00
Eric Engestrom 25024a1f0a egl: sort imports 2019-12-12 23:18:53 +00:00
Eric Engestrom 1f6b455dc8 egl: use ArgumentParser() instead of manually parsing sys.argv 2019-12-12 23:18:53 +00:00
Eric Engestrom 214450d18a egl: import eglFunctionList directly instead of passing it in the command line
`imp` is deprecated, and there's no reason to do things this complicated
when it's the only possibility.
2019-12-12 23:18:53 +00:00
Eric Engestrom 0ba59394e4 egl: use dedent() and consistent indentation in source code 2019-12-12 23:04:34 +00:00
Eric Engestrom 02f82033f1 egl: drop superfluous () in conditions 2019-12-12 23:04:34 +00:00
Eric Engestrom 8dd5f93faf egl: avoid comparing with the value of None 2019-12-12 23:04:34 +00:00
Eric Engestrom 679f40aa6e egl: #include <stddef.h> for NULL 2019-12-12 22:56:42 +00:00
Eric Engestrom 377df1b5f9 Merge branch 'typo' into 'master'
meson: fix double-space in pkg-config description

See merge request glvnd/libglvnd!214
2019-12-12 17:30:44 +00:00
Eric Engestrom c60b40ef6c meson: fix double-space in pkg-config description 2019-12-12 17:16:12 +00:00
Kyle Brenneman 7203dcc325 Merge branch 'ppc64-elfv2' into 'master'
vnd-glapi: allow asm to be used on ELFv2 ppc64 big endian

See merge request glvnd/libglvnd!211
2019-12-09 22:46:26 +00:00
q66 c31a7c06eb vnd-glapi: allow asm to be used on ELFv2 ppc64 big endian
These entry points are actually not little endian specific,
but they are specific to ELFv2 ABI. ELFv2 ABI can be used
on either little or big endian, and there are distributions
doing so (e.g. Void Linux, Adélie Linux) as well as other
OSes transitioning (FreeBSD).

These have been confirmed to work on a Power Mac G5 running
Void Linux.
2019-12-09 18:49:41 +01:00
Kyle Brenneman c1c9a00c19 tests/meson: Set the version number for the dummy libraries.
Add a "version" parameter to the dummy libraries instead of using a separate cp
command.
2019-12-09 07:26:46 -07:00
Kyle Brenneman 793a772d3f tests/meson: Use shared_library instead of shared_module.
Use shared_library() instead of shared_module() when building the dummy
libraries. This causes Meson to add --no-undefined to the linker instead of
--allow-shlib-undefined.
2019-12-09 07:20:52 -07:00
Kyle Brenneman 4852538bdb Merge branch 'master' into 'master'
Fix linking #199

See merge request glvnd/libglvnd!210
2019-12-09 14:16:21 +00:00
Tomasz Paweł Gajc 3e03924a53 Fix linking #199 2019-12-09 11:31:13 +00:00
Matt Turner f45587842f Merge branch 'fix-meson-arch' into 'master'
Fix Meson build for ARM and PPC

See merge request glvnd/libglvnd!209
2019-12-06 17:11:17 +00:00
Matt Turner 01c0eb4ec1 meson: s/arm_tsd/armv7_tsd/
This matches configure.ac and also allows Meson to configure on ARMv7.
Otherwise it would fail with

    ERROR: Problem encountered: No matching ASM file for armv7_tsd
2019-12-06 12:06:52 -05:00
Kyle Brenneman fb6c3e4211 meson: Print the dispatch stub type.
Print the value of gl_dispatch_type so that you can easily tell from the output
what it's going to be using.
2019-12-06 08:01:37 -07:00
Kyle Brenneman ca979ad02e meson: Remove the GLDISPATCH_TYPE_* macro.
The GLDISPATCH_TYPE_* macro is not needed anywhere, so don't set it.
2019-12-06 07:55:00 -07:00
Kyle Brenneman 5ffb8df0ae meson: Fix the PPC64 build.
Check for a cpu_family value of 'ppc64', not 'ppc'. 'ppc' is for 32-bit power.

In GLdispatch, fix the file list for the PPC64 entrypoints.
2019-12-06 07:29:11 -07:00