]>
Commit | Line | Data |
---|---|---|
4109f740 | 1 | # Conditional build: |
12da3c75 | 2 | %bcond_without dynamic # link utilities dynamically |
17e76f5a | 3 | # |
2ead0998 JR |
4 | %define ver 2.0 |
5 | %define subver 873 | |
7b7e198b | 6 | Summary: iSCSI - SCSI over IP |
eb81d565 | 7 | Summary(pl.UTF-8): iSCSI - SCSI po IP |
7b7e198b | 8 | Name: open-iscsi |
2ead0998 | 9 | Version: %{ver}.%{subver} |
75c46b01 | 10 | Release: 3 |
4109f740 | 11 | License: GPL v2 |
eff6dc5c | 12 | Group: Networking/Daemons |
2ead0998 JR |
13 | Source0: http://www.open-iscsi.org/bits/%{name}-%{ver}-%{subver}.tar.gz |
14 | # Source0-md5: 8b8316d7c9469149a6cc6234478347f7 | |
7b7e198b AM |
15 | Source1: %{name}.init |
16 | Source2: %{name}.sysconfig | |
08d3794f | 17 | Source3: %{name}-devices.init |
12da3c75 | 18 | Source4: iscsiuio.logrotate |
0db1e35b JR |
19 | Patch0: %{name}-git.patch |
20 | Patch1: %{name}-build.patch | |
21 | Patch2: %{name}-systemd.patch | |
6ae08450 | 22 | Patch32: 0044-iscsid-add-initrd-option-to-set-run-from-initrd-hint.patch |
6ae08450 JR |
23 | Patch35: 0047-iscsiadm-iscsid-newroot-command-to-survive-switch_ro.patch |
24 | Patch36: 0047-iscsiuio-systemd-socket-activation-support.patch | |
25 | Patch37: 0048-iscsiadm-param-parsing-for-advanced-node-creation.patch | |
26 | Patch38: 0049-update-systemd-service-files-add-iscsi.service-for-s.patch | |
27 | Patch39: 0050-iscsi-boot-related-service-file-updates.patch | |
28 | Patch40: 0058-iscsiuio-IPC-newroot-command.patch | |
29 | Patch41: 0059-iscsiuio-systemd-unit-files.patch | |
30 | Patch42: 0062-Don-t-check-for-autostart-sessions-if-iscsi-is-not-u.patch | |
31 | Patch43: 0063-fix-order-of-setting-uid-gid-and-drop-supplementary-.patch | |
32 | Patch44: 0065-fix-hardened-build-of-iscsiuio.patch | |
33 | Patch45: 0066-start-socket-listeners-on-iscsiadm-command.patch | |
7b7e198b | 34 | URL: http://www.open-iscsi.org/ |
12da3c75 | 35 | BuildRequires: kmod-devel |
4109f740 | 36 | BuildRequires: openssl-devel |
73d24d5e | 37 | BuildRequires: rpmbuild(macros) >= 1.671 |
4109f740 JB |
38 | %if %{with dynamic} |
39 | BuildRequires: openslp-devel | |
40 | BuildRequires: sed >= 4.0 | |
12da3c75 | 41 | Requires: openslp >= 2.0.0 |
4109f740 | 42 | %else |
17e76f5a | 43 | BuildRequires: glibc-static |
cc8b2564 | 44 | BuildRequires: openslp-static |
4109f740 | 45 | %endif |
ac619853 | 46 | Requires(post,preun): /sbin/chkconfig |
73d24d5e | 47 | Requires(post,preun,postun): systemd-units >= 38 |
ac619853 | 48 | Requires: rc-scripts |
73d24d5e | 49 | Requires: systemd-units >= 38 |
08d3794f | 50 | Suggests: multipath-tools |
00f0e5ad | 51 | Provides: group(iscsi) |
52 | Provides: user(iscsi) | |
7b7e198b AM |
53 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
54 | ||
55 | %define _sbindir /sbin | |
56 | ||
57 | %description | |
58 | The Linux iSCSI driver acts as an iSCSI protocol initiator to | |
59 | transport SCSI requests and responses over an IP network between the | |
60 | client and an iSCSI-enabled target device such as a Cisco SN 5420 | |
61 | storage router. The iSCSI protocol is an IETF-defined protocol for IP | |
62 | storage. For more information about the iSCSI protocol, refer to the | |
63 | IETF standards for IP storage at <http://www.ietf.org/>. | |
64 | ||
b6d977e4 JR |
65 | %description -l pl.UTF-8 |
66 | Sterownik Linux iSCSI zachowuje się jak inicjator protokołu iSCSI do | |
67 | transportu zleceń SCSI i odpowiedzi po sieci IP między klientem a | |
68 | urządzeniem docelowym obsługującym iSCSI, takim jak Cisco SN 5420. | |
69 | Protokół iSCSI jest zdefiniowany przez IETF do składowania IP. Więcej | |
70 | informacji o protokole iSCSI znajduje się w standardach IETF na | |
7b7e198b AM |
71 | <http://www.ietf.org/>. |
72 | ||
7b7e198b | 73 | %prep |
2ead0998 | 74 | %setup -q -n %{name}-%{ver}-%{subver} |
d6f0fc3c | 75 | %patch0 -p1 |
6ae08450 | 76 | %patch32 -p1 |
6ae08450 JR |
77 | %patch35 -p1 |
78 | %patch36 -p1 | |
79 | %patch37 -p1 | |
80 | %patch38 -p1 | |
81 | %patch39 -p1 | |
82 | %patch40 -p1 | |
83 | %patch41 -p1 | |
84 | %patch42 -p1 | |
85 | %patch43 -p1 | |
86 | %patch44 -p1 | |
87 | %patch45 -p1 | |
0db1e35b JR |
88 | %patch1 -p1 |
89 | %patch2 -p1 | |
2dc2e68e | 90 | |
4109f740 JB |
91 | %if %{with dynamic} |
92 | sed -i -e 's/-static //' usr/Makefile | |
93 | %endif | |
94 | ||
7b7e198b | 95 | %build |
12da3c75 JR |
96 | cd iscsiuio |
97 | %{__libtoolize} | |
98 | %{__aclocal} | |
99 | %{__autoconf} | |
100 | %{__autoheader} | |
101 | %{__automake} | |
102 | %configure | |
103 | ||
104 | cd ../utils/open-isns | |
cc8b2564 AM |
105 | %configure \ |
106 | --with-slp \ | |
2ead0998 | 107 | --without-security |
cc8b2564 | 108 | cd ../.. |
12da3c75 JR |
109 | %{__make} \ |
110 | CC="%{__cc}" \ | |
111 | OPTFLAGS="%{rpmcflags} %{rpmcppflags} -DUSE_KMOD -lkmod" \ | |
112 | IPC_FLAGS="-DNETLINK_ISCSI=8 -D_GNU_SOURCE" \ | |
113 | KSUBLEVEL=0 | |
7b7e198b AM |
114 | |
115 | %install | |
116 | rm -rf $RPM_BUILD_ROOT | |
12da3c75 JR |
117 | install -d $RPM_BUILD_ROOT%{_sysconfdir}/iscsi/{nodes,send_targets,static,isns,slp,ifaces} \ |
118 | $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig,logrotate.d} \ | |
119 | $RPM_BUILD_ROOT%{systemdunitdir} \ | |
120 | $RPM_BUILD_ROOT/lib/systemd/pld-helpers.d | |
121 | ||
122 | %{__make} install_programs install_doc install_etc \ | |
123 | DESTDIR=$RPM_BUILD_ROOT | |
124 | ||
125 | :> $RPM_BUILD_ROOT%{_sysconfdir}/iscsi/initiatorname.iscsi | |
7b7e198b | 126 | |
5a75338d | 127 | install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/iscsid |
7b7e198b | 128 | install %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/iscsi |
5a75338d | 129 | install %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/iscsi |
12da3c75 | 130 | install %{SOURCE4} $RPM_BUILD_ROOT/etc/logrotate.d/iscsiuio |
7b7e198b | 131 | |
12da3c75 JR |
132 | install usr/iscsistart $RPM_BUILD_ROOT%{_sbindir} |
133 | install doc/iscsistart.8 $RPM_BUILD_ROOT%{_mandir}/man8 | |
134 | install doc/iscsi-iname.8 $RPM_BUILD_ROOT%{_mandir}/man8 | |
7b7e198b | 135 | |
6ae08450 | 136 | install etc/systemd/iscsi.service $RPM_BUILD_ROOT%{systemdunitdir} |
12da3c75 JR |
137 | install etc/systemd/iscsid.service $RPM_BUILD_ROOT%{systemdunitdir} |
138 | install etc/systemd/iscsid.socket $RPM_BUILD_ROOT%{systemdunitdir} | |
6ae08450 JR |
139 | install etc/systemd/iscsiuio.service $RPM_BUILD_ROOT%{systemdunitdir} |
140 | install etc/systemd/iscsiuio.socket $RPM_BUILD_ROOT%{systemdunitdir} | |
141 | ||
142 | install etc/systemd/iscsi-mark-root-nodes $RPM_BUILD_ROOT/lib/systemd/pld-helpers.d | |
00f0e5ad | 143 | |
7b7e198b AM |
144 | %clean |
145 | rm -rf $RPM_BUILD_ROOT | |
146 | ||
00f0e5ad | 147 | %pre |
148 | %groupadd -g 223 iscsi | |
149 | %useradd -u 223 -d /tmp -s /bin/false -c "iSCSI Daemon" -g iscsi iscsi | |
150 | ||
7b7e198b | 151 | %post |
a898f784 AM |
152 | if ! grep -q "^InitiatorName=[^ \t\n]" %{_sysconfdir}/iscsi/initiatorname.iscsi 2>/dev/null; then |
153 | echo "InitiatorName=$(iscsi-iname)" >> %{_sysconfdir}/iscsi/initiatorname.iscsi | |
7b7e198b | 154 | fi |
ac619853 | 155 | /sbin/chkconfig --add iscsi |
5a75338d | 156 | /sbin/chkconfig --add iscsid |
73d24d5e JR |
157 | NORESTART=1 |
158 | %systemd_post iscsi.service iscsid.service iscsiuio.service iscsid.socket iscsiuio.socket | |
ac619853 | 159 | |
7b7e198b AM |
160 | %preun |
161 | if [ "$1" = "0" ]; then | |
5a75338d | 162 | %service iscsid stop |
ac619853 | 163 | %service iscsi stop |
5a75338d | 164 | /sbin/chkconfig --del iscsid |
7b7e198b AM |
165 | /sbin/chkconfig --del iscsi |
166 | fi | |
73d24d5e | 167 | %systemd_preun iscsi.service iscsid.service iscsiuio.service iscsid.socket iscsiuio.socket |
7b7e198b | 168 | |
00f0e5ad | 169 | %postun |
170 | if [ "$1" = "0" ]; then | |
171 | %userremove iscsi | |
172 | %groupremove iscsi | |
173 | fi | |
73d24d5e JR |
174 | %systemd_reload |
175 | ||
176 | %triggerpostun -- %{name} < 2.0.873-1 | |
177 | %systemd_trigger iscsi.service iscsid.service iscsiuio.service | |
178 | /bin/systemctl --quiet enable iscsid.socket || : | |
179 | /bin/systemctl --quiet enable iscsiuio.socket || : | |
00f0e5ad | 180 | |
7b7e198b AM |
181 | %files |
182 | %defattr(644,root,root,755) | |
d62a0dd2 | 183 | %doc Changelog README THANKS |
00f0e5ad | 184 | %dir %{_sysconfdir}/iscsi |
185 | %dir %{_sysconfdir}/iscsi/ifaces | |
12da3c75 | 186 | %dir %{_sysconfdir}/iscsi/isns |
00f0e5ad | 187 | %dir %{_sysconfdir}/iscsi/nodes |
188 | %dir %{_sysconfdir}/iscsi/send_targets | |
12da3c75 JR |
189 | %dir %{_sysconfdir}/iscsi/slp |
190 | %dir %{_sysconfdir}/iscsi/static | |
00f0e5ad | 191 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/iscsi/iscsid.conf |
192 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/iscsi/initiatorname.iscsi | |
7b7e198b | 193 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/iscsi |
12da3c75 | 194 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/iscsiuio |
00f0e5ad | 195 | %attr(754,root,root) /etc/rc.d/init.d/iscsi |
5a75338d | 196 | %attr(754,root,root) /etc/rc.d/init.d/iscsid |
6ae08450 | 197 | %{systemdunitdir}/iscsi.service |
12da3c75 JR |
198 | %{systemdunitdir}/iscsid.service |
199 | %{systemdunitdir}/iscsid.socket | |
6ae08450 JR |
200 | %{systemdunitdir}/iscsiuio.service |
201 | %{systemdunitdir}/iscsiuio.socket | |
202 | %attr(755,root,root) /lib/systemd/pld-helpers.d/iscsi-mark-root-nodes | |
2e832026 ER |
203 | %attr(755,root,root) %{_sbindir}/iscsi-iname |
204 | %attr(755,root,root) %{_sbindir}/iscsiadm | |
205 | %attr(755,root,root) %{_sbindir}/iscsid | |
206 | %attr(755,root,root) %{_sbindir}/iscsistart | |
ab94815b | 207 | %attr(755,root,root) %{_sbindir}/iscsi_discovery |
12da3c75 | 208 | %attr(755,root,root) %{_sbindir}/iscsiuio |
4109f740 JB |
209 | %{_mandir}/man8/iscsi-iname.8* |
210 | %{_mandir}/man8/iscsi_discovery.8* | |
211 | %{_mandir}/man8/iscsiadm.8* | |
212 | %{_mandir}/man8/iscsid.8* | |
213 | %{_mandir}/man8/iscsistart.8* | |
12da3c75 | 214 | %{_mandir}/man8/iscsiuio.8* |