Browse code

Added devel subpackage + geneve module.

Change-Id: I0453003fe1d1dfaed57340ee80c44ee11fc412cc
Reviewed-on: http://photon-jenkins.eng.vmware.com/104
Reviewed-by: Vinay Kulkarni <kulkarniv@vmware.com>
Reviewed-by: Mahmoud Bassiouny <mbassiouny@vmware.com>
Tested-by: jenkins-photon <wangnan2015@hotmail.com>

Alexey Makhalov authored on 2015/11/10 10:00:04
Showing 2 changed files
... ...
@@ -1444,7 +1444,7 @@ CONFIG_MACVLAN=m
1444 1444
 # CONFIG_MACVTAP is not set
1445 1445
 # CONFIG_IPVLAN is not set
1446 1446
 CONFIG_VXLAN=m
1447
-# CONFIG_GENEVE is not set
1447
+CONFIG_GENEVE=m
1448 1448
 # CONFIG_NETCONSOLE is not set
1449 1449
 # CONFIG_NETPOLL is not set
1450 1450
 # CONFIG_NET_POLL_CONTROLLER is not set
... ...
@@ -1,56 +1,53 @@
1 1
 %global security_hardening none
2
-Summary:        Kernel
3
-Name:        linux-esx
4
-Version:    4.2.0
5
-Release:    5%{?dist}
6
-License:    GPLv2
7
-URL:        http://www.kernel.org/
8
-Group:        System Environment/Kernel
2
+Summary:       Kernel
3
+Name:          linux-esx
4
+Version:       4.2.0
5
+Release:       6%{?dist}
6
+License:       GPLv2
7
+URL:           http://www.kernel.org/
8
+Group:         System Environment/Kernel
9 9
 Vendor:        VMware, Inc.
10
-Distribution: Photon
11
-Source0:    http://www.kernel.org/pub/linux/kernel/v4.x/linux-4.2.tar.xz
10
+Distribution:  Photon
11
+Source0:       http://www.kernel.org/pub/linux/kernel/v4.x/linux-4.2.tar.xz
12 12
 %define sha1 linux=5e65d0dc94298527726fcd7458b6126e60fb2a8a
13
-Source1:	config-esx-%{version}
14
-patch1:		01-clear-linux.patch
15
-patch2:		02-pci-probe.patch
16
-patch3:		03-poweroff.patch
17
-patch4:		04-quiet-boot.patch
18
-patch5:		05-pv-ops.patch
19
-
20
-BuildRequires:    bc
21
-BuildRequires:    kbd
22
-BuildRequires:    kmod
23
-BuildRequires:     glib-devel
24
-BuildRequires:     xerces-c-devel
25
-BuildRequires:     xml-security-c-devel
26
-BuildRequires:     libdnet
27
-BuildRequires:     libmspack
28
-BuildRequires:    Linux-PAM
29
-BuildRequires:    openssl-devel
30
-BuildRequires:    procps-ng-devel
31
-Requires:    filesystem kmod coreutils
13
+Source1:       config-esx-%{version}
14
+patch1:        01-clear-linux.patch
15
+patch2:        02-pci-probe.patch
16
+patch3:        03-poweroff.patch
17
+patch4:        04-quiet-boot.patch
18
+patch5:        05-pv-ops.patch
19
+BuildRequires: bc 
20
+BuildRequires: kbd
21
+BuildRequires: kmod
22
+BuildRequires: glib-devel
23
+BuildRequires: xerces-c-devel
24
+BuildRequires: xml-security-c-devel
25
+BuildRequires: libdnet
26
+BuildRequires: libmspack
27
+BuildRequires: Linux-PAM
28
+BuildRequires: openssl-devel
29
+BuildRequires: procps-ng-devel
30
+Requires:      filesystem kmod coreutils
32 31
 
33 32
 %description
34 33
 The Linux kernel build for GOS for VMware hypervisor.
35 34
 
36
-
37
-
38
-%package dev
39
-Summary:    Kernel Dev
40
-Group:        System Environment/Kernel
41
-Requires:    python2
42
-%description dev
35
+%package devel
36
+Summary:       Kernel Dev
37
+Group:         System Environment/Kernel
38
+Requires:      python2
39
+Requires:      %{name} = %{version}-%{release}
40
+%description devel
43 41
 The Linux package contains the Linux kernel dev files
44 42
 
45 43
 %package docs
46
-Summary:    Kernel docs
47
-Group:        System Environment/Kernel
48
-Requires:    python2
44
+Summary:       Kernel docs
45
+Group:         System Environment/Kernel
46
+Requires:      python2
47
+Requires:      %{name} = %{version}-%{release}
49 48
 %description docs
50 49
 The Linux package contains the Linux kernel doc files
51 50
 
52
-
53
-
54 51
 %prep
55 52
 %setup -q -n linux-4.2
56 53
 %patch1 -p1
... ...
@@ -70,6 +67,7 @@ install -vdm 755 %{buildroot}/etc
70 70
 install -vdm 755 %{buildroot}/boot
71 71
 install -vdm 755 %{buildroot}%{_defaultdocdir}/linux-esx-%{version}
72 72
 install -vdm 755 %{buildroot}/etc/modprobe.d
73
+install -vdm 755 %{buildroot}/usr/src/%{name}-headers-%{version}-%{release}
73 74
 make INSTALL_MOD_PATH=%{buildroot} modules_install
74 75
 cp -v arch/x86/boot/bzImage    %{buildroot}/boot/vmlinuz-esx-%{version}
75 76
 cp -v System.map        %{buildroot}/boot/system.map-esx-%{version}
... ...
@@ -79,10 +77,25 @@ cp -r Documentation/*        %{buildroot}%{_defaultdocdir}/linux-esx-%{version}
79 79
 # TODO: noacpi acpi=off noapic pci=conf1,nodomains pcie_acpm=off pnpacpi=off
80 80
 cat > %{buildroot}/boot/%{name}-%{version}-%{release}.cfg << "EOF"
81 81
 # GRUB Environment Block
82
-photon_cmdline=init=/lib/systemd/systemd no_timer_check rcupdate.rcu_expedited=1 rootfstype=ext4 rw systemd.show_status=0 quiet nordrand noreplace-smp cpu_init_udelay=0 plymouth.enable=0
82
+photon_cmdline=init=/lib/systemd/systemd rcupdate.rcu_expedited=1 rootfstype=ext4 rw systemd.show_status=0 quiet nordrand noreplace-smp cpu_init_udelay=0 plymouth.enable=0
83 83
 photon_linux=/boot/vmlinuz-esx-%{version}
84 84
 EOF
85 85
 
86
+# cleanup dangling symlinks
87
+rm -f %{buildroot}/lib/modules/%{version}-esx/source
88
+rm -f %{buildroot}/lib/modules/%{version}-esx/build
89
+
90
+# create /use/src/linux-esx-headers-*/ content
91
+find . -name Makefile* -o -name Kconfig* -o -name *.pl | xargs  sh -c 'cp --parents "$@" %{buildroot}/usr/src/%{name}-headers-%{version}-%{release}'
92
+find arch/x86/include include scripts -type f | xargs  sh -c 'cp --parents "$@" %{buildroot}/usr/src/%{name}-headers-%{version}-%{release}'
93
+find $(find arch/x86 -name include -o -name scripts -type d) -type f | xargs  sh -c 'cp --parents "$@" %{buildroot}/usr/src/%{name}-headers-%{version}-%{release}'
94
+find arch/x86/include Module.symvers include scripts -type f | xargs  sh -c 'cp --parents "$@" %{buildroot}/usr/src/%{name}-headers-%{version}-%{release}'
95
+
96
+# copy .config manually to be where it's expected to be
97
+cp .config %{buildroot}/usr/src/%{name}-headers-%{version}-%{release}
98
+# symling to the build folder
99
+ln -sf /usr/src/%{name}-headers-%{version}-%{release} %{buildroot}/lib/modules/%{version}-esx/build
100
+
86 101
 %post
87 102
 /sbin/depmod -aq %{version}-esx
88 103
 ln -sf %{name}-%{version}-%{release}.cfg /boot/photon.cfg
... ...
@@ -95,18 +108,22 @@ ln -sf %{name}-%{version}-%{release}.cfg /boot/photon.cfg
95 95
 %config(noreplace) /boot/%{name}-%{version}-%{release}.cfg
96 96
 /lib/modules/*
97 97
 %exclude /lib/modules/%{version}-esx/build
98
+%exclude /usr/src
98 99
 
99 100
 %files docs
100 101
 %defattr(-,root,root)
101 102
 %{_defaultdocdir}/linux-esx-%{version}/*
102 103
 
103
-
104
-
105
-%files dev
104
+%files devel
106 105
 %defattr(-,root,root)
107 106
 /lib/modules/%{version}-esx/build
107
+/usr/src/%{name}-headers-%{version}-%{release}
108 108
 
109 109
 %changelog
110
+*   Mon Nov 09 2015 Alexey Makhalov <amakhalov@vmware.com> 4.2.0-6
111
+-   Rename subpackage dev -> devel
112
+-   Added the build essential files in the devel subpackage.
113
+-   .config: added genede driver module.
110 114
 *   Wed Oct 28 2015 Alexey Makhalov <amakhalov@vmware.com> 4.2.0-5
111 115
 -   Import patches from kernel2 repo.
112 116
 -   Added pv-ops patch (timekeeping related improvements).