[Mesa-dev] [PATCH 14/19] automake: Move the master Mesa makefile to Makefile.old.

Eric Anholt eric at anholt.net
Wed Jun 13 10:31:07 PDT 2012


This will let me incrementally move stuff to automake without
converting libmesa.a all at once.
---
 configure.ac          |    1 +
 src/mesa/.gitignore   |    6 +-
 src/mesa/Makefile     |  205 -------------------------------------------------
 src/mesa/Makefile.am  |   29 +++++++
 src/mesa/Makefile.old |  205 +++++++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 236 insertions(+), 210 deletions(-)
 delete mode 100644 src/mesa/Makefile
 create mode 100644 src/mesa/Makefile.am
 create mode 100644 src/mesa/Makefile.old

diff --git a/configure.ac b/configure.ac
index 6135302..adea564 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2169,6 +2169,7 @@ AC_CONFIG_FILES([configs/current
 		src/mapi/glapi/gen/Makefile
 		src/mapi/shared-glapi/Makefile
 		src/gtest/Makefile
+		src/mesa/Makefile
 		src/mesa/libdricore/Makefile
 		src/mesa/x86/Makefile
 		src/mesa/x86-64/Makefile
diff --git a/src/mesa/.gitignore b/src/mesa/.gitignore
index ce83eaf..5fc607b 100644
--- a/src/mesa/.gitignore
+++ b/src/mesa/.gitignore
@@ -1,5 +1 @@
-*/gen_matypes
-*/matypes.h
-depend.es*
-depend.es*
-objs-es*
+/Makefile
diff --git a/src/mesa/Makefile b/src/mesa/Makefile
deleted file mode 100644
index 6a6be27..0000000
--- a/src/mesa/Makefile
+++ /dev/null
@@ -1,205 +0,0 @@
-# src/mesa/Makefile
-
-TOP = ../..
-include $(TOP)/configs/current
-
-MESA_LIBS := libmesa.a libmesagallium.a
-DEPENDS := depend
-
-SRCDIR = .
-include sources.mak
-
-# define preprocessor flags
-MESA_CPPFLAGS := $(API_DEFINES) $(DEFINES)
-
-# append include dirs
-MESA_CPPFLAGS += $(INCLUDE_DIRS)
-
-# tidy compiler flags
-CFLAGS := $(filter-out $(DEFINES), $(CFLAGS))
-CXXFLAGS := $(filter-out $(DEFINES), $(CXXFLAGS))
-
-# LLVM is needed for the state tracker
-MESA_CFLAGS := $(LLVM_CFLAGS) $(CFLAGS)
-MESA_CXXFLAGS := $(LLVM_CFLAGS) $(CXXFLAGS)
-
-%.o: %.c
-	$(CC) -c -o $@ $< $(MESA_CPPFLAGS) $(MESA_CFLAGS)
-
-%.o: %.cpp
-	$(CXX) -c -o $@ $< $(MESA_CPPFLAGS) $(MESA_CXXFLAGS)
-
-%.o: %.S
-	$(CC) -c -o $@ $< $(MESA_CPPFLAGS) $(MESA_CFLAGS)
-
-# Default: build dependencies, then asm_subdirs, GLSL built-in lib,
-# then convenience libs (.a) and finally the device drivers:
-default: $(DEPENDS) asm_subdirs $(MESA_LIBS) driver_subdirs
-
-.PHONY: main/git_sha1.h.tmp
-main/git_sha1.h.tmp:
-	@touch main/git_sha1.h.tmp
-	@if test -d ../../.git; then \
-		if which git > /dev/null; then \
-		    git log -n 1 --oneline | \
-			sed 's/^\([^ ]*\) .*/#define MESA_GIT_SHA1 "git-\1"/' \
-			> main/git_sha1.h.tmp ; \
-		fi \
-	fi
-
-main/git_sha1.h: main/git_sha1.h.tmp
-	@echo "updating main/git_sha1.h"
-	@if ! cmp -s main/git_sha1.h.tmp main/git_sha1.h; then \
-		mv main/git_sha1.h.tmp main/git_sha1.h ;\
-	fi
-
-# include glapi_gen.mk for generating glapi headers for GLES
-GLAPI := $(TOP)/src/mapi/glapi/gen
-include $(GLAPI)/glapi_gen.mk
-
-BUILT_SOURCES = \
-	main/api_exec_es1_dispatch.h \
-	main/api_exec_es1_remap_helper.h \
-	main/api_exec_es2_dispatch.h \
-	main/api_exec_es2_remap_helper.h \
-	main/api_exec_es1.c \
-	main/api_exec_es2.c \
-	program/program_parse.tab.c \
-	program/program_parse.tab.h \
-	program/lex.yy.c
-
-main/api_exec_es1_dispatch.h: $(GLAPI)/gl_and_es_API.xml $(glapi_gen_dispatch_deps)
-	$(call glapi_gen_dispatch,$<,es1)
-
-main/api_exec_es1_remap_helper.h: $(GLAPI)/gl_and_es_API.xml $(glapi_gen_remap_deps)
-	$(call glapi_gen_remap,$<,es1)
-
-main/api_exec_es1.o: main/api_exec_es1_dispatch.h main/api_exec_es1_remap_helper.h 
-
-main/api_exec_es2_dispatch.h: $(GLAPI)/gl_and_es_API.xml $(glapi_gen_dispatch_deps)
-	$(call glapi_gen_dispatch,$<,es2)
-
-main/api_exec_es2_remap_helper.h: $(GLAPI)/gl_and_es_API.xml $(glapi_gen_remap_deps)
-	$(call glapi_gen_remap,$<,es2)
-
-main/api_exec_es2.o: main/api_exec_es2_dispatch.h main/api_exec_es2_remap_helper.h 
-
-main/api_exec_es1.c: main/APIspec.xml main/es_generator.py main/APIspecutil.py main/APIspec.py
-	$(PYTHON2) $(PYTHON_FLAGS) main/es_generator.py -S main/APIspec.xml -V GLES1.1 > $@
-
-main/api_exec_es2.c: main/APIspec.xml main/es_generator.py main/APIspecutil.py main/APIspec.py
-	$(PYTHON2) $(PYTHON_FLAGS) main/es_generator.py -S main/APIspec.xml -V GLES2.0 > $@
-
-program/program_parse.tab.c program/program_parse.tab.h: program/program_parse.y
-	$(BISON) -v -d --output=program/program_parse.tab.c $<
-
-program/lex.yy.c: program/program_lexer.l
-	$(FLEX) --never-interactive --outfile=$@ $<
-
-ifneq (,$(DRICORE_LIBS))
-DRICORE_TARGET = dricore
-DRICORE_INSTALL_TARGET = install-dricore
-endif
-
-######################################################################
-# Helper libraries used by many drivers:
-
-# Make archive of core mesa object files
-libmesa.a: $(MESA_OBJECTS) $(GLSL_LIBS)
-	@ $(MKLIB) -o mesa -static $(MESA_OBJECTS) $(GLSL_LIBS)
-
-# Make archive of subset of core mesa object files for gallium
-libmesagallium.a: $(MESA_GALLIUM_OBJECTS) $(GLSL_LIBS)
-	@ $(MKLIB) -o mesagallium -static $(MESA_GALLIUM_OBJECTS) $(GLSL_LIBS)
-
-dricore: $(BUILT_SOURCES)
-	@ (cd libdricore && $(MAKE))
-
-######################################################################
-# Device drivers
-driver_subdirs: $(MESA_LIBS) $(DRICORE_TARGET)
-	@ (cd drivers && $(MAKE))
-
-
-######################################################################
-# Assembly subdirs
-asm_subdirs:
-	@ if echo "$(DEFINES)" | grep -q USE_X86_ASM ; then \
-		(cd x86 && $(MAKE)) || exit 1 ; \
-	fi
-	@ if echo "$(DEFINES)" | grep -q USE_X86_64_ASM ; then \
-		(cd x86-64 && $(MAKE)) || exit 1 ; \
-	fi
-
-######################################################################
-# Dependency generation
-
-depend: $(ALL_FILES) main/git_sha1.h
-	@ echo "running $(MKDEP)"
-	@ touch depend
-	@$(MKDEP) $(MKDEP_OPTIONS) $(MESA_CPPFLAGS) \
-		$(ALL_FILES) > /dev/null 2>/dev/null
-
-######################################################################
-# Installation rules
-
-# this isn't fleshed out yet but is probably the way to go in the future
-new_install:
-	(cd drivers && $(MAKE) install)
-
-# XXX replace this with new_install above someday
-install: default $(DRICORE_INSTALL_TARGET)
-	@for driver in $(DRIVER_DIRS) ; do \
-	  case "$$driver" in \
-	    osmesa) if [ "$(DRIVER_DIRS)" = osmesa ]; then \
-	              $(MAKE) install-headers install-osmesa || exit 1 ; \
-	            else \
-	              $(MAKE) install-osmesa || exit 1 ; \
-	            fi ;; \
-	    dri)    $(MAKE) install-libgl-pc install-dri || exit 1 ;; \
-	    *)      $(MAKE) install-libgl-pc || exit 1 ;; \
-	  esac ; \
-	done
-
-install-headers:
-	$(INSTALL) -d $(DESTDIR)$(INSTALL_INC_DIR)/GL
-	$(INSTALL) -m 644 $(TOP)/include/GL/*.h \
-		$(DESTDIR)$(INSTALL_INC_DIR)/GL
-
-install-libgl-pc: install-headers
-	$(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)
-	$(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig
-	$(INSTALL) -m 644 gl.pc $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig
-
-install-osmesa: default
-	$(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)
-	$(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig
-	$(MINSTALL) $(TOP)/$(LIB_DIR)/$(OSMESA_LIB_GLOB) \
-		$(DESTDIR)$(INSTALL_LIB_DIR)
-	$(INSTALL) -m 644 osmesa.pc $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig
-
-install-dri: default
-	cd drivers/dri && $(MAKE) install
-
-install-dricore: default
-	@ (cd libdricore && $(MAKE) install)
-
-# Emacs tags
-tags:
-	etags `find . -name \*.[ch]` $(TOP)/include/GL/*.h
-
-clean:
-	-rm -f */*.o
-	-rm -f */*/*.o
-	-rm -f depend depend.bak libmesa.a libmesagallium.a
-	-rm -f drivers/*/*.o
-	-rm -f $(BUILT_SOURCES)
-	- at cd drivers/dri && $(MAKE) clean
-	- at cd drivers/x11 && $(MAKE) clean
-	- at cd drivers/osmesa && $(MAKE) clean
-	- at cd x86 && $(MAKE) clean
-	- at cd x86-64 && $(MAKE) clean
-	- at cd libdricore && $(MAKE) clean
-
-
--include $(DEPENDS)
diff --git a/src/mesa/Makefile.am b/src/mesa/Makefile.am
new file mode 100644
index 0000000..b877b5d
--- /dev/null
+++ b/src/mesa/Makefile.am
@@ -0,0 +1,29 @@
+# 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.
+
+all-local:
+	$(MAKE) -f Makefile.old
+
+install-exec-local:
+	$(MAKE) -f Makefile.old install
+
+clean-local:
+	$(MAKE) -f Makefile.old clean
diff --git a/src/mesa/Makefile.old b/src/mesa/Makefile.old
new file mode 100644
index 0000000..c500a8c
--- /dev/null
+++ b/src/mesa/Makefile.old
@@ -0,0 +1,205 @@
+# src/mesa/Makefile
+
+TOP = ../..
+include $(TOP)/configs/current
+
+MESA_LIBS := libmesa.a libmesagallium.a
+DEPENDS := depend
+
+SRCDIR = .
+include sources.mak
+
+# define preprocessor flags
+MESA_CPPFLAGS := $(API_DEFINES) $(DEFINES)
+
+# append include dirs
+MESA_CPPFLAGS += $(INCLUDE_DIRS)
+
+# tidy compiler flags
+CFLAGS := $(filter-out $(DEFINES), $(CFLAGS))
+CXXFLAGS := $(filter-out $(DEFINES), $(CXXFLAGS))
+
+# LLVM is needed for the state tracker
+MESA_CFLAGS := $(LLVM_CFLAGS) $(CFLAGS)
+MESA_CXXFLAGS := $(LLVM_CFLAGS) $(CXXFLAGS)
+
+%.o: %.c
+	$(CC) -c -o $@ $< $(MESA_CPPFLAGS) $(MESA_CFLAGS)
+
+%.o: %.cpp
+	$(CXX) -c -o $@ $< $(MESA_CPPFLAGS) $(MESA_CXXFLAGS)
+
+%.o: %.S
+	$(CC) -c -o $@ $< $(MESA_CPPFLAGS) $(MESA_CFLAGS)
+
+# Default: build dependencies, then asm_subdirs, GLSL built-in lib,
+# then convenience libs (.a) and finally the device drivers:
+default: $(DEPENDS) asm_subdirs $(MESA_LIBS) driver_subdirs
+
+.PHONY: main/git_sha1.h.tmp
+main/git_sha1.h.tmp:
+	@touch main/git_sha1.h.tmp
+	@if test -d ../../.git; then \
+		if which git > /dev/null; then \
+		    git log -n 1 --oneline | \
+			sed 's/^\([^ ]*\) .*/#define MESA_GIT_SHA1 "git-\1"/' \
+			> main/git_sha1.h.tmp ; \
+		fi \
+	fi
+
+main/git_sha1.h: main/git_sha1.h.tmp
+	@echo "updating main/git_sha1.h"
+	@if ! cmp -s main/git_sha1.h.tmp main/git_sha1.h; then \
+		mv main/git_sha1.h.tmp main/git_sha1.h ;\
+	fi
+
+# include glapi_gen.mk for generating glapi headers for GLES
+GLAPI := $(TOP)/src/mapi/glapi/gen
+include $(GLAPI)/glapi_gen.mk
+
+BUILT_SOURCES = \
+	main/api_exec_es1_dispatch.h \
+	main/api_exec_es1_remap_helper.h \
+	main/api_exec_es2_dispatch.h \
+	main/api_exec_es2_remap_helper.h \
+	main/api_exec_es1.c \
+	main/api_exec_es2.c \
+	program/program_parse.tab.c \
+	program/program_parse.tab.h \
+	program/lex.yy.c
+
+main/api_exec_es1_dispatch.h: $(GLAPI)/gl_and_es_API.xml $(glapi_gen_dispatch_deps)
+	$(call glapi_gen_dispatch,$<,es1)
+
+main/api_exec_es1_remap_helper.h: $(GLAPI)/gl_and_es_API.xml $(glapi_gen_remap_deps)
+	$(call glapi_gen_remap,$<,es1)
+
+main/api_exec_es1.o: main/api_exec_es1_dispatch.h main/api_exec_es1_remap_helper.h 
+
+main/api_exec_es2_dispatch.h: $(GLAPI)/gl_and_es_API.xml $(glapi_gen_dispatch_deps)
+	$(call glapi_gen_dispatch,$<,es2)
+
+main/api_exec_es2_remap_helper.h: $(GLAPI)/gl_and_es_API.xml $(glapi_gen_remap_deps)
+	$(call glapi_gen_remap,$<,es2)
+
+main/api_exec_es2.o: main/api_exec_es2_dispatch.h main/api_exec_es2_remap_helper.h 
+
+main/api_exec_es1.c: main/APIspec.xml main/es_generator.py main/APIspecutil.py main/APIspec.py
+	$(PYTHON2) $(PYTHON_FLAGS) main/es_generator.py -S main/APIspec.xml -V GLES1.1 > $@
+
+main/api_exec_es2.c: main/APIspec.xml main/es_generator.py main/APIspecutil.py main/APIspec.py
+	$(PYTHON2) $(PYTHON_FLAGS) main/es_generator.py -S main/APIspec.xml -V GLES2.0 > $@
+
+program/program_parse.tab.c program/program_parse.tab.h: program/program_parse.y
+	$(BISON) -v -d --output=program/program_parse.tab.c $<
+
+program/lex.yy.c: program/program_lexer.l
+	$(FLEX) --never-interactive --outfile=$@ $<
+
+ifneq (,$(DRICORE_LIBS))
+DRICORE_TARGET = dricore
+DRICORE_INSTALL_TARGET = install-dricore
+endif
+
+######################################################################
+# Helper libraries used by many drivers:
+
+# Make archive of core mesa object files
+libmesa.a: $(MESA_OBJECTS) $(GLSL_LIBS)
+	@ $(MKLIB) -o mesa -static $(MESA_OBJECTS) $(GLSL_LIBS)
+
+# Make archive of subset of core mesa object files for gallium
+libmesagallium.a: $(MESA_GALLIUM_OBJECTS) $(GLSL_LIBS)
+	@ $(MKLIB) -o mesagallium -static $(MESA_GALLIUM_OBJECTS) $(GLSL_LIBS)
+
+dricore: $(BUILT_SOURCES)
+	@ (cd libdricore && $(MAKE))
+
+######################################################################
+# Device drivers
+driver_subdirs: $(MESA_LIBS) $(DRICORE_TARGET)
+	@ (cd drivers && $(MAKE))
+
+
+######################################################################
+# Assembly subdirs
+asm_subdirs:
+	@ if echo "$(DEFINES)" | grep -q USE_X86_ASM ; then \
+		(cd x86 && $(MAKE)) || exit 1 ; \
+	fi
+	@ if echo "$(DEFINES)" | grep -q USE_X86_64_ASM ; then \
+		(cd x86-64 && $(MAKE)) || exit 1 ; \
+	fi
+
+######################################################################
+# Dependency generation
+
+depend: $(ALL_FILES) main/git_sha1.h
+	@ echo "running $(MKDEP)"
+	@ touch depend
+	@$(MKDEP) $(MKDEP_OPTIONS) $(MESA_CPPFLAGS) \
+		$(ALL_FILES) > /dev/null 2>/dev/null
+
+######################################################################
+# Installation rules
+
+# this isn't fleshed out yet but is probably the way to go in the future
+new_install:
+	(cd drivers && $(MAKE) install)
+
+# XXX replace this with new_install above someday
+install: default $(DRICORE_INSTALL_TARGET)
+	@for driver in $(DRIVER_DIRS) ; do \
+	  case "$$driver" in \
+	    osmesa) if [ "$(DRIVER_DIRS)" = osmesa ]; then \
+	              $(MAKE) -f Makefile.old install-headers install-osmesa || exit 1 ; \
+	            else \
+	              $(MAKE) -f Makefile.old install-osmesa || exit 1 ; \
+	            fi ;; \
+	    dri)    $(MAKE) -f Makefile.old install-libgl-pc install-dri || exit 1 ;; \
+	    *)      $(MAKE) -f Makefile.old install-libgl-pc || exit 1 ;; \
+	  esac ; \
+	done
+
+install-headers:
+	$(INSTALL) -d $(DESTDIR)$(INSTALL_INC_DIR)/GL
+	$(INSTALL) -m 644 $(TOP)/include/GL/*.h \
+		$(DESTDIR)$(INSTALL_INC_DIR)/GL
+
+install-libgl-pc: install-headers
+	$(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)
+	$(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig
+	$(INSTALL) -m 644 gl.pc $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig
+
+install-osmesa: default
+	$(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)
+	$(INSTALL) -d $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig
+	$(MINSTALL) $(TOP)/$(LIB_DIR)/$(OSMESA_LIB_GLOB) \
+		$(DESTDIR)$(INSTALL_LIB_DIR)
+	$(INSTALL) -m 644 osmesa.pc $(DESTDIR)$(INSTALL_LIB_DIR)/pkgconfig
+
+install-dri: default
+	cd drivers/dri && $(MAKE) install
+
+install-dricore: default
+	@ (cd libdricore && $(MAKE) install)
+
+# Emacs tags
+tags:
+	etags `find . -name \*.[ch]` $(TOP)/include/GL/*.h
+
+clean:
+	-rm -f */*.o
+	-rm -f */*/*.o
+	-rm -f depend depend.bak libmesa.a libmesagallium.a
+	-rm -f drivers/*/*.o
+	-rm -f $(BUILT_SOURCES)
+	- at cd drivers/dri && $(MAKE) clean
+	- at cd drivers/x11 && $(MAKE) clean
+	- at cd drivers/osmesa && $(MAKE) clean
+	- at cd x86 && $(MAKE) clean
+	- at cd x86-64 && $(MAKE) clean
+	- at cd libdricore && $(MAKE) clean
+
+
+-include $(DEPENDS)
-- 
1.7.10



More information about the mesa-dev mailing list