[svn-r1112] Changes since 19990301

----------------------

./INSTALL
	Reorganized and added some additional examples.

./MANIFEST
./aclocal.m4			[NEW]
./configure.in
./configure			[REGENERATED]
./src/H5config.h.in		[REGENERATED]
./bin/ltconfig			[NEW]
./bin/ltmain.sh			[NEW]
	Added tests to determine how to compile shared libraries and
	how to link programs with them before the libraries are
	installed.  Also how to install and uninstall shared
	libraries. The configure step also prints the names of the
	config files it's trying to load for easier debugging.

./bin/config.guess
./bin/config.sub
	Replaced with a newer version from GNU.  The changes we made
	to that file to report `irix6.x' and `FreeBSD' without version
	numbers have been incorporated into configure.in instead.  In
	the future, do not change these two files (see the top of
	configure.in instead). By the way, this update was required to
	get shared libraries working.

./config/linux			[REMOVED]
./config/linux-gnulibc1		[NEW]
./config/linux-gnu		[NEW]
./config/alpha-dec		[REMOVED]
./config/alpha-dec-osf4.0	[REMOVED]
./config/dec-osf4.x		[NEW]
./config/irix5.3		[REMOVED]
./config/irix5.x		[NEW]
./config/irix64			[REMOVED]
./config/freebsd
	Moved config files around to agree with output from the new
	config.guess.  The linux file was split into gnu (RedHat),
	gnulibc1, and gnulibc2 versions. The alpha-dec file was
	removed (I think it was unused) and the alpha-dec-osf4.0 was
	changed to dec-osf4.x. The irix5.3 file renamed to irix5.x and
	the irix64 file was renamed to irix6.x. The freebsd file was
	changed to point to linux-gnulibc1. These changes were tested
	on:

		Linux 2.0
		Linux 2.1
		FreeBSD 3.2
		Irix 5.3
		Irix64 6.2
		Irix64 6.4
		HP/UX 10.20
		OSF1 4.0

./config/alphaev56-dec-osf4.x
./config/irix64
	Added warnings similar to linux/freebsd about using compilers
	with known bugs.

./config/commence.in
./config/conclude.in
./src/Makefile.in
./test/Makefile.in
./testpar/Makefile.in
./tools/Makefile.in
	Added definitions for shared libraries. This has been tested
	on the following systems:

		Linux 2.0
		Linux 2.1
		FreeBSD 3.2
		Irix 5.3
		Irix64 6.2
		Irix64 6.4
		HP/UX 10.20		static only
		OSF1 4.0

	If you want to disable use of shared libraries (you probably
	do for development purposes since it takes a lot longer to
	compile and because you have to run dynamically linked
	programs in a special way if the library hasn't been
	installed) then add `--disable-shared' to the configure
	command line.  This is all documented in the INSTALL file.

./bin/release
	Temprarily commented out the MANIFEST checking when running
	under svf since svf is about to be replaced by a newer
	version.  This change only affects error checking during the
	release process.

./Makefile.dist
./Makefile.in
	Added `make check' which does the same thing as `make _test'
	since the former is endorsed by the GNU coding style and
	people are used to it.  The old `make _test' still works too
	(and so does `make test' if you use GNU make).
This commit is contained in:
Robb Matzke 1999-03-02 12:15:35 -05:00
parent 1f1bfc91bc
commit 116491f0d6
29 changed files with 5902 additions and 805 deletions

404
INSTALL
View File

@ -1,33 +1,33 @@
-*- outline -*-
This file contains instructions for the installation of HDF5 on
Unix-like systems. First, one must obtain a tarball of the HDF5
release from the ftp://hdf.ncsa.uiuc.edu/pub/dist/HDF5 repository.
The files are available in uncompressed tar, gzip, bzip2, and compress
formats.
Unix-like systems. Users of the Intel TFLOPS machine should see the
INSTALL.ascired for instructions.
For those that like to live dangerously and don't like to read ;-) you
can do the following:
* Obtaining HDF5
The latest supported public release of HDF5 is available from
ftp://hdf.ncsa.uiuc.edu/pub/dist/HDF5 and is available in tar
format uncompressed or compressed with compress, gzip, or
bzip2.
$ tar xf hdf5-1.0.0a.tar
$ cd hdf5-1.0.0a
$ sh configure
$ make # Builds library and tools
$ make test # Builds and runs confidence tests.
# NOTE: if fails, run the
# command in the test directory
The HDF team also makes snapshots of the source code available
on a regular basis but these. These snapshots are unsupported
(that is, the HDF team will not release a bug-fix on a
particular snapshot; rather any bug fixes will be rolled into
the next snapshot). Furthermore, the snapshots have only been
tested on a few machines and may not test correctly for
parallel applications. Snapshots can be found at
ftp://hdf.ncsa.uiuc.edu/pub/outgoing/hdf5/snapshots in a
limited number for formats.
$ make install # Optional
* Warnings about compilers
OUTPUT FROM THE FOLLOWING COMPILERS SHOULD BE EXTREMELY
SUSPECT WHEN USED TO COMPILE THE HDF5 LIBRARY, ESPECIALLY IF
OPTIMIZATIONS ARE ENABLED. IN ALL CASES, HDF5 ATTEMPTS TO WORK
AROUND THE COMPILER BUGS BUT THE HDF5 DEVELOPMENT TEAM MAKES
NO GUARANTEES THAT THERE ARE OTHER CODE GENERATION PROBLEMS.
Note: For the users of the Intel TFLOPS machine, a special sequence of
steps for the install may be found in the file: INSTALL.ascired.
OUTPUT FROM THE FOLLOWING COMPILERS SHOULD BE EXTREMELY SUSPECT WHEN
USED TO COMPILE THE HDF5 LIBRARY, ESPECIALLY IF OPTIMIZATIONS ARE
ENABLED. IN ALL CASES, HDF5 ATTEMPTS TO WORK AROUND THE COMPILER BUGS
BUT THE HDF5 DEVELOPMENT TEAM MAKES NO GUARANTEES THAT THERE ARE OTHER
CODE GENERATION PROBLEMS.
* GNU (Intel platforms)
** GNU (Intel platforms)
Versions before 2.8.1 have serious problems allocating
registers when functions contain operations on `long long'
data types. Supplying the `--disable-hsizet' switch to
@ -35,194 +35,281 @@ CODE GENERATION PROBLEMS.
`long long' data types in situations that are known not to
work, but it limits the hdf5 address space to 2GB.
* DEC
** DEC
The V5.2-038 compiler (and possibly others) occasionally
generates incorrect code for memcpy() calls when optimizations
are enabled, resulting in unaligned access faults. HDF5 works
around the problem by casting the second argument to `char*'.
* SGI (Irix64 6.2)
** SGI (Irix64 6.2)
The Mongoose 7.00 compiler has serious optimization bugs and
should be upgraded to MIPSpro 7.2.1.2m. Patches are available
from SGI.
* Windows/NT
** Windows/NT
The MicroSoft Win32 5.0 compiler is unable to cast unsigned
long long values to doubles. HDF5 works around this bug by
first casting to signed long long and then to double.
=======
Step 0: Install optional third-party packages.
* Quick installation
For those that don't like to read ;-) the following steps can
be used to configure, build, test, and install the HDF5
library, header files, and support programs.
* Zlib compression library, version 1.1.2 or later is used for
the `deflate' compression method if available; otherwise no
compression filters will be predefined. The source code can be
found at http://www.cdrom.com/pub/infozip/zlib
Step 1. Unpack the source tree.
$ gunzip <hdf5-1.0.0.tar.gz |tar xf -
$ cd hdf5-1.0.0
$ make check
$ make install
* The tarball will unpack into an hdf5-1.1.0 directory with one of
the following commands:
* HDF5 dependencies
** Zlib
The HDF5 library has a predefined compression filter that uses
the "deflate" method for chunked datatsets. If zlib-1.1.2 or
later is found then hdf5 will use it, otherwise HDF5's
predefined compression method will degenerate to a no-op (the
compression filter will succeed but the data will not be
compressed).
$ tar xf hdf5-1.1.0.tar OR
$ gunzip <hdf5-1.1.0.tar.gz |tar xf - OR
$ bunzip2 <hdf5-1.1.0.tar.bz2 |tar xf - OR
$ uncompress -c <hdf5-1.1.0.tar.Z |tar xf -
** MPI and MPI-IO
The parallel version of the library is built upon the
foundation provided by MPI and MPI-IO. If these libraries are
not available when HDF5 is configured then only a serial
version of HDF5 can be built.
Step 2. Configure.
* Full installation instructions for source distributions
** Unpacking the distribution
The HDF5 source code is distributed in a variety of formats
which can be unpacked with the following commands, each of
which creates an `hdf5-1.0.0' directory.
* HDF5 uses the GNU autoconf program for configuration. Most
installations can be configured by typing just (from the
hdf5-1.1.0 directory)
*** Non-compressed tar archive (*.tar)
$ tar xf hdf5-1.0.0.tar
$ sh configure
*** Compressed tar archive (*.tar.Z)
$ uncompress -c <hdf5-1.0.0.tar.Z |tar xf -
* The configuration process can be controlled through environment
variables, command-line switches, and host configuration files.
For a complete list of switches say `sh configure --help'.
*** Gzip'd tar archive (*.tar.gz)
$ gunzip <hdf5-1.0.0.tar.gz |tar xf -
* Host configuration files are located in the `config' directory
and are based on architecture name, vendor name, and/or operating
system which are displayed near the beginning of the `configure'
output. Not all hosts require a host configuration file.
*** Bzip'd tar archive (*.tar.bz2)
$ bunzip2 <hdf5-1.0.0.tar.gz |tar xf -
* The C compiler and flags, the `ar' and `ranlib' program names,
and the `make' program can be specified with environment
variables if configure doesn't properly detect them and they are
not defined in a host config file.
** Configuring
HDF5 uses the GNU autoconf system for configuration, which
detects various features of the host system and creates the
various Makefiles. On most systems it should be sufficient to
say:
CC Name of the C compiler.
CFLAGS Switches for the C compiler.
CPPFLAGS Additional switches for the .c -> .o step.
AR Name of the `ar' program.
RANLIB Name of the `ranlib' program or `:' if none.
MAKE Name of the `make' program (GNU make is preferred)
$ sh configure
* The default compiler is `cc -n32' on Irix6.x platforms and `cc -64' on
Irix64 platforms. To use an alternate compiler (such as `cc -o32')
specify the name and compiler selection switch with the CC environment
variable:
The configuration process can be controlled through
environment variables, command-line switches, and host
configuration files. For a complete list of switches say `sh
configure --help'. The host configuration files are located in
the `config' directory and are based on architecture name,
vendor name, and/or operating system which are displayed near
the beginning of the `configure' output. The host config file
influences the behavior of configure by setting shell
variables.
$ CC='cc -o32' ./configure ......
*** Specifying the installation directories
Typing `make install' will install the HDF5 library, header
files, and support programs in /usr/local/lib,
/usr/local/include, and /usr/local/bin. To use a path other
than /usr/local specify the path with the `--prefix=PATH'
switch:
* This version of HDF5 is normally built with various debugging code
enabled. To turn it off add the `--disable-debug' switch to the
configure command. Even if debugging support is compiled into the
library one must still enable the code at runtime with the HDF5_DEBUG
environment variable (see Debugging.html). Including debugging support
in the library (whether it's enabled or not) may incur a significant
run-time penalty.
$ ./configure --prefix=/home/robb
* This version of HDF5 is normally built with support for symbolic
debugging with dbx or gdb and without compiler optimization
switches. To disable symbolic debugging and enable
optimizations add `--enable-production' to the configure
command.
*** Using an alternate C compiler
By default, configure will look for the C compiler by trying
`gcc' and `cc'. However, if the environment variable "CC" is
set then its value is used as the C compiler (users of csh and
derivatives will need to prefix the commands below with
`env'). For instance, to use the native C compiler on a system
which also has the GNU gcc compiler:
* This version of HDF5 is normally built with the ability to print
the names, arguments, and return values of all API functions
when they're called. For more information refer to the
Debugging.html file. To disable tracing support add
`--disable-trace' to the configure command.
$ CC=cc ./configure
* Configure will look for the GNU zlib (a compression library) in
the standard places for your environment. If it's installed in
a non-standard place then absolute path names can be specified
with `--with-zlib=INCDIR,LIBDIR' for the include file and/or
library. To prevent detection of zlib use `--without-zlib'.
A parallel version of hdf5 can be built by specifying `mpicc'
as the C compiler (the `--enable-parallel' flag documented
below is optional). Using the `mpicc' compiler will insure
that the correct MPI and MPI-IO header files and libraries are
used.
* The HDF5-to-HDF4 conversion tool requires the HDF4 library and header
files which are auto-detected by configure. If they are in a
non-standard place then absolute path names can be specified with
`--with-hdf4=INCDIR,LIBDIR' for the include file and/or library. To
prevent detection of hdf4 use `--without-hdf4'. Beware of the GNU zlib
that comes with hdf4 -- it's too old to use with hdf5 (hdf4 tools can be
linked with the newer versions of zlib).
$ CC=/usr/local/mpi/bin/mpicc ./configure
* Old versions of gcc (<2.8.0) may experience register allocation
problems on some architectures. If this happens then the
`--disable-hsizet' can be given but the resulting library will
be unable to handle datasets larger than 4GB.
On Irix 6.x systems the default compiler is `cc -n32' and on
Irix64 it is `cc -64'. To use an alternate compiler specify it
with the CC variable:
* Libraries, include files, programs, and documentation are
installed (when one says `make install') under /usr/local/lib,
/usr/local/include, /usr/local/bin, and /usr/local/man.
However, if you want them in some other location you can specify
a prefix to use instead of /usr/local. For instance, to install
in /usr/lib, /usr/include, /usr/bin, and /usr/man one would say
$ CC='cc -o32' ./configure
$ ./configure --prefix=/usr
*** Additional compilation flags
If addtional flags must be passed to the compilation commands
then specify those flags with the CFLAGS variable. For
instance, to enable symbolic debugging of a production version
of HDF5 one might say:
The library can be used directly from the source tree without
installing it.
$ CFLAGS=-g ./confgure --enable-production
Step 3. Compile library, tests, and programs.
*** Speicifying other programs
The build system has been tuned for use with GNU make but
works also with other versions of make. If the `make' command
runs a non-GNU version but a GNU version is available under a
different name (perhaps `gmake') then HDF5 can be configured
to use it by setting the MAKE variable. Note that whatever
value is used for MAKE must also be used as the make command
when building the library:
* Build library targets by saying
$ MAKE=gmake ./configure
$ gmake
$ make
The `AR' and `RANLIB' variables can also be set to the names
of the `ar' and `ranlib' (or `:') commands to override values
detected by configure.
Note: If you supplied some other make command through the MAKE
environment variable in the previous step then use that command
instead. The same applies below.
*** Specifying other libraries and headers
Configure searches the standard places (those places known by
the systems compiler) for include files and header
files. However, additional directories can be specified by
using the CPPFLAGS and/or LDFLAGS variables:
Note: When using GNU make you can add `-j -l6' to the make
command to compile in parallel on SMP machines. Do not give a
number after the `-j' since GNU make will turn it off for
recursive invocations of make.
$ CPPFLAGS=-I/home/robb/include \
LDFLAGS=-L/home/robb/lib \
./configure
Step 4. Run confidence tests.
HDF5 uses the zlib library for two purposes: it provides
support for the HDF5 deflate data compression filter, and it
is used by the h5toh4 converter in support of HDF4. Configure
searches the standard places (plus those specified above with
CPPFLAGS and LDFLAGS variables) for the zlib headers and
library. The search can be disabled by specifying
`--without-zlib' or alternate directories can be specified
with `--with-zlib=INCDIR,LIBDIR'.
* All confidence tests should be run by saying
$ ./configure --with-zlib=/usr/unsup/include,/usr/unsup/lib
$ make test
The HDF5-to-HDF4 conversion tool requires the HDF4 library and
header files which are detected the same way as zlib. The
switch to give to configure is `--with-hdf4'. Note that HDF5
requires a newer version of zlib than the one shipped with
some versions of HDF4.
The command will fail if any test fails, and one will see the
word "*FAIL*" in the output.
*** Static versus shared linking
The build process will create static libraries on all systems
and shared libraries on systems that support dynamic linking
to a sufficient degree. Either form of library may be
suppressed by saying `--disable-static' or `--disable-shared'.
* Some old versions of make will report that `test is up to
date'. If this happens then run `make _test' instead or run
`make test' from within the test directory.
$ ./configure --disable-shared
* Temporary files will be deleted by each test when it completes,
but may continue to exist in an incomplete state if the test
fails. To prevent deletion of the files define the
HDF5_NOCLEANUP environment variable.
*** Optimization versus symbolic debugging
The library can be compiled to provide symbolic debugging
support so it can be debugged with gdb, dbx, ddd, etc or it
can be compiled with various optimizations. To compile for
symbolic debugging (the default for snapshots) say
`--disable-production'; to compile with optimizations (the
default for supported public releases) say
`--enable-production'. On some systems the library can also
be compiled for profiling with gprof by saying
`--enable-production=profile'.
Step 5. Install public files.
$ ./configure --enable-production
* Install the library, header files, and programs by saying:
Regardless of whether support for symbolic debugging is
enabled, the library also is able to perform runtime debugging
of certain packages (such as type conversion execution times,
and extensive invariant condition checking). To enable this
debugging supply a comma-separated list of package names to to
the `--enable-debug' switch (see Debugging.html for a list of
package names). Debugging can be disabled by saying
`--disable-debug'. The default debugging level for snapshots
is a subset of the available packages; the default for
supported releases is no debugging (debugging can incur a
significant runtime penalty).
$ make install
$ ./configure --enable-debug=s,t
* This step will fail unless you have permission to write to the
installation directories. Of course, you can use the header
files, library, and programs directly out of the source tree if
you like, skipping this step. The directory specified for the
--prefix switch (or "/usr/local") must exist, but the
directories under it are created automatically by make.
HDF5 is also able to print a trace of all API function calls,
their arguments, and the return values. To enable or disable
the ability to trace the API say `--enable-trace' or
`--disable-trace'. The tracing must also be enabled at runtime
to see any output (see Debugging.html).
* The minimum which must be installed are:
*** Large (>2GB) vs. small (<2GB) file capability
In order to read or write files that could potentially be
larger than 2GB it is necessary to use the non-ANSI `long
long' data type on some platforms. However, some compilers
(e.g., GNU gcc versions before 2.8.1 on Intel platforms)
are unable to produce correct machine code for this data
type. To disable use of the `long long' type on these machines
say:
The library:
./src/libhdf5.a
$ ./configure --disable-hsizet
The public header files:
./src/H5*public.h
** Building
The library, confidence tests, and programs can be build by
saying just
The main header file:
./src/hdf5.h
$ make
The configuration information:
./src/H5config.h
Note that if you supplied some other make command via the MAKE
variable during the configuration step then that same command
must be used here.
When using GNU make you can add `-j -l6' to the make command
to compile in arallel on SMP machines. Do not give a number
after th `-j' since GNU make will turn it off for recursive
invocations of make.
$ make -j -l6
** Testing
HDF5 comes with various test suites, all of which can be run
by saying
$ make check
To run only the tests for the library change to the `test'
directory before issuing the command. Similarly, tests for the
parallel aspects of the library are in `testpar' and tests for
the support programs are in `tools'.
Temporary files will be deleted by each test when it complets,
but may continue to exist in an incomplete state if the test
fails. To prevent deletion of the files define the
HDF5_NOCLEANUP environment variable.
** Installing
The HDF5 library, include files, and support programs can be
installed in a (semi-)public place by saying `make
install'. The files are installed under the directory
specified with `--prefix=DIR' (or '/usr/local') in directories
named `lib', `include', and `bin'. The prefix directory must
exist prior to `make install', but its subdirectories are
created automatically.
The library can be used without installing it by pointing the
compiler at the `src' directory for both include files and
libraries. However, the minimum which must be installed to
make the library publically available is:
The library:
./src/libhdf5.a
The public header files:
./src/H5*public.h
The main header file:
./src/hdf5.h
The configuration information:
./src/H5config.h
* Additional useful things which are installed:
The tools library:
./tools/libh5tools.a
Some tools:
The support programs that are useful are:
./tools/h5ls (list file contents)
./tools/h5dump (dump file contents)
./tools/h5repart (repartition file families)
@ -230,7 +317,6 @@ Step 5. Install public files.
./tools/h5debug (low-level file debugging)
./tools/h5import (a demo)
Step 6. Subscribe to mailing lists.
* Subscribe to the mailing lists described in the README file.
* Support
Support is described in the README file.

View File

@ -18,6 +18,7 @@
./README
./RELEASE
./acconfig.h
./aclocal.m4
./configure
./configure.in
./all.zip
@ -32,25 +33,27 @@
./bin/h5vers
./bin/install-sh
./bin/iostats
./bin/ltconfig
./bin/ltmain.sh
./bin/release
./bin/snapshot
./bin/trace
./bin/versinc _DO_NOT_DISTRIBUTE_
./config/BlankForm
./config/alpha-dec
./config/alpha-dec-osf4.0
./config/commence.in
./config/conclude.in
./config/dec-osf4.x
./config/depend.in
./config/freebsd
./config/hpux10.20
./config/hpux9.03
./config/intel-osf1
./config/irix5.3
./config/irix5.x
./config/irix6.x
./config/irix64
./config/linux
./config/linux-gnu
./config/linux-gnulibc1
./config/linux-gnulibc2
./config/powerpc-ibm-aix4.2.1.0
./config/rs6000-ibm-aix4.1.4.0
./config/solaris2.5

View File

@ -11,7 +11,7 @@
SHELL=/bin/sh
all lib progs test _test install uninstall dep depend: _config
all lib progs check test _test install uninstall dep depend: _config
$(MAKE) $@
clean mostlyclean distclean maintainer-clean TAGS: _config

View File

@ -21,7 +21,10 @@ SUBDIRS=src test tools @TESTPARALLEL@
# library, header files, or programs. The components can be
# built individually with the targets lib, progs, and tests.
#
# test: Test the uninstalled library to make sure it works.
# check: Test the uninstalled library to make sure it works. You may
# also say `test' or `_test' (`test' doesn't work from the top
# level directory for some versions of make because `test' is
# also a directory).
#
# install: Installs libraries, header files, programs, and documentation
# in the various directories under the prefix directory (lib,
@ -59,7 +62,7 @@ SUBDIRS=src test tools @TESTPARALLEL@
# make used in combination with gcc will maintain dependency
# information automatically.
#
lib progs tests test _test install uninstall TAGS dep depend:
lib progs tests check test _test install uninstall TAGS dep depend:
@@SETX@; for d in $(SUBDIRS); do \
(cd $$d && $(MAKE) $@) || exit 1; \
done

2
README
View File

@ -1,4 +1,4 @@
This is hdf5-1.1.54 released on Tue Mar 2 04:20:13 CST 1999
This is hdf5-1.1.55 released on Tue Mar 2 11:04:51 CST 1999
Please refer to the INSTALL file for installation instructions.
------------------------------------------------------------------------------

259
aclocal.m4 vendored Normal file
View File

@ -0,0 +1,259 @@
## libtool.m4 - Configure libtool for the target system. -*-Shell-script-*-
## Copyright (C) 1996-1998 Free Software Foundation, Inc.
## Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
##
## 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 2 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, write to the Free Software
## Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
##
## As a special exception to the GNU General Public License, if you
## distribute this file as part of a program that contains a
## configuration script generated by Autoconf, you may include it under
## the same distribution terms that you use for the rest of that program.
# serial 24 AM_PROG_LIBTOOL
AC_DEFUN(AM_PROG_LIBTOOL,
[AC_REQUIRE([AM_ENABLE_SHARED])dnl
AC_REQUIRE([AM_ENABLE_STATIC])dnl
AC_REQUIRE([AC_CANONICAL_HOST])dnl
AC_REQUIRE([AC_PROG_RANLIB])dnl
AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AM_PROG_LD])dnl
AC_REQUIRE([AM_PROG_NM])dnl
AC_REQUIRE([AC_PROG_LN_S])dnl
dnl
# Always use our own libtool.
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
AC_SUBST(LIBTOOL)dnl
# Check for any special flags to pass to ltconfig.
libtool_flags=
test "$enable_shared" = no && libtool_flags="$libtool_flags --disable-shared"
test "$enable_static" = no && libtool_flags="$libtool_flags --disable-static"
test "$silent" = yes && libtool_flags="$libtool_flags --silent"
test "$ac_cv_prog_gcc" = yes && libtool_flags="$libtool_flags --with-gcc"
test "$ac_cv_prog_gnu_ld" = yes && libtool_flags="$libtool_flags --with-gnu-ld"
# Some flags need to be propagated to the compiler or linker for good
# libtool support.
case "$host" in
*-*-irix6*)
# Find out which ABI we are using.
echo '[#]line __oline__ "configure"' > conftest.$ac_ext
if AC_TRY_EVAL(ac_compile); then
case "`/usr/bin/file conftest.o`" in
*32-bit*)
LD="${LD-ld} -32"
;;
*N32*)
LD="${LD-ld} -n32"
;;
*64-bit*)
LD="${LD-ld} -64"
;;
esac
fi
rm -rf conftest*
;;
*-*-sco3.2v5*)
# On SCO OpenServer 5, we need -belf to get full-featured binaries.
CFLAGS="$CFLAGS -belf"
;;
esac
# Actually configure libtool. ac_aux_dir is where install-sh is found.
CC="$CC" CFLAGS="$CFLAGS" CPPFLAGS="$CPPFLAGS" \
LD="$LD" NM="$NM" RANLIB="$RANLIB" LN_S="$LN_S" \
${CONFIG_SHELL-/bin/sh} $ac_aux_dir/ltconfig \
$libtool_flags --no-verify $ac_aux_dir/ltmain.sh $host \
|| AC_MSG_ERROR([libtool configure failed])
])
# AM_ENABLE_SHARED - implement the --enable-shared flag
# Usage: AM_ENABLE_SHARED[(DEFAULT)]
# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
# `yes'.
AC_DEFUN(AM_ENABLE_SHARED,
[define([AM_ENABLE_SHARED_DEFAULT], ifelse($1, no, no, yes))dnl
AC_ARG_ENABLE(shared,
changequote(<<, >>)dnl
<< --enable-shared build shared libraries [default=>>AM_ENABLE_SHARED_DEFAULT]
changequote([, ])dnl
[ --enable-shared=PKGS only build shared libraries if the current package
appears as an element in the PKGS list],
[p=${PACKAGE-default}
case "$enableval" in
yes) enable_shared=yes ;;
no) enable_shared=no ;;
*)
enable_shared=no
# Look at the argument we got. We use all the common list separators.
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
for pkg in $enableval; do
if test "X$pkg" = "X$p"; then
enable_shared=yes
fi
done
IFS="$ac_save_ifs"
;;
esac],
enable_shared=AM_ENABLE_SHARED_DEFAULT)dnl
])
# AM_DISABLE_SHARED - set the default shared flag to --disable-shared
AC_DEFUN(AM_DISABLE_SHARED,
[AM_ENABLE_SHARED(no)])
# AM_DISABLE_STATIC - set the default static flag to --disable-static
AC_DEFUN(AM_DISABLE_STATIC,
[AM_ENABLE_STATIC(no)])
# AM_ENABLE_STATIC - implement the --enable-static flag
# Usage: AM_ENABLE_STATIC[(DEFAULT)]
# Where DEFAULT is either `yes' or `no'. If omitted, it defaults to
# `yes'.
AC_DEFUN(AM_ENABLE_STATIC,
[define([AM_ENABLE_STATIC_DEFAULT], ifelse($1, no, no, yes))dnl
AC_ARG_ENABLE(static,
changequote(<<, >>)dnl
<< --enable-static build static libraries [default=>>AM_ENABLE_STATIC_DEFAULT]
changequote([, ])dnl
[ --enable-static=PKGS only build shared libraries if the current package
appears as an element in the PKGS list],
[p=${PACKAGE-default}
case "$enableval" in
yes) enable_static=yes ;;
no) enable_static=no ;;
*)
enable_static=no
# Look at the argument we got. We use all the common list separators.
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:,"
for pkg in $enableval; do
if test "X$pkg" = "X$p"; then
enable_static=yes
fi
done
IFS="$ac_save_ifs"
;;
esac],
enable_static=AM_ENABLE_STATIC_DEFAULT)dnl
])
# AM_PROG_LD - find the path to the GNU or non-GNU linker
AC_DEFUN(AM_PROG_LD,
[AC_ARG_WITH(gnu-ld,
[ --with-gnu-ld assume the C compiler uses GNU ld [default=no]],
test "$withval" = no || with_gnu_ld=yes, with_gnu_ld=no)
AC_REQUIRE([AC_PROG_CC])
ac_prog=ld
if test "$ac_cv_prog_gcc" = yes; then
# Check if gcc -print-prog-name=ld gives a path.
AC_MSG_CHECKING([for ld used by GCC])
ac_prog=`($CC -print-prog-name=ld) 2>&5`
case "$ac_prog" in
# Accept absolute paths.
/* | [A-Za-z]:\\*)
test -z "$LD" && LD="$ac_prog"
;;
"")
# If it fails, then pretend we aren't using GCC.
ac_prog=ld
;;
*)
# If it is relative, then search for the first ld in PATH.
with_gnu_ld=unknown
;;
esac
elif test "$with_gnu_ld" = yes; then
AC_MSG_CHECKING([for GNU ld])
else
AC_MSG_CHECKING([for non-GNU ld])
fi
AC_CACHE_VAL(ac_cv_path_LD,
[if test -z "$LD"; then
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
for ac_dir in $PATH; do
test -z "$ac_dir" && ac_dir=.
if test -f "$ac_dir/$ac_prog"; then
ac_cv_path_LD="$ac_dir/$ac_prog"
# Check to see if the program is GNU ld. I'd rather use --version,
# but apparently some GNU ld's only accept -v.
# Break only if it was the GNU/non-GNU ld that we prefer.
if "$ac_cv_path_LD" -v 2>&1 < /dev/null | egrep '(GNU|with BFD)' > /dev/null; then
test "$with_gnu_ld" != no && break
else
test "$with_gnu_ld" != yes && break
fi
fi
done
IFS="$ac_save_ifs"
else
ac_cv_path_LD="$LD" # Let the user override the test with a path.
fi])
LD="$ac_cv_path_LD"
if test -n "$LD"; then
AC_MSG_RESULT($LD)
else
AC_MSG_RESULT(no)
fi
test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH])
AC_SUBST(LD)
AM_PROG_LD_GNU
])
AC_DEFUN(AM_PROG_LD_GNU,
[AC_CACHE_CHECK([if the linker ($LD) is GNU ld], ac_cv_prog_gnu_ld,
[# I'd rather use --version here, but apparently some GNU ld's only accept -v.
if $LD -v 2>&1 </dev/null | egrep '(GNU|with BFD)' 1>&5; then
ac_cv_prog_gnu_ld=yes
else
ac_cv_prog_gnu_ld=no
fi])
])
# AM_PROG_NM - find the path to a BSD-compatible name lister
AC_DEFUN(AM_PROG_NM,
[AC_MSG_CHECKING([for BSD-compatible nm])
AC_CACHE_VAL(ac_cv_path_NM,
[case "$NM" in
/* | [A-Za-z]:\\*)
ac_cv_path_NM="$NM" # Let the user override the test with a path.
;;
*)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}:"
for ac_dir in /usr/ucb /usr/ccs/bin $PATH /bin; do
test -z "$ac_dir" && ac_dir=.
if test -f $ac_dir/nm; then
# Check to see if the nm accepts a BSD-compat flag.
# Adding the `sed 1q' prevents false positives on HP-UX, which says:
# nm: unknown option "B" ignored
if ($ac_dir/nm -B /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
ac_cv_path_NM="$ac_dir/nm -B"
elif ($ac_dir/nm -p /dev/null 2>&1 | sed '1q'; exit 0) | egrep /dev/null >/dev/null; then
ac_cv_path_NM="$ac_dir/nm -p"
else
ac_cv_path_NM="$ac_dir/nm"
fi
break
fi
done
IFS="$ac_save_ifs"
test -z "$ac_cv_path_NM" && ac_cv_path_NM=nm
;;
esac])
NM="$ac_cv_path_NM"
AC_MSG_RESULT([$NM])
AC_SUBST(NM)
])

457
bin/config.guess vendored
View File

@ -1,6 +1,6 @@
#! /bin/sh
# Attempt to guess a canonical system name.
# Copyright (C) 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
# Copyright (C) 1992, 93, 94, 95, 96, 1997 Free Software Foundation, Inc.
#
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@ -51,35 +51,110 @@ trap 'rm -f dummy.c dummy.o dummy; exit 1' 1 2 15
# Note: order is significant - the case branches are not exclusive.
case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
alpha:OSF1:V*:*)
# After 1.2, OSF1 uses "V1.3" for uname -r.
echo alpha-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^V//'`
exit 0 ;;
alpha:OSF1:*:*)
if test $UNAME_RELEASE = "V4.0"; then
UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
fi
# A Vn.n version is a released version.
# A Tn.n version is a released field test version.
# A Xn.n version is an unreleased experimental baselevel.
# 1.2 uses "1.2" for uname -r.
echo alpha-dec-osf${UNAME_RELEASE}
exit 0 ;;
cat <<EOF >dummy.s
.globl main
.ent main
main:
.frame \$30,0,\$26,0
.prologue 0
.long 0x47e03d80 # implver $0
lda \$2,259
.long 0x47e20c21 # amask $2,$1
srl \$1,8,\$2
sll \$2,2,\$2
sll \$0,3,\$0
addl \$1,\$0,\$0
addl \$2,\$0,\$0
ret \$31,(\$26),1
.end main
EOF
${CC-cc} dummy.s -o dummy 2>/dev/null
if test "$?" = 0 ; then
./dummy
case "$?" in
7)
UNAME_MACHINE="alpha"
;;
15)
UNAME_MACHINE="alphaev5"
;;
14)
UNAME_MACHINE="alphaev56"
;;
10)
UNAME_MACHINE="alphapca56"
;;
16)
UNAME_MACHINE="alphaev6"
;;
esac
fi
rm -f dummy.s dummy
echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[VTX]//' | tr [[A-Z]] [[a-z]]`
exit 0 ;;
21064:Windows_NT:50:3)
echo alpha-dec-winnt3.5
exit 0 ;;
Amiga*:UNIX_System_V:4.0:*)
echo m68k-cbm-sysv4
exit 0;;
amiga:NetBSD:*:*)
echo m68k-cbm-netbsd${UNAME_RELEASE}
exit 0 ;;
amiga:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
arc64:OpenBSD:*:*)
echo mips64el-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
arc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
hkmips:OpenBSD:*:*)
echo mips-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
pmax:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
sgi:OpenBSD:*:*)
echo mips-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
wgrisc:OpenBSD:*:*)
echo mipsel-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
echo arm-acorn-riscix${UNAME_RELEASE}
exit 0;;
Pyramid*:OSx*:*:*)
arm32:NetBSD:*:*)
echo arm-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
exit 0 ;;
SR2?01:HI-UX/MPP:*:*)
echo hppa1.1-hitachi-hiuxmpp
exit 0;;
Pyramid*:OSx*:*:*|MIS*:OSx*:*:*)
# akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
if test "`(/bin/universe) 2>/dev/null`" = att ; then
echo pyramid-pyramid-sysv3
else
echo pyramid-pyramid-bsd
fi
exit 0 ;;
sun4*:SunOS:5.*:*)
NILE:*:*:dcosx)
echo pyramid-pyramid-svr4
exit 0 ;;
sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
i86pc:SunOS:5.*:*)
echo i386-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
sun4*:SunOS:6*:*)
# According to config.sub, this is the proper way to canonicalize
@ -99,27 +174,86 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
sun3*:SunOS:*:*)
echo m68k-sun-sunos${UNAME_RELEASE}
exit 0 ;;
sun*:*:4.2BSD:*)
UNAME_RELEASE=`(head -1 /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
case "`/bin/arch`" in
sun3)
echo m68k-sun-sunos${UNAME_RELEASE}
;;
sun4)
echo sparc-sun-sunos${UNAME_RELEASE}
;;
esac
exit 0 ;;
aushp:SunOS:*:*)
echo sparc-auspex-sunos${UNAME_RELEASE}
exit 0 ;;
atari*:NetBSD:*:*)
echo m68k-atari-netbsd${UNAME_RELEASE}
exit 0 ;;
atari*:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
sun3*:NetBSD:*:*)
echo m68k-sun-netbsd${UNAME_RELEASE}
exit 0 ;;
sun3*:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mac68k:NetBSD:*:*)
echo m68k-apple-netbsd${UNAME_RELEASE}
exit 0 ;;
mac68k:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mvme68k:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
mvme88k:OpenBSD:*:*)
echo m88k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
powerpc:machten:*:*)
echo powerpc-apple-machten${UNAME_RELEASE}
exit 0 ;;
RISC*:Mach:*:*)
echo mips-dec-mach_bsd4.3
exit 0 ;;
RISC*:ULTRIX:*:*)
echo mips-dec-ultrix${UNAME_RELEASE}
exit 0 ;;
VAX*:ULTRIX*:*:*)
echo vax-dec-ultrix${UNAME_RELEASE}
exit 0 ;;
mips:*:4*:UMIPS)
echo mips-mips-riscos4sysv
2020:CLIX:*:*)
echo clipper-intergraph-clix${UNAME_RELEASE}
exit 0 ;;
mips:*:5*:RISCos)
mips:*:*:UMIPS | mips:*:*:RISCos)
sed 's/^ //' << EOF >dummy.c
int main (argc, argv) int argc; char **argv; {
#if defined (host_mips) && defined (MIPSEB)
#if defined (SYSTYPE_SYSV)
printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
#endif
#if defined (SYSTYPE_SVR4)
printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
#endif
#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
#endif
#endif
exit (-1);
}
EOF
${CC-cc} dummy.c -o dummy \
&& ./dummy `echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` \
&& rm dummy.c dummy && exit 0
rm -f dummy.c dummy
echo mips-mips-riscos${UNAME_RELEASE}
exit 0 ;;
Night_Hawk:Power_UNIX:*:*)
echo powerpc-harris-powerunix
exit 0 ;;
m88k:CX/UX:7*:*)
echo m88k-harris-cxux7
exit 0 ;;
@ -130,12 +264,17 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
echo m88k-motorola-sysv3
exit 0 ;;
AViiON:dgux:*:*)
# DG/UX returns AViiON for all architectures
UNAME_PROCESSOR=`/usr/bin/uname -p`
if [ $UNAME_PROCESSOR = mc88100 -o $UNAME_PROCESSOR = mc88110 ] ; then
if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx \
-o ${TARGET_BINARY_INTERFACE}x = x ] ; then
echo m88k-dg-dgux${UNAME_RELEASE}
else
echo m88k-dg-dguxbcs${UNAME_RELEASE}
fi
else echo i586-dg-dgux${UNAME_RELEASE}
fi
exit 0 ;;
M88*:DolphinOS:*:*) # DolphinOS (SVR3)
echo m88k-dolphin-sysv3
@ -150,19 +289,13 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
echo m68k-tektronix-bsd
exit 0 ;;
*:IRIX64:*:*) # IRIX64 all versions
echo mips-sgi-irix64
exit 0 ;;
*:IRIX*:6.*:*) # IRIX all 6.x versions
echo mips-sgi-irix6.x
exit 0 ;;
*:IRIX*:*:*)
echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
exit 0 ;;
????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
exit 0 ;; # Note that: echo "'`uname -s`'" gives 'AIX '
i[34]86:AIX:*:*)
i?86:AIX:*:*)
echo i386-ibm-aix
exit 0 ;;
*:AIX:2:3)
@ -207,7 +340,7 @@ EOF
echo romp-ibm-bsd4.4
exit 0 ;;
ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC NetBSD and
echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
exit 0 ;; # report: romp-ibm BSD 4.3
*:BOSX:*:*)
echo rs6000-bull-bosx
@ -225,7 +358,7 @@ EOF
case "${UNAME_MACHINE}" in
9000/31? ) HP_ARCH=m68000 ;;
9000/[34]?? ) HP_ARCH=m68k ;;
9000/7?? | 9000/8?[79] ) HP_ARCH=hppa1.1 ;;
9000/7?? | 9000/8?[1679] ) HP_ARCH=hppa1.1 ;;
9000/8?? ) HP_ARCH=hppa1.0 ;;
esac
HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
@ -273,6 +406,13 @@ EOF
hp8??:OSF1:*:*)
echo hppa1.0-hp-osf
exit 0 ;;
i?86:OSF1:*:*)
if [ -x /usr/sbin/sysversion ] ; then
echo ${UNAME_MACHINE}-unknown-osf1mk
else
echo ${UNAME_MACHINE}-unknown-osf1
fi
exit 0 ;;
parisc*:Lites*:*:*)
echo hppa1.1-hp-lites
exit 0 ;;
@ -300,63 +440,177 @@ EOF
CRAY*Y-MP:*:*:*)
echo ymp-cray-unicos${UNAME_RELEASE}
exit 0 ;;
CRAY*C90:*:*:*)
echo c90-cray-unicos${UNAME_RELEASE}
CRAY*[A-Z]90:*:*:*)
echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
-e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/
exit 0 ;;
CRAY*TS:*:*:*)
echo t90-cray-unicos${UNAME_RELEASE}
exit 0 ;;
CRAY-2:*:*:*)
echo cray2-cray-unicos
exit 0 ;;
CRAY*TS:*:*:*)
echo crayts-cray-unicos
exit 0 ;;
CRAY*T3E:*:*:*)
echo t3e-cray-unicosmk
F300:UNIX_System_V:*:*)
FUJITSU_SYS=`uname -p | tr [A-Z] [a-z] | sed -e 's/\///'`
FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
echo "f300-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
exit 0 ;;
F301:UNIX_System_V:*:*)
echo f301-fujitsu-uxpv`echo $UNAME_RELEASE | sed 's/ .*//'`
exit 0 ;;
hp3[0-9][05]:NetBSD:*:*)
echo m68k-hp-netbsd${UNAME_RELEASE}
exit 0 ;;
i[3456]86:Paragon*:*:*)
echo ${UNAME_MACHINE}-intel-osf1
hp300:OpenBSD:*:*)
echo m68k-unknown-openbsd${UNAME_RELEASE}
exit 0 ;;
i[34]86:BSD/386:*:* | *:BSD/OS:*:*)
echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
i?86:BSD/386:*:* | *:BSD/OS:*:*)
echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
exit 0 ;;
*:FreeBSD:*:*)
echo ${UNAME_MACHINE}-unknown-freebsd
echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
exit 0 ;;
*:NetBSD:*:*)
echo ${UNAME_MACHINE}-unknown-netbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
exit 0 ;;
*:OpenBSD:*:*)
echo ${UNAME_MACHINE}-unknown-openbsd`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
exit 0 ;;
i*:CYGWIN*:*)
echo i386-pc-cygwin32
exit 0 ;;
i*:MINGW*:*)
echo i386-pc-mingw32
exit 0 ;;
p*:CYGWIN*:*)
echo powerpcle-unknown-cygwin32
exit 0 ;;
prep*:SunOS:5.*:*)
echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
exit 0 ;;
*:GNU:*:*)
echo `echo ${UNAME_MACHINE}|sed -e 's,/.*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
exit 0 ;;
*:Linux:*:*)
# The BFD linker knows what the default object file format is, so
# first see if it will tell us.
ld_help_string=`ld --help 2>&1`
if echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: elf_i[345]86"; then
echo "${UNAME_MACHINE}-unknown-linux" ; exit 0
elif echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: i[345]86linux"; then
echo "${UNAME_MACHINE}-unknown-linuxaout" ; exit 0
elif echo $ld_help_string | grep >/dev/null 2>&1 "supported emulations: i[345]86coff"; then
echo "${UNAME_MACHINE}-unknown-linuxcoff" ; exit 0
elif test "${UNAME_MACHINE}" = "alpha" ; then
echo alpha-unknown-linux ; exit 0
else
# Either a pre-BFD a.out linker (linuxoldld) or one that does not give us
# useful --help. Gcc wants to distinguish between linuxoldld and linuxaout.
test ! -d /usr/lib/ldscripts/. \
&& echo "${UNAME_MACHINE}-unknown-linuxoldld" && exit 0
# Determine whether the default compiler is a.out or elf
ld_supported_emulations=`echo $ld_help_string \
| sed -ne '/supported emulations:/!d
s/[ ][ ]*/ /g
s/.*supported emulations: *//
s/ .*//
p'`
case "$ld_supported_emulations" in
i?86linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" ; exit 0 ;;
i?86coff) echo "${UNAME_MACHINE}-pc-linux-gnucoff" ; exit 0 ;;
sparclinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
m68klinux) echo "${UNAME_MACHINE}-unknown-linux-gnuaout" ; exit 0 ;;
elf32ppc) echo "powerpc-unknown-linux-gnu" ; exit 0 ;;
esac
if test "${UNAME_MACHINE}" = "alpha" ; then
sed 's/^ //' <<EOF >dummy.s
.globl main
.ent main
main:
.frame \$30,0,\$26,0
.prologue 0
.long 0x47e03d80 # implver $0
lda \$2,259
.long 0x47e20c21 # amask $2,$1
srl \$1,8,\$2
sll \$2,2,\$2
sll \$0,3,\$0
addl \$1,\$0,\$0
addl \$2,\$0,\$0
ret \$31,(\$26),1
.end main
EOF
LIBC=""
${CC-cc} dummy.s -o dummy 2>/dev/null
if test "$?" = 0 ; then
./dummy
case "$?" in
7)
UNAME_MACHINE="alpha"
;;
15)
UNAME_MACHINE="alphaev5"
;;
14)
UNAME_MACHINE="alphaev56"
;;
10)
UNAME_MACHINE="alphapca56"
;;
16)
UNAME_MACHINE="alphaev6"
;;
esac
objdump --private-headers dummy | \
grep ld.so.1 > /dev/null
if test "$?" = 0 ; then
LIBC="libc1"
fi
fi
rm -f dummy.s dummy
echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} ; exit 0
elif test "${UNAME_MACHINE}" = "mips" ; then
cat >dummy.c <<EOF
main(argc, argv)
int argc;
char *argv[];
int argc;
char *argv[];
{
#ifdef __MIPSEB__
printf ("%s-unknown-linux-gnu\n", argv[1]);
#endif
#ifdef __MIPSEL__
printf ("%sel-unknown-linux-gnu\n", argv[1]);
#endif
return 0;
}
EOF
${CC-cc} dummy.c -o dummy 2>/dev/null && ./dummy "${UNAME_MACHINE}" && rm dummy.c dummy && exit 0
rm -f dummy.c dummy
else
# Either a pre-BFD a.out linker (linux-gnuoldld)
# or one that does not give us useful --help.
# GCC wants to distinguish between linux-gnuoldld and linux-gnuaout.
# If ld does not provide *any* "supported emulations:"
# that means it is gnuoldld.
echo "$ld_help_string" | grep >/dev/null 2>&1 "supported emulations:"
test $? != 0 && echo "${UNAME_MACHINE}-pc-linux-gnuoldld" && exit 0
case "${UNAME_MACHINE}" in
i?86)
VENDOR=pc;
;;
*)
VENDOR=unknown;
;;
esac
# Determine whether the default compiler is a.out or elf
cat >dummy.c <<EOF
#include <features.h>
main(argc, argv)
int argc;
char *argv[];
{
#ifdef __ELF__
printf ("%s-unknown-linux\n", argv[1]);
# ifdef __GLIBC__
# if __GLIBC__ >= 2
printf ("%s-${VENDOR}-linux-gnu\n", argv[1]);
# else
printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
# endif
# else
printf ("%s-${VENDOR}-linux-gnulibc1\n", argv[1]);
# endif
#else
printf ("%s-unknown-linuxaout\n", argv[1]);
printf ("%s-${VENDOR}-linux-gnuaout\n", argv[1]);
#endif
return 0;
}
@ -366,30 +620,45 @@ EOF
fi ;;
# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. earlier versions
# are messed up and put the nodename in both sysname and nodename.
i[34]86:DYNIX/ptx:4*:*)
i?86:DYNIX/ptx:4*:*)
echo i386-sequent-sysv4
exit 0 ;;
i[34]86:*:4.*:* | i[34]86:SYSTEM_V:4.*:*)
i?86:UNIX_SV:4.2MP:2.*)
# Unixware is an offshoot of SVR4, but it has its own version
# number series starting with 2...
# I am not positive that other SVR4 systems won't match this,
# I just have to hope. -- rms.
# Use sysv4.2uw... so that sysv4* matches it.
echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
exit 0 ;;
i?86:*:4.*:* | i?86:SYSTEM_V:4.*:*)
if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
echo ${UNAME_MACHINE}-univel-sysv${UNAME_RELEASE}
else
echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}
echo ${UNAME_MACHINE}-pc-sysv${UNAME_RELEASE}
fi
exit 0 ;;
i[34]86:*:3.2:*)
i?86:*:3.2:*)
if test -f /usr/options/cb.name; then
UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
echo ${UNAME_MACHINE}-unknown-isc$UNAME_REL
echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
elif /bin/uname -X 2>/dev/null >/dev/null ; then
UNAME_REL=`(/bin/uname -X|egrep Release|sed -e 's/.*= //')`
(/bin/uname -X|egrep i80486 >/dev/null) && UNAME_MACHINE=i486
echo ${UNAME_MACHINE}-unknown-sco$UNAME_REL
(/bin/uname -X|egrep '^Machine.*Pentium' >/dev/null) \
&& UNAME_MACHINE=i586
echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
else
echo ${UNAME_MACHINE}-unknown-sysv32
echo ${UNAME_MACHINE}-pc-sysv32
fi
exit 0 ;;
pc:*:*:*)
# uname -m prints for DJGPP always 'pc', but it prints nothing about
# the processor, so we play safe by assuming i386.
echo i386-pc-msdosdjgpp
exit 0 ;;
Intel:Mach:3*:*)
echo i386-unknown-mach3
echo i386-pc-mach3
exit 0 ;;
paragon:*:*:*)
echo i860-intel-osf1
@ -405,28 +674,36 @@ EOF
# "miniframe"
echo m68010-convergent-sysv
exit 0 ;;
M680[234]0:*:R3V[567]*:*)
M68*:*:R3V[567]*:*)
test -r /sysV68 && echo 'm68k-motorola-sysv' && exit 0 ;;
3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0)
uname -p 2>/dev/null | grep 86 >/dev/null \
&& echo i486-ncr-sysv4.3 && exit 0 ;;
3[34]??:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 4850:*:4.0:3.0)
OS_REL=''
test -r /etc/.relid \
&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
&& echo i486-ncr-sysv4.3${OS_REL} && exit 0
/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
&& echo i586-ncr-sysv4.3${OS_REL} && exit 0 ;;
3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
uname -p 2>/dev/null | grep 86 >/dev/null \
/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
&& echo i486-ncr-sysv4 && exit 0 ;;
m680[234]0:LynxOS:2.[23]*:*)
echo m68k-lynx-lynxos${UNAME_RELEASE}
m68*:LynxOS:2.*:*)
echo m68k-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
mc68030:UNIX_System_V:4.*:*)
echo m68k-atari-sysv4
exit 0 ;;
i[34]86:LynxOS:2.[23]*:*)
echo i386-lynx-lynxos${UNAME_RELEASE}
i?86:LynxOS:2.*:*)
echo i386-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
TSUNAMI:LynxOS:2.[23]*:*)
echo sparc-lynx-lynxos${UNAME_RELEASE}
TSUNAMI:LynxOS:2.*:*)
echo sparc-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
rs6000:LynxOS:2.[23]*:*)
echo rs6000-lynx-lynxos${UNAME_RELEASE}
rs6000:LynxOS:2.*:* | PowerPC:LynxOS:2.*:*)
echo rs6000-unknown-lynxos${UNAME_RELEASE}
exit 0 ;;
SM[BE]S:UNIX_SV:*:*)
echo mips-dde-sysv${UNAME_RELEASE}
exit 0 ;;
RM*:SINIX-*:*:*)
echo mips-sni-sysv4
@ -439,6 +716,32 @@ EOF
echo ns32k-sni-sysv
fi
exit 0 ;;
PENTIUM:CPunix:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
# says <Richard.M.Bartel@ccMail.Census.GOV>
echo i586-unisys-sysv4
exit 0 ;;
*:UNIX_System_V:4*:FTX*)
# From Gerald Hewes <hewes@openmarket.com>.
# How about differentiating between stratus architectures? -djm
echo hppa1.1-stratus-sysv4
exit 0 ;;
*:*:*:FTX*)
# From seanf@swdc.stratus.com.
echo i860-stratus-sysv4
exit 0 ;;
mc68*:A/UX:*:*)
echo m68k-apple-aux${UNAME_RELEASE}
exit 0 ;;
news*:NEWS-OS:*:6*)
echo mips-sony-newsos6
exit 0 ;;
R3000:*System_V*:*:* | R4000:UNIX_SYSV:*:*)
if [ -d /usr/nec ]; then
echo mips-nec-sysv${UNAME_RELEASE}
else
echo mips-unknown-sysv${UNAME_RELEASE}
fi
exit 0 ;;
esac
#echo '(No uname command or uname output not recognized.)' 1>&2
@ -482,7 +785,7 @@ main ()
#endif
int version;
version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
printf ("%s-next-nextstep%s\n", __ARCHITECTURE__, version==2 ? "2" : "3");
printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
exit (0);
#endif
@ -499,7 +802,7 @@ main ()
#endif
#if defined (__386BSD__)
printf ("i386-unknown-bsd\n"); exit (0);
printf ("i386-pc-bsd\n"); exit (0);
#endif
#if defined (sequent)

204
bin/config.sub vendored
View File

@ -1,9 +1,9 @@
#! /bin/sh
# Configuration validation subroutine script, version 1.1.
# Copyright (C) 1991, 1992, 1993, 1994, 1995 Free Software Foundation, Inc.
# Copyright (C) 1991, 92, 93, 94, 95, 96, 1997 Free Software Foundation, Inc.
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
# can handle that machine. It does not imply ALL GNU software can.
# can handle that machine. It does not imply ALL GNU software can.
#
# This file is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@ -41,10 +41,9 @@
# The goal of this file is to map all the various variations of a given
# machine specification into a single specification in the form:
# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
# or in some cases, the newer four-part form:
# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
# It is wrong to echo any other type of specification.
#
# Robb Matzke, 24 Sep 1997
# Changed i[345]86 to i[3456]86 so pentium pro processors are recognized.
if [ x$1 = x ]
then
@ -65,11 +64,21 @@ case $1 in
;;
esac
# Separate what the user gave into CPU-COMPANY and OS (if any).
basic_machine=`echo $1 | sed 's/-[^-]*$//'`
if [ $basic_machine != $1 ]
then os=`echo $1 | sed 's/.*-/-/'`
else os=; fi
# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
# Here we must recognize all the valid KERNEL-OS combinations.
maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
case $maybe_os in
linux-gnu*)
os=-$maybe_os
basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
;;
*)
basic_machine=`echo $1 | sed 's/-[^-]*$//'`
if [ $basic_machine != $1 ]
then os=`echo $1 | sed 's/.*-/-/'`
else os=; fi
;;
esac
### Let's recognize common machines as not being operating systems so
### that things like config.sub decstation-3100 work. We also
@ -84,38 +93,43 @@ case $os in
-unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
-convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
-c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp )
-harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
-apple)
os=
basic_machine=$1
;;
-hiux*)
os=-hiuxwe2
;;
-sco5)
os=sco3.2v5
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco4)
os=-sco3.2v4
basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco3.2.[4-9]*)
os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco3.2v[4-9]*)
# Don't forget version if it is 3.2v4 or newer.
basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-sco*)
os=-sco3.2v2
basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-isc)
os=-isc2.2
basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-clix*)
basic_machine=clipper-intergraph
;;
-isc*)
basic_machine=`echo $1 | sed -e 's/86-.*/86-unknown/'`
basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
;;
-lynx*)
os=-lynxos
@ -126,35 +140,49 @@ case $os in
-windowsnt*)
os=`echo $os | sed -e 's/windowsnt/winnt/'`
;;
-psos*)
os=-psos
;;
esac
# Decode aliases for certain CPU-COMPANY combinations.
case $basic_machine in
# Recognize the basic CPU types without company name.
# Some are omitted here because they have special meanings below.
tahoe | i[3456]86 | i860 | m68k | m68000 | m88k | ns32k | arm \
| arme[lb] | pyramid \
| tron | a29k | 580 | i960 | h8300 | hppa1.0 | hppa1.1 \
| alpha | we32k | ns16k | clipper | sparclite | i370 | sh \
| powerpc | powerpcle | sparc64 | 1750a | dsp16xx | mips64 | mipsel \
| pdp11 | mips64el | mips64orion | mips64orionel \
| sparc)
tahoe | i860 | m32r | m68k | m68000 | m88k | ns32k | arc | arm \
| arme[lb] | pyramid | mn10200 | mn10300 \
| tron | a29k | 580 | i960 | h8300 | hppa | hppa1.0 | hppa1.1 \
| alpha | alphaev5 | alphaev56 | we32k | ns16k | clipper \
| i370 | sh | powerpc | powerpcle | 1750a | dsp16xx | pdp11 \
| mips64 | mipsel | mips64el | mips64orion | mips64orionel \
| mipstx39 | mipstx39el \
| sparc | sparclet | sparclite | sparc64 | v850)
basic_machine=$basic_machine-unknown
;;
# We use `pc' rather than `unknown'
# because (1) that's what they normally are, and
# (2) the word "unknown" tends to confuse beginning users.
i[3456]86)
basic_machine=$basic_machine-pc
;;
# Object if more than one company name word.
*-*-*)
echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
exit 1
;;
# Recognize the basic CPU types with company name.
vax-* | tahoe-* | i[3456]86-* | i860-* | m68k-* | m68000-* | m88k-* \
| sparc-* | ns32k-* | fx80-* | arm-* | c[123]* \
| mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* | power-* \
| none-* | 580-* | cray2-* | h8300-* | i960-* | xmp-* | ymp-* \
| hppa1.0-* | hppa1.1-* | alpha-* | we32k-* | cydra-* | ns16k-* \
| pn-* | np1-* | xps100-* | clipper-* | orion-* | sparclite-* \
| pdp11-* | sh-* | powerpc-* | powerpcle-* | sparc64-* | mips64-* | mipsel-* \
| mips64el-* | mips64orion-* | mips64orionel-*)
vax-* | tahoe-* | i[3456]86-* | i860-* | m32r-* | m68k-* | m68000-* \
| m88k-* | sparc-* | ns32k-* | fx80-* | arc-* | arm-* | c[123]* \
| mips-* | pyramid-* | tron-* | a29k-* | romp-* | rs6000-* \
| power-* | none-* | 580-* | cray2-* | h8300-* | i960-* \
| xmp-* | ymp-* | hppa-* | hppa1.0-* | hppa1.1-* \
| alpha-* | alphaev5-* | alphaev56-* | we32k-* | cydra-* \
| ns16k-* | pn-* | np1-* | xps100-* | clipper-* | orion-* \
| sparclite-* | pdp11-* | sh-* | powerpc-* | powerpcle-* \
| sparc64-* | mips64-* | mipsel-* \
| mips64el-* | mips64orion-* | mips64orionel-* \
| mipstx39-* | mipstx39el-* \
| f301-*)
;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
@ -181,9 +209,9 @@ case $basic_machine in
amiga | amiga-*)
basic_machine=m68k-cbm
;;
amigados)
amigaos | amigados)
basic_machine=m68k-cbm
os=-amigados
os=-amigaos
;;
amigaunix | amix)
basic_machine=m68k-cbm
@ -193,6 +221,10 @@ case $basic_machine in
basic_machine=m68k-apollo
os=-sysv
;;
aux)
basic_machine=m68k-apple
os=-aux
;;
balance)
basic_machine=ns32k-sequent
os=-dynix
@ -225,10 +257,10 @@ case $basic_machine in
basic_machine=cray2-cray
os=-unicos
;;
cray-t3e | t3e | t3e-cray)
basic_machine=t3e-cray
os=-unicosmk
;;
[ctj]90-cray)
basic_machine=c90-cray
os=-unicos
;;
crds | unos)
basic_machine=m68k-crds
;;
@ -310,25 +342,28 @@ case $basic_machine in
hp9k8[0-9][0-9] | hp8[0-9][0-9])
basic_machine=hppa1.0-hp
;;
hppa-next)
os=-nextstep3
;;
i370-ibm* | ibm*)
basic_machine=i370-ibm
os=-mvs
;;
# I'm not sure what "Sysv32" means. Should this be sysv3.2?
i[3456]86v32)
basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv32
;;
i[3456]86v4*)
basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv4
;;
i[3456]86v)
basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-sysv
;;
i[3456]86sol2)
basic_machine=`echo $1 | sed -e 's/86.*/86-unknown/'`
basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
os=-solaris2
;;
iris | iris4d)
@ -359,6 +394,14 @@ case $basic_machine in
miniframe)
basic_machine=m68000-convergent
;;
mipsel*-linux*)
basic_machine=mipsel-unknown
os=-linux-gnu
;;
mips*-linux*)
basic_machine=mips-unknown
os=-linux-gnu
;;
mips3*-*)
basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
;;
@ -417,10 +460,6 @@ case $basic_machine in
basic_machine=i860-intel
os=-osf
;;
janus | tflop)
basic_machine=i386-intel
os=-osf1
;;
pbd)
basic_machine=sparc-tti
;;
@ -430,14 +469,18 @@ case $basic_machine in
pc532 | pc532-*)
basic_machine=ns32k-pc532
;;
pentium | p5 | p6)
# We don't have specific support for the Intel Pentium (p6) followon yet, so just call it a Pentium
pentium | p5)
basic_machine=i586-intel
;;
pentium-* | p5-* | p6-*)
# We don't have specific support for the Intel Pentium (p6) followon yet, so just call it a Pentium
pentiumpro | p6)
basic_machine=i686-intel
;;
pentium-* | p5-*)
basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
pentiumpro-* | p6-*)
basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
;;
k5)
# We don't have specific support for AMD's K5 yet, so just call it a Pentium
basic_machine=i586-amd
@ -528,6 +571,12 @@ case $basic_machine in
basic_machine=i386-sequent
os=-dynix
;;
tx39)
basic_machine=mipstx39-unknown
;;
tx39el)
basic_machine=mipstx39el-unknown
;;
tower | tower-32)
basic_machine=m68k-ncr
;;
@ -547,6 +596,9 @@ case $basic_machine in
basic_machine=vax-dec
os=-vms
;;
vpp*|vx|vx-*)
basic_machine=f301-fujitsu
;;
vxworks960)
basic_machine=i960-wrs
os=-vxworks
@ -574,7 +626,11 @@ case $basic_machine in
# Here we handle the default manufacturer of certain CPU types. It is in
# some cases the only manufacturer, in others, it is the most popular.
mips)
basic_machine=mips-mips
if [ x$os = x-linux-gnu ]; then
basic_machine=mips-unknown
else
basic_machine=mips-mips
fi
;;
romp)
basic_machine=romp-ibm
@ -626,6 +682,8 @@ esac
if [ x"$os" != x"" ]
then
case $os in
# First match some system type aliases
# that might get confused with valid system types.
# -solaris* is a basic system type, with this one exception.
-solaris1 | -solaris1.*)
os=`echo $os | sed -e 's|solaris1|sunos4|'`
@ -633,28 +691,37 @@ case $os in
-solaris)
os=-solaris2
;;
-unixware* | svr4*)
-svr4*)
os=-sysv4
;;
-unixware*)
os=-sysv4.2uw
;;
-gnu/linux*)
os=`echo $os | sed -e 's|gnu/linux|linux|'`
os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
;;
# First accept the basic system types.
# The portable systems comes first.
# Each alternative MUST END IN A *, to match a version number.
# -sysv* is not here because it comes later, after sysvr4.
-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
| -vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[345]* \
| -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
| -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
| -amigados* | -msdos* | -newsos* | -unicos* | -aos* \
| -nindy* | -vxworks* | -ebmon* | -hms* | -mvs* | -clix* \
| -riscos* | -linux* | -uniplus* | -iris* | -rtu* | -xenix* \
| -hiux* | -386bsd* | -netbsd* | -freebsd* | -riscix* \
| -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
| -aos* \
| -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
| -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
| -hiux* | -386bsd* | -netbsd* | -openbsd* | -freebsd* | -riscix* \
| -lynxos* | -bosx* | -nextstep* | -cxux* | -aout* | -elf* \
| -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
| -udi* | -eabi* | -lites* )
| -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
| -cygwin32* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
| -mingw32* | -linux-gnu* | -uxpv*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-linux*)
os=`echo $os | sed -e 's|linux|linux-gnu|'`
;;
-sunos5*)
os=`echo $os | sed -e 's|sunos5|solaris2|'`
;;
@ -679,6 +746,9 @@ case $os in
-ctix* | -uts*)
os=-sysv
;;
-ns2 )
os=-nextstep2
;;
# Preserve the version number of sinix5.
-sinix5.*)
os=`echo $os | sed -e 's|sinix|sysv|'`
@ -772,7 +842,7 @@ case $basic_machine in
os=-sysv
;;
*-cbm)
os=-amigados
os=-amigaos
;;
*-dg)
os=-dgux
@ -786,6 +856,9 @@ case $basic_machine in
m88k-omron*)
os=-luna
;;
*-next )
os=-nextstep
;;
*-sequent)
os=-ptx
;;
@ -819,6 +892,9 @@ case $basic_machine in
*-masscomp)
os=-rtu
;;
f301-fujitsu)
os=-uxpv
;;
*)
os=-none
;;
@ -837,9 +913,6 @@ case $basic_machine in
-sunos*)
vendor=sun
;;
-lynxos*)
vendor=lynx
;;
-aix*)
vendor=ibm
;;
@ -867,9 +940,12 @@ case $basic_machine in
-ptx*)
vendor=sequent
;;
-vxworks*)
-vxsim* | -vxworks*)
vendor=wrs
;;
-aux*)
vendor=apple
;;
esac
basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
;;

1512
bin/ltconfig Executable file

File diff suppressed because it is too large Load Diff

2453
bin/ltmain.sh Normal file

File diff suppressed because it is too large Load Diff

View File

@ -77,16 +77,16 @@ for cvs in `find . -type d -name CVS -print`; do
fi
done
done
for file in ./Changes `sh -c 'svf ls' 2>/dev/null`; do
if (grep $file $MANIFEST >/dev/null); then
:
elif [ $file = ./Changes ]; then
:
else
echo "+ $file"
fail=yes
fi
done
# for file in ./Changes `sh -c 'svf ls' 2>/dev/null`; do
# if (grep $file $MANIFEST >/dev/null); then
# :
# elif [ $file = ./Changes ]; then
# :
# else
# echo "+ $file"
# fail=yes
# fi
# done
if [ "X$fail" = "Xyes" ]; then
cat 1>&2 <<EOF

View File

@ -1,21 +0,0 @@
# -*- shell-script -*-
#
# This file is part of the HDF5 build script. It is processed shortly
# after configure starts and defines, among other things, flags for
# the various compile modes.
#
# See BlankForm in this directory for detailed information.
#
# What compiler flags should be used for code development?
DEBUG_CFLAGS=-g
DEBUG_CPPFLAGS="-DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2"
# What compiler flags should be used for building a production
# library?
PROD_CFLAGS=-O
PROD_CPPFLAGS=
# What compiler flags enable code profiling?
PROFILE_CFLAGS=-pg
PROFILE_CPPFLAGS=

View File

@ -6,7 +6,7 @@
# Things that Make needs
.SUFFIXES:
.SUFFIXES: .c .o
.SUFFIXES: .c .o .lo
@SET_MAKE@
# Programs
@ -36,6 +36,17 @@ bindir=@bindir@
libdir=@libdir@
includedir=@includedir@
# Shared libraries
LT=@top_srcdir@/libtool
LT_COMPILE=$(LT) --mode=compile $(CC)
LT_LINK_LIB=$(LT) --mode=link $(CC) -rpath $(libdir)
LT_LINK_EXE=$(LT) --mode=link $(CC)
LT_RUN=$(LT) --mode=execute
LT_INSTALL_PROG=$(LT) --mode=install $(INSTALL_PROGRAM)
LT_INSTALL_LIB=$(LT) --mode=install $(INSTALL_DATA)
LT_UNINSTALL=$(LT) --mode=uninstall $(RM)
# The default is to build the library and/or programs. We must build
# them sequentially.
all:

View File

@ -9,8 +9,7 @@
#
lib: $(LIB)
$(LIB) __no_library__: $(LIB_OBJ)
$(AR) -rc $@ $(LIB_OBJ)
$(RANLIB) $@
@$(LT_LINK_LIB) -o $@ $(CFLAGS) $(LIB_OBJ) $(LIBS)
progs: $(LIB) $(PROGS)
@ -21,7 +20,7 @@ TAGS: $(LIB_SRC)
# Runs each test in order, passing $(TEST_FLAGS) to the program.
tests: $(TEST_PROGS) $(LIB)
test _test: tests
check test _test: tests
@for test in $(TEST_PROGS) dummy; do \
if test $$test != dummy; then \
echo "============================"; \
@ -46,7 +45,7 @@ install: $(LIB) $(PUB_HDR) $(PROGS)
@test -d $(libdir) || mkdir $(libdir)
@for f in X $(LIB); do \
if test $$f != X; then \
(set -x; $(INSTALL_DATA) $$f $(libdir)/. || exit 1); \
($(LT_INSTALL_LIB) $$f $(libdir)/. || exit 1); \
fi; \
done
@test -d $(includedir) || mkdir $(includedir)
@ -58,34 +57,39 @@ install: $(LIB) $(PUB_HDR) $(PROGS)
@test -d $(bindir) || mkdir $(bindir)
@for f in X $(PROGS); do \
if test $$f != X; then \
(set -x; $(INSTALL_PROGRAM) $$f $(bindir)/. || exit 1); \
($(LT_INSTALL_PROG) $$f $(bindir)/. || exit 1); \
fi; \
done
# Removes those things that `make install' (would have) installed.
uninstall:
@if test "X$(LIB)" != X; then \
set -x; cd $(libdir) && $(RM) $(LIB); \
for f in $(LIB); do \
$(LT_UNINSTALL) $(libdir)/$$f; \
done; \
fi
@if test "X$(PUBHDR)" != X; then \
@if test "X$(PUB_HDR)" != X; then \
set -x; cd $(includedir) && $(RM) $(PUB_HDR); \
fi
@if test "X$(PROGS)" != X; then \
set -x; cd $(bindir) && $(RM) $(PROGS); \
for f in $(PROGS); do \
$(LT_UNINSTALL) $(bindir)/$$f; \
done; \
fi
# Removes temporary files without removing the final target files. That is,
# remove things like object files but not libraries or executables.
#
mostlyclean:
$(RM) $(LIB_OBJ) $(TEST_OBJ) $(PROG_OBJ) $(MOSTLYCLEAN)
-$(RM) $(LIB_OBJ) $(TEST_OBJ) $(PROG_OBJ) $(MOSTLYCLEAN)
# Like `mostlyclean' except it also removes the final targets: things like
# libraries and executables. This target doesn't remove any file that
# is part of the HDF5 distribution.
#
clean: mostlyclean
$(RM) $(LIB) $(TEST_PROGS) $(PROGS) $(CLEAN)
-$(RM) $(LIB) $(TEST_PROGS) $(PROGS) $(CLEAN)
-$(RM) -r .libs
# Like `clean' except it also removes files that were created by running
# configure. If you've unpacked the source and built HDF5 without creating
@ -93,7 +97,7 @@ clean: mostlyclean
# in the distribution.
#
distclean: clean
$(RM) .depend TAGS *~ core *.core *.bak *.old *.new $(DISTCLEAN)
-$(RM) .depend TAGS *~ core *.core *.bak *.old *.new $(DISTCLEAN)
@if test -f Makefile.in; then \
(set -x; $(RM) Makefile); \
fi
@ -102,12 +106,15 @@ distclean: clean
# the makefile, including those generated from autoheader and autoconf.
#
maintainer-clean: distclean
$(RM) *~ core core.* *.core *.bak *.contrib gmon.out
-$(RM) *~ core core.* *.core *.bak *.contrib gmon.out
# Implicit rules
.c.o:
$(CC) $(CFLAGS) $(CPPFLAGS) -c $<
.c.lo:
@$(LT_COMPILE) $(CFLAGS) $(CPPFLAGS) -c $<
#------------------------------------------------------------------------------
# The following section of this makefile contains dependencies between the
# source files and the header files. If GNU make and GCC are being used then

View File

@ -27,11 +27,28 @@ case "X-$CC_BASENAME" in
;;
*)
#CFLAGS="$CFLAGS"
# Watch out for some versions of the compiler
case "`($CC -V |head -1) 2>/dev/null`" in
"DEC C V5.2-038 "*)
echo " +------------------------------------------------+"
echo " | You have an old version of cc. Please upgrade. |"
echo " | Continuing anyway, but code generation might be|"
echo " | incorrect, especially if optimizations are |"
echo " | enabled (look for -O) |"
echo " +------------------------------------------------+"
sleep 5
;;
esac
# Debugging
DEBUG_CFLAGS="-g -std -verbose -warnprotos"
DEBUG_CPPFLAGS="-DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2"
# Production
PROD_CFLAGS="-g0 -verbose -warnprotos -std -O4 -arch host -tune host -ansi_args -fp_reorder -readonly_strings -inline speed"
PROD_CPPFLAGS="-D_INTRINSICS -D_INLINE_INTRINSICS"
# Profiling
PROFILE_CFLAGS="-pg -std -verbose -warnprotos"
PROFILE_CPPFLAGS=
;;

View File

@ -5,4 +5,4 @@
#
# See BlankForm in this directory for details.
. config/linux
. config/linux-gnulibc1

View File

@ -1,37 +0,0 @@
# -*- shell-script -*-
#
# This file is part of the HDF5 build script. It is processed shortly
# after configure starts and defines, among other things, flags for
# the various compile modes.
#
# See BlankForm in this directory for details
# The default compiler is `cc' and there is no ranlib.
if test "X-" = "X-$CC"; then
CC=cc
CC_BASENAME=cc
fi
RANLIB=:
# Compiler flags
case "X-$CC_BASENAME" in
X-gcc)
CFLAGS="$CFLAGS -ansi"
DEBUG_CFLAGS="-g -fverbose-asm"
DEBUG_CPPFLAGS="-DH5F_LOW_DFLT=H5F_LOW_SEC2"
PROD_CFLAGS="-O3 -finline-functions"
PROD_CPPFLAGS=
PROFILE_CFLAGS=-pg
PROFILE_CPPFLAGS=
;;
*)
CFLAGS="$CFLAGS -fullwarn -prototypes -woff 799"
DEBUG_CFLAGS=-g
DEBUG_CPPFLAGS=
PROD_CFLAGS=-O
PROD_CPPFLAGS=
PROFILE_CFLAGS=-pg
PROFILE_CPPFLAGS=
;;
esac

50
config/irix5.x Normal file
View File

@ -0,0 +1,50 @@
# -*- shell-script -*-
#
# This file is part of the HDF5 build script. It is processed shortly
# after configure starts and defines, among other things, flags for
# the various compile modes.
#
# See BlankForm in this directory for details
# The default compiler is `cc' and there is no ranlib.
if test "X-" = "X-$CC"; then
CC=cc
CC_BASENAME=cc
fi
RANLIB=:
case "X-$CC_BASENAME" in
X-gcc)
CFLAGS="$CFLAGS -Wsign-compare" #Only works for some versions
DEBUG_CFLAGS="-g -fverbose-asm"
DEBUG_CPPFLAGS="-DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2"
PROD_CFLAGS="-O3"
PROD_CPPFLAGS=
PROFILE_CFLAGS="-pg"
PROFILE_CPPFLAGS=
;;
*)
# Do *not* use -ansi because it prevents hdf5 from being able
# to read modification dates from the file. On some systems it
# can also result in compile errors in system header files
# since hdf5 includes a couple non-ANSI header files.
#CFLAGS="$CFLAGS -ansi"
# Always turn off these compiler warnings:
CFLAGS="$CFLAGS -woff 799"
# Extra debugging flags
DEBUG_CFLAGS=-g
DEBUG_CPPFLAGS=
# Extra production flags
# Note: higher optimizations relax alignment requirements needed.
PROD_CFLAGS=-O
PROD_CPPFLAGS=
# Extra profiling flags
PROFILE_CFLAGS=-pg
PROFILE_CPPFLAGS=
;;
esac

View File

@ -4,15 +4,16 @@
# after configure starts and defines, among other things, flags for
# the various compile modes.
#
# See BlankForm in this directory for details
# See BlankForm in this directory for details.
# The default compiler is `cc' and there is no ranlib.
# Use SGI supplied C compiler by default. There is no ranlib
if test "X-" = "X-$CC"; then
CC='cc -n32'
CC='cc -64'
CC_BASENAME=cc
fi
RANLIB=:
# Compiler flags
case "X-$CC_BASENAME" in
X-gcc)
CFLAGS="$CFLAGS -Wsign-compare" #Only works for some versions
@ -25,33 +26,55 @@ case "X-$CC_BASENAME" in
;;
*)
# Check for old versions of the compiler that don't work right.
case "`$CC -version 2>&1 |head -1`" in
"Mongoose Compilers: Version 7.00")
echo " +---------------------------------------------------+"
echo " | You have an old version of cc (Mongoose Compilers |"
echo " | version 7.00). Please upgrade to MIPSpro version |"
echo " | 7.2.1.2m (patches are available from the SGI web |"
echo " | site). The 7.00 version may generate incorrect |"
echo " | code, especially when optimizations are enabled. |"
echo " +---------------------------------------------------+"
sleep 5
;;
esac
# Do *not* use -ansi because it prevents hdf5 from being able
# to read modification dates from the file. On some systems it
# can also result in compile errors in system header files
# since hdf5 includes a couple non-ANSI header files.
#CFLAGS="$CFLAGS -ansi"
# Always turn off these compiler warnings:
# Always turn off these compiler warnings for the -64 compiler:
# 1174: function declared but not used
# 1429: the `long long' type is not standard
# 1209: constant expressions
# 1196: __vfork() (this is an SGI config problem)
CFLAGS="$CFLAGS -woff 1174,1429,1209,1196"
# 1685: turn off warnings about turning off invalid warnings
CFLAGS="$CFLAGS -woff 1174,1429,1209,1196,1685"
# Always turn off these compiler warnings for the old compiler:
# 799: the `long long' type is not standard
# 803: turn off warnings about turning off invalid warnings
# 835: __vfork() (this is an SGI config problem)
CFLAGS="$CFLAGS -woff 799,803,835"
# Always turn off these loader warnings:
# 47: linked module might degrade performance
# (notice the peculiar syntax)
# 47: branch instructions that degrade performance on R4000
# 84: a library is not used
# 85: duplicate definition preemption
# 134: duplicate weak definition preemption
# 85: duplicate definition preemption (from -lnsl)
# 134: duplicate weak definition preemption (from -lnsl)
CFLAGS="$CFLAGS -Wl,-woff,47,-woff,84,-woff,85,-woff,134"
# Extra debugging flags
DEBUG_CFLAGS=-g
DEBUG_CFLAGS="-g -fullwarn"
DEBUG_CPPFLAGS=
# Extra production flags
# Note: higher optimizations relax alignment requirements needed.
PROD_CFLAGS=-O1
PROD_CFLAGS=-O
PROD_CPPFLAGS=
# Extra profiling flags

View File

@ -1,69 +0,0 @@
# -*- shell-script -*-
#
# This file is part of the HDF5 build script. It is processed shortly
# after configure starts and defines, among other things, flags for
# the various compile modes.
#
# See BlankForm in this directory for details.
# Use SGI supplied C compiler by default. There is no ranlib
if test "X-" = "X-$CC"; then
CC='cc -64'
CC_BASENAME=cc
fi
RANLIB=:
# Compiler flags
case "X-$CC_BASENAME" in
X-gcc)
CFLAGS="$CFLAGS -Wsign-compare" #Only works for some versions
DEBUG_CFLAGS="-g -fverbose-asm"
DEBUG_CPPFLAGS="-DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2"
PROD_CFLAGS="-O3"
PROD_CPPFLAGS=
PROFILE_CFLAGS="-pg"
PROFILE_CPPFLAGS=
;;
*)
# Do *not* use -ansi because it prevents hdf5 from being able
# to read modification dates from the file. On some systems it
# can also result in compile errors in system header files
# since hdf5 includes a couple non-ANSI header files.
#CFLAGS="$CFLAGS -ansi"
# Always turn off these compiler warnings for the -64 compiler:
# 1174: function declared but not used
# 1429: the `long long' type is not standard
# 1209: constant expressions
# 1196: __vfork() (this is an SGI config problem)
# 1685: turn off warnings about turning off invalid warnings
CFLAGS="$CFLAGS -woff 1174,1429,1209,1196,1685"
# Always turn off these compiler warnings for the old compiler:
# 799: the `long long' type is not standard
# 803: turn off warnings about turning off invalid warnings
# 835: __vfork() (this is an SGI config problem)
CFLAGS="$CFLAGS -woff 799,803,835"
# Always turn off these loader warnings:
# (notice the peculiar syntax)
# 47: branch instructions that degrade performance on R4000
# 84: a library is not used
# 85: duplicate definition preemption (from -lnsl)
# 134: duplicate weak definition preemption (from -lnsl)
CFLAGS="$CFLAGS -Wl,-woff,47,-woff,84,-woff,85,-woff,134"
# Extra debugging flags
DEBUG_CFLAGS="-g -fullwarn"
DEBUG_CPPFLAGS=
# Extra production flags
PROD_CFLAGS=-O
PROD_CPPFLAGS=
# Extra profiling flags
PROFILE_CFLAGS=-pg
PROFILE_CPPFLAGS=
;;
esac

1
config/linux-gnu Normal file
View File

@ -0,0 +1 @@
. config/linux-gnulibc1

76
config/linux-gnulibc2 Normal file
View File

@ -0,0 +1,76 @@
# -*- shell-script -*-
#
# This file is part of the HDF5 build script. It is processed shortly
# after configure starts and defines, among other things, flags for
# the various compile modes.
#
# See BlankForm in this directory for details.
# The default compiler is `gcc'.
if test "X-" = "X-$CC"; then
CC=gcc
CC_BASENAME=gcc
fi
ARCH="-mcpu=pentiumpro -march=pentiumpro -malign-double"
NOFP="-fomit-frame-pointer"
#HDF4_FLAGS="-D__i386"
# Compiler flags. We use `-v' to get the version number because it almost
# always works on Linux systems.
case `$CC -v 2>&1 |grep 'gcc version' |sed 's/.*gcc version //'` in
2.7.*)
echo " +------------------------------------------------+"
echo " | You have an old version of gcc. Please upgrade |"
echo " | to 2.8.1 or better. Continuing anyway, but |"
echo " | code generation may be wrong on some platforms.|"
echo " +------------------------------------------------+"
sleep 5
CFLAGS="$CFLAGS -ansi"
PROD_CFLAGS="-O3 $NOFP -finline-functions -Wno-shadow"
PROD_CPPFLAGS="$HDF4_FLAGS"
DEBUG_CFLAGS="-g -fverbose-asm -Wno-shadow"
DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2"
PROFILE_CFLAGS=-pg
PROFILE_CPPFLAGS=
;;
2.8.*)
CFLAGS="$CFLAGS -Wsign-compare"
PROD_CFLAGS="$ARCH -O3 $NOFP -finline-functions -fschedule-insns2 -Wno-shadow"
PROD_CPPFLAGS="$HDF4_FLAGS"
DEBUG_CFLAGS="-g -fverbose-asm -Wno-shadow"
DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2"
PROFILE_CFLAGS=-pg
PROFILE_CPPFLAGS=
;;
egcs-*)
CFLAGS="$CFLAGS -Wsign-compare"
PROD_CFLAGS="$ARCH -O6 $NOFP -Wno-shadow"
PROD_CPPFLAGS="$HDF4_FLAGS"
DEBUG_CFLAGS="-g -fverbose-asm -Wno-shadow"
DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2"
PROFILE_CFLAGS=-pg
PROFILE_CPPFLAGS=
;;
pgcc-*)
CFLAGS="$CFLAGS -Wsign-compare"
PROD_CFLAGS="$ARCH -O6 $NOFP -Wno-shadow"
PROD_CPPFLAGS="$HDF4_FLAGS"
DEBUG_CFLAGS="-g -fverbose-asm -Wno-shadow"
DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2"
PROFILE_CFLAGS=-pg
PROFILE_CPPFLAGS=
;;
*)
PROD_CFLAGS=-O
PROD_CPPFLAGS="$HDF4_FLAGS"
DEBUG_CFLAGS="-g"
DEBUG_CPPFLAGS="$HDF4_FLAGS -DH5F_OPT_SEEK=0 -DH5F_LOW_DFLT=H5F_LOW_SEC2"
PROFILE_CFLAGS=-pg
PROFILE_CPPFLAGS=
;;
esac

851
configure vendored

File diff suppressed because it is too large Load Diff

View File

@ -4,8 +4,6 @@ dnl
dnl Copyright (C) 1997 National Center for Supercomputing Applications.
dnl All rights reserved.
dnl ----------------------------------------------------------------------
dnl Initialize configure.
dnl
@ -50,22 +48,42 @@ dnl OS
dnl VENDOR
dnl CPU
dnl
dnl If the `OS' ends with a version number then remove it. For instance,
dnl `freebsd3.1' would become `freebsd'
case $host_os in
freebsd*)
host_os_novers=freebsd
;;
irix5.*)
host_os_novers=irix5.x
;;
irix6.*)
host_os_novers=irix6.x
;;
osf4.*)
host_os_novers=osf4.x
;;
*)
host_os_novers=$host_os
;;
esac
AC_MSG_CHECKING(for host config file)
host_config="none"
for f in $host \
$host_vendor-$host_os \
$host_cpu-$host_os \
for f in $host_cpu-$host_vendor-$host_os_novers \
$host_vendor-$host_os_novers \
$host_cpu-$host_os_novers \
$host_cpu-$host_vendor \
$host_os \
$host_os_novers \
$host_vendor \
$host_cpu ; do
AC_MSG_CHECKING(for config $f)
if test -f config/$f; then
host_config=config/$f
AC_MSG_RESULT(found)
break
fi
AC_MSG_RESULT(no)
done
AC_MSG_RESULT($host_config)
if test $host_config != "none"; then
CC_BASENAME="`echo $CC |cut -f1 -d' ' |xargs basename 2>/dev/null`"
. $host_config
@ -78,7 +96,7 @@ AC_PROG_CC
CC_BASENAME="`echo $CC |cut -f1 -d' ' |xargs basename 2>/dev/null`"
AC_PROG_MAKE_SET
AC_PROG_INSTALL
AC_PROG_RANLIB
AM_PROG_LIBTOOL
if test "X$AR" = "X"; then
AC_CHECK_PROGS(AR,ar xar,:,$PATH)
@ -148,12 +166,15 @@ AC_CHECK_HEADERS(stddef.h)
dnl Windows
AC_CHECK_HEADERS(io.h winsock.h sys/timeb.h)
dnl The <sys/sysinfo.h> and <sys/proc.h> are needed on the DEC Alpha
dnl to turn off UAC fixing. We do *not* attempt to locate these files on
dnl other systems because there are too many problems with including them.
if test "$host_vendor-$host_cpu" = "dec-alpha"; then
AC_CHECK_HEADERS(sys/sysinfo.h sys/proc.h)
fi
case $host in
alpha*-dec*-osf*)
dnl The <sys/sysinfo.h> and <sys/proc.h> are needed on the DEC
dnl Alpha to turn off UAC fixing. We do *not* attempt to
dnl locate these files on other systems because there are too
dnl many problems with including them.
AC_CHECK_HEADERS(sys/sysinfo.h sys/proc.h)
;;
esac
dnl ----------------------------------------------------------------------
dnl Data types and their sizes.

View File

@ -11,7 +11,7 @@ TRACE=perl ../bin/trace
CPPFLAGS=-I. @CPPFLAGS@
# This is our main target:
LIB=libhdf5.a
LIB=libhdf5.la
# Source and object files for the library (lexicographically)...
LIB_SRC=H5.c H5A.c H5AC.c H5B.c H5D.c H5E.c H5F.c H5Farray.c H5Fcore.c \
@ -23,7 +23,7 @@ LIB_SRC=H5.c H5A.c H5AC.c H5B.c H5D.c H5E.c H5F.c H5Farray.c H5Fcore.c \
H5Snone.c H5Spoint.c H5Sselect.c H5T.c H5Tbit.c H5Tconv.c H5Tinit.c \
H5TB.c H5V.c H5Z.c
LIB_OBJ=$(LIB_SRC:.c=.o)
LIB_OBJ=$(LIB_SRC:.c=.lo)
# Temporary files
MOSTLYCLEAN=H5detect.o H5detect H5Tinit.o H5Tinit.c
@ -50,9 +50,4 @@ H5Tinit.c: H5detect
H5detect: H5detect.o
$(CC) $(CFLAGS) -o $@ H5detect.o $(LDFLAGS) $(LIBS)
# dynamic library with gcc. This needs more work to support other systems.
shared: libhdf5.so.1.2.0
libhdf5.so.1.2.0: $(LIB_OBJ)
$(CC) $(CFLAGS) -o $@ -shared -fPIC $^
@CONCLUDE@

View File

@ -6,19 +6,23 @@
#
@COMMENCE@
# Add include directory to the C preprocessor flags and the hdf5
# library to the library list.
# Add include directory to the C preprocessor flags and the h5test and hdf5
# libraries to the library list.
CPPFLAGS=-I. -I../src @CPPFLAGS@
LIBS=libh5test.a ../src/libhdf5.a @LIBS@
LIBS=../src/libhdf5.la @LIBS@
# These are our main targets. They should be listed in the order to be
# executed, generally most specific tests to least specific tests.
RUNTEST=$(LT_RUN)
TEST_PROGS=testhdf5 lheap ohdr stab gheap hyperslab istore bittests dtypes \
dsets cmpd_dset extend external links unlink big mtime fillval mount \
flush1 flush2 enum
TIMINGS=iopipe chunk ragged overhead
# The libh5test.a library provides common support code for the tests.
# The libh5test.a library provides common support code for the tests. We link
# this library statically because some systems can only link executables to
# a single shared library and libhdf5 is much bigger than libh5test.
LT_LINK_LIB=$(LT) --mode=link $(CC) -static
LIB=libh5test.a
LIB_SRC=h5test.c
LIB_OBJ=$(LIB_SRC:.c=.o)
@ -65,84 +69,84 @@ timings _timings: $(TIMINGS)
done;
# How to build the tests... They all depend on the test and hdf5 libraries.
$(TEST_PROGS): libh5test.a ../src/libhdf5.a
$(TEST_PROGS): $(LIB) ../src/libhdf5.la
TESTHDF5_OBJ=testhdf5.o tattr.o tfile.o tmeta.o trefer.o tselect.o th5s.o
testhdf5: $(TESTHDF5_OBJ)
$(CC) $(CFLAGS) -o $@ $(TESTHDF5_OBJ) $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ $(TESTHDF5_OBJ) $(LIB) $(LDFLAGS) $(LIBS)
lheap: lheap.o
$(CC) $(CFLAGS) -o $@ lheap.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ lheap.o $(LIB) $(LDFLAGS) $(LIBS)
ohdr: ohdr.o
$(CC) $(CFLAGS) -o $@ ohdr.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ ohdr.o $(LIB) $(LDFLAGS) $(LIBS)
stab: stab.o
$(CC) $(CFLAGS) -o $@ stab.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ stab.o $(LIB) $(LDFLAGS) $(LIBS)
gheap: gheap.o
$(CC) $(CFLAGS) -o $@ gheap.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ gheap.o $(LIB) $(LDFLAGS) $(LIBS)
dsets: dsets.o
$(CC) $(CFLAGS) -o $@ dsets.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ dsets.o $(LIB) $(LDFLAGS) $(LIBS)
bittests: bittests.o
$(CC) $(CFLAGS) -o $@ bittests.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ bittests.o $(LIB) $(LDFLAGS) $(LIBS)
dtypes: dtypes.o
$(CC) $(CFLAGS) -o $@ dtypes.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ dtypes.o $(LIB) $(LDFLAGS) $(LIBS)
hyperslab: hyperslab.o
$(CC) $(CFLAGS) -o $@ hyperslab.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ hyperslab.o $(LIB) $(LDFLAGS) $(LIBS)
istore: istore.o
$(CC) $(CFLAGS) -o $@ istore.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ istore.o $(LIB) $(LDFLAGS) $(LIBS)
cmpd_dset: cmpd_dset.o
$(CC) $(CFLAGS) -o $@ cmpd_dset.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ cmpd_dset.o $(LIB) $(LDFLAGS) $(LIBS)
extend: extend.o
$(CC) $(CFLAGS) -o $@ extend.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ extend.o $(LIB) $(LDFLAGS) $(LIBS)
external: external.o
$(CC) $(CFLAGS) -o $@ external.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ external.o $(LIB) $(LDFLAGS) $(LIBS)
iopipe: iopipe.o
$(CC) $(CFLAGS) -o $@ iopipe.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ iopipe.o $(LIB) $(LDFLAGS) $(LIBS)
big: big.o
$(CC) $(CFLAGS) -o $@ big.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ big.o $(LIB) $(LDFLAGS) $(LIBS)
links: links.o
$(CC) $(CFLAGS) -o $@ links.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ links.o $(LIB) $(LDFLAGS) $(LIBS)
chunk: chunk.o
$(CC) $(CFLAGS) -o $@ chunk.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ chunk.o $(LIB) $(LDFLAGS) $(LIBS)
mtime: mtime.o
$(CC) $(CFLAGS) -o $@ mtime.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ mtime.o $(LIB) $(LDFLAGS) $(LIBS)
ragged: ragged.o
$(CC) $(CFLAGS) -o $@ ragged.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ ragged.o $(LIB) $(LDFLAGS) $(LIBS)
unlink: unlink.o
$(CC) $(CFLAGS) -o $@ unlink.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ unlink.o $(LIB) $(LDFLAGS) $(LIBS)
overhead: overhead.o
$(CC) $(CFLAGS) -o $@ overhead.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ overhead.o $(LIB) $(LDFLAGS) $(LIBS)
fillval: fillval.o
$(CC) $(CFLAGS) -o $@ fillval.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ fillval.o $(LIB) $(LDFLAGS) $(LIBS)
mount: mount.o
$(CC) $(CFLAGS) -o $@ mount.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ mount.o $(LIB) $(LDFLAGS) $(LIBS)
flush1: flush1.o
$(CC) $(CFLAGS) -o $@ flush1.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ flush1.o $(LIB) $(LDFLAGS) $(LIBS)
flush2: flush2.o
$(CC) $(CFLAGS) -o $@ flush2.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ flush2.o $(LIB) $(LDFLAGS) $(LIBS)
enum: enum.o
$(CC) $(CFLAGS) -o $@ enum.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ enum.o $(LIB) $(LDFLAGS) $(LIBS)
@CONCLUDE@

View File

@ -9,7 +9,7 @@
# Add the include directory to the C preprocessor flags the the hdf5 library
# to the library list.
CPPFLAGS=-I. -I../src @CPPFLAGS@
LIBS=../src/libhdf5.a @LIBS@
LIBS=../src/libhdf5.la @LIBS@
# These tests are parallel
RUNTEST=$(RUNPARALLEL)
@ -27,9 +27,9 @@ TEST_OBJ=$(TEST_SRC:.c=.o)
PRIVATE_HDR=testphdf5.h
# How to build the tests... They all depend on the hdf5 library
$(TEST_PROGS): ../src/libhdf5.a
$(TEST_PROGS): ../src/libhdf5.la
testphdf5: $(TEST_OBJ)
$(CC) $(CFLAGS) -o $@ $(TEST_OBJ) $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ $(TEST_OBJ) $(LDFLAGS) $(LIBS)
@CONCLUDE@

View File

@ -6,16 +6,19 @@
#
@COMMENCE@
# Add include directory to the C preprocessor flags, add the -lh5tools to the
# libraries.
# Add include directory to the C preprocessor flags, add -lh5tools and
# -lhdf5 to the list of libraries.
CPPFLAGS=-I../src -I. @CPPFLAGS@
LIBS=../src/libhdf5.a libh5tools.a @LIBS@
LIBS=../src/libhdf5.la @LIBS@
# Test programs and scripts.
TEST_PROGS=
TEST_SCRIPTS=testh5dump.sh @TESTH5TOH4@
# These are our main targets: library and tools.
# These are our main targets: library and tools. We link this library
# statically because some systems can only link executables to a single
# shared library and libhdf5 is much bigger than libh5tools.
LT_LINK_LIB=$(LT) --mode=link $(CC) -static
LIB=libh5tools.a
PROGS=h5debug h5import h5ls h5repart h5dump @H5TOH4@
@ -33,28 +36,28 @@ TEST_SRC=
TEST_OBJ=$(TEST_SRC:.c=.o)
# Programs have to be built before they can be tested!
test _test: $(PROGS)
check test _test: $(PROGS)
# How to build the programs... They all depend on the hdf5 library and
# the tools library compiled in this directory.
$(PROGS): ../src/libhdf5.a $(LIB)
$(PROGS): $(LIB) ../src/libhdf5.la
h5debug: h5debug.o
$(CC) $(CFLAGS) -o $@ h5debug.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ h5debug.o $(LIB) $(LDFLAGS) $(LIBS)
h5import: h5import.o
$(CC) $(CFLAGS) -o $@ h5import.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ h5import.o $(LIB) $(LDFLAGS) $(LIBS)
h5ls: h5ls.o
$(CC) $(CFLAGS) -o $@ h5ls.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ h5ls.o $(LIB) $(LDFLAGS) $(LIBS)
h5repart: h5repart.o
$(CC) $(CFLAGS) -o $@ h5repart.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ h5repart.o $(LIB) $(LDFLAGS) $(LIBS)
h5dump: h5dump.o h5dumputil.o
$(CC) $(CFLAGS) -o $@ h5dump.o h5dumputil.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ h5dump.o h5dumputil.o $(LIB) $(LDFLAGS) $(LIBS)
h5toh4: h5toh4.o
$(CC) $(CFLAGS) -o $@ h5toh4.o $(LDFLAGS) $(LIBS)
$(LT_LINK_EXE) $(CFLAGS) -o $@ h5toh4.o $(LIB) $(LDFLAGS) $(LIBS)
@CONCLUDE@