From e41336d5af0464e9f28045429196d5f6b4babf92 Mon Sep 17 00:00:00 2001
From: Cem Keylan <cem@ckyln.com>
Date: Mon, 2 Mar 2020 12:33:50 +0300
Subject: rsync: build without perl

---
 core/rsync/build             |  5 ++++-
 core/rsync/checksums         |  1 +
 core/rsync/files/mkproto.awk | 39 +++++++++++++++++++++++++++++++++++++++
 core/rsync/sources           |  1 +
 4 files changed, 45 insertions(+), 1 deletion(-)
 create mode 100644 core/rsync/files/mkproto.awk

diff --git a/core/rsync/build b/core/rsync/build
index 6a0ede69..6a623847 100755
--- a/core/rsync/build
+++ b/core/rsync/build
@@ -2,9 +2,12 @@
 
 export CFLAGS="-static $CFLAGS"
 
+sed -i 's/perl/awk -f/;s/mkproto.pl/mkproto.awk/' Makefile.in
+
 ./configure \
     --prefix=/usr \
-    --with-included-popt
+    --with-included-popt \
+    --without-included-zlib
 
 make
 make DESTDIR="$1" install
diff --git a/core/rsync/checksums b/core/rsync/checksums
index fb1e3676..f8cfcc6f 100644
--- a/core/rsync/checksums
+++ b/core/rsync/checksums
@@ -1 +1,2 @@
 55cc554efec5fdaad70de921cd5a5eeb6c29a95524c715f3bbf849235b0800c0  rsync-3.1.3.tar.gz
+301240aecba5b8fbda8310c841ef61e3c1f312a55378f6079f8d65ae1bd811f2  mkproto.awk
diff --git a/core/rsync/files/mkproto.awk b/core/rsync/files/mkproto.awk
new file mode 100644
index 00000000..d3802f95
--- /dev/null
+++ b/core/rsync/files/mkproto.awk
@@ -0,0 +1,39 @@
+#!/usr/bin/awk -f
+
+BEGIN {
+    while ((getline i < "proto.h") > 0) old_protos = old_protos ? old_protos "\n" i : i
+    protos = "/* This file is automatically generated with \"make proto\". DO NOT EDIT */\n"
+}
+
+inheader {
+    protos = protos "\n" ((inheader = /\)[ \t]*$/ ? 0 : 1) ? $0 : $0 ";")
+    next
+}
+
+/^FN_(LOCAL|GLOBAL)_[^(]+\([^,()]+/ {
+    local = /^FN_LOCAL/
+    gsub(/^FN_(LOC|GLOB)AL_|,.*$/, "")
+    sub(/^BOOL\(/, "BOOL ")
+    sub(/^CHAR\(/, "char ")
+    sub(/^INTEGER\(/, "int ")
+    sub(/^STRING\(/, "char *")
+    protos = protos "\n" $0 (local ? "(int module_id);" : "(void);")
+    next
+}
+
+/^static|^extern|;/||!/^[A-Za-z][A-Za-z0-9_]* / { next }
+
+/\(.*\)[ \t]*$/ {
+    protos = protos "\n" $0 ";"
+    next
+}
+
+/\(/ {
+    inheader = 1
+    protos = protos "\n" $0
+}
+
+END {
+    if (old_protos != protos) print protos > "proto.h"
+    print "" > "proto.h-tstamp"
+}
diff --git a/core/rsync/sources b/core/rsync/sources
index 61a21f38..1f921867 100644
--- a/core/rsync/sources
+++ b/core/rsync/sources
@@ -1 +1,2 @@
 https://download.samba.org/pub/rsync/src/rsync-3.1.3.tar.gz
+files/mkproto.awk
-- 
cgit v1.2.3