aboutsummaryrefslogtreecommitdiff
path: root/build
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2014-04-30 08:03:20 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2014-04-30 08:03:20 +0200
commitd0f8909087e541ca448901399db4f6c29dc3c4b7 (patch)
treee8093b7b158b589e8a31776e45cbb0202c59ca24 /build
parent95c9318567dc4ba4a491cc85da2b23e59e2d431f (diff)
Add support for VC12 (2013)
Diffstat (limited to 'build')
-rw-r--r--build/meta/vc12proj-functions.make27
-rw-r--r--build/meta/vc12proj.make5
-rw-r--r--build/meta/vc12sln-functions.make29
-rw-r--r--build/meta/vc12sln.make5
-rwxr-xr-xbuild/meta/vcsln2
5 files changed, 67 insertions, 1 deletions
diff --git a/build/meta/vc12proj-functions.make b/build/meta/vc12proj-functions.make
new file mode 100644
index 0000000..bee0cda
--- /dev/null
+++ b/build/meta/vc12proj-functions.make
@@ -0,0 +1,27 @@
+# file : build/meta/vc12proj-functions.make
+# copyright : Copyright (c) 2009-2012 Code Synthesis Tools CC
+# license : GNU GPL v2; see accompanying LICENSE file
+
+# Process VC++ project file template and write output to $(dist_prefix)/<path>.
+# Where path is computed as difference between src_base and src_root.
+#
+# Arguments:
+#
+# $1 - template path, if doesn't start with /, assume relative to src_base
+# $2 - output name (optional)
+# $3-8 - optional pairs of additional varibales and values $3=$4, $5=$6, etc
+#
+#
+$(out_base)/%: meta-vc12proj = \
+$(call meta-vc12proj-body,$(if $(filter /%,$1),$1,$(src_base)/$1),$(if \
+$2,$2,$(notdir $1)),$(subst $(src_root),,$(src_base)),$3,$4,$5,$6,$7,$8)
+
+# $1 - template
+# $2 - output name
+# $3 - difference between src_base and src_root with leading '\'
+# $4-9 - additional varibales
+#
+$(out_base)/%: meta-vc12proj-body = \
+$(call message,meta $(dist_prefix)$3/$2,$(if $4,$4='$5'; export $4; )$(if \
+$6,$6='$7'; export $6; )$(if $8,$8='$9'; export $8; )$(bld_root)/meta/vc10proj \
+-o $(dist_prefix)$3/$2 $1)
diff --git a/build/meta/vc12proj.make b/build/meta/vc12proj.make
new file mode 100644
index 0000000..7ac3a9a
--- /dev/null
+++ b/build/meta/vc12proj.make
@@ -0,0 +1,5 @@
+# file : build/meta/vc12proj.make
+# copyright : Copyright (c) 2009-2012 Code Synthesis Tools CC
+# license : GNU GPL v2; see accompanying LICENSE file
+
+$(call include-once,$(bld_root)/meta/vc12proj-functions.make,$(out_base))
diff --git a/build/meta/vc12sln-functions.make b/build/meta/vc12sln-functions.make
new file mode 100644
index 0000000..3900c01
--- /dev/null
+++ b/build/meta/vc12sln-functions.make
@@ -0,0 +1,29 @@
+# file : build/meta/vc12sln-functions.make
+# copyright : Copyright (c) 2009-2012 Code Synthesis Tools CC
+# license : GNU GPL v2; see accompanying LICENSE file
+
+# Process VC++ solution template and write output to $(dist_prefix)/<path>.
+# Where path is computed as difference between src_base and src_root.
+#
+# Arguments:
+#
+# $1 - template path, if doesn't start with /, assume relative to src_base
+# $2 - output name (optional)
+# $3 - project suffix (-vc12.vcxproj by default)
+# $4-9 - optional pairs of additional varibales and values $4=$5, $6=$7, etc
+#
+$(out_base)/%: meta-vc12sln = \
+$(call meta-vc12sln-body,$(if $(filter /%,$1),$1,$(src_base)/$1),$(if \
+$2,$2,$(notdir $1)),$(subst \
+$(src_root),,$(src_base)),$(if $3,$3,-vc12.vcxproj),$4,$5,$6,$7,$8,$9)
+
+# $1 - template
+# $2 - output name
+# $3 - difference between src_base and src_root with leading '\'
+# $4 - project suffix
+# $4-10 - additional varibales
+#
+$(out_base)/%: meta-vc12sln-body = \
+$(call message,meta $(dist_prefix)$3/$2,$(if $5,$5='$6'; export $5; )$(if \
+$7,$7='$8'; export $7; )$(if $9,$9='$(10)'; export $9; )$(bld_root)/meta/vcsln \
+-v 12 -b $(dist_prefix)$3 -e '$4' -o $(dist_prefix)$3/$2 $1)
diff --git a/build/meta/vc12sln.make b/build/meta/vc12sln.make
new file mode 100644
index 0000000..9e61b93
--- /dev/null
+++ b/build/meta/vc12sln.make
@@ -0,0 +1,5 @@
+# file : build/meta/vc12sln.make
+# copyright : Copyright (c) 2009-2012 Code Synthesis Tools CC
+# license : GNU GPL v2; see accompanying LICENSE file
+
+$(call include-once,$(bld_root)/meta/vc12sln-functions.make,$(out_base))
diff --git a/build/meta/vcsln b/build/meta/vcsln
index 3b58311..99aaf47 100755
--- a/build/meta/vcsln
+++ b/build/meta/vcsln
@@ -11,7 +11,7 @@
# -b <base-dir>
# -o <output-file>
# -e <project-ext>
-# -v <vc-version> {8, 9, 10, 11}
+# -v <vc-version> {8, 9, 10, 11, 12}
#
# Arguments:
#