summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChun-wei Fan <fanchunwei@src.gnome.org>2015-04-29 15:32:06 +0800
committerChun-wei Fan <fanchunwei@src.gnome.org>2015-04-29 15:32:06 +0800
commit7086a12ba5a5ea9661e25c9b8f3b264784c7777b (patch)
treef9605a2e57e0f3d94b139aae95835b56de7be6c4
parent7e5a553e7b597a7d53e901307c5f46a660b9c124 (diff)
downloadgobject-introspection-7086a12ba5a5ea9661e25c9b8f3b264784c7777b.tar.gz
build/Makefile-newvs.am: Use Pattern Rules
This helps to handle the case where we try to do 'make -jN dist'/'make -jN distcheck', so that these can be done faster. According to a later patch by Simon McVittie, this patch also includes handling the case where builddir != srcdir for using the pattern rules.
-rw-r--r--build/Makefile-newvs.am48
1 files changed, 24 insertions, 24 deletions
diff --git a/build/Makefile-newvs.am b/build/Makefile-newvs.am
index e63b15f7..e3acd919 100644
--- a/build/Makefile-newvs.am
+++ b/build/Makefile-newvs.am
@@ -9,29 +9,29 @@
MSVC_FORMAT_VER=$(shell echo $$(expr $(MSVC_VER) + 1))
-$(MSVC_SLN).sln: $(top_srcdir)/build/win32/vs10/$(MSVC_SLN).sln create_vcxproj copy_filters create_props
- cat $(top_srcdir)/build/win32/vs10/$(MSVC_SLN).sln | sed 's/11\.00/$(MSVC_FORMAT_VER)\.00/g' | sed 's/2010/$(MSVC_VER_LONG)/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/$(MSVC_SLN).sln
+$(MSVC_SLN).sln: $(top_srcdir)/build/win32/vs10/$(MSVC_SLN).sln
+ cat $< | sed 's/11\.00/$(MSVC_FORMAT_VER)\.00/g' | sed 's/2010/$(MSVC_VER_LONG)/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
README.txt: $(top_srcdir)/build/win32/vs10/README.txt
- cat $(top_srcdir)/build/win32/vs10/README.txt | sed 's/vs10/vs$(MSVC_VER)/g' | sed 's/VS10/VS$(MSVC_VER)/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/README.txt
-
-create_vcxproj:
- for F in `(cd $(top_builddir)/build/win32/vs10 && ls *.vcxproj)`; do \
- case $$F in \
- *) cat $(top_builddir)/build/win32/vs10/$$F | sed 's/v100/v$(MSVC_VER)0/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/$$F \
- ;; \
- esac; \
- done
-
-create_props:
- for F in `(cd $(top_builddir)/build/win32/vs10 && ls *.props)`; do \
- case $$F in \
- *) cat $(top_builddir)/build/win32/vs10/$$F | sed 's/<VSVer>10<\/VSVer>/<VSVer>$(MSVC_VER)<\/VSVer>/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/$$F \
- ;; \
- esac; \
- done
-
-copy_filters:
- cp $(top_srcdir)/build/win32/vs10/*.vcxproj.filters $(top_builddir)/build/win32/vs$(MSVC_VER)/
-
-
+ cat $< | sed 's/vs10/vs$(MSVC_VER)/g' | sed 's/VS10/VS$(MSVC_VER)/g' > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@
+
+%.vcxproj:
+ if test -e $(top_srcdir)/build/win32/vs10/$@; then \
+ sed 's/v100/v$(MSVC_VER)0/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
+ else \
+ sed 's/v100/v$(MSVC_VER)0/g' < $(top_builddir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
+ fi
+
+%.props:
+ if test -e $(top_srcdir)/build/win32/vs10/$@; then \
+ sed 's/<VSVer>10<\/VSVer>/<VSVer>$(MSVC_VER)<\/VSVer>/g' < $(top_srcdir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
+ else \
+ sed 's/<VSVer>10<\/VSVer>/<VSVer>$(MSVC_VER)<\/VSVer>/g' < $(top_builddir)/build/win32/vs10/$@ > $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
+ fi
+
+%.vcxproj.filters:
+ if test -e $(top_srcdir)/build/win32/vs10/$@; then \
+ cp $(top_srcdir)/build/win32/vs10/$@ $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
+ else \
+ cp $(top_builddir)/build/win32/vs10/$@ $(top_builddir)/build/win32/vs$(MSVC_VER)/$@; \
+ fi