Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/external/lgpl3/mpc/dist initial import of mpc 1.2.0. main c...



details:   https://anonhg.NetBSD.org/src/rev/67abe3f0032c
branches:  trunk
changeset: 955297:67abe3f0032c
user:      mrg <mrg%NetBSD.org@localhost>
date:      Sat Sep 26 07:54:54 2020 +0000

description:
initial import of mpc 1.2.0.  main changes are:

New functions:
  mpc_sum
  mpc_dot

Several functions are more robust with a reduced exponent range (for
example corresponding to IEEE 754 binary formats).

diffstat:

 external/lgpl3/mpc/dist/INSTALL                            |    399 +-
 external/lgpl3/mpc/dist/Makefile.am                        |      5 +-
 external/lgpl3/mpc/dist/Makefile.in                        |     68 +-
 external/lgpl3/mpc/dist/Makefile.vc                        |      4 +-
 external/lgpl3/mpc/dist/NEWS                               |      7 +
 external/lgpl3/mpc/dist/README                             |    106 +-
 external/lgpl3/mpc/dist/TODO                               |      6 +-
 external/lgpl3/mpc/dist/aclocal.m4                         |    195 +-
 external/lgpl3/mpc/dist/build-aux/ar-lib                   |    271 +
 external/lgpl3/mpc/dist/build-aux/compile                  |    348 +
 external/lgpl3/mpc/dist/build-aux/config.guess             |   1667 +
 external/lgpl3/mpc/dist/build-aux/config.sub               |   1793 +
 external/lgpl3/mpc/dist/build-aux/depcomp                  |    791 +
 external/lgpl3/mpc/dist/build-aux/install-sh               |    529 +
 external/lgpl3/mpc/dist/build-aux/ltmain.sh                |  11147 ++++++++++
 external/lgpl3/mpc/dist/build-aux/mdate-sh                 |    228 +
 external/lgpl3/mpc/dist/build-aux/missing                  |    215 +
 external/lgpl3/mpc/dist/build-aux/test-driver              |    148 +
 external/lgpl3/mpc/dist/build-aux/texinfo.tex              |  11614 +++++++++++
 external/lgpl3/mpc/dist/configure                          |    319 +-
 external/lgpl3/mpc/dist/configure.ac                       |     15 +-
 external/lgpl3/mpc/dist/doc/Makefile.in                    |     22 +-
 external/lgpl3/mpc/dist/doc/mpc.info                       |    Bin 
 external/lgpl3/mpc/dist/doc/mpc.texi                       |     53 +-
 external/lgpl3/mpc/dist/doc/stamp-vti                      |      8 +-
 external/lgpl3/mpc/dist/doc/version.texi                   |      8 +-
 external/lgpl3/mpc/dist/m4/mpc.m4                          |      6 +-
 external/lgpl3/mpc/dist/src/Makefile.am                    |     14 +-
 external/lgpl3/mpc/dist/src/Makefile.in                    |    434 +-
 external/lgpl3/mpc/dist/src/acos.c                         |     14 +-
 external/lgpl3/mpc/dist/src/asin.c                         |    227 +-
 external/lgpl3/mpc/dist/src/atan.c                         |     26 +-
 external/lgpl3/mpc/dist/src/div.c                          |     29 +-
 external/lgpl3/mpc/dist/src/dot.c                          |     88 +
 external/lgpl3/mpc/dist/src/exp.c                          |     17 +-
 external/lgpl3/mpc/dist/src/get_version.c                  |      4 +-
 external/lgpl3/mpc/dist/src/get_x.c                        |     22 +-
 external/lgpl3/mpc/dist/src/log10.c                        |     14 +-
 external/lgpl3/mpc/dist/src/mpc-impl.h                     |      6 +-
 external/lgpl3/mpc/dist/src/mpc.h                          |     12 +-
 external/lgpl3/mpc/dist/src/mul.c                          |     44 +-
 external/lgpl3/mpc/dist/src/pow.c                          |     51 +-
 external/lgpl3/mpc/dist/src/sin_cos.c                      |     35 +-
 external/lgpl3/mpc/dist/src/sqrt.c                         |     35 +-
 external/lgpl3/mpc/dist/src/sum.c                          |     43 +
 external/lgpl3/mpc/dist/src/tan.c                          |    172 +-
 external/lgpl3/mpc/dist/tests/Makefile.am                  |     18 +-
 external/lgpl3/mpc/dist/tests/Makefile.in                  |    584 +-
 external/lgpl3/mpc/dist/tests/div.dat                      |      8 +-
 external/lgpl3/mpc/dist/tests/mpc-tests.h                  |      4 +-
 external/lgpl3/mpc/dist/tests/pow_ui.dat                   |      4 +-
 external/lgpl3/mpc/dist/tests/sqrt.dat                     |      5 +
 external/lgpl3/mpc/dist/tests/tacos.c                      |     67 +
 external/lgpl3/mpc/dist/tests/tdiv.c                       |     40 +-
 external/lgpl3/mpc/dist/tests/tdot.c                       |     98 +
 external/lgpl3/mpc/dist/tests/tmul.c                       |     31 +-
 external/lgpl3/mpc/dist/tests/tpow.c                       |     35 +
 external/lgpl3/mpc/dist/tests/tsqrt.c                      |     36 +-
 external/lgpl3/mpc/dist/tests/tsum.c                       |     69 +
 external/lgpl3/mpc/dist/tests/ttan.c                       |     67 +-
 external/lgpl3/mpc/dist/tools/Makefile.am                  |      3 +-
 external/lgpl3/mpc/dist/tools/Makefile.in                  |     17 +-
 external/lgpl3/mpc/dist/tools/bench/Makefile.in            |     58 +-
 external/lgpl3/mpc/dist/tools/mpcheck/Makefile.am          |     31 +
 external/lgpl3/mpc/dist/tools/mpcheck/Makefile.in          |    639 +
 external/lgpl3/mpc/dist/tools/mpcheck/README               |      4 +
 external/lgpl3/mpc/dist/tools/mpcheck/mpcheck-double.c     |    244 +
 external/lgpl3/mpc/dist/tools/mpcheck/mpcheck-float.c      |    249 +
 external/lgpl3/mpc/dist/tools/mpcheck/mpcheck-float128.c   |    254 +
 external/lgpl3/mpc/dist/tools/mpcheck/mpcheck-longdouble.c |    237 +
 70 files changed, 33181 insertions(+), 880 deletions(-)

diffs (truncated from 36236 to 300 lines):

diff -r 9742fafe8a4a -r 67abe3f0032c external/lgpl3/mpc/dist/INSTALL
--- a/external/lgpl3/mpc/dist/INSTALL   Sat Sep 26 07:50:41 2020 +0000
+++ b/external/lgpl3/mpc/dist/INSTALL   Sat Sep 26 07:54:54 2020 +0000
@@ -1,101 +1,368 @@
-Copyright (C) INRIA 2003, 2005, 2007, 2008, 2009, 2010, 2011, 2012
+Installation Instructions
+*************************
 
-Copying and distribution of this file, with or without modification,
+   Copyright (C) 1994-1996, 1999-2002, 2004-2016 Free Software
+Foundation, Inc.
+
+   Copying and distribution of this file, with or without modification,
 are permitted in any medium without royalty provided the copyright
-notice and this notice are preserved. This file is offered as-is,
-without any warranty.
+notice and this notice are preserved.  This file is offered as-is,
+without warranty of any kind.
+
+Basic Installation
+==================
+
+   Briefly, the shell command './configure && make && make install'
+should configure, build, and install this package.  The following
+more-detailed instructions are generic; see the 'README' file for
+instructions specific to this package.  Some packages provide this
+'INSTALL' file but do not implement all of the features documented
+below.  The lack of an optional feature in a given package is not
+necessarily a bug.  More recommendations for GNU packages can be found
+in *note Makefile Conventions: (standards)Makefile Conventions.
 
+   The 'configure' shell script attempts to guess correct values for
+various system-dependent variables used during compilation.  It uses
+those values to create a 'Makefile' in each directory of the package.
+It may also create one or more '.h' files containing system-dependent
+definitions.  Finally, it creates a shell script 'config.status' that
+you can run in the future to recreate the current configuration, and a
+file 'config.log' containing compiler output (useful mainly for
+debugging 'configure').
+
+   It can also use an optional file (typically called 'config.cache' and
+enabled with '--cache-file=config.cache' or simply '-C') that saves the
+results of its tests to speed up reconfiguring.  Caching is disabled by
+default to prevent problems with accidental use of stale cache files.
+
+   If you need to do unusual things to compile the package, please try
+to figure out how 'configure' could check whether to do them, and mail
+diffs or instructions to the address given in the 'README' so they can
+be considered for the next release.  If you are using the cache, and at
+some point 'config.cache' contains results you don't want to keep, you
+may remove or edit it.
 
-                        Installing GNU MPC
-                        ==================
+   The file 'configure.ac' (or 'configure.in') is used to create
+'configure' by a program called 'autoconf'.  You need 'configure.ac' if
+you want to change it or regenerate 'configure' using a newer version of
+'autoconf'.
+
+   The simplest way to compile this package is:
 
-This is for the impatient, for deeper explanations see the chapter
-"Installing GNU MPC" in the Texinfo documentation (type 'info mpc.info').
+  1. 'cd' to the directory containing the package's source code and type
+     './configure' to configure the package for your system.
+
+     Running 'configure' might take a while.  While running, it prints
+     some messages telling which features it is checking for.
+
+  2. Type 'make' to compile the package.
+
+  3. Optionally, type 'make check' to run any self-tests that come with
+     the package, generally using the just-built uninstalled binaries.
 
-0. You first need to install GMP, the GNU Multiprecision Arithmetic Library,
-   see <http://gmplib.org/>, and GNU MPFR, see <http://www.mpfr.org>.
-   GNU MPC requires GMP version 5.0.0 or later
-   and GNU MPFR version 3.0.0 or later.
+  4. Type 'make install' to install the programs and any data files and
+     documentation.  When installing into a prefix owned by root, it is
+     recommended that the package be configured and built as a regular
+     user, and only the 'make install' phase executed with root
+     privileges.
+
+  5. Optionally, type 'make installcheck' to repeat any self-tests, but
+     this time using the binaries in their final installed location.
+     This target does not install anything.  Running this target as a
+     regular user, particularly if the prior 'make install' required
+     root privileges, verifies that the installation completed
+     correctly.
 
-1. In the directory of the GNU MPC archive, type
+  6. You can remove the program binaries and object files from the
+     source code directory by typing 'make clean'.  To also remove the
+     files that 'configure' created (so you can compile the package for
+     a different kind of computer), type 'make distclean'.  There is
+     also a 'make maintainer-clean' target, but that is intended mainly
+     for the package's developers.  If you use it, you may have to get
+     all sorts of other programs in order to regenerate files that came
+     with the distribution.
+
+  7. Often, you can also type 'make uninstall' to remove the installed
+     files again.  In practice, not all packages have tested that
+     uninstallation works correctly, even though it is required by the
+     GNU Coding Standards.
 
-      tar xzf mpc-1.1.0.tar.gz
-      cd mpc-1.1.0
-      ./configure
-      make
+  8. Some packages, particularly those that use Automake, provide 'make
+     distcheck', which can by used by developers to test that all other
+     targets like 'make install' and 'make uninstall' work correctly.
+     This target is generally not run by end users.
+
+Compilers and Options
+=====================
+
+   Some systems require unusual options for compilation or linking that
+the 'configure' script does not know about.  Run './configure --help'
+for details on some of the pertinent environment variables.
+
+   You can give 'configure' initial values for configuration parameters
+by setting variables in the command line or in the environment.  Here is
+an example:
+
+     ./configure CC=c99 CFLAGS=-g LIBS=-lposix
+
+   *Note Defining Variables::, for more details.
+
+Compiling For Multiple Architectures
+====================================
 
-   This assumes that GMP and GNU MPFR are installed in a directory searched
-   by default by the compiler. Otherwise, use --with-gmp=DIR or
-   --with-mpfr=DIR with ./configure (see the Texinfo documentation).
+   You can compile the package for more than one kind of computer at the
+same time, by placing the object files for each architecture in their
+own directory.  To do this, you can use GNU 'make'.  'cd' to the
+directory where you want the object files and executables to go and run
+the 'configure' script.  'configure' automatically checks for the source
+code in the directory that 'configure' is in and in '..'.  This is known
+as a "VPATH" build.
 
-2. You should run the test suite, type
+   With a non-GNU 'make', it is safer to compile the package for one
+architecture at a time in the source code directory.  After you have
+installed the package for one architecture, use 'make distclean' before
+reconfiguring for another architecture.
 
-      make check
+   On MacOS X 10.5 and later systems, you can create libraries and
+executables that work on multiple system types--known as "fat" or
+"universal" binaries--by specifying multiple '-arch' options to the
+compiler but only a single '-arch' option to the preprocessor.  Like
+this:
+
+     ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+                 CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
+                 CPP="gcc -E" CXXCPP="g++ -E"
 
-   If any error occurs, please report it on the mailing list
-   <mpc-discuss%lists.gforge.inria.fr@localhost>, or file a bug at the bug tracker
-   <https://gforge.inria.fr/tracker/?atid=607&group_id=131&func=browse> .
+   This is not guaranteed to produce working output in all cases, you
+may have to build one architecture at a time and combine the results
+using the 'lipo' tool if you have problems.
+
+Installation Names
+==================
 
-3. To install the GNU MPC library, type
+   By default, 'make install' installs the package's commands under
+'/usr/local/bin', include files under '/usr/local/include', etc.  You
+can specify an installation prefix other than '/usr/local' by giving
+'configure' the option '--prefix=PREFIX', where PREFIX must be an
+absolute file name.
 
-      make install
+   You can specify separate installation prefixes for
+architecture-specific files and architecture-independent files.  If you
+pass the option '--exec-prefix=PREFIX' to 'configure', the package uses
+PREFIX as the prefix for installing programs and libraries.
+Documentation and other data files still use the regular prefix.
 
-   By default, the files are copied into subdirectories of /usr/local.
-   You need write permissions on these directories, or pass an alternative
-   installation directory using the --prefix option to ./configure.
+   In addition, if you use an unusual directory layout you can give
+options like '--bindir=DIR' to specify different values for particular
+kinds of files.  Run 'configure --help' for a list of the directories
+you can set and what kinds of files go in them.  In general, the default
+for these options is expressed in terms of '${prefix}', so that
+specifying just '--prefix' will affect all of the other directory
+specifications that were not explicitly provided.
 
-4. You can optionally create documentation, type
+   The most portable way to affect installation locations is to pass the
+correct locations to 'configure'; however, many packages provide one or
+both of the following shortcuts of passing variable assignments to the
+'make install' command line to change installation locations without
+having to reconfigure or recompile.
 
-      make dvi
+   The first method involves providing an override variable for each
+affected directory.  For example, 'make install
+prefix=/alternate/directory' will choose an alternate location for all
+directory configuration variables that were expressed in terms of
+'${prefix}'.  Any directories that were specified during 'configure',
+but not in terms of '${prefix}', must each be overridden at install time
+for the entire installation to be relocated.  The approach of makefile
+variable overrides for each directory variable is required by the GNU
+Coding Standards, and ideally causes no recompilation.  However, some
+platforms have known limitations with the semantics of shared libraries
+that end up requiring recompilation when using this method, particularly
+noticeable in packages that use GNU Libtool.
 
-   or
+   The second method involves providing the 'DESTDIR' variable.  For
+example, 'make install DESTDIR=/alternate/directory' will prepend
+'/alternate/directory' before all installation names.  The approach of
+'DESTDIR' overrides is not required by the GNU Coding Standards, and
+does not work on platforms that have drive letters.  On the other hand,
+it does better at avoiding recompilation issues, and works well even
+when some directory options were not specified in terms of '${prefix}'
+at 'configure' time.
 
-      make ps
+Optional Features
+=================
+
+   If the package supports it, you can cause programs to be installed
+with an extra prefix or suffix on their names by giving 'configure' the
+option '--program-prefix=PREFIX' or '--program-suffix=SUFFIX'.
+
+   Some packages pay attention to '--enable-FEATURE' options to
+'configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to '--with-PACKAGE' options, where PACKAGE
+is something like 'gnu-as' or 'x' (for the X Window System).  The
+'README' should mention any '--enable-' and '--with-' options that the
+package recognizes.
 
-   This requires the Texinfo package (version 4.2 at least).
+   For packages that use the X Window System, 'configure' can usually
+find the X include and library files automatically, but if it doesn't,
+you can use the 'configure' options '--x-includes=DIR' and
+'--x-libraries=DIR' to specify their locations.
 
-In case of difficulties, please send a description of the problem to
-<mpc-discuss%lists.gforge.inria.fr@localhost>.
+   Some packages offer the ability to configure how verbose the
+execution of 'make' will be.  For these packages, running './configure
+--enable-silent-rules' sets the default to minimal output, which can be
+overridden with 'make V=1'; while running './configure
+--disable-silent-rules' sets the default to verbose, which can be
+overridden with 'make V=0'.
 
-##############################################################################
+Particular systems
+==================
+
+   On HP-UX, the default C compiler is not ANSI C compatible.  If GNU CC
+is not installed, it is recommended to use the following options in
+order to use an ANSI C compiler:
+
+     ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
+
+and if that doesn't work, install pre-built binaries of GCC for HP-UX.
 
-Note for AIX users:
-===================
+   HP-UX 'make' updates targets which have the same time stamps as their
+prerequisites, which makes it generally unusable when shipped generated
+files such as 'configure' are involved.  Use GNU 'make' instead.
+
+   On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
+parse its '<wchar.h>' header file.  The option '-nodtk' can be used as a
+workaround.  If GNU CC is not installed, it is therefore recommended to
+try
+
+     ./configure CC="cc"
+
+and if that doesn't work, try
+
+     ./configure CC="cc -nodtk"
+
+   On Solaris, don't put '/usr/ucb' early in your 'PATH'.  This
+directory contains several dysfunctional programs; working variants of
+these programs are available in '/usr/bin'.  So, if you need '/usr/ucb'
+in your 'PATH', put it _after_ '/usr/bin'.
+
+   On Haiku, software installed for all users goes in '/boot/common',
+not '/usr/local'.  It is recommended to use the following options:
 
-If GMP was built with the 64-bit ABI, before building and testing GNU MPC,
-it might be necessary to set the OBJECT_MODE environment variable to 64
-by, e.g.,
-   export OBJECT_MODE=64
-This has been tested with the C compiler IBM XL C/C++ Enterprise Edition
-V8.0 for AIX, version: 08.00.0000.0021, GMP 4.2.4 and GNU MPFR 2.4.1.



Home | Main Index | Thread Index | Old Index