pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: pkg/59478: comms/asterisk: install step expects bash
The code that requires bash is in Makefile.moddir_rules, so we want the make program to invoke bash for its rules. The makefile is clearly for GNU make. According to the info manual for GNU make, the shell can be set with the SHELL variable. I didn't see any SHELL assignment in the makefiles, so I'm not sure how it is expected that this will be set. However, I compared the package makefiles between asterisk22 and a different version of asterisk that packaged without an error, and I noticed that a setting of CONFIG_SHELL was deleted in asterisk22 and USE_TOOLS used to have bash instead of bash:run. I added in the CONFIG_SHELL line and changed the USE_TOOLS setting to bash because the install step of the upstream software is a build step of pkgsrc. This allowed asterisk22 to package without an error.
I am not completely clear on how this fixes the problem, but I suspect that CONFIG_SHELL causes GNU configure to pass the setting of CONFIG_SHELL through to the makefile's SHELL variable somehow.
Here's the patch:
Index: Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/comms/asterisk22/Makefile,v
retrieving revision 1.11
diff -u -r1.11 Makefile
--- Makefile 5 May 2025 12:40:30 -0000 1.11
+++ Makefile 24 Jun 2025 00:43:10 -0000
@@ -30,7 +30,7 @@
.include "../../mk/bsd.prefs.mk"
-USE_TOOLS+= bison gmake gsed perl:run pkg-config tar bash:run
+USE_TOOLS+= bash bison gmake gsed perl:run pkg-config tar
USE_LANGUAGES= c c++
REPLACE_BASH+= contrib/scripts/astversion
REPLACE_BASH+= contrib/scripts/ast_coredumper
@@ -44,6 +44,7 @@
CHECK_INTERPRETER_SKIP+= libdata/asterisk/scripts/refcounter.py
GNU_CONFIGURE= yes
+CONFIG_SHELL= ${TOOLS_PATH.bash}
CONFIGURE_ARGS+= --datarootdir=${PREFIX}/libdata
CONFIGURE_ARGS+= --sysconfdir=${PKG_SYSCONFDIR}
CONFIGURE_ARGS+= --without-gtk2
Home |
Main Index |
Thread Index |
Old Index