Commit Graph

285 Commits

Author SHA1 Message Date
Pierre Allegraud
8fd8de3995 mesa: fix build for NetBSD
See http://bugs.freedesktop.org/show_bug.cgi?id=32859

NOTE: This is a candidate for the 7.9 and 7.10 branches.

Signed-off-by: Brian Paul <brianp@vmware.com>
2011-01-06 08:00:01 -07:00
Christoph Bumiller
cd1cf78828 Merge remote branch 'origin/nvc0' 2011-01-04 18:20:05 +01:00
Eric Anholt
bd8e658884 intel: Bump libdrm configure.ac requirement for the gen6 BLT ring support. 2011-01-03 15:04:19 -08:00
Chia-I Wu
ada9c78c29 autoconf: Fix --with-driver=xlib --enable-openvg.
st/egl should be enabled with --enable-openvg even the driver is xlib or
osmesa.  Also, GLX_DIRECT_RENDERING should not be defined because libdrm
is not checked.
2011-01-04 01:13:49 +08:00
Christoph Bumiller
0f68236a24 Merge remote branch 'origin/master' into nvc0-new 2010-12-19 21:46:33 +01:00
Brian Paul
7da704ee72 configure: use llvm-config --cppflags instead of --cflags 2010-12-08 06:45:00 -07:00
Jerome Glisse
5da246944a gallium/noop: no operation gallium driver
This driver is a fake swdri driver that perform no operations
beside allocation gallium structure and buffer for upper layer
usage.

It's purpose is to help profiling core mesa/gallium without
having pipe driver overhead hidding hot spot of core code.

scons file are likely inadequate i am unfamiliar with this
build system.

To use it simply rename is to swrast_dri.so and properly set
LIBGL_DRIVERS_PATH env variable.

Signed-off-by: Jerome Glisse <jglisse@redhat.com>
2010-11-15 14:56:40 -05:00
Christoph Bumiller
4c22475383 nvc0: import nvc0 gallium driver 2010-11-12 15:17:40 +01:00
Chia-I Wu
dbacbb8219 autoconf: Add --enable-gallium-egl.
This option comes handy when we want to build gallium DRI drivers but
not st/egl.
2010-11-10 00:57:49 +08:00
Chia-I Wu
1230050363 autoconf: Tidy configure output for EGL.
Prefix EGL driver names by "egl_".  Make it clear that EGL_CLIENT_APIS
is only used by egl_gallium.
2010-10-31 21:22:26 +08:00
Chia-I Wu
156e955c25 autoconf: st/vega requires --enable-openvg.
Make it a warning for now to smooth the transition.
2010-10-30 14:41:17 +08:00
Chia-I Wu
815faa448c autoconf: Update configuration info.
Output API info first.  Move GLU/GLw/GLUT and EGL near driver info.
2010-10-29 12:42:24 +08:00
Chia-I Wu
be5f34a053 autoconf: Better client API selection.
Make autoconf decide the client APIs enabled first.  Then when OpenGL
and OpenGL ES are disabled, there is no need to build src/mesa/;  when
OpenGL is disabled, no $mesa_driver should be built.  Finally, add
--enable-openvg to enable OpenVG.

With these changes, an OpenVG only build can be configured with

  $ ./configure --disable-opengl --enable-openvg

src/mesa, src/glsl, and src/glx will be skipped, which saves a great
deal of compilation time.

And an OpenGL ES only build can be configured with

  $ ./configure --disable-opengl --enable-gles-overlay
2010-10-29 12:10:46 +08:00
Kenneth Graunke
3acc826520 Fix build on systems where "python" is python 3.
First, it changes autoconf to use a "python2" binary when available,
rather than plain "python" (which is ambiguous).  Secondly, it changes
the Makefiles to use $(PYTHON) $(PYTHON_FLAGS) rather than calling
python directly.

Signed-off-by: Xavier Chantry <chantry.xavier@gmail.com>
Signed-off-by: Matthew William Cox <matt@mattcox.ca>
Signed-off-by: Kenneth Graunke <kenneth@whitecape.org>
2010-10-27 12:49:53 -07:00
Marek Olšák
11eb422a16 configure.ac: do not build xorg-r300g by default
NOTE: This is a candidate for the 7.9 branch.
2010-09-28 19:38:40 +02:00
Marek Olšák
a1aec2e2be configure.ac: look for libdrm_radeon before building gallium/r300,r600
NOTE: This is a candidate for the 7.9 branch.
2010-09-28 19:38:39 +02:00
Luca Barbieri
f762f7b85d mesa: make makedepend an hard requirement
Currently makedepend is used by the Mesa Makefile-based build system,
but not required.

Unfortunately, not having it makes dependency resolution non-existent,
which is a source of subtle bugs, and is a rarely tested
configuration, since all Mesa developers likely have it installed.

Furthermore some idioms require dependency resolution to work at all,
such as making headers depend on generated files.
2010-09-27 14:10:18 +02:00
Marek Olšák
85a45dcd5d Build r300g by default
NOTE: This will go to 7.9 as well.
2010-09-24 02:58:50 +02:00
Chia-I Wu
2a910b3396 egl: Enable drm platform by default.
This enables EGL_MESA_drm_display for st/egl in the default setup.
2010-09-19 17:35:04 +08:00
Chia-I Wu
e7424d7240 st/egl: Rename kms backend to drm.
The main use of the backend is to support EGL_MESA_drm_display.  drm
should be a better name.
2010-09-19 17:19:03 +08:00
Kristian Høgsberg
7b34fcc487 configure: Enable -fvisibility=hidden for g++ as well 2010-09-08 20:45:07 -04:00
Jon TURNEY
2b9dac397b Make XF86VIDMODE extension optional
Code in glx/glxcmds.c which uses the XF86VIDMODE extension is already guarded.  Also use
that guard to control inclusion of the xf86vmode.h header, and only enable that guard if the
XF86VIDMODE extension is found by pkgconfig.

This changes the behaviour on platforms which XF86VIDMODE exists, in that XF86VIDMODE used to
be mandatory, but is now optional.

Presumably other build systems are already arranging for -DXF86VIDMODE to be supplied to the
complier when glxcmds.c is compiled, so are not affected by this change

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2010-09-07 13:30:19 -04:00
Jon TURNEY
c55a8a73a4 Cygwin: Teach mklib/minstall to properly install libraries on cygwin
Teach mklib/minstall more about cygwin so libraries are properly installed

Have mklib install the .dll into the lib/ staging directory as well

Have minstall install the .dll into PREFIX/bin at the same time as
installing the .dll.a link library into PREFIX/lib

mklib uses a '-' rather than a '.' as the separator before the version
number in library names on cygwin.  Change the install globs so they match
library names like that.

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Signed-off-by: Brian Paul <brianp@vmware.com>
2010-09-01 08:48:06 -06:00
Eric Anholt
a3c2bd416a Don't pass -ffast-math to clang, since it ignores it and complains. 2010-08-30 14:20:05 -07:00
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
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