Gentoo Archives: gentoo-commits

From: "Mike Frysinger (vapier)" <vapier@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-projects commit in portage-utils: qmerge.c
Date: Tue, 22 Feb 2011 06:10:27
Message-Id: 20110222061016.7606220054@flycatcher.gentoo.org
1 vapier 11/02/22 06:10:16
2
3 Modified: qmerge.c
4 Log:
5 unify the pkg_{pre,post}rm steps a bit, and seed the env with stub debug-print funcs like the pm does
6
7 Revision Changes Path
8 1.101 portage-utils/qmerge.c
9
10 file : http://sources.gentoo.org/viewvc.cgi/gentoo-projects/portage-utils/qmerge.c?rev=1.101&view=markup
11 plain: http://sources.gentoo.org/viewvc.cgi/gentoo-projects/portage-utils/qmerge.c?rev=1.101&content-type=text/plain
12 diff : http://sources.gentoo.org/viewvc.cgi/gentoo-projects/portage-utils/qmerge.c?r1=1.100&r2=1.101
13
14 Index: qmerge.c
15 ===================================================================
16 RCS file: /var/cvsroot/gentoo-projects/portage-utils/qmerge.c,v
17 retrieving revision 1.100
18 retrieving revision 1.101
19 diff -u -r1.100 -r1.101
20 --- qmerge.c 21 Feb 2011 22:02:59 -0000 1.100
21 +++ qmerge.c 22 Feb 2011 06:10:16 -0000 1.101
22 @@ -1,7 +1,7 @@
23 /*
24 * Copyright 2005-2010 Gentoo Foundation
25 * Distributed under the terms of the GNU General Public License v2
26 - * $Header: /var/cvsroot/gentoo-projects/portage-utils/qmerge.c,v 1.100 2011/02/21 22:02:59 vapier Exp $
27 + * $Header: /var/cvsroot/gentoo-projects/portage-utils/qmerge.c,v 1.101 2011/02/22 06:10:16 vapier Exp $
28 *
29 * Copyright 2005-2010 Ned Ludd - <solar@g.o>
30 * Copyright 2005-2010 Mike Frysinger - <vapier@g.o>
31 @@ -55,7 +55,7 @@
32 COMMON_OPTS_HELP
33 };
34
35 -static const char qmerge_rcsid[] = "$Id: qmerge.c,v 1.100 2011/02/21 22:02:59 vapier Exp $";
36 +static const char qmerge_rcsid[] = "$Id: qmerge.c,v 1.101 2011/02/22 06:10:16 vapier Exp $";
37 #define qmerge_usage(ret) usage(ret, QMERGE_FLAGS, qmerge_long_opts, qmerge_opts_help, lookup_applet_idx("qmerge"))
38
39 char search_pkgs = 0;
40 @@ -424,6 +424,20 @@
41 return ret;
42 }
43
44 +#define pkg_run_func(func, setup) \
45 + do { \
46 + qprintf(">>> %s\n", func); \
47 + xsystembash( \
48 + "debug-print() { :; }; " \
49 + "debug-print-function() { :; }; " \
50 + "debug-print-section() { :; }; " \
51 + func "() { :; }; " \
52 + setup \
53 + ". ./environment && " \
54 + func \
55 + ); \
56 + } while (0)
57 +
58 /* oh shit getting into pkg mgt here. FIXME: write a real dep resolver. */
59 void pkg_merge(int level, depend_atom *atom, struct pkg_t *pkg)
60 {
61 @@ -861,14 +875,8 @@
62
63 /* First execute the pkg_prerm step */
64 if (!pretend) {
65 - qprintf(">>> pkg_prerm\n");
66 xchdir(vdb_path);
67 - xsystembash(
68 - "bzip2 -dc environment.bz2 > environment && "
69 - "pkg_prerm() { :; } && "
70 - ". ./environment && "
71 - "pkg_prerm"
72 - );
73 + pkg_run_func("pkg_prerm", "bzip2 -dc environment.bz2 > environment && ");
74 }
75
76 /* Now start removing all the installed files */
77 @@ -974,15 +982,8 @@
78 freeargv(cpm_argc, cpm_argv);
79
80 /* Then execute the pkg_postrm step */
81 - if (!pretend) {
82 - qprintf(">>> pkg_postrm\n");
83 - xsystembash(
84 - /* "bzip2 -dc environment.bz2 > environment && " */
85 - "pkg_postrm() { :; } && "
86 - ". ./environment && "
87 - "pkg_postrm"
88 - );
89 - }
90 + if (!pretend)
91 + pkg_run_func("pkg_postrm", "");
92
93 if (!pretend) {
94 /* Finally delete the vdb entry */