git: 49a46084dc5e - main - devel/libprotobuf-mutator: Add libprotobuf-mutator 1.5
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 09 Apr 2025 17:49:25 UTC
The branch main has been updated by sunpoet: URL: https://cgit.FreeBSD.org/ports/commit/?id=49a46084dc5ef76a7eaddbebc4d881f4c7f6544f commit 49a46084dc5ef76a7eaddbebc4d881f4c7f6544f Author: Po-Chuan Hsieh <sunpoet@FreeBSD.org> AuthorDate: 2025-04-09 17:41:32 +0000 Commit: Po-Chuan Hsieh <sunpoet@FreeBSD.org> CommitDate: 2025-04-09 17:41:32 +0000 devel/libprotobuf-mutator: Add libprotobuf-mutator 1.5 libprotobuf-mutator is a library to randomly mutate protobuffers. It could be used together with guided fuzzing engines, such as libFuzzer. --- devel/Makefile | 1 + devel/libprotobuf-mutator/Makefile | 34 ++++++++++++++++++++++ devel/libprotobuf-mutator/distinfo | 3 ++ .../files/patch-cmake-external-googletest.cmake | 11 +++++++ devel/libprotobuf-mutator/pkg-descr | 2 ++ devel/libprotobuf-mutator/pkg-plist | 19 ++++++++++++ 6 files changed, 70 insertions(+) diff --git a/devel/Makefile b/devel/Makefile index 2f67b4b170f2..08ba19db3694 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -1409,6 +1409,7 @@ SUBDIR += libplist SUBDIR += libpo6 SUBDIR += libpololu-avr + SUBDIR += libprotobuf-mutator SUBDIR += libpru SUBDIR += libqb SUBDIR += libqcow diff --git a/devel/libprotobuf-mutator/Makefile b/devel/libprotobuf-mutator/Makefile new file mode 100644 index 000000000000..b3566df465b6 --- /dev/null +++ b/devel/libprotobuf-mutator/Makefile @@ -0,0 +1,34 @@ +PORTNAME= libprotobuf-mutator +PORTVERSION= 1.5 +DISTVERSIONPREFIX= v +CATEGORIES= devel + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Library for structured fuzzing with protobuffers +WWW= https://github.com/google/libprotobuf-mutator + +LICENSE= APACHE20 +LICENSE_FILE= ${WRKSRC}/LICENSE + +LIB_DEPENDS= libprotobuf.so:devel/protobuf + +USES= cmake:testing localbase:ldflags + +CMAKE_ARGS= -DLOCALBASE=${LOCALBASE} \ + -DPKG_CONFIG_PATH=libdata/pkgconfig +CMAKE_OFF= LIB_PROTO_MUTATOR_DOWNLOAD_PROTOBUF \ + LIB_PROTO_MUTATOR_EXAMPLES \ + LIB_PROTO_MUTATOR_EXAMPLES_USE_LATEST \ + LIB_PROTO_MUTATOR_MSVC_STATIC_RUNTIME \ + LIB_PROTO_MUTATOR_TESTING \ + LIB_PROTO_MUTATOR_WITH_ASAN +CMAKE_ON= BUILD_SHARED_LIBS +CMAKE_TESTING_ON= LIB_PROTO_MUTATOR_TESTING +LDFLAGS+= -labsl_hash \ + -labsl_log_internal_message \ + -labsl_log_internal_nullguard + +USE_GITHUB= yes +GH_ACCOUNT= google + +.include <bsd.port.mk> diff --git a/devel/libprotobuf-mutator/distinfo b/devel/libprotobuf-mutator/distinfo new file mode 100644 index 000000000000..703457aea83e --- /dev/null +++ b/devel/libprotobuf-mutator/distinfo @@ -0,0 +1,3 @@ +TIMESTAMP = 1744215555 +SHA256 (google-libprotobuf-mutator-v1.5_GH0.tar.gz) = 895958881b4993df70b4f652c2d82c5bd97d22f801ca4f430d6546809df293d5 +SIZE (google-libprotobuf-mutator-v1.5_GH0.tar.gz) = 42820 diff --git a/devel/libprotobuf-mutator/files/patch-cmake-external-googletest.cmake b/devel/libprotobuf-mutator/files/patch-cmake-external-googletest.cmake new file mode 100644 index 000000000000..1ec876eb3727 --- /dev/null +++ b/devel/libprotobuf-mutator/files/patch-cmake-external-googletest.cmake @@ -0,0 +1,11 @@ +--- cmake/external/googletest.cmake.orig 2025-02-26 00:43:54 UTC ++++ cmake/external/googletest.cmake +@@ -30,7 +30,7 @@ foreach(lib IN LISTS GTEST_BOTH_LIBRARIES) + set(LIB_PATH ${GTEST_INSTALL_DIR}/lib/${lib}.lib) + endif() + else() +- set(LIB_PATH ${GTEST_INSTALL_DIR}/lib/lib${lib}.a) ++ set(LIB_PATH ${LOCALBASE}/lib/lib${lib}.so) + endif() + list(APPEND GTEST_BUILD_BYPRODUCTS ${LIB_PATH}) + diff --git a/devel/libprotobuf-mutator/pkg-descr b/devel/libprotobuf-mutator/pkg-descr new file mode 100644 index 000000000000..c03dbde2e7ce --- /dev/null +++ b/devel/libprotobuf-mutator/pkg-descr @@ -0,0 +1,2 @@ +libprotobuf-mutator is a library to randomly mutate protobuffers. It could be +used together with guided fuzzing engines, such as libFuzzer. diff --git a/devel/libprotobuf-mutator/pkg-plist b/devel/libprotobuf-mutator/pkg-plist new file mode 100644 index 000000000000..96e84be6800c --- /dev/null +++ b/devel/libprotobuf-mutator/pkg-plist @@ -0,0 +1,19 @@ +include/libprotobuf-mutator/port/gtest.h +include/libprotobuf-mutator/port/protobuf.h +include/libprotobuf-mutator/src/binary_format.h +include/libprotobuf-mutator/src/field_instance.h +include/libprotobuf-mutator/src/libfuzzer/libfuzzer_macro.h +include/libprotobuf-mutator/src/libfuzzer/libfuzzer_mutator.h +include/libprotobuf-mutator/src/mutator.h +include/libprotobuf-mutator/src/random.h +include/libprotobuf-mutator/src/text_format.h +include/libprotobuf-mutator/src/utf8_fix.h +include/libprotobuf-mutator/src/weighted_reservoir_sampler.h +lib/cmake/libprotobuf-mutator/libprotobuf-mutatorConfig.cmake +lib/cmake/libprotobuf-mutator/libprotobuf-mutatorTargets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/libprotobuf-mutator/libprotobuf-mutatorTargets.cmake +lib/libprotobuf-mutator-libfuzzer.so +lib/libprotobuf-mutator-libfuzzer.so.0 +lib/libprotobuf-mutator.so +lib/libprotobuf-mutator.so.0 +libdata/pkgconfig/libprotobuf-mutator.pc