Merge branch 'eschnett/sympol' of git://github.com/eschnett/spack into eschnett-eschnett/sympol

This commit is contained in:
Todd Gamblin 2016-08-24 14:05:05 -07:00
commit a7e568b1d1
14 changed files with 680 additions and 0 deletions

View File

@ -0,0 +1,62 @@
--- old/Makefile.spack
+++ new/Makefile.spack
@@ -0,0 +1,59 @@
+# Set PREFIX to the install location for both building and installing
+# Set GMP_PREFIX to the location where GMP is installed
+
+SRCS = \
+ bliss_C.cc \
+ defs.cc \
+ graph.cc \
+ heap.cc \
+ orbit.cc \
+ partition.cc \
+ timer.cc \
+ uintseqhash.cc \
+ utils.cc
+
+all: libbliss.la bliss libbliss_gmp.la bliss_gmp
+
+libbliss.la: $(SRCS:%.cc=%.lo)
+ libtool --mode=link --tag=CXX c++ -g -O3 \
+ -rpath $(PREFIX)/lib -o $@ $^
+libbliss_gmp.la: $(SRCS:%.cc=%.gmp.lo)
+ libtool --mode=link --tag=CXX c++ -g -O3 \
+ -rpath $(PREFIX)/lib -o $@ $^ -L$(GMP_PREFIX)/lib -lgmp
+
+bliss: bliss.lo libbliss.la
+ libtool --mode=link --tag=CXX c++ -g -O3 -o $@ $^
+
+bliss_gmp: bliss.gmp.lo libbliss_gmp.la
+ libtool --mode=link --tag=CXX c++ -g -O3 -o $@ $^
+
+%.lo: %.cc
+ libtool --mode=compile --tag=CXX c++ -g -O3 -o $@ -c $*.cc
+%.gmp.lo: %.cc
+ libtool --mode=compile --tag=CXX c++ -g -O3 -o $@ \
+ -c -DBLISS_USE_GMP $*.cc
+
+install:
+ mkdir -p $(PREFIX)/bin
+ mkdir -p $(PREFIX)/include/bliss
+ mkdir -p $(PREFIX)/lib
+ libtool --mode=install cp bliss $(PREFIX)/bin/bliss
+ libtool --mode=install cp bliss_gmp $(PREFIX)/bin/bliss_gmp
+ libtool --mode=install cp bignum.hh $(PREFIX)/include/bliss/bignum.hh
+ libtool --mode=install cp bliss_C.h $(PREFIX)/include/bliss/bliss_C.h
+ libtool --mode=install cp defs.hh $(PREFIX)/include/bliss/defs.hh
+ libtool --mode=install cp graph.hh $(PREFIX)/include/bliss/graph.hh
+ libtool --mode=install cp heap.hh $(PREFIX)/include/bliss/heap.hh
+ libtool --mode=install cp kqueue.hh $(PREFIX)/include/bliss/kqueue.hh
+ libtool --mode=install cp kstack.hh $(PREFIX)/include/bliss/kstack.hh
+ libtool --mode=install cp orbit.hh $(PREFIX)/include/bliss/orbit.hh
+ libtool --mode=install cp partition.hh \
+ $(PREFIX)/include/bliss/partition.hh
+ libtool --mode=install cp timer.hh $(PREFIX)/include/bliss/timer.hh
+ libtool --mode=install cp uintseqhash.hh \
+ $(PREFIX)/include/bliss/uintseqhash.hh
+ libtool --mode=install cp utils.hh $(PREFIX)/include/bliss/utils.hh
+ libtool --mode=install cp libbliss.la $(PREFIX)/lib/libbliss.la
+ libtool --mode=install cp libbliss_gmp.la $(PREFIX)/lib/libbliss_gmp.la
+
+.PHONY: all install

View File

@ -0,0 +1,50 @@
##############################################################################
# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
# For details, see https://github.com/llnl/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
# published by the Free Software Foundation) version 2.1, February 1999.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
# conditions of the GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
class Bliss(Package):
"""bliss: A Tool for Computing Automorphism Groups and Canonical
Labelings of Graphs"""
homepage = "http://www.tcs.hut.fi/Software/bliss/"
url = "http://www.tcs.hut.fi/Software/bliss/bliss-0.73.zip"
version('0.73', '72f2e310786923b5c398ba0fc40b42ce')
# Note: Bliss can also be built without gmp, but we don't support this yet
depends_on("gmp")
depends_on("libtool", type='build')
patch("Makefile.spack.patch")
def install(self, spec, prefix):
# The Makefile isn't portable; use our own instead
makeargs = ["-f", "Makefile.spack",
"PREFIX=%s" % prefix, "GMP_PREFIX=%s" % spec["gmp"].prefix]
make(*makeargs)
make("install", *makeargs)

View File

@ -0,0 +1,22 @@
--- old/Makefile.spack
+++ new/Makefile.spack
@@ -0,0 +1,19 @@
+# Set PREFIX to the install location for both building and installing
+
+all: cdd dplex_test
+
+cdd: cdd.lo cddio.lo cddarith.lo dplex.lo setoper.lo
+ libtool --mode=link --tag=CC cc -g -O2 -o $@ $^
+
+dplex_test: dplex.lo dplex_test.lo setoper.lo
+ libtool --mode=link --tag=CC cc -g -O2 -o $@ $^
+
+%.lo: %.c
+ libtool --mode=compile --tag=CC cc -g -O2 -c $*.c
+
+install:
+ mkdir -p $(PREFIX)/bin
+ libtool --mode=install cp cdd $(PREFIX)/bin/cdd
+ libtool --mode=install cp dplex_test $(PREFIX)/bin/dplex_test
+
+.PHONY: all install

View File

@ -0,0 +1,52 @@
##############################################################################
# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
# For details, see https://github.com/llnl/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
# published by the Free Software Foundation) version 2.1, February 1999.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
# conditions of the GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
class Cdd(Package):
"""The program cdd+ (cdd, respectively) is a C++ (ANSI C)
implementation of the Double Description Method [MRTT53] for
generating all vertices (i.e. extreme points) and extreme rays of
a general convex polyhedron given by a system of linear
inequalities"""
homepage = "https://www.inf.ethz.ch/personal/fukudak/cdd_home/cdd.html"
url = "ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cdd-061a.tar.gz"
def url_for_version(self, version):
return ("ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cdd-%s.tar.gz" %
str(version.dotted()).replace('.', ''))
version('0.61a', '22c24a7a9349dd7ec0e24531925a02d9')
depends_on("libtool", type="build")
patch("Makefile.spack.patch")
def install(self, spec, prefix):
# The Makefile isn't portable; use our own instead
makeargs = ["-f", "Makefile.spack", "PREFIX=%s" % prefix]
make(*makeargs)
make("install", *makeargs)

View File

@ -0,0 +1,58 @@
##############################################################################
# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
# For details, see https://github.com/llnl/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
# published by the Free Software Foundation) version 2.1, February 1999.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
# conditions of the GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
class Cddlib(Package):
"""The C-library cddlib is a C implementation of the Double Description
Method of Motzkin et al. for generating all vertices (i.e. extreme points)
and extreme rays of a general convex polyhedron in R^d given by a system
of linear inequalities"""
homepage = "https://www.inf.ethz.ch/personal/fukudak/cdd_home/"
# This is the original download url. It is currently down [2016-08-23],
# but should be reinstated or updated once the issue is resolved.
# url = "ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cddlib-094h.tar.gz"
url = "http://pkgs.fedoraproject.org/lookaside/pkgs/cddlib/cddlib-094h.tar.gz/1467d270860bbcb26d3ebae424690e7c/cddlib-094h.tar.gz"
def url_for_version(self, version):
# Since the commit id is part of the version, we can't
# auto-generate the string, and we need to explicitly list all
# known versions here. Currently, there is only one version.
if str(version) == '0.94h':
return "http://pkgs.fedoraproject.org/lookaside/pkgs/cddlib/cddlib-094h.tar.gz/1467d270860bbcb26d3ebae424690e7c/cddlib-094h.tar.gz"
raise InstallError("Unsupported version %s" % str(version))
version('0.94h', '1467d270860bbcb26d3ebae424690e7c')
# Note: It should be possible to build cddlib also without gmp
depends_on("gmp")
depends_on("libtool", type="build")
def install(self, spec, prefix):
configure("--prefix=%s" % prefix)
make()
make("install")

View File

@ -0,0 +1,60 @@
--- old/Makefile.spack
+++ new/Makefile.spack
@@ -0,0 +1,57 @@
+# Set PREFIX to the install location for both building and installing
+# Set BOOST_PREFIX to the location where BOOST is installed
+# Set GMP_PREFIX to the location where GMP is installed
+
+all: liblrsgmp.la \
+ 2nash fourier lrs lrs1 lrsnash redund redund1 setnash setnash2
+
+liblrsgmp.la: lrslib-GMP.lo lrsgmp-GMP.lo
+ libtool --mode=link --tag=CC cc -g -O3 \
+ -rpath $(PREFIX)/lib -o $@ $^ \
+ -L$(GMP_PREFIX)/lib -lgmp
+
+lrs1: lrs-LONG.lo lrslib-LONG.lo lrslong-LONG.lo
+ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^
+redund1: redund-LONG.lo lrslib-LONG.lo lrslong-LONG.lo
+ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^
+lrs: lrs-GMP.lo lrslib-GMP.lo lrsmp-GMP.lo liblrsgmp.la
+ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^
+redund: redund-GMP.lo lrslib-GMP.lo lrsmp-GMP.lo liblrsgmp.la
+ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^
+fourier: fourier-GMP.lo lrslib-GMP.lo lrsgmp-GMP.lo liblrsgmp.la
+ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^
+lrsnash: lrsnash-GMP.lo lrsnashlib-GMP.lo lrslib-GMP.lo lrsmp-GMP.lo \
+ liblrsgmp.la
+ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^
+2nash: 2nash.lo
+ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^
+setnash: setupnash.lo lrslib.lo lrsmp.lo
+ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^
+setnash2: setupnash2.lo lrslib.lo lrsmp.lo
+ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^
+
+%.lo: %.c
+ libtool --mode=compile --tag=CC cc -g -O3 -o $@ -c $*.c
+%-GMP.lo: %.c
+ libtool --mode=compile --tag=CC cc -g -O3 -o $@ -DGMP -c $*.c
+%-LONG.lo: %.c
+ libtool --mode=compile --tag=CC cc -g -O3 -o $@ -DLRSLONG -c $*.c
+
+install:
+ mkdir -p $(PREFIX)/bin
+ mkdir -p $(PREFIX)/include
+ mkdir -p $(PREFIX)/lib
+ libtool --mode=install cp 2nash $(PREFIX)/bin/2nash
+ libtool --mode=install cp fourier $(PREFIX)/bin/fourier
+ libtool --mode=install cp lrs $(PREFIX)/bin/lrs
+ libtool --mode=install cp lrs1 $(PREFIX)/bin/lrs1
+ libtool --mode=install cp lrsnash $(PREFIX)/bin/lrsnash
+ libtool --mode=install cp redund $(PREFIX)/bin/redund
+ libtool --mode=install cp redund1 $(PREFIX)/bin/redund1
+ libtool --mode=install cp setnash $(PREFIX)/bin/setnash
+ libtool --mode=install cp setnash2 $(PREFIX)/bin/setnash2
+ libtool --mode=install cp lrsgmp.h $(PREFIX)/include/lrsgmp.h
+ libtool --mode=install cp lrslib.h $(PREFIX)/include/lrslib.h
+ libtool --mode=install cp liblrsgmp.la $(PREFIX)/lib/liblrsgmp.la
+
+.PHONY: all install

View File

@ -0,0 +1,61 @@
##############################################################################
# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
# For details, see https://github.com/llnl/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
# published by the Free Software Foundation) version 2.1, February 1999.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
# conditions of the GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
class Lrslib(Package):
"""lrslib Ver 6.2 is a self-contained ANSI C implementation of the
reverse search algorithm for vertex enumeration/convex hull
problems and comes with a choice of three arithmetic packages"""
homepage = "http://cgm.cs.mcgill.ca/~avis/C/lrs.html"
url = "http://cgm.cs.mcgill.ca/~avis/C/lrslib/archive/lrslib-062.tar.gz"
def url_for_version(self, version):
return ("http://cgm.cs.mcgill.ca/~avis/C/lrslib/archive/lrslib-%s.tar.gz" %
('0' + str(version).replace('.', '')))
version('6.2', 'be5da7b3b90cc2be628dcade90c5d1b9')
version('6.1', '0b3687c8693cd7d1f234a3f65e147551')
version('6.0', 'd600a2e62969ad03f7ab2f85f1b3709c')
version('5.1', 'cca323eee8bf76f598a13d7bf67cc13d')
version('4.3', '86dd9a45d20a3a0069f77e61be5b46ad')
# Note: lrslib can also be built with Boost, and probably without gmp
# depends_on("boost")
depends_on("gmp")
depends_on("libtool", type="build")
patch("Makefile.spack.patch")
def install(self, spec, prefix):
# The Makefile isn't portable; use our own instead
makeargs = ["-f", "Makefile.spack",
"PREFIX=%s" % prefix,
# "BOOST_PREFIX=%s" % spec["boost"].prefix,
"GMP_PREFIX=%s" % spec["gmp"].prefix]
make(*makeargs)
make("install", *makeargs)

View File

@ -0,0 +1,89 @@
##############################################################################
# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
# For details, see https://github.com/llnl/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
# published by the Free Software Foundation) version 2.1, February 1999.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
# conditions of the GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
import shutil
from spack import *
class Nauty(Package):
"""nauty and Traces are programs for computing automorphism groups of
graphsq and digraphs"""
homepage = "http://pallini.di.uniroma1.it/index.html"
url = "http://pallini.di.uniroma1.it/nauty26r7.tar.gz"
def url_for_version(self, version):
return ("http://pallini.di.uniroma1.it/nauty%s.tar.gz" %
str(version).replace('.', ''))
version('2.6r7', 'b2b18e03ea7698db3fbe06c5d76ad8fe')
version('2.6r5', '91b03a7b069962e94fc9aac8831ce8d2')
version('2.5r9', 'e8ecd08b0892a1fb13329c147f08de6d')
def install(self, spec, prefix):
configure('--prefix=%s' % prefix)
make()
exes = [
"NRswitchg",
"addedgeg",
"amtog",
"biplabg",
"catg",
"complg",
"converseg",
"copyg",
"countg",
"cubhamg",
"deledgeg",
"delptg",
"directg",
"dreadnaut",
"dretodot",
"dretog",
"genbg",
"genbgL",
"geng",
"genquarticg",
"genrang",
"genspecialg",
"gentourng",
"gentreeg",
"hamheuristic",
"labelg",
"linegraphg",
"listg",
"multig",
"newedgeg",
"pickg",
"planarg",
"ranlabg",
"shortg",
"subdivideg",
"twohamg",
"vcolg",
"watercluster2"]
mkdirp(prefix.bin)
for exe in exes:
shutil.copyfile(exe, join_path(prefix.bin, exe))

View File

@ -0,0 +1,45 @@
##############################################################################
# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
# For details, see https://github.com/llnl/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
# published by the Free Software Foundation) version 2.1, February 1999.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
# conditions of the GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
class Panda(Package):
"""PANDA: Parallel AdjaceNcy Decomposition Algorithm"""
homepage = "http://comopt.ifi.uni-heidelberg.de/software/PANDA/index.html"
url = "http://comopt.ifi.uni-heidelberg.de/software/PANDA/downloads/current_panda.tar"
version('current', 'b06dc312ee56e13eefea9c915b70fcef')
# Note: Panda can also be built without MPI support
depends_on("cmake", type="build")
depends_on("mpi")
def install(self, spec, prefix):
with working_dir('spack-build', create=True):
cmake("..", *std_cmake_args)
make()
make("install")

View File

@ -0,0 +1,57 @@
##############################################################################
# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
# For details, see https://github.com/llnl/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
# published by the Free Software Foundation) version 2.1, February 1999.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
# conditions of the GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
class Polymake(Package):
"""polymake is open source software for research in polyhedral geometry"""
homepage = "https://polymake.org/doku.php"
url = "https://polymake.org/lib/exe/fetch.php/download/polymake-3.0r1.tar.bz2"
version('3.0r2', '08584547589f052ea50e2148109202ab')
version('3.0r1', '63ecbecf9697c6826724d8a041d2cac0')
# Note: Could also be built with nauty instead of bliss
depends_on("bliss")
depends_on("boost")
depends_on("cddlib")
depends_on("gmp")
depends_on("lrslib")
depends_on("mpfr")
depends_on("ppl")
def install(self, spec, prefix):
configure("--prefix=%s" % prefix,
"--with-bliss=%s" % spec["bliss"].prefix,
"--with-boost=%s" % spec["boost"].prefix,
"--with-cdd=%s" % spec["cddlib"].prefix,
"--with-gmp=%s" % spec["gmp"].prefix,
"--with-lrs=%s" % spec["lrslib"].prefix,
"--with-mpfr=%s" % spec["mpfr"].prefix,
"--with-ppl=%s" % spec["ppl"].prefix)
make()
make("install")

View File

@ -0,0 +1,23 @@
--- old/src/Makefile.spack
+++ new/src/Makefile.spack
@@ -0,0 +1,20 @@
+# Set PREFIX to the install location for both building and installing
+
+all: valid xporta
+
+valid: common.lo arith.lo inout.lo log.lo valid.lo
+ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^
+
+xporta: common.lo arith.lo inout.lo log.lo \
+ porta.lo four_mot.lo portsort.lo largecalc.lo mp.lo
+ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^
+
+%.lo: %.c
+ libtool --mode=compile --tag=CC cc -g -O3 -c $*.c
+
+install:
+ mkdir -p $(PREFIX)/bin
+ libtool --mode=install cp valid $(PREFIX)/bin/valid
+ libtool --mode=install cp xporta $(PREFIX)/bin/xporta
+
+.PHONY: all install

View File

@ -0,0 +1,44 @@
##############################################################################
# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
# For details, see https://github.com/llnl/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
# published by the Free Software Foundation) version 2.1, February 1999.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
# conditions of the GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
class Porta(Package):
"""PORTA is a collection of routines for analyzing polytopes and
polyhedra"""
homepage = "http://porta.zib.de"
url = "http://porta.zib.de/porta-1.4.1.tgz"
version('1.4.1', '585179bf19d214ed364663a5d17bd5fc')
depends_on("libtool", type="build")
patch("Makefile.spack.patch")
def install(self, spec, prefix):
with working_dir("src"):
make("-f", "Makefile.spack", "PREFIX=%s" % prefix)
make("-f", "Makefile.spack", "PREFIX=%s" % prefix, "install")

View File

@ -0,0 +1,10 @@
--- old/sympol/raycomputationlrs.cpp
+++ new/sympol/raycomputationlrs.cpp
@@ -66,7 +66,6 @@
return true;
}
- lrs_mp_close();
if (RayComputationLRS::ms_fIn != NULL) {
if (std::fclose(RayComputationLRS::ms_fIn)) {

View File

@ -0,0 +1,47 @@
##############################################################################
# Copyright (c) 2013-2016, Lawrence Livermore National Security, LLC.
# Produced at the Lawrence Livermore National Laboratory.
#
# This file is part of Spack.
# Created by Todd Gamblin, tgamblin@llnl.gov, All rights reserved.
# LLNL-CODE-647188
#
# For details, see https://github.com/llnl/spack
# Please also see the LICENSE file for our notice and the LGPL.
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License (as
# published by the Free Software Foundation) version 2.1, February 1999.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the IMPLIED WARRANTY OF
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the terms and
# conditions of the GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
##############################################################################
from spack import *
class Sympol(Package):
"""SymPol is a C++ tool to work with symmetric polyhedra"""
homepage = "http://www.math.uni-rostock.de/~rehn/software/sympol.html"
url = "http://www.math.uni-rostock.de/~rehn/software/sympol-0.1.8.tar.gz"
version('0.1.8', '7cba1997f8532c754cb7259bf70caacb')
depends_on("bliss")
depends_on("boost")
depends_on("cmake")
depends_on("gmp")
depends_on("lrslib")
patch("lrs_mp_close.patch")
def install(self, spec, prefix):
cmake(".", *std_cmake_args)
make()
make("install")