path: root/
AgeCommit message (Collapse)AuthorFilesLines
2014-05-16configure: correctly set LD_NO_UNDEFINEDEmil Velikov1-0/+13
Commit 11623be934f85 was meant to have this hunk, which I accidently dropped during git rebase. Cc: 10.2 <> Signed-off-by: Emil Velikov <> Reviewed-by: Julien Cristau <> Reviewed-by: Matt Turner <> Reviewed-by: Jonathan Gray <> (cherry picked from commit f57d092199318f03f6522d0ca616f1f8220b2e6e)
2014-05-09configure: error out if building GBM without driEmil Velikov1-0/+7
Both backends require --enable-dri, and building an empty libgbm makes little to no sense. Error out at configure to prevent the user from shooting themselves in the foot. Bugzilla: Cc: "10.1 10.2" <> Signed-off-by: Emil Velikov <> Reviewed-by: Kenneth Graunke <> (cherry picked from commit e477d12c3396ded1607b6f57c15e100ca08f44f5) Add LLVM_VERSION_PATCH to DEFINESTom Stellard1-1/+7
Reviewed-by: Michel Dänzer <> CC: "10.1 10.2" <> (cherry picked from commit c5d000832579c17fdeff7ec8aaf7430d9b2e1049)
2014-05-02configure: bump up libdrm_radeon requirement to 2.4.54Alex Deucher1-1/+1
Required for Mullins. Signed-off-by: Alex Deucher <>
2014-05-02targets/omx: add nouveau targetEmil Velikov1-1/+2
Signed-off-by: Emil Velikov <>
2014-04-28Check for dladdr(), rather than assuming we have it if we have RTLD_DEFAULTJon TURNEY1-0/+6
Unfortunately, Cygwin defines RTLD_DEFAULT (for glibc compatibility), but can't provide dladdr(), so add a check for dladdr() Since I don't think scons is ever used to build for Cygwin, just set HAVE_DLADDR in SConscript, assuming that if we have RTLD_DEFAULT, we have dladdr(). Cc: Jonathan Gray <> Signed-off-by: Jon TURNEY <> Reviewed-by: Eric Anholt <>
2014-04-25automake: cleanup pipe-loader handling when using sw/xlib winsysEmil Velikov1-4/+1
Rather than defining our own set of variables, use NEED_WINSYS_XLIB and based on it include the sw/xlib winsys. Signed-off-by: Emil Velikov <>
2014-04-25pipe-loader: conditionally build and use pipe_loader_sw_probe_driEmil Velikov1-0/+4
The function relies on the sw/dri winsys which is build only when --enable-dri is set. Fixes build issues with the following config ./configure --disable-dri --with-gallium-drivers=svga --enable-xa Issue can be reproduced with any hw gallium driver + st that uses the pipe-loader. Cc: Brian Paul <> Reported-by: Brian Paul <> Signed-off-by: Emil Velikov <> require libdrm_radeon 2.4.53Marek Olšák1-1/+1
We need latest radeon_drm.h.
2014-04-09Partially revert "st/xa: Fix advertized version number and try to avoid ↵Emil Velikov1-4/+8
future discrepancies" This reverts commit 61bedc3d6b08943f015f9d590c07a6af36c2a92c. As the header is the one defining the API/ABI and is distributed during installation, we should be using it rather than re-defining the XA version in Bump the version in the header to 2.2.0, to reflect what was the original intent of commit 42158926c6d7d3ddbe61b9a04d60544ff1b50a96. Signed-off-by: Emil Velikov <> Reviewed-by: Thomas Hellstrom <>
2014-04-07egl/build: Drop two unnecessary Makefiles.Matt Turner1-2/+0
Acked-by: Emil Velikov <>
2014-04-05configure: don't require libudev for gbm or egl drm/waylandJonathan Gray1-5/+16
After the loader changes libudev is no longer required for gbm or the egl drm/wayland platforms. Lets these build/run on OpenBSD. v2: preserve the libudev requirement for Linux as suggested by Emil Velikov. Signed-off-by: Jonathan Gray <> Cc: "10.1" <> Reviewed-by: Emil Velikov <>
2014-04-05automake: move GALLIUM_DRI_LIB_DEPS to Automake.incEmil Velikov1-3/+0
With recent commit we started de-duplicating all of the compiler/ linker flags moving their handling inside This did not take into consideration that the above variable was set at configure time, leading to issues on certain build combinations. Move the variable to where it's used/handled thus cleaning up Bugzilla: Tested-by: Vinson Lee <> Signed-off-by: Emil Velikov <> fix the detection of expat with pkg-configJohannes Nixdorf1-1/+1
The pkg-config module was called "EXPAT" instead of "expat" in PKG_CHECK_EXISTS. This seems to have been wrong because the wrong argument was copied from PKG_CHECK_MODULES. Cc: "10.0" "10.1" <> Reviewed-by: Matt Turner <> Reviewed-by: Emil Velikov <>
2014-04-04st/xa: Fix advertized version number and try to avoid future discrepanciesThomas Hellstrom1-0/+1
The xa version number had to be set in two places. In and in xa_tracker.h. Furthermore, xa_tracker.h is an installed header so we can't use mesa internal defines. So therefore, at configure time, modify the xa_tracker.h header to use the version given by Signed-off-by: Thomas Hellstrom <> Reviewed-by: Rob Clark <>
2014-03-31automake: ask the linker to do garbage collectionEmil Velikov1-0/+16
By doing GC the linker removes all the symbols that are not referenced and/or used by the final library. This results in a saving of ~100K up-to ~600K per (stripped) binary (classic vs gallium drivers). If interested one can ask the compiler to print the sections that are removed using -Wl,--print-gc-sections. v2: Check if ld supports the flag before using it. Signed-off-by: Emil Velikov <> Acked-by: Matt Turner <> (v1)
2014-03-31configure: autodetect video state-trackers when non swrast driver is presentEmil Velikov1-1/+1
It makes little sense to enable the vdpau, xvmc and omx state-trackers as they do not make use of (don't work with) the software driver. Signed-off-by: Emil Velikov <> Reviewed-by: Matt Turner <>
2014-03-31configure: use grep in quiet mode, rather than piping stderr/stdout to /dev/nullEmil Velikov1-6/+6
grep -q is easier to read and consistent with the rest of Signed-off-by: Emil Velikov <> Reviewed-by: Matt Turner <>
2014-03-31configure: error out when building gallium-osmesa without softpipeEmil Velikov1-2/+2
Gallium osmesa links against the softpipe driver, thus the build will fail if it's missing. Signed-off-by: Emil Velikov <> Acked-by: Matt Turner <>
2014-03-31Partially revert "automake: allow only shared builds"Emil Velikov1-7/+22
Evidently at least static OSMesa is still used as shared one causes substantial increase in the load time for some programs that use it (from seconds up-to ~30min). Rather than forcing everyone to use shared mesa, revert commit a6efbac9fb502c4f0166e7a0680b6828e1f6926c and default to shared build when both shared and static are disabled. v2: Whitespace cleanup, drop silly comment. Reported-by: Burlen Loring <> Reviewed-by: Matt Turner <>
2014-03-31configure: enable dri3 only for linuxEmil Velikov1-6/+12
Currently only linux can make use of dri3, so it would make sense to enable it explicitly for the platform. Drop a duplicated libudev check while we're at it. v3: Properly handle dri3 and reword commit message. Bugzilla: Cc: "10.1" <> Signed-off-by: Emil Velikov <> Reviewed-by: Ian Romanick <> Reviewed-by: Matt Turner <>
2014-03-26mapi/glapi: Use ElementTree instead of libxml2.José Fonseca1-1/+0
It is quite hard to meet the dependency of the libxml2 python bindings outside Linux, and in particularly on MacOSX; whereas ElementTree is part of Python's standard library. ElementTree is more limited than libxml2: no DTD verification, defaults from DTD, or XInclude support, but none of these limitations is serious enough to justify using libxml2. In fact, it was easier to refactor the code to use ElementTree than to try to get libxml2 python bindings. In the process, gl_item_factory class was refactored so that there is one method for each kind of object to be created, as it simplifies things substantially. I confirmed that precisely the same output is generated for GL/GLX/GLES. v2: Remove m4/ax_python_module.m4 as suggested by Matt Turner. Reviewed-by: Ian Romanick <>
2014-03-25Revert "build: llvm libs may not be in system search path, add rpath"Ilia Mirkin1-1/+0
This reverts commit d9b983519c63b9072677364a6e399d213a1855e5. Unfortunately it seems like rpath is evaluated before LD_LIBRARY_PATH, so this breaks e.g. steam, as well as any other user of that env var, if the llvm path happens to be where other libs also reside. Bugzilla: Reviewed-by: Tom Stellard <> Signed-off-by: Ilia Mirkin <>
2014-03-11automake: allow only shared buildsEmil Velikov1-38/+18
Static and shared builds were possible in the good old days of static makefiles. Currently the build system does not distinguish nor does anything special when one requests a static build. Print a warning message for the packager that static builds are not supported and continue building shared libs. Currently only Debian and derivatives use static build, and they use it for building a Xlib powered libGL. This patch will only change the warning message they are seeing but the binaries produced will be identical. Signed-off-by: Emil Velikov <> Reviewed-by: Jon TURNEY <>
2014-03-11configure: update enable-llvm-shared-libs commentsEmil Velikov1-13/+10
- As of commit cb080a10b68( Don't require shared LLVM when building OpenCL) opencl does not mandate using shared llvm. - Add a warning message that building with static llvm may cause compilation problems. Signed-off-by: Emil Velikov <> Reviewed-by: Jon TURNEY <> Reviewed-by: Tom Stellard <>
2014-03-11configure: read libomxil-bellagio.pc only when it existsEmil Velikov1-1/+6
Currenly will print a warning when one is missing the package. Signed-off-by: Emil Velikov <> Reviewed-by: Jon TURNEY <> Reviewed-by: Christian König <>
2014-03-11automake: create compat symlinks only for linux systemsEmil Velikov1-0/+12
The primary users of these are linux developers, although it can be extended for *BSD and others if needed. Fixes make install for Cygwin and OpenBSD at least. v2: - Wrap vdpau targets as well. v3: - Fold HAVE_COMPAT_SYMLINKS conditional within install* Bugzilla: Signed-off-by: Emil Velikov <> Reviewed-by: Jon TURNEY <> (v1) Reviewed-by: Christian König <>
2014-03-11configure: use LIB_EXT rather than hardcoded .soEmil Velikov1-5/+8
Some platforms different library extension - dll, dylib, a. Honor that when we are creating the required links. Rename LIB_EXTENSION to LIB_EXT while we're here. With libglapi linking aside, building classic drivers on non-linux platforms should be possible now. v2: Resolve conflicts. Signed-off-by: Emil Velikov <> Reviewed-by: Jon TURNEY <>
2014-03-11configure: remove old makefile variablesEmil Velikov1-36/+0
All the variables were used before the automake conversion and do not make sense (nor are used) currently. Replace GL_LIB_NAME with lib$(GL_LIB).$(LIB_EXTENSION) for apple-glx. The build has been broken for ages, but this will ease the recovery process as it happens. Signed-off-by: Emil Velikov <> Reviewed-by: Jon TURNEY <>
2014-03-05configure: Fix bashism.Eric Anholt1-1/+1
/bin/sh defaults to dash on debian. Reviewed-by: Brian Paul <>
2014-03-04dri: Require libudev-dev for building DRI on Linux.Eric Anholt1-0/+4
The loader infrastructure for everything but DRI2 requires that udev be present, so we can figure out an appropriate driver from the fd. We don't have a portable solution yet, but presumably it will have similar lookup based on the device node. It will also be even more required for krh's udev-based hwdb support, which lets us have a loader that actually loads DRI drivers not included in the loader's source distribution. Bugzilla: Reviewed-by: Matt Turner <>
2014-03-04configure: s/--with-llvm-shared-libs/--enable-llvm-shared-libs/José Fonseca1-2/+2
`--enable-llvm-shared-libs` option was recently renamed as `--with-llvm-shared-libs`, but several error messages still mention the old option, causing confusing. Trivial.
2014-03-04Revert "configure: use enable_dri_glx local variable"Emil Velikov1-9/+6
This reverts commit dfe8cb48fc13587afb2d829c29432c0eacd0aba3. Accidently pushed this commit, over 1bb23abe065(configure: disable shared glapi when building xlib powered glx).
2014-03-04configure: disable shared glapi when building xlib powered glxEmil Velikov1-0/+6
With commit 0432aa064b(configure: use shared-glapi when more than one gl* API is used) we removed "disable shared-glapi when building without dri" hunk. In the good old days of classic mesa, dri and xlib-glx were mutually exclusive thus the hunk made sense. Currently enable-dri is used as a synonym for a range of things thus it's more appropriate to handle xlib-glx explicitly. Fixes a missing symbol '_glapi_Dispatch' in a xlib powered libGL, build using the following ./ --enable-xlib-glx --disable-dri --with-gallium-drivers=swrast Cc: Brian Paul <> Reported-by: Brian Paul <> Signed-off-by: Emil Velikov <>
2014-03-03configure: Remove more flags from llvm-configBruno Jiménez1-1/+8
This way, we are left with only the preprocessor flags and '-std=X' Reviewed-by: Francisco Jerez <> Reviewed-by: Tom Stellard <> consolidate dependencies version checkFabio Pedretti1-7/+14
Reviewed-by: Matt Turner <>
2014-02-28configure: use enable_dri_glx local variableEmil Velikov1-6/+9
GLX can be either dri or xlib based, while enable_dri is used in a variety of contexts. With enable_dri_glx the context is clearly visible. Signed-off-by: Emil Velikov <>
2014-02-28configure: enable the drm pipe-loader for non swrast driversEmil Velikov1-1/+3
All hardware drivers including the virtual vmwgfx require the drm pipe-loader in order to be properly loaded by xa, gbm and opencl. Note this does _not_ add support for the above three it only allows the pipe driver to be loaded by the library. Eg. GBM will now properly open the pipe-i915 driver, should one be working on the such hardware. Bugzilla: Signed-off-by: Emil Velikov <>
2014-02-28configure: error out when building xa only with swrastEmil Velikov1-0/+8
Building to provide accelration using swrast does not make sense. Note: update your build script to explicitly mention svga in the gallium drivers list, if you are building the vmwgfx xa library. v2: Update error message to provide more clarify, add an example. Signed-off-by: Emil Velikov <>
2014-02-28configure: avoid setting variables as empty stringsEmil Velikov1-3/+3
Recent patch converted our logic to use test -n and test -z. An emptry string variable (empty_str="") return true for both thus making the check unreliable. Fix this by correctly setting the variable when applicable. Signed-off-by: Emil Velikov <>
2014-02-28configure: avoid constantly building megadrivers 'core'Emil Velikov1-4/+7
The issue is caused by a thinko that an empty string will be considered of zero length by 'test'. This is not the case, thus we were building the 'core' of megadrivers even when no classic drivers were built. Signed-off-by: Emil Velikov <>
2014-02-25build: llvm libs may not be in system search path, add rpathIlia Mirkin1-0/+1
On my gentoo system, llvm libs are in /usr/lib64/llvm, and llvm-config --ldflags does not provide the rpath (it does, of course, provide a -L). This adds the llvm dir to the rpath. It should be harmless if the path is a system path, and should make things work when it's not. Signed-off-by: Ilia Mirkin <> Reviewed-by: Tom Stellard <> Tested-by: Emil Velikov <>
2014-02-24util: Add util_bswap64() v3Tom Stellard1-0/+1
v2: - Use __builtin_bswap64() - Remove unnecessary mask - Add util_le64_to_cpu() helper v3: - Remove unnecessary AC_SUBST Reviewed-by: Michel Dänzer <> Use AX_GCC_BUILTIN to check availability of __builtin_bswap32 v2Tom Stellard1-0/+4
v2: - Remove unnecessary AC_SUBST Reviewed-by: Matt Turner <>
2014-02-24configure: correctly report if we're building the sw/xlib winsysEmil Velikov1-0/+1
While looking at bug 75356, I've noticed that the presence of x11 egl platform pulls in sw/xlib as "needed" but fails to report so at the end of configure. Tested-by: Tom Stellard <> Signed-off-by: Emil Velikov <>
2014-02-24pipe-loader: wrap pipe_loader_sw_probe_xlib within HAVE_PIPE_LOADER_XLIBEmil Velikov1-0/+7
The above function implies using the the xlib winsys, which has additional library dependencies that should not be forced. Make the software xlib pipe loader optional thus avoid all the dependency hell. A user that wishes to use the particular pipe-loader would need to set the following within enable_gallium_xlib_loader=yes v2: - Wrap sw/xlib/xlib_sw_winsys.h to handle compilation on systems lacking X11 headers. Spotted by Christian Prochaska. Tested-by: Tom Stellard <> Bugzilla: Signed-off-by: Emil Velikov <>
2014-02-21configure: use shared-glapi when more than one gl* API is usedEmil Velikov1-6/+9
Current behaviour states that shared-glapi is usefull when building with dri, which is not the case. Shared-glapi is used to dispatch the gl* functions across the one or more gl api's which can be dri based but do not need to be. Fixed the following build ./configure --enable-gles2 --disable-dri --enable-gallium-egl \ --with-egl-platforms=fbdev --with-gallium-drivers=swrast Bugzilla: Signed-off-by: Emil Velikov <> Reviewed-by: Eric Anholt <>
2014-02-21configure: use default dri drivers whenever opengl and dri are enabledEmil Velikov1-8/+6
Commit ee55500c22a(configure: cleanup classic dri drivers handling) cleaned up the logic handling autodetection of dri drivers, but missed the case when one can explicitly disable dri, and still request opengl. Fixes build issues for the following ./ --disable-dri --with-gallium-drivers=swrast While we're here, explicitly clear with_dri_drivers whenever building without such drivers to prevent choking later on. v2: Simplify with_dri_drivers handling. Bugzilla: Signed-off-by: Emil Velikov <> Reviewed-by: Matt Turner <>
2014-02-19configure: Use LLVM shared libraries by defaultTom Stellard1-4/+4
Linking with LLVM static libraries is easily broken by changes to the llvm-config program or when LLVM adds, removes, or changes library components. Keeping up with these changes requires a lot of maintanence effort to keep the build working on the master and stable branches. Also, because of issues in the past LLVM static libraries, the release manager is currently configuring with --with-llvm-shared-libs when checking the build before release. Enabling shared libraries by default would allow the release manager to run ./configure with no arguments, and be reasonably confident that the build would succeed. Acked-by: Emil Velikov <>
2014-02-18configure: fix build error with XARob Clark1-0/+1
Fixes: xa_tracker.c: In function 'xa_tracker_create': xa_tracker.c:147:5: error: implicit declaration of function 'pipe_loader_drm_probe_fd' [-Werror=implicit-function-declaration] in some build configurations, as XA now implicitly depends on gallium_drm_loader. Signed-off-by: Rob Clark <> Reviewed-by: Jakob Bornecrantz <>