pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
PR/37737 CVS commit: pkgsrc/shells/osh
The following reply was made to PR pkg/37737; it has been noted by GNATS.
From: OBATA Akio <obache%netbsd.org@localhost>
To: gnats-bugs%gnats.NetBSD.org@localhost
Cc:
Subject: PR/37737 CVS commit: pkgsrc/shells/osh
Date: Sat, 19 Jan 2008 12:08:30 +0000 (UTC)
Module Name: pkgsrc
Committed By: obache
Date: Sat Jan 19 12:08:30 UTC 2008
Modified Files:
pkgsrc/shells/osh: Makefile distinfo
Removed Files:
pkgsrc/shells/osh/patches: patch-aa
Log Message:
Update osh to 20080109.
Based on patch provided by Jeffrey Allen Neitzel in PR 37737.
My modification:
* Honor PKGMANDIR
* Update MASTER_SITES and HOMEPAGE to new location.
Changes:
[osh-20080109]:
* New file: mkconfig (see Build/Install Changes)
* Moved files: Moved manual pages from *.1 to *.1.in to make their
generation and installation simpler in the Makefile.
Build/Install Changes:
* Stopped defining _XOPEN_SOURCE when compiling on Mac OS X, NetBSD,
and OpenBSD. It is simply not necessary. However, _XOPEN_SOURCE
and _BSD_SOURCE are necessary on GNU/Linux systems.
* Added a simple configure script, mkconfig. It is automatically
invoked from the Makefile to write out an appropriate "config.h"
file according to the osh package's needs on the given system. It
simply sets PATH_LOGIN, PATH_NEWGRP, _XOPEN_SOURCE, and _BSD_SOURCE
as needed so that the user does not need to bother w/ doing it
manually at build time.
osh.c:
* Patched the code to fix a "$0" parameter-substitution problem w/
the `source' command in the following interactive context:
% cat >file
echo \$0 == \"$0\"
echo \$1 == \"$1\"
^D
% source file ; : ... gives correct value for "$0".
$0 == ""
$1 == ""
% source file arg ; : ... gives incorrect value for "$0".
$0 == "0"
$1 == "arg"
getdolp() indirectly caused the problem by returning a NULL pointer
when the intended result was a pointer to the empty string. This
problem was not fatal, as the shell handles NULL pointers from
getdolp() anyway. However, NULL is supposed to indicate an
error where the specified parameter means nothing to the shell...
For example:
% echo \$Z == \"$Z\"
$Z == "Z"
* Changed the source command's parameter-substitution behavior so
that $0 always results in the name of the sourced command file,
not the name inherited from the main shell context. This makes
the parameter-substitution behavior of sourced command files
just like that of any other osh command file. Plus, this is
the documented behavior.
osh.1.in, sh6.1.in:
* Revised some wording to remove some cases of possible ambiguity.
-------------------------------------------------------------------------------
[osh-20070707]:
* Added a new file, INSTALL, which contains build and install
instructions. Made reference to INSTALL in Makefile and README.
Makefile:
* Added 3 new variables, MOXARCH, MOXSHELLARCH, and MOXUTILSARCH, to
simplify building universal binaries for Mac OS X. These are unset
by default. See INSTALL for more info.
* Changed the default value for SYSCONFDIR from /etc to $(PREFIX)/etc.
osh.c:
* Changed the reserved file descriptors from (7 - 9) to (10 - 12) in
order to avoid fd conflict w/ rxvt-unicode (version 8.2). This
conflict prevented `chdir -' from functioning correctly, but this
problem is now fixed.
The problem was clearly visible when running an interactive instance
of osh under the rxvt-unicode daemon (urxvtd) on Mac OS X. However,
I never saw this type of conflict when running under any other type
of terminal emulator on any OS. Thus, I do not know if this was
only an osh problem, a urxvtd problem, a Mac OS X problem, or some
combination of the 3...
To generate a diff of this commit:
cvs rdiff -r1.19 -r1.20 pkgsrc/shells/osh/Makefile
cvs rdiff -r1.9 -r1.10 pkgsrc/shells/osh/distinfo
cvs rdiff -r1.4 -r0 pkgsrc/shells/osh/patches/patch-aa
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Home |
Main Index |
Thread Index |
Old Index