Re: Beginner's struggle to make a real gnome application (and be an educated mantainer)



On Wed, Apr 07, 1999 at 08:11:25PM -0400, Daniel Burrows wrote:

>> playlist and such. It has already received good feedback from another user.
>   Nifty!

Thanks! It will be out soon, I hope.


> > Lastly I came to autoconf and I haven't found my way in.  I consulted the

[...]

At last I figured out how it works and how to use it: now I'm studying other
packages to see how real maintainers build their packages, and I am here with
another bunch of questions:

Though I find using aclocal to build macros for automake that builds .in's for
autoconf that builds configure to build a Makefile to build my application a
procedure that needs some redesign, I'm fine with automake and autoconf with
plain, simple packages (i.e. text mode, not internationalizated applications,
that work with plain vanilla automake/autoconf), but when it comes to adding
gettext and gnome parts, things get more obscure and I need some brush up:

I've made an hello world to experiment adding infrastructure step by step, I
added gettext and here's my configure.in:

------
dnl Process this file with autoconf to produce a configure script.
AC_INIT(src/hello.c)
AM_INIT_AUTOMAKE(hello, 0.1)
AM_CONFIG_HEADER(config.h)
AC_PROG_CC
ALL_LINGUAS="it"
AM_GNU_GETTEXT
AC_OUTPUT(Makefile src/Makefile intl/Makefile po/Makefile.in)
------

All is fine except LOCALEDIR doesn't get defined. What did I miss? I looked at
gnome packages (the only internationalized sources I have handy right now) and
saw they use GNOMELOCALEDIR, no sign of LOCALEDIR except inside the intl/
untouchable directory. Do I have to add a directive to configure.in to get
LOCALEDIR defined?

Is there a target in the generated makefiles that gets rid of all generated
files (Makefiles, Makefile.ins, config.h and config.h.in, aclocal.m4, conf*
except configure.in, intl, install-sh and so on? Just to be able to get back to
the bare minimum and to be able to distinguish my work from the generated one?

What are the Makefile targets automake provides for me and what are they for?
(e.g. what's the difference between clean, mostlyclean, distclean and
mantainerclean?)

Let's add gnome, too:

I saw every gnome package comes with a macros/ directory with rules for aclocal that gets combined into my aclocal.m4: how do I cope with it?
Gnumeric uses AM_ACLOCAL_INCLUDE(macros), but it isn't defined for me: is it
the right way to go to just call "aclocal -I macros/" ? In that case, do I need
to add macros/Makefile in my AC_OUTPUT? If I do I get this:
macros/Makefile.am:31: INSIDE_GNOME_COMMON does not appear in AM_CONDITIONAL
(I took my macros directory from gnumeric 0.21).

What is the widely used directive AM_MANTAINER_MODE for?

BTW my package seems to already
gettextize/aclocal/autoheader/automake/autoconf/configure/make gracefully.

gettextize does always print this, true?
-------
You should update your own `aclocal.m4' by adding the necessary
macro packages gettext.m4, lcmessage.m4 and progtest.m4 from
the directory `/aclocal'
-------

> > Now I :wq and hope for the best.
>   Hmm, that's funny, I use ZZ. :-)

I know a gui that uses to :x

Did Larry Wall contribute to vi command set?


>   I can email you some sample Makefile.am/configure.ins if you want, I've got
> them lying around here somewhere...

Thank you, I seem to be getting a grasp on it; I think it's best for me, now,
to wait for criticisms about my own configure.in (aieee!)


>   After the game, the king and the pawn go in the same box.
>     -- Italian proverb

Funny (and shame) is I didn't know it. :-)


				Thanks! Enrico

--
GPG public key available on finger -l zinie@cs.unibo.it



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]