rpaths for dependencies. elf, dwarf, cmake build on Linux
This commit is contained in:
@@ -111,6 +111,7 @@ def add_commands_to_module(self):
|
||||
self.module.install = install
|
||||
self.module.rmtree = shutil.rmtree
|
||||
self.module.move = shutil.move
|
||||
self.module.remove = os.remove
|
||||
|
||||
# Useful directories within the prefix
|
||||
self.module.prefix = self.prefix
|
||||
@@ -119,6 +120,7 @@ def add_commands_to_module(self):
|
||||
self.module.etc = new_path(self.prefix, 'etc')
|
||||
self.module.include = new_path(self.prefix, 'include')
|
||||
self.module.lib = new_path(self.prefix, 'lib')
|
||||
self.module.lib64 = new_path(self.prefix, 'lib64')
|
||||
self.module.libexec = new_path(self.prefix, 'libexec')
|
||||
self.module.share = new_path(self.prefix, 'share')
|
||||
self.module.doc = new_path(self.module.share, 'doc')
|
||||
@@ -288,6 +290,9 @@ def setup_install_environment(self):
|
||||
for dep in self.dependencies:
|
||||
path_prepend("SPACK_DEPENDENCIES", dep.package.prefix)
|
||||
|
||||
# Install location
|
||||
path_prepend("SPACK_PREFIX", self.prefix)
|
||||
|
||||
|
||||
def do_install_dependencies(self):
|
||||
# Pass along paths of dependencies here
|
||||
|
||||
@@ -46,7 +46,7 @@ def get_next(arg, args):
|
||||
if os.path.isdir(target):
|
||||
rpaths.append(target)
|
||||
else:
|
||||
other_args.extend([arg, target])
|
||||
other_args.extend(['-Wl,' + arg, '-Wl,' + target])
|
||||
else:
|
||||
other_args.append(arg)
|
||||
other_args.append('-Wl,' + arg)
|
||||
return rpaths, other_args
|
||||
|
||||
@@ -21,21 +21,22 @@ def clean(self):
|
||||
def install(self, prefix):
|
||||
make.add_default_arg('ARFLAGS=rcs')
|
||||
|
||||
for dir in dwarf_dirs:
|
||||
with working_dir(dir):
|
||||
#configure("--prefix=%s" % prefix, '--enable-shared')
|
||||
configure("--prefix=%s" % prefix)
|
||||
make()
|
||||
|
||||
# Dwarf doesn't provide an install. Annoying.
|
||||
# Dwarf doesn't provide an install, so we have to do it.
|
||||
mkdirp(bin, include, lib, man1)
|
||||
|
||||
with working_dir('libdwarf'):
|
||||
configure("--prefix=%s" % prefix, '--enable-shared')
|
||||
make()
|
||||
|
||||
install('libdwarf.a', lib)
|
||||
#install('libdwarf.so', lib)
|
||||
install('libdwarf.so', lib)
|
||||
install('libdwarf.h', include)
|
||||
install('dwarf.h', include)
|
||||
|
||||
with working_dir('dwarfdump2'):
|
||||
configure("--prefix=%s" % prefix)
|
||||
make()
|
||||
|
||||
install('dwarfdump', bin)
|
||||
install('dwarfdump.conf', lib)
|
||||
install('dwarfdump.1', man1)
|
||||
|
||||
@@ -7,6 +7,7 @@ class Libelf(Package):
|
||||
|
||||
def install(self, prefix):
|
||||
configure("--prefix=%s" % prefix,
|
||||
"--enable-shared",
|
||||
"--disable-dependency-tracking",
|
||||
"--disable-debug")
|
||||
make()
|
||||
|
||||
@@ -60,9 +60,9 @@ def pkg(msg):
|
||||
import platform
|
||||
from version import Version
|
||||
|
||||
mac_version = platform.mac_ver()[0]
|
||||
if Version(mac_version) >= Version("10.7"):
|
||||
mac_ver = platform.mac_ver()[0]
|
||||
if mac_ver and Version(mac_ver) >= Version('10.7'):
|
||||
print u"\U0001F4E6" + indent,
|
||||
else:
|
||||
print '[%] ',
|
||||
print '{}[+]{} '.format(green, reset),
|
||||
print msg
|
||||
|
||||
Reference in New Issue
Block a user