Files
OpenUxAS-bootstrap/specs/zeromqada.anod
2020-04-16 14:28:41 +02:00

52 lines
1.7 KiB
Plaintext

from e3.anod.spec import Anod
from e3.anod.loader import spec
from e3.diff import patch
from e3.fs import cp
import os
class ZeroMQAda(spec('common')):
@property
def build_deps(self):
return [Anod.Dependency('compiler'),
Anod.Dependency('zeromq')]
@property
def build_source_list(self):
return [self.Source(name='zeromqada-src',
publish=True, dest='')]
@property
def source_pkg_build(self):
return [self.SourceBuilder(name='zeromqada-src',
fullname=lambda x: 'zeromqada-src.tar.gz',
checkout=["zeromqada"]),
self.LocalSourceBuilder(name='zeromqada.patch')]
@Anod.primitive()
def build(self):
self.deps['zeromq'].setenv()
self.shell(os.path.join(self.build_space.src_dir, 'configure'),
cwd=self.build_space.src_dir)
self.shell('make',
cwd=self.build_space.src_dir)
self.shell('gprinstall', 'zmq.gpr', '-p',
'--prefix=%s' % self.build_space.install_dir,
cwd=self.build_space.src_dir)
# Patch zmq.gpr
zmq_gpr = os.path.join(self.build_space.install_dir,
'share', 'gpr', 'zmq.gpr')
with open(zmq_gpr) as fd:
content = fd.read().splitlines()
new_content = []
with open(zmq_gpr, 'w') as fd:
for l in content:
if 'package Linker' in l:
new_content.append(l)
new_content.append('for Linker_Options use ("-lzmq");')
else:
new_content.append(l)
fd.write('\n'.join(new_content))