automake: convert libglapi
* "configure substitutions are not allowed in _SOURCES variables" in automake, so remove the AC_SUBST'ed GLAPI_ASM_SOURCES and instead use some AM_CONDITIONALS to choose which asm sources are used * Change GLAPI_LIB to point to the .la file in other Makefile.am files, and make a link to the .a file for the convenience of other Makefiles which have not yet been converted to automake v2: - Use AM_CPPFLAGS for cleaner build output - EXTRA_SOURCES is not needed - Remove libglapi.a compatibility link on clean Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Eric Anholt <eric@anholt.net> Tested-by: Matt Turner <mattst88@gmail.com>
This commit is contained in:
@@ -47,7 +47,6 @@ DLOPEN_LIBS = @DLOPEN_LIBS@
|
|||||||
|
|
||||||
# Source selection
|
# Source selection
|
||||||
MESA_ASM_FILES = @MESA_ASM_FILES@
|
MESA_ASM_FILES = @MESA_ASM_FILES@
|
||||||
GLAPI_ASM_SOURCES = @GLAPI_ASM_SOURCES@
|
|
||||||
|
|
||||||
# Misc tools and flags
|
# Misc tools and flags
|
||||||
MAKE = @MAKE@
|
MAKE = @MAKE@
|
||||||
|
@@ -454,7 +454,6 @@ AC_ARG_ENABLE([asm],
|
|||||||
)
|
)
|
||||||
asm_arch=""
|
asm_arch=""
|
||||||
MESA_ASM_FILES=""
|
MESA_ASM_FILES=""
|
||||||
GLAPI_ASM_SOURCES=""
|
|
||||||
AC_MSG_CHECKING([whether to enable assembly])
|
AC_MSG_CHECKING([whether to enable assembly])
|
||||||
test "x$enable_asm" = xno && AC_MSG_RESULT([no])
|
test "x$enable_asm" = xno && AC_MSG_RESULT([no])
|
||||||
# disable if cross compiling on x86/x86_64 since we must run gen_matypes
|
# disable if cross compiling on x86/x86_64 since we must run gen_matypes
|
||||||
@@ -503,19 +502,16 @@ if test "x$enable_asm" = xyes; then
|
|||||||
x86)
|
x86)
|
||||||
DEFINES="$DEFINES -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM"
|
DEFINES="$DEFINES -DUSE_X86_ASM -DUSE_MMX_ASM -DUSE_3DNOW_ASM -DUSE_SSE_ASM"
|
||||||
MESA_ASM_FILES='$(X86_FILES)'
|
MESA_ASM_FILES='$(X86_FILES)'
|
||||||
GLAPI_ASM_SOURCES='$(X86_API)'
|
|
||||||
AC_MSG_RESULT([yes, x86])
|
AC_MSG_RESULT([yes, x86])
|
||||||
;;
|
;;
|
||||||
x86_64)
|
x86_64)
|
||||||
DEFINES="$DEFINES -DUSE_X86_64_ASM"
|
DEFINES="$DEFINES -DUSE_X86_64_ASM"
|
||||||
MESA_ASM_FILES='$(X86_64_FILES)'
|
MESA_ASM_FILES='$(X86_64_FILES)'
|
||||||
GLAPI_ASM_SOURCES='$(X86_64_API)'
|
|
||||||
AC_MSG_RESULT([yes, x86_64])
|
AC_MSG_RESULT([yes, x86_64])
|
||||||
;;
|
;;
|
||||||
sparc)
|
sparc)
|
||||||
DEFINES="$DEFINES -DUSE_SPARC_ASM"
|
DEFINES="$DEFINES -DUSE_SPARC_ASM"
|
||||||
MESA_ASM_FILES='$(SPARC_FILES)'
|
MESA_ASM_FILES='$(SPARC_FILES)'
|
||||||
GLAPI_ASM_SOURCES='$(SPARC_API)'
|
|
||||||
AC_MSG_RESULT([yes, sparc])
|
AC_MSG_RESULT([yes, sparc])
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
@@ -524,7 +520,6 @@ if test "x$enable_asm" = xyes; then
|
|||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
AC_SUBST([MESA_ASM_FILES])
|
AC_SUBST([MESA_ASM_FILES])
|
||||||
AC_SUBST([GLAPI_ASM_SOURCES])
|
|
||||||
|
|
||||||
dnl PIC code macro
|
dnl PIC code macro
|
||||||
MESA_PIC_FLAGS
|
MESA_PIC_FLAGS
|
||||||
@@ -2158,6 +2153,7 @@ AC_CONFIG_FILES([configs/current
|
|||||||
src/glsl/tests/Makefile
|
src/glsl/tests/Makefile
|
||||||
src/glx/Makefile
|
src/glx/Makefile
|
||||||
src/glx/tests/Makefile
|
src/glx/tests/Makefile
|
||||||
|
src/mapi/glapi/Makefile
|
||||||
src/mapi/glapi/gen/Makefile
|
src/mapi/glapi/gen/Makefile
|
||||||
src/mapi/shared-glapi/Makefile
|
src/mapi/shared-glapi/Makefile
|
||||||
src/mapi/glapi/tests/Makefile
|
src/mapi/glapi/tests/Makefile
|
||||||
|
@@ -19,7 +19,7 @@
|
|||||||
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
||||||
# IN THE SOFTWARE.
|
# IN THE SOFTWARE.
|
||||||
|
|
||||||
GLAPI_LIB = ../mapi/glapi/libglapi.a
|
GLAPI_LIB = ../mapi/glapi/libglapi.la
|
||||||
|
|
||||||
if HAVE_XF86VIDMODE
|
if HAVE_XF86VIDMODE
|
||||||
EXTRA_DEFINES_XF86VIDMODE = -DXF86VIDMODE
|
EXTRA_DEFINES_XF86VIDMODE = -DXF86VIDMODE
|
||||||
|
@@ -26,7 +26,7 @@ endif
|
|||||||
|
|
||||||
SUBDIRS=tests
|
SUBDIRS=tests
|
||||||
|
|
||||||
GLAPI_LIB = ../mapi/glapi/libglapi.a
|
GLAPI_LIB = ../mapi/glapi/libglapi.la
|
||||||
|
|
||||||
if HAVE_XF86VIDMODE
|
if HAVE_XF86VIDMODE
|
||||||
EXTRA_DEFINES_XF86VIDMODE = -DXF86VIDMODE
|
EXTRA_DEFINES_XF86VIDMODE = -DXF86VIDMODE
|
||||||
|
1
src/mapi/glapi/.gitignore
vendored
1
src/mapi/glapi/.gitignore
vendored
@@ -7,3 +7,4 @@ glapi_x86.S
|
|||||||
glapitable.h
|
glapitable.h
|
||||||
glapitemp.h
|
glapitemp.h
|
||||||
glprocs.h
|
glprocs.h
|
||||||
|
\Makefile
|
||||||
|
@@ -1,77 +0,0 @@
|
|||||||
# src/mapi/glapi/Makefile
|
|
||||||
|
|
||||||
TOP = ../../..
|
|
||||||
include $(TOP)/configs/current
|
|
||||||
|
|
||||||
TARGET = glapi
|
|
||||||
|
|
||||||
MAPI = $(TOP)/src/mapi/mapi
|
|
||||||
|
|
||||||
include sources.mak
|
|
||||||
include $(MAPI)/sources.mak
|
|
||||||
|
|
||||||
glapi_CPPFLAGS := \
|
|
||||||
-I$(TOP)/include \
|
|
||||||
-I$(TOP)/src/mapi \
|
|
||||||
-I$(TOP)/src/mesa
|
|
||||||
|
|
||||||
ifeq ($(SHARED_GLAPI),1)
|
|
||||||
glapi_CPPFLAGS += \
|
|
||||||
-DMAPI_MODE_BRIDGE \
|
|
||||||
-DMAPI_ABI_HEADER=\"glapi/glapi_mapi_tmp.h\"
|
|
||||||
glapi_SOURCES := $(MAPI_BRIDGE_FILES)
|
|
||||||
|
|
||||||
glapi_GLAPI_OBJECTS :=
|
|
||||||
glapi_ASM_OBJECTS :=
|
|
||||||
glapi_MAPI_OBJECTS := $(notdir $(MAPI_BRIDGE_FILES:.c=.o))
|
|
||||||
else
|
|
||||||
glapi_CPPFLAGS += -DMAPI_MODE_UTIL
|
|
||||||
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 := $(notdir $(MAPI_UTIL_FILES:.c=.o))
|
|
||||||
endif # SHARED_GLAPI
|
|
||||||
|
|
||||||
glapi_OBJECTS := \
|
|
||||||
$(glapi_GLAPI_OBJECTS) \
|
|
||||||
$(glapi_ASM_OBJECTS) \
|
|
||||||
$(glapi_MAPI_OBJECTS)
|
|
||||||
|
|
||||||
default: depend lib$(TARGET).a
|
|
||||||
|
|
||||||
lib$(TARGET).a: $(glapi_OBJECTS)
|
|
||||||
@$(MKLIB) -o $(TARGET) -static $(glapi_OBJECTS)
|
|
||||||
|
|
||||||
$(glapi_GLAPI_OBJECTS): %.o: %.c
|
|
||||||
$(CC) -c $(glapi_CPPFLAGS) $(CFLAGS) $< -o $@
|
|
||||||
|
|
||||||
$(glapi_ASM_OBJECTS): %.o: %.S
|
|
||||||
$(CC) -c $(glapi_CPPFLAGS) $(CFLAGS) $< -o $@
|
|
||||||
|
|
||||||
$(glapi_MAPI_OBJECTS): %.o: $(MAPI)/%.c
|
|
||||||
$(CC) -c $(glapi_CPPFLAGS) $(CFLAGS) $< -o $@
|
|
||||||
|
|
||||||
install:
|
|
||||||
|
|
||||||
clean:
|
|
||||||
-rm -f $(glapi_OBJECTS)
|
|
||||||
-rm -f lib$(TARGET).a
|
|
||||||
-rm -f depend depend.bak
|
|
||||||
|
|
||||||
ifeq ($(SHARED_GLAPI),1)
|
|
||||||
# workaround a bug in makedepend
|
|
||||||
makedepend_CPPFLAGS := \
|
|
||||||
$(filter-out -DMAPI_ABI_HEADER=%, $(glapi_CPPFLAGS))
|
|
||||||
$(glapi_OBJECTS): glapi_mapi_tmp.h
|
|
||||||
else
|
|
||||||
makedepend_CPPFLAGS := $(glapi_CPPFLAGS)
|
|
||||||
endif
|
|
||||||
|
|
||||||
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
|
|
68
src/mapi/glapi/Makefile.am
Normal file
68
src/mapi/glapi/Makefile.am
Normal file
@@ -0,0 +1,68 @@
|
|||||||
|
# Copyright © 2012 Jon TURNEY
|
||||||
|
#
|
||||||
|
# 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.
|
||||||
|
|
||||||
|
TOP = $(top_srcdir)
|
||||||
|
include sources.mak
|
||||||
|
include ../mapi/sources.mak
|
||||||
|
|
||||||
|
AM_CPPFLAGS = \
|
||||||
|
$(DEFINES) \
|
||||||
|
-I$(top_srcdir)/include \
|
||||||
|
-I$(top_srcdir)/src/mapi \
|
||||||
|
-I$(top_srcdir)/src/mesa
|
||||||
|
|
||||||
|
if HAVE_X86_ASM
|
||||||
|
GLAPI_ASM_SOURCES = $(X86_API)
|
||||||
|
endif
|
||||||
|
if HAVE_X86_64_ASM
|
||||||
|
GLAPI_ASM_SOURCES = $(X86_64_API)
|
||||||
|
endif
|
||||||
|
if HAVE_SPARC_ASM
|
||||||
|
GLAPI_ASM_SOURCES = $(SPARC_API)
|
||||||
|
endif
|
||||||
|
|
||||||
|
if HAVE_SHARED_GLAPI
|
||||||
|
AM_CPPFLAGS += \
|
||||||
|
-DMAPI_MODE_BRIDGE \
|
||||||
|
-DMAPI_ABI_HEADER=\"glapi/glapi_mapi_tmp.h\"
|
||||||
|
glapi_GLAPI_sources =
|
||||||
|
glapi_ASM_sources =
|
||||||
|
glapi_MAPI_sources = $(MAPI_BRIDGE_FILES)
|
||||||
|
else
|
||||||
|
AM_CPPFLAGS += \
|
||||||
|
-DMAPI_MODE_UTIL
|
||||||
|
glapi_GLAPI_sources = $(GLAPI_SOURCES)
|
||||||
|
glapi_ASM_sources = $(GLAPI_ASM_SOURCES)
|
||||||
|
glapi_MAPI_sources = $(MAPI_UTIL_FILES)
|
||||||
|
endif
|
||||||
|
|
||||||
|
noinst_LTLIBRARIES = libglapi.la
|
||||||
|
|
||||||
|
libglapi_la_SOURCES = $(glapi_GLAPI_sources) $(glapi_ASM_sources) $(glapi_MAPI_sources)
|
||||||
|
libglapi_la_LIBADD =
|
||||||
|
libglapi_la_LDFLAGS =
|
||||||
|
|
||||||
|
# Provide compatibility with scripts for the old Mesa build system for
|
||||||
|
# a while by putting a link to libglapi.a here
|
||||||
|
all-local: libglapi.la
|
||||||
|
ln -sf .libs/libglapi.a libglapi.a
|
||||||
|
|
||||||
|
CLEANFILES = libglapi.a
|
@@ -10,6 +10,6 @@ glapi_test_SOURCES = \
|
|||||||
check_table.cpp
|
check_table.cpp
|
||||||
|
|
||||||
glapi_test_LDADD = \
|
glapi_test_LDADD = \
|
||||||
$(top_builddir)/src/mapi/glapi/libglapi.a \
|
$(top_builddir)/src/mapi/glapi/libglapi.la \
|
||||||
$(top_builddir)/src/gtest/libgtest.la \
|
$(top_builddir)/src/gtest/libgtest.la \
|
||||||
-lpthread
|
-lpthread
|
||||||
|
@@ -40,7 +40,7 @@ lib@OSMESA_LIB@_la_SOURCES = osmesa.c
|
|||||||
lib@OSMESA_LIB@_la_LDFLAGS = -module -version-number @OSMESA_VERSION@ -shared
|
lib@OSMESA_LIB@_la_LDFLAGS = -module -version-number @OSMESA_VERSION@ -shared
|
||||||
lib@OSMESA_LIB@_la_LIBADD = \
|
lib@OSMESA_LIB@_la_LIBADD = \
|
||||||
$(top_builddir)/src/mesa/libmesa.la \
|
$(top_builddir)/src/mesa/libmesa.la \
|
||||||
$(top_builddir)/src/mapi/glapi/libglapi.a \
|
$(top_builddir)/src/mapi/glapi/libglapi.la \
|
||||||
$(top_builddir)/src/glsl/libglsl.la
|
$(top_builddir)/src/glsl/libglsl.la
|
||||||
|
|
||||||
# Provide compatibility with scripts for the old Mesa build system for
|
# Provide compatibility with scripts for the old Mesa build system for
|
||||||
|
@@ -57,7 +57,7 @@ GL_PATCH = 0
|
|||||||
|
|
||||||
libGL_la_LIBADD = \
|
libGL_la_LIBADD = \
|
||||||
$(top_builddir)/src/mesa/libmesa.la \
|
$(top_builddir)/src/mesa/libmesa.la \
|
||||||
$(top_builddir)/src/mapi/glapi/libglapi.a
|
$(top_builddir)/src/mapi/glapi/libglapi.la
|
||||||
libGL_la_LDFLAGS = \
|
libGL_la_LDFLAGS = \
|
||||||
-version-number $(GL_MAJOR):$(GL_MINOR):$(GL_PATCH) \
|
-version-number $(GL_MAJOR):$(GL_MINOR):$(GL_PATCH) \
|
||||||
$(GL_LIB_DEPS)
|
$(GL_LIB_DEPS)
|
||||||
|
Reference in New Issue
Block a user