packaging: Add spec file for ARM64
authorJoonyoung Shim <jy0922.shim@samsung.com>
Tue, 24 Jan 2017 04:19:59 +0000 (13:19 +0900)
committerJoonyoung Shim <jy0922.shim@samsung.com>
Wed, 26 Jul 2017 02:40:36 +0000 (11:40 +0900)
This adds linux-rpi3-arm64.spec file for ARM64 rpm packaging.

v2: Remove creating fit style image

Change-Id: I428fd32b69d082d935159476ace30c59c14b570d
Signed-off-by: Joonyoung Shim <jy0922.shim@samsung.com>
packaging/linux-rpi3-arm64.spec [new file with mode: 0644]

diff --git a/packaging/linux-rpi3-arm64.spec b/packaging/linux-rpi3-arm64.spec
new file mode 100644 (file)
index 0000000..44c1e0c
--- /dev/null
@@ -0,0 +1,96 @@
+%define config_name tizen_bcmrpi3_defconfig
+%define buildarch arm64
+%define target_board rpi3
+%define variant %{buildarch}-%{target_board}
+
+Name: %{target_board}-linux-kernel
+Summary: The Linux Kernel for Raspberry Pi3
+Version: 4.9.8
+Release: 0
+License: GPL-2.0
+ExclusiveArch: aarch64
+Group: System/Kernel
+Vendor: The Linux Community
+URL: https://www.kernel.org
+Source0:   linux-kernel-%{version}.tar.xz
+BuildRoot: %{_tmppath}/%{name}-%{PACKAGE_VERSION}-root
+
+%define fullVersion %{version}-%{variant}
+
+BuildRequires: bc
+BuildRequires: module-init-tools
+BuildRequires: u-boot-tools >= 2016.03
+
+%description
+The Linux Kernel, the operating system core itself
+
+%package -n %{variant}-linux-kernel
+License: GPL-2.0
+Summary: Tizen kernel for %{target_board}
+Group: System/Kernel
+Provides: %{variant}-kernel-uname-r = %{fullVersion}
+Provides: linux-kernel = %{version}-%{release}
+
+%description -n %{variant}-linux-kernel
+This package contains the Linux kernel for Tizen (arch %{buildarch}, target board %{target_board})
+
+%package -n %{variant}-linux-kernel-modules
+Summary: Kernel modules for %{target_board}
+Group: System/Kernel
+Provides: %{variant}-kernel-modules = %{fullVersion}
+Provides: %{variant}-kernel-modules-uname-r = %{fullVersion}
+
+%description -n %{variant}-linux-kernel-modules
+Kernel-modules includes the loadable kernel modules(.ko files) for %{target_board}
+
+%prep
+%setup -q -n linux-kernel-%{version}
+
+%build
+# Make sure EXTRAVERSION says what we want it to say
+sed -i "s/^EXTRAVERSION.*/EXTRAVERSION = -%{variant}/" Makefile
+
+# 1-1. Set config file
+make %{config_name}
+
+# 1-2. Build Image/Image.gz
+make %{?_smp_mflags}
+
+# 1-3. Build dtbs
+make dtbs %{?_smp_mflags}
+
+# 1-4. Build modules
+make modules %{?_smp_mflags}
+
+%install
+QA_SKIP_BUILD_ROOT="DO_NOT_WANT"; export QA_SKIP_BUILD_ROOT
+
+# 2-1. Destination directories
+mkdir -p %{buildroot}/boot
+mkdir -p %{buildroot}/lib/modules
+
+# 2-2. Install kernel binary and DTB
+install -m 644 arch/%{buildarch}/boot/Image %{buildroot}/boot/
+install -m 644 arch/%{buildarch}/boot/dts/broadcom/bcm*.dtb %{buildroot}/boot/
+
+# 2-3. Install modules
+make INSTALL_MOD_STRIP=1 INSTALL_MOD_PATH=%{buildroot} modules_install
+
+# 2-4. Install boot binary files
+install -m 644 rpi3/boot/* %{buildroot}/boot/
+
+%clean
+rm -rf %{buildroot}
+
+%files -n %{variant}-linux-kernel-modules
+/lib/modules/*
+
+%files -n %{variant}-linux-kernel
+%license COPYING
+/boot/Image
+/boot/bcm*.dtb
+/boot/bootcode.bin
+/boot/config.txt
+/boot/fixup.dat
+/boot/LICENCE.broadcom
+/boot/start.elf