summaryrefslogtreecommitdiff
path: root/sci-chemistry/ball
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 /sci-chemistry/ball
reinit the tree, so we can have metadata
Diffstat (limited to 'sci-chemistry/ball')
-rw-r--r--sci-chemistry/ball/Manifest15
-rw-r--r--sci-chemistry/ball/ball-1.4.2-r2.ebuild83
-rw-r--r--sci-chemistry/ball/files/ball-1.4.1-BondOrder.xml.patch30
-rw-r--r--sci-chemistry/ball/files/ball-1.4.1-missing-signed.patch26
-rw-r--r--sci-chemistry/ball/files/ball-1.4.1-multilib.patch39
-rw-r--r--sci-chemistry/ball/files/ball-1.4.2-Fix-compilation-of-sipModularWidget.patch40
-rw-r--r--sci-chemistry/ball/files/ball-1.4.2-PDBFile-Fix-compilation-with-gcc-4.8.patch28
-rw-r--r--sci-chemistry/ball/files/ball-1.4.2-QT4_EXTRACT_OPTIONS-CMake-macro-changed-in-CMake-2.8.patch44
-rw-r--r--sci-chemistry/ball/files/ball-1.4.2-fix-python-bindings.patch22
-rw-r--r--sci-chemistry/ball/files/ball-1.4.2-std-namespace-isnan.patch16
-rw-r--r--sci-chemistry/ball/files/ball-1.4.2-struct-swap-attribute.patch80
-rw-r--r--sci-chemistry/ball/files/ball-1.4.2-underlinking.patch16
-rw-r--r--sci-chemistry/ball/metadata.xml31
13 files changed, 470 insertions, 0 deletions
diff --git a/sci-chemistry/ball/Manifest b/sci-chemistry/ball/Manifest
new file mode 100644
index 000000000000..9e17eba2056c
--- /dev/null
+++ b/sci-chemistry/ball/Manifest
@@ -0,0 +1,15 @@
+AUX ball-1.4.1-BondOrder.xml.patch 1675 SHA256 8aaecb9dc1bc729a0446c350b423b47779b8d82a3b00f570a55e4b4f0b7b02c3 SHA512 77e04209bebff5057ad549d1c1d7b638391fb063efb8635a72b46287a4c4975c2d0940267bce9002f3c9dc0f6fab7e21a3099506f57a44e0a325149ee134b2e0 WHIRLPOOL db3ecb2587e607f8257348d9e6dc558e2795807fd8c62e3fecf82bb426b54d18efba510c2b8990dd6fd74781b048be1e69373678977f723c11ed6624ad774d78
+AUX ball-1.4.1-missing-signed.patch 985 SHA256 5bdeb4613e775e83bf219661f0e494f7556322aac7af3b4dfab593203c6dea7b SHA512 ea50bbceb38e80416e4f49a247816ccaf1318c45676669388f681eca5be525b5ed6d472c1b20afe37d3d95ae5334d90831269c77bce922207b515e8c5a46f20a WHIRLPOOL d6311ba93396e7b4dceb3cdf39d35d736fc8c87f52309d258673f71244903f860199c0cab55cbda81fadf11b82e60361e82c737871e2632c1c5006bdac929b10
+AUX ball-1.4.1-multilib.patch 1585 SHA256 ee246df89ca6f1559df359fb6af93462fda9c93fa8a81977f6a5b92190d6ceb5 SHA512 5eebfdce5fba25967c252d0c83f6187079efc55c9481045d6c9e111930e1bb2bed31666b913eb12f46a723aa875559b54f658460efd7be10bbbe4c7cd2982341 WHIRLPOOL f4240a867e4ae503f49bffb986e8bd8a69e1914d6e770e7ae7cb7c03efd23eec3fa095c837e5874785ec4b6bf326c9fec15e16c746f48b89d9afe173f19eb0df
+AUX ball-1.4.2-Fix-compilation-of-sipModularWidget.patch 1565 SHA256 3644269518b8444d08de7348f799ba0dedaf644d84c89a55afefdfb64822dfff SHA512 15cc7b8583b5dfcefa152dac0fcf300ad2369f147dc4bb4061fd06586eea403a67442389b2eecca93144b02f73c0eb252794604b87348e63dddcaa03d2775882 WHIRLPOOL e184f70ec3d06e2ef1dc918f0b6e7390b01ce9695ec6bc6cb2ee8f9a637657d18fe74c34ef240d4f721e3d4d74953c9f6d080da7af3d41286d681ef83107e49d
+AUX ball-1.4.2-PDBFile-Fix-compilation-with-gcc-4.8.patch 1011 SHA256 7231441f971d95ec4845cd899d1d9c3c5c6adedc91156a312c1c76d6d8a096c0 SHA512 f99d0b42b6798b0f97aeb93f9aedf9dfd68c62f948dabab4cc1e7b6a4251b10ec8b4e109936f86456f77b1faecad5eff05bb40200d55490c7f82787b3f6951a1 WHIRLPOOL b54bfc73d6b4f674a7c3830ba142a9e55a13c5775d8174ea24c47759299f00b590df958e9213be892be103064e62f7e095ef543429c2a92884c1468f1660bd9c
+AUX ball-1.4.2-QT4_EXTRACT_OPTIONS-CMake-macro-changed-in-CMake-2.8.patch 1470 SHA256 be30e8dba38a385d53604c887436bae090aaae46bed97d87b02dd12083f8c19e SHA512 18cd445e4867878f73d74afef1ae74d02bb3a118fdeb379beb2463cef501a79eacfa9c5d487fa2656993f652cc0a7432c7d139a2df101416cc6d7139dc4af034 WHIRLPOOL 5a35d821789ddebe11d45f99866e052d345972d43193888346fbb5cf036288655a92d46c6b8d82291ba4ac6d3f8a57b350a5a71412ecd90b3ea1b4fcca00cbdb
+AUX ball-1.4.2-fix-python-bindings.patch 643 SHA256 e922d2bbe70da2d7a4c52848c5d54462c2fcdcd85d2c6633758ed3cdc108ac78 SHA512 af1d61a2f4b6b1a0e567e0257e575ffe75f62bb0d0a49379bc08861d0c5bb9dee458a254966a88ecb62eefcd3c6fbb9426b734265627bf7a936111df0f7e61ef WHIRLPOOL 63c37700908f41c3ffa798bdf4af3ea570d65c0bfda4a1d0fd38d44218908dd5d6c0b37073654cb457aa18cc5948781c067ffce362e471a93eb9ede4575f48f4
+AUX ball-1.4.2-std-namespace-isnan.patch 716 SHA256 ca00219aad60b5581c8d6398e93d3a325068a38e6ca7bfbd599c666d94b010da SHA512 2fb87783e7d97d12c4841e9e475eb8d99c2a20b0e162f37394182236a6c1ca3c24c0193110671c296dbb2ae244aab720680b17b0862c3da54ab65061f49be9d2 WHIRLPOOL 2985085ba1066a274abd389030263a0f66ba52cb41b08f4665517d016f07420fc352181be4c5ae9fca8ae21221d14f24591da8bf6598a9187aa950360303f4d5
+AUX ball-1.4.2-struct-swap-attribute.patch 1997 SHA256 d1b561edddcd15d6130dc272448dcfef9737f8854b736b2ee0d5877f372cd8de SHA512 a8b7e2eaf094a97008fb69030549a4c4bb2eabaf3d06ee5191ae5512c3af73198f88c26dca5e0b63cc19d9e3b1e21c323494017f81339b4a30caf1ae8f0f98f0 WHIRLPOOL c7b8f780746207b873021e467be4690da373da5beca4ef67d49256e78616b3ce217912881440bc0533b6a07af75278a1ecca0418c03fad3f5aecb0ed9a806298
+AUX ball-1.4.2-underlinking.patch 665 SHA256 634613f8f820f6b25e6a3f914b4d0c963a7253ba72d95bd21bef8f355a552c2d SHA512 b122e4f6e87be39642355869a42730263ec9d5e66d9887af5e2c4040eef4fce1306a57b106731bba8136197eecc3f72ca99b863aead70f89825ae6724268c688 WHIRLPOOL a519d166b62775b3760395992564e2848c76fab949eca45f19ef4b3f7f35ab0d82b455cd2c74307c80e3664235a11ad36fe991622ac54a28258de8356cb1a111
+DIST BALL-1.4.2.tar.xz 16080664 SHA256 053931b2e050d7d5bceaa21ad3617a1ad0af00f94de56076ce02d544383cbf91 SHA512 c719af4ef2dc1076818d59b72350b704fbffea06bd44737519fb50d88da113ea509333d407f2330aa59bf1c4e6b81adfd3d28e05459f66d7c9707f8d85db7a87 WHIRLPOOL ba7ae340833ea5703d047a9dbc0ce50d9b9dc2b0047a0c6d9f9a17946956c684a09e0860f25c7214a2aa0adee9beb1d01eac38b0ab08259a2934f97cbef91379
+EBUILD ball-1.4.2-r2.ebuild 2037 SHA256 c5218b0291adce02ed4195d81dc83b087014b26d8ff297c1bb90b2252be2c0f6 SHA512 81f51cdb2e6d7d988aa7f180bf506804d8eb76e2e8a5a297ed50068afc536ece9b42b381123b1bfddc2f69c315aa3cbdba4fe7b60912d82907c0f5ed6ae02479 WHIRLPOOL a737d1ba8627f201d9c6d96b99f4020557a6de7ffcaccd499c6626324ecc8c6a47fab2268874f11c67b2d4345523dacdd59f66ecc869c70d60d36766a1163a9c
+MISC ChangeLog 3477 SHA256 5e0f4466c72c5783d50b6d30507447420d48ef7d92189765a1ca8f0fa575665b SHA512 83a16a4b125e367df6b1d2495a0f8c6f4a002e303b118e3220d16ee347be22240879070cd6e002d03a9567b778fbfd8c9f3ea4449924bb551d53eb9a8407184c WHIRLPOOL 5501f254ce7dcfba461fb04af335035ae50c49eed87f51261d4c581bb360224bc2cf02063eb7d391f6e987a4d0e7e3012d1d68ef49637cd54ab7f203f8ea5a57
+MISC ChangeLog-2015 3655 SHA256 9cd762f20a05231449c99a932e893c038f1a68c7fa3700398d2bb0eb4722d3c2 SHA512 4846b75ed695e81b9cb3f4795d8d817ea7dcaa2a2a5c0772f95a13a26c11c58326c2a6742508f72f8268ac923679a240d15da7340a8fc9e1e24a052ea75ec8e1 WHIRLPOOL 382e9c74992e878360d3a492ea9af6fae0a5442b42868fb6e0c2b48919d9cf96c47786d06d6b9ffd14d03a1a050892903f1ebb47580ee8374f30a95c8d2a16f6
+MISC metadata.xml 1431 SHA256 b61214d60e181d3094c9a22de31bf43ce1da55924a624cb9f956fbe037343c21 SHA512 c12eaa309bc4e2f6fb51415b943144974a23a92e0705dd7368e402c1be7244485b66bf2d1f0dc11a6b2b673be7189b2543b999924e5ecb94ca00ec9bd1ba32b2 WHIRLPOOL 39d3dbe2c48625c785c327999b7e20c7493e4021b50ef2230263f64651e8f6737efc3fed731aa81901cfdcc36f75c618030735b76ab2b278894b54b36f8d9290
diff --git a/sci-chemistry/ball/ball-1.4.2-r2.ebuild b/sci-chemistry/ball/ball-1.4.2-r2.ebuild
new file mode 100644
index 000000000000..89c96a194b67
--- /dev/null
+++ b/sci-chemistry/ball/ball-1.4.2-r2.ebuild
@@ -0,0 +1,83 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit cmake-utils python-single-r1
+
+DESCRIPTION="Biochemical Algorithms Library"
+HOMEPAGE="http://www.ball-project.org/"
+SRC_URI="http://www.ball-project.org/Downloads/v${PV}/BALL-${PV}.tar.xz"
+
+SLOT="0"
+LICENSE="LGPL-2 GPL-3"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="cuda mpi +python sql test +threads"
+
+REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
+
+RDEPEND="
+ dev-cpp/eigen:3
+ dev-libs/boost:=
+ dev-qt/qtcore:4
+ dev-qt/qtgui:4
+ dev-qt/qtopengl:4
+ dev-qt/qttest:4
+ media-libs/glew:0
+ sci-libs/fftw:3.0[threads?]
+ sci-libs/gsl
+ sci-libs/libsvm
+ sci-mathematics/lpsolve
+ virtual/opengl
+ x11-libs/libX11
+ cuda? ( dev-util/nvidia-cuda-toolkit )
+ mpi? ( virtual/mpi )
+ python? ( ${PYTHON_DEPS} )
+ sql? ( dev-qt/qtsql:4 )"
+DEPEND="${RDEPEND}
+ dev-python/sip
+ sys-devel/bison
+ virtual/yacc"
+
+S="${WORKDIR}"/BALL-${PV}
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-1.4.1-multilib.patch
+ "${FILESDIR}"/${PN}-1.4.1-missing-signed.patch
+ "${FILESDIR}"/${P}-PDBFile-Fix-compilation-with-gcc-4.8.patch
+ "${FILESDIR}"/${P}-QT4_EXTRACT_OPTIONS-CMake-macro-changed-in-CMake-2.8.patch
+ "${FILESDIR}"/${PN}-1.4.1-BondOrder.xml.patch
+ "${FILESDIR}"/${P}-Fix-compilation-of-sipModularWidget.patch
+ "${FILESDIR}"/${P}-underlinking.patch
+ "${FILESDIR}"/${P}-fix-python-bindings.patch
+ "${FILESDIR}"/${P}-std-namespace-isnan.patch
+ "${FILESDIR}"/${P}-struct-swap-attribute.patch
+)
+
+pkg_setup() {
+ use python && python-single-r1_pkg_setup
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DUSE_FFTW_THREADS=$(usex threads)
+ -DMT_ENABLE_CUDA=$(usex cuda)
+ -DMT_ENABLE_MPI=$(usex mpi)
+ -DBALL_HAS_QTSQL=$(usex sql)
+ -DBALL_PYTHON_SUPPORT=$(usex python)
+ )
+ cmake-utils_src_configure
+
+ local i
+ for i in "${S}"/data/*; do
+ ln -sf "${i}" "${BUILD_DIR}"/source/TEST/ || die
+ ln -sf "${i}" "${S}"/source/TEST/ || die
+ done
+}
+
+src_compile() {
+ cmake-utils_src_compile
+ use test && cmake-utils_src_make build_tests
+}
diff --git a/sci-chemistry/ball/files/ball-1.4.1-BondOrder.xml.patch b/sci-chemistry/ball/files/ball-1.4.1-BondOrder.xml.patch
new file mode 100644
index 000000000000..51e592806999
--- /dev/null
+++ b/sci-chemistry/ball/files/ball-1.4.1-BondOrder.xml.patch
@@ -0,0 +1,30 @@
+ source/STRUCTURE/assignBondOrderProcessor.C | 2 +-
+ source/TEST/AssignBondOrderProcessor_test.C | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/source/STRUCTURE/assignBondOrderProcessor.C b/source/STRUCTURE/assignBondOrderProcessor.C
+index f8acc4f..035fffc 100644
+--- a/source/STRUCTURE/assignBondOrderProcessor.C
++++ b/source/STRUCTURE/assignBondOrderProcessor.C
+@@ -100,7 +100,7 @@ namespace BALL
+ const bool AssignBondOrderProcessor::Default::KEKULIZE_RINGS = true;
+
+ const char* AssignBondOrderProcessor::Option::INIFile = "iniFile";
+- const String AssignBondOrderProcessor::Default::INIFile = "/bond_lengths/BondOrder.xml";
++ const String AssignBondOrderProcessor::Default::INIFile = "bond_lengths/BondOrder.xml";
+
+ const char* AssignBondOrderProcessor::Option::MAX_BOND_ORDER = "max_bond_order";
+ const int AssignBondOrderProcessor::Default::MAX_BOND_ORDER = 3;
+diff --git a/source/TEST/AssignBondOrderProcessor_test.C b/source/TEST/AssignBondOrderProcessor_test.C
+index 6dfafcc..3405ef5 100644
+--- a/source/TEST/AssignBondOrderProcessor_test.C
++++ b/source/TEST/AssignBondOrderProcessor_test.C
+@@ -1834,7 +1834,7 @@ CHECK(Option::INIFile)
+ // There is really not much we can test here, so we just execute the processor
+ // to have a chance of catching bugs with valgrind if they sneak in
+ AssignBondOrderProcessor abop;
+- abop.options.set(AssignBondOrderProcessor::Option::INIFile, "/bond_lengths/BondOrderGAFF.xml");
++ abop.options.set(AssignBondOrderProcessor::Option::INIFile, "bond_lengths/BondOrderGAFF.xml");
+
+ System sys40;
+ MOL2File mol40(BALL_TEST_DATA_PATH(AssignBondOrderProcessor_test_C4_input.mol2), std::ios::in);
diff --git a/sci-chemistry/ball/files/ball-1.4.1-missing-signed.patch b/sci-chemistry/ball/files/ball-1.4.1-missing-signed.patch
new file mode 100644
index 000000000000..6868871b3dc4
--- /dev/null
+++ b/sci-chemistry/ball/files/ball-1.4.1-missing-signed.patch
@@ -0,0 +1,26 @@
+Index: ball/include/BALL/DATATYPE/hashGrid.h
+===================================================================
+--- ball.orig/include/BALL/DATATYPE/hashGrid.h 2011-12-09 13:49:26.000000000 +0100
++++ ball/include/BALL/DATATYPE/hashGrid.h 2011-12-09 13:51:09.000000000 +0100
+@@ -37,7 +37,7 @@
+ {
+ namespace __private
+ {
+- extern const char BALL_EXPORT neighbour_table_[27][3];
++ extern const signed char BALL_EXPORT neighbour_table_[27][3];
+ }
+
+ template <typename Item> class HashGrid3;
+Index: ball/source/DATATYPE/hashGrid.C
+===================================================================
+--- ball.orig/source/DATATYPE/hashGrid.C 2011-12-09 13:49:26.000000000 +0100
++++ ball/source/DATATYPE/hashGrid.C 2011-12-09 13:50:49.000000000 +0100
+@@ -9,7 +9,7 @@
+ {
+ namespace __private
+ {
+- const char neighbour_table_[27][3] =
++ const signed char neighbour_table_[27][3] =
+ {
+ { 0, 0, 0 }, { 0, 0, -1 }, { 0, 0, 1 },
+ { 0, -1, -1 }, { 0, -1, 0 }, { 0, -1, 1 },
diff --git a/sci-chemistry/ball/files/ball-1.4.1-multilib.patch b/sci-chemistry/ball/files/ball-1.4.1-multilib.patch
new file mode 100644
index 000000000000..317c4029c678
--- /dev/null
+++ b/sci-chemistry/ball/files/ball-1.4.1-multilib.patch
@@ -0,0 +1,39 @@
+From 5b8f4e58b4e54bcdfa6f287e01f91d9dfd4e5a14 Mon Sep 17 00:00:00 2001
+From: Justin Lecher <jlec@gentoo.org>
+Date: Sun, 25 Mar 2012 14:12:21 +0200
+Subject: [PATCH] Correct path for multilib installation.
+
+Libraries should go into lib64 not lib on native 64bit. Therefore we can use the LIBDIR detected by cmake.
+---
+ CMakeLists.txt | 8 ++++----
+ 1 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 940ebf4..7eb3db4 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -426,8 +426,8 @@ SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bin")
+ ## These variables are used in all install-targets
+ IF (NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
+ SET(BALL_RUNTIME_INSTALL_DIRECTORY "bin")
+- SET(BALL_LIBRARY_INSTALL_DIRECTORY "lib")
+- SET(BALL_ARCHIVE_INSTALL_DIRECTORY "lib")
++ SET(BALL_LIBRARY_INSTALL_DIRECTORY ${CMAKE_INSTALL_LIBDIR})
++ SET(BALL_ARCHIVE_INSTALL_DIRECTORY ${CMAKE_INSTALL_LIBDIR})
+ SET(BALL_HEADER_INSTALL_DIRECTORY ".")
+ SET(BALL_DATA_INSTALL_DIRECTORY "share/BALL")
+ SET(BALL_DOCUMENTATION_INSTALL_DIRECTORY "share/BALL/doc")
+@@ -435,8 +435,8 @@ IF (NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
+ SET(BALL_PYTHON_INSTALL_DIRECTORY "bin")
+ SET(BALL_PLUGIN_INSTALL_DIRECTORY "bin")
+ ELSE()
+- SET(BALL_PYTHON_INSTALL_DIRECTORY "lib")
+- SET(BALL_PLUGIN_INSTALL_DIRECTORY "lib")
++ SET(BALL_PYTHON_INSTALL_DIRECTORY ${CMAKE_INSTALL_LIBDIR})
++ SET(BALL_PLUGIN_INSTALL_DIRECTORY ${CMAKE_INSTALL_LIBDIR})
+ ENDIF()
+ ELSE()
+ SET(BALL_BUNDLE_INSTALL_DIRECTORY "Applications")
+--
+1.7.8.5
+
diff --git a/sci-chemistry/ball/files/ball-1.4.2-Fix-compilation-of-sipModularWidget.patch b/sci-chemistry/ball/files/ball-1.4.2-Fix-compilation-of-sipModularWidget.patch
new file mode 100644
index 000000000000..3ec2f6e983a8
--- /dev/null
+++ b/sci-chemistry/ball/files/ball-1.4.2-Fix-compilation-of-sipModularWidget.patch
@@ -0,0 +1,40 @@
+From da49802f8620562f91ac2c947520dccd223ee26b Mon Sep 17 00:00:00 2001
+From: Andreas Hildebrandt <andreas.hildebrandt@uni-mainz.de>
+Date: Wed, 15 Jan 2014 17:42:01 +0100
+Subject: [PATCH] Fix compilation of sipModularWidget
+
+---
+ source/PYTHON/EXTENSIONS/VIEW/modularWidget.sip | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/source/PYTHON/EXTENSIONS/VIEW/modularWidget.sip b/source/PYTHON/EXTENSIONS/VIEW/modularWidget.sip
+index 522b0ed..7b8ba3e 100644
+--- a/source/PYTHON/EXTENSIONS/VIEW/modularWidget.sip
++++ b/source/PYTHON/EXTENSIONS/VIEW/modularWidget.sip
+@@ -22,18 +22,18 @@ class ModularWidget
+ static Size countInstances();
+ static ModularWidget* getInstance(Position);
+
+- ModularWidget(const char* = "<ModularWidget>") throw();
+- ModularWidget(const ModularWidget&) throw();
++ ModularWidget(const char* = "<ModularWidget>");
++ ModularWidget(const ModularWidget&);
+ ~ModularWidget() throw();
+
+- virtual void destroy() throw();
+- virtual void clear() throw();
++// virtual void destroy();
++ virtual void clear();
+
+ static void registerWidget(ModularWidget*) throw(NullPointer);
+ // virtual void initializeWidget(MainControl&);
+ // virtual void finalizeWidget(MainControl&);
+ virtual void checkMenu(MainControl&) throw();
+-// virtual void initializePreferencesTab(Preferences&) throw();
++// virtual void initializePreferencesTab(Preferences&);
+ // virtual void finalizePreferencesTab(Preferences&) throw();
+ virtual void applyPreferences() throw();
+ virtual void fetchPreferences(INIFile&) throw();
+--
+1.9.1
+
diff --git a/sci-chemistry/ball/files/ball-1.4.2-PDBFile-Fix-compilation-with-gcc-4.8.patch b/sci-chemistry/ball/files/ball-1.4.2-PDBFile-Fix-compilation-with-gcc-4.8.patch
new file mode 100644
index 000000000000..f6b8ff45fa7f
--- /dev/null
+++ b/sci-chemistry/ball/files/ball-1.4.2-PDBFile-Fix-compilation-with-gcc-4.8.patch
@@ -0,0 +1,28 @@
+From e7cc50705bed20e160bd4b637b23f57270f580a8 Mon Sep 17 00:00:00 2001
+From: Daniel Stoeckel <dstoeckel@bioinf.uni-sb.de>
+Date: Sat, 6 Apr 2013 01:06:55 +0200
+Subject: [PATCH] PDBFile:Fix compilation with gcc 4.8
+
+Apparently the automatic conversion from boost::shared_ptr<CrystalInfo>
+to boost::shared_ptr<PersistentObject> is no longer supported.
+Just change the type of the pointer and work around this issue.
+---
+ source/FORMAT/PDBFileDetails.C | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/source/FORMAT/PDBFileDetails.C b/source/FORMAT/PDBFileDetails.C
+index 97c2572..aedc5db 100644
+--- a/source/FORMAT/PDBFileDetails.C
++++ b/source/FORMAT/PDBFileDetails.C
+@@ -901,7 +901,7 @@ namespace BALL
+ {
+ if (!(current_protein_->hasProperty("CRYSTALINFO")))
+ {
+- boost::shared_ptr<CrystalInfo> temp_ptr(new CrystalInfo());
++ boost::shared_ptr<PersistentObject> temp_ptr(new CrystalInfo());
+ current_protein_->setProperty(NamedProperty("CRYSTALINFO", temp_ptr));
+ }
+
+--
+1.9.1
+
diff --git a/sci-chemistry/ball/files/ball-1.4.2-QT4_EXTRACT_OPTIONS-CMake-macro-changed-in-CMake-2.8.patch b/sci-chemistry/ball/files/ball-1.4.2-QT4_EXTRACT_OPTIONS-CMake-macro-changed-in-CMake-2.8.patch
new file mode 100644
index 000000000000..615a92290805
--- /dev/null
+++ b/sci-chemistry/ball/files/ball-1.4.2-QT4_EXTRACT_OPTIONS-CMake-macro-changed-in-CMake-2.8.patch
@@ -0,0 +1,44 @@
+From 1e76c9cb1920e9176b725269985c7eb43126d188 Mon Sep 17 00:00:00 2001
+From: Luis de la Garza <delagarza@informatik.uni-tuebingen.de>
+Date: Fri, 22 Nov 2013 15:18:55 +0100
+Subject: [PATCH] QT4_EXTRACT_OPTIONS CMake macro changed in CMake 2.8.12;
+ fixed BALLMacros.cmake
+
+---
+ cmake/BALLMacros.cmake | 14 ++++++++++----
+ 1 file changed, 10 insertions(+), 4 deletions(-)
+
+diff --git a/cmake/BALLMacros.cmake b/cmake/BALLMacros.cmake
+index f81ab89..0ac1b87 100644
+--- a/cmake/BALLMacros.cmake
++++ b/cmake/BALLMacros.cmake
+@@ -6,16 +6,22 @@
+ ### minor modifications (marked with ## BALL ###)
+ ###
+ MACRO(QT4_WRAP_UI_BALL outfiles )
+- QT4_EXTRACT_OPTIONS(ui_files ui_options ${ARGN})
+-
+- ### BALL ###
++ # since 2.8.12 qt4_extract_options has an additional argument
++ # copied fix from OpenMS
++ IF(${CMAKE_VERSION} VERSION_LESS "2.8.12")
++ QT4_EXTRACT_OPTIONS(ui_files ui_options ${ARGN})
++ ELSE()
++ QT4_EXTRACT_OPTIONS(ui_files ui_options ui_target ${ARGN})
++ ENDIF()
++
++ ### BALL ###
+ # create output directory (will not exist for out-of-source builds)
+ FILE(MAKE_DIRECTORY ${PROJECT_BINARY_DIR}/include/BALL/VIEW/UIC/)
+
+ FOREACH (it ${ui_files})
+ GET_FILENAME_COMPONENT(outfile ${it} NAME_WE)
+ GET_FILENAME_COMPONENT(infile ${it} ABSOLUTE)
+- ### BALL ###
++ ### BALL ###
+ SET(outfile ${PROJECT_BINARY_DIR}/include/BALL/VIEW/UIC/ui_${outfile}.h)
+ ADD_CUSTOM_COMMAND(OUTPUT ${outfile}
+ COMMAND ${QT_UIC_EXECUTABLE}
+--
+1.9.1
+
diff --git a/sci-chemistry/ball/files/ball-1.4.2-fix-python-bindings.patch b/sci-chemistry/ball/files/ball-1.4.2-fix-python-bindings.patch
new file mode 100644
index 000000000000..a13ea2f36ec0
--- /dev/null
+++ b/sci-chemistry/ball/files/ball-1.4.2-fix-python-bindings.patch
@@ -0,0 +1,22 @@
+From 38a955ad9588817073a330c79d4b4476afcf69d5 Mon Sep 17 00:00:00 2001
+From: Daniel Stoeckel <dstoeckel@bioinf.uni-sb.de>
+Date: Thu, 14 Apr 2016 19:30:04 +0200
+Subject: [PATCH] Fix Python bindings for Box
+
+---
+ source/PYTHON/EXTENSIONS/VIEW/box.sip | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/source/PYTHON/EXTENSIONS/VIEW/box.sip b/source/PYTHON/EXTENSIONS/VIEW/box.sip
+index 341b1a4..592765e 100644
+--- a/source/PYTHON/EXTENSIONS/VIEW/box.sip
++++ b/source/PYTHON/EXTENSIONS/VIEW/box.sip
+@@ -6,7 +6,7 @@
+
+ class Box
+ : GeometricObject,
+- Vertex2
++ Box3
+ {
+ %TypeHeaderCode
+ #include <BALL/VIEW/PRIMITIVES/box.h>
diff --git a/sci-chemistry/ball/files/ball-1.4.2-std-namespace-isnan.patch b/sci-chemistry/ball/files/ball-1.4.2-std-namespace-isnan.patch
new file mode 100644
index 000000000000..cea6377b6a20
--- /dev/null
+++ b/sci-chemistry/ball/files/ball-1.4.2-std-namespace-isnan.patch
@@ -0,0 +1,16 @@
+Fix C++11 changes to isnan():
+* /var/tmp/portage/sci-chemistry/ball-1.4.2/work/BALL-1.4.2/source/MOLMEC/MINIMIZATION/shiftedLVMM.C:769:46: required from here
+* /var/tmp/portage/sci-chemistry/ball-1.4.2/work/BALL-1.4.2/include/BALL/MATHS/common.h:175:18: error: ‘isnan’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
+* return (isnan(t) != 0);
+
+--- BALL-1.4.2/include/BALL/MATHS/common.h
++++ BALL-1.4.2/include/BALL/MATHS/common.h
+@@ -172,7 +172,7 @@
+ #elif defined(BALL_OS_DARWIN)
+ return ( __inline_isnand(t) != 0);
+ #else
+- return (isnan(t) != 0);
++ return (std::isnan(t) != 0);
+ #endif
+ }
+
diff --git a/sci-chemistry/ball/files/ball-1.4.2-struct-swap-attribute.patch b/sci-chemistry/ball/files/ball-1.4.2-struct-swap-attribute.patch
new file mode 100644
index 000000000000..da334915f410
--- /dev/null
+++ b/sci-chemistry/ball/files/ball-1.4.2-struct-swap-attribute.patch
@@ -0,0 +1,80 @@
+Silence warning pollution due to misplaced attributes:
+* /var/tmp/portage/sci-chemistry/ball-1.4.2/work/BALL-1.4.2/include/BALL/COMMON/logStream.h:165:22: note: attribute for ‘struct BALL::LogStreamBuf::StreamStruct’ must follow the ‘struct’ keyword
+
+--- BALL-1.4.2/include/BALL/COMMON/logStream.h
++++ BALL-1.4.2/include/BALL/COMMON/logStream.h
+@@ -162,7 +162,7 @@
+ virtual int overflow(int c = -1);
+ //@}
+
+- BALL_EXPORT struct StreamStruct
++ struct BALL_EXPORT StreamStruct
+ {
+ std::ostream* stream;
+ string prefix;
+--- BALL-1.4.2/include/BALL/FORMAT/MOL2File.h
++++ BALL-1.4.2/include/BALL/FORMAT/MOL2File.h
+@@ -33,7 +33,7 @@
+ public:
+
+ /// A class used for storing TRIPOS sets
+- BALL_EXPORT struct SetStruct
++ struct BALL_EXPORT SetStruct
+ {
+ String name;
+ bool is_static;
+@@ -136,7 +136,7 @@
+
+ bool containsAtomChilds_(AtomContainerConstIterator& frag_it);
+
+- BALL_EXPORT struct AtomStruct
++ struct BALL_EXPORT AtomStruct
+ {
+ String name;
+ Vector3 position;
+@@ -146,14 +146,14 @@
+ float charge;
+ };
+
+- BALL_EXPORT struct BondStruct
++ struct BALL_EXPORT BondStruct
+ {
+ Position atom1;
+ Position atom2;
+ String type;
+ };
+
+- BALL_EXPORT struct MoleculeStruct
++ struct BALL_EXPORT MoleculeStruct
+ {
+ String name;
+ Size number_of_atoms;
+@@ -166,7 +166,7 @@
+ String comment;
+ };
+
+- BALL_EXPORT struct SubstructureStruct
++ struct BALL_EXPORT SubstructureStruct
+ {
+ String name;
+ Size root_atom;
+@@ -178,7 +178,7 @@
+ String comment;
+ };
+
+- BALL_EXPORT struct CommentStruct
++ struct BALL_EXPORT CommentStruct
+ {
+ String name;
+ String value;
+--- BALL-1.4.2/include/BALL/FORMAT/MOLFile.h
++++ BALL-1.4.2/include/BALL/FORMAT/MOLFile.h
+@@ -41,7 +41,7 @@
+ @see PropertyManager::setProperty
+ @see PropertyManager::getProperty
+ */
+- BALL_EXPORT struct Property
++ struct BALL_EXPORT Property
+ {
+ ///
+ static const String ATOM_MASS_DIFFERENCE;
diff --git a/sci-chemistry/ball/files/ball-1.4.2-underlinking.patch b/sci-chemistry/ball/files/ball-1.4.2-underlinking.patch
new file mode 100644
index 000000000000..825f41978c13
--- /dev/null
+++ b/sci-chemistry/ball/files/ball-1.4.2-underlinking.patch
@@ -0,0 +1,16 @@
+ source/APPLICATIONS/BALLVIEW/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/source/APPLICATIONS/BALLVIEW/CMakeLists.txt b/source/APPLICATIONS/BALLVIEW/CMakeLists.txt
+index 6d16212..f94ce76 100644
+--- a/source/APPLICATIONS/BALLVIEW/CMakeLists.txt
++++ b/source/APPLICATIONS/BALLVIEW/CMakeLists.txt
+@@ -85,7 +85,7 @@ IF (UNIX)
+ LIST(APPEND BALLVIEW_SUPPORT_LIBRARIES "pthread")
+ ENDIF ()
+
+-TARGET_LINK_LIBRARIES(BALLView BALL VIEW ${BALLVIEW_SUPPORT_LIBRARIES})
++TARGET_LINK_LIBRARIES(BALLView BALL VIEW ${BALLVIEW_SUPPORT_LIBRARIES} X11)
+
+ #Setup the translations
+ INCLUDE(${CMAKE_SOURCE_DIR}/cmake/BALLViewTranslations.cmake)
diff --git a/sci-chemistry/ball/metadata.xml b/sci-chemistry/ball/metadata.xml
new file mode 100644
index 000000000000..72d683b18460
--- /dev/null
+++ b/sci-chemistry/ball/metadata.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>sci-chemistry@gentoo.org</email>
+ <name>Gentoo Chemistry Project</name>
+ </maintainer>
+ <longdescription>
+Rapid Software Prototyping can significantly reduce development times in the
+field of Computational Molecular Biology and Molecular Modeling.
+BALL (Biochemical Algorithms Library) is an application framework in C++ that
+has been specifically designed for this purpose. It provides an extensive set
+of data structures as well as classes for Molecular Mechanics, advanced
+solvation methods, comparison and analysis of protein structures, file
+import/export, and visualization .
+
+BALL has been carefully designed to be robust, easy to use, and open to
+extensions. Especially its extensibility which results from an object-oriented
+and generic programming approach distinguishes it from other software packages.
+BALL is well suited to serve as a public repository for reliable data
+structures and algorithms.
+
+Based on BALL we have developed a stand-alone tool for molecular visualization,
+BALLView . BALLView makes the broad functionality available through an
+integrated user-friendly GUI.
+</longdescription>
+ <use>
+ <flag name="sql">Include SQL database support</flag>
+ <flag name="cuda">Include cuda support</flag>
+ </use>
+</pkgmetadata>