source: trunk/configure.ac @ 764

Last change on this file since 764 was 764, checked in by mbanovic, 4 months ago

Merge branch swig into svn.

The following commits have been merged:

commit 15c64c07d051ef872afd8bc04f772624ac3c0580
Merge: a22cb31 617f278
Author: Mladen Banovic <mladenbanovic2705@…>
Date: Wed Jan 30 14:53:13 2019 +0100

Merge branch 'swig'

commit 617f2781bde18dd7c58f3a2554dec70d94cedd92
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Dec 21 16:23:11 2018 +0100

remove unnecessary %include

commit b7718a5407516afea3b1dabafeb3fa084a9b1ab3
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Dec 21 16:12:06 2018 +0100

fix destructors for EDF classes

commit 79ae7862f370fbbc04033d42cfd796b429c19e5f
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Dec 21 15:52:29 2018 +0100

improve test.py example

commit 0dbe7842bde1f9f92909fed8459e8298183c7890
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Dec 21 15:47:43 2018 +0100

add python examples

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 08ae3d98cadfb86016a48322319548d549ae3418
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Dec 21 15:47:14 2018 +0100

Make external functions work

EDFobject_v2 is not implemented yet

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit acfd9c5e41c2c2e99d7e530f0837dd6a5b0dac96
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Tue Dec 11 12:07:01 2018 +0100

regenerate doc

commit c673f73ee35f8b8ce74258add01e085e68c0c13a
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Tue Dec 11 12:06:21 2018 +0100

add python and R installation to doc

commit 317c3c5a6744d38091e809d804c23d637d900fe9
Author: kulshres <kulshres@94ac48a7-3327-4b6a-8511-9a4036a20e83>
Date: Wed Jun 13 15:21:36 2018 +0000

make init_lib() static to avoid name clashes in other units

git-svn-id: https://projects.coin-or.org/svn/ADOL-C/trunk@758 94ac48a7-3327-4b6a-8511-9a4036a20e83

commit 9a291b9b5646ae665382efafc3e9993c51aa4bc0
Author: kulshres <kulshres@94ac48a7-3327-4b6a-8511-9a4036a20e83>
Date: Wed Jun 13 15:02:22 2018 +0000

rename void init() to void init_lib()

this function is totally internal to tape_handling.cpp and called
from the constructor of Keeper class. However the name init() seems to refer
to something else in the scope of the class and correct initialization
isn't done, causing errors later.

git-svn-id: https://projects.coin-or.org/svn/ADOL-C/trunk@757 94ac48a7-3327-4b6a-8511-9a4036a20e83

commit f84f47f5f12c9a69ef44ccefe1b654fa3524cda3
Merge: 5021e4a 6c0d2d5
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Oct 11 21:53:14 2017 +0200

Merge branch 'swig' of gitlab.com:adol-c/adol-c into swig

commit 5021e4ab8cab3fd0760635e13c1a59e25f3c7eb6
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Oct 11 21:44:36 2017 +0200

add abs and rename asin/acos/atan to arcsin/arccos/arctan etc

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 6c0d2d5c9c90350b384b360dfb9659c9f2ca4bd6
Merge: cba0df1 2444ff3
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Oct 5 19:39:47 2017 +0000

Merge branch 'swig' into 'swig'

Python setup.py and R interface

See merge request adol-c/adol-c!11

commit 2444ff3a28e4a33a4670c8ebf6956f7c85a2274e
Merge: 068b059 946c873
Author: Sri Hari Krishna Narayanan <snarayan@…>
Date: Thu Oct 5 12:26:38 2017 -0500

Merge branch 'swig' of gitlab.com:sriharikrishna/adol-c into swig

commit 068b0592f59cbd11a434dca90be74ffbb767bde3
Author: Sri Hari Krishna Narayanan <snarayan@…>
Date: Thu Oct 5 12:19:52 2017 -0500

Change all use of clib to lib

commit ac987aca06b5c932adbd31bcf08811008b325257
Author: Sri Hari Krishna Narayanan <snarayan@…>
Date: Thu Oct 5 12:10:27 2017 -0500

Add python linking libraries

commit cba0df178387670ec3a1b94c237e13542090e78d
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Tue Sep 5 13:37:03 2017 +0200

make psdrivers numpy conformant and remove one warning

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit e450b62a4b3e501e9940400137fc89351dbdb8ba
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Tue Sep 5 13:35:07 2017 +0200

Make interface of psdrivers conformant and remove redundant parameter

Letters are as represented in the 2017 OMS paper.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 83c5f035130849b98a299857c7c5524a6ffb29a2
Merge: a50a2e1 363e176
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Aug 3 14:05:37 2017 +0200

Merge branch 'master' into swig

commit a50a2e19f79d3178592948c400d6eb89ed828b06
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Jun 22 13:52:26 2017 +0200

make setup.py install do everything

Of course this assumes you have autotools, libtool, and C++ compiler
previously installed as well as boost library and colpack.

commit 1a5f22002c83b99e8d69c297ae89cb03cc304e50
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Jun 22 13:51:41 2017 +0200

add missing support for numpy.sqrt

this was seemingly just oversight

commit f06f5011e183a203eca79444d6b175556f242f6a
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Jun 16 12:43:46 2017 +0200

add a setup.py for compatibilty with python installers

like pip or anaconda. In this case the setup.py will compile the C/C++
original library as well as the swig wrapper.
arguments to build are:
--lib-prefix=<DIR>

will install the C/C++ library andn headers in <DIR>/include <DIR>/lib64

--colpack-dir=<DIR>

will assume that ColPack? is installed in <DIR>/include and <DIR>/lib64

--boost-dir=<DIR>

will assume that boost is installed in <DIR>/include and <DIR>/lib64

I haven't tested on anything except 64-bit linux until now.

for install I've only tested installing with --user option

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit cd793f6a8503a1e3751cfaeb843af249c522ce46
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri May 5 10:16:23 2017 +0200

a slightly more meaningful naming

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 4c2a248fe5937daf292948e8ace9af0e4ccdffc1
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri May 5 10:08:24 2017 +0200

Fix Python Exception properly

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit f272c673fcb0941f3f054462eb9843be4e8b829a
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Apr 26 17:29:37 2017 +0200

export the cleanUp() function for wrappers

commit 0ed3a9394d3ed0e2804a3cef8b39dba105817e84
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Apr 19 18:09:39 2017 +0200

python3 compatibility and slight change in swigprocess.py

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit c085c16e96c2f5bce7f4a50a77d4164bcaa47cf6
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Feb 16 15:58:46 2017 +0100

add headers for implicit inclusions in edfclasses.h

commit 239078661e4d41e6ecdb131311f2fafe560874f3
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Feb 16 09:24:17 2017 +0100

add support for vectors and matrices in octave drivers

forward and reverse drivers to come. sparse drivers to come

commit 19e89992da84bdf392233c8add69d02bed714e60
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Dec 22 10:24:44 2016 +0100

Add swig interface for octave

commit 76a264d5412c5599102a4c9a182d3163a6ab6851
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Nov 18 15:49:36 2016 +0100

rename persistent local header to .hpp

since it is a c++ header. And some temporary .h files are created that
will require cleaning in 'make clean'

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit b59d463221a708e98af350decd97bdd26feb27d7
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Fri Nov 18 14:01:19 2016 +0100

reorder some lines to fix compilation and %ignore issues

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 26535bfc6d9db954c246d991b5ef09d8cd8d66d1
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Nov 17 10:43:14 2016 +0100

Add directors for python extension of edfclasses.h

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit c522a5f6400e819eb393cfe44a68cae06fbb9ffe
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Nov 2 14:26:11 2016 -0500

call() must not be overloaded by child classes either

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 98fc1f127e71c3ffef73ed43525cd21ec45942b1
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Nov 2 14:19:59 2016 -0500

init_edf() must not be overloaded by child classes

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 1e5e0c68a7a0ff3369e9a3991edaa7d04164a3e5
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Nov 2 14:05:40 2016 -0500

design a C++ object oriented wrapper for external functions

it is easier to work with classes, inheritence and overloaded member
functions in scripting languages like python and R instead of raw
pointers to functions in order to call arbitrary code.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 782465d4175a2453934cd1ffe9649e3f78a42c75
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Sep 14 09:49:12 2016 +0200

add support for calling numpy.cos and friends on adouble arrays

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit b0ed723914bdc46ce9128727972dc287288b0a71
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Aug 10 18:28:43 2016 +0200

helper for printing exception

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 6f263543749e7fcb688e8af5cde68da3745886b5
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Aug 10 18:06:59 2016 +0200

expose FatalError? to swig python interface

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 7f579bb5629eb5f5c5a49ce4d0484a306640748d
Merge: d2f49d3 3bbd2a2
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Aug 10 17:54:41 2016 +0200

Merge branch 'master' into swig

commit d2f49d373e00f583e9b7c0ee69c160fbae1322c7
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Aug 10 13:37:10 2016 +0200

improve logic in fmin and fmax

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit e138ca65b6361b23a4000c77128d0ed684662e1c
Merge: cafefb7 3c5e311
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Aug 10 13:31:06 2016 +0200

Merge remote-tracking branch 'origin/swig' into swig

commit cafefb7081ff8d5ba7c772b5b022404101b813e0
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Aug 10 13:30:32 2016 +0200

wrap newly added functions in master branch

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit ff975ebd035995f0e9dc01578ac3e84b91b1604f
Merge: 02e32a7 4c79b27
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Aug 10 13:11:42 2016 +0200

Merge remote-tracking branch 'origin/master' into swig

commit 02e32a7aa72d4310238f7ae9b85a52e29b46cf4a
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Aug 10 13:09:31 2016 +0200

add fmin, fmax, fabs, and printTapeStats for swig-python

fmin, fmax and fabs should work on scalars as well as badoubles

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 3c5e3112cdb978f0274f4d6cacd128abc034ff9b
Merge: dd06803 7aa4b9a
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Mon Aug 8 13:37:12 2016 +0200

Merge branch 'master' into swig

commit dd06803b3f40b3057976c315241f583bc0007397
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Aug 4 15:08:45 2016 +0200

raise exceptions for retracing in python

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit d253dfaa74f38b5b545f4f88ba08d86a65aa960a
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Jul 21 13:49:16 2016 +0200

fix typo in variable name

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit ade470ecf44fad03025ef9fcfadc5cac5d3e9f80
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Jul 21 11:36:06 2016 +0200

handle locint as an unsigned long

for some reason swig doesn't do this on it's own.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit e60c95d9dd70d962aed3caed4e05d0ef48ffcab2
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Jul 21 11:04:44 2016 +0200

use the compiler set up in ${CXX}

if ${CXX} is not set it defaults to 'c++'

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 42b439a47e2601325cb4d02aa27ac4b9c0535eea
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Jul 21 03:12:12 2016 +0200

add numpy compatible set_param_vec()

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 774a2204590aeb57cbc18e654bc6fe21763142c2
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Jul 21 02:41:22 2016 +0200

add function to convert numpy arrays directly to adouble arrays

works for any contiguous iterable type like list, tuple etc.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit c3e04155d83b3ee76df294c2adea78ca1df865f0
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Jul 14 10:57:43 2016 +0200

refresh swig patches for current swig master branch

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 48e0ef1cf7650d5b2e232d0d5450a158080d7849
Merge: 52445e4 06427e9
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Jul 14 10:36:59 2016 +0200

Merge branch 'master' into swig

commit 52445e41a8b768299084702418973ec79bd972c2
Merge: 666ba79 7507929
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Mar 23 14:59:05 2016 +0100

Merge branch 'master' into swig

commit 666ba7931e001bfd78171c7347b400b359dbd2d2
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Wed Mar 23 14:58:59 2016 +0100

add reverse drivers and use kwargs for overloaded forward/reverse call

also add tapestats.
more reverse drivers coming.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit c16bf7ff198728740896a804d85684c0575c1e47
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Mon Mar 21 16:08:10 2016 +0100

add conversion for contiguous matrices and tensors

this time in the swig interface only, because they aren't
needed anywhere else.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit f3895ffd1dbb07b8a04e867982683ae8de7a5052
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Mon Mar 21 15:45:22 2016 +0100

Revert "add conversion for contiguous matrices and tensors"

This reverts commit 7ad2746027b650147ec1d2da6567a3e5a7ecb876.

commit 76eb5d0899280cb9e3b4f4c1902823a45e884774
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Mon Mar 21 13:46:12 2016 +0100

change forward drivers to return numpy arrays

instead of expecting inplace arguments

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 73bde825b256809ae07d124c1c6c66e9ae50eb82
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Mon Mar 21 12:57:20 2016 +0100

change drivers to return numpy arrays

instead of expecting inplace arguments for output

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 946c87335675e68b7ea826eadd801d8d6fca4f54
Author: Sri Hari Krishna Narayanan <sriharikrishna@…>
Date: Thu Mar 17 07:55:25 2016 -0500

R: Added special handling for sparse_jac

commit 74d1c42cf5704c5ed7ae193cab6b2344334219c5
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Tue Mar 15 14:32:47 2016 +0100

fix inclusion of sparse drivers for swig (and other users)

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit e97a73cc2a33645c517a83367d3e709ff3f4a244
Merge: de9eef7 dbc9f38
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Mar 10 22:52:57 2016 +0000

Merge branch 'swig' into 'swig'

Swig/R

Cleanup

See merge request !4

commit dbc9f3847b58781367d8bcfd0545f3283d3ce350
Merge: b2dd718 de9eef7
Author: Sri Hari Krishna Narayanan <sriharikrishna@…>
Date: Thu Mar 10 16:45:26 2016 -0600

Merge remote-tracking branch 'origin/swig' into swig

commit b2dd71855ce277d4f956c99f04e03f954b0ff344
Author: Sri Hari Krishna Narayanan <sriharikrishna@…>
Date: Thu Mar 10 16:45:01 2016 -0600

R: removed extraneous pragmas

commit de9eef7ce7ba0d5a4256018f4d0bbf79bba25f7f
Merge: 0096858 fdaa52b
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Mar 10 22:37:21 2016 +0000

Merge branch 'swig' into 'swig'

Swig/R

Bugfixes for SWIG/R interface

See merge request !3

commit fdaa52bf6654fa2558c2982738f4de1f49c2c960
Merge: 2fa790a 0096858
Author: Sri Hari Krishna Narayanan <sriharikrishna@…>
Date: Thu Mar 10 16:20:57 2016 -0600

Merge remote-tracking branch 'origin/swig' into swig

commit 2fa790a85c04b41755e5587baa21e59fe7416ab9
Author: Sri Hari Krishna Narayanan <sriharikrishna@…>
Date: Thu Mar 10 16:13:41 2016 -0600

R: debug all SWIG and R related bugs.

SWIG 3.0.8 needs the two patches and the generated adolc.R needs
the diff. Then ADOL-C can be imported into the R runtime by
source ("init_adolc.R")

commit 009685847f9d81b97d7efcc85d02aa7325bb6b6a
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Mar 10 22:05:52 2016 +0100

reflect file rename in Makefile.am for packaging

commit 9c10d2065974fe1afba0284f5970e55f2e7f28b7
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Mar 10 22:05:04 2016 +0100

add numpy implementation for common drivers

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 08b723756aa4e6ab2e6ff3f6c3d532691c831019
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Mar 10 22:04:26 2016 +0100

change header extension to .hpp to suppress clang warning

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 109cb5ca0ae4c07592854af2a48cb6935e2e629b
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Mar 10 20:51:16 2016 +0100

numpy: Be more verbose in error message for mismatch of dimension

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit d76918c8e2306ca2e13665fae7feb183b45652aa
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Mar 10 19:58:08 2016 +0100

more licensing info

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 075bda30cf9d1a6432a9db4e587d6f3897ec8f1d
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Mar 10 18:47:47 2016 +0100

compile interface based on choice

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit c368a02f8d44ad772da5659234a8bdeed254ab7c
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Mar 10 18:21:54 2016 +0100

add numpy support to python swig interface for forward mode

also in swigprocess compatibility with macosx and general bugfixing

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 7ad2746027b650147ec1d2da6567a3e5a7ecb876
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Mar 10 18:13:35 2016 +0100

add conversion for contiguous matrices and tensors

Just a contiguous row major chunk for matrices ins't
good for indexing using 2 indices, we need to convert
it to double and add pointers. Similarly for tensors.

These will do just that, required for supporting numpy
arrays in the python swig interface

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 41cb636430fa636b4e25ab81da73d2e6fd741dec
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Mar 3 17:08:03 2016 +0100

more verbosity for invoking shell commands

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 82ee8be28c090f84da7eb8a1254440d301fc5675
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Mar 3 17:07:43 2016 +0100

add copyright and licensing everywhere

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit e5ec0154c1743d68b28e3fba1864742b23e3715b
Merge: 6ac52a6 a539d68
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Mar 3 16:28:40 2016 +0100

Merge branch 'master' into swig

commit 6ac52a6a45d8fc9c11c9b0c3b1d0399f6537eadc
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Mar 3 16:28:33 2016 +0100

make script more verbose

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit a6ef9a80ea9593ea5f1861d3ff19315b92a75130
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Tue Feb 2 08:09:26 2016 +0100

correction in documentation of sparse functions

commit dbd7a07a1f5bcd6871d9a728f34a3d0679e01e4f
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Dec 17 22:50:11 2015 +0100

add error handling and make script python3 compatible

the swig generated interface may still not be python3 compatible

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 35ee8b63bea8bf7a0dea7af0e85f69336c6702e5
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Dec 17 18:14:12 2015 +0100

define better python operators

just renaming doesn't work. Maybe we'll need something similar in R too
but since I don't know R, I can't say.

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

commit 9654fa7e3b2a83187ee828f2ec9b39e6300ecaa7
Author: Kshitij Kulshreshtha <kshitij@…>
Date: Thu Dec 17 14:34:58 2015 +0100

Add a swig based python and R interface to ADOL-C

Signed-off-by: Kshitij Kulshreshtha <kshitij@…>

  • Property svn:keywords set to Author Date Id Revision
File size: 24.3 KB
Line 
1##############################################################################
2# configure.ac -- Process this file with autoconf to produce configure
3# Revision: $Id: configure.ac 764 2019-01-30 14:44:40Z mbanovic $
4#
5# Copyright (C) Andrea Walther, Andreas Kowarz
6#               
7# contains patches from the COIN OR libtool
8#
9##############################################################################
10define([ADOLC_VER], [2])
11define([ADOLC_SUB], [6])
12define([ADOLC_LVL], [3])
13
14AC_PREREQ(2.67)
15AC_INIT(adolc,
16        ADOLC_VER.ADOLC_SUB.ADOLC_LVL-trunk,
17        [adol-c@list.coin-or.org])
18config_flags="$*"
19AC_REVISION($Revision: 764 $)
20AC_CONFIG_SRCDIR([ADOL-C/src/adouble.cpp])
21AC_CONFIG_AUX_DIR([autoconf])
22AC_CONFIG_MACRO_DIR([autoconf])
23AC_CONFIG_HEADERS([ADOL-C/src/config.h])
24AC_PREFIX_DEFAULT(${HOME}/adolc_base)
25AM_INIT_AUTOMAKE([1.11 dist-bzip2 foreign subdir-objects])
26AM_MAINTAINER_MODE([disable])
27AM_SILENT_RULES([yes])
28
29
30adolclib=adolc
31
32if test "x$CFLAGS" == x ; then
33    ac_shell_cflags="not_set"
34else
35    ac_shell_cflags="$CFLAGS"
36fi
37if test "x$CXXFLAGS" == x ; then
38    ac_shell_cxxflags="not_set"
39else
40    ac_shell_cxxflags="$CXXFLAGS"
41fi
42libdir_set_on_cmd="no"
43for i in $config_flags ; do
44    case $i in
45    -libdir | --libdir | --libdi | --libd | -libdir=* | --libdir=* | --libdi=* | --libd=*)
46            libdir_set_on_cmd="yes"
47            break
48            ;;
49    esac
50done
51
52AM_CONDITIONAL(DARWIN, [test "x${host_os#darwin}" != "x${host_os}"])
53
54AC_MSG_CHECKING(whether to build ADOL-C with adjoinable MPI (AMPI) support)
55AC_ARG_ENABLE(ampi,
56              [AS_HELP_STRING([--enable-ampi],[build ADOL-C with adjoinable MPI (AMPI) support [default=disabled]])],
57              [adolc_ampi_support=$enableval],[adolc_ampi_support=no])
58AC_MSG_RESULT($adolc_ampi_support)
59AM_CONDITIONAL(BUILD_ADOLC_AMPI_SUPPORT,[test x${adolc_ampi_support} = xyes])
60if test x"${adolc_ampi_support}" = xyes ; then
61AC_DEFINE(ADOLC_AMPI_SUPPORT,1,[defined if adjoinable MPI support is to be compiled in])
62fi
63
64AC_MSG_CHECKING(whether to build ADOL-C with MeDiPack (MPI) support)
65AC_ARG_ENABLE(medipack,
66              [AS_HELP_STRING([--enable-medipack],[build ADOL-C with MeDiPack (MPI) support [default=disabled]])],
67              [adolc_medipack_support=$enableval],[adolc_medipack_support=no])
68AC_MSG_RESULT($adolc_medipack_support)
69AM_CONDITIONAL(BUILD_ADOLC_MEDIPACK_SUPPORT,[test x${adolc_medipack_support} = xyes])
70if test x"${adolc_medipack_support}" = xyes ; then
71AC_DEFINE(ADOLC_MEDIPACK_SUPPORT,1,[defined if MeDiPack support is to be compiled in])
72fi
73
74LT_PREREQ([2.2.6])
75# checks for programs
76AC_PROG_CXX
77AX_CXX_COMPILE_STDCXX_11(noext,mandatory)
78AC_PROG_CC
79AC_PROG_CC_C_O
80AC_PROG_CC_C99
81AC_PROG_CPP
82AC_PROG_INSTALL
83AC_PROG_LN_S
84AC_PROG_MAKE_SET
85LT_INIT([disable-static win32-dll dlopen])
86
87if test "x$enable_static" != "xno" ; then
88   AC_MSG_WARN([Linking a user program with static ADOL-C library will always result in a segmentation fault])
89fi
90
91MPI_CONF_PRE
92
93AC_CHECK_SIZEOF([void *])
94if test "x$ac_cv_sizeof_void_p" = "x8" ; then
95   _lib=lib64
96else
97   _lib=lib
98fi
99if test "x$libdir_set_on_cmd" = "xno" ; then
100   libdir='${exec_prefix}'/"${_lib}"
101   AC_SUBST(_lib)
102   AC_SUBST(libdir)
103fi
104
105# check for builtin
106ACX_C_BUILTIN_EXPECT
107
108# checks for header files
109AC_HEADER_STDC
110AC_HEADER_TIME
111AC_HEADER_STDBOOL
112AC_CHECK_HEADERS([stddef.h stdlib.h stdio.h string.h unistd.h sys/timeb.h])
113
114# checks for types
115AC_C_CONST
116AC_C_INLINE
117AC_TYPE_SIZE_T
118AC_STRUCT_TM
119
120
121# Checks for libraries and fuctions
122AC_SEARCH_LIBS([pow], [m])
123AC_CHECK_FUNCS([floor fmax fmin ftime pow sqrt cbrt strchr strtol trunc])
124
125# substitutions
126AC_SUBST(ac_aux_dir)
127
128# ADOL-C configuration
129AC_DEFINE(ADOLC_VERSION,ADOLC_VER,[ADOL-C Version])
130AC_DEFINE(ADOLC_SUBVERSION,ADOLC_SUB,[ADOL-C Subversion])
131AC_DEFINE(ADOLC_PATCHLEVEL,ADOLC_LVL,[ADOL-C Patchlevel])
132ADOLC_VERSION=ADOLC_VER
133ADOLC_SUBVERSION=ADOLC_SUB
134ADOLC_PATCHLEVEL=ADOLC_LVL
135AC_SUBST(ADOLC_VERSION)
136AC_SUBST(ADOLC_SUBVERSION)
137AC_SUBST(ADOLC_PATCHLEVEL)
138
139# Checks for library functions
140AC_FUNC_MALLOC
141AC_FUNC_REALLOC
142if test x$ac_cv_func_malloc_0_nonnull != xyes ; then
143AC_DEFINE_UNQUOTED([calloc],[rpl_calloc],[Define to rpl_calloc if the replacement function should be used.])
144fi
145
146AC_MSG_CHECKING(whether to use calloc or malloc for memory allocation)
147AC_ARG_ENABLE(use-calloc,[AS_HELP_STRING([--disable-use-calloc],
148  [disable use of calloc and use malloc instead for memory allocation [default=calloc is used]])],
149  [use_calloc=$enableval],[use_calloc=yes])
150
151if test x$use_calloc = xyes ; then
152AC_MSG_RESULT(calloc)
153AC_DEFINE(ADOLC_USE_CALLOC,1,[Use calloc instead of malloc for memory allocation])
154else
155AC_MSG_RESULT(malloc)
156fi
157
158AC_MSG_CHECKING(whether to enable atrig/erf functions)
159AC_ARG_ENABLE(atrig-erf,[AS_HELP_STRING([--enable-atrig-erf],
160  [enable atrig and erf functions in ADOL-C [default=no]])],
161  [use_atrig_erf=$enableval],[use_atrig_erf=no])
162AC_MSG_RESULT($use_atrig_erf)
163
164if test x$use_atrig_erf = xyes ; then
165  ATRIG_ERF="#define ATRIG_ERF 1"
166else
167  ATRIG_ERF="#undef ATRIG_ERF"
168fi
169AC_SUBST(ATRIG_ERF)
170
171AC_MSG_CHECKING(whether to use 32-bit or 64-bit locations)
172AC_ARG_ENABLE(ulong,[AS_HELP_STRING([--enable-ulong],
173  [enable 64-bit locations (only available on 64-bit systems) [default=32-bit]])],
174  [use_ulong=$enableval],[use_ulong=no])
175
176if test x$use_ulong = xyes -a 0$ac_cv_sizeof_void_p -ge 8 ; then
177  UINT_TYPE=uint64_t
178  AC_MSG_RESULT(64-bit)
179else
180  UINT_TYPE=uint32_t
181  AC_MSG_RESULT(32-bit)
182fi
183AC_SUBST(UINT_TYPE)
184
185AC_MSG_CHECKING(whether to use single or double precision)
186AC_ARG_ENABLE(double,[AS_HELP_STRING([--disable-double],
187  [disable double precision arithmetic [untested, default=double is enabled]])],
188  [use_double=$enableval],[use_double=yes])
189
190if test x$use_double = xno ; then
191  REAL_TYPE=float
192  echo
193  echo -n "using ${REAL_TYPE} is not well tested, please report bugs if you find any..."
194else
195  REAL_TYPE=double
196fi
197AC_MSG_RESULT($REAL_TYPE)
198AC_SUBST(REAL_TYPE)
199
200AC_MSG_CHECKING(whether to enable advanced branching operations)
201AC_ARG_ENABLE(advanced-branching, [AS_HELP_STRING([--enable-advanced-branching],
202  [enable advanced branching operations to reduce retaping [default=no].
203The boolean valued comparison operators with two adouble arguments will
204not return boolean results but the active results may be used to automatically
205switch branches in conjunction with condassign or advector (see manual).])],
206  [use_advbranch=$enableval],[use_advbranch=no])
207AC_MSG_RESULT($use_advbranch)
208
209if test x$use_advbranch = xyes ; then
210  ADVBRANCH="#define ADOLC_ADVANCED_BRANCHING 1"
211else
212  ADVBRANCH="#undef ADOLC_ADVANCED_BRANCHING"
213fi
214AC_SUBST(ADVBRANCH)
215
216AC_MSG_CHECKING(whether to enable activity tracking)
217AC_ARG_ENABLE(activity-tracking, [AS_HELP_STRING([--enable-activity-tracking],
218  [enable activity tracking to reduce trace size but increased tracing time [default=no].
219Only the operations involving actual dependency relationships from the
220independent variables will be recorded on the trace, this however
221requires more checks to be performed during the tracing and increases
222tracing time. Useful only if memory is a constraint and tracing is
223done fewer times than derivative computations.])],
224  [use_activities=$enableval],[use_activities=no])
225AC_MSG_RESULT($use_activities)
226
227if test x$use_activities = xyes ; then
228AC_DEFINE(ADOLC_TRACK_ACTIVITY,1,[ADOL-C activity tracking in live variables])
229fi
230
231AC_MSG_CHECKING(whether to use ADOL-C debug mode)
232AC_ARG_ENABLE(debug,
233              [
234AS_HELP_STRING([--enable-debug],[enable ADOL-C debug mode [default=no]])],
235  [
236  adolc_debug=$enableval
237   AC_MSG_RESULT($adolc_debug)
238   ],
239  [
240   adolc_debug=no
241   AC_MSG_RESULT(no)
242   ])
243
244AC_MSG_CHECKING(whether to use ADOL-C hard debug mode)
245AC_ARG_ENABLE(harddebug,
246              [
247AS_HELP_STRING([--enable-harddebug],[enable ADOL-C hard debug mode
248 [default=no]])],
249  [
250   adolc_harddebug=$enableval
251   AC_MSG_RESULT($adolc_harddebug)
252   ],
253  [
254   adolc_harddebug=no
255   AC_MSG_RESULT(no)
256   ])
257
258if test x$adolc_harddebug == xyes ; then
259adolc_debug=yes
260AC_DEFINE(ADOLC_HARDDEBUG,1,[ADOL-C hard debug mode])
261fi
262
263if test x$adolc_debug == xyes ; then
264AC_DEFINE(ADOLC_DEBUG,1,[ADOL-C debug mode])
265fi
266
267AC_MSG_CHECKING(whether the default adouble constructor should initialize the value to 0)
268AC_ARG_ENABLE(stdczero,
269              [
270AS_HELP_STRING([--disable-stdczero],[adouble default constructor does not initialize the value to zero
271(improves performance but yields incorrect results for implicit array initializations, see manual) [default=enabled]])],
272  [
273  adolc_stdczero=no
274  AC_MSG_RESULT(no)
275  ],
276  [
277  adolc_stdczero=yes
278  AC_MSG_RESULT(yes)
279  ])
280
281if test x$adolc_stdczero == xyes; then
282AC_DEFINE(ADOLC_ADOUBLE_STDCZERO,1,[ADOL-C adouble zeroing mode])
283fi
284
285AC_MSG_CHECKING(whether the adouble variables have a late initialize option for functions like malloc/realloc)
286AC_ARG_ENABLE(lateinit,
287              [
288AS_HELP_STRING([--enable-lateinit],[adouble constructors need to be called. With malloc or realloc that is not the case. With this option the adouble can do a late initialization.) [default=disabled]])],
289  [
290  adolc_late_init=yes
291  AC_MSG_RESULT(yes)
292  ],
293  [
294  adolc_late_init=no
295  AC_MSG_RESULT(no)
296  ])
297
298if test x$adolc_late_init == xyes; then
299AC_DEFINE(ADOLC_ADOUBLE_LATEINIT,1,[ADOL-C adouble late initialization mode])
300fi
301
302AC_MSG_CHECKING(whether errno is thread save)
303AC_ARG_ENABLE(tserrno,
304              [
305AS_HELP_STRING([--enable-tserrno],[use errno as thread number cache [default=no]])],
306  [
307  adolc_tserrno=$enableval
308  AC_MSG_RESULT($adolc_tserrno)
309   ],
310  [
311  adolc_tserrno=no
312  AC_MSG_RESULT(no)
313  ])
314
315if test x$adolc_tserrno == xyes ; then
316AC_DEFINE(ADOLC_THREADSAVE_ERRNO,1,[ADOL-C thread save errno mode])
317fi
318
319AC_MSG_CHECKING(which flag to use to enable OpenMP)
320AC_ARG_WITH(openmp-flag,
321            [AS_HELP_STRING([--with-openmp-flag=FLAG],
322                            [use FLAG to enable OpenMP at compile time [default=none]])],
323            [ac_adolc_openmpflag=$withval
324             AC_MSG_RESULT($ac_adolc_openmpflag)],
325            [ac_adolc_openmpflag=""
326             AC_MSG_RESULT(none)])
327
328AX_BOOST_BASE([1.54],[boost_new=yes],[boost_new=no])
329if test x$boost_new = xyes ; then
330CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS"
331AC_LANG_PUSH([C++])
332AC_CHECK_HEADERS([boost/pool/pool_alloc.hpp])
333AC_LANG_POP([C++])
334AX_BOOST_SYSTEM
335LDFLAGS="$LDFLAGS $BOOST_LDFLAGS $BOOST_SYSTEM_LIB"
336fi
337
338if test "x$want_boost" = xyes -a "x$boost_new" = xyes -a "x$ac_cv_header_boost_pool_pool_alloc_hpp" = xyes -a "x$link_system" = xyes ; then
339    using_boost_pool=yes
340    USE_BOOST_POOL="#define USE_BOOST_POOL 1"
341else
342    using_boost_pool=no
343    USE_BOOST_POOL="#define USE_BOOST_POOL 0"
344fi
345AC_SUBST(USE_BOOST_POOL)
346
347if test "x$using_boost_pool" = xyes -a "x$ac_adolc_openmpflag" = x ; then
348   AC_DEFINE(BOOST_POOL_NO_MT,1,[Boost pool should not assume multithreading])
349fi
350
351# ADOL-C Sparse facility
352AC_MSG_CHECKING(whether to build sparse drivers)
353AC_ARG_ENABLE(sparse,
354            [
355AS_HELP_STRING([--enable-sparse],[build sparse drivers [default=disabled]])],
356            [sparse=$enableval
357             AC_MSG_RESULT($sparse)],
358            [sparse="no"
359             AC_MSG_RESULT(no)])
360
361COLPACK_CONF
362
363AM_CONDITIONAL(SPARSE,[test x${sparse} = xyes])
364
365SPARSE_DRIVERS="#undef SPARSE_DRIVERS"
366
367if test x$sparse = xyes ; then
368   AC_DEFINE(SPARSE,[1],[Define 1 if sparse derivative propagation is to be enabled])
369   SPARSE_DRIVERS="#define SPARSE_DRIVERS 1"
370fi
371
372AC_SUBST(SPARSE_DRIVERS)
373
374# ADOL-C Examples
375AC_MSG_CHECKING(whether to build documented examples)
376AC_ARG_ENABLE(docexa,
377            [
378AS_HELP_STRING([--enable-docexa],[build documented examples [default=disabled]])],
379            [docexa=$enableval
380             AC_MSG_RESULT(yes)],
381            [docexa="no"
382             AC_MSG_RESULT(no)])
383AM_CONDITIONAL(DOCEXA,[test x${docexa} = xyes])
384
385AC_MSG_CHECKING(whether to build additional examples)
386AC_ARG_ENABLE(addexa,
387            [AS_HELP_STRING([--enable-addexa],
388                            [build additional examples [default=disabled]])],
389            [addexa=$enableval
390             AC_MSG_RESULT(yes)],
391            [addexa="no"
392             AC_MSG_RESULT(no)])
393AM_CONDITIONAL(ADDEXA,[test x${addexa} = xyes])
394
395AC_MSG_CHECKING(whether to build parallel example)
396AC_ARG_ENABLE(parexa,
397            [AS_HELP_STRING([--enable-parexa],
398                            [build parallel example [default=disabled], if enabled -with-openmp-flag=FLAG required])],
399            [parexa=$enableval
400             AC_MSG_RESULT(yes)],
401            [parexa="no"
402             AC_MSG_RESULT(no)])
403AM_CONDITIONAL(PAREXA,[test x${parexa} = xyes])
404
405# ADOL-C Compilation flags
406AC_MSG_CHECKING(which CFLAGS to use)
407AC_ARG_WITH(cflags,
408            [AS_HELP_STRING([--with-cflags=FLAGS],
409                            [use CFLAGS=FLAGS (default: -O2)])],
410            [ac_adolc_cflags="$withval"
411             if test x${adolc_debug} == xyes ||
412                test x${adolc_harddebug} == xyes ; then
413                ac_adolc_cflags="$ac_adolc_cflags -g -O0"
414             fi
415             ac_adolc_cflags="$ac_adolc_cflags $ac_adolc_openmpflag"
416             AC_SUBST(ac_adolc_cflags)
417             AC_MSG_RESULT($ac_adolc_cflags)],
418            [if test "$ac_shell_cflags" = "not_set"; then
419                ac_adolc_cflags="-O2"
420                if test x${adolc_debug} == xyes ||
421                   test x${adolc_harddebug} == xyes ; then
422                   ac_adolc_cflags="-g -O0 -Wall -ansi"
423                fi
424             else
425                ac_adolc_cflags="$CFLAGS"
426             fi
427             ac_adolc_cflags="$ac_adolc_cflags $ac_adolc_openmpflag"
428
429             AC_SUBST(ac_adolc_cflags)
430             AC_MSG_RESULT($ac_adolc_cflags)])
431
432AC_MSG_CHECKING(which CXXFLAGS to use)
433AC_ARG_WITH(cxxflags,
434            [AS_HELP_STRING([--with-cxxflags=FLAGS],
435                            [use CXXFLAGS=FLAGS (default: -O2)])],
436            [ac_adolc_cxxflags="$withval"
437             if test x${adolc_debug} == xyes ||
438                test x${adolc_harddebug} == xyes ; then
439                ac_adolc_cxxflags="$ac_adolc_cxxflags -g -O0"
440             fi
441             ac_adolc_cxxflags="$ac_adolc_cxxflags $ac_adolc_openmpflag"
442             AC_SUBST(ac_adolc_cxxflags)
443             AC_MSG_RESULT($ac_adolc_cxxflags)],
444            [if test "$ac_shell_cxxflags" = "not_set"; then
445                ac_adolc_cxxflags="-O2"
446                if test x${adolc_debug} == xyes ||
447                   test x${adolc_harddebug} == xyes ; then
448                   ac_adolc_cxxflags="-g -O0 -Wall"
449                fi
450             else
451                ac_adolc_cxxflags="$CXXFLAGS"
452             fi
453             ac_adolc_cxxflags="$ac_adolc_cxxflags $ac_adolc_openmpflag"
454            AC_SUBST(ac_adolc_cxxflags)
455            AC_MSG_RESULT($ac_adolc_cxxflags)])
456
457MPI_CONF_POST
458AMPI_CONF
459MEDIPACK_CONF
460
461AC_ARG_WITH(soname,
462            [AS_HELP_STRING([--with-soname=NAME],
463              [user can choose what to call his library here [default: if ampi enabled then adolc_ampi otherwise adolc]])],
464      [adolclib=$withval])
465
466AC_SUBST(adolclib)
467
468AC_MSG_CHECKING(whether tape_doc should compute values as it prints the tape contents)
469AC_ARG_ENABLE(tapedoc_values,
470              [
471                AS_HELP_STRING([--disable-tapedoc-values],
472                               [should the tape_doc routine compute the values as it interprets and prints the tape contents [default=enabled]])],
473  [
474  tapedoc_values=no
475  ],
476  [
477  tapedoc_values=yes
478  ])
479AC_MSG_RESULT($tapedoc_values)
480
481if test x$tapedoc_values == xyes; then
482AC_DEFINE(ADOLC_TAPE_DOC_VALUES,1,[ADOL-C tape_doc routine computes values])
483fi
484
485###########################################################################
486#                      COIN_PATCH_LIBTOOL_CYGWIN                          #
487###########################################################################
488
489# Patches to libtool for cygwin. Lots for cl, a few for GCC.
490# For cl:
491# - cygpath is not correctly quoted in fix_srcfile_path
492# - paths generated for .lib files is not run through cygpath -w
493
494#
495# REQUIRED FOR COMPILATION WITH CYGWIN !!!
496#
497 
498
499AC_DEFUN([AC_COIN_PATCH_LIBTOOL_CYGWIN],
500[ case "$CXX" in
501    clang* | */clang*)
502        # do nothing but don't want to accidentally match the 'cl' patterns below
503        ;;
504    cl* | */cl* | CL* | */CL* | icl* | */icl* | ICL* | */ICL*)
505      AC_MSG_NOTICE(Applying patches to libtool for cl compiler)
506      sed -e 's|fix_srcfile_path=\"`cygpath -w \"\$srcfile\"`\"|fix_srcfile_path=\"\\\`'"$CYGPATH_W"' \\\"\\$srcfile\\\"\\\`\"|' \
507          -e 's|fix_srcfile_path=\"\"|fix_srcfile_path=\"\\\`'"$CYGPATH_W"' \\\"\\$srcfile\\\"\\\`\"|' \
508          -e 's%compile_deplibs=\"\$dir/\$old_library \$compile_deplibs\"%compile_deplibs="'\`"$CYGPATH_W"' \$dir/\$old_library | sed -e '"'"'sY\\\\\\\\Y/Yg'"'"\`' \$compile_deplibs\"'% \
509          -e 's%compile_deplibs=\"\$dir/\$linklib \$compile_deplibs\"%compile_deplibs="'\`"$CYGPATH_W"' \$dir/\$linklib | sed -e '"'"'sY\\\\\\\\Y/Yg'"'"\`' \$compile_deplibs\"'% \
510          -e 's%lib /OUT:%lib -OUT:%' \
511          -e "s%cygpath -w%$CYGPATH_W%" \
512          -e 's%$AR x \\$f_ex_an_ar_oldlib%bla=\\`lib -nologo -list \\$f_ex_an_ar_oldlib | xargs echo '"$mydos2unix"'\\`; echo \\$bla; for i in \\$bla; do lib -nologo -extract:\\$i \\$f_ex_an_ar_oldlib; done%' \
513          -e 's/$AR t/lib -nologo -list/' \
514          -e 's%f_ex_an_ar_oldlib="\($?*1*\)"%f_ex_an_ar_oldlib='\`"$CYGPATH_W"' \1`%' \
515          -e 's%^archive_cmds=.*%archive_cmds="\\$CC -o \\$lib \\$libobjs \\$compiler_flags \\\\\\`echo \\\\\\"\\$deplibs\\\\\\" | \\$SED -e '"\'"'s/ -lc\\$//'"\'"'\\\\\\` -link -dll~linknames="%' \
516          -e 's%old_archive_cmds="lib -OUT:\\$oldlib\\$oldobjs\\$old_deplibs"%old_archive_cmds="if test -r \\$oldlib; then bla=\\"\\$oldlib\\"; else bla=; fi; lib -OUT:\\$oldlib \\\\\\$bla\\$oldobjs\\$old_deplibs"%' \
517      libtool > conftest.bla
518
519      mv conftest.bla libtool
520      chmod 755 libtool
521      ;;
522    *)
523      AC_MSG_NOTICE(Applying patches to libtool for GNU compiler)
524      sed -e 's|fix_srcfile_path=\"`cygpath -w \"\$srcfile\"`\"|fix_srcfile_path=\"\\\`'"$CYGPATH_W"' \\\"\\$srcfile\\\"\\\`\"|' \
525          -e 's|"lib /OUT:\\$oldlib\\$oldobjs\\$old_deplibs"|"\\$AR \\$AR_FLAGS \\$oldlib\\$oldobjs\\$old_deplibs~\\$RANLIB \\$oldlib"|' \
526          -e 's|libext="lib"|libext="a"|' \
527      libtool > conftest.bla
528
529      mv conftest.bla libtool
530      chmod 755 libtool
531      ;;
532  esac ]) # COIN_PATCH_LIBTOOL_CYGWIN
533 
534
535# output
536AC_CONFIG_FILES(Makefile
537                ADOL-C/Makefile
538                ADOL-C/include/Makefile
539                ADOL-C/include/adolc/Makefile
540                ADOL-C/include/adolc/internal/adolc_settings.h
541                ADOL-C/include/adolc/drivers/Makefile
542                ADOL-C/include/adolc/internal/Makefile
543                ADOL-C/include/adolc/lie/Makefile
544                ADOL-C/include/adolc/sparse/Makefile
545                ADOL-C/include/adolc/tapedoc/Makefile
546                ADOL-C/src/Makefile
547                ADOL-C/src/drivers/Makefile
548                ADOL-C/src/lie/Makefile
549                ADOL-C/src/sparse/Makefile
550                ADOL-C/src/tapedoc/Makefile
551                ADOL-C/doc/version.tex
552                ADOL-C/examples/Makefile
553                ADOL-C/examples/additional_examples/Makefile
554                ADOL-C/examples/additional_examples/cuda/Makefile
555                ADOL-C/examples/additional_examples/clock/Makefile
556                ADOL-C/examples/additional_examples/checkpointing/Makefile
557                ADOL-C/examples/additional_examples/ext_diff_func/Makefile
558                ADOL-C/examples/additional_examples/fixpoint_exam/Makefile
559                ADOL-C/examples/additional_examples/hessmat/Makefile
560                ADOL-C/examples/additional_examples/lie/Makefile
561                ADOL-C/examples/additional_examples/lufact/Makefile
562                ADOL-C/examples/additional_examples/openmp_exam/Makefile
563                ADOL-C/examples/additional_examples/scal/Makefile
564                ADOL-C/examples/additional_examples/speelpenning/Makefile
565                ADOL-C/examples/additional_examples/taylor/Makefile
566                ADOL-C/examples/additional_examples/detexam/Makefile
567                ADOL-C/examples/additional_examples/helm/Makefile
568                ADOL-C/examples/additional_examples/lighthouse/Makefile
569                ADOL-C/examples/additional_examples/ode/Makefile
570                ADOL-C/examples/additional_examples/sparse/Makefile
571                ADOL-C/examples/additional_examples/tapesave/Makefile
572                ADOL-C/examples/additional_examples/pow/Makefile
573                ADOL-C/examples/additional_examples/timing/Makefile
574                ADOL-C/examples/additional_examples/param/Makefile
575                ADOL-C/test/Makefile
576                ADOL-C/swig/Makefile
577                MSVisualStudio/v14/sparse/config.h
578                MSVisualStudio/v14/nosparse/config.h
579                MSVisualStudio/v14/x64/sparse/config.h
580                MSVisualStudio/v14/x64/nosparse/config.h
581                adolc.spec
582                adolclib.pc
583)
584
585AC_OUTPUT
586
587#call libtool for cygwin
588AC_COIN_PATCH_LIBTOOL_CYGWIN
589warn=false
590# echo configuration
591echo \
592"
593-----------------------------------------------------------------------------
594Configuration:
595
596  C compiler:                         ${CC}
597  C++ compiler:                       ${CXX}
598  Linker:                             ${LD}
599  Source code location:               `pwd`
600  Install path:                       ${prefix}
601 
602  CFLAGS:                             ${ac_adolc_cflags}
603  CXXFLAGS:                           ${ac_adolc_cxxflags}
604
605  Use Boost pool allocator:           ${using_boost_pool}
606  Use ADOL-C debug mode:              ${adolc_debug}
607  Use ADOL-C hard debug mode:         ${adolc_harddebug}
608  Zero value in adouble default ctor: ${adolc_stdczero}"
609
610if [[ "x${ac_adolc_openmpflag}" != "x" ]] ; then
611    echo \
612"  Access thread number via errno:     ${adolc_tserrno}"
613fi
614
615echo \
616"  Use ADOL-C activity tracking:       ${use_activities}
617  Use ADOL-C late init mode:          ${adolc_late_init}
618
619  Build sparse drivers:               ${sparse}
620  Build with adjoinable MPI support:  ${adolc_ampi_support}
621  Build with MediPack support:        ${adolc_medipack_support}
622  Build with ColPack:                 ${have_colpack}"
623if test x$sparse = xyes && test x$have_colpack = xno; then
624    echo -e \
625"  \033@<:@1;31mCompressed sparse structures will not be available
626  Only sparsity patterns can be computed\033@<:@0m"
627    warn=true
628fi
629echo
630
631echo \
632"  Build documented examples:          ${docexa}
633  Build additional examples:          ${addexa}
634  tape_doc routine computes values:   ${tapedoc_values}
635
636  See ADOL-C/src/config.h for further configuration information.
637-----------------------------------------------------------------------------"
638
639# check for make install problems resulting from missing write permission
640pdir=${prefix}
641writable=true
642while test "x${pdir}" != "x/" ; do
643    if test -e ${pdir} && test ! -w ${pdir}; then
644        writable=false
645        break
646    elif test ! -e ${pdir} ; then
647        pdir=`dirname ${pdir}`
648    else
649        break
650    fi
651done
652if test "x${pdir}" == "x/" ; then
653    writable=false
654fi
655if ! ${writable} ; then
656    echo -e \
657"  \033@<:@1;31mPrefix ${prefix} not writable
658  please run ./configure --prefix=DIR
659  with a writable directory path otherwise administrator privileges
660  will be required to run \`make install'\033@<:@0m"
661    warn=true
662fi
663
664case ${prefix} in
665   ${HOME}|${HOME}/*)
666if $warn ; then
667    for (( i=5; i>0; i-- )); do
668        echo -ne "\rPlease read the above messages carefully, continuing in ${i} seconds"
669        sleep 1
670    done
671    echo -e "\rPlease read the above messages carefully                                 "
672fi
673echo \
674"
675*****************************************************************************
676
677  To successfully compile and run programs using the ADOL-C shared library do
678  the following things:
679     compiling:
680        * add \"-I${prefix}/include\" to your compiler call
681     linking:
682        * add \"-L${libdir} -l$adolclib\" to your linker call
683        * extend your linker call by \"-Wl,--rpath -Wl,${libdir}\"
684          (if you wish to skip the point \"executing\")
685     executing (do one of the following things):
686        * add ${libdir} to your LD_LIBRARY_PATH variable
687        * ask your system administrator for adding ${libdir} to
688          the global file containing library search paths (/etc/ld.so.conf)
689
690     (or use the static library by replacing
691        \"-L${libdir} -l$adolclib\" with
692        \"${libdir}/lib$adolclib.a\" when linking)
693
694  See README for instructions on how to change to a nonlocal installation!
695
696*****************************************************************************
697"
698;;
699esac
700if test "x$enable_static" != "xno" ; then
701echo \
702" Linking a user program with a static ADOL-C library will always result
703  in a segmentation fault. Please always use the shared library.
704*****************************************************************************
705"
706fi
Note: See TracBrowser for help on using the repository browser.