Browse code

Added python3 packages and moved python2 site packages from devel to python-rpm. (Bug 1832136)

Change-Id: Ic6c17e50c5539d7d12761a331b321fdefbf76592
Reviewed-on: http://photon-jenkins.eng.vmware.com:8082/2163
Tested-by: gerrit-photon <photon-checkins@vmware.com>
Reviewed-by: Priyesh Padmavilasom <ppadmavilasom@vmware.com>

xiaolin-vmware authored on 2017/03/30 06:26:40
Showing 2 changed files
... ...
@@ -1,70 +1,90 @@
1
-Summary:          Package manager
2
-Name:             rpm
3
-Version:          4.11.2
4
-Release:          19%{?dist}
5
-License:          GPLv2+
6
-URL:              http://rpm.org
7
-Group:            Applications/System
8
-Vendor:           VMware, Inc.
9
-Distribution:     Photon
10
-Source0:          http://rpm.org/releases/rpm-4.11.x/%{name}-%{version}.tar.bz2
11
-%define sha1      rpm-4.11.2=ceef44bd180d48d4004c437bc31a3ea038f54e3e
12
-Source1:          http://download.oracle.com/berkeley-db/db-5.3.28.tar.gz
13
-%define sha1      db=fa3f8a41ad5101f43d08bc0efb6241c9b6fc1ae9
14
-Source2:          macros
15
-Source3:          brp-strip-debug-symbols
16
-Source4:          brp-strip-unneeded
17
-Patch0:           find-debuginfo-do-not-generate-non-existing-build-id.patch
18
-Patch1:           rpm-4.11.2-cve-2014-8118.patch
19
-Requires:         bash
20
-Requires:         rpm-libs = %{version}-%{release}
21
-BuildRequires:    python2
22
-BuildRequires:    python2-libs
23
-BuildRequires:    python2-devel
24
-BuildRequires:    popt-devel
25
-BuildRequires:    nss-devel
26
-BuildRequires:    elfutils-devel
27
-BuildRequires:    libcap-devel
28
-BuildRequires:    xz-devel
1
+%{!?python2_sitelib: %define python2_sitelib %(python2 -c "from distutils.sysconfig import get_python_lib;print(get_python_lib())")}
2
+%{!?python3_sitelib: %define python3_sitelib %(python3 -c "from distutils.sysconfig import get_python_lib;print(get_python_lib())")}
3
+
4
+Summary:        Package manager
5
+Name:           rpm
6
+Version:        4.11.2
7
+Release:        20%{?dist}
8
+License:        GPLv2+
9
+URL:            http://rpm.org
10
+Group:          Applications/System
11
+Vendor:         VMware, Inc.
12
+Distribution:   Photon
13
+Source0:        http://rpm.org/releases/rpm-4.11.x/%{name}-%{version}.tar.bz2
14
+%define sha1    rpm-4.11.2=ceef44bd180d48d4004c437bc31a3ea038f54e3e
15
+Source1:        http://download.oracle.com/berkeley-db/db-5.3.28.tar.gz
16
+%define sha1    db=fa3f8a41ad5101f43d08bc0efb6241c9b6fc1ae9
17
+Source2:        macros
18
+Source3:        brp-strip-debug-symbols
19
+Source4:        brp-strip-unneeded
20
+Patch0:         find-debuginfo-do-not-generate-non-existing-build-id.patch
21
+Patch1:         rpm-4.11.2-cve-2014-8118.patch
22
+Requires:       bash
23
+Requires:       rpm-libs = %{version}-%{release}
24
+BuildRequires:  python2
25
+BuildRequires:  python2-libs
26
+BuildRequires:  python2-devel
27
+BuildRequires:  popt-devel
28
+BuildRequires:  nss-devel
29
+BuildRequires:  elfutils-devel
30
+BuildRequires:  libcap-devel
31
+BuildRequires:  xz-devel
32
+
29 33
 %description
30 34
 RPM package manager
31 35
 
32 36
 %package devel
33
-Requires:   python2
34
-Summary:    Libraries and header files for rpm
35
-Provides:   pkgconfig(rpm)
36
-Requires:   %{name} = %{version}-%{release}
37
+Requires:       python2
38
+Summary:        Libraries and header files for rpm
39
+Provides:       pkgconfig(rpm)
40
+Requires:       %{name} = %{version}-%{release}
37 41
 %description devel
38 42
 Static libraries and header files for the support library for rpm
39 43
 
40 44
 %package libs
41
-Summary:    Libraries for rpm
42
-Requires:   nss 
43
-Requires:   popt
44
-Requires:   libgcc
45
-Requires:   libcap
46
-Requires:   zlib
47
-Requires:   bzip2
48
-Requires:   elfutils-libelf
49
-Requires:   xz
50
-%description libs
45
+Summary:        Libraries for rpm
46
+Requires:       nss
47
+Requires:       popt
48
+Requires:       libgcc
49
+Requires:       libcap
50
+Requires:       zlib
51
+Requires:       bzip2
52
+Requires:       elfutils-libelf
53
+Requires:       xz
54
+%description    libs
51 55
 Shared libraries librpm and librpmio
52 56
 
53 57
 %package build
54
-Requires:   perl
55
-Requires:   %{name}-devel = %{version}-%{release}
56
-Requires:   elfutils-libelf
58
+Requires:       perl
59
+Requires:       %{name}-devel = %{version}-%{release}
60
+Requires:       elfutils-libelf
57 61
 Summary: Binaries, scripts and libraries needed to build rpms.
58 62
 %description build
59 63
 Binaries, libraries and scripts to build rpms.
60 64
 
61 65
 %package lang
62
-Summary:    Additional language files for rpm
63
-Group:      Applications/System
64
-Requires:   %{name} = %{version}-%{release}
66
+Summary:        Additional language files for rpm
67
+Group:          Applications/System
68
+Requires:       %{name} = %{version}-%{release}
65 69
 %description lang
66 70
 These are the additional language files of rpm.
67 71
 
72
+%package -n     python-rpm
73
+Summary:        Python 2 bindings for rpm.
74
+Group:          Development/Libraries
75
+BuildRequires:  python2-devel
76
+Requires:       python2
77
+%description -n python-rpm
78
+
79
+%package -n     python3-rpm
80
+Summary:        Python 3 bindings for rpm.
81
+Group:          Development/Libraries
82
+BuildRequires:  python3-devel
83
+Requires:       python3
84
+
85
+%description -n python3-rpm
86
+Python3 rpm.
87
+
68 88
 %prep
69 89
 %setup -q
70 90
 %patch0 -p1
... ...
@@ -96,6 +116,12 @@ mv db-5.3.28 db
96 96
         --without-lua \
97 97
         --disable-silent-rules
98 98
 make %{?_smp_mflags}
99
+
100
+pushd python
101
+python2 setup.py build
102
+python3 setup.py build
103
+popd
104
+
99 105
 %install
100 106
 make DESTDIR=%{buildroot} install
101 107
 find %{buildroot} -name '*.la' -delete
... ...
@@ -106,8 +132,18 @@ install -vm644 %{SOURCE2} %{buildroot}%{_sysconfdir}/rpm/
106 106
 install -vm755 %{SOURCE3} %{buildroot}%{_libdir}/rpm/
107 107
 install -vm755 %{SOURCE4} %{buildroot}%{_libdir}/rpm/
108 108
 
109
+pushd python
110
+python2 setup.py install --skip-build --prefix=%{_prefix} --root=%{buildroot}
111
+python3 setup.py install --skip-build --prefix=%{_prefix} --root=%{buildroot}
112
+popd
113
+
109 114
 %check
110 115
 make %{?_smp_mflags} check
116
+pushd python
117
+python2 setup.py test
118
+python3 setup.py test
119
+popd
120
+
111 121
 
112 122
 %post libs -p /sbin/ldconfig
113 123
 %postun libs -p /sbin/ldconfig
... ...
@@ -208,7 +244,6 @@ rm -rf %{buildroot}
208 208
 
209 209
 %files devel
210 210
 %defattr(-,root,root)
211
-%{_libdir}/python*
212 211
 %{_includedir}/*
213 212
 %{_libdir}/pkgconfig/rpm.pc
214 213
 %{_libdir}/librpmio.so
... ...
@@ -219,7 +254,17 @@ rm -rf %{buildroot}
219 219
 %files lang -f %{name}.lang
220 220
 %defattr(-,root,root)
221 221
 
222
+%files -n python-rpm
223
+%defattr(-,root,root)
224
+%{python2_sitelib}/*
225
+
226
+%files -n python3-rpm
227
+%defattr(-,root,root)
228
+%{python3_sitelib}/*
229
+
222 230
 %changelog
231
+*    Tue Mar 21 2017 Xiaolin Li <xiaolinl@vmware.com> 4.11.2-20
232
+-    Added python3 packages and moved python2 site packages from devel to python-rpm.
223 233
 *    Mon Jan 10 2017 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 4.11.2-19
224 234
 -    added buildrequires for xz-devel for PayloadIsLzma cap
225 235
 *    Thu Dec 15 2016 Xiaolin Li <xiaolinl@vmware.com> 4.11.2-18
... ...
@@ -1,42 +1,43 @@
1
-Summary:	RPM installer/updater
2
-Name:		yum
3
-Version:	3.4.3
4
-Release:	6%{?dist}
5
-License:	GPLv2+
6
-Group:		System Environment/Base
7
-Source0:	%{name}-%{version}.tar.gz
8
-Patch0:		yumconf.patch
9
-Patch1:		parser.patch
10
-%define sha1 yum=8ec5d339e4518a7908fd4db0721740288a3d8b6c
11
-URL:		http://yum.baseurl.org/
12
-Vendor:		VMware, Inc.
13
-Distribution:	Photon
14
-BuildRequires:	python2
15
-BuildRequires:	python2-libs
16
-BuildRequires:	gettext
17
-BuildRequires:	intltool
18
-BuildRequires:	pycurl
19
-BuildRequires:	urlgrabber
20
-Requires:	python2
21
-Requires:	python2-libs
22
-Requires:	python-xml
23
-Requires:	urlgrabber
24
-Requires:	yum-metadata-parser >= 1.1.0
25
-Requires:	pycurl
26
-Requires:	rpm-devel
27
-Conflicts:	rpm >= 5-0
28
-Obsoletes:	yum-skip-broken <= 1.1.18
29
-Obsoletes:	yum-basearchonly <= 1.1.9
30
-Obsoletes:	yum-allow-downgrade < 1.1.20-0
31
-Obsoletes:	yum-plugin-allow-downgrade < 1.1.22-0
32
-Obsoletes:	yum-plugin-protect-packages < 1.1.27-0
33
-Provides:	yum-skip-broken
34
-Provides:	yum-basearchonly
35
-Provides:	yum-allow-downgrade
36
-Provides: 	yum-plugin-allow-downgrade
37
-Provides: 	yum-protect-packages
38
-Provides: 	yum-plugin-protect-packages
39
-BuildArchitectures:	noarch
1
+Summary:        RPM installer/updater
2
+Name:           yum
3
+Version:        3.4.3
4
+Release:        7%{?dist}
5
+License:        GPLv2+
6
+Group:          System Environment/Base
7
+Source0:        %{name}-%{version}.tar.gz
8
+Patch0:         yumconf.patch
9
+Patch1:         parser.patch
10
+%define sha1    yum=8ec5d339e4518a7908fd4db0721740288a3d8b6c
11
+URL:            http://yum.baseurl.org/
12
+Vendor:         VMware, Inc.
13
+Distribution:   Photon
14
+BuildRequires:  python2
15
+BuildRequires:  python2-libs
16
+BuildRequires:  gettext
17
+BuildRequires:  intltool
18
+BuildRequires:  pycurl
19
+BuildRequires:  urlgrabber
20
+Requires:       python2
21
+Requires:       python2-libs
22
+Requires:       python-xml
23
+Requires:       urlgrabber
24
+Requires:       yum-metadata-parser >= 1.1.0
25
+Requires:       pycurl
26
+Requires:       rpm-devel
27
+Requires:       python-rpm
28
+Conflicts:      rpm >= 5-0
29
+Obsoletes:      yum-skip-broken <= 1.1.18
30
+Obsoletes:      yum-basearchonly <= 1.1.9
31
+Obsoletes:      yum-allow-downgrade < 1.1.20-0
32
+Obsoletes:      yum-plugin-allow-downgrade < 1.1.22-0
33
+Obsoletes:      yum-plugin-protect-packages < 1.1.27-0
34
+Provides:       yum-skip-broken
35
+Provides:       yum-basearchonly
36
+Provides:       yum-allow-downgrade
37
+Provides:       yum-plugin-allow-downgrade
38
+Provides:       yum-protect-packages
39
+Provides:       yum-plugin-protect-packages
40
+BuildArchitectures: noarch
40 41
 
41 42
 %description
42 43
 Yum is a utility that can check for and automatically download and
... ...
@@ -199,13 +200,15 @@ touch $RPM_BUILD_ROOT/var/lib/yum/uuid
199 199
 %exclude %{_mandir}/man*/yum-updatesd*
200 200
 
201 201
 %changelog
202
-*	Mon Jun 06 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 3.4.3-6
203
--	Engage missing patches for yum config and parser
204
-*	Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 3.4.3-5
205
--	GA - Bump release of all rpms
206
-*	Wed May 11 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 3.4.3-4
207
--	Fix to read photon repo files, set distroverpkg to photon-release
208
-*	Thu Apr 28 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 3.4.3-3
209
--	Add python-xml dependency
210
-*	Mon Jun 22 2015 Divya Thaluru <dthaluru@vmware.com> 3.4.3-2
211
--	Adding python and python-libs as run time dependent packages
202
+*   Wed Mar 29 2017 Xiaolin Li <xiaolinl@vmware.com> 3.4.3-7
203
+-   Added python-rpm to requires.
204
+*   Mon Jun 06 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 3.4.3-6
205
+-   Engage missing patches for yum config and parser
206
+*   Tue May 24 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 3.4.3-5
207
+-   GA - Bump release of all rpms
208
+*   Wed May 11 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 3.4.3-4
209
+-   Fix to read photon repo files, set distroverpkg to photon-release
210
+*   Thu Apr 28 2016 Priyesh Padmavilasom <ppadmavilasom@vmware.com> 3.4.3-3
211
+-   Add python-xml dependency
212
+*   Mon Jun 22 2015 Divya Thaluru <dthaluru@vmware.com> 3.4.3-2
213
+-   Adding python and python-libs as run time dependent packages