Merge branch 'features/memaxes' into develop
Conflicts: var/spack/packages/libpng/package.py
This commit is contained in:
commit
17ac609d23
@ -41,6 +41,7 @@ people:
|
||||
|
||||
* David Beckingsale
|
||||
* David Boehme
|
||||
* Alfredo Gimenez
|
||||
* Luc Jaulmes
|
||||
* Matt Legendre
|
||||
* Greg Lee
|
||||
|
@ -184,6 +184,10 @@ def set_module_variables_for_package(pkg):
|
||||
if platform.mac_ver()[0]:
|
||||
m.std_cmake_args.append('-DCMAKE_FIND_FRAMEWORK=LAST')
|
||||
|
||||
# Set up CMake rpath
|
||||
m.std_cmake_args.append('-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=FALSE')
|
||||
m.std_cmake_args.append('-DCMAKE_INSTALL_RPATH=%s' % ":".join(get_rpaths(pkg)))
|
||||
|
||||
# Emulate some shell commands for convenience
|
||||
m.pwd = os.getcwd
|
||||
m.cd = os.chdir
|
||||
@ -203,6 +207,16 @@ def set_module_variables_for_package(pkg):
|
||||
m.prefix = pkg.prefix
|
||||
|
||||
|
||||
def get_rpaths(pkg):
|
||||
"""Get a list of all the rpaths for a package."""
|
||||
rpaths = [pkg.prefix.lib, pkg.prefix.lib64]
|
||||
rpaths.extend(d.prefix.lib for d in pkg.spec.traverse(root=False)
|
||||
if os.path.isdir(d.prefix.lib))
|
||||
rpaths.extend(d.prefix.lib64 for d in pkg.spec.traverse(root=False)
|
||||
if os.path.isdir(d.prefix.lib64))
|
||||
return rpaths
|
||||
|
||||
|
||||
def setup_package(pkg):
|
||||
"""Execute all environment setup routines."""
|
||||
set_compiler_environment_variables(pkg)
|
||||
|
@ -23,6 +23,7 @@
|
||||
# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
##############################################################################
|
||||
import os
|
||||
import sys
|
||||
from external import argparse
|
||||
|
||||
import llnl.util.tty as tty
|
||||
|
@ -165,8 +165,8 @@ fi
|
||||
#
|
||||
# Set up modules and dotkit search paths in the user environment
|
||||
#
|
||||
_sp_share_dir="$(dirname $_sp_source_file)"
|
||||
_sp_prefix="$(dirname $(dirname $_sp_share_dir))"
|
||||
_sp_share_dir=$(cd "$(dirname $_sp_source_file)" && pwd)
|
||||
_sp_prefix=$(cd "$(dirname $(dirname $_sp_share_dir))" && pwd)
|
||||
|
||||
# TODO: fix SYS_TYPE to something non-LLNL-specific
|
||||
_spack_pathadd DK_NODE "$_sp_share_dir/dotkit/$SYS_TYPE"
|
||||
|
18
var/spack/packages/Mitos/package.py
Normal file
18
var/spack/packages/Mitos/package.py
Normal file
@ -0,0 +1,18 @@
|
||||
from spack import *
|
||||
|
||||
class Mitos(Package):
|
||||
"""Mitos is a library and a tool for collecting sampled memory
|
||||
performance data to view with MemAxes"""
|
||||
|
||||
homepage = "https://github.com/scalability-llnl/Mitos"
|
||||
url = "https://github.com/scalability-llnl/Mitos"
|
||||
|
||||
version('0.7', git='https://github.com/scalability-llnl/Mitos.git', tag='v0.7')
|
||||
|
||||
depends_on('dyninst')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
with working_dir('spack-build', create=True):
|
||||
cmake('..', *std_cmake_args)
|
||||
make()
|
||||
make("install")
|
17
var/spack/packages/bison/package.py
Normal file
17
var/spack/packages/bison/package.py
Normal file
@ -0,0 +1,17 @@
|
||||
from spack import *
|
||||
|
||||
class Bison(Package):
|
||||
"""Bison is a general-purpose parser generator that converts
|
||||
an annotated context-free grammar into a deterministic LR or
|
||||
generalized LR (GLR) parser employing LALR(1) parser tables."""
|
||||
|
||||
homepage = "http://www.gnu.org/software/bison/"
|
||||
url = "http://ftp.gnu.org/gnu/bison/bison-3.0.tar.gz"
|
||||
|
||||
version('3.0.4', 'a586e11cd4aff49c3ff6d3b6a4c9ccf8')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
@ -23,3 +23,7 @@ def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
make()
|
||||
make("install")
|
||||
|
||||
# dbus needs a machine id generated after install
|
||||
dbus_uuidgen = Executable(join_path(prefix.bin, 'dbus-uuidgen'))
|
||||
dbus_uuidgen('--ensure')
|
||||
|
14
var/spack/packages/dri2proto/package.py
Normal file
14
var/spack/packages/dri2proto/package.py
Normal file
@ -0,0 +1,14 @@
|
||||
from spack import *
|
||||
|
||||
class Dri2proto(Package):
|
||||
"""DRI2 Protocol Headers."""
|
||||
homepage = "http://http://cgit.freedesktop.org/xorg/proto/dri2proto/"
|
||||
url = "http://xorg.freedesktop.org/releases/individual/proto/dri2proto-2.8.tar.gz"
|
||||
|
||||
version('2.8', '19ea18f63d8ae8053c9fa84b60365b77')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
15
var/spack/packages/flex/package.py
Normal file
15
var/spack/packages/flex/package.py
Normal file
@ -0,0 +1,15 @@
|
||||
from spack import *
|
||||
|
||||
class Flex(Package):
|
||||
"""Flex is a tool for generating scanners."""
|
||||
|
||||
homepage = "http://flex.sourceforge.net/"
|
||||
url = "http://download.sourceforge.net/flex/flex-2.5.39.tar.gz"
|
||||
|
||||
version('2.5.39', 'e133e9ead8ec0a58d81166b461244fde')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
19
var/spack/packages/gperf/package.py
Normal file
19
var/spack/packages/gperf/package.py
Normal file
@ -0,0 +1,19 @@
|
||||
from spack import *
|
||||
|
||||
class Gperf(Package):
|
||||
"""GNU gperf is a perfect hash function generator. For a given
|
||||
list of strings, it produces a hash function and hash table, in
|
||||
form of C or C++ code, for looking up a value depending on the
|
||||
input string. The hash function is perfect, which means that the
|
||||
hash table has no collisions, and the hash table lookup needs a
|
||||
single string comparison only."""
|
||||
|
||||
homepage = "https://www.gnu.org/software/gperf/"
|
||||
url = "http://ftp.gnu.org/pub/gnu/gperf/gperf-3.0.4.tar.gz"
|
||||
|
||||
version('3.0.4', 'c1f1db32fb6598d6a93e6e88796a8632')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
make()
|
||||
make("install")
|
17
var/spack/packages/icu4c/package.py
Normal file
17
var/spack/packages/icu4c/package.py
Normal file
@ -0,0 +1,17 @@
|
||||
from spack import *
|
||||
|
||||
class Icu4c(Package):
|
||||
"""ICU is a mature, widely used set of C/C++ and Java libraries
|
||||
providing Unicode and Globalization support for software applications."""
|
||||
|
||||
homepage = "http://site.icu-project.org/"
|
||||
url = "http://downloads.sourceforge.net/project/icu/ICU4C/54.1/icu4c-54_1-src.tgz"
|
||||
|
||||
version('54_1', 'e844caed8f2ca24c088505b0d6271bc0')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
cd("source")
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
18
var/spack/packages/libdrm/package.py
Normal file
18
var/spack/packages/libdrm/package.py
Normal file
@ -0,0 +1,18 @@
|
||||
from spack import *
|
||||
|
||||
class Libdrm(Package):
|
||||
"""A userspace library for accessing the DRM, direct
|
||||
rendering manager, on Linux, BSD and other operating
|
||||
systems that support the ioctl interface."""
|
||||
|
||||
homepage = "http://dri.freedesktop.org/libdrm/" # no real website...
|
||||
url = "http://dri.freedesktop.org/libdrm/libdrm-2.4.59.tar.gz"
|
||||
|
||||
version('2.4.59', '105ac7af1afcd742d402ca7b4eb168b6')
|
||||
version('2.4.33', '86e4e3debe7087d5404461e0032231c8')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
@ -5,9 +5,9 @@ class Libpng(Package):
|
||||
homepage = "http://www.libpng.org/pub/png/libpng.html"
|
||||
url = "http://download.sourceforge.net/libpng/libpng-1.6.16.tar.gz"
|
||||
|
||||
version('1.6.14', '2101b3de1d5f348925990f9aa8405660')
|
||||
version('1.6.15', '829a256f3de9307731d4f52dc071916d')
|
||||
version('1.6.16', '1a4ad377919ab15b54f6cb6a3ae2622d')
|
||||
version('1.6.15', '829a256f3de9307731d4f52dc071916d')
|
||||
version('1.6.14', '2101b3de1d5f348925990f9aa8405660')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
21
var/spack/packages/libxcb/package.py
Normal file
21
var/spack/packages/libxcb/package.py
Normal file
@ -0,0 +1,21 @@
|
||||
from spack import *
|
||||
|
||||
class Libxcb(Package):
|
||||
"""The X protocol C-language Binding (XCB) is a replacement
|
||||
for Xlib featuring a small footprint, latency hiding, direct
|
||||
access to the protocol, improved threading support, and
|
||||
extensibility."""
|
||||
|
||||
homepage = "http://xcb.freedesktop.org/"
|
||||
url = "http://xcb.freedesktop.org/dist/libxcb-1.11.tar.gz"
|
||||
|
||||
version('1.11', '1698dd837d7e6e94d029dbe8b3a82deb')
|
||||
|
||||
depends_on("python")
|
||||
depends_on("xcb-proto")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
16
var/spack/packages/libxshmfence/package.py
Normal file
16
var/spack/packages/libxshmfence/package.py
Normal file
@ -0,0 +1,16 @@
|
||||
from spack import *
|
||||
|
||||
class Libxshmfence(Package):
|
||||
"""This is a tiny library that exposes a event API on top of Linux
|
||||
futexes."""
|
||||
|
||||
homepage = "http://keithp.com/blogs/dri3_extension/" # not really...
|
||||
url = "http://xorg.freedesktop.org/archive/individual/lib/libxshmfence-1.2.tar.gz"
|
||||
|
||||
version('1.2', 'f0b30c0fc568b22ec524859ee28556f1')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
@ -35,6 +35,12 @@ class Llvm(Package):
|
||||
url = "http://llvm.org/releases/3.4.2/llvm-3.4.2.src.tar.gz"
|
||||
|
||||
version('3.4.2', 'a20669f75967440de949ac3b1bad439c')
|
||||
version('3.0', 'a8e5f5f1c1adebae7b4a654c376a6005',
|
||||
url='http://llvm.org/releases/3.0/llvm-3.0.tar.gz')
|
||||
version('2.9', '793138412d2af2c7c7f54615f8943771',
|
||||
url='http://llvm.org/releases/2.9/llvm-2.9.tgz')
|
||||
version('2.8', '220d361b4d17051ff4bb21c64abe05ba',
|
||||
url='http://llvm.org/releases/2.8/llvm-2.8.tgz')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
env['CXXFLAGS'] = self.compiler.cxx11_flag
|
||||
|
20
var/spack/packages/memaxes/package.py
Normal file
20
var/spack/packages/memaxes/package.py
Normal file
@ -0,0 +1,20 @@
|
||||
from spack import *
|
||||
|
||||
class Memaxes(Package):
|
||||
"""MemAxes is a visualizer for sampled memory trace data."""
|
||||
|
||||
homepage = "https://github.com/scalability-llnl/MemAxes"
|
||||
|
||||
version('0.5', 'b0f561d48aa7301e028d074bc4b5751b',
|
||||
url='https://github.com/scalability-llnl/MemAxes/archive/v0.5.tar.gz')
|
||||
|
||||
depends_on("cmake@2.8.9:")
|
||||
depends_on("qt@5:")
|
||||
depends_on("vtk")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
with working_dir('spack-build', create=True):
|
||||
cmake('..', *std_cmake_args)
|
||||
make()
|
||||
make("install")
|
||||
|
33
var/spack/packages/mesa/package.py
Normal file
33
var/spack/packages/mesa/package.py
Normal file
@ -0,0 +1,33 @@
|
||||
from spack import *
|
||||
|
||||
class Mesa(Package):
|
||||
"""Mesa is an open-source implementation of the OpenGL
|
||||
specification - a system for rendering interactive 3D graphics."""
|
||||
|
||||
homepage = "http://www.mesa3d.org"
|
||||
url = "ftp://ftp.freedesktop.org/pub/mesa/older-versions/8.x/8.0.5/MesaLib-8.0.5.tar.gz"
|
||||
# url = "ftp://ftp.freedesktop.org/pub/mesa/10.4.4/MesaLib-10.4.4.tar.gz"
|
||||
|
||||
# version('10.4.4', '8d863a3c209bf5116b2babfccccc68ce')
|
||||
version('8.0.5', 'cda5d101f43b8784fa60bdeaca4056f2')
|
||||
|
||||
# mesa 7.x, 8.x, 9.x
|
||||
depends_on("libdrm@2.4.33")
|
||||
depends_on("llvm@3.0")
|
||||
|
||||
# patch("llvm-fixes.patch") # using newer llvm
|
||||
|
||||
# mesa 10.x
|
||||
# depends_on("py-mako")
|
||||
# depends_on("flex")
|
||||
# depends_on("bison")
|
||||
# depends_on("dri2proto")
|
||||
# depends_on("libxcb")
|
||||
# depends_on("libxshmfence")
|
||||
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
16
var/spack/packages/py-mako/package.py
Normal file
16
var/spack/packages/py-mako/package.py
Normal file
@ -0,0 +1,16 @@
|
||||
from spack import *
|
||||
|
||||
class PyMako(Package):
|
||||
"""A super-fast templating language that borrows the best
|
||||
ideas from the existing templating languages."""
|
||||
|
||||
homepage = "https://pypi.python.org/pypi/mako"
|
||||
url = "https://pypi.python.org/packages/source/M/Mako/Mako-1.0.1.tar.gz"
|
||||
|
||||
version('1.0.1', '9f0aafd177b039ef67b90ea350497a54')
|
||||
|
||||
depends_on('py-setuptools')
|
||||
extends('python')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
python('setup.py', 'install', '--prefix=%s' % prefix)
|
@ -1,10 +1,20 @@
|
||||
import os
|
||||
from spack import *
|
||||
import os
|
||||
|
||||
class Qt(Package):
|
||||
"""Qt is a comprehensive cross-platform C++ application framework."""
|
||||
homepage = "http://qt.io"
|
||||
list_url = 'http://download.qt-project.org/official_releases/qt/'
|
||||
list_depth = 2
|
||||
|
||||
version('5.4.0', 'e8654e4b37dd98039ba20da7a53877e6',
|
||||
url='http://download.qt-project.org/official_releases/qt/5.4/5.4.0/single/qt-everywhere-opensource-src-5.4.0.tar.gz')
|
||||
version('5.3.2', 'febb001129927a70174467ecb508a682',
|
||||
url='http://download.qt.io/archive/qt/5.3/5.3.2/single/qt-everywhere-opensource-src-5.3.2.tar.gz')
|
||||
|
||||
version('5.2.1', 'a78408c887c04c34ce615da690e0b4c8',
|
||||
url='http://download.qt.io/archive/qt/5.2/5.2.1/single/qt-everywhere-opensource-src-5.2.1.tar.gz')
|
||||
version('4.8.6', '2edbe4d6c2eff33ef91732602f3518eb',
|
||||
url="http://download.qt-project.org/official_releases/qt/4.8/4.8.6/qt-everywhere-opensource-src-4.8.6.tar.gz")
|
||||
|
||||
@ -21,26 +31,51 @@ class Qt(Package):
|
||||
depends_on("libmng")
|
||||
depends_on("jpeg")
|
||||
|
||||
# Webkit
|
||||
# depends_on("gperf")
|
||||
# depends_on("flex")
|
||||
# depends_on("bison")
|
||||
# depends_on("ruby")
|
||||
# depends_on("icu4c")
|
||||
|
||||
# OpenGL hardware acceleration
|
||||
depends_on("mesa")
|
||||
depends_on("libxcb")
|
||||
|
||||
|
||||
def setup_dependent_environment(self, module, spec, dep_spec):
|
||||
"""Dependencies of Qt find it using the QTDIR environment variable."""
|
||||
os.environ['QTDIR'] = self.prefix
|
||||
|
||||
|
||||
def patch(self):
|
||||
if self.spec.satisfies('@4'):
|
||||
qmake_conf = 'mkspecs/common/g++-base.conf'
|
||||
elif self.spec.satisfies('@5'):
|
||||
qmake_conf = 'qtbase/mkspecs/common/g++-base.conf'
|
||||
else:
|
||||
return
|
||||
|
||||
# Fix qmake compilers in the default mkspec
|
||||
qmake_conf = 'mkspecs/common/g++-base.conf'
|
||||
filter_file(r'^QMAKE_CC *=.*$', 'QMAKE_CC = cc', qmake_conf)
|
||||
filter_file(r'^QMAKE_CXX *=.*$', 'QMAKE_CXX = c++', qmake_conf)
|
||||
filter_file(r'^QMAKE_COMPILER *=.*$', 'QMAKE_COMPILER = cc', qmake_conf)
|
||||
filter_file(r'^QMAKE_CC *=.*$', 'QMAKE_CC = cc', qmake_conf)
|
||||
filter_file(r'^QMAKE_CXX *=.*$', 'QMAKE_CXX = c++', qmake_conf)
|
||||
|
||||
|
||||
def install(self, spec, prefix):
|
||||
# Apparently this is the only way to
|
||||
# "truly" get rid of webkit compiles now...
|
||||
os.rename("qtwebkit","no-qtwebkit")
|
||||
os.rename("qtwebkit-examples","no-qtwebkit-examples")
|
||||
configure('-v',
|
||||
'-confirm-license',
|
||||
'-opensource',
|
||||
'-prefix', prefix,
|
||||
'-openssl-linked',
|
||||
'-dbus-linked',
|
||||
'-fast',
|
||||
#'-fast',
|
||||
'-opengl',
|
||||
'-qt-xcb',
|
||||
'-optimized-qmake',
|
||||
'-no-pch',
|
||||
# phonon required for py-pyqt
|
||||
|
16
var/spack/packages/ruby/package.py
Normal file
16
var/spack/packages/ruby/package.py
Normal file
@ -0,0 +1,16 @@
|
||||
from spack import *
|
||||
|
||||
class Ruby(Package):
|
||||
"""A dynamic, open source programming language with a focus on
|
||||
simplicity and productivity."""
|
||||
|
||||
homepage = "https://www.ruby-lang.org/"
|
||||
url = "http://cache.ruby-lang.org/pub/ruby/2.2/ruby-2.2.0.tar.gz"
|
||||
|
||||
version('2.2.0', 'cd03b28fd0b555970f5c4fd481700852')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
20
var/spack/packages/util-linux/package.py
Normal file
20
var/spack/packages/util-linux/package.py
Normal file
@ -0,0 +1,20 @@
|
||||
from spack import *
|
||||
import os
|
||||
|
||||
class UtilLinux(Package):
|
||||
"""Util-linux is a suite of essential utilities for any Linux system."""
|
||||
|
||||
homepage = "http://freecode.com/projects/util-linux"
|
||||
url = "https://www.kernel.org/pub/linux/utils/util-linux/v2.25/util-linux-2.25.tar.gz"
|
||||
|
||||
version('2.25', 'f6d7fc6952ec69c4dc62c8d7c59c1d57')
|
||||
|
||||
depends_on("python@2.7:")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix,
|
||||
"PKG_CONFIG_PATH=%s/pkgconfig" % spec['python'].prefix.lib,
|
||||
"--disable-use-tty-group")
|
||||
|
||||
make()
|
||||
make("install")
|
40
var/spack/packages/vtk/package.py
Normal file
40
var/spack/packages/vtk/package.py
Normal file
@ -0,0 +1,40 @@
|
||||
from spack import *
|
||||
|
||||
class Vtk(Package):
|
||||
"""The Visualization Toolkit (VTK) is an open-source, freely
|
||||
available software system for 3D computer graphics, image
|
||||
processing and visualization. """
|
||||
homepage = "http://www.vtk.org"
|
||||
url = "http://www.vtk.org/files/release/6.1/VTK-6.1.0.tar.gz"
|
||||
|
||||
version('6.1.0', '25e4dfb3bad778722dcaec80cd5dab7d')
|
||||
|
||||
depends_on("qt")
|
||||
|
||||
def install(self, spec, prefix):
|
||||
with working_dir('spack-build', create=True):
|
||||
cmake_args = [
|
||||
"..",
|
||||
"-DBUILD_SHARED_LIBS=ON",
|
||||
# Disable wrappers for other languages.
|
||||
"-DVTK_WRAP_PYTHON=OFF",
|
||||
"-DVTK_WRAP_JAVA=OFF",
|
||||
"-DVTK_WRAP_TCL=OFF"]
|
||||
cmake_args.extend(std_cmake_args)
|
||||
|
||||
# Enable Qt support here.
|
||||
cmake_args.extend([
|
||||
"-DQT_QMAKE_EXECUTABLE:PATH=%s/qmake" % spec['qt'].prefix.bin,
|
||||
"-DVTK_Group_Qt:BOOL=ON",
|
||||
# Ignore webkit because it's hard to build w/Qt
|
||||
"-DVTK_Group_Qt=OFF",
|
||||
"-DModule_vtkGUISupportQt:BOOL=ON",
|
||||
"-DModule_vtkGUISupportQtOpenGL:BOOL=ON"
|
||||
])
|
||||
|
||||
if spec['qt'].satisfies('@5'):
|
||||
cmake_args.append("-DVTK_QT_VERSION:STRING=5")
|
||||
|
||||
cmake(*cmake_args)
|
||||
make()
|
||||
make("install")
|
15
var/spack/packages/xcb-proto/package.py
Normal file
15
var/spack/packages/xcb-proto/package.py
Normal file
@ -0,0 +1,15 @@
|
||||
from spack import *
|
||||
|
||||
class XcbProto(Package):
|
||||
"""Protocol for libxcb"""
|
||||
|
||||
homepage = "http://xcb.freedesktop.org/"
|
||||
url = "http://xcb.freedesktop.org/dist/xcb-proto-1.11.tar.gz"
|
||||
|
||||
version('1.11', 'c8c6cb72c84f58270f4db1f39607f66a')
|
||||
|
||||
def install(self, spec, prefix):
|
||||
configure("--prefix=%s" % prefix)
|
||||
|
||||
make()
|
||||
make("install")
|
Loading…
Reference in New Issue
Block a user