diff --git a/archivers/Makefile b/archivers/Makefile index 22c1259cb943..fca4d8a860c5 100644 --- a/archivers/Makefile +++ b/archivers/Makefile @@ -1,265 +1,266 @@ COMMENT = Archivers SUBDIR += 9e SUBDIR += R-cran-zip SUBDIR += advancecomp SUBDIR += amigadepacker SUBDIR += arc SUBDIR += arj SUBDIR += ark SUBDIR += atool SUBDIR += bicom SUBDIR += brotli SUBDIR += bzip SUBDIR += bzip2 SUBDIR += c-blosc SUBDIR += cabextract SUBDIR += cmdpack SUBDIR += dact SUBDIR += deb2targz SUBDIR += deco SUBDIR += deutex SUBDIR += dpkg SUBDIR += dzip SUBDIR += engrampa SUBDIR += erlang-snappy SUBDIR += fastjar SUBDIR += file-roller SUBDIR += fpc-bzip2 SUBDIR += fpc-unzip SUBDIR += gcab SUBDIR += gcpio SUBDIR += gnome-autoar SUBDIR += grzip SUBDIR += gtar SUBDIR += gzip SUBDIR += gzip-hpp SUBDIR += gzrecover SUBDIR += ha SUBDIR += hlextract SUBDIR += innoextract SUBDIR += javatar SUBDIR += jzlib SUBDIR += kf5-karchive SUBDIR += kzip SUBDIR += laszip SUBDIR += lazperf SUBDIR += lbrate SUBDIR += lbzip2 SUBDIR += lcab SUBDIR += lha SUBDIR += lha-ac SUBDIR += lhasa SUBDIR += lib1541img SUBDIR += libarc SUBDIR += libarchive SUBDIR += libcabinet SUBDIR += libcomprex SUBDIR += libdeflate SUBDIR += libdynamite SUBDIR += liblz4 SUBDIR += liblzxcomp SUBDIR += libmspack SUBDIR += libpar2 SUBDIR += librtfcomp SUBDIR += libunrar SUBDIR += libunrar6 SUBDIR += libzip SUBDIR += libzippp SUBDIR += linux-c7-lz4 SUBDIR += lizard SUBDIR += lrzip SUBDIR += lua-lzlib SUBDIR += lua-zlib SUBDIR += lxqt-archiver SUBDIR += lzfse SUBDIR += lzip SUBDIR += lziprecover SUBDIR += lzlib SUBDIR += lzma SUBDIR += lzmalib SUBDIR += lzo2 SUBDIR += lzop SUBDIR += makeself SUBDIR += mar SUBDIR += maxcso SUBDIR += minizip SUBDIR += mscompress SUBDIR += mtf SUBDIR += nfpm SUBDIR += nomarch SUBDIR += nwreckdum SUBDIR += ocaml-bz2 SUBDIR += ocaml-zip SUBDIR += opkg-openwrt SUBDIR += p5-Archive-Any SUBDIR += p5-Archive-Any-Lite SUBDIR += p5-Archive-Any-Plugin-Rar SUBDIR += p5-Archive-Extract SUBDIR += p5-Archive-Extract-Libarchive SUBDIR += p5-Archive-Peek SUBDIR += p5-Archive-Rar SUBDIR += p5-Archive-SimpleExtractor SUBDIR += p5-Archive-Tar SUBDIR += p5-Archive-Tar-Wrapper SUBDIR += p5-Archive-Zip SUBDIR += p5-Compress-Bzip2 SUBDIR += p5-Compress-LZ4 SUBDIR += p5-Compress-LZF SUBDIR += p5-Compress-LZO SUBDIR += p5-Compress-LZW SUBDIR += p5-Compress-Raw-Bzip2 SUBDIR += p5-Compress-Raw-Lzma SUBDIR += p5-Compress-Raw-Zlib SUBDIR += p5-Compress-Snappy SUBDIR += p5-Gzip-Faster SUBDIR += p5-IO-Compress SUBDIR += p5-IO-Compress-Brotli SUBDIR += p5-IO-Compress-Lzf SUBDIR += p5-IO-Compress-Lzma SUBDIR += p5-IO-Compress-Lzop SUBDIR += p5-IO-Zlib SUBDIR += p5-Mac-Macbinary SUBDIR += p5-POE-Filter-Bzip2 SUBDIR += p5-POE-Filter-LZF SUBDIR += p5-POE-Filter-LZO SUBDIR += p5-POE-Filter-LZW SUBDIR += p5-POE-Filter-Zlib SUBDIR += p5-PerlIO-gzip SUBDIR += p5-PerlIO-via-Bzip2 SUBDIR += p7zip SUBDIR += p7zip-codec-rar SUBDIR += packddir SUBDIR += paq SUBDIR += par SUBDIR += par2cmdline SUBDIR += parchive SUBDIR += pbzip2 SUBDIR += pear-File_Archive SUBDIR += pear-Horde_Compress SUBDIR += pear-Horde_Compress_Fast SUBDIR += pear-Horde_Pack SUBDIR += pear-PHP_Archive SUBDIR += peazip SUBDIR += pecl-lzf SUBDIR += pecl-rar SUBDIR += php-brotli SUBDIR += php-horde_lz4 SUBDIR += php-lz4 SUBDIR += php-snappy SUBDIR += php-zstd SUBDIR += php73-bz2 SUBDIR += php73-phar SUBDIR += php73-zip SUBDIR += php73-zlib SUBDIR += php74-bz2 SUBDIR += php74-phar SUBDIR += php74-zip SUBDIR += php74-zlib SUBDIR += php80-bz2 SUBDIR += php80-phar SUBDIR += php80-zip SUBDIR += php80-zlib SUBDIR += pigz SUBDIR += pixz SUBDIR += plzip SUBDIR += ppmd SUBDIR += ppmd-7z SUBDIR += ppunpack SUBDIR += pxz SUBDIR += py-acefile SUBDIR += py-borgbackup SUBDIR += py-brotli SUBDIR += py-brotlicffi SUBDIR += py-brotlipy SUBDIR += py-bup SUBDIR += py-bz2file SUBDIR += py-libarchive-c SUBDIR += py-lz4 SUBDIR += py-lzma SUBDIR += py-lzstring SUBDIR += py-python-lhafile SUBDIR += py-python-lzo SUBDIR += py-python-snappy SUBDIR += py-rarfile SUBDIR += py-rcssmin SUBDIR += py-rjsmin SUBDIR += py-warctools SUBDIR += py-xopen SUBDIR += py-zopfli SUBDIR += py-zstandard SUBDIR += py-zstd SUBDIR += qpress SUBDIR += quazip SUBDIR += rar SUBDIR += rpm2cpio SUBDIR += rpm4 SUBDIR += rubygem-archive-tar-minitar SUBDIR += rubygem-archive-zip SUBDIR += rubygem-bzip2-ruby SUBDIR += rubygem-fpm SUBDIR += rubygem-libarchive SUBDIR += rubygem-minitar SUBDIR += rubygem-minitar-cli SUBDIR += rubygem-ruby-xz SUBDIR += rubygem-rubyzip SUBDIR += rubygem-rubyzip13 SUBDIR += rubygem-rubyzip2 SUBDIR += rubygem-rubyzip20 SUBDIR += rubygem-snappy SUBDIR += rvm SUBDIR += rzip SUBDIR += sectar SUBDIR += sharutils SUBDIR += snappy SUBDIR += snappy-java SUBDIR += snzip SUBDIR += squsq SUBDIR += star SUBDIR += streamvbyte SUBDIR += stuffit SUBDIR += szip SUBDIR += tar-stream-chunker SUBDIR += tardy SUBDIR += thunar-archive-plugin SUBDIR += torrentzip SUBDIR += ucl SUBDIR += unace SUBDIR += unadf SUBDIR += unalz SUBDIR += unarchiver SUBDIR += unarj SUBDIR += unarr SUBDIR += undms SUBDIR += unfoo SUBDIR += unlzx SUBDIR += unmakeself SUBDIR += unmass SUBDIR += unrar SUBDIR += unrar-iconv SUBDIR += unrpa SUBDIR += unshield SUBDIR += unzip SUBDIR += unzoo SUBDIR += upx SUBDIR += urbackup-client SUBDIR += urbackup-server SUBDIR += v1541commander + SUBDIR += vbz-compression SUBDIR += xar SUBDIR += xarchive SUBDIR += xarchiver SUBDIR += xdms SUBDIR += xmill SUBDIR += xpk SUBDIR += zchunk SUBDIR += zip SUBDIR += zip-ada SUBDIR += zipmix SUBDIR += zipper SUBDIR += zoo SUBDIR += zopfli SUBDIR += zstd SUBDIR += zstr SUBDIR += zutils .include diff --git a/archivers/vbz-compression/Makefile b/archivers/vbz-compression/Makefile new file mode 100644 index 000000000000..db7a778e88ba --- /dev/null +++ b/archivers/vbz-compression/Makefile @@ -0,0 +1,31 @@ +PORTNAME= vbz-compression +DISTVERSIONPREFIX= v +DISTVERSION= 1.0.1 +CATEGORIES= archivers + +MAINTAINER= jwb@FreeBSD.org +COMMENT= Variable byte integer encoding to compress Oxford Nanopore signal data + +LICENSE= MPL20 +LICENSE_FILE= ${WRKSRC}/LICENCE.txt + +BUILD_DEPENDS= streamvbyte>=0.4.1:archivers/streamvbyte +LIB_DEPENDS= libhdf5.so:science/hdf5 \ + libzstd.so:archivers/zstd + +USES= cmake +USE_GITHUB= yes +USE_LDCONFIG= ${PREFIX}/hdf5/lib/plugin + +GH_ACCOUNT= nanoporetech +GH_PROJECT= vbz_compression + +CMAKE_ARGS= -DENABLE_CONAN=OFF \ + -DENABLE_PERF_TESTING=OFF \ + -DENABLE_PYTHON=OFF \ + -DSTREAMVBYTE_INSTALL_DIR=${LOCALBASE} \ + -DSTREAMVBYTE_STATIC_LIB=${LOCALBASE}/lib/libstreamvbyte_static.a + +PLIST_FILES= hdf5/lib/plugin/libvbz_hdf_plugin.so + +.include diff --git a/archivers/vbz-compression/distinfo b/archivers/vbz-compression/distinfo new file mode 100644 index 000000000000..38af63eba95a --- /dev/null +++ b/archivers/vbz-compression/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1628777147 +SHA256 (nanoporetech-vbz_compression-v1.0.1_GH0.tar.gz) = 3c140fb4f60f8451db68768457c59b10aadba4c33f1b1a1eadb4439345b68192 +SIZE (nanoporetech-vbz_compression-v1.0.1_GH0.tar.gz) = 5292519 diff --git a/archivers/vbz-compression/files/patch-CMakeLists.txt b/archivers/vbz-compression/files/patch-CMakeLists.txt new file mode 100644 index 000000000000..048c9e78875d --- /dev/null +++ b/archivers/vbz-compression/files/patch-CMakeLists.txt @@ -0,0 +1,37 @@ +--- CMakeLists.txt.orig 2020-06-19 15:45:38 UTC ++++ CMakeLists.txt +@@ -139,34 +139,6 @@ find_package(HDF5 1.8.16) + find_package(zstd 1.3.1 REQUIRED) + find_package(Sanitizers) + +-get_filename_component(STREAMVBYTE_SOURCE_DIR +- third_party/streamvbyte +- ABSOLUTE +-) +-set(STREAMVBYTE_INSTALL_DIR "${CMAKE_BINARY_DIR}/streamvbyte_lib/") +-set(STREAMVBYTE_PREFIX ${CMAKE_BINARY_DIR}/streamvbyte) +-set(STREAMVBYTE_STATIC_LIB_NAME ${CMAKE_STATIC_LIBRARY_PREFIX}streamvbyte_static${CMAKE_STATIC_LIBRARY_SUFFIX}) +-set(STREAMVBYTE_STATIC_LIB_SUBDIR ".") +-get_property(is_multi_config GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG) +-if (is_multi_config) +- set(STREAMVBYTE_STATIC_LIB_SUBDIR "$") +-endif() +-ExternalProject_Add( +- streamvbyte +- SOURCE_DIR ${STREAMVBYTE_SOURCE_DIR} +- UPDATE_DISCONNECTED TRUE +- PREFIX ${STREAMVBYTE_PREFIX} +- CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${STREAMVBYTE_INSTALL_DIR} -DSTREAMVBYTE_DISABLE_NATIVE=ON -DSTD_FLAGS="-std=c99" +- # We need to tell CMake about libraries we will link to, otherwise some generators (eg: Ninja) +- # complain about how knowing how to build libstreamvbyte_static.a, for example. +- # Ideally, we'd set a hypothetical INSTALL_BYPRODUCTS, and link to the installed file, but that +- # doesn't seem to be an option. +- BUILD_BYPRODUCTS "/${STREAMVBYTE_STATIC_LIB_NAME}" +-) +-ExternalProject_Get_Property(streamvbyte BINARY_DIR) +-set(STREAMVBYTE_STATIC_LIB "${BINARY_DIR}/${STREAMVBYTE_STATIC_LIB_SUBDIR}/${STREAMVBYTE_STATIC_LIB_NAME}") +- +- + ######################################################################## + # + # Warnings diff --git a/archivers/vbz-compression/files/patch-vbz_CMakeLists.txt b/archivers/vbz-compression/files/patch-vbz_CMakeLists.txt new file mode 100644 index 000000000000..fe9d4131a9f9 --- /dev/null +++ b/archivers/vbz-compression/files/patch-vbz_CMakeLists.txt @@ -0,0 +1,15 @@ +--- vbz/CMakeLists.txt.orig 2020-06-19 15:45:38 UTC ++++ vbz/CMakeLists.txt +@@ -25,12 +25,6 @@ target_include_directories(vbz + ${STREAMVBYTE_INSTALL_DIR}/include + ) + +-# This explicit dependency is required to make sure the header files are installed into the right +-# location before we try building against them. +-add_dependencies(vbz +- streamvbyte +-) +- + if (WIN32 OR APPLE OR "${CMAKE_SYSTEM_PROCESSOR}" MATCHES "x86_64") + if(NOT MSVC) + target_compile_options(vbz PRIVATE -mssse3) diff --git a/archivers/vbz-compression/pkg-descr b/archivers/vbz-compression/pkg-descr new file mode 100644 index 000000000000..78a0d6ace188 --- /dev/null +++ b/archivers/vbz-compression/pkg-descr @@ -0,0 +1,10 @@ +VBZ Compression uses variable byte integer encoding to compress Oxford +Nanopore signal data. + +The performance of VBZ is achieved by taking advantage of the properties of the +raw signal and therefore is most effective when applied to the signal dataset. +Other datasets you may have in your Fast5 files will not be able to take +advantage of the default VBZ settings for compression. VBZ will be used as the +default compression scheme in a future release of MinKNOW. + +WWW: https://github.com/nanoporetech/vbz_compression