Commit Graph

468 Commits

Author SHA1 Message Date
nobled 2a50187a92 Make configure work with clang
It was mistaking clang for gcc and deciding its version
was too low.
2010-08-30 13:59:18 -07:00
Jon TURNEY e637f8b40c Add talloc to osmesa library dependencies
also link osmesa with C++ standard libraries, as it now contains C++ code

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2010-08-30 13:41:39 -07:00
Jon TURNEY 6356303de6 Add talloc to dependencies for libGL built with xlib driver
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2010-08-30 13:41:36 -07:00
Dave Airlie 37f0654fa5 r300g: rename radeong_dri.so to r300_dri.so
acked on irc by Corbin + Marek.
2010-08-25 06:10:01 +10:00
Eric Anholt 639cdd3782 mesa: AC_SUBST the talloc libs/cflags so the ./configure results are saved.
I had used pkg-config from the Makefile because I didn't want to screw
around with the non-autoconf build, but that doesn't work because the
PKG_CONFIG_PATH or TALLOC_LIBS/TALLOC_CFLAGS that people set at
configure time needs to be respected and may not be present at build
time.

Bug #29585
2010-08-22 17:36:51 -07:00
Ian Romanick 443a7e4e9a Merge branch 'master' into glsl2 2010-08-13 20:22:46 -07:00
Li Peng c33c1912dd configure: fix wrong variable name GLESv1_LIB_DEPS
GLESv1_CM_LIB_DEPS is defined in "configs/autoconf.in",
but configure.ac uses GLESv1_LIB_DEPS.

Signed-off-by: Li Peng <peng.li@linux.intel.com>
2010-07-30 08:52:58 -04:00
Eric Anholt afe125e0a1 Merge remote branch 'origin/master' into glsl2
This pulls in multiple i965 driver fixes which will help ensure better
testing coverage during development, and also gets past the conflicts
of the src/mesa/shader -> src/mesa/program move.

Conflicts:
	src/mesa/Makefile
	src/mesa/main/shaderapi.c
	src/mesa/main/shaderobj.h
2010-07-26 17:53:27 -07:00
Chia-I Wu 08f4bc07e4 st/egl: Fix build on FreeBSD.
There is no libdl on FreeBSD.  Based on patch from Thinker
<thinker@branda.to>, which is against 7.8.

This fixes fdo bug #29093.
2010-07-16 20:19:13 +08:00
Chia-I Wu 39ae965783 egl: Build egl_dri2 only when DRI drivers are built.
That is, build egl_dri2 only when --with-driver=dri is given (the
default).
2010-07-16 19:50:16 +08:00
Chia-I Wu bb217ba76a egl: Build egl_dri2 only when xcb-dri2 is available.
The driver does not build when xcb-dri2 is not available.
2010-07-16 19:41:29 +08:00
Thomas Balling Sørensen 3299997bcc vdpau changes 2010-07-14 00:36:17 +02:00
Jakob Bornecrantz 4f956889b7 st/xorg: When selecting st via configure make sure to test for xorg-server 2010-07-13 07:49:00 -07:00
Kristian Høgsberg 2168b87b51 egl_dri2: Support _EGL_PLATFORM_DRM
This lets the egl_dri2 driver initialize on just a DRM fd.
2010-07-08 20:10:37 -04:00
Chia-I Wu cf588ab3f1 st/egl: Add support for !GLX_DIRECT_RENDERING.
st/egl uses GLX code for DRI2 support.  It should honor
GLX_DIRECT_RENDERING.

Also updates configure.ac to define GLX_DIRECT_RENDERING for st/egl.
2010-07-06 15:27:09 +08:00
John Hein 9617254a1e Use GLUT_CFLAGS when building glut
Fix this build error (in MesaGLUT-7.6.1)...
glut_cmap.c:23:66: error: X11/Xmu/StdCmap.h: No such file or directory

...by not preventing the cflags that pkg-config finds for glut dependencies
(including 'xmu') from being used.

Defining GLUT_CFLAGS before running the pkg-config prevents the
cflags found by pkg-config from being used.

This patch lets GLUT_CFLAGS that configure & pkg-config work
so hard to set actually get used.

Also make sure the generated configs/autoconf defines GLUT_CFLAGS
used in (at least) src/glut/glx/Makefile.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2010-07-01 13:00:02 -07:00
Chia-I Wu d8e0e11456 st/egl: Reorganize targets.
Merge all targets into targets/egl/.  The target produces
egl_gallium_<HW>.so for each pipe driver and st_<API>.so for each client
APIs.  This enables us to further merge egl_gallium_<HW>.so into
egl_gallium.so later.
2010-06-29 17:16:20 +08:00
Jakob Bornecrantz a01e0afd9f Merge branch 'gallium-drm-driver-drescriptor'
Conflicts:
	src/gallium/state_trackers/egl/x11/native_dri2.c
	src/gallium/state_trackers/egl/x11/native_x11.c
	src/gallium/state_trackers/egl/x11/native_x11.h
	src/gallium/state_trackers/xorg/xorg_driver.c
	src/gallium/winsys/radeon/drm/radeon_drm.c
2010-06-28 21:14:45 +02:00
Eric Anholt 0a1b54df7a glsl2: Replace the GLSL compiler with the glsl2 project. 2010-06-24 17:23:21 -07:00
Corbin Simpson 2560978588 configure: Add galahad to default build. 2010-06-22 22:49:13 -07:00
Jakob Bornecrantz 23a915e2cf gallium: Drop sw drm winsys
Last user went away
2010-06-23 03:43:52 +02:00
Jakob Bornecrantz 7dce4f3c27 i915g: Create seperate option for i915g and i965g 2010-06-22 20:04:54 +02:00
Chia-I Wu da39d5d3b4 egl: s/EGL_DISPLAY/EGL_PLATFORM/.
A platform is already used to mean a window system in EGL.  No need to
use a different term.
2010-06-17 16:30:26 +08:00
Chia-I Wu 8f3e48ee2c st/egl: Build sw/fbdev winsys for fbdev backend.
Target egl_fbdev_swrast.so needs sw/fbdev/libfbdev.a.
2010-06-17 14:13:30 +08:00
Dan Nicholson cbf30fce32 osmesa: always build standalone for internal symbols
When building OSMesa and xlib GL, the resulting OSMesa would be linked
against libGL instead of the internal mesa libraries. However, when
building with -fvisibility=hidden, some of the internal functions used
in OSMesa could not be resolved through libGL.

Instead, always build OSMesa standalone without linking against libGL.
This has the advantage that OSMesa is always built the same way, but it
means that disk space is wasted when libGL is installed since both
libraries will contain the internal objects.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Tested-by: Tom Fogal <tfogal@alumni.unh.edu>
2010-06-16 09:23:17 -07:00
Eric Anholt 73de09f265 i965: Convert the binding table to streamed indirect state.
This slightly reduces reduces cairo-gl firefox-talos-gfx runtime on my
Ironlake:
before:
[ # ]  backend                         test   min(s) median(s) stddev. count
[  0]       gl            firefox-talos-gfx   38.236   38.383   0.43%    5/6
after:
[  0]       gl            firefox-talos-gfx   37.799   38.203   0.39%    6/6

It turns out the cost of caching these objects and looking them up in
the cache again is greater than the cost of just computing the object
again, particularly when the overhead of having a separate BO to pin
is removed.

(Those that are paying close attention will note that this is a
reversal of the path I was moving the driver in a couple of years ago.
The major thing that has changed is that back then all state was
recomputed when we wrapped the streaming state buffer, including
recompiling our precious programs.  Now, we're uncaching just the
objects that are cheap to compute, and retaining caching of expensive
objects)
2010-06-11 00:15:56 -07:00
Jakob Bornecrantz 0528106cc7 glew: Drop glew now that we don't need it for the progs
configs/beos           |    2 +-
 configs/darwin         |    2 +-
 configs/default        |    4 +-
 configs/freebsd-dri    |    2 +-
 configs/linux-cell     |    2 +-
 configs/linux-dri-xcb  |    2 +-
 configs/linux-indirect |    2 +-
 configure.ac           |    2 +-
 include/GL/glew.h      |14435 ------------------------------------------------
 include/GL/glxew.h     | 1476 -----
 include/GL/wglew.h     | 1247 -----
 src/SConscript         |    1 -
 src/glew/LICENSE.txt   |   73 -
 src/glew/Makefile      |   54 -
 src/glew/SConscript    |   69 -
 src/glew/glew.c        |14320 -----------------------------------------------
 src/glew/glewinfo.c    | 8441 ----------------------------
 src/glew/visualinfo.c  | 1173 ----
 18 files changed, 8 insertions(+), 41299 deletions(-)

Revert "glew: update to version 1.5.4"
This reverts commit a189b1c53b.

Revert "glew: Include X11 headers and libraries in SCons build."
This reverts commit efdd33985c.

Revert "scons: Fix GLEW build on Mac OS X."
This reverts commit 8f81769148.

Revert "scons: Use static glew library on Unices to avoid binary compatability issues"
This reverts commit de22c940a1.

Revert "glew: Update to version 1.5.2."
This reverts commit aaf7ecfd81.

Revert "scons: Build glew on all platforms."
This reverts commit 52eb3e4235.

Revert "scons: Put glut and glew shared libraries into build/xxx/bin or lib."
This reverts commit 8a318edd08.
Didn't revert scons/gallium.py

Revert "scons: Fix glew build on MSVC."
This reverts commit 14a8c9dac7.

Revert "scons: Build progs together with everything else."
This reverts commit 7bbf7f94ea.
Only changed src/glew/SConscript

Revert "mesa: include glew headers in MesaDemos tarballs"
This reverts commit c57d81ddc9.

Revert "mesa: include GLEW sources in MesaDemos tarball"
This reverts commit b9e2e32daf.

Revert "glew: correct misspelling of glFramebufferTextureLayer"
This reverts commit 1b05b5b4fe.

Revert "glew: fix GLEW_LIB_NAME"
This reverts commit c10df26a31.

Revert "Add dummy install target for glew to fix 'make install'"
This reverts commit c273dfe6a2.

Revert "autoconf: Add GLEW needed by progs when building GLUT"
This reverts commit 2977cee38e.

Revert "glew: Build it as a static lib."
This reverts commit fcf9353fea.

Revert "glew: Initial import."
This reverts commit 57d00016ca.
2010-06-08 02:07:24 +02:00
Kristian Høgsberg 56c3cce2a1 Remove last bits of progs/ infrastructure 2010-06-07 10:08:48 -04:00
Chia-I Wu 8e1b375a8d autoconf: Remove unused APIS.
It was used by glapi, which has been moved to mapi.
2010-05-31 10:43:00 +08:00
Younes Manton ea3a01ae4d vl: Get nouveau building again.
Still some DRI2 bits to sort out.
2010-05-29 19:22:14 -04:00
Jakob Bornecrantz aeee52691c r600g: Integrate into build
Signed-off-by: Jakob Bornecrantz <wallbraker@gmail.com>
2010-05-27 23:24:12 +02:00
Younes Manton 2c29a93e87 vl: Get softpipe building again. 2010-05-08 20:11:29 -04:00
Younes Manton a8ea1dacc6 Merge branch 'master' of ssh://git.freedesktop.org/git/mesa/mesa into pipe-video
Conflicts:
	src/gallium/auxiliary/Makefile
	src/gallium/auxiliary/SConscript
	src/gallium/auxiliary/util/u_format.csv
	src/gallium/auxiliary/vl/vl_compositor.c
	src/gallium/auxiliary/vl/vl_compositor.h
	src/gallium/auxiliary/vl/vl_mpeg12_mc_renderer.c
	src/gallium/auxiliary/vl/vl_mpeg12_mc_renderer.h
	src/gallium/drivers/identity/id_objects.c
	src/gallium/drivers/identity/id_objects.h
	src/gallium/drivers/identity/id_screen.c
	src/gallium/drivers/nv40/Makefile
	src/gallium/drivers/nv40/nv40_screen.c
	src/gallium/drivers/softpipe/sp_texture.c
	src/gallium/drivers/softpipe/sp_texture.h
	src/gallium/drivers/softpipe/sp_video_context.c
	src/gallium/drivers/softpipe/sp_video_context.h
	src/gallium/include/pipe/p_format.h
	src/gallium/include/pipe/p_screen.h
	src/gallium/include/pipe/p_video_context.h
	src/gallium/include/pipe/p_video_state.h
	src/gallium/include/state_tracker/dri1_api.h
	src/gallium/include/state_tracker/drm_api.h
	src/gallium/state_trackers/dri/common/dri_context.c
	src/gallium/state_trackers/xorg/xvmc/attributes.c
	src/gallium/state_trackers/xorg/xvmc/block.c
	src/gallium/state_trackers/xorg/xvmc/context.c
	src/gallium/state_trackers/xorg/xvmc/subpicture.c
	src/gallium/state_trackers/xorg/xvmc/surface.c
	src/gallium/state_trackers/xorg/xvmc/tests/.gitignore
	src/gallium/state_trackers/xorg/xvmc/tests/Makefile
	src/gallium/state_trackers/xorg/xvmc/xvmc_private.h
	src/gallium/winsys/drm/radeon/core/radeon_drm.c
	src/gallium/winsys/g3dvl/vl_winsys.h
	src/gallium/winsys/g3dvl/xlib/xsp_winsys.c
	src/gallium/winsys/sw/Makefile
2010-04-30 20:42:30 -04:00
Eric Anholt 1a8b1277c5 Fix test for MESA_LLVM. 2010-05-21 12:20:40 -07:00
Eric Anholt 68fc4b415e Remove demos that have moved to git+ssh://git.freedesktop.org/git/mesa/demos.
The remaining programs are ones I've had difficulty finding a build
environment for to make the build system or are unit tests that should
probably live next to their code instead.  Hopefully people can bring
over the build for remaining pieces they care about.
2010-05-21 12:20:39 -07:00
Chia-I Wu 70ae8bf26f progs/egl: Fix building on cygwin.
Update the Makefiles to use variables such as EGL_LIB_NAME.  Define M_PI
if it hasn't been defined yet.
2010-05-19 13:39:40 -06:00
Jakob Bornecrantz 2c3fb4ecce rbug: Break out of trace 2010-05-12 20:15:23 +01:00
Chia-I Wu 87cc2da16e mesa/es: Merge back to core mesa.
With the omit list gone, there are not too many differences in building
core mesa and ES overlay.  Remove the mesa/es and build both of them in
src/mesa/Makefile.
2010-05-12 15:03:42 +08:00
Vinson Lee 48f8a76549 autoconf: Also strip '\r' character in version scrape.
Fixes autoconf GCC conftest.c test on Cygwin.
2010-05-11 12:33:30 -07:00
Chia-I Wu 3ecb8c20f8 gallium: Add llvmpipe support to st/egl.
Update Makefile rules for st/egl.
2010-05-11 12:42:22 +08:00
Chia-I Wu 63ab2509bf gallium: Add egl-apis target.
The new target installs client API modules to EGL_DRIVER_INSTALL_DIR.
They are used by st/egl.

The client APIs are built from OpenGL and OpenVG state trackers.  For
this to work, st/vega is modified to produce a static library,
libvega.a, instead.  st/es is also not needed any more.  It is removed
and --with-state-trackers=es is replaced by --enable-gles-overlay.

As st/egl now has its own client API modules, this solves the ABI issue
between st/egl and client APIs, as long as the client API modules are
distributed with st/egl.  Plus, this allows st/egl to support OpenGL
with non-Gallium libGL.so.
2010-05-08 14:57:21 +08:00
Chia-I Wu 3e1ccb2508 mapi: Merge src/gles/.
Remove src/gles and have mapi/{es1api,es2api} build libGLESv1_CM.so and
libGLESv2.so.
2010-05-08 14:55:57 +08:00
Chia-I Wu 874ccd5d83 Define OpenGL ES and OpenVG library names.
Define <API>_LIB, <API>_LIB_NAME, <API>_LIB_GLOB, and some other
variables in the configs.  Fix a typo in glesv1_cm.pc.in where an
inexistent variable is used.
2010-05-08 14:55:52 +08:00
Chia-I Wu 75143ef055 st/vega: Use vgapi.
Rename vgFooBar to vegaFooBar and use vgapi as the dispatcher.  This
makes sure there is always a current context when the internal functions
are called.  And eglGetProcAddress is finally supported.
2010-05-07 10:41:12 +08:00
Chia-I Wu 296adbd545 glapi: Move to src/mapi/.
Move glapi to src/mapi/{glapi,es1api,es2api}.
2010-05-07 10:41:11 +08:00
Chia-I Wu a6ec153830 mesa: Fix build of ES overlay.
ES overlay is built with FEATURE_ES1 or FEATURE_ES2, and is built
without FEATURE_GL.  Fix the build by always building OpenGL ES sources,
but test for FEATURE_ES1 or FEATURE_ES2.  Also, define symbols that are
missing because FEATURE_GL is not defined.
2010-05-05 11:57:46 +08:00
Kristian Høgsberg 9e4f2da848 Fix gles .pc file generation 2010-05-04 14:13:46 -04:00
Kristian Høgsberg 2df3c361ef configure.ac: Fix test for whether to build src/gles 2010-05-02 14:52:39 -04:00
Kristian Høgsberg da76a4d845 mesa: Only compile ES files when ES1 or ES2 are selected
This still requieres manual generation of the es1 and es2 glapis and is
disabled by default.
2010-05-02 14:09:52 -04:00
Kristian Høgsberg 0870e4a202 Merge branch 'gles2-2'
Conflicts:
	src/mesa/drivers/dri/common/dri_util.h
2010-05-02 10:17:07 -04:00
Kristian Høgsberg 9fd5fa0512 Hook in install rules for es1 and es2 2010-05-02 10:14:53 -04:00
Kristian Høgsberg 74399d4af5 Add glesv2.pc and glesv1_cm.pc pkg-config files for ES 1 and 2 2010-05-02 09:51:13 -04:00
Kristian Høgsberg 9339c1291d gles: Build libGLESv1_CM.so and libGLESv2.so from glapi files 2010-04-28 14:41:21 -04:00
Kristian Høgsberg 0f68032a7c configure.ac: Add options to enable GLES1/2 API support 2010-04-28 14:36:28 -04:00
Younes Manton edca5360ca vl: Fix up configure.ac/Makefile 2010-04-24 13:52:23 -04:00
Jakob Bornecrantz fe0fe67aaf configure.ac: Print some llvm info 2010-04-28 16:06:17 +01:00
Chia-I Wu fbfecda6ae progs/egl: Add egl/eglut to PROGRAM_DIRS.
Make sure eglut is built before the demos.  This should work more
reliably with make -j<N>.
2010-04-27 14:19:24 +08:00
Dave Airlie 22e8ddc748 llvm: fix configure.ac harder 2010-04-25 07:55:15 +10:00
Dave Airlie 81fe19843a llvmpipe: add initial autoconf support.
allows the swrastg_dri.so to be built with llvmpipe, also links llvm
to all dri drivers

use --enable-gallium-llvm to use it.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2010-04-24 18:55:50 +10:00
Jakob Bornecrantz 44bafca1a0 i915g: Add a software only debuging winsys 2010-04-17 21:13:23 +01:00
Chia-I Wu c727ef0108 progs/egl: Move demos a level deeper.
Move the demos to "opengl" subdirectory.
2010-04-01 22:25:48 +08:00
Xavier Chantry ff0987a15d svga: Fix typo in configure script
Introduced in a82e37b9e9
2010-03-26 13:28:29 +01:00
Jakob Bornecrantz 5b1fc14627 st/dri: Reshuffle files and make it obvious which files are shared
In short:
git mv ../drisw/Makefile dri/sw
git mv drisw.[c|h] sw
git mv dri2.[c|h] dri1.[c|h] Makefile drm
git rm ../drisw
ln -s <common files> drm/*
ln -s <common files> sw/*
2010-03-26 00:37:52 +01:00
Jakob Bornecrantz a82e37b9e9 gallium: Add propper sanity checks in configure.ac 2010-03-25 22:54:56 +01:00
George Sapountzis 7b333298fc configure:ac add swrastg_dri 2010-03-25 17:01:54 +02:00
George Sapountzis 992e9572bd swrastg_dri: add state_tracker 2010-03-25 17:01:53 +02:00
Jakob Bornecrantz c9f98673c5 gallium: Reorg winsys directories
Attached output from commit.
 delete mode 100644 src/gallium/winsys/drm/SConscript
 delete mode 100644 src/gallium/winsys/drm/i965/SConscript
 delete mode 100644 src/gallium/winsys/drm/intel/Makefile
 delete mode 100644 src/gallium/winsys/drm/intel/SConscript
 delete mode 100644 src/gallium/winsys/drm/nouveau/Makefile
 delete mode 100644 src/gallium/winsys/drm/radeon/Makefile
 delete mode 100644 src/gallium/winsys/drm/radeon/SConscript
 delete mode 100644 src/gallium/winsys/drm/vmware/Makefile
 delete mode 100644 src/gallium/winsys/drm/vmware/SConscript
 rename src/gallium/winsys/{drm/intel/gem => i915/drm}/Makefile (82%)
 rename src/gallium/winsys/{drm/intel/gem => i915/drm}/SConscript (100%)
 rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_api.c (100%)
 rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_batchbuffer.c (100%)
 rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_buffer.c (100%)
 rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_fence.c (100%)
 rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_winsys.h (100%)
 rename src/gallium/winsys/{drm/i965/gem => i965/drm}/Makefile (78%)
 rename src/gallium/winsys/{drm/i965/gem => i965/drm}/SConscript (100%)
 rename src/gallium/winsys/{drm/i965/gem => i965/drm}/i965_drm_api.c (98%)
 rename src/gallium/winsys/{drm/i965/gem => i965/drm}/i965_drm_buffer.c (100%)
 rename src/gallium/winsys/{drm/i965/gem => i965/drm}/i965_drm_winsys.h (100%)
 rename src/gallium/winsys/{drm => }/i965/xlib/Makefile (97%)
 rename src/gallium/winsys/{drm => }/i965/xlib/xlib_i965.c (100%)
 rename src/gallium/winsys/{drm => }/nouveau/drm/Makefile (79%)
 rename src/gallium/winsys/{drm => }/nouveau/drm/nouveau_dri.h (100%)
 rename src/gallium/winsys/{drm => }/nouveau/drm/nouveau_drm_api.c (100%)
 rename src/gallium/winsys/{drm => }/nouveau/drm/nouveau_drm_api.h (100%)
 rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/Makefile (79%)
 rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/SConscript (100%)
 rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_buffer.h (100%)
 rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_drm.c (100%)
 rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_drm.h (100%)
 rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_drm_buffer.c (100%)
 rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_r300.c (100%)
 rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_r300.h (100%)
 rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_winsys.h (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/Makefile (63%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/SConscript (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_buffer.c (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_buffer.h (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_context.c (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_context.h (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_fence.c (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_fence.h (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen.c (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen.h (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen_dri.c (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen_ioctl.c (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen_pools.c (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen_svga.c (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_surface.c (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_surface.h (100%)
 rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmwgfx_drm.h (100%)
 rename src/gallium/winsys/{drm/i965 => sw}/Makefile (61%)
 copy src/gallium/winsys/{drm/sw => sw/drm}/Makefile (73%)
 rename src/gallium/winsys/{drm/sw => sw/drm}/sw_drm_api.c (98%)
 rename src/gallium/winsys/{drm/sw => sw/drm}/sw_drm_api.h (100%)
 rename src/gallium/winsys/{ => sw}/gdi/SConscript (100%)
 rename src/gallium/winsys/{ => sw}/gdi/gdi_sw_winsys.c (100%)
 rename src/gallium/winsys/{ => sw}/gdi/gdi_sw_winsys.h (100%)
 rename src/gallium/winsys/{ => sw}/null/Makefile (78%)
 rename src/gallium/winsys/{ => sw}/null/SConscript (100%)
 rename src/gallium/winsys/{ => sw}/null/null_sw_winsys.c (100%)
 rename src/gallium/winsys/{ => sw}/null/null_sw_winsys.h (100%)
 rename src/gallium/winsys/{drm/sw => sw/wrapper}/Makefile (65%)
 rename src/gallium/winsys/{drm/sw => sw/wrapper}/wrapper_sw_winsys.c (100%)
 rename src/gallium/winsys/{drm/sw => sw/wrapper}/wrapper_sw_winsys.h (100%)
 rename src/gallium/winsys/{ => sw}/xlib/Makefile (79%)
 rename src/gallium/winsys/{ => sw}/xlib/SConscript (100%)
 rename src/gallium/winsys/{ => sw}/xlib/xlib_sw_winsys.c (100%)
2010-03-24 17:02:17 +01:00
Jakob Bornecrantz 43218a45a4 gallium: Move xorg drivers to targets
Attached output from git commit:
 rename src/gallium/{winsys/drm/intel/xorg => targets/xorg-i915}/Makefile (95%)
 rename src/gallium/{winsys/drm/intel/xorg => targets/xorg-i915}/intel_xorg.c (98%)
 rename src/gallium/{winsys/drm/i965/xorg => targets/xorg-i965}/Makefile (78%)
 rename src/gallium/{winsys/drm/i965/xorg => targets/xorg-i965}/intel_xorg.c (98%)
 rename src/gallium/{winsys/drm/nouveau/xorg => targets/xorg-nouveau}/Makefile (96%)
 rename src/gallium/{winsys/drm/nouveau/xorg => targets/xorg-nouveau}/nouveau_xorg.c (98%)
 rename src/gallium/{winsys/drm/radeon/xorg => targets/xorg-radeon}/Makefile (73%)
 rename src/gallium/{winsys/drm/radeon/xorg => targets/xorg-radeon}/radeon_xorg.c (98%)
 rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/Makefile (97%)
 rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/SConscript (100%)
 rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_driver.h (100%)
 rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_hook.h (100%)
 rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_ioctl.c (99%)
 rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_screen.c (100%)
 rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_video.c (99%)
 rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_xorg.c (100%)
2010-03-24 17:02:17 +01:00
Jakob Bornecrantz f5ba2cdeb9 gallium: Move egl drivers to targets
Atteched output from git commit:
 rename src/gallium/{winsys/drm => targets}/Makefile.egl (100%)
 rename src/gallium/{winsys/drm/intel/egl => targets/egl-i915}/Makefile (86%)
 rename src/gallium/{winsys/drm/i965/egl => targets/egl-i915}/dummy.c (100%)
 rename src/gallium/{winsys/drm/i965/egl => targets/egl-i965}/Makefile (86%)
 rename src/gallium/{winsys/drm/intel/egl => targets/egl-i965}/dummy.c (100%)
 rename src/gallium/{winsys/drm/nouveau/egl => targets/egl-nouveau}/Makefile (88%)
 rename src/gallium/{winsys/drm/nouveau/egl => targets/egl-nouveau}/dummy.c (100%)
 rename src/gallium/{winsys/drm/radeon/egl => targets/egl-radeon}/Makefile (87%)
 rename src/gallium/{winsys/drm/radeon/egl => targets/egl-radeon}/dummy.c (100%)
 create mode 100644 src/gallium/targets/egl-swrast/Makefile
 create mode 100644 src/gallium/targets/egl-swrast/swrast_glue.c
 rename src/gallium/{winsys/drm/vmware/egl => targets/egl-vmwgfx}/Makefile (86%)
 rename src/gallium/{winsys/drm/swrast/egl => targets/egl-vmwgfx}/dummy.c (100%)
 delete mode 100644 src/gallium/winsys/drm/swrast/Makefile
 delete mode 100644 src/gallium/winsys/drm/swrast/core/Makefile
 delete mode 100644 src/gallium/winsys/drm/swrast/core/swrast_drm_api.c
 delete mode 100644 src/gallium/winsys/drm/swrast/egl/Makefile
 delete mode 100644 src/gallium/winsys/drm/vmware/egl/dummy.c
2010-03-24 17:02:17 +01:00
Jakob Bornecrantz be38b32531 gallium: Move dri drivers to targets
Attached output from git commit:
 rename src/gallium/{winsys/drm/Makefile.template => targets/Makefile.dri} (100%)
 rename src/gallium/{winsys/drm/intel/dri => targets/dri-i915}/Makefile (75%)
 rename src/gallium/{winsys/drm/intel/dri => targets/dri-i915}/SConscript (100%)
 rename src/gallium/{winsys/drm/i965/dri => targets/dri-i965}/Makefile (76%)
 rename src/gallium/{winsys/drm/i965/dri => targets/dri-i965}/SConscript (100%)
 rename src/gallium/{winsys/drm/nouveau/dri => targets/dri-nouveau}/Makefile (86%)
 rename src/gallium/{winsys/drm/radeon/dri => targets/dri-radeong}/Makefile (85%)
 rename src/gallium/{winsys/drm/radeon/dri => targets/dri-radeong}/SConscript (100%)
 rename src/gallium/{winsys/drm/vmware/dri => targets/dri-vmwgfx}/Makefile (85%)
 rename src/gallium/{winsys/drm/vmware/dri => targets/dri-vmwgfx}/SConscript (100%)
2010-03-24 17:02:17 +01:00
Jakob Bornecrantz 41d2ebf202 gallium: Remove GALLIUM_WINSYS_DRM_DIRS 2010-03-24 17:02:17 +01:00
Dan Nicholson e725ef171b Change libX11 variables to not conflict with AC_PATH_XTRA
The variable X_LIBS from AC_PATH_XTRA contains only the -L searchdir
parameter and not the -lX11 to link to Xlib. Use X11 prefixed build vars
for linking with Xlib to avoid the conflict.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2010-03-23 13:26:50 -07:00
Luca Barbieri f9d09a2e78 nv30, nv40: move last files to nvfx/ and rm -rf nv30 nv40
This is the last nvfx unification patch.

nv[34]0_fragtex.c are moved to the common directory
nv[34]0_shader.h are renamed to nv[34]0_vertprog.h and moved to
the common directory

The separate nv30 and nv40 directories are removed from the build
system
2010-03-15 00:03:04 -04:00
Luca Barbieri 6321a18331 nvfx: add nvfx directory to build system
Will be used to hold source files unified between nv30 and nv40.

Eventually all nv30 and nv40 code will be moved there and the
nv30 and nv40 directories will be removed.
2010-03-15 00:03:01 -04:00
Jeff Smith 8d86d395dc Use X_LIBS from pkg-config, instead of libdir, for locating libX11
Signed-off-by: Jeff Smith <whydoubt@yahoo.com>
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2010-03-13 11:42:24 -08:00
Michel Dänzer b13e305ee1 Merge branch '7.8' 2010-03-12 19:00:47 +01:00
Keith Whitwell 51bff09f72 mesa: fix linux-dri and autogen builds since sw-api-2 merge 2010-03-12 09:05:59 +00:00
Younes Manton a8238bb08a Merge remote branch 'origin/master' into pipe-video
Conflicts:
	configure.ac
	src/gallium/auxiliary/vl/Makefile
	src/gallium/auxiliary/vl/SConscript
	src/gallium/auxiliary/vl/vl_compositor.c
	src/gallium/auxiliary/vl/vl_compositor.h
	src/gallium/auxiliary/vl/vl_mpeg12_mc_renderer.c
	src/gallium/auxiliary/vl/vl_mpeg12_mc_renderer.h
	src/gallium/drivers/nouveau/nouveau_winsys.h
	src/gallium/drivers/softpipe/sp_video_context.c
	src/gallium/include/pipe/p_video_state.h
	src/gallium/include/state_tracker/drm_api.h
	src/gallium/state_trackers/xorg/xvmc/surface.c
	src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c
	src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.h
	src/gallium/winsys/drm/radeon/core/radeon_drm.c
	src/gallium/winsys/g3dvl/nouveau/Makefile
2010-03-12 01:37:49 -05:00
Jakob Bornecrantz 683a099954 st/xorg: Fixup configure
Make sure we always test for XEXT version.
Make sure that the user has a recent version of libkms and libdrm installed.

Note that the st/xorg code requires so new versions to work but these are
needed to make a proper vmwgfx_drv.so driver which is the only real user.

Cherry picked from 46cf606cd35d6740b28fd26bd32dbdfdde2c7833
Conflicts:

	configure.ac
2010-03-11 19:30:16 +00:00
George Sapountzis 9009a854d1 config: drop WINDOW_SYSTEM var 2010-03-06 06:44:36 +02:00
Younes Manton 40cd082afa vl: Add switches to autoconf.
Pass 'xorg/xvmc' to --with-state-trackers to get the XvMC state tracker.
Pass --enable-gallium-g3dvl to enable the winsys.
2010-03-05 23:11:05 -05:00
Ian Romanick 9aa3aa7138 Add version check for GCC
Mesa now requires GCC 3.3.0 or later.  See the following thread from
the mesa3d-dev mailing list for more details:

http://marc.info/?t=126748568900005&r=1&w=2

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2010-03-03 16:26:32 -08:00
Eric Anholt 179d2c0e0b intel: Use drm_intel_bo_alloc_tiled for region allocs.
This moves the logic for how to align pitches, heights, and sizes of
objects to one central location.  Fixes rendering with texture tiling
on i915.  Note that current libdrm is required for the change for
I915_TILING_NONE pitch alignment.
2010-03-03 11:33:37 -08:00
Kristian Høgsberg 79aeafd3ca Drop fb, ffb and gamma dri drivers 2010-02-25 17:40:11 -05:00
Kristian Høgsberg 4387580e50 Remove directfb support 2010-02-25 17:40:09 -05:00
Brian Paul 979889038e configure: PTHREADS should be defined on cygwin, as well
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Signed-off-by: Brian Paul <brianp@vmware.com>

(cherry picked from commit c1a4f249f18a766488da0832fbf6700de93af2f8)
2010-02-18 12:46:12 -07:00
Kristian Høgsberg aa0cd707af configure.ac: Lower require dri2proto version to 2.1
Additions after 2.1 are implemented in a conditional way and will be
supported if available.
2010-02-16 10:38:49 -05:00
Kristian Høgsberg 1ebc568154 configure.ac: Enable egl demos when --enable-egl is passed 2010-02-09 15:55:25 -05:00
Kristian Høgsberg 6e8897ff9f Retire miniglx and move the actual glx code up to src/glx 2010-02-09 09:58:36 -05:00
Kristian Høgsberg 077bc2fda2 egl_dri2: Use pkg-config cflags and libs from configure output
Running pkg-config in Makefiles is bad form, since it doesn't respect the
PKG_CONFIG_PATH value set at ./configure time.
2010-02-05 13:55:45 -05:00
Keith Whitwell c036d13d7d Merge commit 'fj/mesa-next' 2010-02-05 09:50:21 +00:00
Chia-I Wu 2eb7a2fccd configure.ac: Check for xcb-dri2 to enable EGL dri2 driver.
Check that xcb-dri2 is available before including EGL dri2 driver into
EGL_DRIVERS_DIRS.
2010-02-05 11:43:54 +08:00
Francisco Jerez 5b6b67eb3f Nuke the nv0x-nv2x gallium pipe drivers. 2010-02-04 22:15:22 +01:00
Kristian Høgsberg 42fa009e64 egl: Add driver for EGL on X with DRI2 2010-02-04 15:03:45 -05:00
Chia-I Wu 146931769c glx: Build GLX normally.
GLX was built specially and before Mesa core because libglapi.a could
not be built with IN_DRI_DRIVER defined.  This is no longer the case
since 6e99e6ddbf.

It works fine in my (limited) testing with both direct and indirect
rendering.  I also compare the outputs after preprocessing (gcc -E) with
or without this commit, and they are identical.
2010-01-26 11:03:54 +08:00
Chia-I Wu 28c3e57c83 egl: Install drivers to ${libdir}/egl.
Install EGL drivers to EGL_DRIVER_INSTALL_DIR, which is default to
${libdir}/egl.
2010-01-23 20:30:11 +08:00
Chia-I Wu 3c967a9207 st/egl_g3d: Rename to st/egl.
Simply the name to egl.
2010-01-22 16:45:28 +08:00
Chia-I Wu a1306f4ef6 winsys/drm: Add swrast.
The swrast winsys always returns NULL when drm_api_create is called.
2010-01-22 16:44:09 +08:00
Chia-I Wu 52d7b2cede st/egl: Remove the egl state tracker.
The egl_g3d state tracker has support for KMS, and the support is based
on the egl state tracker.  As egl_g3d provides more features, it should
be better to keep only egl_g3d to unify the efforts.
2010-01-22 15:37:56 +08:00
Chia-I Wu 2a928899e3 egl: Remove USING_EGL and the related drivers.
They do not build for a long while and there seems to be no active
users.  It might be better for them to live in the git histroy.
2010-01-22 15:16:31 +08:00
Alan Coopersmith f8107a45ce Fix typo in configure message for gcc -fvisibility=hidden
Need to use $CC for a shell variable, not $(CC) for a make variable
which the shell interprets as running the command "CC".

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2010-01-21 16:43:59 -08:00
Chia-I Wu 5e8240320a Merge remote branch 'origin/opengl-es-v2' 2010-01-20 10:02:15 +08:00
Alan Coopersmith adda7f3215 Check if gcc supports -fvisibility=hidden before adding to CFLAGS
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2010-01-19 10:15:55 -08:00
Jakob Bornecrantz 877cadb655 r300g: Build driver by default
Do the auto trick that is used for both i915, i965 and svga.
2010-01-14 22:51:25 +00:00
Jesse Barnes ed59b13da8 GLX: use glproto CFLAGS etc. when building
Roll the glproto check into the dri2proto and libdrm check so we get the
proper CFLAGS and LDFLAGS for the package.
2010-01-13 15:48:14 -05:00
Chia-I Wu 99a37ed195 configure.ac: Fix es state tracker build.
mesa/es should be built before the es state trackers.  This is done by
separating those that need to be built early from SRC_DIRS to CORE_DIRS.
The new variable is not exported, and will be prepended to SRC_DIRS.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2010-01-12 11:25:09 +08:00
Chia-I Wu 562c127693 Merge branch 'master' into opengl-es-v2
Conflicts:
	src/mesa/main/dd.h
2010-01-12 11:25:02 +08:00
Chia-I Wu 077d6dd750 winsys/drm: Use egl_g3d to build EGL drivers.
The new EGL drivers use egl_g3d and respect EGL_DISPLAYS.  They are
named after the display supported and the DRM name.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2010-01-12 11:09:00 +08:00
Chia-I Wu a68b51deb2 st/egl_g3d: Add support for KMS native display.
The KMS native display implements the modeset interface using DRM
modesetting.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2010-01-12 11:09:00 +08:00
Chia-I Wu 49381d63e6 st/egl_g3d: New EGL state tracker that uses Gallium.
This new (intermediate) EGL state tracker is the base work for EGL
drivers that uses Gallium.  It makes it easier to support new window
systems.

Currently, there is support only for X11.  This driver supports multiple
APIs (OpenVG, OpenGL, ...) and supports hardware acceleration through
winsys/drm.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2010-01-12 11:08:57 +08:00
Jesse Barnes f2f83d9a78 GLX: check glproto version
This was a silent dependency before, but now we really need 1.4.11 for
INTEL_swap_event support, so check for it.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2010-01-11 17:30:41 -05:00
Jesse Barnes c6ef705e41 Merge branch 'master' of ssh://people.freedesktop.org/~jbarnes/mesa
Conflicts due to DRI1 removal:
	src/mesa/drivers/dri/intel/intel_context.c
	src/mesa/drivers/dri/intel/intel_screen.c
2010-01-11 15:23:29 -05:00
Chia-I Wu d4c1ee0534 egl: Clean up the Makefile rules.
This allows libEGL to be built as a static library and removes libX11
from the dependencies.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2010-01-11 01:11:05 +08:00
Jesse Barnes a35f6bb207 DRI2: add SwapBuffers support
Support the new DRI2 protocol request, DRI2SwapBuffers, in both direct
and indirect rendering context.  This request allows the display server
to optimize back->front swaps (e.g. through page flipping) and allows us
to more easily support other GLX features like swap interval and the OML
sync extension in DRI2.

Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
2010-01-08 12:29:50 -05:00
Kristian Høgsberg 27fe7a7303 configure: Fix matching for dri driver to actually work
The shell case statement obviously only evaluates the first matching
block.  Thanks to Julien Cristau for spotting the bug.
2010-01-07 10:44:44 -05:00
Chia-I Wu e5d351dcfd Add es state tracker to autoconf.
mesa/es is needed in SRC_DIRS to build es state tracker.

Signed-off-by: Chia-I Wu <olvaffe@gmail.com>
2010-01-05 08:08:34 -07:00
Kristian Høgsberg 8616cec5c9 Check for libdrm_$chipset.pc when needed
This adds missing pkg-config lookup for intel and moves the radeon
lookup into a case...esac so it's only looked up when one or more of
the radeon drivers are enabled.
2010-01-04 11:47:59 -05:00
Kristian Høgsberg e388d62b47 Compile with -fvisibility-hidden by default
We have all functions that need to be visible marked with PUBLIC and
this is trimming around 4% off the DRI driver .so size.
2010-01-03 15:40:59 -05:00
José Fonseca c978ab017d gallium: Hunt down all references to GALLIUM_AUXILIARY_DIRS. 2010-01-02 20:22:52 +00:00
Keith Whitwell aa02683e45 Merge branch 'i965g-restart'
Conflicts:
	configure.ac
2009-12-22 09:40:39 +00:00
Brian Paul 9eb7fc6661 Merge branch 'mesa_7_7_branch'
Conflicts:
	src/mesa/main/version.h
	src/mesa/state_tracker/st_atom_shader.c
2009-12-21 18:35:54 -07:00
Fabio Pedretti bf064ce0c3 configure.ac: fix for libdrm_radeon API changes. 2009-12-22 10:44:53 +10:00
Fabio Pedretti ae1c0a06e8 configure.ac: fix for libdrm_radeon API changes. 2009-12-22 10:43:35 +10:00
Keith Whitwell a5585cb533 Merge commit 'origin/master' into i965g-restart
Conflicts:
	SConstruct
	configs/default
	configs/linux-dri
2009-12-21 19:18:41 +00:00
Sedat Dilek 2f127e5236 configure.ac: Add glsl to SRC_DIRS
Signed-off-by: Brian Paul <brianp@vmware.com>
2009-12-17 12:46:55 -07:00
Jakob Bornecrantz bc0532b0ed gallium: DRI drivers enabled by default, Xorg drivers auto by default.
This change enabled gallium dri drivers by default under the
configure build system. Xorg drivers are built automaticaly
if a Xorg dev enviroment is installed and the Xorg version
is higher then 1.6.0.
2009-12-04 19:02:41 +00:00
Jakob Bornecrantz 8ac2503397 i915g: Do not build winsys and binaries by default
Using a hack in the configure script the gallium intel
drivers have 3 options. Off, nothing is built. On, the
driver and binaries are built. Auto, only the driver but
not the binaries and winsys is built.

Since the i915g driver builds everywhere its can enable
the driver per default, so we can get build coverage.
But building the binaries per default is a pain for
distributions and testers since they conflict on the
install target with the old mesa drivers. Which are more
stable/faster/better.

So this change gives us the best of both worlds.
2009-12-04 16:01:41 +00:00
Jakob Bornecrantz 60769b232c svga: Build svga driver 2009-11-17 03:18:06 +01:00
Jakob Bornecrantz ce4f23aab9 i965g: Build with configure 2009-11-05 01:22:10 +00:00
Brian Paul 4bced42341 Merge branch 'mesa_7_6_branch' 2009-11-03 09:54:09 -07:00
Chow Loong Jin 35506dec67 Add --with-dri-searchpath argument
* Add an extra argument to configure which allows for specifying
  different DRI driver search paths to libGL (FDO #24766)

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-10-30 06:00:13 -07:00
Corbin Simpson fd7ee2bcb7 Kill off trident.
Hm. I could have said "chew trident and spit it out," or perhaps
"spear trident," instead. Dohoho.
2009-10-22 12:57:13 -07:00
Corbin Simpson 8e4657a9d4 Nuke s3v.
As per FDO #17889.
2009-10-22 12:29:30 -07:00
Tom Fogal 9282edfaa0 ac: Fix AIX shared library builds.
AIX uses ".a" for both static and shared library extensions.
2009-10-13 16:22:06 -06:00
Jakob Bornecrantz 5c4bdbd825 autoconf: Fix case for not having package 2009-10-15 01:25:48 +01:00
Brian Paul ce3801ab87 Merge branch 'mesa_7_6_branch' 2009-10-14 09:22:30 -06:00
Eric Anholt 859828cc4f mesa: Bump the required libdrm version to reflect reality.
Not all drivers require the latest version, but distros are good at
tracking it since we've got a good record as far as not regressing, and
it sure beats having a weird compile failure in someone else's driver
later on.
2009-10-08 17:18:12 -07:00
Jakob Bornecrantz f00da2a3ff i915g: Drop the simple sufix
None of the other driver have a silly sufix,
	so just drop it. Nothing new added in this commit
	or any other commit but this is better marketing.
2009-10-05 19:48:08 +01:00
Younes Manton f547472bfa g3dvl: pipe_video_context interface, softpipe impl, auxiliary libs 2009-09-27 19:49:06 -04:00
Dave Airlie e9d6ab72be xorg/st: fixup builds against later dpms headers. 2009-09-21 13:26:48 +10:00
Brian Paul 5d526ed21a Merge branch 'mesa_7_5_branch' into mesa_7_6_branch 2009-09-15 09:45:18 -06:00
Thierry Vignaud 1402ea8f39 configure: fix comment 2009-09-14 11:48:51 -06:00
Marc Dietrich c705e72382 mesa: fix 32bit cross compilation on a 64bit machine
When cross compiling on a 64bit machine, gen_matypes.c is build
for the host machine (64bit) but must generates code for the target
machine (32bit). This causes wrong offsets all over the place and
crashes googleearth on my machine. Solution is to add -m32 when
cross compiling.

Attached patch is compatible with linux-x86-32 and autoconf based
builds.
2009-08-31 11:22:36 -06:00
Marc Dietrich a48ee529a2 mesa: fix 32bit cross compilation on a 64bit machine
When cross compiling on a 64bit machine, gen_matypes.c is build
for the host machine (64bit) but must generates code for the target
machine (32bit). This causes wrong offsets all over the place and
crashes googleearth on my machine. Solution is to add -m32 when
cross compiling.

Attached patch is compatible with linux-x86-32 and autoconf based
builds.
2009-08-31 10:32:14 -06:00
Brian Paul 467b3d9a6f Add configure options for MAX_WIDTH/HEIGHT.
This adds two --with configure options for setting defines for
MAX_WIDTH and MAX_HEIGHT.  It's conceivably just as easy to define
these in CFLAGS manually, but this way users don't need to know
about internal Mesa details.

Patch updated by BrianP to set DEFINES, not CFLAGS.

(cherry picked from master, commit 7085dce750)
2009-08-14 11:23:00 -06:00
Tom Fogal 7085dce750 Add configure options for MAX_WIDTH/HEIGHT.
This adds two --with configure options for setting defines for
MAX_WIDTH and MAX_HEIGHT.  It's conceivably just as easy to define
these in CFLAGS manually, but this way users don't need to know
about internal Mesa details.

Patch updated by BrianP to set DEFINES, not CFLAGS.
2009-08-14 08:58:37 -06:00
Jakob Bornecrantz 5e6fff7ac4 svga: Do the gallium intel configure trick for svga as well
Since the drivers we produce on systems where we use
configure depend on none stable kernel API the driver
deliverables should not be built by default in the
mesa 7.7 release.

People wishing to shoot them self in the foot have to
pull the trigger themself, we just hand them the gun.
2009-07-19 09:29:14 +02:00
Alex Deucher c5c19919ce Merge branch 'master' of git+ssh://agd5f@git.freedesktop.org/git/mesa/mesa into r6xx-rewrite
This builds, but I get an assertion in radeonGetLock() due to
the drawable being null.
2009-07-15 14:17:07 -04:00
Brian Paul 9615daa932 Merge branch 'mesa_7_5_branch' 2009-07-13 08:47:37 -06:00
Michel Dänzer cade071d52 Remove stale reference to non-Gallium nouveau driver from configure.ac. 2009-07-10 14:49:46 +02:00
Jakob Bornecrantz d60b2c6855 identity: Add new identity driver
This driver does no transformation of the gallium calls
	going to the real driver, like the identity matrix. It is
	intended to be the basis for transforming and/or debug
	drivers like trace and rbug.

	Authors of this patch are:
		Michal Krol, orignal heavy lifting.
		José Fonesca, object wrapping code stolen from trace.
		Jakob Bornecrantz, put it all toghether and renamed a stuff.
2009-06-24 13:04:56 +02:00
Alex Deucher 1036ef2bf4 Merge master and fix conflicts 2009-06-12 12:09:34 -04:00
Dave Airlie 7f223ff891 Merge remote branch 'main/radeon-rewrite' 2009-06-12 11:17:32 +10:00
Jakob Bornecrantz ee98ae5a29 Merge branch 'mesa_7_5_branch'
Conflicts:

	Makefile
	src/mesa/main/version.h
	src/mesa/shader/slang/slang_preprocess.c
	src/mesa/state_tracker/st_cb_bufferobjects.c
2009-06-09 07:53:25 +02:00
Jon TURNEY 7eed6ab5b5 Cygwin build fixes
Fix mklib to deal with NOPREFIX and use --enable-auto-image-base for cygwin
Teach configure.ac some basic facts about cygwin

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2009-06-08 14:30:46 -06:00
Dave Airlie 545e574cd9 Merge remote branch 'origin/master' into radeon-rewrite 2009-06-07 16:51:32 +10:00
Ben Skeggs bc466be695 nouveau: add pipe_buffer/fence code to pipe drivers, move nv50 over 2009-06-05 14:37:01 +10:00
Dan Nicholson 6453605785 osmesa: Link with -ldl for dlopen code
Now that the dlopen wrappers are built into libmesa.a, we need to link
standalone libOSMesa with libdl to resolve dlopen and friends on
platforms that need it.
(cherry picked from commit 4795dd5950)
2009-06-04 19:47:41 -07:00
Dan Nicholson 4795dd5950 osmesa: Link with -ldl for dlopen code
Now that the dlopen wrappers are built into libmesa.a, we need to link
standalone libOSMesa with libdl to resolve dlopen and friends on
platforms that need it.
2009-06-04 19:45:32 -07:00
Dan Nicholson bc302b2a33 Use separate $(MINSTALL) for installing libraries
The special feature of bin/minstall to copy symlinks is only ever needed
when installing libraries which may have .so symlinks. All the headers
and directories can use a normal install program.

These two modes are separated as $(INSTALL) and $(MINSTALL) to allow the
user (or autoconf) to override installing normal files as they please.
An autoconf check for the install program has been added and will be
used in preference to minstall when available.

Fixes bug 16053.
2009-06-01 06:32:52 -07:00
Jakob Bornecrantz dfa4ebcbcc rbug: Add Gallium Remote Debugger Protocol code
This is the (de)marshalling and connection managment code
2009-06-01 11:19:39 +01:00
Jerome Glisse 221b30d595 Merge commit 'origin/master' into radeon-rewrite
Conflicts:
	src/mesa/drivers/dri/r200/r200_state.c
	src/mesa/drivers/dri/r300/r300_context.h
	src/mesa/drivers/dri/r300/r300_fragprog.c
	src/mesa/drivers/dri/r300/r300_state.c
	src/mesa/drivers/dri/r300/r300_texmem.c
	src/mesa/drivers/dri/r300/r300_texstate.c
	src/mesa/drivers/dri/r300/r500_fragprog.c
	src/mesa/drivers/dri/radeon/radeon_screen.c
	src/mesa/drivers/dri/radeon/radeon_state.c
2009-05-10 16:57:22 +02:00
Dan Nicholson 66f9786256 autoconf: Add switch for optional EGL
EGL doesn't build on all platforms, so allow people to opt out.
2009-04-29 12:15:07 -07:00
Dan Nicholson 356f311c4a autoconf: Clean up some m4 usage
m4_fatal is equivalent to m4_errprint + m4_exit.
2009-04-29 12:15:07 -07:00
Samuel Thibault d18dd6ad11 GNU/Hurd fixes
Here is a couple of fixes for GNU/Hurd:
- dri_interface.h: no libdrm support either.
- configure.ac:
 - GNU/Hurd is a GNU OS with _GNU_SOURCE and PTHREADS.
 - GNU needs a couple of flags like other OSes

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-04-24 19:10:01 -07:00
Dave Airlie 466c78c935 Merge remote branch 'origin/master' into radeon-rewrite 2009-04-22 21:41:57 +10:00
Michel Dänzer 6bd4bc785e Update GALLIUM_AUXILIARY_DIRS in configure.ac to match configs/default. 2009-04-21 18:32:42 +01:00
Jakob Bornecrantz 373e671683 autoconf: Build gallium softpipe when driver=xlib 2009-04-19 16:24:41 +01:00
Alex Deucher 04f335fd16 Merge branch 'radeon-rewrite' of git+ssh://agd5f@git.freedesktop.org/git/mesa/mesa into r6xx-rewrite 2009-04-10 17:16:08 -04:00
Robert Noland 48f0543b39 Build dri drivers for powerpc and sparc on FreeBSD. 2009-04-10 12:55:50 -05:00
Dave Airlie d1a9b1f513 Merge remote branch 'origin/master' into radeon-rewrite
Conflicts:
	src/mesa/drivers/dri/r200/r200_tex.c
	src/mesa/drivers/dri/r300/r300_cmdbuf.c
	src/mesa/drivers/dri/r300/r300_context.h
	src/mesa/drivers/dri/r300/r300_swtcl.c
	src/mesa/drivers/dri/r300/r300_tex.c
	src/mesa/drivers/dri/r300/r300_texmem.c
	src/mesa/drivers/dri/r300/r300_texstate.c
	src/mesa/drivers/dri/radeon/radeon_tex.c
2009-04-09 10:31:08 +10:00
Alex Deucher 4138bdb3b1 R600: initial copy of r300 code 2009-04-08 15:16:35 -04:00
Alan Coopersmith 3cf6e62ae3 mklib improvements for Solaris
Move flags for linking standard C/C++ libraries from configure.ac to mklib
Use -norunpath flag when linking with Sun C++ compiler
Convert mklib -exports list into a linker mapfile
Set FINAL_LIBS correctly when -noprefix is used

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-03-25 11:07:30 -07:00
Dave Airlie 407e8ae5b1 Merge remote branch 'main/master' into radeon-rewrite
Conflicts:
	src/mesa/drivers/dri/r300/r300_cmdbuf.c
	src/mesa/drivers/dri/r300/r300_state.c
	src/mesa/drivers/dri/r300/r300_swtcl.c
	src/mesa/drivers/dri/r300/radeon_ioctl.c
	src/mesa/drivers/dri/radeon/radeon_screen.c
2009-03-20 10:52:17 +10:00
Joel Bosveld 8acca48cd5 st/xorg: Install to XORG_DRIVER_INSTALL_DIR 2009-03-06 01:31:49 +01:00
Dan Nicholson ac55db1d7d autoconf: Restore _GNU_SOURCE for all Linux systems
This catches the linux-uclibc case and any others that were being set
prior to 98fcdf3f. Fixes bug 20345.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-03-04 13:19:32 -08:00
David S. Miller 857ac1e817 mesa: Resurrect SPARC asm code.
This rewrites the sparc GLAPI code so that it's PIC friendly and works
with all of the TLS/PTHREADS/64-bit/32-bit combinations properly.

As a result we can turn SPARC asm back on.  Currently it's only
enabled on Linux, as that's the only place where I can test this
stuff out.

For the moment the cliptest SPARC asm routines are disabled as they
are non-working.  The problem is that they use register %g7 as a
temporary which is where the threading libraries store the thread
pointer on SPARC.  I will fix that code up in a future change as it's
a pretty important routine to optimize.

Like x86 we do the runtime patch as a pthread once-invoked initializer
in init_glapi_relocs().

Unlike x86, however, our GLAPI stubs on SPARC are just two instruction
sequences that branch to a trampoline and put the GLAPI offset into a
register.  The trampoline is what we run-time patch.  The stubs thus
all look like:

glFoo:
	ba		__glapi_sparc_foo_stub
	 sethi		GLAPI_OFFSET(glFOO) * PTR_SIZE, %g3

This actually makes generate_entrypoint() a lot simpler on SPARC.  For
this case in generate_entrypoint() we generate stubs using a 'call'
instead of the 'ba' above to make sure it can reach.

In order to get a proper tail call going here, in the unpatched case,
we do several tricks.  To get the current PC, for example, we save the
return address register into a temporary, do a call, save the return
address register written by the call to another temporary, then
restore the original return address register value.  This is to
avoid having to allocate a stack frame.

This is necessary for PIC address formation.

This new GLAPI scheme lets us get rid of the ugly SPARC GLAPI hacks in
__glXInitialize() and one_time_init().

Signed-off-by: David S. Miller <davem@davemloft.net>
2009-02-26 18:29:48 -07:00
Dan Nicholson 53b3734511 autoconf: Fixup EGL build
This gets the needed libraries pulled in for libEGL for autoconf.
2009-02-25 17:45:34 -08:00
David S. Miller 32dc28ac7a mesa: Build DRI by default on Linux/sparc
Signed-off-by: David S. Miller <davem@davemloft.net>
2009-02-24 20:06:05 -07:00
Jakob Bornecrantz d67bd60ecf gallium: s/GALLIUM_DRIVER_DIRS/GALLIUM_DRIVERS_DIRS/ 2009-02-20 11:25:55 +00:00
Dave Airlie b0e8ac8fd2 radeon: add cflags to decide whether to link libdrm_radeon or not.
You don't need libdrm_radeon for the legacy driver to build,
only for the experimental mm/cs paths.
2009-02-15 17:03:47 +10:00
Jakob Bornecrantz 11eb127e47 gallium: Disable i965simple pipe driver after it was broken
It is only the i965simple pipe driver that was broken
	in the gallium-texture-transfere merge that is being
	disabled, mothing more nothing less.

	FYI, there never where working i965 hardware support
	in gallium anyways.
2009-02-18 17:15:31 +00:00
Dan Nicholson 252671f6eb autoconf: Always enable glew
Maybe this should turn into an option (--disable-glew), but for now just
enable glew all the time.
2009-02-16 09:28:35 -08:00
Dan Nicholson 2977cee38e autoconf: Add GLEW needed by progs when building GLUT
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-02-13 07:41:51 -08:00
Jakob Bornecrantz 3ede3776e2 gallium: Add a bunch of autoconf options
./configure --help for more info
2009-02-13 01:21:51 +01:00
Dan Nicholson 8217f24f21 autoconf: Fix lib globbing for static builds
Reported-by: Siddhartha Chaudhuri <expiring_frog@yahoo.co.uk>
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-02-11 15:16:00 -08:00
Dan Nicholson c5bae14245 autoconf: Adjust to new asm SOURCES variables
Commit 90b2beb661 changed the assembly
variables. Without this change, the glapi assembly wasn't being built
when it was supposed to, resulting in missing symbols in libGL.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-02-11 11:58:39 -08:00
Dan Nicholson 61e925f354 autoconf: Restore commented ASM_FLAGS
This is not the proper approach to disabling assembly. If there are bugs,
they should be fixed or the assembly can default to off.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-02-11 11:56:17 -08:00
Jakob Bornecrantz 7e54d7d3d6 gallium: Update autoconf to latest gallium build 2009-02-11 02:45:15 +01:00
Jakob Bornecrantz e94b4dd4f0 gallium: Disable nouveau by default
Most piep drivers should be able to build by default, but since
	the nouveau ones depend drm they can't be enabled by default.
2009-02-11 02:43:27 +01:00
Brian Paul e97681c7f5 mesa: merge gallium-0.2 into gallium-master-merge
Merge commit 'origin/gallium-0.2' into gallium-master-merge

Conflicts:

	Makefile
	docs/relnotes-7.4.html
	docs/relnotes.html
	src/mesa/drivers/dri/i965/brw_wm.h
	src/mesa/main/imports.c
	src/mesa/main/mtypes.h
	src/mesa/main/texcompress.c
	src/mesa/main/texenvprogram.c
	src/mesa/main/version.h
	src/mesa/vbo/vbo_exec_api.c
	src/mesa/vbo/vbo_save_draw.c
2009-02-09 09:22:22 -07:00
Siddhartha Chaudhuri 1a46c8a062 mesa: autoconf fixes for OS X
See bug report 17566.
2009-02-09 07:59:32 -07:00
Jerome Glisse 14f79d46a5 gallium autoconf/automake 2009-02-01 23:30:19 -08:00
Dan Nicholson a3d223f0d2 autoconf: Use include-fixed directory with makedepend on newer GCC
On newer GCC releases, the compiler's headers have been split between
the include and include-fixed directories. Add both if the directories
exist.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Signed-off-by: Julien Cristau <jcristau@debian.org>
2009-01-30 12:03:16 -08:00
Dan Nicholson 29f603a270 autoconf: Only _GNU_SOURCE feature test macro needed on gnu systems
According to feature_test_macros(7), _GNU_SOURCE encompasses all the
other feature macros we were setting, so we can just dispose of them.
2009-01-12 11:10:31 -08:00
Julien Cristau 7f7fc3e3af mesa: match against *-gnu* instead of *-gnu in configure.ac
Fixes build on arm-linux-gnueabi
2009-01-12 11:08:02 -08:00
Brian 44557bf065 mesa: require libdrm 2.4.3 in configure.ac 2009-01-10 16:32:32 -07:00
Dan Nicholson 8be02fc8c6 Add OSMesa pkg-config file
This makes the GLU .pc file a little simpler, too.
2008-12-14 09:35:29 -08:00
Dan Nicholson 71e208bafe Add more package metadata to the pkg-config files
The pkg-config files have been filled in more thoroughly to allow users
to use mesa more effectively. By adding metadata to Requires.private,
Libs.private and Cflags, we can ensure that all the libraries and
headers will be found in all situations. However, the full substitutions
are only done when using the configure script.

This also fixes the glu pkg-config file to account for using GL or
OSMesa.

Fixes bug 18161.
2008-12-14 08:47:03 -08:00
Kristian Høgsberg 154a9e5317 Bump dri2proto requirement to 1.99.3, drop CopyRegion bitmask from protocol. 2008-12-01 21:44:03 -05:00
RALOVICH, Kristóf 5f19f5c586 configure.ac: advertise XCB 2008-11-26 10:02:11 -07:00
Julien Cristau 98fcdf3f49 configure.ac: Add support for gnu/kfreebsd
Check for *-gnu instead of linux* to set DEFINES.
Change some freebsd* checks to *freebsd*.
2008-10-28 11:45:05 -07:00
Kristian Høgsberg 4a32f0c638 configure.ac: bump dri2proto requirement, drop TTM_API define. 2008-09-04 06:23:14 -04:00
Florent Thoumie b5095ab97f autoconf: disable dri drivers build if being asked
Allow --with-dri-drivers={,no} to disable DRI drivers build.

Signed-off-by: Florent Thoumie <flz@FreeBSD.org>
Signed-off-by: Robert Noland <rnoland@2hip.net>
2008-07-28 11:04:41 -04:00
Dan Nicholson 776c60d3c3 autoconf: Support Motif widgets in GLw with --enable-motif
Add an --enable-motif option, which will enable the Motif widgets in
libGLw and link it with libXm. The Motif installation information will
be gathered from the motif-config script (this comes with LessTif) or
fallback to the standard autoconf checks.

To allow the location of the Motif headers to be set from configure, the
default setting of -I/usr/include/Motif1.2 has been moved into
configs/default and then passed to the Makefile through the MOTIF_CFLAGS
variable.
2008-07-18 08:07:07 -07:00
Dan Nicholson bfb27b5fc0 autoconf: Subsitute SHELL for all platforms
Establish the shell that make will use from configure. This is exactly
how autoconf/automake operate, with the environment variable
CONFIG_SHELL respected to override the autoconf checks. In the usual
case where the user just executes `./configure', autoconf will pick a
shell from the current shell, sh, bash, ksh or sh5 that meets its base
criteria.

The special Solaris case of looking for a POSIX shell has been changed
to just set the SHELL variable since autoconf substitutes this already.
The EXTRA_CONFIG_LINES substitution is dropped as it should no longer be
needed.
2008-07-12 10:25:40 -07:00
Dan Nicholson 99803a4ec9 autoconf: Add information about the --x-* options to --help output
Try to tell the user that the --x-* options are only used when the X
libraries can't be found by pkg-config.
2008-07-11 10:04:46 -07:00
Dan Nicholson e97ab72b59 autoconf: Tell the user about docs/autoconf.html in --help output
The documentation in autoconf.html is much more explicit about how the
different configure options control the build. This adds a notice at the
end of the `./configure --help' output to tell the user about it.
2008-07-11 10:04:46 -07:00
Dan Nicholson e6e4f25aa5 autoconf: Allow commas or spaces to separate DRI drivers
Explicitly allow the argument to --with-dri-drivers to contain
comma-separated or space-separated drivers. A space-separated driver
list worked by chance before.
2008-07-06 14:17:54 -07:00
Dan Nicholson 11ac5b2456 Set library and header installation directories from configuration
Currently the installation directories for libraries and headers are
resolved within the install commands. For instance, the libraries will
be installed to $(INSTALL_DIR)/$(LIB_DIR). This limits the flexibility
of the installation, such as when the libraries should be installed to a
subdirectory like /usr/lib/tls.

This adds the make variables $(INSTALL_LIB_DIR) and $(INSTALL_INC_DIR)
to define the locations that the libraries and headers are installed.
For the static configs, this resolves exactly as before to
$(INSTALL_DIR)/include and $(INSTALL_DIR)/$(LIB_DIR). For autoconf, they
are derived directly from the --libdir and --includedir settings.
2008-07-06 14:15:40 -07:00
Dan Nicholson 5cae1b747b autoconf: Improve the visibility of the swrast DRI driver
Improve the --with-dri-drivers help text so that users are aware that
they should install the swrast DRI driver.
2008-06-30 11:16:09 -07:00
Dan Nicholson 985e1cdfe8 autoconf: Check for posix_memalign
Rather than just defining HAVE_POSIX_MEMALIGN on Linux, check whether
the function exists on all platforms and define the macro if it is.
2008-06-27 16:24:42 -07:00
Alan Coopersmith e1f9adc274 Solaris port of Mesa 7.1 with autoconf support
Signed-off-by: Brian Paul <brian.paul@tungstengraphics.com>
2008-06-21 10:19:45 -06:00
Dave Airlie 41bdb88f27 sparc: add swrast to dri drivers 2008-06-12 16:26:46 +10:00
Dave Airlie 2b0e75ea7a sparc: add DRI drivers for sparc patch from Fedora 2008-06-12 12:06:50 +10:00
Dan Nicholson 871125a68d autoconf: Collect arch/platform settings in one location
The architecture- and platorm-specific settings were scattered
throughout the configure script. This moves them near the beginning
before any of the driver-specific settings.
2008-06-04 13:00:35 -07:00
Dave Airlie 0b734bd7cf mesa/drm/ttm: allow build against non-TTM aware libdrm
I'll release a libdrm 2.3.1 without TTM apis included from a special
drm branch that should allow mesa 7.1 to build against it.

I've had to turn off DRI2 stuff.
2008-06-04 14:08:27 +10:00
George Sapountzis d4510e53d8 drop GLcore 2008-05-23 22:48:55 +03:00
George Sapountzis 280bf89bd4 Add DRI driver that uses the mesa swrast module. 2008-05-20 16:03:44 -04:00
Dan Nicholson 2d709fe272 autoconf: Allow XCB to be used for GLX
Adds an --enable-xcb switch to use XCB in GLX. This only has an effect
when the driver is DRI.
2008-05-09 07:10:24 -07:00
Dan Nicholson 5dbbde5b22 Default DRI driver directory to match X.Org xserver
Since the only valid consumer of the DRI drivers is the X.Org xserver,
this changes the default DRI driver directory to match xorg-server:
${libdir}/dri. The old default of /usr/X11R6/modules/dri was wrong for
nearly all current systems.
2008-05-09 07:06:52 -07:00
Dan Nicholson d368eed9c7 autoconf: Attempt to figure out the PIC flags for the platform
This commit adds an autoconf macro, MESA_PIC_FLAGS, which sets the
PIC flags according to platform and static/shared setting. The platform
specifics are taken straight from libtool.m4 and stripped down to just
the flags and platforms we cover in Mesa. This should hopefully make it
possible to use autoconf on non-GCC platforms.

The macro is added external to configure.ac in acinclude.m4 since it's
pretty bloated.

Note to BSDers: Previously, x86 defaulted to non-PIC on FreeBSD. I
didn't carry that preference into this macro. Instead, you can just use
--disable-pic where desired.
2008-05-09 07:05:16 -07:00
Dan Nicholson e14ebbce41 autoconf: Replace the configs/current symlink from config.status
Minor tweak so that running config.status will entirely recreate the
configure settings by replacing the configs/current symlink.
2008-05-06 11:28:43 -07:00
Dan Nicholson 7d016b76e2 autoconf: Sanitize asm build for cross-compiling and --enable-*-bit
Two fixes to the asm configuration:
 - Disable when the user is cross-compiling for x86 or x86_64 since it
   requires running an executable compiled for the target host.
 - If the user has specified --enable-32-bit on x86_64 or --enable-64-bit
   on x86, respect that and choose the correct asm architecture.
2008-05-05 16:57:07 -07:00
Dan Nicholson cc77e8f113 autoconf: Error for incompatible version of libdrm
The DRI modules can only be built against libdrm master (currently
version 2.3.1), so this should be enforced to save people from trying to
build against older versions.

Added a section at the top of the script to consolidate all required
versions.
2008-05-05 15:45:20 -07:00
Dan Nicholson 297e16cc7a autoconf: More quoting, just to be safe 2008-05-05 15:42:53 -07:00
Dan Nicholson e6a0609f2e autoconf: Allow non-pkg-config builds to succeed
The variable no_x was being set to yes when libX11 was not found through
pkg-config. This causes AC_PATH_XTRA to skip its search for the X11
libraries, which was not the intended effect. Also switched to using the
PKG_CHECK_EXISTS autoconf macro.
2008-05-05 15:16:22 -07:00
Dan Nicholson 00994ac08c autoconf: Scrape the version from configs/default
Added the make script version.mk to print the various version numbers
from configs/default. This is used to substitute the version in autoconf
rather than duplicating it in both places.
2008-05-05 14:21:28 -07:00
George Sapountzis 2ed0f7278e glcore: Set all external variables in configuration
based on patch by Dan Nicholson <dbn.lists@gmail.com>
2008-05-05 18:14:52 +03:00
Dan Nicholson 7154d661a6 autoconf: Fail from autoconf if the pkg-config macros aren't defined
Instead of postponing the error from missing pkg-config macros to when
configure is run, make autoconf exit by using m4 macros.
2008-04-30 14:05:57 -07:00
Dan Nicholson 80f68e1b6a autoconf: Don't substitute MESA_MAJOR and friends
Since the autoconf config inherits from default, we don't need to
duplicate and substitute the MESA_* version numbers in configure.ac.
The version number is only needed in configure for the help text.
2008-04-30 13:31:44 -07:00
George Sapountzis 32a2a095f4 glcore: build from mesa 2008-04-23 11:12:30 +03:00
Eric Anholt 711222bb7b autoconf: Default the build to DRI on OS+CPU combos where it's expected. 2008-04-18 15:04:21 -07:00
Hasso Tepper 9f8df2d07f autoconf: Add dfbsd support. 2008-04-09 10:51:21 -07:00
Kristian Høgsberg e786924bf0 Pick up dri2proto from the standard proto header include path. 2008-04-02 19:17:31 -04:00
Dan Nicholson b645942df9 Use AC_CHECK_PROGS to find alternate make programs
The autoconf macro AC_PATH_PROGS handles the case of searching for
multiple program names already, so we don't need to open code it. Also
changed the search to AC_CHECK_PROGS so that it doesn't set the full
path unless the user specified. Finally, report back the found value at
the end for what the user should run.
2008-03-31 17:00:00 -07:00
Kristian Høgsberg e82dd8c6e1 DRI interface changes and DRI2 direct rendering support.
Add DRI2 direct rendering support to libGL and add DRI2 client side
protocol code.  Extend the GLX 1.3 create drawable functions in
glx_pbuffer.c to call into the DRI driver when possible.

Introduce __DRIconfig, opaque struct that represents a DRI driver
configuration.  Get's rid of the open coded __GLcontextModes in the
DRI driver interface and the context modes create and destroy
functions that the loader was requires to provide.  glcore.h is no
longer part of the DRI driver interface.  The DRI config is GL binding
agnostic, that is, not specific to GLX, EGL or other bindings.

The core API is now also an extension, and the driver exports a list
of extensions as the symbol __driDriverExtensions, which the loader
must dlsym() for.  The list of extension will always include the DRI
core extension, which allows creating and manipulating DRI screens,
drawables and contexts.  The DRI legacy extension, when available,
provides alternative entry points for creating the DRI objects that
work with the XF86DRI infrastructure.

Change DRI2 client code to not use drm drawables or contexts.  We
never used drm_drawable_t's and the only use for drm_context_t was as
a unique identifier when taking the lock.  We now just allocate a
unique lock ID out of the DRILock sarea block.  Once we get rid of the
lock entirely, we can drop this hack.

Change the interface between dri_util.c and the drivers, so that the
drivers now export the DriverAPI struct as driDriverAPI instead of the
InitScreen entry point.  This lets us avoid dlsym()'ing for the DRI2
init screen function to see if DRI2 is supported by the driver.
2008-03-31 16:51:26 -04:00
Eric Anholt c986421694 autoconf: Add a workaround for second AC_PROG_PATH not overwriting results. 2008-03-22 11:03:16 -07:00
Eric Anholt 050c533cbf autoconf: automatically detect if -ldl is required.
This logic was copied from the xserver.
2008-03-21 14:19:30 -07:00
Eric Anholt 5ad06156b2 Fix autoconf build on FreeBSD: detect gmake, and put -D*_SOURCE under linux. 2008-03-21 14:19:29 -07:00
Dan Nicholson b957655a91 autoconf: Enable xdemos by default when we build libGL
Since the xdemos only link to libGL now, we can enable them for all but
the osmesa driver target.
2008-03-10 16:11:04 -07:00
Dan Nicholson db7fc63110 autoconf: Print GCC include path directly and be more robust using it
Rather than constructing the GCC include path from `-print-search-dirs',
we can get the path directly from `-print-file-name=include'. This is
used in the Linux kernel build, for example. If no output is returned
from the command, then we don't append a -I path the the makedepend
options.
2008-03-07 11:48:09 -08:00
Kristian Høgsberg bcecea6ea6 autoconf: Add gcc search patch to MKDEP_OPTIONS to eliminate warnings.
Also, use -include to avoid error message when make initially fails to
include the non-existent depend file.
2008-02-25 19:02:07 -05:00
Dan Nicholson 758b998941 autoconf: Fix thinko when checking freebsd CPU types 2008-02-21 10:32:04 -08:00
Dan Nicholson 112a40ec02 autoconf: Set the default drivers after checking platform specifics
The platform-specific overrides to the DRI drivers were being ignored
because the default was being set first. Instead, have the default be a
fallback after the platform checks.
2008-02-21 10:19:55 -08:00
Adam Jackson 66611f2298 Trivial SELinux awareness. Enable with --enable-selinux.
Avoids AVC warnings when allocating executable memory by first checking
if the current process has permission to do so.
2008-02-15 13:49:12 -05:00
Dan Nicholson 0c275b6a41 autoconf: Use -fno-strict-aliasing on GCC
This change adds -fno-strict-aliasing when using gcc and g++, just like
the existing configs.
2008-01-15 22:53:18 -08:00
Dan Nicholson 544ab209e7 Allow osmesa to be enabled or disabled
The conditional in src/mesa/Makefile currently hardcodes the cases where
libOSMesa can be built on libGL. Likewise, the xlib case always includes
libOSMesa in the stand-alone target.

This changes the conditional to a loop over the DRIVER_DIRS variable.
This means that any driver configuration can enable or disable osmesa.
The current "stand-alone" rule is changed so that DRIVER_DIRS=x11 and
DRIVER_DIRS="x11 osmesa" are both respected.

The configure option is changed to --enable-gl-osmesa as this change
allows libOSMesa to be built upon any of the libGL-enabling drivers.
2008-01-11 08:25:15 -08:00
Dan Nicholson ab57cbaccc autoconf: Helper options for adding GCC 32/64 bit flags
Two new configure options to add -m32 or -m64 to the CFLAGS and CXXFLAGS
when GCC is in use. By default, the user supplied options are
environment variables are respected, but these options are quick helps
for the common case of x86/x86_64 using GCC.
2007-12-26 15:38:30 -06:00
Dan Nicholson c79c93c0ac autoconf: Improve help text for demos and DRI drivers
Changed the text for the default demos to be "auto" instead of "yes"
since that didn't make much sense in this context. Added an example
value for the --with-dri-drivers option as suggested by Brian.
2007-12-12 18:13:04 -08:00