Merge remote-tracking branch 'origin/3.7' into 3.8

This commit is contained in:
Juergen Daubert 2024-03-09 11:15:13 +01:00
commit bfc0afe830
8 changed files with 758 additions and 27 deletions

View File

@ -1,5 +1,6 @@
untrusted comment: verify with /etc/ports/core.pub
RWRJc1FUaeVeqphlHpQTgnf1FjCrrJo7RkIN02bInol6huntF/HAmLWCHdhx+kW/A3zsPXepc2uPNh3SIucWP/wAs6nfcQoVbQo=
SHA256 (Pkgfile) = cd3336dfa80faf0ba2f6c7418fc032d58f743680635436e60ad507393c595bac
RWRJc1FUaeVeqlzN84THd23JXqwwj2O9sBXOuqkcNjdBVB7/2b5RjcxObXCuuEUVdxz38dMEdCDzaNDBfy8FD8mnk4vNEKP+Vgg=
SHA256 (Pkgfile) = 8775942cb9ee8eafa70a7b1dc1697f21badbe64eeac34dec0df394f532e626de
SHA256 (.footprint) = 3a7bbfc94c40691a4871ab86fb334dfcbc7f98f74ed06847f091ba0b1721d540
SHA256 (dash-0.5.12.tar.gz) = 6a474ac46e8b0b32916c4c60df694c82058d3297d8b385b74508030ca4a8f28a
SHA256 (dash-20230109.patch) = 8a0c2b670b18cb0a4b7f5816e89e11dcebf8e5638cd4d8041e839f83bb39872c

View File

@ -4,14 +4,17 @@
name=dash
version=0.5.12
release=1
source=(http://gondor.apana.org.au/~herbert/dash/files/$name-$version.tar.gz)
release=2
source=(http://gondor.apana.org.au/~herbert/dash/files/$name-$version.tar.gz
$name-20230109.patch)
build() {
cd $name-$version
./configure --prefix=/usr \
--bindir=/bin
patch -p1 -i $SRC/$name-20230109.patch
autoreconf -if
./configure --prefix=/usr --bindir=/bin
make
make DESTDIR=$PKG install

729
dash/dash-20230109.patch Normal file
View File

@ -0,0 +1,729 @@
diff --git a/configure.ac b/configure.ac
index 52aa429..5524650 100644
--- a/configure.ac
+++ b/configure.ac
@@ -177,6 +177,17 @@ if test "$have_st_mtim" = "yes"; then
[Define if your `struct stat' has `st_mtim'])
fi
+dnl F_DUPFD_CLOEXEC is a mandatory part of POSIX since Issue 7
+AC_MSG_CHECKING(for F_DUPFD_CLOEXEC)
+AC_COMPILE_IFELSE(
+[AC_LANG_PROGRAM([#include <unistd.h>
+#include <fcntl.h>],
+[return fcntl(0, F_DUPFD_CLOEXEC, 0)])],
+have_dupfd_cloexec=1, have_dupfd_cloexec=0)
+AC_MSG_RESULT($(expr yes \& $have_dupfd_cloexec \| no))
+AC_DEFINE_UNQUOTED([HAVE_F_DUPFD_CLOEXEC], [$have_dupfd_cloexec],
+ [Define to 1 your system supports F_DUPFD_CLOEXEC])
+
AC_ARG_WITH(libedit, AS_HELP_STRING(--with-libedit, [Compile with libedit support]))
use_libedit=
if test "$with_libedit" = "yes"; then
diff --git a/src/alias.c b/src/alias.c
index daeacbb..fcad43b 100644
--- a/src/alias.c
+++ b/src/alias.c
@@ -197,7 +197,8 @@ freealias(struct alias *ap) {
void
printalias(const struct alias *ap) {
- out1fmt("%s=%s\n", ap->name, single_quote(ap->val));
+ out1str(single_quote(ap->name));
+ out1fmt("=%s\n", single_quote(ap->val));
}
STATIC struct alias **
diff --git a/src/dash.1 b/src/dash.1
index ff02237..d3893bc 100644
--- a/src/dash.1
+++ b/src/dash.1
@@ -1095,6 +1095,8 @@ etc).
.It :
.It true
A null command that returns a 0 (true) exit value.
+.It false
+A null command that returns a 1 (false) exit value.
.It \&. file
The commands in the specified file are read and executed by the shell.
.It alias Op Ar name Ns Op Ar "=string ..."
@@ -1143,8 +1145,8 @@ Do not execute the command but
search for the command and print the absolute pathname
of utilities, the name for builtins or the expansion of aliases.
.El
-.It cd Ar -
-.It Xo cd Op Fl LP
+.It cd|chdir Ar -
+.It Xo cd|chdir Op Fl LP
.Op Ar directory
.Xc
Switch to the specified directory (default
@@ -1342,13 +1344,12 @@ The number of previous commands that are accessible.
.El
.It fg Op Ar job
Move the specified job or the current job to the foreground.
-.It getopts Ar optstring var
+.It getopts Ar optstring var Op Ar arg ...
The
.Tn POSIX
.Ic getopts
command, not to be confused with the
-.Em Bell Labs
--derived
+.Em Bell Labs Ns -derived
.Xr getopt 1 .
.Pp
The first argument should be a series of letters, each of which may be
@@ -1386,6 +1387,12 @@ then
.Ev OPTARG
will be unset.
.Pp
+By default, the variables
+.Va $1 , ... , $n
+are inspected; if
+.Ar arg Ns s
+are specified, they'll be parsed instead.
+.Pp
.Va optstring
is a string of recognized option letters (see
.Xr getopt 3 ) .
@@ -1430,7 +1437,7 @@ do
\\?) echo $USAGE; exit 1;;
esac
done
-shift `expr $OPTIND - 1`
+shift $((OPTIND - 1))
.Ed
.Pp
This code will accept any of the following as equivalent:
@@ -1441,7 +1448,8 @@ cmd \-a \-c arg file file
cmd \-carg -a file file
cmd \-a \-carg \-\- file file
.Ed
-.It hash Fl rv Ar command ...
+.It hash Op Ar command ...
+.It hash Fl r
The shell maintains a hash table which remembers the
locations of commands.
With no arguments whatsoever,
@@ -1457,13 +1465,51 @@ With arguments, the
.Ic hash
command removes the specified commands from the hash table (unless
they are functions) and then locates them.
-With the
-.Fl v
-option, hash prints the locations of the commands as it finds them.
The
.Fl r
option causes the hash command to delete all the entries in the hash table
except for functions.
+.It jobs Oo Fl lp Oc Op Ar job ...
+Display the status of all, or just the specified,
+.Ar job Ns s :
+.Bl -tag -compact -offset 5n -width "By default"
+.It By default
+display the job number, currency
+.Pq Sy +-
+status, if any, the job state, and its shell command.
+.It Fl l
+also output the PID of the group leader, and just the PID and shell commands
+of other members of the job.
+.It Fl p
+Display only leader PIDs, one per line.
+.El
+.It kill Oo Fl s Ar sigspec | Fl Ns Ar signum | Fl Ns Ar sigspec Oc Op Ar pid | job ...
+Equivalent to
+.Xr kill 1 ,
+but a
+.Ar job
+spec may also be specified.
+Signals can be either case-insensitive names without
+.Dv SIG
+prefixes or decimal numbers; the default is
+.Dv TERM .
+.It kill Fl l Op Ar signum | exitstatus
+List available signal names without the
+.Dv SIG
+prefix
+.Pq Ar sigspec Ns s .
+If
+.Ar signum
+specified, display just the
+.Ar sigspec
+for that signal.
+If
+.Ar exitstatus
+specified
+.Pq > Sy 128 ,
+display just the
+.Ar sigspec
+that caused it.
.It pwd Op Fl LP
builtin command remembers what the current directory
is rather than recomputing it each time.
@@ -1528,41 +1574,36 @@ With the
option specified the output will be formatted suitably for non-interactive use.
.\".Pp
.It Xo printf Ar format
-.Op Ar arguments ...
+.Oo Ar value Oc Ns ...
.Xc
.Ic printf
-formats and prints its arguments, after the first, under control
-of the
-.Ar format .
-The
-.Ar format
-is a character string which contains three types of objects: plain characters,
+formats and prints its arguments according to
+.Ar format ,
+a character string which contains three types of objects: plain characters,
which are simply copied to standard output, character escape sequences which
are converted and copied to the standard output, and format specifications,
each of which causes printing of the next successive
-.Ar argument .
+.Ar value .
.Pp
-The
-.Ar arguments
-after the first are treated as strings if the corresponding format is
+Each
+.Ar value
+is treated as a string if the corresponding format specification is
either
.Cm b ,
-.Cm c
+.Cm c ,
or
.Cm s ;
-otherwise it is evaluated as a C constant, with the following extensions:
-.Pp
+otherwise it is evaluated as a C constant, with the following additions:
.Bl -bullet -offset indent -compact
.It
A leading plus or minus sign is allowed.
.It
-If the leading character is a single or double quote, the value is the
-.Tn ASCII
-code of the next character.
+If the leading character is a single or double quote, the value of the next byte.
.El
.Pp
-The format string is reused as often as necessary to satisfy the
-.Ar arguments .
+The format string is reused as often as necessary until all
+.Ar value Ns s
+are consumed.
Any extra format specifications are evaluated with zero or the null
string.
.Pp
@@ -2121,7 +2162,7 @@ printed; for commands and tracked aliases the complete pathname of the
command is printed.
.It ulimit Xo
.Op Fl H \*(Ba Fl S
-.Op Fl a \*(Ba Fl tfdscmlpnv Op Ar value
+.Op Fl a \*(Ba Fl tfdscmlpnvwr Op Ar value
.Xc
Inquire about or set the hard or soft limits on processes or set new
limits.
@@ -2174,6 +2215,8 @@ show or set the limit on the number files a process can have open at once
.It Fl v
show or set the limit on the total virtual memory that can be
in use by a process (in kilobytes)
+.It Fl w
+show or set the limit on the total number of locks held by a process
.It Fl r
show or set the limit on the real-time scheduling priority of a process
.El
diff --git a/src/exec.c b/src/exec.c
index 87354d4..83cba94 100644
--- a/src/exec.c
+++ b/src/exec.c
@@ -36,6 +36,7 @@
#include <sys/stat.h>
#include <unistd.h>
#include <fcntl.h>
+#include <stdbool.h>
#include <stdlib.h>
#ifdef HAVE_PATHS_H
#include <paths.h>
@@ -271,11 +272,16 @@ hashcmd(int argc, char **argv)
int c;
struct cmdentry entry;
char *name;
+ bool clear;
- while ((c = nextopt("r")) != '\0') {
+ clear = false;
+ while ((c = nextopt("r")) != '\0')
+ clear = true;
+ if(clear) {
clearcmdentry();
return 0;
}
+
if (*argptr == NULL) {
for (pp = cmdtable ; pp < &cmdtable[CMDTABLESIZE] ; pp++) {
for (cmdp = *pp ; cmdp ; cmdp = cmdp->next) {
@@ -760,11 +766,11 @@ unsetfunc(const char *name)
int
typecmd(int argc, char **argv)
{
- int i;
int err = 0;
- for (i = 1; i < argc; i++) {
- err |= describe_command(out1, argv[i], NULL, 1);
+ nextopt(nullstr);
+ while (*argptr) {
+ err |= describe_command(out1, *argptr++, NULL, 1);
}
return err;
}
diff --git a/src/input.c b/src/input.c
index ec075f5..38969a7 100644
--- a/src/input.c
+++ b/src/input.c
@@ -54,9 +54,7 @@
#include "alias.h"
#include "parser.h"
#include "main.h"
-#ifndef SMALL
#include "myhistedit.h"
-#endif
#define IBUFSIZ (BUFSIZ + 1)
@@ -77,6 +75,7 @@ INCLUDE <stdio.h>
INCLUDE <unistd.h>
INCLUDE "input.h"
INCLUDE "error.h"
+INCLUDE "syntax.h"
INIT {
basepf.nextc = basepf.buf = basebuf;
@@ -85,9 +84,12 @@ INIT {
RESET {
/* clear input buffer */
- basepf.lleft = basepf.nleft = 0;
- basepf.unget = 0;
popallfiles();
+ basepf.unget = 0;
+ while (basepf.lastc[0] != '\n' &&
+ basepf.lastc[0] != PEOF &&
+ !int_pending())
+ pgetc();
}
FORKRESET {
@@ -159,6 +161,17 @@ int pgetc(void)
return __pgetc();
}
+static int stdin_clear_nonblock(void)
+{
+ int flags = fcntl(0, F_GETFL, 0);
+
+ if (flags >= 0) {
+ flags &=~ O_NONBLOCK;
+ flags = fcntl(0, F_SETFL, flags);
+ }
+
+ return flags;
+}
static int
preadfd(void)
@@ -195,22 +208,38 @@ retry:
} else
#endif
+ if (parsefile->fd)
nr = read(parsefile->fd, buf, IBUFSIZ - 1);
+ else {
+ unsigned len = IBUFSIZ - 1;
+
+ nr = 0;
+ do {
+ int err;
+
+ err = read(0, buf, 1);
+ if (err <= 0) {
+ if (nr)
+ break;
+
+ nr = err;
+ if (errno != EWOULDBLOCK)
+ break;
+ if (stdin_clear_nonblock() < 0)
+ break;
+
+ out2str("sh: turning off NDELAY mode\n");
+ goto retry;
+ }
+
+ nr++;
+ } while (!IS_DEFINED_SMALL && *buf++ != '\n' && --len);
+ }
if (nr < 0) {
if (errno == EINTR)
goto retry;
- if (parsefile->fd == 0 && errno == EWOULDBLOCK) {
- int flags = fcntl(0, F_GETFL, 0);
- if (flags >= 0 && flags & O_NONBLOCK) {
- flags &=~ O_NONBLOCK;
- if (fcntl(0, F_SETFL, flags) >= 0) {
- out2str("sh: turning off NDELAY mode\n");
- goto retry;
- }
- }
- }
}
return nr;
}
@@ -226,12 +255,11 @@ retry:
static int preadbuffer(void)
{
- char *q;
- int more;
-#ifndef SMALL
+ int first = whichprompt == 1;
int something;
-#endif
char savec;
+ int more;
+ char *q;
if (unlikely(parsefile->strpush)) {
popstring();
@@ -241,11 +269,11 @@ static int preadbuffer(void)
return PEOF;
flushall();
- more = parsefile->lleft;
+ more = input_get_lleft(parsefile);
if (more <= 0) {
again:
if ((more = preadfd()) <= 0) {
- parsefile->lleft = parsefile->nleft = 0;
+ input_set_lleft(parsefile, parsefile->nleft = 0);
return PEOF;
}
}
@@ -253,37 +281,38 @@ again:
q = parsefile->nextc;
/* delete nul characters */
-#ifndef SMALL
- something = 0;
-#endif
+ something = !first;
for (;;) {
int c;
more--;
c = *q;
- if (!c)
+ if (!c) {
memmove(q, q + 1, more);
- else {
- q++;
+ goto check;
+ }
- if (c == '\n') {
- parsefile->nleft = q - parsefile->nextc - 1;
- break;
- }
+ q++;
-#ifndef SMALL
- switch (c) {
- default:
- something = 1;
- /* fall through */
- case '\t':
- case ' ':
- break;
- }
-#endif
+ if (IS_DEFINED_SMALL)
+ goto check;
+
+ switch (c) {
+ case '\n':
+ parsefile->nleft = q - parsefile->nextc - 1;
+ goto check;
+
+ default:
+ something = 1;
+ /* fall through */
+
+ case '\t':
+ case ' ':
+ break;
}
+check:
if (more <= 0) {
parsefile->nleft = q - parsefile->nextc - 1;
if (parsefile->nleft < 0)
@@ -291,20 +320,19 @@ again:
break;
}
}
- parsefile->lleft = more;
+ input_set_lleft(parsefile, more);
- savec = *q;
+ if (!IS_DEFINED_SMALL)
+ savec = *q;
*q = '\0';
-#ifndef SMALL
if (parsefile->fd == 0 && hist && something) {
HistEvent he;
INTOFF;
- history(hist, &he, whichprompt == 1? H_ENTER : H_APPEND,
+ history(hist, &he, first ? H_ENTER : H_APPEND,
parsefile->nextc);
INTON;
}
-#endif
if (vflag) {
out2str(parsefile->nextc);
@@ -313,7 +341,8 @@ again:
#endif
}
- *q = savec;
+ if (!IS_DEFINED_SMALL)
+ *q = savec;
return (signed char)*parsefile->nextc++;
}
@@ -428,7 +457,7 @@ setinputfd(int fd, int push)
parsefile->fd = fd;
if (parsefile->buf == NULL)
parsefile->buf = ckmalloc(IBUFSIZ);
- parsefile->lleft = parsefile->nleft = 0;
+ input_set_lleft(parsefile, parsefile->nleft = 0);
plinno = 1;
}
diff --git a/src/input.h b/src/input.h
index 8c39f33..1ff5773 100644
--- a/src/input.h
+++ b/src/input.h
@@ -34,6 +34,12 @@
* @(#)input.h 8.2 (Berkeley) 5/4/95
*/
+#ifdef SMALL
+#define IS_DEFINED_SMALL 1
+#else
+#define IS_DEFINED_SMALL 0
+#endif
+
/* PEOF (the end of file marker) is defined in syntax.h */
enum {
@@ -70,7 +76,9 @@ struct parsefile {
int linno; /* current line */
int fd; /* file descriptor (or -1 if string) */
int nleft; /* number of chars left in this line */
+#ifndef SMALL
int lleft; /* number of chars left in this buffer */
+#endif
char *nextc; /* next char in buffer */
char *buf; /* input buffer */
struct strpush *strpush; /* for pushing strings at this level */
@@ -104,3 +112,19 @@ void setinputstring(char *);
void popfile(void);
void unwindfiles(struct parsefile *);
void popallfiles(void);
+
+static inline int input_get_lleft(struct parsefile *pf)
+{
+#ifdef SMALL
+ return 0;
+#else
+ return pf->lleft;
+#endif
+}
+
+static inline void input_set_lleft(struct parsefile *pf, int len)
+{
+#ifndef SMALL
+ pf->lleft = len;
+#endif
+}
diff --git a/src/miscbltin.c b/src/miscbltin.c
index 5ccbbcb..e553f9e 100644
--- a/src/miscbltin.c
+++ b/src/miscbltin.c
@@ -440,6 +440,9 @@ ulimitcmd(int argc, char **argv)
#endif
#ifdef RLIMIT_LOCKS
"w"
+#endif
+#ifdef RLIMIT_RTPRIO
+ "r"
#endif
)) != '\0')
switch (optc) {
diff --git a/src/myhistedit.h b/src/myhistedit.h
index 22e5c43..1736f62 100644
--- a/src/myhistedit.h
+++ b/src/myhistedit.h
@@ -31,9 +31,27 @@
* @(#)myhistedit.h 8.2 (Berkeley) 5/4/95
*/
+#ifdef SMALL
+typedef void History;
+typedef void EditLine;
+typedef int HistEvent;
+
+enum {
+ H_APPEND,
+ H_ENTER,
+};
+
+#define hist NULL
+
+static inline void history(History *h, HistEvent *he, int action, char *p)
+{
+}
+#else
#include <histedit.h>
extern History *hist;
+#endif
+
extern EditLine *el;
extern int displayhist;
diff --git a/src/options.c b/src/options.c
index a46c23b..2d4bd3b 100644
--- a/src/options.c
+++ b/src/options.c
@@ -409,8 +409,11 @@ getoptscmd(int argc, char **argv)
{
char **optbase;
+ nextopt(nullstr);
+ argc -= argptr - argv - 1;
+ argv = argptr - 1;
if (argc < 3)
- sh_error("Usage: getopts optstring var [arg]");
+ sh_error("Usage: getopts optstring var [arg...]");
else if (argc == 3) {
optbase = shellparam.p;
if ((unsigned)shellparam.optind > shellparam.nparam + 1) {
diff --git a/src/parser.c b/src/parser.c
index a552c47..299c260 100644
--- a/src/parser.c
+++ b/src/parser.c
@@ -615,7 +615,7 @@ void fixredir(union node *n, const char *text, int err)
else {
if (err)
- synerror("Bad fd number");
+ sh_error("Bad fd number: %s", text);
else
n->ndup.vname = makename();
}
@@ -1360,12 +1360,10 @@ parsebackq: {
struct heredoc *saveheredoclist;
int uninitialized_var(saveprompt);
- str = NULL;
+ USTPUTC(CTLBACKQ, out);
+ str = stackblock();
savelen = out - (char *)stackblock();
- if (savelen > 0) {
- str = alloca(savelen);
- memcpy(str, stackblock(), savelen);
- }
+ grabstackblock(savelen);
if (oldstyle) {
/* We must read until the closing backquote, giving special
treatment to some slashes, and then push the string and
@@ -1445,12 +1443,7 @@ done:
/* Ignore any pushed back tokens left from the backquote parsing. */
if (oldstyle)
tokpushback = 0;
- out = growstackto(savelen + 1);
- if (str) {
- memcpy(out, str, savelen);
- STADJUST(savelen, out);
- }
- USTPUTC(CTLBACKQ, out);
+ out = stnputs(str, savelen, stackblock());
if (oldstyle)
goto parsebackq_oldreturn;
else
diff --git a/src/redir.c b/src/redir.c
index 5a5835c..631ddc9 100644
--- a/src/redir.c
+++ b/src/redir.c
@@ -446,13 +446,18 @@ savefd(int from, int ofd)
int newfd;
int err;
+#if HAVE_F_DUPFD_CLOEXEC
+ newfd = fcntl(from, F_DUPFD_CLOEXEC, 10);
+#else
newfd = fcntl(from, F_DUPFD, 10);
+#endif
+
err = newfd < 0 ? errno : 0;
if (err != EBADF) {
close(ofd);
if (err)
sh_error("%d: %s", from, strerror(err));
- else
+ else if(!HAVE_F_DUPFD_CLOEXEC)
fcntl(newfd, F_SETFD, FD_CLOEXEC);
}
diff --git a/src/var.c b/src/var.c
index ef9c2bd..b70d72c 100644
--- a/src/var.c
+++ b/src/var.c
@@ -154,6 +154,10 @@ RESET {
}
#endif
+static char *varnull(const char *s)
+{
+ return (strchr(s, '=') ?: nullstr - 1) + 1;
+}
/*
* This routine initializes the builtin variables. It is called when the
@@ -266,7 +270,7 @@ struct var *setvareq(char *s, int flags)
goto out;
if (vp->func && (flags & VNOFUNC) == 0)
- (*vp->func)(strchrnul(s, '=') + 1);
+ (*vp->func)(varnull(s));
if ((vp->flags & (VTEXTFIXED|VSTACK)) == 0)
ckfree(vp->text);
@@ -531,7 +535,7 @@ poplocalvars(void)
unsetvar(vp->text);
} else {
if (vp->func)
- (*vp->func)(strchrnul(lvp->text, '=') + 1);
+ (*vp->func)(varnull(lvp->text));
if ((vp->flags & (VTEXTFIXED|VSTACK)) == 0)
ckfree(vp->text);
vp->flags = lvp->flags;

View File

@ -4,8 +4,8 @@ drwxr-xr-x root/root etc/
drwxr-xr-x root/root etc/depmod.d/
drwxr-xr-x root/root etc/modprobe.d/
drwxr-xr-x root/root lib/
lrwxrwxrwx root/root lib/libkmod.so.2 -> libkmod.so.2.4.1
-rwxr-xr-x root/root lib/libkmod.so.2.4.1
lrwxrwxrwx root/root lib/libkmod.so.2 -> libkmod.so.2.4.2
-rwxr-xr-x root/root lib/libkmod.so.2.4.2
drwxr-xr-x root/root sbin/
lrwxrwxrwx root/root sbin/depmod -> kmod
lrwxrwxrwx root/root sbin/insmod -> kmod
@ -19,7 +19,7 @@ drwxr-xr-x root/root usr/include/
-rw-r--r-- root/root usr/include/libkmod.h
drwxr-xr-x root/root usr/lib/
-rwxr-xr-x root/root usr/lib/libkmod.la
lrwxrwxrwx root/root usr/lib/libkmod.so -> ../../lib/libkmod.so.2.4.1
lrwxrwxrwx root/root usr/lib/libkmod.so -> ../../lib/libkmod.so.2.4.2
drwxr-xr-x root/root usr/lib/pkgconfig/
-rw-r--r-- root/root usr/lib/pkgconfig/libkmod.pc
drwxr-xr-x root/root usr/share/
@ -37,3 +37,5 @@ drwxr-xr-x root/root usr/share/man/man8/
-rw-r--r-- root/root usr/share/man/man8/modinfo.8.gz
-rw-r--r-- root/root usr/share/man/man8/modprobe.8.gz
-rw-r--r-- root/root usr/share/man/man8/rmmod.8.gz
drwxr-xr-x root/root usr/share/pkgconfig/
-rw-r--r-- root/root usr/share/pkgconfig/kmod.pc

View File

@ -1,5 +1,5 @@
untrusted comment: verify with /etc/ports/core.pub
RWRJc1FUaeVeqtCM07Igd4Hq0CqJ2+ABdKOCjgoePewacP30ih+gWgX7UwNuwte+SxDfBcsFgSPhUImTudlvx+7BV752eVZzVA4=
SHA256 (Pkgfile) = 67d919a8f9a98f026b6a72b6d05bafe718365b1a7ab8b971534f0672ee71d7ef
SHA256 (.footprint) = 1059277d28026bc1a9f1d757655dff5f471d577f4c860a3ca167bfca0775e4c4
SHA256 (kmod-31.tar.xz) = f5a6949043cc72c001b728d8c218609c5a15f3c33d75614b78c79418fcf00d80
RWRJc1FUaeVeqvh0bUO0hLdQSbS6ICLXhJy0iwSTfNCNU66b8QAxN+q8gYBa3/WWZRisfYkAdgm0j8uDBrOAlGEg2/XPfAMmTgU=
SHA256 (Pkgfile) = 6644a4cd8ea01a3190f6323b721fba50f83e3ad1bbfe56b87cb0242713e84bb5
SHA256 (.footprint) = 2314c85ae6562096e3c4f77c7018124a2bf6a04895448c3f82f77b319242aed2
SHA256 (kmod-32.tar.xz) = 630ed0d92275a88cb9a7bf68f5700e911fdadaf02e051cf2e4680ff8480bd492

View File

@ -3,7 +3,7 @@
# Maintainer: CRUX System Team, core-ports at crux dot nu
name=kmod
version=31
version=32
release=1
source=(https://www.kernel.org/pub/linux/utils/kernel/$name/$name-$version.tar.xz)
@ -23,18 +23,13 @@ build() {
install -d $PKG/etc/{modprobe,depmod}.d
install -d $PKG/bin
install -d $PKG/usr/share/man/{man5,man8}
install -d $PKG/usr/share/pkgconfig
install -m 0644 man/*.5 $PKG/usr/share/man/man5
install -m 0644 man/*.8 $PKG/usr/share/man/man8
ln -s kmod $PKG/sbin/modinfo
ln -s kmod $PKG/sbin/depmod
ln -s kmod $PKG/sbin/insmod
ln -s kmod $PKG/sbin/lsmod
ln -s kmod $PKG/sbin/rmmod
ln -s kmod $PKG/sbin/modprobe
ln -s ../sbin/kmod $PKG/bin/lsmod
# remove bash-completion stuff
mv $PKG/usr/{lib,share}/pkgconfig/kmod.pc
rm -r $PKG/usr/share/bash-completion
}

View File

@ -1,5 +1,5 @@
untrusted comment: verify with /etc/ports/core.pub
RWRJc1FUaeVeqreg+JZwCA/f5tXvii8xcwg7sueaXxbcDFPV8NT6nbbvB4SAIcxm82Oi19KTgBvGZwH1/1/mF66JXM5TcwMX2gg=
SHA256 (Pkgfile) = e723338ad81c8717b946da4e0fef43ddc4c9ba48be3ef778c00d220a063f2d8f
RWRJc1FUaeVeqmM63ZA0uTXmz+f0icMs3t/2nATsZqA8Il/HWTUSd8+BZXhs7FaE49GkfTqgams7VIwEzKsLHWcn1brk0/zypAA=
SHA256 (Pkgfile) = caa5181e1c0949d7dfdc6bd1bfdbb1af31d74cac89a903ebc42c4e3a5e980b2c
SHA256 (.footprint) = 160d445bf391a348f2a594e3002a71286f3b95af994a68c3d3e5fedeb1c440b1
SHA256 (psmisc-23.6.tar.xz) = 257dde06159a4c49223d06f1cccbeb68933a4514fc8f1d77c64b54f0d108822a
SHA256 (psmisc-23.7.tar.bz2) = 6b45311eb14d9c78b32c1544f50e35fa48fe0ab372450801e2ea863913ee7ed2

View File

@ -4,15 +4,16 @@
# Depends on: ncurses
name=psmisc
version=23.6
version=23.7
release=1
source=(http://downloads.sourceforge.net/project/$name/$name/$name-$version.tar.xz)
source=(https://gitlab.com/psmisc/psmisc/-/archive/v$version/$name-$version.tar.bz2)
build() {
cd $name-$version
cd $name-v$version-*
export LINGUAS=' '
./autogen.sh
./configure --prefix=/usr --disable-nls
make
make DESTDIR=$PKG install