SecBSD's official ports repository

This commit is contained in:
purplerain 2023-08-16 22:26:55 +00:00
commit 2c0afcbbf3
Signed by: purplerain
GPG key ID: F42C07F07E2E35B7
64331 changed files with 5339189 additions and 0 deletions

13
.cvsignore Normal file
View file

@ -0,0 +1,13 @@
bulk
distfiles
locks
logs
lost+found
mystuff
openbsd-wip
packages
plist
pobj
sqlports
sqlports-journal
update

13
.gitignore vendored Normal file
View file

@ -0,0 +1,13 @@
/bulk/
/distfiles/
/locks/
/logs/
/lost+found/
/mystuff/
/openbsd-wip/
/packages/
/plist/
/pobj/
/sqlports/
/sqlports-journal/
/update/

123
Makefile Normal file
View file

@ -0,0 +1,123 @@
# $OpenBSD: Makefile,v 1.87 2021/11/06 19:09:10 rsadowski Exp $
.if !defined(BSD_OWN_MK)
. include <bsd.own.mk>
.endif
PKGPATH =
DISTFILES_DB ?= ${.CURDIR}/infrastructure/db/locate.database
INDEX = ${LOCALBASE}/share/ports-INDEX
.if defined(SUBDIR)
# nothing to do
.elif !make(search) && (defined(key) || defined(name) || defined(category) || defined(author))
# set up subdirs from the index, assume it's up-to-date
_CMD = perl ${.CURDIR}/infrastructure/bin/port-search-helper index='${INDEX}'
. if defined(key)
_CMD += key='${key}'
. endif
. if defined(name)
_CMD += maintainer='${name}'
. endif
. if defined(category)
_CMD += category='${category}'
. endif
. if defined(maintainer)
_CMD += maintainer='${maintainer}'
. endif
SUBDIR != ${_CMD}
.elif defined(SUBDIRLIST)
SUBDIR != sed -e 's,[ ]*\#.*,,' -e '/^[ ]*$$/d' ${SUBDIRLIST}
.else
SUBDIR += archivers
SUBDIR += astro
SUBDIR += audio
SUBDIR += benchmarks
SUBDIR += biology
SUBDIR += books
SUBDIR += cad
SUBDIR += chinese
SUBDIR += comms
SUBDIR += converters
SUBDIR += databases
SUBDIR += devel
SUBDIR += editors
SUBDIR += education
SUBDIR += emulators
SUBDIR += fonts
SUBDIR += games
SUBDIR += geo
SUBDIR += graphics
SUBDIR += inputmethods
SUBDIR += japanese
SUBDIR += java
SUBDIR += korean
SUBDIR += lang
SUBDIR += mail
SUBDIR += math
SUBDIR += meta
SUBDIR += misc
SUBDIR += multimedia
SUBDIR += net
SUBDIR += news
SUBDIR += plan9
SUBDIR += print
SUBDIR += productivity
SUBDIR += security
SUBDIR += shells
SUBDIR += sysutils
SUBDIR += telephony
SUBDIR += textproc
SUBDIR += wayland
SUBDIR += www
SUBDIR += x11
.endif
.include <bsd.port.subdir.mk>
${INDEX}:
@if pkg_info -q -e 'portslist-<6.10'; then \
echo "Old portslist found"; \
echo "Don't mix -current and 6.4"; \
fi
@echo "Please install portslist"
@echo "${SUDO} pkg_add portslist"
@exit 1
print-index: ${INDEX}
@awk -F\| '{ printf("Port:\t%s\nPath:\t%s\nInfo:\t%s\nMaint:\t%s\nIndex:\t%s\nL-deps:\t%s\nB-deps:\t%s\nR-deps:\t%s\n\n", $$1, $$2, $$4, $$6, $$7, $$8, $$9, $$10); }' < ${INDEX}
print-licenses: ${INDEX}
@printf "Port PC PF DC DF Maint\n"
@awk -F\| '{printf("%-40.39s%-3.2s%-3.2s%-3.2s%-3.2s%-25.25s\n",$$2,$$12,$$13,$$14,$$15,$$6);}' < ${INDEX}
search: ${INDEX}
.if !defined(key) && !defined(name)
@echo "The search target requires a keyword or name parameter,"
@echo "e.g.: \"make search key=somekeyword\" \"make search name=somename\""
.else
. if defined(key)
@egrep -i -- "${key}" ${INDEX} | awk -F\| '{ printf("Port:\t%s\nPath:\t%s\nInfo:\t%s\nMaint:\t%s\nIndex:\t%s\nL-deps:\t%s\nB-deps:\t%s\nR-deps:\t%s\nArchs:\t%s\n\n", $$1, $$2, $$4, $$6, $$7, $$8, $$9, $$10, $$11); }'
. else
@awk -F\| '$$1 ~ /${name}/ { printf("Port:\t%s\nPath:\t%s\nInfo:\t%s\nMaint:\t%s\nIndex:\t%s\nL-deps:\t%s\nB-deps:\t%s\nR-deps:\t%s\nArchs:\t%s\n\n", $$1, $$2, $$4, $$6, $$7, $$8, $$9, $$10, $$11); }' ${INDEX}
. endif
.endif
fix-permissions:
@{ echo "DUMMY_PACKAGE=Yes"; \
echo ".include <bsd.port.mk>"; }|${MAKE} -f - fix-permissions
distfiles-update-locatedb:
@PORTSDIR=${.CURDIR} /bin/sh ${.CURDIR}/infrastructure/fetch/distfiles-update-locatedb ${DISTFILES_DB}
create_DEPENDS_CACHE:
@${_mk_DEPENDS_CACHE}; echo $${_DEPENDS_CACHE}
destroy_DEPENDS_CACHE:
@${_PBUILD} rm -rf 2>/dev/null $${_DEPENDS_CACHE}
.PHONY: index search distfiles-update-locatedb \
print-licenses print-index fix-permissions \
create_DEPENDS_CACHE destroy_DEPENDS_CACHE

24
README Normal file
View file

@ -0,0 +1,24 @@
Compiling your own source code is discouraged for everyone except for experts,
as difficult build-time crossing-points can occur often, and no assistance will
be provided.
In case of failure, please install our compiled ports.
Documentation for the ports tree includes:
ports(7) https://man.openbsd.org/ports.7
packages(7) https://man.openbsd.org/packages.7
mirroring-ports(7) https://man.openbsd.org/mirroring-ports.7
library-specs(7) https://man.openbsd.org/library-specs.7
bsd.port.mk(5) https://man.openbsd.org/bsd.port.mk.5
bsd.port.arch.mk(5) https://man.openbsd.org/bsd.port.arch.mk.5
port-modules(5) https://man.openbsd.org/port-modules.5
And for bulk builds:
dpb(1) https://man.openbsd.org/dpb.1
bulk(8) https://man.openbsd.org/bulk.8
proot(1) https://man.openbsd.org/proot.1
Also see the OpenBSD Porter's Handbook
https://www.openbsd.org/faq/ports/

91
archivers/Makefile Normal file
View file

@ -0,0 +1,91 @@
SUBDIR =
SUBDIR += ancient
SUBDIR += arc
SUBDIR += blosc
SUBDIR += brotli
SUBDIR += bzip2
SUBDIR += cabextract
SUBDIR += deco
SUBDIR += deutex
SUBDIR += fastjar
SUBDIR += freeze
SUBDIR += fuse-zip
SUBDIR += gcab
SUBDIR += gcpio
SUBDIR += geteltorito
SUBDIR += gshar+gunshar
SUBDIR += gtar
SUBDIR += gtar,static
SUBDIR += ha
SUBDIR += innoextract
SUBDIR += laszip
SUBDIR += lha
SUBDIR += libarchive
SUBDIR += libdeflate
SUBDIR += libmspack
SUBDIR += libtar
SUBDIR += libzim
SUBDIR += libzip
SUBDIR += lrzip
SUBDIR += luazlib
SUBDIR += lxsplit
SUBDIR += lz4
SUBDIR += lz4json
SUBDIR += lzip
SUBDIR += lzo
SUBDIR += lzo2
SUBDIR += lzop
SUBDIR += macutil
SUBDIR += makeself
SUBDIR += minizip
SUBDIR += p5-Archive-Extract
SUBDIR += p5-Archive-Zip
SUBDIR += p5-Compress-Bzip2
SUBDIR += p5-Compress-LZO
SUBDIR += p5-POE-Filter-Zlib
SUBDIR += p5-PerlIO-gzip
SUBDIR += p7zip
SUBDIR += par1cmdline
SUBDIR += par2cmdline
SUBDIR += pecl-lzf,php74
SUBDIR += pecl-lzf,php80
SUBDIR += pecl-lzf,php81
SUBDIR += pecl-lzf,php82
SUBDIR += pecl-rar,php74
SUBDIR += pecl-rar,php80
#SUBDIR += pecl-rar,php81 # fails
#SUBDIR += pecl-rar,php82 # fails
SUBDIR += pigz
SUBDIR += py-brotli,python3
SUBDIR += py-compressed_rtf,python3
SUBDIR += py-libarchive-c,python3
SUBDIR += py-lz4,python3
SUBDIR += py-rarfile,python3
SUBDIR += py-vpk,python3
SUBDIR += py-zopfli,python3
SUBDIR += quazip
SUBDIR += ripole
SUBDIR += ruby-minitar
SUBDIR += ruby-rubyzip
SUBDIR += rzip
SUBDIR += sltar
SUBDIR += snappy
SUBDIR += ucl
SUBDIR += unarj
SUBDIR += unarr
SUBDIR += unrar
SUBDIR += unshield
SUBDIR += unzip
SUBDIR += unzip,iconv
SUBDIR += woff2
SUBDIR += xdms
SUBDIR += xz
SUBDIR += zip
SUBDIR += zipios
SUBDIR += zoo
SUBDIR += zopfli
SUBDIR += zpaqfranz
SUBDIR += zstd
SUBDIR += zziplib
.include <bsd.port.subdir.mk>

View file

@ -0,0 +1,26 @@
COMMENT = decompression routines for ancient formats
GH_ACCOUNT = temisu
GH_PROJECT = ancient
GH_TAGNAME = v2.1.1
SHARED_LIBS += ancient 0.0 # 2.1
CATEGORIES = archivers
# BSD
PERMIT_PACKAGE = Yes
WANTLIB += ${COMPILER_LIBCXX} c m
COMPILER = base-clang ports-gcc
BUILD_DEPENDS = devel/autoconf-archive
AUTOCONF_VERSION = 2.69
AUTOMAKE_VERSION = 1.16
AUTORECONF = autoreconf -i
CONFIGURE_STYLE = autoreconf
.include <bsd.port.mk>

View file

@ -0,0 +1,2 @@
SHA256 (ancient-2.1.1.tar.gz) = b2Pidlhmkl8bGIuu6VjUUYcgvQAJq09Qs5DqUChknsI=
SIZE (ancient-2.1.1.tar.gz) = 117915

View file

@ -0,0 +1,4 @@
This is a collection of decompression routines for old formats popular in
the Amiga, Atari computers and some other systems from 80's and 90's as
well as some that are currently used which were used in a some specific
way in these old systems.

View file

@ -0,0 +1,10 @@
@bin bin/ancient
include/ancient/
include/ancient/ancient.hpp
@static-lib lib/libancient.a
lib/libancient.la
@lib lib/libancient.so.${LIBancient_VERSION}
lib/pkgconfig/libancient.pc
share/doc/ancient/
share/doc/ancient/LICENSE
share/doc/ancient/README.md

27
archivers/arc/Makefile Normal file
View file

@ -0,0 +1,27 @@
COMMENT= create & extract files from DOS .ARC files
DISTNAME= arc-5.21p
CATEGORIES= archivers
REVISION= 0
HOMEPAGE= http://arc.sourceforge.net/
# GPLv2
PERMIT_PACKAGE= Yes
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=arc/}
WANTLIB= c
MAKE_FLAGS= CC="${CC}" OPT="${CFLAGS}" TMCLOCK=""
do-install:
${INSTALL_PROGRAM} ${WRKBUILD}/arc ${WRKBUILD}/marc ${PREFIX}/bin
${INSTALL_MAN} ${WRKSRC}/{arc.1,marc.1} ${PREFIX}/man/man1
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/arc
${INSTALL_DATA} ${WRKSRC}/Arc521.doc ${WRKSRC}/Arcinfo \
${PREFIX}/share/doc/arc
NO_TEST= Yes
.include <bsd.port.mk>

2
archivers/arc/distinfo Normal file
View file

@ -0,0 +1,2 @@
SHA256 (arc-5.21p.tar.gz) = 6s+HCiRfFVpLqMb44Puy6KJnqvoVf1a6eoyx10/YtaE=
SIZE (arc-5.21p.tar.gz) = 84791

View file

@ -0,0 +1,28 @@
--- arc.c.orig Sat Aug 7 15:06:42 2010
+++ arc.c Mon May 30 11:55:37 2011
@@ -129,6 +129,7 @@ main(num, arg) /* system entry point */
#if UNIX
struct stat sbuf;
#endif
+ int fd;
if (num < 3) {
printf("ARC - Archive utility, Version 5.21p, created on 08/07/2010\n");
@@ -228,7 +229,7 @@ main(num, arg) /* system entry point */
#if !MSDOS
{
strcat(arctemp, "AXXXXXX");
- int fd = mkstemp(arctemp);
+ fd = mkstemp(arctemp);
if (fd == -1)
{
fprintf(stderr, "Unable to create temporary files: %s\n", strerror(errno));
@@ -298,7 +299,7 @@ main(num, arg) /* system entry point */
keepbak = 1;
else if (*a == 'W') /* suppress warnings */
- warn = 0;
+ arcwarn = 0;
#if !DOS
else if (*a == 'I') /* image mode, no ASCII/EBCDIC x-late */
image = !image;

View file

@ -0,0 +1,11 @@
--- arc.h.orig Sat Aug 7 10:06:42 2010
+++ arc.h Thu May 19 23:35:46 2011
@@ -106,7 +106,7 @@ extern char tmpchr[2]; /* Temporary file prefix, d
#if GEMDOS
extern int hold; /* hold screen before exiting */
#endif
-extern int warn; /* true to print warnings */
+extern int arcwarn; /* true to print warnings */
extern int note; /* true to print comments */
extern int bose; /* true to be verbose */
extern int nocomp; /* true to suppress compression */

View file

@ -0,0 +1,47 @@
--- arcadd.c.orig Sat Aug 7 10:06:42 2010
+++ arcadd.c Thu May 19 23:35:46 2011
@@ -119,7 +119,7 @@ int fresh; /* true if freshening */
}
#endif
}
- if (notemp && warn)
+ if (notemp && arcwarn)
printf("No files match: %s\n", arg[n]);
}
@@ -133,7 +133,7 @@ int fresh; /* true if freshening */
free(path);
free(name);
}
- if (nowork && warn)
+ if (nowork && arcwarn)
printf("No files were added.\n");
}
@@ -227,7 +227,7 @@ addbunch(nfiles, path, name, move, update, fresh) /* a
if (move) { /* if this was a move */
for (n = 0; n < nfiles; n++) { /* then delete each file
* added */
- if (unlink(path[n]) && warn) {
+ if (unlink(path[n]) && arcwarn) {
printf("Cannot unsave %s\n", path[n]);
nerrs++;
}
@@ -259,7 +259,7 @@ addfile(path, name, update, fresh) /* add named file t
if (!f)
#endif
{
- if (warn) {
+ if (arcwarn) {
printf("Cannot read file: %s\n", path);
nerrs++;
}
@@ -267,7 +267,7 @@ addfile(path, name, update, fresh) /* add named file t
}
#if !DOS
if (strlen(name) >= FNLEN) {
- if (warn) {
+ if (arcwarn) {
char buf[STRLEN];
printf("WARNING: File %s name too long!\n", name);
name[FNLEN-1]='\0';

View file

@ -0,0 +1,11 @@
--- arccvt.c.orig Tue Oct 11 23:46:34 2005
+++ arccvt.c Tue Oct 11 23:46:44 2005
@@ -120,7 +120,7 @@ cvtfile(hdr) /* convert a file */
writehdr(hdr, new); /* write out real header */
fseek(new, hdr->size, 1); /* skip over data to next header */
fclose(tmp); /* all done with the file */
- if (unlink(tempname) && warn) {
+ if (unlink(tempname) && arcwarn) {
printf("Cannot unsave %s\n", tempname);
nerrs++;
}

View file

@ -0,0 +1,11 @@
--- arcdata.c.orig Sat Aug 7 10:06:42 2010
+++ arcdata.c Thu May 19 23:35:46 2011
@@ -35,7 +35,7 @@ char tmpchr[2] = "-";/* Temporary file pref
#if GEMDOS
int hold = 0; /* true to pause before exit */
#endif
-int warn = 1; /* true to print warnings */
+int arcwarn = 1; /* true to print warnings */
int note = 1; /* true to print comments */
int bose = 0; /* true to be verbose */
int nocomp = 0; /* true to suppress compression */

View file

@ -0,0 +1,23 @@
--- arcdos.c.orig Sat Aug 7 10:06:42 2010
+++ arcdos.c Thu May 19 23:35:46 2011
@@ -175,14 +175,20 @@ setstamp(f, date, time) /* set a file's date/time sta
struct tm tm;
struct timeval tvp[2];
int utimes();
+#if !defined(__FreeSBD__) && !defined(__OpenBSD__) && !defined(__NetBSD__)
long tmclock();
+#endif
tm.tm_sec = (time & 31) * 2;
tm.tm_min = (time >> 5) & 63;
tm.tm_hour = (time >> 11);
tm.tm_mday = date & 31;
tm.tm_mon = ((date >> 5) & 15) - 1;
tm.tm_year = (date >> 9) + 80;
+#if !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__NetBSD__)
tvp[0].tv_sec = tmclock(&tm);
+#else
+ tvp[0].tv_sec = timelocal(&tm);
+#endif
tvp[1].tv_sec = tvp[0].tv_sec;
tvp[0].tv_usec = tvp[1].tv_usec = 0;
utimes(f, tvp);

View file

@ -0,0 +1,20 @@
--- arcext.c.orig Sat Aug 7 10:06:42 2010
+++ arcext.c Thu May 19 23:35:46 2011
@@ -143,7 +143,7 @@ extfile(hdr, path, prt) /* extract a file */
if (note)
printf("Extracting file: %s\n", fix);
- if (warn && !overlay) {
+ if (arcwarn && !overlay) {
if ((f = fopen(fix, "r"))) { /* see if it exists */
fclose(f);
printf("WARNING: File %s already exists!", fix);
@@ -191,7 +191,7 @@ extfile(hdr, path, prt) /* extract a file */
if (!f)
#endif
{
- if (warn) {
+ if (arcwarn) {
printf("Cannot create %s\n", fix);
nerrs++;
}

View file

@ -0,0 +1,24 @@
--- arcio.c.orig Sat Aug 7 10:06:42 2010
+++ arcio.c Thu May 19 23:35:46 2011
@@ -46,7 +46,7 @@ readhdr(hdr, f) /* read a header from an archive */
return 0; /* then signal end of archive */
if (hdrver != ARCMARK) { /* check archive validity */
- if (warn) {
+ if (arcwarn) {
printf("An entry in %s has a bad header.\n", arcname);
nerrs++;
}
@@ -67,10 +67,10 @@ readhdr(hdr, f) /* read a header from an archive */
if (feof(f) && first)
arcdie("%s is not an archive", arcname);
- if (changing && warn)
+ if (changing && arcwarn)
arcdie("%s is corrupted -- changes disallowed", arcname);
- if (warn)
+ if (arcwarn)
printf(" %d bytes skipped.\n", try);
if (feof(f))

View file

@ -0,0 +1,26 @@
Fix "-fno-common" build, from FreeBSD
Index: arclzw.c
--- arclzw.c.orig
+++ arclzw.c
@@ -58,8 +58,9 @@ static VOID putcode();
extern u_char *pinbuf;
u_char *inbeg, *inend;
-u_char *outbuf;
-u_char *outbeg, *outend;
+extern u_char *outbuf;
+u_char *outbeg;
+extern u_char *outend;
static int sp; /* current stack pointer */
static int inflag;
@@ -560,7 +561,7 @@ decomp(squash, f, t) /* decompress a file */
*/
if (code >= free_ent) {
if (code > free_ent) {
- if (warn) {
+ if (arcwarn) {
printf("Corrupted compressed file.\n");
printf("Invalid code %d when max is %d.\n",
code, free_ent);

View file

@ -0,0 +1,38 @@
--- arcrun.c.orig Wed Oct 12 17:22:18 2005
+++ arcrun.c Wed Jun 21 12:17:53 2006
@@ -98,7 +98,7 @@ runfile(hdr, num, arg) /* run a file */
strcpy(sys, buf);
else {
- if (warn) {
+ if (arcwarn) {
printf("File %s is not a .BAS, .BAT, .COM, or .EXE\n",
hdr->name);
nerrs++;
@@ -112,7 +112,7 @@ runfile(hdr, num, arg) /* run a file */
&& strcmp(i, ".TTP")
&& strcmp(i, ".TOS"))
{
- if (warn) {
+ if (arcwarn) {
printf("File %s is not a .PRG, .TOS, or .TTP\n",
hdr->name);
nerrs++;
@@ -122,7 +122,7 @@ runfile(hdr, num, arg) /* run a file */
}
#endif
- if (warn)
+ if (arcwarn)
if ((tmp = fopen(buf, "r")))
arcdie("Temporary file %s already exists", buf);
if (!(tmp = tmpopen(buf)))
@@ -146,7 +146,7 @@ runfile(hdr, num, arg) /* run a file */
if (system(buf)) /* try to invoke it */
arcdie("Execution failed for %s", buf);
#endif
- if (unlink(buf) && warn) {
+ if (unlink(buf) && arcwarn) {
printf("Cannot unsave temporary file %s\n", buf);
nerrs++;
}

View file

@ -0,0 +1,34 @@
Fix "-fno-common" build, from FreeBSD
Index: arcunp.c
--- arcunp.c.orig
+++ arcunp.c
@@ -39,8 +39,8 @@ extern int lastc;
#define NOHIST 0 /* no relevant history */
#define INREP 1 /* sending a repeated value */
-short crcval; /* CRC check value */
-long stdlen; /* bytes to read */
+extern short crcval; /* CRC check value */
+extern long stdlen; /* bytes to read */
#if !DOS
static int gotcr; /* got a carriage return? */
#endif
@@ -122,7 +122,7 @@ unpack(f, t, hdr) /* unpack an archive entry */
break;
default: /* unknown method */
- if (warn) {
+ if (arcwarn) {
printf("I don't know how to unpack file %s\n", hdr->name);
printf("I think you need a newer version of ARC\n");
nerrs++;
@@ -134,7 +134,7 @@ unpack(f, t, hdr) /* unpack an archive entry */
/* cleanups common to all methods */
if (crcval != hdr->crc) {
- if (warn || kludge) {
+ if (arcwarn || kludge) {
printf("WARNING: File %s fails CRC check\n", hdr->name);
nerrs++;
}

View file

@ -0,0 +1,19 @@
--- marc.c.orig Mon May 30 04:53:15 2011
+++ marc.c Mon May 30 04:53:49 2011
@@ -63,6 +63,7 @@ char *arg[]; /* pointers to arguments */
VOID exitpause();
#endif
int n; /* index */
+ int fd;
#if UNIX
struct stat sbuf;
#endif
@@ -123,7 +124,7 @@ char *arg[]; /* pointers to arguments */
#if !MSDOS
{
strcat(arctemp, "AXXXXXX");
- int fd = mkstemp(arctemp);
+ fd = mkstemp(arctemp);
if (fd == -1)
{
fprintf(stderr, "Unable to create temporary files: %s\n", strerror(errno));

4
archivers/arc/pkg/DESCR Normal file
View file

@ -0,0 +1,4 @@
This package creates and extracts-from ARC archives. An ARC archive
contains files which are compressed according to the most efficient
of three algorithms. ARC archives are usually only used for compatibility
with MS-DOS.

7
archivers/arc/pkg/PLIST Normal file
View file

@ -0,0 +1,7 @@
@bin bin/arc
@bin bin/marc
@man man/man1/arc.1
@man man/man1/marc.1
share/doc/arc/
share/doc/arc/Arc521.doc
share/doc/arc/Arcinfo

33
archivers/blosc/Makefile Normal file
View file

@ -0,0 +1,33 @@
V = 1.21.4
COMMENT = blocking, shuffling, fast and lossless compression library
PKGNAME = blosc-${V}
CATEGORIES = archivers
SHARED_LIBS += blosc 2.0 # 0.0
GH_ACCOUNT = Blosc
GH_PROJECT = c-blosc
GH_TAGNAME = v${V}
HOMEPAGE = https://blosc.org/
MAINTAINER = Martin Reindl <martin@catai.org>
# BSD
PERMIT_PACKAGE = Yes
WANTLIB += lz4 pthread snappy z zstd
COMPILER = base-clang ports-gcc
MODULES = devel/cmake
LIB_DEPENDS = archivers/lz4 \
archivers/snappy \
archivers/zstd
CONFIGURE_ARGS = -DPREFER_EXTERNAL_LZ4=ON \
-DDEACTIVATE_SNAPPY=OFF \
-DPREFER_EXTERNAL_ZLIB=ON \
-DPREFER_EXTERNAL_ZSTD=ON
.include <bsd.port.mk>

2
archivers/blosc/distinfo Normal file
View file

@ -0,0 +1,2 @@
SHA256 (c-blosc-1.21.4.tar.gz) = 5yvQOCe4Vku7PcPqDQ5om0hjhxzjhh2Uby79ehhuzz4=
SIZE (c-blosc-1.21.4.tar.gz) = 2458878

View file

@ -0,0 +1,12 @@
Index: bench/CMakeLists.txt
--- bench/CMakeLists.txt.orig
+++ bench/CMakeLists.txt
@@ -8,7 +8,7 @@ if(UNIX AND NOT APPLE AND NOT HAIKU)
# cmake is complaining about LINK_PRIVATE in original PR
# and removing it does not seem to hurt, so be it.
# target_link_libraries(bench LINK_PRIVATE rt)
- target_link_libraries(bench rt)
+ target_link_libraries(bench)
endif(UNIX AND NOT APPLE AND NOT HAIKU)
target_link_libraries(bench blosc_shared)

View file

@ -0,0 +1,34 @@
Our aligned_alloc(3) is C11, but more strict than on other platforms. Many tests
here fail with EINVAL if 'size' is not a multiple of 'alignment' _and_
alignment is not a power of 2. To better identify these cases, extend the error
message.
Index: tests/test_common.h
--- tests/test_common.h.orig
+++ tests/test_common.h
@@ -14,6 +14,7 @@
#include <stdlib.h>
#include <stdio.h>
+#include <errno.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
@@ -62,7 +63,7 @@ static void* blosc_test_malloc(const size_t alignment,
void *block = NULL;
int32_t res = 0;
-#if defined(_ISOC11_SOURCE) || (defined(__FreeBSD__) && __STDC_VERSION__ >= 201112L)
+#if defined(_ISOC11_SOURCE) || __STDC_VERSION__ >= 201112L
/* C11 aligned allocation. 'size' must be a multiple of the alignment. */
block = aligned_alloc(alignment, size);
#elif defined(_WIN32)
@@ -79,7 +80,7 @@ static void* blosc_test_malloc(const size_t alignment,
#endif
if (block == NULL || res != 0) {
- fprintf(stderr, "Error allocating memory!");
+ fprintf(stderr, "Error allocating memory: errno=%d, err_msg=\"%s\"\n", errno, strerror(errno));
return NULL;
}

13
archivers/blosc/pkg/DESCR Normal file
View file

@ -0,0 +1,13 @@
Blosc is a high performance compressor optimized for binary data. It has
been designed to transmit data to the processor cache faster than the
traditional, non-compressed, direct memory fetch approach via a memcpy()
OS call. Blosc is meant not only to reduce the size of large datasets
on-disk or in-memory, but also to accelerate memory-bound computations.
It uses the blocking technique so as to reduce activity in the memory
bus as much as possible. In short, this technique works by dividing
datasets in blocks that are small enough to fit in caches of modern
processors and perform compression/decompression there. It also
leverages, if available, SIMD instructions (SSE2, AVX2) and
multi-threading capabilities of CPUs, in order to accelerate the
compression/decompression process to a maximum.

View file

@ -0,0 +1,5 @@
include/blosc-export.h
include/blosc.h
@static-lib lib/libblosc.a
@lib lib/libblosc.so.${LIBblosc_VERSION}
lib/pkgconfig/blosc.pc

28
archivers/brotli/Makefile Normal file
View file

@ -0,0 +1,28 @@
COMMENT = generic lossless compressor
GH_ACCOUNT = google
GH_PROJECT = brotli
GH_TAGNAME = v1.0.9
REVISION = 0
SHARED_LIBS += brotlicommon 1.2 # 1.0.9
SHARED_LIBS += brotlidec 1.1 # 1.0.9
SHARED_LIBS += brotlienc 1.0 # 1.0.9
CATEGORIES = archivers
MAINTAINER = Pascal Stumpf <pascal@stumpf.co>
# MIT
PERMIT_PACKAGE = Yes
WANTLIB += c m
MODULES = devel/cmake
DEBUG_PACKAGES = ${BUILD_PACKAGES}
post-install:
${INSTALL_MAN} ${WRKSRC}/docs/brotli.1 ${PREFIX}/man/man1
.include <bsd.port.mk>

View file

@ -0,0 +1,2 @@
SHA256 (brotli-1.0.9.tar.gz) = +ejYHQQFumbRgVKa9CozVPg4yTkJX/mZMNpqqc32/kY=
SIZE (brotli-1.0.9.tar.gz) = 486984

View file

@ -0,0 +1,8 @@
--- tests/compatibility_test.sh.orig Mon Apr 10 10:42:24 2017
+++ tests/compatibility_test.sh Tue Apr 18 18:31:26 2017
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/bin/sh
#
# Test that the brotli command-line tool can decompress old brotli-compressed
# files.

View file

@ -0,0 +1,9 @@
Index: tests/roundtrip_test.sh
--- tests/roundtrip_test.sh.orig
+++ tests/roundtrip_test.sh
@@ -1,4 +1,4 @@
-#!/usr/bin/env bash
+#!/bin/sh
#
# Roundtrip test for the brotli command-line tool.
#

View file

@ -0,0 +1,6 @@
Brotli is a generic-purpose lossless compression algorithm that
compresses data using a combination of a modern variant of the LZ77
algorithm, Huffman coding and 2nd order context modeling, with a
compression ratio comparable to the best currently available
general-purpose compression methods. It is similar in speed with
deflate but offers more dense compression.

View file

@ -0,0 +1,16 @@
@bin bin/brotli
include/brotli/
include/brotli/decode.h
include/brotli/encode.h
include/brotli/port.h
include/brotli/types.h
@static-lib lib/libbrotlicommon-static.a
@lib lib/libbrotlicommon.so.${LIBbrotlicommon_VERSION}
@static-lib lib/libbrotlidec-static.a
@lib lib/libbrotlidec.so.${LIBbrotlidec_VERSION}
@static-lib lib/libbrotlienc-static.a
@lib lib/libbrotlienc.so.${LIBbrotlienc_VERSION}
lib/pkgconfig/libbrotlicommon.pc
lib/pkgconfig/libbrotlidec.pc
lib/pkgconfig/libbrotlienc.pc
@man man/man1/brotli.1

33
archivers/bzip2/Makefile Normal file
View file

@ -0,0 +1,33 @@
COMMENT= block-sorting file compressor, unencumbered
DISTNAME= bzip2-1.0.8
REVISION= 0
CATEGORIES= archivers
HOMEPAGE= https://sourceware.org/bzip2/
SHARED_LIBS= bz2 10.4
# BSD
PERMIT_PACKAGE= Yes
# uses pledge()
WANTLIB += c
MASTER_SITES= https://sourceware.org/pub/bzip2/
BZ2_CFLAGS= -Wall -Winline -fomit-frame-pointer
MAKE_FLAGS= CC="${CC}" CFLAGS="${CFLAGS} ${BZ2_CFLAGS}" \
LIBbz2_VERSION=${LIBbz2_VERSION} PREFIX=${TRUEPREFIX}
DEBUG_PACKAGES= ${BUILD_PACKAGES}
TEST_FLAGS= LD_LIBRARY_PATH="${WRKBUILD}" LIBbz2_VERSION=${LIBbz2_VERSION}
TEST_TARGET= test
post-install:
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/bzip2
${INSTALL_DATA} ${WRKBUILD}/manual.html ${PREFIX}/share/doc/bzip2
.include <bsd.port.mk>

2
archivers/bzip2/distinfo Normal file
View file

@ -0,0 +1,2 @@
SHA256 (bzip2-1.0.8.tar.gz) = q1oDF27hBtPw+pDjgdpHjdrkBZGBU8yiSOaCzQxKImk=
SIZE (bzip2-1.0.8.tar.gz) = 810029

View file

@ -0,0 +1,144 @@
--- Makefile.orig Sat Sep 11 00:46:02 2010
+++ Makefile Thu Mar 10 20:07:52 2016
@@ -23,10 +23,9 @@ LDFLAGS=
BIGFILES=-D_FILE_OFFSET_BITS=64
CFLAGS=-Wall -Winline -O2 -g $(BIGFILES)
-# Where you want it installed when you do 'make install'
-PREFIX=/usr/local
+PICFLAG= -fpic
+SHLIB= libbz2.so.${LIBbz2_VERSION}
-
OBJS= blocksort.o \
huffman.o \
crctable.o \
@@ -34,10 +33,12 @@ OBJS= blocksort.o \
compress.o \
decompress.o \
bzlib.o
+SHOBJS= $(OBJS:.o=.so)
-all: libbz2.a bzip2 bzip2recover test
+.SUFFIXES: .o .so
-bzip2: libbz2.a bzip2.o
+all: libbz2.a $(SHLIB) bzip2 bzip2recover
+bzip2: libbz2.a $(SHLIB) bzip2.o
$(CC) $(CFLAGS) $(LDFLAGS) -o bzip2 bzip2.o -L. -lbz2
bzip2recover: bzip2recover.o
@@ -52,66 +53,61 @@ libbz2.a: $(OBJS)
$(RANLIB) libbz2.a ; \
fi
+$(SHLIB): $(SHOBJS)
+ rm -f $(SHLIB)
+ $(CC) -shared $(PICFLAG) -o $(SHLIB) $(SHOBJS)
+
check: test
test: bzip2
- @cat words1
- ./bzip2 -1 < sample1.ref > sample1.rb2
- ./bzip2 -2 < sample2.ref > sample2.rb2
- ./bzip2 -3 < sample3.ref > sample3.rb2
- ./bzip2 -d < sample1.bz2 > sample1.tst
- ./bzip2 -d < sample2.bz2 > sample2.tst
- ./bzip2 -ds < sample3.bz2 > sample3.tst
- cmp sample1.bz2 sample1.rb2
- cmp sample2.bz2 sample2.rb2
- cmp sample3.bz2 sample3.rb2
- cmp sample1.tst sample1.ref
- cmp sample2.tst sample2.ref
- cmp sample3.tst sample3.ref
- @cat words3
+ ./bzip2 -1 < sample1.ref > sample1.rb2 || exit 1
+ ./bzip2 -2 < sample2.ref > sample2.rb2 || exit 1
+ ./bzip2 -3 < sample3.ref > sample3.rb2 || exit 1
+ ./bzip2 -d < sample1.bz2 > sample1.tst || exit 1
+ ./bzip2 -d < sample2.bz2 > sample2.tst || exit 1
+ ./bzip2 -ds < sample3.bz2 > sample3.tst || exit 1
+ cmp sample1.bz2 sample1.rb2 || exit 1
+ cmp sample2.bz2 sample2.rb2 || exit 1
+ cmp sample3.bz2 sample3.rb2 || exit 1
+ cmp sample1.tst sample1.ref || exit 1
+ cmp sample2.tst sample2.ref || exit 1
+ cmp sample3.tst sample3.ref || exit 1
install: bzip2 bzip2recover
- if ( test ! -d $(PREFIX)/bin ) ; then mkdir -p $(PREFIX)/bin ; fi
- if ( test ! -d $(PREFIX)/lib ) ; then mkdir -p $(PREFIX)/lib ; fi
- if ( test ! -d $(PREFIX)/man ) ; then mkdir -p $(PREFIX)/man ; fi
- if ( test ! -d $(PREFIX)/man/man1 ) ; then mkdir -p $(PREFIX)/man/man1 ; fi
- if ( test ! -d $(PREFIX)/include ) ; then mkdir -p $(PREFIX)/include ; fi
- cp -f bzip2 $(PREFIX)/bin/bzip2
- cp -f bzip2 $(PREFIX)/bin/bunzip2
- cp -f bzip2 $(PREFIX)/bin/bzcat
- cp -f bzip2recover $(PREFIX)/bin/bzip2recover
- chmod a+x $(PREFIX)/bin/bzip2
- chmod a+x $(PREFIX)/bin/bunzip2
- chmod a+x $(PREFIX)/bin/bzcat
- chmod a+x $(PREFIX)/bin/bzip2recover
- cp -f bzip2.1 $(PREFIX)/man/man1
- chmod a+r $(PREFIX)/man/man1/bzip2.1
- cp -f bzlib.h $(PREFIX)/include
- chmod a+r $(PREFIX)/include/bzlib.h
- cp -f libbz2.a $(PREFIX)/lib
- chmod a+r $(PREFIX)/lib/libbz2.a
- cp -f bzgrep $(PREFIX)/bin/bzgrep
- ln -s -f $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzegrep
- ln -s -f $(PREFIX)/bin/bzgrep $(PREFIX)/bin/bzfgrep
- chmod a+x $(PREFIX)/bin/bzgrep
- cp -f bzmore $(PREFIX)/bin/bzmore
- ln -s -f $(PREFIX)/bin/bzmore $(PREFIX)/bin/bzless
- chmod a+x $(PREFIX)/bin/bzmore
- cp -f bzdiff $(PREFIX)/bin/bzdiff
- ln -s -f $(PREFIX)/bin/bzdiff $(PREFIX)/bin/bzcmp
- chmod a+x $(PREFIX)/bin/bzdiff
- cp -f bzgrep.1 bzmore.1 bzdiff.1 $(PREFIX)/man/man1
- chmod a+r $(PREFIX)/man/man1/bzgrep.1
- chmod a+r $(PREFIX)/man/man1/bzmore.1
- chmod a+r $(PREFIX)/man/man1/bzdiff.1
- echo ".so man1/bzgrep.1" > $(PREFIX)/man/man1/bzegrep.1
- echo ".so man1/bzgrep.1" > $(PREFIX)/man/man1/bzfgrep.1
- echo ".so man1/bzmore.1" > $(PREFIX)/man/man1/bzless.1
- echo ".so man1/bzdiff.1" > $(PREFIX)/man/man1/bzcmp.1
+ if ( test ! -d $(DESTDIR)$(PREFIX)/bin ) ; then $(BSD_INSTALL_PROGRAM_DIR) $(DESTDIR)$(PREFIX)/bin ; fi
+ if ( test ! -d $(DESTDIR)$(PREFIX)/lib ) ; then $(BSD_INSTALL_DATA_DIR) $(DESTDIR)$(PREFIX)/lib ; fi
+ if ( test ! -d $(DESTDIR)$(PREFIX)/man ) ; then $(BSD_INSTALL_MAN_DIR) $(DESTDIR)$(PREFIX)/man ; fi
+ if ( test ! -d $(DESTDIR)$(PREFIX)/man/man1 ) ; then $(BSD_INSTALL_MAN_DIR) $(DESTDIR)$(PREFIX)/man/man1 ; fi
+ if ( test ! -d $(DESTDIR)$(PREFIX)/include ) ; then $(BSD_INSTALL_DATA_DIR) $(DESTDIR)$(PREFIX)/include ; fi
+ $(BSD_INSTALL_DATA) libbz2.a $(DESTDIR)$(PREFIX)/lib
+ @if [ -f $(SHLIB) ]; then \
+ $(BSD_INSTALL_DATA) $(SHLIB) $(DESTDIR)$(PREFIX)/lib; \
+ fi
+ $(BSD_INSTALL_DATA) bzlib.h $(DESTDIR)$(PREFIX)/include
+ $(BSD_INSTALL_PROGRAM) bzip2 bzip2recover $(DESTDIR)$(PREFIX)/bin
+ $(BSD_INSTALL_SCRIPT) bzgrep bzmore bzdiff $(DESTDIR)$(PREFIX)/bin
+ @cd $(DESTDIR)$(PREFIX)/bin; ln -fs bzip2 bunzip2; \
+ ln -fs bzip2 bzcat
+ @cd $(DESTDIR)$(PREFIX)/bin; ln -fs bzgrep bzegrep; \
+ ln -fs bzgrep bzfgrep
+ @cd $(DESTDIR)$(PREFIX)/bin; ln -fs bzmore bzless
+ @cd $(DESTDIR)$(PREFIX)/bin; ln -fs bzdiff bzcmp
+ $(BSD_INSTALL_MAN) bzip2.1 bzgrep.1 bzmore.1 bzdiff.1 \
+ $(DESTDIR)$(PREFIX)/man/man1
+ @cd $(DESTDIR)$(PREFIX)/man/man1; ln -fs bzip2.1 bunzip2.1; \
+ ln -fs bzip2.1 bzcat.1; \
+ ln -fs bzip2.1 bzip2recover.1
+ @cd $(DESTDIR)$(PREFIX)/man/man1; ln -fs bzgrep.1 bzegrep.1; \
+ ln -fs bzgrep.1 bzfgrep.1
+ @cd $(DESTDIR)$(PREFIX)/man/man1; ln -fs bzmore.1 bzless.1
+ @cd $(DESTDIR)$(PREFIX)/man/man1; ln -fs bzdiff.1 bzcmp.1
clean:
- rm -f *.o libbz2.a bzip2 bzip2recover \
+ rm -f *.o *.so libbz2.a $(SHLIB) bzip2 bzip2recover \
sample1.rb2 sample2.rb2 sample3.rb2 \
sample1.tst sample2.tst sample3.tst
+
+.c.so:
+ $(CC) $(CFLAGS) $(PICFLAG) -DPIC -c $? -o $@
blocksort.o: blocksort.c
@cat words0

View file

@ -0,0 +1,72 @@
--- bzip2.c.orig Sat Sep 11 00:04:53 2010
+++ bzip2.c Thu Oct 15 01:55:25 2015
@@ -1257,6 +1257,17 @@ void compress ( Char *name )
setExit(1);
return;
};
+ if (numFileNames == 1) { /* stdout, and only one input file */
+ if (pledge("stdio", NULL) == -1) {
+ fprintf ( stderr, "%s: pledge\n", progName );
+ exit ( 1 );
+ }
+ } else {
+ if (pledge("stdio rpath", NULL) == -1) {
+ fprintf ( stderr, "%s: pledge\n", progName );
+ exit ( 1 );
+ }
+ }
break;
case SM_F2F:
@@ -1434,6 +1445,17 @@ void uncompress ( Char *name )
setExit(1);
return;
};
+ if (numFileNames == 1) { /* stdout, and only one input file */
+ if (pledge("stdio", NULL) == -1) {
+ fprintf ( stderr, "%s: pledge\n", progName );
+ exit ( 1 );
+ }
+ } else {
+ if (pledge("stdio rpath", NULL) == -1) {
+ fprintf ( stderr, "%s: pledge\n", progName );
+ exit ( 1 );
+ }
+ }
break;
case SM_F2F:
@@ -1781,6 +1803,11 @@ IntNative main ( IntNative argc, Char *argv[] )
Cell *aa;
Bool decode;
+ if (pledge("stdio rpath wpath cpath fattr", NULL) == -1) {
+ fprintf ( stderr, "%s: pledge\n", progName );
+ exit ( 1 );
+ }
+
/*-- Be really really really paranoid :-) --*/
if (sizeof(Int32) != 4 || sizeof(UInt32) != 4 ||
sizeof(Int16) != 2 || sizeof(UInt16) != 2 ||
@@ -1958,6 +1985,10 @@ IntNative main ( IntNative argc, Char *argv[] )
if (opMode == OM_Z) {
if (srcMode == SM_I2O) {
+ if (pledge("stdio", NULL) == -1) { /* stdin -> stdout */
+ fprintf ( stderr, "%s: pledge\n", progName );
+ exit ( 1 );
+ }
compress ( NULL );
} else {
decode = True;
@@ -1974,6 +2005,10 @@ IntNative main ( IntNative argc, Char *argv[] )
if (opMode == OM_UNZ) {
unzFailsExist = False;
if (srcMode == SM_I2O) {
+ if (pledge("stdio", NULL) == -1) { /* stdin -> stdout */
+ fprintf ( stderr, "%s: pledge\n", progName );
+ exit ( 1 );
+ }
uncompress ( NULL );
} else {
decode = True;

View file

@ -0,0 +1,8 @@
This is bzip2, a block-sorting file compressor.
From the README:
To the best of my knowledge, bzip2 does not use any patented
algorithms. However, I do not have the resources available to
carry out a full patent search. Therefore I cannot give any
guarantee of the above statement.

27
archivers/bzip2/pkg/PLIST Normal file
View file

@ -0,0 +1,27 @@
bin/bunzip2
bin/bzcat
bin/bzcmp
bin/bzdiff
bin/bzegrep
bin/bzfgrep
bin/bzgrep
@bin bin/bzip2
@bin bin/bzip2recover
bin/bzless
bin/bzmore
include/bzlib.h
lib/libbz2.a
@lib lib/libbz2.so.${LIBbz2_VERSION}
@man man/man1/bunzip2.1
@man man/man1/bzcat.1
@man man/man1/bzcmp.1
@man man/man1/bzdiff.1
@man man/man1/bzegrep.1
@man man/man1/bzfgrep.1
@man man/man1/bzgrep.1
@man man/man1/bzip2.1
@man man/man1/bzip2recover.1
@man man/man1/bzless.1
@man man/man1/bzmore.1
share/doc/bzip2/
share/doc/bzip2/manual.html

View file

@ -0,0 +1,24 @@
COMMENT= extracts files from Microsoft CAB archives
DISTNAME= cabextract-1.11
CATEGORIES= archivers
HOMEPAGE= https://www.cabextract.org.uk/
# GPLv2
PERMIT_PACKAGE= Yes
WANTLIB= c iconv mspack
MASTER_SITES= ${HOMEPAGE}
LIB_DEPENDS= archivers/libmspack \
converters/libiconv
CONFIGURE_STYLE= gnu
CONFIGURE_ARGS= --with-external-libmspack
CONFIGURE_ENV= LDFLAGS="-L${LOCALBASE}/lib"
SEPARATE_BUILD= Yes
.include <bsd.port.mk>

View file

@ -0,0 +1,2 @@
SHA256 (cabextract-1.11.tar.gz) = tVRtsRVeTHGP89SyeFc2BPMN1kw8W/1GV80Im4I6OsY=
SIZE (cabextract-1.11.tar.gz) = 489656

View file

@ -0,0 +1,5 @@
cabextract is Free Software for extracting Microsoft cabinet files, also
called .CAB files, on UNIX or UNIX-like systems. cabextract is
distributed under the GPL license. It is based on the portable LGPL
libmspack library. cabextract supports all special features and all
compression formats of Microsoft cabinet files.

View file

@ -0,0 +1,2 @@
@bin bin/cabextract
@man man/man1/cabextract.1

53
archivers/deco/Makefile Normal file
View file

@ -0,0 +1,53 @@
COMMENT= extract various archive file formats
V= 1.6.4
ARCHIVE_V= 1.7
PKGNAME= deco-archive-${V}
REVISION= 0
CATEGORIES= archivers
# GPLv3 only
PERMIT_PACKAGE= Yes
WANTLIB= c
MASTER_SITES= https://github.com/peha/
MASTER_SITES0= https://github.com/peha/
DISTFILES= deco-{deco/archive/}${V}${EXTRACT_SUFX} \
deco-archive-{deco-archive/archive/}${ARCHIVE_V}${EXTRACT_SUFX}
DECO= ${WRKDIR}/deco-${V}
ARCHIVE= ${WRKDIR}/deco-archive-${ARCHIVE_V}
RUN_DEPENDS= archivers/arc \
archivers/bzip2 \
archivers/cabextract \
archivers/p7zip \
archivers/lzop \
archivers/rzip \
archivers/unzip \
archivers/zoo \
audio/flac \
converters/rpm2cpio
MAKE_FLAGS= CC="${CC}" CFLAGS="${CFLAGS} -D_BSD_SOURCE"
NO_TEST= Yes
do-build:
cd ${DECO} && ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} \
${MAKE_FLAGS} -f ${MAKE_FILE}
cd ${ARCHIVE} && ${SETENV} ${MAKE_ENV} ${MAKE_PROGRAM} \
${MAKE_FLAGS} -f ${MAKE_FILE}
do-install:
${INSTALL_DATA_DIR} ${PREFIX}/share/deco
${INSTALL_PROGRAM} ${DECO}/deco ${PREFIX}/bin
.for i in LICENSE Makefile NEWS README.md config.mk
rm ${ARCHIVE}/${i}
.endfor
cd ${ARCHIVE} && cp -R * ${PREFIX}/share/deco
.include <bsd.port.mk>

4
archivers/deco/distinfo Normal file
View file

@ -0,0 +1,4 @@
SHA256 (deco-1.6.4.tar.gz) = YTmz776d+ZXqC7RQa6LtwAOY0N/2uicooRSDZiCM/bc=
SHA256 (deco-archive-1.7.tar.gz) = KAqc9N+PCl/l6zkIcMeR09LPgxsTl6Pkc0Nm8RJRTOE=
SIZE (deco-1.6.4.tar.gz) = 23150
SIZE (deco-archive-1.7.tar.gz) = 17617

3
archivers/deco/pkg/DESCR Normal file
View file

@ -0,0 +1,3 @@
Deco is a Un*x script able to extract various archive file formats.
Supported archive formats: 7z, ace, ar, arc, arj, bz2, cab, cpio, deb,
flac, gz, jar, lha, lzma, lzo, rar, rpm, tar, zip, zoo.

135
archivers/deco/pkg/PLIST Normal file
View file

@ -0,0 +1,135 @@
@conflict deco-*
@bin bin/deco
share/deco/
share/deco/x/
share/deco/x/7z/
share/deco/x/7z/extract
share/deco/x/7z\.[0-9]{2,}
share/deco/x/a/
share/deco/x/a/extract
share/deco/x/ace|[c0-9][0-9]{2}/
share/deco/x/ace|[c0-9][0-9]{2}/extract
share/deco/x/ace|[c0-9][0-9]{2}/permissions
share/deco/x/alz/
share/deco/x/alz/extract
share/deco/x/ape/
share/deco/x/ape/extract
share/deco/x/apk
share/deco/x/ar
share/deco/x/arc/
share/deco/x/arc/extract
share/deco/x/arj/
share/deco/x/arj/extract
share/deco/x/ark
share/deco/x/bz2/
share/deco/x/bz2/extract
share/deco/x/cab/
share/deco/x/cab/extract
share/deco/x/cbr
share/deco/x/cbz
share/deco/x/cpio/
share/deco/x/cpio/extract
share/deco/x/cpio\.bz2/
share/deco/x/cpio\.bz2/extract
share/deco/x/cpio\.gz/
share/deco/x/cpio\.gz/extract
share/deco/x/cpio\.lz/
share/deco/x/cpio\.lz/extract
share/deco/x/cpio\.lzo/
share/deco/x/cpio\.lzo/extract
share/deco/x/cpio\.xz/
share/deco/x/cpio\.xz/extract
share/deco/x/deb/
share/deco/x/deb/extract
share/deco/x/deb/subdirectory
share/deco/x/ear
share/deco/x/flac/
share/deco/x/flac/extract
share/deco/x/gem/
share/deco/x/gem/extract
share/deco/x/gem/subdirectory
share/deco/x/gz/
share/deco/x/gz/extract
share/deco/x/ipsw
share/deco/x/jar
share/deco/x/lha/
share/deco/x/lha/extract
share/deco/x/lrz/
share/deco/x/lrz/extract
share/deco/x/lz/
share/deco/x/lz/extract
share/deco/x/lzh
share/deco/x/lzma/
share/deco/x/lzma/extract
share/deco/x/lzo/
share/deco/x/lzo/extract
share/deco/x/odc
share/deco/x/odf
share/deco/x/odg
share/deco/x/odi
share/deco/x/odm
share/deco/x/odp
share/deco/x/ods
share/deco/x/odt
share/deco/x/otc
share/deco/x/otf
share/deco/x/otg
share/deco/x/oth
share/deco/x/oti
share/deco/x/otp
share/deco/x/ots
share/deco/x/ott
share/deco/x/oxt
share/deco/x/part[0-9]+\.rar
share/deco/x/pk3
share/deco/x/pk4
share/deco/x/rar|[rst][0-9]{2}/
share/deco/x/rar|[rst][0-9]{2}/extract
share/deco/x/rar|[rst][0-9]{2}/permissions
share/deco/x/rpm/
share/deco/x/rpm/extract
share/deco/x/rpm/subdirectory
share/deco/x/rz/
share/deco/x/rz/extract
share/deco/x/shn/
share/deco/x/shn/extract
share/deco/x/sue
share/deco/x/t7z
share/deco/x/t7z\.[0-9]{2,}
share/deco/x/tar/
share/deco/x/tar/extract
share/deco/x/tar\.7z/
share/deco/x/tar\.7z/extract
share/deco/x/tar\.7z\.[0-9]{2,}
share/deco/x/tar\.bz2/
share/deco/x/tar\.bz2/extract
share/deco/x/tar\.gz/
share/deco/x/tar\.gz/extract
share/deco/x/tar\.lrz/
share/deco/x/tar\.lrz/extract
share/deco/x/tar\.lz/
share/deco/x/tar\.lz/extract
share/deco/x/tar\.lzma/
share/deco/x/tar\.lzma/extract
share/deco/x/tar\.rz/
share/deco/x/tar\.rz/extract
share/deco/x/tar\.xz/
share/deco/x/tar\.xz/extract
share/deco/x/tar\.z
share/deco/x/taz
share/deco/x/tbz
share/deco/x/tbz2
share/deco/x/tgz
share/deco/x/tlz/
share/deco/x/tlz/extract
share/deco/x/txz
share/deco/x/udeb
share/deco/x/wsz
share/deco/x/xpi
share/deco/x/xz/
share/deco/x/xz/extract
share/deco/x/z
share/deco/x/zip/
share/deco/x/zip/extract
share/deco/x/zoo/
share/deco/x/zoo/extract

23
archivers/deutex/Makefile Normal file
View file

@ -0,0 +1,23 @@
V = 5.2.2
COMMENT = WAD composer for Doom, Heretic, Hexen, and Strife
DISTNAME = deutex-${V}
CATEGORIES = archivers
HOMEPAGE = https://github.com/Doom-Utils/deutex/
# GPLv2+
PERMIT_PACKAGE = Yes
WANTLIB += c png z
MASTER_SITES = https://github.com/Doom-Utils/deutex/releases/download/v${V}/
EXTRACT_SUFX = .tar.zst
BUILD_DEPENDS = textproc/asciidoc
LIB_DEPENDS = graphics/png
CONFIGURE_STYLE = gnu
DEBUG_PACKAGES = ${BUILD_PACKAGES}
.include <bsd.port.mk>

View file

@ -0,0 +1,2 @@
SHA256 (deutex-5.2.2.tar.zst) = EO0OelM+yXy20DVI1CWPvsiIUqRbXqTPVDQ3atQXS18=
SIZE (deutex-5.2.2.tar.zst) = 172022

View file

@ -0,0 +1,7 @@
DeuTex is a WAD file composer. It can do many things with Doom, Freedoom,
Heretic, Hexen, and Strife WAD files, such as extracting and inserting
graphics, sounds, levels, and other resources. It can be used for creating
and modifying IWAD ("Internal WAD") and PWAD ("Patch WAD") files both.
It is a command-line driven program and as such, is suitable for scripting
such as from a shell script or Makefile.

View file

@ -0,0 +1,2 @@
@bin bin/deutex
@man man/man6/deutex.6

View file

@ -0,0 +1,25 @@
COMMENT = Sun JDK's jar command written entirely in C
DISTNAME = fastjar-0.94
CATEGORIES = archivers
HOMEPAGE = http://fastjar.sourceforge.net/
MAINTAINER = Benoit Lecocq <benoit@openbsd.org>
# GPLv2
PERMIT_PACKAGE = Yes
WANTLIB = c z
MASTER_SITES = ${MASTER_SITE_SOURCEFORGE:=fastjar/}
USE_GMAKE = Yes
CONFIGURE_STYLE = gnu
NO_TEST = Yes
post-extract:
rm ${WRKSRC}/jartool.c.*
.include <bsd.port.mk>

View file

@ -0,0 +1,2 @@
SHA256 (fastjar-0.94.tar.gz) = WiF/w+MBfvsY/RMWs40qqnNwKA/PVzKtj/9+J+yGe5U=
SIZE (fastjar-0.94.tar.gz) = 77399

View file

@ -0,0 +1,17 @@
--- Makefile.in.orig Wed Apr 24 12:52:21 2002
+++ Makefile.in Wed Apr 24 12:52:53 2002
@@ -42,10 +42,10 @@ pkgincludedir = $(includedir)/@PACKAGE@
top_builddir = .
-ACLOCAL = @ACLOCAL@
-AUTOCONF = @AUTOCONF@
-AUTOMAKE = @AUTOMAKE@
-AUTOHEADER = @AUTOHEADER@
+ACLOCAL = :
+AUTOCONF = :
+AUTOMAKE = :
+AUTOHEADER = :
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@

View file

@ -0,0 +1,2 @@
FastJar is a version of JDK's `jar' utility written entirely in C, and
therefore quite a bit faster.

View file

@ -0,0 +1,2 @@
@bin bin/fastjar
@bin bin/grepjar

28
archivers/freeze/Makefile Normal file
View file

@ -0,0 +1,28 @@
COMMENT= FREEZE / MELT compression program - often used in QNX
DISTNAME= freeze-2.5
CATEGORIES= archivers
MASTER_SITES= http://www.arcane-labs.net/download/OpenBSD/
# None
PERMIT_PACKAGE= No
PERMIT_DISTFILES= No
REVISION = 2
WANTLIB= c
CONFIGURE_STYLE= gnu dest
MAKE_FLAGS= CFLAGS="${CFLAGS} -I."
NO_TEST= Yes
# melt(1) is commented out due to conflict with the one from
# multimedia/mlt. It's just a synonim for unfreeze(1) anyway.
post-configure:
${SUBST_CMD} ${WRKSRC}/Makefile \
${WRKSRC}/freeze.1 ${WRKSRC}/statist.1
.include <bsd.port.mk>

View file

@ -0,0 +1,2 @@
SHA256 (freeze-2.5.tar.gz) = ecWr8USqxW5LGO1SNs6+TCYUxaWRCoAxoohSZt8ZZbs=
SIZE (freeze-2.5.tar.gz) = 36402

View file

@ -0,0 +1,27 @@
--- Makefile.in.orig 1993-02-24 14:36:56.000000000 +0100
+++ Makefile.in 2003-08-01 08:29:26.000000000 +0200
@@ -15,10 +15,11 @@ EXE =
.PHONY: default
+all: prog
default: prog
# Added the prefix macro, so that it was easier to change installation place.
-prefix = /usr/local
+prefix = ${PREFIX}
DEST = $(prefix)/bin
MANDEST = $(prefix)/man/man1
SEC = 1
@@ -32,9 +33,9 @@ HDRS = bitio.h\
# define DEFFILE as a filename with freeze's default Huffman values
# e.g. -DDEFFILE=\"/etc/default/freeze\"
-# !!!! NOTE !!!! default is now $(prefix)/lib/freeze.cnf !!!!!
+# !!!! NOTE !!!! default is now /etc/freeze.cnf !!!!!
-OPTIONS = -DDEFFILE=\"$(prefix)/lib/freeze.cnf\"
+OPTIONS = -DDEFFILE=\"${SYSCONFDIR}/freeze.cnf\"
LINTFLAGS = -DDEBUG -DGATHER_STAT -x -h

View file

@ -0,0 +1,10 @@
--- configure.orig 1993-02-24 14:36:54.000000000 +0100
+++ configure 2003-08-01 08:29:26.000000000 +0200
@@ -126,7 +126,6 @@ EOF
${CC-cc} -E conftest.c > conftest.out 2>&1
if egrep yes conftest.out >/dev/null 2>&1; then
GCC=1 # For later tests.
- CC="$CC -O"
fi
rm -f conftest*

View file

@ -0,0 +1,11 @@
--- freeze.1.orig Wed Feb 24 14:36:57 1993
+++ freeze.1 Tue Jun 2 20:50:16 2009
@@ -109,7 +109,7 @@ is a token preceded by a '+' or a '--', which defines
of following files in the command string. An explicite definition
of the file's type can give up to 2% of additional compression.
The list of types is stored in file
-.IR /usr/local/lib/freeze.cnf .
+.IR ${SYSCONFDIR}/freeze.cnf .
Types may be abbreviated while not ambigious. You can also determine
values for the static Huffman table by using a list of 8 numbers
separated by commas instead of

View file

@ -0,0 +1,11 @@
--- freeze.c.orig Wed Feb 24 13:36:55 1993
+++ freeze.c Fri Aug 10 18:43:29 2012
@@ -816,7 +816,7 @@ char *ifname;
timep.actime = statbuf.st_atime;
timep.modtime = statbuf.st_mtime;
-#if defined(__m88k__)
+#if defined(__m88k__) && !defined(__OpenBSD__)
timep.acusec = statbuf.st_ausec; /* pa@verano */
timep.modusec = statbuf.st_musec;
#endif /* !m88k */

View file

@ -0,0 +1,16 @@
--- statist.1.orig Wed Feb 24 14:36:59 1993
+++ statist.1 Tue Jun 2 20:50:16 2009
@@ -102,11 +102,8 @@ results may be unusable). Other values (average match
percentiles and sigma) are FYI only.
.PP
You may create the
-.IR /etc/default/freeze
-file (if you don't like
-.IR /etc/default/
-directory, choose another - in MS-DOS it is FREEZE.CNF in
-the directory of FREEZE.EXE), which has the following format:
+.IR {SYSCONFDIR}/freeze.cnf
+file, which has the following format:
.in +8
.I name
=

View file

@ -0,0 +1,7 @@
FREEZE / MELT COMPRESSION PROGRAM
This version is tested under SunOS 4.1.2, Xenix 2.3.2, MS-DOS.
The format of frozen (2.X) file is incompatible with that of frozen (1.0),
but if this package is compiled with -DCOMPAT switch, you will able to
unpack frozen (1.0) files, if you have them.

View file

@ -0,0 +1,10 @@
@bin bin/fcat
@bin bin/freeze
@comment @bin bin/melt
@bin bin/statist
@bin bin/unfreeze
@man man/man1/fcat.1
@man man/man1/freeze.1
@comment @man man/man1/melt.1
@man man/man1/statist.1
@man man/man1/unfreeze.1

View file

@ -0,0 +1,42 @@
COMMENT = navigate zip archives through FUSE
DISTNAME = fuse-zip-0.7.2
REVISION = 0
CATEGORIES = archivers
HOMEPAGE = https://bitbucket.org/agalanin/fuse-zip
# GPLv3+
PERMIT_PACKAGE = Yes
WANTLIB += ${COMPILER_LIBCXX} c fuse m zip
MASTER_SITES = https://bitbucket.org/agalanin/fuse-zip/downloads/
COMPILER = base-clang ports-gcc
.include <bsd.port.arch.mk>
.if !${PROPERTIES:Mclang}
# fuse-zip.cpp:492:17: error: 'ENODATA' was not declared in this scope
# only base-clang ends up defining this errno, so use an unused errno instead
CXXFLAGS += -DENODATA=ENOATTR
.endif
LIB_DEPENDS = archivers/libzip>=0.11.2
MAKE_FLAGS = CXX="${CXX}" CXXFLAGS="${CXXFLAGS}" \
LDFLAGS="${LDFLAGS}"
FAKE_FLAGS = prefix="${PREFIX}" mandir="${PREFIX}/man"
USE_GMAKE = Yes
TEST_TARGET = check
pre-test:
ln -sf ${LOCALBASE}/bin/gmake ${WRKDIR}/bin/make
post-install:
gzip -d ${PREFIX}/man/man[0-9]/*.gz
.include <bsd.port.mk>

View file

@ -0,0 +1,2 @@
SHA256 (fuse-zip-0.7.2.tar.gz) = PdC+AFZ3RC8f2XaaAt/AtPzdOesWflaX2y8U9P7liRU=
SIZE (fuse-zip-0.7.2.tar.gz) = 713290

View file

@ -0,0 +1,14 @@
Index: fuse-zip.1
--- fuse-zip.1.orig
+++ fuse-zip.1
@@ -86,10 +86,6 @@ Be patient. Wait for fuse-zip process finish after unm
.SH "PERMISSIONS"
Access check will not be performed unless
\fB-o default_permissions\fP mount option is given.
-.SH "FILES"
-.TP
-.if !'po4a'hide' .I /var/log/user.log
-see this file in case any errors occur
.SH "SEE ALSO"
.BR fusermount (1),
.BR mount.fuse (8).

View file

@ -0,0 +1,12 @@
Index: lib/extraField.cpp
--- lib/extraField.cpp.orig
+++ lib/extraField.cpp
@@ -21,7 +21,7 @@
#include <sys/stat.h>
-#if ! __APPLE__
+#if ! __APPLE__ && ! __OpenBSD__
# include <sys/sysmacros.h>
#endif // !__APPLE__

View file

@ -0,0 +1,24 @@
Required xattr.h defines from linux
Index: lib/fuse-zip.cpp
--- lib/fuse-zip.cpp.orig
+++ lib/fuse-zip.cpp
@@ -35,7 +35,6 @@
#include <syslog.h>
#include <sys/types.h>
#include <sys/statvfs.h>
-#include <sys/xattr.h>
#include <cerrno>
#include <cstring>
@@ -47,6 +46,10 @@
#include "types.h"
#include "fileNode.h"
#include "fuseZipData.h"
+
+/* xattr.h */
+#define XATTR_CREATE 0x1
+#define XATTR_REPLACE 0x2
static const char FILE_COMMENT_XATTR_NAME[] = "user.comment";
static const size_t FILE_COMMENT_XATTR_NAME_LENZ = 13; // length including NULL-byte

View file

@ -0,0 +1,8 @@
--- tests/Makefile.orig Tue Jan 21 00:10:21 2014
+++ tests/Makefile Tue Jan 21 00:10:24 2014
@@ -1,5 +1,4 @@
all:
- make -C blackbox all
make -C whitebox test
valgrind:

View file

@ -0,0 +1,22 @@
Device major on OpenBSD is different
Index: tests/whitebox/extraFieldTest.cpp
--- tests/whitebox/extraFieldTest.cpp.orig
+++ tests/whitebox/extraFieldTest.cpp
@@ -6,7 +6,6 @@
#include <cstring>
#include <sys/stat.h>
-#include <sys/sysmacros.h>
#include <zip.h>
#define private public
@@ -407,7 +406,7 @@ void pkware_create_device () {
0x72, 0xE3, 0xC7, 0x52, // mtime
0x02, 0x01, // UID
0x04, 0x03, // GID
- 0x34, 0x12, 0x00, 0x00, // device major
+ 0x34, 0x00, 0x00, 0x00, // device major
0x78, 0x56, 0x00, 0x00 // device minor
};

View file

@ -0,0 +1,11 @@
Index: tests/whitebox/fuseInterfaceTest.cpp
--- tests/whitebox/fuseInterfaceTest.cpp.orig
+++ tests/whitebox/fuseInterfaceTest.cpp
@@ -4,7 +4,6 @@
#include <fuse.h>
#include <sys/stat.h>
-#include <sys/sysmacros.h>
#include <cassert>
#include <cstdlib>

View file

@ -0,0 +1 @@
Using fuse-zip you can mount, navigate, extract and create ZIP archives.

View file

@ -0,0 +1,5 @@
@bin bin/fuse-zip
@man man/man1/fuse-zip.1
share/doc/fuse-zip/
share/doc/fuse-zip/README.md
share/doc/fuse-zip/changelog

26
archivers/gcab/Makefile Normal file
View file

@ -0,0 +1,26 @@
COMMENT= cabinet file library and tool
GNOME_PROJECT= gcab
GNOME_VERSION= 1.6
SHARED_LIBS += gcab-1.0 1.2 # 0.3.0
CATEGORIES= archivers devel
MAINTAINER= Antoine Jacoutot <ajacoutot@openbsd.org>
# LGPLv2.1
PERMIT_PACKAGE= Yes
WANTLIB += c gio-2.0 glib-2.0 gobject-2.0 intl z
MODULES= devel/meson \
x11/gnome
MODGNOME_TOOLS= gobject-introspection vala
BUILD_DEPENDS= textproc/gtk-doc
LIB_DEPENDS= devel/glib2
.include <bsd.port.mk>

2
archivers/gcab/distinfo Normal file
View file

@ -0,0 +1,2 @@
SHA256 (gcab-1.6.tar.xz) = LwyWFVd8QSaQniUfneBibD7noVI3bBW1VE3xD8h+Vgs=
SIZE (gcab-1.6.tar.xz) = 82088

View file

@ -0,0 +1,16 @@
gcab-1.5/meson.build:11:2: ERROR: Command "/usr/local/bin/git describe --abbrev=4 --dirty" failed with status 128.
Index: meson.build
--- meson.build.orig
+++ meson.build
@@ -6,10 +6,6 @@ project('gcab', 'c',
)
git_version = []
-git = find_program('git', required: false)
-if git.found()
- git_version = run_command(git, 'describe', '--abbrev=4', '--dirty', check: false).stdout().strip().split('-')
-endif
# libtool versioning
lt_current = 3

1
archivers/gcab/pkg/DESCR Normal file
View file

@ -0,0 +1 @@
GObject library to create cabinet files.

78
archivers/gcab/pkg/PLIST Normal file
View file

@ -0,0 +1,78 @@
@bin bin/gcab
include/libgcab-1.0/
include/libgcab-1.0/libgcab/
include/libgcab-1.0/libgcab.h
include/libgcab-1.0/libgcab/gcab-cabinet.h
include/libgcab-1.0/libgcab/gcab-enums.h
include/libgcab-1.0/libgcab/gcab-file.h
include/libgcab-1.0/libgcab/gcab-folder.h
lib/girepository-1.0/
lib/girepository-1.0/GCab-1.0.typelib
@lib lib/libgcab-1.0.so.${LIBgcab-1.0_VERSION}
lib/pkgconfig/libgcab-1.0.pc
@man man/man1/gcab.1
share/gir-1.0/
share/gir-1.0/GCab-1.0.gir
share/gtk-doc/
share/gtk-doc/html/
share/gtk-doc/html/gcab/
share/gtk-doc/html/gcab/annotation-glossary.html
share/gtk-doc/html/gcab/api-index-0-5.html
share/gtk-doc/html/gcab/api-index-0-6.html
share/gtk-doc/html/gcab/api-index-1-0.html
share/gtk-doc/html/gcab/api-index-1-4.html
share/gtk-doc/html/gcab/api-index-deprecated.html
share/gtk-doc/html/gcab/api-index-full.html
share/gtk-doc/html/gcab/ch01.html
share/gtk-doc/html/gcab/gcab-GCabCabinet.html
share/gtk-doc/html/gcab/gcab-GCabFile.html
share/gtk-doc/html/gcab/gcab-GCabFolder.html
share/gtk-doc/html/gcab/gcab.devhelp2
share/gtk-doc/html/gcab/home.png
share/gtk-doc/html/gcab/index.html
share/gtk-doc/html/gcab/left-insensitive.png
share/gtk-doc/html/gcab/left.png
share/gtk-doc/html/gcab/right-insensitive.png
share/gtk-doc/html/gcab/right.png
share/gtk-doc/html/gcab/style.css
share/gtk-doc/html/gcab/up-insensitive.png
share/gtk-doc/html/gcab/up.png
share/locale/bs/LC_MESSAGES/gcab.mo
share/locale/cs/LC_MESSAGES/gcab.mo
share/locale/da/LC_MESSAGES/gcab.mo
share/locale/de/LC_MESSAGES/gcab.mo
share/locale/el/LC_MESSAGES/gcab.mo
share/locale/en_GB/LC_MESSAGES/gcab.mo
share/locale/es/LC_MESSAGES/gcab.mo
share/locale/eu/LC_MESSAGES/gcab.mo
share/locale/fi/LC_MESSAGES/gcab.mo
share/locale/fr/LC_MESSAGES/gcab.mo
share/locale/fur/LC_MESSAGES/gcab.mo
share/locale/gl/LC_MESSAGES/gcab.mo
share/locale/hr/LC_MESSAGES/gcab.mo
share/locale/hu/LC_MESSAGES/gcab.mo
share/locale/id/LC_MESSAGES/gcab.mo
share/locale/ja/LC_MESSAGES/gcab.mo
share/locale/ka/LC_MESSAGES/gcab.mo
share/locale/lt/LC_MESSAGES/gcab.mo
share/locale/lv/LC_MESSAGES/gcab.mo
share/locale/nb/LC_MESSAGES/gcab.mo
share/locale/nl/LC_MESSAGES/gcab.mo
share/locale/oc/LC_MESSAGES/gcab.mo
share/locale/pl/LC_MESSAGES/gcab.mo
share/locale/pt/LC_MESSAGES/gcab.mo
share/locale/pt_BR/LC_MESSAGES/gcab.mo
share/locale/ro/LC_MESSAGES/gcab.mo
share/locale/ru/LC_MESSAGES/gcab.mo
share/locale/sl/LC_MESSAGES/gcab.mo
share/locale/sr/LC_MESSAGES/gcab.mo
share/locale/sr@latin/LC_MESSAGES/gcab.mo
share/locale/sv/LC_MESSAGES/gcab.mo
share/locale/tg/LC_MESSAGES/gcab.mo
share/locale/tr/LC_MESSAGES/gcab.mo
share/locale/uk/LC_MESSAGES/gcab.mo
share/locale/zh_CN/LC_MESSAGES/gcab.mo
share/vala/
share/vala/vapi/
share/vala/vapi/libgcab-1.0.deps
share/vala/vapi/libgcab-1.0.vapi

31
archivers/gcpio/Makefile Normal file
View file

@ -0,0 +1,31 @@
COMMENT= GNU cpio copies files to and from archives
DISTNAME= cpio-2.14
PKGNAME= g${DISTNAME}
CATEGORIES= archivers
HOMEPAGE= https://www.gnu.org/software/cpio/
MAINTAINER= Christian Weisgerber <naddy@openbsd.org>
# GPLv3
PERMIT_PACKAGE= Yes
MASTER_SITES= ${MASTER_SITE_GNU:=cpio/}
EXTRACT_SUFX= .tar.bz2
LIB_DEPENDS= devel/gettext,-runtime
WANTLIB= c iconv intl
CONFIGURE_STYLE=gnu
CONFIGURE_ARGS= --program-prefix="g" \
--with-rmt=/etc/rmt
MODGNU_CONFIG_GUESS_DIRS=${WRKSRC}/build-aux
DEBUG_PACKAGES= ${BUILD_PACKAGES}
# autom4te
AUTOCONF_VERSION=2.71
TEST_DEPENDS= ${MODGNU_AUTOCONF_DEPENDS}
TEST_ENV= AUTOCONF_VERSION=${AUTOCONF_VERSION}
.include <bsd.port.mk>

2
archivers/gcpio/distinfo Normal file
View file

@ -0,0 +1,2 @@
SHA256 (cpio-2.14.tar.bz2) = /NwV1g9yZ6b8fvzWudt7bIlmxPL7u5ZMJNQTNv0/LBI=
SIZE (cpio-2.14.tar.bz2) = 1521004

View file

@ -0,0 +1,42 @@
Index: doc/cpio.1
--- doc/cpio.1.orig
+++ doc/cpio.1
@@ -15,9 +15,9 @@
.\" along with GNU cpio. If not, see <http://www.gnu.org/licenses/>.
.TH CPIO 1 "April 29, 2023" "CPIO" "GNU CPIO"
.SH NAME
-cpio \- copy files to and from archives
+gcpio \- copy files to and from archives
.SH SYNOPSIS
-.B cpio
+.B gcpio
{\fB\-o\fR|\fB\-\-create\fR} [\fB\-0acvABLV\fR] [\fB\-C\fR \fIBYTES\fR]
[\fB\-H\fR \fIFORMAT\fR] [\fB\-M\fR \fIMESSAGE\fR]
[\fB\-O\fR [[\fIUSER\fB@\fR]\fIHOST\fB:\fR]\fIARCHIVE\fR]
@@ -31,7 +31,7 @@ cpio \- copy files to and from archives
[\fB\-\-force\-local\fR] [\fB\-\-rsh\-command=\fICOMMAND\fR]
\fB<\fR \fIname-list\fR [\fB>\fR \fIarchive\fR]
-.B cpio
+.B gcpio
{\fB\-i\fR|\fB\-\-extract\fR} [\fB\-bcdfmnrtsuvBSV\fR] [\fB\-C\fR \fIBYTES\fR]
[\fB\-E\fR \fIFILE\fR] [\fB\-H\fR \fIFORMAT\fR]
[\fB\-M\fR \fIMESSAGE\fR] [\fB\-R\fR [\fIUSER\fR][\fB:.\fR][\fIGROUP\fR]]
@@ -52,7 +52,7 @@ cpio \- copy files to and from archives
[\fB\-\-rsh\-command=\fICOMMAND\fR]
[\fIpattern\fR...] [\fB<\fR \fIarchive\fR]
-.B cpio
+.B gcpio
{\fB\-p\fR|\fB\-\-pass\-through\fR} [\fB\-0adlmuvLV\fR]
[\fB\-R\fR [\fIUSER\fR][\fB:.\fR][\fIGROUP\fR]]
[\fB\-\-null\fR] [\fB\-\-reset\-access\-time\fR]
@@ -63,7 +63,7 @@ cpio \- copy files to and from archives
[\fB\-\-no\-preserve\-owner\fR] [\fB\-\-sparse\fR]
\fIdestination-directory\fR \fB<\fR \fIname-list\fR
-.B cpio
+.B gcpio
{\fB\-?\fR|\fB\-\-help\fR|\fB\-\-usage\fR|\fB\-\-version\fR}
.SH NOTE
This manpage is a short description of GNU \fBcpio\fR. For a detailed

View file

@ -0,0 +1,12 @@
Index: tests/symlink-bad-length.at
--- tests/symlink-bad-length.at.orig
+++ tests/symlink-bad-length.at
@@ -44,7 +44,7 @@ AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
# but that could hurt backward compatibility.
AT_CHECK([
-base64 -d ARCHIVE.base64 > ARCHIVE || AT_SKIP_TEST
+b64decode -r ARCHIVE.base64 > ARCHIVE || AT_SKIP_TEST
TZ=UTC cpio -ntv < ARCHIVE 2>stderr
cat stderr | grep -v \
-e 'stored filename length is out of range' \

15
archivers/gcpio/pkg/DESCR Normal file
View file

@ -0,0 +1,15 @@
GNU cpio copies files into or out of a cpio or tar archive. The
archive can be another file on the disk, a magnetic tape, or a pipe.
GNU cpio supports the following archive formats: binary, old ASCII,
new ASCII, crc, HPUX binary, HPUX old ASCII, old tar, and POSIX.1
tar. The tar format is provided for compatibility with the tar
program. By default, cpio creates binary format archives, for
compatibility with older cpio programs. When extracting from
archives, cpio automatically recognizes which kind of archive it
is reading and can read archives created on machines with a different
byte-order.
Note that this port will install these utilities with a 'g' prefix,
e.g. gcpio, but the texinfo documentation will refer to them without
the 'g' prefix.

32
archivers/gcpio/pkg/PLIST Normal file
View file

@ -0,0 +1,32 @@
@bin bin/gcpio
@info info/cpio.info
@man man/man1/gcpio.1
share/locale/da/LC_MESSAGES/cpio.mo
share/locale/de/LC_MESSAGES/cpio.mo
share/locale/es/LC_MESSAGES/cpio.mo
share/locale/fi/LC_MESSAGES/cpio.mo
share/locale/fr/LC_MESSAGES/cpio.mo
share/locale/ga/LC_MESSAGES/cpio.mo
share/locale/gl/LC_MESSAGES/cpio.mo
share/locale/hr/LC_MESSAGES/cpio.mo
share/locale/hu/LC_MESSAGES/cpio.mo
share/locale/id/LC_MESSAGES/cpio.mo
share/locale/it/LC_MESSAGES/cpio.mo
share/locale/ja/LC_MESSAGES/cpio.mo
share/locale/ka/
share/locale/ka/LC_MESSAGES/
share/locale/ka/LC_MESSAGES/cpio.mo
share/locale/ko/LC_MESSAGES/cpio.mo
share/locale/nl/LC_MESSAGES/cpio.mo
share/locale/pl/LC_MESSAGES/cpio.mo
share/locale/pt/LC_MESSAGES/cpio.mo
share/locale/pt_BR/LC_MESSAGES/cpio.mo
share/locale/ro/LC_MESSAGES/cpio.mo
share/locale/ru/LC_MESSAGES/cpio.mo
share/locale/sr/LC_MESSAGES/cpio.mo
share/locale/sv/LC_MESSAGES/cpio.mo
share/locale/tr/LC_MESSAGES/cpio.mo
share/locale/uk/LC_MESSAGES/cpio.mo
share/locale/vi/LC_MESSAGES/cpio.mo
share/locale/zh_CN/LC_MESSAGES/cpio.mo
share/locale/zh_TW/LC_MESSAGES/cpio.mo

View file

@ -0,0 +1,20 @@
COMMENT = el torito boot image extractor
DISTNAME = geteltorito-0.6
CATEGORIES = archivers
HOMEPAGE = https://userpages.uni-koblenz.de/~krienke/ftp/noarch/geteltorito/
# GPL v2 only
PERMIT_PACKAGE = Yes
MASTER_SITES = ${HOMEPAGE}
WRKSRC = ${WRKDIR}/geteltorito
NO_BUILD = Yes
NO_TEST = Yes
do-install:
${INSTALL_SCRIPT} ${WRKSRC}/geteltorito ${PREFIX}/bin/
.include <bsd.port.mk>

View file

@ -0,0 +1,2 @@
SHA256 (geteltorito-0.6.tar.gz) = u0+rjUvt7hJQdilAufXSD8esKfsrXpdnxq8KCVWqa74=
SIZE (geteltorito-0.6.tar.gz) = 11971

View file

@ -0,0 +1,10 @@
geteltorito will extract the initial/default boot image from a CD if
existant. It will not extract any of other possibly existing bootimages
that are allowed by the El Torito standard.
The imagedata are written to STDOUT all other information is written to
STDERR (eg type and size of image).
If you want to write the image to a file instead of STDOUT you can
secify the filename wanted on the commandline using option -o <filename>
call: geteltorito CD-image > toritoimagefile
example: geteltorito /dev/cd0c > /tmp/bootimage

View file

@ -0,0 +1 @@
bin/geteltorito

View file

@ -0,0 +1,31 @@
COMMENT= packing and unpacking of shell archives
DISTNAME= sharutils-4.15.2
REVISION= 4
CATEGORIES= archivers
HOMEPAGE= https://www.gnu.org/software/sharutils/
MASTER_SITES= ${MASTER_SITE_GNU:=sharutils/}
# GPLv3
PERMIT_PACKAGE= Yes
WANTLIB += c iconv intl
LIB_DEPENDS= devel/gettext,-runtime
CONFIGURE_STYLE= gnu
CONFIGURE_ARGS+= --program-prefix="g" \
--disable-uucode
# Regression tests pass without --disable-uuencode
NO_TEST=Yes
# Fix up forward declarations from headers to fix build with "-fno-common"
# as each respective .c file has the declares and defines it in one place.
pre-patch:
sed -i '/program_name;/s/^/extern /' ${WRKSRC}/src/*.h
.include <bsd.port.mk>

View file

@ -0,0 +1,2 @@
SHA256 (sharutils-4.15.2.tar.gz) = 7jNuaFSWZOehmxF63wLt/erGMH8i5bp4uspFcRaRRjc=
SIZE (sharutils-4.15.2.tar.gz) = 2193381

View file

@ -0,0 +1,180 @@
--- doc/shar.1.orig Sat May 30 17:34:15 2015
+++ doc/shar.1 Mon Sep 7 19:38:10 2015
@@ -1,4 +1,4 @@
-.de1 NOP
+.TH gshar 1 "27 Dec 2012" "GNU sharutils (4.13.1)" "User Commands"
. it 1 an-trap
. if \\n[.$] \,\\$*\/
..
@@ -18,10 +18,10 @@
.\" From the definitions shar-opts.def
.\" and the template file agman-cmd.tpl
.SH NAME
-\f\*[B-Font]shar\fP
+\f\*[B-Font]gshar\fP
\- create a shell archive
.SH SYNOPSIS
-\f\*[B-Font]shar\fP
+\f\*[B-Font]gshar\fP
.\" Mixture of short (flag) options and long options
[\f\*[B-Font]\-flags\f[]]
[\f\*[B-Font]\-flag\f[] [\f\*[I-Font]value\f[]]]
@@ -33,12 +33,12 @@
If no \fIfile\fPs are specified, the list of input files is read
from standard input. Standard input must not be a terminal.
.SH "DESCRIPTION"
-\fBshar\fP creates "shell archives" (or shar files) which are in
+\fBgshar\fP creates "shell archives" (or shar files) which are in
text format and can be emailed. These files may be unpacked later by
executing them with \fI/bin/sh\fP. The resulting archive is sent to
standard out unless the \fB-o\fP option is given. A wide range of
features provide extensive flexibility in manufacturing shars and in
-specifying \fBshar\fP "smartness". Archives may be fairly simple
+specifying \fBgshar\fP "smartness". Archives may be fairly simple
(\fB--vanilla-operation\fP) or essentially a mailable \fBtar\fP
archive.
.sp
@@ -168,7 +168,7 @@ This option is a member of the mixed-uuencode class of
.sp
Automatically determine if the files are text or binary and archive
correctly. Files found to be binary are uuencoded prior to packing.
-This is the default behavior for \fBshar\fP.
+This is the default behavior for \fBgshar\fP.
.sp
For a file to be considered a text file instead of a binary file,
all the following should be true:
@@ -270,9 +270,9 @@ necessary. The allowed values are specified as with t
The archive parts created with this option must be unpacked in the
correct order. If the recipient of the shell archives wants to put
all of them in a single email folder (file), they will have to be
-saved in the correct order for \fBunshar\fP to unpack them all at
+saved in the correct order for \fBgunshar\fP to unpack them all at
once (using one of the split archive options).
-see: unshar Invocation.
+see: gunshar Invocation.
.TP
.NOP \f\*[B-Font]\-I\f[] \f\*[I-Font]file\f[], \f\*[B-Font]\-\-input\-file\-list\f[]=\f\*[I-Font]file\f[]
read file list from a file.
@@ -294,7 +294,7 @@ For example:
.nf
{ echo \--compact xz
find . \-type f \-print | sort
- } | shar \-S \-p \-L50K \-o /somewhere/big
+ } | gshar \-S \-p \-L50K \-o /somewhere/big
.fi
.TP
.NOP \f\*[B-Font]\-S\f[], \f\*[B-Font]\-\-stdin\-file\-list\f[]
@@ -316,7 +316,7 @@ files. See the \fB--net-headers\fP option.
.NOP \f\*[B-Font]\-s\f[] \f\*[I-Font]who@where\f[], \f\*[B-Font]\-\-submitter\f[]=\f\*[I-Font]who@where\f[]
override the submitter name.
.sp
-\fBshar\fP will normally determine the submitter name by querying
+\fBgshar\fP will normally determine the submitter name by querying
the system. Use this option if it is being done on behalf of another.
.TP
.NOP \f\*[B-Font]\-a\f[], \f\*[B-Font]\-\-net\-headers\f[]
@@ -361,7 +361,7 @@ start of each output file.
translate messages in the script.
.sp
Translate messages in the script. If you have set the \fBLANG\fP
-environment variable, messages printed by \fBshar\fP will be in the
+environment variable, messages printed by \fBgshar\fP will be in the
specified language. The produced script will still be emitted using
messages in the lingua franca of the computer world: English. This
option will cause the script messages to appear in the languages
@@ -416,7 +416,7 @@ decompression or decoding in the unpacking environment
.NOP \f\*[B-Font]\-P\f[], \f\*[B-Font]\-\-no\-piping\f[]
use temporary files between programs.
.sp
-In the \fIshar\fP file, use a temporary file to hold file contents
+In the \fIgshar\fP file, use a temporary file to hold file contents
between unpacking stages instead of using pipes. This option is
mandatory when you know the unpacking will happen on systems that do
not support pipes.
@@ -450,13 +450,13 @@ feature mainly for archives to be passed among agreeab
Certainly, \fB-X\fP is \fInot\fP for shell archives which are to be
submitted to Usenet or other public networks.
.sp
-The problem is that \fBunshar\fP programs or procedures often feed
+The problem is that \fBgunshar\fP programs or procedures often feed
\fI/bin/sh\fP from its standard input, thus putting \fI/bin/sh\fP
and the shell archive script in competition for input lines. As an
-attempt to alleviate this problem, \fBshar\fP will try to detect
+attempt to alleviate this problem, \fBgshar\fP will try to detect
if \fI/dev/tty\fP exists at the receiving site and will use it to
read user replies. But this does not work in all cases, it may happen
-that the receiving user will have to avoid using \fBunshar\fP
+that the receiving user will have to avoid using \fBgunshar\fP
programs or procedures, and call \fI/bin/sh\fP directly. In vanilla
mode, using \fI/dev/tty\fP is not even attempted.
.TP
@@ -483,7 +483,7 @@ restore in one directory, despite hierarchy.
Restore by the base file name only, rather than path. This option
causes only file names to be used, which is useful when building a
shar from several directories, or another directory. Note that if a
-directory name is passed to shar, the substructure of that directory
+directory name is passed to gshar, the substructure of that directory
will be restored whether this option is specified or not.
.SS "Internationalization options"
.TP
@@ -491,7 +491,7 @@ will be restored whether this option is specified or n
do not internationalize.
.sp
Do not produce internationalized shell archives, use default English
-messages. By default, shar produces archives that will try to output
+messages. By default, gshar produces archives that will try to output
messages in the unpackers preferred language (as determined by the
LANG/LC_MESSAGES environmental variables) when they are unpacked. If
no message file for the unpackers language is found at unpack time,
@@ -500,7 +500,7 @@ messages will be in English.
.NOP \f\*[B-Font]\-\-print\-text\-domain\-dir\f[]
print directory with shar messages.
.sp
-Prints the directory shar looks in to find messages files
+Prints the directory gshar looks in to find messages files
for different languages, then immediately exits.
.SS "User feedback/entertainment"
.TP
@@ -541,7 +541,7 @@ The file "\fI$HOME/.sharrc\fP" will be used, if presen
.SH WARNINGS
No attempt is made to restore the protection and modification dates
for directories, even if this is done by default for files. Thus, if
-a directory is given to \fBshar\fP, the protection and modification
+a directory is given to \fBgshar\fP, the protection and modification
dates of corresponding unpacked directory may not match those of the
original.
.sp
@@ -579,10 +579,10 @@ archive which will use only the file names at unpack t
.br
.in +4
.nf
-shar *.c > cprog.shar
-shar \-Q *.[ch] > cprog.shar
-shar \-B \-l28 \-oarc.sh *.arc
-shar \-f /lcl/src/u*.c > u.sh
+gshar *.c > cprog.shar
+gshar \-Q *.[ch] > cprog.shar
+gshar \-B \-l28 \-oarc.sh *.arc
+gshar \-f /lcl/src/u*.c > u.sh
.in -4
.fi
.SH "EXIT STATUS"
@@ -614,9 +614,9 @@ libopts had an internal operational error. Please rep
it to autogen-users@lists.sourceforge.net. Thank you.
.PP
.SH "SEE ALSO"
-unshar(1)
+gunshar(1)
.SH AUTHORS
-The \fIshar\fP and \fIunshar\fP programs is the collective work of
+The \fIgshar\fP and \fIgunshar\fP programs is the collective work of
many authors. Many people contributed by reporting problems,
suggesting various improvements or submitting actual code. A list of
these people is in the \fITHANKS\fP file in the sharutils distribution.
@@ -631,5 +631,5 @@ reports. It helps to spot the message.
Please send bug reports to: bug-gnu-utils@gnu.org
.SH "NOTES"
-This manual page was \fIAutoGen\fP-erated from the \fBshar\fP
+This manual page was \fIAutoGen\fP-erated from the \fBgshar\fP
option definitions.

View file

@ -0,0 +1,64 @@
--- doc/unshar.1.orig Sat May 30 17:34:19 2015
+++ doc/unshar.1 Mon Sep 7 19:34:56 2015
@@ -1,4 +1,4 @@
-.de1 NOP
+.TH gunshar 1 "27 Dec 2012" "GNU sharutils (4.13.1)" "User Commands"
. it 1 an-trap
. if \\n[.$] \,\\$*\/
..
@@ -18,10 +18,10 @@
.\" From the definitions unshar-opts.def
.\" and the template file agman-cmd.tpl
.SH NAME
-\f\*[B-Font]unshar\fP
+\f\*[B-Font]gunshar\fP
\- unpack a shar archive
.SH SYNOPSIS
-\f\*[B-Font]unshar\fP
+\f\*[B-Font]gunshar\fP
.\" Mixture of short (flag) options and long options
[\f\*[B-Font]\-flags\f[]]
[\f\*[B-Font]\-flag\f[] [\f\*[I-Font]value\f[]]]
@@ -39,7 +39,7 @@ Standard input may not be a terminal.
.ne 2
.SH "DESCRIPTION"
-Unshar scans the input files (typically email messages) looking for
+Gunshar scans the input files (typically email messages) looking for
the start of a shell archive. If no files are given, then standard
input is processed instead. It then passes each archive discovered
through an invocation of the shell program to unpack it.
@@ -56,7 +56,7 @@ which are blank lines or lines beginning with a '#' ch
unpack into the directory \fIdir\fP.
.sp
The input file names are relative to the current directory
-when the program was started. This option tells \fBunshar\fP
+when the program was started. This option tells \fBgunshar\fP
to insert a \fBcd <dir>\fP commad at the start of the
\fBshar\fP text written to the shell.
.TP
@@ -78,7 +78,7 @@ for this option is:
.ti +4
exit 0
.sp
-With this option, \fBunshar\fP isolates each different shell archive
+With this option, \fBgunshar\fP isolates each different shell archive
from the others which have been placed in the same file, unpacking each
in turn, from the beginning of the file to the end. Its proper
operation relies on the fact that many shar files are terminated by a
@@ -165,7 +165,7 @@ it to autogen-users@lists.sourceforge.net. Thank you.
.SH "SEE ALSO"
shar(1)
.SH AUTHORS
-The \fIshar\fP and \fIunshar\fP programs is the collective work of
+The \fgIshar\fP and \fIgunshar\fP programs is the collective work of
many authors. Many people contributed by reporting problems,
suggesting various improvements or submitting actual code. A list of
these people is in the \fITHANKS\fP file in the sharutils distribution.
@@ -180,5 +180,5 @@ reports. It helps to spot the message.
Please send bug reports to: bug-gnu-utils@gnu.org
.SH "NOTES"
-This manual page was \fIAutoGen\fP-erated from the \fBunshar\fP
+This manual page was \fIAutoGen\fP-erated from the \fBgunshar\fP
option definitions.

View file

@ -0,0 +1,24 @@
Security fix for CVE-2018-1000097 sharutils: heap-buffer-overflow in find_archive in unshar.c
https://bugzilla.redhat.com/show_bug.cgi?id=1548018
Index: src/unshar.c
--- src/unshar.c.orig
+++ src/unshar.c
@@ -240,7 +240,7 @@ find_archive (char const * name, FILE * file, off_t st
off_t position = ftello (file);
/* Read next line, fail if no more and no previous process. */
- if (!fgets (rw_buffer, BUFSIZ, file))
+ if (!fgets (rw_buffer, rw_base_size, file))
{
if (!start)
error (0, 0, _("Found no shell commands in %s"), name);
@@ -311,7 +311,7 @@ get_env_tmpdir(void)
static FILE *
load_file (char const ** tmp_fname, FILE * infp)
{
- static char const z_tmpfile[] = "unsh.XXXXXX";
+ static char const z_tmpfile[] = "unsh.XXXXXXXXXX";
char * pz_fname;
FILE * outfp;

View file

@ -0,0 +1,8 @@
This is the set of GNU shar utilities.
`gshar' makes so-called shell archives out of many files, preparing
them for transmission by electronic mail services. `gunshar' helps
unpacking shell archives after reception. The core of both programs
is initially derived from public domain. Some modules and other
code sections are freely borrowed from other GNU distributions,
bringing `shar' under the terms of the GNU General Public License.

Some files were not shown because too many files have changed in this diff Show more