git: 65c5f67009e9 - main - graphics/diplib: New port: Library and development environment for quantitative image analysis

From: Yuri Victorovich <yuri_at_FreeBSD.org>
Date: Tue, 18 Oct 2022 03:37:15 UTC
The branch main has been updated by yuri:

URL: https://cgit.FreeBSD.org/ports/commit/?id=65c5f67009e9df76ed901b0fc8c805d676eaa888

commit 65c5f67009e9df76ed901b0fc8c805d676eaa888
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-10-18 03:36:37 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-10-18 03:36:37 +0000

    graphics/diplib: New port: Library and development environment for quantitative image analysis
---
 graphics/Makefile                          |  1 +
 graphics/diplib/Makefile                   | 23 ++++++++
 graphics/diplib/distinfo                   |  3 +
 graphics/diplib/files/patch-CMakeLists.txt | 11 ++++
 graphics/diplib/pkg-descr                  | 17 ++++++
 graphics/diplib/pkg-plist                  | 91 ++++++++++++++++++++++++++++++
 6 files changed, 146 insertions(+)

diff --git a/graphics/Makefile b/graphics/Makefile
index 2d7a3e086114..f5a7fff6c58f 100644
--- a/graphics/Makefile
+++ b/graphics/Makefile
@@ -133,6 +133,7 @@
     SUBDIR += diffpdf
     SUBDIR += digikam
     SUBDIR += dilay
+    SUBDIR += diplib
     SUBDIR += ditaa
     SUBDIR += djview4
     SUBDIR += djvulibre
diff --git a/graphics/diplib/Makefile b/graphics/diplib/Makefile
new file mode 100644
index 000000000000..a80327b1f1b0
--- /dev/null
+++ b/graphics/diplib/Makefile
@@ -0,0 +1,23 @@
+PORTNAME=	diplib
+DISTVERSION=	3.3.0
+CATEGORIES=	graphics
+
+MAINTAINER=	yuri@FreeBSD.org
+COMMENT=	Library and development environment for quantitative image analysis
+WWW=		https://diplib.org/
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE.txt
+
+USES=		cmake:testing gl
+USE_GL=		gl glut
+USE_LDCONFIG=	yes
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	DIPlib
+
+CMAKE_OFF=	DIP_BUILD_PYDIP
+CMAKE_TESTING_ON=	DIP_ENABLE_DOCTEST
+CMAKE_TESTING_TARGET=	check # one test fails, see https://github.com/DIPlib/diplib/issues/120
+
+.include <bsd.port.mk>
diff --git a/graphics/diplib/distinfo b/graphics/diplib/distinfo
new file mode 100644
index 000000000000..cb96e5b10edd
--- /dev/null
+++ b/graphics/diplib/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1666060672
+SHA256 (DIPlib-diplib-3.3.0_GH0.tar.gz) = 01c6fc164d973fe89a9a9b04082a2915aeaedfbd207bf78ce3f83aa298b603d7
+SIZE (DIPlib-diplib-3.3.0_GH0.tar.gz) = 5836509
diff --git a/graphics/diplib/files/patch-CMakeLists.txt b/graphics/diplib/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..91c3f1ec092f
--- /dev/null
+++ b/graphics/diplib/files/patch-CMakeLists.txt
@@ -0,0 +1,11 @@
+--- CMakeLists.txt.orig	2022-10-18 02:45:06 UTC
++++ CMakeLists.txt
+@@ -95,7 +95,7 @@ add_subdirectory(src)
+ 
+ ### DIPjavaio
+ 
+-find_package(Java 1.7 COMPONENTS Development)
++#find_package(Java 1.7 COMPONENTS Development)
+ if(JAVA_FOUND)
+    # Set JAVA_HOME so that the JNI found is from the same JDK as the Java package
+    get_filename_component(JAVA_HOME "${Java_JAVAC_EXECUTABLE}" DIRECTORY) # strip off /javac
diff --git a/graphics/diplib/pkg-descr b/graphics/diplib/pkg-descr
new file mode 100644
index 000000000000..cd14cc4c8b3e
--- /dev/null
+++ b/graphics/diplib/pkg-descr
@@ -0,0 +1,17 @@
+The DIPlib project contains:
+* DIPlib, a C++ library for quantitative image analysis. It has been in
+  development at Delft University of Technology in The Netherlands since 1995.
+  The 3.0 release of DIPlib represented a complete rewrite in modern C++ of the
+  library infrastructure, with most of the image processing and analysis
+  algorithms ported from the previous version, and some of them improved
+  significantly.
+* DIPimage, a MATLAB toolbox for quantitative image analysis. It has been in
+  development at Delft University of Technology in The Netherlands since 1999.
+* PyDIP, Python bindings to DIPlib. This is currently a thin wrapper that
+  exposes the C++ functionality with little change.
+* DIPviewer, an interactive image display utility. It is usable from C++, Python
+  and MATLAB programs. Within DIPimage this is an optional alternative to the
+  default MATLAB-native interactive display utility.
+* DIPjavaio, an interface to OME Bio-Formats, a Java-based library that reads
+  hundreds of image file formats. This module is usable from C++ and Python
+  (DIPimage interfaces to Bio-Formats natively).
diff --git a/graphics/diplib/pkg-plist b/graphics/diplib/pkg-plist
new file mode 100644
index 000000000000..86ff8e4ee2e8
--- /dev/null
+++ b/graphics/diplib/pkg-plist
@@ -0,0 +1,91 @@
+bin/dipview
+include/dip_matlab_interface.h
+include/dip_opencv_interface.h
+include/dip_vigra_interface.h
+include/diplib.h
+include/diplib/accumulators.h
+include/diplib/analysis.h
+include/diplib/binary.h
+include/diplib/border.h
+include/diplib/boundary.h
+include/diplib/chain_code.h
+include/diplib/color.h
+include/diplib/detection.h
+include/diplib/dft.h
+include/diplib/display.h
+include/diplib/distance.h
+include/diplib/distribution.h
+include/diplib/file_io.h
+include/diplib/framework.h
+include/diplib/generation.h
+include/diplib/generic_iterators.h
+include/diplib/geometry.h
+include/diplib/graph.h
+include/diplib/histogram.h
+include/diplib/iterators.h
+include/diplib/kernel.h
+include/diplib/library/clamp_cast.h
+include/diplib/library/copy_buffer.h
+include/diplib/library/datatype.h
+include/diplib/library/dimension_array.h
+include/diplib/library/error.h
+include/diplib/library/export.h
+include/diplib/library/image.h
+include/diplib/library/image_views.h
+include/diplib/library/numeric.h
+include/diplib/library/operators.h
+include/diplib/library/physical_dimensions.h
+include/diplib/library/sample_iterator.h
+include/diplib/library/stringparams.h
+include/diplib/library/tensor.h
+include/diplib/library/types.h
+include/diplib/linear.h
+include/diplib/lookup_table.h
+include/diplib/mapping.h
+include/diplib/math.h
+include/diplib/measurement.h
+include/diplib/microscopy.h
+include/diplib/morphology.h
+include/diplib/multithreading.h
+include/diplib/neighborlist.h
+include/diplib/nonlinear.h
+include/diplib/overload.h
+include/diplib/pixel_table.h
+include/diplib/private/constfor.h
+include/diplib/private/pcg_extras.hpp
+include/diplib/private/pcg_random.hpp
+include/diplib/private/pcg_uint128.hpp
+include/diplib/private/readme.txt
+include/diplib/private/robin_growth_policy.h
+include/diplib/private/robin_hash.h
+include/diplib/private/robin_map.h
+include/diplib/private/robin_set.h
+include/diplib/random.h
+include/diplib/regions.h
+include/diplib/saturated_arithmetic.h
+include/diplib/segmentation.h
+include/diplib/simple_file_io.h
+include/diplib/statistics.h
+include/diplib/testing.h
+include/diplib/transform.h
+include/diplib/union_find.h
+include/diplib/viewer/control.h
+include/diplib/viewer/export.h
+include/diplib/viewer/glfw.h
+include/diplib/viewer/glut.h
+include/diplib/viewer/histogram.h
+include/diplib/viewer/image.h
+include/diplib/viewer/link.h
+include/diplib/viewer/manager.h
+include/diplib/viewer/proxy.h
+include/diplib/viewer/slice.h
+include/diplib/viewer/status.h
+include/diplib/viewer/tensor.h
+include/diplib/viewer/viewer.h
+include/dipviewer.h
+lib/cmake/DIPlib/DIPlibConfig.cmake
+lib/cmake/DIPlib/DIPlibConfigVersion.cmake
+lib/cmake/DIPlib/DIPlibTargets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/DIPlib/DIPlibTargets.cmake
+lib/libDIP.so
+lib/libDIPviewer.so