summaryrefslogtreecommitdiff
path: root/src/Makefile.am
AgeCommit message (Collapse)AuthorFilesLines
2017-06-15automake: increase the MESA_GIT_SHA1 hash id length from 7 to 10 digitsBrian Paul1-2/+2
The SCons build has been using 10 digits of the git hash id for the MESA_GIT_SHA1 string in git_sha1.h for about a year now. I bumped it up after running into a case where a 7-digit hash ID was ambiguous. This patch makes the same change for the autotools build. The command "git log | grep "^commit" | cut -b 8-14 | sort | uniq -d" shows there are currently 17 cases where 7 digits of hash id are ambiguous on master (probably quite a few more if we'd consider other branches). Instead of using "git log -n 1 --oneline" use "git rev-parse --short=10 HEAD" to get the HEAD hash id. v2: use printf instead of sed, per Eric's suggestion. Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
2017-03-13intel/vulkan: Get rid of recursive makeJason Ekstrand1-5/+0
v2 [Emil Velikov] - Various fixes and initial stab at the Android build. - Keep the generation rules/EXTRA_DIST outside the conditional Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2017-03-13intel/tools: Use a makefile included from intel/Makefile.amJason Ekstrand1-4/+0
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2017-03-04automake: move wayland-drm prior to VulkanEmil Velikov1-5/+5
Earlier commit was picked from a larger series, but did not consider that it removed the vulkan <> wayland-drm interdependency. Rather than reverting everything, temporarily move wayland-drm further up to resolve the issue. Since it [wayland-drm] does not have any in-mesa dependencies that's perfectly safe. Cc: Vedran Miletić <vedran@miletic.net> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=100060 Fixes: e135ce6f088 ("vulkan: Build common Vulkan code earlier") Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Tested-by: Javier Jardón <jjardon@gnome.org>
2017-03-04vulkan: Build common Vulkan code earlierJason Ekstrand1-5/+5
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2017-02-22vulkan: Combine wsi and util makefilesDylan Baker1-1/+1
Reviewed-by: Matt Turner <mattst88@gmail.com>
2017-02-22vulkan/util: Add generator for enum_to_str functionsDylan Baker1-1/+1
This adds a python generator to produce enum_to_str functions for Vulkan from the vk.xml API description. It supports extensions as well as core API features, and the generator works with both python2 and python3. Signed-off-by: Dylan Baker <dylanx.c.baker@intel.com> Acked-by: Matt Turner <mattst88@gmail.com> Acked-by: Jason Ekstrand <jason@jlekstrand.net>
2017-01-18vulkan: automake: do not use EXTRA_DIST in a conditionalEmil Velikov1-1/+1
Otherwise the file might not end up in the tarball. Fixes: dbd677efb42 "vulkan: add API registry" Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2017-01-14vulkan: add API registryLionel Landwerlin1-1/+3
Signed-off: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Acked-by: Jason Ekstrand <jason@jlekstrand.net>
2016-11-15amd: flatten amd/common makefile structureMauro Rossi1-4/+0
This pulls amd/common build rules into upper level makefile, along with amd/addlib which is already there. v2: [Emil Velikov] - Move NEED_RADEON_LLVM conditional, drop amd/common from SUBDIRS - Drop AM_ from common_libamd_common_la* Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2016-11-03amd/common: build also for gallium driversNicolai Hähnle1-1/+4
At least when LLVM is used, which is basically always (unless you're only building r600 without OpenCL). Reviewed-by: Dave Airlie <airlied@redhat.com> Reviewed-by: Marek Olšák <marek.olsak@amd.com>
2016-10-19anv: move to using shared wsi codeDave Airlie1-0/+4
This moves the shared code to a common subdirectory and makes anv linked to that code instead of the copy it was using. Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
2016-10-18mesa: automake: include mesa_glinterop.h in distfileJonathan Gray1-1/+2
Add mesa_glinterop.h to the list of headers that will get included in the distfile as it is required to build Mesa itself. Corrects a regression introduced in a89faa2022fd995af2019c886b152b49a01f9392. Signed-off-by: Jonathan Gray <jsg@jsg.id.au> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2016-10-07radv: add initial non-conformant radv vulkan driverDave Airlie1-1/+7
This squashes all the radv development up until now into one for merging. History can be found: https://github.com/airlied/mesa/tree/semi-interesting This requires llvm 3.9 and is in no way considered a conformant vulkan implementation. It can run a number of vulkan applications, and supports all GPUs using the amdgpu kernel driver. Thanks to Intel for providing anv and spirv->nir, and Emil Velikov for reviewing build integration. Parts of this are: Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com> Acked-by: Edward O'Callaghan <funfunctor@folklore1984.net> Authors: Bas Nieuwenhuizen and Dave Airlie Signed-off-by: Dave Airlie <airlied@redhat.com>
2016-10-06autoconf: Make header install distinct for various APIs (v2)Chuck Atkins1-0/+24
This fixes a problem where GL headers would only get installed if glx was enabled. So if osmesa was enabled but not glx, then the GL headers required by osmesa would be missing from the install. v2: Dropped unneeded mesa_glinterop.h redundant osmesa.h install Cc: mesa-stable@lists.freedesktop.org Signed-off-by: Chuck Atkins <chuck.atkins@kitware.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
2016-09-27glsl: Prepare standalone compiler to be able to use parameter listsCarl Worth1-0/+3
As part of the shader-cache work an upcoming change will add new references to _mesa_add_parameter and _mesa_new_parameter_list from the glsl code. To prepare for that, and to allow the standalone glsl_compiler to still link, here we add mesa/program/prog_parameter.c to the libglsl_util sources. Then, in order to get *that* to work, we also add to stubs to standalone_scaffolding: _mesa_program_state_flags _mesa_program_state_string These functions aren't actually used by the two functions in prog_parameter.c that we are actually calling. They are used in other functions in the same file. So we don't care what the implementation of these stubs is, (they won't be called by glsl_compiler). We just need the stubs present so that it can link. Signed-off-by: Timothy Arceri <timothy.arceri@collabora.com> Reviewed-by: Eric Anholt <eric@anholt.net>
2016-09-12mesa: Remove prog_hash_table.cThomas Helland1-1/+0
Here we make the prog_hash_table functionally equivalent to the one in util by wrapping the remaing functions that differ. We also move the functions to the header so we can remove the c file. This enables us to do a step-by-step replacement of the table. Signed-off-by: Thomas Helland <thomashelland90@gmail.com> Reviewed-by: Timothy Arceri <timothy.arceri@collabora.com>
2016-09-06radeonsi: move sid.h/r600d_common.h to a common place.Dave Airlie1-0/+4
Step one to merging radv would be to move some files around. This only adds the include path to r600/radeonsi, because later we want to avoid having to add it to the generic target paths. Acked-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
2016-08-23aubinator: Add a new tool called Aubinator to the src/intel/tools folder.Kristian Høgsberg Kristensen1-0/+4
The Aubinator tool is designed to help the driver developers in debugging the driver functionality by decoding the data in the .aub files. Primary Authors of this tool are Damien Lespiau <damien.lespiau at intel.com> and Kristian Høgsberg Kristensen <krh at bitplanet.net>. v2: Review comments are incorporated by Sirisha Gandikota as below: 1) Make Makefile.am more crisp, reuse intel_aub.h from libdrm (per Emil) 2) Aubinator will use platform name instead of GEN number (per Matt) 3) Disassmebler gets created based on pciid rather then GEN number (per Matt) 4) Other formatting comments (per Ken, Matt and Emil) Signed-off-by: Sirisha Gandikota <Sirisha.Gandikota@intel.com> Acked-by: Kenneth Graunke <kenneth@whitecape.org> Acked-by: Ben Widawsky <ben@bwidawsk.net>
2016-07-23glsl: reuse main extension table to appropriately restrict extensionsIlia Mirkin1-0/+1
Previously we were only restricting based on ES/non-ES-ness and whether the overall enable bit had been flipped on. However we have been adding more fine-grained restrictions, such as based on compat profiles, as well as specific ES versions. Most of the time this doesn't matter, but it can create awkward situations and duplication of logic. Here we separate the main extension table into a separate object file, linked to the glsl compiler, which makes use of it with a custom function which takes the ES-ness of the shader into account (thus allowing desktop shaders to properly use ES extensions that would otherwise have been disallowed.) We can also now use this logic to generate #define's for all supported extensions automatically, removing the duplicate (and often inaccurate) list in glcpp. The effect of this change should be nil in most cases. However in some situations, extensions like GL_ARB_gpu_shader5 which were formerly available in compat contexts on the GLSL side of things will now become inaccessible. This regresses two ES CTS tests: ES3-CTS.shaders.shader_integer_mix.define ES31-CTS.shader_integer_mix.define however that is due to them using #version 100 instead of 300 es. As the extension is only defined for ES3, I believe this is the correct behavior. Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com> (v2) v2 -> v3: integrate glcpp defines into the same mechanism
2016-07-05automake: don't mandate git_sha1.h/MESA_GIT_SHA1Emil Velikov1-10/+3
It has proven subtle to get it right both from the build side POV (see commit list below) and builders due to their varying workflows. Furthermore it does not fully fulfil the reason why it was enforced - to detect uniqueness between different builds, in order to distinguish and invalidate Vulkan/GL caches. With that having a much better solution (previous commit) we can drop this solution. This effectively reverts the following commits: 359d9dfec33 ("mesa: automake: add directory prefix for git_sha1.h") 2c424e00c39 ("mesa: automake: ensure that git_sha1.h.tmp has the right attributes") b7f7ec78435 ("mesa: automake: distclean git_sha1.h when building OOT") 8229fe68b5d ("automake: get in-tree `make distclean' working again.") Cc: Timo Aaltonen <tjaalton@debian.org> Cc: Haixia Shi <hshi@chromium.org> Cc: Jason Ekstrand <jason@jlekstrand.net> Cc: mesa-stable@lists.freedesktop.org Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Reviewed-by: Eric Engestrom <eric.engestrom@imgtec.com>
2016-06-13automake: get in-tree `make distclean' working again.Emil Velikov1-1/+1
With earlier commit we've handled the `make distclean' out of tree build, yet we failed to attribute that for in-tree builds the test condition will return 1. Thus effectively the target will be considered as "failed". Fixes: b7f7ec78435 ("mesa: automake: distclean git_sha1.h when building OOT") Cc: <mesa-stable@lists.freedesktop.org> Tested-by: Andy Furniss <adf.lists@gmail.com> Reported-by: Andy Furniss <adf.lists@gmail.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2016-06-07mesa: automake: distclean git_sha1.h when building OOTEmil Velikov1-0/+6
In the case of out-of-tree (OOT) builds, in particular when building from tarball, we'll end up with the file in both srcdir and builddir. We want the former to remain intact (since we need it on rebuild) while the latter should be removed otherwise `make distclean' gets angry at us. Ideally there'll be a solution that feels a bit less of a hack. Until then this does the job exactly as expected. Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2016-06-07mesa: automake: ensure that git_sha1.h.tmp has the right attributesEmil Velikov1-0/+1
... when copied from git_sha1.h. As the latter file can we lacking the write attribute, one should set it explicitly. Otherwise we'll get a warning/failure at cleanup stage. Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2016-06-07mesa: automake: add directory prefix for git_sha1.hEmil Velikov1-1/+1
Otherwise the build will assume that we've talking about builddir, which is not the case in the else statement. Here the file is already generated and is part of the tarball. Cc: <mesa-stable@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2016-06-02automake: bring back the .PHONY git_sha1.h.tmp ruleEmil Velikov1-2/+17
With earlier commit 3689ef32afd ("automake: rework the git_sha1.h rule, include in tarball") we/I erroneously removed the PHONY rule and the temporary file. The former is used to ensure that the header is regenerated when on each make invocation, while the latter helps us avoid the unneeded rebuild(s) when the SHA1 hasn't changed. Reported-by: Grazvydas Ignotas <notasas@gmail.com> Tested-by: Grazvydas Ignotas <notasas@gmail.com> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2016-05-30automake: rework the git_sha1.h rule, include in tarballEmil Velikov1-17/+3
As we'll need the file in the release tarball, rework the rule so that the file is regenerated _only_ if we're in a git repository. With this in place we can build vulkan (anv) from a release tarball. Cc: Jason Ekstrand <jason.ekstrand@intel.com> Cc: Kristian Høgsberg Kristensen <krh@bitplanet.net> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2016-05-30automake: move the git_sha1.h rule a level upEmil Velikov1-0/+25
This way we can reuse the header from other places like - src/intel/vulkan and src/gallium. Only the former is hooked up atm. Make sure .gitignore is updated, as well as all the users (the mesa code does not need any changes). Also ensure that the file is always created by adding it to the BUILT_SOURCES target. Cc: Jason Ekstrand <jason.ekstrand@intel.com> Cc: Kristian Høgsberg Kristensen <krh@bitplanet.net> Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2016-05-01automake: tweak SUBDIR reorder and comment itEmil Velikov1-1/+8
It should ease people with all the interaction and platforms and how they interact (at least from a build POV) with each other. Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Acked-by: Jason Ekstrand <jason@jlekstrand.net>
2016-05-01automake: drop "EGL_" from HAVE_EGL_PLATFORM_WAYLANDEmil Velikov1-1/+1
Analogous to previous commit. Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2016-05-01automake: include vulkan subdir after wayland-drmEmil Velikov1-5/+5
We'll reuse the existing wayland-drm static library with next commit. Signed-off-by: Emil Velikov <emil.velikov@collabora.com>
2016-04-21i965: Add a dependency on libislJason Ekstrand1-4/+9
To avoid build issues, ensure that you're running `make' at the top level and/or you've executed `make clean' beforehand. Reviewed-by: Chad Versace <chad.versace@intel.com>
2016-04-14configure: Add initial support for enabling Vulkan driversJason Ekstrand1-1/+1
2016-02-18Move the intel vulkan driver to src/intel/vulkanJason Ekstrand1-1/+0
2016-02-18Move isl to src/intelJason Ekstrand1-1/+0
2016-02-18vulkan: Move XML and generator into src/intel/genxmlJason Ekstrand1-0/+1
2016-02-05Merge commit mesa-public/master into vulkanJason Ekstrand1-1/+4
This pulls in the patches that move all of the compiler stuff around
2016-01-26glsl: move to compiler/Emil Velikov1-1/+1
Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Acked-by: Matt Turner <mattst88@gmail.com> Acked-by: Jose Fonseca <jfonseca@vmware.com>
2016-01-26compiler: introduce a libcompiler static libraryEmil Velikov1-0/+3
Currently it's an empty library, although it'll be used to store common code between GLSL and NIR that is compiler specific (rather than generic as the one in src/util). XXX: strictly speaking we could add a python/mako parser to generate the relevant files instead including builtin_type_macros.h in such a manner. Signed-off-by: Emil Velikov <emil.velikov@collabora.com> Acked-by: Matt Turner <mattst88@gmail.com> Acked-by: Jose Fonseca <jfonseca@vmware.com>
2015-12-15isl: Move it a standalone directoryChad Versace1-0/+1
The plan all along was to eventualyl move isl out of the Vulkan directory, because I intended i965 and anvil to share it. A small problem I encountered when attempting to write unit tests for isl precipitated the move. I discovered that it's easier to get isl unit tests to build if I remove the extra, unneeded dependencies injected by src/vulkan/Makefile.am. And the easiest way to remove those unneeded dependencies is to move isl out of src/vulkan. (Unit tests come in subsequent commits).
2015-10-19Merge remote-tracking branch 'mesa-public/master' into vulkanJason Ekstrand1-1/+0
2015-10-09glsl: move shader_enums into nirRob Clark1-1/+0
First step towards inverting the dependency between glsl and nir (so nir can be used without glsl). Also solves this issue with 'make distclean' Making distclean in mesa make[2]: Entering directory '/mnt/sdb1/Src64/Mesa-git/mesa/src/mesa' Makefile:2486: ../glsl/.deps/shader_enums.Plo: No such file or directory make[2]: *** No rule to make target '../glsl/.deps/shader_enums.Plo'. Stop. make[2]: Leaving directory '/mnt/sdb1/Src64/Mesa-git/mesa/src/mesa' Makefile:684: recipe for target 'distclean-recursive' failed make[1]: *** [distclean-recursive] Error 1 make[1]: Leaving directory '/mnt/sdb1/Src64/Mesa-git/mesa/src' Makefile:615: recipe for target 'distclean-recursive' failed make: *** [distclean-recursive] Error 1 Reported-by: Andy Furniss <adf.lists@gmail.com> Reviewed-by: Emil Velikov <emil.velikov@collabora.com> Signed-off-by: Rob Clark <robclark@freedesktop.org>
2015-10-01Merge branch 'master' of ../mesa into vulkanKristian Høgsberg Kristensen1-0/+1
2015-09-16glsl: shader-enum to name debug fxnsRob Clark1-0/+1
Signed-off-by: Rob Clark <robclark@freedesktop.org> Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
2015-08-17Merge remote-tracking branch 'mesa-public/master' into vulkanJason Ekstrand1-9/+1
2015-07-22automake: rework the EGL buildEmil Velikov1-7/+1
Simplify things by merging the two makefiles. This way we can combine the duplicated HAVE_PLATFORM_ checks, and build the library without having a separate static library. v2: use $() when referencing variables, use correct define (Matt) Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
2015-06-26mesa: Enable subdir-objects globally.Matt Turner1-2/+0
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
2015-06-23Merge remote-tracking branch 'mesa-public/master' into vulkanJason Ekstrand1-1/+2
2015-06-12mesa; add a dummy _mesa_error_no_memory() symbol to libglsl_utilEmil Velikov1-1/+2
Rather than forcing everyone to provide their own definition of the symbol provide a common (dummy) one. This helps us resolve the build of the standalone pipe-drivers (amongst others), which are missing the symbol. Cc: Rob Clark <robclark@freedesktop.org> Cc: "10.6" <mesa-stable@lists.freedesktop.org> Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
2015-05-09Add vulkan driver for BDWKristian Høgsberg1-0/+4