view libinterp/find-defun-files.sh @ 19454:82f2a3437e02

Fix tempname so it prioritizes user input dir rather than TMPDIR (bug #43844). * file-ops.cc (octave_tempnam): Use C++ std::string functions to check if function's dir argument has been overwritten by TMPDIR environment variable. If it has, replace the TMPDIR string with the the function's dir argument. * file-io.cc (Ftempname): Add BIST tests for correct behavior.
author Rik <rik@octave.org>
date Sun, 21 Dec 2014 21:00:51 -0800
parents 39096b290a2f
children
line wrap: on
line source

#! /bin/sh

set -e
SED=${SED:-sed}
EGREP=${EGREP:-egrep}

# Some stupid egreps don't like empty elements in alternation patterns,
# so we have to repeat ourselves because some stupid egreps don't like
# empty elements in alternation patterns.

DEFUN_PATTERN="^[ \t]*DEF(CONSTFUN|CMD|UN|UN_DLD|UNX_DLD|UN_TEXT)[ \t]*\\("

srcdir="$1"
shift

for arg
do
  if [ -f "$arg" ]; then
    file="$arg"
  else
    file="$srcdir/$arg"
  fi
  if [ "`$EGREP -l "$DEFUN_PATTERN" $file`" ]; then
    echo "$file" | $SED "s,\\$srcdir/,," | $SED 's/\.cc$/.df/; s/\.ll$/.df/; s/\.in.yy$/.df/';
  fi
done