summaryrefslogtreecommitdiffstats
path: root/scons
Commit message (Collapse)AuthorAgeFilesLines
* scons: Promote pointer arithmetic to error.José Fonseca2009-11-271-1/+1
| | | | | All code covered by scons is being built on multiple OSes, so pointer arithmetic must really be addressed when spotted.
* util: Remove homegrown Windows KM profiler.José Fonseca2009-11-042-12/+0
| | | | | It's not sampling based so its results are biased towards functions called many times.
* scons: Define _USE_MATH_DEFINES on MSVC.José Fonseca2009-10-262-0/+5
|
* scons: Hack LLVM support on Windows.José Fonseca2009-10-221-2/+43
| | | | | Doesn't quite work yet though, as small differences in the compilation flags used when building LLVM and Mesa cause link failures for STL symbols.
* scons: Disable more MSVC pedantic security warnings.José Fonseca2009-10-221-0/+3
|
* scons: Disable SSE intrinsics on MinGW.José Fonseca2009-10-141-2/+10
| | | | | | | | | | | | | | | | -mstackrealign causes stack corruption on MinGW. And without it the ability to use SSE instrinsics goes down the drain. Even if we use __attribute__((force_align_arg_pointer)) for the functions we explicitly use SSE instrinsics, the SSE code automatically generated by gcc will cause assertion failures. What a nightmare. Thankfully LLVM gets this right, so all runtime generated SSE code just works. rtasm code doesn't assume 16byte alignment. Therefore the bulk of our performance sensitive code is not affected by this. Still, intrinsics can be convenient, and it would be nice to get this working again some day, sp will try to get a reduced test case.
* scons: Don't require -liberty on MinGW.José Fonseca2009-09-241-1/+1
| | | | Not always present.
* scons: Drop gprof support for profile builds; tweak optimization flags instead.José Fonseca2009-09-201-1/+5
| | | | | | gprof is useful for shared libraries, hence our drivers. Nevertheless profilers like oprofile can benefit from disabling some relatively minor optimizations for more accurate / complete results.
* llvmpipe: Make the code portable for MinGW.José Fonseca2009-09-161-1/+5
|
* scons: Allow to use only the WINDDK headers.José Fonseca2009-09-141-15/+30
|
* scons: Allow to use MS's DXSDK headers with MinGW.José Fonseca2009-09-141-3/+12
|
* scons: Pass -mstackrealign option to gcc.José Fonseca2009-09-091-0/+1
| | | | | It is impossible to have gcc generate SSE code without it, as thirdparty applications often call us with an unaligned stack pointer.
* scons: Don't set LLVM_VERSION if one of the llvm-config calls fails.Vinson Lee2009-09-071-8/+10
| | | | | Ubuntu 8.10 has llvm-config version 2.2, which doesn't have nativecodegen. This triggers an exception.
* scons: Used wrong exception class.José Fonseca2009-09-041-1/+1
|
* scons: Don't use scons internal functions.José Fonseca2009-09-041-13/+4
|
* scons: Tool for LLVM. Gracefully disable llvmpipe if LLVM not found.José Fonseca2009-09-011-0/+81
|
* llvmpipe: Allow to build without udis86.José Fonseca2009-08-291-0/+42
|
* scons: Handle Circular dependencies in the libraries.José Fonseca2009-08-131-0/+2
|
* Merge branch 'mesa_7_5_branch'Brian Paul2009-07-172-0/+29
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: Makefile progs/glsl/multitex.c src/mesa/main/enums.c src/mesa/main/state.c src/mesa/main/texenvprogram.c src/mesa/main/version.h
| * scons: Monkey patch os.spawnve on Windows to become thread safe.José Fonseca2009-07-142-0/+29
| | | | | | | | | | | | See also: - http://bugs.python.org/issue6476 - http://scons.tigris.org/issues/show_bug.cgi?id=2449
* | Merge branch 'mesa_7_5_branch'Jakob Bornecrantz2009-06-142-7/+12
|\|
| * scons: Don't raise an exception when DXSDK is not found.José Fonseca2009-06-291-5/+3
| | | | | | | | | | Unfortunately scons does not check if a tool exists before it invokes its generate function.
| * scons: Disable optimizations only for gcc-4.2José Fonseca2009-06-281-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | gcc-4.2's optimizer has a strange bug where it looses code from inner loops in certain situations. For example, if the appearently innocent looking code below is compiled with gcc-4.2 -S -O1, the inner loop's code is missing from the outputed assembly. struct Size { unsigned width; }; struct Command { unsigned length; struct Size sizes[32]; }; extern void emit_command(void *command, unsigned length); void create_surface( struct Size size, unsigned faces, unsigned levels) { struct Command cmd; unsigned face; unsigned level; cmd.length = faces*levels*sizeof(cmd.sizes[0]); for(face = 0; face < faces; ++face) { for(level = 0; level < levels; ++level) { cmd.sizes[face*levels + level] = size; // This should generate a shrl statement, but the whole for body // disappears in gcc-4.2 -O1/-O2/-O3! size.width >>= 1; } } emit(&cmd, sizeof cmd.length + cmd.length); } Note that this is not specific to MinGW's gcc-4.2 crosscompiler (the version typically found in debian/ubuntu's mingw32 packages). gcc-4.2 on Linux also displays the same error. gcc-4.3 and above gets this correctly though. Updated MinGW debian packages with gcc-4.3 are available from http://people.freedesktop.org/~jrfonseca/debian/pool/main/m/
| * scons: Use -Bsymbolic linker option.José Fonseca2009-06-281-0/+5
| | | | | | | | | | | | | | | | This prevents the error relocation R_X86_64_PC32 against symbol `_gl_DispatchTSD' can not be used when making a shared object; recompile with -fPIC when building on x86_64 architecture.
* | Merge branch 'mesa_7_5_branch'Brian Paul2009-06-263-23/+96
|\| | | | | | | | | | | | | | | Conflicts: Makefile src/gallium/drivers/softpipe/sp_screen.c src/mesa/main/version.h
| * scons: Tool to build with DirectX SDK.José Fonseca2009-06-261-0/+66
| | | | | | | | | | Also works with MinGW, as long as the path to the DirectX SDK top directory is set in the DXSDK_DIR environment variable.
| * scons: Don't use C specific options with g++José Fonseca2009-06-262-23/+30
| |
* | Merge branch 'mesa_7_5_branch'Brian Paul2009-06-241-1/+1
|\| | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/mesa/drivers/dri/i915/i915_tex_layout.c src/mesa/drivers/dri/i965/brw_wm_glsl.c src/mesa/drivers/dri/intel/intel_buffer_objects.c src/mesa/drivers/dri/intel/intel_pixel_bitmap.c src/mesa/drivers/dri/intel/intel_pixel_draw.c src/mesa/main/enums.c src/mesa/main/texstate.c src/mesa/vbo/vbo_exec_array.c
| * scons: Output the friendly "Linking ..." message when creating DLLs with MinGW.José Fonseca2009-06-191-1/+1
| |
| * Revert "scons: Debug build by default."José Fonseca2009-06-171-1/+1
| | | | | | | | | | | | Per Brian's request. This reverts commit 25f0c33bb3509958a532bdd72b3945c1d5d1cad5.
| * scons: Debug build by default.José Fonseca2009-06-171-1/+1
| | | | | | | | Match what autotools and other build systems do by default.
* | scons: Indent abbreviated command line strings, so command messages stand out.Michel Dänzer2009-06-111-11/+12
|/ | | | Also add ASPPCOMSTR.
* Revert "scons: Less aggressive optimizations for MSVC 64bit compiler."José Fonseca2009-06-081-16/+1
| | | | This reverts commit fc7f92478286041a018ac4e72d2ccedeea7c0eca.
* scons: Less aggressive optimizations for MSVC 64bit compiler.José Fonseca2009-06-021-4/+17
| | | | | | MSVC 64bit compiler takes forever on some of the files. Might want to revisit this again later.
* scons: Output nice summary messages instead of long command lines.José Fonseca2009-06-021-4/+9
| | | | You can still get the old behavior by passing the option quiet=no to scons.
* scons: mingw is broken with -O1 and higherKeith Whitwell2009-05-082-0/+4
|
* scons: Cleanup.José Fonseca2009-04-172-18/+8
|
* scons: Support winddk 6001.18002.José Fonseca2009-04-142-80/+77
|
* scons: Recent Windows DDK do not include LIB.EXE.José Fonseca2009-04-141-2/+88
| | | | | | Have to use LINK /LIB instead. The biggest problem is when the command line is very long and all the options are included in a argument file -- link doesn't like if /LIB is included in the argument file.
* scons: Get python extensions building correctly on windows.José Fonseca2009-03-301-1/+3
|
* scons: Move MSVC specific away from Mingw builds.José Fonseca2009-03-252-4/+10
|
* scons: Support building with the Windows SDK.José Fonseca2009-03-253-4/+149
| | | | x86_64 is also supported.
* scons: Promote declaration-after-statement to error. Detect more warnings.José Fonseca2009-03-162-3/+11
|
* scons: Use -Wdeclaration-after-statementJosé Fonseca2009-03-132-3/+2
|
* Merge commit 'origin/gallium-0.1'José Fonseca2009-02-232-2/+2
|\ | | | | | | | | | | Conflicts: src/gallium/auxiliary/pipebuffer/pb_bufmgr_mm.c src/gallium/auxiliary/util/u_tile.c
| * scons: Produce map files for debug builds too.José Fonseca2009-02-182-2/+2
| |
| * scons: Choose the appropriate MSVC CRT.José Fonseca2009-01-062-0/+20
| |
| * scons: Specify C99 throughout all the tree.José Fonseca2009-01-051-0/+1
| | | | | | | | | | | | | | | | | | | | MSVC may not support full C99, but supports more than plain C90. And -pedantic without -std=c99 generates too many spurious warnings (specially C++ style comments) to be of any use. Note that using certain C99 features in the cross-platform parts of Gallium is still not possible; namely mid-of-scope variable declarations and named structure initializers will break MSVC builds.
| * scons: Build progs.José Fonseca2008-12-121-0/+531
| | | | | | | | | | | | | | | | Just demos and trivial dirs for starters. Conflicts: .gitignore
* | scons: Unbreak mingw builds.José Fonseca2009-02-122-2/+2
| |