]> git.ipfire.org Git - people/ms/ipfire-3.x.git/blobdiff - kernel/kernel.nm
u-boot: Update to 2013.07rc2.
[people/ms/ipfire-3.x.git] / kernel / kernel.nm
index ab2e1df1b6f1efe7920ead30550b0a9e0ab43bce..5f27c08b9b40945528e1bf3d0f0335298752dca3 100644 (file)
@@ -4,8 +4,8 @@
 ###############################################################################
 
 name       = kernel
-version    = 3.8.6
-release    = 1
+version    = 3.9.5
+release    = 0.3
 thisapp    = linux-%{version}
 
 maintainer = Arne Fitzenreiter <arne.fitzenreiter@ipfire.org>
@@ -39,6 +39,7 @@ build
        requires
                asciidoc
                audit-devel
+               bc
                binutils >= 2.23.51.0.3-3
                binutils-devel
                bison
@@ -104,14 +105,14 @@ build
        end
 
        if "%{DISTRO_ARCH}" == "armv7hl"
+               # Build the default unified kernel.
+               build_kernel_default = 1
+
                # Build a kernel for Samsung's Exynos SoCs.
                build_kernel_exynos = 1
 
-               # Build a kernel for TI OMAP SoCs.
-               build_kernel_omap = 1
-
                kernel_arch = arm
-               kernel_target = uImage
+               kernel_target = zImage
        end
 
        # mkimage is a requirement to build uImage images.
@@ -139,11 +140,6 @@ build
                kernels += kirkwood
        end
 
-       # Build ARM omap kernel.
-       if "%{build_kernel_omap}" == "1"
-               kernels += omap
-       end
-
        prepare_cmds
                rm -f %{DIR_APP}/localversion-grsec
 
@@ -219,6 +215,21 @@ build
                        make ARCH=%{kernel_arch} CC="gcc -fno-PIE" %{kernel_target} modules \
                                %{kernel_build_flags} %{PARALLELISMFLAGS}
 
+                       # Compile Flattened Device Tree database
+                       case "${DISTRO_ARCH}" in
+                               arm*)
+                                       make ARCH=%{kernel_arch} dtbs
+
+                                       mkdir -pv %{BUILDROOT}/boot/dtb-${fullversion}
+                                       for file in arch/arm/boot/dts/*.dtb; do
+                                               [ -e "${file}" ] || continue
+
+                                               install -m 644 ${file} %{BUILDROOT}/boot/dtb-${fullversion} || exit 1
+                                               rm -f ${file}
+                                       done
+                                       ;;
+                       esac
+
                        # Install the results.
                        mkdir -pv %{BUILDROOT}/boot %{BUILDROOT}/usr/lib/modules/${fullversion}
                        install -m 755 %{kernel_image} %{BUILDROOT}/boot/vmlinuz-${fullversion}
@@ -387,6 +398,7 @@ packages
 
                files
                        /boot/System.map-%{kernel_release}
+                       /boot/dtb-%{kernel_release}
                        /boot/vmlinuz-%{kernel_release}
                        /boot/initramfs-%{kernel_release}.img
                        /etc/ld.so.conf.d/kernel-%{kernel_release}.conf
@@ -430,6 +442,10 @@ packages
                        kernel release %{kernel_release}.
                end
 
+               provides
+                       kernel-devel = %{thisver}
+               end
+
                filter_requires
                        perl>=[0-9]\:.*
                end
@@ -442,18 +458,43 @@ packages
        end
 
        if "%{build_kernel_default}" == "1"
-               package kernel
-                       template KERNEL
+               if "%{DISTRO_ARCH}" == "armv7hl"
+                       package kernel
+                               template KERNEL
 
-                       kernel_name = kernel
-                       kernel_release = %{fullver}
-               end
+                               kernel_name = kernel
+                               kernel_release = %{fullver}
 
-               package kernel-devel
-                       template KERNELDEVEL
+                               # Replace the OMAP kernel.
+                               obsoletes += kernel-omap < %{kernel_release}
+                               conflicts += kernel-omap < %{kernel_release}
+                       end
+
+                       package kernel-devel
+                               template KERNELDEVEL
+
+                               kernel_name = kernel
+                               kernel_release = %{fullver}
+
+                               # Replace the OMAP kernel.
+                               obsoletes += kernel-omap-devel < %{kernel_release}
+                               conflicts += kernel-omap-devel < %{kernel_release}
+                       end
 
-                       kernel_name = kernel
-                       kernel_release = %{fullver}
+               else
+                       package kernel
+                               template KERNEL
+
+                               kernel_name = kernel
+                               kernel_release = %{fullver}
+                       end
+
+                       package kernel-devel
+                               template KERNELDEVEL
+
+                               kernel_name = kernel
+                               kernel_release = %{fullver}
+                       end
                end
        end
 
@@ -505,22 +546,6 @@ packages
                end
        end
 
-       if "%{build_kernel_omap}" == "1"
-               package kernel-omap
-                       template KERNEL
-
-                       kernel_name = kernel-omap
-                       kernel_release = %{fullver}.omap
-               end
-
-               package kernel-omap-devel
-                       template KERNELDEVEL
-
-                       kernel_name = kernel-omap
-                       kernel_release = %{fullver}.omap
-               end
-       end
-
        package kernel-headers
                summary = Header files of the kernel release %{fullver}.
                desciption = %{summary}