On Thu, Sep 07, 2000 at 02:34:08PM -1000, Tony Denault wrote:
> I had the same problem in the 1.2.x series. I used a mounted source code
> partition (/usr/shared/src), and tried to compile gtk on different
> version of solaris (2.6, 2.7) on our network. I keep getting an error
> on one machine until I manually deleted ./config.cashe. I assumed 'make
> clean' would be enough - I think is a fair assumption.

Some might think so, but automake, which generates, from the Makefile.am
files in the GTK+ distribution, the Makefile.in files whence the
Makefiles are generated, doesn't think so - and, it appears, the GNU
coding standards may not think so either.

GTK+ isn't the only package that uses automake, so you'll probably find
said assumption not honored by a lot of other software, and some
software that doesn't use automake also doesn't honor that assumption,
e.g. libpcap and tcpdump.

> I would really suggest that make clean deletes this files.
> Is the makefile maintainer listening?

That depends on whether one can make a Perl script listen:

        % file `which automake`
        /usr/local/bin/automake: perl script text executable

The "clean" rule is "maintained" by automake, not by a human; it doesn't
appear in "Makefile.am", it's generated by automake.

The same applies to the "distclean" rule; it removes a number of files
that "make clean" doesn't, including...

..."config.cache".

The GNU Coding Standards document at

        http://www.gnu.org/prep/standards.html

says, in the "Standard Targets for Users" section at

        http://www.gnu.org/prep/standards.html#SEC53

the following:

        `clean' 
               Delete all files from the current directory that are normally
               created by building the program.  Don't delete the files that
                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
               record the configuration.  Also preserve files that could be
               ^^^^^^^^^^^^^^^^^^^^^^^^
               made by building, but normally aren't because the distribution
               comes with them.  Delete `.dvi' files here if they are not part
               of the distribution.

        `distclean'
               Delete all files from the current directory that are created by
               configuring or building the program.  If you have unpacked the
               source and built the program without creating any other files,
               `make distclean' should leave only the files that were in the
               distribution.

Depending on whether you consider "config.cache" to "record the
configuration" or not, that might say that "clean" *shouldn't* delete
"config.cache".

It also says that "distclean" should delete "config.cache", as it's
"created by configuring ... the program".

I'd suggest using "make distclean", not just "make clean", before
reconfiguring on a different platform.

_______________________________________________
gtk-list mailing list
[EMAIL PROTECTED]
http://mail.gnome.org/mailman/listinfo/gtk-list

Reply via email to