# libGL will use libglapi for function lookups (IN_DRI_DRIVER means to use
# the remap table)
DEFINES="$DEFINES -DIN_DRI_DRIVER"
+ SRC_DIRS="$SRC_DIRS mapi/shared-glapi"
fi
AC_SUBST([SHARED_GLAPI])
AM_CONDITIONAL(HAVE_SHARED_GLAPI, test $SHARED_GLAPI = 1)
src/egl/wayland/wayland-egl/wayland-egl.pc
src/egl/wayland/wayland-drm/Makefile
src/glx/Makefile
+ src/mapi/shared-glapi/Makefile
src/mesa/drivers/dri/dri.pc
src/mesa/drivers/dri/Makefile
src/mesa/drivers/dri/common/Makefile
if HAVE_EGL_PLATFORM_DRM
AM_CFLAGS += -DHAVE_DRM_PLATFORM
libEGL_la_LIBADD += ../../gbm/libgbm.la
-libEGL_la_LIBADD += ../../gbm/libgbm.la
endif
if HAVE_EGL_PLATFORM_FBDEV
-DDEFAULT_DRIVER_DIR='"$(DRI_DRIVER_SEARCH_DIR)"' \
$(LIBDRM_CFLAGS)
-libgbm_la_LDFLAGS += -L$(top_builddir)/$(LIB_DIR)
-libgbm_la_LIBADD += libgbm_dri.la -lglapi
+libgbm_la_LIBADD += \
+ libgbm_dri.la $(top_builddir)/src/mapi/shared-glapi/libglapi.la
endif
all-local: libgbm.la
if HAVE_SHARED_GLAPI
SHARED_GLAPI_CFLAGS = -DGLX_SHARED_GLAPI
-SHARED_GLAPI_LIBS = -L$(top_builddir)/$(LIB_DIR) -lglapi
+SHARED_GLAPI_LIBS = $(top_builddir)/src/mapi/shared-glapi/libglapi.la
endif
GLAPI_LIB = ../mapi/glapi/libglapi.a
LOCAL_PATH := $(call my-dir)
-# get MAPI_GLAPI_SOURCES
+# get MAPI_GLAPI_FILES
include $(LOCAL_PATH)/mapi/sources.mak
mapi_abi_headers :=
abi_header := shared-glapi/glapi_mapi_tmp.h
-LOCAL_SRC_FILES := $(addprefix mapi/, $(MAPI_GLAPI_SOURCES))
+LOCAL_SRC_FILES := $(MAPI_GLAPI_FILES)
LOCAL_CFLAGS := \
-DMAPI_MODE_GLAPI \
-DMAPI_ABI_HEADER=\"$(ESAPI)/glapi_mapi_tmp.h\"
include $(MAPI)/sources.mak
-esapi_SOURCES := $(addprefix $(MAPI)/, $(MAPI_BRIDGE_SOURCES))
-esapi_OBJECTS := $(MAPI_BRIDGE_SOURCES:.c=.o)
+esapi_SOURCES := $(MAPI_BRIDGE_FILES)
+esapi_OBJECTS := $(notdir $(MAPI_BRIDGE_FILES:.c=.o))
esapi_CPPFLAGS += -DMAPI_MODE_BRIDGE
esapi_LIB_DEPS := -L$(TOP)/$(LIB_DIR) -l$(GLAPI_LIB) $(esapi_LIB_DEPS)
glapi_CPPFLAGS += \
-DMAPI_MODE_BRIDGE \
-DMAPI_ABI_HEADER=\"glapi/glapi_mapi_tmp.h\"
-glapi_SOURCES := $(addprefix $(MAPI)/, $(MAPI_BRIDGE_SOURCES))
+glapi_SOURCES := $(MAPI_BRIDGE_FILES)
glapi_GLAPI_OBJECTS :=
glapi_ASM_OBJECTS :=
-glapi_MAPI_OBJECTS := $(MAPI_BRIDGE_SOURCES:.c=.o)
+glapi_MAPI_OBJECTS := $(notdir $(MAPI_BRIDGE_FILES:.c=.o))
else
glapi_CPPFLAGS += -DMAPI_MODE_UTIL
-glapi_SOURCES := $(GLAPI_SOURCES) $(addprefix $(MAPI)/, $(MAPI_UTIL_SOURCES))
+glapi_SOURCES := $(GLAPI_SOURCES) $(MAPI_UTIL_FILES)
glapi_GLAPI_OBJECTS := $(GLAPI_SOURCES:.c=.o)
glapi_ASM_OBJECTS := $(GLAPI_ASM_SOURCES:.S=.o)
-glapi_MAPI_OBJECTS := $(MAPI_UTIL_SOURCES:.c=.o)
+glapi_MAPI_OBJECTS := $(notdir $(MAPI_UTIL_FILES:.c=.o))
endif # SHARED_GLAPI
glapi_OBJECTS := \
# mapi may be used in several ways
#
# - In default mode, mapi implements the interface defined by mapi.h. To use
-# this mode, compile MAPI_SOURCES.
+# this mode, compile MAPI_FILES.
#
# - In util mode, mapi provides utility functions for use with glapi. To use
-# this mode, compile MAPI_UTIL_SOURCES with MAPI_MODE_UTIL defined.
+# this mode, compile MAPI_UTIL_FILES with MAPI_MODE_UTIL defined.
#
# - In glapi mode, mapi implements the interface defined by glapi.h. To use
-# this mode, compile MAPI_GLAPI_SOURCES with MAPI_MODE_GLAPI defined.
+# this mode, compile MAPI_GLAPI_FILES with MAPI_MODE_GLAPI defined.
#
# - In bridge mode, mapi provides entry points calling into glapi. To use
-# this mode, compile MAPI_BRIDGE_SOURCES with MAPI_MODE_BRIDGE defined.
+# this mode, compile MAPI_BRIDGE_FILES with MAPI_MODE_BRIDGE defined.
-MAPI_UTIL_SOURCES = \
- u_current.c \
- u_execmem.c
+MAPI_UTIL_FILES = \
+ $(TOP)/src/mapi/mapi/u_current.c \
+ $(TOP)/src/mapi/mapi/u_execmem.c
-MAPI_SOURCES = \
- entry.c \
- mapi.c \
- stub.c \
- table.c \
- $(MAPI_UTIL_SOURCES)
+MAPI_FILES = \
+ $(TOP)/src/mapi/mapi/entry.c \
+ $(TOP)/src/mapi/mapi/mapi.c \
+ $(TOP)/src/mapi/mapi/stub.c \
+ $(TOP)/src/mapi/mapi/table.c \
+ $(MAPI_UTIL_FILES)
-MAPI_GLAPI_SOURCES = \
- entry.c \
- mapi_glapi.c \
- stub.c \
- table.c \
- $(MAPI_UTIL_SOURCES)
+MAPI_GLAPI_FILES = \
+ $(TOP)/src/mapi/mapi/entry.c \
+ $(TOP)/src/mapi/mapi/mapi_glapi.c \
+ $(TOP)/src/mapi/mapi/stub.c \
+ $(TOP)/src/mapi/mapi/table.c \
+ $(MAPI_UTIL_FILES)
-MAPI_BRIDGE_SOURCES = \
- entry.c
+MAPI_BRIDGE_FILES = \
+ $(TOP)/src/mapi/mapi/entry.c
+++ /dev/null
-# src/mapi/shared-glapi/Makefile
-#
-# Used by OpenGL ES or when --enable-shared-glapi is specified
-#
-
-TOP := ../../..
-include $(TOP)/configs/current
-
-GLAPI := $(TOP)/src/mapi/glapi
-MAPI := $(TOP)/src/mapi/mapi
-
-glapi_CPPFLAGS := \
- -I$(TOP)/include \
- -I$(TOP)/src/mapi \
- -DMAPI_MODE_GLAPI \
- -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\"
-
-include $(MAPI)/sources.mak
-glapi_SOURCES := $(addprefix $(MAPI)/, $(MAPI_GLAPI_SOURCES))
-glapi_OBJECTS := $(MAPI_GLAPI_SOURCES:.c=.o)
-
-.PHONY: default
-default: depend $(TOP)/$(LIB_DIR)/$(GLAPI_LIB_NAME)
-
-$(TOP)/$(LIB_DIR)/$(GLAPI_LIB_NAME): $(glapi_OBJECTS)
- $(MKLIB) -o $(GLAPI_LIB) -linker '$(CC)' -ldflags '$(LDFLAGS)' \
- -major 0 -minor 0 -patch 0 \
- -id $(INSTALL_LIB_DIR)/lib$(GLAPI_LIB).0.dylib \
- $(MKLIB_OPTIONS) -install $(TOP)/$(LIB_DIR) \
- $(glapi_OBJECTS) $(GLAPI_LIB_DEPS)
-
-$(glapi_OBJECTS): %.o: $(MAPI)/%.c
- $(CC) -c $(glapi_CPPFLAGS) $(CFLAGS) $< -o $@
-
-$(glapi_SOURCES): glapi_mapi_tmp.h
-
-include $(GLAPI)/gen/glapi_gen.mk
-glapi_mapi_tmp.h: $(GLAPI)/gen/gl_and_es_API.xml $(glapi_gen_mapi_deps)
- $(call glapi_gen_mapi,$<,shared-glapi)
-
-.PHONY: clean
-clean:
- -rm -f $(TOP)/$(LIB_DIR)/$(GLAPI_LIB_NAME)
- -rm -f $(glapi_OBJECTS)
- -rm -f depend depend.bak
- -rm -f glapi_mapi_tmp.h
-
-install:
- $(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)
- $(MINSTALL) $(TOP)/$(LIB_DIR)/$(GLAPI_LIB_GLOB) \
- $(DESTDIR)$(INSTALL_LIB_DIR)
-
-# workaround a bug in makedepend
-makedepend_CPPFLAGS := \
- $(filter-out -DMAPI_ABI_HEADER=%, $(glapi_CPPFLAGS))
-$(glapi_OBJECTS): glapi_mapi_tmp.h
-
-depend: $(glapi_SOURCES)
- @echo "running $(MKDEP)"
- @touch depend
- @$(MKDEP) $(MKDEP_OPTIONS) -f- $(DEFINES) $(makedepend_CPPFLAGS) \
- $(glapi_SOURCES) 2>/dev/null | sed -e 's,^$(MAPI)/,,' \
- > depend
-
--include depend
--- /dev/null
+# Used by OpenGL ES or when --enable-shared-glapi is specified
+
+TOP = $(top_srcdir)
+GLAPI = $(top_srcdir)/src/mapi/glapi
+include $(top_srcdir)/src/mapi/mapi/sources.mak
+
+lib_LTLIBRARIES = libglapi.la
+libglapi_la_SOURCES = $(MAPI_GLAPI_FILES)
+
+include $(GLAPI)/gen/glapi_gen.mk
+glapi_mapi_tmp.h : $(GLAPI)/gen/gl_and_es_API.xml $(glapi_gen_mapi_deps)
+ $(call glapi_gen_mapi,$<,shared-glapi)
+
+BUILT_SOURCES = glapi_mapi_tmp.h
+
+AM_CPPFLAGS = \
+ $(DEFINES) \
+ -I$(top_srcdir)/include \
+ -I$(top_srcdir)/src/mapi \
+ -DMAPI_MODE_GLAPI \
+ -DMAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\"
+
+all-local: libglapi.la
+ $(MKDIR_P) $(top_builddir)/$(LIB_DIR)
+ ln -f .libs/libglapi.so.0.0.0 $(top_builddir)/$(LIB_DIR)/libglapi.so
MAPI := $(TOP)/src/mapi/mapi
include $(MAPI)/sources.mak
-VGAPI_SOURCES := $(addprefix $(MAPI)/, $(MAPI_SOURCES))
-VGAPI_OBJECTS := $(MAPI_SOURCES:.c=.o)
+VGAPI_SOURCES := $(MAPI_FILES)
+VGAPI_OBJECTS := $(notdir $(MAPI_FILES:.c=.o))
VGAPI_CPPFLAGS := -DMAPI_ABI_HEADER=\"vgapi/vgapi_tmp.h\"