| … | |
… | |
| 3 | # This source code is distributed under the terms of version 2 of the GNU |
3 | # This source code is distributed under the terms of version 2 of the GNU |
| 4 | # General Public License as published by the Free Software Foundation, a copy |
4 | # General Public License as published by the Free Software Foundation, a copy |
| 5 | # of which can be found in the main directory of this project. |
5 | # of which can be found in the main directory of this project. |
| 6 | Gentoo Linux Installer |
6 | Gentoo Linux Installer |
| 7 | |
7 | |
| 8 | $Id: GLIPortage.py,v 1.20 2006/01/02 18:31:32 agaffney Exp $ |
8 | $Id: GLIPortage.py,v 1.21 2006/01/02 19:13:13 agaffney Exp $ |
| 9 | """ |
9 | """ |
| 10 | |
10 | |
| 11 | import re |
11 | import re |
| 12 | import GLIUtility |
12 | import GLIUtility |
| 13 | from GLIException import GLIException |
13 | from GLIException import GLIException |
| … | |
… | |
| 28 | pkgs = pkgs.split() |
28 | pkgs = pkgs.split() |
| 29 | for pkg in pkgs: |
29 | for pkg in pkgs: |
| 30 | if self._debug: self._logger.log("get_deps(): pkg is " + pkg) |
30 | if self._debug: self._logger.log("get_deps(): pkg is " + pkg) |
| 31 | if not self._grp_install or not self.get_best_version_vdb(pkg): |
31 | if not self._grp_install or not self.get_best_version_vdb(pkg): |
| 32 | if self._debug: self._logger.log("get_deps(): grabbing compile deps") |
32 | if self._debug: self._logger.log("get_deps(): grabbing compile deps") |
| 33 | tmppkglist = GLIUtility.spawn("emerge -p " + pkgs + r" | grep -e '^\[[a-z]' | cut -d ']' -f2 | sed -e 's:^ ::' -e 's: .\+$::'", chroot=self._chroot_dir, return_output=True)[1].strip().split("\n") |
33 | tmppkglist = GLIUtility.spawn("emerge -p " + pkg + r" | grep -e '^\[[a-z]' | cut -d ']' -f2 | sed -e 's:^ ::' -e 's: .\+$::'", chroot=self._chroot_dir, return_output=True)[1].strip().split("\n") |
| 34 | else: |
34 | else: |
| 35 | if self._debug: self._logger.log("get_deps(): grabbing binary deps") |
35 | if self._debug: self._logger.log("get_deps(): grabbing binary deps") |
| 36 | # Until I have a unified method of getting binary and compile deps, I can't reliably merge the deptrees |
36 | # Until I have a unified method of getting binary and compile deps, I can't reliably merge the deptrees |
| 37 | # tmppkglist = GLIUtility.spawn("python ../../runtimedeps.py " + self._chroot_dir + " " + pkg, return_output=True)[1].strip().split("\n") |
37 | # tmppkglist = GLIUtility.spawn("python ../../runtimedeps.py " + self._chroot_dir + " " + pkg, return_output=True)[1].strip().split("\n") |
| 38 | tmppkglist = [] |
38 | tmppkglist = [] |
| 39 | for tmppkg in GLIUtility.spawn("emerge -p " + pkgs + r" | grep -e '^\[[a-z]' | cut -d ']' -f2 | sed -e 's:^ ::' -e 's: .\+$::'", chroot=self._chroot_dir, return_output=True)[1].strip().split("\n"): |
39 | for tmppkg in GLIUtility.spawn("emerge -p " + pkg + r" | grep -e '^\[[a-z]' | cut -d ']' -f2 | sed -e 's:^ ::' -e 's: .\+$::'", chroot=self._chroot_dir, return_output=True)[1].strip().split("\n"): |
| 40 | if self.get_best_version_vdb_chroot("=" + tmppkg): |
40 | if self.get_best_version_vdb_chroot("=" + tmppkg): |
| 41 | tmppkglist.append(tmppkg) |
41 | tmppkglist.append(tmppkg) |
| 42 | if self._debug: self._logger.log("get_deps(): deplist for " + pkg + ": " + str(tmppkglist)) |
42 | if self._debug: self._logger.log("get_deps(): deplist for " + pkg + ": " + str(tmppkglist)) |
| 43 | for tmppkg in tmppkglist: |
43 | for tmppkg in tmppkglist: |
| 44 | if self._debug: self._logger.log("get_deps(): checking to see if " + tmppkg + " is already in pkglist") |
44 | if self._debug: self._logger.log("get_deps(): checking to see if " + tmppkg + " is already in pkglist") |