]> git.ipfire.org Git - ipfire-3.x.git/blob - rsync/rsync.nm
git: Update to 2.23.0
[ipfire-3.x.git] / rsync / rsync.nm
1 ###############################################################################
2 # IPFire.org - An Open Source Firewall Solution #
3 # Copyright (C) - IPFire Development Team <info@ipfire.org> #
4 ###############################################################################
5
6 name = rsync
7 version = 3.1.2
8 release = 2
9
10 groups = Applications/Internet
11 url = http://rsync.samba.org/
12 license = GPLv3+
13 summary = A program for synchronizing files over a network.
14
15 description
16 Rsync uses a reliable algorithm to bring remote and host files into
17 sync very quickly. Rsync is fast because it just sends the differences
18 in the files over the network instead of sending the complete
19 files. Rsync is often used as a very powerful mirroring process or
20 just as a more capable replacement for the rcp command. A technical
21 report which describes the rsync algorithm is included in this
22 package.
23 end
24
25 source_dl = http://rsync.samba.org/ftp/rsync/
26 sources += %{name}-patches-%{version}.tar.gz
27
28 build
29 requires
30 autoconf
31 libacl-devel
32 libattr-devel
33 popt-devel
34 zlib-devel
35
36 # Testsuite.
37 %{bindir}/setfacl
38 end
39
40 configure_options += \
41 --without-included-popt \
42 --without-included-zlib
43
44
45 prepare_cmds
46 # Fix permission issure.
47 cd %{DIR_APP} && chmod -x support/*
48
49 # Apply upstream patches.
50 patch -Np1 -i patches/acls.diff
51 patch -Np1 -i patches/xattrs.diff
52 patch -Np1 -i patches/copy-devices.diff
53
54 # Remove cache.
55 rm -fr autum4te.cache
56
57 # Regenerate build environment.
58 autoconf
59 autoheader
60 end
61
62 make_build_targets = proto all
63
64 test
65 # Fix permissions of testsuite helper script.
66 #
67 # Otherwise some tests of the testsuite will fail,
68 # because the script is not allowed to be executed.
69 chmod +x ./support/lsh.sh
70
71 make check
72 end
73
74 make_install_targets += \
75 INSTALLCMD="install -p" \
76 INSTALLMAN="install -p"
77
78 install_cmds
79
80 # Install config file.
81 mkdir -pv %{BUILDROOT}%{sysconfdir}
82
83 install -m 0644 %{DIR_SOURCE}/rsyncd.conf \
84 %{BUILDROOT}%{sysconfdir}/
85
86 # Create directory for pidfile.
87 mkdir -pv %{BUILDROOT}/run/rsyncd
88 end
89
90 end
91
92 packages
93 package %{name}
94 configfiles
95 %{sysconfdir}/rsyncd.conf
96 end
97
98 script postin
99 systemctl daemon-reload >/dev/null 2>&1 || :
100 end
101
102 script preun
103 systemctl --no-reload disable rsyncd.service >/dev/null 2>&1 || :
104 systemctl --no-reload disable rsyncd.socket >/dev/null 2>&1 || :
105 systemctl stop rsyncd.service >/dev/null 2>&1 || :
106 systemctl stop rsyncd.socket >/dev/null 2>&1 || :
107 systemctl stop rsyncd@.service >/dev/null 2>&1 || :
108 end
109
110 script postun
111 systemctl daemon-reload >/dev/null 2>&1 || :
112 end
113
114 script postup
115 systemctl daemon-reload >/dev/null 2>&1 || :
116 systemctl try-restart rsyncd.service >/dev/null 2>&1 || :
117 end
118 end
119
120 package %{name}-debuginfo
121 template DEBUGINFO
122 end
123 end