add man-db package and friends (#4844)
* add man-db package and friends * fix groff, libpipeline, and man-db dependencies * remove parallel groff altogether, build-only deps
This commit is contained in:
parent
6d2092e1eb
commit
61238baf56
5 changed files with 212 additions and 0 deletions
39
var/spack/repos/builtin/packages/check/package.py
Normal file
39
var/spack/repos/builtin/packages/check/package.py
Normal file
|
@ -0,0 +1,39 @@
|
|||
##############################################################################
|
||||
# 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 Check(AutotoolsPackage):
|
||||
"""Check is a unit testing framework for C. It features a simple interface
|
||||
for defining unit tests, putting little in the way of the developer. Tests
|
||||
are run in a separate address space, so both assertion failures and code
|
||||
errors that cause segmentation faults or other signals can be caught. Test
|
||||
results are reportable in the following: Subunit, TAP, XML, and a generic
|
||||
logging format."""
|
||||
|
||||
homepage = "https://libcheck.github.io/check/index.html"
|
||||
url = "https://downloads.sourceforge.net/project/check/check/0.10.0/check-0.10.0.tar.gz"
|
||||
|
||||
version('0.10.0', '53c5e5c77d090e103a17f3ed7fd7d8b8')
|
13
var/spack/repos/builtin/packages/groff/gropdf.patch
Normal file
13
var/spack/repos/builtin/packages/groff/gropdf.patch
Normal file
|
@ -0,0 +1,13 @@
|
|||
diff --git a/Makefile.in b/Makefile.in
|
||||
index bc156ce..70c6f85 100644
|
||||
--- a/Makefile.in
|
||||
+++ b/Makefile.in
|
||||
@@ -896,6 +896,8 @@ $(GNULIBDIRS): FORCE
|
||||
$(MAKE) ACLOCAL=: AUTOCONF=: AUTOHEADER=: AUTOMAKE=: $(do) ;; \
|
||||
esac
|
||||
|
||||
+$(SHPROGDIRS): $(PROGDEPDIRS)
|
||||
+
|
||||
$(OTHERDIRS): $(PROGDEPDIRS) $(CCPROGDIRS) $(CPROGDIRS) $(SHPROGDIRS)
|
||||
|
||||
$(INCDIRS) $(PROGDEPDIRS) $(SHPROGDIRS) $(OTHERDIRS): FORCE
|
61
var/spack/repos/builtin/packages/groff/package.py
Normal file
61
var/spack/repos/builtin/packages/groff/package.py
Normal 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 Groff(AutotoolsPackage):
|
||||
"""Groff (GNU troff) is a typesetting system that reads
|
||||
plain text mixed with formatting commands and produces
|
||||
formatted output. Output may be PostScript or PDF, html, or
|
||||
ASCII/UTF8 for display at the terminal."""
|
||||
|
||||
homepage = "https://www.gnu.org/software/groff/"
|
||||
url = "http://ftp.gnu.org/gnu/groff/groff-1.22.3.tar.gz"
|
||||
|
||||
# TODO: add html variant, spack doesn't have netpbm and its too
|
||||
# complicated for me to find out at this point in time.
|
||||
# See brew scripts for groff for guidance:
|
||||
# https://github.com/Homebrew/homebrew-core/blob/master/Formula/groff.rb
|
||||
# Seems troublesome...netpbm requires groff?
|
||||
variant('pdf', default=True, description='Build the `gropdf` executable.')
|
||||
|
||||
depends_on('gawk', type='build')
|
||||
depends_on('gmake', type='build')
|
||||
depends_on('sed', type='build')
|
||||
depends_on('ghostscript', when='+pdf')
|
||||
|
||||
version('1.22.3', 'cc825fa64bc7306a885f2fb2268d3ec5')
|
||||
|
||||
# https://savannah.gnu.org/bugs/index.php?43581
|
||||
# TODO: figure out why this patch does not actually work for parallel
|
||||
# builds reliably.
|
||||
# patch('gropdf.patch')
|
||||
parallel = False
|
||||
|
||||
def configure_args(self):
|
||||
args = [
|
||||
"--without-x"
|
||||
]
|
||||
return args
|
40
var/spack/repos/builtin/packages/libpipeline/package.py
Normal file
40
var/spack/repos/builtin/packages/libpipeline/package.py
Normal file
|
@ -0,0 +1,40 @@
|
|||
##############################################################################
|
||||
# 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 Libpipeline(AutotoolsPackage):
|
||||
"""libpipeline is a C library for manipulating pipelines of subprocesses
|
||||
in a flexible and convenient way."""
|
||||
|
||||
homepage = "http://libpipeline.nongnu.org/"
|
||||
url = "http://git.savannah.nongnu.org/cgit/libpipeline.git/snapshot/libpipeline-1.4.2.tar.gz"
|
||||
|
||||
version('1.4.2', '30cec7bcd6fee723adea6a54389f3da2')
|
||||
|
||||
depends_on('pkg-config', type='build')
|
||||
# TODO: Add a 'test' deptype
|
||||
# See https://github.com/LLNL/spack/issues/1279
|
||||
# depends_on('check', type='test')
|
59
var/spack/repos/builtin/packages/man-db/package.py
Normal file
59
var/spack/repos/builtin/packages/man-db/package.py
Normal file
|
@ -0,0 +1,59 @@
|
|||
##############################################################################
|
||||
# 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 ManDb(AutotoolsPackage):
|
||||
"""man-db is an implementation of the standard Unix
|
||||
documentation system accessed using the man command. It uses
|
||||
a Berkeley DB database in place of the traditional
|
||||
flat-text whatis databases."""
|
||||
|
||||
homepage = "http://www.nongnu.org/man-db/"
|
||||
url = "http://git.savannah.nongnu.org/cgit/man-db.git/snapshot/man-db-2.7.6.1.tar.gz"
|
||||
|
||||
version('2.7.6.1', '312761baade811db2b956af3432c285e')
|
||||
|
||||
depends_on('autoconf')
|
||||
depends_on('automake')
|
||||
depends_on('gettext')
|
||||
depends_on('libpipeline')
|
||||
depends_on('flex')
|
||||
depends_on('groff', type=('build', 'link', 'run'))
|
||||
|
||||
# TODO: add gzip support via a new package.
|
||||
# man pages are typically compressed, include all available
|
||||
# compression libraries
|
||||
depends_on('bzip2', type=('build', 'link', 'run'))
|
||||
depends_on('lzma', type=('build', 'link', 'run'))
|
||||
depends_on('xz', type=('build', 'link', 'run'))
|
||||
|
||||
def configure_args(self):
|
||||
args = [
|
||||
'--disable-setuid',
|
||||
# defaults to a location that needs root privs to write in
|
||||
'--with-systemdtmpfilesdir={0}/tmp'.format(self.prefix)
|
||||
]
|
||||
return args
|
Loading…
Reference in a new issue