Package init

This commit is contained in:
overweight 2019-09-30 11:03:18 -04:00
commit 79bf714164
7 changed files with 188 additions and 0 deletions

19
make-4.0-newlines.patch Normal file
View File

@ -0,0 +1,19 @@
diff -Nrup a/src/job.c b/src/job.c
--- a/src/job.c 2014-02-03 18:23:45.936436714 -0500
+++ b/src/job.c 2014-02-04 00:17:53.232074893 -0500
@@ -3269,13 +3269,14 @@ construct_command_argv_internal (char *l
#endif
if (PRESERVE_BSNL)
{
- *(ap++) = '\\';
+ *(ap++) = '\'';
/* Only non-batch execution needs another backslash,
because it will be passed through a recursive
invocation of this function. */
if (!batch_mode_shell)
*(ap++) = '\\';
*(ap++) = '\n';
+ *(ap++) = '\'';
}
++p;
continue;

View File

@ -0,0 +1,14 @@
diff -up make-3.82/configure\~ make-3.82/configure
--- make-3.82/configure~ 2010-07-28 07:41:51.000000000 +0200
+++ make-3.82/configure 2010-08-11 15:07:50.000000000 +0200
@@ -7215,7 +7215,7 @@ return clock_gettime ();
return 0;
}
_ACEOF
-for ac_lib in '' rt posix4; do
+for ac_lib in '' posix4; do
if test -z "$ac_lib"; then
ac_res="none required"
else
Diff finished. Wed Aug 11 15:07:59 2010

View File

@ -0,0 +1,16 @@
diff -up make-3.82/src/job.c\~ make-3.82/src/job.c
--- make-3.82/src/job.c~ 2010-08-11 16:13:33.000000000 +0200
+++ make-3.82/src/job.c 2010-08-12 14:20:08.000000000 +0200
@@ -2442,7 +2442,11 @@ construct_command_argv_internal (char *l
/* See if it is safe to parse commands internally. */
if (shell == 0)
- shell = default_shell;
+ {
+ shell = default_shell;
+ if (shellflags == 0)
+ shellflags = "-c";
+ }
#ifdef WINDOWS32
else if (strcmp (shell, default_shell))
{

12
make-4.2-getcwd.patch Normal file
View File

@ -0,0 +1,12 @@
diff -Nrup a/src/makeint.h b/src/makeint.h
--- a/src/makeint.h 2016-05-21 16:22:32.000000000 -0400
+++ b/src/makeint.h 2016-09-22 16:12:38.606702160 -0400
@@ -596,7 +596,7 @@ long int lseek ();
# endif
# ifdef HAVE_GETCWD
-# if !defined(VMS) && !defined(__DECC)
+# if !defined(VMS) && !defined(__DECC) && !defined(getcwd)
char *getcwd ();
# endif
# else

25
make-4.2-j8k.patch Normal file
View File

@ -0,0 +1,25 @@
diff -Nrup a/src/main.c b/src/main.c
--- a/src/main.c 2016-05-31 03:17:26.000000000 -0400
+++ b/src/main.c 2016-09-22 16:18:52.283889265 -0400
@@ -2051,6 +2051,21 @@ main (int argc, char **argv, char **envp
}
#endif
+#ifdef PIPE_BUF
+ if (job_slots > PIPE_BUF)
+#elif defined _POSIX_PIPE_BUF
+ if (job_slots > _POSIX_PIPE_BUF)
+#else
+ if (job_slots > 512)
+#endif
+ {
+ O (error, NILF,
+ _("More parallel jobs (-jN) than this platform can handle requested."));
+ O (error, NILF, _("Resetting to single job (-j1) mode."));
+ job_slots = 1;
+ }
+
+
/* If we have >1 slot at this point, then we're a top-level make.
Set up the jobserver.

BIN
make-4.2.90.tar.gz Normal file

Binary file not shown.

102
make.spec Normal file
View File

@ -0,0 +1,102 @@
Name: make
Epoch: 1
Version: 4.2.90
Release: 2
Summary: A tool which controls the generation of executables and non-source files of a program
License: GPLv3+
URL: http://www.gnu.org/software/make/
Source0: ftp://ftp.gnu.org/gnu/make/%{name}-%{version}.tar.gz
Patch0: make-4.0-newlines.patch
Patch1: make-4.0-noclock_gettime.patch
Patch2: make-4.0-weird-shell.patch
Patch3: make-4.2-getcwd.patch
Patch4: make-4.2-j8k.patch
BuildRequires: gcc git autoconf automake procps
BuildRequires: guile-devel perl-interpreter
Requires(post): /sbin/install-info
Requires(preun): /sbin/install-info
%description
GNU Make is a tool which controls the generation of executables and other
non-source files of a program from the program's source files.
Make gets its knowledge of how to build your program from a file called
the makefile, which lists each of the non-source files and how to compute
it from other files. When you write a program, you should write a makefile
for it, so that it is possible to use Make to build and install the program.
%package devel
Summary: Development files for %{name}
Requires: %{name} = %{version}-%{release}
%description devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.
%package help
Summary: Doc files for %{name}
Requires: man
Buildarch: noarch
%description help
The %{name}-help package contains doc files for %{name}.
%prep
%autosetup -n %{name}-%{version} -p1
rm -f tests/scripts/features/parallelism.orig
%build
touch configure aclocal.m4 Makefile.in
%configure --with-guile
%make_build
%install
%make_install
ln -sf make %{buildroot}/%{_bindir}/gmake
ln -sf make.1 %{buildroot}/%{_mandir}/man1/gmake.1
rm -f %{buildroot}/%{_infodir}/dir
%find_lang %name
%check
/usr/bin/env LANG=C make check && true
%post
if [ -f %{_infodir}/make.info.gz ]; then
/sbin/install-info %{_infodir}/make.info.gz %{_infodir}/dir --entry="* Make: (make). The GNU make utility." || :
fi
%preun
if [ $1 = 0 ]; then
if [ -f %{_infodir}/make.info.gz ]; then
/sbin/install-info --delete %{_infodir}/make.info.gz %{_infodir}/dir --entry="* Make: (make). The GNU make utility." || :
fi
fi
%files -f %{name}.lang
%doc AUTHORS
%license COPYING
%{_bindir}/*
%{_includedir}/*
%files devel
%{_includedir}/*
%files help
%doc NEWS README
%{_mandir}/*/*
%{_infodir}/*
%changelog
* Tue Sep 27 2019 luhuaxin <luhuaxin@huawei.com> - 1:4.2.90-2
- Type: enhancement
- ID: NA
- SUG: NA
- DESC: move README file to main package, fix last changelog
* Tue Sep 10 2019 luhuaxin <luhuaxin@huawei.com> - 1:4.2.90-1
- Package init