diff --git a/pisi/actionsapi/autotools.py b/pisi/actionsapi/autotools.py index 98560eef..5fd3877f 100644 --- a/pisi/actionsapi/autotools.py +++ b/pisi/actionsapi/autotools.py @@ -57,13 +57,15 @@ def install(parameters = ''): localstatedir=%(prefix)s/%(localstate)s \ mandir=%(prefix)s/%(man)s \ sysconfdir=%(prefix)s/%(conf)s \ + %(parameters)s \ install' % {'prefix': dir_suffix, 'defaultprefix': dirs.defaultprefix, 'man': dirs.man, 'info': dirs.info, 'localstate': dirs.localstate, 'conf': dirs.conf, - 'data': dirs.data} + 'data': dirs.data, + 'parameters': parameters} os.system(install_string) diff --git a/pisi/actionsapi/pisitools.py b/pisi/actionsapi/pisitools.py index 3623b7c2..52f70c05 100644 --- a/pisi/actionsapi/pisitools.py +++ b/pisi/actionsapi/pisitools.py @@ -10,7 +10,7 @@ import re import sys import glob -from utils import makedirs, unlink +from utils import makedirs, unlink, chmod from pisi.util import copy_file, clean_dir # actions api modules @@ -147,3 +147,22 @@ def doecho(content, filename): f = open(env.install_dir + '/' + filename, 'w') f.write(content) f.close() + +def gen_usr_ldscript(parameters = ''): + + dodir("/usr/lib") + + f = open(env.install_dir + '/usr/lib/' + parameters, 'w') + content = ''' +/* GNU ld script + Since Pardus has critical dynamic libraries + in /lib, and the static versions in /usr/lib, + we need to have a "fake" dynamic lib in /usr/lib, + otherwise we run into linking problems. +*/ +GROUP ( /lib/%s ) +''' % parameters + f.write(content) + f.close() + chmod(env.install_dir + "/usr/lib/%s" % parameters) +