[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Automake-NG] [PATCH 04/14] [ng] clean: revamp recipes and APIs to e
From: |
Stefano Lattarini |
Subject: |
Re: [Automake-NG] [PATCH 04/14] [ng] clean: revamp recipes and APIs to extend cleaning rules |
Date: |
Thu, 21 Jun 2012 20:41:14 +0200 |
On 06/21/2012 02:49 PM, Akim Demaille wrote:
>
> Le 21 juin 2012 à 12:32, Stefano Lattarini a écrit :
>
>> This change it introduces eight new internal variables, which our
>
> all
>
Thanks, fixed ("our" was a leftover from a previous, alternative wording).
>> can been appended to by our Makefile fragments to declare stuff that
>> should be cleaned upon the various "make *clean" targets; these new
>> variables are:
>>
>> - am__mostlyclean_files, am__mostlyclean_dirs
>> - am__clean_files, am__clean_dirs
>> - am__distclean_files, am__distclean_dirs
>> - am__maintclean_files, am__maintclean_dirs
>>
>> This change also ensures that the contents of the $(MOSTLYCLEANFILES),
>> $(CLEANFILES), $(DISTCLEANFILES) and $(MAINTAINERCLEANFILES) variables
>> will be cleaned even if those variables where not defined in the
>
> were
>
*Blush* Fixed as well.
>> Makefile.am (so that it is now possible to, e.g., define them in a
>> wrapper GNUmakefile including the Automake-generated Makefile, and
>> still have the relevant '*clean' targets remove them).
>
> Sounds good. Much better than the *-local approach.
>
Oh blissful concord :-)
>
>
>> diff --git a/automake.in b/automake.in
>> index 66071e5..46f22d1 100644
>> --- a/automake.in
>> +++ b/automake.in
>> @@ -2260,20 +2260,17 @@ sub handle_libtool
>> require_conf_file_with_macro (TRUE, 'LIBTOOL', FOREIGN, @libtool_files)
>> if $relative_dir eq '.' && ! $libtool_new_api;
>>
>> - my @libtool_rms;
>> - foreach my $item (sort keys %libtool_clean_directories)
>> - {
>> - my $dir = ($item eq '.') ? '' : "$item/";
>> - # .libs is for Unix, _libs for DOS.
>> - push (@libtool_rms, "\t-rm -rf ${dir}.libs ${dir}_libs");
>> - }
>> -
>> + # .libs is for Unix, _libs for DOS.
>> + my @libtool_clean_directories = map { ("$_/.libs", "$_/_libs") }
>> + (sort keys %libtool_clean_directories);
>> check_user_variables 'LIBTOOLFLAGS';
>>
>> # Output the libtool compilation rules.
>> - $output_rules .= &file_contents ('libtool',
>> - new Automake::Location,
>> - LTRMS => join ("\n", @libtool_rms));
>> + # FIXME: actually, this only output the libtool cleaning rules …
>
> outputs
>
I'd rather not touch this typo, since this comment is removed by a later
patch in the series, and touching it would cause needless rebase conflicts.
>
>> +## Some files must be cleaned only in VPATH builds -- e.g., those linked
>> +## in usages like "AC_CONFIG_LINKS([GNUmakefile:GNUmakefile])".
>> +am__distclean_files += $(if $(filter
>> .,$(srcdir)),,$(CONFIG_CLEAN_VPATH_FILES))
>> +
>> +## Built sources are automatically removed by maintainer-clean.ù
>
> ù
>
Damned clumsy fingers... Fixed.
>> + $(call .am.clean-cmd.f,$(am__mostlyclean_files))
>> + $(call .am.clean-cmd.d,$(am__mostlyclean_dirs))
>
> You could also just pass the name of the variable.
>
I don't follow. What do you mean?
> Good!
>
Thanks,
Stefano
- Re: [Automake-NG] [PATCH 03/14] [ng] clean: simplify cleaning of compiled objects, (continued)
Re: [Automake-NG] [PATCH 03/14] [ng] clean: simplify cleaning of compiled objects, Dave Hart, 2012/06/21
[Automake-NG] [PATCH 02/14] [ng] deptrack: clean depdirs using *clean-am targets, Stefano Lattarini, 2012/06/21
[Automake-NG] [PATCH 04/14] [ng] clean: revam p recipes and APIs to extend cleaning rules, Stefano Lattarini, 2012/06/21
Re: [Automake-NG] [PATCH 04/14] [ng] clean: revamp recipes and APIs to extend cleaning rules, Dave Hart, 2012/06/21
[Automake-NG] [PATCH 06/14] [ng] automake: new global variable '%clean_dirs', Stefano Lattarini, 2012/06/21
[Automake-NG] [PATCH 05/14] [ng] clean: do not ignore errors while removing files, Stefano Lattarini, 2012/06/21