automake
[Top][All Lists]
Advanced

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

Re: Understanding objc.test


From: edward
Subject: Re: Understanding objc.test
Date: Fri, 16 Mar 2001 05:23:04 -0500

woops, sorry akim. i spent a day dealing with *morons* yesterday; should
have realized you were asking for something more interesting.

anyways, my 2 cents:

probably should not emit a LINK unless it's something automake knows
absolutely nothing about. in the case of overriding .m.o, perhaps we should
check extension_map first, and then *keep* the test for keys of suffix_rule
> 0.

     if (($source_suffix, $object_suffix)
  = ($1 =~ $SUFFIX_RULE_PATTERN))
     {
       $suffix_rules{$source_suffix} = $object_suffix;
       print "Sources ending in .$source_suffix become .$object_suffix\n"
  if $verbose;
       $source_suffix_pattern = "(" . join ('|', keys %suffix_rules) . ")";
     }

into something like

if (($source_suffix, $object_suffix) = ($1 =~ $SUFFIX_RULE_PATTERN) &&
  !defined($extension_map{$source_suffix}))
{
    # same as above
}

still need to think some more about it. must get. coffee.
cheers

----- Original Message -----
From: "Akim Demaille" <address@hidden>
To: "edward" <address@hidden>
Cc: <address@hidden>
Sent: Friday, March 16, 2001 4:24 AM
Subject: Re: Understanding objc.test


> >>>>> "tailbert" == tailbert  <edward> writes:
>
> tailbert> hi akim link is defined because
>
> tailbert> .m.o:
>
> tailbert> causes a trigger in finish_languages
>
> Thanks, I know this.  My question is more whether this is really what
> should happen.  I fail to understand why if the user overrides a
> suffix rule which automake would have output anyway, that should
> trigger LINK.
>
> My patch removes all the explicit push @suffixes from automake, and
> let automake discover them in the *.am files, just like in
> Makefile.am.  Suffix rules are now handled all the same way.  So I had
> to change:
>
>     # If the project is entirely C++ or entirely Fortran 77, don't
>     # bother with the C stuff.  But if anything else creeps in, then use
>     # it.
>     if ($need_link || ! $non_c || scalar keys %suffix_rules > 0)
>
> into
>
>     if ($need_link || ! $non_c || scalar keys %suffix_rules > 1)
>
> (the 1 at the end) which is much more logical and consistent: the
> question is whether there is a non pure language, or more than one
> source suffix defined.
>
> Therefore with my patch automake fails this test, and my opinion is
> that the test is wrong.
>
> But that's only MHO, so I'd like to have some less HO's from other people
:)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]