scripts/mk-release.sh
author Peter Kovacs <kpeter@inf.elte.hu>
Fri, 13 Nov 2009 00:10:33 +0100
changeset 815 aef153f430e1
parent 564 eda12d8ac953
permissions -rwxr-xr-x
Entirely rework cycle canceling algorithms (#180)

- Move the cycle canceling algorithms (CycleCanceling, CancelAndTighten)
into one class (CycleCanceling).
- Add a Method parameter to the run() function to be able to select
the used cycle canceling method.
- Use the new interface similarly to NetworkSimplex.
- Rework the implementations using an efficient internal structure
for handling the residual network.
This improvement made the codes much faster.
- Handle GEQ supply type (LEQ is not supported).
- Handle infinite upper bounds.
- Handle negative costs (for arcs of finite upper bound).
- Extend the documentation.
alpar@508
     1
#!/bin/bash
alpar@733
     2
#
alpar@733
     3
# This file is a part of LEMON, a generic C++ optimization library.
alpar@733
     4
#
alpar@733
     5
# Copyright (C) 2003-2009
alpar@733
     6
# Egervary Jeno Kombinatorikus Optimalizalasi Kutatocsoport
alpar@733
     7
# (Egervary Research Group on Combinatorial Optimization, EGRES).
alpar@733
     8
#
alpar@733
     9
# Permission to use, modify and distribute this software is granted
alpar@733
    10
# provided that this copyright notice appears in all copies. For
alpar@733
    11
# precise terms see the accompanying LICENSE file.
alpar@733
    12
#
alpar@733
    13
# This software is provided "AS IS" with no warranty of any kind,
alpar@733
    14
# express or implied, and with no claim as to its suitability for any
alpar@733
    15
# purpose.
alpar@508
    16
alpar@508
    17
set -e
alpar@508
    18
alpar@508
    19
if [ $# = 0 ]; then
alpar@508
    20
    echo "Usage: $0 release-id"
alpar@508
    21
    exit 1
alpar@508
    22
else
alpar@508
    23
    export LEMON_VERSION=$1
alpar@508
    24
fi
alpar@508
    25
alpar@508
    26
echo '*****************************************************************'
alpar@508
    27
echo ' Start making release tarballs for version '${LEMON_VERSION}
alpar@508
    28
echo '*****************************************************************'
alpar@508
    29
alpar@508
    30
autoreconf -vif
ladanyi@564
    31
./configure
alpar@508
    32
alpar@508
    33
make
alpar@508
    34
make html
alpar@508
    35
make distcheck
alpar@508
    36
tar xf lemon-${LEMON_VERSION}.tar.gz
alpar@508
    37
zip -r lemon-${LEMON_VERSION}.zip lemon-${LEMON_VERSION}
alpar@508
    38
mv lemon-${LEMON_VERSION}/doc/html lemon-doc-${LEMON_VERSION}
alpar@508
    39
tar czf lemon-doc-${LEMON_VERSION}.tar.gz lemon-doc-${LEMON_VERSION}
alpar@508
    40
zip -r lemon-doc-${LEMON_VERSION}.zip lemon-doc-${LEMON_VERSION}
alpar@508
    41
tar czf lemon-nodoc-${LEMON_VERSION}.tar.gz lemon-${LEMON_VERSION}
alpar@508
    42
zip -r lemon-nodoc-${LEMON_VERSION}.zip lemon-${LEMON_VERSION}
alpar@508
    43
hg tag -m 'LEMON '${LEMON_VERSION}' released ('$(hg par --template="{node|short}")' tagged as r'${LEMON_VERSION}')' r${LEMON_VERSION}
alpar@508
    44
alpar@508
    45
rm -rf lemon-${LEMON_VERSION} lemon-doc-${LEMON_VERSION}
alpar@508
    46
alpar@508
    47
echo '*****************************************************************'
alpar@508
    48
echo '  Release '${LEMON_VERSION}' has been created' 
alpar@508
    49
echo '*****************************************************************'