glapi: Fix OpenGL and OpenGL ES interop.
[mesa.git] / src / mapi / glapi / Makefile
index acd8429778ae4afb0060de55649a75f9b5d80b56..203a8abd018323c101575530c7dffd29f0d97827 100644 (file)
@@ -8,46 +8,60 @@ TARGET = glapi
 MAPI = $(TOP)/src/mapi/mapi
 
 include sources.mak
-GLAPI_OBJECTS = $(GLAPI_SOURCES:.c=.o)
-GLAPI_ASM_OBJECTS = $(GLAPI_ASM_SOURCES:.S=.o)
-
 include $(MAPI)/sources.mak
-MAPI_GLAPI_OBJECTS := $(MAPI_GLAPI_SOURCES:.c=.o)
-MAPI_GLAPI_SOURCES := $(addprefix $(MAPI)/, $(MAPI_GLAPI_SOURCES))
-
-TARGET_OBJECTS = $(GLAPI_OBJECTS) $(GLAPI_ASM_OBJECTS) $(MAPI_GLAPI_OBJECTS)
 
-INCLUDE_DIRS = \
+glapi_CPPFLAGS := \
        -I$(TOP)/include \
        -I$(TOP)/src/mapi \
-       -I$(TOP)/src/mesa
+       -I$(TOP)/src/mesa \
+       -DMAPI_ABI_HEADER=\"glapi/glapi_mapi_tmp.h\"
+
+ifeq ($(SHARED_GLAPI),1)
+glapi_CPPFLAGS += -DMAPI_MODE_BRIDGE
+glapi_SOURCES := $(addprefix $(MAPI)/, $(MAPI_BRIDGE_SOURCES))
+
+glapi_GLAPI_OBJECTS :=
+glapi_ASM_OBJECTS :=
+glapi_MAPI_OBJECTS := $(MAPI_BRIDGE_SOURCES:.c=.o)
+else
+glapi_CPPFLAGS += -DMAPI_MODE_UTIL
+glapi_SOURCES := $(GLAPI_SOURCES) $(addprefix $(MAPI)/, $(MAPI_UTIL_SOURCES))
+
+glapi_GLAPI_OBJECTS := $(GLAPI_SOURCES:.c=.o)
+glapi_ASM_OBJECTS := $(GLAPI_ASM_SOURCES:.S=.o)
+glapi_MAPI_OBJECTS := $(MAPI_UTIL_SOURCES:.c=.o)
+endif # SHARED_GLAPI
+
+glapi_OBJECTS := \
+       $(glapi_GLAPI_OBJECTS) \
+       $(glapi_ASM_OBJECTS) \
+       $(glapi_MAPI_OBJECTS)
 
 default: depend lib$(TARGET).a
 
-lib$(TARGET).a: $(TARGET_OBJECTS)
-       @$(MKLIB) -o $(TARGET) -static $(TARGET_OBJECTS)
+lib$(TARGET).a: $(glapi_OBJECTS)
+       @$(MKLIB) -o $(TARGET) -static $(glapi_OBJECTS)
 
-$(GLAPI_OBJECTS): %.o: %.c
-       $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) -DMAPI_GLAPI_CURRENT $< -o $@
+$(glapi_GLAPI_OBJECTS): %.o: %.c
+       $(CC) -c $(glapi_CPPFLAGS) $(CFLAGS) $< -o $@
 
-$(GLAPI_ASM_OBJECTS): %.o: %.S
-       $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $< -o $@
+$(glapi_ASM_OBJECTS): %.o: %.S
+       $(CC) -c $(glapi_CPPFLAGS) $(CFLAGS) $< -o $@
 
-$(MAPI_GLAPI_OBJECTS): %.o: $(MAPI)/%.c
-       $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) -DMAPI_GLAPI_CURRENT $< -o $@
+$(glapi_MAPI_OBJECTS): %.o: $(MAPI)/%.c
+       $(CC) -c $(glapi_CPPFLAGS) $(CFLAGS) $< -o $@
 
 install:
 
 clean:
-       -rm -f $(TARGET_OBJECTS)
+       -rm -f $(glapi_OBJECTS)
        -rm -f lib$(TARGET).a
        -rm -f depend depend.bak
 
-depend: $(GLAPI_SOURCES) $(MAPI_GLAPI_SOURCES)
+depend: $(glapi_SOURCES)
        @ echo "running $(MKDEP)"
        @ touch depend
-       @$(MKDEP) $(MKDEP_OPTIONS) -f- $(DEFINES) $(INCLUDE_DIRS) \
-               -DMAPI_GLAPI_CURRENT $(GLAPI_SOURCES) $(MAPI_GLAPI_SOURCES) \
-               2>/dev/null | sed -e 's,^$(MAPI)/,,' > depend
+       @$(MKDEP) $(MKDEP_OPTIONS) -f- $(DEFINES) $(glapi_CPPFLAGS) \
+               $(glapi_SOURCES) 2>/dev/null | sed -e 's,^$(MAPI)/,,' > depend
 
 -include depend