diff options
431 files changed, 16717 insertions, 1249 deletions
diff --git a/Mk/Uses/zig.mk b/Mk/Uses/zig.mk new file mode 100644 index 000000000000..5727a812fede --- /dev/null +++ b/Mk/Uses/zig.mk @@ -0,0 +1,102 @@ +# Provide support for building Zig software. +# +# Feature: zig +# Usage: USES=zig + +# Variables, which can be set by the port: +# +# ZIG_TUPLE List of Zig dependencies required to build the port. +# Each item is triplet of an arbitrary name, an URL without +# scheme part (https://) and a directory name where the +# expects this dependency to be placed. +# This knob can be generated by running make make-zig-tuple +# You might need to run this multiple time until all +# transitive dependencies get pulled in. +# +# MAINTAINER: ports@FreeBSD.org + +.if !defined(_INCLUDE_USES_ZIG_MK) +_INCLUDE_USES_ZIG_MK= yes + +. if !empty(zig_ARGS) +IGNORE= USES=zig does not accept arguments +. endif + +.sinclude "${MASTERDIR}/Makefile.zig" + +ZIG_CMD?= zig +ZIG_PORT?= lang/zig +ZIG_DEPSDIR= ${WRKDIR}/zig-packages +ZIG_TMPDEPSDIR= ${WRKDIR}/zig-packages-tmp + +ZIG_CPUTYPE_DEFAULT= ${ARCH:S/amd64/x86_64/} +ZIG_CPUTYPE?= ${CPUTYPE:U${ZIG_CPUTYPE_DEFAULT}} + +_ZIG2TUPLE_CMD= zig2tuple + +BUILD_DEPENDS+= ${ZIG_CMD}:${ZIG_PORT} + +DIST_SUBDIR?= zig + +. for z in ${ZIG_TUPLE} +. for group url dir in ${z:S/:/ /g:tw} +MASTER_SITES+= https://${url:H}/:${group} +DISTFILES+= ${url:T}:${group} +. endfor +. endfor + +_USES_extract= 299:zig-pre-extract + +# Generates ZIG_TUPLE= ... line ready to be pasted into the port based on +# build.zig.zon files found in ${WRKSRC} +make-zig-tuple: check-zig2tuple + @${ECHO_MSG} "===> Processing build.zig.zon files" + ${_ZIG2TUPLE_CMD} ${WRKDIR} + +check-zig2tuple: + @if ! type ${_ZIG2TUPLE_CMD} > /dev/null 2>&1; then \ + ${ECHO_MSG} "===> zig2tuple executable not found, install \"ports-mgmt/zig2tuple\""; exit 1; \ + fi + +# Main targets implementation. + +zig-pre-extract: + @${ECHO_CMD} "===> Extracting zig dependencies" +# We don't know the name of the directory that is contained in the archive, +# but we need to rename it into the last component of the tuple +# To solve this we extract into an empty directory and then do +# mv * /path/where/we/want/it + @${MKDIR} ${ZIG_DEPSDIR} ${ZIG_TMPDEPSDIR} +. for z in ${ZIG_TUPLE} +. for group url dir in ${z:S/:/ /g:tw} + ${MAKE} -C ${.CURDIR} do-extract EXTRACT_ONLY=${url:T} WRKDIR=${ZIG_TMPDEPSDIR} + ${MV} ${ZIG_TMPDEPSDIR}/* ${ZIG_DEPSDIR}/${dir} +. endfor +. endfor + @${RMDIR} ${ZIG_TMPDEPSDIR} + +ZIG_ENV+= DESTDIR=${STAGEDIR} +ZIG_ARGS+= --prefix ${PREFIX} --system ${ZIG_DEPSDIR} --verbose \ + -Dcpu=${ZIG_CPUTYPE} \ + ${"${WITH_DEBUG}" != "":?:--release=fast} \ + ${"${WITH_DEBUG}" != "":?-Doptimize=Debug:-Doptimize=ReleaseSmall} \ + ${ZIG_ARGS_${FLAVOR}} +DO_MAKE_BUILD?= ${SETENVI} ${WRK_ENV} ${ZIG_ENV} ${ZIG_CMD} build \ + ${_MAKE_JOBS} ${ZIG_ARGS} +. if !target(do-build) +do-build: + @${DO_NADA} +. endif + +. if !target(do-install) +do-install: + @(cd ${BUILD_WRKSRC}; if ! ${DO_MAKE_BUILD}; then \ + if [ -n "${BUILD_FAIL_MESSAGE}" ] ; then \ + ${ECHO_MSG} "===> Compilation failed unexpectedly."; \ + (${ECHO_CMD} "${BUILD_FAIL_MESSAGE}") | ${FMT_80} ; \ + fi; \ + ${FALSE}; \ + fi) +. endif + +.endif diff --git a/Mk/bsd.options.mk b/Mk/bsd.options.mk index 3b4b2dd4d300..38f1492f0dbd 100644 --- a/Mk/bsd.options.mk +++ b/Mk/bsd.options.mk @@ -198,6 +198,7 @@ _ALL_OPTIONS_HELPERS= ${_OPTIONS_DEPENDS:S/$/_DEPENDS/} \ CONFIGURE_WITH IMPLIES MESON_ARGS MESON_DISABLED \ MESON_ENABLED MESON_FALSE MESON_OFF MESON_ON MESON_TRUE \ PREVENTS PREVENTS_MSG QMAKE_OFF QMAKE_ON \ + ZIG_BOOL ZIG_BOOL_OFF \ SUBPACKAGES SUBPACKAGES_OFF USE USE_OFF VARS VARS_OFF # The format here is target_family:priority:target-type @@ -544,6 +545,9 @@ MESON_ARGS+= ${${opt}_MESON_DISABLED:C/.*/-D&=disabled/} . if defined(${opt}_CABAL_FLAGS) CABAL_FLAGS+= ${${opt}_CABAL_FLAGS} . endif +. if defined(${opt}_ZIG_BOOL) +ZIG_ARGS+= ${${opt}_ZIG_BOOL:C/.*/-D&=true/} +. endif . for configure in CONFIGURE CMAKE MESON QMAKE . if defined(${opt}_${configure}_ON) ${configure}_ARGS+= ${${opt}_${configure}_ON} @@ -620,6 +624,9 @@ MESON_ARGS+= ${${opt}_MESON_DISABLED:C/.*/-D&=enabled/} . if defined(${opt}_CABAL_FLAGS) CABAL_FLAGS+= -${${opt}_CABAL_FLAGS} . endif +. if defined(${opt}_ZIG_BOOL) +ZIG_ARGS+= ${${opt}_ZIG_BOOL:C/.*/-D&=false/} +. endif . for configure in CONFIGURE CMAKE MESON QMAKE . if defined(${opt}_${configure}_OFF) ${configure}_ARGS+= ${${opt}_${configure}_OFF} diff --git a/archivers/py-zipstream-ng/Makefile b/archivers/py-zipstream-ng/Makefile index 4848db2cbe0c..b13e2474e0b5 100644 --- a/archivers/py-zipstream-ng/Makefile +++ b/archivers/py-zipstream-ng/Makefile @@ -1,6 +1,5 @@ PORTNAME= zipstream-ng -DISTVERSION= 1.8.0 -PORTREVISION= 1 +DISTVERSION= 1.9.0 CATEGORIES= archivers python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/archivers/py-zipstream-ng/distinfo b/archivers/py-zipstream-ng/distinfo index 6673506b04ec..b0bd369cf2be 100644 --- a/archivers/py-zipstream-ng/distinfo +++ b/archivers/py-zipstream-ng/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1731279942 -SHA256 (zipstream_ng-1.8.0.tar.gz) = b7129d2c15d26934b3e1cb22256593b6bdbd03c553c26f4199a5bf05110642bc -SIZE (zipstream_ng-1.8.0.tar.gz) = 35887 +TIMESTAMP = 1756497695 +SHA256 (zipstream_ng-1.9.0.tar.gz) = a0d94030822d137efbf80dfdc680603c42f804696f41147bb3db895df667daea +SIZE (zipstream_ng-1.9.0.tar.gz) = 37963 diff --git a/archivers/zlib-ng/Makefile b/archivers/zlib-ng/Makefile index d143b4558d15..02767cd2c758 100644 --- a/archivers/zlib-ng/Makefile +++ b/archivers/zlib-ng/Makefile @@ -1,5 +1,5 @@ PORTNAME= zlib-ng -DISTVERSION= 2.2.4 +DISTVERSION= 2.2.5 CATEGORIES= archivers MAINTAINER= vvd@FreeBSD.org @@ -11,15 +11,12 @@ LICENSE_FILE= ${WRKSRC}/LICENSE.md TEST_DEPENDS= googletest>=0:devel/googletest -USES= cmake:testing compiler:c11 +USES= cmake:testing compiler:c++14-lang USE_GITHUB= yes USE_LDCONFIG= yes -CMAKE_OFF= ZLIB_ENABLE_TESTS ZLIBNG_ENABLE_TESTS -CMAKE_TESTING_ON= ZLIB_ENABLE_TESTS ZLIBNG_ENABLE_TESTS - -# error: use of undeclared identifier 'isascii' -CFLAGS+= -D__XSI_VISIBLE +CMAKE_OFF= WITH_GTEST ZLIB_ENABLE_TESTS ZLIBNG_ENABLE_TESTS +CMAKE_TESTING_ON= WITH_GTEST ZLIB_ENABLE_TESTS ZLIBNG_ENABLE_TESTS PLIST_SUB= SHLIB_VER=${DISTVERSION} diff --git a/archivers/zlib-ng/distinfo b/archivers/zlib-ng/distinfo index abac4ac19a38..2f4754a7d3e9 100644 --- a/archivers/zlib-ng/distinfo +++ b/archivers/zlib-ng/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1739270273 -SHA256 (zlib-ng-zlib-ng-2.2.4_GH0.tar.gz) = a73343c3093e5cdc50d9377997c3815b878fd110bf6511c2c7759f2afb90f5a3 -SIZE (zlib-ng-zlib-ng-2.2.4_GH0.tar.gz) = 2415754 +TIMESTAMP = 1756000000 +SHA256 (zlib-ng-zlib-ng-2.2.5_GH0.tar.gz) = 5b3b022489f3ced82384f06db1e13ba148cbce38c7941e424d6cb414416acd18 +SIZE (zlib-ng-zlib-ng-2.2.5_GH0.tar.gz) = 2417402 diff --git a/biology/seqan3/Makefile b/biology/seqan3/Makefile index 9c8fc69ba93e..c1675008fd19 100644 --- a/biology/seqan3/Makefile +++ b/biology/seqan3/Makefile @@ -1,10 +1,16 @@ PORTNAME= seqan3 -DISTVERSION= 3.3.0 +DISTVERSION= 3.4.0 CATEGORIES= biology devel math +MASTER_SITES= https://github.com/cpm-cmake/CPM.cmake/releases/download/v0.42.0/:cpm +DISTFILES= CPM.cmake:cpm +DIST_SUBDIR= ${PORTNAME}-${DISTVERSION} +EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX} \ + xxsds-sdsl-lite-d54d389_GH0${EXTRACT_SUFX} MAINTAINER= yuri@FreeBSD.org COMMENT= C++ header-only library for biological sequence analysis -WWW= https://github.com/seqan/seqan3 +WWW= https://www.seqan.de/ \ + https://github.com/seqan/seqan3 LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.md @@ -15,14 +21,13 @@ BUILD_DEPENDS= ${HPP_DEPENDS} RUN_DEPENDS= ${HPP_DEPENDS} \ coin-or-lemon>0:math/lemon -USES= cmake localbase +USES= cmake compiler:c++23-lang localbase USE_GITHUB= yes GH_ACCOUNT= seqan GH_TUPLE= xxsds:sdsl-lite:d54d389:sdsl_lite/submodules/sdsl-lite -USE_GCC= yes # tests only pass with gcc, see https://github.com/seqan/seqan3/issues/2643, otherwise gcc isn't needed because this is a header-only library -# tests fail to compile, see https://github.com/seqan/seqan3/issues/3191 +CMAKE_ARGS= -DCPM_LOCATION=${DISTDIR}/${DIST_SUBDIR} TEST_WRKSRC= ${WRKSRC}/.test @@ -33,7 +38,7 @@ post-install: do-test: @${MKDIR} ${TEST_WRKSRC} && cd ${TEST_WRKSRC} && \ - ${SETENV} ${CONFIGURE_ENV} ${CMAKE_BIN} ${CMAKE_ARGS} ${WRKSRC}/test/unit && \ + ${SETENV} ${CONFIGURE_ENV} ${CMAKE_BIN} ${CMAKE_ARGS} -DFETCHCONTENT_FULLY_DISCONNECTED=OFF ${WRKSRC}/test/unit && \ ${SETENV} ${MAKE_ENV} ${MAKE_CMD} ${MAKE_ARGS} ${ALL_TARGET} && \ ctest diff --git a/biology/seqan3/distinfo b/biology/seqan3/distinfo index 8fa5387420f9..9e9fe56de4ee 100644 --- a/biology/seqan3/distinfo +++ b/biology/seqan3/distinfo @@ -1,5 +1,7 @@ -TIMESTAMP = 1694368553 -SHA256 (seqan-seqan3-3.3.0_GH0.tar.gz) = 96975406445c8a5974803eefa146ee2f85206f6d2c2bccf45171ee0b1a653fb8 -SIZE (seqan-seqan3-3.3.0_GH0.tar.gz) = 1564852 -SHA256 (xxsds-sdsl-lite-d54d389_GH0.tar.gz) = eaac28144b34a833afb8c03139abbe427d4b95a827bf5b9b6532353f9cff9ec1 -SIZE (xxsds-sdsl-lite-d54d389_GH0.tar.gz) = 1183835 +TIMESTAMP = 1756395731 +SHA256 (seqan3-3.4.0/CPM.cmake) = 2020b4fc42dba44817983e06342e682ecfc3d2f484a581f11cc5731fbe4dce8a +SIZE (seqan3-3.4.0/CPM.cmake) = 44969 +SHA256 (seqan3-3.4.0/seqan-seqan3-3.4.0_GH0.tar.gz) = 8e000e6788f1e2ada071b36f64231d56f18e2d687ab4122d86cd3aefc6c87743 +SIZE (seqan3-3.4.0/seqan-seqan3-3.4.0_GH0.tar.gz) = 1749810 +SHA256 (seqan3-3.4.0/xxsds-sdsl-lite-d54d389_GH0.tar.gz) = eaac28144b34a833afb8c03139abbe427d4b95a827bf5b9b6532353f9cff9ec1 +SIZE (seqan3-3.4.0/xxsds-sdsl-lite-d54d389_GH0.tar.gz) = 1183835 diff --git a/biology/seqan3/files/patch-cmake_CPM.cmake b/biology/seqan3/files/patch-cmake_CPM.cmake new file mode 100644 index 000000000000..c288163d7312 --- /dev/null +++ b/biology/seqan3/files/patch-cmake_CPM.cmake @@ -0,0 +1,11 @@ +--- cmake/CPM.cmake.orig 2025-08-28 15:36:29 UTC ++++ cmake/CPM.cmake +@@ -16,7 +16,7 @@ get_filename_component (CPM_DOWNLOAD_LOCATION ${CPM_DO + # Expand relative path. This is important if the provided path contains a tilde (~) + get_filename_component (CPM_DOWNLOAD_LOCATION ${CPM_DOWNLOAD_LOCATION} ABSOLUTE) + +-file (DOWNLOAD https://github.com/cpm-cmake/CPM.cmake/releases/download/v${CPM_DOWNLOAD_VERSION}/CPM.cmake ++file (DOWNLOAD file://${CPM_LOCATION}/CPM.cmake + ${CPM_DOWNLOAD_LOCATION} EXPECTED_HASH SHA256=${CPM_HASH_SUM}) + + include (${CPM_DOWNLOAD_LOCATION}) diff --git a/biology/seqan3/pkg-plist b/biology/seqan3/pkg-plist index 19d86e63d82e..e727ba232e45 100644 --- a/biology/seqan3/pkg-plist +++ b/biology/seqan3/pkg-plist @@ -91,6 +91,7 @@ include/seqan3/alignment/scoring/all.hpp include/seqan3/alignment/scoring/aminoacid_scoring_scheme.hpp include/seqan3/alignment/scoring/detail/simd_match_mismatch_scoring_scheme.hpp include/seqan3/alignment/scoring/detail/simd_matrix_scoring_scheme.hpp +include/seqan3/alignment/scoring/hamming_scoring_scheme.hpp include/seqan3/alignment/scoring/nucleotide_scoring_scheme.hpp include/seqan3/alignment/scoring/scoring_scheme_base.hpp include/seqan3/alignment/scoring/scoring_scheme_concept.hpp @@ -191,11 +192,16 @@ include/seqan3/contrib/README.md include/seqan3/contrib/parallel/buffer_queue.hpp include/seqan3/contrib/parallel/serialised_resource_pool.hpp include/seqan3/contrib/parallel/suspendable_queue.hpp +include/seqan3/contrib/sdsl-lite.hpp include/seqan3/contrib/std/.clang-format include/seqan3/contrib/std/.gitignore -include/seqan3/contrib/std/LICENSE +include/seqan3/contrib/std/LICENSE.md +include/seqan3/contrib/std/LICENSES/BSD-3-Clause.txt +include/seqan3/contrib/std/LICENSES/CC-BY-4.0.txt +include/seqan3/contrib/std/LICENSES/CC0-1.0.txt include/seqan3/contrib/std/README.md include/seqan3/contrib/std/all_view.hpp +include/seqan3/contrib/std/chunk_by_view.hpp include/seqan3/contrib/std/chunk_view.hpp include/seqan3/contrib/std/concepts.hpp include/seqan3/contrib/std/detail/adaptor_base.hpp @@ -203,7 +209,9 @@ include/seqan3/contrib/std/detail/adaptor_for_view_without_args.hpp include/seqan3/contrib/std/detail/adaptor_from_functor.hpp include/seqan3/contrib/std/detail/compiler_definitions.hpp include/seqan3/contrib/std/detail/exposition_only.hpp +include/seqan3/contrib/std/detail/movable_box.hpp include/seqan3/contrib/std/detail/non_propagating_cache.hpp +include/seqan3/contrib/std/enumerate_view.hpp include/seqan3/contrib/std/join_with_view.hpp include/seqan3/contrib/std/pair.hpp include/seqan3/contrib/std/to.hpp @@ -239,14 +247,13 @@ include/seqan3/core/debug_stream.hpp include/seqan3/core/debug_stream/all.hpp include/seqan3/core/debug_stream/byte.hpp include/seqan3/core/debug_stream/debug_stream_type.hpp +include/seqan3/core/debug_stream/default_printer.hpp include/seqan3/core/debug_stream/detail/to_string.hpp include/seqan3/core/debug_stream/optional.hpp include/seqan3/core/debug_stream/range.hpp include/seqan3/core/debug_stream/tuple.hpp include/seqan3/core/debug_stream/variant.hpp include/seqan3/core/detail/all.hpp -include/seqan3/core/detail/all_view.hpp -include/seqan3/core/detail/copyable_wrapper.hpp include/seqan3/core/detail/customisation_point.hpp include/seqan3/core/detail/deferred_crtp_base.hpp include/seqan3/core/detail/empty_type.hpp @@ -364,127 +371,10 @@ include/seqan3/search/views/minimiser.hpp include/seqan3/search/views/minimiser_hash.hpp include/seqan3/std/charconv include/seqan3/std/new -include/seqan3/submodules/sdsl-lite/include/sdsl/.gitignore -include/seqan3/submodules/sdsl-lite/include/sdsl/bit_vector_il.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/bit_vectors.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/bits.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/bp_support.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/bp_support_algorithm.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/bp_support_g.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/bp_support_gg.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/bp_support_sada.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/cereal.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/coder.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/coder_comma.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/coder_elias_delta.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/coder_elias_gamma.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/coder_fibonacci.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/config.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/construct.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/construct_bwt.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/construct_config.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/construct_isa.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/construct_lcp.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/construct_lcp_helper.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/construct_sa.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/construct_sa_se.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/csa_alphabet_strategy.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/csa_bitcompressed.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/csa_sada.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/csa_sampling_strategy.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/csa_wt.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/cst_fully.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/cst_iterators.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/cst_sada.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/cst_sct3.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/dac_vector.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/divsufsort.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/enc_vector.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/fast_cache.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/hyb_vector.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/int_vector.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/int_vector_buffer.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/int_vector_io_wrappers.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/int_vector_mapper.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/inv_perm_support.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/io.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/iterators.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/k2_treap.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/k2_treap_algorithm.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/k2_treap_helper.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/k2_tree.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/k2_tree_helper.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/lcp.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/lcp_bitcompressed.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/lcp_byte.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/lcp_dac.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/lcp_support_sada.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/lcp_support_tree.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/lcp_support_tree2.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/lcp_vlc.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/lcp_wt.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/louds_tree.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/memory_management.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/memory_tracking.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/nearest_neighbour_dictionary.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/nn_dict_dynamic.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/platform.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/qsufsort.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/ram_filebuf.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/ram_fs.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/rank_support.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/rank_support_int.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/rank_support_int_scan.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/rank_support_int_v.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/rank_support_scan.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/rank_support_v.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/rank_support_v5.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/rmq_succinct_sada.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/rmq_succinct_sct.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/rmq_support.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/rmq_support_sparse_table.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/rrr_helper.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/rrr_vector.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/rrr_vector_15.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/sd_vector.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/sdsl_concepts.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/select_support.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/select_support_mcl.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/select_support_scan.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/sfstream.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/sorted_int_stack.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/sorted_multi_stack_support.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/sorted_stack_support.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/structure_tree.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/suffix_array_algorithm.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/suffix_array_helper.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/suffix_arrays.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/suffix_tree_algorithm.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/suffix_tree_helper.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/suffix_trees.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/uint128_t.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/uint256_t.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/uintx_t.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/util.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/vectors.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/version.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/vlc_vector.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/wavelet_trees.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/wm_int.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/wt_algorithm.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/wt_ap.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/wt_blcd.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/wt_epr.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/wt_gmr.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/wt_helper.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/wt_huff.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/wt_hutu.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/wt_int.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/wt_pc.hpp -include/seqan3/submodules/sdsl-lite/include/sdsl/wt_rlmn.hpp include/seqan3/utility/all.hpp include/seqan3/utility/bloom_filter/all.hpp include/seqan3/utility/bloom_filter/bloom_filter.hpp +include/seqan3/utility/bloom_filter/bloom_filter_strong_types.hpp include/seqan3/utility/char_operations/all.hpp include/seqan3/utility/char_operations/predicate.hpp include/seqan3/utility/char_operations/predicate_detail.hpp diff --git a/converters/simdutf/Makefile b/converters/simdutf/Makefile index e19b3cef134b..7d74ef671f6f 100644 --- a/converters/simdutf/Makefile +++ b/converters/simdutf/Makefile @@ -1,6 +1,6 @@ PORTNAME= simdutf DISTVERSIONPREFIX= v -DISTVERSION= 7.3.6 +DISTVERSION= 7.4.0 CATEGORIES= converters textproc MAINTAINER= fuz@FreeBSD.org diff --git a/converters/simdutf/distinfo b/converters/simdutf/distinfo index b5aa414ea497..d66efc56a025 100644 --- a/converters/simdutf/distinfo +++ b/converters/simdutf/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1755237077 -SHA256 (simdutf-simdutf-v7.3.6_GH0.tar.gz) = c08f3dce1cbb7a8bead9eb53bcbda778e8a1c69b7d3a0690682f1b09fbb85c31 -SIZE (simdutf-simdutf-v7.3.6_GH0.tar.gz) = 2209424 +TIMESTAMP = 1756286925 +SHA256 (simdutf-simdutf-v7.4.0_GH0.tar.gz) = 8fd729ebfd5ec56cb0395bcc176c4801e1f8a0ea834d166d52279d7b9e801283 +SIZE (simdutf-simdutf-v7.4.0_GH0.tar.gz) = 2211861 diff --git a/converters/simdutf/pkg-plist b/converters/simdutf/pkg-plist index 24d025bccbb0..3a717214007a 100644 --- a/converters/simdutf/pkg-plist +++ b/converters/simdutf/pkg-plist @@ -14,7 +14,7 @@ lib/cmake/simdutf/simdutf-config-version.cmake lib/cmake/simdutf/simdutf-config.cmake lib/cmake/simdutf/simdutfTargets-%%CMAKE_BUILD_TYPE%%.cmake lib/cmake/simdutf/simdutfTargets.cmake -lib/libsimdutf.so.25.0.0 -lib/libsimdutf.so.25 +lib/libsimdutf.so.26.0.0 +lib/libsimdutf.so.26 lib/libsimdutf.so libdata/pkgconfig/simdutf.pc diff --git a/databases/Makefile b/databases/Makefile index 4c7bc1198675..ef5d3508bdae 100644 --- a/databases/Makefile +++ b/databases/Makefile @@ -861,6 +861,7 @@ SUBDIR += py-sqlite-migrate SUBDIR += py-sqlite-utils SUBDIR += py-sqlite3 + SUBDIR += py-sqlmodel SUBDIR += py-sqlobject SUBDIR += py-sqloxide SUBDIR += py-sqlparse diff --git a/databases/libvalkey/Makefile b/databases/libvalkey/Makefile index 5090da866e10..8488049ef93f 100644 --- a/databases/libvalkey/Makefile +++ b/databases/libvalkey/Makefile @@ -1,5 +1,5 @@ PORTNAME= libvalkey -DISTVERSION= 0.2.0 +DISTVERSION= 0.2.1 CATEGORIES= databases MAINTAINER= dtxdf@FreeBSD.org @@ -25,9 +25,9 @@ TLS_USES= ssl TLS_MAKE_ARGS= USE_TLS=1 post-install: - ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libvalkey.so.0.1.0 + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libvalkey.so.${DISTVERSION} post-install-TLS-on: - ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libvalkey_tls.so.0.1.0 + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libvalkey_tls.so.${DISTVERSION} .include <bsd.port.mk> diff --git a/databases/libvalkey/distinfo b/databases/libvalkey/distinfo index 2a5fc91fc739..8bc3097121d6 100644 --- a/databases/libvalkey/distinfo +++ b/databases/libvalkey/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1755627857 -SHA256 (valkey-io-libvalkey-0.2.0_GH0.tar.gz) = d620d93fc3c39b297babe3d9003901aeddaa600507a1844accdb23539a762029 -SIZE (valkey-io-libvalkey-0.2.0_GH0.tar.gz) = 207972 +TIMESTAMP = 1756498326 +SHA256 (valkey-io-libvalkey-0.2.1_GH0.tar.gz) = bc068b15eeb8f66c3205f55f7bfe1274b79ccced0dd8796e59d62091abeb3645 +SIZE (valkey-io-libvalkey-0.2.1_GH0.tar.gz) = 207895 diff --git a/databases/libvalkey/pkg-plist b/databases/libvalkey/pkg-plist index 07d3c858e797..b6095444557f 100644 --- a/databases/libvalkey/pkg-plist +++ b/databases/libvalkey/pkg-plist @@ -22,11 +22,10 @@ include/valkey/visibility.h lib/libvalkey.a lib/libvalkey.so lib/libvalkey.so.0 -lib/libvalkey.so.0.1.0 +lib/libvalkey.so.0.2.1 lib/libvalkey_tls.a lib/libvalkey_tls.so lib/libvalkey_tls.so.0 -lib/libvalkey_tls.so.0.1.0 +lib/libvalkey_tls.so.0.2.1 libdata/pkgconfig/valkey.pc libdata/pkgconfig/valkey_tls.pc - diff --git a/databases/py-sqlmodel/Makefile b/databases/py-sqlmodel/Makefile new file mode 100644 index 000000000000..0bf8f21d1d33 --- /dev/null +++ b/databases/py-sqlmodel/Makefile @@ -0,0 +1,46 @@ +PORTNAME= sqlmodel +DISTVERSION= 0.0.24 +CATEGORIES= databases python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} + +MAINTAINER= tagattie@FreeBSD.org +COMMENT= SQL databases in Python, designed for simplicity, compatibility, and robustness +WWW= https://sqlmodel.tiangolo.com/ + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pdm-backend>0:devel/py-pdm-backend@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sqlalchemy20>=2.0.14<2.1.0:databases/py-sqlalchemy20@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pydantic2>=1.10.13<3.0.0:devel/py-pydantic2@${PY_FLAVOR} +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}coverage>=6.2<8.0:devel/py-coverage@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}mypy>=1.4.1:devel/py-mypy@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}ruff>=0.9.6:devel/py-ruff@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}fastapi>=0.103.2:www/py-fastapi@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}httpx>=0.24.1:www/py-httpx@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}dirty-equals>=0.9.0:devel/py-dirty-equals@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}Jinja2>=3.1.4:devel/py-Jinja2@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}typing-extensions>=4.12.2:devel/py-typing-extensions@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}black>0:devel/py-black@${PY_FLAVOR} + +USES= python shebangfix +USE_PYTHON= autoplist pep517 pytest + +SHEBANG_FILES= scripts/test.sh +bash_CMD= ${SH} + +NO_ARCH= yes + +PORTDOCS= README.md + +OPTIONS_DEFINE= DOCS + +post-install-DOCS-on: + @${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_MAN} ${PORTDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR} + +do-test: + cd ${WRKSRC} && ${SETENV} ${TEST_ENV} ./scripts/test.sh + +.include <bsd.port.mk> diff --git a/databases/py-sqlmodel/distinfo b/databases/py-sqlmodel/distinfo new file mode 100644 index 000000000000..606cd3026abd --- /dev/null +++ b/databases/py-sqlmodel/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1756455526 +SHA256 (sqlmodel-0.0.24.tar.gz) = cc5c7613c1a5533c9c7867e1aab2fd489a76c9e8a061984da11b4e613c182423 +SIZE (sqlmodel-0.0.24.tar.gz) = 116780 diff --git a/databases/py-sqlmodel/pkg-descr b/databases/py-sqlmodel/pkg-descr new file mode 100644 index 000000000000..ea96d894e9fd --- /dev/null +++ b/databases/py-sqlmodel/pkg-descr @@ -0,0 +1,19 @@ +SQLModel is a library for interacting with SQL databases from Python +code, with Python objects. It is designed to be intuitive, easy to +use, highly compatible, and robust. + +SQLModel is based on Python type annotations, and powered by Pydantic +and SQLAlchemy. + +The key features are: +- Intuitive to write: Great editor support. Completion + everywhere. Less time debugging. Designed to be easy to use and + learn. Less time reading docs. +- Easy to use: It has sensible defaults and does a lot of work + underneath to simplify the code you write. +- Compatible: It is designed to be compatible with FastAPI, Pydantic, + and SQLAlchemy. +- Extensible: You have all the power of SQLAlchemy and Pydantic + underneath. +- Short: Minimize code duplication. A single type annotation does a + lot of work. No need to duplicate models in SQLAlchemy and Pydantic. diff --git a/deskutils/readur/Makefile b/deskutils/readur/Makefile index 9d832d561fe7..814477caf2a4 100644 --- a/deskutils/readur/Makefile +++ b/deskutils/readur/Makefile @@ -1,6 +1,6 @@ PORTNAME= readur DISTVERSIONPREFIX= v -DISTVERSION= 2.5.5 +DISTVERSION= 2.5.6 CATEGORIES= deskutils MASTER_SITES= LOCAL/dtxdf/${PORTNAME}/ DISTFILES= ${PORTNAME}-${DISTVERSIONPREFIX}${DISTVERSION}.frontend${EXTRACT_SUFX} \ diff --git a/deskutils/readur/Makefile.crates b/deskutils/readur/Makefile.crates index 3894e532b452..b349b91cf88b 100644 --- a/deskutils/readur/Makefile.crates +++ b/deskutils/readur/Makefile.crates @@ -20,7 +20,7 @@ CARGO_CRATES= ab_glyph-0.2.29 \ assert-json-diff-2.0.2 \ async-stream-0.3.6 \ async-stream-impl-0.3.6 \ - async-trait-0.1.88 \ + async-trait-0.1.89 \ atoi-2.0.0 \ atomic-waker-1.1.2 \ autocfg-1.4.0 \ @@ -58,7 +58,7 @@ CARGO_CRATES= ab_glyph-0.2.29 \ base64-0.22.1 \ base64-simd-0.8.0 \ base64ct-1.8.0 \ - bcrypt-0.17.0 \ + bcrypt-0.17.1 \ bindgen-0.64.0 \ bindgen-0.69.5 \ bit_field-0.10.2 \ @@ -113,7 +113,7 @@ CARGO_CRATES= ab_glyph-0.2.29 \ darling_core-0.20.11 \ darling_macro-0.20.11 \ data-encoding-2.9.0 \ - deadpool-0.10.0 \ + deadpool-0.12.2 \ deadpool-runtime-0.1.4 \ der-0.6.1 \ der-0.7.10 \ @@ -147,7 +147,7 @@ CARGO_CRATES= ab_glyph-0.2.29 \ foldhash-0.1.5 \ foreign-types-0.3.2 \ foreign-types-shared-0.1.1 \ - form_urlencoded-1.2.1 \ + form_urlencoded-1.2.2 \ fs_extra-1.3.0 \ fsevent-sys-4.1.0 \ futures-0.3.31 \ @@ -189,7 +189,7 @@ CARGO_CRATES= ab_glyph-0.2.29 \ httparse-1.10.1 \ httpdate-1.0.3 \ hyper-0.14.32 \ - hyper-1.6.0 \ + hyper-1.7.0 \ hyper-named-pipe-0.1.0 \ hyper-rustls-0.24.2 \ hyper-rustls-0.27.7 \ @@ -206,7 +206,7 @@ CARGO_CRATES= ab_glyph-0.2.29 \ icu_properties_data-2.0.1 \ icu_provider-2.0.0 \ ident_case-1.0.1 \ - idna-1.0.3 \ + idna-1.1.0 \ idna_adapter-1.2.1 \ image-0.25.6 \ image-webp-0.2.2 \ @@ -305,7 +305,7 @@ CARGO_CRATES= ab_glyph-0.2.29 \ peeking_take_while-0.1.2 \ pem-3.0.5 \ pem-rfc7468-0.7.0 \ - percent-encoding-2.3.1 \ + percent-encoding-2.3.2 \ pin-project-lite-0.2.16 \ pin-utils-0.1.0 \ pkcs1-0.7.5 \ @@ -342,7 +342,7 @@ CARGO_CRATES= ab_glyph-0.2.29 \ redox_syscall-0.5.13 \ ref-cast-1.0.24 \ ref-cast-impl-1.0.24 \ - regex-1.11.1 \ + regex-1.11.2 \ regex-automata-0.1.10 \ regex-automata-0.4.9 \ regex-lite-0.1.6 \ @@ -386,7 +386,7 @@ CARGO_CRATES= ab_glyph-0.2.29 \ semver-1.0.26 \ serde-1.0.219 \ serde_derive-1.0.219 \ - serde_json-1.0.142 \ + serde_json-1.0.143 \ serde_path_to_error-0.1.17 \ serde_repr-0.1.20 \ serde_spanned-0.6.9 \ @@ -443,9 +443,9 @@ CARGO_CRATES= ab_glyph-0.2.29 \ testcontainers-0.24.0 \ testcontainers-modules-0.12.1 \ thiserror-1.0.69 \ - thiserror-2.0.14 \ + thiserror-2.0.16 \ thiserror-impl-1.0.69 \ - thiserror-impl-2.0.14 \ + thiserror-impl-2.0.16 \ thread_local-1.1.9 \ tiff-0.9.1 \ time-0.3.41 \ @@ -486,7 +486,7 @@ CARGO_CRATES= ab_glyph-0.2.29 \ unicode-normalization-0.1.24 \ unicode-properties-0.1.3 \ untrusted-0.9.0 \ - url-2.5.4 \ + url-2.5.7 \ urlencoding-2.1.3 \ utf-8-0.7.6 \ utf8_iter-1.0.4 \ @@ -568,7 +568,7 @@ CARGO_CRATES= ab_glyph-0.2.29 \ windows_x86_64_msvc-0.53.0 \ winnow-0.7.11 \ winreg-0.50.0 \ - wiremock-0.6.4 \ + wiremock-0.6.5 \ wit-bindgen-rt-0.39.0 \ writeable-0.6.1 \ xattr-1.5.0 \ diff --git a/deskutils/readur/distinfo b/deskutils/readur/distinfo index a453c7bef485..d71b57da64d5 100644 --- a/deskutils/readur/distinfo +++ b/deskutils/readur/distinfo @@ -1,6 +1,6 @@ -TIMESTAMP = 1755325613 -SHA256 (readur-v2.5.5.frontend.tar.gz) = 8119596df5baf059491d91515225f2631fe33d39b82878346cbfecca8c5f7db9 -SIZE (readur-v2.5.5.frontend.tar.gz) = 2509875 +TIMESTAMP = 1756485347 +SHA256 (readur-v2.5.6.frontend.tar.gz) = 76da8b4133d62d74ad3092683101931f2512292b7c97e7ba524710856e245544 +SIZE (readur-v2.5.6.frontend.tar.gz) = 2509920 SHA256 (swagger-ui-v5.17.14.zip) = 481244d0812097b11fbaeef79f71d942b171617f9c9f9514e63acbe13e71ccdc SIZE (swagger-ui-v5.17.14.zip) = 4388280 SHA256 (rust/crates/ab_glyph-0.2.29.crate) = ec3672c180e71eeaaac3a541fbbc5f5ad4def8b747c595ad30d674e43049f7b0 @@ -47,8 +47,8 @@ SHA256 (rust/crates/async-stream-0.3.6.crate) = 0b5a71a6f37880a80d1d7f19efd781e4 SIZE (rust/crates/async-stream-0.3.6.crate) = 13823 SHA256 (rust/crates/async-stream-impl-0.3.6.crate) = c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d SIZE (rust/crates/async-stream-impl-0.3.6.crate) = 4312 -SHA256 (rust/crates/async-trait-0.1.88.crate) = e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5 -SIZE (rust/crates/async-trait-0.1.88.crate) = 32084 +SHA256 (rust/crates/async-trait-0.1.89.crate) = 9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb +SIZE (rust/crates/async-trait-0.1.89.crate) = 32171 SHA256 (rust/crates/atoi-2.0.0.crate) = f28d99ec8bfea296261ca1af174f24225171fea9664ba9003cbebee704810528 SIZE (rust/crates/atoi-2.0.0.crate) = 7785 SHA256 (rust/crates/atomic-waker-1.1.2.crate) = 1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0 @@ -123,8 +123,8 @@ SHA256 (rust/crates/base64-simd-0.8.0.crate) = 339abbe78e73178762e23bea9dfd08e69 SIZE (rust/crates/base64-simd-0.8.0.crate) = 12531 SHA256 (rust/crates/base64ct-1.8.0.crate) = 55248b47b0caf0546f7988906588779981c43bb1bc9d0c44087278f80cdb44ba SIZE (rust/crates/base64ct-1.8.0.crate) = 31211 -SHA256 (rust/crates/bcrypt-0.17.0.crate) = 92758ad6077e4c76a6cadbce5005f666df70d4f13b19976b1a8062eef880040f -SIZE (rust/crates/bcrypt-0.17.0.crate) = 12461 +SHA256 (rust/crates/bcrypt-0.17.1.crate) = abaf6da45c74385272ddf00e1ac074c7d8a6c1a1dda376902bd6a427522a8b2c +SIZE (rust/crates/bcrypt-0.17.1.crate) = 12542 SHA256 (rust/crates/bindgen-0.64.0.crate) = c4243e6031260db77ede97ad86c27e501d646a27ab57b59a574f725d98ab1fb4 SIZE (rust/crates/bindgen-0.64.0.crate) = 204700 SHA256 (rust/crates/bindgen-0.69.5.crate) = 271383c67ccabffb7381723dea0672a673f292304fcb45c01cc648c7a8d58088 @@ -233,8 +233,8 @@ SHA256 (rust/crates/darling_macro-0.20.11.crate) = fc34b93ccb385b40dc71c6fceac4b SIZE (rust/crates/darling_macro-0.20.11.crate) = 2532 SHA256 (rust/crates/data-encoding-2.9.0.crate) = 2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476 SIZE (rust/crates/data-encoding-2.9.0.crate) = 21564 -SHA256 (rust/crates/deadpool-0.10.0.crate) = fb84100978c1c7b37f09ed3ce3e5f843af02c2a2c431bae5b19230dad2c1b490 -SIZE (rust/crates/deadpool-0.10.0.crate) = 31997 +SHA256 (rust/crates/deadpool-0.12.2.crate) = 5ed5957ff93768adf7a65ab167a17835c3d2c3c50d084fe305174c112f468e2f +SIZE (rust/crates/deadpool-0.12.2.crate) = 34422 SHA256 (rust/crates/deadpool-runtime-0.1.4.crate) = 092966b41edc516079bdf31ec78a2e0588d1d0c08f78b91d8307215928642b2b SIZE (rust/crates/deadpool-runtime-0.1.4.crate) = 7664 SHA256 (rust/crates/der-0.6.1.crate) = f1a467a65c5e759bce6e65eaf91cc29f466cdc57cb65777bd646872a8a1fd4de @@ -301,8 +301,8 @@ SHA256 (rust/crates/foreign-types-0.3.2.crate) = f6f339eb8adc052cd2ca78910fda869 SIZE (rust/crates/foreign-types-0.3.2.crate) = 7504 SHA256 (rust/crates/foreign-types-shared-0.1.1.crate) = 00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b SIZE (rust/crates/foreign-types-shared-0.1.1.crate) = 5672 -SHA256 (rust/crates/form_urlencoded-1.2.1.crate) = e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456 -SIZE (rust/crates/form_urlencoded-1.2.1.crate) = 8969 +SHA256 (rust/crates/form_urlencoded-1.2.2.crate) = cb4cb245038516f5f85277875cdaa4f7d2c9a0fa0468de06ed190163b1581fcf +SIZE (rust/crates/form_urlencoded-1.2.2.crate) = 9347 SHA256 (rust/crates/fs_extra-1.3.0.crate) = 42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c SIZE (rust/crates/fs_extra-1.3.0.crate) = 31298 SHA256 (rust/crates/fsevent-sys-4.1.0.crate) = 76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2 @@ -385,8 +385,8 @@ SHA256 (rust/crates/httpdate-1.0.3.crate) = df3b46402a9d5adb4c86a0cf463f42e19994 SIZE (rust/crates/httpdate-1.0.3.crate) = 10639 SHA256 (rust/crates/hyper-0.14.32.crate) = 41dfc780fdec9373c01bae43289ea34c972e40ee3c9f6b3c8801a35f35586ce7 SIZE (rust/crates/hyper-0.14.32.crate) = 199622 -SHA256 (rust/crates/hyper-1.6.0.crate) = cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80 -SIZE (rust/crates/hyper-1.6.0.crate) = 153923 +SHA256 (rust/crates/hyper-1.7.0.crate) = eb3aa54a13a0dfe7fbe3a59e0c76093041720fdc77b110cc0fc260fafb4dc51e +SIZE (rust/crates/hyper-1.7.0.crate) = 157006 SHA256 (rust/crates/hyper-named-pipe-0.1.0.crate) = 73b7d8abf35697b81a825e386fc151e0d503e8cb5fcb93cc8669c376dfd6f278 SIZE (rust/crates/hyper-named-pipe-0.1.0.crate) = 8522 SHA256 (rust/crates/hyper-rustls-0.24.2.crate) = ec3efd23720e2049821a693cbc7e65ea87c72f1c58ff2f9522ff332b1491e590 @@ -419,8 +419,8 @@ SHA256 (rust/crates/icu_provider-2.0.0.crate) = 03c80da27b5f4187909049ee2d72f276 SIZE (rust/crates/icu_provider-2.0.0.crate) = 50966 SHA256 (rust/crates/ident_case-1.0.1.crate) = b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39 SIZE (rust/crates/ident_case-1.0.1.crate) = 3492 -SHA256 (rust/crates/idna-1.0.3.crate) = 686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e -SIZE (rust/crates/idna-1.0.3.crate) = 142515 +SHA256 (rust/crates/idna-1.1.0.crate) = 3b0875f23caa03898994f6ddc501886a45c7d3d62d04d2d90788d47be1b1e4de +SIZE (rust/crates/idna-1.1.0.crate) = 148747 SHA256 (rust/crates/idna_adapter-1.2.1.crate) = 3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344 SIZE (rust/crates/idna_adapter-1.2.1.crate) = 10389 SHA256 (rust/crates/image-0.25.6.crate) = db35664ce6b9810857a38a906215e75a9c879f0696556a39f59c62829710251a @@ -617,8 +617,8 @@ SHA256 (rust/crates/pem-3.0.5.crate) = 38af38e8470ac9dee3ce1bae1af9c1671fffc44dd SIZE (rust/crates/pem-3.0.5.crate) = 18140 SHA256 (rust/crates/pem-rfc7468-0.7.0.crate) = 88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412 SIZE (rust/crates/pem-rfc7468-0.7.0.crate) = 24159 -SHA256 (rust/crates/percent-encoding-2.3.1.crate) = e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e -SIZE (rust/crates/percent-encoding-2.3.1.crate) = 10235 +SHA256 (rust/crates/percent-encoding-2.3.2.crate) = 9b4f627cb1b25917193a259e49bdad08f671f8d9708acfd5fe0a8c1455d87220 +SIZE (rust/crates/percent-encoding-2.3.2.crate) = 11583 SHA256 (rust/crates/pin-project-lite-0.2.16.crate) = 3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b SIZE (rust/crates/pin-project-lite-0.2.16.crate) = 30504 SHA256 (rust/crates/pin-utils-0.1.0.crate) = 8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184 @@ -691,8 +691,8 @@ SHA256 (rust/crates/ref-cast-1.0.24.crate) = 4a0ae411dbe946a674d89546582cea4ba2b SIZE (rust/crates/ref-cast-1.0.24.crate) = 15252 SHA256 (rust/crates/ref-cast-impl-1.0.24.crate) = 1165225c21bff1f3bbce98f5a1f889949bc902d3575308cc7b0de30b4f6d27c7 SIZE (rust/crates/ref-cast-impl-1.0.24.crate) = 9968 -SHA256 (rust/crates/regex-1.11.1.crate) = b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191 -SIZE (rust/crates/regex-1.11.1.crate) = 254170 +SHA256 (rust/crates/regex-1.11.2.crate) = 23d7fd106d8c02486a8d64e778353d1cffe08ce79ac2e82f540c86d0facf6912 +SIZE (rust/crates/regex-1.11.2.crate) = 166265 SHA256 (rust/crates/regex-automata-0.1.10.crate) = 6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132 SIZE (rust/crates/regex-automata-0.1.10.crate) = 114533 SHA256 (rust/crates/regex-automata-0.4.9.crate) = 809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908 @@ -779,8 +779,8 @@ SHA256 (rust/crates/serde-1.0.219.crate) = 5f0e2c6ed6606019b4e29e69dbaba95b11854 SIZE (rust/crates/serde-1.0.219.crate) = 78983 SHA256 (rust/crates/serde_derive-1.0.219.crate) = 5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00 SIZE (rust/crates/serde_derive-1.0.219.crate) = 57798 -SHA256 (rust/crates/serde_json-1.0.142.crate) = 030fedb782600dcbd6f02d479bf0d817ac3bb40d644745b769d6a96bc3afc5a7 -SIZE (rust/crates/serde_json-1.0.142.crate) = 155363 +SHA256 (rust/crates/serde_json-1.0.143.crate) = d401abef1d108fbd9cbaebc3e46611f4b1021f714a0597a71f41ee463f5f4a5a +SIZE (rust/crates/serde_json-1.0.143.crate) = 155342 SHA256 (rust/crates/serde_path_to_error-0.1.17.crate) = 59fab13f937fa393d08645bf3a84bdfe86e296747b506ada67bb15f10f218b2a SIZE (rust/crates/serde_path_to_error-0.1.17.crate) = 17662 SHA256 (rust/crates/serde_repr-0.1.20.crate) = 175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c @@ -893,12 +893,12 @@ SHA256 (rust/crates/testcontainers-modules-0.12.1.crate) = eac95cde96549fc19c6bf SIZE (rust/crates/testcontainers-modules-0.12.1.crate) = 156916 SHA256 (rust/crates/thiserror-1.0.69.crate) = b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52 SIZE (rust/crates/thiserror-1.0.69.crate) = 22198 -SHA256 (rust/crates/thiserror-2.0.14.crate) = 0b0949c3a6c842cbde3f1686d6eea5a010516deb7085f79db747562d4102f41e -SIZE (rust/crates/thiserror-2.0.14.crate) = 29021 +SHA256 (rust/crates/thiserror-2.0.16.crate) = 3467d614147380f2e4e374161426ff399c91084acd2363eaf549172b3d5e60c0 +SIZE (rust/crates/thiserror-2.0.16.crate) = 29095 SHA256 (rust/crates/thiserror-impl-1.0.69.crate) = 4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1 SIZE (rust/crates/thiserror-impl-1.0.69.crate) = 18365 -SHA256 (rust/crates/thiserror-impl-2.0.14.crate) = cc5b44b4ab9c2fdd0e0512e6bece8388e214c0749f5862b114cc5b7a25daf227 -SIZE (rust/crates/thiserror-impl-2.0.14.crate) = 21219 +SHA256 (rust/crates/thiserror-impl-2.0.16.crate) = 6c5e1be1c48b9172ee610da68fd9cd2770e7a4056cb3fc98710ee6906f0c7960 +SIZE (rust/crates/thiserror-impl-2.0.16.crate) = 21214 SHA256 (rust/crates/thread_local-1.1.9.crate) = f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185 SIZE (rust/crates/thread_local-1.1.9.crate) = 19315 SHA256 (rust/crates/tiff-0.9.1.crate) = ba1310fcea54c6a9a4fd1aad794ecc02c31682f6bfbecdf460bf19533eed1e3e @@ -979,8 +979,8 @@ SHA256 (rust/crates/unicode-properties-0.1.3.crate) = e70f2a8b45122e719eb623c018 SIZE (rust/crates/unicode-properties-0.1.3.crate) = 42252 SHA256 (rust/crates/untrusted-0.9.0.crate) = 8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1 SIZE (rust/crates/untrusted-0.9.0.crate) = 14447 -SHA256 (rust/crates/url-2.5.4.crate) = 32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60 -SIZE (rust/crates/url-2.5.4.crate) = 81097 +SHA256 (rust/crates/url-2.5.7.crate) = 08bc136a29a3d1758e07a9cca267be308aeebf5cfd5a10f3f67ab2097683ef5b +SIZE (rust/crates/url-2.5.7.crate) = 87907 SHA256 (rust/crates/urlencoding-2.1.3.crate) = daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da SIZE (rust/crates/urlencoding-2.1.3.crate) = 6538 SHA256 (rust/crates/utf-8-0.7.6.crate) = 09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9 @@ -1143,8 +1143,8 @@ SHA256 (rust/crates/winnow-0.7.11.crate) = 74c7b26e3480b707944fc872477815d29a8e4 SIZE (rust/crates/winnow-0.7.11.crate) = 174175 SHA256 (rust/crates/winreg-0.50.0.crate) = 524e57b2c537c0f9b1e69f1965311ec12182b4122e45035b1508cd24d2adadb1 SIZE (rust/crates/winreg-0.50.0.crate) = 29703 -SHA256 (rust/crates/wiremock-0.6.4.crate) = a2b8b99d4cdbf36b239a9532e31fe4fb8acc38d1897c1761e161550a7dc78e6a -SIZE (rust/crates/wiremock-0.6.4.crate) = 58967 +SHA256 (rust/crates/wiremock-0.6.5.crate) = 08db1edfb05d9b3c1542e521aea074442088292f00b5f28e435c714a98f85031 +SIZE (rust/crates/wiremock-0.6.5.crate) = 60561 SHA256 (rust/crates/wit-bindgen-rt-0.39.0.crate) = 6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1 SIZE (rust/crates/wit-bindgen-rt-0.39.0.crate) = 12241 SHA256 (rust/crates/writeable-0.6.1.crate) = ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb @@ -1185,5 +1185,5 @@ SHA256 (rust/crates/zune-inflate-0.2.54.crate) = 73ab332fe2f6680068f3582b16a24f9 SIZE (rust/crates/zune-inflate-0.2.54.crate) = 37973 SHA256 (rust/crates/zune-jpeg-0.4.17.crate) = 0f6fe2e33d02a98ee64423802e16df3de99c43e5cf5ff983767e1128b394c8ac SIZE (rust/crates/zune-jpeg-0.4.17.crate) = 65784 -SHA256 (readur-readur-v2.5.5_GH0.tar.gz) = feddffa5c93385dcee029db22fba8514b02c01632797ef29a0044612bcd80b13 -SIZE (readur-readur-v2.5.5_GH0.tar.gz) = 12349276 +SHA256 (readur-readur-v2.5.6_GH0.tar.gz) = af8aebef4a5e955cb46a1af0ac3e5f36e96d7d724dc342ee82c1383f7b855149 +SIZE (readur-readur-v2.5.6_GH0.tar.gz) = 12566666 diff --git a/deskutils/readur/pkg-plist b/deskutils/readur/pkg-plist index 9e06104dddaf..108428e1e0f4 100644 --- a/deskutils/readur/pkg-plist +++ b/deskutils/readur/pkg-plist @@ -5,6 +5,6 @@ bin/readur %%WWWDIR%%/readur.png %%WWWDIR%%/index.html @dir %%WWWDIR%%/assets -%%WWWDIR%%/assets/index-C700-JQP.js +%%WWWDIR%%/assets/index-Dj5jAB9U.js %%WWWDIR%%/assets/index-C5nToalm.css @dir(%%USER%%,%%GROUP%%,0700) %%HOMEDIR%% diff --git a/deskutils/remind/Makefile b/deskutils/remind/Makefile index 04d302f64165..3417e5b287d7 100644 --- a/deskutils/remind/Makefile +++ b/deskutils/remind/Makefile @@ -1,5 +1,5 @@ PORTNAME= remind -DISTVERSION= 05.05.00 +DISTVERSION= 06.00.01 CATEGORIES= deskutils # upstream moves distfiles to OLD once a new release appears MASTER_SITES= https://dianne.skoll.ca/projects/remind/download/ \ diff --git a/deskutils/remind/distinfo b/deskutils/remind/distinfo index 09a7553c4f4e..3558196d7ed7 100644 --- a/deskutils/remind/distinfo +++ b/deskutils/remind/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1754049061 -SHA256 (remind-05.05.00.tar.gz) = cc57fe8399cdc443344b9d1413bc31d47732156438bdd1d3d82d1a833ffacbed -SIZE (remind-05.05.00.tar.gz) = 8975080 +TIMESTAMP = 1756286386 +SHA256 (remind-06.00.01.tar.gz) = 0705b6f700d6cd7b0f59af106495f7dd726ea14b641d9d8408f532fb28d2f007 +SIZE (remind-06.00.01.tar.gz) = 8998734 diff --git a/devel/Makefile b/devel/Makefile index 4654f2aba762..5662471fa45e 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -8431,12 +8431,14 @@ SUBDIR += wasi-compiler-rt18 SUBDIR += wasi-compiler-rt19 SUBDIR += wasi-compiler-rt20 + SUBDIR += wasi-compiler-rt21 SUBDIR += wasi-libc SUBDIR += wasi-libcxx SUBDIR += wasi-libcxx17 SUBDIR += wasi-libcxx18 SUBDIR += wasi-libcxx19 SUBDIR += wasi-libcxx20 + SUBDIR += wasi-libcxx21 SUBDIR += wasm-server-runner SUBDIR += wasm3 SUBDIR += wasmer diff --git a/devel/R-cran-evaluate/Makefile b/devel/R-cran-evaluate/Makefile index c7d8050312e5..4293bd126cf2 100644 --- a/devel/R-cran-evaluate/Makefile +++ b/devel/R-cran-evaluate/Makefile @@ -1,5 +1,5 @@ PORTNAME= evaluate -DISTVERSION= 1.0.4 +DISTVERSION= 1.0.5 CATEGORIES= devel DISTNAME= ${PORTNAME}_${PORTVERSION} diff --git a/devel/R-cran-evaluate/distinfo b/devel/R-cran-evaluate/distinfo index abbe72b72e46..627be396e16f 100644 --- a/devel/R-cran-evaluate/distinfo +++ b/devel/R-cran-evaluate/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1750446174 -SHA256 (evaluate_1.0.4.tar.gz) = 08dff6dcfce3cb321ab8d6851a246e698f6f641579d75c2a6875b36a65eca4ca -SIZE (evaluate_1.0.4.tar.gz) = 39226 +TIMESTAMP = 1756462946 +SHA256 (evaluate_1.0.5.tar.gz) = 47aac79f889a828a5f8b4756cb972d7c2966bb984cbae17a4bd2389a73270794 +SIZE (evaluate_1.0.5.tar.gz) = 39322 diff --git a/devel/R-cran-later/Makefile b/devel/R-cran-later/Makefile index 5833901f148d..a8b2446ae4c4 100644 --- a/devel/R-cran-later/Makefile +++ b/devel/R-cran-later/Makefile @@ -1,5 +1,5 @@ PORTNAME= later -DISTVERSION= 1.4.3 +DISTVERSION= 1.4.4 CATEGORIES= devel DISTNAME= ${PORTNAME}_${DISTVERSION} diff --git a/devel/R-cran-later/distinfo b/devel/R-cran-later/distinfo index bc01534b97e4..9a2a7ffa5dab 100644 --- a/devel/R-cran-later/distinfo +++ b/devel/R-cran-later/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1755851709 -SHA256 (later_1.4.3.tar.gz) = 7953e0139b95eebda80abd3c1987991fb3b397fc7a8851ae959f2a733bf35a61 -SIZE (later_1.4.3.tar.gz) = 70786 +TIMESTAMP = 1756439027 +SHA256 (later_1.4.4.tar.gz) = 18cec083cdbc3e5e9a491fa10af5cfcabb9cd91231e4e8a18e58e8651da7aa80 +SIZE (later_1.4.4.tar.gz) = 70679 diff --git a/devel/bashdb/files/patch-configure b/devel/bashdb/files/patch-configure index 25ed8c36baaf..698eaacce988 100644 --- a/devel/bashdb/files/patch-configure +++ b/devel/bashdb/files/patch-configure @@ -5,7 +5,7 @@ bash_5_or_greater=no case "${bash_major}.${bash_minor}" in - '5.0' | '5.0') -+ '5.0' | '5.0' | '5.1' | '5.2') ++ '5.0' | '5.0' | '5.1' | '5.2' | '5.3') bash_5_or_greater=yes ;; *) diff --git a/devel/cirrus-cli/Makefile b/devel/cirrus-cli/Makefile index 8f655ab3377e..b18e6dc05fc8 100644 --- a/devel/cirrus-cli/Makefile +++ b/devel/cirrus-cli/Makefile @@ -1,6 +1,6 @@ PORTNAME= cirrus-cli DISTVERSIONPREFIX= v -DISTVERSION= 0.146.0 +DISTVERSION= 0.147.0 CATEGORIES= devel MAINTAINER= bofh@FreeBSD.org diff --git a/devel/cirrus-cli/distinfo b/devel/cirrus-cli/distinfo index 86d06f62fae5..77650932ad4b 100644 --- a/devel/cirrus-cli/distinfo +++ b/devel/cirrus-cli/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1756369840 -SHA256 (go/devel_cirrus-cli/cirrus-cli-v0.146.0/v0.146.0.mod) = 5e3fb94c0dd8407f066badb79489c8f4ad0ccb3ae5b68b23964f61c9e0040719 -SIZE (go/devel_cirrus-cli/cirrus-cli-v0.146.0/v0.146.0.mod) = 10647 -SHA256 (go/devel_cirrus-cli/cirrus-cli-v0.146.0/v0.146.0.zip) = 420ad3e035021f21d4c65dc243aafa440662e5f08f7f9c6594127ccab8cba9ed -SIZE (go/devel_cirrus-cli/cirrus-cli-v0.146.0/v0.146.0.zip) = 1314497 +TIMESTAMP = 1756465628 +SHA256 (go/devel_cirrus-cli/cirrus-cli-v0.147.0/v0.147.0.mod) = c5357e43260e23ab742ee37be8e93387862c46e85d25f598edc20cbca5f85cdf +SIZE (go/devel_cirrus-cli/cirrus-cli-v0.147.0/v0.147.0.mod) = 10488 +SHA256 (go/devel_cirrus-cli/cirrus-cli-v0.147.0/v0.147.0.zip) = 57f13e4438cf3b44d3a393170ed5a852a6f039323d89dba6a985e94b297330e6 +SIZE (go/devel_cirrus-cli/cirrus-cli-v0.147.0/v0.147.0.zip) = 1310480 diff --git a/devel/dbus/Makefile b/devel/dbus/Makefile index 1ecf854e8588..9ca1aa15e5d7 100644 --- a/devel/dbus/Makefile +++ b/devel/dbus/Makefile @@ -1,6 +1,6 @@ PORTNAME= dbus DISTVERSION= 1.16.2 -PORTREVISION= 3 +PORTREVISION= 4 PORTEPOCH= 1 CATEGORIES= devel gnome MASTER_SITES= https://dbus.freedesktop.org/releases/dbus/ diff --git a/devel/dbus/files/patch-dbus_dbus-transport-socket.c b/devel/dbus/files/patch-dbus_dbus-transport-socket.c new file mode 100644 index 000000000000..15a5d2eedcd0 --- /dev/null +++ b/devel/dbus/files/patch-dbus_dbus-transport-socket.c @@ -0,0 +1,15 @@ +https://gitlab.freedesktop.org/dbus/dbus/-/merge_requests/526 + +--- dbus/dbus-transport-socket.c.orig 2025-02-27 16:29:06 UTC ++++ dbus/dbus-transport-socket.c +@@ -1208,8 +1208,8 @@ socket_do_iteration (DBusTransport *transport, + do_io_error (transport); + else + { +- dbus_bool_t need_read = (poll_fd.revents & _DBUS_POLLIN) > 0; +- dbus_bool_t need_write = (poll_fd.revents & _DBUS_POLLOUT) > 0; ++ dbus_bool_t need_read = (poll_fd.revents & (_DBUS_POLLIN | _DBUS_POLLHUP)) > 0; ++ dbus_bool_t need_write = (poll_fd.revents & (_DBUS_POLLOUT | _DBUS_POLLHUP)) > 0; + dbus_bool_t authentication_completed; + + _dbus_verbose ("in iteration, need_read=%d need_write=%d\n", diff --git a/devel/electron32/files/patch-net_dns_BUILD.gn b/devel/electron32/files/patch-net_dns_BUILD.gn index f1e85f0ddb01..e1fd322aea84 100644 --- a/devel/electron32/files/patch-net_dns_BUILD.gn +++ b/devel/electron32/files/patch-net_dns_BUILD.gn @@ -1,4 +1,4 @@ ---- net/dns/BUILD.gn.orig 2024-06-30 11:48:27 UTC +--- net/dns/BUILD.gn.orig 2025-03-29 00:50:57 UTC +++ net/dns/BUILD.gn @@ -138,7 +138,7 @@ source_set("dns") { "dns_config_service_android.cc", @@ -9,7 +9,17 @@ sources += [ "dns_config_service_linux.cc", "dns_config_service_linux.h", -@@ -179,6 +179,7 @@ source_set("dns") { +@@ -172,6 +172,9 @@ source_set("dns") { + } + + deps = [ "//net:net_deps" ] ++ if (is_bsd) { ++ deps += [ "//services/screen_ai/buildflags" ] ++ } + + public_deps = [ + ":dns_client", +@@ -179,6 +182,7 @@ source_set("dns") { ":host_resolver_manager", ":mdns_client", "//net:net_public_deps", @@ -17,7 +27,7 @@ ] allow_circular_includes_from = [ -@@ -449,9 +450,9 @@ source_set("tests") { +@@ -447,9 +451,9 @@ source_set("tests") { if (is_android) { sources += [ "dns_config_service_android_unittest.cc" ] diff --git a/devel/electron34/files/patch-net_dns_BUILD.gn b/devel/electron34/files/patch-net_dns_BUILD.gn index f1e85f0ddb01..e1fd322aea84 100644 --- a/devel/electron34/files/patch-net_dns_BUILD.gn +++ b/devel/electron34/files/patch-net_dns_BUILD.gn @@ -1,4 +1,4 @@ ---- net/dns/BUILD.gn.orig 2024-06-30 11:48:27 UTC +--- net/dns/BUILD.gn.orig 2025-03-29 00:50:57 UTC +++ net/dns/BUILD.gn @@ -138,7 +138,7 @@ source_set("dns") { "dns_config_service_android.cc", @@ -9,7 +9,17 @@ sources += [ "dns_config_service_linux.cc", "dns_config_service_linux.h", -@@ -179,6 +179,7 @@ source_set("dns") { +@@ -172,6 +172,9 @@ source_set("dns") { + } + + deps = [ "//net:net_deps" ] ++ if (is_bsd) { ++ deps += [ "//services/screen_ai/buildflags" ] ++ } + + public_deps = [ + ":dns_client", +@@ -179,6 +182,7 @@ source_set("dns") { ":host_resolver_manager", ":mdns_client", "//net:net_public_deps", @@ -17,7 +27,7 @@ ] allow_circular_includes_from = [ -@@ -449,9 +450,9 @@ source_set("tests") { +@@ -447,9 +451,9 @@ source_set("tests") { if (is_android) { sources += [ "dns_config_service_android_unittest.cc" ] diff --git a/devel/electron35/files/patch-net_dns_BUILD.gn b/devel/electron35/files/patch-net_dns_BUILD.gn index d51291a1422a..e1fd322aea84 100644 --- a/devel/electron35/files/patch-net_dns_BUILD.gn +++ b/devel/electron35/files/patch-net_dns_BUILD.gn @@ -1,6 +1,6 @@ ---- net/dns/BUILD.gn.orig 2025-04-06 11:53:44 UTC +--- net/dns/BUILD.gn.orig 2025-03-29 00:50:57 UTC +++ net/dns/BUILD.gn -@@ -140,7 +140,7 @@ source_set("dns") { +@@ -138,7 +138,7 @@ source_set("dns") { "dns_config_service_android.cc", "dns_config_service_android.h", ] @@ -9,7 +9,17 @@ sources += [ "dns_config_service_linux.cc", "dns_config_service_linux.h", -@@ -181,6 +181,7 @@ source_set("dns") { +@@ -172,6 +172,9 @@ source_set("dns") { + } + + deps = [ "//net:net_deps" ] ++ if (is_bsd) { ++ deps += [ "//services/screen_ai/buildflags" ] ++ } + + public_deps = [ + ":dns_client", +@@ -179,6 +182,7 @@ source_set("dns") { ":host_resolver_manager", ":mdns_client", "//net:net_public_deps", @@ -17,7 +27,7 @@ ] allow_circular_includes_from = [ -@@ -452,9 +453,9 @@ source_set("tests") { +@@ -447,9 +451,9 @@ source_set("tests") { if (is_android) { sources += [ "dns_config_service_android_unittest.cc" ] diff --git a/devel/electron36/files/patch-net_dns_BUILD.gn b/devel/electron36/files/patch-net_dns_BUILD.gn index d51291a1422a..e1fd322aea84 100644 --- a/devel/electron36/files/patch-net_dns_BUILD.gn +++ b/devel/electron36/files/patch-net_dns_BUILD.gn @@ -1,6 +1,6 @@ ---- net/dns/BUILD.gn.orig 2025-04-06 11:53:44 UTC +--- net/dns/BUILD.gn.orig 2025-03-29 00:50:57 UTC +++ net/dns/BUILD.gn -@@ -140,7 +140,7 @@ source_set("dns") { +@@ -138,7 +138,7 @@ source_set("dns") { "dns_config_service_android.cc", "dns_config_service_android.h", ] @@ -9,7 +9,17 @@ sources += [ "dns_config_service_linux.cc", "dns_config_service_linux.h", -@@ -181,6 +181,7 @@ source_set("dns") { +@@ -172,6 +172,9 @@ source_set("dns") { + } + + deps = [ "//net:net_deps" ] ++ if (is_bsd) { ++ deps += [ "//services/screen_ai/buildflags" ] ++ } + + public_deps = [ + ":dns_client", +@@ -179,6 +182,7 @@ source_set("dns") { ":host_resolver_manager", ":mdns_client", "//net:net_public_deps", @@ -17,7 +27,7 @@ ] allow_circular_includes_from = [ -@@ -452,9 +453,9 @@ source_set("tests") { +@@ -447,9 +451,9 @@ source_set("tests") { if (is_android) { sources += [ "dns_config_service_android_unittest.cc" ] diff --git a/devel/electron37/Makefile b/devel/electron37/Makefile index ed2a1bba8f00..cfd71a8f372e 100644 --- a/devel/electron37/Makefile +++ b/devel/electron37/Makefile @@ -4,7 +4,7 @@ DISTVERSION= ${ELECTRON_VER} PULSEMV= 16 PULSEV= ${PULSEMV}.1 CATEGORIES= devel -MASTER_SITES= https://github.com/tagattie/FreeBSD-Electron/releases/download/v37.3.1/:chromium \ +MASTER_SITES= https://github.com/tagattie/FreeBSD-Electron/releases/download/v37.4.0/:chromium \ https://freedesktop.org/software/pulseaudio/releases/:pulseaudio PKGNAMESUFFIX= ${ELECTRON_VER_MAJOR} DISTFILES= chromium-${CHROMIUM_VER}${EXTRACT_SUFX}.0:chromium \ @@ -225,7 +225,7 @@ SNDIO_VARS= GN_ARGS+=use_sndio=true SNDIO_VARS_OFF= GN_ARGS+=use_sndio=false # See ${WRKSRC}/electron/DEPS for CHROMIUM_VER -CHROMIUM_VER= 138.0.7204.235 +CHROMIUM_VER= 138.0.7204.243 # See ${WRKSRC}/electron/DEPS for NODE_VER NODE_VER= 22.18.0 # See ${WRKSRC}/electron/DEPS for NAN_VER diff --git a/devel/electron37/Makefile.version b/devel/electron37/Makefile.version index d20e1f839227..316992727560 100644 --- a/devel/electron37/Makefile.version +++ b/devel/electron37/Makefile.version @@ -1,2 +1,2 @@ -ELECTRON_VER= 37.3.1 +ELECTRON_VER= 37.4.0 ELECTRON_VER_MAJOR= ${ELECTRON_VER:C/\..*//} diff --git a/devel/electron37/distinfo b/devel/electron37/distinfo index 36570b21fec3..24e208c6a0dc 100644 --- a/devel/electron37/distinfo +++ b/devel/electron37/distinfo @@ -1,16 +1,16 @@ -TIMESTAMP = 1755851713 -SHA256 (electron/chromium-138.0.7204.235.tar.xz.0) = 1817cff1aea2328a81f6f3f18344d442833551ec1845c0cae2262ec38d7df408 -SIZE (electron/chromium-138.0.7204.235.tar.xz.0) = 2000000000 -SHA256 (electron/chromium-138.0.7204.235.tar.xz.1) = 775342c321ceae33766375a8844d4cf388b79929f8a5b41ef54524b3a1e64860 -SIZE (electron/chromium-138.0.7204.235.tar.xz.1) = 2000000000 -SHA256 (electron/chromium-138.0.7204.235.tar.xz.2) = bf07431e52dc0911e9252176abb0cbb8ae2ce138b725107c65738b4d79fe6ab7 -SIZE (electron/chromium-138.0.7204.235.tar.xz.2) = 273221044 +TIMESTAMP = 1756372577 +SHA256 (electron/chromium-138.0.7204.243.tar.xz.0) = 6de4153de04a391369af78bf7e6e88872f8404486ad8a587fe25ed21e6a408dd +SIZE (electron/chromium-138.0.7204.243.tar.xz.0) = 2000000000 +SHA256 (electron/chromium-138.0.7204.243.tar.xz.1) = ae7fc8e34ad25e4be009722383d862bbee6823fbeb237edb4376f4c21a4a72a0 +SIZE (electron/chromium-138.0.7204.243.tar.xz.1) = 2000000000 +SHA256 (electron/chromium-138.0.7204.243.tar.xz.2) = 06a4639f0361fbcd6d0fac04931986886c140c24f98b6cc50febc6921cd32d0f +SIZE (electron/chromium-138.0.7204.243.tar.xz.2) = 274022020 SHA256 (electron/pulseaudio-16.1.tar.gz) = 027266c62f2a84422ac45fa721a649508f0f1628fb1fd9242315ac54ce2d7c92 SIZE (electron/pulseaudio-16.1.tar.gz) = 2763111 -SHA256 (electron/electron-yarn-cache-37.3.1.tar.xz) = 7823d2fceaf2aac5bb0b342866049b0dfdeca98a65ac00559abfaff47bdba536 -SIZE (electron/electron-yarn-cache-37.3.1.tar.xz) = 30480408 -SHA256 (electron/electron-electron-v37.3.1_GH0.tar.gz) = b63e6d1542cc7bdfc2f1996d75208a24c2fb2812b235c32db527e50a313291e0 -SIZE (electron/electron-electron-v37.3.1_GH0.tar.gz) = 15837289 +SHA256 (electron/electron-yarn-cache-37.4.0.tar.xz) = 7823d2fceaf2aac5bb0b342866049b0dfdeca98a65ac00559abfaff47bdba536 +SIZE (electron/electron-yarn-cache-37.4.0.tar.xz) = 30480408 +SHA256 (electron/electron-electron-v37.4.0_GH0.tar.gz) = 43ccbd61351999cd09314b5ac28e97c78f584f40fb85dfd09564aad92a6d37a8 +SIZE (electron/electron-electron-v37.4.0_GH0.tar.gz) = 15838013 SHA256 (electron/nodejs-node-v22.18.0_GH0.tar.gz) = f0f7022d2bcf1e286a42ccf46bf184e67e469daa83ecd9fda2326e872bab7aa0 SIZE (electron/nodejs-node-v22.18.0_GH0.tar.gz) = 123027912 SHA256 (electron/nodejs-nan-e14bdcd1f72d62bca1d541b66da43130384ec213_GH0.tar.gz) = 02edf8d5b3fef9af94d8a1355da60564a57e7f2c99cb422bce042400607ed2eb diff --git a/devel/electron37/files/patch-electron_shell_services_node_node__service.cc b/devel/electron37/files/patch-electron_shell_services_node_node__service.cc index a69bf043abda..c12b95169c24 100644 --- a/devel/electron37/files/patch-electron_shell_services_node_node__service.cc +++ b/devel/electron37/files/patch-electron_shell_services_node_node__service.cc @@ -1,6 +1,6 @@ ---- electron/shell/services/node/node_service.cc.orig 2025-07-02 10:12:01 UTC +--- electron/shell/services/node/node_service.cc.orig 2025-08-25 07:57:03 UTC +++ electron/shell/services/node/node_service.cc -@@ -23,7 +23,7 @@ +@@ -24,7 +24,7 @@ #include "shell/common/node_includes.h" #include "shell/services/node/parent_port.h" @@ -9,7 +9,7 @@ #include "shell/common/crash_keys.h" #endif -@@ -40,7 +40,7 @@ void V8FatalErrorCallback(const char* location, const +@@ -41,7 +41,7 @@ void V8FatalErrorCallback(const char* location, const g_client_remote->OnV8FatalError(location, outstream.str()); } diff --git a/devel/electron37/files/patch-electron_spec_api-tray-spec.ts b/devel/electron37/files/patch-electron_spec_api-tray-spec.ts index cb822fdca402..a2cc8bcf183b 100644 --- a/devel/electron37/files/patch-electron_spec_api-tray-spec.ts +++ b/devel/electron37/files/patch-electron_spec_api-tray-spec.ts @@ -1,5 +1,21 @@ ---- electron/spec/api-tray-spec.ts.orig 2024-10-09 13:53:06 UTC +--- electron/spec/api-tray-spec.ts.orig 2025-08-25 07:57:03 UTC +++ electron/spec/api-tray-spec.ts +@@ -30,13 +30,13 @@ describe('tray module', () => { + }).to.throw(/Failed to load image from path (.+)/); + }); + +- ifit(process.platform !== 'linux')('throws a descriptive error if an invalid guid is given', () => { ++ ifit(process.platform !== 'linux' && process.platform !== 'freebsd')('throws a descriptive error if an invalid guid is given', () => { + expect(() => { + tray = new Tray(nativeImage.createEmpty(), 'I am not a guid'); + }).to.throw('Invalid GUID format'); + }); + +- ifit(process.platform !== 'linux')('accepts a valid guid', () => { ++ ifit(process.platform !== 'linux' && process.platform !== 'freebsd')('accepts a valid guid', () => { + expect(() => { + tray = new Tray(nativeImage.createEmpty(), '0019A433-3526-48BA-A66C-676742C0FEFB'); + }).to.not.throw(); @@ -131,7 +131,7 @@ describe('tray module', () => { describe('tray.getBounds()', () => { afterEach(() => { tray.destroy(); }); diff --git a/devel/electron37/files/patch-net_dns_BUILD.gn b/devel/electron37/files/patch-net_dns_BUILD.gn index d51291a1422a..e1fd322aea84 100644 --- a/devel/electron37/files/patch-net_dns_BUILD.gn +++ b/devel/electron37/files/patch-net_dns_BUILD.gn @@ -1,6 +1,6 @@ ---- net/dns/BUILD.gn.orig 2025-04-06 11:53:44 UTC +--- net/dns/BUILD.gn.orig 2025-03-29 00:50:57 UTC +++ net/dns/BUILD.gn -@@ -140,7 +140,7 @@ source_set("dns") { +@@ -138,7 +138,7 @@ source_set("dns") { "dns_config_service_android.cc", "dns_config_service_android.h", ] @@ -9,7 +9,17 @@ sources += [ "dns_config_service_linux.cc", "dns_config_service_linux.h", -@@ -181,6 +181,7 @@ source_set("dns") { +@@ -172,6 +172,9 @@ source_set("dns") { + } + + deps = [ "//net:net_deps" ] ++ if (is_bsd) { ++ deps += [ "//services/screen_ai/buildflags" ] ++ } + + public_deps = [ + ":dns_client", +@@ -179,6 +182,7 @@ source_set("dns") { ":host_resolver_manager", ":mdns_client", "//net:net_public_deps", @@ -17,7 +27,7 @@ ] allow_circular_includes_from = [ -@@ -452,9 +453,9 @@ source_set("tests") { +@@ -447,9 +451,9 @@ source_set("tests") { if (is_android) { sources += [ "dns_config_service_android_unittest.cc" ] diff --git a/devel/gcli/Makefile b/devel/gcli/Makefile index c8a88bd6f302..1c981d9f9394 100644 --- a/devel/gcli/Makefile +++ b/devel/gcli/Makefile @@ -1,5 +1,5 @@ PORTNAME= gcli -DISTVERSION= 2.8.0 +DISTVERSION= 2.9.0 CATEGORIES= devel net MASTER_SITES= https://herrhotzenplotz.de/gcli/releases/gcli-${DISTVERSION}/ @@ -10,7 +10,8 @@ WWW= https://herrhotzenplotz.de/gcli/ LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -LIB_DEPENDS= libcurl.so:ftp/curl +LIB_DEPENDS= libcurl.so:ftp/curl \ + libpdjson.so:textproc/pdjson TEST_DEPENDS= kyua:devel/kyua USES= libtool pathfix pkgconfig ssl tar:xz diff --git a/devel/gcli/distinfo b/devel/gcli/distinfo index fe18a3234c8d..0eb95c0db44d 100644 --- a/devel/gcli/distinfo +++ b/devel/gcli/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1748258074 -SHA256 (gcli-2.8.0.tar.xz) = b3ee6eb0d694f47f15a6d6e4f5adc824059e3f6836dfe95e74bd3a0cf92f05ec -SIZE (gcli-2.8.0.tar.xz) = 373532 +TIMESTAMP = 1756285649 +SHA256 (gcli-2.9.0.tar.xz) = 3753c0180c92ef71526ab015403f19fc359d4528cfd29fefdb2dbac0e9eb757b +SIZE (gcli-2.9.0.tar.xz) = 381808 diff --git a/devel/gcli/pkg-plist b/devel/gcli/pkg-plist index 71dae9ba923c..bbefa0d95885 100644 --- a/devel/gcli/pkg-plist +++ b/devel/gcli/pkg-plist @@ -14,5 +14,6 @@ share/man/man1/gcli-releases.1.gz share/man/man1/gcli-repos.1.gz share/man/man1/gcli-snippets.1.gz share/man/man1/gcli-status.1.gz +share/man/man1/gcli-tutorial.1.gz share/man/man1/gcli.1.gz share/man/man5/gcli.5.gz diff --git a/devel/generate/Makefile b/devel/generate/Makefile index ae6ba16946d3..715495acaba3 100644 --- a/devel/generate/Makefile +++ b/devel/generate/Makefile @@ -1,7 +1,7 @@ PORTNAME= generate -DISTVERSION= 3.0 +DISTVERSION= 3.1 CATEGORIES= devel -MASTER_SITES= http://www.druid.net/darcy/ +MASTER_SITES= https://www.druid.net/darcy/ MAINTAINER= darcy@druid.net COMMENT= Simple text pre-processor @@ -16,13 +16,12 @@ USES= gmake tar:tgz MAKE_ARGS= BINDIR=${STAGEDIR}${PREFIX}/bin \ MANDIR=${STAGEDIR}${PREFIX}/share/man +TEST_TARGET= test CONFLICTS_INSTALL= julius php*-pear-Text_Highlighter PLIST_FILES= bin/generate bin/rgenerate share/man/man1/generate.1.gz -TEST_TARGET= test - post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/* diff --git a/devel/generate/distinfo b/devel/generate/distinfo index 2e89e0ec6902..62e4ba1ef1bf 100644 --- a/devel/generate/distinfo +++ b/devel/generate/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1735396348 -SHA256 (generate-3.0.tgz) = c680e6285af499aaaa2e1c9531a4974dea612ea20b52b49751b7a99ea04798d5 -SIZE (generate-3.0.tgz) = 35167 +TIMESTAMP = 1756470000 +SHA256 (generate-3.1.tgz) = 979f068b52760dfdc1ab63e345b2da0ba4d2be53c1d8df26bc9f3c53880fc48d +SIZE (generate-3.1.tgz) = 34342 diff --git a/devel/generate/files/patch-generate.c b/devel/generate/files/patch-generate.c deleted file mode 100644 index 0176994c0f8d..000000000000 --- a/devel/generate/files/patch-generate.c +++ /dev/null @@ -1,11 +0,0 @@ ---- generate.c.orig 2025-01-16 13:10:40 UTC -+++ generate.c -@@ -151,7 +151,7 @@ fatal(const char *s,...) - { - va_list argptr; - -- if (infile) fprintf(stderr, "generate: file %s line %ld: ", infile->name, infile->xline); -+ if (infile) fprintf(stderr, "generate: file %s line %zu: ", infile->name, infile->xline); - else fprintf(stderr, "generate: "); - - va_start(argptr, s); diff --git a/devel/gitaly/distinfo b/devel/gitaly/distinfo index 6e93494c9aaf..8549dcb6f367 100644 --- a/devel/gitaly/distinfo +++ b/devel/gitaly/distinfo @@ -1,7 +1,7 @@ -TIMESTAMP = 1755673952 -SHA256 (go/devel_gitaly/gitaly-v18.3.0/go.mod) = 163e0c24ae7263540250f58c84b9a0197cf6be768dab99b21dd463cc1a4659bc -SIZE (go/devel_gitaly/gitaly-v18.3.0/go.mod) = 13011 -SHA256 (go/devel_gitaly/gitaly-v18.3.0/gitaly-v18.3.0.tar.bz2) = 4557995d57d16f2f01590f3c88b1811baf1045da47d4cba962da227a38277a45 -SIZE (go/devel_gitaly/gitaly-v18.3.0/gitaly-v18.3.0.tar.bz2) = 4558072 -SHA256 (go/devel_gitaly/gitaly-v18.3.0/git-v2.50.0.tar.bz2) = 33e44c038ae6b3ff526e6927c2c6ff1658fd7f3c7334b079c019fa08f8ab20e4 -SIZE (go/devel_gitaly/gitaly-v18.3.0/git-v2.50.0.tar.bz2) = 9249878 +TIMESTAMP = 1756438000 +SHA256 (go/devel_gitaly/gitaly-v18.3.1/go.mod) = 163e0c24ae7263540250f58c84b9a0197cf6be768dab99b21dd463cc1a4659bc +SIZE (go/devel_gitaly/gitaly-v18.3.1/go.mod) = 13011 +SHA256 (go/devel_gitaly/gitaly-v18.3.1/gitaly-v18.3.1.tar.bz2) = 657b5405665f2e9112e251edde1c0db4da1f871ec53611f30bf6353c922cf6f4 +SIZE (go/devel_gitaly/gitaly-v18.3.1/gitaly-v18.3.1.tar.bz2) = 4558216 +SHA256 (go/devel_gitaly/gitaly-v18.3.1/git-v2.50.0.tar.bz2) = 33e44c038ae6b3ff526e6927c2c6ff1658fd7f3c7334b079c019fa08f8ab20e4 +SIZE (go/devel_gitaly/gitaly-v18.3.1/git-v2.50.0.tar.bz2) = 9249878 diff --git a/devel/gitlab-runner/Makefile b/devel/gitlab-runner/Makefile index 5ea4cda9cfaf..042805f9c506 100644 --- a/devel/gitlab-runner/Makefile +++ b/devel/gitlab-runner/Makefile @@ -1,6 +1,6 @@ PORTNAME= gitlab-runner DISTVERSIONPREFIX= v -DISTVERSION= 18.2.2 +DISTVERSION= 18.3.0 CATEGORIES= devel MASTER_SITES= https://gitlab-runner-downloads.s3.amazonaws.com/master/docker/:dockerx64 \ https://gitlab-runner-downloads.s3.amazonaws.com/master/docker/:dockerarm @@ -29,9 +29,9 @@ USE_GITLAB= yes GL_ACCOUNT= gitlab-org USE_RC_SUBR= gitlab_runner # this branch removes the replace line in go.mod which breaks the way FreeBSD ports build go packages -GO_MOD_DIST= https://gitlab.com/mfechner/gitlab-runner/-/raw/18-2-stable/ +GO_MOD_DIST= https://gitlab.com/mfechner/gitlab-runner/-/raw/18-3-stable/ -GITBRANCH= 18-2-stable +GITBRANCH= 18-3-stable GO_MODULE= gitlab.com/gitlab-org/gitlab-runner _BUILD_DATE= $$(date -u +%Y-%m-%dT%H:%M:%S%z) diff --git a/devel/gitlab-runner/distinfo b/devel/gitlab-runner/distinfo index b9a59f0ad48f..9cc98de30f53 100644 --- a/devel/gitlab-runner/distinfo +++ b/devel/gitlab-runner/distinfo @@ -1,9 +1,9 @@ -TIMESTAMP = 1755749954 -SHA256 (go/devel_gitlab-runner/gitlab-runner-v18.2.2/prebuilt-x86_64.tar.xz) = b0dccc53f415962dde3f5a7e6f1ab068b8da5484a7fefdae2c5e39d8bb6c637e -SIZE (go/devel_gitlab-runner/gitlab-runner-v18.2.2/prebuilt-x86_64.tar.xz) = 9594352 -SHA256 (go/devel_gitlab-runner/gitlab-runner-v18.2.2/prebuilt-arm.tar.xz) = 5018c6b661ebf4b9c661593548e45394c553bbd4082b5ef744a39a1f7f1fee32 -SIZE (go/devel_gitlab-runner/gitlab-runner-v18.2.2/prebuilt-arm.tar.xz) = 9020896 -SHA256 (go/devel_gitlab-runner/gitlab-runner-v18.2.2/go.mod) = 1d006ca94bdd6145995852d8890266423bf25abb6a00be2eb50a037e9d7e9f66 -SIZE (go/devel_gitlab-runner/gitlab-runner-v18.2.2/go.mod) = 13424 -SHA256 (go/devel_gitlab-runner/gitlab-runner-v18.2.2/gitlab-runner-v18.2.2.tar.bz2) = 4ab991cc629b5b623fc696b62fa3cad09d23eba369920f45e8b536f9af1c4dd9 -SIZE (go/devel_gitlab-runner/gitlab-runner-v18.2.2/gitlab-runner-v18.2.2.tar.bz2) = 1962570 +TIMESTAMP = 1756440493 +SHA256 (go/devel_gitlab-runner/gitlab-runner-v18.3.0/prebuilt-x86_64.tar.xz) = b0dccc53f415962dde3f5a7e6f1ab068b8da5484a7fefdae2c5e39d8bb6c637e +SIZE (go/devel_gitlab-runner/gitlab-runner-v18.3.0/prebuilt-x86_64.tar.xz) = 9594352 +SHA256 (go/devel_gitlab-runner/gitlab-runner-v18.3.0/prebuilt-arm.tar.xz) = 5018c6b661ebf4b9c661593548e45394c553bbd4082b5ef744a39a1f7f1fee32 +SIZE (go/devel_gitlab-runner/gitlab-runner-v18.3.0/prebuilt-arm.tar.xz) = 9020896 +SHA256 (go/devel_gitlab-runner/gitlab-runner-v18.3.0/go.mod) = 7b21298f756a14279964a1892eb446566af6349c650dd6ed35c09a6b57e55ba2 +SIZE (go/devel_gitlab-runner/gitlab-runner-v18.3.0/go.mod) = 13412 +SHA256 (go/devel_gitlab-runner/gitlab-runner-v18.3.0/gitlab-runner-v18.3.0.tar.bz2) = 32e64beaedfa575e42144341ec38a073f5178ac37a747a0bd3e93fc971b50d6e +SIZE (go/devel_gitlab-runner/gitlab-runner-v18.3.0/gitlab-runner-v18.3.0.tar.bz2) = 2018932 diff --git a/devel/ninja/Makefile b/devel/ninja/Makefile index 27d411e3bad9..931e9b910a68 100644 --- a/devel/ninja/Makefile +++ b/devel/ninja/Makefile @@ -1,5 +1,5 @@ PORTNAME= ninja -PORTVERSION= 1.11.1 +PORTVERSION= 1.13.1 DISTVERSIONPREFIX= v PORTEPOCH= 4 CATEGORIES= devel diff --git a/devel/ninja/distinfo b/devel/ninja/distinfo index c9fcd675c558..60e7d21f0fd6 100644 --- a/devel/ninja/distinfo +++ b/devel/ninja/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1716360440 -SHA256 (ninja-build-ninja-v1.11.1_GH0.tar.gz) = 31747ae633213f1eda3842686f83c2aa1412e0f5691d1c14dbbcc67fe7400cea -SIZE (ninja-build-ninja-v1.11.1_GH0.tar.gz) = 229479 +TIMESTAMP = 1755246529 +SHA256 (ninja-build-ninja-v1.13.1_GH0.tar.gz) = f0055ad0369bf2e372955ba55128d000cfcc21777057806015b45e4accbebf23 +SIZE (ninja-build-ninja-v1.13.1_GH0.tar.gz) = 292098 diff --git a/devel/php-composer/Makefile b/devel/php-composer/Makefile index af89665e5deb..0e97f64dd4f5 100644 --- a/devel/php-composer/Makefile +++ b/devel/php-composer/Makefile @@ -1,5 +1,5 @@ PORTNAME= composer -DISTVERSION= 2.8.10 +DISTVERSION= 2.8.11 CATEGORIES= devel MASTER_SITES= https://getcomposer.org/download/${DISTVERSION}/ PKGNAMEPREFIX= ${PHP_PKGNAMEPREFIX} diff --git a/devel/php-composer/distinfo b/devel/php-composer/distinfo index 52690f8d36f0..dd927eafe272 100644 --- a/devel/php-composer/distinfo +++ b/devel/php-composer/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1752263341 -SHA256 (composer-2.8.10/composer.phar) = 28dbb6bd8bef31479c7985b774c130a8bda37dbe63c35b56f6cb6bc377427573 -SIZE (composer-2.8.10/composer.phar) = 3116618 +TIMESTAMP = 1755779107 +SHA256 (composer-2.8.11/composer.phar) = 257a969e9a9d27e0e45cfe954835c17a76033ba84a388e0f472db83eded65a8b +SIZE (composer-2.8.11/composer.phar) = 3124368 diff --git a/devel/qtcreator/Makefile b/devel/qtcreator/Makefile index 4bae7886bc37..fa4787a862cc 100644 --- a/devel/qtcreator/Makefile +++ b/devel/qtcreator/Makefile @@ -1,5 +1,5 @@ PORTNAME= qtcreator -DISTVERSION= 17.0.0 +DISTVERSION= 17.0.1 CATEGORIES= devel MASTER_SITES= QT/official_releases/qtcreator/${DISTVERSION:R}/${DISTVERSION} DISTNAME= qt-creator-opensource-src-${DISTVERSION} diff --git a/devel/qtcreator/distinfo b/devel/qtcreator/distinfo index 3866cbc27ec6..faa8c3de886f 100644 --- a/devel/qtcreator/distinfo +++ b/devel/qtcreator/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1755911848 -SHA256 (KDE/Qt/qtcreator/qt-creator-opensource-src-17.0.0.tar.xz) = 616dfea43a6162bc1a8ccf440e1df6a74b977fcb028d76b7c779a1fb8de39e8c -SIZE (KDE/Qt/qtcreator/qt-creator-opensource-src-17.0.0.tar.xz) = 55713368 +TIMESTAMP = 1756405815 +SHA256 (KDE/Qt/qtcreator/qt-creator-opensource-src-17.0.1.tar.xz) = f5671808476707391a9a2edb9963ea4a6b6b90c78cbe74ece1aca0c6b42e5184 +SIZE (KDE/Qt/qtcreator/qt-creator-opensource-src-17.0.1.tar.xz) = 55741344 diff --git a/devel/qtcreator/pkg-plist b/devel/qtcreator/pkg-plist index ed106e08f706..164071d4637d 100644 --- a/devel/qtcreator/pkg-plist +++ b/devel/qtcreator/pkg-plist @@ -188,6 +188,7 @@ share/metainfo/org.qt-project.qtcreator.appdata.xml %%DATADIR%%/changelog/changes-16.0.1.md %%DATADIR%%/changelog/changes-16.0.2.md %%DATADIR%%/changelog/changes-17.0.0.md +%%DATADIR%%/changelog/changes-17.0.1.md %%DATADIR%%/changelog/changes-2.0.0 %%DATADIR%%/changelog/changes-2.0.1 %%DATADIR%%/changelog/changes-2.1.0 diff --git a/devel/ruby-build/Makefile b/devel/ruby-build/Makefile index f7c73e58b8c0..f7a82fda889a 100644 --- a/devel/ruby-build/Makefile +++ b/devel/ruby-build/Makefile @@ -1,5 +1,5 @@ PORTNAME= ruby-build -PORTVERSION= 20250811 +PORTVERSION= 20250829 DISTVERSIONPREFIX= v CATEGORIES= devel ruby diff --git a/devel/ruby-build/distinfo b/devel/ruby-build/distinfo index a7a044ffdf3a..f33aa6517cd4 100644 --- a/devel/ruby-build/distinfo +++ b/devel/ruby-build/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1754924450 -SHA256 (rbenv-ruby-build-v20250811_GH0.tar.gz) = 2f53eeb2c353be7b0e34fe10380552d16053242cd5f661b34ae62f0a80e5338b -SIZE (rbenv-ruby-build-v20250811_GH0.tar.gz) = 97574 +TIMESTAMP = 1756428332 +SHA256 (rbenv-ruby-build-v20250829_GH0.tar.gz) = 8dafe0a69151592385c7114023e6cf5423022479f9054435df2d19ed6b42bff7 +SIZE (rbenv-ruby-build-v20250829_GH0.tar.gz) = 98022 diff --git a/devel/wasi-compiler-rt21/Makefile b/devel/wasi-compiler-rt21/Makefile new file mode 100644 index 000000000000..ae90a63d04cf --- /dev/null +++ b/devel/wasi-compiler-rt21/Makefile @@ -0,0 +1,6 @@ +# must sync with devel/llvm21 +DISTVERSION= 21.1.0 + +MASTERDIR= ${.CURDIR}/../wasi-compiler-rt + +.include "${MASTERDIR}/Makefile" diff --git a/devel/wasi-libc/Makefile b/devel/wasi-libc/Makefile index 171eb65eb1cc..b4ab9d593d75 100644 --- a/devel/wasi-libc/Makefile +++ b/devel/wasi-libc/Makefile @@ -1,7 +1,6 @@ PORTNAME= wasi-libc DISTVERSIONPREFIX= wasi-sdk- -DISTVERSION= 25-14 -DISTVERSIONSUFFIX= -ge9524a0 +DISTVERSION= 27 CATEGORIES= devel PKGNAMESUFFIX= ${FLAVOR} @@ -19,7 +18,7 @@ LICENSE_PERMS_LLVM2= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept BUILD_DEPENDS= bash:shells/bash -FLAVORS= 19 20 18 17 +FLAVORS= 19 20 21 18 17 FLAVOR?= ${FLAVORS:[1]} USES= gmake llvm:${FLAVOR} diff --git a/devel/wasi-libc/distinfo b/devel/wasi-libc/distinfo index 770e99bd34d9..0adb12b4e1ce 100644 --- a/devel/wasi-libc/distinfo +++ b/devel/wasi-libc/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1743009354 -SHA256 (WebAssembly-wasi-libc-wasi-sdk-25-14-ge9524a0_GH0.tar.gz) = 2a547e2177cea793ceda2fbbbdf6c102155c70e717f63ab9d832a85d4d1753ef -SIZE (WebAssembly-wasi-libc-wasi-sdk-25-14-ge9524a0_GH0.tar.gz) = 1444692 +TIMESTAMP = 1756309454 +SHA256 (WebAssembly-wasi-libc-wasi-sdk-27_GH0.tar.gz) = 00850da0742670d5ad7fd556bf7bc5452512bac79f17ac76d5cfaa3b74526898 +SIZE (WebAssembly-wasi-libc-wasi-sdk-27_GH0.tar.gz) = 1472362 SHA256 (WebAssembly-WASI-59cbe14_GH0.tar.gz) = 4e36c4add2421b44ccdded83d442d9aadf02ffa8b534d94016fad2bb7b781cc6 SIZE (WebAssembly-WASI-59cbe14_GH0.tar.gz) = 162059 diff --git a/devel/wasi-libc/files/llvm21/__stdarg___gnuc_va_list.h b/devel/wasi-libc/files/llvm21/__stdarg___gnuc_va_list.h new file mode 100644 index 000000000000..2a0a7e8cc6c0 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stdarg___gnuc_va_list.h @@ -0,0 +1,13 @@ +/*===---- __stdarg___gnuc_va_list.h - Definition of __gnuc_va_list ---------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __GNUC_VA_LIST +#define __GNUC_VA_LIST +typedef __builtin_va_list __gnuc_va_list; +#endif diff --git a/devel/wasi-libc/files/llvm21/__stdarg___va_copy.h b/devel/wasi-libc/files/llvm21/__stdarg___va_copy.h new file mode 100644 index 000000000000..e433e18a7082 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stdarg___va_copy.h @@ -0,0 +1,12 @@ +/*===---- __stdarg___va_copy.h - Definition of __va_copy -------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __va_copy +#define __va_copy(d, s) __builtin_va_copy(d, s) +#endif diff --git a/devel/wasi-libc/files/llvm21/__stdarg_header_macro.h b/devel/wasi-libc/files/llvm21/__stdarg_header_macro.h new file mode 100644 index 000000000000..beb92ee02526 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stdarg_header_macro.h @@ -0,0 +1,12 @@ +/*===---- __stdarg_header_macro.h ------------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __STDARG_H +#define __STDARG_H +#endif diff --git a/devel/wasi-libc/files/llvm21/__stdarg_va_arg.h b/devel/wasi-libc/files/llvm21/__stdarg_va_arg.h new file mode 100644 index 000000000000..ebdb6f9d4b1e --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stdarg_va_arg.h @@ -0,0 +1,22 @@ +/*===---- __stdarg_va_arg.h - Definitions of va_start, va_arg, va_end-------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef va_arg + +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L +/* C23 uses a special builtin. */ +#define va_start(...) __builtin_c23_va_start(__VA_ARGS__) +#else +/* Versions before C23 do require the second parameter. */ +#define va_start(ap, param) __builtin_va_start(ap, param) +#endif +#define va_end(ap) __builtin_va_end(ap) +#define va_arg(ap, type) __builtin_va_arg(ap, type) + +#endif diff --git a/devel/wasi-libc/files/llvm21/__stdarg_va_copy.h b/devel/wasi-libc/files/llvm21/__stdarg_va_copy.h new file mode 100644 index 000000000000..8645328c2c68 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stdarg_va_copy.h @@ -0,0 +1,12 @@ +/*===---- __stdarg_va_copy.h - Definition of va_copy------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef va_copy +#define va_copy(dest, src) __builtin_va_copy(dest, src) +#endif diff --git a/devel/wasi-libc/files/llvm21/__stdarg_va_list.h b/devel/wasi-libc/files/llvm21/__stdarg_va_list.h new file mode 100644 index 000000000000..20c2e2cad940 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stdarg_va_list.h @@ -0,0 +1,13 @@ +/*===---- __stdarg_va_list.h - Definition of va_list -----------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef _VA_LIST +#define _VA_LIST +typedef __builtin_va_list va_list; +#endif diff --git a/devel/wasi-libc/files/llvm21/__stddef_header_macro.h b/devel/wasi-libc/files/llvm21/__stddef_header_macro.h new file mode 100644 index 000000000000..db5fb3c0abc1 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stddef_header_macro.h @@ -0,0 +1,12 @@ +/*===---- __stddef_header_macro.h ------------------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __STDDEF_H +#define __STDDEF_H +#endif diff --git a/devel/wasi-libc/files/llvm21/__stddef_max_align_t.h b/devel/wasi-libc/files/llvm21/__stddef_max_align_t.h new file mode 100644 index 000000000000..512606a87728 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stddef_max_align_t.h @@ -0,0 +1,27 @@ +/*===---- __stddef_max_align_t.h - Definition of max_align_t ---------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __CLANG_MAX_ALIGN_T_DEFINED +#define __CLANG_MAX_ALIGN_T_DEFINED + +#if defined(_MSC_VER) +typedef double max_align_t; +#elif defined(__APPLE__) +typedef long double max_align_t; +#else +// Define 'max_align_t' to match the GCC definition. +typedef struct { + long long __clang_max_align_nonce1 + __attribute__((__aligned__(__alignof__(long long)))); + long double __clang_max_align_nonce2 + __attribute__((__aligned__(__alignof__(long double)))); +} max_align_t; +#endif + +#endif diff --git a/devel/wasi-libc/files/llvm21/__stddef_null.h b/devel/wasi-libc/files/llvm21/__stddef_null.h new file mode 100644 index 000000000000..c10bd2d7d988 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stddef_null.h @@ -0,0 +1,29 @@ +/*===---- __stddef_null.h - Definition of NULL -----------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#if !defined(NULL) || !__building_module(_Builtin_stddef) + +/* linux/stddef.h will define NULL to 0. glibc (and other) headers then define + * __need_NULL and rely on stddef.h to redefine NULL to the correct value again. + * Modules don't support redefining macros like that, but support that pattern + * in the non-modules case. + */ +#undef NULL + +#ifdef __cplusplus +#if !defined(__MINGW32__) && !defined(_MSC_VER) +#define NULL __null +#else +#define NULL 0 +#endif +#else +#define NULL ((void*)0) +#endif + +#endif diff --git a/devel/wasi-libc/files/llvm21/__stddef_nullptr_t.h b/devel/wasi-libc/files/llvm21/__stddef_nullptr_t.h new file mode 100644 index 000000000000..7f3fbe6fe0d3 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stddef_nullptr_t.h @@ -0,0 +1,29 @@ +/*===---- __stddef_nullptr_t.h - Definition of nullptr_t -------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +/* + * When -fbuiltin-headers-in-system-modules is set this is a non-modular header + * and needs to behave as if it was textual. + */ +#if !defined(_NULLPTR_T) || \ + (__has_feature(modules) && !__building_module(_Builtin_stddef)) +#define _NULLPTR_T + +#ifdef __cplusplus +#if defined(_MSC_EXTENSIONS) && defined(_NATIVE_NULLPTR_SUPPORTED) +namespace std { +typedef decltype(nullptr) nullptr_t; +} +using ::std::nullptr_t; +#endif +#elif defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L +typedef typeof(nullptr) nullptr_t; +#endif + +#endif diff --git a/devel/wasi-libc/files/llvm21/__stddef_offsetof.h b/devel/wasi-libc/files/llvm21/__stddef_offsetof.h new file mode 100644 index 000000000000..84172c6cd273 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stddef_offsetof.h @@ -0,0 +1,17 @@ +/*===---- __stddef_offsetof.h - Definition of offsetof ---------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +/* + * When -fbuiltin-headers-in-system-modules is set this is a non-modular header + * and needs to behave as if it was textual. + */ +#if !defined(offsetof) || \ + (__has_feature(modules) && !__building_module(_Builtin_stddef)) +#define offsetof(t, d) __builtin_offsetof(t, d) +#endif diff --git a/devel/wasi-libc/files/llvm21/__stddef_ptrdiff_t.h b/devel/wasi-libc/files/llvm21/__stddef_ptrdiff_t.h new file mode 100644 index 000000000000..fd3c893c66c9 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stddef_ptrdiff_t.h @@ -0,0 +1,20 @@ +/*===---- __stddef_ptrdiff_t.h - Definition of ptrdiff_t -------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +/* + * When -fbuiltin-headers-in-system-modules is set this is a non-modular header + * and needs to behave as if it was textual. + */ +#if !defined(_PTRDIFF_T) || \ + (__has_feature(modules) && !__building_module(_Builtin_stddef)) +#define _PTRDIFF_T + +typedef __PTRDIFF_TYPE__ ptrdiff_t; + +#endif diff --git a/devel/wasi-libc/files/llvm21/__stddef_rsize_t.h b/devel/wasi-libc/files/llvm21/__stddef_rsize_t.h new file mode 100644 index 000000000000..dd433d40d973 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stddef_rsize_t.h @@ -0,0 +1,20 @@ +/*===---- __stddef_rsize_t.h - Definition of rsize_t -----------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +/* + * When -fbuiltin-headers-in-system-modules is set this is a non-modular header + * and needs to behave as if it was textual. + */ +#if !defined(_RSIZE_T) || \ + (__has_feature(modules) && !__building_module(_Builtin_stddef)) +#define _RSIZE_T + +typedef __SIZE_TYPE__ rsize_t; + +#endif diff --git a/devel/wasi-libc/files/llvm21/__stddef_size_t.h b/devel/wasi-libc/files/llvm21/__stddef_size_t.h new file mode 100644 index 000000000000..3dd7b1f37929 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stddef_size_t.h @@ -0,0 +1,20 @@ +/*===---- __stddef_size_t.h - Definition of size_t -------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +/* + * When -fbuiltin-headers-in-system-modules is set this is a non-modular header + * and needs to behave as if it was textual. + */ +#if !defined(_SIZE_T) || \ + (__has_feature(modules) && !__building_module(_Builtin_stddef)) +#define _SIZE_T + +typedef __SIZE_TYPE__ size_t; + +#endif diff --git a/devel/wasi-libc/files/llvm21/__stddef_unreachable.h b/devel/wasi-libc/files/llvm21/__stddef_unreachable.h new file mode 100644 index 000000000000..61df43e9732f --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stddef_unreachable.h @@ -0,0 +1,21 @@ +/*===---- __stddef_unreachable.h - Definition of unreachable ---------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef __cplusplus + +/* + * When -fbuiltin-headers-in-system-modules is set this is a non-modular header + * and needs to behave as if it was textual. + */ +#if !defined(unreachable) || \ + (__has_feature(modules) && !__building_module(_Builtin_stddef)) +#define unreachable() __builtin_unreachable() +#endif + +#endif diff --git a/devel/wasi-libc/files/llvm21/__stddef_wchar_t.h b/devel/wasi-libc/files/llvm21/__stddef_wchar_t.h new file mode 100644 index 000000000000..bd69f6322541 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stddef_wchar_t.h @@ -0,0 +1,28 @@ +/*===---- __stddef_wchar.h - Definition of wchar_t -------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#if !defined(__cplusplus) || (defined(_MSC_VER) && !_NATIVE_WCHAR_T_DEFINED) + +/* + * When -fbuiltin-headers-in-system-modules is set this is a non-modular header + * and needs to behave as if it was textual. + */ +#if !defined(_WCHAR_T) || \ + (__has_feature(modules) && !__building_module(_Builtin_stddef)) +#define _WCHAR_T + +#ifdef _MSC_EXTENSIONS +#define _WCHAR_T_DEFINED +#endif + +typedef __WCHAR_TYPE__ wchar_t; + +#endif + +#endif diff --git a/devel/wasi-libc/files/llvm21/__stddef_wint_t.h b/devel/wasi-libc/files/llvm21/__stddef_wint_t.h new file mode 100644 index 000000000000..0aa291507957 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/__stddef_wint_t.h @@ -0,0 +1,15 @@ +/*===---- __stddef_wint.h - Definition of wint_t ---------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +#ifndef _WINT_T +#define _WINT_T + +typedef __WINT_TYPE__ wint_t; + +#endif diff --git a/devel/wasi-libc/files/llvm21/stdarg.h b/devel/wasi-libc/files/llvm21/stdarg.h new file mode 100644 index 000000000000..6203d7a600a2 --- /dev/null +++ b/devel/wasi-libc/files/llvm21/stdarg.h @@ -0,0 +1,75 @@ +/*===---- stdarg.h - Variable argument handling ----------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +/* + * This header is designed to be included multiple times. If any of the __need_ + * macros are defined, then only that subset of interfaces are provided. This + * can be useful for POSIX headers that need to not expose all of stdarg.h, but + * need to use some of its interfaces. Otherwise this header provides all of + * the expected interfaces. + * + * When clang modules are enabled, this header is a textual header to support + * the multiple include behavior. As such, it doesn't directly declare anything + * so that it doesn't add duplicate declarations to all of its includers' + * modules. + */ +#if defined(__MVS__) && __has_include_next(<stdarg.h>) +#undef __need___va_list +#undef __need_va_list +#undef __need_va_arg +#undef __need___va_copy +#undef __need_va_copy +#include <__stdarg_header_macro.h> +#include_next <stdarg.h> + +#else +#if !defined(__need___va_list) && !defined(__need_va_list) && \ + !defined(__need_va_arg) && !defined(__need___va_copy) && \ + !defined(__need_va_copy) +#define __need___va_list +#define __need_va_list +#define __need_va_arg +#define __need___va_copy +/* GCC always defines __va_copy, but does not define va_copy unless in c99 mode + * or -ansi is not specified, since it was not part of C90. + */ +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || \ + (defined(__cplusplus) && __cplusplus >= 201103L) || \ + !defined(__STRICT_ANSI__) +#define __need_va_copy +#endif +#include <__stdarg_header_macro.h> +#endif + +#ifdef __need___va_list +#include <__stdarg___gnuc_va_list.h> +#undef __need___va_list +#endif /* defined(__need___va_list) */ + +#ifdef __need_va_list +#include <__stdarg_va_list.h> +#undef __need_va_list +#endif /* defined(__need_va_list) */ + +#ifdef __need_va_arg +#include <__stdarg_va_arg.h> +#undef __need_va_arg +#endif /* defined(__need_va_arg) */ + +#ifdef __need___va_copy +#include <__stdarg___va_copy.h> +#undef __need___va_copy +#endif /* defined(__need___va_copy) */ + +#ifdef __need_va_copy +#include <__stdarg_va_copy.h> +#undef __need_va_copy +#endif /* defined(__need_va_copy) */ + +#endif /* __MVS__ */ diff --git a/devel/wasi-libc/files/llvm21/stddef.h b/devel/wasi-libc/files/llvm21/stddef.h new file mode 100644 index 000000000000..99b275aebf5a --- /dev/null +++ b/devel/wasi-libc/files/llvm21/stddef.h @@ -0,0 +1,139 @@ +/*===---- stddef.h - Basic type definitions --------------------------------=== + * + * Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + * See https://llvm.org/LICENSE.txt for license information. + * SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception + * + *===-----------------------------------------------------------------------=== + */ + +/* + * This header is designed to be included multiple times. If any of the __need_ + * macros are defined, then only that subset of interfaces are provided. This + * can be useful for POSIX headers that need to not expose all of stddef.h, but + * need to use some of its interfaces. Otherwise this header provides all of + * the expected interfaces. + * + * When clang modules are enabled, this header is a textual header to support + * the multiple include behavior. As such, it doesn't directly declare anything + * so that it doesn't add duplicate declarations to all of its includers' + * modules. + */ +#if defined(__MVS__) && __has_include_next(<stddef.h>) +#undef __need_ptrdiff_t +#undef __need_size_t +#undef __need_rsize_t +#undef __need_wchar_t +#undef __need_NULL +#undef __need_nullptr_t +#undef __need_unreachable +#undef __need_max_align_t +#undef __need_offsetof +#undef __need_wint_t +#include <__stddef_header_macro.h> +#include_next <stddef.h> + +#else + +#if !defined(__need_ptrdiff_t) && !defined(__need_size_t) && \ + !defined(__need_rsize_t) && !defined(__need_wchar_t) && \ + !defined(__need_NULL) && !defined(__need_nullptr_t) && \ + !defined(__need_unreachable) && !defined(__need_max_align_t) && \ + !defined(__need_offsetof) && !defined(__need_wint_t) +#define __need_ptrdiff_t +#define __need_size_t +/* ISO9899:2011 7.20 (C11 Annex K): Define rsize_t if __STDC_WANT_LIB_EXT1__ is + * enabled. */ +#if defined(__STDC_WANT_LIB_EXT1__) && __STDC_WANT_LIB_EXT1__ >= 1 +#define __need_rsize_t +#endif +#define __need_wchar_t +#if !defined(__STDDEF_H) || __has_feature(modules) +/* + * __stddef_null.h is special when building without modules: if __need_NULL is + * set, then it will unconditionally redefine NULL. To avoid stepping on client + * definitions of NULL, __need_NULL should only be set the first time this + * header is included, that is when __STDDEF_H is not defined. However, when + * building with modules, this header is a textual header and needs to + * unconditionally include __stdef_null.h to support multiple submodules + * exporting _Builtin_stddef.null. Take module SM with submodules A and B, whose + * headers both include stddef.h When SM.A builds, __STDDEF_H will be defined. + * When SM.B builds, the definition from SM.A will leak when building without + * local submodule visibility. stddef.h wouldn't include __stddef_null.h, and + * SM.B wouldn't import _Builtin_stddef.null, and SM.B's `export *` wouldn't + * export NULL as expected. When building with modules, always include + * __stddef_null.h so that everything works as expected. + */ +#define __need_NULL +#endif +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L) || \ + defined(__cplusplus) +#define __need_nullptr_t +#endif +#if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202311L +#define __need_unreachable +#endif +#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 201112L) || \ + (defined(__cplusplus) && __cplusplus >= 201103L) +#define __need_max_align_t +#endif +#define __need_offsetof +/* wint_t is provided by <wchar.h> and not <stddef.h>. It's here + * for compatibility, but must be explicitly requested. Therefore + * __need_wint_t is intentionally not defined here. */ +#include <__stddef_header_macro.h> +#endif + +#if defined(__need_ptrdiff_t) +#include <__stddef_ptrdiff_t.h> +#undef __need_ptrdiff_t +#endif /* defined(__need_ptrdiff_t) */ + +#if defined(__need_size_t) +#include <__stddef_size_t.h> +#undef __need_size_t +#endif /*defined(__need_size_t) */ + +#if defined(__need_rsize_t) +#include <__stddef_rsize_t.h> +#undef __need_rsize_t +#endif /* defined(__need_rsize_t) */ + +#if defined(__need_wchar_t) +#include <__stddef_wchar_t.h> +#undef __need_wchar_t +#endif /* defined(__need_wchar_t) */ + +#if defined(__need_NULL) +#include <__stddef_null.h> +#undef __need_NULL +#endif /* defined(__need_NULL) */ + +#if defined(__need_nullptr_t) +#include <__stddef_nullptr_t.h> +#undef __need_nullptr_t +#endif /* defined(__need_nullptr_t) */ + +#if defined(__need_unreachable) +#include <__stddef_unreachable.h> +#undef __need_unreachable +#endif /* defined(__need_unreachable) */ + +#if defined(__need_max_align_t) +#include <__stddef_max_align_t.h> +#undef __need_max_align_t +#endif /* defined(__need_max_align_t) */ + +#if defined(__need_offsetof) +#include <__stddef_offsetof.h> +#undef __need_offsetof +#endif /* defined(__need_offsetof) */ + +/* Some C libraries expect to see a wint_t here. Others (notably MinGW) will use +__WINT_TYPE__ directly; accommodate both by requiring __need_wint_t */ +#if defined(__need_wint_t) +#include <__stddef_wint_t.h> +#undef __need_wint_t +#endif /* __need_wint_t */ + +#endif /* __MVS__ */ diff --git a/devel/wasi-libc/pkg-plist17 b/devel/wasi-libc/pkg-plist17 index 3081c285f23d..e5f511396f74 100644 --- a/devel/wasi-libc/pkg-plist17 +++ b/devel/wasi-libc/pkg-plist17 @@ -197,6 +197,7 @@ share/wasi-sysroot/include/wasm32-wasi/unistd.h share/wasi-sysroot/include/wasm32-wasi/utime.h share/wasi-sysroot/include/wasm32-wasi/values.h share/wasi-sysroot/include/wasm32-wasi/wasi/api.h +share/wasi-sysroot/include/wasm32-wasi/wasi/libc-busywait.h share/wasi-sysroot/include/wasm32-wasi/wasi/libc-environ.h share/wasi-sysroot/include/wasm32-wasi/wasi/libc-find-relpath.h share/wasi-sysroot/include/wasm32-wasi/wasi/libc-nocwd.h @@ -222,7 +223,6 @@ share/wasi-sysroot/lib/wasm32-wasi/libutil.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-getpid.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-mman.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-process-clocks.a -share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-pthread.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-signal.a share/wasi-sysroot/lib/wasm32-wasi/libxnet.a share/wasi-sysroot/share/wasm32-wasi/defined-symbols.txt diff --git a/devel/wasi-libc/pkg-plist18 b/devel/wasi-libc/pkg-plist18 index de08ff484d88..d0cf795762ad 100644 --- a/devel/wasi-libc/pkg-plist18 +++ b/devel/wasi-libc/pkg-plist18 @@ -211,6 +211,7 @@ share/wasi-sysroot/include/wasm32-wasi/unistd.h share/wasi-sysroot/include/wasm32-wasi/utime.h share/wasi-sysroot/include/wasm32-wasi/values.h share/wasi-sysroot/include/wasm32-wasi/wasi/api.h +share/wasi-sysroot/include/wasm32-wasi/wasi/libc-busywait.h share/wasi-sysroot/include/wasm32-wasi/wasi/libc-environ.h share/wasi-sysroot/include/wasm32-wasi/wasi/libc-find-relpath.h share/wasi-sysroot/include/wasm32-wasi/wasi/libc-nocwd.h @@ -236,7 +237,6 @@ share/wasi-sysroot/lib/wasm32-wasi/libutil.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-getpid.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-mman.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-process-clocks.a -share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-pthread.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-signal.a share/wasi-sysroot/lib/wasm32-wasi/libxnet.a share/wasi-sysroot/share/wasm32-wasi/defined-symbols.txt diff --git a/devel/wasi-libc/pkg-plist19 b/devel/wasi-libc/pkg-plist19 index f0b2808b051d..a41ba16fa7c8 100644 --- a/devel/wasi-libc/pkg-plist19 +++ b/devel/wasi-libc/pkg-plist19 @@ -213,6 +213,7 @@ share/wasi-sysroot/include/wasm32-wasi/unistd.h share/wasi-sysroot/include/wasm32-wasi/utime.h share/wasi-sysroot/include/wasm32-wasi/values.h share/wasi-sysroot/include/wasm32-wasi/wasi/api.h +share/wasi-sysroot/include/wasm32-wasi/wasi/libc-busywait.h share/wasi-sysroot/include/wasm32-wasi/wasi/libc-environ.h share/wasi-sysroot/include/wasm32-wasi/wasi/libc-find-relpath.h share/wasi-sysroot/include/wasm32-wasi/wasi/libc-nocwd.h @@ -238,7 +239,6 @@ share/wasi-sysroot/lib/wasm32-wasi/libutil.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-getpid.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-mman.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-process-clocks.a -share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-pthread.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-signal.a share/wasi-sysroot/lib/wasm32-wasi/libxnet.a share/wasi-sysroot/share/wasm32-wasi/defined-symbols.txt diff --git a/devel/wasi-libc/pkg-plist20 b/devel/wasi-libc/pkg-plist20 index f0b2808b051d..a41ba16fa7c8 100644 --- a/devel/wasi-libc/pkg-plist20 +++ b/devel/wasi-libc/pkg-plist20 @@ -213,6 +213,7 @@ share/wasi-sysroot/include/wasm32-wasi/unistd.h share/wasi-sysroot/include/wasm32-wasi/utime.h share/wasi-sysroot/include/wasm32-wasi/values.h share/wasi-sysroot/include/wasm32-wasi/wasi/api.h +share/wasi-sysroot/include/wasm32-wasi/wasi/libc-busywait.h share/wasi-sysroot/include/wasm32-wasi/wasi/libc-environ.h share/wasi-sysroot/include/wasm32-wasi/wasi/libc-find-relpath.h share/wasi-sysroot/include/wasm32-wasi/wasi/libc-nocwd.h @@ -238,7 +239,6 @@ share/wasi-sysroot/lib/wasm32-wasi/libutil.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-getpid.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-mman.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-process-clocks.a -share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-pthread.a share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-signal.a share/wasi-sysroot/lib/wasm32-wasi/libxnet.a share/wasi-sysroot/share/wasm32-wasi/defined-symbols.txt diff --git a/devel/wasi-libc/pkg-plist21 b/devel/wasi-libc/pkg-plist21 new file mode 100644 index 000000000000..a41ba16fa7c8 --- /dev/null +++ b/devel/wasi-libc/pkg-plist21 @@ -0,0 +1,249 @@ +share/wasi-sysroot/include/__stdarg___gnuc_va_list.h +share/wasi-sysroot/include/__stdarg___va_copy.h +share/wasi-sysroot/include/__stdarg_header_macro.h +share/wasi-sysroot/include/__stdarg_va_arg.h +share/wasi-sysroot/include/__stdarg_va_copy.h +share/wasi-sysroot/include/__stdarg_va_list.h +share/wasi-sysroot/include/__stddef_header_macro.h +share/wasi-sysroot/include/__stddef_max_align_t.h +share/wasi-sysroot/include/__stddef_null.h +share/wasi-sysroot/include/__stddef_nullptr_t.h +share/wasi-sysroot/include/__stddef_offsetof.h +share/wasi-sysroot/include/__stddef_ptrdiff_t.h +share/wasi-sysroot/include/__stddef_rsize_t.h +share/wasi-sysroot/include/__stddef_size_t.h +share/wasi-sysroot/include/__stddef_unreachable.h +share/wasi-sysroot/include/__stddef_wchar_t.h +share/wasi-sysroot/include/__stddef_wint_t.h +share/wasi-sysroot/include/stdarg.h +share/wasi-sysroot/include/stddef.h +share/wasi-sysroot/include/wasm32-wasi/__errno.h +share/wasi-sysroot/include/wasm32-wasi/__errno_values.h +share/wasi-sysroot/include/wasm32-wasi/__fd_set.h +share/wasi-sysroot/include/wasm32-wasi/__function___isatty.h +share/wasi-sysroot/include/wasm32-wasi/__functions_malloc.h +share/wasi-sysroot/include/wasm32-wasi/__functions_memcpy.h +share/wasi-sysroot/include/wasm32-wasi/__header_dirent.h +share/wasi-sysroot/include/wasm32-wasi/__header_fcntl.h +share/wasi-sysroot/include/wasm32-wasi/__header_inttypes.h +share/wasi-sysroot/include/wasm32-wasi/__header_netinet_in.h +share/wasi-sysroot/include/wasm32-wasi/__header_poll.h +share/wasi-sysroot/include/wasm32-wasi/__header_stdlib.h +share/wasi-sysroot/include/wasm32-wasi/__header_string.h +share/wasi-sysroot/include/wasm32-wasi/__header_sys_ioctl.h +share/wasi-sysroot/include/wasm32-wasi/__header_sys_resource.h +share/wasi-sysroot/include/wasm32-wasi/__header_sys_socket.h +share/wasi-sysroot/include/wasm32-wasi/__header_sys_stat.h +share/wasi-sysroot/include/wasm32-wasi/__header_time.h +share/wasi-sysroot/include/wasm32-wasi/__header_unistd.h +share/wasi-sysroot/include/wasm32-wasi/__macro_FD_SETSIZE.h +share/wasi-sysroot/include/wasm32-wasi/__macro_PAGESIZE.h +share/wasi-sysroot/include/wasm32-wasi/__mode_t.h +share/wasi-sysroot/include/wasm32-wasi/__seek.h +share/wasi-sysroot/include/wasm32-wasi/__struct_dirent.h +share/wasi-sysroot/include/wasm32-wasi/__struct_in6_addr.h +share/wasi-sysroot/include/wasm32-wasi/__struct_in_addr.h +share/wasi-sysroot/include/wasm32-wasi/__struct_iovec.h +share/wasi-sysroot/include/wasm32-wasi/__struct_msghdr.h +share/wasi-sysroot/include/wasm32-wasi/__struct_pollfd.h +share/wasi-sysroot/include/wasm32-wasi/__struct_rusage.h +share/wasi-sysroot/include/wasm32-wasi/__struct_sockaddr.h +share/wasi-sysroot/include/wasm32-wasi/__struct_sockaddr_in.h +share/wasi-sysroot/include/wasm32-wasi/__struct_sockaddr_in6.h +share/wasi-sysroot/include/wasm32-wasi/__struct_sockaddr_storage.h +share/wasi-sysroot/include/wasm32-wasi/__struct_sockaddr_un.h +share/wasi-sysroot/include/wasm32-wasi/__struct_stat.h +share/wasi-sysroot/include/wasm32-wasi/__struct_timespec.h +share/wasi-sysroot/include/wasm32-wasi/__struct_timeval.h +share/wasi-sysroot/include/wasm32-wasi/__struct_tm.h +share/wasi-sysroot/include/wasm32-wasi/__struct_tms.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_DIR.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_blkcnt_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_blksize_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_clock_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_clockid_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_dev_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_fd_set.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_gid_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_in_addr_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_in_port_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_ino_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_mode_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_nfds_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_nlink_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_off_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_sa_family_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_sigset_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_socklen_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_ssize_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_suseconds_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_time_t.h +share/wasi-sysroot/include/wasm32-wasi/__typedef_uid_t.h +share/wasi-sysroot/include/wasm32-wasi/__wasi_snapshot.h +share/wasi-sysroot/include/wasm32-wasi/alloca.h +share/wasi-sysroot/include/wasm32-wasi/ar.h +share/wasi-sysroot/include/wasm32-wasi/arpa/ftp.h +share/wasi-sysroot/include/wasm32-wasi/arpa/inet.h +share/wasi-sysroot/include/wasm32-wasi/arpa/nameser.h +share/wasi-sysroot/include/wasm32-wasi/arpa/nameser_compat.h +share/wasi-sysroot/include/wasm32-wasi/arpa/telnet.h +share/wasi-sysroot/include/wasm32-wasi/arpa/tftp.h +share/wasi-sysroot/include/wasm32-wasi/assert.h +share/wasi-sysroot/include/wasm32-wasi/bits/alltypes.h +share/wasi-sysroot/include/wasm32-wasi/bits/dirent.h +share/wasi-sysroot/include/wasm32-wasi/bits/fcntl.h +share/wasi-sysroot/include/wasm32-wasi/bits/fenv.h +share/wasi-sysroot/include/wasm32-wasi/bits/float.h +share/wasi-sysroot/include/wasm32-wasi/bits/hwcap.h +share/wasi-sysroot/include/wasm32-wasi/bits/io.h +share/wasi-sysroot/include/wasm32-wasi/bits/ioctl.h +share/wasi-sysroot/include/wasm32-wasi/bits/ioctl_fix.h +share/wasi-sysroot/include/wasm32-wasi/bits/ipcstat.h +share/wasi-sysroot/include/wasm32-wasi/bits/limits.h +share/wasi-sysroot/include/wasm32-wasi/bits/mman.h +share/wasi-sysroot/include/wasm32-wasi/bits/poll.h +share/wasi-sysroot/include/wasm32-wasi/bits/posix.h +share/wasi-sysroot/include/wasm32-wasi/bits/reg.h +share/wasi-sysroot/include/wasm32-wasi/bits/resource.h +share/wasi-sysroot/include/wasm32-wasi/bits/setjmp.h +share/wasi-sysroot/include/wasm32-wasi/bits/signal.h +share/wasi-sysroot/include/wasm32-wasi/bits/socket.h +share/wasi-sysroot/include/wasm32-wasi/bits/stat.h +share/wasi-sysroot/include/wasm32-wasi/bits/stdint.h +share/wasi-sysroot/include/wasm32-wasi/byteswap.h +share/wasi-sysroot/include/wasm32-wasi/complex.h +share/wasi-sysroot/include/wasm32-wasi/cpio.h +share/wasi-sysroot/include/wasm32-wasi/crypt.h +share/wasi-sysroot/include/wasm32-wasi/ctype.h +share/wasi-sysroot/include/wasm32-wasi/dirent.h +share/wasi-sysroot/include/wasm32-wasi/dlfcn.h +share/wasi-sysroot/include/wasm32-wasi/endian.h +share/wasi-sysroot/include/wasm32-wasi/err.h +share/wasi-sysroot/include/wasm32-wasi/errno.h +share/wasi-sysroot/include/wasm32-wasi/fcntl.h +share/wasi-sysroot/include/wasm32-wasi/features.h +share/wasi-sysroot/include/wasm32-wasi/fenv.h +share/wasi-sysroot/include/wasm32-wasi/float.h +share/wasi-sysroot/include/wasm32-wasi/fmtmsg.h +share/wasi-sysroot/include/wasm32-wasi/fnmatch.h +share/wasi-sysroot/include/wasm32-wasi/fts.h +share/wasi-sysroot/include/wasm32-wasi/ftw.h +share/wasi-sysroot/include/wasm32-wasi/getopt.h +share/wasi-sysroot/include/wasm32-wasi/glob.h +share/wasi-sysroot/include/wasm32-wasi/iconv.h +share/wasi-sysroot/include/wasm32-wasi/ifaddrs.h +share/wasi-sysroot/include/wasm32-wasi/inttypes.h +share/wasi-sysroot/include/wasm32-wasi/iso646.h +share/wasi-sysroot/include/wasm32-wasi/langinfo.h +share/wasi-sysroot/include/wasm32-wasi/libgen.h +share/wasi-sysroot/include/wasm32-wasi/limits.h +share/wasi-sysroot/include/wasm32-wasi/locale.h +share/wasi-sysroot/include/wasm32-wasi/malloc.h +share/wasi-sysroot/include/wasm32-wasi/math.h +share/wasi-sysroot/include/wasm32-wasi/memory.h +share/wasi-sysroot/include/wasm32-wasi/monetary.h +share/wasi-sysroot/include/wasm32-wasi/mqueue.h +share/wasi-sysroot/include/wasm32-wasi/netinet/icmp6.h +share/wasi-sysroot/include/wasm32-wasi/netinet/igmp.h +share/wasi-sysroot/include/wasm32-wasi/netinet/in.h +share/wasi-sysroot/include/wasm32-wasi/netinet/in_systm.h +share/wasi-sysroot/include/wasm32-wasi/netinet/ip.h +share/wasi-sysroot/include/wasm32-wasi/netinet/ip6.h +share/wasi-sysroot/include/wasm32-wasi/netinet/ip_icmp.h +share/wasi-sysroot/include/wasm32-wasi/netinet/tcp.h +share/wasi-sysroot/include/wasm32-wasi/netinet/udp.h +share/wasi-sysroot/include/wasm32-wasi/netpacket/packet.h +share/wasi-sysroot/include/wasm32-wasi/nl_types.h +share/wasi-sysroot/include/wasm32-wasi/poll.h +share/wasi-sysroot/include/wasm32-wasi/pthread.h +share/wasi-sysroot/include/wasm32-wasi/regex.h +share/wasi-sysroot/include/wasm32-wasi/sched.h +share/wasi-sysroot/include/wasm32-wasi/search.h +share/wasi-sysroot/include/wasm32-wasi/semaphore.h +share/wasi-sysroot/include/wasm32-wasi/setjmp.h +share/wasi-sysroot/include/wasm32-wasi/signal.h +share/wasi-sysroot/include/wasm32-wasi/stdalign.h +share/wasi-sysroot/include/wasm32-wasi/stdbool.h +share/wasi-sysroot/include/wasm32-wasi/stdc-predef.h +share/wasi-sysroot/include/wasm32-wasi/stdint.h +share/wasi-sysroot/include/wasm32-wasi/stdio.h +share/wasi-sysroot/include/wasm32-wasi/stdio_ext.h +share/wasi-sysroot/include/wasm32-wasi/stdlib.h +share/wasi-sysroot/include/wasm32-wasi/stdnoreturn.h +share/wasi-sysroot/include/wasm32-wasi/string.h +share/wasi-sysroot/include/wasm32-wasi/strings.h +share/wasi-sysroot/include/wasm32-wasi/stropts.h +share/wasi-sysroot/include/wasm32-wasi/sys/dir.h +share/wasi-sysroot/include/wasm32-wasi/sys/errno.h +share/wasi-sysroot/include/wasm32-wasi/sys/eventfd.h +share/wasi-sysroot/include/wasm32-wasi/sys/fcntl.h +share/wasi-sysroot/include/wasm32-wasi/sys/file.h +share/wasi-sysroot/include/wasm32-wasi/sys/ioctl.h +share/wasi-sysroot/include/wasm32-wasi/sys/mman.h +share/wasi-sysroot/include/wasm32-wasi/sys/param.h +share/wasi-sysroot/include/wasm32-wasi/sys/poll.h +share/wasi-sysroot/include/wasm32-wasi/sys/random.h +share/wasi-sysroot/include/wasm32-wasi/sys/reg.h +share/wasi-sysroot/include/wasm32-wasi/sys/resource.h +share/wasi-sysroot/include/wasm32-wasi/sys/select.h +share/wasi-sysroot/include/wasm32-wasi/sys/signal.h +share/wasi-sysroot/include/wasm32-wasi/sys/socket.h +share/wasi-sysroot/include/wasm32-wasi/sys/stat.h +share/wasi-sysroot/include/wasm32-wasi/sys/statvfs.h +share/wasi-sysroot/include/wasm32-wasi/sys/stropts.h +share/wasi-sysroot/include/wasm32-wasi/sys/syscall.h +share/wasi-sysroot/include/wasm32-wasi/sys/sysinfo.h +share/wasi-sysroot/include/wasm32-wasi/sys/time.h +share/wasi-sysroot/include/wasm32-wasi/sys/timeb.h +share/wasi-sysroot/include/wasm32-wasi/sys/times.h +share/wasi-sysroot/include/wasm32-wasi/sys/timex.h +share/wasi-sysroot/include/wasm32-wasi/sys/ttydefaults.h +share/wasi-sysroot/include/wasm32-wasi/sys/types.h +share/wasi-sysroot/include/wasm32-wasi/sys/uio.h +share/wasi-sysroot/include/wasm32-wasi/sys/un.h +share/wasi-sysroot/include/wasm32-wasi/sys/utsname.h +share/wasi-sysroot/include/wasm32-wasi/syscall.h +share/wasi-sysroot/include/wasm32-wasi/sysexits.h +share/wasi-sysroot/include/wasm32-wasi/tar.h +share/wasi-sysroot/include/wasm32-wasi/tgmath.h +share/wasi-sysroot/include/wasm32-wasi/threads.h +share/wasi-sysroot/include/wasm32-wasi/time.h +share/wasi-sysroot/include/wasm32-wasi/uchar.h +share/wasi-sysroot/include/wasm32-wasi/unistd.h +share/wasi-sysroot/include/wasm32-wasi/utime.h +share/wasi-sysroot/include/wasm32-wasi/values.h +share/wasi-sysroot/include/wasm32-wasi/wasi/api.h +share/wasi-sysroot/include/wasm32-wasi/wasi/libc-busywait.h +share/wasi-sysroot/include/wasm32-wasi/wasi/libc-environ.h +share/wasi-sysroot/include/wasm32-wasi/wasi/libc-find-relpath.h +share/wasi-sysroot/include/wasm32-wasi/wasi/libc-nocwd.h +share/wasi-sysroot/include/wasm32-wasi/wasi/libc.h +share/wasi-sysroot/include/wasm32-wasi/wasi/wasip2.h +share/wasi-sysroot/include/wasm32-wasi/wchar.h +share/wasi-sysroot/include/wasm32-wasi/wctype.h +share/wasi-sysroot/lib/wasm32-wasi/crt1-command.o +share/wasi-sysroot/lib/wasm32-wasi/crt1-reactor.o +share/wasi-sysroot/lib/wasm32-wasi/crt1.o +share/wasi-sysroot/lib/wasm32-wasi/libc-printscan-long-double.a +share/wasi-sysroot/lib/wasm32-wasi/libc-printscan-no-floating-point.a +share/wasi-sysroot/lib/wasm32-wasi/libc.a +share/wasi-sysroot/lib/wasm32-wasi/libc.imports +share/wasi-sysroot/lib/wasm32-wasi/libcrypt.a +share/wasi-sysroot/lib/wasm32-wasi/libdl.a +share/wasi-sysroot/lib/wasm32-wasi/libm.a +share/wasi-sysroot/lib/wasm32-wasi/libpthread.a +share/wasi-sysroot/lib/wasm32-wasi/libresolv.a +share/wasi-sysroot/lib/wasm32-wasi/librt.a +share/wasi-sysroot/lib/wasm32-wasi/libsetjmp.a +share/wasi-sysroot/lib/wasm32-wasi/libutil.a +share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-getpid.a +share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-mman.a +share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-process-clocks.a +share/wasi-sysroot/lib/wasm32-wasi/libwasi-emulated-signal.a +share/wasi-sysroot/lib/wasm32-wasi/libxnet.a +share/wasi-sysroot/share/wasm32-wasi/defined-symbols.txt +share/wasi-sysroot/share/wasm32-wasi/include-all.c +share/wasi-sysroot/share/wasm32-wasi/predefined-macros.txt +share/wasi-sysroot/share/wasm32-wasi/undefined-symbols.txt +@dir share/wasi-sysroot/include/wasm32-wasi/net +@dir share/wasi-sysroot/include/wasm32-wasi/scsi diff --git a/devel/wasi-libcxx21/Makefile b/devel/wasi-libcxx21/Makefile new file mode 100644 index 000000000000..43c4c028e2f0 --- /dev/null +++ b/devel/wasi-libcxx21/Makefile @@ -0,0 +1,6 @@ +# must sync with devel/llvm21 +DISTVERSION= 21.1.0 + +MASTERDIR= ${.CURDIR}/../wasi-libcxx + +.include "${MASTERDIR}/Makefile" diff --git a/devel/wasi-libcxx21/pkg-plist b/devel/wasi-libcxx21/pkg-plist new file mode 100644 index 000000000000..c6a0bcb6f060 --- /dev/null +++ b/devel/wasi-libcxx21/pkg-plist @@ -0,0 +1,1816 @@ +share/wasi-sysroot/include/c++/v1/__algorithm/adjacent_find.h +share/wasi-sysroot/include/c++/v1/__algorithm/all_of.h +share/wasi-sysroot/include/c++/v1/__algorithm/any_of.h +share/wasi-sysroot/include/c++/v1/__algorithm/binary_search.h +share/wasi-sysroot/include/c++/v1/__algorithm/clamp.h +share/wasi-sysroot/include/c++/v1/__algorithm/comp.h +share/wasi-sysroot/include/c++/v1/__algorithm/comp_ref_type.h +share/wasi-sysroot/include/c++/v1/__algorithm/copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/copy_backward.h +share/wasi-sysroot/include/c++/v1/__algorithm/copy_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/copy_move_common.h +share/wasi-sysroot/include/c++/v1/__algorithm/copy_n.h +share/wasi-sysroot/include/c++/v1/__algorithm/count.h +share/wasi-sysroot/include/c++/v1/__algorithm/count_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/equal.h +share/wasi-sysroot/include/c++/v1/__algorithm/equal_range.h +share/wasi-sysroot/include/c++/v1/__algorithm/fill.h +share/wasi-sysroot/include/c++/v1/__algorithm/fill_n.h +share/wasi-sysroot/include/c++/v1/__algorithm/find.h +share/wasi-sysroot/include/c++/v1/__algorithm/find_end.h +share/wasi-sysroot/include/c++/v1/__algorithm/find_first_of.h +share/wasi-sysroot/include/c++/v1/__algorithm/find_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/find_if_not.h +share/wasi-sysroot/include/c++/v1/__algorithm/find_segment_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/for_each.h +share/wasi-sysroot/include/c++/v1/__algorithm/for_each_n.h +share/wasi-sysroot/include/c++/v1/__algorithm/for_each_n_segment.h +share/wasi-sysroot/include/c++/v1/__algorithm/for_each_segment.h +share/wasi-sysroot/include/c++/v1/__algorithm/generate.h +share/wasi-sysroot/include/c++/v1/__algorithm/generate_n.h +share/wasi-sysroot/include/c++/v1/__algorithm/half_positive.h +share/wasi-sysroot/include/c++/v1/__algorithm/in_found_result.h +share/wasi-sysroot/include/c++/v1/__algorithm/in_fun_result.h +share/wasi-sysroot/include/c++/v1/__algorithm/in_in_out_result.h +share/wasi-sysroot/include/c++/v1/__algorithm/in_in_result.h +share/wasi-sysroot/include/c++/v1/__algorithm/in_out_out_result.h +share/wasi-sysroot/include/c++/v1/__algorithm/in_out_result.h +share/wasi-sysroot/include/c++/v1/__algorithm/includes.h +share/wasi-sysroot/include/c++/v1/__algorithm/inplace_merge.h +share/wasi-sysroot/include/c++/v1/__algorithm/is_heap.h +share/wasi-sysroot/include/c++/v1/__algorithm/is_heap_until.h +share/wasi-sysroot/include/c++/v1/__algorithm/is_partitioned.h +share/wasi-sysroot/include/c++/v1/__algorithm/is_permutation.h +share/wasi-sysroot/include/c++/v1/__algorithm/is_sorted.h +share/wasi-sysroot/include/c++/v1/__algorithm/is_sorted_until.h +share/wasi-sysroot/include/c++/v1/__algorithm/iter_swap.h +share/wasi-sysroot/include/c++/v1/__algorithm/iterator_operations.h +share/wasi-sysroot/include/c++/v1/__algorithm/lexicographical_compare.h +share/wasi-sysroot/include/c++/v1/__algorithm/lexicographical_compare_three_way.h +share/wasi-sysroot/include/c++/v1/__algorithm/lower_bound.h +share/wasi-sysroot/include/c++/v1/__algorithm/make_heap.h +share/wasi-sysroot/include/c++/v1/__algorithm/make_projected.h +share/wasi-sysroot/include/c++/v1/__algorithm/max.h +share/wasi-sysroot/include/c++/v1/__algorithm/max_element.h +share/wasi-sysroot/include/c++/v1/__algorithm/merge.h +share/wasi-sysroot/include/c++/v1/__algorithm/min.h +share/wasi-sysroot/include/c++/v1/__algorithm/min_element.h +share/wasi-sysroot/include/c++/v1/__algorithm/min_max_result.h +share/wasi-sysroot/include/c++/v1/__algorithm/minmax.h +share/wasi-sysroot/include/c++/v1/__algorithm/minmax_element.h +share/wasi-sysroot/include/c++/v1/__algorithm/mismatch.h +share/wasi-sysroot/include/c++/v1/__algorithm/move.h +share/wasi-sysroot/include/c++/v1/__algorithm/move_backward.h +share/wasi-sysroot/include/c++/v1/__algorithm/next_permutation.h +share/wasi-sysroot/include/c++/v1/__algorithm/none_of.h +share/wasi-sysroot/include/c++/v1/__algorithm/nth_element.h +share/wasi-sysroot/include/c++/v1/__algorithm/out_value_result.h +share/wasi-sysroot/include/c++/v1/__algorithm/partial_sort.h +share/wasi-sysroot/include/c++/v1/__algorithm/partial_sort_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/partition.h +share/wasi-sysroot/include/c++/v1/__algorithm/partition_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/partition_point.h +share/wasi-sysroot/include/c++/v1/__algorithm/pop_heap.h +share/wasi-sysroot/include/c++/v1/__algorithm/prev_permutation.h +share/wasi-sysroot/include/c++/v1/__algorithm/pstl.h +share/wasi-sysroot/include/c++/v1/__algorithm/push_heap.h +share/wasi-sysroot/include/c++/v1/__algorithm/radix_sort.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_adjacent_find.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_all_of.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_any_of.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_binary_search.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_clamp.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_contains.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_contains_subrange.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_copy_backward.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_copy_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_copy_n.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_count.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_count_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_ends_with.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_equal.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_equal_range.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_fill.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_fill_n.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_find.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_find_end.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_find_first_of.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_find_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_find_if_not.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_find_last.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_fold.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_for_each.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_for_each_n.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_generate.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_generate_n.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_includes.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_inplace_merge.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_is_heap.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_is_heap_until.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_is_partitioned.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_is_permutation.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_is_sorted.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_is_sorted_until.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_iterator_concept.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_lexicographical_compare.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_lower_bound.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_make_heap.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_max.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_max_element.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_merge.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_min.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_min_element.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_minmax.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_minmax_element.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_mismatch.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_move.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_move_backward.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_next_permutation.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_none_of.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_nth_element.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_partial_sort.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_partial_sort_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_partition.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_partition_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_partition_point.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_pop_heap.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_prev_permutation.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_push_heap.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_remove.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_remove_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_remove_copy_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_remove_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_replace.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_replace_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_replace_copy_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_replace_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_reverse.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_reverse_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_rotate.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_rotate_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_sample.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_search.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_search_n.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_set_difference.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_set_intersection.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_set_symmetric_difference.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_set_union.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_shuffle.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_sort.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_sort_heap.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_stable_partition.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_stable_sort.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_starts_with.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_swap_ranges.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_transform.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_unique.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_unique_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/ranges_upper_bound.h +share/wasi-sysroot/include/c++/v1/__algorithm/remove.h +share/wasi-sysroot/include/c++/v1/__algorithm/remove_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/remove_copy_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/remove_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/replace.h +share/wasi-sysroot/include/c++/v1/__algorithm/replace_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/replace_copy_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/replace_if.h +share/wasi-sysroot/include/c++/v1/__algorithm/reverse.h +share/wasi-sysroot/include/c++/v1/__algorithm/reverse_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/rotate.h +share/wasi-sysroot/include/c++/v1/__algorithm/rotate_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/sample.h +share/wasi-sysroot/include/c++/v1/__algorithm/search.h +share/wasi-sysroot/include/c++/v1/__algorithm/search_n.h +share/wasi-sysroot/include/c++/v1/__algorithm/set_difference.h +share/wasi-sysroot/include/c++/v1/__algorithm/set_intersection.h +share/wasi-sysroot/include/c++/v1/__algorithm/set_symmetric_difference.h +share/wasi-sysroot/include/c++/v1/__algorithm/set_union.h +share/wasi-sysroot/include/c++/v1/__algorithm/shift_left.h +share/wasi-sysroot/include/c++/v1/__algorithm/shift_right.h +share/wasi-sysroot/include/c++/v1/__algorithm/shuffle.h +share/wasi-sysroot/include/c++/v1/__algorithm/sift_down.h +share/wasi-sysroot/include/c++/v1/__algorithm/simd_utils.h +share/wasi-sysroot/include/c++/v1/__algorithm/sort.h +share/wasi-sysroot/include/c++/v1/__algorithm/sort_heap.h +share/wasi-sysroot/include/c++/v1/__algorithm/stable_partition.h +share/wasi-sysroot/include/c++/v1/__algorithm/stable_sort.h +share/wasi-sysroot/include/c++/v1/__algorithm/swap_ranges.h +share/wasi-sysroot/include/c++/v1/__algorithm/three_way_comp_ref_type.h +share/wasi-sysroot/include/c++/v1/__algorithm/transform.h +share/wasi-sysroot/include/c++/v1/__algorithm/uniform_random_bit_generator_adaptor.h +share/wasi-sysroot/include/c++/v1/__algorithm/unique.h +share/wasi-sysroot/include/c++/v1/__algorithm/unique_copy.h +share/wasi-sysroot/include/c++/v1/__algorithm/unwrap_iter.h +share/wasi-sysroot/include/c++/v1/__algorithm/unwrap_range.h +share/wasi-sysroot/include/c++/v1/__algorithm/upper_bound.h +share/wasi-sysroot/include/c++/v1/__assert +share/wasi-sysroot/include/c++/v1/__assertion_handler +share/wasi-sysroot/include/c++/v1/__atomic/aliases.h +share/wasi-sysroot/include/c++/v1/__atomic/atomic.h +share/wasi-sysroot/include/c++/v1/__atomic/atomic_flag.h +share/wasi-sysroot/include/c++/v1/__atomic/atomic_init.h +share/wasi-sysroot/include/c++/v1/__atomic/atomic_lock_free.h +share/wasi-sysroot/include/c++/v1/__atomic/atomic_ref.h +share/wasi-sysroot/include/c++/v1/__atomic/atomic_sync.h +share/wasi-sysroot/include/c++/v1/__atomic/check_memory_order.h +share/wasi-sysroot/include/c++/v1/__atomic/contention_t.h +share/wasi-sysroot/include/c++/v1/__atomic/fence.h +share/wasi-sysroot/include/c++/v1/__atomic/is_always_lock_free.h +share/wasi-sysroot/include/c++/v1/__atomic/kill_dependency.h +share/wasi-sysroot/include/c++/v1/__atomic/memory_order.h +share/wasi-sysroot/include/c++/v1/__atomic/support.h +share/wasi-sysroot/include/c++/v1/__atomic/support/c11.h +share/wasi-sysroot/include/c++/v1/__atomic/support/gcc.h +share/wasi-sysroot/include/c++/v1/__atomic/to_gcc_order.h +share/wasi-sysroot/include/c++/v1/__bit/bit_cast.h +share/wasi-sysroot/include/c++/v1/__bit/bit_ceil.h +share/wasi-sysroot/include/c++/v1/__bit/bit_floor.h +share/wasi-sysroot/include/c++/v1/__bit/bit_log2.h +share/wasi-sysroot/include/c++/v1/__bit/bit_width.h +share/wasi-sysroot/include/c++/v1/__bit/blsr.h +share/wasi-sysroot/include/c++/v1/__bit/byteswap.h +share/wasi-sysroot/include/c++/v1/__bit/countl.h +share/wasi-sysroot/include/c++/v1/__bit/countr.h +share/wasi-sysroot/include/c++/v1/__bit/endian.h +share/wasi-sysroot/include/c++/v1/__bit/has_single_bit.h +share/wasi-sysroot/include/c++/v1/__bit/invert_if.h +share/wasi-sysroot/include/c++/v1/__bit/popcount.h +share/wasi-sysroot/include/c++/v1/__bit/rotate.h +share/wasi-sysroot/include/c++/v1/__bit_reference +share/wasi-sysroot/include/c++/v1/__charconv/chars_format.h +share/wasi-sysroot/include/c++/v1/__charconv/from_chars_floating_point.h +share/wasi-sysroot/include/c++/v1/__charconv/from_chars_integral.h +share/wasi-sysroot/include/c++/v1/__charconv/from_chars_result.h +share/wasi-sysroot/include/c++/v1/__charconv/tables.h +share/wasi-sysroot/include/c++/v1/__charconv/to_chars.h +share/wasi-sysroot/include/c++/v1/__charconv/to_chars_base_10.h +share/wasi-sysroot/include/c++/v1/__charconv/to_chars_floating_point.h +share/wasi-sysroot/include/c++/v1/__charconv/to_chars_integral.h +share/wasi-sysroot/include/c++/v1/__charconv/to_chars_result.h +share/wasi-sysroot/include/c++/v1/__charconv/traits.h +share/wasi-sysroot/include/c++/v1/__chrono/calendar.h +share/wasi-sysroot/include/c++/v1/__chrono/concepts.h +share/wasi-sysroot/include/c++/v1/__chrono/convert_to_timespec.h +share/wasi-sysroot/include/c++/v1/__chrono/convert_to_tm.h +share/wasi-sysroot/include/c++/v1/__chrono/day.h +share/wasi-sysroot/include/c++/v1/__chrono/duration.h +share/wasi-sysroot/include/c++/v1/__chrono/exception.h +share/wasi-sysroot/include/c++/v1/__chrono/file_clock.h +share/wasi-sysroot/include/c++/v1/__chrono/formatter.h +share/wasi-sysroot/include/c++/v1/__chrono/gps_clock.h +share/wasi-sysroot/include/c++/v1/__chrono/hh_mm_ss.h +share/wasi-sysroot/include/c++/v1/__chrono/high_resolution_clock.h +share/wasi-sysroot/include/c++/v1/__chrono/leap_second.h +share/wasi-sysroot/include/c++/v1/__chrono/literals.h +share/wasi-sysroot/include/c++/v1/__chrono/local_info.h +share/wasi-sysroot/include/c++/v1/__chrono/month.h +share/wasi-sysroot/include/c++/v1/__chrono/month_weekday.h +share/wasi-sysroot/include/c++/v1/__chrono/monthday.h +share/wasi-sysroot/include/c++/v1/__chrono/ostream.h +share/wasi-sysroot/include/c++/v1/__chrono/parser_std_format_spec.h +share/wasi-sysroot/include/c++/v1/__chrono/statically_widen.h +share/wasi-sysroot/include/c++/v1/__chrono/steady_clock.h +share/wasi-sysroot/include/c++/v1/__chrono/sys_info.h +share/wasi-sysroot/include/c++/v1/__chrono/system_clock.h +share/wasi-sysroot/include/c++/v1/__chrono/tai_clock.h +share/wasi-sysroot/include/c++/v1/__chrono/time_point.h +share/wasi-sysroot/include/c++/v1/__chrono/time_zone.h +share/wasi-sysroot/include/c++/v1/__chrono/time_zone_link.h +share/wasi-sysroot/include/c++/v1/__chrono/tzdb.h +share/wasi-sysroot/include/c++/v1/__chrono/tzdb_list.h +share/wasi-sysroot/include/c++/v1/__chrono/utc_clock.h +share/wasi-sysroot/include/c++/v1/__chrono/weekday.h +share/wasi-sysroot/include/c++/v1/__chrono/year.h +share/wasi-sysroot/include/c++/v1/__chrono/year_month.h +share/wasi-sysroot/include/c++/v1/__chrono/year_month_day.h +share/wasi-sysroot/include/c++/v1/__chrono/year_month_weekday.h +share/wasi-sysroot/include/c++/v1/__chrono/zoned_time.h +share/wasi-sysroot/include/c++/v1/__compare/common_comparison_category.h +share/wasi-sysroot/include/c++/v1/__compare/compare_partial_order_fallback.h +share/wasi-sysroot/include/c++/v1/__compare/compare_strong_order_fallback.h +share/wasi-sysroot/include/c++/v1/__compare/compare_three_way.h +share/wasi-sysroot/include/c++/v1/__compare/compare_three_way_result.h +share/wasi-sysroot/include/c++/v1/__compare/compare_weak_order_fallback.h +share/wasi-sysroot/include/c++/v1/__compare/is_eq.h +share/wasi-sysroot/include/c++/v1/__compare/ordering.h +share/wasi-sysroot/include/c++/v1/__compare/partial_order.h +share/wasi-sysroot/include/c++/v1/__compare/strong_order.h +share/wasi-sysroot/include/c++/v1/__compare/synth_three_way.h +share/wasi-sysroot/include/c++/v1/__compare/three_way_comparable.h +share/wasi-sysroot/include/c++/v1/__compare/weak_order.h +share/wasi-sysroot/include/c++/v1/__concepts/arithmetic.h +share/wasi-sysroot/include/c++/v1/__concepts/assignable.h +share/wasi-sysroot/include/c++/v1/__concepts/boolean_testable.h +share/wasi-sysroot/include/c++/v1/__concepts/class_or_enum.h +share/wasi-sysroot/include/c++/v1/__concepts/common_reference_with.h +share/wasi-sysroot/include/c++/v1/__concepts/common_with.h +share/wasi-sysroot/include/c++/v1/__concepts/constructible.h +share/wasi-sysroot/include/c++/v1/__concepts/convertible_to.h +share/wasi-sysroot/include/c++/v1/__concepts/copyable.h +share/wasi-sysroot/include/c++/v1/__concepts/derived_from.h +share/wasi-sysroot/include/c++/v1/__concepts/destructible.h +share/wasi-sysroot/include/c++/v1/__concepts/different_from.h +share/wasi-sysroot/include/c++/v1/__concepts/equality_comparable.h +share/wasi-sysroot/include/c++/v1/__concepts/invocable.h +share/wasi-sysroot/include/c++/v1/__concepts/movable.h +share/wasi-sysroot/include/c++/v1/__concepts/predicate.h +share/wasi-sysroot/include/c++/v1/__concepts/regular.h +share/wasi-sysroot/include/c++/v1/__concepts/relation.h +share/wasi-sysroot/include/c++/v1/__concepts/same_as.h +share/wasi-sysroot/include/c++/v1/__concepts/semiregular.h +share/wasi-sysroot/include/c++/v1/__concepts/swappable.h +share/wasi-sysroot/include/c++/v1/__concepts/totally_ordered.h +share/wasi-sysroot/include/c++/v1/__condition_variable/condition_variable.h +share/wasi-sysroot/include/c++/v1/__config +share/wasi-sysroot/include/c++/v1/__config_site +share/wasi-sysroot/include/c++/v1/__configuration/abi.h +share/wasi-sysroot/include/c++/v1/__configuration/availability.h +share/wasi-sysroot/include/c++/v1/__configuration/compiler.h +share/wasi-sysroot/include/c++/v1/__configuration/language.h +share/wasi-sysroot/include/c++/v1/__configuration/platform.h +share/wasi-sysroot/include/c++/v1/__coroutine/coroutine_handle.h +share/wasi-sysroot/include/c++/v1/__coroutine/coroutine_traits.h +share/wasi-sysroot/include/c++/v1/__coroutine/noop_coroutine_handle.h +share/wasi-sysroot/include/c++/v1/__coroutine/trivial_awaitables.h +share/wasi-sysroot/include/c++/v1/__cstddef/byte.h +share/wasi-sysroot/include/c++/v1/__cstddef/max_align_t.h +share/wasi-sysroot/include/c++/v1/__cstddef/nullptr_t.h +share/wasi-sysroot/include/c++/v1/__cstddef/ptrdiff_t.h +share/wasi-sysroot/include/c++/v1/__cstddef/size_t.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/adjacent_find.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/all_of.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/any_of.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/binary_search.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/comp.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/comp_ref_type.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/copy.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/copy_backward.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/copy_if.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/copy_move_common.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/copy_n.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/count.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/count_if.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/equal.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/equal_range.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/fill.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/fill_n.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/find.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/find_end.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/find_first_of.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/find_if.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/find_if_not.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/find_segment_if.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/for_each.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/for_each_segment.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/generate.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/generate_n.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/half_positive.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/includes.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/inplace_merge.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/is_heap.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/is_heap_until.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/is_partitioned.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/is_permutation.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/is_sorted.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/is_sorted_until.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/iter_swap.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/iterator_operations.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/lexicographical_compare.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/lower_bound.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/make_heap.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/make_projected.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/max.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/max_element.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/merge.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/min.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/min_element.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/minmax.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/minmax_element.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/mismatch.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/move.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/move_backward.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/next_permutation.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/none_of.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/nth_element.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/partial_sort.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/partial_sort_copy.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/partition.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/partition_copy.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/partition_point.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/pop_heap.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/prev_permutation.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/push_heap.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/remove.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/remove_copy.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/remove_copy_if.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/remove_if.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/replace.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/replace_copy.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/replace_copy_if.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/replace_if.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/reverse.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/reverse_copy.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/rotate.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/rotate_copy.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/search.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/search_n.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/set_difference.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/set_intersection.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/set_symmetric_difference.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/set_union.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/shuffle.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/sift_down.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/simd_utils.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/sort.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/sort_heap.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/stable_partition.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/stable_sort.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/swap_ranges.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/three_way_comp_ref_type.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/transform.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/uniform_random_bit_generator_adaptor.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/unique.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/unique_copy.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/unwrap_iter.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/unwrap_range.h +share/wasi-sysroot/include/c++/v1/__cxx03/__algorithm/upper_bound.h +share/wasi-sysroot/include/c++/v1/__cxx03/__assert +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/aliases.h +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/atomic.h +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/atomic_base.h +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/atomic_flag.h +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/atomic_init.h +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/atomic_lock_free.h +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/atomic_sync.h +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/check_memory_order.h +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/contention_t.h +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/cxx_atomic_impl.h +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/fence.h +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/is_always_lock_free.h +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/kill_dependency.h +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/memory_order.h +share/wasi-sysroot/include/c++/v1/__cxx03/__atomic/to_gcc_order.h +share/wasi-sysroot/include/c++/v1/__cxx03/__bit/blsr.h +share/wasi-sysroot/include/c++/v1/__cxx03/__bit/countl.h +share/wasi-sysroot/include/c++/v1/__cxx03/__bit/countr.h +share/wasi-sysroot/include/c++/v1/__cxx03/__bit/invert_if.h +share/wasi-sysroot/include/c++/v1/__cxx03/__bit/popcount.h +share/wasi-sysroot/include/c++/v1/__cxx03/__bit/rotate.h +share/wasi-sysroot/include/c++/v1/__cxx03/__bit_reference +share/wasi-sysroot/include/c++/v1/__cxx03/__chrono/convert_to_timespec.h +share/wasi-sysroot/include/c++/v1/__cxx03/__chrono/duration.h +share/wasi-sysroot/include/c++/v1/__cxx03/__chrono/high_resolution_clock.h +share/wasi-sysroot/include/c++/v1/__cxx03/__chrono/steady_clock.h +share/wasi-sysroot/include/c++/v1/__cxx03/__chrono/system_clock.h +share/wasi-sysroot/include/c++/v1/__cxx03/__chrono/time_point.h +share/wasi-sysroot/include/c++/v1/__cxx03/__condition_variable/condition_variable.h +share/wasi-sysroot/include/c++/v1/__cxx03/__config +share/wasi-sysroot/include/c++/v1/__cxx03/__configuration/abi.h +share/wasi-sysroot/include/c++/v1/__cxx03/__configuration/availability.h +share/wasi-sysroot/include/c++/v1/__cxx03/__configuration/compiler.h +share/wasi-sysroot/include/c++/v1/__cxx03/__configuration/config_site_shim.h +share/wasi-sysroot/include/c++/v1/__cxx03/__configuration/language.h +share/wasi-sysroot/include/c++/v1/__cxx03/__configuration/platform.h +share/wasi-sysroot/include/c++/v1/__cxx03/__debug_utils/randomize_range.h +share/wasi-sysroot/include/c++/v1/__cxx03/__debug_utils/sanitizers.h +share/wasi-sysroot/include/c++/v1/__cxx03/__debug_utils/strict_weak_ordering_check.h +share/wasi-sysroot/include/c++/v1/__cxx03/__exception/exception.h +share/wasi-sysroot/include/c++/v1/__cxx03/__exception/exception_ptr.h +share/wasi-sysroot/include/c++/v1/__cxx03/__exception/nested_exception.h +share/wasi-sysroot/include/c++/v1/__cxx03/__exception/operations.h +share/wasi-sysroot/include/c++/v1/__cxx03/__exception/terminate.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/binary_function.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/binary_negate.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/bind.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/binder1st.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/binder2nd.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/hash.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/identity.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/mem_fn.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/mem_fun_ref.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/operations.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/pointer_to_binary_function.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/pointer_to_unary_function.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/reference_wrapper.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/unary_function.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/unary_negate.h +share/wasi-sysroot/include/c++/v1/__cxx03/__functional/weak_result_type.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/array.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/bit_reference.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/complex.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/deque.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/fstream.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/functional.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/ios.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/istream.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/memory.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/ostream.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/pair.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/queue.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/sstream.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/stack.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/streambuf.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/string.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/string_view.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/tuple.h +share/wasi-sysroot/include/c++/v1/__cxx03/__fwd/vector.h +share/wasi-sysroot/include/c++/v1/__cxx03/__hash_table +share/wasi-sysroot/include/c++/v1/__cxx03/__ios/fpos.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/access.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/advance.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/aliasing_iterator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/back_insert_iterator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/bounded_iter.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/distance.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/erase_if_container.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/front_insert_iterator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/insert_iterator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/istream_iterator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/istreambuf_iterator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/iterator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/iterator_traits.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/move_iterator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/next.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/ostream_iterator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/ostreambuf_iterator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/prev.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/reverse_iterator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/segmented_iterator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__iterator/wrap_iter.h +share/wasi-sysroot/include/c++/v1/__cxx03/__locale +share/wasi-sysroot/include/c++/v1/__cxx03/__locale_dir/locale_base_api.h +share/wasi-sysroot/include/c++/v1/__cxx03/__locale_dir/locale_base_api/android.h +share/wasi-sysroot/include/c++/v1/__cxx03/__locale_dir/locale_base_api/bsd_locale_defaults.h +share/wasi-sysroot/include/c++/v1/__cxx03/__locale_dir/locale_base_api/bsd_locale_fallbacks.h +share/wasi-sysroot/include/c++/v1/__cxx03/__locale_dir/locale_base_api/fuchsia.h +share/wasi-sysroot/include/c++/v1/__cxx03/__locale_dir/locale_base_api/ibm.h +share/wasi-sysroot/include/c++/v1/__cxx03/__locale_dir/locale_base_api/locale_guard.h +share/wasi-sysroot/include/c++/v1/__cxx03/__locale_dir/locale_base_api/musl.h +share/wasi-sysroot/include/c++/v1/__cxx03/__locale_dir/locale_base_api/newlib.h +share/wasi-sysroot/include/c++/v1/__cxx03/__locale_dir/locale_base_api/openbsd.h +share/wasi-sysroot/include/c++/v1/__cxx03/__locale_dir/locale_base_api/win32.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/abs.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/copysign.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/error_functions.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/exponential_functions.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/fdim.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/fma.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/gamma.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/hyperbolic_functions.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/hypot.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/inverse_hyperbolic_functions.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/inverse_trigonometric_functions.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/logarithms.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/min_max.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/modulo.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/remainder.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/roots.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/rounding_functions.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/traits.h +share/wasi-sysroot/include/c++/v1/__cxx03/__math/trigonometric_functions.h +share/wasi-sysroot/include/c++/v1/__cxx03/__mbstate_t.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/addressof.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/align.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/aligned_alloc.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/allocate_at_least.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/allocation_guard.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/allocator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/allocator_arg_t.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/allocator_destructor.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/allocator_traits.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/assume_aligned.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/auto_ptr.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/builtin_new_allocator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/compressed_pair.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/construct_at.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/destruct_n.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/pointer_traits.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/raw_storage_iterator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/shared_ptr.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/swap_allocator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/temp_value.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/temporary_buffer.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/uninitialized_algorithms.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/unique_ptr.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/uses_allocator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__memory/voidify.h +share/wasi-sysroot/include/c++/v1/__cxx03/__mutex/lock_guard.h +share/wasi-sysroot/include/c++/v1/__cxx03/__mutex/mutex.h +share/wasi-sysroot/include/c++/v1/__cxx03/__mutex/once_flag.h +share/wasi-sysroot/include/c++/v1/__cxx03/__mutex/tag_types.h +share/wasi-sysroot/include/c++/v1/__cxx03/__mutex/unique_lock.h +share/wasi-sysroot/include/c++/v1/__cxx03/__numeric/accumulate.h +share/wasi-sysroot/include/c++/v1/__cxx03/__numeric/adjacent_difference.h +share/wasi-sysroot/include/c++/v1/__cxx03/__numeric/inner_product.h +share/wasi-sysroot/include/c++/v1/__cxx03/__numeric/iota.h +share/wasi-sysroot/include/c++/v1/__cxx03/__numeric/partial_sum.h +share/wasi-sysroot/include/c++/v1/__cxx03/__ostream/basic_ostream.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/bernoulli_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/binomial_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/cauchy_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/chi_squared_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/clamp_to_integral.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/default_random_engine.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/discard_block_engine.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/discrete_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/exponential_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/extreme_value_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/fisher_f_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/gamma_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/generate_canonical.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/geometric_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/independent_bits_engine.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/is_seed_sequence.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/is_valid.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/knuth_b.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/linear_congruential_engine.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/log2.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/lognormal_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/mersenne_twister_engine.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/negative_binomial_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/normal_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/piecewise_constant_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/piecewise_linear_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/poisson_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/random_device.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/ranlux.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/seed_seq.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/shuffle_order_engine.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/student_t_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/subtract_with_carry_engine.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/uniform_int_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/uniform_real_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__random/weibull_distribution.h +share/wasi-sysroot/include/c++/v1/__cxx03/__split_buffer +share/wasi-sysroot/include/c++/v1/__cxx03/__std_clang_module +share/wasi-sysroot/include/c++/v1/__cxx03/__std_mbstate_t.h +share/wasi-sysroot/include/c++/v1/__cxx03/__string/char_traits.h +share/wasi-sysroot/include/c++/v1/__cxx03/__string/constexpr_c_functions.h +share/wasi-sysroot/include/c++/v1/__cxx03/__string/extern_template_lists.h +share/wasi-sysroot/include/c++/v1/__cxx03/__support/ibm/gettod_zos.h +share/wasi-sysroot/include/c++/v1/__cxx03/__support/ibm/locale_mgmt_zos.h +share/wasi-sysroot/include/c++/v1/__cxx03/__support/ibm/nanosleep.h +share/wasi-sysroot/include/c++/v1/__cxx03/__support/xlocale/__nop_locale_mgmt.h +share/wasi-sysroot/include/c++/v1/__cxx03/__support/xlocale/__posix_l_fallback.h +share/wasi-sysroot/include/c++/v1/__cxx03/__support/xlocale/__strtonum_fallback.h +share/wasi-sysroot/include/c++/v1/__cxx03/__system_error/errc.h +share/wasi-sysroot/include/c++/v1/__cxx03/__system_error/error_category.h +share/wasi-sysroot/include/c++/v1/__cxx03/__system_error/error_code.h +share/wasi-sysroot/include/c++/v1/__cxx03/__system_error/error_condition.h +share/wasi-sysroot/include/c++/v1/__cxx03/__system_error/system_error.h +share/wasi-sysroot/include/c++/v1/__cxx03/__thread/id.h +share/wasi-sysroot/include/c++/v1/__cxx03/__thread/poll_with_backoff.h +share/wasi-sysroot/include/c++/v1/__cxx03/__thread/support.h +share/wasi-sysroot/include/c++/v1/__cxx03/__thread/support/c11.h +share/wasi-sysroot/include/c++/v1/__cxx03/__thread/support/external.h +share/wasi-sysroot/include/c++/v1/__cxx03/__thread/support/pthread.h +share/wasi-sysroot/include/c++/v1/__cxx03/__thread/support/windows.h +share/wasi-sysroot/include/c++/v1/__cxx03/__thread/this_thread.h +share/wasi-sysroot/include/c++/v1/__cxx03/__thread/thread.h +share/wasi-sysroot/include/c++/v1/__cxx03/__thread/timed_backoff_policy.h +share/wasi-sysroot/include/c++/v1/__cxx03/__tree +share/wasi-sysroot/include/c++/v1/__cxx03/__tuple/find_index.h +share/wasi-sysroot/include/c++/v1/__cxx03/__tuple/make_tuple_types.h +share/wasi-sysroot/include/c++/v1/__cxx03/__tuple/sfinae_helpers.h +share/wasi-sysroot/include/c++/v1/__cxx03/__tuple/tuple_element.h +share/wasi-sysroot/include/c++/v1/__cxx03/__tuple/tuple_indices.h +share/wasi-sysroot/include/c++/v1/__cxx03/__tuple/tuple_like.h +share/wasi-sysroot/include/c++/v1/__cxx03/__tuple/tuple_like_ext.h +share/wasi-sysroot/include/c++/v1/__cxx03/__tuple/tuple_like_no_subrange.h +share/wasi-sysroot/include/c++/v1/__cxx03/__tuple/tuple_size.h +share/wasi-sysroot/include/c++/v1/__cxx03/__tuple/tuple_types.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/add_const.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/add_cv.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/add_lvalue_reference.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/add_pointer.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/add_rvalue_reference.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/add_volatile.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/aligned_storage.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/aligned_union.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/alignment_of.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/can_extract_key.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/common_type.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/conditional.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/conjunction.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/copy_cv.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/copy_cvref.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/datasizeof.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/decay.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/dependent_type.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/desugars_to.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/disjunction.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/enable_if.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/extent.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/has_virtual_destructor.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/integral_constant.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/invoke.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_abstract.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_allocator.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_always_bitcastable.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_arithmetic.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_array.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_assignable.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_base_of.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_bounded_array.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_callable.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_char_like_type.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_class.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_compound.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_const.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_constant_evaluated.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_constructible.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_convertible.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_core_convertible.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_destructible.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_empty.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_enum.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_equality_comparable.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_execution_policy.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_final.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_floating_point.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_function.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_fundamental.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_implicitly_default_constructible.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_integral.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_literal_type.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_member_pointer.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_nothrow_assignable.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_nothrow_constructible.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_nothrow_destructible.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_null_pointer.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_object.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_pod.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_pointer.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_polymorphic.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_primary_template.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_reference.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_reference_wrapper.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_referenceable.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_same.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_scalar.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_signed.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_signed_integer.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_specialization.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_standard_layout.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_swappable.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_trivial.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_trivially_assignable.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_trivially_constructible.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_trivially_copyable.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_trivially_destructible.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_trivially_lexicographically_comparable.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_trivially_relocatable.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_unbounded_array.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_union.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_unsigned.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_unsigned_integer.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_valid_expansion.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_void.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/is_volatile.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/lazy.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/make_32_64_or_128_bit.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/make_const_lvalue_ref.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/make_signed.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/make_unsigned.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/maybe_const.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/nat.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/negation.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/noexcept_move_assign_container.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/promote.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/rank.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/remove_all_extents.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/remove_const.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/remove_const_ref.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/remove_cv.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/remove_cvref.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/remove_extent.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/remove_pointer.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/remove_reference.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/remove_volatile.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/result_of.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/strip_signature.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/type_identity.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/type_list.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/underlying_type.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/unwrap_ref.h +share/wasi-sysroot/include/c++/v1/__cxx03/__type_traits/void_t.h +share/wasi-sysroot/include/c++/v1/__cxx03/__undef_macros +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/as_lvalue.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/auto_cast.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/convert_to_integral.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/declval.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/empty.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/exception_guard.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/forward.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/integer_sequence.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/is_pointer_in_range.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/is_valid_range.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/move.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/no_destroy.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/pair.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/piecewise_construct.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/priority_tag.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/private_constructor_tag.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/rel_ops.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/small_buffer.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/swap.h +share/wasi-sysroot/include/c++/v1/__cxx03/__utility/unreachable.h +share/wasi-sysroot/include/c++/v1/__cxx03/__variant/monostate.h +share/wasi-sysroot/include/c++/v1/__cxx03/__verbose_abort +share/wasi-sysroot/include/c++/v1/__cxx03/__verbose_trap +share/wasi-sysroot/include/c++/v1/__cxx03/algorithm +share/wasi-sysroot/include/c++/v1/__cxx03/array +share/wasi-sysroot/include/c++/v1/__cxx03/atomic +share/wasi-sysroot/include/c++/v1/__cxx03/bitset +share/wasi-sysroot/include/c++/v1/__cxx03/cassert +share/wasi-sysroot/include/c++/v1/__cxx03/ccomplex +share/wasi-sysroot/include/c++/v1/__cxx03/cctype +share/wasi-sysroot/include/c++/v1/__cxx03/cerrno +share/wasi-sysroot/include/c++/v1/__cxx03/cfenv +share/wasi-sysroot/include/c++/v1/__cxx03/cfloat +share/wasi-sysroot/include/c++/v1/__cxx03/chrono +share/wasi-sysroot/include/c++/v1/__cxx03/cinttypes +share/wasi-sysroot/include/c++/v1/__cxx03/ciso646 +share/wasi-sysroot/include/c++/v1/__cxx03/climits +share/wasi-sysroot/include/c++/v1/__cxx03/clocale +share/wasi-sysroot/include/c++/v1/__cxx03/cmath +share/wasi-sysroot/include/c++/v1/__cxx03/codecvt +share/wasi-sysroot/include/c++/v1/__cxx03/complex +share/wasi-sysroot/include/c++/v1/__cxx03/complex.h +share/wasi-sysroot/include/c++/v1/__cxx03/condition_variable +share/wasi-sysroot/include/c++/v1/__cxx03/csetjmp +share/wasi-sysroot/include/c++/v1/__cxx03/csignal +share/wasi-sysroot/include/c++/v1/__cxx03/cstdarg +share/wasi-sysroot/include/c++/v1/__cxx03/cstdbool +share/wasi-sysroot/include/c++/v1/__cxx03/cstddef +share/wasi-sysroot/include/c++/v1/__cxx03/cstdint +share/wasi-sysroot/include/c++/v1/__cxx03/cstdio +share/wasi-sysroot/include/c++/v1/__cxx03/cstdlib +share/wasi-sysroot/include/c++/v1/__cxx03/cstring +share/wasi-sysroot/include/c++/v1/__cxx03/ctgmath +share/wasi-sysroot/include/c++/v1/__cxx03/ctime +share/wasi-sysroot/include/c++/v1/__cxx03/ctype.h +share/wasi-sysroot/include/c++/v1/__cxx03/cuchar +share/wasi-sysroot/include/c++/v1/__cxx03/cwchar +share/wasi-sysroot/include/c++/v1/__cxx03/cwctype +share/wasi-sysroot/include/c++/v1/__cxx03/deque +share/wasi-sysroot/include/c++/v1/__cxx03/errno.h +share/wasi-sysroot/include/c++/v1/__cxx03/exception +share/wasi-sysroot/include/c++/v1/__cxx03/experimental/__config +share/wasi-sysroot/include/c++/v1/__cxx03/experimental/utility +share/wasi-sysroot/include/c++/v1/__cxx03/ext/__hash +share/wasi-sysroot/include/c++/v1/__cxx03/ext/hash_map +share/wasi-sysroot/include/c++/v1/__cxx03/ext/hash_set +share/wasi-sysroot/include/c++/v1/__cxx03/fenv.h +share/wasi-sysroot/include/c++/v1/__cxx03/float.h +share/wasi-sysroot/include/c++/v1/__cxx03/forward_list +share/wasi-sysroot/include/c++/v1/__cxx03/fstream +share/wasi-sysroot/include/c++/v1/__cxx03/functional +share/wasi-sysroot/include/c++/v1/__cxx03/future +share/wasi-sysroot/include/c++/v1/__cxx03/inttypes.h +share/wasi-sysroot/include/c++/v1/__cxx03/iomanip +share/wasi-sysroot/include/c++/v1/__cxx03/ios +share/wasi-sysroot/include/c++/v1/__cxx03/iosfwd +share/wasi-sysroot/include/c++/v1/__cxx03/iostream +share/wasi-sysroot/include/c++/v1/__cxx03/istream +share/wasi-sysroot/include/c++/v1/__cxx03/iterator +share/wasi-sysroot/include/c++/v1/__cxx03/limits +share/wasi-sysroot/include/c++/v1/__cxx03/list +share/wasi-sysroot/include/c++/v1/__cxx03/locale +share/wasi-sysroot/include/c++/v1/__cxx03/locale.h +share/wasi-sysroot/include/c++/v1/__cxx03/map +share/wasi-sysroot/include/c++/v1/__cxx03/math.h +share/wasi-sysroot/include/c++/v1/__cxx03/memory +share/wasi-sysroot/include/c++/v1/__cxx03/module.modulemap +share/wasi-sysroot/include/c++/v1/__cxx03/mutex +share/wasi-sysroot/include/c++/v1/__cxx03/new +share/wasi-sysroot/include/c++/v1/__cxx03/numeric +share/wasi-sysroot/include/c++/v1/__cxx03/ostream +share/wasi-sysroot/include/c++/v1/__cxx03/queue +share/wasi-sysroot/include/c++/v1/__cxx03/random +share/wasi-sysroot/include/c++/v1/__cxx03/ratio +share/wasi-sysroot/include/c++/v1/__cxx03/regex +share/wasi-sysroot/include/c++/v1/__cxx03/set +share/wasi-sysroot/include/c++/v1/__cxx03/sstream +share/wasi-sysroot/include/c++/v1/__cxx03/stack +share/wasi-sysroot/include/c++/v1/__cxx03/stdatomic.h +share/wasi-sysroot/include/c++/v1/__cxx03/stdbool.h +share/wasi-sysroot/include/c++/v1/__cxx03/stddef.h +share/wasi-sysroot/include/c++/v1/__cxx03/stdexcept +share/wasi-sysroot/include/c++/v1/__cxx03/stdint.h +share/wasi-sysroot/include/c++/v1/__cxx03/stdio.h +share/wasi-sysroot/include/c++/v1/__cxx03/stdlib.h +share/wasi-sysroot/include/c++/v1/__cxx03/streambuf +share/wasi-sysroot/include/c++/v1/__cxx03/string +share/wasi-sysroot/include/c++/v1/__cxx03/string.h +share/wasi-sysroot/include/c++/v1/__cxx03/string_view +share/wasi-sysroot/include/c++/v1/__cxx03/strstream +share/wasi-sysroot/include/c++/v1/__cxx03/system_error +share/wasi-sysroot/include/c++/v1/__cxx03/tgmath.h +share/wasi-sysroot/include/c++/v1/__cxx03/thread +share/wasi-sysroot/include/c++/v1/__cxx03/type_traits +share/wasi-sysroot/include/c++/v1/__cxx03/typeindex +share/wasi-sysroot/include/c++/v1/__cxx03/typeinfo +share/wasi-sysroot/include/c++/v1/__cxx03/uchar.h +share/wasi-sysroot/include/c++/v1/__cxx03/unordered_map +share/wasi-sysroot/include/c++/v1/__cxx03/unordered_set +share/wasi-sysroot/include/c++/v1/__cxx03/utility +share/wasi-sysroot/include/c++/v1/__cxx03/valarray +share/wasi-sysroot/include/c++/v1/__cxx03/vector +share/wasi-sysroot/include/c++/v1/__cxx03/version +share/wasi-sysroot/include/c++/v1/__cxx03/wchar.h +share/wasi-sysroot/include/c++/v1/__cxx03/wctype.h +share/wasi-sysroot/include/c++/v1/__cxxabi_config.h +share/wasi-sysroot/include/c++/v1/__debug_utils/randomize_range.h +share/wasi-sysroot/include/c++/v1/__debug_utils/sanitizers.h +share/wasi-sysroot/include/c++/v1/__debug_utils/strict_weak_ordering_check.h +share/wasi-sysroot/include/c++/v1/__exception/exception.h +share/wasi-sysroot/include/c++/v1/__exception/exception_ptr.h +share/wasi-sysroot/include/c++/v1/__exception/nested_exception.h +share/wasi-sysroot/include/c++/v1/__exception/operations.h +share/wasi-sysroot/include/c++/v1/__exception/terminate.h +share/wasi-sysroot/include/c++/v1/__expected/bad_expected_access.h +share/wasi-sysroot/include/c++/v1/__expected/expected.h +share/wasi-sysroot/include/c++/v1/__expected/unexpect.h +share/wasi-sysroot/include/c++/v1/__expected/unexpected.h +share/wasi-sysroot/include/c++/v1/__filesystem/copy_options.h +share/wasi-sysroot/include/c++/v1/__filesystem/directory_entry.h +share/wasi-sysroot/include/c++/v1/__filesystem/directory_iterator.h +share/wasi-sysroot/include/c++/v1/__filesystem/directory_options.h +share/wasi-sysroot/include/c++/v1/__filesystem/file_status.h +share/wasi-sysroot/include/c++/v1/__filesystem/file_time_type.h +share/wasi-sysroot/include/c++/v1/__filesystem/file_type.h +share/wasi-sysroot/include/c++/v1/__filesystem/filesystem_error.h +share/wasi-sysroot/include/c++/v1/__filesystem/operations.h +share/wasi-sysroot/include/c++/v1/__filesystem/path.h +share/wasi-sysroot/include/c++/v1/__filesystem/path_iterator.h +share/wasi-sysroot/include/c++/v1/__filesystem/perm_options.h +share/wasi-sysroot/include/c++/v1/__filesystem/perms.h +share/wasi-sysroot/include/c++/v1/__filesystem/recursive_directory_iterator.h +share/wasi-sysroot/include/c++/v1/__filesystem/space_info.h +share/wasi-sysroot/include/c++/v1/__filesystem/u8path.h +share/wasi-sysroot/include/c++/v1/__flat_map/flat_map.h +share/wasi-sysroot/include/c++/v1/__flat_map/flat_multimap.h +share/wasi-sysroot/include/c++/v1/__flat_map/key_value_iterator.h +share/wasi-sysroot/include/c++/v1/__flat_map/sorted_equivalent.h +share/wasi-sysroot/include/c++/v1/__flat_map/sorted_unique.h +share/wasi-sysroot/include/c++/v1/__flat_map/utils.h +share/wasi-sysroot/include/c++/v1/__flat_set/flat_multiset.h +share/wasi-sysroot/include/c++/v1/__flat_set/flat_set.h +share/wasi-sysroot/include/c++/v1/__flat_set/ra_iterator.h +share/wasi-sysroot/include/c++/v1/__flat_set/utils.h +share/wasi-sysroot/include/c++/v1/__format/buffer.h +share/wasi-sysroot/include/c++/v1/__format/concepts.h +share/wasi-sysroot/include/c++/v1/__format/container_adaptor.h +share/wasi-sysroot/include/c++/v1/__format/enable_insertable.h +share/wasi-sysroot/include/c++/v1/__format/escaped_output_table.h +share/wasi-sysroot/include/c++/v1/__format/extended_grapheme_cluster_table.h +share/wasi-sysroot/include/c++/v1/__format/format_arg.h +share/wasi-sysroot/include/c++/v1/__format/format_arg_store.h +share/wasi-sysroot/include/c++/v1/__format/format_args.h +share/wasi-sysroot/include/c++/v1/__format/format_context.h +share/wasi-sysroot/include/c++/v1/__format/format_error.h +share/wasi-sysroot/include/c++/v1/__format/format_functions.h +share/wasi-sysroot/include/c++/v1/__format/format_parse_context.h +share/wasi-sysroot/include/c++/v1/__format/format_string.h +share/wasi-sysroot/include/c++/v1/__format/format_to_n_result.h +share/wasi-sysroot/include/c++/v1/__format/formatter.h +share/wasi-sysroot/include/c++/v1/__format/formatter_bool.h +share/wasi-sysroot/include/c++/v1/__format/formatter_char.h +share/wasi-sysroot/include/c++/v1/__format/formatter_floating_point.h +share/wasi-sysroot/include/c++/v1/__format/formatter_integer.h +share/wasi-sysroot/include/c++/v1/__format/formatter_integral.h +share/wasi-sysroot/include/c++/v1/__format/formatter_output.h +share/wasi-sysroot/include/c++/v1/__format/formatter_pointer.h +share/wasi-sysroot/include/c++/v1/__format/formatter_string.h +share/wasi-sysroot/include/c++/v1/__format/formatter_tuple.h +share/wasi-sysroot/include/c++/v1/__format/indic_conjunct_break_table.h +share/wasi-sysroot/include/c++/v1/__format/parser_std_format_spec.h +share/wasi-sysroot/include/c++/v1/__format/range_default_formatter.h +share/wasi-sysroot/include/c++/v1/__format/range_formatter.h +share/wasi-sysroot/include/c++/v1/__format/unicode.h +share/wasi-sysroot/include/c++/v1/__format/width_estimation_table.h +share/wasi-sysroot/include/c++/v1/__format/write_escaped.h +share/wasi-sysroot/include/c++/v1/__functional/binary_function.h +share/wasi-sysroot/include/c++/v1/__functional/binary_negate.h +share/wasi-sysroot/include/c++/v1/__functional/bind.h +share/wasi-sysroot/include/c++/v1/__functional/bind_back.h +share/wasi-sysroot/include/c++/v1/__functional/bind_front.h +share/wasi-sysroot/include/c++/v1/__functional/binder1st.h +share/wasi-sysroot/include/c++/v1/__functional/binder2nd.h +share/wasi-sysroot/include/c++/v1/__functional/boyer_moore_searcher.h +share/wasi-sysroot/include/c++/v1/__functional/compose.h +share/wasi-sysroot/include/c++/v1/__functional/default_searcher.h +share/wasi-sysroot/include/c++/v1/__functional/function.h +share/wasi-sysroot/include/c++/v1/__functional/hash.h +share/wasi-sysroot/include/c++/v1/__functional/identity.h +share/wasi-sysroot/include/c++/v1/__functional/invoke.h +share/wasi-sysroot/include/c++/v1/__functional/is_transparent.h +share/wasi-sysroot/include/c++/v1/__functional/mem_fn.h +share/wasi-sysroot/include/c++/v1/__functional/mem_fun_ref.h +share/wasi-sysroot/include/c++/v1/__functional/not_fn.h +share/wasi-sysroot/include/c++/v1/__functional/operations.h +share/wasi-sysroot/include/c++/v1/__functional/perfect_forward.h +share/wasi-sysroot/include/c++/v1/__functional/pointer_to_binary_function.h +share/wasi-sysroot/include/c++/v1/__functional/pointer_to_unary_function.h +share/wasi-sysroot/include/c++/v1/__functional/ranges_operations.h +share/wasi-sysroot/include/c++/v1/__functional/reference_wrapper.h +share/wasi-sysroot/include/c++/v1/__functional/unary_function.h +share/wasi-sysroot/include/c++/v1/__functional/unary_negate.h +share/wasi-sysroot/include/c++/v1/__functional/weak_result_type.h +share/wasi-sysroot/include/c++/v1/__fwd/array.h +share/wasi-sysroot/include/c++/v1/__fwd/bit_reference.h +share/wasi-sysroot/include/c++/v1/__fwd/byte.h +share/wasi-sysroot/include/c++/v1/__fwd/complex.h +share/wasi-sysroot/include/c++/v1/__fwd/deque.h +share/wasi-sysroot/include/c++/v1/__fwd/format.h +share/wasi-sysroot/include/c++/v1/__fwd/fstream.h +share/wasi-sysroot/include/c++/v1/__fwd/functional.h +share/wasi-sysroot/include/c++/v1/__fwd/get.h +share/wasi-sysroot/include/c++/v1/__fwd/ios.h +share/wasi-sysroot/include/c++/v1/__fwd/istream.h +share/wasi-sysroot/include/c++/v1/__fwd/map.h +share/wasi-sysroot/include/c++/v1/__fwd/mdspan.h +share/wasi-sysroot/include/c++/v1/__fwd/memory.h +share/wasi-sysroot/include/c++/v1/__fwd/memory_resource.h +share/wasi-sysroot/include/c++/v1/__fwd/ostream.h +share/wasi-sysroot/include/c++/v1/__fwd/pair.h +share/wasi-sysroot/include/c++/v1/__fwd/queue.h +share/wasi-sysroot/include/c++/v1/__fwd/set.h +share/wasi-sysroot/include/c++/v1/__fwd/span.h +share/wasi-sysroot/include/c++/v1/__fwd/sstream.h +share/wasi-sysroot/include/c++/v1/__fwd/stack.h +share/wasi-sysroot/include/c++/v1/__fwd/streambuf.h +share/wasi-sysroot/include/c++/v1/__fwd/string.h +share/wasi-sysroot/include/c++/v1/__fwd/string_view.h +share/wasi-sysroot/include/c++/v1/__fwd/subrange.h +share/wasi-sysroot/include/c++/v1/__fwd/tuple.h +share/wasi-sysroot/include/c++/v1/__fwd/variant.h +share/wasi-sysroot/include/c++/v1/__fwd/vector.h +share/wasi-sysroot/include/c++/v1/__hash_table +share/wasi-sysroot/include/c++/v1/__ios/fpos.h +share/wasi-sysroot/include/c++/v1/__iterator/access.h +share/wasi-sysroot/include/c++/v1/__iterator/advance.h +share/wasi-sysroot/include/c++/v1/__iterator/aliasing_iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/back_insert_iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/bounded_iter.h +share/wasi-sysroot/include/c++/v1/__iterator/common_iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/concepts.h +share/wasi-sysroot/include/c++/v1/__iterator/counted_iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/cpp17_iterator_concepts.h +share/wasi-sysroot/include/c++/v1/__iterator/data.h +share/wasi-sysroot/include/c++/v1/__iterator/default_sentinel.h +share/wasi-sysroot/include/c++/v1/__iterator/distance.h +share/wasi-sysroot/include/c++/v1/__iterator/empty.h +share/wasi-sysroot/include/c++/v1/__iterator/erase_if_container.h +share/wasi-sysroot/include/c++/v1/__iterator/front_insert_iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/incrementable_traits.h +share/wasi-sysroot/include/c++/v1/__iterator/indirectly_comparable.h +share/wasi-sysroot/include/c++/v1/__iterator/insert_iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/istream_iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/istreambuf_iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/iter_move.h +share/wasi-sysroot/include/c++/v1/__iterator/iter_swap.h +share/wasi-sysroot/include/c++/v1/__iterator/iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/iterator_traits.h +share/wasi-sysroot/include/c++/v1/__iterator/iterator_with_data.h +share/wasi-sysroot/include/c++/v1/__iterator/mergeable.h +share/wasi-sysroot/include/c++/v1/__iterator/move_iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/move_sentinel.h +share/wasi-sysroot/include/c++/v1/__iterator/next.h +share/wasi-sysroot/include/c++/v1/__iterator/ostream_iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/ostreambuf_iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/permutable.h +share/wasi-sysroot/include/c++/v1/__iterator/prev.h +share/wasi-sysroot/include/c++/v1/__iterator/product_iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/projected.h +share/wasi-sysroot/include/c++/v1/__iterator/ranges_iterator_traits.h +share/wasi-sysroot/include/c++/v1/__iterator/readable_traits.h +share/wasi-sysroot/include/c++/v1/__iterator/reverse_access.h +share/wasi-sysroot/include/c++/v1/__iterator/reverse_iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/segmented_iterator.h +share/wasi-sysroot/include/c++/v1/__iterator/size.h +share/wasi-sysroot/include/c++/v1/__iterator/sortable.h +share/wasi-sysroot/include/c++/v1/__iterator/static_bounded_iter.h +share/wasi-sysroot/include/c++/v1/__iterator/unreachable_sentinel.h +share/wasi-sysroot/include/c++/v1/__iterator/wrap_iter.h +share/wasi-sysroot/include/c++/v1/__locale +share/wasi-sysroot/include/c++/v1/__locale_dir/check_grouping.h +share/wasi-sysroot/include/c++/v1/__locale_dir/get_c_locale.h +share/wasi-sysroot/include/c++/v1/__locale_dir/locale_base_api.h +share/wasi-sysroot/include/c++/v1/__locale_dir/locale_base_api/android.h +share/wasi-sysroot/include/c++/v1/__locale_dir/locale_base_api/bsd_locale_fallbacks.h +share/wasi-sysroot/include/c++/v1/__locale_dir/locale_base_api/ibm.h +share/wasi-sysroot/include/c++/v1/__locale_dir/locale_base_api/musl.h +share/wasi-sysroot/include/c++/v1/__locale_dir/locale_base_api/openbsd.h +share/wasi-sysroot/include/c++/v1/__locale_dir/messages.h +share/wasi-sysroot/include/c++/v1/__locale_dir/money.h +share/wasi-sysroot/include/c++/v1/__locale_dir/num.h +share/wasi-sysroot/include/c++/v1/__locale_dir/pad_and_output.h +share/wasi-sysroot/include/c++/v1/__locale_dir/scan_keyword.h +share/wasi-sysroot/include/c++/v1/__locale_dir/support/apple.h +share/wasi-sysroot/include/c++/v1/__locale_dir/support/bsd_like.h +share/wasi-sysroot/include/c++/v1/__locale_dir/support/freebsd.h +share/wasi-sysroot/include/c++/v1/__locale_dir/support/fuchsia.h +share/wasi-sysroot/include/c++/v1/__locale_dir/support/linux.h +share/wasi-sysroot/include/c++/v1/__locale_dir/support/no_locale/characters.h +share/wasi-sysroot/include/c++/v1/__locale_dir/support/no_locale/strtonum.h +share/wasi-sysroot/include/c++/v1/__locale_dir/support/windows.h +share/wasi-sysroot/include/c++/v1/__locale_dir/time.h +share/wasi-sysroot/include/c++/v1/__locale_dir/wbuffer_convert.h +share/wasi-sysroot/include/c++/v1/__locale_dir/wstring_convert.h +share/wasi-sysroot/include/c++/v1/__log_hardening_failure +share/wasi-sysroot/include/c++/v1/__math/abs.h +share/wasi-sysroot/include/c++/v1/__math/copysign.h +share/wasi-sysroot/include/c++/v1/__math/error_functions.h +share/wasi-sysroot/include/c++/v1/__math/exponential_functions.h +share/wasi-sysroot/include/c++/v1/__math/fdim.h +share/wasi-sysroot/include/c++/v1/__math/fma.h +share/wasi-sysroot/include/c++/v1/__math/gamma.h +share/wasi-sysroot/include/c++/v1/__math/hyperbolic_functions.h +share/wasi-sysroot/include/c++/v1/__math/hypot.h +share/wasi-sysroot/include/c++/v1/__math/inverse_hyperbolic_functions.h +share/wasi-sysroot/include/c++/v1/__math/inverse_trigonometric_functions.h +share/wasi-sysroot/include/c++/v1/__math/logarithms.h +share/wasi-sysroot/include/c++/v1/__math/min_max.h +share/wasi-sysroot/include/c++/v1/__math/modulo.h +share/wasi-sysroot/include/c++/v1/__math/remainder.h +share/wasi-sysroot/include/c++/v1/__math/roots.h +share/wasi-sysroot/include/c++/v1/__math/rounding_functions.h +share/wasi-sysroot/include/c++/v1/__math/special_functions.h +share/wasi-sysroot/include/c++/v1/__math/traits.h +share/wasi-sysroot/include/c++/v1/__math/trigonometric_functions.h +share/wasi-sysroot/include/c++/v1/__mbstate_t.h +share/wasi-sysroot/include/c++/v1/__mdspan/aligned_accessor.h +share/wasi-sysroot/include/c++/v1/__mdspan/default_accessor.h +share/wasi-sysroot/include/c++/v1/__mdspan/extents.h +share/wasi-sysroot/include/c++/v1/__mdspan/layout_left.h +share/wasi-sysroot/include/c++/v1/__mdspan/layout_right.h +share/wasi-sysroot/include/c++/v1/__mdspan/layout_stride.h +share/wasi-sysroot/include/c++/v1/__mdspan/mdspan.h +share/wasi-sysroot/include/c++/v1/__memory/addressof.h +share/wasi-sysroot/include/c++/v1/__memory/align.h +share/wasi-sysroot/include/c++/v1/__memory/aligned_alloc.h +share/wasi-sysroot/include/c++/v1/__memory/allocate_at_least.h +share/wasi-sysroot/include/c++/v1/__memory/allocation_guard.h +share/wasi-sysroot/include/c++/v1/__memory/allocator.h +share/wasi-sysroot/include/c++/v1/__memory/allocator_arg_t.h +share/wasi-sysroot/include/c++/v1/__memory/allocator_destructor.h +share/wasi-sysroot/include/c++/v1/__memory/allocator_traits.h +share/wasi-sysroot/include/c++/v1/__memory/array_cookie.h +share/wasi-sysroot/include/c++/v1/__memory/assume_aligned.h +share/wasi-sysroot/include/c++/v1/__memory/auto_ptr.h +share/wasi-sysroot/include/c++/v1/__memory/compressed_pair.h +share/wasi-sysroot/include/c++/v1/__memory/concepts.h +share/wasi-sysroot/include/c++/v1/__memory/construct_at.h +share/wasi-sysroot/include/c++/v1/__memory/destroy.h +share/wasi-sysroot/include/c++/v1/__memory/destruct_n.h +share/wasi-sysroot/include/c++/v1/__memory/inout_ptr.h +share/wasi-sysroot/include/c++/v1/__memory/is_sufficiently_aligned.h +share/wasi-sysroot/include/c++/v1/__memory/noexcept_move_assign_container.h +share/wasi-sysroot/include/c++/v1/__memory/out_ptr.h +share/wasi-sysroot/include/c++/v1/__memory/pointer_traits.h +share/wasi-sysroot/include/c++/v1/__memory/ranges_construct_at.h +share/wasi-sysroot/include/c++/v1/__memory/ranges_destroy.h +share/wasi-sysroot/include/c++/v1/__memory/ranges_uninitialized_algorithms.h +share/wasi-sysroot/include/c++/v1/__memory/raw_storage_iterator.h +share/wasi-sysroot/include/c++/v1/__memory/shared_count.h +share/wasi-sysroot/include/c++/v1/__memory/shared_ptr.h +share/wasi-sysroot/include/c++/v1/__memory/swap_allocator.h +share/wasi-sysroot/include/c++/v1/__memory/temp_value.h +share/wasi-sysroot/include/c++/v1/__memory/temporary_buffer.h +share/wasi-sysroot/include/c++/v1/__memory/uninitialized_algorithms.h +share/wasi-sysroot/include/c++/v1/__memory/unique_ptr.h +share/wasi-sysroot/include/c++/v1/__memory/unique_temporary_buffer.h +share/wasi-sysroot/include/c++/v1/__memory/uses_allocator.h +share/wasi-sysroot/include/c++/v1/__memory/uses_allocator_construction.h +share/wasi-sysroot/include/c++/v1/__memory_resource/memory_resource.h +share/wasi-sysroot/include/c++/v1/__memory_resource/monotonic_buffer_resource.h +share/wasi-sysroot/include/c++/v1/__memory_resource/polymorphic_allocator.h +share/wasi-sysroot/include/c++/v1/__memory_resource/pool_options.h +share/wasi-sysroot/include/c++/v1/__memory_resource/synchronized_pool_resource.h +share/wasi-sysroot/include/c++/v1/__memory_resource/unsynchronized_pool_resource.h +share/wasi-sysroot/include/c++/v1/__mutex/lock_guard.h +share/wasi-sysroot/include/c++/v1/__mutex/mutex.h +share/wasi-sysroot/include/c++/v1/__mutex/once_flag.h +share/wasi-sysroot/include/c++/v1/__mutex/tag_types.h +share/wasi-sysroot/include/c++/v1/__mutex/unique_lock.h +share/wasi-sysroot/include/c++/v1/__new/align_val_t.h +share/wasi-sysroot/include/c++/v1/__new/allocate.h +share/wasi-sysroot/include/c++/v1/__new/destroying_delete_t.h +share/wasi-sysroot/include/c++/v1/__new/exceptions.h +share/wasi-sysroot/include/c++/v1/__new/global_new_delete.h +share/wasi-sysroot/include/c++/v1/__new/interference_size.h +share/wasi-sysroot/include/c++/v1/__new/launder.h +share/wasi-sysroot/include/c++/v1/__new/new_handler.h +share/wasi-sysroot/include/c++/v1/__new/nothrow_t.h +share/wasi-sysroot/include/c++/v1/__new/placement_new_delete.h +share/wasi-sysroot/include/c++/v1/__node_handle +share/wasi-sysroot/include/c++/v1/__numeric/accumulate.h +share/wasi-sysroot/include/c++/v1/__numeric/adjacent_difference.h +share/wasi-sysroot/include/c++/v1/__numeric/exclusive_scan.h +share/wasi-sysroot/include/c++/v1/__numeric/gcd_lcm.h +share/wasi-sysroot/include/c++/v1/__numeric/inclusive_scan.h +share/wasi-sysroot/include/c++/v1/__numeric/inner_product.h +share/wasi-sysroot/include/c++/v1/__numeric/iota.h +share/wasi-sysroot/include/c++/v1/__numeric/midpoint.h +share/wasi-sysroot/include/c++/v1/__numeric/partial_sum.h +share/wasi-sysroot/include/c++/v1/__numeric/pstl.h +share/wasi-sysroot/include/c++/v1/__numeric/ranges_iota.h +share/wasi-sysroot/include/c++/v1/__numeric/reduce.h +share/wasi-sysroot/include/c++/v1/__numeric/saturation_arithmetic.h +share/wasi-sysroot/include/c++/v1/__numeric/transform_exclusive_scan.h +share/wasi-sysroot/include/c++/v1/__numeric/transform_inclusive_scan.h +share/wasi-sysroot/include/c++/v1/__numeric/transform_reduce.h +share/wasi-sysroot/include/c++/v1/__ostream/basic_ostream.h +share/wasi-sysroot/include/c++/v1/__ostream/print.h +share/wasi-sysroot/include/c++/v1/__ostream/put_character_sequence.h +share/wasi-sysroot/include/c++/v1/__pstl/backend.h +share/wasi-sysroot/include/c++/v1/__pstl/backend_fwd.h +share/wasi-sysroot/include/c++/v1/__pstl/backends/default.h +share/wasi-sysroot/include/c++/v1/__pstl/backends/libdispatch.h +share/wasi-sysroot/include/c++/v1/__pstl/backends/serial.h +share/wasi-sysroot/include/c++/v1/__pstl/backends/std_thread.h +share/wasi-sysroot/include/c++/v1/__pstl/cpu_algos/any_of.h +share/wasi-sysroot/include/c++/v1/__pstl/cpu_algos/cpu_traits.h +share/wasi-sysroot/include/c++/v1/__pstl/cpu_algos/fill.h +share/wasi-sysroot/include/c++/v1/__pstl/cpu_algos/find_if.h +share/wasi-sysroot/include/c++/v1/__pstl/cpu_algos/for_each.h +share/wasi-sysroot/include/c++/v1/__pstl/cpu_algos/merge.h +share/wasi-sysroot/include/c++/v1/__pstl/cpu_algos/stable_sort.h +share/wasi-sysroot/include/c++/v1/__pstl/cpu_algos/transform.h +share/wasi-sysroot/include/c++/v1/__pstl/cpu_algos/transform_reduce.h +share/wasi-sysroot/include/c++/v1/__pstl/dispatch.h +share/wasi-sysroot/include/c++/v1/__pstl/handle_exception.h +share/wasi-sysroot/include/c++/v1/__random/bernoulli_distribution.h +share/wasi-sysroot/include/c++/v1/__random/binomial_distribution.h +share/wasi-sysroot/include/c++/v1/__random/cauchy_distribution.h +share/wasi-sysroot/include/c++/v1/__random/chi_squared_distribution.h +share/wasi-sysroot/include/c++/v1/__random/clamp_to_integral.h +share/wasi-sysroot/include/c++/v1/__random/default_random_engine.h +share/wasi-sysroot/include/c++/v1/__random/discard_block_engine.h +share/wasi-sysroot/include/c++/v1/__random/discrete_distribution.h +share/wasi-sysroot/include/c++/v1/__random/exponential_distribution.h +share/wasi-sysroot/include/c++/v1/__random/extreme_value_distribution.h +share/wasi-sysroot/include/c++/v1/__random/fisher_f_distribution.h +share/wasi-sysroot/include/c++/v1/__random/gamma_distribution.h +share/wasi-sysroot/include/c++/v1/__random/generate_canonical.h +share/wasi-sysroot/include/c++/v1/__random/geometric_distribution.h +share/wasi-sysroot/include/c++/v1/__random/independent_bits_engine.h +share/wasi-sysroot/include/c++/v1/__random/is_seed_sequence.h +share/wasi-sysroot/include/c++/v1/__random/is_valid.h +share/wasi-sysroot/include/c++/v1/__random/knuth_b.h +share/wasi-sysroot/include/c++/v1/__random/linear_congruential_engine.h +share/wasi-sysroot/include/c++/v1/__random/log2.h +share/wasi-sysroot/include/c++/v1/__random/lognormal_distribution.h +share/wasi-sysroot/include/c++/v1/__random/mersenne_twister_engine.h +share/wasi-sysroot/include/c++/v1/__random/negative_binomial_distribution.h +share/wasi-sysroot/include/c++/v1/__random/normal_distribution.h +share/wasi-sysroot/include/c++/v1/__random/piecewise_constant_distribution.h +share/wasi-sysroot/include/c++/v1/__random/piecewise_linear_distribution.h +share/wasi-sysroot/include/c++/v1/__random/poisson_distribution.h +share/wasi-sysroot/include/c++/v1/__random/random_device.h +share/wasi-sysroot/include/c++/v1/__random/ranlux.h +share/wasi-sysroot/include/c++/v1/__random/seed_seq.h +share/wasi-sysroot/include/c++/v1/__random/shuffle_order_engine.h +share/wasi-sysroot/include/c++/v1/__random/student_t_distribution.h +share/wasi-sysroot/include/c++/v1/__random/subtract_with_carry_engine.h +share/wasi-sysroot/include/c++/v1/__random/uniform_int_distribution.h +share/wasi-sysroot/include/c++/v1/__random/uniform_random_bit_generator.h +share/wasi-sysroot/include/c++/v1/__random/uniform_real_distribution.h +share/wasi-sysroot/include/c++/v1/__random/weibull_distribution.h +share/wasi-sysroot/include/c++/v1/__ranges/access.h +share/wasi-sysroot/include/c++/v1/__ranges/all.h +share/wasi-sysroot/include/c++/v1/__ranges/as_rvalue_view.h +share/wasi-sysroot/include/c++/v1/__ranges/chunk_by_view.h +share/wasi-sysroot/include/c++/v1/__ranges/common_view.h +share/wasi-sysroot/include/c++/v1/__ranges/concepts.h +share/wasi-sysroot/include/c++/v1/__ranges/container_compatible_range.h +share/wasi-sysroot/include/c++/v1/__ranges/counted.h +share/wasi-sysroot/include/c++/v1/__ranges/dangling.h +share/wasi-sysroot/include/c++/v1/__ranges/data.h +share/wasi-sysroot/include/c++/v1/__ranges/drop_view.h +share/wasi-sysroot/include/c++/v1/__ranges/drop_while_view.h +share/wasi-sysroot/include/c++/v1/__ranges/elements_view.h +share/wasi-sysroot/include/c++/v1/__ranges/empty.h +share/wasi-sysroot/include/c++/v1/__ranges/empty_view.h +share/wasi-sysroot/include/c++/v1/__ranges/enable_borrowed_range.h +share/wasi-sysroot/include/c++/v1/__ranges/enable_view.h +share/wasi-sysroot/include/c++/v1/__ranges/filter_view.h +share/wasi-sysroot/include/c++/v1/__ranges/from_range.h +share/wasi-sysroot/include/c++/v1/__ranges/iota_view.h +share/wasi-sysroot/include/c++/v1/__ranges/istream_view.h +share/wasi-sysroot/include/c++/v1/__ranges/join_view.h +share/wasi-sysroot/include/c++/v1/__ranges/join_with_view.h +share/wasi-sysroot/include/c++/v1/__ranges/lazy_split_view.h +share/wasi-sysroot/include/c++/v1/__ranges/movable_box.h +share/wasi-sysroot/include/c++/v1/__ranges/non_propagating_cache.h +share/wasi-sysroot/include/c++/v1/__ranges/owning_view.h +share/wasi-sysroot/include/c++/v1/__ranges/range_adaptor.h +share/wasi-sysroot/include/c++/v1/__ranges/rbegin.h +share/wasi-sysroot/include/c++/v1/__ranges/ref_view.h +share/wasi-sysroot/include/c++/v1/__ranges/rend.h +share/wasi-sysroot/include/c++/v1/__ranges/repeat_view.h +share/wasi-sysroot/include/c++/v1/__ranges/reverse_view.h +share/wasi-sysroot/include/c++/v1/__ranges/single_view.h +share/wasi-sysroot/include/c++/v1/__ranges/size.h +share/wasi-sysroot/include/c++/v1/__ranges/split_view.h +share/wasi-sysroot/include/c++/v1/__ranges/subrange.h +share/wasi-sysroot/include/c++/v1/__ranges/take_view.h +share/wasi-sysroot/include/c++/v1/__ranges/take_while_view.h +share/wasi-sysroot/include/c++/v1/__ranges/to.h +share/wasi-sysroot/include/c++/v1/__ranges/transform_view.h +share/wasi-sysroot/include/c++/v1/__ranges/view_interface.h +share/wasi-sysroot/include/c++/v1/__ranges/views.h +share/wasi-sysroot/include/c++/v1/__ranges/zip_view.h +share/wasi-sysroot/include/c++/v1/__split_buffer +share/wasi-sysroot/include/c++/v1/__std_mbstate_t.h +share/wasi-sysroot/include/c++/v1/__stop_token/atomic_unique_lock.h +share/wasi-sysroot/include/c++/v1/__stop_token/intrusive_list_view.h +share/wasi-sysroot/include/c++/v1/__stop_token/intrusive_shared_ptr.h +share/wasi-sysroot/include/c++/v1/__stop_token/stop_callback.h +share/wasi-sysroot/include/c++/v1/__stop_token/stop_source.h +share/wasi-sysroot/include/c++/v1/__stop_token/stop_state.h +share/wasi-sysroot/include/c++/v1/__stop_token/stop_token.h +share/wasi-sysroot/include/c++/v1/__string/char_traits.h +share/wasi-sysroot/include/c++/v1/__string/constexpr_c_functions.h +share/wasi-sysroot/include/c++/v1/__string/extern_template_lists.h +share/wasi-sysroot/include/c++/v1/__support/ibm/gettod_zos.h +share/wasi-sysroot/include/c++/v1/__support/ibm/locale_mgmt_zos.h +share/wasi-sysroot/include/c++/v1/__support/ibm/nanosleep.h +share/wasi-sysroot/include/c++/v1/__support/xlocale/__nop_locale_mgmt.h +share/wasi-sysroot/include/c++/v1/__support/xlocale/__posix_l_fallback.h +share/wasi-sysroot/include/c++/v1/__support/xlocale/__strtonum_fallback.h +share/wasi-sysroot/include/c++/v1/__system_error/errc.h +share/wasi-sysroot/include/c++/v1/__system_error/error_category.h +share/wasi-sysroot/include/c++/v1/__system_error/error_code.h +share/wasi-sysroot/include/c++/v1/__system_error/error_condition.h +share/wasi-sysroot/include/c++/v1/__system_error/system_error.h +share/wasi-sysroot/include/c++/v1/__system_error/throw_system_error.h +share/wasi-sysroot/include/c++/v1/__thread/formatter.h +share/wasi-sysroot/include/c++/v1/__thread/id.h +share/wasi-sysroot/include/c++/v1/__thread/jthread.h +share/wasi-sysroot/include/c++/v1/__thread/poll_with_backoff.h +share/wasi-sysroot/include/c++/v1/__thread/support.h +share/wasi-sysroot/include/c++/v1/__thread/support/c11.h +share/wasi-sysroot/include/c++/v1/__thread/support/external.h +share/wasi-sysroot/include/c++/v1/__thread/support/pthread.h +share/wasi-sysroot/include/c++/v1/__thread/support/windows.h +share/wasi-sysroot/include/c++/v1/__thread/this_thread.h +share/wasi-sysroot/include/c++/v1/__thread/thread.h +share/wasi-sysroot/include/c++/v1/__thread/timed_backoff_policy.h +share/wasi-sysroot/include/c++/v1/__tree +share/wasi-sysroot/include/c++/v1/__tuple/find_index.h +share/wasi-sysroot/include/c++/v1/__tuple/ignore.h +share/wasi-sysroot/include/c++/v1/__tuple/make_tuple_types.h +share/wasi-sysroot/include/c++/v1/__tuple/sfinae_helpers.h +share/wasi-sysroot/include/c++/v1/__tuple/tuple_element.h +share/wasi-sysroot/include/c++/v1/__tuple/tuple_indices.h +share/wasi-sysroot/include/c++/v1/__tuple/tuple_like.h +share/wasi-sysroot/include/c++/v1/__tuple/tuple_like_ext.h +share/wasi-sysroot/include/c++/v1/__tuple/tuple_like_no_subrange.h +share/wasi-sysroot/include/c++/v1/__tuple/tuple_size.h +share/wasi-sysroot/include/c++/v1/__tuple/tuple_types.h +share/wasi-sysroot/include/c++/v1/__type_traits/add_cv_quals.h +share/wasi-sysroot/include/c++/v1/__type_traits/add_pointer.h +share/wasi-sysroot/include/c++/v1/__type_traits/add_reference.h +share/wasi-sysroot/include/c++/v1/__type_traits/aligned_storage.h +share/wasi-sysroot/include/c++/v1/__type_traits/aligned_union.h +share/wasi-sysroot/include/c++/v1/__type_traits/alignment_of.h +share/wasi-sysroot/include/c++/v1/__type_traits/can_extract_key.h +share/wasi-sysroot/include/c++/v1/__type_traits/common_reference.h +share/wasi-sysroot/include/c++/v1/__type_traits/common_type.h +share/wasi-sysroot/include/c++/v1/__type_traits/conditional.h +share/wasi-sysroot/include/c++/v1/__type_traits/conjunction.h +share/wasi-sysroot/include/c++/v1/__type_traits/container_traits.h +share/wasi-sysroot/include/c++/v1/__type_traits/copy_cv.h +share/wasi-sysroot/include/c++/v1/__type_traits/copy_cvref.h +share/wasi-sysroot/include/c++/v1/__type_traits/datasizeof.h +share/wasi-sysroot/include/c++/v1/__type_traits/decay.h +share/wasi-sysroot/include/c++/v1/__type_traits/dependent_type.h +share/wasi-sysroot/include/c++/v1/__type_traits/desugars_to.h +share/wasi-sysroot/include/c++/v1/__type_traits/detected_or.h +share/wasi-sysroot/include/c++/v1/__type_traits/disjunction.h +share/wasi-sysroot/include/c++/v1/__type_traits/enable_if.h +share/wasi-sysroot/include/c++/v1/__type_traits/extent.h +share/wasi-sysroot/include/c++/v1/__type_traits/has_unique_object_representation.h +share/wasi-sysroot/include/c++/v1/__type_traits/has_virtual_destructor.h +share/wasi-sysroot/include/c++/v1/__type_traits/integer_traits.h +share/wasi-sysroot/include/c++/v1/__type_traits/integral_constant.h +share/wasi-sysroot/include/c++/v1/__type_traits/invoke.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_abstract.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_aggregate.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_allocator.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_always_bitcastable.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_arithmetic.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_array.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_assignable.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_base_of.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_bounded_array.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_callable.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_char_like_type.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_class.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_compound.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_const.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_constant_evaluated.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_constructible.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_convertible.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_core_convertible.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_destructible.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_empty.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_enum.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_equality_comparable.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_execution_policy.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_final.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_floating_point.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_function.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_fundamental.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_implicit_lifetime.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_implicitly_default_constructible.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_integral.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_literal_type.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_member_pointer.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_nothrow_assignable.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_nothrow_constructible.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_nothrow_destructible.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_null_pointer.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_object.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_pod.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_pointer.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_polymorphic.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_primary_template.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_reference.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_reference_wrapper.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_referenceable.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_replaceable.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_same.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_scalar.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_signed.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_specialization.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_standard_layout.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_swappable.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_trivial.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_trivially_assignable.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_trivially_constructible.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_trivially_copyable.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_trivially_destructible.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_trivially_lexicographically_comparable.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_trivially_relocatable.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_unbounded_array.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_union.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_unsigned.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_valid_expansion.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_void.h +share/wasi-sysroot/include/c++/v1/__type_traits/is_volatile.h +share/wasi-sysroot/include/c++/v1/__type_traits/lazy.h +share/wasi-sysroot/include/c++/v1/__type_traits/make_32_64_or_128_bit.h +share/wasi-sysroot/include/c++/v1/__type_traits/make_const_lvalue_ref.h +share/wasi-sysroot/include/c++/v1/__type_traits/make_signed.h +share/wasi-sysroot/include/c++/v1/__type_traits/make_unsigned.h +share/wasi-sysroot/include/c++/v1/__type_traits/maybe_const.h +share/wasi-sysroot/include/c++/v1/__type_traits/nat.h +share/wasi-sysroot/include/c++/v1/__type_traits/negation.h +share/wasi-sysroot/include/c++/v1/__type_traits/promote.h +share/wasi-sysroot/include/c++/v1/__type_traits/rank.h +share/wasi-sysroot/include/c++/v1/__type_traits/reference_constructs_from_temporary.h +share/wasi-sysroot/include/c++/v1/__type_traits/reference_converts_from_temporary.h +share/wasi-sysroot/include/c++/v1/__type_traits/remove_all_extents.h +share/wasi-sysroot/include/c++/v1/__type_traits/remove_const.h +share/wasi-sysroot/include/c++/v1/__type_traits/remove_const_ref.h +share/wasi-sysroot/include/c++/v1/__type_traits/remove_cv.h +share/wasi-sysroot/include/c++/v1/__type_traits/remove_cvref.h +share/wasi-sysroot/include/c++/v1/__type_traits/remove_extent.h +share/wasi-sysroot/include/c++/v1/__type_traits/remove_pointer.h +share/wasi-sysroot/include/c++/v1/__type_traits/remove_reference.h +share/wasi-sysroot/include/c++/v1/__type_traits/remove_volatile.h +share/wasi-sysroot/include/c++/v1/__type_traits/result_of.h +share/wasi-sysroot/include/c++/v1/__type_traits/strip_signature.h +share/wasi-sysroot/include/c++/v1/__type_traits/type_identity.h +share/wasi-sysroot/include/c++/v1/__type_traits/type_list.h +share/wasi-sysroot/include/c++/v1/__type_traits/underlying_type.h +share/wasi-sysroot/include/c++/v1/__type_traits/unwrap_ref.h +share/wasi-sysroot/include/c++/v1/__type_traits/void_t.h +share/wasi-sysroot/include/c++/v1/__undef_macros +share/wasi-sysroot/include/c++/v1/__utility/as_const.h +share/wasi-sysroot/include/c++/v1/__utility/as_lvalue.h +share/wasi-sysroot/include/c++/v1/__utility/auto_cast.h +share/wasi-sysroot/include/c++/v1/__utility/cmp.h +share/wasi-sysroot/include/c++/v1/__utility/convert_to_integral.h +share/wasi-sysroot/include/c++/v1/__utility/declval.h +share/wasi-sysroot/include/c++/v1/__utility/element_count.h +share/wasi-sysroot/include/c++/v1/__utility/empty.h +share/wasi-sysroot/include/c++/v1/__utility/exception_guard.h +share/wasi-sysroot/include/c++/v1/__utility/exchange.h +share/wasi-sysroot/include/c++/v1/__utility/forward.h +share/wasi-sysroot/include/c++/v1/__utility/forward_like.h +share/wasi-sysroot/include/c++/v1/__utility/in_place.h +share/wasi-sysroot/include/c++/v1/__utility/integer_sequence.h +share/wasi-sysroot/include/c++/v1/__utility/is_pointer_in_range.h +share/wasi-sysroot/include/c++/v1/__utility/is_valid_range.h +share/wasi-sysroot/include/c++/v1/__utility/move.h +share/wasi-sysroot/include/c++/v1/__utility/no_destroy.h +share/wasi-sysroot/include/c++/v1/__utility/pair.h +share/wasi-sysroot/include/c++/v1/__utility/piecewise_construct.h +share/wasi-sysroot/include/c++/v1/__utility/priority_tag.h +share/wasi-sysroot/include/c++/v1/__utility/private_constructor_tag.h +share/wasi-sysroot/include/c++/v1/__utility/rel_ops.h +share/wasi-sysroot/include/c++/v1/__utility/scope_guard.h +share/wasi-sysroot/include/c++/v1/__utility/small_buffer.h +share/wasi-sysroot/include/c++/v1/__utility/swap.h +share/wasi-sysroot/include/c++/v1/__utility/to_underlying.h +share/wasi-sysroot/include/c++/v1/__utility/unreachable.h +share/wasi-sysroot/include/c++/v1/__variant/monostate.h +share/wasi-sysroot/include/c++/v1/__vector/comparison.h +share/wasi-sysroot/include/c++/v1/__vector/container_traits.h +share/wasi-sysroot/include/c++/v1/__vector/erase.h +share/wasi-sysroot/include/c++/v1/__vector/pmr.h +share/wasi-sysroot/include/c++/v1/__vector/swap.h +share/wasi-sysroot/include/c++/v1/__vector/vector.h +share/wasi-sysroot/include/c++/v1/__vector/vector_bool.h +share/wasi-sysroot/include/c++/v1/__vector/vector_bool_formatter.h +share/wasi-sysroot/include/c++/v1/__verbose_abort +share/wasi-sysroot/include/c++/v1/__verbose_trap +share/wasi-sysroot/include/c++/v1/algorithm +share/wasi-sysroot/include/c++/v1/any +share/wasi-sysroot/include/c++/v1/array +share/wasi-sysroot/include/c++/v1/atomic +share/wasi-sysroot/include/c++/v1/barrier +share/wasi-sysroot/include/c++/v1/bit +share/wasi-sysroot/include/c++/v1/bitset +share/wasi-sysroot/include/c++/v1/cassert +share/wasi-sysroot/include/c++/v1/ccomplex +share/wasi-sysroot/include/c++/v1/cctype +share/wasi-sysroot/include/c++/v1/cerrno +share/wasi-sysroot/include/c++/v1/cfenv +share/wasi-sysroot/include/c++/v1/cfloat +share/wasi-sysroot/include/c++/v1/charconv +share/wasi-sysroot/include/c++/v1/chrono +share/wasi-sysroot/include/c++/v1/cinttypes +share/wasi-sysroot/include/c++/v1/ciso646 +share/wasi-sysroot/include/c++/v1/climits +share/wasi-sysroot/include/c++/v1/clocale +share/wasi-sysroot/include/c++/v1/cmath +share/wasi-sysroot/include/c++/v1/codecvt +share/wasi-sysroot/include/c++/v1/compare +share/wasi-sysroot/include/c++/v1/complex +share/wasi-sysroot/include/c++/v1/complex.h +share/wasi-sysroot/include/c++/v1/concepts +share/wasi-sysroot/include/c++/v1/condition_variable +share/wasi-sysroot/include/c++/v1/coroutine +share/wasi-sysroot/include/c++/v1/csetjmp +share/wasi-sysroot/include/c++/v1/csignal +share/wasi-sysroot/include/c++/v1/cstdalign +share/wasi-sysroot/include/c++/v1/cstdarg +share/wasi-sysroot/include/c++/v1/cstdbool +share/wasi-sysroot/include/c++/v1/cstddef +share/wasi-sysroot/include/c++/v1/cstdint +share/wasi-sysroot/include/c++/v1/cstdio +share/wasi-sysroot/include/c++/v1/cstdlib +share/wasi-sysroot/include/c++/v1/cstring +share/wasi-sysroot/include/c++/v1/ctgmath +share/wasi-sysroot/include/c++/v1/ctime +share/wasi-sysroot/include/c++/v1/ctype.h +share/wasi-sysroot/include/c++/v1/cuchar +share/wasi-sysroot/include/c++/v1/cwchar +share/wasi-sysroot/include/c++/v1/cwctype +share/wasi-sysroot/include/c++/v1/cxxabi.h +share/wasi-sysroot/include/c++/v1/deque +share/wasi-sysroot/include/c++/v1/errno.h +share/wasi-sysroot/include/c++/v1/exception +share/wasi-sysroot/include/c++/v1/execution +share/wasi-sysroot/include/c++/v1/expected +share/wasi-sysroot/include/c++/v1/experimental/__simd/aligned_tag.h +share/wasi-sysroot/include/c++/v1/experimental/__simd/declaration.h +share/wasi-sysroot/include/c++/v1/experimental/__simd/reference.h +share/wasi-sysroot/include/c++/v1/experimental/__simd/scalar.h +share/wasi-sysroot/include/c++/v1/experimental/__simd/simd.h +share/wasi-sysroot/include/c++/v1/experimental/__simd/simd_mask.h +share/wasi-sysroot/include/c++/v1/experimental/__simd/traits.h +share/wasi-sysroot/include/c++/v1/experimental/__simd/utility.h +share/wasi-sysroot/include/c++/v1/experimental/__simd/vec_ext.h +share/wasi-sysroot/include/c++/v1/experimental/iterator +share/wasi-sysroot/include/c++/v1/experimental/memory +share/wasi-sysroot/include/c++/v1/experimental/propagate_const +share/wasi-sysroot/include/c++/v1/experimental/simd +share/wasi-sysroot/include/c++/v1/experimental/type_traits +share/wasi-sysroot/include/c++/v1/experimental/utility +share/wasi-sysroot/include/c++/v1/ext/__hash +share/wasi-sysroot/include/c++/v1/ext/hash_map +share/wasi-sysroot/include/c++/v1/ext/hash_set +share/wasi-sysroot/include/c++/v1/fenv.h +share/wasi-sysroot/include/c++/v1/filesystem +share/wasi-sysroot/include/c++/v1/flat_map +share/wasi-sysroot/include/c++/v1/flat_set +share/wasi-sysroot/include/c++/v1/float.h +share/wasi-sysroot/include/c++/v1/format +share/wasi-sysroot/include/c++/v1/forward_list +share/wasi-sysroot/include/c++/v1/fstream +share/wasi-sysroot/include/c++/v1/functional +share/wasi-sysroot/include/c++/v1/future +share/wasi-sysroot/include/c++/v1/initializer_list +share/wasi-sysroot/include/c++/v1/inttypes.h +share/wasi-sysroot/include/c++/v1/iomanip +share/wasi-sysroot/include/c++/v1/ios +share/wasi-sysroot/include/c++/v1/iosfwd +share/wasi-sysroot/include/c++/v1/iostream +share/wasi-sysroot/include/c++/v1/istream +share/wasi-sysroot/include/c++/v1/iterator +share/wasi-sysroot/include/c++/v1/latch +share/wasi-sysroot/include/c++/v1/libcxx.imp +share/wasi-sysroot/include/c++/v1/limits +share/wasi-sysroot/include/c++/v1/list +share/wasi-sysroot/include/c++/v1/locale +share/wasi-sysroot/include/c++/v1/map +share/wasi-sysroot/include/c++/v1/math.h +share/wasi-sysroot/include/c++/v1/mdspan +share/wasi-sysroot/include/c++/v1/memory +share/wasi-sysroot/include/c++/v1/memory_resource +share/wasi-sysroot/include/c++/v1/module.modulemap +share/wasi-sysroot/include/c++/v1/mutex +share/wasi-sysroot/include/c++/v1/new +share/wasi-sysroot/include/c++/v1/numbers +share/wasi-sysroot/include/c++/v1/numeric +share/wasi-sysroot/include/c++/v1/optional +share/wasi-sysroot/include/c++/v1/ostream +share/wasi-sysroot/include/c++/v1/print +share/wasi-sysroot/include/c++/v1/queue +share/wasi-sysroot/include/c++/v1/random +share/wasi-sysroot/include/c++/v1/ranges +share/wasi-sysroot/include/c++/v1/ratio +share/wasi-sysroot/include/c++/v1/regex +share/wasi-sysroot/include/c++/v1/scoped_allocator +share/wasi-sysroot/include/c++/v1/semaphore +share/wasi-sysroot/include/c++/v1/set +share/wasi-sysroot/include/c++/v1/shared_mutex +share/wasi-sysroot/include/c++/v1/source_location +share/wasi-sysroot/include/c++/v1/span +share/wasi-sysroot/include/c++/v1/sstream +share/wasi-sysroot/include/c++/v1/stack +share/wasi-sysroot/include/c++/v1/stdatomic.h +share/wasi-sysroot/include/c++/v1/stdbool.h +share/wasi-sysroot/include/c++/v1/stddef.h +share/wasi-sysroot/include/c++/v1/stdexcept +share/wasi-sysroot/include/c++/v1/stdio.h +share/wasi-sysroot/include/c++/v1/stdlib.h +share/wasi-sysroot/include/c++/v1/stop_token +share/wasi-sysroot/include/c++/v1/streambuf +share/wasi-sysroot/include/c++/v1/string +share/wasi-sysroot/include/c++/v1/string.h +share/wasi-sysroot/include/c++/v1/string_view +share/wasi-sysroot/include/c++/v1/strstream +share/wasi-sysroot/include/c++/v1/syncstream +share/wasi-sysroot/include/c++/v1/system_error +share/wasi-sysroot/include/c++/v1/tgmath.h +share/wasi-sysroot/include/c++/v1/thread +share/wasi-sysroot/include/c++/v1/tuple +share/wasi-sysroot/include/c++/v1/type_traits +share/wasi-sysroot/include/c++/v1/typeindex +share/wasi-sysroot/include/c++/v1/typeinfo +share/wasi-sysroot/include/c++/v1/uchar.h +share/wasi-sysroot/include/c++/v1/unordered_map +share/wasi-sysroot/include/c++/v1/unordered_set +share/wasi-sysroot/include/c++/v1/utility +share/wasi-sysroot/include/c++/v1/valarray +share/wasi-sysroot/include/c++/v1/variant +share/wasi-sysroot/include/c++/v1/vector +share/wasi-sysroot/include/c++/v1/version +share/wasi-sysroot/include/c++/v1/wchar.h +share/wasi-sysroot/include/c++/v1/wctype.h +share/wasi-sysroot/lib/wasm32-wasi/libc++.a +share/wasi-sysroot/lib/wasm32-wasi/libc++.modules.json +share/wasi-sysroot/lib/wasm32-wasi/libc++abi.a +share/wasi-sysroot/lib/wasm32-wasi/libc++experimental.a +share/wasi-sysroot/share/libc++/v1/std.compat.cppm +share/wasi-sysroot/share/libc++/v1/std.compat/cassert.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cctype.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cerrno.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cfenv.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cfloat.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cinttypes.inc +share/wasi-sysroot/share/libc++/v1/std.compat/climits.inc +share/wasi-sysroot/share/libc++/v1/std.compat/clocale.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cmath.inc +share/wasi-sysroot/share/libc++/v1/std.compat/csetjmp.inc +share/wasi-sysroot/share/libc++/v1/std.compat/csignal.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cstdarg.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cstddef.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cstdint.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cstdio.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cstdlib.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cstring.inc +share/wasi-sysroot/share/libc++/v1/std.compat/ctime.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cuchar.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cwchar.inc +share/wasi-sysroot/share/libc++/v1/std.compat/cwctype.inc +share/wasi-sysroot/share/libc++/v1/std.cppm +share/wasi-sysroot/share/libc++/v1/std/algorithm.inc +share/wasi-sysroot/share/libc++/v1/std/any.inc +share/wasi-sysroot/share/libc++/v1/std/array.inc +share/wasi-sysroot/share/libc++/v1/std/atomic.inc +share/wasi-sysroot/share/libc++/v1/std/barrier.inc +share/wasi-sysroot/share/libc++/v1/std/bit.inc +share/wasi-sysroot/share/libc++/v1/std/bitset.inc +share/wasi-sysroot/share/libc++/v1/std/cassert.inc +share/wasi-sysroot/share/libc++/v1/std/cctype.inc +share/wasi-sysroot/share/libc++/v1/std/cerrno.inc +share/wasi-sysroot/share/libc++/v1/std/cfenv.inc +share/wasi-sysroot/share/libc++/v1/std/cfloat.inc +share/wasi-sysroot/share/libc++/v1/std/charconv.inc +share/wasi-sysroot/share/libc++/v1/std/chrono.inc +share/wasi-sysroot/share/libc++/v1/std/cinttypes.inc +share/wasi-sysroot/share/libc++/v1/std/climits.inc +share/wasi-sysroot/share/libc++/v1/std/clocale.inc +share/wasi-sysroot/share/libc++/v1/std/cmath.inc +share/wasi-sysroot/share/libc++/v1/std/codecvt.inc +share/wasi-sysroot/share/libc++/v1/std/compare.inc +share/wasi-sysroot/share/libc++/v1/std/complex.inc +share/wasi-sysroot/share/libc++/v1/std/concepts.inc +share/wasi-sysroot/share/libc++/v1/std/condition_variable.inc +share/wasi-sysroot/share/libc++/v1/std/coroutine.inc +share/wasi-sysroot/share/libc++/v1/std/csetjmp.inc +share/wasi-sysroot/share/libc++/v1/std/csignal.inc +share/wasi-sysroot/share/libc++/v1/std/cstdarg.inc +share/wasi-sysroot/share/libc++/v1/std/cstddef.inc +share/wasi-sysroot/share/libc++/v1/std/cstdint.inc +share/wasi-sysroot/share/libc++/v1/std/cstdio.inc +share/wasi-sysroot/share/libc++/v1/std/cstdlib.inc +share/wasi-sysroot/share/libc++/v1/std/cstring.inc +share/wasi-sysroot/share/libc++/v1/std/ctime.inc +share/wasi-sysroot/share/libc++/v1/std/cuchar.inc +share/wasi-sysroot/share/libc++/v1/std/cwchar.inc +share/wasi-sysroot/share/libc++/v1/std/cwctype.inc +share/wasi-sysroot/share/libc++/v1/std/deque.inc +share/wasi-sysroot/share/libc++/v1/std/exception.inc +share/wasi-sysroot/share/libc++/v1/std/execution.inc +share/wasi-sysroot/share/libc++/v1/std/expected.inc +share/wasi-sysroot/share/libc++/v1/std/filesystem.inc +share/wasi-sysroot/share/libc++/v1/std/flat_map.inc +share/wasi-sysroot/share/libc++/v1/std/flat_set.inc +share/wasi-sysroot/share/libc++/v1/std/format.inc +share/wasi-sysroot/share/libc++/v1/std/forward_list.inc +share/wasi-sysroot/share/libc++/v1/std/fstream.inc +share/wasi-sysroot/share/libc++/v1/std/functional.inc +share/wasi-sysroot/share/libc++/v1/std/future.inc +share/wasi-sysroot/share/libc++/v1/std/generator.inc +share/wasi-sysroot/share/libc++/v1/std/hazard_pointer.inc +share/wasi-sysroot/share/libc++/v1/std/initializer_list.inc +share/wasi-sysroot/share/libc++/v1/std/iomanip.inc +share/wasi-sysroot/share/libc++/v1/std/ios.inc +share/wasi-sysroot/share/libc++/v1/std/iosfwd.inc +share/wasi-sysroot/share/libc++/v1/std/iostream.inc +share/wasi-sysroot/share/libc++/v1/std/istream.inc +share/wasi-sysroot/share/libc++/v1/std/iterator.inc +share/wasi-sysroot/share/libc++/v1/std/latch.inc +share/wasi-sysroot/share/libc++/v1/std/limits.inc +share/wasi-sysroot/share/libc++/v1/std/list.inc +share/wasi-sysroot/share/libc++/v1/std/locale.inc +share/wasi-sysroot/share/libc++/v1/std/map.inc +share/wasi-sysroot/share/libc++/v1/std/mdspan.inc +share/wasi-sysroot/share/libc++/v1/std/memory.inc +share/wasi-sysroot/share/libc++/v1/std/memory_resource.inc +share/wasi-sysroot/share/libc++/v1/std/mutex.inc +share/wasi-sysroot/share/libc++/v1/std/new.inc +share/wasi-sysroot/share/libc++/v1/std/numbers.inc +share/wasi-sysroot/share/libc++/v1/std/numeric.inc +share/wasi-sysroot/share/libc++/v1/std/optional.inc +share/wasi-sysroot/share/libc++/v1/std/ostream.inc +share/wasi-sysroot/share/libc++/v1/std/print.inc +share/wasi-sysroot/share/libc++/v1/std/queue.inc +share/wasi-sysroot/share/libc++/v1/std/random.inc +share/wasi-sysroot/share/libc++/v1/std/ranges.inc +share/wasi-sysroot/share/libc++/v1/std/ratio.inc +share/wasi-sysroot/share/libc++/v1/std/rcu.inc +share/wasi-sysroot/share/libc++/v1/std/regex.inc +share/wasi-sysroot/share/libc++/v1/std/scoped_allocator.inc +share/wasi-sysroot/share/libc++/v1/std/semaphore.inc +share/wasi-sysroot/share/libc++/v1/std/set.inc +share/wasi-sysroot/share/libc++/v1/std/shared_mutex.inc +share/wasi-sysroot/share/libc++/v1/std/source_location.inc +share/wasi-sysroot/share/libc++/v1/std/span.inc +share/wasi-sysroot/share/libc++/v1/std/spanstream.inc +share/wasi-sysroot/share/libc++/v1/std/sstream.inc +share/wasi-sysroot/share/libc++/v1/std/stack.inc +share/wasi-sysroot/share/libc++/v1/std/stacktrace.inc +share/wasi-sysroot/share/libc++/v1/std/stdexcept.inc +share/wasi-sysroot/share/libc++/v1/std/stdfloat.inc +share/wasi-sysroot/share/libc++/v1/std/stop_token.inc +share/wasi-sysroot/share/libc++/v1/std/streambuf.inc +share/wasi-sysroot/share/libc++/v1/std/string.inc +share/wasi-sysroot/share/libc++/v1/std/string_view.inc +share/wasi-sysroot/share/libc++/v1/std/strstream.inc +share/wasi-sysroot/share/libc++/v1/std/syncstream.inc +share/wasi-sysroot/share/libc++/v1/std/system_error.inc +share/wasi-sysroot/share/libc++/v1/std/text_encoding.inc +share/wasi-sysroot/share/libc++/v1/std/thread.inc +share/wasi-sysroot/share/libc++/v1/std/tuple.inc +share/wasi-sysroot/share/libc++/v1/std/type_traits.inc +share/wasi-sysroot/share/libc++/v1/std/typeindex.inc +share/wasi-sysroot/share/libc++/v1/std/typeinfo.inc +share/wasi-sysroot/share/libc++/v1/std/unordered_map.inc +share/wasi-sysroot/share/libc++/v1/std/unordered_set.inc +share/wasi-sysroot/share/libc++/v1/std/utility.inc +share/wasi-sysroot/share/libc++/v1/std/valarray.inc +share/wasi-sysroot/share/libc++/v1/std/variant.inc +share/wasi-sysroot/share/libc++/v1/std/vector.inc +share/wasi-sysroot/share/libc++/v1/std/version.inc diff --git a/devel/wf-config/Makefile b/devel/wf-config/Makefile index e1ddcb254118..4a04de05a2dd 100644 --- a/devel/wf-config/Makefile +++ b/devel/wf-config/Makefile @@ -1,10 +1,9 @@ PORTNAME= wf-config DISTVERSIONPREFIX= v -DISTVERSION= 0.9.0 -PORTREVISION= 1 +DISTVERSION= 0.10.0 CATEGORIES= devel -MAINTAINER= jbeich@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= Library for managing configuration files, written for wayfire WWW= https://wayfire.org/ diff --git a/devel/wf-config/distinfo b/devel/wf-config/distinfo index e3f1efb30475..780848944efd 100644 --- a/devel/wf-config/distinfo +++ b/devel/wf-config/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1718781348 -SHA256 (WayfireWM-wf-config-v0.9.0_GH0.tar.gz) = 973a47795d3397d281d89c561903867f691c9fe8c3d141ba887afd12902c790d -SIZE (WayfireWM-wf-config-v0.9.0_GH0.tar.gz) = 50246 +TIMESTAMP = 1750573831 +SHA256 (WayfireWM-wf-config-v0.10.0_GH0.tar.gz) = 4264edf9f5f5ff9bccaee1ab3f5b2613a0db526bc90c15d7c82eb05a3fc81307 +SIZE (WayfireWM-wf-config-v0.10.0_GH0.tar.gz) = 51553 diff --git a/devel/wf-config/pkg-plist b/devel/wf-config/pkg-plist index a3c741960162..88d3a973f858 100644 --- a/devel/wf-config/pkg-plist +++ b/devel/wf-config/pkg-plist @@ -7,6 +7,7 @@ include/wayfire/config/option.hpp include/wayfire/config/section.hpp include/wayfire/config/types.hpp include/wayfire/config/xml.hpp +include/wayfire/nonstd/safe-list.hpp include/wayfire/util/duration.hpp include/wayfire/util/log.hpp include/wayfire/util/stringify.hpp diff --git a/editors/vscode/Makefile b/editors/vscode/Makefile index dc3b404cf332..ad4015344afb 100644 --- a/editors/vscode/Makefile +++ b/editors/vscode/Makefile @@ -1,5 +1,6 @@ PORTNAME= vscode DISTVERSION= 1.103.2 +PORTREVISION= 1 CATEGORIES= editors MASTER_SITES= https://github.com/tagattie/FreeBSD-VSCode/releases/download/${DISTVERSION}/:node_modules DISTFILES= vscode-node-modules-${DISTVERSION}${EXTRACT_SUFX}:node_modules \ diff --git a/emulators/Makefile b/emulators/Makefile index 3940ba358293..bdd2eb0d4009 100644 --- a/emulators/Makefile +++ b/emulators/Makefile @@ -158,6 +158,7 @@ SUBDIR += virtualbox-ose SUBDIR += virtualbox-ose-70 SUBDIR += virtualbox-ose-71 + SUBDIR += virtualbox-ose-72 SUBDIR += virtualbox-ose-additions SUBDIR += virtualbox-ose-additions-legacy SUBDIR += virtualbox-ose-additions-nox11 @@ -165,11 +166,13 @@ SUBDIR += virtualbox-ose-kmod SUBDIR += virtualbox-ose-kmod-70 SUBDIR += virtualbox-ose-kmod-71 + SUBDIR += virtualbox-ose-kmod-72 SUBDIR += virtualbox-ose-kmod-legacy SUBDIR += virtualbox-ose-legacy SUBDIR += virtualbox-ose-nox11 SUBDIR += virtualbox-ose-nox11-70 SUBDIR += virtualbox-ose-nox11-71 + SUBDIR += virtualbox-ose-nox11-72 SUBDIR += virtualbox-ose-nox11-legacy SUBDIR += visualboyadvance-m SUBDIR += vmips diff --git a/emulators/ares/Makefile b/emulators/ares/Makefile index d2e59fa9646a..0ce6c3aaf5c9 100644 --- a/emulators/ares/Makefile +++ b/emulators/ares/Makefile @@ -1,10 +1,10 @@ PORTNAME= ares DISTVERSIONPREFIX= v -DISTVERSION= 145 -PORTREVISION= 1 +DISTVERSION= 146 CATEGORIES= emulators MASTER_SITES= https://github.com/${PORTNAME}-emulator/${PORTNAME}/releases/download/${DISTVERSIONFULL}/ DISTNAME= ${PORTNAME}-source +DIST_SUBDIR= ${PORTNAME}-${DISTVERSION} MAINTAINER= bsdcode@disroot.org COMMENT= Multi-system emulator @@ -29,10 +29,15 @@ CMAKE_OFF= ARES_BUILD_LOCAL \ ARES_BUNDLE_SHADERS \ ARES_ENABLE_MINIMUM_CPU -EXTRACT_AFTER_ARGS= --exclude thirdparty/librashader \ +EXTRACT_AFTER_ARGS= --exclude thirdparty/GL \ + --exclude thirdparty/KHR \ + --exclude thirdparty/libchdr \ + --exclude thirdparty/librashader \ + --exclude thirdparty/sse2neon.h \ + --exclude thirdparty/xxhash.h \ --no-same-owner --no-same-permissions -WRKSRC= ${WRKDIR}/${PORTNAME}-${DISTVERSION} +NO_WRKSUBDIR= yes OPTIONS_DEFINE= CHD SDL TOOLS OPTIONS_DEFAULT= A26 ALSA AO CHD CV FC GB GBA LIBRASHADER \ @@ -92,8 +97,9 @@ ALSA_CMAKE_BOOL= ARES_ENABLE_ALSA AO_LIB_DEPENDS= libao.so:audio/libao AO_CMAKE_BOOL= ARES_ENABLE_AO -CHD_CMAKE_BOOL= ARES_ENABLE_CHD \ - WITH_SYSTEM_ZLIB +CHD_LIB_DEPENDS= libchdr.so:devel/libchdr +CHD_USES= localbase +CHD_CMAKE_BOOL= ARES_ENABLE_CHD CV_VARS= _CORES+=cv @@ -115,6 +121,8 @@ LIBRETRO_RUN_DEPENDS= ${_LIBRETRO_BR_DEPENDS} LTO_CMAKE_BOOL= ENABLE_IPO +MD_BUILD_DEPENDS= xxhash>0:devel/xxhash +MD_USES= localbase MD_VARS= _CORES+=md MSX_VARS= _CORES+=msx @@ -124,8 +132,12 @@ MS_VARS= _CORES+=ms MYVISION_VARS= _CORES+=myvision _N64_BR_DEPENDS= vulkan-loader>0:graphics/vulkan-loader -N64_BUILD_DEPENDS= ${_N64_BR_DEPENDS} +_N64_BUILD_DEPENDS_aarch64= sse2neon>0:devel/sse2neon +N64_BUILD_DEPENDS= ${_N64_BR_DEPENDS} \ + ${_N64_BUILD_DEPENDS_${ARCH}} \ + xxhash>0:devel/xxhash N64_RUN_DEPENDS= ${_N64_BR_DEPENDS} +N64_USES= localbase N64_VARS= _CORES+=n64 NGP_VARS= _CORES+=ngp @@ -157,8 +169,6 @@ SG_VARS= _CORES+=sg SPEC_VARS= _CORES+=spec -# https://github.com/ares-emulator/ares/issues/2090 -TOOLS_IMPLIES= GBA MD NG SFC TOOLS_CMAKE_BOOL= ARES_BUILD_OPTIONAL_TARGETS UDEV_LIB_DEPENDS= libudev.so:devel/libudev-devd @@ -168,6 +178,20 @@ USBHID_CMAKE_BOOL= ARES_ENABLE_USBHID WS_VARS= _CORES+=ws +.include <bsd.port.options.mk> + +.if ${PORT_OPTIONS:MTOOLS} && (${PORT_OPTIONS:MGBA} || ${PORT_OPTIONS:MSFC}) +PLIST_SUB+= TOOLSARM7TDMI="" +.else +PLIST_SUB+= TOOLSARM7TDMI="@comment " +.endif + +.if ${PORT_OPTIONS:MTOOLS} && (${PORT_OPTIONS:MMD} || ${PORT_OPTIONS:MNG}) +PLIST_SUB+= TOOLSM68000="" +.else +PLIST_SUB+= TOOLSM68000="@comment " +.endif + post-patch: ${REINPLACE_CMD} 's|/usr/local|${LOCALBASE}|g' \ ${WRKSRC}/cmake/finders/* diff --git a/emulators/ares/distinfo b/emulators/ares/distinfo index 6d6b5f6a7b60..5cdf41f6260d 100644 --- a/emulators/ares/distinfo +++ b/emulators/ares/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1752185303 -SHA256 (ares-source.tar.gz) = 7a76acf87cca2903552683347fdf6f1cd06f436fa4e0c247108688785cbbd14b -SIZE (ares-source.tar.gz) = 8967048 +TIMESTAMP = 1756454355 +SHA256 (ares-146/ares-source.tar.gz) = 0f0b878c19ce09dab57584235e9c639c4c14a0bd1de6cef50238f006bd797bf1 +SIZE (ares-146/ares-source.tar.gz) = 9021617 diff --git a/emulators/ares/files/patch-thirdparty_CMakeLists.txt b/emulators/ares/files/patch-thirdparty_CMakeLists.txt new file mode 100644 index 000000000000..0a9b749623bd --- /dev/null +++ b/emulators/ares/files/patch-thirdparty_CMakeLists.txt @@ -0,0 +1,75 @@ +--- thirdparty/CMakeLists.txt.orig 2025-08-27 21:41:50 UTC ++++ thirdparty/CMakeLists.txt +@@ -7,55 +7,9 @@ if(ARES_ENABLE_CHD) + option(ARES_ENABLE_CHD "Enable CHD format support via libchdr" ON) + + if(ARES_ENABLE_CHD) +- # lzma +- add_subdirectory(libchdr/deps/lzma-24.05 EXCLUDE_FROM_ALL) +- list(APPEND CHDR_LIBS lzma) +- list(APPEND CHDR_INCLUDES lzma) +- +- if(OS_MACOS) +- option(WITH_SYSTEM_ZLIB "Use system zlib" ON) +- endif() +- # zlib +- if(WITH_SYSTEM_ZLIB) +- find_package(ZLIB REQUIRED) +- list(APPEND PLATFORM_LIBS ZLIB::ZLIB) +- else() +- option(ZLIB_BUILD_EXAMPLES "Enable Zlib Examples" OFF) +- add_subdirectory(libchdr/deps/zlib-1.3.1 EXCLUDE_FROM_ALL) +- set_target_properties( +- zlibstatic +- PROPERTIES POSITION_INDEPENDENT_CODE ON FOLDER thirdparty PREFIX "" +- ) +- list(APPEND CHDR_LIBS zlibstatic) +- endif() +- +- # zstd +- option(ZSTD_BUILD_SHARED "BUILD SHARED LIBRARIES" OFF) +- option(ZSTD_BUILD_PROGRAMS "BUILD PROGRAMS" OFF) +- add_subdirectory(libchdr/deps/zstd-1.5.6/build/cmake EXCLUDE_FROM_ALL) +- list(APPEND CHDR_LIBS libzstd_static) +- #-------------------------------------------------- +- # chdr +- #-------------------------------------------------- +- +- set( +- CHDR_SOURCES +- libchdr/src/libchdr_bitstream.c +- libchdr/src/libchdr_cdrom.c +- libchdr/src/libchdr_chd.c +- libchdr/src/libchdr_flac.c +- libchdr/src/libchdr_huffman.c +- ) +- +- list(APPEND CHDR_INCLUDES ${CMAKE_CURRENT_BINARY_DIR}/libchdr/include) +- +- add_library(chdr-static STATIC ${CHDR_SOURCES}) +- target_include_directories(chdr-static PUBLIC ${CHDR_INCLUDES} PUBLIC libchdr/include) +- target_link_libraries(chdr-static PRIVATE ${CHDR_LIBS} ${PLATFORM_LIBS}) +- target_compile_options( +- chdr-static +- PRIVATE $<$<CXX_COMPILER_ID:Clang,AppleClang>:-Wno-unreachable-code -Wno-unused-function> +- ) ++ find_package(PkgConfig REQUIRED) ++ pkg_check_modules(libchdr REQUIRED IMPORTED_TARGET GLOBAL libchdr) ++ add_library(chdr-static ALIAS PkgConfig::libchdr) + endif() + + add_library( +@@ -111,12 +65,4 @@ set_target_properties(sljit PROPERTIES FOLDER thirdpar + set_target_properties(ymfm PROPERTIES FOLDER thirdparty PREFIX "") + set_target_properties(tzxfile PROPERTIES FOLDER thirdparty PREFIX "") + set_target_properties(sljit PROPERTIES FOLDER thirdparty PREFIX "") +-if(ARES_ENABLE_CHD) +- set_target_properties(chdr-static PROPERTIES FOLDER thirdparty PREFIX "") +- if(NOT WITH_SYSTEM_ZLIB) +- set_target_properties(zlib PROPERTIES FOLDER thirdparty PREFIX "") +- endif() +- set_target_properties(lzma PROPERTIES FOLDER thirdparty PREFIX "") +- set_target_properties(libzstd_static PROPERTIES FOLDER thirdparty PREFIX "") +-endif() + set_target_properties(qon PROPERTIES FOLDER thirdparty PREFIX "") +\ No newline at end of file diff --git a/emulators/ares/pkg-descr b/emulators/ares/pkg-descr index 1d1df5876394..51eba6b65b62 100644 --- a/emulators/ares/pkg-descr +++ b/emulators/ares/pkg-descr @@ -3,14 +3,15 @@ preservation. It is a descendant of the emulators higan and bsnes. It's source code is structured to be maximally readable and self-documenting. ares supports the following systems: Arcade, WonderSwan, WonderSwan Color, -Pocket Challenge V2, ColecoVision, PC-Engine / TurboGrafx, SuperGrafx, My -Vision, NES / Famicom, Famicom Disk System, SNES / Super Famicom, Satellaview, -Sufami Turbo, Nintendo 64, Nintendo 64DD, Game Boy, Game Boy Color, Game Boy -Advance, SG-1000, Master System / Mark III, Mega Drive / Genesis, Mega CD, 32X, -Game Gear, Neo Geo Pocket, Neo Geo Pocket Color +Pocket Challenge V2, ColecoVision, PC-Engine / TurboGrafx, PC-Engine SuperGrafx, +My Vision, NES / Famicom, Famicom Disk System, Game Boy, SNES / Super Famicom, +Satellaview, Nintendo 64, SuFami Turbo, Game Boy Color, Nintendo 64DD, Game Boy +Advance, SG-1000, Master System / Mark III, Mega Drive / Genesis, Game Gear, +Mega CD, 32X, Neo Geo Pocket, Neo Geo Pocket Color ares has experimental support for the following systems: Atari 2600, MSX, MSX2, -PC-Engine CD / TurboGrafx CD, ZX Spectrum, Neo Geo (AES/MVS), PlayStation +PC-Engine CD / TurboGrafx CD, LaserActive, ZX Spectrum, Neo Geo (AES/MVS), +PlayStation ares has all the features one would expect from a great emulator system: native multi-platform UI, dynamic rate control, save states, run-ahead, rewind and diff --git a/emulators/ares/pkg-plist b/emulators/ares/pkg-plist index 035623ec753e..476ac9756832 100644 --- a/emulators/ares/pkg-plist +++ b/emulators/ares/pkg-plist @@ -1,8 +1,8 @@ bin/ares -%%TOOLS%%bin/arm7tdmi +%%TOOLSARM7TDMI%%bin/arm7tdmi %%TOOLS%%bin/genius %%TOOLS%%bin/i8080 -%%TOOLS%%bin/m68000 +%%TOOLSM68000%%bin/m68000 %%TOOLS%%bin/mame2bml %%TOOLS%%bin/mia bin/sourcery diff --git a/emulators/virtualbox-ose-70/Makefile b/emulators/virtualbox-ose-70/Makefile index 7b6efa0001d2..4d7dea9d02ca 100644 --- a/emulators/virtualbox-ose-70/Makefile +++ b/emulators/virtualbox-ose-70/Makefile @@ -45,7 +45,9 @@ CONFLICTS_INSTALL= virtualbox-ose-legacy \ virtualbox-ose \ virtualbox-ose-nox11 \ virtualbox-ose-71 \ - virtualbox-ose-nox11-71 + virtualbox-ose-nox11-71 \ + virtualbox-ose-72 \ + virtualbox-ose-nox11-72 PORTSCOUT= limit:^7\.0\. SUB_FILES= pkg-message diff --git a/emulators/virtualbox-ose-71/Makefile b/emulators/virtualbox-ose-71/Makefile index 9b0d18590c7e..7b5d79a0d306 100644 --- a/emulators/virtualbox-ose-71/Makefile +++ b/emulators/virtualbox-ose-71/Makefile @@ -44,7 +44,9 @@ CONFLICTS_INSTALL= virtualbox-ose-legacy \ virtualbox-ose \ virtualbox-ose-nox11 \ virtualbox-ose-70 \ - virtualbox-ose-nox11-70 + virtualbox-ose-nox11-70 \ + virtualbox-ose-72 \ + virtualbox-ose-nox11-72 PORTSCOUT= limit:^7\.1\. SUB_FILES= pkg-message diff --git a/emulators/virtualbox-ose-71/files/patch-src-VBox-Runtime-Makefile.kmk b/emulators/virtualbox-ose-71/files/patch-src-VBox-Runtime-Makefile.kmk deleted file mode 100644 index f13be222ea9a..000000000000 --- a/emulators/virtualbox-ose-71/files/patch-src-VBox-Runtime-Makefile.kmk +++ /dev/null @@ -1,14 +0,0 @@ ---- src/VBox/Runtime/Makefile.kmk.orig 2021-01-07 15:41:50 UTC -+++ src/VBox/Runtime/Makefile.kmk -@@ -177,6 +177,11 @@ $(IPRT_OUT_DIR)/oiddb.h.ts +| $(IPRT_OUT_DIR)/oiddb.h: - - - # -+# Set the defines that utf8-posix.cpp needs. It's used by several targets. -+# -+r3/posix/utf8-posix.cpp_DEFS.freebsd = $(VBOX_ICONV_DEFS) -+ -+# - # Unicode Specification reader used to regenerate unidata-*.cpp. - # - uniread_TEMPLATE = VBoxBldProg diff --git a/emulators/virtualbox-ose-72/Makefile b/emulators/virtualbox-ose-72/Makefile new file mode 100644 index 000000000000..3110b3efe1aa --- /dev/null +++ b/emulators/virtualbox-ose-72/Makefile @@ -0,0 +1,426 @@ +PORTNAME= virtualbox-ose +DISTVERSION= 7.2.0 +PORTREVISION?= 0 +CATEGORIES= emulators +MASTER_SITES= https://download.virtualbox.org/virtualbox/${DISTVERSION}/:src \ + LOCAL/vvd:docs +PKGNAMESUFFIX?= -72 +DISTFILES= VirtualBox-${DISTVERSION}${EXTRACT_SUFX}:src \ + VirtualBox-docs-${DISTVERSION}${EXTRACT_SUFX}:docs +EXTRACT_ONLY= VirtualBox-${DISTVERSION}${EXTRACT_SUFX} \ + VirtualBox-docs-${DISTVERSION}${EXTRACT_SUFX} + +MAINTAINER= vbox@FreeBSD.org +COMMENT= General-purpose full virtualizer for x86 hardware +WWW= https://www.virtualbox.org/ + +LICENSE= GPLv2 +LICENSE_FILE= ${WRKSRC}/COPYING + +ONLY_FOR_ARCHS= amd64 + +BUILD_DEPENDS= gtar:archivers/gtar \ + kmk:devel/kBuild \ + yasm:devel/yasm \ + xsltproc:textproc/libxslt +LIB_DEPENDS= libpng.so:graphics/png \ + libcurl.so:ftp/curl +RUN_DEPENDS= ${LOCALBASE}/etc/rc.d/vboxnet:emulators/virtualbox-ose-kmod-72 + +USES= compiler:c++17-lang cpe gnome iconv pkgconfig qt:6 ssl tar:bzip2 +CPE_VENDOR= oracle +CPE_PRODUCT= vm_virtualbox +USE_BINUTILS= yes +USE_GNOME= libxml2 +USE_QT= tools:build +USE_RC_SUBR= vboxheadless vboxwatchdog + +HAS_CONFIGURE= yes +CONFIGURE_ARGS= --disable-java --passive-mesa --disable-docs +CONFIGURE_ARGS+= --with-gcc="${CC}" --with-g++="${CXX}" + +CONFLICTS_INSTALL= virtualbox-ose-legacy \ + virtualbox-ose-nox11-legacy \ + virtualbox-ose \ + virtualbox-ose-nox11 \ + virtualbox-ose-70 \ + virtualbox-ose-nox11-70 \ + virtualbox-ose-71 \ + virtualbox-ose-nox11-71 + +PORTSCOUT= limit:^7\.2\. +SUB_FILES= pkg-message +SUB_LIST= VBOXDIR=${VBOX_DIR} \ + VBOX_ETC=${VBOX_ETC} \ + VBOXGROUP=${VBOXGROUP} \ + VBOXUSER=${VBOXUSER} \ + VBOXWSUSER=${VBOXWSUSER} + +WRKSRC= ${WRKDIR}/VirtualBox-${DISTVERSION} + +VBOXUSER?= vboxusers +VBOXWSUSER?= vboxusers +VBOXGROUP?= vboxusers +USERS= ${VBOXUSER} +GROUPS= ${VBOXGROUP} +VBOX_DIR= ${PREFIX}/${VBOX_DIR_REL} +VBOX_DIR_REL= lib/virtualbox +VBOX_ETC= ${PREFIX}/etc/vbox +VBOX_LINKS= VBoxVRDP +VBOX_PROGS= VBoxAutostart VBoxBalloonCtrl VBoxBugReport VBoxHeadless \ + VBoxManage +VBOX_UTILS= VBoxExtPackHelperApp VBoxNetAdpCtl VBoxNetDHCP VBoxNetNAT \ + VBoxSVC + +PLIST_SUB= GUEST_VER=${DISTVERSION} \ + PYTHON_VERU=${PYTHON_VER:S/./_/}${PYTHON_ABIVER} \ + VBOXGROUP=${VBOXGROUP} + +SLAVE_PORT?= no + +OPTIONS_DEFINE= AIO ALSA DBUS DEBUG DOCS GUESTADDITIONS NLS OGG PULSEAUDIO \ + PYTHON QT6 R0LOGGING UDPTUNNEL VBOXIMG VDE VNC VORBIS VPX \ + WEBSERVICE X11 +OPTIONS_DEFAULT= AIO DBUS QT6 UDPTUNNEL VNC WEBSERVICE X11 +.if ${SLAVE_PORT} == no +OPTIONS_DEFAULT+= PYTHON +.endif +# Since version 6.1.24 pulseaudio is broken at runtime, preventing +# virtual machines from starting if configured to use it. +OPTIONS_EXCLUDE+= PULSEAUDIO +OPTIONS_SUB= yes + +AIO_DESC= Enable Asyncronous IO support (check pkg-message) +DEBUG_DESC= Debug symbols, additional logs and assertions +GUESTADDITIONS_DESC= Build with Guest Additions +NLS_DESC= Native language support (requires QT6) +OGG_DESC= Use libogg from audio/libogg instead of bundled one +QT6_DESC= Build with QT6 frontend (requires X11) +R0LOGGING_DESC= Enable R0 logging (requires DEBUG) +UDPTUNNEL_DESC= Build with UDP tunnel support +VBOXIMG_DESC= Build vboximg-mount (requires fuse-libs) +VDE_DESC= Build with VDE support +VNC_DESC= Build with VNC support +VORBIS_DESC= Use libvorbis from audio/libvorbis instead of bundled one +VPX_DESC= Use libvpx for video recording +WEBSERVICE_DESC= Build Webservice + +ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib +ALSA_CONFIGURE_OFF= --disable-alsa +DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus +DBUS_CONFIGURE_OFF= --disable-dbus +DEBUG_CONFIGURE_ON= --build-debug +NLS_IMPLIES= QT6 +OGG_LIB_DEPENDS= libogg.so:audio/libogg +OGG_CONFIGURE_ON= --enable-libogg +PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio +PULSEAUDIO_CONFIGURE_OFF= --disable-pulse +PYTHON_USES= python +PYTHON_USES_OFF= python:build +PYTHON_USE= PYTHON=distutils,noegginfo,noflavors +PYTHON_CONFIGURE_OFF= --disable-python +PYTHON_VARS= pydistutils_pkgname=vboxapi pydistutils_pkgversion=1.0 +QT6_IMPLIES= X11 +QT6_USES= gl qmake:no_env qt:6 xorg +QT6_USE= QT=base,scxml,tools,translations \ + XORG=xcb GL=gl +QT6_CONFIGURE_OFF= --disable-qt +R0LOGGING_IMPLIES= DEBUG +UDPTUNNEL_CONFIGURE_OFF= --disable-udptunnel +VBOXIMG_LIB_DEPENDS= libfuse.so.2:filesystems/fusefs-libs +VDE_RUN_DEPENDS= vde_switch:net/vde2 +VDE_CONFIGURE_ON= --enable-vde +VNC_LIB_DEPENDS= libvncserver.so:net/libvncserver +VNC_CONFIGURE_ON= --enable-vnc +VORBIS_LIB_DEPENDS= libvorbis.so:audio/libvorbis \ + libvorbisenc.so:audio/libvorbis +VORBIS_CONFIGURE_ON= --enable-libvorbis +VPX_LIB_DEPENDS= libvpx.so:multimedia/libvpx +VPX_CONFIGURE_OFF= --disable-libvpx +WEBSERVICE_BUILD_DEPENDS= soapcpp2:devel/gsoap +X11_USES= sdl xorg +X11_USE= SDL=sdl XORG=x11,xcursor,xext,xinerama,xmu,xorgproto,xt +X11_CONFIGURE_OFF= --build-headless + +ENV= +.export ENV + +.include <bsd.port.options.mk> + +.if ${SLAVE_PORT} == no +CONFLICTS_INSTALL+= virtualbox-ose-nox11-72 +.else +CONFLICTS_INSTALL+= virtualbox-ose-72 +.endif + +.if ${PORT_OPTIONS:MDEBUG} +KMK_BUILDTYPE= debug +KMK_FLAGS+= BUILD_TYPE=debug +.else +KMK_BUILDTYPE= release +.endif + +.if ${PORT_OPTIONS:MGUESTADDITIONS} +GUESTADDITIONS= VBoxGuestAdditions_${DISTVERSION}.iso +DISTFILES+= ${GUESTADDITIONS}:src +LICENSE+= Additions +LICENSE_COMB= multi +LICENSE_NAME_Additions= Guest Additions +LICENSE_PERMS_Additions= auto-accept +LICENSE_DISTFILES_Additions= ${GUESTADDITIONS} +.endif + +.if ${PORT_OPTIONS:MQT6} +PLIST_SUB+= QT="" +VBOX_PROGS+= VirtualBox VirtualBoxVM +VBOX_WITH_QT= 1 +.else +PLIST_SUB+= QT="@comment " +.endif + +.if ${PORT_OPTIONS:MWEBSERVICE} +USE_RC_SUBR+= vboxinit vboxwebsrv +VBOX_LINKS+= vboxwebsrv +VBOX_UTILS+= vboxwebsrv webtest +.endif + +.if ${PORT_OPTIONS:MX11} +#VBOX_PROGS+= VBoxSDL +.endif + +.if ${PORT_OPTIONS:MPYTHON} || ${PORT_OPTIONS:MWEBSERVICE} +PLIST_SUB+= SDK="" +.else +PLIST_SUB+= SDK="@comment " +.endif + +.if ${PORT_OPTIONS:MVBOXIMG} +EXTRA_PATCHES+= ${PATCHDIR}/extrapatch-vboximg-Config.kmk +VBOX_UTILS+= vboximg-mount +PLIST_SUB+= VBOXIMG="" +.else +PLIST_SUB+= VBOXIMG="@comment " +.endif + +KMK_ARCH= freebsd.${ARCH} +PLIST_SUB+= ARCH="${KMK_ARCH}" + +KMK_BUILDDIR= ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE} +KMK_CONFIG= VBOX_LIBPATH_X11=${LOCALBASE} VBOX_FREEBSD_SRC=${SRC_BASE}/sys VBOX_WITHOUT_DOCS=1 VBOX_GCC_std=-std=c++17 +KMK_FLAGS+= -j${MAKE_JOBS_NUMBER} + +.include <bsd.port.pre.mk> + +.if ${CHOSEN_COMPILER_TYPE} == clang +PATCH_DEPENDS+= ${LOCALBASE}/share/kBuild/tools/GXX3.kmk:devel/kBuild +.endif + +.if ${PYTHON_MAJOR_VER} >= 3 +PLIST_SUB+= PYTHON_PYCDIR=/__pycache__/ \ + PYTHON_PYCEXT=.cpython-${PYTHON_SUFFIX}.pyc +.else +PLIST_SUB+= PYTHON_PYCDIR=/ \ + PYTHON_PYCEXT=.pyc +.endif + +.if ${SSL_DEFAULT} != base +CONFIGURE_ARGS+= --with-openssl-dir="${OPENSSLBASE}" +.endif + +post-patch: + @${ECHO_CMD} 'VBOX_PATH_APP_PRIVATE_ARCH = ${VBOX_DIR}' > \ + ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_PATH_DOCBOOK = ${DBKXSLDIR}' >> \ + ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_PATH_DOCBOOK_DTD = ${DBKXMLDIR}' >> \ + ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_PATH_SHARED_LIBS = ${VBOX_DIR}' >> \ + ${WRKSRC}/LocalConfig.kmk + # Please keep this even if using Clang to avoid repeated regressions. + # PR 245048 + @${ECHO_CMD} "VBOX_WITH_RUNPATH = ${_GCC_RUNTIME:D${_GCC_RUNTIME}\:}${VBOX_DIR}" >> \ + ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_PATH_APP_PRIVATE = ${DATADIR}' >> \ + ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_PATH_APP_DOCS = ${DOCSDIR}' >> ${WRKSRC}/LocalConfig.kmk +.if ${SSL_DEFAULT} != base + @${ECHO_CMD} 'VBOX_WITH_ALT_HASH_CODE = 1' >> ${WRKSRC}/LocalConfig.kmk +.endif + @${ECHO_CMD} 'VBOX_WITH_EXTPACK_VBOXDTRACE =' >> ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_WITH_INSTALLER = 1' >> ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_WITH_VBOXDRV =' >> ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_WITH_TESTCASES =' >> ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'SDK_VBOX_LIBPNG_INCS = ${PREFIX}/include/libpng' >> \ + ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'SDK_VBOX_LIBPNG_LIBS = png' >> ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_WITH_ADDITIONS =' >> ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_WITH_DRAG_AND_DROP = ${VBOX_WITH_QT}' >> \ + ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_WITH_DRAG_AND_DROP_GH = ${VBOX_WITH_QT}' >> \ + ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_WITH_VALIDATIONKIT =' >> ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_WITH_X11_ADDITIONS =' >> ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_BLD_PYTHON = ${LOCALBASE}/bin/${PYTHON_VERSION}' >> \ + ${WRKSRC}/LocalConfig.kmk +.if ${PORT_OPTIONS:MR0LOGGING} + @${ECHO_CMD} 'VBOX_WITH_R0_LOGGING = 1' >> ${WRKSRC}/LocalConfig.kmk +.endif +.if ${PORT_OPTIONS:MWEBSERVICE} + @${ECHO_CMD} 'VBOX_WITH_WEBSERVICES = 1' >> ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_GSOAP_INSTALLED = 1' >> ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_PATH_GSOAP = ${PREFIX}/lib/gsoap' >> \ + ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_PATH_GSOAP_BIN = ${PREFIX}/bin' >> \ + ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_PATH_GSOAP_IMPORT = ${PREFIX}/share/gsoap/import' >> \ + ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_GCC_PEDANTIC_CXX = -Wshadow $$(VBOX_GCC_WARN) -Wno-long-long' >> \ + ${WRKSRC}/LocalConfig.kmk +.endif +.if empty(PORT_OPTIONS:MX11) + @${ECHO} 'VBOX_WITH_VMSVGA3D =' >> ${WRKSRC}/LocalConfig.kmk +.endif +.if ${CHOSEN_COMPILER_TYPE} == clang + @${REINPLACE_CMD} -e 's| -finline-limit=8000||' \ + -e 's| -mpreferred-stack-boundary=2||' ${WRKSRC}/Config.kmk + @${REINPLACE_CMD} -e 's| -fpermissive||' ${WRKSRC}/Config.kmk \ + ${WRKSRC}/src/VBox/Main/webservice/Makefile.kmk + @${ECHO_CMD} 'TOOL_VBoxGccFreeBSD_LD = ${CXX}' >> ${WRKSRC}/LocalConfig.kmk + @${SED} -e 's|GXX3|VBoxGccFreeBSD|g' \ + ${LOCALBASE}/share/kBuild/tools/GXX3.kmk > \ + ${WRKSRC}/tools/kBuildTools/VBoxGccFreeBSD.kmk +.endif +.if ${OPSYS} == FreeBSD && ${OSVERSION} >= 1500013 + @${ECHO_CMD} 'VBoxSVC_LDFLAGS.freebsd = -lsys' >> ${WRKSRC}/LocalConfig.kmk +.endif + # Causes a "reinplace" QA warning with default LOCALBASE + @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \ + ${WRKSRC}/Config.kmk ${WRKSRC}/configure \ + ${WRKSRC}/kBuild/header.kmk ${WRKSRC}/kBuild/units/qt4.kmk \ + ${WRKSRC}/kBuild/units/qt5.kmk ${WRKSRC}/kBuild/units/qt6.kmk ${WRKSRC}/kBuild/sdks/LIBSDL.kmk \ + ${WRKSRC}/src/libs/xpcom18a4/python/gen_python_deps.py + @${REINPLACE_CMD} \ + -e 's|\$$KBUILDDIR_BIN/kmk_sed|${LOCALBASE}/bin/kmk_sed|g' \ + -e 's|SUPPYTHONLIBS=.*|SUPPYTHONLIBS="${PYTHON_VERSION}${PYTHON_ABIVER}"|' \ + ${WRKSRC}/configure +.if empty(ICONV_LIB) + @${REINPLACE_CMD} -e 's|iconv||' ${WRKSRC}/Config.kmk \ + ${WRKSRC}/src/VBox/Runtime/Makefile.kmk + @${ECHO_CMD} 'VBOX_ICONV_DEFS = LIBICONV_PLUG' >> ${WRKSRC}/LocalConfig.kmk +.endif + @${REINPLACE_CMD} -e 's|%%VBOX_DIR%%|${VBOX_DIR}|g' \ + -e 's|%%VBOX_ETC%%|${VBOX_ETC}|g' \ + -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \ + ${WRKSRC}/src/VBox/Installer/freebsd/VBox.sh + @${REINPLACE_CMD} -e 's|%%VBOX_ETC%%|${VBOX_ETC}|g' \ + ${WRKSRC}/src/VBox/HostDrivers/adpctl/VBoxNetAdpCtl.cpp + @${REINPLACE_CMD} \ + -e 's|^versions =.*|versions = ["${PYTHON_VER}${PYTHON_ABIVER}"]|' \ + ${WRKSRC}/src/libs/xpcom18a4/python/gen_python_deps.py + +post-patch-AIO-off: + @${REINPLACE_CMD} 's|r3/freebsd/fileaio-freebsd.cpp|r3/posix/fileaio-posix.cpp|' \ + ${WRKSRC}/src/VBox/Runtime/Makefile.kmk + +do-build: + cd ${WRKSRC} && ${SH} -c '. ${WRKSRC}/env.sh && \ + ${SETENV} ${MAKE_ENV} ${KMK_CONFIG} ${LOCALBASE}/bin/kmk ${KMK_FLAGS}' +.if ${PORT_OPTIONS:MPYTHON} + ${PYTHON_CMD} -mcompileall \ + ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom/python/xpcom +.endif + +do-install: +.if ${PORT_OPTIONS:MPYTHON} || ${PORT_OPTIONS:MWEBSERVICE} + ${MKDIR} ${STAGEDIR}${DATADIR}/sdk +.endif + cd ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom && \ + ${COPYTREE_SHARE} "idl samples" ${STAGEDIR}${DATADIR} + + ${MKDIR} ${STAGEDIR}${PREFIX}/include/virtualbox + cd ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom/include && \ + ${COPYTREE_SHARE} "*" ${STAGEDIR}${PREFIX}/include/virtualbox + + ${MKDIR} ${STAGEDIR}${VBOX_DIR} + cd ${KMK_BUILDDIR}/bin && ${COPYTREE_SHARE} \ + "*.fd *.r0 *.so components" ${STAGEDIR}${VBOX_DIR} +.if ${PORT_OPTIONS:MPYTHON} || ${PORT_OPTIONS:MWEBSERVICE} + ${RLN} ${STAGEDIR}${DATADIR}/sdk ${STAGEDIR}${VBOX_DIR} +.endif + + ${INSTALL_SCRIPT} ${WRKSRC}/src/VBox/Installer/freebsd/VBox.sh \ + ${STAGEDIR}${VBOX_DIR} +.for f in ${VBOX_PROGS} ${VBOX_UTILS} + ${INSTALL_PROGRAM} ${KMK_BUILDDIR}/bin/${f} ${STAGEDIR}${VBOX_DIR} +.endfor +.for f in ${VBOX_PROGS} ${VBOX_LINKS} + ${LN} -fs ../${VBOX_DIR_REL}/VBox.sh ${STAGEDIR}${PREFIX}/bin/${f} +.endfor +.for f in ${VBOX_PROGS} + ${LN} -fs ../${VBOX_DIR_REL}/VBox.sh ${STAGEDIR}${PREFIX}/bin/${f:tl} +.endfor + +.if ${PORT_OPTIONS:MGUESTADDITIONS} + ${MKDIR} ${STAGEDIR}${VBOX_DIR}/additions + ${INSTALL_DATA} ${DISTDIR}/${GUESTADDITIONS} \ + ${STAGEDIR}${VBOX_DIR}/additions/ + ${RLN} ${STAGEDIR}${VBOX_DIR}/additions/${GUESTADDITIONS} \ + ${STAGEDIR}${VBOX_DIR}/additions/VBoxGuestAdditions.iso +.endif + +.if ${PORT_OPTIONS:MDOCS} + ${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${WRKDIR}/VirtualBox-docs-${DISTVERSION}/UserManual.pdf \ + ${STAGEDIR}${DOCSDIR} +.endif + +.if ${PORT_OPTIONS:MNLS} + cd ${KMK_BUILDDIR}/obj/VirtualBox/qtnls && \ + ${COPYTREE_SHARE} "*.qm" ${STAGEDIR}${DATADIR}/nls +.endif + +.if ${PORT_OPTIONS:MPYTHON} + cd ${KMK_BUILDDIR}/bin/sdk/installer/python && \ + ${SETENV} VBOX_INSTALL_PATH="${VBOX_DIR}" \ + ${PYTHON_CMD} vboxapisetup.py install --root=${STAGEDIR} + + @${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR}/xpcom + cd ${KMK_BUILDDIR}/bin/sdk/bindings/xpcom/python/xpcom && \ + ${COPYTREE_SHARE} "*" ${STAGEDIR}${PYTHON_SITELIBDIR}/xpcom + @${MKDIR} ${STAGEDIR}${DATADIR}/sdk/bindings/xpcom/python + ${RLN} ${STAGEDIR}${PYTHON_SITELIBDIR}/xpcom \ + ${STAGEDIR}${DATADIR}/sdk/bindings/xpcom/python +.endif + +.if ${PORT_OPTIONS:MQT6} + ${INSTALL_DATA} \ + ${WRKSRC}/src/VBox/Frontends/VirtualBox/images/OSE/VirtualBox_48px.png \ + ${STAGEDIR}${PREFIX}/share/pixmaps/VBox.png + ${INSTALL_DATA} \ + ${FILESDIR}/virtualbox.desktop \ + ${STAGEDIR}${PREFIX}/share/applications/virtualbox.desktop +.endif + +.if ${PORT_OPTIONS:MVNC} + ${MKDIR} ${STAGEDIR}${VBOX_DIR}/ExtensionPacks/VNC/${KMK_ARCH} + ${INSTALL_DATA} ${KMK_BUILDDIR}/bin/ExtensionPacks/VNC/ExtPack* \ + ${STAGEDIR}${VBOX_DIR}/ExtensionPacks/VNC/ + ${INSTALL_LIB} ${KMK_BUILDDIR}/bin/ExtensionPacks/VNC/${KMK_ARCH}/* \ + ${STAGEDIR}${VBOX_DIR}/ExtensionPacks/VNC/${KMK_ARCH}/ +.endif + +.if ${PORT_OPTIONS:MVBOXIMG} + ${LN} -fs ../${VBOX_DIR_REL}/vboximg-mount ${STAGEDIR}${PREFIX}/bin/ +.endif + +.if ${PORT_OPTIONS:MWEBSERVICE} + ${MKDIR} ${STAGEDIR}${DATADIR}/sdk/bindings/webservice + ${INSTALL_DATA} ${KMK_BUILDDIR}/obj/webservice/vboxweb.wsdl \ + ${STAGEDIR}${DATADIR}/sdk/bindings/webservice/ +.endif + +post-install: + ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/virtualbox/*.so \ + ${STAGEDIR}${PREFIX}/lib/virtualbox/components/*.so + +.include <bsd.port.post.mk> diff --git a/emulators/virtualbox-ose-72/distinfo b/emulators/virtualbox-ose-72/distinfo new file mode 100644 index 000000000000..ed4ac420cdd3 --- /dev/null +++ b/emulators/virtualbox-ose-72/distinfo @@ -0,0 +1,7 @@ +TIMESTAMP = 1756400000 +SHA256 (VirtualBox-7.2.0.tar.bz2) = 4f2804ff27848ea772aee6b637bb1e10ee74ec2da117c257413e2d2c4f670ba0 +SIZE (VirtualBox-7.2.0.tar.bz2) = 206755781 +SHA256 (VirtualBox-docs-7.2.0.tar.bz2) = 12b27989f2ab9b9316384322a8f1cdadd7003d2e2d6592298e1a84e81f5e0572 +SIZE (VirtualBox-docs-7.2.0.tar.bz2) = 9200668 +SHA256 (VBoxGuestAdditions_7.2.0.iso) = 43f7a1045cad0aab40e3af906fea37244ba6873b91b4e227245a14e51b399abd +SIZE (VBoxGuestAdditions_7.2.0.iso) = 53143552 diff --git a/emulators/virtualbox-ose-72/files/extrapatch-Config.kmk b/emulators/virtualbox-ose-72/files/extrapatch-Config.kmk new file mode 100644 index 000000000000..775508d23b1b --- /dev/null +++ b/emulators/virtualbox-ose-72/files/extrapatch-Config.kmk @@ -0,0 +1,11 @@ +--- Config.kmk.orig 2021-04-28 16:21:25 UTC ++++ Config.kmk +@@ -4931,7 +4931,7 @@ define TOOL_FREEBSDKMODLD_LINK_SYSMOD_CMDS + | xargs -J% objcopy % $(out) + + ## Strip debug info (comment out if debugging or something). +- objcopy --strip-debug $(out) ++# objcopy --strip-debug $(out) + endef + else # x86 + TOOL_FREEBSDKMODLD_LINK_SYSMOD_OUTPUT = $(outbase).kld diff --git a/emulators/virtualbox-ose-72/files/extrapatch-src-VBox-HostDrivers-Support-freebsd-Makefile b/emulators/virtualbox-ose-72/files/extrapatch-src-VBox-HostDrivers-Support-freebsd-Makefile new file mode 100644 index 000000000000..67361da543f7 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/extrapatch-src-VBox-HostDrivers-Support-freebsd-Makefile @@ -0,0 +1,11 @@ +--- src/VBox/HostDrivers/Support/freebsd/Makefile.orig 2012-10-18 16:23:16.000000000 +0200 ++++ src/VBox/HostDrivers/Support/freebsd/Makefile 2012-10-20 08:13:07.301179212 +0200 +@@ -27,7 +27,7 @@ + + KMOD = vboxdrv + +-CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DSUPDRV_WITH_RELEASE_LOGGER -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBOX_WITH_HARDENING -DVBOX_WITH_64_BITS_GUESTS ++CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DSUPDRV_WITH_RELEASE_LOGGER -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBOX_WITH_HARDENING -DVBOX_WITH_64_BITS_GUESTS -DDEBUG + + .if (${MACHINE_ARCH} == "i386") + CFLAGS += -DRT_ARCH_X86 diff --git a/emulators/virtualbox-ose-72/files/extrapatch-vboximg-Config.kmk b/emulators/virtualbox-ose-72/files/extrapatch-vboximg-Config.kmk new file mode 100644 index 000000000000..d84209faa8cd --- /dev/null +++ b/emulators/virtualbox-ose-72/files/extrapatch-vboximg-Config.kmk @@ -0,0 +1,11 @@ +--- Config.kmk.orig 2023-10-12 15:43:35.000000000 +0700 ++++ Config.kmk 2023-10-30 22:11:09.119922000 +0700 +@@ -869,7 +869,7 @@ + # windows versions (only define when buildling win.x86). + #VBOX_WITH_MORE_NT4_COMPAT_BINARIES = 1 + # Set this to enable building of the vboximg-mount FUSE mounting utility. +-if1of ($(KBUILD_TARGET), darwin linux) ++if1of ($(KBUILD_TARGET), darwin freebsd linux) + VBOX_WITH_VBOXIMGMOUNT = 1 + endif + # Set this to enable packaging the fuse related bits into our installer. diff --git a/emulators/virtualbox-ose-72/files/patch-Config.kmk b/emulators/virtualbox-ose-72/files/patch-Config.kmk new file mode 100644 index 000000000000..c284262eb189 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-Config.kmk @@ -0,0 +1,421 @@ +--- Config.kmk.orig 2025-08-28 22:09:24 UTC ++++ Config.kmk +@@ -624,11 +624,11 @@ endif + # Enable OSS audio support. + VBOX_WITH_AUDIO_OSS = 1 + endif +-if1of ($(KBUILD_TARGET), linux) ++if1of ($(KBUILD_TARGET), freebsd linux) + # Enable ALSA audio support. + VBOX_WITH_AUDIO_ALSA = 1 + endif +-if1of ($(KBUILD_TARGET), linux) ++if1of ($(KBUILD_TARGET), freebsd linux) + # Enable PulseAudio audio support. + VBOX_WITH_AUDIO_PULSE = 1 + endif +@@ -641,11 +641,11 @@ VBOX_WITH_PCI_PASSTHROUGH = + # (disabled with 6.1, since it's not complete/useful enough) + VBOX_WITH_PCI_PASSTHROUGH = + # Enable statically linked dbus support. +-if1of ($(KBUILD_TARGET), linux solaris) ++if1of ($(KBUILD_TARGET), freebsd linux solaris) + VBOX_WITH_DBUS = 1 + endif + # Enable building PAM modules. +-if1of ($(KBUILD_TARGET), linux solaris) ++if1of ($(KBUILD_TARGET), freebsd linux solaris) + VBOX_WITH_PAM = 1 + endif + # Enable internal networking. +@@ -653,7 +653,7 @@ VBOX_WITH_VMSVGA = 1 + # Enable vmsvga (svga2) graphics device variant, 2D part + VBOX_WITH_VMSVGA = 1 + # Enable vmsvga (svga2) graphics device variant, 3D part +-if1of ($(KBUILD_TARGET), darwin linux win) ++if1of ($(KBUILD_TARGET), darwin freebsd linux win) + VBOX_WITH_VMSVGA3D = 1 + endif + # Enable vmsvga (svga2) graphics device variant, 3D part, VGPU10 DX commands +@@ -847,7 +847,7 @@ VBOX_WITH_VBOXMANAGE_NLS = 1 + #endif + # Set this to prefix all C symbols in XPCOM, to avoid dynamic linking problems + # caused by our XPCOM library polluting the symbol namespace for system libs. +-if1of ($(KBUILD_TARGET), linux solaris) ++if1of ($(KBUILD_TARGET), freebsd linux solaris) + VBOX_WITH_XPCOM_NAMESPACE_CLEANUP = 1 + endif + # The webservices api. +@@ -1376,10 +1376,6 @@ endif + endif + endif + +-ifeq ($(KBUILD_TARGET),freebsd) +- VBOX_WITH_DOCS = +-endif +- + ifeq ($(KBUILD_TARGET),haiku) + VBOX_WITH_VRDP_RDESKTOP = + # Permanent (no working SDL). +@@ -1563,7 +1559,7 @@ ifdef VBOX_OSE + # not yet + VBOX_WITH_PLUGIN_CRYPT = + VBOX_WITH_DRAG_AND_DROP_PROMISES = +- ifn1of ($(KBUILD_TARGET), linux) ++ ifn1of ($(KBUILD_TARGET), freebsd linux) + VBOX_WITH_DOCS = + VBOX_WITH_DOCS_PACKING = + endif +@@ -3637,19 +3633,19 @@ ifndef VBOX_GCC_std + # + ## @todo consider maxing this out. + ifndef VBOX_GCC_std +- if1of ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH), darwin.arm64 linux.arm64) # Go straight for c++17 here. ++# if1of ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH), darwin.arm64 linux.arm64) # Go straight for c++17 here. + VBOX_GCC_std := -std=c++17 +- # else if "$(VBOX_CLANG_VERSION_CXX)" vge 60000 # Most language features complete by v6. Lib stuff was less complete in v6, but hopefully acceptable for out purposes. +- #VBOX_GCC_std := -std=c++17 +- else if "$(VBOX_CLANG_VERSION_CXX)" vge 50000 # darwin Xcode 5 allegedly knows what C++11 is +- VBOX_GCC_std := -std=c++11 +- # else if "$(VBOX_GCC_VERSION_CXX)" vge 70000 # Language feature P0512R0 was v8, rest v7 or earlier. Most lib stuff present in 7, complete in v12. +- #VBOX_GCC_std := -std=gnu++17 +- else if "$(VBOX_GCC_VERSION_CXX)" vge 40800 +- VBOX_GCC_std := -std=c++11 +- else if "$(VBOX_GCC_VERSION_CXX)" vge 40600 +- VBOX_GCC_std := -std=c++0x +- endif ++# # else if "$(VBOX_CLANG_VERSION_CXX)" vge 60000 # Most language features complete by v6. Lib stuff was less complete in v6, but hopefully acceptable for out purposes. ++# #VBOX_GCC_std := -std=c++17 ++# else if "$(VBOX_CLANG_VERSION_CXX)" vge 50000 # darwin Xcode 5 allegedly knows what C++11 is ++# VBOX_GCC_std := -std=c++11 ++# # else if "$(VBOX_GCC_VERSION_CXX)" vge 70000 # Language feature P0512R0 was v8, rest v7 or earlier. Most lib stuff present in 7, complete in v12. ++# #VBOX_GCC_std := -std=gnu++17 ++# else if "$(VBOX_GCC_VERSION_CXX)" vge 40800 ++# VBOX_GCC_std := -std=c++11 ++# else if "$(VBOX_GCC_VERSION_CXX)" vge 40600 ++# VBOX_GCC_std := -std=c++0x ++# endif + endif + ifndef VBOX_VCC_std + if $(VBOX_VCC_TOOL_STEM) >= VCC141 # since 2017 15.3 +@@ -5688,11 +5684,11 @@ ifeq ($(VBOX_LDR_FMT),elf) + # Solaris driver signing. + TEMPLATE_VBoxR0_POST_CMDS = $(VBOX_SIGN_DRIVER_CMDS) + else +- TEMPLATE_VBoxR0_LDFLAGS = -nostdlib -Bsymbolic -g ++ TEMPLATE_VBoxR0_LDFLAGS = -nostdlib -Bsymbolic -g -fuse-ld=bfd + ## @todo WTF doesn't the globals work? Debug info is supposed to be split everywhere. GRR + TEMPLATE_VBoxR0_LD_DEBUG = split + endif +- if "$(KBUILD_TARGET)" == "linux" && !defined(VBOX_WITH_KMOD_WRAPPED_R0_MODS) ++ if ( "$(KBUILD_TARGET)" == "linux" || "$(KBUILD_TARGET)" == "freebsd") && !defined(VBOX_WITH_KMOD_WRAPPED_R0_MODS) + VBOX_WITH_VBOXR0_AS_DLL = 1 + TEMPLATE_VBoxR0_DLLSUFF = .r0 + TEMPLATE_VBoxR0_CFLAGS += -fPIC +@@ -5703,7 +5699,7 @@ ifeq ($(VBOX_LDR_FMT),elf) + else + TEMPLATE_VBoxR0_CFLAGS.amd64 += -mcmodel=kernel + TEMPLATE_VBoxR0_CXXFLAGS.amd64 += -mcmodel=kernel +- endif ++endif + ifdef VBOX_WITH_KMOD_WRAPPED_R0_MODS # For BTF/pahold issue we use -g1 + TEMPLATE_VBoxR0_DEFS += VBOX_WITH_KMOD_WRAPPED_R0_MODS + TEMPLATE_VBoxR0_LDFLAGS.linux += $(PATH_ROOT)/src/VBox/HostDrivers/Support/linux/VBoxR0-wrapped.lds +@@ -6100,7 +6096,7 @@ ifeq ($(KBUILD_TARGET),freebsd) + # x86 FreeBSD (6.2 or something): + # cc -O2 -fno-strict-aliasing -pipe -Werror -D_KERNEL -DKLD_MODULE \ + # -nostdinc -I- -I. -I@ -I@/contrib/altq -I@/../include -I/usr/include \ +- # -finline-limit=8000 -fno-common -mno-align-long-strings -mpreferred-stack-boundary=2 \ ++ # -fno-common -mno-align-long-strings \ + # -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -ffreestanding -Wall -Wredundant-decls -Wnested-externs \ + # -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -fformat-extensions \ + # -std=c99 -c ../my.c +@@ -6111,7 +6107,7 @@ ifeq ($(KBUILD_TARGET),freebsd) + # + # AMD64 FreeBSD (7.1): + # cc -O2 -fno-strict-aliasing -pipe -D_KERNEL -DKLD_MODULE -std=c99 -nostdinc -I. -I@ -I@/contrib/altq \ +- # -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -fno-common \ ++ # --param inline-unit-growth=100 --param large-function-growth=1000 -fno-common \ + # -fno-omit-frame-pointer -mcmodel=kernel -mno-red-zone -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx \ + # -mno-3dnow -msoft-float -fno-asynchronous-unwind-tables -ffreestanding \ + # -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -Wno-pointer-sign \ +@@ -6193,7 +6189,7 @@ ifeq ($(KBUILD_TARGET),freebsd) + | xargs -J% objcopy % $(outbase).kld + + # Link the final .ko (a shared object). +- ld $(flags) -Bshareable -o $(out) $(outbase).kld ++ ld $(flags) -Bshareable -znotext -o $(out) $(outbase).kld + endef + endif # x86 + +@@ -6228,7 +6224,7 @@ ifeq ($(KBUILD_TARGET),netbsd) + $(VBOX_GCC_fdiagnostics-show-option) $(VBOX_GCC_fdiagnostics-color) \ + -Wstrict-prototypes -Wmissing-prototypes -Wstrict-prototypes \ + -Wimplicit-function-declaration -Werror-implicit-function-declaration \ +- -O2 -ffreestanding -fno-strict-aliasing -fno-common -finline-limit=8000 \ ++ -O2 -ffreestanding -fno-strict-aliasing -fno-common \ + $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \ + -nostdinc -std=c99 -msoft-float + TEMPLATE_VBoxR0Drv_CFLAGS.x86 = -m32 -mno-mmx -mno-sse -mno-avx \ +@@ -6239,7 +6235,7 @@ ifeq ($(KBUILD_TARGET),netbsd) + -fno-asynchronous-unwind-tables -mno-fp-ret-in-387 + TEMPLATE_VBoxR0Drv_CXXFLAGS = -fno-exceptions -fno-rtti \ + $(VBOX_GCC_WARN) -Wpointer-arith -Winline \ +- -O2 -fno-strict-aliasing -fno-common -finline-limit=8000 \ ++ -O2 -fno-strict-aliasing -fno-common \ + $(VBOX_GCC_fno-stack-protector) $(VBOX_GCC_R0_OPT) $(VBOX_GCC_R0_FP) \ + -nostdinc -msoft-float + TEMPLATE_VBoxR0Drv_CXXFLAGS.x86 = $(TEMPLATE_VBoxR0Drv_CFLAGS.x86) +@@ -6565,11 +6561,11 @@ else # the gcc guys + TEMPLATE_VBoxR3Exe_LATE_LIBS = pthread m rt dl + else ifeq ($(KBUILD_TARGET),os2) + TEMPLATE_VBoxR3Exe_TOOL = GXX3OMF +- TEMPLATE_VBoxR3Exe_LATE_LIBS = socket iconv ++ TEMPLATE_VBoxR3Exe_LATE_LIBS = socket + else ifeq ($(KBUILD_TARGET),darwin) + TEMPLATE_VBoxR3Exe_TOOL = $(VBOX_GCC_TOOL) + TEMPLATE_VBoxR3Exe_LATE_LIBS = +- TEMPLATE_VBoxR3Exe_DEFS += LIBICONV_PLUG # Avoid 3rd party libiconv (from macports). ++ TEMPLATE_VBoxR3Exe_DEFS += LIBICONV_PLUG # Avoid 3rd party lib (from macports). + TEMPLATE_VBoxR3Exe_SDKS.darwin = $(VBOX_DARWIN_DEF_SDK_SDKS) + TEMPLATE_VBoxR3Exe_DEFS.darwin = $(VBOX_DARWIN_DEF_SDK_DEFS) + TEMPLATE_VBoxR3Exe_CFLAGS.darwin = $(VBOX_DARWIN_DEF_SDK_CFLAGS) -fno-common +@@ -6585,24 +6581,29 @@ else # the gcc guys + else ifeq ($(KBUILD_TARGET),haiku) + TEMPLATE_VBoxR3Exe_TOOL = GXX3 + TEMPLATE_VBoxR3Exe_POST_CMDS = $(VBOX_HAIKU_XRES_SETVER_CMDS) +- TEMPLATE_VBoxR3Exe_LATE_LIBS = network iconv stdc++ supc++ ++ TEMPLATE_VBoxR3Exe_LATE_LIBS = network stdc++ supc++ + TEMPLATE_VBoxR3Exe_LIBPATH += \ + /boot/common/lib + # Haiku uses PIC by default... + TEMPLATE_VBoxR3Exe_CFLAGS += -fno-pic + TEMPLATE_VBoxR3Exe_CXXFLAGS += -fno-pic + TEMPLATE_VBoxR3Exe_LDFLAGS += -fno-pic +- else if1of ($(KBUILD_TARGET), freebsd openbsd) ++ else if1of ($(KBUILD_TARGET), freebsd) + TEMPLATE_VBoxR3Exe_TOOL = GXX3 + TEMPLATE_VBoxR3Exe_LATE_LIBS = pthread ++ TEMPLATE_VBoxR3Exe_LDFLAGS = -Wl,-z,noexecstack,-z,relro $(VBOX_LD_as_needed) ++ TEMPLATE_VBoxR3Exe_LDFLAGS.freebsd.x86 = -Wl,-z,notext + TEMPLATE_VBoxR3Exe_INCS += \ +- /usr/include \ +- /usr/X11R6/include \ + /usr/local/include + TEMPLATE_VBoxR3Exe_LIBPATH += \ +- /usr/lib \ +- /usr/X11R6/lib \ + /usr/local/lib ++ else ifeq ($(KBUILD_TARGET), openbsd) ++ TEMPLATE_VBoxR3Exe_TOOL = GXX3 ++ TEMPLATE_VBoxR3Exe_LIBS = pthread ++ TEMPLATE_VBoxR3Exe_INCS += \ ++ /usr/include \ ++ /usr/X11R6/include \ ++ /usr/local/include + else ifeq ($(KBUILD_TARGET),netbsd) + TEMPLATE_VBoxR3Exe_TOOL = GXX3 + TEMPLATE_VBoxR3Exe_LATE_LIBS = pthread +@@ -6614,7 +6615,7 @@ else # the gcc guys + /usr/X11R7/lib + else ifeq ($(KBUILD_TARGET),solaris) + TEMPLATE_VBoxR3Exe_TOOL = GXX3PLAIN +- TEMPLATE_VBoxR3Exe_DEFS += LIBICONV_PLUG _REENTRANT # Avoid the GNU libiconv, for now at least. ++ TEMPLATE_VBoxR3Exe_DEFS += LIBICONV_PLUG _REENTRANT # Avoid the GNU lib, for now at least. + if $(VBOX_GCC_VERSION_CC) < 30500 + TEMPLATE_VBoxR3Exe_CFLAGS += -std=gnu99 + endif +@@ -6630,6 +6631,7 @@ else # the gcc guys + TEMPLATE_VBoxR3Exe_LDFLAGS += '$(VBOX_GCC_RPATH_OPT)$(VBOX_WITH_RELATIVE_RUNPATH)' + endif + ifdef VBOX_WITH_ORIGIN ++ TEMPLATE_VBoxR3Exe_LDFLAGS.freebsd += $(VBOX_GCC_ORIGIN_OPT) + TEMPLATE_VBoxR3Exe_LDFLAGS.linux += $(VBOX_GCC_ORIGIN_OPT) + endif + endif +@@ -6868,7 +6870,7 @@ else + ifdef VBOX_WITH_NOCRT_STATIC + TEMPLATE_VBoxR3StaticBase_DEFS += RT_WITH_NOCRT_WRAPPERS + endif +- ifn1of ($(KBUILD_TARGET), darwin linux solaris) ++ ifn1of ($(KBUILD_TARGET), darwin freebsd linux solaris) + # The gcc guys sans darwin, linux and solaris (don't depend on statically compiled system libs there) + TEMPLATE_VBoxR3StaticBase_CFLAGS = $(TEMPLATE_VBoxR3Exe_CFLAGS) -static + TEMPLATE_VBoxR3StaticBase_CXXFLAGS = $(TEMPLATE_VBoxR3Exe_CXXFLAGS) -static +@@ -6936,7 +6938,7 @@ else + $(SDK_VBoxZlib_LATE_LIBS) \ + $(SDK_VBoxLibLzma_LIBS) + if1of ($(KBUILD_TARGET), darwin freebsd) +- TEMPLATE_VBoxR3Static_LATE_LIBS += iconv ++ TEMPLATE_VBoxR3Static_LATE_LIBS += + else ifeq ($(KBUILD_TARGET),solaris) + TEMPLATE_VBoxR3Static_LATE_LIBS += kstat + endif +@@ -7137,6 +7139,7 @@ else ifn1of ($(KBUILD_TARGET), os2) + else ifn1of ($(KBUILD_TARGET), os2) + ifneq ($(KBUILD_TYPE),asan) # Keep RPATH in asan builds so we can find libasan.so.X and libubsan.so.Y. + TEMPLATE_VBoxR3HardenedExe_LDFLAGS = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_VBoxR3Exe_LDFLAGS)) ++ TEMPLATE_VBoxR3HardenedExe_LDFLAGS.freebsd = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_VBoxR3Exe_LDFLAGS.freebsd)) + TEMPLATE_VBoxR3HardenedExe_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_VBoxR3Exe_LDFLAGS.linux)) + endif + endif +@@ -7168,6 +7171,7 @@ ifn1of ($(KBUILD_TARGET), win os2) + $(if-expr !defined(VBOX_WITHOUT_WINDOWS_KERNEL_CODE_SIGNING_CERT),-IntegrityCheck,) + ifn1of ($(KBUILD_TARGET), win os2) + TEMPLATE_VBoxR3HardenedTstDll_LDFLAGS = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_VBoxR3TstDll_LDFLAGS)) ++ TEMPLATE_VBoxR3HardenedTstDll_LDFLAGS.freebsd = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_VBoxR3TstDll_LDFLAGS.freebsd)) + TEMPLATE_VBoxR3HardenedTstDll_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_VBoxR3TstDll_LDFLAGS.linux)) + endif + +@@ -7192,6 +7196,7 @@ ifndef VBOX_WITH_HARDENING + TEMPLATE_VBoxR3SetUidToRoot_LDFLAGS += '$(VBOX_GCC_RPATH_OPT)$(VBOX_WITH_RELATIVE_RUNPATH)' + endif + ifdef VBOX_WITH_ORIGIN ++ TEMPLATE_VBoxR3SetUidToRoot_LDFLAGS.freebsd += $(VBOX_GCC_ORIGIN_OPT) + TEMPLATE_VBoxR3SetUidToRoot_LDFLAGS.linux += $(VBOX_GCC_ORIGIN_OPT) + endif + endif +@@ -7570,7 +7575,7 @@ else # the GCC guys: + endif + TEMPLATE_VBoxMainExe_CXXFLAGS = -g $(VBOX_GCC_pipe) \ + $(VBOX_GCC_PEDANTIC_CXX) $(VBOX_GCC_Wno-variadic-macros) $(VBOX_GCC_Wno-multistatement-macros) $(VBOX_GCC_Wno-class-memaccess) -Wshadow \ +- -fshort-wchar -fpermissive -fexceptions -frtti $(VBOX_GCC_OPT) $(VBOX_GCC_FP) -fno-strict-aliasing \ ++ -fshort-wchar -fexceptions -frtti $(VBOX_GCC_OPT) $(VBOX_GCC_FP) -fno-strict-aliasing \ + $(VBOX_GCC_fvisibility-inlines-hidden) $(VBOX_GCC_fvisibility-hidden) $(VBOX_GCC_std) $(VBOX_GCC_IPRT_FMT_CHECK) \ + $(VBOX_GCC_SANITIZER_FLAGS) + if !defined("VBOX_GCC_Wno-delete-non-virtual-dtor") && defined("VBOX_GCC_Wno-non-virtual-dtor") +@@ -7633,10 +7638,19 @@ else # the GCC guys: + else ifeq ($(KBUILD_TARGET),haiku) + TEMPLATE_VBoxMainExe_TOOL = GXX3 + TEMPLATE_VBoxMainExe_LATE_LIBS = $(LIB_RUNTIME) network stdc++ supc++ +- else if1of ($(KBUILD_TARGET), freebsd openbsd) ++ else if1of ($(KBUILD_TARGET), freebsd) + TEMPLATE_VBoxMainExe_TOOL = GXX3 + TEMPLATE_VBoxMainExe_LATE_LIBS = $(LIB_RUNTIME) ++ TEMPLATE_VBoxMainExe_LDFLAGS = -Wl,-z,noexecstack,-z,relro $(VBOX_LD_as_needed) ++ TEMPLATE_VBoxMainExe_LDFLAGS.freebsd.x86 = -Wl,-z,notext + TEMPLATE_VBoxMainExe_INCS += \ ++ /usr/local/include ++ TEMPLATE_VBoxMainExe_LIBPATH += \ ++ /usr/local/lib ++ else ifeq ($(KBUILD_TARGET), openbsd) ++ TEMPLATE_VBoxMainExe_TOOL = GXX3 ++ TEMPLATE_VBoxMainExe_LIBS = $(LIB_RUNTIME) ++ TEMPLATE_VBoxMainExe_INCS += \ + /usr/include \ + /usr/X11R6/include \ + /usr/local/include +@@ -7668,6 +7682,7 @@ else # the GCC guys: + TEMPLATE_VBoxMainExe_LDFLAGS += '$(VBOX_GCC_RPATH_OPT)$(VBOX_WITH_RELATIVE_RUNPATH)' + endif + ifdef VBOX_WITH_ORIGIN ++ TEMPLATE_VBoxMainExe_LDFLAGS.freebsd += $(VBOX_GCC_ORIGIN_OPT) + TEMPLATE_VBoxMainExe_LDFLAGS.linux += $(VBOX_GCC_ORIGIN_OPT) + endif + +@@ -8352,14 +8367,13 @@ ifdef VBOX_WITH_QTGUI + TEMPLATE_VBoxQtGuiExe_LIBPATH += \ + $(VBOX_LIBPATH_X11) + ifeq ($(KBUILD_TARGET),freebsd) ++ TEMPLATE_VBoxQtGuiExe_LDFLAGS += -Wl,-z,noexecstack,-z,relro $(VBOX_LD_as_needed) ++ TEMPLATE_VBoxQtGuiExe_LDFLAGS.freebsd.x86 = -Wl,-z,notext + TEMPLATE_VBoxQtGuiExe_INCS += \ +- /usr/include \ +- /usr/X11R6/include \ + /usr/local/include + TEMPLATE_VBoxQtGuiExe_LIBPATH += \ +- /usr/lib \ +- /usr/X11R6/lib \ + /usr/local/lib ++ TEMPLATE_VBoxQtGuiExe_LIBS += /usr/local/lib/qt6/libQt6PrintSupport.so + endif + ifeq ($(KBUILD_TARGET),solaris) + TEMPLATE_VBoxQtGuiExe_LDFLAGS.solaris = -Wl,-z,ignore # Same as VBOX_LD_as_needed. +@@ -8623,7 +8637,7 @@ else + TEMPLATE_VBoxBldProg_LATE_LIBS = pthread m rt dl + else ifeq ($(KBUILD_HOST),os2) + TEMPLATE_VBoxBldProg_TOOL = GXX3OMF +- TEMPLATE_VBoxBldProg_LATE_LIBS = socket iconv ++ TEMPLATE_VBoxBldProg_LATE_LIBS = socket + else ifeq ($(KBUILD_HOST),darwin) + TEMPLATE_VBoxBldProg_TOOL = $(VBOX_GCC_TOOL) + if "$(VBOX_DEF_MACOSX_VERSION_MIN)" == "10.7" || "$(VBOX_DARWIN_HOST_VERSION_MAJOR)" == "7" +@@ -8663,13 +8677,20 @@ else + TEMPLATE_VBoxBldProg_LATE_LIBS = + else ifeq ($(KBUILD_HOST),haiku) + TEMPLATE_VBoxBldProg_TOOL = GXX3 +- TEMPLATE_VBoxBldProg_LATE_LIBS = network iconv ++ TEMPLATE_VBoxBldProg_LATE_LIBS = network + TEMPLATE_VBoxBldProg_LIBPATH += \ + /boot/common/lib +- else if1of ($(KBUILD_HOST), freebsd openbsd) ++ else if1of ($(KBUILD_HOST), freebsd) + TEMPLATE_VBoxBldProg_TOOL = $(VBOX_GCC_TOOL) + TEMPLATE_VBoxBldProg_LATE_LIBS = pthread + TEMPLATE_VBoxBldProg_INCS += \ ++ /usr/local/include ++ TEMPLATE_VBoxBldProg_LIBPATH += \ ++ /usr/local/lib ++ else ifeq ($(KBUILD_HOST), openbsd) ++ TEMPLATE_VBoxBldProg_TOOL = $(VBOX_GCC_TOOL) ++ TEMPLATE_VBoxBldProg_LIBS = pthread ++ TEMPLATE_VBoxBldProg_INCS += \ + /usr/include \ + /usr/X11R6/include \ + /usr/local/include +@@ -8716,11 +8737,11 @@ TEMPLATE_VBoxAdvBldProg_LATE_LIBS.darwin = \ + $(TEMPLATE_VBoxBldProg_LATE_LIBS) + TEMPLATE_VBoxAdvBldProg_LATE_LIBS.darwin = \ + $(TEMPLATE_VBoxAdvBldProg_LATE_LIBS) \ +- iconv \ ++ \ + $(TEMPLATE_VBoxBldProg_LATE_LIBS.darwin) + TEMPLATE_VBoxAdvBldProg_LATE_LIBS.freebsd = \ + $(TEMPLATE_VBoxAdvBldProg_LATE_LIBS) \ +- iconv \ ++ \ + rt \ + $(TEMPLATE_VBoxBldProg_LATE_LIBS.freebsd) + TEMPLATE_VBoxAdvBldProg_LATE_LIBS.linux = \ +@@ -8813,6 +8834,7 @@ else # the gcc guys + # Do not inherit sanitizer flags from VBoxR3Exe in guest executables. Deal with them separately. + TEMPLATE_VBoxGuestR3ExeBase_CXXFLAGS.debug = $(NO_SUCH_VARIABLE) + TEMPLATE_VBoxGuestR3ExeBase_CFLAGS.debug = $(NO_SUCH_VARIABLE) ++ TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS.freebsd = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LDFLAGS.freebsd)) + TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS.linux = $(filter-out $(VBOX_GCC_ORIGIN_OPT),$(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LDFLAGS.linux)) + TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS.debug = $(NO_SUCH_VARIABLE) + TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS = $(filter-out '$(VBOX_GCC_RPATH_OPT)%,$(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LDFLAGS)) +@@ -8836,7 +8858,7 @@ else if1of ($(KBUILD_TARGET), darwin freebsd openbsd) + ifeq ($(KBUILD_TARGET),linux) # As few libs as possible on linux. + TEMPLATE_VBoxGuestR3ExeBase_LATE_LIBS = pthread rt m dl + else if1of ($(KBUILD_TARGET), darwin freebsd openbsd) +- TEMPLATE_VBoxGuestR3ExeBase_LATE_LIBS = $(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LATE_LIBS) iconv ++ TEMPLATE_VBoxGuestR3ExeBase_LATE_LIBS = $(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LATE_LIBS) + else ifeq ($(KBUILD_TARGET),solaris) + TEMPLATE_VBoxGuestR3ExeBase_LATE_LIBS = $(TEMPLATE_$(TEMPLATE_VBoxGuestR3ExeBase_EXTENDS)_LATE_LIBS) nsl + endif +@@ -8849,6 +8871,7 @@ TEMPLATE_VBoxGuestR3ExeBase_CFLAGS.linux = $(TEMP + $(VBOX_GCC_fno-stack-protector) + TEMPLATE_VBoxGuestR3ExeBase_CFLAGS.linux = $(TEMPLATE_VBoxGuestR3ExeBase_CXXFLAGS.linux) + # The GNU_HASH ELF tag is not supported by older systems. ++TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS.freebsd += $(VBOX_LD_hash_style_sysv) + TEMPLATE_VBoxGuestR3ExeBase_LDFLAGS.linux += $(VBOX_LD_hash_style_sysv) + + +@@ -9085,6 +9108,7 @@ TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.$(KBUILD_TARGET + TEMPLATE_VBoxGuestR3XFree86Mod_CXXFLAGS.linux = $(VBOX_GCC_fno-stack-protector) # Remove symvers.h + TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.$(KBUILD_TARGET) = $(NO_SUCH_VARIABLE) + # The GNU_HASH ELF tag is not supported by older glibc dynamic linkers. ++TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.freebsd = $(subst -Wl$(COMMA),,$(VBOX_LD_hash_style_sysv)) + TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.linux = $(subst -Wl$(COMMA),,$(VBOX_LD_hash_style_sysv)) + TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS.$(KBUILD_TYPE) = $(NO_SUCH_VARIABLE) + TEMPLATE_VBoxGuestR3XFree86Mod_LDFLAGS := -r +@@ -9128,7 +9152,7 @@ TEMPLATE_VBoxGuestR3XOrgMod_LATE_LIBS.$(KBUILD_TARGET) + TEMPLATE_VBoxGuestR3XOrgMod_LATE_LIBS = $(VBOX_LIB_VBGL_R3_XORG) + TEMPLATE_VBoxGuestR3XOrgMod_LATE_LIBS.$(KBUILD_TYPE) = $(NO_SUCH_VARIABLE) + TEMPLATE_VBoxGuestR3XOrgMod_LATE_LIBS.$(KBUILD_TARGET) = $(NO_SUCH_VARIABLE) +-TEMPLATE_VBoxGuestR3XOrgMod_LATE_LIBS.freebsd = iconv ++TEMPLATE_VBoxGuestR3XOrgMod_LATE_LIBS.freebsd = + TEMPLATE_VBoxGuestR3XOrgMod_LIBS = $(NO_SUCH_VARIABLE) # These three aren't necessary, just being careful. + TEMPLATE_VBoxGuestR3XOrgMod_LIBS.$(KBUILD_TYPE) = $(NO_SUCH_VARIABLE) + TEMPLATE_VBoxGuestR3XOrgMod_LIBS.$(KBUILD_TARGET) = $(NO_SUCH_VARIABLE) diff --git a/emulators/virtualbox-ose-72/files/patch-configure b/emulators/virtualbox-ose-72/files/patch-configure new file mode 100644 index 000000000000..76ed44e26acf --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-configure @@ -0,0 +1,126 @@ +--- configure.orig 2025-08-13 19:37:05 UTC ++++ configure +@@ -155,10 +155,14 @@ if [ "$OS" = "freebsd" ]; then + if [ "$OS" = "freebsd" ]; then + INCCURL="-I/usr/local/include" + LIBCURL="-L/usr/local/lib -lcurl" ++ INCALSA="-I/usr/local/include" ++ LIBALSA="-L/usr/local/lib" + INCPULSE="-I/usr/local/include" + LIBPULSE="-L/usr/local/lib" + INCPNG="-I/usr/local/include" + LIBPNG="-L/usr/local/lib -lpng" ++ INCVNCSERVER="-I/usr/local/include" ++ LIBVNCSERVER="-L/usr/local/lib" + else + INCCURL="" + LIBCURL="-lcurl" +@@ -1171,6 +1175,9 @@ extern "C" int main(int argc, char** argv) + printf("found version %d.%d.%d", + SDL_MAJOR_VERSION, SDL_MINOR_VERSION, SDL_PATCHLEVEL); + #if SDL_VERSION_ATLEAST(1,2,7) ++#if !defined(SDL_VIDEO_DRIVER_X11) ++#error SDL must be compiled with X11 support ++#endif + printf(", OK.\n"); + return 0; + #else +@@ -1255,7 +1262,7 @@ EOF + #endif + } + EOF +- if test_compile "-lasound" asound asound; then ++ if test_compile "$INCALSA $LIBALSA -lasound" asound asound; then + test_execute + fi + } +@@ -1559,6 +1566,7 @@ EOF + SDKQT6=$PATH_SDK_QT6 + fi + FLGQT6="-framework QtCore -std=c++17 -Wl,-rpath,`L_to_PATH "$LIBQT6"`" ++ FLGQT6="$FLGQT6 -std=c++11" + else + log_failure "Qt6 framework not found (can be disabled using --disable-qt)" + fail +@@ -1897,7 +1905,7 @@ EOF + return 0; + } + EOF +- [ -n "$INCOGG" ] && I_INCVRB=`prefix_I "$INCOGG"` ++ [ -n "$INCOGG" ] && I_INCOGG=`prefix_I "$INCOGG"` + if test_compile "$LIBOGG $I_INCOGG" ogg ogg nofatal; then + if test_execute; then + cnf_append "SDK_VBoxLibOgg_INCS" "$INCOGG" +@@ -2125,8 +2133,8 @@ EOF + echo "compiling the following source file:" >> $LOG + cat $ODIR.tmp_src.cc >> $LOG + echo "using the following command line:" >> $LOG +- echo "$CXX -O -Wall -o $ODIR.tmp_out $ODIR.tmp_src.cc -I$p/include/$d $p/$b/lib$d.so" >> $LOG +- $CXX -O -Wall -o $ODIR.tmp_out $ODIR.tmp_src.cc -I$p/include/$d $p/$b/lib$d.so >> $LOG 2>&1 ++ echo "$CXX -O -Wall -o $ODIR.tmp_out $ODIR.tmp_src.cc -I$p/include/$d $p/$b/lib$d.so -pthread" >> $LOG ++ $CXX -O -Wall -o $ODIR.tmp_out $ODIR.tmp_src.cc -I$p/include/$d $p/$b/lib$d.so -pthread >> $LOG 2>&1 + if [ $? -eq 0 ]; then + found=1 + break +@@ -2246,7 +2254,7 @@ check_gsoap() + else + cnf_append "VBOX_GSOAP_CXX_SOURCES" "" + fi +- cnf_append "VBOX_GSOAP_CXX_LIBS" "`strip_l "$GSOAP_CXX_LIBS"`" ++ cnf_append "VBOX_GSOAP_CXX_LIBS" "`strip_l "$GSOAP_CXX_LIBS"` z" + gsoap_version=`pkg-config gsoapssl++ --modversion` + log_success "found version $gsoap_version" + return +@@ -2619,7 +2627,7 @@ for option in "$@"; do + --with-openssl-dir=*) + OPENSSLDIR=`echo $option | cut -d'=' -f2` + INCCRYPTO="-I${OPENSSLDIR}/include" +- LIBCRYPTO="${OPENSSLDIR}/lib/libssl.a ${OPENSSLDIR}/lib/libcrypto.a" ++ LIBCRYPTO="-L${OPENSSLDIR}/lib -lssl -lcrypto" + # On Darwin (at least for macports) static OpenSSL also needs zlib. + [ "$OS" = "darwin" ] && LIBCRYPTO="$LIBCRYPTO ${OPENSSLDIR}/lib/libz.a" + # On Linux static OpenSSL typically needs a few additional libraries. +@@ -2978,12 +2986,22 @@ if [ $ONLY_ADDITIONS -eq 0 ]; then + [ $WITH_JAVA -eq 1 ] && check_java + + # PulseAudio +- if [ $WITH_PULSE -eq 1 ]; then +- check_pulse +- elif [ $WITH_PULSE -eq 0 ]; then # Force disabling PulseAudio. +- cnf_append "VBOX_WITH_AUDIO_PULSE" "" +- elif [ $WITH_PULSE -eq 2 ]; then # --enable-pulse was passed, force PulseAudio. +- cnf_append "VBOX_WITH_AUDIO_PULSE" "1" ++ if [ "$OS" = "linux" -o "$OS" = "freebsd" -o "$OS" = "netbsd" ]; then ++ if [ $WITH_ALSA -eq 1 ]; then ++ check_alsa ++ else ++ cnf_append "VBOX_WITH_AUDIO_ALSA" "" ++ fi ++ if [ $WITH_PULSE -eq 1 ]; then ++ check_pulse ++ elif [ $WITH_PULSE -eq 0 ]; then # Force disabling PulseAudio. ++ cnf_append "VBOX_WITH_AUDIO_PULSE" "" ++ elif [ $WITH_PULSE -eq 2 ]; then # --enable-pulse was passed, force PulseAudio. ++ cnf_append "VBOX_WITH_AUDIO_PULSE" "1" ++ fi ++ if [ $WITH_DBUS -eq 0 ]; then ++ cnf_append "VBOX_WITH_DBUS" "" ++ fi + fi + fi + +@@ -2999,14 +3017,6 @@ if [ "$OS" = "linux" ]; then + cnf_append "VBOX_WITHOUT_LINUX_TEST_BUILDS" "1" + fi + if [ $ONLY_ADDITIONS -eq 0 ]; then +- if [ $WITH_ALSA -eq 1 ]; then +- check_alsa +- else +- cnf_append "VBOX_WITH_AUDIO_ALSA" "" +- fi +- if [ $WITH_DBUS -eq 0 ]; then +- cnf_append "VBOX_WITH_DBUS" "" +- fi + if [ $WITH_DEVMAPPER -eq 1 ]; then + check_libdevmapper + else diff --git a/emulators/virtualbox-ose-72/files/patch-doc_manual_en__US_dita_UserManual.ditamap b/emulators/virtualbox-ose-72/files/patch-doc_manual_en__US_dita_UserManual.ditamap new file mode 100644 index 000000000000..c8337d7aeba6 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-doc_manual_en__US_dita_UserManual.ditamap @@ -0,0 +1,11 @@ +--- doc/manual/en_US/dita/UserManual.ditamap.orig 2025-08-13 19:37:06 UTC ++++ doc/manual/en_US/dita/UserManual.ditamap +@@ -540,7 +540,7 @@ + <topicref href="topics/security-model.dita"/> + <topicref href="topics/secure-config-vms.dita"> + <topicref href="topics/security-networking.dita"/> +- <topicref href="topics/security-of-remote-vms.dita"/> ++<!-- <topicref href="topics/security-of-remote-vms.dita"/> --> + <topicref href="topics/security-vrdp-auth.dita"/> + <topicref href="topics/security_clipboard.dita"/> + <topicref href="topics/security-shared-folders.dita"/> diff --git a/emulators/virtualbox-ose-72/files/patch-include-iprt-x86.h b/emulators/virtualbox-ose-72/files/patch-include-iprt-x86.h new file mode 100644 index 000000000000..cedf78a0ef02 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-include-iprt-x86.h @@ -0,0 +1,19 @@ +--- include/iprt/x86.h.orig 2025-08-13 19:37:26 UTC ++++ include/iprt/x86.h +@@ -53,6 +53,16 @@ + # pragma D depends_on library vbox-types.d + #endif + ++/* Workaround for FreeBSD machine/specialreg.h defining MSRs */ ++#ifdef RT_OS_FREEBSD ++# undef MSR_P5_MC_ADDR ++# undef MSR_P5_MC_TYPE ++# undef MSR_IA32_PLATFORM_ID ++# undef MSR_BBL_CR_CTL3 ++# undef MSR_IA32_MISC_ENABLE ++# undef MSR_IA32_FEATURE_CONTROL ++#endif ++ + /** Workaround for Solaris sys/regset.h defining CS, DS and sys/controlregs.h + * defining MSR_IA32_FLUSH_CMD and MSR_AMD_VIRT_SPEC_CTL */ + #ifdef RT_OS_SOLARIS diff --git a/emulators/virtualbox-ose-72/files/patch-include_VBox_com_array.h b/emulators/virtualbox-ose-72/files/patch-include_VBox_com_array.h new file mode 100644 index 000000000000..77d77ddd3e11 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-include_VBox_com_array.h @@ -0,0 +1,36 @@ +--- include/VBox/com/array.h.orig 2025-08-13 19:37:15 UTC ++++ include/VBox/com/array.h +@@ -181,7 +181,7 @@ + + #include "VBox/com/defs.h" + +-#if RT_GNUC_PREREQ(4, 6) || (defined(_MSC_VER) && (_MSC_VER >= 1600)) ++#if RT_GNUC_PREREQ(4, 6) || (defined(_MSC_VER) && (_MSC_VER >= 1600)) || defined(_LIBCPP_VERSION) + /** @def VBOX_WITH_TYPE_TRAITS + * Type traits are a C++ 11 feature, so not available everywhere (yet). + * Only GCC 4.6 or newer and MSVC++ 16.0 (Visual Studio 2010) or newer. +@@ -1014,12 +1014,12 @@ class SafeArray : public Traits (public) + { + /** @todo r=klaus should do this as a AssertCompile, but cannot find a way which works. */ + Assert(sizeof(T) <= sizeof(Zeroes)); +- AssertReturn(m.arr != NULL, *(T *)&Zeroes[0]); +- AssertReturn(aIdx < size(), *(T *)&Zeroes[0]); ++ AssertReturn(m.arr != NULL, *((T *)1)); ++ AssertReturn(aIdx < size(), *((T *)1)); + #ifdef VBOX_WITH_XPCOM + return m.arr[aIdx]; + #else +- AssertReturn(m.raw != NULL, *(T *)&Zeroes[0]); ++ AssertReturn(m.raw != NULL, *((T *)1)); + return m.raw[aIdx]; + #endif + } +@@ -1034,7 +1034,7 @@ class SafeArray : public Traits (public) + #ifdef VBOX_WITH_XPCOM + return m.arr[aIdx]; + #else +- AssertReturn(m.raw != NULL, *(const T *)&Zeroes[0]); ++ AssertReturn(m.raw != NULL, *((T *)1)); + return m.raw[aIdx]; + #endif + } diff --git a/emulators/virtualbox-ose-72/files/patch-include_VBox_sup.h b/emulators/virtualbox-ose-72/files/patch-include_VBox_sup.h new file mode 100644 index 000000000000..77fee2d23d0a --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-include_VBox_sup.h @@ -0,0 +1,11 @@ +--- include/VBox/sup.h.orig 2025-08-13 19:37:16 UTC ++++ include/VBox/sup.h +@@ -2325,7 +2325,7 @@ SUPR0DECL(void) SUPR0BadContext(PSUPDRVSESSION pSessio + + SUPR0DECL(void) SUPR0BadContext(PSUPDRVSESSION pSession, const char *pszFile, uint32_t uLine, const char *pszExpr); + +-#if defined(RT_OS_LINUX) || defined(RT_OS_SOLARIS) || defined(RT_OS_FREEBSD) ++#if defined(RT_OS_LINUX) || defined(RT_OS_SOLARIS) + /** + * Translates a physical address to a virtual mapping (valid up to end of page). + * @returns VBox status code. diff --git a/emulators/virtualbox-ose-72/files/patch-include_iprt_string.h b/emulators/virtualbox-ose-72/files/patch-include_iprt_string.h new file mode 100644 index 000000000000..b06991588730 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-include_iprt_string.h @@ -0,0 +1,14 @@ +--- include/iprt/string.h.orig 2025-08-13 19:37:25 UTC ++++ include/iprt/string.h +@@ -57,6 +57,11 @@ + #elif defined(RT_OS_FREEBSD) && defined(_KERNEL) + RT_C_DECLS_BEGIN + # include <sys/libkern.h> ++ /* ++ * Kludge for the FreeBSD kernel: ++ * sys/libkern.h includes sys/param.h via sys/systm.h since r335879. ++ */ ++# undef PVM + RT_C_DECLS_END + + #elif defined(RT_OS_NETBSD) && defined(_KERNEL) diff --git a/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c new file mode 100644 index 000000000000..5344a7ab812f --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-VBoxGuest-freebsd.c @@ -0,0 +1,284 @@ +--- src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c.orig 2025-08-13 19:41:14 UTC ++++ src/VBox/Additions/common/VBoxGuest/VBoxGuest-freebsd.c +@@ -55,6 +55,7 @@ + #include <sys/uio.h> + #include <sys/bus.h> + #include <sys/poll.h> ++#include <sys/proc.h> + #include <sys/selinfo.h> + #include <sys/queue.h> + #include <sys/lock.h> +@@ -71,6 +72,7 @@ + #include <VBox/version.h> + #include <VBox/log.h> + #include <iprt/assert.h> ++#include <iprt/err.h> + #include <iprt/initterm.h> + #include <iprt/process.h> + #include <iprt/string.h> +@@ -112,8 +114,6 @@ struct VBoxGuestDeviceState + struct resource *pIrqRes; + /** Pointer to the IRQ handler. */ + void *pfnIrqHandler; +- /** VMMDev version */ +- uint32_t u32Version; + }; + + +@@ -123,8 +123,7 @@ struct VBoxGuestDeviceState + /* + * Character device file handlers. + */ +-static d_fdopen_t vgdrvFreeBSDOpen; +-static d_close_t vgdrvFreeBSDClose; ++static d_open_t vgdrvFreeBSDOpen; + static d_ioctl_t vgdrvFreeBSDIOCtl; + static int vgdrvFreeBSDIOCtlSlow(PVBOXGUESTSESSION pSession, u_long ulCmd, caddr_t pvData, struct thread *pTd); + static d_write_t vgdrvFreeBSDWrite; +@@ -155,8 +154,7 @@ static struct cdevsw g_vgdrvFreeBSDChrDevSW = + { + .d_version = D_VERSION, + .d_flags = D_TRACKCLOSE | D_NEEDMINOR, +- .d_fdopen = vgdrvFreeBSDOpen, +- .d_close = vgdrvFreeBSDClose, ++ .d_open = vgdrvFreeBSDOpen, + .d_ioctl = vgdrvFreeBSDIOCtl, + .d_read = vgdrvFreeBSDRead, + .d_write = vgdrvFreeBSDWrite, +@@ -164,81 +162,28 @@ static struct cdevsw g_vgdrvFreeBSDChrDevSW = + .d_name = "vboxguest" + }; + ++/** Device structure. */ ++static struct cdev *g_pDev; ++ + /** Device extention & session data association structure. */ + static VBOXGUESTDEVEXT g_DevExt; + +-/** List of cloned device. Managed by the kernel. */ +-static struct clonedevs *g_pvgdrvFreeBSDClones; +-/** The dev_clone event handler tag. */ +-static eventhandler_tag g_vgdrvFreeBSDEHTag; + /** Reference counter */ + static volatile uint32_t cUsers; + /** selinfo structure used for polling. */ + static struct selinfo g_SelInfo; + +-/** +- * DEVFS event handler. +- */ +-static void vgdrvFreeBSDClone(void *pvArg, struct ucred *pCred, char *pszName, int cchName, struct cdev **ppDev) ++static void vgdrvFreeBSDDtr(void *pSession) + { +- int iUnit; +- int rc; +- +- Log(("vgdrvFreeBSDClone: pszName=%s ppDev=%p\n", pszName, ppDev)); +- +- /* +- * One device node per user, si_drv1 points to the session. +- * /dev/vboxguest<N> where N = {0...255}. +- */ +- if (!ppDev) +- return; +- if (strcmp(pszName, "vboxguest") == 0) +- iUnit = -1; +- else if (dev_stdclone(pszName, NULL, "vboxguest", &iUnit) != 1) +- return; +- if (iUnit >= 256) +- { +- Log(("vgdrvFreeBSDClone: iUnit=%d >= 256 - rejected\n", iUnit)); +- return; +- } +- +- Log(("vgdrvFreeBSDClone: pszName=%s iUnit=%d\n", pszName, iUnit)); +- +- rc = clone_create(&g_pvgdrvFreeBSDClones, &g_vgdrvFreeBSDChrDevSW, &iUnit, ppDev, 0); +- Log(("vgdrvFreeBSDClone: clone_create -> %d; iUnit=%d\n", rc, iUnit)); +- if (rc) +- { +- *ppDev = make_dev(&g_vgdrvFreeBSDChrDevSW, +- iUnit, +- UID_ROOT, +- GID_WHEEL, +- 0664, +- "vboxguest%d", iUnit); +- if (*ppDev) +- { +- dev_ref(*ppDev); +- (*ppDev)->si_flags |= SI_CHEAPCLONE; +- Log(("vgdrvFreeBSDClone: Created *ppDev=%p iUnit=%d si_drv1=%p si_drv2=%p\n", +- *ppDev, iUnit, (*ppDev)->si_drv1, (*ppDev)->si_drv2)); +- (*ppDev)->si_drv1 = (*ppDev)->si_drv2 = NULL; +- } +- else +- Log(("vgdrvFreeBSDClone: make_dev iUnit=%d failed\n", iUnit)); +- } +- else +- Log(("vgdrvFreeBSDClone: Existing *ppDev=%p iUnit=%d si_drv1=%p si_drv2=%p\n", +- *ppDev, iUnit, (*ppDev)->si_drv1, (*ppDev)->si_drv2)); ++ VGDrvCommonCloseSession(&g_DevExt, pSession); ++ ASMAtomicDecU32(&cUsers); + } + + /** + * File open handler + * + */ +-#if __FreeBSD_version >= 700000 +-static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOpen, struct thread *pTd, struct file *pFd) +-#else +-static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOpen, struct thread *pTd) +-#endif ++static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOpen, int DevType, struct thread *pTd) + { + int rc; + PVBOXGUESTSESSION pSession; +@@ -250,12 +195,6 @@ static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOp + LogFlow(("vgdrvFreeBSDOpen:\n")); + + /* +- * Try grab it (we don't grab the giant, remember). +- */ +- if (!ASMAtomicCmpXchgPtr(&pDev->si_drv1, (void *)0x42, NULL)) +- return EBUSY; +- +- /* + * Create a new session. + */ + fRequestor = VMMDEV_REQUESTOR_USERMODE | VMMDEV_REQUESTOR_TRUST_NOT_GIVEN; +@@ -272,47 +211,20 @@ static int vgdrvFreeBSDOpen(struct cdev *pDev, int fOp + rc = VGDrvCommonCreateUserSession(&g_DevExt, fRequestor, &pSession); + if (RT_SUCCESS(rc)) + { +- if (ASMAtomicCmpXchgPtr(&pDev->si_drv1, pSession, (void *)0x42)) +- { +- Log(("vgdrvFreeBSDOpen: success - g_DevExt=%p pSession=%p rc=%d pid=%d\n", &g_DevExt, pSession, rc, (int)RTProcSelf())); ++ Log(("vgdrvFreeBSDOpen: success - g_DevExt=%p pSession=%p rc=%d pid=%d\n", &g_DevExt, pSession, rc, (int)RTProcSelf())); ++ rc = devfs_set_cdevpriv(pSession, vgdrvFreeBSDDtr); ++ if (rc) ++ VGDrvCommonCloseSession(&g_DevExt, pSession); ++ else + ASMAtomicIncU32(&cUsers); +- return 0; +- } +- +- VGDrvCommonCloseSession(&g_DevExt, pSession); ++ return rc; + } + + LogRel(("vgdrvFreeBSDOpen: failed. rc=%d\n", rc)); + return RTErrConvertToErrno(rc); + } + +-/** +- * File close handler +- * +- */ +-static int vgdrvFreeBSDClose(struct cdev *pDev, int fFile, int DevType, struct thread *pTd) +-{ +- PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)pDev->si_drv1; +- Log(("vgdrvFreeBSDClose: fFile=%#x pSession=%p\n", fFile, pSession)); + +- /* +- * Close the session if it's still hanging on to the device... +- */ +- if (RT_VALID_PTR(pSession)) +- { +- VGDrvCommonCloseSession(&g_DevExt, pSession); +- if (!ASMAtomicCmpXchgPtr(&pDev->si_drv1, NULL, pSession)) +- Log(("vgdrvFreeBSDClose: si_drv1=%p expected %p!\n", pDev->si_drv1, pSession)); +- ASMAtomicDecU32(&cUsers); +- /* Don't use destroy_dev here because it may sleep resulting in a hanging user process. */ +- destroy_dev_sched(pDev); +- } +- else +- Log(("vgdrvFreeBSDClose: si_drv1=%p!\n", pSession)); +- return 0; +-} +- +- + /** + * I/O control request. + * +@@ -326,8 +238,12 @@ static int vgdrvFreeBSDIOCtl(struct cdev *pDev, u_long + static int vgdrvFreeBSDIOCtl(struct cdev *pDev, u_long ulCmd, caddr_t pvData, int fFile, struct thread *pTd) + { + PVBOXGUESTSESSION pSession; +- devfs_get_cdevpriv((void **)&pSession); ++ int rc; + ++ rc = devfs_get_cdevpriv((void **)&pSession); ++ if (rc) ++ return rc; ++ + /* + * Deal with the fast ioctl path first. + */ +@@ -526,8 +442,10 @@ static int vgdrvFreeBSDPoll(struct cdev *pDev, int fEv + + LogFlow(("vgdrvFreeBSDPoll: fEvents=%d\n", fEvents)); + +- PVBOXGUESTSESSION pSession = (PVBOXGUESTSESSION)pDev->si_drv1; +- if (RT_UNLIKELY(!RT_VALID_PTR(pSession))) { ++ ++ rc = devfs_get_cdevpriv((void **)&pSession); ++ if (rc) ++ { + Log(("vgdrvFreeBSDPoll: no state data for %s\n", devtoname(pDev))); + return (fEvents & (POLLHUP|POLLIN|POLLRDNORM|POLLOUT|POLLWRNORM)); + } +@@ -568,11 +486,8 @@ static int vgdrvFreeBSDDetach(device_t pDevice) + /* + * Reverse what we did in vgdrvFreeBSDAttach. + */ +- if (g_vgdrvFreeBSDEHTag != NULL) +- EVENTHANDLER_DEREGISTER(dev_clone, g_vgdrvFreeBSDEHTag); ++ destroy_dev(g_pDev); + +- clone_cleanup(&g_pvgdrvFreeBSDClones); +- + vgdrvFreeBSDRemoveIRQ(pDevice, pState); + + if (pState->pVMMDevMemRes) +@@ -738,18 +653,21 @@ static int vgdrvFreeBSDAttach(device_t pDevice) + VGDrvCommonProcessOptionsFromHost(&g_DevExt); + + /* +- * Configure device cloning. ++ * Configure device. + */ +- clone_setup(&g_pvgdrvFreeBSDClones); +- g_vgdrvFreeBSDEHTag = EVENTHANDLER_REGISTER(dev_clone, vgdrvFreeBSDClone, 0, 1000); +- if (g_vgdrvFreeBSDEHTag) ++ g_pDev = make_dev(&g_vgdrvFreeBSDChrDevSW, ++ 0, ++ UID_ROOT, ++ GID_WHEEL, ++ 0664, ++ "vboxguest"); ++ if (g_pDev) + { + printf(DEVICE_NAME ": loaded successfully\n"); + return 0; + } + +- printf(DEVICE_NAME ": EVENTHANDLER_REGISTER(dev_clone,,,) failed\n"); +- clone_cleanup(&g_pvgdrvFreeBSDClones); ++ printf(DEVICE_NAME ": make_dev failed\n"); + vgdrvFreeBSDRemoveIRQ(pDevice, pState); + } + else +@@ -793,8 +711,12 @@ static driver_t vgdrvFreeBSDDriver = + sizeof(struct VBoxGuestDeviceState), + }; + ++#if __FreeBSD_version >= 1400058 ++DRIVER_MODULE(vboxguest, pci, vgdrvFreeBSDDriver, 0, 0); ++#else + static devclass_t vgdrvFreeBSDClass; + + DRIVER_MODULE(vboxguest, pci, vgdrvFreeBSDDriver, vgdrvFreeBSDClass, 0, 0); ++#endif + MODULE_VERSION(vboxguest, 1); + diff --git a/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile b/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile new file mode 100644 index 000000000000..1430dbb721fb --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-Makefile @@ -0,0 +1,27 @@ +--- src/VBox/Additions/common/VBoxGuest/freebsd/Makefile.orig 2025-08-13 19:41:14 UTC ++++ src/VBox/Additions/common/VBoxGuest/freebsd/Makefile +@@ -35,7 +35,7 @@ KMOD = vboxguest + # + KMOD = vboxguest + +-CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS ++CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_GUEST -DIN_GUEST_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBGL_VBOXGUEST -DVBOX_WITH_HGCM -DVBOX_WITH_64_BITS_GUESTS + + .if (${MACHINE_ARCH} == "i386") + CFLAGS += -DRT_ARCH_X86 +@@ -91,6 +91,7 @@ SRCS += \ + handletable.c \ + handletablectx.c \ + once.c \ ++ term.c \ + thread.c + + .PATH: ${.CURDIR}/common/string +@@ -163,6 +164,7 @@ SRCS += \ + + .PATH: ${.CURDIR}/r0drv + SRCS += \ ++ alloc-ef-r0drv.c \ + alloc-r0drv.c \ + initterm-r0drv.c \ + memobj-r0drv.c \ diff --git a/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-files_vboxguest b/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-files_vboxguest new file mode 100644 index 000000000000..57eed06c6dbe --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-common-VBoxGuest-freebsd-files_vboxguest @@ -0,0 +1,34 @@ +--- src/VBox/Additions/common/VBoxGuest/freebsd/files_vboxguest.orig 2025-08-13 19:41:14 UTC ++++ src/VBox/Additions/common/VBoxGuest/freebsd/files_vboxguest +@@ -74,6 +74,7 @@ FILES_VBOXGUEST_NOBIN=" \ + ${PATH_ROOT}/include/iprt/time.h=>include/iprt/time.h \ + ${PATH_ROOT}/include/iprt/timer.h=>include/iprt/timer.h \ + ${PATH_ROOT}/include/iprt/types.h=>include/iprt/types.h \ ++ ${PATH_ROOT}/include/iprt/uni.h=>include/iprt/uni.h \ + ${PATH_ROOT}/include/iprt/utf16.h=>include/iprt/utf16.h \ + ${PATH_ROOT}/include/iprt/uuid.h=>include/iprt/uuid.h \ + ${PATH_ROOT}/include/iprt/crc.h=>include/iprt/crc.h \ +@@ -125,6 +126,7 @@ FILES_VBOXGUEST_NOBIN=" \ + ${PATH_ROOT}/src/VBox/Runtime/common/misc/handletable.h=>common/misc/handletable.h \ + ${PATH_ROOT}/src/VBox/Runtime/common/misc/handletablectx.cpp=>common/misc/handletablectx.c \ + ${PATH_ROOT}/src/VBox/Runtime/common/misc/once.cpp=>common/misc/once.c \ ++ ${PATH_ROOT}/src/VBox/Runtime/common/misc/term.cpp=>common/misc/term.c \ + ${PATH_ROOT}/src/VBox/Runtime/common/misc/thread.cpp=>common/misc/thread.c \ + ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg1Weak.cpp=>common/misc/RTAssertMsg1Weak.c \ + ${PATH_ROOT}/src/VBox/Runtime/common/misc/RTAssertMsg2.cpp=>common/misc/RTAssertMsg2.c \ +@@ -200,6 +202,7 @@ FILES_VBOXGUEST_NOBIN=" \ + ${PATH_ROOT}/src/VBox/Runtime/generic/errvars-generic.cpp=>generic/errvars-generic.c \ + ${PATH_ROOT}/src/VBox/Runtime/generic/timer-generic.cpp=>generic/timer-generic.c \ + ${PATH_ROOT}/src/VBox/Runtime/generic/mppresent-generic.cpp=>generic/mppresent-generic.c \ ++ ${PATH_ROOT}/src/VBox/Runtime/r0drv/alloc-ef-r0drv.cpp=>r0drv/alloc-ef-r0drv.c \ + ${PATH_ROOT}/src/VBox/Runtime/r0drv/alloc-r0drv.cpp=>r0drv/alloc-r0drv.c \ + ${PATH_ROOT}/src/VBox/Runtime/r0drv/alloc-r0drv.h=>r0drv/alloc-r0drv.h \ + ${PATH_ROOT}/src/VBox/Runtime/r0drv/initterm-r0drv.cpp=>r0drv/initterm-r0drv.c \ +@@ -226,6 +229,7 @@ FILES_VBOXGUEST_NOBIN=" \ + ${PATH_ROOT}/src/VBox/Runtime/r0drv/freebsd/sleepqueue-r0drv-freebsd.h=>r0drv/freebsd/sleepqueue-r0drv-freebsd.h \ + ${PATH_ROOT}/src/VBox/Runtime/r0drv/generic/semspinmutex-r0drv-generic.c=>r0drv/generic/semspinmutex-r0drv-generic.c \ + ${PATH_ROOT}/src/VBox/Runtime/r0drv/generic/mpnotification-r0drv-generic.cpp=>r0drv/generic/mpnotification-r0drv-generic.c \ ++ ${PATH_ROOT}/src/VBox/Runtime/r0drv/generic/threadctxhooks-r0drv-generic.cpp=>r0drv/generic/threadctxhooks-r0drv-generic.c \ + ${PATH_ROOT}/src/VBox/Runtime/r0drv/generic/RTMpIsCpuWorkPending-r0drv-generic.cpp=>r0drv/generic/RTMpIsCpuWorkPending-r0drv-generic.c \ + ${PATH_ROOT}/src/VBox/Runtime/r0drv/memobj-r0drv.cpp=>r0drv/memobj-r0drv.c \ + ${PATH_ROOT}/src/VBox/Runtime/VBox/log-vbox.cpp=>VBox/log-vbox.c \ diff --git a/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-x11-Installer-98vboxadd-xclient b/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-x11-Installer-98vboxadd-xclient new file mode 100644 index 000000000000..5ac88befbb88 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-x11-Installer-98vboxadd-xclient @@ -0,0 +1,25 @@ +--- src/VBox/Additions/x11/Installer/98vboxadd-xclient.orig 2025-08-13 19:41:21 UTC ++++ src/VBox/Additions/x11/Installer/98vboxadd-xclient +@@ -42,15 +42,15 @@ elif test -z "${SSH_CONNECTION}"; then + # not use "exit" here as this script is "source"d, not executed. + + # Check wheather X11 or Wayland version of VBoxClient should be started. +- vbox_wl_check=$(/usr/bin/vboxwl --check 2> /dev/null) ++ vbox_wl_check=$(/usr/local/bin/vboxwl --check 2> /dev/null) + if test "$vbox_wl_check" = "WL"; then +- /usr/bin/VBoxClient --wayland ++ /usr/local/bin/VBoxClient --wayland + else +- /usr/bin/VBoxClient --clipboard +- /usr/bin/VBoxClient --seamless +- /usr/bin/VBoxClient --draganddrop ++ /usr/local/bin/VBoxClient --clipboard ++ /usr/local/bin/VBoxClient --seamless ++ /usr/local/bin/VBoxClient --draganddrop + fi + +- /usr/bin/VBoxClient --checkhostversion +- /usr/bin/VBoxClient --vmsvga-session # In case VMSVGA emulation is enabled ++ /usr/local/bin/VBoxClient --checkhostversion ++ /usr/local/bin/VBoxClient --vmsvga-session # In case VMSVGA emulation is enabled + fi diff --git a/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-x11-Installer-vboxclient.desktop b/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-x11-Installer-vboxclient.desktop new file mode 100644 index 000000000000..a76eb7616038 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src-VBox-Additions-x11-Installer-vboxclient.desktop @@ -0,0 +1,10 @@ +--- src/VBox/Additions/x11/Installer/vboxclient.desktop.orig 2020-05-13 19:37:09 UTC ++++ src/VBox/Additions/x11/Installer/vboxclient.desktop +@@ -8,6 +8,6 @@ Comment[C]=VirtualBox User Session Services + Comment=VirtualBox User Session Services + Comment[it]=Servizi di sessione utente di VirtualBox + Comment[pl]=Usługi sesji użytkownika VirtualBox +-Exec=/usr/bin/VBoxClient-all ++Exec=/usr/local/bin/VBoxClient-all + X-GNOME-Autostart-enabled=true + X-KDE-autostart-after=panel diff --git a/emulators/virtualbox-ose-72/files/patch-src-VBox-HostDrivers-VBoxNetAdp-Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src-VBox-HostDrivers-VBoxNetAdp-Makefile.kmk new file mode 100644 index 000000000000..2427e708059b --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src-VBox-HostDrivers-VBoxNetAdp-Makefile.kmk @@ -0,0 +1,20 @@ +--- src/VBox/HostDrivers/VBoxNetAdp/Makefile.kmk.orig 2025-08-13 19:51:10 UTC ++++ src/VBox/HostDrivers/VBoxNetAdp/Makefile.kmk +@@ -220,10 +220,14 @@ ifeq ($(KBUILD_TARGET),freebsd) + $$(if $$(eq $$(VBoxNetAdp/freebsd/Makefile_VBOX_HARDENED),$$(VBOX_WITH_HARDENING)),,FORCE) \ + | $$(dir $$@) + $(QUIET)$(RM) -f -- $@ +- ifndef VBOX_WITH_HARDENING +- $(QUIET)$(SED) -e "s;VBOX_WITH_HARDENING;;g" --output $@ $< +- else + $(QUIET)$(CP) -f $< $@ ++ ifndef VBOX_WITH_HARDENING ++ $(QUIET)$(SED) -e "s;-DVBOX_WITH_HARDENING;;g" --output $@.tmp $@ ++ $(QUIET)$(MV) -f $@.tmp $@ ++ endif ++ ifndef VBOX_WITH_NETFLT_VIMAGE ++ $(QUIET)$(SED) -e "s;-DVIMAGE;;g" --output $@.tmp $@ ++ $(QUIET)$(MV) -f $@.tmp $@ + endif + + endif # freebsd diff --git a/emulators/virtualbox-ose-72/files/patch-src-VBox-HostDrivers-VBoxNetFlt-freebsd-files_vboxnetflt b/emulators/virtualbox-ose-72/files/patch-src-VBox-HostDrivers-VBoxNetFlt-freebsd-files_vboxnetflt new file mode 100644 index 000000000000..1ee95be5b24d --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src-VBox-HostDrivers-VBoxNetFlt-freebsd-files_vboxnetflt @@ -0,0 +1,10 @@ +--- src/VBox/HostDrivers/VBoxNetFlt/freebsd/files_vboxnetflt.orig 2025-08-13 19:51:11 UTC ++++ src/VBox/HostDrivers/VBoxNetFlt/freebsd/files_vboxnetflt +@@ -73,6 +73,7 @@ VBOX_VBOXNETFLT_SOURCES=" \ + ${PATH_ROOT}/include/iprt/uni.h=>include/iprt/uni.h \ + ${PATH_ROOT}/include/iprt/utf16.h=>include/iprt/utf16.h \ + ${PATH_ROOT}/include/iprt/uuid.h=>include/iprt/uuid.h \ ++ ${PATH_ROOT}/include/iprt/x86.h=>include/iprt/x86.h \ + ${PATH_ROOT}/include/iprt/x86-helpers.h=>include/iprt/x86-helpers.h \ + ${PATH_ROOT}/include/iprt/nocrt/limits.h=>include/iprt/nocrt/limits.h \ + ${PATH_ROOT}/include/VBox/cdefs.h=>include/VBox/cdefs.h \ diff --git a/emulators/virtualbox-ose-72/files/patch-src-VBox-Installer-Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src-VBox-Installer-Makefile.kmk new file mode 100644 index 000000000000..f9e9ce8ec516 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src-VBox-Installer-Makefile.kmk @@ -0,0 +1,14 @@ +--- src/VBox/Installer/Makefile.kmk.orig 2025-08-13 19:51:15 UTC ++++ src/VBox/Installer/Makefile.kmk +@@ -51,9 +51,11 @@ ifndef VBOX_ONLY_SDK + if "$(KBUILD_TARGET)" == "win" && "$(KBUILD_HOST)" == "win" + include $(PATH_SUB_CURRENT)/win/Makefile.kmk + endif ++if 0 + if "$(KBUILD_TARGET)" == "freebsd" && "$(KBUILD_HOST)" == "freebsd" + include $(PATH_SUB_CURRENT)/freebsd/Makefile.kmk + endif ++endif + endif + + include $(PATH_SUB_CURRENT)/common/Makefile.kmk diff --git a/emulators/virtualbox-ose-72/files/patch-src-VBox-Installer-freebsd-VBox.sh b/emulators/virtualbox-ose-72/files/patch-src-VBox-Installer-freebsd-VBox.sh new file mode 100644 index 000000000000..b4c177a54d1c --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src-VBox-Installer-freebsd-VBox.sh @@ -0,0 +1,77 @@ +--- src/VBox/Installer/freebsd/VBox.sh.orig 2016-08-27 05:10:34 UTC ++++ src/VBox/Installer/freebsd/VBox.sh +@@ -0,0 +1,74 @@ ++#!/bin/sh ++# ++# Oracle VM VirtualBox startup script, FreeBSD hosts. ++# ++# Copyright (C) 2006-2012 Oracle Corporation ++# ++# This file is part of VirtualBox Open Source Edition (OSE), as ++# available from http://www.virtualbox.org. This file is free software; ++# you can redistribute it and/or modify it under the terms of the GNU ++# General Public License (GPL) as published by the Free Software ++# Foundation, in version 2 as it comes in the "COPYING" file of the ++# VirtualBox OSE distribution. VirtualBox OSE is distributed in the ++# hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. ++# ++ ++PATH="/sbin:/bin:/usr/sbin:/usr/bin:%%LOCALBASE%%/sbin:%%LOCALBASE%%/bin" ++CONFIG="%%VBOX_ETC%%/vbox.cfg" ++ ++test -r "${CONFIG}" && ++ . "${CONFIG}" ++test -z "${INSTALL_DIR}" && ++ if test -d %%VBOX_DIR%% && ++ test -f %%VBOX_DIR%%/VBoxRT.so; then ++ INSTALL_DIR=%%VBOX_DIR%% ++ else ++ >&2 echo "Could not find VirtualBox installation. Please reinstall." ++ exit 1 ++ fi ++ ++if [ -d /etc/vbox ]; then ++ >&2 cat <<-EOH ++ WARNING: Directory /etc/vbox found, but ignored. VirtualBox ++ configuration files are stored in %%VBOX_ETC%%/. ++ EOH ++fi ++ ++# workaround for the KDE dialog problem ++KDE_FORK_SLAVES=1; export KDE_FORK_SLAVES ++ ++APP=`basename $0` ++case "$APP" in ++ VirtualBox|virtualbox) ++ exec "$INSTALL_DIR/VirtualBox" "$@" ++ ;; ++ VirtualBoxVM|virtualboxvm) ++ exec "$INSTALL_DIR/VirtualBoxVM" "$@" ++ ;; ++ VBoxManage|vboxmanage) ++ exec "$INSTALL_DIR/VBoxManage" "$@" ++ ;; ++ VBoxSDL|vboxsdl) ++ exec "$INSTALL_DIR/VBoxSDL" "$@" ++ ;; ++ VBoxVRDP|VBoxHeadless|vboxheadless) ++ exec "$INSTALL_DIR/VBoxHeadless" "$@" ++ ;; ++ VBoxAutostart|vboxautostart) ++ exec "$INSTALL_DIR/VBoxAutostart" "$@" ++ ;; ++ VBoxBalloonCtrl|vboxballoonctrl) ++ exec "$INSTALL_DIR/VBoxBalloonCtrl" "$@" ++ ;; ++ VBoxBugReport|vboxbugreport) ++ exec "$INSTALL_DIR/VBoxBugReport" "$@" ++ ;; ++ vboxwebsrv) ++ exec "$INSTALL_DIR/vboxwebsrv" "$@" ++ ;; ++ *) ++ >&2 echo "Unknown application - $APP" ++ exit 1 ++ ;; ++esac ++exit 0 diff --git a/emulators/virtualbox-ose-72/files/patch-src-VBox-Main-src-server-VirtualBoxImpl.cpp b/emulators/virtualbox-ose-72/files/patch-src-VBox-Main-src-server-VirtualBoxImpl.cpp new file mode 100644 index 000000000000..85c886d9ec84 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src-VBox-Main-src-server-VirtualBoxImpl.cpp @@ -0,0 +1,11 @@ +--- src/VBox/Main/src-server/VirtualBoxImpl.cpp.orig 2025-08-13 19:51:27 UTC ++++ src/VBox/Main/src-server/VirtualBoxImpl.cpp +@@ -3097,7 +3097,7 @@ int VirtualBox::i_encryptSettingBytes(const uint8_t *a + if (aCiphertextSize < 32) + return VERR_INVALID_PARAMETER; + +- AssertCompile(sizeof(m->SettingsCipherKey) >= 32); ++ // AssertCompile(sizeof(m->SettingsCipherKey) >= 32); + + /* store the first 8 bytes of the cipherkey for verification */ + for (i = 0, j = 0; i < 8; i++, j++) diff --git a/emulators/virtualbox-ose-72/files/patch-src-VBox-Runtime-r0drv-freebsd-sleepqueue-r0drv-freebsd.h b/emulators/virtualbox-ose-72/files/patch-src-VBox-Runtime-r0drv-freebsd-sleepqueue-r0drv-freebsd.h new file mode 100644 index 000000000000..d3f79ede9e50 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src-VBox-Runtime-r0drv-freebsd-sleepqueue-r0drv-freebsd.h @@ -0,0 +1,39 @@ +Without the first part of this patch, any waits for periods shorter than a +single tick return immediately leading to a lot of unnecessary spinning. For +example, I observe that my guest's idle loop does a lot of sleeps with periods +slightly shorter than 1 ms (1/hz), e.g. 900us. All that waiting turns into pure +spinning and VirtualBox eats 100% of a core. + +The clamping improves the situation significantly. Also, it (approximately) +follows what tvtohz does. The rest of the patch just chases an upstream +KPI change. + +Submitted by: Andriy Gapon <avg@FreeBSD.org> +--- src/VBox/Runtime/r0drv/freebsd/sleepqueue-r0drv-freebsd.h.orig 2025-08-13 19:51:51 UTC ++++ src/VBox/Runtime/r0drv/freebsd/sleepqueue-r0drv-freebsd.h +@@ -94,6 +94,8 @@ DECLINLINE(uint32_t) rtR0SemBsdWaitUpdateTimeout(PRTR0 + uint64_t cTicks = ASMMultU64ByU32DivByU32(uTimeout, hz, UINT32_C(1000000000)); + if (cTicks >= INT_MAX) + return RTSEMWAIT_FLAGS_INDEFINITE; ++ else if (cTicks == 0 && uTimeout > 0) ++ pWait->iTimeout = 1; + else + pWait->iTimeout = (int)cTicks; + #endif +@@ -310,10 +312,16 @@ DECLINLINE(void) rtR0SemBsdSignal(void *pvWaitChan) + DECLINLINE(void) rtR0SemBsdSignal(void *pvWaitChan) + { + sleepq_lock(pvWaitChan); ++#if __FreeBSD_version < 1500022 + int fWakeupSwapProc = sleepq_signal(pvWaitChan, SLEEPQ_CONDVAR, 0, 0); ++#else ++ sleepq_signal(pvWaitChan, SLEEPQ_CONDVAR, 0, 0); ++#endif + sleepq_release(pvWaitChan); ++#if __FreeBSD_version < 1500022 + if (fWakeupSwapProc) + kick_proc0(); ++#endif + } + + /** diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_common_VBoxService_VBoxServiceVMInfo.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_common_VBoxService_VBoxServiceVMInfo.cpp new file mode 100644 index 000000000000..0c463e3d9923 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_common_VBoxService_VBoxServiceVMInfo.cpp @@ -0,0 +1,71 @@ +--- src/VBox/Additions/common/VBoxService/VBoxServiceVMInfo.cpp.orig 2025-08-13 19:41:16 UTC ++++ src/VBox/Additions/common/VBoxService/VBoxServiceVMInfo.cpp +@@ -77,8 +77,8 @@ + # include <net/if.h> + # include <pwd.h> /* getpwuid */ + # include <unistd.h> +-# if !defined(RT_OS_OS2) && !defined(RT_OS_FREEBSD) && !defined(RT_OS_HAIKU) +-# include <utmpx.h> /** @todo FreeBSD 9 should have this. */ ++# if !defined(RT_OS_OS2) && !defined(RT_OS_HAIKU) ++# include <utmpx.h> + # endif + # ifdef RT_OS_OS2 + # include <net/if_dl.h> +@@ -573,7 +573,7 @@ static void vgsvcVMInfoWriteFixedProperties(void) + } + + +-#if defined(VBOX_WITH_DBUS) && defined(RT_OS_LINUX) /* Not yet for Solaris/FreeBSB. */ ++#if defined(VBOX_WITH_DBUS) && (defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD)) /* Not yet for Solaris. */ + /* + * Simple wrappers to work around compiler-specific va_list madness. + */ +@@ -702,12 +702,6 @@ static int vgsvcVMInfoWriteUsers(void) + #ifdef RT_OS_WINDOWS + rc = VGSvcVMInfoWinWriteUsers(&g_VMInfoPropCache, &pszUserList, &cUsersInList); + +-#elif defined(RT_OS_FREEBSD) +- /** @todo FreeBSD: Port logged on user info retrieval. +- * However, FreeBSD 9 supports utmpx, so we could use the code +- * block below (?). */ +- rc = VERR_NOT_IMPLEMENTED; +- + #elif defined(RT_OS_HAIKU) + /** @todo Haiku: Port logged on user info retrieval. */ + rc = VERR_NOT_IMPLEMENTED; +@@ -733,7 +727,7 @@ static int vgsvcVMInfoWriteUsers(void) + while ( (ut_user = getutxent()) + && RT_SUCCESS(rc)) + { +-# ifdef RT_OS_DARWIN /* No ut_user->ut_session on Darwin */ ++# if defined(RT_OS_DARWIN) || defined(RT_OS_FREEBSD) /* No ut_user->ut_session on Darwin/FreeBSD */ + VGSvcVerbose(4, "Found entry '%s' (type: %d, PID: %RU32)\n", ut_user->ut_user, ut_user->ut_type, ut_user->ut_pid); + # else + VGSvcVerbose(4, "Found entry '%s' (type: %d, PID: %RU32, session: %RU32)\n", +@@ -749,7 +743,7 @@ static int vgsvcVMInfoWriteUsers(void) + } + + # ifdef VBOX_WITH_DBUS +-# if defined(RT_OS_LINUX) /* Not yet for Solaris/FreeBSB. */ ++# if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) /* Not yet for Solaris. */ + DBusError dbErr; + DBusConnection *pConnection = NULL; + int rc2 = RTDBusLoadLib(); +@@ -1074,7 +1068,7 @@ static int vgsvcVMInfoWriteUsers(void) + if ( fHaveLibDbus + && dbus_error_is_set(&dbErr)) + dbus_error_free(&dbErr); +-# endif /* RT_OS_LINUX */ ++# endif /* RT_OS_LINUX || RT_OS_FREEBSD */ + # endif /* VBOX_WITH_DBUS */ + + /* Calc the string length. */ +@@ -1109,7 +1103,7 @@ static int vgsvcVMInfoWriteUsers(void) + RTMemFree(papszUsers); + + endutxent(); /* Close utmpx file. */ +-#endif /* !RT_OS_WINDOWS && !RT_OS_FREEBSD && !RT_OS_HAIKU && !RT_OS_OS2 */ ++#endif /* !RT_OS_WINDOWS && !RT_OS_HAIKU && !RT_OS_OS2 */ + + Assert(RT_FAILURE(rc) || cUsersInList == 0 || (pszUserList && *pszUserList)); + diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_common_pam_pam__vbox.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_common_pam_pam__vbox.cpp new file mode 100644 index 000000000000..ff9853417bdd --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_common_pam_pam__vbox.cpp @@ -0,0 +1,20 @@ +--- src/VBox/Additions/common/pam/pam_vbox.cpp.orig 2025-08-13 19:41:17 UTC ++++ src/VBox/Additions/common/pam/pam_vbox.cpp +@@ -113,7 +113,7 @@ static void pam_vbox_writesyslog(char *pszBuf) + openlog("pam_vbox", LOG_PID, LOG_AUTHPRIV); + syslog(LOG_ERR, "%s", pszBuf); + closelog(); +-#elif defined(RT_OS_SOLARIS) ++#elif defined(RT_OS_FREEBSD) || defined(RT_OS_SOLARIS) + syslog(LOG_ERR, "pam_vbox: %s\n", pszBuf); + #endif + } +@@ -192,7 +192,7 @@ static int vbox_set_msg(pam_handle_t *hPAM, int iStyle + + pam_message msg; + msg.msg_style = iStyle; +-#ifdef RT_OS_SOLARIS ++#if defined(RT_OS_FREEBSD) || defined(RT_OS_SOLARIS) + msg.msg = (char*)pszText; + #else + msg.msg = pszText; diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_Makefile b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_Makefile new file mode 100644 index 000000000000..4f026e38c70a --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_Makefile @@ -0,0 +1,38 @@ +--- src/VBox/Additions/freebsd/Makefile.orig 2025-08-13 19:41:17 UTC ++++ src/VBox/Additions/freebsd/Makefile +@@ -40,6 +40,14 @@ all: + cp vboxvfs/vboxvfs.ko .; \ + fi; \ + fi ++ @echo ++ @if [ -d mount_vboxvfs ]; then \ ++ echo "=== Building mount_vboxvfs binary ==="; \ ++ $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C mount_vboxvfs clean obj depend all; \ ++ if [ -f mount_vboxvfs ]; then \ ++ cp mount_vboxvfs/mount_vboxvfs .; \ ++ fi; \ ++ fi + + + install: +@@ -47,13 +55,19 @@ install: + @if [ -d vboxvfs ]; then \ + $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C vboxvfs install; \ + fi ++ @if [ -d mount_vboxvfs ]; then \ ++ $(MAKE) KBUILD_VERBOSE=$(KBUILD_VERBOSE) -C mount_vboxvfs install; \ ++ fi + + clean: + @$(MAKE) -C vboxguest clean + @if [ -d vboxvfs ]; then \ + $(MAKE) -C vboxvfs clean; \ + fi +- rm -f vboxguest.*o vboxvfs.*o ++ @if [ -d mount_vboxvfs ]; then \ ++ $(MAKE) -C mount_vboxvfs clean; \ ++ fi ++ rm -f vboxguest.*o vboxvfs.*o mount_vboxvfs + + load: + @/sbin/kldunload vboxvfs || true diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_Makefile.kmk new file mode 100644 index 000000000000..821e1fc5d431 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_Makefile.kmk @@ -0,0 +1,31 @@ +--- src/VBox/Additions/freebsd/Makefile.kmk.orig 2025-08-13 19:41:17 UTC ++++ src/VBox/Additions/freebsd/Makefile.kmk +@@ -33,8 +33,9 @@ endif + endif + + # Include sub-makefiles. +-#include $(PATH_SUB_CURRENT)/vboxvfs/Makefile.kmk +-include $(PATH_SUB_CURRENT)/drm/Makefile.kmk ++include $(PATH_SUB_CURRENT)/vboxvfs/Makefile.kmk ++#include $(PATH_SUB_CURRENT)/drm/Makefile.kmk ++include $(PATH_SUB_CURRENT)/mount_vboxvfs/Makefile.kmk + + # + # Globals +@@ -76,11 +77,14 @@ VBOX_FBSD_ADD_STRIP_BIN = \ + vboxvideo_drv_14.so \ + vboxvideo_drv_15.so \ + vboxvideo_drv_16.so \ +- vboxvideo_drv_17.so ++ vboxvideo_drv_17.so \ ++ $(if $(VBOX_WITH_PAM),pam_vbox.so,) \ ++ VBoxOGL.so \ ++ mount_vboxvfs + + VBOX_FBSD_ADD_MODULES = \ + vboxguest \ +- vboxvideo_drm ++ vboxvfs + + # + # All the bin files that go into the archives. diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_drm_vboxvideo__drm.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_drm_vboxvideo__drm.c new file mode 100644 index 000000000000..3ab11cbd1ed7 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_drm_vboxvideo__drm.c @@ -0,0 +1,17 @@ +--- src/VBox/Additions/freebsd/drm/vboxvideo_drm.c.orig 2025-08-13 19:41:18 UTC ++++ src/VBox/Additions/freebsd/drm/vboxvideo_drm.c +@@ -164,10 +164,14 @@ static driver_t vboxvideo_driver = { + sizeof(struct drm_device) + }; + ++#if __FreeBSD_version >= 1400058 ++DRIVER_MODULE(vboxvideo, vgapci, vboxvideo_driver, 0, 0); ++#else + extern devclass_t drm_devclass; + #if __FreeBSD_version >= 700010 + DRIVER_MODULE(vboxvideo, vgapci, vboxvideo_driver, drm_devclass, 0, 0); + #else + DRIVER_MODULE(vboxvideo, pci, vboxvideo_driver, drm_devclass, 0, 0); ++#endif + #endif + MODULE_DEPEND(vboxvideo, drm, 1, 1, 1); diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk new file mode 100644 index 000000000000..270472c045e3 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_Makefile.kmk @@ -0,0 +1,31 @@ +--- src/VBox/Additions/freebsd/mount_vboxvfs/Makefile.kmk.orig 2025-05-11 03:54:13 UTC ++++ src/VBox/Additions/freebsd/mount_vboxvfs/Makefile.kmk +@@ -0,0 +1,28 @@ ++# $Id: Makefile.kmk $ ++## @file ++# Sub-Makefile for the FreeBSD Shared folder mount utility. ++# ++ ++SUB_DEPTH = ../../../../.. ++include $(KBUILD_PATH)/subheader.kmk ++ ++ifneq ($(KBUILD_HOST),freebsd) ++$(error "The FreeBSD guest additions can only be built on FreeBSD!") ++endif ++ ++MOUNT= $(VBOX_FREEBSD_SRC)/../sbin/mount ++ ++CFLAGS+=-I$(MOUNT) ++ ++PROGRAMS += mount_vboxvfs ++mount_vboxvfs_TEMPLATE = NewVBoxGuestR3Exe ++mount_vboxvfs_SOURCES = mount_vboxvfs.c ++ ++ifdef HAVE_MNTOPTS_IN_LIBUTIL ++mount_vboxvfs_LIBS = util ++else ++mount_vboxvfs_SOURCES += $(MOUNT)/getmntopts.c ++endif ++ ++include $(FILE_KBUILD_SUB_FOOTER) ++ diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_mount__vboxvfs.8 b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_mount__vboxvfs.8 new file mode 100644 index 000000000000..41fcdd6d019b --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_mount__vboxvfs.8 @@ -0,0 +1,56 @@ +--- src/VBox/Additions/freebsd/mount_vboxvfs/mount_vboxvfs.8.orig 2025-08-28 22:09:24 UTC ++++ src/VBox/Additions/freebsd/mount_vboxvfs/mount_vboxvfs.8 +@@ -0,0 +1,53 @@ ++.\" ++.\" Copyright (c) 1992, 1993, 1994 ++.\" The Regents of the University of California. All rights reserved. ++.\" ++.\" Redistribution and use in source and binary forms, with or without ++.\" modification, are permitted provided that the following conditions ++.\" are met: ++.\" 1. Redistributions of source code must retain the above copyright ++.\" notice, this list of conditions and the following disclaimer. ++.\" 2. Redistributions in binary form must reproduce the above copyright ++.\" notice, this list of conditions and the following disclaimer in the ++.\" documentation and/or other materials provided with the distribution. ++.\" 4. Neither the name of the University nor the names of its contributors ++.\" may be used to endorse or promote products derived from this software ++.\" without specific prior written permission. ++.\" ++.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ++.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ++.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ++.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE ++.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL ++.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS ++.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ++.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT ++.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY ++.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ++.\" SUCH DAMAGE. ++.\" ++.Dd August 5, 2013 ++.Dt MOUNT_VBOXFS 8 ++.Os ++.Sh NAME ++.Nm mount_vboxfs ++.Nd "Mount the VirtualBox shared folder NAME from the host system to MOUNTPOINT" ++.Sh SYNOPSIS ++.Nm ++.Op Fl o Ar options ++.Ar NAME ++.Ar MOUNTPOINT ++.Sh DESCRIPTION ++The ++.Nm ++Mount the VirtualBox shared folder NAME from the host system to MOUNTPOINT ++.Pp ++The options are as follows: ++.Bl -tag -width indent ++.Fl w ++mount the shared folder writably (the default) ++.Fl r ++mount the shared folder read-only ++.Fl o ++OPTION[,OPTION...] use the mount options specified ++.El diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_mount__vboxvfs.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_mount__vboxvfs.c new file mode 100644 index 000000000000..1f85abc198b9 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_mount__vboxvfs_mount__vboxvfs.c @@ -0,0 +1,171 @@ +--- src/VBox/Additions/freebsd/mount_vboxvfs/mount_vboxvfs.c.orig 2025-08-28 22:09:24 UTC ++++ src/VBox/Additions/freebsd/mount_vboxvfs/mount_vboxvfs.c +@@ -0,0 +1,168 @@ ++/* ++* Copyright (c) 1992, 1993, 1994 ++* The Regents of the University of California. All rights reserved. ++* ++* Redistribution and use in source and binary forms, with or without ++* modification, are permitted provided that the following conditions ++* are met: ++* 1. Redistributions of source code must retain the above copyright ++* notice, this list of conditions and the following disclaimer. ++* 2. Redistributions in binary form must reproduce the above copyright ++* notice, this list of conditions and the following disclaimer in the ++* documentation and/or other materials provided with the distribution. ++* 4. Neither the name of the University nor the names of its contributors ++* may be used to endorse or promote products derived from this software ++* without specific prior written permission. ++* ++* THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND ++* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE ++* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ++* ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE ++* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL ++* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS ++* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) ++* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT ++* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY ++* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ++* SUCH DAMAGE. ++*/ ++ ++#include <sys/cdio.h> ++#include <sys/stat.h> ++#include <sys/file.h> ++#include <sys/iconv.h> ++#include <sys/param.h> ++#include <sys/linker.h> ++#include <sys/module.h> ++#include <sys/mount.h> ++#include <sys/uio.h> ++ ++#include <err.h> ++#include <errno.h> ++#include <stdlib.h> ++#include <stdio.h> ++#include <string.h> ++#include <sysexits.h> ++#include <unistd.h> ++ ++#include "mntopts.h" ++ ++#define MAX_HOST_NAME 256 ++static char mount_point[MAXPATHLEN + 1]; ++static char vboxfs_vfsname[] = "vboxvfs"; ++static struct mntopt mopts[] = { ++ MOPT_STDOPTS, ++ MOPT_END ++}; ++ ++static void usage(void) __dead2; ++ ++static void ++usage(void) ++{ ++ fprintf(stderr, ++ "Usage: [OPTIONS] NAME MOUNTPOINT\n" ++ "Mount the VirtualBox shared folder NAME to MOUNTPOINT.\n" ++ "\nOptions:\n" ++ " -w mount the shared folder writable \n" ++ " -r mount the shared folder read-only (the default)\n"); ++ exit(1); ++} ++ ++int ++main(int argc, char *argv[]) ++{ ++ struct iovec *iov; ++ struct stat st; ++ char *host_name; ++ char errmsg[255]; ++ uid_t uid; ++ gid_t gid; ++ mode_t dir_mode, file_mode; ++ int iovlen; ++ int ronly = 0; ++ int error, ch; ++ int mntflags = 0; ++ ++ iov = NULL; ++ iovlen = 0; ++ errmsg[0] = '\0'; ++ uid = (uid_t)-1; ++ gid = (gid_t)-1; ++ file_mode = 0; ++ dir_mode = 0; ++ ++ while ((ch = getopt(argc, argv, "rwo:h")) != -1) ++ switch(ch) { ++ default: ++ fprintf(stderr, "unknown option `%c:%#x'\n", ch, ch); ++ return (1); ++ ++ case '?': ++ case 'h': ++ usage(); ++ case 'r': ++ ronly = 1; ++ break; ++ case 'w': ++ ronly = 0; ++ break; ++ case 'o': ++ getmntopts(optarg, mopts, &mntflags, 0); ++ break; ++ } ++ ++ if (argc - optind < 2) ++ usage(); ++ ++ host_name = argv[optind]; ++ realpath(argv[optind+1], mount_point); ++ ++ if (stat(mount_point, &st) == -1) ++ err(EX_OSERR, "could not find mount point %s", mount_point); ++ ++ if (!S_ISDIR(st.st_mode)) { ++ errno = ENOTDIR; ++ err(EX_OSERR, "can't mount on %s", mount_point); ++ } ++ ++ if (strlen(host_name) > MAX_HOST_NAME - 1) ++ err(EX_OSERR, "host name is too big %s", host_name); ++ ++ if (ronly == 0) ++ mntflags |= MNT_ASYNC; ++ if (uid == (uid_t)-1) ++ uid = st.st_uid; ++ if (gid == (gid_t)-1) ++ gid = st.st_gid; ++ if (file_mode == 0) ++ file_mode = st.st_mode & (S_IRWXU | S_IRWXG | S_IRWXO); ++ if (dir_mode == 0) { ++ dir_mode = file_mode; ++ if (dir_mode & S_IRUSR) ++ dir_mode |= S_IXUSR; ++ if (dir_mode & S_IRGRP) ++ dir_mode |= S_IXGRP; ++ if (dir_mode & S_IROTH) ++ dir_mode |= S_IXOTH; ++ } ++ ++ build_iovec(&iov, &iovlen, "fstype", vboxfs_vfsname, (size_t)-1); ++ build_iovec(&iov, &iovlen, "fspath", mount_point, (size_t)-1); ++ build_iovec(&iov, &iovlen, "from", host_name, (size_t)-1); ++ build_iovec_argf(&iov, &iovlen, "uid", "%d", uid); ++ build_iovec_argf(&iov, &iovlen, "gid", "%d", gid); ++ build_iovec_argf(&iov, &iovlen, "file_mode", "%o", file_mode); ++ build_iovec_argf(&iov, &iovlen, "dir_mode", "%o", dir_mode); ++ build_iovec(&iov, &iovlen, "errmsg", errmsg, sizeof(errmsg)); ++ ++ error = nmount(iov, iovlen, mntflags); ++ if (error == -1) { ++ if (errmsg[0] != '\0') ++ err(1, "%s: error: %s", mount_point, errmsg); ++ else ++ err(1, "%s: error %d", mount_point, error); ++ } ++ ++ return (0); ++} diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_bcmp.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_bcmp.c new file mode 100644 index 000000000000..fb4d7fac8c06 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_bcmp.c @@ -0,0 +1,12 @@ +--- src/VBox/Additions/freebsd/vboxvfs/bcmp.c.orig 2021-02-21 19:09:22 UTC ++++ src/VBox/Additions/freebsd/vboxvfs/bcmp.c +@@ -0,0 +1,9 @@ ++#include <sys/types.h> ++ ++int bcmp(const void *b1, const void *b2, size_t len); ++ ++int ++bcmp(const void *b1, const void *b2, size_t len) ++{ ++ return __builtin_memcmp((b1), (b2), (len)); ++} diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs.h b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs.h new file mode 100644 index 000000000000..46b57e5a9d13 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs.h @@ -0,0 +1,428 @@ +--- src/VBox/Additions/freebsd/vboxvfs/vboxvfs.h.orig 2025-08-13 19:41:18 UTC ++++ src/VBox/Additions/freebsd/vboxvfs/vboxvfs.h +@@ -1,8 +1,3 @@ +-/* $Id: vboxvfs.h $ */ +-/** @file +- * Description. +- */ +- + /* + * Copyright (C) 2010-2025 Oracle and/or its affiliates. + * +@@ -34,72 +29,378 @@ + #define VBOXVFS_VFSNAME "vboxvfs" + #define VBOXVFS_VERSION 1 + +-#define MAX_HOST_NAME 256 +-#define MAX_NLS_NAME 32 ++#define MAX_HOST_NAME 256 ++#define MAX_NLS_NAME 32 ++//#define MODEMASK 07777 /* mode bits plus permission bits */ ++/** Helper macros */ ++#define VFSTOVBOXFS(mp) ((struct vboxfs_mnt *)((mp)->mnt_data)) ++#define VP_TO_VBOXFS_NODE(vp) ((struct vboxfs_node *)(vp)->v_data) ++#define VBOXTOV(np) ((struct vnode *)(np)->n_vnode) + +-struct vboxvfs_mount_info { +- char name[MAX_HOST_NAME]; +- char nls_name[MAX_NLS_NAME]; +- int uid; +- int gid; +- int ttl; +-}; ++#define ROOTDIR_INO 1 ++#define THEFILE_INO 2 ++#define THEFILE_NAME "thefile" + ++#define VBOXFS_NODE_LOCK(node) mtx_lock(&(node)->sf_interlock) ++#define VBOXFS_NODE_UNLOCK(node) mtx_unlock(&(node)->sf_interlock) ++#define VBOXFS_NODE_MTX(node) (&(node)->sf_interlock) ++#define VBOXFS_NODE_ASSERT_LOCKED(node) mtx_assert(VBOXFS_NODE_MTX(node), \ ++ MA_OWNED) ++ ++#ifdef INVARIANTS ++#define VBOXFS_ASSERT_LOCKED(node) do { \ ++ MPASS(node != NULL); \ ++ MPASS(node->sf_vnode != NULL); \ ++ if (!VOP_ISLOCKED(node->sf_vnode) && \ ++ !mtx_owned(VBOXFS_NODE_MTX(node))) \ ++ panic("vboxfs: node is not locked: %p", node); \ ++ } while (0) ++#define VBOXFS_ASSERT_ELOCKED(node) do { \ ++ MPASS((node) != NULL); \ ++ MPASS((node)->sf_vnode != NULL); \ ++ mtx_assert(VBOXFS_NODE_MTX(node), MA_OWNED); \ ++ ASSERT_VOP_LOCKED((node)->sf_vnode, "vboxfs"); \ ++ } while (0) ++#else ++#define VBOXFS_ASSERT_LOCKED(node) (void)0 ++#define VBOXFS_ASSERT_ELOCKED(node) (void)0 ++#endif ++ ++#define VBOXFS_VNODE_ALLOCATING 1 ++#define VBOXFS_VNODE_WANT 2 ++#define VBOXFS_VNODE_DOOMED 4 ++#define VBOXFS_VNODE_WRECLAIM 8 ++ ++MALLOC_DECLARE(M_VBOXVFS); ++ + #ifdef _KERNEL ++#ifndef FREEBSD_STYLE ++#include "../../../../../include/iprt/nocrt/limits.h" ++#include "../../../../../include/iprt/alloc.h" ++#include "../../../../../include/iprt/asm.h" ++#include "../../../../../include/iprt/asm-amd64-x86.h" ++#include "../../../../../include/iprt/asm-math.h" ++#include "../../../../../include/iprt/assert.h" ++#include "../../../../../include/iprt/cdefs.h" ++#include "../../../../../include/iprt/err.h" ++#include "../../../../../include/iprt/fs.h" ++#include "../../../../../include/iprt/log.h" ++#include "../../../../../include/iprt/mem.h" ++#include "../../../../../include/iprt/param.h" ++#include "../../../../../include/iprt/path.h" ++#include "../../../../../include/iprt/semaphore.h" ++#include "../../../../../include/iprt/stdarg.h" ++#include "../../../../../include/iprt/stdint.h" ++#include "../../../../../include/iprt/string.h" ++#include "../../../../../include/iprt/time.h" ++#include "../../../../../include/iprt/types.h" ++#include "../../../../../include/iprt/uni.h" + +-#include <VBox/VBoxGuestLibSharedFolders.h> ++#else ++ ++#include "iprt/nocrt/limits.h" ++#include "iprt/alloc.h" ++#include "iprt/asm.h" ++#include "iprt/asm-amd64-x86.h" ++#include "iprt/asm-math.h" ++#include "iprt/assert.h" ++#include "iprt/cdefs.h" ++#include "iprt/err.h" ++#include "iprt/fs.h" ++#include "iprt/log.h" ++#include "iprt/mem.h" ++#include "iprt/param.h" ++#include "iprt/path.h" ++#include "iprt/semaphore.h" ++#include "iprt/stdarg.h" ++#include "iprt/stdint.h" ++#include "iprt/string.h" ++#include "iprt/time.h" ++#include "iprt/types.h" ++#include "iprt/uni.h" ++ ++#include "common/VBoxGuestLib/SysHlp.h" ++ ++#endif /* !FREEBSD_STYLE */ ++ + #include <sys/mount.h> + #include <sys/vnode.h> ++#include <sys/_timespec.h> + +-struct vboxvfsmount { +- uid_t uid; +- gid_t gid; +- mode_t file_mode; +- mode_t dir_mode; +- struct mount *mp; +- struct ucred *owner; +- u_int flags; +- long nextino; +- int caseopt; +- int didrele; ++#include <VBox/VBoxGuestLibSharedFolders.h> ++ ++#if __FreeBSD_version >= 1400093 ++typedef __enum_uint8(vtype) enum_vtype_t; ++#else ++typedef enum vtype enum_vtype_t; ++#endif ++ ++#define VBOXVFS_DEBUG(lvl, ...) do { \ ++ if (vboxvfs_debug >= (lvl)) { \ ++ printf("VBOXVFS[%u]: ", lvl); \ ++ printf(__VA_ARGS__); \ ++ printf("\n"); \ ++ } \ ++} while (0) ++ ++/* ++ * representation of an active mount point ++ */ ++struct sfp_mount { ++ VBGLSFMAP map; + }; + +-/* structs - stolen from the linux shared module code */ ++/* ++ * Mount / Unmount a shared folder. ++ * ++ * sfprov_mount() takes as input the connection pointer and the name of ++ * the shared folder. On success, it returns zero and supplies an ++ * sfp_mount_t handle. On failure it returns any relevant errno value. ++ * ++ * sfprov_unmount() unmounts the mounted file system. It returns 0 on ++ * success and any relevant errno on failure. ++ */ ++typedef struct sfp_mount sfp_mount_t; ++ ++struct sfp_file { ++ SHFLHANDLE handle; ++ VBGLSFMAP map; /* need this again for the close operation */ ++}; ++ ++typedef struct sfp_file sfp_file_t; ++ ++/* ++ * File operations: open/close/read/write/etc. ++ * ++ * open/create can return any relevant errno, however ENOENT ++ * generally means that the host file didn't exist. ++ */ ++typedef struct sffs_stat { ++ mode_t sf_mode; ++ off_t sf_size; ++ off_t sf_alloc; ++ struct timespec sf_atime; ++ struct timespec sf_mtime; ++ struct timespec sf_ctime; ++} sffs_stat_t; ++ ++/* ++ * Read directory entries. ++ */ ++/* ++ * a singly linked list of buffers, each containing an array of stat's+dirent's. ++ * sf_len is length of the sf_entries array, in bytes. ++ */ ++typedef struct sffs_dirents { ++ struct sffs_dirents *sf_next; ++ long long sf_len; ++ struct sffs_dirent { ++ sffs_stat_t sf_stat; ++ struct dirent sf_entry; /* this is variable length */ ++ off_t sf_off; ++ } sf_entries[1]; ++} sffs_dirents_t; ++ ++/* ++ * Shared Folders filesystem per-mount data structure. ++ */ ++struct vboxfs_mnt { ++ struct mount *sf_vfsp; /* filesystem's vfs struct */ ++ sfp_mount_t *sf_handle; /* guest-host communication handle */ ++ uid_t sf_uid; /* owner of all shared folders */ ++ gid_t sf_gid; /* group of all shared folders */ ++ mode_t sf_dmode; /* mode of all directories */ ++ mode_t sf_fmode; /* mode of all files */ ++ mode_t sf_dmask; /* mask of all directories */ ++ mode_t sf_fmask; /* mask of all files */ ++ int sf_stat_ttl; /* ttl for stat caches (in ms) */ ++ int sf_fsync; /* whether to honor fsync or not */ ++ uint64_t sf_ino; /* per FS ino generator */ ++ uma_zone_t sf_node_pool; ++ struct vboxfs_node *sf_root; ++}; ++ ++/* ++ * vboxfs_node is the file system dependent vnode data for vboxfs. ++ * vboxfs_node's also track all files ever accessed, both open and closed. ++ * It duplicates some of the information in vnode, since it holds ++ * information for files that may have been completely closed. ++ * ++ */ ++struct vboxfs_node { ++ struct vboxfs_mnt *vboxfsmp; /* containing mounted file system */ ++ char *sf_path; /* full pathname to file or dir */ ++ uint64_t sf_ino; /* assigned unique ID number */ ++ struct vnode *sf_vnode; /* vnode if active */ ++ sfp_file_t *sf_file; /* non NULL if open */ ++ struct vboxfs_node *sf_parent; /* parent sfnode of this one */ ++ uint32_t sf_opencnt; /* sf_file reference counter */ ++ uint16_t sf_children; /* number of children sfnodes */ ++ uint8_t sf_type; /* VDIR or VREG */ ++ uint8_t sf_vpstate; /* XXX: ADD COMMENT */ ++ uint8_t sf_is_stale; /* this is stale and should be purged */ ++ sffs_stat_t sf_stat; /* cached file attrs for this node */ ++ uint64_t sf_stat_time; /* last-modified time of sf_stat */ ++ sffs_dirents_t *sf_dir_list; /* list of entries for this directory */ ++ ++ /* interlock to protect sf_vpstate, sf_file and sf_opencnt */ ++ struct mtx sf_interlock; ++}; ++ ++struct vboxfs_mount_info { ++ char name[MAX_HOST_NAME]; /* share name */ ++ char nls_name[MAX_NLS_NAME];/* name of an I/O charset */ ++ int uid; /* user ID for all entries, default 0=root */ ++ int gid; /* group ID for all entries, default 0=root */ ++ int ttl; /* time to live */ ++ int dmode; /* mode for directories if != 0xffffffff */ ++ int fmode; /* mode for regular files if != 0xffffffff */ ++ int dmask; /* umask applied to directories */ ++ int fmask; /* umask applied to regular files */ ++}; ++ + struct sf_glob_info { +- VBGLSFMAP map; +-/* struct nls_table *nls;*/ +- int ttl; +- int uid; +- int gid; +- struct vnode *vnode_root; ++ VBGLSFMAP map; ++/* struct nls_table *nls;*/ ++ int ttl; ++ int uid; ++ int gid; ++ struct vnode *vnode_root; + }; + ++/** Per-file system mount instance data. */ ++typedef struct vboxfs_globinfo ++{ ++ VBGLSFMAP Map; ++ int Ttl; ++ int Uid; ++ int Gid; ++ struct mount *pVFS; ++ struct vboxfs_node *pVNodeRoot; ++} vboxfs_globinfo_t; ++ + struct sf_inode_info { +- SHFLSTRING *path; +- int force_restat; ++ SHFLSTRING *path; ++ int force_restat; + }; + + #if 0 + struct sf_dir_info { +- struct list_head info_list; ++ struct list_head info_list; + }; + #endif + + struct sf_dir_buf { +- size_t nb_entries; +- size_t free_bytes; +- size_t used_bytes; +- void *buf; ++ size_t nb_entries; ++ size_t free_bytes; ++ size_t used_bytes; ++ void *buf; + #if 0 +- struct list_head head; ++ struct list_head head; + #endif + }; + + struct sf_reg_info { +- SHFLHANDLE handle; ++ SHFLHANDLE handle; + }; + ++int vboxfs_alloc_vp(struct mount *, struct vboxfs_node *, int, ++ struct vnode **); ++void vboxfs_free_vp(struct vnode *); ++ ++int vboxfs_alloc_node(struct mount *, struct vboxfs_mnt *, const char*, ++ enum_vtype_t, uid_t, gid_t, mode_t, struct vboxfs_node *, ++ struct vboxfs_node **); ++void vboxfs_free_node(struct vboxfs_mnt *, struct vboxfs_node *); ++ ++/* ++ * These are the provider interfaces used by sffs to access the underlying ++ * shared file system. ++ */ ++#define SFPROV_VERSION 1 ++ ++/* ++ * Initialization and termination. ++ * sfprov_connect() is called once before any other interfaces and returns ++ * a handle used in further calls. The argument should be SFPROV_VERSION ++ * from above. On failure it returns a NULL pointer. ++ * ++ * sfprov_disconnect() must only be called after all sf file systems have been ++ * unmounted. ++ */ ++typedef struct sfp_connection sfp_connection_t; ++ ++extern sfp_connection_t *sfprov_connect(int); ++extern void sfprov_disconnect(void); ++ ++extern int sfprov_mount(char *, sfp_mount_t **); ++extern int sfprov_unmount(sfp_mount_t *); ++ ++/* ++ * query information about a mounted file system ++ */ ++typedef struct sffs_fsinfo { ++ uint64_t blksize; ++ uint64_t blksused; ++ uint64_t blksavail; ++ uint32_t maxnamesize; ++ uint32_t readonly; ++ uint32_t serial; ++} sffs_fsinfo_t; ++ ++extern int sfprov_get_fsinfo(sfp_mount_t *, sffs_fsinfo_t *); ++ ++extern int sfprov_create(sfp_mount_t *, char *path, mode_t mode, ++ sffs_stat_t *stat); ++extern int sfprov_open(sfp_mount_t *, char *path, sfp_file_t **fp); ++extern int sfprov_close(sfp_file_t *fp); ++extern int sfprov_read(sfp_file_t *, char * buffer, uint64_t offset, ++ uint32_t *numbytes, int buflocked); ++extern int sfprov_write(sfp_file_t *, char * buffer, uint64_t offset, ++ uint32_t *numbytes, int buflocked); ++extern int sfprov_fsync(sfp_file_t *fp); ++ ++ ++/* ++ * get/set information about a file (or directory) using pathname ++ */ ++extern int sfprov_get_mode(sfp_mount_t *, char *, mode_t *); ++extern int sfprov_get_size(sfp_mount_t *, char *, uint64_t *); ++extern int sfprov_get_atime(sfp_mount_t *, char *, struct timespec *); ++extern int sfprov_get_mtime(sfp_mount_t *, char *, struct timespec *); ++extern int sfprov_get_ctime(sfp_mount_t *, char *, struct timespec *); ++extern int sfprov_get_attr(sfp_mount_t *, char *, sffs_stat_t *); ++extern int sfprov_set_attr(sfp_mount_t *, char *, mode_t, ++ struct timespec, struct timespec, struct timespec); ++extern int sfprov_set_size(sfp_mount_t *, char *, uint64_t); ++ ++ ++/* ++ * File/Directory operations ++ */ ++extern int sfprov_trunc(sfp_mount_t *, char *); ++extern int sfprov_remove(sfp_mount_t *, char *path, u_int is_link); ++extern int sfprov_mkdir(sfp_mount_t *, char *path, mode_t mode, ++ sffs_stat_t *stat); ++extern int sfprov_rmdir(sfp_mount_t *, char *path); ++extern int sfprov_rename(sfp_mount_t *, char *from, char *to, u_int is_dir); ++ ++ ++/* ++ * Symbolic link operations ++ */ ++extern int sfprov_set_show_symlinks(void); ++extern int sfprov_readlink(sfp_mount_t *, char *path, char *target, ++ size_t tgt_size); ++extern int sfprov_symlink(sfp_mount_t *, char *linkname, char *target, ++ sffs_stat_t *stat); ++ ++#define SFFS_DIRENTS_SIZE 8192 ++#define SFFS_DIRENTS_OFF (offsetof(sffs_dirents_t, sf_entries[0])) ++ ++extern int sfprov_readdir(sfp_mount_t *mnt, char *path, ++ sffs_dirents_t **dirents); ++ + #endif /* KERNEL */ + + #endif /* !GA_INCLUDED_SRC_freebsd_vboxvfs_vboxvfs_h */ +- diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__prov.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__prov.c new file mode 100644 index 000000000000..1d793f39e3bc --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__prov.c @@ -0,0 +1,1015 @@ +--- src/VBox/Additions/freebsd/vboxvfs/vboxvfs_prov.c.orig 2025-08-28 22:09:24 UTC ++++ src/VBox/Additions/freebsd/vboxvfs/vboxvfs_prov.c +@@ -0,0 +1,1012 @@ ++/* ++ * Copyright (C) 2008-2016 Oracle Corporation ++ * ++ * This file is part of VirtualBox Open Source Edition (OSE), as ++ * available from http://www.virtualbox.org. This file is free software; ++ * you can redistribute it and/or modify it under the terms of the GNU ++ * General Public License (GPL) as published by the Free Software ++ * Foundation, in version 2 as it comes in the "COPYING" file of the ++ * VirtualBox OSE distribution. VirtualBox OSE is distributed in the ++ * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind. ++ * ++ * The contents of this file may alternatively be used under the terms ++ * of the Common Development and Distribution License Version 1.0 ++ * (CDDL) only, as it comes in the "COPYING.CDDL" file of the ++ * VirtualBox OSE distribution, in which case the provisions of the ++ * CDDL are applicable instead of those of the GPL. ++ * ++ * You may elect to license modified versions of this file under the ++ * terms and conditions of either the GPL or the CDDL or both. ++ */ ++ ++/* ++ * Provider interfaces for shared folder file system. ++ */ ++ ++#include <sys/types.h> ++#include <sys/stat.h> ++#include <sys/param.h> ++#include <sys/systm.h> ++#include <sys/kernel.h> ++#include <sys/malloc.h> ++#include <sys/mount.h> ++#include <sys/vnode.h> ++#include <sys/dirent.h> ++#include <sys/proc.h> ++#include <vm/vm.h> ++#include <vm/pmap.h> ++#include <vm/vm_kern.h> ++#include <vm/vm_map.h> ++#include <vm/vm_object.h> ++#include <vm/vm_extern.h> ++#include <vm/uma.h> ++#include "vboxvfs.h" ++ ++#define DIRENT_RECLEN(namelen) \ ++ ((offsetof(struct dirent, d_name[0]) + 1 + (namelen) + 7) & ~ 7) ++#define DIRENT_NAMELEN(reclen) \ ++ ((reclen) - (offsetof(struct dirent, d_name[0]))) ++ ++static VBGLSFCLIENT vbox_client; ++ ++extern u_int vboxvfs_debug; ++ ++static int ++sfprov_vbox2errno(int rc) ++{ ++ if (rc == VERR_ACCESS_DENIED) ++ return (EACCES); ++ if (rc == VERR_INVALID_NAME) ++ return (ENOENT); ++ return (RTErrConvertToErrno(rc)); ++} ++ ++/* ++ * utility to create strings ++ */ ++static SHFLSTRING * ++sfprov_string(char *path, int *sz) ++{ ++ SHFLSTRING *str; ++ int len = strlen(path); ++ ++ *sz = len + 1 + sizeof (*str) - sizeof (str->String); ++ str = malloc(*sz, M_VBOXVFS, M_WAITOK | M_ZERO); ++ str->u16Size = len + 1; ++ str->u16Length = len; ++ strcpy(str->String.utf8, path); ++ return (str); ++} ++ ++sfp_connection_t * ++sfprov_connect(int version) ++{ ++ /* only one version for now, so must match */ ++ int error = -1; ++ ++ if (version != SFPROV_VERSION) { ++ printf("%s: version mismatch (%d, expected %d)\n", __func__, ++ version, SFPROV_VERSION); ++ return (NULL); ++ } ++ ++ if (RT_FAILURE(VbglR0SfInit())) ++ return (NULL); ++ ++ if (RT_FAILURE(VbglR0SfConnect(&vbox_client))) { ++ VbglR0SfTerm(); ++ return (NULL); ++ } ++ ++ if (RT_FAILURE(VbglR0SfSetUtf8(&vbox_client))) { ++ VbglR0SfDisconnect(&vbox_client); ++ VbglR0SfTerm(); ++ return (NULL); ++ } ++ return ((sfp_connection_t *)&vbox_client); ++} ++ ++void ++sfprov_disconnect() ++{ ++ VbglR0SfDisconnect(&vbox_client); ++ VbglR0SfTerm(); ++} ++ ++int ++sfprov_mount(char *path, sfp_mount_t **mnt) ++{ ++ sfp_mount_t *m; ++ SHFLSTRING *str; ++ int size; ++ int rc; ++ ++ VBOXVFS_DEBUG(1, "%s: Enter", __FUNCTION__); ++ VBOXVFS_DEBUG(1, "%s: path: [%s]", __FUNCTION__, path); ++ ++ m = malloc(sizeof (*m), M_VBOXVFS, M_WAITOK | M_ZERO); ++ str = sfprov_string(path, &size); ++ ++ int error; ++ rc = VbglR0SfMapFolder(&vbox_client, str, &m->map); ++ if (RT_FAILURE(rc)) { ++ free(m, M_VBOXVFS); ++ *mnt = NULL; ++ error = sfprov_vbox2errno(rc); ++ } else { ++ *mnt = m; ++ error = 0; ++ } ++ free(str, M_VBOXVFS); ++ printf("%s(%s): error=%d rc=%d\n", __func__, path, error, rc); ++ return (error); ++} ++ ++int ++sfprov_unmount(sfp_mount_t *mnt) ++{ ++ int rc; ++ ++ rc = VbglR0SfUnmapFolder(&vbox_client, &mnt->map); ++ if (RT_FAILURE(rc)) { ++ printf("sfprov_unmount: VbglR0SfUnmapFolder() failed rc=%d\n", rc); ++ rc = sfprov_vbox2errno(rc); ++ } else { ++ rc = 0; ++ } ++ ++ free(mnt, M_VBOXVFS); ++ return (rc); ++} ++ ++/* ++ * query information about a mounted file system ++ */ ++int ++sfprov_get_fsinfo(sfp_mount_t *mnt, sffs_fsinfo_t *fsinfo) ++{ ++ int rc; ++ SHFLVOLINFO info; ++ uint32_t bytes = sizeof(SHFLVOLINFO); ++ size_t bytesused; ++ ++ rc = VbglR0SfFsInfo(&vbox_client, &mnt->map, 0, ++ (SHFL_INFO_GET | SHFL_INFO_VOLUME), &bytes, (SHFLDIRINFO *)&info); ++ if (RT_FAILURE(rc)) ++ return (sfprov_vbox2errno(rc)); ++ ++ fsinfo->blksize = info.ulBytesPerAllocationUnit; ++ bytesused = ++ info.ullTotalAllocationBytes - info.ullAvailableAllocationBytes; ++ fsinfo->blksused = bytesused / info.ulBytesPerAllocationUnit; ++ fsinfo->blksavail = info.ullAvailableAllocationBytes / ++ info.ulBytesPerAllocationUnit; ++ fsinfo->maxnamesize = info.fsProperties.cbMaxComponent; ++ fsinfo->readonly = info.fsProperties.fReadOnly; ++ fsinfo->serial = info.ulSerial; ++ return (0); ++} ++ ++/* ++ * file/directory information conversions. ++ */ ++static void ++sfprov_fmode_from_mode(RTFMODE *fMode, mode_t mode) ++{ ++ RTFMODE m = 0; ++ ++#define mode_set(r) ((mode & (S_##r)) ? RTFS_UNIX_##r : 0) ++ m = mode_set (ISUID); ++ m |= mode_set (ISGID); ++ m |= (mode & S_ISVTX) ? RTFS_UNIX_ISTXT : 0; ++ m |= mode_set (IRUSR); ++ m |= mode_set (IWUSR); ++ m |= mode_set (IXUSR); ++ m |= mode_set (IRGRP); ++ m |= mode_set (IWGRP); ++ m |= mode_set (IXGRP); ++ m |= mode_set (IROTH); ++ m |= mode_set (IWOTH); ++ m |= mode_set (IXOTH); ++ ++ if (S_ISDIR(mode)) ++ m |= RTFS_TYPE_DIRECTORY; ++ else if (S_ISREG(mode)) ++ m |= RTFS_TYPE_FILE; ++ else if (S_ISFIFO(mode)) ++ m |= RTFS_TYPE_FIFO; ++ else if (S_ISCHR(mode)) ++ m |= RTFS_TYPE_DEV_CHAR; ++ else if (S_ISBLK(mode)) ++ m |= RTFS_TYPE_DEV_BLOCK; ++ else if (S_ISLNK(mode)) ++ m |= RTFS_TYPE_SYMLINK; ++ else if (S_ISSOCK(mode)) ++ m |= RTFS_TYPE_SOCKET; ++ else ++ m |= RTFS_TYPE_FILE; ++ ++ *fMode = m; ++} ++ ++static void ++sfprov_mode_from_fmode(mode_t *mode, RTFMODE fMode) ++{ ++ mode_t m = 0; ++ ++ if (RTFS_IS_DIRECTORY(fMode)) ++ m |= S_IFDIR; ++ else if (RTFS_IS_FILE(fMode)) ++ m |= S_IFREG; ++ else if (RTFS_IS_FIFO(fMode)) ++ m |= S_IFIFO; ++ else if (RTFS_IS_DEV_CHAR(fMode)) ++ m |= S_IFCHR; ++ else if (RTFS_IS_DEV_BLOCK(fMode)) ++ m |= S_IFBLK; ++ else if (RTFS_IS_SYMLINK(fMode)) ++ m |= S_IFLNK; ++ else if (RTFS_IS_SOCKET(fMode)) ++ m |= S_IFSOCK; ++ ++ if (fMode & RTFS_UNIX_IRUSR) ++ m |= S_IRUSR; ++ if (fMode & RTFS_UNIX_IWUSR) ++ m |= S_IWUSR; ++ if (fMode & RTFS_UNIX_IXUSR) ++ m |= S_IXUSR; ++ if (fMode & RTFS_UNIX_IRGRP) ++ m |= S_IRGRP; ++ if (fMode & RTFS_UNIX_IWGRP) ++ m |= S_IWGRP; ++ if (fMode & RTFS_UNIX_IXGRP) ++ m |= S_IXGRP; ++ if (fMode & RTFS_UNIX_IROTH) ++ m |= S_IROTH; ++ if (fMode & RTFS_UNIX_IWOTH) ++ m |= S_IWOTH; ++ if (fMode & RTFS_UNIX_IXOTH) ++ m |= S_IXOTH; ++ if (fMode & RTFS_UNIX_ISUID) ++ m |= S_ISUID; ++ if (fMode & RTFS_UNIX_ISGID) ++ m |= S_ISGID; ++ if (fMode & RTFS_UNIX_ISTXT) ++ m |= S_ISVTX; ++ *mode = m; ++} ++ ++static void ++sfprov_ftime_from_timespec(struct timespec *time, RTTIMESPEC *ts) ++{ ++ uint64_t nanosec = RTTimeSpecGetNano(ts); ++ time->tv_sec = nanosec / UINT64_C(1000000000); ++ time->tv_nsec = nanosec % UINT64_C(1000000000); ++} ++ ++static void ++sfprov_stat_from_info(sffs_stat_t *stat, SHFLFSOBJINFO *info) ++{ ++ sfprov_mode_from_fmode(&stat->sf_mode, info->Attr.fMode); ++ stat->sf_size = info->cbObject; ++ stat->sf_alloc = info->cbAllocated; ++ sfprov_ftime_from_timespec(&stat->sf_atime, &info->AccessTime); ++ sfprov_ftime_from_timespec(&stat->sf_mtime, &info->ModificationTime); ++ sfprov_ftime_from_timespec(&stat->sf_ctime, &info->ChangeTime); ++} ++ ++/* ++ * File operations: open/close/read/write/etc. ++ * ++ * open/create can return any relevant errno, however ENOENT ++ * generally means that the host file didn't exist. ++ */ ++int ++sfprov_create( ++ sfp_mount_t *mnt, ++ char *path, ++ mode_t mode, ++ sffs_stat_t *stat) ++{ ++ int rc; ++ SHFLCREATEPARMS parms; ++ SHFLSTRING *str; ++ int size; ++ sfp_file_t *newfp; ++ ++ str = sfprov_string(path, &size); ++ parms.Handle = SHFL_HANDLE_NIL; ++ parms.Info.cbObject = 0; ++ sfprov_fmode_from_mode(&parms.Info.Attr.fMode, mode); ++ parms.CreateFlags = SHFL_CF_ACT_CREATE_IF_NEW | ++ SHFL_CF_ACT_REPLACE_IF_EXISTS | SHFL_CF_ACCESS_READWRITE; ++ rc = VbglR0SfCreate(&vbox_client, &mnt->map, str, &parms); ++ free(str, M_VBOXVFS); ++ ++ if (RT_FAILURE(rc)) ++ return (sfprov_vbox2errno(rc)); ++ if (parms.Handle == SHFL_HANDLE_NIL) { ++ if (parms.Result == SHFL_FILE_EXISTS) ++ return (EEXIST); ++ return (ENOENT); ++ } ++ (void)VbglR0SfClose(&vbox_client, &mnt->map, parms.Handle); ++ sfprov_stat_from_info(stat, &parms.Info); ++ return (0); ++} ++ ++int ++sfprov_open(sfp_mount_t *mnt, char *path, sfp_file_t **fp) ++{ ++ int rc; ++ SHFLCREATEPARMS parms; ++ SHFLSTRING *str; ++ int size; ++ sfp_file_t *newfp; ++ ++ /* ++ * First we attempt to open it read/write. If that fails we ++ * try read only. ++ */ ++ bzero(&parms, sizeof(parms)); ++ str = sfprov_string(path, &size); ++ parms.Handle = SHFL_HANDLE_NIL; ++ parms.Info.cbObject = 0; ++ parms.CreateFlags = SHFL_CF_ACT_FAIL_IF_NEW | SHFL_CF_ACCESS_READWRITE; ++ rc = VbglR0SfCreate(&vbox_client, &mnt->map, str, &parms); ++ if (RT_FAILURE(rc) && rc != VERR_ACCESS_DENIED) { ++ free(str, M_VBOXVFS); ++ return (sfprov_vbox2errno(rc)); ++ } ++ if (parms.Handle == SHFL_HANDLE_NIL) { ++ if (parms.Result == SHFL_PATH_NOT_FOUND || ++ parms.Result == SHFL_FILE_NOT_FOUND) { ++ free(str, M_VBOXVFS); ++ return (ENOENT); ++ } ++ parms.CreateFlags = ++ SHFL_CF_ACT_FAIL_IF_NEW | SHFL_CF_ACCESS_READ; ++ rc = VbglR0SfCreate(&vbox_client, &mnt->map, str, &parms); ++ if (RT_FAILURE(rc)) { ++ free(str, M_VBOXVFS); ++ return (sfprov_vbox2errno(rc)); ++ } ++ if (parms.Handle == SHFL_HANDLE_NIL) { ++ free(str, M_VBOXVFS); ++ return (ENOENT); ++ } ++ } ++ else ++ free(str, M_VBOXVFS); ++ newfp = malloc(sizeof(sfp_file_t), M_VBOXVFS, M_WAITOK | M_ZERO); ++ newfp->handle = parms.Handle; ++ newfp->map = mnt->map; ++ *fp = newfp; ++ return (0); ++} ++ ++int ++sfprov_trunc(sfp_mount_t *mnt, char *path) ++{ ++ int rc; ++ SHFLCREATEPARMS parms; ++ SHFLSTRING *str; ++ int size; ++ ++ /* ++ * open it read/write. ++ */ ++ str = sfprov_string(path, &size); ++ parms.Handle = 0; ++ parms.Info.cbObject = 0; ++ parms.CreateFlags = SHFL_CF_ACT_FAIL_IF_NEW | SHFL_CF_ACCESS_READWRITE | ++ SHFL_CF_ACT_OVERWRITE_IF_EXISTS; ++ rc = VbglR0SfCreate(&vbox_client, &mnt->map, str, &parms); ++ free(str, M_VBOXVFS); ++ ++ if (RT_FAILURE(rc)) { ++ return (sfprov_vbox2errno(rc)); ++ } ++ (void)VbglR0SfClose(&vbox_client, &mnt->map, parms.Handle); ++ return (0); ++} ++ ++int ++sfprov_close(sfp_file_t *fp) ++{ ++ int rc; ++ ++ rc = VbglR0SfClose(&vbox_client, &fp->map, fp->handle); ++ free(fp, M_VBOXVFS); ++ return (0); ++} ++ ++int ++sfprov_read(sfp_file_t *fp, char *buffer, uint64_t offset, uint32_t *numbytes, ++ int buflocked) ++{ ++ int rc; ++ ++ rc = VbglR0SfRead(&vbox_client, &fp->map, fp->handle, offset, ++ numbytes, (uint8_t *)buffer, buflocked); ++ if (RT_FAILURE(rc)) ++ return (sfprov_vbox2errno(rc)); ++ return (0); ++} ++ ++int ++sfprov_write(sfp_file_t *fp, char *buffer, uint64_t offset, uint32_t *numbytes, ++ int buflocked) ++{ ++ int rc; ++ ++ rc = VbglR0SfWrite(&vbox_client, &fp->map, fp->handle, offset, ++ numbytes, (uint8_t *)buffer, buflocked); ++ if (RT_FAILURE(rc)) ++ return (sfprov_vbox2errno(rc)); ++ return (0); ++} ++ ++int ++sfprov_fsync(sfp_file_t *fp) ++{ ++ int rc; ++ ++ rc = VbglR0SfFlush(&vbox_client, &fp->map, fp->handle); ++ if (RT_FAILURE(rc)) ++ return (sfprov_vbox2errno(rc)); ++ return (0); ++} ++ ++ ++static int ++sfprov_getinfo(sfp_mount_t *mnt, char *path, PSHFLFSOBJINFO info) ++{ ++ int rc; ++ SHFLCREATEPARMS parms; ++ SHFLSTRING *str; ++ int size; ++ ++ str = sfprov_string(path, &size); ++ parms.Handle = 0; ++ parms.Info.cbObject = 0; ++ parms.CreateFlags = SHFL_CF_LOOKUP | SHFL_CF_ACT_FAIL_IF_NEW; ++ rc = VbglR0SfCreate(&vbox_client, &mnt->map, str, &parms); ++ free(str, M_VBOXVFS); ++ ++ if (RT_FAILURE(rc)) ++ return (sfprov_vbox2errno(rc)); ++ if (parms.Result != SHFL_FILE_EXISTS) ++ return (ENOENT); ++ *info = parms.Info; ++ return (0); ++} ++ ++/* ++ * get information about a file (or directory) ++ */ ++int ++sfprov_get_mode(sfp_mount_t *mnt, char *path, mode_t *mode) ++{ ++ int rc; ++ SHFLFSOBJINFO info; ++ ++ rc = sfprov_getinfo(mnt, path, &info); ++ if (rc) ++ return (rc); ++ sfprov_mode_from_fmode(mode, info.Attr.fMode); ++ return (0); ++} ++ ++int ++sfprov_get_size(sfp_mount_t *mnt, char *path, uint64_t *size) ++{ ++ int rc; ++ SHFLFSOBJINFO info; ++ ++ rc = sfprov_getinfo(mnt, path, &info); ++ if (rc) ++ return (rc); ++ *size = info.cbObject; ++ return (0); ++} ++ ++ ++int ++sfprov_get_atime(sfp_mount_t *mnt, char *path, struct timespec *time) ++{ ++ int rc; ++ SHFLFSOBJINFO info; ++ ++ rc = sfprov_getinfo(mnt, path, &info); ++ if (rc) ++ return (rc); ++ sfprov_ftime_from_timespec(time, &info.AccessTime); ++ return (0); ++} ++ ++int ++sfprov_get_mtime(sfp_mount_t *mnt, char *path, struct timespec *time) ++{ ++ int rc; ++ SHFLFSOBJINFO info; ++ ++ rc = sfprov_getinfo(mnt, path, &info); ++ if (rc) ++ return (rc); ++ sfprov_ftime_from_timespec(time, &info.ModificationTime); ++ return (0); ++} ++ ++int ++sfprov_get_ctime(sfp_mount_t *mnt, char *path, struct timespec *time) ++{ ++ int rc; ++ SHFLFSOBJINFO info; ++ ++ rc = sfprov_getinfo(mnt, path, &info); ++ if (rc) ++ return (rc); ++ sfprov_ftime_from_timespec(time, &info.ChangeTime); ++ return (0); ++} ++ ++int ++sfprov_get_attr(sfp_mount_t *mnt, char *path, sffs_stat_t *attr) ++{ ++ int rc; ++ SHFLFSOBJINFO info; ++ ++ rc = sfprov_getinfo(mnt, path, &info); ++ if (rc) ++ return (rc); ++ sfprov_stat_from_info(attr, &info); ++ return (0); ++} ++ ++static void ++sfprov_timespec_from_ftime(RTTIMESPEC *ts, struct timespec time) ++{ ++ uint64_t nanosec = UINT64_C(1000000000) * time.tv_sec + time.tv_nsec; ++ RTTimeSpecSetNano(ts, nanosec); ++} ++ ++int ++sfprov_set_attr( ++ sfp_mount_t *mnt, ++ char *path, ++ mode_t mode, ++ struct timespec atime, ++ struct timespec mtime, ++ struct timespec ctime) ++{ ++ int rc, err; ++ SHFLCREATEPARMS parms; ++ SHFLSTRING *str; ++ SHFLFSOBJINFO info; ++ uint32_t bytes; ++ int str_size; ++ ++ str = sfprov_string(path, &str_size); ++ parms.Handle = 0; ++ parms.Info.cbObject = 0; ++ parms.CreateFlags = SHFL_CF_ACT_OPEN_IF_EXISTS ++ | SHFL_CF_ACT_FAIL_IF_NEW ++ | SHFL_CF_ACCESS_ATTR_WRITE; ++ ++ rc = VbglR0SfCreate(&vbox_client, &mnt->map, str, &parms); ++ ++ if (RT_FAILURE(rc)) { ++ printf("sfprov_set_attr: VbglR0SfCreate(%s) failed rc=%d\n", ++ path, rc); ++ err = sfprov_vbox2errno(rc); ++ goto fail2; ++ } ++ if (parms.Result != SHFL_FILE_EXISTS) { ++ err = ENOENT; ++ goto fail1; ++ } ++ ++ RT_ZERO(info); ++#if 0 ++ if (mask & AT_MODE) ++ sfprov_fmode_from_mode(&info.Attr.fMode, mode); ++ if (mask & AT_ATIME) ++ sfprov_timespec_from_ftime(&info.AccessTime, atime); ++ if (mask & AT_MTIME) ++ sfprov_timespec_from_ftime(&info.ModificationTime, mtime); ++ if (mask & AT_CTIME) ++ sfprov_timespec_from_ftime(&info.ChangeTime, ctime); ++#endif ++ bytes = sizeof(info); ++ rc = VbglR0SfFsInfo(&vbox_client, &mnt->map, parms.Handle, ++ (SHFL_INFO_SET | SHFL_INFO_FILE), &bytes, (SHFLDIRINFO *)&info); ++ if (RT_FAILURE(rc)) { ++ if (rc != VERR_ACCESS_DENIED && rc != VERR_WRITE_PROTECT) ++ { ++ printf("sfprov_set_attr: VbglR0SfFsInfo(%s, FILE) failed rc=%d\n", ++ path, rc); ++ } ++ err = sfprov_vbox2errno(rc); ++ goto fail1; ++ } ++ ++ err = 0; ++ ++fail1: ++ rc = VbglR0SfClose(&vbox_client, &mnt->map, parms.Handle); ++ if (RT_FAILURE(rc)) { ++ printf("sfprov_set_attr: VbglR0SfClose(%s) failed rc=%d\n", ++ path, rc); ++ } ++fail2: ++ free(str, M_VBOXVFS); ++ return err; ++} ++ ++int ++sfprov_set_size(sfp_mount_t *mnt, char *path, uint64_t size) ++{ ++ int rc, err; ++ SHFLCREATEPARMS parms; ++ SHFLSTRING *str; ++ SHFLFSOBJINFO info; ++ uint32_t bytes; ++ int str_size; ++ ++ str = sfprov_string(path, &str_size); ++ parms.Handle = 0; ++ parms.Info.cbObject = 0; ++ parms.CreateFlags = SHFL_CF_ACT_OPEN_IF_EXISTS ++ | SHFL_CF_ACT_FAIL_IF_NEW ++ | SHFL_CF_ACCESS_WRITE; ++ ++ rc = VbglR0SfCreate(&vbox_client, &mnt->map, str, &parms); ++ ++ if (RT_FAILURE(rc)) { ++ printf("sfprov_set_size: VbglR0SfCreate(%s) failed rc=%d\n", ++ path, rc); ++ err = sfprov_vbox2errno(rc); ++ goto fail2; ++ } ++ if (parms.Result != SHFL_FILE_EXISTS) { ++ err = ENOENT; ++ goto fail1; ++ } ++ ++ RT_ZERO(info); ++ info.cbObject = size; ++ bytes = sizeof(info); ++ rc = VbglR0SfFsInfo(&vbox_client, &mnt->map, parms.Handle, ++ (SHFL_INFO_SET | SHFL_INFO_SIZE), &bytes, (SHFLDIRINFO *)&info); ++ if (RT_FAILURE(rc)) { ++ printf("sfprov_set_size: VbglR0SfFsInfo(%s, SIZE) failed rc=%d\n", ++ path, rc); ++ err = sfprov_vbox2errno(rc); ++ goto fail1; ++ } ++ ++ err = 0; ++ ++fail1: ++ rc = VbglR0SfClose(&vbox_client, &mnt->map, parms.Handle); ++ if (RT_FAILURE(rc)) { ++ printf("sfprov_set_size: VbglR0SfClose(%s) failed rc=%d\n", ++ path, rc); ++ } ++fail2: ++ free(str, M_VBOXVFS); ++ return err; ++} ++ ++/* ++ * Directory operations ++ */ ++int ++sfprov_mkdir( ++ sfp_mount_t *mnt, ++ char *path, ++ mode_t mode, ++ sffs_stat_t *stat) ++{ ++ int rc; ++ SHFLCREATEPARMS parms; ++ SHFLSTRING *str; ++ int size; ++ ++ str = sfprov_string(path, &size); ++ parms.Handle = SHFL_HANDLE_NIL; ++ parms.Info.cbObject = 0; ++ sfprov_fmode_from_mode(&parms.Info.Attr.fMode, mode); ++ parms.CreateFlags = SHFL_CF_DIRECTORY | SHFL_CF_ACT_CREATE_IF_NEW | ++ SHFL_CF_ACT_FAIL_IF_EXISTS | SHFL_CF_ACCESS_READ; ++ rc = VbglR0SfCreate(&vbox_client, &mnt->map, str, &parms); ++ free(str, M_VBOXVFS); ++ ++ if (RT_FAILURE(rc)) ++ return (sfprov_vbox2errno(rc)); ++ if (parms.Handle == SHFL_HANDLE_NIL) { ++ if (parms.Result == SHFL_FILE_EXISTS) ++ return (EEXIST); ++ return (ENOENT); ++ } ++ (void)VbglR0SfClose(&vbox_client, &mnt->map, parms.Handle); ++ sfprov_stat_from_info(stat, &parms.Info); ++ return (0); ++} ++ ++int ++sfprov_set_show_symlinks(void) ++{ ++ int rc; ++ ++ rc = VbglR0SfSetSymlinks(&vbox_client); ++ if (RT_FAILURE(rc)) ++ return (sfprov_vbox2errno(rc)); ++ ++ return (0); ++} ++ ++int ++sfprov_remove(sfp_mount_t *mnt, char *path, u_int is_link) ++{ ++ int rc; ++ SHFLSTRING *str; ++ int size; ++ ++ str = sfprov_string(path, &size); ++ rc = VbglR0SfRemove(&vbox_client, &mnt->map, str, ++ SHFL_REMOVE_FILE | (is_link ? SHFL_REMOVE_SYMLINK : 0)); ++ free(str, M_VBOXVFS); ++ if (RT_FAILURE(rc)) ++ return (sfprov_vbox2errno(rc)); ++ return (0); ++} ++ ++int ++sfprov_readlink( ++ sfp_mount_t *mnt, ++ char *path, ++ char *target, ++ size_t tgt_size) ++{ ++ int rc; ++ SHFLSTRING *str; ++ int size; ++ ++ str = sfprov_string(path, &size); ++ ++ rc = VbglR0SfReadLink(&vbox_client, &mnt->map, str, (uint32_t) tgt_size, ++ target); ++ if (RT_FAILURE(rc)) ++ rc = sfprov_vbox2errno(rc); ++ ++ free(str, M_VBOXVFS); ++ return (rc); ++} ++ ++int ++sfprov_symlink( ++ sfp_mount_t *mnt, ++ char *linkname, ++ char *target, ++ sffs_stat_t *stat) ++{ ++ int rc; ++ SHFLSTRING *lnk, *tgt; ++ int lnk_size, tgt_size; ++ SHFLFSOBJINFO info; ++ ++ lnk = sfprov_string(linkname, &lnk_size); ++ tgt = sfprov_string(target, &tgt_size); ++ ++ rc = VbglR0SfSymlink(&vbox_client, &mnt->map, lnk, tgt, &info); ++ if (RT_FAILURE(rc)) { ++ rc = sfprov_vbox2errno(rc); ++ goto done; ++ } ++ ++ if (stat != NULL) ++ sfprov_stat_from_info(stat, &info); ++ ++done: ++ free(lnk, M_VBOXVFS); ++ free(tgt, M_VBOXVFS); ++ ++ return (rc); ++} ++ ++int ++sfprov_rmdir(sfp_mount_t *mnt, char *path) ++{ ++ int rc; ++ SHFLSTRING *str; ++ int size; ++ ++ str = sfprov_string(path, &size); ++ rc = VbglR0SfRemove(&vbox_client, &mnt->map, str, SHFL_REMOVE_DIR); ++ free(str, M_VBOXVFS); ++ if (RT_FAILURE(rc)) ++ return (sfprov_vbox2errno(rc)); ++ return (0); ++} ++ ++int ++sfprov_rename(sfp_mount_t *mnt, char *from, char *to, u_int is_dir) ++{ ++ int rc; ++ SHFLSTRING *old, *new; ++ int old_size, new_size; ++ ++ old = sfprov_string(from, &old_size); ++ new = sfprov_string(to, &new_size); ++ rc = VbglR0SfRename(&vbox_client, &mnt->map, old, new, ++ (is_dir ? SHFL_RENAME_DIR : SHFL_RENAME_FILE) | ++ SHFL_RENAME_REPLACE_IF_EXISTS); ++ free(old, M_VBOXVFS); ++ free(new, M_VBOXVFS); ++ if (RT_FAILURE(rc)) ++ return (sfprov_vbox2errno(rc)); ++ return (0); ++} ++ ++/* ++ * Read all filenames in a directory. ++ * ++ * - success - all entries read and returned ++ * - ENOENT - Couldn't open the directory for reading ++ * - EINVAL - Internal error of some kind ++ * ++ * On successful return, *dirents points to a list of sffs_dirents_t; ++ * for each dirent, all fields except the d_ino will be set appropriately. ++ * The caller is responsible for freeing the dirents buffer. ++ */ ++int ++sfprov_readdir( ++ sfp_mount_t *mnt, ++ char *path, ++ sffs_dirents_t **dirents) ++{ ++ int error; ++ char *cp; ++ int len; ++ SHFLSTRING *mask_str = NULL; /* must be path with "/" appended */ ++ int mask_size; ++ sfp_file_t *fp; ++ uint32_t infobuff_alloc = 16384; ++ SHFLDIRINFO *infobuff = NULL, *info; ++ uint32_t numbytes; ++ uint32_t nents; ++ uint32_t size; ++ off_t offset; ++ sffs_dirents_t *cur_buf; ++ struct sffs_dirent *dirent; ++ unsigned short reclen; ++ unsigned short entlen; ++ ++ *dirents = NULL; ++ ++ error = sfprov_open(mnt, path, &fp); ++ if (error != 0) ++ return (ENOENT); ++ ++ /* ++ * Allocate the first dirents buffers. ++ */ ++ *dirents = malloc(SFFS_DIRENTS_SIZE, M_VBOXVFS, M_WAITOK | M_ZERO); ++ if (*dirents == NULL) { ++ error = (ENOSPC); ++ goto done; ++ } ++ cur_buf = *dirents; ++ cur_buf->sf_next = NULL; ++ cur_buf->sf_len = 0; ++ ++ /* ++ * Create mask that VBox expects. This needs to be the directory path, ++ * plus a "*" wildcard to get all files. ++ */ ++ len = strlen(path) + 3; ++ cp = malloc(len, M_VBOXVFS, M_WAITOK | M_ZERO); ++ if (cp == NULL) { ++ error = (ENOSPC); ++ goto done; ++ } ++ strcpy(cp, path); ++ strcat(cp, "/*"); ++ mask_str = sfprov_string(cp, &mask_size); ++ free(cp, M_VBOXVFS); ++ ++ /* ++ * Now loop using VbglR0SfDirInfo ++ */ ++ infobuff = malloc(infobuff_alloc, M_VBOXVFS, M_WAITOK | M_ZERO); ++ if (infobuff == NULL) { ++ error = (ENOSPC); ++ goto done; ++ } ++ ++ offset = 0; ++ for (;;) { ++ numbytes = infobuff_alloc; ++ error = VbglR0SfDirInfo(&vbox_client, &fp->map, fp->handle, ++ mask_str, 0, 0, &numbytes, infobuff, &nents); ++ ++ switch (error) { ++ case VINF_SUCCESS: ++ /* fallthrough */ ++ case VERR_NO_MORE_FILES: ++ break; ++ case VERR_NO_TRANSLATION: ++ /* XXX ??? */ ++ break; ++ default: ++ error = sfprov_vbox2errno(error); ++ goto done; ++ } ++ ++ /* ++ * Create the dirent_t's and save the stats for each name ++ */ ++ for (info = infobuff; (char *) info < (char *) infobuff + numbytes; nents--) { ++ size_t buflen; ++ ++ /* expand buffers if we need more space */ ++ reclen = DIRENT_RECLEN(strlen(info->name.String.utf8)); ++ entlen = sizeof(struct sffs_dirent) + reclen; ++ buflen = SFFS_DIRENTS_OFF + cur_buf->sf_len + entlen; ++ if (buflen > SFFS_DIRENTS_SIZE) { ++ cur_buf->sf_next = malloc(SFFS_DIRENTS_SIZE, ++ M_VBOXVFS, M_WAITOK | M_ZERO); ++ if (cur_buf->sf_next == NULL) { ++ error = ENOSPC; ++ goto done; ++ } ++ cur_buf = cur_buf->sf_next; ++ cur_buf->sf_next = NULL; ++ cur_buf->sf_len = 0; ++ } ++ ++ /* create the dirent with the name, offset, and len */ ++ dirent = (struct sffs_dirent *) ++ (((char *) &cur_buf->sf_entries[0]) + cur_buf->sf_len); ++ strncpy(&dirent->sf_entry.d_name[0], ++ info->name.String.utf8, DIRENT_NAMELEN(reclen)); ++ dirent->sf_entry.d_reclen = reclen; ++ dirent->sf_entry.d_namlen = strlen(info->name.String.utf8); ++ dirent->sf_entry.d_name[dirent->sf_entry.d_namlen] = 0; ++ offset += entlen; ++ dirent->sf_off = offset; ++ ++ /* save the stats */ ++ sfprov_stat_from_info(&dirent->sf_stat, &info->Info); ++ ++ /* next info */ ++ cur_buf->sf_len += entlen; ++ size = offsetof (SHFLDIRINFO, name.String) + info->name.u16Size; ++ info = (SHFLDIRINFO *) ((uintptr_t) info + size); ++ } ++ KASSERT(nents == 0, ("nents != 0")); ++ KASSERT((char *) info == (char *) infobuff + numbytes, "(char *) info != (char *) infobuff + numbytes"); ++ ++ if (error == VERR_NO_MORE_FILES) ++ break; ++ } ++ error = 0; ++ ++done: ++ if (error != 0) { ++ while (*dirents) { ++ cur_buf = (*dirents)->sf_next; ++ free(*dirents, M_VBOXVFS); ++ *dirents = cur_buf; ++ } ++ } ++ if (infobuff != NULL) ++ free(infobuff, M_VBOXVFS); ++ if (mask_str != NULL) ++ free(mask_str, M_VBOXVFS); ++ sfprov_close(fp); ++ ++ return (error); ++} diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vfsops.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vfsops.c new file mode 100644 index 000000000000..cd272f0205e8 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vfsops.c @@ -0,0 +1,644 @@ +--- src/VBox/Additions/freebsd/vboxvfs/vboxvfs_vfsops.c.orig 2025-08-13 19:41:18 UTC ++++ src/VBox/Additions/freebsd/vboxvfs/vboxvfs_vfsops.c +@@ -1,8 +1,3 @@ +-/* $Id: vboxvfs_vfsops.c $ */ +-/** @file +- * Description. +- */ +- + /* + * Copyright (C) 2008-2025 Oracle and/or its affiliates. + * +@@ -24,245 +19,478 @@ + * + * SPDX-License-Identifier: GPL-3.0-only + */ +- +-#include "vboxvfs.h" ++#include <sys/types.h> + #include <sys/param.h> + #include <sys/systm.h> + #include <sys/proc.h> + #include <sys/bio.h> + #include <sys/buf.h> ++#include <sys/conf.h> ++#include <sys/dirent.h> + #include <sys/kernel.h> + #include <sys/sysctl.h> + #include <sys/vnode.h> + #include <sys/mount.h> ++#include <sys/namei.h> ++#include <sys/fcntl.h> ++#include <sys/priv.h> + #include <sys/stat.h> + #include <sys/malloc.h> + #include <sys/module.h> ++#include <sys/sbuf.h> + +-#include <iprt/mem.h> ++#include <geom/geom.h> ++#include <geom/geom_vfs.h> ++#include <vm/uma.h> ++#include "vboxvfs.h" + + #define VFSMP2SFGLOBINFO(mp) ((struct sf_glob_info *)mp->mnt_data) + +-static int vboxvfs_version = VBOXVFS_VERSION; ++#ifdef MALLOC_DECLARE ++MALLOC_DEFINE(M_VBOXVFS, "vboxvfs", "VBOX VFS"); ++#endif + +-SYSCTL_NODE(_vfs, OID_AUTO, vboxvfs, CTLFLAG_RW, 0, "VirtualBox shared filesystem"); +-SYSCTL_INT(_vfs_vboxvfs, OID_AUTO, version, CTLFLAG_RD, &vboxvfs_version, 0, ""); ++static sfp_connection_t *sfprov = NULL; + +-/* global connection to the host service. */ +-static VBGLSFCLIENT g_vboxSFClient; ++static int vboxfs_version = VBOXVFS_VERSION; ++u_int vboxvfs_debug = 1; + +-static vfs_init_t vboxvfs_init; +-static vfs_uninit_t vboxvfs_uninit; +-static vfs_cmount_t vboxvfs_cmount; +-static vfs_mount_t vboxvfs_mount; +-static vfs_root_t vboxvfs_root; +-static vfs_quotactl_t vboxvfs_quotactl; +-static vfs_statfs_t vboxvfs_statfs; +-static vfs_unmount_t vboxvfs_unmount; ++SYSCTL_NODE(_vfs, OID_AUTO, vboxfs, CTLFLAG_RW, 0, "VirtualBox shared filesystem"); ++SYSCTL_INT(_vfs_vboxfs, OID_AUTO, version, CTLFLAG_RD, &vboxfs_version, 0, ""); ++SYSCTL_UINT(_vfs_vboxfs, OID_AUTO, debug, CTLFLAG_RW, &vboxvfs_debug, 0, "Debug level"); + +-static struct vfsops vboxvfs_vfsops = { +- .vfs_init = vboxvfs_init, +- .vfs_cmount = vboxvfs_cmount, +- .vfs_mount = vboxvfs_mount, +- .vfs_quotactl = vboxvfs_quotactl, +- .vfs_root = vboxvfs_root, +- .vfs_statfs = vboxvfs_statfs, +- .vfs_sync = vfs_stdsync, +- .vfs_uninit = vboxvfs_uninit, +- .vfs_unmount = vboxvfs_unmount, ++static vfs_init_t vboxfs_init; ++static vfs_uninit_t vboxfs_uninit; ++static vfs_cmount_t vboxfs_cmount; ++static vfs_mount_t vboxfs_mount; ++static vfs_root_t vboxfs_root; ++static vfs_quotactl_t vboxfs_quotactl; ++static vfs_statfs_t vboxfs_statfs; ++static vfs_unmount_t vboxfs_unmount; ++ ++static struct vfsops vboxfs_vfsops = { ++ .vfs_init = vboxfs_init, ++ .vfs_cmount = vboxfs_cmount, ++ .vfs_mount = vboxfs_mount, ++ .vfs_quotactl = vboxfs_quotactl, ++ .vfs_root = vboxfs_root, ++ .vfs_statfs = vboxfs_statfs, ++ .vfs_sync = vfs_stdsync, ++ .vfs_uninit = vboxfs_uninit, ++ .vfs_unmount = vboxfs_unmount + }; + + +-VFS_SET(vboxvfs_vfsops, vboxvfs, VFCF_NETWORK); ++VFS_SET(vboxfs_vfsops, vboxvfs, VFCF_NETWORK); + MODULE_DEPEND(vboxvfs, vboxguest, 1, 1, 1); + +-static int vboxvfs_cmount(struct mntarg *ma, void * data, int flags, struct thread *td) ++/* ++ * Allocates a new node of type 'type' inside the 'tmp' mount point, with ++ * its owner set to 'uid', its group to 'gid' and its mode set to 'mode', ++ * using the credentials of the process 'p'. ++ * ++ * If the node type is set to 'VDIR', then the parent parameter must point ++ * to the parent directory of the node being created. It may only be NULL ++ * while allocating the root node. ++ * ++ * If the node type is set to 'VBLK' or 'VCHR', then the rdev parameter ++ * specifies the device the node represents. ++ * ++ * If the node type is set to 'VLNK', then the parameter target specifies ++ * the file name of the target file for the symbolic link that is being ++ * created. ++ * ++ * Note that new nodes are retrieved from the available list if it has ++ * items or, if it is empty, from the node pool as long as there is enough ++ * space to create them. ++ * ++ * Returns zero on success or an appropriate error code on failure. ++ */ ++int ++vboxfs_alloc_node(struct mount *mp, struct vboxfs_mnt *vsfmp, const char *fullpath, ++ enum_vtype_t type, uid_t uid, gid_t gid, mode_t mode, struct vboxfs_node *parent, ++ struct vboxfs_node **node) + { +- struct vboxvfs_mount_info args; +- int rc = 0; ++ struct vboxfs_node *nnode; + +- printf("%s: Enter\n", __FUNCTION__); ++ if ((mp->mnt_kern_flag & MNTK_UNMOUNT) != 0) { ++ /* ++ * When a new tmpfs node is created for fully ++ * constructed mount point, there must be a parent ++ * node, which vnode is locked exclusively. As ++ * consequence, if the unmount is executing in ++ * parallel, vflush() cannot reclaim the parent vnode. ++ * Due to this, the check for MNTK_UNMOUNT flag is not ++ * racy: if we did not see MNTK_UNMOUNT flag, then tmp ++ * cannot be destroyed until node construction is ++ * finished and the parent vnode unlocked. ++ * ++ * Tmpfs does not need to instantiate new nodes during ++ * unmount. ++ */ ++ return (EBUSY); ++ } + +- rc = copyin(data, &args, sizeof(struct vboxvfs_mount_info)); +- if (rc) +- return rc; ++ nnode = (struct vboxfs_node *)uma_zalloc_arg( ++ vsfmp->sf_node_pool, vsfmp, M_WAITOK); + +- ma = mount_argf(ma, "uid", "%d", args.uid); +- ma = mount_argf(ma, "gid", "%d", args.gid); +- ma = mount_arg(ma, "from", args.name, -1); ++ /* Generic initialization. */ ++ nnode->sf_type = type; ++ nnode->sf_ino = vsfmp->sf_ino++; ++ nnode->sf_path = strdup(fullpath, M_VBOXVFS); ++ nnode->sf_parent = parent; ++ nnode->vboxfsmp = vsfmp; + +- rc = kernel_mount(ma, flags); ++ /* Type-specific initialization. */ ++ switch (nnode->sf_type) { ++ case VBLK: ++ case VCHR: ++ case VDIR: ++ case VFIFO: ++ case VSOCK: ++ case VLNK: ++ case VREG: ++ break; + +- printf("%s: Leave rc=%d\n", __FUNCTION__, rc); ++ default: ++ panic("vboxfs_alloc_node: type %p %d", nnode, (int)nnode->sf_type); ++ } + +- return rc; ++ *node = nnode; ++ return 0; + } + +-static const char *vboxvfs_opts[] = { +- "uid", "gid", "from", "fstype", "fspath", "errmsg", NULL +-}; +- +-static int vboxvfs_mount(struct mount *mp, struct thread *td) ++void ++vboxfs_free_node(struct vboxfs_mnt *vboxfs, struct vboxfs_node *node) + { +- int rc; +- char *pszShare; +- int cbShare, cbOption; +- int uid = 0, gid = 0; +- struct sf_glob_info *pShFlGlobalInfo; +- SHFLSTRING *pShFlShareName = NULL; +- int cbShFlShareName; + +- printf("%s: Enter\n", __FUNCTION__); ++#ifdef INVARIANTS ++ TMPFS_NODE_LOCK(node); ++ MPASS(node->sf_vnode == NULL); ++ MPASS((node->sf_vpstate & TMPFS_VNODE_ALLOCATING) == 0); ++ TMPFS_NODE_UNLOCK(node); ++#endif ++ if (node->sf_path) ++ free(node->sf_path, M_VBOXVFS); + +- if (mp->mnt_flag & (MNT_UPDATE | MNT_ROOTFS)) +- return EOPNOTSUPP; ++ uma_zfree(vboxfs->sf_node_pool, node); ++} + +- if (vfs_filteropt(mp->mnt_optnew, vboxvfs_opts)) +- { +- vfs_mount_error(mp, "%s", "Invalid option"); +- return EINVAL; +- } ++static int ++vboxfs_cmount(struct mntarg *ma, void *data, uint64_t flags) ++{ ++ struct vboxfs_mount_info args; ++ int error = 0; + +- rc = vfs_getopt(mp->mnt_optnew, "from", (void **)&pszShare, &cbShare); +- if (rc || pszShare[cbShare-1] != '\0' || cbShare > 0xfffe) +- return EINVAL; ++ if (data == NULL) ++ return (EINVAL); ++ error = copyin(data, &args, sizeof(struct vboxfs_mount_info)); ++ if (error) ++ return (error); + +- rc = vfs_getopt(mp->mnt_optnew, "gid", (void **)&gid, &cbOption); +- if ((rc != ENOENT) && (rc || cbOption != sizeof(gid))) +- return EINVAL; ++ ma = mount_argf(ma, "uid", "%d", args.uid); ++ ma = mount_argf(ma, "gid", "%d", args.gid); ++ ma = mount_argf(ma, "file_mode", "%d", args.fmode); ++ ma = mount_argf(ma, "dir_mode", "%d", args.dmode); ++ ma = mount_arg(ma, "from", args.name, -1); + +- rc = vfs_getopt(mp->mnt_optnew, "uid", (void **)&uid, &cbOption); +- if ((rc != ENOENT) && (rc || cbOption != sizeof(uid))) +- return EINVAL; ++ return (kernel_mount(ma, flags)); ++} + +- pShFlGlobalInfo = RTMemAllocZ(sizeof(struct sf_glob_info)); +- if (!pShFlGlobalInfo) +- return ENOMEM; ++static const char *vboxfs_opts[] = { ++ "fstype", ++ "fspath", ++ "from", ++ "uid", ++ "gid", ++ "file_mode", ++ "dir_mode", ++ "errmsg", ++ NULL ++}; + +- cbShFlShareName = offsetof (SHFLSTRING, String.utf8) + cbShare + 1; +- pShFlShareName = RTMemAllocZ(cbShFlShareName); +- if (!pShFlShareName) +- return VERR_NO_MEMORY; ++#define VBOX_INTOPT(optname, val, base) do { \ ++ char *ep, *optarg = NULL; \ ++ if (vfs_getopt(opts, optname, (void **)&optarg, NULL) == 0) { \ ++ if (optarg != NULL && *optarg == '\0') \ ++ optarg = NULL; \ ++ if (optarg != NULL) \ ++ val = strtoul(optarg, &ep, base); \ ++ if (optarg == NULL || *ep != '\0') { \ ++ struct sbuf *sb = sbuf_new_auto(); \ ++ sbuf_printf(sb, "Invalid %s: \"%s\"", optname, \ ++ optarg); \ ++ sbuf_finish(sb); \ ++ vfs_mount_error(mp, sbuf_data(sb)); \ ++ sbuf_delete(sb); \ ++ return (EINVAL); \ ++ } \ ++ } \ ++} while (0) + +- pShFlShareName->u16Length = cbShare; +- pShFlShareName->u16Size = cbShare + 1; +- memcpy (pShFlShareName->String.utf8, pszShare, cbShare + 1); ++static int ++vboxfs_node_ctor(void *mem, int size, void *arg, int flags) ++{ ++ struct vboxfs_node *node = (struct vboxfs_node *)mem; + +- rc = VbglR0SfMapFolder (&g_vboxSFClient, pShFlShareName, &pShFlGlobalInfo->map); +- RTMemFree(pShFlShareName); ++ node->sf_vnode = NULL; ++ node->sf_vpstate = 0; + +- if (RT_FAILURE (rc)) +- { +- RTMemFree(pShFlGlobalInfo); +- printf("VbglR0SfMapFolder failed rc=%d\n", rc); +- return EPROTO; +- } ++ return (0); ++} + +- pShFlGlobalInfo->uid = uid; +- pShFlGlobalInfo->gid = gid; ++static void ++vboxfs_node_dtor(void *mem, int size, void *arg) ++{ ++ struct vboxfs_node *node = (struct vboxfs_node *)mem; ++ node->sf_type = VNON; ++} + +- mp->mnt_data = pShFlGlobalInfo; ++static int ++vboxfs_node_init(void *mem, int size, int flags) ++{ ++ struct vboxfs_node *node = (struct vboxfs_node *)mem; ++ node->sf_ino = 0; + +- /** @todo root vnode. */ ++ mtx_init(&node->sf_interlock, "tmpfs node interlock", NULL, MTX_DEF); + +- vfs_getnewfsid(mp); +- vfs_mountedfrom(mp, pszShare); ++ return (0); ++} + +- printf("%s: Leave rc=0\n", __FUNCTION__); ++static void ++vboxfs_node_fini(void *mem, int size) ++{ ++ struct vboxfs_node *node = (struct vboxfs_node *)mem; + +- return 0; ++ mtx_destroy(&node->sf_interlock); + } + +-static int vboxvfs_unmount(struct mount *mp, int mntflags, struct thread *td) ++static int ++vboxfs_mount(struct mount *mp) + { +- struct sf_glob_info *pShFlGlobalInfo = VFSMP2SFGLOBINFO(mp); +- int rc; +- int flags = 0; ++ struct vboxfs_mnt *vboxfsmp = NULL; ++ struct vfsoptlist *opts = mp->mnt_optnew; ++ sfp_mount_t *handle = NULL; ++ int readonly = 0; ++ sffs_fsinfo_t fsinfo; ++ int error, share_len; ++ char *share_name; ++ mode_t file_mode = 0, dir_mode = 0; ++ uid_t uid = 0; ++ gid_t gid = 0; ++ struct vboxfs_node *root; + +- rc = VbglR0SfUnmapFolder(&g_vboxSFClient, &pShFlGlobalInfo->map); +- if (RT_FAILURE(rc)) +- printf("Failed to unmap shared folder\n"); ++ if (mp->mnt_flag & (MNT_UPDATE | MNT_ROOTFS)) ++ return (EOPNOTSUPP); + +- if (mntflags & MNT_FORCE) +- flags |= FORCECLOSE; ++ if (vfs_filteropt(opts, vboxfs_opts)) { ++ vfs_mount_error(mp, "%s", "Invalid option"); ++ return (EINVAL); ++ } + +- /* There is 1 extra root vnode reference (vnode_root). */ +- rc = vflush(mp, 1, flags, td); +- if (rc) +- return rc; ++ VBOX_INTOPT("uid", uid, 10); ++ VBOX_INTOPT("gid", gid, 10); ++ VBOX_INTOPT("file_mode", file_mode, 8); ++ VBOX_INTOPT("dir_mode", dir_mode, 8); ++ VBOX_INTOPT("ro", readonly, 10); + ++ error = vfs_getopt(opts, "from", (void **)&share_name, &share_len); ++ if (error != 0 || share_len == 0) { ++ vfs_mount_error(mp, "Invalid from"); ++ return (EINVAL); ++ } + +- RTMemFree(pShFlGlobalInfo); +- mp->mnt_data = NULL; ++ vboxfsmp = malloc(sizeof(struct vboxfs_mnt), M_VBOXVFS, M_WAITOK | M_ZERO); ++ vboxfsmp->sf_uid = uid; ++ vboxfsmp->sf_gid = gid; ++ vboxfsmp->sf_fmode = file_mode & (S_IRWXU | S_IRWXG | S_IRWXO); ++ vboxfsmp->sf_dmode = dir_mode & (S_IRWXU | S_IRWXG | S_IRWXO); ++ vboxfsmp->sf_ino = 3; ++ vboxfsmp->sf_stat_ttl = 200; + +- return 0; ++ /* Invoke Hypervisor mount interface before proceeding */ ++ error = sfprov_mount(share_name, &handle); ++ if (error) ++ return (error); ++ ++ /* Determine whether the filesystem must be read-only. */ ++ error = sfprov_get_fsinfo(handle, &fsinfo); ++ if (error != 0) { ++ sfprov_unmount(handle); ++ return (error); ++ } ++ if (readonly == 0) ++ readonly = (fsinfo.readonly != 0); ++ ++ vboxfsmp->sf_handle = handle; ++ vboxfsmp->sf_vfsp = mp; ++ ++ vboxfsmp->sf_node_pool = uma_zcreate("VBOXFS node", ++ sizeof(struct vboxfs_node), ++ vboxfs_node_ctor, vboxfs_node_dtor, ++ vboxfs_node_init, vboxfs_node_fini, ++ UMA_ALIGN_PTR, 0); ++ ++ /* Allocate the root node. */ ++ error = vboxfs_alloc_node(mp, vboxfsmp, "", VDIR, 0, ++ 0, 0755, NULL, &root); ++ ++ if (error != 0 || root == NULL) { ++ uma_zdestroy(vboxfsmp->sf_node_pool); ++ free(vboxfsmp, M_VBOXVFS); ++ return error; ++ } ++ ++ root->sf_parent = root; ++ vboxfsmp->sf_root = root; ++ ++ MNT_ILOCK(mp); ++ mp->mnt_data = vboxfsmp; ++ mp->mnt_stat.f_fsid.val[0] = fsinfo.serial; ++ mp->mnt_stat.f_fsid.val[1] = 0; ++ mp->mnt_flag |= MNT_LOCAL; ++ if (readonly != 0) ++ mp->mnt_flag |= MNT_RDONLY; ++ ++ mp->mnt_kern_flag |= MNTK_LOOKUP_SHARED | MNTK_EXTENDED_SHARED; ++ MNT_IUNLOCK(mp); ++ vfs_mountedfrom(mp, share_name); ++ ++ return (0); + } + +-static int vboxvfs_root(struct mount *mp, int flags, struct vnode **vpp, struct thread *td) ++/* ++ * Unmount a shared folder. ++ * ++ * vboxfs_unmount umounts the mounted file system. It return 0 ++ * on sucess and any relevant errno on failure. ++ */ ++static int ++vboxfs_unmount(struct mount *mp, int mntflags) + { +- int rc = 0; +- struct sf_glob_info *pShFlGlobalInfo = VFSMP2SFGLOBINFO(mp); +- struct vnode *vp; ++ struct vboxfs_mnt *vboxfsmp; ++ struct thread *td; ++ int error; ++ int flags; + +- printf("%s: Enter\n", __FUNCTION__); ++ vboxfsmp = VFSTOVBOXFS(mp); ++ td = curthread; ++ flags = 0; ++ if (mntflags & MNT_FORCE) ++ flags |= FORCECLOSE; + +- vp = pShFlGlobalInfo->vnode_root; +- VREF(vp); ++ error = vflush(mp, 0, flags, td); ++ if (error) ++ return (error); + +- vn_lock(vp, flags | LK_RETRY, td); +- *vpp = vp; ++ /* Invoke Hypervisor unmount interface before proceeding */ ++ error = sfprov_unmount(vboxfsmp->sf_handle); ++ if (error != 0) { ++ /* TBD anything here? */ ++ } + +- printf("%s: Leave\n", __FUNCTION__); ++ uma_zdestroy(vboxfsmp->sf_node_pool); + +- return rc; ++ free(vboxfsmp, M_VBOXVFS); ++ MNT_ILOCK(mp); ++ mp->mnt_data = NULL; ++ mp->mnt_flag &= ~MNT_LOCAL; ++ MNT_IUNLOCK(mp); ++ ++ return (0); + } + +-static int vboxvfs_quotactl(struct mount *mp, int cmd, uid_t uid, void *arg, struct thread *td) ++static int ++vboxfs_root(struct mount *mp, int flags, struct vnode **vpp) + { +- return EOPNOTSUPP; ++ int error; ++ error = vboxfs_alloc_vp(mp, VFSTOVBOXFS(mp)->sf_root, flags, vpp); ++ ++ if (!error) ++ (*vpp)->v_vflag |= VV_ROOT; ++ ++ return error; + } + +-int vboxvfs_init(struct vfsconf *vfsp) ++/* ++ * Do operation associated with quotas, not supported ++ */ ++static int ++vboxfs_quotactl(struct mount *mp, int cmd, uid_t uid, void *arg ++#if __FreeBSD_version >= 1400018 ++ , bool *mp_busy ++#endif ++ ) + { +- int rc; ++ return (EOPNOTSUPP); ++} + +- /* Initialize the R0 guest library. */ +- rc = VbglR0SfInit(); +- if (RT_FAILURE(rc)) +- return ENXIO; ++/* ++ * Initialize the filesystem globals. ++ */ ++static int ++vboxfs_init(struct vfsconf *vfsp) ++{ ++ int error; + +- /* Connect to the host service. */ +- rc = VbglR0SfConnect(&g_vboxSFClient); +- if (RT_FAILURE(rc)) +- { +- printf("Failed to get connection to host! rc=%d\n", rc); +- VbglR0SfTerm(); +- return ENXIO; +- } ++ DROP_GIANT(); + +- rc = VbglR0SfSetUtf8(&g_vboxSFClient); +- if (RT_FAILURE (rc)) +- { +- printf("VbglR0SfSetUtf8 failed, rc=%d\n", rc); +- VbglR0SfDisconnect(&g_vboxSFClient); +- VbglR0SfTerm(); +- return EPROTO; +- } ++ sfprov = sfprov_connect(SFPROV_VERSION); ++ if (sfprov == NULL) { ++ printf("%s: couldn't connect to sf provider", __func__); ++ return (ENODEV); ++ } + +- printf("Successfully loaded shared folder module\n"); ++ error = sfprov_set_show_symlinks(); ++ if (error != 0) ++ printf("%s: host unable to show symlinks, error=%d\n", ++ __func__, error); + +- return 0; ++ PICKUP_GIANT(); ++ return (0); + } + +-int vboxvfs_uninit(struct vfsconf *vfsp) ++/* ++ * Undo the work of vboxfs_init(). ++ */ ++static int ++vboxfs_uninit(struct vfsconf *vfsp) + { +- VbglR0SfDisconnect(&g_vboxSFClient); +- VbglR0SfTerm(); + +- return 0; ++ DROP_GIANT(); ++ sfprov_disconnect(); ++ PICKUP_GIANT(); ++ return (0); + } + +-int vboxvfs_statfs(struct mount *mp, struct statfs *sbp, struct thread *td) ++/* ++ * Get filesystem statistics. ++ */ ++static int ++vboxfs_statfs(struct mount *mp, struct statfs *sbp) + { +- return 0; ++ struct vboxfs_mnt *vboxfsmp; ++ sffs_fsinfo_t fsinfo; ++ int error; ++ ++ vboxfsmp = VFSTOVBOXFS(mp); ++ ++ error = sfprov_get_fsinfo(vboxfsmp->sf_handle, &fsinfo); ++ if (error != 0) ++ return (error); ++ ++ sbp->f_iosize = fsinfo.blksize; ++ sbp->f_bsize = fsinfo.blksize; ++ ++ sbp->f_bfree = fsinfo.blksavail; ++ sbp->f_bavail = fsinfo.blksavail; ++ sbp->f_files = fsinfo.blksavail / 4; /* some kind of reasonable value */ ++ sbp->f_ffree = fsinfo.blksavail / 4; ++ ++ sbp->f_blocks = fsinfo.blksused + sbp->f_bavail; ++ sbp->f_fsid.val[0] = mp->mnt_stat.f_fsid.val[0]; ++ sbp->f_fsid.val[1] = mp->mnt_stat.f_fsid.val[1]; ++ sbp->f_namemax = fsinfo.maxnamesize; ++ ++ return (0); + } diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c new file mode 100644 index 000000000000..90a799eef1db --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_freebsd_vboxvfs_vboxvfs__vnops.c @@ -0,0 +1,1543 @@ +--- src/VBox/Additions/freebsd/vboxvfs/vboxvfs_vnops.c.orig 2025-08-13 19:41:18 UTC ++++ src/VBox/Additions/freebsd/vboxvfs/vboxvfs_vnops.c +@@ -24,228 +24,1416 @@ + * + * SPDX-License-Identifier: GPL-3.0-only + */ +- +-#include "vboxvfs.h" + #include <sys/param.h> + #include <sys/systm.h> + #include <sys/namei.h> + #include <sys/kernel.h> +-#include <sys/proc.h> ++#include <sys/types.h> ++#include <sys/malloc.h> ++#include <sys/stat.h> + #include <sys/bio.h> ++#include <sys/conf.h> + #include <sys/buf.h> +-#include <sys/fcntl.h> ++#include <sys/iconv.h> + #include <sys/mount.h> +-#include <sys/unistd.h> + #include <sys/vnode.h> +-#include <sys/limits.h> +-#include <sys/lockf.h> +-#include <sys/stat.h> ++#include <sys/dirent.h> ++#include <sys/queue.h> ++#include <sys/unistd.h> ++#include <sys/endian.h> + +-#include <vm/vm.h> +-#include <vm/vm_extern.h> ++#include <vm/uma.h> + ++#include "vboxvfs.h" ++ ++#if __FreeBSD_version < 1300063 ++#define VN_IS_DOOMED(vp) (((vp)->v_iflag & VI_DOOMED) != 0) ++#endif ++ + /* + * Prototypes for VBOXVFS vnode operations + */ +-static vop_create_t vboxvfs_create; +-static vop_mknod_t vboxvfs_mknod; +-static vop_open_t vboxvfs_open; +-static vop_close_t vboxvfs_close; +-static vop_access_t vboxvfs_access; +-static vop_getattr_t vboxvfs_getattr; +-static vop_setattr_t vboxvfs_setattr; +-static vop_read_t vboxvfs_read; +-static vop_write_t vboxvfs_write; +-static vop_fsync_t vboxvfs_fsync; +-static vop_remove_t vboxvfs_remove; +-static vop_link_t vboxvfs_link; +-static vop_lookup_t vboxvfs_lookup; +-static vop_rename_t vboxvfs_rename; +-static vop_mkdir_t vboxvfs_mkdir; +-static vop_rmdir_t vboxvfs_rmdir; +-static vop_symlink_t vboxvfs_symlink; +-static vop_readdir_t vboxvfs_readdir; +-static vop_strategy_t vboxvfs_strategy; +-static vop_print_t vboxvfs_print; +-static vop_pathconf_t vboxvfs_pathconf; +-static vop_advlock_t vboxvfs_advlock; +-static vop_getextattr_t vboxvfs_getextattr; +-static vop_ioctl_t vboxvfs_ioctl; +-static vop_getpages_t vboxvfs_getpages; +-static vop_inactive_t vboxvfs_inactive; +-static vop_putpages_t vboxvfs_putpages; +-static vop_reclaim_t vboxvfs_reclaim; ++static vop_create_t vboxfs_create; ++static vop_open_t vboxfs_open; ++static vop_close_t vboxfs_close; ++static vop_access_t vboxfs_access; ++static vop_getattr_t vboxfs_getattr; ++static vop_setattr_t vboxfs_setattr; ++static vop_read_t vboxfs_read; ++static vop_readlink_t vboxfs_readlink; ++static vop_write_t vboxfs_write; ++static vop_fsync_t vboxfs_fsync; ++static vop_remove_t vboxfs_remove; ++static vop_link_t vboxfs_link; ++static vop_lookup_t vboxfs_lookup; ++static vop_cachedlookup_t vboxfs_cachedlookup; ++static vop_rename_t vboxfs_rename; ++static vop_mkdir_t vboxfs_mkdir; ++static vop_rmdir_t vboxfs_rmdir; ++static vop_symlink_t vboxfs_symlink; ++static vop_readdir_t vboxfs_readdir; ++static vop_print_t vboxfs_print; ++static vop_pathconf_t vboxfs_pathconf; ++static vop_advlock_t vboxfs_advlock; ++static vop_ioctl_t vboxfs_ioctl; ++static vop_inactive_t vboxfs_inactive; ++static vop_reclaim_t vboxfs_reclaim; ++static vop_vptofh_t vboxfs_vptofh; + +-struct vop_vector vboxvfs_vnodeops = { +- .vop_default = &default_vnodeops, ++struct vop_vector vboxfs_vnodeops = { ++ .vop_default = &default_vnodeops, + +- .vop_access = vboxvfs_access, +- .vop_advlock = vboxvfs_advlock, +- .vop_close = vboxvfs_close, +- .vop_create = vboxvfs_create, +- .vop_fsync = vboxvfs_fsync, +- .vop_getattr = vboxvfs_getattr, +- .vop_getextattr = vboxvfs_getextattr, +- .vop_getpages = vboxvfs_getpages, +- .vop_inactive = vboxvfs_inactive, +- .vop_ioctl = vboxvfs_ioctl, +- .vop_link = vboxvfs_link, +- .vop_lookup = vboxvfs_lookup, +- .vop_mkdir = vboxvfs_mkdir, +- .vop_mknod = vboxvfs_mknod, +- .vop_open = vboxvfs_open, +- .vop_pathconf = vboxvfs_pathconf, +- .vop_print = vboxvfs_print, +- .vop_putpages = vboxvfs_putpages, +- .vop_read = vboxvfs_read, +- .vop_readdir = vboxvfs_readdir, +- .vop_reclaim = vboxvfs_reclaim, +- .vop_remove = vboxvfs_remove, +- .vop_rename = vboxvfs_rename, +- .vop_rmdir = vboxvfs_rmdir, +- .vop_setattr = vboxvfs_setattr, +- .vop_strategy = vboxvfs_strategy, +- .vop_symlink = vboxvfs_symlink, +- .vop_write = vboxvfs_write, ++ .vop_access = vboxfs_access, ++ .vop_advlock = VOP_EOPNOTSUPP, ++ .vop_close = vboxfs_close, ++ .vop_create = vboxfs_create, ++ .vop_fsync = vboxfs_fsync, ++ .vop_getattr = vboxfs_getattr, ++ .vop_getextattr = VOP_EOPNOTSUPP, ++ .vop_inactive = vboxfs_inactive, ++ .vop_ioctl = vboxfs_ioctl, ++ .vop_link = vboxfs_link, ++ .vop_lookup = vboxfs_lookup, ++ .vop_cachedlookup = vboxfs_cachedlookup, ++ .vop_mkdir = vboxfs_mkdir, ++ .vop_mknod = VOP_EOPNOTSUPP, ++ .vop_open = vboxfs_open, ++ .vop_pathconf = vboxfs_pathconf, ++ .vop_print = vboxfs_print, ++ .vop_read = vboxfs_read, ++ .vop_readdir = vboxfs_readdir, ++ .vop_readlink = vboxfs_readlink, ++ .vop_reclaim = vboxfs_reclaim, ++ .vop_remove = vboxfs_remove, ++ .vop_rename = vboxfs_rename, ++ .vop_rmdir = vboxfs_rmdir, ++ .vop_setattr = vboxfs_setattr, ++ .vop_vptofh = vboxfs_vptofh, ++ .vop_symlink = vboxfs_symlink, ++ .vop_write = vboxfs_write, ++ .vop_bmap = VOP_EOPNOTSUPP + }; ++#if __FreeBSD_version > 1300068 ++VFS_VOP_VECTOR_REGISTER(vboxfs_vnodeops); ++#endif + +-static int vboxvfs_access(struct vop_access_args *ap) ++static uint64_t ++vsfnode_cur_time_usec(void) + { +- return 0; ++ struct timeval now; ++ ++ getmicrotime(&now); ++ ++ return (now.tv_sec*1000 + now.tv_usec); + } + +-static int vboxvfs_open(struct vop_open_args *ap) ++static int ++vsfnode_stat_cached(struct vboxfs_node *np) + { +- return 0; ++ return (vsfnode_cur_time_usec() - np->sf_stat_time) < ++ np->vboxfsmp->sf_stat_ttl * 1000UL; + } + +-static int vboxvfs_close(struct vop_close_args *ap) ++static int ++vsfnode_update_stat_cache(struct vboxfs_node *np) + { +- return 0; ++ int error; ++ ++ error = sfprov_get_attr(np->vboxfsmp->sf_handle, np->sf_path, ++ &np->sf_stat); ++#if 0 ++ if (error == ENOENT) ++ sfnode_make_stale(node); ++#endif ++ if (error == 0) ++ np->sf_stat_time = vsfnode_cur_time_usec(); ++ ++ return (error); + } + +-static int vboxvfs_getattr(struct vop_getattr_args *ap) ++/* ++ * Need to clear v_object for insmntque failure. ++ */ ++static void ++vboxfs_insmntque_dtr(struct vnode *vp, void *dtr_arg) + { +- return 0; ++ ++ // XXX: vboxfs_destroy_vobject(vp, vp->v_object); ++ vp->v_object = NULL; ++ vp->v_data = NULL; ++ vp->v_op = &dead_vnodeops; ++ vgone(vp); ++ vput(vp); + } + +-static int vboxvfs_setattr(struct vop_setattr_args *ap) ++/* ++ * Allocates a new vnode for the node node or returns a new reference to ++ * an existing one if the node had already a vnode referencing it. The ++ * resulting locked vnode is returned in *vpp. ++ * ++ * Returns zero on success or an appropriate error code on failure. ++ */ ++int ++vboxfs_alloc_vp(struct mount *mp, struct vboxfs_node *node, int lkflag, ++ struct vnode **vpp) + { +- return 0; ++ struct vnode *vp; ++ int error; ++ ++ error = 0; ++loop: ++ VBOXFS_NODE_LOCK(node); ++loop1: ++ if ((vp = node->sf_vnode) != NULL) { ++ MPASS((node->sf_vpstate & VBOXFS_VNODE_DOOMED) == 0); ++ VI_LOCK(vp); ++ if ((node->sf_type == VDIR && node->sf_parent == NULL) || ++ (VN_IS_DOOMED(vp) && ++ (lkflag & LK_NOWAIT) != 0)) { ++ VI_UNLOCK(vp); ++ VBOXFS_NODE_UNLOCK(node); ++ error = ENOENT; ++ vp = NULL; ++ goto out; ++ } ++ if (VN_IS_DOOMED(vp)) { ++ VI_UNLOCK(vp); ++ node->sf_vpstate |= VBOXFS_VNODE_WRECLAIM; ++ while ((node->sf_vpstate & VBOXFS_VNODE_WRECLAIM) != 0) { ++ msleep(&node->sf_vnode, VBOXFS_NODE_MTX(node), ++ 0, "vsfE", 0); ++ } ++ goto loop1; ++ } ++ VBOXFS_NODE_UNLOCK(node); ++#if __FreeBSD_version < 1300109 ++ error = vget(vp, lkflag | LK_INTERLOCK, curthread); ++#else ++ error = vget(vp, lkflag | LK_INTERLOCK); ++#endif ++ if (error == ENOENT) ++ goto loop; ++ if (error != 0) { ++ vp = NULL; ++ goto out; ++ } ++ ++ /* ++ * Make sure the vnode is still there after ++ * getting the interlock to avoid racing a free. ++ */ ++ if (node->sf_vnode == NULL || node->sf_vnode != vp) { ++ vput(vp); ++ goto loop; ++ } ++ ++ goto out; ++ } ++ ++ if ((node->sf_vpstate & VBOXFS_VNODE_DOOMED) || ++ (node->sf_type == VDIR && node->sf_parent == NULL)) { ++ VBOXFS_NODE_UNLOCK(node); ++ error = ENOENT; ++ vp = NULL; ++ goto out; ++ } ++ ++ /* ++ * otherwise lock the vp list while we call getnewvnode ++ * since that can block. ++ */ ++ if (node->sf_vpstate & VBOXFS_VNODE_ALLOCATING) { ++ node->sf_vpstate |= VBOXFS_VNODE_WANT; ++ error = msleep((caddr_t) &node->sf_vpstate, ++ VBOXFS_NODE_MTX(node), PDROP | PCATCH, ++ "vboxfs_alloc_vp", 0); ++ if (error) ++ return error; ++ ++ goto loop; ++ } else ++ node->sf_vpstate |= VBOXFS_VNODE_ALLOCATING; ++ ++ VBOXFS_NODE_UNLOCK(node); ++ ++ /* Get a new vnode and associate it with our node. */ ++ error = getnewvnode("vboxfs", mp, &vboxfs_vnodeops, &vp); ++ if (error != 0) ++ goto unlock; ++ MPASS(vp != NULL); ++ ++ /* lkflag is ignored, the lock is exclusive */ ++ (void) vn_lock(vp, lkflag | LK_RETRY); ++ ++ vp->v_data = node; ++ vp->v_type = node->sf_type; ++ ++ /* Type-specific initialization. */ ++ switch (node->sf_type) { ++ case VBLK: ++ /* FALLTHROUGH */ ++ case VCHR: ++ /* FALLTHROUGH */ ++ case VLNK: ++ /* FALLTHROUGH */ ++ case VSOCK: ++ /* FALLTHROUGH */ ++ case VFIFO: ++ /* FALLTHROUGH */ ++ case VREG: ++ break; ++ case VDIR: ++ MPASS(node->sf_parent != NULL); ++ if (node->sf_parent == node) ++ vp->v_vflag |= VV_ROOT; ++ break; ++ ++ default: ++ panic("vboxfs_alloc_vp: type %p %d", node, (int)node->sf_type); ++ } ++ ++ if (vp->v_type != VFIFO) ++ VN_LOCK_ASHARE(vp); ++ ++#if __FreeBSD_version < 1400051 ++ error = insmntque1(vp, mp, vboxfs_insmntque_dtr, NULL); ++#else ++ error = insmntque(vp, mp); ++#endif ++ if (error) { ++#if __FreeBSD_version >= 1400051 ++ vboxfs_insmntque_dtr(vp, NULL); ++#endif ++ vp = NULL; ++ } ++ ++unlock: ++ VBOXFS_NODE_LOCK(node); ++ ++ MPASS(node->sf_vpstate & VBOXFS_VNODE_ALLOCATING); ++ node->sf_vpstate &= ~VBOXFS_VNODE_ALLOCATING; ++ node->sf_vnode = vp; ++ ++ if (node->sf_vpstate & VBOXFS_VNODE_WANT) { ++ node->sf_vpstate &= ~VBOXFS_VNODE_WANT; ++ VBOXFS_NODE_UNLOCK(node); ++ wakeup((caddr_t) &node->sf_vpstate); ++ } else ++ VBOXFS_NODE_UNLOCK(node); ++ ++out: ++ *vpp = vp; ++ ++#ifdef INVARIANTS ++ if (error == 0) { ++ MPASS(*vpp != NULL && VOP_ISLOCKED(*vpp)); ++ VBOXFS_NODE_LOCK(node); ++ MPASS(*vpp == node->sf_vnode); ++ VBOXFS_NODE_UNLOCK(node); ++ } ++#endif ++ ++ return error; + } + +-static int vboxvfs_read(struct vop_read_args *ap) ++/* ++ * Destroys the association between the vnode vp and the node it ++ * references. ++ */ ++void ++vboxfs_free_vp(struct vnode *vp) + { +- return 0; ++ struct vboxfs_node *node; ++ ++ node = VP_TO_VBOXFS_NODE(vp); ++ ++ VBOXFS_NODE_ASSERT_LOCKED(node); ++ node->sf_vnode = NULL; ++ if ((node->sf_vpstate & VBOXFS_VNODE_WRECLAIM) != 0) ++ wakeup(&node->sf_vnode); ++ node->sf_vpstate &= ~VBOXFS_VNODE_WRECLAIM; ++ vp->v_data = NULL; + } + +-static int vboxvfs_write(struct vop_write_args *ap) ++/* ++ * Allocate new vboxfs_node and vnode for given file ++ */ ++static int ++vboxfs_alloc_file(struct vboxfs_mnt *vboxfsmp, const char *fullpath, ++ enum_vtype_t type, mode_t mode, struct vboxfs_node *parent, ++ int lkflag, struct vnode **vpp) + { +- return 0; ++ int error; ++ struct vboxfs_node *unode; ++ ++ error = vboxfs_alloc_node(vboxfsmp->sf_vfsp, vboxfsmp, fullpath, type, ++ vboxfsmp->sf_uid, vboxfsmp->sf_gid, mode, parent, &unode); ++ ++ if (error) ++ goto out; ++ ++ error = vboxfs_alloc_vp(vboxfsmp->sf_vfsp, unode, lkflag, vpp); ++ if (error) ++ vboxfs_free_node(vboxfsmp, unode); ++ ++out: ++ return (error); + } + +-static int vboxvfs_create(struct vop_create_args *ap) ++static int ++vboxfs_vn_get_ino_alloc(struct mount *mp, void *arg, int lkflags, ++ struct vnode **rvp) + { +- return 0; ++ ++ return (vboxfs_alloc_vp(mp, arg, lkflags, rvp)); + } + +-static int vboxvfs_remove(struct vop_remove_args *ap) ++/* ++ * Construct a new pathname given an sfnode plus an optional tail ++ * component of length len ++ * This handles ".." and "." ++ */ ++static char * ++sfnode_construct_path(struct vboxfs_node *node, char *tail, int len) + { +- return 0; ++ char *p; ++ size_t dstsz; ++ ++ if (len <= 2 && tail[0] == '.' && (len == 1 || tail[1] == '.')) ++ panic("construct path for %s", tail); ++ dstsz = strlen(node->sf_path) + 1 + len + 1; ++ p = malloc(dstsz, M_VBOXVFS, M_WAITOK); ++ strcpy(p, node->sf_path); ++ strcat(p, "/"); ++ strlcat(p, tail, dstsz); ++ return (p); + } + +-static int vboxvfs_rename(struct vop_rename_args *ap) ++static int ++vboxfs_access(struct vop_access_args *ap) + { +- return 0; ++ struct vnode *vp = ap->a_vp; ++ accmode_t accmode = ap->a_accmode; ++ struct vboxfs_node *node; ++ int error; ++ mode_t m; ++ ++ MPASS(VOP_ISLOCKED(vp)); ++ ++ node = VP_TO_VBOXFS_NODE(vp); ++ ++ if ((accmode & VWRITE) && (vp->v_mount->mnt_flag & MNT_RDONLY)) { ++ switch (vp->v_type) { ++ case VDIR: ++ case VLNK: ++ case VREG: ++ return (EROFS); ++ /* NOT REACHED */ ++ default: ++ break; ++ } ++ } ++ ++ if (vsfnode_stat_cached(node)) ++ error = 0; ++ else ++ error = vsfnode_update_stat_cache(node); ++ m = (error == 0) ? node->sf_stat.sf_mode : 0; ++ ++#if __FreeBSD_version < 1300105 ++ return (vaccess(vp->v_type, m, node->vboxfsmp->sf_uid, ++ node->vboxfsmp->sf_gid, accmode, ap->a_cred, NULL)); ++#else ++ return (vaccess(vp->v_type, m, node->vboxfsmp->sf_uid, ++ node->vboxfsmp->sf_gid, accmode, ap->a_cred)); ++#endif + } + +-static int vboxvfs_link(struct vop_link_args *ap) ++/* ++ * Clears the (cached) directory listing for the node. ++ */ ++static void ++vfsnode_clear_dir_list(struct vboxfs_node *np) + { +- return EOPNOTSUPP; ++ while (np->sf_dir_list != NULL) { ++ sffs_dirents_t *next = np->sf_dir_list->sf_next; ++ free(np->sf_dir_list, M_VBOXVFS); ++ np->sf_dir_list = next; ++ } + } + +-static int vboxvfs_symlink(struct vop_symlink_args *ap) ++static int ++vboxfs_get_sfp_file(struct vboxfs_node *np) + { +- return EOPNOTSUPP; ++ sfp_file_t *fp; ++ int error; ++ ++ fp = NULL; ++ VBOXFS_NODE_LOCK(np); ++ for (;;) { ++ if (np->sf_file != NULL) { ++ if (fp != NULL) ++ (void) sfprov_close(fp); ++ np->sf_opencnt++; ++ fp = np->sf_file; ++ break; ++ } else if (fp != NULL) { ++ np->sf_file = fp; ++ KASSERT(np->sf_opencnt == 0, ++ ("np %p opencnt (%d) must be zero.", ++ np, np->sf_opencnt)); ++ np->sf_opencnt = 1; ++ break; ++ } ++ VBOXFS_NODE_UNLOCK(np); ++ error = sfprov_open(np->vboxfsmp->sf_handle, np->sf_path, &fp); ++ if (error != 0) ++ return (error); ++ VBOXFS_NODE_LOCK(np); ++ } ++ VBOXFS_NODE_UNLOCK(np); ++ ++ return (0); + } + +-static int vboxvfs_mknod(struct vop_mknod_args *ap) ++static void ++vboxfs_put_sfp_file(struct vboxfs_node *np) + { +- return EOPNOTSUPP; ++ VBOXFS_NODE_LOCK(np); ++ np->sf_opencnt--; ++ if (np->sf_opencnt == 0) { ++ (void) sfprov_close(np->sf_file); ++ np->sf_file = NULL; ++ } ++ VBOXFS_NODE_UNLOCK(np); + } + +-static int vboxvfs_mkdir(struct vop_mkdir_args *ap) ++static int ++vboxfs_open(struct vop_open_args *ap) + { +- return 0; ++ struct vboxfs_node *np; ++ int error; ++ ++ MPASS(VOP_ISLOCKED(vp)); ++ ++ np = VP_TO_VBOXFS_NODE(ap->a_vp); ++ error = vboxfs_get_sfp_file(np); ++ if (error != 0) ++ goto out; ++ ++ vnode_create_vobject(ap->a_vp, 0, ap->a_td); ++out: ++ MPASS(VOP_ISLOCKED(vp)); ++ ++ return (error); + } + +-static int vboxvfs_rmdir(struct vop_rmdir_args *ap) ++static void ++vfsnode_invalidate_stat_cache(struct vboxfs_node *np) + { +- return 0; ++ np->sf_stat_time = 0; + } + +-static int vboxvfs_readdir(struct vop_readdir_args *ap) ++static int ++vboxfs_close(struct vop_close_args *ap) + { +- return 0; ++ struct vnode *vp = ap->a_vp; ++ struct vboxfs_node *np; ++ ++ np = VP_TO_VBOXFS_NODE(vp); ++ ++ /* ++ * Free the directory entries for the node. We do this on this call ++ * here because the directory node may not become inactive for a long ++ * time after the readdir is over. Case in point, if somebody cd's into ++ * the directory then it won't become inactive until they cd away again. ++ * In such a case we would end up with the directory listing not getting ++ * updated (i.e. the result of 'ls' always being the same) until they ++ * change the working directory. ++ */ ++ vfsnode_clear_dir_list(np); ++ ++ vfsnode_invalidate_stat_cache(np); ++ ++ vboxfs_put_sfp_file(np); ++ ++ return (0); + } + +-static int vboxvfs_fsync(struct vop_fsync_args *ap) ++static int ++vboxfs_getattr(struct vop_getattr_args *ap) + { +- return 0; ++ struct vnode *vp = ap->a_vp; ++ struct vattr *vap = ap->a_vap; ++ struct vboxfs_node *np = VP_TO_VBOXFS_NODE(vp); ++ struct vboxfs_mnt *mp = np->vboxfsmp; ++ mode_t mode; ++ int error = 0; ++ ++ mode = 0; ++ vap->va_type = vp->v_type; ++ ++ vap->va_nlink = 1; /* number of references to file */ ++ vap->va_uid = mp->sf_uid; /* owner user id */ ++ vap->va_gid = mp->sf_gid; /* owner group id */ ++ vap->va_rdev = NODEV; /* device the special file represents */ ++ vap->va_gen = VNOVAL; /* generation number of file */ ++ vap->va_flags = 0; /* flags defined for file */ ++ vap->va_filerev = 0; /* file modification number */ ++ vap->va_vaflags = 0; /* operations flags */ ++ vap->va_fileid = np->sf_ino; /* file id */ ++ vap->va_fsid = vp->v_mount->mnt_stat.f_fsid.val[0]; ++ if (vap->va_fileid == 0) ++ vap->va_fileid = 2; ++ ++ vap->va_atime.tv_sec = VNOVAL; ++ vap->va_atime.tv_nsec = VNOVAL; ++ vap->va_mtime.tv_sec = VNOVAL; ++ vap->va_mtime.tv_nsec = VNOVAL; ++ vap->va_ctime.tv_sec = VNOVAL; ++ vap->va_ctime.tv_nsec = VNOVAL; ++ ++ if (!vsfnode_stat_cached(np)) { ++ error = vsfnode_update_stat_cache(np); ++ if (error != 0) ++ goto done; ++ } ++ ++ vap->va_atime = np->sf_stat.sf_atime; ++ vap->va_mtime = np->sf_stat.sf_mtime; ++ vap->va_ctime = np->sf_stat.sf_ctime; ++ ++ mode = np->sf_stat.sf_mode; ++ ++ vap->va_mode = mode; ++ if (S_ISDIR(mode)) { ++ vap->va_type = VDIR; /* vnode type (for create) */ ++ vap->va_mode = mp->sf_dmode != 0 ? (mp->sf_dmode & 0777) : vap->va_mode; ++ vap->va_mode &= ~mp->sf_dmask; ++ vap->va_mode |= S_IFDIR; ++ } else if (S_ISREG(mode)) { ++ vap->va_type = VREG; ++ vap->va_mode = mp->sf_fmode != 0 ? (mp->sf_fmode & 0777) : vap->va_mode; ++ vap->va_mode &= ~mp->sf_fmask; ++ vap->va_mode |= S_IFREG; ++ } else if (S_ISFIFO(mode)) ++ vap->va_type = VFIFO; ++ else if (S_ISCHR(mode)) ++ vap->va_type = VCHR; ++ else if (S_ISBLK(mode)) ++ vap->va_type = VBLK; ++ else if (S_ISLNK(mode)) { ++ vap->va_type = VLNK; ++ vap->va_mode = mp->sf_fmode != 0 ? (mp->sf_fmode & 0777) : vap->va_mode; ++ vap->va_mode &= ~mp->sf_fmask; ++ vap->va_mode |= S_IFLNK; ++ } else if (S_ISSOCK(mode)) ++ vap->va_type = VSOCK; ++ ++ vap->va_size = np->sf_stat.sf_size; ++ vap->va_blocksize = 512; ++ /* bytes of disk space held by file */ ++ vap->va_bytes = (np->sf_stat.sf_alloc + 511) / 512; ++ ++done: ++ return (error); + } + +-static int vboxvfs_print (struct vop_print_args *ap) ++static int ++vboxfs_setattr(struct vop_setattr_args *ap) + { +- return 0; ++ struct vnode *vp = ap->a_vp; ++ struct vattr *vap = ap->a_vap; ++ struct vboxfs_node *np = VP_TO_VBOXFS_NODE(vp); ++ int error; ++ mode_t mode; ++ ++ mode = vap->va_mode; ++ if (vp->v_type == VREG) ++ mode |= S_IFREG; ++ else if (vp->v_type == VDIR) ++ mode |= S_IFDIR; ++ else if (vp->v_type == VBLK) ++ mode |= S_IFBLK; ++ else if (vp->v_type == VCHR) ++ mode |= S_IFCHR; ++ else if (vp->v_type == VLNK) ++ mode |= S_IFLNK; ++ else if (vp->v_type == VFIFO) ++ mode |= S_IFIFO; ++ else if (vp->v_type == VSOCK) ++ mode |= S_IFSOCK; ++ ++ vfsnode_invalidate_stat_cache(np); ++ ++ error = sfprov_set_attr(np->vboxfsmp->sf_handle, np->sf_path, ++ mode, vap->va_atime, vap->va_mtime, vap->va_ctime); ++#if 0 ++ if (error == ENOENT) ++ sfnode_make_stale(np); ++#endif ++ if (vap->va_size != (u_quad_t)VNOVAL) { ++ switch (vp->v_type) { ++ case VDIR: ++ return (EISDIR); ++ case VLNK: ++ /* FALLTHROUGH */ ++ case VREG: ++ error = sfprov_set_size(np->vboxfsmp->sf_handle, np->sf_path, vap->va_size); ++ break; ++ case VCHR: ++ /* FALLTHROUGH */ ++ case VBLK: ++ /* FALLTHROUGH */ ++ case VSOCK: ++ /* FALLTHROUGH */ ++ case VFIFO: ++ /* FALLTHROUGH */ ++ case VNON: ++ /* FALLTHROUGH */ ++ case VBAD: ++ /* FALLTHROUGH */ ++ case VMARKER: ++ return (0); ++ } ++ } ++ ++ return (error); + } + +-static int vboxvfs_pathconf (struct vop_pathconf_args *ap) ++#define blkoff(vboxfsmp, loc) ((loc) & (vboxfsmp)->bmask) ++ ++static int ++vboxfs_read(struct vop_read_args *ap) + { +- return 0; ++ struct vnode *vp = ap->a_vp; ++ struct uio *uio = ap->a_uio; ++ struct vboxfs_node *np = VP_TO_VBOXFS_NODE(vp); ++ int error = 0; ++ uint32_t bytes; ++ uint32_t done; ++ unsigned long offset; ++ ssize_t total; ++ void *tmpbuf; ++ ++ if (vp->v_type == VDIR) ++ return (EISDIR); ++ ++ if (vp->v_type != VREG) ++ return (EINVAL); ++ ++ if (uio->uio_offset < 0) ++ return (EINVAL); ++ ++ total = uio->uio_resid; ++ if (total == 0) ++ return (0); ++ ++ /* ++ * XXXGONZO: this is just to get things working ++ * should be optimized ++ */ ++ tmpbuf = contigmalloc(PAGE_SIZE, M_DEVBUF, M_WAITOK, 0, ~0, PAGE_SIZE, 0); ++ if (tmpbuf == 0) ++ return (ENOMEM); ++ ++ /* ++ * XXX VOP_READ() is called without VOP_OPEN() on exec case. ++ * We need to ensure the file is opened here. ++ */ ++ error = vboxfs_get_sfp_file(np); ++ if (error != 0) /* Maybe removed on the host. */ ++ return (EIO); ++ do { ++ offset = uio->uio_offset; ++ done = bytes = min(PAGE_SIZE, uio->uio_resid); ++ error = sfprov_read(np->sf_file, tmpbuf, ++ offset, &done, 0); ++ if (error == 0 && done > 0) ++ error = uiomove(tmpbuf, done, uio); ++ } while (error == 0 && uio->uio_resid > 0 && done > 0); ++ vboxfs_put_sfp_file(np); ++ ++ contigfree(tmpbuf, PAGE_SIZE, M_DEVBUF); ++ ++ /* a partial read is never an error */ ++ if (total != uio->uio_resid) ++ error = 0; ++ ++ return (error); + } + +-static int vboxvfs_strategy (struct vop_strategy_args *ap) ++static int ++vboxfs_write(struct vop_write_args *ap) + { +- return 0; ++ struct vnode *vp = ap->a_vp; ++ struct uio *uio = ap->a_uio; ++ struct vboxfs_node *np = VP_TO_VBOXFS_NODE(vp); ++ int error = 0; ++ uint32_t bytes; ++ uint32_t done; ++ unsigned long offset; ++ ssize_t total; ++ void *tmpbuf; ++ ++ if (vp->v_type == VDIR) ++ return (EISDIR); ++ ++ if (vp->v_type != VREG) ++ return (EINVAL); ++ ++ if (uio->uio_offset < 0) ++ return (EINVAL); ++ ++ total = uio->uio_resid; ++ if (total == 0) ++ return (0); ++ ++ /* ++ * XXXGONZO: this is just to get things working ++ * should be optimized ++ */ ++ tmpbuf = contigmalloc(PAGE_SIZE, M_DEVBUF, M_WAITOK, 0, ~0, PAGE_SIZE, 0); ++ if (tmpbuf == 0) ++ return (ENOMEM); ++ ++ do { ++ offset = uio->uio_offset; ++ bytes = min(PAGE_SIZE, uio->uio_resid); ++ error = uiomove(tmpbuf, bytes, uio); ++ if (error != 0) ++ break; ++ done = bytes; ++ error = sfprov_write(np->sf_file, tmpbuf, ++ offset, &done, 0); ++ if (error != 0) ++ break; ++ total -= done; ++ if (done != bytes) ++ uio->uio_resid += bytes - done; ++ } while (error == 0 && uio->uio_resid > 0 && done > 0); ++ ++ contigfree(tmpbuf, PAGE_SIZE, M_DEVBUF); ++ ++ /* a partial write is never an error */ ++ if (total != uio->uio_resid) ++ error = 0; ++ ++ return (error); + } + +-static int vboxvfs_ioctl(struct vop_ioctl_args *ap) ++static int ++vboxfs_create(struct vop_create_args *ap) + { +- return ENOTTY; ++ struct vnode *dvp = ap->a_dvp; ++ struct vnode **vpp = ap->a_vpp; ++ struct componentname *cnp = ap->a_cnp; ++ struct vattr *vap = ap->a_vap; ++ sffs_stat_t stat; ++ char *fullpath = NULL; ++ struct vboxfs_node *dir = VP_TO_VBOXFS_NODE(dvp); ++ int error; ++ struct vboxfs_mnt *vboxfsmp = dir->vboxfsmp; ++ ++ MPASS(vap->va_type == VREG); ++ ++ fullpath = sfnode_construct_path(dir, cnp->cn_nameptr, cnp->cn_namelen); ++ error = sfprov_create(dir->vboxfsmp->sf_handle, fullpath, vap->va_mode, ++ &stat); ++ ++ if (error) ++ goto out; ++ ++ error = vboxfs_alloc_file(vboxfsmp, fullpath, VREG, vap->va_mode, dir, cnp->cn_lkflags, vpp); ++ ++out: ++ if (fullpath) ++ free(fullpath, M_VBOXVFS); ++ ++ if (error == 0) { ++ vfsnode_clear_dir_list(dir); ++ if ((cnp->cn_flags & MAKEENTRY) != 0) ++ cache_enter(dvp, *vpp, cnp); ++ } ++ ++ return (error); + } + +-static int vboxvfs_getextattr(struct vop_getextattr_args *ap) ++static int ++vboxfs_remove(struct vop_remove_args *ap) + { +- return 0; ++ struct vnode *dvp = ap->a_dvp; ++ struct vnode *vp = ap->a_vp; ++ struct vboxfs_node *np, *dir; ++ ++ int error; ++ ++ MPASS(VOP_ISLOCKED(dvp)); ++ MPASS(VOP_ISLOCKED(vp)); ++ ++ error = 0; ++ ++ np = VP_TO_VBOXFS_NODE(vp); ++ dir = VP_TO_VBOXFS_NODE(vp); ++ ++ error = sfprov_remove(np->vboxfsmp->sf_handle, np->sf_path, ++ np->sf_type == VLNK); ++ ++#if 0 ++ if (error == ENOENT || error == 0) ++ sfnode_make_stale(np); ++#endif ++ ++ if (error == 0) ++ vfsnode_clear_dir_list(dir); ++ ++out: ++ return (error); + } + +-static int vboxvfs_advlock(struct vop_advlock_args *ap) ++static int ++vboxfs_rename(struct vop_rename_args *ap) + { +- return 0; ++ struct vnode *fvp; ++ struct vnode *fdvp; ++ struct vnode *tvp; ++ struct vnode *tdvp; ++ struct componentname *fcnp; ++ struct componentname *tcnp; ++ struct vboxfs_node *np; ++ int ret; ++ ++ fvp = ap->a_fvp; ++ fdvp = ap->a_fdvp; ++ tvp = ap->a_tvp; ++ tdvp = ap->a_tdvp; ++ fcnp = ap->a_fcnp; ++ tcnp = ap->a_tcnp; ++ ++ /* Check for cross-device rename */ ++ if ((fvp->v_mount != tdvp->v_mount) || ++ (tvp && (fvp->v_mount != tvp->v_mount))) { ++ ret = EXDEV; ++ goto out; ++ } ++ np = VP_TO_VBOXFS_NODE(fvp); ++ if (np == NULL) ++ return (0); ++ ret = sfprov_rename(np->vboxfsmp->sf_handle, ++ fcnp->cn_nameptr, tcnp->cn_nameptr, fvp->v_type == VDIR); ++out: ++ if (tdvp == tvp) ++ vrele(tdvp); ++ else ++ vput(tdvp); ++ if (tvp) ++ vput(tvp); ++ vrele(fdvp); ++ vrele(fvp); ++ return (ret); + } + +-static int vboxvfs_lookup(struct vop_lookup_args *ap) ++static int ++vboxfs_link(struct vop_link_args *ap) + { +- return 0; ++ return (EOPNOTSUPP); + } + +-static int vboxvfs_inactive(struct vop_inactive_args *ap) ++static int ++vboxfs_symlink(struct vop_symlink_args *ap) + { +- return 0; ++ struct vnode *dvp = ap->a_dvp; ++ struct vnode **vpp = ap->a_vpp; ++ struct componentname *cnp = ap->a_cnp; ++ struct vattr *vap = ap->a_vap; ++ sffs_stat_t stat; ++ char *fullpath = NULL; ++ struct vboxfs_node *dir = VP_TO_VBOXFS_NODE(dvp); ++ int error; ++ struct vboxfs_mnt *vboxfsmp = dir->vboxfsmp; ++ ++ MPASS(vap->va_type == VLNK); ++ ++ fullpath = sfnode_construct_path(dir, cnp->cn_nameptr, cnp->cn_namelen); ++ error = sfprov_symlink(dir->vboxfsmp->sf_handle, fullpath, ap->a_target, &stat); ++ ++ if (error) ++ goto out; ++ ++ error = vboxfs_alloc_file(vboxfsmp, fullpath, VLNK, vap->va_mode, dir, cnp->cn_lkflags, vpp); ++ ++out: ++ if (fullpath) ++ free(fullpath, M_VBOXVFS); ++ ++ if (error == 0) ++ vfsnode_clear_dir_list(dir); ++ ++ return (error); + } + +-static int vboxvfs_reclaim(struct vop_reclaim_args *ap) ++static int ++vboxfs_mkdir(struct vop_mkdir_args *ap) + { +- return 0; ++ struct vnode *dvp = ap->a_dvp; ++ struct vnode **vpp = ap->a_vpp; ++ struct componentname *cnp = ap->a_cnp; ++ struct vattr *vap = ap->a_vap; ++ sffs_stat_t stat; ++ char *fullpath = NULL; ++ struct vboxfs_node *dir = VP_TO_VBOXFS_NODE(dvp); ++ int error; ++ struct vboxfs_mnt *vboxfsmp = dir->vboxfsmp; ++ ++ MPASS(vap->va_type == VDIR); ++ ++ fullpath = sfnode_construct_path(dir, cnp->cn_nameptr, cnp->cn_namelen); ++ error = sfprov_mkdir(dir->vboxfsmp->sf_handle, fullpath, vap->va_mode, ++ &stat); ++ ++ if (error) ++ goto out; ++ ++ error = vboxfs_alloc_file(vboxfsmp, fullpath, VDIR, vap->va_mode, dir, cnp->cn_lkflags, vpp); ++ ++out: ++ if (fullpath) ++ free(fullpath, M_VBOXVFS); ++ ++ if (error == 0) ++ vfsnode_clear_dir_list(dir); ++ ++ return (error); + } + +-static int vboxvfs_getpages(struct vop_getpages_args *ap) ++static int ++vboxfs_rmdir(struct vop_rmdir_args *ap) + { +- return 0; ++ struct vnode *dvp = ap->a_dvp; ++ struct vnode *vp = ap->a_vp; ++ struct vboxfs_node *np, *dir; ++ ++ int error; ++ ++ MPASS(VOP_ISLOCKED(dvp)); ++ MPASS(VOP_ISLOCKED(vp)); ++ ++ error = 0; ++ ++ np = VP_TO_VBOXFS_NODE(vp); ++ dir = VP_TO_VBOXFS_NODE(vp); ++ ++ error = sfprov_rmdir(np->vboxfsmp->sf_handle, np->sf_path); ++ ++#if 0 ++ if (error == ENOENT || error == 0) ++ sfnode_make_stale(np); ++#endif ++ ++ if (error == 0) ++ vfsnode_clear_dir_list(dir); ++ ++out: ++ return (error); + } + +-static int vboxvfs_putpages(struct vop_putpages_args *ap) ++static int ++vboxfs_readdir(struct vop_readdir_args *ap) + { +- return 0; ++ int *eofp = ap->a_eofflag; ++ struct vnode *vp = ap->a_vp; ++ struct uio *uio = ap->a_uio; ++ struct vboxfs_node *dir = VP_TO_VBOXFS_NODE(vp); ++ struct vboxfs_node *node = NULL; ++ struct sffs_dirent *dirent = NULL; ++ sffs_dirents_t *cur_buf; ++ off_t offset = 0; ++ off_t orig_off = uio->uio_offset; ++ int error = 0; ++ int dummy_eof; ++ ++ if (vp->v_type != VDIR) ++ return (ENOTDIR); ++ ++ if (eofp == NULL) ++ eofp = &dummy_eof; ++ *eofp = 0; ++ ++ /* ++ * Get the directory entry names from the host. This gets all ++ * entries. These are stored in a linked list of sffs_dirents_t ++ * buffers, each of which contains a list of dirent64_t's. ++ */ ++ if (dir->sf_dir_list == NULL) { ++ error = sfprov_readdir(dir->vboxfsmp->sf_handle, dir->sf_path, ++ &dir->sf_dir_list); ++ if (error != 0) ++ goto done; ++ } ++ ++ /* ++ * Validate and skip to the desired offset. ++ */ ++ cur_buf = dir->sf_dir_list; ++ offset = 0; ++ ++ while (cur_buf != NULL && offset + cur_buf->sf_len <= uio->uio_offset) { ++ offset += cur_buf->sf_len; ++ cur_buf = cur_buf->sf_next; ++ } ++ ++ if (cur_buf == NULL && offset != uio->uio_offset) { ++ error = EINVAL; ++ goto done; ++ } ++ ++ if (cur_buf != NULL && offset != uio->uio_offset) { ++ off_t off = offset; ++ int step; ++ dirent = &cur_buf->sf_entries[0]; ++ ++ while (off < uio->uio_offset) { ++ if (dirent->sf_off == uio->uio_offset) ++ break; ++ step = sizeof(struct sffs_dirent) + dirent->sf_entry.d_reclen; ++ dirent = (struct sffs_dirent *) (((char *) dirent) + step); ++ off += step; ++ } ++ ++ if (off >= uio->uio_offset) { ++ error = EINVAL; ++ goto done; ++ } ++ } ++ ++ offset = uio->uio_offset - offset; ++ ++ /* ++ * Lookup each of the names, so that we have ino's, and copy to ++ * result buffer. ++ */ ++ while (cur_buf != NULL) { ++ if (offset >= cur_buf->sf_len) { ++ cur_buf = cur_buf->sf_next; ++ offset = 0; ++ continue; ++ } ++ ++ dirent = (struct sffs_dirent *) ++ (((char *) &cur_buf->sf_entries[0]) + offset); ++ if (dirent->sf_entry.d_reclen > uio->uio_resid) ++ break; ++ ++ if (strcmp(dirent->sf_entry.d_name, ".") == 0) { ++ node = dir; ++ } else if (strcmp(dirent->sf_entry.d_name, "..") == 0) { ++ node = dir->sf_parent; ++ if (node == NULL) ++ node = dir; ++ } else { ++#if 0 ++ node = vsfnode_lookup(dir, dirent->sf_entry.d_name, VNON, ++ 0, &dirent->sf_stat, vsfnode_cur_time_usec(), NULL); ++ if (node == NULL) ++ panic("sffs_readdir() lookup failed"); ++#endif ++ } ++ ++ if (node) ++ dirent->sf_entry.d_fileno = node->sf_ino; ++ else ++ dirent->sf_entry.d_fileno = 0xdeadbeef; ++ ++ error = uiomove(&dirent->sf_entry, dirent->sf_entry.d_reclen, uio); ++ if (error != 0) ++ break; ++ ++ uio->uio_offset = dirent->sf_off; ++ offset += sizeof(struct sffs_dirent) + dirent->sf_entry.d_reclen; ++ } ++ ++ if (error == 0 && cur_buf == NULL) ++ *eofp = 1; ++done: ++ if (error != 0) ++ uio->uio_offset = orig_off; ++ return (error); + } + ++static int ++vboxfs_readlink(struct vop_readlink_args *v) ++{ ++ struct vnode *vp = v->a_vp; ++ struct uio *uio = v->a_uio; ++ ++ int error; ++ struct vboxfs_node *np; ++ void *tmpbuf; ++ ++ MPASS(uio->uio_offset == 0); ++ MPASS(vp->v_type == VLNK); ++ ++ np = VP_TO_VBOXFS_NODE(vp); ++ ++ tmpbuf = contigmalloc(MAXPATHLEN, M_DEVBUF, M_WAITOK, 0, ~0, 1, 0); ++ if (tmpbuf == NULL) ++ return (ENOMEM); ++ ++ error = sfprov_readlink(np->vboxfsmp->sf_handle, np->sf_path, tmpbuf, ++ MAXPATHLEN); ++ if (error) ++ goto done; ++ ++ error = uiomove(tmpbuf, strlen(tmpbuf), uio); ++ ++done: ++ if (tmpbuf) ++ contigfree(tmpbuf, MAXPATHLEN, M_DEVBUF); ++ return (error); ++} ++ ++static int ++vboxfs_fsync(struct vop_fsync_args *ap) ++{ ++ struct vnode *vp; ++ struct vboxfs_node *np; ++ int ret; ++ ++ vp = ap->a_vp; ++ np = VP_TO_VBOXFS_NODE(vp); ++ if (np == NULL) ++ return (0); ++ ret = sfprov_fsync(np->sf_file); ++ return (ret); ++} ++ ++static int ++vboxfs_print(struct vop_print_args *ap) ++{ ++ struct vnode *vp = ap->a_vp; ++ struct vboxfs_node *np; ++ ++ np = VP_TO_VBOXFS_NODE(vp); ++ ++ if (np == NULL) { ++ printf("No vboxfs_node data\n"); ++ return (0); ++ } ++ ++ printf("\tpath = %s, parent = %p", np->sf_path, ++ np->sf_parent ? np->sf_parent : NULL); ++ printf("\n"); ++ return (0); ++} ++ ++static int ++vboxfs_pathconf(struct vop_pathconf_args *ap) ++{ ++ register_t *retval = ap->a_retval; ++ int error = 0; ++ ++ switch (ap->a_name) { ++ case _PC_LINK_MAX: ++ *retval = 65535; ++ break; ++ case _PC_NAME_MAX: ++ *retval = NAME_MAX; ++ break; ++ case _PC_PATH_MAX: ++ *retval = PATH_MAX; ++ break; ++ default: ++ error = EINVAL; ++ break; ++ } ++ return (error); ++} ++ ++/* ++ * File specific ioctls. ++ */ ++static int ++vboxfs_ioctl(struct vop_ioctl_args *ap) ++{ ++ return (ENOTTY); ++} ++ ++/* ++ * Lookup an entry in a directory and create a new vnode if found. ++ */ ++static int ++vboxfs_lookup1(struct vnode *dvp, struct vnode **vpp, ++ struct componentname *cnp) ++{ ++ char *nameptr = cnp->cn_nameptr; /* the name of the file or directory */ ++ struct vnode *tdp = NULL; ++ struct vboxfs_node *node = VP_TO_VBOXFS_NODE(dvp); ++ struct vboxfs_mnt *vboxfsmp = node->vboxfsmp; ++ u_long nameiop = cnp->cn_nameiop; ++ u_long flags = cnp->cn_flags; ++ sffs_stat_t stat; ++ //long namelen; ++ ino_t id = 0; ++ int ltype, type, error = 0; ++ int lkflags = cnp->cn_lkflags; ++ char *fullpath = NULL; ++ ++ *vpp = NULLVP; ++ error = ENOENT; ++ if (cnp->cn_flags & ISDOTDOT) { ++ error = vn_vget_ino_gen(dvp, vboxfs_vn_get_ino_alloc, ++ node->sf_parent, cnp->cn_lkflags, vpp); ++ error = ENOENT; ++ if (error != 0) ++ goto out; ++ ++ } else if (cnp->cn_namelen == 1 && cnp->cn_nameptr[0] == '.') { ++ VREF(dvp); ++ *vpp = dvp; ++ error = 0; ++ } else { ++ mode_t m; ++ type = VNON; ++ fullpath = sfnode_construct_path(node, cnp->cn_nameptr, cnp->cn_namelen); ++ error = sfprov_get_attr(node->vboxfsmp->sf_handle, ++ fullpath, &stat); ++ // stat_time = vsfnode_cur_time_usec(); ++ ++ m = stat.sf_mode; ++ if (error != 0) { ++ /* The entry was not found in the directory. ++ * This is OK if we are creating or renaming an ++ * entry and are working on the last component of ++ * the path name. */ ++ if ((cnp->cn_flags & ISLASTCN) && ++ (cnp->cn_nameiop == CREATE || \ ++ cnp->cn_nameiop == RENAME || ++ (cnp->cn_nameiop == DELETE && ++ cnp->cn_flags & DOWHITEOUT && ++ cnp->cn_flags & ISWHITEOUT))) { ++ error = VOP_ACCESS(dvp, VWRITE, cnp->cn_cred, ++#if __FreeBSD_version < 1400037 ++ cnp->cn_thread); ++#else ++ curthread); ++#endif ++ if (error != 0) ++ goto out; ++ ++#if __FreeBSD_version < 1400068 ++ /* Keep the component name in the buffer for ++ * future uses. */ ++ cnp->cn_flags |= SAVENAME; ++#endif ++ ++ error = EJUSTRETURN; ++ } else ++ error = ENOENT; ++ } ++ else { ++ if (S_ISDIR(m)) ++ type = VDIR; ++ else if (S_ISREG(m)) ++ type = VREG; ++ else if (S_ISLNK(m)) ++ type = VLNK; ++ error = vboxfs_alloc_file(vboxfsmp, fullpath, type, 0755, node, cnp->cn_lkflags, vpp); ++ } ++ } ++ ++ if ((cnp->cn_flags & MAKEENTRY) != 0) ++ cache_enter(dvp, *vpp, cnp); ++out: ++ if (fullpath) ++ free(fullpath, M_VBOXVFS); ++ ++ return (error); ++} ++ ++static int ++vboxfs_cachedlookup(struct vop_cachedlookup_args *ap) ++{ ++ return (vboxfs_lookup1(ap->a_dvp, ap->a_vpp, ap->a_cnp)); ++} ++ ++static int ++vboxfs_lookup(struct vop_lookup_args *ap) ++{ ++ struct vnode *dvp = ap->a_dvp; ++ struct componentname *cnp = ap->a_cnp; ++ struct vboxfs_node *np = VP_TO_VBOXFS_NODE(dvp); ++ struct timespec mtime; ++ int flags = cnp->cn_flags; ++ int error; ++ ++ if (dvp->v_type != VDIR) ++ return (ENOTDIR); ++ ++ if ((flags & ISLASTCN) && (dvp->v_mount->mnt_flag & MNT_RDONLY) && ++ (cnp->cn_nameiop == DELETE || cnp->cn_nameiop == RENAME)) ++ return (EROFS); ++ ++ error = vn_dir_check_exec(dvp, cnp); ++ if (error != 0) ++ return (error); ++ ++ /* Check if the directory is unmodified on the host. */ ++ mtime = np->sf_stat.sf_mtime; ++ error = vsfnode_update_stat_cache(np); ++ if (error == 0) { ++ if (mtime.tv_sec == np->sf_stat.sf_mtime.tv_sec && ++ mtime.tv_nsec == np->sf_stat.sf_mtime.tv_nsec) ++ return (vfs_cache_lookup(ap)); ++ } ++ ++ cache_purge(dvp); ++ ++ return (vboxfs_lookup1(ap->a_dvp, ap->a_vpp, ap->a_cnp)); ++} ++ ++static int ++vboxfs_inactive(struct vop_inactive_args *ap) ++{ ++ return (0); ++} ++ ++static int ++vboxfs_reclaim(struct vop_reclaim_args *ap) ++{ ++ struct vnode *vp; ++ struct vboxfs_node *node; ++ struct vboxfs_mnt *vboxfsmp; ++ ++ vp = ap->a_vp; ++ node = VP_TO_VBOXFS_NODE(vp); ++ vboxfsmp = node->vboxfsmp; ++ ++ vnode_destroy_vobject(vp); ++ vp->v_object = NULL; ++ cache_purge(vp); ++ ++ VBOXFS_NODE_LOCK(node); ++ VBOXFS_ASSERT_ELOCKED(node); ++ vboxfs_free_vp(vp); ++ ++ /* If the node referenced by this vnode was deleted by the user, ++ * we must free its associated data structures (now that the vnode ++ * is being reclaimed). */ ++ if ((node->sf_vpstate & VBOXFS_VNODE_ALLOCATING) == 0) { ++ node->sf_vpstate = VBOXFS_VNODE_DOOMED; ++ VBOXFS_NODE_UNLOCK(node); ++ vboxfs_free_node(vboxfsmp, node); ++ } else ++ VBOXFS_NODE_UNLOCK(node); ++ ++ MPASS(vp->v_data == NULL); ++ ++ return (0); ++} ++ ++static int ++vboxfs_vptofh(struct vop_vptofh_args *ap) ++{ ++ ++ return (EOPNOTSUPP); ++} diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk new file mode 100644 index 000000000000..bd5e626ecea2 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Additions_x11_vboxmouse_Makefile.kmk @@ -0,0 +1,29 @@ +--- src/VBox/Additions/x11/vboxmouse/Makefile.kmk.orig 2025-08-13 19:41:22 UTC ++++ src/VBox/Additions/x11/vboxmouse/Makefile.kmk +@@ -237,10 +237,22 @@ ifdef VBOX_USE_SYSTEM_XORG_HEADERS + + + ifdef VBOX_USE_SYSTEM_XORG_HEADERS +- # As vboxmouse_drv is not needed at all for X.Org Server 1.7 and later do not +- # build it in this case. +- DLLS := $(filter-out vboxmouse_drv_%,$(DLLS)) +- SYSMODS := $(filter-out vboxmouse_drv%,$(SYSMODS)) ++ ifeq ($(KBUILD_TARGET),freebsd) ++ DLLS += vboxmouse_drv_system ++ vboxmouse_drv_system_TEMPLATE = VBOXGUESTR3XORGMOD ++ vboxmouse_drv_system_DEFS := $(vboxmouse_drv_70_DEFS) NO_ANSIC ++ vboxmouse_drv_system_INCS := \ ++ /usr/local/include/pixman-1 \ ++ /usr/local/include/xorg \ ++ $(PATH_SUB_CURRENT) ++ vboxmouse_drv_system_SOURCES = \ ++ vboxmouse.c ++ else ++ # As vboxmouse_drv is not needed at all for X.Org Server 1.7 and later do not ++ # build it in this case. ++ DLLS := $(filter-out vboxmouse_drv_%,$(DLLS)) ++ SYSMODS := $(filter-out vboxmouse_drv%,$(SYSMODS)) ++ endif + endif + + diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA.cpp new file mode 100644 index 000000000000..de5a81911c03 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA.cpp @@ -0,0 +1,20 @@ +--- src/VBox/Devices/Graphics/DevVGA-SVGA.cpp.orig 2025-08-13 19:47:43 UTC ++++ src/VBox/Devices/Graphics/DevVGA-SVGA.cpp +@@ -178,7 +178,7 @@ + # ifdef RT_OS_DARWIN + # include "DevVGA-SVGA3d-cocoa.h" + # endif +-# ifdef RT_OS_LINUX ++# if defined(RT_OS_FREEBSD) || defined(RT_OS_LINUX) + # ifdef IN_RING3 + # include "DevVGA-SVGA3d-glLdr.h" + # endif +@@ -7949,7 +7949,7 @@ static void vmsvgaR3PowerOnDevice(PPDMDEVINS pDevIns, + } + # endif + +-# if defined(VBOX_WITH_VMSVGA3D) && defined(RT_OS_LINUX) ++# if defined(VBOX_WITH_VMSVGA3D) && (defined(RT_OS_FREEBSD) || defined(RT_OS_LINUX)) + if (pThis->svga.f3DEnabled) + { + /* The FIFO thread may use X API for accelerated screen output. */ diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA3d-dx-dx11.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA3d-dx-dx11.cpp new file mode 100644 index 000000000000..4d74ec64cec0 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA3d-dx-dx11.cpp @@ -0,0 +1,11 @@ +--- src/VBox/Devices/Graphics/DevVGA-SVGA3d-dx-dx11.cpp.orig 2025-08-13 19:47:43 UTC ++++ src/VBox/Devices/Graphics/DevVGA-SVGA3d-dx-dx11.cpp +@@ -3021,7 +3021,7 @@ static DECLCALLBACK(int) vmsvga3dBackInit(PPDMDEVINS p + RT_NOREF(pDevIns, pThis); + + int rc; +-#ifdef RT_OS_LINUX /** @todo Remove, this is currently needed for loading the X11 library in order to call XInitThreads(). */ ++#if defined(RT_OS_FREEBSD) || defined(RT_OS_LINUX) /** @todo Remove, this is currently needed for loading the X11 library in order to call XInitThreads(). */ + rc = glLdrInit(pDevIns); + if (RT_FAILURE(rc)) + { diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA3d-glLdr.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA3d-glLdr.cpp new file mode 100644 index 000000000000..e9ae5d0b71f9 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA3d-glLdr.cpp @@ -0,0 +1,29 @@ +--- src/VBox/Devices/Graphics/DevVGA-SVGA3d-glLdr.cpp.orig 2025-04-14 17:55:41 UTC ++++ src/VBox/Devices/Graphics/DevVGA-SVGA3d-glLdr.cpp +@@ -196,7 +196,7 @@ int glLdrInit(PPDMDEVINS pDevIns) + pfn_wglDeleteContext = 0; + pfn_wglMakeCurrent = 0; + pfn_wglShareLists = 0; +-#elif defined(RT_OS_LINUX) ++#elif defined(RT_OS_FREEBSD) || defined(RT_OS_LINUX) + pfn_XConfigureWindow = 0; + pfn_XCloseDisplay = 0; + pfn_XCreateColormap = 0; +@@ -306,7 +306,7 @@ int glLdrInit(PPDMDEVINS pDevIns) + GLGETPROC_(wglDeleteContext, ""); + GLGETPROC_(wglMakeCurrent, ""); + GLGETPROC_(wglShareLists, ""); +-#elif defined(RT_OS_LINUX) ++#elif defined(RT_OS_FREEBSD) || defined(RT_OS_LINUX) + X11GETPROC_(XConfigureWindow); + X11GETPROC_(XCloseDisplay); + X11GETPROC_(XCreateColormap); +@@ -407,7 +407,7 @@ int glLdrInit(PPDMDEVINS pDevIns) + GLGETPROC_(glVertexPointer, ""); + GLGETPROC_(glViewport, ""); + +-#ifdef RT_OS_LINUX ++#if defined(RT_OS_FREEBSD) || defined(RT_OS_LINUX) + XInitThreads(); + #endif + return VINF_SUCCESS; diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA3d-glLdr.h b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA3d-glLdr.h new file mode 100644 index 000000000000..52d86f546033 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA3d-glLdr.h @@ -0,0 +1,11 @@ +--- src/VBox/Devices/Graphics/DevVGA-SVGA3d-glLdr.h.orig 2025-04-14 17:55:41 UTC ++++ src/VBox/Devices/Graphics/DevVGA-SVGA3d-glLdr.h +@@ -346,7 +346,7 @@ GLPFN BOOL (WINAPI *pfn_wglShareLists)(HGLRC, HGLRC); + GLPFN BOOL (WINAPI *pfn_wglShareLists)(HGLRC, HGLRC); + #define wglShareLists pfn_wglShareLists + +-#elif defined(RT_OS_LINUX) ++#elif defined(RT_OS_FREEBSD) || defined(RT_OS_LINUX) + /* + * GLX + */ diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA3d-ogl.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA3d-ogl.cpp new file mode 100644 index 000000000000..74106db011ff --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Graphics_DevVGA-SVGA3d-ogl.cpp @@ -0,0 +1,56 @@ +--- src/VBox/Devices/Graphics/DevVGA-SVGA3d-ogl.cpp.orig 2025-04-14 17:55:42 UTC ++++ src/VBox/Devices/Graphics/DevVGA-SVGA3d-ogl.cpp +@@ -1198,7 +1198,7 @@ static DECLCALLBACK(int) vmsvga3dBackTerminate(PVGASTA + RTSemEventDestroy(pState->WndRequestSem); + #elif defined(RT_OS_DARWIN) + +-#elif defined(RT_OS_LINUX) ++#elif defined(RT_OS_FREEBSD) || defined(RT_OS_LINUX) + /* signal to the thread that it is supposed to exit */ + pState->bTerminate = true; + /* wait for it to terminate */ +@@ -3216,7 +3216,7 @@ static DECLCALLBACK(int) vmsvga3dBackGenerateMipmaps(P + } + + +-#ifdef RT_OS_LINUX ++#if defined(RT_OS_FREEBSD) || defined(RT_OS_LINUX) + /** + * X11 event handling thread. + * +@@ -3246,7 +3246,7 @@ static DECLCALLBACK(int) vmsvga3dXEventThread(RTTHREAD + } + return VINF_SUCCESS; + } +-#endif // RT_OS_LINUX ++#endif // RT_OS_FREEBSD || RT_OS_LINUX + + + /** +@@ -3484,7 +3484,7 @@ int vmsvga3dContextDefineOgl(PVGASTATECC pThisCC, uint + return VINF_SUCCESS; + } + +-#if defined(RT_OS_LINUX) ++#if defined(RT_OS_FREEBSD) || defined(RT_OS_LINUX) + /* + * HW accelerated graphics output. + */ +@@ -3976,7 +3976,7 @@ static DECLCALLBACK(int) vmsvga3dBackSurfaceBlitToScre + return VINF_SUCCESS; + } + +-#else /* !RT_OS_LINUX */ ++#else /* !RT_OS_FREEBSD && !RT_OS_LINUX */ + + static DECLCALLBACK(int) vmsvga3dBackDefineScreen(PVGASTATE pThis, PVGASTATECC pThisCC, VMSVGASCREENOBJECT *pScreen) + { +@@ -4096,7 +4096,7 @@ static int vmsvga3dContextDestroyOgl(PVGASTATECC pThis + AssertRC(rc); + #elif defined(RT_OS_DARWIN) + vmsvga3dCocoaDestroyViewAndContext(pContext->cocoaView, pContext->cocoaContext); +-#elif defined(RT_OS_LINUX) ++#elif defined(RT_OS_FREEBSD) || defined(RT_OS_LINUX) + glXMakeCurrent(pState->display, None, NULL); + glXDestroyContext(pState->display, pContext->glxContext); + XDestroyWindow(pState->display, pContext->window); diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Makefile.kmk new file mode 100644 index 000000000000..b66a828f5eb2 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Makefile.kmk @@ -0,0 +1,44 @@ +--- src/VBox/Devices/Makefile.kmk.orig 2025-08-13 19:48:02 UTC ++++ src/VBox/Devices/Makefile.kmk +@@ -135,6 +135,7 @@ if !defined(VBOX_ONLY_EXTPACKS) + VBoxDDU_LDFLAGS.darwin += -framework IOKit + endif + ++ VBoxDDU_LDFLAGS.freebsd = $(VBOX_GCC_NO_UNDEFINED) + VBoxDDU_LDFLAGS.linux = $(VBOX_GCC_NO_UNDEFINED) + $(call VBOX_SET_VER_INFO_DLL,VBoxDDU,VirtualBox VMM Devices and Drivers Utilities) + +@@ -290,6 +291,7 @@ if !defined(VBOX_ONLY_EXTPACKS) && "$(intersects $(KBU + -framework SystemConfiguration \ + -framework AVFoundation \ + -framework Foundation ++ VBoxDD_LDFLAGS.freebsd = $(VBOX_GCC_NO_UNDEFINED) + VBoxDD_LDFLAGS.linux = $(VBOX_GCC_NO_UNDEFINED) + + # --- Tracing bits. --- +@@ -334,7 +336,7 @@ if !defined(VBOX_ONLY_EXTPACKS) && "$(intersects $(KBU + Graphics/DevVGA-SVGA-cmd.cpp + endif + ifdef VBOX_WITH_VMSVGA3D +- if1of ($(KBUILD_TARGET), linux win) ++ if1of ($(KBUILD_TARGET), linux win freebsd) + # Dynamically load 3D library (opengl32, libGL). + # This is a temporary solution. In future the 3D backend will be in a separate library. + VBOX_WITH_VMSVGA3D_DYNAMIC_LOAD = 1 +@@ -410,6 +412,7 @@ if !defined(VBOX_ONLY_EXTPACKS) && "$(intersects $(KBU + Graphics/DevVGA-SVGA3d-glLdr.cpp + else + VBoxDD_LIBS.linux += X11 GL ++ VBoxDD_LIBS.freebsd += X11 GL + VBoxDD_LIBS.win += $(PATH_SDK_$(VBOX_WINPSDK)_LIB)/Opengl32.lib + endif + VBoxDD_LDFLAGS.darwin += -framework OpenGL +@@ -1523,6 +1526,8 @@ if defined(VBOX_WITH_VMSVGA3D) && !defined(VBOX_ONLY_E + VBoxSVGA3D_INCS = $(VBOX_GRAPHICS_INCS) + VBoxSVGA3D_INCS.win := \ + Graphics/shaderlib/libWineStub/include ++ VBoxSVGA3D_INCS.freebsd := \ ++ Graphics/shaderlib/wine/include + VBoxSVGA3D_INCS.linux := \ + Graphics/shaderlib/wine/include + VBoxSVGA3D_INCS.darwin := \ diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Network_DrvNAT.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Network_DrvNAT.cpp new file mode 100644 index 000000000000..088c8e1fe3c1 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_Network_DrvNAT.cpp @@ -0,0 +1,10 @@ +--- src/VBox/Devices/Network/DrvNAT.cpp.orig 2025-08-13 19:48:03 UTC ++++ src/VBox/Devices/Network/DrvNAT.cpp +@@ -57,6 +57,7 @@ + + #ifdef RT_OS_FREEBSD + # include <netinet/in.h> ++# include <sys/socket.h> + #endif + + #include <iprt/asm.h> diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_PC_ipxe_Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_PC_ipxe_Makefile.kmk new file mode 100644 index 000000000000..fa3a87062c6c --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_PC_ipxe_Makefile.kmk @@ -0,0 +1,29 @@ +--- src/VBox/Devices/PC/ipxe/Makefile.kmk.orig 2025-08-13 19:48:06 UTC ++++ src/VBox/Devices/PC/ipxe/Makefile.kmk +@@ -45,7 +45,7 @@ iPxeBiosBin_CLEAN = \ + iPxeBiosBin_CLEAN = \ + $(iPxeBiosBin_0_OUTDIR)/iPxeBiosBin.c \ + +-if1of ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH), darwin.amd64 darwin.arm64 linux.arm64 os2.x86 solaris.amd64 win.amd64 win.arm64) ++if1of ($(KBUILD_TARGET).$(KBUILD_TARGET_ARCH), darwin.amd64 darwin.arm64 linux.arm64 os2.x86 solaris.amd64 win.amd64 win.arm64 linux.amd64 freebsd.amd64) + $$(iPxeBiosBin_0_OUTDIR)/iPxeBiosBin.c: $(PATH_SUB_CURRENT)/iPxeBiosBin.rom $(VBOX_BIN2C) | $$(dir $$@) + $(call MSG_TOOL,bin2c,iPxeBiosBin,$<,$@) + $(QUIET)$(VBOX_BIN2C) -min 32 -max 56 -mask 0x1ff -export NetBiosBinary $< $@ +@@ -131,7 +131,7 @@ endif + -falign-loops=1 \ + -Os \ + -falign-functions=1 \ +- -mpreferred-stack-boundary=2 \ ++ -mstack-alignment=2 \ + -mregparm=3 \ + -mrtd \ + -freg-struct-return \ +@@ -154,7 +154,7 @@ endif + -falign-jumps=1 \ + -falign-loops=1 \ + -falign-functions=1 \ +- -mpreferred-stack-boundary=2 \ ++ -mstack-alignment=2 \ + -mregparm=3 \ + -mrtd \ + -freg-struct-return \ diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_USB_freebsd_USBProxyDevice-freebsd.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_USB_freebsd_USBProxyDevice-freebsd.cpp new file mode 100644 index 000000000000..8258164501b2 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Devices_USB_freebsd_USBProxyDevice-freebsd.cpp @@ -0,0 +1,11 @@ +--- src/VBox/Devices/USB/freebsd/USBProxyDevice-freebsd.cpp.orig 2025-08-13 19:49:01 UTC ++++ src/VBox/Devices/USB/freebsd/USBProxyDevice-freebsd.cpp +@@ -67,7 +67,7 @@ + #include "../USBProxyDevice.h" + + /** Maximum endpoints supported. */ +-#define USBFBSD_MAXENDPOINTS 127 ++#define USBFBSD_MAXENDPOINTS 126 + #define USBFBSD_MAXFRAMES 56 + + /** This really needs to be defined in vusb.h! */ diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_ExtPacks_VNC_VBoxVNC.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_ExtPacks_VNC_VBoxVNC.cpp new file mode 100644 index 000000000000..d4bae4a6c016 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_ExtPacks_VNC_VBoxVNC.cpp @@ -0,0 +1,58 @@ +--- src/VBox/ExtPacks/VNC/VBoxVNC.cpp.orig 2025-08-13 19:50:02 UTC ++++ src/VBox/ExtPacks/VNC/VBoxVNC.cpp +@@ -55,7 +55,7 @@ + + #ifdef LIBVNCSERVER_IPv6 + // enable manually! +-// #define VBOX_USE_IPV6 ++#define VBOX_USE_IPV6 + #endif + + +@@ -431,7 +431,7 @@ DECLCALLBACK(int) VNCServerImpl::VRDEEnableConnections + + // get address + char *pszTCPAddress = (char *)RTMemTmpAllocZ(VNC_ADDRESS_OPTION_MAX); +- rc = instance->mCallbacks->VRDECallbackProperty(instance->mCallback, ++ int rc = instance->mCallbacks->VRDECallbackProperty(instance->mCallback, + VRDE_QP_NETWORK_ADDRESS, + pszTCPAddress, + VNC_ADDRESS_OPTION_MAX, +@@ -592,19 +592,35 @@ DECLCALLBACK(int) VNCServerImpl::VRDEEnableConnections + pszServerAddress6 = szIPv6ListenAll; + } + +- if (pszVNCPort4 && uServerPort4 == 0) ++ if (strlen(pszVNCPort4) > 0 && uServerPort4 == 0) + { + rc = RTStrToUInt32Ex(pszVNCPort4, NULL, 10, &uServerPort4); + if (!RT_SUCCESS(rc) || uServerPort4 > 65535) + uServerPort4 = 0; + } + +- if (pszVNCPort6 && uServerPort6 == 0) ++ if (strlen(pszVNCPort6) > 0 && uServerPort6 == 0) + { + rc = RTStrToUInt32Ex(pszVNCPort6, NULL, 10, &uServerPort6); + if (!RT_SUCCESS(rc) || uServerPort6 > 65535) + uServerPort6 = 0; + } ++ ++/* Backward compatibility with set port in "TCP/Ports" only { */ ++ if (uServerPort4 == 0 && strlen(pszTCPPort) > 0) ++ { ++ rc = RTStrToUInt32Ex(pszTCPPort, NULL, 10, &uServerPort4); ++ if (!RT_SUCCESS(rc) || uServerPort4 > 65535) ++ uServerPort4 = 0; ++ } ++ ++ if (uServerPort6 == 0 && strlen(pszTCPPort) > 0) ++ { ++ rc = RTStrToUInt32Ex(pszTCPPort, NULL, 10, &uServerPort6); ++ if (!RT_SUCCESS(rc) || uServerPort6 > 65535) ++ uServerPort6 = 0; ++ } ++/* } */ + + if (uServerPort4 == 0 || uServerPort6 == 0) + vncServer->autoPort = 1; diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VBoxHeadless_VBoxHeadless.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VBoxHeadless_VBoxHeadless.cpp new file mode 100644 index 000000000000..ed1f32e0ce97 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VBoxHeadless_VBoxHeadless.cpp @@ -0,0 +1,11 @@ +--- src/VBox/Frontends/VBoxHeadless/VBoxHeadless.cpp.orig 2025-08-13 19:50:04 UTC ++++ src/VBox/Frontends/VBoxHeadless/VBoxHeadless.cpp +@@ -63,7 +63,7 @@ using namespace com; + # include <iprt/process.h> + #endif + +-#if defined(RT_OS_LINUX) || defined(RT_OS_DARWIN) || defined(RT_OS_SOLARIS) ++#if defined(RT_OS_LINUX) || defined(RT_OS_DARWIN) || defined(RT_OS_SOLARIS) || defined(RT_OS_FREEBSD) + # include <cerrno> + #endif + diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VBoxManage_VBoxManageModifyVM.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VBoxManage_VBoxManageModifyVM.cpp new file mode 100644 index 000000000000..838da1e0f15d --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VBoxManage_VBoxManageModifyVM.cpp @@ -0,0 +1,29 @@ +--- src/VBox/Frontends/VBoxManage/VBoxManageModifyVM.cpp.orig 2025-08-13 19:50:05 UTC ++++ src/VBox/Frontends/VBoxManage/VBoxManageModifyVM.cpp +@@ -151,7 +151,7 @@ enum + MODIFYVM_UARTMODE, + MODIFYVM_UARTTYPE, + MODIFYVM_UART, +-#if defined(RT_OS_LINUX) || defined(RT_OS_WINDOWS) ++#if defined(RT_OS_FREEBSD) || defined(RT_OS_LINUX) || defined(RT_OS_WINDOWS) + MODIFYVM_LPTMODE, + MODIFYVM_LPT, + #endif +@@ -393,7 +393,7 @@ static const RTGETOPTDEF g_aModifyVMOptions[] = + OPT2("--uart-mode", "--uartmode", MODIFYVM_UARTMODE, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX), + OPT2("--uart-type", "--uarttype", MODIFYVM_UARTTYPE, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX), + OPT1("--uart", MODIFYVM_UART, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX), +-#if defined(RT_OS_LINUX) || defined(RT_OS_WINDOWS) ++#if defined(RT_OS_LINUX) || defined(RT_OS_WINDOWS) || defined(RT_OS_FREEBSD) + OPT2("--lpt-mode", "--lptmode", MODIFYVM_LPTMODE, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX), + OPT1("--lpt", MODIFYVM_LPT, RTGETOPT_REQ_STRING | RTGETOPT_FLAG_INDEX), + #endif +@@ -2680,7 +2680,7 @@ RTEXITCODE handleModifyVM(HandlerArg *a) + break; + } + +-#if defined(RT_OS_LINUX) || defined(RT_OS_WINDOWS) ++#if defined(RT_OS_FREEBSD) || defined(RT_OS_LINUX) || defined(RT_OS_WINDOWS) + case MODIFYVM_LPTMODE: + { + ComPtr<IParallelPort> lpt; diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxManager.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxManager.cpp new file mode 100644 index 000000000000..7f18eb80356b --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxManager.cpp @@ -0,0 +1,46 @@ +--- src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxManager.cpp.orig 2025-08-13 19:50:55 UTC ++++ src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxManager.cpp +@@ -2402,6 +2402,9 @@ void UIVirtualBoxManager::prepare() + qApp->installEventFilter(this); + #endif + ++ /* Prepare notification-center invisibvle way: */ ++ prepareNotificationCenter(); ++ + /* Cache media data early if necessary: */ + if (uiCommon().agressiveCaching()) + gpMediumEnumerator->enumerateMedia(); +@@ -2446,6 +2449,12 @@ void UIVirtualBoxManager::prepare() + #endif /* VBOX_GUI_WITH_NETWORK_MANAGER && VBOX_WITH_UPDATE_REQUEST */ + } + ++void UIVirtualBoxManager::prepareNotificationCenter() ++{ ++ UINotificationCenter::create(); ++ ++} ++ + void UIVirtualBoxManager::prepareCloudMachineManager() + { + UICloudMachineManager::create(); +@@ -2805,6 +2814,12 @@ void UIVirtualBoxManager::cleanupCloudMachineManager() + UICloudMachineManager::destroy(); + } + ++void UIVirtualBoxManager::cleanupNotificationCenter() ++{ ++ UINotificationCenter::destroy(); ++ ++} ++ + void UIVirtualBoxManager::cleanup() + { + /* Ask sub-dialogs to commit data: */ +@@ -2814,6 +2829,7 @@ void UIVirtualBoxManager::cleanup() + cleanupWidgets(); + cleanupMenuBar(); + cleanupCloudMachineManager(); ++ cleanupNotificationCenter(); + } + + UIVirtualMachineItem *UIVirtualBoxManager::currentItem() const diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxManager.h b/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxManager.h new file mode 100644 index 000000000000..80daea0c318c --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxManager.h @@ -0,0 +1,20 @@ +--- src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxManager.h.orig 2025-08-13 19:50:55 UTC ++++ src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxManager.h +@@ -341,6 +341,8 @@ private slots: (private) + * @{ */ + /** Prepares window. */ + void prepare(); ++ /** Prepares notification-center. */ ++ void prepareNotificationCenter(); + /** Prepares cloud machine manager. */ + void prepareCloudMachineManager(); + /** Prepares icon. */ +@@ -366,6 +368,8 @@ private slots: (private) + void cleanupMenuBar(); + /** Cleanups cloud machine manager. */ + void cleanupCloudMachineManager(); ++ /** Cleanups notification-center. */ ++ void cleanupNotificationCenter(); + /** Cleanups window. */ + void cleanup(); + /** @} */ diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxWidget.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxWidget.cpp new file mode 100644 index 000000000000..52f736783c17 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Frontends_VirtualBox_src_manager_UIVirtualBoxWidget.cpp @@ -0,0 +1,24 @@ +--- src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxWidget.cpp.orig 2025-08-13 19:50:55 UTC ++++ src/VBox/Frontends/VirtualBox/src/manager/UIVirtualBoxWidget.cpp +@@ -399,8 +399,8 @@ void UIVirtualBoxWidget::prepareWidgets() + } + } + +- /* Create notification-center: */ +- UINotificationCenter::create(this); ++ /* Reparent notification-center: */ ++ gpNotificationCenter->setParent(this); + + /* Update toolbar finally: */ + updateToolbar(); +@@ -746,8 +746,8 @@ void UIVirtualBoxWidget::cleanup() + + void UIVirtualBoxWidget::cleanup() + { +- /* Destroy notification-center: */ +- UINotificationCenter::destroy(); ++ /* Reparent notification-center: */ ++ gpNotificationCenter->setParent(0); + } + + UIGlobalToolsWidget *UIVirtualBoxWidget::globalToolsWidget() const diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_SUPDrv.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_SUPDrv.cpp new file mode 100644 index 000000000000..9c25da533123 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_SUPDrv.cpp @@ -0,0 +1,13 @@ +--- src/VBox/HostDrivers/Support/SUPDrv.cpp.orig 2025-08-13 19:51:08 UTC ++++ src/VBox/HostDrivers/Support/SUPDrv.cpp +@@ -322,8 +322,8 @@ static SUPFUNC g_aFunctions[] = + SUPEXP_STK_BACK( 2, SUPR0PageFree), + SUPEXP_STK_BACK( 6, SUPR0PageMapKernel), + SUPEXP_STK_BACK( 6, SUPR0PageProtect), +-#if defined(RT_OS_LINUX) || defined(RT_OS_SOLARIS) || defined(RT_OS_FREEBSD) +- SUPEXP_STK_OKAY( 2, SUPR0HCPhysToVirt), /* only-linux, only-solaris, only-freebsd */ ++#if defined(RT_OS_LINUX) || defined(RT_OS_SOLARIS) ++ SUPEXP_STK_OKAY( 2, SUPR0HCPhysToVirt), /* only-linux, only-solaris */ + #endif + SUPEXP_STK_BACK( 2, SUPR0PrintfV), + SUPEXP_STK_BACK( 1, SUPR0GetSessionGVM), diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_SUPDrvInternal.h b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_SUPDrvInternal.h new file mode 100644 index 000000000000..df4d3cd76817 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_SUPDrvInternal.h @@ -0,0 +1,11 @@ +--- src/VBox/HostDrivers/Support/SUPDrvInternal.h.orig 2025-08-13 19:51:08 UTC ++++ src/VBox/HostDrivers/Support/SUPDrvInternal.h +@@ -368,7 +368,7 @@ + # define SUPDRV_WITHOUT_MSR_PROBER + #endif + +-#if 1 ++#if 0 + /** @def SUPDRV_USE_TSC_DELTA_THREAD + * Use a dedicated kernel thread to service TSC-delta measurement requests. + * @todo Test on servers with many CPUs and sockets. */ diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_freebsd_Makefile b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_freebsd_Makefile new file mode 100644 index 000000000000..f0d605f2addd --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_freebsd_Makefile @@ -0,0 +1,30 @@ +--- src/VBox/HostDrivers/Support/freebsd/Makefile.orig 2025-08-13 19:51:09 UTC ++++ src/VBox/HostDrivers/Support/freebsd/Makefile +@@ -93,6 +93,7 @@ SRCS += \ + assert.c \ + handletable.c \ + handletablectx.c \ ++ handletablesimple.c \ + once.c \ + term.c \ + thread.c +@@ -117,7 +118,8 @@ SRCS += \ + strprintf2-ellipsis.c \ + strtonum.c \ + memchr.c \ +- stringalloc.c ++ stringalloc.c \ ++ utf-8.c + + .PATH: ${.CURDIR}/common/rand + SRCS += \ +@@ -163,7 +165,8 @@ SRCS += \ + rtStrFormatKernelAddress-generic.c \ + errvars-generic.c \ + mppresent-generic.c \ +- timer-generic.c ++ timer-generic.c \ ++ system-page-size-generic.c + + .PATH: ${.CURDIR}/r0drv + SRCS += \ diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_freebsd_SUPDrv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_freebsd_SUPDrv-freebsd.c new file mode 100644 index 000000000000..7faa07739f14 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_freebsd_SUPDrv-freebsd.c @@ -0,0 +1,234 @@ +--- src/VBox/HostDrivers/Support/freebsd/SUPDrv-freebsd.c.orig 2025-01-21 14:06:14 UTC ++++ src/VBox/HostDrivers/Support/freebsd/SUPDrv-freebsd.c +@@ -44,9 +44,13 @@ + #include <sys/fcntl.h> + #include <sys/conf.h> + #include <sys/uio.h> ++#include <vm/vm.h> + #include <vm/pmap.h> /* for pmap_map() */ ++#include <sys/mutex.h> ++#include <sys/smp.h> /* mp_maxcpus */ + + #include "../SUPDrvInternal.h" ++#include "freebsd/the-freebsd-kernel.h" + #include <VBox/version.h> + #include <iprt/initterm.h> + #include <iprt/string.h> +@@ -58,7 +62,15 @@ + #include <iprt/alloc.h> + #include <iprt/err.h> + #include <iprt/asm.h> ++#include <iprt/x86.h> + ++ ++#ifdef VBOX_WITH_EFLAGS_AC_SET_IN_VBOXDRV ++# include <machine/cpufunc.h> ++# include <machine/md_var.h> ++# include <machine/specialreg.h> ++#endif ++ + #ifdef VBOX_WITH_HARDENING + # define VBOXDRV_PERM 0600 + #else +@@ -77,7 +89,9 @@ static d_ioctl_t VBoxDrvFreeBSDIOCtl; + static d_open_t VBoxDrvFreeBSDOpenSys; + static void vboxdrvFreeBSDDtr(void *pvData); + static d_ioctl_t VBoxDrvFreeBSDIOCtl; ++static d_ioctl_t VBoxDrvFreeBSDIOCtlSMAP; + static int VBoxDrvFreeBSDIOCtlSlow(PSUPDRVSESSION pSession, u_long ulCmd, caddr_t pvData, struct thread *pTd); ++static bool VBoxDrvFreeBSDCpuHasSMAP(void); + + + /********************************************************************************************************************************* +@@ -94,7 +108,8 @@ static moduledata_t g_VBoxDrvFreeBSDModule = + }; + + /** Declare the module as a pseudo device. */ +-DECLARE_MODULE(vboxdrv, g_VBoxDrvFreeBSDModule, SI_SUB_PSEUDO, SI_ORDER_ANY); ++#define KERNEL_RELBRANCHEND (roundup(__FreeBSD_version, 500) - 1) ++DECLARE_MODULE_WITH_MAXVER(vboxdrv, g_VBoxDrvFreeBSDModule, SI_SUB_PSEUDO, SI_ORDER_ANY, KERNEL_RELBRANCHEND); + MODULE_VERSION(vboxdrv, 1); + + /** +@@ -141,6 +156,13 @@ static int VBoxDrvFreeBSDModuleEvent(struct module *pM + static int VBoxDrvFreeBSDModuleEvent(struct module *pMod, int enmEventType, void *pvArg) + { + int rc; ++ ++ /* Refuse to load if mp_maxcpus is wrong */ ++ if (MAXCPU != mp_maxcpus) { ++ printf("vboxdrv: MAXCPU != mp_maxcpus (%d != %d)\n", MAXCPU, mp_maxcpus); ++ return EINVAL; ++ } ++ + switch (enmEventType) + { + case MOD_LOAD: +@@ -183,6 +205,13 @@ static int VBoxDrvFreeBSDLoad(void) + rc = supdrvInitDevExt(&g_VBoxDrvFreeBSDDevExt, sizeof(SUPDRVSESSION)); + if (RT_SUCCESS(rc)) + { ++ if (VBoxDrvFreeBSDCpuHasSMAP()) ++ { ++ LogRel(("disabling SMAP for VBoxDrvFreeBSDIOCtl\n")); ++ g_VBoxDrvFreeBSDChrDevSwSys.d_ioctl = VBoxDrvFreeBSDIOCtlSMAP; ++ g_VBoxDrvFreeBSDChrDevSwUsr.d_ioctl = VBoxDrvFreeBSDIOCtlSMAP; ++ } ++ + /* + * Configure character devices. Add symbolic links for compatibility. + */ +@@ -322,7 +351,45 @@ static int VBoxDrvFreeBSDIOCtl(struct cdev *pDev, u_lo + return VBoxDrvFreeBSDIOCtlSlow(pSession, ulCmd, pvData, pTd); + } + ++/** ++ * Alternative Device I/O Control entry point on hosts with SMAP support. ++ * ++ * @returns depends... ++ * @param pDev The device. ++ * @param ulCmd The command. ++ * @param pvData Pointer to the data. ++ * @param fFile The file descriptor flags. ++ * @param pTd The calling thread. ++ */ ++static int VBoxDrvFreeBSDIOCtlSMAP(struct cdev *pDev, u_long ulCmd, caddr_t pvData, int fFile, struct thread *pTd) ++{ ++ /* ++ * Allow VBox R0 code to touch R3 memory. Setting the AC bit disables the ++ * SMAP check. ++ */ ++ RTCCUINTREG fSavedEfl = ASMAddFlags(X86_EFL_AC); + ++ int rc = VBoxDrvFreeBSDIOCtl(pDev, ulCmd, pvData, fFile, pTd); ++ ++#ifdef VBOX_WITH_EFLAGS_AC_SET_IN_VBOXDRV ++ /* ++ * Before we restore AC and the rest of EFLAGS, check if the IOCtl handler code ++ * accidentially modified it or some other important flag. ++ */ ++ if (RT_UNLIKELY( (ASMGetFlags() & (X86_EFL_AC | X86_EFL_IF | X86_EFL_DF | X86_EFL_IOPL)) ++ != ((fSavedEfl & (X86_EFL_AC | X86_EFL_IF | X86_EFL_DF | X86_EFL_IOPL)) | X86_EFL_AC) )) ++ { ++ char szTmp[48]; ++ RTStrPrintf(szTmp, sizeof(szTmp), "ulCmd=%#x: %#x->%#x!", ulCmd, (uint32_t)fSavedEfl, (uint32_t)ASMGetFlags()); ++ supdrvBadContext(&g_VBoxDrvFreeBSDDevExt, "SUPDrv-freebsd.c", __LINE__, szTmp); ++ } ++#endif ++ ++ ASMSetFlags(fSavedEfl); ++ return rc; ++} ++ ++ + /** + * Deal with the 'slow' I/O control requests. + * +@@ -372,11 +439,10 @@ static int VBoxDrvFreeBSDIOCtlSlow(PSUPDRVSESSION pSes + */ + SUPREQHDR Hdr; + pvUser = *(void **)pvData; +- int rc = copyin(pvUser, &Hdr, sizeof(Hdr)); +- if (RT_UNLIKELY(rc)) ++ if (RT_FAILURE(RTR0MemUserCopyFrom(&Hdr, (uintptr_t)pvUser, sizeof(Hdr)))) + { +- OSDBGPRINT(("VBoxDrvFreeBSDIOCtlSlow: copyin(%p,Hdr,) -> %#x; ulCmd=%#lx\n", pvUser, rc, ulCmd)); +- return rc; ++ OSDBGPRINT(("VBoxDrvFreeBSDIOCtlSlow: copyin(%p,Hdr,); ulCmd=%#lx\n", pvUser, ulCmd)); ++ return EFAULT; + } + if (RT_UNLIKELY((Hdr.fFlags & SUPREQHDR_FLAGS_MAGIC_MASK) != SUPREQHDR_FLAGS_MAGIC)) + { +@@ -401,13 +467,12 @@ static int VBoxDrvFreeBSDIOCtlSlow(PSUPDRVSESSION pSes + OSDBGPRINT(("VBoxDrvFreeBSDIOCtlSlow: failed to allocate buffer of %d bytes; ulCmd=%#lx\n", cbReq, ulCmd)); + return ENOMEM; + } +- rc = copyin(pvUser, pHdr, Hdr.cbIn); +- if (RT_UNLIKELY(rc)) ++ if (RT_FAILURE(RTR0MemUserCopyFrom(pHdr, (uintptr_t)pvUser, Hdr.cbIn))) + { +- OSDBGPRINT(("VBoxDrvFreeBSDIOCtlSlow: copyin(%p,%p,%#x) -> %#x; ulCmd=%#lx\n", +- pvUser, pHdr, Hdr.cbIn, rc, ulCmd)); ++ OSDBGPRINT(("VBoxDrvFreeBSDIOCtlSlow: copyin(%p,%p,%#x); ulCmd=%#lx\n", ++ pvUser, pHdr, Hdr.cbIn, ulCmd)); + RTMemTmpFree(pHdr); +- return rc; ++ return EFAULT; + } + if (Hdr.cbIn < cbReq) + RT_BZERO((uint8_t *)pHdr + Hdr.cbIn, cbReq - Hdr.cbIn); +@@ -435,9 +500,8 @@ static int VBoxDrvFreeBSDIOCtlSlow(PSUPDRVSESSION pSes + OSDBGPRINT(("VBoxDrvFreeBSDIOCtlSlow: too much output! %#x > %#x; uCmd=%#lx!\n", cbOut, cbReq, ulCmd)); + cbOut = cbReq; + } +- rc = copyout(pHdr, pvUser, cbOut); +- if (RT_UNLIKELY(rc)) +- OSDBGPRINT(("VBoxDrvFreeBSDIOCtlSlow: copyout(%p,%p,%#x) -> %d; uCmd=%#lx!\n", pHdr, pvUser, cbOut, rc, ulCmd)); ++ if (RT_FAILURE(RTR0MemUserCopyTo((uintptr_t)pvUser, pHdr, cbOut))) ++ OSDBGPRINT(("VBoxDrvFreeBSDIOCtlSlow: copyout(%p,%p,%#x); uCmd=%#lx!\n", pHdr, pvUser, cbOut, ulCmd)); + + Log(("VBoxDrvFreeBSDIOCtlSlow: returns %d / %d ulCmd=%lx\n", 0, pHdr->rc, ulCmd)); + +@@ -540,8 +604,7 @@ bool VBOXCALL supdrvOSAreCpusOfflinedOnSuspend(void) + + bool VBOXCALL supdrvOSAreCpusOfflinedOnSuspend(void) + { +- /** @todo verify this. */ +- return false; ++ return true; + } + + +@@ -637,31 +700,44 @@ int VBOXCALL supdrvOSMsrProberModify(RTCPUID idCpu, + #endif /* SUPDRV_WITH_MSR_PROBER */ + + +-#if defined(RT_ARCH_AMD64) || defined(RT_ARCH_ARM64) +-SUPR0DECL(int) SUPR0HCPhysToVirt(RTHCPHYS HCPhys, void **ppv) ++/** ++ * Check if the CPU has SMAP support. ++ */ ++static bool VBoxDrvFreeBSDCpuHasSMAP(void) + { +- AssertReturn(!(HCPhys & PAGE_OFFSET_MASK), VERR_INVALID_POINTER); +- AssertReturn(HCPhys != NIL_RTHCPHYS, VERR_INVALID_POINTER); +- *ppv = (void *)(uintptr_t)pmap_map(NULL, HCPhys, (HCPhys | PAGE_OFFSET_MASK) + 1, VM_PROT_WRITE | VM_PROT_READ); +- return VINF_SUCCESS; +-} ++#ifdef VBOX_WITH_EFLAGS_AC_SET_IN_VBOXDRV ++ if ((cpu_stdext_feature & CPUID_STDEXT_SMAP) != 0) ++ return true; + #endif ++ return false; ++} + + + SUPR0DECL(int) SUPR0PrintfV(const char *pszFormat, va_list va) + { + char szMsg[256]; ++ IPRT_FREEBSD_SAVE_EFL_AC(); ++ + RTStrPrintfV(szMsg, sizeof(szMsg), pszFormat, va); + szMsg[sizeof(szMsg) - 1] = '\0'; + + printf("%s", szMsg); ++ ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return 0; + } + + + SUPR0DECL(uint32_t) SUPR0GetKernelFeatures(void) + { +- return 0; ++ uint32_t fFlags = 0; ++#ifdef VBOX_WITH_EFLAGS_AC_SET_IN_VBOXDRV ++ if (g_VBoxDrvFreeBSDChrDevSwSys.d_ioctl == VBoxDrvFreeBSDIOCtlSMAP) ++ fFlags |= SUPKERNELFEATURES_SMAP; ++ else ++ Assert(!(ASMGetCR4() & X86_CR4_SMAP)); ++#endif ++ return fFlags; + } + + diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_freebsd_SUPLib-freebsd.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_freebsd_SUPLib-freebsd.cpp new file mode 100644 index 000000000000..11813244f938 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_freebsd_SUPLib-freebsd.cpp @@ -0,0 +1,11 @@ +--- src/VBox/HostDrivers/Support/freebsd/SUPLib-freebsd.cpp.orig 2025-08-13 19:51:09 UTC ++++ src/VBox/HostDrivers/Support/freebsd/SUPLib-freebsd.cpp +@@ -88,7 +88,7 @@ DECLHIDDEN(int) suplibOsInit(PSUPLIBDATA pThis, bool f + /* + * Try open the BSD device. + */ +- const char * const *pszDeviceNm = fFlags & SUPR3INIT_F_UNRESTRICTED ? DEVICE_NAME_SYS : DEVICE_NAME_USR; ++ const char * pszDeviceNm = fFlags & SUPR3INIT_F_UNRESTRICTED ? DEVICE_NAME_SYS : DEVICE_NAME_USR; + int hDevice = open(pszDeviceNm, O_RDWR, 0); + if (hDevice < 0) + { diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_freebsd_files__vboxdrv b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_freebsd_files__vboxdrv new file mode 100644 index 000000000000..013a5e605910 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_Support_freebsd_files__vboxdrv @@ -0,0 +1,34 @@ +--- src/VBox/HostDrivers/Support/freebsd/files_vboxdrv.orig 2025-08-13 19:51:09 UTC ++++ src/VBox/HostDrivers/Support/freebsd/files_vboxdrv +@@ -71,6 +71,7 @@ FILES_VBOXDRV_NOBIN=" \ + ${PATH_ROOT}/include/iprt/stdarg.h=>include/iprt/stdarg.h \ + ${PATH_ROOT}/include/iprt/stdint.h=>include/iprt/stdint.h \ + ${PATH_ROOT}/include/iprt/string.h=>include/iprt/string.h \ ++ ${PATH_ROOT}/include/iprt/system.h=>include/iprt/system.h \ + ${PATH_ROOT}/include/iprt/thread.h=>include/iprt/thread.h \ + ${PATH_ROOT}/include/iprt/time.h=>include/iprt/time.h \ + ${PATH_ROOT}/include/iprt/timer.h=>include/iprt/timer.h \ +@@ -133,6 +134,7 @@ FILES_VBOXDRV_NOBIN=" \ + ${PATH_ROOT}/src/VBox/Runtime/common/misc/handletable.cpp=>common/misc/handletable.c \ + ${PATH_ROOT}/src/VBox/Runtime/common/misc/handletable.h=>common/misc/handletable.h \ + ${PATH_ROOT}/src/VBox/Runtime/common/misc/handletablectx.cpp=>common/misc/handletablectx.c \ ++ ${PATH_ROOT}/src/VBox/Runtime/common/misc/handletablesimple.cpp=>common/misc/handletablesimple.c \ + ${PATH_ROOT}/src/VBox/Runtime/common/misc/once.cpp=>common/misc/once.c \ + ${PATH_ROOT}/src/VBox/Runtime/common/misc/term.cpp=>common/misc/term.c \ + ${PATH_ROOT}/src/VBox/Runtime/common/misc/thread.cpp=>common/misc/thread.c \ +@@ -154,6 +156,7 @@ FILES_VBOXDRV_NOBIN=" \ + ${PATH_ROOT}/src/VBox/Runtime/common/string/strprintf2-ellipsis.cpp=>common/string/strprintf2-ellipsis.c \ + ${PATH_ROOT}/src/VBox/Runtime/common/string/strtonum.cpp=>common/string/strtonum.c \ + ${PATH_ROOT}/src/VBox/Runtime/common/string/memchr.cpp=>common/string/memchr.c \ ++ ${PATH_ROOT}/src/VBox/Runtime/common/string/utf-8.cpp=>common/string/utf-8.c \ + ${PATH_ROOT}/src/VBox/Runtime/common/string/stringalloc.cpp=>common/string/stringalloc.c \ + ${PATH_ROOT}/src/VBox/Runtime/common/rand/rand.cpp=>common/rand/rand.c \ + ${PATH_ROOT}/src/VBox/Runtime/common/rand/randadv.cpp=>common/rand/randadv.c \ +@@ -200,6 +203,7 @@ FILES_VBOXDRV_NOBIN=" \ + ${PATH_ROOT}/src/VBox/Runtime/generic/RTMpOnPair-generic.cpp=>generic/RTMpOnPair-generic.c \ + ${PATH_ROOT}/src/VBox/Runtime/generic/errvars-generic.cpp=>generic/errvars-generic.c \ + ${PATH_ROOT}/src/VBox/Runtime/generic/mppresent-generic.cpp=>generic/mppresent-generic.c \ ++ ${PATH_ROOT}/src/VBox/Runtime/generic/system-page-size-generic.cpp=>generic/system-page-size-generic.c \ + ${PATH_ROOT}/src/VBox/Runtime/generic/timer-generic.cpp=>generic/timer-generic.c \ + ${PATH_ROOT}/src/VBox/Runtime/generic/uuid-generic.cpp=>generic/uuid-generic.c \ + ${PATH_ROOT}/src/VBox/Runtime/r0drv/alloc-r0drv.cpp=>r0drv/alloc-r0drv.c \ diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetAdp_freebsd_Makefile b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetAdp_freebsd_Makefile new file mode 100644 index 000000000000..7275c942126d --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetAdp_freebsd_Makefile @@ -0,0 +1,11 @@ +--- src/VBox/HostDrivers/VBoxNetAdp/freebsd/Makefile.orig 2025-08-13 19:51:10 UTC ++++ src/VBox/HostDrivers/VBoxNetAdp/freebsd/Makefile +@@ -36,7 +36,7 @@ KMOD = vboxnetadp + + KMOD = vboxnetadp + +-CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBOX_WITH_HARDENING -DVIMAGE ++CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -DVBOX_WITH_HARDENING -DVBOX_WITH_64_BITS_GUESTS -DVIMAGE -Iinclude -I. -Ir0drv -w + + .if (${MACHINE_ARCH} == "i386") + CFLAGS += -DRT_ARCH_X86 diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetAdp_freebsd_VBoxNetAdp-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetAdp_freebsd_VBoxNetAdp-freebsd.c new file mode 100644 index 000000000000..8da432449fe1 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetAdp_freebsd_VBoxNetAdp-freebsd.c @@ -0,0 +1,147 @@ +--- src/VBox/HostDrivers/VBoxNetAdp/freebsd/VBoxNetAdp-freebsd.c.orig 2024-01-11 12:25:08 UTC ++++ src/VBox/HostDrivers/VBoxNetAdp/freebsd/VBoxNetAdp-freebsd.c +@@ -216,7 +216,11 @@ static void VBoxNetAdpFreeBSDNetinit(void *priv) + PVBOXNETADP pThis = priv; + struct ifnet *ifp = pThis->u.s.ifp; + ++#if __FreeBSD_version >= 1500000 ++ if_setdrvflagbits(ifp, IFF_DRV_RUNNING, 0); ++#else + ifp->if_drv_flags |= IFF_DRV_RUNNING; ++#endif + } + + /** +@@ -226,25 +230,46 @@ static void VBoxNetAdpFreeBSDNetstart(struct ifnet *if + */ + static void VBoxNetAdpFreeBSDNetstart(struct ifnet *ifp) + { ++#if __FreeBSD_version >= 1500000 ++ PVBOXNETADP pThis = if_getsoftc(ifp); ++#else + PVBOXNETADP pThis = ifp->if_softc; ++#endif + struct mbuf *m; + ++#if __FreeBSD_version >= 1500000 ++ if ((if_getdrvflags(ifp) & (IFF_DRV_RUNNING | IFF_DRV_OACTIVE)) != IFF_DRV_RUNNING) ++#else + if ((ifp->if_drv_flags & (IFF_DRV_RUNNING | IFF_DRV_OACTIVE)) != IFF_DRV_RUNNING) ++#endif + return; + ++#if __FreeBSD_version >= 1500000 ++ if_setdrvflagbits(ifp, IFF_DRV_OACTIVE, 0); ++ while (!if_sendq_empty(ifp)) ++#else + ifp->if_drv_flags |= IFF_DRV_OACTIVE; + while (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) ++#endif + { + #if __FreeBSD_version >= 1100036 + if_inc_counter(ifp, IFCOUNTER_OPACKETS, 1); + #else + ifp->if_opackets++; + #endif ++#if __FreeBSD_version >= 1500000 ++ m = if_dequeue(ifp); ++#else + IFQ_DRV_DEQUEUE(&ifp->if_snd, m); ++#endif + BPF_MTAP(ifp, m); + m_freem(m); + } ++#if __FreeBSD_version >= 1500000 ++ if_setdrvflagbits(ifp, 0, IFF_DRV_OACTIVE); ++#else + ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; ++#endif + } + + /** +@@ -257,6 +282,18 @@ static int VBoxNetAdpFreeBSDNetioctl(struct ifnet *ifp + switch (cmd) + { + case SIOCSIFFLAGS: ++#if __FreeBSD_version >= 1500000 ++ if (if_getflags(ifp) & IFF_UP) ++ { ++ if (!(if_getdrvflags(ifp) & IFF_DRV_RUNNING)) ++ if_init(ifp, if_getsoftc(ifp)); ++ } ++ else ++ { ++ if (if_getdrvflags(ifp) & IFF_DRV_RUNNING) ++ if_setdrvflagbits(ifp, 0, IFF_DRV_RUNNING); ++ } ++#else + if (ifp->if_flags & IFF_UP) + { + if (!(ifp->if_drv_flags & IFF_DRV_RUNNING)) +@@ -267,6 +304,7 @@ static int VBoxNetAdpFreeBSDNetioctl(struct ifnet *ifp + if (ifp->if_drv_flags & IFF_DRV_RUNNING) + ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + } ++#endif + break; + case SIOCGIFMEDIA: + { +@@ -301,7 +339,11 @@ int vboxNetAdpOsCreate(PVBOXNETADP pThis, PCRTMAC pMac + + int vboxNetAdpOsCreate(PVBOXNETADP pThis, PCRTMAC pMac) + { ++#if __FreeBSD_version >= 1500000 ++ if_t ifp; ++#else + struct ifnet *ifp; ++#endif + + VBOXCURVNET_SET_FROM_UCRED(); + ifp = if_alloc(IFT_ETHER); +@@ -309,6 +351,16 @@ int vboxNetAdpOsCreate(PVBOXNETADP pThis, PCRTMAC pMac + return VERR_NO_MEMORY; + + if_initname(ifp, VBOXNETADP_NAME, pThis->iUnit); ++#if __FreeBSD_version >= 1500000 ++ if_setsoftc(ifp, pThis); ++ if_setmtu(ifp, ETHERMTU); ++ if_setflagbits(ifp, IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST, 0); ++ if_setioctlfn(ifp, VBoxNetAdpFreeBSDNetioctl); ++ if_setstartfn(ifp, VBoxNetAdpFreeBSDNetstart); ++ if_setinitfn(ifp, VBoxNetAdpFreeBSDNetinit); ++ if_setsendqlen(ifp, IFQ_MAXLEN); ++ if_setsendqready(ifp); ++#else + ifp->if_softc = pThis; + ifp->if_mtu = ETHERMTU; + ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; +@@ -318,10 +370,17 @@ int vboxNetAdpOsCreate(PVBOXNETADP pThis, PCRTMAC pMac + IFQ_SET_MAXLEN(&ifp->if_snd, IFQ_MAXLEN); + ifp->if_snd.ifq_drv_maxlen = IFQ_MAXLEN; + IFQ_SET_READY(&ifp->if_snd); ++#endif + ether_ifattach(ifp, (void *)pMac); ++#if __FreeBSD_version >= 1500000 ++ (void)if_setbaudrate(ifp, 0); ++ ++ strncpy(pThis->szName, if_name(ifp), VBOXNETADP_MAX_NAME_LEN); ++#else + ifp->if_baudrate = 0; + + strncpy(pThis->szName, ifp->if_xname, VBOXNETADP_MAX_NAME_LEN); ++#endif + pThis->u.s.ifp = ifp; + VBOXCURVNET_RESTORE(); + return 0; +@@ -332,7 +391,11 @@ void vboxNetAdpOsDestroy(PVBOXNETADP pThis) + struct ifnet *ifp; + + ifp = pThis->u.s.ifp; ++#if __FreeBSD_version >= 1500000 ++ VBOXCURVNET_SET(if_getvnet(ifp)); ++#else + VBOXCURVNET_SET(ifp->if_vnet); ++#endif + ether_ifdetach(ifp); + if_free(ifp); + VBOXCURVNET_RESTORE(); diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetFlt_Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetFlt_Makefile.kmk new file mode 100644 index 000000000000..1bf366252bc2 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetFlt_Makefile.kmk @@ -0,0 +1,11 @@ +--- src/VBox/HostDrivers/VBoxNetFlt/Makefile.kmk.orig 2025-08-13 19:51:11 UTC ++++ src/VBox/HostDrivers/VBoxNetFlt/Makefile.kmk +@@ -337,7 +337,7 @@ ifeq ($(KBUILD_TARGET),freebsd) + $(QUIET)$(RM) -f -- $@ + $(QUIET)$(CP) -f $< $@ + ifndef VBOX_WITH_HARDENING +- $(QUIET)$(SED) -e "s;VBOX_WITH_HARDENING;;g" --output $@.tmp $@ ++ $(QUIET)$(SED) -e "s;-DVBOX_WITH_HARDENING;;g" --output $@.tmp $@ + ${QUIET}$(MV) -f $@.tmp $@ + endif + ifndef VBOX_WITH_NETFLT_VIMAGE diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetFlt_freebsd_Makefile b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetFlt_freebsd_Makefile new file mode 100644 index 000000000000..e1db154e2347 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetFlt_freebsd_Makefile @@ -0,0 +1,11 @@ +--- src/VBox/HostDrivers/VBoxNetFlt/freebsd/Makefile.orig 2025-08-13 19:51:11 UTC ++++ src/VBox/HostDrivers/VBoxNetFlt/freebsd/Makefile +@@ -36,7 +36,7 @@ KMOD = vboxnetflt + + KMOD = vboxnetflt + +-CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -Iinclude -I. -Ir0drv -w -DVBOX_WITH_HARDENING -DVIMAGE ++CFLAGS += -DRT_OS_FREEBSD -DIN_RING0 -DIN_RT_R0 -DIN_SUP_R0 -DVBOX -DRT_WITH_VBOX -DVBOX_WITH_HARDENING -DVBOX_WITH_64_BITS_GUESTS -DVIMAGE -Iinclude -I. -Ir0drv -w + + .if (${MACHINE_ARCH} == "i386") + CFLAGS += -DRT_ARCH_X86 diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetFlt_freebsd_VBoxNetFlt-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetFlt_freebsd_VBoxNetFlt-freebsd.c new file mode 100644 index 000000000000..6e3d40a42e43 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_VBoxNetFlt_freebsd_VBoxNetFlt-freebsd.c @@ -0,0 +1,471 @@ +--- src/VBox/HostDrivers/VBoxNetFlt/freebsd/VBoxNetFlt-freebsd.c.orig 2024-01-11 12:25:08 UTC ++++ src/VBox/HostDrivers/VBoxNetFlt/freebsd/VBoxNetFlt-freebsd.c +@@ -52,6 +52,7 @@ + #include <net/if_dl.h> + #include <net/if_types.h> + #include <net/ethernet.h> ++#include <net/if_vlan_var.h> + + #include <netgraph/ng_message.h> + #include <netgraph/netgraph.h> +@@ -73,6 +74,7 @@ + + #define VBOXNETFLT_OS_SPECFIC 1 + #include "../VBoxNetFltInternal.h" ++#include "freebsd/the-freebsd-kernel.h" + + static int vboxnetflt_modevent(struct module *, int, void *); + static ng_constructor_t ng_vboxnetflt_constructor; +@@ -149,6 +151,7 @@ MODULE_DEPEND(ng_vboxnetflt, vboxdrv, 1, 1, 1); + */ + MODULE_VERSION(vboxnetflt, 1); + MODULE_DEPEND(ng_vboxnetflt, vboxdrv, 1, 1, 1); ++MODULE_DEPEND(ng_vboxnetflt, ng_ether, 1, 1, 1); + + /** + * The (common) global data. +@@ -181,8 +184,6 @@ static int vboxnetflt_modevent(struct module *pMod, in + printf("vboxNetFltInitGlobalsAndIdc failed %d\n", rc); + return RTErrConvertToErrno(rc); + } +- /* No MODULE_VERSION in ng_ether so we can't MODULE_DEPEND it */ +- kern_kldload(curthread, "ng_ether", NULL); + break; + + case MOD_UNLOAD: +@@ -334,12 +335,20 @@ static int ng_vboxnetflt_rcvdata(hook_p hook, item_p i + { + const node_p node = NG_HOOK_NODE(hook); + PVBOXNETFLTINS pThis = NG_NODE_PRIVATE(node); ++#if __FreeBSD_version >= 1500000 ++ if_t ifp = pThis->u.s.ifp; ++#else + struct ifnet *ifp = pThis->u.s.ifp; ++#endif + struct mbuf *m; + struct m_tag *mtag; + bool fActive; + ++#if __FreeBSD_version >= 1500000 ++ VBOXCURVNET_SET(if_getvnet(ifp)); ++#else + VBOXCURVNET_SET(ifp->if_vnet); ++#endif + fActive = vboxNetFltTryRetainBusyActive(pThis); + + NGI_GET_M(item, m); +@@ -361,7 +370,14 @@ static int ng_vboxnetflt_rcvdata(hook_p hook, item_p i + { + if (mtag != NULL || !fActive) + { ++#if __FreeBSD_version >= 1300049 ++ struct epoch_tracker et; ++ NET_EPOCH_ENTER(et); ++#endif + ether_demux(ifp, m); ++#if __FreeBSD_version >= 1300049 ++ NET_EPOCH_EXIT(et); ++#endif + if (fActive) + vboxNetFltRelease(pThis, true /*fBusy*/); + VBOXCURVNET_RESTORE(); +@@ -433,12 +449,22 @@ static void vboxNetFltFreeBSDinput(void *arg, int pend + { + PVBOXNETFLTINS pThis = (PVBOXNETFLTINS)arg; + struct mbuf *m, *m0; ++#if __FreeBSD_version >= 1500000 ++ if_t ifp = pThis->u.s.ifp; ++#else + struct ifnet *ifp = pThis->u.s.ifp; ++#endif + unsigned int cSegs = 0; + bool fDropIt = false, fActive; ++ bool is_vl_tagged = false; ++ uint16_t vl_tag; + PINTNETSG pSG; + ++#if __FreeBSD_version >= 1500000 ++ VBOXCURVNET_SET(if_getvnet(ifp)); ++#else + VBOXCURVNET_SET(ifp->if_vnet); ++#endif + vboxNetFltRetain(pThis, true /* fBusy */); + for (;;) + { +@@ -448,6 +474,19 @@ static void vboxNetFltFreeBSDinput(void *arg, int pend + if (m == NULL) + break; + ++ /* Prepend a VLAN header for consumption by the virtual switch */ ++ if (m->m_flags & M_VLANTAG) { ++ vl_tag = m->m_pkthdr.ether_vtag; ++ is_vl_tagged = true; ++ ++ m = ether_vlanencap(m, m->m_pkthdr.ether_vtag); ++ if (m == NULL) { ++ printf("vboxflt: unable to prepend VLAN header\n"); ++ break; ++ } ++ m->m_flags &= ~M_VLANTAG; ++ } ++ + for (m0 = m; m0 != NULL; m0 = m0->m_next) + if (m0->m_len > 0) + cSegs++; +@@ -462,10 +501,39 @@ static void vboxNetFltFreeBSDinput(void *arg, int pend + vboxNetFltFreeBSDMBufToSG(pThis, m, pSG, cSegs, 0); + fDropIt = pThis->pSwitchPort->pfnRecv(pThis->pSwitchPort, NULL /* pvIf */, pSG, INTNETTRUNKDIR_WIRE); + RTMemTmpFree(pSG); ++ ++ /* Restore the VLAN flags before re-injecting the packet */ ++ if (is_vl_tagged && !fDropIt) { ++ struct ether_vlan_header *vl_hdr; ++ ++ /* This shouldn't fail, as the header was just prepended */ ++ if (m->m_len < sizeof(*vl_hdr) && (m = m_pullup(m, sizeof(*vl_hdr))) == NULL) { ++ printf("vboxflt: unable to pullup VLAN header\n"); ++ m_freem(m); ++ break; ++ } ++ ++ /* Copy the MAC dhost/shost over the 802.1q field */ ++ vl_hdr = mtod(m, struct ether_vlan_header *); ++ bcopy((char *)vl_hdr, (char *)vl_hdr + ETHER_VLAN_ENCAP_LEN, ETHER_HDR_LEN - ETHER_TYPE_LEN); ++ m_adj(m, ETHER_VLAN_ENCAP_LEN); ++ ++ m->m_pkthdr.ether_vtag = vl_tag; ++ m->m_flags |= M_VLANTAG; ++ } ++ + if (fDropIt) + m_freem(m); +- else ++ else { ++#if __FreeBSD_version >= 1300049 ++ struct epoch_tracker et; ++ NET_EPOCH_ENTER(et); ++#endif + ether_demux(ifp, m); ++#if __FreeBSD_version >= 1300049 ++ NET_EPOCH_EXIT(et); ++#endif ++ } + } + vboxNetFltRelease(pThis, true /* fBusy */); + VBOXCURVNET_RESTORE(); +@@ -478,12 +546,20 @@ static void vboxNetFltFreeBSDoutput(void *arg, int pen + { + PVBOXNETFLTINS pThis = (PVBOXNETFLTINS)arg; + struct mbuf *m, *m0; ++#if __FreeBSD_version >= 1500000 ++ if_t ifp = pThis->u.s.ifp; ++#else + struct ifnet *ifp = pThis->u.s.ifp; ++#endif + unsigned int cSegs = 0; + bool fDropIt = false, fActive; + PINTNETSG pSG; + ++#if __FreeBSD_version >= 1500000 ++ VBOXCURVNET_SET(if_getvnet(ifp)); ++#else + VBOXCURVNET_SET(ifp->if_vnet); ++#endif + vboxNetFltRetain(pThis, true /* fBusy */); + for (;;) + { +@@ -521,26 +597,41 @@ int vboxNetFltPortOsXmit(PVBOXNETFLTINS pThis, void *p + */ + int vboxNetFltPortOsXmit(PVBOXNETFLTINS pThis, void *pvIfData, PINTNETSG pSG, uint32_t fDst) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + NOREF(pvIfData); + + void (*input_f)(struct ifnet *, struct mbuf *); ++#if __FreeBSD_version >= 1500000 ++ if_t ifp; ++#else + struct ifnet *ifp; ++#endif + struct mbuf *m; + struct m_tag *mtag; + bool fActive; + int error; + + ifp = ASMAtomicUoReadPtrT(&pThis->u.s.ifp, struct ifnet *); ++#if __FreeBSD_version >= 1500000 ++ VBOXCURVNET_SET(if_getvnet(ifp)); ++#else + VBOXCURVNET_SET(ifp->if_vnet); ++#endif + + if (fDst & INTNETTRUNKDIR_WIRE) + { + m = vboxNetFltFreeBSDSGMBufFromSG(pThis, pSG); + if (m == NULL) ++ { ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; ++ } + m = m_pullup(m, ETHER_HDR_LEN); + if (m == NULL) ++ { ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; ++ } + + m->m_flags |= M_PKTHDR; + ether_output_frame(ifp, m); +@@ -550,10 +641,16 @@ int vboxNetFltPortOsXmit(PVBOXNETFLTINS pThis, void *p + { + m = vboxNetFltFreeBSDSGMBufFromSG(pThis, pSG); + if (m == NULL) ++ { ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; ++ } + m = m_pullup(m, ETHER_HDR_LEN); + if (m == NULL) ++ { ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; ++ } + /* + * Delivering packets to the host will be captured by the + * input hook. Tag the packet with a mbuf tag so that we +@@ -564,6 +661,7 @@ int vboxNetFltPortOsXmit(PVBOXNETFLTINS pThis, void *p + if (mtag == NULL) + { + m_freem(m); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; + } + +@@ -571,9 +669,21 @@ int vboxNetFltPortOsXmit(PVBOXNETFLTINS pThis, void *p + m_tag_prepend(m, mtag); + m->m_flags |= M_PKTHDR; + m->m_pkthdr.rcvif = ifp; ++#if __FreeBSD_version >= 1300049 ++ struct epoch_tracker et; ++ NET_EPOCH_ENTER(et); ++#endif ++#if __FreeBSD_version >= 1500000 ++ if_input(ifp, m); ++#else + ifp->if_input(ifp, m); ++#endif ++#if __FreeBSD_version >= 1300049 ++ NET_EPOCH_EXIT(et); ++#endif + } + VBOXCURVNET_RESTORE(); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +@@ -586,15 +696,23 @@ int vboxNetFltOsInitInstance(PVBOXNETFLTINS pThis, voi + + int vboxNetFltOsInitInstance(PVBOXNETFLTINS pThis, void *pvContext) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + char nam[NG_NODESIZ]; ++#if __FreeBSD_version >= 1500000 ++ if_t ifp; ++#else + struct ifnet *ifp; ++#endif + node_p node; + + VBOXCURVNET_SET_FROM_UCRED(); + NOREF(pvContext); + ifp = ifunit(pThis->szName); + if (ifp == NULL) ++ { ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_INTNET_FLT_IF_NOT_FOUND; ++ } + + /* Create a new netgraph node for this instance */ + if (ng_make_node_common(&ng_vboxnetflt_typestruct, &node) != 0) +@@ -604,7 +722,11 @@ int vboxNetFltOsInitInstance(PVBOXNETFLTINS pThis, voi + + ASMAtomicUoWritePtr(&pThis->u.s.ifp, ifp); + pThis->u.s.node = node; ++#if __FreeBSD_version >= 1500000 ++ bcopy(if_getlladdr(ifp), &pThis->u.s.MacAddr, ETHER_ADDR_LEN); ++#else + bcopy(IF_LLADDR(ifp), &pThis->u.s.MacAddr, ETHER_ADDR_LEN); ++#endif + ASMAtomicUoWriteBool(&pThis->fDisconnectedFromHost, false); + + /* Initialize deferred input queue */ +@@ -638,16 +760,26 @@ int vboxNetFltOsInitInstance(PVBOXNETFLTINS pThis, voi + vboxNetFltRelease(pThis, true /*fBusy*/); + } + VBOXCURVNET_RESTORE(); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + + return VINF_SUCCESS; + } + + bool vboxNetFltOsMaybeRediscovered(PVBOXNETFLTINS pThis) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); ++#if __FreeBSD_version >= 1500000 ++ if_t ifp, ifp0; ++#else + struct ifnet *ifp, *ifp0; ++#endif + + ifp = ASMAtomicUoReadPtrT(&pThis->u.s.ifp, struct ifnet *); ++#if __FreeBSD_version >= 1500000 ++ VBOXCURVNET_SET(if_getvnet(ifp)); ++#else + VBOXCURVNET_SET(ifp->if_vnet); ++#endif + /* + * Attempt to check if the interface is still there and re-initialize if + * something has changed. +@@ -660,6 +792,7 @@ bool vboxNetFltOsMaybeRediscovered(PVBOXNETFLTINS pThi + pThis->u.s.node = NULL; + } + VBOXCURVNET_RESTORE(); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + + if (ifp0 != NULL) + { +@@ -672,6 +805,7 @@ void vboxNetFltOsDeleteInstance(PVBOXNETFLTINS pThis) + + void vboxNetFltOsDeleteInstance(PVBOXNETFLTINS pThis) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + + taskqueue_drain(taskqueue_fast, &pThis->u.s.tskin); + taskqueue_drain(taskqueue_fast, &pThis->u.s.tskout); +@@ -684,6 +818,7 @@ void vboxNetFltOsDeleteInstance(PVBOXNETFLTINS pThis) + ng_rmnode_self(pThis->u.s.node); + VBOXCURVNET_RESTORE(); + pThis->u.s.node = NULL; ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + } + + int vboxNetFltOsPreInitInstance(PVBOXNETFLTINS pThis) +@@ -697,7 +832,12 @@ void vboxNetFltPortOsSetActive(PVBOXNETFLTINS pThis, b + + void vboxNetFltPortOsSetActive(PVBOXNETFLTINS pThis, bool fActive) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); ++#if __FreeBSD_version >= 1500000 ++ if_t ifp; ++#else + struct ifnet *ifp; ++#endif + struct ifreq ifreq; + int error; + node_p node; +@@ -709,18 +849,30 @@ void vboxNetFltPortOsSetActive(PVBOXNETFLTINS pThis, b + Log(("%s: fActive:%d\n", __func__, fActive)); + + ifp = ASMAtomicUoReadPtrT(&pThis->u.s.ifp, struct ifnet *); ++#if __FreeBSD_version >= 1500000 ++ VBOXCURVNET_SET(if_getvnet(ifp)); ++#else + VBOXCURVNET_SET(ifp->if_vnet); ++#endif + node = ASMAtomicUoReadPtrT(&pThis->u.s.node, node_p); + + memset(&ifreq, 0, sizeof(struct ifreq)); + /* Activate interface */ + if (fActive) + { ++#if __FreeBSD_version >= 1500000 ++ pThis->u.s.flags = if_getflags(ifp); ++#else + pThis->u.s.flags = ifp->if_flags; ++#endif + ifpromisc(ifp, 1); + + /* ng_ether nodes are named after the interface name */ ++#if __FreeBSD_version >= 1500000 ++ snprintf(path, sizeof(path), "%s:", if_name(ifp)); ++#else + snprintf(path, sizeof(path), "%s:", ifp->if_xname); ++#endif + + /* + * Send a netgraph connect message to the ng_ether node +@@ -730,9 +882,16 @@ void vboxNetFltPortOsSetActive(PVBOXNETFLTINS pThis, b + NG_MKMESSAGE(msg, NGM_GENERIC_COOKIE, NGM_CONNECT, + sizeof(struct ngm_connect), M_NOWAIT); + if (msg == NULL) ++ { ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return; ++ } + con = (struct ngm_connect *)msg->data; ++#if __FreeBSD_version >= 1500000 ++ snprintf(con->path, NG_PATHSIZ, "vboxnetflt_%s:", if_name(ifp)); ++#else + snprintf(con->path, NG_PATHSIZ, "vboxnetflt_%s:", ifp->if_xname); ++#endif + strlcpy(con->ourhook, "lower", NG_HOOKSIZ); + strlcpy(con->peerhook, "input", NG_HOOKSIZ); + NG_SEND_MSG_PATH(error, node, msg, path, 0); +@@ -744,10 +903,17 @@ void vboxNetFltPortOsSetActive(PVBOXNETFLTINS pThis, b + NG_MKMESSAGE(msg, NGM_GENERIC_COOKIE, NGM_CONNECT, + sizeof(struct ngm_connect), M_NOWAIT); + if (msg == NULL) ++ { ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return; ++ } + con = (struct ngm_connect *)msg->data; + snprintf(con->path, NG_PATHSIZ, "vboxnetflt_%s:", ++#if __FreeBSD_version >= 1500000 ++ if_name(ifp)); ++#else + ifp->if_xname); ++#endif + strlcpy(con->ourhook, "upper", sizeof(con->ourhook)); + strlcpy(con->peerhook, "output", sizeof(con->peerhook)); + NG_SEND_MSG_PATH(error, node, msg, path, 0); +@@ -759,7 +925,11 @@ void vboxNetFltPortOsSetActive(PVBOXNETFLTINS pThis, b + ifpromisc(ifp, 0); + + /* Disconnect msgs are addressed to ourself */ ++#if __FreeBSD_version >= 1500000 ++ snprintf(path, sizeof(path), "vboxnetflt_%s:", if_name(ifp)); ++#else + snprintf(path, sizeof(path), "vboxnetflt_%s:", ifp->if_xname); ++#endif + + /* + * Send a netgraph message to disconnect our 'input' hook +@@ -767,7 +937,10 @@ void vboxNetFltPortOsSetActive(PVBOXNETFLTINS pThis, b + NG_MKMESSAGE(msg, NGM_GENERIC_COOKIE, NGM_RMHOOK, + sizeof(struct ngm_rmhook), M_NOWAIT); + if (msg == NULL) ++ { ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return; ++ } + rm = (struct ngm_rmhook *)msg->data; + strlcpy(rm->ourhook, "input", NG_HOOKSIZ); + NG_SEND_MSG_PATH(error, node, msg, path, 0); +@@ -778,12 +951,16 @@ void vboxNetFltPortOsSetActive(PVBOXNETFLTINS pThis, b + NG_MKMESSAGE(msg, NGM_GENERIC_COOKIE, NGM_RMHOOK, + sizeof(struct ngm_rmhook), M_NOWAIT); + if (msg == NULL) ++ { ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return; ++ } + rm = (struct ngm_rmhook *)msg->data; + strlcpy(rm->ourhook, "output", NG_HOOKSIZ); + NG_SEND_MSG_PATH(error, node, msg, path, 0); + } + VBOXCURVNET_RESTORE(); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + } + + int vboxNetFltOsDisconnectIt(PVBOXNETFLTINS pThis) diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_adpctl_VBoxNetAdpCtl.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_adpctl_VBoxNetAdpCtl.cpp new file mode 100644 index 000000000000..2c13b666afaf --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_HostDrivers_adpctl_VBoxNetAdpCtl.cpp @@ -0,0 +1,11 @@ +--- src/VBox/HostDrivers/adpctl/VBoxNetAdpCtl.cpp.orig 2025-08-13 19:51:12 UTC ++++ src/VBox/HostDrivers/adpctl/VBoxNetAdpCtl.cpp +@@ -759,7 +759,7 @@ int Adapter::doIOCtl(unsigned long iCmd, VBOXNETADPREQ + * Global config file implementation * + *********************************************************************************************************************************/ + +-#define VBOX_GLOBAL_NETWORK_CONFIG_PATH "/etc/vbox/networks.conf" ++#define VBOX_GLOBAL_NETWORK_CONFIG_PATH "%%VBOX_ETC%%/networks.conf" + #define VBOXNET_DEFAULT_IPV4MASK "255.255.255.0" + + class NetworkAddress diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Main_Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src_VBox_Main_Makefile.kmk new file mode 100644 index 000000000000..48ced38ac98c --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Main_Makefile.kmk @@ -0,0 +1,10 @@ +--- src/VBox/Main/Makefile.kmk.orig 2025-08-13 19:51:19 UTC ++++ src/VBox/Main/Makefile.kmk +@@ -771,6 +771,7 @@ if !defined(VBOX_ONLY_SDK) && !defined(VBOX_ONLY_EXTPA + + VBoxSVC_SOURCES.freebsd = \ + src-server/freebsd/HostHardwareFreeBSD.cpp \ ++ $(if $(VBOX_WITH_DBUS),src-server/linux/HostPowerLinux.cpp) \ + src-server/HostDnsServiceResolvConf.cpp + + VBoxSVC_LDFLAGS.freebsd += -lcam diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Main_include_HostPower.h b/emulators/virtualbox-ose-72/files/patch-src_VBox_Main_include_HostPower.h new file mode 100644 index 000000000000..90bd737f000d --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Main_include_HostPower.h @@ -0,0 +1,20 @@ +--- src/VBox/Main/include/HostPower.h.orig 2025-08-13 19:51:21 UTC ++++ src/VBox/Main/include/HostPower.h +@@ -41,7 +41,7 @@ + + #include <vector> + +-#ifdef RT_OS_LINUX ++#if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) + # include <VBox/dbus.h> + #endif + +@@ -77,7 +77,7 @@ class HostPowerServiceWin : public HostPowerService (p + RTTHREAD mThread; + }; + # endif +-# if defined(RT_OS_LINUX) || defined(DOXYGEN_RUNNING) ++# if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) || defined(DOXYGEN_RUNNING) + /** + * The Linux hosted Power Service. + */ diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Main_src-server_HostImpl.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Main_src-server_HostImpl.cpp new file mode 100644 index 000000000000..3327edf47c79 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Main_src-server_HostImpl.cpp @@ -0,0 +1,11 @@ +--- src/VBox/Main/src-server/HostImpl.cpp.orig 2025-08-13 19:51:26 UTC ++++ src/VBox/Main/src-server/HostImpl.cpp +@@ -339,7 +339,7 @@ HRESULT Host::init(VirtualBox *aParent) + + #if defined(RT_OS_WINDOWS) + m->pHostPowerService = new HostPowerServiceWin(m->pParent); +-#elif defined(RT_OS_LINUX) && defined(VBOX_WITH_DBUS) ++#elif (defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD)) && defined(VBOX_WITH_DBUS) + m->pHostPowerService = new HostPowerServiceLinux(m->pParent); + #elif defined(RT_OS_DARWIN) + m->pHostPowerService = new HostPowerServiceDarwin(m->pParent); diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Main_src-server_freebsd_PerformanceFreeBSD.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Main_src-server_freebsd_PerformanceFreeBSD.cpp new file mode 100644 index 000000000000..ec8a2226f1c9 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Main_src-server_freebsd_PerformanceFreeBSD.cpp @@ -0,0 +1,24 @@ +--- src/VBox/Main/src-server/freebsd/PerformanceFreeBSD.cpp.orig 2025-08-13 19:51:28 UTC ++++ src/VBox/Main/src-server/freebsd/PerformanceFreeBSD.cpp +@@ -90,8 +90,10 @@ int CollectorFreeBSD::getHostMemoryUsage(ULONG *total, + cbParameter = sizeof(cPagesMemInactive); + if (!sysctlbyname("vm.stats.vm.v_inactive_count", &cPagesMemInactive, &cbParameter, NULL, 0)) + cProcessed++; ++#if __FreeBSD_version < 1200016 + cbParameter = sizeof(cPagesMemCached); + if (!sysctlbyname("vm.stats.vm.v_cache_count", &cPagesMemCached, &cbParameter, NULL, 0)) ++#endif + cProcessed++; + cbParameter = sizeof(cbPage); + if (!sysctlbyname("hw.pagesize", &cbPage, &cbParameter, NULL, 0)) +@@ -100,8 +102,8 @@ int CollectorFreeBSD::getHostMemoryUsage(ULONG *total, + if (cProcessed == 6) + { + *total = cbMemPhys / _1K; +- *used = cPagesMemUsed * (cbPage / _1K); +- *available = (cPagesMemFree + cPagesMemInactive + cPagesMemCached ) * (cbPage / _1K); ++ *used = (uint64_t)cPagesMemUsed * (cbPage / _1K); ++ *available = ((uint64_t)cPagesMemFree + cPagesMemInactive + cPagesMemCached) * (cbPage / _1K); + } + else + vrc = VERR_NOT_SUPPORTED; diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_Makefile.kmk new file mode 100644 index 000000000000..7d80c20cb908 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_Makefile.kmk @@ -0,0 +1,29 @@ +--- src/VBox/Runtime/Makefile.kmk.orig 2025-08-28 22:09:24 UTC ++++ src/VBox/Runtime/Makefile.kmk +@@ -233,6 +233,9 @@ $(IPRT_OUT_DIR)/oiddb.h.ts +| $(IPRT_OUT_DIR)/oiddb.h: + $(QUIET)$(oiddb2c_1_TARGET) "$@" $(filter %.cfg,$^) + $(QUIET)$(CP) --changed -fv "$@" "$(IPRT_OUT_DIR)/oiddb.h" + ++# Set the defines that utf8-posix.cpp needs. It's used by several targets. ++# ++r3/posix/utf8-posix.cpp_DEFS.freebsd = $(VBOX_ICONV_DEFS) + + # + # Unicode Specification reader used to regenerate unidata-*.cpp. +@@ -1516,6 +1519,7 @@ RuntimeBaseR3_SOURCES.freebsd = \ + generic/RTProcDaemonize-generic.cpp \ + generic/RTProcIsRunningByName-generic.cpp \ + generic/RTThreadGetNativeState-generic.cpp \ ++ generic/system-page-size-generic.cpp \ + r3/freebsd/fileaio-freebsd.cpp \ + r3/freebsd/RTFileQuerySectorSize-freebsd.cpp \ + r3/freebsd/mp-freebsd.cpp \ +@@ -3072,6 +3076,8 @@ VBoxRT_LDFLAGS.win = /MANIFEST \ + /delayload:ole32.dll \ + /delayload:oleaut32.dll \ + /delayload:advapi32.dll ++VBoxRT_LDFLAGS.freebsd = \ ++ -Wl,--allow-multiple-definition + + if1of (VBoxRT, $(DLLS)) + $(call VBOX_SET_VER_INFO_DLL,VBoxRT,VirtualBox Runtime) diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_alloc-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_alloc-r0drv-freebsd.c new file mode 100644 index 000000000000..564b70a0f108 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_alloc-r0drv-freebsd.c @@ -0,0 +1,58 @@ +--- src/VBox/Runtime/r0drv/freebsd/alloc-r0drv-freebsd.c.orig 2025-08-13 19:51:51 UTC ++++ src/VBox/Runtime/r0drv/freebsd/alloc-r0drv-freebsd.c +@@ -88,6 +88,7 @@ DECLHIDDEN(int) rtR0MemAllocEx(size_t cb, uint32_t fFl + + DECLHIDDEN(int) rtR0MemAllocEx(size_t cb, uint32_t fFlags, PRTMEMHDR *ppHdr) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + size_t cbAllocated = cb; + PRTMEMHDR pHdr = (PRTMEMHDR)malloc(cb + sizeof(RTMEMHDR), M_IPRTHEAP, + fFlags & RTMEMHDR_FLAG_ZEROED ? M_NOWAIT | M_ZERO : M_NOWAIT); +@@ -99,21 +100,28 @@ DECLHIDDEN(int) rtR0MemAllocEx(size_t cb, uint32_t fFl + pHdr->cbReq = cb; + + *ppHdr = pHdr; ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; +- } ++ } ++ ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; + } + + + DECLHIDDEN(void) rtR0MemFree(PRTMEMHDR pHdr) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); ++ + pHdr->u32Magic += 1; + free(pHdr, M_IPRTHEAP); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + } + + + RTR0DECL(void *) RTMemContAlloc(PRTCCPHYS pPhys, size_t cb) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + void *pv; + + /* +@@ -138,6 +146,7 @@ RTR0DECL(void *) RTMemContAlloc(PRTCCPHYS pPhys, size_ + *pPhys = vtophys(pv); + Assert(!(*pPhys & PAGE_OFFSET_MASK)); + } ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return pv; + } + +@@ -147,7 +156,9 @@ RTR0DECL(void) RTMemContFree(void *pv, size_t cb) + if (pv) + { + AssertMsg(!((uintptr_t)pv & PAGE_OFFSET_MASK), ("pv=%p\n", pv)); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + contigfree(pv, cb, M_IPRTCONT); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + } + } + diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_assert-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_assert-r0drv-freebsd.c new file mode 100644 index 000000000000..53f7659961b2 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_assert-r0drv-freebsd.c @@ -0,0 +1,29 @@ +--- src/VBox/Runtime/r0drv/freebsd/assert-r0drv-freebsd.c.orig 2025-08-13 19:51:51 UTC ++++ src/VBox/Runtime/r0drv/freebsd/assert-r0drv-freebsd.c +@@ -78,15 +78,18 @@ DECLHIDDEN(void) rtR0AssertNativeMsg1(const char *pszE + + DECLHIDDEN(void) rtR0AssertNativeMsg1(const char *pszExpr, unsigned uLine, const char *pszFile, const char *pszFunction) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + printf("\r\n!!Assertion Failed!!\r\n" + "Expression: %s\r\n" + "Location : %s(%d) %s\r\n", + pszExpr, pszFile, uLine, pszFunction); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + } + + + DECLHIDDEN(void) rtR0AssertNativeMsg2V(bool fInitial, const char *pszFormat, va_list va) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + char szMsg[256]; + + RTStrPrintfV(szMsg, sizeof(szMsg) - 1, pszFormat, va); +@@ -94,6 +97,7 @@ DECLHIDDEN(void) rtR0AssertNativeMsg2V(bool fInitial, + printf("%s", szMsg); + + NOREF(fInitial); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + } + + diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c new file mode 100644 index 000000000000..4c0ed355709c --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_memobj-r0drv-freebsd.c @@ -0,0 +1,408 @@ +--- src/VBox/Runtime/r0drv/freebsd/memobj-r0drv-freebsd.c.orig 2025-04-14 17:59:13 UTC ++++ src/VBox/Runtime/r0drv/freebsd/memobj-r0drv-freebsd.c +@@ -140,8 +140,10 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) + + DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)pMem; + int rc; ++ vm_map_t pMap; + + switch (pMemFreeBSD->Core.enmType) + { +@@ -156,8 +158,6 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) + + case RTR0MEMOBJTYPE_LOCK: + { +- vm_map_t pMap = kernel_map; +- + if (pMemFreeBSD->Core.u.Lock.R0Process != NIL_RTR0PROCESS) + pMap = &((struct proc *)pMemFreeBSD->Core.u.Lock.R0Process)->p_vmspace->vm_map; + +@@ -198,6 +198,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) + case RTR0MEMOBJTYPE_PHYS_NC: + { + VM_OBJECT_WLOCK(pMemFreeBSD->pObject); ++#if __FreeBSD_version < 1500038 + vm_page_t pPage = vm_page_find_least(pMemFreeBSD->pObject, 0); + #if __FreeBSD_version < 1000000 + vm_page_lock_queues(); +@@ -211,6 +212,14 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) + #if __FreeBSD_version < 1000000 + vm_page_unlock_queues(); + #endif ++#else /* __FreeBSD_version >= 1500038 */ ++ struct pctrie_iter pages; ++ vm_page_t page; ++ ++ vm_page_iter_init(&pages, pMemFreeBSD->pObject); ++ VM_RADIX_FORALL(page, &pages) ++ (void)vm_page_unwire_noq(page); ++#endif + VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject); + vm_object_deallocate(pMemFreeBSD->pObject); + break; +@@ -221,6 +230,7 @@ DECLHIDDEN(int) rtR0MemObjNativeFree(RTR0MEMOBJ pMem) + return VERR_INTERNAL_ERROR; + } + ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +@@ -330,7 +340,8 @@ static int rtR0MemObjFreeBSDAllocHelper(PRTR0MEMOBJFRE + size_t cPages = atop(pMemFreeBSD->Core.cb); + int rc; + +- pMemFreeBSD->pObject = vm_object_allocate(OBJT_PHYS, cPages); ++ pMemFreeBSD->pObject = vm_pager_allocate(OBJT_PHYS, NULL, ++ pMemFreeBSD->Core.cb, VM_PROT_ALL, 0, curthread->td_ucred); + + /* No additional object reference for auto-deallocation upon unmapping. */ + #if __FreeBSD_version >= 1000055 +@@ -372,6 +383,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ + + DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable, const char *pszTag) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_PAGE, + NULL, cb, pszTag); + if (pMemFreeBSD) +@@ -381,8 +393,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocPage(PPRTR0MEMOBJ + *ppMem = &pMemFreeBSD->Core; + else + rtR0MemObjDelete(&pMemFreeBSD->Core); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return rc; + } ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; + } + +@@ -396,6 +410,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI + + DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, bool fExecutable, const char *pszTag) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_LOW, NULL, cb, pszTag); + if (pMemFreeBSD) + { +@@ -404,8 +419,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocLow(PPRTR0MEMOBJI + *ppMem = &pMemFreeBSD->Core; + else + rtR0MemObjDelete(&pMemFreeBSD->Core); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return rc; + } ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; + } + +@@ -413,6 +430,7 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJ + DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJINTERNAL ppMem, size_t cb, RTHCPHYS PhysHigest, + bool fExecutable, const char *pszTag) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_CONT, + NULL, cb, pszTag); + if (pMemFreeBSD) +@@ -425,8 +443,10 @@ DECLHIDDEN(int) rtR0MemObjNativeAllocCont(PPRTR0MEMOBJ + } + else + rtR0MemObjDelete(&pMemFreeBSD->Core); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return rc; + } ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; + } + +@@ -434,6 +454,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB + static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJTYPE enmType, size_t cb, RTHCPHYS PhysHighest, + size_t uAlignment, bool fContiguous, int rcNoMem, const char *pszTag) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + /* create the object. */ + PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), enmType, NULL, cb, pszTag); + if (pMemFreeBSD) +@@ -441,7 +462,8 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB + vm_paddr_t const VmPhysAddrHigh = PhysHighest != NIL_RTHCPHYS ? PhysHighest : ~(vm_paddr_t)0; + u_long const cPages = atop(cb); + +- pMemFreeBSD->pObject = vm_object_allocate(OBJT_PHYS, cPages); ++ pMemFreeBSD->pObject = vm_pager_allocate(OBJT_PHYS, NULL, ++ pMemFreeBSD->Core.cb, VM_PROT_ALL, 0, curthread->td_ucred); + + int rc = rtR0MemObjFreeBSDPhysAllocHelper(pMemFreeBSD->pObject, cPages, VmPhysAddrHigh, + uAlignment, fContiguous, true, rcNoMem); +@@ -451,7 +473,7 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB + { + Assert(enmType == RTR0MEMOBJTYPE_PHYS); + VM_OBJECT_WLOCK(pMemFreeBSD->pObject); +- pMemFreeBSD->Core.u.Phys.PhysBase = VM_PAGE_TO_PHYS(vm_page_find_least(pMemFreeBSD->pObject, 0)); ++ pMemFreeBSD->Core.u.Phys.PhysBase = VM_PAGE_TO_PHYS(vm_radix_lookup_ge(&pMemFreeBSD->pObject->rtree, 0)); + VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject); + pMemFreeBSD->Core.u.Phys.fAllocated = true; + } +@@ -464,8 +486,10 @@ static int rtR0MemObjFreeBSDAllocPhysPages(PPRTR0MEMOB + vm_object_deallocate(pMemFreeBSD->pObject); + rtR0MemObjDelete(&pMemFreeBSD->Core); + } ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return rc; + } ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; + } + +@@ -488,6 +512,7 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ + const char *pszTag) + { + AssertReturn(uCachePolicy == RTMEM_CACHE_POLICY_DONT_CARE, VERR_NOT_SUPPORTED); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + + /* create the object. */ + PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(*pMemFreeBSD), RTR0MEMOBJTYPE_PHYS, +@@ -499,8 +524,10 @@ DECLHIDDEN(int) rtR0MemObjNativeEnterPhys(PPRTR0MEMOBJ + pMemFreeBSD->Core.u.Phys.PhysBase = Phys; + pMemFreeBSD->Core.u.Phys.uCachePolicy = uCachePolicy; + *ppMem = &pMemFreeBSD->Core; ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; + } + +@@ -512,6 +539,7 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER + vm_offset_t AddrStart, size_t cb, uint32_t fAccess, + RTR0PROCESS R0Process, int fFlags, const char *pszTag) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + int rc; + NOREF(fAccess); + +@@ -521,21 +549,28 @@ static int rtR0MemObjNativeLockInMap(PPRTR0MEMOBJINTER + if (!pMemFreeBSD) + return VERR_NO_MEMORY; + +- /* +- * We could've used vslock here, but we don't wish to be subject to +- * resource usage restrictions, so we'll call vm_map_wire directly. +- */ +- rc = vm_map_wire(pVmMap, /* the map */ +- AddrStart, /* start */ +- AddrStart + cb, /* end */ +- fFlags); /* flags */ ++ if (pVmMap != kernel_map) { ++ /* ++ * We could've used vslock here, but we don't wish to be subject to ++ * resource usage restrictions, so we'll call vm_map_wire directly. ++ */ ++ rc = vm_map_wire(pVmMap, /* the map */ ++ AddrStart, /* start */ ++ AddrStart + cb, /* end */ ++ fFlags); /* flags */ ++ } ++ else ++ rc = KERN_SUCCESS; ++ + if (rc == KERN_SUCCESS) + { + pMemFreeBSD->Core.u.Lock.R0Process = R0Process; + *ppMem = &pMemFreeBSD->Core; ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + rtR0MemObjDelete(&pMemFreeBSD->Core); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY;/** @todo fix mach -> vbox error conversion for freebsd. */ + } + +@@ -575,6 +610,7 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN + static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJINTERNAL ppMem, void *pvFixed, size_t cb, size_t uAlignment, + RTR0PROCESS R0Process, vm_map_t pMap, const char *pszTag) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + int rc; + + /* +@@ -633,11 +669,13 @@ static int rtR0MemObjNativeReserveInMap(PPRTR0MEMOBJIN + pMemFreeBSD->Core.pv = (void *)MapAddress; + pMemFreeBSD->Core.u.ResVirt.R0Process = R0Process; + *ppMem = &pMemFreeBSD->Core; ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + + rc = VERR_NO_MEMORY; /** @todo fix translation (borrow from darwin) */ + rtR0MemObjDelete(&pMemFreeBSD->Core); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return rc; + + } +@@ -661,6 +699,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ + DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJ pMemToMap, void *pvFixed, size_t uAlignment, + unsigned fProt, size_t offSub, size_t cbSub, const char *pszTag) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); ++ + // AssertMsgReturn(!offSub && !cbSub, ("%#x %#x\n", offSub, cbSub), VERR_NOT_SUPPORTED); + AssertMsgReturn(pvFixed == (void *)-1, ("%p\n", pvFixed), VERR_NOT_SUPPORTED); + +@@ -715,6 +755,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ + Assert((vm_offset_t)pMemFreeBSD->Core.pv == Addr); + pMemFreeBSD->Core.u.Mapping.R0Process = NIL_RTR0PROCESS; + *ppMem = &pMemFreeBSD->Core; ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + rc = vm_map_remove(kernel_map, Addr, Addr + cbSub); +@@ -723,6 +764,7 @@ DECLHIDDEN(int) rtR0MemObjNativeMapKernel(PPRTR0MEMOBJ + else + vm_object_deallocate(pMemToMapFreeBSD->pObject); + ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; + } + +@@ -730,6 +772,8 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN + DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJINTERNAL ppMem, RTR0MEMOBJ pMemToMap, RTR3PTR R3PtrFixed, size_t uAlignment, + unsigned fProt, RTR0PROCESS R0Process, size_t offSub, size_t cbSub, const char *pszTag) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); ++ + /* + * Check for unsupported stuff. + */ +@@ -787,44 +831,50 @@ DECLHIDDEN(int) rtR0MemObjNativeMapUser(PPRTR0MEMOBJIN + + if (rc == KERN_SUCCESS) + { +- rc = vm_map_wire(pProcMap, AddrR3, AddrR3 + pMemToMap->cb, VM_MAP_WIRE_USER|VM_MAP_WIRE_NOHOLES); ++ rc = vm_map_wire(pProcMap, AddrR3, AddrR3 + cbSub, VM_MAP_WIRE_USER|VM_MAP_WIRE_NOHOLES); + AssertMsg(rc == KERN_SUCCESS, ("%#x\n", rc)); + +- rc = vm_map_inherit(pProcMap, AddrR3, AddrR3 + pMemToMap->cb, VM_INHERIT_SHARE); ++ rc = vm_map_inherit(pProcMap, AddrR3, AddrR3 + cbSub, VM_INHERIT_SHARE); + AssertMsg(rc == KERN_SUCCESS, ("%#x\n", rc)); + + /* + * Create a mapping object for it. + */ + PRTR0MEMOBJFREEBSD pMemFreeBSD = (PRTR0MEMOBJFREEBSD)rtR0MemObjNew(sizeof(RTR0MEMOBJFREEBSD), RTR0MEMOBJTYPE_MAPPING, +- (void *)AddrR3, pMemToMap->cb, pszTag); ++ (void *)AddrR3, cbSub, pszTag); + if (pMemFreeBSD) + { + Assert((vm_offset_t)pMemFreeBSD->Core.pv == AddrR3); + pMemFreeBSD->Core.u.Mapping.R0Process = R0Process; + *ppMem = &pMemFreeBSD->Core; ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +- rc = vm_map_remove(pProcMap, AddrR3, AddrR3 + pMemToMap->cb); ++ rc = vm_map_remove(pProcMap, AddrR3, AddrR3 + cbSub); + AssertMsg(rc == KERN_SUCCESS, ("Deleting mapping failed\n")); + } + else + vm_object_deallocate(pMemToMapFreeBSD->pObject); + ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; + } + + + DECLHIDDEN(int) rtR0MemObjNativeProtect(PRTR0MEMOBJINTERNAL pMem, size_t offSub, size_t cbSub, uint32_t fProt) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + vm_prot_t ProtectionFlags = 0; + vm_offset_t AddrStart = (uintptr_t)pMem->pv + offSub; + vm_offset_t AddrEnd = AddrStart + cbSub; + vm_map_t pVmMap = rtR0MemObjFreeBSDGetMap(pMem); + + if (!pVmMap) ++ { ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NOT_SUPPORTED; ++ } + + if ((fProt & RTMEM_PROT_NONE) == RTMEM_PROT_NONE) + ProtectionFlags = VM_PROT_NONE; +@@ -835,7 +885,12 @@ DECLHIDDEN(int) rtR0MemObjNativeProtect(PRTR0MEMOBJINT + if ((fProt & RTMEM_PROT_EXEC) == RTMEM_PROT_EXEC) + ProtectionFlags |= VM_PROT_EXECUTE; + ++#if __FreeBSD_version >= 1300135 ++ int krc = vm_map_protect(pVmMap, AddrStart, AddrEnd, ProtectionFlags, 0, VM_MAP_PROTECT_SET_PROT); ++#else + int krc = vm_map_protect(pVmMap, AddrStart, AddrEnd, ProtectionFlags, FALSE); ++#endif ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + if (krc == KERN_SUCCESS) + return VINF_SUCCESS; + +@@ -860,11 +915,19 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P + + vm_offset_t pb = (vm_offset_t)pMemFreeBSD->Core.pv + ptoa(iPage); + +- struct proc *pProc = (struct proc *)pMemFreeBSD->Core.u.Lock.R0Process; +- struct vm_map *pProcMap = &pProc->p_vmspace->vm_map; +- pmap_t pPhysicalMap = vm_map_pmap(pProcMap); ++ if (pMemFreeBSD->Core.u.Mapping.R0Process != NIL_RTR0PROCESS) ++ { ++ RTHCPHYS addr; ++ IPRT_FREEBSD_SAVE_EFL_AC(); ++ struct proc *pProc = (struct proc *)pMemFreeBSD->Core.u.Lock.R0Process; ++ struct vm_map *pProcMap = &pProc->p_vmspace->vm_map; ++ pmap_t pPhysicalMap = vm_map_pmap(pProcMap); + +- return pmap_extract(pPhysicalMap, pb); ++ addr = pmap_extract(pPhysicalMap, pb); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); ++ return addr; ++ } ++ return vtophys(pb); + } + + case RTR0MEMOBJTYPE_MAPPING: +@@ -873,11 +936,15 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P + + if (pMemFreeBSD->Core.u.Mapping.R0Process != NIL_RTR0PROCESS) + { ++ RTHCPHYS addr; ++ IPRT_FREEBSD_SAVE_EFL_AC(); + struct proc *pProc = (struct proc *)pMemFreeBSD->Core.u.Mapping.R0Process; + struct vm_map *pProcMap = &pProc->p_vmspace->vm_map; + pmap_t pPhysicalMap = vm_map_pmap(pProcMap); + +- return pmap_extract(pPhysicalMap, pb); ++ addr = pmap_extract(pPhysicalMap, pb); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); ++ return addr; + } + return vtophys(pb); + } +@@ -888,9 +955,11 @@ DECLHIDDEN(RTHCPHYS) rtR0MemObjNativeGetPagePhysAddr(P + { + RTHCPHYS addr; + ++ IPRT_FREEBSD_SAVE_EFL_AC(); + VM_OBJECT_WLOCK(pMemFreeBSD->pObject); + addr = VM_PAGE_TO_PHYS(vm_page_lookup(pMemFreeBSD->pObject, iPage)); + VM_OBJECT_WUNLOCK(pMemFreeBSD->pObject); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return addr; + } + +@@ -910,7 +979,7 @@ DECLHIDDEN(int) rtR0MemObjNativeZeroInitWithoutMapping + DECLHIDDEN(int) rtR0MemObjNativeZeroInitWithoutMapping(PRTR0MEMOBJINTERNAL pMem) + { + PRTR0MEMOBJFREEBSD const pMemFreeBsd = (PRTR0MEMOBJFREEBSD)pMem; +- size_t const cPages = pMemSolaris->Core.cb >> PAGE_SHIFT; ++ size_t const cPages = atop(pMemFreeBsd->Core.cb); + size_t iPage; + for (iPage = 0; iPage < cPages; iPage++) + { diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_memuserkernel-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_memuserkernel-r0drv-freebsd.c new file mode 100644 index 000000000000..637f67bbe59a --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_memuserkernel-r0drv-freebsd.c @@ -0,0 +1,22 @@ +--- src/VBox/Runtime/r0drv/freebsd/memuserkernel-r0drv-freebsd.c.orig 2025-08-13 19:51:51 UTC ++++ src/VBox/Runtime/r0drv/freebsd/memuserkernel-r0drv-freebsd.c +@@ -46,7 +46,9 @@ RTR0DECL(int) RTR0MemUserCopyFrom(void *pvDst, RTR3PTR + + RTR0DECL(int) RTR0MemUserCopyFrom(void *pvDst, RTR3PTR R3PtrSrc, size_t cb) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + int rc = copyin((const void *)R3PtrSrc, pvDst, cb); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + if (RT_LIKELY(rc == 0)) + return VINF_SUCCESS; + return VERR_ACCESS_DENIED; +@@ -55,7 +57,9 @@ RTR0DECL(int) RTR0MemUserCopyTo(RTR3PTR R3PtrDst, void + + RTR0DECL(int) RTR0MemUserCopyTo(RTR3PTR R3PtrDst, void const *pvSrc, size_t cb) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + int rc = copyout(pvSrc, (void *)R3PtrDst, cb); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + if (RT_LIKELY(rc == 0)) + return VINF_SUCCESS; + return VERR_ACCESS_DENIED; diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_mp-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_mp-r0drv-freebsd.c new file mode 100644 index 000000000000..5548551e9ab5 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_mp-r0drv-freebsd.c @@ -0,0 +1,92 @@ +--- src/VBox/Runtime/r0drv/freebsd/mp-r0drv-freebsd.c.orig 2025-08-13 19:51:51 UTC ++++ src/VBox/Runtime/r0drv/freebsd/mp-r0drv-freebsd.c +@@ -157,7 +157,9 @@ static void rtmpOnAllFreeBSDWrapper(void *pvArg) + static void rtmpOnAllFreeBSDWrapper(void *pvArg) + { + PRTMPARGS pArgs = (PRTMPARGS)pvArg; ++ IPRT_FREEBSD_SAVE_EFL_AC(); + pArgs->pfnWorker(curcpu, pArgs->pvUser1, pArgs->pvUser2); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + } + + +@@ -169,7 +171,9 @@ RTDECL(int) RTMpOnAll(PFNRTMPWORKER pfnWorker, void *p + Args.pvUser2 = pvUser2; + Args.idCpu = NIL_RTCPUID; + Args.cHits = 0; ++ IPRT_FREEBSD_SAVE_EFL_AC(); + smp_rendezvous(NULL, rtmpOnAllFreeBSDWrapper, smp_no_rendezvous_barrier, &Args); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +@@ -185,7 +189,11 @@ static void rtmpOnOthersFreeBSDWrapper(void *pvArg) + PRTMPARGS pArgs = (PRTMPARGS)pvArg; + RTCPUID idCpu = curcpu; + if (pArgs->idCpu != idCpu) ++ { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + pArgs->pfnWorker(idCpu, pArgs->pvUser1, pArgs->pvUser2); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); ++ } + } + + +@@ -206,6 +214,7 @@ RTDECL(int) RTMpOnOthers(PFNRTMPWORKER pfnWorker, void + Args.pvUser2 = pvUser2; + Args.idCpu = RTMpCpuId(); + Args.cHits = 0; ++ IPRT_FREEBSD_SAVE_EFL_AC(); + #if __FreeBSD_version >= 700000 + # if __FreeBSD_version >= 900000 + Mask = all_cpus; +@@ -217,6 +226,7 @@ RTDECL(int) RTMpOnOthers(PFNRTMPWORKER pfnWorker, void + #else + smp_rendezvous(NULL, rtmpOnOthersFreeBSDWrapper, NULL, &Args); + #endif ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + } + return VINF_SUCCESS; + } +@@ -234,8 +244,10 @@ static void rtmpOnSpecificFreeBSDWrapper(void *pvArg) + RTCPUID idCpu = curcpu; + if (pArgs->idCpu == idCpu) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + pArgs->pfnWorker(idCpu, pArgs->pvUser1, pArgs->pvUser2); + ASMAtomicIncU32(&pArgs->cHits); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + } + } + +@@ -258,6 +270,7 @@ RTDECL(int) RTMpOnSpecific(RTCPUID idCpu, PFNRTMPWORKE + Args.pvUser2 = pvUser2; + Args.idCpu = idCpu; + Args.cHits = 0; ++ IPRT_FREEBSD_SAVE_EFL_AC(); + #if __FreeBSD_version >= 700000 + # if __FreeBSD_version >= 900000 + CPU_SETOF(idCpu, &Mask); +@@ -268,6 +281,7 @@ RTDECL(int) RTMpOnSpecific(RTCPUID idCpu, PFNRTMPWORKE + #else + smp_rendezvous(NULL, rtmpOnSpecificFreeBSDWrapper, NULL, &Args); + #endif ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return Args.cHits == 1 + ? VINF_SUCCESS + : VERR_CPU_NOT_FOUND; +@@ -297,12 +311,14 @@ RTDECL(int) RTMpPokeCpu(RTCPUID idCpu) + if (!RTMpIsCpuOnline(idCpu)) + return VERR_CPU_NOT_FOUND; + ++ IPRT_FREEBSD_SAVE_EFL_AC(); + # if __FreeBSD_version >= 900000 + CPU_SETOF(idCpu, &Mask); + # else + Mask = (cpumask_t)1 << idCpu; + # endif + smp_rendezvous_cpus(Mask, NULL, rtmpFreeBSDPokeCallback, smp_no_rendezvous_barrier, NULL); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + + return VINF_SUCCESS; + } diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_semevent-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_semevent-r0drv-freebsd.c new file mode 100644 index 000000000000..cb5deba5ce97 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_semevent-r0drv-freebsd.c @@ -0,0 +1,53 @@ +--- src/VBox/Runtime/r0drv/freebsd/semevent-r0drv-freebsd.c.orig 2025-08-13 19:51:51 UTC ++++ src/VBox/Runtime/r0drv/freebsd/semevent-r0drv-freebsd.c +@@ -111,7 +111,9 @@ RTDECL(int) RTSemEventCreateEx(PRTSEMEVENT phEventSem + Assert(!(fFlags & RTSEMEVENT_FLAGS_BOOTSTRAP_HACK) || (fFlags & RTSEMEVENT_FLAGS_NO_LOCK_VAL)); + AssertPtrReturn(phEventSem, VERR_INVALID_POINTER); + ++ IPRT_FREEBSD_SAVE_EFL_AC(); + PRTSEMEVENTINTERNAL pThis = (PRTSEMEVENTINTERNAL)RTMemAllocZ(sizeof(*pThis)); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + if (!pThis) + return VERR_NO_MEMORY; + +@@ -162,10 +164,12 @@ RTDECL(int) RTSemEventDestroy(RTSEMEVENT hEventSem) + /* + * Invalidate it and signal the object just in case. + */ ++ IPRT_FREEBSD_SAVE_EFL_AC(); + ASMAtomicWriteU32(&pThis->u32Magic, ~RTSEMEVENT_MAGIC); + ASMAtomicWriteU32(&pThis->fState, 0); + rtR0SemBsdBroadcast(pThis); + rtR0SemEventBsdRelease(pThis); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +@@ -183,9 +187,11 @@ RTDECL(int) RTSemEventSignal(RTSEMEVENT hEventSem) + /* + * Signal the event object. + */ ++ IPRT_FREEBSD_SAVE_EFL_AC(); + ASMAtomicWriteU32(&pThis->fState, 1); + rtR0SemBsdSignal(pThis); + rtR0SemEventBsdRelease(pThis); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +@@ -209,6 +215,7 @@ static int rtR0SemEventWait(PRTSEMEVENTINTERNAL pThis, + AssertPtrReturn(pThis, VERR_INVALID_PARAMETER); + AssertMsgReturn(pThis->u32Magic == RTSEMEVENT_MAGIC, ("%p u32Magic=%RX32\n", pThis, pThis->u32Magic), VERR_INVALID_PARAMETER); + AssertReturn(RTSEMWAIT_FLAGS_ARE_VALID(fFlags), VERR_INVALID_PARAMETER); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + rtR0SemEventBsdRetain(pThis); + + /* +@@ -258,6 +265,7 @@ static int rtR0SemEventWait(PRTSEMEVENTINTERNAL pThis, + } + + rtR0SemEventBsdRelease(pThis); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return rc; + } + diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_semeventmulti-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_semeventmulti-r0drv-freebsd.c new file mode 100644 index 000000000000..dab1b22fcd36 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_semeventmulti-r0drv-freebsd.c @@ -0,0 +1,73 @@ +--- src/VBox/Runtime/r0drv/freebsd/semeventmulti-r0drv-freebsd.c.orig 2025-08-13 19:51:51 UTC ++++ src/VBox/Runtime/r0drv/freebsd/semeventmulti-r0drv-freebsd.c +@@ -130,7 +130,9 @@ RTDECL(int) RTSemEventMultiCreateEx(PRTSEMEVENTMULTI + PRTSEMEVENTMULTIINTERNAL pThis; + + AssertReturn(!(fFlags & ~RTSEMEVENTMULTI_FLAGS_NO_LOCK_VAL), VERR_INVALID_PARAMETER); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + pThis = (PRTSEMEVENTMULTIINTERNAL)RTMemAlloc(sizeof(*pThis)); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + if (pThis) + { + pThis->u32Magic = RTSEMEVENTMULTI_MAGIC; +@@ -186,10 +188,12 @@ RTDECL(int) RTSemEventMultiDestroy(RTSEMEVENTMULTI hE + /* + * Invalidate it and signal the object just in case. + */ ++ IPRT_FREEBSD_SAVE_EFL_AC(); + ASMAtomicWriteU32(&pThis->u32Magic, ~RTSEMEVENTMULTI_MAGIC); + ASMAtomicAndU32(&pThis->fStateAndGen, RTSEMEVENTMULTIBSD_GEN_MASK); + rtR0SemBsdBroadcast(pThis); + rtR0SemEventMultiBsdRelease(pThis); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +@@ -198,6 +202,7 @@ RTDECL(int) RTSemEventMultiSignal(RTSEMEVENTMULTI hEv + { + uint32_t fNew; + uint32_t fOld; ++ IPRT_FREEBSD_SAVE_EFL_AC(); + + /* + * Validate input. +@@ -224,12 +229,15 @@ RTDECL(int) RTSemEventMultiSignal(RTSEMEVENTMULTI hEv + + rtR0SemBsdBroadcast(pThis); + rtR0SemEventMultiBsdRelease(pThis); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + + + RTDECL(int) RTSemEventMultiReset(RTSEMEVENTMULTI hEventMultiSem) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); ++ + /* + * Validate input. + */ +@@ -246,6 +254,7 @@ RTDECL(int) RTSemEventMultiReset(RTSEMEVENTMULTI hEve + ASMAtomicAndU32(&pThis->fStateAndGen, ~RTSEMEVENTMULTIBSD_STATE_MASK); + + rtR0SemEventMultiBsdRelease(pThis); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +@@ -262,6 +271,7 @@ static int rtR0SemEventMultiBsdWait(PRTSEMEVENTMULTIIN + static int rtR0SemEventMultiBsdWait(PRTSEMEVENTMULTIINTERNAL pThis, uint32_t fFlags, uint64_t uTimeout, + PCRTLOCKVALSRCPOS pSrcPos) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + uint32_t fOrgStateAndGen; + int rc; + +@@ -321,6 +331,7 @@ static int rtR0SemEventMultiBsdWait(PRTSEMEVENTMULTIIN + } + + rtR0SemEventMultiBsdRelease(pThis); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return rc; + } + diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_semfastmutex-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_semfastmutex-r0drv-freebsd.c new file mode 100644 index 000000000000..21c03b87326e --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_semfastmutex-r0drv-freebsd.c @@ -0,0 +1,59 @@ +--- src/VBox/Runtime/r0drv/freebsd/semfastmutex-r0drv-freebsd.c.orig 2025-08-13 19:51:51 UTC ++++ src/VBox/Runtime/r0drv/freebsd/semfastmutex-r0drv-freebsd.c +@@ -96,6 +96,7 @@ RTDECL(int) RTSemFastMutexCreate(PRTSEMFASTMUTEX phFa + { + AssertCompile(sizeof(RTSEMFASTMUTEXINTERNAL) > sizeof(void *)); + AssertPtrReturn(phFastMtx, VERR_INVALID_POINTER); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + + PRTSEMFASTMUTEXINTERNAL pThis = (PRTSEMFASTMUTEXINTERNAL)RTMemAllocZ(sizeof(*pThis)); + if (pThis) +@@ -104,8 +105,10 @@ RTDECL(int) RTSemFastMutexCreate(PRTSEMFASTMUTEX phFa + sx_init_flags(&pThis->SxLock, "IPRT Fast Mutex Semaphore", SX_DUPOK); + + *phFastMtx = pThis; ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; + } + +@@ -117,11 +120,13 @@ RTDECL(int) RTSemFastMutexDestroy(RTSEMFASTMUTEX hFas + return VINF_SUCCESS; + AssertPtrReturn(pThis, VERR_INVALID_HANDLE); + AssertMsgReturn(pThis->u32Magic == RTSEMFASTMUTEX_MAGIC, ("%p: u32Magic=%RX32\n", pThis, pThis->u32Magic), VERR_INVALID_HANDLE); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + + ASMAtomicWriteU32(&pThis->u32Magic, RTSEMFASTMUTEX_MAGIC_DEAD); + sx_destroy(&pThis->SxLock); + RTMemFree(pThis); + ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +@@ -131,8 +136,11 @@ RTDECL(int) RTSemFastMutexRequest(RTSEMFASTMUTEX hFas + PRTSEMFASTMUTEXINTERNAL pThis = hFastMtx; + AssertPtrReturn(pThis, VERR_INVALID_HANDLE); + AssertMsgReturn(pThis->u32Magic == RTSEMFASTMUTEX_MAGIC, ("%p: u32Magic=%RX32\n", pThis, pThis->u32Magic), VERR_INVALID_HANDLE); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + + sx_xlock(&pThis->SxLock); ++ ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +@@ -142,8 +150,11 @@ RTDECL(int) RTSemFastMutexRelease(RTSEMFASTMUTEX hFas + PRTSEMFASTMUTEXINTERNAL pThis = hFastMtx; + AssertPtrReturn(pThis, VERR_INVALID_HANDLE); + AssertMsgReturn(pThis->u32Magic == RTSEMFASTMUTEX_MAGIC, ("%p: u32Magic=%RX32\n", pThis, pThis->u32Magic), VERR_INVALID_HANDLE); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + + sx_xunlock(&pThis->SxLock); ++ ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_semmutex-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_semmutex-r0drv-freebsd.c new file mode 100644 index 000000000000..048d345398eb --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_semmutex-r0drv-freebsd.c @@ -0,0 +1,80 @@ +--- src/VBox/Runtime/r0drv/freebsd/semmutex-r0drv-freebsd.c.orig 2025-08-13 19:51:51 UTC ++++ src/VBox/Runtime/r0drv/freebsd/semmutex-r0drv-freebsd.c +@@ -72,6 +72,7 @@ RTDECL(int) RTSemMutexCreate(PRTSEMMUTEX phMutexSem) + { + AssertCompile(sizeof(RTSEMMUTEXINTERNAL) > sizeof(void *)); + AssertPtrReturn(phMutexSem, VERR_INVALID_POINTER); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + + PRTSEMMUTEXINTERNAL pThis = (PRTSEMMUTEXINTERNAL)RTMemAllocZ(sizeof(*pThis)); + if (pThis) +@@ -80,8 +81,10 @@ RTDECL(int) RTSemMutexCreate(PRTSEMMUTEX phMutexSem) + sx_init_flags(&pThis->SxLock, "IPRT Mutex Semaphore", SX_RECURSE); + + *phMutexSem = pThis; ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VERR_NO_MEMORY; + } + +@@ -93,12 +96,14 @@ RTDECL(int) RTSemMutexDestroy(RTSEMMUTEX hMutexSem) + return VINF_SUCCESS; + AssertPtrReturn(pThis, VERR_INVALID_HANDLE); + AssertMsgReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, ("%p: u32Magic=%RX32\n", pThis, pThis->u32Magic), VERR_INVALID_HANDLE); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + + AssertReturn(ASMAtomicCmpXchgU32(&pThis->u32Magic, RTSEMMUTEX_MAGIC_DEAD, RTSEMMUTEX_MAGIC), VERR_INVALID_HANDLE); + + sx_destroy(&pThis->SxLock); + RTMemFree(pThis); + ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +@@ -109,6 +114,7 @@ RTDECL(int) RTSemMutexRequest(RTSEMMUTEX hMutexSem, R + int rc; + AssertPtrReturn(pThis, VERR_INVALID_HANDLE); + AssertMsgReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, ("%p: u32Magic=%RX32\n", pThis, pThis->u32Magic), VERR_INVALID_HANDLE); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + + if (cMillies == RT_INDEFINITE_WAIT) + { +@@ -143,6 +149,7 @@ RTDECL(int) RTSemMutexRequest(RTSEMMUTEX hMutexSem, R + } while (RTTimeSystemMilliTS() - StartTS < cMillies); + } + ++ IPRT_FREEBSD_RESTORE_EFL_ONLY_AC(); + return VINF_SUCCESS; + } + +@@ -159,6 +166,7 @@ RTDECL(int) RTSemMutexRequestNoResume(RTSEMMUTEX hMut + int rc; + AssertPtrReturn(pThis, VERR_INVALID_HANDLE); + AssertMsgReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, ("%p: u32Magic=%RX32\n", pThis, pThis->u32Magic), VERR_INVALID_HANDLE); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + + if (cMillies == RT_INDEFINITE_WAIT) + { +@@ -196,6 +204,7 @@ RTDECL(int) RTSemMutexRequestNoResume(RTSEMMUTEX hMut + } while (RTTimeSystemMilliTS() - StartTS < cMillies); + } + ++ IPRT_FREEBSD_RESTORE_EFL_ONLY_AC(); + return VINF_SUCCESS; + } + +@@ -211,8 +220,11 @@ RTDECL(int) RTSemMutexRelease(RTSEMMUTEX hMutexSem) + PRTSEMMUTEXINTERNAL pThis = hMutexSem; + AssertPtrReturn(pThis, VERR_INVALID_HANDLE); + AssertMsgReturn(pThis->u32Magic == RTSEMMUTEX_MAGIC, ("%p: u32Magic=%RX32\n", pThis, pThis->u32Magic), VERR_INVALID_HANDLE); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + + sx_xunlock(&pThis->SxLock); ++ ++ IPRT_FREEBSD_RESTORE_EFL_ONLY_AC(); + return VINF_SUCCESS; + } + diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_spinlock-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_spinlock-r0drv-freebsd.c new file mode 100644 index 000000000000..442c6e1c243d --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_spinlock-r0drv-freebsd.c @@ -0,0 +1,30 @@ +--- src/VBox/Runtime/r0drv/freebsd/spinlock-r0drv-freebsd.c.orig 2025-08-13 19:51:51 UTC ++++ src/VBox/Runtime/r0drv/freebsd/spinlock-r0drv-freebsd.c +@@ -116,7 +116,9 @@ RTDECL(int) RTSpinlockCreate(PRTSPINLOCK pSpinlock, u + * Allocate. + */ + AssertCompile(sizeof(RTSPINLOCKINTERNAL) > sizeof(void *)); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + PRTSPINLOCKINTERNAL pThis = (PRTSPINLOCKINTERNAL)RTMemAllocZ(sizeof(*pThis)); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + if (!pThis) + return VERR_NO_MEMORY; + +@@ -150,7 +152,9 @@ RTDECL(int) RTSpinlockDestroy(RTSPINLOCK Spinlock) + * Make the lock invalid and release the memory. + */ + ASMAtomicIncU32(&pThis->u32Magic); ++ IPRT_FREEBSD_SAVE_EFL_AC(); + RTMemFree(pThis); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +@@ -176,6 +180,7 @@ RTDECL(void) RTSpinlockAcquire(RTSPINLOCK Spinlock) + { + RT_ASSERT_PREEMPT_CPUID_SPIN_ACQUIRED(pThis); + pThis->fIntSaved = fIntSaved; ++ IPRT_FREEBSD_RESTORE_EFL_ONLY_AC_EX(fIntSaved); + return; + } + if (--c <= 0) diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_the-freebsd-kernel.h b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_the-freebsd-kernel.h new file mode 100644 index 000000000000..c783814425f5 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_the-freebsd-kernel.h @@ -0,0 +1,48 @@ +--- src/VBox/Runtime/r0drv/freebsd/the-freebsd-kernel.h.orig 2025-04-14 17:59:14 UTC ++++ src/VBox/Runtime/r0drv/freebsd/the-freebsd-kernel.h +@@ -97,6 +97,7 @@ + #include <sys/smp.h> + #include <sys/sleepqueue.h> + #include <sys/sx.h> ++#include <sys/vmmeter.h> /* vm_cnt */ + #include <vm/vm.h> + #include <vm/pmap.h> /* for vtophys */ + #include <vm/vm_map.h> +@@ -104,10 +105,11 @@ + #include <vm/vm_kern.h> + #include <vm/vm_param.h> /* KERN_SUCCESS ++ */ + #include <vm/vm_page.h> ++#include <vm/vm_pager.h> + #include <vm/vm_phys.h> /* vm_phys_alloc_* */ + #include <vm/vm_extern.h> /* kmem_alloc_attr */ + #include <vm/vm_pageout.h> /* vm_contig_grow_cache */ +-#include <sys/vmmeter.h> /* cnt */ ++#include <vm/vm_radix.h> + #include <sys/resourcevar.h> + #include <machine/cpu.h> + +@@ -165,6 +167,24 @@ + */ + #if 0 /** @todo Not available yet. */ + # define USE_KMEM_ALLOC_PROT ++#endif ++ ++/** ++ * Macros for preserving EFLAGS.AC (despair / paranoid) ++ */ ++#if __FreeBSD_version >= 1200076 && defined(RT_ARCH_AMD64) ++# include <iprt/asm-amd64-x86.h> ++# include <iprt/x86.h> ++# define IPRT_FREEBSD_SAVE_EFL_AC() RTCCUINTREG const fSavedEfl = ASMGetFlags() ++# define IPRT_FREEBSD_RESTORE_EFL_AC() ASMSetFlags(fSavedEfl) ++# define IPRT_FREEBSD_RESTORE_EFL_ONLY_AC() ASMChangeFlags(~X86_EFL_AC, fSavedEfl & X86_EFL_AC) ++# define IPRT_FREEBSD_RESTORE_EFL_ONLY_AC_EX(f) ASMChangeFlags(~X86_EFL_AC, (f) & X86_EFL_AC) ++# define VBOX_WITH_EFLAGS_AC_SET_IN_VBOXDRV ++#else ++# define IPRT_FREEBSD_SAVE_EFL_AC() do { } while (0) ++# define IPRT_FREEBSD_RESTORE_EFL_AC() do { } while (0) ++# define IPRT_FREEBSD_RESTORE_EFL_ONLY_AC() do { } while (0) ++# define IPRT_FREEBSD_RESTORE_EFL_ONLY_AC_EX(f) do { } while (0) + #endif + + #endif /* !IPRT_INCLUDED_SRC_r0drv_freebsd_the_freebsd_kernel_h */ diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_thread-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_thread-r0drv-freebsd.c new file mode 100644 index 000000000000..73a0eab649ad --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_thread-r0drv-freebsd.c @@ -0,0 +1,91 @@ +--- src/VBox/Runtime/r0drv/freebsd/thread-r0drv-freebsd.c.orig 2025-08-13 19:51:51 UTC ++++ src/VBox/Runtime/r0drv/freebsd/thread-r0drv-freebsd.c +@@ -59,7 +59,6 @@ static int rtR0ThreadFbsdSleepCommon(RTMSINTERVAL cMil + static int rtR0ThreadFbsdSleepCommon(RTMSINTERVAL cMillies) + { + int rc; +- int cTicks; + + /* + * 0 ms sleep -> yield. +@@ -70,30 +69,34 @@ static int rtR0ThreadFbsdSleepCommon(RTMSINTERVAL cMil + return VINF_SUCCESS; + } + ++ IPRT_FREEBSD_SAVE_EFL_AC(); ++ + /* + * Translate milliseconds into ticks and go to sleep. + */ + if (cMillies != RT_INDEFINITE_WAIT) + { +- if (hz == 1000) +- cTicks = cMillies; +- else if (hz == 100) +- cTicks = cMillies / 10; +- else +- { +- int64_t cTicks64 = ((uint64_t)cMillies * hz) / 1000; +- cTicks = (int)cTicks64; +- if (cTicks != cTicks64) +- cTicks = INT_MAX; +- } ++ struct timeval tv; ++ ++ tv.tv_sec = cMillies / 1000; ++ tv.tv_usec = cMillies * 1000; ++ ++ rc = tsleep_sbt((void *)RTThreadSleep, ++ PZERO | PCATCH, ++ "iprtsl", /* max 6 chars */ ++ tvtosbt(tv), ++ 0, ++ C_ABSOLUTE); + } + else +- cTicks = 0; /* requires giant lock! */ +- +- rc = tsleep((void *)RTThreadSleep, +- PZERO | PCATCH, +- "iprtsl", /* max 6 chars */ +- cTicks); ++ { ++ /* requires giant lock! */ ++ rc = tsleep((void *)RTThreadSleep, ++ PZERO | PCATCH, ++ "iprts0", /* max 6 chars */ ++ 0); ++ } ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + switch (rc) + { + case 0: +@@ -124,11 +127,13 @@ RTDECL(bool) RTThreadYield(void) + + RTDECL(bool) RTThreadYield(void) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + #if __FreeBSD_version >= 900032 + kern_yield(curthread->td_user_pri); + #else + uio_yield(); + #endif ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return false; /** @todo figure this one ... */ + } + +@@ -177,12 +182,14 @@ RTDECL(void) RTThreadPreemptRestore(PRTTHREADPREEMPTST + + RTDECL(void) RTThreadPreemptRestore(PRTTHREADPREEMPTSTATE pState) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); /* paranoia */ + AssertPtr(pState); + Assert(pState->u32Reserved == 42); + pState->u32Reserved = 0; + + RT_ASSERT_PREEMPT_CPUID_RESTORE(pState); + critical_exit(); ++ IPRT_FREEBSD_RESTORE_EFL_ONLY_AC(); /* paranoia */ + } + + diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_thread2-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_thread2-r0drv-freebsd.c new file mode 100644 index 000000000000..2af30cf1e27a --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_thread2-r0drv-freebsd.c @@ -0,0 +1,35 @@ +--- src/VBox/Runtime/r0drv/freebsd/thread2-r0drv-freebsd.c.orig 2025-08-13 19:51:51 UTC ++++ src/VBox/Runtime/r0drv/freebsd/thread2-r0drv-freebsd.c +@@ -104,6 +104,8 @@ DECLHIDDEN(int) rtThreadNativeSetPriority(PRTTHREADINT + return VERR_INVALID_PARAMETER; + } + ++ IPRT_FREEBSD_SAVE_EFL_AC(); ++ + #if __FreeBSD_version < 700000 + /* Do like they're doing in subr_ntoskrnl.c... */ + mtx_lock_spin(&sched_lock); +@@ -120,6 +122,7 @@ DECLHIDDEN(int) rtThreadNativeSetPriority(PRTTHREADINT + thread_unlock(curthread); + #endif + ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +@@ -169,6 +172,7 @@ DECLHIDDEN(int) rtThreadNativeCreate(PRTTHREADINT pThr + + DECLHIDDEN(int) rtThreadNativeCreate(PRTTHREADINT pThreadInt, PRTNATIVETHREAD pNativeThread) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); + int rc; + struct proc *pProc; + +@@ -184,6 +188,7 @@ DECLHIDDEN(int) rtThreadNativeCreate(PRTTHREADINT pThr + } + else + rc = RTErrConvertFromErrno(rc); ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return rc; + } + diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_time-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_time-r0drv-freebsd.c new file mode 100644 index 000000000000..cf453e69a1f9 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_time-r0drv-freebsd.c @@ -0,0 +1,43 @@ +--- src/VBox/Runtime/r0drv/freebsd/time-r0drv-freebsd.c.orig 2025-08-13 19:51:51 UTC ++++ src/VBox/Runtime/r0drv/freebsd/time-r0drv-freebsd.c +@@ -74,16 +74,23 @@ RTDECL(uint64_t) RTTimeNanoTS(void) + + RTDECL(uint64_t) RTTimeNanoTS(void) + { +- struct timespec tsp; +- nanouptime(&tsp); +- return tsp.tv_sec * RT_NS_1SEC_64 +- + tsp.tv_nsec; ++ struct bintime bt; ++ uint64_t ns; ++ binuptime(&bt); ++ ns = RT_NS_1SEC_64 * bt.sec; ++ ns += (RT_NS_1SEC_64 * (uint32_t)(bt.frac >> 32)) >> 32; ++ return ns; + } + + + RTDECL(uint64_t) RTTimeMilliTS(void) + { +- return RTTimeNanoTS() / RT_NS_1MS; ++ struct bintime bt; ++ uint64_t ms; ++ binuptime(&bt); ++ ms = RT_MS_1SEC_64 * bt.sec; ++ ms += (RT_MS_1SEC_64 * (uint32_t)(bt.frac >> 32)) >> 32; ++ return ms; + } + + +@@ -101,8 +108,7 @@ RTDECL(PRTTIMESPEC) RTTimeNow(PRTTIMESPEC pTime) + + RTDECL(PRTTIMESPEC) RTTimeNow(PRTTIMESPEC pTime) + { +- struct timespec tsp; +- nanotime(&tsp); +- return RTTimeSpecSetTimespec(pTime, &tsp); ++ struct timespec ts; ++ nanotime(&ts); ++ return RTTimeSpecSetTimespec(pTime, &ts); + } +- diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_timer-r0drv-freebsd.c b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_timer-r0drv-freebsd.c new file mode 100644 index 000000000000..537199743da8 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r0drv_freebsd_timer-r0drv-freebsd.c @@ -0,0 +1,68 @@ +--- src/VBox/Runtime/r0drv/freebsd/timer-r0drv-freebsd.c.orig 2025-08-13 19:51:51 UTC ++++ src/VBox/Runtime/r0drv/freebsd/timer-r0drv-freebsd.c +@@ -126,6 +126,7 @@ RTDECL(int) RTTimerCreateEx(PRTTIMER *ppTimer, uint64_ + RTDECL(int) RTTimerCreateEx(PRTTIMER *ppTimer, uint64_t u64NanoInterval, uint32_t fFlags, PFNRTTIMER pfnTimer, void *pvUser) + { + *ppTimer = NULL; ++ IPRT_FREEBSD_SAVE_EFL_AC(); + + /* + * Validate flags. +@@ -155,6 +156,7 @@ RTDECL(int) RTTimerCreateEx(PRTTIMER *ppTimer, uint64_ + callout_init(&pTimer->Callout, CALLOUT_MPSAFE); + + *ppTimer = pTimer; ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +@@ -175,6 +177,8 @@ RTDECL(int) RTTimerDestroy(PRTTIMER pTimer) + + RTDECL(int) RTTimerDestroy(PRTTIMER pTimer) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); ++ + /* It's ok to pass NULL pointer. */ + if (pTimer == /*NIL_RTTIMER*/ NULL) + return VINF_SUCCESS; +@@ -187,6 +191,8 @@ RTDECL(int) RTTimerDestroy(PRTTIMER pTimer) + pTimer->u32Magic++; + callout_stop(&pTimer->Callout); + RTMemFree(pTimer); ++ ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + +@@ -194,6 +200,7 @@ RTDECL(int) RTTimerStart(PRTTIMER pTimer, uint64_t u64 + RTDECL(int) RTTimerStart(PRTTIMER pTimer, uint64_t u64First) + { + struct timeval tv; ++ IPRT_FREEBSD_SAVE_EFL_AC(); + + if (!rtTimerIsValid(pTimer)) + return VERR_INVALID_HANDLE; +@@ -217,12 +224,15 @@ RTDECL(int) RTTimerStart(PRTTIMER pTimer, uint64_t u64 + tv.tv_usec = (u64First % 1000000000) / 1000; + callout_reset(&pTimer->Callout, tvtohz(&tv), rtTimerFreeBSDCallback, pTimer); + ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + + + RTDECL(int) RTTimerStop(PRTTIMER pTimer) + { ++ IPRT_FREEBSD_SAVE_EFL_AC(); ++ + if (!rtTimerIsValid(pTimer)) + return VERR_INVALID_HANDLE; + if (pTimer->fSuspended) +@@ -234,6 +244,7 @@ RTDECL(int) RTTimerStop(PRTTIMER pTimer) + pTimer->fSuspended = true; + callout_stop(&pTimer->Callout); + ++ IPRT_FREEBSD_RESTORE_EFL_AC(); + return VINF_SUCCESS; + } + diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r3_freebsd_systemmem-freebsd.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r3_freebsd_systemmem-freebsd.cpp new file mode 100644 index 000000000000..87ae993446a3 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r3_freebsd_systemmem-freebsd.cpp @@ -0,0 +1,39 @@ +--- src/VBox/Runtime/r3/freebsd/systemmem-freebsd.cpp.orig 2025-04-14 17:59:18 UTC ++++ src/VBox/Runtime/r3/freebsd/systemmem-freebsd.cpp +@@ -75,7 +75,6 @@ RTDECL(int) RTSystemQueryAvailableRam(uint64_t *pcb) + u_int cPagesMemFree = 0; + u_int cPagesMemInactive = 0; + u_int cPagesMemCached = 0; +- u_int cPagesMemUsed = 0; + int cbPage = 0; + size_t cbParameter; + int cProcessed = 0; +@@ -83,25 +82,23 @@ RTDECL(int) RTSystemQueryAvailableRam(uint64_t *pcb) + cbParameter = sizeof(cPagesMemFree); + if (sysctlbyname("vm.stats.vm.v_free_count", &cPagesMemFree, &cbParameter, NULL, 0)) + rc = RTErrConvertFromErrno(errno); +- cbParameter = sizeof(cPagesMemUsed); +- if ( RT_SUCCESS(rc) +- && sysctlbyname("vm.stats.vm.v_active_count", &cPagesMemUsed, &cbParameter, NULL, 0)) +- rc = RTErrConvertFromErrno(errno); + cbParameter = sizeof(cPagesMemInactive); + if ( RT_SUCCESS(rc) + && sysctlbyname("vm.stats.vm.v_inactive_count", &cPagesMemInactive, &cbParameter, NULL, 0)) + rc = RTErrConvertFromErrno(errno); ++#if __FreeBSD_version < 1200016 + cbParameter = sizeof(cPagesMemCached); + if ( RT_SUCCESS(rc) + && sysctlbyname("vm.stats.vm.v_cache_count", &cPagesMemCached, &cbParameter, NULL, 0)) + rc = RTErrConvertFromErrno(errno); ++#endif + cbParameter = sizeof(cbPage); + if ( RT_SUCCESS(rc) + && sysctlbyname("hw.pagesize", &cbPage, &cbParameter, NULL, 0)) + rc = RTErrConvertFromErrno(errno); + + if (RT_SUCCESS(rc)) +- *pcb = (cPagesMemFree + cPagesMemInactive + cPagesMemCached ) * cbPage; ++ *pcb = ((uint64_t)cPagesMemFree + cPagesMemInactive + cPagesMemCached) * cbPage; + + return rc; + } diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r3_posix_process-creation-posix.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r3_posix_process-creation-posix.cpp new file mode 100644 index 000000000000..06bfba5d3dac --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_Runtime_r3_posix_process-creation-posix.cpp @@ -0,0 +1,38 @@ +--- src/VBox/Runtime/r3/posix/process-creation-posix.cpp.orig 2025-08-13 19:51:58 UTC ++++ src/VBox/Runtime/r3/posix/process-creation-posix.cpp +@@ -40,7 +40,7 @@ + *********************************************************************************************************************************/ + #define LOG_GROUP RTLOGGROUP_PROCESS + #include <iprt/cdefs.h> +-#ifdef RT_OS_LINUX ++#if defined(RT_OS_LINUX) || defined(RT_OS_FREEBSD) + # define IPRT_WITH_DYNAMIC_CRYPT_R + #endif + #if (defined(RT_OS_LINUX) || defined(RT_OS_OS2)) && !defined(_GNU_SOURCE) +@@ -85,7 +85,7 @@ + # include <xlocale.h> /* for newlocale() */ + #endif + +-#if defined(RT_OS_LINUX) || defined(RT_OS_OS2) ++#if defined(RT_OS_LINUX) || defined(RT_OS_OS2) || defined(RT_OS_FREEBSD) + /* While Solaris has posix_spawn() of course we don't want to use it as + * we need to have the child in a different process contract, no matter + * whether it is started detached or not. */ +@@ -174,7 +174,7 @@ + # define IPRT_LIBPAM_FILE_3 "libpam.1.dylib" + # define IPRT_LIBPAM_FILE_3_FIRST_VER 0 + # define IPRT_LIBPAM_FILE_3_END_VER 0 +-# elif RT_OS_LINUX ++# elif RT_OS_LINUX || RT_OS_FREEBSD + # define IPRT_LIBPAM_FILE_1 "libpam.so.0" + # define IPRT_LIBPAM_FILE_1_FIRST_VER 0 + # define IPRT_LIBPAM_FILE_1_END_VER 0 +@@ -681,7 +681,7 @@ static int rtCheckCredentials(const char *pszUser, con + if (pPw->pw_passwd && *pPw->pw_passwd) + # endif + { +-# if defined(RT_OS_LINUX) || defined(RT_OS_OS2) ++# if defined(RT_OS_LINUX) || defined(RT_OS_OS2) || defined(RT_OS_FREEBSD) + # ifdef IPRT_WITH_DYNAMIC_CRYPT_R + size_t const cbCryptData = RT_MAX(sizeof(struct crypt_data) * 2, _256K); + # else diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_VMM_Config.kmk b/emulators/virtualbox-ose-72/files/patch-src_VBox_VMM_Config.kmk new file mode 100644 index 000000000000..cb294d7cd898 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_VMM_Config.kmk @@ -0,0 +1,11 @@ +--- src/VBox/VMM/Config.kmk.orig 2025-08-13 19:52:06 UTC ++++ src/VBox/VMM/Config.kmk +@@ -133,7 +133,7 @@ endif + VMM_COMMON_DEFS += VBOX_WITH_NATIVE_NEM VBOX_WITH_NEM_R0 + endif + endif +-if1of ($(KBUILD_TARGET), freebsd linux solaris) # Hosts that implements SUPR0HCPhysToVirt. ++if1of ($(KBUILD_TARGET), linux solaris) # Hosts that implements SUPR0HCPhysToVirt. + VMM_COMMON_DEFS += VBOX_WITH_LINEAR_HOST_PHYS_MEM + endif + diff --git a/emulators/virtualbox-ose-72/files/patch-src_VBox_VMM_VMMR3_PDMAsyncCompletionFileNormal.cpp b/emulators/virtualbox-ose-72/files/patch-src_VBox_VMM_VMMR3_PDMAsyncCompletionFileNormal.cpp new file mode 100644 index 000000000000..b460847d13f0 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_VBox_VMM_VMMR3_PDMAsyncCompletionFileNormal.cpp @@ -0,0 +1,59 @@ +--- src/VBox/VMM/VMMR3/PDMAsyncCompletionFileNormal.cpp.orig 2025-08-13 19:52:13 UTC ++++ src/VBox/VMM/VMMR3/PDMAsyncCompletionFileNormal.cpp +@@ -37,6 +37,13 @@ + #include <iprt/string.h> + #include <iprt/assert.h> + #include <VBox/log.h> ++/* TBR: we need a complicated crawl through the data structure to get the AIO system limits ++ to check when considering growing the number of active AIO requests.... */ ++/* We need the PDMInternal *before* the UVM, or it isn't visible afterwards. (src/VBox/VMM/include/PDMInternal.h) */ ++#include <PDMInternal.h> ++#include <VBox/vmm/uvm.h> ++#include <VBox/vmm/vm.h> ++/* TBR: end of extra includes. */ + + #include "PDMAsyncCompletionFileInternal.h" + +@@ -1119,8 +1126,40 @@ static int pdmacFileAioMgrNormalProcessTaskList(PPDMAC + */ + pdmacFileAioMgrNormalBalanceLoad(pAioMgr); + #else +- /* Grow the I/O manager */ +- pAioMgr->enmState = PDMACEPFILEMGRSTATE_GROWING; ++ /* TBR: Check the global AIO system limit before growing. ++ This is the complicateds crawl through the data structure mentioned ++ near the start of this file. ++ There HAS to be a better way and better time to get this limit! */ ++ PPDMASYNCCOMPLETIONEPCLASS pEpClass = NULL; ++ PCPDMASYNCCOMPLETIONEPCLASSOPS pEndpointOps = NULL; ++ PDMASYNCCOMPLETIONEPCLASSTYPE enmClassType; ++ PPDMASYNCCOMPLETIONEPCLASSFILE pEpClassFile = NULL; ++ PVM pVM = NULL; ++ PUVM pUVM = NULL; ++ unsigned int aio_system_reqests_max = RTFILEAIO_UNLIMITED_REQS; ++ pEpClass = pEndpoint->Core.pEpClass; ++ AssertMsg((NULL != pEpClass),("ep->class is NULL")); ++ pEndpointOps = pEpClass->pEndpointOps; ++ AssertMsg((NULL != pEndpointOps),("ep->class->ops is NULL")); ++ enmClassType = pEndpointOps->enmClassType; ++ AssertMsg((PDMASYNCCOMPLETIONEPCLASSTYPE_FILE == enmClassType), ++ ("ep->class->ops->type != PDMASYNCCOMPLETIONEPCLASSTYPE_FILE")); ++ pVM = pEpClass->pVM; ++ AssertMsg((NULL != pVM),("ep->class->VM is NULL")); ++ pUVM = pVM->pUVM; ++ AssertMsg((NULL != pUVM),("ep->class->VM->UVM is NULL")); ++ pEpClassFile = (PPDMASYNCCOMPLETIONEPCLASSFILE) (pUVM->pdm.s.apAsyncCompletionEndpointClass[enmClassType]); ++ AssertMsg((NULL != pEpClassFile),("ep->class->VM->UVM->pdn[globals] is NULL")); ++ aio_system_reqests_max = pEpClassFile->cReqsOutstandingMax; ++#if 0 ++ /* A one time check during development to verify getting the right number. */ ++ AssertMsg((256 != aio_system_reqests_max), ++ ("aio_system_reqests_max != 256 (val=%u)",aio_system_reqests_max)); ++#endif ++ if (RT_UNLIKELY( aio_system_reqests_max == RTFILEAIO_UNLIMITED_REQS ++ || (pAioMgr->cRequestsActiveMax+PDMACEPFILEMGR_REQS_STEP) <= aio_system_reqests_max)) ++ /* Grow the I/O manager */ ++ pAioMgr->enmState = PDMACEPFILEMGRSTATE_GROWING; + #endif + } + } diff --git a/emulators/virtualbox-ose-72/files/patch-src_libs_xpcom18a4_Makefile.kmk b/emulators/virtualbox-ose-72/files/patch-src_libs_xpcom18a4_Makefile.kmk new file mode 100644 index 000000000000..95f5972ce7f8 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_libs_xpcom18a4_Makefile.kmk @@ -0,0 +1,11 @@ +--- src/libs/xpcom18a4/Makefile.kmk.orig 2025-08-13 19:56:45 UTC ++++ src/libs/xpcom18a4/Makefile.kmk +@@ -601,6 +601,8 @@ VBoxXPCOM_LIBS = \ + $(VBox-xpcom-proxy_1_TARGET) \ + $(VBox-xpcom-nspr_1_TARGET) \ + $(VBoxXPCOMGlue_s_1_TARGET) ++VBoxXPCOM_LIBS.freebsd = \ ++ pthread + VBoxXPCOM_LIBS.linux = \ + pthread dl + diff --git a/emulators/virtualbox-ose-72/files/patch-src_libs_xpcom18a4_nsprpub_pr_src_pthreads_ptsynch.c b/emulators/virtualbox-ose-72/files/patch-src_libs_xpcom18a4_nsprpub_pr_src_pthreads_ptsynch.c new file mode 100644 index 000000000000..6bd41290d6ee --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_libs_xpcom18a4_nsprpub_pr_src_pthreads_ptsynch.c @@ -0,0 +1,13 @@ +--- src/libs/xpcom18a4/nsprpub/pr/src/pthreads/ptsynch.c.orig 2025-08-13 19:56:47 UTC ++++ src/libs/xpcom18a4/nsprpub/pr/src/pthreads/ptsynch.c +@@ -45,6 +45,10 @@ + #include <string.h> + #include <pthread.h> + #include <sys/time.h> ++#ifdef FREEBSD ++#include <sys/param.h> ++#endif ++ + #include <errno.h> + + #include <iprt/asm.h> diff --git a/emulators/virtualbox-ose-72/files/patch-src_libs_xpcom18a4_xpcom_io_nsLocalFileUnix.h b/emulators/virtualbox-ose-72/files/patch-src_libs_xpcom18a4_xpcom_io_nsLocalFileUnix.h new file mode 100644 index 000000000000..50f117437106 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/patch-src_libs_xpcom18a4_xpcom_io_nsLocalFileUnix.h @@ -0,0 +1,17 @@ +--- src/libs/xpcom18a4/xpcom/io/nsLocalFileUnix.h.orig 2025-08-13 19:56:51 UTC ++++ src/libs/xpcom18a4/xpcom/io/nsLocalFileUnix.h +@@ -74,14 +74,6 @@ + #define STATFS statfs + #endif + +-// so we can statfs on freebsd +-#if defined(__FreeBSD__) +- #define HAVE_SYS_STATFS_H +- #define STATFS statfs +- #include <sys/param.h> +- #include <sys/mount.h> +-#endif +- + class NS_COM nsLocalFile : public nsILocalFile + { + public: diff --git a/emulators/virtualbox-ose-72/files/pkg-message.in b/emulators/virtualbox-ose-72/files/pkg-message.in new file mode 100644 index 000000000000..27c14e0a2e2a --- /dev/null +++ b/emulators/virtualbox-ose-72/files/pkg-message.in @@ -0,0 +1,120 @@ +[ +{ type: install + message: <<EOM +VirtualBox was installed. + +You need to load the vboxdrv kernel module via /boot/loader.conf: + +vboxdrv_load="YES" + +You also have to add all users to your vboxusers group in order to use vbox. + +% pw groupmod vboxusers -m jerry + +Reboot the machine to load the needed kernel modules. + + +Bridging Support: +================= + +For bridged networking please add the following line to your /etc/rc.conf: + +vboxnet_enable="YES" + + +USB Support: +============ + +For USB support your user needs to be in the operator group and needs read +and write permissions to the USB device. + +% pw groupmod operator -m jerry + +Add the following to /etc/devfs.rules (create if it doesn't exist): + +[system=10] +add path 'usb/*' mode 0660 group operator + +To load these new rule add the following to /etc/rc.conf: + +devfs_system_ruleset="system" + +Then restart devfs to load the new rules: + +% /etc/rc.d/devfs restart + + +Troubleshooting: +================ + +Running VirtualBox as non-root user may fail with a fatal error +NS_ERROR_FACTORY_NOT_REGISTERED. In this case delete /tmp/.vbox-*-ipc file. + +If you experience "Network: write Failed: Cannot allocate memory" errors +try to increase net.graph.maxdata in /boot/loader.conf + +If you are using AIO, then increase these limits (https://bugs.freebsd.org/168298): +vfs.aio.max_buf_aio=8192 +vfs.aio.max_aio_queue_per_proc=65536 +vfs.aio.max_aio_per_proc=8192 +vfs.aio.max_aio_queue=65536 +To check if AIO is used use: kldstat -v | grep aio + +If you are experiencing VMs freezes with an error in VBox.log such as: +" +00:01:29.590192 AssertLogRel /usr/ports/emulators/virtualbox-ose/work/VirtualBox-6.1.44 +/src/VBox/VMM/VMMR3/PGMPhys.cpp(5148) int PGMR3PhysAllocateHandyPages(PVM): RT_SUCCESS(rc) +00:01:29.590221 87/128: idPage=0x3d400 HCPhysGCPhys=000000027eaed000 rc=VERR_NO_MEMORY +00:01:29.590247 Changing the VM state from 'RUNNING' to 'GURU_MEDITATION' +00:01:29.590261 Console: Machine state changed to 'GuruMeditation' +00:01:29.590695 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! +00:01:29.590696 !! +00:01:29.590697 !! VCPU0: Guru Meditation -8 (VERR_NO_MEMORY) +" +and see a lot of free RAM, then increase sysctl vm.max_user_wired +(https://bugs.freebsd.org/252227). +For dedicated VM servers, a good start is: +("RAM in GB" - max(1, "RAM in GB" / 32)) * 1024*1024*1024 / PAGE_SIZE +PAGE_SIZE on x86 is 4096. +Examples with different RAM sizes in GB: + 16: ( 16-max(1, 16/32)*1024*1024*1024/4096 = 3932160 => 15GB + 32: ( 32-max(1, 32/32)*1024*1024*1024/4096 = 8126464 => 31GB + 48: ( 48-max(1, 48/32)*1024*1024*1024/4096 = 12189696 => 46.5GB + 64: ( 64-max(1, 64/32)*1024*1024*1024/4096 = 16252928 => 62GB +128: (128-max(1,128/32)*1024*1024*1024/4096 = 32505856 => 124GB +256: (256-max(1,256/32)*1024*1024*1024/4096 = 65011712 => 248GB + +When assigning IP addresses in host-only mode from ranges outside +of VirtualBox's defaults, the respective ranges need to be listed +in %%VBOX_ETC%%/networks.conf (https://bugs.freebsd.org/259399). + +Check the wiki page for known issues and troubleshooting: +https://wiki.freebsd.org/VirtualBox + +Please report any problems to emulation@. Thanks! +EOM +} +{ type: upgrade + maximum_version: 6.1.22 + message: <<EOM +The PULSEAUDIO option has been forcibly disabled since VirtualBox +version 6.1.24 due to a bug in it preventing virtual machines +configured to use it from starting. + +When upgrading from a previous version please reconfigure any virtual +machines using the Pulseaudio host audio driver to use another +supported one. +EOM +} +{ type: upgrade + minimum_version: 6.1.26 + maximum_version: 6.1.32_1 + message: <<EOM +To comply to hier(7) requirements, networks.conf's location changed +to %%VBOX_ETC%%/networks.conf. + +In case /etc/vbox/networks.conf exists, it needs to be moved to +%%VBOX_ETC%% and /etc/vbox should be deleted. +EOM +} +] diff --git a/emulators/virtualbox-ose-72/files/vboxheadless.in b/emulators/virtualbox-ose-72/files/vboxheadless.in new file mode 100644 index 000000000000..5ddc5fc21d6c --- /dev/null +++ b/emulators/virtualbox-ose-72/files/vboxheadless.in @@ -0,0 +1,140 @@ +#!/bin/sh + +# PROVIDE: vboxheadless +# REQUIRE: LOGIN vboxnet +# KEYWORD: shutdown +# +# Add the following line to /etc/rc.conf[.local] to enable vboxheadless +# +# vboxheadless_enable (bool): Set to "NO" by default. +# Set it to "YES" to enable vboxheadless. +# vboxheadless_machines (str): Space separated list of machines +# vboxheadless_user (str): Default user account to run with. +# (default: %%VBOXUSER%%) +# vboxheadless_stop (str): Default stop cmd for VBoxManage controlvm. +# (default: savestate) +# vboxheadless_delay (int): Default startup/shutdown delay in seconds. +# (default: 0) +# vboxheadless_<machine>_name (str): Virtualbox machine name or UUID. +# vboxheadless_<machine>_user (str): User account to run with. +# vboxheadless_<machine>_flags (str): Additional flags for VBoxHeadless. +# vboxheadless_<machine>_stop (str): Stop command for VBoxManage controlvm. +# vboxheadless_<machine>_delay (int): Startup and shutdown delay in seconds. + +. /etc/rc.subr + +name="vboxheadless" +rcvar=vboxheadless_enable +rc_fast="YES" + +command="%%VBOXDIR%%/VBoxHeadless" +pidbase="/var/run/${name}" + +start_cmd="${name}_start" +stop_cmd="${name}_stop" +status_cmd="${name}_status" + +vboxheadless_start() +{ + local machine mpidfile pid vmname vmuser vmflags vmdelay + + echo "Starting Virtual Machines:" + for machine in ${vboxheadless_machines}; do + mpidfile="${pidbase}_${machine}.pid" + pid=$(check_pidfile $mpidfile $command) + eval vmname="\${vboxheadless_${machine}_name:-${machine}}" + eval vmuser="\${vboxheadless_${machine}_user:-${vboxheadless_user}}" + eval vmflags="\${vboxheadless_${machine}_flags:-}" + eval vmdelay="\${vboxheadless_${machine}_delay:-${vboxheadless_delay}}" + + HOME=$(/usr/sbin/pw usershow -7 -n "${vmuser}" | /usr/bin/cut -d: -f6) + + /usr/bin/printf "%25s " "${vmname}" + + /usr/bin/su ${vmuser} -c "%%VBOXDIR%%/VBoxManage showvminfo '${vmname}' >/dev/null" 2>/dev/null + + if [ $? != 0 ]; then + echo "Unknown machine" + continue + fi + + if [ -n "${pid}" ]; then + echo "Already running? (pid=${pid})" + continue + fi + + /bin/sleep ${vmdelay} + /usr/bin/install -o ${vmuser} -g %%VBOXGROUP%% -m 644 /dev/null ${mpidfile} + /usr/sbin/daemon -f -p ${mpidfile} -u ${vmuser} ${command} --startvm "${vmname}" ${vmflags} + echo "Started" + done +} + +vboxheadless_stop() +{ + local machine mpidfile pid pids vmname vmuser vmstop vmdelay + + echo "Saving states for Virtual Machines:" + for machine in ${vboxheadless_machines}; do + mpidfile="${pidbase}_${machine}.pid" + pid=$(check_pidfile $mpidfile $command) + eval vmname="\${vboxheadless_${machine}_name:-${machine}}" + eval vmuser="\${vboxheadless_${machine}_user:-${vboxheadless_user}}" + eval vmstop="\${vboxheadless_${machine}_stop:-${vboxheadless_stop}}" + eval vmdelay="\${vboxheadless_${machine}_delay:-${vboxheadless_delay}}" + + /usr/bin/printf "%25s " "${vmname}" + + if [ -n "${pid}" ]; then + pids="${pids} ${pid}" + /bin/sleep ${vmdelay} + /usr/bin/su ${vmuser} -c "%%VBOXDIR%%/VBoxManage controlvm '${vmname}' ${vmstop} >/dev/null &" 2>/dev/null + fi + done + if [ -n "${pids}" ]; then + wait_for_pids $pids >/dev/null + echo "Stopped" + else + echo "Not running?" + fi +} + +vboxheadless_status() +{ + local machine mpidfile pid vmname vmuser + + /usr/bin/printf "%25s %s\n" "Machine" "Status" + /usr/bin/printf "%25s %s\n" "-------------------------" "------------" + + for machine in ${vboxheadless_machines}; do + mpidfile="${pidbase}_${machine}.pid" + pid=$(check_pidfile $mpidfile $command) + eval vmname="\${vboxheadless_${machine}_name:-${machine}}" + eval vmuser="\${vboxheadless_${machine}_user:-${vboxheadless_user}}" + + /usr/bin/su ${vmuser} -c "%%VBOXDIR%%/VBoxManage showvminfo '${vmname}' >/dev/null" 2>/dev/null + + if [ $? != 0 ]; then + /usr/bin/printf "%20s %s\n" "${vmname}" "Unknown Machine" + elif [ -n "${pid}" ]; then + /usr/bin/printf "%25s %s\n" "${vmname}" "Running" + else + /usr/bin/printf "%25s %s\n" "${vmname}" "Powered Off" + fi + done +} + +load_rc_config $name + +: ${vboxheadless_enable="NO"} +: ${vboxheadless_user="%%VBOXUSER%%"} +: ${vboxheadless_stop="savestate"} +: ${vboxheadless_delay="0"} + +cmd_arg="$1" ; shift + +if [ -n "$*" ]; then + vboxheadless_machines="$*" +fi + +run_rc_command "${cmd_arg}" diff --git a/emulators/virtualbox-ose-72/files/vboxinit.in b/emulators/virtualbox-ose-72/files/vboxinit.in new file mode 100644 index 000000000000..9895da9e362e --- /dev/null +++ b/emulators/virtualbox-ose-72/files/vboxinit.in @@ -0,0 +1,91 @@ +#!/bin/sh + +# PROVIDE: vboxinit +# REQUIRE: LOGIN vboxnet vboxwebsrv sshd +# KEYWORD: shutdown +# +# Add the following line to /etc/rc.conf[.local] to enable vboxinit +# +# vboxinit_enable (bool): Set to "NO" by default. +# Set it to "YES" to enable vboxinit. +# stop and faststop are always enabled. +# vboxinit_user (str): Default user account to run with. +# (default: %%VBOXUSER%%) +# vboxinit_home (str): Default home directory to run with. +# (default: home of user ${vboxinit_user} +# vboxinit_stop (str): Default stop cmd for VBoxManage controlvm. +# (default: savestate) +# vboxinit_start_delay (int): Default startup delay in seconds. +# (default: 0) +# vboxinit_stop_delay (int): Default shutdown delay in seconds. +# (default: 0) +# +# Set the "Startup Mode" to "Automatic" for the virtual machine in +# phpvirtualbox to automatically start the virtual machine during OS boot. +# + +. /etc/rc.subr + +name="vboxinit" +rcvar="${name}_enable" + +start_cmd="${name}_start" +stop_cmd="${name}_stop" +status_cmd="${name}_status" +restart_cmd="${name}_restart" + +vboxinit_start() +{ + # Get a list of all machines with autorun enabled in phpvirtualbox + ${su_command} "${command} list vms | /usr/bin/tr -d '{}\"'" | /usr/bin/sort | while read VMNAME UUID; do + STARTUP=$(${su_command} "${command} getextradata ${UUID} 'pvbx/startupMode'" | /usr/bin/cut -d' ' -f2) + if [ "${STARTUP}" == "auto" ]; then + echo "${name}: starting machine ${VMNAME} ..." + ${su_command} "${command} startvm ${UUID} --type headless" + sleep "${vboxinit_start_delay}" + fi + done +} + +vboxinit_stop() +{ + # Get all running machines + ${su_command} "${command} list runningvms | /usr/bin/tr -d '{}\"'" | /usr/bin/sort -r | while read VMNAME UUID; do + echo "${name}: stopping machine ${VMNAME} with action '${vboxinit_stop}' ..." + ${su_command} "${command} controlvm ${UUID} ${vboxinit_stop}" + sleep "${vboxinit_stop_delay}" + done +} + +vboxinit_status() +{ + # List all running machines + ${su_command} "${command} list runningvms" +} + +vboxinit_restart() +{ + vboxinit_stop + vboxinit_start +} + +load_rc_config $name + +: ${vboxinit_enable="NO"} +: ${vboxinit_user="%%VBOXUSER%%"} +: ${vboxinit_home=$(/usr/sbin/pw usershow -7 -n "${vboxinit_user}" | /usr/bin/cut -d: -f6)} +: ${vboxinit_stop="savestate"} +: ${vboxinit_start_delay="1"} +: ${vboxinit_stop_delay="0"} +HOME=${vboxinit_home} +USER=${vboxinit_user} +export HOME USER + +command="%%VBOXDIR%%/VBoxManage" +su_command="/usr/bin/su -m ${vboxinit_user} -c" + +if [ "x$1" = "xstop" ] || [ "x$1" = "xfaststop" ]; then + vboxinit_enable="YES" +fi + +run_rc_command "$1" diff --git a/emulators/virtualbox-ose-72/files/vboxwatchdog.in b/emulators/virtualbox-ose-72/files/vboxwatchdog.in new file mode 100644 index 000000000000..c21bc03b3523 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/vboxwatchdog.in @@ -0,0 +1,51 @@ +#!/bin/sh + +# PROVIDE: vboxwatchdog +# REQUIRE: LOGIN +# KEYWORD: shutdown +# +# Add the following line to /etc/rc.conf[.local] to enable vboxwatchdog +# +# vboxwatchdog_enable (bool): Set to "NO" by default. +# Set it to "YES" to enable vboxwatchdog. +# vboxwatchdog_user (str): User account to run with. +# vboxwatchdog_flags (str): Custom flags for VBoxWatchdog. + +. /etc/rc.subr + +name=vboxwatchdog +rcvar=vboxwatchdog_enable + +command="%%VBOXDIR%%/VBoxBalloonCtrl" +pidfile="/var/run/${name}.pid" + +start_cmd="${name}_start" + +vboxwatchdog_start() +{ + local pid + + HOME=$(/usr/sbin/pw usershow -7 -n "${vboxwatchdog_user}" | /usr/bin/cut -d: -f6) + pid=$(check_pidfile $pidfile $command) + + if [ -n "${pid}" ]; then + echo "${name} already running? (pid=${pid})." + return 1 + fi + + # prevent inheriting this setting to VBoxSVC + unset VBOX_RELEASE_LOG_DEST + + echo -n "Starting ${name}" + /usr/bin/install -o ${vboxwatchdog_user} -g %%VBOXGROUP%% -m 644 /dev/null ${pidfile} + /usr/sbin/daemon -f -p ${pidfile} -u ${vboxwatchdog_user} ${command} ${vboxwatchdog_flags} + echo '.' +} + +load_rc_config $name + +: ${vboxwatchdog_enable="NO"} +: ${vboxwatchdog_user="%%VBOXUSER%%"} +: ${vboxwatchdog_flags=""} + +run_rc_command "$1" diff --git a/emulators/virtualbox-ose-72/files/vboxwebsrv.in b/emulators/virtualbox-ose-72/files/vboxwebsrv.in new file mode 100644 index 000000000000..a7e1e38e3090 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/vboxwebsrv.in @@ -0,0 +1,47 @@ +#!/bin/sh + +# PROVIDE: vboxwebsrv +# REQUIRE: LOGIN +# KEYWORD: shutdown +# +# Add the following line to /etc/rc.conf[.local] to enable vboxwebsrv +# +# vboxwebsrv_enable (bool): Set to "NO" by default. +# Set it to "YES" to enable vboxwebsrv. +# vboxwebsrv_user (str): User account to run with. +# vboxwebsrv_flags (str): Custom flags for vboxwebsrv. + +. /etc/rc.subr + +name=vboxwebsrv +rcvar=vboxwebsrv_enable + +command="%%VBOXDIR%%/vboxwebsrv" +pidfile="/var/run/${name}.pid" + +start_cmd="${name}_start" + +vboxwebsrv_start() +{ + local pid + + HOME=$(/usr/sbin/pw usershow -7 -n "${vboxwebsrv_user}" | /usr/bin/cut -d: -f6) + pid=$(check_pidfile $pidfile $command) + + if [ -n "${pid}" ]; then + echo "${name} already running? (pid=${pid})." + return 1 + fi + + echo -n "Starting ${name}" + /usr/bin/install -o ${vboxwebsrv_user} -g %%VBOXGROUP%% -m 644 /dev/null ${pidfile} + /usr/sbin/daemon -f -p ${pidfile} -u ${vboxwebsrv_user} ${command} ${vboxwebsrv_flags} + echo '.' +} + +load_rc_config $name + +: ${vboxwebsrv_enable="NO"} +: ${vboxwebsrv_user="%%VBOXWSUSER%%"} + +run_rc_command "$1" diff --git a/emulators/virtualbox-ose-72/files/virtualbox.desktop b/emulators/virtualbox-ose-72/files/virtualbox.desktop new file mode 100644 index 000000000000..b0d09e2128b7 --- /dev/null +++ b/emulators/virtualbox-ose-72/files/virtualbox.desktop @@ -0,0 +1,17 @@ +[Desktop Entry] +Encoding=UTF-8 +Version=1.0 +Name=Oracle VM VirtualBox +GenericName=Virtual Machine +Type=Application +Exec=VirtualBox +TryExec=VirtualBox +Icon=VBox +Categories=Emulator;System; +Comment=Run several virtual systems on a single host computer +Comment[de]=Windows und andere Betriebssysteme unter FreeBSD ausführen +Comment[it]=Esegui più macchine virtuali su un singolo computer +Comment[ko]=가상 머신 +Comment[pl]=Uruchamianie wielu systemów wirtualnych na jednym komputerze gospodarza +Comment[ru]=Запуск нескольких виртуальных машин на одном компьютере +Comment[sv]=Kör flera virtuella system på en enda värddator diff --git a/emulators/virtualbox-ose-72/pkg-descr b/emulators/virtualbox-ose-72/pkg-descr new file mode 100644 index 000000000000..1ba975e84e68 --- /dev/null +++ b/emulators/virtualbox-ose-72/pkg-descr @@ -0,0 +1,8 @@ +Oracle VM VirtualBox is a hosted hypervisor for x86 virtualisation. +Supported guests include BSD, Haiku, Linux, OS/2, ReactOS, Solaris and +Windows. + +Guest Additions are available from: emulators/virtualbox-ose-additions + +For the Extension Pack: FreeBSD is not a supported host platform. +Installation of the Pack will not extend the feature set. diff --git a/emulators/virtualbox-ose-72/pkg-plist b/emulators/virtualbox-ose-72/pkg-plist new file mode 100644 index 000000000000..d2dfcb82d4d5 --- /dev/null +++ b/emulators/virtualbox-ose-72/pkg-plist @@ -0,0 +1,452 @@ +bin/VBoxAutostart +bin/VBoxBalloonCtrl +bin/VBoxBugReport +bin/VBoxHeadless +bin/VBoxManage +bin/VBoxVRDP +%%QT%%bin/VirtualBox +%%QT%%bin/VirtualBoxVM +bin/vboxautostart +bin/vboxballoonctrl +bin/vboxbugreport +bin/vboxheadless +%%VBOXIMG%%bin/vboximg-mount +bin/vboxmanage +%%WEBSERVICE%%bin/vboxwebsrv +%%QT%%bin/virtualbox +%%QT%%bin/virtualboxvm +include/virtualbox/VirtualBox_XPCOM.h +include/virtualbox/ipcIClientObserver.h +include/virtualbox/ipcIDConnectService.h +include/virtualbox/ipcIMessageObserver.h +include/virtualbox/ipcIService.h +include/virtualbox/ipcd/ipcCID.h +include/virtualbox/ipcd/ipcdclient.h +include/virtualbox/nsIArray.h +include/virtualbox/nsIAtom.h +include/virtualbox/nsIAtomService.h +include/virtualbox/nsIBinaryInputStream.h +include/virtualbox/nsIBinaryOutputStream.h +include/virtualbox/nsICategoryManager.h +include/virtualbox/nsIClassInfo.h +include/virtualbox/nsICollection.h +include/virtualbox/nsIComponentLoader.h +include/virtualbox/nsIComponentLoaderManager.h +include/virtualbox/nsIComponentManager.h +include/virtualbox/nsIComponentManagerObsolete.h +include/virtualbox/nsIComponentRegistrar.h +include/virtualbox/nsIDebug.h +include/virtualbox/nsIDirectoryEnumerator.h +include/virtualbox/nsIDirectoryService.h +include/virtualbox/nsIEnumerator.h +include/virtualbox/nsIErrorService.h +include/virtualbox/nsIEventQueue.h +include/virtualbox/nsIEventQueueService.h +include/virtualbox/nsIEventTarget.h +include/virtualbox/nsIException.h +include/virtualbox/nsIExceptionService.h +include/virtualbox/nsIFactory.h +include/virtualbox/nsIFile.h +include/virtualbox/nsIHashable.h +include/virtualbox/nsIInputStream.h +include/virtualbox/nsIInterfaceInfo.h +include/virtualbox/nsIInterfaceInfoManager.h +include/virtualbox/nsIInterfaceRequestor.h +include/virtualbox/nsILocalFile.h +include/virtualbox/nsILocalFileMac.h +include/virtualbox/nsIModule.h +include/virtualbox/nsINativeComponentLoader.h +include/virtualbox/nsIObjectInputStream.h +include/virtualbox/nsIObjectOutputStream.h +include/virtualbox/nsIObserver.h +include/virtualbox/nsIObserverService.h +include/virtualbox/nsIOutputStream.h +include/virtualbox/nsIProgrammingLanguage.h +include/virtualbox/nsIProperties.h +include/virtualbox/nsIProxyObjectManager.h +include/virtualbox/nsIRunnable.h +include/virtualbox/nsISerializable.h +include/virtualbox/nsIServiceManager.h +include/virtualbox/nsISimpleEnumerator.h +include/virtualbox/nsIStringEnumerator.h +include/virtualbox/nsISupports.h +include/virtualbox/nsISupportsArray.h +include/virtualbox/nsISupportsIterators.h +include/virtualbox/nsISupportsPrimitives.h +include/virtualbox/nsITraceRefcnt.h +include/virtualbox/nsIVariant.h +include/virtualbox/nsIWeakReference.h +include/virtualbox/nsIXPTLoader.h +include/virtualbox/nsprpub/nspr.h +include/virtualbox/nsprpub/plarena.h +include/virtualbox/nsprpub/plarenas.h +include/virtualbox/nsprpub/plhash.h +include/virtualbox/nsprpub/prbit.h +include/virtualbox/nsprpub/prcpucfg.h +include/virtualbox/nsprpub/prlong.h +include/virtualbox/nsprpub/prmem.h +include/virtualbox/nsprpub/prmon.h +include/virtualbox/nsprpub/prtime.h +include/virtualbox/nsprpub/prtypes.h +include/virtualbox/nsrootidl.h +include/virtualbox/string/nsAString.h +include/virtualbox/string/nsAlgorithm.h +include/virtualbox/string/nsCharTraits.h +include/virtualbox/string/nsDependentString.h +include/virtualbox/string/nsDependentSubstring.h +include/virtualbox/string/nsEmbedString.h +include/virtualbox/string/nsLiteralString.h +include/virtualbox/string/nsObsoleteAString.h +include/virtualbox/string/nsPrintfCString.h +include/virtualbox/string/nsPromiseFlatString.h +include/virtualbox/string/nsReadableUtils.h +include/virtualbox/string/nsString.h +include/virtualbox/string/nsStringAPI.h +include/virtualbox/string/nsStringFwd.h +include/virtualbox/string/nsStringIterator.h +include/virtualbox/string/nsSubstring.h +include/virtualbox/string/nsSubstringTuple.h +include/virtualbox/string/nsTAString.h +include/virtualbox/string/nsTDependentString.h +include/virtualbox/string/nsTDependentSubstring.h +include/virtualbox/string/nsTObsoleteAString.h +include/virtualbox/string/nsTPromiseFlatString.h +include/virtualbox/string/nsTString.h +include/virtualbox/string/nsTSubstring.h +include/virtualbox/string/nsTSubstringTuple.h +include/virtualbox/string/nsUTF8Utils.h +include/virtualbox/string/nsXPIDLString.h +include/virtualbox/string/string-template-def-char.h +include/virtualbox/string/string-template-def-unichar.h +include/virtualbox/string/string-template-undef.h +include/virtualbox/xpcom/nsAgg.h +include/virtualbox/xpcom/nsAppDirectoryServiceDefs.h +include/virtualbox/xpcom/nsArray.h +include/virtualbox/xpcom/nsArrayEnumerator.h +include/virtualbox/xpcom/nsAtomService.h +include/virtualbox/xpcom/nsAutoLock.h +include/virtualbox/xpcom/nsAutoPtr.h +include/virtualbox/xpcom/nsBaseHashtable.h +include/virtualbox/xpcom/nsCOMArray.h +include/virtualbox/xpcom/nsCOMPtr.h +include/virtualbox/xpcom/nsCRT.h +include/virtualbox/xpcom/nsCategoryManagerUtils.h +include/virtualbox/xpcom/nsClassHashtable.h +include/virtualbox/xpcom/nsComponentManagerObsolete.h +include/virtualbox/xpcom/nsComponentManagerUtils.h +include/virtualbox/xpcom/nsDataHashtable.h +include/virtualbox/xpcom/nsDebug.h +include/virtualbox/xpcom/nsDebugImpl.h +include/virtualbox/xpcom/nsDeque.h +include/virtualbox/xpcom/nsDirectoryService.h +include/virtualbox/xpcom/nsDirectoryServiceDefs.h +include/virtualbox/xpcom/nsDirectoryServiceUtils.h +include/virtualbox/xpcom/nsDoubleHashtable.h +include/virtualbox/xpcom/nsEnumeratorUtils.h +include/virtualbox/xpcom/nsError.h +include/virtualbox/xpcom/nsEventQueueUtils.h +include/virtualbox/xpcom/nsGenericFactory.h +include/virtualbox/xpcom/nsHashKeys.h +include/virtualbox/xpcom/nsHashSets.h +include/virtualbox/xpcom/nsHashtable.h +include/virtualbox/xpcom/nsID.h +include/virtualbox/xpcom/nsIGenericFactory.h +include/virtualbox/xpcom/nsIID.h +include/virtualbox/xpcom/nsIInterfaceRequestorUtils.h +include/virtualbox/xpcom/nsIServiceManagerObsolete.h +include/virtualbox/xpcom/nsIServiceManagerUtils.h +include/virtualbox/xpcom/nsISupportsBase.h +include/virtualbox/xpcom/nsISupportsImpl.h +include/virtualbox/xpcom/nsISupportsUtils.h +include/virtualbox/xpcom/nsIWeakReferenceUtils.h +include/virtualbox/xpcom/nsInt64.h +include/virtualbox/xpcom/nsInterfaceHashtable.h +include/virtualbox/xpcom/nsLocalFile.h +include/virtualbox/xpcom/nsLocalFileUnix.h +include/virtualbox/xpcom/nsMemory.h +include/virtualbox/xpcom/nsModule.h +include/virtualbox/xpcom/nsNativeCharsetUtils.h +include/virtualbox/xpcom/nsNativeComponentLoader.h +include/virtualbox/xpcom/nsObserverService.h +include/virtualbox/xpcom/nsObsoleteModuleLoading.h +include/virtualbox/xpcom/nsProxiedService.h +include/virtualbox/xpcom/nsProxyEvent.h +include/virtualbox/xpcom/nsProxyRelease.h +include/virtualbox/xpcom/nsRefPtrHashtable.h +include/virtualbox/xpcom/nsStaticAtom.h +include/virtualbox/xpcom/nsStaticComponent.h +include/virtualbox/xpcom/nsStringEnumerator.h +include/virtualbox/xpcom/nsStringIO.h +include/virtualbox/xpcom/nsSupportsArray.h +include/virtualbox/xpcom/nsSupportsPrimitives.h +include/virtualbox/xpcom/nsTHashtable.h +include/virtualbox/xpcom/nsTraceRefcnt.h +include/virtualbox/xpcom/nsTraceRefcntImpl.h +include/virtualbox/xpcom/nsVariant.h +include/virtualbox/xpcom/nsVoidArray.h +include/virtualbox/xpcom/nsWeakPtr.h +include/virtualbox/xpcom/nsWeakReference.h +include/virtualbox/xpcom/nsXPCOM.h +include/virtualbox/xpcom/nsXPCOMCID.h +include/virtualbox/xpcom/nsXPCOMGlue.h +include/virtualbox/xpcom/nscore.h +include/virtualbox/xpcom/pldhash.h +include/virtualbox/xpcom/plevent.h +include/virtualbox/xpcom/xcDll.h +include/virtualbox/xpcom/xpcom-config.h +include/virtualbox/xpcom/xpt_arena.h +include/virtualbox/xpcom/xpt_struct.h +include/virtualbox/xpcom/xpt_xdr.h +include/virtualbox/xpcom/xptcall.h +include/virtualbox/xpcom/xptcstubsdecl.inc +include/virtualbox/xpcom/xptcstubsdef.inc +include/virtualbox/xpcom/xptinfo.h +%%PYTHON%%%%PYTHON_SITELIBDIR%%/vboxapi-1-py%%PYTHON_VER%%.egg-info/PKG-INFO +%%PYTHON%%%%PYTHON_SITELIBDIR%%/vboxapi-1-py%%PYTHON_VER%%.egg-info/SOURCES.txt +%%PYTHON%%%%PYTHON_SITELIBDIR%%/vboxapi-1-py%%PYTHON_VER%%.egg-info/dependency_links.txt +%%PYTHON%%%%PYTHON_SITELIBDIR%%/vboxapi-1-py%%PYTHON_VER%%.egg-info/requires.txt +%%PYTHON%%%%PYTHON_SITELIBDIR%%/vboxapi-1-py%%PYTHON_VER%%.egg-info/top_level.txt +%%PYTHON%%%%PYTHON_SITELIBDIR%%/vboxapi/VirtualBox_constants.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/vboxapi%%PYTHON_PYCDIR%%VirtualBox_constants%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/vboxapi/__init__.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/vboxapi%%PYTHON_PYCDIR%%__init__%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/__init__.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%__init__%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/components.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%components%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/nsError.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%nsError%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/primitives.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%primitives%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/vboxxpcom.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%vboxxpcom%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/xpcom_consts.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%xpcom_consts%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/xpt.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom%%PYTHON_PYCDIR%%xpt%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/client/__init__.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/client%%PYTHON_PYCDIR%%__init__%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server/__init__.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server%%PYTHON_PYCDIR%%__init__%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server/enumerator.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server%%PYTHON_PYCDIR%%enumerator%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server/factory.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server%%PYTHON_PYCDIR%%factory%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server/loader.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server%%PYTHON_PYCDIR%%loader%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server/module.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server%%PYTHON_PYCDIR%%module%%PYTHON_PYCEXT%% +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server/policy.py +%%PYTHON%%%%PYTHON_SITELIBDIR%%/xpcom/server%%PYTHON_PYCDIR%%policy%%PYTHON_PYCEXT%% +%%QT%%lib/virtualbox/DbgPlugInDiggers.so +lib/virtualbox/VBox.sh +lib/virtualbox/VBoxAuth.so +lib/virtualbox/VBoxAuthSimple.so +lib/virtualbox/VBoxAutostart +lib/virtualbox/VBoxBalloonCtrl +lib/virtualbox/VBoxBugReport +lib/virtualbox/VBoxDD.so +lib/virtualbox/VBoxDD2.so +lib/virtualbox/VBoxDDR0.r0 +lib/virtualbox/VBoxDDU.so +%%QT%%lib/virtualbox/UICommon.so +%%QT%%lib/virtualbox/VBoxDbg.so +%%QT%%lib/virtualbox/VBoxDragAndDropSvc.so +lib/virtualbox/VBoxEFI-amd64.fd +lib/virtualbox/VBoxEFI-arm32.fd +lib/virtualbox/VBoxEFI-arm64.fd +lib/virtualbox/VBoxEFI-x86.fd +lib/virtualbox/VBoxExtPackHelperApp +lib/virtualbox/VBoxGuestControlSvc.so +lib/virtualbox/VBoxGuestPropSvc.so +@(root,%%VBOXGROUP%%,4510) lib/virtualbox/VBoxHeadless +lib/virtualbox/VBoxHeadless.so +lib/virtualbox/VBoxHostChannel.so +%%QT%%lib/virtualbox/VBoxKeyboard.so +lib/virtualbox/VBoxManage +@(root,%%VBOXGROUP%%,4510) lib/virtualbox/VBoxNetAdpCtl +@(root,%%VBOXGROUP%%,4510) lib/virtualbox/VBoxNetDHCP +lib/virtualbox/VBoxNetDHCP.so +@(root,%%VBOXGROUP%%,4510) lib/virtualbox/VBoxNetNAT +lib/virtualbox/VBoxNetNAT.so +%%PYTHON%%lib/virtualbox/VBoxPython3.so +%%PYTHON%%lib/virtualbox/VBoxPython3m.so +lib/virtualbox/VBoxRT.so +lib/virtualbox/VBoxSVC +%%X11%%lib/virtualbox/VBoxSVGA3D.so +lib/virtualbox/VBoxSharedClipboard.so +lib/virtualbox/VBoxSharedFolders.so +lib/virtualbox/VBoxTraceLogDecoders.so +lib/virtualbox/VBoxVMM.so +lib/virtualbox/VBoxVMMArm.so +lib/virtualbox/VBoxVMMPreload.so +lib/virtualbox/VBoxXPCOM.so +lib/virtualbox/VBoxXPCOMC.so +lib/virtualbox/VBoxXPCOMIPCD.so +lib/virtualbox/VMMR0.r0 +%%QT%%lib/virtualbox/VirtualBox +%%QT%%@(root,%%VBOXGROUP%%,4510) lib/virtualbox/VirtualBoxVM +%%QT%%lib/virtualbox/VirtualBoxVM.so +%%SDK%%lib/virtualbox/sdk +%%VBOXIMG%%lib/virtualbox/vboximg-mount +%%WEBSERVICE%%lib/virtualbox/vboxwebsrv +%%WEBSERVICE%%lib/virtualbox/webtest +%%VNC%%lib/virtualbox/ExtensionPacks/VNC/ExtPack-license.html +%%VNC%%lib/virtualbox/ExtensionPacks/VNC/ExtPack-license.rtf +%%VNC%%lib/virtualbox/ExtensionPacks/VNC/ExtPack-license.txt +%%VNC%%lib/virtualbox/ExtensionPacks/VNC/ExtPack.xml +%%VNC%%lib/virtualbox/ExtensionPacks/VNC/%%ARCH%%/VBoxVNC.so +%%VNC%%lib/virtualbox/ExtensionPacks/VNC/%%ARCH%%/VBoxVNCMain.so +%%GUESTADDITIONS%%lib/virtualbox/additions/VBoxGuestAdditions.iso +%%GUESTADDITIONS%%lib/virtualbox/additions/VBoxGuestAdditions_%%GUEST_VER%%.iso +lib/virtualbox/components/VBoxC.so +lib/virtualbox/components/VBoxSVCM.so +lib/virtualbox/components/VBoxXPCOMBase.xpt +lib/virtualbox/components/VBoxXPCOMIPCC.so +lib/virtualbox/components/VirtualBox_XPCOM.xpt +%%QT%%share/applications/virtualbox.desktop +%%DOCS%%%%DOCSDIR%%/UserManual.pdf +%%QT%%share/pixmaps/VBox.png +%%DATADIR%%/idl/VirtualBox_XPCOM.idl +%%DATADIR%%/idl/ipcIClientObserver.idl +%%DATADIR%%/idl/ipcIDConnectService.idl +%%DATADIR%%/idl/ipcIMessageObserver.idl +%%DATADIR%%/idl/ipcIService.idl +%%DATADIR%%/idl/nsIArray.idl +%%DATADIR%%/idl/nsIAtom.idl +%%DATADIR%%/idl/nsIAtomService.idl +%%DATADIR%%/idl/nsIBinaryInputStream.idl +%%DATADIR%%/idl/nsIBinaryOutputStream.idl +%%DATADIR%%/idl/nsICategoryManager.idl +%%DATADIR%%/idl/nsIClassInfo.idl +%%DATADIR%%/idl/nsICollection.idl +%%DATADIR%%/idl/nsIComponentLoader.idl +%%DATADIR%%/idl/nsIComponentLoaderManager.idl +%%DATADIR%%/idl/nsIComponentManager.idl +%%DATADIR%%/idl/nsIComponentManagerObsolete.idl +%%DATADIR%%/idl/nsIComponentRegistrar.idl +%%DATADIR%%/idl/nsIDebug.idl +%%DATADIR%%/idl/nsIDirectoryEnumerator.idl +%%DATADIR%%/idl/nsIDirectoryService.idl +%%DATADIR%%/idl/nsIEnumerator.idl +%%DATADIR%%/idl/nsIErrorService.idl +%%DATADIR%%/idl/nsIEventQueue.idl +%%DATADIR%%/idl/nsIEventQueueService.idl +%%DATADIR%%/idl/nsIEventTarget.idl +%%DATADIR%%/idl/nsIException.idl +%%DATADIR%%/idl/nsIExceptionService.idl +%%DATADIR%%/idl/nsIFactory.idl +%%DATADIR%%/idl/nsIFile.idl +%%DATADIR%%/idl/nsIHashable.idl +%%DATADIR%%/idl/nsIInputStream.idl +%%DATADIR%%/idl/nsIInterfaceInfo.idl +%%DATADIR%%/idl/nsIInterfaceInfoManager.idl +%%DATADIR%%/idl/nsIInterfaceRequestor.idl +%%DATADIR%%/idl/nsILocalFile.idl +%%DATADIR%%/idl/nsILocalFileMac.idl +%%DATADIR%%/idl/nsIModule.idl +%%DATADIR%%/idl/nsINativeComponentLoader.idl +%%DATADIR%%/idl/nsIObjectInputStream.idl +%%DATADIR%%/idl/nsIObjectOutputStream.idl +%%DATADIR%%/idl/nsIObserver.idl +%%DATADIR%%/idl/nsIObserverService.idl +%%DATADIR%%/idl/nsIOutputStream.idl +%%DATADIR%%/idl/nsIProgrammingLanguage.idl +%%DATADIR%%/idl/nsIProperties.idl +%%DATADIR%%/idl/nsIProxyObjectManager.idl +%%DATADIR%%/idl/nsIRunnable.idl +%%DATADIR%%/idl/nsISerializable.idl +%%DATADIR%%/idl/nsIServiceManager.idl +%%DATADIR%%/idl/nsISimpleEnumerator.idl +%%DATADIR%%/idl/nsIStringEnumerator.idl +%%DATADIR%%/idl/nsISupports.idl +%%DATADIR%%/idl/nsISupportsArray.idl +%%DATADIR%%/idl/nsISupportsIterators.idl +%%DATADIR%%/idl/nsISupportsPrimitives.idl +%%DATADIR%%/idl/nsITraceRefcnt.idl +%%DATADIR%%/idl/nsIVariant.idl +%%DATADIR%%/idl/nsIWeakReference.idl +%%DATADIR%%/idl/nsIXPTLoader.idl +%%DATADIR%%/idl/nsrootidl.idl +%%NLS%%%%DATADIR%%/nls/VirtualBox_bg.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_ca.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_ca_VA.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_cs.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_da.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_de.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_el.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_en.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_es.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_eu.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_fa.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_fi.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_fr.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_gl.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_he.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_hr_HR.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_hu.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_id.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_it.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_ja.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_ka.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_km_KH.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_ko.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_lt.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_nl.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_pl.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_pt.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_pt_BR.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_ro.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_ru.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_sk.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_sl.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_sr.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_sv.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_th.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_tr.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_uk.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_zh_CN.qm +%%NLS%%%%DATADIR%%/nls/VirtualBox_zh_TW.qm +%%NLS%%%%DATADIR%%/nls/qt_bg.qm +%%NLS%%%%DATADIR%%/nls/qt_ca.qm +%%NLS%%%%DATADIR%%/nls/qt_ca_VA.qm +%%NLS%%%%DATADIR%%/nls/qt_cs.qm +%%NLS%%%%DATADIR%%/nls/qt_da.qm +%%NLS%%%%DATADIR%%/nls/qt_de.qm +%%NLS%%%%DATADIR%%/nls/qt_el.qm +%%NLS%%%%DATADIR%%/nls/qt_en.qm +%%NLS%%%%DATADIR%%/nls/qt_es.qm +%%NLS%%%%DATADIR%%/nls/qt_eu.qm +%%NLS%%%%DATADIR%%/nls/qt_fa.qm +%%NLS%%%%DATADIR%%/nls/qt_fi.qm +%%NLS%%%%DATADIR%%/nls/qt_fr.qm +%%NLS%%%%DATADIR%%/nls/qt_gl.qm +%%NLS%%%%DATADIR%%/nls/qt_he.qm +%%NLS%%%%DATADIR%%/nls/qt_hr_HR.qm +%%NLS%%%%DATADIR%%/nls/qt_hu.qm +%%NLS%%%%DATADIR%%/nls/qt_id.qm +%%NLS%%%%DATADIR%%/nls/qt_it.qm +%%NLS%%%%DATADIR%%/nls/qt_ja.qm +%%NLS%%%%DATADIR%%/nls/qt_ka.qm +%%NLS%%%%DATADIR%%/nls/qt_km_KH.qm +%%NLS%%%%DATADIR%%/nls/qt_ko.qm +%%NLS%%%%DATADIR%%/nls/qt_lt.qm +%%NLS%%%%DATADIR%%/nls/qt_nl.qm +%%NLS%%%%DATADIR%%/nls/qt_pl.qm +%%NLS%%%%DATADIR%%/nls/qt_pt.qm +%%NLS%%%%DATADIR%%/nls/qt_pt_BR.qm +%%NLS%%%%DATADIR%%/nls/qt_ro.qm +%%NLS%%%%DATADIR%%/nls/qt_ru.qm +%%NLS%%%%DATADIR%%/nls/qt_sk.qm +%%NLS%%%%DATADIR%%/nls/qt_sl.qm +%%NLS%%%%DATADIR%%/nls/qt_sr.qm +%%NLS%%%%DATADIR%%/nls/qt_sv.qm +%%NLS%%%%DATADIR%%/nls/qt_th.qm +%%NLS%%%%DATADIR%%/nls/qt_tr.qm +%%NLS%%%%DATADIR%%/nls/qt_uk.qm +%%NLS%%%%DATADIR%%/nls/qt_zh_CN.qm +%%NLS%%%%DATADIR%%/nls/qt_zh_TW.qm +%%DATADIR%%/samples/Makefile +%%DATADIR%%/samples/tstVBoxAPIXPCOM.cpp +%%WEBSERVICE%%%%DATADIR%%/sdk/bindings/webservice/vboxweb.wsdl +%%PYTHON%%%%DATADIR%%/sdk/bindings/xpcom/python/xpcom diff --git a/emulators/virtualbox-ose-additions-legacy/Makefile b/emulators/virtualbox-ose-additions-legacy/Makefile index 36da35e3c79c..e9067d5fd9b4 100644 --- a/emulators/virtualbox-ose-additions-legacy/Makefile +++ b/emulators/virtualbox-ose-additions-legacy/Makefile @@ -42,7 +42,9 @@ CONFLICTS_INSTALL= virtualbox-ose-additions \ virtualbox-ose-additions-70 \ virtualbox-ose-additions-nox11-70 \ virtualbox-ose-additions-71 \ - virtualbox-ose-additions-nox11-71 + virtualbox-ose-additions-nox11-71 \ + virtualbox-ose-additions-72 \ + virtualbox-ose-additions-nox11-72 PATCHDIR= ${.CURDIR}/../${PORTNAME}-legacy/files EXTRACT_AFTER_ARGS= --exclude tools/*.x86 --exclude tools/*.amd64 --exclude Firmware diff --git a/emulators/virtualbox-ose-additions/Makefile b/emulators/virtualbox-ose-additions/Makefile index 58ad514e9a9b..2e5c8cc62bf2 100644 --- a/emulators/virtualbox-ose-additions/Makefile +++ b/emulators/virtualbox-ose-additions/Makefile @@ -42,7 +42,9 @@ CONFLICTS_INSTALL= virtualbox-ose-additions-legacy \ virtualbox-ose-additions-70 \ virtualbox-ose-additions-nox11-70 \ virtualbox-ose-additions-71 \ - virtualbox-ose-additions-nox11-71 + virtualbox-ose-additions-nox11-71 \ + virtualbox-ose-additions-72 \ + virtualbox-ose-additions-nox11-72 PATCHDIR= ${.CURDIR}/../${PORTNAME}/files EXTRACT_AFTER_ARGS= --exclude tools/*.x86 --exclude tools/*.amd64 --exclude Firmware diff --git a/emulators/virtualbox-ose-kmod-70/Makefile b/emulators/virtualbox-ose-kmod-70/Makefile index aecfea40859f..88de93b5d54a 100644 --- a/emulators/virtualbox-ose-kmod-70/Makefile +++ b/emulators/virtualbox-ose-kmod-70/Makefile @@ -35,7 +35,8 @@ CONFIGURE_ARGS+= --nofatal --with-gcc="${CC}" --with-g++="${CXX}" CONFLICTS_INSTALL= virtualbox-ose-kmod-legacy \ virtualbox-ose-kmod \ - virtualbox-ose-kmod-71 + virtualbox-ose-kmod-71 \ + virtualbox-ose-kmod-72 PATCHDIR= ${.CURDIR}/../${PORTNAME}-70/files PORTSCOUT= limit:^7\.0\. diff --git a/emulators/virtualbox-ose-kmod-71/Makefile b/emulators/virtualbox-ose-kmod-71/Makefile index 69f44271dd2d..75f20dc887fc 100644 --- a/emulators/virtualbox-ose-kmod-71/Makefile +++ b/emulators/virtualbox-ose-kmod-71/Makefile @@ -35,7 +35,8 @@ CONFIGURE_ARGS+= --nofatal --with-gcc="${CC}" --with-g++="${CXX}" CONFLICTS_INSTALL= virtualbox-ose-kmod-legacy \ virtualbox-ose-kmod \ - virtualbox-ose-kmod-70 + virtualbox-ose-kmod-70 \ + virtualbox-ose-kmod-72 PATCHDIR= ${.CURDIR}/../${PORTNAME}-71/files PORTSCOUT= limit:^7\.1\. diff --git a/emulators/virtualbox-ose-kmod-72/Makefile b/emulators/virtualbox-ose-kmod-72/Makefile new file mode 100644 index 000000000000..0990aebfbc08 --- /dev/null +++ b/emulators/virtualbox-ose-kmod-72/Makefile @@ -0,0 +1,114 @@ +PORTNAME= virtualbox-ose +DISTVERSION= 7.2.0 +CATEGORIES= emulators +MASTER_SITES= https://download.virtualbox.org/virtualbox/${DISTVERSION}/ +PKGNAMESUFFIX= -kmod-72 +DISTNAME= VirtualBox-${DISTVERSION} + +MAINTAINER= vbox@FreeBSD.org +COMMENT= VirtualBox kernel module for FreeBSD +WWW= https://www.virtualbox.org/ + +LICENSE= GPLv2 +LICENSE_FILE= ${WRKSRC}/COPYING + +ONLY_FOR_ARCHS= amd64 + +BUILD_DEPENDS= kmk:devel/kBuild + +USES= cpe compiler:c++17-lang kmod tar:bzip2 +CPE_VENDOR= oracle +CPE_PRODUCT= vm_virtualbox +USE_RC_SUBR= vboxnet + +HAS_CONFIGURE= yes +CONFIGURE_ARGS+= --build-headless +CONFIGURE_ARGS+= --disable-alsa \ + --disable-dbus \ + --disable-docs \ + --disable-libvpx \ + --disable-pulse \ + --disable-python \ + --disable-sdl-ttf \ + --disable-xpcom +CONFIGURE_ARGS+= --nofatal --with-gcc="${CC}" --with-g++="${CXX}" + +CONFLICTS_INSTALL= virtualbox-ose-kmod-legacy \ + virtualbox-ose-kmod \ + virtualbox-ose-kmod-70 + +PATCHDIR= ${.CURDIR}/../${PORTNAME}-72/files +PORTSCOUT= limit:^7\.2\. +SUB_FILES= pkg-message +SUB_LIST= OPSYS=${OPSYS} OSREL=${OSREL} + +WRKSRC= ${WRKDIR}/VirtualBox-${DISTVERSION} + +OPTIONS_DEFINE= DEBUG INVARIANTS VIMAGE +OPTIONS_DEFAULT= VIMAGE +OPTIONS_SUB= yes +DEBUG_DESC= Debug symbols, additional logs and assertions +INVARIANTS_DESC= Use if kernel is compiled with INVARIANTS option +VIMAGE_DESC= VIMAGE virtual networking support +INVARIANTS_CFLAGS= -DINVARIANTS + +.include <bsd.port.options.mk> + +VBOX_BIN= ${WRKSRC}/out/${KMK_ARCH}/${KMK_BUILDTYPE}/bin/src +VBOX_KMODS= vboxdrv \ + vboxnetadp \ + vboxnetflt + +BUILD_WRKSRC= ${VBOX_BIN} + +KMK_BUILDTYPE= release +KMK_CONFIG= VBOX_LIBPATH_X11=${LOCALBASE} VBOX_FREEBSD_SRC=${SRC_BASE}/sys +KMK_FLAGS= HostDrivers-scripts vboxdrv-src VBoxNetFlt-src VBoxNetAdp-src + +.if ${PORT_OPTIONS:MDEBUG} +KMK_FLAGS+= BUILD_TYPE=debug +KMK_BUILDTYPE= debug +EXTRA_PATCHES+= ${PATCHDIR}/extrapatch-Config.kmk \ + ${PATCHDIR}/extrapatch-src-VBox-HostDrivers-Support-freebsd-Makefile +MAKE_ARGS+= DEBUG_FLAGS="-O1 -g" +.endif + +.if ${ARCH} == i386 +KMK_ARCH= freebsd.x86 +.else +KMK_ARCH= freebsd.${ARCH} +.endif + +.include <bsd.port.pre.mk> + +SYMBOLSUFFIX= debug +PLIST_SUB+= SYMBOLSUFFIX=${SYMBOLSUFFIX} + +post-patch: + @${ECHO_CMD} 'VBOX_WITH_VBOXDRV = 1' > ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_WITH_NETFLT = 1' >> ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_WITH_NETADP = 1' >> ${WRKSRC}/LocalConfig.kmk + @${ECHO_CMD} 'VBOX_WITH_ADDITIONS =' >> ${WRKSRC}/LocalConfig.kmk +.if ${PORT_OPTIONS:MVIMAGE} + @${ECHO_CMD} 'VBOX_WITH_NETFLT_VIMAGE = 1' >> ${WRKSRC}/LocalConfig.kmk +.endif + @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g; s|which \$$\*|which \$$1|g' \ + ${WRKSRC}/Config.kmk ${WRKSRC}/configure + @${REINPLACE_CMD} \ + -e 's|\$$KBUILDDIR_BIN/kmk_sed|${LOCALBASE}/bin/kmk_sed|g' \ + ${WRKSRC}/configure + +pre-build: + cd ${WRKSRC}/src/VBox/HostDrivers && ${SH} -c \ + '. ${WRKSRC}/env.sh && ${KMK_CONFIG} ${LOCALBASE}/bin/kmk ${KMK_FLAGS}' + +do-install: + ${MKDIR} ${STAGEDIR}${KMODDIR} +.for i in ${VBOX_KMODS} + ${INSTALL_KLD} ${VBOX_BIN}/${i}/${i}.ko ${STAGEDIR}${KMODDIR} +.if ${PORT_OPTIONS:MDEBUG} + ${INSTALL_KLD} ${VBOX_BIN}/${i}/${i}.ko.${SYMBOLSUFFIX} ${STAGEDIR}${KMODDIR} +.endif +.endfor + +.include <bsd.port.post.mk> diff --git a/emulators/virtualbox-ose-kmod-72/distinfo b/emulators/virtualbox-ose-kmod-72/distinfo new file mode 100644 index 000000000000..c67534681918 --- /dev/null +++ b/emulators/virtualbox-ose-kmod-72/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1755276527 +SHA256 (VirtualBox-7.2.0.tar.bz2) = 4f2804ff27848ea772aee6b637bb1e10ee74ec2da117c257413e2d2c4f670ba0 +SIZE (VirtualBox-7.2.0.tar.bz2) = 206755781 diff --git a/emulators/virtualbox-ose-kmod-72/files/pkg-message.in b/emulators/virtualbox-ose-kmod-72/files/pkg-message.in new file mode 100644 index 000000000000..4e03cc0b5ec7 --- /dev/null +++ b/emulators/virtualbox-ose-kmod-72/files/pkg-message.in @@ -0,0 +1,10 @@ +[ +{ type: install + message: <<EOM +The vboxdrv kernel module uses internal kernel APIs. + +To avoid crashes due to kernel incompatibility, this module will only +load on %%OPSYS%% %%OSREL%% kernels. +EOM +} +] diff --git a/emulators/virtualbox-ose-kmod-72/files/vboxnet.in b/emulators/virtualbox-ose-kmod-72/files/vboxnet.in new file mode 100644 index 000000000000..af3d18884273 --- /dev/null +++ b/emulators/virtualbox-ose-kmod-72/files/vboxnet.in @@ -0,0 +1,67 @@ +#!/bin/sh + +# PROVIDE: vboxnet +# BEFORE: NETWORKING +# REQUIRE: FILESYSTEMS +# KEYWORD: nojail + +# +# Add the following lines to /etc/rc.conf.local or /etc/rc.conf +# to enable this service: +# +# vboxnet_enable (bool): Set to NO by default. +# Set it to YES to load network related kernel modules on startup + +. /etc/rc.subr + +name="vboxnet" +rcvar=vboxnet_enable +start_cmd="vboxnet_start" +stop_cmd="vboxnet_stop" + +vboxnet_modules="vboxdrv vboxnetflt:ng_vboxnetflt vboxnetadp" + +vboxnet_start() +{ + local _k _m + + for _m in ${vboxnet_modules}; do + _k=${_m%:*} + _m=${_m#*:} + if ! kldstat -q -m ${_m}; then + if ! kldload ${_k} > /dev/null 2>&1; then + warn "Can't load ${_k} module." + return 1 + fi + fi + done + + # initialize configured host-only interfaces + LD_LIBRARY_PATH=%%PREFIX%%/lib %%PREFIX%%/bin/VBoxManage list hostonlyifs >/dev/null +} + +vboxnet_stop() +{ + local _k _m _r + + _r= + for _m in ${vboxnet_modules}; do + _r="${_m} ${_r}" + done + for _m in ${_r}; do + _k=${_m%:*} + _m=${_m#*:} + if kldstat -q -m ${_m}; then + if ! kldunload ${_k} > /dev/null 2>&1; then + warn "Can't unload ${_k} module." + return 1 + fi + fi + done +} + +load_rc_config $name + +: ${vboxnet_enable="NO"} + +run_rc_command "$1" diff --git a/emulators/virtualbox-ose-kmod-72/pkg-descr b/emulators/virtualbox-ose-kmod-72/pkg-descr new file mode 100644 index 000000000000..d11d42a81c78 --- /dev/null +++ b/emulators/virtualbox-ose-kmod-72/pkg-descr @@ -0,0 +1,5 @@ +VirtualBox is a family of powerful x86 virtualization products for +enterprise as well as home use. Not only is VirtualBox an extremely +feature rich, high performance product for enterprise customers, it +is also the only professional solution that is freely available as +Open Source Software under the terms of the GNU General Public License. diff --git a/emulators/virtualbox-ose-kmod-72/pkg-plist b/emulators/virtualbox-ose-kmod-72/pkg-plist new file mode 100644 index 000000000000..b08a5706a028 --- /dev/null +++ b/emulators/virtualbox-ose-kmod-72/pkg-plist @@ -0,0 +1,6 @@ +/%%KMODDIR%%/vboxdrv.ko +%%DEBUG%%/%%KMODDIR%%/vboxdrv.ko.%%SYMBOLSUFFIX%% +/%%KMODDIR%%/vboxnetadp.ko +%%DEBUG%%/%%KMODDIR%%/vboxnetadp.ko.%%SYMBOLSUFFIX%% +/%%KMODDIR%%/vboxnetflt.ko +%%DEBUG%%/%%KMODDIR%%/vboxnetflt.ko.%%SYMBOLSUFFIX%% diff --git a/emulators/virtualbox-ose-kmod-legacy/Makefile b/emulators/virtualbox-ose-kmod-legacy/Makefile index 15eb47c2a4a1..ba05f9a005aa 100644 --- a/emulators/virtualbox-ose-kmod-legacy/Makefile +++ b/emulators/virtualbox-ose-kmod-legacy/Makefile @@ -36,7 +36,8 @@ CONFIGURE_ARGS+= --nofatal --with-gcc="${CC}" --with-g++="${CXX}" CONFLICTS_INSTALL= virtualbox-ose-kmod \ virtualbox-ose-kmod-70 \ - virtualbox-ose-kmod-71 + virtualbox-ose-kmod-71 \ + virtualbox-ose-kmod-72 PATCHDIR= ${.CURDIR}/../${PORTNAME}-legacy/files PORTSCOUT= limit:^5\. diff --git a/emulators/virtualbox-ose-kmod/Makefile b/emulators/virtualbox-ose-kmod/Makefile index dd7d18bbdde5..1b0835a4d70c 100644 --- a/emulators/virtualbox-ose-kmod/Makefile +++ b/emulators/virtualbox-ose-kmod/Makefile @@ -36,7 +36,8 @@ CONFIGURE_ARGS+= --nofatal --with-gcc="${CC}" --with-g++="${CXX}" CONFLICTS_INSTALL= virtualbox-ose-kmod-legacy \ virtualbox-ose-kmod-70 \ - virtualbox-ose-kmod-71 + virtualbox-ose-kmod-71 \ + virtualbox-ose-kmod-72 PATCHDIR= ${.CURDIR}/../${PORTNAME}/files PORTSCOUT= limit:^6\. diff --git a/emulators/virtualbox-ose-legacy/Makefile b/emulators/virtualbox-ose-legacy/Makefile index 0c88e2ffe41b..77ed9000a262 100644 --- a/emulators/virtualbox-ose-legacy/Makefile +++ b/emulators/virtualbox-ose-legacy/Makefile @@ -44,7 +44,9 @@ CONFLICTS_INSTALL= virtualbox-ose \ virtualbox-ose-70 \ virtualbox-ose-nox11-70 \ virtualbox-ose-71 \ - virtualbox-ose-nox11-71 + virtualbox-ose-nox11-71 \ + virtualbox-ose-72 \ + virtualbox-ose-nox11-72 PORTSCOUT= limit:^5\. SUB_LIST= VBOXDIR=${VBOX_DIR} \ diff --git a/emulators/virtualbox-ose-nox11-72/Makefile b/emulators/virtualbox-ose-nox11-72/Makefile new file mode 100644 index 000000000000..d415932ea096 --- /dev/null +++ b/emulators/virtualbox-ose-nox11-72/Makefile @@ -0,0 +1,11 @@ +PORTREVISION= 0 +PKGNAMESUFFIX= -nox11-72 + +MASTERDIR= ${.CURDIR}/../virtualbox-ose-72 + +OPTIONS_EXCLUDE= ALSA DBUS DEBUG GUESTADDITIONS DOCS NLS OGG PULSEAUDIO \ + QT6 VORBIS VPX X11 + +SLAVE_PORT= yes + +.include "${MASTERDIR}/Makefile" diff --git a/emulators/virtualbox-ose/Makefile b/emulators/virtualbox-ose/Makefile index 0dab90413e05..3bb9bd477162 100644 --- a/emulators/virtualbox-ose/Makefile +++ b/emulators/virtualbox-ose/Makefile @@ -42,7 +42,9 @@ CONFLICTS_INSTALL= virtualbox-ose-legacy \ virtualbox-ose-70 \ virtualbox-ose-nox11-70 \ virtualbox-ose-71 \ - virtualbox-ose-nox11-71 + virtualbox-ose-nox11-71 \ + virtualbox-ose-72 \ + virtualbox-ose-nox11-72 PORTSCOUT= limit:^6\. SUB_FILES= pkg-message diff --git a/filesystems/Makefile b/filesystems/Makefile index 79968dc0bdb3..4f7065513f9a 100644 --- a/filesystems/Makefile +++ b/filesystems/Makefile @@ -110,6 +110,7 @@ SUBDIR += s3backer SUBDIR += s3fs SUBDIR += sandboxfs + SUBDIR += sasquatch SUBDIR += scan_ffs SUBDIR += securefs SUBDIR += simple-mtpfs @@ -129,6 +130,7 @@ SUBDIR += xfsprogs SUBDIR += xfuse SUBDIR += zap + SUBDIR += zerofs SUBDIR += zfs-periodic SUBDIR += zfs-replicate SUBDIR += zfs-snap-diff diff --git a/filesystems/sasquatch/Makefile b/filesystems/sasquatch/Makefile new file mode 100644 index 000000000000..71946e990520 --- /dev/null +++ b/filesystems/sasquatch/Makefile @@ -0,0 +1,35 @@ +PORTNAME= sasquatch +DISTVERSION= 4.3 +CATEGORIES= filesystems sysutils + +MAINTAINER= tiago.gasiba@gmail.com +COMMENT= SquashFS extractor with patches for firmware analysis +WWW= https://gitlab.com/tgasiba/sasquatch/ + +LICENSE= CPL GPLv2 LGPL21 PUBLIC +LICENSE_COMB= multi +LICENSE_NAME_CPL= Common Public License V. 1.0 +LICENSE_NAME_PUBLIC= Public Domain +LICENSE_FILE_CPL= ${WRKSRC}/LZMA/lzmadaptive/CPL.html +LICENSE_FILE_GPLv2= ${WRKSRC}/LICENSE +LICENSE_FILE_LGPL21= ${WRKSRC}/LZMA/lzmadaptive/LGPL.txt +LICENSE_FILE_PUBLIC= ${WRKSRC}/LZMA/lzma465/lzma.txt +LICENSE_PERMS_CPL= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept +LICENSE_PERMS_PUBLIC= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept + +LIB_DEPENDS= liblz4.so:archivers/liblz4 \ + liblzo2.so:archivers/lzo2 + +USES= compiler:c++11-lang +USE_GITLAB= yes +GL_ACCOUNT= tgasiba + +MAKE_ENV= CC="${CC}" \ + CXX="${CXX}" + +PLIST_FILES= bin/${PORTNAME} + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin + +.include <bsd.port.mk> diff --git a/filesystems/sasquatch/distinfo b/filesystems/sasquatch/distinfo new file mode 100644 index 000000000000..fc694081ebee --- /dev/null +++ b/filesystems/sasquatch/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1755444495 +SHA256 (sasquatch-4.3.tar.bz2) = 3fa1f0f5be2d9be66e0f4f87f5690e4c770f87718c7861ae59943fe9eb0c585d +SIZE (sasquatch-4.3.tar.bz2) = 271643 diff --git a/filesystems/sasquatch/pkg-descr b/filesystems/sasquatch/pkg-descr new file mode 100644 index 000000000000..310014639119 --- /dev/null +++ b/filesystems/sasquatch/pkg-descr @@ -0,0 +1,16 @@ +The sasquatch project is a set of patches to the standard unsquashfs utility +(part of squashfs-tools) that attempts to add support for as many hacked-up +vendor-specific SquashFS implementations as possible. + +It can be used in conjunction with binwalk to extract firmware images where +unsquashfs would fail, e.g. + + If the vendor has done something simple like just muck a bit with the header + fields, sasquatch should sort it out. + + If the vendor has made changes to the underlying LZMA compression options, + or to how these options are stored in the compressed data blocks, sasquatch + will attempt to automatically resolve such customizations via a brute-force + method. + +Original project under: https://github.com/devttys0/sasquatch diff --git a/filesystems/zerofs/Makefile b/filesystems/zerofs/Makefile new file mode 100644 index 000000000000..969f463a97c7 --- /dev/null +++ b/filesystems/zerofs/Makefile @@ -0,0 +1,25 @@ +PORTNAME= zerofs +DISTVERSIONPREFIX= v +DISTVERSION= 0.10.5 +CATEGORIES= filesystems sysutils + +MAINTAINER= stephan@lichtenauer.co.za +COMMENT= ZeroFS is 9P/NFS/NBD on top of S3 +WWW= https://github.com/Barre/ZeroFS + +LICENSE= AGPLv3 +LICENSE_FILE= ${WRKDIR}/ZeroFS-${DISTVERSION}/LICENSE + +USES= cargo gmake + +WRKSRC= ${WRKDIR}/ZeroFS-${DISTVERSION}/zerofs + +USE_GITHUB= yes +GH_ACCOUNT= Barre +GH_PROJECT= ZeroFS +PLIST_FILES= bin/zerofs + +do-install: + ${INSTALL_PROGRAM} ${WRKDIR}/target/release/zerofs ${STAGEDIR}${PREFIX}/bin/zerofs + +.include <bsd.port.mk> diff --git a/filesystems/zerofs/Makefile.crates b/filesystems/zerofs/Makefile.crates new file mode 100644 index 000000000000..e8f45a1fce97 --- /dev/null +++ b/filesystems/zerofs/Makefile.crates @@ -0,0 +1,412 @@ +CARGO_CRATES= addr2line-0.24.2 \ + adler2-2.0.1 \ + aead-0.5.2 \ + ahash-0.8.12 \ + aho-corasick-1.1.3 \ + aliasable-0.1.3 \ + allocator-api2-0.2.21 \ + android-tzdata-0.1.1 \ + android_system_properties-0.1.5 \ + anstream-0.6.20 \ + anstyle-1.0.11 \ + anstyle-parse-0.2.7 \ + anstyle-query-1.1.4 \ + anstyle-wincon-3.0.10 \ + anyhow-1.0.99 \ + arc-swap-1.7.1 \ + argon2-0.5.3 \ + array-util-1.0.2 \ + arrayvec-0.7.6 \ + async-channel-2.5.0 \ + async-stream-0.3.6 \ + async-stream-impl-0.3.6 \ + async-task-4.7.1 \ + async-trait-0.1.89 \ + atomic-0.6.1 \ + atomic-waker-1.1.2 \ + auto_enums-0.8.7 \ + autocfg-1.5.0 \ + backtrace-0.3.75 \ + base64-0.22.1 \ + base64ct-1.8.0 \ + bincode-1.3.3 \ + bitflags-2.9.1 \ + bitvec-1.0.1 \ + blake2-0.10.6 \ + block-buffer-0.10.4 \ + bumpalo-3.19.0 \ + bytemuck-1.23.2 \ + byteorder-1.5.0 \ + bytes-1.10.1 \ + bytestream-0.4.1 \ + cc-1.2.32 \ + cfg-if-1.0.1 \ + cfg_aliases-0.2.1 \ + chacha20-0.9.1 \ + chacha20poly1305-0.10.1 \ + chrono-0.4.41 \ + cipher-0.4.4 \ + clap-4.5.45 \ + clap_builder-4.5.44 \ + clap_derive-4.5.45 \ + clap_lex-0.7.5 \ + cmsketch-0.2.2 \ + colorchoice-1.0.4 \ + comfy-table-7.1.4 \ + concurrent-queue-2.5.0 \ + core-foundation-0.10.1 \ + core-foundation-sys-0.8.7 \ + cpufeatures-0.2.17 \ + crc32fast-1.5.0 \ + crossbeam-channel-0.5.15 \ + crossbeam-epoch-0.9.18 \ + crossbeam-skiplist-0.1.3 \ + crossbeam-utils-0.8.21 \ + crossterm-0.28.1 \ + crossterm_winapi-0.9.1 \ + crypto-common-0.1.6 \ + darling-0.14.4 \ + darling-0.20.11 \ + darling_core-0.14.4 \ + darling_core-0.20.11 \ + darling_macro-0.14.4 \ + darling_macro-0.20.11 \ + dashmap-6.1.0 \ + deku-0.19.1 \ + deku_derive-0.19.1 \ + deranged-0.4.0 \ + derive_utils-0.15.0 \ + digest-0.10.7 \ + displaydoc-0.2.5 \ + dotenvy-0.15.7 \ + downcast-rs-1.2.1 \ + duration-str-0.11.3 \ + either-1.15.0 \ + endian-type-0.1.2 \ + equivalent-1.0.2 \ + errno-0.3.13 \ + event-listener-5.4.1 \ + event-listener-strategy-0.5.4 \ + fail-parallel-0.5.1 \ + figment-0.10.19 \ + filetime-0.2.25 \ + flatbuffers-25.2.10 \ + flume-0.11.1 \ + fnv-1.0.7 \ + foldhash-0.1.5 \ + form_urlencoded-1.2.1 \ + foyer-0.17.4 \ + foyer-0.18.0 \ + foyer-common-0.17.4 \ + foyer-common-0.18.0 \ + foyer-intrusive-collections-0.10.0-dev \ + foyer-memory-0.17.4 \ + foyer-memory-0.18.0 \ + foyer-storage-0.17.4 \ + foyer-storage-0.18.0 \ + fs4-0.13.1 \ + funty-2.0.0 \ + futures-0.3.31 \ + futures-channel-0.3.31 \ + futures-core-0.3.31 \ + futures-executor-0.3.31 \ + futures-io-0.3.31 \ + futures-macro-0.3.31 \ + futures-sink-0.3.31 \ + futures-task-0.3.31 \ + futures-util-0.3.31 \ + generic-array-0.14.7 \ + getrandom-0.2.16 \ + getrandom-0.3.3 \ + gimli-0.31.1 \ + h2-0.4.12 \ + hashbrown-0.13.2 \ + hashbrown-0.14.5 \ + hashbrown-0.15.5 \ + heck-0.4.1 \ + heck-0.5.0 \ + hex-0.4.3 \ + hkdf-0.12.4 \ + hmac-0.12.1 \ + http-1.3.1 \ + http-body-1.0.1 \ + http-body-util-0.1.3 \ + httparse-1.10.1 \ + humantime-2.2.0 \ + hyper-1.6.0 \ + hyper-rustls-0.27.7 \ + hyper-util-0.1.16 \ + iana-time-zone-0.1.63 \ + iana-time-zone-haiku-0.1.2 \ + icu_collections-2.0.0 \ + icu_locale_core-2.0.0 \ + icu_normalizer-2.0.0 \ + icu_normalizer_data-2.0.0 \ + icu_properties-2.0.1 \ + icu_properties_data-2.0.1 \ + icu_provider-2.0.0 \ + ident_case-1.0.1 \ + idna-1.0.3 \ + idna_adapter-1.2.1 \ + indexmap-2.10.0 \ + inlinable_string-0.1.15 \ + inout-0.1.4 \ + io-uring-0.7.9 \ + ipnet-2.11.0 \ + iri-string-0.7.8 \ + is_terminal_polyfill-1.70.1 \ + itertools-0.14.0 \ + itoa-1.0.15 \ + jobserver-0.1.33 \ + js-sys-0.3.77 \ + lazy_static-1.5.0 \ + libc-0.2.175 \ + libmimalloc-sys-0.1.43 \ + libredox-0.1.9 \ + linux-raw-sys-0.4.15 \ + linux-raw-sys-0.9.4 \ + litemap-0.8.0 \ + lock_api-0.4.13 \ + log-0.4.27 \ + lru-slab-0.1.2 \ + lz4-1.28.1 \ + lz4-sys-1.11.1+lz4-1.10.0 \ + lz4_flex-0.11.5 \ + madsim-0.2.33 \ + madsim-macros-0.2.12 \ + madsim-tokio-0.2.30 \ + matchers-0.1.0 \ + md-5-0.10.6 \ + memchr-2.7.5 \ + memoffset-0.9.1 \ + mimalloc-0.1.47 \ + miniz_oxide-0.8.9 \ + mio-1.0.4 \ + mixtrics-0.1.0 \ + mixtrics-0.2.0 \ + naive-timer-0.2.0 \ + nanorand-0.7.0 \ + nibble_vec-0.1.0 \ + no_std_io2-0.9.0 \ + nu-ansi-term-0.46.0 \ + num-conv-0.1.0 \ + num-derive-0.4.2 \ + num-format-0.4.4 \ + num-traits-0.2.19 \ + object-0.36.7 \ + object_store-0.12.3 \ + once_cell-1.21.3 \ + once_cell_polyfill-1.70.1 \ + opaque-debug-0.3.1 \ + openssl-probe-0.1.6 \ + ordered_hash_map-0.4.0 \ + ouroboros-0.18.5 \ + ouroboros_macro-0.18.5 \ + overload-0.1.1 \ + panic-message-0.3.0 \ + parking-2.2.1 \ + parking_lot-0.12.4 \ + parking_lot_core-0.9.11 \ + password-hash-0.5.0 \ + paste-1.0.15 \ + pear-0.2.9 \ + pear_codegen-0.2.9 \ + percent-encoding-2.3.1 \ + pin-project-1.1.10 \ + pin-project-internal-1.1.10 \ + pin-project-lite-0.2.16 \ + pin-utils-0.1.0 \ + pkg-config-0.3.32 \ + poly1305-0.8.0 \ + potential_utf-0.1.2 \ + powerfmt-0.2.0 \ + ppv-lite86-0.2.21 \ + proc-macro-crate-3.3.0 \ + proc-macro2-1.0.97 \ + proc-macro2-diagnostics-0.10.1 \ + quick-xml-0.38.1 \ + quinn-0.11.8 \ + quinn-proto-0.11.12 \ + quinn-udp-0.5.13 \ + quote-1.0.40 \ + r-efi-5.3.0 \ + radium-0.7.0 \ + radix_trie-0.2.1 \ + rand-0.8.5 \ + rand-0.9.2 \ + rand_chacha-0.3.1 \ + rand_chacha-0.9.0 \ + rand_core-0.6.4 \ + rand_core-0.9.3 \ + rand_xorshift-0.4.0 \ + rand_xoshiro-0.6.0 \ + rand_xoshiro-0.7.0 \ + redox_syscall-0.5.17 \ + regex-1.11.1 \ + regex-automata-0.1.10 \ + regex-automata-0.4.9 \ + regex-syntax-0.6.29 \ + regex-syntax-0.8.5 \ + reqwest-0.12.23 \ + ring-0.17.14 \ + rust_decimal-1.37.2 \ + rustc-demangle-0.1.26 \ + rustc-hash-2.1.1 \ + rustc_version-0.4.1 \ + rustix-0.38.44 \ + rustix-1.0.8 \ + rustls-0.23.31 \ + rustls-native-certs-0.8.1 \ + rustls-pemfile-2.2.0 \ + rustls-pki-types-1.12.0 \ + rustls-webpki-0.103.4 \ + rustversion-1.0.22 \ + ryu-1.0.20 \ + same-file-1.0.6 \ + schannel-0.1.27 \ + scopeguard-1.2.0 \ + security-framework-3.3.0 \ + security-framework-sys-2.14.0 \ + semver-1.0.26 \ + serde-1.0.219 \ + serde_derive-1.0.219 \ + serde_json-1.0.142 \ + serde_spanned-0.6.9 \ + serde_spanned-1.0.0 \ + serde_urlencoded-0.7.1 \ + serde_yaml-0.9.34+deprecated \ + sha2-0.10.9 \ + sharded-slab-0.1.7 \ + shlex-1.3.0 \ + signal-hook-registry-1.4.6 \ + siphasher-1.0.1 \ + slab-0.4.11 \ + smallvec-1.15.1 \ + socket2-0.5.10 \ + socket2-0.6.0 \ + spin-0.9.8 \ + stable_deref_trait-1.2.0 \ + static_assertions-1.1.0 \ + strsim-0.10.0 \ + strsim-0.11.1 \ + subtle-2.6.1 \ + syn-1.0.109 \ + syn-2.0.105 \ + sync_wrapper-1.0.2 \ + synstructure-0.13.2 \ + tap-1.0.1 \ + thiserror-1.0.69 \ + thiserror-2.0.14 \ + thiserror-impl-1.0.69 \ + thiserror-impl-2.0.14 \ + thread_local-1.1.9 \ + tikv-jemalloc-sys-0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7 \ + tikv-jemallocator-0.6.0 \ + time-0.3.41 \ + time-core-0.1.4 \ + tinystr-0.8.1 \ + tinyvec-1.9.0 \ + tinyvec_macros-0.1.1 \ + tokio-1.47.1 \ + tokio-macros-2.5.0 \ + tokio-rustls-0.26.2 \ + tokio-util-0.7.16 \ + toml-0.8.23 \ + toml-0.9.5 \ + toml_datetime-0.6.11 \ + toml_datetime-0.7.0 \ + toml_edit-0.22.27 \ + toml_parser-1.0.2 \ + toml_write-0.1.2 \ + toml_writer-1.0.2 \ + tower-0.5.2 \ + tower-http-0.6.6 \ + tower-layer-0.3.3 \ + tower-service-0.3.3 \ + tracing-0.1.41 \ + tracing-attributes-0.1.30 \ + tracing-core-0.1.34 \ + tracing-log-0.2.0 \ + tracing-subscriber-0.3.19 \ + try-lock-0.2.5 \ + twox-hash-2.1.1 \ + typenum-1.18.0 \ + ulid-1.2.1 \ + uncased-0.9.10 \ + unicode-ident-1.0.18 \ + unicode-segmentation-1.12.0 \ + unicode-width-0.2.1 \ + universal-hash-0.5.1 \ + unsafe-libyaml-0.2.11 \ + untrusted-0.9.0 \ + url-2.5.4 \ + utf8_iter-1.0.4 \ + utf8parse-0.2.2 \ + uuid-1.18.0 \ + valuable-0.1.1 \ + version_check-0.9.5 \ + walkdir-2.5.0 \ + want-0.3.1 \ + wasi-0.11.1+wasi-snapshot-preview1 \ + wasi-0.14.2+wasi-0.2.4 \ + wasm-bindgen-0.2.100 \ + wasm-bindgen-backend-0.2.100 \ + wasm-bindgen-futures-0.4.50 \ + wasm-bindgen-macro-0.2.100 \ + wasm-bindgen-macro-support-0.2.100 \ + wasm-bindgen-shared-0.2.100 \ + wasm-streams-0.4.2 \ + web-sys-0.3.77 \ + web-time-1.1.0 \ + winapi-0.3.9 \ + winapi-i686-pc-windows-gnu-0.4.0 \ + winapi-util-0.1.9 \ + winapi-x86_64-pc-windows-gnu-0.4.0 \ + windows-core-0.61.2 \ + windows-implement-0.60.0 \ + windows-interface-0.59.1 \ + windows-link-0.1.3 \ + windows-result-0.3.4 \ + windows-strings-0.4.2 \ + windows-sys-0.52.0 \ + windows-sys-0.59.0 \ + windows-sys-0.60.2 \ + windows-targets-0.52.6 \ + windows-targets-0.53.3 \ + windows_aarch64_gnullvm-0.52.6 \ + windows_aarch64_gnullvm-0.53.0 \ + windows_aarch64_msvc-0.52.6 \ + windows_aarch64_msvc-0.53.0 \ + windows_i686_gnu-0.52.6 \ + windows_i686_gnu-0.53.0 \ + windows_i686_gnullvm-0.52.6 \ + windows_i686_gnullvm-0.53.0 \ + windows_i686_msvc-0.52.6 \ + windows_i686_msvc-0.53.0 \ + windows_x86_64_gnu-0.52.6 \ + windows_x86_64_gnu-0.53.0 \ + windows_x86_64_gnullvm-0.52.6 \ + windows_x86_64_gnullvm-0.53.0 \ + windows_x86_64_msvc-0.52.6 \ + windows_x86_64_msvc-0.53.0 \ + winnow-0.6.26 \ + winnow-0.7.12 \ + wit-bindgen-rt-0.39.0 \ + writeable-0.6.1 \ + wyz-0.5.1 \ + yansi-1.0.1 \ + yoke-0.8.0 \ + yoke-derive-0.8.0 \ + zerocopy-0.8.26 \ + zerocopy-derive-0.8.26 \ + zerofrom-0.1.6 \ + zerofrom-derive-0.1.6 \ + zerofs_nfsserve-0.11.0 \ + zeroize-1.8.1 \ + zerotrie-0.2.2 \ + zerovec-0.11.4 \ + zerovec-derive-0.11.1 \ + zstd-0.13.3 \ + zstd-safe-7.2.4 \ + zstd-sys-2.0.15+zstd.1.5.7 \ + slatedb@git+https://github.com/slatedb/slatedb.git?rev=6e138682013a192bc55e8a2b925ad65d0599a4ef\#6e138682013a192bc55e8a2b925ad65d0599a4ef diff --git a/filesystems/zerofs/distinfo b/filesystems/zerofs/distinfo new file mode 100644 index 000000000000..1cc890e8405a --- /dev/null +++ b/filesystems/zerofs/distinfo @@ -0,0 +1,827 @@ +TIMESTAMP = 1756460664 +SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1 +SIZE (rust/crates/addr2line-0.24.2.crate) = 39015 +SHA256 (rust/crates/adler2-2.0.1.crate) = 320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa +SIZE (rust/crates/adler2-2.0.1.crate) = 13366 +SHA256 (rust/crates/aead-0.5.2.crate) = d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0 +SIZE (rust/crates/aead-0.5.2.crate) = 15509 +SHA256 (rust/crates/ahash-0.8.12.crate) = 5a15f179cd60c4584b8a8c596927aadc462e27f2ca70c04e0071964a73ba7a75 +SIZE (rust/crates/ahash-0.8.12.crate) = 43413 +SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916 +SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311 +SHA256 (rust/crates/aliasable-0.1.3.crate) = 250f629c0161ad8107cf89319e990051fae62832fd343083bea452d93e2205fd +SIZE (rust/crates/aliasable-0.1.3.crate) = 6169 +SHA256 (rust/crates/allocator-api2-0.2.21.crate) = 683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923 +SIZE (rust/crates/allocator-api2-0.2.21.crate) = 63622 +SHA256 (rust/crates/android-tzdata-0.1.1.crate) = e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0 +SIZE (rust/crates/android-tzdata-0.1.1.crate) = 7674 +SHA256 (rust/crates/android_system_properties-0.1.5.crate) = 819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311 +SIZE (rust/crates/android_system_properties-0.1.5.crate) = 5243 +SHA256 (rust/crates/anstream-0.6.20.crate) = 3ae563653d1938f79b1ab1b5e668c87c76a9930414574a6583a7b7e11a8e6192 +SIZE (rust/crates/anstream-0.6.20.crate) = 28797 +SHA256 (rust/crates/anstyle-1.0.11.crate) = 862ed96ca487e809f1c8e5a8447f6ee2cf102f846893800b20cebdf541fc6bbd +SIZE (rust/crates/anstyle-1.0.11.crate) = 15880 +SHA256 (rust/crates/anstyle-parse-0.2.7.crate) = 4e7644824f0aa2c7b9384579234ef10eb7efb6a0deb83f9630a49594dd9c15c2 +SIZE (rust/crates/anstyle-parse-0.2.7.crate) = 21707 +SHA256 (rust/crates/anstyle-query-1.1.4.crate) = 9e231f6134f61b71076a3eab506c379d4f36122f2af15a9ff04415ea4c3339e2 +SIZE (rust/crates/anstyle-query-1.1.4.crate) = 10192 +SHA256 (rust/crates/anstyle-wincon-3.0.10.crate) = 3e0633414522a32ffaac8ac6cc8f748e090c5717661fddeea04219e2344f5f2a +SIZE (rust/crates/anstyle-wincon-3.0.10.crate) = 12558 +SHA256 (rust/crates/anyhow-1.0.99.crate) = b0674a1ddeecb70197781e945de4b3b8ffb61fa939a5597bcf48503737663100 +SIZE (rust/crates/anyhow-1.0.99.crate) = 53809 +SHA256 (rust/crates/arc-swap-1.7.1.crate) = 69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457 +SIZE (rust/crates/arc-swap-1.7.1.crate) = 68512 +SHA256 (rust/crates/argon2-0.5.3.crate) = 3c3610892ee6e0cbce8ae2700349fcf8f98adb0dbfbee85aec3c9179d29cc072 +SIZE (rust/crates/argon2-0.5.3.crate) = 28795 +SHA256 (rust/crates/array-util-1.0.2.crate) = 7e509844de8f09b90a2c3444684a2b6695f4071360e13d2fda0af9f749cc2ed6 +SIZE (rust/crates/array-util-1.0.2.crate) = 9022 +SHA256 (rust/crates/arrayvec-0.7.6.crate) = 7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50 +SIZE (rust/crates/arrayvec-0.7.6.crate) = 31237 +SHA256 (rust/crates/async-channel-2.5.0.crate) = 924ed96dd52d1b75e9c1a3e6275715fd320f5f9439fb5a4a11fa51f4221158d2 +SIZE (rust/crates/async-channel-2.5.0.crate) = 18624 +SHA256 (rust/crates/async-stream-0.3.6.crate) = 0b5a71a6f37880a80d1d7f19efd781e4b5de42c88f0722cc13bcb6cc2cfe8476 +SIZE (rust/crates/async-stream-0.3.6.crate) = 13823 +SHA256 (rust/crates/async-stream-impl-0.3.6.crate) = c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d +SIZE (rust/crates/async-stream-impl-0.3.6.crate) = 4312 +SHA256 (rust/crates/async-task-4.7.1.crate) = 8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de +SIZE (rust/crates/async-task-4.7.1.crate) = 38077 +SHA256 (rust/crates/async-trait-0.1.89.crate) = 9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb +SIZE (rust/crates/async-trait-0.1.89.crate) = 32171 +SHA256 (rust/crates/atomic-0.6.1.crate) = a89cbf775b137e9b968e67227ef7f775587cde3fd31b0d8599dbd0f598a48340 +SIZE (rust/crates/atomic-0.6.1.crate) = 15243 +SHA256 (rust/crates/atomic-waker-1.1.2.crate) = 1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0 +SIZE (rust/crates/atomic-waker-1.1.2.crate) = 12422 +SHA256 (rust/crates/auto_enums-0.8.7.crate) = 9c170965892137a3a9aeb000b4524aa3cc022a310e709d848b6e1cdce4ab4781 +SIZE (rust/crates/auto_enums-0.8.7.crate) = 58613 +SHA256 (rust/crates/autocfg-1.5.0.crate) = c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8 +SIZE (rust/crates/autocfg-1.5.0.crate) = 18729 +SHA256 (rust/crates/backtrace-0.3.75.crate) = 6806a6321ec58106fea15becdad98371e28d92ccbc7c8f1b3b6dd724fe8f1002 +SIZE (rust/crates/backtrace-0.3.75.crate) = 92665 +SHA256 (rust/crates/base64-0.22.1.crate) = 72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6 +SIZE (rust/crates/base64-0.22.1.crate) = 81597 +SHA256 (rust/crates/base64ct-1.8.0.crate) = 55248b47b0caf0546f7988906588779981c43bb1bc9d0c44087278f80cdb44ba +SIZE (rust/crates/base64ct-1.8.0.crate) = 31211 +SHA256 (rust/crates/bincode-1.3.3.crate) = b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad +SIZE (rust/crates/bincode-1.3.3.crate) = 28958 +SHA256 (rust/crates/bitflags-2.9.1.crate) = 1b8e56985ec62d17e9c1001dc89c88ecd7dc08e47eba5ec7c29c7b5eeecde967 +SIZE (rust/crates/bitflags-2.9.1.crate) = 47913 +SHA256 (rust/crates/bitvec-1.0.1.crate) = 1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c +SIZE (rust/crates/bitvec-1.0.1.crate) = 224375 +SHA256 (rust/crates/blake2-0.10.6.crate) = 46502ad458c9a52b69d4d4d32775c788b7a1b85e8bc9d482d92250fc0e3f8efe +SIZE (rust/crates/blake2-0.10.6.crate) = 47234 +SHA256 (rust/crates/block-buffer-0.10.4.crate) = 3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71 +SIZE (rust/crates/block-buffer-0.10.4.crate) = 10538 +SHA256 (rust/crates/bumpalo-3.19.0.crate) = 46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43 +SIZE (rust/crates/bumpalo-3.19.0.crate) = 96414 +SHA256 (rust/crates/bytemuck-1.23.2.crate) = 3995eaeebcdf32f91f980d360f78732ddc061097ab4e39991ae7a6ace9194677 +SIZE (rust/crates/bytemuck-1.23.2.crate) = 53021 +SHA256 (rust/crates/byteorder-1.5.0.crate) = 1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b +SIZE (rust/crates/byteorder-1.5.0.crate) = 23288 +SHA256 (rust/crates/bytes-1.10.1.crate) = d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a +SIZE (rust/crates/bytes-1.10.1.crate) = 76779 +SHA256 (rust/crates/bytestream-0.4.1.crate) = 04f720842a717d6afaf69fee2dc69b771edc165f12cc3eb1b0e8eeef53a86454 +SIZE (rust/crates/bytestream-0.4.1.crate) = 5012 +SHA256 (rust/crates/cc-1.2.32.crate) = 2352e5597e9c544d5e6d9c95190d5d27738ade584fa8db0a16e130e5c2b5296e +SIZE (rust/crates/cc-1.2.32.crate) = 111531 +SHA256 (rust/crates/cfg-if-1.0.1.crate) = 9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268 +SIZE (rust/crates/cfg-if-1.0.1.crate) = 8683 +SHA256 (rust/crates/cfg_aliases-0.2.1.crate) = 613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724 +SIZE (rust/crates/cfg_aliases-0.2.1.crate) = 6355 +SHA256 (rust/crates/chacha20-0.9.1.crate) = c3613f74bd2eac03dad61bd53dbe620703d4371614fe0bc3b9f04dd36fe4e818 +SIZE (rust/crates/chacha20-0.9.1.crate) = 23424 +SHA256 (rust/crates/chacha20poly1305-0.10.1.crate) = 10cd79432192d1c0f4e1a0fef9527696cc039165d729fb41b3f4f4f354c2dc35 +SIZE (rust/crates/chacha20poly1305-0.10.1.crate) = 68485 +SHA256 (rust/crates/chrono-0.4.41.crate) = c469d952047f47f91b68d1cba3f10d63c11d73e4636f24f08daf0278abf01c4d +SIZE (rust/crates/chrono-0.4.41.crate) = 234621 +SHA256 (rust/crates/cipher-0.4.4.crate) = 773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad +SIZE (rust/crates/cipher-0.4.4.crate) = 19073 +SHA256 (rust/crates/clap-4.5.45.crate) = 1fc0e74a703892159f5ae7d3aac52c8e6c392f5ae5f359c70b5881d60aaac318 +SIZE (rust/crates/clap-4.5.45.crate) = 58337 +SHA256 (rust/crates/clap_builder-4.5.44.crate) = b3e7f4214277f3c7aa526a59dd3fbe306a370daee1f8b7b8c987069cd8e888a8 +SIZE (rust/crates/clap_builder-4.5.44.crate) = 169799 +SHA256 (rust/crates/clap_derive-4.5.45.crate) = 14cb31bb0a7d536caef2639baa7fad459e15c3144efefa6dbd1c84562c4739f6 +SIZE (rust/crates/clap_derive-4.5.45.crate) = 33545 +SHA256 (rust/crates/clap_lex-0.7.5.crate) = b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675 +SIZE (rust/crates/clap_lex-0.7.5.crate) = 13469 +SHA256 (rust/crates/cmsketch-0.2.2.crate) = 553c840ee51da812c6cd621f9f7e07dfb00a49f91283a8e6380c78cba4f61aba +SIZE (rust/crates/cmsketch-0.2.2.crate) = 8487 +SHA256 (rust/crates/colorchoice-1.0.4.crate) = b05b61dc5112cbb17e4b6cd61790d9845d13888356391624cbe7e41efeac1e75 +SIZE (rust/crates/colorchoice-1.0.4.crate) = 8196 +SHA256 (rust/crates/comfy-table-7.1.4.crate) = 4a65ebfec4fb190b6f90e944a817d60499ee0744e582530e2c9900a22e591d9a +SIZE (rust/crates/comfy-table-7.1.4.crate) = 77044 +SHA256 (rust/crates/concurrent-queue-2.5.0.crate) = 4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973 +SIZE (rust/crates/concurrent-queue-2.5.0.crate) = 22654 +SHA256 (rust/crates/core-foundation-0.10.1.crate) = b2a6cd9ae233e7f62ba4e9353e81a88df7fc8a5987b8d445b4d90c879bd156f6 +SIZE (rust/crates/core-foundation-0.10.1.crate) = 28886 +SHA256 (rust/crates/core-foundation-sys-0.8.7.crate) = 773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b +SIZE (rust/crates/core-foundation-sys-0.8.7.crate) = 37712 +SHA256 (rust/crates/cpufeatures-0.2.17.crate) = 59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280 +SIZE (rust/crates/cpufeatures-0.2.17.crate) = 13466 +SHA256 (rust/crates/crc32fast-1.5.0.crate) = 9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511 +SIZE (rust/crates/crc32fast-1.5.0.crate) = 40723 +SHA256 (rust/crates/crossbeam-channel-0.5.15.crate) = 82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2 +SIZE (rust/crates/crossbeam-channel-0.5.15.crate) = 92716 +SHA256 (rust/crates/crossbeam-epoch-0.9.18.crate) = 5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e +SIZE (rust/crates/crossbeam-epoch-0.9.18.crate) = 46875 +SHA256 (rust/crates/crossbeam-skiplist-0.1.3.crate) = df29de440c58ca2cc6e587ec3d22347551a32435fbde9d2bff64e78a9ffa151b +SIZE (rust/crates/crossbeam-skiplist-0.1.3.crate) = 34930 +SHA256 (rust/crates/crossbeam-utils-0.8.21.crate) = d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28 +SIZE (rust/crates/crossbeam-utils-0.8.21.crate) = 42691 +SHA256 (rust/crates/crossterm-0.28.1.crate) = 829d955a0bb380ef178a640b91779e3987da38c9aea133b20614cfed8cdea9c6 +SIZE (rust/crates/crossterm-0.28.1.crate) = 132275 +SHA256 (rust/crates/crossterm_winapi-0.9.1.crate) = acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b +SIZE (rust/crates/crossterm_winapi-0.9.1.crate) = 16027 +SHA256 (rust/crates/crypto-common-0.1.6.crate) = 1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3 +SIZE (rust/crates/crypto-common-0.1.6.crate) = 8760 +SHA256 (rust/crates/darling-0.14.4.crate) = 7b750cb3417fd1b327431a470f388520309479ab0bf5e323505daf0290cd3850 +SIZE (rust/crates/darling-0.14.4.crate) = 25168 +SHA256 (rust/crates/darling-0.20.11.crate) = fc7f46116c46ff9ab3eb1597a45688b6715c6e628b5c133e288e709a29bcb4ee +SIZE (rust/crates/darling-0.20.11.crate) = 37614 +SHA256 (rust/crates/darling_core-0.14.4.crate) = 109c1ca6e6b7f82cc233a97004ea8ed7ca123a9af07a8230878fcfda9b158bf0 +SIZE (rust/crates/darling_core-0.14.4.crate) = 57485 +SHA256 (rust/crates/darling_core-0.20.11.crate) = 0d00b9596d185e565c2207a0b01f8bd1a135483d02d9b7b0a54b11da8d53412e +SIZE (rust/crates/darling_core-0.20.11.crate) = 68006 +SHA256 (rust/crates/darling_macro-0.14.4.crate) = a4aab4dbc9f7611d8b55048a3a16d2d010c2c8334e46304b40ac1cc14bf3b48e +SIZE (rust/crates/darling_macro-0.14.4.crate) = 1896 +SHA256 (rust/crates/darling_macro-0.20.11.crate) = fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead +SIZE (rust/crates/darling_macro-0.20.11.crate) = 2532 +SHA256 (rust/crates/dashmap-6.1.0.crate) = 5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf +SIZE (rust/crates/dashmap-6.1.0.crate) = 24828 +SHA256 (rust/crates/deku-0.19.1.crate) = f476a022dcfbb013d1365734a42e05b6aca967ebe0d3bb38170086abd9ea3324 +SIZE (rust/crates/deku-0.19.1.crate) = 88405 +SHA256 (rust/crates/deku_derive-0.19.1.crate) = bb216d425bdf810c165a8ae1649523033e88b5f795480ccec63926295541b084 +SIZE (rust/crates/deku_derive-0.19.1.crate) = 28972 +SHA256 (rust/crates/deranged-0.4.0.crate) = 9c9e6a11ca8224451684bc0d7d5a7adbf8f2fd6887261a1cfc3c0432f9d4068e +SIZE (rust/crates/deranged-0.4.0.crate) = 23235 +SHA256 (rust/crates/derive_utils-0.15.0.crate) = ccfae181bab5ab6c5478b2ccb69e4c68a02f8c3ec72f6616bfec9dbc599d2ee0 +SIZE (rust/crates/derive_utils-0.15.0.crate) = 16294 +SHA256 (rust/crates/digest-0.10.7.crate) = 9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292 +SIZE (rust/crates/digest-0.10.7.crate) = 19557 +SHA256 (rust/crates/displaydoc-0.2.5.crate) = 97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0 +SIZE (rust/crates/displaydoc-0.2.5.crate) = 24219 +SHA256 (rust/crates/dotenvy-0.15.7.crate) = 1aaf95b3e5c8f23aa320147307562d361db0ae0d51242340f558153b4eb2439b +SIZE (rust/crates/dotenvy-0.15.7.crate) = 20293 +SHA256 (rust/crates/downcast-rs-1.2.1.crate) = 75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2 +SIZE (rust/crates/downcast-rs-1.2.1.crate) = 11821 +SHA256 (rust/crates/duration-str-0.11.3.crate) = f88959de2d447fd3eddcf1909d1f19fe084e27a056a6904203dc5d8b9e771c1e +SIZE (rust/crates/duration-str-0.11.3.crate) = 104394 +SHA256 (rust/crates/either-1.15.0.crate) = 48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719 +SIZE (rust/crates/either-1.15.0.crate) = 20114 +SHA256 (rust/crates/endian-type-0.1.2.crate) = c34f04666d835ff5d62e058c3995147c06f42fe86ff053337632bca83e42702d +SIZE (rust/crates/endian-type-0.1.2.crate) = 2340 +SHA256 (rust/crates/equivalent-1.0.2.crate) = 877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f +SIZE (rust/crates/equivalent-1.0.2.crate) = 7419 +SHA256 (rust/crates/errno-0.3.13.crate) = 778e2ac28f6c47af28e4907f13ffd1e1ddbd400980a9abd7c8df189bf578a5ad +SIZE (rust/crates/errno-0.3.13.crate) = 12449 +SHA256 (rust/crates/event-listener-5.4.1.crate) = e13b66accf52311f30a0db42147dadea9850cb48cd070028831ae5f5d4b856ab +SIZE (rust/crates/event-listener-5.4.1.crate) = 43782 +SHA256 (rust/crates/event-listener-strategy-0.5.4.crate) = 8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93 +SIZE (rust/crates/event-listener-strategy-0.5.4.crate) = 16179 +SHA256 (rust/crates/fail-parallel-0.5.1.crate) = 5666e8ca4ec174d896fb742789c29b1bea9319dcfd623c41bececc0a60c4939d +SIZE (rust/crates/fail-parallel-0.5.1.crate) = 17965 +SHA256 (rust/crates/figment-0.10.19.crate) = 8cb01cd46b0cf372153850f4c6c272d9cbea2da513e07538405148f95bd789f3 +SIZE (rust/crates/figment-0.10.19.crate) = 70111 +SHA256 (rust/crates/filetime-0.2.25.crate) = 35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586 +SIZE (rust/crates/filetime-0.2.25.crate) = 14940 +SHA256 (rust/crates/flatbuffers-25.2.10.crate) = 1045398c1bfd89168b5fd3f1fc11f6e70b34f6f66300c87d44d3de849463abf1 +SIZE (rust/crates/flatbuffers-25.2.10.crate) = 27330 +SHA256 (rust/crates/flume-0.11.1.crate) = da0e4dd2a88388a1f4ccc7c9ce104604dab68d9f408dc34cd45823d5a9069095 +SIZE (rust/crates/flume-0.11.1.crate) = 67947 +SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1 +SIZE (rust/crates/fnv-1.0.7.crate) = 11266 +SHA256 (rust/crates/foldhash-0.1.5.crate) = d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2 +SIZE (rust/crates/foldhash-0.1.5.crate) = 21901 +SHA256 (rust/crates/form_urlencoded-1.2.1.crate) = e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456 +SIZE (rust/crates/form_urlencoded-1.2.1.crate) = 8969 +SHA256 (rust/crates/foyer-0.17.4.crate) = 0618db36554a0a5db538d7ff04427571b1f668d3e86a764aabe17985c02ea14c +SIZE (rust/crates/foyer-0.17.4.crate) = 30568 +SHA256 (rust/crates/foyer-0.18.0.crate) = 0b4d8e96374206ff1b4265f2e2e6e1f80bc3048957b2a1e7fdeef929d68f318f +SIZE (rust/crates/foyer-0.18.0.crate) = 32111 +SHA256 (rust/crates/foyer-common-0.17.4.crate) = dbf63fd16ba6227de0004472156048338ad7544280d1200c27e4b4a82ca6f075 +SIZE (rust/crates/foyer-common-0.17.4.crate) = 34793 +SHA256 (rust/crates/foyer-common-0.18.0.crate) = 911b8e3f23d5fe55b0b240f75af1d2fa5cb7261d3f9b38ef1c57bbc9f0449317 +SIZE (rust/crates/foyer-common-0.18.0.crate) = 34796 +SHA256 (rust/crates/foyer-intrusive-collections-0.10.0-dev.crate) = 6e4fee46bea69e0596130e3210e65d3424e0ac1e6df3bde6636304bdf1ca4a3b +SIZE (rust/crates/foyer-intrusive-collections-0.10.0-dev.crate) = 56918 +SHA256 (rust/crates/foyer-memory-0.17.4.crate) = 3ae8a1c8e263f91cf3abca38bbf6b8f82f34b6cf20fa3a249c90ebfa795e5631 +SIZE (rust/crates/foyer-memory-0.17.4.crate) = 50477 +SHA256 (rust/crates/foyer-memory-0.18.0.crate) = 506883d5a8500dea1b1662f7180f3534bdcbfa718d3253db7179552ef83612fa +SIZE (rust/crates/foyer-memory-0.18.0.crate) = 52331 +SHA256 (rust/crates/foyer-storage-0.17.4.crate) = d387ab178f8bcb03fe4981766c9f436007234d8ca73080e3ad2c370d8d75113b +SIZE (rust/crates/foyer-storage-0.17.4.crate) = 88855 +SHA256 (rust/crates/foyer-storage-0.18.0.crate) = 1ba8403a54a2f2032fb647e49c442e5feeb33f3989f7024f1b178341a016f06d +SIZE (rust/crates/foyer-storage-0.18.0.crate) = 88992 +SHA256 (rust/crates/fs4-0.13.1.crate) = 8640e34b88f7652208ce9e88b1a37a2ae95227d84abec377ccd3c5cfeb141ed4 +SIZE (rust/crates/fs4-0.13.1.crate) = 28794 +SHA256 (rust/crates/funty-2.0.0.crate) = e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c +SIZE (rust/crates/funty-2.0.0.crate) = 13160 +SHA256 (rust/crates/futures-0.3.31.crate) = 65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876 +SIZE (rust/crates/futures-0.3.31.crate) = 54953 +SHA256 (rust/crates/futures-channel-0.3.31.crate) = 2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10 +SIZE (rust/crates/futures-channel-0.3.31.crate) = 31971 +SHA256 (rust/crates/futures-core-0.3.31.crate) = 05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e +SIZE (rust/crates/futures-core-0.3.31.crate) = 14318 +SHA256 (rust/crates/futures-executor-0.3.31.crate) = 1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f +SIZE (rust/crates/futures-executor-0.3.31.crate) = 17965 +SHA256 (rust/crates/futures-io-0.3.31.crate) = 9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6 +SIZE (rust/crates/futures-io-0.3.31.crate) = 9047 +SHA256 (rust/crates/futures-macro-0.3.31.crate) = 162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650 +SIZE (rust/crates/futures-macro-0.3.31.crate) = 11341 +SHA256 (rust/crates/futures-sink-0.3.31.crate) = e575fab7d1e0dcb8d0c7bcf9a63ee213816ab51902e6d244a95819acacf1d4f7 +SIZE (rust/crates/futures-sink-0.3.31.crate) = 7958 +SHA256 (rust/crates/futures-task-0.3.31.crate) = f90f7dce0722e95104fcb095585910c0977252f286e354b5e3bd38902cd99988 +SIZE (rust/crates/futures-task-0.3.31.crate) = 11217 +SHA256 (rust/crates/futures-util-0.3.31.crate) = 9fa08315bb612088cc391249efdc3bc77536f16c91f6cf495e6fbe85b20a4a81 +SIZE (rust/crates/futures-util-0.3.31.crate) = 162124 +SHA256 (rust/crates/generic-array-0.14.7.crate) = 85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a +SIZE (rust/crates/generic-array-0.14.7.crate) = 15950 +SHA256 (rust/crates/getrandom-0.2.16.crate) = 335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592 +SIZE (rust/crates/getrandom-0.2.16.crate) = 40163 +SHA256 (rust/crates/getrandom-0.3.3.crate) = 26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4 +SIZE (rust/crates/getrandom-0.3.3.crate) = 49493 +SHA256 (rust/crates/gimli-0.31.1.crate) = 07e28edb80900c19c28f1072f2e8aeca7fa06b23cd4169cefe1af5aa3260783f +SIZE (rust/crates/gimli-0.31.1.crate) = 279515 +SHA256 (rust/crates/h2-0.4.12.crate) = f3c0b69cfcb4e1b9f1bf2f53f95f766e4661169728ec61cd3fe5a0166f2d1386 +SIZE (rust/crates/h2-0.4.12.crate) = 176264 +SHA256 (rust/crates/hashbrown-0.13.2.crate) = 43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e +SIZE (rust/crates/hashbrown-0.13.2.crate) = 105265 +SHA256 (rust/crates/hashbrown-0.14.5.crate) = e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1 +SIZE (rust/crates/hashbrown-0.14.5.crate) = 141498 +SHA256 (rust/crates/hashbrown-0.15.5.crate) = 9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1 +SIZE (rust/crates/hashbrown-0.15.5.crate) = 140908 +SHA256 (rust/crates/heck-0.4.1.crate) = 95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8 +SIZE (rust/crates/heck-0.4.1.crate) = 11567 +SHA256 (rust/crates/heck-0.5.0.crate) = 2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea +SIZE (rust/crates/heck-0.5.0.crate) = 11517 +SHA256 (rust/crates/hex-0.4.3.crate) = 7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70 +SIZE (rust/crates/hex-0.4.3.crate) = 13299 +SHA256 (rust/crates/hkdf-0.12.4.crate) = 7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7 +SIZE (rust/crates/hkdf-0.12.4.crate) = 171163 +SHA256 (rust/crates/hmac-0.12.1.crate) = 6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e +SIZE (rust/crates/hmac-0.12.1.crate) = 42657 +SHA256 (rust/crates/http-1.3.1.crate) = f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565 +SIZE (rust/crates/http-1.3.1.crate) = 106063 +SHA256 (rust/crates/http-body-1.0.1.crate) = 1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184 +SIZE (rust/crates/http-body-1.0.1.crate) = 6125 +SHA256 (rust/crates/http-body-util-0.1.3.crate) = b021d93e26becf5dc7e1b75b1bed1fd93124b374ceb73f43d4d4eafec896a64a +SIZE (rust/crates/http-body-util-0.1.3.crate) = 16975 +SHA256 (rust/crates/httparse-1.10.1.crate) = 6dbf3de79e51f3d586ab4cb9d5c3e2c14aa28ed23d180cf89b4df0454a69cc87 +SIZE (rust/crates/httparse-1.10.1.crate) = 45190 +SHA256 (rust/crates/humantime-2.2.0.crate) = 9b112acc8b3adf4b107a8ec20977da0273a8c386765a3ec0229bd500a1443f9f +SIZE (rust/crates/humantime-2.2.0.crate) = 20646 +SHA256 (rust/crates/hyper-1.6.0.crate) = cc2b571658e38e0c01b1fdca3bbbe93c00d3d71693ff2770043f8c29bc7d6f80 +SIZE (rust/crates/hyper-1.6.0.crate) = 153923 +SHA256 (rust/crates/hyper-rustls-0.27.7.crate) = e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58 +SIZE (rust/crates/hyper-rustls-0.27.7.crate) = 35435 +SHA256 (rust/crates/hyper-util-0.1.16.crate) = 8d9b05277c7e8da2c93a568989bb6207bef0112e8d17df7a6eda4a3cf143bc5e +SIZE (rust/crates/hyper-util-0.1.16.crate) = 101184 +SHA256 (rust/crates/iana-time-zone-0.1.63.crate) = b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8 +SIZE (rust/crates/iana-time-zone-0.1.63.crate) = 32919 +SHA256 (rust/crates/iana-time-zone-haiku-0.1.2.crate) = f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f +SIZE (rust/crates/iana-time-zone-haiku-0.1.2.crate) = 7185 +SHA256 (rust/crates/icu_collections-2.0.0.crate) = 200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47 +SIZE (rust/crates/icu_collections-2.0.0.crate) = 83033 +SHA256 (rust/crates/icu_locale_core-2.0.0.crate) = 0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a +SIZE (rust/crates/icu_locale_core-2.0.0.crate) = 74430 +SHA256 (rust/crates/icu_normalizer-2.0.0.crate) = 436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979 +SIZE (rust/crates/icu_normalizer-2.0.0.crate) = 61543 +SHA256 (rust/crates/icu_normalizer_data-2.0.0.crate) = 00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3 +SIZE (rust/crates/icu_normalizer_data-2.0.0.crate) = 68101 +SHA256 (rust/crates/icu_properties-2.0.1.crate) = 016c619c1eeb94efb86809b015c58f479963de65bdb6253345c1a1276f22e32b +SIZE (rust/crates/icu_properties-2.0.1.crate) = 58165 +SHA256 (rust/crates/icu_properties_data-2.0.1.crate) = 298459143998310acd25ffe6810ed544932242d3f07083eee1084d83a71bd632 +SIZE (rust/crates/icu_properties_data-2.0.1.crate) = 159735 +SHA256 (rust/crates/icu_provider-2.0.0.crate) = 03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af +SIZE (rust/crates/icu_provider-2.0.0.crate) = 50966 +SHA256 (rust/crates/ident_case-1.0.1.crate) = b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39 +SIZE (rust/crates/ident_case-1.0.1.crate) = 3492 +SHA256 (rust/crates/idna-1.0.3.crate) = 686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e +SIZE (rust/crates/idna-1.0.3.crate) = 142515 +SHA256 (rust/crates/idna_adapter-1.2.1.crate) = 3acae9609540aa318d1bc588455225fb2085b9ed0c4f6bd0d9d5bcd86f1a0344 +SIZE (rust/crates/idna_adapter-1.2.1.crate) = 10389 +SHA256 (rust/crates/indexmap-2.10.0.crate) = fe4cd85333e22411419a0bcae1297d25e58c9443848b11dc6a86fefe8c78a661 +SIZE (rust/crates/indexmap-2.10.0.crate) = 95836 +SHA256 (rust/crates/inlinable_string-0.1.15.crate) = c8fae54786f62fb2918dcfae3d568594e50eb9b5c25bf04371af6fe7516452fb +SIZE (rust/crates/inlinable_string-0.1.15.crate) = 19290 +SHA256 (rust/crates/inout-0.1.4.crate) = 879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01 +SIZE (rust/crates/inout-0.1.4.crate) = 11280 +SHA256 (rust/crates/io-uring-0.7.9.crate) = d93587f37623a1a17d94ef2bc9ada592f5465fe7732084ab7beefabe5c77c0c4 +SIZE (rust/crates/io-uring-0.7.9.crate) = 99792 +SHA256 (rust/crates/ipnet-2.11.0.crate) = 469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130 +SIZE (rust/crates/ipnet-2.11.0.crate) = 29718 +SHA256 (rust/crates/iri-string-0.7.8.crate) = dbc5ebe9c3a1a7a5127f920a418f7585e9e758e911d0466ed004f393b0e380b2 +SIZE (rust/crates/iri-string-0.7.8.crate) = 141493 +SHA256 (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf +SIZE (rust/crates/is_terminal_polyfill-1.70.1.crate) = 7492 +SHA256 (rust/crates/itertools-0.14.0.crate) = 2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285 +SIZE (rust/crates/itertools-0.14.0.crate) = 152715 +SHA256 (rust/crates/itoa-1.0.15.crate) = 4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c +SIZE (rust/crates/itoa-1.0.15.crate) = 11231 +SHA256 (rust/crates/jobserver-0.1.33.crate) = 38f262f097c174adebe41eb73d66ae9c06b2844fb0da69969647bbddd9b0538a +SIZE (rust/crates/jobserver-0.1.33.crate) = 29136 +SHA256 (rust/crates/js-sys-0.3.77.crate) = 1cfaf33c695fc6e08064efbc1f72ec937429614f25eef83af942d0e227c3a28f +SIZE (rust/crates/js-sys-0.3.77.crate) = 55538 +SHA256 (rust/crates/lazy_static-1.5.0.crate) = bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe +SIZE (rust/crates/lazy_static-1.5.0.crate) = 14025 +SHA256 (rust/crates/libc-0.2.175.crate) = 6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543 +SIZE (rust/crates/libc-0.2.175.crate) = 788728 +SHA256 (rust/crates/libmimalloc-sys-0.1.43.crate) = bf88cd67e9de251c1781dbe2f641a1a3ad66eaae831b8a2c38fbdc5ddae16d4d +SIZE (rust/crates/libmimalloc-sys-0.1.43.crate) = 226498 +SHA256 (rust/crates/libredox-0.1.9.crate) = 391290121bad3d37fbddad76d8f5d1c1c314cfc646d143d7e07a3086ddff0ce3 +SIZE (rust/crates/libredox-0.1.9.crate) = 7281 +SHA256 (rust/crates/linux-raw-sys-0.4.15.crate) = d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab +SIZE (rust/crates/linux-raw-sys-0.4.15.crate) = 2150898 +SHA256 (rust/crates/linux-raw-sys-0.9.4.crate) = cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12 +SIZE (rust/crates/linux-raw-sys-0.9.4.crate) = 2311088 +SHA256 (rust/crates/litemap-0.8.0.crate) = 241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956 +SIZE (rust/crates/litemap-0.8.0.crate) = 34344 +SHA256 (rust/crates/lock_api-0.4.13.crate) = 96936507f153605bddfcda068dd804796c84324ed2510809e5b2a624c81da765 +SIZE (rust/crates/lock_api-0.4.13.crate) = 28565 +SHA256 (rust/crates/log-0.4.27.crate) = 13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94 +SIZE (rust/crates/log-0.4.27.crate) = 48120 +SHA256 (rust/crates/lru-slab-0.1.2.crate) = 112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154 +SIZE (rust/crates/lru-slab-0.1.2.crate) = 9090 +SHA256 (rust/crates/lz4-1.28.1.crate) = a20b523e860d03443e98350ceaac5e71c6ba89aea7d960769ec3ce37f4de5af4 +SIZE (rust/crates/lz4-1.28.1.crate) = 13585 +SHA256 (rust/crates/lz4-sys-1.11.1+lz4-1.10.0.crate) = 6bd8c0d6c6ed0cd30b3652886bb8711dc4bb01d637a68105a3d5158039b418e6 +SIZE (rust/crates/lz4-sys-1.11.1+lz4-1.10.0.crate) = 391317 +SHA256 (rust/crates/lz4_flex-0.11.5.crate) = 08ab2867e3eeeca90e844d1940eab391c9dc5228783db2ed999acbc0a9ed375a +SIZE (rust/crates/lz4_flex-0.11.5.crate) = 41977 +SHA256 (rust/crates/madsim-0.2.33.crate) = 9e1407eb233e5fe25bfb216a51b860882df237540374b7486eb38d4ab0753ec1 +SIZE (rust/crates/madsim-0.2.33.crate) = 75675 +SHA256 (rust/crates/madsim-macros-0.2.12.crate) = f3d248e97b1a48826a12c3828d921e8548e714394bf17274dd0a93910dc946e1 +SIZE (rust/crates/madsim-macros-0.2.12.crate) = 5314 +SHA256 (rust/crates/madsim-tokio-0.2.30.crate) = 7d3eb2acc57c82d21d699119b859e2df70a91dbdb84734885a1e72be83bdecb5 +SIZE (rust/crates/madsim-tokio-0.2.30.crate) = 3606 +SHA256 (rust/crates/matchers-0.1.0.crate) = 8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558 +SIZE (rust/crates/matchers-0.1.0.crate) = 6948 +SHA256 (rust/crates/md-5-0.10.6.crate) = d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf +SIZE (rust/crates/md-5-0.10.6.crate) = 16161 +SHA256 (rust/crates/memchr-2.7.5.crate) = 32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0 +SIZE (rust/crates/memchr-2.7.5.crate) = 97603 +SHA256 (rust/crates/memoffset-0.9.1.crate) = 488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a +SIZE (rust/crates/memoffset-0.9.1.crate) = 9032 +SHA256 (rust/crates/mimalloc-0.1.47.crate) = b1791cbe101e95af5764f06f20f6760521f7158f69dbf9d6baf941ee1bf6bc40 +SIZE (rust/crates/mimalloc-0.1.47.crate) = 4594 +SHA256 (rust/crates/miniz_oxide-0.8.9.crate) = 1fa76a2c86f704bdb222d66965fb3d63269ce38518b83cb0575fca855ebb6316 +SIZE (rust/crates/miniz_oxide-0.8.9.crate) = 67132 +SHA256 (rust/crates/mio-1.0.4.crate) = 78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c +SIZE (rust/crates/mio-1.0.4.crate) = 104212 +SHA256 (rust/crates/mixtrics-0.1.0.crate) = 749ed12bab176c8a42c13a679dd2de12876d5ad4abe7525548e31ae001a9ebbf +SIZE (rust/crates/mixtrics-0.1.0.crate) = 198420 +SHA256 (rust/crates/mixtrics-0.2.0.crate) = adbcddf5a90b959eea97ae505e0391f5c6dd411fbf546d43b9c59ad1c3bd4391 +SIZE (rust/crates/mixtrics-0.2.0.crate) = 198628 +SHA256 (rust/crates/naive-timer-0.2.0.crate) = 034a0ad7deebf0c2abcf2435950a6666c3c15ea9d8fad0c0f48efa8a7f843fed +SIZE (rust/crates/naive-timer-0.2.0.crate) = 4155 +SHA256 (rust/crates/nanorand-0.7.0.crate) = 6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3 +SIZE (rust/crates/nanorand-0.7.0.crate) = 18437 +SHA256 (rust/crates/nibble_vec-0.1.0.crate) = 77a5d83df9f36fe23f0c3648c6bbb8b0298bb5f1939c8f2704431371f4b84d43 +SIZE (rust/crates/nibble_vec-0.1.0.crate) = 11796 +SHA256 (rust/crates/no_std_io2-0.9.0.crate) = 3c2b9acd47481ab557a89a5665891be79e43cce8a29ad77aa9419d7be5a7c06a +SIZE (rust/crates/no_std_io2-0.9.0.crate) = 35884 +SHA256 (rust/crates/nu-ansi-term-0.46.0.crate) = 77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84 +SIZE (rust/crates/nu-ansi-term-0.46.0.crate) = 24311 +SHA256 (rust/crates/num-conv-0.1.0.crate) = 51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9 +SIZE (rust/crates/num-conv-0.1.0.crate) = 7444 +SHA256 (rust/crates/num-derive-0.4.2.crate) = ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202 +SIZE (rust/crates/num-derive-0.4.2.crate) = 14709 +SHA256 (rust/crates/num-format-0.4.4.crate) = a652d9771a63711fd3c3deb670acfbe5c30a4072e664d7a3bf5a9e1056ac72c3 +SIZE (rust/crates/num-format-0.4.4.crate) = 61509 +SHA256 (rust/crates/num-traits-0.2.19.crate) = 071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841 +SIZE (rust/crates/num-traits-0.2.19.crate) = 51631 +SHA256 (rust/crates/object-0.36.7.crate) = 62948e14d923ea95ea2c7c86c71013138b66525b86bdc08d2dcc262bdb497b87 +SIZE (rust/crates/object-0.36.7.crate) = 329938 +SHA256 (rust/crates/object_store-0.12.3.crate) = efc4f07659e11cd45a341cd24d71e683e3be65d9ff1f8150061678fe60437496 +SIZE (rust/crates/object_store-0.12.3.crate) = 271241 +SHA256 (rust/crates/once_cell-1.21.3.crate) = 42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d +SIZE (rust/crates/once_cell-1.21.3.crate) = 34534 +SHA256 (rust/crates/once_cell_polyfill-1.70.1.crate) = a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad +SIZE (rust/crates/once_cell_polyfill-1.70.1.crate) = 7510 +SHA256 (rust/crates/opaque-debug-0.3.1.crate) = c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381 +SIZE (rust/crates/opaque-debug-0.3.1.crate) = 7066 +SHA256 (rust/crates/openssl-probe-0.1.6.crate) = d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e +SIZE (rust/crates/openssl-probe-0.1.6.crate) = 8128 +SHA256 (rust/crates/ordered_hash_map-0.4.0.crate) = ab0e5f22bf6dd04abd854a8874247813a8fa2c8c1260eba6fbb150270ce7c176 +SIZE (rust/crates/ordered_hash_map-0.4.0.crate) = 17219 +SHA256 (rust/crates/ouroboros-0.18.5.crate) = 1e0f050db9c44b97a94723127e6be766ac5c340c48f2c4bb3ffa11713744be59 +SIZE (rust/crates/ouroboros-0.18.5.crate) = 11678 +SHA256 (rust/crates/ouroboros_macro-0.18.5.crate) = 3c7028bdd3d43083f6d8d4d5187680d0d3560d54df4cc9d752005268b41e64d0 +SIZE (rust/crates/ouroboros_macro-0.18.5.crate) = 22021 +SHA256 (rust/crates/overload-0.1.1.crate) = b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39 +SIZE (rust/crates/overload-0.1.1.crate) = 24439 +SHA256 (rust/crates/panic-message-0.3.0.crate) = 384e52fd8fbd4cbe3c317e8216260c21a0f9134de108cea8a4dd4e7e152c472d +SIZE (rust/crates/panic-message-0.3.0.crate) = 7274 +SHA256 (rust/crates/parking-2.2.1.crate) = f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba +SIZE (rust/crates/parking-2.2.1.crate) = 10685 +SHA256 (rust/crates/parking_lot-0.12.4.crate) = 70d58bf43669b5795d1576d0641cfb6fbb2057bf629506267a92807158584a13 +SIZE (rust/crates/parking_lot-0.12.4.crate) = 46779 +SHA256 (rust/crates/parking_lot_core-0.9.11.crate) = bc838d2a56b5b1a6c25f55575dfc605fabb63bb2365f6c2353ef9159aa69e4a5 +SIZE (rust/crates/parking_lot_core-0.9.11.crate) = 34773 +SHA256 (rust/crates/password-hash-0.5.0.crate) = 346f04948ba92c43e8469c1ee6736c7563d71012b17d40745260fe106aac2166 +SIZE (rust/crates/password-hash-0.5.0.crate) = 26884 +SHA256 (rust/crates/paste-1.0.15.crate) = 57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a +SIZE (rust/crates/paste-1.0.15.crate) = 18374 +SHA256 (rust/crates/pear-0.2.9.crate) = bdeeaa00ce488657faba8ebf44ab9361f9365a97bd39ffb8a60663f57ff4b467 +SIZE (rust/crates/pear-0.2.9.crate) = 19083 +SHA256 (rust/crates/pear_codegen-0.2.9.crate) = 4bab5b985dc082b345f812b7df84e1bef27e7207b39e448439ba8bd69c93f147 +SIZE (rust/crates/pear_codegen-0.2.9.crate) = 7250 +SHA256 (rust/crates/percent-encoding-2.3.1.crate) = e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e +SIZE (rust/crates/percent-encoding-2.3.1.crate) = 10235 +SHA256 (rust/crates/pin-project-1.1.10.crate) = 677f1add503faace112b9f1373e43e9e054bfdd22ff1a63c1bc485eaec6a6a8a +SIZE (rust/crates/pin-project-1.1.10.crate) = 56348 +SHA256 (rust/crates/pin-project-internal-1.1.10.crate) = 6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861 +SIZE (rust/crates/pin-project-internal-1.1.10.crate) = 29162 +SHA256 (rust/crates/pin-project-lite-0.2.16.crate) = 3b3cff922bd51709b605d9ead9aa71031d81447142d828eb4a6eba76fe619f9b +SIZE (rust/crates/pin-project-lite-0.2.16.crate) = 30504 +SHA256 (rust/crates/pin-utils-0.1.0.crate) = 8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184 +SIZE (rust/crates/pin-utils-0.1.0.crate) = 7580 +SHA256 (rust/crates/pkg-config-0.3.32.crate) = 7edddbd0b52d732b21ad9a5fab5c704c14cd949e5e9a1ec5929a24fded1b904c +SIZE (rust/crates/pkg-config-0.3.32.crate) = 21370 +SHA256 (rust/crates/poly1305-0.8.0.crate) = 8159bd90725d2df49889a078b54f4f79e87f1f8a8444194cdca81d38f5393abf +SIZE (rust/crates/poly1305-0.8.0.crate) = 32633 +SHA256 (rust/crates/potential_utf-0.1.2.crate) = e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585 +SIZE (rust/crates/potential_utf-0.1.2.crate) = 9613 +SHA256 (rust/crates/powerfmt-0.2.0.crate) = 439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391 +SIZE (rust/crates/powerfmt-0.2.0.crate) = 15165 +SHA256 (rust/crates/ppv-lite86-0.2.21.crate) = 85eae3c4ed2f50dcfe72643da4befc30deadb458a9b590d720cde2f2b1e97da9 +SIZE (rust/crates/ppv-lite86-0.2.21.crate) = 22522 +SHA256 (rust/crates/proc-macro-crate-3.3.0.crate) = edce586971a4dfaa28950c6f18ed55e0406c1ab88bbce2c6f6293a7aaba73d35 +SIZE (rust/crates/proc-macro-crate-3.3.0.crate) = 12432 +SHA256 (rust/crates/proc-macro2-1.0.97.crate) = d61789d7719defeb74ea5fe81f2fdfdbd28a803847077cecce2ff14e1472f6f1 +SIZE (rust/crates/proc-macro2-1.0.97.crate) = 52865 +SHA256 (rust/crates/proc-macro2-diagnostics-0.10.1.crate) = af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8 +SIZE (rust/crates/proc-macro2-diagnostics-0.10.1.crate) = 12219 +SHA256 (rust/crates/quick-xml-0.38.1.crate) = 9845d9dccf565065824e69f9f235fafba1587031eda353c1f1561cd6a6be78f4 +SIZE (rust/crates/quick-xml-0.38.1.crate) = 201181 +SHA256 (rust/crates/quinn-0.11.8.crate) = 626214629cda6781b6dc1d316ba307189c85ba657213ce642d9c77670f8202c8 +SIZE (rust/crates/quinn-0.11.8.crate) = 79949 +SHA256 (rust/crates/quinn-proto-0.11.12.crate) = 49df843a9161c85bb8aae55f101bc0bac8bcafd637a620d9122fd7e0b2f7422e +SIZE (rust/crates/quinn-proto-0.11.12.crate) = 235821 +SHA256 (rust/crates/quinn-udp-0.5.13.crate) = fcebb1209ee276352ef14ff8732e24cc2b02bbac986cd74a4c81bcb2f9881970 +SIZE (rust/crates/quinn-udp-0.5.13.crate) = 32621 +SHA256 (rust/crates/quote-1.0.40.crate) = 1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d +SIZE (rust/crates/quote-1.0.40.crate) = 31063 +SHA256 (rust/crates/r-efi-5.3.0.crate) = 69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f +SIZE (rust/crates/r-efi-5.3.0.crate) = 64532 +SHA256 (rust/crates/radium-0.7.0.crate) = dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09 +SIZE (rust/crates/radium-0.7.0.crate) = 10906 +SHA256 (rust/crates/radix_trie-0.2.1.crate) = c069c179fcdc6a2fe24d8d18305cf085fdbd4f922c041943e203685d6a1c58fd +SIZE (rust/crates/radix_trie-0.2.1.crate) = 251366 +SHA256 (rust/crates/rand-0.8.5.crate) = 34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404 +SIZE (rust/crates/rand-0.8.5.crate) = 87113 +SHA256 (rust/crates/rand-0.9.2.crate) = 6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1 +SIZE (rust/crates/rand-0.9.2.crate) = 99930 +SHA256 (rust/crates/rand_chacha-0.3.1.crate) = e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88 +SIZE (rust/crates/rand_chacha-0.3.1.crate) = 15251 +SHA256 (rust/crates/rand_chacha-0.9.0.crate) = d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb +SIZE (rust/crates/rand_chacha-0.9.0.crate) = 18258 +SHA256 (rust/crates/rand_core-0.6.4.crate) = ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c +SIZE (rust/crates/rand_core-0.6.4.crate) = 22666 +SHA256 (rust/crates/rand_core-0.9.3.crate) = 99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38 +SIZE (rust/crates/rand_core-0.9.3.crate) = 24543 +SHA256 (rust/crates/rand_xorshift-0.4.0.crate) = 513962919efc330f829edb2535844d1b912b0fbe2ca165d613e4e8788bb05a5a +SIZE (rust/crates/rand_xorshift-0.4.0.crate) = 10262 +SHA256 (rust/crates/rand_xoshiro-0.6.0.crate) = 6f97cdb2a36ed4183de61b2f824cc45c9f1037f28afe0a322e9fff4c108b5aaa +SIZE (rust/crates/rand_xoshiro-0.6.0.crate) = 17125 +SHA256 (rust/crates/rand_xoshiro-0.7.0.crate) = f703f4665700daf5512dcca5f43afa6af89f09db47fb56be587f80636bda2d41 +SIZE (rust/crates/rand_xoshiro-0.7.0.crate) = 18189 +SHA256 (rust/crates/redox_syscall-0.5.17.crate) = 5407465600fb0548f1442edf71dd20683c6ed326200ace4b1ef0763521bb3b77 +SIZE (rust/crates/redox_syscall-0.5.17.crate) = 30002 +SHA256 (rust/crates/regex-1.11.1.crate) = b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191 +SIZE (rust/crates/regex-1.11.1.crate) = 254170 +SHA256 (rust/crates/regex-automata-0.1.10.crate) = 6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132 +SIZE (rust/crates/regex-automata-0.1.10.crate) = 114533 +SHA256 (rust/crates/regex-automata-0.4.9.crate) = 809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908 +SIZE (rust/crates/regex-automata-0.4.9.crate) = 618525 +SHA256 (rust/crates/regex-syntax-0.6.29.crate) = f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1 +SIZE (rust/crates/regex-syntax-0.6.29.crate) = 299752 +SHA256 (rust/crates/regex-syntax-0.8.5.crate) = 2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c +SIZE (rust/crates/regex-syntax-0.8.5.crate) = 357541 +SHA256 (rust/crates/reqwest-0.12.23.crate) = d429f34c8092b2d42c7c93cec323bb4adeb7c67698f70839adec842ec10c7ceb +SIZE (rust/crates/reqwest-0.12.23.crate) = 161307 +SHA256 (rust/crates/ring-0.17.14.crate) = a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7 +SIZE (rust/crates/ring-0.17.14.crate) = 1502610 +SHA256 (rust/crates/rust_decimal-1.37.2.crate) = b203a6425500a03e0919c42d3c47caca51e79f1132046626d2c8871c5092035d +SIZE (rust/crates/rust_decimal-1.37.2.crate) = 152312 +SHA256 (rust/crates/rustc-demangle-0.1.26.crate) = 56f7d92ca342cea22a06f2121d944b4fd82af56988c270852495420f961d4ace +SIZE (rust/crates/rustc-demangle-0.1.26.crate) = 30340 +SHA256 (rust/crates/rustc-hash-2.1.1.crate) = 357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d +SIZE (rust/crates/rustc-hash-2.1.1.crate) = 14154 +SHA256 (rust/crates/rustc_version-0.4.1.crate) = cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92 +SIZE (rust/crates/rustc_version-0.4.1.crate) = 12245 +SHA256 (rust/crates/rustix-0.38.44.crate) = fdb5bc1ae2baa591800df16c9ca78619bf65c0488b41b96ccec5d11220d8c154 +SIZE (rust/crates/rustix-0.38.44.crate) = 379347 +SHA256 (rust/crates/rustix-1.0.8.crate) = 11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8 +SIZE (rust/crates/rustix-1.0.8.crate) = 416688 +SHA256 (rust/crates/rustls-0.23.31.crate) = c0ebcbd2f03de0fc1122ad9bb24b127a5a6cd51d72604a3f3c50ac459762b6cc +SIZE (rust/crates/rustls-0.23.31.crate) = 371259 +SHA256 (rust/crates/rustls-native-certs-0.8.1.crate) = 7fcff2dd52b58a8d98a70243663a0d234c4e2b79235637849d15913394a247d3 +SIZE (rust/crates/rustls-native-certs-0.8.1.crate) = 31129 +SHA256 (rust/crates/rustls-pemfile-2.2.0.crate) = dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50 +SIZE (rust/crates/rustls-pemfile-2.2.0.crate) = 25849 +SHA256 (rust/crates/rustls-pki-types-1.12.0.crate) = 229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79 +SIZE (rust/crates/rustls-pki-types-1.12.0.crate) = 64740 +SHA256 (rust/crates/rustls-webpki-0.103.4.crate) = 0a17884ae0c1b773f1ccd2bd4a8c72f16da897310a98b0e84bf349ad5ead92fc +SIZE (rust/crates/rustls-webpki-0.103.4.crate) = 84241 +SHA256 (rust/crates/rustversion-1.0.22.crate) = b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d +SIZE (rust/crates/rustversion-1.0.22.crate) = 21096 +SHA256 (rust/crates/ryu-1.0.20.crate) = 28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f +SIZE (rust/crates/ryu-1.0.20.crate) = 48738 +SHA256 (rust/crates/same-file-1.0.6.crate) = 93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502 +SIZE (rust/crates/same-file-1.0.6.crate) = 10183 +SHA256 (rust/crates/schannel-0.1.27.crate) = 1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d +SIZE (rust/crates/schannel-0.1.27.crate) = 42772 +SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49 +SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619 +SHA256 (rust/crates/security-framework-3.3.0.crate) = 80fb1d92c5028aa318b4b8bd7302a5bfcf48be96a37fc6fc790f806b0004ee0c +SIZE (rust/crates/security-framework-3.3.0.crate) = 86425 +SHA256 (rust/crates/security-framework-sys-2.14.0.crate) = 49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32 +SIZE (rust/crates/security-framework-sys-2.14.0.crate) = 20537 +SHA256 (rust/crates/semver-1.0.26.crate) = 56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0 +SIZE (rust/crates/semver-1.0.26.crate) = 31303 +SHA256 (rust/crates/serde-1.0.219.crate) = 5f0e2c6ed6606019b4e29e69dbaba95b11854410e5347d525002456dbbb786b6 +SIZE (rust/crates/serde-1.0.219.crate) = 78983 +SHA256 (rust/crates/serde_derive-1.0.219.crate) = 5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00 +SIZE (rust/crates/serde_derive-1.0.219.crate) = 57798 +SHA256 (rust/crates/serde_json-1.0.142.crate) = 030fedb782600dcbd6f02d479bf0d817ac3bb40d644745b769d6a96bc3afc5a7 +SIZE (rust/crates/serde_json-1.0.142.crate) = 155363 +SHA256 (rust/crates/serde_spanned-0.6.9.crate) = bf41e0cfaf7226dca15e8197172c295a782857fcb97fad1808a166870dee75a3 +SIZE (rust/crates/serde_spanned-0.6.9.crate) = 10210 +SHA256 (rust/crates/serde_spanned-1.0.0.crate) = 40734c41988f7306bb04f0ecf60ec0f3f1caa34290e4e8ea471dcd3346483b83 +SIZE (rust/crates/serde_spanned-1.0.0.crate) = 10956 +SHA256 (rust/crates/serde_urlencoded-0.7.1.crate) = d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd +SIZE (rust/crates/serde_urlencoded-0.7.1.crate) = 12822 +SHA256 (rust/crates/serde_yaml-0.9.34+deprecated.crate) = 6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47 +SIZE (rust/crates/serde_yaml-0.9.34+deprecated.crate) = 65290 +SHA256 (rust/crates/sha2-0.10.9.crate) = a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283 +SIZE (rust/crates/sha2-0.10.9.crate) = 29271 +SHA256 (rust/crates/sharded-slab-0.1.7.crate) = f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6 +SIZE (rust/crates/sharded-slab-0.1.7.crate) = 58227 +SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64 +SIZE (rust/crates/shlex-1.3.0.crate) = 18713 +SHA256 (rust/crates/signal-hook-registry-1.4.6.crate) = b2a4719bff48cee6b39d12c020eeb490953ad2443b7055bd0b21fca26bd8c28b +SIZE (rust/crates/signal-hook-registry-1.4.6.crate) = 19277 +SHA256 (rust/crates/siphasher-1.0.1.crate) = 56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d +SIZE (rust/crates/siphasher-1.0.1.crate) = 10351 +SHA256 (rust/crates/slab-0.4.11.crate) = 7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589 +SIZE (rust/crates/slab-0.4.11.crate) = 18549 +SHA256 (rust/crates/smallvec-1.15.1.crate) = 67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03 +SIZE (rust/crates/smallvec-1.15.1.crate) = 38116 +SHA256 (rust/crates/socket2-0.5.10.crate) = e22376abed350d73dd1cd119b57ffccad95b4e585a7cda43e286245ce23c0678 +SIZE (rust/crates/socket2-0.5.10.crate) = 58169 +SHA256 (rust/crates/socket2-0.6.0.crate) = 233504af464074f9d066d7b5416c5f9b894a5862a6506e306f7b816cdd6f1807 +SIZE (rust/crates/socket2-0.6.0.crate) = 57974 +SHA256 (rust/crates/spin-0.9.8.crate) = 6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67 +SIZE (rust/crates/spin-0.9.8.crate) = 38958 +SHA256 (rust/crates/stable_deref_trait-1.2.0.crate) = a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3 +SIZE (rust/crates/stable_deref_trait-1.2.0.crate) = 8054 +SHA256 (rust/crates/static_assertions-1.1.0.crate) = a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f +SIZE (rust/crates/static_assertions-1.1.0.crate) = 18480 +SHA256 (rust/crates/strsim-0.10.0.crate) = 73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623 +SIZE (rust/crates/strsim-0.10.0.crate) = 11355 +SHA256 (rust/crates/strsim-0.11.1.crate) = 7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f +SIZE (rust/crates/strsim-0.11.1.crate) = 14266 +SHA256 (rust/crates/subtle-2.6.1.crate) = 13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292 +SIZE (rust/crates/subtle-2.6.1.crate) = 14562 +SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237 +SIZE (rust/crates/syn-1.0.109.crate) = 237611 +SHA256 (rust/crates/syn-2.0.105.crate) = 7bc3fcb250e53458e712715cf74285c1f889686520d79294a9ef3bd7aa1fc619 +SIZE (rust/crates/syn-2.0.105.crate) = 299882 +SHA256 (rust/crates/sync_wrapper-1.0.2.crate) = 0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263 +SIZE (rust/crates/sync_wrapper-1.0.2.crate) = 6958 +SHA256 (rust/crates/synstructure-0.13.2.crate) = 728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2 +SIZE (rust/crates/synstructure-0.13.2.crate) = 18950 +SHA256 (rust/crates/tap-1.0.1.crate) = 55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369 +SIZE (rust/crates/tap-1.0.1.crate) = 11316 +SHA256 (rust/crates/thiserror-1.0.69.crate) = b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52 +SIZE (rust/crates/thiserror-1.0.69.crate) = 22198 +SHA256 (rust/crates/thiserror-2.0.14.crate) = 0b0949c3a6c842cbde3f1686d6eea5a010516deb7085f79db747562d4102f41e +SIZE (rust/crates/thiserror-2.0.14.crate) = 29021 +SHA256 (rust/crates/thiserror-impl-1.0.69.crate) = 4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1 +SIZE (rust/crates/thiserror-impl-1.0.69.crate) = 18365 +SHA256 (rust/crates/thiserror-impl-2.0.14.crate) = cc5b44b4ab9c2fdd0e0512e6bece8388e214c0749f5862b114cc5b7a25daf227 +SIZE (rust/crates/thiserror-impl-2.0.14.crate) = 21219 +SHA256 (rust/crates/thread_local-1.1.9.crate) = f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185 +SIZE (rust/crates/thread_local-1.1.9.crate) = 19315 +SHA256 (rust/crates/tikv-jemalloc-sys-0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7.crate) = cd3c60906412afa9c2b5b5a48ca6a5abe5736aec9eb48ad05037a677e52e4e2d +SIZE (rust/crates/tikv-jemalloc-sys-0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7.crate) = 897133 +SHA256 (rust/crates/tikv-jemallocator-0.6.0.crate) = 4cec5ff18518d81584f477e9bfdf957f5bb0979b0bac3af4ca30b5b3ae2d2865 +SIZE (rust/crates/tikv-jemallocator-0.6.0.crate) = 13700 +SHA256 (rust/crates/time-0.3.41.crate) = 8a7619e19bc266e0f9c5e6686659d394bc57973859340060a69221e57dbc0c40 +SIZE (rust/crates/time-0.3.41.crate) = 138369 +SHA256 (rust/crates/time-core-0.1.4.crate) = c9e9a38711f559d9e3ce1cdb06dd7c5b8ea546bc90052da6d06bb76da74bb07c +SIZE (rust/crates/time-core-0.1.4.crate) = 8422 +SHA256 (rust/crates/tinystr-0.8.1.crate) = 5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b +SIZE (rust/crates/tinystr-0.8.1.crate) = 23333 +SHA256 (rust/crates/tinyvec-1.9.0.crate) = 09b3661f17e86524eccd4371ab0429194e0d7c008abb45f7a7495b1719463c71 +SIZE (rust/crates/tinyvec-1.9.0.crate) = 54137 +SHA256 (rust/crates/tinyvec_macros-0.1.1.crate) = 1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20 +SIZE (rust/crates/tinyvec_macros-0.1.1.crate) = 5865 +SHA256 (rust/crates/tokio-1.47.1.crate) = 89e49afdadebb872d3145a5638b59eb0691ea23e46ca484037cfab3b76b95038 +SIZE (rust/crates/tokio-1.47.1.crate) = 829790 +SHA256 (rust/crates/tokio-macros-2.5.0.crate) = 6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8 +SIZE (rust/crates/tokio-macros-2.5.0.crate) = 12617 +SHA256 (rust/crates/tokio-rustls-0.26.2.crate) = 8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b +SIZE (rust/crates/tokio-rustls-0.26.2.crate) = 31655 +SHA256 (rust/crates/tokio-util-0.7.16.crate) = 14307c986784f72ef81c89db7d9e28d6ac26d16213b109ea501696195e6e3ce5 +SIZE (rust/crates/tokio-util-0.7.16.crate) = 127775 +SHA256 (rust/crates/toml-0.8.23.crate) = dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362 +SIZE (rust/crates/toml-0.8.23.crate) = 36050 +SHA256 (rust/crates/toml-0.9.5.crate) = 75129e1dc5000bfbaa9fee9d1b21f974f9fbad9daec557a521ee6e080825f6e8 +SIZE (rust/crates/toml-0.9.5.crate) = 56833 +SHA256 (rust/crates/toml_datetime-0.6.11.crate) = 22cddaf88f4fbc13c51aebbf5f8eceb5c7c5a9da2ac40a13519eb5b0a0e8f11c +SIZE (rust/crates/toml_datetime-0.6.11.crate) = 16125 +SHA256 (rust/crates/toml_datetime-0.7.0.crate) = bade1c3e902f58d73d3f294cd7f20391c1cb2fbcb643b73566bc773971df91e3 +SIZE (rust/crates/toml_datetime-0.7.0.crate) = 18108 +SHA256 (rust/crates/toml_edit-0.22.27.crate) = 41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a +SIZE (rust/crates/toml_edit-0.22.27.crate) = 78602 +SHA256 (rust/crates/toml_parser-1.0.2.crate) = b551886f449aa90d4fe2bdaa9f4a2577ad2dde302c61ecf262d80b116db95c10 +SIZE (rust/crates/toml_parser-1.0.2.crate) = 35241 +SHA256 (rust/crates/toml_write-0.1.2.crate) = 5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801 +SIZE (rust/crates/toml_write-0.1.2.crate) = 15660 +SHA256 (rust/crates/toml_writer-1.0.2.crate) = fcc842091f2def52017664b53082ecbbeb5c7731092bad69d2c63050401dfd64 +SIZE (rust/crates/toml_writer-1.0.2.crate) = 16988 +SHA256 (rust/crates/tower-0.5.2.crate) = d039ad9159c98b70ecfd540b2573b97f7f52c3e8d9f8ad57a24b916a536975f9 +SIZE (rust/crates/tower-0.5.2.crate) = 109417 +SHA256 (rust/crates/tower-http-0.6.6.crate) = adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2 +SIZE (rust/crates/tower-http-0.6.6.crate) = 133515 +SHA256 (rust/crates/tower-layer-0.3.3.crate) = 121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e +SIZE (rust/crates/tower-layer-0.3.3.crate) = 6180 +SHA256 (rust/crates/tower-service-0.3.3.crate) = 8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3 +SIZE (rust/crates/tower-service-0.3.3.crate) = 6950 +SHA256 (rust/crates/tracing-0.1.41.crate) = 784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0 +SIZE (rust/crates/tracing-0.1.41.crate) = 82448 +SHA256 (rust/crates/tracing-attributes-0.1.30.crate) = 81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903 +SIZE (rust/crates/tracing-attributes-0.1.30.crate) = 39142 +SHA256 (rust/crates/tracing-core-0.1.34.crate) = b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678 +SIZE (rust/crates/tracing-core-0.1.34.crate) = 63760 +SHA256 (rust/crates/tracing-log-0.2.0.crate) = ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3 +SIZE (rust/crates/tracing-log-0.2.0.crate) = 17561 +SHA256 (rust/crates/tracing-subscriber-0.3.19.crate) = e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008 +SIZE (rust/crates/tracing-subscriber-0.3.19.crate) = 198345 +SHA256 (rust/crates/try-lock-0.2.5.crate) = e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b +SIZE (rust/crates/try-lock-0.2.5.crate) = 4314 +SHA256 (rust/crates/twox-hash-2.1.1.crate) = 8b907da542cbced5261bd3256de1b3a1bf340a3d37f93425a07362a1d687de56 +SIZE (rust/crates/twox-hash-2.1.1.crate) = 35627 +SHA256 (rust/crates/typenum-1.18.0.crate) = 1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f +SIZE (rust/crates/typenum-1.18.0.crate) = 74871 +SHA256 (rust/crates/ulid-1.2.1.crate) = 470dbf6591da1b39d43c14523b2b469c86879a53e8b758c8e090a470fe7b1fbe +SIZE (rust/crates/ulid-1.2.1.crate) = 17727 +SHA256 (rust/crates/uncased-0.9.10.crate) = e1b88fcfe09e89d3866a5c11019378088af2d24c3fbd4f0543f96b479ec90697 +SIZE (rust/crates/uncased-0.9.10.crate) = 10872 +SHA256 (rust/crates/unicode-ident-1.0.18.crate) = 5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512 +SIZE (rust/crates/unicode-ident-1.0.18.crate) = 47743 +SHA256 (rust/crates/unicode-segmentation-1.12.0.crate) = f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493 +SIZE (rust/crates/unicode-segmentation-1.12.0.crate) = 106323 +SHA256 (rust/crates/unicode-width-0.2.1.crate) = 4a1a07cc7db3810833284e8d372ccdc6da29741639ecc70c9ec107df0fa6154c +SIZE (rust/crates/unicode-width-0.2.1.crate) = 279344 +SHA256 (rust/crates/universal-hash-0.5.1.crate) = fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea +SIZE (rust/crates/universal-hash-0.5.1.crate) = 9146 +SHA256 (rust/crates/unsafe-libyaml-0.2.11.crate) = 673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861 +SIZE (rust/crates/unsafe-libyaml-0.2.11.crate) = 62101 +SHA256 (rust/crates/untrusted-0.9.0.crate) = 8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1 +SIZE (rust/crates/untrusted-0.9.0.crate) = 14447 +SHA256 (rust/crates/url-2.5.4.crate) = 32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60 +SIZE (rust/crates/url-2.5.4.crate) = 81097 +SHA256 (rust/crates/utf8_iter-1.0.4.crate) = b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be +SIZE (rust/crates/utf8_iter-1.0.4.crate) = 10437 +SHA256 (rust/crates/utf8parse-0.2.2.crate) = 06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821 +SIZE (rust/crates/utf8parse-0.2.2.crate) = 13499 +SHA256 (rust/crates/uuid-1.18.0.crate) = f33196643e165781c20a5ead5582283a7dacbb87855d867fbc2df3f81eddc1be +SIZE (rust/crates/uuid-1.18.0.crate) = 59782 +SHA256 (rust/crates/valuable-0.1.1.crate) = ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65 +SIZE (rust/crates/valuable-0.1.1.crate) = 28679 +SHA256 (rust/crates/version_check-0.9.5.crate) = 0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a +SIZE (rust/crates/version_check-0.9.5.crate) = 15554 +SHA256 (rust/crates/walkdir-2.5.0.crate) = 29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b +SIZE (rust/crates/walkdir-2.5.0.crate) = 23951 +SHA256 (rust/crates/want-0.3.1.crate) = bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e +SIZE (rust/crates/want-0.3.1.crate) = 6398 +SHA256 (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b +SIZE (rust/crates/wasi-0.11.1+wasi-snapshot-preview1.crate) = 28477 +SHA256 (rust/crates/wasi-0.14.2+wasi-0.2.4.crate) = 9683f9a5a998d873c0d21fcbe3c083009670149a8fab228644b8bd36b2c48cb3 +SIZE (rust/crates/wasi-0.14.2+wasi-0.2.4.crate) = 140921 +SHA256 (rust/crates/wasm-bindgen-0.2.100.crate) = 1edc8929d7499fc4e8f0be2262a241556cfc54a0bea223790e71446f2aab1ef5 +SIZE (rust/crates/wasm-bindgen-0.2.100.crate) = 48288 +SHA256 (rust/crates/wasm-bindgen-backend-0.2.100.crate) = 2f0a0651a5c2bc21487bde11ee802ccaf4c51935d0d3d42a6101f98161700bc6 +SIZE (rust/crates/wasm-bindgen-backend-0.2.100.crate) = 32111 +SHA256 (rust/crates/wasm-bindgen-futures-0.4.50.crate) = 555d470ec0bc3bb57890405e5d4322cc9ea83cebb085523ced7be4144dac1e61 +SIZE (rust/crates/wasm-bindgen-futures-0.4.50.crate) = 16181 +SHA256 (rust/crates/wasm-bindgen-macro-0.2.100.crate) = 7fe63fc6d09ed3792bd0897b314f53de8e16568c2b3f7982f468c0bf9bd0b407 +SIZE (rust/crates/wasm-bindgen-macro-0.2.100.crate) = 9663 +SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.100.crate) = 8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de +SIZE (rust/crates/wasm-bindgen-macro-support-0.2.100.crate) = 26243 +SHA256 (rust/crates/wasm-bindgen-shared-0.2.100.crate) = 1a05d73b933a847d6cccdda8f838a22ff101ad9bf93e33684f39c1f5f0eece3d +SIZE (rust/crates/wasm-bindgen-shared-0.2.100.crate) = 8570 +SHA256 (rust/crates/wasm-streams-0.4.2.crate) = 15053d8d85c7eccdbefef60f06769760a563c7f0a9d6902a13d35c7800b0ad65 +SIZE (rust/crates/wasm-streams-0.4.2.crate) = 36773 +SHA256 (rust/crates/web-sys-0.3.77.crate) = 33b6dd2ef9186f1f2072e409e99cd22a975331a6b3591b12c764e0e55c60d5d2 +SIZE (rust/crates/web-sys-0.3.77.crate) = 638246 +SHA256 (rust/crates/web-time-1.1.0.crate) = 5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb +SIZE (rust/crates/web-time-1.1.0.crate) = 18026 +SHA256 (rust/crates/winapi-0.3.9.crate) = 5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419 +SIZE (rust/crates/winapi-0.3.9.crate) = 1200382 +SHA256 (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6 +SIZE (rust/crates/winapi-i686-pc-windows-gnu-0.4.0.crate) = 2918815 +SHA256 (rust/crates/winapi-util-0.1.9.crate) = cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb +SIZE (rust/crates/winapi-util-0.1.9.crate) = 12464 +SHA256 (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f +SIZE (rust/crates/winapi-x86_64-pc-windows-gnu-0.4.0.crate) = 2947998 +SHA256 (rust/crates/windows-core-0.61.2.crate) = c0fdd3ddb90610c7638aa2b3a3ab2904fb9e5cdbecc643ddb3647212781c4ae3 +SIZE (rust/crates/windows-core-0.61.2.crate) = 36771 +SHA256 (rust/crates/windows-implement-0.60.0.crate) = a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836 +SIZE (rust/crates/windows-implement-0.60.0.crate) = 15073 +SHA256 (rust/crates/windows-interface-0.59.1.crate) = bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8 +SIZE (rust/crates/windows-interface-0.59.1.crate) = 11735 +SHA256 (rust/crates/windows-link-0.1.3.crate) = 5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a +SIZE (rust/crates/windows-link-0.1.3.crate) = 6154 +SHA256 (rust/crates/windows-result-0.3.4.crate) = 56f42bd332cc6c8eac5af113fc0c1fd6a8fd2aa08a0119358686e5160d0586c6 +SIZE (rust/crates/windows-result-0.3.4.crate) = 13418 +SHA256 (rust/crates/windows-strings-0.4.2.crate) = 56e6c93f3a0c3b36176cb1327a4958a0353d5d166c2a35cb268ace15e91d3b57 +SIZE (rust/crates/windows-strings-0.4.2.crate) = 13983 +SHA256 (rust/crates/windows-sys-0.52.0.crate) = 282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d +SIZE (rust/crates/windows-sys-0.52.0.crate) = 2576877 +SHA256 (rust/crates/windows-sys-0.59.0.crate) = 1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b +SIZE (rust/crates/windows-sys-0.59.0.crate) = 2387323 +SHA256 (rust/crates/windows-sys-0.60.2.crate) = f2f500e4d28234f72040990ec9d39e3a6b950f9f22d3dba18416c35882612bcb +SIZE (rust/crates/windows-sys-0.60.2.crate) = 2518479 +SHA256 (rust/crates/windows-targets-0.52.6.crate) = 9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973 +SIZE (rust/crates/windows-targets-0.52.6.crate) = 6403 +SHA256 (rust/crates/windows-targets-0.53.3.crate) = d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91 +SIZE (rust/crates/windows-targets-0.53.3.crate) = 7099 +SHA256 (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3 +SIZE (rust/crates/windows_aarch64_gnullvm-0.52.6.crate) = 435718 +SHA256 (rust/crates/windows_aarch64_gnullvm-0.53.0.crate) = 86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764 +SIZE (rust/crates/windows_aarch64_gnullvm-0.53.0.crate) = 782443 +SHA256 (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469 +SIZE (rust/crates/windows_aarch64_msvc-0.52.6.crate) = 832615 +SHA256 (rust/crates/windows_aarch64_msvc-0.53.0.crate) = c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c +SIZE (rust/crates/windows_aarch64_msvc-0.53.0.crate) = 834446 +SHA256 (rust/crates/windows_i686_gnu-0.52.6.crate) = 8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b +SIZE (rust/crates/windows_i686_gnu-0.52.6.crate) = 880402 +SHA256 (rust/crates/windows_i686_gnu-0.53.0.crate) = c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3 +SIZE (rust/crates/windows_i686_gnu-0.53.0.crate) = 936973 +SHA256 (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66 +SIZE (rust/crates/windows_i686_gnullvm-0.52.6.crate) = 475940 +SHA256 (rust/crates/windows_i686_gnullvm-0.53.0.crate) = 9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11 +SIZE (rust/crates/windows_i686_gnullvm-0.53.0.crate) = 854056 +SHA256 (rust/crates/windows_i686_msvc-0.52.6.crate) = 240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66 +SIZE (rust/crates/windows_i686_msvc-0.52.6.crate) = 901163 +SHA256 (rust/crates/windows_i686_msvc-0.53.0.crate) = 581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d +SIZE (rust/crates/windows_i686_msvc-0.53.0.crate) = 903450 +SHA256 (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78 +SIZE (rust/crates/windows_x86_64_gnu-0.52.6.crate) = 836363 +SHA256 (rust/crates/windows_x86_64_gnu-0.53.0.crate) = 2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba +SIZE (rust/crates/windows_x86_64_gnu-0.53.0.crate) = 902585 +SHA256 (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d +SIZE (rust/crates/windows_x86_64_gnullvm-0.52.6.crate) = 435707 +SHA256 (rust/crates/windows_x86_64_gnullvm-0.53.0.crate) = 0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57 +SIZE (rust/crates/windows_x86_64_gnullvm-0.53.0.crate) = 782434 +SHA256 (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec +SIZE (rust/crates/windows_x86_64_msvc-0.52.6.crate) = 832564 +SHA256 (rust/crates/windows_x86_64_msvc-0.53.0.crate) = 271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486 +SIZE (rust/crates/windows_x86_64_msvc-0.53.0.crate) = 834400 +SHA256 (rust/crates/winnow-0.6.26.crate) = 1e90edd2ac1aa278a5c4599b1d89cf03074b610800f866d4026dc199d7929a28 +SIZE (rust/crates/winnow-0.6.26.crate) = 167349 +SHA256 (rust/crates/winnow-0.7.12.crate) = f3edebf492c8125044983378ecb5766203ad3b4c2f7a922bd7dd207f6d443e95 +SIZE (rust/crates/winnow-0.7.12.crate) = 174403 +SHA256 (rust/crates/wit-bindgen-rt-0.39.0.crate) = 6f42320e61fe2cfd34354ecb597f86f413484a798ba44a8ca1165c58d42da6c1 +SIZE (rust/crates/wit-bindgen-rt-0.39.0.crate) = 12241 +SHA256 (rust/crates/writeable-0.6.1.crate) = ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb +SIZE (rust/crates/writeable-0.6.1.crate) = 24068 +SHA256 (rust/crates/wyz-0.5.1.crate) = 05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed +SIZE (rust/crates/wyz-0.5.1.crate) = 18790 +SHA256 (rust/crates/yansi-1.0.1.crate) = cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049 +SIZE (rust/crates/yansi-1.0.1.crate) = 75497 +SHA256 (rust/crates/yoke-0.8.0.crate) = 5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc +SIZE (rust/crates/yoke-0.8.0.crate) = 28726 +SHA256 (rust/crates/yoke-derive-0.8.0.crate) = 38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6 +SIZE (rust/crates/yoke-derive-0.8.0.crate) = 7521 +SHA256 (rust/crates/zerocopy-0.8.26.crate) = 1039dd0d3c310cf05de012d8a39ff557cb0d23087fd44cad61df08fc31907a2f +SIZE (rust/crates/zerocopy-0.8.26.crate) = 249223 +SHA256 (rust/crates/zerocopy-derive-0.8.26.crate) = 9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181 +SIZE (rust/crates/zerocopy-derive-0.8.26.crate) = 88080 +SHA256 (rust/crates/zerofrom-0.1.6.crate) = 50cc42e0333e05660c3587f3bf9d0478688e15d870fab3346451ce7f8c9fbea5 +SIZE (rust/crates/zerofrom-0.1.6.crate) = 5669 +SHA256 (rust/crates/zerofrom-derive-0.1.6.crate) = d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502 +SIZE (rust/crates/zerofrom-derive-0.1.6.crate) = 8305 +SHA256 (rust/crates/zerofs_nfsserve-0.11.0.crate) = e071aa984407c81992148c07437f53f99db211bbf295438821d02f8f15ed5ebe +SIZE (rust/crates/zerofs_nfsserve-0.11.0.crate) = 43939 +SHA256 (rust/crates/zeroize-1.8.1.crate) = ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde +SIZE (rust/crates/zeroize-1.8.1.crate) = 20029 +SHA256 (rust/crates/zerotrie-0.2.2.crate) = 36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595 +SIZE (rust/crates/zerotrie-0.2.2.crate) = 74423 +SHA256 (rust/crates/zerovec-0.11.4.crate) = e7aa2bd55086f1ab526693ecbe444205da57e25f4489879da80635a46d90e73b +SIZE (rust/crates/zerovec-0.11.4.crate) = 125080 +SHA256 (rust/crates/zerovec-derive-0.11.1.crate) = 5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f +SIZE (rust/crates/zerovec-derive-0.11.1.crate) = 21294 +SHA256 (rust/crates/zstd-0.13.3.crate) = e91ee311a569c327171651566e07972200e76fcfe2242a4fa446149a3881c08a +SIZE (rust/crates/zstd-0.13.3.crate) = 30514 +SHA256 (rust/crates/zstd-safe-7.2.4.crate) = 8f49c4d5f0abb602a93fb8736af2a4f4dd9512e36f7f570d66e65ff867ed3b9d +SIZE (rust/crates/zstd-safe-7.2.4.crate) = 29350 +SHA256 (rust/crates/zstd-sys-2.0.15+zstd.1.5.7.crate) = eb81183ddd97d0c74cedf1d50d85c8d08c1b8b68ee863bdee9e706eedba1a237 +SIZE (rust/crates/zstd-sys-2.0.15+zstd.1.5.7.crate) = 774847 +SHA256 (slatedb-slatedb-6e138682013a192bc55e8a2b925ad65d0599a4ef_GH0.tar.gz) = 376c659aae7d59beefcc87b56e8037e5c3c1aaa57b31d5ac0d7c1ae62f2d7c02 +SIZE (slatedb-slatedb-6e138682013a192bc55e8a2b925ad65d0599a4ef_GH0.tar.gz) = 842012 +SHA256 (Barre-ZeroFS-v0.10.5_GH0.tar.gz) = d4f94f0e732793f2c7adfd181d6cca0f70833a5e6debc245e9c96743f85777ee +SIZE (Barre-ZeroFS-v0.10.5_GH0.tar.gz) = 453664 diff --git a/filesystems/zerofs/pkg-descr b/filesystems/zerofs/pkg-descr new file mode 100644 index 000000000000..3a51ab762a6e --- /dev/null +++ b/filesystems/zerofs/pkg-descr @@ -0,0 +1,4 @@ +ZeroFS makes S3 storage feel like a real filesystem. Built on SlateDB, it +provides file-level access via NFS and 9P and block-level access via NBD. Fast +enough to compile code on, with clients already built into your OS. No FUSE +drivers, no kernel modules, just mount and go. diff --git a/games/pysolfc/Makefile b/games/pysolfc/Makefile index b95f3964dfc7..f4770000507e 100644 --- a/games/pysolfc/Makefile +++ b/games/pysolfc/Makefile @@ -1,5 +1,5 @@ PORTNAME= pysolfc -DISTVERSION= 3.4.0 +DISTVERSION= 3.4.1 CATEGORIES= games python MASTER_SITES= SF/${PORTNAME}/PySolFC/${PYSOLFCDIR} \ SF/${PORTNAME}/PySolFC-Cardsets/minimal/:cardsets \ diff --git a/games/pysolfc/distinfo b/games/pysolfc/distinfo index f34f1b9f08d2..6d4d722e4b46 100644 --- a/games/pysolfc/distinfo +++ b/games/pysolfc/distinfo @@ -1,6 +1,6 @@ -TIMESTAMP = 1749974967 -SHA256 (pysolfc/PySolFC-3.4.0.tar.xz) = 677a79c29c228cd70ffc028615f2c05971e29638ca37cfa4c17a31b2ba477a59 -SIZE (pysolfc/PySolFC-3.4.0.tar.xz) = 32914516 +TIMESTAMP = 1756454122 +SHA256 (pysolfc/PySolFC-3.4.1.tar.xz) = 3b9bfb91f8f75b7cb9cc836424606975c5a0868c7b50c6917e51367a7c82e6cb +SIZE (pysolfc/PySolFC-3.4.1.tar.xz) = 32915536 SHA256 (pysolfc/PySolFC-Cardsets--Minimal-3.1.0.tar.xz) = f894b667936382cf721105a08b6cc41b8b87aac8386117868f749f32f8e67a9d SIZE (pysolfc/PySolFC-Cardsets--Minimal-3.1.0.tar.xz) = 25083116 SHA256 (pysolfc/pysol-music-4.50.tar.xz) = 3cfade86db88c1d97589c50441808ee082e68256be788012503818c42728783d diff --git a/graphics/colmap/Makefile b/graphics/colmap/Makefile index bf5d67418a56..eb5f3a155473 100644 --- a/graphics/colmap/Makefile +++ b/graphics/colmap/Makefile @@ -1,5 +1,5 @@ PORTNAME= colmap -DISTVERSION= 3.12.4 +DISTVERSION= 3.12.5 CATEGORIES= graphics MAINTAINER= fuz@FreeBSD.org diff --git a/graphics/colmap/distinfo b/graphics/colmap/distinfo index 5b5eeb3ba7a4..08882ff634f1 100644 --- a/graphics/colmap/distinfo +++ b/graphics/colmap/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1754391753 -SHA256 (colmap-colmap-3.12.4_GH0.tar.gz) = 320cb5a411cd0aa713adc05e208ec34067638e776260efd8098271342d408997 -SIZE (colmap-colmap-3.12.4_GH0.tar.gz) = 3580471 +TIMESTAMP = 1756392724 +SHA256 (colmap-colmap-3.12.5_GH0.tar.gz) = 93dfb220cce24d988506bbb1d27d4278eacfd4e372df61d380559d414c1bd9e4 +SIZE (colmap-colmap-3.12.5_GH0.tar.gz) = 3584697 diff --git a/graphics/colmap/files/patch-cmake_FindDependencies.cmake b/graphics/colmap/files/patch-cmake_FindDependencies.cmake deleted file mode 100644 index cdb62cbe1cf7..000000000000 --- a/graphics/colmap/files/patch-cmake_FindDependencies.cmake +++ /dev/null @@ -1,19 +0,0 @@ ---- cmake/FindDependencies.cmake.orig 2025-07-31 15:20:30 UTC -+++ cmake/FindDependencies.cmake -@@ -21,8 +21,7 @@ find_package(Boost ${COLMAP_FIND_TYPE} COMPONENTS - - find_package(Boost ${COLMAP_FIND_TYPE} COMPONENTS - graph -- program_options -- system) -+ program_options) - - find_package(Eigen3 ${COLMAP_FIND_TYPE}) - -@@ -247,4 +246,4 @@ if(OPENGL_ENABLED OR CUDA_ENABLED) - list(APPEND COLMAP_COMPILE_DEFINITIONS COLMAP_GPU_ENABLED) - message(STATUS "Enabling GPU support (OpenGL: ${OPENGL_ENABLED}, CUDA: ${CUDA_ENABLED})") - set(GPU_ENABLED ON) --endif() -\ No newline at end of file -+endif() diff --git a/graphics/drawio/Makefile b/graphics/drawio/Makefile index 16ef6e1a6436..0ee5000d4f5b 100644 --- a/graphics/drawio/Makefile +++ b/graphics/drawio/Makefile @@ -1,6 +1,6 @@ PORTNAME= drawio PORTVERSION= 28.0.6 -PORTREVISION= 3 +PORTREVISION= 4 DISTVERSIONPREFIX= x86_64- CATEGORIES= graphics MASTER_SITES= https://github.com/jgraph/drawio-desktop/releases/download/v${PORTVERSION}/ diff --git a/graphics/gmic-qt/Makefile b/graphics/gmic-qt/Makefile index 3a9336a73ee9..7666ee5b307b 100644 --- a/graphics/gmic-qt/Makefile +++ b/graphics/gmic-qt/Makefile @@ -1,6 +1,6 @@ PORTNAME= gmic-qt DISTVERSIONPREFIX= v. -DISTVERSION= 3.6.0 +DISTVERSION= 3.6.1 PORTEPOCH= 1 CATEGORIES= graphics kde MASTER_SITES= https://github.com/GreycLab/gmic/releases/download/${DISTVERSIONFULL}/ \ diff --git a/graphics/gmic-qt/distinfo b/graphics/gmic-qt/distinfo index b03b72628cd1..0d3e0f6c9226 100644 --- a/graphics/gmic-qt/distinfo +++ b/graphics/gmic-qt/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1756183076 -SHA256 (KDE/gmic-qt/gmic_3.6.0.tar.gz) = 64c32e1a58e9d7de3f84220183bab06423bd9823afacee9a9c7b23768b8edc33 -SIZE (KDE/gmic-qt/gmic_3.6.0.tar.gz) = 19486087 +TIMESTAMP = 1756404089 +SHA256 (KDE/gmic-qt/gmic_3.6.1.tar.gz) = 4cf36b7af48013651e40e2c17be646b748cffdd400a90562588a35af731f6c9e +SIZE (KDE/gmic-qt/gmic_3.6.1.tar.gz) = 19486111 diff --git a/graphics/mupdf/Makefile b/graphics/mupdf/Makefile index 4dfeb91496f5..348a7b7e7b1d 100644 --- a/graphics/mupdf/Makefile +++ b/graphics/mupdf/Makefile @@ -1,5 +1,5 @@ PORTNAME= mupdf -DISTVERSION= 1.26.5 +DISTVERSION= 1.26.7 DISTVERSIONSUFFIX= -source PORTEPOCH= 1 CATEGORIES= graphics diff --git a/graphics/mupdf/distinfo b/graphics/mupdf/distinfo index e3da45cbc77e..6de8172eb793 100644 --- a/graphics/mupdf/distinfo +++ b/graphics/mupdf/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1755063764 -SHA256 (mupdf-1.26.5-source.tar.gz) = a52daf7b2f41c5dc94d4691cd1e7cae25fc488556e614d8c3c4491d327473c40 -SIZE (mupdf-1.26.5-source.tar.gz) = 64529860 +TIMESTAMP = 1756458715 +SHA256 (mupdf-1.26.7-source.tar.gz) = 52014fcecac48ae3ead947eb90572ff7da9acf9550711675872944e8ef8c4966 +SIZE (mupdf-1.26.7-source.tar.gz) = 64529748 diff --git a/graphics/zathura-pdf-mupdf/Makefile b/graphics/zathura-pdf-mupdf/Makefile index d939ae161b42..946c464b660d 100644 --- a/graphics/zathura-pdf-mupdf/Makefile +++ b/graphics/zathura-pdf-mupdf/Makefile @@ -1,6 +1,6 @@ PORTNAME= zathura-pdf-mupdf DISTVERSION= 0.4.4 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= graphics MASTER_SITES= https://pwmt.org/projects/zathura-pdf-mupdf/download/ diff --git a/graphics/zathura/Makefile b/graphics/zathura/Makefile index 619f39bd68a4..058ced747a95 100644 --- a/graphics/zathura/Makefile +++ b/graphics/zathura/Makefile @@ -1,5 +1,5 @@ PORTNAME= zathura -DISTVERSION= 0.5.11 +DISTVERSION= 0.5.12 CATEGORIES= graphics print MASTER_SITES= https://pwmt.org/projects/zathura/download/ @@ -13,7 +13,8 @@ LICENSE_FILE= ${WRKSRC}/LICENSE LIB_DEPENDS= libgirara-gtk3.so:x11-toolkits/girara \ libjson-glib-1.0.so:devel/json-glib -USES= compiler:c17 gettext gnome meson ninja pkgconfig sqlite tar:xz +USES= compiler:c17 gettext-runtime gettext-tools gnome meson ninja \ + pkgconfig sqlite tar:xz USE_GNOME= glib20 gtk30 MESON_ARGS= -Dlandlock=disabled \ -Dseccomp=disabled \ @@ -26,15 +27,15 @@ OPTIONS_SUB= yes SYNCTEX_DESC= Direct and reverse synchronisation support with SyncTeX MANPAGES_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytz>0:devel/py-pytz@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}sphinx>=1.2.2,1:textproc/py-sphinx@${PY_FLAVOR} -MANPAGES_USES= python + ${PYTHON_PKGNAMEPREFIX}sphinx>0:textproc/py-sphinx@${PY_FLAVOR} +MANPAGES_USES= python:build MANPAGES_MESON_ENABLED= manpages -SYNCTEX_BUILD_DEPENDS= tex-synctex>=1.19.0:devel/tex-synctex +SYNCTEX_BUILD_DEPENDS= tex-synctex>0:devel/tex-synctex SYNCTEX_RUN_DEPENDS= ${SYNCTEX_BUILD_DEPENDS} SYNCTEX_MESON_ENABLED= synctex -post-patch: +post-patch-MANPAGES-on: @${REINPLACE_CMD} -e 's|^/etc|${PREFIX}/etc|' ${WRKSRC}/doc/man/zathurarc.5.rst .include <bsd.port.mk> diff --git a/graphics/zathura/distinfo b/graphics/zathura/distinfo index 212920c6447d..cad74c287206 100644 --- a/graphics/zathura/distinfo +++ b/graphics/zathura/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1734525804 -SHA256 (zathura-0.5.11.tar.xz) = 54458a9998af0fb8faef2e934a81127bbe4b790c86dcd2c8b8f32365f3d1b53c -SIZE (zathura-0.5.11.tar.xz) = 167820 +TIMESTAMP = 1751616442 +SHA256 (zathura-0.5.12.tar.xz) = e84870fbf96b766b8224a3f3a6ce7ccfa36efa3b6919cc8a2fbf765ea4dfe476 +SIZE (zathura-0.5.12.tar.xz) = 176368 diff --git a/graphics/zathura/pkg-plist b/graphics/zathura/pkg-plist index 71d20bc03aad..73742d7712cf 100644 --- a/graphics/zathura/pkg-plist +++ b/graphics/zathura/pkg-plist @@ -30,7 +30,6 @@ share/locale/es_CL/LC_MESSAGES/zathura.mo share/locale/et/LC_MESSAGES/zathura.mo share/locale/fr/LC_MESSAGES/zathura.mo share/locale/he/LC_MESSAGES/zathura.mo -share/locale/hr/LC_MESSAGES/zathura.mo share/locale/id_ID/LC_MESSAGES/zathura.mo share/locale/it/LC_MESSAGES/zathura.mo share/locale/lt/LC_MESSAGES/zathura.mo diff --git a/irc/py-sopel/Makefile b/irc/py-sopel/Makefile index 4b4e1ba06602..8e33cfd7f015 100644 --- a/irc/py-sopel/Makefile +++ b/irc/py-sopel/Makefile @@ -1,5 +1,5 @@ PORTNAME= sopel -DISTVERSION= 8.0.3 +DISTVERSION= 8.0.4 CATEGORIES= irc python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/irc/py-sopel/distinfo b/irc/py-sopel/distinfo index 3d8440494a6a..0d15ee158f3b 100644 --- a/irc/py-sopel/distinfo +++ b/irc/py-sopel/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1754007890 -SHA256 (sopel-8.0.3.tar.gz) = 961a0481f61aa9a65fadf560c874b097f6a582a8e7bc073fa6754fc0af187427 -SIZE (sopel-8.0.3.tar.gz) = 250478 +TIMESTAMP = 1756499040 +SHA256 (sopel-8.0.4.tar.gz) = d7a403cec642aae00f1f714fc818f179719cbd276360b6454d73740129de44e5 +SIZE (sopel-8.0.4.tar.gz) = 250580 diff --git a/lang/php83/Makefile b/lang/php83/Makefile index 20683e75d589..8a0a2b2b83b1 100644 --- a/lang/php83/Makefile +++ b/lang/php83/Makefile @@ -1,5 +1,5 @@ PORTNAME= php83 -DISTVERSION= 8.3.24 +DISTVERSION= 8.3.25 PORTREVISION?= 0 CATEGORIES?= lang devel www MASTER_SITES= PHP/distributions diff --git a/lang/php83/distinfo b/lang/php83/distinfo index 1e928bc0b6ff..67f5d75f64b6 100644 --- a/lang/php83/distinfo +++ b/lang/php83/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1754027368 -SHA256 (php-8.3.24.tar.xz) = 388ee5fd111097e97bae439bff46aec4ea27f816d3f0c2cb5490a41410d44251 -SIZE (php-8.3.24.tar.xz) = 12579100 +TIMESTAMP = 1756287189 +SHA256 (php-8.3.25.tar.xz) = 187b61bb795015adacf53f8c55b44414a63777ec19a776b75fb88614506c0d37 +SIZE (php-8.3.25.tar.xz) = 12583528 diff --git a/lang/php84/Makefile b/lang/php84/Makefile index 49fcd849e156..14e291ccfccf 100644 --- a/lang/php84/Makefile +++ b/lang/php84/Makefile @@ -1,5 +1,5 @@ PORTNAME= php84 -DISTVERSION= 8.4.11 +DISTVERSION= 8.4.12 PORTREVISION?= 0 CATEGORIES?= lang devel www MASTER_SITES= PHP/distributions diff --git a/lang/php84/distinfo b/lang/php84/distinfo index 9e794c05e415..ab3b1734f714 100644 --- a/lang/php84/distinfo +++ b/lang/php84/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1754027315 -SHA256 (php-8.4.11.tar.xz) = 04cd331380a8683a5c2503938eb51764d48d507c53ad4208d2c82e0eed779a00 -SIZE (php-8.4.11.tar.xz) = 13632328 +TIMESTAMP = 1756287141 +SHA256 (php-8.4.12.tar.xz) = c1b7978cbb5054eed6c749bde4444afc16a3f2268101fb70a7d5d9b1083b12ad +SIZE (php-8.4.12.tar.xz) = 13636100 diff --git a/lang/php85/Makefile b/lang/php85/Makefile index 4cd024aca5ea..3243c851d01d 100644 --- a/lang/php85/Makefile +++ b/lang/php85/Makefile @@ -1,8 +1,9 @@ PORTNAME= php85 -DISTVERSION= 8.5.0beta1 +DISTVERSION= 8.5.0beta2 PORTREVISION?= 0 CATEGORIES?= lang devel www -MASTER_SITES= https://downloads.php.net/~edorian/ +MASTER_SITES= https://downloads.php.net/~edorian/ \ + https://downloads.php.net/~daniels/ DISTNAME= php-${DISTVERSION} MAINTAINER= bofh@FreeBSD.org diff --git a/lang/php85/distinfo b/lang/php85/distinfo index 4c473c0e48cd..d2d1566c9672 100644 --- a/lang/php85/distinfo +++ b/lang/php85/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1755580765 -SHA256 (php-8.5.0beta1.tar.gz) = d28f6de0744fa733db898ddcdeaa784a5e87ec1b4b4822e83529d9a76229ea61 -SIZE (php-8.5.0beta1.tar.gz) = 23797736 +TIMESTAMP = 1756465955 +SHA256 (php-8.5.0beta2.tar.gz) = 237833015ab63d5441fb781bc9848ae9bac4a7c3bdb1b6157139c41c1ea98b44 +SIZE (php-8.5.0beta2.tar.gz) = 24019611 diff --git a/lang/php85/pkg-plist b/lang/php85/pkg-plist index 15aebd735077..9b085c0d576a 100644 --- a/lang/php85/pkg-plist +++ b/lang/php85/pkg-plist @@ -335,7 +335,6 @@ include/php/ext/lexbor/ns/ns.h include/php/ext/lexbor/ns/res.h include/php/ext/lexbor/punycode/base.h include/php/ext/lexbor/punycode/punycode.h -include/php/ext/lexbor/selectors/selectors.h include/php/ext/lexbor/tag/base.h include/php/ext/lexbor/tag/res.h include/php/ext/lexbor/tag/tag.h @@ -475,10 +474,10 @@ include/php/ext/standard/url.h include/php/ext/standard/url_scanner_ex.h include/php/ext/standard/user_filters_arginfo.h include/php/ext/standard/winver.h -include/php/ext/uri/php_lexbor.h include/php/ext/uri/php_uri.h include/php/ext/uri/php_uri_common.h -include/php/ext/uri/php_uriparser.h +include/php/ext/uri/uri_parser_rfc3986.h +include/php/ext/uri/uri_parser_whatwg.h @touch include/php/ext/php_config.h @rmempty include/php/ext/php_config.h include/php/main/SAPI.h diff --git a/lang/s7/Makefile.master b/lang/s7/Makefile.master index 528bb554cb8b..8a4023492e50 100644 --- a/lang/s7/Makefile.master +++ b/lang/s7/Makefile.master @@ -1,7 +1,7 @@ PORTNAME= s7 CATEGORIES= lang lisp # S7_MAJOR_VERSION / S7_MINOR_VERSION / S7_DATE from s7.h -PORTVERSION= 11.4.20250505 +PORTVERSION= 11.5.20250902 MAINTAINER?= fuz@FreeBSD.org WWW= https://ccrma.stanford.edu/software/snd/snd/s7.html @@ -12,7 +12,7 @@ USES= localbase:ldflags USE_GITLAB= yes GL_SITE= https://cm-gitlab.stanford.edu GL_ACCOUNT= bil -GL_TAGNAME= f9a99df1cb1470b7daa19daf7148e76363f7bceb +GL_TAGNAME= d839d9edb74cb898fa366cbb76596a3d04185fc8 CFLAGS+= -DS7_LOAD_PATH=\"${DATADIR}\" \ -DHAVE_COMPLEX_NUMBERS \ diff --git a/lang/s7/distinfo b/lang/s7/distinfo index f47e005d8ac9..65eed96d86ab 100644 --- a/lang/s7/distinfo +++ b/lang/s7/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1746427498 -SHA256 (bil-s7-f9a99df1cb1470b7daa19daf7148e76363f7bceb_GL0.tar.gz) = 3833f0226fdeda4691189ee38702aec52ed98d67253a002c21fb671c109e2400 -SIZE (bil-s7-f9a99df1cb1470b7daa19daf7148e76363f7bceb_GL0.tar.gz) = 2818205 +TIMESTAMP = 1756478740 +SHA256 (bil-s7-d839d9edb74cb898fa366cbb76596a3d04185fc8_GL0.tar.gz) = 1881d5a8275d70a9ba3b0e191e52f8b12473573e8d003a61359d7a5e6465f7b9 +SIZE (bil-s7-d839d9edb74cb898fa366cbb76596a3d04185fc8_GL0.tar.gz) = 2845766 diff --git a/mail/mew-devel/Makefile b/mail/mew-devel/Makefile index e9775fe817f1..303e25494b43 100644 --- a/mail/mew-devel/Makefile +++ b/mail/mew-devel/Makefile @@ -1,8 +1,7 @@ PORTNAME= mew DISTVERSIONPREFIX= v -DISTVERSION= 6.10 -PORTREVISION= 1 -DISTVERSIONSUFFIX= +DISTVERSION= 6.10-18 +DISTVERSIONSUFFIX= -g377b685 CATEGORIES= mail elisp PKGNAMESUFFIX= -devel${EMACS_PKGNAMESUFFIX} diff --git a/mail/mew-devel/distinfo b/mail/mew-devel/distinfo index 3395ef946412..b0844f43a2ad 100644 --- a/mail/mew-devel/distinfo +++ b/mail/mew-devel/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1751976896 -SHA256 (kazu-yamamoto-Mew-v6.10_GH0.tar.gz) = 39a273dcf6caad0659151b87710a961471f666e020d799d9a61421b6e83013ca -SIZE (kazu-yamamoto-Mew-v6.10_GH0.tar.gz) = 1021646 +TIMESTAMP = 1756491998 +SHA256 (kazu-yamamoto-Mew-v6.10-18-g377b685_GH0.tar.gz) = 860657f3469c02fabe7a5fe00d4023e3f6a32c2ddd1589327ef45711e68f8ebc +SIZE (kazu-yamamoto-Mew-v6.10-18-g377b685_GH0.tar.gz) = 1022715 diff --git a/mail/thunderbird-esr/Makefile b/mail/thunderbird-esr/Makefile index e1861526b3be..c67eb3daaee1 100644 --- a/mail/thunderbird-esr/Makefile +++ b/mail/thunderbird-esr/Makefile @@ -1,9 +1,8 @@ PORTNAME= thunderbird -DISTVERSION= 140.2.0 -PORTREVISION= 2 +DISTVERSION= 140.2.1 CATEGORIES= mail news net-im wayland MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}esr/source \ - MOZILLA/${PORTNAME}/candidates/${DISTVERSION}esr-candidates/build3/source + MOZILLA/${PORTNAME}/candidates/${DISTVERSION}esr-candidates/build1/source PKGNAMESUFFIX= -esr DISTFILES= ${DISTNAME}esr.source${EXTRACT_SUFX} diff --git a/mail/thunderbird-esr/distinfo b/mail/thunderbird-esr/distinfo index 10435b0abff5..43de00caa4bb 100644 --- a/mail/thunderbird-esr/distinfo +++ b/mail/thunderbird-esr/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1755633707 -SHA256 (thunderbird-140.2.0esr.source.tar.xz) = 4a71b613941184cfbc696daba075bb3592ef8a7c0c5c35bf2244be1d67ea4443 -SIZE (thunderbird-140.2.0esr.source.tar.xz) = 750140948 +TIMESTAMP = 1756417394 +SHA256 (thunderbird-140.2.1esr.source.tar.xz) = c9e4b98f72db3e9084dc7abe5f0ccf09bfc3e2f327706371dba4c2ee0a14c29b +SIZE (thunderbird-140.2.1esr.source.tar.xz) = 766037104 diff --git a/mail/thunderbird/Makefile b/mail/thunderbird/Makefile index 7bcb709d62dc..207db5b60cb4 100644 --- a/mail/thunderbird/Makefile +++ b/mail/thunderbird/Makefile @@ -1,5 +1,6 @@ PORTNAME= thunderbird DISTVERSION= 142.0 +PORTREVISION= 1 CATEGORIES= mail news net-im wayland MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}${DISTVERSIONSUFFIX}/source \ MOZILLA/${PORTNAME}/candidates/${DISTVERSION}${DISTVERSIONSUFFIX}-candidates/build1/source diff --git a/math/maxima/Makefile b/math/maxima/Makefile index 8e95b719ceb6..b99a5ef93316 100644 --- a/math/maxima/Makefile +++ b/math/maxima/Makefile @@ -3,7 +3,7 @@ DISTVERSION= 5.48.1 CATEGORIES= math lisp tk MASTER_SITES= SF/maxima/Maxima-source/${PORTVERSION}-source -MAINTAINER= ports@FreeBSD.org +MAINTAINER= tiago.gasiba@gmail.com COMMENT= Symbolic mathematics program WWW= http://maxima.sourceforge.net/ diff --git a/misc/exercism/Makefile b/misc/exercism/Makefile index bcd3ca63d1d4..655abd238de4 100644 --- a/misc/exercism/Makefile +++ b/misc/exercism/Makefile @@ -1,6 +1,6 @@ PORTNAME= exercism DISTVERSIONPREFIX= v -DISTVERSION= 3.5.6 +DISTVERSION= 3.5.7 CATEGORIES= misc MAINTAINER= bofh@FreeBSD.org diff --git a/misc/exercism/distinfo b/misc/exercism/distinfo index 8fb4b9e41b0a..3f364d514528 100644 --- a/misc/exercism/distinfo +++ b/misc/exercism/distinfo @@ -1,6 +1,6 @@ -TIMESTAMP = 1756370090 -SHA256 (exercism-cli-v3.5.6_GH0.tar.gz) = f79ad5cfaca794ef21439f5b3b9c196074febc55605624cc4cc4c973c10c589d -SIZE (exercism-cli-v3.5.6_GH0.tar.gz) = 81030 +TIMESTAMP = 1756465787 +SHA256 (exercism-cli-v3.5.7_GH0.tar.gz) = dc8f06d9390a8ff11b24b251644287453e73f0f71eb4277f8fb53dca1825140a +SIZE (exercism-cli-v3.5.7_GH0.tar.gz) = 81109 SHA256 (blang-semver-v3.5.1_GH0.tar.gz) = 3d9da53f4c2d3169bfa9b25f2f36f301a37556a47259c870881524c643c69c57 SIZE (blang-semver-v3.5.1_GH0.tar.gz) = 14831 SHA256 (davecgh-go-spew-v1.1.1_GH0.tar.gz) = 7d82b9bb7291adbe7498fe946920ab3e7fc9e6cbfc3b2294693fad00bf0dd17e diff --git a/multimedia/av1an/Makefile b/multimedia/av1an/Makefile index 39922cc2183d..6203a2b00cf7 100644 --- a/multimedia/av1an/Makefile +++ b/multimedia/av1an/Makefile @@ -3,7 +3,7 @@ DISTVERSION= 0.4.4 PORTREVISION= 5 CATEGORIES= multimedia -MAINTAINER= jbeich@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= Command-line encoding framework with per scene quality WWW= https://github.com/master-of-zen/Av1an diff --git a/multimedia/wf-recorder/files/patch-fix-ffmpeg8 b/multimedia/wf-recorder/files/patch-fix-ffmpeg8 new file mode 100644 index 000000000000..68bf8d5643ce --- /dev/null +++ b/multimedia/wf-recorder/files/patch-fix-ffmpeg8 @@ -0,0 +1,27 @@ +From 560bb92d3ddaeb31d7af77d22d01b0050b45bebe Mon Sep 17 00:00:00 2001 +From: Scott Moreau <oreaus@gmail.com> +Date: Tue, 8 Oct 2024 12:56:55 -0600 +Subject: [PATCH] frame-writer: Track ffmpeg changes (#279) + +* frame-writer: Track ffmpeg changes + +The frame_rate variable has been made private API. + +* frame-writer: Remove comment +--- + src/frame-writer.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git src/frame-writer.cpp src/frame-writer.cpp +index 2a5ba17..b8abe51 100644 +--- src/frame-writer.cpp ++++ src/frame-writer.cpp +@@ -371,7 +371,7 @@ void FrameWriter::init_video_filters(const AVCodec *codec) + this->videoCodecCtx->height = filter_output->h; + this->videoCodecCtx->pix_fmt = (AVPixelFormat)filter_output->format; + this->videoCodecCtx->time_base = filter_output->time_base; +- this->videoCodecCtx->framerate = filter_output->frame_rate; // can be 1/0 if unknown ++ this->videoCodecCtx->framerate = AVRational{1,0}; + this->videoCodecCtx->sample_aspect_ratio = filter_output->sample_aspect_ratio; + + this->hw_frame_context = av_buffersink_get_hw_frames_ctx( diff --git a/multimedia/wl-screenrec/Makefile b/multimedia/wl-screenrec/Makefile index 9bd743db8223..4b74e9294d3e 100644 --- a/multimedia/wl-screenrec/Makefile +++ b/multimedia/wl-screenrec/Makefile @@ -4,7 +4,7 @@ DISTVERSION= 0.1.5 PORTREVISION= 9 CATEGORIES= multimedia wayland -MAINTAINER= jbeich@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= High performance wlroots screen recording, featuring hardware encoding WWW= https://github.com/russelltg/wl-screenrec diff --git a/net-im/nextcloud-talk/Makefile b/net-im/nextcloud-talk/Makefile index 34aaa398285a..330bcccf069b 100644 --- a/net-im/nextcloud-talk/Makefile +++ b/net-im/nextcloud-talk/Makefile @@ -1,5 +1,5 @@ PORTNAME= talk -PORTVERSION= 21.1.3 +PORTVERSION= 21.1.4 DISTVERSIONPREFIX= v CATEGORIES= net-im www DISTNAME= spreed-${DISTVERSIONPREFIX}${DISTVERSION} diff --git a/net-im/nextcloud-talk/distinfo b/net-im/nextcloud-talk/distinfo index 764b6c0a2cc2..b6d357813db6 100644 --- a/net-im/nextcloud-talk/distinfo +++ b/net-im/nextcloud-talk/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1754498018 -SHA256 (nextcloud/spreed-v21.1.3.tar.gz) = 5b2acbae22f422a898c6a71dcb310f1b4d2dfb0e9a375b5861ca2fb4bc9f88be -SIZE (nextcloud/spreed-v21.1.3.tar.gz) = 50915546 +TIMESTAMP = 1756412384 +SHA256 (nextcloud/spreed-v21.1.4.tar.gz) = 73575a942db6c54348b0b370f50859530be194dca93271fd52fca69665ba645c +SIZE (nextcloud/spreed-v21.1.4.tar.gz) = 51032774 diff --git a/net-im/signal-desktop/Makefile b/net-im/signal-desktop/Makefile index caac64ac8aa1..0dfbfa538865 100644 --- a/net-im/signal-desktop/Makefile +++ b/net-im/signal-desktop/Makefile @@ -1,6 +1,7 @@ PORTNAME= signal-desktop DISTVERSIONPREFIX= v DISTVERSION= 7.66.0 +PORTREVISION= 1 CATEGORIES= net-im MASTER_SITES= LOCAL/mikael/signal-desktop/:npm \ https://registry.npmjs.org/@esbuild/freebsd-arm64/-/:esbuildarm64 \ diff --git a/net-mgmt/collectd5/Makefile b/net-mgmt/collectd5/Makefile index f320ce0ce321..fe1fd7c915de 100644 --- a/net-mgmt/collectd5/Makefile +++ b/net-mgmt/collectd5/Makefile @@ -1,6 +1,6 @@ PORTNAME= collectd -PORTVERSION= 5.12.0 -PORTREVISION= 22 +DISTVERSION= 5.12.0 +PORTREVISION= 23 CATEGORIES= net-mgmt MASTER_SITES= https://storage.googleapis.com/collectd-tarballs/ PKGNAMESUFFIX= 5 @@ -12,24 +12,47 @@ WWW= https://www.collectd.org/ LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/COPYING -LIB_DEPENDS= libpfctl.so:net/libpfctl -LDFLAGS+= -lpfctl +USES= autoreconf cpe gmake libtool localbase:ldflags pkgconfig \ + shebangfix tar:bzip2 +USE_LDCONFIG= yes +USE_RC_SUBR= collectd collectdmon -USES= autoreconf cpe gmake libtool localbase:ldflags pkgconfig shebangfix tar:bzip2 +SHEBANG_FILES= contrib/collection.cgi GNU_CONFIGURE= yes -GNU_CONFIGURE_MANPREFIX=${PREFIX}/share +# NOTE: Plugins without dependencies are defined further down. +CONFIGURE_ARGS= --disable-all-plugins \ + --disable-amqp \ + --disable-ceph \ + --disable-cgroups \ + --disable-fhcount \ + --disable-static \ + --disable-turbostat \ + --enable-disk \ + --localstatedir=/var \ + --without-libaquaero5 \ + --without-libganglia \ + --without-libiptc \ + --without-libldap \ + --without-libmnl \ + --without-libnetapp \ + --without-libowcapi \ + --without-libsensors \ + --without-mic \ + --without-oracle + +INSTALL_TARGET= install-strip OPTIONS_DEFINE= CGI GCRYPT JAVA LOGGING LOGSTASH VIRT +OPTIONS_DEFAULT= GCRYPT LOGGING PING PF OPTIONS_GROUP= INPUT OUTPUT -OPTIONS_GROUP_OUTPUT= INFLUXDB KAFKA MONGODB NOTIFYDESKTOP NOTIFYEMAIL PROMETHEUS \ - RIEMANN RRDTOOL TSDB -OPTIONS_GROUP_INPUT= CHRONY CURL CURL_JSON CURL_XML DBI IPMI JSON \ - MEMCACHEC MODBUS MQTT MYSQL NUTUPS OLSRD ONEWIRE OPENLDAP \ - PERL PGSQL PINBA PING PYTHON RABBITMQ REDIS SIGROK \ - SLURM SNMP STATSD TOKYOTYRANT VARNISH XML ZOOKEEPER - -OPTIONS_DEFAULT= GCRYPT LOGGING PING +OPTIONS_GROUP_INPUT= CHRONY CURL CURL_JSON CURL_XML DBI IPMI JSON MEMCACHEC \ + MODBUS MQTT MYSQL NUTUPS OLSRD ONEWIRE OPENLDAP PERL \ + PF PGSQL PINBA PING PYTHON RABBITMQ REDIS SIGROK SLURM \ + SNMP STATSD TOKYOTYRANT VARNISH XML ZOOKEEPER +OPTIONS_GROUP_OUTPUT= INFLUXDB KAFKA MONGODB NOTIFYDESKTOP NOTIFYEMAIL \ + PROMETHEUS RIEMANN RRDTOOL TSDB +OPTIONS_SUB= yes CGI_DESC= Install collection.cgi (requires rrdtool) CHRONY_DESC= Enable chronyd plugin @@ -56,6 +79,7 @@ OLSRD_DESC= Enable olsrd plugin ONEWIRE_DESC= Eanble onewire plugin (via owfs) OPENLDAP_DESC= Enable OpenLDAP plugin PERL_DESC= Enable libperl plugin and binding +PF_DESC= Enable PF stats plugin PGSQL_DESC= Enable postgresql-based plugins PINBA_DESC= Enable pinba plugin (via protobuf-c) PING_DESC= Enable ping plugin @@ -66,51 +90,21 @@ REDIS_DESC= Enable redis-based plugins RIEMANN_DESC= Enable write_riemann plugin (via riemann-c-client) RRDTOOL_DESC= Enable rrdtool plugin (also rrdcached plugin) SIGROK_DESC= Enable sigrok plugin (BROKEN) -SLURM_DESC= Enable slurm plugin +SLURM_DESC= Enable slurm plugin (BROKEN) SNMP_DESC= Enable SNMP plugin STATSD_DESC= Enable statsd plugin TOKYOTYRANT_DESC= Enable tokyotyrant plugin TSDB_DESC= Enable write_tsdb plugin VARNISH_DESC= Enable varnish 7.x cache statistics -VIRT_DESC= Enable libvirt plugin (requires XML) +VIRT_DESC= Enable libvirt plugin (requires XML) (possible BROKEN) XML_DESC= Enable XML plugins ZOOKEEPER_DESC= Enable zookeeper plugin -OPTIONS_SUB= yes - -USE_RC_SUBR= collectd collectdmon - -USE_LDCONFIG= yes - -CPPFLAGS+= -I${LOCALBASE}/include -LIBS+= -L${LOCALBASE}/lib - -# NOTE: Plugins without dependencies are defined further down. -CONFIGURE_ARGS= --disable-all-plugins \ - --disable-amqp \ - --disable-ceph \ - --disable-cgroups \ - --disable-fhcount \ - --disable-static \ - --disable-turbostat \ - --enable-disk \ - --localstatedir=/var \ - --without-libaquaero5 \ - --without-libganglia \ - --without-libiptc \ - --without-libldap \ - --without-libmnl \ - --without-libnetapp \ - --without-libowcapi \ - --without-libsensors \ - --without-mic \ - --without-oracle - -CGI_USES= perl5 +CGI_IMPLIES= RRDTOOL CGI_RUN_DEPENDS= p5-CGI>=0:www/p5-CGI \ p5-HTML-Parser>=0:www/p5-HTML-Parser \ p5-URI>=0:net/p5-URI -CGI_IMPLIES= RRDTOOL +CGI_USES= perl5 CHRONY_CONFIGURE_ENABLE= chrony @@ -124,10 +118,6 @@ CURL_JSON_CONFIGURE_ENABLE= curl_json CURL_XML_IMPLIES= CURL XML CURL_XML_CONFIGURE_ENABLE= ascent bind curl_xml -JAVA_USES= java -JAVA_CONFIGURE_ENABLE= java -JAVA_CONFIGURE_WITH= java=${LOCALBASE} - DBI_LIB_DEPENDS= libdbi.so:databases/libdbi DBI_CONFIGURE_ENABLE= dbi DBI_CFLAGS= -Wno-deprecated-declarations @@ -141,6 +131,10 @@ INFLUXDB_CONFIGURE_ENABLE= write_influxdb_udp IPMI_LIB_DEPENDS= libOpenIPMI.so:sysutils/openipmi IPMI_CONFIGURE_ENABLE= ipmi +JAVA_USES= java +JAVA_CONFIGURE_ENABLE= java +JAVA_CONFIGURE_WITH= java=${LOCALBASE} + JSON_LIB_DEPENDS= libyajl.so:devel/yajl JSON_CONFIGURE_WITH= libyajl=${LOCALBASE} @@ -149,8 +143,8 @@ KAFKA_CONFIGURE_ENABLE= write_kafka LOGGING_CONFIGURE_ENABLE= debug -LOGSTASH_CONFIGURE_ENABLE= log_logstash LOGSTASH_IMPLIES= JSON +LOGSTASH_CONFIGURE_ENABLE= log_logstash MEMCACHEC_LIB_DEPENDS= libmemcached.so:databases/libmemcached MEMCACHEC_CONFIGURE_ENABLE= memcachec @@ -160,8 +154,8 @@ MODBUS_LIB_DEPENDS= libmodbus.so:comms/libmodbus MODBUS_CONFIGURE_ENABLE= modbus MODBUS_CONFIGURE_WITH= libmodbus=use_pkgconfig -MONGODB_LIB_DEPENDS+= libmongoc-1.0.so:devel/mongo-c-driver \ - libbson-1.0.so:devel/libbson +MONGODB_LIB_DEPENDS= libbson-1.0.so:devel/libbson \ + libmongoc-1.0.so:devel/mongo-c-driver MONGODB_CONFIGURE_ENABLE= write_mongodb MONGODB_CONFIGURE_WITH= libmongoc @@ -169,14 +163,15 @@ MQTT_LIB_DEPENDS= libmosquitto.so:net/mosquitto MQTT_CONFIGURE_ENABLE= mqtt MQTT_CONFIGURE_WITH= libmosquitto=${LOCALBASE} +MYSQL_LIB_DEPENDS= libunwind.so:devel/libunwind MYSQL_USES= mysql ssl MYSQL_CONFIGURE_ENABLE= mysql MYSQL_CONFIGURE_WITH= libmysql=${LOCALBASE} NOTIFYDESKTOP_LIB_DEPENDS= libnotify.so:devel/libnotify -NOTIFYDESKTOP_CONFIGURE_ENABLE= notify_desktop -NOTIFYDESKTOP_USE= GNOME=gdkpixbuf NOTIFYDESKTOP_USES= gettext-runtime gnome +NOTIFYDESKTOP_USE= GNOME=gdkpixbuf +NOTIFYDESKTOP_CONFIGURE_ENABLE= notify_desktop NOTIFYEMAIL_LIB_DEPENDS= libesmtp.so:mail/libesmtp NOTIFYEMAIL_CONFIGURE_ENABLE= notify_email @@ -200,6 +195,10 @@ PERL_USES= perl5 PERL_CONFIGURE_ENABLE= perl PERL_CONFIGURE_WITH= libperl=${LOCALBASE} perl-bindings +PF_LIB_DEPENDS= libpfctl.so:net/libpfctl +PF_CONFIGURE_ENABLE= pf +PF_LDFLAGS= -lpfctl + PGSQL_USES= pgsql PGSQL_CONFIGURE_ENABLE= postgresql PGSQL_CONFIGURE_WITH= libpq=${LOCALBASE} @@ -211,12 +210,12 @@ PING_LIB_DEPENDS= liboping.so:net/liboping PING_CONFIGURE_ENABLE= ping PING_CONFIGURE_WITH= liboping=${LOCALBASE} -PROMETHEUS_LIB_DEPENDS+= libmicrohttpd.so:www/libmicrohttpd \ +PROMETHEUS_LIB_DEPENDS= libmicrohttpd.so:www/libmicrohttpd \ libprotobuf-c.so:devel/protobuf-c \ libprotoc.so:devel/protobuf PROMETHEUS_CONFIGURE_ENABLE= write_prometheus -PYTHON_USES= python +PYTHON_USES= gettext-runtime python PYTHON_CONFIGURE_ENABLE= python PYTHON_CONFIGURE_ENV= PYTHON_CONFIG=${PYTHON_CMD}-config @@ -235,17 +234,17 @@ RRDTOOL_LIB_DEPENDS= librrd.so:databases/rrdtool RRDTOOL_CONFIGURE_ENABLE= rrdcached rrdtool RRDTOOL_CONFIGURE_WITH= librrd=${LOCALBASE} -SIGROK_USE= GNOME=glib20 -SIGROK_CFLAGS= `pkg-config --cflags libsigrok` +SIGROK_BROKEN= working only with sigrok < 0.4 SIGROK_LIB_DEPENDS= libsigrok.so:devel/libsigrok -SIGROK_CONFIGURE_ENABLE= sigrok SIGROK_USES= gettext-runtime -SIGROK_BROKEN= working only with sigrok < 0.4 +SIGROK_USE= GNOME=glib20 +SIGROK_CONFIGURE_ENABLE= sigrok +SIGROK_CFLAGS= `pkg-config --cflags libsigrok` -SLURM_BROKEN= Does not compile with slurm-wlm >= 21.x -SLURM_LIB_DEPENDS= libslurm.so:sysutils/slurm-wlm -SLURM_CONFIGURE_ENABLE= slurm -SLURM_CONFIGURE_WITH= libslurm=${LOCALBASE} +SLURM_BROKEN= Does not compile with slurm-wlm >= 21.x +SLURM_LIB_DEPENDS= libslurm.so:sysutils/slurm-wlm +SLURM_CONFIGURE_ENABLE= slurm +SLURM_CONFIGURE_WITH= libslurm=${LOCALBASE} SNMP_LIB_DEPENDS= libnetsnmp.so:net-mgmt/net-snmp SNMP_CONFIGURE_ENABLE= snmp @@ -255,6 +254,7 @@ STATSD_CONFIGURE_ENABLE= statsd TOKYOTYRANT_LIB_DEPENDS= libtokyocabinet.so:databases/tokyocabinet \ libtokyotyrant.so:databases/tokyotyrant +TOKYOTYRANT_USES= lua TOKYOTYRANT_CONFIGURE_ENABLE= tokyotyrant TOKYOTYRANT_CONFIGURE_WITH= libtokyotyrant=${LOCALBASE} @@ -268,10 +268,11 @@ VIRT_LIB_DEPENDS= libgcrypt.so:security/libgcrypt \ libgpg-error.so:security/libgpg-error \ libvirt.so:devel/libvirt VIRT_CONFIGURE_ENABLE= virt +VIRT_CFLAGS= -Wno-incompatible-function-pointer-types -DATTRIBUTE_UNUSED= -XML_CFLAGS= `pkg-config --cflags libxml-2.0` XML_LIB_DEPENDS= libxml2.so:textproc/libxml2 XML_CONFIGURE_WITH= libxml2 +XML_CFLAGS= `pkg-config --cflags libxml-2.0` ZOOKEEPER_LIB_DEPENDS= libzookeeper_mt.so:devel/libzookeeper ZOOKEEPER_CONFIGURE_ENABLE= zookeeper @@ -303,7 +304,6 @@ CONFIGURE_ARGS+= --enable-aggregation \ --enable-network \ --enable-ntpd \ --enable-openvpn \ - --enable-pf \ --enable-powerdns \ --enable-processes \ --enable-statsd \ @@ -328,8 +328,6 @@ CONFIGURE_ARGS+= --enable-aggregation \ --enable-write_graphite \ --enable-write_log \ --enable-zfs_arc -INSTALL_TARGET= install-strip -SHEBANG_FILES= contrib/collection.cgi post-patch: @${REINPLACE_CMD} \ diff --git a/net-mgmt/collectd5/pkg-plist b/net-mgmt/collectd5/pkg-plist index 82711b36ef62..d451f1015e01 100644 --- a/net-mgmt/collectd5/pkg-plist +++ b/net-mgmt/collectd5/pkg-plist @@ -66,7 +66,7 @@ lib/collectd/ntpd.so %%OPENLDAP%%lib/collectd/openldap.so lib/collectd/openvpn.so %%PERL%%lib/collectd/perl.so -lib/collectd/pf.so +%%PF%%lib/collectd/pf.so %%PINBA%%lib/collectd/pinba.so %%PING%%lib/collectd/ping.so %%PGSQL%%lib/collectd/postgresql.so diff --git a/net-mgmt/netdata/pkg-plist b/net-mgmt/netdata/pkg-plist index 50c65f5bfefd..8619498d2a60 100644 --- a/net-mgmt/netdata/pkg-plist +++ b/net-mgmt/netdata/pkg-plist @@ -566,7 +566,7 @@ sbin/systemd-cat-native %%DASHBOARD%%%%DATADIR%%/web/v3/1083.bfcffcae47e37eafd532.chunk.js.LICENSE.txt %%DASHBOARD%%%%DATADIR%%/web/v3/1083.d61abf3771ce679d59cf.css %%DASHBOARD%%%%DATADIR%%/web/v3/1220.308e2174e62c44e06938.chunk.js -%%DASHBOARD%%%%DATADIR%%/web/v3/127.b38f17ae8eb1%%PYTHON_SUFFIX%%d3aa9.chunk.js +%%DASHBOARD%%%%DATADIR%%/web/v3/127.b38f17ae8eb1311d3aa9.chunk.js %%DASHBOARD%%%%DATADIR%%/web/v3/1526.ea56050e11a00e20d98f.chunk.js %%DASHBOARD%%%%DATADIR%%/web/v3/1608.b6e817e2bb513f0f92f7.chunk.js %%DASHBOARD%%%%DATADIR%%/web/v3/1658.bbd335679cb24cf069ef.chunk.js diff --git a/net-mgmt/tcpreplay/Makefile b/net-mgmt/tcpreplay/Makefile index bfe73313f623..375e86229fd9 100644 --- a/net-mgmt/tcpreplay/Makefile +++ b/net-mgmt/tcpreplay/Makefile @@ -1,5 +1,5 @@ PORTNAME= tcpreplay -DISTVERSION= 4.5.1 +DISTVERSION= 4.5.2 CATEGORIES= net-mgmt MASTER_SITES= https://github.com/appneta/${PORTNAME}/releases/download/v${DISTVERSION}/ @@ -23,10 +23,15 @@ CONFIGURE_ARGS= --disable-libopts-install \ TEST_TARGET= test -OPTIONS_DEFINE= LIBPCAP_PORTS -LIBPCAP_PORTS_DESC= Build with net/libpcap instead of from the base OS -# needs .so version (see: 262976) +OPTIONS_DEFINE= LIBPCAP_PORTS +LIBPCAP_PORTS_DESC= Build with net/libpcap instead of from the base OS + +# needs .so version (libpcap.so:net/libpcap uses libpcap from the base system) LIBPCAP_PORTS_LIB_DEPENDS= libpcap.so.1:net/libpcap LIBPCAP_PORTS_CONFIGURE_OFF= --with-libpcap=/usr/lib +post-patch: + @${REINPLACE_CMD} -e '/make test/s|make|${MAKE_CMD}|' \ + ${WRKSRC}/Makefile.in + .include <bsd.port.mk> diff --git a/net-mgmt/tcpreplay/distinfo b/net-mgmt/tcpreplay/distinfo index fc9e9a47463a..7675ec8b79ba 100644 --- a/net-mgmt/tcpreplay/distinfo +++ b/net-mgmt/tcpreplay/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1721131125 -SHA256 (tcpreplay-4.5.1.tar.xz) = 5126613f783062b43f514b05ad981376050a8fee35b03c8de4445ddeefd95049 -SIZE (tcpreplay-4.5.1.tar.xz) = 809628 +TIMESTAMP = 1756274419 +SHA256 (tcpreplay-4.5.2.tar.xz) = 2df15bc6d49f96a77617d137049f998193bbae95c1a31b04ca02856a24cbf384 +SIZE (tcpreplay-4.5.2.tar.xz) = 818824 diff --git a/net-mgmt/tcpreplay/files/patch-Makefile.in b/net-mgmt/tcpreplay/files/patch-Makefile.in deleted file mode 100644 index 9d6e23e9e94a..000000000000 --- a/net-mgmt/tcpreplay/files/patch-Makefile.in +++ /dev/null @@ -1,11 +0,0 @@ ---- Makefile.in.orig 2024-07-12 17:15:27 UTC -+++ Makefile.in -@@ -900,7 +900,7 @@ test: - - test: - echo Making test in $(TEST_DIR) -- cd $(TEST_DIR) && make test -+ cd $(TEST_DIR) && gmake test - - dlt_names: - cat @SAVEFILE_C@ | $(top_builddir)/scripts/dlt2name.pl src/dlt_names.h diff --git a/net-mgmt/tcpreplay/files/patch-lib_queue.h b/net-mgmt/tcpreplay/files/patch-lib_queue.h new file mode 100644 index 000000000000..8159c28745ae --- /dev/null +++ b/net-mgmt/tcpreplay/files/patch-lib_queue.h @@ -0,0 +1,18 @@ +--- lib/queue.h.orig 2025-08-27 06:21:35 UTC ++++ lib/queue.h +@@ -36,7 +36,8 @@ + * @(#)queue.h 8.5 (Berkeley) 8/20/94 + */ + +-#pragma once ++#ifndef _SYS_QUEUE_H_ ++#define _SYS_QUEUE_H_ + + /* + * This file defines five types of data structures: singly-linked lists, +@@ -506,3 +507,5 @@ struct { \ + else \ + (elm2)->field.cqe_prev->field.cqe_next = (elm2); \ + } while (0) ++ ++#endif /* !_SYS_QUEUE_H_ */ diff --git a/net-mgmt/tcpreplay/files/patch-src_fragroute_mod.c b/net-mgmt/tcpreplay/files/patch-src_fragroute_mod.c deleted file mode 100644 index d4eb02fa98b1..000000000000 --- a/net-mgmt/tcpreplay/files/patch-src_fragroute_mod.c +++ /dev/null @@ -1,15 +0,0 @@ ---- src/fragroute/mod.c.orig 2023-12-31 18:39:02 UTC -+++ src/fragroute/mod.c -@@ -8,11 +8,11 @@ - */ - - #include "mod.h" -+#include "lib/queue.h" - #include "defines.h" - #include "config.h" - #include "common.h" - #include "argv.h" --#include "lib/queue.h" - #include <ctype.h> - #include <stdio.h> - #include <stdlib.h> diff --git a/net-mgmt/tcpreplay/files/patch-src_fragroute_pkt.h b/net-mgmt/tcpreplay/files/patch-src_fragroute_pkt.h deleted file mode 100644 index ec36392985f8..000000000000 --- a/net-mgmt/tcpreplay/files/patch-src_fragroute_pkt.h +++ /dev/null @@ -1,13 +0,0 @@ ---- src/fragroute/pkt.h.orig 2023-12-31 18:39:02 UTC -+++ src/fragroute/pkt.h -@@ -8,9 +8,9 @@ - - #pragma once - -+#include "lib/queue.h" - #include "defines.h" - #include "config.h" --#include "lib/queue.h" - #include <sys/time.h> - - #ifdef HAVE_LIBDNET diff --git a/net/asterisk18/Makefile b/net/asterisk18/Makefile index 1bb8ddb06a09..1d6db6817053 100644 --- a/net/asterisk18/Makefile +++ b/net/asterisk18/Makefile @@ -1,5 +1,5 @@ PORTNAME= asterisk -PORTVERSION= 18.26.3 +PORTVERSION= 18.26.4 CATEGORIES= net MASTER_SITES= https://downloads.asterisk.org/pub/telephony/%SUBDIR%/:DEFAULT,g729 MASTER_SITE_SUBDIR= asterisk/ \ @@ -216,7 +216,7 @@ ASTERISK_MOH_G729_SOUNDS= asterisk-moh-opsound-g729-2.03.tar.gz ASTERISK_USER?= asterisk ASTERISK_GROUP?= asterisk -PJSIP_VERSION= 2.14.1 +PJSIP_VERSION= 2.15.1 .include <bsd.port.options.mk> diff --git a/net/asterisk18/distinfo b/net/asterisk18/distinfo index 6b4b8c9a6217..84c16f4e397f 100644 --- a/net/asterisk18/distinfo +++ b/net/asterisk18/distinfo @@ -1,11 +1,11 @@ -TIMESTAMP = 1754049542 -SHA256 (asterisk/asterisk-18.26.3.tar.gz) = 0df8be2f57779019895628363a11f74ea356068cca983462ec0feb72528fc8e9 -SIZE (asterisk/asterisk-18.26.3.tar.gz) = 28568360 +TIMESTAMP = 1756460172 +SHA256 (asterisk/asterisk-18.26.4.tar.gz) = a17f511bfa092c8fa9eccd3a5ecf5f728ccdcf2b1a04d2c06e7177d96c3c9ee1 +SIZE (asterisk/asterisk-18.26.4.tar.gz) = 28570896 SHA256 (asterisk/asterisk-core-sounds-en-g729-1.6.1.tar.gz) = 306ec9f38de9859e3f750ecff1385187945021919ea936c02e890134a04bae33 SIZE (asterisk/asterisk-core-sounds-en-g729-1.6.1.tar.gz) = 1557751 SHA256 (asterisk/asterisk-moh-opsound-g729-2.03.tar.gz) = 0147ca9a97f0c550227aacb7793499057c4d2c64e021c95f93722f27d5549585 SIZE (asterisk/asterisk-moh-opsound-g729-2.03.tar.gz) = 1103000 SHA256 (asterisk/traud-asterisk-opus-83e1b458c77e0e287adeca494eeb79edb077b0ff_GH0.tar.gz) = 572a3c956371ed62b44a4bcd973db10eb4c84f3040cf7156e3acfad3b6bf3ded SIZE (asterisk/traud-asterisk-opus-83e1b458c77e0e287adeca494eeb79edb077b0ff_GH0.tar.gz) = 24044 -SHA256 (asterisk/pjsip-pjproject-2.14.1_GH0.tar.gz) = 6140f7a97e318caa89c17e8d5468599671c6eed12d64a7c160dac879ba004c68 -SIZE (asterisk/pjsip-pjproject-2.14.1_GH0.tar.gz) = 10322231 +SHA256 (asterisk/pjsip-pjproject-2.15.1_GH0.tar.gz) = 8f3bd99caf003f96ed8038b8a36031eb9d8cd9eaea1eaff7e01c2eef6bd55706 +SIZE (asterisk/pjsip-pjproject-2.15.1_GH0.tar.gz) = 10425868 diff --git a/net/gitlab-agent/distinfo b/net/gitlab-agent/distinfo index 6beff0872658..aea0647c6a30 100644 --- a/net/gitlab-agent/distinfo +++ b/net/gitlab-agent/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1755673971 -SHA256 (go/net_gitlab-agent/gitlab-agent-v18.3.0/v18.3.0.mod) = 2ec01cce9df32ed086dd50ebf5d7d120d6edffe83b9ea78dbfba19d1e92d77d2 -SIZE (go/net_gitlab-agent/gitlab-agent-v18.3.0/v18.3.0.mod) = 10172 -SHA256 (go/net_gitlab-agent/gitlab-agent-v18.3.0/v18.3.0.zip) = 5cc156ef5215212c5e6c2fd0c6205d839d806343e74cdb748ee0fb8366092224 -SIZE (go/net_gitlab-agent/gitlab-agent-v18.3.0/v18.3.0.zip) = 1790280 +TIMESTAMP = 1756438001 +SHA256 (go/net_gitlab-agent/gitlab-agent-v18.3.1/v18.3.1.mod) = 2ec01cce9df32ed086dd50ebf5d7d120d6edffe83b9ea78dbfba19d1e92d77d2 +SIZE (go/net_gitlab-agent/gitlab-agent-v18.3.1/v18.3.1.mod) = 10172 +SHA256 (go/net_gitlab-agent/gitlab-agent-v18.3.1/v18.3.1.zip) = d10e44c56f6d9745cfba2c71af76fae4811423ec1020b057dd8a0fcb9ee6abf5 +SIZE (go/net_gitlab-agent/gitlab-agent-v18.3.1/v18.3.1.zip) = 1790288 diff --git a/net/kea/Makefile b/net/kea/Makefile index efb6cbfc698f..a937964fc4ab 100644 --- a/net/kea/Makefile +++ b/net/kea/Makefile @@ -1,6 +1,5 @@ PORTNAME= kea -DISTVERSION= 3.0.0 -PORTREVISION= 5 +DISTVERSION= 3.0.1 CATEGORIES= net MASTER_SITES= ISC/kea/${DISTVERSION} diff --git a/net/kea/distinfo b/net/kea/distinfo index 34919567d383..51c5c2bafda0 100644 --- a/net/kea/distinfo +++ b/net/kea/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1750867283 -SHA256 (kea-3.0.0.tar.xz) = bf963d1e10951d8c570c6042afccf27c709d45e03813bd2639d7bb1cfc4fee76 -SIZE (kea-3.0.0.tar.xz) = 6631612 +TIMESTAMP = 1756327795 +SHA256 (kea-3.0.1.tar.xz) = ec84fec4bb7f6b9d15a82e755a571e9348eb4d6fbc62bb3f6f1296cd7a24c566 +SIZE (kea-3.0.1.tar.xz) = 6632284 diff --git a/net/kea/files/patch-meson.build b/net/kea/files/patch-meson.build index 58f40526b835..f444e3bcdafe 100644 --- a/net/kea/files/patch-meson.build +++ b/net/kea/files/patch-meson.build @@ -1,6 +1,6 @@ ---- meson.build.orig 2025-06-20 09:28:47.000000000 -0700 -+++ meson.build 2025-07-10 10:25:47.651315000 -0700 -@@ -59,7 +59,7 @@ +--- meson.build.orig 2025-06-20 16:28:47 UTC ++++ meson.build +@@ -59,7 +59,7 @@ if PREFIX == '/usr/local' # Meson is annoying with its opinionated alteration of certain paths based on whether prefix is default or not. # So we revert what it does. if PREFIX == '/usr/local' @@ -9,7 +9,7 @@ endif DATABASE_SCRIPTS_DIR = TOP_BUILD_DIR / 'src/share/database/scripts' -@@ -69,17 +69,17 @@ +@@ -69,17 +69,17 @@ KEA_LFC_INSTALLED = PREFIX / SBINDIR / 'kea-lfc' KEA_ADMIN_INSTALLED = PREFIX / SBINDIR / 'kea-admin' KEA_LFC_BUILT = TOP_BUILD_DIR / 'src/bin/lfc/kea-lfc' KEA_LFC_INSTALLED = PREFIX / SBINDIR / 'kea-lfc' @@ -31,7 +31,7 @@ SHAREDSTATEDIR_INSTALLED = PREFIX / SHAREDSTATEDIR SYSCONFDIR_INSTALLED = PREFIX / SYSCONFDIR TEST_CA_DIR = TOP_SOURCE_DIR / 'src/lib/asiolink/testutils/ca' -@@ -88,9 +88,9 @@ +@@ -88,9 +88,9 @@ if PREFIX == '/usr/local' # So we revert what it does. if PREFIX == '/usr/local' SYSCONFDIR_INSTALLED = '/usr/local/etc' @@ -44,7 +44,7 @@ endif #### Build Options -@@ -1108,9 +1108,9 @@ +@@ -1108,9 +1108,9 @@ if PREFIX == '/usr/local' # In case prefix is default, install to hardcoded path. if PREFIX == '/usr/local' install_emptydir('/usr/local/lib/kea') diff --git a/net/kea/files/patch-src_bin_shell_kea-shell.in b/net/kea/files/patch-src_bin_shell_kea-shell.in deleted file mode 100644 index caa0eea9db98..000000000000 --- a/net/kea/files/patch-src_bin_shell_kea-shell.in +++ /dev/null @@ -1,8 +0,0 @@ ---- src/bin/shell/kea-shell.in.orig 2025-06-20 09:28:47.000000000 -0700 -+++ src/bin/shell/kea-shell.in 2025-08-13 09:47:11.947513000 -0700 -@@ -1,4 +1,4 @@ --#!@PYTHON@ -+#!/usr/bin/env /usr/local/bin/python3 - - # Copyright (C) 2017-2025 Internet Systems Consortium, Inc. ("ISC") - # diff --git a/net/kea/pkg-plist b/net/kea/pkg-plist index 357a8bdab3b1..08c26c31820c 100644 --- a/net/kea/pkg-plist +++ b/net/kea/pkg-plist @@ -472,8 +472,8 @@ lib/libkea-asiodns.so lib/libkea-asiodns.so.62 lib/libkea-asiodns.so.62.0.0 lib/libkea-asiolink.so -lib/libkea-asiolink.so.87 -lib/libkea-asiolink.so.87.0.0 +lib/libkea-asiolink.so.88 +lib/libkea-asiolink.so.88.0.0 lib/libkea-cc.so lib/libkea-cc.so.82 lib/libkea-cc.so.82.0.0 @@ -484,8 +484,8 @@ lib/libkea-config.so lib/libkea-config.so.83 lib/libkea-config.so.83.0.0 lib/libkea-cryptolink.so -lib/libkea-cryptolink.so.63 -lib/libkea-cryptolink.so.63.0.0 +lib/libkea-cryptolink.so.64 +lib/libkea-cryptolink.so.64.0.0 lib/libkea-d2srv.so lib/libkea-d2srv.so.63 lib/libkea-d2srv.so.63.0.0 @@ -499,8 +499,8 @@ lib/libkea-dhcp_ddns.so lib/libkea-dhcp_ddns.so.68 lib/libkea-dhcp_ddns.so.68.0.0 lib/libkea-dhcpsrv.so -lib/libkea-dhcpsrv.so.129 -lib/libkea-dhcpsrv.so.129.0.0 +lib/libkea-dhcpsrv.so.130 +lib/libkea-dhcpsrv.so.130.0.0 lib/libkea-dns.so lib/libkea-dns.so.71 lib/libkea-dns.so.71.0.0 @@ -511,8 +511,8 @@ lib/libkea-exceptions.so lib/libkea-exceptions.so.45 lib/libkea-exceptions.so.45.0.0 lib/libkea-hooks.so -lib/libkea-hooks.so.118 -lib/libkea-hooks.so.118.0.0 +lib/libkea-hooks.so.119 +lib/libkea-hooks.so.119.0.0 lib/libkea-http.so lib/libkea-http.so.87 lib/libkea-http.so.87.0.0 diff --git a/net/rubygem-gitlab-kas-grpc/distinfo b/net/rubygem-gitlab-kas-grpc/distinfo index 6e9d5e738b2a..60540f0318be 100644 --- a/net/rubygem-gitlab-kas-grpc/distinfo +++ b/net/rubygem-gitlab-kas-grpc/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1755674007 -SHA256 (rubygem/gitlab-kas-grpc-18.3.0.gem) = 3dd60ca782066ff5b70d8e6405701f42b77fccb27e015d7a9ff159f84feb218f -SIZE (rubygem/gitlab-kas-grpc-18.3.0.gem) = 10752 +TIMESTAMP = 1756438025 +SHA256 (rubygem/gitlab-kas-grpc-18.3.1.gem) = d8d1e3dc55a7f383184c76c5878adf49604b06411b95031128ac357a2a2b3e51 +SIZE (rubygem/gitlab-kas-grpc-18.3.1.gem) = 10752 diff --git a/ports-mgmt/Makefile b/ports-mgmt/Makefile index cf436293cf0f..1803545359c4 100644 --- a/ports-mgmt/Makefile +++ b/ports-mgmt/Makefile @@ -82,5 +82,6 @@ SUBDIR += submodules2tuple SUBDIR += synth SUBDIR += wanted-ports + SUBDIR += zig2tuple .include <bsd.port.subdir.mk> diff --git a/ports-mgmt/zig2tuple/Makefile b/ports-mgmt/zig2tuple/Makefile new file mode 100644 index 000000000000..409d788e9355 --- /dev/null +++ b/ports-mgmt/zig2tuple/Makefile @@ -0,0 +1,20 @@ +PORTNAME= zig2tuple +DISTVERSION= g20250703 +CATEGORIES= ports-mgmt + +MAINTAINER= kenrap@kennethraplee.com +COMMENT= Generate ZIG_TUPLE knob for Zig ports +WWW= https://github.com/kenrap/zig2tuple + +LICENSE= BSD2CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE + +USES= zig + +USE_GITHUB= yes +GH_ACCOUNT= kenrap +GH_TAGNAME= cead685e8f565c60f611b88eb51fd529a76752cf + +PLIST_FILES= bin/${PORTNAME} + +.include <bsd.port.mk> diff --git a/ports-mgmt/zig2tuple/distinfo b/ports-mgmt/zig2tuple/distinfo new file mode 100644 index 000000000000..f72a20df04f4 --- /dev/null +++ b/ports-mgmt/zig2tuple/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1751726671 +SHA256 (zig/kenrap-zig2tuple-g20250703-cead685e8f565c60f611b88eb51fd529a76752cf_GH0.tar.gz) = 000d6ee991f7eaa28cafd78973933ef98cbf0feecb5f1005ad662ffd1a13fce4 +SIZE (zig/kenrap-zig2tuple-g20250703-cead685e8f565c60f611b88eb51fd529a76752cf_GH0.tar.gz) = 3062 diff --git a/ports-mgmt/zig2tuple/pkg-descr b/ports-mgmt/zig2tuple/pkg-descr new file mode 100644 index 000000000000..6e86a4926a36 --- /dev/null +++ b/ports-mgmt/zig2tuple/pkg-descr @@ -0,0 +1,3 @@ +zig2tuple is a FreeBSD ports utility that converts Zig Object Notation +dependency entries (build.zig.zon files) to the ZIG_TUPLE knob that is later +consumed the USES=zig machinery. diff --git a/print/sioyek/Makefile b/print/sioyek/Makefile index 55b04a09bf8c..93e269d9a1a5 100644 --- a/print/sioyek/Makefile +++ b/print/sioyek/Makefile @@ -1,7 +1,7 @@ PORTNAME= sioyek DISTVERSIONPREFIX= v DISTVERSION= 2.0.0.20250513 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= print MAINTAINER= fuz@FreeBSD.org diff --git a/science/openmodelica/Makefile b/science/openmodelica/Makefile index dafafc57c8da..fd76e7f0a190 100644 --- a/science/openmodelica/Makefile +++ b/science/openmodelica/Makefile @@ -1,7 +1,6 @@ PORTNAME= openmodelica DISTVERSIONPREFIX= v -DISTVERSION= 1.25.1 -PORTREVISION= 1 +DISTVERSION= 1.25.2 CATEGORIES= science cad java DIST_SUBDIR= ${PORTNAME}-${PORTVERSION} @@ -54,15 +53,15 @@ GH_PROJECT= OpenModelica SHEBANG_GLOB= *.sh *.in *.ac GH_TUPLE= \ - OpenModelica:OMOptim:f1036f43db18c5015da259771004cfb80e08a110:OpenModelica_OMOptim/OMOptim \ - OpenModelica:OMSimulator:46fa40f:OpenModelica_OMSimulator/OMSimulator \ + OpenModelica:OMOptim:d53288b:OpenModelica_OMOptim/OMOptim \ + OpenModelica:OMSimulator:e3a3aeb:OpenModelica_OMSimulator/OMSimulator \ OpenModelica:OMSimulator-3rdParty:5c10de1648d1134a577d9284b58580a72383d89f:OpenModelica_OMSimulator_3rdParty/OMSimulator/3rdParty \ OpenModelica:OMCompiler-3rdParty:520663f:OpenModelica_OMCompiler_3rdParty/OMCompiler/3rdParty \ OpenModelica:OMSens:093ad11:OpenModelica_OMSens/OMSens \ OpenModelica:OMSens_Qt:bab329a:OpenModelica_OMSens_Qt/OMSens_Qt \ OpenModelica:OpenModelica-common:08a01802db5ba5edb540383c46718b89ff229ef2:OpenModelica_OpenModelica_common/OMOptim/common \ OpenModelica:OpenModelica-common:08a01802db5ba5edb540383c46718b89ff229ef2:OpenModelica_OpenModelica_common/OMSens_Qt/common -GH_TUPLE+= OpenModelica:OMBootstrapping:91938f0acbdc6e9ba91114376e3640ca6147b579:bootstrapping/OMCompiler/Compiler/boot/bomc # downloaded by cmake +GH_TUPLE+= OpenModelica:OMBootstrapping:04d16f7461e5401321f0f72613daf466ae2f76be:bootstrapping/OMCompiler/Compiler/boot/bomc # downloaded by cmake # this should change make program everywhere, but it doesn't, # hence the patches in OMCompiler/Compiler/runtime/CMakeLists.txt, OMEdit/OMEditLIB/Simulation/SimulationOutputWidget.cpp diff --git a/science/openmodelica/distinfo b/science/openmodelica/distinfo index 66b481d27d53..56ac7fddde4b 100644 --- a/science/openmodelica/distinfo +++ b/science/openmodelica/distinfo @@ -1,19 +1,19 @@ -TIMESTAMP = 1750120788 -SHA256 (openmodelica-1.25.1/OpenModelica-OpenModelica-v1.25.1_GH0.tar.gz) = f7d819fd7b838bad5ddbbd9ee585e49053464db68c0b9a406b2f9fea400ac2e5 -SIZE (openmodelica-1.25.1/OpenModelica-OpenModelica-v1.25.1_GH0.tar.gz) = 148275827 -SHA256 (openmodelica-1.25.1/OpenModelica-OMOptim-f1036f43db18c5015da259771004cfb80e08a110_GH0.tar.gz) = 11189c8ab3fb9d22ed805271ef53b9698b0d41007a1708d7a77ef074a5b20447 -SIZE (openmodelica-1.25.1/OpenModelica-OMOptim-f1036f43db18c5015da259771004cfb80e08a110_GH0.tar.gz) = 4022842 -SHA256 (openmodelica-1.25.1/OpenModelica-OMSimulator-46fa40f_GH0.tar.gz) = eb5fbb88b2cf6a3556c43ee4c0b446fb26a70be06ddfb4031e50636dc1af1048 -SIZE (openmodelica-1.25.1/OpenModelica-OMSimulator-46fa40f_GH0.tar.gz) = 92370094 -SHA256 (openmodelica-1.25.1/OpenModelica-OMSimulator-3rdParty-5c10de1648d1134a577d9284b58580a72383d89f_GH0.tar.gz) = ea57e90ea76eca2657e8ddaa6c87301a16661200b3e8a00347a12bfdbb5f973d -SIZE (openmodelica-1.25.1/OpenModelica-OMSimulator-3rdParty-5c10de1648d1134a577d9284b58580a72383d89f_GH0.tar.gz) = 7637943 -SHA256 (openmodelica-1.25.1/OpenModelica-OMCompiler-3rdParty-520663f_GH0.tar.gz) = 37c82357fc1e862eb13d79cf1ff2d143f263502472db9bb2c350c0c551022954 -SIZE (openmodelica-1.25.1/OpenModelica-OMCompiler-3rdParty-520663f_GH0.tar.gz) = 50256095 -SHA256 (openmodelica-1.25.1/OpenModelica-OMSens-093ad11_GH0.tar.gz) = 335512c08f94902bb07e75278cea791370a551336272f7bebef8c707ef5e5e2b -SIZE (openmodelica-1.25.1/OpenModelica-OMSens-093ad11_GH0.tar.gz) = 8871049 -SHA256 (openmodelica-1.25.1/OpenModelica-OMSens_Qt-bab329a_GH0.tar.gz) = 2f2dcba4defd7f13e9fd5e0c26bb4951b9f1fcc7da64960a6ad1cee32a628efa -SIZE (openmodelica-1.25.1/OpenModelica-OMSens_Qt-bab329a_GH0.tar.gz) = 211270 -SHA256 (openmodelica-1.25.1/OpenModelica-OpenModelica-common-08a01802db5ba5edb540383c46718b89ff229ef2_GH0.tar.gz) = fdb5bb442da0375373ef221cf26195114bf149511c1c2be051caad6301c21c9a -SIZE (openmodelica-1.25.1/OpenModelica-OpenModelica-common-08a01802db5ba5edb540383c46718b89ff229ef2_GH0.tar.gz) = 36148 -SHA256 (openmodelica-1.25.1/OpenModelica-OMBootstrapping-91938f0acbdc6e9ba91114376e3640ca6147b579_GH0.tar.gz) = 1a0327dabedd09dab3aa872af194b6d4e79bacc45659ea3154076e7f1f54b2cc -SIZE (openmodelica-1.25.1/OpenModelica-OMBootstrapping-91938f0acbdc6e9ba91114376e3640ca6147b579_GH0.tar.gz) = 3328929 +TIMESTAMP = 1756357301 +SHA256 (openmodelica-1.25.2/OpenModelica-OpenModelica-v1.25.2_GH0.tar.gz) = a56f60074842f8b10c05d8ad323e89937b38ecbea0c9f062858f57d5ab8dbf7c +SIZE (openmodelica-1.25.2/OpenModelica-OpenModelica-v1.25.2_GH0.tar.gz) = 148277183 +SHA256 (openmodelica-1.25.2/OpenModelica-OMOptim-d53288b_GH0.tar.gz) = d5012951f43e90dce03d7866d221278ee11ddfbdac4db20fe43d93adbc3748e7 +SIZE (openmodelica-1.25.2/OpenModelica-OMOptim-d53288b_GH0.tar.gz) = 4024177 +SHA256 (openmodelica-1.25.2/OpenModelica-OMSimulator-e3a3aeb_GH0.tar.gz) = 6192d933c258950fb0171f5d0ddac0353632d17ee99f6974ba53dd654f547e49 +SIZE (openmodelica-1.25.2/OpenModelica-OMSimulator-e3a3aeb_GH0.tar.gz) = 95557541 +SHA256 (openmodelica-1.25.2/OpenModelica-OMSimulator-3rdParty-5c10de1648d1134a577d9284b58580a72383d89f_GH0.tar.gz) = ea57e90ea76eca2657e8ddaa6c87301a16661200b3e8a00347a12bfdbb5f973d +SIZE (openmodelica-1.25.2/OpenModelica-OMSimulator-3rdParty-5c10de1648d1134a577d9284b58580a72383d89f_GH0.tar.gz) = 7637943 +SHA256 (openmodelica-1.25.2/OpenModelica-OMCompiler-3rdParty-520663f_GH0.tar.gz) = 37c82357fc1e862eb13d79cf1ff2d143f263502472db9bb2c350c0c551022954 +SIZE (openmodelica-1.25.2/OpenModelica-OMCompiler-3rdParty-520663f_GH0.tar.gz) = 50256095 +SHA256 (openmodelica-1.25.2/OpenModelica-OMSens-093ad11_GH0.tar.gz) = 335512c08f94902bb07e75278cea791370a551336272f7bebef8c707ef5e5e2b +SIZE (openmodelica-1.25.2/OpenModelica-OMSens-093ad11_GH0.tar.gz) = 8871049 +SHA256 (openmodelica-1.25.2/OpenModelica-OMSens_Qt-bab329a_GH0.tar.gz) = 2f2dcba4defd7f13e9fd5e0c26bb4951b9f1fcc7da64960a6ad1cee32a628efa +SIZE (openmodelica-1.25.2/OpenModelica-OMSens_Qt-bab329a_GH0.tar.gz) = 211270 +SHA256 (openmodelica-1.25.2/OpenModelica-OpenModelica-common-08a01802db5ba5edb540383c46718b89ff229ef2_GH0.tar.gz) = fdb5bb442da0375373ef221cf26195114bf149511c1c2be051caad6301c21c9a +SIZE (openmodelica-1.25.2/OpenModelica-OpenModelica-common-08a01802db5ba5edb540383c46718b89ff229ef2_GH0.tar.gz) = 36148 +SHA256 (openmodelica-1.25.2/OpenModelica-OMBootstrapping-04d16f7461e5401321f0f72613daf466ae2f76be_GH0.tar.gz) = 9ac6d28be6a331dfb61a57b033f2bcf984448cd63bc1a4cd140d60c2f5c64a79 +SIZE (openmodelica-1.25.2/OpenModelica-OMBootstrapping-04d16f7461e5401321f0f72613daf466ae2f76be_GH0.tar.gz) = 3346859 diff --git a/science/openmodelica/pkg-plist b/science/openmodelica/pkg-plist index 2f3a85526399..9c08ba4f8e0a 100644 --- a/science/openmodelica/pkg-plist +++ b/science/openmodelica/pkg-plist @@ -778,12 +778,15 @@ share/OMSimulator/schema/fmi3/fmi3Type.xsd share/OMSimulator/schema/fmi3/fmi3Unit.xsd share/OMSimulator/schema/fmi3/fmi3Variable.xsd share/OMSimulator/schema/fmi3/fmi3VariableDependency.xsd +share/OMSimulator/schema/ssp/SSPTraceabilityCommon.xsd +share/OMSimulator/schema/ssp/SimulationResourceMetaData.xsd share/OMSimulator/schema/ssp/SystemStructureCommon.xsd share/OMSimulator/schema/ssp/SystemStructureDescription.xsd share/OMSimulator/schema/ssp/SystemStructureDescription11.xsd share/OMSimulator/schema/ssp/SystemStructureParameterMapping.xsd share/OMSimulator/schema/ssp/SystemStructureParameterValues.xsd share/OMSimulator/schema/ssp/SystemStructureSignalDictionary.xsd +share/OMSimulator/schema/ssp/xlink.xsd share/OMSimulator/scripts/OMSimulatorServer.py share/cmake/ZeroMQ/ZeroMQConfig.cmake share/cmake/ZeroMQ/ZeroMQConfigVersion.cmake diff --git a/security/hashcat/Makefile b/security/hashcat/Makefile index 6a32d8830b52..be113eb03c5f 100644 --- a/security/hashcat/Makefile +++ b/security/hashcat/Makefile @@ -1,7 +1,6 @@ PORTNAME= hashcat -PORTVERSION= 6.2.6 +PORTVERSION= 7.1.2 DISTVERSIONPREFIX= v -PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= security @@ -12,12 +11,15 @@ WWW= https://hashcat.net/hashcat/ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/docs/license.txt -NOT_FOR_ARCHS= powerpc powerpc64 powerpcspe -NOT_FOR_ARCHS_REASON= fails to compile: compiling for big-endian architecture not supported +NOT_FOR_ARCHS= powerpc powerpc64 powerpcspe i386 +NOT_FOR_ARCHS_REASON= highly optimized for specific CPUs -BUILD_DEPENDS= minizip:archivers/minizip +BUILD_DEPENDS= minizip:archivers/minizip \ + rustc:lang/${RUST_DEFAULT} +LIB_DEPENDS= libiconv.so:converters/libiconv -USES= compiler:c11 gmake iconv localbase python shebangfix +USES= cargo compiler:c++11-lang gmake iconv localbase \ + python:3.12+,build shebangfix USE_GITHUB= yes GH_ACCOUNT= KhronosGroup:opencl Cyan4973:xxhash @@ -28,14 +30,18 @@ PYTHON_NO_DEPENDS= yes SHEBANG_FILES= extra/tab_completion/install tools/*.py -MAKE_ARGS+= SHARED=1 \ - CC="${CC}" \ - LFLAGS_NATIVE="${LDFLAGS} -lpthread -lm" \ - CFLAGS_NATIVE="${CFLAGS} -Iinclude -IOpenCL -Ideps/LZMA-SDK/C \ - -Ideps/git/OpenCL-Headers" -ALL_TARGET= default +CARGO_CARGOLOCK= ${WRKSRC}/Rust/generic_hash/Cargo.lock +CARGO_CARGOTOML= ${WRKSRC}/Rust/generic_hash/Cargo.toml +CARGO_INSTALL= no + +MAKE_ARGS= SHARED=1 + +ALL_TARGET= default +MAKE_ARGS+= CFLAGS_PYTHON=-I${LOCALBASE}/include/${PYTHON_VERSION} CFLAGS_aarch64+= -march=armv8-a+crc+crypto +BINARY_ALIAS= python3-config ${PYTHON_VERSION}-config + PLIST_SUB= PORTVERSION=${PORTVERSION} OPTIONS_DEFINE= BRAIN DOCS @@ -44,9 +50,4 @@ BRAIN_DESC= Build Hashcat Brain BRAIN_MAKE_ARGS_OFF= ENABLE_BRAIN=0 BRAIN_CFLAGS= -DWITH_BRAIN -Ideps/git/xxHash -pre-install: - ${STRIP_CMD} ${WRKSRC}/libhashcat.so.${PORTVERSION} - ${STRIP_CMD} ${WRKSRC}/modules/*.so - ${STRIP_CMD} ${WRKSRC}/hashcat - .include <bsd.port.mk> diff --git a/security/hashcat/Makefile.crates b/security/hashcat/Makefile.crates new file mode 100644 index 000000000000..3d950138cddc --- /dev/null +++ b/security/hashcat/Makefile.crates @@ -0,0 +1,44 @@ +CARGO_CRATES= aho-corasick-1.1.3 \ + bindgen-0.72.0 \ + bitflags-2.9.3 \ + block-buffer-0.10.4 \ + cexpr-0.6.0 \ + cfg-if-1.0.3 \ + clang-sys-1.8.1 \ + cpufeatures-0.2.17 \ + crypto-common-0.1.6 \ + digest-0.10.7 \ + either-1.15.0 \ + generic-array-0.14.7 \ + glob-0.3.3 \ + hex-0.4.3 \ + itertools-0.13.0 \ + libc-0.2.175 \ + libloading-0.8.8 \ + log-0.4.27 \ + memchr-2.7.5 \ + minimal-lexical-0.2.1 \ + nom-7.1.3 \ + prettyplease-0.2.37 \ + proc-macro2-1.0.101 \ + quote-1.0.40 \ + regex-1.11.2 \ + regex-automata-0.4.10 \ + regex-syntax-0.8.6 \ + rustc-hash-2.1.1 \ + sha2-0.10.9 \ + shlex-1.3.0 \ + syn-2.0.106 \ + typenum-1.18.0 \ + unicode-ident-1.0.18 \ + version_check-0.9.5 \ + windows-link-0.1.3 \ + windows-targets-0.53.3 \ + windows_aarch64_gnullvm-0.53.0 \ + windows_aarch64_msvc-0.53.0 \ + windows_i686_gnu-0.53.0 \ + windows_i686_gnullvm-0.53.0 \ + windows_i686_msvc-0.53.0 \ + windows_x86_64_gnu-0.53.0 \ + windows_x86_64_gnullvm-0.53.0 \ + windows_x86_64_msvc-0.53.0 diff --git a/security/hashcat/distinfo b/security/hashcat/distinfo index 91475d03128c..37633b489199 100644 --- a/security/hashcat/distinfo +++ b/security/hashcat/distinfo @@ -1,6 +1,94 @@ -TIMESTAMP = 1662143219 -SHA256 (hashcat-hashcat-v6.2.6_GH0.tar.gz) = b25e1077bcf34908cc8f18c1a69a2ec98b047b2cbcf0f51144dcf3ba1e0b7b2a -SIZE (hashcat-hashcat-v6.2.6_GH0.tar.gz) = 14234640 +TIMESTAMP = 1756203030 +SHA256 (rust/crates/aho-corasick-1.1.3.crate) = 8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916 +SIZE (rust/crates/aho-corasick-1.1.3.crate) = 183311 +SHA256 (rust/crates/bindgen-0.72.0.crate) = 4f72209734318d0b619a5e0f5129918b848c416e122a3c4ce054e03cb87b726f +SIZE (rust/crates/bindgen-0.72.0.crate) = 246019 +SHA256 (rust/crates/bitflags-2.9.3.crate) = 34efbcccd345379ca2868b2b2c9d3782e9cc58ba87bc7d79d5b53d9c9ae6f25d +SIZE (rust/crates/bitflags-2.9.3.crate) = 47777 +SHA256 (rust/crates/block-buffer-0.10.4.crate) = 3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71 +SIZE (rust/crates/block-buffer-0.10.4.crate) = 10538 +SHA256 (rust/crates/cexpr-0.6.0.crate) = 6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766 +SIZE (rust/crates/cexpr-0.6.0.crate) = 17966 +SHA256 (rust/crates/cfg-if-1.0.3.crate) = 2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9 +SIZE (rust/crates/cfg-if-1.0.3.crate) = 8719 +SHA256 (rust/crates/clang-sys-1.8.1.crate) = 0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4 +SIZE (rust/crates/clang-sys-1.8.1.crate) = 44009 +SHA256 (rust/crates/cpufeatures-0.2.17.crate) = 59ed5838eebb26a2bb2e58f6d5b5316989ae9d08bab10e0e6d103e656d1b0280 +SIZE (rust/crates/cpufeatures-0.2.17.crate) = 13466 +SHA256 (rust/crates/crypto-common-0.1.6.crate) = 1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3 +SIZE (rust/crates/crypto-common-0.1.6.crate) = 8760 +SHA256 (rust/crates/digest-0.10.7.crate) = 9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292 +SIZE (rust/crates/digest-0.10.7.crate) = 19557 +SHA256 (rust/crates/either-1.15.0.crate) = 48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719 +SIZE (rust/crates/either-1.15.0.crate) = 20114 +SHA256 (rust/crates/generic-array-0.14.7.crate) = 85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a +SIZE (rust/crates/generic-array-0.14.7.crate) = 15950 +SHA256 (rust/crates/glob-0.3.3.crate) = 0cc23270f6e1808e30a928bdc84dea0b9b4136a8bc82338574f23baf47bbd280 +SIZE (rust/crates/glob-0.3.3.crate) = 22861 +SHA256 (rust/crates/hex-0.4.3.crate) = 7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70 +SIZE (rust/crates/hex-0.4.3.crate) = 13299 +SHA256 (rust/crates/itertools-0.13.0.crate) = 413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186 +SIZE (rust/crates/itertools-0.13.0.crate) = 146261 +SHA256 (rust/crates/libc-0.2.175.crate) = 6a82ae493e598baaea5209805c49bbf2ea7de956d50d7da0da1164f9c6d28543 +SIZE (rust/crates/libc-0.2.175.crate) = 788728 +SHA256 (rust/crates/libloading-0.8.8.crate) = 07033963ba89ebaf1584d767badaa2e8fcec21aedea6b8c0346d487d49c28667 +SIZE (rust/crates/libloading-0.8.8.crate) = 31345 +SHA256 (rust/crates/log-0.4.27.crate) = 13dc2df351e3202783a1fe0d44375f7295ffb4049267b0f3018346dc122a1d94 +SIZE (rust/crates/log-0.4.27.crate) = 48120 +SHA256 (rust/crates/memchr-2.7.5.crate) = 32a282da65faaf38286cf3be983213fcf1d2e2a58700e808f83f4ea9a4804bc0 +SIZE (rust/crates/memchr-2.7.5.crate) = 97603 +SHA256 (rust/crates/minimal-lexical-0.2.1.crate) = 68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a +SIZE (rust/crates/minimal-lexical-0.2.1.crate) = 94841 +SHA256 (rust/crates/nom-7.1.3.crate) = d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a +SIZE (rust/crates/nom-7.1.3.crate) = 117570 +SHA256 (rust/crates/prettyplease-0.2.37.crate) = 479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b +SIZE (rust/crates/prettyplease-0.2.37.crate) = 72033 +SHA256 (rust/crates/proc-macro2-1.0.101.crate) = 89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de +SIZE (rust/crates/proc-macro2-1.0.101.crate) = 53886 +SHA256 (rust/crates/quote-1.0.40.crate) = 1885c039570dc00dcb4ff087a89e185fd56bae234ddc7f056a945bf36467248d +SIZE (rust/crates/quote-1.0.40.crate) = 31063 +SHA256 (rust/crates/regex-1.11.2.crate) = 23d7fd106d8c02486a8d64e778353d1cffe08ce79ac2e82f540c86d0facf6912 +SIZE (rust/crates/regex-1.11.2.crate) = 166265 +SHA256 (rust/crates/regex-automata-0.4.10.crate) = 6b9458fa0bfeeac22b5ca447c63aaf45f28439a709ccd244698632f9aa6394d6 +SIZE (rust/crates/regex-automata-0.4.10.crate) = 622754 +SHA256 (rust/crates/regex-syntax-0.8.6.crate) = caf4aa5b0f434c91fe5c7f1ecb6a5ece2130b02ad2a590589dda5146df959001 +SIZE (rust/crates/regex-syntax-0.8.6.crate) = 358808 +SHA256 (rust/crates/rustc-hash-2.1.1.crate) = 357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d +SIZE (rust/crates/rustc-hash-2.1.1.crate) = 14154 +SHA256 (rust/crates/sha2-0.10.9.crate) = a7507d819769d01a365ab707794a4084392c824f54a7a6a7862f8c3d0892b283 +SIZE (rust/crates/sha2-0.10.9.crate) = 29271 +SHA256 (rust/crates/shlex-1.3.0.crate) = 0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64 +SIZE (rust/crates/shlex-1.3.0.crate) = 18713 +SHA256 (rust/crates/syn-2.0.106.crate) = ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6 +SIZE (rust/crates/syn-2.0.106.crate) = 301514 +SHA256 (rust/crates/typenum-1.18.0.crate) = 1dccffe3ce07af9386bfd29e80c0ab1a8205a2fc34e4bcd40364df902cfa8f3f +SIZE (rust/crates/typenum-1.18.0.crate) = 74871 +SHA256 (rust/crates/unicode-ident-1.0.18.crate) = 5a5f39404a5da50712a4c1eecf25e90dd62b613502b7e925fd4e4d19b5c96512 +SIZE (rust/crates/unicode-ident-1.0.18.crate) = 47743 +SHA256 (rust/crates/version_check-0.9.5.crate) = 0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a +SIZE (rust/crates/version_check-0.9.5.crate) = 15554 +SHA256 (rust/crates/windows-link-0.1.3.crate) = 5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a +SIZE (rust/crates/windows-link-0.1.3.crate) = 6154 +SHA256 (rust/crates/windows-targets-0.53.3.crate) = d5fe6031c4041849d7c496a8ded650796e7b6ecc19df1a431c1a363342e5dc91 +SIZE (rust/crates/windows-targets-0.53.3.crate) = 7099 +SHA256 (rust/crates/windows_aarch64_gnullvm-0.53.0.crate) = 86b8d5f90ddd19cb4a147a5fa63ca848db3df085e25fee3cc10b39b6eebae764 +SIZE (rust/crates/windows_aarch64_gnullvm-0.53.0.crate) = 782443 +SHA256 (rust/crates/windows_aarch64_msvc-0.53.0.crate) = c7651a1f62a11b8cbd5e0d42526e55f2c99886c77e007179efff86c2b137e66c +SIZE (rust/crates/windows_aarch64_msvc-0.53.0.crate) = 834446 +SHA256 (rust/crates/windows_i686_gnu-0.53.0.crate) = c1dc67659d35f387f5f6c479dc4e28f1d4bb90ddd1a5d3da2e5d97b42d6272c3 +SIZE (rust/crates/windows_i686_gnu-0.53.0.crate) = 936973 +SHA256 (rust/crates/windows_i686_gnullvm-0.53.0.crate) = 9ce6ccbdedbf6d6354471319e781c0dfef054c81fbc7cf83f338a4296c0cae11 +SIZE (rust/crates/windows_i686_gnullvm-0.53.0.crate) = 854056 +SHA256 (rust/crates/windows_i686_msvc-0.53.0.crate) = 581fee95406bb13382d2f65cd4a908ca7b1e4c2f1917f143ba16efe98a589b5d +SIZE (rust/crates/windows_i686_msvc-0.53.0.crate) = 903450 +SHA256 (rust/crates/windows_x86_64_gnu-0.53.0.crate) = 2e55b5ac9ea33f2fc1716d1742db15574fd6fc8dadc51caab1c16a3d3b4190ba +SIZE (rust/crates/windows_x86_64_gnu-0.53.0.crate) = 902585 +SHA256 (rust/crates/windows_x86_64_gnullvm-0.53.0.crate) = 0a6e035dd0599267ce1ee132e51c27dd29437f63325753051e71dd9e42406c57 +SIZE (rust/crates/windows_x86_64_gnullvm-0.53.0.crate) = 782434 +SHA256 (rust/crates/windows_x86_64_msvc-0.53.0.crate) = 271414315aff87387382ec3d271b52d7ae78726f5d44ac98b4f4030c91880486 +SIZE (rust/crates/windows_x86_64_msvc-0.53.0.crate) = 834400 +SHA256 (hashcat-hashcat-v7.1.2_GH0.tar.gz) = 9546a6326d747530b44fcc079babad40304a87f32d3c9080016d58b39cfc8b96 +SIZE (hashcat-hashcat-v7.1.2_GH0.tar.gz) = 19125734 SHA256 (KhronosGroup-OpenCL-Headers-1d3dc4e_GH0.tar.gz) = 21ddb21f6643e5c76aec7a78c9c2aaac6f5e4c82cd4603b437c899026c833977 SIZE (KhronosGroup-OpenCL-Headers-1d3dc4e_GH0.tar.gz) = 59767 SHA256 (Cyan4973-xxHash-c0e86bc_GH0.tar.gz) = 7dc0343140d92f19d5b436591bdb8313b6cb2c686bccb7ff5caafcbc136fe468 diff --git a/security/hashcat/files/patch-deps_LZMA-SDK_C_7zTypes.h b/security/hashcat/files/patch-deps_LZMA-SDK_C_7zTypes.h deleted file mode 100644 index b2ac34f0e546..000000000000 --- a/security/hashcat/files/patch-deps_LZMA-SDK_C_7zTypes.h +++ /dev/null @@ -1,13 +0,0 @@ ---- deps/LZMA-SDK/C/7zTypes.h.orig 2021-11-21 15:39:01 UTC -+++ deps/LZMA-SDK/C/7zTypes.h -@@ -196,8 +196,8 @@ typedef void *LPVOID;
- // typedef void VOID;
- // typedef ULONG_PTR DWORD_PTR, *PDWORD_PTR;
- // gcc / clang on Unix : sizeof(long==sizeof(void*) in 32 or 64 bits)
--typedef long INT_PTR;
--typedef unsigned long UINT_PTR;
-+// typedef long INT_PTR;
-+// typedef unsigned long UINT_PTR;
- typedef long LONG_PTR;
- typedef unsigned long DWORD_PTR;
-
diff --git a/security/hashcat/files/patch-deps_LZMA-SDK_C_CpuArch.c b/security/hashcat/files/patch-deps_LZMA-SDK_C_CpuArch.c deleted file mode 100644 index a788aaec3e8b..000000000000 --- a/security/hashcat/files/patch-deps_LZMA-SDK_C_CpuArch.c +++ /dev/null @@ -1,34 +0,0 @@ ---- deps/LZMA-SDK/C/CpuArch.c.orig 2022-03-25 08:13:08 UTC -+++ deps/LZMA-SDK/C/CpuArch.c -@@ -384,6 +384,23 @@ BoolInt CPU_IsSupported_AES (void) { return APPLE_CRYP -
- #include <sys/auxv.h>
-
-+#if defined(__FreeBSD__)
-+static UInt64 get_hwcap() {
-+ unsigned long hwcap;
-+ if(elf_aux_info(AT_HWCAP, &hwcap, sizeof(unsigned long)) != 0) {
-+ return(0);
-+ }
-+ return hwcap;
-+}
-+
-+BoolInt CPU_IsSupported_CRC32(void) { return get_hwcap() & HWCAP_CRC32; }
-+BoolInt CPU_IsSupported_NEON(void) { return 1; }
-+BoolInt CPU_IsSupported_SHA1(void){ return get_hwcap() & HWCAP_SHA1; }
-+BoolInt CPU_IsSupported_SHA2(void) { return get_hwcap() & HWCAP_SHA2; }
-+BoolInt CPU_IsSupported_AES(void) { return get_hwcap() & HWCAP_AES; }
-+
-+#else // __FreeBSD__
-+
- #define USE_HWCAP
-
- #ifdef USE_HWCAP
-@@ -410,6 +427,7 @@ MY_HWCAP_CHECK_FUNC (SHA1)
- MY_HWCAP_CHECK_FUNC (SHA2)
- MY_HWCAP_CHECK_FUNC (AES)
-
-+#endif // FreeBSD
- #endif // __APPLE__
- #endif // _WIN32
-
diff --git a/security/hashcat/files/patch-include_sort__r.h b/security/hashcat/files/patch-include_sort__r.h deleted file mode 100644 index 3e1d0e0d9d33..000000000000 --- a/security/hashcat/files/patch-include_sort__r.h +++ /dev/null @@ -1,33 +0,0 @@ ---- include/sort_r.h.orig 2022-09-02 14:58:13 UTC -+++ include/sort_r.h -@@ -25,10 +25,10 @@ Slightly modified to work with hashcat to no falsly de - */ - - #if (defined __APPLE__ || defined __MACH__ || defined __DARWIN__ || \ -- defined __FreeBSD__ || defined __DragonFly__ || defined __NetBSD__) -+ (defined __FreeBSD__ && !defined(qsort_r)) || defined __DragonFly__ || defined __NetBSD__) - # define _SORT_R_BSD - # define _SORT_R_INLINE inline --#elif (defined __linux__) || defined (__CYGWIN__) -+#elif (defined __linux__) || defined (__CYGWIN__) || (defined (__FreeBSD__) && defined(qsort_r)) - # define _SORT_R_LINUX - # define _SORT_R_INLINE inline - #elif (defined _WIN32 || defined _WIN64 || defined __WINDOWS__) -@@ -167,7 +167,7 @@ static _SORT_R_INLINE void sort_r_simple(void *base, s - #if defined _SORT_R_LINUX - - typedef int(* __compar_d_fn_t)(const void *, const void *, void *); -- extern void qsort_r(void *base, size_t nel, size_t width, -+ extern void (qsort_r)(void *base, size_t nel, size_t width, - __compar_d_fn_t __compar, void *arg) - __attribute__((nonnull (1, 4))); - -@@ -186,7 +186,7 @@ static _SORT_R_INLINE void sort_r_simple(void *base, s - /* no qsort_r in glibc before 2.8, need to use nested qsort */ - sort_r_simple(base, nel, width, compar, arg); - -- #elif defined __GLIBC__ -+ #elif defined __GLIBC__ || (defined(__FreeBSD__) && defined(qsort_r)) - - qsort_r(base, nel, width, compar, arg); - diff --git a/security/hashcat/files/patch-src_Makefile b/security/hashcat/files/patch-src_Makefile index 6b66a129610e..e728d5dc6d15 100644 --- a/security/hashcat/files/patch-src_Makefile +++ b/security/hashcat/files/patch-src_Makefile @@ -1,7 +1,19 @@ ---- src/Makefile.orig 2022-09-02 14:58:13 UTC +--- src/Makefile.orig 2025-08-23 08:43:56 UTC +++ src/Makefile -@@ -82,7 +82,9 @@ CXX := c++ - ifneq (,$(filter $(UNAME),FreeBSD NetBSD)) +@@ -75,8 +75,9 @@ RM := rm + FIND := find + INSTALL := install + RM := rm +-SED := sed +-SED_IN_PLACE := -i ++CXXLIB := -lc++ ++SED := /usr/bin/sed ++SED_IN_PLACE := -i "" + + ifeq ($(UNAME),Darwin) + CC := clang +@@ -95,7 +96,9 @@ CXX := c++ + ifneq (,$(filter $(UNAME),FreeBSD NetBSD DragonFly)) CC := cc CXX := c++ -SED := gsed @@ -10,17 +22,8 @@ +SED_IN_PLACE := -i "" endif - ## -@@ -213,7 +215,7 @@ ifneq ($(CC),clang) - ifeq ($(ENABLE_UNRAR),1) - ifeq ($(USE_SYSTEM_UNRAR),0) - ifneq ($(CC),clang) --CFLAGS_UNRAR += -Wno-class-memaccess -+#CFLAGS_UNRAR += -Wno-class-memaccess - CFLAGS_UNRAR += -Wno-misleading-indentation - endif - CFLAGS_UNRAR += -Wno-missing-braces -@@ -608,6 +610,11 @@ uninstall: + ifneq (,$(filter $(UNAME),OpenBSD)) +@@ -702,6 +705,11 @@ uninstall: ## native compiled hashcat library and frontend ## @@ -32,7 +35,7 @@ obj/%.NATIVE.o: src/%.c $(CC) -c $(CCFLAGS) $(CFLAGS_NATIVE) $< -o $@ -fpic -@@ -651,10 +658,10 @@ $(HASHCAT_FRONTEND): src/main.c $(HASHCAT_LIBRARY) +@@ -752,10 +760,10 @@ $(HASHCAT_FRONTEND): src/main.c $(HASHCAT_LIBRARY) ifeq ($(SHARED),1) $(HASHCAT_FRONTEND): src/main.c $(HASHCAT_LIBRARY) diff --git a/security/hashcat/files/patch-src_terminal.c b/security/hashcat/files/patch-src_terminal.c deleted file mode 100644 index cf2d5cded207..000000000000 --- a/security/hashcat/files/patch-src_terminal.c +++ /dev/null @@ -1,11 +0,0 @@ ---- src/terminal.c.orig 2022-09-02 14:58:13 UTC -+++ src/terminal.c -@@ -490,7 +490,7 @@ int tty_fix () - } - #endif - --#if defined (__APPLE__) || defined (__FreeBSD__) -+#if defined (__APPLE__) - static struct termios savemodes; - static int havemodes = 0; - diff --git a/security/hashcat/pkg-plist b/security/hashcat/pkg-plist index a8adf7f88253..ca2514147a46 100644 --- a/security/hashcat/pkg-plist +++ b/security/hashcat/pkg-plist @@ -1,4 +1,28 @@ +bin/aescrypt2hashcat.pl +bin/apfs2hashcat.py +bin/bisq2hashcat.py +bin/bitlocker2hashcat.py +bin/bitwarden2hashcat.py +bin/cachedata2hashcat.py +bin/cryptoloop2hashcat.py +bin/exodus2hashcat.py +bin/gitea2hashcat.py bin/hashcat +bin/keybag2hashcat.py +bin/kremlin2hashcat.py +bin/lastpass2hashcat.py +bin/luks2hashcat.py +bin/metamask2hashcat.py +bin/mozilla2hashcat.py +bin/radmin3_to_hashcat.pl +bin/securenotes2hashcat.pl +bin/shiro1-to-hashcat.py +bin/sqlcipher2hashcat.pl +bin/truecrypt2hashcat.py +bin/veeamvbk2hashcat.py +bin/veracrypt2hashcat.py +bin/virtualbox2hashcat.py +bin/vmwarevmx2hashcat.py include/hashcat/affinity.h include/hashcat/autotune.h include/hashcat/backend.h @@ -6,11 +30,13 @@ include/hashcat/benchmark.h include/hashcat/bitmap.h include/hashcat/bitops.h include/hashcat/brain.h +include/hashcat/bridges.h include/hashcat/combinator.h include/hashcat/common.h include/hashcat/convert.h include/hashcat/cpt.h include/hashcat/cpu_crc32.h +include/hashcat/cpu_features.h include/hashcat/debugfile.h include/hashcat/dictstat.h include/hashcat/dispatch.h @@ -43,6 +69,7 @@ include/hashcat/ext_nvml.h include/hashcat/ext_nvrtc.h include/hashcat/ext_sysfs_amdgpu.h include/hashcat/ext_sysfs_cpu.h +include/hashcat/ext_sysfs_intelgpu.h include/hashcat/filehandling.h include/hashcat/folder.h include/hashcat/hashcat.h @@ -182,6 +209,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%PORTDOCS%%%%DOCSDIR%%/charsets/standard/Portuguese/pt_ISO-8859-1.hcchr %%PORTDOCS%%%%DOCSDIR%%/charsets/standard/Portuguese/pt_ISO-8859-15.hcchr %%PORTDOCS%%%%DOCSDIR%%/charsets/standard/Portuguese/pt_cp1252.hcchr +%%PORTDOCS%%%%DOCSDIR%%/charsets/standard/Romanian/ro_ISO-8859-2.hcchr %%PORTDOCS%%%%DOCSDIR%%/charsets/standard/Russian/ru_ISO-8859-5.hcchr %%PORTDOCS%%%%DOCSDIR%%/charsets/standard/Russian/ru_KOI8-R.hcchr %%PORTDOCS%%%%DOCSDIR%%/charsets/standard/Russian/ru_cp1251.hcchr @@ -194,22 +222,36 @@ lib/libhashcat.so.%%PORTVERSION%% %%PORTDOCS%%%%DOCSDIR%%/docs/changes.txt %%PORTDOCS%%%%DOCSDIR%%/docs/contact.txt %%PORTDOCS%%%%DOCSDIR%%/docs/credits.txt +%%PORTDOCS%%%%DOCSDIR%%/docs/device_status_code.txt +%%PORTDOCS%%%%DOCSDIR%%/docs/exit_status_code.txt +%%PORTDOCS%%%%DOCSDIR%%/docs/hashcat-assimilation-bridge-development.md +%%PORTDOCS%%%%DOCSDIR%%/docs/hashcat-assimilation-bridge.md %%PORTDOCS%%%%DOCSDIR%%/docs/hashcat-brain.md +%%PORTDOCS%%%%DOCSDIR%%/docs/hashcat-example-hashes.md +%%PORTDOCS%%%%DOCSDIR%%/docs/hashcat-help.md %%PORTDOCS%%%%DOCSDIR%%/docs/hashcat-plugin-development-guide.md +%%PORTDOCS%%%%DOCSDIR%%/docs/hashcat-python-plugin-development-guide.md +%%PORTDOCS%%%%DOCSDIR%%/docs/hashcat-python-plugin-quickstart.md +%%PORTDOCS%%%%DOCSDIR%%/docs/hashcat-python-plugin-requirements.md +%%PORTDOCS%%%%DOCSDIR%%/docs/hashcat-rust-plugin-requirements.md %%PORTDOCS%%%%DOCSDIR%%/docs/keyboard-layout-mapping.md %%PORTDOCS%%%%DOCSDIR%%/docs/license.txt %%PORTDOCS%%%%DOCSDIR%%/docs/license_libs/LZMA_SDK_LICENSE.txt %%PORTDOCS%%%%DOCSDIR%%/docs/license_libs/MINIZ_LICENSE.txt %%PORTDOCS%%%%DOCSDIR%%/docs/license_libs/OPENCL_HEADERS_LICENSE.txt +%%PORTDOCS%%%%DOCSDIR%%/docs/license_libs/SSE2NEON_LICENSE.txt %%PORTDOCS%%%%DOCSDIR%%/docs/license_libs/UNRAR_LICENSE.txt %%PORTDOCS%%%%DOCSDIR%%/docs/license_libs/XXHASH_LICENSE.txt %%PORTDOCS%%%%DOCSDIR%%/docs/license_libs/ZLIB_LICENSE.txt %%PORTDOCS%%%%DOCSDIR%%/docs/limits.txt %%PORTDOCS%%%%DOCSDIR%%/docs/performance.txt %%PORTDOCS%%%%DOCSDIR%%/docs/readme.txt +%%PORTDOCS%%%%DOCSDIR%%/docs/releases_notes_v7.0.0.md +%%PORTDOCS%%%%DOCSDIR%%/docs/releases_notes_v7.0.0.pdf +%%PORTDOCS%%%%DOCSDIR%%/docs/releases_notes_v7.1.0.md +%%PORTDOCS%%%%DOCSDIR%%/docs/releases_notes_v7.1.0.pdf %%PORTDOCS%%%%DOCSDIR%%/docs/rules.txt %%PORTDOCS%%%%DOCSDIR%%/docs/slow-candidates-mode.md -%%PORTDOCS%%%%DOCSDIR%%/docs/status_codes.txt %%PORTDOCS%%%%DOCSDIR%%/docs/team.txt %%PORTDOCS%%%%DOCSDIR%%/docs/user_manuals.txt %%PORTDOCS%%%%DOCSDIR%%/example.dict @@ -224,6 +266,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%PORTDOCS%%%%DOCSDIR%%/extra/tab_completion/install %%PORTDOCS%%%%DOCSDIR%%/layouts/ch_de.hckmap %%PORTDOCS%%%%DOCSDIR%%/layouts/ch_fr.hckmap +%%PORTDOCS%%%%DOCSDIR%%/layouts/da.hckmap %%PORTDOCS%%%%DOCSDIR%%/layouts/de.hckmap %%PORTDOCS%%%%DOCSDIR%%/layouts/it.hckmap %%PORTDOCS%%%%DOCSDIR%%/layouts/ru.hckmap @@ -249,7 +292,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%PORTDOCS%%%%DOCSDIR%%/rules/T0XlC_3_rule.rule %%PORTDOCS%%%%DOCSDIR%%/rules/T0XlC_insert_HTML_entities_0_Z.rule %%PORTDOCS%%%%DOCSDIR%%/rules/T0XlCv2.rule -%%PORTDOCS%%%%DOCSDIR%%/rules/best64.rule +%%PORTDOCS%%%%DOCSDIR%%/rules/best66.rule %%PORTDOCS%%%%DOCSDIR%%/rules/combinator.rule %%PORTDOCS%%%%DOCSDIR%%/rules/d3ad0ne.rule %%PORTDOCS%%%%DOCSDIR%%/rules/dive.rule @@ -327,38 +370,32 @@ lib/libhashcat.so.%%PORTVERSION%% %%PORTDOCS%%%%DOCSDIR%%/rules/oscommerce.rule %%PORTDOCS%%%%DOCSDIR%%/rules/rockyou-30000.rule %%PORTDOCS%%%%DOCSDIR%%/rules/specific.rule +%%PORTDOCS%%%%DOCSDIR%%/rules/stacking58.rule %%PORTDOCS%%%%DOCSDIR%%/rules/toggles1.rule %%PORTDOCS%%%%DOCSDIR%%/rules/toggles2.rule %%PORTDOCS%%%%DOCSDIR%%/rules/toggles3.rule %%PORTDOCS%%%%DOCSDIR%%/rules/toggles4.rule %%PORTDOCS%%%%DOCSDIR%%/rules/toggles5.rule +%%PORTDOCS%%%%DOCSDIR%%/rules/top10_2025.rule %%PORTDOCS%%%%DOCSDIR%%/rules/unix-ninja-leetspeak.rule -%%PORTDOCS%%%%DOCSDIR%%/tools/aescrypt2hashcat.pl -%%PORTDOCS%%%%DOCSDIR%%/tools/bitwarden2hashcat.py -%%PORTDOCS%%%%DOCSDIR%%/tools/cryptoloop2hashcat.py -%%PORTDOCS%%%%DOCSDIR%%/tools/exodus2hashcat.py -%%PORTDOCS%%%%DOCSDIR%%/tools/luks2hashcat.py -%%PORTDOCS%%%%DOCSDIR%%/tools/metamask2hashcat.py -%%PORTDOCS%%%%DOCSDIR%%/tools/mozilla2hashcat.py -%%PORTDOCS%%%%DOCSDIR%%/tools/radmin3_to_hashcat.pl -%%PORTDOCS%%%%DOCSDIR%%/tools/securenotes2hashcat.pl -%%PORTDOCS%%%%DOCSDIR%%/tools/sqlcipher2hashcat.pl -%%PORTDOCS%%%%DOCSDIR%%/tools/truecrypt2hashcat.py -%%PORTDOCS%%%%DOCSDIR%%/tools/veracrypt2hashcat.py -%%PORTDOCS%%%%DOCSDIR%%/tools/virtualbox2hashcat.py -%%PORTDOCS%%%%DOCSDIR%%/tools/vmwarevmx2hashcat.py %%DATADIR%%/OpenCL/amp_a0.cl %%DATADIR%%/OpenCL/amp_a1.cl %%DATADIR%%/OpenCL/amp_a3.cl %%DATADIR%%/OpenCL/inc_amp.h %%DATADIR%%/OpenCL/inc_bignum_operations.cl %%DATADIR%%/OpenCL/inc_bignum_operations.h +%%DATADIR%%/OpenCL/inc_checksum_crc.cl +%%DATADIR%%/OpenCL/inc_checksum_crc.h %%DATADIR%%/OpenCL/inc_cipher_aes-gcm.cl %%DATADIR%%/OpenCL/inc_cipher_aes-gcm.h %%DATADIR%%/OpenCL/inc_cipher_aes.cl %%DATADIR%%/OpenCL/inc_cipher_aes.h +%%DATADIR%%/OpenCL/inc_cipher_blowfish.cl +%%DATADIR%%/OpenCL/inc_cipher_blowfish.h %%DATADIR%%/OpenCL/inc_cipher_camellia.cl %%DATADIR%%/OpenCL/inc_cipher_camellia.h +%%DATADIR%%/OpenCL/inc_cipher_cast.cl +%%DATADIR%%/OpenCL/inc_cipher_cast.h %%DATADIR%%/OpenCL/inc_cipher_des.cl %%DATADIR%%/OpenCL/inc_cipher_des.h %%DATADIR%%/OpenCL/inc_cipher_kuznyechik.cl @@ -375,6 +412,8 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/inc_comp_multi.h %%DATADIR%%/OpenCL/inc_comp_multi_bs.cl %%DATADIR%%/OpenCL/inc_comp_multi_bs.h +%%DATADIR%%/OpenCL/inc_comp_multi_iba.cl +%%DATADIR%%/OpenCL/inc_comp_multi_iba.h %%DATADIR%%/OpenCL/inc_comp_single.cl %%DATADIR%%/OpenCL/inc_comp_single.h %%DATADIR%%/OpenCL/inc_comp_single_bs.cl @@ -383,16 +422,28 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/inc_diskcryptor_xts.h %%DATADIR%%/OpenCL/inc_ecc_secp256k1.cl %%DATADIR%%/OpenCL/inc_ecc_secp256k1.h +%%DATADIR%%/OpenCL/inc_hash_argon2.cl +%%DATADIR%%/OpenCL/inc_hash_argon2.h %%DATADIR%%/OpenCL/inc_hash_base58.cl %%DATADIR%%/OpenCL/inc_hash_base58.h %%DATADIR%%/OpenCL/inc_hash_blake2b.cl %%DATADIR%%/OpenCL/inc_hash_blake2b.h +%%DATADIR%%/OpenCL/inc_hash_blake2s.cl +%%DATADIR%%/OpenCL/inc_hash_blake2s.h +%%DATADIR%%/OpenCL/inc_hash_gost94.cl +%%DATADIR%%/OpenCL/inc_hash_gost94.h %%DATADIR%%/OpenCL/inc_hash_md4.cl %%DATADIR%%/OpenCL/inc_hash_md4.h %%DATADIR%%/OpenCL/inc_hash_md5.cl %%DATADIR%%/OpenCL/inc_hash_md5.h +%%DATADIR%%/OpenCL/inc_hash_md6.cl +%%DATADIR%%/OpenCL/inc_hash_md6.h %%DATADIR%%/OpenCL/inc_hash_ripemd160.cl %%DATADIR%%/OpenCL/inc_hash_ripemd160.h +%%DATADIR%%/OpenCL/inc_hash_ripemd320.cl +%%DATADIR%%/OpenCL/inc_hash_ripemd320.h +%%DATADIR%%/OpenCL/inc_hash_scrypt.cl +%%DATADIR%%/OpenCL/inc_hash_scrypt.h %%DATADIR%%/OpenCL/inc_hash_sha1.cl %%DATADIR%%/OpenCL/inc_hash_sha1.h %%DATADIR%%/OpenCL/inc_hash_sha224.cl @@ -403,6 +454,8 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/inc_hash_sha384.h %%DATADIR%%/OpenCL/inc_hash_sha512.cl %%DATADIR%%/OpenCL/inc_hash_sha512.h +%%DATADIR%%/OpenCL/inc_hash_sm3.cl +%%DATADIR%%/OpenCL/inc_hash_sm3.h %%DATADIR%%/OpenCL/inc_hash_streebog256.cl %%DATADIR%%/OpenCL/inc_hash_streebog256.h %%DATADIR%%/OpenCL/inc_hash_streebog512.cl @@ -427,6 +480,8 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/inc_radmin3_constants.h %%DATADIR%%/OpenCL/inc_rp.cl %%DATADIR%%/OpenCL/inc_rp.h +%%DATADIR%%/OpenCL/inc_rp_common.cl +%%DATADIR%%/OpenCL/inc_rp_common.h %%DATADIR%%/OpenCL/inc_rp_optimized.cl %%DATADIR%%/OpenCL/inc_rp_optimized.h %%DATADIR%%/OpenCL/inc_scalar.cl @@ -598,6 +653,12 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m01300_a1-pure.cl %%DATADIR%%/OpenCL/m01300_a3-optimized.cl %%DATADIR%%/OpenCL/m01300_a3-pure.cl +%%DATADIR%%/OpenCL/m01310_a0-pure.cl +%%DATADIR%%/OpenCL/m01310_a1-pure.cl +%%DATADIR%%/OpenCL/m01310_a3-pure.cl +%%DATADIR%%/OpenCL/m01320_a0-pure.cl +%%DATADIR%%/OpenCL/m01320_a1-pure.cl +%%DATADIR%%/OpenCL/m01320_a3-pure.cl %%DATADIR%%/OpenCL/m01400_a0-optimized.cl %%DATADIR%%/OpenCL/m01400_a0-pure.cl %%DATADIR%%/OpenCL/m01400_a1-optimized.cl @@ -722,6 +783,12 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m02610_a1-pure.cl %%DATADIR%%/OpenCL/m02610_a3-optimized.cl %%DATADIR%%/OpenCL/m02610_a3-pure.cl +%%DATADIR%%/OpenCL/m02630_a0-optimized.cl +%%DATADIR%%/OpenCL/m02630_a0-pure.cl +%%DATADIR%%/OpenCL/m02630_a1-optimized.cl +%%DATADIR%%/OpenCL/m02630_a1-pure.cl +%%DATADIR%%/OpenCL/m02630_a3-optimized.cl +%%DATADIR%%/OpenCL/m02630_a3-pure.cl %%DATADIR%%/OpenCL/m02710_a0-optimized.cl %%DATADIR%%/OpenCL/m02710_a1-optimized.cl %%DATADIR%%/OpenCL/m02710_a3-optimized.cl @@ -744,12 +811,21 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m03500_a1-pure.cl %%DATADIR%%/OpenCL/m03500_a3-optimized.cl %%DATADIR%%/OpenCL/m03500_a3-pure.cl +%%DATADIR%%/OpenCL/m03610_a0-optimized.cl +%%DATADIR%%/OpenCL/m03610_a0-pure.cl +%%DATADIR%%/OpenCL/m03610_a1-optimized.cl +%%DATADIR%%/OpenCL/m03610_a1-pure.cl +%%DATADIR%%/OpenCL/m03610_a3-optimized.cl +%%DATADIR%%/OpenCL/m03610_a3-pure.cl %%DATADIR%%/OpenCL/m03710_a0-optimized.cl %%DATADIR%%/OpenCL/m03710_a0-pure.cl %%DATADIR%%/OpenCL/m03710_a1-optimized.cl %%DATADIR%%/OpenCL/m03710_a1-pure.cl %%DATADIR%%/OpenCL/m03710_a3-optimized.cl %%DATADIR%%/OpenCL/m03710_a3-pure.cl +%%DATADIR%%/OpenCL/m03730_a0-pure.cl +%%DATADIR%%/OpenCL/m03730_a1-pure.cl +%%DATADIR%%/OpenCL/m03730_a3-pure.cl %%DATADIR%%/OpenCL/m03800_a0-optimized.cl %%DATADIR%%/OpenCL/m03800_a0-pure.cl %%DATADIR%%/OpenCL/m03800_a1-optimized.cl @@ -792,6 +868,18 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m04410_a1-pure.cl %%DATADIR%%/OpenCL/m04410_a3-optimized.cl %%DATADIR%%/OpenCL/m04410_a3-pure.cl +%%DATADIR%%/OpenCL/m04420_a0-optimized.cl +%%DATADIR%%/OpenCL/m04420_a0-pure.cl +%%DATADIR%%/OpenCL/m04420_a1-optimized.cl +%%DATADIR%%/OpenCL/m04420_a1-pure.cl +%%DATADIR%%/OpenCL/m04420_a3-optimized.cl +%%DATADIR%%/OpenCL/m04420_a3-pure.cl +%%DATADIR%%/OpenCL/m04430_a0-optimized.cl +%%DATADIR%%/OpenCL/m04430_a0-pure.cl +%%DATADIR%%/OpenCL/m04430_a1-optimized.cl +%%DATADIR%%/OpenCL/m04430_a1-pure.cl +%%DATADIR%%/OpenCL/m04430_a3-optimized.cl +%%DATADIR%%/OpenCL/m04430_a3-pure.cl %%DATADIR%%/OpenCL/m04500_a0-optimized.cl %%DATADIR%%/OpenCL/m04500_a0-pure.cl %%DATADIR%%/OpenCL/m04500_a1-optimized.cl @@ -871,6 +959,9 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m05600_a1-pure.cl %%DATADIR%%/OpenCL/m05600_a3-optimized.cl %%DATADIR%%/OpenCL/m05600_a3-pure.cl +%%DATADIR%%/OpenCL/m05720_a0-pure.cl +%%DATADIR%%/OpenCL/m05720_a1-pure.cl +%%DATADIR%%/OpenCL/m05720_a3-pure.cl %%DATADIR%%/OpenCL/m05800-optimized.cl %%DATADIR%%/OpenCL/m05800-pure.cl %%DATADIR%%/OpenCL/m06000_a0-optimized.cl @@ -879,6 +970,12 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m06000_a1-pure.cl %%DATADIR%%/OpenCL/m06000_a3-optimized.cl %%DATADIR%%/OpenCL/m06000_a3-pure.cl +%%DATADIR%%/OpenCL/m06050_a0-pure.cl +%%DATADIR%%/OpenCL/m06050_a1-pure.cl +%%DATADIR%%/OpenCL/m06050_a3-pure.cl +%%DATADIR%%/OpenCL/m06060_a0-pure.cl +%%DATADIR%%/OpenCL/m06060_a1-pure.cl +%%DATADIR%%/OpenCL/m06060_a3-pure.cl %%DATADIR%%/OpenCL/m06100_a0-optimized.cl %%DATADIR%%/OpenCL/m06100_a0-pure.cl %%DATADIR%%/OpenCL/m06100_a1-optimized.cl @@ -917,6 +1014,12 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m07300_a1-pure.cl %%DATADIR%%/OpenCL/m07300_a3-optimized.cl %%DATADIR%%/OpenCL/m07300_a3-pure.cl +%%DATADIR%%/OpenCL/m07350_a0-optimized.cl +%%DATADIR%%/OpenCL/m07350_a0-pure.cl +%%DATADIR%%/OpenCL/m07350_a1-optimized.cl +%%DATADIR%%/OpenCL/m07350_a1-pure.cl +%%DATADIR%%/OpenCL/m07350_a3-optimized.cl +%%DATADIR%%/OpenCL/m07350_a3-pure.cl %%DATADIR%%/OpenCL/m07400-optimized.cl %%DATADIR%%/OpenCL/m07400-pure.cl %%DATADIR%%/OpenCL/m07500_a0-optimized.cl @@ -1014,6 +1117,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m10420_a1-optimized.cl %%DATADIR%%/OpenCL/m10420_a3-optimized.cl %%DATADIR%%/OpenCL/m10500-pure.cl +%%DATADIR%%/OpenCL/m10510-pure.cl %%DATADIR%%/OpenCL/m10700-optimized.cl %%DATADIR%%/OpenCL/m10700-pure.cl %%DATADIR%%/OpenCL/m10800_a0-optimized.cl @@ -1076,8 +1180,11 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m11400_a1-pure.cl %%DATADIR%%/OpenCL/m11400_a3-pure.cl %%DATADIR%%/OpenCL/m11500_a0-optimized.cl +%%DATADIR%%/OpenCL/m11500_a0-pure.cl %%DATADIR%%/OpenCL/m11500_a1-optimized.cl +%%DATADIR%%/OpenCL/m11500_a1-pure.cl %%DATADIR%%/OpenCL/m11500_a3-optimized.cl +%%DATADIR%%/OpenCL/m11500_a3-pure.cl %%DATADIR%%/OpenCL/m11600-optimized.cl %%DATADIR%%/OpenCL/m11600-pure.cl %%DATADIR%%/OpenCL/m11700_a0-optimized.cl @@ -1106,6 +1213,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m11860_a3-pure.cl %%DATADIR%%/OpenCL/m11900-pure.cl %%DATADIR%%/OpenCL/m12000-pure.cl +%%DATADIR%%/OpenCL/m12150-pure.cl %%DATADIR%%/OpenCL/m12200-pure.cl %%DATADIR%%/OpenCL/m12300-pure.cl %%DATADIR%%/OpenCL/m12400-pure.cl @@ -1175,6 +1283,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m14100_a0-pure.cl %%DATADIR%%/OpenCL/m14100_a1-pure.cl %%DATADIR%%/OpenCL/m14100_a3-pure.cl +%%DATADIR%%/OpenCL/m14200-pure.cl %%DATADIR%%/OpenCL/m14400_a0-optimized.cl %%DATADIR%%/OpenCL/m14400_a0-pure.cl %%DATADIR%%/OpenCL/m14400_a1-optimized.cl @@ -1301,6 +1410,9 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m16801-pure.cl %%DATADIR%%/OpenCL/m16900-pure.cl %%DATADIR%%/OpenCL/m17010-pure.cl +%%DATADIR%%/OpenCL/m17020-pure.cl +%%DATADIR%%/OpenCL/m17030-pure.cl +%%DATADIR%%/OpenCL/m17040-pure.cl %%DATADIR%%/OpenCL/m17200_a0-pure.cl %%DATADIR%%/OpenCL/m17200_a1-pure.cl %%DATADIR%%/OpenCL/m17200_a3-pure.cl @@ -1392,9 +1504,18 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m20710_a1-pure.cl %%DATADIR%%/OpenCL/m20710_a3-optimized.cl %%DATADIR%%/OpenCL/m20710_a3-pure.cl +%%DATADIR%%/OpenCL/m20712_a0-optimized.cl +%%DATADIR%%/OpenCL/m20712_a0-pure.cl +%%DATADIR%%/OpenCL/m20712_a1-optimized.cl +%%DATADIR%%/OpenCL/m20712_a1-pure.cl +%%DATADIR%%/OpenCL/m20712_a3-optimized.cl +%%DATADIR%%/OpenCL/m20712_a3-pure.cl %%DATADIR%%/OpenCL/m20720_a0-pure.cl %%DATADIR%%/OpenCL/m20720_a1-pure.cl %%DATADIR%%/OpenCL/m20720_a3-pure.cl +%%DATADIR%%/OpenCL/m20730_a0-pure.cl +%%DATADIR%%/OpenCL/m20730_a1-pure.cl +%%DATADIR%%/OpenCL/m20730_a3-pure.cl %%DATADIR%%/OpenCL/m20800_a0-optimized.cl %%DATADIR%%/OpenCL/m20800_a0-pure.cl %%DATADIR%%/OpenCL/m20800_a1-optimized.cl @@ -1428,6 +1549,9 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m21300_a0-pure.cl %%DATADIR%%/OpenCL/m21300_a1-pure.cl %%DATADIR%%/OpenCL/m21300_a3-pure.cl +%%DATADIR%%/OpenCL/m21310_a0-pure.cl +%%DATADIR%%/OpenCL/m21310_a1-pure.cl +%%DATADIR%%/OpenCL/m21310_a3-pure.cl %%DATADIR%%/OpenCL/m21400_a0-optimized.cl %%DATADIR%%/OpenCL/m21400_a0-pure.cl %%DATADIR%%/OpenCL/m21400_a1-optimized.cl @@ -1441,6 +1565,9 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m21600-pure.cl %%DATADIR%%/OpenCL/m21700-pure.cl %%DATADIR%%/OpenCL/m21800-pure.cl +%%DATADIR%%/OpenCL/m21900_a0-pure.cl +%%DATADIR%%/OpenCL/m21900_a1-pure.cl +%%DATADIR%%/OpenCL/m21900_a3-pure.cl %%DATADIR%%/OpenCL/m22000-pure.cl %%DATADIR%%/OpenCL/m22001-pure.cl %%DATADIR%%/OpenCL/m22100-pure.cl @@ -1465,6 +1592,9 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m22500_a3-pure.cl %%DATADIR%%/OpenCL/m22600-pure.cl %%DATADIR%%/OpenCL/m22700-pure.cl +%%DATADIR%%/OpenCL/m22800_a0-pure.cl +%%DATADIR%%/OpenCL/m22800_a1-pure.cl +%%DATADIR%%/OpenCL/m22800_a3-pure.cl %%DATADIR%%/OpenCL/m22911_a0-pure.cl %%DATADIR%%/OpenCL/m22911_a1-pure.cl %%DATADIR%%/OpenCL/m22911_a3-pure.cl @@ -1509,6 +1639,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m23800-optimized.cl %%DATADIR%%/OpenCL/m23800-pure.cl %%DATADIR%%/OpenCL/m23900-pure.cl +%%DATADIR%%/OpenCL/m24000-pure.cl %%DATADIR%%/OpenCL/m24100-pure.cl %%DATADIR%%/OpenCL/m24200-pure.cl %%DATADIR%%/OpenCL/m24300_a0-optimized.cl @@ -1538,6 +1669,9 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m24900_a0-optimized.cl %%DATADIR%%/OpenCL/m24900_a1-optimized.cl %%DATADIR%%/OpenCL/m24900_a3-optimized.cl +%%DATADIR%%/OpenCL/m24901_a0-optimized.cl +%%DATADIR%%/OpenCL/m24901_a1-optimized.cl +%%DATADIR%%/OpenCL/m24901_a3-optimized.cl %%DATADIR%%/OpenCL/m25000-pure.cl %%DATADIR%%/OpenCL/m25100-pure.cl %%DATADIR%%/OpenCL/m25200-pure.cl @@ -1571,6 +1705,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m26403_a3-optimized.cl %%DATADIR%%/OpenCL/m26500-pure.cl %%DATADIR%%/OpenCL/m26600-pure.cl +%%DATADIR%%/OpenCL/m26610-pure.cl %%DATADIR%%/OpenCL/m26700-pure.cl %%DATADIR%%/OpenCL/m26800-pure.cl %%DATADIR%%/OpenCL/m26900-pure.cl @@ -1591,11 +1726,17 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m27800_a1-optimized.cl %%DATADIR%%/OpenCL/m27800_a3-optimized.cl %%DATADIR%%/OpenCL/m27900_a0-optimized.cl +%%DATADIR%%/OpenCL/m27900_a0-pure.cl %%DATADIR%%/OpenCL/m27900_a1-optimized.cl +%%DATADIR%%/OpenCL/m27900_a1-pure.cl %%DATADIR%%/OpenCL/m27900_a3-optimized.cl +%%DATADIR%%/OpenCL/m27900_a3-pure.cl %%DATADIR%%/OpenCL/m28000_a0-optimized.cl +%%DATADIR%%/OpenCL/m28000_a0-pure.cl %%DATADIR%%/OpenCL/m28000_a1-optimized.cl +%%DATADIR%%/OpenCL/m28000_a1-pure.cl %%DATADIR%%/OpenCL/m28000_a3-optimized.cl +%%DATADIR%%/OpenCL/m28000_a3-pure.cl %%DATADIR%%/OpenCL/m28100-pure.cl %%DATADIR%%/OpenCL/m28200-pure.cl %%DATADIR%%/OpenCL/m28300_a0-pure.cl @@ -1634,11 +1775,213 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/OpenCL/m29200_a3-pure.cl %%DATADIR%%/OpenCL/m29600-pure.cl %%DATADIR%%/OpenCL/m29700-pure.cl +%%DATADIR%%/OpenCL/m29910-pure.cl +%%DATADIR%%/OpenCL/m29920-pure.cl +%%DATADIR%%/OpenCL/m29930-pure.cl +%%DATADIR%%/OpenCL/m29940-pure.cl +%%DATADIR%%/OpenCL/m30420_a0-optimized.cl +%%DATADIR%%/OpenCL/m30420_a0-pure.cl +%%DATADIR%%/OpenCL/m30420_a1-optimized.cl +%%DATADIR%%/OpenCL/m30420_a1-pure.cl +%%DATADIR%%/OpenCL/m30420_a3-optimized.cl +%%DATADIR%%/OpenCL/m30420_a3-pure.cl +%%DATADIR%%/OpenCL/m30500_a0-optimized.cl +%%DATADIR%%/OpenCL/m30500_a0-pure.cl +%%DATADIR%%/OpenCL/m30500_a1-optimized.cl +%%DATADIR%%/OpenCL/m30500_a1-pure.cl +%%DATADIR%%/OpenCL/m30500_a3-optimized.cl +%%DATADIR%%/OpenCL/m30500_a3-pure.cl +%%DATADIR%%/OpenCL/m30600-pure.cl +%%DATADIR%%/OpenCL/m30601-pure.cl +%%DATADIR%%/OpenCL/m30700_a0-optimized.cl +%%DATADIR%%/OpenCL/m30700_a0-pure.cl +%%DATADIR%%/OpenCL/m30700_a1-optimized.cl +%%DATADIR%%/OpenCL/m30700_a1-pure.cl +%%DATADIR%%/OpenCL/m30700_a3-optimized.cl +%%DATADIR%%/OpenCL/m30700_a3-pure.cl +%%DATADIR%%/OpenCL/m30901_a0-pure.cl +%%DATADIR%%/OpenCL/m30901_a1-pure.cl +%%DATADIR%%/OpenCL/m30901_a3-pure.cl +%%DATADIR%%/OpenCL/m30902_a0-pure.cl +%%DATADIR%%/OpenCL/m30902_a1-pure.cl +%%DATADIR%%/OpenCL/m30902_a3-pure.cl +%%DATADIR%%/OpenCL/m30905_a0-pure.cl +%%DATADIR%%/OpenCL/m30905_a1-pure.cl +%%DATADIR%%/OpenCL/m30905_a3-pure.cl +%%DATADIR%%/OpenCL/m30906_a0-pure.cl +%%DATADIR%%/OpenCL/m30906_a1-pure.cl +%%DATADIR%%/OpenCL/m30906_a3-pure.cl +%%DATADIR%%/OpenCL/m31000_a0-optimized.cl +%%DATADIR%%/OpenCL/m31000_a0-pure.cl +%%DATADIR%%/OpenCL/m31000_a1-optimized.cl +%%DATADIR%%/OpenCL/m31000_a1-pure.cl +%%DATADIR%%/OpenCL/m31000_a3-optimized.cl +%%DATADIR%%/OpenCL/m31000_a3-pure.cl +%%DATADIR%%/OpenCL/m31100_a0-optimized.cl +%%DATADIR%%/OpenCL/m31100_a0-pure.cl +%%DATADIR%%/OpenCL/m31100_a1-optimized.cl +%%DATADIR%%/OpenCL/m31100_a1-pure.cl +%%DATADIR%%/OpenCL/m31100_a3-optimized.cl +%%DATADIR%%/OpenCL/m31100_a3-pure.cl +%%DATADIR%%/OpenCL/m31200-pure.cl +%%DATADIR%%/OpenCL/m31300_a0-optimized.cl +%%DATADIR%%/OpenCL/m31300_a0-pure.cl +%%DATADIR%%/OpenCL/m31300_a1-optimized.cl +%%DATADIR%%/OpenCL/m31300_a1-pure.cl +%%DATADIR%%/OpenCL/m31300_a3-optimized.cl +%%DATADIR%%/OpenCL/m31300_a3-pure.cl +%%DATADIR%%/OpenCL/m31400_a0-optimized.cl +%%DATADIR%%/OpenCL/m31400_a0-pure.cl +%%DATADIR%%/OpenCL/m31400_a1-optimized.cl +%%DATADIR%%/OpenCL/m31400_a1-pure.cl +%%DATADIR%%/OpenCL/m31400_a3-optimized.cl +%%DATADIR%%/OpenCL/m31400_a3-pure.cl +%%DATADIR%%/OpenCL/m31500-pure.cl +%%DATADIR%%/OpenCL/m31600-pure.cl +%%DATADIR%%/OpenCL/m31700_a0-pure.cl +%%DATADIR%%/OpenCL/m31700_a1-pure.cl +%%DATADIR%%/OpenCL/m31700_a3-pure.cl +%%DATADIR%%/OpenCL/m31800-pure.cl +%%DATADIR%%/OpenCL/m31900-pure.cl +%%DATADIR%%/OpenCL/m32000-pure.cl +%%DATADIR%%/OpenCL/m32010-pure.cl +%%DATADIR%%/OpenCL/m32020-pure.cl +%%DATADIR%%/OpenCL/m32030-pure.cl +%%DATADIR%%/OpenCL/m32040-pure.cl +%%DATADIR%%/OpenCL/m32100-pure.cl +%%DATADIR%%/OpenCL/m32200-pure.cl +%%DATADIR%%/OpenCL/m32300_a0-optimized.cl +%%DATADIR%%/OpenCL/m32300_a0-pure.cl +%%DATADIR%%/OpenCL/m32300_a1-optimized.cl +%%DATADIR%%/OpenCL/m32300_a1-pure.cl +%%DATADIR%%/OpenCL/m32300_a3-optimized.cl +%%DATADIR%%/OpenCL/m32300_a3-pure.cl +%%DATADIR%%/OpenCL/m32410_a0-pure.cl +%%DATADIR%%/OpenCL/m32410_a1-pure.cl +%%DATADIR%%/OpenCL/m32410_a3-pure.cl +%%DATADIR%%/OpenCL/m32420_a0-pure.cl +%%DATADIR%%/OpenCL/m32420_a1-pure.cl +%%DATADIR%%/OpenCL/m32420_a3-pure.cl +%%DATADIR%%/OpenCL/m32500-pure.cl +%%DATADIR%%/OpenCL/m32600_a0-pure.cl +%%DATADIR%%/OpenCL/m32600_a1-pure.cl +%%DATADIR%%/OpenCL/m32600_a3-pure.cl +%%DATADIR%%/OpenCL/m32700-pure.cl +%%DATADIR%%/OpenCL/m32800_a0-optimized.cl +%%DATADIR%%/OpenCL/m32800_a0-pure.cl +%%DATADIR%%/OpenCL/m32800_a1-optimized.cl +%%DATADIR%%/OpenCL/m32800_a1-pure.cl +%%DATADIR%%/OpenCL/m32800_a3-optimized.cl +%%DATADIR%%/OpenCL/m32800_a3-pure.cl +%%DATADIR%%/OpenCL/m32900-pure.cl +%%DATADIR%%/OpenCL/m33000_a0-pure.cl +%%DATADIR%%/OpenCL/m33000_a1-pure.cl +%%DATADIR%%/OpenCL/m33000_a3-pure.cl +%%DATADIR%%/OpenCL/m33100_a0-pure.cl +%%DATADIR%%/OpenCL/m33100_a1-pure.cl +%%DATADIR%%/OpenCL/m33100_a3-pure.cl +%%DATADIR%%/OpenCL/m33300_a0-pure.cl +%%DATADIR%%/OpenCL/m33300_a1-pure.cl +%%DATADIR%%/OpenCL/m33300_a3-pure.cl +%%DATADIR%%/OpenCL/m33400-pure.cl +%%DATADIR%%/OpenCL/m33500_a0-optimized.cl +%%DATADIR%%/OpenCL/m33500_a1-optimized.cl +%%DATADIR%%/OpenCL/m33500_a3-optimized.cl +%%DATADIR%%/OpenCL/m33501_a0-optimized.cl +%%DATADIR%%/OpenCL/m33501_a1-optimized.cl +%%DATADIR%%/OpenCL/m33501_a3-optimized.cl +%%DATADIR%%/OpenCL/m33502_a0-optimized.cl +%%DATADIR%%/OpenCL/m33502_a1-optimized.cl +%%DATADIR%%/OpenCL/m33502_a3-optimized.cl +%%DATADIR%%/OpenCL/m33600_a0-optimized.cl +%%DATADIR%%/OpenCL/m33600_a0-pure.cl +%%DATADIR%%/OpenCL/m33600_a1-optimized.cl +%%DATADIR%%/OpenCL/m33600_a1-pure.cl +%%DATADIR%%/OpenCL/m33600_a3-optimized.cl +%%DATADIR%%/OpenCL/m33600_a3-pure.cl +%%DATADIR%%/OpenCL/m33650_a0-pure.cl +%%DATADIR%%/OpenCL/m33650_a1-pure.cl +%%DATADIR%%/OpenCL/m33650_a3-pure.cl +%%DATADIR%%/OpenCL/m33660_a0-pure.cl +%%DATADIR%%/OpenCL/m33660_a1-pure.cl +%%DATADIR%%/OpenCL/m33660_a3-pure.cl +%%DATADIR%%/OpenCL/m33700-pure.cl +%%DATADIR%%/OpenCL/m33800-pure.cl +%%DATADIR%%/OpenCL/m34000-pure.cl +%%DATADIR%%/OpenCL/m34100-pure.cl +%%DATADIR%%/OpenCL/m34200_a0-optimized.cl +%%DATADIR%%/OpenCL/m34200_a0-pure.cl +%%DATADIR%%/OpenCL/m34200_a1-optimized.cl +%%DATADIR%%/OpenCL/m34200_a1-pure.cl +%%DATADIR%%/OpenCL/m34200_a3-optimized.cl +%%DATADIR%%/OpenCL/m34200_a3-pure.cl +%%DATADIR%%/OpenCL/m34201_a0-optimized.cl +%%DATADIR%%/OpenCL/m34201_a0-pure.cl +%%DATADIR%%/OpenCL/m34201_a1-optimized.cl +%%DATADIR%%/OpenCL/m34201_a1-pure.cl +%%DATADIR%%/OpenCL/m34201_a3-optimized.cl +%%DATADIR%%/OpenCL/m34201_a3-pure.cl +%%DATADIR%%/OpenCL/m34211_a0-optimized.cl +%%DATADIR%%/OpenCL/m34211_a0-pure.cl +%%DATADIR%%/OpenCL/m34211_a1-optimized.cl +%%DATADIR%%/OpenCL/m34211_a1-pure.cl +%%DATADIR%%/OpenCL/m34211_a3-optimized.cl +%%DATADIR%%/OpenCL/m34211_a3-pure.cl +%%DATADIR%%/OpenCL/m34300-pure.cl +%%DATADIR%%/OpenCL/m34400_a0-pure.cl +%%DATADIR%%/OpenCL/m34400_a1-pure.cl +%%DATADIR%%/OpenCL/m34400_a3-pure.cl +%%DATADIR%%/OpenCL/m34500_a0-pure.cl +%%DATADIR%%/OpenCL/m34500_a1-pure.cl +%%DATADIR%%/OpenCL/m34500_a3-pure.cl +%%DATADIR%%/OpenCL/m34600_a0-optimized.cl +%%DATADIR%%/OpenCL/m34600_a1-optimized.cl +%%DATADIR%%/OpenCL/m34600_a3-optimized.cl +%%DATADIR%%/OpenCL/m34700_a0-pure.cl +%%DATADIR%%/OpenCL/m34700_a1-pure.cl +%%DATADIR%%/OpenCL/m34700_a3-pure.cl +%%DATADIR%%/OpenCL/m34800_a0-optimized.cl +%%DATADIR%%/OpenCL/m34800_a0-pure.cl +%%DATADIR%%/OpenCL/m34800_a1-optimized.cl +%%DATADIR%%/OpenCL/m34800_a1-pure.cl +%%DATADIR%%/OpenCL/m34800_a3-optimized.cl +%%DATADIR%%/OpenCL/m34800_a3-pure.cl +%%DATADIR%%/OpenCL/m34810_a0-optimized.cl +%%DATADIR%%/OpenCL/m34810_a0-pure.cl +%%DATADIR%%/OpenCL/m34810_a1-optimized.cl +%%DATADIR%%/OpenCL/m34810_a1-pure.cl +%%DATADIR%%/OpenCL/m34810_a3-optimized.cl +%%DATADIR%%/OpenCL/m34810_a3-pure.cl +%%DATADIR%%/OpenCL/m34820_a0-optimized.cl +%%DATADIR%%/OpenCL/m34820_a0-pure.cl +%%DATADIR%%/OpenCL/m34820_a1-optimized.cl +%%DATADIR%%/OpenCL/m34820_a1-pure.cl +%%DATADIR%%/OpenCL/m34820_a3-optimized.cl +%%DATADIR%%/OpenCL/m34820_a3-pure.cl +%%DATADIR%%/OpenCL/m35000-pure.cl +%%DATADIR%%/OpenCL/m35100-optimized.cl +%%DATADIR%%/OpenCL/m35200_a0-optimized.cl +%%DATADIR%%/OpenCL/m35200_a0-pure.cl +%%DATADIR%%/OpenCL/m35200_a1-optimized.cl +%%DATADIR%%/OpenCL/m35200_a1-pure.cl +%%DATADIR%%/OpenCL/m35200_a3-optimized.cl +%%DATADIR%%/OpenCL/m35200_a3-pure.cl +%%DATADIR%%/OpenCL/m70000-pure.cl +%%DATADIR%%/OpenCL/m70100-pure.cl +%%DATADIR%%/OpenCL/m72000-pure.cl +%%DATADIR%%/OpenCL/m73000-pure.cl %%DATADIR%%/OpenCL/markov_be.cl %%DATADIR%%/OpenCL/markov_le.cl %%DATADIR%%/OpenCL/shared.cl +%%DATADIR%%/bridges/.gitkeep +%%DATADIR%%/bridges/bridge_argon2id_reference.so +%%DATADIR%%/bridges/bridge_python_generic_hash_mp.so +%%DATADIR%%/bridges/bridge_python_generic_hash_sp.so +%%DATADIR%%/bridges/bridge_rust_generic_hash.so +%%DATADIR%%/bridges/bridge_scrypt_jane.so +%%DATADIR%%/bridges/bridge_scrypt_yescrypt.so %%DATADIR%%/hashcat.hcstat2 -%%DATADIR%%/modules/.lock +%%DATADIR%%/modules/.gitkeep %%DATADIR%%/modules/module_00000.so %%DATADIR%%/modules/module_00010.so %%DATADIR%%/modules/module_00011.so @@ -1684,6 +2027,8 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_01000.so %%DATADIR%%/modules/module_01100.so %%DATADIR%%/modules/module_01300.so +%%DATADIR%%/modules/module_01310.so +%%DATADIR%%/modules/module_01320.so %%DATADIR%%/modules/module_01400.so %%DATADIR%%/modules/module_01410.so %%DATADIR%%/modules/module_01411.so @@ -1718,14 +2063,17 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_02600.so %%DATADIR%%/modules/module_02611.so %%DATADIR%%/modules/module_02612.so +%%DATADIR%%/modules/module_02630.so %%DATADIR%%/modules/module_02711.so %%DATADIR%%/modules/module_02811.so %%DATADIR%%/modules/module_03000.so %%DATADIR%%/modules/module_03100.so %%DATADIR%%/modules/module_03200.so %%DATADIR%%/modules/module_03500.so +%%DATADIR%%/modules/module_03610.so %%DATADIR%%/modules/module_03710.so %%DATADIR%%/modules/module_03711.so +%%DATADIR%%/modules/module_03730.so %%DATADIR%%/modules/module_03800.so %%DATADIR%%/modules/module_03910.so %%DATADIR%%/modules/module_04010.so @@ -1733,6 +2081,8 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_04300.so %%DATADIR%%/modules/module_04400.so %%DATADIR%%/modules/module_04410.so +%%DATADIR%%/modules/module_04420.so +%%DATADIR%%/modules/module_04430.so %%DATADIR%%/modules/module_04500.so %%DATADIR%%/modules/module_04510.so %%DATADIR%%/modules/module_04520.so @@ -1751,8 +2101,11 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_05500.so %%DATADIR%%/modules/module_05600.so %%DATADIR%%/modules/module_05700.so +%%DATADIR%%/modules/module_05720.so %%DATADIR%%/modules/module_05800.so %%DATADIR%%/modules/module_06000.so +%%DATADIR%%/modules/module_06050.so +%%DATADIR%%/modules/module_06060.so %%DATADIR%%/modules/module_06100.so %%DATADIR%%/modules/module_06211.so %%DATADIR%%/modules/module_06212.so @@ -1777,6 +2130,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_07100.so %%DATADIR%%/modules/module_07200.so %%DATADIR%%/modules/module_07300.so +%%DATADIR%%/modules/module_07350.so %%DATADIR%%/modules/module_07400.so %%DATADIR%%/modules/module_07401.so %%DATADIR%%/modules/module_07500.so @@ -1791,6 +2145,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_08300.so %%DATADIR%%/modules/module_08400.so %%DATADIR%%/modules/module_08500.so +%%DATADIR%%/modules/module_08501.so %%DATADIR%%/modules/module_08600.so %%DATADIR%%/modules/module_08700.so %%DATADIR%%/modules/module_08800.so @@ -1817,6 +2172,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_10410.so %%DATADIR%%/modules/module_10420.so %%DATADIR%%/modules/module_10500.so +%%DATADIR%%/modules/module_10510.so %%DATADIR%%/modules/module_10600.so %%DATADIR%%/modules/module_10700.so %%DATADIR%%/modules/module_10800.so @@ -1844,6 +2200,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_12000.so %%DATADIR%%/modules/module_12001.so %%DATADIR%%/modules/module_12100.so +%%DATADIR%%/modules/module_12150.so %%DATADIR%%/modules/module_12200.so %%DATADIR%%/modules/module_12300.so %%DATADIR%%/modules/module_12400.so @@ -1887,6 +2244,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_13900.so %%DATADIR%%/modules/module_14000.so %%DATADIR%%/modules/module_14100.so +%%DATADIR%%/modules/module_14200.so %%DATADIR%%/modules/module_14400.so %%DATADIR%%/modules/module_14500.so %%DATADIR%%/modules/module_14600.so @@ -1910,12 +2268,16 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_16300.so %%DATADIR%%/modules/module_16400.so %%DATADIR%%/modules/module_16500.so +%%DATADIR%%/modules/module_16501.so %%DATADIR%%/modules/module_16600.so %%DATADIR%%/modules/module_16700.so %%DATADIR%%/modules/module_16800.so %%DATADIR%%/modules/module_16801.so %%DATADIR%%/modules/module_16900.so %%DATADIR%%/modules/module_17010.so +%%DATADIR%%/modules/module_17020.so +%%DATADIR%%/modules/module_17030.so +%%DATADIR%%/modules/module_17040.so %%DATADIR%%/modules/module_17200.so %%DATADIR%%/modules/module_17210.so %%DATADIR%%/modules/module_17220.so @@ -1941,6 +2303,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_19000.so %%DATADIR%%/modules/module_19100.so %%DATADIR%%/modules/module_19200.so +%%DATADIR%%/modules/module_19210.so %%DATADIR%%/modules/module_19300.so %%DATADIR%%/modules/module_19500.so %%DATADIR%%/modules/module_19600.so @@ -1958,13 +2321,16 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_20600.so %%DATADIR%%/modules/module_20710.so %%DATADIR%%/modules/module_20711.so +%%DATADIR%%/modules/module_20712.so %%DATADIR%%/modules/module_20720.so +%%DATADIR%%/modules/module_20730.so %%DATADIR%%/modules/module_20800.so %%DATADIR%%/modules/module_20900.so %%DATADIR%%/modules/module_21000.so %%DATADIR%%/modules/module_21100.so %%DATADIR%%/modules/module_21200.so %%DATADIR%%/modules/module_21300.so +%%DATADIR%%/modules/module_21310.so %%DATADIR%%/modules/module_21400.so %%DATADIR%%/modules/module_21420.so %%DATADIR%%/modules/module_21500.so @@ -1972,6 +2338,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_21600.so %%DATADIR%%/modules/module_21700.so %%DATADIR%%/modules/module_21800.so +%%DATADIR%%/modules/module_21900.so %%DATADIR%%/modules/module_22000.so %%DATADIR%%/modules/module_22001.so %%DATADIR%%/modules/module_22100.so @@ -1982,6 +2349,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_22500.so %%DATADIR%%/modules/module_22600.so %%DATADIR%%/modules/module_22700.so +%%DATADIR%%/modules/module_22800.so %%DATADIR%%/modules/module_22911.so %%DATADIR%%/modules/module_22921.so %%DATADIR%%/modules/module_22931.so @@ -1999,6 +2367,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_23700.so %%DATADIR%%/modules/module_23800.so %%DATADIR%%/modules/module_23900.so +%%DATADIR%%/modules/module_24000.so %%DATADIR%%/modules/module_24100.so %%DATADIR%%/modules/module_24200.so %%DATADIR%%/modules/module_24300.so @@ -2009,6 +2378,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_24700.so %%DATADIR%%/modules/module_24800.so %%DATADIR%%/modules/module_24900.so +%%DATADIR%%/modules/module_24901.so %%DATADIR%%/modules/module_25000.so %%DATADIR%%/modules/module_25100.so %%DATADIR%%/modules/module_25200.so @@ -2028,6 +2398,7 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_26403.so %%DATADIR%%/modules/module_26500.so %%DATADIR%%/modules/module_26600.so +%%DATADIR%%/modules/module_26610.so %%DATADIR%%/modules/module_26700.so %%DATADIR%%/modules/module_26800.so %%DATADIR%%/modules/module_26900.so @@ -2109,8 +2480,89 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/modules/module_29543.so %%DATADIR%%/modules/module_29600.so %%DATADIR%%/modules/module_29700.so +%%DATADIR%%/modules/module_29800.so +%%DATADIR%%/modules/module_29910.so +%%DATADIR%%/modules/module_29920.so +%%DATADIR%%/modules/module_29930.so +%%DATADIR%%/modules/module_29940.so %%DATADIR%%/modules/module_30000.so %%DATADIR%%/modules/module_30120.so +%%DATADIR%%/modules/module_30420.so +%%DATADIR%%/modules/module_30500.so +%%DATADIR%%/modules/module_30600.so +%%DATADIR%%/modules/module_30601.so +%%DATADIR%%/modules/module_30700.so +%%DATADIR%%/modules/module_30901.so +%%DATADIR%%/modules/module_30902.so +%%DATADIR%%/modules/module_30903.so +%%DATADIR%%/modules/module_30904.so +%%DATADIR%%/modules/module_30905.so +%%DATADIR%%/modules/module_30906.so +%%DATADIR%%/modules/module_31000.so +%%DATADIR%%/modules/module_31100.so +%%DATADIR%%/modules/module_31200.so +%%DATADIR%%/modules/module_31300.so +%%DATADIR%%/modules/module_31400.so +%%DATADIR%%/modules/module_31500.so +%%DATADIR%%/modules/module_31600.so +%%DATADIR%%/modules/module_31700.so +%%DATADIR%%/modules/module_31800.so +%%DATADIR%%/modules/module_31900.so +%%DATADIR%%/modules/module_32000.so +%%DATADIR%%/modules/module_32010.so +%%DATADIR%%/modules/module_32020.so +%%DATADIR%%/modules/module_32030.so +%%DATADIR%%/modules/module_32031.so +%%DATADIR%%/modules/module_32040.so +%%DATADIR%%/modules/module_32041.so +%%DATADIR%%/modules/module_32050.so +%%DATADIR%%/modules/module_32060.so +%%DATADIR%%/modules/module_32070.so +%%DATADIR%%/modules/module_32100.so +%%DATADIR%%/modules/module_32200.so +%%DATADIR%%/modules/module_32300.so +%%DATADIR%%/modules/module_32410.so +%%DATADIR%%/modules/module_32420.so +%%DATADIR%%/modules/module_32500.so +%%DATADIR%%/modules/module_32600.so +%%DATADIR%%/modules/module_32700.so +%%DATADIR%%/modules/module_32800.so +%%DATADIR%%/modules/module_32900.so +%%DATADIR%%/modules/module_33000.so +%%DATADIR%%/modules/module_33100.so +%%DATADIR%%/modules/module_33300.so +%%DATADIR%%/modules/module_33400.so +%%DATADIR%%/modules/module_33500.so +%%DATADIR%%/modules/module_33501.so +%%DATADIR%%/modules/module_33502.so +%%DATADIR%%/modules/module_33600.so +%%DATADIR%%/modules/module_33650.so +%%DATADIR%%/modules/module_33660.so +%%DATADIR%%/modules/module_33700.so +%%DATADIR%%/modules/module_33800.so +%%DATADIR%%/modules/module_33900.so +%%DATADIR%%/modules/module_34000.so +%%DATADIR%%/modules/module_34100.so +%%DATADIR%%/modules/module_34200.so +%%DATADIR%%/modules/module_34201.so +%%DATADIR%%/modules/module_34211.so +%%DATADIR%%/modules/module_34300.so +%%DATADIR%%/modules/module_34400.so +%%DATADIR%%/modules/module_34500.so +%%DATADIR%%/modules/module_34600.so +%%DATADIR%%/modules/module_34700.so +%%DATADIR%%/modules/module_34800.so +%%DATADIR%%/modules/module_34810.so +%%DATADIR%%/modules/module_34820.so +%%DATADIR%%/modules/module_35000.so +%%DATADIR%%/modules/module_35100.so +%%DATADIR%%/modules/module_35200.so +%%DATADIR%%/modules/module_70000.so +%%DATADIR%%/modules/module_70100.so +%%DATADIR%%/modules/module_70200.so +%%DATADIR%%/modules/module_72000.so +%%DATADIR%%/modules/module_73000.so +%%DATADIR%%/modules/module_74000.so %%DATADIR%%/modules/module_99999.so %%DATADIR%%/tunings/Alias.hctune %%DATADIR%%/tunings/Device_GeForce_GTX_TITAN.hctune @@ -2118,8 +2570,10 @@ lib/libhashcat.so.%%PORTVERSION%% %%DATADIR%%/tunings/Module_09300.hctune %%DATADIR%%/tunings/Module_15700.hctune %%DATADIR%%/tunings/Module_22700.hctune +%%DATADIR%%/tunings/Module_24000.hctune %%DATADIR%%/tunings/Module_27700.hctune %%DATADIR%%/tunings/Module_28200.hctune +%%DATADIR%%/tunings/Module_29800.hctune %%DATADIR%%/tunings/Modules_bcrypt.hctune %%DATADIR%%/tunings/Modules_default.hctune %%DATADIR%%/tunings/README.md diff --git a/security/vuxml/vuln/2025.xml b/security/vuxml/vuln/2025.xml index 2009194bf407..d587a9dae0e9 100644 --- a/security/vuxml/vuln/2025.xml +++ b/security/vuxml/vuln/2025.xml @@ -1,3 +1,71 @@ + <vuln vid="d7b7e505-8486-11f0-9d03-2cf05da270f3"> + <topic>Gitlab -- vulnerabilities</topic> + <affects> + <package> + <name>gitlab-ce</name> + <name>gitlab-ee</name> + <range><ge>18.3.0</ge><lt>18.3.1</lt></range> + <range><ge>18.2.0</ge><lt>18.2.5</lt></range> + <range><ge>8.15.0</ge><lt>18.1.5</lt></range> + </package> + </affects> + <description> + <body xmlns="http://www.w3.org/1999/xhtml"> + <p>Gitlab reports:</p> + <blockquote cite="https://about.gitlab.com/releases/2025/08/27/patch-release-gitlab-18-3-1-released/"> + <p>Allocation of Resources Without Limits issue in import function impacts GitLab CE/EE</p> + <p>Missing authentication issue in GraphQL endpoint impacts GitLab CE/EE</p> + <p>Allocation of Resources Without Limits issue in GraphQL impacts GitLab CE/EE</p> + <p>Code injection issue in GitLab repositories impacts GitLab CE/EE</p> + </blockquote> + </body> + </description> + <references> + <cvename>CVE-2025-3601</cvename> + <cvename>CVE-2025-2246</cvename> + <cvename>CVE-2025-4225</cvename> + <cvename>CVE-2025-5101</cvename> + <url>https://about.gitlab.com/releases/2025/08/27/patch-release-gitlab-18-3-1-released/</url> + </references> + <dates> + <discovery>2025-08-27</discovery> + <entry>2025-08-29</entry> + </dates> + </vuln> + + <vuln vid="f727fe60-8389-11f0-8438-001b217e4ee5"> + <topic>ISC KEA -- kea-dhcp4 aborts if client sends a broadcast request with particular options</topic> + <affects> + <package> + <name>kea</name> + <range><ge>3.0.0</ge><lt>3.0.1</lt></range> + </package> + <package> + <name>kea-devel</name> + <range><ge>3.1.0</ge><lt>3.1.1</lt></range> + <range><ge>2.7.1</ge><le>2.7.9</le></range> + </package> + </affects> + <description> + <body xmlns="http://www.w3.org/1999/xhtml"> + <p>Internet Systems Consortium, Inc. reports:</p> + <blockquote cite="https://kb.isc.org/docs/"> + <p>We corrected an issue in `kea-dhcp4` that caused + the server to abort if a client sent a broadcast request with particular + options, and Kea failed to find an appropriate subnet for that client. + This addresses CVE-2025-40779 [#4055, #4048].</p> + </blockquote> + </body> + </description> + <references> + <cvename>CVE-2025-40779</cvename> + </references> + <dates> + <discovery>2025-08-27</discovery> + <entry>2025-08-27</entry> + </dates> + </vuln> + <vuln vid="2a11aa1e-83c7-11f0-b6e5-4ccc6adda413"> <topic>qt6-base -- DoS in QColorTransferGenericFunction</topic> <affects> diff --git a/sysutils/Makefile b/sysutils/Makefile index ce10c9dcb0df..6d3010facc14 100755 --- a/sysutils/Makefile +++ b/sysutils/Makefile @@ -763,6 +763,7 @@ SUBDIR += netevent SUBDIR += nfcutils SUBDIR += ngbuddy + SUBDIR += nitro SUBDIR += nitrogen SUBDIR += nix SUBDIR += nmdaemon diff --git a/sysutils/backrest/Makefile b/sysutils/backrest/Makefile index 1131474364d9..a32d4618d3ed 100644 --- a/sysutils/backrest/Makefile +++ b/sysutils/backrest/Makefile @@ -1,6 +1,6 @@ PORTNAME= backrest DISTVERSIONPREFIX= v -DISTVERSION= 1.9.1 +DISTVERSION= 1.9.2 CATEGORIES= sysutils MASTER_SITES= LOCAL/dtxdf/${PORTNAME}/ DISTFILES= ${PORTNAME}-${DISTVERSIONPREFIX}${DISTVERSION}.frontend${EXTRACT_SUFX} diff --git a/sysutils/backrest/distinfo b/sysutils/backrest/distinfo index 014848e583e4..a36034c35da4 100644 --- a/sysutils/backrest/distinfo +++ b/sysutils/backrest/distinfo @@ -1,7 +1,7 @@ -TIMESTAMP = 1754687606 -SHA256 (go/sysutils_backrest/backrest-v1.9.1/backrest-v1.9.1.frontend.tar.gz) = a98f2a5118a8ae21195810a74d2dd75edfbe2a42b9640a9d5ed0ecee763fe217 -SIZE (go/sysutils_backrest/backrest-v1.9.1/backrest-v1.9.1.frontend.tar.gz) = 3921109 -SHA256 (go/sysutils_backrest/backrest-v1.9.1/v1.9.1.mod) = d54134afa60728e72c45328001a861c4b8c5252da6b8bb15c4719de6857479cc -SIZE (go/sysutils_backrest/backrest-v1.9.1/v1.9.1.mod) = 3643 -SHA256 (go/sysutils_backrest/backrest-v1.9.1/v1.9.1.zip) = d4f21ba819d16e122acfcd3eb321845d85a69972263040f00936c29abcf3d274 -SIZE (go/sysutils_backrest/backrest-v1.9.1/v1.9.1.zip) = 814669 +TIMESTAMP = 1756425760 +SHA256 (go/sysutils_backrest/backrest-v1.9.2/backrest-v1.9.2.frontend.tar.gz) = 4ba2eb8bd3e4e72b29d8d46449fcac8320cfdc721f997974df48fedaf8af4024 +SIZE (go/sysutils_backrest/backrest-v1.9.2/backrest-v1.9.2.frontend.tar.gz) = 3923028 +SHA256 (go/sysutils_backrest/backrest-v1.9.2/v1.9.2.mod) = d54134afa60728e72c45328001a861c4b8c5252da6b8bb15c4719de6857479cc +SIZE (go/sysutils_backrest/backrest-v1.9.2/v1.9.2.mod) = 3643 +SHA256 (go/sysutils_backrest/backrest-v1.9.2/v1.9.2.zip) = e16fc7dc2f0f352f101f9d2cddd299752322113ad1f8b5debddf4b6066c31eda +SIZE (go/sysutils_backrest/backrest-v1.9.2/v1.9.2.zip) = 819691 diff --git a/sysutils/fastfetch/Makefile b/sysutils/fastfetch/Makefile index bbcce2b6af9d..279a75e1172d 100644 --- a/sysutils/fastfetch/Makefile +++ b/sysutils/fastfetch/Makefile @@ -1,5 +1,5 @@ PORTNAME= fastfetch -DISTVERSION= 2.50.2 +DISTVERSION= 2.51.1 CATEGORIES= sysutils MAINTAINER= pkubaj@FreeBSD.org diff --git a/sysutils/fastfetch/distinfo b/sysutils/fastfetch/distinfo index e3b4e9a33c95..aabf7d109053 100644 --- a/sysutils/fastfetch/distinfo +++ b/sysutils/fastfetch/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1755391486 -SHA256 (fastfetch-cli-fastfetch-2.50.2_GH0.tar.gz) = e59f2a2bdd5834ef40adb9fb6680820c268ff60ca0534469c5ea4b86775c83db -SIZE (fastfetch-cli-fastfetch-2.50.2_GH0.tar.gz) = 1349521 +TIMESTAMP = 1756467729 +SHA256 (fastfetch-cli-fastfetch-2.51.1_GH0.tar.gz) = 38755082ff0f7123616b98de5f032de76d0cc5837b5204cf5c88ee6c52a77bf6 +SIZE (fastfetch-cli-fastfetch-2.51.1_GH0.tar.gz) = 1361743 diff --git a/sysutils/kassiber/Makefile b/sysutils/kassiber/Makefile index fb88788fcf60..9e968019d444 100644 --- a/sysutils/kassiber/Makefile +++ b/sysutils/kassiber/Makefile @@ -1,12 +1,13 @@ PORTNAME= kassiber DISTVERSIONPREFIX= v -DISTVERSION= 0.0.2 +DISTVERSION= 0.0.3 CATEGORIES= sysutils MAINTAINER= fuz@FreeBSD.org COMMENT= Smuggle programs into jails LICENSE= BSD2CLAUSE +LICENSE_FILE= ${WRKSRC}/LICENSE.txt USES= uidfix USE_GITHUB= yes diff --git a/sysutils/kassiber/distinfo b/sysutils/kassiber/distinfo index 666ac10c2681..71b9a41d888f 100644 --- a/sysutils/kassiber/distinfo +++ b/sysutils/kassiber/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1752687787 -SHA256 (crest-kassiber-v0.0.2_GH0.tar.gz) = f8b990c797f9f7360187da0210ba1eadc0856f30e4c9ecb622861e57c2512735 -SIZE (crest-kassiber-v0.0.2_GH0.tar.gz) = 9799 +TIMESTAMP = 1756249184 +SHA256 (crest-kassiber-v0.0.3_GH0.tar.gz) = 89aa3237b3787270b2d4d32d731c1503b10ca4f56d9ad073979c21f240dbbeff +SIZE (crest-kassiber-v0.0.3_GH0.tar.gz) = 10644 diff --git a/sysutils/kassiber/files/patch-main.c b/sysutils/kassiber/files/patch-main.c deleted file mode 100644 index 3a6e598e28ff..000000000000 --- a/sysutils/kassiber/files/patch-main.c +++ /dev/null @@ -1,14 +0,0 @@ ---- main.c.orig 2025-07-30 19:54:07 UTC -+++ main.c -@@ -302,7 +302,11 @@ openat_retry(const int dfd, const char *const path, in - if (fd >= 0 || errno != EINTR) { - return fd; - } else { -+#ifdef __powerpc__ -+ return openat_retry(dfd, path, flags, mode); -+#else - __attribute__((musttail)) return openat_retry(dfd, path, flags, mode); -+#endif - } - } - diff --git a/sysutils/limine/Makefile b/sysutils/limine/Makefile index c50b871addaf..a529c8522663 100644 --- a/sysutils/limine/Makefile +++ b/sysutils/limine/Makefile @@ -1,5 +1,5 @@ PORTNAME= limine -DISTVERSION= 9.6.0 +DISTVERSION= 9.6.1 CATEGORIES= sysutils MASTER_SITES= https://github.com/${PORTNAME}-bootloader/${PORTNAME}/releases/download/v${DISTVERSION}/ diff --git a/sysutils/limine/distinfo b/sysutils/limine/distinfo index a0212647d3a5..e519cfad1ebf 100644 --- a/sysutils/limine/distinfo +++ b/sysutils/limine/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1754718382 -SHA256 (limine-9.6.0.tar.gz) = 715f9b2d507cc06553e2127e5a45da41034bcd66a86663176b5a993da1990271 -SIZE (limine-9.6.0.tar.gz) = 572260 +TIMESTAMP = 1756427095 +SHA256 (limine-9.6.1.tar.gz) = fc601e671d9286d0be568a8d3bf481f07e242cb81d2c073f440195c45e8899b7 +SIZE (limine-9.6.1.tar.gz) = 580752 diff --git a/sysutils/nitro/Makefile b/sysutils/nitro/Makefile new file mode 100644 index 000000000000..23f5ff369347 --- /dev/null +++ b/sysutils/nitro/Makefile @@ -0,0 +1,19 @@ +PORTNAME= nitro +PORTVERSION= 0.2 +CATEGORIES= sysutils +MASTER_SITES= https://git.vuxu.org/nitro/snapshot/ + +MAINTAINER= jsmith@resonatingmedia.com +COMMENT= Minimal init implementation and process supervisor +WWW= https://git.vuxu.org/nitro/about/ + +LICENSE= ISCL +LICENSE_FILE= ${WRKDIR}/${PORTNAME}-${PORTVERSION}/LICENSE + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/nitro ${STAGEDIR}${PREFIX}/bin/nitro + ${INSTALL_PROGRAM} ${WRKSRC}/nitroctl ${STAGEDIR}${PREFIX}/bin/nitroctl + ${INSTALL_MAN} ${WRKSRC}/nitro.8 ${STAGEDIR}${PREFIX}/share/man/man8/ + ${INSTALL_MAN} ${WRKSRC}/nitroctl.1 ${STAGEDIR}${PREFIX}/share/man/man1/ + +.include <bsd.port.mk> diff --git a/sysutils/nitro/distinfo b/sysutils/nitro/distinfo new file mode 100644 index 000000000000..70f6a840134c --- /dev/null +++ b/sysutils/nitro/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1756212916 +SHA256 (nitro-0.2.tar.gz) = 9086861971ff95fcd53eaac9acea3ea8d90fdef7b8a8026fecfb63e2c209a87e +SIZE (nitro-0.2.tar.gz) = 19137 diff --git a/sysutils/nitro/pkg-descr b/sysutils/nitro/pkg-descr new file mode 100644 index 000000000000..d6695ea61e35 --- /dev/null +++ b/sysutils/nitro/pkg-descr @@ -0,0 +1,6 @@ +Nitro is a tiny process supervisor that also can be used as PID 1 on +Unix-like systems. + +It can run as an unprivileged supervision daemon on POSIX systems. +Nitro is configured by a directory of scripts, defaulting to /etc/nitro +or the first command line argument. diff --git a/sysutils/nitro/pkg-plist b/sysutils/nitro/pkg-plist new file mode 100644 index 000000000000..35ec49e38f32 --- /dev/null +++ b/sysutils/nitro/pkg-plist @@ -0,0 +1,4 @@ +bin/nitro +bin/nitroctl +share/man/man8/nitro.8.gz +share/man/man1/nitroctl.1.gz diff --git a/sysutils/py-healthchecks/Makefile b/sysutils/py-healthchecks/Makefile index 04f881daa09c..dc1371790a93 100644 --- a/sysutils/py-healthchecks/Makefile +++ b/sysutils/py-healthchecks/Makefile @@ -1,6 +1,6 @@ PORTNAME= healthchecks DISTVERSIONPREFIX= v -DISTVERSION= 3.10 +DISTVERSION= 3.11 CATEGORIES= sysutils python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/sysutils/py-healthchecks/distinfo b/sysutils/py-healthchecks/distinfo index ab854ba59b73..14a3b585457c 100644 --- a/sysutils/py-healthchecks/distinfo +++ b/sysutils/py-healthchecks/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1749595062 -SHA256 (healthchecks-healthchecks-v3.10_GH0.tar.gz) = 81fcc6577771ba966e45e35976f084419e1637b3f595e42d91556054a7a1b6d6 -SIZE (healthchecks-healthchecks-v3.10_GH0.tar.gz) = 4868195 +TIMESTAMP = 1756493028 +SHA256 (healthchecks-healthchecks-v3.11_GH0.tar.gz) = bd0249067128d2b1be0a9d528c9bb536573ec51f4de98105c50369c49b3e840e +SIZE (healthchecks-healthchecks-v3.11_GH0.tar.gz) = 5153184 diff --git a/sysutils/py-healthchecks/files/patch-hc_lib_webauthn.py b/sysutils/py-healthchecks/files/patch-hc_lib_webauthn.py deleted file mode 100644 index 24494bdf19db..000000000000 --- a/sysutils/py-healthchecks/files/patch-hc_lib_webauthn.py +++ /dev/null @@ -1,11 +0,0 @@ ---- hc/lib/webauthn.py.orig 2025-06-11 05:51:38 UTC -+++ hc/lib/webauthn.py -@@ -14,8 +14,6 @@ from fido2.webauthn import ( - UserVerificationRequirement, - ) - --fido2.features.webauthn_json_mapping.enabled = True -- - - class CreateHelper: - def __init__(self, rp_id: str, credentials: Iterable[bytes]): diff --git a/sysutils/py-healthchecks/pkg-plist b/sysutils/py-healthchecks/pkg-plist index 8cf35605944b..f6a6f063afa9 100644 --- a/sysutils/py-healthchecks/pkg-plist +++ b/sysutils/py-healthchecks/pkg-plist @@ -491,6 +491,7 @@ bin/hcks %%HOMEDIR%%/hc/api/tests/__init__.py %%HOMEDIR%%/hc/api/tests/__pycache__/__init__%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/api/tests/__pycache__/test_admin%%PYTHON_TAG%%.opt-1.pyc +%%HOMEDIR%%/hc/api/tests/__pycache__/test_auth%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/api/tests/__pycache__/test_badge%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/api/tests/__pycache__/test_bounces%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/api/tests/__pycache__/test_channel_model%%PYTHON_TAG%%.opt-1.pyc @@ -515,6 +516,7 @@ bin/hcks %%HOMEDIR%%/hc/api/tests/__pycache__/test_notify_discord%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/api/tests/__pycache__/test_notify_email%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/api/tests/__pycache__/test_notify_github%%PYTHON_TAG%%.opt-1.pyc +%%HOMEDIR%%/hc/api/tests/__pycache__/test_notify_googlechat%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/api/tests/__pycache__/test_notify_gotify%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/api/tests/__pycache__/test_notify_group%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/api/tests/__pycache__/test_notify_matrix%%PYTHON_TAG%%.opt-1.pyc @@ -551,6 +553,7 @@ bin/hcks %%HOMEDIR%%/hc/api/tests/__pycache__/test_tokenbucket%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/api/tests/__pycache__/test_update_check%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/api/tests/test_admin.py +%%HOMEDIR%%/hc/api/tests/test_auth.py %%HOMEDIR%%/hc/api/tests/test_badge.py %%HOMEDIR%%/hc/api/tests/test_bounces.py %%HOMEDIR%%/hc/api/tests/test_channel_model.py @@ -575,6 +578,7 @@ bin/hcks %%HOMEDIR%%/hc/api/tests/test_notify_discord.py %%HOMEDIR%%/hc/api/tests/test_notify_email.py %%HOMEDIR%%/hc/api/tests/test_notify_github.py +%%HOMEDIR%%/hc/api/tests/test_notify_googlechat.py %%HOMEDIR%%/hc/api/tests/test_notify_gotify.py %%HOMEDIR%%/hc/api/tests/test_notify_group.py %%HOMEDIR%%/hc/api/tests/test_notify_matrix.py @@ -663,6 +667,7 @@ bin/hcks %%HOMEDIR%%/hc/front/tests/__pycache__/test_add_github%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/front/tests/__pycache__/test_add_github_save%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/front/tests/__pycache__/test_add_github_select%%PYTHON_TAG%%.opt-1.pyc +%%HOMEDIR%%/hc/front/tests/__pycache__/test_add_googlechat%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/front/tests/__pycache__/test_add_gotify%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/front/tests/__pycache__/test_add_group%%PYTHON_TAG%%.opt-1.pyc %%HOMEDIR%%/hc/front/tests/__pycache__/test_add_matrix%%PYTHON_TAG%%.opt-1.pyc @@ -755,6 +760,7 @@ bin/hcks %%HOMEDIR%%/hc/front/tests/test_add_github.py %%HOMEDIR%%/hc/front/tests/test_add_github_save.py %%HOMEDIR%%/hc/front/tests/test_add_github_select.py +%%HOMEDIR%%/hc/front/tests/test_add_googlechat.py %%HOMEDIR%%/hc/front/tests/test_add_gotify.py %%HOMEDIR%%/hc/front/tests/test_add_group.py %%HOMEDIR%%/hc/front/tests/test_add_matrix.py @@ -989,16 +995,20 @@ bin/hcks %%HOMEDIR%%/static-collected/CACHE/css/output.4118f003b752.css.gz %%HOMEDIR%%/static-collected/CACHE/css/output.48b942e160d8.css %%HOMEDIR%%/static-collected/CACHE/css/output.48b942e160d8.css.gz +%%HOMEDIR%%/static-collected/CACHE/css/output.4f48555496c9.css +%%HOMEDIR%%/static-collected/CACHE/css/output.4f48555496c9.css.gz %%HOMEDIR%%/static-collected/CACHE/css/output.537f18b6ba12.css %%HOMEDIR%%/static-collected/CACHE/css/output.537f18b6ba12.css.gz -%%HOMEDIR%%/static-collected/CACHE/css/output.591dec56fbd3.css -%%HOMEDIR%%/static-collected/CACHE/css/output.591dec56fbd3.css.gz +%%HOMEDIR%%/static-collected/CACHE/css/output.5b5be2f67d28.css +%%HOMEDIR%%/static-collected/CACHE/css/output.5b5be2f67d28.css.gz %%HOMEDIR%%/static-collected/CACHE/css/output.5b9a3186b65a.css %%HOMEDIR%%/static-collected/CACHE/css/output.5b9a3186b65a.css.gz %%HOMEDIR%%/static-collected/CACHE/css/output.61b1757619db.css %%HOMEDIR%%/static-collected/CACHE/css/output.61b1757619db.css.gz %%HOMEDIR%%/static-collected/CACHE/css/output.651292eaad87.css %%HOMEDIR%%/static-collected/CACHE/css/output.651292eaad87.css.gz +%%HOMEDIR%%/static-collected/CACHE/css/output.67ce9cb7a3a5.css +%%HOMEDIR%%/static-collected/CACHE/css/output.67ce9cb7a3a5.css.gz %%HOMEDIR%%/static-collected/CACHE/css/output.7349cc459c54.css %%HOMEDIR%%/static-collected/CACHE/css/output.7349cc459c54.css.gz %%HOMEDIR%%/static-collected/CACHE/css/output.79bc4ba389df.css @@ -1021,8 +1031,6 @@ bin/hcks %%HOMEDIR%%/static-collected/CACHE/css/output.a28ec659c3ea.css.gz %%HOMEDIR%%/static-collected/CACHE/css/output.a2931392e224.css %%HOMEDIR%%/static-collected/CACHE/css/output.a2931392e224.css.gz -%%HOMEDIR%%/static-collected/CACHE/css/output.afdd0d9e2c60.css -%%HOMEDIR%%/static-collected/CACHE/css/output.afdd0d9e2c60.css.gz %%HOMEDIR%%/static-collected/CACHE/css/output.b5314e6471ce.css %%HOMEDIR%%/static-collected/CACHE/css/output.b5314e6471ce.css.gz %%HOMEDIR%%/static-collected/CACHE/css/output.ba3a60f23b9a.css @@ -1041,8 +1049,6 @@ bin/hcks %%HOMEDIR%%/static-collected/CACHE/css/output.e3f0c67e857e.css.gz %%HOMEDIR%%/static-collected/CACHE/css/output.eebd23618fe6.css %%HOMEDIR%%/static-collected/CACHE/css/output.eebd23618fe6.css.gz -%%HOMEDIR%%/static-collected/CACHE/css/output.f6cc102e1861.css -%%HOMEDIR%%/static-collected/CACHE/css/output.f6cc102e1861.css.gz %%HOMEDIR%%/static-collected/CACHE/css/output.fdf9c458f5a6.css %%HOMEDIR%%/static-collected/CACHE/css/output.fdf9c458f5a6.css.gz %%HOMEDIR%%/static-collected/CACHE/js/output.02b19c497817.js @@ -1055,14 +1061,14 @@ bin/hcks %%HOMEDIR%%/static-collected/CACHE/js/output.097d8334f506.js.gz %%HOMEDIR%%/static-collected/CACHE/js/output.0e0937a580b2.js %%HOMEDIR%%/static-collected/CACHE/js/output.0e0937a580b2.js.gz +%%HOMEDIR%%/static-collected/CACHE/js/output.113a1ef56da7.js +%%HOMEDIR%%/static-collected/CACHE/js/output.113a1ef56da7.js.gz %%HOMEDIR%%/static-collected/CACHE/js/output.18f4718d4ce3.js %%HOMEDIR%%/static-collected/CACHE/js/output.18f4718d4ce3.js.gz %%HOMEDIR%%/static-collected/CACHE/js/output.26c3b45ec11c.js %%HOMEDIR%%/static-collected/CACHE/js/output.26c3b45ec11c.js.gz %%HOMEDIR%%/static-collected/CACHE/js/output.29ce58ce5705.js %%HOMEDIR%%/static-collected/CACHE/js/output.29ce58ce5705.js.gz -%%HOMEDIR%%/static-collected/CACHE/js/output.30713209972b.js -%%HOMEDIR%%/static-collected/CACHE/js/output.30713209972b.js.gz %%HOMEDIR%%/static-collected/CACHE/js/output.407d637b1928.js %%HOMEDIR%%/static-collected/CACHE/js/output.407d637b1928.js.gz %%HOMEDIR%%/static-collected/CACHE/js/output.430be6dfa998.js @@ -1083,8 +1089,6 @@ bin/hcks %%HOMEDIR%%/static-collected/CACHE/js/output.7505ee85b4a8.js.gz %%HOMEDIR%%/static-collected/CACHE/js/output.866b0bf6a99c.js %%HOMEDIR%%/static-collected/CACHE/js/output.866b0bf6a99c.js.gz -%%HOMEDIR%%/static-collected/CACHE/js/output.8745e5647b67.js -%%HOMEDIR%%/static-collected/CACHE/js/output.8745e5647b67.js.gz %%HOMEDIR%%/static-collected/CACHE/js/output.903693c65e2f.js %%HOMEDIR%%/static-collected/CACHE/js/output.903693c65e2f.js.gz %%HOMEDIR%%/static-collected/CACHE/js/output.90b827a4394a.js @@ -1127,6 +1131,8 @@ bin/hcks %%HOMEDIR%%/static-collected/CACHE/js/output.eff9e36f847f.js.gz %%HOMEDIR%%/static-collected/CACHE/js/output.f95b393f8094.js %%HOMEDIR%%/static-collected/CACHE/js/output.f95b393f8094.js.gz +%%HOMEDIR%%/static-collected/CACHE/js/output.fad6571c4af0.js +%%HOMEDIR%%/static-collected/CACHE/js/output.fad6571c4af0.js.gz %%HOMEDIR%%/static-collected/CACHE/manifest.json %%HOMEDIR%%/static-collected/admin/css/autocomplete.css %%HOMEDIR%%/static-collected/admin/css/base.css @@ -1314,10 +1320,15 @@ bin/hcks %%HOMEDIR%%/static-collected/img/docs/badges.png %%HOMEDIR%%/static-collected/img/docs/checks_durations.png %%HOMEDIR%%/static-collected/img/docs/checks_integrations.png +%%HOMEDIR%%/static-collected/img/docs/checks_integrations.webm +%%HOMEDIR%%/static-collected/img/docs/checks_uuid_slug_selector.png %%HOMEDIR%%/static-collected/img/docs/create_copy.png %%HOMEDIR%%/static-collected/img/docs/ddwrt.png %%HOMEDIR%%/static-collected/img/docs/details_durations.png %%HOMEDIR%%/static-collected/img/docs/details_integrations.png +%%HOMEDIR%%/static-collected/img/docs/details_integrations.webm +%%HOMEDIR%%/static-collected/img/docs/details_uuid_slug_selector.png +%%HOMEDIR%%/static-collected/img/docs/duplicate_slugs.png %%HOMEDIR%%/static-collected/img/docs/edit_cron_schedule.png %%HOMEDIR%%/static-collected/img/docs/edit_name.png %%HOMEDIR%%/static-collected/img/docs/edit_oncalendar_schedule.png @@ -1328,8 +1339,9 @@ bin/hcks %%HOMEDIR%%/static-collected/img/docs/filtering_rules.png %%HOMEDIR%%/static-collected/img/docs/monthly_report.png %%HOMEDIR%%/static-collected/img/docs/ping_details.png +%%HOMEDIR%%/static-collected/img/docs/project_settings_ping_key.png %%HOMEDIR%%/static-collected/img/docs/projects.png -%%HOMEDIR%%/static-collected/img/docs/prometheus_endpoint.png +%%HOMEDIR%%/static-collected/img/docs/prometheus_api_keys.png %%HOMEDIR%%/static-collected/img/docs/routeros1.png %%HOMEDIR%%/static-collected/img/docs/routeros2.png %%HOMEDIR%%/static-collected/img/docs/run_ids.png @@ -1348,6 +1360,7 @@ bin/hcks %%HOMEDIR%%/static-collected/img/integrations/email.png %%HOMEDIR%%/static-collected/img/integrations/github-white.png %%HOMEDIR%%/static-collected/img/integrations/github.png +%%HOMEDIR%%/static-collected/img/integrations/googlechat.png %%HOMEDIR%%/static-collected/img/integrations/gotify.png %%HOMEDIR%%/static-collected/img/integrations/group.png %%HOMEDIR%%/static-collected/img/integrations/linenotify.png @@ -1365,6 +1378,10 @@ bin/hcks %%HOMEDIR%%/static-collected/img/integrations/prometheus.png %%HOMEDIR%%/static-collected/img/integrations/pushbullet.png %%HOMEDIR%%/static-collected/img/integrations/rocketchat.png +%%HOMEDIR%%/static-collected/img/integrations/setup_googlechat_1.png +%%HOMEDIR%%/static-collected/img/integrations/setup_googlechat_2.png +%%HOMEDIR%%/static-collected/img/integrations/setup_googlechat_3.png +%%HOMEDIR%%/static-collected/img/integrations/setup_googlechat_4.png %%HOMEDIR%%/static-collected/img/integrations/setup_gotify_1.png %%HOMEDIR%%/static-collected/img/integrations/setup_gotify_2.png %%HOMEDIR%%/static-collected/img/integrations/setup_matrix_1.png @@ -1543,10 +1560,15 @@ bin/hcks %%HOMEDIR%%/static/img/docs/badges.png %%HOMEDIR%%/static/img/docs/checks_durations.png %%HOMEDIR%%/static/img/docs/checks_integrations.png +%%HOMEDIR%%/static/img/docs/checks_integrations.webm +%%HOMEDIR%%/static/img/docs/checks_uuid_slug_selector.png %%HOMEDIR%%/static/img/docs/create_copy.png %%HOMEDIR%%/static/img/docs/ddwrt.png %%HOMEDIR%%/static/img/docs/details_durations.png %%HOMEDIR%%/static/img/docs/details_integrations.png +%%HOMEDIR%%/static/img/docs/details_integrations.webm +%%HOMEDIR%%/static/img/docs/details_uuid_slug_selector.png +%%HOMEDIR%%/static/img/docs/duplicate_slugs.png %%HOMEDIR%%/static/img/docs/edit_cron_schedule.png %%HOMEDIR%%/static/img/docs/edit_name.png %%HOMEDIR%%/static/img/docs/edit_oncalendar_schedule.png @@ -1557,8 +1579,9 @@ bin/hcks %%HOMEDIR%%/static/img/docs/filtering_rules.png %%HOMEDIR%%/static/img/docs/monthly_report.png %%HOMEDIR%%/static/img/docs/ping_details.png +%%HOMEDIR%%/static/img/docs/project_settings_ping_key.png %%HOMEDIR%%/static/img/docs/projects.png -%%HOMEDIR%%/static/img/docs/prometheus_endpoint.png +%%HOMEDIR%%/static/img/docs/prometheus_api_keys.png %%HOMEDIR%%/static/img/docs/routeros1.png %%HOMEDIR%%/static/img/docs/routeros2.png %%HOMEDIR%%/static/img/docs/run_ids.png @@ -1577,6 +1600,7 @@ bin/hcks %%HOMEDIR%%/static/img/integrations/email.png %%HOMEDIR%%/static/img/integrations/github-white.png %%HOMEDIR%%/static/img/integrations/github.png +%%HOMEDIR%%/static/img/integrations/googlechat.png %%HOMEDIR%%/static/img/integrations/gotify.png %%HOMEDIR%%/static/img/integrations/group.png %%HOMEDIR%%/static/img/integrations/linenotify.png @@ -1594,6 +1618,10 @@ bin/hcks %%HOMEDIR%%/static/img/integrations/prometheus.png %%HOMEDIR%%/static/img/integrations/pushbullet.png %%HOMEDIR%%/static/img/integrations/rocketchat.png +%%HOMEDIR%%/static/img/integrations/setup_googlechat_1.png +%%HOMEDIR%%/static/img/integrations/setup_googlechat_2.png +%%HOMEDIR%%/static/img/integrations/setup_googlechat_3.png +%%HOMEDIR%%/static/img/integrations/setup_googlechat_4.png %%HOMEDIR%%/static/img/integrations/setup_gotify_1.png %%HOMEDIR%%/static/img/integrations/setup_gotify_2.png %%HOMEDIR%%/static/img/integrations/setup_matrix_1.png @@ -1813,6 +1841,8 @@ bin/hcks %%HOMEDIR%%/templates/docs/self_hosted_docker.md %%HOMEDIR%%/templates/docs/signaling_failures.html-fragment %%HOMEDIR%%/templates/docs/signaling_failures.md +%%HOMEDIR%%/templates/docs/slug_urls.html-fragment +%%HOMEDIR%%/templates/docs/slug_urls.md %%HOMEDIR%%/templates/emails/alert-body-html.html %%HOMEDIR%%/templates/emails/alert-body-text.html %%HOMEDIR%%/templates/emails/alert-subject.html @@ -1931,6 +1961,7 @@ bin/hcks %%HOMEDIR%%/templates/integrations/add_discord.html %%HOMEDIR%%/templates/integrations/add_github.html %%HOMEDIR%%/templates/integrations/add_github_form.html +%%HOMEDIR%%/templates/integrations/add_googlechat.html %%HOMEDIR%%/templates/integrations/add_gotify.html %%HOMEDIR%%/templates/integrations/add_matrix.html %%HOMEDIR%%/templates/integrations/add_mattermost.html diff --git a/textproc/Makefile b/textproc/Makefile index 9f9508f45f72..8844023e0091 100644 --- a/textproc/Makefile +++ b/textproc/Makefile @@ -1228,6 +1228,7 @@ SUBDIR += pdfresurrect SUBDIR += pdfsandwich SUBDIR += pdftohtml + SUBDIR += pdjson SUBDIR += pear-File_Fortune SUBDIR += pear-File_MARC SUBDIR += pear-Horde_CssMinify diff --git a/textproc/feluda/Makefile b/textproc/feluda/Makefile index 040221e33799..aeb0da5aeddf 100644 --- a/textproc/feluda/Makefile +++ b/textproc/feluda/Makefile @@ -1,5 +1,6 @@ PORTNAME= feluda -DISTVERSION= 1.9.7 +DISTVERSIONPREFIX= v +DISTVERSION= 1.9.8 # Cargo.lock patched: `make patch cargo-crates` CATEGORIES= textproc MAINTAINER= nxjoseph@protonmail.com @@ -16,6 +17,10 @@ USES= cargo localbase ssl USE_GITHUB= yes GH_ACCOUNT= anistark +# OPENSSL_NO_VENDOR needs openssl-src present so I'm using Cargo.lock and Cargo.toml patches: +# first to not fetch openssl-src tarball and later to remove git2 ossl vendored feature. +CARGO_ENV= OPENSSL_NO_VENDOR=1 + PLIST_FILES= bin/${PORTNAME} .include <bsd.port.mk> diff --git a/textproc/feluda/Makefile.crates b/textproc/feluda/Makefile.crates index 899b301d1e96..7c0069c4fbe7 100644 --- a/textproc/feluda/Makefile.crates +++ b/textproc/feluda/Makefile.crates @@ -39,7 +39,6 @@ CARGO_CRATES= addr2line-0.24.2 \ colorchoice-1.0.4 \ colored-3.0.0 \ compact_str-0.8.1 \ - core-foundation-0.9.4 \ core-foundation-sys-0.8.7 \ crossbeam-deque-0.8.6 \ crossbeam-epoch-0.9.18 \ @@ -68,8 +67,6 @@ CARGO_CRATES= addr2line-0.24.2 \ figment-0.10.19 \ fnv-1.0.7 \ foldhash-0.1.5 \ - foreign-types-0.3.2 \ - foreign-types-shared-0.1.1 \ form_urlencoded-1.2.1 \ fragile-2.0.1 \ futf-0.1.5 \ @@ -97,7 +94,6 @@ CARGO_CRATES= addr2line-0.24.2 \ httparse-1.10.1 \ hyper-1.6.0 \ hyper-rustls-0.27.7 \ - hyper-tls-0.6.0 \ hyper-util-0.1.16 \ iana-time-zone-0.1.63 \ iana-time-zone-haiku-0.1.2 \ @@ -148,15 +144,12 @@ CARGO_CRATES= addr2line-0.24.2 \ mio-1.0.4 \ mockall-0.13.1 \ mockall_derive-0.13.1 \ - native-tls-0.2.14 \ new_debug_unreachable-1.0.6 \ nu-ansi-term-0.46.0 \ num-traits-0.2.19 \ object-0.36.7 \ once_cell-1.21.3 \ once_cell_polyfill-1.70.1 \ - openssl-0.10.73 \ - openssl-macros-0.1.1 \ openssl-probe-0.1.6 \ openssl-sys-0.9.109 \ option-ext-0.2.0 \ @@ -217,11 +210,8 @@ CARGO_CRATES= addr2line-0.24.2 \ rustversion-1.0.21 \ ryu-1.0.20 \ same-file-1.0.6 \ - schannel-0.1.27 \ scopeguard-1.2.0 \ scraper-0.23.1 \ - security-framework-2.11.1 \ - security-framework-sys-2.14.0 \ selectors-0.26.0 \ semver-1.0.26 \ serde-1.0.219 \ @@ -239,7 +229,7 @@ CARGO_CRATES= addr2line-0.24.2 \ signal-hook-mio-0.2.4 \ signal-hook-registry-1.4.5 \ siphasher-1.0.1 \ - slab-0.4.10 \ + slab-0.4.11 \ smallvec-1.15.1 \ socket2-0.5.10 \ socket2-0.6.0 \ @@ -271,7 +261,6 @@ CARGO_CRATES= addr2line-0.24.2 \ tinyvec-1.9.0 \ tinyvec_macros-0.1.1 \ tokio-1.46.1 \ - tokio-native-tls-0.3.1 \ tokio-rustls-0.26.2 \ tokio-util-0.7.15 \ toml-0.8.23 \ diff --git a/textproc/feluda/distinfo b/textproc/feluda/distinfo index ee4d2779b7e2..5bae23fbb929 100644 --- a/textproc/feluda/distinfo +++ b/textproc/feluda/distinfo @@ -1,4 +1,4 @@ -TIMESTAMP = 1753857000 +TIMESTAMP = 1756194071 SHA256 (rust/crates/addr2line-0.24.2.crate) = dfbe277e56a376000877090da837660b4427aad530e3028d44e0bffe4f89a1c1 SIZE (rust/crates/addr2line-0.24.2.crate) = 39015 SHA256 (rust/crates/adler2-2.0.1.crate) = 320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa @@ -81,8 +81,6 @@ SHA256 (rust/crates/colored-3.0.0.crate) = fde0e0ec90c9dfb3b4b1a0891a7dcd0e2bffd SIZE (rust/crates/colored-3.0.0.crate) = 34497 SHA256 (rust/crates/compact_str-0.8.1.crate) = 3b79c4069c6cad78e2e0cdfcbd26275770669fb39fd308a752dc110e83b9af32 SIZE (rust/crates/compact_str-0.8.1.crate) = 71371 -SHA256 (rust/crates/core-foundation-0.9.4.crate) = 91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f -SIZE (rust/crates/core-foundation-0.9.4.crate) = 27743 SHA256 (rust/crates/core-foundation-sys-0.8.7.crate) = 773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b SIZE (rust/crates/core-foundation-sys-0.8.7.crate) = 37712 SHA256 (rust/crates/crossbeam-deque-0.8.6.crate) = 9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51 @@ -139,10 +137,6 @@ SHA256 (rust/crates/fnv-1.0.7.crate) = 3f9eec918d3f24069decb9af1554cad7c880e2da2 SIZE (rust/crates/fnv-1.0.7.crate) = 11266 SHA256 (rust/crates/foldhash-0.1.5.crate) = d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2 SIZE (rust/crates/foldhash-0.1.5.crate) = 21901 -SHA256 (rust/crates/foreign-types-0.3.2.crate) = f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1 -SIZE (rust/crates/foreign-types-0.3.2.crate) = 7504 -SHA256 (rust/crates/foreign-types-shared-0.1.1.crate) = 00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b -SIZE (rust/crates/foreign-types-shared-0.1.1.crate) = 5672 SHA256 (rust/crates/form_urlencoded-1.2.1.crate) = e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456 SIZE (rust/crates/form_urlencoded-1.2.1.crate) = 8969 SHA256 (rust/crates/fragile-2.0.1.crate) = 28dd6caf6059519a65843af8fe2a3ae298b14b80179855aeb4adc2c1934ee619 @@ -197,8 +191,6 @@ SHA256 (rust/crates/hyper-1.6.0.crate) = cc2b571658e38e0c01b1fdca3bbbe93c00d3d71 SIZE (rust/crates/hyper-1.6.0.crate) = 153923 SHA256 (rust/crates/hyper-rustls-0.27.7.crate) = e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58 SIZE (rust/crates/hyper-rustls-0.27.7.crate) = 35435 -SHA256 (rust/crates/hyper-tls-0.6.0.crate) = 70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0 -SIZE (rust/crates/hyper-tls-0.6.0.crate) = 15052 SHA256 (rust/crates/hyper-util-0.1.16.crate) = 8d9b05277c7e8da2c93a568989bb6207bef0112e8d17df7a6eda4a3cf143bc5e SIZE (rust/crates/hyper-util-0.1.16.crate) = 101184 SHA256 (rust/crates/iana-time-zone-0.1.63.crate) = b0c919e5debc312ad217002b8048a17b7d83f80703865bbfcfebb0458b0b27d8 @@ -299,8 +291,6 @@ SHA256 (rust/crates/mockall-0.13.1.crate) = 39a6bfcc6c8c7eed5ee98b9c3e33adc72605 SIZE (rust/crates/mockall-0.13.1.crate) = 22825 SHA256 (rust/crates/mockall_derive-0.13.1.crate) = 25ca3004c2efe9011bd4e461bd8256445052b9615405b4f7ea43fc8ca5c20898 SIZE (rust/crates/mockall_derive-0.13.1.crate) = 47822 -SHA256 (rust/crates/native-tls-0.2.14.crate) = 87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e -SIZE (rust/crates/native-tls-0.2.14.crate) = 29385 SHA256 (rust/crates/new_debug_unreachable-1.0.6.crate) = 650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086 SIZE (rust/crates/new_debug_unreachable-1.0.6.crate) = 2582 SHA256 (rust/crates/nu-ansi-term-0.46.0.crate) = 77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84 @@ -313,10 +303,6 @@ SHA256 (rust/crates/once_cell-1.21.3.crate) = 42f5e15c9953c5e4ccceeb2e7382a71648 SIZE (rust/crates/once_cell-1.21.3.crate) = 34534 SHA256 (rust/crates/once_cell_polyfill-1.70.1.crate) = a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad SIZE (rust/crates/once_cell_polyfill-1.70.1.crate) = 7510 -SHA256 (rust/crates/openssl-0.10.73.crate) = 8505734d46c8ab1e19a1dce3aef597ad87dcb4c37e7188231769bd6bd51cebf8 -SIZE (rust/crates/openssl-0.10.73.crate) = 283994 -SHA256 (rust/crates/openssl-macros-0.1.1.crate) = a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c -SIZE (rust/crates/openssl-macros-0.1.1.crate) = 5601 SHA256 (rust/crates/openssl-probe-0.1.6.crate) = d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e SIZE (rust/crates/openssl-probe-0.1.6.crate) = 8128 SHA256 (rust/crates/openssl-sys-0.9.109.crate) = 90096e2e47630d78b7d1c20952dc621f957103f8bc2c8359ec81290d75238571 @@ -437,16 +423,10 @@ SHA256 (rust/crates/ryu-1.0.20.crate) = 28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc SIZE (rust/crates/ryu-1.0.20.crate) = 48738 SHA256 (rust/crates/same-file-1.0.6.crate) = 93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502 SIZE (rust/crates/same-file-1.0.6.crate) = 10183 -SHA256 (rust/crates/schannel-0.1.27.crate) = 1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d -SIZE (rust/crates/schannel-0.1.27.crate) = 42772 SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49 SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619 SHA256 (rust/crates/scraper-0.23.1.crate) = 527e65d9d888567588db4c12da1087598d0f6f8b346cc2c5abc91f05fc2dffe2 SIZE (rust/crates/scraper-0.23.1.crate) = 24157 -SHA256 (rust/crates/security-framework-2.11.1.crate) = 897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02 -SIZE (rust/crates/security-framework-2.11.1.crate) = 80188 -SHA256 (rust/crates/security-framework-sys-2.14.0.crate) = 49db231d56a190491cb4aeda9527f1ad45345af50b0851622a7adb8c03b01c32 -SIZE (rust/crates/security-framework-sys-2.14.0.crate) = 20537 SHA256 (rust/crates/selectors-0.26.0.crate) = fd568a4c9bb598e291a08244a5c1f5a8a6650bee243b5b0f8dbb3d9cc1d87fe8 SIZE (rust/crates/selectors-0.26.0.crate) = 64329 SHA256 (rust/crates/semver-1.0.26.crate) = 56e6fa9c48d24d85fb3de5ad847117517440f6beceb7798af16b4a87d616b8d0 @@ -481,8 +461,8 @@ SHA256 (rust/crates/signal-hook-registry-1.4.5.crate) = 9203b8055f63a2a00e2f593b SIZE (rust/crates/signal-hook-registry-1.4.5.crate) = 19004 SHA256 (rust/crates/siphasher-1.0.1.crate) = 56199f7ddabf13fe5074ce809e7d3f42b42ae711800501b5b16ea82ad029c39d SIZE (rust/crates/siphasher-1.0.1.crate) = 10351 -SHA256 (rust/crates/slab-0.4.10.crate) = 04dc19736151f35336d325007ac991178d504a119863a2fcb3758cdb5e52c50d -SIZE (rust/crates/slab-0.4.10.crate) = 17810 +SHA256 (rust/crates/slab-0.4.11.crate) = 7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589 +SIZE (rust/crates/slab-0.4.11.crate) = 18549 SHA256 (rust/crates/smallvec-1.15.1.crate) = 67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03 SIZE (rust/crates/smallvec-1.15.1.crate) = 38116 SHA256 (rust/crates/socket2-0.5.10.crate) = e22376abed350d73dd1cd119b57ffccad95b4e585a7cda43e286245ce23c0678 @@ -545,8 +525,6 @@ SHA256 (rust/crates/tinyvec_macros-0.1.1.crate) = 1f3ccbac311fea05f86f61904b462b SIZE (rust/crates/tinyvec_macros-0.1.1.crate) = 5865 SHA256 (rust/crates/tokio-1.46.1.crate) = 0cc3a2344dafbe23a245241fe8b09735b521110d30fcefbbd5feb1797ca35d17 SIZE (rust/crates/tokio-1.46.1.crate) = 823632 -SHA256 (rust/crates/tokio-native-tls-0.3.1.crate) = bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2 -SIZE (rust/crates/tokio-native-tls-0.3.1.crate) = 20676 SHA256 (rust/crates/tokio-rustls-0.26.2.crate) = 8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b SIZE (rust/crates/tokio-rustls-0.26.2.crate) = 31655 SHA256 (rust/crates/tokio-util-0.7.15.crate) = 66a539a9ad6d5d281510d5bd368c973d636c02dbf8a67300bfb6b950696ad7df @@ -731,5 +709,5 @@ SHA256 (rust/crates/zerovec-0.11.2.crate) = 4a05eb080e015ba39cc9e23bbe5e7fb04d5f SIZE (rust/crates/zerovec-0.11.2.crate) = 124500 SHA256 (rust/crates/zerovec-derive-0.11.1.crate) = 5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f SIZE (rust/crates/zerovec-derive-0.11.1.crate) = 21294 -SHA256 (anistark-feluda-1.9.7_GH0.tar.gz) = 31afcdd2a822ebd74bca98fc9d0f3b63e3b36ffd6a7497040dac37a00e55aefc -SIZE (anistark-feluda-1.9.7_GH0.tar.gz) = 97271 +SHA256 (anistark-feluda-v1.9.8_GH0.tar.gz) = cb512ea32a3973b17a86e5c4c88bf5ba70f8e6cddda6a697172522e87b691070 +SIZE (anistark-feluda-v1.9.8_GH0.tar.gz) = 98501 diff --git a/textproc/feluda/files/patch-Cargo.lock b/textproc/feluda/files/patch-Cargo.lock new file mode 100644 index 000000000000..27c7d76034c4 --- /dev/null +++ b/textproc/feluda/files/patch-Cargo.lock @@ -0,0 +1,26 @@ +--- Cargo.lock.orig 2025-08-21 11:42:16 UTC ++++ Cargo.lock +@@ -1504,15 +1504,6 @@ checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00 + checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" + + [[package]] +-name = "openssl-src" +-version = "300.5.2+3.5.2" +-source = "registry+https://github.com/rust-lang/crates.io-index" +-checksum = "d270b79e2926f5150189d475bc7e9d2c69f9c4697b185fa917d5a32b792d21b4" +-dependencies = [ +- "cc", +-] +- +-[[package]] + name = "openssl-sys" + version = "0.9.109" + source = "registry+https://github.com/rust-lang/crates.io-index" +@@ -1520,7 +1511,6 @@ dependencies = [ + dependencies = [ + "cc", + "libc", +- "openssl-src", + "pkg-config", + "vcpkg", + ] diff --git a/textproc/feluda/files/patch-Cargo.toml b/textproc/feluda/files/patch-Cargo.toml new file mode 100644 index 000000000000..44c9c773285b --- /dev/null +++ b/textproc/feluda/files/patch-Cargo.toml @@ -0,0 +1,11 @@ +--- Cargo.toml.orig 2025-08-21 11:42:16 UTC ++++ Cargo.toml +@@ -43,7 +43,7 @@ chrono = { version = "0.4", features = ["serde"] } + tracing = { version = "0.1.40", features = ["attributes"] } + tracing-subscriber = { version = "0.3.18", features = ["env-filter"] } + chrono = { version = "0.4", features = ["serde"] } +-git2 = { version = "0.20.2", features = ["vendored-libgit2", "vendored-openssl"] } ++git2 = { version = "0.20.2", features = ["vendored-libgit2"] } + tempfile = "3.20.0" + dirs = "6.0.0" + diff --git a/textproc/go-yq/Makefile b/textproc/go-yq/Makefile index 19294523b0d8..3d7940d4e52f 100644 --- a/textproc/go-yq/Makefile +++ b/textproc/go-yq/Makefile @@ -1,7 +1,6 @@ PORTNAME= go-yq DISTVERSIONPREFIX= v -DISTVERSION= 4.45.4 -PORTREVISION= 2 +DISTVERSION= 4.47.1 CATEGORIES= textproc MAINTAINER= timp87@gmail.com @@ -11,7 +10,7 @@ WWW= https://github.com/mikefarah/yq LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -USES= go:1.24,modules +USES= go:modules GO_MODULE= github.com/mikefarah/yq/v4 GO_TARGET= .:yq diff --git a/textproc/go-yq/distinfo b/textproc/go-yq/distinfo index f6a19e4e8f38..c2f56ba45655 100644 --- a/textproc/go-yq/distinfo +++ b/textproc/go-yq/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1750777412 -SHA256 (go/textproc_go-yq/go-yq-v4.45.4/v4.45.4.mod) = 3828ced67e69ab15e357b5d5d065a4d1b5b4fede629b646c0699b6820c564ffa -SIZE (go/textproc_go-yq/go-yq-v4.45.4/v4.45.4.mod) = 982 -SHA256 (go/textproc_go-yq/go-yq-v4.45.4/v4.45.4.zip) = dc3ddd7f4ad66e98d26e5deb8826c95fd4d22f1e11989cd3690ddd93780d3fca -SIZE (go/textproc_go-yq/go-yq-v4.45.4/v4.45.4.zip) = 456199 +TIMESTAMP = 1756457073 +SHA256 (go/textproc_go-yq/go-yq-v4.47.1/v4.47.1.mod) = f89a8564b46efdf0ff77835df9392f1fef423bc6b904dd1f79d385fb54b0376d +SIZE (go/textproc_go-yq/go-yq-v4.47.1/v4.47.1.mod) = 1015 +SHA256 (go/textproc_go-yq/go-yq-v4.47.1/v4.47.1.zip) = e0c57fe2e4965301ef42159e0149f1e814eb5c0cdd4982b68e0a962ff6865498 +SIZE (go/textproc_go-yq/go-yq-v4.47.1/v4.47.1.zip) = 484080 diff --git a/textproc/html2xhtml/Makefile b/textproc/html2xhtml/Makefile index 21a72fd24638..0961bc88cea4 100644 --- a/textproc/html2xhtml/Makefile +++ b/textproc/html2xhtml/Makefile @@ -1,5 +1,5 @@ PORTNAME= html2xhtml -PORTVERSION= 1.4 +DISTVERSION= 1.4 CATEGORIES= textproc MASTER_SITES= http://www.it.uc3m.es/jaf/html2xhtml/downloads/ @@ -8,10 +8,10 @@ COMMENT= Convert HTML to XHTML WWW= https://www.it.uc3m.es/jaf/html2xhtml LICENSE= GPLv2 +LICENSE_FILE= ${WRKSRC}/COPYING -GNU_CONFIGURE= yes -GNU_CONFIGURE_MANPREFIX=${PREFIX}/share USES= iconv +GNU_CONFIGURE= yes CONFLICTS_INSTALL= p5-HTML-HTML5-Parser p5-XML-Driver-HTML # bin/html2xhtml diff --git a/textproc/obsidian/Makefile b/textproc/obsidian/Makefile index 4de716b9b8d7..cf9c1c5d8164 100644 --- a/textproc/obsidian/Makefile +++ b/textproc/obsidian/Makefile @@ -8,6 +8,7 @@ PORTNAME= obsidian PORTVERSION= 1.9.10 +PORTREVISION= 1 CATEGORIES= textproc # Icon is taken from the Nix build recipe # https://github.com/NixOS/nixpkgs/blob/de5448dab588ad41aef40f8c7c0c230981656698/pkgs/applications/misc/obsidian/default.nix#L31-L34 diff --git a/textproc/pdjson/Makefile b/textproc/pdjson/Makefile new file mode 100644 index 000000000000..087c1e6d1a8d --- /dev/null +++ b/textproc/pdjson/Makefile @@ -0,0 +1,27 @@ +PORTNAME= pdjson +DISTVERSION= g20250825 +CATEGORIES= textproc + +MAINTAINER= nsonack@herrhotzenplotz.de +COMMENT= Public Domain JSON Parser Library for C + +LICENSE= UNLICENSE +LICENSE_FILE= ${WRKSRC}/UNLICENSE + +USE_GITHUB= yes +GH_ACCOUNT= skeeto +GH_TAGNAME= 78fe04b820dc8817f540bdd87fb22887e0ef3981 +USE_LDCONFIG= yes + +TEST_TARGET= check + +SUB_FILES= pdjson.pc +SUB_LIST= DISTVERSION=${DISTVERSION} + +do-install: + ${INSTALL_LIB} ${WRKSRC}/libpdjson.so ${STAGEDIR}${LOCALBASE}/lib/libpdjson.so.0 + ${RLN} ${STAGEDIR}${LOCALBASE}/lib/libpdjson.so.0 ${STAGEDIR}${LOCALBASE}/lib/libpdjson.so + ${INSTALL} ${WRKSRC}/pdjson.h ${STAGEDIR}${LOCALBASE}/include + ${INSTALL_DATA} ${WRKDIR}/pdjson.pc ${STAGEDIR}${LOCALBASE}/libdata/pkgconfig + +.include <bsd.port.mk> diff --git a/textproc/pdjson/distinfo b/textproc/pdjson/distinfo new file mode 100644 index 000000000000..b457f5012f19 --- /dev/null +++ b/textproc/pdjson/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1756138081 +SHA256 (skeeto-pdjson-g20250825-78fe04b820dc8817f540bdd87fb22887e0ef3981_GH0.tar.gz) = e6bf6a90e65736faa5cfa6641a1f3278b577504d63f7fd2bf6b1454d94fa223c +SIZE (skeeto-pdjson-g20250825-78fe04b820dc8817f540bdd87fb22887e0ef3981_GH0.tar.gz) = 11698 diff --git a/textproc/pdjson/files/patch-Makefile b/textproc/pdjson/files/patch-Makefile new file mode 100644 index 000000000000..bfe7b015e15f --- /dev/null +++ b/textproc/pdjson/files/patch-Makefile @@ -0,0 +1,21 @@ +--- Makefile.orig 2024-02-22 11:12:52 UTC ++++ Makefile +@@ -1,8 +1,8 @@ + .POSIX: +-CC = cc +-CFLAGS = -std=c99 -pedantic -Wall -Wextra -Wno-missing-field-initializers ++CC ?= cc ++CFLAGS += -std=c99 -pedantic -Wall -Wextra -Wno-missing-field-initializers -fPIC + +-all: tests/pretty tests/stream tests/tests ++all: libpdjson.so tests/pretty tests/stream tests/tests + + tests/pretty: tests/pretty.o pdjson.o + $(CC) $(LDFLAGS) -o $@ tests/pretty.o pdjson.o $(LDLIBS) +@@ -28,3 +28,6 @@ clean: + + .c.o: + $(CC) -c $(CFLAGS) -o $@ $< ++ ++libpdjson.so: pdjson.o ++ $(CC) -shared -Wl,-soname=libpdjson.so.0 -o libpdjson.so pdjson.o diff --git a/textproc/pdjson/files/pdjson.pc.in b/textproc/pdjson/files/pdjson.pc.in new file mode 100644 index 000000000000..5feb5f556ec3 --- /dev/null +++ b/textproc/pdjson/files/pdjson.pc.in @@ -0,0 +1,11 @@ +prefix=%%PREFIX%% +libdir=${prefix}/lib +includedir=${prefix}/include + +Name: pdjson +Version: %%DISTVERSION%% +Description: Public Domain JSON parser +URL: https://github.com/skeeto/pdjson +Libs: -L${libdir} -lpdjson +Cflags: -I${includedir} + diff --git a/textproc/pdjson/pkg-descr b/textproc/pdjson/pkg-descr new file mode 100644 index 000000000000..9443bb133061 --- /dev/null +++ b/textproc/pdjson/pkg-descr @@ -0,0 +1,5 @@ +A public domain JSON parser focused on correctness, ANSI C99 +compliance, full Unicode (UTF-8) support, minimal memory footprint, +and a simple API. As a streaming API, arbitrary large JSON could +be processed with a small amount of memory (the size of the largest +string in the JSON). diff --git a/textproc/pdjson/pkg-plist b/textproc/pdjson/pkg-plist new file mode 100644 index 000000000000..98c00cb58daa --- /dev/null +++ b/textproc/pdjson/pkg-plist @@ -0,0 +1,4 @@ +include/pdjson.h +lib/libpdjson.so +lib/libpdjson.so.0 +libdata/pkgconfig/pdjson.pc diff --git a/textproc/py-ntc-templates/Makefile b/textproc/py-ntc-templates/Makefile index bd7a262dcf05..92590d63ce14 100644 --- a/textproc/py-ntc-templates/Makefile +++ b/textproc/py-ntc-templates/Makefile @@ -1,6 +1,6 @@ PORTNAME= ntc-templates DISTVERSIONPREFIX= v -DISTVERSION= 7.9.0 +DISTVERSION= 8.0.0 CATEGORIES= textproc net-mgmt python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,7 +12,7 @@ LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}poetry-core>=1.0.0:devel/py-poetry-core@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}textfsm>=1.1.0<2.0.0:textproc/py-textfsm@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}textfsm>=1.1.0:textproc/py-textfsm@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}invoke>0:devel/py-invoke@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}ruamel.yaml>0:devel/py-ruamel.yaml@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}toml>0:textproc/py-toml@${PY_FLAVOR} \ diff --git a/textproc/py-ntc-templates/distinfo b/textproc/py-ntc-templates/distinfo index 4ad17d3d12a2..584e5730545e 100644 --- a/textproc/py-ntc-templates/distinfo +++ b/textproc/py-ntc-templates/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1747893176 -SHA256 (networktocode-ntc-templates-v7.9.0_GH0.tar.gz) = 855237d5a554e53b9158320733e6b33e228c768b3993bd6683ee2813808d4c12 -SIZE (networktocode-ntc-templates-v7.9.0_GH0.tar.gz) = 1607690 +TIMESTAMP = 1756398279 +SHA256 (networktocode-ntc-templates-v8.0.0_GH0.tar.gz) = 0c3c2a9a5aaccbcc77b50038401d523bf54871c949f59ade21f922c057c13873 +SIZE (networktocode-ntc-templates-v8.0.0_GH0.tar.gz) = 1634105 diff --git a/textproc/py-textfsm/Makefile b/textproc/py-textfsm/Makefile index 5706a623f89c..afd91ce4791b 100644 --- a/textproc/py-textfsm/Makefile +++ b/textproc/py-textfsm/Makefile @@ -1,6 +1,5 @@ PORTNAME= textfsm -DISTVERSION= 1.1.3 -PORTREVISION= 2 +DISTVERSION= 2.1.0 CATEGORIES= textproc python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} @@ -12,13 +11,13 @@ WWW= https://github.com/google/textfsm LICENSE= APACHE20 LICENSE_FILE= ${WRKSRC}/COPYING -BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR} -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}future>0:devel/py-future@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}six>0:devel/py-six@${PY_FLAVOR} -TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>0:devel/py-pytest@${PY_FLAVOR} +BUILD_DEPENDS= ${PY_SETUPTOOLS} \ + ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} USES= python -USE_PYTHON= autoplist concurrent distutils pytest +USE_PYTHON= autoplist concurrent pep517 pytest + +TEST_ENV= PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} NO_ARCH= yes diff --git a/textproc/py-textfsm/distinfo b/textproc/py-textfsm/distinfo index 08362d09108e..d23dd1819785 100644 --- a/textproc/py-textfsm/distinfo +++ b/textproc/py-textfsm/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1686207535 -SHA256 (textfsm-1.1.3.tar.gz) = 577ef278a9237f5341ae9b682947cefa4a2c1b24dbe486f94f2c95addc6504b5 -SIZE (textfsm-1.1.3.tar.gz) = 55454 +TIMESTAMP = 1756398504 +SHA256 (textfsm-2.1.0.tar.gz) = 45c18ff2b7c90163dfdff7e20d3f482514cc7aac26bc2547744e79dfa761e458 +SIZE (textfsm-2.1.0.tar.gz) = 55486 diff --git a/textproc/py-textfsm/files/patch-setup.py b/textproc/py-textfsm/files/patch-setup.py index e7a7c499d537..7b632bca1b43 100644 --- a/textproc/py-textfsm/files/patch-setup.py +++ b/textproc/py-textfsm/files/patch-setup.py @@ -1,13 +1,12 @@ Remove "testdata" directory from installation. It is only required for the testsuite. ---- setup.py.orig 2019-11-26 11:17:07 UTC +--- setup.py.orig 2025-03-21 04:48:22 UTC +++ setup.py -@@ -52,7 +52,6 @@ setup(name='textfsm', - ] - }, - include_package_data=True, -- package_data={'textfsm': ['../testdata/*']}, - install_requires=['six', 'future'], - setup_requires=['pytest-runner'], - tests_require=['pytest']) +@@ -50,6 +50,4 @@ setup( + ], + packages=['textfsm'], + entry_points={'console_scripts': ['textfsm=textfsm.parser:main']}, +- include_package_data=True, +- package_data={'textfsm': ['../testdata/*']}, + ) diff --git a/www/Makefile b/www/Makefile index 4edc1757d653..dc404b1ecbdd 100644 --- a/www/Makefile +++ b/www/Makefile @@ -1456,6 +1456,7 @@ SUBDIR += phpvirtualbox SUBDIR += phpvirtualbox-70 SUBDIR += phpvirtualbox-71 + SUBDIR += phpvirtualbox-72 SUBDIR += phpvirtualbox-legacy SUBDIR += piwigo SUBDIR += plasma6-plasma-browser-integration diff --git a/www/apache24/Makefile b/www/apache24/Makefile index d356e4acadd4..ab878e5db287 100644 --- a/www/apache24/Makefile +++ b/www/apache24/Makefile @@ -1,5 +1,6 @@ PORTNAME= apache24 PORTVERSION= 2.4.65 +PORTREVISION= 1 CATEGORIES= www MASTER_SITES= APACHE_HTTPD DISTNAME= httpd-${PORTVERSION} diff --git a/www/apache24/files/apache24.in b/www/apache24/files/apache24.in index 0b9c4bd55ba6..d9ced6f55d73 100644 --- a/www/apache24/files/apache24.in +++ b/www/apache24/files/apache24.in @@ -43,6 +43,8 @@ pidfile="${_pidprefix}.pid" required_files=%%PREFIX%%/etc/apache24/httpd.conf envvars="%%PREFIX%%/sbin/envvars" +: ${apache24_svcj_options:="net_basic"} + [ -z "$apache24_enable" ] && apache24_enable="NO" [ -z "$apache24limits_enable" ] && apache24limits_enable="NO" [ -z "$apache24limits_args" ] && apache24limits_args="-e -C daemon" @@ -83,6 +85,7 @@ if [ -n "$2" ]; then eval command="\${apache24_${profile}_command:-${command}}" eval pidfile="\${apache24_${profile}_pidfile:-${pidfile}}" eval apache24_envvars="\${apache24_${profile}_envvars:-${envvars}}" + eval apache24_svcj_options="\${apache24_${profile}_svcj_options:-${apache24_svcj_options}}" apache24_flags="-f ${apache24_configfile} -c \"PidFile ${pidfile}\" ${apache24_flags}" else echo "$0: extra argument ignored" diff --git a/www/chromium/files/patch-net_dns_BUILD.gn b/www/chromium/files/patch-net_dns_BUILD.gn index 2a4999bdc858..fc4d80d959a0 100644 --- a/www/chromium/files/patch-net_dns_BUILD.gn +++ b/www/chromium/files/patch-net_dns_BUILD.gn @@ -1,4 +1,4 @@ ---- net/dns/BUILD.gn.orig 2025-08-07 06:57:29 UTC +--- net/dns/BUILD.gn.orig 2025-08-11 22:26:04 UTC +++ net/dns/BUILD.gn @@ -140,7 +140,7 @@ source_set("dns") { "dns_config_service_android.cc", @@ -9,7 +9,17 @@ sources += [ "dns_config_service_linux.cc", "dns_config_service_linux.h", -@@ -181,6 +181,7 @@ source_set("dns") { +@@ -174,6 +174,9 @@ source_set("dns") { + } + + deps = [ "//net:net_deps" ] ++ if (is_bsd) { ++ deps += [ "//services/screen_ai/buildflags" ] ++ } + + public_deps = [ + ":dns_client", +@@ -181,6 +184,7 @@ source_set("dns") { ":host_resolver_manager", ":mdns_client", "//net:net_public_deps", @@ -17,7 +27,7 @@ ] if (enable_mdns) { -@@ -454,9 +455,9 @@ source_set("tests") { +@@ -454,9 +458,9 @@ source_set("tests") { if (is_android) { sources += [ "dns_config_service_android_unittest.cc" ] diff --git a/www/firefox-esr/Makefile b/www/firefox-esr/Makefile index 0c4835a0173f..058a23506eac 100644 --- a/www/firefox-esr/Makefile +++ b/www/firefox-esr/Makefile @@ -1,5 +1,6 @@ PORTNAME= firefox DISTVERSION= 140.2.0 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= www wayland MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}esr/source \ diff --git a/www/firefox/Makefile b/www/firefox/Makefile index 5e5194da21f1..4d31a1d81930 100644 --- a/www/firefox/Makefile +++ b/www/firefox/Makefile @@ -1,5 +1,6 @@ PORTNAME= firefox DISTVERSION= 142.0.1 +PORTREVISION= 1 PORTEPOCH= 2 CATEGORIES= www wayland MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}${DISTVERSIONSUFFIX}/source \ diff --git a/www/gitlab-pages/distinfo b/www/gitlab-pages/distinfo index d4dfc511e729..fb028fd75b38 100644 --- a/www/gitlab-pages/distinfo +++ b/www/gitlab-pages/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1755673986 -SHA256 (go/www_gitlab-pages/gitlab-pages-v18.3.0/go.mod) = f009bb2f145a5e8bfa40069b413d54c6212f0062253d9de94dc93e61b93b2a96 -SIZE (go/www_gitlab-pages/gitlab-pages-v18.3.0/go.mod) = 3436 -SHA256 (go/www_gitlab-pages/gitlab-pages-v18.3.0/gitlab-pages-v18.3.0.tar.bz2) = 942d1da9e47fe468267cb15004464dfd0138e0dd5eb8252943ebe115fc8226d4 -SIZE (go/www_gitlab-pages/gitlab-pages-v18.3.0/gitlab-pages-v18.3.0.tar.bz2) = 236413 +TIMESTAMP = 1756438003 +SHA256 (go/www_gitlab-pages/gitlab-pages-v18.3.1/go.mod) = f009bb2f145a5e8bfa40069b413d54c6212f0062253d9de94dc93e61b93b2a96 +SIZE (go/www_gitlab-pages/gitlab-pages-v18.3.1/go.mod) = 3436 +SHA256 (go/www_gitlab-pages/gitlab-pages-v18.3.1/gitlab-pages-v18.3.1.tar.bz2) = 16db6acfeb658cdd160c774035a0911ff804096c1306169105da3b754f6015f9 +SIZE (go/www_gitlab-pages/gitlab-pages-v18.3.1/gitlab-pages-v18.3.1.tar.bz2) = 237006 diff --git a/www/gitlab-workhorse/distinfo b/www/gitlab-workhorse/distinfo index ffe9a794c4c9..e069c82b0d2e 100644 --- a/www/gitlab-workhorse/distinfo +++ b/www/gitlab-workhorse/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1755674006 -SHA256 (go/www_gitlab-workhorse/gitlab-foss-v18.3.0/go.mod) = 9c034c905470aa1c1f54b96d744fd80cbc9c199fc84990e580297186080818b9 -SIZE (go/www_gitlab-workhorse/gitlab-foss-v18.3.0/go.mod) = 9331 -SHA256 (go/www_gitlab-workhorse/gitlab-foss-v18.3.0/gitlab-foss-v18.3.0.tar.bz2) = 6e41dcfac151ec18d8b6896823499a73fc45e026d3804798fdb73b5c5c51c332 -SIZE (go/www_gitlab-workhorse/gitlab-foss-v18.3.0/gitlab-foss-v18.3.0.tar.bz2) = 122196697 +TIMESTAMP = 1756438024 +SHA256 (go/www_gitlab-workhorse/gitlab-foss-v18.3.1/go.mod) = 9c034c905470aa1c1f54b96d744fd80cbc9c199fc84990e580297186080818b9 +SIZE (go/www_gitlab-workhorse/gitlab-foss-v18.3.1/go.mod) = 9331 +SHA256 (go/www_gitlab-workhorse/gitlab-foss-v18.3.1/gitlab-foss-v18.3.1.tar.bz2) = 6e6a71560915da21f52a35f8592824a5fa48054b2d113250b7183b04657157b9 +SIZE (go/www_gitlab-workhorse/gitlab-foss-v18.3.1/gitlab-foss-v18.3.1.tar.bz2) = 122193686 diff --git a/www/gitlab/Makefile.common b/www/gitlab/Makefile.common index b5a9461467e0..8ecbae27d4a3 100644 --- a/www/gitlab/Makefile.common +++ b/www/gitlab/Makefile.common @@ -1,4 +1,4 @@ -GITLAB_VERSION= 18.3.0 +GITLAB_VERSION= 18.3.1 GITLAB_PORTREVISION= 0 # Git version gitaly should use (from gitlab mirror) diff --git a/www/gitlab/distinfo b/www/gitlab/distinfo index 591cf63d11d6..513bc2f6b7b5 100644 --- a/www/gitlab/distinfo +++ b/www/gitlab/distinfo @@ -1,6 +1,6 @@ -TIMESTAMP = 1755673899 -SHA256 (gitlab-foss-v18.3.0.tar.bz2) = 6e41dcfac151ec18d8b6896823499a73fc45e026d3804798fdb73b5c5c51c332 -SIZE (gitlab-foss-v18.3.0.tar.bz2) = 122196697 -TIMESTAMP = 1755673938 -SHA256 (gitlab-v18.3.0-ee.tar.bz2) = 03f1e46a1afdbbb3ef7a3ce514afd0d267c20df52e8be9a7be8a7f51c4dd497f -SIZE (gitlab-v18.3.0-ee.tar.bz2) = 138127084 +TIMESTAMP = 1756437955 +SHA256 (gitlab-foss-v18.3.1.tar.bz2) = 6e6a71560915da21f52a35f8592824a5fa48054b2d113250b7183b04657157b9 +SIZE (gitlab-foss-v18.3.1.tar.bz2) = 122193686 +TIMESTAMP = 1756437995 +SHA256 (gitlab-v18.3.1-ee.tar.bz2) = 32da4c6475a11bf425b7f63e2cadc94b4b8b5478d13176623a6b6f3df861c1b3 +SIZE (gitlab-v18.3.1-ee.tar.bz2) = 138138304 diff --git a/www/homepage/Makefile b/www/homepage/Makefile index f30773c8cf73..7df2dfd50009 100644 --- a/www/homepage/Makefile +++ b/www/homepage/Makefile @@ -1,5 +1,5 @@ PORTNAME= homepage -DISTVERSION= 1.4.5 +DISTVERSION= 1.4.6 CATEGORIES= www MASTER_SITES= LOCAL/dtxdf/${PORTNAME}/ DISTFILES= ${PORTNAME}-${DISTVERSION}${EXTRACT_SUFX} diff --git a/www/homepage/distinfo b/www/homepage/distinfo index 2be5eba52bb7..9723ff1f283e 100644 --- a/www/homepage/distinfo +++ b/www/homepage/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1755284700 -SHA256 (homepage-1.4.5.tar.gz) = 7e3af21014d5ed18db0f7270b02173622cf71ae3d95e71354cb4d9058fb9459b -SIZE (homepage-1.4.5.tar.gz) = 12763514 +TIMESTAMP = 1756433341 +SHA256 (homepage-1.4.6.tar.gz) = 8e12e8990b1a3d7208e46888ed9af64faf135dd645be0f619a8312e4016eb3c9 +SIZE (homepage-1.4.6.tar.gz) = 12755151 diff --git a/www/homepage/pkg-plist b/www/homepage/pkg-plist index f0c4df661cb5..8bd5b83f4a6c 100644 --- a/www/homepage/pkg-plist +++ b/www/homepage/pkg-plist @@ -366,7 +366,6 @@ etc/homepage.env %%HOMEDIR%%/.next/static/chunks/5860.a10d0361279e6f9a.js %%HOMEDIR%%/.next/static/chunks/5944.4bff334081a2eb22.js %%HOMEDIR%%/.next/static/chunks/6002.f6ac6a7504802f1e.js -%%HOMEDIR%%/.next/static/chunks/611.acdfd27946411a66.js %%HOMEDIR%%/.next/static/chunks/6182.e82eb4ec3e4fa068.js %%HOMEDIR%%/.next/static/chunks/6187.d0e3c9e2a14feb51.js %%HOMEDIR%%/.next/static/chunks/6218.b4f08a33f469d76a.js @@ -5170,8 +5169,9 @@ etc/homepage.env %%HOMEDIR%%/src/widgets/whatsupdocker/component.jsx %%HOMEDIR%%/src/widgets/xteve/component.jsx %%HOMEDIR%%/src/widgets/zabbix/component.jsx -%%WWWDIR%%/.next/static/C96yU3PHL1RBxfvfUwXg7/_buildManifest.js -%%WWWDIR%%/.next/static/C96yU3PHL1RBxfvfUwXg7/_ssgManifest.js -%%WWWDIR%%/.next/static/chunks/3121.062fa4a7824bc243.js -%%WWWDIR%%/.next/static/chunks/9346.79cfeec7ac0908a1.js -%%WWWDIR%%/.next/static/chunks/webpack-db160e9b591c440c.js +%%HOMEDIR%%/.next/static/-dFR4Fpx7vGAuCNFyOPRb/_buildManifest.js +%%HOMEDIR%%/.next/static/-dFR4Fpx7vGAuCNFyOPRb/_ssgManifest.js +%%HOMEDIR%%/.next/static/chunks/3121.062fa4a7824bc243.js +%%HOMEDIR%%/.next/static/chunks/9346.c6d566c362c5e060.js +%%HOMEDIR%%/.next/static/chunks/611.47bd2aede4f96794.js +%%HOMEDIR%%/.next/static/chunks/webpack-d2d287706f398086.js diff --git a/www/iridium/files/patch-content_browser_BUILD.gn b/www/iridium/files/patch-content_browser_BUILD.gn index e8240806ac8c..477ca0ded3bb 100644 --- a/www/iridium/files/patch-content_browser_BUILD.gn +++ b/www/iridium/files/patch-content_browser_BUILD.gn @@ -1,6 +1,14 @@ ---- content/browser/BUILD.gn.orig 2025-06-19 07:37:57 UTC +--- content/browser/BUILD.gn.orig 2025-06-18 12:17:42 UTC +++ content/browser/BUILD.gn -@@ -2571,6 +2571,14 @@ source_set("browser") { +@@ -125,6 +125,7 @@ source_set("browser") { + "//components/optimization_guide/core:features", + "//components/optimization_guide/public/mojom", + "//components/os_crypt/sync", ++ "//components/paint_preview/buildflags:buildflags", + "//components/payments/content/icon", + "//components/payments/mojom", + "//components/performance_manager/scenario_api", +@@ -2571,6 +2572,14 @@ source_set("browser") { ] } @@ -15,7 +23,7 @@ if (is_linux || is_chromeos) { sources -= [ "file_system_access/file_path_watcher/file_path_watcher_stub.cc" ] -@@ -2616,6 +2624,15 @@ source_set("browser") { +@@ -2616,6 +2625,15 @@ source_set("browser") { if (allow_oop_video_decoder) { sources += [ "media/oop_video_decoder_factory.cc" ] deps += [ "//media/mojo/mojom" ] diff --git a/www/iridium/files/patch-net_BUILD.gn b/www/iridium/files/patch-net_BUILD.gn index cd6138a37fae..d30dac474cef 100644 --- a/www/iridium/files/patch-net_BUILD.gn +++ b/www/iridium/files/patch-net_BUILD.gn @@ -1,4 +1,4 @@ ---- net/BUILD.gn.orig 2025-06-19 07:37:57 UTC +--- net/BUILD.gn.orig 2025-06-18 12:17:42 UTC +++ net/BUILD.gn @@ -126,7 +126,7 @@ net_configs = [ "//build/config/compiler:wexit_time_destructors", @@ -9,7 +9,15 @@ net_configs += [ "//build/config/linux:libresolv" ] } -@@ -1334,6 +1334,19 @@ component("net") { +@@ -1138,6 +1138,7 @@ component("net") { + ":net_deps", + "//components/miracle_parameter/common", + "//components/network_time/time_tracker", ++ "//content/public/common:buildflags", + "//net/http:transport_security_state_generated_files", + "//third_party/simdutf:simdutf", + ] +@@ -1334,6 +1335,19 @@ component("net") { ] } @@ -29,7 +37,7 @@ if (is_mac) { sources += [ "base/network_notification_thread_mac.cc", -@@ -1497,7 +1510,7 @@ component("net") { +@@ -1497,7 +1511,7 @@ component("net") { } # Use getifaddrs() on POSIX platforms, except Linux. @@ -38,7 +46,7 @@ sources += [ "base/network_interfaces_getifaddrs.cc", "base/network_interfaces_getifaddrs.h", -@@ -2207,7 +2220,7 @@ static_library("test_support") { +@@ -2207,7 +2221,7 @@ static_library("test_support") { ] } @@ -47,7 +55,7 @@ sources += [ "base/address_tracker_linux_test_util.cc", "base/address_tracker_linux_test_util.h", -@@ -3030,14 +3043,14 @@ target(_test_target_type, "net_unittests") { +@@ -3030,14 +3044,14 @@ target(_test_target_type, "net_unittests") { ] } @@ -64,7 +72,7 @@ sources += [ "base/address_tracker_linux_unittest.cc", "base/network_interfaces_linux_unittest.cc", -@@ -3135,6 +3148,10 @@ target(_test_target_type, "net_unittests") { +@@ -3135,6 +3149,10 @@ target(_test_target_type, "net_unittests") { ] } @@ -75,7 +83,7 @@ if (enable_websockets) { sources += [ "server/http_connection_unittest.cc", -@@ -3200,7 +3217,7 @@ target(_test_target_type, "net_unittests") { +@@ -3200,7 +3218,7 @@ target(_test_target_type, "net_unittests") { ] } @@ -84,7 +92,7 @@ sources += [ "tools/quic/quic_simple_server_test.cc" ] } -@@ -3339,7 +3356,7 @@ target(_test_target_type, "net_unittests") { +@@ -3339,7 +3357,7 @@ target(_test_target_type, "net_unittests") { } # Use getifaddrs() on POSIX platforms, except Linux. diff --git a/www/librewolf/Makefile b/www/librewolf/Makefile index 6be8c1e5818f..7c8195691bfd 100644 --- a/www/librewolf/Makefile +++ b/www/librewolf/Makefile @@ -1,5 +1,6 @@ PORTNAME= librewolf DISTVERSION= 142.0 +PORTREVISION= 1 LWPATCH= -1 DISTVERSIONSUFFIX= ${LWPATCH}.source CATEGORIES= www wayland diff --git a/www/nextcloud-contacts/Makefile b/www/nextcloud-contacts/Makefile index d5d38b600079..f40ba1d3f697 100644 --- a/www/nextcloud-contacts/Makefile +++ b/www/nextcloud-contacts/Makefile @@ -1,5 +1,5 @@ PORTNAME= contacts -PORTVERSION= 7.2.5 +PORTVERSION= 7.2.6 DISTVERSIONPREFIX= v CATEGORIES= www diff --git a/www/nextcloud-contacts/distinfo b/www/nextcloud-contacts/distinfo index 9cfd5fda3d9f..b0c74cb0dbf3 100644 --- a/www/nextcloud-contacts/distinfo +++ b/www/nextcloud-contacts/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1755624542 -SHA256 (nextcloud/contacts-v7.2.5.tar.gz) = 03c7457cf79ee137b5cdb2da25fa21bb2c6731b6b2b267c36b78627099ea7e43 -SIZE (nextcloud/contacts-v7.2.5.tar.gz) = 4487588 +TIMESTAMP = 1756412333 +SHA256 (nextcloud/contacts-v7.2.6.tar.gz) = 20cb06e3f90dca3dbea1c1edb049d0ff5cbe2a18255894e0d2ce56b2283f5f6a +SIZE (nextcloud/contacts-v7.2.6.tar.gz) = 4496148 diff --git a/www/nginx-devel/Makefile b/www/nginx-devel/Makefile index bdc0d6d52163..ac2452c94c6f 100644 --- a/www/nginx-devel/Makefile +++ b/www/nginx-devel/Makefile @@ -1,7 +1,7 @@ PORTNAME?= nginx PORTVERSION= ${NGINX_VERSION} .include "version.mk" -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= www MASTER_SITES= https://nginx.org/download/ \ LOCAL/osa diff --git a/www/nginx-devel/files/extra-patch-ngx_nats.c b/www/nginx-devel/files/extra-patch-ngx_nats.c new file mode 100644 index 000000000000..76c3f2be7864 --- /dev/null +++ b/www/nginx-devel/files/extra-patch-ngx_nats.c @@ -0,0 +1,20 @@ +--- ../nginx-nats-6f7adf1/src/ngx_nats.c.orig 2025-07-25 14:52:57.670444000 -0400 ++++ ../nginx-nats-6f7adf1/src/ngx_nats.c 2025-07-25 14:53:04.538387000 -0400 +@@ -55,7 +55,7 @@ + * we can use for uniqueness and to reach the router in testing. + */ + +-#if (NGX_LINUX) || (NGX_DARWIN) ++#if (NGX_LINUX) || (NGX_DARWIN) || (NGX_FREEBSD) + #include <net/if.h> + #include <ifaddrs.h> + #elif (NGX_WIN32) +@@ -585,7 +585,7 @@ + { + /* TODO: port to Windows when need it, extend to other platforms. */ + +-#if (NGX_LINUX) || (NGX_DARWIN) ++#if (NGX_LINUX) || (NGX_DARWIN) || (NGX_FREEBSD) + + struct ifaddrs *ifaddrs, *ifa; + int rc, family; diff --git a/www/nginx-devel/files/nginx.in b/www/nginx-devel/files/nginx.in index daba266d9192..5ec438dd7342 100644 --- a/www/nginx-devel/files/nginx.in +++ b/www/nginx-devel/files/nginx.in @@ -69,6 +69,7 @@ if [ -n "$2" ]; then required_files="${nginx_configfile}" eval nginx_enable="\${nginx_${profile}_enable:-${nginx_enable}}" eval nginx_flags="\${nginx_${profile}_flags:-${nginx_flags}}" + eval nginx_svcj_options="\${nginx_${profile}_svcj_options:-${nginx_svcj_options}}" eval nginxlimits_enable="\${nginxlimits_${profile}_enable:-${nginxlimits_enable}}" eval nginxlimits_args="\${nginxlimits_${profile}_args:-${nginxlimits_args}}" nginx_flags="-c ${nginx_configfile} -g \"pid ${pidfile};\" ${nginx_flags}" diff --git a/www/phpvirtualbox-70/Makefile b/www/phpvirtualbox-70/Makefile index 22e8a6913dbe..b85b31ac272e 100644 --- a/www/phpvirtualbox-70/Makefile +++ b/www/phpvirtualbox-70/Makefile @@ -18,7 +18,8 @@ USE_PHP= session simplexml soap xml ETCDIR= ${WWWDIR} WWWDIR= ${PREFIX}/www/${PORTNAME}${SUFFIX} -EXTRA_PATCHES+= ${.CURDIR}/../phpvirtualbox/files/patch-panes_mediumEncryptionPasswords.html +EXTRA_PATCHES+= ${.CURDIR}/../phpvirtualbox-72/files/patch-endpoints_lib_vboxconnector.php \ + ${.CURDIR}/../phpvirtualbox-72/files/patch-panes_mediumEncryptionPasswords.html NO_ARCH= yes NO_BUILD= yes PORTSCOUT= limit:^7\.0\. diff --git a/www/phpvirtualbox-71/Makefile b/www/phpvirtualbox-71/Makefile index fb05e5b28ffb..9d48563e1730 100644 --- a/www/phpvirtualbox-71/Makefile +++ b/www/phpvirtualbox-71/Makefile @@ -1,12 +1,13 @@ PORTNAME= phpvirtualbox DISTVERSION= 7.1-1 +PORTREVISION= 1 CATEGORIES= www SUFFIX= -71 PKGNAMESUFFIX= ${SUFFIX}${PHP_PKGNAMESUFFIX} MAINTAINER= vbox@FreeBSD.org COMMENT= AJAX Web Interface for VirtualBox -WWW= https://sourceforge.net/projects/phpvirtualbox-7-0/ +WWW= https://github.com/phpvirtualbox/phpvirtualbox/ LICENSE= GPLv3 @@ -16,7 +17,9 @@ USE_PHP= session simplexml soap xml ETCDIR= ${WWWDIR} WWWDIR= ${PREFIX}/www/${PORTNAME}${SUFFIX} -EXTRA_PATCHES+= ${.CURDIR}/../phpvirtualbox/files/patch-panes_mediumEncryptionPasswords.html +EXTRA_PATCHES+= ${.CURDIR}/../phpvirtualbox-72/files/patch-endpoints_lib_config.php \ + ${.CURDIR}/../phpvirtualbox-72/files/patch-endpoints_lib_vboxconnector.php \ + ${.CURDIR}/../phpvirtualbox-72/files/patch-panes_mediumEncryptionPasswords.html NO_ARCH= yes NO_BUILD= yes PORTSCOUT= limit:^7\.1\. diff --git a/www/phpvirtualbox-71/files/patch-endpoints_lib_vboxconnector.php b/www/phpvirtualbox-71/files/patch-endpoints_lib_vboxconnector.php deleted file mode 100644 index 3ce4bd1b67fa..000000000000 --- a/www/phpvirtualbox-71/files/patch-endpoints_lib_vboxconnector.php +++ /dev/null @@ -1,21 +0,0 @@ ---- endpoints/lib/vboxconnector.php.orig 2025-03-09 01:02:03 UTC -+++ endpoints/lib/vboxconnector.php -@@ -113,6 +113,8 @@ class vboxconnector { - */ - var $dsep = null; - -+ var $client = null; -+ - /** - * Obtain configuration settings and set object vars - * @param boolean $useAuthMaster use the authentication master obtained from configuration class -@@ -388,7 +390,8 @@ class vboxconnector { - - // The amount of time we will wait for events is determined by - // the amount of listeners - at least half a second -- $listenerWait = max(100,intval(500/count($this->persistentRequest['vboxEventListeners']))); -+ $listenerCount = count($this->persistentRequest['vboxEventListeners']); -+ $listenerWait = max(100,intval(500/($listenerCount > 0 ? $listenerCount : 1))); - } - - // Get events from each configured event listener diff --git a/www/phpvirtualbox-72/Makefile b/www/phpvirtualbox-72/Makefile new file mode 100644 index 000000000000..5cd673bbf480 --- /dev/null +++ b/www/phpvirtualbox-72/Makefile @@ -0,0 +1,37 @@ +PORTNAME= phpvirtualbox +DISTVERSION= 7.2-1 +PORTREVISION= 1 +CATEGORIES= www +SUFFIX= -72 +PKGNAMESUFFIX= ${SUFFIX}${PHP_PKGNAMESUFFIX} + +MAINTAINER= vbox@FreeBSD.org +COMMENT= AJAX Web Interface for VirtualBox +WWW= https://github.com/phpvirtualbox/phpvirtualbox/ + +LICENSE= GPLv3 + +USES= php:flavors +USE_GITHUB= yes +USE_PHP= session simplexml soap xml + +ETCDIR= ${WWWDIR} +WWWDIR= ${PREFIX}/www/${PORTNAME}${SUFFIX} +NO_ARCH= yes +NO_BUILD= yes +PORTSCOUT= limit:^7\.2\. + +post-patch: + @${MV} ${WRKSRC}/phpvirtualbox.conf ${WRKSRC}/phpvirtualbox${SUFFIX}.conf + @${REINPLACE_CMD} -e 's#Alias /phpvirtualbox#Alias /phpvirtualbox${SUFFIX}#' \ + -e 's#/usr/share/phpvirtualbox#${WWWDIR}#g' \ + ${WRKSRC}/phpvirtualbox${SUFFIX}.conf + +do-install: + ${MKDIR} ${STAGEDIR}${WWWDIR} + (cd ${WRKSRC}/ && ${COPYTREE_SHARE} "*" ${STAGEDIR}${WWWDIR} \ + "-not -name *.orig -not -name config.php-example") + ${INSTALL_DATA} ${WRKSRC}/config.php-example \ + ${STAGEDIR}${WWWDIR}/config.php.sample + +.include <bsd.port.mk> diff --git a/www/phpvirtualbox-72/distinfo b/www/phpvirtualbox-72/distinfo new file mode 100644 index 000000000000..36e164f0de0c --- /dev/null +++ b/www/phpvirtualbox-72/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1756400000 +SHA256 (phpvirtualbox-phpvirtualbox-7.2-1_GH0.tar.gz) = 8025ed6b6af7ab4f32b0ac548fee94621469d5f5bc89d6a8a553a3989ada5ca9 +SIZE (phpvirtualbox-phpvirtualbox-7.2-1_GH0.tar.gz) = 5271540 diff --git a/www/phpvirtualbox-71/files/patch-endpoints_lib_config.php b/www/phpvirtualbox-72/files/patch-endpoints_lib_config.php index 82de95a4947b..82de95a4947b 100644 --- a/www/phpvirtualbox-71/files/patch-endpoints_lib_config.php +++ b/www/phpvirtualbox-72/files/patch-endpoints_lib_config.php diff --git a/www/phpvirtualbox-70/files/patch-endpoints_lib_vboxconnector.php b/www/phpvirtualbox-72/files/patch-endpoints_lib_vboxconnector.php index 3ce4bd1b67fa..3ce4bd1b67fa 100644 --- a/www/phpvirtualbox-70/files/patch-endpoints_lib_vboxconnector.php +++ b/www/phpvirtualbox-72/files/patch-endpoints_lib_vboxconnector.php diff --git a/www/phpvirtualbox-72/files/patch-endpoints_lib_vboxwebService-7.2.wsdl b/www/phpvirtualbox-72/files/patch-endpoints_lib_vboxwebService-7.2.wsdl new file mode 100644 index 000000000000..40b0ff619005 --- /dev/null +++ b/www/phpvirtualbox-72/files/patch-endpoints_lib_vboxwebService-7.2.wsdl @@ -0,0 +1,11 @@ +--- endpoints/lib/vboxwebService-7.2.wsdl.orig 2025-08-28 05:41:35 UTC ++++ endpoints/lib/vboxwebService-7.2.wsdl +@@ -5,7 +5,7 @@ --> + Generator: src/VBox/Main/webservice/websrv-wsdl-service.xsl + --> + <definitions xmlns:interface="urn:vbox" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:vbox="http://www.virtualbox.org/" xmlns="http://schemas.xmlsoap.org/wsdl/" name="VirtualBox" targetNamespace="http://www.virtualbox.org/Service"> +- <import location="vboxweb.wsdl" namespace="http://www.virtualbox.org/"/> ++ <import location="vboxweb-7.2.wsdl" namespace="http://www.virtualbox.org/"/> + <service name="vboxService"> + <port binding="vbox:vboxBinding" name="vboxServicePort"> + <soap:address location="http://localhost:18083/"/> diff --git a/www/phpvirtualbox/files/patch-panes_mediumEncryptionPasswords.html b/www/phpvirtualbox-72/files/patch-panes_mediumEncryptionPasswords.html index 3e8a7c62dfb7..3e8a7c62dfb7 100644 --- a/www/phpvirtualbox/files/patch-panes_mediumEncryptionPasswords.html +++ b/www/phpvirtualbox-72/files/patch-panes_mediumEncryptionPasswords.html diff --git a/www/phpvirtualbox-72/pkg-descr b/www/phpvirtualbox-72/pkg-descr new file mode 100644 index 000000000000..9d1a4ce377ff --- /dev/null +++ b/www/phpvirtualbox-72/pkg-descr @@ -0,0 +1,3 @@ +An open source, AJAX implementation of the VirtualBox user +interface written in PHP. As a modern web interface, it allows +you to access and control remote VirtualBox instances diff --git a/www/phpvirtualbox-72/pkg-plist b/www/phpvirtualbox-72/pkg-plist new file mode 100644 index 000000000000..7e75d2fc12d8 --- /dev/null +++ b/www/phpvirtualbox-72/pkg-plist @@ -0,0 +1,614 @@ +@group www +@owner www +%%WWWDIR%%/CHANGELOG.txt +%%WWWDIR%%/Dockerfile +%%WWWDIR%%/GPLv3.txt +%%WWWDIR%%/LICENSE.txt +%%WWWDIR%%/README.md +@sample %%ETCDIR%%/config.php.sample +%%WWWDIR%%/css/jquery-ui.css +%%WWWDIR%%/css/jquery.projectPlugins.css +%%WWWDIR%%/css/layout.css +%%WWWDIR%%/css/tipped.css +%%WWWDIR%%/docker-compose.yml +%%WWWDIR%%/endpoints/api.php +%%WWWDIR%%/endpoints/config.js +%%WWWDIR%%/endpoints/index.html +%%WWWDIR%%/endpoints/jqueryFileTree.php +%%WWWDIR%%/endpoints/language.php +%%WWWDIR%%/endpoints/lib/auth/ActiveDirectory.php +%%WWWDIR%%/endpoints/lib/auth/Builtin.php +%%WWWDIR%%/endpoints/lib/auth/LDAP.php +%%WWWDIR%%/endpoints/lib/auth/MySQL.php +%%WWWDIR%%/endpoints/lib/auth/OpenMediaVault.php +%%WWWDIR%%/endpoints/lib/auth/WebAuth.php +%%WWWDIR%%/endpoints/lib/auth/index.html +%%WWWDIR%%/endpoints/lib/authinterface.php +%%WWWDIR%%/endpoints/lib/config.php +%%WWWDIR%%/endpoints/lib/index.html +%%WWWDIR%%/endpoints/lib/language.php +%%WWWDIR%%/endpoints/lib/utils.php +%%WWWDIR%%/endpoints/lib/vboxServiceWrappers.php +%%WWWDIR%%/endpoints/lib/vboxconnector.php +%%WWWDIR%%/endpoints/lib/vboxweb-7.2.wsdl +%%WWWDIR%%/endpoints/lib/vboxwebService-7.2.wsdl +%%WWWDIR%%/endpoints/rdp.php +%%WWWDIR%%/endpoints/screen.php +%%WWWDIR%%/images/30white.png +%%WWWDIR%%/images/50px-Question_icon.svg.png +%%WWWDIR%%/images/50px-Warning_icon.svg.png +%%WWWDIR%%/images/arrow_grad_dn.png +%%WWWDIR%%/images/arrow_grad_left.png +%%WWWDIR%%/images/arrow_grad_right.png +%%WWWDIR%%/images/arrow_grad_up.png +%%WWWDIR%%/images/arrow_white_dn.png +%%WWWDIR%%/images/arrow_white_left.png +%%WWWDIR%%/images/arrow_white_right.png +%%WWWDIR%%/images/arrow_white_up.png +%%WWWDIR%%/images/donate.gif +%%WWWDIR%%/images/downArrow.png +%%WWWDIR%%/images/header_grad.png +%%WWWDIR%%/images/jquery-ui/ui-bg_flat_0_aaaaaa_40x100.png +%%WWWDIR%%/images/jquery-ui/ui-bg_flat_75_ffffff_40x100.png +%%WWWDIR%%/images/jquery-ui/ui-bg_glass_55_fbf9ee_1x400.png +%%WWWDIR%%/images/jquery-ui/ui-bg_glass_65_ffffff_1x400.png +%%WWWDIR%%/images/jquery-ui/ui-bg_glass_75_dadada_1x400.png +%%WWWDIR%%/images/jquery-ui/ui-bg_glass_75_e6e6e6_1x400.png +%%WWWDIR%%/images/jquery-ui/ui-bg_glass_95_fef1ec_1x400.png +%%WWWDIR%%/images/jquery-ui/ui-bg_highlight-soft_75_cccccc_1x100.png +%%WWWDIR%%/images/jquery-ui/ui-icons_222222_256x240.png +%%WWWDIR%%/images/jquery-ui/ui-icons_2e83ff_256x240.png +%%WWWDIR%%/images/jquery-ui/ui-icons_454545_256x240.png +%%WWWDIR%%/images/jquery-ui/ui-icons_888888_256x240.png +%%WWWDIR%%/images/jquery-ui/ui-icons_cd0a0a_256x240.png +%%WWWDIR%%/images/jqueryFileTree/directory.png +%%WWWDIR%%/images/jqueryFileTree/file.png +%%WWWDIR%%/images/jqueryFileTree/folder_open.png +%%WWWDIR%%/images/jqueryFileTree/spinner.gif +%%WWWDIR%%/images/monitor_bl.png +%%WWWDIR%%/images/monitor_bottom.png +%%WWWDIR%%/images/monitor_br.png +%%WWWDIR%%/images/monitor_glossy.png +%%WWWDIR%%/images/monitor_left.png +%%WWWDIR%%/images/monitor_right.png +%%WWWDIR%%/images/monitor_tl.png +%%WWWDIR%%/images/monitor_top.png +%%WWWDIR%%/images/monitor_tr.png +%%WWWDIR%%/images/rightArrow.png +%%WWWDIR%%/images/spinner.gif +%%WWWDIR%%/images/treeview-default-line.gif +%%WWWDIR%%/images/treeview-default.gif +%%WWWDIR%%/images/upArrow.png +%%WWWDIR%%/images/vbox/OSE/VirtualBox.icns +%%WWWDIR%%/images/vbox/OSE/VirtualBox_16px.png +%%WWWDIR%%/images/vbox/OSE/VirtualBox_20px.png +%%WWWDIR%%/images/vbox/OSE/VirtualBox_32px.png +%%WWWDIR%%/images/vbox/OSE/VirtualBox_40px.png +%%WWWDIR%%/images/vbox/OSE/VirtualBox_48px.png +%%WWWDIR%%/images/vbox/OSE/VirtualBox_64px.png +%%WWWDIR%%/images/vbox/OSE/VirtualBox_cube_42px.png +%%WWWDIR%%/images/vbox/OSE/VirtualBox_win.ico +%%WWWDIR%%/images/vbox/OSE/about.png +%%WWWDIR%%/images/vbox/OSE/about_16px.png +%%WWWDIR%%/images/vbox/acpi_16px.png +%%WWWDIR%%/images/vbox/acpi_disabled_16px.png +%%WWWDIR%%/images/vbox/add_host_iface_16px.png +%%WWWDIR%%/images/vbox/add_host_iface_disabled_16px.png +%%WWWDIR%%/images/vbox/arrow_down_10px.png +%%WWWDIR%%/images/vbox/arrow_left_10px.png +%%WWWDIR%%/images/vbox/arrow_right_10px.png +%%WWWDIR%%/images/vbox/arrow_up_10px.png +%%WWWDIR%%/images/vbox/attachment_16px.png +%%WWWDIR%%/images/vbox/attachment_add_16px.png +%%WWWDIR%%/images/vbox/attachment_add_disabled_16px.png +%%WWWDIR%%/images/vbox/attachment_disabled_16px.png +%%WWWDIR%%/images/vbox/attachment_remove_16px.png +%%WWWDIR%%/images/vbox/attachment_remove_disabled_16px.png +%%WWWDIR%%/images/vbox/bgnd_sel_2.jpg +%%WWWDIR%%/images/vbox/blank.gif +%%WWWDIR%%/images/vbox/cd_16px.png +%%WWWDIR%%/images/vbox/cd_32px.png +%%WWWDIR%%/images/vbox/cd_add_16px.png +%%WWWDIR%%/images/vbox/cd_add_disabled_16px.png +%%WWWDIR%%/images/vbox/cd_disabled_16px.png +%%WWWDIR%%/images/vbox/cd_disabled_32px.png +%%WWWDIR%%/images/vbox/cd_unmount_16px.png +%%WWWDIR%%/images/vbox/cd_unmount_dis_16px.png +%%WWWDIR%%/images/vbox/cd_unmount_disabled_16px.png +%%WWWDIR%%/images/vbox/chipset_16px.png +%%WWWDIR%%/images/vbox/chipset_disabled_16px.png +%%WWWDIR%%/images/vbox/close_16px.png +%%WWWDIR%%/images/vbox/controller_add_16px.png +%%WWWDIR%%/images/vbox/controller_add_disabled_16px.png +%%WWWDIR%%/images/vbox/controller_remove_16px.png +%%WWWDIR%%/images/vbox/controller_remove_disabled_16px.png +%%WWWDIR%%/images/vbox/cpu_16px.png +%%WWWDIR%%/images/vbox/description_16px.png +%%WWWDIR%%/images/vbox/description_disabled_16px.png +%%WWWDIR%%/images/vbox/description_edit_16px.png +%%WWWDIR%%/images/vbox/description_edit_disabled_16px.png +%%WWWDIR%%/images/vbox/discard_cur_state_16px.png +%%WWWDIR%%/images/vbox/discard_cur_state_22px.png +%%WWWDIR%%/images/vbox/discard_cur_state_dis_16px.png +%%WWWDIR%%/images/vbox/discard_cur_state_dis_22px.png +%%WWWDIR%%/images/vbox/discard_cur_state_snapshot_16px.png +%%WWWDIR%%/images/vbox/discard_cur_state_snapshot_22px.png +%%WWWDIR%%/images/vbox/discard_cur_state_snapshot_dis_16px.png +%%WWWDIR%%/images/vbox/discard_cur_state_snapshot_dis_22px.png +%%WWWDIR%%/images/vbox/diskimage_16px.png +%%WWWDIR%%/images/vbox/exit_16px.png +%%WWWDIR%%/images/vbox/expanding_collapsing_16px.png +%%WWWDIR%%/images/vbox/export_16px.png +%%WWWDIR%%/images/vbox/fd_16px.png +%%WWWDIR%%/images/vbox/fd_32px.png +%%WWWDIR%%/images/vbox/fd_add_16px.png +%%WWWDIR%%/images/vbox/fd_add_disabled_16px.png +%%WWWDIR%%/images/vbox/fd_disabled_16px.png +%%WWWDIR%%/images/vbox/fd_disabled_32px.png +%%WWWDIR%%/images/vbox/fd_unmount_16px.png +%%WWWDIR%%/images/vbox/fd_unmount_dis_16px.png +%%WWWDIR%%/images/vbox/floppy_16px.png +%%WWWDIR%%/images/vbox/floppy_add_16px.png +%%WWWDIR%%/images/vbox/floppy_add_disabled_16px.png +%%WWWDIR%%/images/vbox/floppy_collapse_16px.png +%%WWWDIR%%/images/vbox/floppy_expand_16px.png +%%WWWDIR%%/images/vbox/fullscreen_16px.png +%%WWWDIR%%/images/vbox/global_settings_16px.png +%%WWWDIR%%/images/vbox/global_settings_disabled_16px.png +%%WWWDIR%%/images/vbox/group_abstract_16px.png +%%WWWDIR%%/images/vbox/guesttools_16px.png +%%WWWDIR%%/images/vbox/guesttools_disabled_16px.png +%%WWWDIR%%/images/vbox/hd_16px.png +%%WWWDIR%%/images/vbox/hd_32px.png +%%WWWDIR%%/images/vbox/hd_add_16px.png +%%WWWDIR%%/images/vbox/hd_add_22px.png +%%WWWDIR%%/images/vbox/hd_add_disabled_16px.png +%%WWWDIR%%/images/vbox/hd_add_disabled_22px.png +%%WWWDIR%%/images/vbox/hd_disabled_16px.png +%%WWWDIR%%/images/vbox/hd_disabled_32px.png +%%WWWDIR%%/images/vbox/hd_new_16px.png +%%WWWDIR%%/images/vbox/hd_new_22px.png +%%WWWDIR%%/images/vbox/hd_new_disabled_16px.png +%%WWWDIR%%/images/vbox/hd_new_disabled_22px.png +%%WWWDIR%%/images/vbox/hd_release_16px.png +%%WWWDIR%%/images/vbox/hd_release_22px.png +%%WWWDIR%%/images/vbox/hd_release_disabled_16px.png +%%WWWDIR%%/images/vbox/hd_release_disabled_22px.png +%%WWWDIR%%/images/vbox/hd_remove_16px.png +%%WWWDIR%%/images/vbox/hd_remove_22px.png +%%WWWDIR%%/images/vbox/hd_remove_disabled_16px.png +%%WWWDIR%%/images/vbox/hd_remove_disabled_22px.png +%%WWWDIR%%/images/vbox/help_16px.png +%%WWWDIR%%/images/vbox/ide_16px.png +%%WWWDIR%%/images/vbox/ide_add_16px.png +%%WWWDIR%%/images/vbox/ide_add_disabled_16px.png +%%WWWDIR%%/images/vbox/ide_collapse_16px.png +%%WWWDIR%%/images/vbox/ide_expand_16px.png +%%WWWDIR%%/images/vbox/import_16px.png +%%WWWDIR%%/images/vbox/list_movedown_16px.png +%%WWWDIR%%/images/vbox/list_movedown_disabled_16px.png +%%WWWDIR%%/images/vbox/list_moveup_16px.png +%%WWWDIR%%/images/vbox/list_moveup_disabled_16px.png +%%WWWDIR%%/images/vbox/machine_16px.png +%%WWWDIR%%/images/vbox/machine_32px.png +%%WWWDIR%%/images/vbox/machine_abstract_16px.png +%%WWWDIR%%/images/vbox/machine_disabled_16px.png +%%WWWDIR%%/images/vbox/machine_disabled_32px.png +%%WWWDIR%%/images/vbox/menuArrow.gif +%%WWWDIR%%/images/vbox/menuArrow_w.gif +%%WWWDIR%%/images/vbox/name_16px.png +%%WWWDIR%%/images/vbox/node.gif +%%WWWDIR%%/images/vbox/nw_16px.png +%%WWWDIR%%/images/vbox/nw_32px.png +%%WWWDIR%%/images/vbox/nw_disabled_16px.png +%%WWWDIR%%/images/vbox/nw_disabled_32px.png +%%WWWDIR%%/images/vbox/os_archlinux.png +%%WWWDIR%%/images/vbox/os_archlinux_64.png +%%WWWDIR%%/images/vbox/os_debian.png +%%WWWDIR%%/images/vbox/os_debian_64.png +%%WWWDIR%%/images/vbox/os_dos.png +%%WWWDIR%%/images/vbox/os_fedora.png +%%WWWDIR%%/images/vbox/os_fedora_64.png +%%WWWDIR%%/images/vbox/os_freebsd.png +%%WWWDIR%%/images/vbox/os_freebsd_64.png +%%WWWDIR%%/images/vbox/os_gentoo.png +%%WWWDIR%%/images/vbox/os_gentoo_64.png +%%WWWDIR%%/images/vbox/os_jrockitve.png +%%WWWDIR%%/images/vbox/os_l4.png +%%WWWDIR%%/images/vbox/os_linux.png +%%WWWDIR%%/images/vbox/os_linux22.png +%%WWWDIR%%/images/vbox/os_linux24.png +%%WWWDIR%%/images/vbox/os_linux24_64.png +%%WWWDIR%%/images/vbox/os_linux26.png +%%WWWDIR%%/images/vbox/os_linux26_64.png +%%WWWDIR%%/images/vbox/os_linux_64.png +%%WWWDIR%%/images/vbox/os_linux_other.png +%%WWWDIR%%/images/vbox/os_macosx.png +%%WWWDIR%%/images/vbox/os_macosx_64.png +%%WWWDIR%%/images/vbox/os_mandriva.png +%%WWWDIR%%/images/vbox/os_mandriva_64.png +%%WWWDIR%%/images/vbox/os_netbsd.png +%%WWWDIR%%/images/vbox/os_netbsd_64.png +%%WWWDIR%%/images/vbox/os_netware.png +%%WWWDIR%%/images/vbox/os_openbsd.png +%%WWWDIR%%/images/vbox/os_openbsd_64.png +%%WWWDIR%%/images/vbox/os_opensuse.png +%%WWWDIR%%/images/vbox/os_opensuse_64.png +%%WWWDIR%%/images/vbox/os_oracle.png +%%WWWDIR%%/images/vbox/os_oracle_64.png +%%WWWDIR%%/images/vbox/os_oraclesolaris.png +%%WWWDIR%%/images/vbox/os_oraclesolaris_64.png +%%WWWDIR%%/images/vbox/os_os2_other.png +%%WWWDIR%%/images/vbox/os_os2ecs.png +%%WWWDIR%%/images/vbox/os_os2warp3.png +%%WWWDIR%%/images/vbox/os_os2warp4.png +%%WWWDIR%%/images/vbox/os_os2warp45.png +%%WWWDIR%%/images/vbox/os_other.png +%%WWWDIR%%/images/vbox/os_other_64.png +%%WWWDIR%%/images/vbox/os_qnx.png +%%WWWDIR%%/images/vbox/os_redhat.png +%%WWWDIR%%/images/vbox/os_redhat_64.png +%%WWWDIR%%/images/vbox/os_solaris.png +%%WWWDIR%%/images/vbox/os_solaris_64.png +%%WWWDIR%%/images/vbox/os_turbolinux.png +%%WWWDIR%%/images/vbox/os_turbolinux_64.png +%%WWWDIR%%/images/vbox/os_type_16px.png +%%WWWDIR%%/images/vbox/os_ubuntu.png +%%WWWDIR%%/images/vbox/os_ubuntu_64.png +%%WWWDIR%%/images/vbox/os_virtualbox.png +%%WWWDIR%%/images/vbox/os_win10.png +%%WWWDIR%%/images/vbox/os_win10_64.png +%%WWWDIR%%/images/vbox/os_win11_64.png +%%WWWDIR%%/images/vbox/os_win2k.png +%%WWWDIR%%/images/vbox/os_win2k12_64.png +%%WWWDIR%%/images/vbox/os_win2k16_64.png +%%WWWDIR%%/images/vbox/os_win2k19_64.png +%%WWWDIR%%/images/vbox/os_win2k3.png +%%WWWDIR%%/images/vbox/os_win2k3_64.png +%%WWWDIR%%/images/vbox/os_win2k8.png +%%WWWDIR%%/images/vbox/os_win2k8_64.png +%%WWWDIR%%/images/vbox/os_win31.png +%%WWWDIR%%/images/vbox/os_win7.png +%%WWWDIR%%/images/vbox/os_win7_64.png +%%WWWDIR%%/images/vbox/os_win8.png +%%WWWDIR%%/images/vbox/os_win81.png +%%WWWDIR%%/images/vbox/os_win81_64.png +%%WWWDIR%%/images/vbox/os_win8_64.png +%%WWWDIR%%/images/vbox/os_win95.png +%%WWWDIR%%/images/vbox/os_win98.png +%%WWWDIR%%/images/vbox/os_win_other.png +%%WWWDIR%%/images/vbox/os_win_other_64.png +%%WWWDIR%%/images/vbox/os_winme.png +%%WWWDIR%%/images/vbox/os_winnt4.png +%%WWWDIR%%/images/vbox/os_winvista.png +%%WWWDIR%%/images/vbox/os_winvista_64.png +%%WWWDIR%%/images/vbox/os_winxp.png +%%WWWDIR%%/images/vbox/os_winxp_64.png +%%WWWDIR%%/images/vbox/os_xandros.png +%%WWWDIR%%/images/vbox/os_xandros_64.png +%%WWWDIR%%/images/vbox/parallel_port_16px.png +%%WWWDIR%%/images/vbox/preview_empty_228x168px.png +%%WWWDIR%%/images/vbox/preview_full_228x168px.png +%%WWWDIR%%/images/vbox/progress_clone_90px.png +%%WWWDIR%%/images/vbox/progress_delete_90px.png +%%WWWDIR%%/images/vbox/progress_export_90px.png +%%WWWDIR%%/images/vbox/progress_import_90px.png +%%WWWDIR%%/images/vbox/progress_install_guest_additions_90px.png +%%WWWDIR%%/images/vbox/progress_media_create_90px.png +%%WWWDIR%%/images/vbox/progress_media_delete_90px.png +%%WWWDIR%%/images/vbox/progress_poweroff_90px.png +%%WWWDIR%%/images/vbox/progress_snapshot_create_90px.png +%%WWWDIR%%/images/vbox/progress_snapshot_discard_90px.png +%%WWWDIR%%/images/vbox/progress_snapshot_restore_90px.png +%%WWWDIR%%/images/vbox/progress_start_90px.png +%%WWWDIR%%/images/vbox/progress_state_restore_90px.png +%%WWWDIR%%/images/vbox/progress_state_save_90px.png +%%WWWDIR%%/images/vbox/ram_16px.png +%%WWWDIR%%/images/vbox/refresh_16px.png +%%WWWDIR%%/images/vbox/refresh_22px.png +%%WWWDIR%%/images/vbox/refresh_32px.png +%%WWWDIR%%/images/vbox/refresh_disabled_16px.png +%%WWWDIR%%/images/vbox/refresh_disabled_22px.png +%%WWWDIR%%/images/vbox/refresh_disabled_32px.png +%%WWWDIR%%/images/vbox/register_16px.png +%%WWWDIR%%/images/vbox/remove_host_iface_16px.png +%%WWWDIR%%/images/vbox/remove_host_iface_disabled_16px.png +%%WWWDIR%%/images/vbox/sata_16px.png +%%WWWDIR%%/images/vbox/sata_add_16px.png +%%WWWDIR%%/images/vbox/sata_add_disabled_16px.png +%%WWWDIR%%/images/vbox/sata_collapse_16px.png +%%WWWDIR%%/images/vbox/sata_expand_16px.png +%%WWWDIR%%/images/vbox/scsi_16px.png +%%WWWDIR%%/images/vbox/scsi_add_16px.png +%%WWWDIR%%/images/vbox/scsi_add_disabled_16px.png +%%WWWDIR%%/images/vbox/scsi_collapse_16px.png +%%WWWDIR%%/images/vbox/scsi_expand_16px.png +%%WWWDIR%%/images/vbox/select_file_16px.png +%%WWWDIR%%/images/vbox/select_file_disabled_16px.png +%%WWWDIR%%/images/vbox/serial_port_16px.png +%%WWWDIR%%/images/vbox/serial_port_disabled_16px.png +%%WWWDIR%%/images/vbox/sf_16px.png +%%WWWDIR%%/images/vbox/sf_add_16px.png +%%WWWDIR%%/images/vbox/sf_add_disabled_16px.png +%%WWWDIR%%/images/vbox/sf_disabled_16px.png +%%WWWDIR%%/images/vbox/sf_edit_16px.png +%%WWWDIR%%/images/vbox/sf_edit_disabled_16px.png +%%WWWDIR%%/images/vbox/sf_remove_16px.png +%%WWWDIR%%/images/vbox/sf_remove_disabled_16px.png +%%WWWDIR%%/images/vbox/sf_settings_16px.png +%%WWWDIR%%/images/vbox/sf_settings_disabled_16px.png +%%WWWDIR%%/images/vbox/site_16px.png +%%WWWDIR%%/images/vbox/site_32px.png +%%WWWDIR%%/images/vbox/snapshot_delete_16px.png +%%WWWDIR%%/images/vbox/snapshot_delete_22px.png +%%WWWDIR%%/images/vbox/snapshot_delete_disabled_16px.png +%%WWWDIR%%/images/vbox/snapshot_delete_disabled_22px.png +%%WWWDIR%%/images/vbox/snapshot_offline_16px.png +%%WWWDIR%%/images/vbox/snapshot_online_16px.png +%%WWWDIR%%/images/vbox/snapshot_restore_16px.png +%%WWWDIR%%/images/vbox/snapshot_restore_22px.png +%%WWWDIR%%/images/vbox/snapshot_restore_disabled_16px.png +%%WWWDIR%%/images/vbox/snapshot_restore_disabled_22px.png +%%WWWDIR%%/images/vbox/snapshot_show_details_16px.png +%%WWWDIR%%/images/vbox/snapshot_show_details_22px.png +%%WWWDIR%%/images/vbox/snapshot_show_details_disabled_16px.png +%%WWWDIR%%/images/vbox/snapshot_show_details_disabled_22px.png +%%WWWDIR%%/images/vbox/snapshot_take_16px.png +%%WWWDIR%%/images/vbox/snapshot_take_22px.png +%%WWWDIR%%/images/vbox/snapshot_take_disabled_16px.png +%%WWWDIR%%/images/vbox/snapshot_take_disabled_22px.png +%%WWWDIR%%/images/vbox/sort_16px.png +%%WWWDIR%%/images/vbox/sort_disabled_16px.png +%%WWWDIR%%/images/vbox/sound_16px.png +%%WWWDIR%%/images/vbox/sound_disabled_16px.png +%%WWWDIR%%/images/vbox/state_aborted_16px.png +%%WWWDIR%%/images/vbox/state_discarding_16px.png +%%WWWDIR%%/images/vbox/state_paused_16px.png +%%WWWDIR%%/images/vbox/state_powered_off_16px.png +%%WWWDIR%%/images/vbox/state_restoring_16px.png +%%WWWDIR%%/images/vbox/state_running_16px.png +%%WWWDIR%%/images/vbox/state_saved_16px.png +%%WWWDIR%%/images/vbox/state_saving_16px.png +%%WWWDIR%%/images/vbox/state_stuck_16px.png +%%WWWDIR%%/images/vbox/status_check_16px.png +%%WWWDIR%%/images/vbox/status_error_16px.png +%%WWWDIR%%/images/vbox/usb_16px.png +%%WWWDIR%%/images/vbox/usb_add_16px.png +%%WWWDIR%%/images/vbox/usb_add_disabled_16px.png +%%WWWDIR%%/images/vbox/usb_collapse_16px.png +%%WWWDIR%%/images/vbox/usb_disabled_16px.png +%%WWWDIR%%/images/vbox/usb_expand_16px.png +%%WWWDIR%%/images/vbox/usb_filter_edit_16px.png +%%WWWDIR%%/images/vbox/usb_filter_edit_disabled_16px.png +%%WWWDIR%%/images/vbox/usb_movedown_16px.png +%%WWWDIR%%/images/vbox/usb_movedown_disabled_16px.png +%%WWWDIR%%/images/vbox/usb_moveup_16px.png +%%WWWDIR%%/images/vbox/usb_moveup_disabled_16px.png +%%WWWDIR%%/images/vbox/usb_new_16px.png +%%WWWDIR%%/images/vbox/usb_new_disabled_16px.png +%%WWWDIR%%/images/vbox/usb_remove_16px.png +%%WWWDIR%%/images/vbox/usb_remove_disabled_16px.png +%%WWWDIR%%/images/vbox/usb_unavailable_16px.png +%%WWWDIR%%/images/vbox/usb_unavailable_disabled_16px.png +%%WWWDIR%%/images/vbox/vdm_add_16px.png +%%WWWDIR%%/images/vbox/vdm_add_22px.png +%%WWWDIR%%/images/vbox/vdm_add_disabled_16px.png +%%WWWDIR%%/images/vbox/vdm_add_disabled_22px.png +%%WWWDIR%%/images/vbox/vdm_new_16px.png +%%WWWDIR%%/images/vbox/vdm_new_22px.png +%%WWWDIR%%/images/vbox/vdm_new_disabled_16px.png +%%WWWDIR%%/images/vbox/vdm_new_disabled_22px.png +%%WWWDIR%%/images/vbox/vdm_release_16px.png +%%WWWDIR%%/images/vbox/vdm_release_22px.png +%%WWWDIR%%/images/vbox/vdm_release_disabled_16px.png +%%WWWDIR%%/images/vbox/vdm_release_disabled_22px.png +%%WWWDIR%%/images/vbox/vdm_remove_16px.png +%%WWWDIR%%/images/vbox/vdm_remove_22px.png +%%WWWDIR%%/images/vbox/vdm_remove_disabled_16px.png +%%WWWDIR%%/images/vbox/vdm_remove_disabled_22px.png +%%WWWDIR%%/images/vbox/video_capture_16px.png +%%WWWDIR%%/images/vbox/video_capture_disabled_16px.png +%%WWWDIR%%/images/vbox/video_capture_on_16px.png +%%WWWDIR%%/images/vbox/video_capture_on_disabled_16px.png +%%WWWDIR%%/images/vbox/video_capture_settings_16px.png +%%WWWDIR%%/images/vbox/virtio_scsi_add_16px.png +%%WWWDIR%%/images/vbox/virtio_scsi_add_disabled_16px.png +%%WWWDIR%%/images/vbox/virtio_scsi_collapse_16px.png +%%WWWDIR%%/images/vbox/virtio_scsi_expand_16px.png +%%WWWDIR%%/images/vbox/virtualbox-hdd.png +%%WWWDIR%%/images/vbox/virtualbox-ova.png +%%WWWDIR%%/images/vbox/virtualbox-ovf.png +%%WWWDIR%%/images/vbox/virtualbox-vbox.png +%%WWWDIR%%/images/vbox/virtualbox-vdi.png +%%WWWDIR%%/images/vbox/virtualbox-vhd.png +%%WWWDIR%%/images/vbox/virtualbox-vmdk.png +%%WWWDIR%%/images/vbox/vm_add_16px.png +%%WWWDIR%%/images/vbox/vm_clone_16px.png +%%WWWDIR%%/images/vbox/vm_clone_22px.png +%%WWWDIR%%/images/vbox/vm_clone_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_clone_disabled_22px.png +%%WWWDIR%%/images/vbox/vm_delete_16px.png +%%WWWDIR%%/images/vbox/vm_delete_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_discard_16px.png +%%WWWDIR%%/images/vbox/vm_discard_32px.png +%%WWWDIR%%/images/vbox/vm_discard_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_discard_disabled_32px.png +%%WWWDIR%%/images/vbox/vm_group_create_16px.png +%%WWWDIR%%/images/vbox/vm_group_create_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_group_name_16px.png +%%WWWDIR%%/images/vbox/vm_group_name_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_group_remove_16px.png +%%WWWDIR%%/images/vbox/vm_group_remove_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_new_16px.png +%%WWWDIR%%/images/vbox/vm_new_32px.png +%%WWWDIR%%/images/vbox/vm_new_disabled_32px.png +%%WWWDIR%%/images/vbox/vm_open_filemanager_16px.png +%%WWWDIR%%/images/vbox/vm_open_filemanager_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_pause_16px.png +%%WWWDIR%%/images/vbox/vm_pause_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_pause_on_16px.png +%%WWWDIR%%/images/vbox/vm_pause_on_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_poweroff_16px.png +%%WWWDIR%%/images/vbox/vm_poweroff_32px.png +%%WWWDIR%%/images/vbox/vm_poweroff_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_poweroff_disabled_32px.png +%%WWWDIR%%/images/vbox/vm_reset_16px.png +%%WWWDIR%%/images/vbox/vm_reset_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_save_state_16px.png +%%WWWDIR%%/images/vbox/vm_save_state_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_settings_16px.png +%%WWWDIR%%/images/vbox/vm_settings_32px.png +%%WWWDIR%%/images/vbox/vm_settings_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_settings_disabled_32px.png +%%WWWDIR%%/images/vbox/vm_show_logs_16px.png +%%WWWDIR%%/images/vbox/vm_show_logs_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_shutdown_16px.png +%%WWWDIR%%/images/vbox/vm_shutdown_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_start_16px.png +%%WWWDIR%%/images/vbox/vm_start_32px.png +%%WWWDIR%%/images/vbox/vm_start_disabled_16px.png +%%WWWDIR%%/images/vbox/vm_start_disabled_32px.png +%%WWWDIR%%/images/vbox/vmw_clone_bg.png +%%WWWDIR%%/images/vbox/vmw_first_run_bg.png +%%WWWDIR%%/images/vbox/vmw_new_harddisk_bg.png +%%WWWDIR%%/images/vbox/vmw_new_welcome_bg.png +%%WWWDIR%%/images/vbox/vmw_ovf_export_bg.png +%%WWWDIR%%/images/vbox/vmw_ovf_import_bg.png +%%WWWDIR%%/images/vbox/vrdp_16px.png +%%WWWDIR%%/images/vbox/vrdp_32px.png +%%WWWDIR%%/images/vbox/vrdp_disabled_16px.png +%%WWWDIR%%/images/vbox/vrdp_disabled_32px.png +%%WWWDIR%%/images/vbox/vrdp_on_16px.png +%%WWWDIR%%/images/vbox/vrdp_on_disabled_16px.png +%%WWWDIR%%/images/vbox/vtx_amdv_16px.png +%%WWWDIR%%/images/vbox/vtx_amdv_disabled_16px.png +%%WWWDIR%%/images/vbox/welcome.png +%%WWWDIR%%/images/wizard_bg.png +%%WWWDIR%%/index.html +%%WWWDIR%%/js/canvasimages.js +%%WWWDIR%%/js/chooser.js +%%WWWDIR%%/js/datamediator.js +%%WWWDIR%%/js/dialogs.js +%%WWWDIR%%/js/eventlistener.js +%%WWWDIR%%/js/jquery-3.7.1.min.js +%%WWWDIR%%/js/jquery-ui-1.14.1.min.js +%%WWWDIR%%/js/jquery.jec-1.3.1.js +%%WWWDIR%%/js/jquery.projectPlugins.js +%%WWWDIR%%/js/jquery.scrollTo-min.js +%%WWWDIR%%/js/jquery.tipped-2.1b.min.js +%%WWWDIR%%/js/phpvirtualbox.js +%%WWWDIR%%/js/utils.js +%%WWWDIR%%/languages/cs.xml +%%WWWDIR%%/languages/da.xml +%%WWWDIR%%/languages/de.xml +%%WWWDIR%%/languages/en.xml +%%WWWDIR%%/languages/es.xml +%%WWWDIR%%/languages/fr.xml +%%WWWDIR%%/languages/it.xml +%%WWWDIR%%/languages/ja.xml +%%WWWDIR%%/languages/languages.txt +%%WWWDIR%%/languages/nl.xml +%%WWWDIR%%/languages/pl.xml +%%WWWDIR%%/languages/pt_br.xml +%%WWWDIR%%/languages/ro.xml +%%WWWDIR%%/languages/ru.xml +%%WWWDIR%%/languages/source/ParseVboxLang.inc +%%WWWDIR%%/languages/source/ParseVboxLang.php +%%WWWDIR%%/languages/source/bg.dat +%%WWWDIR%%/languages/source/ca.dat +%%WWWDIR%%/languages/source/ca_va.dat +%%WWWDIR%%/languages/source/cs.dat +%%WWWDIR%%/languages/source/da.dat +%%WWWDIR%%/languages/source/de.dat +%%WWWDIR%%/languages/source/el.dat +%%WWWDIR%%/languages/source/en.dat +%%WWWDIR%%/languages/source/es.dat +%%WWWDIR%%/languages/source/eu.dat +%%WWWDIR%%/languages/source/fa.dat +%%WWWDIR%%/languages/source/fi.dat +%%WWWDIR%%/languages/source/fr.dat +%%WWWDIR%%/languages/source/gl.dat +%%WWWDIR%%/languages/source/he.dat +%%WWWDIR%%/languages/source/hr_hr.dat +%%WWWDIR%%/languages/source/hu.dat +%%WWWDIR%%/languages/source/id.dat +%%WWWDIR%%/languages/source/it.dat +%%WWWDIR%%/languages/source/ja.dat +%%WWWDIR%%/languages/source/km_kh.dat +%%WWWDIR%%/languages/source/ko.dat +%%WWWDIR%%/languages/source/lt.dat +%%WWWDIR%%/languages/source/nl.dat +%%WWWDIR%%/languages/source/pl.dat +%%WWWDIR%%/languages/source/pt.dat +%%WWWDIR%%/languages/source/pt_br.dat +%%WWWDIR%%/languages/source/ro.dat +%%WWWDIR%%/languages/source/ru.dat +%%WWWDIR%%/languages/source/sk.dat +%%WWWDIR%%/languages/source/sl.dat +%%WWWDIR%%/languages/source/sr.dat +%%WWWDIR%%/languages/source/sv.dat +%%WWWDIR%%/languages/source/th.dat +%%WWWDIR%%/languages/source/tr.dat +%%WWWDIR%%/languages/source/uk.dat +%%WWWDIR%%/languages/source/zh_cn.dat +%%WWWDIR%%/languages/source/zh_tw.dat +%%WWWDIR%%/languages/zh_cn.xml +%%WWWDIR%%/languages/zh_tw.xml +%%WWWDIR%%/packaging/install-scripts/install.bash +%%WWWDIR%%/packaging/install-scripts/uninstall.bash +%%WWWDIR%%/panes/about.html +%%WWWDIR%%/panes/chooser.html +%%WWWDIR%%/panes/guestNetAdapters.html +%%WWWDIR%%/panes/login.html +%%WWWDIR%%/panes/mediumEncryptionPasswords.html +%%WWWDIR%%/panes/settingsAudio.html +%%WWWDIR%%/panes/settingsDisplay.html +%%WWWDIR%%/panes/settingsGeneral.html +%%WWWDIR%%/panes/settingsGlobalGeneral.html +%%WWWDIR%%/panes/settingsGlobalLanguage.html +%%WWWDIR%%/panes/settingsGlobalNetwork.html +%%WWWDIR%%/panes/settingsGlobalNetworkNATPortForwarding.html +%%WWWDIR%%/panes/settingsGlobalUsers.html +%%WWWDIR%%/panes/settingsNetwork.html +%%WWWDIR%%/panes/settingsParallelPorts.html +%%WWWDIR%%/panes/settingsPortForwarding.html +%%WWWDIR%%/panes/settingsSerialPorts.html +%%WWWDIR%%/panes/settingsSharedFolders.html +%%WWWDIR%%/panes/settingsStorage.html +%%WWWDIR%%/panes/settingsSystem.html +%%WWWDIR%%/panes/settingsUSB.html +%%WWWDIR%%/panes/tabVMConsole.html +%%WWWDIR%%/panes/tabVMConsoleRDP.html +%%WWWDIR%%/panes/tabVMConsoleVNC.html +%%WWWDIR%%/panes/tabVMDetails.html +%%WWWDIR%%/panes/tabVMSnapshots.html +%%WWWDIR%%/panes/tabs.html +%%WWWDIR%%/panes/toolbar.html +%%WWWDIR%%/panes/topmenu.html +%%WWWDIR%%/panes/userEdit.html +%%WWWDIR%%/panes/vmlogs.html +%%WWWDIR%%/panes/vmm.html +%%WWWDIR%%/panes/vmmISCSI.html +%%WWWDIR%%/panes/vmmModify.html +%%WWWDIR%%/panes/wizardCloneVM.html +%%WWWDIR%%/panes/wizardCloneVMAdvanced.html +%%WWWDIR%%/panes/wizardCopyHD.html +%%WWWDIR%%/panes/wizardCopyHDAdvanced.html +%%WWWDIR%%/panes/wizardExportAppliance.html +%%WWWDIR%%/panes/wizardExportApplianceAdvanced.html +%%WWWDIR%%/panes/wizardFirstRun.html +%%WWWDIR%%/panes/wizardImportAppliance.html +%%WWWDIR%%/panes/wizardImportApplianceAdvanced.html +%%WWWDIR%%/panes/wizardNewHD.html +%%WWWDIR%%/panes/wizardNewHDAdvanced.html +%%WWWDIR%%/panes/wizardNewVM.html +%%WWWDIR%%/panes/wizardNewVMAdvanced.html +%%WWWDIR%%/phpvirtualbox-72.conf +%%WWWDIR%%/rdpweb/RDPClientUI.swf +%%WWWDIR%%/rdpweb/license_3rd.txt +%%WWWDIR%%/rdpweb/swfobject.js +%%WWWDIR%%/rdpweb/webclient.js +%%WWWDIR%%/rdpweb/webclient3.html +%%WWWDIR%%/recovery.php-disabled +%%WWWDIR%%/tightvnc/VncViewer.jar +%%WWWDIR%%/vboxinit diff --git a/www/phpvirtualbox-legacy/Makefile b/www/phpvirtualbox-legacy/Makefile index 5c7c939fe8a5..d1d886b7c58c 100644 --- a/www/phpvirtualbox-legacy/Makefile +++ b/www/phpvirtualbox-legacy/Makefile @@ -1,6 +1,6 @@ PORTNAME= phpvirtualbox DISTVERSION= 5.2-1 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= www SUFFIX= -legacy PKGNAMESUFFIX= ${SUFFIX}${PHP_PKGNAMESUFFIX} @@ -18,8 +18,7 @@ USE_PHP= session simplexml soap xml ETCDIR= ${WWWDIR} WWWDIR= ${PREFIX}/www/${PORTNAME}${SUFFIX} -EXTRA_PATCHES+= ${.CURDIR}/../phpvirtualbox/files/patch-php8 \ - ${.CURDIR}/../phpvirtualbox/files/patch-panes_mediumEncryptionPasswords.html +EXTRA_PATCHES+= ${.CURDIR}/../phpvirtualbox-72/files/patch-panes_mediumEncryptionPasswords.html NO_ARCH= yes NO_BUILD= yes PORTSCOUT= limit:^5\. @@ -29,6 +28,7 @@ post-patch: @${REINPLACE_CMD} -e 's#Alias /phpvirtualbox#Alias /phpvirtualbox-legacy#' \ -e 's#/usr/share/phpvirtualbox#${WWWDIR}#g' \ ${WRKSRC}/phpvirtualbox-legacy.conf + @${REINPLACE_CMD} -e 's#\r#\n#g' ${WRKSRC}/languages/zh_tw.xml do-install: ${MKDIR} ${STAGEDIR}${WWWDIR} diff --git a/www/phpvirtualbox/files/patch-php8 b/www/phpvirtualbox-legacy/files/patch-php8 index 52fe5a6a5b12..52fe5a6a5b12 100644 --- a/www/phpvirtualbox/files/patch-php8 +++ b/www/phpvirtualbox-legacy/files/patch-php8 diff --git a/www/phpvirtualbox/Makefile b/www/phpvirtualbox/Makefile index a0894d3b098f..bcd01b010d36 100644 --- a/www/phpvirtualbox/Makefile +++ b/www/phpvirtualbox/Makefile @@ -1,6 +1,6 @@ PORTNAME= phpvirtualbox DISTVERSION= 6.1 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= www PKGNAMESUFFIX= ${PHP_PKGNAMESUFFIX} @@ -17,6 +17,8 @@ GH_TAGNAME= cf82d58f2 USE_PHP= session simplexml soap xml ETCDIR= ${WWWDIR} +EXTRA_PATCHES+= ${.CURDIR}/../phpvirtualbox-72/files/patch-panes_mediumEncryptionPasswords.html \ + ${.CURDIR}/../phpvirtualbox-legacy/files/patch-php8 NO_ARCH= yes NO_BUILD= yes PORTSCOUT= limit:^6\. @@ -24,6 +26,7 @@ PORTSCOUT= limit:^6\. post-patch: @${REINPLACE_CMD} -e 's#/usr/share/phpvirtualbox#${WWWDIR}#g' \ ${WRKSRC}/phpvirtualbox.conf + @${REINPLACE_CMD} -e 's#\r#\n#g' ${WRKSRC}/languages/zh_tw.xml do-install: ${MKDIR} ${STAGEDIR}${WWWDIR} diff --git a/www/pocket-id/Makefile b/www/pocket-id/Makefile index 6732c6454467..ab8b55ae4fc6 100644 --- a/www/pocket-id/Makefile +++ b/www/pocket-id/Makefile @@ -1,6 +1,6 @@ PORTNAME= pocket-id DISTVERSIONPREFIX= v -DISTVERSION= 1.9.1 +DISTVERSION= 1.10.0 CATEGORIES= www MASTER_SITES= LOCAL/dtxdf/${PORTNAME}/ DISTFILES= ${PORTNAME}-${DISTVERSIONPREFIX}${DISTVERSION}.frontend${EXTRACT_SUFX} diff --git a/www/pocket-id/distinfo b/www/pocket-id/distinfo index 19b1a503227e..2fed86b8e729 100644 --- a/www/pocket-id/distinfo +++ b/www/pocket-id/distinfo @@ -1,7 +1,7 @@ -TIMESTAMP = 1756073537 -SHA256 (go/www_pocket-id/pocket-id-pocket-id-v1.9.1_GH0/pocket-id-v1.9.1.frontend.tar.gz) = 308477aa87321dc17323f77a8f48ed3cc5ce3b9c99b529648d35490d61e36d20 -SIZE (go/www_pocket-id/pocket-id-pocket-id-v1.9.1_GH0/pocket-id-v1.9.1.frontend.tar.gz) = 1496166 -SHA256 (go/www_pocket-id/pocket-id-pocket-id-v1.9.1_GH0/go.mod) = 407629c8229cd31ee5221adda1ac6926f22a6e1f938b86f73d7b95f3402db75d -SIZE (go/www_pocket-id/pocket-id-pocket-id-v1.9.1_GH0/go.mod) = 7114 -SHA256 (go/www_pocket-id/pocket-id-pocket-id-v1.9.1_GH0/pocket-id-pocket-id-v1.9.1_GH0.tar.gz) = e79cb839ff1ac04692fbee3c95e233c8723f6318ed4cd0251194b8fec6bf4fd9 -SIZE (go/www_pocket-id/pocket-id-pocket-id-v1.9.1_GH0/pocket-id-pocket-id-v1.9.1_GH0.tar.gz) = 5637458 +TIMESTAMP = 1756427787 +SHA256 (go/www_pocket-id/pocket-id-pocket-id-v1.10.0_GH0/pocket-id-v1.10.0.frontend.tar.gz) = d316b82be00d698a820ac115663ae35f6485b885094ca47d430eec174f8cadb2 +SIZE (go/www_pocket-id/pocket-id-pocket-id-v1.10.0_GH0/pocket-id-v1.10.0.frontend.tar.gz) = 1488185 +SHA256 (go/www_pocket-id/pocket-id-pocket-id-v1.10.0_GH0/go.mod) = 407629c8229cd31ee5221adda1ac6926f22a6e1f938b86f73d7b95f3402db75d +SIZE (go/www_pocket-id/pocket-id-pocket-id-v1.10.0_GH0/go.mod) = 7114 +SHA256 (go/www_pocket-id/pocket-id-pocket-id-v1.10.0_GH0/pocket-id-pocket-id-v1.10.0_GH0.tar.gz) = f6fc8cb49b65eae09ee9f46122d25557d141279970b157c5e29141c0080d969c +SIZE (go/www_pocket-id/pocket-id-pocket-id-v1.10.0_GH0/pocket-id-pocket-id-v1.10.0_GH0.tar.gz) = 5638841 diff --git a/www/py-dj51-django-choices-field/Makefile b/www/py-dj51-django-choices-field/Makefile index c0090e2af7de..738a07fce073 100644 --- a/www/py-dj51-django-choices-field/Makefile +++ b/www/py-dj51-django-choices-field/Makefile @@ -1,5 +1,5 @@ PORTNAME= django-choices-field -DISTVERSION= 2.3.0 +DISTVERSION= 3.0.1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj51- diff --git a/www/py-dj51-django-choices-field/distinfo b/www/py-dj51-django-choices-field/distinfo index 7f61f9ac7dde..c6c4cefdf5ca 100644 --- a/www/py-dj51-django-choices-field/distinfo +++ b/www/py-dj51-django-choices-field/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711885476 -SHA256 (django_choices_field-2.3.0.tar.gz) = bb0c85c79737ab98bfb9c0d9ddf98010d612c0585be767890e25fd192c3d1694 -SIZE (django_choices_field-2.3.0.tar.gz) = 6448 +TIMESTAMP = 1756398970 +SHA256 (django_choices_field-3.0.1.tar.gz) = 5b45f5d3aa2ef3c30a7ff296ac7acc743097fb3185c78f8c4256c6a73854ab20 +SIZE (django_choices_field-3.0.1.tar.gz) = 5717 diff --git a/www/py-dj52-django-choices-field/Makefile b/www/py-dj52-django-choices-field/Makefile index 355a02ed97cb..5f4feebdf60d 100644 --- a/www/py-dj52-django-choices-field/Makefile +++ b/www/py-dj52-django-choices-field/Makefile @@ -1,5 +1,5 @@ PORTNAME= django-choices-field -DISTVERSION= 2.3.0 +DISTVERSION= 3.0.1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}dj52- diff --git a/www/py-dj52-django-choices-field/distinfo b/www/py-dj52-django-choices-field/distinfo index 7f61f9ac7dde..c6c4cefdf5ca 100644 --- a/www/py-dj52-django-choices-field/distinfo +++ b/www/py-dj52-django-choices-field/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711885476 -SHA256 (django_choices_field-2.3.0.tar.gz) = bb0c85c79737ab98bfb9c0d9ddf98010d612c0585be767890e25fd192c3d1694 -SIZE (django_choices_field-2.3.0.tar.gz) = 6448 +TIMESTAMP = 1756398970 +SHA256 (django_choices_field-3.0.1.tar.gz) = 5b45f5d3aa2ef3c30a7ff296ac7acc743097fb3185c78f8c4256c6a73854ab20 +SIZE (django_choices_field-3.0.1.tar.gz) = 5717 diff --git a/www/py-django-choices-field/Makefile b/www/py-django-choices-field/Makefile index ea749d189df7..bed9bf22985c 100644 --- a/www/py-django-choices-field/Makefile +++ b/www/py-django-choices-field/Makefile @@ -1,6 +1,5 @@ PORTNAME= django-choices-field -DISTVERSION= 2.3.0 -PORTREVISION= 1 +DISTVERSION= 3.0.1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-django-choices-field/distinfo b/www/py-django-choices-field/distinfo index 7f61f9ac7dde..c6c4cefdf5ca 100644 --- a/www/py-django-choices-field/distinfo +++ b/www/py-django-choices-field/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1711885476 -SHA256 (django_choices_field-2.3.0.tar.gz) = bb0c85c79737ab98bfb9c0d9ddf98010d612c0585be767890e25fd192c3d1694 -SIZE (django_choices_field-2.3.0.tar.gz) = 6448 +TIMESTAMP = 1756398970 +SHA256 (django_choices_field-3.0.1.tar.gz) = 5b45f5d3aa2ef3c30a7ff296ac7acc743097fb3185c78f8c4256c6a73854ab20 +SIZE (django_choices_field-3.0.1.tar.gz) = 5717 diff --git a/www/py-djangorestframework/Makefile b/www/py-djangorestframework/Makefile index 355d17e95537..c1906afb909e 100644 --- a/www/py-djangorestframework/Makefile +++ b/www/py-djangorestframework/Makefile @@ -1,5 +1,5 @@ PORTNAME= djangorestframework -DISTVERSION= 3.16.0 +DISTVERSION= 3.16.1 PORTEPOCH= 1 CATEGORIES= www python MASTER_SITES= PYPI diff --git a/www/py-djangorestframework/distinfo b/www/py-djangorestframework/distinfo index c336e0e97c68..d9123228b38d 100644 --- a/www/py-djangorestframework/distinfo +++ b/www/py-djangorestframework/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1744359953 -SHA256 (djangorestframework-3.16.0.tar.gz) = f022ff46613584de994c0c6a4aebbace5fd700555fbe9d33b865ebf173eba6c9 -SIZE (djangorestframework-3.16.0.tar.gz) = 1068408 +TIMESTAMP = 1755333901 +SHA256 (djangorestframework-3.16.1.tar.gz) = 166809528b1aced0a17dc66c24492af18049f2c9420dbd0be29422029cfc3ff7 +SIZE (djangorestframework-3.16.1.tar.gz) = 1089735 diff --git a/www/py-httpx-retries/Makefile b/www/py-httpx-retries/Makefile index bc3702d822c4..92f0036b875d 100644 --- a/www/py-httpx-retries/Makefile +++ b/www/py-httpx-retries/Makefile @@ -1,5 +1,5 @@ PORTNAME= httpx-retries -DISTVERSION= 0.4.0 +DISTVERSION= 0.4.1 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-httpx-retries/distinfo b/www/py-httpx-retries/distinfo index 4ef455958702..727a38088bfc 100644 --- a/www/py-httpx-retries/distinfo +++ b/www/py-httpx-retries/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1747637137 -SHA256 (httpx_retries-0.4.0.tar.gz) = a7aa513e3f1eef347aac69adecfad9f421210a84df88c88f935ec130f98e6642 -SIZE (httpx_retries-0.4.0.tar.gz) = 12571 +TIMESTAMP = 1756495143 +SHA256 (httpx_retries-0.4.1.tar.gz) = 008c10a57ee73665fa82bfa28466c736da5214b31ee6eacec8707c36493ed152 +SIZE (httpx_retries-0.4.1.tar.gz) = 12588 diff --git a/www/py-nicegui/Makefile b/www/py-nicegui/Makefile index fc34341ad718..fce00807ef93 100644 --- a/www/py-nicegui/Makefile +++ b/www/py-nicegui/Makefile @@ -1,5 +1,5 @@ PORTNAME= nicegui -DISTVERSION= 2.23.0 +DISTVERSION= 2.23.3 CATEGORIES= www graphics python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} diff --git a/www/py-nicegui/distinfo b/www/py-nicegui/distinfo index 685aece27ba5..4ab63ccd99a0 100644 --- a/www/py-nicegui/distinfo +++ b/www/py-nicegui/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1755889052 -SHA256 (nicegui-2.23.0.tar.gz) = 8180fcba79515fa14ce03977c31282aa17627822163d482f591020ff93b1efe0 -SIZE (nicegui-2.23.0.tar.gz) = 13108139 +TIMESTAMP = 1756499959 +SHA256 (nicegui-2.23.3.tar.gz) = 7fc99bc40d1682b37c54eda6275f77db863b9c7bcc7ad15006c507b69a30d22c +SIZE (nicegui-2.23.3.tar.gz) = 13108186 diff --git a/www/py-wsgidav/Makefile b/www/py-wsgidav/Makefile index 839c933ebc85..21b9489313a3 100644 --- a/www/py-wsgidav/Makefile +++ b/www/py-wsgidav/Makefile @@ -1,9 +1,9 @@ PORTNAME= WsgiDAV -DISTVERSION= 4.3.2 -PORTREVISION= 2 +DISTVERSION= 4.3.3 CATEGORIES= www python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} +DISTNAME= ${PORTNAME:tl}-${DISTVERSION} MAINTAINER= ultima@FreeBSD.org COMMENT= WSGI based WebDAV server for sharing resources @@ -21,13 +21,19 @@ RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}defusedxml>=0.5:devel/py-defusedxml@${PY_FLA ${PYTHON_PKGNAMEPREFIX}six>=1.12:devel/py-six@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}Jinja2>=2.10:devel/py-Jinja2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pyyaml>=3.2:devel/py-pyyaml@${PY_FLAVOR} -TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}cheroot>=6.0:www/py-cheroot@${PY_FLAVOR} \ +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}CouchDB>=1.1:databases/py-couchdb@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}cheroot>=6.0:www/py-cheroot@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pymongo>=3.13:databases/py-pymongo@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}mysqlclient>=2.2:databases/py-mysqlclient@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest>=2.7:devel/py-pytest@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest-cov>=1.8:devel/py-pytest-cov@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}pytest-html>=1.8:devel/py-pytest-html@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}python-pam>=1.8:security/py-python-pam@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}redis>=6.2:databases/py-redis@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests>=0:www/py-requests@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}tox>=2.0:devel/py-tox@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}webtest>=2.0:www/py-webtest@${PY_FLAVOR} + ${PYTHON_PKGNAMEPREFIX}webtest>=2.0:www/py-webtest@${PY_FLAVOR} \ + mercurial>=0:devel/mercurial USES= python USE_PYTHON= distutils autoplist diff --git a/www/py-wsgidav/distinfo b/www/py-wsgidav/distinfo index 15316e92e385..2d99414ce925 100644 --- a/www/py-wsgidav/distinfo +++ b/www/py-wsgidav/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1718387273 -SHA256 (WsgiDAV-4.3.2.tar.gz) = 4c3c24ac01b656a9edcb0014f31717ca8b9a3ec7d7cd9adc39d9ce1b00bfe759 -SIZE (WsgiDAV-4.3.2.tar.gz) = 167847 +TIMESTAMP = 1754464002 +SHA256 (wsgidav-4.3.3.tar.gz) = 5f0ad71bea72def3018b6ba52da3bcb83f61e0873c27225344582805d6e52b9e +SIZE (wsgidav-4.3.3.tar.gz) = 168118 diff --git a/www/tor-browser/Makefile b/www/tor-browser/Makefile index f99e3cb04891..ff5bf958f8a6 100644 --- a/www/tor-browser/Makefile +++ b/www/tor-browser/Makefile @@ -1,5 +1,6 @@ PORTNAME= tor-browser DISTVERSION= 15.0a1 +PORTREVISION= 1 CATEGORIES= www net security wayland TAG_BASE= 96a559c7c1f7b9231db2b5cece7ecae980ae835d TAG_TOR= 3becb908fbf68aa77accc1f2e03e2c29f4fe40e2 diff --git a/www/ungoogled-chromium/files/patch-net_dns_BUILD.gn b/www/ungoogled-chromium/files/patch-net_dns_BUILD.gn index 6646c9edc97b..e1fd322aea84 100644 --- a/www/ungoogled-chromium/files/patch-net_dns_BUILD.gn +++ b/www/ungoogled-chromium/files/patch-net_dns_BUILD.gn @@ -1,6 +1,6 @@ ---- net/dns/BUILD.gn.orig 2025-02-20 09:59:21 UTC +--- net/dns/BUILD.gn.orig 2025-03-29 00:50:57 UTC +++ net/dns/BUILD.gn -@@ -140,7 +140,7 @@ source_set("dns") { +@@ -138,7 +138,7 @@ source_set("dns") { "dns_config_service_android.cc", "dns_config_service_android.h", ] @@ -9,7 +9,17 @@ sources += [ "dns_config_service_linux.cc", "dns_config_service_linux.h", -@@ -181,6 +181,7 @@ source_set("dns") { +@@ -172,6 +172,9 @@ source_set("dns") { + } + + deps = [ "//net:net_deps" ] ++ if (is_bsd) { ++ deps += [ "//services/screen_ai/buildflags" ] ++ } + + public_deps = [ + ":dns_client", +@@ -179,6 +182,7 @@ source_set("dns") { ":host_resolver_manager", ":mdns_client", "//net:net_public_deps", @@ -17,7 +27,7 @@ ] allow_circular_includes_from = [ -@@ -450,9 +451,9 @@ source_set("tests") { +@@ -447,9 +451,9 @@ source_set("tests") { if (is_android) { sources += [ "dns_config_service_android_unittest.cc" ] diff --git a/www/waterfox/Makefile b/www/waterfox/Makefile index d4cd473ff1ef..b7679d220de8 100644 --- a/www/waterfox/Makefile +++ b/www/waterfox/Makefile @@ -1,5 +1,6 @@ PORTNAME= waterfox DISTVERSION= 6.6.1 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= www diff --git a/x11-toolkits/wlroots017/Makefile b/x11-toolkits/wlroots017/Makefile index 4b8183d24a11..c7ccdfda65f7 100644 --- a/x11-toolkits/wlroots017/Makefile +++ b/x11-toolkits/wlroots017/Makefile @@ -1,6 +1,6 @@ PORTNAME= wlroots DISTVERSION= 0.17.4 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= x11-toolkits PKGNAMESUFFIX= 017 @@ -54,7 +54,8 @@ VULKAN_DESC= Vulkan renderer VULKAN_BUILD_DEPENDS= glslangValidator:graphics/glslang \ vulkan-headers>0:graphics/vulkan-headers VULKAN_LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader -VULKAN_RUN_DEPENDS= mesa-dri>0:graphics/mesa-dri +VULKAN_RUN_DEPENDS= mesa-dri>0:graphics/mesa-dri \ + vulkan-headers>0:graphics/vulkan-headers VULKAN_VARS= RENDERERS+=vulkan X11_LIB_DEPENDS= libxcb-errors.so:x11/xcb-util-errors \ diff --git a/x11-toolkits/wlroots018/Makefile b/x11-toolkits/wlroots018/Makefile index 3a58fc4f3dc3..264f2c4f7bed 100644 --- a/x11-toolkits/wlroots018/Makefile +++ b/x11-toolkits/wlroots018/Makefile @@ -1,6 +1,6 @@ PORTNAME= wlroots DISTVERSION= 0.18.2 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= x11-toolkits PKGNAMESUFFIX= 018 @@ -57,7 +57,8 @@ VULKAN_DESC= Vulkan renderer VULKAN_BUILD_DEPENDS= glslangValidator:graphics/glslang \ vulkan-headers>0:graphics/vulkan-headers VULKAN_LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader -VULKAN_RUN_DEPENDS= mesa-dri>0:graphics/mesa-dri +VULKAN_RUN_DEPENDS= mesa-dri>0:graphics/mesa-dri \ + vulkan-headers>0:graphics/vulkan-headers VULKAN_VARS= RENDERERS+=vulkan X11_LIB_DEPENDS= libxcb-errors.so:x11/xcb-util-errors \ diff --git a/x11-toolkits/wlroots019/Makefile b/x11-toolkits/wlroots019/Makefile index f785e46fa20d..679858b4f554 100644 --- a/x11-toolkits/wlroots019/Makefile +++ b/x11-toolkits/wlroots019/Makefile @@ -1,6 +1,6 @@ PORTNAME= wlroots DISTVERSION= 0.19.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= x11-toolkits PKGNAMESUFFIX= 019 @@ -58,7 +58,8 @@ VULKAN_DESC= Vulkan renderer VULKAN_BUILD_DEPENDS= glslangValidator:graphics/glslang \ vulkan-headers>0:graphics/vulkan-headers VULKAN_LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader -VULKAN_RUN_DEPENDS= mesa-dri>0:graphics/mesa-dri +VULKAN_RUN_DEPENDS= mesa-dri>0:graphics/mesa-dri \ + vulkan-headers>0:graphics/vulkan-headers VULKAN_VARS= RENDERERS+=vulkan X11_LIB_DEPENDS= libxcb-errors.so:x11/xcb-util-errors \ diff --git a/x11-wm/wayfire-plugins-extra/Makefile b/x11-wm/wayfire-plugins-extra/Makefile index a4a1179f9345..be68e5c70a79 100644 --- a/x11-wm/wayfire-plugins-extra/Makefile +++ b/x11-wm/wayfire-plugins-extra/Makefile @@ -1,51 +1,43 @@ PORTNAME= wayfire-plugins-extra DISTVERSIONPREFIX= v -DISTVERSION= 0.9.0 -PORTREVISION= 1 +DISTVERSION= 0.10.0 CATEGORIES= x11-wm wayland -MAINTAINER= jbeich@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= Additional plugins for Wayfire WWW= https://wayfire.org/ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE -BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto \ +BUILD_DEPENDS= boost-libs>0:devel/boost-libs \ + evdev-proto>0:devel/evdev-proto \ wayland-scanner:graphics/wayland \ wayland-protocols>0:graphics/wayland-protocols \ wayfire>0:x11-wm/wayfire LIB_DEPENDS= libevdev.so:devel/libevdev \ libwf-config.so:devel/wf-config \ libwayland-server.so:graphics/wayland \ - libwlroots-0.17.so:x11-toolkits/wlroots017 + libwlroots-0.19.so:x11-toolkits/wlroots019 -USES= compiler:c++17-lang gnome meson pkgconfig +USES= compiler:c++17-lang gl gnome meson pkgconfig USE_GITHUB= yes USE_GITLAB= nodefault +USE_GL= glesv2 USE_GNOME= cairo glibmm GH_ACCOUNT= WayfireWM -GH_TUPLE= timgott:wayfire-shadows:de32395:wayfire_shadows/subprojects/wayfire-shadows \ - soreau:pixdecor:d172e84:pixdecor/subprojects/pixdecor \ - soreau:filters:5850fee:filters/subprojects/filters -GL_TUPLE= wayfireplugins:focus-request:bc41d54:focus_request/subprojects/focus-request \ - wayfireplugins:windecor:f609ac0:windecor/subprojects/windecor +GH_TUPLE= timgott:wayfire-shadows:v0.9.0-1-g453c217:wayfire_shadows/subprojects/wayfire-shadows \ + soreau:pixdecor:8a0b028:pixdecor/subprojects/pixdecor \ + soreau:filters:00024b5:filters/subprojects/filters +GL_TUPLE= wayfireplugins:focus-request:v0.9.0:focus_request/subprojects/focus-request MESON_ARGS= -Denable_focus_request=true -Denable_wayfire_shadows=true \ -Denable_filters=true -OPTIONS_DEFINE= LIBRSVG2 PANGO -OPTIONS_DEFAULT=LIBRSVG2 PANGO +OPTIONS_DEFINE= PANGO +OPTIONS_DEFAULT=PANGO OPTIONS_SUB= yes PANGO_USE= GNOME=pango PANGO_MESON_TRUE= enable_pixdecor -LIBRSVG2_USE= GNOME=librsvg2 -LIBRSVG2_MESON_TRUE= enable_windecor - -post-patch: -# Respect PREFIX for icons - @${REINPLACE_CMD} 's,/usr/share,${DATADIR:H},' \ - ${WRKSRC}/subprojects/windecor/deco-icontheme.cpp - .include <bsd.port.mk> diff --git a/x11-wm/wayfire-plugins-extra/distinfo b/x11-wm/wayfire-plugins-extra/distinfo index 91f2faf8ccc6..b0ce7721887d 100644 --- a/x11-wm/wayfire-plugins-extra/distinfo +++ b/x11-wm/wayfire-plugins-extra/distinfo @@ -1,13 +1,11 @@ -TIMESTAMP = 1724488925 -SHA256 (WayfireWM-wayfire-plugins-extra-v0.9.0_GH0.tar.gz) = 5fd08387fb02ce541b7f9dfbeefbbef9cd19b2c88347517f40afab4da54b83bf -SIZE (WayfireWM-wayfire-plugins-extra-v0.9.0_GH0.tar.gz) = 48580 -SHA256 (timgott-wayfire-shadows-de32395_GH0.tar.gz) = 2d6f0c4fc8524d2b4a926955d3f6856c090d08d37b8908979039e6e1291779c8 -SIZE (timgott-wayfire-shadows-de32395_GH0.tar.gz) = 11260 -SHA256 (soreau-pixdecor-d172e84_GH0.tar.gz) = ba938deac035e5f21e92d9f838b80b0539d6b8dc004f09f25cd400125376759c -SIZE (soreau-pixdecor-d172e84_GH0.tar.gz) = 41145 -SHA256 (soreau-filters-5850fee_GH0.tar.gz) = 4a97738f07de6e3def04656226960090ebc2046ceb62c860a5cee94406da4188 -SIZE (soreau-filters-5850fee_GH0.tar.gz) = 6515 -SHA256 (focus-request-bc41d54.tar.bz2) = da114547ed0b3ccca593d44e4a01f6d86a45ff284e15610e8e465696e9446da9 -SIZE (focus-request-bc41d54.tar.bz2) = 1740 -SHA256 (windecor-f609ac0.tar.bz2) = 2b10209bb6e787af69b6115291330c37dfc8f1c39fb9f91a650cf3ad1c586c10 -SIZE (windecor-f609ac0.tar.bz2) = 32244 +TIMESTAMP = 1754971427 +SHA256 (WayfireWM-wayfire-plugins-extra-v0.10.0_GH0.tar.gz) = b986c7df5b25c9dfaad0ee17aadc21166042faa7c278bba98759fd5505d247ea +SIZE (WayfireWM-wayfire-plugins-extra-v0.10.0_GH0.tar.gz) = 60234 +SHA256 (timgott-wayfire-shadows-v0.9.0-1-g453c217_GH0.tar.gz) = d4ad8fd9cbb27f743c9a79893699fe34e8ed99197174c2ee28bef0b399d15217 +SIZE (timgott-wayfire-shadows-v0.9.0-1-g453c217_GH0.tar.gz) = 12522 +SHA256 (soreau-pixdecor-8a0b028_GH0.tar.gz) = 5138125cf18f4281565fdfb8d9f59c922de629a1ae52718dcc74429f8bfe5c0e +SIZE (soreau-pixdecor-8a0b028_GH0.tar.gz) = 47313 +SHA256 (soreau-filters-00024b5_GH0.tar.gz) = b3716287703b9b1c98bf769d8dbb2577d95b1f2891ea1cf863fab1fda7d24124 +SIZE (soreau-filters-00024b5_GH0.tar.gz) = 8923 +SHA256 (focus-request-v0.9.0.tar.bz2) = 07914e465db240d1153410a08a54c35086e10f3654e2e177830e24bbf4e56c81 +SIZE (focus-request-v0.9.0.tar.bz2) = 4344 diff --git a/x11-wm/wayfire-plugins-extra/files/patch-libc++ b/x11-wm/wayfire-plugins-extra/files/patch-libc++ deleted file mode 100644 index 0f971afea036..000000000000 --- a/x11-wm/wayfire-plugins-extra/files/patch-libc++ +++ /dev/null @@ -1,14 +0,0 @@ -../subprojects/windecor/deco-theme.cpp:14:10: fatal error: 'bits/stdc++.h' file not found -#include <bits/stdc++.h> - ^~~~~~~~~~~~~~~ - ---- subprojects/windecor/deco-theme.cpp.orig 2023-09-30 05:08:04 UTC -+++ subprojects/windecor/deco-theme.cpp -@@ -11,7 +11,6 @@ - #include <sys/stat.h> - #include <unistd.h> - #include <fstream> --#include <bits/stdc++.h> - - typedef struct { - double x; diff --git a/x11-wm/wayfire-plugins-extra/files/patch-wlroots017 b/x11-wm/wayfire-plugins-extra/files/patch-wlroots017 deleted file mode 100644 index 43194a59e84f..000000000000 --- a/x11-wm/wayfire-plugins-extra/files/patch-wlroots017 +++ /dev/null @@ -1,30 +0,0 @@ -wayfire-shadows| Run-time dependency wlroots found: NO (tried pkgconfig and cmake) - -subprojects/wayfire-shadows/meson.build:17:11: ERROR: Dependency "wlroots" not found, tried pkgconfig and cmake - -windecor| Run-time dependency wlroots found: NO (tried pkgconfig and cmake) - -subprojects/windecor/meson.build:18:11: ERROR: Dependency "wlroots" not found, tried pkgconfig and cmake - ---- subprojects/wayfire-shadows/meson.build.orig 2023-09-08 22:38:12 UTC -+++ subprojects/wayfire-shadows/meson.build -@@ -14,7 +14,7 @@ wayfire = dependency('wayfire') - ) - - wayfire = dependency('wayfire') --wlroots = dependency('wlroots') -+wlroots = dependency('wlroots-0.17') - wfconfig = dependency('wf-config') - - add_project_arguments(['-DWLR_USE_UNSTABLE'], language: ['cpp', 'c']) ---- subprojects/windecor/meson.build.orig 2023-09-30 05:08:04 UTC -+++ subprojects/windecor/meson.build -@@ -15,7 +15,7 @@ pixman = dependency('pixman-1') - - wayfire = dependency('wayfire') - pixman = dependency('pixman-1') --wlroots = dependency('wlroots') -+wlroots = dependency('wlroots-0.17') - wfconfig = dependency('wf-config') - cairo = dependency('cairo') - rsvg = dependency( 'librsvg-2.0' ) diff --git a/x11-wm/wayfire-plugins-extra/pkg-plist b/x11-wm/wayfire-plugins-extra/pkg-plist index 151a668557de..64314a5ac6dd 100644 --- a/x11-wm/wayfire-plugins-extra/pkg-plist +++ b/x11-wm/wayfire-plugins-extra/pkg-plist @@ -2,6 +2,7 @@ lib/wayfire/libannotate.so lib/wayfire/libautorotate-iio.so lib/wayfire/libbench.so lib/wayfire/libcrosshair.so +lib/wayfire/libextra-animations.so lib/wayfire/libfilters.so lib/wayfire/libfocus-change.so lib/wayfire/libfocus-request.so @@ -18,17 +19,17 @@ lib/wayfire/libobs.so lib/wayfire/libpin-view.so %%PANGO%%lib/wayfire/libpixdecor.so lib/wayfire/libshowrepaint.so +lib/wayfire/libshowtouch.so lib/wayfire/libview-shot.so lib/wayfire/libwater.so -%%LIBRSVG2%%lib/wayfire/libwindecor.so lib/wayfire/libwinshadows.so lib/wayfire/libwinzoom.so lib/wayfire/libworkspace-names.so -%%LIBRSVG2%%share/wayfire/icons/plugin-windecor.svg share/wayfire/metadata/annotate.xml share/wayfire/metadata/autorotate-iio.xml share/wayfire/metadata/bench.xml share/wayfire/metadata/crosshair.xml +share/wayfire/metadata/extra-animations.xml share/wayfire/metadata/filters.xml share/wayfire/metadata/focus-change.xml share/wayfire/metadata/focus-request.xml @@ -44,10 +45,9 @@ share/wayfire/metadata/obs.xml share/wayfire/metadata/pin-view.xml %%PANGO%%share/wayfire/metadata/pixdecor.xml share/wayfire/metadata/showrepaint.xml +share/wayfire/metadata/showtouch.xml share/wayfire/metadata/view-shot.xml share/wayfire/metadata/water.xml -%%LIBRSVG2%%share/wayfire/metadata/windecor.xml share/wayfire/metadata/window-zoom.xml share/wayfire/metadata/winshadows.xml share/wayfire/metadata/workspace-names.xml -%%LIBRSVG2%%share/wayfire/windecor/executable.svg diff --git a/x11-wm/wayfire/Makefile b/x11-wm/wayfire/Makefile index c8af247557e0..0742aca84f0b 100644 --- a/x11-wm/wayfire/Makefile +++ b/x11-wm/wayfire/Makefile @@ -1,10 +1,9 @@ PORTNAME= wayfire DISTVERSIONPREFIX= v -DISTVERSION= 0.9.0 -PORTREVISION= 2 +DISTVERSION= 0.10.0 CATEGORIES= x11-wm wayland -MAINTAINER= jbeich@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= 3D Wayland compositor WWW= https://wayfire.org/ @@ -12,20 +11,20 @@ LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto \ - nlohmann-json>0:devel/nlohmann-json \ - wf-config>=0.9.0<0.10.0:devel/wf-config \ + wf-config>=0.10.0<0.11.0:devel/wf-config \ ${LOCALBASE}/include/xf86drmMode.h:graphics/libdrm \ wayland-protocols>=1.12:graphics/wayland-protocols \ glm>=0.9.8:math/glm LIB_DEPENDS= libevdev.so:devel/libevdev \ libinotify.so:devel/libinotify \ + libudev.so:devel/libudev-devd \ libwf-config.so:devel/wf-config \ + libyyjson.so:devel/yyjson \ libpng.so:graphics/png \ libwayland-server.so:graphics/wayland \ - libwlroots-0.17.so:x11-toolkits/wlroots017 \ + libwlroots-0.19.so:x11-toolkits/wlroots019 \ libinput.so:x11/libinput \ libxkbcommon.so:x11/libxkbcommon -RUN_DEPENDS= nlohmann-json>0:devel/nlohmann-json TEST_DEPENDS= doctest>0:devel/doctest USES= cmake:indirect compiler:c++17-lang gl gnome jpeg meson pkgconfig xorg @@ -34,13 +33,15 @@ USE_GL= egl glesv2 USE_GNOME= cairo pango USE_XORG= pixman GH_ACCOUNT= WayfireWM -GH_TUPLE= WayfireWM:wf-touch:b8b844f:wftouch/subprojects/wf-touch \ - WayfireWM:wf-utils:08553c4:wfutils/subprojects/wf-utils +GH_TUPLE= WayfireWM:wf-touch:093d894:wftouch/subprojects/wf-touch \ + WayfireWM:wf-utils:3ef27d1:wfutils/subprojects/wf-utils MESON_ARGS= -Dtests=disabled \ -Dwf-touch:tests=disabled \ - -Dwf-utils:default_library=static \ ${NULL} +# XXX https://github.com/WayfireWM/wayfire/issues/2800 +USES+= localbase + .if !exists(/usr/include/omp.h) # LLVM openmp in base doesn't support powerpc, armv6, armv7 yet MESON_ARGS+= -Denable_openmp=false @@ -58,12 +59,6 @@ post-patch: -e '/project_version/s/@0@/${DISTVERSIONFULL}/' \ ${WRKSRC}/meson.build -.ifdef GH_TUPLE -post-configure: - @${REINPLACE_CMD} 's/meson install/& \ - --skip-subprojects/' ${BUILD_WRKSRC}/build.ninja -.endif - post-install: ${MKDIR} ${STAGEDIR}${EXAMPLESDIR} ${INSTALL_DATA} ${WRKSRC}/${PORTNAME}.ini ${STAGEDIR}${EXAMPLESDIR} @@ -71,7 +66,8 @@ post-install: pre-test: @if [ ! -e ${WRKDIR}/.meson_build_tests ]; then \ ${RM} ${CONFIGURE_COOKIE} ${BUILD_COOKIE}; \ - ${MAKE} -C${.CURDIR} build MESON_ARGS="${MESON_ARGS} --reconfigure -Dtests=enabled"; \ + ${MAKE} -C${.CURDIR} build MESON_ARGS="${MESON_ARGS} --reconfigure \ + ${MESON_ARGS:M*tests*:S/=dis/=en/}"; \ ${TOUCH} ${WRKDIR}/.meson_build_tests; \ fi diff --git a/x11-wm/wayfire/distinfo b/x11-wm/wayfire/distinfo index 8e706d071d10..779fe7e32d9d 100644 --- a/x11-wm/wayfire/distinfo +++ b/x11-wm/wayfire/distinfo @@ -1,7 +1,7 @@ -TIMESTAMP = 1724497494 -SHA256 (WayfireWM-wayfire-v0.9.0_GH0.tar.gz) = 233fa0cf1c967a48d40a075ea7e34132e80ad30c2aef5e306c4466be1e585acb -SIZE (WayfireWM-wayfire-v0.9.0_GH0.tar.gz) = 477667 -SHA256 (WayfireWM-wf-touch-b8b844f_GH0.tar.gz) = d4c1ba47e3f1561a4de2fc3166a46e9a3849526b62efab27b160a4a2804fb6b8 -SIZE (WayfireWM-wf-touch-b8b844f_GH0.tar.gz) = 9976 -SHA256 (WayfireWM-wf-utils-08553c4_GH0.tar.gz) = 0d5f9293fa0012b095c8e902884ca56f828928cf14a578ceac712f73e85b40d5 -SIZE (WayfireWM-wf-utils-08553c4_GH0.tar.gz) = 48507 +TIMESTAMP = 1756267943 +SHA256 (WayfireWM-wayfire-v0.10.0_GH0.tar.gz) = f4b3997ae0cc764d38226038d05291f44b02988782f27852c26b04387b9da440 +SIZE (WayfireWM-wayfire-v0.10.0_GH0.tar.gz) = 507994 +SHA256 (WayfireWM-wf-touch-093d894_GH0.tar.gz) = 7fa685012ed73363d507f093838b7d64264b6038bbdc5baab571171f5120d257 +SIZE (WayfireWM-wf-touch-093d894_GH0.tar.gz) = 10577 +SHA256 (WayfireWM-wf-utils-3ef27d1_GH0.tar.gz) = fcea63b4e4fd026fede0fc0fbeb4858c3d2df0eb9da400d26a322b2ff10a2d68 +SIZE (WayfireWM-wf-utils-3ef27d1_GH0.tar.gz) = 48507 diff --git a/x11-wm/wayfire/files/patch-wlroots017 b/x11-wm/wayfire/files/patch-wlroots017 deleted file mode 100644 index 28311aebc9a3..000000000000 --- a/x11-wm/wayfire/files/patch-wlroots017 +++ /dev/null @@ -1,32 +0,0 @@ -Run-time dependency wlroots found: NO (tried pkgconfig and cmake) -Looking for a fallback subproject for the dependency wlroots - -meson.build:45:11: ERROR: Subproject exists but has no meson.build file. - ---- meson.build.orig 2024-08-24 11:04:54 UTC -+++ meson.build -@@ -42,11 +42,11 @@ elif get_option('use_system_wlroots').enabled() - - elif get_option('use_system_wlroots').enabled() - use_system_wlroots = true -- wlroots = dependency('wlroots', version: ['>=0.17.0', '<0.18.0'], required: true) -+ wlroots = dependency('wlroots-0.17', version: ['>=0.17.0', '<0.18.0'], required: true) - - elif get_option('use_system_wlroots').auto() - message( 'SEARCHING FOR WLROOTS' ) -- wlroots = dependency('wlroots', version: ['>=0.17.0', '<0.18.0'], required: false) -+ wlroots = dependency('wlroots-0.17', version: ['>=0.17.0', '<0.18.0'], required: false) - use_system_wlroots = true - if not wlroots.found() - use_system_wlroots = false ---- src/meson.build.orig 2024-08-24 11:04:54 UTC -+++ src/meson.build -@@ -147,7 +147,7 @@ public_api_requirements = [ - wayland_server, - pixman, - # These might be subprojects so we need to pass them as strings -- 'wlroots', -+ 'wlroots-0.17', - 'wf-config', - ] - diff --git a/x11-wm/wayfire/pkg-plist b/x11-wm/wayfire/pkg-plist index 8775999874d7..c741060a3665 100644 --- a/x11-wm/wayfire/pkg-plist +++ b/x11-wm/wayfire/pkg-plist @@ -1,7 +1,13 @@ bin/wayfire +include/wayfire/action/action.hpp +include/wayfire/action/action_interface.hpp include/wayfire/bindings-repository.hpp include/wayfire/bindings.hpp include/wayfire/compositor-view.hpp +include/wayfire/condition/access_interface.hpp +include/wayfire/condition/condition.hpp +include/wayfire/condition/logic_condition.hpp +include/wayfire/condition/test_condition.hpp include/wayfire/config-backend.hpp include/wayfire/config.h include/wayfire/core.hpp @@ -11,10 +17,13 @@ include/wayfire/geometry.hpp include/wayfire/idle.hpp include/wayfire/img.hpp include/wayfire/input-device.hpp +include/wayfire/lexer/lexer.hpp +include/wayfire/lexer/literal.hpp +include/wayfire/lexer/symbol.hpp include/wayfire/matcher.hpp +include/wayfire/nonstd/json.hpp include/wayfire/nonstd/observer_ptr.h include/wayfire/nonstd/reverse.hpp -include/wayfire/nonstd/safe-list.hpp include/wayfire/nonstd/tracking-allocator.hpp include/wayfire/nonstd/wlroots-full.hpp include/wayfire/nonstd/wlroots.hpp @@ -23,8 +32,13 @@ include/wayfire/opengl.hpp include/wayfire/option-wrapper.hpp include/wayfire/output-layout.hpp include/wayfire/output.hpp +include/wayfire/parser/action_parser.hpp +include/wayfire/parser/condition_parser.hpp +include/wayfire/parser/lambda_rule_parser.hpp +include/wayfire/parser/rule_parser.hpp include/wayfire/per-output-plugin.hpp include/wayfire/plugin.hpp +include/wayfire/plugins/animate/animate.hpp include/wayfire/plugins/blur/blur.hpp include/wayfire/plugins/common/cairo-util.hpp include/wayfire/plugins/common/geometry-animation.hpp @@ -34,7 +48,6 @@ include/wayfire/plugins/common/move-drag-interface.hpp include/wayfire/plugins/common/preview-indication.hpp include/wayfire/plugins/common/shared-core-data.hpp include/wayfire/plugins/common/simple-text-node.hpp -include/wayfire/plugins/common/simple-texture.hpp include/wayfire/plugins/common/util.hpp include/wayfire/plugins/common/workspace-wall.hpp include/wayfire/plugins/crossfade.hpp @@ -43,12 +56,16 @@ include/wayfire/plugins/input-method-v1/input-method-v1.hpp include/wayfire/plugins/ipc/ipc-activator.hpp include/wayfire/plugins/ipc/ipc-helpers.hpp include/wayfire/plugins/ipc/ipc-method-repository.hpp +include/wayfire/plugins/ipc/ipc-rules-common.hpp include/wayfire/plugins/scale-signal.hpp include/wayfire/plugins/vswitch.hpp include/wayfire/plugins/wm-actions-signals.hpp include/wayfire/plugins/wobbly/wobbly-signal.hpp include/wayfire/region.hpp include/wayfire/render-manager.hpp +include/wayfire/render.hpp +include/wayfire/rule/lambda_rule.hpp +include/wayfire/rule/rule.hpp include/wayfire/scene-input.hpp include/wayfire/scene-operations.hpp include/wayfire/scene-render.hpp @@ -58,6 +75,7 @@ include/wayfire/signal-definitions.hpp include/wayfire/signal-provider.hpp include/wayfire/toplevel-view.hpp include/wayfire/toplevel.hpp +include/wayfire/touch/touch.hpp include/wayfire/txn/transaction-manager.hpp include/wayfire/txn/transaction-object.hpp include/wayfire/txn/transaction.hpp @@ -71,6 +89,8 @@ include/wayfire/unstable/wlr-view-keyboard-interaction.hpp include/wayfire/unstable/xdg-toplevel-base.hpp include/wayfire/unstable/xwl-toplevel-base.hpp include/wayfire/util.hpp +include/wayfire/utils.hpp +include/wayfire/variant.hpp include/wayfire/view-access-interface.hpp include/wayfire/view-helpers.hpp include/wayfire/view-transform.hpp @@ -80,6 +100,12 @@ include/wayfire/workarea.hpp include/wayfire/workspace-set.hpp include/wayfire/workspace-stream.hpp lib/libwayfire-blur-base.so +lib/libwayfire-move-drag-interface.a +lib/libwayfire-workspace-wall.a +lib/libwf-utils.so +lib/libwf-utils.so.0 +lib/libwf-utils.so.0.4.0 +lib/libwftouch.a lib/wayfire/libalpha.so lib/wayfire/libanimate.so lib/wayfire/libautostart.so @@ -88,7 +114,6 @@ lib/wayfire/libcommand.so lib/wayfire/libcube.so lib/wayfire/libdecoration.so lib/wayfire/libdefault-config-backend.so -lib/wayfire/libdemo-ipc.so lib/wayfire/libexpo.so lib/wayfire/libextra-gestures.so lib/wayfire/libfast-switcher.so @@ -113,6 +138,7 @@ lib/wayfire/libshortcuts-inhibit.so lib/wayfire/libsimple-tile.so lib/wayfire/libstipc.so lib/wayfire/libswitcher.so +lib/wayfire/libvk-color-management.so lib/wayfire/libvswipe.so lib/wayfire/libvswitch.so lib/wayfire/libwayfire-shell.so @@ -125,6 +151,7 @@ lib/wayfire/libxdg-activation.so lib/wayfire/libxkb-bindings.so lib/wayfire/libzoom.so libdata/pkgconfig/wayfire.pc +libdata/pkgconfig/wf-utils.pc share/man/man1/wayfire.1.gz %%EXAMPLESDIR%%/wayfire.ini %%DATADIR%%/metadata/alpha.xml @@ -174,3 +201,4 @@ share/man/man1/wayfire.1.gz %%DATADIR%%/metadata/zoom.xml %%DATADIR%%/protocols/unstable/wayfire-shell-unstable-v2.xml share/wayland-sessions/wayfire.desktop +share/xdg-desktop-portal/wayfire-portals.conf diff --git a/x11/Makefile b/x11/Makefile index 4b4ee4a3f246..e641d7dcf4ed 100644 --- a/x11/Makefile +++ b/x11/Makefile @@ -460,6 +460,7 @@ SUBDIR += watershot SUBDIR += way-displays SUBDIR += waybar + SUBDIR += waycheck SUBDIR += waycorner SUBDIR += wayidle SUBDIR += wayland-logout diff --git a/x11/lightdm-kde-greeter/Makefile b/x11/lightdm-kde-greeter/Makefile index ca00120b5196..4814955eb6ae 100644 --- a/x11/lightdm-kde-greeter/Makefile +++ b/x11/lightdm-kde-greeter/Makefile @@ -1,25 +1,29 @@ PORTNAME= lightdm-kde-greeter PORTVERSION= 6.0.3 +PORTREVISION= 1 CATEGORIES= x11 kde MAINTAINER= kde@FreeBSD.org COMMENT= KDE login screen using the LightDM framework WWW= https://invent.kde.org/plasma/lightdm-kde-greeter -LIB_DEPENDS= liblightdm-gobject-1.so:x11/lightdm -RUN_DEPENDS= at-spi2-core>0:accessibility/at-spi2-core - LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING.GPL3 -USES= cmake compiler:c++11-lang gettext gnome kde:6 pkgconfig qt:6 \ - tar:xz xorg -USE_KDE= auth config configwidgets i18n iconthemes kcmutils networkmanagerqt \ - package plasma-workspace \ - ecm:build +LIB_DEPENDS= libnm.so:net-mgmt/networkmanager-shim \ + liblightdm-gobject-1.so:x11/lightdm +RUN_DEPENDS= at-spi2-core>0:accessibility/at-spi2-core + +USES= cmake compiler:c++17-lang gettext gl gnome kde:6 pkgconfig \ + qt:6 tar:xz xorg +USE_GL= opengl USE_GNOME= gtk20 -USE_QT= base -USE_XORG= x11 +USE_KDE= auth colorscheme config configwidgets coreaddons i18n \ + iconthemes kcmutils libplasma networkmanagerqt package \ + widgetsaddons \ + ecm:build +USE_QT= 5compat base declarative +USE_XORG= x11 xcb xext xrandr xrender KDE_INVENT= 31d29530ad834c1bfb70ed43f9395a549fbace56 plasma @@ -27,7 +31,9 @@ CMAKE_ARGS= -DGREETER_IMAGES_DIR="${PREFIX}/var/db/${PORTNAME}/images" \ -DLIGHTDM_CONFIG_DIR=${PREFIX}/etc/lightdm \ -DDATA_INSTALL_DIR=${PREFIX}/share -post-stage: +post-install: ${RM} -r ${STAGEDIR}${PREFIX}/lib/systemd + (cd ${STAGEDIR}${PREFIX}/etc/lightdm && ${MV} lightdm-kde-greeter.conf \ + lightdm-kde-greeter.conf.sample) .include <bsd.port.mk> diff --git a/x11/lightdm-kde-greeter/pkg-message b/x11/lightdm-kde-greeter/pkg-message index ddc6c404298e..bd08570da8b5 100644 --- a/x11/lightdm-kde-greeter/pkg-message +++ b/x11/lightdm-kde-greeter/pkg-message @@ -1,6 +1,12 @@ +[ +{ type: install + message: <<EOM To enable lightdm-kde-greeter as the current lightdm greeter, you can create a file at /usr/local/etc/lightdm/lightdm.conf.d/50-myconfig.conf with the following: [Seat:*] greeter-session=lightdm-kde-greeter +EOM +} +] diff --git a/x11/lightdm-kde-greeter/pkg-plist b/x11/lightdm-kde-greeter/pkg-plist index 6a04b8e00fab..d4ec905f5fdf 100644 --- a/x11/lightdm-kde-greeter/pkg-plist +++ b/x11/lightdm-kde-greeter/pkg-plist @@ -1,6 +1,6 @@ bin/lightdm-kde-greeter-rootimage bin/lightdm-kde-greeter-wifikeeper -etc/lightdm/lightdm-kde-greeter.conf +@sample etc/lightdm/lightdm-kde-greeter.conf.sample lib/libexec/kf6/kauth/kcmlightdmhelper %%QT_PLUGINDIR%%/plasma/kcms/systemsettings/kcm_lightdm.so sbin/lightdm-kde-greeter diff --git a/x11/salut/Makefile b/x11/salut/Makefile index 08bef05512b1..7977ed92222e 100644 --- a/x11/salut/Makefile +++ b/x11/salut/Makefile @@ -4,7 +4,7 @@ DISTVERSION= 0.3.1 PORTREVISION= 25 CATEGORIES= x11 wayland -MAINTAINER= jbeich@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= Sleek notification daemon LICENSE= MPL20 diff --git a/x11/sway-audio-idle-inhibit/Makefile b/x11/sway-audio-idle-inhibit/Makefile index 585d62702df4..d00e00b9075f 100644 --- a/x11/sway-audio-idle-inhibit/Makefile +++ b/x11/sway-audio-idle-inhibit/Makefile @@ -4,7 +4,7 @@ PORTVERSION= 0.1.2 PORTREVISION= 1 CATEGORIES= x11 wayland -MAINTAINER= jbeich@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= Disable swayidle during audio playback/recording WWW= https://github.com/ErikReider/SwayAudioIdleInhibit diff --git a/x11/swayfloatingswitcher/Makefile b/x11/swayfloatingswitcher/Makefile index 99a792aad2bd..20d38b63a953 100644 --- a/x11/swayfloatingswitcher/Makefile +++ b/x11/swayfloatingswitcher/Makefile @@ -3,7 +3,7 @@ PORTVERSION= s20221131 PORTREVISION= 2 CATEGORIES= x11 -MAINTAINER= jbeich@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= Simple Alt+Tab switcher for floating windows WWW= https://github.com/ErikReider/SwayFloatingSwitcher diff --git a/x11/swaync/Makefile b/x11/swaync/Makefile index 30ad36275dea..e5a620326a73 100644 --- a/x11/swaync/Makefile +++ b/x11/swaync/Makefile @@ -3,7 +3,7 @@ DISTVERSIONPREFIX= v PORTVERSION= 0.12.2 CATEGORIES= x11 wayland -MAINTAINER= jbeich@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= Simple Wayland notification daemon with GTK panel WWW= https://github.com/ErikReider/SwayNotificationCenter diff --git a/x11/swaync/pkg-descr b/x11/swaync/pkg-descr index fe8221c507b9..fd7fb56cef28 100644 --- a/x11/swaync/pkg-descr +++ b/x11/swaync/pkg-descr @@ -2,18 +2,26 @@ A simple notification daemon with a GTK gui for notifications and the control center Features: +- Grouped notifications - Keyboard shortcuts - Notification body markup with image support +- Inline replies - A panel to view previous notifications - Show album art for notifications like Spotify - Do not disturb +- Inhibiting notifications through DBUS or client +- Restores previous Do not disturb value after restart - Click notification to execute default action - Show alternative notification actions +- Copy detected 2FA codes to clipboard - Customization through a CSS file - Trackpad/mouse gesture to close notification - The same features as any other basic notification daemon - Basic configuration through a JSON config file - Hot-reload config through swaync-client +- Customizable widgets +- Select the preferred monitor to display on (with swaync-client + command for scripting) Planned Features: - Slick animations diff --git a/x11/swaysettings/Makefile b/x11/swaysettings/Makefile index 8ade08fd89b8..6e69f59d97c8 100644 --- a/x11/swaysettings/Makefile +++ b/x11/swaysettings/Makefile @@ -4,7 +4,7 @@ DISTVERSION= 0.5.0 PORTREVISION= 1 CATEGORIES= x11 -MAINTAINER= jbeich@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= GUI for setting Sway wallpaper, default apps, GTK themes, etc. WWW= https://github.com/ErikReider/SwaySettings diff --git a/x11/wapanel/Makefile b/x11/wapanel/Makefile index 74a4849076d9..520343443625 100644 --- a/x11/wapanel/Makefile +++ b/x11/wapanel/Makefile @@ -3,7 +3,7 @@ DISTVERSION= 1.1.0 PORTREVISION= 7 CATEGORIES= x11 wayland -MAINTAINER= jbeich@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= Desktop bar for Wayfire and other wlroots compositors WWW= https://firstbober.github.io/wapanel/ diff --git a/x11/watershot/Makefile b/x11/watershot/Makefile index fa553f474884..b5dbe3602509 100644 --- a/x11/watershot/Makefile +++ b/x11/watershot/Makefile @@ -4,7 +4,7 @@ DISTVERSION= 0.2.2 PORTREVISION= 16 CATEGORIES= x11 wayland -MAINTAINER= jbeich@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= Simple Wayland-native screenshot tool WWW= https://github.com/Kirottu/watershot diff --git a/x11/waycheck/Makefile b/x11/waycheck/Makefile new file mode 100644 index 000000000000..65b41ff8c51d --- /dev/null +++ b/x11/waycheck/Makefile @@ -0,0 +1,30 @@ +PORTNAME= waycheck +DISTVERSIONPREFIX= v +DISTVERSION= 1.7.0 +CATEGORIES= x11 wayland + +MAINTAINER= tagattie@FreeBSD.org +COMMENT= Simple GUI that displays the protocols implemented by a Wayland compositor +WWW= https://gitlab.freedesktop.org/serebit/waycheck + +LICENSE= APACHE20 CC0-1.0 +LICENSE_COMB= multi +LICENSE_FILE_APACHE20= ${WRKSRC}/LICENSES/Apache-2.0.txt +LICENSE_FILE_CC0-1.0= ${WRKSRC}/LICENSES/CC0-1.0.txt + +LIB_DEPENDS= libwayland-client.so:graphics/wayland + +USES= meson pkgconfig qt:6 + +USE_GITLAB= yes +GL_SITE= https://gitlab.freedesktop.org/ +GL_ACCOUNT= serebit + +USE_QT= base wayland + +PLIST_FILES= bin/${PORTNAME} \ + share/applications/dev.serebit.Waycheck.desktop \ + share/icons/hicolor/scalable/apps/dev.serebit.Waycheck.svg \ + share/metainfo/dev.serebit.Waycheck.metainfo.xml + +.include <bsd.port.mk> diff --git a/x11/waycheck/distinfo b/x11/waycheck/distinfo new file mode 100644 index 000000000000..c3dab321fc1d --- /dev/null +++ b/x11/waycheck/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1756195503 +SHA256 (waycheck-v1.7.0.tar.bz2) = 658caca3d967d9b23bb1f6d42c6fd67832263bb60fd600a26e97748d0e47e105 +SIZE (waycheck-v1.7.0.tar.bz2) = 21545 diff --git a/x11/waycheck/files/patch-meson.build b/x11/waycheck/files/patch-meson.build new file mode 100644 index 000000000000..882534abc553 --- /dev/null +++ b/x11/waycheck/files/patch-meson.build @@ -0,0 +1,15 @@ +--- meson.build.orig 2025-08-27 20:19:12 UTC ++++ meson.build +@@ -16,6 +16,12 @@ dep_wayland_client = dependency('wayland-client') + ) + dep_wayland_client = dependency('wayland-client') + ++cc = meson.get_compiler('cpp') ++dep_libutil = dependency('', required : false) ++if host_machine.system() == 'freebsd' ++ dep_libutil = cc.find_library('util', required : true) ++endif ++ + datadir = get_option('datadir') + + subdir('src') diff --git a/x11/waycheck/files/patch-src_meson.build b/x11/waycheck/files/patch-src_meson.build new file mode 100644 index 000000000000..decf26941ea7 --- /dev/null +++ b/x11/waycheck/files/patch-src_meson.build @@ -0,0 +1,10 @@ +--- src/meson.build.orig 2025-08-27 20:18:18 UTC ++++ src/meson.build +@@ -15,6 +15,6 @@ waycheck = executable( + waycheck = executable( + 'waycheck', + sources: waycheck_sources, +- dependencies: [dep_qt6, dep_wayland_client], ++ dependencies: [dep_qt6, dep_wayland_client, dep_libutil], + install: true, + ) diff --git a/x11/waycheck/files/patch-src_window.cpp b/x11/waycheck/files/patch-src_window.cpp new file mode 100644 index 000000000000..6e976a9c5ffb --- /dev/null +++ b/x11/waycheck/files/patch-src_window.cpp @@ -0,0 +1,56 @@ +--- src/window.cpp.orig 2025-06-27 19:43:51 UTC ++++ src/window.cpp +@@ -13,7 +13,24 @@ + #include <unistd.h> + #include <wayland-client-protocol.h> + ++#if defined(__FreeBSD__) ++#include <sys/types.h> ++#include <sys/ucred.h> ++#include <sys/un.h> ++#include <sys/user.h> ++#include <libutil.h> ++#endif ++ + static pid_t pid_from_fd(const int fd) { ++#if defined(__FreeBSD__) ++ xucred cred{}; ++ socklen_t len = sizeof(struct xucred); ++ if (getsockopt(fd, SOL_LOCAL, LOCAL_PEERCRED, &cred, &len) == -1) { ++ perror("getsockopt failed"); ++ exit(1); ++ } ++ return cred.cr_pid; ++#else + ucred cred{}; + socklen_t len = sizeof(struct ucred); + if (getsockopt(fd, SOL_SOCKET, SO_PEERCRED, &cred, &len) == -1) { +@@ -21,9 +38,19 @@ static pid_t pid_from_fd(const int fd) { + exit(1); + } + return cred.pid; ++#endif + } + + static std::string process_name_from_pid(const pid_t pid) { ++#if defined(__FreeBSD__) ++ struct kinfo_proc *proc = kinfo_getproc(pid); ++ ++ if (proc) { ++ std::string out = proc->ki_comm; ++ free(proc); ++ return out; ++ } ++#else + const std::string procpath = QString::asprintf("/proc/%d/comm", pid).toStdString(); + + std::ifstream infile(procpath); +@@ -38,7 +65,7 @@ static std::string process_name_from_pid(const pid_t p + // running in a flatpak or a snap, most likely + return "Unknown (Sandboxed)"; + } +- ++#endif + return "Unknown"; + } + diff --git a/x11/waycheck/pkg-descr b/x11/waycheck/pkg-descr new file mode 100644 index 000000000000..fcdbdc739f27 --- /dev/null +++ b/x11/waycheck/pkg-descr @@ -0,0 +1,5 @@ +Waycheck is a simple Qt6 application that displays all of the Wayland +protocols that your compositor supports, and all of the protocols that +it doesn't support. It can be used to compare protocol support between +compositors, or if you're working on your own compositor, to keep +track of which protocols you still need to implement. diff --git a/x11/wcm/Makefile b/x11/wcm/Makefile index 5c9a05933b71..c3d81a31bd04 100644 --- a/x11/wcm/Makefile +++ b/x11/wcm/Makefile @@ -1,10 +1,9 @@ PORTNAME= wcm DISTVERSIONPREFIX= v -DISTVERSION= 0.9.0 -PORTREVISION= 1 +DISTVERSION= 0.10.0 CATEGORIES= x11 wayland -MAINTAINER= jbeich@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= Wayfire Config Manager WWW= https://wayfire.org/ @@ -25,8 +24,6 @@ USES= compiler:c++17-lang gnome meson pkgconfig USE_GITHUB= yes USE_GNOME= gdkpixbuf gtk30 libxml2 GH_ACCOUNT= WayfireWM -MESON_ARGS= -Denable_wdisplays=false # use package -DATADIR= ${PREFIX}/share/wayfire OPTIONS_DEFINE= WDISPLAYS WFSHELL OPTIONS_DEFAULT=WDISPLAYS WFSHELL diff --git a/x11/wcm/distinfo b/x11/wcm/distinfo index c78b27154182..2db2654231bc 100644 --- a/x11/wcm/distinfo +++ b/x11/wcm/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1724414952 -SHA256 (WayfireWM-wcm-v0.9.0_GH0.tar.gz) = 35205c165b83ac387235b0415f58f0e80a8975421de23250c7cb70c471aeee87 -SIZE (WayfireWM-wcm-v0.9.0_GH0.tar.gz) = 400778 +TIMESTAMP = 1756308383 +SHA256 (WayfireWM-wcm-v0.10.0_GH0.tar.gz) = 9d42754243d3eed44426b0e9efab92a40277df691e592ae990b4733f2243a841 +SIZE (WayfireWM-wcm-v0.10.0_GH0.tar.gz) = 333987 diff --git a/x11/wcm/pkg-plist b/x11/wcm/pkg-plist index b05212e9a733..dc8520e57748 100644 --- a/x11/wcm/pkg-plist +++ b/x11/wcm/pkg-plist @@ -1,12 +1,6 @@ bin/wcm -share/applications/wayfire-config-manager.desktop -share/icons/hicolor/128x128/apps/wcm.png -share/icons/hicolor/160x160/apps/wcm.png -share/icons/hicolor/192x192/apps/wcm.png -share/icons/hicolor/48x48/apps/wcm.png -share/icons/hicolor/64x64/apps/wcm.png -share/icons/hicolor/72x72/apps/wcm.png -share/icons/hicolor/96x96/apps/wcm.png +share/applications/wcm.desktop +share/icons/wcm.svg %%DATADIR%%/icons/plugin-alpha.svg %%DATADIR%%/icons/plugin-animate.svg %%DATADIR%%/icons/plugin-annotate.svg @@ -63,4 +57,4 @@ share/icons/hicolor/96x96/apps/wcm.png %%DATADIR%%/icons/plugin-workspace-names.svg %%DATADIR%%/icons/plugin-wrot.svg %%DATADIR%%/icons/plugin-zoom.svg -%%DATADIR%%/icons/wcm.png +%%DATADIR%%/icons/wcm.svg diff --git a/x11/wf-shell/Makefile b/x11/wf-shell/Makefile index 0ee84c20d8b8..d81d93925194 100644 --- a/x11/wf-shell/Makefile +++ b/x11/wf-shell/Makefile @@ -1,10 +1,9 @@ PORTNAME= wf-shell DISTVERSIONPREFIX= v -DISTVERSION= 0.9.0 -PORTREVISION= 1 +DISTVERSION= 0.10.0 CATEGORIES= x11 wayland -MAINTAINER= jbeich@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= GTK3-based panel for wayfire WWW= https://wayfire.org/ diff --git a/x11/wf-shell/distinfo b/x11/wf-shell/distinfo index c01e68ccaa32..49f73aff85fc 100644 --- a/x11/wf-shell/distinfo +++ b/x11/wf-shell/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1724498806 -SHA256 (WayfireWM-wf-shell-v0.9.0_GH0.tar.gz) = 71d14174c08cf51334ff8ec10aa5e055340bf291b993fef85d15f51892098e82 -SIZE (WayfireWM-wf-shell-v0.9.0_GH0.tar.gz) = 9045484 +TIMESTAMP = 1736771286 +SHA256 (WayfireWM-wf-shell-v0.10.0_GH0.tar.gz) = f90bf34ead49d996c950ce52cb6aca62fbaaffcedbbf35165edb4d82f970a3ff +SIZE (WayfireWM-wf-shell-v0.10.0_GH0.tar.gz) = 9045441 SHA256 (GNOME-libgnome-volume-control-468022b_GH0.tar.gz) = 1c1d806ad1f57d7f644381b67ee87ef3e7e10f3a2da1432beef535ca50c0040f SIZE (GNOME-libgnome-volume-control-468022b_GH0.tar.gz) = 45503 |