view bootstrap.conf @ 18578:875f4510d6dc

Accept indexed images with color values below the first colormap entry (bug #41851). Change made for Matlab compatibility. * ind2gray.m: Change %!tests to accept an indexed image with colors below the first entry in the colormap. * ind2rgb.m: Change %!tests to accept an indexed image with colors below the first entry in the colormap. * ind2x.m: Change input validation to accept all floating point images with integer indices. Issue a warning if any of the indices are below the first entry in the colormap. Map all color indices below the first entry to the first color in the colormap.
author Rik <rik@octave.org>
date Mon, 17 Mar 2014 09:10:32 -0700
parents a4bc3ad4c703
children ff4da3c8ed16
line wrap: on
line source

# Bootstrap configuration.

# Copyright (C) 2009-2013 John W. Eaton
# Copyright (C) 2006-2007, 2009-2012 Free Software Foundation, Inc.

# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# (at your option) any later version.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.

# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.


# gnulib modules used by this package.
gnulib_modules="
  base64
  canonicalize
  chdir
  close
  closedir
  copysign
  copysignf
  crypto/md5
  dup2
  fclose
  fcntl
  fflush
  filemode
  float
  floor
  floorf
  fnmatch
  fopen
  fpucw
  frexp
  frexpf
  fseek
  ftell
  getcwd
  gethostname
  getopt-gnu
  gettimeofday
  glob
  isatty
  largefile
  link
  lstat
  malloc-gnu
  mbrtowc
  mkdir
  mkfifo
  mkostemp
  mktime
  nanosleep
  nproc
  open
  opendir
  pathmax
  putenv
  progname
  readdir
  readlink
  realloc-gnu
  rename
  rmdir
  round
  roundf
  select
  sigaction
  signal
  sigprocmask
  sleep
  stat
  stddef
  stdint
  stdio
  strerror
  strftime
  strptime
  symlink
  sys_stat
  sys_time
  sys_times
  time
  times
  tmpfile
  trunc
  truncf
  uname
  unistd
  unlink
  vasprintf
"

# Additional xgettext options to use.  Use "\\\newline" to break lines.
XGETTEXT_OPTIONS=$XGETTEXT_OPTIONS'\\\
 --from-code=UTF-8\\\
 --flag=asprintf:2:c-format --flag=vasprintf:2:c-format\\\
 --flag=asnprintf:3:c-format --flag=vasnprintf:3:c-format\\\
 --flag=wrapf:1:c-format\\\
'

# If "AM_GNU_GETTEXT(external" or "AM_GNU_GETTEXT([external]"
# appears in configure.ac, exclude some unnecessary files.
# Without grep's -E option (not portable enough, pre-configure),
# the following test is ugly.  Also, this depends on the existence
# of configure.ac, not the obsolescent-named configure.in.  But if
# you're using this infrastructure, you should care about such things.

gettext_external=0
grep '^[	 ]*AM_GNU_GETTEXT(external\>' configure.ac > /dev/null &&
  gettext_external=1
grep '^[	 ]*AM_GNU_GETTEXT(\[external\]' configure.ac > /dev/null &&
  gettext_external=1

if test $gettext_external = 1; then
  # Gettext supplies these files, but we don't need them since
  # we don't have an intl subdirectory.
  excluded_files='
      m4/glibc2.m4
      m4/intdiv0.m4
      m4/lcmessage.m4
      m4/lock.m4
      m4/printf-posix.m4
      m4/size_max.m4
      m4/uintmax_t.m4
      m4/ulonglong.m4
      m4/visibility.m4
      m4/xsize.m4
  '
fi

# Build prerequisites
buildreq="\
autoconf   2.59
automake   1.9.6
git        1.5.5
tar        -
"
checkout_only_file=etc/HACKING
gnulib_tool_option_extras="--libtool"
gnulib_name="libgnu"
source_base="libgnu"

# Don't use git to update gnulib sources. We keep gnulib under a
# Mercurial subrepository instead.
use_git=false
GNULIB_SRCDIR=gnulib-hg

# Don't check for translations since we don't have any in Octave yet.
# This avoids the need for sha1sum or compatible utility in bootstrap.
SKIP_PO=true

bootstrap_post_import_hook ()
{
  ## Check for files that automake --gnu would normally look for, except
  ## AUTHORS, which we autogenerate from the documentation files along
  ## with building the rest of Octave, and INSTALL, which is linked from
  ## gnulib/doc/INSTALL by the bootstrap script.

  for f in NEWS README COPYING CITATION; do
    if ! test -f $f; then
      echo "required file $f is missing" 2>&1
      exit 1
    fi
  done

  echo "generating source lists for liboctave/operators/module.mk..."

  (cd liboctave/operators; ./config-ops.sh)

  echo "generating doc/interpreter/images.mk..."

  (cd doc/interpreter; ./config-images.sh)

  echo "generating libinterp/dldfcn/module.mk..."

  (cd libinterp/dldfcn; ./config-module.sh)
}

bootstrap_epilogue ()
{
  ## G77 is obsolete, but it is still the first option in the autoconf
  ## Fortran macros.  We should avoid it, because mixing old versions of
  ## g77 with modern gcc and g++ causes trouble.  The following will
  ## make it harder (but not impossible) for users to make this mistake.
  ##
  ## FIXME -- we should really work to fix autoconf so that it prefers
  ## gfortran over g77 even when searching for a Fortran 77 compiler.

  echo "replacing all occurrences of g77 with gfortran in configure script..."

  sed 's/g77/gfortran/g' configure > configure.t
  mv configure.t configure
  chmod 755 configure
}