Gentoo Archives: gentoo-commits

From: "Zac Medico (zmedico)" <zmedico@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] portage r10895 - main/trunk/pym/_emerge
Date: Wed, 02 Jul 2008 12:05:00
Message-Id: E1KE14w-0002LP-PE@stork.gentoo.org
1 Author: zmedico
2 Date: 2008-07-02 12:04:53 +0000 (Wed, 02 Jul 2008)
3 New Revision: 10895
4
5 Modified:
6 main/trunk/pym/_emerge/__init__.py
7 Log:
8 Fix EbuildBuildDir so that it works properly with binary packages.
9
10
11 Modified: main/trunk/pym/_emerge/__init__.py
12 ===================================================================
13 --- main/trunk/pym/_emerge/__init__.py 2008-07-02 11:33:55 UTC (rev 10894)
14 +++ main/trunk/pym/_emerge/__init__.py 2008-07-02 12:04:53 UTC (rev 10895)
15 @@ -1594,7 +1594,7 @@
16
17 class EbuildBuildDir(SlotObject):
18
19 - __slots__ = ("pkg", "settings",
20 + __slots__ = ("dir_path", "pkg", "settings",
21 "locked", "_catdir", "_lock_obj")
22
23 def __init__(self, **kwargs):
24 @@ -1611,17 +1611,21 @@
25 if self._lock_obj is not None:
26 raise self.AlreadyLocked((self._lock_obj,))
27
28 - root_config = self.pkg.root_config
29 - portdb = root_config.trees["porttree"].dbapi
30 - ebuild_path = portdb.findname(self.pkg.cpv)
31 - settings = self.settings
32 - debug = settings.get("PORTAGE_DEBUG") == "1"
33 - use_cache = 1 # always true
34 + dir_path = self.dir_path
35 + if dir_path is None:
36 + root_config = self.pkg.root_config
37 + portdb = root_config.trees["porttree"].dbapi
38 + ebuild_path = portdb.findname(self.pkg.cpv)
39 + settings = self.settings
40 + debug = settings.get("PORTAGE_DEBUG") == "1"
41 + use_cache = 1 # always true
42 + portage.doebuild_environment(ebuild_path, "setup", root_config.root,
43 + self.settings, debug, use_cache, portdb)
44 + dir_path = self.settings["PORTAGE_BUILDDIR"]
45
46 - portage.doebuild_environment(ebuild_path, "setup", root_config.root,
47 - self.settings, debug, use_cache, portdb)
48 - catdir = os.path.dirname(settings["PORTAGE_BUILDDIR"])
49 + catdir = os.path.dirname(dir_path)
50 self._catdir = catdir
51 +
52 portage.util.ensure_dirs(os.path.dirname(catdir),
53 uid=portage.portage_uid, gid=portage.portage_gid,
54 mode=070, mask=0)
55 @@ -1631,8 +1635,7 @@
56 portage.util.ensure_dirs(catdir,
57 gid=portage.portage_gid,
58 mode=070, mask=0)
59 - self._lock_obj = portage.locks.lockdir(
60 - self.settings["PORTAGE_BUILDDIR"])
61 + self._lock_obj = portage.locks.lockdir(dir_path)
62 finally:
63 self.locked = self._lock_obj is not None
64 if catdir_lock is not None:
65 @@ -2125,7 +2128,11 @@
66 (pkg_count.curval, pkg_count.maxval, pkg.cpv)
67 logger.log(msg, short_msg=short_msg)
68
69 - build_dir = EbuildBuildDir(pkg=pkg, settings=settings)
70 + dir_path = os.path.join(settings["PORTAGE_TMPDIR"],
71 + "portage", pkg.category, pkg.pf)
72 + build_dir = EbuildBuildDir(dir_path=dir_path,
73 + pkg=pkg, settings=settings)
74 +
75 try:
76 build_dir.lock()
77 merge = BinpkgMerge(find_blockers=find_blockers,
78
79 --
80 gentoo-commits@l.g.o mailing list