diff options
author | adam <adam@pkgsrc.org> | 2007-01-04 22:38:49 +0000 |
---|---|---|
committer | adam <adam@pkgsrc.org> | 2007-01-04 22:38:49 +0000 |
commit | 7f6d84b51a5a7070f65e1c77097a647405a6d69f (patch) | |
tree | 4b98b19dd06bfbe24f28185b197b67af5bc6d889 | |
parent | 95366fb54393e8556b762b6339b8b05dfe3687c8 (diff) | |
download | pkgsrc-7f6d84b51a5a7070f65e1c77097a647405a6d69f.tar.gz |
Changes 4.13:
A tentative implementation of the "exact" simplex method based
on bignum (rational) arithmetic was included in the package.
On API level this new feature is available through the routine
lpx_exact, which is similar to the routine lpx_simplex.
In the solver glpsol this feature is available through two new
command-line options: --exact and --xcheck. If the '--exact'
option is specified, glpsol solves LP instance using the exact
simplex method; in case of MIP it is used to obtain optimal
solution of LP relaxation. If the --xcheck option is specified,
LP instance (or LP relaxation) is solved using the standard
(floating-point) simplex method, however, then glpsol calls the
exact simplex routine to make sure that the final LP basis is
exactly optimal, and if it is not, to perform some additional
simplex iterations in exact arithmetic.
Changes 4.12:
A tentative implementation of some simplex method routines
based on exact (bignum) arithmetic was included in the package.
Currently these routines provide computing LU-factorization of
the basis matrix and computing components of basic solution.
These routines were used to implement a routine, which checks
primal and dual feasibility of basic solution exactly, i.e. in
rational numbers, without round-off errors. In glpsol this
feature is available through the command-line option --xcheck.
GLPK has its own low-level routines implementing operations on
integer and rational numbers that makes it independent on other
software packages. However, to attain a much better performance
it is highly recommended to install (before configuring GLPK)
the GNU Multiple Precision Arithmetic Library (GMP). Using GMP
makes computations 100-200 times faster.
-rw-r--r-- | math/glpk/Makefile | 5 | ||||
-rw-r--r-- | math/glpk/PLIST | 7 | ||||
-rw-r--r-- | math/glpk/buildlink3.mk | 4 | ||||
-rw-r--r-- | math/glpk/distinfo | 10 | ||||
-rw-r--r-- | math/glpk/patches/patch-aa | 14 |
5 files changed, 24 insertions, 16 deletions
diff --git a/math/glpk/Makefile b/math/glpk/Makefile index 653dd5e495b..c29adb2cddf 100644 --- a/math/glpk/Makefile +++ b/math/glpk/Makefile @@ -1,6 +1,6 @@ -# $NetBSD: Makefile,v 1.11 2006/05/23 10:17:20 adam Exp $ +# $NetBSD: Makefile,v 1.12 2007/01/04 22:38:49 adam Exp $ -DISTNAME= glpk-4.10 +DISTNAME= glpk-4.13 CATEGORIES= math MASTER_SITES= ftp://ftp.gnu.org/gnu/glpk/ @@ -12,4 +12,5 @@ USE_LIBTOOL= yes USE_TOOLS+= gmake GNU_CONFIGURE= yes +.include "../../devel/gmp/buildlink3.mk" .include "../../mk/bsd.pkg.mk" diff --git a/math/glpk/PLIST b/math/glpk/PLIST index 14b3a53d5c3..97e7cb5c830 100644 --- a/math/glpk/PLIST +++ b/math/glpk/PLIST @@ -1,9 +1,12 @@ -@comment $NetBSD: PLIST,v 1.6 2006/05/23 10:17:20 adam Exp $ +@comment $NetBSD: PLIST,v 1.7 2007/01/04 22:38:49 adam Exp $ bin/glpsol bin/tspsol include/glpavl.h include/glpbfi.h +include/glpbfx.h +include/glpcfg.h include/glpdmp.h +include/glpgmp.h include/glphbm.h include/glpiet.h include/glpinv.h @@ -15,12 +18,14 @@ include/glplib.h include/glplpp.h include/glplpx.h include/glpluf.h +include/glplux.h include/glpmat.h include/glpmip.h include/glpmpl.h include/glpqmd.h include/glprng.h include/glpspx.h +include/glpssx.h include/glpstr.h include/glptsp.h lib/libglpk.la diff --git a/math/glpk/buildlink3.mk b/math/glpk/buildlink3.mk index 5b2ce855069..35c0a5db0da 100644 --- a/math/glpk/buildlink3.mk +++ b/math/glpk/buildlink3.mk @@ -1,4 +1,4 @@ -# $NetBSD: buildlink3.mk,v 1.7 2006/07/08 23:10:59 jlam Exp $ +# $NetBSD: buildlink3.mk,v 1.8 2007/01/04 22:38:49 adam Exp $ BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+ GLPK_BUILDLINK3_MK:= ${GLPK_BUILDLINK3_MK}+ @@ -17,4 +17,6 @@ BUILDLINK_ABI_DEPENDS.glpk+= glpk>=4.9nb1 BUILDLINK_PKGSRCDIR.glpk?= ../../math/glpk .endif # GLPK_BUILDLINK3_MK +.include "../../devel/gmp/buildlink3.mk" + BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH:S/+$//} diff --git a/math/glpk/distinfo b/math/glpk/distinfo index cd2d9dd6535..96d7d9785bd 100644 --- a/math/glpk/distinfo +++ b/math/glpk/distinfo @@ -1,7 +1,7 @@ -$NetBSD: distinfo,v 1.8 2006/05/23 10:17:20 adam Exp $ +$NetBSD: distinfo,v 1.9 2007/01/04 22:38:49 adam Exp $ -SHA1 (glpk-4.10.tar.gz) = 2451c7efad659e2ba67ae57db463be1e0725300a -RMD160 (glpk-4.10.tar.gz) = aff1ba99e10f9b3d77eedfab819478b892b38220 -Size (glpk-4.10.tar.gz) = 1034733 bytes -SHA1 (patch-aa) = 232213abc53bc4bdf829c3af9bdbd7bcaeea1098 +SHA1 (glpk-4.13.tar.gz) = 954c673a2c71b868b5ec589d6456d9a8085d570f +RMD160 (glpk-4.13.tar.gz) = 2d0590466b24471c3c14bdc7e13eb09d0c9de252 +Size (glpk-4.13.tar.gz) = 1082072 bytes +SHA1 (patch-aa) = 17f22688f1047cc87509e7598e34f610acd5f99f SHA1 (patch-ab) = a4b382b3d27dee710fb3127bf141a7c429662ab3 diff --git a/math/glpk/patches/patch-aa b/math/glpk/patches/patch-aa index d5f77382c3c..85d0105c78c 100644 --- a/math/glpk/patches/patch-aa +++ b/math/glpk/patches/patch-aa @@ -1,6 +1,6 @@ -$NetBSD: patch-aa,v 1.3 2006/05/23 10:17:20 adam Exp $ +$NetBSD: patch-aa,v 1.4 2007/01/04 22:38:49 adam Exp $ ---- src/Makefile.in.orig 2006-05-11 10:00:00.000000000 +0200 +--- src/Makefile.in.orig 2006-11-13 10:00:00.000000000 +0100 +++ src/Makefile.in @@ -65,7 +65,7 @@ VERSION = @VERSION@ @@ -9,10 +9,10 @@ $NetBSD: patch-aa,v 1.3 2006/05/23 10:17:20 adam Exp $ -lib_LIBRARIES = libglpk.a +lib_LIBRARIES = libglpk.la - libglpk_a_SOURCES = glpavl.c glpbfi.c glpdmp.c glphbm.c glpiet.c glpinv.c glpios1.c glpios2.c glpios3.c glpipm.c glpipp1.c glpipp2.c glplib1a.c glplib1b.c glplib2.c glplib3.c glplib4.c glplpp1.c glplpp2.c glplpx1.c glplpx2.c glplpx3.c glplpx4.c glplpx5.c glplpx6a.c glplpx6b.c glplpx6c.c glplpx6d.c glplpx7.c glplpx7a.c glplpx7b.c glplpx8a.c glplpx8b.c glplpx8c.c glplpx8d.c glplpx8e.c glpluf.c glpmat.c glpmip1.c glpmip2.c glpmpl1.c glpmpl2.c glpmpl3.c glpmpl4.c glpqmd.c glprng.c glpspx1.c glpspx2.c glpstr.c glptsp.c + libglpk_a_SOURCES = glpavl.c glpbfi.c glpbfx.c glpdmp.c glpgmp.c glphbm.c glpiet.c glpinv.c glpinv1.c glpios1.c glpios2.c glpios3.c glpipm.c glpipp1.c glpipp2.c glplib1a.c glplib1b.c glplib2.c glplib3.c glplib4.c glplpp1.c glplpp2.c glplpx1.c glplpx2.c glplpx3.c glplpx4.c glplpx5.c glplpx6a.c glplpx6b.c glplpx6c.c glplpx6d.c glplpx6e.c glplpx7.c glplpx7a.c glplpx7b.c glplpx8a.c glplpx8b.c glplpx8c.c glplpx8d.c glplpx8e.c glpluf.c glpluf1.c glplux.c glpmat.c glpmip1.c glpmip2.c glpmpl1.c glpmpl2.c glpmpl3.c glpmpl4.c glpqmd.c glprng.c glpspx1.c glpspx2.c glpssx1.c glpssx2.c glpstr.c glptsp.c -@@ -89,9 +89,9 @@ glpmip2.o glpmpl1.o glpmpl2.o glpmpl3.o - glpspx1.o glpspx2.o glpstr.o glptsp.o +@@ -90,9 +90,9 @@ glpmip2.o glpmpl1.o glpmpl2.o glpmpl3.o + glpspx1.o glpspx2.o glpssx1.o glpssx2.o glpstr.o glptsp.o AR = ar CFLAGS = @CFLAGS@ -COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) @@ -23,7 +23,7 @@ $NetBSD: patch-aa,v 1.3 2006/05/23 10:17:20 adam Exp $ DIST_COMMON = Makefile.am Makefile.in -@@ -140,15 +140,7 @@ install-libLIBRARIES: $(lib_LIBRARIES) +@@ -143,15 +143,7 @@ install-libLIBRARIES: $(lib_LIBRARIES) $(mkinstalldirs) $(DESTDIR)$(libdir) @list='$(lib_LIBRARIES)'; for p in $$list; do \ if test -f $$p; then \ @@ -40,7 +40,7 @@ $NetBSD: patch-aa,v 1.3 2006/05/23 10:17:20 adam Exp $ else :; fi; \ done -@@ -174,10 +166,9 @@ distclean-compile: +@@ -177,10 +169,9 @@ distclean-compile: maintainer-clean-compile: |