51 lines
2.4 KiB
Python
51 lines
2.4 KiB
Python
# Copyright 2013-2023 Lawrence Livermore National Security, LLC and other
|
|
# Spack Project Developers. See the top-level COPYRIGHT file for details.
|
|
#
|
|
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
|
|
|
import os
|
|
|
|
from spack.package import *
|
|
|
|
|
|
class PyDocutils(PythonPackage):
|
|
"""Docutils is an open-source text processing system for processing
|
|
plaintext documentation into useful formats, such as HTML, LaTeX,
|
|
man-pages, open-document or XML. It includes reStructuredText, the
|
|
easy to read, easy to use, what-you-see-is-what-you-get plaintext
|
|
markup language."""
|
|
|
|
homepage = "http://docutils.sourceforge.net/"
|
|
pypi = "docutils/docutils-0.15.2.tar.gz"
|
|
|
|
version("0.20.1", sha256="f08a4e276c3a1583a86dce3e34aba3fe04d02bba2dd51ed16106244e8a923e3b")
|
|
version("0.19", sha256="33995a6753c30b7f577febfc2c50411fec6aac7f7ffeb7c4cfe5991072dcf9e6")
|
|
version("0.18.1", sha256="679987caf361a7539d76e584cbeddc311e3aee937877c87346f31debc63e9d06")
|
|
version("0.18", sha256="c1d5dab2b11d16397406a282e53953fe495a46d69ae329f55aa98a5c4e3c5fbb")
|
|
version("0.17.1", sha256="686577d2e4c32380bb50cbb22f575ed742d58168cee37e99117a854bcd88f125")
|
|
version("0.17", sha256="e2ffeea817964356ba4470efba7c2f42b6b0de0b04e66378507e3e2504bbff4c")
|
|
version("0.16", sha256="c2de3a60e9e7d07be26b7f2b00ca0309c207e06c100f9cc2a94931fc75a478fc")
|
|
version("0.15.2", sha256="a2aeea129088da402665e92e0b25b04b073c04b2dce4ab65caaa38b7ce2e1a99")
|
|
version("0.14", sha256="51e64ef2ebfb29cae1faa133b3710143496eca21c530f3f71424d77687764274")
|
|
version("0.13.1", sha256="718c0f5fb677be0f34b781e04241c4067cbd9327b66bdd8e763201130f5175be")
|
|
version("0.12", sha256="c7db717810ab6965f66c8cf0398a98c9d8df982da39b4cd7f162911eb89596fa")
|
|
|
|
depends_on("python@3.7:", when="@0.19:", type=("build", "run"))
|
|
depends_on("py-setuptools", type="build")
|
|
|
|
# Uses 2to3
|
|
depends_on("py-setuptools@:57", when="@:0.15", type="build")
|
|
|
|
# Includes "longintrepr.h" instead of Python.h
|
|
conflicts("^python@3.11:", when="@:0.15")
|
|
|
|
# NOTE: This creates symbolic links to be able to run docutils scripts
|
|
# without .py file extension similarly to various linux distributions to
|
|
# increase compatibility with other packages
|
|
@run_after("install")
|
|
def post_install(self):
|
|
bin_path = self.prefix.bin
|
|
for file in os.listdir(bin_path):
|
|
if file.endswith(".py"):
|
|
os.symlink(os.path.join(bin_path, file), os.path.join(bin_path, file[:-3]))
|