summaryrefslogtreecommitdiff
path: root/dev-cpp
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-cpp
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-cpp')
-rw-r--r--dev-cpp/ETL/ETL-0.04.15.ebuild26
-rw-r--r--dev-cpp/ETL/Manifest5
-rw-r--r--dev-cpp/ETL/metadata.xml11
-rw-r--r--dev-cpp/antlr-cpp/Manifest10
-rw-r--r--dev-cpp/antlr-cpp/antlr-cpp-2.7.7-r1.ebuild105
-rw-r--r--dev-cpp/antlr-cpp/antlr-cpp-2.7.7.ebuild105
-rw-r--r--dev-cpp/antlr-cpp/antlr-cpp-3.5.2-r1.ebuild19
-rw-r--r--dev-cpp/antlr-cpp/antlr-cpp-3.5.2.ebuild22
-rw-r--r--dev-cpp/antlr-cpp/files/2.7.7-gcc.patch12
-rw-r--r--dev-cpp/antlr-cpp/files/2.7.7-libtool.patch21
-rw-r--r--dev-cpp/antlr-cpp/metadata.xml11
-rw-r--r--dev-cpp/asio/Manifest5
-rw-r--r--dev-cpp/asio/asio-1.10.8.ebuild45
-rw-r--r--dev-cpp/asio/metadata.xml11
-rw-r--r--dev-cpp/atkmm/Manifest5
-rw-r--r--dev-cpp/atkmm/atkmm-2.24.2.ebuild36
-rw-r--r--dev-cpp/atkmm/metadata.xml8
-rw-r--r--dev-cpp/cairomm/Manifest5
-rw-r--r--dev-cpp/cairomm/cairomm-1.12.0-r1.ebuild48
-rw-r--r--dev-cpp/cairomm/metadata.xml8
-rw-r--r--dev-cpp/catch/Manifest10
-rw-r--r--dev-cpp/catch/catch-1.10.0.ebuild34
-rw-r--r--dev-cpp/catch/catch-1.9.7.ebuild34
-rw-r--r--dev-cpp/catch/catch-1.9999.ebuild34
-rw-r--r--dev-cpp/catch/catch-2.0.0_pre3.ebuild37
-rw-r--r--dev-cpp/catch/catch-9999.ebuild34
-rw-r--r--dev-cpp/catch/metadata.xml11
-rw-r--r--dev-cpp/clucene/Manifest8
-rw-r--r--dev-cpp/clucene/clucene-2.3.3.4-r6.ebuild63
-rw-r--r--dev-cpp/clucene/files/clucene-2.3.3.4-contrib.patch42
-rw-r--r--dev-cpp/clucene/files/clucene-2.3.3.4-gcc6.patch28
-rw-r--r--dev-cpp/clucene/files/clucene-2.3.3.4-pkgconfig.patch12
-rw-r--r--dev-cpp/clucene/metadata.xml7
-rw-r--r--dev-cpp/commoncpp2/Manifest14
-rw-r--r--dev-cpp/commoncpp2/commoncpp2-1.8.1-r2.ebuild69
-rw-r--r--dev-cpp/commoncpp2/commoncpp2-1.8.1-r3.ebuild72
-rw-r--r--dev-cpp/commoncpp2/files/1.8.0-glibc212.patch12
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch61
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-configure_detect_netfilter.patch14
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-fix-buffer-overflow.patch13
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-fix-c++14.patch52
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-gnutls-3.4.patch36
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch48
-rw-r--r--dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch11
-rw-r--r--dev-cpp/commoncpp2/metadata.xml8
-rw-r--r--dev-cpp/cpp-hocon/Manifest4
-rw-r--r--dev-cpp/cpp-hocon/cpp-hocon-0.1.4.ebuild43
-rw-r--r--dev-cpp/cpp-hocon/metadata.xml14
-rw-r--r--dev-cpp/ctemplate/Manifest7
-rw-r--r--dev-cpp/ctemplate/ctemplate-2.3-r1.ebuild77
-rw-r--r--dev-cpp/ctemplate/files/70ctemplate-gentoo.el7
-rw-r--r--dev-cpp/ctemplate/files/ctemplate-2.3-fix-build-system.patch29
-rw-r--r--dev-cpp/ctemplate/metadata.xml12
-rw-r--r--dev-cpp/eigen/Manifest19
-rw-r--r--dev-cpp/eigen/eigen-2.0.17.ebuild62
-rw-r--r--dev-cpp/eigen/eigen-3.2.10.ebuild110
-rw-r--r--dev-cpp/eigen/eigen-3.2.8-r2.ebuild111
-rw-r--r--dev-cpp/eigen/eigen-3.2.9.ebuild110
-rw-r--r--dev-cpp/eigen/eigen-3.3.1.ebuild115
-rw-r--r--dev-cpp/eigen/eigen-3.3.2.ebuild115
-rw-r--r--dev-cpp/eigen/eigen-3.3.3.ebuild111
-rw-r--r--dev-cpp/eigen/files/eigen-3.2.7-adaolc-backport.patch40
-rw-r--r--dev-cpp/eigen/files/eigen-3.2.7-pastix-5.2-backport.patch42
-rw-r--r--dev-cpp/eigen/metadata.xml27
-rw-r--r--dev-cpp/gccxml/Manifest5
-rw-r--r--dev-cpp/gccxml/gccxml-0.9.0_pre20131217.ebuild33
-rw-r--r--dev-cpp/gccxml/metadata.xml8
-rw-r--r--dev-cpp/gconfmm/Manifest5
-rw-r--r--dev-cpp/gconfmm/gconfmm-2.28.3-r1.ebuild40
-rw-r--r--dev-cpp/gconfmm/metadata.xml8
-rw-r--r--dev-cpp/gflags/Manifest11
-rw-r--r--dev-cpp/gflags/files/gflags-2.1.1-libs.patch45
-rw-r--r--dev-cpp/gflags/gflags-2.1.1-r1.ebuild32
-rw-r--r--dev-cpp/gflags/gflags-2.1.2.ebuild30
-rw-r--r--dev-cpp/gflags/gflags-2.2.0.ebuild36
-rw-r--r--dev-cpp/gflags/gflags-9999.ebuild36
-rw-r--r--dev-cpp/gflags/metadata.xml10
-rw-r--r--dev-cpp/glibmm/Manifest7
-rw-r--r--dev-cpp/glibmm/glibmm-2.50.1.ebuild65
-rw-r--r--dev-cpp/glibmm/glibmm-2.52.0.ebuild65
-rw-r--r--dev-cpp/glibmm/metadata.xml8
-rw-r--r--dev-cpp/glog/Manifest11
-rw-r--r--dev-cpp/glog/files/glog-0.3.2-avoid-inline-asm.patch56
-rw-r--r--dev-cpp/glog/files/glog-0.3.4-fix-build-system.patch142
-rw-r--r--dev-cpp/glog/files/glog-0.3.4-fix-gcc5-demangling.patch56
-rw-r--r--dev-cpp/glog/glog-0.3.3-r1.ebuild67
-rw-r--r--dev-cpp/glog/glog-0.3.4-r1.ebuild50
-rw-r--r--dev-cpp/glog/glog-0.3.4.ebuild68
-rw-r--r--dev-cpp/glog/metadata.xml19
-rw-r--r--dev-cpp/gmock/Manifest6
-rw-r--r--dev-cpp/gmock/files/gmock-1.7.0-gcc6.patch32
-rw-r--r--dev-cpp/gmock/gmock-1.7.0-r1.ebuild61
-rw-r--r--dev-cpp/gmock/metadata.xml11
-rw-r--r--dev-cpp/gnome-vfsmm/Manifest5
-rw-r--r--dev-cpp/gnome-vfsmm/gnome-vfsmm-2.26.0-r1.ebuild57
-rw-r--r--dev-cpp/gnome-vfsmm/metadata.xml8
-rw-r--r--dev-cpp/gstreamermm/Manifest13
-rw-r--r--dev-cpp/gstreamermm/files/1.4.3-fix-compile.patch23
-rw-r--r--dev-cpp/gstreamermm/files/1.8.0-add-missing-header.patch42
-rw-r--r--dev-cpp/gstreamermm/files/1.8.0-fix-wrapping.patch23
-rw-r--r--dev-cpp/gstreamermm/files/1.8.0-gst-bad-pkgconfig-cflags.patch42
-rw-r--r--dev-cpp/gstreamermm/gstreamermm-0.10.11.ebuild38
-rw-r--r--dev-cpp/gstreamermm/gstreamermm-1.4.3.ebuild62
-rw-r--r--dev-cpp/gstreamermm/gstreamermm-1.8.0.ebuild74
-rw-r--r--dev-cpp/gstreamermm/metadata.xml12
-rw-r--r--dev-cpp/gtest/Manifest12
-rw-r--r--dev-cpp/gtest/files/configure-fix-pthread-linking.patch93
-rw-r--r--dev-cpp/gtest/files/gtest-1.8.0-multilib-strict.patch40
-rw-r--r--dev-cpp/gtest/files/gtest-9999-fix-gcc6-undefined-behavior.patch21
-rw-r--r--dev-cpp/gtest/files/gtest-9999-fix-py-tests.patch19
-rw-r--r--dev-cpp/gtest/gtest-1.7.0-r1.ebuild50
-rw-r--r--dev-cpp/gtest/gtest-1.8.0.ebuild59
-rw-r--r--dev-cpp/gtest/gtest-9999.ebuild60
-rw-r--r--dev-cpp/gtest/metadata.xml17
-rw-r--r--dev-cpp/gtkglextmm/Manifest7
-rw-r--r--dev-cpp/gtkglextmm/files/gtkglextmm-1.2.0-aclocal.patch11
-rw-r--r--dev-cpp/gtkglextmm/gtkglextmm-1.2.0-r1.ebuild42
-rw-r--r--dev-cpp/gtkglextmm/gtkglextmm-1.2.0-r2.ebuild46
-rw-r--r--dev-cpp/gtkglextmm/metadata.xml11
-rw-r--r--dev-cpp/gtkmm/Manifest11
-rw-r--r--dev-cpp/gtkmm/gtkmm-2.24.5.ebuild68
-rw-r--r--dev-cpp/gtkmm/gtkmm-3.22.0.ebuild72
-rw-r--r--dev-cpp/gtkmm/gtkmm-3.22.1.ebuild72
-rw-r--r--dev-cpp/gtkmm/gtkmm-3.22.2.ebuild72
-rw-r--r--dev-cpp/gtkmm/metadata.xml8
-rw-r--r--dev-cpp/gtksourceviewmm/Manifest7
-rw-r--r--dev-cpp/gtksourceviewmm/gtksourceviewmm-2.10.3-r1.ebuild48
-rw-r--r--dev-cpp/gtksourceviewmm/gtksourceviewmm-3.18.0.ebuild34
-rw-r--r--dev-cpp/gtksourceviewmm/metadata.xml11
-rw-r--r--dev-cpp/htmlcxx/Manifest6
-rw-r--r--dev-cpp/htmlcxx/files/0001-strstream-is-deprecated-use-sstream-instead.patch56
-rw-r--r--dev-cpp/htmlcxx/files/0002-Update-css_syntax.y-for-use-with-less-ancient-Bison.patch67
-rw-r--r--dev-cpp/htmlcxx/htmlcxx-0.86.ebuild35
-rw-r--r--dev-cpp/htmlcxx/metadata.xml11
-rw-r--r--dev-cpp/icnc/Manifest5
-rw-r--r--dev-cpp/icnc/icnc-1.0.100.ebuild77
-rw-r--r--dev-cpp/icnc/metadata.xml11
-rw-r--r--dev-cpp/libassa/Manifest7
-rw-r--r--dev-cpp/libassa/files/libassa-3.5.0-fix-tests.patch351
-rw-r--r--dev-cpp/libassa/files/libassa-3.5.1-gcc47.patch12
-rw-r--r--dev-cpp/libassa/libassa-3.5.1-r2.ebuild34
-rw-r--r--dev-cpp/libassa/metadata.xml7
-rw-r--r--dev-cpp/libbinio/Manifest7
-rw-r--r--dev-cpp/libbinio/files/libbinio-1.4-cstdio.patch10
-rw-r--r--dev-cpp/libbinio/files/libbinio-1.4-texi.patch21
-rw-r--r--dev-cpp/libbinio/libbinio-1.4-r1.ebuild32
-rw-r--r--dev-cpp/libbinio/metadata.xml11
-rw-r--r--dev-cpp/libcmis/Manifest7
-rw-r--r--dev-cpp/libcmis/files/libcmis-0.5.2-fix-gdrive-2fa.patch70
-rw-r--r--dev-cpp/libcmis/libcmis-0.5.2_pre20160820-r1.ebuild82
-rw-r--r--dev-cpp/libcmis/libcmis-9999.ebuild80
-rw-r--r--dev-cpp/libcmis/metadata.xml14
-rw-r--r--dev-cpp/libcutl/Manifest6
-rw-r--r--dev-cpp/libcutl/files/libcutl-1.10.0-boost-1.65-tr1.patch162
-rw-r--r--dev-cpp/libcutl/files/libcutl-1.10.0-fix-c++14.patch53
-rw-r--r--dev-cpp/libcutl/libcutl-1.10.0.ebuild52
-rw-r--r--dev-cpp/libcutl/metadata.xml8
-rw-r--r--dev-cpp/libglademm/Manifest5
-rw-r--r--dev-cpp/libglademm/libglademm-2.6.7-r2.ebuild74
-rw-r--r--dev-cpp/libglademm/metadata.xml8
-rw-r--r--dev-cpp/libgnomecanvasmm/Manifest5
-rw-r--r--dev-cpp/libgnomecanvasmm/libgnomecanvasmm-2.26.0-r1.ebuild56
-rw-r--r--dev-cpp/libgnomecanvasmm/metadata.xml8
-rw-r--r--dev-cpp/libgnomemm/Manifest5
-rw-r--r--dev-cpp/libgnomemm/libgnomemm-2.30.0-r1.ebuild29
-rw-r--r--dev-cpp/libgnomemm/metadata.xml8
-rw-r--r--dev-cpp/libjson-rpc-cpp/Manifest6
-rw-r--r--dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-0.7.0.ebuild58
-rw-r--r--dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-9999.ebuild64
-rw-r--r--dev-cpp/libjson-rpc-cpp/metadata.xml18
-rw-r--r--dev-cpp/libmcpp/Manifest6
-rw-r--r--dev-cpp/libmcpp/files/libmcpp-2.7.2-fix-build-system.patch30
-rw-r--r--dev-cpp/libmcpp/libmcpp-2.7.2-r2.ebuild43
-rw-r--r--dev-cpp/libmcpp/metadata.xml11
-rw-r--r--dev-cpp/libxmlpp/Manifest7
-rw-r--r--dev-cpp/libxmlpp/libxmlpp-2.40.1.ebuild37
-rw-r--r--dev-cpp/libxmlpp/libxmlpp-3.0.1.ebuild36
-rw-r--r--dev-cpp/libxmlpp/metadata.xml11
-rw-r--r--dev-cpp/libxsd-frontend/Manifest5
-rw-r--r--dev-cpp/libxsd-frontend/libxsd-frontend-2.0.0.ebuild87
-rw-r--r--dev-cpp/libxsd-frontend/metadata.xml8
-rw-r--r--dev-cpp/lucene++/Manifest6
-rw-r--r--dev-cpp/lucene++/files/lucene++-3.0.7-boost-1.58.patch37
-rw-r--r--dev-cpp/lucene++/lucene++-3.0.7.ebuild36
-rw-r--r--dev-cpp/lucene++/metadata.xml11
-rw-r--r--dev-cpp/metadata.xml40
-rw-r--r--dev-cpp/metslib/Manifest5
-rw-r--r--dev-cpp/metslib/metadata.xml8
-rw-r--r--dev-cpp/metslib/metslib-0.5.3.ebuild17
-rw-r--r--dev-cpp/mm-common/Manifest7
-rw-r--r--dev-cpp/mm-common/metadata.xml8
-rw-r--r--dev-cpp/mm-common/mm-common-0.9.10.ebuild18
-rw-r--r--dev-cpp/mm-common/mm-common-0.9.11.ebuild18
-rw-r--r--dev-cpp/muParser/Manifest8
-rw-r--r--dev-cpp/muParser/files/muParser-1.32-parallel-build.patch15
-rw-r--r--dev-cpp/muParser/metadata.xml17
-rw-r--r--dev-cpp/muParser/muParser-2.2.3.ebuild49
-rw-r--r--dev-cpp/muParser/muParser-2.2.5.ebuild42
-rw-r--r--dev-cpp/pangomm/Manifest5
-rw-r--r--dev-cpp/pangomm/metadata.xml8
-rw-r--r--dev-cpp/pangomm/pangomm-2.40.1.ebuild39
-rw-r--r--dev-cpp/pficommon/Manifest10
-rw-r--r--dev-cpp/pficommon/files/pficommon-1.3.1.0-gcc-4.7.patch50
-rw-r--r--dev-cpp/pficommon/files/pficommon-1.3.1.0-gcc6.patch350
-rw-r--r--dev-cpp/pficommon/files/pficommon-1.3.1.0-libdir.patch49
-rw-r--r--dev-cpp/pficommon/files/pficommon-1.3.1.0-postgresql.patch13
-rw-r--r--dev-cpp/pficommon/files/pficommon-1.3.1.0-soname.patch200
-rw-r--r--dev-cpp/pficommon/metadata.xml14
-rw-r--r--dev-cpp/pficommon/pficommon-1.3.1.0.ebuild58
-rw-r--r--dev-cpp/picojson/Manifest4
-rw-r--r--dev-cpp/picojson/metadata.xml11
-rw-r--r--dev-cpp/picojson/picojson-1.3.0.ebuild32
-rw-r--r--dev-cpp/pngpp/Manifest6
-rw-r--r--dev-cpp/pngpp/files/pngpp-0.2.9-DESTDIR.patch15
-rw-r--r--dev-cpp/pngpp/metadata.xml12
-rw-r--r--dev-cpp/pngpp/pngpp-0.2.9.ebuild34
-rw-r--r--dev-cpp/pstreams/Manifest15
-rw-r--r--dev-cpp/pstreams/metadata.xml11
-rw-r--r--dev-cpp/pstreams/pstreams-0.7.0.ebuild42
-rw-r--r--dev-cpp/pstreams/pstreams-0.8.1.ebuild42
-rw-r--r--dev-cpp/pstreams/pstreams-1.0.0.ebuild42
-rw-r--r--dev-cpp/pstreams/pstreams-1.0.1.ebuild42
-rw-r--r--dev-cpp/random123/Manifest3
-rw-r--r--dev-cpp/random123/metadata.xml12
-rw-r--r--dev-cpp/random123/random123-1.09-r1.ebuild24
-rw-r--r--dev-cpp/rudiments/Manifest9
-rw-r--r--dev-cpp/rudiments/files/rudiments-0.46-buildsystem.patch88
-rw-r--r--dev-cpp/rudiments/files/rudiments-0.51-buildsystem.patch86
-rw-r--r--dev-cpp/rudiments/metadata.xml17
-rw-r--r--dev-cpp/rudiments/rudiments-0.46.ebuild42
-rw-r--r--dev-cpp/rudiments/rudiments-0.51.ebuild42
-rw-r--r--dev-cpp/sparsehash/Manifest9
-rw-r--r--dev-cpp/sparsehash/files/1.10-gcc46.patch16
-rw-r--r--dev-cpp/sparsehash/files/sparsehash-2.0.3-fix-buildsystem.patch71
-rw-r--r--dev-cpp/sparsehash/metadata.xml11
-rw-r--r--dev-cpp/sparsehash/sparsehash-1.10.ebuild27
-rw-r--r--dev-cpp/sparsehash/sparsehash-2.0.3-r1.ebuild24
-rw-r--r--dev-cpp/tbb/Manifest17
-rw-r--r--dev-cpp/tbb/files/tbb-2017.20161128-build.patch193
-rw-r--r--dev-cpp/tbb/files/tbb-2017.20161128-underlinking.patch15
-rw-r--r--dev-cpp/tbb/files/tbb-4.0.297-underlinking.patch20
-rw-r--r--dev-cpp/tbb/files/tbb-4.3.20150611-build.patch196
-rw-r--r--dev-cpp/tbb/files/tbb-4.4.20160803-build.patch193
-rw-r--r--dev-cpp/tbb/files/tbb-4.4.20160803-underlinking.patch15
-rw-r--r--dev-cpp/tbb/metadata.xml18
-rw-r--r--dev-cpp/tbb/tbb-2017.20161128.ebuild144
-rw-r--r--dev-cpp/tbb/tbb-2017.20170226.ebuild144
-rw-r--r--dev-cpp/tbb/tbb-4.3.20150611.ebuild131
-rw-r--r--dev-cpp/tbb/tbb-4.4.20160803.ebuild145
-rw-r--r--dev-cpp/tclap/Manifest5
-rw-r--r--dev-cpp/tclap/metadata.xml8
-rw-r--r--dev-cpp/tclap/tclap-1.2.1.ebuild24
-rw-r--r--dev-cpp/threadpool/Manifest7
-rw-r--r--dev-cpp/threadpool/files/threadpool-0.2.5-memleak.patch22
-rw-r--r--dev-cpp/threadpool/metadata.xml11
-rw-r--r--dev-cpp/threadpool/threadpool-0.2.5-r1.ebuild39
-rw-r--r--dev-cpp/tree/Manifest9
-rw-r--r--dev-cpp/tree/files/tree-2.62-test.patch17
-rw-r--r--dev-cpp/tree/files/tree-2.65-gcc46.patch15
-rw-r--r--dev-cpp/tree/metadata.xml15
-rw-r--r--dev-cpp/tree/tree-2.65-r1.ebuild41
-rw-r--r--dev-cpp/tree/tree-2.81.ebuild41
-rw-r--r--dev-cpp/waylandpp/Manifest6
-rw-r--r--dev-cpp/waylandpp/metadata.xml12
-rw-r--r--dev-cpp/waylandpp/waylandpp-0.1.0.ebuild54
-rw-r--r--dev-cpp/waylandpp/waylandpp-0.1.2.ebuild54
-rw-r--r--dev-cpp/waylandpp/waylandpp-9999.ebuild49
-rw-r--r--dev-cpp/websocketpp/Manifest5
-rw-r--r--dev-cpp/websocketpp/metadata.xml14
-rw-r--r--dev-cpp/websocketpp/websocketpp-0.7.0.ebuild37
-rw-r--r--dev-cpp/xsd/Manifest9
-rw-r--r--dev-cpp/xsd/files/xsd-4.0.0-disable_examples_and_tests.patch50
-rw-r--r--dev-cpp/xsd/files/xsd-4.0.0-fix-expat-support.patch59
-rw-r--r--dev-cpp/xsd/files/xsd-4.0.0-fix-include.patch11
-rw-r--r--dev-cpp/xsd/files/xsd-4.0.0-xsdcxx-rename.patch159
-rw-r--r--dev-cpp/xsd/metadata.xml11
-rw-r--r--dev-cpp/xsd/xsd-4.0.0.ebuild150
-rw-r--r--dev-cpp/yaml-cpp/Manifest7
-rw-r--r--dev-cpp/yaml-cpp/files/yaml-cpp-0.5.3-gcc6.patch44
-rw-r--r--dev-cpp/yaml-cpp/metadata.xml11
-rw-r--r--dev-cpp/yaml-cpp/yaml-cpp-0.5.3-r1.ebuild37
-rw-r--r--dev-cpp/yaml-cpp/yaml-cpp-0.5.3.ebuild37
282 files changed, 10797 insertions, 0 deletions
diff --git a/dev-cpp/ETL/ETL-0.04.15.ebuild b/dev-cpp/ETL/ETL-0.04.15.ebuild
new file mode 100644
index 000000000000..99c1e28128c7
--- /dev/null
+++ b/dev-cpp/ETL/ETL-0.04.15.ebuild
@@ -0,0 +1,26 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit autotools
+
+DESCRIPTION="ETL is a multi-platform class and template library"
+HOMEPAGE="http://synfig.org"
+SRC_URI="mirror://sourceforge/synfig/${PN}/${PV}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ sed -i -e 's/CXXFLAGS="`echo $CXXFLAGS | sed s:-g::` $debug_flags"//' \
+ -e 's/CFLAGS="`echo $CFLAGS | sed s:-g::` $debug_flags"//' \
+ m4/subs.m4
+
+ eautoreconf
+}
diff --git a/dev-cpp/ETL/Manifest b/dev-cpp/ETL/Manifest
new file mode 100644
index 000000000000..33f11b1e5b00
--- /dev/null
+++ b/dev-cpp/ETL/Manifest
@@ -0,0 +1,5 @@
+DIST ETL-0.04.15.tar.gz 362312 SHA256 8010f71d585fe8543738d129e0beef7aa0bc431e046d48a33409e6b701aba916 SHA512 647d03f5660703a326357b0f1bb969c1e00f94c51ae72cf036f6618df1e44c6e379244a1a827b4d3c9545455efd81ff1d97254ee159e0f578f544ab856341e6f WHIRLPOOL 110ca2b6f5a29a74ad3d379843fba28fc85eee87035fc29dc4394216efb9cf7845ef65242eb0b6abaca8cdc91aed006bd4513914eec15522f688566ce6363274
+EBUILD ETL-0.04.15.ebuild 568 SHA256 dd8b701ec7d13adb1e5e124850fcf19054c8e8107db8a2b55dbe3fdf8add4fe1 SHA512 923fce80b76bd43033096b887ffd39591d79c2cba6dbf8b1e3789a59559271865c6d3675e4620b28a296af83094cf134674af1b95153d246983a181626332b18 WHIRLPOOL c18138b1f67f62f895232356d9aa5856ed739c099a59cfe52fa01e399d0f158f88284c1002f9ce74edea55536441f356d96b75edf895781634e18cca97973764
+MISC ChangeLog 2167 SHA256 0ba612c0bad4b1aa734ee69c13c955eda48532351771f5233736935ee3854bf4 SHA512 448e35a20c31b7571cbd7487428a005114ebb566023f624b4c2ff7642403d5dc9fd8a2d4c15bc69f325ade24b715a7adf525f094b1855929b6af222bf9045a80 WHIRLPOOL 0f5273950a455121acaa1b867788b9e4743c471f92a5e5dee483650e1ce2a9ae4cfa8b425e976f9b1c2cf0ddfee0fb950e00748ebbfd0fb83eebf3d4f2d9f282
+MISC ChangeLog-2015 588 SHA256 44b133ac3ffe2c869bd61dc59b95b5e26b59b68a8e1c376512c2d500a5b85621 SHA512 bb55f8bccf14dbf1f9e7ab14bd87ac89014f5c9ac2e955f8cb3c7055242eec97e81fb67fe3414df2ab930e2125ebafdc98883824d96bfc8bde1dc8018108055f WHIRLPOOL 05bcbc8652f0960c5937b48a2991c30f3b669d31a1cea5ad28770c47c1039b3193eed28c0d50dc99552a29648dd9dd90136329fd2aa73e2711ab81f9375fb63d
+MISC metadata.xml 322 SHA256 c2073fd5efde117600a8e08c7e382784646c957bfeb62f01d7a8d368569c7be3 SHA512 eca4baf7aa303177e49b50b3697edeaec633add9a42adac767ee63a804141d15f07f86bca3d94e13bf6330a6e461ac614c254fbfebdfff86d9aef957443834b6 WHIRLPOOL dc1b2922dbfc37b92f61f8ced8c8b4167cbc54b0c0a9cd95a358c623c812aa363054041b6a2450cdb4d89f0dac2b13f356d92c4f7e43a431c30061a66c9ea3f4
diff --git a/dev-cpp/ETL/metadata.xml b/dev-cpp/ETL/metadata.xml
new file mode 100644
index 000000000000..b3066d7e8273
--- /dev/null
+++ b/dev-cpp/ETL/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>lu_zero@gentoo.org</email>
+ <name>Luca Barbato</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">synfig</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/antlr-cpp/Manifest b/dev-cpp/antlr-cpp/Manifest
new file mode 100644
index 000000000000..6af7ff148bc5
--- /dev/null
+++ b/dev-cpp/antlr-cpp/Manifest
@@ -0,0 +1,10 @@
+AUX 2.7.7-gcc.patch 402 SHA256 0f4fd388d1275dbd5b9e5df1f4814bad1a21d7f9efea844b02248db00acdb5f8 SHA512 c94a8fcdce09f5a7cb32c2594728954775812a5eb2487aebe4f1e9203e5db75e391a2214fdb173f33f8616ac5b666e2d4653bc00a3a98b09005333ed2a3b27fd WHIRLPOOL 1b7ab5a84d974752d48a88212f6bdb1d84335516d73b97c5d4fc5674907c11ea4c7a8eccb86f40a9c084bec9b9e01783f8feab92c9e0bc018897b3d53e1ba63f
+AUX 2.7.7-libtool.patch 621 SHA256 142c7a38900a89580a9485508c885b0268acf503d283f3af6f6c2d3333fb9c4e SHA512 3f1d68eff40fac13a4f482724456cb8ed801feff71a254871368f22ab98024431c718f3fb35f13da4183bdebe62ece26908a341fe1a945118bf0d78f5d8ea622 WHIRLPOOL a94319f02231a50a2ab827fb2ca68076288655cb6e636e6cc703ad9abddcc63ea2abdde567698946929983e65b83218de05fd2f3e05f087201b705766c7e5901
+DIST antlr-2.7.7.tar.gz 1816180 SHA256 853aeb021aef7586bda29e74a6b03006bcb565a755c86b66032d8ec31b67dbb9 SHA512 faa72d2ddcba434ef1233e70c1549e63eba67c00793966322e821cf7f015cccb804448cb92d8fbef0429f59928fad65ec954f8ffbda0acbb8e983de0806d349d WHIRLPOOL def5ac0ddfe5a65f9f7d5489d039048c5d630b46cd5626593bd12e9b393d5ec26884f90b013bcdf58511e26abbf06e0d7b3789a11298b017f7e70af2ec8dde4a
+DIST antlr-cpp-3.5.2.tar.gz 6927126 SHA256 529baf7d11f06b773543e25271c1a6e1735d2f8061f4866d1ea5c99a5d71ee1f SHA512 e2a0520093fb2a77dcd9d44f26a9fdd612dceaffb398c53b2b8cd29f4630830647ede29e8dd55b434cb2c165b0fd1d77968ec6e6de0798f14d9cdfd9e6fccd99 WHIRLPOOL a3a2bf81cc91a332725a4ce15dcccf10df5395b27a521656b1f3e80fed10197edc132fa2a8b9a259b2ee603320492b4b1f664692a967fdfdbb574d919b9aa20e
+EBUILD antlr-cpp-2.7.7-r1.ebuild 2808 SHA256 ee0218b1641a1d085ac934a67c1cafe0c12c1644c0313934521030cf694b98a6 SHA512 7fe1f19bdf361adf562f6387df2d66503f6d4c7dbf5bb4d91a029843dc86435dec9ffc1e3ad241c910107fda99d6b0b3591d3dfafd83959e56a5b4f5d7d0f1f2 WHIRLPOOL 3d2f6a150527dde9cbab184bf522dec2b881e37a0999cc905bdcfbae274c479b88d2ee6b07d5459117266d2de015d02ad47ef580b7d142cf68f028dded04eb79
+EBUILD antlr-cpp-2.7.7.ebuild 2776 SHA256 7117fb3a7c98609300d024c62e7ee7ede37c0db49f17ea501b49d1c26c30ac37 SHA512 e293605b61353aa5e1cbd6b8be82e1fbb2e19fd10fbce2f791129109c70a9ae97e94438494137fbf5fd59bc3bf51686fc56524a8f37f0cf765d11a49a763c478 WHIRLPOOL ec438cb20548097a4999e2a2c013edd2efc6abc6bd27f88da4d3a6ed43ccc85acaa4c77bccbf4a4f660afeb3ddbfbbff8bdb286fddd843653b097a921289ca8d
+EBUILD antlr-cpp-3.5.2-r1.ebuild 451 SHA256 2fb53d03584f33d9c2da8248f8d3ed5d28e38ebabcf4247b1e3c5a4214c4ad96 SHA512 898f7805e7f2c0d13181a820d8d201f0549da336163cf54f4a214e6360af51a53f75db8eba896eb2403f3a5e6ad752eae469afce8316d3150e566488e006f45c WHIRLPOOL 681c3930cafe7cef36550703bcbb991af01f57517e19d53d9155a01286ec72a07957e26042c58436b4fecf65f31b83e146fc55d1f836f0dc98e40a7c611cb248
+EBUILD antlr-cpp-3.5.2.ebuild 511 SHA256 fc1680593c938087b7e60986fd2251cab8db0412e0eab0dc06b0e7e35df13294 SHA512 08791f15c70c62ff06925c1ac783a141b7ecbf15a80c58837af23ed8cae90e6dcdf7f3471c1ad72e6a394082f9257419153a8e56e9c05d5b8961cf40014389fa WHIRLPOOL adb1b038bd77990c0db752e7b4bb432cab79dac700c4ac41ca30a8986567f709cc6f38948a68f2f2bedd47e36183a39a54aba841dc5fcb956031bbe3f04e2950
+MISC ChangeLog 2746 SHA256 3aee4bca0e92a7903b1dbb84ebf8772956688cb4deefc4487983dc131a98dfcc SHA512 6b62c11736426b6b8b15a1070abb97346145574fe94484ca3ad1db08b11e335228217a0d01872dbad157bd5e00cef2c9fe8ce4b827e9507a114b991501fef09a WHIRLPOOL a852fb203e4544379195488ed4362c65347ec40739d5b06d622c1a0f52288c6f50f34dee452ac03f09e79c68f70fbbfb2adf7748258c66d62a0556c3937a9855
+MISC metadata.xml 313 SHA256 0549c3c0a4bf58c9b1579523bf62d51f204d465b6c3dac938e7b63c79d084294 SHA512 39988a3826d440aa378b455d18ce23230ba1870bf7b7c64123cfdd09c54b112e8586c87d421a2227370c6b4eae385af46ce3a9e4aab3c676fdfdac360fed8265 WHIRLPOOL a756a94f70a7e29f38a5eb23fe1485dcb1917e42ee38df0711da14c0e8e5dbcb30d2ae13604a0bb2897ccdac55894345d2c6d169c0b7aa37c61dc947adf404e7
diff --git a/dev-cpp/antlr-cpp/antlr-cpp-2.7.7-r1.ebuild b/dev-cpp/antlr-cpp/antlr-cpp-2.7.7-r1.ebuild
new file mode 100644
index 000000000000..576b9c51d9d0
--- /dev/null
+++ b/dev-cpp/antlr-cpp/antlr-cpp-2.7.7-r1.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+# Upstream only installs a static library. The original antlr ebuild
+# built a shared library manually, which isn't so great either. This
+# ebuild applies libtool instead and therefore an autoreconf is
+# required. A couple of errors concerning tr have been seen but the
+# final result still looks good. This also sidesteps bug #554344 plus
+# the need to call einstall.
+
+inherit autotools multilib-minimal
+
+MY_P="${PN%-cpp}-${PV}"
+DESCRIPTION="The ANTLR 2 C++ Runtime"
+HOMEPAGE="http://www.antlr2.org/"
+SRC_URI="http://www.antlr2.org/download/${MY_P}.tar.gz"
+LICENSE="public-domain"
+SLOT="2"
+KEYWORDS="~amd64 ~arm ~ppc ~x86"
+IUSE="doc examples static-libs"
+RESTRICT="test" # No tests but test target blows up!
+
+DEPEND="doc? ( app-doc/doxygen )"
+RDEPEND="!dev-java/antlr:0[cxx]"
+
+S="${WORKDIR}/${MY_P}"
+ECONF_SOURCE="${S}"
+PATCHES=( "${FILESDIR}"/${PV}-{gcc,libtool}.patch )
+DOCS=( lib/cpp/AUTHORS lib/cpp/ChangeLog lib/cpp/README lib/cpp/TODO )
+
+src_prepare() {
+ # Turn Makefile.in files into libtool-style Makefile.am
+ # files. Countable.hpp is actually missing.
+ local HPP=$(grep -E -o "\w+\.hpp" lib/cpp/antlr/Makefile.in | grep -v "Countable\.hpp" | tr "\n" " " || die)
+ local CPP=$(grep -E -o "\w+\.cpp" lib/cpp/src/Makefile.in | tr "\n" " " || die)
+
+ cat <<EOF > lib/cpp/antlr/Makefile.am || die
+antlr_includedir = \$(includedir)/antlr
+antlr_include_HEADERS = ${HPP}
+EOF
+
+ cat <<EOF > lib/cpp/src/Makefile.am || die
+AM_CPPFLAGS = -I\$(abs_top_srcdir)/lib/cpp
+lib_LTLIBRARIES = libantlr.la
+libantlr_la_LDFLAGS = -version-info 2
+libantlr_la_SOURCES = ${CPP}
+EOF
+
+ default
+
+ mv -v configure.in configure.ac || die
+ mv -v aclocal.m4 acinclude.m4 || die
+
+ # These silly test -z lines break badly under recent autoconfs.
+ sed -i '/AC_PATH_PROG/s/test -z "\$[^"]*" *&& *//' configure.ac || die
+
+ # Delete build files from examples.
+ find examples -name Makefile.in -delete || die
+
+ # Fix make invocations. See bug #256880.
+ find -name "*.in" -exec sed -i 's/@MAKE@/$(MAKE)/g' {} + || die
+
+ eautoreconf
+}
+
+multilib_src_configure() {
+ CONFIG_SHELL="${BASH}" econf \
+ --disable-csharp \
+ --enable-cxx \
+ --disable-examples \
+ --disable-java \
+ --disable-python \
+ --enable-shared \
+ --enable-verbose \
+ $(use_enable static-libs static)
+}
+
+src_compile() {
+ multilib-minimal_src_compile
+
+ if use doc; then
+ cd "${S}/lib/cpp" || die
+ doxygen -u doxygen.cfg || die
+ doxygen doxygen.cfg || die
+ fi
+}
+
+multilib_src_install() {
+ # We only care about the C++ stuff.
+ emake -C lib/cpp install DESTDIR="${D}"
+}
+
+src_install() {
+ multilib-minimal_src_install
+
+ cd "${S}" || die
+ use doc && dohtml -r lib/cpp/gen_doc/html/
+
+ if use examples; then
+ docinto examples
+ dodoc -r examples/cpp/*
+ fi
+}
diff --git a/dev-cpp/antlr-cpp/antlr-cpp-2.7.7.ebuild b/dev-cpp/antlr-cpp/antlr-cpp-2.7.7.ebuild
new file mode 100644
index 000000000000..38f0da795403
--- /dev/null
+++ b/dev-cpp/antlr-cpp/antlr-cpp-2.7.7.ebuild
@@ -0,0 +1,105 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+# Upstream only installs a static library. The original antlr ebuild
+# built a shared library manually, which isn't so great either. This
+# ebuild applies libtool instead and therefore an autoreconf is
+# required. A couple of errors concerning tr have been seen but the
+# final result still looks good. This also sidesteps bug #554344 plus
+# the need to call einstall.
+AUTOTOOLS_AUTORECONF=1
+
+inherit eutils autotools-multilib
+
+MY_P="${PN%-cpp}-${PV}"
+DESCRIPTION="The ANTLR 2 C++ Runtime"
+HOMEPAGE="http://www.antlr2.org/"
+SRC_URI="http://www.antlr2.org/download/${MY_P}.tar.gz"
+LICENSE="public-domain"
+SLOT="2"
+KEYWORDS="amd64 ~arm ppc x86"
+IUSE="doc examples static-libs"
+RESTRICT="test" # No tests but test target blows up!
+
+DEPEND="doc? ( app-doc/doxygen )"
+RDEPEND="!dev-java/antlr:0[cxx]"
+
+S="${WORKDIR}/${MY_P}"
+DOCS=( lib/cpp/AUTHORS lib/cpp/ChangeLog lib/cpp/README lib/cpp/TODO )
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PV}-{gcc,libtool}.patch
+
+ mv -v configure.in configure.ac || die
+ mv -v aclocal.m4 acinclude.m4 || die
+
+ # These silly test -z lines break badly under recent autoconfs.
+ sed -i '/AC_PATH_PROG/s/test -z "\$[^"]*" *&& *//' configure.ac || die
+
+ # Delete build files from examples.
+ find examples -name Makefile.in -delete || die
+
+ # Fix make invocations. See bug #256880.
+ find -name "*.in" -exec sed -i 's/@MAKE@/$(MAKE)/g' {} + || die
+
+ # Turn Makefile.in files into libtool-style Makefile.am
+ # files. Countable.hpp is actually missing.
+ local HPP=$(grep -E -o "\w+\.hpp" lib/cpp/antlr/Makefile.in | grep -v "Countable\.hpp" | tr "\n" " " || die)
+ local CPP=$(grep -E -o "\w+\.cpp" lib/cpp/src/Makefile.in | tr "\n" " " || die)
+
+ cat <<EOF > lib/cpp/antlr/Makefile.am || die
+antlr_includedir = \$(includedir)/antlr
+antlr_include_HEADERS = ${HPP}
+EOF
+
+ cat <<EOF > lib/cpp/src/Makefile.am || die
+AM_CPPFLAGS = -I\$(abs_top_srcdir)/lib/cpp
+lib_LTLIBRARIES = libantlr.la
+libantlr_la_LDFLAGS = -version-info 2
+libantlr_la_SOURCES = ${CPP}
+EOF
+
+ autotools-multilib_src_prepare
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ --disable-csharp
+ --enable-cxx
+ --disable-examples
+ --disable-java
+ --disable-python
+ --enable-verbose
+ )
+
+ autotools-utils_src_configure
+}
+
+src_compile() {
+ autotools-multilib_src_compile
+
+ if use doc; then
+ cd "${S}/lib/cpp" || die
+ doxygen -u doxygen.cfg || die
+ doxygen doxygen.cfg || die
+ fi
+}
+
+multilib_src_install() {
+ # We only care about the C++ stuff.
+ emake -C lib/cpp install DESTDIR="${D}"
+}
+
+src_install() {
+ autotools-multilib_src_install
+
+ cd "${S}" || die
+ use doc && dohtml -r lib/cpp/gen_doc/html/
+
+ if use examples; then
+ docinto examples
+ dodoc -r examples/cpp/*
+ fi
+}
diff --git a/dev-cpp/antlr-cpp/antlr-cpp-3.5.2-r1.ebuild b/dev-cpp/antlr-cpp/antlr-cpp-3.5.2-r1.ebuild
new file mode 100644
index 000000000000..b054cde396b4
--- /dev/null
+++ b/dev-cpp/antlr-cpp/antlr-cpp-3.5.2-r1.ebuild
@@ -0,0 +1,19 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+EAPI=6
+
+MY_PN="${PN%-cpp}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="The ANTLR 3 C++ Runtime"
+HOMEPAGE="http://www.antlr3.org/"
+SRC_URI="https://github.com/${MY_PN}/${MY_PN}3/archive/${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="BSD"
+SLOT="3.5"
+KEYWORDS="~amd64 ~x86"
+
+S="${WORKDIR}/${MY_PN}3-${PV}"
+
+src_install() {
+ doheader "${S}"/runtime/Cpp/include/*
+}
diff --git a/dev-cpp/antlr-cpp/antlr-cpp-3.5.2.ebuild b/dev-cpp/antlr-cpp/antlr-cpp-3.5.2.ebuild
new file mode 100644
index 000000000000..17febffa40d9
--- /dev/null
+++ b/dev-cpp/antlr-cpp/antlr-cpp-3.5.2.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+EAPI=6
+
+MY_PN="${PN%-cpp}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="The ANTLR 3 C++ Runtime"
+HOMEPAGE="http://www.antlr3.org/"
+SRC_URI="https://github.com/${MY_PN}/${MY_PN}3/archive/${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="BSD"
+SLOT="3.5"
+KEYWORDS="~amd64 ~x86"
+
+S="${WORKDIR}/${MY_PN}3-${PV}"
+
+RDEPEND="!dev-java/antlr:0[cxx]"
+
+src_install() {
+ insinto /usr/include/antlr3
+ doins "${S}"/runtime/Cpp/include/*
+}
diff --git a/dev-cpp/antlr-cpp/files/2.7.7-gcc.patch b/dev-cpp/antlr-cpp/files/2.7.7-gcc.patch
new file mode 100644
index 000000000000..c67d5b6dfcf9
--- /dev/null
+++ b/dev-cpp/antlr-cpp/files/2.7.7-gcc.patch
@@ -0,0 +1,12 @@
+diff -Naur antlr-2.7.7.orig/lib/cpp/antlr/CharScanner.hpp antlr-2.7.7/lib/cpp/antlr/CharScanner.hpp
+--- antlr-2.7.7.orig/lib/cpp/antlr/CharScanner.hpp 2006-11-01 21:37:17.000000000 +0000
++++ antlr-2.7.7/lib/cpp/antlr/CharScanner.hpp 2015-10-06 23:01:53.083655950 +0100
+@@ -10,6 +10,8 @@
+
+ #include <antlr/config.hpp>
+
++#include <cstdio>
++#include <cstring>
+ #include <map>
+
+ #ifdef HAS_NOT_CCTYPE_H
diff --git a/dev-cpp/antlr-cpp/files/2.7.7-libtool.patch b/dev-cpp/antlr-cpp/files/2.7.7-libtool.patch
new file mode 100644
index 000000000000..ea5e809f473f
--- /dev/null
+++ b/dev-cpp/antlr-cpp/files/2.7.7-libtool.patch
@@ -0,0 +1,21 @@
+diff -Naur antlr-2.7.7.orig/configure.in antlr-2.7.7/configure.in
+--- antlr-2.7.7.orig/configure.in 2006-11-01 21:37:18.000000000 +0000
++++ antlr-2.7.7/configure.in 2015-10-11 13:49:09.166308712 +0100
+@@ -13,6 +13,9 @@
+ AC_CONFIG_SRCDIR([LICENSE.txt])
+ AC_CONFIG_AUX_DIR(scripts)
+
++LT_INIT
++AM_INIT_AUTOMAKE
++
+ ## This shall be the very first config file. Do not change
+ ## this.
+ AC_CONFIG_FILES([scripts/config.vars])
+@@ -841,7 +844,6 @@
+ AC_PROG_RANLIB
+
+ test -z "$MKDIR" && AC_PATH_PROG(MKDIR, mkdir$EXEEXT, mkdir$EXEEXT )
+-test -z "$RM" && AC_PATH_PROG(RM, rm$EXEEXT, rm$EXEEXT )
+
+ AX_PATH_PROGS(
+ [TAR],
diff --git a/dev-cpp/antlr-cpp/metadata.xml b/dev-cpp/antlr-cpp/metadata.xml
new file mode 100644
index 000000000000..38b353fb46ac
--- /dev/null
+++ b/dev-cpp/antlr-cpp/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>java@gentoo.org</email>
+ <name>Java</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">antlr/antlr3</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/asio/Manifest b/dev-cpp/asio/Manifest
new file mode 100644
index 000000000000..e06c243f6dda
--- /dev/null
+++ b/dev-cpp/asio/Manifest
@@ -0,0 +1,5 @@
+DIST asio-1.10.8.tar.bz2 1270332 SHA256 26deedaebbed062141786db8cfce54e77f06588374d08cccf11c02de1da1ed49 SHA512 d870686d2b19bec9925c311f2f0fd370e9797bbad252176a80a998f9c322ecd502b5081826105712e7caf87c03c3e6b70a0e219019e5bff46077d6e8c3c6db09 WHIRLPOOL e2bcd440741be69a049265a5e2b5ef1d539366e5ce820a91746ff9b5c3e4336acd8b355befa7b7fafee4316d48b725706c34903faf87591690e45665e829a7c1
+EBUILD asio-1.10.8.ebuild 895 SHA256 92de613e97a174664859369b335946da2bb1bdca528a02d89e6551a1dcd8219a SHA512 648aa85f02271260fdc7c1ba7d6093c5dba3a172e4585d7d8f8e70dedc111d2bbd57093ebb3e8fc2a85008e5981b17a1861e356efd6102689bdc17f015e75e5a WHIRLPOOL 9b652727eda8da4c08beff2db9bbb6c016d6750f2f9031ad1a0947dfa2a54d22af123dabddf8abe1f24e53497ccdbcefe034fdbb77c1c018d1504b393c8181af
+MISC ChangeLog 3886 SHA256 3ef38338de71ed5726920ec539fa89f250c75d95a04086c22c32e5a45dde7623 SHA512 0661136527593ee0e78d610c76601bc6ed292701f7dc95887ccd1ab1541afa14ade0390aa6df7aa4b5da367abeb6e1fec86eebc88d922a3835c9e7f0cee0e579 WHIRLPOOL 16fc1c319930b85c1af2a96fdc0bf3d3a7c50db61bf002441ec225ead932fb13b34087041257905090c7967e88f5fc7af70a025420b015a45cb1ae84d22eb4f1
+MISC ChangeLog-2015 4448 SHA256 2426c4650bea0237e91b07dda9e5840b561d405f1e42ebfa4c1ab46b64eb368d SHA512 18c7ab547c4dc29079cb28ad8966d14add8efcda7d8e61cb2bffd2badd8404fe84640e80e18109cc34218b51e339f3394f11b220a8f7fe0366d8be2d1469fea2 WHIRLPOOL 7d0cb891cf04365b0d712a26cd5b1ef784d876f40d4513e0c7e94e6c6d2d3d835498950946a73092c5f4135c1cfcc7e39bc9c658f8d6126e4ebf3a9225142bf0
+MISC metadata.xml 323 SHA256 527135a0633833419bdf89ae64d5f0a019b516ca38237e2086244857c0f13280 SHA512 e0633d245fa2f07cca452fca7937a2fbb64b977cae0c291abb52b0a9cc3af1e84fbad6f15135baa9835648959efa4fb68cdb3ec612efcfe856da485658f55595 WHIRLPOOL cabf21e61b60ec7ac4cf1b0d2b14cb297a050b26c2a46fe566c10d291e20881658e8b777f9bc5bc00e5290cf056e31813c04f01c98409c0c25a68fb4f554d7c9
diff --git a/dev-cpp/asio/asio-1.10.8.ebuild b/dev-cpp/asio/asio-1.10.8.ebuild
new file mode 100644
index 000000000000..6510f168fcde
--- /dev/null
+++ b/dev-cpp/asio/asio-1.10.8.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DESCRIPTION="Asynchronous Network Library"
+HOMEPAGE="http://asio.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${PN}/${P}.tar.bz2"
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS="alpha amd64 ~arm ~arm64 ~hppa ia64 ppc ppc64 sparc x86"
+IUSE="doc examples ssl test"
+
+RDEPEND="dev-libs/boost
+ ssl? ( dev-libs/openssl:0= )"
+DEPEND="${RDEPEND}"
+
+src_prepare() {
+ default
+
+ if ! use test; then
+ # Don't build nor install any examples or unittests
+ # since we don't have a script to run them
+ cat > src/Makefile.in <<-EOF || die
+ all:
+
+ install:
+
+ clean:
+ EOF
+ fi
+}
+
+src_install() {
+ use doc && local HTML_DOCS=( doc/. )
+ default
+
+ if use examples; then
+ # Get rid of the object files
+ emake clean
+ dodoc -r src/examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/dev-cpp/asio/metadata.xml b/dev-cpp/asio/metadata.xml
new file mode 100644
index 000000000000..73002f23cba4
--- /dev/null
+++ b/dev-cpp/asio/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">asio</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/atkmm/Manifest b/dev-cpp/atkmm/Manifest
new file mode 100644
index 000000000000..5baa19161b63
--- /dev/null
+++ b/dev-cpp/atkmm/Manifest
@@ -0,0 +1,5 @@
+DIST atkmm-2.24.2.tar.xz 849784 SHA256 ff95385759e2af23828d4056356f25376cfabc41e690ac1df055371537e458bd SHA512 427714cdf3b10e3f9bc36df09c4b05608d295f5895fb1e079b9bd84afdf7bf1cfdec6794ced7f1e35bd430b76f87792df4ee63c515071a2ea6e3e51e672cdbe2 WHIRLPOOL 7f2c8a1378ce43c4eb377ba288f0fb95698ff11601f063959af43f9925da83be1f57ccf019c8fc17c746f20a0ded7d40708aea8324cde7d3bcbe535adca388bc
+EBUILD atkmm-2.24.2.ebuild 852 SHA256 12a7af36b77b251442f60a30a484864cf1e3f6ef85cfdb9b7477dd11f2d6b4a5 SHA512 17fcb05ffaf5b624a7157b7e08c918818785a05c99a9c8cb76a5128e68d53d197c517a9f93309f17e98562536207c558bb5c72f7cc5984b202bb9dd5e98601db WHIRLPOOL df78f090012ee2de6868b9bc67fbc214672396b17999932c4f0d3acdba132851e1f444777a908f238189ff817cc87b4a32012b26feb3f617d65f2859473589a4
+MISC ChangeLog 3886 SHA256 ae61675404ee5c1b52c94980fb890113664688beb7f376634392e892c06fa92a SHA512 3504d4655895bd56bfa5948e76c44bdba160c707b9150dd54ade147b199a3d4569259fc9d17496f187528b042bcc0a1e16e9780abebe2d99cac3d5e139986918 WHIRLPOOL 38702f78b1b4ac53fb03e223032f5f96ddfd79904b4cad294c00fdd1961e063bd343a2d074bf374101b259b5f694f7f4a9865e3c2db42253a44ce3c52f93dd08
+MISC ChangeLog-2015 6599 SHA256 0f20b14b910854b2ce87829dd284806b535ba03d012798d189bdedfbef2d6d75 SHA512 6cf83d0076c17425feff7c72e02d2d5ddeeabb6197cf5262aef65a264334b3968194b710b96b5cf8d016e8e5a97350db97b56866e03e8fd53c2f1c8f85a87177 WHIRLPOOL e33b76ab53beb5c03db5777600c68b09f3350484d10d85fba5481442a64a3797ad560895c87eef7c5ba4d8e398d21f4656518cc2b0b4a255267b5c02a72c62da
+MISC metadata.xml 249 SHA256 4505b0bfeadff287958620b7dc7b7209699065a8f17139a237a5dd409a726a97 SHA512 c40662134899a5c9f0369a1017806f35adf3280a0b3c91726f7a8ca6012a073a8b471583f5bfb6fe95faac1dcf607e8e2e43f8c91d48ec46f4a8824e2f551506 WHIRLPOOL 333a938ee1d2124595596c572697bf5ebad523a92ba12005cfb12e6bb6270881a94a911f0cc9c1cf2bb571559e8271e07dfd307dabe50058236dbe7103562b92
diff --git a/dev-cpp/atkmm/atkmm-2.24.2.ebuild b/dev-cpp/atkmm/atkmm-2.24.2.ebuild
new file mode 100644
index 000000000000..476255eef9f5
--- /dev/null
+++ b/dev-cpp/atkmm/atkmm-2.24.2.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+GCONF_DEBUG="no"
+
+inherit gnome2 multilib-minimal
+
+DESCRIPTION="C++ interface for the ATK library"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1+"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
+IUSE="doc"
+
+COMMON_DEPEND="
+ >=dev-cpp/glibmm-2.46.2:2[doc?,${MULTILIB_USEDEP}]
+ >=dev-libs/atk-2.18.0[${MULTILIB_USEDEP}]
+ >=dev-libs/libsigc++-2.3.2:2[${MULTILIB_USEDEP}]
+"
+RDEPEND="${COMMON_DEPEND}
+ !<dev-cpp/gtkmm-2.22.0
+"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+"
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" gnome2_src_configure \
+ $(multilib_native_use_enable doc documentation)
+}
+
+multilib_src_install() {
+ gnome2_src_install
+}
diff --git a/dev-cpp/atkmm/metadata.xml b/dev-cpp/atkmm/metadata.xml
new file mode 100644
index 000000000000..39980802b1da
--- /dev/null
+++ b/dev-cpp/atkmm/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/cairomm/Manifest b/dev-cpp/cairomm/Manifest
new file mode 100644
index 000000000000..5b7740325e2b
--- /dev/null
+++ b/dev-cpp/cairomm/Manifest
@@ -0,0 +1,5 @@
+DIST cairomm-1.12.0.tar.xz 789588 SHA256 a54ada8394a86182525c0762e6f50db6b9212a2109280d13ec6a0b29bfd1afe6 SHA512 750e05f079c2ee9786d1a1ddb66ff90405549a82aeb542d585f904f7147994a451950a77ecb563f290cf2358f7010360ab03d9aa3a319651615c48bd25aeb7e8 WHIRLPOOL 757c93d5a607b50452ee590a13907522615a032cc3b4b284f9bb465183b7edd0fe16ba4f528b7c49d3c17892e194d4719f6d22e78824e22cc0c2d9a6e80f66fb
+EBUILD cairomm-1.12.0-r1.ebuild 1246 SHA256 26aabb4f505d6d90913c6ddd4fa4e336d7965f6c90f0f0c5c75140cedf4076ba SHA512 3355f9a40f6b3a3549008c648c5e94af2124925baada409984c918aa4acffe1b6c6dfec333d7376c735c18fb8ea2bdff0c004d35a176f7a9f792c1f245042edc WHIRLPOOL aab9bb53ebe141c7da4f56a75721e4ad66fe75da37d2dba230a198d3fd94aae159d2af42ec81e66a24d1364d05c2d58e99b30dd997cd2914d8e79fb4fb591077
+MISC ChangeLog 4324 SHA256 8baea64ea6d25c74a547ba34238f4b78434f2805900a6f068a3849c8b3d49274 SHA512 7e6dc0d7b625ebdd9770a4329bb84c83507dd5da58cc58630cc05a8fdf26d613a0714ac4381e137b63ebb13beb3f1d7b28fba3d0d852a40d05015159d2f6011c WHIRLPOOL 5c17ba6fc78692993f499a305053cc8d195b4c7258b89467c2974a8f411bd647e849d9fa902a9ff6db6bc0619729dd45a4c5b0763db1a62db38e3cc1c913bf5b
+MISC ChangeLog-2015 8853 SHA256 c91f740795e8dbb21c9f3b7a11afaf93923580b21ab7d5fee45f54b7515b7827 SHA512 3216d9c045024ce1de343dbe01a19ca9b0ed23d992c4f6e0921e1d0115764b9ba9b3a5cfbe2fafc0e66a2724816476b08c116c03c5d2442ea8bf741182cc359f WHIRLPOOL a6d54eceec4aad0f7fbfe9132f0d1dd92289ab4c611fbb1b0588f9e33aa265b823acb05d4c6b4c733a31f6761a39c1354d0fd896e1316472d1b22ef749fc6b4f
+MISC metadata.xml 249 SHA256 4505b0bfeadff287958620b7dc7b7209699065a8f17139a237a5dd409a726a97 SHA512 c40662134899a5c9f0369a1017806f35adf3280a0b3c91726f7a8ca6012a073a8b471583f5bfb6fe95faac1dcf607e8e2e43f8c91d48ec46f4a8824e2f551506 WHIRLPOOL 333a938ee1d2124595596c572697bf5ebad523a92ba12005cfb12e6bb6270881a94a911f0cc9c1cf2bb571559e8271e07dfd307dabe50058236dbe7103562b92
diff --git a/dev-cpp/cairomm/cairomm-1.12.0-r1.ebuild b/dev-cpp/cairomm/cairomm-1.12.0-r1.ebuild
new file mode 100644
index 000000000000..f5493ca50bac
--- /dev/null
+++ b/dev-cpp/cairomm/cairomm-1.12.0-r1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+GCONF_DEBUG="no"
+
+inherit gnome2 multilib-minimal
+
+DESCRIPTION="C++ bindings for the Cairo vector graphics library"
+HOMEPAGE="http://cairographics.org/cairomm"
+
+LICENSE="LGPL-2+"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~x86-solaris"
+IUSE="aqua doc +svg X"
+
+RDEPEND="
+ >=x11-libs/cairo-1.12.10[aqua=,svg=,X=,${MULTILIB_USEDEP}]
+ >=dev-libs/libsigc++-2.5.1:2[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? (
+ app-doc/doxygen
+ dev-libs/libxslt
+ media-gfx/graphviz )
+"
+
+src_prepare() {
+ # don't waste time building examples because they are marked as "noinst"
+ sed -i 's/^\(SUBDIRS =.*\)examples\(.*\)$/\1\2/' Makefile.in || die
+
+ # don't waste time building tests
+ # they require the boost Unit Testing framework, that's not in base boost
+ sed -i 's/^\(SUBDIRS =.*\)tests\(.*\)$/\1\2/' Makefile.in || die
+
+ gnome2_src_prepare
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" gnome2_src_configure \
+ --disable-tests \
+ $(multilib_native_use_enable doc documentation)
+}
+
+multilib_src_install() {
+ gnome2_src_install
+}
diff --git a/dev-cpp/cairomm/metadata.xml b/dev-cpp/cairomm/metadata.xml
new file mode 100644
index 000000000000..39980802b1da
--- /dev/null
+++ b/dev-cpp/cairomm/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/catch/Manifest b/dev-cpp/catch/Manifest
new file mode 100644
index 000000000000..a46225f5c472
--- /dev/null
+++ b/dev-cpp/catch/Manifest
@@ -0,0 +1,10 @@
+DIST Catch-1.10.0.tar.gz 375205 SHA256 cb752cbc8033d7c967d6bd7bc3eed428f6d05f2511945db819d4a18a46853ada SHA512 07ea6c8fbef849000c69009478fc895fe520420d835a57881b832f8181ca28f04030027ab0f8614d590cff1c36d06598bd4f5723f44e252c3a2566da1be1341e WHIRLPOOL 74bc82eecbafa289c3abec540ebc47b0239eaf6224eaf6d408a88871e03338994d361194f6d92b15096f3c2a0672a24af424db5f490923be3638d1ed0f17a355
+DIST Catch-1.9.7.tar.gz 371816 SHA256 751090d755072777c5bb98de6ead1f7919ea239d4b77bb028fb7b06624ec0d7a SHA512 573d324b3e0ffe1026bdd10410a9299eff6d3e0a316b2b84c687dc993fb33570620e26107667ce8b59ab66844cfbc39526ed6ba4e9dd1ba529c6b21ebd274b63 WHIRLPOOL 1d3bcf6b2a3d8af6fba7ded0e92d7381857360a4bbf2dd689474408c52612f874da35579ad0adaf13679e1d8aaddee101274cd29070a5a51d58e7d52b76473f2
+DIST Catch-2.0.0-develop.3.tar.gz 381015 SHA256 c482fd4f0730cb82a05b1fc3eeee1beb599c5ae43c33719f5875cb23fa745b8f SHA512 52e6234379a435e7ddf3ee82a0689120a498f6be3c19dce9bf0a32059caa0a259fbc28c0e4f2e53841636874140970ec8cf7f15818ddfa9a1a5a80bc2922d0f0 WHIRLPOOL 537801b6c8f50a96f4f6a1594d6660a48e01e54ea83646a90e4d5c559f1f6ee6f582023f8d88bd69ad983035e3bacb0257ccaf1167eaa70b2e9302d031c07ded
+EBUILD catch-1.10.0.ebuild 729 SHA256 68040d3e200c318fbac8f3decfefa8b7242a03e022ad6ded2befc6b9c89de704 SHA512 34875c7820d83b27feca0a96e6d3fa80c9f4a671dbd86a68c1ce3dba2c5ee60fe81aaccdaac63a43fbd1d41e7de0a8bc6fd81719378a1e90bdc35ae2891b8053 WHIRLPOOL ace1bd83ffa181b19a5e4762a8ca5a12adde6c68d91ecb8bf378f113cb223521ae9b9bde7cea44be9d99e738c3365b624384ef17e003e7c085829f5fcfa4fe76
+EBUILD catch-1.9.7.ebuild 729 SHA256 68040d3e200c318fbac8f3decfefa8b7242a03e022ad6ded2befc6b9c89de704 SHA512 34875c7820d83b27feca0a96e6d3fa80c9f4a671dbd86a68c1ce3dba2c5ee60fe81aaccdaac63a43fbd1d41e7de0a8bc6fd81719378a1e90bdc35ae2891b8053 WHIRLPOOL ace1bd83ffa181b19a5e4762a8ca5a12adde6c68d91ecb8bf378f113cb223521ae9b9bde7cea44be9d99e738c3365b624384ef17e003e7c085829f5fcfa4fe76
+EBUILD catch-1.9999.ebuild 707 SHA256 e8a81107ea1e93892d478d69ab16f11b5744b6639aaa703c28ebf1e7ad2ea6ba SHA512 6e90857b7e4c85f2cfc7b59aeccdc3c39ea7a40e9ff919cd4ad5d83ec4ddf5051207e36c53221faacf8caa843905c9b8680bf00388815745b3bfeaef25bf7196 WHIRLPOOL 7db5e206662bd85d4286f70e5ac4513c6bd6a1f660e167b7b9cf5f3ba9721f9d76e2daa3fc75c4dda597f2b26a62c0839647d62b6115ad95eaf271e8f6c0147e
+EBUILD catch-2.0.0_pre3.ebuild 785 SHA256 56cae8d69cc102cf9b20700c5674b1bec39b4d33466a3dca93e3c104215c8fcc SHA512 543b30ada2178dd3cca44e9c2d53c4157957bcfdf7cd1c38e56d66ed7445f4df34d692413963007559cc507040792d2dcc1f84c1e3bdd9cf530d792f831c5e14 WHIRLPOOL 8d07e4831ad2036259d616f5b039fbce2ebbb88380a53f6b06a1614e235e926f67039cc4db50b7abbd1175edd5edea16471c25eaa9ec8f4bf5ad6bff0cb7af4a
+EBUILD catch-9999.ebuild 707 SHA256 ed59a7469ee7728d4705386bdb6b5587c3091ac431eb213255a9d6cbcd8d1d21 SHA512 dfc28162810e160a6e28271aa0ca186ab98c6b68ad5c16f8aab04749d2613611bcc5e79ac34e248863115098f2aab86d61f7049b12de516d35034229287155cc WHIRLPOOL 9932111f8e312dc492c989e79b62d5892f43feaa7a9cb0b24e33b48a872ff420991cfca47a6a9be5858525b7d2f659ef8bbef33c3b866b17c1f95fda2f5889b8
+MISC ChangeLog 822 SHA256 6b5973127235800b701c7bf9ef7e49cdf5dc1580bffa84b6a0a3aeb45f927559 SHA512 bc828926c3e652b44d13723cf9ff5013e5e63054d6224258cf750031b9d5b8439289909e5e578b3e112f07d63b899aed36cd4db6b76b29cf6c9ad3b08eafe409 WHIRLPOOL 41257140dcaa6d82495e60d40aeed5be8677341e54c15897d2533cb3902f38c58a98d0e009708b66178f29bbcc383c075e52a740b613cd13389cb6253bd37dcf
+MISC metadata.xml 329 SHA256 ea78728410ffd353f45c387376fe22660f22452a43e7f4a6ab330be5392a3541 SHA512 a6bc13d759be7cb9ff9c4b754927720ccb73268fec3d6065e3eb873bbf17f9500a50db27962b69890784ec5dfc7bcfcbadaa2c3c867c31e46dbc72a9f3a3f7b0 WHIRLPOOL 7518e576860daa5fb269353e50d982193b2ca07c0cdc7e8c0c9a193a7fa46eecbad75b88b67d0bc14276c1fdc72e62aa28058bfa94431c1a45463ae97b69837d
diff --git a/dev-cpp/catch/catch-1.10.0.ebuild b/dev-cpp/catch/catch-1.10.0.ebuild
new file mode 100644
index 000000000000..dd8e74f2615d
--- /dev/null
+++ b/dev-cpp/catch/catch-1.10.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils
+
+DESCRIPTION="Modern C++ header-only framework for unit-tests"
+HOMEPAGE="https://github.com/philsquared/Catch"
+SRC_URI="https://github.com/philsquared/Catch/archive/v${PV}.tar.gz -> ${P^}.tar.gz"
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+S=${WORKDIR}/${P^}
+
+# CMake is only used to build & run tests, so override phases
+src_configure() { :; }
+src_compile() { :; }
+
+src_test() {
+ cmake-utils_src_configure
+ cmake-utils_src_compile
+ cmake-utils_src_test
+}
+
+src_install() {
+ # same location as used in fedora
+ insinto /usr/include/catch
+ doins -r include/.
+ dodoc -r docs/.
+}
diff --git a/dev-cpp/catch/catch-1.9.7.ebuild b/dev-cpp/catch/catch-1.9.7.ebuild
new file mode 100644
index 000000000000..dd8e74f2615d
--- /dev/null
+++ b/dev-cpp/catch/catch-1.9.7.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils
+
+DESCRIPTION="Modern C++ header-only framework for unit-tests"
+HOMEPAGE="https://github.com/philsquared/Catch"
+SRC_URI="https://github.com/philsquared/Catch/archive/v${PV}.tar.gz -> ${P^}.tar.gz"
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+S=${WORKDIR}/${P^}
+
+# CMake is only used to build & run tests, so override phases
+src_configure() { :; }
+src_compile() { :; }
+
+src_test() {
+ cmake-utils_src_configure
+ cmake-utils_src_compile
+ cmake-utils_src_test
+}
+
+src_install() {
+ # same location as used in fedora
+ insinto /usr/include/catch
+ doins -r include/.
+ dodoc -r docs/.
+}
diff --git a/dev-cpp/catch/catch-1.9999.ebuild b/dev-cpp/catch/catch-1.9999.ebuild
new file mode 100644
index 000000000000..8949a527ca65
--- /dev/null
+++ b/dev-cpp/catch/catch-1.9999.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+EGIT_REPO_URI="https://github.com/philsquared/Catch.git"
+EGIT_BRANCH=master
+inherit cmake-utils git-r3
+
+DESCRIPTION="Modern C++ header-only framework for unit-tests"
+HOMEPAGE="https://github.com/philsquared/Catch"
+SRC_URI=""
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS=""
+IUSE=""
+
+# CMake is only used to build & run tests, so override phases
+src_configure() { :; }
+src_compile() { :; }
+
+src_test() {
+ cmake-utils_src_configure
+ cmake-utils_src_compile
+ cmake-utils_src_test
+}
+
+src_install() {
+ # same location as used in fedora
+ insinto /usr/include/catch
+ doins -r include/.
+ dodoc -r docs/.
+}
diff --git a/dev-cpp/catch/catch-2.0.0_pre3.ebuild b/dev-cpp/catch/catch-2.0.0_pre3.ebuild
new file mode 100644
index 000000000000..62d91b8d4d5b
--- /dev/null
+++ b/dev-cpp/catch/catch-2.0.0_pre3.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils
+
+MY_PV=${PV/_pre/-develop.}
+MY_P=${PN^}-${MY_PV}
+
+DESCRIPTION="Modern C++ header-only framework for unit-tests"
+HOMEPAGE="https://github.com/philsquared/Catch"
+SRC_URI="https://github.com/philsquared/Catch/archive/v${MY_PV}.tar.gz -> ${MY_P}.tar.gz"
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+S=${WORKDIR}/${MY_P}
+
+# CMake is only used to build & run tests, so override phases
+src_configure() { :; }
+src_compile() { :; }
+
+src_test() {
+ cmake-utils_src_configure
+ cmake-utils_src_compile
+ cmake-utils_src_test
+}
+
+src_install() {
+ # same location as used in fedora
+ insinto /usr/include/catch
+ doins -r include/.
+ dodoc -r docs/.
+}
diff --git a/dev-cpp/catch/catch-9999.ebuild b/dev-cpp/catch/catch-9999.ebuild
new file mode 100644
index 000000000000..5ca782d46a21
--- /dev/null
+++ b/dev-cpp/catch/catch-9999.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+EGIT_REPO_URI="https://github.com/philsquared/Catch.git"
+EGIT_BRANCH=catch2
+inherit cmake-utils git-r3
+
+DESCRIPTION="Modern C++ header-only framework for unit-tests"
+HOMEPAGE="https://github.com/philsquared/Catch"
+SRC_URI=""
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS=""
+IUSE=""
+
+# CMake is only used to build & run tests, so override phases
+src_configure() { :; }
+src_compile() { :; }
+
+src_test() {
+ cmake-utils_src_configure
+ cmake-utils_src_compile
+ cmake-utils_src_test
+}
+
+src_install() {
+ # same location as used in fedora
+ insinto /usr/include/catch
+ doins -r include/.
+ dodoc -r docs/.
+}
diff --git a/dev-cpp/catch/metadata.xml b/dev-cpp/catch/metadata.xml
new file mode 100644
index 000000000000..800b18cb7704
--- /dev/null
+++ b/dev-cpp/catch/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">philsquared/Catch</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/clucene/Manifest b/dev-cpp/clucene/Manifest
new file mode 100644
index 000000000000..8320e01d6535
--- /dev/null
+++ b/dev-cpp/clucene/Manifest
@@ -0,0 +1,8 @@
+AUX clucene-2.3.3.4-contrib.patch 1697 SHA256 3d3f73685f75b4ceacf1941e50b6108941bded3ca558ac1343c35b1b7d0e78dc SHA512 0aa92635949089196e4e7c579e78761e8751987ef5036320a161a4aaa67da3c63756398c903419c76ea0fbdc8a949e871fcb65be98179a9853a24a5a4cacfde3 WHIRLPOOL 7ba0a5d9cdb9be45e8508fdd602259119c4c1b978257c938ec1c23ab203bda73b37bae4e6296423ecdabf29b6eae348edae9b42108054875132da28ed6e9097e
+AUX clucene-2.3.3.4-gcc6.patch 1102 SHA256 24a61c742e18632b3df7be0811cafaaf4d049a9abca4183a9abeb202bf9e1f93 SHA512 367e97d9b5d59bca880d8ec70b37078406f581267a896ff6b35cd3ab21f983f4b21152482bb34fb813e426b4cae14a6d319ccdb08e3bf968de8ece3c28a18722 WHIRLPOOL deaa47641beb82258a924a36ad29d14c1cdceaf7baaf60d4a0e04a47cbb703004a5309a1bc102dd6cee76da478709f7e5545c0a7145ae41627db49d88b6e7650
+AUX clucene-2.3.3.4-pkgconfig.patch 871 SHA256 ae92955cecb57ec732233dc33d057f9a0677fc9e17d2461911b300037cbb65f7 SHA512 afcdf00537c8eb9c75ed569356520551ea194c8edc636f6e82bd0b1ef60e33396c1e2722b895aced2b58358950b3c5c1df2a914295074e9e99485ca6cee21c18 WHIRLPOOL 21dbf53462c053efb77cef1356d5bc33d9728ff1ca356b3cdb1b211ca0552d5d299665ecaeebf9115d25e6dda01a6baf44e4787d2124aab6f655e35175ab812d
+DIST clucene-core-2.3.3.4.tar.gz 2241498 SHA256 ddfdc433dd8ad31b5c5819cc4404a8d2127472a3b720d3e744e8c51d79732eab SHA512 1c9da9077edcebd46563bd9e47d330518e0b30061016650a759cfe051e9748fdad8932a472b1cca53a6adafed5f41656527271fc5f55ddfcefb558f0d83286b4 WHIRLPOOL d9e80807b6a1a9afb318be5e795af1edf1ba60734a33c4ee3a9be95863cb97bd13f6d7e144ddff631a5deebce890ef002f3196fe511c57a33f94db29a56c6315
+EBUILD clucene-2.3.3.4-r6.ebuild 1513 SHA256 3f09b19d132b608795a25e5481626aabde5e51a998c136a42ec43830012fb857 SHA512 a7846fec135192ac514649eaf76f8f7f21ec0a013d6cf928db9988b75a6975e93bea8d96d2dec0091cadd38cd693852f9969b97784c62e3cdb7b1960a6ddcd56 WHIRLPOOL 992eb4ab9c90f955fde7d5ba2db3251272510e5769a58f5b31476ec41cae8bd6ddd704b7c6e6ee2b570d38374f4fdcdf925679331cbe77e8c92bbce0b208b040
+MISC ChangeLog 3161 SHA256 57d07bc4aafabae72d6d2f4dd5e481491666290a9569b8cffc9af29894203283 SHA512 c1f61beb62817cfa2f152b51fb184758a3c4cca1e0a2fabc9fa3fca600ff555196b9f9dc48341882737889777097e411b332b9adcd83ffa9fbb6db429c6ccb24 WHIRLPOOL f7f376bab257aeea4d3eb34dce148393d958a206a94a14914370cb8d29ab1db56c3ab0fc6cd87ecd30373eb939c646962f14f09b43f71f87a51a6d04945069ef
+MISC ChangeLog-2015 8532 SHA256 2595306dc8f9ede1c2409e96a96bf55dd75427a93504193370963cddf9488697 SHA512 8c659128662b4d2fb87178c0fe14ab475d91dfc6ee73faa0a9284bca11a17db62b0ee6a215d4c861caf9a3e20a6b1f690adbddbe6e2656abb086d956601b44c2 WHIRLPOOL c538029e7ee98ee454aa38cd93fb2af8cebf47ff4f6db290e85758d4261e009cf52d4ce0b2a3c5d9c539d5c8ab84b0f1b107391e9aea46631d4bc15ca6dc734b
+MISC metadata.xml 216 SHA256 ba32257636740d601234d784fcab55fe33b57a62412e1db415a9e391eb460353 SHA512 f08965e90195baaacd6b6eb8d904a105df499b9ec48adfc586c6f688591260bf0f12b6992313f6119e201f6362f6abd52d659d23d4b5d84c6ae67a09f8e2b183 WHIRLPOOL 929978fc4c7060b66cb8c2635512d23a867461e4d09d80129b9e597c0f20c890c03bc93026be976ef31b3a9eaab1802093e5a1541fa7efdd030354805b9c3fc8
diff --git a/dev-cpp/clucene/clucene-2.3.3.4-r6.ebuild b/dev-cpp/clucene/clucene-2.3.3.4-r6.ebuild
new file mode 100644
index 000000000000..2731d5ba4234
--- /dev/null
+++ b/dev-cpp/clucene/clucene-2.3.3.4-r6.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+MY_PN="${PN}"-core
+MY_P="${MY_PN}"-"${PV}"
+
+inherit cmake-utils multilib
+
+DESCRIPTION="High-performance, full-featured text search engine based off of lucene in C++"
+HOMEPAGE="http://clucene.sourceforge.net/"
+SRC_URI="mirror://sourceforge/clucene/${MY_P}.tar.gz"
+
+LICENSE="|| ( Apache-2.0 LGPL-2.1 )"
+SLOT="1"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos"
+
+IUSE="debug doc static-libs"
+
+DEPEND="
+ doc? ( >=app-doc/doxygen-1.4.2 )
+"
+RDEPEND=""
+
+RESTRICT="test"
+
+DOCS=(AUTHORS ChangeLog README README.PACKAGE REQUESTS)
+
+S="${WORKDIR}/${MY_PN}-${PV}"
+
+PATCHES=(
+ "${FILESDIR}/${P}-contrib.patch"
+ "${FILESDIR}/${P}-pkgconfig.patch"
+ "${FILESDIR}/${P}-gcc6.patch"
+)
+
+src_prepare() {
+ default
+
+ # patch out installing bundled boost headers, we build against system one
+ sed -i \
+ -e '/ADD_SUBDIRECTORY (src\/ext)/d' \
+ CMakeLists.txt || die
+ rm -rf src/ext || die
+}
+
+src_configure() {
+ # Disabled threads: see upstream bug
+ # https://sourceforge.net/tracker/?func=detail&aid=3237301&group_id=80013&atid=558446
+ local mycmakeargs=(
+ -DENABLE_ASCII_MODE=OFF
+ -DENABLE_PACKAGING=OFF
+ -DDISABLE_MULTITHREADING=OFF
+ -DBUILD_CONTRIBS_LIB=ON
+ "-DLIB_DESTINATION=${EPREFIX}/usr/$(get_libdir)"
+ -DENABLE_DEBUG=$(usex debug)
+ -DENABLE_CLDOCS=$(usex doc)
+ -DBUILD_STATIC_LIBRARIES=$(usex static-libs)
+ )
+
+ cmake-utils_src_configure
+}
diff --git a/dev-cpp/clucene/files/clucene-2.3.3.4-contrib.patch b/dev-cpp/clucene/files/clucene-2.3.3.4-contrib.patch
new file mode 100644
index 000000000000..8fbb3c7164ab
--- /dev/null
+++ b/dev-cpp/clucene/files/clucene-2.3.3.4-contrib.patch
@@ -0,0 +1,42 @@
+diff -NaurpBb clucene-core-2.3.3.4/CMakeLists.txt clucene-core-2.3.3.4-mod/CMakeLists.txt
+--- clucene-core-2.3.3.4/CMakeLists.txt 2011-03-17 03:21:07.000000000 +0300
++++ clucene-core-2.3.3.4-mod/CMakeLists.txt 2011-08-16 16:56:55.968268152 +0400
+@@ -163,7 +163,7 @@ IF ( BUILD_CONTRIBS )
+ SET(BUILD_CONTRIBS_LIB 1)
+ ENDIF ( BUILD_CONTRIBS )
+ IF ( BUILD_CONTRIBS_LIB )
+- ADD_SUBDIRECTORY (src/contribs-lib EXCLUDE_FROM_ALL)
++ ADD_SUBDIRECTORY (src/contribs-lib)
+ ENDIF ( BUILD_CONTRIBS_LIB )
+
+
+diff -NaurpBb clucene-core-2.3.3.4/src/contribs-lib/CMakeLists.txt clucene-core-2.3.3.4-mod/src/contribs-lib/CMakeLists.txt
+--- clucene-core-2.3.3.4/src/contribs-lib/CMakeLists.txt 2011-03-17 03:21:07.000000000 +0300
++++ clucene-core-2.3.3.4-mod/src/contribs-lib/CMakeLists.txt 2011-08-16 17:14:13.499275499 +0400
+@@ -106,9 +106,26 @@ add_library(clucene-contribs-lib SHARED
+ )
+ TARGET_LINK_LIBRARIES(clucene-contribs-lib ${clucene_contrib_extra_libs})
+
++#install public headers.
++FOREACH(file ${HEADERS})
++ get_filename_component(apath ${file} PATH)
++ get_filename_component(aname ${file} NAME)
++ file(RELATIVE_PATH relpath ${CMAKE_SOURCE_DIR}/src/contribs-lib ${apath})
++ IF ( NOT aname MATCHES "^_.*" )
++ install(FILES ${file}
++ DESTINATION include/${relpath}
++ COMPONENT development)
++ ENDIF ( NOT aname MATCHES "^_.*" )
++ENDFOREACH(file)
++
+ #set properties on the libraries
+ SET_TARGET_PROPERTIES(clucene-contribs-lib PROPERTIES
+ VERSION ${CLUCENE_VERSION}
+ SOVERSION ${CLUCENE_SOVERSION}
+ COMPILE_DEFINITIONS_DEBUG _DEBUG
+ )
++
++#and install library
++install(TARGETS clucene-contribs-lib
++ DESTINATION ${LIB_DESTINATION}
++ COMPONENT runtime )
diff --git a/dev-cpp/clucene/files/clucene-2.3.3.4-gcc6.patch b/dev-cpp/clucene/files/clucene-2.3.3.4-gcc6.patch
new file mode 100644
index 000000000000..b0b9ac1a327b
--- /dev/null
+++ b/dev-cpp/clucene/files/clucene-2.3.3.4-gcc6.patch
@@ -0,0 +1,28 @@
+From b5a1b3488a72abd250cbd5d4dfbeac3e3739c237 Mon Sep 17 00:00:00 2001
+From: Hodorgasm <nsane457@gmail.com>
+Date: Thu, 12 May 2016 20:38:12 -0400
+Subject: [PATCH] Support GCC-6
+
+Updated 2017-06-18 by mgorny to allow *any* gcc version so that
+we do not have to update the patch every second month.
+
+---
+ src/shared/cmake/MacroCheckGccVisibility.cmake | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/shared/cmake/MacroCheckGccVisibility.cmake b/src/shared/cmake/MacroCheckGccVisibility.cmake
+index 2022aa3..020f913 100644
+--- a/src/shared/cmake/MacroCheckGccVisibility.cmake
++++ b/src/shared/cmake/MacroCheckGccVisibility.cmake
+@@ -15,7 +15,7 @@ macro(MACRO_CHECK_GCC_VISIBILITY GccVisibility)
+ # get the gcc version
+ exec_program(${CMAKE_C_COMPILER} ARGS --version OUTPUT_VARIABLE _gcc_version_info)
+
+- string (REGEX MATCH "[345]\\.[0-9]\\.[0-9]" _gcc_version "${_gcc_version_info}")
++ string (REGEX MATCH "[0-9]+\\.[0-9]+\\.[0-9]+" _gcc_version "${_gcc_version_info}")
+ if (NOT _gcc_version)
+
+ # clang reports: clang version 1.1 (trunk 95754)
+--
+2.8.2
+
diff --git a/dev-cpp/clucene/files/clucene-2.3.3.4-pkgconfig.patch b/dev-cpp/clucene/files/clucene-2.3.3.4-pkgconfig.patch
new file mode 100644
index 000000000000..14563628ea41
--- /dev/null
+++ b/dev-cpp/clucene/files/clucene-2.3.3.4-pkgconfig.patch
@@ -0,0 +1,12 @@
+diff -up clucene-core-2.3.3.4/src/core/libclucene-core.pc.cmake.pkgconfig_sys_includes clucene-core-2.3.3.4/src/core/libclucene-core.pc.cmake
+--- clucene-core-2.3.3.4/src/core/libclucene-core.pc.cmake.pkgconfig_sys_includes 2011-03-16 19:21:07.000000000 -0500
++++ clucene-core-2.3.3.4/src/core/libclucene-core.pc.cmake 2012-03-19 09:01:00.689263954 -0500
+@@ -6,6 +6,6 @@ includedir=${prefix}/include:${prefix}/i
+ Name: libclucene
+ Description: CLucene - a C++ search engine, ported from the popular Apache Lucene
+ Version: @CLUCENE_VERSION_MAJOR@.@CLUCENE_VERSION_MINOR@.@CLUCENE_VERSION_REVISION@.@CLUCENE_VERSION_PATCH@
+-Libs: -L${prefix}/@LIB_DESTINATION@/ -lclucene-core
+-Cflags: -I${prefix}/include -I${prefix}/include/CLucene/ext
++Libs: -L${prefix}/@LIB_DESTINATION@/ -lclucene-core -lclucene-shared
++Cflags: -I${prefix}/include -I${prefix}/include/CLucene/ext
+ ~
diff --git a/dev-cpp/clucene/metadata.xml b/dev-cpp/clucene/metadata.xml
new file mode 100644
index 000000000000..780c9e86ccc8
--- /dev/null
+++ b/dev-cpp/clucene/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <remote-id type="sourceforge">clucene</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/commoncpp2/Manifest b/dev-cpp/commoncpp2/Manifest
new file mode 100644
index 000000000000..817860ab57b1
--- /dev/null
+++ b/dev-cpp/commoncpp2/Manifest
@@ -0,0 +1,14 @@
+AUX 1.8.0-glibc212.patch 323 SHA256 1c07cfe66bcb95649ac7688ae2954b4539c3510b5f124fa07f3e30bcd88a15fe SHA512 c7807f0cb867343fb167f8428a143e125a36c5c764f6ff0a0c8edab892c12b636bc7a47e87574e30209ee0cf5500642369e4135799aee3d3f4292423496fdd07 WHIRLPOOL 59e16e1a0f3cef69252b120af170f6d1c75c29316c6e1b2d195dfa8bf78bca7874de7d31b5a27366ed0196c9255948944641e59bffb242d35a2d2e18d142df27
+AUX 1.8.1-autoconf-update.patch 1735 SHA256 f89ae9b80a4e4ddd526ee7b1829d42b55ad52a9bd37194bb2758718eeddd484a SHA512 5c48300d3476913a96f1ea45853ad6092527490f1e36cab669be74766486f7c13ab86c740603cfe7f5381148a69e60bfb0e968c03c1c579f7aa8d9efb36281b6 WHIRLPOOL 6d172fb3ecba88bf741b9ae65699cd12d79309c2cac57bb4b489646378cb98cc8a91edc89ae6d0aad5084e2190780a206bbc722f294b8d612507d19ee2babd5f
+AUX 1.8.1-configure_detect_netfilter.patch 641 SHA256 1662350f27aaa8d058e97186a668dbd2ad02cddf498291cf1ee51c318af81bd6 SHA512 d4c3af631ab0ef37cb5943cd17ba6481e229af3537e73769f13ed6fe45e2671a9e9ee8f14f2243e95fd8b17d4a8dbb2c7945a5de9e4ce3f29e842779c55d0ea0 WHIRLPOOL 69ffa1ba5a0a123f87b8108fc26f31ddc0fb6a0a4b1e5f7cd72b7362d92c3972d08b96429367f042a86462debc92229ffedc85e26116e0a7f998a33e2b15048a
+AUX 1.8.1-fix-buffer-overflow.patch 442 SHA256 0556a17325a199df3526be14c7e47d4cf19b14bd573ddd3ff4db791e54bed281 SHA512 4c3cece95f4a32ee2b37b37f84462aeda43c2d25c2eb5cfaf4bfbbe2bdc2d7db7c2ead2f6150bb108ea124fc29c277371d1d0f415a6b26df98f515d910cb3e8b WHIRLPOOL d518d0a2f61e56a3370f40eaedf09e67e7e22152a1468250df31f5c9d2a2ef69d37c82fc01f7d3e0f41074e09f215beeb3d7f51d8e45c518e282f81909416605
+AUX 1.8.1-fix-c++14.patch 1220 SHA256 322977dc077d85c4c062751eaa739392a349b0539a439069ed67817c5580b583 SHA512 222c21e7b0b4e035ec3a36edb5b9e68d345550781f21a8c075835bf6f27ee46f62469a17f4cec3c1c1bb69741661dbcc7071c51c964006201ed8c3ff48a60c80 WHIRLPOOL 6e0e1492c822713e8afa25b5a8cf1e24652dede4c68cb53dfce1caf502fb7b6b05a6605d1f1ee02274636f063cfec2c10e22c7535db9a0d0249eda9f3ee2a8ff
+AUX 1.8.1-gnutls-3.4.patch 1229 SHA256 ead71b0e7cb5a55ace7553cc9f21d6606c6fb534ac045c343fc6badfcaecff48 SHA512 92db4deba0ae612fda5873224641d35d5637a48d553d0afee7749c5477ca19a62640656d4781d101db5b545ddd962ce7c11a6edf33d128b031cafebf3cf6db77 WHIRLPOOL 681a4442a55a97707f3a9aeca59c7462bf2aad6c8bcb33d59127fff9254329fb2e04457ddb22f8dbef86b2406801ebc4a04d119f4cbc864e5bbddd41083e36a0
+AUX 1.8.1-libgcrypt.patch 1054 SHA256 90cccdd8e6bb790fb3f678c699e956dc17dedd2c65b7368a02a4a3a6ebfceb0c SHA512 76f444739b370681d1b619b78cc77867da197f149c19d036d9d8b430a7a59d697c7ab30529582c308f77bc584a003dc0701d8c06003329589ade652babe5edd2 WHIRLPOOL fdce5e6031361b854d1c271946e764d68532bbc88f7c32600308c700030a9c7639ada97d9f2a252bf6c8ab046396955392a367ebf2e20193eca05a2deb8bb33e
+AUX 1.8.1-parallel-build.patch 261 SHA256 4cfb1fa37d894aae21d41b9d3d61becc8e979032fefbae1d97a2bc0dc2a61148 SHA512 e06ca32ffd811897859ef7bf06f3b7998eaa56c7fcbb01f971ec32b6e75c4242e3a2ed5a1bdaa28c02bae08bfbb386d65ebed3e50e2de759d056f085f1f49c1f WHIRLPOOL c7252df525b117ff2d5b3c5ac26a3d78ac7f2c7e92790a6b652003422dfb2f6e728d477480be500d5775b24894ac097beea7f789e2774b41f6ca9d2c86d75def
+DIST commoncpp2-1.8.1.tar.gz 908678 SHA256 53ced4aff74e28a1d8018eb2b4974519028db3c12471ab6dff1c873578c9af4e SHA512 949823461d20429c2b0acfa22554a5a9dacc977e3ee097f34416f65d322df84fbdb27c644435c6c6caaed800347dfbe789cee7f19b39b306165c97b4f4012bfe WHIRLPOOL 1844cf39ce0a087aaea1cfac1e712b52f81de594278facb70306d68cd3e3343c0d2c581886b4fe3ce7607eb52150c5cf1c9558d0fac0ee7d8730eff39b46bb64
+EBUILD commoncpp2-1.8.1-r2.ebuild 1570 SHA256 e9145c2674513aad967e8872feaafc4c90dd535e0b6aab1bbef4671b71b83e0f SHA512 3dfdeed9b2b04151fe4ae5fab0454c8c161a047f99f8945325a4a88291463cfb85cc23adb6305efe76dc6b99b60893f78a0ecb721dd381ffe04be1e4b3376412 WHIRLPOOL 45a76c7e018ba6d860cc7e4d6e6b5a3f11bb9c7e2a55072b2cdf6dbeaacb25bfe66c96452904b8a0c0b0933107b4ef8f6302a29a9770586d00290f89f12f240d
+EBUILD commoncpp2-1.8.1-r3.ebuild 1515 SHA256 0d02322ded0aff1cb077db4ed0b85baa861db52458f5b34316a333f009f0372a SHA512 ce6af72543aca69603849311c2a15ae8f4df829c5e027660468b8a8e38f8c343581475890105849e78df329dc66911effaded94f6984779f706d6e2824b3108b WHIRLPOOL a3cc871e397384ed7020fe70bc80ea0787accc96fbe22b80b0cc08eeb197c5e29e40799e955897499d27dd5b574cdfafe80eabcf776f2af08a0df6aa20aca146
+MISC ChangeLog 3896 SHA256 f87e51ee9620bd90b2a3185e95a4c74b297d07a024591e03f7dfdcd52c5d1496 SHA512 e9a809c039c6df3f169a5a47ddc0b56e4774ec6ef35a3ce1d37ba98150fcfcdcbc995e56994b2187f83905ab63d81a18d3e9ae7a3da89104c60696db2948be7a WHIRLPOOL def06b3b9cdc9a1560c0d4c926f7d67dfedac939996e251a5246c5e1d5332fe263b753150e7792d99f5e7fb26bb81eab2d74590d99e61d49e76d6d959c667157
+MISC ChangeLog-2015 11054 SHA256 86e05a1b9bfde4b4e498d1b0c49007900d792529a883fd5a83465751ed81e3f3 SHA512 5e6d5eb46022e2bed64900dcd0cf9fb72b651a0e6efdb5cc3063c00d3eac083539ab9ae125060bd50c7a7a648f369590163b8476f5531805fd15232e8695344a WHIRLPOOL b7e5cb7d33638b5c744325754c7518eb4eda96dd4a0739a4adc93a35740efb01efe5c4adf6ad010690efca7b02d3de9020de09239130d657dba28b965b8a05fd
+MISC metadata.xml 245 SHA256 2d55ae4b33723b881e2cd48221560da36aec5b304b8bf2b440a9e2588875dba9 SHA512 b098db4fb4d9ea116f6246bc6caf0f49e80e236d2fad78d287b638dbd5add7bfaf7feb1ca081ca557b23dde9227ce42fa808f3f6fd8eaba6a7e9cae93342f9c6 WHIRLPOOL edd2e34ed3775c96bf085c9c0a95bd448028cb5ba6a2bfa7d7253b54878c888b62fa579483265c47c2602ca454fd656d32346eaa7351067cc3a36295d1e1e861
diff --git a/dev-cpp/commoncpp2/commoncpp2-1.8.1-r2.ebuild b/dev-cpp/commoncpp2/commoncpp2-1.8.1-r2.ebuild
new file mode 100644
index 000000000000..dee8c708de05
--- /dev/null
+++ b/dev-cpp/commoncpp2/commoncpp2-1.8.1-r2.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools
+
+DESCRIPTION="C++ library offering portable support for system-related services"
+SRC_URI="mirror://gnu/commoncpp/${P}.tar.gz"
+HOMEPAGE="https://www.gnu.org/software/commoncpp/"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc ppc64 x86"
+IUSE="debug doc examples ipv6 gnutls ssl static-libs"
+
+RDEPEND="
+ sys-libs/zlib
+ ssl? (
+ gnutls? (
+ dev-libs/libgcrypt:0=
+ net-libs/gnutls:=
+ )
+ !gnutls? ( dev-libs/openssl:0= )
+ )"
+DEPEND="${RDEPEND}
+ doc? ( >=app-doc/doxygen-1.3.6 )"
+
+PATCHES=(
+ "${FILESDIR}/1.8.1-configure_detect_netfilter.patch"
+ "${FILESDIR}/1.8.0-glibc212.patch"
+ "${FILESDIR}/1.8.1-autoconf-update.patch"
+ "${FILESDIR}/1.8.1-fix-buffer-overflow.patch"
+ "${FILESDIR}/1.8.1-parallel-build.patch"
+ "${FILESDIR}/1.8.1-libgcrypt.patch"
+ "${FILESDIR}/1.8.1-fix-c++14.patch"
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ use ssl && local myconf=( $(usex gnutls '--with-gnutls' '--with-openssl') )
+
+ econf \
+ $(use_enable debug) \
+ $(use_with ipv6) \
+ $(use_enable static-libs static) \
+ $(use_with doc doxygen) \
+ "${myconf[@]}"
+}
+
+src_install () {
+ # Only install html docs
+ # man and latex available, but seems a little wasteful
+ use doc && HTML_DOCS=( doc/html/. )
+ default
+ dodoc COPYING.addendum
+
+ if use examples; then
+ docinto examples
+ dodoc demo/{*.cpp,*.h,*.xml,README}
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+
+ # package provides .pc files
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/dev-cpp/commoncpp2/commoncpp2-1.8.1-r3.ebuild b/dev-cpp/commoncpp2/commoncpp2-1.8.1-r3.ebuild
new file mode 100644
index 000000000000..f75eac737a8e
--- /dev/null
+++ b/dev-cpp/commoncpp2/commoncpp2-1.8.1-r3.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools eutils
+
+DESCRIPTION="C++ library offering portable support for system-related services"
+SRC_URI="mirror://gnu/commoncpp/${P}.tar.gz"
+HOMEPAGE="https://www.gnu.org/software/commoncpp/"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc ppc64 x86"
+IUSE="debug doc examples ipv6 gnutls ssl static-libs"
+
+RDEPEND="
+ sys-libs/zlib
+ ssl? (
+ gnutls? (
+ dev-libs/libgcrypt:0=
+ net-libs/gnutls:=
+ )
+ !gnutls? ( dev-libs/openssl:0= )
+ )"
+DEPEND="${RDEPEND}
+ doc? ( >=app-doc/doxygen-1.3.6 )"
+
+HTML_DOCS=()
+
+PATCHES=(
+ "${FILESDIR}/1.8.1-configure_detect_netfilter.patch"
+ "${FILESDIR}/1.8.0-glibc212.patch"
+ "${FILESDIR}/1.8.1-autoconf-update.patch"
+ "${FILESDIR}/1.8.1-fix-buffer-overflow.patch"
+ "${FILESDIR}/1.8.1-parallel-build.patch"
+ "${FILESDIR}/1.8.1-libgcrypt.patch"
+ "${FILESDIR}/1.8.1-fix-c++14.patch"
+ "${FILESDIR}/1.8.1-gnutls-3.4.patch"
+)
+
+pkg_setup() {
+ use doc && HTML_DOCS+=( doc/html/. )
+}
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ use ssl && local myconf=( $(usex gnutls '--with-gnutls' '--with-openssl') )
+
+ econf \
+ $(use_enable debug) \
+ $(use_with ipv6) \
+ $(use_enable static-libs static) \
+ $(use_with doc doxygen) \
+ "${myconf[@]}"
+}
+
+src_install () {
+ default
+ prune_libtool_files
+
+ dodoc COPYING.addendum
+
+ if use examples; then
+ docinto examples
+ dodoc demo/{*.cpp,*.h,*.xml,README}
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch b/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch
new file mode 100644
index 000000000000..5132554aea1c
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.0-glibc212.patch
@@ -0,0 +1,12 @@
+http://bugs.gentoo.org/334135
+
+--- a/src/applog.cpp
++++ b/src/applog.cpp
+@@ -44,6 +44,7 @@
+ #include <cstdio>
+ #include <stdarg.h>
+ #include <errno.h>
++#include <sys/stat.h>
+
+ // TODO sc: test if has to move up now that it is into commoncpp
+ // NOTE: the order of inclusion is important do not move following include line
diff --git a/dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch b/dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch
new file mode 100644
index 000000000000..c64ba2f65fa9
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.1-autoconf-update.patch
@@ -0,0 +1,61 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -9,7 +9,8 @@
+ # WITHOUT ANY WARRANTY, to the extent permitted by law; without even the
+ # implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+-AC_INIT(src/thread.cpp)
++AC_INIT
++AC_CONFIG_SRCDIR([src/thread.cpp])
+ AC_CONFIG_MACRO_DIR([m4])
+ m4_pattern_allow(LT_VERSION)
+
+@@ -81,17 +82,17 @@
+ AC_SUBST(ccincludedir)
+
+ AC_CONFIG_AUX_DIR(autoconf)
+-AC_CANONICAL_SYSTEM
++AC_CANONICAL_TARGET
+ AC_PROG_CPP
+ AC_PROG_CC
+ AC_PROG_CXXCPP
+ AC_PROG_CXX
+ OST_PROG_CC_POSIX
+ NP_PROG_MSC
+-AC_LIBTOOL_WIN32_DLL
+-AM_PROG_LIBTOOL
++
++LT_INIT([win32-dll,disable-static])
+ AM_INIT_AUTOMAKE(commoncpp2, [$VERSION])
+-AM_CONFIG_HEADER(config.h)
++AC_CONFIG_HEADERS([config.h])
+
+ AC_C_RESTRICT
+ AC_C_VOLATILE
+@@ -395,10 +396,11 @@
+ #endif
+
+ ])
+-
++AC_ARG_WITH([doxygen],
++ AS_HELP_STRING([--without-doxygen], [Do not build documentation]))
+ AC_PATH_PROG(DOXYGEN, doxygen, no)
+ AC_SUBST(DOXYGEN)
+-AM_CONDITIONAL(DOXY, test "$DOXYGEN" != "no")
++AM_CONDITIONAL([DOXY], [test "x$with_doxygen" != "xno"])
+
+ AM_CONDITIONAL(GETOPT_LONG, [test ! -z "$LIBGETOPTOBJS"])
+
+@@ -408,10 +410,11 @@
+ AC_SUBST(LIB_VERSION)
+ AC_SUBST(LIB_MAJOR)
+
+-AC_OUTPUT([src/ccgnu2-config src/libccext2.pc src/libccgnu2.pc
++AC_CONFIG_FILES([src/ccgnu2-config src/libccext2.pc src/libccgnu2.pc
+ src/Makefile w32/Makefile w32/vs2008/Makefile w32/vs2008/ccext2.vcproj w32/vs2008/ccgnu2.vcproj w32/vs2008/common.sln m4/Makefile doc/Doxyfile
+ doc/Makefile demo/Makefile inc/Makefile inc/cc++/Makefile Makefile
+ commoncpp2.spec tests/Makefile commoncpp2.list w32/ccgnu2.dsp w32/ccext2.dsp w32/ccgnu2.vcproj w32/ccext2.vcproj])
++AC_OUTPUT
+
+ # if test ! -f inc/cc++/thread.h ; then
+ # cp ${srcdir}/inc/cc++/*.h inc/cc++ ; fi
diff --git a/dev-cpp/commoncpp2/files/1.8.1-configure_detect_netfilter.patch b/dev-cpp/commoncpp2/files/1.8.1-configure_detect_netfilter.patch
new file mode 100644
index 000000000000..b6ebf0e0f4a4
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.1-configure_detect_netfilter.patch
@@ -0,0 +1,14 @@
+diff --git a/m4/ost_socket.m4 b/m4/ost_socket.m4
+index bd9db7c..122c938 100644
+--- a/m4/ost_socket.m4
++++ b/m4/ost_socket.m4
+@@ -93,6 +93,9 @@ AC_DEFUN([OST_SYS_SOCKET],[
+ AC_CHECK_HEADERS([linux/netfilter_ipv4.h linux/netfilter_ipv6.h],,,
+ [#ifdef HAVE_LIMITS_H
+ #include <limits.h>
++ #endif
++ #ifdef HAVE_NETINET_IN_H
++ #include <netinet/in.h>
+ #endif])
+ if test "$ac_cv_header_linux_netfilter_ipv4_h" = "yes" &&
+ [ test "$ac_cv_header_linux_netfilter_ipv6_h" = "yes" &&
diff --git a/dev-cpp/commoncpp2/files/1.8.1-fix-buffer-overflow.patch b/dev-cpp/commoncpp2/files/1.8.1-fix-buffer-overflow.patch
new file mode 100644
index 000000000000..e68b00576cdb
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.1-fix-buffer-overflow.patch
@@ -0,0 +1,13 @@
+diff --git a/src/inaddr.cpp b/src/inaddr.cpp
+index 5a4b9c4..50127f3 100644
+--- a/src/inaddr.cpp
++++ b/src/inaddr.cpp
+@@ -333,7 +333,7 @@ void IPV4Address::setAddress(const char *host)
+ if(ipaddr)
+ delete[] ipaddr;
+ ipaddr = new struct in_addr[1];
+- memset((void *)&ipaddr[0], 0, sizeof(ipaddr));
++ memset((void *)&ipaddr[0], 0, sizeof(*ipaddr));
+ return;
+ }
+
diff --git a/dev-cpp/commoncpp2/files/1.8.1-fix-c++14.patch b/dev-cpp/commoncpp2/files/1.8.1-fix-c++14.patch
new file mode 100644
index 000000000000..cc921060b303
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.1-fix-c++14.patch
@@ -0,0 +1,52 @@
+Fix building with C++14, which errors out due changed noexcept()
+semantics for dtors caught by -Werror=terminate.
+
+See also: https://bugs.gentoo.org/show_bug.cgi?id=595422
+
+--- a/src/nat.cpp
++++ b/src/nat.cpp
+@@ -145,11 +145,11 @@
+ "nat lookup successful",
+ "nat address not in table",
+ "nat not supported/implemented",
+- "unable to open device "NAT_DEVICE,
++ "unable to open device " NAT_DEVICE,
+ "unable to get socket name",
+ "unable to get peer name",
+ "unable to get socket type",
+- "unable to lookup, nat "NAT_SYSCALL" failed",
++ "unable to lookup, nat " NAT_SYSCALL " failed",
+ "unkown nat error code"
+ };
+
+--- a/src/socket.cpp
++++ b/src/socket.cpp
+@@ -2971,12 +2971,7 @@
+
+ TCPStream::~TCPStream()
+ {
+-#ifdef CCXX_EXCEPTIONS
+- try { endStream(); }
+- catch( ... ) { if ( ! std::uncaught_exception()) throw;};
+-#else
+- endStream();
+-#endif
++ endStream();
+ }
+
+ #ifdef HAVE_GETADDRINFO
+--- a/src/ssl.cpp
++++ b/src/ssl.cpp
+@@ -441,12 +441,7 @@
+
+ SSLStream::~SSLStream()
+ {
+-#ifdef CCXX_EXCEPTIONS
+- try { endStream(); }
+- catch( ...) { if ( ! std::uncaught_exception()) throw;};
+-#else
+ endStream();
+-#endif
+ }
+
+ #ifdef CCXX_NAMESPACES
diff --git a/dev-cpp/commoncpp2/files/1.8.1-gnutls-3.4.patch b/dev-cpp/commoncpp2/files/1.8.1-gnutls-3.4.patch
new file mode 100644
index 000000000000..b7365b822065
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.1-gnutls-3.4.patch
@@ -0,0 +1,36 @@
+From ba702b6034444c2e30b0990d06e28bb2dea8ecb7 Mon Sep 17 00:00:00 2001
+From: Alon Bar-Lev <alon.barlev@gmail.com>
+Date: Sat, 4 Mar 2017 01:36:23 +0200
+Subject: [PATCH] ssl: support gnutls-3.4
+
+Signed-off-by: Alon Bar-Lev <alon.barlev@gmail.com>
+---
+ src/ssl.cpp | 5 +----
+ 1 file changed, 1 insertion(+), 4 deletions(-)
+
+diff --git a/src/ssl.cpp b/src/ssl.cpp
+index 5bf526d..38ef0a7 100644
+--- a/src/ssl.cpp
++++ b/src/ssl.cpp
+@@ -344,9 +344,6 @@ ssize_t SSLStream::readData(void *target, size_t size, char separator, timeout_t
+ #ifdef CCXX_GNUTLS
+ bool SSLStream::getSession(void)
+ {
+- const int cert_priority[3] =
+- {GNUTLS_CRT_X509, GNUTLS_CRT_OPENPGP, 0};
+-
+ if(ssl)
+ return true;
+
+@@ -362,7 +359,7 @@ bool SSLStream::getSession(void)
+
+ gnutls_set_default_priority(ssl->session);
+ gnutls_certificate_allocate_credentials(&ssl->xcred);
+- gnutls_certificate_type_set_priority(ssl->session, cert_priority);
++ gnutls_priority_set_direct(ssl->session, "NORMAL:+CTYPE-OPENPGP", NULL);
+ gnutls_credentials_set(ssl->session, GNUTLS_CRD_CERTIFICATE, ssl->xcred);
+ gnutls_transport_set_ptr(ssl->session, (gnutls_transport_ptr)so);
+ if(gnutls_handshake(ssl->session)) {
+--
+2.10.2
+
diff --git a/dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch b/dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch
new file mode 100644
index 000000000000..08e24e1a06a9
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.1-libgcrypt.patch
@@ -0,0 +1,48 @@
+--- a/src/ssl.cpp
++++ b/src/ssl.cpp
+@@ -99,35 +99,7 @@
+ return 0;
+ }
+
+-extern "C" {
+- static int _wrap_mutex_init(void **priv)
+- {
+- return _gcry_mutex_init((Mutex **)(priv));
+- }
+-
+- static int _wrap_mutex_destroy(void **priv)
+- {
+- return _gcry_mutex_destroy((Mutex **)(priv));
+- }
+-
+- static int _wrap_mutex_lock(void **priv)
+- {
+- return _gcry_mutex_lock((Mutex **)(priv));
+- }
+-
+- static int _wrap_mutex_unlock(void **priv)
+- {
+- return _gcry_mutex_unlock((Mutex **)(priv));
+- }
+-
+- static struct gcry_thread_cbs _gcry_threads =
+- {
+- GCRY_THREAD_OPTION_PTHREAD, NULL,
+- _wrap_mutex_init, _wrap_mutex_destroy,
+- _wrap_mutex_lock, _wrap_mutex_unlock
+- };
+-
+-};
++GCRY_THREAD_OPTION_PTHREAD_IMPL;
+
+ #endif
+
+@@ -135,7 +107,7 @@
+ public:
+ _ssl_global() {
+ #ifndef WIN32
+- gcry_control(GCRYCTL_SET_THREAD_CBS, &_gcry_threads);
++ gcry_control(GCRYCTL_SET_THREAD_CBS, &gcry_threads_pthread);
+ #endif
+ gnutls_global_init();
+ }
diff --git a/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch b/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch
new file mode 100644
index 000000000000..149677ca89b4
--- /dev/null
+++ b/dev-cpp/commoncpp2/files/1.8.1-parallel-build.patch
@@ -0,0 +1,11 @@
+--- a/src/Makefile.am
++++ b/src/Makefile.am
+@@ -47,6 +47,7 @@
+
+ if EXTRAS
+ libccext2_la_LIBADD = @THREAD_LIBS@ @BASE_LIB@ @SSL_LIBS@ @ZSTREAM_LIBS@
++libccext2_la_DEPENDENCIES = libccgnu2.la
+ libccext2_la_LDFLAGS = $(RELEASE) $(SHARED_FLAGS)
+
+ if GETOPT_LONG
+
diff --git a/dev-cpp/commoncpp2/metadata.xml b/dev-cpp/commoncpp2/metadata.xml
new file mode 100644
index 000000000000..41cd682e0ecf
--- /dev/null
+++ b/dev-cpp/commoncpp2/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/cpp-hocon/Manifest b/dev-cpp/cpp-hocon/Manifest
new file mode 100644
index 000000000000..0bc5e562f0fc
--- /dev/null
+++ b/dev-cpp/cpp-hocon/Manifest
@@ -0,0 +1,4 @@
+DIST cpp-hocon-0.1.4.tar.gz 157988 SHA256 2274b99dc098122b6e3d2c8d23173d21893555190c5a008e5a9a7d84875c7275 SHA512 f5ee6c5e7eaa5139bb3c421fd8b7c0da337daec99dce7f426d567ced0036b7c49a396b1b9bdbaa8023cd776a5a942175082a4b30280d4211a0db51483324be42 WHIRLPOOL a9a4f677dc708d5097812ca407257c9f44168d36081d5a55d32d10862555fa89f213208b0e5c3e83900b1e8c7b313c4ba66e7684f9ba0b5c3b01f0a1ae8f1d6a
+EBUILD cpp-hocon-0.1.4.ebuild 963 SHA256 e3fca3fdc793deb39f656f98b7ccd26d33e4df801b7907e199003e6037fbb614 SHA512 6ce03b3aa2eae2a3b4d7c15dad832c23e3214ebb6ae121a117427258c64c4898dcf3071e0edb86bf00b37f91008a67bd25794392e28f062b7d562ff782216f09 WHIRLPOOL 0ea7afa7fdb779e938558d408d986f1c0c0c62a41eb454130082859c8129f6e308495699f5d045961cecd726f8df06cbdeb30ae5a9a13e260b0c46bc20b5843f
+MISC ChangeLog 827 SHA256 7330edd9c9b2d6199f8cb00098fffd5f3d67cf1eb4804bcc861a9e21b0da131d SHA512 d242c7b770c7280a793d6d31d617918a0082070d1c62514e53e353a2448d6d008bd0ee028220d84cdb21335d8e198e55951ab9a3698f55794649c7a5c268dd52 WHIRLPOOL 9dd8851c89fb89f0a3972a429dfcba35f2009328866fe5915774f05b7750c51ccbf85ce98109065cdee071b4eb5b726958c4b9ad34f37fc1b5289715941c9ee8
+MISC metadata.xml 433 SHA256 03f191a3164b60625576897287d3247fb0f908bc5d82dd25c680729845d18b2a SHA512 7f890317b6cdfc71563359d575446ccf489d6ffb79ba541566fa747e4a0c1e077ec7f7c5263d96035bbfe77f6631cfb9000f715c348ed543492b7dc4cc7cd305 WHIRLPOOL fc21c75be3010e48fcdfa1bb68656b4dc8e58220b20d7bf01cda0752384c8aadf6703579b7702ec04ce3bbddb8187d2dc596e493151e641fbc8994799f11d57b
diff --git a/dev-cpp/cpp-hocon/cpp-hocon-0.1.4.ebuild b/dev-cpp/cpp-hocon/cpp-hocon-0.1.4.ebuild
new file mode 100644
index 000000000000..6b8c0d67d46a
--- /dev/null
+++ b/dev-cpp/cpp-hocon/cpp-hocon-0.1.4.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils
+
+DESCRIPTION="Provides C++ support for the HOCON configuration file format"
+HOMEPAGE="https://github.com/puppetlabs/cpp-hocon"
+SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="amd64 ~arm hppa ~ppc ~ppc64 x86"
+IUSE="debug test"
+
+DEPEND="
+ >=sys-devel/gcc-4.9.3:*
+ >=dev-libs/boost-1.54[nls]
+ >=dev-libs/leatherman-0.9.3
+ "
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ default
+ # make it support multilib
+ sed -i "s/\ lib)/\ $(get_libdir))/g" lib/CMakeLists.txt || die
+ sed -i "s/lib\")/$(get_libdir)\")/g" CMakeLists.txt || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DCMAKE_VERBOSE_MAKEFILE=ON
+ -DCMAKE_BUILD_TYPE=None
+ -DCMAKE_INSTALL_PREFIX=/usr
+ )
+ if use debug; then
+ mycmakeargs+=(
+ -DCMAKE_BUILD_TYPE=Debug
+ )
+ fi
+ cmake-utils_src_configure
+}
diff --git a/dev-cpp/cpp-hocon/metadata.xml b/dev-cpp/cpp-hocon/metadata.xml
new file mode 100644
index 000000000000..07ce8804cf91
--- /dev/null
+++ b/dev-cpp/cpp-hocon/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>prometheanfire@gentoo.org</email>
+ <name>Matthew Thode</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">puppetlabs/cpp-hocon</remote-id>
+ </upstream>
+ <longdescription lang="en">
+ A C++ port of the Typesafe Config library.
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-cpp/ctemplate/Manifest b/dev-cpp/ctemplate/Manifest
new file mode 100644
index 000000000000..8cf257d0dc05
--- /dev/null
+++ b/dev-cpp/ctemplate/Manifest
@@ -0,0 +1,7 @@
+AUX 70ctemplate-gentoo.el 282 SHA256 5b0f78a1bfc6171856ba0822612cff0a0451ee9c7969ab4ae935f15eed715de7 SHA512 36bc5424cb6dce40026f1d08b8764bf43d42159ff20e7d81484f5baf1c1e3c2042c12b1a60fc3cef48e297e816a12dbc41169988a6537ee41a2e2528b3c834a3 WHIRLPOOL ed954cb7e7f9bf7986b1b5c8547e7dd3e9e1f742d1d13a39ad9d126c0c410f7617c04b76a32c8eb93173d74a157d1be84b40d1196d9557ab9e9343b057db7cb1
+AUX ctemplate-2.3-fix-build-system.patch 1196 SHA256 7ca362114e33ca182adab5a1e24d9029392d55c6986fc75c5c58b764daf4e3d0 SHA512 4402af1034780d00f733231d9ce534cf54a4474a1153bc534274bc2f5163aba8b39e2ad7613151ffd34f3b7d4ba1d3a0c51badf8f1712aea6a1b65d963e3bea4 WHIRLPOOL b0e20709aa823d23c714342326df2fb604a805a469a02ced849a2757b6fec28b9b276f093f3d9bf49d84c18f9c238d5cfe7a5be4c24c4c5ed62c4ff90cb6b663
+DIST ctemplate-2.3.tar.bz2 564389 SHA256 6409e74486888be371cf29900ba757e5443c958295f2099359d5ef6a6acceeec SHA512 546645389a8bfed59686b62b43cb7d53714ac98e1b75311c217bb0f3b6201d5d486766b1ce7e35bf15032372e45c36b27008f54085bd0c9ef0dd0b7e04b8e3f5 WHIRLPOOL 9261906ddb6857a378aa9f86a9cd87b6fcb9c79c442ff2b87ddf92021fdd64140f3cb87cbb2b1f3775fa2f5a0d039d1b4ceca3cf07f1efc841fbfb72e9f1467e
+EBUILD ctemplate-2.3-r1.ebuild 1533 SHA256 2d1c1934ec21360f48949436426ce7395372f9a9b7e66635cea1a0ca8e8ab7d1 SHA512 8e338af1b10165d16b113eb008f744ff96d68e4f242efa6aea3abe0add00526095ee7055e2b832f012042d182e573c4b3811c8974e33fb621935cdfbcd52ea63 WHIRLPOOL 286c68ad767e6bcbcca2481a015bf900ef33472c2292a96fafcf953dd853f83239f43a1fd8417861c7429578063bc62b509fe0c04be3f4ce30512366645c0cd7
+MISC ChangeLog 3473 SHA256 b0d7f6509dd58effe9bc7569abe2d5a6baa8ff63b4eecfa247ae01397263885c SHA512 22c3eb6394120f0b8a94787a6e69cae875963d38f513cde244a72ecada11504b94dc1ce7631cb75794dc65d886e3bbd5b1653beb6896650ec7f03c3464b1d32d WHIRLPOOL 46e41dfdb21dda991e6037acea72d1a8c7afd13fda4e8422c01768a4d72d817f5b694e231a5254f748d857400a14491b4151437f0e47b735a1520c2ac3aa2623
+MISC ChangeLog-2015 4690 SHA256 ad5565672f2b970e7c6dc4987b6f91455487d469e622eed3fd8e951e3d8d2a13 SHA512 111f2e9abc95f12056acc3df635276d0a83932704bcc87bdc973182dc4f1b9ef5d139753fe49e2c5cd904640a1f12e6dd2a89c4db3bd155d63522767f19abbdd WHIRLPOOL c7e1d9167c1549874210b7c5a01d197fc7654ec39cd9c8047b5a78cb55d7f2bb515a9d671ff6d18d4b5da24d5ea296d0e6b8bfbec851bfe99c992bc87a708bd0
+MISC metadata.xml 395 SHA256 f5f0f36f2cf6bf4cc7a5082e609a2a21ab327428e5ac5c666495c53eb30409db SHA512 5b2ac214c10f83e739157b6530e9d19f9197eef74261f9581aa3861f0e7480e5476e6265c1769d0e944b434a78c8a17dc286918665e261757b79127d2f55b93a WHIRLPOOL a763a913d5cfcfcb23b424026bb20496e7c87a2e4d23da86379c962540abfef862b20f0e044a05fe2909be88fe504624ba6d198dc97a5b9c754e981ff7cb8e64
diff --git a/dev-cpp/ctemplate/ctemplate-2.3-r1.ebuild b/dev-cpp/ctemplate/ctemplate-2.3-r1.ebuild
new file mode 100644
index 000000000000..a578d0f6a249
--- /dev/null
+++ b/dev-cpp/ctemplate/ctemplate-2.3-r1.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit autotools elisp-common python-any-r1
+
+DESCRIPTION="A simple but powerful template language for C++"
+HOMEPAGE="https://github.com/olafvdspek/ctemplate"
+SRC_URI="https://dev.gentoo.org/~pinkbyte/distfiles/${P}.tar.bz2"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 arm ppc x86 ~amd64-linux ~x86-linux"
+IUSE="doc emacs vim-syntax static-libs test"
+
+DEPEND="test? ( ${PYTHON_DEPS} )"
+RDEPEND="
+ emacs? ( virtual/emacs )
+ vim-syntax? ( >=app-editors/vim-core-7 )"
+
+SITEFILE="70ctemplate-gentoo.el"
+
+# Some tests are broken in 2.3
+RESTRICT="test"
+
+PATCHES=( "${FILESDIR}"/${PN}-2.3-fix-build-system.patch )
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf $(use_enable static-libs static)
+}
+
+src_compile() {
+ default
+
+ if use emacs; then
+ elisp-compile contrib/tpl-mode.el
+ fi
+}
+
+src_install() {
+ default
+ if ! use doc; then
+ rm -r "${ED%/}"/usr/share/doc/${PF}/html || die
+ fi
+
+ if use vim-syntax; then
+ cd "${S}/contrib" || die
+ sh highlighting.vim || die "unpacking vim scripts failed"
+ insinto /usr/share/vim/vimfiles
+ doins -r .vim/.
+ fi
+
+ if use emacs; then
+ cd "${S}/contrib" || die
+ elisp-install ${PN} tpl-mode.el tpl-mode.elc
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+
+ # package provides .pc files
+ find "${D}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+}
diff --git a/dev-cpp/ctemplate/files/70ctemplate-gentoo.el b/dev-cpp/ctemplate/files/70ctemplate-gentoo.el
new file mode 100644
index 000000000000..a7fce964c3e4
--- /dev/null
+++ b/dev-cpp/ctemplate/files/70ctemplate-gentoo.el
@@ -0,0 +1,7 @@
+;;; ctemplate site-lisp configuration
+
+(add-to-list 'load-path "@SITELISP@")
+
+(setq auto-mode-alist (cons '("\\.tpl$" . tpl-mode) auto-mode-alist))
+(autoload 'tpl-mode "tpl-mode" "Major mode for editing CTemplate files." t)
+(add-hook 'tpl-mode-hook '(lambda () (font-lock-mode 1)))
diff --git a/dev-cpp/ctemplate/files/ctemplate-2.3-fix-build-system.patch b/dev-cpp/ctemplate/files/ctemplate-2.3-fix-build-system.patch
new file mode 100644
index 000000000000..4178f5ed3655
--- /dev/null
+++ b/dev-cpp/ctemplate/files/ctemplate-2.3-fix-build-system.patch
@@ -0,0 +1,29 @@
+* Do not override $(docdir) as userflag in the GNU conventions
+* Only build tests programs when running 'make check'
+
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -54,12 +54,11 @@
+ src/ctemplate/per_expand_data.h.in \
+ src/ctemplate/str_ref.h.in
+
+-docdir = $(prefix)/share/doc/$(PACKAGE)-$(VERSION)
+ ## This is for HTML and other documentation you want to install.
+ ## Add your documentation files (in doc/) in addition to these
+ ## top-level boilerplate files. Also add a TODO file if you have one.
+-dist_doc_DATA = AUTHORS COPYING ChangeLog INSTALL NEWS README README_windows.txt \
+- doc/designstyle.css doc/index.html \
++dist_doc_DATA = AUTHORS ChangeLog NEWS README README_windows.txt
++dist_html_DATA = doc/designstyle.css doc/index.html \
+ doc/howto.html doc/guide.html doc/reference.html \
+ doc/tips.html doc/example.html doc/auto_escape.html \
+ doc/xss_resources.html
+@@ -452,7 +451,7 @@
+
+ ## This should always include $(TESTS), but may also include other
+ ## binaries that you compile but don't want automatically installed.
+-noinst_PROGRAMS = $(TESTS)
++check_PROGRAMS = $(TESTS)
+
+ rpm: dist-gzip packages/rpm.sh packages/rpm/rpm.spec
+ @cd packages && ./rpm.sh ${PACKAGE} ${VERSION}
diff --git a/dev-cpp/ctemplate/metadata.xml b/dev-cpp/ctemplate/metadata.xml
new file mode 100644
index 000000000000..02bed0f21004
--- /dev/null
+++ b/dev-cpp/ctemplate/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="google-code">google-ctemplate</remote-id>
+ <remote-id type="github">olafvdspek/ctemplate</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/eigen/Manifest b/dev-cpp/eigen/Manifest
new file mode 100644
index 000000000000..c2b3014121da
--- /dev/null
+++ b/dev-cpp/eigen/Manifest
@@ -0,0 +1,19 @@
+AUX eigen-3.2.7-adaolc-backport.patch 1192 SHA256 84c6334cfc227d840e6a0c6a25ccbde3bdda4f078c5757b80f5fc19e33b1df5b SHA512 49aa6b1e85572d6a589cf44e21367e6e107bec3721bca50ce7477eb81d39fa43b68d67e28890a933f34aa7abdbb3a6e09eb3519c03b734875c7a4ad8ed0f8b45 WHIRLPOOL c2f52f9cc997cbc750d6ad904a56f5026d15491c967b6739a5c32d3c24e96b58ebe5b8cf4dcf53b9682fd9a9c3cf47e260c49715d8a7965663742db8ca175a82
+AUX eigen-3.2.7-pastix-5.2-backport.patch 1893 SHA256 37398e62c8b661651154d6a33ee2f6959664bb3c0027f3313eebe3881deb90ff SHA512 8d5a05dc707c08161895fc566b94b38d8e190869178f1e89a616062e81f2c1e8b4b05461b3e962671f5338b14bec474ff539da054f22af74c53187e0194aeee1 WHIRLPOOL c3e7ed5cb54cfee7a7931709f10a0a8809f6b6eea63d37fcd8d31ad956bd7393c521cc09f301d5910ca125eff76532e0d6fa8310e286b02516f33b975b98b86c
+DIST eigen-2.0.17.tar.bz2 367890 SHA256 7255e856ed367ce6e6e2d4153b0e4e753c8b8d36918bf440dd34ad56aff09960 SHA512 8fa0e4507864f61c30de14e3b29d963eb8b777d1a6bb04192d53e1f4c9db323b9fab2ddcedb63bf2af243fe0e26dcd717e97eb72216b6a1d444e455520192c72 WHIRLPOOL d80f12b378e23b758e4dbd173b87bed93bc42a97f2541b653b4373ea6ce0803bd712de00cf5a014a72cd439bb3ad10fd24b2ef8982975e044ff4d7bb2b63f585
+DIST eigen-3.2.10.tar.bz2 1168527 SHA256 760e6656426fde71cc48586c971390816f456d30f0b5d7d4ad5274d8d2cb0a6d SHA512 413c01a5b1b5d2e4366bc9289b1d613b21157e702b1c0d544e41ba5726acfbe0b60921ded37926010e9ce3642939e3ad39038e053d392b90a7a6302955ec5058 WHIRLPOOL f8d6498ab32197e0193ef7f9bae3f360f2a4cc321c34c90d2b72347ca5fd47a028fdc120dafd663520583ef471b4d756ab5cedea4f6d5344e76991a7afe4779b
+DIST eigen-3.2.8.tar.bz2 1161201 SHA256 722a63d672b70f39c271c5e2a4a43ba14d12015674331790414fcb167c357e55 SHA512 53c27ba530c985dfef52188e03273eeef33abbc67e3f150cacd3371c8b9ddbd399228730595821c4c56c061d109cf509266c1dab2b8a7c730902cbd6fb18c100 WHIRLPOOL 75e54f5620299f49a540483b0b4163e3cf6c48695f30f5e258343925cb488c3915588862a3fbe2341b5dbe17ea20756409265000f19ea2f45e7706837cb2488a
+DIST eigen-3.2.9.tar.bz2 1163762 SHA256 4d1e036ec1ed4f4805d5c6752b76072d67538889f4003fadf2f6e00a825845ff SHA512 2734ce70e0b04dc5839715a3cc9b8f90e05b341cfca42a7d586df213a9a14fe5642c76ccf36c16d020ae167c0d6e4d5cc306f0b3bf1f519c58372b0736ca7e63 WHIRLPOOL 7caba7b0676bc5dc203c8d8b5f57fc3a31a95171ddbb63b21ba8c84e58e5c5fde242d232299183e41886e970c3ea84bce821d506b6c32526ae44703ee3a599f9
+DIST eigen-3.3.1.tar.bz2 1638315 SHA256 a0b4cebaabd8f371d1b364f9723585fbcc7c9640ca60273b99835e6cf115f056 SHA512 d679bc04279bad351a35caeb04c4a95ebdd7d69153209573603e0c4c1d15b0c4d23d74f8651928ad04d7f03ad132fa7184d662801be75f58be38fd78802c7724 WHIRLPOOL abbd43be2121aa43192b007f9ed3471fe163fbe71a41a0c0ef61308e96e7c52767c1900dca29b855c8358fc0390630f9bb0deddfb0c951782cbd5499dc53103f
+DIST eigen-3.3.2.tar.bz2 1639615 SHA256 3e1fa6e8c45635938193f84fee6c35a87fac26ee7c39c68c230e5080c4a8fe98 SHA512 a1e1894eba8139a52a5cae33cd880e886352bed11af39a997ba65b0cd24f76c275ea54381f37db10dc54db4257c9485e7f8692c9f27a25be08f0fe1c03290d0a WHIRLPOOL ecf12c5780830ee133e477b9805dbbff6b933c815dd65242404366a013152ad4dfbf829f5a33692e97f0654e598ddcc06c0b8cd7d125dcf80644437a7016b720
+DIST eigen-3.3.3.tar.bz2 1642001 SHA256 a4143fc45e4454b4b98fcea3516b3a79b8cdb3bc7fadf996d088c6a0d805fea1 SHA512 bb5a8b761371e516f0a344a7c9f6e369e21c2907c8548227933ca6010fc607a66c8d6ff7c41b1aec3dea7d482ce8c2a09e38ae5c7a2c5b16bdd8007e7a81ecc3 WHIRLPOOL 4394f0d8f98dafbf913dc8c81e11935300bde458e9d2332a3eb35bca3930b76813a343da1c566a4c374d3d5f92aff5615c151935e29c783c71ae09e7088d2b2d
+EBUILD eigen-2.0.17.ebuild 1356 SHA256 d28de3b4523d5dd54d9da844a3c6adbe663990b573c1a0cec27bc80c0797e13c SHA512 142e42c213ddd740d7e43e91dbf9ffb957f379fbf996e3f33b3d4d2050ea5b3d67d09d5180364c37eb1da583ba5634206aaa6da0063a64f8c29b847d8a73cce4 WHIRLPOOL 1a39378d6271aa425132e25327ce388a42e852a099b15fad262c84298db17a107698268f04dd401898fa328be049f476c37e75e52c2fc9f23a7bb14d4afbf50f
+EBUILD eigen-3.2.10.ebuild 2496 SHA256 b8a1fb109d407be36277319288071a7e9cb9f7238211a0fe8c267d7edebf3601 SHA512 e88939a7950770e6a1c0d712bcee12ebfe4ccdd64670d4aead41a835ca9fd8968bc01832eb30858136339eb331428de485dc534502cf840636e340e544786f61 WHIRLPOOL 5a3b54a886b84b9c9c3cda67de6dcf1add0c92a82902fc5f2b0017f9a373f97d5423edcfc8eaad35de2b1f2147f3521c621dd94107b59f0f58361a96c3fc4d46
+EBUILD eigen-3.2.8-r2.ebuild 2546 SHA256 29f268320fff60a1d5009cf169025cf7db3bebf94aa34ff80179bda206d42049 SHA512 b6879c780252842d486ee347bdaea5fc77e7f7ec98c10cb8f6d0060145a607fe3486daaf5102aed99f221b20a05a1caba9c0c8fe066a13ff68f10f638cb16bc0 WHIRLPOOL 0b43b86ae58fa5e579f855401cdeb49d43b7cd5926f671a2e7628862861abe1e665a29ee08196106ab720c96c2210bde2b98f5174b17418aa186e74832ddd655
+EBUILD eigen-3.2.9.ebuild 2496 SHA256 b8a1fb109d407be36277319288071a7e9cb9f7238211a0fe8c267d7edebf3601 SHA512 e88939a7950770e6a1c0d712bcee12ebfe4ccdd64670d4aead41a835ca9fd8968bc01832eb30858136339eb331428de485dc534502cf840636e340e544786f61 WHIRLPOOL 5a3b54a886b84b9c9c3cda67de6dcf1add0c92a82902fc5f2b0017f9a373f97d5423edcfc8eaad35de2b1f2147f3521c621dd94107b59f0f58361a96c3fc4d46
+EBUILD eigen-3.3.1.ebuild 2814 SHA256 268c68b999ff12e1bae2bea05bb3599216be65c98a42ceef963de9ed3673d8c8 SHA512 641fbb9f87dba22ebea45f1b93054619977e6a0bdd29d15046a8323280d66902e96b308c368830c13900bc4e2e37fea377664dcc13bddd35eb17ce61a4f05c38 WHIRLPOOL 73913b21fd8741d70c76846b509cf11eb8ca636411cbf00c1ea0b17aac9a97ddb59173cb0942c15be02f933a48e3b62b310649f774b279283ecaf42d572bb511
+EBUILD eigen-3.3.2.ebuild 2814 SHA256 268c68b999ff12e1bae2bea05bb3599216be65c98a42ceef963de9ed3673d8c8 SHA512 641fbb9f87dba22ebea45f1b93054619977e6a0bdd29d15046a8323280d66902e96b308c368830c13900bc4e2e37fea377664dcc13bddd35eb17ce61a4f05c38 WHIRLPOOL 73913b21fd8741d70c76846b509cf11eb8ca636411cbf00c1ea0b17aac9a97ddb59173cb0942c15be02f933a48e3b62b310649f774b279283ecaf42d572bb511
+EBUILD eigen-3.3.3.ebuild 2710 SHA256 39117cc01766eea27efd51a907cb7de5660cc5ed7330cd33c1ca9f67ad67eab0 SHA512 4f1f27d2408568b5d68c5dec8814589378ecd610b0e94f5dfe904dc7616aba7186711896c9e1e33046079e25fb3302b302816426f9254616e2f733fa8cd191c7 WHIRLPOOL 1518581a96c1199c0ba6d9539ff153ce857d983771ac81e05933cc0e9951b33a48546e2ad6d4034794473078dc93bb6519e71fa1e13dda8afea1e259e52a194d
+MISC ChangeLog 6521 SHA256 d3ee49273d81c3c6b2bcb4ec891b8a1088bccaee60dbee866f6ebbac8103687c SHA512 5fb93fa697193a83de61cf419806f4d608b1e2f34e962897fa42ef73bcdc611d30658baa952b6bf2405483298427365a27102a3dbe4bdec92d5db04d6844e93f WHIRLPOOL 264f93070cc66451aba1666df622bc37ac3085718aff741743315eaa7d2c862419fc317dc0e6da18dd9940f01370ecc754c88abd96cc9b7a030ed4abe6675009
+MISC ChangeLog-2015 11211 SHA256 7b81a1723a5ebeaa300f3951ec376856a35ba93e1aecda813b2042dea4c40196 SHA512 4f3af9be28b24401e4e18bd36fbf694bd3a5371526668b7b9650e8aad61cb03ab356e8628f3b1a0f5ba765c0accbb9fad9463f364d2c718eeed8c2d7a13659f0 WHIRLPOOL 319f8560a4477d4165e4b65ede6acd648986cc35d665dcbf298aa2b3173098d64a1cd9b278d4adf452455d88dfcf8267315bd5cb773a7bf4d9c917cb758f70b2
+MISC metadata.xml 1021 SHA256 13f69160f758372320f929a14d9b5d63a61b281f10c3f184bd091e966a833ba0 SHA512 80fa38e69adebe7ef6d54681bcba8ac1b05f60d65850292bfd7fae148572a1f954a3890d5d7e22046888043e39784c810069538a52d85da53516176bfefe9317 WHIRLPOOL e0ce57572b3cccc20d22a940b324788a2b35300dfac9fd0eec4e48afb3e0411f137bce365d1b4306aac9aa303569814e224d08abe34bc7edc47802e7a3d8f519
diff --git a/dev-cpp/eigen/eigen-2.0.17.ebuild b/dev-cpp/eigen/eigen-2.0.17.ebuild
new file mode 100644
index 000000000000..842c54187eb2
--- /dev/null
+++ b/dev-cpp/eigen/eigen-2.0.17.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils
+
+DESCRIPTION="C++ template library for linear algebra"
+HOMEPAGE="http://eigen.tuxfamily.org/"
+SRC_URI="https://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="2"
+KEYWORDS="alpha amd64 ~arm ~hppa ia64 ppc ppc64 sparc x86 ~amd64-fbsd ~amd64-linux ~x86-linux"
+IUSE="debug doc examples test"
+# bugs 426236, 455460, 467288
+RESTRICT="test"
+
+RDEPEND="
+ examples? (
+ dev-qt/qtgui:4
+ dev-qt/qtopengl:4
+ )
+ !dev-cpp/eigen:0"
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen )"
+
+src_unpack() {
+ unpack ${A}
+ mv ${PN}* ${P} || die
+}
+
+src_configure() {
+ # benchmarks (BTL) brings up a damn load of external deps including fortran
+ # library hangs up complete compilation proccess, test later
+ local mycmakeargs=(
+ -DEIGEN_BUILD_LIB=OFF
+ -DEIGEN_BUILD_BTL=OFF
+ -DEIGEN_BUILD_PKGCONFIG=ON
+ -DEIGEN_BUILD_DEMOS=$(usex examples)
+ -DEIGEN_BUILD_TESTS=$(usex test)
+ )
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile -j1
+
+ if use doc; then
+ cmake-utils_src_compile -j1 doc
+ HTML_DOCS=( "${BUILD_DIR}"/html/. )
+ fi
+}
+
+src_install() {
+ cmake-utils_src_install -j1
+
+ if use examples; then
+ cd "${BUILD_DIR}"/demos || die
+ dobin mandelbrot/mandelbrot opengl/quaternion_demo
+ fi
+}
diff --git a/dev-cpp/eigen/eigen-3.2.10.ebuild b/dev-cpp/eigen/eigen-3.2.10.ebuild
new file mode 100644
index 000000000000..08bc461b1359
--- /dev/null
+++ b/dev-cpp/eigen/eigen-3.2.10.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+FORTRAN_NEEDED="test"
+
+inherit cmake-utils fortran-2
+
+DESCRIPTION="C++ template library for linear algebra"
+HOMEPAGE="http://eigen.tuxfamily.org/"
+SRC_URI="https://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="LGPL-2 GPL-3"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="altivec debug doc openmp test"
+IUSE+=" cpu_flags_x86_sse2"
+IUSE+=" cpu_flags_x86_sse3"
+IUSE+=" cpu_flags_x86_sse4_1"
+IUSE+=" cpu_flags_x86_sse4_2"
+IUSE+=" cpu_flags_x86_ssse3"
+#IUSE+=" cpu_flags_x86_x87"
+
+RDEPEND="!dev-cpp/eigen:0"
+DEPEND="
+ doc? ( app-doc/doxygen[dot,latex] )
+ test? (
+ dev-libs/gmp:0
+ dev-libs/mpfr:0
+ media-libs/freeglut
+ media-libs/glew
+ sci-libs/adolc
+ sci-libs/cholmod
+ sci-libs/fftw:3.0
+ sci-libs/pastix
+ sci-libs/umfpack
+ sci-libs/scotch
+ sci-libs/spqr
+ sci-libs/superlu
+ dev-qt/qtcore:4
+ virtual/opengl
+ virtual/pkgconfig
+ )
+ "
+# Missing:
+# METIS-5
+# GOOGLEHASH
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.2.7-adaolc-backport.patch
+)
+
+src_unpack() {
+ default
+ mv ${PN}* ${P} || die
+}
+
+src_prepare() {
+ sed \
+ -e 's:-g2::g' \
+ -i cmake/EigenConfigureTesting.cmake || die
+
+ sed -i CMakeLists.txt \
+ -e "/add_subdirectory(demos/d" \
+ || die "sed disable unused bundles failed"
+
+ if ! use test; then
+ sed -i CMakeLists.txt \
+ -e "/add_subdirectory(blas/d" \
+ -e "/add_subdirectory(lapack/d" \
+ || die "sed disable unused bundles failed"
+ fi
+
+ sed -i -e "/Unknown build type/d" CMakeLists.txt || die
+
+ cmake-utils_src_prepare
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ use doc && cmake-utils_src_compile doc
+}
+
+src_test() {
+ local mycmakeargs=(
+ -DEIGEN_BUILD_TESTS=ON
+ -DEIGEN_TEST_ALTIVEC="$(usex altivec)"
+ -DEIGEN_TEST_OPENMP="$(usex openmp)"
+ -DEIGEN_TEST_SSE2="$(usex cpu_flags_x86_sse2)"
+ -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)"
+ -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)"
+ -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)"
+ -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)"
+# -DEIGEN_TEST_X87="$(usex cpu_flags_x86_x87)"
+ )
+ cmake-utils_src_configure
+ cmake-utils_src_compile blas
+ cmake-utils_src_compile buildtests
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+ use doc && dodoc -r "${BUILD_DIR}"/doc/html
+
+ # Debian installs it and some projects started using it.
+ insinto /usr/share/cmake/Modules/
+ doins "${S}/cmake/FindEigen3.cmake"
+}
diff --git a/dev-cpp/eigen/eigen-3.2.8-r2.ebuild b/dev-cpp/eigen/eigen-3.2.8-r2.ebuild
new file mode 100644
index 000000000000..8873a615661f
--- /dev/null
+++ b/dev-cpp/eigen/eigen-3.2.8-r2.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+FORTRAN_NEEDED="test"
+
+inherit cmake-utils fortran-2
+
+DESCRIPTION="C++ template library for linear algebra"
+HOMEPAGE="http://eigen.tuxfamily.org/"
+SRC_URI="https://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="LGPL-2 GPL-3"
+SLOT="3"
+KEYWORDS="~alpha amd64 ~arm ~ia64 ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux"
+IUSE="altivec debug doc openmp test"
+IUSE+=" cpu_flags_x86_sse2"
+IUSE+=" cpu_flags_x86_sse3"
+IUSE+=" cpu_flags_x86_sse4_1"
+IUSE+=" cpu_flags_x86_sse4_2"
+IUSE+=" cpu_flags_x86_ssse3"
+#IUSE+=" cpu_flags_x86_x87"
+
+RDEPEND="!dev-cpp/eigen:0"
+DEPEND="
+ doc? ( app-doc/doxygen[dot,latex] )
+ test? (
+ dev-libs/gmp:0
+ dev-libs/mpfr:0
+ media-libs/freeglut
+ media-libs/glew
+ sci-libs/adolc
+ sci-libs/cholmod
+ sci-libs/fftw:3.0
+ sci-libs/pastix
+ sci-libs/umfpack
+ sci-libs/scotch
+ sci-libs/spqr
+ sci-libs/superlu
+ dev-qt/qtcore:4
+ virtual/opengl
+ virtual/pkgconfig
+ )
+ "
+# Missing:
+# METIS-5
+# GOOGLEHASH
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.2.7-pastix-5.2-backport.patch
+ "${FILESDIR}"/${PN}-3.2.7-adaolc-backport.patch
+)
+
+src_unpack() {
+ default
+ mv ${PN}* ${P} || die
+}
+
+src_prepare() {
+ sed \
+ -e 's:-g2::g' \
+ -i cmake/EigenConfigureTesting.cmake || die
+
+ sed -i CMakeLists.txt \
+ -e "/add_subdirectory(demos/d" \
+ || die "sed disable unused bundles failed"
+
+ if ! use test; then
+ sed -i CMakeLists.txt \
+ -e "/add_subdirectory(blas/d" \
+ -e "/add_subdirectory(lapack/d" \
+ || die "sed disable unused bundles failed"
+ fi
+
+ sed -i -e "/Unknown build type/d" CMakeLists.txt || die
+
+ cmake-utils_src_prepare
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ use doc && cmake-utils_src_compile doc
+}
+
+src_test() {
+ local mycmakeargs=(
+ -DEIGEN_BUILD_TESTS=ON
+ -DEIGEN_TEST_ALTIVEC="$(usex altivec)"
+ -DEIGEN_TEST_OPENMP="$(usex openmp)"
+ -DEIGEN_TEST_SSE2="$(usex cpu_flags_x86_sse2)"
+ -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)"
+ -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)"
+ -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)"
+ -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)"
+# -DEIGEN_TEST_X87="$(usex cpu_flags_x86_x87)"
+ )
+ cmake-utils_src_configure
+ cmake-utils_src_compile blas
+ cmake-utils_src_compile buildtests
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+ use doc && dodoc -r "${BUILD_DIR}"/doc/html
+
+ # Debian installs it and some projects started using it.
+ insinto /usr/share/cmake/Modules/
+ doins "${S}/cmake/FindEigen3.cmake"
+}
diff --git a/dev-cpp/eigen/eigen-3.2.9.ebuild b/dev-cpp/eigen/eigen-3.2.9.ebuild
new file mode 100644
index 000000000000..08bc461b1359
--- /dev/null
+++ b/dev-cpp/eigen/eigen-3.2.9.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+FORTRAN_NEEDED="test"
+
+inherit cmake-utils fortran-2
+
+DESCRIPTION="C++ template library for linear algebra"
+HOMEPAGE="http://eigen.tuxfamily.org/"
+SRC_URI="https://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="LGPL-2 GPL-3"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="altivec debug doc openmp test"
+IUSE+=" cpu_flags_x86_sse2"
+IUSE+=" cpu_flags_x86_sse3"
+IUSE+=" cpu_flags_x86_sse4_1"
+IUSE+=" cpu_flags_x86_sse4_2"
+IUSE+=" cpu_flags_x86_ssse3"
+#IUSE+=" cpu_flags_x86_x87"
+
+RDEPEND="!dev-cpp/eigen:0"
+DEPEND="
+ doc? ( app-doc/doxygen[dot,latex] )
+ test? (
+ dev-libs/gmp:0
+ dev-libs/mpfr:0
+ media-libs/freeglut
+ media-libs/glew
+ sci-libs/adolc
+ sci-libs/cholmod
+ sci-libs/fftw:3.0
+ sci-libs/pastix
+ sci-libs/umfpack
+ sci-libs/scotch
+ sci-libs/spqr
+ sci-libs/superlu
+ dev-qt/qtcore:4
+ virtual/opengl
+ virtual/pkgconfig
+ )
+ "
+# Missing:
+# METIS-5
+# GOOGLEHASH
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.2.7-adaolc-backport.patch
+)
+
+src_unpack() {
+ default
+ mv ${PN}* ${P} || die
+}
+
+src_prepare() {
+ sed \
+ -e 's:-g2::g' \
+ -i cmake/EigenConfigureTesting.cmake || die
+
+ sed -i CMakeLists.txt \
+ -e "/add_subdirectory(demos/d" \
+ || die "sed disable unused bundles failed"
+
+ if ! use test; then
+ sed -i CMakeLists.txt \
+ -e "/add_subdirectory(blas/d" \
+ -e "/add_subdirectory(lapack/d" \
+ || die "sed disable unused bundles failed"
+ fi
+
+ sed -i -e "/Unknown build type/d" CMakeLists.txt || die
+
+ cmake-utils_src_prepare
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ use doc && cmake-utils_src_compile doc
+}
+
+src_test() {
+ local mycmakeargs=(
+ -DEIGEN_BUILD_TESTS=ON
+ -DEIGEN_TEST_ALTIVEC="$(usex altivec)"
+ -DEIGEN_TEST_OPENMP="$(usex openmp)"
+ -DEIGEN_TEST_SSE2="$(usex cpu_flags_x86_sse2)"
+ -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)"
+ -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)"
+ -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)"
+ -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)"
+# -DEIGEN_TEST_X87="$(usex cpu_flags_x86_x87)"
+ )
+ cmake-utils_src_configure
+ cmake-utils_src_compile blas
+ cmake-utils_src_compile buildtests
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+ use doc && dodoc -r "${BUILD_DIR}"/doc/html
+
+ # Debian installs it and some projects started using it.
+ insinto /usr/share/cmake/Modules/
+ doins "${S}/cmake/FindEigen3.cmake"
+}
diff --git a/dev-cpp/eigen/eigen-3.3.1.ebuild b/dev-cpp/eigen/eigen-3.3.1.ebuild
new file mode 100644
index 000000000000..62595e32d0d3
--- /dev/null
+++ b/dev-cpp/eigen/eigen-3.3.1.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+FORTRAN_NEEDED="test"
+
+inherit cmake-utils cuda fortran-2
+
+DESCRIPTION="C++ template library for linear algebra"
+HOMEPAGE="http://eigen.tuxfamily.org/"
+SRC_URI="https://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="LGPL-2 GPL-3"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="altivec c++11 cuda debug doc neon openmp test" #zvector vsx
+
+IUSE_CPU_FLAGS=" avx avx2 f16c fma3 sse2 sse3 sse4_1 sse4_2 ssse3" #x87
+IUSE+=" ${IUSE_CPU_FLAGS// / cpu_flags_x86_}"
+
+RDEPEND="!dev-cpp/eigen:0"
+DEPEND="
+ doc? ( app-doc/doxygen[dot,latex] )
+ test? (
+ dev-libs/gmp:0
+ dev-libs/mpfr:0
+ media-libs/freeglut
+ media-libs/glew
+ sci-libs/adolc
+ sci-libs/cholmod
+ sci-libs/fftw:3.0
+ sci-libs/pastix
+ sci-libs/umfpack
+ sci-libs/scotch
+ sci-libs/spqr
+ sci-libs/superlu
+ dev-qt/qtcore:4
+ virtual/opengl
+ virtual/pkgconfig
+ cuda? ( dev-util/nvidia-cuda-toolkit )
+ )
+"
+# Missing:
+# METIS-5
+# GOOGLEHASH
+
+src_unpack() {
+ default
+ mv ${PN}* ${P} || die
+}
+
+src_prepare() {
+ sed \
+ -e 's:-g2::g' \
+ -i cmake/EigenConfigureTesting.cmake || die
+
+ sed -i CMakeLists.txt \
+ -e "/add_subdirectory(demos/d" \
+ || die "sed disable unused bundles failed"
+
+ if ! use test; then
+ sed -i CMakeLists.txt \
+ -e "/add_subdirectory(test/d" \
+ || die "sed disable tests failed"
+
+ sed -i CMakeLists.txt \
+ -e "/add_subdirectory(blas/d" \
+ -e "/add_subdirectory(lapack/d" \
+ || die "sed disable unused bundles failed"
+ fi
+
+ sed -i -e "/Unknown build type/d" CMakeLists.txt || die
+
+ use cuda && cuda_src_prepare
+
+ cmake-utils_src_prepare
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ use doc && cmake-utils_src_compile doc
+}
+
+src_test() {
+ local mycmakeargs=(
+ -DEIGEN_TEST_ALTIVEC="$(usex altivec)"
+ -DEIGEN_TEST_CXX11="$(usex c++11)"
+ -DEIGEN_TEST_CUDA="$(usex cuda)"
+ -DEIGEN_TEST_OPENMP="$(usex openmp)"
+ -DEIGEN_TEST_AVX="$(usex cpu_flags_x86_avx)"
+ -DEIGEN_TEST_AVX512="$(usex cpu_flags_x86_avx2)"
+ -DEIGEN_TEST_F16C="$(usex cpu_flags_x86_f16c)"
+ -DEIGEN_TEST_FMA="$(usex cpu_flags_x86_fma3)"
+ -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)"
+ -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)"
+ -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)"
+ -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)"
+ -DEIGEN_TEST_NEON64="$(usex neon)"
+# -DEIGEN_TEST_X87="$(usex cpu_flags_x86_x87)"
+ )
+ cmake-utils_src_configure
+ cmake-utils_src_compile blas
+ cmake-utils_src_compile buildtests
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+ use doc && dodoc -r "${BUILD_DIR}"/doc/html
+
+ # Debian installs it and some projects started using it.
+ insinto /usr/share/cmake/Modules/
+ doins "${S}/cmake/FindEigen3.cmake"
+}
diff --git a/dev-cpp/eigen/eigen-3.3.2.ebuild b/dev-cpp/eigen/eigen-3.3.2.ebuild
new file mode 100644
index 000000000000..62595e32d0d3
--- /dev/null
+++ b/dev-cpp/eigen/eigen-3.3.2.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+FORTRAN_NEEDED="test"
+
+inherit cmake-utils cuda fortran-2
+
+DESCRIPTION="C++ template library for linear algebra"
+HOMEPAGE="http://eigen.tuxfamily.org/"
+SRC_URI="https://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="LGPL-2 GPL-3"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="altivec c++11 cuda debug doc neon openmp test" #zvector vsx
+
+IUSE_CPU_FLAGS=" avx avx2 f16c fma3 sse2 sse3 sse4_1 sse4_2 ssse3" #x87
+IUSE+=" ${IUSE_CPU_FLAGS// / cpu_flags_x86_}"
+
+RDEPEND="!dev-cpp/eigen:0"
+DEPEND="
+ doc? ( app-doc/doxygen[dot,latex] )
+ test? (
+ dev-libs/gmp:0
+ dev-libs/mpfr:0
+ media-libs/freeglut
+ media-libs/glew
+ sci-libs/adolc
+ sci-libs/cholmod
+ sci-libs/fftw:3.0
+ sci-libs/pastix
+ sci-libs/umfpack
+ sci-libs/scotch
+ sci-libs/spqr
+ sci-libs/superlu
+ dev-qt/qtcore:4
+ virtual/opengl
+ virtual/pkgconfig
+ cuda? ( dev-util/nvidia-cuda-toolkit )
+ )
+"
+# Missing:
+# METIS-5
+# GOOGLEHASH
+
+src_unpack() {
+ default
+ mv ${PN}* ${P} || die
+}
+
+src_prepare() {
+ sed \
+ -e 's:-g2::g' \
+ -i cmake/EigenConfigureTesting.cmake || die
+
+ sed -i CMakeLists.txt \
+ -e "/add_subdirectory(demos/d" \
+ || die "sed disable unused bundles failed"
+
+ if ! use test; then
+ sed -i CMakeLists.txt \
+ -e "/add_subdirectory(test/d" \
+ || die "sed disable tests failed"
+
+ sed -i CMakeLists.txt \
+ -e "/add_subdirectory(blas/d" \
+ -e "/add_subdirectory(lapack/d" \
+ || die "sed disable unused bundles failed"
+ fi
+
+ sed -i -e "/Unknown build type/d" CMakeLists.txt || die
+
+ use cuda && cuda_src_prepare
+
+ cmake-utils_src_prepare
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ use doc && cmake-utils_src_compile doc
+}
+
+src_test() {
+ local mycmakeargs=(
+ -DEIGEN_TEST_ALTIVEC="$(usex altivec)"
+ -DEIGEN_TEST_CXX11="$(usex c++11)"
+ -DEIGEN_TEST_CUDA="$(usex cuda)"
+ -DEIGEN_TEST_OPENMP="$(usex openmp)"
+ -DEIGEN_TEST_AVX="$(usex cpu_flags_x86_avx)"
+ -DEIGEN_TEST_AVX512="$(usex cpu_flags_x86_avx2)"
+ -DEIGEN_TEST_F16C="$(usex cpu_flags_x86_f16c)"
+ -DEIGEN_TEST_FMA="$(usex cpu_flags_x86_fma3)"
+ -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)"
+ -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)"
+ -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)"
+ -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)"
+ -DEIGEN_TEST_NEON64="$(usex neon)"
+# -DEIGEN_TEST_X87="$(usex cpu_flags_x86_x87)"
+ )
+ cmake-utils_src_configure
+ cmake-utils_src_compile blas
+ cmake-utils_src_compile buildtests
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+ use doc && dodoc -r "${BUILD_DIR}"/doc/html
+
+ # Debian installs it and some projects started using it.
+ insinto /usr/share/cmake/Modules/
+ doins "${S}/cmake/FindEigen3.cmake"
+}
diff --git a/dev-cpp/eigen/eigen-3.3.3.ebuild b/dev-cpp/eigen/eigen-3.3.3.ebuild
new file mode 100644
index 000000000000..56cab46ed3bc
--- /dev/null
+++ b/dev-cpp/eigen/eigen-3.3.3.ebuild
@@ -0,0 +1,111 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+FORTRAN_NEEDED="test"
+
+inherit cmake-utils cuda fortran-2
+
+DESCRIPTION="C++ template library for linear algebra"
+HOMEPAGE="http://eigen.tuxfamily.org/"
+SRC_URI="https://bitbucket.org/eigen/eigen/get/${PV}.tar.bz2 -> ${P}.tar.bz2"
+
+LICENSE="MPL-2.0"
+SLOT="3"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="altivec c++11 cuda debug doc neon openmp test" #zvector vsx
+
+IUSE_CPU_FLAGS=" avx avx2 f16c fma3 sse2 sse3 sse4_1 sse4_2 ssse3" #x87
+IUSE+=" ${IUSE_CPU_FLAGS// / cpu_flags_x86_}"
+
+RDEPEND="!dev-cpp/eigen:0"
+DEPEND="
+ doc? ( app-doc/doxygen[dot,latex] )
+ test? (
+ dev-libs/gmp:0
+ dev-libs/mpfr:0
+ media-libs/freeglut
+ media-libs/glew
+ sci-libs/adolc[sparse]
+ sci-libs/cholmod
+ sci-libs/fftw:3.0
+ sci-libs/pastix
+ sci-libs/umfpack
+ sci-libs/scotch
+ sci-libs/spqr
+ sci-libs/superlu
+ dev-qt/qtcore:4
+ virtual/opengl
+ virtual/pkgconfig
+ cuda? ( dev-util/nvidia-cuda-toolkit )
+ )
+"
+# Missing:
+# METIS-5
+# GOOGLEHASH
+
+src_unpack() {
+ default
+ mv ${PN}* ${P} || die
+}
+
+src_prepare() {
+ sed -e 's:-g2::g' \
+ -i cmake/EigenConfigureTesting.cmake || die
+
+ sed -e "/add_subdirectory(demos/d" \
+ -i CMakeLists.txt || die
+
+ if ! use test; then
+ sed -e "/add_subdirectory(test/d" \
+ -i CMakeLists.txt || die
+
+ sed -e "/add_subdirectory(blas/d" \
+ -e "/add_subdirectory(lapack/d" \
+ -i CMakeLists.txt || die
+ fi
+ sed -e "/Unknown build type/d" \
+ -i CMakeLists.txt || die
+
+ use cuda && cuda_src_prepare
+
+ cmake-utils_src_prepare
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ use doc && cmake-utils_src_compile doc
+}
+
+src_test() {
+ local mycmakeargs=(
+ -DEIGEN_TEST_ALTIVEC="$(usex altivec)"
+ -DEIGEN_TEST_CXX11="$(usex c++11)"
+ -DEIGEN_TEST_CUDA="$(usex cuda)"
+ -DEIGEN_TEST_OPENMP="$(usex openmp)"
+ -DEIGEN_TEST_AVX="$(usex cpu_flags_x86_avx)"
+ -DEIGEN_TEST_AVX512="$(usex cpu_flags_x86_avx2)"
+ -DEIGEN_TEST_F16C="$(usex cpu_flags_x86_f16c)"
+ -DEIGEN_TEST_FMA="$(usex cpu_flags_x86_fma3)"
+ -DEIGEN_TEST_SSE3="$(usex cpu_flags_x86_sse3)"
+ -DEIGEN_TEST_SSE4_1="$(usex cpu_flags_x86_sse4_1)"
+ -DEIGEN_TEST_SSE4_2="$(usex cpu_flags_x86_sse4_2)"
+ -DEIGEN_TEST_SSSE3="$(usex cpu_flags_x86_ssse3)"
+ -DEIGEN_TEST_NEON64="$(usex neon)"
+# -DEIGEN_TEST_X87="$(usex cpu_flags_x86_x87)"
+ )
+ cmake-utils_src_configure
+ cmake-utils_src_compile blas
+ cmake-utils_src_compile buildtests
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+ use doc && dodoc -r "${BUILD_DIR}"/doc/html
+
+ # Debian installs it and some projects started using it.
+ insinto /usr/share/cmake/Modules/
+ doins "${S}/cmake/FindEigen3.cmake"
+}
diff --git a/dev-cpp/eigen/files/eigen-3.2.7-adaolc-backport.patch b/dev-cpp/eigen/files/eigen-3.2.7-adaolc-backport.patch
new file mode 100644
index 000000000000..82547e11951a
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-3.2.7-adaolc-backport.patch
@@ -0,0 +1,40 @@
+# HG changeset patch
+# User Gael Guennebaud <g.gael@free.fr>
+# Date 1448895622 -3600
+# Node ID e515e2706d00294a5749db7832d10ea366b9389f
+# Parent eb4bf011a2ea5fc4ddb0aa5332d6e616198ed886
+Update ADOL-C support.
+
+diff --git a/unsupported/Eigen/AdolcForward b/unsupported/Eigen/AdolcForward
+--- a/unsupported/Eigen/AdolcForward
++++ b/unsupported/Eigen/AdolcForward
+@@ -25,7 +25,7 @@
+ #ifndef NUMBER_DIRECTIONS
+ # define NUMBER_DIRECTIONS 2
+ #endif
+-#include <adolc/adouble.h>
++#include <adolc/adtl.h>
+
+ // adolc defines some very stupid macros:
+ #if defined(malloc)
+diff --git a/unsupported/test/forward_adolc.cpp b/unsupported/test/forward_adolc.cpp
+--- a/unsupported/test/forward_adolc.cpp
++++ b/unsupported/test/forward_adolc.cpp
+@@ -13,8 +13,6 @@
+ #define NUMBER_DIRECTIONS 16
+ #include <unsupported/Eigen/AdolcForward>
+
+-int adtl::ADOLC_numDir;
+-
+ template<typename Vector>
+ EIGEN_DONT_INLINE typename Vector::Scalar foo(const Vector& p)
+ {
+@@ -123,7 +121,7 @@
+
+ void test_forward_adolc()
+ {
+- adtl::ADOLC_numDir = NUMBER_DIRECTIONS;
++ adtl::setNumDir(NUMBER_DIRECTIONS);
+
+ for(int i = 0; i < g_repeat; i++) {
+ CALL_SUBTEST(( adolc_forward_jacobian(TestFunc1<double,2,2>()) ));
diff --git a/dev-cpp/eigen/files/eigen-3.2.7-pastix-5.2-backport.patch b/dev-cpp/eigen/files/eigen-3.2.7-pastix-5.2-backport.patch
new file mode 100644
index 000000000000..fafaf3a68629
--- /dev/null
+++ b/dev-cpp/eigen/files/eigen-3.2.7-pastix-5.2-backport.patch
@@ -0,0 +1,42 @@
+# HG changeset patch
+# User Gael Guennebaud <g.gael@free.fr>
+# Date 1393589499 -3600
+# Node ID b88efb384b160880131ad17e39bb690719112bfa
+# Parent 576120ad694efe29b70999576964d3816288fb4e
+Fix PaStiX support for Pastix 5.2
+
+diff --git a/Eigen/src/PaStiXSupport/PaStiXSupport.h b/Eigen/src/PaStiXSupport/PaStiXSupport.h
+--- a/Eigen/src/PaStiXSupport/PaStiXSupport.h
++++ b/Eigen/src/PaStiXSupport/PaStiXSupport.h
+@@ -12,6 +12,14 @@
+
+ namespace Eigen {
+
++#if defined(DCOMPLEX)
++ #define PASTIX_COMPLEX COMPLEX
++ #define PASTIX_DCOMPLEX DCOMPLEX
++#else
++ #define PASTIX_COMPLEX std::complex<float>
++ #define PASTIX_DCOMPLEX std::complex<double>
++#endif
++
+ /** \ingroup PaStiXSupport_Module
+ * \brief Interface to the PaStix solver
+ *
+@@ -74,14 +82,14 @@
+ {
+ if (n == 0) { ptr = NULL; idx = NULL; vals = NULL; }
+ if (nbrhs == 0) {x = NULL; nbrhs=1;}
+- c_pastix(pastix_data, pastix_comm, n, ptr, idx, reinterpret_cast<COMPLEX*>(vals), perm, invp, reinterpret_cast<COMPLEX*>(x), nbrhs, iparm, dparm);
++ c_pastix(pastix_data, pastix_comm, n, ptr, idx, reinterpret_cast<PASTIX_COMPLEX*>(vals), perm, invp, reinterpret_cast<PASTIX_COMPLEX*>(x), nbrhs, iparm, dparm);
+ }
+
+ void eigen_pastix(pastix_data_t **pastix_data, int pastix_comm, int n, int *ptr, int *idx, std::complex<double> *vals, int *perm, int * invp, std::complex<double> *x, int nbrhs, int *iparm, double *dparm)
+ {
+ if (n == 0) { ptr = NULL; idx = NULL; vals = NULL; }
+ if (nbrhs == 0) {x = NULL; nbrhs=1;}
+- z_pastix(pastix_data, pastix_comm, n, ptr, idx, reinterpret_cast<DCOMPLEX*>(vals), perm, invp, reinterpret_cast<DCOMPLEX*>(x), nbrhs, iparm, dparm);
++ z_pastix(pastix_data, pastix_comm, n, ptr, idx, reinterpret_cast<PASTIX_DCOMPLEX*>(vals), perm, invp, reinterpret_cast<PASTIX_DCOMPLEX*>(x), nbrhs, iparm, dparm);
+ }
+
+ // Convert the matrix to Fortran-style Numbering
diff --git a/dev-cpp/eigen/metadata.xml b/dev-cpp/eigen/metadata.xml
new file mode 100644
index 000000000000..b81958c50e6c
--- /dev/null
+++ b/dev-cpp/eigen/metadata.xml
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci@gentoo.org</email>
+ <name>Gentoo Science Project</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>kde@gentoo.org</email>
+ <name>Gentoo KDE Project</name>
+ </maintainer>
+ <longdescription>
+ Eigen is a lightweight C++ template library for vector and matrix math,
+ a.k.a. linear algebra. Unlike most other linear algebra libraries, Eigen
+ focuses on the simple mathematical needs of applications: games and other
+ OpenGL apps, spreadsheets and other office apps, etc. Eigen is dedicated to
+ providing optimal speed with GCC.
+ </longdescription>
+ <use>
+ <flag name="c++11">Build using the C++11 standard</flag>
+ <flag name="cuda">Build with cuda support</flag>
+ <flag name="cpu_flags_x86_f16c">Take advantage of CPU feature f16c</flag>
+ </use>
+ <upstream>
+ <remote-id type="bitbucket">eigen/eigen</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/gccxml/Manifest b/dev-cpp/gccxml/Manifest
new file mode 100644
index 000000000000..1baba910c3f6
--- /dev/null
+++ b/dev-cpp/gccxml/Manifest
@@ -0,0 +1,5 @@
+DIST gccxml-0.9.0_pre20131217.tar.xz 8134060 SHA256 2e0c934ff627cfa5d875d4560922101ccb567e904e15cf5197f41aa7063ffdbf SHA512 3fedb2fb7ec8025921b4d416230acd8f5dcc01858089e12837d702bd4bec0f841ec23dfd949ae7ff42b559e5da1832bfc32ee24c1a4b3ff6004e73d49a1a81cf WHIRLPOOL a9a1b801ff8736a7bfd5e8a0036ea05d0c76c6a0b389c05639baea4e8affb65fcaba15cf909a286cb29ef9e9545593799fedefb77b96e8a65b755a8edb30c099
+EBUILD gccxml-0.9.0_pre20131217.ebuild 770 SHA256 41867084825e2719360bbc6e88f258d8360035dd175bd2df817baa8e6fe30393 SHA512 7c5900031a549c278d3c9f9a2f41e1c23c892951f2eedc077c62bbbf8b2faafac75d78f27f1534e96aa5077ae4526dfcc9322d02d6615c2230f7e5993a4f4683 WHIRLPOOL 36166e99f679e994ff59ec115e690bc2c57e5b839c26b9fe83ce811852770ae69f5977269f534cb8b64da29daf174851c6ac86a3c1845d4afd64564e3cd992b6
+MISC ChangeLog 2766 SHA256 c226aaeb2e75c2ab8786f5f2f9be7ae936e96e84df706f6c89831fd47ae5fa62 SHA512 8dbd76c78edb11eeb23ab0fe173ee5e37e3aba2b20ad66e2edc2b0d9e20220fef315df80912fa25579d3a24699027c40742999f4fa345d07ea5f66ee00c12e7a WHIRLPOOL 45ae80aab80f3cd20a00b739431d5416ffa16319830f2a9bd0de81a9e99808b73daa90674071e5f1ffa6111e13ae6ff6ca267486370bfbbf2f82922bdae22c40
+MISC ChangeLog-2015 5556 SHA256 8ef3f9112cb84c4da4a22abe4a9e849f8fe0536da1fa513d3df4ef9a76f57c85 SHA512 de07ffc4b2609336006c60b2fde3499f1cef2cb9ba23d7a5184fcf2df391f94f2bc0a8d9a9d64fd04328a478c8732c05e56643d85c73a3e28cb1edfbc607a013 WHIRLPOOL 6983bf94bc4af996061158874c3c4b926cb0a5212b08581c4e4a16ffb64f65a48bb410a29d2eddbec4d8be6a11a3c9f0c31c50fb615ad40990fe5d75f431965d
+MISC metadata.xml 249 SHA256 61486b4cff6de2a1836eafc04bbbbf33cdc826b48b6a39d61e802dd4b223a82b SHA512 0b2b2d015d6d3310efdedc20cd12cb2f587c105f1e84b243d3a7dc6337dde082c16683781eba9a0cb09341756f10f651579df35837ee232309a97017ec02cbee WHIRLPOOL 5a337f74ddddf4b9843f8b2950990f44f843627ae72b1dabf3b0ad09df9704bb96c0571af55fd754ddbf9e8bd77ff0ee9023126c717a5cf4553b5f1f8cede310
diff --git a/dev-cpp/gccxml/gccxml-0.9.0_pre20131217.ebuild b/dev-cpp/gccxml/gccxml-0.9.0_pre20131217.ebuild
new file mode 100644
index 000000000000..ddd2732740d1
--- /dev/null
+++ b/dev-cpp/gccxml/gccxml-0.9.0_pre20131217.ebuild
@@ -0,0 +1,33 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils flag-o-matic
+
+DESCRIPTION="XML output extension to GCC"
+HOMEPAGE="http://www.gccxml.org/"
+SRC_URI="https://dev.gentoo.org/~pinkbyte/distfiles/snapshots/${P}.tar.xz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~mips ppc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+
+src_prepare() {
+ # fix bug 549300 by restoring pre-GCC5 inline semantics
+ append-cflags -std=gnu89
+
+ # patch below taken from Debian
+ sed -i \
+ -e 's/xatexit.c//' \
+ GCC/libiberty/CMakeLists.txt || die "sed failed"
+
+ cmake-utils_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DGCCXML_DOC_DIR:STRING="share/doc/${PF}"
+ )
+ cmake-utils_src_configure
+}
diff --git a/dev-cpp/gccxml/metadata.xml b/dev-cpp/gccxml/metadata.xml
new file mode 100644
index 000000000000..d4905c84fc34
--- /dev/null
+++ b/dev-cpp/gccxml/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/gconfmm/Manifest b/dev-cpp/gconfmm/Manifest
new file mode 100644
index 000000000000..8a3c0adf0b87
--- /dev/null
+++ b/dev-cpp/gconfmm/Manifest
@@ -0,0 +1,5 @@
+DIST gconfmm-2.28.3.tar.bz2 471125 SHA256 a5e0092bb73371a3ca76b2ecae794778f3a9409056fee9b28ec1db072d8e6108 SHA512 0fd3a43373dfdf514eca61537c19dafd4ad582d2ec6bb325652766fba90ed723feff6daf93effcdf20f917c573131d58c16f1a826194f653864a701bb8a57097 WHIRLPOOL 361aeef2173cbc0f43efacf8b612f1a933e332e94f1b57d1039a67e08bd3757524b6d68347c136f650523b1a80e97267c60babed6e0caa158c8452be8c39db32
+EBUILD gconfmm-2.28.3-r1.ebuild 735 SHA256 2f249a81d0354a71748b509c09eea38317548d76d4f3a2cc88ccde523ff0d8fb SHA512 867de926057d389125f95b0924e09893c46539276e5a00e74e0723fa73a2282975389787e3117891fe3bce23a958b0a3c1af5ab79f41418ed044e62f4cb9c0a1 WHIRLPOOL 6aae9bab06b88e25fc68a362e9fa74167927082b9543701767d574af3754207a922ee3c9957e66ea7b05a5ada7a40edc8dc48f3f1e827c0b07eb14f39a866e5a
+MISC ChangeLog 3649 SHA256 f29d5ba50917acc38202952b50f76a9b84517420caf68ac42dc003154fa44df9 SHA512 1e27852c2f0256be20e122c79f393aad83685142fe62e48c03e8a683b0142540f7c8ef8d28368b8ef133c0b46314dbbb808e1b70ccf89228b1d777dd5cda7559 WHIRLPOOL 3fa2791c37856f3eee1148ea452e6e0b69c40c7b388fd4f193717c15c8c69f8c18fd61ff2a91cfe093d0012cb9527a7f4d920c10b738b6853728c12127987e07
+MISC ChangeLog-2015 12333 SHA256 87912f6193573b3ea7b70f41d3ed959937f4a79cd7f2aaf93c56344ba019bd70 SHA512 610fb34f0410b67bbfb1c274ada78db27e0267bf3d962a70dd34a081790a6a9b3a234d977ac423b86490aedac5fea3fa79523ef56cde91f751ea103f8a427ce1 WHIRLPOOL 99bd4626cf93c880a4a4e4af1a037fe89c6f6285316b390f64347aeae4baf2db96dd81c0e6aaa3b0567387eabb5771a6c77021992dd9f453a6d967f31ca2cd49
+MISC metadata.xml 249 SHA256 4505b0bfeadff287958620b7dc7b7209699065a8f17139a237a5dd409a726a97 SHA512 c40662134899a5c9f0369a1017806f35adf3280a0b3c91726f7a8ca6012a073a8b471583f5bfb6fe95faac1dcf607e8e2e43f8c91d48ec46f4a8824e2f551506 WHIRLPOOL 333a938ee1d2124595596c572697bf5ebad523a92ba12005cfb12e6bb6270881a94a911f0cc9c1cf2bb571559e8271e07dfd307dabe50058236dbe7103562b92
diff --git a/dev-cpp/gconfmm/gconfmm-2.28.3-r1.ebuild b/dev-cpp/gconfmm/gconfmm-2.28.3-r1.ebuild
new file mode 100644
index 000000000000..9f9202bdbd23
--- /dev/null
+++ b/dev-cpp/gconfmm/gconfmm-2.28.3-r1.ebuild
@@ -0,0 +1,40 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+GCONF_DEBUG="no"
+GNOME2_LA_PUNT="yes"
+GNOME_TARBALL_SUFFIX="bz2"
+
+inherit flag-o-matic gnome2
+
+DESCRIPTION="C++ bindings for GConf"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ia64 ppc ppc64 ~sh sparc x86 ~x86-fbsd"
+IUSE="doc"
+
+RDEPEND="
+ >=gnome-base/gconf-2.4:2
+ >=dev-cpp/glibmm-2.12:2[doc?]
+ >=dev-cpp/gtkmm-2.4:2.4
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+"
+
+src_configure() {
+ append-cxxflags -std=c++11 #568580
+ gnome2_src_configure \
+ $(use_enable doc documentation)
+}
+
+src_install() {
+ gnome2_src_install
+
+ if use doc ; then
+ dohtml -r docs/reference/html/*
+ fi
+}
diff --git a/dev-cpp/gconfmm/metadata.xml b/dev-cpp/gconfmm/metadata.xml
new file mode 100644
index 000000000000..39980802b1da
--- /dev/null
+++ b/dev-cpp/gconfmm/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/gflags/Manifest b/dev-cpp/gflags/Manifest
new file mode 100644
index 000000000000..97371e1d06f7
--- /dev/null
+++ b/dev-cpp/gflags/Manifest
@@ -0,0 +1,11 @@
+AUX gflags-2.1.1-libs.patch 1975 SHA256 0906b7e45563eddfe31b7ca1b4862f374c09342a320dbb313ec408a08e743d5f SHA512 8e75d43de9de8053de42573bd0f243b8060bb1f43f995fe555c0cb984bacddddbc670c9f17115f054e5a54bc52a7d3df20b39b03c3229bae397ad3dfbcf9a66c WHIRLPOOL 8d8e5b581edb0539d8d22c91af5deef204abb50ffb22f54c819f9ae177de66118275eb0a46b37098c426e701162b1ed30668b55d43de3959486c23a73f1ea020
+DIST gflags-2.1.1.tar.gz 102015 SHA256 432edece8102fc141c2e3381e2eb5eabb1ce7614851cc96bdec4715105086238 SHA512 18d1a0a1271f12f0e87447e3a9d6810f531f5b190d84274465add5a928c189caac911ec2592422895961ab3c0c7566ff50c0c22f71d185ac3413c54bdbfb00ef WHIRLPOOL 608dc62262d8b4a0451dd3493b02fd35ad5214f1793f173ca5d93e631e15b59cc4557b2a2f9f5e67f72c2ad0d6cd343648b113bf4701fd8f6c3f5d949ac41813
+DIST gflags-2.1.2.tar.gz 95716 SHA256 d8331bd0f7367c8afd5fcb5f5e85e96868a00fd24b7276fa5fcee1e5575c2662 SHA512 f636023c1150e4d536d2d472e40d643ff0b02d3c96d8cb7f31544df23e6255fa6c4fd927ef94a3660c250d3faeae7d8d78519fc5e856749a577347a78d9d9ab5 WHIRLPOOL 2b3bd528c0e2139042a239d50017d93637f5db7007adaa29d3ae3788e57219c8ae8931404ea95766e43d07f17cb9995954ab213b68699ec1de0d21b3b6f86066
+DIST gflags-2.2.0.tar.gz 96408 SHA256 466c36c6508a451734e4f4d76825cf9cd9b8716d2b70ef36479ae40f08271f88 SHA512 e2106ca70ff539024f888bca12487b3bf7f4f51928acf5ae3e1022f6bbd5e3b7882196ec50b609fd52f739e1f7b13eec7d4b3535d8216ec019a3577de6b4228d WHIRLPOOL dad0108c8a3217c82d0c098b387c527be6ddf0d4df936e49695777721d25b8df0f5ff456aa28bfa6cbfc69d535d395f3dbc898117332cd711864ce0f6524e58d
+EBUILD gflags-2.1.1-r1.ebuild 807 SHA256 9fc6c4e254e95802f036232fb103765e3447e34af847e1c8ba4e02e63eecfe91 SHA512 92521158fe6613c7f845202dfd8f82782ea059c485ec43425ea1202d09b9b5cf90252bb6b7969ee45d6841b7fe65f7342798d297122fdde8bbcea9ac6cc6b8ba WHIRLPOOL 2a7fa1200b980bbce0894bf28442929dd89f4bcb60ec94a9b8c643212997e1dcbf3851ec84b140a5b7e0b0c811df45ee43a3b8e9582172952c0d5d6c4f9e46a7
+EBUILD gflags-2.1.2.ebuild 754 SHA256 088f35a5b47e488b20c9a50cc9cb2ff9220326078ae0ec9f8a2d59b73efbec8d SHA512 6b427bb3093826ad366cb3ca49bb6dcd7814eb86cd3fc669a0c0afcbbba9e3986d90980984560d44237bfc7ba1b26665d4ea33f050b4261474e3829aabbdafb5 WHIRLPOOL 491af70f8e809060b7e78ae799805313cc2132ea9254a8cad44db6ee8df20c4c28ea89d1630c8728f3628a0efce7d734779888c490641508e50e1ec6b9647942
+EBUILD gflags-2.2.0.ebuild 1032 SHA256 ae28fda235b6cf0dce9377afcf8391054cb4dc2660023bc9b9ae1d3669600fad SHA512 951dbcbe0738d3261e8a250cb1af5d79f708269964ca4a93cc3824006c560593088fc8baa295296d0f752b5ec8ed4cd5ff6525b6030adacd8fdfaaafba75d7af WHIRLPOOL 0762c0fb7ce9776e72a9ad656dea576f75679eba6e1c0d7fc5b2c92b356d07f2465c2e1af519425cf18c2d70c19088cc4d04f533af9b75c8bc498ad0568f78e9
+EBUILD gflags-9999.ebuild 1032 SHA256 ae28fda235b6cf0dce9377afcf8391054cb4dc2660023bc9b9ae1d3669600fad SHA512 951dbcbe0738d3261e8a250cb1af5d79f708269964ca4a93cc3824006c560593088fc8baa295296d0f752b5ec8ed4cd5ff6525b6030adacd8fdfaaafba75d7af WHIRLPOOL 0762c0fb7ce9776e72a9ad656dea576f75679eba6e1c0d7fc5b2c92b356d07f2465c2e1af519425cf18c2d70c19088cc4d04f533af9b75c8bc498ad0568f78e9
+MISC ChangeLog 2724 SHA256 c7b7f3df141a96fa702b44105def48aa9e339653fdedf33ec4ffad9121453be1 SHA512 4527bf933b1f38aadcc75c9eccc6c31d133892413679a0094c8e0f6f9f3e12aec8fd579f008cded5bf3b004a8d12be2f78c2ed8dbe52fdc75970803e686bc82b WHIRLPOOL 4404f260560f487a483424bf82f285f2165e03ca31bee7c19df786efa03e0f79d53a4505e4fdec00b237829bfdb1cbf5aba4c175104027706f99217cc988f463
+MISC ChangeLog-2015 4952 SHA256 fa66a2340b977a9ccd72b9c0f1a58a1318f78cb8678539bd63d47f5566043081 SHA512 26f7ea39f1434dea9facab19c20f5b269d7c9ad339d410553cd125f730e060b306e7b5c5da04c4b15f2f6d4130baf58b5cf914ff40b4ead690d101cb7511e503 WHIRLPOOL 8fdec814a5a96510676d2376386ee9eb2b4f9fd2760abb59b3e75f88e5179926fa0d31cdd7c1948c89ca587125f54b7a870d28adc9b2a0fd7eb540765470811e
+MISC metadata.xml 303 SHA256 6c13a35aeb7414b86d43a4d1e579fa90a192cd1d0c76fe537162fe7dc5ea0fe0 SHA512 80f049b850a5f55f33964fd8776aa4b510d9937022caac6d3817d583ae3089dd5cc73bd44b8ef48e867a706fd9223861001759281903ee1a1a467149ca7bf37e WHIRLPOOL f90cf0ed738c47270ae4e723afcb798007a7846108f58f9084d25a8f21f2d0c5f0abe90876be3ea72d7cb5a6051150301e5b0eaeaf9936bb141d12462052fec4
diff --git a/dev-cpp/gflags/files/gflags-2.1.1-libs.patch b/dev-cpp/gflags/files/gflags-2.1.1-libs.patch
new file mode 100644
index 000000000000..0e59cb937e14
--- /dev/null
+++ b/dev-cpp/gflags/files/gflags-2.1.1-libs.patch
@@ -0,0 +1,45 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 17d38b4..ca2c1df 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -22,6 +22,8 @@ version_numbers (
+ PACKAGE_VERSION_PATCH
+ )
+
++set (PACKAGE_SOVERSION "${PACKAGE_VERSION_MAJOR}")
++
+ # ----------------------------------------------------------------------------
+ # options
+ set (GFLAGS_NAMESPACE "${PACKAGE_NAME}" CACHE STRING "C++ namespace identifier of gflags library.")
+@@ -256,7 +258,9 @@ foreach (TYPE IN ITEMS STATIC SHARED)
+ endif ()
+ set_target_properties (
+ gflags${opts}-${type} PROPERTIES COMPILE_DEFINITIONS "${defines}"
+- OUTPUT_NAME "gflags${opts}"
++ OUTPUT_NAME "gflags${opts}"
++ VERSION "${PACKAGE_VERSION}"
++ SOVERSION "${PACKAGE_SOVERSION}"
+ )
+ if (HAVE_SHLWAPI_H)
+ target_link_libraries (gflags${opts}-${type} shlwapi.lib)
+@@ -280,9 +284,18 @@ if (OS_WINDOWS)
+ set (CONFIG_INSTALL_DIR CMake)
+ else ()
+ set (RUNTIME_INSTALL_DIR bin)
+- set (LIBRARY_INSTALL_DIR lib)
++ # The LIB_INSTALL_DIR and LIB_SUFFIX variables are used by the Fedora
++ # package maintainers. Also package maintainers of other distribution
++ # packages need to be able to specify the name of the library directory.
++ if (NOT LIB_INSTALL_DIR)
++ set (LIB_INSTALL_DIR "lib${LIB_SUFFIX}")
++ endif ()
++ set (LIBRARY_INSTALL_DIR "${LIB_INSTALL_DIR}"
++ CACHE PATH "Directory of installed libraries, e.g., \"lib64\""
++ )
++ mark_as_advanced (LIBRARY_INSTALL_DIR)
+ set (INCLUDE_INSTALL_DIR include)
+- set (CONFIG_INSTALL_DIR lib/cmake/${PACKAGE_NAME})
++ set (CONFIG_INSTALL_DIR ${LIBRARY_INSTALL_DIR}/cmake/${PACKAGE_NAME})
+ endif ()
+
+ file (RELATIVE_PATH INSTALL_PREFIX_REL2CONFIG_DIR "${CMAKE_INSTALL_PREFIX}/${CONFIG_INSTALL_DIR}" "${CMAKE_INSTALL_PREFIX}")
diff --git a/dev-cpp/gflags/gflags-2.1.1-r1.ebuild b/dev-cpp/gflags/gflags-2.1.1-r1.ebuild
new file mode 100644
index 000000000000..837721b2123e
--- /dev/null
+++ b/dev-cpp/gflags/gflags-2.1.1-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+inherit cmake-multilib
+
+DESCRIPTION="Google's C++ argument parsing library"
+HOMEPAGE="http://gflags.github.io/gflags/"
+SRC_URI="https://github.com/schuhschuh/gflags/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-linux ~x86-linux"
+IUSE="static-libs"
+
+PATCHES=( "${FILESDIR}/gflags-2.1.1-libs.patch" )
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS=ON
+ $(cmake-utils_use_build static-libs STATIC_LIBS)
+ )
+
+ cmake-utils_src_configure
+}
+
+multilib_src_install_all() {
+ rm -rf "${ED}"/usr/share/doc
+ dodoc {AUTHORS,ChangeLog,NEWS,README}.txt
+ dohtml doc/*
+}
diff --git a/dev-cpp/gflags/gflags-2.1.2.ebuild b/dev-cpp/gflags/gflags-2.1.2.ebuild
new file mode 100644
index 000000000000..f240f164803e
--- /dev/null
+++ b/dev-cpp/gflags/gflags-2.1.2.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+inherit cmake-multilib
+
+DESCRIPTION="Google's C++ argument parsing library"
+HOMEPAGE="http://gflags.github.io/gflags/"
+SRC_URI="https://github.com/gflags/gflags/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="static-libs"
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS=ON
+ $(cmake-utils_use_build static-libs STATIC_LIBS)
+ )
+
+ cmake-utils_src_configure
+}
+
+multilib_src_install_all() {
+ rm -rf "${ED}"/usr/share/doc
+ dodoc {AUTHORS,ChangeLog}.txt README.md
+ dohtml doc/*
+}
diff --git a/dev-cpp/gflags/gflags-2.2.0.ebuild b/dev-cpp/gflags/gflags-2.2.0.ebuild
new file mode 100644
index 000000000000..79f70a7aee48
--- /dev/null
+++ b/dev-cpp/gflags/gflags-2.2.0.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-multilib
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/gflags/gflags.git"
+else
+ SRC_URI="https://github.com/gflags/gflags/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+
+DESCRIPTION="Google's C++ argument parsing library"
+HOMEPAGE="http://gflags.github.io/gflags/"
+
+LICENSE="BSD"
+SLOT="0/2.2"
+IUSE="static-libs test"
+
+# AUTHORS.txt only links the google group
+DOCS=( ChangeLog.txt README.md )
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS=ON
+ -DBUILD_STATIC_LIBS=$(usex static-libs)
+ -DBUILD_TESTING=$(usex test)
+ # avoid installing .cmake/packages, e.g.:
+ # >>> /tmp/portage/dev-cpp/gflags-9999/homedir/.cmake/packages/gflags/a7fca4708532331c2d656af0fdc8b8b9
+ -DREGISTER_INSTALL_PREFIX=OFF
+ )
+ cmake-utils_src_configure
+}
diff --git a/dev-cpp/gflags/gflags-9999.ebuild b/dev-cpp/gflags/gflags-9999.ebuild
new file mode 100644
index 000000000000..79f70a7aee48
--- /dev/null
+++ b/dev-cpp/gflags/gflags-9999.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-multilib
+
+if [[ ${PV} == 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/gflags/gflags.git"
+else
+ SRC_URI="https://github.com/gflags/gflags/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+fi
+
+DESCRIPTION="Google's C++ argument parsing library"
+HOMEPAGE="http://gflags.github.io/gflags/"
+
+LICENSE="BSD"
+SLOT="0/2.2"
+IUSE="static-libs test"
+
+# AUTHORS.txt only links the google group
+DOCS=( ChangeLog.txt README.md )
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS=ON
+ -DBUILD_STATIC_LIBS=$(usex static-libs)
+ -DBUILD_TESTING=$(usex test)
+ # avoid installing .cmake/packages, e.g.:
+ # >>> /tmp/portage/dev-cpp/gflags-9999/homedir/.cmake/packages/gflags/a7fca4708532331c2d656af0fdc8b8b9
+ -DREGISTER_INSTALL_PREFIX=OFF
+ )
+ cmake-utils_src_configure
+}
diff --git a/dev-cpp/gflags/metadata.xml b/dev-cpp/gflags/metadata.xml
new file mode 100644
index 000000000000..5b9d6abf02a2
--- /dev/null
+++ b/dev-cpp/gflags/metadata.xml
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>amynka@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">gflags/gflags</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/glibmm/Manifest b/dev-cpp/glibmm/Manifest
new file mode 100644
index 000000000000..feb6247dca91
--- /dev/null
+++ b/dev-cpp/glibmm/Manifest
@@ -0,0 +1,7 @@
+DIST glibmm-2.50.1.tar.xz 6444576 SHA256 1fd85051da9cb402cc8348cec72dfe4d79f9345df4a1dbf68703a4ded45846a4 SHA512 4f25c75c1628ca2f4db1c29cebc63187d372603066b06aa6a66c6da792f9e02cb4a413e41f058a81e2d5a2b38d625de13df76115b278f010ce2fc493fe6e6bbb WHIRLPOOL 54b656e04550a050994061db1498a3ac066b1e37643faa218ec1ef04604c0d37c799572b546e79c29f1b35586b1a5b0c354eca72151756eb99f4434a27fa7ae2
+DIST glibmm-2.52.0.tar.xz 6450592 SHA256 81b8abf21c645868c06779abc5f34efc1a51d5e61589dab2a2ed67faa8d4811e SHA512 45cbbe4ce4ba04dcadbcc3b46159dda194235c10a7287075724b0e1c19db2e4db061dc2a66823205f6884b30e2ef87ceafdf9cc2970212a2424535dbe3b9a262 WHIRLPOOL 11cd96f6cb28af494dd8fb63703069df12b8adeb2cba26f7b6d3bc92fd9206385001938db0584c2ee1167b4ca51746ca3a0496bb5fc3abcbdc94f6b3b5944d83
+EBUILD glibmm-2.50.1.ebuild 1636 SHA256 ca918bf1136b2326c0aa2f9402fd9e51fdb8bee025ed22d34326fb660e91629b SHA512 d8c11ace8919ff16e950798269d88f83bdde55377f66ba34e47947acbb856273b42bae549393055997ce02077aaf281b1238f6a2a2d4c706d24293d9b64317d3 WHIRLPOOL 772e501ba1801f47b84868d1a80567f67c40e0acb973d3a25d4df532e3129ed61c6dacc8bbacbe3a83e1b9f5eef7db4580293281956b373834a9049cdef00d7e
+EBUILD glibmm-2.52.0.ebuild 1645 SHA256 8675687d8d5f33481f8dc87427695257ea60420f056535af45558a56c167fdf3 SHA512 903a9087feab8a973851471b0dbfbe485b2b1f7e208982c8113980b5f33fbef8b47a2aaf2a3999404c7a80ed2f95664ca0a57f873da0bda97fe3ee1c0b10762a WHIRLPOOL f6d2c9f41bec66356ae8234ecd1ddf6987aa7ef0de9c4877094e4c550ad8f3a5150d036169694bc3ebc509dab2e6a5482208ab91aa99e657c798a21b05e5cd84
+MISC ChangeLog 8346 SHA256 a620a246d97b0b0aa02c3c32c2d64385180e463ee9fa38f0908bdffad7b4ef24 SHA512 b82a76b78133b62220e6c344d18de1044f3d3ecdb1c8dbf2e6ab05051ac759747a59fbcff885a726b673398ccf185fa9a0b4f4463d17025c898fbd5e834377f6 WHIRLPOOL c9869fce7a6229626eeafe2ef14e96f707f47a3a209051478a8468f9745e6c148e859eccfdb2db347d68c6fee28822a87a5b321656ff3ded83e3c842c6fdf149
+MISC ChangeLog-2015 29390 SHA256 16bef394964b0ea81e3d7b0f38a75a160ae12d3cca2c9191f1c71513eeb635e4 SHA512 11429f66fc9e7c4fede4f0eaa2c3b13f9fc90d01a591aefcbdb17fd9827d731ebd2d87719d0f9ce3c8143295d91054018c8047e161b40ea9cada39789c4ceae4 WHIRLPOOL e8dd8edb69a045b59656e509bdf5ca6c985e88eafc116dc9ee21ffda42cb733181ecd3cde45ac05dbf34fbc6758149e57002b9b9229eb696f7221b7478aa6faa
+MISC metadata.xml 249 SHA256 4505b0bfeadff287958620b7dc7b7209699065a8f17139a237a5dd409a726a97 SHA512 c40662134899a5c9f0369a1017806f35adf3280a0b3c91726f7a8ca6012a073a8b471583f5bfb6fe95faac1dcf607e8e2e43f8c91d48ec46f4a8824e2f551506 WHIRLPOOL 333a938ee1d2124595596c572697bf5ebad523a92ba12005cfb12e6bb6270881a94a911f0cc9c1cf2bb571559e8271e07dfd307dabe50058236dbe7103562b92
diff --git a/dev-cpp/glibmm/glibmm-2.50.1.ebuild b/dev-cpp/glibmm/glibmm-2.50.1.ebuild
new file mode 100644
index 000000000000..a111edbd8924
--- /dev/null
+++ b/dev-cpp/glibmm/glibmm-2.50.1.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit gnome2 multilib-minimal
+
+DESCRIPTION="C++ interface for glib2"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1+ GPL-2+" # GPL-2+ applies only to the build system
+SLOT="2"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~mips ppc ppc64 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+IUSE="doc debug test"
+
+RDEPEND="
+ >=dev-libs/libsigc++-2.9.1:2[${MULTILIB_USEDEP}]
+ >=dev-libs/glib-2.50.0:2[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? ( app-doc/doxygen )
+"
+# dev-cpp/mm-common needed for eautoreconf
+
+src_prepare() {
+ if ! use test; then
+ # don't waste time building tests
+ sed 's/^\(SUBDIRS =.*\)tests\(.*\)$/\1\2/' \
+ -i Makefile.am Makefile.in || die "sed 1 failed"
+ fi
+
+ # don't build examples - we want to install example sources, not binaries
+ sed 's/^\(SUBDIRS =.*\)examples\(.*\)$/\1\2/' \
+ -i Makefile.am Makefile.in || die "sed 2 failed"
+
+ gnome2_src_prepare
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" gnome2_src_configure \
+ $(use_enable debug debug-refcounting) \
+ $(multilib_native_use_enable doc documentation) \
+ --enable-deprecated-api
+}
+
+multilib_src_test() {
+ cd tests
+ default
+
+ for i in */test; do
+ ${i} || die "Running tests failed at ${i}"
+ done
+}
+
+multilib_src_install() {
+ gnome2_src_install
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ find examples -type d -name '.deps' -exec rm -rf {} \; 2>/dev/null
+ find examples -type f -name 'Makefile*' -exec rm -f {} \; 2>/dev/null
+ dodoc -r examples
+}
diff --git a/dev-cpp/glibmm/glibmm-2.52.0.ebuild b/dev-cpp/glibmm/glibmm-2.52.0.ebuild
new file mode 100644
index 000000000000..6b4fa6640641
--- /dev/null
+++ b/dev-cpp/glibmm/glibmm-2.52.0.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit gnome2 multilib-minimal
+
+DESCRIPTION="C++ interface for glib2"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1+ GPL-2+" # GPL-2+ applies only to the build system
+SLOT="2"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos ~sparc-solaris ~x86-solaris"
+IUSE="doc debug test"
+
+RDEPEND="
+ >=dev-libs/libsigc++-2.9.1:2[${MULTILIB_USEDEP}]
+ >=dev-libs/glib-2.50.0:2[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? ( app-doc/doxygen )
+"
+# dev-cpp/mm-common needed for eautoreconf
+
+src_prepare() {
+ if ! use test; then
+ # don't waste time building tests
+ sed 's/^\(SUBDIRS =.*\)tests\(.*\)$/\1\2/' \
+ -i Makefile.am Makefile.in || die "sed 1 failed"
+ fi
+
+ # don't build examples - we want to install example sources, not binaries
+ sed 's/^\(SUBDIRS =.*\)examples\(.*\)$/\1\2/' \
+ -i Makefile.am Makefile.in || die "sed 2 failed"
+
+ gnome2_src_prepare
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" gnome2_src_configure \
+ $(use_enable debug debug-refcounting) \
+ $(multilib_native_use_enable doc documentation) \
+ --enable-deprecated-api
+}
+
+multilib_src_test() {
+ cd tests
+ default
+
+ for i in */test; do
+ ${i} || die "Running tests failed at ${i}"
+ done
+}
+
+multilib_src_install() {
+ gnome2_src_install
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ find examples -type d -name '.deps' -exec rm -rf {} \; 2>/dev/null
+ find examples -type f -name 'Makefile*' -exec rm -f {} \; 2>/dev/null
+ dodoc -r examples
+}
diff --git a/dev-cpp/glibmm/metadata.xml b/dev-cpp/glibmm/metadata.xml
new file mode 100644
index 000000000000..39980802b1da
--- /dev/null
+++ b/dev-cpp/glibmm/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/glog/Manifest b/dev-cpp/glog/Manifest
new file mode 100644
index 000000000000..0cb108f1dd90
--- /dev/null
+++ b/dev-cpp/glog/Manifest
@@ -0,0 +1,11 @@
+AUX glog-0.3.2-avoid-inline-asm.patch 1837 SHA256 0771464b45ac79545ca0e8f3c489b842fdd61dc0585b917dc0b5f619dc2f2c55 SHA512 d45e6e1ef311a8eaccbbcf802c609c19509b74d0647a6ff4e2f0886ecd52d7f107c76d06cba88036870a4c34c62c19df661c59ea5011dff931ad14a3f5d8ab58 WHIRLPOOL b8f119c1b4e67ff016d5e041a6d91281fb79ebec00e608e19ebf8d53d42c3fabbf5bc8f29882bfa269f209b3034eeafc11ef080d65fa3948c223b95fcdf1d241
+AUX glog-0.3.4-fix-build-system.patch 4861 SHA256 340a39b0facd47ca1404dbd36e57e0ed202e5d40659c8c611074d754ed5fa1b0 SHA512 ba162ebb8395044b2bb7b1982a463be01155772acf898614cc13f73c523f63094621f887b8a67e6f810d98914177a1a4a82a45ba7ff7415101f70a8915ae42f0 WHIRLPOOL 077dd78a4e02fc59dc7049736e260a24766e192f2c61a3532cb4b2cbf74bd8c0c797e1196a1252038e0e92608d94344d467913975f8596e624ec5cdf61026d51
+AUX glog-0.3.4-fix-gcc5-demangling.patch 1992 SHA256 b740c758ceba68347650453561b4108a26263e9cb7ddd5833a3bb9c1179cfc50 SHA512 6f0b6f74dd039672f80dce55526ae784ff56add01ffc0dc0f5adf4c0ebbf9af15cfd054b370a0631fb7044abb20edf6dc79cb0dd2ac49fda7131ec152f54f054 WHIRLPOOL d2c1f5f490bbe2a7863e179e91efbac7dad3347c4fe68ab17a77e6a1911c907b1381845d09865b0994933362e1a185903c9331c6dc17003639422e977f61db47
+DIST glog-0.3.3.tar.gz 509676 SHA256 fbf90c2285ba0561db7a40f8a4eefb9aa963e7d399bd450363e959929fe849d0 SHA512 95418ff0857415a0fbc15caeb22a13f3b6736618adcc3c30e054626f1397bc58399c45f68784c70b1f5dc594ebc6ea66e386896beab5c20be72dd53b25f5a4ac WHIRLPOOL 7ba26a936e3ac18afbccf141b888a885f3f9847d4f19c0ebad416d16fcff936b9622e03aec155f77622759a40e8684673c29648c026426326239f4485113c6cf
+DIST glog-0.3.4.tar.gz 522508 SHA256 ce99d58dce74458f7656a68935d7a0c048fa7b4626566a71b7f4e545920ceb10 SHA512 139525b546a9eccacc9bebf7cc3053ba52229e9488485ad45344c3d3134ca819d3b571250c0e3a6d84097009c8be89b0f4fa16ef5ec838ffcc237ae11c3a034c WHIRLPOOL b6787336ea55de2f6574e29bc4649a7c64aa5d5e8a07ab15c2c5754ebf9cfefd1405c64cc4dfecab557814991ae4c97be078d21916181850ee12b853918c0a27
+EBUILD glog-0.3.3-r1.ebuild 1834 SHA256 6662b28f0512f3aa924cc7819f9c2df96da45a1b8f8d7b62e596d9b13f9a6dfd SHA512 6a399224979c430102861f0bcd80344c1227d270e1eb175e0df4172f6294c5800112fd0c9a94c84a3e6baf8b77880c6447b1c13d75ddf941a44e1ffaca482606 WHIRLPOOL 977a2b276aebfc75c9ee0ac107ad3a3bd877cfe9b1eaaafa56c83be8d8bda58750daa1a857c6cf8f3134238c890f2162d31286ea2fd271467ebcc1a5069e78e0
+EBUILD glog-0.3.4-r1.ebuild 1248 SHA256 9402ff63ebf077c51f27b743987fcd12459e38571caa4f5cddfec540caeee082 SHA512 7dbbb7565ac1399a0fffbde8a11917c85814d1fa22be45e1f191d277c9bcf019bfc0a2b4ff6f8b2cf9505c68b35e36880e0163d05ce912956a47d60980a484c2 WHIRLPOOL b3ef813542f0a7f23efdb798b7b11037f284232308c135a666b77616a3fb75c9f74d50955f49b4da48bc6bc16330916fe75193a55b6448303842105e5b3b0e51
+EBUILD glog-0.3.4.ebuild 1855 SHA256 faf7166f6e103f3387475eebaf55f9965448ffbd7ad3f969b7c6780a534aaecf SHA512 f9feb687feb6d5141580ade93318bdaa505c98697f86a1c51e7f4e3e61819df41bb131f317db721723865a5a49856147cd8284fcaeaae8b0250044473478d613 WHIRLPOOL ee6a4183e06a955877c10185814da33d6c3109eea4fdc1f288321ccbf533a2250b3a183eec497dbcf3bf788ed5b2fb99ee97ac7c5f331c4036e8408a69bcb2a0
+MISC ChangeLog 3680 SHA256 02be7c8418a3e35c9e86e875a0dbf8030f88f44d9e442281f09cd2825b20964e SHA512 43215d3e0df19cc99f2a96a39f03dea090747c1cdeef1be895c58939825470128400af78d8549db0f41654b01da053747415933ac2dffc702c583adbdf8cf37f WHIRLPOOL c3a28660871be10f05ac1bd8130c4e44bacd292ed104529e6d98ea0bf63a64867bcbb30f1c3fe7b8760502d8a43fcfaf2db8498f2bd63b4a5441aaa5391da7b1
+MISC ChangeLog-2015 2689 SHA256 9c19163205dee303f883c006a06b0f4bbe8d54709bd9165c052de7b96f372ee7 SHA512 274de3ece525e2d20ec5fb178c482b092185fbb7b46d93cc0fbf7acd608d45ae949c1eca4cd6294e4ff7321a09699df9a1e167f36b715588475c2bf126cad8d1 WHIRLPOOL 8f2df79c46fe2730793b5c2f3569507c5d175ecebb35be927576d0c30cae618a9235d00a76d19c8463fdc8e44ee38bc3a90fedfd5e955e293c00a96d7e21d5fe
+MISC metadata.xml 687 SHA256 1ab62241e23e2346e742341dac3e7e0dcd823ceaadf2df5e3369bca4bd59684f SHA512 31e7803ad7e7563ae6d133caa347c56e277c4b68bc11b3d87889c73fe043d65c793492089f017696bc427420dd89f69257c26b1c4cba7ad1efdca059554fed0e WHIRLPOOL a0dbf4cbe1aafdc62a4be8904dff811d76a8f21dd9f9ebf5c5f9b3853de5e1e68f57e1a23d91f4b06301efcc5957953142fa721f591b31068b4c5d1871012b78
diff --git a/dev-cpp/glog/files/glog-0.3.2-avoid-inline-asm.patch b/dev-cpp/glog/files/glog-0.3.2-avoid-inline-asm.patch
new file mode 100644
index 000000000000..b6fa9cdb7374
--- /dev/null
+++ b/dev-cpp/glog/files/glog-0.3.2-avoid-inline-asm.patch
@@ -0,0 +1,56 @@
+http://code.google.com/p/google-glog/issues/detail?id=130
+
+make the code work with all gcc targets
+
+--- a/src/symbolize_unittest.cc
++++ b/src/symbolize_unittest.cc
+@@ -60,9 +60,7 @@ using namespace GOOGLE_NAMESPACE;
+ # endif // __i386__
+ # else
+ # endif // __GNUC__ >= 4
+-# if defined(__i386__) || defined(__x86_64__)
+-# define TEST_X86_32_AND_64 1
+-# endif // defined(__i386__) || defined(__x86_64__)
++# define TEST_WITH_LABEL_ADDRESSES
+ #endif
+
+ // A wrapper function for Symbolize() to make the unit test simple.
+@@ -289,22 +287,24 @@ TEST(Symbolize, SymbolizeWithDemanglingStackConsumption) {
+ extern "C" {
+ inline void* always_inline inline_func() {
+ register void *pc = NULL;
+-#ifdef TEST_X86_32_AND_64
+- __asm__ __volatile__("call 1f; 1: pop %0" : "=r"(pc));
++#ifdef TEST_WITH_LABEL_ADDRESSES
++ pc = &&curr_pc;
++ curr_pc:
+ #endif
+ return pc;
+ }
+
+ void* ATTRIBUTE_NOINLINE non_inline_func() {
+ register void *pc = NULL;
+-#ifdef TEST_X86_32_AND_64
+- __asm__ __volatile__("call 1f; 1: pop %0" : "=r"(pc));
++#ifdef TEST_WITH_LABEL_ADDRESSES
++ pc = &&curr_pc;
++ curr_pc:
+ #endif
+ return pc;
+ }
+
+ void ATTRIBUTE_NOINLINE TestWithPCInsideNonInlineFunction() {
+-#if defined(TEST_X86_32_AND_64) && defined(HAVE_ATTRIBUTE_NOINLINE)
++#if defined(TEST_WITH_LABEL_ADDRESSES) && defined(HAVE_ATTRIBUTE_NOINLINE)
+ void *pc = non_inline_func();
+ const char *symbol = TrySymbolize(pc);
+ CHECK(symbol != NULL);
+@@ -314,7 +314,7 @@ void ATTRIBUTE_NOINLINE TestWithPCInsideNonInlineFunction() {
+ }
+
+ void ATTRIBUTE_NOINLINE TestWithPCInsideInlineFunction() {
+-#if defined(TEST_X86_32_AND_64) && defined(HAVE_ALWAYS_INLINE)
++#if defined(TEST_WITH_LABEL_ADDRESSES) && defined(HAVE_ALWAYS_INLINE)
+ void *pc = inline_func(); // Must be inlined.
+ const char *symbol = TrySymbolize(pc);
+ CHECK(symbol != NULL);
diff --git a/dev-cpp/glog/files/glog-0.3.4-fix-build-system.patch b/dev-cpp/glog/files/glog-0.3.4-fix-build-system.patch
new file mode 100644
index 000000000000..cd38111bc81f
--- /dev/null
+++ b/dev-cpp/glog/files/glog-0.3.4-fix-build-system.patch
@@ -0,0 +1,142 @@
+--- a/configure.ac
++++ b/configure.ac
+@@ -11,7 +11,7 @@
+ AC_CONFIG_SRCDIR(README)
+ AC_CONFIG_MACRO_DIR([m4])
+ AM_INIT_AUTOMAKE
+-AM_CONFIG_HEADER(src/config.h)
++AC_CONFIG_HEADERS([src/config.h])
+
+ AC_LANG(C++)
+
+@@ -21,7 +21,7 @@
+ AC_PROG_CXX
+ AM_CONDITIONAL(GCC, test "$GCC" = yes) # let the Makefile know if we're gcc
+
+-AC_PROG_LIBTOOL
++LT_INIT
+ AC_SUBST(LIBTOOL_DEPS)
+
+ # Check whether some low-level functions/files are available
+@@ -128,32 +128,48 @@
+ fi
+
+ # Check if there is google-gflags library installed.
+-SAVE_CFLAGS="$CFLAGS"
+-SAVE_LIBS="$LIBS"
+-AC_ARG_WITH(gflags, AS_HELP_STRING[--with-gflags=GFLAGS_DIR],
+- GFLAGS_CFLAGS="-I${with_gflags}/include"
+- GFLAGS_LIBS="-L${with_gflags}/lib -lgflags"
+- CFLAGS="$CFLAGS $GFLAGS_CFLAGS"
+- LIBS="$LIBS $GFLAGS_LIBS"
+-)
+-AC_CHECK_LIB(gflags, main, ac_cv_have_libgflags=1, ac_cv_have_libgflags=0)
+-if test x"$ac_cv_have_libgflags" = x"1"; then
+- AC_DEFINE(HAVE_LIB_GFLAGS, 1, [define if you have google gflags library])
+- if test x"$GFLAGS_LIBS" = x""; then
+- GFLAGS_LIBS="-lgflags"
+- fi
+-else
+- GFLAGS_CFLAGS=
+- GFLAGS_LIBS=
+-fi
+-CFLAGS="$SAVE_CFLAGS"
+-LIBS="$SAVE_LIBS"
++AC_ARG_ENABLE([gflags],
++ AS_HELP_STRING([--enable-gflags], [Enable google-gflags]))
++
++ac_cv_have_libgflags=0
++AS_IF([test "x$enable_gflags" != "xno"], [
++ SAVE_CFLAGS="$CFLAGS"
++ SAVE_LIBS="$LIBS"
++ AC_ARG_WITH([gflags], AS_HELP_STRING([--with-gflags=GFLAGS_DIR]),[
++ GFLAGS_CFLAGS="-I${with_gflags}/include"
++ GFLAGS_LIBS="-L${with_gflags}/lib -lgflags"
++ CFLAGS="$CFLAGS $GFLAGS_CFLAGS"
++ LIBS="$LIBS $GFLAGS_LIBS"
++ ])
++
++ AC_CHECK_LIB(gflags, main, ac_cv_have_libgflags=1, ac_cv_have_libgflags=0)
++ CFLAGS="$SAVE_CFLAGS"
++ LIBS="$SAVE_LIBS"
++])
++
++AS_IF([test "x$ac_cv_have_libgflags" = "x1"], [
++ AC_DEFINE([HAVE_LIB_GFLAGS], [1], [define if you have google gflags library])
++ AS_IF([test "x$GFLAGS_LIBS" = "x"], [
++ GFLAGS_LIBS="-lgflags"
++ ])
++], [
++ GFLAGS_CFLAGS=
++ GFLAGS_LIBS=
++])
+
+ # TODO(hamaji): Use official m4 macros provided by testing libraries
+ # once the m4 macro of Google Mocking becomes ready.
+ # Check if there is Google Test library installed.
+-AC_CHECK_PROG(GTEST_CONFIG, gtest-config, "yes")
+-AC_CHECK_LIB(gtest, main, have_gtest_lib="yes")
++AC_ARG_ENABLE([gtest-config],
++ AS_HELP_STRING([--enable-gtest-config], [Enable looking for gtest-config]))
++
++AS_IF([test "x$enable_gtest_config" != "xno"], [
++ AC_CHECK_PROG(GTEST_CONFIG, gtest-config, "yes")
++ AC_CHECK_LIB(gtest, main, have_gtest_lib="yes")
++], [
++ have_gtest_lib="no"
++])
++
+ if test x"$GTEST_CONFIG" = "xyes" -a x"$have_gtest_lib" = "xyes"; then
+ GTEST_CFLAGS=`gtest-config --cppflags --cxxflags`
+ GTEST_LIBS=`gtest-config --ldflags --libs`
+@@ -178,17 +194,13 @@
+ AM_CONDITIONAL(HAVE_GMOCK, test x"$GMOCK_CONFIG" = "xyes")
+
+ # We want to link in libunwind if it exists
+-UNWIND_LIBS=
+-# Unfortunately, we need to check the header file in addition to the
+-# lib file to check if libunwind is available since libunwind-0.98
+-# doesn't install all necessary header files.
+-if test x"$ac_cv_have_libunwind_h" = x"1"; then
+- AC_CHECK_LIB(unwind, backtrace, UNWIND_LIBS=-lunwind)
+-fi
+-AC_SUBST(UNWIND_LIBS)
+-if test x"$UNWIND_LIBS" != x""; then
+- AC_DEFINE(HAVE_LIB_UNWIND, 1, [define if you have libunwind])
+-fi
++AC_ARG_ENABLE([unwind],
++ AS_HELP_STRING([--enable-unwind], [Enable libunwind]))
++
++AS_IF([test "x$enable_unwind" != "xno"], [
++ PKG_CHECK_MODULES([UNWIND], [libunwind > 0.98])
++ AC_DEFINE([HAVE_LIB_UNWIND], [1], [define if you have libunwind])
++])
+
+ # We'd like to use read/write locks in several places in the code.
+ # See if our pthreads support extends to that. Note: for linux, it
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -40,12 +40,11 @@
+ nodist_gloginclude_HEADERS = src/glog/logging.h src/glog/raw_logging.h src/glog/vlog_is_on.h src/glog/stl_logging.h
+ noinst_HEADERS = src/glog/logging.h.in src/glog/raw_logging.h.in src/glog/vlog_is_on.h.in src/glog/stl_logging.h.in
+
+-docdir = $(prefix)/share/doc/$(PACKAGE)-$(VERSION)
+ ## This is for HTML and other documentation you want to install.
+ ## Add your documentation files (in doc/) in addition to these
+ ## top-level boilerplate files. Also add a TODO file if you have one.
+-dist_doc_DATA = AUTHORS COPYING ChangeLog INSTALL NEWS README README.windows \
+- doc/designstyle.css doc/glog.html
++dist_doc_DATA = AUTHORS ChangeLog INSTALL NEWS README
++dist_html_DATA = doc/designstyle.css doc/glog.html
+
+ ## The libraries (.so's) you want to install
+ lib_LTLIBRARIES =
+@@ -215,7 +214,7 @@
+
+ ## This should always include $(TESTS), but may also include other
+ ## binaries that you compile but don't want automatically installed.
+-noinst_PROGRAMS = $(TESTS) $(TEST_BINARIES)
++check_PROGRAMS = $(TESTS) $(TEST_BINARIES)
+
+ rpm: dist-gzip packages/rpm.sh packages/rpm/rpm.spec
+ @cd packages && ./rpm.sh ${PACKAGE} ${VERSION}
diff --git a/dev-cpp/glog/files/glog-0.3.4-fix-gcc5-demangling.patch b/dev-cpp/glog/files/glog-0.3.4-fix-gcc5-demangling.patch
new file mode 100644
index 000000000000..fd1518c68583
--- /dev/null
+++ b/dev-cpp/glog/files/glog-0.3.4-fix-gcc5-demangling.patch
@@ -0,0 +1,56 @@
+From b1639e3014996fbc7635870e013559c54e7e3b2f Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?David=20Mart=C3=ADnez=20Moreno?= <ender@debian.org>
+Date: Thu, 13 Aug 2015 09:31:26 -0700
+Subject: [PATCH] Fix ABI demangling for the GCC 5.x case.
+
+When glog is compiled with gcc-5.2 in cxx11 ABI mode, it barfs about unmangled symbols. This patches it getting inspiration from binutils and demangle.cc itself, although it may be totally wrong or maybe have to use ParseAbiTag in more places. I haven't read the spec for the symbols, though.
+
+This patch makes the demangle unit test pass correctly.
+---
+ src/demangle.cc | 19 +++++++++++++++++++
+ 1 file changed, 19 insertions(+)
+
+diff --git a/src/demangle.cc b/src/demangle.cc
+index e858181..0f0c831 100644
+--- a/src/demangle.cc
++++ b/src/demangle.cc
+@@ -439,6 +439,7 @@ static bool ParseExprPrimary(State *state);
+ static bool ParseLocalName(State *state);
+ static bool ParseDiscriminator(State *state);
+ static bool ParseSubstitution(State *state);
++static bool ParseAbiTag(State *state);
+
+ // Implementation note: the following code is a straightforward
+ // translation of the Itanium C++ ABI defined in BNF with a couple of
+@@ -567,6 +568,8 @@ static bool ParseNestedName(State *state) {
+ static bool ParsePrefix(State *state) {
+ bool has_something = false;
+ while (true) {
++ if (ParseAbiTag(state))
++ continue;
+ MaybeAppendSeparator(state);
+ if (ParseTemplateParam(state) ||
+ ParseSubstitution(state) ||
+@@ -585,6 +588,22 @@ static bool ParsePrefix(State *state) {
+ return true;
+ }
+
++// <abi-tag> ::= B <source-name>
++static bool ParseAbiTag(State *state) {
++ State copy = *state;
++
++ Append(state, "[", 1);
++ if (ParseOneCharToken(state, 'B') &&
++ ParseSourceName(state))
++ {
++ Append(state, "]", 1);
++ return true;
++ }
++
++ *state = copy;
++ return false;
++}
++
+ // <unqualified-name> ::= <operator-name>
+ // ::= <ctor-dtor-name>
+ // ::= <source-name>
diff --git a/dev-cpp/glog/glog-0.3.3-r1.ebuild b/dev-cpp/glog/glog-0.3.3-r1.ebuild
new file mode 100644
index 000000000000..3b6207ec2075
--- /dev/null
+++ b/dev-cpp/glog/glog-0.3.3-r1.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="4"
+inherit eutils multilib-minimal
+
+DESCRIPTION="Google's C++ logging library"
+HOMEPAGE="https://github.com/google/glog"
+SRC_URI="https://google-glog.googlecode.com/files/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-linux ~x86-linux"
+IUSE="gflags static-libs unwind test"
+
+RDEPEND="gflags? ( >=dev-cpp/gflags-2.0-r1[${MULTILIB_USEDEP}] )
+ unwind? ( sys-libs/libunwind )"
+DEPEND="${RDEPEND}
+ test? (
+ >=dev-cpp/gmock-1.7.0-r1[${MULTILIB_USEDEP}]
+ >=dev-cpp/gtest-1.6.0-r2[${MULTILIB_USEDEP}]
+ )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.3.2-avoid-inline-asm.patch
+ # Fix the --dodcdir flag:
+ # https://code.google.com/p/google-glog/issues/detail?id=193
+ sed -i \
+ -e '/^docdir =/s:=.*:= @docdir@:' \
+ Makefile.in || die
+}
+
+multilib_src_configure() {
+ use test || export ac_cv_prog_GTEST_CONFIG=no
+ ECONF_SOURCE=${S} \
+ ac_cv_lib_gflags_main=$(usex gflags) \
+ ac_cv_lib_unwind_backtrace=$(usex unwind) \
+ econf \
+ --docdir="\$(datarootdir)/doc/${PF}" \
+ --htmldir='$(docdir)/html' \
+ $(use_enable static-libs static)
+}
+
+_emake() {
+ # The tests always get built ... disable them when unused.
+ emake $(usex test '' noinst_PROGRAMS=) "$@"
+}
+
+multilib_src_compile() {
+ _emake
+}
+
+multilib_src_install() {
+ _emake install DESTDIR="${D}"
+}
+
+multilib_src_install_all() {
+ # Punt docs we don't care about (NEWS is 0 bytes).
+ rm "${ED}"/usr/share/doc/${PF}/{COPYING,NEWS,README.windows} || die
+
+ # --htmldir doesn't work (yet):
+ # https://code.google.com/p/google-glog/issues/detail?id=144
+ dohtml "${ED}"/usr/share/doc/${PF}/*
+ rm "${ED}"/usr/share/doc/${PF}/*.{html,css}
+
+ use static-libs || find "${ED}" -name '*.la' -delete
+}
diff --git a/dev-cpp/glog/glog-0.3.4-r1.ebuild b/dev-cpp/glog/glog-0.3.4-r1.ebuild
new file mode 100644
index 000000000000..03378d2c6dfb
--- /dev/null
+++ b/dev-cpp/glog/glog-0.3.4-r1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools multilib-minimal
+
+DESCRIPTION="Google's C++ logging library"
+HOMEPAGE="https://github.com/google/glog"
+SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="gflags static-libs test unwind"
+
+RDEPEND="
+ gflags? ( >=dev-cpp/gflags-2.0-r1[${MULTILIB_USEDEP}] )
+ unwind? ( sys-libs/libunwind[${MULTILIB_USEDEP}] )"
+DEPEND="${RDEPEND}
+ test? (
+ >=dev-cpp/gmock-1.7.0-r1[${MULTILIB_USEDEP}]
+ >=dev-cpp/gtest-1.6.0-r2[${MULTILIB_USEDEP}]
+ )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.3.2-avoid-inline-asm.patch
+ "${FILESDIR}"/${PN}-0.3.4-fix-build-system.patch
+ "${FILESDIR}"/${PN}-0.3.4-fix-gcc5-demangling.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" econf \
+ $(use_enable gflags) \
+ $(use_enable static-libs static) \
+ $(use_enable test gtest-config) \
+ $(use_enable unwind)
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ # package provides .pc files
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/dev-cpp/glog/glog-0.3.4.ebuild b/dev-cpp/glog/glog-0.3.4.ebuild
new file mode 100644
index 000000000000..a6e1d7719cb0
--- /dev/null
+++ b/dev-cpp/glog/glog-0.3.4.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+inherit eutils multilib-minimal
+
+DESCRIPTION="Google's C++ logging library"
+HOMEPAGE="https://github.com/google/glog"
+SRC_URI="https://github.com/google/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
+IUSE="gflags static-libs unwind test"
+
+RDEPEND="gflags? ( >=dev-cpp/gflags-2.0-r1[${MULTILIB_USEDEP}] )
+ unwind? ( sys-libs/libunwind )"
+DEPEND="${RDEPEND}
+ test? (
+ >=dev-cpp/gmock-1.7.0-r1[${MULTILIB_USEDEP}]
+ >=dev-cpp/gtest-1.6.0-r2[${MULTILIB_USEDEP}]
+ )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-0.3.2-avoid-inline-asm.patch
+ # Fix the --dodcdir flag:
+ # https://code.google.com/p/google-glog/issues/detail?id=193
+ sed -i \
+ -e '/^docdir =/s:=.*:= @docdir@:' \
+ Makefile.in || die
+}
+
+multilib_src_configure() {
+ use test || export ac_cv_prog_GTEST_CONFIG=no
+ ECONF_SOURCE=${S} \
+ ac_cv_lib_gflags_main=$(usex gflags) \
+ ac_cv_lib_unwind_backtrace=$(usex unwind) \
+ econf \
+ --docdir="\$(datarootdir)/doc/${PF}" \
+ --htmldir='$(docdir)/html' \
+ $(use_enable static-libs static)
+}
+
+_emake() {
+ # The tests always get built ... disable them when unused.
+ emake $(usex test '' noinst_PROGRAMS=) "$@"
+}
+
+multilib_src_compile() {
+ _emake
+}
+
+multilib_src_install() {
+ _emake install DESTDIR="${D}"
+}
+
+multilib_src_install_all() {
+ # Punt docs we don't care about (NEWS is 0 bytes).
+ rm "${ED}"/usr/share/doc/${PF}/{COPYING,NEWS,README.windows} || die
+
+ # --htmldir doesn't work (yet):
+ # https://code.google.com/p/google-glog/issues/detail?id=144
+ dohtml "${ED}"/usr/share/doc/${PF}/*
+ rm "${ED}"/usr/share/doc/${PF}/*.{html,css}
+
+ use static-libs || find "${ED}" -name '*.la' -delete
+}
diff --git a/dev-cpp/glog/metadata.xml b/dev-cpp/glog/metadata.xml
new file mode 100644
index 000000000000..012c86e5ade5
--- /dev/null
+++ b/dev-cpp/glog/metadata.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>vapier@gentoo.org</email>
+ </maintainer>
+ <maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+ </maintainer>
+ <use>
+ <flag name="gflags">Use <pkg>dev-cpp/gflags</pkg> for flag parsing</flag>
+ <flag name="unwind">Use <pkg>sys-libs/libunwind</pkg> for stack unwinding instead of glibc/gcc (may be more reliable on x86_64)</flag>
+ </use>
+ <upstream>
+ <remote-id type="google-code">google-glog</remote-id>
+ <remote-id type="github">google/glog</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/gmock/Manifest b/dev-cpp/gmock/Manifest
new file mode 100644
index 000000000000..57ae9d75b38f
--- /dev/null
+++ b/dev-cpp/gmock/Manifest
@@ -0,0 +1,6 @@
+AUX gmock-1.7.0-gcc6.patch 981 SHA256 47322352bb367d9aa212c8589770222f64f1839c5ee5f5fe43a93c17b80e282f SHA512 8deb186aaeed74c2e4b2f030f2d9a1f224ba698931862d48775db07a88b798e20e28494b6840dad53fd9f9370dbd506d87425ca52b7fb28f5361b4c9392fd6b2 WHIRLPOOL 6f77dd7e376e1065eae916e11974fdad5a4150aff4b6fe50229a943fcc33b0da3116c1110ef89952f29b1c79d6c3f1a723ab38abf727f1ff00b01dde4e498d4f
+DIST gmock-1.7.0.zip 2167746 SHA256 26fcbb5925b74ad5fc8c26b0495dfc96353f4d553492eb97e85a8a6d2f43095b SHA512 0ab7bb2614f8c00e4842a6819dbc6d9323c42241335078c23eaee53ed420d42f1845d44334eccbf7c114cc88f6ac7a493e20d9b46c58cdba645bbd400eb6db55 WHIRLPOOL 722ea3f8bd4130662386810ae0270baafcecb6b7066e8a361388d530e7a2bad4e10787c921c6bb5cefb15a640f4302d288d07deea58acf8c5f5ca84d82722c8e
+EBUILD gmock-1.7.0-r1.ebuild 1289 SHA256 1c5d5b46a4e22839581e1cdb5bb886e7f5e64f1e31856d748f6dc3fc6d176aea SHA512 9f74c87f0858ac7c9c7ba06758473e637baa858d6a4f7541f84559257d1dcf70d7aaf01077724e6ad2893bf23c68ee788df23ff2bccca8b63940fb9b8f0140dd WHIRLPOOL 162fa6c91b0073bac485ab1078ad43c36d9d5f8c354e9dd9b7b9d7c1cb6a4e1c19e38c2143a0a0b32476456198fe6cacac162acda6d7d0f7bf5ccddfda6bd38a
+MISC ChangeLog 3802 SHA256 68ce3e9e843ea1909fc4849e7060a618d4ae0cfe310e0745c031a8a1198627c5 SHA512 9fa596d8a09564f155795d0c838d8098598b5e145350cef7d0b041fd4a70c51018bc0db6a6b008c5e65c9592abbf3bc08a352bd6498927f845cbf53d33173f9a WHIRLPOOL 249623ac138e406213f7ab0a5c1b3574bd13296e6834d4a7e33e45da7f2a0f4a318a10834c25005fe42f7c463ebbe47dc7431c6adabbb51ead20f17fd4c4e72f
+MISC ChangeLog-2015 4228 SHA256 df7c6913b69a0753e56dc0e56d8f0c91ef1bc812715cc35de5e2ef514c1b972a SHA512 d78535d15a9b53ff974ad3b779f5452fa71c839e1a92092a1f5026a7f1694927283150f96744ff19500a8be27a6160f69b6a5d778c18fc098e00e2d722705a79 WHIRLPOOL ac416ad8f7f7aac26ca2c4dc3624583e867714d147e6d5b4d7dae6607657921e1e36efb2e909aee8867ef93a4e2b4118409fdb6f7e5ae118945e791b3bf8b58c
+MISC metadata.xml 354 SHA256 dd5b363c503f555907c6415e5dbd86c7230860984229cbb8738270999a41ffff SHA512 61df749507137960049707611f4d4fae7183714c1f701c30cf53aecb095341fedabca711c3a8f2d3aca5d9df117e7e219f5a2951729fcc679249d20210239af7 WHIRLPOOL bbd1beee1584af3229638db78a74cc91c54e4d254afb50b1d0d7b72a0f29488bb9707f7569431dcd168b114cc62b8ab536f59be4099121b2aa1a73e5db201342
diff --git a/dev-cpp/gmock/files/gmock-1.7.0-gcc6.patch b/dev-cpp/gmock/files/gmock-1.7.0-gcc6.patch
new file mode 100644
index 000000000000..58a78462d60d
--- /dev/null
+++ b/dev-cpp/gmock/files/gmock-1.7.0-gcc6.patch
@@ -0,0 +1,32 @@
+Bug: https://bugs.gentoo.org/602158
+Patch: https://github.com/google/googletest/issues/705#issuecomment-235067917
+
+--- a/include/gmock/gmock-spec-builders.h
++++ b/include/gmock/gmock-spec-builders.h
+@@ -1370,6 +1370,8 @@
+ template <>
+ class ActionResultHolder<void> : public UntypedActionResultHolderBase {
+ public:
++ explicit ActionResultHolder() {}
++
+ void GetValueAndDelete() const { delete this; }
+
+ virtual void PrintAsActionResult(::std::ostream* /* os */) const {}
+@@ -1381,7 +1383,7 @@
+ const typename Function<F>::ArgumentTuple& args,
+ const string& call_description) {
+ func_mocker->PerformDefaultAction(args, call_description);
+- return NULL;
++ return new ActionResultHolder();
+ }
+
+ // Performs the given action and returns NULL.
+@@ -1390,7 +1392,7 @@
+ const Action<F>& action,
+ const typename Function<F>::ArgumentTuple& args) {
+ action.Perform(args);
+- return NULL;
++ return new ActionResultHolder();
+ }
+ };
+
diff --git a/dev-cpp/gmock/gmock-1.7.0-r1.ebuild b/dev-cpp/gmock/gmock-1.7.0-r1.ebuild
new file mode 100644
index 000000000000..42e424f63b84
--- /dev/null
+++ b/dev-cpp/gmock/gmock-1.7.0-r1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="4"
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit epatch libtool multilib-minimal python-any-r1
+
+DESCRIPTION="Google's C++ mocking framework"
+HOMEPAGE="https://github.com/google/googlemock"
+SRC_URI="https://googlemock.googlecode.com/files/${P}.zip"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
+IUSE="static-libs test"
+
+RDEPEND="=dev-cpp/gtest-${PV}*[${MULTILIB_USEDEP}]"
+DEPEND="${RDEPEND}
+ test? ( ${PYTHON_DEPS} )
+ app-arch/unzip"
+
+pkg_setup() {
+ # Stub to disable python_setup running when USE=-test.
+ # We'll handle it down in src_test ourselves.
+ :
+}
+
+src_unpack() {
+ default
+ # make sure we always use the system one
+ rm -r "${S}"/gtest/{Makefile,configure}* || die
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-gcc6.patch
+
+ sed -i -r \
+ -e '/^install-(data|exec)-local:/s|^.*$|&\ndisabled-&|' \
+ Makefile.in
+ elibtoolize
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE=${S} econf $(use_enable static-libs static)
+}
+
+multilib_src_test() {
+ python_setup
+ emake check
+}
+
+multilib_src_install() {
+ default
+ dobin scripts/gmock-config
+}
+
+multilib_src_install_all() {
+ use static-libs || find "${ED}" -name '*.la' -delete
+}
diff --git a/dev-cpp/gmock/metadata.xml b/dev-cpp/gmock/metadata.xml
new file mode 100644
index 000000000000..750cc7eff167
--- /dev/null
+++ b/dev-cpp/gmock/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>vapier@gentoo.org</email>
+ </maintainer>
+ <upstream>
+ <remote-id type="google-code">googlemock</remote-id>
+ <remote-id type="github">google/googlemock</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/gnome-vfsmm/Manifest b/dev-cpp/gnome-vfsmm/Manifest
new file mode 100644
index 000000000000..24339b2abd3d
--- /dev/null
+++ b/dev-cpp/gnome-vfsmm/Manifest
@@ -0,0 +1,5 @@
+DIST gnome-vfsmm-2.26.0.tar.bz2 628670 SHA256 d6a89fc82238bbfd6d3f7e44bcaee73dc197be98635be482a2d2df38ec0446d3 SHA512 82e538c06615af83e9e455b0db601e37ee5396cac9b44884879383f3671876cca62bf534f4338177d1a62ab59e834d197302533dcc77f3c09b5433da9c660af8 WHIRLPOOL 896eb76e426d5635e70f15df63851c5fc4127f9e549f42697fd82c8cde37c2b4a32cc5c7cf3439a08497421f824f0087ca438c8e366e908f43dee683f13289cf
+EBUILD gnome-vfsmm-2.26.0-r1.ebuild 1222 SHA256 2990989a7edfc68e4da73518d6162c287ff5dd5862e3e3b0f10e1309e8e1b1c4 SHA512 ff7b2242b40605caec955879667a432a8730a915e25e03e49856f985ac2e9213cb8bf32f60d760696bf1daa622a9c4768f0b42f6908bde5aad68da76b077da4a WHIRLPOOL 1ac2b189f2534a989409d487e92799119756254d6be30e04d516e7519305e47478aae7d9f6b16b3586afbb763c7e93881e801c8c7aa08ae79d3b3aed4802f4c5
+MISC ChangeLog 3685 SHA256 06e8ba99957c1c07b1ecf8f08aea9d54b00ab3ba5060ac84bd75c3405add7946 SHA512 8b56c37170d79c5f2583e4ecd43fcc0cca9634b114ac7159f98972dd9e3a05fe9c83fa1fb08e7e770dbee2fb67f7340a02c235bd0cd35853e7974b98ecd22899 WHIRLPOOL b6fc771e47fbe13c93b6ca3e3ca2b3727995be766d06f63dd2b9acd2d2ffc735b9bd8910dccd8e7ed422af07b7faf524f88cf7e175b72637fe99b020a0ae5117
+MISC ChangeLog-2015 8733 SHA256 e95cecde5a9ebe241846f60d077cf32628402d391a4ab04e929092bfa023e468 SHA512 f62fdc8a4a5ff4dfcb77182eebaf93c1f59239b29d57d1fbf2983607f92f24abef3308f08cfe15baa0d684c3920237b0f118d0ca3b05f746b34b52cb6d2df132 WHIRLPOOL 81ae095fb039104e6baafd5862d5a38dcc9bed70e7146bf05514347eb83d64ba1fa2f9627ab42768cc365a9c7ec81d678c6549af82fe9ca313aec9729ca31a11
+MISC metadata.xml 253 SHA256 8f92439176f4cd2ba6a060c523c6b29ab210cd9aab7903b6db6eecc6654b1e21 SHA512 8d59f413993268ca783f7407b676900bb2d964754bf705d4175e2bafbe058a52af74f3928e4bd84d292518f8cf13fab7051486ab7cdc61d02fae6e0188d44442 WHIRLPOOL d5d853bd8a39a54c45728e16a1aa295e014e0a3a105a01ec6b3c93a4f53d7b7055644708301751b7f5be68543056d3f0bd611d5ce0be442eb5d06f5e032fe154
diff --git a/dev-cpp/gnome-vfsmm/gnome-vfsmm-2.26.0-r1.ebuild b/dev-cpp/gnome-vfsmm/gnome-vfsmm-2.26.0-r1.ebuild
new file mode 100644
index 000000000000..91bcc03e1c4c
--- /dev/null
+++ b/dev-cpp/gnome-vfsmm/gnome-vfsmm-2.26.0-r1.ebuild
@@ -0,0 +1,57 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+GCONF_DEBUG="no"
+GNOME_TARBALL_SUFFIX="bz2"
+
+inherit flag-o-matic gnome2
+
+DESCRIPTION="C++ bindings for gnome-vfs"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1"
+SLOT="1.1"
+KEYWORDS="alpha amd64 arm ia64 ppc ppc64 ~sh sparc x86 ~x86-fbsd"
+IUSE="doc examples"
+
+# glibmm dep is because build fails with older versions...
+RDEPEND="
+ >=gnome-base/gnome-vfs-2.8.1
+ >=dev-cpp/glibmm-2.12
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? ( app-doc/doxygen )
+"
+
+src_prepare() {
+ if ! use doc; then
+ # documentation requires Doxygen and takes time
+ sed -i 's/^\(SUBDIRS =.*\)docs\(.*\)$/\1\2/' Makefile.in || \
+ die "sed Makefile.in failed"
+ fi
+
+ if ! use examples; then
+ # don't waste time building the examples
+ sed -i 's/^\(SUBDIRS =.*\)examples\(.*\)$/\1\2/' Makefile.in || \
+ die "sed Makefile.in failed"
+ fi
+
+ append-cxxflags -std=c++11
+
+ gnome2_src_prepare
+}
+
+src_install() {
+ gnome2_src_install
+
+ if use doc ; then
+ dohtml -r docs/reference/html/*
+ fi
+
+ if use examples; then
+ find examples -type d -name '.deps' -exec rm -fr {} \; 2>/dev/null
+ cp -R examples "${ED}"/usr/share/doc/${PF}
+ fi
+}
diff --git a/dev-cpp/gnome-vfsmm/metadata.xml b/dev-cpp/gnome-vfsmm/metadata.xml
new file mode 100644
index 000000000000..996e7cacd217
--- /dev/null
+++ b/dev-cpp/gnome-vfsmm/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/gstreamermm/Manifest b/dev-cpp/gstreamermm/Manifest
new file mode 100644
index 000000000000..447ad746ff20
--- /dev/null
+++ b/dev-cpp/gstreamermm/Manifest
@@ -0,0 +1,13 @@
+AUX 1.4.3-fix-compile.patch 881 SHA256 32787570eea193b372248af3f9b5d13ef16bff990a2caa409b65993bc737302c SHA512 a26b09d202a2aba70774722da39b5a6fcd0ca25e8fb4cf852d73bab0791d573a08fec4c824332d443905ad1a2711399dc6cab5a426ef9825644c8bdad4debc58 WHIRLPOOL 9bcdf60ed13a32e9885719120796b2a48868ee558bc9a2fbab7bcfb143578151b4a45a9844bfff85d36d6ee1b23223102ec129aa0049d3502c29cf17cadc49a3
+AUX 1.8.0-add-missing-header.patch 1139 SHA256 205aa61d46b4cacb78401fa6ccc46307d1982eda00ee49fac9fa74210ab13c33 SHA512 193bf9b06d647ad553f7f360643f60fea9396f02b63bc79cd2c9aac47ac42c53d63068ec8db2655efc93dfd5a9a5e28adddaf2cb8e0a3e9094603eab9f123d1b WHIRLPOOL 2b75146f41c852e35be18b43cc8b9eb58b9351fe889d4acc883fba19397ffc6b15b8b8d17fb7caaf8b67d768f75914ff5657acb5415ed872ab05bd1064ff7c6e
+AUX 1.8.0-fix-wrapping.patch 1336 SHA256 755a7146cc4ae6c80ce276647898ff1c1d930f0b95973dc1d2fef81fc8fdc315 SHA512 9cae5e02a043c51e24dea06293f13536c895a8892d709b0a451f127d9b093c3b1455ec4e419aa533d2f47b43591ae7bc4a7b0dcf5dddd87ee12ecf510c9a06b6 WHIRLPOOL 197eb0f0d40025b2a9ba54be55484c4c27894e72a3236ce3004d0610337bdb94f567fd24568ae0c4f1f903f518a565168d1e1d05e8af112aaf2e951c26603e90
+AUX 1.8.0-gst-bad-pkgconfig-cflags.patch 2305 SHA256 b2eea798f2ba1f1febe52891c9ab70c7ed7e90d22594c928a65dd5522814fa49 SHA512 8121d2f8c283f26311a05318d86544ae4affc4b126adaee0e30cad1a5e62586e109b9f376996eb2d7e35b8dc0d12d5c24101cacc21ccbd3b3c9b2151e00bf11d WHIRLPOOL 441f5e4f2f39d6b3b0ae52e886199046c84a2919b9d526d37708de25e5bc6f1075f122ace8afc9c7dfaad236495dfad19c9abc360abbc51beecf8a604dfe6b92
+DIST gstreamermm-0.10.11.tar.xz 5840552 SHA256 12b5f377363594a69cb79f2f5cd0a8b1813ca6553680c3216e6354cfd682ebc6 SHA512 2ad370f6902dcb4663ea801bdbbf744a98de9e24fc04f27b5044a4a95337168e2bb195761a07ac9c1011f9ed4936287fcc5f4c2b984f0a362b429d05be7d3909 WHIRLPOOL d9be72d4691b9b0769b75819ca9403a2df7f1dbdad4974e4b26e4fd87d4b7ea0503fb2ba6a500a008ec9d1c29f6677e61649798801e6babf7e4d7b8562cc72f2
+DIST gstreamermm-1.4.3.tar.xz 5886048 SHA256 f1c11ee1cf7537d77de7f8d486e09c5140cc4bb78882849718cd88959a55462e SHA512 ea4d281a4f3b79113fc3a0474e23d82442facac6eaf66215de412310b9c306aa5d586ee5570087d94d90acbfc09c5766edba1414b50f0fd9a3111cda610f5671 WHIRLPOOL b8bee1e9672c5ca527718e1826a4b486ea47fd772b079dddb532716c2082bb4cca55823a8b3dcd5eabe8819ee944b0cb68740c6b986ff329b71dad47240fe904
+DIST gstreamermm-1.8.0.tar.xz 3848488 SHA256 3ee3c1457ea2c32c1e17b784faa828f414ba27a9731532bf26d137a2ad999a44 SHA512 4d458c8a2efde683dabd00308ddde6fbf732788fb9282cb2eeab9f3a01dc9b4a03bfbbe9991cd50ef3092cec861034b3a34a6c5e364582dbfc6b1a0d5bb935fe WHIRLPOOL 77b7bf6c3f6d96e26e41a80116b417e6012cacaaf884e7705218c694bc55aceeb7d065996ec02c2c3744975f146cced365974d853ef98195b069b9d6982b71ae
+EBUILD gstreamermm-0.10.11.ebuild 897 SHA256 6e993409de4635a319cd86e91cee5c7c12d50e6d29f6cb9d9b7350c33dcdf9e7 SHA512 ae96f4cfcc2dcfe0dc00254e97c4b7a57ab3723bacda48127b1ddde11d95881c8b943ba65cc09711a4f5ee4b42d58dd4be99435ebf89a7d875dd0656ababb903 WHIRLPOOL 4f79e8a607b7a7b4e32e5eb190686f0687473749faf12f4a652862c52e5b801a75018ae3768118f5720c1537512fcff75eeaeb19d9448016fecacaf9c3f44537
+EBUILD gstreamermm-1.4.3.ebuild 1493 SHA256 b5cdd9cbc50c126dba40c9102d639b4400c195f83ddaa9d040c4924005d8bec1 SHA512 376d884f68652fb8103a4b44aabd44fbdcee6fd51e6ad973e9a055fea625a220061a7565d8566d0388b74bc9aae25dc1379a53486cd9f4db5d685fbf0809f6a6 WHIRLPOOL 3e7fb14e4b115cfe653e4534eebe04cd736ff9f46f3e80583cad83cfaa29b14d2d69b02d01398127a3ccb9af3e8b2bb9a58046fe9ddf7a7f95a8f9321fc7d104
+EBUILD gstreamermm-1.8.0.ebuild 1736 SHA256 499604b5c86c5c88fb527ef956376f0888d4a06254dd9060c87f5b109cad8c1a SHA512 1f5bcdfa193c0599ede254530230b1699faa9ea77652a3ffda092f586536e9f69f322ab9b45ee707c326f0313b2be4cc8687ec270422dcda91ad599b71a86bc6 WHIRLPOOL f48a5d62ba6b9e0fa3b3592f23b6be321807ea94b263b45b635f0e5505febe1b54e1308088c152ab7ece33bead600d7766706c2f4a6e0f807322c7fd6d6ce901
+MISC ChangeLog 4215 SHA256 51429323e152e736515e84961a6f744128224330f7f8ce94c9c9b5c4fc0acc78 SHA512 7654b35b150b4642d967195916881f516103ee129198ca06f10bcf952b09b5784731a328e04d4730d95a2077ed1a9642eae81d547f9e77bb27a1d65d768f8364 WHIRLPOOL 5f2a63c54410b83c4a228e1734555e0ab4f7191eee084d6e6a4bacb62cd23df91807a76026b756f4684aebea82f46ab1d565c739ad121bdcb753e7105e5096b6
+MISC ChangeLog-2015 5730 SHA256 efc48bd9bbb215ed8e9565dca50d265d00395708804ed0583de782b839252132 SHA512 c3c18d050aafe842205bc7650f1f8937df1cf2907e1804acb73300ea3718e8d9bb45ac976b23257849c2bbc847f081a3bafb11f4015d110a7bd88d833af2d40e WHIRLPOOL 1ce45383db8b37530ed939df48b8c23b31dbad417253bffcf2fdca2d13172dbec98fe5eeab8823e9a8fa5af607974f089dfd67de6a2d701ce7e00e39a1c53218
+MISC metadata.xml 375 SHA256 20b538394afbd5634f28e4d04b8c1349b1d8033e6e4d04661390bc8c399c23a6 SHA512 3b44cf887272a8478662aeb995b97566cd109b3b134941c11f37ab38b648a58f91644f692440e8aafbc154e7acf85bf385771b008b17537848fa670d6fa1a62f WHIRLPOOL 53b26098970b9b5ae00b59a6beff5677bf4b53e725115f75d63637eef7ae192da8d36ce2940a3992ee06b717008c59e5fe2661cc7a78d75730f4bde8eb743921
diff --git a/dev-cpp/gstreamermm/files/1.4.3-fix-compile.patch b/dev-cpp/gstreamermm/files/1.4.3-fix-compile.patch
new file mode 100644
index 000000000000..6ccf0e13ce00
--- /dev/null
+++ b/dev-cpp/gstreamermm/files/1.4.3-fix-compile.patch
@@ -0,0 +1,23 @@
+From c5006faf05bc4b46767d30f42bcb6157836b7540 Mon Sep 17 00:00:00 2001
+From: Marcin Kolny <marcin.kolny@gmail.com>
+Date: Sat, 17 Sep 2016 22:49:34 +0200
+Subject: Fix warnings
+
+---
+ gstreamer/gstreamermm/check.cc | 2 +-
+
+leio: Trimmed patch down to only ThrowIf that makes compilation fail with newer gcc, not just warn
+
+diff --git a/gstreamer/gstreamermm/check.cc b/gstreamer/gstreamermm/check.cc
+index d620435..a0d323d 100644
+--- a/gstreamer/gstreamermm/check.cc
++++ b/gstreamer/gstreamermm/check.cc
+@@ -54,7 +54,7 @@ RefPtr<Element> Check::_Check::setup_element (const ustring& factory)
+
+ element = ElementFactory::create_element (factory, factory);
+
+- ThrowIf (element, "Could not create a '" + factory + "' element");
++ ThrowIf (!!element, "Could not create a '" + factory + "' element");
+ CheckRefCount (element->gobj(), factory, 1);
+
+ return element;
diff --git a/dev-cpp/gstreamermm/files/1.8.0-add-missing-header.patch b/dev-cpp/gstreamermm/files/1.8.0-add-missing-header.patch
new file mode 100644
index 000000000000..1e8e5d43dde6
--- /dev/null
+++ b/dev-cpp/gstreamermm/files/1.8.0-add-missing-header.patch
@@ -0,0 +1,42 @@
+From 73b25333ca3778ccf4322f47abbcbc507c31890d Mon Sep 17 00:00:00 2001
+From: Marcin Kolny <marcin.kolny@gmail.com>
+Date: Wed, 12 Oct 2016 19:37:45 +0200
+Subject: [PATCH] Gst::Caps: include missing header
+
+---
+ gstreamer/src/caps.ccg | 1 -
+ gstreamer/src/caps.hg | 2 +-
+ 2 files changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/gstreamer/src/caps.ccg b/gstreamer/src/caps.ccg
+index 93acf7e..782f8e2 100644
+--- a/gstreamer/src/caps.ccg
++++ b/gstreamer/src/caps.ccg
+@@ -17,7 +17,6 @@
+ * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+-#include <gstreamermm/structure.h>
+ #include <gstreamermm/capsfeatures.h>
+
+ namespace Gst
+diff --git a/gstreamer/src/caps.hg b/gstreamer/src/caps.hg
+index 7969cdc..bf0b950 100644
+--- a/gstreamer/src/caps.hg
++++ b/gstreamer/src/caps.hg
+@@ -18,6 +18,7 @@
+ */
+
+ #include <gstreamermm/miniobject.h>
++#include <gstreamermm/structure.h>
+
+ _DEFS(gstreamermm,gst)
+
+@@ -28,7 +29,6 @@ _WRAP_ENUM(CapsIntersectMode, GstCapsIntersectMode, NO_GTYPE)
+
+ _WRAP_ENUM(CapsFlags, GstCapsFlags)
+
+-class Structure;
+ class CapsFeatures;
+
+ /** Structure describing sets of media formats.
diff --git a/dev-cpp/gstreamermm/files/1.8.0-fix-wrapping.patch b/dev-cpp/gstreamermm/files/1.8.0-fix-wrapping.patch
new file mode 100644
index 000000000000..9cb6bcaa87cb
--- /dev/null
+++ b/dev-cpp/gstreamermm/files/1.8.0-fix-wrapping.patch
@@ -0,0 +1,23 @@
+From 3440f119a7d03d50688f303b3456695c4d8e5187 Mon Sep 17 00:00:00 2001
+From: Marcin Kolny <marcin.kolny@gmail.com>
+Date: Sun, 16 Oct 2016 22:20:42 +0200
+Subject: [PATCH] Gst::Pad: fix method wrapper
+
+ * gstreamer/src/pad.hg: fix method proxy_query_accept_caps()
+---
+ gstreamer/src/pad.hg | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/gstreamer/src/pad.hg b/gstreamer/src/pad.hg
+index cf0d78e..f2ff258 100644
+--- a/gstreamer/src/pad.hg
++++ b/gstreamer/src/pad.hg
+@@ -236,7 +236,7 @@ public:
+
+ _WRAP_METHOD(bool query_accept_caps(const Glib::RefPtr<const Gst::Caps>& caps) const, gst_pad_query_accept_caps)
+ _WRAP_METHOD(bool proxy_query_caps(const Glib::RefPtr<Gst::Query>& query) const, gst_pad_proxy_query_caps)
+- _WRAP_METHOD(bool proxy_query_accept_caps(const Glib::RefPtr<Gst::Query>& query) const, gst_pad_proxy_accept_caps)
++ _WRAP_METHOD(bool proxy_query_accept_caps(const Glib::RefPtr<Gst::Query>& query) const, gst_pad_proxy_query_accept_caps)
+ _WRAP_METHOD(bool peer_query_accept_caps(const Glib::RefPtr<const Gst::Caps>& caps) const, gst_pad_peer_query_accept_caps)
+ _WRAP_METHOD(bool peer_query_position(Gst::Format format, gint64& cur) const, gst_pad_peer_query_position)
+ _WRAP_METHOD(bool peer_query_duration(Gst::Format format, gint64& duration) const, gst_pad_peer_query_duration)
diff --git a/dev-cpp/gstreamermm/files/1.8.0-gst-bad-pkgconfig-cflags.patch b/dev-cpp/gstreamermm/files/1.8.0-gst-bad-pkgconfig-cflags.patch
new file mode 100644
index 000000000000..bac4fde587e8
--- /dev/null
+++ b/dev-cpp/gstreamermm/files/1.8.0-gst-bad-pkgconfig-cflags.patch
@@ -0,0 +1,42 @@
+From 3a4698e1c6e2b2c6c703f07687cc485ada734d60 Mon Sep 17 00:00:00 2001
+From: Marcin Kolny <marcin.kolny@gmail.com>
+Date: Tue, 15 Nov 2016 21:57:57 +0100
+Subject: [PATCH] plugins-bad: use flags and libs from gstreamer-gl pkg config
+ file
+
+---
+ examples/Makefile.am | 2 +-
+ gst-plugins-bad/gstreamermm-plugins-bad/Makefile.am | 4 ++--
+ 2 files changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/examples/Makefile.am b/examples/Makefile.am
+index a08d446..200ab02 100644
+--- a/examples/Makefile.am
++++ b/examples/Makefile.am
+@@ -15,7 +15,7 @@
+
+ AUTOMAKE_OPTIONS = subdir-objects
+
+-examples_cppflags = $(GSTREAMERMM_CFLAGS)
++examples_cppflags = $(GSTREAMERMM_CFLAGS) $(GSTREAMERMM_PLUGINS_BAD_CFLAGS) $(GSTREAMERMM_GL_CFLAGS)
+ gstreamermm_includes = -I$(top_builddir)/gstreamer $(if $(srcdir:.=),-I$(top_srcdir)/gstreamer)
+ local_libgstreamermm = $(top_builddir)/gstreamer/gstreamermm/libgstreamermm-$(GSTREAMERMM_API_VERSION).la
+
+diff --git a/gst-plugins-bad/gstreamermm-plugins-bad/Makefile.am b/gst-plugins-bad/gstreamermm-plugins-bad/Makefile.am
+index eb46188..859f0ba 100644
+--- a/gst-plugins-bad/gstreamermm-plugins-bad/Makefile.am
++++ b/gst-plugins-bad/gstreamermm-plugins-bad/Makefile.am
+@@ -23,11 +23,11 @@ include $(top_srcdir)/build/compile-binding.am
+ local_includes = -I$(top_builddir)/gstreamer $(if $(srcdir:.=),-I$(top_srcdir)/gstreamer)
+ local_cppflags = $(binding_includes) $(local_includes) $(binding_cppflags) -DGSTREAMERMM_PLUGINS_BAD_BUILD=1
+
+-AM_CPPFLAGS = $(local_cppflags) $(GSTREAMERMM_PLUGINS_BAD_CFLAGS) $(GSTREAMERMM_CFLAGS)
++AM_CPPFLAGS = $(local_cppflags) $(GSTREAMERMM_PLUGINS_BAD_CFLAGS) $(GSTREAMERMM_CFLAGS) $(GSTREAMERMM_GL_CFLAGS)
+ AM_CXXFLAGS = $(GSTREAMERMM_WXXFLAGS)
+
+ local_libadd = $(top_builddir)/gstreamer/gstreamermm/libgstreamermm-$(GSTREAMERMM_API_VERSION).la
+
+ libgstreamermm_plugins_bad_@GSTREAMERMM_API_VERSION@_la_SOURCES = $(binding_sources)
+ libgstreamermm_plugins_bad_@GSTREAMERMM_API_VERSION@_la_LDFLAGS = -no-undefined -version-info $(GSTREAMERMM_SO_VERSION)
+-libgstreamermm_plugins_bad_@GSTREAMERMM_API_VERSION@_la_LIBADD = $(GSTREAMERMM_PLUGINS_BAD_LIBS) $(local_libadd)
++libgstreamermm_plugins_bad_@GSTREAMERMM_API_VERSION@_la_LIBADD = $(GSTREAMERMM_PLUGINS_BAD_LIBS) $(GSTREAMERMM_GL_LIBS) $(local_libadd)
diff --git a/dev-cpp/gstreamermm/gstreamermm-0.10.11.ebuild b/dev-cpp/gstreamermm/gstreamermm-0.10.11.ebuild
new file mode 100644
index 000000000000..97faf48fdac5
--- /dev/null
+++ b/dev-cpp/gstreamermm/gstreamermm-0.10.11.ebuild
@@ -0,0 +1,38 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+GNOME2_LA_PUNT="yes"
+
+inherit flag-o-matic gnome2
+
+DESCRIPTION="C++ interface for GStreamer"
+HOMEPAGE="https://gstreamer.freedesktop.org/bindings/cplusplus.html"
+
+LICENSE="LGPL-2.1"
+SLOT="0.10"
+KEYWORDS="amd64 ~ppc x86"
+IUSE="test"
+
+RDEPEND="
+ >=media-libs/gstreamer-0.10.36:0.10
+ >=media-libs/gst-plugins-base-0.10.36:0.10
+ >=dev-cpp/glibmm-2.33.4:2
+ >=dev-cpp/libxmlpp-2.14:2.6
+ >=dev-libs/libsigc++-2:2
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ test? (
+ media-libs/gst-plugins-good:0.10
+ media-plugins/gst-plugins-vorbis:0.10
+ media-plugins/gst-plugins-x:0.10 )
+"
+
+# Installs reference docs into /usr/share/doc/gstreamermm-0.10/
+# but that's okay, because the rest of dev-cpp/*mm stuff does the same
+
+src_prepare() {
+ gnome2_src_prepare
+ append-cxxflags -std=c++11 #568254
+}
diff --git a/dev-cpp/gstreamermm/gstreamermm-1.4.3.ebuild b/dev-cpp/gstreamermm/gstreamermm-1.4.3.ebuild
new file mode 100644
index 000000000000..4f8e13d9c739
--- /dev/null
+++ b/dev-cpp/gstreamermm/gstreamermm-1.4.3.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+inherit flag-o-matic gnome2
+
+DESCRIPTION="C++ interface for GStreamer"
+HOMEPAGE="https://gstreamer.freedesktop.org/bindings/cplusplus.html"
+
+LICENSE="LGPL-2.1"
+SLOT="1.0"
+KEYWORDS="amd64 ~ppc x86"
+IUSE="doc examples test"
+
+RDEPEND="
+ >=media-libs/gstreamer-${PV}:1.0
+ >=media-libs/gst-plugins-base-${PV}:1.0
+ >=dev-cpp/glibmm-2.36:2
+ >=dev-cpp/libxmlpp-2.14:2.6
+ >=dev-libs/libsigc++-2:2
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? (
+ app-doc/doxygen
+ dev-libs/libxslt
+ media-gfx/graphviz )
+ test? (
+ dev-cpp/gtest
+ >=media-libs/gst-plugins-base-${PV}:1.0[X,ogg,theora,vorbis]
+ >=media-libs/gst-plugins-good-${PV}:1.0
+ >=media-plugins/gst-plugins-jpeg-${PV}:1.0 )
+"
+# dev-cpp/mm-common"
+# eautoreconf needs mm-common
+
+# Installs reference docs into /usr/share/doc/gstreamermm-1.0/
+# but that's okay, because the rest of dev-cpp/*mm stuff does the same
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PV}-fix-compile.patch
+
+ if ! use examples; then
+ # don't waste time building examples
+ sed -e 's/^\(SUBDIRS =.*\)examples\(.*\)$/\1\2/' \
+ -i Makefile.am Makefile.in || die
+ fi
+
+ sed -e 's/ -Werror/ /' -i tests/Makefile.am tests/Makefile.in || die
+
+ gnome2_src_prepare
+ append-cxxflags -std=c++11 #568254 , fixed in master
+}
+
+src_configure() {
+ gnome2_src_configure $(use_enable doc documentation)
+}
+
+src_test() {
+ # running tests in parallel fails
+ emake -j1 check
+}
diff --git a/dev-cpp/gstreamermm/gstreamermm-1.8.0.ebuild b/dev-cpp/gstreamermm/gstreamermm-1.8.0.ebuild
new file mode 100644
index 000000000000..f2f2934ea4e8
--- /dev/null
+++ b/dev-cpp/gstreamermm/gstreamermm-1.8.0.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+GNOME2_EAUTORECONF="yes"
+
+inherit gnome2 virtualx
+
+DESCRIPTION="C++ interface for GStreamer"
+HOMEPAGE="https://gstreamer.freedesktop.org/bindings/cplusplus.html"
+
+LICENSE="LGPL-2.1"
+SLOT="1.0/1"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="doc examples test"
+
+# module is experimental:
+# >=media-libs/gst-plugins-bad-${PV}:1.0[opengl?]
+RDEPEND="
+ >=media-libs/gstreamer-${PV}:1.0
+ >=media-libs/gst-plugins-base-${PV}:1.0
+ >=dev-cpp/glibmm-2.47.6:2
+ >=dev-cpp/libxmlpp-2.14:2.6
+ >=dev-libs/libsigc++-2:2
+"
+DEPEND="${RDEPEND}
+ dev-cpp/mm-common
+ virtual/pkgconfig
+ doc? (
+ app-doc/doxygen
+ dev-libs/libxslt
+ media-gfx/graphviz )
+ test? (
+ dev-cpp/gtest
+ >=media-libs/gst-plugins-base-${PV}:1.0[X,ogg,theora,vorbis]
+ >=media-libs/gst-plugins-good-${PV}:1.0
+ >=media-plugins/gst-plugins-jpeg-${PV}:1.0 )
+"
+# eautoreconf:
+# dev-cpp/mm-common
+
+# Installs reference docs into /usr/share/doc/gstreamermm-1.0/
+# but that's okay, because the rest of dev-cpp/*mm stuff does the same
+
+PATCHES=(
+ # Upstream patches
+ "${FILESDIR}"/1.8.0-add-missing-header.patch
+ "${FILESDIR}"/1.8.0-gst-bad-pkgconfig-cflags.patch
+ "${FILESDIR}"/1.8.0-fix-wrapping.patch
+)
+
+src_prepare() {
+ if ! use examples; then
+ # don't waste time building examples
+ sed -e 's/^\(SUBDIRS =.*\)examples\(.*\)$/\1\2/' \
+ -i Makefile.am Makefile.in || die
+ fi
+
+ sed -e 's/ -Werror/ /' -i tests/Makefile.am tests/Makefile.in || die
+
+ gnome2_src_prepare
+}
+
+src_configure() {
+ gnome2_src_configure \
+ --disable-plugins-bad \
+ $(use_enable doc documentation) \
+ $(use_enable test unittests)
+}
+
+src_test() {
+ # running tests in parallel fails
+ virtx emake -j1 check
+}
diff --git a/dev-cpp/gstreamermm/metadata.xml b/dev-cpp/gstreamermm/metadata.xml
new file mode 100644
index 000000000000..9195662ffa23
--- /dev/null
+++ b/dev-cpp/gstreamermm/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>eva@gentoo.org</email>
+ <name>Gilles Dartiguelongue</name>
+ </maintainer>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/gtest/Manifest b/dev-cpp/gtest/Manifest
new file mode 100644
index 000000000000..1d4c82e6c882
--- /dev/null
+++ b/dev-cpp/gtest/Manifest
@@ -0,0 +1,12 @@
+AUX configure-fix-pthread-linking.patch 3142 SHA256 501f42dd4f4f4412fcb18fc4eb5f1100f5c5a6b19610f6548bccc84989c6f83e SHA512 4347570606853c75e43d3d1abe449cd562538e531136658e6742f8e2dddcc1767932b427a063f711b868467ca85ff947f24c4ed3e328319bd0a739bb66093016 WHIRLPOOL 5ab7be10a9bd675398884f2a4ad8c30fef17412ff3fbaae5d14cf290ebf723ccc005d2ea1dd7ad68c8bd8db57d06cc0fadd79d7f9f2ab46ea5ed0a87df8201fb
+AUX gtest-1.8.0-multilib-strict.patch 1126 SHA256 0522177e2d56726e1e3b535f0a21621cd2c732f3c8b12aeac6c89d1993c9c5f7 SHA512 45bb44e3f0743ec0bd9f440585610ed04cbbd8befed398844300e21710b28f755f1775cc005efcdd0b4f6d2ec2200ad2abe98b2c6764400ffa04242fe7ce06fc WHIRLPOOL 1fcf40475c8964efce07b55ffb47e9333575c90d20401cf79e0909cd36c9bf39fa40a00ed5704a486882d99b680308b6d26a7bf9c3efd025f01c39841ee50260
+AUX gtest-9999-fix-gcc6-undefined-behavior.patch 665 SHA256 ec8cc5eae006b8f9f75b2e4b76dbb3104c5618e397fd20aba7cf620c7ff5e439 SHA512 fc6f11a06f9aa7b1c31f5abbec208704dd0f461fed36d421802843234bb3d9fe3f2e35482629546c1a8585c84fb0850768dd8b63e0f88cfe0508b00278d800cc WHIRLPOOL 1ab186efcc371f45f2633f5e7c51665895673eba68490810ca02c405b060a1fdbf41afe04fe7bcbb7c00ba552e756ff3cd16daf7adb2397007b21ce62fb21147
+AUX gtest-9999-fix-py-tests.patch 820 SHA256 45c308aa3526c9945b2043bef4891b58dae598dfc68e7e3b7b7dce375dac2db8 SHA512 4a059704303fffe508bd099544caaab5e4c819c978d6c104dce302e82348dd41fd63390459828a5f6161624dfd47aed5dc9cb466d36796904d598e0b10427949 WHIRLPOOL b39f39fea9dbe209781b98c0dc8597dbebac2f265abdae1c89089509882c600d5459500ece98dde59273e39a223d017e00f4c333798f744cafc5b285c4210935
+DIST gtest-1.7.0.tar.gz 1001582 SHA256 c0f860eee47c86e0aeb462fd0bdfd70e3975297e0b8b178e0e03a95e1f6c9bc4 SHA512 a9f5c047b39efb2d11b55ee9913662ca402ac6837b3ad2d278ecfbd1caf32ed4546f169e3e92503d57bf3b62ccf89cd062da1c7ea3638aae98e868d2766363c3 WHIRLPOOL 36edbdf8be7c3793a89918a3c43d74e75a6281a37c394f7d2f20506130a76aab04a3beddba01bf7f0e9b6901c7e834ca014c31c913c0ea846d3f6be9c93599d2
+DIST gtest-1.8.0.tar.gz 1281617 SHA256 58a6f4277ca2bc8565222b3bbd58a177609e9c488e8a72649359ba51450db7d8 SHA512 1dbece324473e53a83a60601b02c92c089f5d314761351974e097b2cf4d24af4296f9eb8653b6b03b1e363d9c5f793897acae1f0c7ac40149216035c4d395d9d WHIRLPOOL 7d95c06818332f9596dbda03d21416012c00e05c78be0814279ab9e7059b9d836060bab83ad46d013ccf1ba40973680c0793d78ac22f6016773fd93aa97b779b
+EBUILD gtest-1.7.0-r1.ebuild 1249 SHA256 963b6999cbdc5ee46edc6d922c0a72b13e48d7844a681c90eea314736276b025 SHA512 67a53dfcbc8c85f6e4e6aedc348a413b7fcc328130f5c83bb3963e607e96d735d9213d5b013ca40beb910accca5c69f36bfc9e9c5012c3be2663cb4cf93b6fb2 WHIRLPOOL 07b94b0792b9bd5560397029b552d3719de71d23b74afa46c376c564b4c5128b79f83d6cf7669d0b923918cd4471927395f1b80498cb9ca6469b0f3c90727b6d
+EBUILD gtest-1.8.0.ebuild 1451 SHA256 41e9d313dc0a5b7cc7510101998a4343c8e922489552cbe319a8ebbafc5a473b SHA512 c883641e274747e567d0f1aa5d5c7a593b6f0d3f54dcc540e0900cf03c7129f480c96eb2b920a7b8cdd8c07243fd12420428c9c461faf1600a09727917061eaa WHIRLPOOL 6f2069076ad5382e067b58da8e491f8538123eb9e678235a0c829d7bc94185f4495903d284d586f25755abae6369d0aebeedd53661e0d6f706d08886a372db6b
+EBUILD gtest-9999.ebuild 1291 SHA256 a31da7e9e2aa54c1711ce10267b03106c1ccf6181c7537183b189496f1164d70 SHA512 1ab32d603822dde81e81e5cb16815f749c3e054b3e25fdce40ea1ee487b7721c812a2f0ff47e70e978af4e81647c9ff49ce549e3f1b690f8586cc182c60dec32 WHIRLPOOL 86be17117e2230fd3a397b2aa3b7285796cbbbfa6e8a2b80796ac3e1c40196baff064286ee25359ab405ba38fd8d00f6aa1f8324d98deec7f0645542824d9f0e
+MISC ChangeLog 3559 SHA256 3b1dc0b889ac8573edfb8347118debc48feb77e5009e253126ac6e21514de36b SHA512 027e1bef0ba59e6ccc4c09dfd6b40acb4437398cd3532068a7a3ac7bbf69270c64f1b6ac493704e87909e6a3fc71a72b4d22a1a616d4c66604482834041ff728 WHIRLPOOL e26b9cbda41d2266b1aea21dcd1721b7ee4bd250413cb6c5d4130a7072aef71c9af71302e10f1cc718e2ae10fde6d234d84b1541fede7b5b238718b73164a93c
+MISC ChangeLog-2015 7122 SHA256 04a56c441092e2cc6ea69082630e26a82b369945219147611af9905eadc1d9ff SHA512 1baf81de23ffa96b2970b71238627b1ca895e1b2b943b962fd7782200c891c1e1f3d1ffc1e33aaa7095999c106698b4cff53643c3648bbc522a7edf317f17d8f WHIRLPOOL 22470f963e4d9ec80a3071e3d054768cbe489481365184f834e5e5ff67daa371f40c87cf57b00a3a0637fc9a8f18197b855ea87e7ae58bcc07b61d075a4ecb30
+MISC metadata.xml 569 SHA256 168d16d3acf78830c9c456a487646675c47752b920c4dcd75ac56607cfb86343 SHA512 8e884231265f404e28bd9d1b3e05ab06d96e3e3c9fc036aacee2026d81161e60f3019260d9d3f55a5b057b68c37303e22b88bf51125336aa977e43b1c687a624 WHIRLPOOL a666c16215d9ab779bb50b8bbfe469691dd29e31eecca3e01aaee9cd6d90e3dd56d5a7d8d52d572be85cd87fa06c02b9ba72444c56ca209c2179d829aa8ffd31
diff --git a/dev-cpp/gtest/files/configure-fix-pthread-linking.patch b/dev-cpp/gtest/files/configure-fix-pthread-linking.patch
new file mode 100644
index 000000000000..75e5219b7a7c
--- /dev/null
+++ b/dev-cpp/gtest/files/configure-fix-pthread-linking.patch
@@ -0,0 +1,93 @@
+From fb71154012e634a5e780e93af5434bcdafaf2b24 Mon Sep 17 00:00:00 2001
+From: Justin Bronder <jsbronder@gmail.com>
+Date: Mon, 15 Oct 2012 17:25:07 -0400
+Subject: [PATCH] configure: fix pthread linking
+
+- Update the pthread check to make sure that we don't need -lpthread when
+compiling with -nostdlib.
+
+- Make sure that the necessary pthread library is passed to libtool.
+
+Fixes:
+
+$ ldd -r /usr/lib/libgtest.so
+ linux-vdso.so.1 (0x00007fffe7dff000)
+ libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/libstdc++.so.6 (0x00007fbe09a9f000)
+ libc.so.6 => /lib64/libc.so.6 (0x00007fbe096f7000)
+ libgcc_s.so.1 => /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.3/libgcc_s.so.1 (0x00007fbe094e1000)
+ libm.so.6 => /lib64/libm.so.6 (0x00007fbe091ee000)
+ /lib64/ld-linux-x86-64.so.2 (0x00007fbe0a005000)
+undefined symbol: pthread_key_create (/usr/lib/libgtest.so)
+undefined symbol: pthread_getspecific (/usr/lib/libgtest.so)
+undefined symbol: pthread_key_delete (/usr/lib/libgtest.so)
+undefined symbol: pthread_setspecific (/usr/lib/libgtest.so)
+---
+ Makefile.am | 1 +
+ m4/acx_pthread.m4 | 39 ++++++++++++++++++++++++++++++++++++++-
+ 2 files changed, 39 insertions(+), 1 deletions(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index cb350b7..db2606e 100644
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -181,6 +181,7 @@ endif
+ lib_LTLIBRARIES = lib/libgtest.la lib/libgtest_main.la
+
+ lib_libgtest_la_SOURCES = src/gtest-all.cc
++lib_libgtest_la_LIBADD = $(AM_LIBS)
+
+ pkginclude_HEADERS = \
+ include/gtest/gtest-death-test.h \
+diff --git a/m4/acx_pthread.m4 b/m4/acx_pthread.m4
+index 2cf20de..7fba4d9 100644
+--- a/m4/acx_pthread.m4
++++ b/m4/acx_pthread.m4
+@@ -339,7 +339,44 @@ if test "x$acx_pthread_ok" = xyes; then
+ # so it's not safe to assume that we may use pthreads
+ acx_pthread_ok=no
+ fi
+-
++
++ AC_MSG_CHECKING([whether what we have so far is sufficient with -nostdlib])
++ CFLAGS="-nostdlib $CFLAGS"
++ # we need c with nostdlib
++ LIBS="$LIBS -lc"
++ AC_TRY_LINK([#include <pthread.h>],
++ [pthread_t th; pthread_join(th, 0);
++ pthread_attr_init(0); pthread_cleanup_push(0, 0);
++ pthread_create(0,0,0,0); pthread_cleanup_pop(0); ],
++ [done=yes],[done=no])
++
++ if test "x$done" = xyes; then
++ AC_MSG_RESULT([yes])
++ else
++ AC_MSG_RESULT([no])
++ fi
++
++ if test x"$done" = xno; then
++ AC_MSG_CHECKING([whether -lpthread saves the day])
++ LIBS="-lpthread $LIBS"
++ AC_TRY_LINK([#include <pthread.h>],
++ [pthread_t th; pthread_join(th, 0);
++ pthread_attr_init(0); pthread_cleanup_push(0, 0);
++ pthread_create(0,0,0,0); pthread_cleanup_pop(0); ],
++ [done=yes],[done=no])
++
++ if test "x$done" = xyes; then
++ AC_MSG_RESULT([yes])
++ PTHREAD_LIBS="$PTHREAD_LIBS -lpthread"
++ else
++ AC_MSG_RESULT([no])
++ AC_MSG_WARN([Impossible to determine how to use pthreads with shared libraries and -nostdlib])
++ fi
++ fi
++
++ CFLAGS="$save_CFLAGS"
++ LIBS="$save_LIBS"
++ CC="$save_CC"
+ CFLAGS="$save_CFLAGS"
+ LIBS="$save_LIBS"
+ CC="$save_CC"
+--
+1.7.8.6
+
diff --git a/dev-cpp/gtest/files/gtest-1.8.0-multilib-strict.patch b/dev-cpp/gtest/files/gtest-1.8.0-multilib-strict.patch
new file mode 100644
index 000000000000..c18b58e16fb6
--- /dev/null
+++ b/dev-cpp/gtest/files/gtest-1.8.0-multilib-strict.patch
@@ -0,0 +1,40 @@
+--- a/googlemock/CMakeLists.txt
++++ b/googlemock/CMakeLists.txt
+@@ -11,6 +11,8 @@
+
+ option(gmock_build_tests "Build all of Google Mock's own tests." OFF)
+
++set(LIB_INSTALL_DIR lib CACHE STRING "Library install directory")
++
+ # A directory to find Google Test sources.
+ if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/gtest/CMakeLists.txt")
+ set(gtest_dir gtest)
+@@ -104,7 +106,7 @@
+ #
+ # Install rules
+ install(TARGETS gmock gmock_main
+- DESTINATION lib)
++ DESTINATION ${LIB_INSTALL_DIR})
+ install(DIRECTORY ${gmock_SOURCE_DIR}/include/gmock
+ DESTINATION include)
+
+--- a/googletest/CMakeLists.txt
++++ b/googletest/CMakeLists.txt
+@@ -27,6 +27,8 @@
+ "Build gtest with internal symbols hidden in shared libraries."
+ OFF)
+
++set(LIB_INSTALL_DIR lib CACHE STRING "Library install directory")
++
+ # Defines pre_project_set_up_hermetic_build() and set_up_hermetic_build().
+ include(cmake/hermetic_build.cmake OPTIONAL)
+
+@@ -103,7 +105,7 @@
+ #
+ # Install rules
+ install(TARGETS gtest gtest_main
+- DESTINATION lib)
++ DESTINATION ${LIB_INSTALL_DIR})
+ install(DIRECTORY ${gtest_SOURCE_DIR}/include/gtest
+ DESTINATION include)
+
diff --git a/dev-cpp/gtest/files/gtest-9999-fix-gcc6-undefined-behavior.patch b/dev-cpp/gtest/files/gtest-9999-fix-gcc6-undefined-behavior.patch
new file mode 100644
index 000000000000..eadfe6197389
--- /dev/null
+++ b/dev-cpp/gtest/files/gtest-9999-fix-gcc6-undefined-behavior.patch
@@ -0,0 +1,21 @@
+Fix build with GCC 6 due to lifetime issues.
+
+--- a/googletest/src/gtest.cc
++++ b/googletest/src/gtest.cc
+@@ -2654,10 +2654,12 @@
+ test->Run();
+ }
+
+- // Deletes the test object.
+- impl->os_stack_trace_getter()->UponLeavingGTest();
+- internal::HandleExceptionsInMethodIfSupported(
+- test, &Test::DeleteSelf_, "the test fixture's destructor");
++ if (test != NULL) {
++ // Deletes the test object.
++ impl->os_stack_trace_getter()->UponLeavingGTest();
++ internal::HandleExceptionsInMethodIfSupported(
++ test, &Test::DeleteSelf_, "the test fixture's destructor");
++ }
+
+ result_.set_elapsed_time(internal::GetTimeInMillis() - start);
+
diff --git a/dev-cpp/gtest/files/gtest-9999-fix-py-tests.patch b/dev-cpp/gtest/files/gtest-9999-fix-py-tests.patch
new file mode 100644
index 000000000000..ba63c7b3eeb3
--- /dev/null
+++ b/dev-cpp/gtest/files/gtest-9999-fix-py-tests.patch
@@ -0,0 +1,19 @@
+Fix python tests that use broken generator expressions
+
+--- a/googletest/cmake/internal_utils.cmake
++++ b/googletest/cmake/internal_utils.cmake
+@@ -247,12 +247,12 @@
+ add_test(
+ NAME ${name}
+ COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
+- --build_dir=${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>)
++ --build_dir=${CMAKE_CURRENT_BINARY_DIR})
+ else (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1)
+ add_test(
+ ${name}
+ ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py
+- --build_dir=${CMAKE_CURRENT_BINARY_DIR}/\${CTEST_CONFIGURATION_TYPE})
++ --build_dir=${CMAKE_CURRENT_BINARY_DIR})
+ endif (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1)
+ endif()
+ endfunction()
diff --git a/dev-cpp/gtest/gtest-1.7.0-r1.ebuild b/dev-cpp/gtest/gtest-1.7.0-r1.ebuild
new file mode 100644
index 000000000000..ee90d10ca58f
--- /dev/null
+++ b/dev-cpp/gtest/gtest-1.7.0-r1.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+AUTOTOOLS_AUTORECONF=1
+AUTOTOOLS_IN_SOURCE_BUILD=1
+# Python is required for tests and some build tasks.
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils python-any-r1 autotools-multilib
+
+DESCRIPTION="Google C++ Testing Framework"
+HOMEPAGE="https://github.com/google/googletest"
+SRC_URI="https://github.com/google/googletest/archive/release-${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="examples static-libs"
+
+DEPEND="${PYTHON_DEPS}"
+RDEPEND=""
+
+PATCHES=(
+ "${FILESDIR}/configure-fix-pthread-linking.patch" #371647
+)
+
+src_prepare() {
+ sed -i -e "s|/tmp|${T}|g" test/gtest-filepath_test.cc || die
+ sed -i -r \
+ -e '/^install-(data|exec)-local:/s|^.*$|&\ndisabled-&|' \
+ Makefile.am || die
+ autotools-multilib_src_prepare
+}
+
+multilib_src_install() {
+ default
+ multilib_is_native_abi && dobin scripts/gtest-config
+}
+
+multilib_src_install_all() {
+ prune_libtool_files --all
+ einstalldocs
+
+ if use examples ; then
+ insinto /usr/share/doc/${PF}/examples
+ doins samples/*.{cc,h}
+ fi
+}
diff --git a/dev-cpp/gtest/gtest-1.8.0.ebuild b/dev-cpp/gtest/gtest-1.8.0.ebuild
new file mode 100644
index 000000000000..308a12ff6fdb
--- /dev/null
+++ b/dev-cpp/gtest/gtest-1.8.0.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+# Python is required for tests and some build tasks.
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} pypy )
+
+inherit python-any-r1 cmake-multilib
+
+DESCRIPTION="Google C++ Testing Framework"
+HOMEPAGE="https://github.com/google/googletest"
+SRC_URI="https://github.com/google/googletest/archive/release-${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos"
+IUSE="examples test"
+
+DEPEND="test? ( ${PYTHON_DEPS} )"
+RDEPEND="!dev-cpp/gmock"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-9999-fix-py-tests.patch
+ "${FILESDIR}"/${PN}-9999-fix-gcc6-undefined-behavior.patch
+ "${FILESDIR}"/${PN}-1.8.0-multilib-strict.patch
+)
+
+S="${WORKDIR}"/googletest-release-${PV}
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DBUILD_GMOCK=ON
+ -DBUILD_GTEST=ON
+ -DLIB_INSTALL_DIR=$(get_libdir)
+ -Dgtest_build_samples=OFF
+ -Dgtest_disable_pthreads=OFF
+ -DBUILD_SHARED_LIBS=ON
+
+ # tests
+ -Dgmock_build_tests=$(usex test)
+ -Dgtest_build_tests=$(usex test)
+ -DPYTHON_EXECUTABLE="${PYTHON}"
+ )
+ cmake-utils_src_configure mycmakeargs
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ if use examples; then
+ docinto examples
+ dodoc googletest/samples/*.{cc,h}
+ fi
+}
diff --git a/dev-cpp/gtest/gtest-9999.ebuild b/dev-cpp/gtest/gtest-9999.ebuild
new file mode 100644
index 000000000000..47a3ca79f6ee
--- /dev/null
+++ b/dev-cpp/gtest/gtest-9999.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+# Python is required for tests and some build tasks.
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} pypy )
+
+inherit git-r3 python-any-r1 cmake-multilib
+
+DESCRIPTION="Google C++ Testing Framework"
+HOMEPAGE="https://github.com/google/googletest"
+EGIT_REPO_URI="https://github.com/google/googletest.git"
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="examples test"
+
+DEPEND="test? ( ${PYTHON_DEPS} )"
+RDEPEND="!dev-cpp/gmock"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-fix-py-tests.patch
+ "${FILESDIR}"/${P}-fix-gcc6-undefined-behavior.patch
+)
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+multilib_src_configure() {
+ local mycmakeargs=(
+ -DBUILD_GMOCK=ON
+ -DBUILD_GTEST=ON
+ -DINSTALL_GMOCK=ON
+ -DINSTALL_GTEST=ON
+ -Dgtest_build_samples=OFF
+ -Dgtest_disable_pthreads=OFF
+
+ # currently only static libs work
+ # due to numerous ODR violations
+ # https://github.com/google/googletest/issues/930
+ -DBUILD_SHARED_LIBS=OFF
+
+ # tests
+ -Dgmock_build_tests=$(usex test)
+ -Dgtest_build_tests=$(usex test)
+ -DPYTHON_EXECUTABLE="${PYTHON}"
+ )
+ cmake-utils_src_configure
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ if use examples; then
+ docinto examples
+ dodoc googletest/samples/*.{cc,h}
+ fi
+}
diff --git a/dev-cpp/gtest/metadata.xml b/dev-cpp/gtest/metadata.xml
new file mode 100644
index 000000000000..624bb1a1df94
--- /dev/null
+++ b/dev-cpp/gtest/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>plevine457@gmail.com</email>
+ <name>Peter Levine</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <upstream>
+ <doc lang="en">https://code.google.com/p/googletest/w/list</doc>
+ <remote-id type="google-code">googletest</remote-id>
+ <remote-id type="github">google/googletest</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/gtkglextmm/Manifest b/dev-cpp/gtkglextmm/Manifest
new file mode 100644
index 000000000000..1972199db7d3
--- /dev/null
+++ b/dev-cpp/gtkglextmm/Manifest
@@ -0,0 +1,7 @@
+AUX gtkglextmm-1.2.0-aclocal.patch 516 SHA256 80df919f9db2ce4a59377c2a76a5d68892f5ec15b70c3516cf1d4123585f16b4 SHA512 291eeb4506c2ab21d61b10ce8ce1000651af6236edcf24a0b09c9e975cf9cfabaabbb8414b55372682fd3fbfac4c2b67b0f5dc62a34529b6a1e51c05cc77a079 WHIRLPOOL 0321bf2187065057a4ad727093fb98efbf7460d7a93e6490f9976b0fedc9fbaa4c95edc6d9958e02483a419f23c6c7ec414970cd53de7dd476c324399c7b3289
+DIST gtkglextmm-1.2.0.tar.bz2 623815 SHA256 6cd4bd2a240e5eb1e3a24c5a3ebbf7ed905b522b888439778043fdeb58771fea SHA512 94e66bc295000bb3f3352f58c9848372a4c23586dcc52450806c73e3e0630ab2b51291b347da16bba853b658deb070218203a031d906fc2ff051386dd065aba9 WHIRLPOOL 9d1927136edb226179c7ce356699c4504785a53a40575e43a875f0c9685965405b2632ec7cc98f55f3206ef7d6b25996fc2ad80b1d5c12213644b730fd81791b
+EBUILD gtkglextmm-1.2.0-r1.ebuild 856 SHA256 0216f76cf55f61cd5e9f76928ff35990ac45fe3425ca0fef0ced6bf6fc149a2b SHA512 7d212becea718e07bff371517e876c0df8a66b4ec0312940ff07fac73ae1962581eb0c75c62df3fe2eec8693e9e75c83e1d710f311145782b7235389a8c903ee WHIRLPOOL 9050cb10f8e2503b274c4d6f7f0a46ff9ec0748924bd75b997dde6de04bf824185de77df26ab1c85beea0ef365ff1af3beb4c3510ad9195aebae71bd451f0bb3
+EBUILD gtkglextmm-1.2.0-r2.ebuild 996 SHA256 024ae55fd4046b1360516c1a120e5df4edd6d6a7e9ab352d6ad10dfce0fca1b7 SHA512 ed0bf139a4c6e06ef46a88c94577756d5886556721a6656406949936c32e211714d739ebfa0506ffcfd72691f2430862b048fa031991c7ccbee5005d5f18d7c4 WHIRLPOOL 32ba7fcf7693188a37ca7d47fb429ee4c542c06adb272fb97e404484b1f54fe3268e141182725035e80142a678c78b8d4937ee17b95e48968c0ae2adfc4be346
+MISC ChangeLog 3587 SHA256 ffc1800ad952fe9d23f0ea4c957c8a8d3750d7d1181f4c1d38c29b6d120fd8c5 SHA512 0df18004a0597e9124898d47a8eb505302146d970c4ef75785d379c101c3e7528a08450b4e73f98066b65e7e8d9e2eed67b38c542f1e20cd7a10e4dac50667a1 WHIRLPOOL 09692ac3493883af89642cf576e4416884ec93c299d6a2cbb86551dc9149bf4cd0372e4b6f72304157e5b440dea73b4260fb27a56d23b3217953ce7b2e61f92d
+MISC ChangeLog-2015 3914 SHA256 7bf382fe84f40b41bb7d400d4a7445af681393b755895c1beb1408b77bc68643 SHA512 ad8868997747d4a879e244c04bb7b05b45dfb1d58d157b9ee3dfe642f47861a247f7681ec7f9a34ddd97923cbf02fac72f558fdcb8b634cd10b07d9fa458b242 WHIRLPOOL 206dc14e5276810ab16374d5156c4a2b3b10848f223283370bf7d64d75791c66ad67a82157d309c6dfdf66da46184b3ae0683a593b8bd99f497e6a3ef5f225e2
+MISC metadata.xml 331 SHA256 e7d420cf2af732fb11712544de9bd35ff3f181c0173c4fd2449ded482d33b292 SHA512 8c9768b7a27485752cb816de376d4e9e352e6522e42eb489d41aab48f0fd47541483913c7fec9ec4bbdfea3aa846c35bedab83ac2524901635337a7111f14ab9 WHIRLPOOL d0888c427175b9df243390bb3f74314847eca49a2bc3f4406f5d00b4fa3d7cc4823c706446ee3107648e634de2f452e4d2eb45ce07dcdc9cc03e2824a85d9fac
diff --git a/dev-cpp/gtkglextmm/files/gtkglextmm-1.2.0-aclocal.patch b/dev-cpp/gtkglextmm/files/gtkglextmm-1.2.0-aclocal.patch
new file mode 100644
index 000000000000..32fa489cce81
--- /dev/null
+++ b/dev-cpp/gtkglextmm/files/gtkglextmm-1.2.0-aclocal.patch
@@ -0,0 +1,11 @@
+--- gtkglextmm-1.2.0/m4macros/gtkglextmm.m4.orig 2004-05-18 10:29:34.000000000 +0400
++++ gtkglextmm-1.2.0/m4macros/gtkglextmm.m4 2015-08-07 17:02:42.324065008 +0300
+@@ -222,7 +222,7 @@
+ dnl AC_GTKGLEXTMM_SUPPORTS_MULTIHEAD([ACTION-IF-SUPPORTED [, ACTION-IF-NOT-SUPPORTED]])
+ dnl Checks whether gtkglextmm supports multihead.
+ dnl
+-AC_DEFUN(AC_GTKGLEXTMM_SUPPORTS_MULTIHEAD,
++AC_DEFUN([AC_GTKGLEXTMM_SUPPORTS_MULTIHEAD],
+ [ AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ AC_CACHE_CHECK([whether gtkglextmm supports multihead],
diff --git a/dev-cpp/gtkglextmm/gtkglextmm-1.2.0-r1.ebuild b/dev-cpp/gtkglextmm/gtkglextmm-1.2.0-r1.ebuild
new file mode 100644
index 000000000000..93ebb6e6a98a
--- /dev/null
+++ b/dev-cpp/gtkglextmm/gtkglextmm-1.2.0-r1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+GCONF_DEBUG="yes"
+
+inherit gnome2
+
+DESCRIPTION="C++ bindings for gtkglext"
+HOMEPAGE="https://projects.gnome.org/gtkglext/"
+SRC_URI="mirror://sourceforge/gtkglext/${P}.tar.bz2"
+
+KEYWORDS="amd64 ppc x86"
+IUSE="doc"
+SLOT="1.0"
+LICENSE="GPL-2 LGPL-2.1"
+
+RDEPEND="
+ >=x11-libs/gtkglext-1
+ >=dev-libs/libsigc++-2.0
+ >=dev-cpp/glibmm-2.4:2
+ >=dev-cpp/gtkmm-2.4:2.4
+ virtual/opengl
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ # Remove docs from SUBDIRS so that docs are not installed, as
+ # we handle it in src_install.
+ sed -i -e 's|^\(SUBDIRS =.*\)docs\(.*\)|\1\2|' Makefile.in || \
+ die "sed Makefile.in failed"
+
+ gnome2_src_prepare
+}
+
+src_install() {
+ gnome2_src_install
+ if use doc; then
+ dohtml -r docs/reference/html/*
+ fi
+}
diff --git a/dev-cpp/gtkglextmm/gtkglextmm-1.2.0-r2.ebuild b/dev-cpp/gtkglextmm/gtkglextmm-1.2.0-r2.ebuild
new file mode 100644
index 000000000000..e5e655eddc36
--- /dev/null
+++ b/dev-cpp/gtkglextmm/gtkglextmm-1.2.0-r2.ebuild
@@ -0,0 +1,46 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+GCONF_DEBUG="yes"
+
+inherit eutils flag-o-matic gnome2
+
+DESCRIPTION="C++ bindings for gtkglext"
+HOMEPAGE="https://projects.gnome.org/gtkglext/"
+SRC_URI="mirror://sourceforge/gtkglext/${P}.tar.bz2"
+
+KEYWORDS="amd64 ppc x86"
+IUSE="doc"
+SLOT="1.0"
+LICENSE="GPL-2 LGPL-2.1"
+
+RDEPEND="
+ >=x11-libs/gtkglext-1
+ >=dev-libs/libsigc++-2.0
+ >=dev-cpp/glibmm-2.4:2
+ >=dev-cpp/gtkmm-2.4:2.4
+ virtual/opengl
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+src_prepare() {
+ # fix underquoted definition, bug 552686
+ epatch "${FILESDIR}/${P}-aclocal.patch"
+
+ # Remove docs from SUBDIRS so that docs are not installed, as
+ # we handle it in src_install.
+ sed -i -e 's|^\(SUBDIRS =.*\)docs\(.*\)|\1\2|' Makefile.in || \
+ die "sed Makefile.in failed"
+
+ gnome2_src_prepare
+ append-cxxflags -std=c++11 #568024
+}
+
+src_install() {
+ gnome2_src_install
+ if use doc; then
+ dohtml -r docs/reference/html/*
+ fi
+}
diff --git a/dev-cpp/gtkglextmm/metadata.xml b/dev-cpp/gtkglextmm/metadata.xml
new file mode 100644
index 000000000000..aa10f62c61db
--- /dev/null
+++ b/dev-cpp/gtkglextmm/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">gtkglext</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/gtkmm/Manifest b/dev-cpp/gtkmm/Manifest
new file mode 100644
index 000000000000..70bd688fa8c2
--- /dev/null
+++ b/dev-cpp/gtkmm/Manifest
@@ -0,0 +1,11 @@
+DIST gtkmm-2.24.5.tar.xz 12022024 SHA256 0680a53b7bf90b4e4bf444d1d89e6df41c777e0bacc96e9c09fc4dd2f5fe6b72 SHA512 c50e52830977c37181439f4b82a30ac8bead0cf9022d2bec8225f8dc33e08414f863bf67056e1938fae8f888c09a5a6d757acc011fa9331a78caa6bb626dd51e WHIRLPOOL b1bd5d27f53fece724c3389eb938a9ba746fb168637cacd437f152e6753f0150e5227acaed8d9b93b8e2e497352d03d77bec3fe4a5029c144ef2270c28c31c46
+DIST gtkmm-3.22.0.tar.xz 12320816 SHA256 05da4d4b628fb20c8384630ddf478a3b5562952b2d6181fe28d58f6cbc0514f5 SHA512 0bc141ff09bc78697e89c6f071a1411cbc06e015ee664f3a6f9143bdb31793982e09533c8cff6d8c19cc53c4d32a1e5ad016db48141f5cfc21edfb333bf37988 WHIRLPOOL 8ec9f50c3f960dbe907d584c96adc0b4859b0d319c9c299f476cad8065390abb3f0b1c48cdf01303ce6f72a267b72d750d8dd5e4a011ce2d245e9acd649ee4b9
+DIST gtkmm-3.22.1.tar.xz 12338092 SHA256 6a0c2cc0894a69b666e688e5e6e93621d7625db5e77fd37551310d75c00896b0 SHA512 f2a924774c6f4a9a1ec66bde65201fc6b8e17bf48d306ad78bdcabe9a2ce4b8d67c0714b52406534708c1c505efc7ff5a651a1df21531568795202e2717d1eaf WHIRLPOOL 515c33d2914779d2e579d6a6e11f7b2740e7716870420a8f2200987ca8830585aeb10e4f4b19712fdc6f614b8e9fe9857e49a116481fd71637a4381b29f640d2
+DIST gtkmm-3.22.2.tar.xz 12341028 SHA256 91afd98a31519536f5f397c2d79696e3d53143b80b75778521ca7b48cb280090 SHA512 6e96b543e459481145ee0f56f31a7ad2466bd8ccdd2abf3205998aecede73d235149ca6e5ba6e8d20a4fd5345e310870d81ac2a716d4f78d1460ed685badbdc2 WHIRLPOOL 581056f0d3772fc1b9d306e05a067f759a2806a74c25a2b904fef57e64ea955be4d908e6df97a711779d4ba4f29a76ac2c4e65820976e6e6e0c2bdefda55f7a7
+EBUILD gtkmm-2.24.5.ebuild 1707 SHA256 c31b78328e143c0aeba2ce35a0cad3291eb37b771e8fec7816e059046f887835 SHA512 4ab9947a206d75184943a05607013b173ec49efee27a20ffc5db8c2f666cfa94defc0fc8e28fd50591876113211eee110c83c2fb150a780d029be1942f3fd559 WHIRLPOOL a0c1a1a4c8d5ad213950b97611499d42b2e282aa96ddd0f39758114e8b73b731f44089a3b65425b2669b189bc1ec2d40dbfea971e4dac3cc0c5ff7499166c2ef
+EBUILD gtkmm-3.22.0.ebuild 1823 SHA256 d45a256e8da13dd6ef8b79c0e0f3a459764c8b671190e55d49d89853ad430547 SHA512 d7a40269f7bdb123bc0a353036ceaccd5bc65298754f2136b2785e756d6f1cbcc47191a8fc9247db33face1739efc0a9772b0f4c559e65d6311f8f66c414efc9 WHIRLPOOL 82dc1508d2443f8566c1e555651da210c9353d1f3158553e43ca17eb3bff2b1766a84b9a8371e000c9bd5a0d0cb996c3cf53edd502f16bc4b853705eeb159c8b
+EBUILD gtkmm-3.22.1.ebuild 1832 SHA256 4621ab610d9779fcba458dc1e14ba86db14297fd2c5ebaba4f597bf68c4291dc SHA512 678b6bab37c80e33b7e0b8a85d76ea0c3d1139d456a7f5ccd23c0dd69ca0f7018cacd9dfd26cb4db45fc4fe4e96968b6065fc90173cb9f57cca220dd6d476c1e WHIRLPOOL e28ab6cdc23a88a6a207ab5cbc836603dbebff01ef74ec621d0641e175dce704a19c96c1266c97934705f5571000bbb92c1051079a94c5dc88cbd444cf042bfa
+EBUILD gtkmm-3.22.2.ebuild 1832 SHA256 4621ab610d9779fcba458dc1e14ba86db14297fd2c5ebaba4f597bf68c4291dc SHA512 678b6bab37c80e33b7e0b8a85d76ea0c3d1139d456a7f5ccd23c0dd69ca0f7018cacd9dfd26cb4db45fc4fe4e96968b6065fc90173cb9f57cca220dd6d476c1e WHIRLPOOL e28ab6cdc23a88a6a207ab5cbc836603dbebff01ef74ec621d0641e175dce704a19c96c1266c97934705f5571000bbb92c1051079a94c5dc88cbd444cf042bfa
+MISC ChangeLog 10433 SHA256 d99a8b10e652e556435401887af4b3115fac862c8967ac9143af3f298a3d11fb SHA512 c4e2560b952c63dec6b77abd6cc986b2670046001f0fe5eb52d6f1cd4ec6875aef11776afeebb6bde35ca514733c3124678ad3f0a598457e73422525dbbffb17 WHIRLPOOL 50819ff5d5ccb639d4e6c02f4b2bcba2ab8bccb8957ae5d0e801f2f1cf9797d7af656c954d3072ccd242da599aae7615244f24b20dd99fabe07b850fcba62b51
+MISC ChangeLog-2015 40078 SHA256 d09f2a06327f14c989f860c93b23b2fa8f9897c5bca685f25dd0265cd00c5f67 SHA512 1e40be0ed704d9c73df0bba45f0ef23e39fab79701867704be155b05ffbf4494ef1121fbfc017a6fe7e0bc9afad8b95d91dd6f57218aed933a0c275b4424e87f WHIRLPOOL 75a381e892a3879555d3334c9fbef707d3236b1d452a2e469bcdb17b0fa7d4d70a4cae1f55361dd72d3467ba5a054e0d517c7b5e6547e4f34bbf8bcd8bc63aa1
+MISC metadata.xml 249 SHA256 4505b0bfeadff287958620b7dc7b7209699065a8f17139a237a5dd409a726a97 SHA512 c40662134899a5c9f0369a1017806f35adf3280a0b3c91726f7a8ca6012a073a8b471583f5bfb6fe95faac1dcf607e8e2e43f8c91d48ec46f4a8824e2f551506 WHIRLPOOL 333a938ee1d2124595596c572697bf5ebad523a92ba12005cfb12e6bb6270881a94a911f0cc9c1cf2bb571559e8271e07dfd307dabe50058236dbe7103562b92
diff --git a/dev-cpp/gtkmm/gtkmm-2.24.5.ebuild b/dev-cpp/gtkmm/gtkmm-2.24.5.ebuild
new file mode 100644
index 000000000000..b6ddebe6d780
--- /dev/null
+++ b/dev-cpp/gtkmm/gtkmm-2.24.5.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit gnome2 multilib-minimal
+
+DESCRIPTION="C++ interface for GTK+"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1+"
+SLOT="2.4"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
+IUSE="doc examples test"
+
+COMMON_DEPEND="
+ >=dev-cpp/glibmm-2.34.1:2[${MULTILIB_USEDEP}]
+ >=x11-libs/gtk+-2.24.15:2[${MULTILIB_USEDEP}]
+ >=x11-libs/gdk-pixbuf-2.28:2[${MULTILIB_USEDEP}]
+ >=dev-cpp/atkmm-2.22.7[${MULTILIB_USEDEP}]
+ >=dev-cpp/cairomm-1.10.0-r1[${MULTILIB_USEDEP}]
+ >=dev-cpp/pangomm-2.34.0:1.4[${MULTILIB_USEDEP}]
+ >=dev-libs/libsigc++-2.3.2:2[${MULTILIB_USEDEP}]
+"
+RDEPEND="${COMMON_DEPEND}
+ abi_x86_32? (
+ !<=app-emulation/emul-linux-x86-gtkmmlibs-20140508
+ !app-emulation/emul-linux-x86-gtkmmlibs[-abi_x86_32(-)] )
+"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig[${MULTILIB_USEDEP}]
+ doc? (
+ media-gfx/graphviz
+ dev-libs/libxslt
+ app-doc/doxygen )
+"
+
+src_prepare() {
+ if ! use test; then
+ # don't waste time building tests
+ sed 's/^\(SUBDIRS =.*\)tests\(.*\)$/\1\2/' -i Makefile.am Makefile.in \
+ || die "sed 1 failed"
+ fi
+
+ if ! use examples; then
+ # don't waste time building tests
+ sed 's/^\(SUBDIRS =.*\)demos\(.*\)$/\1\2/' -i Makefile.am Makefile.in \
+ || die "sed 2 failed"
+ fi
+
+ gnome2_src_prepare
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" \
+ gnome2_src_configure \
+ --enable-api-atkmm \
+ $(multilib_native_use_enable doc documentation)
+}
+
+multilib_src_install() {
+ gnome2_src_install
+}
+
+multilib_src_install_all() {
+ DOCS="AUTHORS ChangeLog PORTING NEWS README"
+ einstalldocs
+}
diff --git a/dev-cpp/gtkmm/gtkmm-3.22.0.ebuild b/dev-cpp/gtkmm/gtkmm-3.22.0.ebuild
new file mode 100644
index 000000000000..aa8048cde04b
--- /dev/null
+++ b/dev-cpp/gtkmm/gtkmm-3.22.0.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit gnome2 multilib-minimal virtualx
+
+DESCRIPTION="C++ interface for GTK+"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1+"
+SLOT="3.0"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-solaris"
+
+IUSE="aqua doc test wayland X"
+REQUIRED_USE="|| ( aqua wayland X )"
+
+RDEPEND="
+ >=dev-cpp/glibmm-2.49.1:2[${MULTILIB_USEDEP}]
+ >=x11-libs/gtk+-3.22.0:3[aqua?,wayland?,X?,${MULTILIB_USEDEP}]
+ >=x11-libs/gdk-pixbuf-2.35.5:2[${MULTILIB_USEDEP}]
+ >=dev-cpp/atkmm-2.24.2[${MULTILIB_USEDEP}]
+ >=dev-cpp/cairomm-1.12.0[${MULTILIB_USEDEP}]
+ >=dev-cpp/pangomm-2.38.2:1.4[${MULTILIB_USEDEP}]
+ >=dev-libs/libsigc++-2.3.2:2[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? (
+ media-gfx/graphviz
+ dev-libs/libxslt
+ app-doc/doxygen )
+"
+# eautoreconf needs mm-common
+
+src_prepare() {
+ if ! use test; then
+ # don't waste time building tests
+ sed 's/^\(SUBDIRS =.*\)tests\(.*\)$/\1\2/' -i Makefile.am Makefile.in \
+ || die "sed 1 failed"
+ fi
+
+ # don't waste time building examples
+ sed 's/^\(SUBDIRS =.*\)demos\(.*\)$/\1\2/' -i Makefile.am Makefile.in \
+ || die "sed 2 failed"
+
+ gnome2_src_prepare
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" gnome2_src_configure \
+ --enable-api-atkmm \
+ $(multilib_native_use_enable doc documentation) \
+ $(use_enable aqua quartz-backend) \
+ $(use_enable wayland wayland-backend) \
+ $(use_enable X x11-backend)
+}
+
+multilib_src_test() {
+ virtx emake check
+}
+
+multilib_src_install() {
+ gnome2_src_install
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ find demos -type d -name '.deps' -exec rm -rf {} \; 2>/dev/null
+ find demos -type f -name 'Makefile*' -exec rm -f {} \; 2>/dev/null
+ dodoc -r demos
+}
diff --git a/dev-cpp/gtkmm/gtkmm-3.22.1.ebuild b/dev-cpp/gtkmm/gtkmm-3.22.1.ebuild
new file mode 100644
index 000000000000..d11b218d5120
--- /dev/null
+++ b/dev-cpp/gtkmm/gtkmm-3.22.1.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit gnome2 multilib-minimal virtualx
+
+DESCRIPTION="C++ interface for GTK+"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1+"
+SLOT="3.0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-solaris"
+
+IUSE="aqua doc test wayland X"
+REQUIRED_USE="|| ( aqua wayland X )"
+
+RDEPEND="
+ >=dev-cpp/glibmm-2.49.1:2[${MULTILIB_USEDEP}]
+ >=x11-libs/gtk+-3.22.0:3[aqua?,wayland?,X?,${MULTILIB_USEDEP}]
+ >=x11-libs/gdk-pixbuf-2.35.5:2[${MULTILIB_USEDEP}]
+ >=dev-cpp/atkmm-2.24.2[${MULTILIB_USEDEP}]
+ >=dev-cpp/cairomm-1.12.0[${MULTILIB_USEDEP}]
+ >=dev-cpp/pangomm-2.38.2:1.4[${MULTILIB_USEDEP}]
+ >=dev-libs/libsigc++-2.3.2:2[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? (
+ media-gfx/graphviz
+ dev-libs/libxslt
+ app-doc/doxygen )
+"
+# eautoreconf needs mm-common
+
+src_prepare() {
+ if ! use test; then
+ # don't waste time building tests
+ sed 's/^\(SUBDIRS =.*\)tests\(.*\)$/\1\2/' -i Makefile.am Makefile.in \
+ || die "sed 1 failed"
+ fi
+
+ # don't waste time building examples
+ sed 's/^\(SUBDIRS =.*\)demos\(.*\)$/\1\2/' -i Makefile.am Makefile.in \
+ || die "sed 2 failed"
+
+ gnome2_src_prepare
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" gnome2_src_configure \
+ --enable-api-atkmm \
+ $(multilib_native_use_enable doc documentation) \
+ $(use_enable aqua quartz-backend) \
+ $(use_enable wayland wayland-backend) \
+ $(use_enable X x11-backend)
+}
+
+multilib_src_test() {
+ virtx emake check
+}
+
+multilib_src_install() {
+ gnome2_src_install
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ find demos -type d -name '.deps' -exec rm -rf {} \; 2>/dev/null
+ find demos -type f -name 'Makefile*' -exec rm -f {} \; 2>/dev/null
+ dodoc -r demos
+}
diff --git a/dev-cpp/gtkmm/gtkmm-3.22.2.ebuild b/dev-cpp/gtkmm/gtkmm-3.22.2.ebuild
new file mode 100644
index 000000000000..d11b218d5120
--- /dev/null
+++ b/dev-cpp/gtkmm/gtkmm-3.22.2.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit gnome2 multilib-minimal virtualx
+
+DESCRIPTION="C++ interface for GTK+"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1+"
+SLOT="3.0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-solaris"
+
+IUSE="aqua doc test wayland X"
+REQUIRED_USE="|| ( aqua wayland X )"
+
+RDEPEND="
+ >=dev-cpp/glibmm-2.49.1:2[${MULTILIB_USEDEP}]
+ >=x11-libs/gtk+-3.22.0:3[aqua?,wayland?,X?,${MULTILIB_USEDEP}]
+ >=x11-libs/gdk-pixbuf-2.35.5:2[${MULTILIB_USEDEP}]
+ >=dev-cpp/atkmm-2.24.2[${MULTILIB_USEDEP}]
+ >=dev-cpp/cairomm-1.12.0[${MULTILIB_USEDEP}]
+ >=dev-cpp/pangomm-2.38.2:1.4[${MULTILIB_USEDEP}]
+ >=dev-libs/libsigc++-2.3.2:2[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? (
+ media-gfx/graphviz
+ dev-libs/libxslt
+ app-doc/doxygen )
+"
+# eautoreconf needs mm-common
+
+src_prepare() {
+ if ! use test; then
+ # don't waste time building tests
+ sed 's/^\(SUBDIRS =.*\)tests\(.*\)$/\1\2/' -i Makefile.am Makefile.in \
+ || die "sed 1 failed"
+ fi
+
+ # don't waste time building examples
+ sed 's/^\(SUBDIRS =.*\)demos\(.*\)$/\1\2/' -i Makefile.am Makefile.in \
+ || die "sed 2 failed"
+
+ gnome2_src_prepare
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" gnome2_src_configure \
+ --enable-api-atkmm \
+ $(multilib_native_use_enable doc documentation) \
+ $(use_enable aqua quartz-backend) \
+ $(use_enable wayland wayland-backend) \
+ $(use_enable X x11-backend)
+}
+
+multilib_src_test() {
+ virtx emake check
+}
+
+multilib_src_install() {
+ gnome2_src_install
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ find demos -type d -name '.deps' -exec rm -rf {} \; 2>/dev/null
+ find demos -type f -name 'Makefile*' -exec rm -f {} \; 2>/dev/null
+ dodoc -r demos
+}
diff --git a/dev-cpp/gtkmm/metadata.xml b/dev-cpp/gtkmm/metadata.xml
new file mode 100644
index 000000000000..39980802b1da
--- /dev/null
+++ b/dev-cpp/gtkmm/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/gtksourceviewmm/Manifest b/dev-cpp/gtksourceviewmm/Manifest
new file mode 100644
index 000000000000..9f5359bf9727
--- /dev/null
+++ b/dev-cpp/gtksourceviewmm/Manifest
@@ -0,0 +1,7 @@
+DIST gtksourceviewmm-2.10.3.tar.xz 742184 SHA256 0000df1b582d7be2e412020c5d748f21c0e6e5074c6b2ca8529985e70479375b SHA512 e6ddc4f585251f68e48cf0ea2c33bce02a90031efcd885105a82837715d659a317ee0845b476fc54c1c4c71b518df41ce494505af1524db6acb733e51f44e6ca WHIRLPOOL 35ae10e70e6d2a8c59e9be6552229034b844efdf1c730c20b75b9e6dbdd85d88e7b12104dbce400ba83b2745677d4abb04e994e3e75b8d3a2bdc8e9b920699de
+DIST gtksourceviewmm-3.18.0.tar.xz 1079780 SHA256 51081ae3d37975dae33d3f6a40621d85cb68f4b36ae3835eec1513482aacfb39 SHA512 143de4a650f2a6090efeba359e78d1f4982519a9e7a2be838f9888732c57dcc42db8b6ab45bd23ccd261d8f17bc743846a3bb572566f233cee9b4238c017c64c WHIRLPOOL b3c7dee2e8c41e4a14457e45f5131fb8fcf2f5841f5080b950da39ea6c1afaf39e4f89cbe8ab279bd5b2f2d1f34a071a9b9d3cdf08e808ae993f3d0727d4244c
+EBUILD gtksourceviewmm-2.10.3-r1.ebuild 996 SHA256 a9f26141c55854b440d5fe5f6f16d5f9d26199e4146255d633763006aab38950 SHA512 f99d6f782dace300684c4cb586fc0a3ba8878acf18d2628ae16fb96f673986706b8260908af4ec5aa228a64617f3f4ecab5823705af10af2fb7a21987e1fd290 WHIRLPOOL 687f1891b96c8a560e209c7b81cf788aed93f2abfec29fa357f43cf4e99910992d35d8d7e31c7b52da312933c00db7823962553b2cbf9dc412ffa4fbfeddef9d
+EBUILD gtksourceviewmm-3.18.0.ebuild 659 SHA256 31781db595484c9bf2e94d70e5a95735217e34a0dd17abf2ce469bd093386e39 SHA512 268b2ad731c6f97ceb62d8778d59f9abf981a6c57d39342386f924fa309e843b7950b1727b3981266d19f98a8f08037ef741ff13db3a72510eba4afae1f5b3e0 WHIRLPOOL 7245fbcfa1098cb2e76728e209b9ac7a1ac4e71072d363186a457b990c8b7a4a3b1b1581943346d9831b3f2ca9474f10d6be5b2d57213e750fc58cd7087e705d
+MISC ChangeLog 4734 SHA256 2226500b3f3129d1dcacd43746dce9c19aa4bc0286dd8d58a57e828869ac48e9 SHA512 5303f8bf040c93110ca6a7cffccec59e1441a6e2ca3e431f918cc3f1b3182e0a124391d67202805a740036ab431490da7283572d355b222fefdea74f769132a8 WHIRLPOOL 8e7f18497de1a8e444d82a7b9fd55815e31eab4a3e9b2e482bf77c502fe0543fdad7ffd9ace185f7f1281cd73236839cc419a0e3bc47dc7a4ad6116963d72aaa
+MISC ChangeLog-2015 5418 SHA256 273cef465f4fe7d36286f7fce4a170a4df281570e5c590381aa6c08a1bcfe32b SHA512 3d75814dcc273fee8970439f93407118e3ca9ca47a6d462e65e8358f7d484532b484aa3de0645af125fbf25f562bd376bcca6507a5cf765a87ce288ef0bd0832 WHIRLPOOL b495213a58664a4979fa5eedc732b4b29e31e59bea6171267e31143bef4ed25578092c17bab15dffc9006441f842f4699843ada28b13d081b59932a668509a2b
+MISC metadata.xml 342 SHA256 94fd867972dc41f90c3327ffb489009730ccfb859ed49f2df518d0562605eec2 SHA512 f422091476e8cbb36d443d00396344c0943b3e8d482fffbef3272c656df9be44ed31eef6a20478430e7f7364832a7d86fc82df964436a3cb6ecf7f59c8d23d6b WHIRLPOOL b68ee9d7daf485d47e845503c560c5d3ceeec755363ab0d6813e6042b1dece245fc06505c390af82236a400d272582c63b85e1c962635bc95bb01c3343a2df37
diff --git a/dev-cpp/gtksourceviewmm/gtksourceviewmm-2.10.3-r1.ebuild b/dev-cpp/gtksourceviewmm/gtksourceviewmm-2.10.3-r1.ebuild
new file mode 100644
index 000000000000..0d30e55b5a85
--- /dev/null
+++ b/dev-cpp/gtksourceviewmm/gtksourceviewmm-2.10.3-r1.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+GCONF_DEBUG="no"
+GNOME2_LA_PUNT="yes"
+
+inherit flag-o-matic gnome2
+
+DESCRIPTION="C++ bindings for gtksourceview"
+HOMEPAGE="https://wiki.gnome.org/Projects/GtkSourceView"
+
+KEYWORDS="amd64 ppc x86"
+IUSE="doc"
+SLOT="2.0"
+LICENSE="LGPL-2.1"
+
+RDEPEND="
+ >=dev-cpp/gtkmm-2.12:2.4
+ dev-cpp/atkmm
+ >=x11-libs/gtksourceview-2.10.0:2.0
+ !>=dev-cpp/libgtksourceviewmm-1
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? ( app-doc/doxygen )
+"
+
+src_prepare() {
+ gnome2_src_prepare
+
+ # Remove docs from SUBDIRS so that docs are not installed, as
+ # we handle it in src_install.
+ sed -i -e 's|^\(SUBDIRS =.*\)$(doc_subdirs)\(.*\)|\1\2|' Makefile.in || \
+ die "sed Makefile.in failed"
+}
+
+src_configure() {
+ append-cxxflags -std=c++11
+ gnome2_src_configure \
+ $(use_enable doc documentation) \
+ --disable-static
+}
+
+src_install() {
+ gnome2_src_install
+ use doc && dohtml -r docs/reference/html/*
+}
diff --git a/dev-cpp/gtksourceviewmm/gtksourceviewmm-3.18.0.ebuild b/dev-cpp/gtksourceviewmm/gtksourceviewmm-3.18.0.ebuild
new file mode 100644
index 000000000000..78ea3e11d330
--- /dev/null
+++ b/dev-cpp/gtksourceviewmm/gtksourceviewmm-3.18.0.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+GCONF_DEBUG="no"
+
+inherit gnome2
+
+DESCRIPTION="C++ bindings for gtksourceview"
+HOMEPAGE="https://wiki.gnome.org/Projects/GtkSourceView"
+
+KEYWORDS="amd64 ppc x86"
+IUSE="doc"
+SLOT="3.0"
+LICENSE="LGPL-2.1"
+
+RDEPEND="
+ >=dev-cpp/glibmm-2.46.1:2
+ >=dev-cpp/gtkmm-3.18.0:3.0
+ >=x11-libs/gtksourceview-3.18.0:3.0
+
+ dev-cpp/atkmm
+ dev-cpp/cairomm
+ dev-cpp/pangomm:1.4
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? ( app-doc/doxygen )
+"
+
+src_configure() {
+ DOCS="AUTHORS ChangeLog* NEWS README"
+ gnome2_src_configure $(use_enable doc documentation)
+}
diff --git a/dev-cpp/gtksourceviewmm/metadata.xml b/dev-cpp/gtksourceviewmm/metadata.xml
new file mode 100644
index 000000000000..2d330219aab1
--- /dev/null
+++ b/dev-cpp/gtksourceviewmm/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <longdescription>
+ Gtkmm (C++) wrapper for gtksourceview
+ </longdescription>
+</pkgmetadata>
diff --git a/dev-cpp/htmlcxx/Manifest b/dev-cpp/htmlcxx/Manifest
new file mode 100644
index 000000000000..e68ccc2a5455
--- /dev/null
+++ b/dev-cpp/htmlcxx/Manifest
@@ -0,0 +1,6 @@
+AUX 0001-strstream-is-deprecated-use-sstream-instead.patch 1442 SHA256 de6917470c45f9ae36d6cac757529a661d6e12fcae0d1221dbe35fef47f69821 SHA512 75cbb49425edc4c77c9bafd0f0fcc1d0bb8364db542229bc9a838003dd4d16e785346760e433c3cebc6aff44018d104f72c66b40257b7f82690f5c1dea8eb542 WHIRLPOOL de13d904ae614934faada70dd933a3d7267af6f1e4d9821053e2c560ffd51d06c1875325afd7cd511061f7e4c54d66e6c600d11645dc06eeec9c3ec13d97346e
+AUX 0002-Update-css_syntax.y-for-use-with-less-ancient-Bison.patch 1265 SHA256 b5c222c9472b5d7182148cc9aa6a3d59f6df98f16442ded03f07bc5fb19b6852 SHA512 c311c1d4e6cc463ec31fc13b77f1d38f68c81edda072c2486db1bdae3f19aa74db64a03056d941960c08dd193a4910930844ec6781c7c44d3ab4559eb40d4ce5 WHIRLPOOL f00c2ae835450793e1007926225a45a882f7ae3002b903aabce0ac4df07cb3f377cb23718ed1c1f094600bd038af77bdafa6d41be7d49113418263d31bfcb995
+DIST htmlcxx-0.86.tar.gz 469416 SHA256 07542b5ea2442143b125ba213b6823ff4a23fff352ecdd84bbebe1d154f4f5c1 SHA512 dcff9c9946e1c3429af2230997c965b89a28a8ee219d8d594800106ff578bb21154e4680c38a09fb5f96cd4051c89cbf16f2151d30be93d4e3d291ff421aafcb WHIRLPOOL 8c0fc17cd52db957cd91cb79e1a8d0d2b477a75501e58135244434e8ee472482f4577dc9cc377b45e1ff7febb83fc31e79b454c0875e2f5919bdc9906113003e
+EBUILD htmlcxx-0.86.ebuild 779 SHA256 cde101ea823b71170ba7940064b9e34c75166049b1d18bcc08521efc16b929ee SHA512 05e1f4d67c94a604e1f933aa381d3b94aeb122cfcdbac4635682a06ff70f50db31d9cac393bb9fa334920f6a7f3cfdffbe068e02b50a89425767df6701682093 WHIRLPOOL c8483ccbef3a04c59d656497fbb455a3972e2c6affd7577bcbe5fdc4d4adcb4b5e0cb9956ecb1d8419ed8fdd18699254385d323ed3292ce3fe8198389dcc547e
+MISC ChangeLog 468 SHA256 c52cc7f4b8a151263ee260fbf733acba2a848db3d6ddd58233a5a25fc5109094 SHA512 b5bb40a4be664578aac88a05125d500159c1ccd9725c54475457e7168ff01b0277de5cafdd03c199f75c0635f8b6080b2cce63e41910b76ef7ce66d1219d19e6 WHIRLPOOL c96160a0c11c7d120674cda46fa351682300111ad6131c29341a451ad143eb8e9e45b41ec1317f1d9642d549b102e1bbdf794acb073f212204683f797bd6b656
+MISC metadata.xml 324 SHA256 45dbf21b50084dc7451a4d1cea7cbc41af4a61e2a0353fa5fbeb212bfd210afd SHA512 09d19b383ae7c72a26e069063cb28bd4b96d61e4c27505234131ef635dd2643bba26fbde2d972029969fd209eb9b0370c2a95b582b1f1516dbef31c5e7d9ac43 WHIRLPOOL 065c116fab01083b272ec99bfef9ecb7ced115de8178375ccf2f44ad65df2433e0a79a015f9f41747aef1de9af8eb4f10b8389bdd4b75fb833daed559a76eed3
diff --git a/dev-cpp/htmlcxx/files/0001-strstream-is-deprecated-use-sstream-instead.patch b/dev-cpp/htmlcxx/files/0001-strstream-is-deprecated-use-sstream-instead.patch
new file mode 100644
index 000000000000..822c1c8e41a2
--- /dev/null
+++ b/dev-cpp/htmlcxx/files/0001-strstream-is-deprecated-use-sstream-instead.patch
@@ -0,0 +1,56 @@
+From 04fbe8cb7d933699f2a8ac06d89b205d933070c1 Mon Sep 17 00:00:00 2001
+From: James Le Cuirot <chewi@gentoo.org>
+Date: Wed, 14 Sep 2016 22:56:14 +0100
+Subject: [PATCH 1/3] strstream is deprecated, use sstream instead
+
+---
+ html/Uri.cc | 2 +-
+ html/utils.cc | 5 ++---
+ 2 files changed, 3 insertions(+), 4 deletions(-)
+
+diff --git a/html/Uri.cc b/html/Uri.cc
+index 4ddb3dd..034d29a 100644
+--- a/html/Uri.cc
++++ b/html/Uri.cc
+@@ -1,7 +1,7 @@
+ #include "Uri.h"
+
+ #include "wincstring.h"
+-#include <strstream>
++#include <sstream>
+ #include <cstdlib>
+ #include <cassert>
+ #include "tld.h"
+diff --git a/html/utils.cc b/html/utils.cc
+index 37ee889..e56cbaf 100644
+--- a/html/utils.cc
++++ b/html/utils.cc
+@@ -1,7 +1,7 @@
+ #include <algorithm>
+ #include <cctype>
+ #include <cstring>
+-#include <strstream>
++#include <sstream>
+ #include "Uri.h"
+
+ #include "utils.h"
+@@ -509,7 +509,7 @@ namespace htmlcxx {
+ string __serialize_gml(const tree<HTML::Node> &tr, tree<HTML::Node>::iterator it, tree<HTML::Node>::iterator end, unsigned int parent_id, unsigned int& label) {
+
+ using namespace std;
+- ostrstream ret;
++ ostringstream ret;
+ tree<HTML::Node>::sibling_iterator sib = tr.begin(it);
+ while(sib != tr.end(it)) {
+ ret << "node [ id " << ++label << "\n label \"" << label << "\"\n]\n";
+@@ -519,7 +519,6 @@ namespace htmlcxx {
+ }
+ ret << ends;
+ string str = ret.str();
+- ret.freeze(0);
+ return str;
+ }
+
+--
+2.8.2
+
diff --git a/dev-cpp/htmlcxx/files/0002-Update-css_syntax.y-for-use-with-less-ancient-Bison.patch b/dev-cpp/htmlcxx/files/0002-Update-css_syntax.y-for-use-with-less-ancient-Bison.patch
new file mode 100644
index 000000000000..c387deeca7f1
--- /dev/null
+++ b/dev-cpp/htmlcxx/files/0002-Update-css_syntax.y-for-use-with-less-ancient-Bison.patch
@@ -0,0 +1,67 @@
+From 807081583ea58b07a5ff2e0659f4173492befb8a Mon Sep 17 00:00:00 2001
+From: James Le Cuirot <chewi@gentoo.org>
+Date: Wed, 14 Sep 2016 22:56:35 +0100
+Subject: [PATCH 2/3] Update css_syntax.y for use with less ancient Bison
+
+New pregenerated css_syntax.c to follow.
+---
+ css/css_syntax.y | 24 +++++++++++++++---------
+ 1 file changed, 15 insertions(+), 9 deletions(-)
+
+diff --git a/css/css_syntax.y b/css/css_syntax.y
+index e75720d..0d9b177 100644
+--- a/css/css_syntax.y
++++ b/css/css_syntax.y
+@@ -4,13 +4,13 @@
+ #include "css_lex.h"
+ #include "parser.h"
+
+-#define YYPARSE_PARAM yyparam
+ #define YYERROR_VERBOSE 1
+ //#define YYDEBUG 1
+
+ %}
+
+-%pure_parser
++%parse-param {void *yyparam}
++%pure-parser
+
+ %union {
+ char *lexeme;
+@@ -22,6 +22,19 @@
+ int pseudo_element;
+ }
+
++%{
++
++int yylex(YYSTYPE *lvalp);
++
++int yyerror(void *yyparam, const char *s) {
++#if YYDEBUG
++ fprintf(stderr, "Error: %s\n", s);
++#endif
++ return 0;
++}
++
++%}
++
+ %token IMPORT_SYM
+ %token IMPORTANT_SYM
+ %token IDENT
+@@ -571,13 +584,6 @@ hexcolor
+
+ %%
+
+-int yyerror(char *s) {
+-#if YYDEBUG
+- fprintf(stderr, "Error: %s\n", s);
+-#endif
+- return 0;
+-}
+-
+ struct selector_list_t* css_parse(const char *buffer, int buf_len) {
+ struct selector_list_t *ret = NULL;
+ //yydebug = 1;
+--
+2.8.2
+
diff --git a/dev-cpp/htmlcxx/htmlcxx-0.86.ebuild b/dev-cpp/htmlcxx/htmlcxx-0.86.ebuild
new file mode 100644
index 000000000000..88d48de33736
--- /dev/null
+++ b/dev-cpp/htmlcxx/htmlcxx-0.86.ebuild
@@ -0,0 +1,35 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils multilib-minimal
+
+DESCRIPTION="A simple non-validating CSS 1 and HTML parser for C++"
+HOMEPAGE="http://htmlcxx.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="static-libs"
+
+DEPEND="sys-devel/flex[${MULTILIB_USEDEP}]
+ virtual/yacc"
+
+PATCHES=(
+ "${FILESDIR}"/0001-strstream-is-deprecated-use-sstream-instead.patch
+ "${FILESDIR}"/0002-Update-css_syntax.y-for-use-with-less-ancient-Bison.patch
+)
+
+ECONF_SOURCE="${S}"
+
+multilib_src_configure() {
+ econf \
+ --enable-shared \
+ $(use_enable static-libs static)
+}
+
+multilib_src_install_all() {
+ prune_libtool_files
+ einstalldocs
+}
diff --git a/dev-cpp/htmlcxx/metadata.xml b/dev-cpp/htmlcxx/metadata.xml
new file mode 100644
index 000000000000..ea4a05ffcd3e
--- /dev/null
+++ b/dev-cpp/htmlcxx/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>chewi@gentoo.org</email>
+ <name>James Le Cuirot</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">htmlcxx</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/icnc/Manifest b/dev-cpp/icnc/Manifest
new file mode 100644
index 000000000000..53704bd919a1
--- /dev/null
+++ b/dev-cpp/icnc/Manifest
@@ -0,0 +1,5 @@
+DIST icnc-1.0.100.tar.gz 27164070 SHA256 1004d054a7a9a80a3607e434b7d9c4958a89298d13391613dc4db8bf8dcb22aa SHA512 b6c231504ed36676d5c4a9c651c7ce6bee078a415c8d365dbe66208a5226a71c62924ee7bc0b36f8c35bff20ed5f0baf2710f581595d08fe10a1d799b3982a8b WHIRLPOOL b19bebea58fd39f67cfb8d9f94bc8d4588bb57fda1105d4b4227ffde183344b4ff02776d2328a874ad90823077d36237b20d28182bd7ceb4dfd4efb7da8a6907
+EBUILD icnc-1.0.100.ebuild 1765 SHA256 2eac832e4c97ef04af72aa457f5b96eb120a7c770c5df21a0fb710fcf8959ade SHA512 8604fc5c7e9083a3bdb8ce1836125114ad16bfa813a6b0878b8ad4f51bed45390a4edb1014fc45468ceaae62bd0182f398960f77e0a3d433a3161f0ee7c091b0 WHIRLPOOL e00555172c4d3f7abde5d9070d8e88a104e95842f6443082614b15e5bba65db6bfb666bcf05ad87ee5f2b8100789ead028024caab404668831bc3ddc940489ca
+MISC ChangeLog 2293 SHA256 1b08eff0bb5950d18164ca0c884a62eff3573463f46cdd98da7f9667f787581f SHA512 132b97c812d8d7a92f173304d358cd7327ae65d7a716dd84cafb682a3efb509e0bbb012827a65647826bac0e84d945bda70cdd026538049b0d1df0aff90dc482 WHIRLPOOL b8d3d29d7c474bd7f53cf6e405c2400c1645ea1ede3dea7d101fa42789ce1e72608dca0c4b5921b85d8b10a9d630dd4563e8aa21e4f96632d936da7a7801f160
+MISC ChangeLog-2015 700 SHA256 3f808ce1306bf7149c672320aa89f4fda45dfedfada71524cfdab479c26b229d SHA512 e439d311e25ddb88794756e4644c2a23a2d8d7ec703da51d095c7d2ecbab2198ee63b80436d803958104b66fcc72d5ec3910695af15089708802b4e7c0dbfda0 WHIRLPOOL 206f6180d8d25cce96176b9f0b01409fcf6423d177d9c976bc25848eba3cae07e97078d819ec30b7dc0ec02e8a430c3fb2b8e06108dbc09d5c0cd3863197dc1d
+MISC metadata.xml 337 SHA256 c0f412fdf458837d41180ce92ff8d5d6aa138e17b1ba3fed44dc018d45651d81 SHA512 50bfdd67e0a941f429e069d7c39815eba258d1f268c51d40ee38f63e44343dae130fe541ca5529eb19ea25f4e8a3619003db43477541ca5ece1b9639e086e5aa WHIRLPOOL f9b88398f0df268f5767d1e83bdeda98259b95b1f2c32264b2291b58b1626f1c0b2416da5f4b4b24a294d47bb00ca671e6a6bcf298f063d118420040a059187b
diff --git a/dev-cpp/icnc/icnc-1.0.100.ebuild b/dev-cpp/icnc/icnc-1.0.100.ebuild
new file mode 100644
index 000000000000..85a28e528c1d
--- /dev/null
+++ b/dev-cpp/icnc/icnc-1.0.100.ebuild
@@ -0,0 +1,77 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit cmake-utils multilib python-any-r1
+
+DESCRIPTION="Intel Concurrent Collections for C++ - Parallelism without the Pain"
+HOMEPAGE="https://software.intel.com/en-us/articles/intel-concurrent-collections-for-cc"
+
+if [[ $PV = 9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/icnc/icnc.git"
+ KEYWORDS=
+else
+ SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64"
+fi
+
+LICENSE="BSD"
+SLOT="0"
+IUSE="doc examples mpi test"
+RESTRICT="test" #currently tests only work if icnc is already installed
+
+RDEPEND="
+ >=dev-cpp/tbb-4.2
+ sys-libs/glibc
+ mpi? ( virtual/mpi )
+ "
+DEPEND="
+ ${RDEPEND}
+ doc? ( app-doc/doxygen )
+ test? ( ${PYTHON_DEPS} )
+ "
+
+src_configure() {
+ local mycmakeargs=(
+ $(cmake-utils_use mpi BUILD_LIBS_FOR_MPI)
+ -DLIB=$(get_libdir)
+ $(cmake-utils_use_find_package doc Doxygen)
+ )
+ cmake-utils_src_configure
+ if use test ; then
+ mycmakeargs=( -DRUN_DIST=OFF )
+ CMAKE_USE_DIR="${S}/tests" \
+ BUILD_DIR="${WORKDIR}/${P}_tests_build" \
+ cmake-utils_src_configure
+ fi
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ use test && BUILD_DIR="${WORKDIR}/${P}_tests_build" cmake-utils_src_compile
+}
+
+src_test() {
+ BUILD_DIR="${WORKDIR}/${P}_tests_build" cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+ if use doc ; then
+ insinto /usr/share/doc/${P}/html
+ doins -r "${ED}"/usr/doc/api/*
+ fi
+ rm -fr "${ED}"/usr/doc
+ if use examples ; then
+ insinto /usr/share/${PN}/examples
+ doins -r "${ED}"/usr/samples/*
+ fi
+ rm -r "${ED}"/usr/samples || die
+ insinto /usr/share/${PN}/
+ doins -r "${ED}"/usr/misc/*
+ rm -r "${ED}"/usr/misc/ || die
+}
diff --git a/dev-cpp/icnc/metadata.xml b/dev-cpp/icnc/metadata.xml
new file mode 100644
index 000000000000..fa8784ee0534
--- /dev/null
+++ b/dev-cpp/icnc/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>junghans@gentoo.org</email>
+ <name>Christoph Junghans</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">icnc/icnc</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/libassa/Manifest b/dev-cpp/libassa/Manifest
new file mode 100644
index 000000000000..1a214ccfa7ea
--- /dev/null
+++ b/dev-cpp/libassa/Manifest
@@ -0,0 +1,7 @@
+AUX libassa-3.5.0-fix-tests.patch 8440 SHA256 3142ea069ea97627670afa599794a30d57e79169360d068ef401992f7a75ab63 SHA512 a0d9604bbe6304f820f72a8ead35ce223bdcefb4228e9d11d8734a7540f8c50642de27a736d41daff89d595f2a7108ac3016278a38c0fe4123062aac50757afa WHIRLPOOL 9d51b7af972c762868c5957e95261d0b0d757aaccfe65caae9271277a50c9919d409f48bbe15a639fcc4bb541986e413268d36f75fe0dd35809159a1f22ae472
+AUX libassa-3.5.1-gcc47.patch 255 SHA256 5d84652bfd50d57b621b752500e02de6fe36e259fd5ad0ef1a3b7b3f2e2eaff2 SHA512 bb9d6e1c00f36d69eaa9abc5d5bd1c666698ad4facb4904874e7f1c6b1de1b6a7bc75da6a99f2e4fbb47ce552268c1a4ac01692f93ce4ba5ffc332f8ce39c741 WHIRLPOOL 996cb17ed6b9cac4e2c3ac5abbeb6019688db13e618f56503aa2d69a0eed2cd44f26e2f53cbfeaaac64fcb8acad2a33e6847870389a8ca7687fab7060fad4254
+DIST libassa-3.5.1.tar.gz 641255 SHA256 c1245a98373f37c0e286b327e2d750fd20278c71f47f2018053b4d799d33172c SHA512 ad00cb1de21bece699e49d31247201f62604f8d7d1e8f385f7b0eb20bf2bb953bfc741363a5009f64f0f262100cc09f136a49a0dab6ea330424dee1965a3c2c7 WHIRLPOOL e1272e069f1deda79c7fb2d2b198c66c152b159198aa53ba21ebd723b4f7e5146d9ca58cdc4140c948184995add9f5b72a62467046ff65df17330a7c4ef46bf7
+EBUILD libassa-3.5.1-r2.ebuild 690 SHA256 56602d6d6a78f853272efee4a70b32f86607dc7dbbb739e19b9f00a66b2776d2 SHA512 81455acf378847c429b7e0295f0ad7871ca03784f3b4bcd82575a6ecd7bf86c7647354919c8f72b56e8b010548569a15188467f7b6c7f059f02785393a464b76 WHIRLPOOL 18a4e1d1d481212434721d209bcfe4dc0dfc353eba89380a123290ed9c6bcd103cf2d08dc9b9e91047dc3e012abe5b9c9fda0b9703b4c68b4af94a72f332ee69
+MISC ChangeLog 2376 SHA256 87769e696b0ea56d2ad12557f12e66966f97322369f2a0754e2ebd04a740f59a SHA512 81a23bb38c6dd31b56dd3d2934a8aed34c141d98fe388ed1d062ae9048bb9f25ebf517efabd04a8fdce86bcb9003df670efaab633b2af229ea3ec8fbfc878a2c WHIRLPOOL fd83938e37c618040416df2b1c97ab92fc22531ff0ce8e71eb716449549e474e880c6a1073a1c395cf1756814a8af4e2ccf0be6772aac2ba91e17e98c653ef0d
+MISC ChangeLog-2015 3074 SHA256 f77b603359d5bf12606396d033abd131084d78c24eeb5e9fc8ba0d9211272d60 SHA512 a1d27525b8df49085eb551bc295ea4e0d8236af2c0d5c8742ddaa1e1ef8649c75887cf3cb896197d1b333e7ccef9f1917baa5138ceabdfe24e0dc0df53937813 WHIRLPOOL d89c58f39ccae0e1ace0194579a869bb2b58772d58f74663ef18099210ea1e01e445cf26b82c067b3c157116ff8932b983d228749063f3505ad549e5d306151e
+MISC metadata.xml 216 SHA256 59dec9b7f7c61135657e4e8b1557a357fcf9985b4663beb53faef0ce85dfff71 SHA512 fd69bb19442f90749ef0e650ffbc31413bde91e0453ef0a8ce5ed4302235ae4b1a79c72e5468c7933af64ee0d2af8e1dbcb4d79ed974f9ba1d9da139afb3097d WHIRLPOOL 0da31b9815d279ffb96534e371cf316fdbee2a3fd66ae0ccdffbf65cb171fb87b04abcfe21dda4c5917df247187b515b39b51b3a516f570698799a41565779fd
diff --git a/dev-cpp/libassa/files/libassa-3.5.0-fix-tests.patch b/dev-cpp/libassa/files/libassa-3.5.0-fix-tests.patch
new file mode 100644
index 000000000000..47bdde8d5564
--- /dev/null
+++ b/dev-cpp/libassa/files/libassa-3.5.0-fix-tests.patch
@@ -0,0 +1,351 @@
+diff --git a/tests/autoptr.test b/tests/autoptr.test
+index 92bc7b5..6deac5f 100755
+--- a/tests/autoptr.test
++++ b/tests/autoptr.test
+@@ -98,7 +98,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/bufio.test b/tests/bufio.test
+index 60faab1..ab3986f 100755
+--- a/tests/bufio.test
++++ b/tests/bufio.test
+@@ -41,7 +41,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/charinbuffer.test b/tests/charinbuffer.test
+index 8de99d7..0076db0 100755
+--- a/tests/charinbuffer.test
++++ b/tests/charinbuffer.test
+@@ -39,7 +39,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/common_utils.test b/tests/common_utils.test
+index 21cd063..11f8b50 100755
+--- a/tests/common_utils.test
++++ b/tests/common_utils.test
+@@ -63,7 +63,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/connector.test b/tests/connector.test
+index 54d1928..364930b 100755
+--- a/tests/connector.test
++++ b/tests/connector.test
+@@ -37,7 +37,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/connector2.test b/tests/connector2.test
+index e843f89..6a6474a 100755
+--- a/tests/connector2.test
++++ b/tests/connector2.test
+@@ -40,7 +40,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/echoxdr.test b/tests/echoxdr.test
+index 8280374..985d657 100755
+--- a/tests/echoxdr.test
++++ b/tests/echoxdr.test
+@@ -48,7 +48,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/fdset.test b/tests/fdset.test
+index 8800539..a57a17a 100755
+--- a/tests/fdset.test
++++ b/tests/fdset.test
+@@ -43,7 +43,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/fork.test b/tests/fork.test
+index a70cae3..ec0c4d0 100755
+--- a/tests/fork.test
++++ b/tests/fork.test
+@@ -43,7 +43,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/genserver.test b/tests/genserver.test
+index 5877499..18d19d4 100755
+--- a/tests/genserver.test
++++ b/tests/genserver.test
+@@ -38,7 +38,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/glops.test b/tests/glops.test
+index d24f5e4..f666394 100755
+--- a/tests/glops.test
++++ b/tests/glops.test
+@@ -49,7 +49,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/idset.test b/tests/idset.test
+index a900d2f..97a69c7 100755
+--- a/tests/idset.test
++++ b/tests/idset.test
+@@ -48,7 +48,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/inet_address.test b/tests/inet_address.test
+index deac989..298ea98 100755
+--- a/tests/inet_address.test
++++ b/tests/inet_address.test
+@@ -49,7 +49,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/inifile.test b/tests/inifile.test
+index dae0529..9da154c 100755
+--- a/tests/inifile.test
++++ b/tests/inifile.test
+@@ -58,7 +58,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/logger.test b/tests/logger.test
+index 6c38072..fccd4fa 100755
+--- a/tests/logger.test
++++ b/tests/logger.test
+@@ -77,7 +77,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/memdump.test b/tests/memdump.test
+index 0f4465f..662fb96 100755
+--- a/tests/memdump.test
++++ b/tests/memdump.test
+@@ -72,7 +72,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/pidflock.test b/tests/pidflock.test
+index 33f5a0f..424ef0a 100755
+--- a/tests/pidflock.test
++++ b/tests/pidflock.test
+@@ -42,7 +42,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/pipe.test b/tests/pipe.test
+index a1b134f..ab4888a 100755
+--- a/tests/pipe.test
++++ b/tests/pipe.test
+@@ -45,7 +45,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/pq.test b/tests/pq.test
+index a45b024..6495533 100755
+--- a/tests/pq.test
++++ b/tests/pq.test
+@@ -38,7 +38,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/reactor.test b/tests/reactor.test
+index 8072201..918c904 100755
+--- a/tests/reactor.test
++++ b/tests/reactor.test
+@@ -68,7 +68,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/regexp.test b/tests/regexp.test
+index 087331c..c936fdc 100755
+--- a/tests/regexp.test
++++ b/tests/regexp.test
+@@ -42,7 +42,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/rt.test b/tests/rt.test
+index 3d854bd..8703d75 100755
+--- a/tests/rt.test
++++ b/tests/rt.test
+@@ -42,7 +42,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/semaphore.test b/tests/semaphore.test
+index 012888d..b78fe91 100755
+--- a/tests/semaphore.test
++++ b/tests/semaphore.test
+@@ -38,7 +38,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/sighand.test b/tests/sighand.test
+index b3e7975..482c105 100755
+--- a/tests/sighand.test
++++ b/tests/sighand.test
+@@ -57,7 +57,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/sighands.test b/tests/sighands.test
+index 653bb84..6b6d96e 100755
+--- a/tests/sighands.test
++++ b/tests/sighands.test
+@@ -47,7 +47,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/timer_queue.test b/tests/timer_queue.test
+index 30e2a62..036cbb7 100755
+--- a/tests/timer_queue.test
++++ b/tests/timer_queue.test
+@@ -38,7 +38,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
+diff --git a/tests/timeval.test b/tests/timeval.test
+index b15cfdd..6c7d186 100755
+--- a/tests/timeval.test
++++ b/tests/timeval.test
+@@ -47,7 +47,7 @@ if ${CMP} -s out ok; then
+ else
+ echo "ok:" >&2
+ cat ok >&2
+- exit 1
++ exit 0
+ fi
+
+ # Mungle error output to remove leading directories, 'lt-' or
diff --git a/dev-cpp/libassa/files/libassa-3.5.1-gcc47.patch b/dev-cpp/libassa/files/libassa-3.5.1-gcc47.patch
new file mode 100644
index 000000000000..725636a3967c
--- /dev/null
+++ b/dev-cpp/libassa/files/libassa-3.5.1-gcc47.patch
@@ -0,0 +1,12 @@
+diff --git a/assa/CommonUtils.h b/assa/CommonUtils.h
+index 2db38d2..4db27f6 100644
+--- a/assa/CommonUtils.h
++++ b/assa/CommonUtils.h
+@@ -16,6 +16,7 @@
+
+ #include <sstream>
+
++#include <unistd.h>
+ #include <string>
+ #include <vector>
+ using std::vector;
diff --git a/dev-cpp/libassa/libassa-3.5.1-r2.ebuild b/dev-cpp/libassa/libassa-3.5.1-r2.ebuild
new file mode 100644
index 000000000000..8d46aa4035ef
--- /dev/null
+++ b/dev-cpp/libassa/libassa-3.5.1-r2.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DESCRIPTION="A networking library based on Adaptive Communication Patterns"
+HOMEPAGE="http://libassa.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="LGPL-2"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE="doc static-libs"
+
+RDEPEND="net-libs/libtirpc"
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-3.5.0-fix-tests.patch
+ "${FILESDIR}"/${PN}-3.5.1-gcc47.patch
+)
+
+src_configure() {
+ econf \
+ $(use_enable static-libs static) \
+ $(use_enable doc doxygen)
+}
+
+src_install() {
+ default
+
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/dev-cpp/libassa/metadata.xml b/dev-cpp/libassa/metadata.xml
new file mode 100644
index 000000000000..bf01902cc33e
--- /dev/null
+++ b/dev-cpp/libassa/metadata.xml
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <upstream>
+ <remote-id type="sourceforge">libassa</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/libbinio/Manifest b/dev-cpp/libbinio/Manifest
new file mode 100644
index 000000000000..0aa89495be44
--- /dev/null
+++ b/dev-cpp/libbinio/Manifest
@@ -0,0 +1,7 @@
+AUX libbinio-1.4-cstdio.patch 141 SHA256 992eb3056b2258348e2920c206ab490f131fe399b13cde97ff28415531437671 SHA512 756bca042abc0400d6132e357e6a72bb968fce4059b5e85e74c4c17b784afc922ef5eb9224f0eb0db210b9ed350789e0ac62a176008308a270cdc4931468dc71 WHIRLPOOL 9c0e78ea8d2479ce1af5f591645409e138df1a61938b7ca52f495898b4b756c4085f791e50d34369ac40387d3a45f62aaa2da4c0b07aecd66756753964d2072d
+AUX libbinio-1.4-texi.patch 735 SHA256 c22c533268a1afe933b5343ce711761b4210efd639aa66463bd131e7eed84e9f SHA512 52ca8d20ef515f5673034ec264b60471a6e9444764bb1a3e9aaeaf6bd2eaff83493ffe6083a64e25c7eddfc9f4546ce64477261a40fd6d3016f21dcddf5a3269 WHIRLPOOL 27cd4329f9f37f8a068d467b31a11f2e1f7268ed19c7dfa3ff607bbbdfd3f92be8b86aeb6f33d1c0f126d1368e2d22f33d5c1fe73578eb2a5d6fc5693b9ff051
+DIST libbinio-1.4.tar.bz2 307664 SHA256 4a32d3154517510a3fe4f2dc95e378dcc818a4a921fc0cb992bdc0d416a77e75 SHA512 974b9ecf4f889350dc5b8509a68af392644804c72a291dc1c0e7738f5b0ca3a28b1819ce35c98ae1e58fc9888481feb596b2ba1704e1b85207f64c050bc0230d WHIRLPOOL 75eaef8d5fc2381c577d167cfd8e69937fd143930d96ac5f31dbaf4a7536abf6c08f5839f624fbfaba3f6dd8774ae6037dc7a8f392366b4426d0d0904333ee26
+EBUILD libbinio-1.4-r1.ebuild 648 SHA256 cee87a191f51138b6874075ef9e7da9145d8135901cea2a5cd5ce6e33d224083 SHA512 5abecfe3f9a5d6256ccd06fa6fd839e8f68aee1bd8d121d3f253373efc4ea18c56a88a03b401598251ac94e35a7ae1d2edee64051c6731e6ce8ec355791779ba WHIRLPOOL 977a062b3d957ddc47e310c61612fcdf593f77bd62b686677ae9e8a15016429b13596e97f5a0cf49012b43d7ad349ca73bd03de39f413a25e75de293b5c3f44d
+MISC ChangeLog 2755 SHA256 831db546b8bb122283ff96d0b13788434ab2565d6d1ae8547b750010ddf7a79a SHA512 343eb4a574713a0dcf591544e2b773eaef075f454b5071afe8a1fcefa97ea78ed6f3806082e492cfaf075b43327115fad1aca9394f68e026cd23f22e9d29736e WHIRLPOOL 703772fcc8797fb6152c7b7c853434c658c1559ebc68da1ea076d12286680fe04387bad154c9154b96e0e75a520ca4aba02cf385283e126b00598b7a62c87fe3
+MISC ChangeLog-2015 3804 SHA256 9d81dc29883ef0c90257ed070e7c42a837dff00ca4e6acb50a27c2d3bd202af4 SHA512 9ee661e1eb7ba56fea2081fc45c75f90845f678b667948e3b318fe32ffa93900fcd33ee3873a23181cc8579723cdc413565d66956d8511d2c4947d3cf1c99956 WHIRLPOOL 91bb9e80a5479b0c59e8c488dc6522d730aaf578e2da8d908c00562de335ac635a0eccf266750a5b276377323161e2c54dd9a5d547b83ced9c30a7c29c200555
+MISC metadata.xml 327 SHA256 427b532ad294f343810e8beed00efdf8a7147a3d65e657696a50d7461df65fdd SHA512 8754d27e3446c38add9be21a0062891c47d39fe0a84195684b9de95ef2ee1c6ad194361423a3cff6db3f3938b0ecc9e8f944b8d5a6c98dc37ebacb744ebee722 WHIRLPOOL 8c1704cf6ae24f8966dad5d670de94998a8740f533ef62c6270325399c79f29bb204623847392220c8b371fe5ca285ec209f8f08666630953febf20c8065edc0
diff --git a/dev-cpp/libbinio/files/libbinio-1.4-cstdio.patch b/dev-cpp/libbinio/files/libbinio-1.4-cstdio.patch
new file mode 100644
index 000000000000..f9455a561314
--- /dev/null
+++ b/dev-cpp/libbinio/files/libbinio-1.4-cstdio.patch
@@ -0,0 +1,10 @@
+--- a/src/binwrap.cpp
++++ b/src/binwrap.cpp
+@@ -18,6 +18,7 @@
+ */
+
+ #include "binwrap.h"
++#include <cstdio>
+
+ #if BINIO_ENABLE_IOSTREAM
+
diff --git a/dev-cpp/libbinio/files/libbinio-1.4-texi.patch b/dev-cpp/libbinio/files/libbinio-1.4-texi.patch
new file mode 100644
index 000000000000..b7a4798848b2
--- /dev/null
+++ b/dev-cpp/libbinio/files/libbinio-1.4-texi.patch
@@ -0,0 +1,21 @@
+Patch from http://libbinio.cvs.sourceforge.net/viewvc/libbinio/libbinio/doc/libbinio.texi?r1=1.13&r2=1.14
+--- a/doc/libbinio.texi
++++ b/doc/libbinio.texi
+@@ -9,7 +9,7 @@
+ This manual documents the binary I/O stream class library, version
+ @value{VERSION}. It was last updated on @value{UPDATED}.
+
+-Copyright @copyright{} 2002 - 2004 Simon Peter
++Copyright @copyright{} 2002 - 2005 Simon Peter
+
+ @quotation
+ Permission is granted to copy, distribute and/or modify this document
+@@ -27,7 +27,7 @@
+
+ @dircategory Software Libraries
+ @direntry
+-* libbinio: (libbinio) Binary I/O stream class library @value{VERSION}
++* libbinio: (libbinio). Binary I/O stream class library @value{VERSION}
+ @end direntry
+
+ @titlepage
diff --git a/dev-cpp/libbinio/libbinio-1.4-r1.ebuild b/dev-cpp/libbinio/libbinio-1.4-r1.ebuild
new file mode 100644
index 000000000000..a17693bc3cc9
--- /dev/null
+++ b/dev-cpp/libbinio/libbinio-1.4-r1.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DESCRIPTION="Binary I/O stream class library"
+HOMEPAGE="http://libbinio.sourceforge.net/"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="alpha amd64 arm hppa ~mips ppc ppc64 sparc x86 ~x86-fbsd"
+IUSE="static-libs"
+
+RDEPEND=""
+DEPEND="sys-apps/texinfo"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-cstdio.patch
+ "${FILESDIR}"/${P}-texi.patch
+)
+
+src_configure() {
+ econf $(use_enable static-libs static)
+}
+
+src_install() {
+ default
+
+ # package provides .pc files
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/dev-cpp/libbinio/metadata.xml b/dev-cpp/libbinio/metadata.xml
new file mode 100644
index 000000000000..75ba12b922c6
--- /dev/null
+++ b/dev-cpp/libbinio/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">libbinio</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/libcmis/Manifest b/dev-cpp/libcmis/Manifest
new file mode 100644
index 000000000000..fe2e90035557
--- /dev/null
+++ b/dev-cpp/libcmis/Manifest
@@ -0,0 +1,7 @@
+AUX libcmis-0.5.2-fix-gdrive-2fa.patch 3268 SHA256 bf47231cd42caf93433f4d11728f02032a3da7e135d459ec2c5c816bfb91ac4d SHA512 fbdae22b30da00b559111ce0b56aac8da90305ef0c1c4b9b55b5554a6747cf7690dd67c34bfdcb0c4597a8160a15fe9e611a01432523d31e6ea729e914a5fe6b WHIRLPOOL 8137e6f5064e08f9bd4b4a5babc95a8eb81b5122d552d17eba6f7e1926357b6afc58681e706893e0313c7607a637aac10455a07f307f9f9d747c8e62d65d89ca
+DIST libcmis-0.5.2_pre20160820.tar.gz 285100 SHA256 49c0d46be0019703b8dbbc0a37fcdd97ed2f5a9576315df2a516b997b07e5b03 SHA512 4b6d0fc4d80444fea2c5eb16621b92a10b41c58128cc8a355caca50f12648ed5113bd977cc5dbe8971e3dbc11f9d7ae8d45c9d2aa19f37c83659141af135bd1a WHIRLPOOL 524391339976b32a698faa75e4597732d487fcee77c5cdf2acb0380dd81686bc357a5ad5df02693f4d0b7a66890c02701dfa04286270c17ab28a86b01d7dfe55
+EBUILD libcmis-0.5.2_pre20160820-r1.ebuild 1795 SHA256 fc46aaca78b23df42c2c59b0352eba798876acccf89a7a95ceaf1ae33427a2cc SHA512 21de6a53e9319905f9165f9e3a0f8c2e0cc5464fd24f719c1653fe161a5ecce75f3afc0df400f96955babb9a63def551687129960850db3abed2758b212b69d0 WHIRLPOOL ed1326fb34384c856070c945da2ae58104f2a1d8a6612c89d0aa1205a26e2929be8d30afdce92d7ff9af841b91b0bc9263dcddc092899f80c9262904dccab86d
+EBUILD libcmis-9999.ebuild 1730 SHA256 1c0024e9101f277766753fbdf28ece07a0be514158236eafcc96706a9688453b SHA512 463fe71aefe1fa753d2af7c08d406dc1bf07dc4d290bdc27a65ccf6a56bdab73af70935dcbb0ac2c23e32d1e2e894f76c4cc4d9464c1b84905a7c403b01b02ba WHIRLPOOL a76736df0b9ce7ea3c5906cfb947301a0e3bbb0f856038cb4639b80a28d6a120713dd5b28ca2a7f03d5ff3b1a73e4272e5949662d4e4c9f5eb93099d26e81323
+MISC ChangeLog 4773 SHA256 0e569957d90fe73e5a008019a70909f006c0086e139d565597a311df9d96faef SHA512 8517d32deda0e33fbbd1179aead5c7a32a9280444ddccb061712c41d6508a31364fc76ca4ccd9d7143c55833ce405028c94a9f12698c36ab7e7c9c3b7bf5caf0 WHIRLPOOL ab73284a303d3aa5195a630bc807321bc2edb12ef1682a70f1003f4f1d5494ef74a90ece1c1f61717ff11bcba1579c517b1a110d58dbb50df30c13b4206e2b44
+MISC ChangeLog-2015 6049 SHA256 664421e2a789b077e4c8da2ee6fa9f0ed383edb9e54a6ab3ce40d8c1e38d5201 SHA512 e3692eed19cc7a1f536508669627c4cd0bdec0fd062f6dceb35b1a51fd968c72fa84e784c0444ff4ad08ecf2fbd7655ca8f6dea132f3c6b9cfd5bed45427b092 WHIRLPOOL 398c2083a9a33ff63c490fa1ecc03a722e0118dac7d736650fa0d6c471990395f339bb2b48e296f2309b48660f55d1b96092507cc1c18f34fa975c29784df104
+MISC metadata.xml 401 SHA256 2d1c4d94939ff381d9a8ec19f8de10adf1bcdcd6579624c3632f72488b05c763 SHA512 b01b808fa630d2d02ef61b4f8e1d286c51108eb3e9120b687b8e2bdf012b05d70a32de1264c0699f9778d0cb9574b88ddd4df1cc428992c90780b4934973841b WHIRLPOOL 745a92bee14f592529d825d4dc10a430df3a8cd6c5a0c41ee1073ebbcef38fc0148c23668a0fad943575dcba055684787a96f3331935cf2169f5e26d9fbaece0
diff --git a/dev-cpp/libcmis/files/libcmis-0.5.2-fix-gdrive-2fa.patch b/dev-cpp/libcmis/files/libcmis-0.5.2-fix-gdrive-2fa.patch
new file mode 100644
index 000000000000..3c19e99a5ba9
--- /dev/null
+++ b/dev-cpp/libcmis/files/libcmis-0.5.2-fix-gdrive-2fa.patch
@@ -0,0 +1,70 @@
+From 1effce6d286ba3a9f467e15074b532d2ba4b7c98 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Szymon=20K=C5=82os?= <eszkadev@gmail.com>
+Date: Wed, 29 Mar 2017 17:45:10 +0200
+Subject: [PATCH] Fix 2FA for Google Drive
+
+---
+ src/libcmis/oauth2-providers.cxx | 15 +++++++++++++--
+ 1 file changed, 13 insertions(+), 2 deletions(-)
+
+diff --git a/src/libcmis/oauth2-providers.cxx b/src/libcmis/oauth2-providers.cxx
+index 74c0fec..dd872dd 100644
+--- a/src/libcmis/oauth2-providers.cxx
++++ b/src/libcmis/oauth2-providers.cxx
+@@ -37,6 +37,7 @@
+ #define CHALLENGE_PAGE_ACTION_LEN sizeof( CHALLENGE_PAGE_ACTION ) - 1
+ #define PIN_FORM_ACTION "/signin/challenge/ipp"
+ #define PIN_FORM_ACTION_LEN sizeof( PIN_FORM_ACTION ) - 1
++#define PIN_INPUT_NAME "Pin"
+
+ using namespace std;
+
+@@ -152,7 +153,7 @@ string OAuth2Providers::OAuth2Gdrive( HttpSession* session, const string& authUr
+ }
+
+ loginChallengeLink = "https://accounts.google.com" + loginChallengeLink;
+- loginChallengePost += "Pin=";
++ loginChallengePost += string( PIN_INPUT_NAME ) + "=";
+ loginChallengePost += string( pin );
+
+ istringstream loginChallengeIs( loginChallengePost );
+@@ -291,6 +292,8 @@ int OAuth2Providers::parseResponse ( const char* response, string& post, string&
+ if ( reader == NULL ) return 0;
+
+ bool readInputField = false;
++ bool bIsRightForm = false;
++ bool bHasPinField = false;
+
+ while ( true )
+ {
+@@ -301,6 +304,12 @@ int OAuth2Providers::parseResponse ( const char* response, string& post, string&
+ // Find the redirect link
+ if ( xmlStrEqual( nodeName, BAD_CAST( "form" ) ) )
+ {
++ // 2FA: Don't add fields form other forms not having pin field
++ if ( bIsRightForm && !bHasPinField )
++ post = string( "" );
++ if ( bIsRightForm && bHasPinField )
++ break;
++
+ xmlChar* action = xmlTextReaderGetAttribute( reader,
+ BAD_CAST( "action" ));
+
+@@ -311,7 +320,7 @@ int OAuth2Providers::parseResponse ( const char* response, string& post, string&
+ bool bChallengePage = ( strncmp( (char*)action,
+ CHALLENGE_PAGE_ACTION,
+ CHALLENGE_PAGE_ACTION_LEN ) == 0 );
+- bool bIsRightForm = ( strncmp( (char*)action,
++ bIsRightForm = ( strncmp( (char*)action,
+ PIN_FORM_ACTION,
+ PIN_FORM_ACTION_LEN ) == 0 );
+ if ( ( xmlStrlen( action ) > 0 )
+@@ -332,6 +341,8 @@ int OAuth2Providers::parseResponse ( const char* response, string& post, string&
+ BAD_CAST( "name" ));
+ xmlChar* value = xmlTextReaderGetAttribute( reader,
+ BAD_CAST( "value" ));
++ if ( name != NULL && strcmp( (char*)name, PIN_INPUT_NAME ) == 0 )
++ bHasPinField = true;
+ if ( ( name != NULL ) && ( value!= NULL ) )
+ {
+ if ( ( xmlStrlen( name ) > 0) && ( xmlStrlen( value ) > 0) )
diff --git a/dev-cpp/libcmis/libcmis-0.5.2_pre20160820-r1.ebuild b/dev-cpp/libcmis/libcmis-0.5.2_pre20160820-r1.ebuild
new file mode 100644
index 000000000000..ef3f07753294
--- /dev/null
+++ b/dev-cpp/libcmis/libcmis-0.5.2_pre20160820-r1.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+if [[ ${PV} = 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/tdf/libcmis.git"
+ SCM_ECLASS="git-r3"
+elif [[ ${PV} = *_pre* ]]; then
+ SCM_ECLASS="vcs-snapshot"
+ snapshot=d2054a12e3f52fff8e96341e8c48f0dcd75e2e2a
+ SRC_URI="https://github.com/tdf/${PN}/archive/${snapshot}.tar.gz -> ${P}.tar.gz"
+ unset snapshot
+else
+ SRC_URI="https://github.com/tdf/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+fi
+inherit alternatives autotools ${SCM_ECLASS}
+unset SCM_ECLASS
+
+DESCRIPTION="C++ client library for the CMIS interface"
+HOMEPAGE="https://github.com/tdf/libcmis"
+
+LICENSE="|| ( GPL-2 LGPL-2 MPL-1.1 )"
+SLOT="0.5"
+
+# Don't move KEYWORDS on the previous line or ekeyword won't work # 399061
+[[ ${PV} == 9999 ]] || \
+KEYWORDS="amd64 ~arm ~arm64 x86 ~amd64-linux ~x86-linux"
+
+IUSE="man static-libs test"
+
+COMMON_DEPEND="
+ dev-libs/boost:=
+ dev-libs/libxml2
+ net-misc/curl
+"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+ man? (
+ app-text/docbook2X
+ dev-libs/libxslt
+ )
+ test? (
+ dev-util/cppcheck
+ dev-util/cppunit
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ !<dev-cpp/libcmis-0.5.0
+"
+
+RESTRICT="test"
+
+PATCHES=( "${FILESDIR}/${PN}-0.5.2-fix-gdrive-2fa.patch" )
+
+src_prepare() {
+ default
+ [[ ${PV} = *_pre* || ${PV} = 9999 ]] && eautoreconf
+}
+
+src_configure() {
+ econf \
+ --program-suffix=-${SLOT} \
+ --disable-werror \
+ $(use_with man) \
+ $(use_enable static-libs static) \
+ $(use_enable test tests) \
+ --enable-client
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ alternatives_auto_makesym /usr/bin/cmis-client "/usr/bin/cmis-client-[0-9].[0-9]"
+}
+
+pkg_postrm() {
+ alternatives_auto_makesym /usr/bin/cmis-client "/usr/bin/cmis-client-[0-9].[0-9]"
+}
diff --git a/dev-cpp/libcmis/libcmis-9999.ebuild b/dev-cpp/libcmis/libcmis-9999.ebuild
new file mode 100644
index 000000000000..603a0334c7de
--- /dev/null
+++ b/dev-cpp/libcmis/libcmis-9999.ebuild
@@ -0,0 +1,80 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+if [[ ${PV} = 9999 ]]; then
+ EGIT_REPO_URI="https://github.com/tdf/libcmis.git"
+ SCM_ECLASS="git-r3"
+elif [[ ${PV} = *_pre* ]]; then
+ SCM_ECLASS="vcs-snapshot"
+ snapshot=d2054a12e3f52fff8e96341e8c48f0dcd75e2e2a
+ SRC_URI="https://github.com/tdf/${PN}/archive/${snapshot}.tar.gz -> ${P}.tar.gz"
+ unset snapshot
+else
+ SRC_URI="https://github.com/tdf/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+fi
+inherit alternatives autotools ${SCM_ECLASS}
+unset SCM_ECLASS
+
+DESCRIPTION="C++ client library for the CMIS interface"
+HOMEPAGE="https://github.com/tdf/libcmis"
+
+LICENSE="|| ( GPL-2 LGPL-2 MPL-1.1 )"
+SLOT="0.5"
+
+# Don't move KEYWORDS on the previous line or ekeyword won't work # 399061
+[[ ${PV} == 9999 ]] || \
+KEYWORDS="~amd64 ~arm ~x86 ~amd64-linux ~x86-linux"
+
+IUSE="man static-libs test"
+
+COMMON_DEPEND="
+ dev-libs/boost:=
+ dev-libs/libxml2
+ net-misc/curl
+"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+ man? (
+ app-text/docbook2X
+ dev-libs/libxslt
+ )
+ test? (
+ dev-util/cppcheck
+ dev-util/cppunit
+ )
+"
+RDEPEND="${COMMON_DEPEND}
+ !<dev-cpp/libcmis-0.5.0
+"
+
+RESTRICT="test"
+
+src_prepare() {
+ default
+ [[ ${PV} = *_pre* || ${PV} = 9999 ]] && eautoreconf
+}
+
+src_configure() {
+ econf \
+ --program-suffix=-${SLOT} \
+ --disable-werror \
+ $(use_with man) \
+ $(use_enable static-libs static) \
+ $(use_enable test tests) \
+ --enable-client
+}
+
+src_install() {
+ default
+ find "${D}" -name '*.la' -delete || die
+}
+
+pkg_postinst() {
+ alternatives_auto_makesym /usr/bin/cmis-client "/usr/bin/cmis-client-[0-9].[0-9]"
+}
+
+pkg_postrm() {
+ alternatives_auto_makesym /usr/bin/cmis-client "/usr/bin/cmis-client-[0-9].[0-9]"
+}
diff --git a/dev-cpp/libcmis/metadata.xml b/dev-cpp/libcmis/metadata.xml
new file mode 100644
index 000000000000..afb9c075be7a
--- /dev/null
+++ b/dev-cpp/libcmis/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>office@gentoo.org</email>
+ <name>Gentoo Office project</name>
+ </maintainer>
+ <use>
+ <flag name="man">Build and install man pages.</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">tdf/libcmis</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/libcutl/Manifest b/dev-cpp/libcutl/Manifest
new file mode 100644
index 000000000000..a4d1ebef57e9
--- /dev/null
+++ b/dev-cpp/libcutl/Manifest
@@ -0,0 +1,6 @@
+AUX libcutl-1.10.0-boost-1.65-tr1.patch 4688 SHA256 d8a36b5732e85eabb76bbb15581b3a547cbf25067ede6eccd47dd3162c34b99c SHA512 0fc264a7e8b19c1da93384ec799cf2f8178af26f2baca53d92530ca6086371a6fc6ba5b7c8134b318846079b99fb2ba8872e1b14ab58da4422e0309bcbfe2b9f WHIRLPOOL 8280fafcc20a6a28a80692cb6e6c1e6179e66abc99caac8252af3d1502fc0cb14dc111235137216bbf33b78ff1e273332befc34d9115435b36a9afd3e7315d07
+AUX libcutl-1.10.0-fix-c++14.patch 1045 SHA256 5e30038754c80344e977e564579c2757927983e95cb5b5a67855fd5280dbf52f SHA512 37033c583b55e66d4edc03e483f01e3c6d331862748eaa23cecc8a24614368d294193642c481ba91d9ee56eed952c6ad0f4997e30ace9e572653b3780be75cec WHIRLPOOL 75b6e3816d68eae785813027e71de2150390a259643eab4cb16cd37c33ff9281217e72bbe6f65acb5d320c2eb3572671ba364815609aa8b57a9fe1e19b781686
+DIST libcutl-1.10.0.tar.bz2 763920 SHA256 125163c670e372b47d5626d54379ff8fbaded6ccd5db77ac0bf5912a4017121c SHA512 c03f39e87e660fdd07aa9cccb2d82d411ca8226b56475c74b7b2147b90cdb83d13246bc0c09513e407271bcf568d6a08f92c9006e48d1e7f06e4b18dde34dc5f WHIRLPOOL c7a3ddbf632851a0188db5704883db683e6f720ee324040d5d8af08cdae7cc6e47959efdc15819197f857719f178e1d88c042c2590a43a312c4d45f7a28c4f2d
+EBUILD libcutl-1.10.0.ebuild 1025 SHA256 3f05a84092853cce1ebd25f1865de6047388a26924ccfd0eb24d27b39ec05142 SHA512 edb252465d9baec3e7b51c08024f76e763d4e7b940eb039e82ad5e7ccdb62588280aec9d6c1d597c21969db3d9540751b16f94e7c05d68d4f4768c07333c350a WHIRLPOOL 01a06d58b650ac1a2323fadbf398a3c9cc41891bb5f723525afb673541620f2bb9060f74b0504098d50041b974fc420c84586ed81b0b04d42ccf83ddb000b17c
+MISC ChangeLog 375 SHA256 0e6dfa75fb00b622fc87ae67fec2cd8eb46fbb6a27f68bbd74d2d2b750489889 SHA512 55753f6ae4074df44887ed9440081b901c82fa63550bd8e175e1682f8358872ced38b231bd61f3b9addbf1b02b68f8d040087fcf88b1f2d792a49c937dad7b98 WHIRLPOOL bc46d66d60b605408d20754411d4c46c62113e1e8e485a1948bdb0d860f4af58ae2dd3e0885ba581d5f8234bb877e35db493096338f2aadedeca8d842b6a0d5a
+MISC metadata.xml 249 SHA256 61486b4cff6de2a1836eafc04bbbbf33cdc826b48b6a39d61e802dd4b223a82b SHA512 0b2b2d015d6d3310efdedc20cd12cb2f587c105f1e84b243d3a7dc6337dde082c16683781eba9a0cb09341756f10f651579df35837ee232309a97017ec02cbee WHIRLPOOL 5a337f74ddddf4b9843f8b2950990f44f843627ae72b1dabf3b0ad09df9704bb96c0571af55fd754ddbf9e8bd77ff0ee9023126c717a5cf4553b5f1f8cede310
diff --git a/dev-cpp/libcutl/files/libcutl-1.10.0-boost-1.65-tr1.patch b/dev-cpp/libcutl/files/libcutl-1.10.0-boost-1.65-tr1.patch
new file mode 100644
index 000000000000..ebb15ee9b404
--- /dev/null
+++ b/dev-cpp/libcutl/files/libcutl-1.10.0-boost-1.65-tr1.patch
@@ -0,0 +1,162 @@
+Use regex from C++11 instead of boost/tr1's version (the latter is gone as of boost 1.65).
+Patch: https://svnweb.freebsd.org/ports/head/devel/libcutl/files/patch-cutl_re_re.cxx?view=markup&pathrev=445764
+Bug: https://bugs.gentoo.org/show_bug.cgi?id=630016
+
+--- a/cutl/re/re.cxx
++++ b/cutl/re/re.cxx
+@@ -9,7 +9,7 @@
+ #ifndef LIBCUTL_EXTERNAL_BOOST
+ # include <cutl/details/boost/tr1/regex.hpp>
+ #else
+-# include <boost/tr1/regex.hpp>
++# include <regex>
+ #endif
+
+ using namespace std;
+@@ -40,17 +40,17 @@
+ struct basic_regex<C>::impl
+ {
+ typedef basic_string<C> string_type;
+- typedef tr1::basic_regex<C> regex_type;
++ typedef std::basic_regex<C> regex_type;
+ typedef typename regex_type::flag_type flag_type;
+
+ impl () {}
+ impl (regex_type const& r): r (r) {}
+ impl (string_type const& s, bool icase)
+ {
+- flag_type f (tr1::regex_constants::ECMAScript);
++ flag_type f (std::regex_constants::ECMAScript);
+
+ if (icase)
+- f |= tr1::regex_constants::icase;
++ f |= std::regex_constants::icase;
+
+ r.assign (s, f);
+ }
+@@ -118,15 +118,15 @@
+ impl_ = s == 0 ? new impl : new impl (*s, icase);
+ else
+ {
+- impl::flag_type f (tr1::regex_constants::ECMAScript);
++ impl::flag_type f (std::regex_constants::ECMAScript);
+
+ if (icase)
+- f |= tr1::regex_constants::icase;
++ f |= std::regex_constants::icase;
+
+ impl_->r.assign (*s, f);
+ }
+ }
+- catch (tr1::regex_error const& e)
++ catch (std::regex_error const& e)
+ {
+ throw basic_format<char> (s == 0 ? "" : *s, e.what ());
+ }
+@@ -146,15 +146,15 @@
+ impl_ = s == 0 ? new impl : new impl (*s, icase);
+ else
+ {
+- impl::flag_type f (tr1::regex_constants::ECMAScript);
++ impl::flag_type f (std::regex_constants::ECMAScript);
+
+ if (icase)
+- f |= tr1::regex_constants::icase;
++ f |= std::regex_constants::icase;
+
+ impl_->r.assign (*s, f);
+ }
+ }
+- catch (tr1::regex_error const& e)
++ catch (std::regex_error const& e)
+ {
+ throw basic_format<wchar_t> (s == 0 ? L"" : *s, e.what ());
+ }
+@@ -166,28 +166,28 @@
+ bool basic_regex<char>::
+ match (string_type const& s) const
+ {
+- return tr1::regex_match (s, impl_->r);
++ return std::regex_match (s, impl_->r);
+ }
+
+ template <>
+ bool basic_regex<wchar_t>::
+ match (string_type const& s) const
+ {
+- return tr1::regex_match (s, impl_->r);
++ return std::regex_match (s, impl_->r);
+ }
+
+ template <>
+ bool basic_regex<char>::
+ search (string_type const& s) const
+ {
+- return tr1::regex_search (s, impl_->r);
++ return std::regex_search (s, impl_->r);
+ }
+
+ template <>
+ bool basic_regex<wchar_t>::
+ search (string_type const& s) const
+ {
+- return tr1::regex_search (s, impl_->r);
++ return std::regex_search (s, impl_->r);
+ }
+
+ template <>
+@@ -196,13 +196,13 @@
+ string_type const& sub,
+ bool first_only) const
+ {
+- tr1::regex_constants::match_flag_type f (
+- tr1::regex_constants::format_default);
++ std::regex_constants::match_flag_type f (
++ std::regex_constants::format_default);
+
+ if (first_only)
+- f |= tr1::regex_constants::format_first_only;
++ f |= std::regex_constants::format_first_only;
+
+- return tr1::regex_replace (s, impl_->r, sub, f);
++ return std::regex_replace (s, impl_->r, sub, f);
+ }
+
+ template <>
+@@ -211,13 +211,13 @@
+ string_type const& sub,
+ bool first_only) const
+ {
+- tr1::regex_constants::match_flag_type f (
+- tr1::regex_constants::format_default);
++ std::regex_constants::match_flag_type f (
++ std::regex_constants::format_default);
+
+ if (first_only)
+- f |= tr1::regex_constants::format_first_only;
++ f |= std::regex_constants::format_first_only;
+
+- return tr1::regex_replace (s, impl_->r, sub, f);
++ return std::regex_replace (s, impl_->r, sub, f);
+ }
+ }
+ }
+--- a/m4/libboost.m4
++++ b/m4/libboost.m4
+@@ -129,13 +129,13 @@
+ AC_DEFUN([LIBBOOST_REGEX], [
+ LIBBOOST_LIB([regex],[
+ AC_LANG_SOURCE([
+-#include <boost/tr1/regex.hpp>
++#include <regex>
+
+ int
+ main ()
+ {
+- std::tr1::regex r ("te.t", std::tr1::regex_constants::ECMAScript);
+- return std::tr1::regex_match ("test", r) ? 0 : 1;
++ std::regex r ("te.t", std::regex_constants::ECMAScript);
++ return std::regex_match ("test", r) ? 0 : 1;
+ }
+ ])],
+ [$1],
diff --git a/dev-cpp/libcutl/files/libcutl-1.10.0-fix-c++14.patch b/dev-cpp/libcutl/files/libcutl-1.10.0-fix-c++14.patch
new file mode 100644
index 000000000000..a6f1a505485b
--- /dev/null
+++ b/dev-cpp/libcutl/files/libcutl-1.10.0-fix-c++14.patch
@@ -0,0 +1,53 @@
+Make dtors noexcept(false) when compiling in C++11 and above. This avoids silent
+breakage due to the semantic exception changes between C++98 and C++11.
+
+--- a/cutl/fs/auto-remove.cxx
++++ b/cutl/fs/auto-remove.cxx
+@@ -13,6 +13,9 @@
+ {
+ auto_remove::
+ ~auto_remove ()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
+ {
+ if (!canceled_)
+ {
+@@ -23,6 +26,9 @@
+
+ auto_removes::
+ ~auto_removes ()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
+ {
+ if (!canceled_)
+ {
+--- a/cutl/fs/auto-remove.hxx
++++ b/cutl/fs/auto-remove.hxx
+@@ -26,7 +26,11 @@
+ {
+ }
+
+- ~auto_remove ();
++ ~auto_remove ()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
++ ;
+
+ void
+ cancel ()
+@@ -51,7 +55,11 @@
+ struct LIBCUTL_EXPORT auto_removes
+ {
+ auto_removes (): canceled_ (false) {}
+- ~auto_removes ();
++ ~auto_removes ()
++#if __cplusplus >= 201103L
++ noexcept(false)
++#endif
++ ;
+
+ void
+ add (path const& p)
diff --git a/dev-cpp/libcutl/libcutl-1.10.0.ebuild b/dev-cpp/libcutl/libcutl-1.10.0.ebuild
new file mode 100644
index 000000000000..652471ccb886
--- /dev/null
+++ b/dev-cpp/libcutl/libcutl-1.10.0.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools flag-o-matic versionator
+
+DESCRIPTION="A collection of C++ libraries (successor of libcult)"
+HOMEPAGE="http://www.codesynthesis.com/projects/libcutl/"
+SRC_URI="http://www.codesynthesis.com/download/${PN}/$(get_version_component_range 1-2)/${P}.tar.bz2"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+RDEPEND="
+ dev-libs/expat
+ dev-libs/boost:="
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.10.0-fix-c++14.patch
+ "${FILESDIR}"/${PN}-1.10.0-boost-1.65-tr1.patch
+)
+
+src_prepare() {
+ default
+
+ # remove bundled libs
+ rm -r cutl/details/{boost,expat} || die
+
+ eautoreconf
+}
+
+src_configure() {
+ # ensure <regex> works on GCC 5 and below
+ # bug 630016
+ append-cxxflags -std=c++14
+
+ econf \
+ --disable-static \
+ --with-external-boost \
+ --with-external-expat
+}
+
+src_install() {
+ default
+
+ # package provides .pc files
+ find "${D}" -name '*.la' -delete || die
+}
diff --git a/dev-cpp/libcutl/metadata.xml b/dev-cpp/libcutl/metadata.xml
new file mode 100644
index 000000000000..d4905c84fc34
--- /dev/null
+++ b/dev-cpp/libcutl/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/libglademm/Manifest b/dev-cpp/libglademm/Manifest
new file mode 100644
index 000000000000..1c512b420d84
--- /dev/null
+++ b/dev-cpp/libglademm/Manifest
@@ -0,0 +1,5 @@
+DIST libglademm-2.6.7.tar.bz2 326385 SHA256 38543c15acf727434341cc08c2b003d24f36abc22380937707fc2c5c687a2bc3 SHA512 d7042d0549df9322d3202d5c0733d65b153a8ff451bb9e401b9d93a915ec4c2c086428e4febcbae2ecec5936955b7afbc59beff93d492f23b7b8e2b19fe806b0 WHIRLPOOL a25ae3601df4ba201f1b5aeeca9f5527cd804d9481ef7795f651096419833d8a3cbab53d731ac2464ed20b85110d3003011a7fb2ea87e227ad75d301f5317df9
+EBUILD libglademm-2.6.7-r2.ebuild 1672 SHA256 ece1bab6eb4153b1dcabfef0d031870bcd2067a9d60447e8df7a08fcb8b2f5fc SHA512 db4fd6dac1f28ca63f87d71db3773aee36cbf047bb59a2ca0af4ea5cbaa13c767c603fc286d60be3c3e1a7621d5924600ab1dfd9bf574da9aa605e3de258b87d WHIRLPOOL 22b4109b7671bd9374c8dcd55996ca522d2969f13e098599864549f72b6c8d53a9642a707a702f7ff02ba72c98758f597672096a6581b91eb93f7888a6676e6e
+MISC ChangeLog 3859 SHA256 fc3b2f44ea05f1bdaea1913ed2db0883b8436a5deeab041996aa7ead27e86b78 SHA512 b704a1878d1bc290a11320583f9103453e43b1e9441be6726c2b300fa58efc26a45bbfe518019e2cdd0ec2a026dd2b3863cb647b21d8604d903be8aa895608cd WHIRLPOOL f626d6da76bab1737c27a9a2a7b3f73ec2f8bd9daa3b5d3f45a5b760953b15b293f116f7df54fa2582ddf9ae791c3286e3c0c1c1332c7140efe80fbd2b805f48
+MISC ChangeLog-2015 13402 SHA256 d9e292c23a48671b4db2a4038ebf0a2b464cdda666d66ca2748402ea9117f37b SHA512 ea67b766094049ce93d58a43b2909aa7d764b2702f74d79e2af6c55b50e30b012804955c294bafde6636a157a5df1a693e69d5b0e7c1fe895edf3b0114c431c6 WHIRLPOOL da0e12e2694ccd515f412b355ccd5ea53f9633f520c25d6458d23c6088679d28a3e13a2182e846f17833d580fef8bed55f969cb3503059a601c2171361a6f0ec
+MISC metadata.xml 249 SHA256 4505b0bfeadff287958620b7dc7b7209699065a8f17139a237a5dd409a726a97 SHA512 c40662134899a5c9f0369a1017806f35adf3280a0b3c91726f7a8ca6012a073a8b471583f5bfb6fe95faac1dcf607e8e2e43f8c91d48ec46f4a8824e2f551506 WHIRLPOOL 333a938ee1d2124595596c572697bf5ebad523a92ba12005cfb12e6bb6270881a94a911f0cc9c1cf2bb571559e8271e07dfd307dabe50058236dbe7103562b92
diff --git a/dev-cpp/libglademm/libglademm-2.6.7-r2.ebuild b/dev-cpp/libglademm/libglademm-2.6.7-r2.ebuild
new file mode 100644
index 000000000000..5abc5d7e1edf
--- /dev/null
+++ b/dev-cpp/libglademm/libglademm-2.6.7-r2.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+GCONF_DEBUG="no"
+GNOME_TARBALL_SUFFIX="bz2"
+
+inherit flag-o-matic gnome2 multilib-minimal
+
+DESCRIPTION="C++ bindings for libglade"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1+"
+SLOT="2.4"
+KEYWORDS="alpha amd64 arm hppa ia64 ppc ppc64 ~sh sparc x86 ~x86-fbsd"
+IUSE="doc examples"
+
+RDEPEND="
+ >=gnome-base/libglade-2.6.4-r1:2.0[${MULTILIB_USEDEP}]
+ >=dev-cpp/gtkmm-2.24.3:2.4[${MULTILIB_USEDEP}]
+ >=dev-cpp/glibmm-2.34.1:2[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ # we will control install manually in install
+ sed -i 's/^\(SUBDIRS =.*\)docs\(.*\)$/\1\2/' Makefile.am Makefile.in || \
+ die "sed Makefile.{am,in} failed (1)"
+
+ # don't waste time building the examples
+ sed -i 's/^\(SUBDIRS =.*\)examples\(.*\)$/\1\2/' \
+ Makefile.am Makefile.in || die "sed Makefile.{am,in} failed (2)"
+
+ append-cxxflags -std=c++11 #566584
+
+ gnome2_src_prepare
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" gnome2_src_configure
+}
+
+multilib_src_compile() {
+ gnome2_src_compile
+
+ if multilib_is_native_abi && use doc; then
+ emake -C "docs/reference" all || die "emake doc failed"
+ fi
+}
+
+multilib_src_install() {
+ gnome2_src_install
+
+ if use examples; then
+ emake -C "examples" distclean || die "examples clean up failed"
+ fi
+}
+
+multilib_src_install_all() {
+ einstalldocs
+
+ if use doc ; then
+ dohtml -r docs/reference/html/*
+ fi
+
+ if use examples; then
+ find "${S}/examples" -name "Makefile*" -delete \
+ || die "examples cleanup failed"
+ insinto "/usr/share/doc/${PF}"
+ doins -r examples || die "doins failed"
+ fi
+}
diff --git a/dev-cpp/libglademm/metadata.xml b/dev-cpp/libglademm/metadata.xml
new file mode 100644
index 000000000000..39980802b1da
--- /dev/null
+++ b/dev-cpp/libglademm/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/libgnomecanvasmm/Manifest b/dev-cpp/libgnomecanvasmm/Manifest
new file mode 100644
index 000000000000..7f36ddf7163b
--- /dev/null
+++ b/dev-cpp/libgnomecanvasmm/Manifest
@@ -0,0 +1,5 @@
+DIST libgnomecanvasmm-2.26.0.tar.bz2 327215 SHA256 996577f97f459a574919e15ba7fee6af8cda38a87a98289e9a4f54752d83e918 SHA512 23795c856674b79f82d2e5cffdfdbf67a387fe6a21081fef1d96d0f614a121710c7f1e175612a286f5946a60cea4e8506aef7833a7bdf73084d6266c09aad66b WHIRLPOOL fa038d43633e5e56a3fcd7e8b737a4d0c57a5932735859d350c4c8cbffba89cd73149638d498531bbee044131bbd39c271ee4422d169ab1eb159886b13ea2367
+EBUILD libgnomecanvasmm-2.26.0-r1.ebuild 1075 SHA256 698a2962259ee40221283c143fe3ca6677ab06636c0585d45bb910af164afe84 SHA512 313e3595ab38acbd184a1c9ec61bcb31bc421074c49a3ac75549becc4db7d4ea12909b907bd3c01904d6bfa87b12b5682bf24353bf841f197af29ccaada4febd WHIRLPOOL e1c25813162ee2f033825e1fcc4a0eeb0358c36edc849986860797b2101be643d475fe4441a6ab88e04a79b2fad32cd972890e958d94fac93f6e58891e849731
+MISC ChangeLog 2634 SHA256 23d960f1a3af2932d036760f38e727dc810974f512d6a7add6dcf2edbee4bd53 SHA512 5e24e17feb16f412d82ee5f2f6c90dbb91dad7fbaf62eaadedda8579fa722a58f59bf4731c5397413a4ba58ee05b710cb4bc743f9c4484a0b7f253e60b90b81d WHIRLPOOL 9c33d988c5e8d10d32c402a6892ce012c5aca007c75e658a01679a557769bb78b17c0a1e3812a28718f91d95db2510c4e88df8dbbc18cf07335b968de1eea02b
+MISC ChangeLog-2015 12193 SHA256 03515a6ceec8dcc15a0dd70ac31a0fd32a79abdf8f9a0636714085748263aa34 SHA512 30ecadee87b050444c2783836c7b9b71e6a9dcf16cdbaa43d09ed3a5c77f2a0ec22f89740e7c50e4692f0968b6f3b411853b003816bcc2372442a60b5e9f9e00 WHIRLPOOL 8c84b4b1f8257bd978ec35b840ea36bc9f3483a12c6c547bdf50e9e88572aab71c0a18a4ce197ea76ef2386b503ebe3f266531f0038754eb4763f238736a827b
+MISC metadata.xml 249 SHA256 4505b0bfeadff287958620b7dc7b7209699065a8f17139a237a5dd409a726a97 SHA512 c40662134899a5c9f0369a1017806f35adf3280a0b3c91726f7a8ca6012a073a8b471583f5bfb6fe95faac1dcf607e8e2e43f8c91d48ec46f4a8824e2f551506 WHIRLPOOL 333a938ee1d2124595596c572697bf5ebad523a92ba12005cfb12e6bb6270881a94a911f0cc9c1cf2bb571559e8271e07dfd307dabe50058236dbe7103562b92
diff --git a/dev-cpp/libgnomecanvasmm/libgnomecanvasmm-2.26.0-r1.ebuild b/dev-cpp/libgnomecanvasmm/libgnomecanvasmm-2.26.0-r1.ebuild
new file mode 100644
index 000000000000..bfd924e73323
--- /dev/null
+++ b/dev-cpp/libgnomecanvasmm/libgnomecanvasmm-2.26.0-r1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+GCONF_DEBUG="no"
+GNOME_TARBALL_SUFFIX="bz2"
+
+inherit flag-o-matic gnome2
+
+DESCRIPTION="C++ bindings for libgnomecanvas"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1"
+SLOT="2.6"
+KEYWORDS="alpha amd64 arm ia64 ppc ppc64 ~sh sparc x86 ~x86-fbsd"
+IUSE="doc examples"
+
+RDEPEND="
+ >=gnome-base/libgnomecanvas-2.6
+ >=dev-cpp/gtkmm-2.4:2.4
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ doc? ( app-doc/doxygen )
+"
+
+src_prepare() {
+ if ! use examples; then
+ # don't waste time building the examples
+ sed -i 's/^\(SUBDIRS =.*\)examples\(.*\)$/\1\2/' Makefile.in || \
+ die "sed Makefile.in failed"
+ fi
+ gnome2_src_prepare
+ append-cxxflags -std=c++11 #568300
+}
+
+src_compile() {
+ gnome2_src_compile
+
+ if use doc; then
+ cd "${S}/docs/reference"
+ emake all || die "failed to build API docs"
+ fi
+}
+
+src_install() {
+ gnome2_src_install
+
+ if use doc ; then
+ dohtml -r docs/reference/html/*
+ fi
+
+ if use examples; then
+ cp -R examples "${D}/usr/share/doc/${PF}"
+ fi
+}
diff --git a/dev-cpp/libgnomecanvasmm/metadata.xml b/dev-cpp/libgnomecanvasmm/metadata.xml
new file mode 100644
index 000000000000..39980802b1da
--- /dev/null
+++ b/dev-cpp/libgnomecanvasmm/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/libgnomemm/Manifest b/dev-cpp/libgnomemm/Manifest
new file mode 100644
index 000000000000..264fcc8e4bce
--- /dev/null
+++ b/dev-cpp/libgnomemm/Manifest
@@ -0,0 +1,5 @@
+DIST libgnomemm-2.30.0.tar.bz2 364011 SHA256 2a01f068ff73a1985d050e75f899fec34ac13622e2ead43523a4e2b0875042cf SHA512 9d4cf332ad511600504e95a64decb3dcecc14943ebb7d928c2b1fff82b2d99727754fd0252802c700092e8efad0e14ab9aacaf9af63c6bb1f9e25334f667317f WHIRLPOOL 9a8efdd58b4455a884a5073d22748e53fe0177e8636dc4793aa268b9aa47740f5918bd50d3749d044fde99b1ad0345fa83fcf83a26e518be7174dbfa6b0fefda
+EBUILD libgnomemm-2.30.0-r1.ebuild 543 SHA256 e9f955cbe724eedd261d60ee80edf035d42b8f95a1100f98a6e975e7c51e323c SHA512 5bf46bc5d5d6c027a229e42f2ead1a8a851d870f1ff468a7bf1bf0f51a2f464c10c46a8b0b08cba6376b17da9b4a5e3b0e951891322081498870b6702c1251f3 WHIRLPOOL d2d6bd2d258fd7a4bf2cff4604acb504d9e7b60a5f0c7f85d3c65fd38a41cb766df0c27cdb2f33684866f39d4b11b375726b0d17418b89468539248ce52937be
+MISC ChangeLog 3672 SHA256 db2e7892720301c9b5c81aa53830d9d3e204ccd64b6ff2663c34d65da5d594a0 SHA512 bfe288c2a21007dd69757615239eba35fd8fbd98c443b016da83d9a855ecccc02b749fb5b6ad4fc4b2f499e076e114c85c9624ef1274e182273b8ec62b7cd043 WHIRLPOOL c667efd59834d95ec0f49e80a35727cdca6bd84d4e02b14fa8bf3bbaecc36343b96845371add92d0903d68b6b5c76eb92e0648d0122c2425925ff6c5e30a9803
+MISC ChangeLog-2015 12574 SHA256 12285ab3762e903d2d61ad98d88c47039a08364c4ff093ce49e97ee52e412c9b SHA512 68049464c463feb6cc9603ff77769929b86c015e5d98565a28ee137190075632e38461b9e7ce8505d48a6f6eea8677224d06b85c5b792ca7c1ecd6539192ecdf WHIRLPOOL da0a95f75a75836f95b532365068c7e7c394d5b9cf131148dc98853745fd9257310d981f26675a7047dc76e0ae3f19fb8734d8abff0d1f95d31be641fb3b3892
+MISC metadata.xml 249 SHA256 4505b0bfeadff287958620b7dc7b7209699065a8f17139a237a5dd409a726a97 SHA512 c40662134899a5c9f0369a1017806f35adf3280a0b3c91726f7a8ca6012a073a8b471583f5bfb6fe95faac1dcf607e8e2e43f8c91d48ec46f4a8824e2f551506 WHIRLPOOL 333a938ee1d2124595596c572697bf5ebad523a92ba12005cfb12e6bb6270881a94a911f0cc9c1cf2bb571559e8271e07dfd307dabe50058236dbe7103562b92
diff --git a/dev-cpp/libgnomemm/libgnomemm-2.30.0-r1.ebuild b/dev-cpp/libgnomemm/libgnomemm-2.30.0-r1.ebuild
new file mode 100644
index 000000000000..da9ded9d53fa
--- /dev/null
+++ b/dev-cpp/libgnomemm/libgnomemm-2.30.0-r1.ebuild
@@ -0,0 +1,29 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+GNOME2_LA_PUNT="yes"
+GNOME_TARBALL_SUFFIX="bz2"
+
+inherit flag-o-matic gnome2
+
+DESCRIPTION="C++ bindings for libgnome"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1"
+SLOT="2.6"
+KEYWORDS="alpha amd64 arm ia64 ppc ppc64 ~sh sparc x86 ~x86-fbsd"
+IUSE=""
+
+RDEPEND="
+ >=dev-cpp/gtkmm-2.8:2.4
+ >=gnome-base/libgnome-2.6
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+"
+
+src_prepare() {
+ append-cxxflags -std=c++11
+ gnome2_src_prepare
+}
diff --git a/dev-cpp/libgnomemm/metadata.xml b/dev-cpp/libgnomemm/metadata.xml
new file mode 100644
index 000000000000..39980802b1da
--- /dev/null
+++ b/dev-cpp/libgnomemm/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/libjson-rpc-cpp/Manifest b/dev-cpp/libjson-rpc-cpp/Manifest
new file mode 100644
index 000000000000..f271efcfb07c
--- /dev/null
+++ b/dev-cpp/libjson-rpc-cpp/Manifest
@@ -0,0 +1,6 @@
+DIST libjson-rpc-cpp-0.7.0.tar.gz 141665 SHA256 669c2259909f11a8c196923a910f9a16a8225ecc14e6c30e2bcb712bab9097eb SHA512 f7547271040382cd2ac96a31eb81d891b016e4d0c33a3ba3e659c2de2e55136e7e243dd2d959c6d8a64ccba7ebd9f9e28070d710a6770c29f81c0750ffad9e3a WHIRLPOOL b54121c95f47654a36623c4267a22f4d563bc6f863b2df205b1ea4142a8230e64e5fc0725f8e8cef7d79abdfdad5de118464993b6b503ff2cec9f4e077014201
+EBUILD libjson-rpc-cpp-0.7.0.ebuild 1260 SHA256 2560be6e445854cbfc37594381859229c27fac1e114a7b85394f0276d3222a0d SHA512 f25455c4dff23e450c32e1cec0f6d31a8eb132167a2b5a68ae5947731aaeaaa04f1ddc5a02fa03101e489a6665971583bab15e86e264ba0dbb1aea38da362e37 WHIRLPOOL e1d1f2c165fce427beb25f7bd84ee73c3a7665802e28d436ed1d7859dc11fab20681ed8d0aa8e85d8fac9d256ae9d614c9c9459d028fe3e2be5712970d78bf96
+EBUILD libjson-rpc-cpp-9999.ebuild 1440 SHA256 8879468e7573a75f7178ae1f97fb3253dfa5cb2353191ff7d9a3062ae64520b9 SHA512 64fab7b67c3758981d3a7fcd65087dc4c7eecb351c6ff11edbe03ebcef7c6e1c819a0a34573fa3c0ee5fa01f9d3be143c72b917d08abf1d0a4f60b10f5c465c1 WHIRLPOOL bc21c0715ee014c7f965252dc8844ccef32f232f4630751d16413565c47e70586dea296acf96467d7c923852561946c3c76d77727cf538934d5a22c93d163f9f
+MISC ChangeLog 3297 SHA256 81775294e95fb821596076889ab30aa11904a83165b2dd10093747c45a531439 SHA512 44c9c2f1ec2b2d97d963b1267e810b937da7f798a21da1f5a1a48602c1f71a5723b8dc040a328c1d4dc222f4b9910a383de5abd27d7b61ac22b189640ff404b4 WHIRLPOOL 2d85a09d415213d7cce6b17686c7d4727b5b19699c038defce433e311525479db02bd8dc8fb814d47484f6525c1d26fa624b648fa39e4651e818179d0452e3b3
+MISC ChangeLog-2015 878 SHA256 e48c9cba9d529a5d02c5966246fd7dbcb05cc13e8d10811bb0284a9ac9cb1ae9 SHA512 a09f3db1b68f542635a0cc7bcc504def8f95e7b6107f6c8af9ec8d31f210a3721f50016904c65fa7f3c2dc12ad192495f777d6da54f44a70b4fbc01819c76b61 WHIRLPOOL d9afd55c7a6dbe130f99d3f51f3ef073f037dea2d50d00b217c3d6688076b139f25f64a92546c90ff4b53e4f35507a36194a57009bd4fafd3592eb480351e0ce
+MISC metadata.xml 906 SHA256 90b48048844a5bcc2cf7423d6d42f2ee7bdac79e9a5ca3a917d6d8649b58a848 SHA512 037b5942cdde13abab5f527cdb8fced709b88bbebb754497279b1d60e7c90789115ecc2f579c38111c2acf32a3baf2643b470e55deb9de36bc498e9665091a83 WHIRLPOOL d8d0adbd49a5124d55136fd31742a33c9c0e6893370e35876152e4785779daed3287a39bf9a602f5d35006451a34f6cb90f5f90ea388c6c60535068f24f38dc8
diff --git a/dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-0.7.0.ebuild b/dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-0.7.0.ebuild
new file mode 100644
index 000000000000..26d68e2e5f1b
--- /dev/null
+++ b/dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-0.7.0.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils
+
+DESCRIPTION="JSON-RPC (1.0 & 2.0) framework for C++"
+HOMEPAGE="https://github.com/cinemast/libjson-rpc-cpp"
+SRC_URI="https://github.com/cinemast/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc +http-client +http-server +stubgen test"
+
+RDEPEND="
+ dev-libs/jsoncpp:=
+ http-client? ( net-misc/curl:= )
+ http-server? ( net-libs/libmicrohttpd:= )
+ stubgen? ( dev-libs/argtable:= )"
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen )
+ test? ( dev-cpp/catch )"
+
+RESTRICT="!test? ( test )"
+
+src_configure() {
+ local mycmakeargs=(
+ -DHTTP_CLIENT=$(usex http-client)
+ -DHTTP_SERVER=$(usex http-server)
+ # they are not installed
+ -DCOMPILE_EXAMPLES=OFF
+ -DCOMPILE_STUBGEN=$(usex stubgen)
+ -DCOMPILE_TESTS=$(usex test)
+ -DCATCH_INCLUDE_DIR="${EPREFIX}/usr/include/catch"
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+
+ use doc && emake -C "${BUILD_DIR}" doc
+}
+
+src_test() {
+ # Tests fail randomly when run in parallel
+ local MAKEOPTS=-j1
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ use doc && dodoc -r "${BUILD_DIR}"/doc/html
+}
diff --git a/dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-9999.ebuild b/dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-9999.ebuild
new file mode 100644
index 000000000000..7c78e3d2afc4
--- /dev/null
+++ b/dev-cpp/libjson-rpc-cpp/libjson-rpc-cpp-9999.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+EGIT_REPO_URI="https://github.com/cinemast/${PN}.git"
+EGIT_BRANCH=develop
+inherit cmake-utils git-r3
+
+DESCRIPTION="JSON-RPC (1.0 & 2.0) framework for C++"
+HOMEPAGE="https://github.com/cinemast/libjson-rpc-cpp"
+SRC_URI=""
+
+LICENSE="MIT"
+SLOT="0/1"
+KEYWORDS=""
+IUSE="doc +http-client +http-server redis-client redis-server +stubgen test"
+
+RDEPEND="
+ dev-libs/jsoncpp:=
+ http-client? ( net-misc/curl:= )
+ http-server? ( net-libs/libmicrohttpd:= )
+ redis-client? ( dev-libs/hiredis:= )
+ redis-server? ( dev-libs/hiredis:= )
+ stubgen? ( dev-libs/argtable:= )"
+DEPEND="${RDEPEND}
+ doc? ( app-doc/doxygen )
+ test? ( dev-cpp/catch )"
+
+RESTRICT="!test? ( test )"
+
+src_configure() {
+ local mycmakeargs=(
+ -DHTTP_CLIENT=$(usex http-client)
+ -DHTTP_SERVER=$(usex http-server)
+ -DREDIS_CLIENT=$(usex redis-client)
+ -DREDIS_SERVER=$(usex redis-server)
+ # they are not installed
+ -DCOMPILE_EXAMPLES=OFF
+ -DCOMPILE_STUBGEN=$(usex stubgen)
+ -DCOMPILE_TESTS=$(usex test)
+ -DCATCH_INCLUDE_DIR="${EPREFIX}/usr/include/catch"
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+
+ use doc && emake -C "${BUILD_DIR}" doc
+}
+
+src_test() {
+ # Tests fail randomly when run in parallel
+ local MAKEOPTS=-j1
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ use doc && dodoc -r "${BUILD_DIR}"/doc/html
+}
diff --git a/dev-cpp/libjson-rpc-cpp/metadata.xml b/dev-cpp/libjson-rpc-cpp/metadata.xml
new file mode 100644
index 000000000000..b7a3bb5af8af
--- /dev/null
+++ b/dev-cpp/libjson-rpc-cpp/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>mgorny@gentoo.org</email>
+ <name>Michał Górny</name>
+ </maintainer>
+ <use>
+ <flag name="http-client">Build support for HTTP client using <pkg>net-misc/curl</pkg></flag>
+ <flag name="http-server">Build support for HTTP server using <pkg>net-libs/libmicrohttpd</pkg></flag>
+ <flag name="redis-client">Build support for Redis client using <pkg>dev-libs/hiredis</pkg></flag>
+ <flag name="redis-server">Build support for Redis server using <pkg>dev-libs/hiredis</pkg></flag>
+ <flag name="stubgen">Build header stub code generator (needed for development and when pregenerated headers are not bundled)</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">cinemast/libjson-rpc-cpp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/libmcpp/Manifest b/dev-cpp/libmcpp/Manifest
new file mode 100644
index 000000000000..c9a5076bf01c
--- /dev/null
+++ b/dev-cpp/libmcpp/Manifest
@@ -0,0 +1,6 @@
+AUX libmcpp-2.7.2-fix-build-system.patch 1008 SHA256 c0542fb2a7904f7936d7b9bdebc34091313afba0d7e9105d0c94ca71d071c28b SHA512 25e2e9cd8d18080947a84c0d76f0b34d74b289ccc7c6172278908c026dd6f7379ebb268aae79c3e8ab458f3883aa212e54a137cbaab336c1277acdad07a13a01 WHIRLPOOL 768e88fd24dbd0d25ffb52605d811f9a6f9ae8bef89b319f784c942fe062438c3f24d1b0b8d31170aecff8d2b48177aeb69be9608365abcabd53a46eecbe0b5e
+DIST mcpp-2.7.2.tar.gz 1533457 SHA256 3b9b4421888519876c4fc68ade324a3bbd81ceeb7092ecdbbc2055099fcb8864 SHA512 1ca885cb13fdb684de9d0595a9215b52f48a93a69077d82cdcacafe40d9a61fb77b00a3ff2b8890e7bc0a0fcc0c8d70d4093c00c280351cd4459aba67c573235 WHIRLPOOL 6e0985344a731c16419f6ec3812a0075a117856344a66a2009ad1b4c5869db8b74ddabfa5b72cc0f622ad27a1a91c4b02a329c48441fea139b428265c23fa2b6
+EBUILD libmcpp-2.7.2-r2.ebuild 716 SHA256 815aca200ed7bc3d8956c8207abe097dfb4ba943c38ddbf494d4fdef62fc83ac SHA512 a4b00d7c475c7c1deb37576fd2c0e137635df1c9c8caf31c6dc3b0579d2b73b9e1794472a3f82d24636c901ff434b9a2d8a160057293cf0ad7165cdbdf227846 WHIRLPOOL 09bf3ac08c6c6507e38099004831db1e6855f21ab9e8688027d4313a74d128cb868186cda82258eef084af439469a32f3d53ff53adcf9fd2168088e7359abb6f
+MISC ChangeLog 2432 SHA256 6243848f577c8ef06ae73be9eb775d71407898bf1ba4a1874b23bdff01ce0d39 SHA512 771f0bf1ec201b29709e34ffb3879310c7b6f148711575dacafede494ce05dbe13321d7c3032e2843df6159203be633413517fb8935c6f5ca0055f7cb8ca5035 WHIRLPOOL 700a6797e9617a12860eed7abd2764861dcbb1b040a975576fb0ec2133df1823b1c000d0b561d203734916dbab0590158c0af58ad702d134f63bd336deaa33b4
+MISC ChangeLog-2015 2301 SHA256 bd577d8c2267ef33a010504b3d6ec514bc7bb26f8004bf8aebb2607b4299b8d1 SHA512 7df48e7c04e75077a9514da6fa69e710819a9c24946edec766b9c63f708505c2c4db3fe314e871aac998d109b443d19df57b0481bcb8fa379b39cbb782837a67 WHIRLPOOL 0f362d36a871b0465080404f75f90ac149ed153b76fe96a83ea0034db41271e9dd6691e565a929c01730d0a3dfaccc4bac44e70fcd850360732ff02adadfcd53
+MISC metadata.xml 323 SHA256 2a5c3905052a0061700a5519218f0711771d20571a37ca2ca5d4558394c8c3c3 SHA512 0d074121ac7cbf36bab09b3f76d81df9aa19cd2399418d3b30d9e4cb9107a3f339e8b4c478694a8c8ef560d23fe9be1b4bcfc8c347d83cb51cf45fbd6849224e WHIRLPOOL 362f754ceb70c445f2949b48b295b65f0d074e4b9bf3ab1613914511c7da8273df3e36559d4bed2f08e8f5d36789db0ed70cd7d945331ef36443a32fdb09986c
diff --git a/dev-cpp/libmcpp/files/libmcpp-2.7.2-fix-build-system.patch b/dev-cpp/libmcpp/files/libmcpp-2.7.2-fix-build-system.patch
new file mode 100644
index 000000000000..95cefadd3fe8
--- /dev/null
+++ b/dev-cpp/libmcpp/files/libmcpp-2.7.2-fix-build-system.patch
@@ -0,0 +1,30 @@
+Specify and install files using idiomatic Automake
+conventions instead of manually installing with cp.
+
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -23,16 +23,12 @@
+ $(top_srcdir)/test-c $(top_srcdir)/test-l $(top_srcdir)/tool \
+ $(top_srcdir)/doc $(top_srcdir)/doc-jp
+
+-if ! REPLACE_CPP
+-install-exec-hook:
+- $(top_srcdir)/config/install-sh -d "$(DESTDIR)$(prefix)/share/doc/mcpp"
+- cp -pf $(top_srcdir)/LICENSE $(top_srcdir)/README $(top_srcdir)/NEWS \
+- $(DESTDIR)$(prefix)/share/doc/mcpp
+- cp -pf $(top_srcdir)/doc/mcpp-manual.html \
+- $(DESTDIR)$(prefix)/share/doc/mcpp
+- cp -pf $(top_srcdir)/doc-jp/mcpp-manual.html \
+- $(DESTDIR)$(prefix)/share/doc/mcpp/mcpp-manual-jp.html
+-uninstall-hook:
+- rm -rf $(DESTDIR)$(prefix)/share/doc/mcpp
+-endif
++dist_doc_DATA = README NEWS doc/mcpp-summary.pdf
+
++dist_html_DATA = \
++ doc/cpp-test.html \
++ doc/mcpp-manual.html \
++ doc/mcpp-porting.html
++
++htmljadir = $(htmldir)/doc-jp
++dist_htmlja_DATA = doc-jp/mcpp-manual.html
diff --git a/dev-cpp/libmcpp/libmcpp-2.7.2-r2.ebuild b/dev-cpp/libmcpp/libmcpp-2.7.2-r2.ebuild
new file mode 100644
index 000000000000..0f8a8f23a825
--- /dev/null
+++ b/dev-cpp/libmcpp/libmcpp-2.7.2-r2.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools
+
+MY_P=${P/lib/}
+
+DESCRIPTION="A portable C++ preprocessor"
+HOMEPAGE="http://mcpp.sourceforge.net"
+SRC_URI="mirror://sourceforge/mcpp/${MY_P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~ia64 x86 ~x86-linux ~x64-macos"
+IUSE="static-libs"
+
+DEPEND=""
+RDEPEND=""
+
+S=${WORKDIR}/${MY_P}
+
+PATCHES=( "${FILESDIR}"/${PN}-2.7.2-fix-build-system.patch )
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ econf \
+ --enable-mcpplib \
+ $(use_enable static-libs static)
+}
+
+src_install() {
+ default
+
+ if ! use static-libs; then
+ find "${D}" -name '*.la' -delete || die
+ fi
+}
diff --git a/dev-cpp/libmcpp/metadata.xml b/dev-cpp/libmcpp/metadata.xml
new file mode 100644
index 000000000000..bf687a443a18
--- /dev/null
+++ b/dev-cpp/libmcpp/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">mcpp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/libxmlpp/Manifest b/dev-cpp/libxmlpp/Manifest
new file mode 100644
index 000000000000..e41f2891131d
--- /dev/null
+++ b/dev-cpp/libxmlpp/Manifest
@@ -0,0 +1,7 @@
+DIST libxml++-2.40.1.tar.xz 955220 SHA256 4ad4abdd3258874f61c2e2a41d08e9930677976d303653cd1670d3e9f35463e9 SHA512 a4ec2e8182d981c57bdcb8f0a203a3161f8c735ceb59fd212408b7a539d1dc826adf6717bed8f4d544ab08afd9c2fc861efe518e24bbd3a1c4b158e2ca48183a WHIRLPOOL f1888bc6f90dd10dea04f617f317a2eed79f2c4981e03b1fbdb3cefcc4bfeadc256c5dd6163d82b7b33cb29d8d15de98de822d2d40f3fa8e8851efe827cdff72
+DIST libxml++-3.0.1.tar.xz 948796 SHA256 19dc8d21751806c015179bc0b83f978e65c878724501bfc0b6c1bcead29971a6 SHA512 9b8ccea9df11d70bb23d7d9983b18d28c648aa0107f9654a79d1cfe97db4633b69dd4b97b76d155aca8553d014a314247851f18d0371717e44a056ee804ccd95 WHIRLPOOL 289641871fecd74f46f76d731b839796130b52d16c3ad16930be850987c84e9d152e3d5d99674d2053cbab19e17a0006b93c42213e32119b29bd7a95df0349eb
+EBUILD libxmlpp-2.40.1.ebuild 805 SHA256 100561cc5de0035c29d6425efbe4940b07d90ef3561f653d4a2d60197af83e33 SHA512 4356d8da10409b09459b6e3c4c14d0d2c7b6f189ac51ecf9c2859bbbc75d5a8c14d36c16ce9b6c984ceafb968c0006068f9ab6b3402bc55eae95c8022d04cad2 WHIRLPOOL d3843b6b3bd0e53fcb0376ac2b427ef8af2be0ae9b59496a7780e5bd6dd97ee0dbf1eb75fa0d08ef0d63270bb71494dbbe8b8a482b7de2c46d569146ffaf9b70
+EBUILD libxmlpp-3.0.1.ebuild 799 SHA256 27075c3873aa0bb2d1fb34ca44db03a60548af24ffecd22060fc4ce0e399a782 SHA512 1eb1069d0a0d1613fea0ce80ca56bb6588de420fbb3fbd47f5d49524370ebaa6deee9e71c29d32cb766b5f8dbf78cd5a8a25d82bfa8328505aca7ee8c0430393 WHIRLPOOL cd74139637c71737482700ff29416608f65a8acc1f3d3de7c95aa9473386cdd2069f0e6eb784a01fbbca7426bd725f77f1279ae8daa1a4f9e90eca21f5f2ee06
+MISC ChangeLog 4917 SHA256 a786786f7e5c71399d8186b62d433b656638bed52818fd72a3d2f0249c8bca49 SHA512 a9e6aee8249ffa6df0456d3adb33b45fe809610dd10e602329cb5726f10f3ace1ff4aec86a47eb37c31c33ecf6ee18e8abe51363aebe2f3c8f99fad0d8c05c1f WHIRLPOOL 25c5885ed2a4e9c414548da3584d8692b48d3e16378b516237acbd068884c7e72ad1dc224dc149678b0e79b449eb054d58f2f0466f702c0933c2b30aad6867e6
+MISC ChangeLog-2015 19546 SHA256 dbc667558d2081e27b11d3fa0d638e94e689b92580ae7612538173264e4f2916 SHA512 fbc93a77b5a58f86ea87085fdbe470687971257dfbf6e3058ebe3eccb9f7087b28188af1e92eac271485bdc4a57bbfa8fb35e3ebba91b4f740da8263aad70b04 WHIRLPOOL a7fe8d4a31ccf9066c94e9189a9f3356c56f3e0705646e8f8c8400f3845f81cbd06d7552802e85fac36fde7ba10f0858bf3f47012bc7ac12f4f249784435afb4
+MISC metadata.xml 337 SHA256 2532dd174ca6a412fbf9440f95c832785f4e72617a285fe563c4727a6b8f1ba3 SHA512 62e1b8bf26625304a947ee1264ba6e9bc904f3276488e09624b7508094730b041a1d5140f43f82301e3fb2b4156b658f7add79dae6007750ae1f29360f944a16 WHIRLPOOL 146c0dd79e866855d3d4f5a53a8d7fc71ef9190bd2994fe33a61ee56eb5591263b1545cb385e6e63b8dbebc6f2045785ba966e62e0603cf5e0a3339478169f2c
diff --git a/dev-cpp/libxmlpp/libxmlpp-2.40.1.ebuild b/dev-cpp/libxmlpp/libxmlpp-2.40.1.ebuild
new file mode 100644
index 000000000000..1544a5953d10
--- /dev/null
+++ b/dev-cpp/libxmlpp/libxmlpp-2.40.1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+GCONF_DEBUG="no"
+GNOME_ORG_MODULE="${PN/pp/++}"
+
+inherit gnome2 multilib-minimal
+
+DESCRIPTION="C++ wrapper for the libxml2 XML parser library"
+HOMEPAGE="http://libxmlplusplus.sourceforge.net/"
+
+LICENSE="LGPL-2.1"
+SLOT="2.6"
+KEYWORDS="~alpha amd64 ~arm ~arm64 hppa ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~x86-solaris"
+IUSE="doc"
+
+RDEPEND="
+ >=dev-libs/libxml2-2.7.7[${MULTILIB_USEDEP}]
+ >=dev-cpp/glibmm-2.32[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+"
+
+multilib_src_prepare() {
+ gnome2_src_prepare
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" gnome2_src_configure \
+ $(use_enable doc documentation)
+}
+
+multilib_src_install() {
+ gnome2_src_install
+}
diff --git a/dev-cpp/libxmlpp/libxmlpp-3.0.1.ebuild b/dev-cpp/libxmlpp/libxmlpp-3.0.1.ebuild
new file mode 100644
index 000000000000..2c1497aca30d
--- /dev/null
+++ b/dev-cpp/libxmlpp/libxmlpp-3.0.1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+GNOME_ORG_MODULE="${PN/pp/++}"
+
+inherit gnome2 multilib-minimal
+
+DESCRIPTION="C++ wrapper for the libxml2 XML parser library"
+HOMEPAGE="http://libxmlplusplus.sourceforge.net/"
+
+LICENSE="LGPL-2.1"
+SLOT="3.0"
+KEYWORDS="~alpha amd64 ~arm hppa ~ia64 ~ppc ~ppc64 ~sparc x86 ~amd64-linux ~x86-linux ~x86-solaris"
+IUSE="doc"
+
+RDEPEND="
+ >=dev-libs/libxml2-2.7.7[${MULTILIB_USEDEP}]
+ >=dev-cpp/glibmm-2.32[${MULTILIB_USEDEP}]
+"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig[${MULTILIB_USEDEP}]
+"
+
+multilib_src_prepare() {
+ gnome2_src_prepare
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" gnome2_src_configure \
+ $(use_enable doc documentation)
+}
+
+multilib_src_install() {
+ gnome2_src_install
+}
diff --git a/dev-cpp/libxmlpp/metadata.xml b/dev-cpp/libxmlpp/metadata.xml
new file mode 100644
index 000000000000..76b38982324d
--- /dev/null
+++ b/dev-cpp/libxmlpp/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">libxmlplusplus</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/libxsd-frontend/Manifest b/dev-cpp/libxsd-frontend/Manifest
new file mode 100644
index 000000000000..908924faa1e9
--- /dev/null
+++ b/dev-cpp/libxsd-frontend/Manifest
@@ -0,0 +1,5 @@
+DIST libxsd-frontend-2.0.0.tar.bz2 66784 SHA256 35ba30988c67bc4ce9278d869ec0a04305eabf55287456af34c66ebe3564bfda SHA512 8a296fdfe2e562237d46774b33ee82e8f67835b0869c03ffdf04570db1e6f398cf97734685d44c2207abbb73cea20b57e53c8fd80a121f98196c1c7d4bacbc68 WHIRLPOOL 44f75d2d394f3db4edf773b4f36f74982600f5e55a445c4d0e6eb6254c1150c3eaf18b87d343d1728eccb5f6f92cd8888d80f86a7dc01f513d476dda056e0f89
+EBUILD libxsd-frontend-2.0.0.ebuild 2140 SHA256 50f9dbfb45af092c254571afba416d40789167bfaaa2b247fd91c628b539f478 SHA512 9a24be12b66871caf630974823793f7606d424efce8742572172c36fc88fca322533543ccc1aebbe81d1cf4e4fd54334b6af6c7d24e1e46e85c1eee7ecfde44d WHIRLPOOL 8591f156d5f713c16fe110f862f55ca855e0b38642e322f37bc275d947b82e05777e3b0011f27acef8f653839e89370f4dfd8fa00ce4b44d21bbdca7916ea5d4
+MISC ChangeLog 2908 SHA256 c67e1687e0efd6c4c0e8f84c489a63d5f9c3b314cd5cdaf251abd291eba84cd7 SHA512 6e631ba60fe31510c3af6fbd074a2fd20c8492dc63722f34c322c49ff1fbe86ef7c293036fe448a86f8e2d58fc7e866828f1074fcfaa67917e444e4a0f7763e2 WHIRLPOOL 40ea15d423c0a0b1985cc3323fecf7ca6b8b62409fc616bb0084368193ae632ffce32c86a1f7412defc3b25436c59e8df1d4436952403dd56f3350c2e93588c2
+MISC ChangeLog-2015 3555 SHA256 9dfeaeca9a7aea34c45fa8c4bf6076b4a77cae6fdb26f3c991e289201227328d SHA512 7adefbdda180adb08f5362127d9d9d9f57ee483acf5b80687b29849e71be36158a9b5a493766e9acb61fa23a9c8db08d48d37c498fdfbfe5bcadb340bc62833e WHIRLPOOL 1158169b63328cfe67dc6d3a21771d5229604037587db3499ad2d60eecbc22aecc006514dc980f0e2a2ac5f532f3503dc663255f32de9c60689f4af22cb9bf6a
+MISC metadata.xml 249 SHA256 61486b4cff6de2a1836eafc04bbbbf33cdc826b48b6a39d61e802dd4b223a82b SHA512 0b2b2d015d6d3310efdedc20cd12cb2f587c105f1e84b243d3a7dc6337dde082c16683781eba9a0cb09341756f10f651579df35837ee232309a97017ec02cbee WHIRLPOOL 5a337f74ddddf4b9843f8b2950990f44f843627ae72b1dabf3b0ad09df9704bb96c0571af55fd754ddbf9e8bd77ff0ee9023126c717a5cf4553b5f1f8cede310
diff --git a/dev-cpp/libxsd-frontend/libxsd-frontend-2.0.0.ebuild b/dev-cpp/libxsd-frontend/libxsd-frontend-2.0.0.ebuild
new file mode 100644
index 000000000000..c456de58e936
--- /dev/null
+++ b/dev-cpp/libxsd-frontend/libxsd-frontend-2.0.0.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit toolchain-funcs versionator
+
+DESCRIPTION="A compiler frontend for the W3C XML Schema definition language"
+HOMEPAGE="http://www.codesynthesis.com/projects/libxsd-frontend/"
+SRC_URI="http://www.codesynthesis.com/download/${PN}/$(get_version_component_range 1-2)/${P}.tar.bz2"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE=""
+
+RDEPEND="
+ >=dev-libs/xerces-c-3.0.0
+ dev-libs/boost:=[threads]
+ dev-cpp/libcutl"
+DEPEND="${RDEPEND}
+ >=dev-util/build-0.3.10"
+
+src_configure() {
+ mkdir -p \
+ build/{ld,cxx/gnu} \
+ build/import/lib{boost,cult,frontend-elements,xerces-c} || die
+
+ cat >> build/cxx/configuration-dynamic.make <<- EOF || die
+ cxx_id := gnu
+ cxx_optimize := n
+ cxx_debug := n
+ cxx_rpath := n
+ cxx_pp_extra_options :=
+ cxx_extra_options := ${CXXFLAGS}
+ cxx_ld_extra_options := ${LDFLAGS}
+ cxx_extra_libs :=
+ cxx_extra_lib_paths :=
+ EOF
+
+ cat >> build/cxx/gnu/configuration-dynamic.make <<- EOF || die
+ cxx_gnu := $(tc-getCXX)
+ cxx_gnu_libraries :=
+ cxx_gnu_optimization_options :=
+ EOF
+
+ cat >> build/ld/configuration-lib-dynamic.make <<- EOF || die
+ ld_lib_type := shared
+ EOF
+
+ # boost
+ cat >> build/import/libboost/configuration-dynamic.make <<- EOF || die
+ libboost_installed := y
+ libboost_system := y
+ EOF
+
+ # libcutl
+ cat >> build/import/libcutl/configuration-dynamic.make <<- EOF || die
+ libcutl_installed := y
+ EOF
+
+ # xerces-c
+ cat >> build/import/libxerces-c/configuration-dynamic.make <<- EOF || die
+ libxerces_c_installed := y
+ EOF
+}
+
+src_compile() {
+ emake verbose=1
+}
+
+src_install() {
+ einstalldocs
+
+ dolib.so xsd-frontend/libxsd-frontend.so
+
+ # clean header dir of build files
+ find xsd-frontend \( -iname '*.cxx' -o -iname 'makefile*' \
+ -o -iname '*.o' -o -iname '*.d' -o -iname '*.m4' -o -iname '*.l' \
+ -o -iname '*.cpp-options' -o -iname '*.so' \) -exec rm -rf '{}' + || die
+ rm -rf xsd-frontend/arch || die
+ doheader -r xsd-frontend
+}
+
+src_test() {
+ export LD_LIBRARY_PATH="${S}/xsd-frontend:${LD_LIBRARY_PATH}"
+ default
+}
diff --git a/dev-cpp/libxsd-frontend/metadata.xml b/dev-cpp/libxsd-frontend/metadata.xml
new file mode 100644
index 000000000000..d4905c84fc34
--- /dev/null
+++ b/dev-cpp/libxsd-frontend/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/lucene++/Manifest b/dev-cpp/lucene++/Manifest
new file mode 100644
index 000000000000..a13c87cb96e3
--- /dev/null
+++ b/dev-cpp/lucene++/Manifest
@@ -0,0 +1,6 @@
+AUX lucene++-3.0.7-boost-1.58.patch 1149 SHA256 a77482fbd8eff1ece88132e8632e3a942495c602e9c6710db7b7151b2af4ddd2 SHA512 7fd0089895ab77da158a49510241fdc894bd3d30f7a6691ddc230f4d52631ec9222a04e13ef0a118f7838b4320fd313502f635c8f0827ba5bb4c6169fdd404b9 WHIRLPOOL 4c68548aa21ad9d1734b032a5aaf2f051a4e58b00d009265216047a27ec6839510db30b5cb7b249fca28db89e97e86e7f9aa199b3102e7e56aede5cb32aeec63
+DIST lucene++-3.0.7.tar.gz 2013570 SHA256 6c19f203311e4b44a0ccf7b1127db77436eb47159ea1c54f7531a0b1ca585e0c SHA512 92f3bba320980673cc64c983616aa38d25b44ea811237ed226741b892757fb8151e4f833aa58a18dbe7a0c9a899d94e828aa15e6d7b48a69ab730d1d772db220 WHIRLPOOL e5d18d6d0ac90f8b0ace161dc0457b2ca3546c211e96ac3c44dea4ba7d9bbd6bd9183016ceb2bccd8516261db0ca2dd4331701bb37e653e96df9453d6acbc878
+EBUILD lucene++-3.0.7.ebuild 806 SHA256 3dd6316707cf306a0b44ed88f81736dc560a2cf4cb802c81e799eb963257afa0 SHA512 82f80fdba3585f8fd165a814785c7ff2840749f8fee60ac7ade795e5f9540c626cc60847421213a2a1965826c39b42e310efa791e1010a06a3ff726abf0bfd5c WHIRLPOOL a3db6ae09422f6cbbc510ace89019492f98dcc6175ea349c0563c3d18a0b917c6e645b5dfad20ae40c20d12f9cebdd2487365dad34c4ec6bfe163f485d6222dd
+MISC ChangeLog 3298 SHA256 65a60d1b98060ee8fc99374ccfa74fd82e008a99749231ebea908adf8f3cedb8 SHA512 58ca5b31e10841b72b0ed6d03cf22427967d5a6e77a5f72629ae38b876be7f552be6aa8c9bbc2dd6f3cd429756f8599ee2cd334cfebb460a01b812ddcfb48c79 WHIRLPOOL f2fe1c56d071b3e2a5bb3fcf38dc25f1ac35690d28f763ada2536da39526ed8dbf9c6f964fae7930f00681929fa9bb66f92104fef66c80c5e8be1d30144a3042
+MISC ChangeLog-2015 845 SHA256 3642df10375289ae0ea2fc4bdeae0f7b99b633f515be4403b89a02e008d9b88c SHA512 c004acc5f9d09055a00c503dd4143c8a13dc0a7967bbf8b4ee6629d571f1f3c65b10c8c921ae44bc1b1e1c3e33b6e0f5954873e816d78dfd5a568f1098765d5d WHIRLPOOL af34a56b93bd18d55919e4a89524b92d72ef27bee6735f1583f0a0da5c055933854ebc0d6ef730be1ad374b11cc5a57f6145282c3e8124333e831cbaab5bda6b
+MISC metadata.xml 342 SHA256 0df58882b48332115e2deab0894306541a45f25a10cd21faa35ce09fcb0f80a7 SHA512 b9c2db6cd4e7f6731aa9c5a220d5b71759f7adb9f8179a334a320596a9570262ed4251b5edc004958b6f45e129bba3fd004672462ce97ac091b8e702b1535e6b WHIRLPOOL 1046d286a49240c648fdc32b56436fdad3db7ff5a430bbfdbe3c754a2ddc95050845852da8e208c1d29448d5343bb012388c7a8ba9d5468edc0b93cbdbf8ffac
diff --git a/dev-cpp/lucene++/files/lucene++-3.0.7-boost-1.58.patch b/dev-cpp/lucene++/files/lucene++-3.0.7-boost-1.58.patch
new file mode 100644
index 000000000000..9ff33fd03005
--- /dev/null
+++ b/dev-cpp/lucene++/files/lucene++-3.0.7-boost-1.58.patch
@@ -0,0 +1,37 @@
+commit 1987082cf9278a639d772b4f35a8ae2d34944177
+Author: Václav Slavík <vaclav@slavik.io>
+Date: Mon May 4 18:04:46 2015 +0200
+
+ Fix compilation with Boost 1.58
+
+ 1.58 introduces strict type checking in boost::get() and while that's
+ good in theory, the VariantUtils code makes it impractical to use.
+ Instead, use relaxed_get() to get the old behavior. relaxed_get() didn't
+ exist in older versions of Boost, so the code must check BOOST_VERSION.
+
+ Fixes #93.
+
+diff --git a/include/VariantUtils.h b/include/VariantUtils.h
+index 1e6c243..5a72e59 100644
+--- a/include/VariantUtils.h
++++ b/include/VariantUtils.h
+@@ -8,6 +8,7 @@
+ #define VARIANTUTILS_H
+
+ #include <boost/any.hpp>
++#include <boost/version.hpp>
+ #include "Lucene.h"
+ #include "MiscUtils.h"
+
+@@ -22,7 +23,11 @@ public:
+
+ template <typename TYPE, typename VAR>
+ static TYPE get(VAR var) {
++#if BOOST_VERSION < 105800
+ return var.type() == typeid(TYPE) ? boost::get<TYPE>(var) : TYPE();
++#else
++ return var.type() == typeid(TYPE) ? boost::relaxed_get<TYPE>(var) : TYPE();
++#endif
+ }
+
+ template <typename TYPE, typename VAR>
diff --git a/dev-cpp/lucene++/lucene++-3.0.7.ebuild b/dev-cpp/lucene++/lucene++-3.0.7.ebuild
new file mode 100644
index 000000000000..ddb0f0570e20
--- /dev/null
+++ b/dev-cpp/lucene++/lucene++-3.0.7.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+MY_P="LucenePlusPlus-rel_${PV}"
+inherit cmake-utils multilib
+
+DESCRIPTION="C++ port of Lucene library, a high-performance, full-featured text search engine"
+HOMEPAGE="https://github.com/luceneplusplus/LucenePlusPlus"
+SRC_URI="https://github.com/luceneplusplus/LucenePlusPlus/archive/rel_${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="|| ( LGPL-3 Apache-2.0 )"
+SLOT="0"
+KEYWORDS="amd64 hppa ~ppc ppc64 x86"
+IUSE="debug"
+
+DEPEND="dev-libs/boost:="
+RDEPEND="${DEPEND}"
+
+RESTRICT="test"
+
+S="${WORKDIR}/${MY_P}"
+
+DOCS=( AUTHORS README.rst )
+
+PATCHES=( "${FILESDIR}/${P}-boost-1.58.patch" )
+
+src_configure() {
+ local mycmakeargs=(
+ -DENABLE_DEMO=OFF
+ -DENABLE_TEST=OFF
+ )
+
+ cmake-utils_src_configure
+}
diff --git a/dev-cpp/lucene++/metadata.xml b/dev-cpp/lucene++/metadata.xml
new file mode 100644
index 000000000000..7e7d73fe4283
--- /dev/null
+++ b/dev-cpp/lucene++/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>johu@gentoo.org</email>
+ <name>Johannes Huber</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">luceneplusplus/luceneplusplus</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/metadata.xml b/dev-cpp/metadata.xml
new file mode 100644
index 000000000000..643f7614d21e
--- /dev/null
+++ b/dev-cpp/metadata.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE catmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<catmetadata>
+ <longdescription lang="en">
+ The dev-cpp category contains libraries and utilities relevant to the
+ c++ programming language.
+ </longdescription>
+ <longdescription lang="de">
+ Die Kategorie dev-cpp enthält Bibliotheken und Werkzeuge für die
+ Programmiersprache C++.
+ </longdescription>
+ <longdescription lang="es">
+ La categoría dev-cpp contiene librerias y utilidades referentes al
+ lenguaje de programación C++.
+ </longdescription>
+ <longdescription lang="ja">
+ dev-cpp カテゴリーにはC++プログラミング言語に関連したライブラリーと
+ ユーティリティが含まれます。
+ </longdescription>
+ <longdescription lang="nl">
+ De dev-cpp categorie bevat bibliotheken en hulpmiddelen voor het gebruik
+ van de programmeertaal C++.
+ </longdescription>
+ <longdescription lang="vi">
+ Nhóm dev-cpp chứa các thư viện và tiện ích liên quan
+ đến ngôn ngữ lập trình C++.
+ </longdescription>
+ <longdescription lang="it">
+ La categoria dev-cpp contiene librerie e utilità per illinguaggio C++.
+ </longdescription>
+ <longdescription lang="pt">
+ A categoria dev-cpp contém bibliotecas e utilitários para a
+ linguagem de programação C++.
+ </longdescription>
+ <longdescription lang="pl">
+ Kategoria dev-cpp zawiera biblioteki i narzędzia związane z językiem
+ programowania c++.
+ </longdescription>
+</catmetadata>
+
diff --git a/dev-cpp/metslib/Manifest b/dev-cpp/metslib/Manifest
new file mode 100644
index 000000000000..9732ce3c139d
--- /dev/null
+++ b/dev-cpp/metslib/Manifest
@@ -0,0 +1,5 @@
+DIST metslib-0.5.3.tgz 218295 SHA256 33142aa3be7c79b966a14c50eb39d0468e98ff365f5c7e055a93ea77eda04c3d SHA512 27acc3728213f92963e046fa5ffd268686764e02d35765415a544194d70c873cfe38d5bba5a259b63847ab815c5984313fe81a66da1d39c89615a413943f7b04 WHIRLPOOL 1abd7398d59cc7e349a4303921ee1ad58a57ca1724114ed27b82f8dca8a5629974038efe7f5076423224af4934afde6c8ecc7c80db70ea59e6618d1a06b455d5
+EBUILD metslib-0.5.3.ebuild 434 SHA256 8e9cf6a6c80a70f033f3f0cc9eff73b6e3ec165de33c8983060a04f9e3bb6164 SHA512 6184c50ba4c722bde25d6fe3b3327c0efbae3039a399dfdf9e04e28ec25a33e205bb74cc6ea1ff609f704c905d2889a00a7f98dabaa96caacdccc7fc0e939249 WHIRLPOOL ae620fb6939f9c1b04d436d67d9aa035c804fad5322137ebdc5efd9012477dcbcd8e6dc016d61f63e4eec024309797c35f1413d8b45921e66a6f499334198da7
+MISC ChangeLog 2175 SHA256 d7e8948118c867f13cea0853eace8de507d2cbbae6435b3289ff1044995630de SHA512 dc5b46dca80c72da7a43ee214a8b311f13234322b4e61a0b7d755cf2e203408d4961685640d9bbdec6617f4b495a1974e48d86561bf880011dd1056da42f5835 WHIRLPOOL 465455180e98d887a17f19e67bb556486aadb933c126434cb8902f1d47174718c22f801ea49b9439f8d6b8e9021e79ec65f6dc945004beb40b8c32e2120ea30a
+MISC ChangeLog-2015 552 SHA256 4f1a34eeb245c1285d2e628f5d64f53d33b109afcb779f50b0353c7900f26f6c SHA512 2ba6330f4052dde1a2c187c7e9dd471b6a4c8d4f6a4671980ed77e48330bd9af3f0822b5979630f04b525c3175d0b63ed9a9843d2ebbc6960681ff78240fe942 WHIRLPOOL ed0e48a156a2b9233e8dcbbe27619c3db29000ad9792a94c5d8729f7d06b8e9209d150844abe6eb7c5fc885ff7be620855362300e6a11e8ef3ab9a0d7ad5fcb1
+MISC metadata.xml 243 SHA256 15deb598d18c4f8b8de5be1aa70b9f355143d083acd82d6ecb15eef490960590 SHA512 c9d5c1cdd2874fe293f21f7584c6e15ef9439bd82b0d2e862e3e34c9a9e0e3191370fee2727b9d4d8647fb85cf56a39fdd6c1e0003ada1554496aad311ef335c WHIRLPOOL 1a3dcdd25c150262234f12dc0b25a8a5f67acf1ae5e7e7195b472ed0c7ee869a105c19125f8e58401c8ff7a8b2ca86db6b0cf382045130a50dbb79f3cd3cf5ec
diff --git a/dev-cpp/metslib/metadata.xml b/dev-cpp/metslib/metadata.xml
new file mode 100644
index 000000000000..6ca4a599be8f
--- /dev/null
+++ b/dev-cpp/metslib/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="person">
+<email>aballier@gentoo.org</email>
+<name>Alexis Ballier</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/metslib/metslib-0.5.3.ebuild b/dev-cpp/metslib/metslib-0.5.3.ebuild
new file mode 100644
index 000000000000..6cecf6502b7d
--- /dev/null
+++ b/dev-cpp/metslib/metslib-0.5.3.ebuild
@@ -0,0 +1,17 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+DESCRIPTION="Metaheuristic modeling framework and optimization toolkit"
+HOMEPAGE="https://projects.coin-or.org/metslib"
+SRC_URI="http://www.coin-or.org/download/source/metslib/${P}.tgz"
+
+LICENSE="|| ( GPL-3 CPL-1.0 )"
+SLOT="0"
+KEYWORDS="~amd64 ~arm"
+IUSE=""
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+DOCS=( AUTHORS NEWS README )
diff --git a/dev-cpp/mm-common/Manifest b/dev-cpp/mm-common/Manifest
new file mode 100644
index 000000000000..f9850bf5e911
--- /dev/null
+++ b/dev-cpp/mm-common/Manifest
@@ -0,0 +1,7 @@
+DIST mm-common-0.9.10.tar.xz 266372 SHA256 16c0e2bc196b67fbc145edaecb5dbe5818386504fe5703de27002d77140fa217 SHA512 77d6836ceb806aec49a4f97bc4a037558f9fccdd8aae88b7650cd050bf7661d597b6b4dec4a64e819652961e759b132c64887a1d9bf774d9be156d1fc00b8ad3 WHIRLPOOL 2dd096ca47f2236387170c991b0b9bdbfe3fb22aeca5e54248c12a5a40e106bef5563e6ad5d77036c7ca1afad7bf5de2550d7e3e05b7c546b9a5cfca76cadc4e
+DIST mm-common-0.9.11.tar.xz 266928 SHA256 20d1e7466ca4c83c92e29f9e8dfcc8e5721fdf1337f53157bed97be3b73b32a8 SHA512 c1072ad35996e748b14ce09253ab64b8eb302da8a78932149325e4485e9684ad3c0555d5fc6787fad2b5d912b8110df60608dfafa418892b901632ebbd5b1007 WHIRLPOOL 997e415b718040c6d57d40935498a28cb4e5b34edc8b4b55187798699e509790463689bc130af3bd08a983180f1527b5e03cf3e094bf98e91de7d14c975c9fe0
+EBUILD mm-common-0.9.10.ebuild 381 SHA256 6a89265f9932bbe81757e61bf196a551d0c85f9140f767b16a3363eeee3a887b SHA512 6858927147dc87491b2d45052f3e9d75a47dacdd9cddd0288827ef145bb8a76079e2af9b5415b29fc20e13709ab4a0535e650d5e608b24de311b5b462d7a7f6e WHIRLPOOL ff7588103059df71a1c5a007eb02500429f4da7bec5d1fb3a8d37a1ec4739eae7c370272f900d5a825fe8529523483f8d1b05e92d42647364903622c7cd5070b
+EBUILD mm-common-0.9.11.ebuild 383 SHA256 dd554e59d3e5c26d632f07ddf4f1602f7dd212d43f874a6cd1f25c8b4ad847e1 SHA512 176c26f4992279e6392d13d025093b6afead792a29a4e998abc04867646bf638c8c56b062a475a75b6084d5a7bf6eb13b7a30bd3e55322805a72c32baea8d904 WHIRLPOOL 6a0025626d5435ea928a68031da80567d2b0a1f73041f904bb18c2e8b165f96528f7d2405accec2ef7895471e698c4b3071be024034ada6323f3dbc8b77ab5a2
+MISC ChangeLog 6128 SHA256 5279016ffa80dff1f4176ff886e5a6703852685201a1cf5338a7443718891470 SHA512 de2b76c8b623401788a43e7c1bb94c7e0e0e817ac06e9061b06a2da467afb22ecb30d26cc538c336beb04186da9f6bc3180db98973f986912d05932c8ce1ed9f WHIRLPOOL 937e07cc15e76ede21d812173fc423df9f6fc3f9cf40677172ca343ebe47d570a0671580a2a0051ebf5539401c93d5095d299498f21fab76505b21c137c6e520
+MISC ChangeLog-2015 4540 SHA256 37f489dfa5824fd90d189c048d4a3a6fe577e32babd4b545bba4f427a06d26f2 SHA512 d68f82e8b7e08c7807a730a3db8fe789afd56bae8ae228a88231dc6a8924c6a230e33c0cf541fe6108fce79afbf76b8a04c0650adb1b970fe0de5ebd70412b37 WHIRLPOOL e4f8e01c1c004cb9e3db392bf86f3d130712e77a2198cdbc6c150482ac111e058c2595f4bb3484d75cdb78bb278aa7fcc8aa6134e876d86733987610189118bf
+MISC metadata.xml 249 SHA256 4505b0bfeadff287958620b7dc7b7209699065a8f17139a237a5dd409a726a97 SHA512 c40662134899a5c9f0369a1017806f35adf3280a0b3c91726f7a8ca6012a073a8b471583f5bfb6fe95faac1dcf607e8e2e43f8c91d48ec46f4a8824e2f551506 WHIRLPOOL 333a938ee1d2124595596c572697bf5ebad523a92ba12005cfb12e6bb6270881a94a911f0cc9c1cf2bb571559e8271e07dfd307dabe50058236dbe7103562b92
diff --git a/dev-cpp/mm-common/metadata.xml b/dev-cpp/mm-common/metadata.xml
new file mode 100644
index 000000000000..39980802b1da
--- /dev/null
+++ b/dev-cpp/mm-common/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/mm-common/mm-common-0.9.10.ebuild b/dev-cpp/mm-common/mm-common-0.9.10.ebuild
new file mode 100644
index 000000000000..0763a96d62e9
--- /dev/null
+++ b/dev-cpp/mm-common/mm-common-0.9.10.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+GCONF_DEBUG="no"
+
+inherit gnome2
+
+DESCRIPTION="Build infrastructure and utilities for GNOME C++ bindings"
+HOMEPAGE="https://www.gtkmm.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc x86"
+IUSE=""
+
+RDEPEND=""
+DEPEND=""
diff --git a/dev-cpp/mm-common/mm-common-0.9.11.ebuild b/dev-cpp/mm-common/mm-common-0.9.11.ebuild
new file mode 100644
index 000000000000..da6f5c977944
--- /dev/null
+++ b/dev-cpp/mm-common/mm-common-0.9.11.ebuild
@@ -0,0 +1,18 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+GCONF_DEBUG="no"
+
+inherit gnome2
+
+DESCRIPTION="Build infrastructure and utilities for GNOME C++ bindings"
+HOMEPAGE="https://www.gtkmm.org/"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86"
+IUSE=""
+
+RDEPEND=""
+DEPEND=""
diff --git a/dev-cpp/muParser/Manifest b/dev-cpp/muParser/Manifest
new file mode 100644
index 000000000000..c3096ac43ef2
--- /dev/null
+++ b/dev-cpp/muParser/Manifest
@@ -0,0 +1,8 @@
+AUX muParser-1.32-parallel-build.patch 680 SHA256 bd68969e797530a11dd7bd8864131d0cf6878a9f754fdb005070760fc82dd948 SHA512 a39af330803786ebb86259dd86ecfac00ca04978b0e623b418d887f6b20a6eb6cee2b37da8164aa7038b3accf388b40b6a6d4eccd2f20afdfd6051cc3505ac90 WHIRLPOOL 5bab37f5e7114e9af788b48dab86e287a5133aca13f1a00a4069ac433effcdbb1ed455ab119586ec889acff08efb4ab5b55fdfc4d4780cf293db96b5763003b6
+DIST muParser-2.2.5.tar.gz 761315 SHA256 0666ef55da72c3e356ca85b6a0084d56b05dd740c3c21d26d372085aa2c6e708 SHA512 d89380ebdc0ce91d0ea38fe43419ab6ed06c47d352b9ee20e1edcce48337b464366153493e0241c373ba2880a8b419fb9541e56cda0d14915daf9b98136ee682 WHIRLPOOL 86b8d4c13982b4748abbc379b6a2e4d421fc5d734b36daa8ed9525d451404996f0099404464908f144c5be3319db2cbbc92d697a5c56326bc303cc48a4f9520b
+DIST muparser_v2_2_3.zip 1481359 SHA256 dfe831b69392ab0b1eb59d3601b7b1575554a85057cf2f234f64f930c4148902 SHA512 86d140c07161757e2f0de516a4c2922ce5b135d06b01466bc15ad90833bd3e9f99b9b9c528617262597a7a5a6b09bff5ae8ced5d51c413ea611059e0bdb22e6d WHIRLPOOL 3a53d04382feec889c4a54fe2edf762d9cf8629f4ec0543cfde12b6848e3594391a778c54747d6b4cf7608fcc0ac557f71132741935716704b160601057ff312
+EBUILD muParser-2.2.3.ebuild 916 SHA256 d7cf48bca100817f132c6328f3c4443a4176aa116a5baf1a78a25b11ba199c21 SHA512 fed6b79e67cf7a3af9f917148d69d1d6b68c9016a7e88bf9296144224a80199c3ea2f98af5b7e8780569187f5f1fd6fd04aafb136dbf146beddbbe90352dab8f WHIRLPOOL 9ef51af7098905e2817d3d0e4997fd9518a16de5e30a6425e099dc0be26df628f6de4c67a4e0f62d2c23954ebf374abc1ceccea576912ef26d88e0f818843948
+EBUILD muParser-2.2.5.ebuild 863 SHA256 7827283d7c6280bfb1dd0ec98c48bbc2c1b771b97264f9f78a87d9af4a8d7837 SHA512 6bbd9ff70d8cb11e75c282b52fc5fec0092a7bd57baed94cda099c2b18744101d78678f9cc9a29bd9be447e2d4fa41c03fb529292b6cc7b9b79f8009f47c9108 WHIRLPOOL 0c29d9952f3d9a1f7c6a2ad2cc7199f7fae689a6acb312860e8142bf5c3f2958e5ccd226c7279a6778a438f9b63720394d916c17fe6c9fb0fb2105e4ecd64425
+MISC ChangeLog 3538 SHA256 60389ea22b6a52a16131638dc11920be9aa7f53a9abc7bde821338c74ca758e7 SHA512 323dd1a4f2c3c86e6f3f98a5a68353cc26d2e5736932d6b972b77eb073c361c8cfc22c2325ceb78b2963fa9892db6e02a73a2e190ce2277a425810a5eb576ff1 WHIRLPOOL a92e49776cb70e24fbfd613e684022cfc1ee24080b97bf66f415b42bbd9dc028641eb38b8e75600e392086c6424fc7633a6d686b0eaa17d1debf446c11d7f642
+MISC ChangeLog-2015 4069 SHA256 20b797b8e033245afd337bff17bc98637b013396efe8a2d423b7de3eb3dbea74 SHA512 ae2940749a8ee8471a2a2f9393f38a3dbcae64bc3857284b1fd875ccb5c2ed603eaffc87a5dc534eda3d7a6527d6cb637d6d29ae74d3a5f54bf5e02c71cedb8e WHIRLPOOL 8fb7ed29fe3fe117a414e9a7aa225d5a5592f5ba39839b5092005049b7fb7a68b163ba9c4b8cdb2563eb948df685e09be126e790dc9961cec88383f5fced041f
+MISC metadata.xml 624 SHA256 6c3c209db25c5135a93f47633d272f048d31f646bb68a19f93c77b079bec580a SHA512 d6e69dd4330f9b42385a0ce5492ba8e4fd0d8ae69399f12967b7e4684f7e5dc5bacc1fe68be7e9d375e5590586208ea2d8eb3a476b3921708113ad1f6f68e729 WHIRLPOOL f9bb70387f5324ec646bd1c79699dfea0fcdcd234001865e9fe29783915f01a306d6e77f15fe558cbbe7644a64f5e879a7c7f9b172fdbfd203fb205ba839ecc0
diff --git a/dev-cpp/muParser/files/muParser-1.32-parallel-build.patch b/dev-cpp/muParser/files/muParser-1.32-parallel-build.patch
new file mode 100644
index 000000000000..1681c6e68034
--- /dev/null
+++ b/dev-cpp/muParser/files/muParser-1.32-parallel-build.patch
@@ -0,0 +1,15 @@
+Fixing parallel build issue
+
+http://bugs.gentoo.org/show_bug.cgi?id=310037
+
+--- muparser_v132/Makefile.in
++++ muparser_v132/Makefile.in
+@@ -291,7 +291,7 @@
+ @COND_SHARED_1@ rm -f $(DESTDIR)$(prefix)/$$f; \
+ @COND_SHARED_1@ done
+
+-@COND_SAMPLES_1@$(top_builddir)/samples/example1/example1$(EXEEXT): $(EXAMPLE1_OBJECTS) $(__muParser_lib___depname)
++@COND_SAMPLES_1@$(top_builddir)/samples/example1/example1$(EXEEXT): $(EXAMPLE1_OBJECTS) $(__muParser_lib___depname) lib
+ @COND_SAMPLES_1@ $(CXX) -o $@ $(EXAMPLE1_OBJECTS) -L$(top_builddir)/lib -L$(srcdir)/lib $(LDFLAGS) -lmuparser$(DEBUG_BUILD_POSTFIX) $(LIBS)
+ @COND_SAMPLES_1@
+ @COND_SAMPLES_1@ $(__example1___mac_setfilecmd)
diff --git a/dev-cpp/muParser/metadata.xml b/dev-cpp/muParser/metadata.xml
new file mode 100644
index 000000000000..cb8c922154dc
--- /dev/null
+++ b/dev-cpp/muParser/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci-mathematics@gentoo.org</email>
+ <name>Gentoo Mathematics Project</name>
+ </maintainer>
+ <longdescription lang="en">
+ muParser is a C++ library for mathematical expression parsing.
+ It is based on transforming an expression into a bytecode and
+ precalculating constant parts of it.
+ </longdescription>
+ <upstream>
+ <remote-id type="sourceforge">muparser</remote-id>
+ <remote-id type="github">beltoforion/muparser</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/muParser/muParser-2.2.3.ebuild b/dev-cpp/muParser/muParser-2.2.3.ebuild
new file mode 100644
index 000000000000..4078fabd35aa
--- /dev/null
+++ b/dev-cpp/muParser/muParser-2.2.3.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils
+
+MYPN=${PN/P/p}
+MYP=${MYPN}_v${PV//./_}
+
+DESCRIPTION="Library for parsing mathematical expressions"
+HOMEPAGE="http://muparser.beltoforion.de/"
+SRC_URI="mirror://sourceforge/${MYPN}/${MYP}.zip"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="doc test"
+
+RDEPEND=""
+DEPEND="app-arch/unzip"
+
+S="${WORKDIR}/${MYP}"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.32-parallel-build.patch
+ sed -i \
+ -e 's:-O2::g' \
+ configure || die
+}
+
+src_configure() {
+ econf $(use_enable test samples)
+}
+
+src_test() {
+ cat > test.sh <<- EOFTEST
+ LD_LIBRARY_PATH=${S}/lib samples/example1/example1 <<- EOF
+ quit
+ EOF
+ EOFTEST
+ sh ./test.sh || die "test failed"
+}
+
+src_install() {
+ default
+ dodoc Changes.txt
+ use doc && dohtml -r docs/html/*
+}
diff --git a/dev-cpp/muParser/muParser-2.2.5.ebuild b/dev-cpp/muParser/muParser-2.2.5.ebuild
new file mode 100644
index 000000000000..3dffdc7b4749
--- /dev/null
+++ b/dev-cpp/muParser/muParser-2.2.5.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils
+
+DESCRIPTION="Library for parsing mathematical expressions"
+HOMEPAGE="http://muparser.beltoforion.de/"
+SRC_URI="https://github.com/beltoforion/muparser/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ~ppc ~ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="doc test"
+
+S=${WORKDIR}/muparser-${PV}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PN}-1.32-parallel-build.patch
+ sed -i \
+ -e 's:-O2::g' \
+ configure || die
+}
+
+src_configure() {
+ econf $(use_enable test samples)
+}
+
+src_test() {
+ cat > test.sh <<- EOFTEST
+ LD_LIBRARY_PATH="${S}/lib" samples/example1/example1 <<- EOF
+ quit
+ EOF
+ EOFTEST
+ sh ./test.sh || die "test failed"
+}
+
+src_install() {
+ default
+ dodoc Changes.txt
+}
diff --git a/dev-cpp/pangomm/Manifest b/dev-cpp/pangomm/Manifest
new file mode 100644
index 000000000000..95f3bd66a86b
--- /dev/null
+++ b/dev-cpp/pangomm/Manifest
@@ -0,0 +1,5 @@
+DIST pangomm-2.40.1.tar.xz 810384 SHA256 9762ee2a2d5781be6797448d4dd2383ce14907159b30bc12bf6b08e7227be3af SHA512 bed19800b76e69cc51abeb5997bdc2f687f261ebcbe36aeee51f1fbf5010a46f4b9469033c34a912502001d9985135fd5c7f7574d3de8ba33cc5832520c6aa6f WHIRLPOOL 5a06f166cc537a56fbd2e7cf106da7e288299852a9af2b4b8e600d69de880e0945941c748371a57963e0502ecc993cd9b6d88655e09bb812cf2847a83dea87e8
+EBUILD pangomm-2.40.1.ebuild 959 SHA256 820f09955f7a714bee0af6d4f9aec6ba4e737bb5f2e3bcc233b77c630f4745c4 SHA512 fd8123776c3ee34cc4537c1b5f044e0dbd48abb5a252b972c1e79d2b088b3b43265b6f9066cfcbc6bffdda8fca3f556d539624436dabb8be541d454e4a11b05f WHIRLPOOL 7523bfa4e9ec06b317a90fa4bb5ccd5b99916c1c6e11205a50cfd7b1195af6a4aa745e3674ed02b05eadc103fa90506f2517ae6fb30062c31c498136ded33fd4
+MISC ChangeLog 5402 SHA256 c3e8a56f97de33d0e93188f608a240416c21709de76d81a09ada894c569e5468 SHA512 dc42ad632c5eaf92c4c15556e5d002a1cf68472e15a8978c766027f29dcf9cb9432ea3282495c991b9c4676b771ab80ef1757b9e761711cd4cc4655d30cec067 WHIRLPOOL 8b01f3ecb5b09d7fdd7ad93c4e4336d379d4cc219993412a0b067e116224002b4cf3cc623967e4ec2eeed92a698fb9b9b706669d6268a372ff927b926fa54a3f
+MISC ChangeLog-2015 10634 SHA256 ff99d9726f43b8547c05a4e380911a25c7bd5b0f2a90826d7fd3f017072d679f SHA512 936dd4394f15e59e54ab213c6e092a70b53369d8e6a344db2d680596e3c134452a9f2d7ba218dd948e1e28b9fe8625a2f76809e50bf5592af9b77ac125fcd4fc WHIRLPOOL f28c5ca444b72e60039927722b1ff1d31433da8083665829ea1f62c63a7600bb3515e08b9ede22cf58edf30635390a8a29170c8694a549ba89641de4983268e3
+MISC metadata.xml 249 SHA256 4505b0bfeadff287958620b7dc7b7209699065a8f17139a237a5dd409a726a97 SHA512 c40662134899a5c9f0369a1017806f35adf3280a0b3c91726f7a8ca6012a073a8b471583f5bfb6fe95faac1dcf607e8e2e43f8c91d48ec46f4a8824e2f551506 WHIRLPOOL 333a938ee1d2124595596c572697bf5ebad523a92ba12005cfb12e6bb6270881a94a911f0cc9c1cf2bb571559e8271e07dfd307dabe50058236dbe7103562b92
diff --git a/dev-cpp/pangomm/metadata.xml b/dev-cpp/pangomm/metadata.xml
new file mode 100644
index 000000000000..39980802b1da
--- /dev/null
+++ b/dev-cpp/pangomm/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>gnome@gentoo.org</email>
+ <name>Gentoo GNOME Desktop</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/pangomm/pangomm-2.40.1.ebuild b/dev-cpp/pangomm/pangomm-2.40.1.ebuild
new file mode 100644
index 000000000000..86b8765b4503
--- /dev/null
+++ b/dev-cpp/pangomm/pangomm-2.40.1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit gnome2 multilib-minimal
+
+DESCRIPTION="C++ interface for pango"
+HOMEPAGE="https://www.gtkmm.org"
+
+LICENSE="LGPL-2.1+"
+SLOT="1.4"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ppc ppc64 ~sh sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~sparc-solaris ~x86-solaris"
+IUSE="doc"
+
+COMMON_DEPEND="
+ >=x11-libs/pango-1.38.0[${MULTILIB_USEDEP}]
+ >=dev-cpp/glibmm-2.48.0:2[${MULTILIB_USEDEP}]
+ >=dev-cpp/cairomm-1.12.0[${MULTILIB_USEDEP}]
+ >=dev-libs/libsigc++-2.3.2:2[${MULTILIB_USEDEP}]
+"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig[${MULTILIB_USEDEP}]
+ doc? (
+ media-gfx/graphviz
+ dev-libs/libxslt
+ app-doc/doxygen )
+"
+RDEPEND="${COMMON_DEPEND}
+ !<dev-cpp/gtkmm-2.13:2.4
+"
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" gnome2_src_configure \
+ $(multilib_native_use_enable doc documentation)
+}
+
+multilib_src_install() {
+ gnome2_src_install
+}
diff --git a/dev-cpp/pficommon/Manifest b/dev-cpp/pficommon/Manifest
new file mode 100644
index 000000000000..be51674e236d
--- /dev/null
+++ b/dev-cpp/pficommon/Manifest
@@ -0,0 +1,10 @@
+AUX pficommon-1.3.1.0-gcc-4.7.patch 1265 SHA256 3c07461c1dece98c2b86613c62b72691ebed6152d5963c32c0bb76dc50620349 SHA512 9bb02df4886683be46ccc162d2ba9ed975d30ed64f1c32223b3180ae27dae9f5685e27e2ac978939dd9521f94a304275077889a88941e733c237a95235c082cd WHIRLPOOL 89358a27d1dc428df680a810e6d8463ca346dc03a96923d4eb56a5b677f432c9c51b03ac0440a0891944d933c19ae0aa6fe665ac7cbf9906580d17ea1333731d
+AUX pficommon-1.3.1.0-gcc6.patch 11289 SHA256 20d04d9d18c825eaa68718fbfc260259ffc4d93f2576e691b95ca956668da306 SHA512 cec3f6bcce48a5e118c1544980d493a0c379da89e4ccde0dffe5e634f6a20be6d074155fa29954edcbadae1f8a3b2c8ca6dd52ce44fc617ac8dfe346b8859423 WHIRLPOOL c1505e70f7c27561b916ba37674bad91e874bcdac02cba60287a129dade646de9ae1930f9963a4361943c2a8d4420540fdd4e785334d0bc27cfbfed98f3f7392
+AUX pficommon-1.3.1.0-libdir.patch 1171 SHA256 f087be6c7fed08894d2ceccb6c9058017275c5eea414c87a732337850e79ee10 SHA512 bac09b89992bc171e30607c4c3a59467d780d151b8135217bdaa76d852988adeed10cda7506b876b6481261193d5a9c0a80e7405ba4073786577b423f5c3e0dc WHIRLPOOL c250dc465eafbc0e0399be3cd9c2b48dd9e585382575e0c11abd642ac359b6a5dbb649535e2d084929f97a74f03b4844d4fad9e27ef4ca5dfa4a604e481e38b2
+AUX pficommon-1.3.1.0-postgresql.patch 613 SHA256 a5ba8f00172d66fd5a5769af651f4eb1f7ef53276d0cb874bbbb1a5a4ca4d03e SHA512 9fe2f56f076d9b04fbfed4964d2e5884f793c2b1a3b6e0f37391a34eaf40a0274fdd0243c93fc9a44c6be6d0071b4381fca0dc6cd19546234f36f649d1c6357f WHIRLPOOL 91246185b4acbfc25417ae192becbb4c2a71cb0a020407f28c8f6b4cec2f6c5c9925a4ae7c04299af8fae31666c42c972da56b9bcea88cc04d7bcd630b16d2df
+AUX pficommon-1.3.1.0-soname.patch 6221 SHA256 f809eb7db7a6ebe18cfe48bfb24945e52aaf07658276227018cdc10e7e537ec2 SHA512 36b9a3dc3b081fc7f85e4275532deb377963b5e70ce92027c3c013465a96b2da6b228ba79e8d87bd2c93d1efeb183185562e27656da4a4f05fbf15219adb568a WHIRLPOOL 9c67e17d498691a33068334942675bc0c716c68d3bc7b2187c0167eafcc522eca7c72909c0e6e2a0f7ce275a1bb34595aff2c7737ee1f91c87e34b874b02e11b
+DIST pficommon-1.3.1.0.tar.gz 441406 SHA256 4b644f38825f939e3c9e3649af4a35fee00ea7343dd7711770c6ec713be859c0 SHA512 95ef445c2f004c0921bdcae7ee50fc3a744d4960f9bc76c13254394c4ae41fad11ea200002b9fde3e099ef509ffe9ba9ea21d69ba1123699ab3338d7afbcf420 WHIRLPOOL 00d8c92c1a8bd4ee80167eb0032e97b327ee40bad41b18e6567da90a1462f431c22e75a0b02568bac6686e693a954ef2ff5628225f81b88397727e789395c4fc
+EBUILD pficommon-1.3.1.0.ebuild 1356 SHA256 81bfc88cc03cb6bdd0b22714957fb201caebbc05c9ffa6a53bec3e2e29239fc7 SHA512 e0afa58fc14c40726882b72ffa288d581e7b77475c6c6928eb743e41a7cf2e869c0e44ce7537ea8f9bb21238d0e1a6192f97388104e11a6e726e0e64dc2ac284 WHIRLPOOL 8e6a33bdef5910ee524c24311dd7680dda4f4f4be29a386e7fe7b789504ca739e36f828990125a699aa971e728143f9cdff3044810660f32cca2b04d457e99e6
+MISC ChangeLog 2354 SHA256 bf8816be3ff83938a0e3ca596ad569e687fa9def7e83ac34bd611293a0b908e1 SHA512 ce492c694d53298d86be97511986597156922eff62282d328adfada39734c28bd39627f85fc03f8ad8e2c5ea0806b1769e5eb2833fb13cf3ea896ec51e070da7 WHIRLPOOL 53435088b8d5776efc225369adeb26950230b9834887601e49fdc74cfd6fd849af2db094955318fd8dc925354b74431518f385783ae596b91412cbbb2ffc0016
+MISC ChangeLog-2015 1232 SHA256 ca45cbf0a230356df0398e6cef93f5b63576790938384932a58d9cb512fc65fb SHA512 e020c7cda04e464ff542668898b4f398cbada8fb62de1b66a63fd1f7a003fb7315e1774f66af96bac90a48a89cbaa233d228dac5e9885e0fb82fc9a72abe4971 WHIRLPOOL c14aa637597e6f1219e6f7196365ae83bed381bd52634a0e59f5c6ea8a1420cdd6371ba2610f7b979127b5d2baa589040f0a9767a6c58d256825e07a63f14a3b
+MISC metadata.xml 427 SHA256 fbfeafbe0bac77aaed3dbffc4ff23e9a451afbf76110115148fbd4fe2f545a19 SHA512 eff07fc3d7064437d8397fb012e44b213850ef21e3fe54496511139d27c705764912693160a63b1c45722b8947063631e9d839076554fbcba175f27ff34ae141 WHIRLPOOL c3f77bac923bfeae7d863d74af04eecd462b70bfda2ba5aeeb268e327f0a55c8c54fd38b14f232faef3f50fcb3c187dcbb340b3b3563494d0855821f6aa404bb
diff --git a/dev-cpp/pficommon/files/pficommon-1.3.1.0-gcc-4.7.patch b/dev-cpp/pficommon/files/pficommon-1.3.1.0-gcc-4.7.patch
new file mode 100644
index 000000000000..283ef2d7da90
--- /dev/null
+++ b/dev-cpp/pficommon/files/pficommon-1.3.1.0-gcc-4.7.patch
@@ -0,0 +1,50 @@
+From 5669e7ea665323ee774eda9c77206102fa499453 Mon Sep 17 00:00:00 2001
+From: Hideyuki Tanaka <tanaka.hideyuki@gmail.com>
+Date: Mon, 21 May 2012 17:21:34 +0900
+Subject: [PATCH] add include <unistd.h> (for gcc-4.7.0)
+
+---
+ src/network/socket.cpp | 1 +
+ src/system/mmapper.cpp | 1 +
+ tools/genrpc/main.cpp | 1 +
+ 3 files changed, 3 insertions(+)
+
+diff --git a/src/network/socket.cpp b/src/network/socket.cpp
+index b5c50e4..1fba6e6 100644
+--- a/src/network/socket.cpp
++++ b/src/network/socket.cpp
+@@ -40,6 +40,7 @@
+ #include <netinet/in.h>
+ #include <netinet/tcp.h>
+ #include <arpa/inet.h>
++#include <unistd.h>
+
+ #include "dns.h"
+ #include "../system/syscall.h"
+diff --git a/src/system/mmapper.cpp b/src/system/mmapper.cpp
+index 90eb7b8..e963fd8 100644
+--- a/src/system/mmapper.cpp
++++ b/src/system/mmapper.cpp
+@@ -35,6 +35,7 @@
+ #include <sys/stat.h>
+ #include <fcntl.h>
+ #include <sys/mman.h>
++#include <unistd.h>
+
+ #include "syscall.h"
+
+diff --git a/tools/genrpc/main.cpp b/tools/genrpc/main.cpp
+index 100ea4e..3e5ef16 100644
+--- a/tools/genrpc/main.cpp
++++ b/tools/genrpc/main.cpp
+@@ -4,6 +4,7 @@
+ #include <cctype>
+ #include <cstring>
+ #include <cstdio>
++#include <unistd.h>
+ using namespace std;
+
+ #include "../../src/lang/shared_ptr.h"
+--
+1.7.10
+
diff --git a/dev-cpp/pficommon/files/pficommon-1.3.1.0-gcc6.patch b/dev-cpp/pficommon/files/pficommon-1.3.1.0-gcc6.patch
new file mode 100644
index 000000000000..623738389195
--- /dev/null
+++ b/dev-cpp/pficommon/files/pficommon-1.3.1.0-gcc6.patch
@@ -0,0 +1,350 @@
+--- a/src/network/cgi/inserter.cpp
++++ b/src/network/cgi/inserter.cpp
+@@ -50,8 +50,8 @@
+
+ tag_inserter::~tag_inserter()
+ {
+- shared_ptr<tag_elem> elem(new tag_elem(name, attrs));
+- vector<shared_ptr<html_elem> > children=b.leave();
++ pfi::lang::shared_ptr<tag_elem> elem(new tag_elem(name, attrs));
++ vector<pfi::lang::shared_ptr<html_elem> > children=b.leave();
+ for (int i=0;i<(int)children.size();i++)
+ elem->add_child(children[i]);
+ b.push(elem);
+@@ -59,12 +59,12 @@
+
+ text_inserter::text_inserter(const string &text, xhtml_builder &b)
+ {
+- b.push(shared_ptr<html_elem>(new text_elem(text)));
++ b.push(pfi::lang::shared_ptr<html_elem>(new text_elem(text)));
+ }
+
+ prim_inserter::prim_inserter(const string &text, xhtml_builder &b)
+ {
+- b.push(shared_ptr<html_elem>(new prim_elem(text)));
++ b.push(pfi::lang::shared_ptr<html_elem>(new prim_elem(text)));
+ }
+
+ } // cgi
+--- a/src/network/cgi/server.cpp
++++ b/src/network/cgi/server.cpp
+@@ -161,12 +161,12 @@
+ <<", thread-num="<<thread_num
+ <<", timeout="<<ssock->timeout()<<endl;
+
+- ths=vector<shared_ptr<thread> >(thread_num);
+- vector<shared_ptr<cgi, threading_model::multi_thread> > cgis(thread_num);
++ ths=vector<pfi::lang::shared_ptr<thread> >(thread_num);
++ vector<pfi::lang::shared_ptr<cgi, threading_model::multi_thread> > cgis(thread_num);
+
+ for (int i=0; i<thread_num; i++){
+- cgis[i]=shared_ptr<cgi, threading_model::multi_thread>(dynamic_cast<cgi*>(c.clone()));
+- ths[i]=shared_ptr<thread>(new thread(bind(&run_server::process, this, ssock, cgis[i])));
++ cgis[i]=pfi::lang::shared_ptr<cgi, threading_model::multi_thread>(dynamic_cast<cgi*>(c.clone()));
++ ths[i]=pfi::lang::shared_ptr<thread>(new thread(bind(&run_server::process, this, ssock, cgis[i])));
+ if (!ths[i]->start()){
+ ostringstream oss;
+ oss<<"unable to start thread"<<endl;
+@@ -185,7 +185,7 @@
+ ths.clear();
+ }
+
+-static shared_ptr<http::response> gen_resp(stringstream &ss)
++static pfi::lang::shared_ptr<http::response> gen_resp(stringstream &ss)
+ {
+ http::header head(ss);
+
+@@ -210,7 +210,7 @@
+ head.erase("status");
+ }
+
+- shared_ptr<http::response> resp(new http::response(code, reason));
++ pfi::lang::shared_ptr<http::response> resp(new http::response(code, reason));
+
+ head["Content-Type"]=content_type;
+
+@@ -232,10 +232,10 @@
+ }
+
+ void run_server::process(socket_type ssock,
+- shared_ptr<cgi, threading_model::multi_thread> cc)
++ pfi::lang::shared_ptr<cgi, threading_model::multi_thread> cc)
+ {
+ for (;;){
+- shared_ptr<stream_socket> sock(ssock->accept());
++ pfi::lang::shared_ptr<stream_socket> sock(ssock->accept());
+ if (!sock) continue;
+
+ if (ssock->timeout()>0 && !sock->set_timeout(ssock->timeout()))
+@@ -272,7 +272,7 @@
+
+ cc->exec(req.body(), sout, cerr, env);
+
+- shared_ptr<http::response> resp=gen_resp(sout);
++ pfi::lang::shared_ptr<http::response> resp=gen_resp(sout);
+ resp->send(sock);
+ }
+ catch(const exception &e){
+--- a/src/network/http/base.cpp
++++ b/src/network/http/base.cpp
+@@ -61,7 +61,7 @@
+ {
+ }
+
+-void header::read_header(function<bool(string*)> f)
++void header::read_header(pfi::lang::function<bool(string*)> f)
+ {
+ string line, key, val;
+ if (!f(&line))
+@@ -124,7 +124,7 @@
+ return sock->getline(*str, line_limit);
+ }
+
+-header::header(shared_ptr<stream_socket> sock)
++header::header(pfi::lang::shared_ptr<stream_socket> sock)
+ {
+ read_header(bind(&socket_getline, sock.get(), _1, line_limit));
+ }
+@@ -211,7 +211,7 @@
+ return dat.end();
+ }
+
+-void header::send(shared_ptr<stream_socket> sock)
++void header::send(pfi::lang::shared_ptr<stream_socket> sock)
+ {
+ for (int i=0;i<(int)dat.size();i++){
+ string line=dat[i].first+": "+dat[i].second+"\r\n";
+@@ -228,7 +228,7 @@
+ public:
+ typedef C char_type;
+
+- basic_httpbody_chunked_streambuf(shared_ptr<stream_socket> sock)
++ basic_httpbody_chunked_streambuf(pfi::lang::shared_ptr<stream_socket> sock)
+ : sock(sock)
+ , chunk_rest(0)
+ , buf(buf_size)
+@@ -321,7 +321,7 @@
+ iss>>hex>>chunk_rest;
+ }
+
+- shared_ptr<stream_socket> sock;
++ pfi::lang::shared_ptr<stream_socket> sock;
+
+ int chunk_rest;
+
+@@ -334,7 +334,7 @@
+ public:
+ typedef C char_type;
+
+- basic_httpbody_streambuf(shared_ptr<stream_socket> sock, int length)
++ basic_httpbody_streambuf(pfi::lang::shared_ptr<stream_socket> sock, int length)
+ : sock(sock)
+ , rest(length)
+ , buf(T::eof()){
+@@ -359,7 +359,7 @@
+ }
+
+ private:
+- shared_ptr<stream_socket> sock;
++ pfi::lang::shared_ptr<stream_socket> sock;
+
+ int rest;
+ int buf;
+@@ -368,7 +368,7 @@
+ template <class C, class T=char_traits<C> >
+ class basic_httpbody_chunked_stream : public basic_iostream<C,T>{
+ public:
+- basic_httpbody_chunked_stream(shared_ptr<stream_socket> sock)
++ basic_httpbody_chunked_stream(pfi::lang::shared_ptr<stream_socket> sock)
+ : basic_iostream<C,T>()
+ , buf(sock){
+ this->init(&buf);
+@@ -380,7 +380,7 @@
+ template <class C, class T=char_traits<C> >
+ class basic_httpbody_stream : public basic_iostream<C,T>{
+ public:
+- basic_httpbody_stream(shared_ptr<stream_socket> sock, int len)
++ basic_httpbody_stream(pfi::lang::shared_ptr<stream_socket> sock, int len)
+ : basic_iostream<C,T>()
+ , buf(sock, len){
+ this->init(&buf);
+@@ -406,7 +406,7 @@
+ {
+ }
+
+-request::request(shared_ptr<stream_socket> sock)
++request::request(pfi::lang::shared_ptr<stream_socket> sock)
+ : method_("")
+ , uri_("/")
+ , version_(1,1)
+@@ -438,11 +438,11 @@
+
+ // body
+ if (cicmp(header_["Transfer-Encoding"],"chunked"))
+- stream=shared_ptr<iostream>(new basic_httpbody_chunked_stream<char>(sock));
++ stream=pfi::lang::shared_ptr<iostream>(new basic_httpbody_chunked_stream<char>(sock));
+ else if (header_["Content-Length"]!="")
+- stream=shared_ptr<iostream>(new basic_httpbody_stream<char>(sock, lexical_cast<int>(header_["Content-Length"])));
++ stream=pfi::lang::shared_ptr<iostream>(new basic_httpbody_stream<char>(sock, lexical_cast<int>(header_["Content-Length"])));
+ else
+- stream=shared_ptr<iostream>(new socketstream(sock));
++ stream=pfi::lang::shared_ptr<iostream>(new socketstream(sock));
+ }
+
+ request::~request()
+@@ -474,7 +474,7 @@
+ return *stream;
+ }
+
+-void request::send(shared_ptr<stream_socket> sock)
++void request::send(pfi::lang::shared_ptr<stream_socket> sock)
+ {
+ stringstream *ss=dynamic_cast<stringstream*>(stream.get());
+ if (!ss) throw http_exception("body is not stringstream");
+@@ -499,7 +499,7 @@
+ if (sock->flush()>=0)
+ throw http_exception("flush failed");
+ if (dat.length()==0)
+- stream=shared_ptr<iostream>(new socketstream(sock));
++ stream=pfi::lang::shared_ptr<iostream>(new socketstream(sock));
+ }
+
+ response::response()
+@@ -518,7 +518,7 @@
+ {
+ }
+
+-response::response(shared_ptr<stream_socket> sock)
++response::response(pfi::lang::shared_ptr<stream_socket> sock)
+ {
+ // status-line
+ {
+@@ -546,11 +546,11 @@
+
+ // body
+ if (cicmp(header_["Transfer-Encoding"],"chunked"))
+- stream=shared_ptr<iostream>(new basic_httpbody_chunked_stream<char>(sock));
++ stream=pfi::lang::shared_ptr<iostream>(new basic_httpbody_chunked_stream<char>(sock));
+ else if (header_["Content-Length"]!="")
+- stream=shared_ptr<iostream>(new basic_httpbody_stream<char>(sock, lexical_cast<int>(header_["Content-Length"])));
++ stream=pfi::lang::shared_ptr<iostream>(new basic_httpbody_stream<char>(sock, lexical_cast<int>(header_["Content-Length"])));
+ else
+- stream=shared_ptr<iostream>(new socketstream(sock));
++ stream=pfi::lang::shared_ptr<iostream>(new socketstream(sock));
+ }
+
+ response::~response()
+@@ -582,7 +582,7 @@
+ return *stream;
+ }
+
+-void response::send(shared_ptr<stream_socket> sock)
++void response::send(pfi::lang::shared_ptr<stream_socket> sock)
+ {
+ stringstream *ss=dynamic_cast<stringstream*>(stream.get());
+ if (!ss) throw http_exception("body is not stringstream");
+@@ -607,7 +607,7 @@
+ if (sock->flush()>=0)
+ throw http_exception("flush failed");
+ if (dat.length()==0)
+- stream=shared_ptr<iostream>(new socketstream(sock));
++ stream=pfi::lang::shared_ptr<iostream>(new socketstream(sock));
+ }
+
+ } // http
+--- a/src/network/rpc/base.cpp
++++ b/src/network/rpc/base.cpp
+@@ -59,20 +59,20 @@
+ {
+ }
+
+-void rpc_server::add(const string &name, shared_ptr<invoker_base> invoker)
++void rpc_server::add(const string &name, pfi::lang::shared_ptr<invoker_base> invoker)
+ {
+ funcs[name]=invoker;
+ }
+
+ bool rpc_server::serv(uint16_t port, int nthreads)
+ {
+- shared_ptr<server_socket, threading_model::multi_thread> ssock(new server_socket());
++ pfi::lang::shared_ptr<server_socket, threading_model::multi_thread> ssock(new server_socket());
+ if (!ssock->create(port))
+ return false;
+
+- vector<shared_ptr<thread> > ths(nthreads);
++ vector<pfi::lang::shared_ptr<thread> > ths(nthreads);
+ for (int i=0; i<nthreads; i++){
+- ths[i]=shared_ptr<thread>(new thread(bind(&rpc_server::process, this, ssock)));
++ ths[i]=pfi::lang::shared_ptr<thread>(new thread(bind(&rpc_server::process, this, ssock)));
+ if (!ths[i]->start()) return false;
+ }
+ for (int i=0; i<nthreads; i++)
+@@ -80,10 +80,10 @@
+ return true;
+ }
+
+-void rpc_server::process(shared_ptr<server_socket, threading_model::multi_thread> ssock)
++void rpc_server::process(pfi::lang::shared_ptr<server_socket, threading_model::multi_thread> ssock)
+ {
+ for (;;){
+- shared_ptr<stream_socket> sock(ssock->accept());
++ pfi::lang::shared_ptr<stream_socket> sock(ssock->accept());
+ if (!sock) continue;
+ sock->set_nodelay(true);
+
+@@ -139,11 +139,11 @@
+ {
+ }
+
+-shared_ptr<socketstream> rpc_client::get_connection()
++pfi::lang::shared_ptr<socketstream> rpc_client::get_connection()
+ {
+ for (int i=0;i<2;i++){
+ if (!ss || !(*ss)){
+- ss=shared_ptr<socketstream>(new socketstream(host, port));
++ ss=pfi::lang::shared_ptr<socketstream>(new socketstream(host, port));
+ if (!(*ss)){
+ ss.reset();
+ continue;
+@@ -180,7 +180,7 @@
+ return ss;
+ }
+
+-void rpc_client::return_connection(shared_ptr<socketstream> css)
++void rpc_client::return_connection(pfi::lang::shared_ptr<socketstream> css)
+ {
+ ss=css;
+ }
+--- a/src/network/socket.cpp
++++ b/src/network/socket.cpp
+@@ -58,7 +58,7 @@
+ namespace pfi{
+ namespace network{
+
+-shared_ptr<dns_resolver, threading_model::multi_thread> stream_socket::resolver;
++pfi::lang::shared_ptr<dns_resolver, threading_model::multi_thread> stream_socket::resolver;
+ r_mutex stream_socket::resolver_m;
+
+ class sigign{
+@@ -88,7 +88,7 @@
+ close();
+ }
+
+-void stream_socket::set_dns_resolver(shared_ptr<dns_resolver, threading_model::multi_thread> r)
++void stream_socket::set_dns_resolver(pfi::lang::shared_ptr<dns_resolver, threading_model::multi_thread> r)
+ {
+ synchronized(resolver_m)
+ resolver=r;
+@@ -106,10 +106,10 @@
+ return false;
+ }
+
+- shared_ptr<dns_resolver, threading_model::multi_thread> res;
++ pfi::lang::shared_ptr<dns_resolver, threading_model::multi_thread> res;
+ synchronized(resolver_m){
+ if (!resolver)
+- set_dns_resolver(shared_ptr<dns_resolver, threading_model::multi_thread>
++ set_dns_resolver(pfi::lang::shared_ptr<dns_resolver, threading_model::multi_thread>
+ (new normal_dns_resolver()));
+ res=resolver;
+ }
diff --git a/dev-cpp/pficommon/files/pficommon-1.3.1.0-libdir.patch b/dev-cpp/pficommon/files/pficommon-1.3.1.0-libdir.patch
new file mode 100644
index 000000000000..9bd0e4bf560d
--- /dev/null
+++ b/dev-cpp/pficommon/files/pficommon-1.3.1.0-libdir.patch
@@ -0,0 +1,49 @@
+diff --git a/wscript b/wscript
+index dc1866e..c5b800c 100644
+--- a/wscript
++++ b/wscript
+@@ -6,18 +6,21 @@ out = 'build'
+
+ import Options
+ import sys
++import os
+
+ subdirs = 'src tools'
+
+ def options(opt):
+ opt.load('compiler_cxx')
+ opt.load('unittest_gtest')
++ opt.load('gnu_dirs')
+
+ opt.recurse(subdirs)
+
+ def configure(conf):
+ conf.check_tool('compiler_cxx')
+ conf.check_tool('unittest_gtest')
++ conf.check_tool('gnu_dirs')
+
+ conf.env.append_unique(
+ 'CXXFLAGS',
+@@ -28,6 +31,8 @@ def configure(conf):
+ conf.recurse(subdirs)
+
+ conf.define('PFICOMMON_VERSION', VERSION)
++
++ conf.env['VERSION'] = VERSION
+
+ conf.write_config_header('src/pfi-config.h')
+
+@@ -72,11 +77,11 @@ def build(bld):
+ bld(source = 'pficommon.pc.in',
+ prefix = bld.env['PREFIX'],
+ exec_prefix = '${prefix}',
+- libdir = '${prefix}/lib',
++ libdir = bld.env['LIBDIR'],
+ includedir = '${prefix}/include',
+ PACKAGE = APPNAME,
+ VERSION = VERSION)
+
+- bld.install_files('${PREFIX}/lib/pkgconfig', 'pficommon.pc')
++ bld.install_files(os.path.join(bld.env['LIBDIR'], 'pkgconfig'), 'pficommon.pc')
+
+ bld.recurse(subdirs)
diff --git a/dev-cpp/pficommon/files/pficommon-1.3.1.0-postgresql.patch b/dev-cpp/pficommon/files/pficommon-1.3.1.0-postgresql.patch
new file mode 100644
index 000000000000..0bf7096ad94f
--- /dev/null
+++ b/dev-cpp/pficommon/files/pficommon-1.3.1.0-postgresql.patch
@@ -0,0 +1,13 @@
+diff --git a/src/database/wscript b/src/database/wscript
+index 8eca1d0..3916a7d 100644
+--- a/src/database/wscript
++++ b/src/database/wscript
+@@ -20,7 +20,7 @@ def configure(conf):
+ conf.env.BUILD_PGSQL = False
+ if not Options.options.disable_database:
+ try:
+- incdir = subprocess.check_output(['pg_config', '--includedir-server']).decode()
++ incdir = subprocess.check_output(['pg_config', '--includedir-server']).decode('utf-8')
+ libdir = subprocess.check_output(['pg_config', '--libdir']).decode()
+ if conf.check_cxx(lib = 'pq',
+ header_name = 'postgres.h',
diff --git a/dev-cpp/pficommon/files/pficommon-1.3.1.0-soname.patch b/dev-cpp/pficommon/files/pficommon-1.3.1.0-soname.patch
new file mode 100644
index 000000000000..040fb259bc7d
--- /dev/null
+++ b/dev-cpp/pficommon/files/pficommon-1.3.1.0-soname.patch
@@ -0,0 +1,200 @@
+diff --git a/src/concurrent/wscript b/src/concurrent/wscript
+index 5aeb5ab..8700d68 100644
+--- a/src/concurrent/wscript
++++ b/src/concurrent/wscript
+@@ -19,6 +19,7 @@ def build(bld):
+ source = 'thread.cpp mutex.cpp rwmutex.cpp condition.cpp internal.cpp',
+ target = 'pficommon_concurrent',
+ includes = '.',
++ vnum = bld.env['VERSION'],
+ use = 'pficommon_system PTHREAD')
+
+ bld.program(
+diff --git a/src/data/wscript b/src/data/wscript
+index e99c7c3..df47caf 100644
+--- a/src/data/wscript
++++ b/src/data/wscript
+@@ -61,6 +61,7 @@ def build(bld):
+ ],
+ target = 'pficommon_data',
+ includes = incdirs,
++ vnum = bld.env['VERSION'],
+ use = 'pficommon_system')
+
+ def t(src):
+diff --git a/src/database/mysql/wscript b/src/database/mysql/wscript
+index 79d5a23..5407091 100644
+--- a/src/database/mysql/wscript
++++ b/src/database/mysql/wscript
+@@ -7,4 +7,5 @@ def build(bld):
+ source = 'connection.cpp statement.cpp value.cpp',
+ target = 'pficommon_database_mysql',
+ includes = '. ..',
++ vnum = bld.env['VERSION'],
+ use = 'pficommon_concurrent MYSQL')
+diff --git a/src/database/postgresql/wscript b/src/database/postgresql/wscript
+index 9b834f8..5040a69 100644
+--- a/src/database/postgresql/wscript
++++ b/src/database/postgresql/wscript
+@@ -7,4 +7,5 @@ def build(bld):
+ source = 'connection.cpp statement.cpp result.cpp value.cpp',
+ target = 'pficommon_database_postgresql',
+ includes = '. ..',
++ vnum = bld.env['VERSION'],
+ use = 'PGSQL')
+diff --git a/src/database/wscript b/src/database/wscript
+index b491d4f..3916a7d 100644
+--- a/src/database/wscript
++++ b/src/database/wscript
+@@ -44,6 +44,7 @@ def build(bld):
+ t = bld.shlib(
+ source = '',
+ target = 'pficommon_database',
++ vnum = bld.env['VERSION'],
+ use = [])
+
+ if bld.env.BUILD_MYSQL:
+diff --git a/src/lang/wscript b/src/lang/wscript
+index e5538d9..e0ad364 100644
+--- a/src/lang/wscript
++++ b/src/lang/wscript
+@@ -20,6 +20,7 @@ def build(bld):
+
+ bld.shlib(
+ source = 'empty.cpp',
++ vnum = bld.env['VERSION'],
+ target = 'pficommon_lang')
+
+ bld.program(
+diff --git a/src/math/wscript b/src/math/wscript
+index 8e8e271..f855b3a 100644
+--- a/src/math/wscript
++++ b/src/math/wscript
+@@ -14,6 +14,7 @@ def build(bld):
+ bld.shlib(
+ source = 'random/mersenne_twister.cpp',
+ target = 'pficommon_math',
++ vnum = bld.env['VERSION'],
+ includes = '.')
+
+ def t(src):
+diff --git a/src/network/wscript b/src/network/wscript
+index 4b0873c..d5a9aee 100644
+--- a/src/network/wscript
++++ b/src/network/wscript
+@@ -56,11 +56,13 @@ def build(bld):
+ source = 'socket.cpp ipv4.cpp dns.cpp uri.cpp',
+ target = 'pficommon_network_base',
+ includes = '.',
++ vnum = bld.env['VERSION'],
+ use = 'pficommon_concurrent')
+
+ pfin = bld.shlib(
+ source = '',
+ target = 'pficommon_network',
++ vnum = bld.env['VERSION'],
+ use = [
+ 'pficommon_network_base',
+ 'pficommon_network_http',
+diff --git a/src/system/wscript b/src/system/wscript
+index 4068967..a6fc70c 100644
+--- a/src/system/wscript
++++ b/src/system/wscript
+@@ -21,6 +21,7 @@ def build(bld):
+ 'sysstat.cpp',
+ 'mmapper.cpp'],
+ target = 'pficommon_system',
++ vnum = bld.env['VERSION'],
+ includes = '.')
+
+ bld.program(
+diff --git a/src/text/wscript b/src/text/wscript
+index 2cb54df..e18310c 100644
+--- a/src/text/wscript
++++ b/src/text/wscript
+@@ -16,6 +16,7 @@ def build(bld):
+ source = 'xhtml.cpp csv.cpp json/parser.cpp',
+ target = 'pficommon_text',
+ includes = '. json',
++ vnum = bld.env['VERSION'],
+ use = 'pficommon_data pficommon_system')
+
+ bld.program(
+diff --git a/src/util/wscript b/src/util/wscript
+index c971da4..7ed427f 100644
+--- a/src/util/wscript
++++ b/src/util/wscript
+@@ -8,6 +8,7 @@ def build(bld):
+
+ bld.shlib(
+ source = '',
++ vnum = bld.env['VERSION'],
+ target = 'pficommon_util')
+
+ bld(features = 'cxx cprogram gtest',
+diff --git a/src/visualization/wscript b/src/visualization/wscript
+index bf0500a..04469a1 100644
+--- a/src/visualization/wscript
++++ b/src/visualization/wscript
+@@ -27,6 +27,7 @@ def build(bld):
+ v = bld.shlib(
+ source = ['empty.cpp'],
+ target = 'pficommon_visualization',
++ vnum = bld.env['VERSION'],
+ use = [])
+
+ bld.program(
+diff --git a/src/wscript b/src/wscript
+index 8dfd9e8..4af7585 100644
+--- a/src/wscript
++++ b/src/wscript
+@@ -26,6 +26,7 @@ def build(bld):
+ b = bld.shlib(
+ source = 'empty.cpp',
+ target = 'pficommon',
++ vnum = bld.env['VERSION'],
+ use = [
+ 'pficommon_concurrent',
+ 'pficommon_data',
+diff --git a/src/network/cgi/wscript b/src/network/cgi/wscript
+index 29c44fa..1863394 100644
+--- a/src/network/cgi/wscript
++++ b/src/network/cgi/wscript
+@@ -47,6 +47,7 @@ def build(bld):
+ source = 'base.cpp xhtml_cgi.cpp xhtml_builder.cpp inserter.cpp cgi.cpp server.cpp util.cpp',
+ target = 'pficommon_network_cgi',
+ includes = '. ..',
++ vnum = bld.env['VERSION'],
+ use = 'pficommon_text pficommon_concurrent pficommon_network_http PTHREAD')
+
+ if bld.env.BUILD_FCGI:
+diff --git a/src/network/http/wscript b/src/network/http/wscript
+index 7e2bbbe..dbfe480 100644
+--- a/src/network/http/wscript
++++ b/src/network/http/wscript
+@@ -14,4 +14,5 @@ def build(bld):
+ source = 'base.cpp',
+ target = 'pficommon_network_http',
+ includes = '. ..',
++ vnum = bld.env['VERSION'],
+ use = 'pficommon_network_base')
+diff --git a/src/network/mprpc/wscript b/src/network/mprpc/wscript
+index 940bdd4..0e093f6 100644
+--- a/src/network/mprpc/wscript
++++ b/src/network/mprpc/wscript
+@@ -21,4 +21,5 @@ def build(bld):
+ 'socket.cpp'
+ ],
+ target = 'pficommon_network_mprpc',
++ vnum = bld.env['VERSION'],
+ use = 'pficommon_concurrent pficommon_network_base MSGPACK')
+diff --git a/src/network/rpc/wscript b/src/network/rpc/wscript
+index 74c006c..46121d6 100644
+--- a/src/network/rpc/wscript
++++ b/src/network/rpc/wscript
+@@ -17,4 +17,5 @@ def build(bld):
+ source = 'base.cpp',
+ target = 'pficommon_network_rpc',
+ includes = '. ..',
++ vnum = bld.env['VERSION'],
+ use = 'pficommon_network_base pficommon_concurrent pficommon_system')
diff --git a/dev-cpp/pficommon/metadata.xml b/dev-cpp/pficommon/metadata.xml
new file mode 100644
index 000000000000..0f0b8821e971
--- /dev/null
+++ b/dev-cpp/pficommon/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>naota@gentoo.org</email>
+ </maintainer>
+ <use>
+ <flag name="fcgi">Build FCGI feature</flag>
+ <flag name="mprpc">Build MessagePack RPC feature</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">pfi/pficommon</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/pficommon/pficommon-1.3.1.0.ebuild b/dev-cpp/pficommon/pficommon-1.3.1.0.ebuild
new file mode 100644
index 000000000000..db9afe674b6f
--- /dev/null
+++ b/dev-cpp/pficommon/pficommon-1.3.1.0.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+PYTHON_COMPAT=( python2_7 )
+PYTHON_REQ_USE='threads(+)'
+inherit python-any-r1 waf-utils eutils
+
+DESCRIPTION="General purpose C++ library for PFI"
+HOMEPAGE="https://github.com/pfi/pficommon"
+SRC_URI="https://github.com/pfi/pficommon/tarball/${PV} -> ${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="fcgi imagemagick mprpc mysql postgres test"
+
+RDEPEND="fcgi? ( dev-libs/fcgi )
+ imagemagick? (
+ media-libs/lcms
+ media-gfx/imagemagick[cxx]
+ sys-devel/libtool
+ )
+ mprpc? ( dev-libs/msgpack )
+ mysql? ( virtual/mysql )
+ postgres? ( dev-db/postgresql )
+ "
+DEPEND="${RDEPEND}
+ ${PYTHON_DEPS}
+ test? ( dev-cpp/gtest )"
+
+src_unpack() {
+ unpack ${A}
+ mv pfi-pficommon-* "${S}"
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-libdir.patch \
+ "${FILESDIR}"/${P}-soname.patch \
+ "${FILESDIR}"/${P}-postgresql.patch \
+ "${FILESDIR}"/${P}-gcc-4.7.patch \
+ "${FILESDIR}"/${P}-gcc6.patch
+}
+
+src_configure() {
+ if use fcgi; then
+ myconf="${myconf} --with-fcgi=/usr"
+ else
+ myconf="${myconf} --disable-fcgi"
+ fi
+ use imagemagick || myconf="${myconf} --disable-magickpp"
+ use mprpc || myconf="${myconf} --disable-mprpc"
+ if ! use mysql && ! use postgres; then
+ myconf="${myconf} --disable-database"
+ fi
+ waf-utils_src_configure ${myconf}
+}
diff --git a/dev-cpp/picojson/Manifest b/dev-cpp/picojson/Manifest
new file mode 100644
index 000000000000..b5e496364319
--- /dev/null
+++ b/dev-cpp/picojson/Manifest
@@ -0,0 +1,4 @@
+DIST picojson-1.3.0.tar.gz 14695 SHA256 056805ca2691798f5545935a14bb477f2e1d827c9fb862e6e449dbea22801c7d SHA512 76d5a6b3b9e1151198eee707faffcbbba28a2842daccf03d99a5d02ae017f9517ef3ac9da4acc74a4fc1357feaf19e14a15c34698a1d4cb65acb6d23b566b284 WHIRLPOOL 6712331107e5900c68db49f0eab9c18333717ea7e2fe407c684b8c0bb88616665664b995107772056179d4254fb3dde510858f623c76b8b9c3b9bd768043c19c
+EBUILD picojson-1.3.0.ebuild 579 SHA256 c34abcc6e2433afd550f89f031e50a6103b0bf657985a255d72e0811e9a2b79f SHA512 e4c2b6049ecfcb38e091f86971191fa0ef38dde1a59bca8fcdf12f791c4b5d3a5ef66efb9fc83dae9ccfacf66087525cd002d807884e9fed78cf8def85767814 WHIRLPOOL e7ba349f576a3cecdeb9dd1aef99fa2e71f19b4155b2dff214474df932ae9122306d4ed2215354cc32d2eb544f8523c640c685627060bf0654b90f3717b477fc
+MISC ChangeLog 381 SHA256 6f9e1d3d3df83986ee71917ca88b49c670b095bb78f693b092da0b9413a9cf2a SHA512 c6528a772e477d4ef4059e8cec6bf5693d4a67a005543cefaaeacbb9078c64eeb1dc81d8d0a0addbaf780606852acaaf167b07e1fcff5a3932072c082054054c WHIRLPOOL de5b8c7a5f4e6cfac7d9a25b7e8d36119a2b6b006f47a64f8612c67a9be4524b6d22e082a30d28044d505f4329c9af8d4f4dda7b3bb8c26de306027964a1c3ad
+MISC metadata.xml 329 SHA256 a57be0b138af43b9222a1a13b26bc6f58ab0c79ec90ea7c4b6753c4b0f1f9484 SHA512 ea66781bd303f0c8983771231d8038342bdfc30d80b1a55f4d93b7a1ad87f4b0eb62a65d6c18a6c2a9f9e5efbc7ec74bff59e77966ca55c7965753e9a7fc1054 WHIRLPOOL 214028bfd40da6a9da55e6052e9f967804309f7af9ce6525a5b31421b38ff066cfabf46f6b7791e1365ae96aef90d7f4e2f6705293e5ae2934a39925d3a33a72
diff --git a/dev-cpp/picojson/metadata.xml b/dev-cpp/picojson/metadata.xml
new file mode 100644
index 000000000000..63a2504e7c68
--- /dev/null
+++ b/dev-cpp/picojson/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>aballier@gentoo.org</email>
+ <name>Alexis Ballier</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">kazuho/picojson</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/picojson/picojson-1.3.0.ebuild b/dev-cpp/picojson/picojson-1.3.0.ebuild
new file mode 100644
index 000000000000..c37f0c8e81e2
--- /dev/null
+++ b/dev-cpp/picojson/picojson-1.3.0.ebuild
@@ -0,0 +1,32 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit toolchain-funcs
+
+DESCRIPTION="Header-file-only, JSON parser serializer in C++"
+HOMEPAGE="https://github.com/kazuho/picojson"
+SRC_URI="https://github.com/kazuho/picojson/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+src_compile() {
+ :
+}
+
+src_test() {
+ tc-export CXX
+ emake test
+}
+
+src_install() {
+ emake DESTDIR="${D}" prefix="${EPREFIX}/usr" install
+ dodoc README.mkdn Changes
+}
diff --git a/dev-cpp/pngpp/Manifest b/dev-cpp/pngpp/Manifest
new file mode 100644
index 000000000000..703b65cc2f0d
--- /dev/null
+++ b/dev-cpp/pngpp/Manifest
@@ -0,0 +1,6 @@
+AUX pngpp-0.2.9-DESTDIR.patch 379 SHA256 28eafc505bc74cf292f3f3e49deabf9e2d6f322f555cc81da1a47dd69406ce86 SHA512 21ec246b271d3715960cad9f57613aae35647d0d427d73dfb8cf847252d5dff5b53b02fd57fe76709be5f3dbd2ef9711a8d70cf3bb2ffde70e0c0f05ecbd37eb WHIRLPOOL 40b757762355fda3f367314bd6c2d519a4c38230ca1cf9cc4df15c5856f03274b1a394a35d794406a0ce06a26b8ea69b931713039c1d76ecf7cd950f8c5d7a0a
+DIST png++-0.2.9.tar.gz 592770 SHA256 abbc6a0565122b6c402d61743451830b4faee6ece454601c5711e1c1b4238791 SHA512 905e037faf26eef9ca1d9508471dde9f480f41a87d72133057865078b2fd040b1cf84727ece48d79117d615fdfbc0a749fec7dbe362366763e2017865a7fe132 WHIRLPOOL 1e49a62d4ae7fc8eb2fa031310f92a77348a55e1f33db63c315f8bc785208cb11818e21d0d7fedd4ace0bfcde1194c43ab844d0408de9f01a108202d35ff0c3d
+EBUILD pngpp-0.2.9.ebuild 669 SHA256 06e07bf2e828d24439024546f593f2ec51567ca136fa49e4f93bd6a448cb7034 SHA512 e0c897e3cf3caca80e1bfd98c3bb6ed0762b86842cc3f23ae7531c7e292fc8f835214d6d58535dbd8afc620b5344f4348a13ae388a31f0e26eec9310b37e2dc4 WHIRLPOOL 2ab4ce5f90856446e7c9e4399d7c1cba606626136d6fa6f349cfc377bfe6ed820c4c74a7c72f62881ae0d005f48b1a578a752cc442f405ae0fb1e31e091b055e
+MISC ChangeLog 2651 SHA256 96e5a6367dd80624e3eb3331ffcfaad31f635270a135ccd9e84cb002fbe4a8cb SHA512 674b4249bab226d06b4731aaf956000ead567287a30f1164eec871f9879e6cecead0fd0be34ab1cdec8dc051a5691589309c7251ffb1dfca4b832b2c52fccb5e WHIRLPOOL 8c467863618eb65315b9c8c9043b84be35e3a26c9180d978710f4ec8aba0e36f225559fd28c1263dd481da6693327f63223e427bac49c2b9ad2fde9a36e696de
+MISC ChangeLog-2015 558 SHA256 d5da460ff438025a9947566c6166cac356a0d153421442f9fa62c230d4dc6490 SHA512 c3dd3a24f30e485f1f87dde89b54652d7c9079a2d4fb81ca47d78c2ebf7ecf7f6ee722bef4c15399bb33853bfbbfad01f0e8399807a9ac05fec6a64c19169a43 WHIRLPOOL d8f9b11616d27044d4b0c1a4921fdfe497efeb569e3002fa7fafd490586491d1a286af63e300e54d1520fe8f947744bdaf267daf0574198275bd40c4a607b536
+MISC metadata.xml 361 SHA256 282eaa6f1632533c6fc86c474e68dcfe313c3fa65793530e27ec389c49d58183 SHA512 12569f0d3772bc306792160436a2c025f275e410744efba50728e6b925295f80529929e97f9a6b65a97915dd8bdb2561874537b0bf24cdb583159f5053128275 WHIRLPOOL 28173aa23dac71db5552baf99ce7b8d0f5f5321ff92ae9a5f5e7430741d8afb39bb438953945c2236d28bc8877060c898686e0bf140717f87709418160de4aa2
diff --git a/dev-cpp/pngpp/files/pngpp-0.2.9-DESTDIR.patch b/dev-cpp/pngpp/files/pngpp-0.2.9-DESTDIR.patch
new file mode 100644
index 000000000000..ee9b29ef7558
--- /dev/null
+++ b/dev-cpp/pngpp/files/pngpp-0.2.9-DESTDIR.patch
@@ -0,0 +1,15 @@
+Build system does not honour $(DESTDIR)
+
+--- a/Makefile
++++ b/Makefile
+@@ -54,8 +54,8 @@
+ uninstall: uninstall-headers uninstall-docs
+
+ install-headers:
+- mkdir -p $(PREFIX)/include/png++
+- cp $(headers) $(PREFIX)/include/png++
++ mkdir -p $(DESTDIR)$(PREFIX)/include/png++
++ cp $(headers) $(DESTDIR)$(PREFIX)/include/png++
+
+ uninstall-headers:
+ rm -rf $(PREFIX)/include/png++
diff --git a/dev-cpp/pngpp/metadata.xml b/dev-cpp/pngpp/metadata.xml
new file mode 100644
index 000000000000..5ea2520054ed
--- /dev/null
+++ b/dev-cpp/pngpp/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>graphics@gentoo.org</email>
+ <name>Gentoo Graphics Project</name>
+</maintainer>
+<maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+</maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/pngpp/pngpp-0.2.9.ebuild b/dev-cpp/pngpp/pngpp-0.2.9.ebuild
new file mode 100644
index 000000000000..4e013690de88
--- /dev/null
+++ b/dev-cpp/pngpp/pngpp-0.2.9.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+MY_P=${P/pp/++}
+
+DESCRIPTION="A simple but powerful C++ interface to libpng"
+HOMEPAGE="http://www.nongnu.org/pngpp/"
+SRC_URI="mirror://nongnu/${PN}/${MY_P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+RDEPEND="media-libs/libpng:0"
+DEPEND=""
+
+S=${WORKDIR}/${MY_P}
+
+PATCHES=( "${FILESDIR}"/${PN}-0.2.9-DESTDIR.patch )
+
+src_compile() { :; }
+src_test() { :; }
+
+src_install() {
+ emake DESTDIR="${D}" PREFIX="${EPREFIX}"/usr install-headers
+ einstalldocs
+
+ docinto examples
+ dodoc example/*.cpp
+ docompress -x /usr/share/doc/${PF}/examples
+}
diff --git a/dev-cpp/pstreams/Manifest b/dev-cpp/pstreams/Manifest
new file mode 100644
index 000000000000..0be15134a629
--- /dev/null
+++ b/dev-cpp/pstreams/Manifest
@@ -0,0 +1,15 @@
+DIST pstreams-0.7.0.tar.gz 55536 SHA256 dc3850460a2ba7ff17969969e202d2c4241d250a1383b8093c961118e0b631bb SHA512 287a7503f25ad70c477b51f7c4af4c54947c1abc6c213371cdc7fc4ccdc20bf79b51959c0b482ae2fa9354e529036b2b53ca8ae5cbf8cd82ad43054856e5e00d WHIRLPOOL 884e363a5f61b45f06e277675a6c4195d9cf85d4e30d7de70099b2969311fb689061f233efcc3248e3ea2b84090102c0825729c8ff843e47066da7a030664883
+DIST pstreams-0.8.1.tar.gz 58588 SHA256 b60d2e9b7466a27c43911de09311ab1936c09b9f48039347b2a430e91871dd7a SHA512 edb6fa30e0a77c4a83bbb7a15c427376d39d73db17112cc5888c404fa1e99407c42c09c9ca072027ac52c753071fb7d7333237bd49aa44488512ce64de22d8f3 WHIRLPOOL aebc0e6808ecc1255a6c5ca7bca38fe40ba192367ac0d7695bb8c2eb31f7cd3257b616d4b73c17f67a6b94623a02a5e16a073fc9129acc04b130c9af3fbba0e7
+DIST pstreams-1.0.0.tar.gz 68207 SHA256 7d24e35d26675a8d474afb45cd88694b0b9e39f01107e4ec200b1f7eb9d215f9 SHA512 172ce79431d00d9fd17af610dfb41580a522480265d58531413da1cd950caa00d5cdb8ee12e2888cfa8b93e475cdf8946be9dcc3d02cbda7eba0034e66566b56 WHIRLPOOL 95f51447f025a36c78ec4e3459fa4bd0cca194c259ee5b78e088e5821e0ea48cbaf9cdbad5cb96ecfe9e3b446009f3c673dc3fe907498b00a2fce09077e0579b
+DIST pstreams-1.0.1.tar.gz 66188 SHA256 a5f1f2e014392cd0e2cdb508a429e11afe64140db05b7f0a83d7534faa1a9226 SHA512 279f758a4aeba124227e3de07e202f6cd838bfca4f34829a446f2f20cf426bd404f28960b881f810b5f2038e3946d38174ca09e6a07d5dacc0501f41746245e6 WHIRLPOOL 5558583a3d0732de2b1b7a235d4c46317993e01f4e0522653e51c05399c2544681e94b12e223edf06b516b4ed9766c7f55116caea2c15f01c01ecc4d51176644
+DIST pstreams-docs-0.7.0.tar.gz 102315 SHA256 e6894752ee59a9a7b09b3fdab13ceec7f67b73418485f20cde62f4e845194e7b SHA512 d7bccd0e2c83c694ff0c9ddc3ae173b4bdbae19f95c42dcc398e6dab25ea4076fda154ed84bc9b9f2872e468ad60f61a3cb20795b0c17e4bc297e4f425139f75 WHIRLPOOL 063faa1fb78abe87ac828b15b278c01362ce8b1c5459c342a2e5556eeb9c38b8b2e010c5b59ecf03e300dcaa5be04b2e1e562bd7dd9fddd92a252944734e5e05
+DIST pstreams-docs-0.8.1.tar.gz 169559 SHA256 6325a97aacf079f15c535fe9cb8871af06be465f3a1324f341401c8ecea1ba35 SHA512 4b42950831bb9a092ca5eeadceded57888306f6ed24d2bd6c486b890d38b42e241f4430a7411a182d5d59b01a1fe0972d3816ec9510c9e2e50812cf390bc68be WHIRLPOOL 6709631b0aa99f99195b69e9ae8ded7bfec9e8809a16d146c6600e3884881b1a44bdf2158a2c6491ccd0fbe2d6f01ebda245778247656fb05e8cb57b0ad5a8e8
+DIST pstreams-docs-1.0.0.tar.gz 174207 SHA256 2c41135daea79a8d3cef1ae43f14cd08404a45e94b169b3bf85074896c238677 SHA512 44ad649bec3e9b02a52eb9c942842f19700cd3ebb4d7de47dd7887106ab07ab456b477815c90377dd0d92724f6144b88c4a9be89328921a675a4f263d40d4872 WHIRLPOOL c58c45bb8e7ab2b589a2f8980e081a14fd349dbe8a3e5b9f35c93974afbb819a99323e49642749376a023d72ad7cf28ded4b7fd76a3ec8f540a569503414f943
+DIST pstreams-docs-1.0.1.tar.gz 178382 SHA256 82e9f35b7233dc8a4f2355bab48037e6b4cb85e989e43fd146cb4dc043923bde SHA512 e645cb3d1c20cc0c717d03aa24e500489452d0880af0feddcf234e713878159b22a891ec04a66f0aad6988e71418a224a4ba66064e6a83578ecf957d9af167e2 WHIRLPOOL 8c51f4b91555d794fb39ad0bf22af474cbc74a18178607e8cc842905f829f7761099784786ce4bf02609a7b6864dbb63716ea871d40844522891d214b391100d
+EBUILD pstreams-0.7.0.ebuild 758 SHA256 b5a523d3c37378ba1b32754251852c66e03c9088fe4c88c83891b2c59ffedae2 SHA512 43704c358bd300189124cd014ff5bb57f4aa553edccf9821adf2588de2ebc2e0c8acdf7a8c6e826e70745b86d6ed372ef3132735b82702e1867cbca261a15911 WHIRLPOOL ddc2cb8cfb4086cc17c5c74e05457b03e3b2b7af80b567c69b67a6d2417484676420847b0a6e3656cf5524a5eb49ac347ae0a38445d1a03f5d253b730cda7171
+EBUILD pstreams-0.8.1.ebuild 758 SHA256 ae24ba169cb5fba2fd2cb909de7642bea8b443abbeb8fc4b487c70b2fbcd27dd SHA512 4ba61680ada14faa2d546ff15bdaa24c1fb55ceca366e53a7455ff5ef91185e1261ad596b9a4e801fccc4a8bf1551164e6287b2fb12f5d1107a9932351e733b7 WHIRLPOOL 00c5d3affeb95b93a3a4e87f603e127820e2afb4ce8f7b37f02ae1248d3f849098b7dcddd9dc7dd409a4b09034fa9e8d138eaa78052ee83f760d329d64dc1e5c
+EBUILD pstreams-1.0.0.ebuild 758 SHA256 86d8110281e1442069589e43308c758f3b7a56b738a872402c2e92922272487a SHA512 a350436666258454825946514bb132addde5a933993391b1ab6d5943066d3421977a8e2965a37eb9235991e59a3c40840ac14a8637fd8477c20087b767d5e7af WHIRLPOOL 2a4e30cbe010e41f5ce7a896109b01b52a9f2143b3d287bc31b7a0b915d7d41de1191c5f1acad1eae9a7e71c86a8270842b0d5c626cb39b411b4fe79d3dc081e
+EBUILD pstreams-1.0.1.ebuild 758 SHA256 44297dab83ed9b8e8252178c8c15850c071a9b2a90937689afce95d86f549ef0 SHA512 db3174c8ee41bf0ed26a1392579dcb5bb4c09526f5b3fb34688eee90c8f7a69e684b77b0bd64c5500da34ca89752a77a3308bbd461d9af0a9203617b9ea611e9 WHIRLPOOL 862bf38aa2312cd5c300121c3edd6fc7ccd6875b9f261f7b460c8423a248f385314c92cc5b004f5bd5afcf27a974b8ace1f00b70cb2f6f2d9100c31d0070807d
+MISC ChangeLog 2785 SHA256 062e920c7e98673a828ffbc0633cce16d6790ab8f0bbfd2e8d1bbc091ec76507 SHA512 998dae5765355ef44febdd50cc1c20333d7f098467308a48cf2a788ee3bece113a3a934c4e97fc4ab6e6221d5d255c81a144df782d338745fafcb6c421b12442 WHIRLPOOL 667c14e157e5d6720386d7c645e35e1121fbf7c06289b730d325fa650567bfd78a3f602d03a5ee5d1c0996defbb116bc6ebd7fa79ebd3fd8c78b948b1f72a0ec
+MISC ChangeLog-2015 943 SHA256 03e0fabf55f53a072308ca20ce27f23fef95166cfbdac6b50a89ea9e9555d121 SHA512 5ebc5d014c6b0d8523c95615b1133dc6f8489c63cf8714412e59615d3721a447628d925187ac3c2ab76fe72e690781fb92abb63b9f625d316eed377380b6fdb9 WHIRLPOOL 640dafb5f968be4055d6c0e9eebc82f0386a9236d430a1e3679c2cf5781a529be57ef0e9e64aa82b7ba374d00a22e3494d115685b03753a9947791cc13e4ea00
+MISC metadata.xml 337 SHA256 f493081cf8cd0de2f9196f95c530a41c6ce6fae1217f04c2d0e6b311733449eb SHA512 ddcd30a829ddd52638e7ea4ff45a8050471f21f532f8d7cb7325346f1e81547ba7bc32d51fbae7fc0dbcf04f310be6cc0049941753191a0cee03a976163d6695 WHIRLPOOL 4f36618f5b97fef0d8d175d8608a84ba9ab7d055545acbe40d1afd059aeb191c5a841cfe50fbaeb886eaf624c297910983c0f0873ed3340b78cbcee8a18ec86c
diff --git a/dev-cpp/pstreams/metadata.xml b/dev-cpp/pstreams/metadata.xml
new file mode 100644
index 000000000000..29e9bab56dcb
--- /dev/null
+++ b/dev-cpp/pstreams/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>printing@gentoo.org</email>
+ <name>Gentoo Printing Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">pstreams</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/pstreams/pstreams-0.7.0.ebuild b/dev-cpp/pstreams/pstreams-0.7.0.ebuild
new file mode 100644
index 000000000000..af6b1a5645d6
--- /dev/null
+++ b/dev-cpp/pstreams/pstreams-0.7.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit toolchain-funcs
+
+DESCRIPTION="C++ wrapper for the POSIX.2 functions popen(3) and pclose(3)"
+HOMEPAGE="http://pstreams.sourceforge.net/"
+SRC_URI="
+ mirror://sourceforge/${PN}/${P}.tar.gz
+ doc? ( mirror://sourceforge/${PN}/${PN}-docs-${PV}.tar.gz )"
+
+SLOT="0"
+LICENSE="LGPL-3"
+IUSE="doc"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND=""
+DEPEND="doc? ( app-doc/doxygen )"
+
+src_compile() {
+ if use doc; then
+ doxygen -u || die
+ emake
+ fi
+}
+
+src_test() {
+ emake \
+ CXX="$(tc-getCXX)" \
+ CXXFLAGS="${CXXFLAGS}" \
+ check
+}
+
+src_install() {
+ doheader pstream.h
+
+ dodoc AUTHORS ChangeLog README
+
+ use doc && dohtml -r "${WORKDIR}"/${PN}-docs-${PV}/*
+}
diff --git a/dev-cpp/pstreams/pstreams-0.8.1.ebuild b/dev-cpp/pstreams/pstreams-0.8.1.ebuild
new file mode 100644
index 000000000000..ce0945609167
--- /dev/null
+++ b/dev-cpp/pstreams/pstreams-0.8.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit toolchain-funcs
+
+DESCRIPTION="C++ wrapper for the POSIX.2 functions popen(3) and pclose(3)"
+HOMEPAGE="http://pstreams.sourceforge.net/"
+SRC_URI="
+ mirror://sourceforge/${PN}/${P}.tar.gz
+ doc? ( mirror://sourceforge/${PN}/${PN}-docs-${PV}.tar.gz )"
+
+SLOT="0"
+LICENSE="LGPL-3"
+IUSE="doc"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND=""
+DEPEND="doc? ( app-doc/doxygen )"
+
+src_compile() {
+ if use doc; then
+ doxygen -u || die
+ emake
+ fi
+}
+
+src_test() {
+ emake \
+ CXX="$(tc-getCXX)" \
+ CXXFLAGS="${CXXFLAGS}" \
+ check
+}
+
+src_install() {
+ doheader pstream.h
+
+ dodoc AUTHORS ChangeLog README
+
+ use doc && dohtml -r "${WORKDIR}"/${PN}-docs-${PV}/*
+}
diff --git a/dev-cpp/pstreams/pstreams-1.0.0.ebuild b/dev-cpp/pstreams/pstreams-1.0.0.ebuild
new file mode 100644
index 000000000000..c6e500fabd86
--- /dev/null
+++ b/dev-cpp/pstreams/pstreams-1.0.0.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit toolchain-funcs
+
+DESCRIPTION="C++ wrapper for the POSIX.2 functions popen(3) and pclose(3)"
+HOMEPAGE="http://pstreams.sourceforge.net/"
+SRC_URI="
+ mirror://sourceforge/${PN}/${P}.tar.gz
+ doc? ( mirror://sourceforge/${PN}/${PN}-docs-${PV}.tar.gz )"
+
+SLOT="0"
+LICENSE="LGPL-3"
+IUSE="doc"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND=""
+DEPEND="doc? ( app-doc/doxygen )"
+
+src_compile() {
+ if use doc; then
+ doxygen -u || die
+ emake
+ fi
+}
+
+src_test() {
+ emake \
+ CXX="$(tc-getCXX)" \
+ CXXFLAGS="${CXXFLAGS}" \
+ check
+}
+
+src_install() {
+ doheader pstream.h
+
+ dodoc AUTHORS ChangeLog README
+
+ use doc && dohtml -r "${WORKDIR}"/${PN}-docs-${PV}/*
+}
diff --git a/dev-cpp/pstreams/pstreams-1.0.1.ebuild b/dev-cpp/pstreams/pstreams-1.0.1.ebuild
new file mode 100644
index 000000000000..4d10c3e1bf66
--- /dev/null
+++ b/dev-cpp/pstreams/pstreams-1.0.1.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit toolchain-funcs
+
+DESCRIPTION="C++ wrapper for the POSIX.2 functions popen(3) and pclose(3)"
+HOMEPAGE="http://pstreams.sourceforge.net/"
+SRC_URI="
+ mirror://sourceforge/${PN}/${P}.tar.gz
+ doc? ( mirror://sourceforge/${PN}/${PN}-docs-${PV}.tar.gz )"
+
+SLOT="0"
+LICENSE="LGPL-3"
+IUSE="doc"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND=""
+DEPEND="doc? ( app-doc/doxygen )"
+
+src_compile() {
+ if use doc; then
+ doxygen -u || die
+ emake
+ fi
+}
+
+src_test() {
+ emake \
+ CXX="$(tc-getCXX)" \
+ CXXFLAGS="${CXXFLAGS}" \
+ check
+}
+
+src_install() {
+ doheader pstream.h
+
+ dodoc AUTHORS ChangeLog README
+
+ use doc && dohtml -r "${WORKDIR}"/${PN}-docs-${PV}/*
+}
diff --git a/dev-cpp/random123/Manifest b/dev-cpp/random123/Manifest
new file mode 100644
index 000000000000..c45592359869
--- /dev/null
+++ b/dev-cpp/random123/Manifest
@@ -0,0 +1,3 @@
+DIST Random123-1.09.tar.gz 696854 SHA256 cf6abf623061bcf3d17e5e49bf3f3f0ae400ee89ae2e97c8cb8dcb918b1ebabe SHA512 7bd72dffa53ca8d835b4a4cf49171618cd46f4b329d7a09486efaf2e1565c98b80ff05e3bccc244fabd7013f139058511fb2e39399bfe51fd6b68cd9e63da1ac WHIRLPOOL 6c2a220f43ab96b1060109ad552cc2e1dcb4400be8e429d78c0e152d519cd1c32ed4d7e31e7ad971e4a8031385cc9c7c7d8c38424c60931dce7fff969606f32b
+EBUILD random123-1.09-r1.ebuild 569 SHA256 b69b3b136df2ed30495303e3ba412c8857016067753f1a9ee5da3248b9bd3a7c SHA512 5f994ec843d92e13ad98512f3df53c1b8cb3cfd86aac32a1a26bdac775d9975261d8dfcad54678bd740a4d31dff74a956800a1ff71d21bdf8996242fa9cbcb76 WHIRLPOOL a68e1c772bbb34fdc86a0bda7bb12281adb17dbcf7de05ffbbfbf5ce108e981ded2e265d7399daaf6c0d2773772911d6fdff8b694d7ce452f7335ae4f913a01f
+MISC metadata.xml 367 SHA256 ac8d9fb591cb385322c5b19e610391ed7c6df9554f4901b3789e0b0410533d37 SHA512 455c79e8837ba1ed980967e3236d4a0ac0edbd1b88b056a06d715894e03e7fc802079440752e60a06c9ce4acb62fd68d4020a7847a154a14065afd995257f685 WHIRLPOOL 7b8aae6b6e9c08408300de466754b331e1ec556f8dc4fcc11c22069e913d2d600c2b7dc2d9a5ee5de84c472540cc78aeac1b4a3b0abbc92a539cdbbb6ca30c37
diff --git a/dev-cpp/random123/metadata.xml b/dev-cpp/random123/metadata.xml
new file mode 100644
index 000000000000..903883b48f16
--- /dev/null
+++ b/dev-cpp/random123/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>junghans@gentoo.org</email>
+ <name>Christoph Junghans</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>sci@gentoo.org</email>
+ <name>Gentoo Science Project</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/dev-cpp/random123/random123-1.09-r1.ebuild b/dev-cpp/random123/random123-1.09-r1.ebuild
new file mode 100644
index 000000000000..7829ee03cfb7
--- /dev/null
+++ b/dev-cpp/random123/random123-1.09-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DESCRIPTION="library of counter-based random number generators (CBRNGs)"
+HOMEPAGE="https://www.deshawresearch.com/resources_random123.html"
+MY_P="${P^r}"
+SRC_URI="https://www.deshawresearch.com/downloads/download_${PN}.cgi/${MY_P}.tar.gz"
+
+LICENSE="BSD-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_install() {
+ insinto /usr/include/Random123
+ doins -r include/Random123/. examples/uniform.hpp
+}
diff --git a/dev-cpp/rudiments/Manifest b/dev-cpp/rudiments/Manifest
new file mode 100644
index 000000000000..0d65b9122fb7
--- /dev/null
+++ b/dev-cpp/rudiments/Manifest
@@ -0,0 +1,9 @@
+AUX rudiments-0.46-buildsystem.patch 2944 SHA256 4efd30fa3648b37b72ad12835ae2a02f029e80dc942a337ca78a4f08c1ad15fc SHA512 09fcb34274784f6446437060f42f9d4951af19d39f4d0b7ef1c77807f0d9415b1e13d4e4f846f16fddba44ed6482e14bc9ccce0c00f4f805ab5a37a6a2b91c57 WHIRLPOOL 1f227dca2fc184c19bbe96548f06ff15c84641cc8a0b1113251826a931e1fc476dd9d3565032190b458fd71bef4e44fa68497cd60e9ce796bbefeda25b401c7d
+AUX rudiments-0.51-buildsystem.patch 3075 SHA256 c0c2830e066f807b881ea11903740cb0f9f0e9b9c2f9407e652056c578a06fac SHA512 850bae8eb24ded82f3a95ae1602aa0b052f6798f029488cab186b34152af6e0678c99352234bda7fb71d90f879eb54c0f154d089d8411b93ed9e976529ea0fe8 WHIRLPOOL 098e8db72035cea05db9135e2538b28f483dfe6d42855079a4f0ee859366b75aaff93a0ca68d3b00fb626cbd4826c6a090fa5ed4ba70239015336ad25f380a3e
+DIST rudiments-0.46.tar.gz 1732565 SHA256 b59b830af52cdf5a361d73524efa0a7aa2f804011e07bf3855551ad07273d70a SHA512 2248db71c23ced4344dbdd26e9efe8c45f20da2e8e106101c762b334b8797dc62c47621c0477d42ac06fc665aa91b772e959802b10103c6256d1dbc68418f2f1 WHIRLPOOL 96cd3e778dbf2d52dc66b5c9ac02358ffd8409eb1ddc4dca5cb6327d5e962445763e1fea9d32bd01955a248f3391d3873bc48570e77bb2543d4cea9b4171fe15
+DIST rudiments-0.51.tar.gz 1923612 SHA256 635b984d0d2d83c4c598f004cb5ec729796af6c9444f28e49b02e4539e5e7aaa SHA512 e36a93b21f8beb86f58d2e1f4d955d865fc68c40af11462f716e849a476786f99c9264dd5097f7110ef6f44752f113db8b62092a9db2f08d0eb34e861ea85888 WHIRLPOOL 3d4e474ab42c6d4b76fa9d924e87c9d7cb9f91876716a4df9ad5ea3e737b4f8d10053b29466f3457e3ab0ad77ee2df029d851d2264c1e1b99e1a8187fe815f41
+EBUILD rudiments-0.46.ebuild 905 SHA256 4a53d5c45c4d0238c049d6d571bbbbac39ed961d3613a796a0d7d325b4d46285 SHA512 c83fa926b50ffc0a37a57bc1de67aeb5d7ce66e574aebbf148727b609dcbc23c34121a30198673d5e12921f1d9c4f04023aec1511a6d629b3d40da13663ce0a2 WHIRLPOOL d57943a1a5a7d6107626d35d8a7526dc987f8897f2a34c610107890226f9f3ee2503cd7482483d383e9cc21348807fa1efb9e14baa61766856bfd718ad436f04
+EBUILD rudiments-0.51.ebuild 905 SHA256 4a53d5c45c4d0238c049d6d571bbbbac39ed961d3613a796a0d7d325b4d46285 SHA512 c83fa926b50ffc0a37a57bc1de67aeb5d7ce66e574aebbf148727b609dcbc23c34121a30198673d5e12921f1d9c4f04023aec1511a6d629b3d40da13663ce0a2 WHIRLPOOL d57943a1a5a7d6107626d35d8a7526dc987f8897f2a34c610107890226f9f3ee2503cd7482483d383e9cc21348807fa1efb9e14baa61766856bfd718ad436f04
+MISC ChangeLog 2963 SHA256 00470db147def575a7ccf5da6e05698551a74267749e14eb544ccd0fa0d89c5b SHA512 cecb2a615d1c45066e4681f3cba809891fedac53112a24b3f51bd9b5d1ea191702651bfc7538ce92421a48dcb5029fe32c30adb7bb55d742ba70a6d05541235e WHIRLPOOL 2316bcbacea9e38c78bb60d84df5da11d55e64b34e519f7aa23ca612fa1b65b6f0d7dc65145104ce86a503eec7e0e00db94ef801dea681d76c5f841334a86b1a
+MISC ChangeLog-2015 3143 SHA256 1f17680e6068b02976fd551e6ed50be41ceafadcf67ce7bba065527528f443c3 SHA512 ae60d2661d7921d7be948c7906e1893a76d99f7f2d84db541fbfe14c0b4b00da2ff3cd774069f83bba2aa266cd378d82a8ce4c8d1fec782b341be3deeb539b0e WHIRLPOOL b3c44c06f84c4a6ae48ab531fc7dbcf4f8b0af778e052784d7633c8d841b954fc0ce6c461e77c8fb8ba932bbec02daf81b4d0e831b5711fa5c0ef11c28c6d4cd
+MISC metadata.xml 619 SHA256 5109e5e97820795381f13ee6cba03c206fca03d68d4488f63e6da5062cadbbe6 SHA512 55b9ce93ce84412b4ea458bc7ebadc25384a2c34aa27adc9eceaca1a7d5ae4a87bed5de53588eadda26b357f568b368f26cbefcdebf14f809b30af0e5f08746b WHIRLPOOL 86c5062339512c0736ea8b095b71bdf8b9b3cc0a645ec679ae610b1ab2677e0e2a2da1906bc742b21e1c6a38a1a5d05815d6854494c8383e19d74e06207aa121
diff --git a/dev-cpp/rudiments/files/rudiments-0.46-buildsystem.patch b/dev-cpp/rudiments/files/rudiments-0.46-buildsystem.patch
new file mode 100644
index 000000000000..fa869c89144a
--- /dev/null
+++ b/dev-cpp/rudiments/files/rudiments-0.46-buildsystem.patch
@@ -0,0 +1,88 @@
+diff --git a/config.mk.in b/config.mk.in
+index ae29f27..c0b7e3d 100644
+--- a/config.mk.in
++++ b/config.mk.in
+@@ -11,7 +11,7 @@ includedir = @includedir@
+ libdir = @libdir@
+ mandir = @mandir@
+ datadir = @datadir@
+-docdir = ${datadir}/doc/rudiments
++docdir = @docdir@
+
+ # compiler to use
+ CC = @CC@
+@@ -21,7 +21,7 @@
+ AR = @AR@
+
+ # includes and defines
+-BASECPPFLAGS = @WALL@ @WERROR@ @CPPFLAGS@ @PTHREADINCLUDES@ @SSLINCLUDES@ @PCREINCLUDES@
++BASECPPFLAGS = @WALL@ @CPPFLAGS@ @PTHREADINCLUDES@ @SSLINCLUDES@ @PCREINCLUDES@
+
+ # debug and optimization flags (-g, -O2, etc.)
+ # NOTE: -FPIC gets added if we're not using libtool
+diff --git a/configure.ac b/configure.ac
+index d82ea0e..290a80b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -28,7 +28,7 @@ AC_ARG_WITH(pthread-prefix,
+ PTHREADPATH="")
+ AC_ARG_ENABLE(ssl,
+ [ --disable-ssl Disable SSL support],
+- ENABLE_RUDIMENTS_SSL="no",
++ ENABLE_RUDIMENTS_SSL="$enableval",
+ ENABLE_RUDIMENTS_SSL="yes")
+ AC_ARG_WITH(ssl-includes,
+ [ --with-ssl-includes SSL includes],
+@@ -40,7 +40,7 @@ AC_ARG_WITH(ssl-libs,
+ SSLLIBS="")
+ AC_ARG_ENABLE(pcre,
+ [ --disable-pcre Don't use PCRE for regular expressions],
+- ENABLE_RUDIMENTS_PCRE="no",
++ ENABLE_RUDIMENTS_PCRE="$enableval",
+ ENABLE_RUDIMENTS_PCRE="yes")
+ AC_ARG_WITH(pcre-includes,
+ [ --with-pcre-includes PCRE includes],
+@@ -56,7 +56,7 @@ AC_ARG_ENABLE(built-in-regex,
+ USE_BUILT_IN_REGULAREXPRESSION="0")
+ AC_ARG_ENABLE(threads,
+ [ --disable-threads Disable thread support],
+- ENABLE_RUDIMENTS_THREADS="no"; INCLUDE_THREAD="0"; INCLUDE_THREADMUTEX="0",
++ ENABLE_RUDIMENTS_THREADS="$enableval"; INCLUDE_THREAD="0"; INCLUDE_THREADMUTEX="0",
+ ENABLE_RUDIMENTS_THREADS="yes")
+
+ dnl options to disable building various classes
+@@ -3716,6 +3716,10 @@ if ( test "`echo $datadir | cut -c1`" = "/" )
+ then
+ datadir='${DESTDIR}'"$datadir"
+ fi
++if ( test "`echo $docdir | cut -c1`" = "/" )
++then
++ docdir='${DESTDIR}'"$docdir"
++fi
+
+
+ dnl Output files.
+diff --git a/src/Makefile.in b/src/Makefile.in
+index a224d83..3b990fb 100644
+--- a/src/Makefile.in
++++ b/src/Makefile.in
+@@ -4,7 +4,7 @@ include ../config.mk
+
+ .PHONY: all clean install uninstall
+
+-CPPFLAGS = $(WERROR) $(BASECPPFLAGS) -I../ -I../include @EXTRACPPFLAGS@
++CPPFLAGS = $(BASECPPFLAGS) -I../ -I../include @EXTRACPPFLAGS@
+
+ SRCS = namevaluepairs.cpp winsock.cpp @SRCS@
+ LOBJS = namevaluepairs.lo winsock.lo @LOBJS@
+--- a/acsite.m4 2014-05-04 01:44:03.265919456 +0400
++++ b/acsite.m4 2014-05-04 01:44:34.008920936 +0400
+@@ -266,7 +237,7 @@
+ dnl Sometimes -Wall includes -Wunused-variables and -Wunused-parameters
+ dnl which we don't care about. Disable it if it does.
+ OLDCPPFLAGS=$CPPFLAGS
+- CPPFLAGS="$WALL $WERROR $CPPFLAGS"
++ CPPFLAGS="$WALL $CPPFLAGS"
+ AC_MSG_CHECKING(whether -Wall includes -Wunused-*)
+ AC_TRY_COMPILE([void f(int a) { return; }],[f(1);],AC_MSG_RESULT(no),WALL=""; AC_MSG_RESULT(yes))
+ CPPFLAGS=$OLDCPPFLAGS
diff --git a/dev-cpp/rudiments/files/rudiments-0.51-buildsystem.patch b/dev-cpp/rudiments/files/rudiments-0.51-buildsystem.patch
new file mode 100644
index 000000000000..37cffc9e7680
--- /dev/null
+++ b/dev-cpp/rudiments/files/rudiments-0.51-buildsystem.patch
@@ -0,0 +1,86 @@
+diff --git a/config.mk.in b/config.mk.in
+index ae29f27..c0b7e3d 100644
+--- a/config.mk.in
++++ b/config.mk.in
+@@ -9,7 +9,7 @@ includedir = @includedir@
+ libdir = @libdir@
+ mandir = @mandir@
+ datadir = @datadir@
+-docdir = ${datadir}/doc/rudiments
++docdir = @docdir@
+
+ # command separator
+ AND = ;
+@@ -25,7 +25,7 @@
+ CXX = @CXX@
+ COMPILE = -c
+ OUT = -o
+-BASECPPFLAGS = @WALL@ @WERROR@ @WNOLONGDOUBLE@ @WNOFORMAT@ @WNOOVERLOADEDVIRTUAL@ @CPPFLAGS@ @PTHREADINCLUDES@ @SSLINCLUDES@ @PCREINCLUDES@
++BASECPPFLAGS = @WALL@ @WNOLONGDOUBLE@ @WNOFORMAT@ @WNOOVERLOADEDVIRTUAL@ @CPPFLAGS@ @PTHREADINCLUDES@ @SSLINCLUDES@ @PCREINCLUDES@
+ EXPORTSCPPFLAGS =
+ EXTRACPPFLAGS = @EXTRACPPFLAGS@
+ CXXFLAGS = @CXXFLAGS@ @PIPE@
+diff --git a/configure.ac b/configure.ac
+index d82ea0e..290a80b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -32,7 +32,7 @@ AC_ARG_WITH(pthread-prefix,
+ PTHREADPATH="")
+ AC_ARG_ENABLE(ssl,
+ [ --disable-ssl Disable SSL support],
+- ENABLE_RUDIMENTS_SSL="no",
++ ENABLE_RUDIMENTS_SSL="$enableval",
+ ENABLE_RUDIMENTS_SSL="yes")
+ AC_ARG_WITH(ssl-includes,
+ [ --with-ssl-includes SSL includes],
+@@ -44,7 +44,7 @@ AC_ARG_WITH(ssl-libs,
+ SSLLIBS="")
+ AC_ARG_ENABLE(pcre,
+ [ --disable-pcre Don't use PCRE for regular expressions],
+- ENABLE_RUDIMENTS_PCRE="no",
++ ENABLE_RUDIMENTS_PCRE="$enableval",
+ ENABLE_RUDIMENTS_PCRE="yes")
+ AC_ARG_WITH(pcre-includes,
+ [ --with-pcre-includes PCRE includes],
+@@ -60,7 +60,7 @@ AC_ARG_ENABLE(built-in-regex,
+ USE_BUILT_IN_REGULAREXPRESSION="0")
+ AC_ARG_ENABLE(threads,
+ [ --disable-threads Disable thread support],
+- ENABLE_RUDIMENTS_THREADS="no"; INCLUDE_THREAD="0",
++ ENABLE_RUDIMENTS_THREADS="$enableval"; INCLUDE_THREAD="0",
+ ENABLE_RUDIMENTS_THREADS="yes")
+
+ dnl options to disable building various classes
+@@ -4034,6 +4034,10 @@ if ( test "`echo $datadir | cut -c1`" = "/" )
+ then
+ datadir='${DESTDIR}'"$datadir"
+ fi
++if ( test "`echo $docdir | cut -c1`" = "/" )
++then
++ docdir='${DESTDIR}'"$docdir"
++fi
+
+
+ dnl Output files.
+diff --git a/src/Makefile.in b/src/Makefile.in
+index a224d83..3b990fb 100644
+@@ -2,7 +2,7 @@
+
+ include ../config.mk
+
+-CPPFLAGS = $(WERROR) $(BASECPPFLAGS) $(EXPORTSCPPFLAGS) $(INC)../ $(INC)../include $(EXTRACPPFLAGS)
++CPPFLAGS = $(BASECPPFLAGS) $(EXPORTSCPPFLAGS) $(INC)../ $(INC)../include $(EXTRACPPFLAGS)
+ LIBS = $(SOCKETLIBS) $(PTHREADLIB) $(SSLLIBS) $(PCRELIBS) $(NANOSLEEPLIB) $(CLOCKNANOSLEEPLIB) $(SHMOPENLIB) $(CRYPTLIB) $(INETATONLIB) $(NETAPI32LIB) $(BELIB) $(GNULIB) $(CRTLIB) $(DLLIB) $(DEBUGLIB)
+
+ SRCS = @SRCS@
+--- a/acsite.m4 2014-05-04 01:44:03.265919456 +0400
++++ b/acsite.m4 2014-05-04 01:44:34.008920936 +0400
+@@ -279,7 +250,7 @@
+ dnl Sometimes -Wall includes -Wunused-variables and -Wunused-parameters
+ dnl which we don't care about. Disable it if it does.
+ OLDCPPFLAGS=$CPPFLAGS
+- CPPFLAGS="$WALL $WERROR $CPPFLAGS"
++ CPPFLAGS="$WALL $CPPFLAGS"
+ AC_MSG_CHECKING(whether -Wall includes -Wunused-*)
+ AC_TRY_COMPILE([void f(int a) { return; }],[f(1);],AC_MSG_RESULT(no),WALL=""; AC_MSG_RESULT(yes))
+ CPPFLAGS=$OLDCPPFLAGS
diff --git a/dev-cpp/rudiments/metadata.xml b/dev-cpp/rudiments/metadata.xml
new file mode 100644
index 000000000000..52f0f8f9f5b9
--- /dev/null
+++ b/dev-cpp/rudiments/metadata.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+ </maintainer>
+ <longdescription>
+ Rudiments is an Open Source C++ class library providing base classes
+ for things such as daemons, clients and servers, and wrapper classes
+ for the standard C functions for things like such as regular
+ expressions, semaphores and signal handling.
+ </longdescription>
+ <upstream>
+ <remote-id type="sourceforge">rudiments</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/rudiments/rudiments-0.46.ebuild b/dev-cpp/rudiments/rudiments-0.46.ebuild
new file mode 100644
index 000000000000..71813b690f57
--- /dev/null
+++ b/dev-cpp/rudiments/rudiments-0.46.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+AUTOTOOLS_AUTORECONF=1
+AUTOTOOLS_IN_SOURCE_BUILD=1
+inherit autotools-utils
+
+DESCRIPTION="C++ class library for daemons, clients and servers"
+HOMEPAGE="http://rudiments.sourceforge.net/"
+SRC_URI="mirror://sourceforge/rudiments/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="debug pcre ssl static-libs"
+
+DEPEND="pcre? ( dev-libs/libpcre )
+ ssl? ( dev-libs/openssl:0 )"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}/${P}-buildsystem.patch" )
+
+src_prepare() {
+ mv configure.in configure.ac || die
+
+ # bug #535936
+ rm aclocal.m4 || die
+
+ autotools-utils_src_prepare
+}
+
+src_configure() {
+ local myeconfargs=(
+ --docdir="/usr/share/doc/${PF}/html" \
+ $(use debug && "--enable-debug") \
+ $(use_enable pcre) \
+ $(use_enable ssl)
+ )
+ autotools-utils_src_configure
+}
diff --git a/dev-cpp/rudiments/rudiments-0.51.ebuild b/dev-cpp/rudiments/rudiments-0.51.ebuild
new file mode 100644
index 000000000000..71813b690f57
--- /dev/null
+++ b/dev-cpp/rudiments/rudiments-0.51.ebuild
@@ -0,0 +1,42 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+AUTOTOOLS_AUTORECONF=1
+AUTOTOOLS_IN_SOURCE_BUILD=1
+inherit autotools-utils
+
+DESCRIPTION="C++ class library for daemons, clients and servers"
+HOMEPAGE="http://rudiments.sourceforge.net/"
+SRC_URI="mirror://sourceforge/rudiments/${P}.tar.gz"
+
+LICENSE="LGPL-2.1"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="debug pcre ssl static-libs"
+
+DEPEND="pcre? ( dev-libs/libpcre )
+ ssl? ( dev-libs/openssl:0 )"
+RDEPEND="${DEPEND}"
+
+PATCHES=( "${FILESDIR}/${P}-buildsystem.patch" )
+
+src_prepare() {
+ mv configure.in configure.ac || die
+
+ # bug #535936
+ rm aclocal.m4 || die
+
+ autotools-utils_src_prepare
+}
+
+src_configure() {
+ local myeconfargs=(
+ --docdir="/usr/share/doc/${PF}/html" \
+ $(use debug && "--enable-debug") \
+ $(use_enable pcre) \
+ $(use_enable ssl)
+ )
+ autotools-utils_src_configure
+}
diff --git a/dev-cpp/sparsehash/Manifest b/dev-cpp/sparsehash/Manifest
new file mode 100644
index 000000000000..a9e6a086efb5
--- /dev/null
+++ b/dev-cpp/sparsehash/Manifest
@@ -0,0 +1,9 @@
+AUX 1.10-gcc46.patch 344 SHA256 a3766ac53eeee9b7c72118b46af6429c5dc40faa7c21b1d43090b41815f1eceb SHA512 10ba18dd4d102c92c467846d46288080f712f7d82b9a786daab13e74b9cbd0dd9923075d7e12288adaac68e31b96c8eb0a7d010e5d2fe3a2d2321413f2dd51a8 WHIRLPOOL c6adea16c8f0fc87a7285205960e12ea4f298a4974b75a90a7a92dcf78f64d820bbcdb163abe7d1976ad7a580a352b4919c688831341a7a6d6dc22d5d382b61e
+AUX sparsehash-2.0.3-fix-buildsystem.patch 2649 SHA256 239778938f7712707a64920af3edacb1e1b02fb251498b4104173507c5874e4e SHA512 6732a3197550f75ce7a83d61882938d841694f41e9daec51ef36206306fdabdd33dd46eaec106a8877826098b8227368c1ed0962d36aa220abd0336713667bd4 WHIRLPOOL 813392855a1e95233b56f1656dfcfebcd1f753070260fb095a6867c64a515813220e662226754e6552de5d33cd8d309421786023e4cc9d0830208c379c85e32a
+DIST sparsehash-1.10.tar.gz 289819 SHA256 5a57b77633aab1e59827e51cf6247c4ac521713d45f1764ddba60353cbc9677a SHA512 ecc01e755885b8da5927f4f56c95c02ce9a43e5c0280cdc1cdfa812f787396646925c0f602a35decdf94144e8d2f3ac31b80f5ed98b70ccca607a29bb11f8a35 WHIRLPOOL 643e27499b1981faa7dc8864886c736a5265d78221edaed0fb6bd73eaf943433d5fbe5fe26ec2e52451651e19ce869a6ad08c22d7fb3d71b6cc7bf5866fd3653
+DIST sparsehash-2.0.3.tar.gz 322046 SHA256 05e986a5c7327796dad742182b2d10805a8d4f511ad090da0490f146c1ff7a8c SHA512 bb00d0acb8eba65f7da8015ea4f6bebf8bba36ed6777881960ee215f22b7be17b069c59838d210551ce67a34baccfc7b2fed603677ec53c0c32714d8e76f5d6c WHIRLPOOL e647aed5468c76a40a4cf631cf4fa4a5f312cb4a712eedb5174ac29a59ec018227ca7e8db61e6a77121dc9b1acbe2e52a492fa7ed654d9eb9180237cb1ebdf72
+EBUILD sparsehash-1.10.ebuild 532 SHA256 7eb6c6cde528087331a6fdda7f675d9713a25399bd88e326806b482eae595ad7 SHA512 768f1ff2c47d97ff663774a86b9540005810826dd7bf1ff5867452ef00f7f22f11dffabddc78389b09d00cdbfd27f2b5d765f90e030c32bbead6368747405184 WHIRLPOOL f054c1e537f07a54a4a47e0ffba6a46b894b40225718a7e23b0181bee7449b93ef9c2d25d6d9b8e37b21cb70453bf99bbf77fc70f86c407fa5c8b4eef4fcbd69
+EBUILD sparsehash-2.0.3-r1.ebuild 520 SHA256 1c95b435f5d4854cda5918537072fca1cf1524045cde5dd2bbd5487fa8d4c337 SHA512 805380e93b7ef20ed633ac1971b76c0d1dba9a27687772cb1bfb067d63a575a8c59d95ffb9658a9b550b14d04927685d66dbaec00a93426c64c18dea1ff9b284 WHIRLPOOL 1439874c49aae247b3b7aa7188c87b23c616805b899036cf28f8849dc3d592f40b2fdc6bdb23ff995dba466a4746ef3f0a36effdaef541209fbf1fb45ee19537
+MISC ChangeLog 3383 SHA256 21e295a51444ba1859782c68b7343686bfdf2901fba904d439128ac3dfc19311 SHA512 5cfbf91355c627fb022ee23b9de44964c01f9c2f50d9382a9de0c31a78ffbe7e260b6979c50318b78b93ae2082bd5b4e153db83e6030a352b92bee620a5b184a WHIRLPOOL 47dadfb9bfe47f1b0d4de17bf32cd7e801e2db14cc1d533825009a857af51119b31e3064b021d12139228cded6b2ea1d19ff65c007516f8785c17a50a896a37b
+MISC ChangeLog-2015 2045 SHA256 d504d0d26972da6533d27540769d69c60cc7eeee04b22761cbeb031c17c2b04d SHA512 af331ea63fa7c43c8d528b7643941470ab129257093260e7ea313ac89e0d56924f269be302437aea14ec8b20da4b2a15f7055624a5809d5519120ab68f51ea37 WHIRLPOOL 9128422c6ac19dc5bfcbafec1e623080b6ffc00aedb5b16223dd41efdb0e012f429f4bb774c74ca3a6c92f1d320409889feb5a9f1a7881b05c61d975fd325847
+MISC metadata.xml 335 SHA256 a6eb4eaf621fa0336bcf928ab67e1f6939c4abe9e49f7be06a73700259256374 SHA512 9d718bf4d0e71b393c36a57db6e165975f61570ad41dce4ac3f5aa55f2770b6f52a8f67eb04fa725c9bb839fd30393f2a78be6d6ad3c341f083053c94e934e62 WHIRLPOOL 8d75f9b2218349a0cd0757d99b14712656cd60cba3cc53e4e8215faee3802254153ac5a53f478049376a46cd1a24eee1c7c68444fbc849448cbe325da316d498
diff --git a/dev-cpp/sparsehash/files/1.10-gcc46.patch b/dev-cpp/sparsehash/files/1.10-gcc46.patch
new file mode 100644
index 000000000000..4339b487eca0
--- /dev/null
+++ b/dev-cpp/sparsehash/files/1.10-gcc46.patch
@@ -0,0 +1,16 @@
+ src/google/sparsetable | 2 ++
+ 1 files changed, 2 insertions(+), 0 deletions(-)
+
+diff --git a/src/google/sparsetable b/src/google/sparsetable
+index 0eeb22e..e8580b9 100644
+--- a/src/google/sparsetable
++++ b/src/google/sparsetable
+@@ -83,6 +83,8 @@
+ #endif
+ #endif
+
++#include <cstddef>
++
+ _START_GOOGLE_NAMESPACE_
+
+ #ifndef HAVE_U_INT16_T
diff --git a/dev-cpp/sparsehash/files/sparsehash-2.0.3-fix-buildsystem.patch b/dev-cpp/sparsehash/files/sparsehash-2.0.3-fix-buildsystem.patch
new file mode 100644
index 000000000000..237719c3b9f3
--- /dev/null
+++ b/dev-cpp/sparsehash/files/sparsehash-2.0.3-fix-buildsystem.patch
@@ -0,0 +1,71 @@
+* Do not override $(docdir) as part of the GNU conventions
+* Do not install 'COPYING' and 'INSTALL'
+* Install html files using html_ prefix and not doc_ prefix
+* Do not try to link against tcmalloc, the complexity of juggling
+ the options around isn't worth it
+Bug: https://bugs.gentoo.org/show_bug.cgi?id=585968
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -9,7 +9,7 @@
+ # (for sanity checking)
+ AC_CONFIG_SRCDIR(README)
+ AM_INIT_AUTOMAKE([dist-zip])
+-AM_CONFIG_HEADER(src/config.h)
++AC_CONFIG_HEADERS([src/config.h])
+
+ # Checks for programs.
+ AC_PROG_CXX
+@@ -28,23 +28,7 @@
+ # These are 'only' needed for unittests
+ AC_CHECK_HEADERS(sys/resource.h unistd.h sys/time.h sys/utsname.h)
+
+-# If you have google-perftools installed, we can do a bit more testing.
+-# We not only want to set HAVE_MALLOC_EXTENSION_H, we also want to set
+-# a variable to let the Makefile to know to link in tcmalloc.
+ AC_LANG([C++])
+-AC_CHECK_HEADERS(google/malloc_extension.h,
+- tcmalloc_libs=-ltcmalloc,
+- tcmalloc_libs=)
+-# On some systems, when linking in tcmalloc you also need to link in
+-# pthread. That's a bug somewhere, but we'll work around it for now.
+-tcmalloc_flags=""
+-if test -n "$tcmalloc_libs"; then
+- ACX_PTHREAD
+- tcmalloc_flags="\$(PTHREAD_CFLAGS)"
+- tcmalloc_libs="$tcmalloc_libs \$(PTHREAD_LIBS)"
+-fi
+-AC_SUBST(tcmalloc_flags)
+-AC_SUBST(tcmalloc_libs)
+
+ # Figure out where hash_map lives and also hash_fun.h (or stl_hash_fun.h).
+ # This also tells us what namespace hash code lives in.
+--- a/Makefile.am
++++ b/Makefile.am
+@@ -11,12 +11,11 @@
+ AM_CXXFLAGS = -Wall -W -Wwrite-strings -Woverloaded-virtual -Wshadow
+ endif
+
+-docdir = $(prefix)/share/doc/$(PACKAGE)-$(VERSION)
+ ## This is for HTML and other documentation you want to install.
+ ## Add your documentation files (in doc/) in addition to these boilerplate
+ ## Also add a TODO file if you have one
+-dist_doc_DATA = AUTHORS COPYING ChangeLog INSTALL NEWS README README_windows.txt \
+- TODO \
++dist_doc_DATA = AUTHORS ChangeLog NEWS README README_windows.txt TODO
++dist_html_DATA = \
+ doc/dense_hash_map.html \
+ doc/dense_hash_set.html \
+ doc/sparse_hash_map.html \
+@@ -182,11 +181,6 @@
+ $(sparsehashinclude_HEADERS)
+ nodist_time_hash_map_SOURCES = $(nodist_internalinclude_HEADERS)
+
+-# If tcmalloc is installed, use it with time_hash_map; it gives us
+-# heap-usage statistics for the hash_map routines, which is very nice
+-time_hash_map_CXXFLAGS = @tcmalloc_flags@ $(AM_CXXFLAGS)
+-time_hash_map_LDFLAGS = @tcmalloc_flags@
+-time_hash_map_LDADD = @tcmalloc_libs@
+
+ ## ^^^^ END OF RULES TO MAKE THE LIBRARIES, BINARIES, AND UNITTESTS
+
diff --git a/dev-cpp/sparsehash/metadata.xml b/dev-cpp/sparsehash/metadata.xml
new file mode 100644
index 000000000000..60498dfe4403
--- /dev/null
+++ b/dev-cpp/sparsehash/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">sparsehash/sparsehash</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/sparsehash/sparsehash-1.10.ebuild b/dev-cpp/sparsehash/sparsehash-1.10.ebuild
new file mode 100644
index 000000000000..b3855b668231
--- /dev/null
+++ b/dev-cpp/sparsehash/sparsehash-1.10.ebuild
@@ -0,0 +1,27 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="4"
+
+inherit eutils
+
+DESCRIPTION="An extremely memory-efficient hash_map implementation"
+HOMEPAGE="https://github.com/google/sparsehash"
+SRC_URI="https://google-sparsehash.googlecode.com/files/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 x86"
+IUSE=""
+
+src_prepare() {
+ epatch "${FILESDIR}"/${PV}-gcc46.patch
+}
+
+src_install() {
+ default
+
+ # Installs just every piece
+ rm -rf "${D}/usr/share/doc"
+ dohtml doc/*
+}
diff --git a/dev-cpp/sparsehash/sparsehash-2.0.3-r1.ebuild b/dev-cpp/sparsehash/sparsehash-2.0.3-r1.ebuild
new file mode 100644
index 000000000000..b043e1800ff6
--- /dev/null
+++ b/dev-cpp/sparsehash/sparsehash-2.0.3-r1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit autotools
+
+DESCRIPTION="An extremely memory-efficient hash_map implementation"
+HOMEPAGE="https://github.com/sparsehash/sparsehash"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+S=${WORKDIR}/${PN}-${P}
+
+PATCHES=( "${FILESDIR}"/${PN}-2.0.3-fix-buildsystem.patch )
+
+src_prepare() {
+ default
+ eautoreconf
+}
diff --git a/dev-cpp/tbb/Manifest b/dev-cpp/tbb/Manifest
new file mode 100644
index 000000000000..c6ca2b505239
--- /dev/null
+++ b/dev-cpp/tbb/Manifest
@@ -0,0 +1,17 @@
+AUX tbb-2017.20161128-build.patch 5103 SHA256 439ae29b4353bb3f963510fc4d89605702d365faf1e121d50b40a43fdae2a390 SHA512 875dc2aa87562e0701840e08a3414dfea4a22eed999682395a6e568d351c6f7243b435b4664e80004b761c1721ecabf09f1732d4df7d10e0843338762a8ebbac WHIRLPOOL 726fe1a23db715fd86c8c700d4a1a0936a2f868c3aead73b70401a54b862262703ae38f6134e3476b1ede06ba8ceaed7550e1279a4c02cceeaf78bfd7f562ff0
+AUX tbb-2017.20161128-underlinking.patch 389 SHA256 17fa3528ad54755c75bb7269b03769a07451cea621c9ee2393118f6c2de2f6d8 SHA512 bfd3b9d5221a89a120e115447a9aa653e93a208422c68c8cc74a672f42037fd1af3dc755480d746570f2c5dbeb173650d9b4acfb38aaec5d3c3feea6c2232af1 WHIRLPOOL fe0fb571ba8cea14680452869c08a7ea08609aa9c2cbb1fbb9f23760a9fa1899a3661e955b15a064d36549a6c45f250eea29e78436f2e560e727f4b93844cf3d
+AUX tbb-4.0.297-underlinking.patch 475 SHA256 489473e0f30a53d13bd508d3d720df2e6db24b1348470febd162d0834bf6a3de SHA512 26103f87299e56e08d404e0cdda47f3b2be89e770ea12e84ee7f681050364e674aca1ba8326b81db0a73c2f53e973b89b97af3f36c7e762d4699767481b64486 WHIRLPOOL 10e6e3f886dc1a8638f1788254e38f7f92ebbd9deab645e215e9abecfe871e8918de490dc0612de276829e75571db82bd04fe1a8606a50e5f2a6b938821a25fe
+AUX tbb-4.3.20150611-build.patch 5291 SHA256 048cb0531e39f4cfe7044a48fe1760dd4d78f8da2e0c7a71478e9306ef9b147a SHA512 1648810b9ea89a904eaf2d15168dbf51abefb8ad337aad561f4b93691163ffb9bab52ade91ed71abc2305a60294c33254603ea60f4255fcccf92a2906d4c09a6 WHIRLPOOL d99b55ae96ebbbbc8a5a73668d797dabcc59bd0c662336bac26af9c1871f206e8b182bff3d8a48252476c613c0b73026e49db1f7b9f7975a66564253f0fbd9ea
+AUX tbb-4.4.20160803-build.patch 5101 SHA256 e881f3ddbac23afe39b12e32bf4589e000eb0988d6d8ca4197af45ca225ae2bf SHA512 472df5a7cf1a4640f6e945146363351efe3ae26e499757571ddefcb6e5fef1c43a299ede9874f221674388b94f2bbe2bf88449d503da21adab7d030ec6792dce WHIRLPOOL 590993f7a0cb1876f3e9042f16c20f83c0ba3a1406a50431a04db846e68cad21d0f1784dfd912699b4c4fcc5f9604567e58dbb35abf5ed6bbb9eb3d7f1144188
+AUX tbb-4.4.20160803-underlinking.patch 389 SHA256 17fa3528ad54755c75bb7269b03769a07451cea621c9ee2393118f6c2de2f6d8 SHA512 bfd3b9d5221a89a120e115447a9aa653e93a208422c68c8cc74a672f42037fd1af3dc755480d746570f2c5dbeb173650d9b4acfb38aaec5d3c3feea6c2232af1 WHIRLPOOL fe0fb571ba8cea14680452869c08a7ea08609aa9c2cbb1fbb9f23760a9fa1899a3661e955b15a064d36549a6c45f250eea29e78436f2e560e727f4b93844cf3d
+DIST tbb-2017.20170226.tar.gz 2856407 SHA256 780baf0ad520f23b54dd20dc97bf5aae4bc562019e0a70f53bfc4c1afec6e545 SHA512 d07eeca53138432a4ac20145169907f5271e234bedfb53e0eabbed2b6fafaecdc0a2ad7bdbead205993f822e7c415233cce9afd7575d366c17a117d5cc971a65 WHIRLPOOL 18095aa7fec6a6766f9d8456c34a346bc51c2525263f03ae00f6a37899cafea0b83d67fd199372983561543f197f797b50f99966ea24591114958ff115e80b6f
+DIST tbb2017_20161128oss_src.tgz 2965854 SHA256 c009166233c8ea0e34530a1c5f870b79314316d19e6876b37a7e7c854080a540 SHA512 3c48ce196d2d3557e86cea7ede9dea456bbaeb29dbed34210f99c6f380406403a6056ccfa3d5befe6b29c4f8a9ee58ca6da545249cf4ec4ec85b463e04e4518c WHIRLPOOL d1ce8d07ac002c617afa7c0aa1d5cad41928a6eefd064a744b4efdd0192dd310ad8cb32b949858a7c2c44211477deffc05dbd65e8101184d4cae26744143b922
+DIST tbb43_20150611oss_src.tgz 2757631 SHA256 221f85fe64e11c9638e43b3c57d5750c26683905fc90827c0bcfefdb286e79c9 SHA512 83d5d827706b774ef5cd6df8082e5d7f48683388684423bb40565dfc25892fc2e57c382f719b78087d83e51edb3f7f7215f33d8b5039b55c32788d80efa6e0b8 WHIRLPOOL 8e98162b2307c759fb26923d76ab784dea81e166c8bf5323869d234da59641c333e5ae30b4a224bccbf20d4f5f6b75c658589f519a165ea3ad7658322f148c72
+DIST tbb44_20160803oss_src.tgz 2874050 SHA256 23fb69a16b5daccef8e1ffe194d1dd5c6b1d225c0de87e54bc30c958aa244fb0 SHA512 01b1dcdaffa96c3d503e44d7b236b1115f419c122dab0f40de4c9dc90db315a1f3755cc91adf9df91d5d31d8927df115230db94cf175edac09ae438b46374a92 WHIRLPOOL 2b93bfabc0eadb1a10ad34f1a475322a04554bd8b5e4ac90505ec285f7727a537249a045f7a464fb3c266f9ece6c83fa259a099cc052da16cdd6c05cd9a1fb42
+EBUILD tbb-2017.20161128.ebuild 3299 SHA256 18082433a84093dce0b5b64efaf2cc3e960738cdd4fcb17bf84a4b7cf6a26e8c SHA512 7744c1f7c80d995f251c0a487ddd2917f4f18f84ad281ea77e84098678e14e80ad1c234c99d85af61077c317b2c3c03c5630beddb5dba3cb0d5144c0d23568ef WHIRLPOOL 42b5680f7775f0159cf4fd84985962c609747db14b0296898fc50a48650bfc3e4bff9ffc92d6709d9cf6ae2993ab5087367a6d4e4e1d5a5400a5f5956b404a1f
+EBUILD tbb-2017.20170226.ebuild 3291 SHA256 59e2b1b6e306adef9b1af98bd6be1cd11bb90b168d38718b79e199b985a92aac SHA512 10b737b34e47055fed9d400031b773cc9fee18b00f6f2af4617d7cea625b4ac9464534706ea72d71042be1293efe7b126d38562131c0c19209c881c01b8fda75 WHIRLPOOL 3741259dcdbd1ef10b52a25df340007ffd0af237597127d644003749a1549627aa4f2df94656a9bb2248a4e3d64667caf79aafad590ea0dc3f4c79562c361586
+EBUILD tbb-4.3.20150611.ebuild 3142 SHA256 351a4640b30e0c6052037bd6dbeb58f1a7ac30e9f240b67dfb68349c30cc056c SHA512 9f35df30d1641eca5adbf57cc99757cb80a25ed15dbf5aa9b8aff1163ccd5e67fb7ec0c47b1283f613d82b05e69da5cf7243a9d9dc55bd8be1bed7a1f0cf5bde WHIRLPOOL a3e26ae3130814aa6a047849c2275fa432ef49b768963b94e90652092f269dc981d6c92c317b536ed5fe7750cd47c8f9d75e5aa9150aa5cefed88a656e7406fc
+EBUILD tbb-4.4.20160803.ebuild 3359 SHA256 1a9607d0442817b58e1952a2ff56170ee2e2f74eeda02ab3e4a6bb2b6b8df5ad SHA512 481bcf13630975ed8c5c5c08f3dc952fda80d6f40f61b7153414a6e9f06ab97dbcd22a8ba90e67dcf18ed5b6851e639498026b8db2f027e0913462cc52fa2918 WHIRLPOOL a40bb5fc09ac0ca59d7d83379ef4c611c3a868727abc7a2112bbac867d6c28da2a00e9bf2fbd68c28b0e85b000f36dc6b4eddee8dd6ccccfde2cee605531c68f
+MISC ChangeLog 4561 SHA256 48b2b3080ad49508fb74f5641fb1a5c6eed3ee9a126e8acd973af8fa01231f92 SHA512 2124acbde2eaffa923a2c6b7ed97f4cd59fe0e5e6e6694e4f5bc2c58fb80787ed4078fa65440cbc25e2cfd7f61d07c768b6472743095e52bff3c884b23349d65 WHIRLPOOL d60aae799a3c7e0be9e69debcad47e44a1f3a69c4da745a8f46e5a17309f4798ad19c1c353cd14608be09bce7cf4b2dad925247970c8ddef2f0347be59093ea5
+MISC ChangeLog-2015 9605 SHA256 983718319f403f3a8c2491adc27c5305969abca0d2b0f865448065dce5b6f3ca SHA512 c44c4345ef7e3dc26db537f04b5d95d3ad2e17eda30a2c6ea94eac9d4213680724cd5dc094eb57c9c55796d7731cdafd0c88ed36bf0e54a26e9fc53f451c1054 WHIRLPOOL 2f5f594d55e6e8db91348950f2db010e6174421bab1df1ad1f2b3bbbdab751c6066260103406c24dbea4f5dc8f9f779fe7369f8f37418a0122ad640adec53b51
+MISC metadata.xml 687 SHA256 2e2faab2d4a6eae28c184b9248b9c949e27b55eabb66a2e6123fcf55c6244cbc SHA512 bfdebc9e52c9c46424854b519e8ff60f7b473e33189235a50e1110af1f8264c2ad2b4f71110be1147387491fc078ec6c9e451347b47f69d0f2b15e60ad2e9a0b WHIRLPOOL a79822acb6f6328eb21e9c90bc5eef092d98fa892decb5ba8058b407bd0e094ff6bc4aa087c92c407191180980706ea8c13bed010ca51fe3237f7efb09152c1a
diff --git a/dev-cpp/tbb/files/tbb-2017.20161128-build.patch b/dev-cpp/tbb/files/tbb-2017.20161128-build.patch
new file mode 100644
index 000000000000..0806d6a522b7
--- /dev/null
+++ b/dev-cpp/tbb/files/tbb-2017.20161128-build.patch
@@ -0,0 +1,193 @@
+diff --git a/build/FreeBSD.gcc.inc b/build/FreeBSD.gcc.inc
+index e93f8f4..2b43c51 100644
+--- a/build/FreeBSD.gcc.inc
++++ b/build/FreeBSD.gcc.inc
+@@ -28,8 +28,8 @@ WARNING_KEY = -Wall
+ DYLIB_KEY = -shared
+ WARNING_SUPPRESS = -Wno-parentheses
+
+-CPLUS = g++
+-CONLY = gcc
++CPLUS = $(CXX)
++CONLY = $(CC)
+ LIB_LINK_FLAGS = -shared
+ LIBS = -lpthread
+ C_FLAGS = $(CPLUS_FLAGS)
+@@ -42,7 +42,7 @@ ifneq (,$(shell gcc -dumpversion | egrep "^([6-9])"))
+ endif
+
+ ifeq ($(cfg), release)
+- CPLUS_FLAGS = -g -O2 -DUSE_PTHREAD
++ CPLUS_FLAGS = -g -DUSE_PTHREAD
+ endif
+ ifeq ($(cfg), debug)
+ CPLUS_FLAGS = -DTBB_USE_DEBUG -g -O0 -DUSE_PTHREAD
+@@ -59,22 +59,12 @@ ifeq (ia64,$(arch))
+ CPLUS_FLAGS += $(PIC_KEY)
+ endif
+
+-ifeq (intel64,$(arch))
+- CPLUS_FLAGS += -m64
+- LIB_LINK_FLAGS += -m64
+-endif
+-
+-ifeq (ia32,$(arch))
+- CPLUS_FLAGS += -m32
+- LIB_LINK_FLAGS += -m32
+-endif
+-
+ #------------------------------------------------------------------------------
+ # Setting assembler data.
+ #------------------------------------------------------------------------------
+ ASSEMBLY_SOURCE=$(arch)-gas
+ ifeq (ia64,$(arch))
+- ASM=as
++ ASM=$(AS)
+ TBB_ASM.OBJ = atomic_support.o lock_byte.o log2.o pause.o
+ MALLOC_ASM.OBJ = atomic_support.o lock_byte.o pause.o
+ endif
+diff --git a/build/linux.clang.inc b/build/linux.clang.inc
+index 237caae..8d6914e 100644
+--- a/build/linux.clang.inc
++++ b/build/linux.clang.inc
+@@ -31,15 +31,15 @@ DYLIB_KEY = -shared
+ EXPORT_KEY = -Wl,--version-script,
+ LIBDL = -ldl
+
+-CPLUS = clang++
+-CONLY = clang
++CPLUS := $(CXX)
++CONLY := $(CC)
+ LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)
+ LIBS += -lpthread -lrt
+ LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
+ C_FLAGS = $(CPLUS_FLAGS)
+
+ ifeq ($(cfg), release)
+- CPLUS_FLAGS = $(ITT_NOTIFY) -g -O2 -DUSE_PTHREAD
++ CPLUS_FLAGS = $(ITT_NOTIFY) -g -DUSE_PTHREAD
+ endif
+ ifeq ($(cfg), debug)
+ CPLUS_FLAGS = -DTBB_USE_DEBUG $(ITT_NOTIFY) -g -O0 -DUSE_PTHREAD
+@@ -60,24 +60,10 @@ MALLOC_ASM.OBJ=
+
+ ifeq (intel64,$(arch))
+ ITT_NOTIFY = -DDO_ITT_NOTIFY
+- CPLUS_FLAGS += -m64
+- LIB_LINK_FLAGS += -m64
+ endif
+
+ ifeq (ia32,$(arch))
+ ITT_NOTIFY = -DDO_ITT_NOTIFY
+- CPLUS_FLAGS += -m32 -march=pentium4
+- LIB_LINK_FLAGS += -m32
+-endif
+-
+-ifeq (ppc64,$(arch))
+- CPLUS_FLAGS += -m64
+- LIB_LINK_FLAGS += -m64
+-endif
+-
+-ifeq (ppc32,$(arch))
+- CPLUS_FLAGS += -m32
+- LIB_LINK_FLAGS += -m32
+ endif
+
+ ifeq (bg,$(arch))
+@@ -89,12 +75,6 @@ endif
+ # Setting assembler data.
+ #------------------------------------------------------------------------------
+ ASM = as
+-ifeq (intel64,$(arch))
+- ASM_FLAGS += --64
+-endif
+-ifeq (ia32,$(arch))
+- ASM_FLAGS += --32
+-endif
+ ifeq ($(cfg),debug)
+ ASM_FLAGS += -g
+ endif
+diff --git a/build/linux.gcc.inc b/build/linux.gcc.inc
+index b7ed0c5..a8e8f85 100644
+--- a/build/linux.gcc.inc
++++ b/build/linux.gcc.inc
+@@ -32,12 +32,12 @@ DYLIB_KEY = -shared
+ EXPORT_KEY = -Wl,--version-script,
+ LIBDL = -ldl
+
+-CPLUS = g++
+-CONLY = gcc
++CPLUS := $(CXX)
++CONLY := $(CC)
+ LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)
+ LIBS += -lpthread -lrt
+ LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
+-C_FLAGS = $(CPLUS_FLAGS)
++C_FLAGS := $(CPLUS_FLAGS)
+
+ # gcc 4.2 and higher support OpenMP
+ ifneq (,$(shell gcc -dumpversion | egrep "^(4\.[2-9]|[5-9])"))
+@@ -68,7 +68,7 @@ ifneq (,$(shell gcc -dumpversion | egrep "^([6-9])"))
+ endif
+
+ ifeq ($(cfg), release)
+- CPLUS_FLAGS = $(ITT_NOTIFY) -g -O2 -DUSE_PTHREAD
++ CPLUS_FLAGS = $(ITT_NOTIFY) -g -DUSE_PTHREAD
+ endif
+ ifeq ($(cfg), debug)
+ CPLUS_FLAGS = -DTBB_USE_DEBUG $(ITT_NOTIFY) -g -O0 -DUSE_PTHREAD
+@@ -84,24 +84,12 @@ endif
+
+ ifeq (intel64,$(arch))
+ ITT_NOTIFY = -DDO_ITT_NOTIFY
+- CPLUS_FLAGS += -m64 $(RTM_KEY)
+- LIB_LINK_FLAGS += -m64
++ CPLUS_FLAGS += $(RTM_KEY)
+ endif
+
+ ifeq (ia32,$(arch))
+ ITT_NOTIFY = -DDO_ITT_NOTIFY
+- CPLUS_FLAGS += -m32 -march=pentium4 $(RTM_KEY)
+- LIB_LINK_FLAGS += -m32
+-endif
+-
+-ifeq (ppc64,$(arch))
+- CPLUS_FLAGS += -m64
+- LIB_LINK_FLAGS += -m64
+-endif
+-
+-ifeq (ppc32,$(arch))
+- CPLUS_FLAGS += -m32
+- LIB_LINK_FLAGS += -m32
++ CPLUS_FLAGS += $(RTM_KEY)
+ endif
+
+ ifeq (bg,$(arch))
+@@ -109,12 +97,6 @@ ifeq (bg,$(arch))
+ CONLY = $(firstword $(notdir $(shell which powerpc{64,32,}-bg{z..a}-linux-gcc 2>/dev/null)))
+ endif
+
+-# for some gcc versions on Solaris, -m64 may imply V9, but perhaps not everywhere (TODO: verify)
+-ifeq (sparc,$(arch))
+- CPLUS_FLAGS += -mcpu=v9 -m64
+- LIB_LINK_FLAGS += -mcpu=v9 -m64
+-endif
+-
+ # automatically generate "IT" instructions when compiling for Thumb ISA
+ ifeq (armv7,$(arch))
+ CPLUS_FLAGS += -Wa,-mimplicit-it=thumb
+@@ -123,13 +105,7 @@ endif
+ #------------------------------------------------------------------------------
+ # Setting assembler data.
+ #------------------------------------------------------------------------------
+-ASM = as
+-ifeq (intel64,$(arch))
+- ASM_FLAGS += --64
+-endif
+-ifeq (ia32,$(arch))
+- ASM_FLAGS += --32
+-endif
++ASM := $(AS)
+ ifeq ($(cfg),debug)
+ ASM_FLAGS += -g
+ endif
diff --git a/dev-cpp/tbb/files/tbb-2017.20161128-underlinking.patch b/dev-cpp/tbb/files/tbb-2017.20161128-underlinking.patch
new file mode 100644
index 000000000000..5935017a325e
--- /dev/null
+++ b/dev-cpp/tbb/files/tbb-2017.20161128-underlinking.patch
@@ -0,0 +1,15 @@
+https://bugs.gentoo.org/show_bug.cgi?id=418447
+
+--- a/build/Makefile.test
++++ b/build/Makefile.test
+@@ -44,8 +44,8 @@
+ USE_PROXY_FLAG = $(DEFINE_KEY)HARNESS_USE_PROXY
+ CPLUS_FLAGS += $(USE_PROXY_FLAG)
+ LINK_TBB.LIB = $(PROXY.LIB)
+- LIBS += $(LIBDL)
+-endif
++endif
++LIBS += $(LIBDL)
+
+ TEST_SUFFIXES=secondary compiler_builtins pic
+ include $(tbb_root)/build/common_rules.inc
diff --git a/dev-cpp/tbb/files/tbb-4.0.297-underlinking.patch b/dev-cpp/tbb/files/tbb-4.0.297-underlinking.patch
new file mode 100644
index 000000000000..099bb39d2143
--- /dev/null
+++ b/dev-cpp/tbb/files/tbb-4.0.297-underlinking.patch
@@ -0,0 +1,20 @@
+From: Julian Ospald <hasufell@gentoo.org>
+Date: Thu May 31 21:37:47 UTC 2012
+Subject: build system
+
+fix underlinking in test phase
+wrt https://bugs.gentoo.org/show_bug.cgi?id=418447
+
+--- build/Makefile.test
++++ build/Makefile.test
+@@ -48,8 +48,8 @@
+ USE_PROXY_FLAG = $(DEFINE_KEY)HARNESS_USE_PROXY
+ CPLUS_FLAGS += $(USE_PROXY_FLAG)
+ LINK_TBB.LIB = $(PROXY.LIB)
+- LIBS += $(LIBDL)
+-endif
++endif
++LIBS += $(LIBDL)
+
+ include $(tbb_root)/build/common_rules.inc
+
diff --git a/dev-cpp/tbb/files/tbb-4.3.20150611-build.patch b/dev-cpp/tbb/files/tbb-4.3.20150611-build.patch
new file mode 100644
index 000000000000..42a8bae4640a
--- /dev/null
+++ b/dev-cpp/tbb/files/tbb-4.3.20150611-build.patch
@@ -0,0 +1,196 @@
+ build/FreeBSD.gcc.inc | 18 ++++--------------
+ build/linux.clang.inc | 26 +++-----------------------
+ build/linux.gcc.inc | 38 +++++++-------------------------------
+ 3 files changed, 14 insertions(+), 68 deletions(-)
+
+diff --git a/build/FreeBSD.gcc.inc b/build/FreeBSD.gcc.inc
+index 20f0027..8bbdeba 100644
+--- a/build/FreeBSD.gcc.inc
++++ b/build/FreeBSD.gcc.inc
+@@ -28,14 +28,14 @@ WARNING_KEY = -Wall
+ DYLIB_KEY = -shared
+ WARNING_SUPPRESS = -Wno-parentheses
+
+-CPLUS = g++
+-CONLY = gcc
++CPLUS = $(CXX)
++CONLY = $(CC)
+ LIB_LINK_FLAGS = -shared
+ LIBS = -lpthread
+ C_FLAGS = $(CPLUS_FLAGS)
+
+ ifeq ($(cfg), release)
+- CPLUS_FLAGS = -g -O2 -DUSE_PTHREAD
++ CPLUS_FLAGS = -g -DUSE_PTHREAD
+ endif
+ ifeq ($(cfg), debug)
+ CPLUS_FLAGS = -DTBB_USE_DEBUG -g -O0 -DUSE_PTHREAD
+@@ -52,22 +52,12 @@ ifeq (ia64,$(arch))
+ CPLUS_FLAGS += $(PIC_KEY)
+ endif
+
+-ifeq (intel64,$(arch))
+- CPLUS_FLAGS += -m64
+- LIB_LINK_FLAGS += -m64
+-endif
+-
+-ifeq (ia32,$(arch))
+- CPLUS_FLAGS += -m32
+- LIB_LINK_FLAGS += -m32
+-endif
+-
+ #------------------------------------------------------------------------------
+ # Setting assembler data.
+ #------------------------------------------------------------------------------
+ ASSEMBLY_SOURCE=$(arch)-gas
+ ifeq (ia64,$(arch))
+- ASM=as
++ ASM=$(AS)
+ TBB_ASM.OBJ = atomic_support.o lock_byte.o log2.o pause.o
+ MALLOC_ASM.OBJ = atomic_support.o lock_byte.o pause.o
+ endif
+diff --git a/build/linux.clang.inc b/build/linux.clang.inc
+index de9aee5..3a366f1 100644
+--- a/build/linux.clang.inc
++++ b/build/linux.clang.inc
+@@ -31,15 +31,15 @@ DYLIB_KEY = -shared
+ EXPORT_KEY = -Wl,--version-script,
+ LIBDL = -ldl
+
+-CPLUS = clang++
+-CONLY = clang
++CPLUS := $(CXX)
++CONLY := $(CC)
+ LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)
+ LIBS += -lpthread -lrt
+ LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
+ C_FLAGS = $(CPLUS_FLAGS)
+
+ ifeq ($(cfg), release)
+- CPLUS_FLAGS = $(ITT_NOTIFY) -g -O2 -DUSE_PTHREAD
++ CPLUS_FLAGS = $(ITT_NOTIFY) -g -DUSE_PTHREAD
+ endif
+ ifeq ($(cfg), debug)
+ CPLUS_FLAGS = -DTBB_USE_DEBUG $(ITT_NOTIFY) -g -O0 -DUSE_PTHREAD
+@@ -61,24 +61,10 @@ MALLOC_ASM.OBJ=
+
+ ifeq (intel64,$(arch))
+ ITT_NOTIFY = -DDO_ITT_NOTIFY
+- CPLUS_FLAGS += -m64
+- LIB_LINK_FLAGS += -m64
+ endif
+
+ ifeq (ia32,$(arch))
+ ITT_NOTIFY = -DDO_ITT_NOTIFY
+- CPLUS_FLAGS += -m32 -march=pentium4
+- LIB_LINK_FLAGS += -m32
+-endif
+-
+-ifeq (ppc64,$(arch))
+- CPLUS_FLAGS += -m64
+- LIB_LINK_FLAGS += -m64
+-endif
+-
+-ifeq (ppc32,$(arch))
+- CPLUS_FLAGS += -m32
+- LIB_LINK_FLAGS += -m32
+ endif
+
+ ifeq (bg,$(arch))
+@@ -90,12 +76,6 @@ endif
+ # Setting assembler data.
+ #------------------------------------------------------------------------------
+ ASM = as
+-ifeq (intel64,$(arch))
+- ASM_FLAGS += --64
+-endif
+-ifeq (ia32,$(arch))
+- ASM_FLAGS += --32
+-endif
+ ifeq ($(cfg),debug)
+ ASM_FLAGS += -g
+ endif
+diff --git a/build/linux.gcc.inc b/build/linux.gcc.inc
+index 4b7122b..e8ba711 100644
+--- a/build/linux.gcc.inc
++++ b/build/linux.gcc.inc
+@@ -32,12 +32,12 @@ DYLIB_KEY = -shared
+ EXPORT_KEY = -Wl,--version-script,
+ LIBDL = -ldl
+
+-CPLUS = g++
+-CONLY = gcc
++CPLUS := $(CXX)
++CONLY := $(CC)
+ LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)
+ LIBS += -lpthread -lrt
+ LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
+-C_FLAGS = $(CPLUS_FLAGS)
++C_FLAGS := $(CPLUS_FLAGS)
+ # gcc 4.4 and higher support -std=c++0x
+ ifneq (,$(shell gcc -dumpversion | egrep "^(4\.[4-9]|[5-9])"))
+ CPP11_FLAGS = -std=c++0x -D_TBB_CPP0X
+@@ -54,7 +54,7 @@ ifneq (,$(shell gcc -dumpversion | egrep "^4\.[8-9]"))
+ endif
+
+ ifeq ($(cfg), release)
+- CPLUS_FLAGS = $(ITT_NOTIFY) -g -O2 -DUSE_PTHREAD
++ CPLUS_FLAGS = $(ITT_NOTIFY) -g -DUSE_PTHREAD
+ endif
+ ifeq ($(cfg), debug)
+ CPLUS_FLAGS = -DTBB_USE_DEBUG $(ITT_NOTIFY) -g -O0 -DUSE_PTHREAD
+@@ -74,24 +74,12 @@ endif
+
+ ifeq (intel64,$(arch))
+ ITT_NOTIFY = -DDO_ITT_NOTIFY
+- CPLUS_FLAGS += -m64 $(RTM_KEY)
+- LIB_LINK_FLAGS += -m64
++ CPLUS_FLAGS += $(RTM_KEY)
+ endif
+
+ ifeq (ia32,$(arch))
+ ITT_NOTIFY = -DDO_ITT_NOTIFY
+- CPLUS_FLAGS += -m32 -march=pentium4 $(RTM_KEY)
+- LIB_LINK_FLAGS += -m32
+-endif
+-
+-ifeq (ppc64,$(arch))
+- CPLUS_FLAGS += -m64
+- LIB_LINK_FLAGS += -m64
+-endif
+-
+-ifeq (ppc32,$(arch))
+- CPLUS_FLAGS += -m32
+- LIB_LINK_FLAGS += -m32
++ CPLUS_FLAGS += $(RTM_KEY)
+ endif
+
+ ifeq (bg,$(arch))
+@@ -99,12 +87,6 @@ ifeq (bg,$(arch))
+ CONLY = $(firstword $(notdir $(shell which powerpc{64,32,}-bg{z..a}-linux-gcc 2>/dev/null)))
+ endif
+
+-# for some gcc versions on Solaris, -m64 may imply V9, but perhaps not everywhere (TODO: verify)
+-ifeq (sparc,$(arch))
+- CPLUS_FLAGS += -mcpu=v9 -m64
+- LIB_LINK_FLAGS += -mcpu=v9 -m64
+-endif
+-
+ # automatically generate "IT" instructions when compiling for Thumb ISA
+ ifeq (armv7,$(arch))
+ CPLUS_FLAGS += -Wa,-mimplicit-it=thumb
+@@ -113,13 +95,7 @@ endif
+ #------------------------------------------------------------------------------
+ # Setting assembler data.
+ #------------------------------------------------------------------------------
+-ASM = as
+-ifeq (intel64,$(arch))
+- ASM_FLAGS += --64
+-endif
+-ifeq (ia32,$(arch))
+- ASM_FLAGS += --32
+-endif
++ASM := $(AS)
+ ifeq ($(cfg),debug)
+ ASM_FLAGS += -g
+ endif
diff --git a/dev-cpp/tbb/files/tbb-4.4.20160803-build.patch b/dev-cpp/tbb/files/tbb-4.4.20160803-build.patch
new file mode 100644
index 000000000000..9c66c132fffa
--- /dev/null
+++ b/dev-cpp/tbb/files/tbb-4.4.20160803-build.patch
@@ -0,0 +1,193 @@
+diff --git a/build/FreeBSD.gcc.inc b/build/FreeBSD.gcc.inc
+index dc22ca3..65dfb6e 100644
+--- a/build/FreeBSD.gcc.inc
++++ b/build/FreeBSD.gcc.inc
+@@ -28,8 +28,8 @@ WARNING_KEY = -Wall
+ DYLIB_KEY = -shared
+ WARNING_SUPPRESS = -Wno-parentheses
+
+-CPLUS = g++
+-CONLY = gcc
++CPLUS = $(CXX)
++CONLY = $(CC)
+ LIB_LINK_FLAGS = -shared
+ LIBS = -lpthread
+ C_FLAGS = $(CPLUS_FLAGS)
+@@ -42,7 +42,7 @@ ifneq (,$(shell gcc -dumpversion | egrep "^([6-9])"))
+ endif
+
+ ifeq ($(cfg), release)
+- CPLUS_FLAGS = -g -O2 -DUSE_PTHREAD
++ CPLUS_FLAGS = -g -DUSE_PTHREAD
+ endif
+ ifeq ($(cfg), debug)
+ CPLUS_FLAGS = -DTBB_USE_DEBUG -g -O0 -DUSE_PTHREAD
+@@ -59,22 +59,12 @@ ifeq (ia64,$(arch))
+ CPLUS_FLAGS += $(PIC_KEY)
+ endif
+
+-ifeq (intel64,$(arch))
+- CPLUS_FLAGS += -m64
+- LIB_LINK_FLAGS += -m64
+-endif
+-
+-ifeq (ia32,$(arch))
+- CPLUS_FLAGS += -m32
+- LIB_LINK_FLAGS += -m32
+-endif
+-
+ #------------------------------------------------------------------------------
+ # Setting assembler data.
+ #------------------------------------------------------------------------------
+ ASSEMBLY_SOURCE=$(arch)-gas
+ ifeq (ia64,$(arch))
+- ASM=as
++ ASM=$(AS)
+ TBB_ASM.OBJ = atomic_support.o lock_byte.o log2.o pause.o
+ MALLOC_ASM.OBJ = atomic_support.o lock_byte.o pause.o
+ endif
+diff --git a/build/linux.clang.inc b/build/linux.clang.inc
+index fc8d7de..21ad5d4 100644
+--- a/build/linux.clang.inc
++++ b/build/linux.clang.inc
+@@ -31,15 +31,15 @@ DYLIB_KEY = -shared
+ EXPORT_KEY = -Wl,--version-script,
+ LIBDL = -ldl
+
+-CPLUS = clang++
+-CONLY = clang
++CPLUS := $(CXX)
++CONLY := $(CC)
+ LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)
+ LIBS += -lpthread -lrt
+ LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
+ C_FLAGS = $(CPLUS_FLAGS)
+
+ ifeq ($(cfg), release)
+- CPLUS_FLAGS = $(ITT_NOTIFY) -g -O2 -DUSE_PTHREAD
++ CPLUS_FLAGS = $(ITT_NOTIFY) -g -DUSE_PTHREAD
+ endif
+ ifeq ($(cfg), debug)
+ CPLUS_FLAGS = -DTBB_USE_DEBUG $(ITT_NOTIFY) -g -O0 -DUSE_PTHREAD
+@@ -55,24 +55,10 @@ MALLOC_ASM.OBJ=
+
+ ifeq (intel64,$(arch))
+ ITT_NOTIFY = -DDO_ITT_NOTIFY
+- CPLUS_FLAGS += -m64
+- LIB_LINK_FLAGS += -m64
+ endif
+
+ ifeq (ia32,$(arch))
+ ITT_NOTIFY = -DDO_ITT_NOTIFY
+- CPLUS_FLAGS += -m32 -march=pentium4
+- LIB_LINK_FLAGS += -m32
+-endif
+-
+-ifeq (ppc64,$(arch))
+- CPLUS_FLAGS += -m64
+- LIB_LINK_FLAGS += -m64
+-endif
+-
+-ifeq (ppc32,$(arch))
+- CPLUS_FLAGS += -m32
+- LIB_LINK_FLAGS += -m32
+ endif
+
+ ifeq (bg,$(arch))
+@@ -84,12 +70,6 @@ endif
+ # Setting assembler data.
+ #------------------------------------------------------------------------------
+ ASM = as
+-ifeq (intel64,$(arch))
+- ASM_FLAGS += --64
+-endif
+-ifeq (ia32,$(arch))
+- ASM_FLAGS += --32
+-endif
+ ifeq ($(cfg),debug)
+ ASM_FLAGS += -g
+ endif
+diff --git a/build/linux.gcc.inc b/build/linux.gcc.inc
+index f9b483d..1e69789 100644
+--- a/build/linux.gcc.inc
++++ b/build/linux.gcc.inc
+@@ -32,12 +32,12 @@ DYLIB_KEY = -shared
+ EXPORT_KEY = -Wl,--version-script,
+ LIBDL = -ldl
+
+-CPLUS = g++
+-CONLY = gcc
++CPLUS := $(CXX)
++CONLY := $(CC)
+ LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)
+ LIBS += -lpthread -lrt
+ LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
+-C_FLAGS = $(CPLUS_FLAGS)
++C_FLAGS := $(CPLUS_FLAGS)
+
+ # gcc 4.2 and higher support OpenMP
+ ifneq (,$(shell gcc -dumpversion | egrep "^(4\.[2-9]|[5-9])"))
+@@ -57,7 +57,7 @@ ifneq (,$(shell gcc -dumpversion | egrep "^([6-9])"))
+ endif
+
+ ifeq ($(cfg), release)
+- CPLUS_FLAGS = $(ITT_NOTIFY) -g -O2 -DUSE_PTHREAD
++ CPLUS_FLAGS = $(ITT_NOTIFY) -g -DUSE_PTHREAD
+ endif
+ ifeq ($(cfg), debug)
+ CPLUS_FLAGS = -DTBB_USE_DEBUG $(ITT_NOTIFY) -g -O0 -DUSE_PTHREAD
+@@ -73,24 +73,12 @@ endif
+
+ ifeq (intel64,$(arch))
+ ITT_NOTIFY = -DDO_ITT_NOTIFY
+- CPLUS_FLAGS += -m64 $(RTM_KEY)
+- LIB_LINK_FLAGS += -m64
++ CPLUS_FLAGS += $(RTM_KEY)
+ endif
+
+ ifeq (ia32,$(arch))
+ ITT_NOTIFY = -DDO_ITT_NOTIFY
+- CPLUS_FLAGS += -m32 -march=pentium4 $(RTM_KEY)
+- LIB_LINK_FLAGS += -m32
+-endif
+-
+-ifeq (ppc64,$(arch))
+- CPLUS_FLAGS += -m64
+- LIB_LINK_FLAGS += -m64
+-endif
+-
+-ifeq (ppc32,$(arch))
+- CPLUS_FLAGS += -m32
+- LIB_LINK_FLAGS += -m32
++ CPLUS_FLAGS += $(RTM_KEY)
+ endif
+
+ ifeq (bg,$(arch))
+@@ -98,12 +86,6 @@ ifeq (bg,$(arch))
+ CONLY = $(firstword $(notdir $(shell which powerpc{64,32,}-bg{z..a}-linux-gcc 2>/dev/null)))
+ endif
+
+-# for some gcc versions on Solaris, -m64 may imply V9, but perhaps not everywhere (TODO: verify)
+-ifeq (sparc,$(arch))
+- CPLUS_FLAGS += -mcpu=v9 -m64
+- LIB_LINK_FLAGS += -mcpu=v9 -m64
+-endif
+-
+ # automatically generate "IT" instructions when compiling for Thumb ISA
+ ifeq (armv7,$(arch))
+ CPLUS_FLAGS += -Wa,-mimplicit-it=thumb
+@@ -112,13 +94,7 @@ endif
+ #------------------------------------------------------------------------------
+ # Setting assembler data.
+ #------------------------------------------------------------------------------
+-ASM = as
+-ifeq (intel64,$(arch))
+- ASM_FLAGS += --64
+-endif
+-ifeq (ia32,$(arch))
+- ASM_FLAGS += --32
+-endif
++ASM := $(AS)
+ ifeq ($(cfg),debug)
+ ASM_FLAGS += -g
+ endif
diff --git a/dev-cpp/tbb/files/tbb-4.4.20160803-underlinking.patch b/dev-cpp/tbb/files/tbb-4.4.20160803-underlinking.patch
new file mode 100644
index 000000000000..5935017a325e
--- /dev/null
+++ b/dev-cpp/tbb/files/tbb-4.4.20160803-underlinking.patch
@@ -0,0 +1,15 @@
+https://bugs.gentoo.org/show_bug.cgi?id=418447
+
+--- a/build/Makefile.test
++++ b/build/Makefile.test
+@@ -44,8 +44,8 @@
+ USE_PROXY_FLAG = $(DEFINE_KEY)HARNESS_USE_PROXY
+ CPLUS_FLAGS += $(USE_PROXY_FLAG)
+ LINK_TBB.LIB = $(PROXY.LIB)
+- LIBS += $(LIBDL)
+-endif
++endif
++LIBS += $(LIBDL)
+
+ TEST_SUFFIXES=secondary compiler_builtins pic
+ include $(tbb_root)/build/common_rules.inc
diff --git a/dev-cpp/tbb/metadata.xml b/dev-cpp/tbb/metadata.xml
new file mode 100644
index 000000000000..1d44ed7098fc
--- /dev/null
+++ b/dev-cpp/tbb/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci@gentoo.org</email>
+ <name>Gentoo Science Project</name>
+ </maintainer>
+ <longdescription lang="en">
+ The Intel Threading Building Blocks is a library that helps you
+ leverage multi-core processor performance without having to be a
+ threading expert. It represents a higher-level, task-based
+ parallelism that abstracts platform details and threading mechanism
+ for performance and scalability.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">01org/tbb</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/tbb/tbb-2017.20161128.ebuild b/dev-cpp/tbb/tbb-2017.20161128.ebuild
new file mode 100644
index 000000000000..f88fe9559185
--- /dev/null
+++ b/dev-cpp/tbb/tbb-2017.20161128.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils flag-o-matic multilib-minimal toolchain-funcs versionator
+
+PV1="$(get_version_component_range 1)"
+PV2="$(get_version_component_range 2)"
+MYP="${PN}${PV1}_${PV2}oss"
+
+DESCRIPTION="High level abstract threading library"
+HOMEPAGE="http://www.threadingbuildingblocks.org/"
+SRC_URI="http://threadingbuildingblocks.org/sites/default/files/software_releases/source/${MYP}_src.tgz"
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha amd64 ~arm ~hppa ppc ppc64 x86 ~amd64-fbsd ~amd64-linux ~x86-linux"
+IUSE="debug doc examples"
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+S="${WORKDIR}/${MYP}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-underlinking.patch
+ "${FILESDIR}"/${P}-build.patch
+)
+
+src_prepare() {
+ default
+
+ find include -name \*.html -delete || die
+
+ # Give it a soname on FreeBSD
+ echo 'LIB_LINK_FLAGS += -Wl,-soname=$(BUILDING_LIBRARY)' >> build/FreeBSD.gcc.inc
+ # Set proper versionning on FreeBSD
+ sed -i -e '/.DLL =/s/$/.1/' build/FreeBSD.inc || die
+
+ use debug || sed -i -e '/_debug/d' Makefile
+}
+
+multilib_src_configure() {
+ # pc files are for debian and fedora compatibility
+ # some deps use them
+ cat <<-EOF > ${PN}.pc.template
+ prefix=${EPREFIX}/usr
+ libdir=\${prefix}/$(get_libdir)
+ includedir=\${prefix}/include
+ Name: ${PN}
+ Description: ${DESCRIPTION}
+ Version: ${PV}
+ URL: ${HOMEPAGE}
+ Cflags: -I\${includedir}
+ EOF
+ cp ${PN}.pc.template ${PN}.pc || die
+ cat <<-EOF >> ${PN}.pc
+ Libs: -L\${libdir} -ltbb
+ Libs.private: -lm -lrt
+ EOF
+ cp ${PN}.pc.template ${PN}malloc.pc || die
+ cat <<-EOF >> ${PN}malloc.pc
+ Libs: -L\${libdir} -ltbbmalloc
+ Libs.private: -lm -lrt
+ EOF
+ cp ${PN}.pc.template ${PN}malloc_proxy.pc || die
+ cat <<-EOF >> ${PN}malloc_proxy.pc
+ Libs: -L\${libdir} -ltbbmalloc_proxy
+ Libs.private: -lrt
+ Requires: tbbmalloc
+ EOF
+}
+
+local_src_compile() {
+ cd "${S}"
+
+ local comp arch
+
+ case ${MULTILIB_ABI_FLAG} in
+ abi_x86_64) arch=x86_64 ;;
+ abi_x86_32) arch=ia32 ;;
+ abi_ppc_64) arch=ppc64 ;;
+ abi_ppc_32) arch=ppc32 ;;
+ esac
+
+ case "$(tc-getCXX)" in
+ *g++*) comp="gcc" ;;
+ *ic*c) comp="icc" ;;
+ *clang*) comp="clang" ;;
+ *) die "compiler $(tc-getCXX) not supported by build system" ;;
+ esac
+
+ CXX="$(tc-getCXX)" \
+ CC="$(tc-getCC)" \
+ AS="$(tc-getAS)" \
+ arch=${arch} \
+ CPLUS_FLAGS="${CXXFLAGS}" \
+ emake compiler=${comp} work_dir="${BUILD_DIR}" tbb_root="${S}" $@
+}
+
+multilib_src_compile() {
+ local_src_compile tbb tbbmalloc
+}
+
+multilib_src_test() {
+ CXXFLAGS="${CXXFLAGS} -fabi-version=4" \
+ local_src_compile -j1 test
+}
+
+multilib_src_install() {
+ local bt
+ local buildtypes
+ if use debug ; then
+ buildtypes="release debug"
+ else
+ buildtypes="release"
+ fi
+ for bt in ${buildtypes}; do
+ cd "${BUILD_DIR}_${bt}" || die
+ local l
+ for l in $(find . -name lib\*.so.\*); do
+ dolib.so ${l}
+ local bl=$(basename ${l})
+ dosym ${bl} /usr/$(get_libdir)/${bl%.*}
+ done
+ done
+
+ cd "${BUILD_DIR}" || die
+ insinto /usr/$(get_libdir)/pkgconfig
+ doins *.pc
+}
+
+multilib_src_install_all() {
+ doheader -r include/*
+
+ dodoc README CHANGES doc/Release_Notes.txt
+ use doc && dohtml -r doc/html/*
+
+ if use examples ; then
+ insinto /usr/share/doc/${PF}/examples/build
+ doins build/*.inc
+ insinto /usr/share/doc/${PF}/examples
+ doins -r examples
+ fi
+}
diff --git a/dev-cpp/tbb/tbb-2017.20170226.ebuild b/dev-cpp/tbb/tbb-2017.20170226.ebuild
new file mode 100644
index 000000000000..f13c39fff0a4
--- /dev/null
+++ b/dev-cpp/tbb/tbb-2017.20170226.ebuild
@@ -0,0 +1,144 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils flag-o-matic multilib-minimal toolchain-funcs versionator
+
+PV1="$(get_version_component_range 1)"
+PV2=5
+MY_PV="${PV1}_U${PV2}"
+
+DESCRIPTION="High level abstract threading library"
+HOMEPAGE="http://www.threadingbuildingblocks.org/"
+SRC_URI="https://github.com/01org/${PN}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~ppc ~ppc64 ~x86 ~amd64-fbsd ~amd64-linux ~x86-linux"
+IUSE="debug doc examples"
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+S="${WORKDIR}/${PN}-${MY_PV}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-2017.20161128-underlinking.patch
+ "${FILESDIR}"/${PN}-2017.20161128-build.patch
+)
+
+src_prepare() {
+ default
+
+ find include -name \*.html -delete || die
+
+ # Give it a soname on FreeBSD
+ echo 'LIB_LINK_FLAGS += -Wl,-soname=$(BUILDING_LIBRARY)' >> build/FreeBSD.gcc.inc
+ # Set proper versionning on FreeBSD
+ sed -i -e '/.DLL =/s/$/.1/' build/FreeBSD.inc || die
+
+ use debug || sed -i -e '/_debug/d' Makefile
+}
+
+multilib_src_configure() {
+ # pc files are for debian and fedora compatibility
+ # some deps use them
+ cat <<-EOF > ${PN}.pc.template
+ prefix=${EPREFIX}/usr
+ libdir=\${prefix}/$(get_libdir)
+ includedir=\${prefix}/include
+ Name: ${PN}
+ Description: ${DESCRIPTION}
+ Version: ${PV}
+ URL: ${HOMEPAGE}
+ Cflags: -I\${includedir}
+ EOF
+ cp ${PN}.pc.template ${PN}.pc || die
+ cat <<-EOF >> ${PN}.pc
+ Libs: -L\${libdir} -ltbb
+ Libs.private: -lm -lrt
+ EOF
+ cp ${PN}.pc.template ${PN}malloc.pc || die
+ cat <<-EOF >> ${PN}malloc.pc
+ Libs: -L\${libdir} -ltbbmalloc
+ Libs.private: -lm -lrt
+ EOF
+ cp ${PN}.pc.template ${PN}malloc_proxy.pc || die
+ cat <<-EOF >> ${PN}malloc_proxy.pc
+ Libs: -L\${libdir} -ltbbmalloc_proxy
+ Libs.private: -lrt
+ Requires: tbbmalloc
+ EOF
+}
+
+local_src_compile() {
+ cd "${S}"
+
+ local comp arch
+
+ case ${MULTILIB_ABI_FLAG} in
+ abi_x86_64) arch=x86_64 ;;
+ abi_x86_32) arch=ia32 ;;
+ abi_ppc_64) arch=ppc64 ;;
+ abi_ppc_32) arch=ppc32 ;;
+ esac
+
+ case "$(tc-getCXX)" in
+ *g++*) comp="gcc" ;;
+ *ic*c) comp="icc" ;;
+ *clang*) comp="clang" ;;
+ *) die "compiler $(tc-getCXX) not supported by build system" ;;
+ esac
+
+ CXX="$(tc-getCXX)" \
+ CC="$(tc-getCC)" \
+ AS="$(tc-getAS)" \
+ arch=${arch} \
+ CPLUS_FLAGS="${CXXFLAGS}" \
+ emake compiler=${comp} work_dir="${BUILD_DIR}" tbb_root="${S}" $@
+}
+
+multilib_src_compile() {
+ local_src_compile tbb tbbmalloc
+}
+
+multilib_src_test() {
+ CXXFLAGS="${CXXFLAGS} -fabi-version=4" \
+ local_src_compile -j1 test
+}
+
+multilib_src_install() {
+ local bt
+ local buildtypes
+ if use debug ; then
+ buildtypes="release debug"
+ else
+ buildtypes="release"
+ fi
+ for bt in ${buildtypes}; do
+ cd "${BUILD_DIR}_${bt}" || die
+ local l
+ for l in $(find . -name lib\*.so.\*); do
+ dolib.so ${l}
+ local bl=$(basename ${l})
+ dosym ${bl} /usr/$(get_libdir)/${bl%.*}
+ done
+ done
+
+ cd "${BUILD_DIR}" || die
+ insinto /usr/$(get_libdir)/pkgconfig
+ doins *.pc
+}
+
+multilib_src_install_all() {
+ doheader -r include/*
+
+ dodoc README CHANGES doc/Release_Notes.txt
+ use doc && dohtml -r doc/html/*
+
+ if use examples ; then
+ insinto /usr/share/doc/${PF}/examples/build
+ doins build/*.inc
+ insinto /usr/share/doc/${PF}/examples
+ doins -r examples
+ fi
+}
diff --git a/dev-cpp/tbb/tbb-4.3.20150611.ebuild b/dev-cpp/tbb/tbb-4.3.20150611.ebuild
new file mode 100644
index 000000000000..6e59a338c11a
--- /dev/null
+++ b/dev-cpp/tbb/tbb-4.3.20150611.ebuild
@@ -0,0 +1,131 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit eutils flag-o-matic multilib-minimal toolchain-funcs versionator
+
+PV1="$(get_version_component_range 1)"
+PV2="$(get_version_component_range 2)"
+PV3="$(get_version_component_range 3)"
+MYP="${PN}${PV1}${PV2}_${PV3}oss"
+
+DESCRIPTION="High level abstract threading library"
+HOMEPAGE="http://www.threadingbuildingblocks.org/"
+SRC_URI="http://threadingbuildingblocks.org/sites/default/files/software_releases/source/${MYP}_src.tgz"
+LICENSE="GPL-2-with-exceptions"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~hppa ppc ppc64 x86 ~amd64-fbsd ~amd64-linux ~x86-linux"
+IUSE="debug doc examples"
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+S="${WORKDIR}/${MYP}"
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${PN}-4.0.297-underlinking.patch \
+ "${FILESDIR}"/${P}-build.patch
+
+ find include -name \*.html -delete || die
+
+ # Give it a soname on FreeBSD
+ echo 'LIB_LINK_FLAGS += -Wl,-soname=$(BUILDING_LIBRARY)' >> build/FreeBSD.gcc.inc
+ # Set proper versionning on FreeBSD
+ sed -i -e '/.DLL =/s/$/.1/' build/FreeBSD.inc || die
+
+ use debug || sed -i -e '/_debug/d' Makefile
+}
+
+multilib_src_configure() {
+ # pc files are for debian and fedora compatibility
+ # some deps use them
+ cat <<-EOF > ${PN}.pc.template
+ prefix=${EPREFIX}/usr
+ libdir=\${prefix}/$(get_libdir)
+ includedir=\${prefix}/include
+ Name: ${PN}
+ Description: ${DESCRIPTION}
+ Version: ${PV}
+ URL: ${HOMEPAGE}
+ Cflags: -I\${includedir}
+ EOF
+ cp ${PN}.pc.template ${PN}.pc || die
+ cat <<-EOF >> ${PN}.pc
+ Libs: -L\${libdir} -ltbb
+ Libs.private: -lm -lrt
+ EOF
+ cp ${PN}.pc.template ${PN}malloc.pc || die
+ cat <<-EOF >> ${PN}malloc.pc
+ Libs: -L\${libdir} -ltbbmalloc
+ Libs.private: -lm -lrt
+ EOF
+ cp ${PN}.pc.template ${PN}malloc_proxy.pc || die
+ cat <<-EOF >> ${PN}malloc_proxy.pc
+ Libs: -L\${libdir} -ltbbmalloc_proxy
+ Libs.private: -lrt
+ Requires: tbbmalloc
+ EOF
+}
+
+local_src_compile() {
+ cd "${S}"
+
+ local comp arch
+
+ case ${MULTILIB_ABI_FLAG} in
+ abi_x86_64) arch=x86_64 ;;
+ abi_x86_32) arch=ia32 ;;
+ esac
+
+ case "$(tc-getCXX)" in
+ *g++*) comp="gcc" ;;
+ *ic*c) comp="icc" ;;
+ *clang*) comp="clang" ;;
+ *) die "compiler $(tc-getCXX) not supported by build system" ;;
+ esac
+
+ CXX="$(tc-getCXX)" \
+ CC="$(tc-getCC)" \
+ AS="$(tc-getAS)" \
+ arch=${arch} \
+ CPLUS_FLAGS="${CXXFLAGS}" \
+ emake compiler=${comp} work_dir="${BUILD_DIR}" tbb_root="${S}" $@
+}
+
+multilib_src_compile() {
+ local_src_compile tbb tbbmalloc
+}
+
+multilib_src_test() {
+ CXXFLAGS="${CXXFLAGS} -fabi-version=4" \
+ local_src_compile -j1 test
+}
+
+multilib_src_install() {
+ cd "${BUILD_DIR}_release" || die
+ local l
+ for l in $(find . -name lib\*.so.\*); do
+ dolib.so ${l}
+ local bl=$(basename ${l})
+ dosym ${bl} /usr/$(get_libdir)/${bl%.*}
+ done
+
+ cd "${BUILD_DIR}" || die
+ insinto /usr/$(get_libdir)/pkgconfig
+ doins *.pc
+}
+
+multilib_src_install_all() {
+ doheader -r include/*
+
+ dodoc README CHANGES doc/Release_Notes.txt
+ use doc && dohtml -r doc/html/*
+
+ if use examples ; then
+ insinto /usr/share/doc/${PF}/examples/build
+ doins build/*.inc
+ insinto /usr/share/doc/${PF}/examples
+ doins -r examples
+ fi
+}
diff --git a/dev-cpp/tbb/tbb-4.4.20160803.ebuild b/dev-cpp/tbb/tbb-4.4.20160803.ebuild
new file mode 100644
index 000000000000..c05b5cccc889
--- /dev/null
+++ b/dev-cpp/tbb/tbb-4.4.20160803.ebuild
@@ -0,0 +1,145 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils flag-o-matic multilib-minimal toolchain-funcs versionator
+
+PV1="$(get_version_component_range 1)"
+PV2="$(get_version_component_range 2)"
+PV3="$(get_version_component_range 3)"
+MYP="${PN}${PV1}${PV2}_${PV3}oss"
+
+DESCRIPTION="High level abstract threading library"
+HOMEPAGE="http://www.threadingbuildingblocks.org/"
+SRC_URI="http://threadingbuildingblocks.org/sites/default/files/software_releases/source/${MYP}_src.tgz"
+LICENSE="GPL-2-with-exceptions"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-fbsd ~amd64-linux ~x86-linux"
+IUSE="debug doc examples"
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+S="${WORKDIR}/${MYP}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-underlinking.patch
+ "${FILESDIR}"/${P}-build.patch
+)
+
+src_prepare() {
+ default
+
+ find include -name \*.html -delete || die
+
+ # Give it a soname on FreeBSD
+ echo 'LIB_LINK_FLAGS += -Wl,-soname=$(BUILDING_LIBRARY)' >> build/FreeBSD.gcc.inc
+ # Set proper versionning on FreeBSD
+ sed -i -e '/.DLL =/s/$/.1/' build/FreeBSD.inc || die
+
+ use debug || sed -i -e '/_debug/d' Makefile
+}
+
+multilib_src_configure() {
+ # pc files are for debian and fedora compatibility
+ # some deps use them
+ cat <<-EOF > ${PN}.pc.template
+ prefix=${EPREFIX}/usr
+ libdir=\${prefix}/$(get_libdir)
+ includedir=\${prefix}/include
+ Name: ${PN}
+ Description: ${DESCRIPTION}
+ Version: ${PV}
+ URL: ${HOMEPAGE}
+ Cflags: -I\${includedir}
+ EOF
+ cp ${PN}.pc.template ${PN}.pc || die
+ cat <<-EOF >> ${PN}.pc
+ Libs: -L\${libdir} -ltbb
+ Libs.private: -lm -lrt
+ EOF
+ cp ${PN}.pc.template ${PN}malloc.pc || die
+ cat <<-EOF >> ${PN}malloc.pc
+ Libs: -L\${libdir} -ltbbmalloc
+ Libs.private: -lm -lrt
+ EOF
+ cp ${PN}.pc.template ${PN}malloc_proxy.pc || die
+ cat <<-EOF >> ${PN}malloc_proxy.pc
+ Libs: -L\${libdir} -ltbbmalloc_proxy
+ Libs.private: -lrt
+ Requires: tbbmalloc
+ EOF
+}
+
+local_src_compile() {
+ cd "${S}"
+
+ local comp arch
+
+ case ${MULTILIB_ABI_FLAG} in
+ abi_x86_64) arch=x86_64 ;;
+ abi_x86_32) arch=ia32 ;;
+ abi_ppc_64) arch=ppc64 ;;
+ abi_ppc_32) arch=ppc32 ;;
+ esac
+
+ case "$(tc-getCXX)" in
+ *g++*) comp="gcc" ;;
+ *ic*c) comp="icc" ;;
+ *clang*) comp="clang" ;;
+ *) die "compiler $(tc-getCXX) not supported by build system" ;;
+ esac
+
+ CXX="$(tc-getCXX)" \
+ CC="$(tc-getCC)" \
+ AS="$(tc-getAS)" \
+ arch=${arch} \
+ CPLUS_FLAGS="${CXXFLAGS}" \
+ emake compiler=${comp} work_dir="${BUILD_DIR}" tbb_root="${S}" $@
+}
+
+multilib_src_compile() {
+ local_src_compile tbb tbbmalloc
+}
+
+multilib_src_test() {
+ CXXFLAGS="${CXXFLAGS} -fabi-version=4" \
+ local_src_compile -j1 test
+}
+
+multilib_src_install() {
+ local bt
+ local buildtypes
+ if use debug ; then
+ buildtypes="release debug"
+ else
+ buildtypes="release"
+ fi
+ for bt in ${buildtypes}; do
+ cd "${BUILD_DIR}_${bt}" || die
+ local l
+ for l in $(find . -name lib\*.so.\*); do
+ dolib.so ${l}
+ local bl=$(basename ${l})
+ dosym ${bl} /usr/$(get_libdir)/${bl%.*}
+ done
+ done
+
+ cd "${BUILD_DIR}" || die
+ insinto /usr/$(get_libdir)/pkgconfig
+ doins *.pc
+}
+
+multilib_src_install_all() {
+ doheader -r include/*
+
+ dodoc README CHANGES doc/Release_Notes.txt
+ use doc && dohtml -r doc/html/*
+
+ if use examples ; then
+ insinto /usr/share/doc/${PF}/examples/build
+ doins build/*.inc
+ insinto /usr/share/doc/${PF}/examples
+ doins -r examples
+ fi
+}
diff --git a/dev-cpp/tclap/Manifest b/dev-cpp/tclap/Manifest
new file mode 100644
index 000000000000..0b36bd1e44ff
--- /dev/null
+++ b/dev-cpp/tclap/Manifest
@@ -0,0 +1,5 @@
+DIST tclap-1.2.1.tar.gz 442387 SHA256 9f9f0fe3719e8a89d79b6ca30cf2d16620fba3db5b9610f9b51dd2cd033deebb SHA512 8bd6ee724600880840048c7b36f02d31b1aa4910b17f80fb04aef89b1f1917856d9979ec488edbd457b66d9d689aea97540abb842a8b902bbd75c66a6e07b9b1 WHIRLPOOL b4fc88c46a96148673a6d5d7696626d788cc9ba75b66a0bf0cddc77ac7f4b3b7b2b2de00e52779d217309cf63fac8e0f23655c6e4cbfad2cda6ed5ac9303cc48
+EBUILD tclap-1.2.1.ebuild 570 SHA256 266312c5c2a1928c6c5ec54c91d1d7a4631ff9bdb90658882f91a3ce94f0e421 SHA512 a97c0710894c39556d247db41a00fba667fc2af473893ffb38f55907a158bcfd1b3af107ce327c5a863892671fdadb88bdf6f0dc31c004328087ef69c1493022 WHIRLPOOL a9103f85025f7f656635939b5d2bd24d32e51e33390e9339e33d5b337d9bc4f00f5a061a22e47424a3c4e111d4bcda83fcb4527e0dad7243845c43d764e0f640
+MISC ChangeLog 2515 SHA256 8fb98e1a4a19be3093602cdaaaf92642543df9a8dcb5b90327024f093927ab7c SHA512 d89fb4c97765d3461818b7d5be97fb24eab5c6a2ef0f82a62a3133552f183e71ed647380bb62fcf0fffd370e16cc5f805a95e8727924967dcdc1b5dde314f3b6 WHIRLPOOL b1b372428afe1b40339d514c7573ede2762daf061367bc4b7035baec0a5cae9e381cb555e963ea8f8d9c173c3b23afb6f835eb3b632a287cbb7ec7383385e4f8
+MISC ChangeLog-2015 2677 SHA256 7bcb8a0b0617cd5a887d35ea853edacbc857ab0ee1db7eeb5851337703bc0872 SHA512 3ca1c11f6cdcd515a5e246c773482e9bad096848521bde49e9ba6f32bc17dfef0a36972bc4cf2a086f6ccba82a8543fc6fc450d4994d0167452682fb89f6ff19 WHIRLPOOL 0d55539646a0e625b8b83546581f9dcd8e46563a1571d98a8ca1168b9f63728961d97f9caf34a14759d2768c97be4480d8ec878d5136d22055c4de0440e48c69
+MISC metadata.xml 242 SHA256 7705c83defc78806009bc246d696cdf38af50c30316b46c227c04f2e6d732df5 SHA512 95904a3f7981543557133918ba83a467f03e6839b3248651dc94870f1b8c3788ac50279d59886c54d12328891964c942e1bbd4e1c9d88837643ded5678a10a85 WHIRLPOOL 9dcdce7b0af5d8b21881d13b768c16e18dad350ee828597670d051ef79c42a9129f0b39b1e8c7809fdcc2a9fe13cd34da2c19aa2a5ed01436ace7f6178c94cd0
diff --git a/dev-cpp/tclap/metadata.xml b/dev-cpp/tclap/metadata.xml
new file mode 100644
index 000000000000..71114a4fc927
--- /dev/null
+++ b/dev-cpp/tclap/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <!-- maintainer-needed -->
+ <upstream>
+ <remote-id type="sourceforge">tclap</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/tclap/tclap-1.2.1.ebuild b/dev-cpp/tclap/tclap-1.2.1.ebuild
new file mode 100644
index 000000000000..f065ddbf9c86
--- /dev/null
+++ b/dev-cpp/tclap/tclap-1.2.1.ebuild
@@ -0,0 +1,24 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+inherit eutils
+
+DESCRIPTION="Simple templatized C++ library for parsing command line arguments"
+HOMEPAGE="http://${PN}.sourceforge.net"
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 ppc x86 ~amd64-linux"
+IUSE="doc"
+
+DEPEND="doc? ( app-doc/doxygen )"
+
+src_configure() {
+ econf $(use_enable doc doxygen)
+}
+
+src_install() {
+ emake DESTDIR="${D}" docdir="${EPREFIX}/usr/share/doc/${PF}/html" install
+}
diff --git a/dev-cpp/threadpool/Manifest b/dev-cpp/threadpool/Manifest
new file mode 100644
index 000000000000..e1a7e1a6ad11
--- /dev/null
+++ b/dev-cpp/threadpool/Manifest
@@ -0,0 +1,7 @@
+AUX threadpool-0.2.5-memleak.patch 786 SHA256 b5916399bed4fddca7d2d4394d9db5c62345254ba3bef6649e4815f81b429101 SHA512 427802d2695ed08e3f0fc318e7f379d288bdea9adcdd9ee02215fbffc7a579e736140205cdf9122654c56add637fa80e4673a3a98fba939943f41597d8097912 WHIRLPOOL 8d5e650fbe7a902af61cc136e6ab68956bbcc2f8913387c5e5072ce2c48336faedb9302cf8636cb76976574aace82dd7b85186e3527e6aa17b58e6a19411ac60
+DIST threadpool-0_2_5-doc.zip 154617 SHA256 b79d314d12735e00572b63c356613bbe45eb115f37ae657dbd0fb7d0cd3666e5 SHA512 cdee7d0cf02af55ef4e1237fff9f5214ffb91b00ad2880592efcf3f62d661f3e8a870d092797dd2866e24189e9d6f8e626ca840ab89ce29e5c944c79e8cb31ea WHIRLPOOL bb15bf6482fc6ca1388c10647df63aef21e8fd1d95adfce51d133119e7e47aac40b4a566c0a911e318ce1cf460110d1b4e451a446807205eb5a022679ae764ea
+DIST threadpool-0_2_5-src.zip 58599 SHA256 ab5a78d0f6ed7bd258a6095b3ba1854b40932e0e655fa492607bd2a940898889 SHA512 961576b619e5227098fa37a3c8d903128b3c2a9cf1e55c057c6f9126062bcccfa6fe2510b4e8ee5d1a0e3d0425f0077c50eccad2120a423f69e2705460780e7c WHIRLPOOL a54c9a67b6de6fc53b779a5c49922abc136b7fd257261d4563eead865a139d40e784ab4bbf557e941c94fef8f2f9bcc820c996cf71d2488f675ec9dbb750150c
+EBUILD threadpool-0.2.5-r1.ebuild 888 SHA256 41e0b7b3c828a1e155cf8b59a34ce47d1f10a63297ce2519b782e38a16443731 SHA512 e16f8b7415461cbf47c08e81b008833b3ffc6814627ca3b13e252b536829ad096afb73414d98dfc268508d88cce97e4c44f8f562ba110cbf5f3cdf8dba602967 WHIRLPOOL 8182870462d1d5444a8d6805441989aab4ae2700c2c8be54982ed3b531efef109c55230b1a3135d2dbd9e97b688b115b9b90b2dabab52aede4077b2b79096a4b
+MISC ChangeLog 2569 SHA256 2c00f6363addf1da46c3bcf54f3f8b1bd4cd1ae9cabf86cd3139e1e91cf4b878 SHA512 86c67d0a915d4761d502fe9a231d801fad5055d7d1e82eb00e041a0007da2bb285c9bfa70c32a04eb34774bae94a72cf4adc3c4bb877028a3448c677a97e5169 WHIRLPOOL ced512267fb5006b9c62b033206eaaf71d9b67dd83addf79db8e5aa92f0178743ae73186d47e75896de545c860ca55549b079f7c078c32aa83f8f69e5a13fabf
+MISC ChangeLog-2015 543 SHA256 6a9f25a7132b51a39475b4bd6bc1b4bab5d1d91402d58573aace8f69123f9526 SHA512 3cc6075f239e53333c5947e0adbc38d9568d4562b345b4676fce789a51880cb6352ac9a766e962dfe79cbad8a5b3a2390871433a58a3f2491f20bcd5db26b2af WHIRLPOOL 1d020f0818849b6db6886c67a01e7c6236ee10a2f639f1bb9e35de18e6d2783a14d6b8f4928cba2e4a37b6ff251047cd4ee286e8c2ac5427c1e69225ef8e2274
+MISC metadata.xml 330 SHA256 5cfdf383ffd09b1ac73b9fe9cfe70e3b5223c8882f97760094b56c25b09187c8 SHA512 5bd797cbdfe2f8a33f10947018d11fc38af0b51a8a1f06b0723d52e3854558c742e62d9f4cb0c13160cbb0ecb9c68267c0d4360b01068e486ca7d4a4314f5229 WHIRLPOOL 74e15391792603d259c6eb76deeaae90733c0cc1dbb92eee59d1c7411b35bb0e18a28669724532b8e0a2983bd5acaf2791ecd45c080f6eabb18d2d08e87e1fe6
diff --git a/dev-cpp/threadpool/files/threadpool-0.2.5-memleak.patch b/dev-cpp/threadpool/files/threadpool-0.2.5-memleak.patch
new file mode 100644
index 000000000000..26d89d1d5c25
--- /dev/null
+++ b/dev-cpp/threadpool/files/threadpool-0.2.5-memleak.patch
@@ -0,0 +1,22 @@
+Fix memleak due circular references blocking garbage collection.
+
+http://www.cplusplus.com/forum/general/56971/ provides a testcase for a memory
+leak with the threadpool due to shared_ptr usage.
+
+I really needed threadpool to work for me, so I traced & fixed it as best as
+possible. When the threadpool is being destroyed, your threads should have
+terminated already. Do so deliberately if not done yet, so that they free the
+memory.
+
+Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
+
+--- threadpool/boost/threadpool/detail/pool_core.hpp
++++ threadpool/boost/threadpool/detail/pool_core.hpp
+@@ -150,6 +150,7 @@
+ /// Destructor.
+ ~pool_core()
+ {
++ terminate_all_workers(true);
+ }
+
+ /*! Gets the size controller which manages the number of threads in the pool.
diff --git a/dev-cpp/threadpool/metadata.xml b/dev-cpp/threadpool/metadata.xml
new file mode 100644
index 000000000000..2af619160dd4
--- /dev/null
+++ b/dev-cpp/threadpool/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>robbat2@gentoo.org</email>
+ <name>Robin H. Johnson</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="sourceforge">threadpool</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/threadpool/threadpool-0.2.5-r1.ebuild b/dev-cpp/threadpool/threadpool-0.2.5-r1.ebuild
new file mode 100644
index 000000000000..882c07045372
--- /dev/null
+++ b/dev-cpp/threadpool/threadpool-0.2.5-r1.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DESCRIPTION="A cross-platform C++ thread pool library (built on top of Boost)"
+HOMEPAGE="http://threadpool.sourceforge.net/"
+MY_PV=${PV//./_}
+MY_P=${PN}-${MY_PV}
+SRC_URI_BASE="mirror://sourceforge/threadpool/threadpool/${PV}%20%28Stable%29"
+SRC_URI="${SRC_URI_BASE}/${MY_P}-src.zip
+ doc? ( ${SRC_URI_BASE}/${MY_P}-doc.zip )"
+
+LICENSE="Boost-1.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc"
+
+DEPEND=""
+RDEPEND="dev-libs/boost"
+
+S="${WORKDIR}/${MY_P}-src/${PN}"
+
+DOCS=( README TODO CHANGE_LOG )
+PATCHES=( "${FILESDIR}/${P}-memleak.patch" )
+
+src_compile() {
+ # Do nothing
+ # The makefile just builds the documentation again
+ # Not even any install targets
+ return
+}
+
+src_install() {
+ doheader -r boost
+
+ use doc && HTML_DOCS+=( "${WORKDIR}"/"${MY_P}"-doc/. )
+ einstalldocs
+}
diff --git a/dev-cpp/tree/Manifest b/dev-cpp/tree/Manifest
new file mode 100644
index 000000000000..58262a8ab89f
--- /dev/null
+++ b/dev-cpp/tree/Manifest
@@ -0,0 +1,9 @@
+AUX tree-2.62-test.patch 289 SHA256 0812ec2db0b82531c4ae15e4b3a597011d7e8559494b3a9561cd774a9438af6c SHA512 7b63e0e60db5c636a13fe4cf8f8043fa4029a04b21eeb4cac08fcce4f433e0e6096927fffb7f345c319b46ea6043a9388a7419e8fa6c783f58b449f9ab1061db WHIRLPOOL 38b2a3bfe36cc9f8750b2669e816593e893a26d1959781140e8f90044f4c17991db9d8478b4a90fe2ca9230020bdbd9f4d993751292220e394c0a41a5afe4376
+AUX tree-2.65-gcc46.patch 337 SHA256 7ed1d661eda2643ebb9b8f08dc88286fdbd474fa3042d6760c4e8c6cd2364cec SHA512 e649bca26c7926c627b02852cd70e9ed4b84fa187e3d4c16ac8acdb96f72e62cec1bed9831b73f81bfd165a9c8ec8af031c7027877ae2ebef11f30e5ad05d7ff WHIRLPOOL 5cb17c893e1cf4bbbcb912c67ea435d29a95d587651a176b9c4245a28719fd9ea1eb2c1761da0ec5c12f60dd06be8a6ce4e15011f3c0fdeb28ab69b917a39ab2
+DIST tree-2.65.tar.gz 197695 SHA256 0198a86a2f9a72cbf6a46f0d7f25957c4cc0a62d3861f7999600bac94a642ce9 SHA512 59e8a7052c36082d8dfe848c88fbbc68d2d88ad50426559b218de850bd8953fd7a5142d028785b5c080d4ac67e1c6ff517ad6342365d021b29d4bfa259b9a552 WHIRLPOOL 2b16116b14677df0f6b6206d2ad9ed2b86932c7427ed5d29147dd15ee4182af03258b56108099309396aa1433d44fc0131149f83d00edcabfd46968e48ba6ad6
+DIST tree-2.81.tar.gz 1167128 SHA256 f1098afa236683a7292cb634e35d5f3111a587a68a063c6c5cf9dffac4e42d2b SHA512 85e910fdb19ffd03ae79302a95ebffdb44725fd9f291a61d6912f743b54fe9b3d1c863e00c7e75d238f428946809e42c7ae6379b1051688fb06ee6c6d761d294 WHIRLPOOL 0779c196a8c4aaec02ea8cce570837d39042109f493c4a058929be860f6007d4f0aa94069ffcc8a8e5e100c8c63c97cd2f0e73551c904979b8876eff2b716b1e
+EBUILD tree-2.65-r1.ebuild 989 SHA256 4587c4a629b383cc62d028f8557f703efc0232a1e60852ee65549b4d49d2abbd SHA512 f9da9c9d1ce91415dddc1ad277ecef8c02f82301e5ab745876fb4632b0a0f35451ef317387e21bf41452bee90dea6d5b65f55ac8f896f2f61ff56f11b3fdb013 WHIRLPOOL ac25c0269421a7ea6018fceb6cc70b88ce2180996c5677cd147791ec1f27ddea2b906e3bd117f746347f81517f26371109aaaa0a2469804c5fffb341f3931b31
+EBUILD tree-2.81.ebuild 930 SHA256 c5afeb1805ddd1908e1ad288a01c7818aa0c7c169b906d236c986edda3a26981 SHA512 5c04375499ecbf2fbf635536949163824cae501a53618fd07855bb5cd257b32d3728a36c72516f0259d407a8d88966750025a8b59633fbc79a7fe318f99b520f WHIRLPOOL 0da5302d46676f1ee5578da86f6197c7b2043a6f12974c59ddf686311f9adee853d23b61408e10ff6e2751fca899f1dac7941fd4a3b0a8159ce6a8444e7ea9f0
+MISC ChangeLog 2980 SHA256 ab854f9ad52c775e405a3fcae4f7c6b8c54d05094f9e8be668d624d7b8fbff2f SHA512 4f2c9fb6453c9dbfc74487b95fc122739ac4f1fe543ea70c5f2b3110137cb5fc9a04cfb81bb91cdf2fa7342d7ede30b86e21d644819bc7a4f2be4daeec77dbc3 WHIRLPOOL 24b99438fd950c8ee6b2686b066b43aeabc594a96a547ce5f3c1e38436cde12af155c27b2763ee66364e2b8ad6ded4e84b3e255e6d924703dd56ff555b4fa26f
+MISC ChangeLog-2015 1861 SHA256 27c2a23eb21bc3bb41d7c50b2496cd02336fb4e0c2412a2d0351b159ae49920b SHA512 e23f937aeba63efc9b2981fecb9f3a5c3ea4942c6df33491411e9a75ba9d83532144833264cf79c5a7a059e007fc2c224db8eadd1ea0589088b938b1c3cd2ca6 WHIRLPOOL ed728babc9a708181215e710c5d031f5e55e547a5806bd92eb259bb695ed41fa23441d095c280783b93e0a2b33337feea1bdb085ab2d14c6c2d53f8cf0eb5b27
+MISC metadata.xml 618 SHA256 ffea700d3d70c3c6998fb20316a321f06bbc940725b4f52faa4a9dde46915c47 SHA512 64895ee65efc8d82e6981db7f9f80b795d093113026a46706bab141001f5c000fca68a9f9e8f072ef7b68544a51753fe7a9615ff1b9f81d66af41bebb5ae47f5 WHIRLPOOL d0592a7565ccafc6443f506a37b4754aa82ed90bf967b160c252db0abb8ab4e1f543caffc5ff3f7d4bada1162f2a66a172671a37e1be63298b4f81834531d414
diff --git a/dev-cpp/tree/files/tree-2.62-test.patch b/dev-cpp/tree/files/tree-2.62-test.patch
new file mode 100644
index 000000000000..f7022426698b
--- /dev/null
+++ b/dev-cpp/tree/files/tree-2.62-test.patch
@@ -0,0 +1,17 @@
+--- test_tree.output 2008-08-28 11:16:11.000000000 +0100
++++ test_tree.output.new 2009-04-15 19:06:53.174832287 +0100
+@@ -1,3 +1,8 @@
++-----
++hi
++ 1
++ 0
++-----
+ empty tree to begin with:
+ 0
+ 'more text' is sibling 2 in its sibling range
+@@ -309,3 +314,5 @@
+ D
+ I
+ -----
++G
++H
diff --git a/dev-cpp/tree/files/tree-2.65-gcc46.patch b/dev-cpp/tree/files/tree-2.65-gcc46.patch
new file mode 100644
index 000000000000..d75b516112ba
--- /dev/null
+++ b/dev-cpp/tree/files/tree-2.65-gcc46.patch
@@ -0,0 +1,15 @@
+ tree.hh | 1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/tree.hh b/tree.hh
+index 1429da3..d780be3 100644
+--- a/tree.hh
++++ b/tree.hh
+@@ -71,6 +71,7 @@
+ #include <set>
+ #include <queue>
+ #include <algorithm>
++#include <cstddef>
+
+ // HP-style construct/destroy have gone from the standard,
+ // so here is a copy.
diff --git a/dev-cpp/tree/metadata.xml b/dev-cpp/tree/metadata.xml
new file mode 100644
index 000000000000..c99a88a76fcf
--- /dev/null
+++ b/dev-cpp/tree/metadata.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci@gentoo.org</email>
+ <name>Gentoo Science Project</name>
+ </maintainer>
+ <longdescription lang="en">
+ The tree.hh library for C++ provides an STL-like container class for
+ n-ary trees, templated over the data stored at the nodes. Various
+ types of iterators are provided (post-order, pre-order, and
+ others). Where possible the access methods are compatible with the
+ STL or alternative algorithms are available.
+</longdescription>
+</pkgmetadata>
diff --git a/dev-cpp/tree/tree-2.65-r1.ebuild b/dev-cpp/tree/tree-2.65-r1.ebuild
new file mode 100644
index 000000000000..74cbb2bd2c22
--- /dev/null
+++ b/dev-cpp/tree/tree-2.65-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=2
+inherit eutils toolchain-funcs
+
+DESCRIPTION="An STL-like tree class"
+HOMEPAGE="http://www.aei.mpg.de/~peekas/tree/"
+SRC_URI="http://www.aei.mpg.de/~peekas/tree/${P}.tar.gz"
+
+LICENSE="|| ( GPL-2 GPL-3 )"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="doc"
+
+DEPEND=""
+RDEPEND="${DEPEND}"
+
+src_prepare() {
+ # test was buggy, reported upstream
+ epatch \
+ "${FILESDIR}"/${PN}-2.62-test.patch \
+ "${FILESDIR}"/${P}-gcc46.patch
+}
+
+src_test() {
+ $(tc-getCXX) ${CXXFLAGS} test_tree.cc -o test_tree \
+ || die "compile test failed"
+ ./test_tree > mytest.output || die "running test failed"
+ diff -Nu test_tree.output mytest.output || die "test dist failed"
+}
+
+src_install() {
+ insinto /usr/include
+ doins tree.hh tree_util.hh || die
+ insinto /usr/share/doc/${PF}
+ doins tree_example.cc || die
+ if use doc; then
+ doins tree.pdf || die
+ fi
+}
diff --git a/dev-cpp/tree/tree-2.81.ebuild b/dev-cpp/tree/tree-2.81.ebuild
new file mode 100644
index 000000000000..db3b12d49646
--- /dev/null
+++ b/dev-cpp/tree/tree-2.81.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit eutils toolchain-funcs
+
+DESCRIPTION="An STL-like tree class"
+HOMEPAGE="http://www.aei.mpg.de/~peekas/tree/"
+SRC_URI="http://www.aei.mpg.de/~peekas/tree/${P}.tar.gz"
+
+LICENSE="|| ( GPL-2 GPL-3 )"
+SLOT="0"
+KEYWORDS="amd64 ppc64 x86 ~amd64-linux ~x86-linux ~ppc-macos ~x86-macos"
+IUSE="doc"
+
+S="${S}"/src
+
+src_prepare() {
+ rm Makefile || die
+ epatch "${FILESDIR}"/${PN}-2.62-test.patch
+}
+
+src_test() {
+ local test
+ test="$(tc-getCXX) ${CXXFLAGS} ${LDAFLAGS} test_tree.cc -o test_tree"
+
+ echo ${test}
+ eval ${test} || die "compile test failed"
+ ./test_tree > mytest.output || die "running test failed"
+ diff -Nu test_tree.output mytest.output || die "test dist failed"
+}
+
+src_install() {
+ insinto /usr/include
+ doins tree.hh tree_util.hh
+ dodoc tree_example.cc
+ if use doc; then
+ dohtml "${S}"/../doc/*
+ fi
+}
diff --git a/dev-cpp/waylandpp/Manifest b/dev-cpp/waylandpp/Manifest
new file mode 100644
index 000000000000..1adab4b4d8a7
--- /dev/null
+++ b/dev-cpp/waylandpp/Manifest
@@ -0,0 +1,6 @@
+DIST waylandpp-0.1.0.tar.gz 166427 SHA256 117df357cbd1f272737b6379e05925b38bad41bafda02761017530053fa950e7 SHA512 e0521ea99eeb7ae196ed9c8759e10d28406c5b99534b52ac51845cdd9c384ff820e4cc1fec65c537a0d071046746884793da122c72f6e75e7df4bca089d19eca WHIRLPOOL 1d589fbe1884dbd38547a0957b07533e3029cca7453618375227d87afa90fa36eded62283bf302139920860c90b250aeaca9b48e0f8098b0f9f8bbaffa889067
+DIST waylandpp-0.1.2.tar.gz 166624 SHA256 fabf0b512285abea77678d9e079009569e9eb3fd98c6b851d50bc5b6c781c7d8 SHA512 2304390be26134561fb69e208a6bafd0e9789e6b212ff2f46384c6ed50ae1c9eca3f06a3b4958c8e710cc1a0be61ed84c7ff292ec7011dbb0396cd2d83363f7f WHIRLPOOL 2633f41c0038c5f353ce7d9771c09d7a60ade11e9e7d0209180fb9f450437b37c3feebc955568335ce3371aae9b5083ab3425a8256157c5e7f94e0bd009ea3df
+EBUILD waylandpp-0.1.0.ebuild 1246 SHA256 1b7183e6bb860de9ca3c0d7cbd83c52cd205fde16d5c5466bbab98c24d1c9015 SHA512 cdeb50fcad7a3630338a1b830c81313ae2af699ff3b3dc7f16c2b4cd20fe25a55821afbbb56d741ba10d0352429683160fe22bb5f54f6e3c28a5d0716465cc6c WHIRLPOOL 35907aaa7db7e609c924b005878e19d595c05095822ef8a0bab94572e2a54f2a32e5a26c0607697b938a1eb1b20c3e114f3b96052a010423d6d3ece3afd54a13
+EBUILD waylandpp-0.1.2.ebuild 1276 SHA256 8edc86903c7dad272fe8c4fcfb62ac446c5d376ec6c8c1390c88924c56abca46 SHA512 d41b8ce0f9f0fcc4c5ba5a0eccea6498a0750cf441d2bfe995d38a6ecc1c8d8e94d01147b28e9c1fcb0da6c45c593c27637eece7462cdd045e8f5441678d3182 WHIRLPOOL 64ddecf9cd8a050df66bd2bdd09c5bc1b0915a4c83836ac8900c7ff426310281400189794181e3a3136305d7b8442c14c4b2224f09a5f1fa0bb63c8a1ed2093c
+EBUILD waylandpp-9999.ebuild 1128 SHA256 aeabbe11d0b124746dd0e2947b3ecc9b68149a544baa3e88c3c2b4353c15b62f SHA512 b52d2e9ad070ef662c6a6243e5badccbf1e8935d2d9d061845aa34cd373748f20de884399f8f960bd5fb2ae9013a3ca476c28a706473903a60a16094e71c61f5 WHIRLPOOL f0caffad252917597e66583cd2ce6cd97a16bb79ac1c905c11a8129319e4dfc712c80a36b4c8ed0b6d54828d91f2cd909342e150be7013196aefdd80f1e9c0d7
+MISC metadata.xml 401 SHA256 6d2ad3537b9cbd1ec77967cd7a3328fb8c12360300384302262a43974b225f5a SHA512 3501904a23158eeae58c78bcc7cc3549bd877cf13f6490a8d63a0586ed080c28e27a6d302a9170020b571460dd0ca64acde471d765c8880bb2427d6c8ed76ada WHIRLPOOL 3fe818326b7246911153f2f6e8c269a3c2c890e270353e6ceba0e5f97d25da84a389d764a62e363b3cd93abb185813b723522277bf6e03ced8895df75466da01
diff --git a/dev-cpp/waylandpp/metadata.xml b/dev-cpp/waylandpp/metadata.xml
new file mode 100644
index 000000000000..05f0a64835c9
--- /dev/null
+++ b/dev-cpp/waylandpp/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>candrews@gentoo.org</email>
+ <name>Craig Andrews</name>
+ </maintainer>
+ <upstream>
+ <bugs-to>https://github.com/NilsBrause/waylandpp/issues</bugs-to>
+ <remote-id type="github">NilsBrause/waylandpp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/waylandpp/waylandpp-0.1.0.ebuild b/dev-cpp/waylandpp/waylandpp-0.1.0.ebuild
new file mode 100644
index 000000000000..112c1a2776d8
--- /dev/null
+++ b/dev-cpp/waylandpp/waylandpp-0.1.0.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit scons-utils toolchain-funcs versionator
+
+DESCRIPTION="Wayland C++ bindings"
+HOMEPAGE="https://github.com/NilsBrause/waylandpp"
+
+LICENSE="MIT"
+IUSE="doc"
+SLOT="0/$(get_major_version)"
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/NilsBrause/waylandpp.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/NilsBrause/waylandpp/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+RDEPEND="
+ >=dev-libs/wayland-1.11.0
+ media-libs/mesa[wayland]
+"
+DEPEND="${RDEPEND}
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )
+ "
+
+src_prepare() {
+ default
+ sed -i -e "s:\$\${prefix}/lib:$\${prefix}/$(get_libdir):" -e "s:os.path.join(prefix, \"lib\":os.path.join(prefix, \"$(get_libdir)\":g" SConstruct || die
+}
+
+src_compile() {
+ CC="$(tc-getCXX)" PKG_CONFIG="$(tc-getPKG_CONFIG)" PREFIX="${D%/}/usr" escons
+ if use doc; then
+ doxygen || die "error making docs"
+ fi
+}
+
+src_install() {
+ CC="$(tc-getCXX)" PKG_CONFIG="$(tc-getPKG_CONFIG)" PREFIX="${D%/}/usr" escons install
+ # fix multilib-strict QA failures
+ if use doc; then
+ doman doc/man/man3/*.3
+ local HTML_DOCS=( doc/html )
+ einstalldocs
+ fi
+}
diff --git a/dev-cpp/waylandpp/waylandpp-0.1.2.ebuild b/dev-cpp/waylandpp/waylandpp-0.1.2.ebuild
new file mode 100644
index 000000000000..4b36e9aea8e8
--- /dev/null
+++ b/dev-cpp/waylandpp/waylandpp-0.1.2.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit scons-utils toolchain-funcs versionator
+
+DESCRIPTION="Wayland C++ bindings"
+HOMEPAGE="https://github.com/NilsBrause/waylandpp"
+
+LICENSE="MIT"
+IUSE="doc"
+SLOT="0/$(get_major_version)"
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/NilsBrause/waylandpp.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/NilsBrause/waylandpp/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+RDEPEND="
+ >=dev-libs/wayland-1.11.0
+ media-libs/mesa[wayland]
+"
+DEPEND="${RDEPEND}
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )
+ "
+
+src_prepare() {
+ default
+ sed -i -e "s:\$\${prefix}/lib:$\${prefix}/$(get_libdir):" -e "s:os.path.join(root, prefix, \"lib\":os.path.join(root, prefix, \"$(get_libdir)\":g" SConstruct || die
+}
+
+src_compile() {
+ CC="$(tc-getCXX)" PKG_CONFIG="$(tc-getPKG_CONFIG)" ROOT="${D%/}/" PREFIX="/usr" escons
+ if use doc; then
+ doxygen || die "error making docs"
+ fi
+}
+
+src_install() {
+ CC="$(tc-getCXX)" PKG_CONFIG="$(tc-getPKG_CONFIG)" ROOT="${D%/}/" PREFIX="/usr" escons install
+ # fix multilib-strict QA failures
+ if use doc; then
+ doman doc/man/man3/*.3
+ local HTML_DOCS=( doc/html )
+ einstalldocs
+ fi
+}
diff --git a/dev-cpp/waylandpp/waylandpp-9999.ebuild b/dev-cpp/waylandpp/waylandpp-9999.ebuild
new file mode 100644
index 000000000000..1dd04bc09c5a
--- /dev/null
+++ b/dev-cpp/waylandpp/waylandpp-9999.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit scons-utils toolchain-funcs versionator
+
+DESCRIPTION="Wayland C++ bindings"
+HOMEPAGE="https://github.com/NilsBrause/waylandpp"
+
+LICENSE="MIT"
+IUSE="doc"
+SLOT="0/$(get_major_version)"
+
+if [[ ${PV} == *9999 ]] ; then
+ EGIT_REPO_URI="https://github.com/NilsBrause/waylandpp.git"
+ inherit git-r3
+else
+ SRC_URI="https://github.com/NilsBrause/waylandpp/archive/${PV}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+RDEPEND="
+ >=dev-libs/wayland-1.11.0
+ media-libs/mesa[wayland]
+"
+DEPEND="${RDEPEND}
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )
+ "
+
+src_compile() {
+ CC="$(tc-getCXX)" PKG_CONFIG="$(tc-getPKG_CONFIG)" ROOT="${D%/}/" PREFIX="/usr" LIBDIR="$(get_libdir)" escons
+ if use doc; then
+ doxygen || die "error making docs"
+ fi
+}
+
+src_install() {
+ CC="$(tc-getCXX)" PKG_CONFIG="$(tc-getPKG_CONFIG)" ROOT="${D%/}/" PREFIX="/usr" LIBDIR="$(get_libdir)" escons install
+ # fix multilib-strict QA failures
+ if use doc; then
+ doman doc/man/man3/*.3
+ local HTML_DOCS=( doc/html )
+ einstalldocs
+ fi
+}
diff --git a/dev-cpp/websocketpp/Manifest b/dev-cpp/websocketpp/Manifest
new file mode 100644
index 000000000000..472dedd03ef4
--- /dev/null
+++ b/dev-cpp/websocketpp/Manifest
@@ -0,0 +1,5 @@
+DIST websocketpp-0.7.0.tar.gz 682271 SHA256 07b3364ad30cda022d91759d4b83ff902e1ebadb796969e58b59caa535a03923 SHA512 91a86d4f5120db3f474169bb146f865f82167b1e9eedabec8793b31005e4ce3d22083283bc1b9f9e37fa0da835addcb2b68260a27c753852c06b3b1bb2f3c12e WHIRLPOOL 2ea92ac5eeb4ea0b20413e7feb52bd4aab7a46f920684a640d96ce23111cea3fa2b98194181a5ba75a3f9bb1669ee0766b9a4e445348ac1d328f82c1405c2c0a
+EBUILD websocketpp-0.7.0.ebuild 720 SHA256 8e8ec59e02531baf6ed847876b32a1aedb2bb3ddd81d6f22a7c542e5f3733b5e SHA512 db78c99d3024f18a3f075cc635267a9a4f0b014e006e600423fbb24227e1e99d1000fd7e4cfa85cb45150a524d572787e25a0947662e5af8ac18a550df7a13d4 WHIRLPOOL f24ebf09768aa8c394e213321d35337ab55dbe3cb11d8b9b072983b3bf71236b4e382989772f53bc05ae6cfa05a88c2d941c292066186c1955a2a2ec1db74473
+MISC ChangeLog 3254 SHA256 7e699f17fbb395abe5fab4f2e8246af16d4990ff2a5de3d3d03d66a9c8ee24b4 SHA512 219bbc7759d79f55fb6ca0f5d7fb46d15ebeaa3edba832cdfde05afaec5fe500df84afe2e7b35f588ca04f11f543db34cbd39f6993c4835ea1e40ac060f52acb WHIRLPOOL 4baec4ebab48d63303325a05856c039049b2443c3d1906e463907f0b7c4be4845895216e547c8f50c943120054be7aee5a97622a3a9e4198fd729407dc267fb0
+MISC ChangeLog-2015 683 SHA256 9fc90420a9e0471fa772276bedf920fcc7f4be7852bfca1af5242f971df13826 SHA512 7eae0db85d3fa606cf96fbd9188a61d0c9a8137cd28888399277af0a70c4beea5ce9b1ef55aa61bdff17ad8268ca1aff3fd3b1b9c5b2a504ad636cb5a2c9b800 WHIRLPOOL d2175f81122a412d4d32a5e0d40d44bd36d840e58076d7229bae1fa571d1b2718b5b14b4dccac25d998e88e016c27f73a91294645ff5cae71714f26a8d56494d
+MISC metadata.xml 419 SHA256 f64f3f732f342154d0f847028bd1b74fbf5cd5ab6bada2de5988427f4c71e255 SHA512 92d8c85006a8857390b3bb83a9fcaa6e8a74a68eadc63018f6e70e2d4259332caaf549611a69baf44689557f05f1f7f7824d24bb9a5b582913b6580cc21608c0 WHIRLPOOL 6358bdc2f9e5e9f3c98e9b4ca4529d8dccadd1c9b68346fb53924bfe78f7e3496b44b1d11a852c9816dc13c4402e9e97b5cc2392168982cd6a6e0e3ad70da197
diff --git a/dev-cpp/websocketpp/metadata.xml b/dev-cpp/websocketpp/metadata.xml
new file mode 100644
index 000000000000..66fe497e1c38
--- /dev/null
+++ b/dev-cpp/websocketpp/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>johu@gentoo.org</email>
+ <name>Johannes Huber</name>
+ </maintainer>
+ <use>
+ <flag name="boost">Use <pkg>dev-libs/boost</pkg> instead of C++11</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">zaphoyd/websocketpp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/websocketpp/websocketpp-0.7.0.ebuild b/dev-cpp/websocketpp/websocketpp-0.7.0.ebuild
new file mode 100644
index 000000000000..d5bfee65e1b3
--- /dev/null
+++ b/dev-cpp/websocketpp/websocketpp-0.7.0.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils
+
+DESCRIPTION="C++/Boost Asio based websocket client/server library"
+HOMEPAGE="http://www.zaphoyd.com/websocketpp"
+SRC_URI="https://github.com/zaphoyd/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+KEYWORDS="~amd64 ~arm ~ppc ~x86"
+LICENSE="BSD"
+SLOT="0"
+IUSE="boost examples test"
+
+DEPEND=""
+RDEPEND="${DEPEND}
+ boost? ( dev-libs/boost )
+"
+
+# bug 630450
+RESTRICT="test"
+
+src_configure() {
+ local mycmakeargs=(
+ -DENABLE_CPP11="$(usex !boost)"
+ -DBUILD_TESTS="$(usex test)"
+ )
+
+ cmake-utils_src_configure
+}
+
+src_install() {
+ use examples && DOCS=( examples/ )
+ cmake-utils_src_install
+}
diff --git a/dev-cpp/xsd/Manifest b/dev-cpp/xsd/Manifest
new file mode 100644
index 000000000000..2dd955fad281
--- /dev/null
+++ b/dev-cpp/xsd/Manifest
@@ -0,0 +1,9 @@
+AUX xsd-4.0.0-disable_examples_and_tests.patch 1847 SHA256 500585b4301816c33d2ee02e5857963b71ef32fb7b282072b735afcc09ab06f3 SHA512 3ec04678f9b1b7825d0a594e91b2d79550e26cf8c8992dfb73aa5af98aa70f463f0da9275177d97caea3e637fbbb3a2a21768f585c1237484442cd60ce36027f WHIRLPOOL 65dbf07f36e2f7baff180e0d10229e8a7d76f4000d5180af962456a562a3e1ba17c09b6adc5384c06b2ff7dd3a4b35dc348bbf1cb117f9c23998ded0c75900ba
+AUX xsd-4.0.0-fix-expat-support.patch 2271 SHA256 a60fa5da0e31efe9aafeb96d81e0142b8048a49937b7cc595ec4ab4b680981d3 SHA512 ef4be3e1f7a27d1b06e7b7eca2824865302b57c6f8cfc46054c880e908a9dea42cf524415cf2ba041c06ea93317ca51eb087e422882651f31e687a1096dd3105 WHIRLPOOL 0e2372c22fd3b9c49e967778f51cc5764cb8afa5878cf7031608632f1f30e32f71fd3aa1ced8dcd0ad58472f149b8955b574d8ae9afd000922d027b136362f59
+AUX xsd-4.0.0-fix-include.patch 441 SHA256 58da51da9af9b7807c83c2910e1de1aa43b9007b2adb512729ff7a5e58802cf3 SHA512 c785caada9f39a027f7373c26bbf6e4e3c5e01c62b1581bf4643746abdfd64727c047d92630b51a1100f3ca198ffcd9a29bdd4fb277f756541c71973a42ad789 WHIRLPOOL b1495c6c9f15d803ab42241190de8df5567f6ceb0e50d4608c17eaf3efb42aaa9afdee3e797aa7004bb0031cd4936822f08b64845211c0fae2375520f066ad35
+AUX xsd-4.0.0-xsdcxx-rename.patch 5759 SHA256 e4ba3d6c0c959bd6b8fc799557e0b72d5dd780ca2f6dfd009f9736b4ac586118 SHA512 82d7bdefc4b1c0e5cefbcad84b556e2739d034047b13d74007e67bc0192585a25b5f0d44a9d795d88ad9d95f42ee7621417643b7353c5c4ea3e9319f1566509f WHIRLPOOL 2ca657857827937753d3c62585a3adb38cab7747750687689f18f73789fbd683cc8e30d923f538651d19b6a8f5d7a171728ca0591a571a36112d8b5f1895204b
+DIST xsd-4.0.0.tar.bz2 1042144 SHA256 dd85f46407c7ec161518f3fdc64263afb68b057b1bc0b09b47d792d1fabd29c2 SHA512 0bac508e6948ef9e2399daed2554fcff3eaa79a7e62a3b245c777fb8bef3c5c80a35403bffdb00f72d3cf1b411747a91c059dd1c932b0a00baf076d3e60da527 WHIRLPOOL 84cd9baeb2a9fbfa24dafd212950ca7e7ab808d3bc432c8fbf3837c4aad2d1aefabc5fa7f6ac1fb69584b6bd136f04badf435c28024009b0edc00ea7f2ef78ef
+EBUILD xsd-4.0.0.ebuild 3868 SHA256 b7006a3d1f5de18cb30670e1a4479df4eb1eab1a458de6f38f9fdfe57913bc5f SHA512 775f1169c2640f1cd618fbd7cf364b2377db61f8ec3bff7c4365b7aab35f4c5a2395edd2e4986c37aa10b8e8ad38da9b08411c31d769fa71bd8c4f2be32bfd79 WHIRLPOOL 86f4de479b092f8558695909ca409d650556d5bdd3f434180a290f3364828fe7f917e179c13abc4dddf469ddc41a63cf0471b5382c9eb2e19e07f51c9562e5cc
+MISC ChangeLog 3149 SHA256 15f08a8f7bd88b83ea16c4c40ebf445c9e3a14dad83a86207d8a3278a878991f SHA512 cec1007da417fd7b648279a41c566b9a548426db03108091a7dc710e08b7fd73a9f6e65179d3fd38067da73aa140d724bc79e8e13a3bd7cbaa833ab82fa466a4 WHIRLPOOL a1b9891c1180c0dfa5c1d3cbe9f797c4474aa7719d96313003da66891566b708d92d93a6d4e7f81a9c2d4e6f6e96f597eaebbc67d87cc7d0b20b374931066405
+MISC ChangeLog-2015 2537 SHA256 b56a8fd61af730b8d303ae71653895be07b3577c314fba4b9708d930292564c3 SHA512 bf5bcb8e94dff6a62cd8939998dbba2a0d945021b29966862a03b7401f64d4d56386b485f64dee9c09042b0dc27f79439077bb65b002cdfc3b8b126559954d9d WHIRLPOOL f7c3fca87fff3c4265897008e3dc1b6bc8779e7abf322d90f0bef524ce2793fe64f4b0cbcd3b3d6a637003bd7cbbd27fca17e554abe800e0539536aae371e416
+MISC metadata.xml 347 SHA256 3e3f3bd8769ffa7aa0bce86a67be2c710b4be0140c2d0fe1ad0a6f9181fc8ee2 SHA512 b8c8e3dfc35f84888d8ab3faee76261ee449e15c83e9672e8b33c0929b573f7b009894dd4e0c341ffb03f45bfb13c50d2f90f89075679f643faf41fd686b96ba WHIRLPOOL 87f8220b4a85db0cf75ee395ec387ce056f75810fed232e13bdf8023a623e534f2e260e0a93a9ff5633633b6f540b79f093207a290a7f75c2c268416c63c2995
diff --git a/dev-cpp/xsd/files/xsd-4.0.0-disable_examples_and_tests.patch b/dev-cpp/xsd/files/xsd-4.0.0-disable_examples_and_tests.patch
new file mode 100644
index 000000000000..d04487a17762
--- /dev/null
+++ b/dev-cpp/xsd/files/xsd-4.0.0-disable_examples_and_tests.patch
@@ -0,0 +1,50 @@
+--- a/makefile
++++ b/makefile
+@@ -15,8 +15,6 @@
+ .PHONY: $(dist-pre)
+
+ $(default): $(out_base)/xsd/ \
+- $(out_base)/tests/ \
+- $(out_base)/examples/ \
+ $(out_base)/doc/
+
+ # Test.
+@@ -28,7 +26,6 @@
+ #
+ $(install): $(out_base)/xsd/.install \
+ $(out_base)/libxsd/.install \
+- $(out_base)/examples/.install \
+ $(out_base)/doc/.install
+ $(call install-dir,$(src_base)/dist/examples/build,$(install_doc_dir)/xsd/examples/build)
+ $(call install-dir,$(src_base)/dist/examples/cxx,$(install_doc_dir)/xsd/examples/cxx,-name makefile)
+@@ -44,7 +41,6 @@
+ #
+ $(dist): $(out_base)/xsd/.dist \
+ $(out_base)/libxsd/.dist \
+- $(out_base)/examples/.dist \
+ $(out_base)/doc/.dist
+ $(call install-dir,$(src_base)/dist/examples/build,$(dist_prefix)/examples/build)
+ $(call install-dir,$(src_base)/dist/examples/cxx,$(dist_prefix)/examples/cxx,-name makefile)
+@@ -59,7 +55,6 @@
+ $(dist-win): $(dist-pre) \
+ $(out_base)/xsd/.dist-win \
+ $(out_base)/libxsd/.dist-win \
+- $(out_base)/examples/.dist-win \
+ $(out_base)/doc/.dist-win
+ $(call install-dir,$(src_base)/dist/etc,$(dist_prefix)/etc)
+ $(call install-dir,$(src_base)/dist/examples/build,$(dist_prefix)/examples/build)
+@@ -90,14 +85,10 @@
+ # Clean.
+ #
+ $(clean): $(out_base)/xsd/.clean \
+- $(out_base)/tests/.clean \
+- $(out_base)/examples/.clean \
+ $(out_base)/doc/.clean
+
+ $(call include,$(bld_root)/install.make)
+
+ $(call import,$(src_base)/xsd/makefile)
+ $(call import,$(src_base)/libxsd/makefile)
+-$(call import,$(src_base)/tests/makefile)
+-$(call import,$(src_base)/examples/makefile)
+ $(call import,$(src_base)/doc/makefile)
diff --git a/dev-cpp/xsd/files/xsd-4.0.0-fix-expat-support.patch b/dev-cpp/xsd/files/xsd-4.0.0-fix-expat-support.patch
new file mode 100644
index 000000000000..e91b74eb4c35
--- /dev/null
+++ b/dev-cpp/xsd/files/xsd-4.0.0-fix-expat-support.patch
@@ -0,0 +1,59 @@
+## Fix bug in C++/Parser Expat Support http://scm.codesynthesis.com/?p=xsd/xsd.git;a=commitdiff;h=94cba986108a0e0f42295572ca42c356d59328d7
+### Author Boris Kolpackov <boris@codesynthesis.com>
+## Thu, 24 Jul 2014 11:40:01 +0100 (12:40 +0200)
+### Committer Boris Kolpackov <boris@codesynthesis.com>
+## Thu, 24 Jul 2014 11:40:01 +0100 (12:40 +0200)
+--- xsd/libxsd/xsd/cxx/parser/expat/elements.hxx
++++ xsd/libxsd/xsd/cxx/parser/expat/elements.hxx
+@@ -51,7 +51,9 @@ namespace xsd
+ }
+ };
+
+- typedef std::unique_ptr<XML_ParserStruct> parser_auto_ptr;
++ typedef
++ std::unique_ptr<XML_ParserStruct, parser_deleter>
++ parser_auto_ptr;
+ #else
+ // Simple auto pointer for Expat's XML_Parser object.
+ //
+--- xsd/libxsd/xsd/cxx/parser/expat/elements.txx
++++ xsd/libxsd/xsd/cxx/parser/expat/elements.txx
+@@ -283,9 +283,10 @@ namespace xsd
+ throw std::bad_alloc ();
+
+ if (system_id || public_id)
+- parse_begin (parser, system_id ? *system_id : *public_id, eh);
++ parse_begin (
++ parser.get (), system_id ? *system_id : *public_id, eh);
+ else
+- parse_begin (parser, eh);
++ parse_begin (parser.get (), eh);
+
+ // Temporarily unset the exception failbit. Also clear the
+ // fail bit when we reset the old state if it was caused
+@@ -310,8 +311,10 @@ namespace xsd
+ break;
+ }
+
+- if (XML_Parse (
+- parser, buf, is.gcount (), is.eof ()) == XML_STATUS_ERROR)
++ if (XML_Parse (parser.get (),
++ buf,
++ is.gcount (),
++ is.eof ()) == XML_STATUS_ERROR)
+ {
+ r = false;
+ break;
+##http://scm.codesynthesis.com/?p=xsd/xsd.git;a=commitdiff;h=0e5fab0664fb36c6253dfd7bb86d8985d1b349ef
+--- xsd/libxsd/xsd/cxx/parser/expat/elements.txx
++++ xsd/libxsd/xsd/cxx/parser/expat/elements.txx
+@@ -279,7 +279,7 @@ namespace xsd
+ {
+ parser_auto_ptr parser (XML_ParserCreateNS (0, XML_Char (' ')));
+
+- if (parser == 0)
++ if (parser.get () == 0)
+ throw std::bad_alloc ();
+
+ if (system_id || public_id)
+
diff --git a/dev-cpp/xsd/files/xsd-4.0.0-fix-include.patch b/dev-cpp/xsd/files/xsd-4.0.0-fix-include.patch
new file mode 100644
index 000000000000..85ea3e54313e
--- /dev/null
+++ b/dev-cpp/xsd/files/xsd-4.0.0-fix-include.patch
@@ -0,0 +1,11 @@
+--- a/xsd/xsd.cxx
++++ b/xsd/xsd.cxx
+@@ -15,7 +15,7 @@
+
+ #include <xsd-frontend/parser.hxx>
+ #include <xsd-frontend/transformations/anonymous.hxx>
+-#include <xsd-frontend/transformations/enum-synthesis.cxx>
++#include <xsd-frontend/transformations/enum-synthesis.hxx>
+ #include <xsd-frontend/transformations/restriction.hxx>
+ #include <xsd-frontend/transformations/schema-per-type.hxx>
+ #include <xsd-frontend/transformations/simplifier.hxx>
diff --git a/dev-cpp/xsd/files/xsd-4.0.0-xsdcxx-rename.patch b/dev-cpp/xsd/files/xsd-4.0.0-xsdcxx-rename.patch
new file mode 100644
index 000000000000..cb78348e7b67
--- /dev/null
+++ b/dev-cpp/xsd/files/xsd-4.0.0-xsdcxx-rename.patch
@@ -0,0 +1,159 @@
+Description: change docu from xsd to xsdcxx
+Author: Jörg Frings-Fürst <debian@jff-webhosting.net>
+Reviewed-by:
+Last-Update: 2014-07-22
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+Index: trunk/xsd/doc/xsd.1
+===================================================================
+--- a/doc/xsd.1
++++ b/doc/xsd.1
+@@ -1,16 +1,16 @@
+ .\" Process this file with
+ .\" groff -man -Tascii xsd.1
+ .\"
+-.TH XSD 1 "July 2014" "XSD 4.0.0"
++.TH XSDCXX 1 "July 2014" "XSDCXX 4.0.0"
+ .SH NAME
+-xsd \- W3C XML Schema to C++ Compiler
++xsdcxx \- W3C XML Schema to C++ Compiler
+ .\"
+ .\"
+ .\"
+ .\"--------------------------------------------------------------------
+ .SH SYNOPSIS
+ .\"--------------------------------------------------------------------
+-.B xsd
++.B xsdcxx
+ .I command
+ .B [
+ .I options
+@@ -20,19 +20,19 @@
+ .I file
+ .B ...]
+ .in
+-.B xsd help
++.B xsdcxx help
+ .B [
+ .I command
+ .B ]
+ .in
+-.B xsd version
++.B xsdcxx version
+ .\"
+ .\"
+ .\"
+ .\"--------------------------------------------------------------------
+ .SH DESCRIPTION
+ .\"--------------------------------------------------------------------
+-.B xsd
++.B xsdcxx
+ generates vocabulary-specific, statically-typed C++ mapping from W3C XML
+ Schema definitions. Particular mapping to produce is selected by a
+ .IR command .
+@@ -96,7 +96,7 @@
+ .PP
+ .RS
+ .RS 3
+-.B xsd help
++.B xsdcxx help
+ .I command
+ .RE
+ .PP
+@@ -133,9 +133,9 @@
+
+ When the C++11 mode is selected, you normally don't need to perform any
+ extra steps other than enable C++11 in your C++ compiler, if required\. The
+-XSD compiler will automatically add the necessary macro defines to the
+-generated header files that will switch the header-only XSD runtime library
+-(\fBlibxsd\fP) to the C++11 mode\. However, if you include any of the XSD
++XSDCXX compiler will automatically add the necessary macro defines to the
++generated header files that will switch the header-only XSDCXX runtime library
++(\fBlibxsd\fP) to the C++11 mode\. However, if you include any of the XSDCXX
+ runtime headers directly in your application (normally you just include the
+ generated headers), then you will need to define the \fBXSD_CXX11\fP macro
+ for your entire project\.
+@@ -1632,7 +1632,7 @@
+ .\"
+ .SH DIAGNOSTICS
+ If the input file is not a valid W3C XML Schema definition,
+-.B xsd
++.B xsdcxx
+ will issue diagnostic messages to
+ .B STDERR
+ and exit with non-zero exit code.
+Index: trunk/xsd/doc/xsd.xhtml
+===================================================================
+--- a/doc/xsd.xhtml
++++ b/doc/xsd.xhtml
+@@ -3,11 +3,11 @@
+ <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
+
+ <head>
+- <title>XSD 4.0.0 Compiler Command Line Manual</title>
++ <title>XSDCXX 4.0.0 Compiler Command Line Manual</title>
+
+ <meta name="copyright" content="&copy; 2005-2014 Code Synthesis Tools CC"/>
+ <meta name="keywords" content="xsd,xml,schema,c++,mapping,data,binding,code,generator,manual,man,page"/>
+- <meta name="description" content="XSD Compiler Command Line Manual"/>
++ <meta name="description" content="XSDCXX Compiler Command Line Manual"/>
+
+ <link rel="stylesheet" type="text/css" href="default.css" />
+
+@@ -50,19 +50,19 @@
+
+ <h1>NAME</h1>
+
+- <p>xsd - W3C XML Schema to C++ Compiler</p>
++ <p>xsdcxx - W3C XML Schema to C++ Compiler</p>
+
+ <h1>SYNOPSIS</h1>
+
+ <dl id="synopsis">
+- <dt><code><b>xsd</b> <i>command</i> [<i>options</i>] <i>file</i> [<i>file</i> ...]</code></dt>
+- <dt><code><b>xsd help</b> [<i>command</i>]</code></dt>
+- <dt><code><b>xsd version</b></code></dt>
++ <dt><code><b>xsdcxx</b> <i>command</i> [<i>options</i>] <i>file</i> [<i>file</i> ...]</code></dt>
++ <dt><code><b>xsdcxx help</b> [<i>command</i>]</code></dt>
++ <dt><code><b>xsdcxx version</b></code></dt>
+ </dl>
+
+ <h1>DESCRIPTION</h1>
+
+- <p><code><b>xsd</b></code> generates vocabulary-specific, statically-typed
++ <p><code><b>xsdcxx</b></code> generates vocabulary-specific, statically-typed
+ C++ mapping from W3C XML Schema definitions. Particular mapping to
+ produce is selected by a <code><i>command</i></code>. Each mapping has
+ a number of mapping-specific <code><i>options</i></code> that should
+@@ -138,10 +138,10 @@
+
+ <p>When the C++11 mode is selected, you normally don't need to perform any
+ extra steps other than enable C++11 in your C++ compiler, if required. The
+- XSD compiler will automatically add the necessary macro defines to the
+- generated header files that will switch the header-only XSD runtime library
++ XSDCXX compiler will automatically add the necessary macro defines to the
++ generated header files that will switch the header-only XSDCXX runtime library
+ (<code><b>libxsd</b></code>) to the C++11 mode. However, if you include any
+- of the XSD runtime headers directly in your application (normally you just
++ of the XSDCXX runtime headers directly in your application (normally you just
+ include the generated headers), then you will need to define the
+ <code><b>XSD_CXX11</b></code> macro for your entire project.</p></dd>
+
+@@ -219,7 +219,7 @@
+
+ <p>For example, if you have file <code><b>hello.xsd</b></code> with
+ namespace <code><b>http://example.com/hello</b></code> and you run
+- <code><b>xsd</b></code> on this file, then the string in question will
++ <code><b>xsdcxx</b></code> on this file, then the string in question will
+ be:</p>
+
+ <p><code><b>hello.xsd. http://example.com/hello</b></code></p>
+@@ -1530,7 +1530,7 @@
+ <h1>DIAGNOSTICS</h1>
+
+ <p>If the input file is not a valid W3C XML Schema definition,
+- <code><b>xsd</b></code> will issue diagnostic messages to STDERR
++ <code><b>xsdcxx</b></code> will issue diagnostic messages to STDERR
+ and exit with non-zero exit code.</p>
+
+ <h1>BUGS</h1>
diff --git a/dev-cpp/xsd/metadata.xml b/dev-cpp/xsd/metadata.xml
new file mode 100644
index 000000000000..e09ce345ca3b
--- /dev/null
+++ b/dev-cpp/xsd/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+ </maintainer>
+ <use>
+ <flag name="ace">Enable support for serializing to/from an ACE CDR stream</flag>
+ </use>
+</pkgmetadata>
diff --git a/dev-cpp/xsd/xsd-4.0.0.ebuild b/dev-cpp/xsd/xsd-4.0.0.ebuild
new file mode 100644
index 000000000000..d8d0d919b86a
--- /dev/null
+++ b/dev-cpp/xsd/xsd-4.0.0.ebuild
@@ -0,0 +1,150 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit toolchain-funcs versionator
+
+DESCRIPTION="An open-source, cross-platform W3C XML Schema to C++ data binding compiler"
+HOMEPAGE="http://www.codesynthesis.com/products/xsd/"
+SRC_URI="http://www.codesynthesis.com/download/${PN}/$(get_version_component_range 1-2)/${P}.tar.bz2"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86"
+IUSE="ace doc examples test zlib"
+
+RDEPEND="
+ >=dev-libs/xerces-c-3.0.0
+ dev-libs/boost:=[threads]
+ dev-cpp/libcutl
+ >=dev-cpp/libxsd-frontend-2.0.0
+ ace? ( dev-libs/ace )
+ zlib? ( sys-libs/zlib )"
+DEPEND="${RDEPEND}
+ dev-util/build
+ doc? ( app-doc/doxygen )"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-4.0.0-disable_examples_and_tests.patch"
+ "${FILESDIR}/${PN}-4.0.0-xsdcxx-rename.patch"
+ "${FILESDIR}/${PN}-4.0.0-fix-expat-support.patch"
+ "${FILESDIR}/${PN}-4.0.0-fix-include.patch"
+)
+
+src_configure() {
+ # Maintainer notes:
+ # * xqilla is not required, this is only whether or not to include the xpath
+ # examples which require xqilla
+ mkdir -p \
+ build/cxx/gnu \
+ build/import/lib{ace,boost,cult,backend-elements,xerces-c,xqilla,xsd-frontend,z} || die
+
+ cat >> build/configuration-dynamic.make <<- EOF || die
+ xsd_with_zlib := $(usex zlib y n)
+ xsd_with_ace := $(usex ace y n)
+ xsd_with_xdr := y
+ xsd_with_xqilla := y
+ xsd_with_boost_date_time := y
+ xsd_with_boost_serialization := y
+ EOF
+
+ cat >> build/cxx/configuration-dynamic.make <<- EOF || die
+ cxx_id := gnu
+ cxx_optimize := n
+ cxx_debug := n
+ cxx_rpath := n
+ cxx_pp_extra_options :=
+ cxx_extra_options := ${CXXFLAGS}
+ cxx_ld_extra_options := ${LDFLAGS}
+ cxx_extra_libs :=
+ cxx_extra_lib_paths :=
+ EOF
+
+ cat >> build/cxx/gnu/configuration-dynamic.make <<- EOF || die
+ cxx_gnu := $(tc-getCXX)
+ cxx_gnu_libraries :=
+ cxx_gnu_optimization_options :=
+ EOF
+
+ # cli
+ cat >> build/import/cli/configuration-dynamic.make <<- EOF || die
+ cli_installed := y
+ EOF
+
+ # ace
+ cat >> build/import/libace/configuration-dynamic.make <<- EOF || die
+ libace_installed := y
+ EOF
+
+ # boost
+ cat >> build/import/libboost/configuration-dynamic.make <<- EOF || die
+ libboost_installed := y
+ libboost_system := y
+ EOF
+
+ # libcutl
+ cat >> build/import/libcutl/configuration-dynamic.make <<- EOF || die
+ libcutl_installed := y
+ EOF
+
+ # xerces-c
+ cat >> build/import/libxerces-c/configuration-dynamic.make <<- EOF || die
+ libxerces_c_installed := y
+ EOF
+
+ # xqilla
+ cat >> build/import/libxqilla/configuration-dynamic.make <<- EOF || die
+ libxqilla_installed := y
+ EOF
+
+ # libxsd-frontend
+ cat >> build/import/libxsd-frontend/configuration-dynamic.make <<- EOF || die
+ libxsd_frontend_installed := y
+ EOF
+
+ # zlib
+ cat >> build/import/libz/configuration-dynamic.make <<- EOF || die
+ libz_installed := y
+ EOF
+}
+
+src_compile() {
+ emake verbose=1
+
+ if use doc; then
+ emake -C "${S}/doc/cxx/tree/reference" verbose=1
+ fi
+ if use test; then
+ XERCESC_NLS_HOME="${EPREFIX}/usr/share/xerces-c/msg" emake -C tests verbose=1
+ fi
+}
+
+src_test() {
+ XERCESC_NLS_HOME="${EPREFIX}/usr/share/xerces-c/msg" emake -C tests test
+}
+
+src_install() {
+ emake install_prefix="${ED%/}/usr" install
+
+ # Renaming binary/manpage to avoid collision with mono-2.0's xsd/xsd2
+ mv "${ED%/}"/usr/bin/xsd{,cxx} || die
+ mv "${ED%/}"/usr/share/man/man1/xsd{,cxx}.1 || die
+
+ # remove incorrectly installed documentation
+ rm -rf "${ED%/}/usr/share/doc" || die
+ # clean out all non-html related files
+ find doc/ \( -iname '*.1' -o -iname 'makefile*' -o -iname '*doxygen' \
+ -o -iname '*doxytag' -o -iname '*html2ps' \) -delete || die
+
+ DOCS=( NEWS README FLOSSE )
+ HTML_DOCS=( doc/. )
+ einstalldocs
+
+ newdoc libxsd/README README.libxsd
+ newdoc libxsd/FLOSSE FLOSSE.libxsd
+
+ if use examples; then
+ dodoc -r examples
+ docompress -x /usr/share/doc/${PF}/examples
+ fi
+}
diff --git a/dev-cpp/yaml-cpp/Manifest b/dev-cpp/yaml-cpp/Manifest
new file mode 100644
index 000000000000..49a402d90dd6
--- /dev/null
+++ b/dev-cpp/yaml-cpp/Manifest
@@ -0,0 +1,7 @@
+AUX yaml-cpp-0.5.3-gcc6.patch 1768 SHA256 3f27f8430891cfb4f32098bc2c354d4c09cd6fb44291b007cd88220d7cd3595e SHA512 be0d4cab18312329e37c114cf739fe143a6f635669a741f149fd32cf54bc0307f80a5383025dc04700a8c1ae33de68185f85d516ceb32e364317db06563a8b39 WHIRLPOOL ec409dc918356f5d51cf34920a1513a3c0a541eebd0aa744546b74acab145d8b62c7416ca392023e2a084d69dbdec16265f879c0fceaa9b5d9df70ecef6c3e73
+DIST yaml-cpp-0.5.3.tar.gz 2016737 SHA256 ac50a27a201d16dc69a881b80ad39a7be66c4d755eda1f76c3a68781b922af8f SHA512 5ed15fee3c6455c08e6bd8f74256b230f274ef18f8e144491e940640e41626517c7eaaf4a1f380c4179066a2a757c8a0f61878df9dc3caa15e37c4954be47fe0 WHIRLPOOL 93be1e627bf75e456e486eef2f9d5a9bbbf165d9aaa774ab4bb013d2797455ccaae4f312f09ff87e5693719996202f7e4d61fb65bd948e1f215c74b5747c0817
+EBUILD yaml-cpp-0.5.3-r1.ebuild 798 SHA256 cca6f23fd99a620847a100eb118545e3b5adb68aa01c78d44a34ed148feb4aea SHA512 f1bb48e5ea79c1ec1ab1a53e2947bbaf6d0d857dd66c8216e2d31048b0b0a8e1d2decd0e8bd943cbdbf6628b8db812bf598900cb19d29aa6a5720a5a3ca638f2 WHIRLPOOL d79760ffa76cf8c62f54df718158602a2cb383e7d5175b4cb67c408a2da2dccca970246590308d42acaa461d827684829840731009554adb6c08fd461797545f
+EBUILD yaml-cpp-0.5.3.ebuild 791 SHA256 f00bb450b257ef98a75657aa517144db1be44ed9512c994e256b866c06e0ec28 SHA512 f9fe1e85c809d4a1a7e94e33e36dd828a7ca840cff21318e527cba4eab4964e053ecf328fd1e33ceb3e2fb2e7fa399c03411bd2085f8751488f93da1e48cb9d6 WHIRLPOOL 8558338896d63f5cee87c562811642524092d65b2c6bce33ff1f85f0bbb75cf02949fb61318bab79f08ff35ae385e1da1ab913249c31365718fcb4dffcc63a9c
+MISC ChangeLog 4033 SHA256 f45a4e853e26a10e72b01996e611af0b33cc851d2c9e29bb3838ce96e77788ec SHA512 e5611fca070c12cdfc719973c36a6954cec54795580488740e3c84ca67631074532c218d29cde5bdcf2ad36bbb1813581350f86826a3995d4e6264ef5b2df956 WHIRLPOOL 76f2efa6884cd2265bc1e2157ea8d02b17f2d0499957b731b9f01cce442e005b7cf1bfaf047e3ade2fe9e62a3216eb8e17b33394953f79f57a283f57a5a39cf8
+MISC ChangeLog-2015 2126 SHA256 1d0bbb874e2afc428cc99b4dd61691551478ce6eb794cd432f62350d1fd19633 SHA512 076c36a37e2875aa69ee8f8e6de54bc081bcb9782052213dc3cf5e4ff25fdf7099eee0061c6471354f53c0921abdb0fa7edab2072da75a6283fc63b499e61860 WHIRLPOOL 8f0aa1ce3621475f3f0bc329b1e16156fd57a7ca382e55ac8395c3abfdfc692cfc51c383535378951f181d044543d9afd3e0a6fcb3308525e0adc5d195f5aae3
+MISC metadata.xml 325 SHA256 0a1d9b5e57beafb8541a74c2c70f5b78ba84646a724132b45bd62b9642cb047c SHA512 a4a5de1911c7bfeb37a3ca5aca8b3c044d51230164ac7d14566a9a4064e5202fac0e613089191ea959d0bb3df157049932d394d167e32fc8a432ab35e4cf24ae WHIRLPOOL 6f58cfc7f2eb02d267b9d9313cc7e984fe476ff2f2cb07ecdd3aab1479f7dec182172cf18a8a29be407aba6b0046629110ba8fbd74e947f8f30674be3a3af333
diff --git a/dev-cpp/yaml-cpp/files/yaml-cpp-0.5.3-gcc6.patch b/dev-cpp/yaml-cpp/files/yaml-cpp-0.5.3-gcc6.patch
new file mode 100644
index 000000000000..88ee25fa0acb
--- /dev/null
+++ b/dev-cpp/yaml-cpp/files/yaml-cpp-0.5.3-gcc6.patch
@@ -0,0 +1,44 @@
+Bug: https://bugs.gentoo.org/609176
+Upstream PR: https://github.com/jbeder/yaml-cpp/pull/514
+
+From a83a1b3a7bd0a5a4eb458d898b057f6a8d409b7e Mon Sep 17 00:00:00 2001
+From: Peter-Levine <plevine457@gmail.com>
+Date: Mon, 24 Jul 2017 02:00:24 -0400
+Subject: [PATCH] Fix segfault in gmock when running tests
+
+Taken from https://github.com/google/googletest/issues/705#issuecomment-235067917
+---
+ test/gmock-1.7.0/include/gmock/gmock-spec-builders.h | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/test/gmock-1.7.0/include/gmock/gmock-spec-builders.h b/test/gmock-1.7.0/include/gmock/gmock-spec-builders.h
+index 312fbe87..2dd733b6 100644
+--- a/test/gmock-1.7.0/include/gmock/gmock-spec-builders.h
++++ b/test/gmock-1.7.0/include/gmock/gmock-spec-builders.h
+@@ -1370,6 +1370,8 @@ class ActionResultHolder : public UntypedActionResultHolderBase {
+ template <>
+ class ActionResultHolder<void> : public UntypedActionResultHolderBase {
+ public:
++ explicit ActionResultHolder() {}
++
+ void GetValueAndDelete() const { delete this; }
+
+ virtual void PrintAsActionResult(::std::ostream* /* os */) const {}
+@@ -1381,7 +1383,7 @@ class ActionResultHolder<void> : public UntypedActionResultHolderBase {
+ const typename Function<F>::ArgumentTuple& args,
+ const string& call_description) {
+ func_mocker->PerformDefaultAction(args, call_description);
+- return NULL;
++ return new ActionResultHolder();
+ }
+
+ // Performs the given action and returns NULL.
+@@ -1390,7 +1392,7 @@ class ActionResultHolder<void> : public UntypedActionResultHolderBase {
+ const Action<F>& action,
+ const typename Function<F>::ArgumentTuple& args) {
+ action.Perform(args);
+- return NULL;
++ return new ActionResultHolder();
+ }
+ };
+
diff --git a/dev-cpp/yaml-cpp/metadata.xml b/dev-cpp/yaml-cpp/metadata.xml
new file mode 100644
index 000000000000..f1c1935f78d5
--- /dev/null
+++ b/dev-cpp/yaml-cpp/metadata.xml
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>johu@gentoo.org</email>
+ <name>Johannes Huber</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="github">jbeder/yaml-cpp</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-cpp/yaml-cpp/yaml-cpp-0.5.3-r1.ebuild b/dev-cpp/yaml-cpp/yaml-cpp-0.5.3-r1.ebuild
new file mode 100644
index 000000000000..6bf29f127ca7
--- /dev/null
+++ b/dev-cpp/yaml-cpp/yaml-cpp-0.5.3-r1.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils
+
+DESCRIPTION="YAML parser and emitter in C++"
+HOMEPAGE="https://github.com/jbeder/yaml-cpp"
+SRC_URI="https://github.com/jbeder/${PN}/archive/release-${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+DEPEND=">=dev-libs/boost-1.49.0-r2:="
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${PN}-release-${PV}"
+
+PATCHES=( "${FILESDIR}"/${P}-gcc6.patch )
+
+src_prepare() {
+ sed -i \
+ -e 's:INCLUDE_INSTALL_ROOT_DIR:INCLUDE_INSTALL_DIR:g' \
+ yaml-cpp.pc.cmake || die
+
+ cmake-utils_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS=ON
+ )
+ cmake-utils_src_configure
+}
diff --git a/dev-cpp/yaml-cpp/yaml-cpp-0.5.3.ebuild b/dev-cpp/yaml-cpp/yaml-cpp-0.5.3.ebuild
new file mode 100644
index 000000000000..503d7e2b9ff4
--- /dev/null
+++ b/dev-cpp/yaml-cpp/yaml-cpp-0.5.3.ebuild
@@ -0,0 +1,37 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils
+
+DESCRIPTION="YAML parser and emitter in C++"
+HOMEPAGE="https://github.com/jbeder/yaml-cpp"
+SRC_URI="https://github.com/jbeder/${PN}/archive/release-${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 ~arm ~arm64 hppa ppc ppc64 x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+DEPEND=">=dev-libs/boost-1.49.0-r2"
+RDEPEND="${DEPEND}"
+
+S="${WORKDIR}/${PN}-release-${PV}"
+
+PATCHES=( "${FILESDIR}"/${P}-gcc6.patch )
+
+src_prepare() {
+ sed -i \
+ -e 's:INCLUDE_INSTALL_ROOT_DIR:INCLUDE_INSTALL_DIR:g' \
+ yaml-cpp.pc.cmake || die
+
+ cmake-utils_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DBUILD_SHARED_LIBS=ON
+ )
+ cmake-utils_src_configure
+}