From ea532f0e725bd68e7784189c9b7f6f7bf7f9d901 Mon Sep 17 00:00:00 2001 From: José Fonseca Date: Sat, 10 Apr 2010 02:41:39 +0100 Subject: 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. --- src/gallium/auxiliary/SConscript | 2 +- src/gallium/auxiliary/draw/draw_context.h | 2 +- src/gallium/auxiliary/draw/draw_llvm.h | 4 ++-- src/gallium/auxiliary/draw/draw_private.h | 4 ++-- src/gallium/auxiliary/draw/draw_pt.c | 2 +- src/gallium/auxiliary/draw/draw_vs_llvm.c | 2 +- src/gallium/auxiliary/gallivm/lp_bld.h | 4 ++-- 7 files changed, 10 insertions(+), 10 deletions(-) (limited to 'src/gallium/auxiliary') diff --git a/src/gallium/auxiliary/SConscript b/src/gallium/auxiliary/SConscript index bd8139f1de..3ad0600326 100644 --- a/src/gallium/auxiliary/SConscript +++ b/src/gallium/auxiliary/SConscript @@ -191,7 +191,7 @@ source = [ 'target-helpers/wrap_screen.c', ] -if drawllvm: +if env['llvm']: source += [ 'gallivm/lp_bld_alpha.c', 'gallivm/lp_bld_arit.c', diff --git a/src/gallium/auxiliary/draw/draw_context.h b/src/gallium/auxiliary/draw/draw_context.h index a0e1c1c59b..1af4961716 100644 --- a/src/gallium/auxiliary/draw/draw_context.h +++ b/src/gallium/auxiliary/draw/draw_context.h @@ -196,7 +196,7 @@ boolean draw_need_pipeline(const struct draw_context *draw, const struct pipe_rasterizer_state *rasterizer, unsigned prim ); -#ifdef DRAW_LLVM +#ifdef HAVE_LLVM /******************************************************************************* * LLVM integration */ diff --git a/src/gallium/auxiliary/draw/draw_llvm.h b/src/gallium/auxiliary/draw/draw_llvm.h index d1cbac4af9..28b9044a81 100644 --- a/src/gallium/auxiliary/draw/draw_llvm.h +++ b/src/gallium/auxiliary/draw/draw_llvm.h @@ -1,5 +1,5 @@ -#ifndef DRAW_LLVM_H -#define DRAW_LLVM_H +#ifndef HAVE_LLVM_H +#define HAVE_LLVM_H #include "draw/draw_private.h" diff --git a/src/gallium/auxiliary/draw/draw_private.h b/src/gallium/auxiliary/draw/draw_private.h index 7e24e5fd6f..da64102d9d 100644 --- a/src/gallium/auxiliary/draw/draw_private.h +++ b/src/gallium/auxiliary/draw/draw_private.h @@ -46,7 +46,7 @@ #include "tgsi/tgsi_scan.h" -#ifdef DRAW_LLVM +#ifdef HAVE_LLVM #include #endif @@ -241,7 +241,7 @@ struct draw_context unsigned instance_id; -#ifdef DRAW_LLVM +#ifdef HAVE_LLVM LLVMExecutionEngineRef engine; #endif void *driver_private; diff --git a/src/gallium/auxiliary/draw/draw_pt.c b/src/gallium/auxiliary/draw/draw_pt.c index a60a3b2a2b..43f6c5650a 100644 --- a/src/gallium/auxiliary/draw/draw_pt.c +++ b/src/gallium/auxiliary/draw/draw_pt.c @@ -140,7 +140,7 @@ boolean draw_pt_init( struct draw_context *draw ) if (!draw->pt.middle.fetch_shade_emit) return FALSE; -#if DRAW_LLVM +#if HAVE_LLVM draw->pt.middle.general = draw_pt_fetch_pipeline_or_emit_llvm( draw ); #else draw->pt.middle.general = NULL; diff --git a/src/gallium/auxiliary/draw/draw_vs_llvm.c b/src/gallium/auxiliary/draw/draw_vs_llvm.c index 0c483de407..2a3b6b39b9 100644 --- a/src/gallium/auxiliary/draw/draw_vs_llvm.c +++ b/src/gallium/auxiliary/draw/draw_vs_llvm.c @@ -40,7 +40,7 @@ #include "tgsi/tgsi_parse.h" -#ifdef DRAW_LLVM +#ifdef HAVE_LLVM struct draw_llvm_vertex_shader { struct draw_vertex_shader base; diff --git a/src/gallium/auxiliary/gallivm/lp_bld.h b/src/gallium/auxiliary/gallivm/lp_bld.h index 70a4960f91..2fa682f400 100644 --- a/src/gallium/auxiliary/gallivm/lp_bld.h +++ b/src/gallium/auxiliary/gallivm/lp_bld.h @@ -38,9 +38,9 @@ #include -/** Set version to 0 if missing to avoid #ifdef HAVE_LLVM everywhere */ +/** Ensure HAVE_LLVM is set to avoid #ifdef HAVE_LLVM everywhere */ #ifndef HAVE_LLVM -#define HAVE_LLVM 0x0207 +#error "HAVE_LLVM should be set with LLVM's version number, e.g. (0x0207 for 2.7)" #endif -- cgit v1.2.3