Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F159695548
D25354.id73351.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
12 KB
Referenced Files
None
Subscribers
None
D25354.id73351.diff
View Options
Index: head/net/Makefile
===================================================================
--- head/net/Makefile
+++ head/net/Makefile
@@ -476,6 +476,7 @@
SUBDIR += nats-streaming-server
SUBDIR += nats-top
SUBDIR += nbd-server
+ SUBDIR += nbdkit
SUBDIR += nc
SUBDIR += ncp
SUBDIR += ndisc6
Index: head/net/nbdkit/Makefile
===================================================================
--- head/net/nbdkit/Makefile
+++ head/net/nbdkit/Makefile
@@ -0,0 +1,70 @@
+# $FreeBSD$
+
+PORTNAME= nbdkit
+PORTVERSION= 1.20.2
+CATEGORIES= net
+# XXX Although nbdkit uses github for its homepage, the release tarballs served
+# by github haven't been through autoconf. So we must download the sources
+# from libguestfs.org instead.
+MASTER_SITES= http://download.libguestfs.org/${PORTNAME}/${PORTVERSION:R}-stable/
+
+MAINTAINER= asomers@FreeBSD.org
+COMMENT= NBD server toolkit with stable ABI and permissive license
+
+LICENSE= BSD3CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= bash:shells/bash
+
+USES= gmake libtool
+
+GNU_CONFIGURE= yes
+INSTALL_TARGET= install-strip
+TEST_TARGET= check
+
+# Rust consumers will download the Rust plugin from crates.io
+CONFIGURE_ARGS+= --disable-rust
+# These libraries does not exist on ports
+CONFIGURE_ARGS+= --without-libnbd
+CONFIGURE_ARGS+= --without-libguestfs
+# We could theoretically build these other plugins, if anybody cares to.
+CONFIGURE_ARGS+= --disable-ocaml
+CONFIGURE_ARGS+= --disable-tcl
+CONFIGURE_ARGS+= --disable-lua
+CONFIGURE_ARGS+= --disable-golang
+CONFIGURE_ARGS+= --disable-vddk
+CONFIGURE_ARGS+= --without-ext2
+CONFIGURE_ARGS+= --without-iso
+CONFIGURE_ARGS+= --without-linuxdisk
+USE_LDCONFIG= yes
+
+OPTIONS_DEFINE= CURL GNUTLS LIBVIRT LZMA MANPAGES PERL PYTHON RUBY SSH ZLIB
+GNUTLS_BUILD_DEPENDS= gnutls>0:security/gnutls
+GNUTLS_RUN_DEPENDS= gnutls>0:security/gnutls
+
+OPTIONS_DEFAULT= GNUTLS MANPAGES
+OPTIONS_SUB= yes
+
+CURL_BUILD_DEPENDS+= curl:ftp/curl
+CURL_BUILD_DEPENDS+= pkgconf:devel/pkgconf
+CURL_CONFIGURE_WITH= curl
+CURL_RUN_DEPENDS+= curl:ftp/curl
+LIBVIRT_CONFIGURE_WITH= libvirt
+LIBVIRT_LIB_DEPENDS= libvirt.so:devel/libvirt
+LZMA_BUILD_DEPENDS+= pkgconf:devel/pkgconf
+LZMA_CONFIGURE_WITH= liblzma
+LZMA_LIB_DEPENDS= liblzma.so:archivers/lzmalib
+MANPAGES_USE+= perl5=build
+MANPAGES_USES+= perl5
+PERL_CONFIGURE_ENABLE= perl
+PERL_USE+= perl5
+PYTHON_CONFIGURE_ENABLE= python
+PYTHON_USES+= python:3.3+
+RUBY_CONFIGURE_ENABLE= ruby
+RUBY_USE+= ruby
+SSH_CONFIGURE_WITH= ssh
+SSH_LIB_DEPENDS= libssh.so:security/libssh
+ZLIB_BUILD_DEPENDS+= pkgconf:devel/pkgconf
+ZLIB_CONFIGURE_WITH= zlib
+
+.include <bsd.port.mk>
Index: head/net/nbdkit/distinfo
===================================================================
--- head/net/nbdkit/distinfo
+++ head/net/nbdkit/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1592531771
+SHA256 (nbdkit-1.20.2.tar.gz) = b78a8b59e74284af6a34f8bcb97c42c5d8846dc59dc94a8f4538d8690953dd31
+SIZE (nbdkit-1.20.2.tar.gz) = 1783082
Index: head/net/nbdkit/files/patch-configure
===================================================================
--- head/net/nbdkit/files/patch-configure
+++ head/net/nbdkit/files/patch-configure
@@ -0,0 +1,56 @@
+--- configure.orig 2020-05-02 09:04:50 UTC
++++ configure
+@@ -911,6 +911,7 @@ enable_largefile
+ enable_gcc_warnings
+ with_iconv
+ with_tls_priority
++with_linuxdisk
+ enable_valgrind
+ enable_libfuzzer
+ enable_plugins
+@@ -1645,6 +1646,7 @@ Optional Packages:
+ compiler's sysroot if not specified).
+ --without-iconv don't try to link against iconv [default=check]
+ --with-tls-priority default TLS session priority string [default=NORMAL]
++ --without-linuxdisk disable linuxdisk plugin [default=check]
+ --without-curl disable curl plugin [default=check]
+ --without-ssh disable ssh plugin [default=check]
+ --without-iso disable iso plugin [default=check]
+@@ -18598,20 +18600,32 @@ done
+
+ fi
+
++
++# Check whether --with-linuxdisk was given.
++if test "${with_linuxdisk+set}" = set; then :
++ withval=$with_linuxdisk;
++else
++ with_linuxdisk=check
++fi
++
+ mke2fs_with_d=no
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for mke2fs supporting the -d option" >&5
++if test "$with_linuxdisk" != "no"; then :
++
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mke2fs supporting the -d option" >&5
+ $as_echo_n "checking for mke2fs supporting the -d option... " >&6; }
+-if mke2fs -V >/dev/null 2>&1; then :
++ if mke2fs -V >/dev/null 2>&1; then :
+
+- if LANG=C mke2fs -d 2>&1 | grep -sq "option requires an argument"; then :
++ if LANG=C mke2fs -d 2>&1 | grep -sq "option requires an argument"; then :
+
+- mke2fs_with_d=yes
++ mke2fs_with_d=yes
+
+ fi
+
+ fi
+-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $mke2fs_with_d" >&5
++ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $mke2fs_with_d" >&5
+ $as_echo "$mke2fs_with_d" >&6; }
++
++fi
+ if test "x$mke2fs_with_d" = "xyes"; then
+ HAVE_MKE2FS_WITH_D_TRUE=
+ HAVE_MKE2FS_WITH_D_FALSE='#'
Index: head/net/nbdkit/files/patch-plugins_info_Makefile.in
===================================================================
--- head/net/nbdkit/files/patch-plugins_info_Makefile.in
+++ head/net/nbdkit/files/patch-plugins_info_Makefile.in
@@ -0,0 +1,14 @@
+--- plugins/info/Makefile.in.orig 2020-05-02 09:04:51 UTC
++++ plugins/info/Makefile.in
+@@ -499,7 +499,10 @@ nbdkit_info_plugin_la_CPPFLAGS = \
+ -I$(top_srcdir)/common/include \
+ $(NULL)
+
+-nbdkit_info_plugin_la_CFLAGS = $(WARNINGS_CFLAGS)
++nbdkit_info_plugin_la_CFLAGS = \
++ $(WARNINGS_CFLAGS) \
++ $(GNUTLS_CFLAGS)
++
+ nbdkit_info_plugin_la_LDFLAGS = \
+ -module -avoid-version -shared $(SHARED_LDFLAGS) \
+ -Wl,--version-script=$(top_srcdir)/plugins/plugins.syms \
Index: head/net/nbdkit/files/patch-plugins_ssh_ssh.c
===================================================================
--- head/net/nbdkit/files/patch-plugins_ssh_ssh.c
+++ head/net/nbdkit/files/patch-plugins_ssh_ssh.c
@@ -0,0 +1,10 @@
+--- plugins/ssh/ssh.c.orig 2020-06-18 20:38:31 UTC
++++ plugins/ssh/ssh.c
+@@ -30,6 +30,7 @@
+ * SUCH DAMAGE.
+ */
+
++#include <sys/stat.h>
+ #include <config.h>
+
+ #include <stdio.h>
Index: head/net/nbdkit/pkg-descr
===================================================================
--- head/net/nbdkit/pkg-descr
+++ head/net/nbdkit/pkg-descr
@@ -0,0 +1,20 @@
+nbdkit is a toolkit for creating NBD servers.
+
+The key features are:
+
+ * Multithreaded NBD server written in C with good performance.
+
+ * Minimal dependencies for the basic server.
+
+ * Liberal license (BSD) allows nbdkit to be linked to proprietary
+ libraries or included in proprietary code.
+
+ * Well-documented, simple plugin API with a stable ABI guarantee.
+ Lets you export "unconventional" block devices easily.
+
+ * You can write plugins in C, Go, Lua, Perl, Python, OCaml, Ruby,
+ Rust, shell script or Tcl.
+
+ * Filters can be stacked in front of plugins to transform the output.
+
+WWW: https://github.com/libguestfs/nbdkit
Index: head/net/nbdkit/pkg-plist
===================================================================
--- head/net/nbdkit/pkg-plist
+++ head/net/nbdkit/pkg-plist
@@ -0,0 +1,130 @@
+include/nbd-protocol.h
+include/nbdkit-common.h
+include/nbdkit-filter.h
+include/nbdkit-plugin.h
+include/nbdkit-version.h
+lib/nbdkit/filters/nbdkit-blocksize-filter.so
+lib/nbdkit/filters/nbdkit-cache-filter.so
+lib/nbdkit/filters/nbdkit-cacheextents-filter.so
+lib/nbdkit/filters/nbdkit-cow-filter.so
+lib/nbdkit/filters/nbdkit-delay-filter.so
+lib/nbdkit/filters/nbdkit-error-filter.so
+lib/nbdkit/filters/nbdkit-exitlast-filter.so
+lib/nbdkit/filters/nbdkit-extentlist-filter.so
+lib/nbdkit/filters/nbdkit-fua-filter.so
+lib/nbdkit/filters/nbdkit-ip-filter.so
+lib/nbdkit/filters/nbdkit-limit-filter.so
+lib/nbdkit/filters/nbdkit-log-filter.so
+lib/nbdkit/filters/nbdkit-nocache-filter.so
+lib/nbdkit/filters/nbdkit-noextents-filter.so
+lib/nbdkit/filters/nbdkit-nofilter-filter.so
+lib/nbdkit/filters/nbdkit-noparallel-filter.so
+lib/nbdkit/filters/nbdkit-nozero-filter.so
+lib/nbdkit/filters/nbdkit-offset-filter.so
+lib/nbdkit/filters/nbdkit-partition-filter.so
+lib/nbdkit/filters/nbdkit-rate-filter.so
+lib/nbdkit/filters/nbdkit-readahead-filter.so
+lib/nbdkit/filters/nbdkit-retry-filter.so
+lib/nbdkit/filters/nbdkit-stats-filter.so
+lib/nbdkit/filters/nbdkit-truncate-filter.so
+%%LZMA%%lib/nbdkit/filters/nbdkit-xz-filter.so
+%%CURL%%lib/nbdkit/plugins/nbdkit-curl-plugin.so
+lib/nbdkit/plugins/nbdkit-data-plugin.so
+lib/nbdkit/plugins/nbdkit-eval-plugin.so
+lib/nbdkit/plugins/nbdkit-example1-plugin.so
+lib/nbdkit/plugins/nbdkit-example2-plugin.so
+lib/nbdkit/plugins/nbdkit-example3-plugin.so
+%%PERL%%lib/nbdkit/plugins/nbdkit-example4-plugin
+lib/nbdkit/plugins/nbdkit-file-plugin.so
+lib/nbdkit/plugins/nbdkit-floppy-plugin.so
+lib/nbdkit/plugins/nbdkit-full-plugin.so
+%%ZLIB%%lib/nbdkit/plugins/nbdkit-gzip-plugin.so
+lib/nbdkit/plugins/nbdkit-info-plugin.so
+%%LIBVIRT%%lib/nbdkit/plugins/nbdkit-libvirt-plugin.so
+lib/nbdkit/plugins/nbdkit-memory-plugin.so
+lib/nbdkit/plugins/nbdkit-null-plugin.so
+lib/nbdkit/plugins/nbdkit-partitioning-plugin.so
+lib/nbdkit/plugins/nbdkit-pattern-plugin.so
+%%PERL%%lib/nbdkit/plugins/nbdkit-perl-plugin.so
+%%PYTHON%%lib/nbdkit/plugins/nbdkit-python-plugin.so
+lib/nbdkit/plugins/nbdkit-random-plugin.so
+lib/nbdkit/plugins/nbdkit-sh-plugin.so
+lib/nbdkit/plugins/nbdkit-split-plugin.so
+%%SSH%%lib/nbdkit/plugins/nbdkit-ssh-plugin.so
+lib/nbdkit/plugins/nbdkit-streaming-plugin.so
+%%PERL%%lib/nbdkit/plugins/nbdkit-tar-plugin
+lib/nbdkit/plugins/nbdkit-tmpdisk-plugin.so
+lib/nbdkit/plugins/nbdkit-zero-plugin.so
+libdata/pkgconfig/nbdkit.pc
+%%MANPAGES%%man/man1/nbdkit-blocksize-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-cache-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-cacheextents-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-captive.1.gz
+%%MANPAGES%%man/man1/nbdkit-cow-filter.1.gz
+%%MANPAGES%%%%CURL%%man/man1/nbdkit-curl-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-data-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-delay-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-error-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-eval-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-example1-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-example2-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-example3-plugin.1.gz
+%%MANPAGES%%%%PERL%%man/man1/nbdkit-example4-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-exitlast-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-extentlist-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-file-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-floppy-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-fua-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-full-plugin.1.gz
+%%MANPAGES%%%%ZLIB%%man/man1/nbdkit-gzip-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-info-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-ip-filter.1.gz
+%%MANPAGES%%%%LIBVIRT%%man/man1/nbdkit-libvirt-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-limit-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-log-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-loop.1.gz
+%%MANPAGES%%man/man1/nbdkit-memory-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-nocache-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-noextents-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-nofilter-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-noparallel-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-nozero-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-null-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-offset-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-partition-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-partitioning-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-pattern-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-probing.1.gz
+%%MANPAGES%%man/man1/nbdkit-protocol.1.gz
+%%MANPAGES%%man/man1/nbdkit-random-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-rate-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-readahead-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-release-notes-1.10.1.gz
+%%MANPAGES%%man/man1/nbdkit-release-notes-1.12.1.gz
+%%MANPAGES%%man/man1/nbdkit-release-notes-1.14.1.gz
+%%MANPAGES%%man/man1/nbdkit-release-notes-1.16.1.gz
+%%MANPAGES%%man/man1/nbdkit-release-notes-1.18.1.gz
+%%MANPAGES%%man/man1/nbdkit-release-notes-1.20.1.gz
+%%MANPAGES%%man/man1/nbdkit-release-notes-1.4.1.gz
+%%MANPAGES%%man/man1/nbdkit-release-notes-1.6.1.gz
+%%MANPAGES%%man/man1/nbdkit-release-notes-1.8.1.gz
+%%MANPAGES%%man/man1/nbdkit-retry-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-security.1.gz
+%%MANPAGES%%man/man1/nbdkit-service.1.gz
+%%MANPAGES%%man/man1/nbdkit-split-plugin.1.gz
+%%MANPAGES%%%%SSH%%man/man1/nbdkit-ssh-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-stats-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-streaming-plugin.1.gz
+%%MANPAGES%%%%PERL%%man/man1/nbdkit-tar-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-tls.1.gz
+%%MANPAGES%%man/man1/nbdkit-tmpdisk-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit-truncate-filter.1.gz
+%%MANPAGES%%%%LZMA%%man/man1/nbdkit-xz-filter.1.gz
+%%MANPAGES%%man/man1/nbdkit-zero-plugin.1.gz
+%%MANPAGES%%man/man1/nbdkit.1.gz
+%%MANPAGES%%man/man3/nbdkit-filter.3.gz
+%%MANPAGES%%%%PERL%%man/man3/nbdkit-perl-plugin.3.gz
+%%MANPAGES%%man/man3/nbdkit-plugin.3.gz
+%%MANPAGES%%%%PYTHON%%man/man3/nbdkit-python-plugin.3.gz
+%%MANPAGES%%man/man3/nbdkit-sh-plugin.3.gz
+sbin/nbdkit
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Thu, Jun 18, 3:47 AM (3 h, 31 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
34044924
Default Alt Text
D25354.id73351.diff (12 KB)
Attached To
Mode
D25354: net/nbdkit: new port
Attached
Detach File
Event Timeline
Log In to Comment