diff --git a/shells/ksh-devel/Makefile b/shells/ksh-devel/Makefile index 7f2844d1855d..29496a0e319c 100644 --- a/shells/ksh-devel/Makefile +++ b/shells/ksh-devel/Makefile @@ -1,84 +1,84 @@ # Make sure that your configuration DOES NOT set ANY gcc-related # variables. ksh93 will not compile if you set even the seemingly # most unrelated variable related to gcc configuration. This means # especially any flag which attempts to set the cputype. Setting the # cputype does absolutely nothing except cause systems to fail in # horrible ways. For any modern processor, setting the cputype only # serves to expose gcc bugs and does nothing to speed up any known # program. If you are really unconvinced, go ahead but do not # complain to me about it. PORTNAME= ksh PORTVERSION= ${AST_COMMIT_DATE} CATEGORIES= shells PKGNAMESUFFIX= -devel MAINTAINER= cy@FreeBSD.org COMMENT= Development branch of AT&T KornShell 93 WWW= http://www.kornshell.com/ LICENSE= EPL BROKEN_aarch64= Fails to link: missing sbrk BROKEN_riscv64= Fails to link: missing sbrk BROKEN_FreeBSD_12= exit code 139 making lib/libcmd HASH= 9bec2b78 AST_COMMIT_DATE= 2023.01.11 USES= compiler:c11 USE_GITHUB= yes GH_ACCOUNT= ksh93 GH_PROJECT= ksh GH_TAGNAME= ${HASH} # IMPORTANT: Disabling conflicts, i.e. -DDISABLE_CONFLICTS will result in # arcane build failures due to already installed ksh/ksh93 in # $PATH. KSH_CONFLICTS= pdksh KSH93_CONFLICTS= ksh2020 ksh93 ast-ksh KSH93D_CONFLICTS= ksh2020 ksh93 ast-ksh OPTIONS_DEFAULT= KSH93 EXAMPLES OPTIONS_DEFINE= EXAMPLES STATIC OPTIONS_SINGLE= BIN_KSH OPTIONS_SINGLE_BIN_KSH= KSH KSH93 KSH93D KSH_DESC= Install to ${PREFIX}/bin/ksh KSH93_DESC= Install to ${PREFIX}/bin/ksh93 KSH93D_DESC= Install to ${PREFIX}/bin/ksh93d (development) CFLAGS+= -DMAP_TYPE LDFLAGS+= -lm -MAKE_ENV= CCFLAGS="-Wno-unused-value -Wno-parentheses -Wno-logical-op-parentheses -Wno-int-conversion" CFLAGS="${CFLAGS}" +MAKE_ENV= CCFLAGS="-Wno-unused-value -Wno-parentheses -Wno-logical-op-parentheses" CFLAGS="${CFLAGS}" STATIC_MAKE_ENV= LDFLAGS+=-static KSH_PLIST_SUB= 93="" KSH93_PLIST_SUB= 93="93" KSH93D_PLIST_SUB= 93="93d" .include .if ${PORT_OPTIONS:MKSH93D} PSUFFIX= 93d .elif ${PORT_OPTIONS:MKSH93} PSUFFIX= 93 .endif post-patch: @${REINPLACE_CMD} -e 's|SF_FLAGS|SFIO_FLAGS|g' ${WRKSRC}/src/lib/libast/include/sfio*.h ${WRKSRC}/src/lib/libast/sfio/*.c do-build: @cd ${WRKSRC}/ && ${SETENV} -i ${MAKE_ENV} ${SH} bin/package flat make do-install: ${INSTALL_PROGRAM} ${WRKSRC}/bin/ksh ${STAGEDIR}${PREFIX}/bin/ksh${PSUFFIX} ${INSTALL_MAN} ${WRKSRC}/man/man1/sh.1 ${STAGEDIR}${MAN1PREFIX}/man/man1/ksh${PSUFFIX}.1 ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}${PSUFFIX}/ cd ${WRKSRC}/fun/ && ${INSTALL_SCRIPT} dirs popd pushd ${STAGEDIR}${EXAMPLESDIR}${PSUFFIX}/ do-test: cd ${WRKSRC}/src/cmd/ksh93/tests/ && ${SETENV} SHELL=${WRKSRC}/bin/ksh ${WRKSRC}/bin/ksh shtests .include diff --git a/shells/ksh-devel/files/patch-src_lib_libast_aso_aso.c b/shells/ksh-devel/files/patch-src_lib_libast_aso_aso.c new file mode 100644 index 000000000000..6ab5be771f7a --- /dev/null +++ b/shells/ksh-devel/files/patch-src_lib_libast_aso_aso.c @@ -0,0 +1,11 @@ +--- src/lib/libast/aso/aso.c.orig 2023-01-11 01:32:04.000000000 -0800 ++++ src/lib/libast/aso/aso.c 2023-02-15 06:41:07.380213000 -0800 +@@ -836,7 +836,7 @@ + + #if defined(_aso_casptr) + if (!state.lockf) +- return _aso_casptr((void**)p, o, n); ++ return _aso_cas64((void**)p, o, n); + #endif + k = lock(state.data, 0, p); + if (*(void* volatile*)p == o) diff --git a/shells/ksh/Makefile b/shells/ksh/Makefile index e006024685ed..ca0d38165128 100644 --- a/shells/ksh/Makefile +++ b/shells/ksh/Makefile @@ -1,78 +1,78 @@ # Make sure that your configuration DOES NOT set ANY gcc-related # variables. ksh93 will not compile if you set even the seemingly # most unrelated variable related to gcc configuration. This means # especially any flag which attempts to set the cputype. Setting the # cputype does absolutely nothing except cause systems to fail in # horrible ways. For any modern processor, setting the cputype only # serves to expose gcc bugs and does nothing to speed up any known # program. If you are really unconvinced, go ahead but do not # complain to me about it. DISTVERSIONPREFIX= v PORTNAME= ksh PORTVERSION= 1.0.4 CATEGORIES= shells MAINTAINER= cy@FreeBSD.org COMMENT= Development branch of AT&T KornShell 93 WWW= http://www.kornshell.com/ LICENSE= EPL BROKEN_aarch64= Fails to link: missing sbrk BROKEN_riscv64= Fails to link: missing sbrk USES= compiler:c11 USE_GITHUB= yes GH_ACCOUNT= ksh93 GH_PROJECT= ksh # IMPORTANT: Disabling conflicts, i.e. -DDISABLE_CONFLICTS will result in # arcane build failures due to already installed ksh/ksh93 in # $PATH. KSH_CONFLICTS= pdksh KSH93_CONFLICTS= ksh2020 ksh93 ast-ksh ksh-devel OPTIONS_DEFAULT= KSH93 EXAMPLES OPTIONS_DEFINE= EXAMPLES STATIC OPTIONS_SINGLE= BIN_KSH OPTIONS_SINGLE_BIN_KSH= KSH KSH93 KSH93N KSH_DESC= Install to ${PREFIX}/bin/ksh KSH93_DESC= Install to ${PREFIX}/bin/ksh93 KSH93N_DESC= Install to ${PREFIX}/bin/ksh93n (new) CFLAGS+= -DMAP_TYPE LDFLAGS+= -lm -MAKE_ENV= CCFLAGS="-Wno-unused-value -Wno-parentheses -Wno-logical-op-parentheses -Wno-int-conversion" CFLAGS="${CFLAGS}" +MAKE_ENV= CCFLAGS="-Wno-unused-value -Wno-parentheses -Wno-logical-op-parentheses" CFLAGS="${CFLAGS}" STATIC_MAKE_ENV= LDFLAGS+=-static KSH_PLIST_SUB= 93="" KSH93_PLIST_SUB= 93="93" KSH93N_PLIST_SUB= 93="93n" .include .if ${PORT_OPTIONS:MKSH93N} PSUFFIX= 93n .elif ${PORT_OPTIONS:MKSH93} PSUFFIX= 93 .endif post-patch: @${REINPLACE_CMD} -e 's|SF_FLAGS|SFIO_FLAGS|g' ${WRKSRC}/src/lib/libast/include/sfio*.h ${WRKSRC}/src/lib/libast/sfio/*.c do-build: @cd ${WRKSRC}/ && ${SETENV} -i ${MAKE_ENV} ${SH} bin/package flat make do-install: ${INSTALL_PROGRAM} ${WRKSRC}/bin/ksh ${STAGEDIR}${PREFIX}/bin/ksh${PSUFFIX} ${INSTALL_MAN} ${WRKSRC}/man/man1/sh.1 ${STAGEDIR}${MAN1PREFIX}/man/man1/ksh${PSUFFIX}.1 ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}${PSUFFIX}/ cd ${WRKSRC}/fun/ && ${INSTALL_SCRIPT} dirs popd pushd ${STAGEDIR}${EXAMPLESDIR}${PSUFFIX}/ do-test: cd ${WRKSRC}/src/cmd/ksh93/tests/ && ${SETENV} SHELL=${WRKSRC}/bin/ksh ${WRKSRC}/bin/ksh shtests .include diff --git a/shells/ksh/files/patch-src_lib_libast_aso_aso.c b/shells/ksh/files/patch-src_lib_libast_aso_aso.c new file mode 100644 index 000000000000..891c022d470e --- /dev/null +++ b/shells/ksh/files/patch-src_lib_libast_aso_aso.c @@ -0,0 +1,11 @@ +--- src/lib/libast/aso/aso.c.orig 2022-10-21 20:05:14.000000000 -0700 ++++ src/lib/libast/aso/aso.c 2023-02-15 06:39:08.156515000 -0800 +@@ -836,7 +836,7 @@ + + #if defined(_aso_casptr) + if (!state.lockf) +- return _aso_casptr((void**)p, o, n); ++ return _aso_cas64((void**)p, o, n); + #endif + k = lock(state.data, 0, p); + if (*(void* volatile*)p == o)