summaryrefslogtreecommitdiffstats
path: root/configure.ac
Commit message (Collapse)AuthorAgeFilesLines
* loader: add optional /sys filesystem method for PCI identification.Gary Wong2014-05-291-11/+25
| | | | | | | | | | | | Introduce a simple PCI identification method of looking up the answer the /sys filesystem (available on Linux). Attempted after libudev, but before DRM. Disabled by default (available only when the --enable-sysfs configure option is specified). Signed-off-by: Gary Wong <[email protected]> Acked-by: Emil Velikov <[email protected]>
* targets/opencl: Fix (static) linking with LLVM (v2)Kai Wasserbäch2014-05-251-0/+7
| | | | | | | | | | | | | | | | | | | | | | Without this, I get linking failures (static linking). The static linking is sort of required for me, because otherwise Steam and applications using the Steam runtime regularily fail because my LLVM was compiled and linked against a newer libgcc_s, libstdc++, etc. and uses features from those newer versions. And instead of Steam just not starting, my X starts crashing, whenever libGL fails to load a (32 bit) driver. Since I hate crashes of X and I don't think Valve/Steam will behave like a proper distribution soon (rebuilds versus current Debian Testing, since they base their Steam OS off that), I need a radeonsi which carries its own LLVM within and doesn't care about what the runtime sets. This means linking Mesa statically. v1 → v2: Move logic to configure.ac Acked-by: Emil Velikov <[email protected]> Signed-off-by: Kai Wasserbäch <[email protected]>
* Fix build of appleglxJon TURNEY2014-05-231-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Define GLX_USE_APPLEGL, as config/darwin used to, to turn on specific code to use the applegl direct renderer Convert src/glx/apple/Makefile to automake Since the applegl libGL is now built by linking libappleglx into libGL, rather than by linking selected files into a special libGL: - Remove duplicate code in apple/glxreply.c and apple/apple_glx.c. This makes apple/glxreply.c empty, so remove it - Some indirect rendering code is already guarded by !GLX_USE_APPLEGL, but we need to add those guards to indirect_glx.c, indirect_init.c (via it's generator), render2.c and vertarr.c so they don't generate anything Fix and update various includes glapi_gentable.c (which is only used on darwin), should be included in shared glapi as well, to provide _glapi_create_table_from_handle() Note that neither swrast nor indirect is supported in the APPLEGL path at the moment, which makes things more complex than they need to be. More untangling is needed to allow that v2: Correct apple/Makefile.am for srcdir != builddir Signed-off-by: Jon TURNEY <[email protected]> Reviewed-by: Jeremy Huddleston Sequoia <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* Make DRI dependencies and build depend on the targetJon TURNEY2014-05-231-16/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Don't require xcb-dri[23] etc. if we aren't building for a target with DRM, as we won't be using dri[23] - Enable a more fine-grained control of what DRI code is built, so that a libGL using direct swrast can be built on targets which don't have DRM. The HAVE_DRI automake conditional is retired in favour of a number of other conditionals: HAVE_DRI2 enables building of code using the DRI2 interface (and possibly DRI3 with HAVE_DRI3) HAVE_DRISW enables building of DRI swrast HAVE_DRICOMMON enables building of target-independent DRI code, and also enables some makefile cases where a more detailled decision is made at a lower level. HAVE_APPLEDRI enables building of an Apple-specific direct rendering interface, still which requires additional fixing up to build properly. v2: Place xfont.c and drisw_glx.c into correct categories. Update 'make check' as well Signed-off-by: Jon TURNEY <[email protected]> Reviewed-by: Jeremy Huddleston Sequoia <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* Fix build for darwinJon TURNEY2014-05-231-0/+44
| | | | | | | | | | | | | | | | | | | Fix build for darwin, when ./configured --disable-driglx-direct - darwin ld doesn't support -Bsymbolic or --version-script, so check if ld supports those options before using them - define GLX_ALIAS_UNSUPPORTED as config/darwin used to, as aliasing of non-weak symbols isn't supported - default to -with-dri-drivers=swrast v2: Use -Wl,-Bsymbolic, as before, not -Bsymbolic Test that ld --version-script works, rather than just looking for it in ld --help Don't use -Wl,--no-undefined on darwin, either Signed-off-by: Jon TURNEY <[email protected]> Reviewed-by: Jeremy Huddleston Sequoia <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* configure.ac: Do not enable -Wl,--no-undefined on Mac OS X.Vinson Lee2014-05-211-1/+1
| | | | | | | | | | | | This patch fixes this build error on Mac OS X. CCLD libglapi.la clang: warning: argument unused during compilation: '-pthread' clang: warning: argument unused during compilation: '-pthread' ld: unknown option: --no-undefined clang: error: linker command failed with exit code 1 (use -v to see invocation) Signed-off-by: Vinson Lee <[email protected]>
* configure.ac: Remove -fstack-protector-strong from LLVM flags.Vinson Lee2014-05-211-1/+2
| | | | | | | | | | | | -fstack-protector-strong is not supported by clang. This patch fixes this build error on Fedora 20 with clang. CXX gallivm/lp_bld_debug.lo clang: error: unknown argument: '-fstack-protector-strong' Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=75010 Signed-off-by: Vinson Lee <[email protected]>
* gallium/radeon: link in libradeon.la at target levelEmil Velikov2014-05-151-0/+2
| | | | | | | | | | | | It makes more sense to link the core and common parts of the driver as the target is build. Additionally this will help us drop duplicating symbols for targets that static link mulitple pipe-drivers. Only egl-static needs that currently with more to come. To simplify things a bit add HAVE_GALLIUM_RADEON_COMMON variable. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* configure: correctly set LD_NO_UNDEFINEDEmil Velikov2014-05-141-0/+13
| | | | | | | | | | | Commit 11623be934f85 was meant to have this hunk, which I accidently dropped during git rebase. Cc: 10.2 <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Julien Cristau <[email protected]> Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Jonathan Gray <[email protected]>
* configure: Require LLVM 3.1.José Fonseca2014-05-141-0/+6
| | | | Reviewed-by: Roland Scheidegger <[email protected]>
* configure: error out if building GBM without driEmil Velikov2014-05-101-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: https://bugs.freedesktop.org/show_bug.cgi?id=78225 Cc: "10.1 10.2" <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
* configure.ac: Add LLVM_VERSION_PATCH to DEFINESTom Stellard2014-05-091-1/+7
| | | | | | Reviewed-by: Michel Dänzer <[email protected]> CC: "10.1 10.2" <[email protected]>
* configure.ac: radeonsi requires EGL_DRM and GBMMarek Olšák2014-05-061-0/+14
| | | | Reviewed-by: Michel Dänzer <[email protected]>
* configure: bump up libdrm_radeon requirement to 2.4.54Alex Deucher2014-05-021-1/+1
| | | | | | Required for Mullins. Signed-off-by: Alex Deucher <[email protected]>
* targets/omx: add nouveau targetEmil Velikov2014-05-021-1/+2
| | | | Signed-off-by: Emil Velikov <[email protected]>
* Check for dladdr(), rather than assuming we have it if we have RTLD_DEFAULTJon TURNEY2014-04-281-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 <[email protected]> Signed-off-by: Jon TURNEY <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
* automake: cleanup pipe-loader handling when using sw/xlib winsysEmil Velikov2014-04-251-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 <[email protected]>
* pipe-loader: conditionally build and use pipe_loader_sw_probe_driEmil Velikov2014-04-251-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 <[email protected]> Reported-by: Brian Paul <[email protected]> Signed-off-by: Emil Velikov <[email protected]>
* configure.ac: require libdrm_radeon 2.4.53Marek Olšák2014-04-101-1/+1
| | | | We need latest radeon_drm.h.
* Partially revert "st/xa: Fix advertized version number and try to avoid ↵Emil Velikov2014-04-091-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 configure.ac. 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 <[email protected]> Reviewed-by: Thomas Hellstrom <[email protected]>
* egl/build: Drop two unnecessary Makefiles.Matt Turner2014-04-071-2/+0
| | | | Acked-by: Emil Velikov <[email protected]>
* configure: don't require libudev for gbm or egl drm/waylandJonathan Gray2014-04-051-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 <[email protected]> Cc: "10.1" <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* automake: move GALLIUM_DRI_LIB_DEPS to Automake.incEmil Velikov2014-04-051-3/+0
| | | | | | | | | | | | | | | With recent commit we started de-duplicating all of the compiler/ linker flags moving their handling inside Automake.inc. 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 configure.ac. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=76848 Tested-by: Vinson Lee <[email protected]> Signed-off-by: Emil Velikov <[email protected]>
* configure.ac: fix the detection of expat with pkg-configJohannes Nixdorf2014-04-051-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" <[email protected]> Reviewed-by: Matt Turner <[email protected]> Reviewed-by: Emil Velikov <[email protected]>
* st/xa: Fix advertized version number and try to avoid future discrepanciesThomas Hellstrom2014-04-041-0/+1
| | | | | | | | | | The xa version number had to be set in two places. In configure.ac 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 configure.ac Signed-off-by: Thomas Hellstrom <[email protected]> Reviewed-by: Rob Clark <[email protected]>
* automake: ask the linker to do garbage collectionEmil Velikov2014-03-311-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 <[email protected]> Acked-by: Matt Turner <[email protected]> (v1)
* configure: autodetect video state-trackers when non swrast driver is presentEmil Velikov2014-03-311-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 <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* configure: use grep in quiet mode, rather than piping stderr/stdout to /dev/nullEmil Velikov2014-03-311-6/+6
| | | | | | | grep -q is easier to read and consistent with the rest of configure.ac. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* configure: error out when building gallium-osmesa without softpipeEmil Velikov2014-03-311-2/+2
| | | | | | | | Gallium osmesa links against the softpipe driver, thus the build will fail if it's missing. Signed-off-by: Emil Velikov <[email protected]> Acked-by: Matt Turner <[email protected]>
* Partially revert "automake: allow only shared builds"Emil Velikov2014-03-311-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 <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* configure: enable dri3 only for linuxEmil Velikov2014-03-311-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: https://bugs.freedesktop.org/show_bug.cgi?id=76377 Cc: "10.1" <[email protected]> Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Ian Romanick <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* mapi/glapi: Use ElementTree instead of libxml2.José Fonseca2014-03-261-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 <[email protected]>
* Revert "build: llvm libs may not be in system search path, add rpath"Ilia Mirkin2014-03-251-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: https://bugs.freedesktop.org/show_bug.cgi?id=76082 Reviewed-by: Tom Stellard <[email protected]> Signed-off-by: Ilia Mirkin <[email protected]>
* automake: allow only shared buildsEmil Velikov2014-03-111-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 <[email protected]> Reviewed-by: Jon TURNEY <[email protected]>
* configure: update enable-llvm-shared-libs commentsEmil Velikov2014-03-111-13/+10
| | | | | | | | | | | - As of commit cb080a10b68(configure.ac: 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 <[email protected]> Reviewed-by: Jon TURNEY <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* configure: read libomxil-bellagio.pc only when it existsEmil Velikov2014-03-111-1/+6
| | | | | | | | Currenly configure.ac will print a warning when one is missing the package. Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Jon TURNEY <[email protected]> Reviewed-by: Christian König <[email protected]>
* automake: create compat symlinks only for linux systemsEmil Velikov2014-03-111-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*links.mk Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=63269 Signed-off-by: Emil Velikov <[email protected]> Reviewed-by: Jon TURNEY <[email protected]> (v1) Reviewed-by: Christian König <[email protected]>
* configure: use LIB_EXT rather than hardcoded .soEmil Velikov2014-03-111-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 <[email protected]> Reviewed-by: Jon TURNEY <[email protected]>
* configure: remove old makefile variablesEmil Velikov2014-03-111-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 <[email protected]> Reviewed-by: Jon TURNEY <[email protected]>
* configure: Fix bashism.Eric Anholt2014-03-051-1/+1
| | | | | | /bin/sh defaults to dash on debian. Reviewed-by: Brian Paul <[email protected]>
* dri: Require libudev-dev for building DRI on Linux.Eric Anholt2014-03-041-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: https://bugs.freedesktop.org/show_bug.cgi?id=75212 Reviewed-by: Matt Turner <[email protected]>
* configure: s/--with-llvm-shared-libs/--enable-llvm-shared-libs/José Fonseca2014-03-041-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.
* Revert "configure: use enable_dri_glx local variable"Emil Velikov2014-03-041-9/+6
| | | | | | | This reverts commit dfe8cb48fc13587afb2d829c29432c0eacd0aba3. Accidently pushed this commit, over 1bb23abe065(configure: disable shared glapi when building xlib powered glx).
* configure: disable shared glapi when building xlib powered glxEmil Velikov2014-03-041-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 ./autogen.sh --enable-xlib-glx --disable-dri --with-gallium-drivers=swrast Cc: Brian Paul <[email protected]> Reported-by: Brian Paul <[email protected]> Signed-off-by: Emil Velikov <[email protected]>
* configure: Remove more flags from llvm-configBruno Jiménez2014-03-031-1/+8
| | | | | | | This way, we are left with only the preprocessor flags and '-std=X' Reviewed-by: Francisco Jerez <[email protected]> Reviewed-by: Tom Stellard <[email protected]>
* configure.ac: consolidate dependencies version checkFabio Pedretti2014-03-031-7/+14
| | | | Reviewed-by: Matt Turner <[email protected]>
* configure: use enable_dri_glx local variableEmil Velikov2014-02-281-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 <[email protected]>
* configure: enable the drm pipe-loader for non swrast driversEmil Velikov2014-02-281-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: https://bugs.freedesktop.org/show_bug.cgi?id=75453 Signed-off-by: Emil Velikov <[email protected]>
* configure: error out when building xa only with swrastEmil Velikov2014-02-281-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 <[email protected]>
* configure: avoid setting variables as empty stringsEmil Velikov2014-02-281-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 <[email protected]>