X-Git-Url: http://git.ipfire.org/?p=people%2Fms%2Fipfire-3.x.git;a=blobdiff_plain;f=kernel%2Fkernel.nm;h=1650e89107a0902dc94fea83aca4240b09f20608;hp=ad2019c27b0da9dbc38ba232853d0753ee9f30eb;hb=302e8df8ef41cb06c3d9f4b4f785797434f4a1de;hpb=703bc627fd4aff985118f23986c4550c45f344fc diff --git a/kernel/kernel.nm b/kernel/kernel.nm index ad2019c27..1650e8910 100644 --- a/kernel/kernel.nm +++ b/kernel/kernel.nm @@ -4,7 +4,7 @@ ############################################################################### name = kernel -version = 3.10.9 +version = 3.13.2 release = 1 thisapp = linux-%{version} @@ -107,9 +107,7 @@ build 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_kernel_lpae = 1 kernel_arch = arm kernel_target = zImage @@ -125,21 +123,25 @@ build kernels += default end - # Build exynos kernel. - if "%{build_kernel_exynos}" == "1" - kernels += exynos - end - # Build legacy kernel. if "%{build_kernel_legacy}" == "1" kernels += legacy end + # Build lpae kernel + if "%{build_kernel_lpae}" == "1" + kernels += lpae + end + # Build ARM kirkwood kernel. if "%{build_kernel_kirkwood}" == "1" kernels += kirkwood end + perf_make = make %{MAKETUNING} -C tools/perf V=1 WERROR=0 \ + NO_LIBUNWIND=1 HAVE_CPLUS_DEMANGLE=1 NO_GTK2=1 NO_LIBNUMA=1 \ + NO_STRLCPY=1 NO_BIONIC=1 prefix=%{prefix} perfexecdir=lib/perf-core + prepare_cmds rm -f %{DIR_APP}/localversion-grsec @@ -185,6 +187,10 @@ build for kernel in %{kernels}; do configure_kernel ${kernel} done + + # Tools + # Prevent perf from installing any files in /usr/libexec + sed -i %{DIR_APP}/tools/perf/config/Makefile -e "s/libexec/lib/g" end build @@ -311,19 +317,43 @@ build done # Build tools. + # perf + %{perf_make} DESTDIR=%{BUILDROOT} all + # cpupower chmod +x tools/power/cpupower/utils/version-gen.sh make -C tools/power/cpupower CPUFREQ_BENCH=false %{PARALLELISMFLAGS} if [ "%{DISTRO_ARCH}" = "x86_64" ]; then pushd tools/power/cpupower/debug/x86_64 - make %{MAKETUNING} + make %{MAKETUNING} centrino-decode powernow-k8-decode popd elif [ "%{DISTRO_ARCH}" = "i686" ]; then pushd tools/power/cpupower/debug/i386 - make %{MAKETUNING} + make %{MAKETUNING} centrino-decode powernow-k8-decode + popd + fi + + # Should be built for all x86 architectures + if [ "%{DISTRO_ARCH}" = "x86_64" ]; then + # Won't compile on i686 + # x86_energy_perf_policy.c: In function ‘validate_cpuid’: + # x86_energy_perf_policy.c:154:2: error: PIC register clobbered by ‘ebx’ in ‘asm’ + # asm("cpuid" : "=a" (fms), "=c" (ecx), "=d" (edx) : "a" (1) : "ebx"); + # ^ + pushd tools/power/x86/x86_energy_perf_policy + make + popd + + # Same as above + pushd tools/power/x86/turbostat + make popd fi + + pushd tools/thermal/tmon + make + popd end install @@ -347,9 +377,7 @@ build rm -rfv %{BUILDROOT}/lib/firmware # Install tools. - make -C tools/perf DESTDIR=%{BUILDROOT} WERROR=0 \ - HAVE_CPLUS_DEMANGLE=1 prefix=/usr perfexecdir=lib/perf-core \ - install install-man install-python_ext + %{perf_make} DESTDIR=%{BUILDROOT} install-bin install-python_ext # cpupower make -C tools/power/cpupower DESTDIR=%{BUILDROOT} libdir=%{libdir} \ @@ -372,6 +400,24 @@ build fi chmod 0755 %{BUILDROOT}%{libdir}/libcpupower.so* + + # This should be built for all x86 architectures + if [ "%{DISTRO_ARCH}" = "x86_64" ]; then + mkdir -pv %{BUILDROOT}%{mandir}/man8 + + pushd tools/power/x86/x86_energy_perf_policy + make DESTDIR=%{BUILDROOT} install + popd + + pushd tools/power/x86/turbostat + make DESTDIR=%{BUILDROOT} install + popd + fi + + # tmon + pushd tools/thermal/tmon + make INSTALL_ROOT=%{BUILDROOT} install + popd end end @@ -465,6 +511,10 @@ packages kernel_name = kernel kernel_release = %{fullver} + # Replace the Exynos kernel. + obsoletes += kernel-exynos < %{kernel_release} + conflicts += kernel-exynos < %{kernel_release} + # Replace the OMAP kernel. obsoletes += kernel-omap < %{kernel_release} conflicts += kernel-omap < %{kernel_release} @@ -476,6 +526,10 @@ packages kernel_name = kernel kernel_release = %{fullver} + # Replace the Exynos kernel. + obsoletes += kernel-exynos-devel < %{kernel_release} + conflicts += kernel-exynos-devel < %{kernel_release} + # Replace the OMAP kernel. obsoletes += kernel-omap-devel < %{kernel_release} conflicts += kernel-omap-devel < %{kernel_release} @@ -498,35 +552,35 @@ packages end end - if "%{build_kernel_exynos}" == "1" - package kernel-exynos + if "%{build_kernel_legacy}" == "1" + package kernel-legacy template KERNEL - kernel_name = kernel-exynos - kernel_release = %{fullver}.exynos + kernel_name = kernel-legacy + kernel_release = %{fullver}.legacy end - package kernel-exynos-devel + package kernel-legacy-devel template KERNELDEVEL - kernel_name = kernel-exynos - kernel_release = %{fullver}.exynos + kernel_name = kernel-legacy + kernel_release = %{fullver}.legacy end end - if "%{build_kernel_legacy}" == "1" - package kernel-legacy + if "%{build_kernel_lpae}" == "1" + package kernel-lpae template KERNEL - kernel_name = kernel-legacy - kernel_release = %{fullver}.legacy + kernel_name = kernel-lpae + kernel_release = %{fullver}.lpae end - package kernel-legacy-devel + package kernel-lpae-devel template KERNELDEVEL - kernel_name = kernel-legacy - kernel_release = %{fullver}.legacy + kernel_name = kernel-lpae + kernel_release = %{fullver}.lpae end end