homebrew-core/Formula/grok.rb

88 lines
3.5 KiB
Ruby

class Grok < Formula
desc "DRY and RAD for regular expressions and then some"
homepage "https://github.com/jordansissel/grok"
url "https://github.com/jordansissel/grok/archive/v0.9.2.tar.gz"
sha256 "40edbdba488ff9145832c7adb04b27630ca2617384fbef2af014d0e5a76ef636"
license "BSD-2-Clause"
revision 2
head "https://github.com/jordansissel/grok.git", branch: "master"
livecheck do
url :stable
regex(/^v?(\d+\.\d{6,8}(\.\d+)*)$/i)
end
bottle do
sha256 cellar: :any, arm64_ventura: "b69e6b4812e82ce6007eda960673dc824e554fc8fea8c2a49968101b622dc11d"
sha256 cellar: :any, arm64_monterey: "2556c5995021bc02cf5a41c99bd30e127dedb7350972333c0bf77b695ed94114"
sha256 cellar: :any, arm64_big_sur: "172f626c4eb3d62d2f7b7dcd2c94a4890cc69a835ae3f33ddcb7b74762e4c52e"
sha256 cellar: :any, ventura: "27073a9a9c34b78a3c7549d5709c371859b6612ed4a7dbd3a6eaf9de0707112a"
sha256 cellar: :any, monterey: "111ecef9c1d93f0e737f47a7053ae84f5b434ae2bf808a49c7fbb9f9e4bb65e1"
sha256 cellar: :any, big_sur: "02386bec2f8e4ac68e44c67c33a2a296457a8f055fbf0f177a78137b63a030ce"
sha256 cellar: :any, catalina: "8e3f44420143e731799d52290c9823a42a1833c4bc51906af59d4cd7c284f391"
sha256 cellar: :any, mojave: "b78cf21dd67826d14d99188e631ff1c431913744d91089c4cefd9b3c9e9d9a46"
sha256 cellar: :any, high_sierra: "41889afb55bfcf1d8b41eda76ef2272d29225f4cc4a5690bd409198417d7cf98"
sha256 cellar: :any, sierra: "32dc46849684918dad9ca9005ca43b092de84b16a0837049146948379301b1fa"
sha256 cellar: :any_skip_relocation, x86_64_linux: "2501596389a8ac61df64de2e691157b1e5383a19719f3ddbc42c661929abf1d3"
end
depends_on "libevent"
depends_on "pcre"
depends_on "tokyo-cabinet"
uses_from_macos "gperf" => :build
on_linux do
# Fix build with newer gperf. Upstream issue:
# https://github.com/jordansissel/grok/issues/29
# Patch upstreamed here:
# https://github.com/jordansissel/grok/pull/44
patch :DATA
end
def install
# Temporary Homebrew-specific work around for linker flag ordering problem in Ubuntu 16.04.
# Remove after migration to 18.04.
inreplace "Makefile", "$(LDFLAGS) $^ -o $@", "$^ -o $@ $(LDFLAGS)" unless OS.mac?
# Race condition in generating grok_capture_xdr.h
ENV.deparallelize
ENV["GPERF"] = Formula["gperf"].opt_bin/"gperf" unless OS.mac?
system "make", "grok"
system "make", "install", "PREFIX=#{prefix}"
end
test do
system bin/"grok", "-h"
end
end
__END__
diff --git a/Makefile b/Makefile
index adfe869..182e015 100644
--- a/Makefile
+++ b/Makefile
@@ -213,8 +213,8 @@ grok_capture_xdr.h: grok_capture.x
rpcgen -h $< -o $@
%.c: %.gperf
- @if $(GPERF) --version | head -1 | egrep -v '3\.[0-9]+\.[0-9]+' ; then \
- echo "We require gperf version >= 3.0.3" ; \
+ @if $(GPERF) --version | head -1 | egrep -v '3\.[1-9]+' ; then \
+ echo "We require gperf version >= 3.1" ; \
exit 1; \
fi
$(GPERF) $< > $@
diff --git a/grok_matchconf_macro.h b/grok_matchconf_macro.h
index 85876f6..f1fe1f3 100644
--- a/grok_matchconf_macro.h
+++ b/grok_matchconf_macro.h
@@ -19,6 +19,6 @@ struct strmacro {
#endif
/* this function is generated by gperf */
-const struct strmacro *patname2macro(const char *str, unsigned int len);
+const struct strmacro *patname2macro(const char *str, size_t len);
#endif /* _GROK_MATCHCONF_MACRO_ */