pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: pkg/32017



The following reply was made to PR pkg/32017; it has been noted by GNATS.

From: NAKAJI Hiroyuki <nakaji%jp.freebsd.org@localhost>
To: "Jeremy C. Reed" <reed%reedmedia.net@localhost>
Cc: wiz%netbsd.org@localhost, solaris-pkg-people%netbsd.org@localhost,
        gnats-bugs%netbsd.org@localhost
Subject: Re: pkg/32017
Date: Thu, 10 Nov 2005 12:30:37 +0900

 Thank you for comments.
 
 In addition, rc.subr script in pkgtools/rc.subr seems not compatible with
 /bin/sh (==/sbin/sh) of Solaris 10 and later, because it is using /bin/ksh
 (or recent /bin/sh) syntax in some part but Solaris 10 executes
 /etc/rcN.d/* script with /bin/sh via /lib/svc/bin/lsvcrun.
 
 I read a source of lsvcrun in OpenSolaris and found that "/bin/sh" is
 hard-coded in it.
 http://cvs.opensolaris.org/source/xref/on/usr/src/cmd/svc/lsvcrun/lsvcrun.c
 
 I made a patch to fix this. Please test it, too.
 
 Index: rc.subr
 ===================================================================
 RCS file: /cvsroot/pkgsrc/pkgtools/rc.subr/files/rc.subr,v
 retrieving revision 1.5
 diff -u -r1.5 rc.subr
 --- rc.subr    11 Oct 2004 19:32:14 -0000      1.5
 +++ rc.subr    10 Nov 2005 03:23:30 -0000
 @@ -63,7 +63,7 @@
  _RCARG_psformat="-o pid,command"
  _RCARG_ps="-ax"
  
 -_osname=$(uname -s)
 +_osname=`uname -s`
  case $_osname in
        SunOS)
                _RCCMD_chown="/bin/chown"
 @@ -94,7 +94,7 @@
                _RCCMD_chown="/bin/chown"
  #             _RCCMD_ci="/usr/bin/ci"                 # not in Slackware 8.1
  #             _RCCMD_co="/usr/bin/co"                 # not in Slackware 8.1
 -              _RCCMD_nice=$(which nice)
 +              _RCCMD_nice=`which nice`
  #             _RCCMD_rcs="/usr/bin/rcs"               # not in Slackware 8.1
  #             _RCCMD_systrace="/bin/systrace"         # not in Slackware 8.1
                _RCARG_ps="ax"
 @@ -137,7 +137,7 @@
  reverse_list()
  {
        _revlist=
 -      for _revfile; do
 +      for _revfile in $*; do
                _revlist="$_revfile $_revlist"
        done
        ${_RCCMD_echo} $_revlist
 @@ -474,9 +474,9 @@
                                        # setup pid check command if not fast
        if [ -z "$rc_fast" -a -n "$_procname" ]; then
                if [ -n "$pidfile" ]; then
 -                      _pidcmd='rc_pid=$(check_pidfile '"$pidfile $_procname 
$command_interpreter"')'
 +                      _pidcmd='rc_pid=`check_pidfile '"$pidfile $_procname 
$command_interpreter"'`'
                else
 -                      _pidcmd='rc_pid=$(check_process '"$_procname 
$command_interpreter"')'
 +                      _pidcmd='rc_pid=`check_process '"$_procname 
$command_interpreter"'`'
                fi
                if [ -n "$_pidcmd" ]; then
                        _keywords="${_keywords} status poll"
 @@ -498,7 +498,7 @@
            _systrace=\$${name}_systrace
  
        if [ -n "$_user" ]; then        # unset $_user if running as that user
 -              if [ "$_user" = "$($_RCCMD_whoami)" ]; then
 +              if [ "$_user" = "`$_RCCMD_whoami`" ]; then
                        unset _user
                fi
        fi
 @@ -830,7 +830,7 @@
        ${_RCCMD_echo} -n 1>&2 "Usage: $0 [fast|force]("
  
        _sep=
 -      for _elem; do
 +      for _elem in $*; do
                ${_RCCMD_echo} -n 1>&2 "$_sep$_elem"
                _sep="|"
        done
 
 -- 
 NAKAJI Hiroyuki
 



Home | Main Index | Thread Index | Old Index