[cogl/cogl-1.16] Add Autotools Items to Complete the Cogl-Path MSVC Projects



commit 08fecbaa8452b7348c930fb00fa94e8d582c6622
Author: Chun-wei Fan <fanchunwei src gnome org>
Date:   Tue Aug 27 17:55:39 2013 +0800

    Add Autotools Items to Complete the Cogl-Path MSVC Projects
    
    This adds a centralized autotools Makefile to be used in the completion
    of the project files for Cogl-Path for now, which can be used also in
    Cogl, Cogl-Pango and possibly Cogl-Gst so that we could have less clutter
    in the autotools files.
    
    This patch set will also allow the Cogl-Path project files to be filled in
    during 'make dist' and make them distributed during a tarball release.
    
    Reviewed-by: Neil Roberts <neil linux intel com>
    (cherry picked from commit 491020592b240ca5f2885dee104c88bf431858ae)
    
    Conflicts:
        cogl-path/Makefile.am

 build/Makefile-msvcproj.mak  |   56 ++++++++++++++++++++++++++++++++++++++++++
 build/win32/vs10/Makefile.am |    8 ++++-
 build/win32/vs9/Makefile.am  |    2 +
 cogl-path/Makefile.am        |   12 +++++++++
 4 files changed, 76 insertions(+), 2 deletions(-)
---
diff --git a/build/Makefile-msvcproj.mak b/build/Makefile-msvcproj.mak
new file mode 100644
index 0000000..6640a70
--- /dev/null
+++ b/build/Makefile-msvcproj.mak
@@ -0,0 +1,56 @@
+# Centralized autotools file
+# To create the Visual C++ projects
+# from the templates
+# Author: Fan, Chun-wei
+# August 30, 2012
+
+# Required Items to call this:
+# MSVC_PROJECT: name of project
+# MSVC_PROJECT_SRCDIR: subdir of source tree where sources for this project is found
+# MSVC_PROJECT_SRCS: source files to build
+# MSVC_PROJECT_EXCLUDES: source files to exclude from MSVC_PROJECT_SRCS, use dummy if none,
+# wildcards (*) are allowed, seperated by |
+# DISTCLEANFILES: Define an empty one if not previously defined
+
+# Create the complete Visual C++ 2008/2010 project files
+
+$(top_builddir)/build/win32/vs9/$(MSVC_PROJECT).vcproj: 
$(top_srcdir)/build/win32/vs9/$(MSVC_PROJECT).vcprojin
+       for F in `echo $(MSVC_PROJECT_SRCS) | sed 's/\.\///g' | tr '/' '\\'`; do \
+               case $$F in \
+                       $(MSVC_PROJECT_EXCLUDES)) \
+                               ;; \
+                       *.c) echo ' <File RelativePath="..\..\..\$(MSVC_PROJECT_SRCDIR)\'$$F'" />' \
+                               ;; \
+                       esac; \
+               done | sort -u >$(MSVC_PROJECT).sourcefiles
+       $(CPP) -P - <$(top_srcdir)/build/win32/vs9/$(MSVC_PROJECT).vcprojin >$@
+       rm $(MSVC_PROJECT).sourcefiles
+
+$(top_builddir)/build/win32/vs10/$(MSVC_PROJECT).vcxproj: 
$(top_srcdir)/build/win32/vs10/$(MSVC_PROJECT).vcxprojin
+       for F in `echo $(MSVC_PROJECT_SRCS) | sed 's/\.\///g' | tr '/' '\\'`; do \
+               case $$F in \
+                       $(MSVC_PROJECT_EXCLUDES)) \
+                               ;; \
+                       *.c) echo ' <ClCompile Include="..\..\..\$(MSVC_PROJECT_SRCDIR)\'$$F'" />' \
+                               ;; \
+                       esac; \
+               done | sort -u >$(MSVC_PROJECT).vs10.sourcefiles
+       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/$(MSVC_PROJECT).vcxprojin >$@
+       rm $(MSVC_PROJECT).vs10.sourcefiles
+
+$(top_builddir)/build/win32/vs10/$(MSVC_PROJECT).vcxproj.filters: 
$(top_srcdir)/build/win32/vs10/$(MSVC_PROJECT).vcxproj.filtersin
+       for F in `echo $(MSVC_PROJECT_SRCS) | sed 's/\.\///g' | tr '/' '\\'`; do \
+               case $$F in \
+                       $(MSVC_PROJECT_EXCLUDES)) \
+                               ;; \
+                       *.c) echo ' <ClCompile Include="..\..\..\$(MSVC_PROJECT_SRCDIR)\'$$F'"><Filter>Source 
Files</Filter></ClCompile>' \
+                               ;; \
+                       esac; \
+               done | sort -u >$(MSVC_PROJECT).vs10.sourcefiles.filters
+       $(CPP) -P - <$(top_srcdir)/build/win32/vs10/$(MSVC_PROJECT).vcxproj.filtersin >$@
+       rm $(MSVC_PROJECT).vs10.sourcefiles.filters
+
+DISTCLEANFILES += \
+       $(top_builddir)/build/win32/vs9/$(MSVC_PROJECT).vcproj \
+       $(top_builddir)/build/win32/vs10/$(MSVC_PROJECT).vcxproj \
+       $(top_builddir)/build/win32/vs10/$(MSVC_PROJECT).vcxproj.filters
diff --git a/build/win32/vs10/Makefile.am b/build/win32/vs10/Makefile.am
index bfc0d66..b54bae6 100644
--- a/build/win32/vs10/Makefile.am
+++ b/build/win32/vs10/Makefile.am
@@ -4,8 +4,12 @@ EXTRA_DIST = \
        cogl.props      \
        cogl.vcxproj            \
        cogl.vcxprojin          \
-       cogl.vcxproj.filters            \
-       cogl.vcxproj.filtersin          \
+       cogl.vcxproj.filters    \
+       cogl.vcxproj.filtersin  \
+       cogl-path.vcxproj               \
+       cogl-path.vcxprojin             \
+       cogl-path.vcxproj.filters               \
+       cogl-path.vcxproj.filtersin             \
        cogl-pango.vcxproj      \
        cogl-pango.vcxprojin    \
        cogl-pango.vcxproj.filters      \
diff --git a/build/win32/vs9/Makefile.am b/build/win32/vs9/Makefile.am
index 96b0a06..0e93a3b 100644
--- a/build/win32/vs9/Makefile.am
+++ b/build/win32/vs9/Makefile.am
@@ -4,6 +4,8 @@ EXTRA_DIST = \
        cogl.vsprops    \
        cogl.vcproj             \
        cogl.vcprojin           \
+       cogl-path.vcproj        \
+       cogl-path.vcprojin      \
        cogl-pango.vcproj       \
        cogl-pango.vcprojin     \
        test-conformance-cogl.vcproj    \
diff --git a/cogl-path/Makefile.am b/cogl-path/Makefile.am
index 49558c0..8212a50 100644
--- a/cogl-path/Makefile.am
+++ b/cogl-path/Makefile.am
@@ -91,3 +91,15 @@ cogl_pathheaders_HEADERS = $(source_h)
 if USE_GLIB
 nodist_cogl_pathheaders_HEADERS = cogl-path-enum-types.h
 endif
+
+dist-hook:     \
+       $(top_builddir)/build/win32/vs9/cogl-path.vcproj        \
+       $(top_builddir)/build/win32/vs10/cogl-path.vcxproj      \
+       $(top_builddir)/build/win32/vs10/cogl-path.vcxproj.filters
+
+MSVC_PROJECT = cogl-path
+MSVC_PROJECT_SRCDIR = cogl-path
+MSVC_PROJECT_SRCS = $(source_c)
+MSVC_PROJECT_EXCLUDES = dummy
+
+include $(top_srcdir)/build/Makefile-msvcproj.mak


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