|
|
652aeb |
# -*- coding: utf-8 -*-
|
|
|
652aeb |
# This decides the SRPM name. Set to "make" for a rolling release
|
|
|
652aeb |
# (like Fedora) or "make-latest" for a long term release that needs
|
|
|
652aeb |
# optional versioned updates.
|
|
|
652aeb |
Name: make-latest
|
|
|
652aeb |
Epoch: 1
|
|
|
652aeb |
Version: 4.3
|
|
|
652aeb |
Release: 1%{?dist}
|
|
|
652aeb |
License: GPLv3+
|
|
|
652aeb |
URL: http://www.gnu.org/software/make/
|
|
|
652aeb |
Source: ftp://ftp.gnu.org/gnu/make/make-%{version}.tar.gz
|
|
|
652aeb |
|
|
|
652aeb |
%if "%{name}" != "make"
|
|
|
652aeb |
# Set this to the sub-package base name, for "make-latest"
|
|
|
652aeb |
%global make make43
|
|
|
652aeb |
%if 0%{?rhel} > 0
|
|
|
652aeb |
%global _prefix /opt/rh/%{make}
|
|
|
652aeb |
%else
|
|
|
652aeb |
# We intentionally do not define a case for Fedora, as it should not
|
|
|
652aeb |
# need this functionality, and letting it error avoids accidents.
|
|
|
652aeb |
%{error:"Each downstream must specify its own /opt namespace"}
|
|
|
652aeb |
%endif
|
|
|
652aeb |
Summary: Meta package to include latest version of make
|
|
|
652aeb |
%else
|
|
|
652aeb |
%global make %{name}
|
|
|
652aeb |
Summary: A GNU tool which simplifies the build process for users
|
|
|
652aeb |
%endif
|
|
|
652aeb |
|
|
|
652aeb |
%if 0%{?rhel} > 0
|
|
|
652aeb |
# This gives the user the option of saying --with guile, but defaults to WITHOUT
|
|
|
652aeb |
%bcond_with guile
|
|
|
652aeb |
%else
|
|
|
652aeb |
# This gives the user the option of saying --without guile, but defaults to WITH
|
|
|
652aeb |
%bcond_without guile
|
|
|
652aeb |
%endif
|
|
|
652aeb |
|
|
|
652aeb |
Patch0: make-4.3-getcwd.patch
|
|
|
652aeb |
|
|
|
652aeb |
# Assume we don't have clock_gettime in configure, so that
|
|
|
652aeb |
# make is not linked against -lpthread (and thus does not
|
|
|
652aeb |
# limit stack to 2MB).
|
|
|
652aeb |
Patch1: make-4.0-noclock_gettime.patch
|
|
|
652aeb |
|
|
|
652aeb |
# BZs #142691, #17374
|
|
|
652aeb |
Patch2: make-4.3-j8k.patch
|
|
|
652aeb |
|
|
|
652aeb |
# https://bugzilla.redhat.com/show_bug.cgi?id=1827850
|
|
|
652aeb |
# https://savannah.gnu.org/bugs/?58232
|
|
|
652aeb |
# Remove on next make rebase
|
|
|
652aeb |
Patch3: make-4.3-cloexec.patch
|
|
|
652aeb |
|
|
|
652aeb |
# https://bugzilla.redhat.com/show_bug.cgi?id=2010506
|
|
|
652aeb |
# https://savannah.gnu.org/bugs/?59093
|
|
|
652aeb |
# Remove on next make rebase
|
|
|
652aeb |
Patch4: make-4.3-filter-out.patch
|
|
|
652aeb |
|
|
|
652aeb |
# autoreconf
|
|
|
652aeb |
BuildRequires: make
|
|
|
652aeb |
BuildRequires: autoconf, automake, gettext-devel
|
|
|
652aeb |
BuildRequires: procps
|
|
|
652aeb |
BuildRequires: perl
|
|
|
652aeb |
%if %{with guile}
|
|
|
652aeb |
BuildRequires: pkgconfig(guile-2.2)
|
|
|
652aeb |
%endif
|
|
|
652aeb |
BuildRequires: gcc
|
|
|
652aeb |
|
|
|
652aeb |
%if "%{name}" != "make"
|
|
|
652aeb |
# We're still on the make-latest package
|
|
|
652aeb |
Requires: %{make}
|
|
|
652aeb |
%description -n make-latest
|
|
|
652aeb |
The latest GNU Make, with a version-specific install
|
|
|
652aeb |
%files -n make-latest
|
|
|
652aeb |
|
|
|
652aeb |
%package -n %{make}
|
|
|
652aeb |
Summary: A GNU tool which simplifies the build process for users
|
|
|
652aeb |
%endif
|
|
|
652aeb |
|
|
|
652aeb |
%description -n %{make}
|
|
|
652aeb |
A GNU tool for controlling the generation of executables and other
|
|
|
652aeb |
non-source files of a program from the program's source files. Make
|
|
|
652aeb |
allows users to build and install packages without any significant
|
|
|
652aeb |
knowledge about the details of the build process. The details about
|
|
|
652aeb |
how the program should be built are provided for make in the program's
|
|
|
652aeb |
makefile.
|
|
|
652aeb |
|
|
|
652aeb |
%package -n %{make}-devel
|
|
|
652aeb |
Summary: Header file for externally visible definitions
|
|
|
652aeb |
|
|
|
652aeb |
%description -n %{make}-devel
|
|
|
652aeb |
The %{make}-devel package contains gnumake.h.
|
|
|
652aeb |
|
|
|
652aeb |
%prep
|
|
|
652aeb |
%autosetup -n make-%{version} -p1
|
|
|
652aeb |
|
|
|
652aeb |
rm -f tests/scripts/features/parallelism.orig
|
|
|
652aeb |
|
|
|
652aeb |
%build
|
|
|
652aeb |
autoreconf -vfi
|
|
|
652aeb |
|
|
|
652aeb |
%configure \
|
|
|
652aeb |
%if %{with guile}
|
|
|
652aeb |
--with-guile
|
|
|
652aeb |
%else
|
|
|
652aeb |
--without-guile
|
|
|
652aeb |
%endif
|
|
|
652aeb |
|
|
|
652aeb |
%make_build
|
|
|
652aeb |
|
|
|
652aeb |
%install
|
|
|
652aeb |
%make_install
|
|
|
652aeb |
ln -sf make ${RPM_BUILD_ROOT}/%{_bindir}/gmake
|
|
|
652aeb |
ln -sf make.1 ${RPM_BUILD_ROOT}/%{_mandir}/man1/gmake.1
|
|
|
652aeb |
rm -f ${RPM_BUILD_ROOT}/%{_infodir}/dir
|
|
|
652aeb |
|
|
|
652aeb |
%if "%{name}" != "make"
|
|
|
652aeb |
install -d -m 755 ${RPM_BUILD_ROOT}/etc/scl/prefixes
|
|
|
652aeb |
dirname %{_prefix} > %{make}.prefix
|
|
|
652aeb |
install -p -m 644 %{make}.prefix ${RPM_BUILD_ROOT}/etc/scl/prefixes/%{make}
|
|
|
652aeb |
|
|
|
652aeb |
echo "export PATH=%{_prefix}/bin:\$PATH" > enable.scl
|
|
|
652aeb |
install -p -m 755 enable.scl ${RPM_BUILD_ROOT}/%{_prefix}/enable
|
|
|
652aeb |
%endif
|
|
|
652aeb |
|
|
|
652aeb |
%find_lang make
|
|
|
652aeb |
|
|
|
652aeb |
%check
|
|
|
652aeb |
echo ============TESTING===============
|
|
|
652aeb |
/usr/bin/env LANG=C make check && true
|
|
|
652aeb |
echo ============END TESTING===========
|
|
|
652aeb |
|
|
|
652aeb |
%files -n %{make} -f make.lang
|
|
|
652aeb |
%license COPYING
|
|
|
652aeb |
%doc NEWS README AUTHORS
|
|
|
652aeb |
%{_bindir}/*
|
|
|
652aeb |
%{_mandir}/man*/*
|
|
|
652aeb |
%{_infodir}/*.info*
|
|
|
652aeb |
%{_includedir}/gnumake.h
|
|
|
652aeb |
%if "%{name}" != "make"
|
|
|
652aeb |
/etc/scl/prefixes/%{make}
|
|
|
652aeb |
%{_prefix}/enable
|
|
|
652aeb |
%endif
|
|
|
652aeb |
|
|
|
652aeb |
%files -n %{make}-devel
|
|
|
652aeb |
%{_includedir}/gnumake.h
|
|
|
652aeb |
|
|
|
652aeb |
%changelog
|
|
|
652aeb |
* Thu Jul 14 2022 DJ Delorie <dj@redhat.com> - 1:4.3-1
|
|
|
652aeb |
Initial commit.
|