[clutter/msvc-support: 8/8] Update autotool files (Makefile.am)



commit 68c7051797fcc41c067e9b58a3b04db508001fcf
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Tue Apr 19 19:36:02 2011 +0800

    Update autotool files (Makefile.am)
    
    -Added rules for the cogl, cogl-pango, clutter,
     test-interactive and test-conformance to expand
     the VS2008/2010 project/filter file templates
     with the correct source file listings during
     "make dist", and to clean them out during
     "make distclean"
    
    -Added distribution of the various support
     files for Clutter and COGL for MSVC compilation
    
    -cogl-context-driver-gl.h was missed for the
     distribution-make up for it here.
    
    -For the conformance and interactive tests,
     make provision of .bat files to run these tests

 clutter/Makefile.am            |   42 +++++++++++++++++++++++++++++++
 clutter/cogl/cogl/Makefile.am  |   45 +++++++++++++++++++++++++++++++++
 clutter/cogl/pango/Makefile.am |   39 ++++++++++++++++++++++++++++
 tests/conform/Makefile.am      |   39 ++++++++++++++++++++++++++++
 tests/interactive/Makefile.am  |   54 +++++++++++++++++++++++++++++++++++++++-
 5 files changed, 218 insertions(+), 1 deletions(-)
---
diff --git a/clutter/Makefile.am b/clutter/Makefile.am
index 480474d..8298098 100644
--- a/clutter/Makefile.am
+++ b/clutter/Makefile.am
@@ -673,6 +673,48 @@ libclutter_ CLUTTER_SONAME_INFIX@_ CLUTTER_API_VERSION@_la_LDFLAGS = \
 	$(win32_resources_ldflag) \
 	$(NULL)
 
+dist-hook: ../build/win32/vs9/clutter.vcproj ../build/win32/vs10/clutter.vcxproj ../build/win32/vs10/clutter.vcxproj.filters
+
+../build/win32/vs9/clutter.vcproj: $(top_srcdir)/build/win32/vs9/clutter.vcprojin
+	for F in `echo $(win32_source_c) $(cally_sources_c) $(source_c) $(source_c_priv) $(built_source_c) | tr '/' '\\'`; do \
+		case $$F in \
+		*.c)	echo '   <File RelativePath="..\..\..\clutter\'$$F'" />' \
+			;; \
+		esac; \
+	done >clutter.sourcefiles
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs9/clutter.vcprojin >$@
+	rm clutter.sourcefiles
+	
+../build/win32/vs10/clutter.vcxproj: $(top_srcdir)/build/win32/vs10/clutter.vcxprojin
+	for F in `echo $(win32_source_c) $(cally_sources_c) $(source_c) $(source_c_priv) $(built_source_c) | tr '/' '\\'`; do \
+		case $$F in \
+		*.c)	echo '    <ClCompile Include="..\..\..\clutter\'$$F'" />' \
+			;; \
+		esac; \
+	done >clutter.vs10.sourcefiles
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs10/clutter.vcxprojin >$@
+	rm clutter.vs10.sourcefiles
+	
+../build/win32/vs10/clutter.vcxproj.filters: $(top_srcdir)/build/win32/vs10/clutter.vcxproj.filtersin
+	for F in `echo $(win32_source_c) $(cally_sources_c) $(source_c) $(source_c_priv) $(built_source_c) | tr '/' '\\'`; do \
+		case $$F in \
+		*.c)	echo '    <ClCompile Include="..\..\..\clutter\'$$F'"><Filter>Sources</Filter></ClCompile>' \
+			;; \
+		esac; \
+	done >clutter.vs10.sourcefiles.filters
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs10/clutter.vcxproj.filtersin >$@
+	rm clutter.vs10.sourcefiles.filters
+	
+EXTRA_DIST += \
+	clutter-version.h.win32	\
+	clutter-config.h.win32	\
+	clutter-version.h.win32.in	\
+	clutter.symbols	\
+	$(NULL)
+
+# Let the VS9/VS10 Project files be cleared out before they are re-expanded...
+DISTCLEANFILES += ../build/win32/vs9/clutter.vcproj ../build/win32/vs10/clutter.vcxproj ../build/win32/vs10/clutter.vcxproj.filters
+
 # gobject-introspection rules
 -include $(INTROSPECTION_MAKEFILE)
 
diff --git a/clutter/cogl/cogl/Makefile.am b/clutter/cogl/cogl/Makefile.am
index ce3ff0d..9a48c3b 100644
--- a/clutter/cogl/cogl/Makefile.am
+++ b/clutter/cogl/cogl/Makefile.am
@@ -114,6 +114,7 @@ cogl_driver_sources =
 
 if COGL_DRIVER_GL
 cogl_driver_sources += \
+	$(srcdir)/driver/gl/cogl-context-driver-gl.h	\
 	$(srcdir)/driver/gl/cogl-feature-functions-gl.h	\
 	$(srcdir)/driver/gl/cogl-gl.c			\
 	$(srcdir)/driver/gl/cogl-texture-driver-gl.c	\
@@ -391,6 +392,50 @@ endif
 libcogl_la_SOURCES = $(cogl_sources_c)
 nodist_libcogl_la_SOURCES = $(BUILT_SOURCES)
 
+dist-hook: ../../../build/win32/vs9/cogl.vcproj ../../../build/win32/vs10/cogl.vcxproj ../../../build/win32/vs10/cogl.vcxproj.filters
+
+# I know those filters below don't look nice, but this is to ensure the right files are in the Project files only *once*
+../../../build/win32/vs9/cogl.vcproj: $(top_srcdir)/build/win32/vs9/cogl.vcprojin
+	for F in `echo $(cogl_sources_c) $(BUILT_SOURCES) | tr '/' '\\'`; do \
+		case $$F in \
+		*-osx.c|*-egl.c|*-fruity.c|*-glx.c|*-xlib.c|*-x11.c|*-win32.c|*-gl.c|*-gles.c|*-stub.c|*.h) ;; \
+		*.c)	echo '   <File RelativePath="..\..\..\clutter\cogl\cogl\'$$F'" />' \
+			;; \
+		esac; \
+	done >cogl.sourcefiles
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs9/cogl.vcprojin >$@
+	rm cogl.sourcefiles
+	
+../../../build/win32/vs10/cogl.vcxproj: $(top_srcdir)/build/win32/vs10/cogl.vcxprojin
+	for F in `echo $(cogl_sources_c) $(BUILT_SOURCES) | tr '/' '\\'`; do \
+		case $$F in \
+		*-osx.c|*-egl.c|*-fruity.c|*-glx.c|*-xlib.c|*-x11.c|*-win32.c|*-gl.c|*-gles.c|*-stub.c|*.h) ;; \
+		*.c)	echo '    <ClCompile Include="..\..\..\clutter\cogl\cogl\'$$F'" />' \
+			;; \
+		esac; \
+	done >cogl.vs10.sourcefiles
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs10/cogl.vcxprojin >$@
+	rm cogl.vs10.sourcefiles
+	
+../../../build/win32/vs10/cogl.vcxproj.filters: $(top_srcdir)/build/win32/vs10/cogl.vcxproj.filtersin
+	for F in `echo $(cogl_sources_c) $(BUILT_SOURCES) | tr '/' '\\'`; do \
+		case $$F in \
+		*-osx.c|*-egl.c|*-fruity.c|*-glx.c|*-xlib.c|*-x11.c|*-win32.c|*-gl.c|*-gles.c|*-stub.c|*.h) ;; \
+		*.c)	echo '    <ClCompile Include="..\..\..\clutter\cogl\cogl\'$$F'"><Filter>Sources</Filter></ClCompile>' \
+			;; \
+		esac; \
+	done >cogl.vs10.sourcefiles.filters
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs10/cogl.vcxproj.filtersin >$@
+	rm cogl.vs10.sourcefiles.filters
+
+EXTRA_DIST +=	\
+	$(srcdir)/cogl-defines.h.win32		\
+	cogl.symbols	\
+	$(NULL)
+
+# Let the VS9/VS10 Project files be cleared out before they are re-expanded...
+DISTCLEANFILES += ../../../build/win32/vs9/cogl.vcproj ../../../build/win32/vs10/cogl.vcxproj ../../../build/win32/vs10/cogl.vcxproj.filters
+
 # Cogl installed headers
 cogl_headers = \
 	$(cogl_public_h) \
diff --git a/clutter/cogl/pango/Makefile.am b/clutter/cogl/pango/Makefile.am
index 8033d47..13a0685 100644
--- a/clutter/cogl/pango/Makefile.am
+++ b/clutter/cogl/pango/Makefile.am
@@ -52,3 +52,42 @@ coglpangoheadersdir = $(includedir)/clutter- CLUTTER_API_VERSION@/cogl
 coglpangoheaders_HEADERS = $(source_h)
 endif
 
+dist-hook: ../../../build/win32/vs9/cogl-pango.vcproj ../../../build/win32/vs10/cogl-pango.vcxproj ../../../build/win32/vs10/cogl-pango.vcxproj.filters
+
+../../../build/win32/vs9/cogl-pango.vcproj: $(top_srcdir)/build/win32/vs9/cogl-pango.vcprojin
+	for F in $(source_c); do \
+		case $$F in \
+		*.c)	echo '   <File RelativePath="..\..\..\clutter\cogl\pango\'$$F'" />' \
+			;; \
+		esac; \
+	done >coglpango.sourcefiles
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs9/cogl-pango.vcprojin >$@
+	rm coglpango.sourcefiles
+	
+../../../build/win32/vs10/cogl-pango.vcxproj: $(top_srcdir)/build/win32/vs10/cogl-pango.vcxprojin
+	for F in $(source_c); do \
+		case $$F in \
+		*.c)	echo '    <ClCompile Include="..\..\..\clutter\cogl\pango\'$$F'" />' \
+			;; \
+		esac; \
+	done >coglpango.vs10.sourcefiles
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs10/cogl-pango.vcxprojin >$@
+	rm coglpango.vs10.sourcefiles
+	
+../../../build/win32/vs10/cogl-pango.vcxproj.filters: $(top_srcdir)/build/win32/vs10/cogl-pango.vcxproj.filtersin
+	for F in $(source_c); do \
+		case $$F in \
+		*.c)	echo '    <ClCompile Include="..\..\..\clutter\cogl\pango\'$$F'"><Filter>Sources</Filter></ClCompile>' \
+			;; \
+		esac; \
+	done >coglpango.vs10.sourcefiles.filters
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs10/cogl-pango.vcxproj.filtersin >$@
+	rm coglpango.vs10.sourcefiles.filters
+
+EXTRA_DIST = cogl-pango.symbols
+
+# Let the VS9/VS10 Project files be cleared out before they are re-expanded...
+DISTCLEANFILES = ../../../build/win32/vs9/cogl-pango.vcproj	\
+		  ../../../build/win32/vs10/cogl-pango.vcxproj	\
+		  ../../../build/win32/vs10/cogl-pango.vcxproj.filters
+
diff --git a/tests/conform/Makefile.am b/tests/conform/Makefile.am
index fa00dc8..b81b71d 100644
--- a/tests/conform/Makefile.am
+++ b/tests/conform/Makefile.am
@@ -121,6 +121,7 @@ stamp-test-conformance: Makefile $(srcdir)/test-conform-main.c
 		echo "  GEN    $$unit"; \
 		( echo "#!/bin/sh" ; echo "$(abs_builddir)/test-launcher.sh '$$i' \"\$$ \"" ) > $$unit$(SHEXT) ; \
 		( echo "#!/bin/sh" ; echo "exec $(abs_builddir)/test-conformance$(EXEEXT) -p $$i \"\$$ \"" ) > wrappers/$$unit$(SHEXT) ; \
+		( echo "test-conformance$(EXEEXT) -p $$i" ) >> $(top_srcdir)/build/win32/test-conformance.bat ; \
 		chmod +x $$unit$(SHEXT); \
 		chmod +x wrappers/$$unit$(SHEXT); \
 		echo "/$$unit$(SHEXT)" >> .gitignore; \
@@ -136,6 +137,7 @@ clean-wrappers:
 		rm -f wrappers/$$unit$(SHEXT) ; \
 	done \
 	&& rm -f unit-tests \
+	&& rm -f $(top_srcdir)/build/win32/test-conformance.bat \
 	&& rm -f stamp-test-conformance
 
 # NB: BUILT_SOURCES here a misnomer. We aren't building source, just inserting
@@ -278,6 +280,43 @@ HTML_REPORTS = \
 EXTRA_DIST = ADDING_NEW_TESTS test-launcher.sh.in run-tests.sh
 DISTCLEANFILES = test-launcher.sh .gitignore
 
+dist-hook: ../../build/win32/vs9/test-conformance.vcproj ../../build/win32/vs10/test-conformance.vcxproj ../../build/win32/vs10/test-conformance.vcxproj.filters
+
+../../build/win32/vs9/test-conformance.vcproj: $(top_srcdir)/build/win32/vs9/test-conformance.vcprojin
+	for F in $(test_conformance_SOURCES); do \
+		case $$F in \
+		*.c)	echo '   <File RelativePath="..\..\..\tests\conform\'$$F'" />' \
+			;; \
+		esac; \
+	done >testconformance.sourcefiles
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs9/test-conformance.vcprojin >$@
+	rm testconformance.sourcefiles
+	
+../../build/win32/vs10/test-conformance.vcxproj: $(top_srcdir)/build/win32/vs10/test-conformance.vcxprojin
+	for F in $(test_conformance_SOURCES); do \
+		case $$F in \
+		*.c)	echo '    <ClCompile Include="..\..\..\tests\conform\'$$F'" />' \
+			;; \
+		esac; \
+	done >testconformance.vs10.sourcefiles
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs10/test-conformance.vcxprojin >$@
+	rm testconformance.vs10.sourcefiles
+	
+../../build/win32/vs10/test-conformance.vcxproj.filters: $(top_srcdir)/build/win32/vs10/test-conformance.vcxproj.filtersin
+	for F in $(test_conformance_SOURCES); do \
+		case $$F in \
+		*.c)	echo '    <ClCompile Include="..\..\..\tests\conform\'$$F'"><Filter>Sources</Filter></ClCompile>' \
+			;; \
+		esac; \
+	done >testconformance.vs10.sourcefiles.filters
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs10/test-conformance.vcxproj.filtersin >$@
+	rm testconformance.vs10.sourcefiles.filters
+
+# Let the VS9/VS10 Project files be cleared out before they are re-expanded...
+DISTCLEANFILES += ../../build/win32/vs9/test-conformance.vcproj	\
+		  ../../build/win32/vs10/test-conformance.vcxproj	\
+		  ../../build/win32/vs10/test-conformance.vcxproj.filters
+
 # we override the clean-generic target to clean up the wrappers so
 # we cannot use CLEANFILES
 clean-generic: clean-wrappers
diff --git a/tests/interactive/Makefile.am b/tests/interactive/Makefile.am
index 5c04bf6..7e94dc5 100644
--- a/tests/interactive/Makefile.am
+++ b/tests/interactive/Makefile.am
@@ -57,6 +57,8 @@ UNIT_TESTS = \
 	test-path-constraint.c \
 	test-snap-constraint.c
 
+NON_X11_TESTS = $(UNIT_TESTS)
+
 if X11_TESTS
 UNIT_TESTS += test-pixmap.c test-devices.c
 endif
@@ -68,7 +70,7 @@ SHEXT = $(EXEEXT)
 endif
 
 # For convenience, this provides a way to easily run individual unit tests:
-wrappers: stamp-test-interactive
+wrappers: stamp-test-interactive ../../build/win32/test-interactive.bat
 	@true
 stamp-test-interactive: Makefile test-interactive$(EXEEXT)
 	@wrapper=$(abs_builddir)/wrapper.sh ; \
@@ -89,6 +91,15 @@ stamp-test-interactive: Makefile test-interactive$(EXEEXT)
 	done \
 	&& echo timestamp > $(@F)
 
+../../build/win32/test-interactive.bat: Makefile test-interactive$(EXEEXT)
+	echo "  GEN    test-interactive.bat" ; \
+	for i in $(NON_X11_TESTS); \
+	do \
+		test_bin=$${i%*.c} ; \
+		( echo "test-interactive $$test_bin" ) >> $(top_srcdir)/build/win32/test-interactive.bat ; \
+	done \
+	&& echo timestamp > $(@F)
+
 clean-wrappers:
 	@for i in $(UNIT_TESTS); \
 	do \
@@ -96,6 +107,7 @@ clean-wrappers:
 		echo "  RM    $$test_bin"; \
 		rm -f $$test_bin$(SHEXT); \
 	done \
+	&& rm -f $(top_srcdir)/build/win32/test-interactive.bat \
 	&& rm -f stamp-test-interactive
 
 .PHONY: wrappers clean-wrappers
@@ -126,4 +138,44 @@ DISTCLEANFILES = wrapper.sh .gitignore
 
 BUILT_SOURCES = wrappers
 
+dist-hook: ../../build/win32/vs9/test-interactive.vcproj ../../build/win32/vs10/test-interactive.vcxproj ../../build/win32/vs10/test-interactive.vcxproj.filters
+
+../../build/win32/vs9/test-interactive.vcproj: $(top_srcdir)/build/win32/vs9/test-interactive.vcprojin
+	for F in $(test_interactive_SOURCES); do \
+		case $$F in \
+		test-pixmap.c|test-devices.c) ;; \
+		*.c)	echo '   <File RelativePath="..\..\..\tests\interactive\'$$F'" />' \
+			;; \
+		esac; \
+	done >testinteractive.sourcefiles
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs9/test-interactive.vcprojin >$@
+	rm testinteractive.sourcefiles
+	
+../../build/win32/vs10/test-interactive.vcxproj: $(top_srcdir)/build/win32/vs10/test-interactive.vcxprojin
+	for F in $(test_interactive_SOURCES); do \
+		case $$F in \
+		test-pixmap.c|test-devices.c) ;; \
+		*.c)	echo '    <ClCompile Include="..\..\..\tests\interactive\'$$F'" />' \
+			;; \
+		esac; \
+	done >testinteractive.vs10.sourcefiles
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs10/test-interactive.vcxprojin >$@
+	rm testinteractive.vs10.sourcefiles
+	
+../../build/win32/vs10/test-interactive.vcxproj.filters: $(top_srcdir)/build/win32/vs10/test-interactive.vcxproj.filtersin
+	for F in $(test_interactive_SOURCES); do \
+		case $$F in \
+		test-pixmap.c|test-devices.c) ;; \
+		*.c)	echo '    <ClCompile Include="..\..\..\tests\interactive\'$$F'"><Filter>Sources</Filter></ClCompile>' \
+			;; \
+		esac; \
+	done >testinteractive.vs10.sourcefiles.filters
+	$(CPP) -P - <$(top_srcdir)/build/win32/vs10/test-interactive.vcxproj.filtersin >$@
+	rm testinteractive.vs10.sourcefiles.filters
+
+# Let the VS9/VS10 Project files be cleared out before they are re-expanded...
+DISTCLEANFILES += ../../build/win32/vs9/test-interactive.vcproj	\
+		  ../../build/win32/vs10/test-interactive.vcxproj	\
+		  ../../build/win32/vs10/test-interactive.vcxproj.filters
+
 clean-local: clean-wrappers



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]