Lines 2802-2832
def doebuild(myebuild,mydo,myroot,mysett
Link Here
|
2802 |
if need_distfiles and not fetch(fetchme, mysettings, listonly=listonly, fetchonly=fetchonly): |
2802 |
if need_distfiles and not fetch(fetchme, mysettings, listonly=listonly, fetchonly=fetchonly): |
2803 |
return 1 |
2803 |
return 1 |
2804 |
|
2804 |
|
2805 |
# inefficient. improve this logic via making actionmap easily searchable to see if we're in the chain of what |
|
|
2806 |
# will be executed, either that or forced N doebuild calls instead of a single set of phase calls. |
2807 |
if (mydo not in ("setup", "clean", "postinst", "preinst", "prerm", "fetch", "digest", "manifest") and |
2808 |
"noauto" not in features) or mydo == "unpack": |
2809 |
orig_distdir = mysettings["DISTDIR"] |
2810 |
edpath = mysettings["DISTDIR"] = os.path.join(mysettings["PORTAGE_BUILDDIR"], "distdir") |
2811 |
if os.path.exists(edpath): |
2812 |
try: |
2813 |
if os.path.isdir(edpath) and not os.path.islink(edpath): |
2814 |
shutil.rmtree(edpath) |
2815 |
else: |
2816 |
os.unlink(edpath) |
2817 |
except OSError: |
2818 |
print "!!! Failed reseting ebuild distdir path, " + edpath |
2819 |
raise |
2820 |
os.mkdir(edpath) |
2821 |
os.chown(edpath, -1, portage_gid) |
2822 |
os.chmod(edpath, 0775) |
2823 |
try: |
2824 |
for file in aalist: |
2825 |
os.symlink(os.path.join(orig_distdir, file), os.path.join(edpath, file)) |
2826 |
except OSError: |
2827 |
print "!!! Failed symlinking in '%s' to ebuild distdir" % file |
2828 |
raise |
2829 |
|
2830 |
if mydo=="fetch" and listonly: |
2805 |
if mydo=="fetch" and listonly: |
2831 |
return 0 |
2806 |
return 0 |
2832 |
|
2807 |
|