mingw-libvirt.spec.in 11.1 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
%{?mingw_package_header}

# Default to skipping autoreconf.  Distros can change just this one line
# (or provide a command-line override) if they backport any patches that
# touch configure.ac or Makefile.am.
%{!?enable_autotools:%define enable_autotools 0}

# The mingw build is client only.  Set up defaults for hypervisor drivers
# that talk via a native remote protocol, and for which prereq mingw
# libraries exist.
%define with_phyp          0%{!?_without_phyp:1}
%define with_esx           0%{!?_without_esx:1}
# missing libwsman, so can't build hyper-v
%define with_hyperv        0%{!?_without_hyperv:0}
%define with_xenapi        0%{!?_without_xenapi:1}
16
%define with_vz            0%{!?_without_vz:0}
17 18 19

# RHEL ships ESX but not PowerHypervisor, HyperV, or libxenserver (xenapi)
%if 0%{?rhel}
20 21 22
    %define with_phyp 0
    %define with_xenapi 0
    %define with_hyperv 0
23 24 25 26 27 28 29 30 31
%endif

Name:           mingw-libvirt
Version:        @VERSION@
Release:        1%{?dist}%{?extra_release}
Summary:        MinGW Windows libvirt virtualization library

License:        LGPLv2+
Group:          Development/Libraries
32
URL:            https://libvirt.org/
33 34 35 36

%if %(echo %{version} | grep -q "\.0$"; echo $?) == 1
    %define mainturl stable_updates/
%endif
37
Source: https://libvirt.org/sources/%{?mainturl}libvirt-%{version}.tar.xz
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60

BuildRequires:  mingw32-filesystem >= 95
BuildRequires:  mingw64-filesystem >= 95
BuildRequires:  mingw32-gcc
BuildRequires:  mingw64-gcc
BuildRequires:  mingw32-binutils
BuildRequires:  mingw64-binutils
BuildRequires:  mingw32-libgpg-error
BuildRequires:  mingw64-libgpg-error
BuildRequires:  mingw32-libgcrypt
BuildRequires:  mingw64-libgcrypt
BuildRequires:  mingw32-gnutls
BuildRequires:  mingw64-gnutls
BuildRequires:  mingw32-gettext
BuildRequires:  mingw64-gettext
BuildRequires:  mingw32-libxml2
BuildRequires:  mingw64-libxml2
BuildRequires:  mingw32-portablexdr
BuildRequires:  mingw64-portablexdr

BuildRequires:  pkgconfig
# Need native version for msgfmt
BuildRequires:  gettext
61
BuildRequires:  python
62 63
BuildRequires:  perl
BuildRequires:  perl(Getopt::Long)
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120
%if 0%{?enable_autotools}
BuildRequires: autoconf
BuildRequires: automake
BuildRequires: gettext-devel
BuildRequires: libtool
%endif

%if %{with_phyp}
BuildRequires: mingw32-libssh2
BuildRequires: mingw64-libssh2
%endif
%if %{with_esx}
BuildRequires: mingw32-curl
BuildRequires: mingw64-curl
%endif

BuildArch:      noarch

%description
MinGW Windows libvirt virtualization library.

# Mingw32
%package -n mingw32-libvirt
Summary: %{summary}

%description -n mingw32-libvirt
MinGW Windows libvirt virtualization library.

%package -n mingw32-libvirt-static
Summary: %{summary}
Requires: mingw32-libvirt = %{version}-%{release}

%description -n mingw32-libvirt-static
MinGW Windows libvirt virtualization library, static version.

# Mingw64
%package -n mingw64-libvirt
Summary: %{summary}

%description -n mingw64-libvirt
MinGW Windows libvirt virtualization library.

%package -n mingw64-libvirt-static
Summary: %{summary}
Requires: mingw64-libvirt = %{version}-%{release}

%description -n mingw64-libvirt-static
MinGW Windows libvirt virtualization library, static version.

%{?mingw_debug_package}


%prep
%setup -q -n libvirt-%{version}

%build
%if ! %{with_phyp}
121
    %define _without_phyp --without-phyp
122 123 124
%endif

%if ! %{with_esx}
125
    %define _without_esx --without-esx
126 127 128
%endif

%if ! %{with_hyperv}
129
    %define _without_hyperv --without-hyperv
130 131 132
%endif

%if ! %{with_xenapi}
133
    %define _without_xenapi --without-xenapi
134 135
%endif

136 137
%if ! %{with_vz}
    %define _without_vz --without-vz
D
Dmitry Guryanov 已提交
138 139
%endif

140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161
%if 0%{?enable_autotools}
autoreconf -if
%endif

# XXX enable SASL in future
%mingw_configure \
  --enable-static \
  --without-xen \
  --without-qemu \
  --without-openvz \
  --without-lxc \
  --without-vbox \
  %{?_without_xenapi} \
  --without-sasl \
  --without-avahi \
  --without-polkit \
  --without-libvirtd \
  --without-uml \
  %{?_without_phyp} \
  %{?_without_esx} \
  %{?_without_hyperv} \
  --without-vmware \
D
Dmitry Guryanov 已提交
162
  --without-parallels \
163 164
  --without-netcf \
  --without-audit \
165 166
  --without-dtrace \
  --enable-expensive-tests
167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185

%mingw_make %{?_smp_mflags}


%install
%mingw_make_install "DESTDIR=$RPM_BUILD_ROOT"

# Libtool files don't need to be bundled
find $RPM_BUILD_ROOT -name "*.la" -delete

rm -rf $RPM_BUILD_ROOT%{mingw32_sysconfdir}/libvirt/nwfilter
rm -rf $RPM_BUILD_ROOT%{mingw64_sysconfdir}/libvirt/nwfilter
rm -rf $RPM_BUILD_ROOT%{mingw32_datadir}/doc/*
rm -rf $RPM_BUILD_ROOT%{mingw64_datadir}/doc/*
rm -rf $RPM_BUILD_ROOT%{mingw32_datadir}/gtk-doc/*
rm -rf $RPM_BUILD_ROOT%{mingw64_datadir}/gtk-doc/*

rm -rf $RPM_BUILD_ROOT%{mingw32_libexecdir}/libvirt_iohelper.exe
rm -rf $RPM_BUILD_ROOT%{mingw64_libexecdir}/libvirt_iohelper.exe
E
Eric Blake 已提交
186 187
rm -rf $RPM_BUILD_ROOT%{mingw32_libexecdir}/libvirt-guests.sh
rm -rf $RPM_BUILD_ROOT%{mingw64_libexecdir}/libvirt-guests.sh
188 189 190 191 192 193


# Mingw32
%files -n mingw32-libvirt
%dir %{mingw32_sysconfdir}/libvirt/
%config(noreplace) %{mingw32_sysconfdir}/libvirt/libvirt.conf
194
%config(noreplace) %{mingw32_sysconfdir}/libvirt/libvirt-admin.conf
195 196 197

%{mingw32_bindir}/libvirt-0.dll
%{mingw32_bindir}/virsh.exe
198
%{mingw32_bindir}/virt-admin.exe
199 200
%{mingw32_bindir}/virt-xml-validate
%{mingw32_bindir}/virt-pki-validate
201
%{mingw32_bindir}/libvirt-lxc-0.dll
202
%{mingw32_bindir}/libvirt-qemu-0.dll
203
%{mingw32_bindir}/libvirt-admin-0.dll
204 205 206

%{mingw32_libdir}/libvirt.dll.a
%{mingw32_libdir}/pkgconfig/libvirt.pc
207 208
%{mingw32_libdir}/pkgconfig/libvirt-qemu.pc
%{mingw32_libdir}/pkgconfig/libvirt-lxc.pc
209
%{mingw32_libdir}/pkgconfig/libvirt-admin.pc
210
%{mingw32_libdir}/libvirt-lxc.dll.a
211
%{mingw32_libdir}/libvirt-qemu.dll.a
212
%{mingw32_libdir}/libvirt-admin.dll.a
213 214 215 216 217

%dir %{mingw32_datadir}/libvirt/
%dir %{mingw32_datadir}/libvirt/schemas/
%{mingw32_datadir}/libvirt/schemas/basictypes.rng
%{mingw32_datadir}/libvirt/schemas/capability.rng
218
%{mingw32_datadir}/libvirt/schemas/cputypes.rng
219
%{mingw32_datadir}/libvirt/schemas/domain.rng
M
Michal Privoznik 已提交
220
%{mingw32_datadir}/libvirt/schemas/domaincaps.rng
221 222 223 224 225 226 227 228
%{mingw32_datadir}/libvirt/schemas/domaincommon.rng
%{mingw32_datadir}/libvirt/schemas/domainsnapshot.rng
%{mingw32_datadir}/libvirt/schemas/interface.rng
%{mingw32_datadir}/libvirt/schemas/network.rng
%{mingw32_datadir}/libvirt/schemas/networkcommon.rng
%{mingw32_datadir}/libvirt/schemas/nodedev.rng
%{mingw32_datadir}/libvirt/schemas/nwfilter.rng
%{mingw32_datadir}/libvirt/schemas/secret.rng
229
%{mingw32_datadir}/libvirt/schemas/storagecommon.rng
230 231 232 233
%{mingw32_datadir}/libvirt/schemas/storagepool.rng
%{mingw32_datadir}/libvirt/schemas/storagevol.rng
%dir %{mingw32_datadir}/libvirt/api/
%{mingw32_datadir}/libvirt/api/libvirt-api.xml
234
%{mingw32_datadir}/libvirt/api/libvirt-lxc-api.xml
235
%{mingw32_datadir}/libvirt/api/libvirt-qemu-api.xml
236
%{mingw32_datadir}/libvirt/api/libvirt-admin-api.xml
237 238 239

%{mingw32_datadir}/libvirt/cpu_map.xml

D
Daniel P. Berrange 已提交
240 241
%{mingw32_datadir}/libvirt/test-screenshot.png

242 243 244 245
%{mingw32_datadir}/locale/*/LC_MESSAGES/libvirt.mo

%dir %{mingw32_includedir}/libvirt
%{mingw32_includedir}/libvirt/libvirt.h
246
%{mingw32_includedir}/libvirt/libvirt-common.h
247
%{mingw32_includedir}/libvirt/libvirt-domain.h
248
%{mingw32_includedir}/libvirt/libvirt-domain-snapshot.h
249
%{mingw32_includedir}/libvirt/libvirt-event.h
250
%{mingw32_includedir}/libvirt/libvirt-host.h
251
%{mingw32_includedir}/libvirt/libvirt-interface.h
252
%{mingw32_includedir}/libvirt/libvirt-network.h
253
%{mingw32_includedir}/libvirt/libvirt-nodedev.h
254
%{mingw32_includedir}/libvirt/libvirt-nwfilter.h
255
%{mingw32_includedir}/libvirt/libvirt-secret.h
256
%{mingw32_includedir}/libvirt/libvirt-storage.h
257
%{mingw32_includedir}/libvirt/libvirt-stream.h
258
%{mingw32_includedir}/libvirt/virterror.h
259
%{mingw32_includedir}/libvirt/libvirt-lxc.h
260
%{mingw32_includedir}/libvirt/libvirt-qemu.h
261
%{mingw32_includedir}/libvirt/libvirt-admin.h
262 263

%{mingw32_mandir}/man1/virsh.1*
264
%{mingw32_mandir}/man1/virt-admin.1*
265 266
%{mingw32_mandir}/man1/virt-xml-validate.1*
%{mingw32_mandir}/man1/virt-pki-validate.1*
267
%{mingw32_mandir}/man7/virkey*.7*
268 269 270

%files -n mingw32-libvirt-static
%{mingw32_libdir}/libvirt.a
271
%{mingw32_libdir}/libvirt-lxc.a
272
%{mingw32_libdir}/libvirt-qemu.a
273
%{mingw32_libdir}/libvirt-admin.a
274 275 276 277 278

# Mingw64
%files -n mingw64-libvirt
%dir %{mingw64_sysconfdir}/libvirt/
%config(noreplace) %{mingw64_sysconfdir}/libvirt/libvirt.conf
279
%config(noreplace) %{mingw64_sysconfdir}/libvirt/libvirt-admin.conf
280 281 282

%{mingw64_bindir}/libvirt-0.dll
%{mingw64_bindir}/virsh.exe
283
%{mingw64_bindir}/virt-admin.exe
284 285
%{mingw64_bindir}/virt-xml-validate
%{mingw64_bindir}/virt-pki-validate
286
%{mingw64_bindir}/libvirt-lxc-0.dll
287
%{mingw64_bindir}/libvirt-qemu-0.dll
288
%{mingw64_bindir}/libvirt-admin-0.dll
289 290 291

%{mingw64_libdir}/libvirt.dll.a
%{mingw64_libdir}/pkgconfig/libvirt.pc
292 293
%{mingw64_libdir}/pkgconfig/libvirt-qemu.pc
%{mingw64_libdir}/pkgconfig/libvirt-lxc.pc
294
%{mingw64_libdir}/pkgconfig/libvirt-admin.pc
295
%{mingw64_libdir}/libvirt-lxc.dll.a
296
%{mingw64_libdir}/libvirt-qemu.dll.a
297
%{mingw64_libdir}/libvirt-admin.dll.a
298 299 300 301 302

%dir %{mingw64_datadir}/libvirt/
%dir %{mingw64_datadir}/libvirt/schemas/
%{mingw64_datadir}/libvirt/schemas/basictypes.rng
%{mingw64_datadir}/libvirt/schemas/capability.rng
J
Jiri Denemark 已提交
303
%{mingw64_datadir}/libvirt/schemas/cputypes.rng
304
%{mingw64_datadir}/libvirt/schemas/domain.rng
M
Michal Privoznik 已提交
305
%{mingw64_datadir}/libvirt/schemas/domaincaps.rng
306 307 308 309 310 311 312 313
%{mingw64_datadir}/libvirt/schemas/domaincommon.rng
%{mingw64_datadir}/libvirt/schemas/domainsnapshot.rng
%{mingw64_datadir}/libvirt/schemas/interface.rng
%{mingw64_datadir}/libvirt/schemas/network.rng
%{mingw64_datadir}/libvirt/schemas/networkcommon.rng
%{mingw64_datadir}/libvirt/schemas/nodedev.rng
%{mingw64_datadir}/libvirt/schemas/nwfilter.rng
%{mingw64_datadir}/libvirt/schemas/secret.rng
314
%{mingw64_datadir}/libvirt/schemas/storagecommon.rng
315 316 317 318
%{mingw64_datadir}/libvirt/schemas/storagepool.rng
%{mingw64_datadir}/libvirt/schemas/storagevol.rng
%dir %{mingw64_datadir}/libvirt/api/
%{mingw64_datadir}/libvirt/api/libvirt-api.xml
319
%{mingw64_datadir}/libvirt/api/libvirt-lxc-api.xml
320
%{mingw64_datadir}/libvirt/api/libvirt-qemu-api.xml
321
%{mingw64_datadir}/libvirt/api/libvirt-admin-api.xml
322 323 324

%{mingw64_datadir}/libvirt/cpu_map.xml

D
Daniel P. Berrange 已提交
325 326
%{mingw64_datadir}/libvirt/test-screenshot.png

327 328 329 330
%{mingw64_datadir}/locale/*/LC_MESSAGES/libvirt.mo

%dir %{mingw64_includedir}/libvirt
%{mingw64_includedir}/libvirt/libvirt.h
331
%{mingw64_includedir}/libvirt/libvirt-common.h
332
%{mingw64_includedir}/libvirt/libvirt-domain.h
333
%{mingw64_includedir}/libvirt/libvirt-domain-snapshot.h
334
%{mingw64_includedir}/libvirt/libvirt-event.h
335
%{mingw64_includedir}/libvirt/libvirt-host.h
336
%{mingw64_includedir}/libvirt/libvirt-interface.h
337
%{mingw64_includedir}/libvirt/libvirt-network.h
338
%{mingw64_includedir}/libvirt/libvirt-nodedev.h
339
%{mingw64_includedir}/libvirt/libvirt-nwfilter.h
340
%{mingw64_includedir}/libvirt/libvirt-secret.h
341
%{mingw64_includedir}/libvirt/libvirt-storage.h
342
%{mingw64_includedir}/libvirt/libvirt-stream.h
343
%{mingw64_includedir}/libvirt/virterror.h
344
%{mingw64_includedir}/libvirt/libvirt-lxc.h
345
%{mingw64_includedir}/libvirt/libvirt-qemu.h
346
%{mingw64_includedir}/libvirt/libvirt-admin.h
347 348

%{mingw64_mandir}/man1/virsh.1*
349
%{mingw64_mandir}/man1/virt-admin.1*
350 351
%{mingw64_mandir}/man1/virt-xml-validate.1*
%{mingw64_mandir}/man1/virt-pki-validate.1*
352
%{mingw64_mandir}/man7/virkey*.7*
353 354 355

%files -n mingw64-libvirt-static
%{mingw64_libdir}/libvirt.a
356
%{mingw64_libdir}/libvirt-lxc.a
357
%{mingw64_libdir}/libvirt-qemu.a
358
%{mingw64_libdir}/libvirt-admin.a
359 360 361


%changelog