configure.ac 4.38 KB
Newer Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#                                               -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.

AC_PREREQ([2.59])


## ---------------- ##
## Package set up.  ##
## ---------------- ##

AC_INIT([Olena], [1.0], [olena@lrde.epita.fr], [olena])

# Auxiliary files.
AC_CONFIG_AUX_DIR([build-aux])
AC_CONFIG_FILES([build-aux/Makefile])

# Automake.
# 1.9.4 because of changelog vs. ChangeLog on Darwin.
AM_INIT_AUTOMAKE([1.9.4 foreign check-news dist-bzip2 -Wall])


## --------------------- ##
23
## C++ compiler set up.  ##
24
25
## --------------------- ##

Roland Levillain's avatar
Roland Levillain committed
26
27
28
29
30
31
# If the user doesn't provide any CXXFLAGS, prevent Autoconf from
# settings its own default ones (e.g., `-g -O2' for g++).
if test ! ${CXXFLAGS+set}; then
   CXXFLAGS=""
fi

32
33
34
35
# Look for a C++ compiler.
AC_LANG([C++])
AC_PROG_CXX

36
# Speed up compiling times.
37
38
39
40
if test "$GXX" = yes; then
  CXXFLAGS="$CXXFLAGS -pipe"
fi

41
42
# C++ compiler flags for tests.
AC_ARG_VAR([TESTS_CXXFLAGS])
43
44
# We want no optimization for the tests (it slows down compiling
# times), and a lot of debugging.
45
if test "$GXX" = yes && test -z "$TESTS_CXXFLAGS"; then
46
47
48
  TESTS_CXXFLAGS="-O0 -ggdb -Wall -W"
fi

49
50
51
52
53
54
55
56
# C++ compiler flags for complex tests.
AC_ARG_VAR([TESTS_CXXFLAGS_SPEED])
# We want optimization for complex tests, and keep debugging flags
# (still useful).
if test "$GXX" = yes && test -z "$TESTS_CXXFLAGS_SPEED"; then
  TESTS_CXXFLAGS_SPEED="-O3 -DNDEBUG -ggdb -Wall -W"
fi

57
58
59
60
# C++ compiler flags for tools.
AC_ARG_VAR([TOOLS_CXXFLAGS])
# On the contrary, we want fast binaries for tools.
if test "$GXX" = yes && test -z "$TOOLS_CXXFLAGS"; then
61
  TOOLS_CXXFLAGS="-O3 -DNDEBUG -ggdb -Wall -W"
62
63
fi

64

65
66
67
68
69
## -------------- ##
## Dependencies.  ##
## -------------- ##

# FreeImage library.
70
71
OLN_WITH_FREEIMAGEPLUS
AM_CONDITIONAL([FREEIMAGEPLUS], [test x$oln_have_freeimageplus = xyes])
72

73
74
75
76
# Cfitsio library.
OLN_WITH_CFITSIO
AM_CONDITIONAL([CFITSIO], [test x$oln_have_cfitsio = xyes])

77

78
79
80
81
82
83
84
85
86
87
## --------------- ##
## Configuration.  ##
## --------------- ##

# Ask for config.h.
AM_CONFIG_HEADER([config.h])

# Ask for the Makefile creations.
AC_CONFIG_FILES([
  Makefile
88
89
    milena/Makefile
      milena/doc/Makefile
90
      milena/tools/Makefile
91
])
92
93
94
95
96
97


## ------- ##
## Tests.  ##
## ------- ##

Roland Levillain's avatar
Roland Levillain committed
98
99
# Ask for the creation of a milena/tests/data.hh, used to access to
# data (images) from tests.
100
101
102
AC_CONFIG_FILES([milena/tests/data.hh])

# FIXME: Should be performed through oln.m4 macros, as we did in Olena 0.11?
Roland Levillain's avatar
Roland Levillain committed
103
# Ask for the creation of tests' Makefiles.
104
AC_CONFIG_FILES([
105
  milena/tests/Makefile
Roland Levillain's avatar
Roland Levillain committed
106
    milena/tests/accu/Makefile
107
    milena/tests/arith/Makefile
Roland Levillain's avatar
Roland Levillain committed
108
    milena/tests/border/Makefile
109
110
111
112
    milena/tests/canvas/Makefile
      milena/tests/canvas/browsing/Makefile
      milena/tests/canvas/morpho/Makefile
    milena/tests/convert/Makefile
Roland Levillain's avatar
Roland Levillain committed
113
114
115
116
    milena/tests/core/Makefile
    milena/tests/debug/Makefile
    milena/tests/display/Makefile
    milena/tests/draw/Makefile
117
118
119
120
121
122
    milena/tests/estim/Makefile
    milena/tests/fun/Makefile
      milena/tests/fun/i2v/Makefile
      milena/tests/fun/p2b/Makefile
      milena/tests/fun/p2v/Makefile
      milena/tests/fun/v2v/Makefile
123
      milena/tests/fun/vv2v/Makefile
Roland Levillain's avatar
Roland Levillain committed
124
125
126
      milena/tests/fun/x2x/Makefile
    milena/tests/geom/Makefile
    milena/tests/histo/Makefile
127
    milena/tests/io/Makefile
Roland Levillain's avatar
Roland Levillain committed
128
129
      milena/tests/io/fits/Makefile
      milena/tests/io/pbm/Makefile
130
131
132
133
134
      milena/tests/io/pfm/Makefile
      milena/tests/io/pgm/Makefile
      milena/tests/io/pnm/Makefile
      milena/tests/io/ppm/Makefile
    milena/tests/labeling/Makefile
Roland Levillain's avatar
Roland Levillain committed
135
136
137
138
139
140
141
142
143
144
145
146
    milena/tests/level/Makefile
      milena/tests/level/approx/Makefile
      milena/tests/level/naive/Makefile
    milena/tests/linear/Makefile
      milena/tests/linear/local/Makefile
    milena/tests/literal/Makefile
    milena/tests/logical/Makefile
    milena/tests/math/Makefile
    milena/tests/metal/Makefile
      milena/tests/metal/make/Makefile
      milena/tests/metal/math/Makefile
    milena/tests/morpho/Makefile
147
148
    milena/tests/neighb/Makefile
    milena/tests/norm/Makefile
Roland Levillain's avatar
Roland Levillain committed
149
150
151
152
153
154
155
156
157
158
159
160
161
    milena/tests/pw/Makefile
    milena/tests/set/Makefile
    milena/tests/tag/Makefile
    milena/tests/trace/Makefile
    milena/tests/trait/Makefile
      milena/tests/trait/image/Makefile
      milena/tests/trait/op/Makefile
      milena/tests/trait/value/Makefile
    milena/tests/util/Makefile
    milena/tests/value/Makefile
      milena/tests/value/builtin/Makefile
      milena/tests/value/concept/Makefile
    milena/tests/win/Makefile
162
])
163
164

AC_OUTPUT