git: a52e4d05ee4a - main - cad/klayout: update to 0.28.17

From: Hiroki Tagato <tagattie_at_FreeBSD.org>
Date: Fri, 19 Sep 2025 06:52:11 UTC
The branch main has been updated by tagattie:

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

commit a52e4d05ee4a79cfe4e79a606276865ba0a6f698
Author:     Kevin Zheng <kevinz5000@gmail.com>
AuthorDate: 2025-09-19 06:49:16 +0000
Commit:     Hiroki Tagato <tagattie@FreeBSD.org>
CommitDate: 2025-09-19 06:51:57 +0000

    cad/klayout: update to 0.28.17
    
    Changelog: https://www.klayout.de/development.html#0.28.17
    
    PR:             285003
    Reported by:    Kevin Zheng <kevinz5000@gmail.com> (new maintainer)
    Reviewed by:    alven
    Approved by:    hrs (previous maintainer, consecutive timeouts)
---
 cad/klayout/Makefile                        |  11 +-
 cad/klayout/distinfo                        |   6 +-
 cad/klayout/files/patch-build.sh            | 160 ----------------------------
 cad/klayout/files/patch-src-lib-lib-lib.pro |   9 --
 4 files changed, 11 insertions(+), 175 deletions(-)

diff --git a/cad/klayout/Makefile b/cad/klayout/Makefile
index dab3a001edc0..05005e50f073 100644
--- a/cad/klayout/Makefile
+++ b/cad/klayout/Makefile
@@ -1,9 +1,9 @@
 PORTNAME=	klayout
-PORTVERSION=	0.28.12
+PORTVERSION=	0.28.17
 DISTVERSIONPREFIX=	v
 CATEGORIES=	cad
 
-MAINTAINER=	hrs@FreeBSD.org
+MAINTAINER=	kevinz5000@gmail.com
 COMMENT=	Qt-based chip mask layout viewing and editing tool
 WWW=		http://www.klayout.de/index.html
 
@@ -12,6 +12,8 @@ LICENSE=	GPLv2
 BROKEN_i386=	type 'hash<long long>' does not provide a call operator
 BROKEN_powerpc=	type 'hash<long long>' does not provide a call operator
 
+BUILD_DEPENDS=	bash:shells/bash
+
 USES=		compiler:c++0x gmake gl python ruby qt:5
 USE_GITHUB=	yes
 GH_ACCOUNT=	KLayout
@@ -33,14 +35,17 @@ INSTALL_WRKSRC=	${WRKSRC}/build-release
 TEST_WRKSRC=	${WRKSRC}/build-release
 PLIST_SUB=	PORTVERSION=${PORTVERSION} PORTVERSION_R=${PORTVERSION:R}
 
+CONFIGURE_SHELL=	${LOCALBASE}/bin/bash
+
 do-configure:
 	cd ${WRKSRC} && \
-	    ${SETENV} ${MAKE_ENV} ${SH} build.sh \
+	    ${SETENV} ${MAKE_ENV} ${CONFIGURE_SHELL} build.sh \
 		-with-qtbinding \
 		-rpath "${PREFIX}/lib/klayout" \
 		-prefix "${PREFIX}" \
 		-python ${PYTHON_CMD} \
 		-ruby ${RUBY} \
+		-nolibgit2 \
 		-dry-run
 
 post-configure:
diff --git a/cad/klayout/distinfo b/cad/klayout/distinfo
index 76215e931c68..9f4ee7d83159 100644
--- a/cad/klayout/distinfo
+++ b/cad/klayout/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1732781073
-SHA256 (KLayout-klayout-v0.28.12_GH0.tar.gz) = 92353301dd87a556447b999b4cf452b6027ae65e40311cf3d8399e9df26d6343
-SIZE (KLayout-klayout-v0.28.12_GH0.tar.gz) = 88446237
+TIMESTAMP = 1740272300
+SHA256 (KLayout-klayout-v0.28.17_GH0.tar.gz) = 1cf2c46823e56c134b2936aa4536dbe3f0dccc95f117f0bd7a7d5b4ff4b619ec
+SIZE (KLayout-klayout-v0.28.17_GH0.tar.gz) = 89415525
diff --git a/cad/klayout/files/patch-build.sh b/cad/klayout/files/patch-build.sh
deleted file mode 100644
index 5b078d7ff5f1..000000000000
--- a/cad/klayout/files/patch-build.sh
+++ /dev/null
@@ -1,160 +0,0 @@
---- build.sh.orig	2022-12-22 22:17:08 UTC
-+++ build.sh
-@@ -583,7 +583,7 @@ echo "      RPATH=$RPATH"
- mkdir -p $BUILD
- 
- # source the version script
--. $(dirname $(which $0))/version.sh
-+. version.sh
- 
- # qmake needs absolute paths, so we get them now:
- #   OSX does not have `readlink -f` command. Use equivalent Perl script.
-@@ -596,11 +596,7 @@ else
- fi
- 
- if [ "$IS_MAC" = "no" ]; then
--  if ( gmake -v >/dev/null 2>/dev/null ); then
-     MAKE_PRG=gmake
--  else
--    MAKE_PRG=make
--  fi
- else
-   MAKE_PRG=make
- fi
-@@ -625,83 +621,85 @@ $QMAKE -v
- # Force a minimum rebuild because of version info
- touch $CURR_DIR/src/version/version.h
- 
--qmake_options=(
-+qmake_options="
-   -recursive
--  CONFIG+="$CONFIG"
--  RUBYLIBFILE="$RUBYLIBFILE"
--  RUBYVERSIONCODE="$RUBYVERSIONCODE"
--  HAVE_RUBY="$HAVE_RUBY"
--  PYTHON="$PYTHON"
--  PYTHONLIBFILE="$PYTHONLIBFILE"
--  PYTHONINCLUDE="$PYTHONINCLUDE"
--  PYTHONEXTSUFFIX="$PYTHONEXTSUFFIX"
--  HAVE_PYTHON="$HAVE_PYTHON"
--  HAVE_QTBINDINGS="$HAVE_QTBINDINGS"
--  HAVE_QT_UITOOLS="$HAVE_QT_UITOOLS"
--  HAVE_QT_NETWORK="$HAVE_QT_NETWORK"
--  HAVE_QT_SQL="$HAVE_QT_SQL"
--  HAVE_QT_SVG="$HAVE_QT_SVG"
--  HAVE_QT_PRINTSUPPORT="$HAVE_QT_PRINTSUPPORT"
--  HAVE_QT_MULTIMEDIA="$HAVE_QT_MULTIMEDIA"
--  HAVE_QT_DESIGNER="$HAVE_QT_DESIGNER"
--  HAVE_QT_XML="$HAVE_QT_XML"
--  HAVE_64BIT_COORD="$HAVE_64BIT_COORD"
--  HAVE_QT="$HAVE_QT"
--  HAVE_CURL="$HAVE_CURL"
--  HAVE_EXPAT="$HAVE_EXPAT"
--  HAVE_PNG="$HAVE_PNG"
--  PREFIX="$BIN"
--  RPATH="$RPATH"
--  KLAYOUT_VERSION="$KLAYOUT_VERSION"
--  KLAYOUT_VERSION_DATE="$KLAYOUT_VERSION_DATE"
--  KLAYOUT_VERSION_REV="$KLAYOUT_VERSION_REV"
--)
-+  CONFIG+=\"$CONFIG\"
-+  RUBYLIBFILE=\"$RUBYLIBFILE\"
-+  RUBYVERSIONCODE=\"$RUBYVERSIONCODE\"
-+  HAVE_RUBY=\"$HAVE_RUBY\"
-+  PYTHON=\"$PYTHON\"
-+  PYTHONLIBFILE=\"$PYTHONLIBFILE\"
-+  PYTHONINCLUDE=\"$PYTHONINCLUDE\"
-+  PYTHONEXTSUFFIX=\"$PYTHONEXTSUFFIX\"
-+  HAVE_PYTHON=\"$HAVE_PYTHON\"
-+  HAVE_QTBINDINGS=\"$HAVE_QTBINDINGS\"
-+  HAVE_QT_UITOOLS=\"$HAVE_QT_UITOOLS\"
-+  HAVE_QT_NETWORK=\"$HAVE_QT_NETWORK\"
-+  HAVE_QT_SQL=\"$HAVE_QT_SQL\"
-+  HAVE_QT_SVG=\"$HAVE_QT_SVG\"
-+  HAVE_QT_PRINTSUPPORT=\"$HAVE_QT_PRINTSUPPORT\"
-+  HAVE_QT_MULTIMEDIA=\"$HAVE_QT_MULTIMEDIA\"
-+  HAVE_QT_DESIGNER=\"$HAVE_QT_DESIGNER\"
-+  HAVE_QT_XML=\"$HAVE_QT_XML\"
-+  HAVE_64BIT_COORD=\"$HAVE_64BIT_COORD\"
-+  HAVE_QT=\"$HAVE_QT\"
-+  HAVE_CURL=\"$HAVE_CURL\"
-+  HAVE_EXPAT=\"$HAVE_EXPAT\"
-+  HAVE_PNG=\"$HAVE_PNG\"
-+  PREFIX=\"$BIN\"
-+  RPATH=\"$RPATH\"
-+  KLAYOUT_VERSION=\"$KLAYOUT_VERSION\"
-+  KLAYOUT_VERSION_DATE=\"$KLAYOUT_VERSION_DATE\"
-+  KLAYOUT_VERSION_REV=\"$KLAYOUT_VERSION_REV\"
-+"
- 
- # NOTE: qmake does not like include paths which clash with paths built into the compiler
- # hence we don't add RUBYINCLUDE or RUBYINCLUDE2 in this case (found on CentOS 8 where Ruby
- # headers are installed in /usr/include)
- if [ "$RUBYINCLUDE" != "/usr/include" ] && [  "$RUBYINCLUDE" != "/usr/local/include" ]; then
--  qmake_options+=( RUBYINCLUDE="$RUBYINCLUDE" )
-+  qmake_options="$qmake_options RUBYINCLUDE=\"$RUBYINCLUDE\""
- fi
- if [ "$RUBYINCLUDE2" != "/usr/include" ] && [  "$RUBYINCLUDE2" != "/usr/local/include" ]; then
--  qmake_options+=( RUBYINCLUDE2="$RUBYINCLUDE2" )
-+  qmake_options="$qmake_options RUBYINCLUDE2=\"$RUBYINCLUDE2\""
- fi
- 
- # This should speed up build time considerably
- # https://ortogonal.github.io/ccache-and-qmake-qtcreator/
- if [ "$QMAKE_CCACHE" = 1 ]; then
--  qmake_options+=(
--    CONFIG+="ccache"
--  )
-+  qmake_options="$qmake_options
-+    CONFIG+=\"ccache\"
-+  "
- fi
- 
- if [ $BUILD_EXPERT = 1 ]; then
--  qmake_options+=(
--    QMAKE_AR="$AR cqs"
--    QMAKE_LINK_C="$CC"
--    QMAKE_LINK_C_SHLIB="$CC"
--    QMAKE_LINK="$CXX"
--    QMAKE_LINK_SHLIB="$CXX"
--    QMAKE_OBJCOPY="$OBJCOPY"
-+  qmake_options="
-+    QMAKE_AR=\"$AR cqs\"
-+    QMAKE_LINK_C=\"$CC\"
-+    QMAKE_LINK_C_SHLIB=\"$CC\"
-+    QMAKE_LINK=\"$CXX\"
-+    QMAKE_LINK_SHLIB=\"$CXX\"
-+    QMAKE_OBJCOPY=\"$OBJCOPY\"
-     QMAKE_RANLIB=
-     QMAKE_STRIP=
--    QMAKE_CC="$CC"
--    QMAKE_CXX="$CXX"
--    QMAKE_CFLAGS="$CFLAGS"
-+    QMAKE_CC=\"$CC\"
-+    QMAKE_CXX=\"$CXX\"
-+    QMAKE_CFLAGS=\"$CFLAGS\"
-     QMAKE_CFLAGS_RELEASE=
-     QMAKE_CFLAGS_DEBUG=
--    QMAKE_CXXFLAGS="$CXXFLAGS"
-+    QMAKE_CXXFLAGS=\"$CXXFLAGS\"
-     QMAKE_CXXFLAGS_RELEASE=
-     QMAKE_CXXFLAGS_DEBUG=
--    QMAKE_LIBS="$LIBS"
--    QMAKE_LFLAGS="$LDFLAGS"
-+    QMAKE_LIBS=\"$LIBS\"
-+    QMAKE_LFLAGS=\"$LDFLAGS\"
-     QMAKE_LFLAGS_RELEASE=
-     QMAKE_LFLAGS_DEBUG=
--  )
-+  "
- fi
- 
--echo $QMAKE "$CURR_DIR/src/klayout.pro" "${qmake_options[@]}"
--$QMAKE "$CURR_DIR/src/klayout.pro" "${qmake_options[@]}"
-+echo $QMAKE "$CURR_DIR/src/klayout.pro" ${qmake_options} \
-+    QMAKE_CXXFLAGS="$CXXFLAGS" QMAKE_CFLAGS="$CFLAGS" QMAKE_LFLAGS="$LDFLAGS"
-+$QMAKE "$CURR_DIR/src/klayout.pro" ${qmake_options} \
-+    QMAKE_CXXFLAGS="$CXXFLAGS" QMAKE_CFLAGS="$CFLAGS" QMAKE_LFLAGS="$LDFLAGS"
- 
- cd $CURR_DIR
- echo ""
diff --git a/cad/klayout/files/patch-src-lib-lib-lib.pro b/cad/klayout/files/patch-src-lib-lib-lib.pro
deleted file mode 100644
index 056cbc0144b6..000000000000
--- a/cad/klayout/files/patch-src-lib-lib-lib.pro
+++ /dev/null
@@ -1,9 +0,0 @@
---- src/lib/lib/lib.pro.orig	2021-08-28 17:04:07 UTC
-+++ src/lib/lib/lib.pro
-@@ -36,5 +36,5 @@ RESOURCES = \
- 
- INCLUDEPATH += $$TL_INC $$GSI_INC $$DB_INC
- DEPENDPATH += $$TL_INC $$GSI_INC $$DB_INC
--LIBS += -L$$DESTDIR -lklayout_gsi -lklayout_tl -lklayout_db
-+LIBS += $$DESTDIR/libklayout_gsi.so $$DESTDIR/libklayout_tl.so $$DESTDIR/libklayout_db.so
-