summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarco Scardovi <marco@scardovi.com>2021-12-14 23:01:46 +0100
committerJakov Smolić <jsmolic@gentoo.org>2022-01-05 20:51:33 +0100
commitb7fbed581008c7f7e6c6e16028341b60862cd002 (patch)
tree4f06281959842742bb37961b20d19b1979493ac0 /sci-libs/silo
parentdev-libs/libbpf: Stabilize 0.6.0 arm64, #830605 (diff)
downloadgentoo-b7fbed581008c7f7e6c6e16028341b60862cd002.tar.gz
gentoo-b7fbed581008c7f7e6c6e16028341b60862cd002.tar.bz2
gentoo-b7fbed581008c7f7e6c6e16028341b60862cd002.zip
sci-libs/silo: bump to 4.11 and EAPI 8
I have restricted test because it's broken right now in 4.11 (there's a problem about mismatch in a fortran file, matf77.f). Following the archlinux way I've moved to the BSD version in order to use only BSD license (the full version requires some non-free licenses and We don't really need to complain against them). This PR also bump to latest EAPI (see bug below) and add USE flag browser for browser support Closes: https://bugs.gentoo.org/828693 Package-Manager: Portage-3.0.30, Repoman-3.0.3 Signed-off-by: Marco Scardovi <marco@scardovi.com> Signed-off-by: Jakov Smolić <jsmolic@gentoo.org>
Diffstat (limited to 'sci-libs/silo')
-rw-r--r--sci-libs/silo/Manifest1
-rw-r--r--sci-libs/silo/files/silo-4.10.2-mpiposix.patch53
-rw-r--r--sci-libs/silo/files/silo-4.10.2-qt5.patch44
-rw-r--r--sci-libs/silo/files/silo-4.10.2-qtlibs.patch78
-rw-r--r--sci-libs/silo/files/silo-4.10.2-tests.patch11
-rw-r--r--sci-libs/silo/files/silo-4.11-autoreconf.patch35
-rw-r--r--sci-libs/silo/files/silo-4.11-hdf5.patch46
-rw-r--r--sci-libs/silo/files/silo-4.11-test-disable-largefile.patch23
-rw-r--r--sci-libs/silo/files/silo-4.11-tests.patch26
-rw-r--r--sci-libs/silo/files/silo-4.11-testsuite-python-write.patch27
-rw-r--r--sci-libs/silo/metadata.xml1
-rw-r--r--sci-libs/silo/silo-4.11.ebuild47
12 files changed, 206 insertions, 186 deletions
diff --git a/sci-libs/silo/Manifest b/sci-libs/silo/Manifest
index b6f65c970d1f..c2c68f4d8730 100644
--- a/sci-libs/silo/Manifest
+++ b/sci-libs/silo/Manifest
@@ -1 +1,2 @@
DIST silo-4.10.2.tar.gz 13135900 BLAKE2B 6326a42df43c4bb6936522d1730db8ce45c6b74779cf37b7a5a0b7a72def9e9a4f174b68392adbda59936113ccac4ae5e7bf7266effb364eac7e5d0cff8bb37c SHA512 8cd1340ed641c8be77f310b286da344e2fed7ae469ed7bebf5deebaa1a369ca91c283b38eae2c57b7ad046f65343cfaa56a1c07b6c8b07b79aad69c4e5617f6e
+DIST silo-4.11-bsd.tgz 13298515 BLAKE2B fcf2e7912381e57d1a64644d3cee4dea50302c12704eaf0ee9e2569b7bc29b1d5c9df66878744ffc2cc04e16834fdf1cd4d677983af36005e4ecf0918c6283d5 SHA512 f642dd21dacffa147aea54d6f8669c704772d5640d6eb7eeff1d7e5e5d37ddbde250d78bad30e9478dcfec63a86863243d7a56cd9b692eaefdd7a89b34df35d0
diff --git a/sci-libs/silo/files/silo-4.10.2-mpiposix.patch b/sci-libs/silo/files/silo-4.10.2-mpiposix.patch
deleted file mode 100644
index 30a3f910b196..000000000000
--- a/sci-libs/silo/files/silo-4.10.2-mpiposix.patch
+++ /dev/null
@@ -1,53 +0,0 @@
---- src/hdf5_drv/silo_hdf5.c.orig 2017-07-28 08:52:09.026638768 +0200
-+++ src/hdf5_drv/silo_hdf5.c 2017-07-28 09:00:12.306635882 +0200
-@@ -4752,18 +4752,19 @@
- }
-
- /* default HDF5 mpi drivers */
-- case DB_FILE_OPTS_H5_DEFAULT_MPIP:
-- {
--#ifdef H5_HAVE_PARALLEL
-- h5status |= H5Pset_fapl_mpiposix(retval, MPI_COMM_SELF, TRUE);
--#else
-- H5Pclose(retval);
-- return db_perror("HDF5 MPI VFD", E_NOTENABLEDINBUILD, me);
--#endif
-- break;
-- }
-+// case DB_FILE_OPTS_H5_DEFAULT_MPIP:
-+// {
-+//#ifdef H5_HAVE_PARALLEL
-+// h5status |= H5Pset_fapl_mpiposix(retval, MPI_COMM_SELF, TRUE);
-+//#else
-+// H5Pclose(retval);
-+// return db_perror("HDF5 MPI VFD", E_NOTENABLEDINBUILD, me);
-+//#endif
-+// break;
-+// }
-
- case DB_FILE_OPTS_H5_DEFAULT_MPIO:
-+ case DB_FILE_OPTS_H5_DEFAULT_MPIP:
- {
- #ifdef H5_HAVE_PARALLEL
- MPI_Info info;
-@@ -5069,15 +5070,15 @@
- if ((p = DBGetOption(opts, DBOPT_H5_MPIP_NO_GPFS_HINTS)))
- use_gpfs_hints = FALSE;
-
-- if (vfd == DB_H5VFD_MPIO)
-+// if (vfd == DB_H5VFD_MPIO)
- {
- h5status |= H5Pset_fapl_mpio(retval, mpi_comm, mpi_info);
- if (created_info) MPI_Info_free(&mpi_info);
- }
-- else
-- {
-- h5status |= H5Pset_fapl_mpiposix(retval, mpi_comm, use_gpfs_hints);
-- }
-+// else
-+// {
-+// h5status |= H5Pset_fapl_mpiposix(retval, mpi_comm, use_gpfs_hints);
-+// }
- #else
- H5Pclose(retval);
- return db_perror("HDF5 MPI VFD", E_NOTENABLEDINBUILD, me);
diff --git a/sci-libs/silo/files/silo-4.10.2-qt5.patch b/sci-libs/silo/files/silo-4.10.2-qt5.patch
deleted file mode 100644
index 1e1fe8803a37..000000000000
--- a/sci-libs/silo/files/silo-4.10.2-qt5.patch
+++ /dev/null
@@ -1,44 +0,0 @@
---- tools/silex/SiloFile.h.orig 2018-01-24 11:01:23.354705068 +0100
-+++ tools/silex/SiloFile.h 2018-01-24 11:01:34.843705761 +0100
-@@ -61,6 +61,8 @@
- #include <vector>
- using std::vector;
-
-+#define toAscii toLatin1
-+
- // ****************************************************************************
- // Class: SiloDir
- //
---- tools/silex/main.cpp.orig 2018-01-24 11:02:21.201708556 +0100
-+++ tools/silex/main.cpp 2018-01-24 11:02:34.146709336 +0100
-@@ -58,7 +58,7 @@
- #include <cstdlib>
-
- #ifndef Q_WS_MACX
--#include "qwindowsstyle.h"
-+//#include "qwindowsstyle.h"
- #endif
- #include "qfiledialog.h"
- #include "qstring.h"
-@@ -91,7 +91,7 @@
- QApplication::setColorSpec(QApplication::ManyColor);
- QApplication a(argc, argv);
- #ifndef Q_WS_MACX
-- a.setStyle(new QWindowsStyle);
-+// a.setStyle(new QWindowsStyle);
- #endif
- Explorer *w = 0;
- if (argc > 1)
---- tools/silex/SiloView.cpp.orig 2018-01-24 11:03:13.775711725 +0100
-+++ tools/silex/SiloView.cpp 2018-01-24 11:03:30.032712706 +0100
-@@ -109,8 +109,8 @@
- dirTreeView->OpenRootDir();
- dirView->Set(silo->root);
-
-- dirTreeView->header()->setResizeMode(QHeaderView::Interactive);
-- dirView->header()->setResizeMode(QHeaderView::Interactive);
-+ dirTreeView->header()->setSectionResizeMode(QHeaderView::Interactive);
-+ dirView->header()->setSectionResizeMode(QHeaderView::Interactive);
- }
- }
-
diff --git a/sci-libs/silo/files/silo-4.10.2-qtlibs.patch b/sci-libs/silo/files/silo-4.10.2-qtlibs.patch
deleted file mode 100644
index ecd5297c281f..000000000000
--- a/sci-libs/silo/files/silo-4.10.2-qtlibs.patch
+++ /dev/null
@@ -1,78 +0,0 @@
---- configure.orig 2018-01-24 10:50:10.458664501 +0100
-+++ configure 2018-01-24 10:50:42.967666461 +0100
-@@ -27541,7 +27541,7 @@
- ax_qt_lib="`ls $ax_qt_lib_dir/libQt* | sed -n 1p |
- sed s@$ax_qt_lib_dir/lib@@ | sed s@[.].*@@`"
- fi
-- ax_qt_LIBS="-L$ax_qt_lib_dir -l$ax_qt_lib $X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
-+ ax_qt_LIBS="-L$ax_qt_lib_dir -l$ax_qt_lib $X_PRE_LIBS $X_LIBS -lQt5Core -lQt5Gui -lQt5Widgets -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
- else
- # Use cached value or do search, starting with suggestions from
- # the command line
-@@ -27615,7 +27615,7 @@
- ax_qt_lib="`ls $ax_qt_lib_dir/libQt* | sed -n 1p |
- sed s@$ax_qt_lib_dir/lib@@ | sed s@[.].*@@`"
- fi
-- ax_qt_LIBS="-L$ax_qt_lib_dir -l$ax_qt_lib $X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
-+ ax_qt_LIBS="-L$ax_qt_lib_dir -l$ax_qt_lib $X_PRE_LIBS $X_LIBS -lQt5Core -lQt5Gui -lQt5Widgets -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
- else
- # There is no valid definition for $QTDIR as Trolltech likes to see it
- ax_qt_dir=
-@@ -27627,7 +27627,7 @@
- ax_qt_lib="`ls $ax_qt_lib_dir/libQt* | sed -n 1p |
- sed s@$ax_qt_lib_dir/lib@@ | sed s@[.].*@@`"
- fi
-- ax_qt_LIBS="-L$ax_qt_lib_dir -l$ax_qt_lib $X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
-+ ax_qt_LIBS="-L$ax_qt_lib_dir -l$ax_qt_lib $X_PRE_LIBS $X_LIBS -lQt5Core -lQt5Gui -lQt5Widgets -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
- else
- # Normally, when there is no traditional Trolltech installation,
- # the library is installed in a place where the linker finds it
-@@ -27645,10 +27645,10 @@
- # See if we find the library without any special options.
- # Don't add top $LIBS permanently yet
- ax_save_LIBS="$LIBS"
-- LIBS="-l$ax_qt_lib $X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
-+ LIBS="-l$ax_qt_lib $X_PRE_LIBS $X_LIBS -lQt5Core -lQt5Gui -lQt5Widgets -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
- ax_qt_LIBS="$LIBS"
- ax_save_CXXFLAGS="$CXXFLAGS"
-- CXXFLAGS="-I$ax_qt_include_dir -I$ax_qt_include_dir/Qt -I$ax_qt_include_dir/QtCore -I$ax_qt_include_dir/QtGui"
-+ CXXFLAGS="-I$ax_qt_include_dir -I$ax_qt_include_dir/Qt -I$ax_qt_include_dir/QtCore -I$ax_qt_include_dir/QtGui -I$ax_qt_include_dir/QtWidgets -fPIC"
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
- _ACEOF
-@@ -27706,7 +27706,7 @@
- # That did not work. Try the multi-threaded version
- echo "Non-critical error, please neglect the above." >&5
- ax_qt_lib=qt-mt
-- LIBS="-l$ax_qt_lib $X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
-+ LIBS="-l$ax_qt_lib $X_PRE_LIBS $X_LIBS -lQt5Core -lQt5Gui -lQt5Widgets -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
- _ACEOF
-@@ -27764,7 +27764,7 @@
- # That did not work. Try the OpenGL version
- echo "Non-critical error, please neglect the above." >&5
- ax_qt_lib=qt-gl
-- LIBS="-l$ax_qt_lib $X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
-+ LIBS="-l$ax_qt_lib $X_PRE_LIBS $X_LIBS -lQt5Core -lQt5Gui -lQt5Widgets -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
- _ACEOF
-@@ -27847,7 +27847,7 @@
- fi
- done
- # Try with that one
-- LIBS="-l$ax_qt_lib $X_PRE_LIBS $X_LIBS -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
-+ LIBS="-l$ax_qt_lib $X_PRE_LIBS $X_LIBS -lQt5Core -lQt5Gui -lQt5Widgets -lX11 -lXext -lXmu -lXt -lXi $X_EXTRA_LIBS"
- cat >conftest.$ac_ext <<_ACEOF
- /* confdefs.h. */
- _ACEOF
-@@ -27955,7 +27955,7 @@
- fi # all $ax_qt_* are set
- fi # $have_qt reflects the system status
- if test x"$have_qt" = xyes; then
-- QT_CXXFLAGS="-I$ax_qt_include_dir -I$ax_qt_include_dir/Qt -I$ax_qt_include_dir/QtCore -I$ax_qt_include_dir/QtGui"
-+ QT_CXXFLAGS="-I$ax_qt_include_dir -I$ax_qt_include_dir/Qt -I$ax_qt_include_dir/QtCore -I$ax_qt_include_dir/QtGui -I$ax_qt_include_dir/QtWidgets -fPIC"
- if test x"$ax_qt_lib" = xqt-mt; then
- QT_CXXFLAGS="$QT_CXXFLAGS -DQT_THREAD_SUPPORT"
- fi
diff --git a/sci-libs/silo/files/silo-4.10.2-tests.patch b/sci-libs/silo/files/silo-4.10.2-tests.patch
deleted file mode 100644
index 2e0a52191d0e..000000000000
--- a/sci-libs/silo/files/silo-4.10.2-tests.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- tests/Makefile.in.old 2014-07-24 07:25:53.464381420 +0200
-+++ tests/Makefile.in 2014-07-24 07:26:14.951048323 +0200
-@@ -169,7 +169,7 @@
- $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
- $(ioperf_stdio_la_LDFLAGS) $(LDFLAGS) -o $@
- rocket_silo_la_LIBADD =
--am_rocket_silo_la_OBJECTS = rocket_silo.lo
-+am_rocket_silo_la_OBJECTS = rocket_silo.lo ../src/.libs/libsilo.la
- rocket_silo_la_OBJECTS = $(am_rocket_silo_la_OBJECTS)
- rocket_silo_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
- $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
diff --git a/sci-libs/silo/files/silo-4.11-autoreconf.patch b/sci-libs/silo/files/silo-4.11-autoreconf.patch
new file mode 100644
index 000000000000..371b346e921c
--- /dev/null
+++ b/sci-libs/silo/files/silo-4.11-autoreconf.patch
@@ -0,0 +1,35 @@
+Author: Alastair McKinstry <mckinstry@debian.org>
+Description: Fixes needed for autoreconf to work on Debian
+ When autoreconf is run, VL_LIB_READLINE is lost from aclocal, so included in config/
+ Also include AX_CHECK_COMPLER_FLAG() which is not in autoconf (just autoconf-archive)
+ AX_CHECK_COMPILER_FLAGS() is obsolete
+Last-Updated: 2021-01-14
+Forwarded: no
+Link: https://sources.debian.org/patches/silo-llnl/4.11-2/autoreconf.patch/
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -195,6 +195,8 @@
+ dnl This allows multiple src-dir builds within one host.
+ AC_PREFIX_DEFAULT("SILO_TOP_SRC_DIR")
+
++AC_PROG_F77
++
+ dnl
+ dnl Handle the python module right away to determine if we need shared libs.
+ dnl Ordinarily, we default to static libs
+@@ -618,10 +620,10 @@
+ # it is an argument to the -D argument. So, I think this is
+ # just totally bogus!
+ # Default to large file support
+-AX_CHECK_COMPILER_FLAGS("-D_LARGEFILE_SOURCE",CFLAGS="$CFLAGS -D_LARGEFILE_SOURCE";)
+-AX_CHECK_COMPILER_FLAGS("-D_LARGEFILE64_SOURCE",CFLAGS="$CFLAGS -D_LARGEFILE64_SOURCE";)
+-AX_CHECK_COMPILER_FLAGS("-D_FILE_OFFSET_BITS=64",CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64";)
+-AX_CHECK_COMPILER_FLAGS("-Wdeclaration-after-statement",CFLAGS="$CFLAGS -Wdeclaration-after-statement";)
++AX_CHECK_COMPILE_FLAG("-D_LARGEFILE_SOURCE",CFLAGS="$CFLAGS -D_LARGEFILE_SOURCE";)
++AX_CHECK_COMPILE_FLAG("-D_LARGEFILE64_SOURCE",CFLAGS="$CFLAGS -D_LARGEFILE64_SOURCE";)
++AX_CHECK_COMPILE_FLAG("-D_FILE_OFFSET_BITS=64",CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=64";)
++AX_CHECK_COMPILE_FLAG("-Wdeclaration-after-statement",CFLAGS="$CFLAGS -Wdeclaration-after-statement";)
+
+ #
+ # Note: regardless of what the stuff above regarding large file support
diff --git a/sci-libs/silo/files/silo-4.11-hdf5.patch b/sci-libs/silo/files/silo-4.11-hdf5.patch
new file mode 100644
index 000000000000..6791a44aa2b1
--- /dev/null
+++ b/sci-libs/silo/files/silo-4.11-hdf5.patch
@@ -0,0 +1,46 @@
+Link: https://aur.archlinux.org/cgit/aur.git/tree/hdf5.patch?h=silo
+
+--- a/src/hdf5_drv/H5FDsilo.c 2021-09-11 01:22:52.000000000 +0300
++++ b/src/hdf5_drv/H5FDsilo.c 2021-11-25 00:37:06.685422949 +0200
+@@ -252,13 +252,13 @@
+ snprintf(msg, sizeof(msg), Msg "(errno=%d, \"%s\")", \
+ Errno, strerror(Errno)); \
+ ret_value = Ret; \
+- H5Epush_ret(Func, Cls, Maj, Min, msg, Ret) \
++ H5Epush_ret(Func, Cls, Maj, Min, msg, Ret); \
+ }
+ #else
+ #define H5E_PUSH_HELPER(Func,Cls,Maj,Min,Msg,Ret,Errno) \
+ { \
+ ret_value = Ret; \
+- H5Epush_ret(Func, Cls, Maj, Min, Msg, Ret) \
++ H5Epush_ret(Func, Cls, Maj, Min, Msg, Ret); \
+ }
+ #endif
+
+@@ -1355,7 +1355,7 @@
+ assert(sizeof(hsize_t)<=8);
+ memcpy(p, &file->block_size, sizeof(hsize_t));
+ if (H5Tconvert(H5T_NATIVE_HSIZE, H5T_STD_U64LE, 1, buf+8, NULL, H5P_DEFAULT)<0)
+- H5Epush_ret(func, H5E_ERR_CLS, H5E_DATATYPE, H5E_CANTCONVERT, "can't convert superblock info", -1)
++ H5Epush_ret(func, H5E_ERR_CLS, H5E_DATATYPE, H5E_CANTCONVERT, "can't convert superblock info", -1);
+
+ return 0;
+ }
+@@ -1383,14 +1383,14 @@
+
+ /* Make sure the name/version number is correct */
+ if (strcmp(name, "LLNLsilo"))
+- H5Epush_ret(func, H5E_ERR_CLS, H5E_FILE, H5E_BADVALUE, "invalid silo superblock", -1)
++ H5Epush_ret(func, H5E_ERR_CLS, H5E_FILE, H5E_BADVALUE, "invalid silo superblock", -1);
+
+ buf += 8;
+ /* Decode block size */
+ assert(sizeof(hsize_t)<=8);
+ memcpy(x, buf, 8);
+ if (H5Tconvert(H5T_STD_U64LE, H5T_NATIVE_HSIZE, 1, x, NULL, H5P_DEFAULT)<0)
+- H5Epush_ret(func, H5E_ERR_CLS, H5E_DATATYPE, H5E_CANTCONVERT, "can't convert superblock info", -1)
++ H5Epush_ret(func, H5E_ERR_CLS, H5E_DATATYPE, H5E_CANTCONVERT, "can't convert superblock info", -1);
+ ap = (hsize_t*)x;
+ /*file->block_size = *ap; ignore stored value for now */
+
diff --git a/sci-libs/silo/files/silo-4.11-test-disable-largefile.patch b/sci-libs/silo/files/silo-4.11-test-disable-largefile.patch
new file mode 100644
index 000000000000..953453e12fe0
--- /dev/null
+++ b/sci-libs/silo/files/silo-4.11-test-disable-largefile.patch
@@ -0,0 +1,23 @@
+Author: Alastair McKinstry <mckinstry@debian.org>
+Description: Disable largefile test. Seems to fail on rounding error
+Forwarded: yes
+Last-Updated: 2011-06-09
+Link: https://sources.debian.org/patches/silo-llnl/4.11-2/test-disable-largefile.patch/
+
+--- a/tests/testsuite.at
++++ b/tests/testsuite.at
+@@ -324,10 +324,10 @@
+ AT_SETUP(xversion)
+ AT_CHECK(test -z "$BROWSER" -o "$STARGS" != DB_HDF5 && exit 77 || $VALGRIND testxvers `pwd`,,ignore,ignore)
+ AT_CLEANUP
+-AT_SETUP(largefile)
+-AT_KEYWORDS(large)
+-AT_CHECK(test "$STARGS" != DB_HDF5 && exit 77 || $VALGRIND largefile,,ignore,ignore)
+-AT_CLEANUP
++#AT_SETUP(largefile)
++#AT_KEYWORDS(large)
++#AT_CHECK(test "$STARGS" != DB_HDF5 && exit 77 || $VALGRIND largefile,,ignore,ignore)
++#AT_CLEANUP
+ #AT_SETUP(memfile_simple)
+ #AT_CHECK(testall -small $STARGS,,ignore)
+ #AT_CHECK(test "$STARGS" != DB_HDF5 && exit 77 || $VALGRIND memfile_simple $STARGS,,ignore,ignore)
diff --git a/sci-libs/silo/files/silo-4.11-tests.patch b/sci-libs/silo/files/silo-4.11-tests.patch
new file mode 100644
index 000000000000..a093d318ded6
--- /dev/null
+++ b/sci-libs/silo/files/silo-4.11-tests.patch
@@ -0,0 +1,26 @@
+--- a/tests/Makefile.in
++++ b/tests/Makefile.in
+@@ -169,7 +169,7 @@
+ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
+ $(ioperf_stdio_la_LDFLAGS) $(LDFLAGS) -o $@
+ rocket_silo_la_LIBADD =
+-am_rocket_silo_la_OBJECTS = rocket_silo.lo
++am_rocket_silo_la_OBJECTS = rocket_silo.lo ../src/.libs/libsiloh5.la
+ rocket_silo_la_OBJECTS = $(am_rocket_silo_la_OBJECTS)
+ rocket_silo_la_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS) \
+ $(LIBTOOLFLAGS) --mode=link $(CXXLD) $(AM_CXXFLAGS) \
+
+Author: Alastair McKinstry <mckinstry@debian.org>
+Description: bash is needed to execute this testscript for test 62.
+Last-Updated: 2011-04-11
+Forwarded: no
+Link: https://sources.debian.org/patches/silo-llnl/4.11-2/testsuite-fix.patch/
+
+--- a/tests/testdtypes
++++ b/tests/testdtypes
+@@ -1,4 +1,4 @@
+-#!/bin/sh
++#!/bin/bash
+
+ # Copyright (C) 1994-2016 Lawrence Livermore National Security, LLC.
+ # LLNL-CODE-425250.
diff --git a/sci-libs/silo/files/silo-4.11-testsuite-python-write.patch b/sci-libs/silo/files/silo-4.11-testsuite-python-write.patch
new file mode 100644
index 000000000000..ac0bc859068a
--- /dev/null
+++ b/sci-libs/silo/files/silo-4.11-testsuite-python-write.patch
@@ -0,0 +1,27 @@
+Author: Alastair McKinstry <mckinstry@debian.org>
+Description: Python code seems to be broken. Disable test and inform upstream.
+Last-Updated: 2011-06-09
+Forwarded: yes
+Link: https://sources.debian.org/patches/silo-llnl/4.11-2/testsuite-python-write.patch/
+
+--- a/tests/test_write.py
++++ b/tests/test_write.py
+@@ -52,11 +52,13 @@
+ db = Silo.Create("foo.silo", "test file")
+ db.Write("t1", 12)
+ db.Write("t2", "hello")
+-db.Write("t3", (13,))
+-db.Write("t4", 14.5)
+-db.Write("t5", (1.2, 10))
+-db.Write("t6", (1.2, 10.2))
+-db.Write("t7", (10, 1.2))
++# Disable writes with floating point. Seem to break on python2.7
++# --amck, 2011-06-09
++#db.Write("t3", (13,))
++#db.Write("t4", 14.5)
++#db.Write("t5", (1.2, 10))
++#db.Write("t6", (1.2, 10.2))
++#db.Write("t7", (10, 1.2))
+ db.Write("t8", "a")
+ db.MkDir("a")
+ db.Write("a/t8", "x2")
diff --git a/sci-libs/silo/metadata.xml b/sci-libs/silo/metadata.xml
index 042cd6fc239a..ebaabb67af86 100644
--- a/sci-libs/silo/metadata.xml
+++ b/sci-libs/silo/metadata.xml
@@ -9,6 +9,7 @@
computing platforms.
</longdescription>
<use>
+ <flag name="browser">Enable browser support</flag>
<flag name="silex">Build silex data browser</flag>
</use>
<maintainer type="project">
diff --git a/sci-libs/silo/silo-4.11.ebuild b/sci-libs/silo/silo-4.11.ebuild
new file mode 100644
index 000000000000..e7a7f142d2aa
--- /dev/null
+++ b/sci-libs/silo/silo-4.11.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit fortran-2
+
+DESCRIPTION="A mesh and field I/O library and scientific database"
+HOMEPAGE="https://wci.llnl.gov/simulation/computer-codes/silo"
+SRC_URI="https://wci.llnl.gov/sites/wci/files/2021-09/${P}-bsd.tgz"
+S="${WORKDIR}/${P}-bsd"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="browser +hdf5 +silex"
+# Waiting for fix/answer upstream
+# See https://github.com/LLNL/Silo/issues/234
+RESTRICT="test"
+
+RDEPEND="
+ dev-qt/qtgui:5
+ virtual/szip
+ hdf5? ( sci-libs/hdf5 )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-autoreconf.patch
+ "${FILESDIR}"/${P}-hdf5.patch
+ "${FILESDIR}"/${P}-test-disable-largefile.patch
+ "${FILESDIR}"/${P}-tests.patch
+ "${FILESDIR}"/${P}-testsuite-python-write.patch
+)
+
+src_configure() {
+ econf \
+ --enable-install-lite-headers \
+ --enable-shared \
+ $(use_enable silex silex ) \
+ $(use_enable browser browser ) \
+ $(use_with hdf5 hdf5 "${EPREFIX}"/usr/include,"${EPREFIX}"/usr/$(get_libdir) )
+}
+
+# src_test() {
+# emake -C tests check
+# }