0
4
0
1 | 1 |
CMAKE_MINIMUM_REQUIRED(VERSION 2.6) |
2 | 2 |
|
3 | 3 |
IF(EXISTS ${CMAKE_SOURCE_DIR}/cmake/version.cmake) |
4 | 4 |
INCLUDE(${CMAKE_SOURCE_DIR}/cmake/version.cmake) |
5 | 5 |
ELSE(EXISTS ${CMAKE_SOURCE_DIR}/cmake/version.cmake) |
6 | 6 |
SET(PROJECT_NAME "LEMON") |
7 | 7 |
SET(PROJECT_VERSION "hg-tip" CACHE STRING "LEMON version string.") |
8 | 8 |
ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/cmake/version.cmake) |
9 | 9 |
|
10 | 10 |
PROJECT(${PROJECT_NAME}) |
11 | 11 |
|
12 | 12 |
SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake) |
13 | 13 |
|
14 | 14 |
INCLUDE(FindDoxygen) |
15 | 15 |
INCLUDE(FindGhostscript) |
16 | 16 |
FIND_PACKAGE(GLPK 4.33) |
17 | 17 |
FIND_PACKAGE(CPLEX) |
18 | 18 |
FIND_PACKAGE(COIN) |
19 | 19 |
|
20 | 20 |
IF(MSVC) |
21 | 21 |
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /wd4250 /wd4355 /wd4800 /wd4996") |
22 | 22 |
# Suppressed warnings: |
23 | 23 |
# C4250: 'class1' : inherits 'class2::member' via dominance |
24 | 24 |
# C4355: 'this' : used in base member initializer list |
25 | 25 |
# C4800: 'type' : forcing value to bool 'true' or 'false' (performance warning) |
26 | 26 |
# C4996: 'function': was declared deprecated |
27 | 27 |
ENDIF(MSVC) |
28 | 28 |
|
29 | 29 |
INCLUDE(CheckTypeSize) |
30 | 30 |
CHECK_TYPE_SIZE("long long" LEMON_LONG_LONG) |
31 | 31 |
|
32 | 32 |
ENABLE_TESTING() |
33 | 33 |
|
34 | 34 |
ADD_SUBDIRECTORY(lemon) |
35 | 35 |
IF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR}) |
36 | 36 |
ADD_SUBDIRECTORY(demo) |
37 | 37 |
ADD_SUBDIRECTORY(tools) |
38 | 38 |
ADD_SUBDIRECTORY(doc) |
39 | 39 |
ADD_SUBDIRECTORY(test) |
40 | 40 |
ENDIF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR}) |
41 | 41 |
|
42 | 42 |
IF(${CMAKE_SOURCE_DIR} STREQUAL ${PROJECT_SOURCE_DIR}) |
43 | 43 |
IF(WIN32) |
44 | 44 |
SET(CPACK_PACKAGE_NAME ${PROJECT_NAME}) |
45 | 45 |
SET(CPACK_PACKAGE_VENDOR "EGRES") |
46 | 46 |
SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY |
47 |
"LEMON - Library |
|
47 |
"LEMON - Library for Efficient Modeling and Optimization in Networks") |
|
48 | 48 |
SET(CPACK_RESOURCE_FILE_LICENSE "${PROJECT_SOURCE_DIR}/LICENSE") |
49 | 49 |
|
50 | 50 |
SET(CPACK_PACKAGE_VERSION ${PROJECT_VERSION}) |
51 | 51 |
|
52 | 52 |
SET(CPACK_PACKAGE_INSTALL_DIRECTORY |
53 | 53 |
"${PROJECT_NAME} ${PROJECT_VERSION}") |
54 | 54 |
SET(CPACK_PACKAGE_INSTALL_REGISTRY_KEY |
55 | 55 |
"${PROJECT_NAME} ${PROJECT_VERSION}") |
56 | 56 |
|
57 | 57 |
SET(CPACK_COMPONENTS_ALL headers library html_documentation bin) |
58 | 58 |
|
59 | 59 |
SET(CPACK_COMPONENT_HEADERS_DISPLAY_NAME "C++ headers") |
60 | 60 |
SET(CPACK_COMPONENT_LIBRARY_DISPLAY_NAME "Dynamic-link library") |
61 | 61 |
SET(CPACK_COMPONENT_BIN_DISPLAY_NAME "Command line utilities") |
62 | 62 |
SET(CPACK_COMPONENT_HTML_DOCUMENTATION_DISPLAY_NAME "HTML documentation") |
63 | 63 |
|
64 | 64 |
SET(CPACK_COMPONENT_HEADERS_DESCRIPTION |
65 | 65 |
"C++ header files") |
66 | 66 |
SET(CPACK_COMPONENT_LIBRARY_DESCRIPTION |
67 | 67 |
"DLL and import library") |
68 | 68 |
SET(CPACK_COMPONENT_BIN_DESCRIPTION |
69 | 69 |
"Command line utilities") |
70 | 70 |
SET(CPACK_COMPONENT_HTML_DOCUMENTATION_DESCRIPTION |
71 | 71 |
"Doxygen generated documentation") |
72 | 72 |
|
73 | 73 |
SET(CPACK_COMPONENT_HEADERS_DEPENDS library) |
74 | 74 |
|
75 | 75 |
SET(CPACK_COMPONENT_HEADERS_GROUP "Development") |
76 | 76 |
SET(CPACK_COMPONENT_LIBRARY_GROUP "Development") |
77 | 77 |
SET(CPACK_COMPONENT_HTML_DOCUMENTATION_GROUP "Documentation") |
78 | 78 |
|
79 | 79 |
SET(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION |
80 | 80 |
"Components needed to develop software using LEMON") |
81 | 81 |
SET(CPACK_COMPONENT_GROUP_DOCUMENTATION_DESCRIPTION |
82 | 82 |
"Documentation of LEMON") |
83 | 83 |
|
84 | 84 |
SET(CPACK_ALL_INSTALL_TYPES Full Developer) |
85 | 85 |
|
86 | 86 |
SET(CPACK_COMPONENT_HEADERS_INSTALL_TYPES Developer Full) |
87 | 87 |
SET(CPACK_COMPONENT_LIBRARY_INSTALL_TYPES Developer Full) |
88 | 88 |
SET(CPACK_COMPONENT_HTML_DOCUMENTATION_INSTALL_TYPES Full) |
89 | 89 |
|
90 | 90 |
SET(CPACK_GENERATOR "NSIS") |
91 | 91 |
SET(CPACK_NSIS_MUI_ICON "${PROJECT_SOURCE_DIR}/cmake/nsis/lemon.ico") |
92 | 92 |
SET(CPACK_NSIS_MUI_UNIICON "${PROJECT_SOURCE_DIR}/cmake/nsis/uninstall.ico") |
93 | 93 |
#SET(CPACK_PACKAGE_ICON "${PROJECT_SOURCE_DIR}/cmake/nsis\\\\installer.bmp") |
94 | 94 |
SET(CPACK_NSIS_INSTALLED_ICON_NAME "bin\\\\lemon.ico") |
95 | 95 |
SET(CPACK_NSIS_DISPLAY_NAME "${CPACK_PACKAGE_INSTALL_DIRECTORY} ${PROJECT_NAME}") |
1 |
================================================================== |
|
2 |
LEMON - a Library of Efficient Models and Optimization in Networks |
|
3 |
================================================================== |
|
1 |
===================================================================== |
|
2 |
LEMON - a Library for Efficient Modeling and Optimization in Networks |
|
3 |
===================================================================== |
|
4 | 4 |
|
5 | 5 |
LEMON is an open source library written in C++. It provides |
6 | 6 |
easy-to-use implementations of common data structures and algorithms |
7 | 7 |
in the area of optimization and helps implementing new ones. The main |
8 | 8 |
focus is on graphs and graph algorithms, thus it is especially |
9 | 9 |
suitable for solving design and optimization problems of |
10 | 10 |
telecommunication networks. To achieve wide usability its data |
11 | 11 |
structures and algorithms provide generic interfaces. |
12 | 12 |
|
13 | 13 |
Contents |
14 | 14 |
======== |
15 | 15 |
|
16 | 16 |
LICENSE |
17 | 17 |
|
18 | 18 |
Copying, distribution and modification conditions and terms. |
19 | 19 |
|
20 | 20 |
INSTALL |
21 | 21 |
|
22 | 22 |
General building and installation instructions. |
23 | 23 |
|
24 | 24 |
lemon/ |
25 | 25 |
|
26 | 26 |
Source code of LEMON library. |
27 | 27 |
|
28 | 28 |
doc/ |
29 | 29 |
|
30 | 30 |
Documentation of LEMON. The starting page is doc/html/index.html. |
31 | 31 |
|
32 | 32 |
demo/ |
33 | 33 |
|
34 | 34 |
Some example programs to make you easier to get familiar with LEMON. |
35 | 35 |
|
36 | 36 |
test/ |
37 | 37 |
|
38 | 38 |
Programs to check the integrity and correctness of LEMON. |
39 | 39 |
|
40 | 40 |
tools/ |
41 | 41 |
|
42 | 42 |
Various utilities related to LEMON. |
1 | 1 |
/* -*- mode: C++; indent-tabs-mode: nil; -*- |
2 | 2 |
* |
3 | 3 |
* This file is a part of LEMON, a generic C++ optimization library. |
4 | 4 |
* |
5 | 5 |
* Copyright (C) 2003-2009 |
6 | 6 |
* Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport |
7 | 7 |
* (Egervary Research Group on Combinatorial Optimization, EGRES). |
8 | 8 |
* |
9 | 9 |
* Permission to use, modify and distribute this software is granted |
10 | 10 |
* provided that this copyright notice appears in all copies. For |
11 | 11 |
* precise terms see the accompanying LICENSE file. |
12 | 12 |
* |
13 | 13 |
* This software is provided "AS IS" with no warranty of any kind, |
14 | 14 |
* express or implied, and with no claim as to its suitability for any |
15 | 15 |
* purpose. |
16 | 16 |
* |
17 | 17 |
*/ |
18 | 18 |
|
19 | 19 |
/** |
20 | 20 |
\mainpage LEMON Documentation |
21 | 21 |
|
22 | 22 |
\section intro Introduction |
23 | 23 |
|
24 | 24 |
\subsection whatis What is LEMON |
25 | 25 |
|
26 |
LEMON stands for |
|
27 |
<b>L</b>ibrary of <b>E</b>fficient <b>M</b>odels |
|
26 |
LEMON stands for <b>L</b>ibrary for <b>E</b>fficient <b>M</b>odeling |
|
28 | 27 |
and <b>O</b>ptimization in <b>N</b>etworks. |
29 | 28 |
It is a C++ template |
30 | 29 |
library aimed at combinatorial optimization tasks which |
31 | 30 |
often involve in working |
32 | 31 |
with graphs. |
33 | 32 |
|
34 | 33 |
<b> |
35 | 34 |
LEMON is an <a class="el" href="http://opensource.org/">open source</a> |
36 | 35 |
project. |
37 | 36 |
You are free to use it in your commercial or |
38 | 37 |
non-commercial applications under very permissive |
39 | 38 |
\ref license "license terms". |
40 | 39 |
</b> |
41 | 40 |
|
42 | 41 |
\subsection howtoread How to read the documentation |
43 | 42 |
|
44 | 43 |
If you would like to get to know the library, see |
45 | 44 |
<a class="el" href="http://lemon.cs.elte.hu/pub/tutorial/">LEMON Tutorial</a>. |
46 | 45 |
|
47 | 46 |
If you know what you are looking for, then try to find it under the |
48 | 47 |
<a class="el" href="modules.html">Modules</a> section. |
49 | 48 |
|
50 | 49 |
If you are a user of the old (0.x) series of LEMON, please check out the |
51 | 50 |
\ref migration "Migration Guide" for the backward incompatibilities. |
52 | 51 |
*/ |
1 | 1 |
prefix=@prefix@ |
2 | 2 |
exec_prefix=@exec_prefix@ |
3 | 3 |
libdir=@libdir@ |
4 | 4 |
includedir=@includedir@ |
5 | 5 |
|
6 | 6 |
Name: @PACKAGE_NAME@ |
7 |
Description: Library |
|
7 |
Description: Library for Efficient Modeling and Optimization in Networks |
|
8 | 8 |
Version: @PACKAGE_VERSION@ |
9 | 9 |
Libs: -L${libdir} -lemon @GLPK_LIBS@ @CPLEX_LIBS@ @SOPLEX_LIBS@ @CLP_LIBS@ @CBC_LIBS@ |
10 | 10 |
Cflags: -I${includedir} |
0 comments (0 inline)