diff options
author | Max Brazhnikov <makc@FreeBSD.org> | 2021-12-10 15:11:29 +0000 |
---|---|---|
committer | Max Brazhnikov <makc@FreeBSD.org> | 2021-12-10 15:13:26 +0000 |
commit | cba515834b610de4ee050a032e5eed4b9180fbac (patch) | |
tree | 297436ce2428310e9b1f8aadbe9ef9584162c2e6 | |
parent | ab7f2c4a5661b445b2fbae65838ce5a5545cc282 (diff) | |
download | ports-cba515834b610de4ee050a032e5eed4b9180fbac.tar.gz ports-cba515834b610de4ee050a032e5eed4b9180fbac.zip |
archivers/7-zip: add new port
This is console version of original 7-Zip archiver released for Linux:
https://sourceforge.net/p/sevenzip/discussion/45797/thread/cec5e63147/
The sources are packed with 7z, therefore p7zip is required to build this port.
-rw-r--r-- | archivers/7-zip/Makefile | 40 | ||||
-rw-r--r-- | archivers/7-zip/distinfo | 3 | ||||
-rw-r--r-- | archivers/7-zip/files/patch-CPP_7zip_7zip__gcc.mak | 20 | ||||
-rw-r--r-- | archivers/7-zip/files/patch-CPP_7zip_var__gcc.mak | 12 | ||||
-rw-r--r-- | archivers/7-zip/files/patch-CPP_Windows_SystemInfo.cpp | 18 | ||||
-rw-r--r-- | archivers/7-zip/pkg-descr | 9 | ||||
-rw-r--r-- | archivers/Makefile | 1 |
7 files changed, 103 insertions, 0 deletions
diff --git a/archivers/7-zip/Makefile b/archivers/7-zip/Makefile new file mode 100644 index 000000000000..1be9bc4e5268 --- /dev/null +++ b/archivers/7-zip/Makefile @@ -0,0 +1,40 @@ +PORTNAME= 7-zip +DISTVERSION= 21.06 +CATEGORIES= archivers +MASTER_SITES= https://www.7-zip.org/a/ +DISTNAME= 7z${DISTVERSION:S/.//}-src + +MAINTAINER= makc@FreeBSD.org +COMMENT= Console version of the 7-Zip file archiver + +LIB_DEPENDS= libsysinfo.so:devel/libsysinfo + +USES= 7z dos2unix gmake localbase + +MAKEFILE= ../../cmpl_clang.mak +MAKE_ARGS= LOCAL_FLAGS="${CFLAGS}" \ + LOCAL_LIBS="${LIBS} -lsysinfo" + +NO_WRKSUBDIR= yes +BUILD_WRKSRC= ${WRKSRC}/CPP/7zip/Bundles/Alone2 +DOS2UNIX_FILES= CPP/7zip/7zip_gcc.mak \ + CPP/7zip/var_gcc.mak \ + CPP/Windows/SystemInfo.cpp + +PLIST_FILES= bin/7zz +PORTDOCS= 7zC.txt 7zFormat.txt Methods.txt lzma.txt readme.txt \ + src-history.txt + +OPTIONS_DEFINE= DOCS + +post-patch: + ${ECHO_CMD} > ${WRKSRC}/CPP/7zip/warn_clang.mak + +do-install: + ${INSTALL_PROGRAM} ${BUILD_WRKSRC}/b/c/7zz ${STAGEDIR}/${PREFIX}/bin + +do-install-DOCS-on: + ${MKDIR} ${STAGEDIR}${DOCSDIR} && \ + ${INSTALL_DATA} ${PORTDOCS:C,^,${WRKSRC}/DOC/,} ${STAGEDIR}${DOCSDIR} + +.include <bsd.port.mk> diff --git a/archivers/7-zip/distinfo b/archivers/7-zip/distinfo new file mode 100644 index 000000000000..3e4e5ddbc137 --- /dev/null +++ b/archivers/7-zip/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1639126647 +SHA256 (7z2106-src.7z) = 675eaa90de3c6a3cd69f567bba4faaea309199ca75a6ad12bac731dcdae717ac +SIZE (7z2106-src.7z) = 1215031 diff --git a/archivers/7-zip/files/patch-CPP_7zip_7zip__gcc.mak b/archivers/7-zip/files/patch-CPP_7zip_7zip__gcc.mak new file mode 100644 index 000000000000..593e77c4da87 --- /dev/null +++ b/archivers/7-zip/files/patch-CPP_7zip_7zip__gcc.mak @@ -0,0 +1,20 @@ +--- CPP/7zip/7zip_gcc.mak.orig 2021-12-10 11:04:08 UTC ++++ CPP/7zip/7zip_gcc.mak +@@ -22,7 +22,7 @@ CFLAGS_BASE_LIST = -c + # CFLAGS_BASE_LIST = -S + CFLAGS_BASE = -O2 $(CFLAGS_BASE_LIST) $(CFLAGS_WARN_WALL) $(CFLAGS_WARN) \ + -DNDEBUG -D_REENTRANT -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE \ +- -fPIC ++ -fPIC $(LOCAL_FLAGS) + + # -D_7ZIP_AFFINITY_DISABLE + +@@ -111,7 +111,7 @@ MY_MKDIR=mkdir -p + + # LOCAL_LIBS=-lpthread + # LOCAL_LIBS_DLL=$(LOCAL_LIBS) -ldl +-LIB2 = -lpthread -ldl ++LIB2 = $(LOCAL_LIBS) -lpthread + + + diff --git a/archivers/7-zip/files/patch-CPP_7zip_var__gcc.mak b/archivers/7-zip/files/patch-CPP_7zip_var__gcc.mak new file mode 100644 index 000000000000..0e08d8ce2f50 --- /dev/null +++ b/archivers/7-zip/files/patch-CPP_7zip_var__gcc.mak @@ -0,0 +1,12 @@ +--- CPP/7zip/var_gcc.mak.orig 2021-12-10 10:31:55 UTC ++++ CPP/7zip/var_gcc.mak +@@ -6,7 +6,7 @@ IS_ARM64= + CROSS_COMPILE= + MY_ARCH= + USE_ASM= +-CC=$(CROSS_COMPILE)gcc +-CXX=$(CROSS_COMPILE)g++ ++CC=$(CC) ++CXX=$(CXX) + + # -march=armv8-a+crc+crypto diff --git a/archivers/7-zip/files/patch-CPP_Windows_SystemInfo.cpp b/archivers/7-zip/files/patch-CPP_Windows_SystemInfo.cpp new file mode 100644 index 000000000000..bc362d111086 --- /dev/null +++ b/archivers/7-zip/files/patch-CPP_Windows_SystemInfo.cpp @@ -0,0 +1,18 @@ +--- CPP/Windows/SystemInfo.cpp.orig 2021-12-10 11:30:40 UTC ++++ CPP/Windows/SystemInfo.cpp +@@ -20,6 +20,15 @@ + + #include <sys/auxv.h> + ++#if defined(__FreeBSD__) ++unsigned long getauxval(unsigned long type) ++{ ++ unsigned long aux = 0; ++ elf_aux_info(type, &aux, sizeof(aux)); ++ return aux; ++} ++#endif ++ + // #undef AT_HWCAP // to debug + // #undef AT_HWCAP2 // to debug + diff --git a/archivers/7-zip/pkg-descr b/archivers/7-zip/pkg-descr new file mode 100644 index 000000000000..daf58f3ec94b --- /dev/null +++ b/archivers/7-zip/pkg-descr @@ -0,0 +1,9 @@ +7-Zip is a file archiver with a high compression ratio in 7z format with LZMA +and LZMA2 compression. Supported formats: + +* Packing / unpacking: 7z, XZ, BZIP2, GZIP, TAR, ZIP and WIM +* Unpacking only: AR, ARJ, CAB, CHM, CPIO, CramFS, DMG, EXT, FAT, GPT, HFS, + IHEX, ISO, LZH, LZMA, MBR, MSI, NSIS, NTFS, QCOW2, RAR, RPM, SquashFS, UDF, + UEFI, VDI, VHD, VMDK, WIM, XAR and Z + +WWW: https://www.7-zip.org/ diff --git a/archivers/Makefile b/archivers/Makefile index 2cf1501e299f..caea780b16f5 100644 --- a/archivers/Makefile +++ b/archivers/Makefile @@ -1,5 +1,6 @@ COMMENT = Archivers + SUBDIR += 7-zip SUBDIR += 9e SUBDIR += R-cran-zip SUBDIR += advancecomp |