1
0
Fork 0
mirror of git://git.code.sf.net/p/cdesktopenv/code synced 2025-02-15 04:32:24 +00:00

Use KORNSHELL variable instead of /bin/ksh

This patch removes instances of hardcoded
invocation of /bin/ksh and allows to
replace it with, for, example,
/usr/local/bin/ksh93

Also "ksh93" is accepted whenever "ksh" is.

Tested using the following /bin/ksh:

----8<----
WHAT=`ps -o command= -p $PPID`
msg="Something tried to call /bin/ksh: $PPID: $WHAT"
print -u2 "$msg"
logger user.warn "$msg"
exit 99
----8<----
(Warning: first two lines are FreeBSD specific)

Scripts from Makefiles should now be executed either
with

$(KORNSHELL) korn-shell-script

or

$(SHELL) bourne-shell-script

therefore #!/bin/ksh has not been changed everywhere.

/usr/dt/bin/ scripts have been converted (e.g. Xsession)

Whenever possible Imake and CPP facilities have been used.

For C and C++ programs KORNSHELL needs to be defined to
"/path/to/your/ksh" (with quotes) so that it can make
a valid C constant.

Therefore, when adding KORNSHELL to Imakefile for C files,
you have to add

CXXEXTRA_DEFINES = -DKORNSHELL=\"$(KORNSHELL)\"

or similar (for example, see programs/dtprintinfo)

But for simple shell script substitution we usually change

 LOCAL_CPP_DEFINES = -DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP) \
                     -DCDE_INSTALLATION_TOP=$(CDE_INSTALLATION_TOP) \
                     -DCDE_LOGFILES_TOP=$(CDE_LOGFILES_TOP)

to:

 LOCAL_CPP_DEFINES = -DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP) \
                     -DCDE_INSTALLATION_TOP=$(CDE_INSTALLATION_TOP) \
                     -DCDE_LOGFILES_TOP=$(CDE_LOGFILES_TOP) \
                     -DKORNSHELL=$(KORNSHELL) \
                     -DXPROJECTROOT=X11ProjectRoot

since we don't want quotes for shell scripts.
This commit is contained in:
Marcin Cieslak 2012-08-23 17:49:26 +02:00 committed by Jon Trulson
parent 98b17d3551
commit 17a33f0430
32 changed files with 63 additions and 40 deletions

View file

@ -3,6 +3,7 @@ XCOMM $XConsortium: Imakefile /main/5 1996/04/23 21:26:14 drk $
LOCAL_CPP_DEFINES = -DCDE_INSTALLATION_TOP=$(CDE_INSTALLATION_TOP) \
-DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP) \
-DCDE_LOGFILES_TOP=$(CDE_LOGFILES_TOP) \
-DKORNSHELL=$(KORNSHELL) \
-Usun -Uusl -Uuxp -Uaix -Udec -UAIX -Uibm -Uhp
AllTarget(installCDE dinstallCDE)

View file

@ -1,4 +1,4 @@
XCOMM! /bin/ksh
XCOMM! KORNSHELL
XCOMM $XConsortium: dinstallCDE.src /main/8 1996/11/25 14:20:36 drk $
XCOMM
@ -71,12 +71,12 @@ DoLangScript()
if [ -x $POST_INSTALL_DIR/$PLATFORM_SCRIPT_DIR/$ScriptName ]
then
Log "Executing $PLATFORM specific $FilesetName de-customize script"
$POST_INSTALL_DIR/$PLATFORM_SCRIPT_DIR/$ScriptName -d $3 2>&1 | \
KORNSHELL $POST_INSTALL_DIR/$PLATFORM_SCRIPT_DIR/$ScriptName -d $3 2>&1 | \
tee -a /tmp/$ScriptName.dverify
elif [ -x $POST_INSTALL_DIR/$ScriptName ]
then
Log "Executing $FilesetName de-customize script"
$POST_INSTALL_DIR/$ScriptName -d $3 2>&1 | tee -a /tmp/$ScriptName.dverify
KORNSHELL $POST_INSTALL_DIR/$ScriptName -d $3 2>&1 | tee -a /tmp/$ScriptName.dverify
fi
}

View file

@ -1,4 +1,4 @@
XCOMM! /bin/ksh
XCOMM! KORNSHELL
XCOMM $XConsortium: installCDE.src /main/20 1996/11/25 14:21:13 drk $
XCOMM
@ -154,12 +154,12 @@ DoFilesetScript()
if [ -x $POST_INSTALL_DIR/$PLATFORM_SCRIPT_DIR/$ScriptName ]
then
Log "Executing $PLATFORM specific $FilesetName customize script"
$POST_INSTALL_DIR/$PLATFORM_SCRIPT_DIR/$ScriptName -e 2>&1 | \
KORNSHELL $POST_INSTALL_DIR/$PLATFORM_SCRIPT_DIR/$ScriptName -e 2>&1 | \
tee -a $LOGFILE
elif [ -x $POST_INSTALL_DIR/$ScriptName ]
then
Log "Executing $FilesetName customize script"
$POST_INSTALL_DIR/$ScriptName -e 2>&1 | tee -a $LOGFILE
KORNSHELL $POST_INSTALL_DIR/$ScriptName -e 2>&1 | tee -a $LOGFILE
fi
fi
}
@ -182,7 +182,7 @@ CreatePackingList()
for i in `echo $DATABASE_FILES`
do
Log " for $i"
$TOOL_DIR/udbToAny.ksh -toDB -ReleaseStream $PLATFORM $DATABASE_DIR/${i}.udb > /tmp/${i}.db
KORNSHELL $TOOL_DIR/udbToAny.ksh -toDB -ReleaseStream $PLATFORM $DATABASE_DIR/${i}.udb > /tmp/${i}.db
if [ -r /tmp/${i}.db ]
then
for file in `fgrep install_target /tmp/${i}.db | cut -sf 2 -d \: `
@ -490,10 +490,10 @@ XCOMM don't bother if the fileset doesn't exist
Log " $num installing database $2"
Log " - creating ${2}.lst file"
$TOOL_DIR/udbToAny.ksh -toLst -ReleaseStream $PLATFORM \
KORNSHELL $TOOL_DIR/udbToAny.ksh -toLst -ReleaseStream $PLATFORM \
$DATABASE_DIR/${2}.udb > /tmp/${2}.lst
Log " - installing ... \c"
$TOOL_DIR/mkProd -D / -S $BUILD_TREE /tmp/${2}.lst \
KORNSHELL $TOOL_DIR/mkProd -D / -S $BUILD_TREE /tmp/${2}.lst \
2>/tmp/${2}.err 1>/tmp/${2}.good
Log "done."

View file

@ -1,4 +1,4 @@
#! /bin/ksh
#! /bin/sh
#
# Script to move all link refereces in a ".lst" file

View file

@ -1,4 +1,4 @@
#! /bin/ksh
#! /bin/sh
#
# Script to remove comments and blank lines from ".lst" files

View file

@ -1,7 +1,8 @@
XCOMM $XConsortium: Imakefile /main/4 1996/04/21 19:27:34 drk $
LOCAL_CPP_DEFINES = -DCDE_INSTALLATION_TOP=$(CDE_INSTALLATION_TOP) \
-DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP)
-DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP) \
-DKORNSHELL=$(KORNSHELL)
CppScriptTarget(dtappintegrate,dtappintegrate.src,$(LOCAL_CPP_DEFINES),)

View file

@ -1,4 +1,4 @@
XCOMM!/bin/ksh
XCOMM!KORNSHELL
XCOMM $XConsortium: dtappintegrate.src /main/4 1996/04/21 19:27:37 drk $
#define COMMENT_STAR *
XCOMM ###################################################################

View file

@ -2887,7 +2887,7 @@ findpopen(cmd,mode,childpid)
(void) fcntl(childside, F_DUPFD, read_or_write);
(void) close(childside); /* Save a file descriptor */
}
(void) execl("/bin/ksh", "ksh", "-c", cmd, (char *)0);
(void) execl(KORNSHELL, "ksh", "-c", cmd, (char *)0);
/* Need to process the error return */
DBGFORK(("%s: child exiting\n", pname));

View file

@ -11,7 +11,8 @@ DependSubdirs($(SUBDIRS))
DEFINES = -DMULTIBYTE -DXK_MISCELLANY -DSHAPE -D_ILS_MACROS -DSUN_PERF \
-DCDE_INSTALLATION_TOP=\"$(CDE_INSTALLATION_TOP)\" \
-DCDE_CONFIGURATION_TOP=\"$(CDE_CONFIGURATION_TOP)\"
-DCDE_CONFIGURATION_TOP=\"$(CDE_CONFIGURATION_TOP)\" \
-DKORNSHELL=\"$(KORNSHELL)\"
INCLUDES = -I./dtcopy

View file

@ -1,4 +1,4 @@
XCOMM!/bin/ksh
XCOMM!KORNSHELL
XCOMM ####################################################################
XCOMM ## File: 0015.sun.env.src
XCOMM ##

View file

@ -1,4 +1,4 @@
XCOMM!/bin/ksh
XCOMM!KORNSHELL
XCOMM ####################################################################
XCOMM ## File: 0050.dtxmodmap
XCOMM ##

View file

@ -1,4 +1,4 @@
XCOMM !/usr/bin/ksh
XCOMM !KORNSHELL
XCOMM ####################################################################
XCOMM ## File: 0060.srcsysenv
XCOMM ##

View file

@ -19,6 +19,7 @@ Xservers:
LOCAL_CPP_DEFINES = -DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP) \
-DCDE_INSTALLATION_TOP=$(CDE_INSTALLATION_TOP) \
-DCDE_LOGFILES_TOP=$(CDE_LOGFILES_TOP) \
-DKORNSHELL=$(KORNSHELL) \
-DXPROJECTROOT=X11ProjectRoot

View file

@ -1,4 +1,4 @@
XCOMM! /bin/ksh
XCOMM! KORNSHELL
XCOMM ##########################################################################
XCOMM
XCOMM Xreset

View file

@ -1,4 +1,4 @@
XCOMM!/bin/ksh
XCOMM!KORNSHELL
XCOMM $XConsortium: Xsession.ow.src /main/3 1996/11/19 11:41:19 drk $
XCOMM ####################################################################
XCOMM ## File: Xsession.ow

View file

@ -1,4 +1,4 @@
XCOMM!/bin/ksh
XCOMM!KORNSHELL
XCOMM $XConsortium: Xsession.ow2.src /main/3 1996/11/19 11:41:57 drk $
XCOMM ####################################################################
XCOMM ## File: Xsession.ow2

View file

@ -1,4 +1,4 @@
XCOMM! /bin/ksh
XCOMM! KORNSHELL
XCOMM ##########################################################################
XCOMM
XCOMM Xsession
@ -422,7 +422,7 @@ XCOMM ##########################################################################
HASH source the .dtprofile.
HASH
if [ -f $HOME/$DTPROFILE ]; then
dtprofile_errors=`/bin/ksh -n $HOME/$DTPROFILE 2>&1`
dtprofile_errors=`KORNSHELL -n $HOME/$DTPROFILE 2>&1`
if [ "0" = "$?" ]; then
Log "sourcing $HOME/$DTPROFILE..."
. $HOME/$DTPROFILE
@ -512,7 +512,7 @@ StartFirst()
if [ "$DTSOURCEPROFILE" = "true" ]
then
case ${SHELL##*/} in
sh | ksh | dtksh) shellprofile="$HOME/.profile";;
sh | ksh | ksh93 | dtksh) shellprofile="$HOME/.profile";;
bash) shellprofile="$HOME/.bash_profile";;
csh | tcsh) shellprofile="$HOME/.login";;
*) Log "non-standard shell $SHELL"
@ -553,7 +553,7 @@ StartFirst()
case ${SHELL##*/} in
sh | bash | ksh | dtksh)
sh | bash | ksh | ksh93 | dtksh)
dotprofile_errors=`$SHELL -n $shellprofile 2>&1`
if [ "0" = "$?" ]; then
source_profile=". $shellprofile"
@ -589,7 +589,7 @@ StartFirst()
PATH=/usr/dt/bin:\$PATH $tooltalk; \
$startup > $dtstart_sessionlogfile 2>&1" ;;
ksh | dtksh) $SHELL -c "$source_profile; \
ksh | ksh93 | dtksh) $SHELL -c "$source_profile; \
unset DT; \
$dtdbcache; \
PATH=/usr/dt/bin:\$PATH $tooltalk;\

View file

@ -1,4 +1,4 @@
XCOMM!/bin/ksh
XCOMM!KORNSHELL
XCOMM $XConsortium: Xsetup.src /main/8 1996/07/02 11:40:32 mgreess $
XCOMM ##########################################################################
XCOMM

View file

@ -1,4 +1,4 @@
XCOMM! /bin/ksh
XCOMM! KORNSHELL
XCOMM ##########################################################################
XCOMM
XCOMM Xstartup

View file

@ -1,4 +1,4 @@
XCOMM!/bin/ksh
XCOMM!KORNSHELL
XCOMM $XConsortium: dtlslocale.src /main/6 1996/11/19 11:42:40 drk $
XCOMM
XCOMM Common Desktop Environment

View file

@ -1,7 +1,8 @@
XCOMM $XConsortium: Imakefile /main/6 1996/04/21 19:50:24 drk $
CPP_DEFINES = -DCDE_INSTALLATION_TOP=$(CDE_INSTALLATION_TOP) \
-DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP)
-DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP) \
-DKORNSHELL=$(KORNSHELL)
#if defined (SunArchitecture)
LOCAL_CPP_DEFINES = $(CPP_DEFINES) -D__sun

View file

@ -1,4 +1,4 @@
XCOMM!/bin/ksh
XCOMM!KORNSHELL
XCOMM $XConsortium: dtprintegrate.src /main/5 1996/04/23 12:02:04 drk $
XCOMM ####################################################################
XCOMM ## File: dtprintegrate

View file

@ -16,6 +16,8 @@ INCLUDES = -I. -I..
EXTRA_DEFINES = -DHAS_EXCEPTIONS
#endif
CXXEXTRA_DEFINES = -DKORNSHELL=\"$(KORNSHELL)\"
SRCS = Application.C Button.C ComboBoxObj.C \
Container.C Debug.c Dialog.C \
DtDND.C Group.C HelpSystem.C \

View file

@ -93,7 +93,7 @@ void MotifThread::CreateThread(MotifUI *_obj, const char *cmd, int _pid,
dup(m_stdout[1]);
close(m_stdout[1]);
execlp("/bin/ksh", "ksh", "-c", cmd, NULL);
execlp(KORNSHELL, "ksh", "-c", cmd, NULL);
char *msg = strerror(errno);
write(1, msg, strlen(msg));

View file

@ -12,6 +12,8 @@ DEPEND_DEFINES = $(CXXDEPENDINCLUDES)
INCLUDES = -I.
CXXEXTRA_DEFINES = -DKORNSHELL=\"$(KORNSHELL)\"
#ifdef RsArchitecture
EXTRA_DEFINES = -DHAS_EXCEPTIONS
#endif

View file

@ -149,7 +149,7 @@ Invoke::Invoke(const char *command, // Command to Run
}
// start the program
execlp("/bin/ksh", "ksh", "-c", command, (char *) 0);
execlp(KORNSHELL, "ksh", "-c", command, (char *) 0);
exit(-1);
}

View file

@ -174,6 +174,7 @@ DTSM_CMD5 = $(CDE_INSTALLATION_TOP)/bin/dtaction Dthelpgen_delay
LOCAL_CPP_DEFINES = -DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP) \
-DCDE_INSTALLATION_TOP=$(CDE_INSTALLATION_TOP) \
-DXBINDIR=$(XPROJECTROOT)/bin \
-DKORNSHELL=$(KORNSHELL) \
-DDTSM_CMD1="\"$(DTSM_CMD1)\"" \
-DDTSM_CMD2="\"$(DTSM_CMD2)\"" \
-DDTSM_CMD4="\"$(DTSM_CMD4)\"" \

View file

@ -1,4 +1,4 @@
XCOMM!/bin/ksh
XCOMM!KORNSHELL
XCOMM $XConsortium: dtloadresources.src /main/6 1996/04/23 18:51:41 drk $
XCOMM (c) Copyright 1996 Digital Equipment Corporation.

View file

@ -1,7 +1,8 @@
XCOMM $XConsortium: Imakefile /main/6 1996/04/21 19:52:31 drk $
CPP_DEFINES = -DCDE_INSTALLATION_TOP=$(CDE_INSTALLATION_TOP) \
-DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP)
-DCDE_CONFIGURATION_TOP=$(CDE_CONFIGURATION_TOP) \
-DKORNSHELL=$(KORNSHELL)
#if defined (SunArchitecture)
LOCAL_CPP_DEFINES = $(CPP_DEFINES) -D__sun

View file

@ -46,7 +46,7 @@ ACTION DtTypes
ARG_COUNT 0
TYPE COMMAND
WINDOW_TYPE NO_STDIO
EXEC_STRING CDE_INSTALLATION_TOP/bin/dtterm -e ksh -c '/usr/dt/bin/dttypes;'
EXEC_STRING CDE_INSTALLATION_TOP/bin/dtterm -e KORNSHELL -c '/usr/dt/bin/dttypes;'
DESCRIPTION %|nls-9002-#The#|
}
ACTION DtTypes

View file

@ -278,6 +278,18 @@ DATA_CRITERIA KSHELL3
CONTENT 0 string #! /bin/ksh
MODE f&x
}
DATA_CRITERIA KSHELL4
{
DATA_ATTRIBUTES_NAME KSHELL
CONTENT 0 string #!KORNSHELL
MODE f&x
}
DATA_CRITERIA KSHELL5
{
DATA_ATTRIBUTES_NAME KSHELL
CONTENT 0 string #! KORNSHELL
MODE f&x
}
ACTION Run
{
LABEL %|nls-3-#Run#|

View file

@ -173,8 +173,8 @@ ACTION DttermRlogin
ARG_COUNT 0
TYPE COMMAND
WINDOW_TYPE NO_STDIO
EXEC_STRING ksh -c 'export _title="%"%|nls-12017-#Hostname:#|"%"; \
/usr/dt/bin/dtterm -title "%|nls-12022-#\$_title#|" -e ksh -c \
EXEC_STRING KORNSHELL -c 'export _title="%"%|nls-12017-#Hostname:#|"%"; \
/usr/dt/bin/dtterm -title "%|nls-12022-#\$_title#|" -e KORNSHELL -c \
"echo %|nls-12023-#Trying to#|; \
rlogin \$_title; sleep 5;";'
DESCRIPTION %|nls-12024-#The#|
@ -189,8 +189,8 @@ ACTION XtermRlogin
ARG_COUNT 0
TYPE COMMAND
WINDOW_TYPE NO_STDIO
EXEC_STRING ksh -c 'export _title="%"%|nls-12017-#Hostname:#|"%"; \
xterm -title "%|nls-12026-#\$_title#|" -e ksh -c \
EXEC_STRING KORNSHELL -c 'export _title="%"%|nls-12017-#Hostname:#|"%"; \
xterm -title "%|nls-12026-#\$_title#|" -e KORNSHELL -c \
"echo %|nls-12023-#Trying to#|; \
rlogin \$_title; sleep 5;";'
DESCRIPTION %|nls-12027-#The#|