-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix setuptools bootstrapping now that dependencies are no longer vend…
…ored (#3198) * Fix setuptools bootstrapping now that dependencies are no longer vendored * Reorder patch and comments * Use exact same patch as ActiveState/appdirs#84 * Use exact same patch as https://sourceforge.net/p/pyparsing/patches/10/
- Loading branch information
1 parent
1a3a751
commit 5572eed
Showing
7 changed files
with
154 additions
and
4 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 PyAppdirs(PythonPackage): | ||
"""A small Python module for determining appropriate platform-specific | ||
dirs, e.g. a "user data dir".""" | ||
|
||
homepage = "https://github.com/ActiveState/appdirs" | ||
url = "https://pypi.io/packages/source/a/appdirs/appdirs-1.4.0.tar.gz" | ||
|
||
version('1.4.0', '1d17b4c9694ab84794e228f28dc3275b') | ||
|
||
patch('setuptools-import.patch', when='@:1.4.0') | ||
|
||
# Newer versions of setuptools require appdirs. Although setuptools is an | ||
# optional dependency of appdirs, if it is not found, setup.py will | ||
# fallback on distutils.core instead. Don't add a setuptools dependency | ||
# or we won't be able to bootstrap setuptools. | ||
|
||
# depends_on('py-setuptools', type='build') |
17 changes: 17 additions & 0 deletions
17
var/spack/repos/builtin/packages/py-appdirs/setuptools-import.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
diff --git a/setup.py b/setup.py | ||
index ccd1e72..5d907aa 100644 | ||
--- a/setup.py | ||
+++ b/setup.py | ||
@@ -2,7 +2,12 @@ | ||
import sys | ||
import os | ||
import os.path | ||
-from setuptools import setup | ||
+# appdirs is a dependency of setuptools, so allow installing without it. | ||
+try: | ||
+ from setuptools import setup | ||
+except ImportError: | ||
+ from distutils.core import setup | ||
import appdirs | ||
|
||
tests_require = [] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -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 PyPackaging(PythonPackage): | ||
"""Core utilities for Python packages.""" | ||
|
||
homepage = "https://github.com/pypa/packaging" | ||
url = "https://pypi.io/packages/source/p/packaging/packaging-16.8.tar.gz" | ||
|
||
version('16.8', '53895cdca04ecff80b54128e475b5d3b') | ||
|
||
# Not needed for the installation, but used at runtime | ||
depends_on('py-six', type='run') | ||
depends_on('py-pyparsing', type='run') | ||
|
||
# Newer versions of setuptools require packaging. Although setuptools is an | ||
# optional dependency of packaging, if it is not found, setup.py will | ||
# fallback on distutils.core instead. Don't add a setuptools dependency | ||
# or we won't be able to bootstrap setuptools. | ||
|
||
# depends_on('py-setuptools', type='build') |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
20 changes: 20 additions & 0 deletions
20
var/spack/repos/builtin/packages/py-pyparsing/setuptools-import.patch
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
diff --git a/setup.py b/setup.py | ||
index 82061c6..ff342af 100644 | ||
--- a/setup.py | ||
+++ b/setup.py | ||
@@ -1,7 +1,13 @@ | ||
#!/usr/bin/env python | ||
|
||
"""Setup script for the pyparsing module distribution.""" | ||
-from setuptools import setup | ||
+ | ||
+# Setuptools depends on pyparsing (via packaging) as of version 34, so allow | ||
+# installing without it to avoid bootstrap problems. | ||
+try: | ||
+ from setuptools import setup | ||
+except ImportError: | ||
+ from distutils.core import setup | ||
|
||
import sys | ||
import os | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters