summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKurt Kanzenbach <kurt@kmk-computers.de>2020-04-20 20:42:40 +0200
committerJoonas Niilola <juippis@gentoo.org>2020-04-21 15:44:48 +0300
commite269b45c27b072c0ed698b933b03c349009adb7d (patch)
tree757f407b22c47a5f240a52704c3ce8a63b5b4f24 /sci-libs/libgeodecomp
parentapp-text/nfoview: bump to version 1.27.1 (diff)
downloadgentoo-e269b45c27b072c0ed698b933b03c349009adb7d.tar.gz
gentoo-e269b45c27b072c0ed698b933b03c349009adb7d.tar.bz2
gentoo-e269b45c27b072c0ed698b933b03c349009adb7d.zip
sci-libs/libgeodecomp: Bump version to 0.5-pre20200420
That version contains bugfixes. Package-Manager: Portage-2.3.89, Repoman-2.3.20 Signed-off-by: Kurt Kanzenbach <kurt@kmk-computers.de> Signed-off-by: Joonas Niilola <juippis@gentoo.org>
Diffstat (limited to 'sci-libs/libgeodecomp')
-rw-r--r--sci-libs/libgeodecomp/Manifest1
-rw-r--r--sci-libs/libgeodecomp/files/libgeodecomp-0.5.0_pre20200420-mpi.patch292
-rw-r--r--sci-libs/libgeodecomp/libgeodecomp-0.5.0_pre20200420.ebuild81
3 files changed, 374 insertions, 0 deletions
diff --git a/sci-libs/libgeodecomp/Manifest b/sci-libs/libgeodecomp/Manifest
index b0aab143193e..430111edb1ed 100644
--- a/sci-libs/libgeodecomp/Manifest
+++ b/sci-libs/libgeodecomp/Manifest
@@ -1 +1,2 @@
DIST libgeodecomp-0.5.0_pre20200314.tar.gz 1506929 BLAKE2B 078a0d3384963b0d3b5e5885d794b4feb6493ab3c4d4df068c300769f6bd8ee1d695accec0f4a702b218d725cc68889450d7d4fbddd495387e75a6804bbd8de9 SHA512 5bc23ce68d91d3cb8ec753a09efc4d7c46aab3c307c529f2f2e09593d14bcb027532aeea32ba99ce524cc6dfb248e983a040f482a47784f5da6fb07aac06a859
+DIST libgeodecomp-0.5.0_pre20200420.tar.gz 1507078 BLAKE2B 64d5c9a138c54175ce049a1a02def90553bca617b22c9ac5fa93cd66aebfd7892f5a458f2d3eb3dd987d3c897cbb338b64cb64af7447f6ae74b41d02a762888e SHA512 0e1caa011641fba5af3c32f165fc95ced578ebeb45cb7ef56f1ede416f2e6aef532569a85339e48b43b0050bbfb60ffa1760604577c07137590445a87e691c70
diff --git a/sci-libs/libgeodecomp/files/libgeodecomp-0.5.0_pre20200420-mpi.patch b/sci-libs/libgeodecomp/files/libgeodecomp-0.5.0_pre20200420-mpi.patch
new file mode 100644
index 000000000000..1a1164e342be
--- /dev/null
+++ b/sci-libs/libgeodecomp/files/libgeodecomp-0.5.0_pre20200420-mpi.patch
@@ -0,0 +1,292 @@
+From 55356ab9c03cd25efeb5176761f2f5b3744b4371 Mon Sep 17 00:00:00 2001
+From: Kurt Kanzenbach <kurt@kmk-computers.de>
+Date: Fri, 24 Jan 2020 17:59:48 +0100
+Subject: [PATCH] cmake: Disable mpiruns
+
+The mpiruns will violate the sandboxing. Therefore, disable them including
+scotch.
+
+Signed-off-by: Kurt Kanzenbach <kurt@kmk-computers.de>
+---
+ CMakeLists.txt | 14 +-
+ CMakeModules/FindSCOTCH.cmake | 238 +++++++++++++++++-----------------
+ 2 files changed, 121 insertions(+), 131 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index ed5cc607c3ed..fec488002958 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -238,19 +238,9 @@ if (MACHINE_ARCH MATCHES "x86_64")
+ set(AMD64_LINUX true)
+ endif()
+
+-# test if mpirun/mpiexec supports the --oversubscribe flag:
++# use the --oversubscribe flag:
+ if(MPI_FOUND)
+- execute_process(
+- COMMAND ${MPIEXEC} --oversubscribe ${MPIEXEC_NUMPROC_FLAG} 4 echo ok
+- RESULT_VARIABLE MPIEXEC_OVERSUBSCRIBE_RETURN_CODE
+- OUTPUT_QUIET
+- ERROR_QUIET)
+-
+- if (MPIEXEC_OVERSUBSCRIBE_RETURN_CODE EQUAL 0)
+- set(MPIEXEC_OVERSUBSCRIBE_FLAG "--oversubscribe")
+- else()
+- set(MPIEXEC_OVERSUBSCRIBE_FLAG "")
+- endif()
++ set(MPIEXEC_OVERSUBSCRIBE_FLAG "--oversubscribe")
+ endif()
+
+ #============= 3. CONFIGURABLE BUILD OPTIONS =========================
+diff --git a/CMakeModules/FindSCOTCH.cmake b/CMakeModules/FindSCOTCH.cmake
+index 5c717977dbba..146c2bf8bb60 100644
+--- a/CMakeModules/FindSCOTCH.cmake
++++ b/CMakeModules/FindSCOTCH.cmake
+@@ -233,125 +233,125 @@ int main() {
+ ")
+
+ message(STATUS "Performing test SCOTCH_TEST_RUNS")
+- try_run(
+- SCOTCH_TEST_LIB_EXITCODE
+- SCOTCH_TEST_LIB_COMPILED
+- ${CMAKE_CURRENT_BINARY_DIR}
+- ${SCOTCH_TEST_LIB_CPP}
+- CMAKE_FLAGS
+- "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}"
+- "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}"
+- COMPILE_OUTPUT_VARIABLE SCOTCH_TEST_LIB_COMPILE_OUTPUT
+- RUN_OUTPUT_VARIABLE SCOTCH_TEST_LIB_OUTPUT
+- )
+-
+- if (SCOTCH_TEST_LIB_COMPILED AND SCOTCH_TEST_LIB_EXITCODE EQUAL 0)
+- message(STATUS "Performing test SCOTCH_TEST_RUNS - Success")
+- set(SCOTCH_TEST_RUNS TRUE)
+- else()
+- message(STATUS "Performing test SCOTCH_TEST_RUNS - Failed")
+- if (SCOTCH_DEBUG)
+- # Output some variables
+- message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
+- "SCOTCH_TEST_LIB_COMPILED = ${SCOTCH_TEST_LIB_COMPILED}")
+- message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
+- "SCOTCH_TEST_LIB_COMPILE_OUTPUT = ${SCOTCH_TEST_LIB_COMPILE_OUTPUT}")
+- message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
+- "SCOTCH_TEST_LIB_EXITCODE = ${SCOTCH_TEST_LIB_EXITCODE}")
+- message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
+- "SCOTCH_TEST_LIB_OUTPUT = ${SCOTCH_TEST_LIB_OUTPUT}")
+- endif()
+- endif()
+-
+- # If program does not run, try adding zlib library and test again
+- if(NOT SCOTCH_TEST_RUNS)
+- if (NOT ZLIB_FOUND)
+- find_package(ZLIB)
+- endif()
+-
+- if (ZLIB_INCLUDE_DIRS AND ZLIB_LIBRARIES)
+- set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${ZLIB_INCLUDE_DIRS})
+- set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${ZLIB_LIBRARIES})
+-
+- message(STATUS "Performing test SCOTCH_ZLIB_TEST_RUNS")
+- try_run(
+- SCOTCH_ZLIB_TEST_LIB_EXITCODE
+- SCOTCH_ZLIB_TEST_LIB_COMPILED
+- ${CMAKE_CURRENT_BINARY_DIR}
+- ${SCOTCH_TEST_LIB_CPP}
+- CMAKE_FLAGS
+- "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}"
+- "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}"
+- COMPILE_OUTPUT_VARIABLE SCOTCH_ZLIB_TEST_LIB_COMPILE_OUTPUT
+- RUN_OUTPUT_VARIABLE SCOTCH_ZLIB_TEST_LIB_OUTPUT
+- )
+-
+- # Add zlib flags if required and set test run to 'true'
+- if (SCOTCH_ZLIB_TEST_LIB_COMPILED AND SCOTCH_ZLIB_TEST_LIB_EXITCODE EQUAL 0)
+- message(STATUS "Performing test SCOTCH_ZLIB_TEST_RUNS - Success")
+- set(SCOTCH_INCLUDE_DIRS ${SCOTCH_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIRS})
+- set(SCOTCH_LIBRARIES ${SCOTCH_LIBRARIES} ${ZLIB_LIBRARIES})
+- set(SCOTCH_TEST_RUNS TRUE)
+- else()
+- message(STATUS "Performing test SCOTCH_ZLIB_TEST_RUNS - Failed")
+- if (SCOTCH_DEBUG)
+- message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
+- "SCOTCH_ZLIB_TEST_LIB_COMPILED = ${SCOTCH_ZLIB_TEST_LIB_COMPILED}")
+- message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
+- "SCOTCH_ZLIB_TEST_LIB_COMPILE_OUTPUT = ${SCOTCH_ZLIB_TEST_LIB_COMPILE_OUTPUT}")
+- message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
+- "SCOTCH_TEST_LIB_EXITCODE = ${SCOTCH_TEST_LIB_EXITCODE}")
+- message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
+- "SCOTCH_TEST_LIB_OUTPUT = ${SCOTCH_TEST_LIB_OUTPUT}")
+- endif()
+- endif()
+-
+- endif()
+- endif()
+-
+- if(NOT SCOTCH_TEST_RUNS)
+- if (NOT BZIP2_FOUND)
+- find_package(BZip2)
+- endif()
+-
+- if (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES)
+- set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${BZIP2_INCLUDE_DIR})
+- set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${BZIP2_LIBRARIES})
+-
+- message(STATUS "Performing test SCOTCH_BZIP2_TEST_RUNS")
+- try_run(
+- SCOTCH_BZIP2_TEST_LIB_EXITCODE
+- SCOTCH_BZIP2_TEST_LIB_COMPILED
+- ${CMAKE_CURRENT_BINARY_DIR}
+- ${SCOTCH_TEST_LIB_CPP}
+- CMAKE_FLAGS
+- "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}"
+- "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}"
+- COMPILE_OUTPUT_VARIABLE SCOTCH_BZIP2_TEST_LIB_COMPILE_OUTPUT
+- RUN_OUTPUT_VARIABLE SCOTCH_BZIP2_TEST_LIB_OUTPUT
+- )
+-
+- # Add zlib flags if required and set test run to 'true'
+- if (SCOTCH_BZIP2_TEST_LIB_COMPILED AND SCOTCH_BZIP2_TEST_LIB_EXITCODE EQUAL 0)
+- message(STATUS "Performing test SCOTCH_BZIP2_TEST_RUNS - Success")
+- set(SCOTCH_INCLUDE_DIRS ${SCOTCH_INCLUDE_DIRS} ${BZIP2_INCLUDE_DIR})
+- set(SCOTCH_LIBRARIES ${SCOTCH_LIBRARIES} ${BZIP2_LIBRARIES})
+- set(SCOTCH_TEST_RUNS TRUE)
+- else()
+- message(STATUS "Performing test SCOTCH_BZIP2_TEST_RUNS - Failed")
+- if (SCOTCH_DEBUG)
+- message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
+- "SCOTCH_BZIP2_TEST_LIB_COMPILED = ${SCOTCH_BZIP2_TEST_LIB_COMPILED}")
+- message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
+- "SCOTCH_BZIP2_TEST_LIB_COMPILE_OUTPUT = ${SCOTCH_BZIP2_TEST_LIB_COMPILE_OUTPUT}")
+- message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
+- "SCOTCH_TEST_LIB_EXITCODE = ${SCOTCH_TEST_LIB_EXITCODE}")
+- message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
+- "SCOTCH_TEST_LIB_OUTPUT = ${SCOTCH_TEST_LIB_OUTPUT}")
+- endif()
+- endif()
+- endif()
+- endif()
++ # try_run(
++ # SCOTCH_TEST_LIB_EXITCODE
++ # SCOTCH_TEST_LIB_COMPILED
++ # ${CMAKE_CURRENT_BINARY_DIR}
++ # ${SCOTCH_TEST_LIB_CPP}
++ # CMAKE_FLAGS
++ # "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}"
++ # "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}"
++ # COMPILE_OUTPUT_VARIABLE SCOTCH_TEST_LIB_COMPILE_OUTPUT
++ # RUN_OUTPUT_VARIABLE SCOTCH_TEST_LIB_OUTPUT
++ # )
++
++ # if (SCOTCH_TEST_LIB_COMPILED AND SCOTCH_TEST_LIB_EXITCODE EQUAL 0)
++ # message(STATUS "Performing test SCOTCH_TEST_RUNS - Success")
++ # set(SCOTCH_TEST_RUNS TRUE)
++ # else()
++ # message(STATUS "Performing test SCOTCH_TEST_RUNS - Failed")
++ # if (SCOTCH_DEBUG)
++ # # Output some variables
++ # message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
++ # "SCOTCH_TEST_LIB_COMPILED = ${SCOTCH_TEST_LIB_COMPILED}")
++ # message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
++ # "SCOTCH_TEST_LIB_COMPILE_OUTPUT = ${SCOTCH_TEST_LIB_COMPILE_OUTPUT}")
++ # message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
++ # "SCOTCH_TEST_LIB_EXITCODE = ${SCOTCH_TEST_LIB_EXITCODE}")
++ # message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
++ # "SCOTCH_TEST_LIB_OUTPUT = ${SCOTCH_TEST_LIB_OUTPUT}")
++ # endif()
++ # endif()
++
++ # # If program does not run, try adding zlib library and test again
++ # if(NOT SCOTCH_TEST_RUNS)
++ # if (NOT ZLIB_FOUND)
++ # find_package(ZLIB)
++ # endif()
++
++ # if (ZLIB_INCLUDE_DIRS AND ZLIB_LIBRARIES)
++ # set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${ZLIB_INCLUDE_DIRS})
++ # set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${ZLIB_LIBRARIES})
++
++ # message(STATUS "Performing test SCOTCH_ZLIB_TEST_RUNS")
++ # try_run(
++ # SCOTCH_ZLIB_TEST_LIB_EXITCODE
++ # SCOTCH_ZLIB_TEST_LIB_COMPILED
++ # ${CMAKE_CURRENT_BINARY_DIR}
++ # ${SCOTCH_TEST_LIB_CPP}
++ # CMAKE_FLAGS
++ # "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}"
++ # "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}"
++ # COMPILE_OUTPUT_VARIABLE SCOTCH_ZLIB_TEST_LIB_COMPILE_OUTPUT
++ # RUN_OUTPUT_VARIABLE SCOTCH_ZLIB_TEST_LIB_OUTPUT
++ # )
++
++ # # Add zlib flags if required and set test run to 'true'
++ # if (SCOTCH_ZLIB_TEST_LIB_COMPILED AND SCOTCH_ZLIB_TEST_LIB_EXITCODE EQUAL 0)
++ # message(STATUS "Performing test SCOTCH_ZLIB_TEST_RUNS - Success")
++ # set(SCOTCH_INCLUDE_DIRS ${SCOTCH_INCLUDE_DIRS} ${ZLIB_INCLUDE_DIRS})
++ # set(SCOTCH_LIBRARIES ${SCOTCH_LIBRARIES} ${ZLIB_LIBRARIES})
++ # set(SCOTCH_TEST_RUNS TRUE)
++ # else()
++ # message(STATUS "Performing test SCOTCH_ZLIB_TEST_RUNS - Failed")
++ # if (SCOTCH_DEBUG)
++ # message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
++ # "SCOTCH_ZLIB_TEST_LIB_COMPILED = ${SCOTCH_ZLIB_TEST_LIB_COMPILED}")
++ # message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
++ # "SCOTCH_ZLIB_TEST_LIB_COMPILE_OUTPUT = ${SCOTCH_ZLIB_TEST_LIB_COMPILE_OUTPUT}")
++ # message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
++ # "SCOTCH_TEST_LIB_EXITCODE = ${SCOTCH_TEST_LIB_EXITCODE}")
++ # message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
++ # "SCOTCH_TEST_LIB_OUTPUT = ${SCOTCH_TEST_LIB_OUTPUT}")
++ # endif()
++ # endif()
++
++ # endif()
++ # endif()
++
++ # if(NOT SCOTCH_TEST_RUNS)
++ # if (NOT BZIP2_FOUND)
++ # find_package(BZip2)
++ # endif()
++
++ # if (BZIP2_INCLUDE_DIR AND BZIP2_LIBRARIES)
++ # set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${BZIP2_INCLUDE_DIR})
++ # set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${BZIP2_LIBRARIES})
++
++ # message(STATUS "Performing test SCOTCH_BZIP2_TEST_RUNS")
++ # try_run(
++ # SCOTCH_BZIP2_TEST_LIB_EXITCODE
++ # SCOTCH_BZIP2_TEST_LIB_COMPILED
++ # ${CMAKE_CURRENT_BINARY_DIR}
++ # ${SCOTCH_TEST_LIB_CPP}
++ # CMAKE_FLAGS
++ # "-DINCLUDE_DIRECTORIES:STRING=${CMAKE_REQUIRED_INCLUDES}"
++ # "-DLINK_LIBRARIES:STRING=${CMAKE_REQUIRED_LIBRARIES}"
++ # COMPILE_OUTPUT_VARIABLE SCOTCH_BZIP2_TEST_LIB_COMPILE_OUTPUT
++ # RUN_OUTPUT_VARIABLE SCOTCH_BZIP2_TEST_LIB_OUTPUT
++ # )
++
++ # # Add zlib flags if required and set test run to 'true'
++ # if (SCOTCH_BZIP2_TEST_LIB_COMPILED AND SCOTCH_BZIP2_TEST_LIB_EXITCODE EQUAL 0)
++ # message(STATUS "Performing test SCOTCH_BZIP2_TEST_RUNS - Success")
++ # set(SCOTCH_INCLUDE_DIRS ${SCOTCH_INCLUDE_DIRS} ${BZIP2_INCLUDE_DIR})
++ # set(SCOTCH_LIBRARIES ${SCOTCH_LIBRARIES} ${BZIP2_LIBRARIES})
++ # set(SCOTCH_TEST_RUNS TRUE)
++ # else()
++ # message(STATUS "Performing test SCOTCH_BZIP2_TEST_RUNS - Failed")
++ # if (SCOTCH_DEBUG)
++ # message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
++ # "SCOTCH_BZIP2_TEST_LIB_COMPILED = ${SCOTCH_BZIP2_TEST_LIB_COMPILED}")
++ # message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
++ # "SCOTCH_BZIP2_TEST_LIB_COMPILE_OUTPUT = ${SCOTCH_BZIP2_TEST_LIB_COMPILE_OUTPUT}")
++ # message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
++ # "SCOTCH_TEST_LIB_EXITCODE = ${SCOTCH_TEST_LIB_EXITCODE}")
++ # message(STATUS "[ ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE} ] "
++ # "SCOTCH_TEST_LIB_OUTPUT = ${SCOTCH_TEST_LIB_OUTPUT}")
++ # endif()
++ # endif()
++ # endif()
++ # endif()
+
+ endif()
+ endif()
+--
+2.24.1
+
diff --git a/sci-libs/libgeodecomp/libgeodecomp-0.5.0_pre20200420.ebuild b/sci-libs/libgeodecomp/libgeodecomp-0.5.0_pre20200420.ebuild
new file mode 100644
index 000000000000..17e4963ccb8b
--- /dev/null
+++ b/sci-libs/libgeodecomp/libgeodecomp-0.5.0_pre20200420.ebuild
@@ -0,0 +1,81 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit cmake cuda virtualx
+
+MY_COMMIT="69c5573ac7b2b654d649e8902fad73b05bf33644"
+
+DESCRIPTION="An auto-parallelizing library to speed up computer simulations"
+HOMEPAGE="
+ http://www.libgeodecomp.org
+ https://github.com/STEllAR-GROUP/libgeodecomp"
+SRC_URI="https://github.com/STEllAR-GROUP/libgeodecomp/archive/${MY_COMMIT}.tar.gz -> ${P}.tar.gz"
+
+SLOT="0"
+LICENSE="Boost-1.0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="cuda doc hpx mpi opencl opencv qt5 silo"
+
+BDEPEND="
+ doc? (
+ app-doc/doxygen
+ app-text/texlive
+ media-gfx/graphviz
+ )"
+RDEPEND="dev-libs/boost"
+DEPEND="${RDEPEND}
+ ~dev-libs/libflatarray-0.4.0_pre20200314
+ cuda? ( dev-util/nvidia-cuda-toolkit )
+ hpx? ( sys-cluster/hpx )
+ mpi? ( virtual/mpi )
+ opencl? ( virtual/opencl )
+ opencv? ( media-libs/opencv )
+ qt5? (
+ dev-qt/qtcore:5
+ dev-qt/qtgui:5
+ dev-qt/qtopengl:5
+ dev-qt/qtwidgets:5
+ )
+ silo? ( sci-libs/silo )"
+
+S="${WORKDIR}/libgeodecomp-${MY_COMMIT}"
+
+PATCHES=( "${FILESDIR}/${P}-mpi.patch" )
+
+src_prepare() {
+ cmake_src_prepare
+ use cuda && cuda_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DWITH_CUDA=$(usex cuda)
+ -DWITH_HPX=$(usex hpx)
+ -DWITH_MPI=$(usex mpi)
+ -DWITH_OPENCL=$(usex opencl)
+ -DWITH_OPENCV=$(usex opencv)
+ -DWITH_QT5=$(usex qt5)
+ -DWITH_SCOTCH=false
+ -DWITH_SILO=$(usex silo)
+ -DWITH_TYPEMAPS=false
+ -DWITH_VISIT=false
+ )
+ cmake_src_configure
+}
+
+src_compile() {
+ cmake_src_compile
+ use doc && cmake_build doc
+}
+
+src_install() {
+ DOCS=( README )
+ use doc && HTML_DOCS=( doc/html/* )
+ cmake_src_install
+}
+
+src_test() {
+ virtx cmake_build check
+}