[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Kdevelop + automake problems
From: |
Bryan Bennetts |
Subject: |
Re: Kdevelop + automake problems |
Date: |
Tue, 23 Sep 2008 16:01:21 +0100 |
***Sent again cause this mail got bounce from the automake mailing list
presumably due to the attachment (now removed)***
On Tuesday 23 September 2008 14:45:33 Brian Dessent wrote:
> Bryan Bennetts wrote:
> > So question #1 is should aclocal.m4 be in my distribution?
>
> Strictly speaking, a user should not even need m4 installed at all (nor
> autoconf, nor automake, etc) to run the configure script and build the
> software. However common courtesy dictates that you should distribute
> any macros necessary to regenerate everything. And the maintainer rules
> that automake adds by default will cause problems if you don't. (You
> can avoid this by making maintainer mode require an explicit
> --enable-maintainer-mode with AM_MAINTAINER_MODE.)
So that's a 'yes', I guess. I'm not totally sure which files are
post-configure and which are pre. A revisit of the doc is probably required,
I was hoping not to need a too in-depth knowledge of the auto-build systems,
relying on the magic of KDev to handle it, but looks like I'm not going to
get away with it :)
>
> > If I do include the aclocal.m4, the configure *still* kicks off automake
> > because of a subdirs file that is created by configure being newer than
> > the configure.in, which the Makefile.in is dependant on.
>
> What exactly do you mean by a subdirs file?
Hmm, seems it *might* be a KDE-ism. From the Makefile.am :
<snip>
$(top_srcdir)/configure.in: configure.in.in $(top_srcdir)/subdirs
cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common configure.in ;
$(top_srcdir)/subdirs:
cd $(top_srcdir) && $(MAKE) -f admin/Makefile.common subdirs
$(top_srcdir)/acinclude.m4: $(top_srcdir)/admin/acinclude.m4.in
$(top_srcdir)/admin/libtool.m4.in
@cd $(top_srcdir) && cat admin/acinclude.m4.in admin/libtool.m4.in >
acinclude.m4
</snip>
Makefile.common :
<quote>
### Makefile.common
###
### Copyright (C) 2002 by the KDE developers
### All the real work is done by the shellscript cvs.sh
</quote>
Is a fairly impenetrable make target which uses cvs.sh to create a
file 'subdirs' which lists the (you gonna love this) sub-directories in the
project - dunno why.
I've attached the tarball of the project so you can peruse at you leisure -
it'll be quicker than me quoting bits and pieces randomly.
>
> > So question #2 is WTF?!
> >
> > Thanks for any help you can provide - if there's more info you require
> > please let me know. I can send tarball of the app, just wasn't sure how
> > well the mailing list would handle it.
>
> I think the real question is how are you generating this distribution
> tarball? You should be using "make dist" and it should automatically
> include all the necessary files with correct timestamps so as to not
> require any developer tools on the end-user system. You might also want
> to run "make distcheck" and fix any problems that it reports.
Ah, well I'm using the KDevelop 'Project->Distribution & Publishing' menu
option, not sure if that uses make dist or not (probably not). I shall give
make dist a go and see if the results are more sensible.
Thanks for your help so far. I'm hoping its user error and not a problem with
KDevelop as its easy to persuade a broken user to get repaired :P
Bryan.