1 |
On Monday 21 May 2012 02:41:18 Alexandre Rostovtsev wrote: |
2 |
> On Sun, 2012-05-20 at 06:32 -0400, Mike Frysinger wrote: |
3 |
> > i've extended eautoreconf to automatically call autopoint when the |
4 |
> > package uses gettext. the configure check might seem naïve, but this is |
5 |
> > how autoreconf itself does it. this hopefully shouldn't break any |
6 |
> > packages (at least, none that weren't already broken), but if you guys |
7 |
> > start seeing eautoreconf failures where there were none before, feel |
8 |
> > free to cc base-system. -mike |
9 |
> > |
10 |
> > --- autotools.eclass |
11 |
> > +++ autotools.eclass |
12 |
> > @@ -162,6 +162,9 @@ eautoreconf() { |
13 |
> > |
14 |
> > einfo "Running eautoreconf in '${PWD}' ..." |
15 |
> > [[ -n ${auxdir}${macdir} ]] && mkdir -p ${auxdir} ${macdir} |
16 |
> > eaclocal |
17 |
> > |
18 |
> > + if grep -q '^AM_GNU_GETTEXT_VERSION' configure.?? ; then |
19 |
> > + eautopoint --force |
20 |
> > + fi |
21 |
> > |
22 |
> > [[ ${CHOST} == *-darwin* ]] && g=g |
23 |
> > if ${LIBTOOLIZE:-${g}libtoolize} -n --install >& /dev/null ; then |
24 |
> > |
25 |
> > _elibtoolize --copy --force --install |
26 |
> |
27 |
> This change broke many gnome-related packages, see bug #416789. You |
28 |
> cannot assume that every package that uses AM_GNU_GETTEXT_VERSION wants |
29 |
> (just) autopoint; |
30 |
|
31 |
two things: |
32 |
- eautoreconf acts like autoreconf which means it can assume that use of |
33 |
AM_GNU_GETTEXT_VERSION implies use of `autopoint` |
34 |
- it doesn't assume *just* autopoint -- nothing is stopping you from running |
35 |
any other random tools you like (such as intltool) |
36 |
|
37 |
> there are also packages that use intltool (to be run |
38 |
> after autopoint) or glib-gettext (in which case autopoint should not be |
39 |
> used at all). |
40 |
|
41 |
so attempting to run `autoreconf` in those packages fails ? |
42 |
|
43 |
> +# @ECLASS-VARIABLE: WANT_INTLTOOL |
44 |
> +# @DESCRIPTION: |
45 |
> +# Do you want intltool? Valid values here are "latest" and "none". |
46 |
> +: ${WANT_INTLTOOL:=latest} |
47 |
> ... |
48 |
> +_intltool_atom="dev-util/intltool" |
49 |
> +if [[ -n ${WANT_INTLTOOL} ]] ; then |
50 |
> + case ${WANT_INTLTOOL} in |
51 |
> + none) _intltool_atom="" ;; |
52 |
> + latest) ;; |
53 |
> + *) die "Invalid WANT_INTLTOOL value '${WANT_INTLTOOL}'" ;; |
54 |
> + esac |
55 |
> + export WANT_LIBTOOL |
56 |
> +fi |
57 |
> ... |
58 |
> -AUTOTOOLS_DEPEND="${_automake_atom} ${_autoconf_atom} ${_libtool_atom}" |
59 |
> +AUTOTOOLS_DEPEND="${_automake_atom} ${_autoconf_atom} ${_intltool_atom} |
60 |
|
61 |
no. this adds intltool as a dependency to every package inherting this |
62 |
eclass. |
63 |
-mike |