glx: Convert to automake.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
Eric Anholt 2012-02-05 06:10:56 +01:00
parent ba1d921bdf
commit 8ffb098234
5 changed files with 131 additions and 121 deletions

View File

@ -379,6 +379,7 @@ fi
AC_SUBST([GL_LIB])
AC_SUBST([GLU_LIB])
AC_SUBST([OSMESA_LIB])
AM_CONDITIONAL(HAVE_MANGLED_GL, test $GL_LIB = MangledGL)
dnl
dnl potentially-infringing-but-nobody-knows-for-sure stuff
@ -703,6 +704,7 @@ if test "x$enable_shared_glapi" = xyes; then
DEFINES="$DEFINES -DIN_DRI_DRIVER"
fi
AC_SUBST([SHARED_GLAPI])
AM_CONDITIONAL(HAVE_SHARED_GLAPI, test $SHARED_GLAPI = 1)
dnl
dnl Driver configuration. Options are xlib, dri and osmesa right now.
@ -1040,6 +1042,7 @@ esac
# builds.
AM_CONDITIONAL(HAVE_XCB_GLX_CREATE_CONTEXT,
test x$HAVE_XCB_GLX_CREATE_CONTEXT = xyes)
AM_CONDITIONAL(HAVE_XF86VIDMODE, test "x$HAVE_XF86VIDMODE" = xyes)
GLESv1_CM_LIB_DEPS="$LIBDRM_LIBS -lm -lpthread $DLOPEN_LIBS"
GLESv1_CM_PC_LIB_PRIV="-lm -lpthread $DLOPEN_LIBS"
@ -1939,6 +1942,7 @@ AC_CONFIG_FILES([configs/autoconf
src/egl/wayland/wayland-egl/Makefile
src/egl/wayland/wayland-egl/wayland-egl.pc
src/egl/wayland/wayland-drm/Makefile
src/glx/Makefile
src/mesa/drivers/dri/dri.pc
src/mesa/drivers/dri/Makefile
src/mesa/drivers/dri/common/Makefile

5
src/glx/.gitignore vendored Normal file
View File

@ -0,0 +1,5 @@
.deps
.libs
Makefile
Makefile.in
libGL.la

View File

@ -1,119 +0,0 @@
TOP = ../..
include $(TOP)/configs/current
ifeq ($(HAVE_XF86VIDMODE),yes)
EXTRA_DEFINES_XF86VIDMODE = -DXF86VIDMODE
endif
EXTRA_DEFINES = $(EXTRA_DEFINES_XF86VIDMODE) -D_REENTRANT \
-DDEFAULT_DRIVER_DIR=\"$(DRI_DRIVER_SEARCH_DIR)\"
SOURCES = \
clientattrib.c \
clientinfo.c \
compsize.c \
create_context.c \
eval.c \
glxconfig.c \
glxcmds.c \
glxcurrent.c \
glx_error.c \
glxext.c \
glxextensions.c \
indirect_glx.c \
indirect.c \
indirect_init.c \
indirect_size.c \
indirect_window_pos.c \
indirect_texture_compression.c \
indirect_transpose_matrix.c \
indirect_vertex_array.c \
indirect_vertex_program.c \
pixel.c \
pixelstore.c \
render2.c \
renderpix.c \
single2.c \
singlepix.c \
vertarr.c \
xfont.c \
glx_pbuffer.c \
glx_query.c \
drisw_glx.c \
dri_common.c \
dri_glx.c \
XF86dri.c \
glxhash.c \
dri2_glx.c \
dri2.c \
applegl_glx.c
ifeq ($(SHARED_GLAPI),1)
GL_LIB_DEPS := -L$(TOP)/$(LIB_DIR) -l$(GLAPI_LIB) $(GL_LIB_DEPS)
EXTRA_DEFINES += -DGLX_SHARED_GLAPI
endif
# override GLAPI_LIB
GLAPI_LIB = $(TOP)/src/mapi/glapi/libglapi.a
OBJECTS = $(SOURCES:.c=.o)
INCLUDES = -I. \
-I$(TOP)/include \
-I$(TOP)/include/GL/internal \
-I$(TOP)/src/mesa \
-I$(TOP)/src/mapi \
-I$(TOP)/src/mapi/glapi \
$(LIBDRM_CFLAGS) \
$(DRI2PROTO_CFLAGS) \
$(GLPROTO_CFLAGS) \
$(X11_INCLUDES)
##### RULES #####
.c.o:
$(CC) -c $(INCLUDES) $(CFLAGS) $(EXTRA_DEFINES) $< -o $@
.S.o:
$(CC) -c $(INCLUDES) $(CFLAGS) $(EXTRA_DEFINES) $< -o $@
##### TARGETS #####
default: depend $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME)
libglx.a: $(OBJECTS)
$(MKLIB) -cplusplus -o glx -static $(OBJECTS)
# Make libGL
$(TOP)/$(LIB_DIR)/$(GL_LIB_NAME): libglx.a $(OBJECTS) $(GLAPI_LIB) Makefile
$(MKLIB) -o $(GL_LIB) -linker '$(CXX)' -ldflags '$(LDFLAGS)' \
-major 1 -minor 2 \
-cplusplus $(MKLIB_OPTIONS) \
-install $(TOP)/$(LIB_DIR) -id $(INSTALL_LIB_DIR)/lib$(GL_LIB).1.dylib \
$(GL_LIB_DEPS) $(OBJECTS) $(GLAPI_LIB)
$(GLAPI_LIB):
@$(MAKE) -C $(TOP)/src/mapi/glapi
depend: $(SOURCES) Makefile
rm -f depend
touch depend
$(MKDEP) $(MKDEP_OPTIONS) $(INCLUDES) $(SOURCES)
# Emacs tags
tags:
etags `find . -name \*.[ch]` `find $(TOP)/include`
install: $(TOP)/$(LIB_DIR)/$(GL_LIB_NAME)
$(MAKE) -C $(TOP)/src/mesa install-libgl
# Remove .o and backup files
clean:
-rm -f $(TOP)/$(LIB_DIR)/$(GL_LIB_GLOB)
-rm -f *.o *~
-rm -f depend depend.bak
-include depend

122
src/glx/Makefile.am Normal file
View File

@ -0,0 +1,122 @@
# Copyright © 2012 Intel Corporation
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the "Software"),
# to deal in the Software without restriction, including without limitation
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
# and/or sell copies of the Software, and to permit persons to whom the
# Software is furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice (including the next
# paragraph) shall be included in all copies or substantial portions of the
# Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
# IN THE SOFTWARE.
if HAVE_SHARED_GLAPI
SHARED_GLAPI_CFLAGS = -DGLX_SHARED_GLAPI
SHARED_GLAPI_LIBS = -L$(top_builddir)/$(LIB_DIR) -lglapi
endif
GLAPI_LIB = ../mapi/glapi/libglapi.a
if HAVE_XF86VIDMODE
EXTRA_DEFINES_XF86VIDMODE = -DXF86VIDMODE
endif
AM_CFLAGS = \
-I$(top_srcdir)/include \
-I$(top_srcdir)/include/GL/internal \
-I$(top_srcdir)/src/mapi \
-I$(top_srcdir)/src/mapi/glapi \
$(SHARED_GLAPI_CFLAGS) \
$(EXTRA_DEFINES_XF86VIDMODE) \
-D_REENTRANT \
-DDEFAULT_DRIVER_DIR=\"$(DRI_DRIVER_SEARCH_DIR)\" \
$(DEFINES) \
$(LIBDRM_CFLAGS) \
$(DRI2PROTO_CFLAGS) \
$(GLPROTO_CFLAGS) \
$(X11_INCLUDES)
if HAVE_MANGLED_GL
MANGLED_GL_LIB = libMangledGL.la
else
NORMAL_GL_LIB = libGL.la
endif
lib_LTLIBRARIES = \
$(NORMAL_GL_LIB) \
$(MANGLED_GL_LIB)
GL_FILES = \
clientattrib.c \
clientinfo.c \
compsize.c \
create_context.c \
eval.c \
glxconfig.c \
glxcmds.c \
glxcurrent.c \
glx_error.c \
glxext.c \
glxextensions.c \
indirect_glx.c \
indirect.c \
indirect_init.c \
indirect_size.c \
indirect_window_pos.c \
indirect_texture_compression.c \
indirect_transpose_matrix.c \
indirect_vertex_array.c \
indirect_vertex_program.c \
pixel.c \
pixelstore.c \
render2.c \
renderpix.c \
single2.c \
singlepix.c \
vertarr.c \
xfont.c \
glx_pbuffer.c \
glx_query.c \
drisw_glx.c \
dri_common.c \
dri_glx.c \
XF86dri.c \
glxhash.c \
dri2_glx.c \
dri2.c \
applegl_glx.c
GL_LIBS = \
$(SHARED_GLAPI_LIBS) \
$(GLAPI_LIB) \
$(GL_LIB_DEPS)
GL_LDFLAGS = \
-version-number 1:2
libGL_la_SOURCES = $(GL_FILES)
libMangledGL_la_SOURCES = $(GL_FILES)
libGL_la_LIBADD = $(GL_LIBS)
libMangledGL_la_LIBADD = $(GL_LIBS)
libGL_la_LDFLAGS = $(GL_LDFLAGS)
libMangledGL_la_LDFLAGS = $(GL_LDFLAGS)
# Provide compatibility with scripts for the old Mesa build system for
# a while by putting a link to the driver into /lib of the build tree.
if !HAVE_MANGLED_GL
all-local: $(NORMAL_GL_LIB) $(MANGLED_GL_LIB)
$(MKDIR_P) $(top_builddir)/$(LIB_DIR);
ln -f .libs/libGL.so.1.2.0 $(top_builddir)/$(LIB_DIR)/libGL.so.1
endif
$(GLAPI_LIB):
@$(MAKE) -C $(TOP)/src/mapi/glapi

View File

@ -206,8 +206,6 @@ install-headers:
install-libgl: default gl.pc install-headers
$(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)
$(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig
$(MINSTALL) $(TOP)/$(LIB_DIR)/$(GL_LIB_GLOB) \
$(DESTDIR)$(INSTALL_LIB_DIR)
$(INSTALL) -m 644 gl.pc $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig
install-osmesa: default osmesa.pc