configure.ac 14.9 KB
Newer Older
Tiago Peixoto's avatar
Tiago Peixoto committed
1
2
dnl Process this file with autoconf to produce a configure script.

3
dnl graph-tool package version number
Tiago Peixoto's avatar
Tiago Peixoto committed
4
m4_define(graph_tool_version_major, 2)
Tiago Peixoto's avatar
Tiago Peixoto committed
5
m4_define(graph_tool_version_minor, 13dev)
6

7
8
9
10
11
AC_INIT([graph-tool],
        [graph_tool_version_major().graph_tool_version_minor()],
        [http://graph-tool.skewed.de/issues],
        [graph-tool],
        [http://graph-tool.skewed.de])
12
13
14
15
16
17

GRAPH_TOOL_VERSION_MAJOR=graph_tool_version_major()
GRAPH_TOOL_VERSION_MINOR=graph_tool_version_minor()
AC_SUBST(GRAPH_TOOL_VERSION_MAJOR)
AC_SUBST(GRAPH_TOOL_VERSION_MINOR)

Tiago Peixoto's avatar
Tiago Peixoto committed
18
AC_CANONICAL_TARGET
Tiago Peixoto's avatar
Tiago Peixoto committed
19
AC_CONFIG_SRCDIR(src)
20
21
AM_INIT_AUTOMAKE([foreign])
m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
Tiago Peixoto's avatar
Tiago Peixoto committed
22
AM_PROG_CC_C_O
23
AC_CONFIG_HEADERS([config.h])
Tiago Peixoto's avatar
Tiago Peixoto committed
24
AC_CONFIG_MACRO_DIR([m4])
Tiago Peixoto's avatar
Tiago Peixoto committed
25

26
AC_SEARCH_LIBS([strerror],[cposix])
Tiago Peixoto's avatar
Tiago Peixoto committed
27
AC_SUBST(CXXFLAGS,$CXXFLAGS)
28
AC_USE_SYSTEM_EXTENSIONS
Tiago Peixoto's avatar
Tiago Peixoto committed
29
AC_PROG_CXX
30
AC_LANG([C++])
Tiago Peixoto's avatar
Tiago Peixoto committed
31
32
AC_PROG_CC_STDC
AC_HEADER_STDC
Tiago Peixoto's avatar
Tiago Peixoto committed
33
AC_DISABLE_STATIC
34
LT_INIT
Tiago Peixoto's avatar
Tiago Peixoto committed
35
36
AC_PROG_INSTALL

Tiago Peixoto's avatar
Tiago Peixoto committed
37
38
39
40
# pkg-config generation
PKG_PROG_PKG_CONFIG
PKG_INSTALLDIR

Tiago Peixoto's avatar
Tiago Peixoto committed
41
AX_CXX_COMPILE_STDCXX_14([ext],[mandatory])
42

43
dnl turn on warnings
44
[CXXFLAGS="-Wall -Wextra -ftemplate-backtrace-limit=0 ${CXXFLAGS}"]
45

Tiago Peixoto's avatar
Tiago Peixoto committed
46
47
48
dnl Checks for options

dnl Turn debugging on or off
49
AC_MSG_CHECKING(whether to enable debug info)
50

Tiago Peixoto's avatar
Tiago Peixoto committed
51
AC_ARG_ENABLE([debug], [AS_HELP_STRING([--enable-debug],[compile debug information [default=disabled] ])],
52
53
        if test $enableval = yes; then
           [AC_DEFINE([DEBUG], 1, [compile debug info])]
54
           [CXXFLAGS="${CXXFLAGS} -ggdb3"]
55
56
           [AC_MSG_RESULT(yes)] 
        else
57
           [CXXFLAGS="${CXXFLAGS} -DNDEBUG"]
58
59
           [AC_MSG_RESULT(no)]
        fi
60
61
62
        ,
        [CXXFLAGS="${CXXFLAGS} -DNDEBUG"]
        [AC_MSG_RESULT(no)]
Tiago Peixoto's avatar
Tiago Peixoto committed
63
64
        )

Tiago Peixoto's avatar
Tiago Peixoto committed
65
dnl set template depth
66
[CXXFLAGS="${CXXFLAGS} -ftemplate-depth-250"]
Tiago Peixoto's avatar
Tiago Peixoto committed
67

68
dnl disable deprecation warning, to silence some harmless BGL-related warnings
69
[CXXFLAGS="${CXXFLAGS} -Wno-deprecated -Wno-unknown-pragmas"]
70

Tiago Peixoto's avatar
Tiago Peixoto committed
71
AC_MSG_CHECKING(whether to enable function inlining...)
72

73
[NO_INLINE=no]
74
AC_ARG_ENABLE([inline], [AS_HELP_STRING([--disable-inline],[disable inline functions [default=enabled] ])],
Tiago Peixoto's avatar
Tiago Peixoto committed
75
76
        if test $enableval = no; then
           [AC_DEFINE([NO_INLINE], 1, [disable function inlining])]
77
           [CXXFLAGS="${CXXFLAGS} -fno-inline -fno-default-inline"]
78
79
           [NO_INLINE=yes]
           [AC_MSG_RESULT(no)]
Tiago Peixoto's avatar
Tiago Peixoto committed
80
81
82
83
84
85
        else
           [AC_MSG_RESULT(yes)]
        fi
        ,
        [AC_MSG_RESULT(yes)]
        )
86

Tiago Peixoto's avatar
Tiago Peixoto committed
87
88
AM_CONDITIONAL(NO_INLINE, test $NO_INLINE = yes)

89
AC_MSG_CHECKING(whether to enable optimizations)
90

91
AC_ARG_ENABLE([optimization], [AS_HELP_STRING([--disable-optimization],[disable optimization [default=enabled] ])],
92
93
        if test $enableval = no; then
           [AC_MSG_RESULT(no)]
94
        else
95
           [CXXFLAGS="${CXXFLAGS} -O3"]
96
97
           [AC_MSG_RESULT(yes)]
        fi
Tiago Peixoto's avatar
Tiago Peixoto committed
98
        ,
99
        [CXXFLAGS="${CXXFLAGS} -O3"]
100
        [AC_MSG_RESULT(yes)]
Tiago Peixoto's avatar
Tiago Peixoto committed
101
102
        )

103
AC_MSG_CHECKING(whether to enable symbol visibility manipulation)
104

105
AC_ARG_ENABLE([visibility], [AS_HELP_STRING([--disable-visibility],[disable symbol visibility manipulation [default=enabled] ])],
106
107
        if test $enableval = yes; then
           [CXXFLAGS="${CXXFLAGS} -fvisibility=default -fvisibility-inlines-hidden"]
108
109
           [AC_MSG_RESULT(yes)]
        else
110
           [AC_MSG_RESULT(no)]
111
        fi
112
        ,
Tiago Peixoto's avatar
Tiago Peixoto committed
113
        [CXXFLAGS="${CXXFLAGS} -fvisibility=default -fvisibility-inlines-hidden"]
114
        [AC_MSG_RESULT(yes)]
115
116
117
        )


118
[NO_GRAPH_FILTERING=no]
119
120
121
122
123
124
125
126
127
128
129
130
# AC_MSG_CHECKING(whether to enable graph filtering...)
# AC_ARG_ENABLE([graph-filtering], [AS_HELP_STRING([--disable-graph-filtering],[disable graph filtering [default=enabled] ])],
#         if test $enableval = no; then
#            [AC_DEFINE([NO_GRAPH_FILTERING], 1, [disable graph filtering])]
#            [NO_GRAPH_FILTERING=yes]
#            [AC_MSG_RESULT(no)]
#         else
#            [AC_MSG_RESULT(yes)]
#         fi
#         ,
#         [AC_MSG_RESULT(yes)]
#         )
131

132
133
[USING_OPENMP=yes]
[OPENMP_LDFLAGS=""]
134
AC_MSG_CHECKING(whether to enable parallel algorithms with openmp)
135
AC_ARG_ENABLE([openmp], [AS_HELP_STRING([--enable-openmp],[enable openmp [default=disabled] ])],
136
137
138
        if test $enableval = yes; then
           [AC_MSG_RESULT(yes)]
           [AC_DEFINE([USING_OPENMP], 1, [using openmp])]
139
           [CXXFLAGS="${CXXFLAGS} -fopenmp"]
140
           [OPENMP_LDFLAGS=" -lgomp "]
141
        else
142
143
           [USING_OPENMP=no]
           [CXXFLAGS="${CXXFLAGS} -Wno-unknown-pragmas"]
144
           [AC_MSG_RESULT(no)]    
145
146
        fi
        ,
147
        [CXXFLAGS="${CXXFLAGS} -Wno-unknown-pragmas"]
148
        [AC_MSG_RESULT(no)]
149
150
151
        )
AC_SUBST(OPENMP_LDFLAGS)

Tiago Peixoto's avatar
Tiago Peixoto committed
152
[USING_CAIRO=yes]
153
AC_MSG_CHECKING(whether to enable cairo drawing)
Tiago Peixoto's avatar
Tiago Peixoto committed
154
155
156
157
158
159
160
161
162
163
164
AC_ARG_ENABLE([cairo], [AS_HELP_STRING([--disable-cairo],[disable cairo drawing [default=enabled] ])],
        if test $enableval = no; then
           [USING_CAIRO=no]
           [AC_MSG_RESULT(no)]
        else
           [AC_MSG_RESULT(yes)]
        fi
        ,
        [AC_MSG_RESULT(yes)]
        )

165
166
167
168
dnl Override prefix with default value if not set
if test "x${prefix}" = "xNONE"; then
  prefix=${ac_default_prefix}
fi
169

Tiago Peixoto's avatar
Tiago Peixoto committed
170
171
172
173
174
175
176
177
178
179
180
181
182
dnl Checks for programs.

dnl Checks for libraries.

dnl math library
AC_CHECK_LIB(m,main)

dnl bzip2 compression library
AC_CHECK_LIB(bz2,main)

dnl expat
AC_CHECK_LIB(expat,main)

183
dnl python
184
185
186
187
188
189
190
echo "================"
echo "Detecting python"
echo "================"
AM_PATH_PYTHON([2.6])
AC_SUBST(PYTHON_VERSION)
PYTHON_FULL_VERSION=[`${PYTHON} -c "import sys; print(sys.version.split()[0])"`]
AC_SUBST(PYTHON_FULL_VERSION)
191
[TEMP_CPPFLAGS="${CPPFLAGS}"]
192
AC_PYTHON_DEVEL([== '${PYTHON_FULL_VERSION}'])
193
194
195
[CPPFLAGS="${CPPFLAGS} ${PYTHON_CPPFLAGS}"]
[LDFLAGS="${LDFLAGS} ${PYTHON_LDFLAGS}"]

196
197
# default directory for submodules
[MOD_DIR="${PYTHON_SITE_PKG}"]
Tiago Peixoto's avatar
Tiago Peixoto committed
198
199
200
201
AC_ARG_WITH([python-module-path],
            [AS_HELP_STRING([--with-python-module-path=DIR],
                            [directory where python module will be installed
                             [default=auto-detected]])],
202
203
204
205
206
207
            MOD_DIR=$withval)
echo "graph-tool will be installed at: ${MOD_DIR}"

[MOD_DIR="${MOD_DIR}/graph_tool"]
AC_SUBST(MOD_DIR)

208
209
210
211
212
echo "==========================="
echo "Using python version: ${PYTHON_FULL_VERSION}"
echo "==========================="


213
dnl boost
214
AX_BOOST_BASE([[1.54.0]])
215
216
217
218
219
220
221
222
AX_BOOST_PYTHON
if test "$BOOST_PYTHON_LIB" = ""; then
   AC_MSG_ERROR([No usable boost::python found])
fi
AX_BOOST_IOSTREAMS
if test "$BOOST_IOSTREAMS_LIB" = ""; then
   AC_MSG_ERROR([No usable boost::iostreams found])
fi
223
224
225
226
AX_BOOST_REGEX
if test "$BOOST_REGEX_LIB" = ""; then
   AC_MSG_ERROR([No usable boost::regex found])
fi
227
228
AX_BOOST_COROUTINE
if test "$BOOST_COROUTINE_LIB" = ""; then
Tiago Peixoto's avatar
Tiago Peixoto committed
229
   AC_MSG_WARN([No usable boost::coroutine found! Some functionality will be disabled in the library.])
230
fi
Tiago Peixoto's avatar
Tiago Peixoto committed
231
232
233
234
AX_BOOST_GRAPH
if test "$BOOST_GRAPH_LIB" = ""; then
   AC_MSG_ERROR([No usable boost::graph found])
fi
235

236
[CPPFLAGS="${CPPFLAGS} ${BOOST_CPPFLAGS}"]
Tiago Peixoto's avatar
Tiago Peixoto committed
237

238
239
dnl CGAL
AC_CHECK_LIB(CGAL,main)
240
[CGAL_LIBADD="-lCGAL -lgmp"]
241
AC_SUBST(CGAL_LIBADD)
242
[CGAL_FLAGS="-frounding-math"]
243
AC_MSG_CHECKING(whether to enable cgal debbuging with valgrind)
244
245
246
AC_ARG_ENABLE([cgal-valgrind], [AS_HELP_STRING([--enable-cgal-valgrind],[enable CGAL valgrind debugging [default=disabled] ])],
        if test $enableval = yes; then
           [AC_MSG_RESULT(yes)]
247
           [CGAL_FLAGS="${CGAL_FLAGS} -DCGAL_DISABLE_ROUNDING_MATH_CHECK=ON"]
248
        else
249
           [AC_MSG_RESULT(no)]    
250
251
252
253
        fi
        ,
        [AC_MSG_RESULT(no)]
        )
254
AC_SUBST(CGAL_FLAGS)
255

Tiago Peixoto's avatar
Tiago Peixoto committed
256
dnl Checks for header files.
257
258

dnl numpy
259
AX_PYTHON_MODULE(numpy, fatal)
260
dnl [NUMPY_DIR="${PYTHON_SITE_PKG}/numpy"]
261
[NUMPY_DIR=`$PYTHON -c "import numpy; print(numpy.get_include())"`]
262
AC_ARG_WITH([numpy], [AS_HELP_STRING([--with-numpy=DIR],[directory where numpy is installed
263
                      [default=auto-detected] ])],
264
265
            NUMPY_DIR=$withval)
AC_CHECK_HEADER([${NUMPY_DIR}/numpy/arrayobject.h],
266
                [CPPFLAGS="${CPPFLAGS} -I${NUMPY_DIR}"],
267
268
                [AC_MSG_ERROR([Numpy extension header not found])],
                [#include "Python.h"])
Tiago Peixoto's avatar
Tiago Peixoto committed
269
270
271
272
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[#include "Python.h" #include "${NUMPY_DIR}/numpy/arrayobject.h" #if NPY_API_VERSION < 0x00000007 #error #endif]])],
                  [],
                  [AC_MSG_ERROR([Numpy is too old. Version 1.7 or above is required.])])
  
273
dnl scipy
274
AX_PYTHON_MODULE(scipy, fatal)
275
dnl [SCIPY_DIR="${PYTHON_SITE_PKG}/scipy"]
276
[SCIPY_DIR=`$PYTHON -c "import os, scipy; print(os.path.dirname(scipy.__file__))"`]
277
AC_ARG_WITH([scipy], [AS_HELP_STRING([--with-scipy=DIR],[scipy install directory
278
                      [default=auto-detected] ])],
279
            [SCIPY_DIR=$withval])
280
281
282
283
284

dnl expat
AC_CHECK_HEADER([expat.h],
                [],
                [AC_MSG_ERROR([Expat header not found])])
Tiago Peixoto's avatar
Tiago Peixoto committed
285

286
287
288
289
290
dnl cgal
AC_CHECK_HEADER([CGAL/version.h],
                [],
                [AC_MSG_ERROR([CGAL headers not found])])

291

Tiago Peixoto's avatar
Tiago Peixoto committed
292
293
294
295
296
297
dnl cairo
if test "$USING_CAIRO" = "yes"; then
   PKG_CHECK_MODULES(CAIROMM, [cairomm-1.0], AC_DEFINE([HAVE_CAIROMM], [1],
                     [Cairomm is available]), [])
   AC_SUBST(CAIROMM_CFLAGS)
   AC_SUBST(CAIROMM_LIBS)
298
   AX_PYTHON_MODULE(cairo)
299
300
301
302
   [OLD_CXXFLAGS="${CXXFLAGS}"]
   [OLD_CPPFLAGS="${CPPFLAGS}"]
   [CXXFLAGS="${CXXFLAGS} ${CAIROMM_CFLAGS}"]
   [CPPFLAGS="${CPPFLAGS} ${CAIROMM_CFLAGS}"]
303
304
305
306
307
308
309
310
311
   PYTHON_VERSION_MAJOR=$(echo $PYTHON_VERSION | cut -d'.' -f1)
   if test "$PYTHON_VERSION_MAJOR" = "3"; then
      [PYCAIRO_HEADER=pycairo/py3cairo.h]
   else
      [PYCAIRO_HEADER=pycairo/pycairo.h]
   fi
   AC_DEFINE_UNQUOTED([PYCAIRO_HEADER], <${PYCAIRO_HEADER}>, [pycairo header file])
   AC_CHECK_HEADER(${PYCAIRO_HEADER}, [],
                   [AC_MSG_ERROR([pycairo headers not found])])
312
313
   [CXXFLAGS="${OLD_CXXFLAGS}"]
   [CPPFLAGS="${OLD_CPPFLAGS}"]
Tiago Peixoto's avatar
Tiago Peixoto committed
314
315
fi

316
dnl sparsehash
317
318
[SPARSEHASH_PREFIX=sparsehash]
AC_ARG_WITH([sparsehash-prefix], [AS_HELP_STRING([--with-sparsehash-prefix=prefix],
319
320
                    [include directory prefix for sparsehash
                                [default=sparsehash] ])],
321
322
            [SPARSEHASH_PREFIX=$withval])

323
[USING_SPARSEHASH=yes]
324
AC_MSG_CHECKING(whether to enable sparsehash)
325
326
327
328
329
330
331
332
333
334
335
AC_ARG_ENABLE([sparsehash], [AS_HELP_STRING([--disable-sparsehash],[disable use of google's sparsehash [default=enabled] ])],
        if test $enableval = no; then
           [USING_SPARSEHASH=no]
           [AC_MSG_RESULT(no)]
        else
           [AC_MSG_RESULT(yes)]
        fi
        ,
        [AC_MSG_RESULT(yes)]
        )

336
if test "$USING_SPARSEHASH" = "yes"; then
337
338
339
340
   PKG_CHECK_MODULES(SPARSEHASH, [libsparsehash],
                     AC_DEFINE([HAVE_SPARSEHASH], [1], [Using google's sparsehash]),
                     [AC_MSG_RESULT([not found by pkgconfig, trying default...])])

341
   [SPARSEHASH_CFLAGS="${SPARSEHASH_CFLAGS} -DSPARSEHASH_PREFIX=${SPARSEHASH_PREFIX}"]
342
   AC_SUBST(SPARSEHASH_CFLAGS)
343
   AC_DEFINE_UNQUOTED([SPARSEHASH_INCLUDE(f)], [<${SPARSEHASH_PREFIX}/f>],
344
                      [Sparsehash include macro])
345
346
   [CXXFLAGS="${CXXFLAGS} ${SPARSEHASH_CFLAGS}"]
   [CPPFLAGS="${CPPFLAGS} ${SPARSEHASH_CFLAGS}"]
347
   AC_CHECK_HEADER([${SPARSEHASH_PREFIX}/dense_hash_set], [],
348
349
                   [AC_MSG_ERROR([sparsehash headers not found])])
fi
350

Tiago Peixoto's avatar
Tiago Peixoto committed
351
352
353
dnl Checks for typedefs, structures, and compiler characteristics.
dnl Checks for library functions.

354
dnl Checks for Additional stuff.
Tiago Peixoto's avatar
Tiago Peixoto committed
355
356
357
358
359
360
361
362
363
364

dnl Set PACKAGE PREFIX
if test "x${prefix}" = "xNONE"; then
  packageprefix=${ac_default_prefix}
else
  packageprefix=${prefix}
fi

dnl Set PACKAGE DATA & DOC DIR
packagedatadir=share/${PACKAGE}
365
packagedocdir=doc/${PACKAGE}
Tiago Peixoto's avatar
Tiago Peixoto committed
366
367
368
369
370
371
372
373
374
375
376
377


dnl Subst PACKAGE_DATA_DIR.
NO_PREFIX_PACKAGE_DATA_DIR="${packagedatadir}"
AC_SUBST(NO_PREFIX_PACKAGE_DATA_DIR)
PACKAGE_DATA_DIR="${packageprefix}/${packagedatadir}"
AC_SUBST(PACKAGE_DATA_DIR)

dnl Subst PACKAGE_DOC_DIR.
NO_PREFIX_PACKAGE_DOC_DIR="${packagedocdir}"
AC_SUBST(NO_PREFIX_PACKAGE_DOC_DIR)
PACKAGE_DOC_DIR="${packageprefix}/${packagedocdir}"
378
379
380
381
382
383

if test "x${docdir}" = "xNONE"; then
  PACKAGE_DOC_DIR="${packageprefix}/${packagedocdir}"
else
  PACKAGE_DOC_DIR="${docdir}"
fi
Tiago Peixoto's avatar
Tiago Peixoto committed
384
385
AC_SUBST(PACKAGE_DOC_DIR)

386
387
dnl Subst PYTHON_DIR.
AC_DEFINE_UNQUOTED([INSTALL_PREFIX],"${prefix}", [python prefix])
Tiago Peixoto's avatar
Tiago Peixoto committed
388
AC_DEFINE_UNQUOTED([PYTHON_DIR], "${PYTHON_SITE_PKG}", [The directory name for the site-packages subdirectory of the standard Python install tree.])
389
390

AC_DEFINE_UNQUOTED([CXXFLAGS],"${CXXFLAGS}", [c++ compilation options])
391
AC_DEFINE_UNQUOTED([CPPFLAGS],"${CPPFLAGS}", [c++ preprocessor compilation options])
Tiago Peixoto's avatar
Tiago Peixoto committed
392
AC_DEFINE_UNQUOTED([LDFLAGS],"${LDFLAGS}", [linker options])
393

394
395
AC_DEFINE_UNQUOTED([PACKAGE_DATA_DIR], "${PACKAGE_DATA_DIR}", [package data dir])
AC_DEFINE_UNQUOTED([PACKAGE_DOC_DIR], "${PACKAGE_DOC_DIR}", [package doc dir])
Tiago Peixoto's avatar
Tiago Peixoto committed
396

Tiago Peixoto's avatar
Tiago Peixoto committed
397
AC_DEFINE_UNQUOTED([AUTHOR], "Tiago de Paula Peixoto <tiago@skewed.de>", [program author(s)])
Tiago Peixoto's avatar
Tiago Peixoto committed
398
399

AC_DEFINE_UNQUOTED([COPYRIGHT],
Tiago Peixoto's avatar
Tiago Peixoto committed
400
    "Copyright (C) 2006-2016 Tiago de Paula Peixoto\nThis is free software; see the source for copying conditions.  There is NO\nwarranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.",
401
        [copyright info])
402

403
# git information
404
405
AC_DEFINE([GIT_COMMIT], "esyscmd(git show | head -n 1 | sed 's/commit //' |  grep -o -e '.\{8\}' | head -n 1 |tr -d '\n')", [git HEAD commit hash])
AC_DEFINE([GIT_COMMIT_DATE], "esyscmd(git log -1 | head -n 3 | grep 'Date:' | sed s/'Date:   '// | tr -d '\n')", [git HEAD commit date])
406

407
408
409
# GCC version
AC_DEFINE([GCC_VERSION], [(__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)], [GCC version value])

Tiago Peixoto's avatar
Tiago Peixoto committed
410
411
# set some automake variables

412
413
414
415
416
417
# global CPP flags
AC_SUBST(CPPFLAGS)

# global CXX flags
AC_SUBST(CXXFLAGS)

Tiago Peixoto's avatar
Tiago Peixoto committed
418
# CPP flags for submodules
Tiago Peixoto's avatar
Tiago Peixoto committed
419
[MOD_CPPFLAGS="-I\$(srcdir) -I\$(srcdir)/.. -I\$(srcdir)/../../boost-workaround \
Tiago Peixoto's avatar
Tiago Peixoto committed
420
421
422
423
-DHAVE_CONFIG_H"]
AC_SUBST(MOD_CPPFLAGS)

# default LIBADD flags for submodules
424
[MOD_LIBADD="${PYTHON_LDFLAGS} -l${BOOST_IOSTREAMS_LIB} -l${BOOST_PYTHON_LIB} \
425
-l${BOOST_REGEX_LIB} ${BOOST_COROUTINE_LIB} ${OPENMP_LDFLAGS} -lexpat"]
Tiago Peixoto's avatar
Tiago Peixoto committed
426
427
428
429
AC_SUBST(MOD_LIBADD)

# needed for typeinfo objects to work across DSO boundaries.
# see http://gcc.gnu.org/faq.html#dso
430
[MOD_LDFLAGS="-module -avoid-version -export-dynamic -no-undefined -Wl,-E -Wl,--as-needed"]
Tiago Peixoto's avatar
Tiago Peixoto committed
431

432
# MacOS needs different options
433
if [[ `echo ${target_os} | grep -c -e "^darwin"` == 1 ]]; then
434
435
   [MOD_LDFLAGS="-module -dynamiclib"]
fi
Tiago Peixoto's avatar
Tiago Peixoto committed
436

Tiago Peixoto's avatar
Tiago Peixoto committed
437
438
AC_SUBST(MOD_LDFLAGS)

Tiago Peixoto's avatar
Tiago Peixoto committed
439
440
441
442
443
AX_CREATE_PKGCONFIG_INFO([graph-tool-py${PYTHON_VERSION}.pc], [],
                         [${PYTHON_LDFLAGS} -l${BOOST_PYTHON_LIB}],
                         [graph-tool Python library],
                         [-ftemplate-depth-250 ${SPARSEHASH_CFLAGS} ${PYTHON_CPPFLAGS} -I${NUMPY_DIR} ${BOOST_CPPFLAGS} -I${MOD_DIR}/include -I${MOD_DIR}/include/boost-workaround],
                         [])
Tiago Peixoto's avatar
Tiago Peixoto committed
444

445
AC_CONFIG_FILES([
Tiago Peixoto's avatar
Tiago Peixoto committed
446
447
448
Makefile
src/Makefile
src/graph/Makefile
Tiago Peixoto's avatar
Tiago Peixoto committed
449
src/graph/centrality/Makefile
450
src/graph/clustering/Makefile
451
src/graph/community/Makefile
452
453
src/graph/correlations/Makefile
src/graph/draw/Makefile
Tiago Peixoto's avatar
Tiago Peixoto committed
454
src/graph/flow/Makefile
455
src/graph/generation/Makefile
456
src/graph/layout/Makefile
457
src/graph/search/Makefile
458
459
460
461
src/graph/spectral/Makefile
src/graph/stats/Makefile
src/graph/topology/Makefile
src/graph/util/Makefile
462
src/graph_tool/Makefile
Tiago Peixoto's avatar
Tiago Peixoto committed
463
])
464
AC_OUTPUT