move the elf-move run to after install_append so that install_append can fix up messes correctly

This commit is contained in:
Arjan van de Ven
2021-10-12 22:28:07 +00:00
committed by William Douglas
parent b5655686b9
commit fb197fc176
2 changed files with 11 additions and 9 deletions
+9 -7
View File
@@ -308,6 +308,7 @@ class Specfile(object):
self.write_service_restart()
self.write_exclude_deletes()
self.write_install_append()
self.write_elf_move()
# self.write_systemd_units()
def write_scriplets(self):
@@ -730,13 +731,11 @@ class Specfile(object):
if self.config.config_opts['use_avx2']:
self._write_strip("pushd ../buildavx2/" + self.config.subdir)
self._write_strip("%s_v3 %s\n" % (self.config.install_macro, self.config.extra_make_install))
self._write_strip('/usr/bin/elf-move.py avx2 %{buildroot}-v3 %{buildroot}/usr/share/clear/optimized-elf/ %{buildroot}/usr/share/clear/filemap/filemap-%{name}')
self._write_strip("popd")
if self.config.config_opts['use_avx512']:
self._write_strip("pushd ../buildavx512/" + self.config.subdir)
self._write_strip("%s_v4 %s\n" % (self.config.install_macro, self.config.extra_make_install))
self._write_strip('/usr/bin/elf-move.py avx512 %{buildroot}-v4 %{buildroot}/usr/share/clear/optimized-elf/ %{buildroot}/usr/share/clear/filemap/filemap-%{name}')
self._write_strip("popd")
if self.config.config_opts['openmpi']:
@@ -924,12 +923,19 @@ class Specfile(object):
self._write_strip("{}\n".format(line))
self._write_strip("## install_append end")
def write_elf_move(self):
"""Write out elf-move for alternate build roots."""
if self.config.config_opts['use_avx2']:
self._write_strip('/usr/bin/elf-move.py avx2 %{buildroot}-v3 %{buildroot}/usr/share/clear/optimized-elf/ %{buildroot}/usr/share/clear/filemap/filemap-%{name}')
if self.config.config_opts['use_avx512']:
self._write_strip('/usr/bin/elf-move.py avx512 %{buildroot}-v4 %{buildroot}/usr/share/clear/optimized-elf/ %{buildroot}/usr/share/clear/filemap/filemap-%{name}')
def write_exclude_deletes(self):
"""Write out deletes for excluded files."""
if self.excludes:
self._write_strip("## Remove excluded files")
for exclude in self.excludes:
self._write_strip(f"rm -f %{{buildroot}}{exclude}")
self._write_strip(f"rm -f %{{buildroot}}*{exclude}")
def write_service_restart(self):
"""Enable configured units to be restarted with clr-service-restart."""
@@ -1008,13 +1014,11 @@ class Specfile(object):
if self.config.config_opts['use_avx2']:
self._write_strip("pushd clr-build-avx2")
self._write_strip("%s_v3 %s || :\n" % (self.config.install_macro, self.config.extra_make_install))
self._write_strip('/usr/bin/elf-move.py avx2 %{buildroot}-v3 %{buildroot}/usr/share/clear/optimized-elf/ %{buildroot}/usr/share/clear/filemap/filemap-%{name}')
self._write_strip("popd")
if self.config.config_opts['use_avx512']:
self._write_strip("pushd clr-build-avx512")
self._write_strip("%s_v4 %s || :\n" % (self.config.install_macro, self.config.extra_make_install))
self._write_strip('/usr/bin/elf-move.py avx512 %{buildroot}-v4 %{buildroot}/usr/share/clear/optimized-elf/ %{buildroot}/usr/share/clear/filemap/filemap-%{name}')
self._write_strip("popd")
if self.config.config_opts['openmpi']:
@@ -1939,10 +1943,8 @@ class Specfile(object):
self._write_strip("pushd " + self.config.subdir)
if self.config.config_opts['use_avx2']:
self._write_strip('DESTDIR=%{buildroot}-v3 ninja -C builddiravx2 install')
self._write_strip('/usr/bin/elf-move.py avx2 %{buildroot}-v3 %{buildroot}/usr/share/clear/optimized-elf/ %{buildroot}/usr/share/clear/filemap/filemap-%{name}')
if self.config.config_opts['use_avx512']:
self._write_strip('DESTDIR=%{buildroot}-v4 ninja -C builddiravx512 install')
self._write_strip('/usr/bin/elf-move.py avx512 %{buildroot}-v4 %{buildroot}/usr/share/clear/optimized-elf/ %{buildroot}/usr/share/clear/filemap/filemap-%{name}')
self._write_strip("DESTDIR=%{buildroot} ninja -C builddir install")
if self.config.subdir:
+2 -2
View File
@@ -446,8 +446,8 @@ class TestSpecfileWrite(unittest.TestCase):
self.specfile.write_exclude_deletes()
expect = [
"## Remove excluded files",
"rm -f %{buildroot}/usr/bin/bar",
"rm -f %{buildroot}/usr/bin/foo",
"rm -f %{buildroot}*/usr/bin/bar",
"rm -f %{buildroot}*/usr/bin/foo",
]
self.assertEqual(expect, self.WRITES)