From 10170387c702b92f78423ee0e07ffe3e06b96030 Mon Sep 17 00:00:00 2001
From: davehome <davehome@redthumb.info.tm>
Date: Mon, 31 Oct 2011 22:55:27 +0000
Subject: [PATCH] New package: mcpp - portable c preprocessor

---
 srcpkgs/libmcpp                          |  1 +
 srcpkgs/mcpp-devel                       |  1 +
 srcpkgs/mcpp/depends                     |  2 ++
 srcpkgs/mcpp/libmcpp.template            | 15 +++++++++++
 srcpkgs/mcpp/mcpp-devel.template         | 17 ++++++++++++
 srcpkgs/mcpp/template                    | 34 ++++++++++++++++++++++++
 xbps-src/common/mapping_shlib_binpkg.txt |  1 +
 7 files changed, 71 insertions(+)
 create mode 120000 srcpkgs/libmcpp
 create mode 120000 srcpkgs/mcpp-devel
 create mode 100644 srcpkgs/mcpp/depends
 create mode 100644 srcpkgs/mcpp/libmcpp.template
 create mode 100644 srcpkgs/mcpp/mcpp-devel.template
 create mode 100644 srcpkgs/mcpp/template

diff --git a/srcpkgs/libmcpp b/srcpkgs/libmcpp
new file mode 120000
index 0000000000..7539443a48
--- /dev/null
+++ b/srcpkgs/libmcpp
@@ -0,0 +1 @@
+mcpp
\ No newline at end of file
diff --git a/srcpkgs/mcpp-devel b/srcpkgs/mcpp-devel
new file mode 120000
index 0000000000..7539443a48
--- /dev/null
+++ b/srcpkgs/mcpp-devel
@@ -0,0 +1 @@
+mcpp
\ No newline at end of file
diff --git a/srcpkgs/mcpp/depends b/srcpkgs/mcpp/depends
new file mode 100644
index 0000000000..c4aa4697a4
--- /dev/null
+++ b/srcpkgs/mcpp/depends
@@ -0,0 +1,2 @@
+abi_depends=">=2.7.2"
+api_depends="${abi_depends}"
diff --git a/srcpkgs/mcpp/libmcpp.template b/srcpkgs/mcpp/libmcpp.template
new file mode 100644
index 0000000000..fd2900bbfc
--- /dev/null
+++ b/srcpkgs/mcpp/libmcpp.template
@@ -0,0 +1,15 @@
+# Template file for 'libmcpp'.
+#
+short_desc="${short_desc} - Runtime library"
+long_desc="${long_desc}
+
+ This package contains the mcpp runtime library"
+
+Add_dependency run glibc
+Add_dependency run mcpp
+
+do_install()
+{
+	vmkdir usr/lib
+	vmove "usr/lib/*.so*" usr/lib
+}
diff --git a/srcpkgs/mcpp/mcpp-devel.template b/srcpkgs/mcpp/mcpp-devel.template
new file mode 100644
index 0000000000..d1be3dc94d
--- /dev/null
+++ b/srcpkgs/mcpp/mcpp-devel.template
@@ -0,0 +1,17 @@
+# Template file for 'mcpp-devel'.
+#
+short_desc="${short_desc} - development files"
+long_desc="${long_desc}
+
+ This package contains files for development, headers, static libs, etc."
+
+Add_dependency run glibc-devel
+Add_dependency run mcpp
+
+do_install()
+{
+	vmkdir usr/lib
+	vmkdir usr/include
+	vmove usr/include usr
+	vmove "usr/lib/*.a" usr/lib
+}
diff --git a/srcpkgs/mcpp/template b/srcpkgs/mcpp/template
new file mode 100644
index 0000000000..9662585d98
--- /dev/null
+++ b/srcpkgs/mcpp/template
@@ -0,0 +1,34 @@
+# Template file for 'mcpp'
+pkgname=mcpp
+version=2.7.2
+distfiles="${SOURCEFORGE_SITE}/${pkgname}/${pkgname}-${version}.tar.gz"
+build_style=gnu-configure
+configure_args="--enable-mcpplib"
+homepage="http://mcpp.sourceforge.net/"
+license="BSD-Style"
+short_desc="Portable C preprocessor"
+maintainer="davehome <davehome@redthumb.info.tm>"
+checksum=3b9b4421888519876c4fc68ade324a3bbd81ceeb7092ecdbbc2055099fcb8864
+long_desc="
+ mcpp is a C/C++ preprocessor with the following features:
+
+ * Implements all of C90, C99 and C++98 specifications.
+ * Provides a validation suite to test C/C++ preprocessor's conformance and
+   quality comprehensively. When this validation suite is applied, mcpp
+   distinguishes itself among many existing preprocessors.
+ * Has plentiful and on-target diagnostics to check all the preprocessing
+   problems such as latent bug or lack of portability in source code.
+ * Has #pragma directives to output debugging information.
+ * Is portable and has been ported to many compiler-systems, including GCC
+   and Visual C++, on UNIX-like systems and Windows.
+ * Has various behavior modes.
+ * Can be built either as a compiler-specific preprocessor to replace the
+   resident preprocessor of a particular compiler system, or as a compiler-independent command, or even as a subroutine called from some other main program.
+ * Provides comprehensive documents both in Japanese and in English.
+ * Is an open source software released under BSD-style-license.
+ * It is probably number one C/C++ preprocessor now available in the world."
+
+subpackages="lib$pkgname $pkgname-devel"
+
+Add_dependency run glibc
+Add_dependency run libmcpp
diff --git a/xbps-src/common/mapping_shlib_binpkg.txt b/xbps-src/common/mapping_shlib_binpkg.txt
index 8da6019cf2..72bc374a74 100644
--- a/xbps-src/common/mapping_shlib_binpkg.txt
+++ b/xbps-src/common/mapping_shlib_binpkg.txt
@@ -940,3 +940,4 @@ libportaudiocpp.so.0		portaudiocpp		portaudiocpp-devel
 libprotoc.so.7			protobuf		protobuf-devel
 libprotobuf.so.7		protobuf		protobuf-devel
 libprotobuf-lite.so.7		protobuf-lite		protobuf-devel
+libmcpp.so.0			libmcpp			mcpp-devel