summaryrefslogtreecommitdiffstats
path: root/pym/portage/package/ebuild/prepare_build_dirs.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2010-08-13 07:05:12 -0700
committerZac Medico <zmedico@gentoo.org>2010-08-13 07:05:12 -0700
commit12cbc8821476dcbac38464a41f7cb336da7ac0c9 (patch)
treec985564961b89af1f3ccb72f4347e41e0dd91a90 /pym/portage/package/ebuild/prepare_build_dirs.py
parent9839ae93b13fd66503b1e4f3dd33193b3a92e838 (diff)
downloadportage-12cbc8821476dcbac38464a41f7cb336da7ac0c9.tar.gz
portage-12cbc8821476dcbac38464a41f7cb336da7ac0c9.tar.bz2
portage-12cbc8821476dcbac38464a41f7cb336da7ac0c9.zip
Use EbuildIpcDaemon to replace the functionality of
EBUILD_EXIT_STATUS_FILE.
Diffstat (limited to 'pym/portage/package/ebuild/prepare_build_dirs.py')
-rw-r--r--pym/portage/package/ebuild/prepare_build_dirs.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/pym/portage/package/ebuild/prepare_build_dirs.py b/pym/portage/package/ebuild/prepare_build_dirs.py
index dc29eeeb8..15e087121 100644
--- a/pym/portage/package/ebuild/prepare_build_dirs.py
+++ b/pym/portage/package/ebuild/prepare_build_dirs.py
@@ -85,6 +85,25 @@ def prepare_build_dirs(myroot, mysettings, cleanup):
writemsg(_("File Not Found: '%s'\n") % str(e), noiselevel=-1)
return 1
+ for x in ('.ipc_in', '.ipc_out'):
+ p = os.path.join(mysettings['PORTAGE_BUILDDIR'], x)
+ st = None
+ try:
+ st = os.lstat(p)
+ except OSError:
+ os.mkfifo(p)
+ else:
+ if not stat.S_ISFIFO(st.st_mode):
+ st = None
+ try:
+ os.unlink(p)
+ except OSError:
+ pass
+ os.mkfifo(p)
+ apply_secpass_permissions(p,
+ uid=portage_uid, gid=portage_gid,
+ mode=0o770, mask=0o2, stat_cached=st)
+
# Reset state for things like noauto and keepwork in FEATURES.
for x in ('.die_hooks',):
try: