Gentoo Archives: gentoo-user-ru

From: Alexander Tiurin <alexanderyt@×××××.com>
To: gentoo-user-ru@l.g.o
Subject: Re: [gentoo-user-ru] Re: Размещение ebuild
Date: Sat, 07 May 2011 23:15:01
Message-Id: 20110508031400.32001893@workstation
In Reply to: Re: [gentoo-user-ru] Re: Размещение ebuild by Peter Volkov
1 On Fri, 22 Apr 2011 13:56:50 +0400
2 Peter Volkov <pva@g.o> wrote:
3
4 PV> В Чтв, 21/04/2011 в 20:49 +0400, Dmitry Dzhus пишет:
5 PV> > Зачем EAPI=3?
6 PV>
7 PV> Точно, лучше сразу везде использовать EAPI=4, как наиболее
8 PV> продвинутый и компактный синтаксис.
9 PV>
10
11
12 Не пойму немного с EAPI.
13 Судя по pms 17,01,2011
14
15 source_compile синтаксис
16
17 src_compile() {
18 if [[ -f Makefile ]] || [[ -f GNUmakefile ]] || [[ -f makefile ]];
19 then
20 emake || die "emake failed"
21 fi
22 }
23
24 для eapi 2,3,4.
25
26 Тогда делаю
27
28 EAPI=4
29 DESCRIPTION="Create system snapshots(i.e. backups) and use them later
30 to restore data."
31 HOMEPAGE="http://sourceforge.net/projects/sysshot/"
32 SRC_URI="mirror://sourceforge/project/${PN}/${PN}/${P}/${P}.tar.gz"
33 LICENSE="GPL-2"
34 SLOT="0"
35 KEYWORDS="~amd64 ~x86"
36 IUSE=""
37 DEPEND="sys-libs/ncurses"
38 RDEPEND="${DEPEND}"
39 src_compile() {
40 if [[ -f Makefile ]] || [[ -f GNUmakefile ]] || [[ -f makefile ]];
41 then emake || die "emake failed"
42 fi
43 }
44 src_install() {
45 cd ${WORKDIR}/${P} || die
46 dobin sysshot || die
47 dodoc README NEWS AUTHORS COPYING || die
48 }
49
50
51 С одной стороны все работает. С другой стороны я прогрепал портаж на
52 предмет этого синтаксиса , и ничего похожего как-то не нагрепал. Во
53 вторых подсветка vim этот синтаксис не воспринимает.
54 Например, тот же vim намекает на что, что нельзя делать именно
55 S=${WORKDIR}/${P}
56 ровно так, как написано, и действительно, в портаже я не нашел ничего
57 подобного.
58
59 Возникает вопрос, правильно ли применять eapi 4 в gentoo
60 arch?
61
62
63 Далее, эта часть к eapi 4 я так понимаю не относится?
64
65 src_install() {
66 cd ${WORKDIR}/${P} || die
67 dobin sysshot || die
68 dodoc README NEWS AUTHORS COPYING || die
69 }
70
71
72
73 и ее в моем простом случае можно заменить на
74
75
76 src_install() {
77 if [[ -f Makefile ]] || [[ -f GNUmakefile ]] || [[ -f makefile ]];
78 then emake DESTDIR="${D}" install
79 fi
80
81 if ! declare -p DOCS >/dev/null 2>&1 ; then
82 local d
83 for d in README* ChangeLog AUTHORS NEWS TODO CHANGES \
84 THANKS BUGS FAQ CREDITS CHANGELOG ; do
85 [[ -s "${d}" ]] && dodoc "${d}"
86 done
87 elif declare -p DOCS | grep -q ’^declare -a ’ ; then
88 dodoc "${DOCS[@]}"
89 else
90 dodoc ${DOCS}
91 fi
92 }
93
94
95
96 Так? Вот тут спрашиваю потому, что здесь уже возникают проблемы при
97 установке
98
99 make -j5 -s install
100 ACCESS DENIED open_wr: /usr/bin/sysshot
101 cp: cannot create regular file `/usr/bin/sysshot': Permission denied
102 make: *** [install] Error 1
103 * ERROR: app-backup/sysshot-0.1 failed (install phase):
104 * emake failed
105 *
106 * If you need support, post the output of 'emerge --info
107 =app-backup/sysshot-0.1',
108 * the complete build log and the output of 'emerge -pqv
109 =app-backup/sysshot-0.1'.
110 * This ebuild is from an overlay named 'over': '/usr/local/portage1/'
111 * The complete build log is located at
112 '/var/log/portage/app-backup:sysshot-0.1:20110507-224914.log'.
113 * The ebuild environment file is located at
114 '/var/memdisk/portage/app-backup/sysshot-0.1/temp/environment'.
115 * S: '/var/memdisk/portage/app-backup/sysshot-0.1/work/sysshot-0.1'
116 --------------------------- ACCESS VIOLATION SUMMARY
117 --------------------------- LOG FILE
118 "/var/log/sandbox/sandbox-19349.log"
119
120 VERSION 1.0
121 FORMAT: F - Function called
122 FORMAT: S - Access Status
123 FORMAT: P - Path as passed to function
124 FORMAT: A - Absolute Path (not canonical)
125 FORMAT: R - Canonical Path
126 FORMAT: C - Command Line
127
128 F: open_wr
129 S: deny
130 P: /usr/bin/sysshot
131 A: /usr/bin/sysshot
132 R: /usr/bin/sysshot
133 C: cp sysshot /usr/bin
134
135
136 Опять же возникает вопрос, а правильно ли в arch юзать eapi 4?

Replies

Subject Author
[gentoo-user-ru] Re: Размещение ebuild Dmitry Dzhus <dima@×××××.org>
Re: [gentoo-user-ru] Re: Размещение ebuild Peter Volkov <pva@g.o>