W10 + Cygwin-3.0.7 + Gfortran

classic Classic list List threaded Threaded
16 messages Options
Reply | Threaded
Open this post in threaded view
|

W10 + Cygwin-3.0.7 + Gfortran

rih5342

New user here.

My goal is to compile and use gcc-gfortran-8.3.0.

I just made a fresh install of cygwin with the latest versions of GMP, MPFR,
and MPC.

After configuring gcc, config.log points out that GMP, MPFR, and MPC are not
there.

Q1) Why doesn't configure see the GMP that was installed by cygwin?

Q2) What's the difference between cygwin installing  GMP and my compiling
and installig GMP?

Thank you.



--
Sent from: http://gcc.1065356.n8.nabble.com/gcc-fortran-f719652.html
Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

jerry DeLisle-3
On 9/22/19 1:21 PM, rih5342 wrote:

>
> New user here.
>
> My goal is to compile and use gcc-gfortran-8.3.0.
>
> I just made a fresh install of cygwin with the latest versions of GMP, MPFR,
> and MPC.
>
> After configuring gcc, config.log points out that GMP, MPFR, and MPC are not
> there.
>
> Q1) Why doesn't configure see the GMP that was installed by cygwin?
>
> Q2) What's the difference between cygwin installing  GMP and my compiling
> and installig GMP?
>
> Thank you.
>

Usually you must also install packages such as libmpfr-devel or similar which
then installs the needed include files for the configure scripts to find.  These
.h files are needed to compile.

Sometimes its a bit tricky to find the packages.  I know with Cygwin, you can
scroll down through the list and find them.  Sometimes they are of the form
mpfr-devel or similar.

Regards,

Jerry
Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

Steve Kargl
In reply to this post by rih5342
On Sun, Sep 22, 2019 at 01:21:15PM -0700, rih5342 wrote:
>
> After configuring gcc, config.log points out that GMP, MPFR, and MPC are not
> there.
>
> Q1) Why doesn't configure see the GMP that was installed by cygwin?
>

Did you configure where to look for the libraries and headers?

../gcc/configure --help | grep gmp
  --with-gmp=PATH         specify prefix directory for the installed GMP
                          --with-gmp-include=PATH/include plus
                          --with-gmp-lib=PATH/lib
  --with-gmp-include=PATH specify directory for installed GMP include files
  --with-gmp-lib=PATH     specify directory for the installed GMP library
../gcc/configure --help | grep mpc
  --with-mpc=PATH         specify prefix directory for installed MPC package.
                          Equivalent to --with-mpc-include=PATH/include plus
                          --with-mpc-lib=PATH/lib
  --with-mpc-include=PATH specify directory for installed MPC include files
  --with-mpc-lib=PATH     specify directory for the installed MPC library
../gcc/configure --help | grep mpfr
  --with-mpfr=PATH        specify prefix directory for installed MPFR package.
                          Equivalent to --with-mpfr-include=PATH/include plus
                          --with-mpfr-lib=PATH/lib
  --with-mpfr-include=PATH
  --with-mpfr-lib=PATH    specify directory for the installed MPFR library

--
Steve
Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

Tobias Burnus-5
In reply to this post by rih5342
Hi,

On 9/22/19 10:21 PM, rih5342 wrote:
> After configuring gcc, config.log points out that GMP, MPFR, and MPC are not
> there.
> Q1) Why doesn't configure see the GMP that was installed by cygwin?

As mentioned by Jerry, distributions usually split packages in two
parts: The run-time library part (e.g. "gmp" or "libgmp" or likewise)
and the header files and static library which are used to compile files
(e.g. gmp-dev(el) or libgmp-dev(el)). I assume that Cygwin does likewise.

The run-time bits should automatically get installed if you install the
compiler; the "-devel" ones you need if you want to compiler GCC yourself.

If you compile GCC yourself, why don't you compile GCC 9 instead of GCC
8? If the distro (Cygwin) only has 8.3 and you don't need newer
features, GCC 8.3 is also fine – but you go through all the hassle and
compile yourself, there is no good reason not to use GCC 9.


> Q2) What's the difference between cygwin installing  GMP and my compiling
> and installig GMP?

"make install" installs both the run-time library (such as .dll, .so)
and the header files (*.h) and static libraries (.a).

As third option, one can also compile in tree the GMP/MPFR/MPC and ISL
libraries. (ISL: optional, but permits better loop analysis via
Graphite; needs to be turned on with compile-time flags as makes
compiling slower.)

To do so, the simplest is to run ./contrib/download_prerequisites – then
GCC will build the packages alongside the compiler. However, if you have
a recent Cygwin or Linux distribution, installing the distribution's
packages makes more sense. (And avoids some compile-time overhead.)

Tobias

Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

rih5342

All good input, very useful, thank you.

I've downloaded the latest versions of gmp, mpfr, mpc and isl.

gmp mpfr and mpc all configured and maked perfectly.

However, ISL 0.21 configure throws an error when trying to make directory
C:\cygwin64\lib\cc, when there already exists a symlink C:\cygwin64\lib\cpp

a cut and paste from config.log
 configure:14698: result: /lib/cpp
configure:14718: /lib/cpp  conftest.cpp
cpp: error: spawn: No such file or directory


a cut and paste from cpp symlink
  !<symlink>../bin/cpp.exe  


What now?

Thank you.



--
Sent from: http://gcc.1065356.n8.nabble.com/gcc-fortran-f719652.html
Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

Steve Kargl
On Fri, Sep 27, 2019 at 05:52:54AM -0700, rih5342 wrote:

> I've downloaded the latest versions of gmp, mpfr, mpc and isl.
>
> gmp mpfr and mpc all configured and maked perfectly.
>
> However, ISL 0.21 configure throws an error when trying to make directory
> C:\cygwin64\lib\cc, when there already exists a symlink C:\cygwin64\lib\cpp
>
> a cut and paste from config.log
>  configure:14698: result: /lib/cpp
> configure:14718: /lib/cpp  conftest.cpp
> cpp: error: spawn: No such file or directory
>
> a cut and paste from cpp symlink
>   !<symlink>../bin/cpp.exe  
>
> What now?
>

Contact the cygwin or isl developers.

--
Steve
Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

rih5342
New user here.

What is the URL for the cygwin developers?

Thank you.



--
Sent from: http://gcc.1065356.n8.nabble.com/gcc-fortran-f719652.html
Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

Steve Kargl
On Mon, Sep 30, 2019 at 01:27:40PM -0700, rih5342 wrote:
> New user here.
>
> What is the URL for the cygwin developers?
>

Google points to https://www.cygwin.com/

--
Steve
Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

rih5342
I'm aware of that page thank you.

However, I don't find a useful link where I can post a question.

I don't understand the mailing list,  which is why (right now) I am asking
on nabble.



I've tried building ISL  V19, V20, and V21, all with the same result.

-------------------------------------------------------------------------------
checking how to run the C++ preprocessor... /lib/cpp
configure: error: in `/___packages/isl/isl-0.21-build':
configure: error: C++ preprocessor "/lib/cpp" fails sanity check
-------------------------------------------------------------------------------
|     Syntax error
configure:14718: /lib/cpp  conftest.cpp
cpp: error: spawn: No such file or directory
-------------------------------------------------------------------------------

 
configure is trying to make directory cpp, when there is already an
executable cpp in that directory.

Thank you.



--
Sent from: http://gcc.1065356.n8.nabble.com/gcc-fortran-f719652.html
Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

rih5342

This is my ISL config.log


This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by isl configure 0.21, which was
generated by GNU Autoconf 2.69.  Invocation command line was

  $ ../isl-0.21/configure --build=x86_64-pc-cygwin --host=x86_64-pc-cygwin
--target=x86_64-pc-cygwin --prefix=/usr --cache-file=config.cache

## --------- ##
## Platform. ##
## --------- ##

hostname = LDY8B7CF4
uname -m = x86_64
uname -r = 3.0.7(0.338/5/3)
uname -s = CYGWIN_NT-10.0
uname -v = 2019-04-30 18:08

/usr/bin/uname -p = unknown
/bin/uname -X     = unknown

/bin/arch              = x86_64
/usr/bin/arch -k       = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo      = unknown
/bin/machine           = unknown
/usr/bin/oslevel       = unknown
/bin/universe          = unknown

PATH: /usr/local/bin
PATH: /usr/bin
PATH: /cygdrive/c/Program Files/Common Files/ETAS/3rdParty4.0
PATH: /cygdrive/c/Program Files (x86)/Common Files/ETAS/3rdParty4.0
PATH: /cygdrive/c/Program Files (x86)/Common Files/Oracle/Java/javapath
PATH: /cygdrive/c/WINDOWS/system32
PATH: /cygdrive/c/WINDOWS
PATH: /cygdrive/c/WINDOWS/System32/Wbem
PATH: /cygdrive/c/WINDOWS/System32/WindowsPowerShell/v1.0
PATH: /cygdrive/c/WINDOWS/System32/OpenSSH
PATH: /cygdrive/c/Program Files/7-Zip
PATH: /cygdrive/c/Program Files/MATLAB/R2016b/runtime/win64
PATH: /cygdrive/c/Program Files/MATLAB/R2016b/bin
PATH: /cygdrive/c/Program Files/MATLAB/R2016b/polyspace/bin
PATH: /cygdrive/c/Program Files (x86)/Common Files/ETAS/BoostV1440/bin
PATH: /cygdrive/c/Program
Files/Siemens/Teamcenter12.1/Visualization/Products/Mockup/ClearanceDB
PATH: /cygdrive/c/Program Files/MATLAB/R2015b64/runtime/win64
PATH: /cygdrive/c/Program Files/MATLAB/R2015b64/bin
PATH: /cygdrive/c/Program Files/MATLAB/R2015b64/polyspace/bin
PATH: %GTIHOME%/bin
PATH: /cygdrive/c/Users/rih2wm/AppData/Local/Microsoft/WindowsApps


## ----------- ##
## Core tests. ##
## ----------- ##

configure:2749: loading site script /usr/share/config.site
| # This is the config.site file to satisfy FHS defaults when installing
below
| # /usr.
| #
| # You may override this file by your config.site using the CONFIG_SITE env
| # variable.
|
| if test -n "$host"; then
|     # skip when cross-compiling
|     return 0
| fi
|
| if test "$prefix" = /usr \
|    || { test "$prefix" = NONE && test "$ac_default_prefix" = /usr ; }
| then
|     test "$sysconfdir" = '${prefix}/etc' && sysconfdir=/etc || :
|     test "$sharedstatedir" = '${prefix}/com' && sharedstatedir=/var || :
|     test "$localstatedir" = '${prefix}/var' && localstatedir=/var || :
| fi
configure:2764: loading cache config.cache
configure:2891: checking for a BSD-compatible install
configure:2959: result: /usr/bin/install -c
configure:2970: checking whether build environment is sane
configure:3025: result: yes
configure:3176: checking for a thread-safe mkdir -p
configure:3215: result: /usr/bin/mkdir -p
configure:3222: checking for gawk
configure:3238: found /usr/bin/gawk
configure:3249: result: gawk
configure:3260: checking whether make sets $(MAKE)
configure:3282: result: yes
configure:3311: checking whether make supports nested variables
configure:3328: result: yes
configure:3465: checking whether make supports nested variables
configure:3482: result: yes
configure:3516: checking for x86_64-pc-cygwin-gcc
configure:3532: found /usr/bin/x86_64-pc-cygwin-gcc
configure:3543: result: x86_64-pc-cygwin-gcc
configure:3812: checking for C compiler version
configure:3821: x86_64-pc-cygwin-gcc --version >&5
x86_64-pc-cygwin-gcc (GCC) 7.4.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:3832: $? = 0
configure:3821: x86_64-pc-cygwin-gcc -v >&5
Using built-in specs.
COLLECT_GCC=x86_64-pc-cygwin-gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-cygwin/7.4.0/lto-wrapper.exe
Target: x86_64-pc-cygwin
Configured with:
/cygdrive/i/szsz/tmpp/gcc/gcc-7.4.0-1.x86_64/src/gcc-7.4.0/configure
--srcdir=/cygdrive/i/szsz/tmpp/gcc/gcc-7.4.0-1.x86_64/src/gcc-7.4.0
--prefix=/usr --exec-prefix=/usr --localstatedir=/var --sysconfdir=/etc
--docdir=/usr/share/doc/gcc --htmldir=/usr/share/doc/gcc/html -C
--build=x86_64-pc-cygwin --host=x86_64-pc-cygwin --target=x86_64-pc-cygwin
--without-libiconv-prefix --without-libintl-prefix --libexecdir=/usr/lib
--enable-shared --enable-shared-libgcc --enable-static
--enable-version-specific-runtime-libs --enable-bootstrap
--enable-__cxa_atexit --with-dwarf2 --with-tune=generic
--enable-languages=ada,c,c++,fortran,lto,objc,obj-c++ --enable-graphite
--enable-threads=posix --enable-libatomic --enable-libcilkrts
--enable-libgomp --enable-libitm --enable-libquadmath
--enable-libquadmath-support --disable-libssp --enable-libada
--disable-symvers --with-gnu-ld --with-gnu-as
--with-cloog-include=/usr/include/cloog-isl --without-libiconv-prefix
--without-libintl-prefix --with-system-zlib --enable-linker-build-id
--with-default-libstdcxx-abi=gcc4-compatible
--enable-libstdcxx-filesystem-ts
Thread model: posix
gcc version 7.4.0 (GCC)
configure:3832: $? = 0
configure:3821: x86_64-pc-cygwin-gcc -V >&5
x86_64-pc-cygwin-gcc: error: unrecognized command line option '-V'
x86_64-pc-cygwin-gcc: fatal error: no input files
compilation terminated.
configure:3832: $? = 1
configure:3821: x86_64-pc-cygwin-gcc -qversion >&5
x86_64-pc-cygwin-gcc: error: unrecognized command line option '-qversion';
did you mean '--version'?
x86_64-pc-cygwin-gcc: fatal error: no input files
compilation terminated.
configure:3832: $? = 1
configure:3852: checking whether the C compiler works
configure:3874: x86_64-pc-cygwin-gcc    conftest.c  >&5
configure:3878: $? = 0
configure:3926: result: yes
configure:3929: checking for C compiler default output file name
configure:3931: result: a.exe
configure:3937: checking for suffix of executables
configure:3944: x86_64-pc-cygwin-gcc -o conftest.exe    conftest.c  >&5
configure:3948: $? = 0
configure:3970: result: .exe
configure:3992: checking whether we are cross compiling
configure:4000: x86_64-pc-cygwin-gcc -o conftest.exe    conftest.c  >&5
configure:4004: $? = 0
configure:4011: ./conftest.exe
configure:4015: $? = 0
configure:4030: result: no
configure:4035: checking for suffix of object files
configure:4057: x86_64-pc-cygwin-gcc -c   conftest.c >&5
configure:4061: $? = 0
configure:4082: result: o
configure:4086: checking whether we are using the GNU C compiler
configure:4105: x86_64-pc-cygwin-gcc -c   conftest.c >&5
configure:4105: $? = 0
configure:4114: result: yes
configure:4123: checking whether x86_64-pc-cygwin-gcc accepts -g
configure:4143: x86_64-pc-cygwin-gcc -c -g  conftest.c >&5
configure:4143: $? = 0
configure:4184: result: yes
configure:4201: checking for x86_64-pc-cygwin-gcc option to accept ISO C89
configure:4264: x86_64-pc-cygwin-gcc  -c -g -O2  conftest.c >&5
configure:4264: $? = 0
configure:4277: result: none needed
configure:4302: checking whether x86_64-pc-cygwin-gcc understands -c and -o
together
configure:4324: x86_64-pc-cygwin-gcc -c conftest.c -o conftest2.o
configure:4327: $? = 0
configure:4324: x86_64-pc-cygwin-gcc -c conftest.c -o conftest2.o
configure:4327: $? = 0
configure:4339: result: yes
configure:4367: checking for style of include used by make
configure:4395: result: GNU
configure:4421: checking dependency style of x86_64-pc-cygwin-gcc
configure:4532: result: gcc3
configure:4561: checking for x86_64-pc-cygwin-g++
configure:4591: result: no
configure:4561: checking for x86_64-pc-cygwin-c++
configure:4591: result: no
configure:4561: checking for x86_64-pc-cygwin-gpp
configure:4591: result: no
configure:4561: checking for x86_64-pc-cygwin-aCC
configure:4591: result: no
configure:4561: checking for x86_64-pc-cygwin-CC
configure:4591: result: no
configure:4561: checking for x86_64-pc-cygwin-cxx
configure:4591: result: no
configure:4561: checking for x86_64-pc-cygwin-cc++
configure:4591: result: no
configure:4561: checking for x86_64-pc-cygwin-cl.exe
configure:4591: result: no
configure:4561: checking for x86_64-pc-cygwin-FCC
configure:4591: result: no
configure:4561: checking for x86_64-pc-cygwin-KCC
configure:4591: result: no
configure:4561: checking for x86_64-pc-cygwin-RCC
configure:4591: result: no
configure:4561: checking for x86_64-pc-cygwin-xlC_r
configure:4591: result: no
configure:4561: checking for x86_64-pc-cygwin-xlC
configure:4591: result: no
configure:4605: checking for g++
configure:4635: result: no
configure:4605: checking for c++
configure:4635: result: no
configure:4605: checking for gpp
configure:4635: result: no
configure:4605: checking for aCC
configure:4635: result: no
configure:4605: checking for CC
configure:4621: found /usr/bin/CC
configure:4632: result: CC
configure:4659: checking for C++ compiler version
configure:4668: CC --version >&5
CC (GCC) 7.4.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

configure:4679: $? = 0
configure:4668: CC -v >&5
Using built-in specs.
COLLECT_GCC=CC
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-cygwin/7.4.0/lto-wrapper.exe
Target: x86_64-pc-cygwin
Configured with:
/cygdrive/i/szsz/tmpp/gcc/gcc-7.4.0-1.x86_64/src/gcc-7.4.0/configure
--srcdir=/cygdrive/i/szsz/tmpp/gcc/gcc-7.4.0-1.x86_64/src/gcc-7.4.0
--prefix=/usr --exec-prefix=/usr --localstatedir=/var --sysconfdir=/etc
--docdir=/usr/share/doc/gcc --htmldir=/usr/share/doc/gcc/html -C
--build=x86_64-pc-cygwin --host=x86_64-pc-cygwin --target=x86_64-pc-cygwin
--without-libiconv-prefix --without-libintl-prefix --libexecdir=/usr/lib
--enable-shared --enable-shared-libgcc --enable-static
--enable-version-specific-runtime-libs --enable-bootstrap
--enable-__cxa_atexit --with-dwarf2 --with-tune=generic
--enable-languages=ada,c,c++,fortran,lto,objc,obj-c++ --enable-graphite
--enable-threads=posix --enable-libatomic --enable-libcilkrts
--enable-libgomp --enable-libitm --enable-libquadmath
--enable-libquadmath-support --disable-libssp --enable-libada
--disable-symvers --with-gnu-ld --with-gnu-as
--with-cloog-include=/usr/include/cloog-isl --without-libiconv-prefix
--without-libintl-prefix --with-system-zlib --enable-linker-build-id
--with-default-libstdcxx-abi=gcc4-compatible
--enable-libstdcxx-filesystem-ts
Thread model: posix
gcc version 7.4.0 (GCC)
configure:4679: $? = 0
configure:4668: CC -V >&5
CC: error: unrecognized command line option '-V'
CC: fatal error: no input files
compilation terminated.
configure:4679: $? = 1
configure:4668: CC -qversion >&5
CC: error: unrecognized command line option '-qversion'; did you mean
'--version'?
CC: fatal error: no input files
compilation terminated.
configure:4679: $? = 1
configure:4683: checking whether we are using the GNU C++ compiler
configure:4702: CC -c   conftest.cpp >&5
CC: error: spawn: No such file or directory
configure:4702: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| /* end confdefs.h.  */
|
| int
| main ()
| {
| #ifndef __GNUC__
|        choke me
| #endif
|
|   ;
|   return 0;
| }
configure:4711: result: no
configure:4720: checking whether CC accepts -g
configure:4740: CC -c -g  conftest.cpp >&5
CC: error: spawn: No such file or directory
configure:4740: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| /* end confdefs.h.  */
|
| int
| main ()
| {
|
|   ;
|   return 0;
| }
configure:4755: CC -c   conftest.cpp >&5
CC: error: spawn: No such file or directory
configure:4755: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| /* end confdefs.h.  */
|
| int
| main ()
| {
|
|   ;
|   return 0;
| }
configure:4771: CC -c -g  conftest.cpp >&5
CC: error: spawn: No such file or directory
configure:4771: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| /* end confdefs.h.  */
|
| int
| main ()
| {
|
|   ;
|   return 0;
| }
configure:4781: result: no
configure:4806: checking dependency style of CC
configure:4917: result: gcc3
configure:4935: checking for C compiler vendor
configure:4959: x86_64-pc-cygwin-gcc -c -g -O2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:17:7: error: 'thisisanerror' undeclared (first use in this
function)
       thisisanerror;
       ^~~~~~~~~~~~~
conftest.c:17:7: note: each undeclared identifier is reported only once for
each function it appears in
configure:4959: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| /* end confdefs.h.  */
|
| int
| main ()
| {
|
| #if !(defined(__ICC) || defined(__ECC) || defined(__INTEL_COMPILER))
|       thisisanerror;
| #endif
|
|   ;
|   return 0;
| }
configure:4959: x86_64-pc-cygwin-gcc -c -g -O2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:17:7: error: 'thisisanerror' undeclared (first use in this
function)
       thisisanerror;
       ^~~~~~~~~~~~~
conftest.c:17:7: note: each undeclared identifier is reported only once for
each function it appears in
configure:4959: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| /* end confdefs.h.  */
|
| int
| main ()
| {
|
| #if !(defined(__xlc__) || defined(__xlC__) || defined(__IBMC__) ||
defined(__IBMCPP__))
|       thisisanerror;
| #endif
|
|   ;
|   return 0;
| }
configure:4959: x86_64-pc-cygwin-gcc -c -g -O2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:17:7: error: 'thisisanerror' undeclared (first use in this
function)
       thisisanerror;
       ^~~~~~~~~~~~~
conftest.c:17:7: note: each undeclared identifier is reported only once for
each function it appears in
configure:4959: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| /* end confdefs.h.  */
|
| int
| main ()
| {
|
| #if !(defined(__PATHCC__) || defined(__PATHSCALE__))
|       thisisanerror;
| #endif
|
|   ;
|   return 0;
| }
configure:4959: x86_64-pc-cygwin-gcc -c -g -O2  conftest.c >&5
conftest.c: In function 'main':
conftest.c:17:7: error: 'thisisanerror' undeclared (first use in this
function)
       thisisanerror;
       ^~~~~~~~~~~~~
conftest.c:17:7: note: each undeclared identifier is reported only once for
each function it appears in
configure:4959: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| /* end confdefs.h.  */
|
| int
| main ()
| {
|
| #if !(defined(__clang__))
|       thisisanerror;
| #endif
|
|   ;
|   return 0;
| }
configure:4959: x86_64-pc-cygwin-gcc -c -g -O2  conftest.c >&5
configure:4959: $? = 0
configure:4966: result: gnu
configure:4973: checking build system type
configure:4987: result: x86_64-pc-cygwin
configure:5007: checking host system type
configure:5020: result: x86_64-pc-cygwin
configure:5296: checking whether C compiler accepts -malign-double
configure:5315: x86_64-pc-cygwin-gcc -c -malign-double  conftest.c >&5
configure:5315: $? = 0
configure:5325: result: yes
configure:5335: checking whether C compiler accepts -fstrict-aliasing
configure:5354: x86_64-pc-cygwin-gcc -c -fstrict-aliasing  conftest.c >&5
configure:5354: $? = 0
configure:5364: result: yes
configure:5374: checking whether C compiler accepts -ffast-math
configure:5393: x86_64-pc-cygwin-gcc -c -ffast-math  conftest.c >&5
configure:5393: $? = 0
configure:5403: result: yes
configure:5424: checking for gcc architecture flag
configure:5426: result:
configure:5448: checking for x86 cpuid 0 output
configure:5477: x86_64-pc-cygwin-gcc -o conftest.exe -O3
-fomit-frame-pointer -malign-double -fstrict-aliasing -ffast-math  
conftest.c  >&5
configure:5477: $? = 0
configure:5477: ./conftest.exe
configure:5477: $? = 0
configure:5487: result: 16:756e6547:6c65746e:49656e69
configure:5503: checking for x86 cpuid 1 output
configure:5532: x86_64-pc-cygwin-gcc -o conftest.exe -O3
-fomit-frame-pointer -malign-double -fstrict-aliasing -ffast-math  
conftest.c  >&5
configure:5532: $? = 0
configure:5532: ./conftest.exe
configure:5532: $? = 0
configure:5542: result: 806e9:3100800:7ffafbff:bfebfbff
configure:5756: checking whether C compiler accepts -march=pentiumpro
configure:5771: x86_64-pc-cygwin-gcc -c -march=pentiumpro  conftest.c >&5
cc1: error: CPU you selected does not support x86-64 instruction set
configure:5771: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| /* end confdefs.h.  */
|
| int
| main ()
| {
|
|   ;
|   return 0;
| }
configure:5779: result: no
configure:5756: checking whether C compiler accepts -mcpu=pentiumpro
configure:5771: x86_64-pc-cygwin-gcc -c -mcpu=pentiumpro  conftest.c >&5
x86_64-pc-cygwin-gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or
'-march=' instead
cc1: error: CPU you selected does not support x86-64 instruction set
configure:5771: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| /* end confdefs.h.  */
|
| int
| main ()
| {
|
|   ;
|   return 0;
| }
configure:5779: result: no
configure:5756: checking whether C compiler accepts -mpentiumpro
configure:5771: x86_64-pc-cygwin-gcc -c -mpentiumpro  conftest.c >&5
x86_64-pc-cygwin-gcc: error: unrecognized command line option '-mpentiumpro'
configure:5771: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| /* end confdefs.h.  */
|
| int
| main ()
| {
|
|   ;
|   return 0;
| }
configure:5779: result: no
configure:5796: checking for gcc architecture flag
configure:5798: result: unknown
configure:5830: checking whether C compiler accepts -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math
configure:5845: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:5845: $? = 0
configure:5853: result: yes
configure:5873: checking whether the compiler supports function
__attribute__((__warn_unused_result__))
configure:5891: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:5891: $? = 0
configure:5898: result: yes
configure:5907: checking for __attribute__
configure:5929: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:5929: $? = 0
configure:5938: result: yes
configure:5961: checking whether CC supports C++11 features by default
configure:6255: CC -c   conftest.cpp >&5
CC: error: spawn: No such file or directory
configure:6255: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| /* end confdefs.h.  */
|
|
| // If the compiler admits that it is not ready for C++11, why torture it?
| // Hopefully, this will speed up the test.
|
| #ifndef __cplusplus
|
| #error "This is not a C++ compiler"
|
| #elif __cplusplus < 201103L
|
| #error "This is not a C++11 compiler"
|
| #else
|
| namespace cxx11
| {
|
|   namespace test_static_assert
|   {
|
|     template <typename T>
|     struct check
|     {
|       static_assert(sizeof(int) <= sizeof(T), "not big enough");
|     };
|
|   }
|
|   namespace test_final_override
|   {
|
|     struct Base
|     {
|       virtual void f() {}
|     };
|
|     struct Derived : public Base
|     {
|       virtual void f() override {}
|     };
|
|   }
|
|   namespace test_double_right_angle_brackets
|   {
|
|     template < typename T >
|     struct check {};
|
|     typedef check<void> single_type;
|     typedef check<check&lt;void>> double_type;
|     typedef check<check&lt;check&lt;void>>> triple_type;
|     typedef check<check&lt;check&lt;check&lt;void>>>> quadruple_type;
|
|   }
|
|   namespace test_decltype
|   {
|
|     int
|     f()
|     {
|       int a = 1;
|       decltype(a) b = 2;
|       return a + b;
|     }
|
|   }
|
|   namespace test_type_deduction
|   {
|
|     template < typename T1, typename T2 >
|     struct is_same
|     {
|       static const bool value = false;
|     };
|
|     template < typename T >
|     struct is_same<T, T>
|     {
|       static const bool value = true;
|     };
|
|     template < typename T1, typename T2 >
|     auto
|     add(T1 a1, T2 a2) -> decltype(a1 + a2)
|     {
|       return a1 + a2;
|     }
|
|     int
|     test(const int c, volatile int v)
|     {
|       static_assert(is_same<int, decltype(0)>::value == true, "");
|       static_assert(is_same<int, decltype(c)>::value == false, "");
|       static_assert(is_same<int, decltype(v)>::value == false, "");
|       auto ac = c;
|       auto av = v;
|       auto sumi = ac + av + 'x';
|       auto sumf = ac + av + 1.0;
|       static_assert(is_same<int, decltype(ac)>::value == true, "");
|       static_assert(is_same<int, decltype(av)>::value == true, "");
|       static_assert(is_same<int, decltype(sumi)>::value == true, "");
|       static_assert(is_same<int, decltype(sumf)>::value == false, "");
|       static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
|       return (sumf > 0.0) ? sumi : add(c, v);
|     }
|
|   }
|
|   namespace test_noexcept
|   {
|
|     int f() { return 0; }
|     int g() noexcept { return 0; }
|
|     static_assert(noexcept(f()) == false, "");
|     static_assert(noexcept(g()) == true, "");
|
|   }
|
|   namespace test_constexpr
|   {
|
|     template < typename CharT >
|     unsigned long constexpr
|     strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
|     {
|       return *s ? strlen_c_r(s + 1, acc + 1) : acc;
|     }
|
|     template < typename CharT >
|     unsigned long constexpr
|     strlen_c(const CharT *const s) noexcept
|     {
|       return strlen_c_r(s, 0UL);
|     }
|
|     static_assert(strlen_c("") == 0UL, "");
|     static_assert(strlen_c("1") == 1UL, "");
|     static_assert(strlen_c("example") == 7UL, "");
|     static_assert(strlen_c("another\0example") == 7UL, "");
|
|   }
|
|   namespace test_rvalue_references
|   {
|
|     template < int N >
|     struct answer
|     {
|       static constexpr int value = N;
|     };
|
|     answer<1> f(int&)       { return answer<1>(); }
|     answer<2> f(const int&) { return answer<2>(); }
|     answer<3> f(int&&)      { return answer<3>(); }
|
|     void
|     test()
|     {
|       int i = 0;
|       const int c = 0;
|       static_assert(decltype(f(i))::value == 1, "");
|       static_assert(decltype(f(c))::value == 2, "");
|       static_assert(decltype(f(0))::value == 3, "");
|     }
|
|   }
|
|   namespace test_uniform_initialization
|   {
|
|     struct test
|     {
|       static const int zero {};
|       static const int one {1};
|     };
|
|     static_assert(test::zero == 0, "");
|     static_assert(test::one == 1, "");
|
|   }
|
|   namespace test_lambdas
|   {
|
|     void
|     test1()
|     {
|       auto lambda1 = [](){};
|       auto lambda2 = lambda1;
|       lambda1();
|       lambda2();
|     }
|
|     int
|     test2()
|     {
|       auto a = [](int i, int j){ return i + j; }(1, 2);
|       auto b = []() -> int { return '0'; }();
|       auto c = [=](){ return a + b; }();
|       auto d = [&](){ return c; }();
|       auto e = [a, &b](int x) mutable {
|         const auto identity = [](int y){ return y; };
|         for (auto i = 0; i < a; ++i)
|           a += b--;
|         return x + identity(a + b);
|       }(0);
|       return a + b + c + d + e;
|     }
|
|     int
|     test3()
|     {
|       const auto nullary = [](){ return 0; };
|       const auto unary = [](int x){ return x; };
|       using nullary_t = decltype(nullary);
|       using unary_t = decltype(unary);
|       const auto higher1st = [](nullary_t f){ return f(); };
|       const auto higher2nd = [unary](nullary_t f1){
|         return [unary, f1](unary_t f2){ return f2(unary(f1())); };
|       };
|       return higher1st(nullary) + higher2nd(nullary)(unary);
|     }
|
|   }
|
|   namespace test_variadic_templates
|   {
|
|     template <int...>
|     struct sum;
|
|     template <int N0, int... N1toN>
|     struct sum<N0, N1toN...>
|     {
|       static constexpr auto value = N0 + sum<N1toN...>::value;
|     };
|
|     template <>
|     struct sum<>
|     {
|       static constexpr auto value = 0;
|     };
|
|     static_assert(sum<>::value == 0, "");
|     static_assert(sum<1>::value == 1, "");
|     static_assert(sum<23>::value == 23, "");
|     static_assert(sum<1, 2>::value == 3, "");
|     static_assert(sum<5, 5, 11>::value == 21, "");
|     static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
|
|   }
|
|   //
http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
|   // Clang 3.1 fails with headers of libstd++ 4.8.3 when using
std::function
|   // because of this.
|   namespace test_template_alias_sfinae
|   {
|
|     struct foo {};
|
|     template<typename T>
|     using member = typename T::member_type;
|
|     template<typename T>
|     void func(...) {}
|
|     template<typename T>
|     void func(member<T>*) {}
|
|     void test();
|
|     void test() { func<foo>(0); }
|
|   }
|
| }  // namespace cxx11
|
| #endif  // __cplusplus >= 201103L
|
|
|
configure:6262: result: no
configure:6274: checking whether CC supports C++11 features with -std=c++11
configure:6570: CC -std=c++11 -c   conftest.cpp >&5
CC: error: spawn: No such file or directory
configure:6570: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| /* end confdefs.h.  */
|
|
| // If the compiler admits that it is not ready for C++11, why torture it?
| // Hopefully, this will speed up the test.
|
| #ifndef __cplusplus
|
| #error "This is not a C++ compiler"
|
| #elif __cplusplus < 201103L
|
| #error "This is not a C++11 compiler"
|
| #else
|
| namespace cxx11
| {
|
|   namespace test_static_assert
|   {
|
|     template <typename T>
|     struct check
|     {
|       static_assert(sizeof(int) <= sizeof(T), "not big enough");
|     };
|
|   }
|
|   namespace test_final_override
|   {
|
|     struct Base
|     {
|       virtual void f() {}
|     };
|
|     struct Derived : public Base
|     {
|       virtual void f() override {}
|     };
|
|   }
|
|   namespace test_double_right_angle_brackets
|   {
|
|     template < typename T >
|     struct check {};
|
|     typedef check<void> single_type;
|     typedef check<check&lt;void>> double_type;
|     typedef check<check&lt;check&lt;void>>> triple_type;
|     typedef check<check&lt;check&lt;check&lt;void>>>> quadruple_type;
|
|   }
|
|   namespace test_decltype
|   {
|
|     int
|     f()
|     {
|       int a = 1;
|       decltype(a) b = 2;
|       return a + b;
|     }
|
|   }
|
|   namespace test_type_deduction
|   {
|
|     template < typename T1, typename T2 >
|     struct is_same
|     {
|       static const bool value = false;
|     };
|
|     template < typename T >
|     struct is_same<T, T>
|     {
|       static const bool value = true;
|     };
|
|     template < typename T1, typename T2 >
|     auto
|     add(T1 a1, T2 a2) -> decltype(a1 + a2)
|     {
|       return a1 + a2;
|     }
|
|     int
|     test(const int c, volatile int v)
|     {
|       static_assert(is_same<int, decltype(0)>::value == true, "");
|       static_assert(is_same<int, decltype(c)>::value == false, "");
|       static_assert(is_same<int, decltype(v)>::value == false, "");
|       auto ac = c;
|       auto av = v;
|       auto sumi = ac + av + 'x';
|       auto sumf = ac + av + 1.0;
|       static_assert(is_same<int, decltype(ac)>::value == true, "");
|       static_assert(is_same<int, decltype(av)>::value == true, "");
|       static_assert(is_same<int, decltype(sumi)>::value == true, "");
|       static_assert(is_same<int, decltype(sumf)>::value == false, "");
|       static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
|       return (sumf > 0.0) ? sumi : add(c, v);
|     }
|
|   }
|
|   namespace test_noexcept
|   {
|
|     int f() { return 0; }
|     int g() noexcept { return 0; }
|
|     static_assert(noexcept(f()) == false, "");
|     static_assert(noexcept(g()) == true, "");
|
|   }
|
|   namespace test_constexpr
|   {
|
|     template < typename CharT >
|     unsigned long constexpr
|     strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
|     {
|       return *s ? strlen_c_r(s + 1, acc + 1) : acc;
|     }
|
|     template < typename CharT >
|     unsigned long constexpr
|     strlen_c(const CharT *const s) noexcept
|     {
|       return strlen_c_r(s, 0UL);
|     }
|
|     static_assert(strlen_c("") == 0UL, "");
|     static_assert(strlen_c("1") == 1UL, "");
|     static_assert(strlen_c("example") == 7UL, "");
|     static_assert(strlen_c("another\0example") == 7UL, "");
|
|   }
|
|   namespace test_rvalue_references
|   {
|
|     template < int N >
|     struct answer
|     {
|       static constexpr int value = N;
|     };
|
|     answer<1> f(int&)       { return answer<1>(); }
|     answer<2> f(const int&) { return answer<2>(); }
|     answer<3> f(int&&)      { return answer<3>(); }
|
|     void
|     test()
|     {
|       int i = 0;
|       const int c = 0;
|       static_assert(decltype(f(i))::value == 1, "");
|       static_assert(decltype(f(c))::value == 2, "");
|       static_assert(decltype(f(0))::value == 3, "");
|     }
|
|   }
|
|   namespace test_uniform_initialization
|   {
|
|     struct test
|     {
|       static const int zero {};
|       static const int one {1};
|     };
|
|     static_assert(test::zero == 0, "");
|     static_assert(test::one == 1, "");
|
|   }
|
|   namespace test_lambdas
|   {
|
|     void
|     test1()
|     {
|       auto lambda1 = [](){};
|       auto lambda2 = lambda1;
|       lambda1();
|       lambda2();
|     }
|
|     int
|     test2()
|     {
|       auto a = [](int i, int j){ return i + j; }(1, 2);
|       auto b = []() -> int { return '0'; }();
|       auto c = [=](){ return a + b; }();
|       auto d = [&](){ return c; }();
|       auto e = [a, &b](int x) mutable {
|         const auto identity = [](int y){ return y; };
|         for (auto i = 0; i < a; ++i)
|           a += b--;
|         return x + identity(a + b);
|       }(0);
|       return a + b + c + d + e;
|     }
|
|     int
|     test3()
|     {
|       const auto nullary = [](){ return 0; };
|       const auto unary = [](int x){ return x; };
|       using nullary_t = decltype(nullary);
|       using unary_t = decltype(unary);
|       const auto higher1st = [](nullary_t f){ return f(); };
|       const auto higher2nd = [unary](nullary_t f1){
|         return [unary, f1](unary_t f2){ return f2(unary(f1())); };
|       };
|       return higher1st(nullary) + higher2nd(nullary)(unary);
|     }
|
|   }
|
|   namespace test_variadic_templates
|   {
|
|     template <int...>
|     struct sum;
|
|     template <int N0, int... N1toN>
|     struct sum<N0, N1toN...>
|     {
|       static constexpr auto value = N0 + sum<N1toN...>::value;
|     };
|
|     template <>
|     struct sum<>
|     {
|       static constexpr auto value = 0;
|     };
|
|     static_assert(sum<>::value == 0, "");
|     static_assert(sum<1>::value == 1, "");
|     static_assert(sum<23>::value == 23, "");
|     static_assert(sum<1, 2>::value == 3, "");
|     static_assert(sum<5, 5, 11>::value == 21, "");
|     static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
|
|   }
|
|   //
http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
|   // Clang 3.1 fails with headers of libstd++ 4.8.3 when using
std::function
|   // because of this.
|   namespace test_template_alias_sfinae
|   {
|
|     struct foo {};
|
|     template<typename T>
|     using member = typename T::member_type;
|
|     template<typename T>
|     void func(...) {}
|
|     template<typename T>
|     void func(member<T>*) {}
|
|     void test();
|
|     void test() { func<foo>(0); }
|
|   }
|
| }  // namespace cxx11
|
| #endif  // __cplusplus >= 201103L
|
|
|
configure:6579: result: no
configure:6274: checking whether CC supports C++11 features with +std=c++11
configure:6570: CC +std=c++11 -c   conftest.cpp >&5
CC: error: +std=c++11: No such file or directory
configure:6570: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| /* end confdefs.h.  */
|
|
| // If the compiler admits that it is not ready for C++11, why torture it?
| // Hopefully, this will speed up the test.
|
| #ifndef __cplusplus
|
| #error "This is not a C++ compiler"
|
| #elif __cplusplus < 201103L
|
| #error "This is not a C++11 compiler"
|
| #else
|
| namespace cxx11
| {
|
|   namespace test_static_assert
|   {
|
|     template <typename T>
|     struct check
|     {
|       static_assert(sizeof(int) <= sizeof(T), "not big enough");
|     };
|
|   }
|
|   namespace test_final_override
|   {
|
|     struct Base
|     {
|       virtual void f() {}
|     };
|
|     struct Derived : public Base
|     {
|       virtual void f() override {}
|     };
|
|   }
|
|   namespace test_double_right_angle_brackets
|   {
|
|     template < typename T >
|     struct check {};
|
|     typedef check<void> single_type;
|     typedef check<check&lt;void>> double_type;
|     typedef check<check&lt;check&lt;void>>> triple_type;
|     typedef check<check&lt;check&lt;check&lt;void>>>> quadruple_type;
|
|   }
|
|   namespace test_decltype
|   {
|
|     int
|     f()
|     {
|       int a = 1;
|       decltype(a) b = 2;
|       return a + b;
|     }
|
|   }
|
|   namespace test_type_deduction
|   {
|
|     template < typename T1, typename T2 >
|     struct is_same
|     {
|       static const bool value = false;
|     };
|
|     template < typename T >
|     struct is_same<T, T>
|     {
|       static const bool value = true;
|     };
|
|     template < typename T1, typename T2 >
|     auto
|     add(T1 a1, T2 a2) -> decltype(a1 + a2)
|     {
|       return a1 + a2;
|     }
|
|     int
|     test(const int c, volatile int v)
|     {
|       static_assert(is_same<int, decltype(0)>::value == true, "");
|       static_assert(is_same<int, decltype(c)>::value == false, "");
|       static_assert(is_same<int, decltype(v)>::value == false, "");
|       auto ac = c;
|       auto av = v;
|       auto sumi = ac + av + 'x';
|       auto sumf = ac + av + 1.0;
|       static_assert(is_same<int, decltype(ac)>::value == true, "");
|       static_assert(is_same<int, decltype(av)>::value == true, "");
|       static_assert(is_same<int, decltype(sumi)>::value == true, "");
|       static_assert(is_same<int, decltype(sumf)>::value == false, "");
|       static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
|       return (sumf > 0.0) ? sumi : add(c, v);
|     }
|
|   }
|
|   namespace test_noexcept
|   {
|
|     int f() { return 0; }
|     int g() noexcept { return 0; }
|
|     static_assert(noexcept(f()) == false, "");
|     static_assert(noexcept(g()) == true, "");
|
|   }
|
|   namespace test_constexpr
|   {
|
|     template < typename CharT >
|     unsigned long constexpr
|     strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
|     {
|       return *s ? strlen_c_r(s + 1, acc + 1) : acc;
|     }
|
|     template < typename CharT >
|     unsigned long constexpr
|     strlen_c(const CharT *const s) noexcept
|     {
|       return strlen_c_r(s, 0UL);
|     }
|
|     static_assert(strlen_c("") == 0UL, "");
|     static_assert(strlen_c("1") == 1UL, "");
|     static_assert(strlen_c("example") == 7UL, "");
|     static_assert(strlen_c("another\0example") == 7UL, "");
|
|   }
|
|   namespace test_rvalue_references
|   {
|
|     template < int N >
|     struct answer
|     {
|       static constexpr int value = N;
|     };
|
|     answer<1> f(int&)       { return answer<1>(); }
|     answer<2> f(const int&) { return answer<2>(); }
|     answer<3> f(int&&)      { return answer<3>(); }
|
|     void
|     test()
|     {
|       int i = 0;
|       const int c = 0;
|       static_assert(decltype(f(i))::value == 1, "");
|       static_assert(decltype(f(c))::value == 2, "");
|       static_assert(decltype(f(0))::value == 3, "");
|     }
|
|   }
|
|   namespace test_uniform_initialization
|   {
|
|     struct test
|     {
|       static const int zero {};
|       static const int one {1};
|     };
|
|     static_assert(test::zero == 0, "");
|     static_assert(test::one == 1, "");
|
|   }
|
|   namespace test_lambdas
|   {
|
|     void
|     test1()
|     {
|       auto lambda1 = [](){};
|       auto lambda2 = lambda1;
|       lambda1();
|       lambda2();
|     }
|
|     int
|     test2()
|     {
|       auto a = [](int i, int j){ return i + j; }(1, 2);
|       auto b = []() -> int { return '0'; }();
|       auto c = [=](){ return a + b; }();
|       auto d = [&](){ return c; }();
|       auto e = [a, &b](int x) mutable {
|         const auto identity = [](int y){ return y; };
|         for (auto i = 0; i < a; ++i)
|           a += b--;
|         return x + identity(a + b);
|       }(0);
|       return a + b + c + d + e;
|     }
|
|     int
|     test3()
|     {
|       const auto nullary = [](){ return 0; };
|       const auto unary = [](int x){ return x; };
|       using nullary_t = decltype(nullary);
|       using unary_t = decltype(unary);
|       const auto higher1st = [](nullary_t f){ return f(); };
|       const auto higher2nd = [unary](nullary_t f1){
|         return [unary, f1](unary_t f2){ return f2(unary(f1())); };
|       };
|       return higher1st(nullary) + higher2nd(nullary)(unary);
|     }
|
|   }
|
|   namespace test_variadic_templates
|   {
|
|     template <int...>
|     struct sum;
|
|     template <int N0, int... N1toN>
|     struct sum<N0, N1toN...>
|     {
|       static constexpr auto value = N0 + sum<N1toN...>::value;
|     };
|
|     template <>
|     struct sum<>
|     {
|       static constexpr auto value = 0;
|     };
|
|     static_assert(sum<>::value == 0, "");
|     static_assert(sum<1>::value == 1, "");
|     static_assert(sum<23>::value == 23, "");
|     static_assert(sum<1, 2>::value == 3, "");
|     static_assert(sum<5, 5, 11>::value == 21, "");
|     static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
|
|   }
|
|   //
http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
|   // Clang 3.1 fails with headers of libstd++ 4.8.3 when using
std::function
|   // because of this.
|   namespace test_template_alias_sfinae
|   {
|
|     struct foo {};
|
|     template<typename T>
|     using member = typename T::member_type;
|
|     template<typename T>
|     void func(...) {}
|
|     template<typename T>
|     void func(member<T>*) {}
|
|     void test();
|
|     void test() { func<foo>(0); }
|
|   }
|
| }  // namespace cxx11
|
| #endif  // __cplusplus >= 201103L
|
|
|
configure:6579: result: no
configure:6274: checking whether CC supports C++11 features with -h
std=c++11
configure:6570: CC -h std=c++11 -c   conftest.cpp >&5
CC: error: unrecognized command line option '-h'
configure:6570: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| /* end confdefs.h.  */
|
|
| // If the compiler admits that it is not ready for C++11, why torture it?
| // Hopefully, this will speed up the test.
|
| #ifndef __cplusplus
|
| #error "This is not a C++ compiler"
|
| #elif __cplusplus < 201103L
|
| #error "This is not a C++11 compiler"
|
| #else
|
| namespace cxx11
| {
|
|   namespace test_static_assert
|   {
|
|     template <typename T>
|     struct check
|     {
|       static_assert(sizeof(int) <= sizeof(T), "not big enough");
|     };
|
|   }
|
|   namespace test_final_override
|   {
|
|     struct Base
|     {
|       virtual void f() {}
|     };
|
|     struct Derived : public Base
|     {
|       virtual void f() override {}
|     };
|
|   }
|
|   namespace test_double_right_angle_brackets
|   {
|
|     template < typename T >
|     struct check {};
|
|     typedef check<void> single_type;
|     typedef check<check&lt;void>> double_type;
|     typedef check<check&lt;check&lt;void>>> triple_type;
|     typedef check<check&lt;check&lt;check&lt;void>>>> quadruple_type;
|
|   }
|
|   namespace test_decltype
|   {
|
|     int
|     f()
|     {
|       int a = 1;
|       decltype(a) b = 2;
|       return a + b;
|     }
|
|   }
|
|   namespace test_type_deduction
|   {
|
|     template < typename T1, typename T2 >
|     struct is_same
|     {
|       static const bool value = false;
|     };
|
|     template < typename T >
|     struct is_same<T, T>
|     {
|       static const bool value = true;
|     };
|
|     template < typename T1, typename T2 >
|     auto
|     add(T1 a1, T2 a2) -> decltype(a1 + a2)
|     {
|       return a1 + a2;
|     }
|
|     int
|     test(const int c, volatile int v)
|     {
|       static_assert(is_same<int, decltype(0)>::value == true, "");
|       static_assert(is_same<int, decltype(c)>::value == false, "");
|       static_assert(is_same<int, decltype(v)>::value == false, "");
|       auto ac = c;
|       auto av = v;
|       auto sumi = ac + av + 'x';
|       auto sumf = ac + av + 1.0;
|       static_assert(is_same<int, decltype(ac)>::value == true, "");
|       static_assert(is_same<int, decltype(av)>::value == true, "");
|       static_assert(is_same<int, decltype(sumi)>::value == true, "");
|       static_assert(is_same<int, decltype(sumf)>::value == false, "");
|       static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
|       return (sumf > 0.0) ? sumi : add(c, v);
|     }
|
|   }
|
|   namespace test_noexcept
|   {
|
|     int f() { return 0; }
|     int g() noexcept { return 0; }
|
|     static_assert(noexcept(f()) == false, "");
|     static_assert(noexcept(g()) == true, "");
|
|   }
|
|   namespace test_constexpr
|   {
|
|     template < typename CharT >
|     unsigned long constexpr
|     strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
|     {
|       return *s ? strlen_c_r(s + 1, acc + 1) : acc;
|     }
|
|     template < typename CharT >
|     unsigned long constexpr
|     strlen_c(const CharT *const s) noexcept
|     {
|       return strlen_c_r(s, 0UL);
|     }
|
|     static_assert(strlen_c("") == 0UL, "");
|     static_assert(strlen_c("1") == 1UL, "");
|     static_assert(strlen_c("example") == 7UL, "");
|     static_assert(strlen_c("another\0example") == 7UL, "");
|
|   }
|
|   namespace test_rvalue_references
|   {
|
|     template < int N >
|     struct answer
|     {
|       static constexpr int value = N;
|     };
|
|     answer<1> f(int&)       { return answer<1>(); }
|     answer<2> f(const int&) { return answer<2>(); }
|     answer<3> f(int&&)      { return answer<3>(); }
|
|     void
|     test()
|     {
|       int i = 0;
|       const int c = 0;
|       static_assert(decltype(f(i))::value == 1, "");
|       static_assert(decltype(f(c))::value == 2, "");
|       static_assert(decltype(f(0))::value == 3, "");
|     }
|
|   }
|
|   namespace test_uniform_initialization
|   {
|
|     struct test
|     {
|       static const int zero {};
|       static const int one {1};
|     };
|
|     static_assert(test::zero == 0, "");
|     static_assert(test::one == 1, "");
|
|   }
|
|   namespace test_lambdas
|   {
|
|     void
|     test1()
|     {
|       auto lambda1 = [](){};
|       auto lambda2 = lambda1;
|       lambda1();
|       lambda2();
|     }
|
|     int
|     test2()
|     {
|       auto a = [](int i, int j){ return i + j; }(1, 2);
|       auto b = []() -> int { return '0'; }();
|       auto c = [=](){ return a + b; }();
|       auto d = [&](){ return c; }();
|       auto e = [a, &b](int x) mutable {
|         const auto identity = [](int y){ return y; };
|         for (auto i = 0; i < a; ++i)
|           a += b--;
|         return x + identity(a + b);
|       }(0);
|       return a + b + c + d + e;
|     }
|
|     int
|     test3()
|     {
|       const auto nullary = [](){ return 0; };
|       const auto unary = [](int x){ return x; };
|       using nullary_t = decltype(nullary);
|       using unary_t = decltype(unary);
|       const auto higher1st = [](nullary_t f){ return f(); };
|       const auto higher2nd = [unary](nullary_t f1){
|         return [unary, f1](unary_t f2){ return f2(unary(f1())); };
|       };
|       return higher1st(nullary) + higher2nd(nullary)(unary);
|     }
|
|   }
|
|   namespace test_variadic_templates
|   {
|
|     template <int...>
|     struct sum;
|
|     template <int N0, int... N1toN>
|     struct sum<N0, N1toN...>
|     {
|       static constexpr auto value = N0 + sum<N1toN...>::value;
|     };
|
|     template <>
|     struct sum<>
|     {
|       static constexpr auto value = 0;
|     };
|
|     static_assert(sum<>::value == 0, "");
|     static_assert(sum<1>::value == 1, "");
|     static_assert(sum<23>::value == 23, "");
|     static_assert(sum<1, 2>::value == 3, "");
|     static_assert(sum<5, 5, 11>::value == 21, "");
|     static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
|
|   }
|
|   //
http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
|   // Clang 3.1 fails with headers of libstd++ 4.8.3 when using
std::function
|   // because of this.
|   namespace test_template_alias_sfinae
|   {
|
|     struct foo {};
|
|     template<typename T>
|     using member = typename T::member_type;
|
|     template<typename T>
|     void func(...) {}
|
|     template<typename T>
|     void func(member<T>*) {}
|
|     void test();
|
|     void test() { func<foo>(0); }
|
|   }
|
| }  // namespace cxx11
|
| #endif  // __cplusplus >= 201103L
|
|
|
configure:6579: result: no
configure:6274: checking whether CC supports C++11 features with -std=c++0x
configure:6570: CC -std=c++0x -c   conftest.cpp >&5
CC: error: spawn: No such file or directory
configure:6570: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| /* end confdefs.h.  */
|
|
| // If the compiler admits that it is not ready for C++11, why torture it?
| // Hopefully, this will speed up the test.
|
| #ifndef __cplusplus
|
| #error "This is not a C++ compiler"
|
| #elif __cplusplus < 201103L
|
| #error "This is not a C++11 compiler"
|
| #else
|
| namespace cxx11
| {
|
|   namespace test_static_assert
|   {
|
|     template <typename T>
|     struct check
|     {
|       static_assert(sizeof(int) <= sizeof(T), "not big enough");
|     };
|
|   }
|
|   namespace test_final_override
|   {
|
|     struct Base
|     {
|       virtual void f() {}
|     };
|
|     struct Derived : public Base
|     {
|       virtual void f() override {}
|     };
|
|   }
|
|   namespace test_double_right_angle_brackets
|   {
|
|     template < typename T >
|     struct check {};
|
|     typedef check<void> single_type;
|     typedef check<check&lt;void>> double_type;
|     typedef check<check&lt;check&lt;void>>> triple_type;
|     typedef check<check&lt;check&lt;check&lt;void>>>> quadruple_type;
|
|   }
|
|   namespace test_decltype
|   {
|
|     int
|     f()
|     {
|       int a = 1;
|       decltype(a) b = 2;
|       return a + b;
|     }
|
|   }
|
|   namespace test_type_deduction
|   {
|
|     template < typename T1, typename T2 >
|     struct is_same
|     {
|       static const bool value = false;
|     };
|
|     template < typename T >
|     struct is_same<T, T>
|     {
|       static const bool value = true;
|     };
|
|     template < typename T1, typename T2 >
|     auto
|     add(T1 a1, T2 a2) -> decltype(a1 + a2)
|     {
|       return a1 + a2;
|     }
|
|     int
|     test(const int c, volatile int v)
|     {
|       static_assert(is_same<int, decltype(0)>::value == true, "");
|       static_assert(is_same<int, decltype(c)>::value == false, "");
|       static_assert(is_same<int, decltype(v)>::value == false, "");
|       auto ac = c;
|       auto av = v;
|       auto sumi = ac + av + 'x';
|       auto sumf = ac + av + 1.0;
|       static_assert(is_same<int, decltype(ac)>::value == true, "");
|       static_assert(is_same<int, decltype(av)>::value == true, "");
|       static_assert(is_same<int, decltype(sumi)>::value == true, "");
|       static_assert(is_same<int, decltype(sumf)>::value == false, "");
|       static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
|       return (sumf > 0.0) ? sumi : add(c, v);
|     }
|
|   }
|
|   namespace test_noexcept
|   {
|
|     int f() { return 0; }
|     int g() noexcept { return 0; }
|
|     static_assert(noexcept(f()) == false, "");
|     static_assert(noexcept(g()) == true, "");
|
|   }
|
|   namespace test_constexpr
|   {
|
|     template < typename CharT >
|     unsigned long constexpr
|     strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
|     {
|       return *s ? strlen_c_r(s + 1, acc + 1) : acc;
|     }
|
|     template < typename CharT >
|     unsigned long constexpr
|     strlen_c(const CharT *const s) noexcept
|     {
|       return strlen_c_r(s, 0UL);
|     }
|
|     static_assert(strlen_c("") == 0UL, "");
|     static_assert(strlen_c("1") == 1UL, "");
|     static_assert(strlen_c("example") == 7UL, "");
|     static_assert(strlen_c("another\0example") == 7UL, "");
|
|   }
|
|   namespace test_rvalue_references
|   {
|
|     template < int N >
|     struct answer
|     {
|       static constexpr int value = N;
|     };
|
|     answer<1> f(int&)       { return answer<1>(); }
|     answer<2> f(const int&) { return answer<2>(); }
|     answer<3> f(int&&)      { return answer<3>(); }
|
|     void
|     test()
|     {
|       int i = 0;
|       const int c = 0;
|       static_assert(decltype(f(i))::value == 1, "");
|       static_assert(decltype(f(c))::value == 2, "");
|       static_assert(decltype(f(0))::value == 3, "");
|     }
|
|   }
|
|   namespace test_uniform_initialization
|   {
|
|     struct test
|     {
|       static const int zero {};
|       static const int one {1};
|     };
|
|     static_assert(test::zero == 0, "");
|     static_assert(test::one == 1, "");
|
|   }
|
|   namespace test_lambdas
|   {
|
|     void
|     test1()
|     {
|       auto lambda1 = [](){};
|       auto lambda2 = lambda1;
|       lambda1();
|       lambda2();
|     }
|
|     int
|     test2()
|     {
|       auto a = [](int i, int j){ return i + j; }(1, 2);
|       auto b = []() -> int { return '0'; }();
|       auto c = [=](){ return a + b; }();
|       auto d = [&](){ return c; }();
|       auto e = [a, &b](int x) mutable {
|         const auto identity = [](int y){ return y; };
|         for (auto i = 0; i < a; ++i)
|           a += b--;
|         return x + identity(a + b);
|       }(0);
|       return a + b + c + d + e;
|     }
|
|     int
|     test3()
|     {
|       const auto nullary = [](){ return 0; };
|       const auto unary = [](int x){ return x; };
|       using nullary_t = decltype(nullary);
|       using unary_t = decltype(unary);
|       const auto higher1st = [](nullary_t f){ return f(); };
|       const auto higher2nd = [unary](nullary_t f1){
|         return [unary, f1](unary_t f2){ return f2(unary(f1())); };
|       };
|       return higher1st(nullary) + higher2nd(nullary)(unary);
|     }
|
|   }
|
|   namespace test_variadic_templates
|   {
|
|     template <int...>
|     struct sum;
|
|     template <int N0, int... N1toN>
|     struct sum<N0, N1toN...>
|     {
|       static constexpr auto value = N0 + sum<N1toN...>::value;
|     };
|
|     template <>
|     struct sum<>
|     {
|       static constexpr auto value = 0;
|     };
|
|     static_assert(sum<>::value == 0, "");
|     static_assert(sum<1>::value == 1, "");
|     static_assert(sum<23>::value == 23, "");
|     static_assert(sum<1, 2>::value == 3, "");
|     static_assert(sum<5, 5, 11>::value == 21, "");
|     static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
|
|   }
|
|   //
http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
|   // Clang 3.1 fails with headers of libstd++ 4.8.3 when using
std::function
|   // because of this.
|   namespace test_template_alias_sfinae
|   {
|
|     struct foo {};
|
|     template<typename T>
|     using member = typename T::member_type;
|
|     template<typename T>
|     void func(...) {}
|
|     template<typename T>
|     void func(member<T>*) {}
|
|     void test();
|
|     void test() { func<foo>(0); }
|
|   }
|
| }  // namespace cxx11
|
| #endif  // __cplusplus >= 201103L
|
|
|
configure:6579: result: no
configure:6274: checking whether CC supports C++11 features with +std=c++0x
configure:6570: CC +std=c++0x -c   conftest.cpp >&5
CC: error: +std=c++0x: No such file or directory
configure:6570: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| /* end confdefs.h.  */
|
|
| // If the compiler admits that it is not ready for C++11, why torture it?
| // Hopefully, this will speed up the test.
|
| #ifndef __cplusplus
|
| #error "This is not a C++ compiler"
|
| #elif __cplusplus < 201103L
|
| #error "This is not a C++11 compiler"
|
| #else
|
| namespace cxx11
| {
|
|   namespace test_static_assert
|   {
|
|     template <typename T>
|     struct check
|     {
|       static_assert(sizeof(int) <= sizeof(T), "not big enough");
|     };
|
|   }
|
|   namespace test_final_override
|   {
|
|     struct Base
|     {
|       virtual void f() {}
|     };
|
|     struct Derived : public Base
|     {
|       virtual void f() override {}
|     };
|
|   }
|
|   namespace test_double_right_angle_brackets
|   {
|
|     template < typename T >
|     struct check {};
|
|     typedef check<void> single_type;
|     typedef check<check&lt;void>> double_type;
|     typedef check<check&lt;check&lt;void>>> triple_type;
|     typedef check<check&lt;check&lt;check&lt;void>>>> quadruple_type;
|
|   }
|
|   namespace test_decltype
|   {
|
|     int
|     f()
|     {
|       int a = 1;
|       decltype(a) b = 2;
|       return a + b;
|     }
|
|   }
|
|   namespace test_type_deduction
|   {
|
|     template < typename T1, typename T2 >
|     struct is_same
|     {
|       static const bool value = false;
|     };
|
|     template < typename T >
|     struct is_same<T, T>
|     {
|       static const bool value = true;
|     };
|
|     template < typename T1, typename T2 >
|     auto
|     add(T1 a1, T2 a2) -> decltype(a1 + a2)
|     {
|       return a1 + a2;
|     }
|
|     int
|     test(const int c, volatile int v)
|     {
|       static_assert(is_same<int, decltype(0)>::value == true, "");
|       static_assert(is_same<int, decltype(c)>::value == false, "");
|       static_assert(is_same<int, decltype(v)>::value == false, "");
|       auto ac = c;
|       auto av = v;
|       auto sumi = ac + av + 'x';
|       auto sumf = ac + av + 1.0;
|       static_assert(is_same<int, decltype(ac)>::value == true, "");
|       static_assert(is_same<int, decltype(av)>::value == true, "");
|       static_assert(is_same<int, decltype(sumi)>::value == true, "");
|       static_assert(is_same<int, decltype(sumf)>::value == false, "");
|       static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
|       return (sumf > 0.0) ? sumi : add(c, v);
|     }
|
|   }
|
|   namespace test_noexcept
|   {
|
|     int f() { return 0; }
|     int g() noexcept { return 0; }
|
|     static_assert(noexcept(f()) == false, "");
|     static_assert(noexcept(g()) == true, "");
|
|   }
|
|   namespace test_constexpr
|   {
|
|     template < typename CharT >
|     unsigned long constexpr
|     strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
|     {
|       return *s ? strlen_c_r(s + 1, acc + 1) : acc;
|     }
|
|     template < typename CharT >
|     unsigned long constexpr
|     strlen_c(const CharT *const s) noexcept
|     {
|       return strlen_c_r(s, 0UL);
|     }
|
|     static_assert(strlen_c("") == 0UL, "");
|     static_assert(strlen_c("1") == 1UL, "");
|     static_assert(strlen_c("example") == 7UL, "");
|     static_assert(strlen_c("another\0example") == 7UL, "");
|
|   }
|
|   namespace test_rvalue_references
|   {
|
|     template < int N >
|     struct answer
|     {
|       static constexpr int value = N;
|     };
|
|     answer<1> f(int&)       { return answer<1>(); }
|     answer<2> f(const int&) { return answer<2>(); }
|     answer<3> f(int&&)      { return answer<3>(); }
|
|     void
|     test()
|     {
|       int i = 0;
|       const int c = 0;
|       static_assert(decltype(f(i))::value == 1, "");
|       static_assert(decltype(f(c))::value == 2, "");
|       static_assert(decltype(f(0))::value == 3, "");
|     }
|
|   }
|
|   namespace test_uniform_initialization
|   {
|
|     struct test
|     {
|       static const int zero {};
|       static const int one {1};
|     };
|
|     static_assert(test::zero == 0, "");
|     static_assert(test::one == 1, "");
|
|   }
|
|   namespace test_lambdas
|   {
|
|     void
|     test1()
|     {
|       auto lambda1 = [](){};
|       auto lambda2 = lambda1;
|       lambda1();
|       lambda2();
|     }
|
|     int
|     test2()
|     {
|       auto a = [](int i, int j){ return i + j; }(1, 2);
|       auto b = []() -> int { return '0'; }();
|       auto c = [=](){ return a + b; }();
|       auto d = [&](){ return c; }();
|       auto e = [a, &b](int x) mutable {
|         const auto identity = [](int y){ return y; };
|         for (auto i = 0; i < a; ++i)
|           a += b--;
|         return x + identity(a + b);
|       }(0);
|       return a + b + c + d + e;
|     }
|
|     int
|     test3()
|     {
|       const auto nullary = [](){ return 0; };
|       const auto unary = [](int x){ return x; };
|       using nullary_t = decltype(nullary);
|       using unary_t = decltype(unary);
|       const auto higher1st = [](nullary_t f){ return f(); };
|       const auto higher2nd = [unary](nullary_t f1){
|         return [unary, f1](unary_t f2){ return f2(unary(f1())); };
|       };
|       return higher1st(nullary) + higher2nd(nullary)(unary);
|     }
|
|   }
|
|   namespace test_variadic_templates
|   {
|
|     template <int...>
|     struct sum;
|
|     template <int N0, int... N1toN>
|     struct sum<N0, N1toN...>
|     {
|       static constexpr auto value = N0 + sum<N1toN...>::value;
|     };
|
|     template <>
|     struct sum<>
|     {
|       static constexpr auto value = 0;
|     };
|
|     static_assert(sum<>::value == 0, "");
|     static_assert(sum<1>::value == 1, "");
|     static_assert(sum<23>::value == 23, "");
|     static_assert(sum<1, 2>::value == 3, "");
|     static_assert(sum<5, 5, 11>::value == 21, "");
|     static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
|
|   }
|
|   //
http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
|   // Clang 3.1 fails with headers of libstd++ 4.8.3 when using
std::function
|   // because of this.
|   namespace test_template_alias_sfinae
|   {
|
|     struct foo {};
|
|     template<typename T>
|     using member = typename T::member_type;
|
|     template<typename T>
|     void func(...) {}
|
|     template<typename T>
|     void func(member<T>*) {}
|
|     void test();
|
|     void test() { func<foo>(0); }
|
|   }
|
| }  // namespace cxx11
|
| #endif  // __cplusplus >= 201103L
|
|
|
configure:6579: result: no
configure:6274: checking whether CC supports C++11 features with -h
std=c++0x
configure:6570: CC -h std=c++0x -c   conftest.cpp >&5
CC: error: unrecognized command line option '-h'
configure:6570: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| /* end confdefs.h.  */
|
|
| // If the compiler admits that it is not ready for C++11, why torture it?
| // Hopefully, this will speed up the test.
|
| #ifndef __cplusplus
|
| #error "This is not a C++ compiler"
|
| #elif __cplusplus < 201103L
|
| #error "This is not a C++11 compiler"
|
| #else
|
| namespace cxx11
| {
|
|   namespace test_static_assert
|   {
|
|     template <typename T>
|     struct check
|     {
|       static_assert(sizeof(int) <= sizeof(T), "not big enough");
|     };
|
|   }
|
|   namespace test_final_override
|   {
|
|     struct Base
|     {
|       virtual void f() {}
|     };
|
|     struct Derived : public Base
|     {
|       virtual void f() override {}
|     };
|
|   }
|
|   namespace test_double_right_angle_brackets
|   {
|
|     template < typename T >
|     struct check {};
|
|     typedef check<void> single_type;
|     typedef check<check&lt;void>> double_type;
|     typedef check<check&lt;check&lt;void>>> triple_type;
|     typedef check<check&lt;check&lt;check&lt;void>>>> quadruple_type;
|
|   }
|
|   namespace test_decltype
|   {
|
|     int
|     f()
|     {
|       int a = 1;
|       decltype(a) b = 2;
|       return a + b;
|     }
|
|   }
|
|   namespace test_type_deduction
|   {
|
|     template < typename T1, typename T2 >
|     struct is_same
|     {
|       static const bool value = false;
|     };
|
|     template < typename T >
|     struct is_same<T, T>
|     {
|       static const bool value = true;
|     };
|
|     template < typename T1, typename T2 >
|     auto
|     add(T1 a1, T2 a2) -> decltype(a1 + a2)
|     {
|       return a1 + a2;
|     }
|
|     int
|     test(const int c, volatile int v)
|     {
|       static_assert(is_same<int, decltype(0)>::value == true, "");
|       static_assert(is_same<int, decltype(c)>::value == false, "");
|       static_assert(is_same<int, decltype(v)>::value == false, "");
|       auto ac = c;
|       auto av = v;
|       auto sumi = ac + av + 'x';
|       auto sumf = ac + av + 1.0;
|       static_assert(is_same<int, decltype(ac)>::value == true, "");
|       static_assert(is_same<int, decltype(av)>::value == true, "");
|       static_assert(is_same<int, decltype(sumi)>::value == true, "");
|       static_assert(is_same<int, decltype(sumf)>::value == false, "");
|       static_assert(is_same<int, decltype(add(c, v))>::value == true, "");
|       return (sumf > 0.0) ? sumi : add(c, v);
|     }
|
|   }
|
|   namespace test_noexcept
|   {
|
|     int f() { return 0; }
|     int g() noexcept { return 0; }
|
|     static_assert(noexcept(f()) == false, "");
|     static_assert(noexcept(g()) == true, "");
|
|   }
|
|   namespace test_constexpr
|   {
|
|     template < typename CharT >
|     unsigned long constexpr
|     strlen_c_r(const CharT *const s, const unsigned long acc) noexcept
|     {
|       return *s ? strlen_c_r(s + 1, acc + 1) : acc;
|     }
|
|     template < typename CharT >
|     unsigned long constexpr
|     strlen_c(const CharT *const s) noexcept
|     {
|       return strlen_c_r(s, 0UL);
|     }
|
|     static_assert(strlen_c("") == 0UL, "");
|     static_assert(strlen_c("1") == 1UL, "");
|     static_assert(strlen_c("example") == 7UL, "");
|     static_assert(strlen_c("another\0example") == 7UL, "");
|
|   }
|
|   namespace test_rvalue_references
|   {
|
|     template < int N >
|     struct answer
|     {
|       static constexpr int value = N;
|     };
|
|     answer<1> f(int&)       { return answer<1>(); }
|     answer<2> f(const int&) { return answer<2>(); }
|     answer<3> f(int&&)      { return answer<3>(); }
|
|     void
|     test()
|     {
|       int i = 0;
|       const int c = 0;
|       static_assert(decltype(f(i))::value == 1, "");
|       static_assert(decltype(f(c))::value == 2, "");
|       static_assert(decltype(f(0))::value == 3, "");
|     }
|
|   }
|
|   namespace test_uniform_initialization
|   {
|
|     struct test
|     {
|       static const int zero {};
|       static const int one {1};
|     };
|
|     static_assert(test::zero == 0, "");
|     static_assert(test::one == 1, "");
|
|   }
|
|   namespace test_lambdas
|   {
|
|     void
|     test1()
|     {
|       auto lambda1 = [](){};
|       auto lambda2 = lambda1;
|       lambda1();
|       lambda2();
|     }
|
|     int
|     test2()
|     {
|       auto a = [](int i, int j){ return i + j; }(1, 2);
|       auto b = []() -> int { return '0'; }();
|       auto c = [=](){ return a + b; }();
|       auto d = [&](){ return c; }();
|       auto e = [a, &b](int x) mutable {
|         const auto identity = [](int y){ return y; };
|         for (auto i = 0; i < a; ++i)
|           a += b--;
|         return x + identity(a + b);
|       }(0);
|       return a + b + c + d + e;
|     }
|
|     int
|     test3()
|     {
|       const auto nullary = [](){ return 0; };
|       const auto unary = [](int x){ return x; };
|       using nullary_t = decltype(nullary);
|       using unary_t = decltype(unary);
|       const auto higher1st = [](nullary_t f){ return f(); };
|       const auto higher2nd = [unary](nullary_t f1){
|         return [unary, f1](unary_t f2){ return f2(unary(f1())); };
|       };
|       return higher1st(nullary) + higher2nd(nullary)(unary);
|     }
|
|   }
|
|   namespace test_variadic_templates
|   {
|
|     template <int...>
|     struct sum;
|
|     template <int N0, int... N1toN>
|     struct sum<N0, N1toN...>
|     {
|       static constexpr auto value = N0 + sum<N1toN...>::value;
|     };
|
|     template <>
|     struct sum<>
|     {
|       static constexpr auto value = 0;
|     };
|
|     static_assert(sum<>::value == 0, "");
|     static_assert(sum<1>::value == 1, "");
|     static_assert(sum<23>::value == 23, "");
|     static_assert(sum<1, 2>::value == 3, "");
|     static_assert(sum<5, 5, 11>::value == 21, "");
|     static_assert(sum<2, 3, 5, 7, 11, 13>::value == 41, "");
|
|   }
|
|   //
http://stackoverflow.com/questions/13728184/template-aliases-and-sfinae
|   // Clang 3.1 fails with headers of libstd++ 4.8.3 when using
std::function
|   // because of this.
|   namespace test_template_alias_sfinae
|   {
|
|     struct foo {};
|
|     template<typename T>
|     using member = typename T::member_type;
|
|     template<typename T>
|     void func(...) {}
|
|     template<typename T>
|     void func(member<T>*) {}
|
|     void test();
|
|     void test() { func<foo>(0); }
|
|   }
|
| }  // namespace cxx11
|
| #endif  // __cplusplus >= 201103L
|
|
|
configure:6579: result: no
configure:6608: No compiler with C++11 support was found
configure:6623: checking for grep that handles long lines and -e
configure:6681: result: /usr/bin/grep
configure:6732: checking how to print strings
configure:6759: result: printf
configure:6780: checking for a sed that does not truncate output
configure:6844: result: /usr/bin/sed
configure:6862: checking for egrep
configure:6924: result: /usr/bin/grep -E
configure:6929: checking for fgrep
configure:6991: result: /usr/bin/grep -F
configure:7026: checking for ld used by x86_64-pc-cygwin-gcc
configure:7093: result: /usr/x86_64-pc-cygwin/bin/ld.exe
configure:7100: checking if the linker (/usr/x86_64-pc-cygwin/bin/ld.exe) is
GNU ld
configure:7115: result: yes
configure:7127: checking for BSD- or MS-compatible name lister (nm)
configure:7181: result: /usr/bin/nm -B
configure:7311: checking the name lister (/usr/bin/nm -B) interface
configure:7318: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:7321: /usr/bin/nm -B "conftest.o"
configure:7324: output
0000000000000000 b .bss
0000000000000000 d .data
0000000000000000 r .rdata$zzz
0000000000000000 t .text
0000000000000000 B some_variable
configure:7331: result: BSD nm
configure:7334: checking whether ln -s works
configure:7338: result: yes
configure:7346: checking the maximum length of command line arguments
configure:7477: result: 8192
configure:7525: checking how to convert x86_64-pc-cygwin file names to
x86_64-pc-cygwin format
configure:7565: result: func_convert_file_noop
configure:7572: checking how to convert x86_64-pc-cygwin file names to
toolchain format
configure:7592: result: func_convert_file_noop
configure:7599: checking for /usr/x86_64-pc-cygwin/bin/ld.exe option to
reload object files
configure:7606: result: -r
configure:7640: checking for x86_64-pc-cygwin-objdump
configure:7670: result: no
configure:7680: checking for objdump
configure:7696: found /usr/bin/objdump
configure:7707: result: objdump
configure:7739: checking how to recognize dependent libraries
configure:7939: result: file_magic ^x86 archive import|^x86 DLL
configure:7984: checking for x86_64-pc-cygwin-dlltool
configure:8014: result: no
configure:8024: checking for dlltool
configure:8040: found /usr/bin/dlltool
configure:8051: result: dlltool
configure:8084: checking how to associate runtime and link libraries
configure:8111: result: func_cygming_dll_for_implib
configure:8127: checking for x86_64-pc-cygwin-ar
configure:8157: result: no
configure:8171: checking for ar
configure:8187: found /usr/bin/ar
configure:8198: result: ar
configure:8235: checking for archiver @FILE support
configure:8252: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:8252: $? = 0
configure:8255: ar cru libconftest.a @conftest.lst >&5
configure:8258: $? = 0
configure:8263: ar cru libconftest.a @conftest.lst >&5
ar: conftest.o: No such file or directory
configure:8266: $? = 1
configure:8278: result: @
configure:8296: checking for x86_64-pc-cygwin-strip
configure:8326: result: no
configure:8336: checking for strip
configure:8352: found /usr/bin/strip
configure:8363: result: strip
configure:8395: checking for x86_64-pc-cygwin-ranlib
configure:8425: result: no
configure:8435: checking for ranlib
configure:8451: found /usr/bin/ranlib
configure:8462: result: ranlib
configure:8564: checking command to parse /usr/bin/nm -B output from
x86_64-pc-cygwin-gcc object
configure:8717: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:8720: $? = 0
configure:8724: /usr/bin/nm -B conftest.o \| sed -n -e 's/^.*[
]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'
| sed '/ __gnu_lto/d' \> conftest.nm
configure:8727: $? = 0
configure:8793: x86_64-pc-cygwin-gcc -o conftest.exe -O3
-fomit-frame-pointer -malign-double -fstrict-aliasing -ffast-math  
conftest.c conftstm.o >&5
configure:8796: $? = 0
configure:8834: result: ok
configure:8881: checking for sysroot
configure:8911: result: no
configure:8918: checking for a working dd
configure:8956: result: /usr/bin/dd
configure:8960: checking how to truncate binary pipes
configure:8975: result: /usr/bin/dd bs=4096 count=1
configure:9264: checking for x86_64-pc-cygwin-mt
configure:9294: result: no
configure:9304: checking for mt
configure:9334: result: no
configure:9354: checking if : is a manifest tool
configure:9360: : '-?'
configure:9368: result: no
configure:10045: checking how to run the C preprocessor
configure:10076: x86_64-pc-cygwin-gcc -E  conftest.c
configure:10076: $? = 0
configure:10090: x86_64-pc-cygwin-gcc -E  conftest.c
conftest.c:13:10: fatal error: ac_nonexistent.h: No such file or directory
 #include <ac_nonexistent.h>
          ^~~~~~~~~~~~~~~~~~
compilation terminated.
configure:10090: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| /* end confdefs.h.  */
| #include <ac_nonexistent.h>
configure:10115: result: x86_64-pc-cygwin-gcc -E
configure:10135: x86_64-pc-cygwin-gcc -E  conftest.c
configure:10135: $? = 0
configure:10149: x86_64-pc-cygwin-gcc -E  conftest.c
conftest.c:13:10: fatal error: ac_nonexistent.h: No such file or directory
 #include <ac_nonexistent.h>
          ^~~~~~~~~~~~~~~~~~
compilation terminated.
configure:10149: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| /* end confdefs.h.  */
| #include <ac_nonexistent.h>
configure:10178: checking for ANSI C header files
configure:10198: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:10198: $? = 0
configure:10271: x86_64-pc-cygwin-gcc -o conftest.exe -O3
-fomit-frame-pointer -malign-double -fstrict-aliasing -ffast-math  
conftest.c  >&5
configure:10271: $? = 0
configure:10271: ./conftest.exe
configure:10271: $? = 0
configure:10282: result: yes
configure:10295: checking for sys/types.h
configure:10295: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:10295: $? = 0
configure:10295: result: yes
configure:10295: checking for sys/stat.h
configure:10295: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:10295: $? = 0
configure:10295: result: yes
configure:10295: checking for stdlib.h
configure:10295: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:10295: $? = 0
configure:10295: result: yes
configure:10295: checking for string.h
configure:10295: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:10295: $? = 0
configure:10295: result: yes
configure:10295: checking for memory.h
configure:10295: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:10295: $? = 0
configure:10295: result: yes
configure:10295: checking for strings.h
configure:10295: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:10295: $? = 0
configure:10295: result: yes
configure:10295: checking for inttypes.h
configure:10295: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:10295: $? = 0
configure:10295: result: yes
configure:10295: checking for stdint.h
configure:10295: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:10295: $? = 0
configure:10295: result: yes
configure:10295: checking for unistd.h
configure:10295: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:10295: $? = 0
configure:10295: result: yes
configure:10309: checking for dlfcn.h
configure:10309: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:10309: $? = 0
configure:10309: result: yes
configure:10575: checking for objdir
configure:10590: result: .libs
configure:10854: checking if x86_64-pc-cygwin-gcc supports -fno-rtti
-fno-exceptions
configure:10872: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  -fno-rtti -fno-exceptions
conftest.c >&5
cc1: warning: command line option '-fno-rtti' is valid for C++/ObjC++ but
not for C
configure:10876: $? = 0
configure:10889: result: no
configure:11247: checking for x86_64-pc-cygwin-gcc option to produce PIC
configure:11254: result: -DDLL_EXPORT -DPIC
configure:11262: checking if x86_64-pc-cygwin-gcc PIC flag -DDLL_EXPORT
-DPIC works
configure:11280: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  -DDLL_EXPORT -DPIC -DPIC
conftest.c >&5
configure:11284: $? = 0
configure:11297: result: yes
configure:11326: checking if x86_64-pc-cygwin-gcc static flag -static works
configure:11354: result: yes
configure:11369: checking if x86_64-pc-cygwin-gcc supports -c -o file.o
configure:11390: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  -o out/conftest2.o conftest.c
>&5
configure:11394: $? = 0
configure:11416: result: yes
configure:11424: checking if x86_64-pc-cygwin-gcc supports -c -o file.o
configure:11471: result: yes
configure:11504: checking whether the x86_64-pc-cygwin-gcc linker
(/usr/x86_64-pc-cygwin/bin/ld.exe) supports shared libraries
configure:12767: result: yes
configure:12804: checking whether -lc should be explicitly linked in
configure:12812: x86_64-pc-cygwin-gcc -c -O3 -fomit-frame-pointer
-malign-double -fstrict-aliasing -ffast-math  conftest.c >&5
configure:12815: $? = 0
configure:12830: x86_64-pc-cygwin-gcc -shared conftest.o  -v -o ./conftest
-Wl,--enable-auto-image-base -Xlinker --out-implib -Xlinker conftest 2\>\&1
\| /usr/bin/grep  -lc  \>/dev/null 2\>\&1
configure:12833: $? = 1
configure:12847: result: yes
configure:13007: checking dynamic linker characteristics
configure:13837: result: Win32 ld.exe
configure:13959: checking how to hardcode library paths into programs
configure:13984: result: immediate
configure:14532: checking whether stripping libraries is possible
configure:14537: result: yes
configure:14572: checking if libtool supports shared libraries
configure:14574: result: yes
configure:14577: checking whether to build shared libraries
configure:14602: result: yes
configure:14605: checking whether to build static libraries
configure:14609: result: yes
configure:14632: checking how to run the C++ preprocessor
configure:14659: CC -E  conftest.cpp
CC: error: spawn: No such file or directory
configure:14659: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| /* end confdefs.h.  */
| #ifdef __STDC__
| # include <limits.h>
| #else
| # include <assert.h>
| #endif
|     Syntax error
configure:14659: CC -E  conftest.cpp
CC: error: spawn: No such file or directory
configure:14659: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| /* end confdefs.h.  */
| #ifdef __STDC__
| # include <limits.h>
| #else
| # include <assert.h>
| #endif
|     Syntax error
configure:14659: /lib/cpp  conftest.cpp
cpp: error: spawn: No such file or directory
configure:14659: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| /* end confdefs.h.  */
| #ifdef __STDC__
| # include <limits.h>
| #else
| # include <assert.h>
| #endif
|     Syntax error
configure:14659: /lib/cpp  conftest.cpp
cpp: error: spawn: No such file or directory
configure:14659: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| /* end confdefs.h.  */
| #ifdef __STDC__
| # include <limits.h>
| #else
| # include <assert.h>
| #endif
|     Syntax error
configure:14698: result: /lib/cpp
configure:14718: /lib/cpp  conftest.cpp
cpp: error: spawn: No such file or directory
configure:14718: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| /* end confdefs.h.  */
| #ifdef __STDC__
| # include <limits.h>
| #else
| # include <assert.h>
| #endif
|     Syntax error
configure:14718: /lib/cpp  conftest.cpp
cpp: error: spawn: No such file or directory
configure:14718: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME "isl"
| #define PACKAGE_TARNAME "isl"
| #define PACKAGE_VERSION "0.21"
| #define PACKAGE_STRING "isl 0.21"
| #define PACKAGE_BUGREPORT "[hidden email]"
| #define PACKAGE_URL ""
| #define PACKAGE "isl"
| #define VERSION "0.21"
| #define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
| #define HAVE___ATTRIBUTE__ 1
| #define STDC_HEADERS 1
| #define HAVE_SYS_TYPES_H 1
| #define HAVE_SYS_STAT_H 1
| #define HAVE_STDLIB_H 1
| #define HAVE_STRING_H 1
| #define HAVE_MEMORY_H 1
| #define HAVE_STRINGS_H 1
| #define HAVE_INTTYPES_H 1
| #define HAVE_STDINT_H 1
| #define HAVE_UNISTD_H 1
| #define HAVE_DLFCN_H 1
| #define LT_OBJDIR ".libs/"
| /* end confdefs.h.  */
| #ifdef __STDC__
| # include <limits.h>
| #else
| # include <assert.h>
| #endif
|     Syntax error
configure:14748: error: in `/___packages/isl/isl-0.21-build':
configure:14750: error: C++ preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details

## ---------------- ##
## Cache variables. ##
## ---------------- ##

ac_cv_build=x86_64-pc-cygwin
ac_cv_c_compiler_gnu=yes
ac_cv_cxx_compiler_gnu=no
ac_cv_env_CCC_set=
ac_cv_env_CCC_value=
ac_cv_env_CC_set=
ac_cv_env_CC_value=
ac_cv_env_CFLAGS_set=
ac_cv_env_CFLAGS_value=
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_CXXCPP_set=
ac_cv_env_CXXCPP_value=
ac_cv_env_CXXFLAGS_set=
ac_cv_env_CXXFLAGS_value=
ac_cv_env_CXX_set=
ac_cv_env_CXX_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_LT_SYS_LIBRARY_PATH_set=
ac_cv_env_LT_SYS_LIBRARY_PATH_value=
ac_cv_env_PYTHON_set=
ac_cv_env_PYTHON_value=
ac_cv_env_build_alias_set=set
ac_cv_env_build_alias_value=x86_64-pc-cygwin
ac_cv_env_host_alias_set=set
ac_cv_env_host_alias_value=x86_64-pc-cygwin
ac_cv_env_target_alias_set=set
ac_cv_env_target_alias_value=x86_64-pc-cygwin
ac_cv_exeext=.exe
ac_cv_header_dlfcn_h=yes
ac_cv_header_inttypes_h=yes
ac_cv_header_memory_h=yes
ac_cv_header_stdc=yes
ac_cv_header_stdint_h=yes
ac_cv_header_stdlib_h=yes
ac_cv_header_string_h=yes
ac_cv_header_strings_h=yes
ac_cv_header_sys_stat_h=yes
ac_cv_header_sys_types_h=yes
ac_cv_header_unistd_h=yes
ac_cv_host=x86_64-pc-cygwin
ac_cv_objext=o
ac_cv_path_EGREP='/usr/bin/grep -E'
ac_cv_path_FGREP='/usr/bin/grep -F'
ac_cv_path_GREP=/usr/bin/grep
ac_cv_path_SED=/usr/bin/sed
ac_cv_path_install='/usr/bin/install -c'
ac_cv_path_lt_DD=/usr/bin/dd
ac_cv_path_mkdir=/usr/bin/mkdir
ac_cv_prog_AWK=gawk
ac_cv_prog_CC=x86_64-pc-cygwin-gcc
ac_cv_prog_CPP='x86_64-pc-cygwin-gcc -E'
ac_cv_prog_CXXCPP=/lib/cpp
ac_cv_prog_ac_ct_AR=ar
ac_cv_prog_ac_ct_CXX=CC
ac_cv_prog_ac_ct_DLLTOOL=dlltool
ac_cv_prog_ac_ct_OBJDUMP=objdump
ac_cv_prog_ac_ct_RANLIB=ranlib
ac_cv_prog_ac_ct_STRIP=strip
ac_cv_prog_cc_c89=
ac_cv_prog_cc_g=yes
ac_cv_prog_cxx_g=no
ac_cv_prog_make_make_set=yes
am_cv_CC_dependencies_compiler_type=gcc3
am_cv_CXX_dependencies_compiler_type=gcc3
am_cv_make_support_nested_variables=yes
am_cv_prog_cc_c_o=yes
ax_cv___attribute__=yes
ax_cv_c_compiler_vendor=gnu
ax_cv_c_flags__O3__fomit_frame_pointer__malign_double__fstrict_aliasing__ffast_math=yes
ax_cv_c_flags__ffast_math=yes
ax_cv_c_flags__fstrict_aliasing=yes
ax_cv_c_flags__malign_double=yes
ax_cv_c_flags__march_pentiumpro=no
ax_cv_c_flags__mcpu_pentiumpro=no
ax_cv_c_flags__mpentiumpro=no
ax_cv_cxx_compile_cxx11=no
ax_cv_cxx_compile_cxx11__h_std_cpp0x=no
ax_cv_cxx_compile_cxx11__h_std_cpp11=no
ax_cv_cxx_compile_cxx11__std_cpp0x=no
ax_cv_cxx_compile_cxx11__std_cpp11=no
ax_cv_cxx_compile_cxx11_pstd_cpp0x=no
ax_cv_cxx_compile_cxx11_pstd_cpp11=no
ax_cv_gcc_archflag=unknown
ax_cv_gcc_warn_unused_result=yes
ax_cv_gcc_x86_cpuid_0=16:756e6547:6c65746e:49656e69
ax_cv_gcc_x86_cpuid_1=806e9:3100800:7ffafbff:bfebfbff
lt_cv_ar_at_file=@
lt_cv_archive_cmds_need_lc=yes
lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL'
lt_cv_file_magic_cmd=func_win32_libid
lt_cv_file_magic_test_file=
lt_cv_ld_reload_flag=-r
lt_cv_nm_interface='BSD nm'
lt_cv_objdir=.libs
lt_cv_path_LD=/usr/x86_64-pc-cygwin/bin/ld.exe
lt_cv_path_NM='/usr/bin/nm -B'
lt_cv_path_mainfest_tool=no
lt_cv_prog_compiler_c_o=yes
lt_cv_prog_compiler_pic='-DDLL_EXPORT -DPIC'
lt_cv_prog_compiler_pic_works=yes
lt_cv_prog_compiler_rtti_exceptions=no
lt_cv_prog_compiler_static_works=yes
lt_cv_prog_gnu_ld=yes
lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib
lt_cv_sys_global_symbol_pipe='sed -n -e '\''s/^.*[
]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2
\2/p'\'' | sed '\''/ __gnu_lto/d'\'''
lt_cv_sys_global_symbol_to_c_name_address='sed -n -e '\''s/^: \(.*\) .*$/
{"\1", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/
{"\1", (void *) \&\1},/p'\'''
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='sed -n -e '\''s/^:
\(.*\) .*$/  {"\1", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]*
.* \(lib.*\)$/  {"\1", (void *) \&\1},/p'\'' -e
'\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/  {"lib\1", (void *)
\&\1},/p'\'''
lt_cv_sys_global_symbol_to_cdecl='sed -n -e '\''s/^T .* \(.*\)$/extern int
\1();/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/extern char
\1;/p'\'''
lt_cv_sys_global_symbol_to_import=
lt_cv_sys_max_cmd_len=8192
lt_cv_to_host_file_cmd=func_convert_file_noop
lt_cv_to_tool_file_cmd=func_convert_file_noop
lt_cv_truncate_bin='/usr/bin/dd bs=4096 count=1'

## ----------------- ##
## Output variables. ##
## ----------------- ##

ACLOCAL='${SHELL} /___packages/isl/isl-0.21-build/missing aclocal-1.15'
AMDEPBACKSLASH='\'
AMDEP_FALSE='#'
AMDEP_TRUE=''
AMTAR='$${TAR-tar}'
AM_BACKSLASH='\'
AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
AM_DEFAULT_VERBOSITY='0'
AM_V='$(V)'
AR='ar'
AUTOCONF='${SHELL} /___packages/isl/isl-0.21-build/missing autoconf'
AUTOHEADER='${SHELL} /___packages/isl/isl-0.21-build/missing autoheader'
AUTOMAKE='${SHELL} /___packages/isl/isl-0.21-build/missing automake-1.15'
AWK='gawk'
CC='x86_64-pc-cygwin-gcc'
CCDEPMODE='depmode=gcc3'
CFLAGS='-O3 -fomit-frame-pointer -malign-double -fstrict-aliasing
-ffast-math'
CLANG_CXXFLAGS=''
CLANG_LDFLAGS=''
CLANG_LIBS=''
CLANG_RFLAG=''
CPP='x86_64-pc-cygwin-gcc -E'
CPPFLAGS=''
CXX11FLAGS=''
CXX='CC'
CXXCPP='/lib/cpp'
CXXDEPMODE='depmode=gcc3'
CXXFLAGS=''
CYGPATH=''
CYGPATH_W='cygpath -w'
DEFS=''
DEPDIR='.deps'
DLLTOOL='dlltool'
DSYMUTIL=''
DUMPBIN=''
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP='/usr/bin/grep -E'
EXEEXT='.exe'
FGREP='/usr/bin/grep -F'
GENERATE_DOC_FALSE=''
GENERATE_DOC_TRUE=''
GIT_HEAD=''
GIT_HEAD_ID=''
GIT_HEAD_VERSION=''
GMP_FOR_MP_FALSE=''
GMP_FOR_MP_TRUE=''
GREP='/usr/bin/grep'
HAVE_CLANG_FALSE=''
HAVE_CLANG_TRUE=''
HAVE_CPP_ISL_H_FALSE=''
HAVE_CPP_ISL_H_TRUE=''
HAVE_CXX11='0'
HAVE_CXX11_FALSE=''
HAVE_CXX11_TRUE=''
HAVE_PYTHON_FALSE=''
HAVE_PYTHON_TRUE=''
IMATH_FOR_MP_FALSE=''
IMATH_FOR_MP_TRUE=''
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
LD='/usr/x86_64-pc-cygwin/bin/ld.exe'
LDFLAGS=''
LIBOBJS=''
LIBS=''
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
LIB_CLANG_EDIT=''
LIPO=''
LN_S='ln -s'
LTLIBOBJS=''
LT_SYS_LIBRARY_PATH=''
MAKEINFO='${SHELL} /___packages/isl/isl-0.21-build/missing makeinfo'
MANIFEST_TOOL=':'
MKDIR_P='/usr/bin/mkdir -p'
MP_CFLAGS=''
MP_CPPFLAGS=''
MP_LDFLAGS=''
MP_LIBS=''
NEED_GET_MEMORY_FUNCTIONS_FALSE=''
NEED_GET_MEMORY_FUNCTIONS_TRUE=''
NM='/usr/bin/nm -B'
NMEDIT=''
OBJDUMP='objdump'
OBJEXT='o'
OS_SRCDIR=''
OTOOL64=''
OTOOL=''
PACKAGE='isl'
PACKAGE_BUGREPORT='[hidden email]'
PACKAGE_NAME='isl'
PACKAGE_STRING='isl 0.21'
PACKAGE_TARNAME='isl'
PACKAGE_URL=''
PACKAGE_VERSION='0.21'
PATH_SEPARATOR=':'
PDFLATEX=''
PERL=''
POD2HTML=''
PRTDIAG=''
PYTHON=''
PYTHON_EXEC_PREFIX=''
PYTHON_PLATFORM=''
PYTHON_PREFIX=''
PYTHON_VERSION=''
RANLIB='ranlib'
SED='/usr/bin/sed'
SET_MAKE=''
SHELL='/bin/sh'
SMALL_INT_OPT_FALSE=''
SMALL_INT_OPT_TRUE=''
STRIP='strip'
VERSION='0.21'
WARNING_FLAGS=''
ac_ct_AR='ar'
ac_ct_CC=''
ac_ct_CXX='CC'
ac_ct_DUMPBIN=''
am__EXEEXT_FALSE=''
am__EXEEXT_TRUE=''
am__fastdepCC_FALSE='#'
am__fastdepCC_TRUE=''
am__fastdepCXX_FALSE='#'
am__fastdepCXX_TRUE=''
am__include='include'
am__isrc=' -I$(srcdir)'
am__leading_dot='.'
am__nodep='_no'
am__quote=''
am__tar='$${TAR-tar} chof - "$$tardir"'
am__untar='$${TAR-tar} xf -'
bindir='${exec_prefix}/bin'
build='x86_64-pc-cygwin'
build_alias='x86_64-pc-cygwin'
build_cpu='x86_64'
build_os='cygwin'
build_vendor='pc'
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
dvidir='${docdir}'
exec_prefix='NONE'
host='x86_64-pc-cygwin'
host_alias='x86_64-pc-cygwin'
host_cpu='x86_64'
host_os='cygwin'
host_vendor='pc'
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
install_sh='${SHELL} /___packages/isl/isl-0.21-build/install-sh'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
llvm_config_found=''
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
mkdir_p='$(MKDIR_P)'
oldincludedir='/usr/include'
pdfdir='${docdir}'
pkgconfig_libdir=''
pkgconfig_libfile=''
pkgpyexecdir=''
pkgpythondir=''
prefix='/usr'
program_transform_name='s,x,x,'
psdir='${docdir}'
pyexecdir=''
pythondir=''
runstatedir='${localstatedir}/run'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target_alias='x86_64-pc-cygwin'
versioninfo='21:0:0'

## ----------- ##
## confdefs.h. ##
## ----------- ##

/* confdefs.h */
#define PACKAGE_NAME "isl"
#define PACKAGE_TARNAME "isl"
#define PACKAGE_VERSION "0.21"
#define PACKAGE_STRING "isl 0.21"
#define PACKAGE_BUGREPORT "[hidden email]"
#define PACKAGE_URL ""
#define PACKAGE "isl"
#define VERSION "0.21"
#define GCC_WARN_UNUSED_RESULT __attribute__((__warn_unused_result__))
#define HAVE___ATTRIBUTE__ 1
#define STDC_HEADERS 1
#define HAVE_SYS_TYPES_H 1
#define HAVE_SYS_STAT_H 1
#define HAVE_STDLIB_H 1
#define HAVE_STRING_H 1
#define HAVE_MEMORY_H 1
#define HAVE_STRINGS_H 1
#define HAVE_INTTYPES_H 1
#define HAVE_STDINT_H 1
#define HAVE_UNISTD_H 1
#define HAVE_DLFCN_H 1
#define LT_OBJDIR ".libs/"

configure: exit 1




--
Sent from: http://gcc.1065356.n8.nabble.com/gcc-fortran-f719652.html
Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

Steve Kargl
On Fri, Oct 04, 2019 at 04:25:53AM -0700, rih5342 wrote:
>
> This is my ISL config.log
>

AFAIK, none of the gfortran contributors use cygwin.
You need to contact cygwin developers.
https://cygwin.com/lists.html

The [hidden email] list is used for discussing
the development of gfortran and for patch submission.

--
steve
Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

jerry DeLisle-3
On 10/4/19 6:25 AM, Steve Kargl wrote:
> On Fri, Oct 04, 2019 at 04:25:53AM -0700, rih5342 wrote:
>>
>> This is my ISL config.log
>>
>
> AFAIK, none of the gfortran contributors use cygwin.
> You need to contact cygwin developers.
> https://cygwin.com/lists.html
>

Agree with Steve. Regardless last night I did install Cygwin on one of my
machines and if you contact me off this list I will see where we get with it.

Rob can you send me a list of which packages you are trying to build vs getting
them as Cygwin packages, ISL seems to be one of them.

Regards,

Jerry

Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

Janus Weil-3
In reply to this post by rih5342
Am Do., 3. Okt. 2019 um 14:41 Uhr schrieb rih5342 <[hidden email]>:

> I've tried building ISL  V19, V20, and V21, all with the same result.
>

https://gcc.gnu.org/install/prerequisites.html says that isl version 0.15
or later is needed. Cygwin provides a libisl-devel package in version
0.16.1. Why don't you use that instead of building isl yourself?

Also: Are you sure you need gfortran 8.3? Cygwin provides a gcc-fortran
package in version 7.4.0, which can be installed very easily. In fact I'm
just seeing that there also is a version "8.3.0-1 (Test)". Try using that!

And finally (as already suggested by Tobias): If you really need to build
gfortran yourself on cygwin, why don't you build the latest release 9.2?

Cheers,
Janus
Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

rih5342
I want to participate in the gfortran process, building from scratch,
torturing etc.

ISL is a sticking point. Configure sanity checks don't see the cygwin cpp
compiler.

Looking forward, I'll focus on gfortran V9.



--
Sent from: http://gcc.1065356.n8.nabble.com/gcc-fortran-f719652.html
Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

jerry DeLisle-3
On 10/5/19 3:11 PM, rih5342 wrote:

> I want to participate in the gfortran process, building from scratch,
> torturing etc.
>
> ISL is a sticking point. Configure sanity checks don't see the cygwin cpp
> compiler.
>
> Looking forward, I'll focus on gfortran V9.
>
>
>
> --
> Sent from: http://gcc.1065356.n8.nabble.com/gcc-fortran-f719652.html
>

You might consider running lubuntu in vbox on windows and set it up as your
development environment for gfortran, You would have smoother results. It
depends a lot on your machine capabilities, personal preferences of course, and
experiance level with things like linux.

In the meantime, I did get the git repository set up on my windows machine no
problem in Cygwin.

Jerry
Reply | Threaded
Open this post in threaded view
|

Re: W10 + Cygwin-3.0.7 + Gfortran

Damian Rouson-4
On Sun, Oct 6, 2019 at 12:44 Jerry DeLisle <[hidden email]> wrote:

>
> You might consider running lubuntu in vbox on windows and set it up as
> your
> development environment for gfortran, You would have smoother results.


In case it’s useful, there’s a free Lubuntu Linux virtual machine with
gfortran 9 pre-installed at

www.sourceryinstitute.org/store

It think it also has OpenCoarrays, which you’ll need if you’re want to
generate parallel executable programs using any of the Fortran 2018
parallel features.

Alternatively, you might instead install Microsoft’s Windows Subsystem for
Linux (WSL). Then install gfortran should be as simple launch a bash shell
and typing

sudo apt install gfortran

I hope this is helpful.

Damian