gravatar
ladanyi@tmit.bme.hu
ladanyi@tmit.bme.hu
Revert to the canonical way of customizing CXXFLAGS A default list of compiler flags is set via AM_CXXFLAGS Automake variable. However this gets overridden by per-target CXXFLAGS variables (e.g. foo_CXXFLAGS in case the foo target). Because of this you should append $(AM_CXXFLAGS) to the end of the per-target CXXFLAGS variables (e.g. foo_CXXFLAGS = ... $(AM_CXXFLAGS)). After this default list of flags the contents of the CXXFLAGS user variable is passed to the compiler. This variable has a default value determined by configure (in case of g++ it is '-g -O2'). You can override this by specifying CXXFLAGS when invoking make (e.g. make CXXFLAGS='-O3').
0 3 0
default
3 files changed with 7 insertions and 6 deletions:
↑ Collapse diff ↑
Ignore white space 96 line context
1 1
ACLOCAL_AMFLAGS = -I m4
2 2

	
3
AM_CXXFLAGS = $(WARNINGCXXFLAGS)
4

	
3 5
AM_CPPFLAGS = -I$(top_srcdir) -I$(top_builddir)
4 6
LDADD = $(top_builddir)/lemon/libemon.la
5 7

	
6 8
EXTRA_DIST = \
7 9
	AUTHORS \
8 10
	LICENSE \
9 11
	m4/lx_check_cplex.m4 \
10 12
	m4/lx_check_glpk.m4 \
11 13
	m4/lx_check_soplex.m4 \
12 14
	CMakeLists.txt \
13 15
	cmake
14 16

	
15 17
pkgconfigdir = $(libdir)/pkgconfig
16 18
lemondir = $(pkgincludedir)
17 19
bitsdir = $(lemondir)/bits
18 20
conceptdir = $(lemondir)/concepts
19 21
pkgconfig_DATA =
20 22
lib_LTLIBRARIES =
21 23
lemon_HEADERS =
22 24
bits_HEADERS =
23 25
concept_HEADERS =
24 26
noinst_HEADERS =
25 27
noinst_PROGRAMS =
26 28
bin_PROGRAMS =
27 29
check_PROGRAMS =
28 30
dist_bin_SCRIPTS =
29 31
TESTS =
30 32
XFAIL_TESTS =
31 33

	
32 34
include lemon/Makefile.am
33 35
include test/Makefile.am
34 36
include doc/Makefile.am
35 37
include demo/Makefile.am
36 38
include tools/Makefile.am
37 39

	
38 40
MRPROPERFILES = \
39 41
	aclocal.m4 \
40 42
	config.h.in \
41 43
	config.h.in~ \
42 44
	configure \
43 45
	Makefile.in \
44 46
	build-aux/config.guess \
45 47
	build-aux/config.sub \
46 48
	build-aux/depcomp \
47 49
	build-aux/install-sh \
48 50
	build-aux/ltmain.sh \
49 51
	build-aux/missing \
50 52
	doc/doxygen.log
Ignore white space 96 line context
1 1
dnl Process this file with autoconf to produce a configure script.
2 2

	
3 3
dnl Version information.
4 4
m4_define([lemon_version_number],
5 5
	[m4_normalize(esyscmd([echo ${LEMON_VERSION}]))])
6 6
dnl m4_define([lemon_version_number], [])
7 7
m4_define([lemon_hg_path], [m4_normalize(esyscmd([./scripts/chg-len.py]))])
8 8
m4_define([lemon_hg_revision], [m4_normalize(esyscmd([hg id -i]))])
9 9
m4_define([lemon_version], [ifelse(lemon_version_number(),
10 10
			   [],
11 11
			   [lemon_hg_path().lemon_hg_revision()],
12 12
			   [lemon_version_number()])])
13 13

	
14 14
AC_PREREQ([2.59])
15 15
AC_INIT([LEMON], [lemon_version()], [lemon-user@lemon.cs.elte.hu], [lemon])
16 16
AC_CONFIG_AUX_DIR([build-aux])
17 17
AC_CONFIG_MACRO_DIR([m4])
18 18
AM_INIT_AUTOMAKE([-Wall -Werror foreign subdir-objects nostdinc])
19 19
AC_CONFIG_SRCDIR([lemon/list_graph.h])
20 20
AC_CONFIG_HEADERS([config.h lemon/config.h])
21 21

	
22
lx_cmdline_cxxflags_set=${CXXFLAGS+set}
23

	
24 22
dnl Do compilation tests using the C++ compiler.
25 23
AC_LANG([C++])
26 24

	
27 25
dnl Checks for programs.
28 26
AC_PROG_CXX
29 27
AC_PROG_CXXCPP
30 28
AC_PROG_INSTALL
31 29
AC_DISABLE_SHARED
32 30
AC_PROG_LIBTOOL
33 31

	
34 32
AC_CHECK_PROG([doxygen_found],[doxygen],[yes],[no])
35 33
AC_CHECK_PROG([gs_found],[gs],[yes],[no])
36 34

	
37 35
dnl Detect Intel compiler.
38 36
AC_MSG_CHECKING([whether we are using the Intel C++ compiler])
39 37
AC_COMPILE_IFELSE([#ifndef __INTEL_COMPILER
40 38
choke me
41 39
#endif], [ICC=[yes]], [ICC=[no]])
42 40
if test x"$ICC" = x"yes"; then
43 41
  AC_MSG_RESULT([yes])
44 42
else
45 43
  AC_MSG_RESULT([no])
46 44
fi
47 45

	
48 46
dnl Set custom compiler flags when using g++.
49
if test x"$lx_cmdline_cxxflags_set" != x"set" -a "$GXX" = yes -a "$ICC" = no; then
50
  CXXFLAGS="$CXXFLAGS -Wall -W -Wall -W -Wunused -Wformat=2 -Wctor-dtor-privacy -Wnon-virtual-dtor -Wno-char-subscripts -Wwrite-strings -Wno-char-subscripts -Wreturn-type -Wcast-qual -Wcast-align -Wsign-promo -Woverloaded-virtual -Woverloaded-virtual -ansi -fno-strict-aliasing -Wold-style-cast -Wno-unknown-pragmas"
47
if test "$GXX" = yes -a "$ICC" = no; then
48
  WARNINGCXXFLAGS="-Wall -W -Wall -W -Wunused -Wformat=2 -Wctor-dtor-privacy -Wnon-virtual-dtor -Wno-char-subscripts -Wwrite-strings -Wno-char-subscripts -Wreturn-type -Wcast-qual -Wcast-align -Wsign-promo -Woverloaded-virtual -ansi -fno-strict-aliasing -Wold-style-cast -Wno-unknown-pragmas"
51 49
fi
50
AC_SUBST([WARNINGCXXFLAGS])
52 51

	
53 52
dnl Checks for libraries.
54 53
#LX_CHECK_GLPK
55 54
#LX_CHECK_CPLEX
56 55
#LX_CHECK_SOPLEX
57 56

	
58 57
dnl Disable/enable building the demo programs.
59 58
AC_ARG_ENABLE([demo],
60 59
AS_HELP_STRING([--enable-demo], [build the demo programs])
61 60
AS_HELP_STRING([--disable-demo], [do not build the demo programs @<:@default@:>@]),
62 61
              [], [enable_demo=no])
63 62
AC_MSG_CHECKING([whether to build the demo programs])
64 63
if test x"$enable_demo" != x"no"; then
65 64
  AC_MSG_RESULT([yes])
66 65
else
67 66
  AC_MSG_RESULT([no])
68 67
fi
69 68
AM_CONDITIONAL([WANT_DEMO], [test x"$enable_demo" != x"no"])
70 69

	
71 70
dnl Disable/enable building the binary tools.
72 71
AC_ARG_ENABLE([tools],
73 72
AS_HELP_STRING([--enable-tools], [build additional tools @<:@default@:>@])
74 73
AS_HELP_STRING([--disable-tools], [do not build additional tools]),
75 74
              [], [enable_tools=yes])
76 75
AC_MSG_CHECKING([whether to build the additional tools])
77 76
if test x"$enable_tools" != x"no"; then
78 77
  AC_MSG_RESULT([yes])
79 78
else
80 79
  AC_MSG_RESULT([no])
81 80
fi
82 81
AM_CONDITIONAL([WANT_TOOLS], [test x"$enable_tools" != x"no"])
83 82

	
84 83
dnl Checks for header files.
85 84
AC_CHECK_HEADERS(limits.h sys/time.h sys/times.h unistd.h)
86 85

	
87 86
dnl Checks for typedefs, structures, and compiler characteristics.
88 87
AC_C_CONST
89 88
AC_C_INLINE
90 89
AC_TYPE_SIZE_T
91 90
AC_HEADER_TIME
92 91
AC_STRUCT_TM
93 92

	
94 93
dnl Checks for library functions.
95 94
AC_HEADER_STDC
96 95
AC_CHECK_FUNCS(gettimeofday times ctime_r)
97 96

	
98 97
dnl Add dependencies on files generated by configure.
99 98
AC_SUBST([CONFIG_STATUS_DEPENDENCIES],
100 99
  ['$(top_srcdir)/doc/Doxyfile.in $(top_srcdir)/lemon/lemon.pc.in'])
101 100

	
102 101
AC_CONFIG_FILES([
103 102
Makefile
104 103
doc/Doxyfile
105 104
lemon/lemon.pc
106 105
])
107 106

	
108 107
AC_OUTPUT
109 108

	
110 109
echo
111 110
echo '****************************** SUMMARY ******************************'
112 111
echo
113 112
echo Package version............... : $PACKAGE-$VERSION
114 113
echo
115 114
echo C++ compiler.................. : $CXX
116
echo C++ compiles flags............ : $CXXFLAGS
115
echo C++ compiles flags............ : $WARNINGCXXFLAGS $CXXFLAGS
117 116
echo
118 117
#echo GLPK support.................. : $lx_glpk_found
119 118
#echo CPLEX support................. : $lx_cplex_found
120 119
#echo SOPLEX support................ : $lx_soplex_found
121 120
#echo
122 121
echo Build demo programs........... : $enable_demo
123 122
echo Build additional tools........ : $enable_tools
124 123
echo
125 124
echo The packace will be installed in
126 125
echo -n '  '
127 126
echo $prefix.
128 127
echo
129 128
echo '*********************************************************************'
130 129

	
131 130
echo
132 131
echo Configure complete, now type \'make\' and then \'make install\'.
133 132
echo
Ignore white space 96 line context
1 1
EXTRA_DIST += \
2 2
	lemon/lemon.pc.in \
3 3
	lemon/CMakeLists.txt
4 4

	
5 5
pkgconfig_DATA += lemon/lemon.pc
6 6

	
7 7
lib_LTLIBRARIES += lemon/libemon.la
8 8

	
9 9
lemon_libemon_la_SOURCES = \
10 10
        lemon/arg_parser.cc \
11 11
        lemon/base.cc \
12 12
        lemon/color.cc \
13 13
        lemon/random.cc
14 14

	
15
#lemon_libemon_la_CXXFLAGS = $(GLPK_CFLAGS) $(CPLEX_CFLAGS) $(SOPLEX_CXXFLAGS)
15
#lemon_libemon_la_CXXFLAGS = $(GLPK_CFLAGS) $(CPLEX_CFLAGS) $(SOPLEX_CXXFLAGS) $(AM_CXXFLAGS)
16 16
#lemon_libemon_la_LDFLAGS = $(GLPK_LIBS) $(CPLEX_LIBS) $(SOPLEX_LIBS)
17 17

	
18 18
lemon_HEADERS += \
19 19
        lemon/arg_parser.h \
20 20
	lemon/assert.h \
21 21
        lemon/bfs.h \
22 22
        lemon/bin_heap.h \
23 23
        lemon/color.h \
24 24
	lemon/concept_check.h \
25 25
        lemon/counter.h \
26 26
	lemon/core.h \
27 27
        lemon/dfs.h \
28 28
        lemon/dijkstra.h \
29 29
        lemon/dim2.h \
30 30
	lemon/error.h \
31 31
	lemon/full_graph.h \
32 32
        lemon/graph_to_eps.h \
33 33
        lemon/grid_graph.h \
34 34
	lemon/kruskal.h \
35 35
	lemon/lgf_reader.h \
36 36
	lemon/lgf_writer.h \
37 37
	lemon/list_graph.h \
38 38
	lemon/maps.h \
39 39
	lemon/math.h \
40 40
	lemon/max_matching.h \
41 41
	lemon/nauty_reader.h \
42 42
	lemon/path.h \
43 43
        lemon/random.h \
44 44
	lemon/smart_graph.h \
45 45
	lemon/suurballe.h \
46 46
        lemon/time_measure.h \
47 47
        lemon/tolerance.h \
48 48
	lemon/unionfind.h
49 49

	
50 50
bits_HEADERS += \
51 51
	lemon/bits/alteration_notifier.h \
52 52
	lemon/bits/array_map.h \
53 53
	lemon/bits/base_extender.h \
54 54
        lemon/bits/bezier.h \
55 55
	lemon/bits/default_map.h \
56 56
        lemon/bits/enable_if.h \
57 57
	lemon/bits/graph_extender.h \
58 58
	lemon/bits/map_extender.h \
59 59
	lemon/bits/path_dump.h \
60 60
	lemon/bits/traits.h \
61 61
	lemon/bits/vector_map.h
62 62

	
63 63
concept_HEADERS += \
0 comments (0 inline)