Commit Graph

136 Commits

Author SHA1 Message Date
José Fonseca ea532f0e72 scons: Make LLVM a black-white dependency.
Now that draw depends on llvm it is very difficult to correctly handle
broken llvm installations. Either the user requests LLVM and it needs to
supply a working installation. Or it doesn't, and it gets no LLVM
accelerate pipe drivers.
2010-04-11 17:17:34 +09:00
José Fonseca 9fc93b8041 scons: Use libdrm options only where needed.
Prevents needless recompiles when switching dri=yes to no.
2010-04-11 17:17:34 +09:00
Zack Rusin c60a161cc5 scons: define DRAW_LLVM if we're building it 2010-04-06 22:41:11 -04:00
José Fonseca cf5cd836de scons: Don't always include/links X11 headers/libs.
Move it into a separate tool.

TODO: Needs to be "tooled" in each SConscript that uses it.
2010-03-31 18:40:10 +01:00
José Fonseca 6047c89a23 scons: Don't always link expat.
Only needed for DRI. Should be linked in DRI specific subdirectories.
2010-03-31 18:38:23 +01:00
Keith Whitwell db5c2235d1 gallium: new raw gallium interface to support standalone tests
Provides basic window system integration behind a simple interface,
allowing tests to be written without dependency on either the driver
or window system.

With a lot of work, could turn into something like glut for gallium.
2010-03-28 10:42:38 -07:00
Jakob Bornecrantz bc88c95990 i915g: Rename winsys prefix to i915_ from intel_
Since the winsys isn't shared with i965 and never will be
2010-03-26 00:38:17 +01:00
José Fonseca e8d884eab9 scons: Fixup the libgl-gdi build. 2010-03-10 11:34:09 +00:00
José Fonseca 601bfb5951 python: Fix up state tracker for sw api. 2010-03-10 10:34:29 +00:00
José Fonseca 78d8e6c98a scons: Always build the identity driver. 2010-03-09 17:08:16 +00:00
José Fonseca 706eda3057 scons: Add new targets option.
This will likely change. Most probably we'll just add an alias to indvidual
targets and use the regular scons targets arguments.
2010-03-09 15:09:32 +00:00
José Fonseca db2e1518ff scons: Always build trace driver
There are so many state trackers and winsys that rely on it for debug
building, and trace can really build anywhere and is thin so there's no
point is making it an option.

Based on  Xavier Chantry <chantry.xavier@gmail.com>'s patch:

"I also removed the trace check in xlib SConscript which is now useless, and
that script seems to deal with the cell driver, so I added cell in the check
for supported drivers."
2010-02-25 17:02:52 +00:00
José Fonseca 8c7d39cc83 scons: A less magic way of not building progs by default.
The problem with the old way is that passing 'progs/subdir' as argument
would fail.
2010-02-15 20:48:24 +00:00
José Fonseca f6a16dfa97 scons: Only build progs when explicitly requested in the command line. 2010-02-10 20:23:10 +00:00
Zack Rusin 08e2eab8a4 scons: export drawllvm after actually checking that llvm is present 2010-02-10 00:08:36 -05:00
Zack Rusin 43f8a82a76 scons: don't assume llvm is always present 2010-02-09 00:00:35 -05:00
Zack Rusin c61bf36393 llvmpipe: export the tgsi translation code to a common layer
the llvmpipe tgsi translation is a lot more complete than what was in
gallivm so replacing the latter with the former. this is needed since
the draw llvm paths will use the same code. effectively the proven
llvmpipe code becomes gallivm.
2010-02-08 18:22:11 -05:00
Alan Hourihane 32e6043150 define own embedded target and cleanup previous commit. 2010-01-28 17:26:05 +00:00
Alan Hourihane 75cd6f3ece Don't define HAVE_POSIX_MEMALIGN for embedded target. 2010-01-28 17:23:31 +00:00
Alan Hourihane dea98eb792 support an 'embedded' platform target which turns off most parts of the
build.
2010-01-26 20:59:12 +00:00
Alan Hourihane 550fc19a5f add missing SCons.Util 2010-01-26 19:57:34 +00:00
Alan Hourihane 6544be6223 Allow the environment to override certain flags. 2010-01-26 19:14:50 +00:00
Brian Paul 9b22427911 Merge branch 'mesa_7_7_branch'
Conflicts:

	src/mesa/drivers/dri/intel/intel_screen.c
	src/mesa/drivers/dri/intel/intel_swapbuffers.c
	src/mesa/drivers/dri/r300/r300_emit.c
	src/mesa/drivers/dri/r300/r300_ioctl.c
	src/mesa/drivers/dri/r300/r300_tex.c
	src/mesa/drivers/dri/r300/r300_texstate.c
2010-01-25 14:46:17 -07:00
Vinson Lee d57ba16ae3 scons: Define _DARWIN_C_SOURCE on Darwin builds. 2010-01-23 21:05:58 -08:00
José Fonseca dc6bcc92ee gallium: Provide alternative stdint.h and stdbool.h C99 headers, instead of ad-hoc definitions.
Everybody is using the C99's integer types. Everybody except Microsoft,
which in turns means everybody is including their own definitions of C99
integer types for MSVC, causing duplicate definitions when linking two
projects. This is the case of building Gallium and LLVM with MSVC.

Shipping alternative stdint.h and stdbool.h headers for MSVC allows us
to share a single definition. It also removes clutter from the Gallium
headers.
2010-01-10 10:39:29 +00:00
José Fonseca 89d778ff02 scons: Don't list cell as a driver.
Cell driver's SConscript never got written, and it is not trivial one to
write, so don't accept cell in the driver option to avoid confusion.
2010-01-01 12:16:20 +00:00
José Fonseca 7bbf7f94ea scons: Build progs together with everything else.
This is a substantial reorganization, This particular commit enables:
- building the progs for unices platforms
- glew is now built as a shared library (it is the default, and it is
inconvenient and pointless to shift away from that default)
- all progs get built by default
2010-01-01 12:16:19 +00:00
José Fonseca 97e2c5ac0b scons: Expose convienience libraries to the host environment.
This fixes MinGW cross compilation build, recently broken due to the use
of convenience libraries in the GLSL preprocessor.
2010-01-01 11:00:58 +00:00
Keith Whitwell aa02683e45 Merge branch 'i965g-restart'
Conflicts:
	configure.ac
2009-12-22 09:40:39 +00: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
Michal Krol a3eb0f718e Merge branch 'master' into glsl-pp-rework-2
Conflicts:
	progs/perf/drawoverhead.c
	progs/perf/teximage.c
	progs/perf/vbo.c
	progs/perf/vertexrate.c
	src/mesa/shader/slang/library/slang_common_builtin_gc.h
2009-12-12 16:48:32 +01:00
José Fonseca 491f384c39 scons: Get GLSL code building correctly when cross compiling.
This is quite messy. GLSL code has to be built twice: one for the
host OS, another for the target OS.
2009-12-10 16:30:08 +00:00
Jakob Bornecrantz 60769b232c svga: Build svga driver 2009-11-17 03:18:06 +01:00
Jakob Bornecrantz 47cbbb7253 i965g: Builds with scons
But there are some missing symbols, "nm -u i965_dri.so"
[SNIP]
                 U brw_surface_bo
                 U brw_surface_pitch
                 U brw_texture_blanket_winsys_buffer
                 U brw_texture_get_winsys_buffer
                 U brw_update_dirty_counts
[SNIP]
2009-11-05 01:22:10 +00: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
Jakob Bornecrantz c4b821a4c6 i965g: Drop i965simple
The driver never work with real hardware and has
bitrotted for quite some time now, might as well
drop it. If somebody wants to look at it just use git.
2009-10-05 19:48:03 +01:00
José Fonseca 946f432a08 llvmpipe: Fork softpipe for experimentation with llvm. 2009-08-29 09:21:15 +01:00
Michel Dänzer d22bd1421c Add support for building the Xorg state tracker with scons.
scons ... statetrackers=xorg
2009-08-25 15:39:05 +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
José Fonseca e9fb90ab88 scons: Don't use deprecated Options. 2009-05-05 13:14:51 +01:00
Corbin Simpson b7ffe1e876 Add scons build support for radeon/r300. 2009-04-04 00:36:05 -07:00
Michel Dänzer 2b6235c9f7 scons: Also link in additional LLVM components.
They don't seem necessary here, but they shouldn't hurt either...
2009-03-09 17:46:49 +01:00
Jakob Bornecrantz 056f847e96 gallium: Also disable i965simple for scons
Please read previous commit for more info.
2009-02-18 17:15:31 +00:00
Corbin Simpson e9b08e7373 Make r300 and amd build in scons. 2009-02-01 23:30:21 -08:00
José Fonseca 9bf83fb016 scons: Build the progs into seperate dirs as well. 2009-01-24 15:56:28 +00:00
Michel Dänzer 359bbe7432 gallivm: Explicitly specify the LLVM components we need. 2009-01-12 12:37:13 +01:00
Michel Dänzer 6b69e3c717 scons: ppc support. 2008-10-23 10:28:48 +02:00
Jonathan White 3c81992676 Added command line option for Scons to select which version of MSVS to use. Versions 7.1, 8.0 and 9.0 are allowed. Usage is scons MSVS_VERSION=8.0. 2008-08-29 11:30:32 -06:00
José Fonseca f52db6cd44 scons: Build the trace pipe driver by default. 2008-08-21 18:46:03 +01:00
José Fonseca 35355f7610 trace: New pipe driver to trace incoming calls.
Only pipe_screen calls traced, and only linux supported, for now.
2008-08-07 18:58:29 +01:00
José Fonseca 2c4349aa3a python: Move the python scons code to a separate tool module. 2008-07-15 17:58:47 +09:00
José Fonseca 6410e94b96 python: New state tracker which exposes the pipe driver to python scripts.
Still under development. Just barely works.
2008-07-13 23:37:40 +09:00
José Fonseca fb4361a93d scons: Fix typo. 2008-06-27 12:35:18 +09:00
José Fonseca 18953a8771 scons: Don't force MSVS 2003. 2008-06-06 15:20:42 +09:00
José Fonseca b04aa714af scons: Put the tool logic in a frontend tool.
More logic can be shared between public and private branches this way.
2008-06-06 14:55:51 +09:00
Jonathan White fe1a2d1fff egl: assorted fixes for Windows
Note that int32_t is typedef'd both in p_compiler.h and eglplatform.h
2008-06-05 15:07:03 -06:00
José Fonseca 5a67df6d7c scons: Integrate gdi winsys.
Conditional build of the winsys based on the platform.
2008-06-03 00:05:54 +09:00
José Fonseca ffc6afcdbf scons: Enable mesa state tracker in all platforms by default.
But only actually build it on some. This results in a better default
scons experience.
2008-05-31 18:55:41 +09:00
José Fonseca b215d7d10c scons: Play nice with MS Embedded Visual C++. 2008-05-28 01:24:06 +09:00
José Fonseca 658f5e7213 scons: A few fixes for building mesa on windows. 2008-04-26 01:14:52 +09:00
José Fonseca a7ce6d3992 scons: More windows userspace fixes. 2008-04-25 19:56:44 +09:00
José Fonseca 35460fc91c scons: Teach scons about user-land windows.
Actually, more like get rid of all our hacks when compiling for
user-land windows.

Only MSVC is supported atm though.
2008-04-25 18:16:25 +09:00
José Fonseca 4f17bd270e scons: Faithfully mimic every WINDDK builtin compiler/linker option. 2008-03-12 13:34:30 +00:00
José Fonseca 5aa108214a scons: Preliminary code for quieting command lines. 2008-03-05 11:39:11 +01:00
Michel Dänzer 72c9d4a660 gallium: Only use C++ compiler for linking when using LLVM.
Otherwise, the shared objects needlessly link against the C++ runtime
environment.
2008-03-04 18:28:23 +01:00
José Fonseca 9a76798112 scons: Force C++ linkage.
We have some C++ code (LLVM), which must be linked with g++ on certain
platforms. SCons tries to guess when to use g++ by looking to the source files,
but this fails, if the C++ code is not list in the command line, but inside in
the library.
2008-03-04 12:40:18 +01:00
José Fonseca 13174c195e scons: Make command line arguments effective again. 2008-03-03 18:54:45 +01:00
José Fonseca 9409043c58 scons: Move common code to a separate file. 2008-02-27 17:36:28 +09:00
José Fonseca 67099cd7b9 scons: Autodetect the default machine. 2008-02-27 16:53:52 +09:00
José Fonseca a6044bdf74 Revert "scons: Prefer MSVS 2003 (patch by Mark Mueller)."
This reverts commit 19f6e1a975.
2008-02-27 09:10:14 +09:00
José Fonseca 19f6e1a975 scons: Prefer MSVS 2003 (patch by Mark Mueller). 2008-02-26 23:59:53 +09:00
José Fonseca 6d336588ed scons: Properly generate PDB files on MSVC. 2008-02-26 23:06:09 +09:00
José Fonseca c8b069cc1e Get more debugging info out of MSVC. 2008-02-25 17:55:45 +09:00
José Fonseca efd336887f Cleanup scons files. 2008-02-25 14:46:53 +09:00
José Fonseca e70a431c3d A few more tweaks to get correct WINDDK compilation. 2008-02-24 16:43:07 +09:00
José Fonseca 58a3d7dfd9 Revamp scons usage. 2008-02-23 19:49:08 +09:00
José Fonseca 26c57d1630 Avoid building problematic module/drivers on windows. 2008-02-23 00:47:28 +09:00
José Fonseca d710a7cfb2 Windows (DDK) compilation support.
It also works when cross compiling with Wine.
2008-02-19 18:53:16 +09:00
José Fonseca b9da3791c9 Remove src/mesa and src/mesa/main from gallium source include paths. 2008-02-19 15:07:53 +09:00
José Fonseca e773a813cf Initial scons support to build gallivm.
Not yet complete.
2008-02-19 14:01:49 +09:00
José Fonseca 687a8b96ef Standardize on using the pipe/ include prefix. 2008-02-18 20:02:42 +09:00
José Fonseca 33ceb6716a Update scons build for new code layout. 2008-02-18 10:52:44 +00:00
José Fonseca 0013796948 gallium: Conditionally use posix libraries/includes. 2008-02-07 19:59:37 +09:00
José Fonseca 81b6a801f7 gallium: Update scons instructions. Propagate user environment. 2008-02-06 14:36:50 +09:00
José Fonseca f4192cb4ca gallium: Make the build output dir depend on the configuration.
The build output dirs mimics the old config names:

  build/linux
  build/linux-dri
  build/linux-dri-x86
  build/linux-dri-x86-debug
  ...
2008-01-31 14:22:21 +09:00
José Fonseca c42e6254cf gallium: Add SCons as alternative build system for Gallium. 2008-01-31 14:22:21 +09:00