Initial commit

This commit is contained in:
Your Name
2026-04-23 17:07:55 +08:00
commit b7e39e063b
16725 changed files with 1625565 additions and 0 deletions
@@ -0,0 +1,171 @@
From 651425fced0691d9063fe417388ba6ca1c38c40b Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Mon, 29 Aug 2022 19:53:28 -0700
Subject: [PATCH] Add missing prototypes to function declarations
With Clang 15+ compiler -Wstrict-prototypes is triggering warnings which
are turned into errors with -Werror, this fixes the problem by adding
missing prototypes
Fixes errors like
| log.c:134:24: error: a function declaration without a prototype is deprecated in all versions of C [-Werror,-Wstrict-prototypes]
| static void syslog_init()
| ^
| void
Upstream-Status: Submitted [https://lists.samba.org/archive/rsync/2022-August/032858.html]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
checksum.c | 2 +-
exclude.c | 2 +-
hlink.c | 3 +--
lib/pool_alloc.c | 2 +-
log.c | 2 +-
main.c | 2 +-
syscall.c | 4 ++--
zlib/crc32.c | 2 +-
zlib/trees.c | 2 +-
zlib/zutil.c | 4 ++--
10 files changed, 12 insertions(+), 13 deletions(-)
diff --git a/checksum.c b/checksum.c
index 60de365..67a9e16 100644
--- a/checksum.c
+++ b/checksum.c
@@ -778,7 +778,7 @@ static void verify_digest(struct name_num_item *nni, BOOL check_auth_list)
}
#endif
-void init_checksum_choices()
+void init_checksum_choices(void)
{
#if defined SUPPORT_XXH3 || defined USE_OPENSSL
struct name_num_item *nni;
diff --git a/exclude.c b/exclude.c
index ffe55b1..a85ea76 100644
--- a/exclude.c
+++ b/exclude.c
@@ -363,7 +363,7 @@ void implied_include_partial_string(const char *s_start, const char *s_end)
memcpy(partial_string_buf, s_start, partial_string_len);
}
-void free_implied_include_partial_string()
+void free_implied_include_partial_string(void)
{
if (partial_string_buf) {
if (partial_string_len)
diff --git a/hlink.c b/hlink.c
index 20291f2..5c26a6b 100644
--- a/hlink.c
+++ b/hlink.c
@@ -117,8 +117,7 @@ static void match_gnums(int32 *ndx_list, int ndx_count)
struct ht_int32_node *node = NULL;
int32 gnum, gnum_next;
- qsort(ndx_list, ndx_count, sizeof ndx_list[0], (int (*)()) hlink_compare_gnum);
-
+ qsort(ndx_list, ndx_count, sizeof ndx_list[0], (int (*)(const void *, const void *)) hlink_compare_gnum);
for (from = 0; from < ndx_count; from++) {
file = hlink_flist->sorted[ndx_list[from]];
gnum = F_HL_GNUM(file);
diff --git a/lib/pool_alloc.c b/lib/pool_alloc.c
index a1a7245..4eae062 100644
--- a/lib/pool_alloc.c
+++ b/lib/pool_alloc.c
@@ -9,7 +9,7 @@ struct alloc_pool
size_t size; /* extent size */
size_t quantum; /* allocation quantum */
struct pool_extent *extents; /* top extent is "live" */
- void (*bomb)(); /* called if malloc fails */
+ void (*bomb)(const char *, const char *, int); /* called if malloc fails */
int flags;
/* statistical data */
diff --git a/log.c b/log.c
index e4ba1cc..8482b71 100644
--- a/log.c
+++ b/log.c
@@ -131,7 +131,7 @@ static void logit(int priority, const char *buf)
}
}
-static void syslog_init()
+static void syslog_init(void)
{
int options = LOG_PID;
diff --git a/main.c b/main.c
index d2a7b9b..c50af45 100644
--- a/main.c
+++ b/main.c
@@ -244,7 +244,7 @@ void read_del_stats(int f)
stats.deleted_files += stats.deleted_specials = read_varint(f);
}
-static void become_copy_as_user()
+static void become_copy_as_user(void)
{
char *gname;
uid_t uid;
diff --git a/syscall.c b/syscall.c
index d92074a..92ca86d 100644
--- a/syscall.c
+++ b/syscall.c
@@ -389,9 +389,9 @@ OFF_T do_lseek(int fd, OFF_T offset, int whence)
{
#ifdef HAVE_LSEEK64
#if !SIZEOF_OFF64_T
- OFF_T lseek64();
+ OFF_T lseek64(int fd, OFF_T offset, int whence);
#else
- off64_t lseek64();
+ off64_t lseek64(int fd, off64_t offset, int whence);
#endif
return lseek64(fd, offset, whence);
#else
diff --git a/zlib/crc32.c b/zlib/crc32.c
index 05733f4..50c6c02 100644
--- a/zlib/crc32.c
+++ b/zlib/crc32.c
@@ -187,7 +187,7 @@ local void write_table(out, table)
/* =========================================================================
* This function can be used by asm versions of crc32()
*/
-const z_crc_t FAR * ZEXPORT get_crc_table()
+const z_crc_t FAR * ZEXPORT get_crc_table(void)
{
#ifdef DYNAMIC_CRC_TABLE
if (crc_table_empty)
diff --git a/zlib/trees.c b/zlib/trees.c
index 9c66770..0d9047e 100644
--- a/zlib/trees.c
+++ b/zlib/trees.c
@@ -231,7 +231,7 @@ local void send_bits(s, value, length)
/* ===========================================================================
* Initialize the various 'constant' tables.
*/
-local void tr_static_init()
+local void tr_static_init(void)
{
#if defined(GEN_TREES_H) || !defined(STDC)
static int static_init_done = 0;
diff --git a/zlib/zutil.c b/zlib/zutil.c
index bbba7b2..61f8dc9 100644
--- a/zlib/zutil.c
+++ b/zlib/zutil.c
@@ -27,12 +27,12 @@ z_const char * const z_errmsg[10] = {
""};
-const char * ZEXPORT zlibVersion()
+const char * ZEXPORT zlibVersion(void)
{
return ZLIB_VERSION;
}
-uLong ZEXPORT zlibCompileFlags()
+uLong ZEXPORT zlibCompileFlags(void)
{
uLong flags;
@@ -0,0 +1,34 @@
The Makefile calls awk on a "*.c" glob. The results of this glob are sorted
but the order depends on the locale settings, particularly whether
"util.c" and "util2.c" sort before or after each other. In en_US.UTF-8
they sort one way, in C, they sort the other. The sorting order changes
the output binaries. The behaviour also changes dependning on whether
SHELL (/bin/sh) is dash or bash.
Specify a C locale setting to be deterministic.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Submitted: https://github.com/WayneD/rsync/pull/155
Upstream-Status: Backport [ish, see below]
After discussion upstream renamed util.c to util1.c which avoids the problem
in a different way. This patch can be dropped when we upgrade to include:
https://github.com/WayneD/rsync/commit/d3085f7add38a5cf833a0b31cb0637ff46c80f8d
Index: rsync-3.2.3/Makefile.in
===================================================================
--- rsync-3.2.3.orig/Makefile.in
+++ rsync-3.2.3/Makefile.in
@@ -26,6 +26,11 @@ MKDIR_P=@MKDIR_P@
VPATH=$(srcdir)
SHELL=/bin/sh
+# We use globbing in commands, need to be deterministic
+unexport LC_ALL
+LC_COLLATE=C
+export LC_COLLATE
+
.SUFFIXES:
.SUFFIXES: .c .o
@@ -0,0 +1,80 @@
From 81700d1a0e51391028c761cc8ef1cd660084d114 Mon Sep 17 00:00:00 2001
From: Ross Burton <ross.burton@intel.com>
Date: Tue, 12 Apr 2016 15:51:54 +0100
Subject: [PATCH] rsync: remove upstream's rebuild logic
Remove the Makefile rules to reinvoke autoconf, they're not out-of-tree safe and
generally overcomplicated, and we ensure that autoreconf is invoked if required.
Upstream-Status: Inappropriate
Signed-off-by: Ross Burton <ross.burton@intel.com>
---
Makefile.in | 54 -----------------------------------------------------
1 file changed, 54 deletions(-)
diff --git a/Makefile.in b/Makefile.in
index 3cde955..d963a70 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -190,60 +190,6 @@ gensend: gen
fi
rsync -aic $(GENFILES) git-version.h $${SAMBA_HOST-samba.org}:/home/ftp/pub/rsync/generated-files/ || true
-aclocal.m4: $(srcdir)/m4/*.m4
- aclocal -I $(srcdir)/m4
-
-configure.sh config.h.in: configure.ac aclocal.m4
- @if test -f configure.sh; then cp -p configure.sh configure.sh.old; else touch configure.sh.old; fi
- @if test -f config.h.in; then cp -p config.h.in config.h.in.old; else touch config.h.in.old; fi
- autoconf -o configure.sh
- autoheader && touch config.h.in
- @if diff configure.sh configure.sh.old >/dev/null 2>&1; then \
- echo "configure.sh is unchanged."; \
- rm configure.sh.old; \
- else \
- echo "configure.sh has CHANGED."; \
- fi
- @if diff config.h.in config.h.in.old >/dev/null 2>&1; then \
- echo "config.h.in is unchanged."; \
- rm config.h.in.old; \
- else \
- echo "config.h.in has CHANGED."; \
- fi
- @if test -f configure.sh.old || test -f config.h.in.old; then \
- if test "$(MAKECMDGOALS)" = reconfigure; then \
- echo 'Continuing with "make reconfigure".'; \
- else \
- echo 'You may need to run:'; \
- echo ' make reconfigure'; \
- exit 1; \
- fi \
- fi
-
-.PHONY: reconfigure
-reconfigure: configure.sh
- ./config.status --recheck
- ./config.status
-
-.PHONY: restatus
-restatus:
- ./config.status
-
-Makefile: Makefile.in config.status configure.sh config.h.in
- @if test -f Makefile; then cp -p Makefile Makefile.old; else touch Makefile.old; fi
- @./config.status
- @if diff Makefile Makefile.old >/dev/null 2>&1; then \
- echo "Makefile is unchanged."; \
- rm Makefile.old; \
- else \
- if test "$(MAKECMDGOALS)" = reconfigure; then \
- echo 'Continuing with "make reconfigure".'; \
- else \
- echo "Makefile updated -- rerun your make command."; \
- exit 1; \
- fi \
- fi
-
stunnel-rsyncd.conf: $(srcdir)/stunnel-rsyncd.conf.in Makefile
sed 's;\@bindir\@;$(bindir);g' <$(srcdir)/stunnel-rsyncd.conf.in >stunnel-rsyncd.conf
@@ -0,0 +1,15 @@
# /etc/rsyncd.conf
# Minimal configuration file for rsync daemon
# See rsync(1) and rsyncd.conf(5) man pages for help
# This file is required by rsync --daemon
pid file = /var/run/rsyncd.pid
use chroot = yes
read only = yes
# Simple example for enabling your own local rsync server
#[everything]
# path = /
# comment = Everything except /etc exposed
# exclude = /etc
@@ -0,0 +1,67 @@
SUMMARY = "File synchronization tool"
HOMEPAGE = "http://rsync.samba.org/"
DESCRIPTION = "rsync is an open source utility that provides fast incremental file transfer."
BUGTRACKER = "http://rsync.samba.org/bugzilla.html"
SECTION = "console/network"
# GPL-2.0-or-later (<< 3.0.0), GPL-3.0-or-later (>= 3.0.0)
# Includes opennsh and xxhash dynamic link exception
LICENSE = "GPL-3.0-or-later"
LIC_FILES_CHKSUM = "file://COPYING;md5=24423708fe159c9d12be1ea29fcb18c7"
DEPENDS = "popt"
SRC_URI = "https://download.samba.org/pub/${BPN}/src/${BP}.tar.gz \
file://rsyncd.conf \
file://makefile-no-rebuild.patch \
file://determism.patch \
file://0001-Add-missing-prototypes-to-function-declarations.patch \
"
SRC_URI[sha256sum] = "4e7d9d3f6ed10878c58c5fb724a67dacf4b6aac7340b13e488fb2dc41346f2bb"
inherit autotools-brokensep
PACKAGECONFIG ??= "acl attr \
${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} \
"
PACKAGECONFIG[acl] = "--enable-acl-support,--disable-acl-support,acl,"
PACKAGECONFIG[attr] = "--enable-xattr-support,--disable-xattr-support,attr,"
PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
PACKAGECONFIG[lz4] = "--enable-lz4,--disable-lz4,lz4"
PACKAGECONFIG[openssl] = "--enable-openssl,--disable-openssl,openssl"
PACKAGECONFIG[xxhash] = "--enable-xxhash,--disable-xxhash,xxhash"
PACKAGECONFIG[zstd] = "--enable-zstd,--disable-zstd,zstd"
# By default, if crosscompiling, rsync disables a number of
# capabilities, hardlinking symlinks and special files (i.e. devices)
CACHED_CONFIGUREVARS += "rsync_cv_can_hardlink_special=yes rsync_cv_can_hardlink_symlink=yes"
EXTRA_OEMAKE = 'STRIP=""'
EXTRA_OECONF = "--disable-md2man --with-nobody-group=nogroup"
#| ./simd-checksum-x86_64.cpp: In function 'uint32_t get_checksum1_cpp(char*, int32_t)':
#| ./simd-checksum-x86_64.cpp:89:52: error: multiversioning needs 'ifunc' which is not supported on this target
#| 89 | __attribute__ ((target("default"))) MVSTATIC int32 get_checksum1_avx2_64(schar* buf, int32 len, int32 i, uint32* ps1, uint32* ps2) { return i; }
#| | ^~~~~~~~~~~~~~~~~~~~~
#| ./simd-checksum-x86_64.cpp:480:1: error: use of multiversioned function without a default
#| 480 | }
#| | ^
#| If you can't fix the issue, re-run ./configure with --disable-roll-simd.
EXTRA_OECONF:append:libc-musl = " --disable-roll-simd"
# rsync 3.0 uses configure.sh instead of configure, and
# makefile checks the existence of configure.sh
do_configure:prepend () {
rm -f ${S}/configure ${S}/configure.sh
}
do_configure:append () {
cp -f ${S}/configure ${S}/configure.sh
}
do_install:append() {
install -d ${D}${sysconfdir}
install -m 0644 ${WORKDIR}/rsyncd.conf ${D}${sysconfdir}
}
BBCLASSEXTEND = "native nativesdk"