Restore sbindir install support
Restore the ability to install sbin-tools into sbindir since it works
fine with pure distutils. The issue is python-exec/eclass-specific and
therefore all the relevant workarounds belong in the ebuild.
diff --git a/pym/portage/tests/__init__.py b/pym/portage/tests/__init__.py
index afa57e3..708dd59 100644
--- a/pym/portage/tests/__init__.py
+++ b/pym/portage/tests/__init__.py
@@ -197,9 +197,7 @@
self.cnf_path = cnf_path
self.cnf_etc_path = cnf_etc_path
self.bindir = cnf_bindir
- # sbin scripts are installed by setup.py to the bindir
- # they are relocated to /usr/sbin dir by the ebuild later
- self.sbindir = self.bindir
+ self.sbindir = cnf_sbindir
def defaultTestResult(self):
return TextTestResult()
diff --git a/setup.py b/setup.py
index dba8539..8231c0a 100755
--- a/setup.py
+++ b/setup.py
@@ -30,10 +30,12 @@
x_scripts = {
'bin': [
- 'bin/archive-conf', 'bin/dispatch-conf', 'bin/ebuild', 'bin/egencache',
- 'bin/emaint', 'bin/emerge', 'bin/emerge-webrsync', 'bin/emirrordist',
- 'bin/env-update', 'bin/etc-update', 'bin/fixpackages', 'bin/portageq',
- 'bin/quickpkg', 'bin/regenworld', 'bin/repoman',
+ 'bin/ebuild', 'bin/egencache', 'bin/emerge', 'bin/emerge-webrsync',
+ 'bin/emirrordist', 'bin/portageq', 'bin/quickpkg', 'bin/repoman'
+ ],
+ 'sbin': [
+ 'bin/archive-conf', 'bin/dispatch-conf', 'bin/emaint', 'bin/env-update',
+ 'bin/etc-update', 'bin/fixpackages', 'bin/regenworld'
],
}
@@ -224,6 +226,10 @@
dir_name = 'bin'
+class x_build_scripts_sbin(x_build_scripts_custom):
+ dir_name = 'sbin'
+
+
class x_build_scripts_portagebin(x_build_scripts_custom):
dir_name = 'portage'
@@ -238,6 +244,7 @@
def run(self):
self.run_command('build_scripts_bin')
self.run_command('build_scripts_portagebin')
+ self.run_command('build_scripts_sbin')
class x_clean(clean):
@@ -473,6 +480,11 @@
var_name = 'bindir'
+class x_install_scripts_sbin(x_install_scripts_custom):
+ dir_name = 'sbin'
+ var_name = 'sbindir'
+
+
class x_install_scripts_portagebin(x_install_scripts_custom):
dir_name = 'portage'
var_name = 'portage_bindir'
@@ -488,6 +500,7 @@
def run(self):
self.run_command('install_scripts_bin')
self.run_command('install_scripts_portagebin')
+ self.run_command('install_scripts_sbin')
class x_sdist(sdist):
@@ -624,6 +637,7 @@
'build_scripts': x_build_scripts,
'build_scripts_bin': x_build_scripts_bin,
'build_scripts_portagebin': x_build_scripts_portagebin,
+ 'build_scripts_sbin': x_build_scripts_sbin,
'build_tests': build_tests,
'clean': x_clean,
'docbook': docbook,
@@ -636,6 +650,7 @@
'install_scripts': x_install_scripts,
'install_scripts_bin': x_install_scripts_bin,
'install_scripts_portagebin': x_install_scripts_portagebin,
+ 'install_scripts_sbin': x_install_scripts_sbin,
'sdist': x_sdist,
'test': test,
},