This is the mail archive of the cygwin-apps mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: cygport: KEEPDIRS not working, doenv and tcsh


On 2012-04-28 04:44, Corinna Vinschen wrote:
- Another problem I found is the way the `doenv' command works.
   I like the idea, but it's not working well for tcsh scripts.

Assuming I want to extend the MANPATH variable, as for OpenSSL:

doenv MANPATH '${MANPATH}:/usr/ssl/man'

The result for tcsh looks like this:

setenv MANPATH "${MANPATH}:/usr/ssl/man"

   The problem is this.  If the MANPATH variable is not set at the time,
   tcsh will choke on it:

     $ setenv MANPATH "${MANPATH}:/usr/ssl/man"
     MANPATH: Undefined variable.

   A more generic solution, which takes potential self-referencing into
   account should first set the variable to an empty string if it doesn't
   exist:

     if ( $?MANPATH ) setenv MANPATH ""
     setenv MANPATH "${MANPATH}:/usr/ssl/man"

Does the attached patch for cygport help?



Yaakov

Attachment: 0001-doenv-fix-variable-self-reference-in-csh.patch
Description: application/itunes-itlp


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]