mesa: Fix depend.es[12] generation when LLVM is enabled.
"llvm-config --cflags" outputs -f options, which conflict makedepend. Clean up compiler flags and append LLVM_CFLAGS to the new xxx_CFLAGS instead of xxx_CPPFLAGS, where xxx may be MESA, ES1, or ES2.
This commit is contained in:
@@ -16,16 +16,6 @@ MESA_OBJ_DIR := .
|
|||||||
ES1_OBJ_DIR := objs-es1
|
ES1_OBJ_DIR := objs-es1
|
||||||
ES2_OBJ_DIR := objs-es2
|
ES2_OBJ_DIR := objs-es2
|
||||||
|
|
||||||
MESA_CPPFLAGS := $(API_DEFINES)
|
|
||||||
ES1_CPPFLAGS := -DFEATURE_ES1=1
|
|
||||||
ES2_CPPFLAGS := -DFEATURE_ES2=1
|
|
||||||
|
|
||||||
ifeq ($(MESA_LLVM),1)
|
|
||||||
MESA_CPPFLAGS += $(LLVM_CFLAGS)
|
|
||||||
ES1_CPPFLAGS += $(LLVM_CFLAGS)
|
|
||||||
ES2_CPPFLAGS += $(LLVM_CFLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
|
|
||||||
include sources.mak
|
include sources.mak
|
||||||
|
|
||||||
@@ -38,24 +28,33 @@ ES1_GALLIUM_OBJECTS := $(addprefix $(ES1_OBJ_DIR)/, $(MESA_GALLIUM_OBJECTS))
|
|||||||
ES2_GALLIUM_OBJECTS := $(addprefix $(ES2_OBJ_DIR)/, $(MESA_GALLIUM_OBJECTS))
|
ES2_GALLIUM_OBJECTS := $(addprefix $(ES2_OBJ_DIR)/, $(MESA_GALLIUM_OBJECTS))
|
||||||
MESA_GALLIUM_OBJECTS := $(addprefix $(MESA_OBJ_DIR)/, $(MESA_GALLIUM_OBJECTS))
|
MESA_GALLIUM_OBJECTS := $(addprefix $(MESA_OBJ_DIR)/, $(MESA_GALLIUM_OBJECTS))
|
||||||
|
|
||||||
# adjust include dirs
|
# define preprocessor flags
|
||||||
MESA_INCLUDES := $(INCLUDE_DIRS)
|
MESA_CPPFLAGS := $(API_DEFINES) $(DEFINES)
|
||||||
ES1_INCLUDES := -I$(TOP)/src/mapi/es1api $(INCLUDE_DIRS)
|
ES1_CPPFLAGS := -DFEATURE_ES1=1 $(DEFINES)
|
||||||
ES2_INCLUDES := -I$(TOP)/src/mapi/es2api $(INCLUDE_DIRS)
|
ES2_CPPFLAGS := -DFEATURE_ES2=1 $(DEFINES)
|
||||||
MESA_INCLUDES := -I$(TOP)/src/glsl $(MESA_INCLUDES)
|
|
||||||
ES1_INCLUDES := -I$(TOP)/src/glsl $(ES1_INCLUDES)
|
# append include dirs
|
||||||
ES2_INCLUDES := -I$(TOP)/src/glsl $(ES2_INCLUDES)
|
MESA_CPPFLAGS += $(INCLUDE_DIRS)
|
||||||
# For symbol_table.h in glsl compiler headers.
|
ES1_CPPFLAGS += -I$(TOP)/src/mapi/es1api $(INCLUDE_DIRS)
|
||||||
MESA_INCLUDES := -I$(TOP)/src/mesa/shader $(MESA_INCLUDES)
|
ES2_CPPFLAGS += -I$(TOP)/src/mapi/es2api $(INCLUDE_DIRS)
|
||||||
|
|
||||||
|
# tidy compiler flags
|
||||||
|
CFLAGS := $(filter-out $(DEFINES), $(CFLAGS))
|
||||||
|
CXXFLAGS := $(filter-out $(DEFINES), $(CXXFLAGS))
|
||||||
|
|
||||||
|
# LLVM is needed for the state tracker
|
||||||
|
MESA_CFLAGS := $(LLVM_CFLAGS)
|
||||||
|
ES1_CFLAGS := $(LLVM_CFLAGS)
|
||||||
|
ES2_CFLAGS := $(LLVM_CFLAGS)
|
||||||
|
|
||||||
define mesa-cc-c
|
define mesa-cc-c
|
||||||
@mkdir -p $(dir $@)
|
@mkdir -p $(dir $@)
|
||||||
$(CC) -c -o $@ $< $($(1)_CPPFLAGS) $($(1)_INCLUDES) $(CFLAGS)
|
$(CC) -c -o $@ $< $($(1)_CPPFLAGS) $($(1)_CFLAGS) $(CFLAGS)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
define mesa-cxx-c
|
define mesa-cxx-c
|
||||||
@mkdir -p $(dir $@)
|
@mkdir -p $(dir $@)
|
||||||
$(CXX) -c -o $@ $< $($(1)_CPPFLAGS) $($(1)_INCLUDES) $(CXXFLAGS)
|
$(CXX) -c -o $@ $< $($(1)_CPPFLAGS) $($(1)_CFLAGS) $(CXXFLAGS)
|
||||||
endef
|
endef
|
||||||
|
|
||||||
$(MESA_OBJ_DIR)/%.o: %.c
|
$(MESA_OBJ_DIR)/%.o: %.c
|
||||||
@@ -144,22 +143,20 @@ asm_subdirs:
|
|||||||
depend: $(ALL_SOURCES)
|
depend: $(ALL_SOURCES)
|
||||||
@ echo "running $(MKDEP)"
|
@ echo "running $(MKDEP)"
|
||||||
@ touch depend
|
@ touch depend
|
||||||
@$(MKDEP) $(MKDEP_OPTIONS) -p$(MESA_OBJ_DIR)/ $(DEFINES) \
|
@$(MKDEP) $(MKDEP_OPTIONS) -p$(MESA_OBJ_DIR)/ $(MESA_CPPFLAGS) \
|
||||||
$(INCLUDE_DIRS) $(ALL_SOURCES) > /dev/null 2>/dev/null
|
$(ALL_SOURCES) > /dev/null 2>/dev/null
|
||||||
|
|
||||||
depend.es1: $(ALL_SOURCES)
|
depend.es1: $(ALL_SOURCES)
|
||||||
@echo "running $(MKDEP) for ES1"
|
@echo "running $(MKDEP) for ES1"
|
||||||
@touch $@
|
@touch $@
|
||||||
@$(MKDEP) $(MKDEP_OPTIONS) -f$@ -p$(ES1_OBJ_DIR)/ $(DEFINES) \
|
@$(MKDEP) $(MKDEP_OPTIONS) -f$@ -p$(ES1_OBJ_DIR)/ $(ES1_CPPFLAGS) \
|
||||||
$(ES1_CPPFLAGS) $(ES1_INCLUDES) $(ALL_SOURCES) \
|
$(ALL_SOURCES) > /dev/null 2>/dev/null
|
||||||
> /dev/null 2>/dev/null
|
|
||||||
|
|
||||||
depend.es2: $(ALL_SOURCES)
|
depend.es2: $(ALL_SOURCES)
|
||||||
@echo "running $(MKDEP) for ES2"
|
@echo "running $(MKDEP) for ES2"
|
||||||
@touch $@
|
@touch $@
|
||||||
@$(MKDEP) $(MKDEP_OPTIONS) -f$@ -p$(ES2_OBJ_DIR)/ $(DEFINES) \
|
@$(MKDEP) $(MKDEP_OPTIONS) -f$@ -p$(ES2_OBJ_DIR)/ $(ES2_CPPFLAGS) \
|
||||||
$(ES2_CPPFLAGS) $(ES2_INCLUDES) $(ALL_SOURCES) \
|
$(ALL_SOURCES) > /dev/null 2>/dev/null
|
||||||
> /dev/null 2>/dev/null
|
|
||||||
|
|
||||||
######################################################################
|
######################################################################
|
||||||
# Installation rules
|
# Installation rules
|
||||||
|
@@ -358,6 +358,7 @@ GLSL_LIBS = \
|
|||||||
|
|
||||||
INCLUDE_DIRS = \
|
INCLUDE_DIRS = \
|
||||||
-I$(TOP)/include \
|
-I$(TOP)/include \
|
||||||
|
-I$(TOP)/src/glsl \
|
||||||
-I$(TOP)/src/mesa \
|
-I$(TOP)/src/mesa \
|
||||||
-I$(TOP)/src/mapi \
|
-I$(TOP)/src/mapi \
|
||||||
-I$(TOP)/src/gallium/include \
|
-I$(TOP)/src/gallium/include \
|
||||||
|
Reference in New Issue
Block a user