On Sun, 24 Aug 2025 13:27:59 +0200, Antoine Jacoutot wrote:
> On August 24, 2025 1:06:07 PM GMT+02:00, Pascal Stumpf
> <pas...@stumpf.co> wrote: >On Sun, 24 Aug 2025 12:33:10 +0200, Antoine
> Jacoutot wrote: >> On Sat, Aug 23, 2025 at 03:50:21PM +0200, Theo
> Buehler wrote: >> > > The KSH found at configure time is propagated
> to most scripts that are >> > > installed. It's quite possible that
> all of these work as intended with >> > > /bin/ksh, but maybe it's
> best to not take any chances. >> > >> > Depending on shells/ksh93
> is problematic due to the conflict with >> > devel/libast. Now both
> have consumers, so the conflict bit me in my >> > last bulk: >> >>
> Thanks for the head up. >> What about statically compiling ksh? > >I'd
> rather keep libshell, how about a subpackage? > > >Index: Makefile
> >===================================================================
> >RCS file: /home/cvs/ports/shells/ksh93/Makefile,v >diff -u -p -r1.25
> Makefile >--- Makefile 1 Sep 2024 09:54:01 -0000 1.25 >+++ Makefile
> 24 Aug 2025 11:01:14 -0000 >@@ -1,11 +1,14 @@ >-COMMENT = AT&T Korn
> Shell >+COMMENT-main = AT&T Korn Shell >+COMMENT-libshell = AT&T
> Korn Shell, dynamic libraries > > V = 1.0.10 > GH_ACCOUNT = ksh93 >
> GH_PROJECT = ksh > GH_TAGNAME = v${V} >-PKGNAME = ksh93-$V >-EPOCH = 0
> >+PKGNAME-main = ksh93-$V >+PKGNAME-libshell = libshell-$V >+EPOCH-main
> = 0 >+REVISION-main = 0 > > SO_VERSION = 0.0 > >@@ -16,6 +19,8 @@
> SHARED_LIBS += shell > > CATEGORIES = shells > >+MULTI_PACKAGES =
> -main -libshell >+ > HOMEPAGE = https://github.com/ksh93/ksh > >
> MAINTAINER = Pascal Stumpf <pas...@stumpf.co> >@@ -40,7 +45,7 @@
> do-build: > HOSTTYPE="${HOSTTYPE}" > > do-install: >- ${INSTALL_PROGRAM}
> ${AST_ARCH}/dyn/bin/ksh ${PREFIX}/bin/ksh93 >+ ${INSTALL_PROGRAM}
> ${AST_ARCH}/bin/ksh ${PREFIX}/bin/ksh93 > cd ${PREFIX}/bin && ln ksh93
> rksh93 > ${INSTALL_DATA} ${AST_ARCH}/lib/lib{ast,cmd,dll,shell}.a
> \ > ${PREFIX}/lib >Index: pkg/DESCR
> >===================================================================
> >RCS file: pkg/DESCR >diff -N pkg/DESCR >--- pkg/DESCR 13 Oct 2012
> 15:11:51 -0000 1.1.1.1 >+++ /dev/null 1 Jan 1970 00:00:00 -0000 >@@
> -1,11 +0,0 @@ >-KSH-93 is the most recent version of the KornShell
> Language described >-in "The KornShell Command and Programming
> Language," by Morris >-Bolsky and David Korn of AT&T Bell Laboratories.
> The KornShell is >-a shell programming language, which is upward
> compatible with "sh" >-(the Bourne Shell), and is intended to conform
> to the IEEE P1003.2/ISO >-9945.2 Shell and Utilities standard. KSH-93
> provides an enhanced >-programming environment in addition to the
> major command-entry >-features of the BSD shell "csh". With KSH-93,
> medium-sized programming >-tasks can be performed at shell-level without
> a significant loss >-in performance. In addition, "sh" scripts can
> be run on KSH-93 >-without modification. >Index: pkg/DESCR-libshell
> >===================================================================
> >RCS file: pkg/DESCR-libshell >diff -N pkg/DESCR-libshell >---
> /dev/null 1 Jan 1970 00:00:00 -0000 >+++ pkg/DESCR-libshell 24 Aug 2025
> 11:02:21 -0000 >@@ -0,0 +1,13 @@ >+KSH-93 is the most recent version
> of the KornShell Language described >+in "The KornShell Command and
> Programming Language," by Morris >+Bolsky and David Korn of AT&T Bell
> Laboratories. The KornShell is >+a shell programming language, which is
> upward compatible with "sh" >+(the Bourne Shell), and is intended to
> conform to the IEEE P1003.2/ISO >+9945.2 Shell and Utilities standard.
> KSH-93 provides an enhanced >+programming environment in addition to
> the major command-entry >+features of the BSD shell "csh". With KSH-93,
> medium-sized programming >+tasks can be performed at shell-level
> without a significant loss >+in performance. In addition, "sh" scripts
> can be run on KSH-93 >+without modification. >+ >+This package
> contains the dynamic libraries and headers. >Index: pkg/DESCR-main
> >===================================================================
> >RCS file: pkg/DESCR-main >diff -N pkg/DESCR-main >--- /dev/null 1
> Jan 1970 00:00:00 -0000 >+++ pkg/DESCR-main 13 Oct 2012 15:11:51
> -0000 >@@ -0,0 +1,11 @@ >+KSH-93 is the most recent version of the
> KornShell Language described >+in "The KornShell Command and Programming
> Language," by Morris >+Bolsky and David Korn of AT&T Bell Laboratories.
> The KornShell is >+a shell programming language, which is upward
> compatible with "sh" >+(the Bourne Shell), and is intended to conform
> to the IEEE P1003.2/ISO >+9945.2 Shell and Utilities standard. KSH-93
> provides an enhanced >+programming environment in addition to the
> major command-entry >+features of the BSD shell "csh". With KSH-93,
> medium-sized programming >+tasks can be performed at shell-level
> without a significant loss >+in performance. In addition, "sh" scripts
> can be run on KSH-93 >+without modification. >Index: pkg/PLIST
> >===================================================================
> >RCS file: pkg/PLIST >diff -N pkg/PLIST >--- pkg/PLIST 1 Sep
> 2024 09:54:01 -0000 1.6 >+++ /dev/null 1 Jan 1970 00:00:00 -0000
> >@@ -1,122 +0,0 @@ >-@conflict libast-* >-@shell bin/ksh93
> >-@shell bin/rksh93 >-include/ast/ >-include/ast/align.h
> >-include/ast/aso.h >-include/ast/ast.h >-include/ast/ast_api.h
> >-include/ast/ast_ccode.h >-include/ast/ast_common.h
> >-include/ast/ast_dir.h >-include/ast/ast_dirent.h
> >-include/ast/ast_fcntl.h >-include/ast/ast_float.h
> >-include/ast/ast_fs.h >-include/ast/ast_iconv.h >-include/ast/ast_lib.h
> >-include/ast/ast_limits.h >-include/ast/ast_map.h
> >-include/ast/ast_mmap.h >-include/ast/ast_mode.h
> >-include/ast/ast_ndbm.h >-include/ast/ast_nl_types.h
> >-include/ast/ast_param.h >-include/ast/ast_sizeof.h
> >-include/ast/ast_standards.h >-include/ast/ast_std.h
> >-include/ast/ast_stdio.h >-include/ast/ast_sys.h
> >-include/ast/ast_time.h >-include/ast/ast_tty.h
> >-include/ast/ast_wait.h >-include/ast/ast_wchar.h
> >-include/ast/ast_wctype.h >-include/ast/ast_windows.h
> >-include/ast/bytesex.h >-include/ast/ccode.h >-include/ast/cdt.h
> >-include/ast/cmd.h >-include/ast/cmdarg.h >-include/ast/cmdext.h
> >-include/ast/cmdlist.h >-include/ast/debug.h >-include/ast/dirent.h
> >-include/ast/dlldefs.h >-include/ast/endian.h >-include/ast/error.h
> >-include/ast/find.h >-include/ast/fmtmsg.h >-include/ast/fnmatch.h
> >-include/ast/fnv.h >-include/ast/fts.h >-include/ast/ftw.h
> >-include/ast/ftwalk.h >-include/ast/glob.h >-include/ast/hash.h
> >-include/ast/hashkey.h >-include/ast/hashpart.h
> >-include/ast/history.h >-include/ast/iconv.h >-include/ast/ip6.h
> >-include/ast/lc.h >-include/ast/ls.h >-include/ast/magic.h
> >-include/ast/magicid.h >-include/ast/mc.h >-include/ast/mime.h
> >-include/ast/mnt.h >-include/ast/modecanon.h >-include/ast/modex.h
> >-include/ast/namval.h >-include/ast/nl_types.h >-include/ast/nval.h
> >-include/ast/option.h >-include/ast/proc.h >-include/ast/re_comp.h
> >-include/ast/recfmt.h >-include/ast/regex.h >-include/ast/regexp.h
> >-include/ast/releaseflags.h >-include/ast/sfdisc.h
> >-include/ast/sfio.h >-include/ast/sfio_s.h >-include/ast/sfio_t.h
> >-include/ast/shcmd.h >-include/ast/shell.h >-include/ast/sig.h
> >-include/ast/stak.h >-include/ast/stdio.h >-include/ast/stk.h
> >-include/ast/sum.h >-include/ast/swap.h >-include/ast/tar.h
> >-include/ast/times.h >-include/ast/tm.h >-include/ast/tmx.h
> >-include/ast/tok.h >-include/ast/tv.h >-include/ast/vdb.h
> >-include/ast/wait.h >-include/ast/wchar.h >-include/ast/wctype.h
> >-include/ast/wordexp.h >-@static-lib lib/libast.a >-@lib
> lib/libast.so.${LIBast_VERSION} >-@static-lib lib/libcmd.a >-@lib
> lib/libcmd.so.${LIBcmd_VERSION} >-@static-lib lib/libdll.a >-@lib
> lib/libdll.so.${LIBdll_VERSION} >-@static-lib lib/libshell.a >-@lib
> lib/libshell.so.${LIBshell_VERSION} >-@man man/man1/ksh93.1 >-@man
> man/man1/rksh93.1 >-@man man/man3/shell.3 >-share/examples/ksh93/
> >-share/examples/ksh93/autocd >-share/examples/ksh93/cd
> >-share/examples/ksh93/dirs >-share/examples/ksh93/man
> >-share/examples/ksh93/mcd >-share/examples/ksh93/popd
> >-share/examples/ksh93/pushd >Index: pkg/PLIST-libshell
> >===================================================================
> >RCS file: pkg/PLIST-libshell >diff -N pkg/PLIST-libshell >---
> /dev/null 1 Jan 1970 00:00:00 -0000 >+++ pkg/PLIST-libshell 24
> Aug 2025 11:00:22 -0000 >@@ -0,0 +1,110 @@ >+@conflict libast-*
> >+include/ast/ >+include/ast/align.h >+include/ast/aso.h
> >+include/ast/ast.h >+include/ast/ast_api.h >+include/ast/ast_ccode.h
> >+include/ast/ast_common.h >+include/ast/ast_dir.h
> >+include/ast/ast_dirent.h >+include/ast/ast_fcntl.h
> >+include/ast/ast_float.h >+include/ast/ast_fs.h
> >+include/ast/ast_iconv.h >+include/ast/ast_lib.h
> >+include/ast/ast_limits.h >+include/ast/ast_map.h
> >+include/ast/ast_mmap.h >+include/ast/ast_mode.h
> >+include/ast/ast_ndbm.h >+include/ast/ast_nl_types.h
> >+include/ast/ast_param.h >+include/ast/ast_sizeof.h
> >+include/ast/ast_standards.h >+include/ast/ast_std.h
> >+include/ast/ast_stdio.h >+include/ast/ast_sys.h
> >+include/ast/ast_time.h >+include/ast/ast_tty.h
> >+include/ast/ast_wait.h >+include/ast/ast_wchar.h
> >+include/ast/ast_wctype.h >+include/ast/ast_windows.h
> >+include/ast/bytesex.h >+include/ast/ccode.h >+include/ast/cdt.h
> >+include/ast/cmd.h >+include/ast/cmdarg.h >+include/ast/cmdext.h
> >+include/ast/cmdlist.h >+include/ast/debug.h >+include/ast/dirent.h
> >+include/ast/dlldefs.h >+include/ast/endian.h >+include/ast/error.h
> >+include/ast/find.h >+include/ast/fmtmsg.h >+include/ast/fnmatch.h
> >+include/ast/fnv.h >+include/ast/fts.h >+include/ast/ftw.h
> >+include/ast/ftwalk.h >+include/ast/glob.h >+include/ast/hash.h
> >+include/ast/hashkey.h >+include/ast/hashpart.h
> >+include/ast/history.h >+include/ast/iconv.h >+include/ast/ip6.h
> >+include/ast/lc.h >+include/ast/ls.h >+include/ast/magic.h
> >+include/ast/magicid.h >+include/ast/mc.h >+include/ast/mime.h
> >+include/ast/mnt.h >+include/ast/modecanon.h >+include/ast/modex.h
> >+include/ast/namval.h >+include/ast/nl_types.h >+include/ast/nval.h
> >+include/ast/option.h >+include/ast/proc.h >+include/ast/re_comp.h
> >+include/ast/recfmt.h >+include/ast/regex.h >+include/ast/regexp.h
> >+include/ast/releaseflags.h >+include/ast/sfdisc.h >+include/ast/sfio.h
> >+include/ast/sfio_s.h >+include/ast/sfio_t.h >+include/ast/shcmd.h
> >+include/ast/shell.h >+include/ast/sig.h >+include/ast/stak.h
> >+include/ast/stdio.h >+include/ast/stk.h >+include/ast/sum.h
> >+include/ast/swap.h >+include/ast/tar.h >+include/ast/times.h
> >+include/ast/tm.h >+include/ast/tmx.h >+include/ast/tok.h
> >+include/ast/tv.h >+include/ast/vdb.h >+include/ast/wait.h
> >+include/ast/wchar.h >+include/ast/wctype.h >+include/ast/wordexp.h
> >+@static-lib lib/libast.a >+@lib lib/libast.so.${LIBast_VERSION}
> >+@static-lib lib/libcmd.a >+@lib lib/libcmd.so.${LIBcmd_VERSION}
> >+@static-lib lib/libdll.a >+@lib lib/libdll.so.${LIBdll_VERSION}
> >+@static-lib lib/libshell.a >+@lib lib/libshell.so.${LIBshell_VERSION}
> >+@man man/man3/shell.3 >Index: pkg/PLIST-main
> >===================================================================
> >RCS file: pkg/PLIST-main >diff -N pkg/PLIST-main >--- /dev/null
> 1 Jan 1970 00:00:00 -0000 >+++ pkg/PLIST-main 24 Aug 2025
> 11:03:55 -0000 >@@ -0,0 +1,13 @@ >+@pkgpath shells/ksh93 >+@shell
> bin/ksh93 >+@shell bin/rksh93 >+@man man/man1/ksh93.1 >+@man
> man/man1/rksh93.1 >+share/examples/ksh93/ >+share/examples/ksh93/autocd
> >+share/examples/ksh93/cd >+share/examples/ksh93/dirs
> >+share/examples/ksh93/man >+share/examples/ksh93/mcd
> >+share/examples/ksh93/popd >+share/examples/ksh93/pushd
> 
> No strong opinion ony side but would ksh93 work without also installing
> the libshell sub package?

Sure.  That's pretty much the point of this part:

 do-install:
-       ${INSTALL_PROGRAM} ${AST_ARCH}/dyn/bin/ksh ${PREFIX}/bin/ksh93
+       ${INSTALL_PROGRAM} ${AST_ARCH}/bin/ksh ${PREFIX}/bin/ksh93

which will install

/usr/local/bin/ksh93:
        Start            End              Type  Open Ref GrpRef Name
        000004feabe42000 000004feabfa9000 exe   1    0   0
/usr/local/bin/ksh93
        00000500dd5b5000 00000500dd5e6000 rlib  0    1   0
/usr/lib/libm.so.10.1
        0000050193288000 00000501932a2000 rlib  0    1   0
/usr/lib/libutil.so.21.0
        0000050167557000 0000050167660000 rlib  0    1   0
/usr/lib/libc.so.101.0
        000005010ad4f000 000005010ad4f000 ld.so 0    1   0
/usr/libexec/ld.so


instead of the one depending on libshell.


> 
> -- Antoine

Reply via email to