pkgsrc-Changes archive

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

Re: CVS commit: pkgsrc/devel/gmake



Hi,

Have you read gmake-4.3 entry of pkgsrc/doc/TODO?

o gmake-4.3 [cannot build firefox/openjdk11 etc.]

For my environment, pkgsrc/www/firefox still does not build with
gmake-4.3.

And your commit is broken because a path in your patch is wrong
and PLIST is wrong.

Please revert to previous version.

Thank you.

"Sevan Janiyan" <sevan%netbsd.org@localhost> writes:

> Module Name:  pkgsrc
> Committed By: sevan
> Date:         Fri Jun 12 14:48:38 UTC 2020
>
> Modified Files:
>       pkgsrc/devel/gmake: Makefile distinfo
> Added Files:
>       pkgsrc/devel/gmake/patches: patch-src_hash.c
> Removed Files:
>       pkgsrc/devel/gmake/patches: patch-configure patch-configure.ac
>           patch-dir.c patch-makeint.h patch-pa patch-posixos.c
>
> Log Message:
> Update to make 4.3
>
> Version 4.3 (19 Jan 2020)
>
> A complete list of bugs fixed in this version is available here:
>
> https://sv.gnu.org/bugs/index.php?group=make&report_id=111&fix_release_id=108&set=custom
>
> * 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.
>
> * WARNING: Backward-incompatibility!
>   Previously using the .SILENT pseudo-target in a makefile would force all
>   sub-makes to be invoked with the '-s' option, effectively making all
>   sub-makes silent as well.  In this release, .SILENT only has effect for the
>   current invocation of make.  As a side-effect of this, .SILENT no longer has
>   a side-effect of enabling the --no-print-directory option, which using -s
>   will do.
>
> * 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.
>
> * New feature: Grouped explicit targets
>   Pattern rules have always had the ability to generate multiple targets with
>   a single invocation of the recipe.  It's now possible to declare that an
>   explicit rule generates multiple targets with a single invocation.  To use
>   this, replace the ":" token with "&:" in the rule.  To detect this feature
>   search for 'grouped-target' in the .FEATURES special variable.
>   Implementation contributed by Kaz Kylheku <kaz%kylheku.com@localhost>
>
> * New feature: .EXTRA_PREREQS variable
>   Words in this variable are considered prerequisites of targets but they are
>   not added to any of the automatic variable values when expanding the
>   recipe.  This variable can either be global (applies to all targets) or
>   a target-specific variable.  To detect this feature search for 'extra-prereqs'
>   in the .FEATURES special variable.
>   Implementation contributed by Christof Warlich <cwarlich%gmx.de@localhost>
>
> * Makefiles can now specify the '-j' option in their MAKEFLAGS variable and
>   this will cause make to enable that parallelism mode.
>
> * GNU make will now use posix_spawn() on systems where it is available.
>   If you prefer to use fork/exec even on systems where posix_spawn() is
>   present, you can use the --disable-posix-spawn option to configure.
>   Implementation contributed by Aron Barath <baratharon%caesar.elte.hu@localhost>
>
> * Error messages printed when invoking non-existent commands have been cleaned
>   up and made consistent.
>
> * The previous limit of 63 jobs under -jN on MS-Windows is now
>   increased to 4095.  That limit includes the subprocess started by
>   the $(shell) function.
>
> * A new option --no-silent has been added, that cancels the effect of the
>   -s/--silent/--quiet flag.
>
> * A new option -E has been added as a short alias for --eval.
>
> * All wildcard expansion within GNU make, including $(wildcard ...), will sort
>   the results.  See https://savannah.gnu.org/bugs/index.php?52076
>
> * Interoperate with newer GNU libc and musl C runtime libraries.
>
> * Performance improvements provided by Paolo Bonzini <pbonzini%redhat.com@localhost>
>
> GNU make Developer News
>
> * Import the GNU standard bootstrap script to replace the hand-rolled
>   "make update" method for building code from a GNU make Git repository.
>
> * Rework the source distribution to move source files into the src/*
>   subdirectory.  This aligns with modern best practices in GNU.
>
> * Replace local portability code with Gnulib content.  Unfortunately due to a
>   problem with Gnulib support for getloadavg, this forces a requirement on
>   Automake 1.16 or above in order to build from Git.  See README.git.
>
>
> To generate a diff of this commit:
> cvs rdiff -u -r1.109 -r1.110 pkgsrc/devel/gmake/Makefile
> cvs rdiff -u -r1.36 -r1.37 pkgsrc/devel/gmake/distinfo
> cvs rdiff -u -r1.1 -r0 pkgsrc/devel/gmake/patches/patch-configure \
>     pkgsrc/devel/gmake/patches/patch-configure.ac \
>     pkgsrc/devel/gmake/patches/patch-dir.c \
>     pkgsrc/devel/gmake/patches/patch-pa \
>     pkgsrc/devel/gmake/patches/patch-posixos.c
> cvs rdiff -u -r1.8 -r0 pkgsrc/devel/gmake/patches/patch-makeint.h
> cvs rdiff -u -r0 -r1.1 pkgsrc/devel/gmake/patches/patch-src_hash.c
>
> Please note that diffs are not public domain; they are subject to the
> copyright notices on the relevant files.
>
> Modified files:
>
> Index: pkgsrc/devel/gmake/Makefile
> diff -u pkgsrc/devel/gmake/Makefile:1.109 pkgsrc/devel/gmake/Makefile:1.110
> --- pkgsrc/devel/gmake/Makefile:1.109 Sat Jan 18 23:30:28 2020
> +++ pkgsrc/devel/gmake/Makefile       Fri Jun 12 14:48:38 2020
> @@ -1,11 +1,9 @@
> -# $NetBSD: Makefile,v 1.109 2020/01/18 23:30:28 rillig Exp $
> +# $NetBSD: Makefile,v 1.110 2020/06/12 14:48:38 sevan Exp $
>  
> -DISTNAME=    make-4.2.1
> +DISTNAME=    make-4.3
>  PKGNAME=     g${DISTNAME}
> -PKGREVISION= 1
>  CATEGORIES=  devel
>  MASTER_SITES=        ${MASTER_SITE_GNU:=make/}
> -EXTRACT_SUFX=        .tar.bz2
>  
>  MAINTAINER=  pkgsrc-users%NetBSD.org@localhost
>  HOMEPAGE=    https://www.gnu.org/software/make/make.html
>
> Index: pkgsrc/devel/gmake/distinfo
> diff -u pkgsrc/devel/gmake/distinfo:1.36 pkgsrc/devel/gmake/distinfo:1.37
> --- pkgsrc/devel/gmake/distinfo:1.36  Wed Jul  4 14:09:07 2018
> +++ pkgsrc/devel/gmake/distinfo       Fri Jun 12 14:48:38 2020
> @@ -1,13 +1,8 @@
> -$NetBSD: distinfo,v 1.36 2018/07/04 14:09:07 bsiegert Exp $
> +$NetBSD: distinfo,v 1.37 2020/06/12 14:48:38 sevan Exp $
>  
> -SHA1 (make-4.2.1.tar.bz2) = 7d9d11eb36cfb752da1fb11bb3e521d2a3cc8830
> -RMD160 (make-4.2.1.tar.bz2) = 7cf74e2fd9764ffeb48f40a49077099874ad8a54
> -SHA512 (make-4.2.1.tar.bz2) = 9cf00869a2f938492554f71d8cb288b5b009b3bd0489ef164f2c8f6532fc37db5c7e20af1dea288536e7c9710ee0bc6e1ddcdfc4928a8540e6e43661741825b8
> -Size (make-4.2.1.tar.bz2) = 1407126 bytes
> +SHA1 (make-4.3.tar.gz) = 3c40e5b49b893dbb14f1e2e1f8fe89b7298cc51d
> +RMD160 (make-4.3.tar.gz) = 2f2d49f85200433a7a5119bd9d56758a3033c2c0
> +SHA512 (make-4.3.tar.gz) = 9a1185cc468368f4ec06478b1cfa343bf90b5cd7c92c0536567db0315b0ee909af53ecce3d44cfd93dd137dbca1ed13af5713e8663590c4fdd21ea635d78496b
> +Size (make-4.3.tar.gz) = 2317073 bytes
>  SHA1 (patch-af) = 8ff060ecba9d664044eabd98741253881d8c9bbe
> -SHA1 (patch-configure) = e3122c5c1bbe59ec4c233f42feb6d7952a1e1215
> -SHA1 (patch-configure.ac) = 7d22c8f5e5d349687885f55120fa2f7c1251e399
> -SHA1 (patch-dir.c) = 1616d8e26c0761c8734063806fa581ae8884b4e8
> -SHA1 (patch-makeint.h) = cb5f0889d84874a16fc10bc6f91e18c2277194cc
> -SHA1 (patch-pa) = 2c0168db7afec3da98b30392290e5b9464ea7b5e
> -SHA1 (patch-posixos.c) = 4c566b23442bcc87f776181be531957c254162de
> +SHA1 (patch-src_hash.c) = 4820633cc6b5d0d42cd8aeea46bb1b3f5f6475bd
>
> Added files:
>
> Index: pkgsrc/devel/gmake/patches/patch-src_hash.c
> diff -u /dev/null pkgsrc/devel/gmake/patches/patch-src_hash.c:1.1
> --- /dev/null Fri Jun 12 14:48:38 2020
> +++ pkgsrc/devel/gmake/patches/patch-src_hash.c       Fri Jun 12 14:48:38 2020
> @@ -0,0 +1,15 @@
> +$NetBSD: patch-src_hash.c,v 1.1 2020/06/12 14:48:38 sevan Exp $
> +
> +PCC says: hash.c:326: error: Constant "4294967295" is out of range
> +
> +--- work/make-4.3/src/hash.c.orig    2020-06-12 14:40:24.838680043 +0000
> ++++ work/make-4.3/src/hash.c
> +@@ -321,7 +321,7 @@ round_up_2 (unsigned long n)
> +   n |= (n >> 8);
> +   n |= (n >> 16);
> + 
> +-#if !defined(HAVE_LIMITS_H) || ULONG_MAX > 4294967295
> ++#if !defined(HAVE_LIMITS_H) || ULONG_MAX > 4294967295ul
> +   /* We only need this on systems where unsigned long is >32 bits.  */
> +   n |= (n >> 32);
> + #endif
>

-- 
Ryo ONODERA // ryo%tetera.org@localhost
PGP fingerprint = 82A2 DC91 76E0 A10A 8ABB  FD1B F404 27FA C7D1 15F3



Home | Main Index | Thread Index | Old Index