aboutsummaryrefslogtreecommitdiff
path: root/archivers/par2cmdline
diff options
context:
space:
mode:
authorGanael LAPLANCHE <martymac@FreeBSD.org>2020-08-19 10:10:37 +0000
committerGanael LAPLANCHE <martymac@FreeBSD.org>2020-08-19 10:10:37 +0000
commitb0525991c8107c3e46cc01d89d54610403005402 (patch)
tree269cccdcbb85945a7b182e42925c067ed20dcdbc /archivers/par2cmdline
parent41139fd292d9ce3748cc896cd000daf4b02e26f6 (diff)
downloadports-b0525991c8107c3e46cc01d89d54610403005402.tar.gz
ports-b0525991c8107c3e46cc01d89d54610403005402.zip
Change upstream and update to much newer version 0.8.1
A test target has also been added to the port. Changelog: https://github.com/Parchive/par2cmdline/blob/master/ChangeLog PR: 248681 Submitted by: Paul Holmanskikh <freebsd@pkholm.com>
Notes
Notes: svn path=/head/; revision=545299
Diffstat (limited to 'archivers/par2cmdline')
-rw-r--r--archivers/par2cmdline/Makefile24
-rw-r--r--archivers/par2cmdline/distinfo5
-rw-r--r--archivers/par2cmdline/files/patch-Makefile.am21
-rw-r--r--archivers/par2cmdline/files/patch-par2creatorsourcefile.cpp13
-rw-r--r--archivers/par2cmdline/files/patch-par2fileformat.h11
-rw-r--r--archivers/par2cmdline/files/patch-reedsolomon.cpp56
-rw-r--r--archivers/par2cmdline/pkg-descr14
7 files changed, 53 insertions, 91 deletions
diff --git a/archivers/par2cmdline/Makefile b/archivers/par2cmdline/Makefile
index 088c2d22f906..d77134f9df1d 100644
--- a/archivers/par2cmdline/Makefile
+++ b/archivers/par2cmdline/Makefile
@@ -2,27 +2,41 @@
# $FreeBSD$
PORTNAME= par2cmdline
-PORTVERSION= 0.4
-PORTREVISION= 4
+PORTVERSION= 0.8.1
+DISTVERSIONPREFIX= v
CATEGORIES= archivers
-MASTER_SITES= SF/parchive/${PORTNAME}/${PORTVERSION}
MAINTAINER= martymac@FreeBSD.org
COMMENT= Tools for using Parity v2 Archive files
LICENSE= GPLv2
+USES= autoreconf
GNU_CONFIGURE= yes
+USE_GITHUB= yes
+GH_ACCOUNT= Parchive
+GH_PROJECT= par2cmdline
+
PORTDOCS= README
CONFLICTS= par2cmdline-tbb-[0-9]*
-PLIST_FILES= bin/par2 bin/par2create bin/par2repair bin/par2verify
+PLIST_FILES= bin/par2 bin/par2create bin/par2repair bin/par2verify man/man1/par2.1.gz
OPTIONS_DEFINE= DOCS
+TEST_TARGET= check
+
post-install:
@${MKDIR} ${STAGEDIR}${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/README ${STAGEDIR}${DOCSDIR}
-.include <bsd.port.mk>
+.include <bsd.port.pre.mk>
+
+.if ${ARCH} == i386
+# ld: error: undefined symbol: __atomic_load
+# See: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=230888
+USE_GCC= yes
+.endif
+
+.include <bsd.port.post.mk>
diff --git a/archivers/par2cmdline/distinfo b/archivers/par2cmdline/distinfo
index e480f999ccf8..5a105a5995a9 100644
--- a/archivers/par2cmdline/distinfo
+++ b/archivers/par2cmdline/distinfo
@@ -1,2 +1,3 @@
-SHA256 (par2cmdline-0.4.tar.gz) = 9e32b7dbcf7bca8249f98824757d4868714156fe2276516504cd26f736e9f677
-SIZE (par2cmdline-0.4.tar.gz) = 239312
+TIMESTAMP = 1597610346
+SHA256 (Parchive-par2cmdline-v0.8.1_GH0.tar.gz) = 529f85857ec44e501cd8d95b0c8caf47477d7daa5bfb989e422c800bb71b689a
+SIZE (Parchive-par2cmdline-v0.8.1_GH0.tar.gz) = 3581759
diff --git a/archivers/par2cmdline/files/patch-Makefile.am b/archivers/par2cmdline/files/patch-Makefile.am
new file mode 100644
index 000000000000..b0db7c8511ea
--- /dev/null
+++ b/archivers/par2cmdline/files/patch-Makefile.am
@@ -0,0 +1,21 @@
+Install relative symlinks instead of absolute ones.
+
+This is useful when installing into a staging directory to avoid getting links
+temporarily pointing out of that directory.
+
+--- Makefile.am.orig 2020-02-09 14:53:55 UTC
++++ Makefile.am
+@@ -168,9 +168,10 @@ TESTS = tests/test1 \
+ tests/unit_tests
+
+ install-exec-hook :
+- ln -sf $(bindir)/par2$(EXEEXT) $(DESTDIR)$(bindir)/par2create$(EXEEXT)
+- ln -sf $(bindir)/par2$(EXEEXT) $(DESTDIR)$(bindir)/par2verify$(EXEEXT)
+- ln -sf $(bindir)/par2$(EXEEXT) $(DESTDIR)$(bindir)/par2repair$(EXEEXT)
++ cd $(DESTDIR)$(bindir)/ && \
++ ln -sf par2$(EXEEXT) par2create$(EXEEXT) && \
++ ln -sf par2$(EXEEXT) par2verify$(EXEEXT) && \
++ ln -sf par2$(EXEEXT) par2repair$(EXEEXT)
+
+ uninstall-hook :
+ rm -f $(DESTDIR)$(bindir)/par2create$(EXEEXT)
diff --git a/archivers/par2cmdline/files/patch-par2creatorsourcefile.cpp b/archivers/par2cmdline/files/patch-par2creatorsourcefile.cpp
deleted file mode 100644
index 60de68ab300e..000000000000
--- a/archivers/par2cmdline/files/patch-par2creatorsourcefile.cpp
+++ /dev/null
@@ -1,13 +0,0 @@
---- par2creatorsourcefile.cpp.orig 2004-04-15 13:45:23 UTC
-+++ par2creatorsourcefile.cpp
-@@ -224,6 +224,10 @@ bool Par2CreatorSourceFile::Open(Command
- cout << newfraction/10 << '.' << newfraction%10 << "%\r" << flush;
- }
- }
-+ else
-+ {
-+ offset += want;
-+ }
- }
-
- // Did we finish the last block
diff --git a/archivers/par2cmdline/files/patch-par2fileformat.h b/archivers/par2cmdline/files/patch-par2fileformat.h
deleted file mode 100644
index b89635e08205..000000000000
--- a/archivers/par2cmdline/files/patch-par2fileformat.h
+++ /dev/null
@@ -1,11 +0,0 @@
---- par2fileformat.h.orig 2003-08-01 23:43:40 UTC
-+++ par2fileformat.h
-@@ -84,7 +84,7 @@ struct FILEVERIFICATIONPACKET
- PACKET_HEADER header;
- // Body
- MD5Hash fileid; // MD5hash of file_hash_16k, file_length, file_name
-- FILEVERIFICATIONENTRY entries[];
-+ FILEVERIFICATIONENTRY entries[0];
- } PACKED;
-
- // The file description packet is used to record the name of the file,
diff --git a/archivers/par2cmdline/files/patch-reedsolomon.cpp b/archivers/par2cmdline/files/patch-reedsolomon.cpp
deleted file mode 100644
index 8738aec6479a..000000000000
--- a/archivers/par2cmdline/files/patch-reedsolomon.cpp
+++ /dev/null
@@ -1,56 +0,0 @@
---- reedsolomon.cpp.orig 2003-05-26 18:01:31 UTC
-+++ reedsolomon.cpp
-@@ -51,7 +51,7 @@ u32 gcd(u32 a, u32 b)
- }
- }
-
--bool ReedSolomon<Galois8>::SetInput(const vector<bool> &present)
-+template<> bool ReedSolomon<Galois8>::SetInput(const vector<bool> &present)
- {
- inputcount = (u32)present.size();
-
-@@ -80,7 +80,7 @@ bool ReedSolomon<Galois8>::SetInput(cons
- return true;
- }
-
--bool ReedSolomon<Galois8>::SetInput(u32 count)
-+template<> bool ReedSolomon<Galois8>::SetInput(u32 count)
- {
- inputcount = count;
-
-@@ -101,7 +101,7 @@ bool ReedSolomon<Galois8>::SetInput(u32
- return true;
- }
-
--bool ReedSolomon<Galois8>::Process(size_t size, u32 inputindex, const void *inputbuffer, u32 outputindex, void *outputbuffer)
-+template<> bool ReedSolomon<Galois8>::Process(size_t size, u32 inputindex, const void *inputbuffer, u32 outputindex, void *outputbuffer)
- {
- // Look up the appropriate element in the RS matrix
- Galois8 factor = leftmatrix[outputindex * (datapresent + datamissing) + inputindex];
-@@ -189,7 +189,7 @@ bool ReedSolomon<Galois8>::Process(size_
-
- // Set which of the source files are present and which are missing
- // and compute the base values to use for the vandermonde matrix.
--bool ReedSolomon<Galois16>::SetInput(const vector<bool> &present)
-+template<> bool ReedSolomon<Galois16>::SetInput(const vector<bool> &present)
- {
- inputcount = (u32)present.size();
-
-@@ -233,7 +233,7 @@ bool ReedSolomon<Galois16>::SetInput(con
-
- // Record that the specified number of source files are all present
- // and compute the base values to use for the vandermonde matrix.
--bool ReedSolomon<Galois16>::SetInput(u32 count)
-+template<> bool ReedSolomon<Galois16>::SetInput(u32 count)
- {
- inputcount = count;
-
-@@ -267,7 +267,7 @@ bool ReedSolomon<Galois16>::SetInput(u32
- return true;
- }
-
--bool ReedSolomon<Galois16>::Process(size_t size, u32 inputindex, const void *inputbuffer, u32 outputindex, void *outputbuffer)
-+template<> bool ReedSolomon<Galois16>::Process(size_t size, u32 inputindex, const void *inputbuffer, u32 outputindex, void *outputbuffer)
- {
- // Look up the appropriate element in the RS matrix
-
diff --git a/archivers/par2cmdline/pkg-descr b/archivers/par2cmdline/pkg-descr
index 82e4eb9c4046..88e9586cf64e 100644
--- a/archivers/par2cmdline/pkg-descr
+++ b/archivers/par2cmdline/pkg-descr
@@ -1,7 +1,13 @@
Parity v2 Archive create/verify/recover
-par2cmdline is a program for creating and using PAR2 files to detect
-damage in data files and repair them if necessary. It can be used with
-any kind of file. Par files are especially popular on Usenet.
+par2cmdline is a program for creating and using PAR2 files to detect damage in
+data files and repair them if necessary. It can be used with any kind of file.
+Par files are especially popular on Usenet.
-WWW: http://parchive.sourceforge.net/
+OpenMP multithreading was originally developed by Jussi Kansanen:
+https://github.com/jkansanen/par2cmdline-mt
+The original development was done on Sourceforge but stalled. For more
+information from the original authors see:
+http://parchive.sourceforge.net
+
+WWW: https://github.com/Parchive/par2cmdline