Eric Engestrom
5b10ddf358
util: fix mem leak of program path
...
Fixes: 759b940389 ("util: Get program name based on path when possible")
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
2019-08-07 08:42:42 +01:00
Timothy Arceri
a5b9394b87
drirc: Add vendor workaround for Divinity: Original Sin EE
...
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93551
2019-08-07 10:12:49 +10:00
Timothy Arceri
dca119f12c
mesa/gallium: add dric option to allow overriding GL vendor string
...
Will be used in the following patch.
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93551
2019-08-07 10:12:49 +10:00
Timothy Arceri
3c9144f9e5
drirc: Add discard workaround for Divinity: Original Sin EE
...
This adds an additional work around for the game to fix the blocky
shadows as reported in bug 105282
Acked-by: Eric Engestrom <eric.engestrom@intel.com >
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=105282
2019-08-05 15:35:00 +10:00
Eric Engestrom
9668d7f539
introduce c11_compat.h to provide C11 things in C99
...
Right now, all it does is provide the new standard `static_assert()` name.
Fixes: fbf7c38da3 ("egl/wayland: use bitset.h for `formats` bit set")
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Tested-by: Bhushan Shah <bshah@kde.org >
2019-08-04 11:14:25 +01:00
Eric Engestrom
2fd30e3722
util: fix pointer type on NetBSD
...
NetBSD expects a `void *` argument [1] as the printf-style arguments to
the formatting string, so we need to cast the `const` away.
[1] https://netbsd.gw.com/cgi-bin/man-cgi?pthread_setname_np++NetBSD-current
Suggested-by: Kamil Rytarowski <n54@gmx.com >
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Matt Turner <mattst88@gmail.com >
2019-08-03 00:20:21 +00:00
Eric Engestrom
9a07606b84
meson: replace last uses of libxmlconfig with idep_xmlconfig
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Acked-by: Eric Anholt <eric@anholt.net >
Tested-by: Vinson Lee <vlee@freedesktop.org >
2019-08-03 00:08:37 +00:00
Eric Engestrom
178811d8f6
meson: drop unused dep_{thread,dl}
...
Unused as of last commit.
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Acked-by: Eric Anholt <eric@anholt.net >
Tested-by: Vinson Lee <vlee@freedesktop.org >
2019-08-03 00:08:37 +00:00
Eric Engestrom
d2d85b950d
meson: replace libmesa_util with idep_mesautil
...
This automates the include_directories and dependencies tracking so that
all users of libmesa_util don't need to add them manually.
Next commit will remove the ones that were only added for that reason.
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Acked-by: Eric Anholt <eric@anholt.net >
Tested-by: Vinson Lee <vlee@freedesktop.org >
2019-08-03 00:08:37 +00:00
Matt Turner
dcf9d91a80
util: Handle differences in pthread_setname_np
...
There are a lot of unfortunate differences in the implementation of this
function. NetBSD and Mac OS X in particular require different arguments.
https://stackoverflow.com/questions/2369738/how-to-set-the-name-of-a-thread-in-linux-pthreads/7989973#7989973
provides for a good overview of the differences.
Fixes: 9c411e020d ("util: Drop preprocessor guards for glibc-2.12")
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=111264
Reviewed-by: Eric Engestrom <eric.engestrom@intel.com >
[Eric: use DETECT_OS_* instead of PIPE_OS_*]
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Matt Turner <mattst88@gmail.com >
2019-08-02 18:38:52 +01:00
Eric Engestrom
55eadf971a
util/os_time: use detect_os.h to uncouple from gallium
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Matt Turner <mattst88@gmail.com >
2019-08-02 18:38:52 +01:00
Eric Engestrom
bffa23313a
util/u_debug: use detect_os.h
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Matt Turner <mattst88@gmail.com >
2019-08-02 18:38:52 +01:00
Eric Engestrom
7f12a66ad5
util/os_misc: use detect_os.h to start uncoupling from gallium
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Matt Turner <mattst88@gmail.com >
2019-08-02 18:38:52 +01:00
Eric Engestrom
87adc898b3
util/os_memory: use detect_os.h to uncouple it from gallium
...
While at it, remove p_compiler.h as well as it is unused.
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Matt Turner <mattst88@gmail.com >
2019-08-02 18:38:52 +01:00
Eric Engestrom
8c52bca112
gallium/utils: drop PIPE_SUBSYSTEM_WINDOWS_USER
...
This is basically just an alias for PIPE_OS_WINDOWS.
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Matt Turner <mattst88@gmail.com >
2019-08-02 18:38:52 +01:00
Eric Engestrom
e740e7a6f0
scons: rename PIPE_SUBSYSTEM_EMBEDDED to EMBEDDED_DEVICE
...
It has nothing to do with the PIPE_SUBSYSTEM_* stuff from gallium.
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Matt Turner <mattst88@gmail.com >
2019-08-02 18:38:52 +01:00
Eric Engestrom
bfb70032d4
util: fix typo in comment
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Matt Turner <mattst88@gmail.com >
2019-08-02 18:38:52 +01:00
Eric Engestrom
362e9d8682
util: introduce detect_os.h
...
Mostly copied from src/gallium/include/pipe/p_config.h, so I kept its
copyright and authorship.
Other than the obvious rename, the big difference is that these are
always defined, to be used as `#if DETECT_OS_LINUX`.
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Matt Turner <mattst88@gmail.com >
2019-08-02 18:38:52 +01:00
Eric Engestrom
abc226cf41
tree-wide: replace MAYBE_UNUSED with ASSERTED
...
Suggested-by: Jason Ekstrand <jason@jlekstrand.net >
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Matt Turner <mattst88@gmail.com >
2019-07-31 09:41:05 +01:00
Matt Turner
c9b86cf526
meson: Test for program_invocation_name
...
program_invocation_name and program_invocation_short_name are both GNU
extensions. I don't believe one can exist without the other, so only
check for program_invocation_name.
Reviewed-by: Eric Engestrom <eric.engestrom@intel.com >
2019-07-30 11:49:09 -07:00
Matt Turner
9c411e020d
util: Drop preprocessor guards for glibc-2.12
...
glibc-2.12 was released in 2010. No one is building new Mesa against 9
year old glibc, and removing these checks allows the code to work on
other C libraries like musl.
Acked-by: Eric Engestrom <eric.engestrom@intel.com >
2019-07-30 11:49:09 -07:00
Lionel Landwerlin
d2d70c3bb5
util: add a timespec helper
...
Copied from Weston, upon Daniel's suggestion
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Suggested-by: Daniel Stone <daniels@collabora.com >
Reviewed-by: Daniel Stone <daniels@collabora.com >
2019-07-29 13:11:36 +00:00
Alyssa Rosenzweig
b2a3ca6bd5
util/ra: Add a getter for a node class
...
Complements the existing getters and the setter for node class. To be
used in the Panfrost RA refactor.
Signed-off-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-25 06:14:12 -07:00
Eric Engestrom
f986741a91
util: fix no-op macro (bad number of arguments)
...
Fixes: b8e077daee ("util: no-op __builtin_types_compatible_p() for non-GCC compilers")
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Matt Turner <mattst88@gmail.com >
2019-07-24 09:13:58 +01:00
Eric Engestrom
7797823afa
util: fix asprintf() fallback
...
Fixes: 9607d499dc ("util: add asprintf() wrapper for MSVC")
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
2019-07-23 14:59:07 +00:00
Eric Engestrom
9607d499dc
util: add asprintf() wrapper for MSVC
...
Fixes: 856e84083e ("mesa/st: add sampler uniforms")
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-23 08:57:27 +01:00
Eric Engestrom
6f8b5872ab
util: drop strncat(), strcmp(), strncmp(), snprintf() & vsnprintf() MSVC fallbacks
...
It would seem MSVC>=2015 is now C99-compliant wrt these functions:
strncat: https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/strncat-strncat-l-wcsncat-wcsncat-l-mbsncat-mbsncat-l?view=vs-2017
strcmp: https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/strcmp-wcscmp-mbscmp?view=vs-2017
strncmp: https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/strncmp-wcsncmp-mbsncmp-mbsncmp-l?view=vs-2017
snprintf: https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/snprintf-snprintf-snprintf-l-snwprintf-snwprintf-l?view=vs-2017
vsnprintf: https://docs.microsoft.com/en-us/cpp/c-runtime-library/reference/vsnprintf-vsnprintf-vsnprintf-l-vsnwprintf-vsnwprintf-l?view=vs-2017
Suggested-by: Emil Velikov <emil.velikov@collabora.com >
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Eric Engestrom
085c3abf27
util: use standard name for vsnprintf()
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Eric Engestrom
dffeaa55dd
util: use standard name for snprintf()
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Eric Engestrom
00e23cd969
util: use standard name for vasprintf()
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Eric Engestrom
59c2dd1b8c
util: use standard name for sprintf()
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Eric Engestrom
321d971b08
util: use standard name for strcmp()
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Eric Engestrom
7abc739696
util: use standard name for strcasecmp()
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Eric Engestrom
88ddb2e186
util: use standard name for strncmp()
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Eric Engestrom
27b9eea557
util: use standard name for strncat()
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Eric Engestrom
3ba199abd1
util: use standard name for strdup()
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Eric Engestrom
09a8a39940
util: use standard name for strchrnul()
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
Reviewed-by: Emil Velikov <emil.velikov@collabora.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Eric Engestrom
367bb55c17
util: drop unused vsprintf() wrapper
...
Suggested-by: Emil Velikov <emil.velikov@collabora.com >
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Eric Engestrom
e7db1806af
util: drop unused strchr() wrapper
...
Suggested-by: Emil Velikov <emil.velikov@collabora.com >
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Eric Engestrom
84e85035cf
util: drop unused strstr() wrapper
...
Suggested-by: Emil Velikov <emil.velikov@collabora.com >
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Eric Anholt <eric@anholt.net >
2019-07-19 22:39:38 +01:00
Eric Anholt
628f55717b
src/util: Switch _mesa_half_to_float() to u_half.h's version.
...
The two implementations differ across the entire input range only in
that u_half.h preserves mantissa bits for NaNs. The u_half.h version
shaves 15% off of the text size of half_float.o.
Reviewed-by: Thomas Helland <thomashelland90@gmail.com >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
2019-07-16 12:51:13 -07:00
Christian Gmeiner
f39a7fd627
util/macros: rework DIV_ROUND_UP macro
...
Simplify used math.
Signed-off-by: Christian Gmeiner <christian.gmeiner@gmail.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
2019-07-04 10:21:32 +02:00
Eric Engestrom
1b259f1ae7
util: add os_file_create_unique()
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Kristian H. Kristensen <hoegsberg@google.com >
Reviewed-by: Marek Olšák <marek.olsak@amd.com >
2019-06-28 23:37:49 +01:00
Eric Engestrom
53f17c4efd
meson: set up a proper internal dependency for xmlconfig
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Dylan Baker <dylan@pnwbakers.com >
2019-06-27 17:42:25 +00:00
Eric Engestrom
ad0ee5bfa5
xmlconfig: add missing #include
...
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Dylan Baker <dylan@pnwbakers.com >
2019-06-27 17:42:25 +00:00
Eric Engestrom
069e6d587e
xmlpool: fix typo in comment
...
s/otions/options/, and while here let's give the full path to xmlpool.h
since `../` won't be true in the generated file.
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Dylan Baker <dylan@pnwbakers.com >
2019-06-27 17:42:25 +00:00
Eric Engestrom
2d2e824fae
util: support "y" and "n" in env_var_as_boolean()
...
Suggested-by: Chris Wilson <chris@chris-wilson.co.uk >
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Christian Gmeiner <christian.gmeiner@gmail.com >
2019-06-24 12:49:13 +00:00
Marek Olšák
8ab9f3a857
include: update GL headers from the registry
...
Acked-by: Ilia Mirkin <imirkin@alum.mit.edu >
2019-06-21 19:00:52 -04:00
Eric Engestrom
955c63d364
util/os_file: resize buffer to what was actually needed
...
Fixes: 316964709e "util: add os_read_file() helper"
Reported-by: Jason Ekstrand <jason@jlekstrand.net >
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com >
Reviewed-by: Tapani Pälli <tapani.palli@intel.com >
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net >
2019-06-20 21:49:30 +00:00
Alejandro Piñeiro
6a159bca9d
util: add empty line before virgl options
...
Reviewed-by: Eric Engestrom <eric@engestrom.ch >
2019-06-20 15:21:39 +02:00