↑ Collapse diff ↑
Ignore white space 6 line context
1 1
INCLUDE_DIRECTORIES(
2 2
  ${PROJECT_SOURCE_DIR}
3 3
  ${PROJECT_BINARY_DIR}
4 4
)
5 5

	
6 6
CONFIGURE_FILE(
7
  ${CMAKE_CURRENT_SOURCE_DIR}/config.h.cmake
7
  ${CMAKE_CURRENT_SOURCE_DIR}/config.h.in
8 8
  ${CMAKE_CURRENT_BINARY_DIR}/config.h
9 9
)
10 10

	
11 11
CONFIGURE_FILE(
12
  ${CMAKE_CURRENT_SOURCE_DIR}/lemon.pc.cmake
12
  ${CMAKE_CURRENT_SOURCE_DIR}/lemon.pc.in
13 13
  ${CMAKE_CURRENT_BINARY_DIR}/lemon.pc
14 14
  @ONLY
15 15
)
16 16

	
17 17
SET(LEMON_SOURCES
18 18
  arg_parser.cc
19 19
  base.cc
20 20
  color.cc
21 21
  lp_base.cc
22 22
  lp_skeleton.cc
23 23
  random.cc
24 24
  bits/windows.cc
25 25
)
26 26

	
27 27
IF(LEMON_HAVE_GLPK)
28 28
  SET(LEMON_SOURCES ${LEMON_SOURCES} glpk.cc)
29 29
  INCLUDE_DIRECTORIES(${GLPK_INCLUDE_DIRS})
30 30
  IF(WIN32)
31 31
    INSTALL(FILES ${GLPK_BIN_DIR}/glpk.dll DESTINATION bin)
32 32
    INSTALL(FILES ${GLPK_BIN_DIR}/libltdl3.dll DESTINATION bin)
33 33
    INSTALL(FILES ${GLPK_BIN_DIR}/zlib1.dll DESTINATION bin)
34 34
  ENDIF()
35 35
ENDIF()
36 36

	
37 37
IF(LEMON_HAVE_CPLEX)
38 38
  SET(LEMON_SOURCES ${LEMON_SOURCES} cplex.cc)
39 39
  INCLUDE_DIRECTORIES(${CPLEX_INCLUDE_DIRS})
40 40
ENDIF()
41 41

	
42 42
IF(LEMON_HAVE_CLP)
43 43
  SET(LEMON_SOURCES ${LEMON_SOURCES} clp.cc)
44 44
  INCLUDE_DIRECTORIES(${COIN_INCLUDE_DIRS})
45 45
ENDIF()
46 46

	
47 47
IF(LEMON_HAVE_CBC)
48 48
  SET(LEMON_SOURCES ${LEMON_SOURCES} cbc.cc)
49 49
  INCLUDE_DIRECTORIES(${COIN_INCLUDE_DIRS})
50 50
ENDIF()
51 51

	
52 52
ADD_LIBRARY(lemon ${LEMON_SOURCES})
53 53
IF(UNIX)
54 54
  SET_TARGET_PROPERTIES(lemon PROPERTIES OUTPUT_NAME emon)
55 55
ENDIF()
56 56

	
57 57
INSTALL(
58 58
  TARGETS lemon
59 59
  ARCHIVE DESTINATION lib
60 60
  LIBRARY DESTINATION lib
61 61
  COMPONENT library
62 62
)
63 63

	
64 64
INSTALL(
65 65
  DIRECTORY . bits concepts
66 66
  DESTINATION include/lemon
67 67
  COMPONENT headers
68 68
  FILES_MATCHING PATTERN "*.h"
69 69
)
70 70

	
71 71
INSTALL(
72 72
  FILES ${CMAKE_CURRENT_BINARY_DIR}/config.h
73 73
  DESTINATION include/lemon
74 74
  COMPONENT headers
75 75
)
76 76

	
77 77
INSTALL(
78 78
  FILES ${CMAKE_CURRENT_BINARY_DIR}/lemon.pc
79 79
  DESTINATION lib/pkgconfig
80 80
)
81 81

	
Ignore white space 6 line context
1
/* The version string */
2
#undef LEMON_VERSION
3

	
4
/* Define to 1 if you have long long */
5
#undef LEMON_HAVE_LONG_LONG
6

	
7
/* Define to 1 if you have any LP solver. */
8
#undef LEMON_HAVE_LP
9

	
10
/* Define to 1 if you have any MIP solver. */
11
#undef LEMON_HAVE_MIP
12

	
13
/* Define to 1 if you have CPLEX. */
14
#undef LEMON_HAVE_CPLEX
15

	
16
/* Define to 1 if you have GLPK. */
17
#undef LEMON_HAVE_GLPK
18

	
19
/* Define to 1 if you have SOPLEX */
20
#undef LEMON_HAVE_SOPLEX
21

	
22
/* Define to 1 if you have CLP */
23
#undef LEMON_HAVE_CLP
24

	
25
/* Define to 1 if you have CBC */
26
#undef LEMON_HAVE_CBC
27

	
28
/* Define to 1 if you have pthread */
29
#undef LEMON_USE_PTHREAD
30

	
31
/* Define to 1 if you have win32 threads */
32
#undef LEMON_USE_WIN32_THREADS
1
#define LEMON_VERSION "@PROJECT_VERSION@"
2
#cmakedefine LEMON_HAVE_LONG_LONG 1
3
#cmakedefine LEMON_HAVE_LP 1
4
#cmakedefine LEMON_HAVE_MIP 1
5
#cmakedefine LEMON_HAVE_GLPK 1
6
#cmakedefine LEMON_HAVE_CPLEX 1
7
#cmakedefine LEMON_HAVE_CLP 1
8
#cmakedefine LEMON_HAVE_CBC 1
9
#cmakedefine LEMON_USE_PTHREAD 1
10
#cmakedefine LEMON_USE_WIN32_THREADS 1
Ignore white space 6 line context
1
prefix=@prefix@
2
exec_prefix=@exec_prefix@
3
libdir=@libdir@
4
includedir=@includedir@
1
prefix=@CMAKE_INSTALL_PREFIX@
2
exec_prefix=@CMAKE_INSTALL_PREFIX@/bin
3
libdir=@CMAKE_INSTALL_PREFIX@/lib
4
includedir=@CMAKE_INSTALL_PREFIX@/include
5 5

	
6
Name: @PACKAGE_NAME@
6
Name: @PROJECT_NAME@
7 7
Description: Library for Efficient Modeling and Optimization in Networks
8
Version: @PACKAGE_VERSION@
8
Version: @PROJECT_VERSION@
9 9
Libs: -L${libdir} -lemon @GLPK_LIBS@ @CPLEX_LIBS@ @SOPLEX_LIBS@ @CLP_LIBS@ @CBC_LIBS@
10 10
Cflags: -I${includedir}
Ignore white space 6 line context
1
ACLOCAL_AMFLAGS = -I m4
2

	
3
AM_CXXFLAGS = $(WARNINGCXXFLAGS)
4

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

	
8
EXTRA_DIST = \
9
	AUTHORS \
10
	LICENSE \
11
	m4/lx_check_cplex.m4 \
12
	m4/lx_check_glpk.m4 \
13
	m4/lx_check_soplex.m4 \
14
	m4/lx_check_coin.m4 \
15
	CMakeLists.txt \
16
	cmake/FindGhostscript.cmake \
17
	cmake/FindCPLEX.cmake \
18
	cmake/FindGLPK.cmake \
19
	cmake/FindCOIN.cmake \
20
	cmake/LEMONConfig.cmake.in \
21
	cmake/version.cmake.in \
22
	cmake/version.cmake \
23
	cmake/nsis/lemon.ico \
24
	cmake/nsis/uninstall.ico
25

	
26
pkgconfigdir = $(libdir)/pkgconfig
27
lemondir = $(pkgincludedir)
28
bitsdir = $(lemondir)/bits
29
conceptdir = $(lemondir)/concepts
30
pkgconfig_DATA =
31
lib_LTLIBRARIES =
32
lemon_HEADERS =
33
bits_HEADERS =
34
concept_HEADERS =
35
noinst_HEADERS =
36
noinst_PROGRAMS =
37
bin_PROGRAMS =
38
check_PROGRAMS =
39
dist_bin_SCRIPTS =
40
TESTS =
41
XFAIL_TESTS =
42

	
43
include lemon/Makefile.am
44
include test/Makefile.am
45
include doc/Makefile.am
46
include tools/Makefile.am
47
include scripts/Makefile.am
48

	
49
DIST_SUBDIRS = demo
50

	
51
demo:
52
	$(MAKE) $(AM_MAKEFLAGS) -C demo
53

	
54
MRPROPERFILES = \
55
	aclocal.m4 \
56
	config.h.in \
57
	config.h.in~ \
58
	configure \
59
	Makefile.in \
60
	build-aux/config.guess \
61
	build-aux/config.sub \
62
	build-aux/depcomp \
63
	build-aux/install-sh \
64
	build-aux/ltmain.sh \
65
	build-aux/missing \
66
	doc/doxygen.log
67

	
68
mrproper:
69
	$(MAKE) $(AM_MAKEFLAGS) maintainer-clean
70
	-rm -f $(MRPROPERFILES)
71

	
72
dist-bz2: dist
73
	zcat $(PACKAGE)-$(VERSION).tar.gz | \
74
	bzip2 --best -c > $(PACKAGE)-$(VERSION).tar.bz2
75

	
76
distcheck-bz2: distcheck
77
	zcat $(PACKAGE)-$(VERSION).tar.gz | \
78
	bzip2 --best -c > $(PACKAGE)-$(VERSION).tar.bz2
79

	
80
.PHONY: demo mrproper dist-bz2 distcheck-bz2
Ignore white space 6 line context
1
dnl Process this file with autoconf to produce a configure script.
2

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

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

	
25
AC_DEFINE([LEMON_VERSION], [lemon_version()], [The version string])
26

	
27
dnl Do compilation tests using the C++ compiler.
28
AC_LANG([C++])
29

	
30
dnl Check the existence of long long type.
31
AC_CHECK_TYPE(long long, [long_long_found=yes], [long_long_found=no])
32
if test x"$long_long_found" = x"yes"; then
33
  AC_DEFINE([LEMON_HAVE_LONG_LONG], [1], [Define to 1 if you have long long.])
34
fi
35

	
36
dnl Checks for programs.
37
AC_PROG_CXX
38
AC_PROG_CXXCPP
39
AC_PROG_INSTALL
40
AC_DISABLE_SHARED
41
AC_PROG_LIBTOOL
42

	
43
AC_CHECK_PROG([doxygen_found],[doxygen],[yes],[no])
44
AC_CHECK_PROG([python_found],[python],[yes],[no])
45
AC_CHECK_PROG([gs_found],[gs],[yes],[no])
46

	
47
dnl Detect Intel compiler.
48
AC_MSG_CHECKING([whether we are using the Intel C++ compiler])
49
AC_COMPILE_IFELSE([#ifndef __INTEL_COMPILER
50
choke me
51
#endif], [ICC=[yes]], [ICC=[no]])
52
if test x"$ICC" = x"yes"; then
53
  AC_MSG_RESULT([yes])
54
else
55
  AC_MSG_RESULT([no])
56
fi
57

	
58
dnl Set custom compiler flags when using g++.
59
if test "$GXX" = yes -a "$ICC" = no; then
60
  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"
61
fi
62
AC_SUBST([WARNINGCXXFLAGS])
63

	
64
dnl Checks for libraries.
65
LX_CHECK_GLPK
66
LX_CHECK_CPLEX
67
LX_CHECK_SOPLEX
68
LX_CHECK_COIN
69

	
70
AM_CONDITIONAL([HAVE_LP], [test x"$lx_lp_found" = x"yes"])
71
AM_CONDITIONAL([HAVE_MIP], [test x"$lx_mip_found" = x"yes"])
72

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

	
86
dnl Support for running test cases using valgrind.
87
use_valgrind=no
88
AC_ARG_ENABLE([valgrind],
89
AS_HELP_STRING([--enable-valgrind], [use valgrind when running tests]),
90
              [use_valgrind=yes])
91

	
92
if [[ "$use_valgrind" = "yes" ]]; then
93
  AC_CHECK_PROG(HAVE_VALGRIND, valgrind, yes, no)
94

	
95
  if [[ "$HAVE_VALGRIND" = "no" ]]; then
96
    AC_MSG_ERROR([Valgrind not found in PATH.])
97
  fi
98
fi
99
AM_CONDITIONAL(USE_VALGRIND, [test "$use_valgrind" = "yes"])
100

	
101
dnl Checks for header files.
102
AC_CHECK_HEADERS(limits.h sys/time.h sys/times.h unistd.h)
103

	
104
dnl Checks for typedefs, structures, and compiler characteristics.
105
AC_C_CONST
106
AC_C_INLINE
107
AC_TYPE_SIZE_T
108
AC_HEADER_TIME
109
AC_STRUCT_TM
110

	
111
dnl Checks for library functions.
112
AC_HEADER_STDC
113
AC_CHECK_FUNCS(gettimeofday times ctime_r)
114

	
115
dnl Add dependencies on files generated by configure.
116
AC_SUBST([CONFIG_STATUS_DEPENDENCIES],
117
  ['$(top_srcdir)/doc/Doxyfile.in $(top_srcdir)/doc/mainpage.dox.in $(top_srcdir)/lemon/lemon.pc.in $(top_srcdir)/cmake/version.cmake.in'])
118

	
119
AC_CONFIG_FILES([
120
Makefile
121
demo/Makefile
122
cmake/version.cmake
123
doc/Doxyfile
124
doc/mainpage.dox
125
lemon/lemon.pc
126
])
127

	
128
AC_OUTPUT
129

	
130
echo
131
echo '****************************** SUMMARY ******************************'
132
echo
133
echo Package version............... : $PACKAGE-$VERSION
134
echo
135
echo C++ compiler.................. : $CXX
136
echo C++ compiles flags............ : $WARNINGCXXFLAGS $CXXFLAGS
137
echo
138
echo Compiler supports long long... : $long_long_found
139
echo
140
echo GLPK support.................. : $lx_glpk_found
141
echo CPLEX support................. : $lx_cplex_found
142
echo SOPLEX support................ : $lx_soplex_found
143
echo CLP support................... : $lx_clp_found
144
echo CBC support................... : $lx_cbc_found
145
echo
146
echo Build additional tools........ : $enable_tools
147
echo Use valgrind for tests........ : $use_valgrind
148
echo
149
echo The packace will be installed in
150
echo -n '  '
151
echo $prefix.
152
echo
153
echo '*********************************************************************'
154

	
155
echo
156
echo Configure complete, now type \'make\' and then \'make install\'.
157
echo
Ignore white space 6 line context
1
AM_CXXFLAGS = $(WARNINGCXXFLAGS)
2

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

	
6
EXTRA_DIST = \
7
	CMakeLists.txt \
8
	digraph.lgf
9

	
10
noinst_PROGRAMS = \
11
	arg_parser_demo \
12
	graph_to_eps_demo \
13
	lgf_demo
14

	
15
arg_parser_demo_SOURCES = arg_parser_demo.cc
16
graph_to_eps_demo_SOURCES = graph_to_eps_demo.cc
17
lgf_demo_SOURCES = lgf_demo.cc
Ignore white space 3072 line context
1
EXTRA_DIST += \
2
	doc/Doxyfile.in \
3
	doc/DoxygenLayout.xml \
4
	doc/coding_style.dox \
5
	doc/dirs.dox \
6
	doc/groups.dox \
7
	doc/lgf.dox \
8
	doc/license.dox \
9
	doc/mainpage.dox \
10
	doc/migration.dox \
11
	doc/min_cost_flow.dox \
12
	doc/named-param.dox \
13
	doc/namespaces.dox \
14
	doc/references.bib \
15
	doc/template.h \
16
	doc/html \
17
	doc/CMakeLists.txt
18

	
19
DOC_EPS_IMAGES18 = \
20
	grid_graph.eps \
21
	nodeshape_0.eps \
22
	nodeshape_1.eps \
23
	nodeshape_2.eps \
24
	nodeshape_3.eps \
25
	nodeshape_4.eps
26

	
27
DOC_EPS_IMAGES27 = \
28
	bipartite_matching.eps \
29
	bipartite_partitions.eps \
30
	connected_components.eps \
31
	edge_biconnected_components.eps \
32
	matching.eps \
33
	node_biconnected_components.eps \
34
	planar.eps \
35
	strongly_connected_components.eps
36

	
37
DOC_EPS_IMAGES = \
38
	$(DOC_EPS_IMAGES18) \
39
	$(DOC_EPS_IMAGES27)
40

	
41
DOC_PNG_IMAGES = \
42
	$(DOC_EPS_IMAGES:%.eps=doc/gen-images/%.png)
43

	
44
EXTRA_DIST += $(DOC_EPS_IMAGES:%=doc/images/%)
45

	
46
doc/html:
47
	$(MAKE) $(AM_MAKEFLAGS) html
48

	
49
GS_COMMAND=gs -dNOPAUSE -dBATCH -q -dEPSCrop -dTextAlphaBits=4 -dGraphicsAlphaBits=4
50

	
51
$(DOC_EPS_IMAGES18:%.eps=doc/gen-images/%.png): doc/gen-images/%.png: doc/images/%.eps
52
	-mkdir doc/gen-images
53
	if test ${gs_found} = yes; then \
54
	  $(GS_COMMAND) -sDEVICE=pngalpha -r18 -sOutputFile=$@ $<; \
55
	else \
56
	  echo; \
57
	  echo "Ghostscript not found."; \
58
	  echo; \
59
	  exit 1; \
60
	fi
61

	
62
$(DOC_EPS_IMAGES27:%.eps=doc/gen-images/%.png): doc/gen-images/%.png: doc/images/%.eps
63
	-mkdir doc/gen-images
64
	if test ${gs_found} = yes; then \
65
	  $(GS_COMMAND) -sDEVICE=pngalpha -r27 -sOutputFile=$@ $<; \
66
	else \
67
	  echo; \
68
	  echo "Ghostscript not found."; \
69
	  echo; \
70
	  exit 1; \
71
	fi
72

	
73
references.dox: doc/references.bib
74
	if test ${python_found} = yes; then \
75
	  cd doc; \
76
	  python @abs_top_srcdir@/scripts/bib2dox.py @abs_top_builddir@/$< >$@; \
77
	  cd ..; \
78
	else \
79
	  echo; \
80
	  echo "Python not found."; \
81
	  echo; \
82
	  exit 1; \
83
	fi
84

	
85
html-local: $(DOC_PNG_IMAGES) references.dox
86
	if test ${doxygen_found} = yes; then \
87
	  cd doc; \
88
	  doxygen Doxyfile; \
89
	  cd ..; \
90
	else \
91
	  echo; \
92
	  echo "Doxygen not found."; \
93
	  echo; \
94
	  exit 1; \
95
	fi
96

	
97
clean-local:
98
	-rm -rf doc/html
99
	-rm -f doc/doxygen.log
100
	-rm -f $(DOC_PNG_IMAGES)
101
	-rm -rf doc/gen-images
102

	
103
update-external-tags:
104
	wget -O doc/libstdc++.tag.tmp http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/libstdc++.tag && \
105
	mv doc/libstdc++.tag.tmp doc/libstdc++.tag || \
106
	rm doc/libstdc++.tag.tmp
107

	
108
install-html-local: doc/html
109
	@$(NORMAL_INSTALL)
110
	$(mkinstalldirs) $(DESTDIR)$(htmldir)/html
111
	for p in doc/html/*.{html,css,png,map,gif,tag} ; do \
112
	  f="`echo $$p | sed -e 's|^.*/||'`"; \
113
	  echo " $(INSTALL_DATA) $$p $(DESTDIR)$(htmldir)/html/$$f"; \
114
	  $(INSTALL_DATA) $$p $(DESTDIR)$(htmldir)/html/$$f; \
115
	done
116

	
117
uninstall-local:
118
	@$(NORMAL_UNINSTALL)
119
	for p in doc/html/*.{html,css,png,map,gif,tag} ; do \
120
	  f="`echo $$p | sed -e 's|^.*/||'`"; \
121
	  echo " rm -f $(DESTDIR)$(htmldir)/html/$$f"; \
122
	  rm -f $(DESTDIR)$(htmldir)/html/$$f; \
123
	done
124

	
125
.PHONY: update-external-tags
Ignore white space 6 line context
1
EXTRA_DIST += \
2
	lemon/lemon.pc.in \
3
	lemon/lemon.pc.cmake \
4
	lemon/CMakeLists.txt \
5
	lemon/config.h.cmake
6

	
7
pkgconfig_DATA += lemon/lemon.pc
8

	
9
lib_LTLIBRARIES += lemon/libemon.la
10

	
11
lemon_libemon_la_SOURCES = \
12
	lemon/arg_parser.cc \
13
	lemon/base.cc \
14
	lemon/color.cc \
15
	lemon/lp_base.cc \
16
	lemon/lp_skeleton.cc \
17
	lemon/random.cc \
18
	lemon/bits/windows.cc
19

	
20
nodist_lemon_HEADERS = lemon/config.h	
21

	
22
lemon_libemon_la_CXXFLAGS = \
23
	$(AM_CXXFLAGS) \
24
	$(GLPK_CFLAGS) \
25
	$(CPLEX_CFLAGS) \
26
	$(SOPLEX_CXXFLAGS) \
27
	$(CLP_CXXFLAGS) \
28
	$(CBC_CXXFLAGS)
29

	
30
lemon_libemon_la_LDFLAGS = \
31
	$(GLPK_LIBS) \
32
	$(CPLEX_LIBS) \
33
	$(SOPLEX_LIBS) \
34
	$(CLP_LIBS) \
35
	$(CBC_LIBS)
36

	
37
if HAVE_GLPK
38
lemon_libemon_la_SOURCES += lemon/glpk.cc
39
endif
40

	
41
if HAVE_CPLEX
42
lemon_libemon_la_SOURCES += lemon/cplex.cc
43
endif
44

	
45
if HAVE_SOPLEX
46
lemon_libemon_la_SOURCES += lemon/soplex.cc
47
endif
48

	
49
if HAVE_CLP
50
lemon_libemon_la_SOURCES += lemon/clp.cc
51
endif
52

	
53
if HAVE_CBC
54
lemon_libemon_la_SOURCES += lemon/cbc.cc
55
endif
56

	
57
lemon_HEADERS += \
58
	lemon/adaptors.h \
59
	lemon/arg_parser.h \
60
	lemon/assert.h \
61
	lemon/bellman_ford.h \
62
	lemon/bfs.h \
63
	lemon/bin_heap.h \
64
	lemon/binomial_heap.h \
65
	lemon/bucket_heap.h \
66
	lemon/capacity_scaling.h \
67
	lemon/cbc.h \
68
	lemon/circulation.h \
69
	lemon/clp.h \
70
	lemon/color.h \
71
	lemon/concept_check.h \
72
	lemon/connectivity.h \
73
	lemon/core.h \
74
	lemon/cost_scaling.h \
75
	lemon/counter.h \
76
	lemon/cplex.h \
77
	lemon/cycle_canceling.h \
78
	lemon/dfs.h \
79
	lemon/dheap.h \
80
	lemon/dijkstra.h \
81
	lemon/dim2.h \
82
	lemon/dimacs.h \
83
	lemon/edge_set.h \
84
	lemon/elevator.h \
85
	lemon/error.h \
86
	lemon/euler.h \
87
	lemon/fib_heap.h \
88
	lemon/fractional_matching.h \
89
	lemon/full_graph.h \
90
	lemon/glpk.h \
91
	lemon/gomory_hu.h \
92
	lemon/graph_to_eps.h \
93
	lemon/grid_graph.h \
94
	lemon/grosso_locatelli_pullan_mc.h \
95
	lemon/hartmann_orlin_mmc.h \
96
	lemon/howard_mmc.h \
97
	lemon/hypercube_graph.h \
98
	lemon/karp_mmc.h \
99
	lemon/kruskal.h \
100
	lemon/hao_orlin.h \
101
	lemon/lgf_reader.h \
102
	lemon/lgf_writer.h \
103
	lemon/list_graph.h \
104
	lemon/lp.h \
105
	lemon/lp_base.h \
106
	lemon/lp_skeleton.h \
107
	lemon/maps.h \
108
	lemon/matching.h \
109
	lemon/math.h \
110
	lemon/min_cost_arborescence.h \
111
	lemon/max_cardinality_search.h \
112
	lemon/nagamochi_ibaraki.h \
113
	lemon/nauty_reader.h \
114
	lemon/network_simplex.h \
115
	lemon/pairing_heap.h \
116
	lemon/path.h \
117
	lemon/planarity.h \
118
	lemon/preflow.h \
119
	lemon/quad_heap.h \
120
	lemon/radix_heap.h \
121
	lemon/radix_sort.h \
122
	lemon/random.h \
123
	lemon/smart_graph.h \
124
	lemon/soplex.h \
125
	lemon/static_graph.h \
126
	lemon/suurballe.h \
127
	lemon/time_measure.h \
128
	lemon/tolerance.h \
129
	lemon/unionfind.h \
130
	lemon/bits/windows.h
131

	
132
bits_HEADERS += \
133
	lemon/bits/alteration_notifier.h \
134
	lemon/bits/array_map.h \
135
	lemon/bits/bezier.h \
136
	lemon/bits/default_map.h \
137
	lemon/bits/edge_set_extender.h \
138
	lemon/bits/enable_if.h \
139
	lemon/bits/graph_adaptor_extender.h \
140
	lemon/bits/graph_extender.h \
141
	lemon/bits/lock.h \
142
	lemon/bits/map_extender.h \
143
	lemon/bits/path_dump.h \
144
	lemon/bits/solver_bits.h \
145
	lemon/bits/traits.h \
146
	lemon/bits/variant.h \
147
	lemon/bits/vector_map.h
148

	
149
concept_HEADERS += \
150
	lemon/concepts/digraph.h \
151
	lemon/concepts/graph.h \
152
	lemon/concepts/graph_components.h \
153
	lemon/concepts/heap.h \
154
	lemon/concepts/maps.h \
155
	lemon/concepts/path.h
Ignore white space 6 line context
1
#define LEMON_VERSION "@PROJECT_VERSION@"
2
#cmakedefine LEMON_HAVE_LONG_LONG 1
3
#cmakedefine LEMON_HAVE_LP 1
4
#cmakedefine LEMON_HAVE_MIP 1
5
#cmakedefine LEMON_HAVE_GLPK 1
6
#cmakedefine LEMON_HAVE_CPLEX 1
7
#cmakedefine LEMON_HAVE_CLP 1
8
#cmakedefine LEMON_HAVE_CBC 1
9
#cmakedefine LEMON_USE_PTHREAD 1
10
#cmakedefine LEMON_USE_WIN32_THREADS 1
Ignore white space 6 line context
1
prefix=@CMAKE_INSTALL_PREFIX@
2
exec_prefix=@CMAKE_INSTALL_PREFIX@/bin
3
libdir=@CMAKE_INSTALL_PREFIX@/lib
4
includedir=@CMAKE_INSTALL_PREFIX@/include
5

	
6
Name: @PROJECT_NAME@
7
Description: Library for Efficient Modeling and Optimization in Networks
8
Version: @PROJECT_VERSION@
9
Libs: -L${libdir} -lemon @GLPK_LIBS@ @CPLEX_LIBS@ @SOPLEX_LIBS@ @CLP_LIBS@ @CBC_LIBS@
10
Cflags: -I${includedir}
Ignore white space 6 line context
1
AC_DEFUN([LX_CHECK_COIN],
2
[
3
  AC_ARG_WITH([coin],
4
AS_HELP_STRING([--with-coin@<:@=PREFIX@:>@], [search for CLP under PREFIX or under the default search paths if PREFIX is not given @<:@default@:>@])
5
AS_HELP_STRING([--without-coin], [disable checking for CLP]),
6
              [], [with_coin=yes])
7

	
8
  AC_ARG_WITH([coin-includedir],
9
AS_HELP_STRING([--with-coin-includedir=DIR], [search for CLP headers in DIR]),
10
              [], [with_coin_includedir=no])
11

	
12
  AC_ARG_WITH([coin-libdir],
13
AS_HELP_STRING([--with-coin-libdir=DIR], [search for CLP libraries in DIR]),
14
              [], [with_coin_libdir=no])
15

	
16
  lx_clp_found=no
17
  if test x"$with_coin" != x"no"; then
18
    AC_MSG_CHECKING([for CLP])
19

	
20
    if test x"$with_coin_includedir" != x"no"; then
21
      CLP_CXXFLAGS="-I$with_coin_includedir"
22
    elif test x"$with_coin" != x"yes"; then
23
      CLP_CXXFLAGS="-I$with_coin/include"
24
    fi
25

	
26
    if test x"$with_coin_libdir" != x"no"; then
27
      CLP_LDFLAGS="-L$with_coin_libdir"
28
    elif test x"$with_coin" != x"yes"; then
29
      CLP_LDFLAGS="-L$with_coin/lib"
30
    fi
31
    CLP_LIBS="-lClp -lCoinUtils -lm"
32

	
33
    lx_save_cxxflags="$CXXFLAGS"
34
    lx_save_ldflags="$LDFLAGS"
35
    lx_save_libs="$LIBS"
36
    CXXFLAGS="$CLP_CXXFLAGS"
37
    LDFLAGS="$CLP_LDFLAGS"
38
    LIBS="$CLP_LIBS"
39

	
40
    lx_clp_test_prog='
41
      #include <coin/ClpModel.hpp>
42

	
43
      int main(int argc, char** argv)
44
      {
45
        ClpModel clp;
46
        return 0;
47
      }'
48

	
49
    AC_LANG_PUSH(C++)
50
    AC_LINK_IFELSE([$lx_clp_test_prog], [lx_clp_found=yes], [lx_clp_found=no])
51
    AC_LANG_POP(C++)
52

	
53
    CXXFLAGS="$lx_save_cxxflags"
54
    LDFLAGS="$lx_save_ldflags"
55
    LIBS="$lx_save_libs"
56

	
57
    if test x"$lx_clp_found" = x"yes"; then
58
      AC_DEFINE([LEMON_HAVE_CLP], [1], [Define to 1 if you have CLP.])
59
      lx_lp_found=yes
60
      AC_DEFINE([LEMON_HAVE_LP], [1], [Define to 1 if you have any LP solver.])
61
      AC_MSG_RESULT([yes])
62
    else
63
      CLP_CXXFLAGS=""
64
      CLP_LDFLAGS=""
65
      CLP_LIBS=""
66
      AC_MSG_RESULT([no])
67
    fi
68
  fi
69
  CLP_LIBS="$CLP_LDFLAGS $CLP_LIBS"
70
  AC_SUBST(CLP_CXXFLAGS)
71
  AC_SUBST(CLP_LIBS)
72
  AM_CONDITIONAL([HAVE_CLP], [test x"$lx_clp_found" = x"yes"])
73

	
74

	
75
  lx_cbc_found=no
76
  if test x"$lx_clp_found" = x"yes"; then
77
    if test x"$with_coin" != x"no"; then
78
      AC_MSG_CHECKING([for CBC])
79

	
80
      if test x"$with_coin_includedir" != x"no"; then
81
        CBC_CXXFLAGS="-I$with_coin_includedir"
82
      elif test x"$with_coin" != x"yes"; then
83
        CBC_CXXFLAGS="-I$with_coin/include"
84
      fi
85

	
86
      if test x"$with_coin_libdir" != x"no"; then
87
        CBC_LDFLAGS="-L$with_coin_libdir"
88
      elif test x"$with_coin" != x"yes"; then
89
        CBC_LDFLAGS="-L$with_coin/lib"
90
      fi
91
      CBC_LIBS="-lOsi -lCbc -lCbcSolver -lClp -lOsiClp -lCoinUtils -lVol -lOsiVol -lCgl -lm -llapack -lblas"
92

	
93
      lx_save_cxxflags="$CXXFLAGS"
94
      lx_save_ldflags="$LDFLAGS"
95
      lx_save_libs="$LIBS"
96
      CXXFLAGS="$CBC_CXXFLAGS"
97
      LDFLAGS="$CBC_LDFLAGS"
98
      LIBS="$CBC_LIBS"
99

	
100
      lx_cbc_test_prog='
101
        #include <coin/CbcModel.hpp>
102

	
103
        int main(int argc, char** argv)
104
        {
105
          CbcModel cbc;
106
          return 0;
107
        }'
108

	
109
      AC_LANG_PUSH(C++)
110
      AC_LINK_IFELSE([$lx_cbc_test_prog], [lx_cbc_found=yes], [lx_cbc_found=no])
111
      AC_LANG_POP(C++)
112

	
113
      CXXFLAGS="$lx_save_cxxflags"
114
      LDFLAGS="$lx_save_ldflags"
115
      LIBS="$lx_save_libs"
116

	
117
      if test x"$lx_cbc_found" = x"yes"; then
118
        AC_DEFINE([LEMON_HAVE_CBC], [1], [Define to 1 if you have CBC.])
119
        lx_lp_found=yes
120
        AC_DEFINE([LEMON_HAVE_LP], [1], [Define to 1 if you have any LP solver.])
121
        lx_mip_found=yes
122
        AC_DEFINE([LEMON_HAVE_MIP], [1], [Define to 1 if you have any MIP solver.])
123
        AC_MSG_RESULT([yes])
124
      else
125
        CBC_CXXFLAGS=""
126
        CBC_LDFLAGS=""
127
        CBC_LIBS=""
128
        AC_MSG_RESULT([no])
129
      fi
130
    fi
131
  fi
132
  CBC_LIBS="$CBC_LDFLAGS $CBC_LIBS"
133
  AC_SUBST(CBC_CXXFLAGS)
134
  AC_SUBST(CBC_LIBS)
135
  AM_CONDITIONAL([HAVE_CBC], [test x"$lx_cbc_found" = x"yes"])
136
])
Ignore white space 6 line context
1
AC_DEFUN([LX_CHECK_CPLEX],
2
[
3
  AC_ARG_WITH([cplex],
4
AS_HELP_STRING([--with-cplex@<:@=PREFIX@:>@], [search for CPLEX under PREFIX or under the default search paths if PREFIX is not given @<:@default@:>@])
5
AS_HELP_STRING([--without-cplex], [disable checking for CPLEX]),
6
              [], [with_cplex=yes])
7

	
8
  AC_ARG_WITH([cplex-includedir],
9
AS_HELP_STRING([--with-cplex-includedir=DIR], [search for CPLEX headers in DIR]),
10
              [], [with_cplex_includedir=no])
11

	
12
  AC_ARG_WITH([cplex-libdir],
13
AS_HELP_STRING([--with-cplex-libdir=DIR], [search for CPLEX libraries in DIR]),
14
              [], [with_cplex_libdir=no])
15

	
16
  lx_cplex_found=no
17
  if test x"$with_cplex" != x"no"; then
18
    AC_MSG_CHECKING([for CPLEX])
19

	
20
    if test x"$with_cplex_includedir" != x"no"; then
21
      CPLEX_CFLAGS="-I$with_cplex_includedir"
22
    elif test x"$with_cplex" != x"yes"; then
23
      CPLEX_CFLAGS="-I$with_cplex/include"
24
    elif test x"$CPLEX_INCLUDEDIR" != x; then
25
      CPLEX_CFLAGS="-I$CPLEX_INCLUDEDIR"
26
    fi
27

	
28
    if test x"$with_cplex_libdir" != x"no"; then
29
      CPLEX_LDFLAGS="-L$with_cplex_libdir"
30
    elif test x"$with_cplex" != x"yes"; then
31
      CPLEX_LDFLAGS="-L$with_cplex/lib"
32
    elif test x"$CPLEX_LIBDIR" != x; then
33
      CPLEX_LDFLAGS="-L$CPLEX_LIBDIR"
34
    fi
35
    CPLEX_LIBS="-lcplex -lm -lpthread"
36

	
37
    lx_save_cxxflags="$CXXFLAGS"
38
    lx_save_ldflags="$LDFLAGS"
39
    lx_save_libs="$LIBS"
40
    CXXFLAGS="$CPLEX_CFLAGS"
41
    LDFLAGS="$CPLEX_LDFLAGS"
42
    LIBS="$CPLEX_LIBS"
43

	
44
    lx_cplex_test_prog='
45
      extern "C" {
46
      #include <ilcplex/cplex.h>
47
      }
48

	
49
      int main(int argc, char** argv)
50
      {
51
        CPXENVptr env = NULL;
52
        return 0;
53
      }'
54

	
55
    AC_LANG_PUSH(C++)
56
    AC_LINK_IFELSE([$lx_cplex_test_prog], [lx_cplex_found=yes], [lx_cplex_found=no])
57
    AC_LANG_POP(C++)
58

	
59
    CXXFLAGS="$lx_save_cxxflags"
60
    LDFLAGS="$lx_save_ldflags"
61
    LIBS="$lx_save_libs"
62

	
63
    if test x"$lx_cplex_found" = x"yes"; then
64
      AC_DEFINE([LEMON_HAVE_CPLEX], [1], [Define to 1 if you have CPLEX.])
65
      lx_lp_found=yes
66
      AC_DEFINE([LEMON_HAVE_LP], [1], [Define to 1 if you have any LP solver.])
67
      lx_mip_found=yes
68
      AC_DEFINE([LEMON_HAVE_MIP], [1], [Define to 1 if you have any MIP solver.])
69
      AC_MSG_RESULT([yes])
70
    else
71
      CPLEX_CFLAGS=""
72
      CPLEX_LDFLAGS=""
73
      CPLEX_LIBS=""
74
      AC_MSG_RESULT([no])
75
    fi
76
  fi
77
  CPLEX_LIBS="$CPLEX_LDFLAGS $CPLEX_LIBS"
78
  AC_SUBST(CPLEX_CFLAGS)
79
  AC_SUBST(CPLEX_LIBS)
80
  AM_CONDITIONAL([HAVE_CPLEX], [test x"$lx_cplex_found" = x"yes"])
81
])
Ignore white space 6 line context
1
AC_DEFUN([LX_CHECK_GLPK],
2
[
3
  AC_ARG_WITH([glpk],
4
AS_HELP_STRING([--with-glpk@<:@=PREFIX@:>@], [search for GLPK under PREFIX or under the default search paths if PREFIX is not given @<:@default@:>@])
5
AS_HELP_STRING([--without-glpk], [disable checking for GLPK]),
6
              [], [with_glpk=yes])
7

	
8
  AC_ARG_WITH([glpk-includedir],
9
AS_HELP_STRING([--with-glpk-includedir=DIR], [search for GLPK headers in DIR]),
10
              [], [with_glpk_includedir=no])
11

	
12
  AC_ARG_WITH([glpk-libdir],
13
AS_HELP_STRING([--with-glpk-libdir=DIR], [search for GLPK libraries in DIR]),
14
              [], [with_glpk_libdir=no])
15

	
16
  lx_glpk_found=no
17
  if test x"$with_glpk" != x"no"; then
18
    AC_MSG_CHECKING([for GLPK])
19

	
20
    if test x"$with_glpk_includedir" != x"no"; then
21
      GLPK_CFLAGS="-I$with_glpk_includedir"
22
    elif test x"$with_glpk" != x"yes"; then
23
      GLPK_CFLAGS="-I$with_glpk/include"
24
    fi
25

	
26
    if test x"$with_glpk_libdir" != x"no"; then
27
      GLPK_LDFLAGS="-L$with_glpk_libdir"
28
    elif test x"$with_glpk" != x"yes"; then
29
      GLPK_LDFLAGS="-L$with_glpk/lib"
30
    fi
31
    GLPK_LIBS="-lglpk"
32

	
33
    lx_save_cxxflags="$CXXFLAGS"
34
    lx_save_ldflags="$LDFLAGS"
35
    lx_save_libs="$LIBS"
36
    CXXFLAGS="$GLPK_CFLAGS"
37
    LDFLAGS="$GLPK_LDFLAGS"
38
    LIBS="$GLPK_LIBS"
39

	
40
    lx_glpk_test_prog='
41
      extern "C" {
42
      #include <glpk.h>
43
      }
44

	
45
      #if (GLP_MAJOR_VERSION < 4) \
46
         || (GLP_MAJOR_VERSION == 4 && GLP_MINOR_VERSION < 33)
47
      #error Supported GLPK versions: 4.33 or above
48
      #endif
49

	
50
      int main(int argc, char** argv)
51
      {
52
        LPX *lp;
53
        lp = lpx_create_prob();
54
        lpx_delete_prob(lp);
55
        return 0;
56
      }'
57

	
58
    AC_LANG_PUSH(C++)
59
    AC_LINK_IFELSE([$lx_glpk_test_prog], [lx_glpk_found=yes], [lx_glpk_found=no])
60
    AC_LANG_POP(C++)
61

	
62
    CXXFLAGS="$lx_save_cxxflags"
63
    LDFLAGS="$lx_save_ldflags"
64
    LIBS="$lx_save_libs"
65

	
66
    if test x"$lx_glpk_found" = x"yes"; then
67
      AC_DEFINE([LEMON_HAVE_GLPK], [1], [Define to 1 if you have GLPK.])
68
      lx_lp_found=yes
69
      AC_DEFINE([LEMON_HAVE_LP], [1], [Define to 1 if you have any LP solver.])
70
      lx_mip_found=yes
71
      AC_DEFINE([LEMON_HAVE_MIP], [1], [Define to 1 if you have any MIP solver.])
72
      AC_MSG_RESULT([yes])
73
    else
74
      GLPK_CFLAGS=""
75
      GLPK_LDFLAGS=""
76
      GLPK_LIBS=""
77
      AC_MSG_RESULT([no])
78
    fi
79
  fi
80
  GLPK_LIBS="$GLPK_LDFLAGS $GLPK_LIBS"
81
  AC_SUBST(GLPK_CFLAGS)
82
  AC_SUBST(GLPK_LIBS)
83
  AM_CONDITIONAL([HAVE_GLPK], [test x"$lx_glpk_found" = x"yes"])
84
])
Ignore white space 6 line context
1
AC_DEFUN([LX_CHECK_SOPLEX],
2
[
3
  AC_ARG_WITH([soplex],
4
AS_HELP_STRING([--with-soplex@<:@=PREFIX@:>@], [search for SOPLEX under PREFIX or under the default search paths if PREFIX is not given @<:@default@:>@])
5
AS_HELP_STRING([--without-soplex], [disable checking for SOPLEX]),
6
              [], [with_soplex=yes])
7

	
8
  AC_ARG_WITH([soplex-includedir],
9
AS_HELP_STRING([--with-soplex-includedir=DIR], [search for SOPLEX headers in DIR]),
10
              [], [with_soplex_includedir=no])
11

	
12
  AC_ARG_WITH([soplex-libdir],
13
AS_HELP_STRING([--with-soplex-libdir=DIR], [search for SOPLEX libraries in DIR]),
14
              [], [with_soplex_libdir=no])
15

	
16
  lx_soplex_found=no
17
  if test x"$with_soplex" != x"no"; then
18
    AC_MSG_CHECKING([for SOPLEX])
19

	
20
    if test x"$with_soplex_includedir" != x"no"; then
21
      SOPLEX_CXXFLAGS="-I$with_soplex_includedir"
22
    elif test x"$with_soplex" != x"yes"; then
23
      SOPLEX_CXXFLAGS="-I$with_soplex/src"
24
    fi
25

	
26
    if test x"$with_soplex_libdir" != x"no"; then
27
      SOPLEX_LDFLAGS="-L$with_soplex_libdir"
28
    elif test x"$with_soplex" != x"yes"; then
29
      SOPLEX_LDFLAGS="-L$with_soplex/lib"
30
    fi
31
    SOPLEX_LIBS="-lsoplex -lz"
32

	
33
    lx_save_cxxflags="$CXXFLAGS"
34
    lx_save_ldflags="$LDFLAGS"
35
    lx_save_libs="$LIBS"
36
    CXXFLAGS="$SOPLEX_CXXFLAGS"
37
    LDFLAGS="$SOPLEX_LDFLAGS"
38
    LIBS="$SOPLEX_LIBS"
39

	
40
    lx_soplex_test_prog='
41
      #include <soplex.h>
42

	
43
      int main(int argc, char** argv)
44
      {
45
        soplex::SoPlex soplex;
46
        return 0;
47
      }'
48

	
49
    AC_LANG_PUSH(C++)
50
    AC_LINK_IFELSE([$lx_soplex_test_prog], [lx_soplex_found=yes], [lx_soplex_found=no])
51
    AC_LANG_POP(C++)
52

	
53
    CXXFLAGS="$lx_save_cxxflags"
54
    LDFLAGS="$lx_save_ldflags"
55
    LIBS="$lx_save_libs"
56

	
57
    if test x"$lx_soplex_found" = x"yes"; then
58
      AC_DEFINE([LEMON_HAVE_SOPLEX], [1], [Define to 1 if you have SOPLEX.])
59
      lx_lp_found=yes
60
      AC_DEFINE([LEMON_HAVE_LP], [1], [Define to 1 if you have any LP solver.])
61
      AC_MSG_RESULT([yes])
62
    else
63
      SOPLEX_CXXFLAGS=""
64
      SOPLEX_LDFLAGS=""
65
      SOPLEX_LIBS=""
66
      AC_MSG_RESULT([no])
67
    fi
68
  fi
69
  SOPLEX_LIBS="$SOPLEX_LDFLAGS $SOPLEX_LIBS"
70
  AC_SUBST(SOPLEX_CXXFLAGS)
71
  AC_SUBST(SOPLEX_LIBS)
72
  AM_CONDITIONAL([HAVE_SOPLEX], [test x"$lx_soplex_found" = x"yes"])
73
])
Ignore white space 6 line context
1
EXTRA_DIST += \
2
	scripts/bib2dox.py \
3
	scripts/bootstrap.sh \
4
	scripts/chg-len.py \
5
	scripts/mk-release.sh \
6
	scripts/unify-sources.sh \
7
	scripts/valgrind-wrapper.sh
Ignore white space 6 line context
1
#!/bin/bash
2
#
3
# This file is a part of LEMON, a generic C++ optimization library.
4
#
5
# Copyright (C) 2003-2009
6
# Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
7
# (Egervary Research Group on Combinatorial Optimization, EGRES).
8
#
9
# Permission to use, modify and distribute this software is granted
10
# provided that this copyright notice appears in all copies. For
11
# precise terms see the accompanying LICENSE file.
12
#
13
# This software is provided "AS IS" with no warranty of any kind,
14
# express or implied, and with no claim as to its suitability for any
15
# purpose.
16

	
17

	
18
if [ ! -f ~/.lemon-bootstrap ]; then
19
    echo 'Create ~/.lemon-bootstrap'.
20
    cat >~/.lemon-bootstrap <<EOF
21
#
22
# Default settings for bootstraping the LEMON source code repository
23
#
24
EOF
25
fi
26

	
27
source ~/.lemon-bootstrap
28
if [ -f ../../../.lemon-bootstrap ]; then source ../../../.lemon-bootstrap; fi
29
if [ -f ../../.lemon-bootstrap ]; then source ../../.lemon-bootstrap; fi
30
if [ -f ../.lemon-bootstrap ]; then source ../.lemon-bootstrap; fi
31
if [ -f ./.lemon-bootstrap ]; then source ./.lemon-bootstrap; fi
32

	
33

	
34
function augment_config() { 
35
    if [ "x${!1}" == "x" ]; then
36
        eval $1=$2
37
        echo Add "'$1'" to '~/.lemon-bootstrap'.
38
        echo >>~/.lemon-bootstrap
39
        echo $3 >>~/.lemon-bootstrap
40
        echo $1=$2 >>~/.lemon-bootstrap
41
    fi
42
}
43

	
44
augment_config LEMON_INSTALL_PREFIX /usr/local \
45
    "# LEMON installation prefix"
46

	
47
augment_config GLPK_PREFIX /usr/local/ \
48
    "# GLPK installation root prefix"
49

	
50
augment_config COIN_OR_PREFIX /usr/local/coin-or \
51
    "# COIN-OR installation root prefix (used for CLP/CBC)"
52

	
53
augment_config SOPLEX_PREFIX /usr/local/soplex \
54
    "# Soplex build prefix"
55

	
56

	
57
function ask() {
58
echo -n "$1 [$2]? "
59
read _an
60
if [ "x$_an" == "x" ]; then
61
    ret="$2"
62
else
63
    ret=$_an
64
fi
65
}
66

	
67
function yesorno() {
68
    ret='rossz'
69
    while [ "$ret" != "y" -a "$ret" != "n" -a "$ret" != "yes" -a "$ret" != "no" ]; do
70
        ask "$1" "$2"
71
    done
72
    if [ "$ret" != "y" -a "$ret" != "yes" ]; then
73
        return 1
74
    else
75
        return 0
76
    fi
77
}
78

	
79
if yesorno "External build" "n"
80
then
81
    CONFIGURE_PATH=".."
82
else
83
    CONFIGURE_PATH="."
84
    if yesorno "Autoreconf" "y"
85
    then
86
        AUTORE=yes
87
    else
88
        AUTORE=no
89
    fi
90
fi
91

	
92
if yesorno "Optimize" "n" 
93
then
94
    opt_flags=' -O2'
95
else
96
    opt_flags=''
97
fi
98

	
99
if yesorno "Stop on warning" "y" 
100
then
101
    werror_flags=' -Werror'
102
else
103
    werror_flags=''
104
fi
105

	
106
cxx_flags="CXXFLAGS=-ggdb$opt_flags$werror_flags"
107

	
108
if yesorno "Check with valgrind" "n" 
109
then
110
    valgrind_flags=' --enable-valgrind'
111
else
112
    valgrind_flags=''
113
fi
114

	
115
if [ -f ${GLPK_PREFIX}/include/glpk.h ]; then
116
    if yesorno "Use GLPK" "y"
117
    then
118
        glpk_flag="--with-glpk=$GLPK_PREFIX"
119
    else
120
        glpk_flag="--without-glpk"
121
    fi
122
else
123
    glpk_flag="--without-glpk"        
124
fi
125

	
126
if [ -f ${COIN_OR_PREFIX}/include/coin/config_coinutils.h ]; then
127
    if yesorno "Use COIN-OR (CBC/CLP)" "n"
128
    then
129
        coin_flag="--with-coin=$COIN_OR_PREFIX"
130
    else
131
        coin_flag="--without-coin"
132
    fi
133
else
134
    coin_flag="--without-coin"        
135
fi
136

	
137
if [ -f ${SOPLEX_PREFIX}/src/soplex.h ]; then
138
    if yesorno "Use Soplex" "n"
139
    then
140
        soplex_flag="--with-soplex=$SOPLEX_PREFIX"
141
    else
142
        soplex_flag="--without-soplex"
143
    fi
144
else
145
    soplex_flag="--without-soplex"
146
fi
147

	
148
if [ "x$AUTORE" == "xyes" ]; then
149
    autoreconf -vif;
150
fi
151
${CONFIGURE_PATH}/configure --prefix=$LEMON_INSTALL_PREFIX \
152
$valgrind_flags \
153
"$cxx_flags" \
154
$glpk_flag \
155
$coin_flag \
156
$soplex_flag \
157
$*
Ignore white space 6 line context
1
#!/bin/bash
2
#
3
# This file is a part of LEMON, a generic C++ optimization library.
4
#
5
# Copyright (C) 2003-2009
6
# Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
7
# (Egervary Research Group on Combinatorial Optimization, EGRES).
8
#
9
# Permission to use, modify and distribute this software is granted
10
# provided that this copyright notice appears in all copies. For
11
# precise terms see the accompanying LICENSE file.
12
#
13
# This software is provided "AS IS" with no warranty of any kind,
14
# express or implied, and with no claim as to its suitability for any
15
# purpose.
16

	
17
set -e
18

	
19
if [ $# = 0 ]; then
20
    echo "Usage: $0 release-id"
21
    exit 1
22
else
23
    export LEMON_VERSION=$1
24
fi
25

	
26
echo '*****************************************************************'
27
echo ' Start making release tarballs for version '${LEMON_VERSION}
28
echo '*****************************************************************'
29

	
30
autoreconf -vif
31
./configure
32

	
33
make
34
make html
35
make distcheck
36
tar xf lemon-${LEMON_VERSION}.tar.gz
37
zip -r lemon-${LEMON_VERSION}.zip lemon-${LEMON_VERSION}
38
mv lemon-${LEMON_VERSION}/doc/html lemon-doc-${LEMON_VERSION}
39
tar czf lemon-doc-${LEMON_VERSION}.tar.gz lemon-doc-${LEMON_VERSION}
40
zip -r lemon-doc-${LEMON_VERSION}.zip lemon-doc-${LEMON_VERSION}
41
tar czf lemon-nodoc-${LEMON_VERSION}.tar.gz lemon-${LEMON_VERSION}
42
zip -r lemon-nodoc-${LEMON_VERSION}.zip lemon-${LEMON_VERSION}
43
hg tag -m 'LEMON '${LEMON_VERSION}' released ('$(hg par --template="{node|short}")' tagged as r'${LEMON_VERSION}')' r${LEMON_VERSION}
44

	
45
rm -rf lemon-${LEMON_VERSION} lemon-doc-${LEMON_VERSION}
46

	
47
echo '*****************************************************************'
48
echo '  Release '${LEMON_VERSION}' has been created' 
49
echo '*****************************************************************'
Ignore white space 6 line context
1
if USE_VALGRIND
2
TESTS_ENVIRONMENT=$(top_srcdir)/scripts/valgrind-wrapper.sh
3
endif
4

	
5
EXTRA_DIST += \
6
	test/CMakeLists.txt
7

	
8
noinst_HEADERS += \
9
	test/graph_test.h \
10
	test/test_tools.h
11

	
12
check_PROGRAMS += \
13
	test/adaptors_test \
14
	test/bellman_ford_test \
15
	test/bfs_test \
16
	test/circulation_test \
17
	test/connectivity_test \
18
	test/counter_test \
19
	test/dfs_test \
20
	test/digraph_test \
21
	test/dijkstra_test \
22
	test/dim_test \
23
	test/edge_set_test \
24
	test/error_test \
25
	test/euler_test \
26
	test/fractional_matching_test \
27
	test/gomory_hu_test \
28
	test/graph_copy_test \
29
	test/graph_test \
30
	test/graph_utils_test \
31
	test/hao_orlin_test \
32
	test/heap_test \
33
	test/kruskal_test \
34
	test/lgf_test \
35
	test/maps_test \
36
	test/matching_test \
37
	test/max_cardinality_search_test \
38
	test/max_clique_test \
39
	test/min_cost_arborescence_test \
40
	test/min_cost_flow_test \
41
	test/min_mean_cycle_test \
42
	test/nagamochi_ibaraki_test \
43
	test/path_test \
44
	test/planarity_test \
45
	test/preflow_test \
46
	test/radix_sort_test \
47
	test/random_test \
48
	test/suurballe_test \
49
	test/test_tools_fail \
50
	test/test_tools_pass \
51
	test/time_measure_test \
52
	test/unionfind_test
53

	
54
test_test_tools_pass_DEPENDENCIES = demo
55

	
56
if HAVE_LP
57
check_PROGRAMS += test/lp_test
58
endif HAVE_LP
59
if HAVE_MIP
60
check_PROGRAMS += test/mip_test
61
endif HAVE_MIP
62

	
63
TESTS += $(check_PROGRAMS)
64
XFAIL_TESTS += test/test_tools_fail$(EXEEXT)
65

	
66
test_adaptors_test_SOURCES = test/adaptors_test.cc
67
test_bellman_ford_test_SOURCES = test/bellman_ford_test.cc
68
test_bfs_test_SOURCES = test/bfs_test.cc
69
test_circulation_test_SOURCES = test/circulation_test.cc
70
test_counter_test_SOURCES = test/counter_test.cc
71
test_connectivity_test_SOURCES = test/connectivity_test.cc
72
test_dfs_test_SOURCES = test/dfs_test.cc
73
test_digraph_test_SOURCES = test/digraph_test.cc
74
test_dijkstra_test_SOURCES = test/dijkstra_test.cc
75
test_dim_test_SOURCES = test/dim_test.cc
76
test_edge_set_test_SOURCES = test/edge_set_test.cc
77
test_error_test_SOURCES = test/error_test.cc
78
test_euler_test_SOURCES = test/euler_test.cc
79
test_fractional_matching_test_SOURCES = test/fractional_matching_test.cc
80
test_gomory_hu_test_SOURCES = test/gomory_hu_test.cc
81
test_graph_copy_test_SOURCES = test/graph_copy_test.cc
82
test_graph_test_SOURCES = test/graph_test.cc
83
test_graph_utils_test_SOURCES = test/graph_utils_test.cc
84
test_hao_orlin_test_SOURCES = test/hao_orlin_test.cc
85
test_heap_test_SOURCES = test/heap_test.cc
86
test_kruskal_test_SOURCES = test/kruskal_test.cc
87
test_lgf_test_SOURCES = test/lgf_test.cc
88
test_lp_test_SOURCES = test/lp_test.cc
89
test_maps_test_SOURCES = test/maps_test.cc
90
test_mip_test_SOURCES = test/mip_test.cc
91
test_matching_test_SOURCES = test/matching_test.cc
92
test_max_cardinality_search_test_SOURCES = test/max_cardinality_search_test.cc
93
test_max_clique_test_SOURCES = test/max_clique_test.cc
94
test_min_cost_arborescence_test_SOURCES = test/min_cost_arborescence_test.cc
95
test_min_cost_flow_test_SOURCES = test/min_cost_flow_test.cc
96
test_min_mean_cycle_test_SOURCES = test/min_mean_cycle_test.cc
97
test_nagamochi_ibaraki_test_SOURCES = test/nagamochi_ibaraki_test.cc
98
test_path_test_SOURCES = test/path_test.cc
99
test_planarity_test_SOURCES = test/planarity_test.cc
100
test_preflow_test_SOURCES = test/preflow_test.cc
101
test_radix_sort_test_SOURCES = test/radix_sort_test.cc
102
test_suurballe_test_SOURCES = test/suurballe_test.cc
103
test_random_test_SOURCES = test/random_test.cc
104
test_test_tools_fail_SOURCES = test/test_tools_fail.cc
105
test_test_tools_pass_SOURCES = test/test_tools_pass.cc
106
test_time_measure_test_SOURCES = test/time_measure_test.cc
107
test_unionfind_test_SOURCES = test/unionfind_test.cc
Ignore white space 6 line context
1
EXTRA_DIST += \
2
	tools/CMakeLists.txt
3

	
4
if WANT_TOOLS
5

	
6
bin_PROGRAMS += \
7
	tools/dimacs-solver \
8
	tools/dimacs-to-lgf \
9
	tools/lgf-gen
10

	
11
dist_bin_SCRIPTS += tools/lemon-0.x-to-1.x.sh
12

	
13
endif WANT_TOOLS
14

	
15
tools_dimacs_solver_SOURCES = tools/dimacs-solver.cc
16
tools_dimacs_to_lgf_SOURCES = tools/dimacs-to-lgf.cc
17
tools_lgf_gen_SOURCES = tools/lgf-gen.cc
0 comments (0 inline)