Re: make 4.3 - F32 or F33?

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

 



On Tue, Jan 21, 2020 at 2:03 PM DJ Delorie <dj@xxxxxxxxxx> wrote:
>
>
> I've taken a look at the new make release, and updating Fedora's make
> won't be that tricky (aside from some noted backwards
> incompatibilities[1], who knows) but I see no reason to rush it into a
> last-minute update this close to branching F32.  My current plan is to
> introduce it to rawhide just after the F32 branch to give folks time
> to see if the update breaks anything, but I'm open to convincing
> arguments to push it (or backport it) into F32 also.
>
> We also have some paranoia patches leftover from the 3.8->4.0 update,
> including one that changes how newlines are quoted in shell jobs
> (upstream quotes backslashes and newlines with more backslashes,
> Fedora quotes them with '').  Does anyone have any opinions on this?
> Other distros don't have similar patches, but... paranoia :-)
>
>
>
> [1] From NEWS:
>
> * WARNING: Backward-incompatibility!
>   Number signs (#) appearing inside a macro reference or function invocation
>   no longer introduce comments and should not be escaped with backslashes:
>   thus a call such as:
>     foo := $(shell echo '#')
>   is legal.  Previously the number sign needed to be escaped, for example:
>     foo := $(shell echo '\#')
>   Now this latter will resolve to "\#".  If you want to write makefiles
>   portable to both versions, assign the number sign to a variable:
>     H := \#
>     foo := $(shell echo '$H')
>   This was claimed to be fixed in 3.81, but wasn't, for some reason.
>   To detect this change search for 'nocomment' in the .FEATURES variable.
>
> * WARNING: Backward-incompatibility!
>   Previously appending using '+=' to an empty variable would result in a value
>   starting with a space.  Now the initial space is only added if the variable
>   already contains some value.  Similarly, appending an empty string does not
>   add a trailing space.
>
> * NOTE: Deprecated behavior.
>   Contrary to the documentation, suffix rules with prerequisites are being
>   treated BOTH as simple targets AND as pattern rules.  Further, the
>   prerequisites are ignored by the pattern rules.  POSIX specifies that in
>   order to be a suffix rule there can be no prerequisites defined.  In this
>   release if POSIX mode is enabled then rules with prerequisites cannot be
>   suffix rules.  If POSIX mode is not enabled then the previous behavior is
>   preserved (a pattern rule with no extra prerequisites is created) AND a
>   warning about this behavior is generated:
>     warning: ignoring prerequisites on suffix rule definition
>   The POSIX behavior will be adopted as the only behavior in a future release
>   of GNU make so please resolve any warnings.

These issues don't seem significant enough to hold back to Fedora
33... The backward incompatibility about appending is unlikely to be
behavior that Makefiles depend on, and I haven't seen any Makefiles
abusing the comment thing (not to say that there isn't any, but I
think they'd be rare enough to be easily fixed if encountered).



-- 
真実はいつも一つ!/ Always, there's only one truth!
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux