sysutils/toybox: update to 0.8.6

Changelog: http://landley.net/toybox/#30-11-2021

PR:		261380
This commit is contained in:
Vidar Karlsen
2022-02-13 20:19:26 +01:00
committed by Daniel Engberg
parent 25e9280a0c
commit fac8a211bf
6 changed files with 231 additions and 18 deletions

View File

@@ -1,6 +1,7 @@
PORTNAME= toybox
PORTVERSION= 0.8.5
PORTVERSION= 0.8.6
CATEGORIES= sysutils
MASTER_SITES= http://landley.net/toybox/downloads/
MAINTAINER= vidar@karlsen.tech
COMMENT= All-in-one command line
@@ -15,9 +16,6 @@ LIB_DEPENDS= libinotify.so:devel/libinotify
USES= gmake shebangfix
USE_GITHUB= yes
GH_ACCOUNT= landley
SHEBANG_FILES= scripts/bloatcheck scripts/mcm-buildall.sh \
scripts/change.sh scripts/findglobals.sh \
scripts/genconfig.sh scripts/install.sh \
@@ -27,7 +25,21 @@ SHEBANG_FILES= scripts/bloatcheck scripts/mcm-buildall.sh \
scripts/test.sh configure \
tests/*
PLIST_FILES= bin/toybox
BIN_LINKS= [ cat chgrp chmod chown cksum cpio crc32 date dos2unix echo \
egrep false fgrep fsync grep help hostname kill ln ls mkdir \
mknod mktemp mountpoint nice pidof printenv pwd rm rmdir sed \
sleep sync touch true uname unix2dos usleep vmstat
SBIN_LINKS= killall5 lsmod mkswap modinfo sysctl
USRBIN_LINKS= acpi ascii base64 basename bunzip2 bzcat cal catv chrt chvt \
clear cmp comm count cut dirname du expand factor fallocate \
file find flock fmt groups head hexedit iconv id killall link \
logger logname lspci lsusb makedevs mkfifo mkpasswd nl nohup \
od paste patch pmap printf pwdx readlink realpath renice \
reset rev seq setsid shred sort split strings tac tee test \
time timeout truncate tty uniq unlink uudecode uuencode \
uuidgen w watch wc which who whoami xargs xxd yes
USRSBIN_LINKS= chroot
post-patch:
${REINPLACE_CMD} -e 's|<sys/inotify.h>|"${LOCALBASE}/include/sys/inotify.h"|' \
@@ -39,5 +51,21 @@ do-configure:
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/toybox ${STAGEDIR}${PREFIX}/bin
${MKDIR} ${STAGEDIR}${PREFIX}/${PORTNAME}/bin
${MKDIR} ${STAGEDIR}${PREFIX}/${PORTNAME}/sbin
${MKDIR} ${STAGEDIR}${PREFIX}/${PORTNAME}/usr/bin
${MKDIR} ${STAGEDIR}${PREFIX}/${PORTNAME}/usr/sbin
.for f in ${BIN_LINKS}
${LN} -s ../../bin/toybox ${STAGEDIR}${PREFIX}/${PORTNAME}/bin/${f}
.endfor
.for f in ${SBIN_LINKS}
${LN} -s ../../bin/toybox ${STAGEDIR}${PREFIX}/${PORTNAME}/sbin/${f}
.endfor
.for f in ${USRBIN_LINKS}
${LN} -s ../../../bin/toybox ${STAGEDIR}${PREFIX}/${PORTNAME}/usr/bin/${f}
.endfor
.for f in ${USRSBIN_LINKS}
${LN} -s ../../../bin/toybox ${STAGEDIR}${PREFIX}/${PORTNAME}/usr/sbin/${f}
.endfor
.include <bsd.port.mk>

View File

@@ -1,3 +1,3 @@
TIMESTAMP = 1621778141
SHA256 (landley-toybox-0.8.5_GH0.tar.gz) = 27cc073222f3b726ee10d96c4f32ac2c4c936b07ea195227736755971e6d90c9
SIZE (landley-toybox-0.8.5_GH0.tar.gz) = 2387752
TIMESTAMP = 1643028839
SHA256 (toybox-0.8.6.tar.gz) = 4298c90a2b238348e4fdc9f89eb4988356c80da3f0cf78c279d2e82b9119034b
SIZE (toybox-0.8.6.tar.gz) = 3458765

View File

@@ -1,4 +1,4 @@
--- lib/portability.c.orig 2021-05-19 08:34:26 UTC
--- lib/portability.c.orig 2021-12-02 04:45:52 UTC
+++ lib/portability.c
@@ -6,6 +6,10 @@
@@ -11,7 +11,16 @@
// We can't fork() on nommu systems, and vfork() requires an exec() or exit()
// before resuming the parent (because they share a heap until then). And no,
// we can't implement our own clone() call that does the equivalent of fork()
@@ -536,6 +540,8 @@ int dev_minor(int dev)
@@ -332,7 +336,7 @@ ssize_t xattr_fset(int fd, const char* name,
return fsetxattr(fd, name, value, size, 0, flags);
}
-#elif !defined(__OpenBSD__)
+#elif defined(__FreeBSD__) || defined(__OpenBSD__)
ssize_t xattr_get(const char *path, const char *name, void *value, size_t size)
{
@@ -537,6 +541,8 @@ int dev_minor(int dev)
return dev&0xffffff;
#elif defined(__OpenBSD__)
return minor(dev);
@@ -20,7 +29,7 @@
#else
#error
#endif
@@ -549,6 +555,8 @@ int dev_major(int dev)
@@ -550,6 +556,8 @@ int dev_major(int dev)
return (dev>>24)&0xff;
#elif defined(__OpenBSD__)
return major(dev);
@@ -29,7 +38,7 @@
#else
#error
#endif
@@ -562,6 +570,8 @@ int dev_makedev(int major, int minor)
@@ -563,6 +571,8 @@ int dev_makedev(int major, int minor)
return (minor&0xffffff)|((major&0xff)<<24);
#elif defined(__OpenBSD__)
return makedev(major, minor);
@@ -38,11 +47,10 @@
#else
#error
#endif
@@ -621,6 +631,17 @@ int get_block_device_size(int fd, unsigned long long*
int status = (ioctl(fd, DIOCGDINFO, &lab) >= 0);
@@ -623,6 +633,17 @@ int get_block_device_size(int fd, unsigned long long*
*size = lab.d_secsize * lab.d_nsectors;
return status;
+}
}
+#elif defined(__FreeBSD__)
+#include <sys/disk.h>
+int get_block_device_size(int fd, unsigned long long* size)
@@ -53,6 +61,24 @@
+ return 1;
+ }
+ return 0;
}
+}
#endif
// TODO copy_file_range
@@ -690,7 +711,7 @@ int timer_create_wrap(clockid_t c, struct sigevent *se
};
int timer;
- if (syscall(SYS_timer_create, c, &kk, &timer)<0) return -1;
+ if (syscall(SYS_ktimer_create, c, &kk, &timer)<0) return -1;
*t = (timer_t)(long)timer;
return 0;
@@ -699,6 +720,6 @@ int timer_create_wrap(clockid_t c, struct sigevent *se
int timer_settime_wrap(timer_t t, int flags, struct itimerspec *val,
struct itimerspec *old)
{
- return syscall(SYS_timer_settime, t, flags, val, old);
+ return syscall(SYS_ktimer_settime, t, flags, val, old);
}
#endif

View File

@@ -1,6 +1,6 @@
--- lib/portability.h.orig 2021-06-01 14:59:57 UTC
--- lib/portability.h.orig 2021-12-02 04:45:52 UTC
+++ lib/portability.h
@@ -217,7 +217,7 @@ int posix_fallocate(int, off_t, off_t);
@@ -229,7 +229,7 @@ int posix_fallocate(int, off_t, off_t);
#include <xlocale.h>
#endif
@@ -9,3 +9,12 @@
static inline long statfs_bsize(struct statfs *sf) { return sf->f_iosize; }
static inline long statfs_frsize(struct statfs *sf) { return sf->f_bsize; }
#else
@@ -394,7 +394,7 @@ struct itimerspec {
int timer_create(clock_t c, struct sigevent *se, timer_t *t);
int timer_settime(timer_t t, int flags, struct itimerspec *new, void *old);
#elif !CFG_TOYBOX_HASTIMERS
-#include <syscall.h>
+#include <sys/syscall.h>
#include <signal.h>
#include <time.h>
int timer_create_wrap(clockid_t c, struct sigevent *se, timer_t *t);

View File

@@ -0,0 +1,25 @@
--- toys/other/chvt.c.orig 2021-12-02 04:45:52 UTC
+++ toys/other/chvt.c
@@ -18,16 +18,17 @@ config CHVT
*/
#include "toys.h"
-#include <linux/vt.h>
void chvt_main(void)
{
- int vt, fd;
+ int vtnum, fd = fd;
char *consoles[]={"/dev/console", "/dev/vc/0", "/dev/tty", NULL}, **cc;
- vt = atoi(*toys.optargs);
- for (cc = consoles; *cc; cc++) if ((fd = open(*cc, O_RDWR)) != -1) break;
+ vtnum=atoi(*toys.optargs);
+ for (cc = consoles; *cc; cc++)
+ if (-1 != (fd = open(*cc, O_RDWR))) break;
- if (fd == -1 || ioctl(fd, VT_ACTIVATE, vt) || ioctl(fd, VT_WAITACTIVE, vt))
+ // These numbers are VT_ACTIVATE and VT_WAITACTIVE from linux/vt.h
+ if (!*cc || fd < 0 || ioctl(fd, 0x5606, vtnum) || ioctl(fd, 0x5607, vtnum))
perror_exit(0);
}

125
sysutils/toybox/pkg-plist Normal file
View File

@@ -0,0 +1,125 @@
bin/toybox
toybox/bin/[
toybox/bin/cat
toybox/bin/chgrp
toybox/bin/chmod
toybox/bin/chown
toybox/bin/cksum
toybox/bin/cpio
toybox/bin/crc32
toybox/bin/date
toybox/bin/dos2unix
toybox/bin/echo
toybox/bin/egrep
toybox/bin/false
toybox/bin/fgrep
toybox/bin/fsync
toybox/bin/grep
toybox/bin/help
toybox/bin/hostname
toybox/bin/kill
toybox/bin/ln
toybox/bin/ls
toybox/bin/mkdir
toybox/bin/mknod
toybox/bin/mktemp
toybox/bin/mountpoint
toybox/bin/nice
toybox/bin/pidof
toybox/bin/printenv
toybox/bin/pwd
toybox/bin/rm
toybox/bin/rmdir
toybox/bin/sed
toybox/bin/sleep
toybox/bin/sync
toybox/bin/touch
toybox/bin/true
toybox/bin/uname
toybox/bin/unix2dos
toybox/bin/usleep
toybox/bin/vmstat
toybox/sbin/killall5
toybox/sbin/lsmod
toybox/sbin/mkswap
toybox/sbin/modinfo
toybox/sbin/sysctl
toybox/usr/bin/acpi
toybox/usr/bin/ascii
toybox/usr/bin/base64
toybox/usr/bin/basename
toybox/usr/bin/bunzip2
toybox/usr/bin/bzcat
toybox/usr/bin/cal
toybox/usr/bin/catv
toybox/usr/bin/chrt
toybox/usr/bin/chvt
toybox/usr/bin/clear
toybox/usr/bin/cmp
toybox/usr/bin/comm
toybox/usr/bin/count
toybox/usr/bin/cut
toybox/usr/bin/dirname
toybox/usr/bin/du
toybox/usr/bin/expand
toybox/usr/bin/factor
toybox/usr/bin/fallocate
toybox/usr/bin/file
toybox/usr/bin/find
toybox/usr/bin/flock
toybox/usr/bin/fmt
toybox/usr/bin/groups
toybox/usr/bin/head
toybox/usr/bin/hexedit
toybox/usr/bin/iconv
toybox/usr/bin/id
toybox/usr/bin/killall
toybox/usr/bin/link
toybox/usr/bin/logger
toybox/usr/bin/logname
toybox/usr/bin/lspci
toybox/usr/bin/lsusb
toybox/usr/bin/makedevs
toybox/usr/bin/mkfifo
toybox/usr/bin/mkpasswd
toybox/usr/bin/nl
toybox/usr/bin/nohup
toybox/usr/bin/od
toybox/usr/bin/paste
toybox/usr/bin/patch
toybox/usr/bin/pmap
toybox/usr/bin/printf
toybox/usr/bin/pwdx
toybox/usr/bin/readlink
toybox/usr/bin/realpath
toybox/usr/bin/renice
toybox/usr/bin/reset
toybox/usr/bin/rev
toybox/usr/bin/seq
toybox/usr/bin/setsid
toybox/usr/bin/shred
toybox/usr/bin/sort
toybox/usr/bin/split
toybox/usr/bin/strings
toybox/usr/bin/tac
toybox/usr/bin/tee
toybox/usr/bin/test
toybox/usr/bin/time
toybox/usr/bin/timeout
toybox/usr/bin/truncate
toybox/usr/bin/tty
toybox/usr/bin/uniq
toybox/usr/bin/unlink
toybox/usr/bin/uudecode
toybox/usr/bin/uuencode
toybox/usr/bin/uuidgen
toybox/usr/bin/w
toybox/usr/bin/watch
toybox/usr/bin/wc
toybox/usr/bin/which
toybox/usr/bin/who
toybox/usr/bin/whoami
toybox/usr/bin/xargs
toybox/usr/bin/xxd
toybox/usr/bin/yes
toybox/usr/sbin/chroot