<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository macports-base.

</pre>
<p><a href="https://github.com/macports/macports-base/commit/498def4b2726d3c58b971adb1c98398426771c5f">https://github.com/macports/macports-base/commit/498def4b2726d3c58b971adb1c98398426771c5f</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 498def4b2 Use destrooted tclsh for INTREE_TCLSH
</span>498def4b2 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 498def4b2726d3c58b971adb1c98398426771c5f
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Sat Feb 15 06:01:45 2025 +1100

<span style='display:block; white-space:pre;color:#404040;'>    Use destrooted tclsh for INTREE_TCLSH
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    This avoids issues caused by the hardened runtime when installing
</span><span style='display:block; white-space:pre;color:#404040;'>    signed binaries, since the copy in vendor-destroot is not signed.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Also use wildcards for the codesign target so the version numbers don't
</span><span style='display:block; white-space:pre;color:#404040;'>    have to be updated all the time.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/65920
</span>---
 vendor/Makefile.in | 46 +++++++++++++++++++++++++---------------------
 vendor/tclsh.in    |  6 +++++-
 2 files changed, 30 insertions(+), 22 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/Makefile.in b/vendor/Makefile.in
</span><span style='display:block; white-space:pre;color:#808080;'>index a393cd692..a61e15435 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/Makefile.in
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -6,7 +6,8 @@ SIGNIFY_SUBDIR=             signify-osx
</span> INSTALL_SUBDIR=           install
 
 PREFIX=                        @prefix@
<span style='display:block; white-space:pre;background:#ffe0e0;'>-DESTROOT=               @abs_top_builddir@/vendor/vendor-destroot
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+DESTROOT=                  @abs_top_builddir@/vendor/vendor-destroot
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+MP_PREFIX=                 @prefix@/libexec/macports
</span> 
 .PHONY: all clean distclean install destroot test
 .PHONY: destroot-tcl destroot-critcl destroot-tclx destroot-tcllib destroot-tcllibc destroot-signify destroot-install
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -69,30 +70,30 @@ destroot-tclx: all-tclx
</span>   @umask 0022; $(MAKE) -C @VENDOR_TCLX_SUBDIR@ "DESTDIR=${DESTROOT}" @VENDOR_TCLX_INSTALL@
 
 # tcllib requires a working tclsh
<span style='display:block; white-space:pre;background:#ffe0e0;'>-destroot-tcllib: all-tcl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot-tcllib: destroot-tcl
</span>   @echo ===\> staging to destroot in ${DIRPRFX}@VENDOR_TCLLIB_SUBDIR@
        @umask 0022; $(MAKE) -C @VENDOR_TCLLIB_SUBDIR@ "DESTDIR=${DESTROOT}" TCLSH_PROG=@INTREE_TCLSH@ @VENDOR_TCLLIB_INSTALL@
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        @chmod -R ugo+rX ${DESTROOT}${PREFIX}/libexec/macports/lib/tcllib*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   @chmod -R ugo+rX $(DESTROOT)$(MP_PREFIX)/lib/tcllib*
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-.stamp-critcl: | all-tcl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+.stamp-critcl: $(CRITCL_SUBDIR)/lib/critcl/critcl.tcl | destroot-tcl
</span>   @echo ===\> staging to destroot in ${DIRPRFX}${CRITCL_SUBDIR}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        @umask 0022; cd ${CRITCL_SUBDIR} && /usr/bin/env "HOME=@abs_top_builddir@/vendor" "@INTREE_TCLSH@" ./build.tcl install --prefix "${PREFIX}/libexec/macports" --dest-dir "${DESTROOT}" $(CRITCL_TARGET)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   @chmod -R ugo+rX ${DESTROOT}${PREFIX}/libexec/macports/lib/critcl*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   @umask 0022; cd $(CRITCL_SUBDIR) && /usr/bin/env "HOME=@abs_top_builddir@/vendor" "@INTREE_TCLSH@" ./build.tcl install --prefix "$(MP_PREFIX)" --dest-dir "$(DESTROOT)" $(CRITCL_TARGET)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   @chmod -R ugo+rX $(DESTROOT)$(MP_PREFIX)/lib/critcl*
</span>   @touch .stamp-critcl
 
 destroot-critcl: .stamp-critcl
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-.stamp-tcllibc: .stamp-critcl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+.stamp-tcllibc: $(TCLLIB_SUBDIR)/support/installation/version.tcl .stamp-critcl
</span>   @echo ===\> staging tcllibc to destroot in ${DIRPRFX}@VENDOR_TCLLIB_SUBDIR@
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        @umask 0022; /usr/bin/env "PATH=${DESTROOT}${PREFIX}/libexec/macports/bin:$$PATH" $(MAKE) -C @VENDOR_TCLLIB_SUBDIR@ "DESTDIR=${DESTROOT}" "CRITCL_TARGET=$(CRITCL_TARGET)" TCLSH_PROG=@INTREE_TCLSH@ install-binaries
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   @chmod -R ugo+rX ${DESTROOT}${PREFIX}/libexec/macports/lib/tcllib*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   @umask 0022; /usr/bin/env "PATH=$(DESTROOT)$(MP_PREFIX)/bin:$$PATH" $(MAKE) -C @VENDOR_TCLLIB_SUBDIR@ "DESTDIR=$(DESTROOT)" "CRITCL_TARGET=$(CRITCL_TARGET)" TCLSH_PROG=@INTREE_TCLSH@ install-binaries
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   @chmod -R ugo+rX $(DESTROOT)$(MP_PREFIX)/lib/tcllib*
</span>   @touch .stamp-tcllibc
 
 destroot-tcllibc: .stamp-tcllibc
 
 destroot-signify:
        @echo ===\> staging to destroot in ${DIRPRFX}${SIGNIFY_SUBDIR}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        @umask 0022; $(MAKE) -C ${SIGNIFY_SUBDIR} install "PREFIX=${DESTROOT}${PREFIX}/libexec/macports"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   @umask 0022; $(MAKE) -C $(SIGNIFY_SUBDIR) install "PREFIX=$(DESTROOT)$(MP_PREFIX)"
</span> 
 destroot-install: all-install
        @echo ===\> staging to destroot in ${DIRPRFX}${INSTALL_SUBDIR}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -147,22 +148,22 @@ install-tcllib:
</span>   rm -rf $(DESTDIR)$(TCL_PACKAGE_PATH)/tcllib1.*
        @echo ===\> making $(@:%-tcllib=%) in ${DIRPRFX}@VENDOR_TCLLIB_SUBDIR@
        @umask 0022; $(MAKE) -C @VENDOR_TCLLIB_SUBDIR@ TCLSH_PROG=@INTREE_TCLSH@ @VENDOR_TCLLIB_INSTALL@
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        @chmod -R ugo+rX $(DESTDIR)${PREFIX}/libexec/macports/lib/tcllib*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   @chmod -R ugo+rX $(DESTDIR)$(MP_PREFIX)/lib/tcllib*
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-install-tcllibc: .stamp-tcllibc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+install-tcllibc:
</span>   @echo ===\> making $(@:%-tcllibc=%)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        @umask 0022; cd "${DESTROOT}${PREFIX}/libexec/macports/lib"; \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-       for d in $(find tcllibc* -type d); do \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           mkdir -p "$(DESTDIR)${PREFIX}/libexec/macports/lib/$d"; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   @umask 0022; cd "$(DESTROOT)$(MP_PREFIX)/lib"; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       for d in $$(find tcllibc* -type d); do \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           mkdir -p "$(DESTDIR)$(MP_PREFIX)/lib/$$d"; \
</span>       done; \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            for f in $(find tcllibc* -type f); do \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           $(CPCMD) "$d" "$(DESTDIR)${PREFIX}/libexec/macports/lib/$d"; \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+       for f in $$(find tcllibc* -type f); do \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           $(CPCMD) "$$f" "$(DESTDIR)$(MP_PREFIX)/lib/$$f"; \
</span>       done
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        @chmod -R ugo+rX $(DESTDIR)${PREFIX}/libexec/macports/lib/tcllibc*
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   @chmod -R ugo+rX $(DESTDIR)$(MP_PREFIX)/lib/tcllibc*
</span> 
 install-signify:
        @echo ===\> making $(@:%-signify=%) in ${DIRPRFX}${SIGNIFY_SUBDIR}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        @umask 0022; $(MAKE) -C ${SIGNIFY_SUBDIR} install PREFIX=$(DESTDIR)${PREFIX}/libexec/macports
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   @umask 0022; $(MAKE) -C $(SIGNIFY_SUBDIR) install "PREFIX=$(DESTDIR)$(MP_PREFIX)"
</span> 
 install-install:
        @echo ===\> making $(@:%-install=%) in ${DIRPRFX}${INSTALL_SUBDIR}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -173,12 +174,15 @@ test:
</span> clean: $(CLEAN_TARGETS)
        rm -rf vendor-destroot
        rm -f .stamp-*
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        rm -rf .critcl
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-distclean: clean $(DISTCLEAN_TARGETS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distclean: $(DISTCLEAN_TARGETS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   rm -rf vendor-destroot
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   rm -f .stamp-*
</span>   rm -rf .critcl
        rm -f Makefile
        rm -f tclsh
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-codesign:: signify-osx/signify tcl/unix/libtcl8.6.dylib tcl/unix/tclsh tclx/libtclx8.6.dylib tcl/unix/pkgs/itcl4.3.2/libitcl4.3.2.dylib tcl/unix/pkgs/tdbc1.1.10/libtdbc1.1.10.dylib tcl/unix/pkgs/tdbcpostgres1.1.10/libtdbcpostgres1.1.10.dylib tcl/unix/pkgs/thread2.8.11/libthread2.8.11.dylib tcl/unix/pkgs/tdbcmysql1.1.10/libtdbcmysql1.1.10.dylib tcl/unix/pkgs/tdbcodbc1.1.10/libtdbcodbc1.1.10.dylib tcl/unix/pkgs/sqlite3.47.2/libsqlite3.47.2.dylib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+codesign:: signify-osx/signify tcl/unix/libtcl[89]*.dylib tcl/unix/tclsh tclx/libtclx[89]*.dylib tcl/unix/pkgs/itcl*/libitcl*.dylib tcl/unix/pkgs/tdbc[0-9]*/libtdbc*.dylib tcl/unix/pkgs/tdbcpostgres*/libtdbcpostgres*.dylib tcl/unix/pkgs/thread*/libthread*.dylib tcl/unix/pkgs/tdbcmysql*/libtdbcmysql*.dylib tcl/unix/pkgs/tdbcodbc*/libtdbcodbc*.dylib tcl/unix/pkgs/sqlite3*/libsqlite3*.dylib $(DESTROOT)$(MP_PREFIX)/lib/tcllibc*/macosx-macports/tcllibc.dylib
</span>   ../src/codesign.sh $?
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/vendor/tclsh.in b/vendor/tclsh.in
</span><span style='display:block; white-space:pre;color:#808080;'>index 7ae4b44ac..d7e7aaee3 100755
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/vendor/tclsh.in
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/vendor/tclsh.in
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,6 +1,8 @@
</span> #!/bin/sh
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-LIB_PATH="@TCL_BIN_DIR@:@TCL_BIN_DIR@/pkgs/@SQLITE3_LIBNAME@"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+DESTROOT="@abs_top_builddir@/vendor/vendor-destroot"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+MP_PREFIX="@prefix@/libexec/macports"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+LIB_PATH="${DESTROOT}${MP_PREFIX}/lib:${DESTROOT}${MP_PREFIX}/lib/@SQLITE3_LIBNAME@"
</span> 
 # For macOS
 if [ -z "$DYLD_LIBRARY_PATH" ]; then
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -16,4 +18,6 @@ else
</span>     export LD_LIBRARY_PATH="$LIB_PATH:$LD_LIBRARY_PATH"
 fi
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+export TCLLIBPATH="${DESTROOT}${MP_PREFIX}/lib"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> exec "@TCL_BIN_DIR@/tclsh" "$@"
</pre><pre style='margin:0'>

</pre>