git: 6c01c9fbdde3 - main - science/iboview: update to 20211019a and add powerpc64* support

From: Piotr Kubaj <pkubaj_at_FreeBSD.org>
Date: Fri, 11 Sep 2026 12:50:23 UTC
The branch main has been updated by pkubaj:

URL: https://cgit.FreeBSD.org/ports/commit/?id=6c01c9fbdde342df28d6449ea709e15ec54534df

commit 6c01c9fbdde342df28d6449ea709e15ec54534df
Author:     Piotr Kubaj <pkubaj@FreeBSD.org>
AuthorDate: 2026-09-04 09:43:46 +0000
Commit:     Piotr Kubaj <pkubaj@FreeBSD.org>
CommitDate: 2026-09-11 12:49:26 +0000

    science/iboview: update to 20211019a and add powerpc64* support
---
 science/iboview/Makefile                           | 17 ++++---
 science/iboview/distinfo                           |  6 +--
 science/iboview/files/patch-main.pro               | 54 +++++-----------------
 science/iboview/files/patch-src_Common_CxDefs.h    | 11 +++++
 .../files/patch-src_Common_CxNumpyArray.cpp        | 10 ----
 .../iboview/files/patch-src_Common_CxPrintLevel.h  | 10 ++++
 .../files/patch-src_Common_CxStorageDevice.h       | 10 ----
 .../iboview/files/patch-src_Common_CxTiming.cpp    | 19 ++++++++
 .../iboview/files/patch-src_MicroScf_CtDftGrid.cpp | 11 +++++
 .../files/patch-src_MicroScf_CtFockBuild.cpp       | 11 +++++
 10 files changed, 87 insertions(+), 72 deletions(-)

diff --git a/science/iboview/Makefile b/science/iboview/Makefile
index 40e314724be0..7f62dc2c91b6 100644
--- a/science/iboview/Makefile
+++ b/science/iboview/Makefile
@@ -1,9 +1,8 @@
 PORTNAME=	iboview
-PORTVERSION=	20150427
-PORTREVISION=	29
+PORTVERSION=	20211019a
 CATEGORIES=	science
 MASTER_SITES=	http://www.iboview.org/bin/
-DISTNAME=	ibo-view.20150427
+DISTNAME=	ibo-view.20211019-RevA
 
 MAINTAINER=	ports@FreeBSD.org
 COMMENT=	Program for analyzing molecular electronic structure
@@ -12,16 +11,20 @@ WWW=		http://www.iboview.org/
 LICENSE=	GPLv3
 LICENSE_FILE=	${WRKSRC}/LICENSE
 
+ONLY_FOR_ARCHS=	amd64 powerpc64 powerpc64le
+
 BUILD_DEPENDS=	boost-libs>=0:devel/boost-libs
 RUN_DEPENDS=	boost-libs>=0:devel/boost-libs
 
-ONLY_FOR_ARCHS=	amd64
-
-USES=		blaslapack:openblas fortran gl qmake:outsource qt:5 tar:bz2
+USES=		blaslapack:openblas fortran gl qmake:outsource qt:5 zip
 USE_CXXSTD=	c++14
-USE_GL=		gl glu
+USE_GL=		gl
 USE_QT=		buildtools:build core gui widgets opengl script svg
 
+CONFIGURE_ENV=	BLASLIB="${BLASLIB}" \
+		BOOST_ROOT=${LOCALBASE}/include
+QMAKE_ARGS=	DEFINES+=_I4_ DEFINES+=GLEW_NO_GLU
+
 PLIST_FILES=	bin/iboview
 
 do-install:
diff --git a/science/iboview/distinfo b/science/iboview/distinfo
index 68ccf528844f..ce1099776add 100644
--- a/science/iboview/distinfo
+++ b/science/iboview/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1493172588
-SHA256 (ibo-view.20150427.tar.bz2) = 2a67b7c82ba957d016eef202453bdfc2278d5752dc7000b4b809812bd7945aed
-SIZE (ibo-view.20150427.tar.bz2) = 5169203
+TIMESTAMP = 1788430623
+SHA256 (ibo-view.20211019-RevA.zip) = 48aea36f89996631b621c571ec56a73ef1b9bd70018f113685bd461eb1c79105
+SIZE (ibo-view.20211019-RevA.zip) = 34343464
diff --git a/science/iboview/files/patch-main.pro b/science/iboview/files/patch-main.pro
index 1de961e80b42..b950cc6caf10 100644
--- a/science/iboview/files/patch-main.pro
+++ b/science/iboview/files/patch-main.pro
@@ -1,43 +1,13 @@
---- main.pro.orig	2015-04-27 21:30:39 UTC
+--- main.pro.orig	2026-09-03 10:18:30 UTC
 +++ main.pro
-@@ -1,5 +1,5 @@
- # /usr/bin/qmake-qt4 -o Makefile main.pro && make -j 4
--MKLDIR = $$(MKLROOT)
-+#MKLDIR = $$(MKLROOT)
- # MKLDIR = /opt/intel/composerxe/mkl
- # ^- FIXME: adjust path of MKL here if MKLROOT environment variable is not set.
- # (e.g., 
-@@ -8,8 +8,9 @@ MKLDIR = $$(MKLROOT)
- 
- # LIBS += -L$$MKLDIR/lib/em64t -lmkl_intel_ilp64 -lmkl_sequential -lmkl_core -lmkl_lapack -Wl,-rpath,$$MKLDIR/lib/em64t
- # LIBS += -L$$MKLDIR/lib/intel64 -lmkl_gf_ilp64 -lmkl_sequential -lmkl_core -Wl,-rpath,$$MKLDIR/lib/intel64
--LIBS += -L$$MKLDIR/lib/intel64 -fopenmp -lmkl_gf_ilp64 -lmkl_gnu_thread -lmkl_core -Wl,-rpath,$$MKLDIR/lib/intel64
-+#LIBS += -L$$MKLDIR/lib/intel64 -fopenmp -lmkl_gf_ilp64 -lmkl_gnu_thread -lmkl_core -Wl,-rpath,$$MKLDIR/lib/intel64
- # LIBS += -LC:\Users\cgk\Develop\Libraries\OpenBLAS\bin -lopenblas
-+LIBS += -lopenblas
- 
- # MICROSCF = ../wmme
- 
-@@ -52,14 +53,14 @@ HEADERS += $$GL/glew.h $$GL/glxew.h $$GL/wglew.h
- #    from.)
- 
- # OpenMP
--msvc {
--   QMAKE_CXXFLAGS += /openmp
--   QMAKE_LFLAGS += /openmp
--}
--!msvc {
--   QMAKE_CXXFLAGS += -fopenmp
--   QMAKE_LFLAGS += -fopenmp
--}
-+#msvc {
-+#   QMAKE_CXXFLAGS += /openmp
-+#   QMAKE_LFLAGS += /openmp
-+#}
-+#!msvc {
-+#   QMAKE_CXXFLAGS += -fopenmp
-+#   QMAKE_LFLAGS += -fopenmp
-+#}
- # ^- warning: need to replace all OpenMP loop variables by "int". Otherwise won't work
- #    in vc or gcc <= 4.4 (unsigned integral types only allowed since OpenMP 3.0... wtf
- #    were they thinking?!)
+@@ -183,8 +183,8 @@ win32 {
+ !win32 {
+    # Flags for g++ or clang (in g++ emulation mode on linux)
+    OPTFLAGS_OFF = -O2
+-   OPTFLAGS_ON = -Ofast -ffast-math -march=native
+-   QMAKE_CXXFLAGS += -Wno-deprecated-copy -Wno-class-memaccess -Wno-implicit-fallthrough -Wno-unknown-pragmas -fmax-errors=10
++   OPTFLAGS_ON = -Ofast -ffast-math
++   QMAKE_CXXFLAGS += -Wno-deprecated-copy -Wno-class-memaccess -Wno-implicit-fallthrough -Wno-unknown-pragmas
+    # DEFINES += _GLIBCXX_PARALLEL
+    # ^-- Interesting, see: https://gcc.gnu.org/onlinedocs/libstdc++/manual/parallel_mode_using.html
+    #     But still not sure what to think about this. In any case, we
diff --git a/science/iboview/files/patch-src_Common_CxDefs.h b/science/iboview/files/patch-src_Common_CxDefs.h
new file mode 100644
index 000000000000..fbfeed6a5dbe
--- /dev/null
+++ b/science/iboview/files/patch-src_Common_CxDefs.h
@@ -0,0 +1,11 @@
+--- src/Common/CxDefs.h.orig	2026-09-03 10:18:30 UTC
++++ src/Common/CxDefs.h
+@@ -138,7 +138,7 @@
+    #endif
+ #endif
+ 
+-#if (defined  __GNUC__ || defined __INTEL_COMPILER)
++#if (defined  __GNUC__ || defined __INTEL_COMPILER) && (defined __i386__ || defined __x86_64__)
+    // 'insert software breakpoint here'.
+    #define DEBUG_BREAK __asm__("int $0x03");
+ #elif defined(_MSC_VER) && !defined(__PGI)  // microsoft c++ (other win32 compilers might emulate this syntax)
diff --git a/science/iboview/files/patch-src_Common_CxNumpyArray.cpp b/science/iboview/files/patch-src_Common_CxNumpyArray.cpp
deleted file mode 100644
index 02498540c50c..000000000000
--- a/science/iboview/files/patch-src_Common_CxNumpyArray.cpp
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/Common/CxNumpyArray.cpp.orig	2015-04-27 21:30:38 UTC
-+++ src/Common/CxNumpyArray.cpp
-@@ -22,6 +22,7 @@
-  */
- 
- #include <stdint.h>
-+#include <string>
- #include "CxNumpyArray.h"
- 
- #ifdef _MSC_VER
diff --git a/science/iboview/files/patch-src_Common_CxPrintLevel.h b/science/iboview/files/patch-src_Common_CxPrintLevel.h
new file mode 100644
index 000000000000..aefa0cba3753
--- /dev/null
+++ b/science/iboview/files/patch-src_Common_CxPrintLevel.h
@@ -0,0 +1,10 @@
+--- src/Common/CxPrintLevel.h.orig	2026-09-03 10:59:33 UTC
++++ src/Common/CxPrintLevel.h
+@@ -26,6 +26,7 @@
+ 
+ #include <string>
+ #include <array>
++#include "CxParse1.h"
+ // #include <functional>
+ 
+ namespace ct {
diff --git a/science/iboview/files/patch-src_Common_CxStorageDevice.h b/science/iboview/files/patch-src_Common_CxStorageDevice.h
deleted file mode 100644
index 7f8ad8e0488e..000000000000
--- a/science/iboview/files/patch-src_Common_CxStorageDevice.h
+++ /dev/null
@@ -1,10 +0,0 @@
---- src/Common/CxStorageDevice.h.orig	2017-04-30 20:26:11 UTC
-+++ src/Common/CxStorageDevice.h
-@@ -26,6 +26,7 @@
- 
- #include <vector>
- #include <map>
-+#include <stdlib.h>
- #include "CxTypes.h"
- 
- namespace ct {
diff --git a/science/iboview/files/patch-src_Common_CxTiming.cpp b/science/iboview/files/patch-src_Common_CxTiming.cpp
new file mode 100644
index 000000000000..88eab18ecfa3
--- /dev/null
+++ b/science/iboview/files/patch-src_Common_CxTiming.cpp
@@ -0,0 +1,19 @@
+--- src/Common/CxTiming.cpp.orig	2026-09-03 10:26:42 UTC
++++ src/Common/CxTiming.cpp
+@@ -67,10 +67,16 @@ unsigned long long dbgGetTimeStampCounter()
+ // Use only for debugging, if at all!
+ unsigned long long dbgGetTimeStampCounter()
+ {
++#if defined(__powerpc64__)
++	unsigned long long tb;
++	asm volatile("mfspr %0, 268" : "=r" (tb));
++	return tb;
++#else
+ 	unsigned a, d;
+ 	asm volatile("rdtsc" : "=a" (a), "=d" (d));
+ 
+ 	return (((unsigned long long)a) | (((unsigned long long)d) << 32));
++#endif
+ }
+ 
+ } // namespace ct
diff --git a/science/iboview/files/patch-src_MicroScf_CtDftGrid.cpp b/science/iboview/files/patch-src_MicroScf_CtDftGrid.cpp
new file mode 100644
index 000000000000..beac14008f7d
--- /dev/null
+++ b/science/iboview/files/patch-src_MicroScf_CtDftGrid.cpp
@@ -0,0 +1,11 @@
+--- src/MicroScf/CtDftGrid.cpp.orig	2026-09-03 10:55:14 UTC
++++ src/MicroScf/CtDftGrid.cpp
+@@ -974,7 +974,7 @@ void FDftGridGenerator::Create()
+    {
+       ct::FMemoryStackArray MemStacks(Mem);
+       #pragma omp parallel for schedule(dynamic)
+-      for (int iAtom = 0; size_t(iAtom) < Atoms.size(); ++ iAtom) {
++      for (int iAtom = 0; iAtom < int(Atoms.size()); ++ iAtom) {
+          FMemoryStack &Mem_ = MemStacks.GetStackOfThread();
+          Mem_.Align(32);
+          FPointList
diff --git a/science/iboview/files/patch-src_MicroScf_CtFockBuild.cpp b/science/iboview/files/patch-src_MicroScf_CtFockBuild.cpp
new file mode 100644
index 000000000000..6d137e0368f7
--- /dev/null
+++ b/science/iboview/files/patch-src_MicroScf_CtFockBuild.cpp
@@ -0,0 +1,11 @@
+--- src/MicroScf/CtFockBuild.cpp.orig	2026-09-03 10:55:14 UTC
++++ src/MicroScf/CtFockBuild.cpp
+@@ -762,7 +762,7 @@ void FormIntMNF_ContractF(FMatrixView Out, ir::FIntegr
+ 
+    FMemoryStackArray MemStacks(Mem_);
+    #pragma omp parallel for schedule(dynamic)
+-   for (int iShB__ = 0; size_t(iShB__) < pOrbBasis->Shells.size(); ++ iShB__ ){
++   for (int iShB__ = 0; iShB__ < int(pOrbBasis->Shells.size()); ++ iShB__ ){
+       size_t iShB = size_t(iShB__);
+       FMemoryStack &Mem = MemStacks.GetStackOfThread();
+