diff --git a/net/vde2/Makefile b/net/vde2/Makefile index 10d2eda557ef..0532574dddcb 100644 --- a/net/vde2/Makefile +++ b/net/vde2/Makefile @@ -1,51 +1,70 @@ PORTNAME= vde -PORTVERSION= 2.3.3 -PORTREVISION= 1 DISTVERSIONPREFIX= v +DISTVERSION= 2.3.3-57 +DISTVERSIONSUFFIX= -g6ad51c2 CATEGORIES= net -#MASTER_SITES= https://github.com/virtualsquare/vde-2/archive/refs/tags/ PKGNAMESUFFIX= 2 -MAINTAINER= ports@FreeBSD.org +MAINTAINER= vbox@FreeBSD.org COMMENT= User-mode virtual ethernet infrastructure WWW= https://github.com/virtualsquare/vde-2 LICENSE= BSD3CLAUSE GPLv2 LGPL21 LICENSE_COMB= multi -LIB_DEPENDS= libpcap.so.1:net/libpcap - -USES= autoreconf gmake libtool pathfix shebangfix ssl -USE_LDCONFIG= yes +BUILD_DEPENDS= gmake:devel/gmake +USES= cmake USE_GITHUB= yes GH_ACCOUNT= virtualsquare GH_PROJECT= ${PORTNAME}-${PKGNAMESUFFIX} +USE_LDCONFIG= yes + +CMAKE_ON= ENABLE_VXLAN \ + ENABLE_VDE_OVER_NS \ + ENABLE_ROUTER \ + ENABLE_PCAP \ + ENABLE_TUNTAP +CMAKE_OFF= ENABLE_EXPERIMENTAL \ + ENABLE_PROFILE + +LDFLAGS+= -L/usr/lib # for use system libpcap + +CONFLICTS= ${PORTNAME} + +BINARY_ALIAS= make=${GMAKE} + +OPTIONS_DEFINE= EXPERIMENTAL PROFILE +OPTIONS_RADIO= CRYPTCAB +OPTIONS_RADIO_CRYPTCAB= MBEDTLS WOLFSSL +OPTIONS_SUB= yes + +CRYPTCAB_DESC= Enable vde_cryptcab +EXPERIMENTAL_DESC= Enable experimental features +MBEDTLS_DESC= via mbed TLS +WOLFSSL_DESC= via wolfSSL + +EXPERIMENTAL_CMAKE_BOOL= ENABLE_EXPERIMENTAL + +MBEDTLS_LIB_DEPENDS= libmbedcrypto.so:security/mbedtls3 +MBEDTLS_USES= localbase:ldflags +MBEDTLS_CMAKE_ON= -DENABLE_CRYPTCAB=ON \ + -DWITH_CRYPT=mbedtls -CONFLICTS= vde -GNU_CONFIGURE= yes -GNU_CONFIGURE_MANPREFIX=${PREFIX}/share -INSTALL_TARGET= install-strip -MAKE_ENV= V=1 -MAKE_JOBS_UNSAFE=yes +PROFILE_CMAKE_BOOL= ENABLE_PROFILE -OPTIONS_DEFINE= CRYPTCAB -OPTIONS_SUB= yes +WOLFSSL_LIB_DEPENDS= libwolfssl.so:security/wolfssl +WOLFSSL_USES= localbase:ldflags +WOLFSSL_CMAKE_ON= -DENABLE_CRYPTCAB=ON \ + -DWITH_CRYPT=wolfssl -CRYPTCAB_DESC= Enable vde_cryptcab (require security/wolfssl) -CRYPTCAB_LIB_DEPENDS= libwolfssl.so:security/wolfssl -CRYPTCAB_USES= localbase:ldflags -CRYPTCAB_CONFIGURE_ENABLE= cryptcab +.include -post-patch: - @${REINPLACE_CMD} -e '/-Wall/s|-O2||g' \ - ${WRKSRC}/configure.ac - @${REINPLACE_CMD} -e 's|$$(MAKE).*install-data-hook||g' \ - ${WRKSRC}/man/Makefile.am +.if !${PORT_OPTIONS:MMBEDTLS} && !${PORT_OPTIONS:MWOLFSSL} +CMAKE_OFF+= ENABLE_CRYPTCAB +.endif post-install: ${LN} -sf unixcmd.1 ${STAGEDIR}${PREFIX}/share/man/man1/vdecmd.1 - ${LN} -sf vdeq.1 ${STAGEDIR}${PREFIX}/share/man/man1/vdeqemu.1 - ${LN} -sf vdeq.1 ${STAGEDIR}${PREFIX}/share/man/man1/vdekvm.1 .include diff --git a/net/vde2/distinfo b/net/vde2/distinfo index 28356695093a..7947d9545edd 100644 --- a/net/vde2/distinfo +++ b/net/vde2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1656794898 -SHA256 (virtualsquare-vde-2-v2.3.3_GH0.tar.gz) = a7d2cc4c3d0c0ffe6aff7eb0029212f2b098313029126dcd12dc542723972379 -SIZE (virtualsquare-vde-2-v2.3.3_GH0.tar.gz) = 234790 +TIMESTAMP = 1778000000 +SHA256 (virtualsquare-vde-2-v2.3.3-57-g6ad51c2_GH0.tar.gz) = a8d9bbb55ab6327ce54af31f49f657aacd900522dba879e7d64705b4bbce98a9 +SIZE (virtualsquare-vde-2-v2.3.3-57-g6ad51c2_GH0.tar.gz) = 233035 diff --git a/net/vde2/files/patch-CMakeLists.txt b/net/vde2/files/patch-CMakeLists.txt new file mode 100644 index 000000000000..421d7225f854 --- /dev/null +++ b/net/vde2/files/patch-CMakeLists.txt @@ -0,0 +1,11 @@ +--- CMakeLists.txt.orig 2026-03-23 08:45:44 UTC ++++ CMakeLists.txt +@@ -252,7 +252,7 @@ if(ENABLE_TUNTAP) + + elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD") + include(CheckIncludeFile) +- cm_check_include("net/if_tun.h" HAVE_NET_IF_TUN_H) ++ cm_check_include("net/if.h;net/if_tun.h" HAVE_NET_IF_TUN_H) + if(HAVE_NET_IF_TUN_H) + add_definitions(-DHAVE_TUNTAP=1) + else() diff --git a/net/vde2/files/patch-Macros.cmake b/net/vde2/files/patch-Macros.cmake new file mode 100644 index 000000000000..d413215aa997 --- /dev/null +++ b/net/vde2/files/patch-Macros.cmake @@ -0,0 +1,17 @@ +--- Macros.cmake.orig 2026-03-23 08:45:44 UTC ++++ Macros.cmake +@@ -1,4 +1,4 @@ +-include(CheckIncludeFile) ++include(CheckIncludeFiles) + include(CheckFunctionExists) + include(CheckLibraryExists) + include(CheckTypeSize) +@@ -30,7 +30,7 @@ macro(cm_check_include include var) + endmacro() + + macro(cm_check_include include var) +- check_include_file(${include} ${var}) ++ check_include_files("${include}" ${var}) + if(${var}) + set(defines ${defines} "#cmakedefine ${var}\n\n") + else() diff --git a/net/vde2/files/patch-src__dpipe.c b/net/vde2/files/patch-src_dpipe.c similarity index 51% rename from net/vde2/files/patch-src__dpipe.c rename to net/vde2/files/patch-src_dpipe.c index ccd58f38cd38..9921d2fd4c13 100644 --- a/net/vde2/files/patch-src__dpipe.c +++ b/net/vde2/files/patch-src_dpipe.c @@ -1,11 +1,14 @@ ---- src/dpipe.c.orig 2011-11-23 16:41:18 UTC +--- src/dpipe.c.orig 2026-03-23 08:45:44 UTC +++ src/dpipe.c -@@ -201,7 +201,7 @@ int main(int argc, char *argv[]) +@@ -201,7 +201,11 @@ int main(int argc, char *argv[]) if (daemonize != 0) daemon(0,0); -- else if (setpgrp() == -1) { ++#ifdef VDE_FREEBSD + else if (setpgrp(0,getpid()) == -1) { ++#else + else if (setpgrp() == -1) { ++#endif fprintf(stderr,"Err: cannot create pgrp\n"); perror("setpgrp"); exit(1); diff --git a/net/vde2/files/patch-src_vde__pcapplug.c b/net/vde2/files/patch-src_vde__pcapplug.c index 095bd5274a7a..72f028d3eccc 100644 --- a/net/vde2/files/patch-src_vde__pcapplug.c +++ b/net/vde2/files/patch-src_vde__pcapplug.c @@ -1,10 +1,22 @@ ---- src/vde_pcapplug.c.orig 2011-11-23 16:41:18 UTC +--- src/vde_pcapplug.c.orig 2026-03-23 08:45:44 UTC +++ src/vde_pcapplug.c -@@ -24,6 +24,7 @@ - #include - #include - #include +@@ -32,7 +32,6 @@ + #include + #define _GNU_SOURCE + #include +-#include + #include + + #include +@@ -41,8 +40,11 @@ + #include + + #ifdef VDE_FREEBSD +#include - #include - #include #include + #endif ++ ++#include + + #if defined(VDE_DARWIN) || defined(VDE_FREEBSD) + # if defined HAVE_SYSLIMITS_H diff --git a/net/vde2/files/patch-src_vde__vxlan_vxlan.c b/net/vde2/files/patch-src_vde__vxlan_vxlan.c new file mode 100644 index 000000000000..1695cea36fe6 --- /dev/null +++ b/net/vde2/files/patch-src_vde__vxlan_vxlan.c @@ -0,0 +1,10 @@ +--- src/vde_vxlan/vxlan.c.orig 2026-03-23 08:45:44 UTC ++++ src/vde_vxlan/vxlan.c +@@ -24,6 +24,7 @@ + + #include + #include ++#include + + #include "vxlan_hash.h" + #include "log.h" diff --git a/net/vde2/pkg-plist b/net/vde2/pkg-plist index e5990df3ce92..b2760cf0cf7f 100644 --- a/net/vde2/pkg-plist +++ b/net/vde2/pkg-plist @@ -1,65 +1,50 @@ bin/dpipe bin/unixcmd bin/vde_autolink -%%CRYPTCAB%%bin/vde_cryptcab +%%MBEDTLS%%bin/vde_cryptcab +%%WOLFSSL%%bin/vde_cryptcab bin/vde_over_ns bin/vde_pcapplug bin/vde_plug bin/vde_plug2tap bin/vde_router bin/vde_switch -bin/vdecmd +bin/vde_vxlan bin/vdeterm bin/wirefilter -etc/vde2/libvdemgmt/asyncrecv.rc -etc/vde2/libvdemgmt/closemachine.rc -etc/vde2/libvdemgmt/openmachine.rc -etc/vde2/libvdemgmt/sendcmd.rc -etc/vde2/vdecmd include/libvdehist.h include/libvdemgmt.h include/libvdeplug.h include/libvdeplug_dyn.h include/libvdesnmp.h -lib/libvdehist.a +include/vde2/config.h lib/libvdehist.so lib/libvdehist.so.0 lib/libvdehist.so.0.0.1 -lib/libvdemgmt.a lib/libvdemgmt.so lib/libvdemgmt.so.0 lib/libvdemgmt.so.0.0.1 -lib/libvdeplug.a lib/libvdeplug.so lib/libvdeplug.so.3 lib/libvdeplug.so.3.0.1 -lib/libvdesnmp.a lib/libvdesnmp.so lib/libvdesnmp.so.0 lib/libvdesnmp.so.0.0.1 libdata/pkgconfig/vdehist.pc libdata/pkgconfig/vdemgmt.pc libdata/pkgconfig/vdeplug.pc libdata/pkgconfig/vdesnmp.pc share/man/man1/dpipe.1.gz -share/man/man1/slirpvde.1.gz share/man/man1/unixcmd.1.gz -share/man/man1/unixterm.1.gz share/man/man1/vde_autolink.1.gz share/man/man1/vde_cryptcab.1.gz -share/man/man1/vde_l3.1.gz share/man/man1/vde_over_ns.1.gz share/man/man1/vde_pcapplug.1.gz share/man/man1/vde_plug.1.gz share/man/man1/vde_plug2tap.1.gz share/man/man1/vde_router.1.gz share/man/man1/vde_switch.1.gz share/man/man1/vde_vxlan.1.gz share/man/man1/vdecmd.1.gz -share/man/man1/vdekvm.1.gz -share/man/man1/vdeq.1.gz -share/man/man1/vdeqemu.1.gz -share/man/man1/vdetaplib.1.gz share/man/man1/vdeterm.1.gz share/man/man1/wirefilter.1.gz -share/man/man8/vde_tunctl.8.gz