From a07056d67b71b7857e32fae2cb19a62a70ded7be Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Sat, 18 Jun 2016 16:20:37 -0400 Subject: Add Bliss package --- .../builtin/packages/bliss/Makefile.spack.patch | 38 +++++++++++++++++ var/spack/repos/builtin/packages/bliss/package.py | 48 ++++++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 var/spack/repos/builtin/packages/bliss/Makefile.spack.patch create mode 100644 var/spack/repos/builtin/packages/bliss/package.py (limited to 'var') diff --git a/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch b/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch new file mode 100644 index 0000000000..39a3a63b41 --- /dev/null +++ b/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch @@ -0,0 +1,38 @@ +--- old/Makefile.spack ++++ new/Makefile.spack +@@ -0,0 +1,35 @@ ++# 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 ++ ++OBJS = $(SRCS:%.cc=%.lo) ++ ++all: libbliss_gmp.la bliss_gmp ++ ++libbliss_gmp.la: $(OBJS) ++ libtool --mode=link --tag=CXX c++ -g -O2 \ ++ -rpath $(PREFIX)/lib -o $@ $^ -L$(GMP_PREFIX)/lib -lgmp ++ ++bliss_gmp: bliss.lo libbliss_gmp.la ++ libtool --mode=link --tag=CXX c++ -g -O2 -o $@ $^ ++ ++%.lo: %.cc ++ libtool --mode=compile --tag=CXX c++ -g -O2 -DBLISS_USE_GMP -c $*.cc ++ ++install: ++ mkdir -p $(PREFIX)/bin ++ mkdir -p $(PREFIX)/lib ++ libtool --mode=install cp bliss_gmp $(PREFIX)/bin/bliss_gmp ++ libtool --mode=install cp libbliss_gmp.la $(PREFIX)/lib/libbliss_gmp.la ++ ++.PHONY: all install diff --git a/var/spack/repos/builtin/packages/bliss/package.py b/var/spack/repos/builtin/packages/bliss/package.py new file mode 100644 index 0000000000..87e9424bcf --- /dev/null +++ b/var/spack/repos/builtin/packages/bliss/package.py @@ -0,0 +1,48 @@ +############################################################################## +# 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" + + # Note: Bliss can also be built without gmp, but we don't support this yet + + depends_on("gmp") + depends_on("libtool") + + version('0.73', '72f2e310786923b5c398ba0fc40b42ce') + + 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) -- cgit v1.2.3-60-g2f50 From 83d4cdc0909e94f5b0a5cfaf472a9d8abc698bf7 Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Sat, 18 Jun 2016 16:36:43 -0400 Subject: Update Bliss --- var/spack/repos/builtin/packages/bliss/package.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/bliss/package.py b/var/spack/repos/builtin/packages/bliss/package.py index 87e9424bcf..16029ac012 100644 --- a/var/spack/repos/builtin/packages/bliss/package.py +++ b/var/spack/repos/builtin/packages/bliss/package.py @@ -26,18 +26,19 @@ from spack import * class Bliss(Package): - """bliss: A Tool for Computing Automorphism Groups and Canonical Labelings of Graphs""" + """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") - version('0.73', '72f2e310786923b5c398ba0fc40b42ce') - patch("Makefile.spack.patch") def install(self, spec, prefix): -- cgit v1.2.3-60-g2f50 From 64aaf7ba81b19fefe319b5ca2e77bad8eeff9afe Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Sat, 18 Jun 2016 16:37:08 -0400 Subject: New package cdd --- .../builtin/packages/cdd/Makefile.spack.patch | 22 ++++++++++ var/spack/repos/builtin/packages/cdd/package.py | 47 ++++++++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 var/spack/repos/builtin/packages/cdd/Makefile.spack.patch create mode 100644 var/spack/repos/builtin/packages/cdd/package.py (limited to 'var') diff --git a/var/spack/repos/builtin/packages/cdd/Makefile.spack.patch b/var/spack/repos/builtin/packages/cdd/Makefile.spack.patch new file mode 100644 index 0000000000..4c97187a57 --- /dev/null +++ b/var/spack/repos/builtin/packages/cdd/Makefile.spack.patch @@ -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 diff --git a/var/spack/repos/builtin/packages/cdd/package.py b/var/spack/repos/builtin/packages/cdd/package.py new file mode 100644 index 0000000000..f48af165fa --- /dev/null +++ b/var/spack/repos/builtin/packages/cdd/package.py @@ -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 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" + + version('061a', '22c24a7a9349dd7ec0e24531925a02d9') + + depends_on("libtool") + + 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) -- cgit v1.2.3-60-g2f50 From 92a7c0ddd5166a9b94aec1f3682c503ba0a4d9de Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Sat, 18 Jun 2016 18:02:52 -0400 Subject: Update Bliss to use -O3 --- var/spack/repos/builtin/packages/bliss/Makefile.spack.patch | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch b/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch index 39a3a63b41..af2386d6cb 100644 --- a/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch +++ b/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch @@ -20,14 +20,14 @@ +all: libbliss_gmp.la bliss_gmp + +libbliss_gmp.la: $(OBJS) -+ libtool --mode=link --tag=CXX c++ -g -O2 \ ++ libtool --mode=link --tag=CXX c++ -g -O3 \ + -rpath $(PREFIX)/lib -o $@ $^ -L$(GMP_PREFIX)/lib -lgmp + +bliss_gmp: bliss.lo libbliss_gmp.la -+ libtool --mode=link --tag=CXX c++ -g -O2 -o $@ $^ ++ libtool --mode=link --tag=CXX c++ -g -O3 -o $@ $^ + +%.lo: %.cc -+ libtool --mode=compile --tag=CXX c++ -g -O2 -DBLISS_USE_GMP -c $*.cc ++ libtool --mode=compile --tag=CXX c++ -g -O3 -DBLISS_USE_GMP -c $*.cc + +install: + mkdir -p $(PREFIX)/bin -- cgit v1.2.3-60-g2f50 From a5086f474e9ca546692acd06ce9e49bf1c9cea26 Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Sat, 18 Jun 2016 18:03:09 -0400 Subject: New package lrslib --- .../builtin/packages/lrslib/Makefile.spack.patch | 58 ++++++++++++++++++++++ var/spack/repos/builtin/packages/lrslib/package.py | 56 +++++++++++++++++++++ 2 files changed, 114 insertions(+) create mode 100644 var/spack/repos/builtin/packages/lrslib/Makefile.spack.patch create mode 100644 var/spack/repos/builtin/packages/lrslib/package.py (limited to 'var') diff --git a/var/spack/repos/builtin/packages/lrslib/Makefile.spack.patch b/var/spack/repos/builtin/packages/lrslib/Makefile.spack.patch new file mode 100644 index 0000000000..2a76316fe2 --- /dev/null +++ b/var/spack/repos/builtin/packages/lrslib/Makefile.spack.patch @@ -0,0 +1,58 @@ +--- old/Makefile.spack ++++ new/Makefile.spack +@@ -0,0 +1,55 @@ ++# 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 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 $@ $^ ++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 $@ $^ ++lrs: lrs.lo lrslib.lo lrsmp.lo ++ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^ \ ++ -L$(GMP_PREFIX)/lib -lgmp ++redund: redund.lo lrslib.lo lrsmp.lo ++ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^ \ ++ -L$(GMP_PREFIX)/lib -lgmp ++lrsnash: lrsnash.lo lrsnashlib.lo lrslib.lo lrsmp.lo ++ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^ \ ++ -L$(GMP_PREFIX)/lib -lgmp ++2nash: 2nash.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 ++%-SIGNALS.lo: %.c ++ libtool --mode=compile --tag=CC cc -g -O3 -o $@ \ ++ -DTIMES -DSIGNALS -c $*.c ++ ++install: ++ mkdir -p $(PREFIX)/bin ++ mkdir -p $(PREFIX)/lib ++ libtool --mode=install cp 2nash $(PREFIX)/bin/2nash ++ 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 liblrsgmp.la $(PREFIX)/lib/liblrsgmp.la ++ ++.PHONY: all install diff --git a/var/spack/repos/builtin/packages/lrslib/package.py b/var/spack/repos/builtin/packages/lrslib/package.py new file mode 100644 index 0000000000..9f02d7c979 --- /dev/null +++ b/var/spack/repos/builtin/packages/lrslib/package.py @@ -0,0 +1,56 @@ +############################################################################## +# 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" + + version('062', 'be5da7b3b90cc2be628dcade90c5d1b9') + version('061', '0b3687c8693cd7d1f234a3f65e147551') + version('060', 'd600a2e62969ad03f7ab2f85f1b3709c') + version('051', 'cca323eee8bf76f598a13d7bf67cc13d') + version('043', '86dd9a45d20a3a0069f77e61be5b46ad') + + # Note: lrslib can also be built with Boost, and probably without gmp + + # depends_on("boost") + depends_on("gmp") + depends_on("libtool") + + 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) -- cgit v1.2.3-60-g2f50 From 2009354719f5f8c7bd13a927cd325482ece5458b Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Sat, 18 Jun 2016 21:38:15 -0400 Subject: Add fourier tool to lrslib --- .../builtin/packages/lrslib/Makefile.spack.patch | 31 +++++++++++----------- 1 file changed, 15 insertions(+), 16 deletions(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/lrslib/Makefile.spack.patch b/var/spack/repos/builtin/packages/lrslib/Makefile.spack.patch index 2a76316fe2..afa1c1af13 100644 --- a/var/spack/repos/builtin/packages/lrslib/Makefile.spack.patch +++ b/var/spack/repos/builtin/packages/lrslib/Makefile.spack.patch @@ -1,11 +1,12 @@ --- old/Makefile.spack +++ new/Makefile.spack -@@ -0,0 +1,55 @@ +@@ -0,0 +1,54 @@ +# 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 lrs lrs1 lrsnash redund redund1 setnash setnash2 ++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 \ @@ -16,21 +17,21 @@ + 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 $@ $^ -+setnash: setupnash.lo lrslib.lo lrsmp.lo ++lrs: lrs-GMP.lo lrslib-GMP.lo lrsmp-GMP.lo liblrsgmp.la + libtool --mode=link --tag=CC cc -g -O3 -o $@ $^ -+setnash2: setupnash2.lo lrslib.lo lrsmp.lo ++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 $@ $^ -+lrs: lrs.lo lrslib.lo lrsmp.lo -+ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^ \ -+ -L$(GMP_PREFIX)/lib -lgmp -+redund: redund.lo lrslib.lo lrsmp.lo -+ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^ \ -+ -L$(GMP_PREFIX)/lib -lgmp -+lrsnash: lrsnash.lo lrsnashlib.lo lrslib.lo lrsmp.lo -+ libtool --mode=link --tag=CC cc -g -O3 -o $@ $^ \ -+ -L$(GMP_PREFIX)/lib -lgmp +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 @@ -38,14 +39,12 @@ + 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 -+%-SIGNALS.lo: %.c -+ libtool --mode=compile --tag=CC cc -g -O3 -o $@ \ -+ -DTIMES -DSIGNALS -c $*.c + +install: + mkdir -p $(PREFIX)/bin + 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 -- cgit v1.2.3-60-g2f50 From e5b08544ff6506cc6d0352d9c4c1ca7441720bad Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Sat, 18 Jun 2016 22:02:36 -0400 Subject: New package Panda --- var/spack/repos/builtin/packages/panda/package.py | 44 +++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 var/spack/repos/builtin/packages/panda/package.py (limited to 'var') diff --git a/var/spack/repos/builtin/packages/panda/package.py b/var/spack/repos/builtin/packages/panda/package.py new file mode 100644 index 0000000000..ecfe5e1170 --- /dev/null +++ b/var/spack/repos/builtin/packages/panda/package.py @@ -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 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('panda', 'b06dc312ee56e13eefea9c915b70fcef') + + # Note: Panda can also be built without MPI support + + depends_on("cmake") + depends_on("mpi") + + def install(self, spec, prefix): + with working_dir('spack-build', create=True): + cmake("..", *std_cmake_args) + make() + make("install") -- cgit v1.2.3-60-g2f50 From 8fa8fc239f2afb1f3bd4a22b98f3cc3cbeedf80a Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Sat, 18 Jun 2016 22:22:58 -0400 Subject: New package "nauty and Traces" --- var/spack/repos/builtin/packages/nauty/package.py | 83 +++++++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 var/spack/repos/builtin/packages/nauty/package.py (limited to 'var') diff --git a/var/spack/repos/builtin/packages/nauty/package.py b/var/spack/repos/builtin/packages/nauty/package.py new file mode 100644 index 0000000000..564855e453 --- /dev/null +++ b/var/spack/repos/builtin/packages/nauty/package.py @@ -0,0 +1,83 @@ +############################################################################## +# 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/nauty26r5.tar.gz" + + version('26r5', '91b03a7b069962e94fc9aac8831ce8d2') + version('25r9', '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)) -- cgit v1.2.3-60-g2f50 From 71e92774ebef0194beaa6a56fa2129fed3df70b1 Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Sat, 18 Jun 2016 22:47:59 -0400 Subject: New package cddlib --- var/spack/repos/builtin/packages/cddlib/package.py | 46 ++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 var/spack/repos/builtin/packages/cddlib/package.py (limited to 'var') diff --git a/var/spack/repos/builtin/packages/cddlib/package.py b/var/spack/repos/builtin/packages/cddlib/package.py new file mode 100644 index 0000000000..bec3030e25 --- /dev/null +++ b/var/spack/repos/builtin/packages/cddlib/package.py @@ -0,0 +1,46 @@ +############################################################################## +# 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/" + url = "ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cddlib-094h.tar.gz" + + version('094h', '1467d270860bbcb26d3ebae424690e7c') + + # Note: It should be possible to build cddlib also without gmp + + depends_on("gmp") + depends_on("libtool") + + def install(self, spec, prefix): + configure("--prefix=%s" % prefix) + make() + make("install") -- cgit v1.2.3-60-g2f50 From d8b9cda632d7a39c580bc7c5bb7f7fea44044f85 Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Sun, 19 Jun 2016 12:48:47 -0400 Subject: Build Bliss both with and without GMP --- .../builtin/packages/bliss/Makefile.spack.patch | 27 ++++++++++++++++------ 1 file changed, 20 insertions(+), 7 deletions(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch b/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch index af2386d6cb..19e65ed82b 100644 --- a/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch +++ b/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch @@ -1,6 +1,6 @@ --- old/Makefile.spack +++ new/Makefile.spack -@@ -0,0 +1,35 @@ +@@ -0,0 +1,48 @@ +# Set PREFIX to the install location for both building and installing +# Set GMP_PREFIX to the location where GMP is installed + @@ -15,24 +15,37 @@ + uintseqhash.cc \ + utils.cc + -+OBJS = $(SRCS:%.cc=%.lo) ++all: libbliss.la bliss libbliss_gmp.la bliss_gmp + -+all: libbliss_gmp.la bliss_gmp -+ -+libbliss_gmp.la: $(OBJS) ++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_gmp: bliss.lo libbliss_gmp.la ++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 -DBLISS_USE_GMP -c $*.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 + 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 bliss_C.h $(PREFIX)/include/bliss_C.h ++ libtool --mode=install cp graph.hh $(PREFIX)/include/graph.hh ++ libtool --mode=install cp utils.hh $(PREFIX)/include/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 -- cgit v1.2.3-60-g2f50 From fa471a4ed1a4f03099db5d7e5ed7b1a3894dcf2e Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Sun, 19 Jun 2016 13:46:38 -0400 Subject: Add missing header files to Bliss install --- .../builtin/packages/bliss/Makefile.spack.patch | 23 ++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch b/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch index 19e65ed82b..4f4441bbe9 100644 --- a/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch +++ b/var/spack/repos/builtin/packages/bliss/Makefile.spack.patch @@ -1,6 +1,6 @@ --- old/Makefile.spack +++ new/Makefile.spack -@@ -0,0 +1,48 @@ +@@ -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 + @@ -33,18 +33,29 @@ +%.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 $@ \ ++ libtool --mode=compile --tag=CXX c++ -g -O3 -o $@ \ + -c -DBLISS_USE_GMP $*.cc + +install: + mkdir -p $(PREFIX)/bin -+ mkdir -p $(PREFIX)/include ++ 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 bliss_C.h $(PREFIX)/include/bliss_C.h -+ libtool --mode=install cp graph.hh $(PREFIX)/include/graph.hh -+ libtool --mode=install cp utils.hh $(PREFIX)/include/utils.hh ++ 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 + -- cgit v1.2.3-60-g2f50 From b4da4425ff5b4b1cc064d5ef42a47f4c8db7cee1 Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Sun, 19 Jun 2016 13:47:02 -0400 Subject: Add header files to lrslib install --- var/spack/repos/builtin/packages/lrslib/Makefile.spack.patch | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/lrslib/Makefile.spack.patch b/var/spack/repos/builtin/packages/lrslib/Makefile.spack.patch index afa1c1af13..d4d5e66528 100644 --- a/var/spack/repos/builtin/packages/lrslib/Makefile.spack.patch +++ b/var/spack/repos/builtin/packages/lrslib/Makefile.spack.patch @@ -1,6 +1,6 @@ --- old/Makefile.spack +++ new/Makefile.spack -@@ -0,0 +1,54 @@ +@@ -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 @@ -42,6 +42,7 @@ + +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 @@ -52,6 +53,8 @@ + 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 -- cgit v1.2.3-60-g2f50 From a0c0728ea86b21505c9880ee63054cc3696b974b Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Sun, 19 Jun 2016 13:47:26 -0400 Subject: New package polymake --- .../repos/builtin/packages/polymake/package.py | 55 ++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 var/spack/repos/builtin/packages/polymake/package.py (limited to 'var') diff --git a/var/spack/repos/builtin/packages/polymake/package.py b/var/spack/repos/builtin/packages/polymake/package.py new file mode 100644 index 0000000000..a5c2c053ab --- /dev/null +++ b/var/spack/repos/builtin/packages/polymake/package.py @@ -0,0 +1,55 @@ +############################################################################## +# 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.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") -- cgit v1.2.3-60-g2f50 From e43eaad5570009622bf0b19b2a9df2f7e70f8f3e Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Sun, 19 Jun 2016 14:11:36 -0400 Subject: New package porta --- .../builtin/packages/porta/Makefile.spack.patch | 23 ++++++++++++ var/spack/repos/builtin/packages/porta/package.py | 43 ++++++++++++++++++++++ 2 files changed, 66 insertions(+) create mode 100644 var/spack/repos/builtin/packages/porta/Makefile.spack.patch create mode 100644 var/spack/repos/builtin/packages/porta/package.py (limited to 'var') diff --git a/var/spack/repos/builtin/packages/porta/Makefile.spack.patch b/var/spack/repos/builtin/packages/porta/Makefile.spack.patch new file mode 100644 index 0000000000..1cd8fcc3c0 --- /dev/null +++ b/var/spack/repos/builtin/packages/porta/Makefile.spack.patch @@ -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 diff --git a/var/spack/repos/builtin/packages/porta/package.py b/var/spack/repos/builtin/packages/porta/package.py new file mode 100644 index 0000000000..a11a8d477c --- /dev/null +++ b/var/spack/repos/builtin/packages/porta/package.py @@ -0,0 +1,43 @@ +############################################################################## +# 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") + + 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") -- cgit v1.2.3-60-g2f50 From bdc825fc3c779b7c15785ca8fadc342c4a3d2cef Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Tue, 23 Aug 2016 09:59:56 -0400 Subject: cddlib: Point download url to a (more reliable) Fedora server --- var/spack/repos/builtin/packages/cddlib/package.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/cddlib/package.py b/var/spack/repos/builtin/packages/cddlib/package.py index bec3030e25..3d32f5961f 100644 --- a/var/spack/repos/builtin/packages/cddlib/package.py +++ b/var/spack/repos/builtin/packages/cddlib/package.py @@ -31,7 +31,8 @@ class Cddlib(Package): 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/" - url = "ftp://ftp.ifor.math.ethz.ch/pub/fukuda/cdd/cddlib-094h.tar.gz" + # 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" version('094h', '1467d270860bbcb26d3ebae424690e7c') -- cgit v1.2.3-60-g2f50 From a2692e4ef5039cac02d9814d70ed53b3d015e738 Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Tue, 23 Aug 2016 10:41:08 -0400 Subject: sympol: Add package --- .../builtin/packages/sympol/lrs_mp_close.patch | 10 +++++ var/spack/repos/builtin/packages/sympol/package.py | 46 ++++++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 var/spack/repos/builtin/packages/sympol/lrs_mp_close.patch create mode 100644 var/spack/repos/builtin/packages/sympol/package.py (limited to 'var') diff --git a/var/spack/repos/builtin/packages/sympol/lrs_mp_close.patch b/var/spack/repos/builtin/packages/sympol/lrs_mp_close.patch new file mode 100644 index 0000000000..503a61ff65 --- /dev/null +++ b/var/spack/repos/builtin/packages/sympol/lrs_mp_close.patch @@ -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)) { diff --git a/var/spack/repos/builtin/packages/sympol/package.py b/var/spack/repos/builtin/packages/sympol/package.py new file mode 100644 index 0000000000..22cadb137b --- /dev/null +++ b/var/spack/repos/builtin/packages/sympol/package.py @@ -0,0 +1,46 @@ +############################################################################## +# 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") -- cgit v1.2.3-60-g2f50 From 73cae8d9c4c568f50fee2829d87b31c0361ce792 Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Tue, 23 Aug 2016 13:52:28 -0400 Subject: Implement review requests - use two empty lines before `class` - change version numbering scheme for packages, use `url_for_version` to make things work - specify dependency types - add comment about temporarily moved download location - update two packages to newer versions --- var/spack/repos/builtin/packages/bliss/package.py | 3 ++- var/spack/repos/builtin/packages/cdd/package.py | 9 +++++++-- var/spack/repos/builtin/packages/cddlib/package.py | 17 ++++++++++++++--- var/spack/repos/builtin/packages/lrslib/package.py | 16 ++++++++++------ var/spack/repos/builtin/packages/nauty/package.py | 12 +++++++++--- var/spack/repos/builtin/packages/panda/package.py | 5 +++-- var/spack/repos/builtin/packages/polymake/package.py | 2 ++ var/spack/repos/builtin/packages/porta/package.py | 3 ++- var/spack/repos/builtin/packages/sympol/package.py | 1 + 9 files changed, 50 insertions(+), 18 deletions(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/bliss/package.py b/var/spack/repos/builtin/packages/bliss/package.py index 16029ac012..a81a806807 100644 --- a/var/spack/repos/builtin/packages/bliss/package.py +++ b/var/spack/repos/builtin/packages/bliss/package.py @@ -25,6 +25,7 @@ from spack import * + class Bliss(Package): """bliss: A Tool for Computing Automorphism Groups and Canonical Labelings of Graphs""" @@ -37,7 +38,7 @@ class Bliss(Package): # Note: Bliss can also be built without gmp, but we don't support this yet depends_on("gmp") - depends_on("libtool") + depends_on("libtool", type='build') patch("Makefile.spack.patch") diff --git a/var/spack/repos/builtin/packages/cdd/package.py b/var/spack/repos/builtin/packages/cdd/package.py index f48af165fa..8896942bae 100644 --- a/var/spack/repos/builtin/packages/cdd/package.py +++ b/var/spack/repos/builtin/packages/cdd/package.py @@ -25,6 +25,7 @@ from spack import * + class Cdd(Package): """The program cdd+ (cdd, respectively) is a C++ (ANSI C) implementation of the Double Description Method [MRTT53] for @@ -34,9 +35,13 @@ class Cdd(Package): 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" - version('061a', '22c24a7a9349dd7ec0e24531925a02d9') + 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") + depends_on("libtool", type="build") patch("Makefile.spack.patch") diff --git a/var/spack/repos/builtin/packages/cddlib/package.py b/var/spack/repos/builtin/packages/cddlib/package.py index 3d32f5961f..7454c0bb84 100644 --- a/var/spack/repos/builtin/packages/cddlib/package.py +++ b/var/spack/repos/builtin/packages/cddlib/package.py @@ -25,21 +25,32 @@ from spack import * + class Cddlib(Package): - """The C-library cddlib is a C implementation of the Double Description + """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" - version('094h', '1467d270860bbcb26d3ebae424690e7c') + 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") + depends_on("libtool", type="build") def install(self, spec, prefix): configure("--prefix=%s" % prefix) diff --git a/var/spack/repos/builtin/packages/lrslib/package.py b/var/spack/repos/builtin/packages/lrslib/package.py index 9f02d7c979..b56333541f 100644 --- a/var/spack/repos/builtin/packages/lrslib/package.py +++ b/var/spack/repos/builtin/packages/lrslib/package.py @@ -25,24 +25,28 @@ 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('062', 'be5da7b3b90cc2be628dcade90c5d1b9') - version('061', '0b3687c8693cd7d1f234a3f65e147551') - version('060', 'd600a2e62969ad03f7ab2f85f1b3709c') - version('051', 'cca323eee8bf76f598a13d7bf67cc13d') - version('043', '86dd9a45d20a3a0069f77e61be5b46ad') + 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") + depends_on("libtool", type="build") patch("Makefile.spack.patch") diff --git a/var/spack/repos/builtin/packages/nauty/package.py b/var/spack/repos/builtin/packages/nauty/package.py index 564855e453..167edfe896 100644 --- a/var/spack/repos/builtin/packages/nauty/package.py +++ b/var/spack/repos/builtin/packages/nauty/package.py @@ -26,14 +26,20 @@ 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/nauty26r5.tar.gz" + 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('26r5', '91b03a7b069962e94fc9aac8831ce8d2') - version('25r9', 'e8ecd08b0892a1fb13329c147f08de6d') + version('2.6r7', 'b2b18e03ea7698db3fbe06c5d76ad8fe') + version('2.6r5', '91b03a7b069962e94fc9aac8831ce8d2') + version('2.5r9', 'e8ecd08b0892a1fb13329c147f08de6d') def install(self, spec, prefix): configure('--prefix=%s' % prefix) diff --git a/var/spack/repos/builtin/packages/panda/package.py b/var/spack/repos/builtin/packages/panda/package.py index ecfe5e1170..e30c2c869d 100644 --- a/var/spack/repos/builtin/packages/panda/package.py +++ b/var/spack/repos/builtin/packages/panda/package.py @@ -25,16 +25,17 @@ 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('panda', 'b06dc312ee56e13eefea9c915b70fcef') + version('current', 'b06dc312ee56e13eefea9c915b70fcef') # Note: Panda can also be built without MPI support - depends_on("cmake") + depends_on("cmake", type="build") depends_on("mpi") def install(self, spec, prefix): diff --git a/var/spack/repos/builtin/packages/polymake/package.py b/var/spack/repos/builtin/packages/polymake/package.py index a5c2c053ab..c0bb9082ae 100644 --- a/var/spack/repos/builtin/packages/polymake/package.py +++ b/var/spack/repos/builtin/packages/polymake/package.py @@ -25,11 +25,13 @@ 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 diff --git a/var/spack/repos/builtin/packages/porta/package.py b/var/spack/repos/builtin/packages/porta/package.py index a11a8d477c..b620daf78f 100644 --- a/var/spack/repos/builtin/packages/porta/package.py +++ b/var/spack/repos/builtin/packages/porta/package.py @@ -25,6 +25,7 @@ from spack import * + class Porta(Package): """PORTA is a collection of routines for analyzing polytopes and polyhedra""" @@ -33,7 +34,7 @@ class Porta(Package): version('1.4.1', '585179bf19d214ed364663a5d17bd5fc') - depends_on("libtool") + depends_on("libtool", type="build") patch("Makefile.spack.patch") diff --git a/var/spack/repos/builtin/packages/sympol/package.py b/var/spack/repos/builtin/packages/sympol/package.py index 22cadb137b..71ecc0a128 100644 --- a/var/spack/repos/builtin/packages/sympol/package.py +++ b/var/spack/repos/builtin/packages/sympol/package.py @@ -25,6 +25,7 @@ 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" -- cgit v1.2.3-60-g2f50 From 05f5ba4bf9c6fa68427525301e2a42fed76d8682 Mon Sep 17 00:00:00 2001 From: Erik Schnetter Date: Tue, 23 Aug 2016 14:57:29 -0400 Subject: Correct flake8 errors --- var/spack/repos/builtin/packages/cddlib/package.py | 8 ++++---- var/spack/repos/builtin/packages/lrslib/package.py | 1 + 2 files changed, 5 insertions(+), 4 deletions(-) (limited to 'var') diff --git a/var/spack/repos/builtin/packages/cddlib/package.py b/var/spack/repos/builtin/packages/cddlib/package.py index 7454c0bb84..ced5f46d1f 100644 --- a/var/spack/repos/builtin/packages/cddlib/package.py +++ b/var/spack/repos/builtin/packages/cddlib/package.py @@ -27,15 +27,15 @@ from spack import * class Cddlib(Package): - """The C-library cddlib is a C implementation of the Double Description + """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 + 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" + # 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 diff --git a/var/spack/repos/builtin/packages/lrslib/package.py b/var/spack/repos/builtin/packages/lrslib/package.py index b56333541f..68a907ea59 100644 --- a/var/spack/repos/builtin/packages/lrslib/package.py +++ b/var/spack/repos/builtin/packages/lrslib/package.py @@ -32,6 +32,7 @@ class Lrslib(Package): 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('.', ''))) -- cgit v1.2.3-60-g2f50