diff options
author | Laurent Carlier <lordheavym@gmail.com> | 2012-06-24 09:51:27 +0200 |
---|---|---|
committer | Jon TURNEY <jon.turney@dronecode.org.uk> | 2012-07-13 12:43:39 +0100 |
commit | 284325d97b3049e59e64daf784e2b3858f0ffcf5 (patch) | |
tree | 1cda662cc612d8faef3d1b227485ab7d40090faa | |
parent | 1a06e8454ec714e950bc88882cd985534a18bf1f (diff) |
automake: convert libOSmesa
This also currently fix the installation of libOSmesa.
v2: Remove old Makefile, libOSmesa is now versioned, fix typos
v3: Keep config substitution alphabetized
v4: Update .gitignore
v5: Libraries will be in the builddir, not the srcdir.
Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Eric Anholt <eric@anholt.net>
Tested-by: Matt Turner <mattst88@gmail.com>
-rw-r--r-- | configure.ac | 5 | ||||
-rw-r--r-- | src/mesa/drivers/osmesa/.gitignore | 1 | ||||
-rw-r--r-- | src/mesa/drivers/osmesa/Makefile | 51 | ||||
-rw-r--r-- | src/mesa/drivers/osmesa/Makefile.am | 50 |
4 files changed, 56 insertions, 51 deletions
diff --git a/configure.ac b/configure.ac index 08ea5beb400..5390868a7da 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -1351,10 +1351,14 @@ if test "x$enable_osmesa" = xyes; then | |||
1351 | OSMESA_MESA_DEPS="" | 1351 | OSMESA_MESA_DEPS="" |
1352 | OSMESA_PC_LIB_PRIV="-lm -lpthread $SELINUX_LIBS $DLOPEN_LIBS" | 1352 | OSMESA_PC_LIB_PRIV="-lm -lpthread $SELINUX_LIBS $DLOPEN_LIBS" |
1353 | fi | 1353 | fi |
1354 | |||
1355 | OSMESA_VERSION=`echo "$VERSION" | $SED 's/\./:/g'` | ||
1356 | |||
1354 | AC_SUBST([OSMESA_LIB_DEPS]) | 1357 | AC_SUBST([OSMESA_LIB_DEPS]) |
1355 | AC_SUBST([OSMESA_MESA_DEPS]) | 1358 | AC_SUBST([OSMESA_MESA_DEPS]) |
1356 | AC_SUBST([OSMESA_PC_REQ]) | 1359 | AC_SUBST([OSMESA_PC_REQ]) |
1357 | AC_SUBST([OSMESA_PC_LIB_PRIV]) | 1360 | AC_SUBST([OSMESA_PC_LIB_PRIV]) |
1361 | AC_SUBST([OSMESA_VERSION]) | ||
1358 | 1362 | ||
1359 | dnl | 1363 | dnl |
1360 | dnl gbm configuration | 1364 | dnl gbm configuration |
@@ -2169,6 +2173,7 @@ AC_CONFIG_FILES([configs/current | |||
2169 | src/mesa/drivers/dri/r200/Makefile | 2173 | src/mesa/drivers/dri/r200/Makefile |
2170 | src/mesa/drivers/dri/radeon/Makefile | 2174 | src/mesa/drivers/dri/radeon/Makefile |
2171 | src/mesa/drivers/dri/swrast/Makefile | 2175 | src/mesa/drivers/dri/swrast/Makefile |
2176 | src/mesa/drivers/osmesa/Makefile | ||
2172 | src/mesa/drivers/x11/Makefile | 2177 | src/mesa/drivers/x11/Makefile |
2173 | src/mesa/gl.pc | 2178 | src/mesa/gl.pc |
2174 | src/mesa/osmesa.pc]) | 2179 | src/mesa/osmesa.pc]) |
diff --git a/src/mesa/drivers/osmesa/.gitignore b/src/mesa/drivers/osmesa/.gitignore new file mode 100644 index 00000000000..5fc607b9e2f --- /dev/null +++ b/src/mesa/drivers/osmesa/.gitignore | |||
@@ -0,0 +1 @@ | |||
/Makefile | |||
diff --git a/src/mesa/drivers/osmesa/Makefile b/src/mesa/drivers/osmesa/Makefile deleted file mode 100644 index 39ab09af805..00000000000 --- a/src/mesa/drivers/osmesa/Makefile +++ /dev/null | |||
@@ -1,51 +0,0 @@ | |||
1 | # src/mesa/drivers/osmesa/Makefile for libOSMesa.so | ||
2 | |||
3 | # Note that we may generate libOSMesa.so or libOSMesa16.so or libOSMesa32.so | ||
4 | # with this Makefile | ||
5 | |||
6 | |||
7 | TOP = ../../../.. | ||
8 | |||
9 | include $(TOP)/configs/current | ||
10 | |||
11 | |||
12 | |||
13 | SOURCES = osmesa.c | ||
14 | |||
15 | OBJECTS = $(SOURCES:.c=.o) | ||
16 | |||
17 | INCLUDE_DIRS = \ | ||
18 | -I$(TOP)/include \ | ||
19 | -I$(TOP)/src/mapi \ | ||
20 | -I$(TOP)/src/mesa \ | ||
21 | -I$(TOP)/src/mesa/main | ||
22 | |||
23 | CORE_MESA = \ | ||
24 | $(TOP)/src/mesa/libmesa.a \ | ||
25 | $(TOP)/src/mapi/glapi/libglapi.a \ | ||
26 | $(TOP)/src/glsl/libglsl.a | ||
27 | |||
28 | .c.o: | ||
29 | $(CC) -c $(INCLUDE_DIRS) $(CFLAGS) $< -o $@ | ||
30 | |||
31 | |||
32 | default: $(TOP)/$(LIB_DIR)/$(OSMESA_LIB_NAME) | ||
33 | |||
34 | |||
35 | # libOSMesa can be used in conjuction with libGL or with all other Mesa | ||
36 | # sources. We can also build libOSMesa16/libOSMesa32 by setting | ||
37 | # -DCHAN_BITS=16/32. | ||
38 | $(TOP)/$(LIB_DIR)/$(OSMESA_LIB_NAME): $(OBJECTS) $(CORE_MESA) | ||
39 | $(MKLIB) -o $(OSMESA_LIB) -linker '$(CXX)' -ldflags '$(LDFLAGS)' \ | ||
40 | -major $(MESA_MAJOR) -minor $(MESA_MINOR) -patch $(MESA_TINY) \ | ||
41 | -install $(TOP)/$(LIB_DIR) -cplusplus $(MKLIB_OPTIONS) \ | ||
42 | -id $(INSTALL_LIB_DIR)/lib$(OSMESA_LIB).$(MESA_MAJOR).dylib \ | ||
43 | $(OSMESA_LIB_DEPS) $(OBJECTS) $(CORE_MESA) | ||
44 | |||
45 | |||
46 | |||
47 | clean: | ||
48 | -rm -f *.o *~ | ||
49 | |||
50 | |||
51 | # XXX todo install rule? | ||
diff --git a/src/mesa/drivers/osmesa/Makefile.am b/src/mesa/drivers/osmesa/Makefile.am new file mode 100644 index 00000000000..3cf3005071a --- /dev/null +++ b/src/mesa/drivers/osmesa/Makefile.am | |||
@@ -0,0 +1,50 @@ | |||
1 | |||
2 | |||
3 | # Copyright © 2012 Laurent Carlier <lordheavym@gmail.com> | ||
4 | # | ||
5 | # Permission is hereby granted, free of charge, to any person obtaining a | ||
6 | # copy of this software and associated documentation files (the "Software"), | ||
7 | # to deal in the Software without restriction, including without limitation | ||
8 | # the rights to use, copy, modify, merge, publish, distribute, sublicense, | ||
9 | # and/or sell copies of the Software, and to permit persons to whom the | ||
10 | # Software is furnished to do so, subject to the following conditions: | ||
11 | # | ||
12 | # The above copyright notice and this permission notice (including the next | ||
13 | # paragraph) shall be included in all copies or substantial portions of the | ||
14 | # Software. | ||
15 | # | ||
16 | # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
17 | # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
18 | # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL | ||
19 | # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
20 | # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
21 | # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS | ||
22 | # IN THE SOFTWARE. | ||
23 | |||
24 | # Hack to make some of the non-automake variables work. | ||
25 | TOP=$(top_builddir) | ||
26 | |||
27 | AM_CFLAGS = \ | ||
28 | -I$(top_srcdir)/include \ | ||
29 | -I$(top_srcdir)/src/mapi \ | ||
30 | -I$(top_srcdir)/src/mesa/ \ | ||
31 | $(DEFINES) \ | ||
32 | $(API_DEFINES) | ||
33 | |||
34 | if HAVE_OSMESA_DRIVER | ||
35 | lib_LTLIBRARIES = lib@OSMESA_LIB@.la | ||
36 | endif | ||
37 | |||
38 | lib@OSMESA_LIB@_la_SOURCES = osmesa.c | ||
39 | |||
40 | lib@OSMESA_LIB@_la_LDFLAGS = -module -version-number @OSMESA_VERSION@ -shared | ||
41 | lib@OSMESA_LIB@_la_LIBADD = \ | ||
42 | $(top_builddir)/src/mesa/libmesa.a \ | ||
43 | $(top_builddir)/src/mapi/glapi/libglapi.a \ | ||
44 | $(top_builddir)/src/glsl/libglsl.a | ||
45 | |||
46 | # Provide compatibility with scripts for the old Mesa build system for | ||
47 | # a while by putting a link to the driver into /lib of the build tree. | ||
48 | all-local: lib@OSMESA_LIB@.la | ||
49 | $(MKDIR_P) $(top_builddir)/$(LIB_DIR); | ||
50 | ln -f .libs/lib@OSMESA_LIB@.so $(top_builddir)/$(LIB_DIR)/lib@OSMESA_LIB@.so; | ||