# # spec file for package make # # Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via https://bugs.opensuse.org/ # Name: make Version: 4.3 Release: 2.22 Summary: GNU make License: GPL-2.0-or-later Group: Development/Tools/Building URL: http://www.gnu.org/software/make/make.html Source: http://ftp.gnu.org/gnu/make/make-%{version}.tar.gz Source1: http://ftp.gnu.org/gnu/make/make-%{version}.tar.gz.sig # keyring downloaded from https://savannah.gnu.org/project/memberlist-gpgkeys.php?group=make&download=1 Source2: %{name}.keyring Patch1: make-testcases_timeout.diff Patch2: fix-57962.patch Patch5: test-driver.patch Patch64: make-library-search-path.diff BuildRequires: autoconf BuildRequires: automake BuildRequires: pkgconfig #Requires(post): %{install_info_prereq} #Requires(preun): %{install_info_prereq} Provides: gmake %description The GNU make command with extensive documentation. %lang_package %prep %setup -q %patch1 -p1 %patch2 -p1 %patch5 -p1 if [ %{_lib} = lib64 ]; then %patch64 -p1 fi %build autoreconf -fi export CFLAGS="%{optflags}" %configure make %{?_smp_mflags} %check make %{?_smp_mflags} check || { for f in tests/work/*/*.diff; do test -f "$f" || continue printf "++++++++++++++ %s ++++++++++++++\n" "${f##*/}" cat "$f" done } %install %make_install ln -s make %{buildroot}%{_bindir}/gmake %find_lang %{name} # gnumake.h was introduced in 4.0, looks useless rm %{buildroot}%{_includedir}/gnumake.h %files %{_bindir}/make %{_bindir}/gmake %{_infodir}/make.info-*%{ext_info} %{_infodir}/make.info%{ext_info} %{_mandir}/man1/make.1%{ext_man} %files lang -f %{name}.lang %post %install_info --info-dir=%{_infodir} %{_infodir}/%{name}.info%{ext_info} %preun %install_info_delete --info-dir=%{_infodir} %{_infodir}/%{name}.info%{ext_info} %changelog * Tue Apr 14 2020 Martin Liška - Add fix-57962.patch in order to fix bug #57962. * Sat Feb 22 2020 Bjørn Lie - No longer recommend -lang: supplements are in use. * Mon Jan 20 2020 Andreas Schwab - Update to make 4.3 * WARNING: Backward-incompatibility! Number signs (#) appearing inside a macro reference or function invocation no longer introduce comments and should not be escaped with backslashes * WARNING: Backward-incompatibility! Previously appending using '+=' to an empty variable would result in a value starting with a space * NOTE: Deprecated behavior. Contrary to the documentation, suffix rules with prerequisites are being treated BOTH as simple targets AND as pattern rules * New feature: Grouped explicit targets * New feature: .EXTRA_PREREQS variable * Makefiles can now specify the '-j' option in their MAKEFLAGS variable and this will cause make to enable that parallelism mode * Error messages printed when invoking non-existent commands have been cleaned up and made consistent. * 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 * Performance improvements provided by Paolo Bonzini - make-sorted-glob.patch, glob-lstat.patch, glob-interface.patch, pselect-non-blocking.patch: Removed, upstreamed * Fri Jul 27 2018 jengelh@inai.de - Avoid bashisms in spec * Mon Jul 16 2018 schwab@suse.de - pselect-non-blocking.patch: Use a non-blocking read with pselect to avoid hangs (bsc#1100504) * Tue Jan 23 2018 schwab@suse.de - test-driver.patch: let perl find test_driver.pl - glob-interface.patch: Support GLIBC glob interface version 2 * Mon Nov 6 2017 schwab@suse.de - glob-lstat.patch: Do not assume glibc glob internals * Wed Oct 18 2017 bwiedemann@suse.com - Add make-sorted-glob.patch to make many other packages like dpdk build reproducibly without patching them individually (boo#1041090) * Tue Sep 12 2017 schwab@suse.de - Print out testsuite results after failure * Sun Jun 12 2016 mpluskal@suse.com - Update to version 4.2.1: * bug-fix release - Drop upstream patches: * 0001-SV-47995-Ensure-forced-double-colon-rules-work-with-.patch * 0002-main.c-main-SV-48009-Reset-stack-limit-for-make-re-e.patch - Small spec file cleanup * man and info pages are implicitly marked as documentation * Mon May 23 2016 schwab@suse.de - Update to make 4.2 * New variable: $(.SHELLSTATUS) is set to the exit status of the last != or $(shell ...) function invoked in this instance of make. * The $(file ...) function can now read from a file with $(file 1 object.. Add oneshell to $(.FEATURES). Fix the NEWS file to be accurate. - make-savannah-bug30723-expand_makeflags_before_reexec.diff Fix Savannah bug #30723: expand MAKEFLAGS before we re-exec after rebuilding makefiles. * Mon Aug 30 2010 mhopf@novell.com - Disable some inherrently broken test cases. * Mon Aug 23 2010 mhopf@novell.com - Update to 3.82 - Bug fixes - Backwards Incompatibilities: - Makefiles with .POSIX target: shells called with -e - $? contains prerequisites even if not existent - Prerequisite with '=' cannot be backslash escaped any more (use variable with '=' instead) - Variable names may not contain whitespaces any more - Mixture of explicit and pattern targets didn't always fail - Pattern specific rules application order changed - Library search behavior now compatible with standard linker - New features - --eval=STRING: Evaluate makefile syntax string before makefile - Variable .RECIPEPREFIX: Exchange TAB character - Variable .SHELLFLAGS: Options passed to shells - Target .ONESHELL: Single instance of shell for recipe - Modifier private: Suppresses inheritance of variables - Directive undefine: Undefine variable - Changed features - Multiple modifiers for variables allowed now. - Directive define: Allow variable assignment operator. - Nuke memory-hog-2.diff which didn't apply since 3.81 - Addapt make-slowdown-parallelism.diff to new parallelization tests - Separate make checks into %%checks section * Mon Jun 28 2010 jengelh@medozas.de - use %%_smp_mflags * Mon May 24 2010 coolo@novell.com - fix test case * Fri Jan 8 2010 ro@suse.de - enable parallel build * Mon May 14 2007 coolo@suse.de - use %%find_lang * Tue Oct 31 2006 mhopf@suse.de - Reducing race probability in test case features/parallelism even more. * Wed Jun 7 2006 mhopf@suse.de - Improving occasional build failures due to races in test cases. * Mon May 29 2006 mhopf@suse.de - Update to 3.81 - Bug fixes - New functions: lastword, abspath, realpath, info, flavor, or, and - New variables: .INCLUDE_DIRS, .FEATURES, .DEFAULT_GOAL, MAKE_RESTARTS, $| - Some new features - More POSIX compatibility - memory-hog-2.diff doesn't apply any longer * Wed Feb 1 2006 kssingvo@suse.de - fix for memory-hog.diff (bugzilla#147229) * Wed Feb 1 2006 kssingvo@suse.de - disabled memory-hog.diff due to crashes (bugzilla#147229) * Wed Jan 25 2006 mls@suse.de - converted neededforbuild to BuildRequires * Thu Jan 19 2006 aj@suse.de - Reduce memory usage. * Fri Jan 9 2004 adrian@suse.de - do not strip binaries during install * Tue Sep 30 2003 stepan@suse.de - fix "virtual memory exhausted" bug (backport from mainline) * Thu Apr 24 2003 ro@suse.de - fix install_info --delete call and move from preun to postun * Wed Apr 16 2003 coolo@suse.de - use BuildRoot * Fri Feb 7 2003 ro@suse.de - added install_info macros * Mon Dec 30 2002 aj@suse.de - Update to version 3.80: - number of bug fixes - new features as mentioned in the NEWS file: * New functions $(value ...), $(eval ...) * New feature: order-only prerequesites. * Argument to ifdef can now be a variable. * new option --always-make * Tue Sep 17 2002 ro@suse.de - removed bogus self-provides * Thu May 23 2002 meissner@suse.de - Made %%_lib fix generic, do not use ifarch. * Mon Apr 22 2002 meissner@suse.de - x86_64 needs /*/lib64 as search path too. * Fri Apr 19 2002 ke@suse.de - Update German translation from http://www.iro.umontreal.ca/contrib/po/teams/PO/de/ [# 15851]. * Tue Dec 11 2001 froh@suse.de - s390x, sparc64 and ia64: extended the 'Dynamic Library Search' default path to search /lib64 and /usr/lib64 as well. * Wed Nov 28 2001 fehr@suse.de - add mo-files for translations of messages * Wed May 9 2001 cstein@suse.de - repacked source files with bzip2 * Fri Nov 17 2000 fehr@suse.de - set group tag * Mon Jun 26 2000 fehr@suse.de - change to new version 3.79.1 * Wed Apr 19 2000 fehr@suse.de - change to new version 3.79 * Mon Feb 14 2000 fehr@suse.de - add compatibility link gmake -> make, needed for oracle install * Thu Jan 20 2000 fehr@suse.de - security fix for files created in /tmp when using -j * Mon Jan 17 2000 schwab@suse.de - Update to 3.78.1. - Get rid of Makefile.Linux. - Run testsuite. * Fri Jan 14 2000 schwab@suse.de - Fix glob problem. * Wed Oct 13 1999 schwab@suse.de - Fix file list. - Add autoconf to needforbuild * Mon Sep 13 1999 bs@suse.de - ran old prepare_spec on spec file to switch to new prepare_spec. * Tue Feb 23 1999 ro@suse.de - updated to 3.77 using fixes by c. gafton * Wed Sep 23 1998 ro@suse.de - downgrade to 3.76.1 (works at least) * Tue Sep 22 1998 ro@suse.de - update to 3.77 * Thu Oct 9 1997 florian@suse.de - prepare for autobuild Mon Sep 2 02:48:35 MET DST 1996 update to version 3.75