summaryrefslogtreecommitdiff
path: root/kernels/linux-libre-lts-knock
diff options
context:
space:
mode:
Diffstat (limited to 'kernels/linux-libre-lts-knock')
-rw-r--r--kernels/linux-libre-lts-knock/Kbuild19
-rw-r--r--kernels/linux-libre-lts-knock/Kbuild.platforms6
-rw-r--r--kernels/linux-libre-lts-knock/PKGBUILD104
-rw-r--r--kernels/linux-libre-lts-knock/gnewsense-binutils-flag.patch28
-rw-r--r--kernels/linux-libre-lts-knock/linux.install12
5 files changed, 26 insertions, 143 deletions
diff --git a/kernels/linux-libre-lts-knock/Kbuild b/kernels/linux-libre-lts-knock/Kbuild
deleted file mode 100644
index 8a9d7dceb..000000000
--- a/kernels/linux-libre-lts-knock/Kbuild
+++ /dev/null
@@ -1,19 +0,0 @@
-# Fail on warnings - also for files referenced in subdirs
-# -Werror can be disabled for specific files using:
-# CFLAGS_<file.o> := -Wno-error
-subdir-ccflags-y := -Wno-error
-
-# platform specific definitions
-include arch/mips/Kbuild.platforms
-obj-y := $(platform-y)
-
-# make clean traverses $(obj-) without having included .config, so
-# everything ends up here
-obj- := $(platform-)
-
-# mips object files
-# The object files are linked as core-y files would be linked
-
-obj-y += kernel/
-obj-y += mm/
-obj-y += math-emu/
diff --git a/kernels/linux-libre-lts-knock/Kbuild.platforms b/kernels/linux-libre-lts-knock/Kbuild.platforms
deleted file mode 100644
index 90a226888..000000000
--- a/kernels/linux-libre-lts-knock/Kbuild.platforms
+++ /dev/null
@@ -1,6 +0,0 @@
-# All platforms listed in alphabetic order
-
-platforms += loongson
-
-# include the platform specific files
-include $(patsubst %, $(srctree)/arch/mips/%/Platform, $(platforms))
diff --git a/kernels/linux-libre-lts-knock/PKGBUILD b/kernels/linux-libre-lts-knock/PKGBUILD
index 4868b72b0..20d9dbfbe 100644
--- a/kernels/linux-libre-lts-knock/PKGBUILD
+++ b/kernels/linux-libre-lts-knock/PKGBUILD
@@ -11,7 +11,6 @@
pkgbase=linux-libre-lts-knock # Build stock -lts-knock kernel
_pkgbasever=3.10-gnu
_pkgver=3.10.53-gnu
-_lxopkgver=3.10.53-gnu # nearly always the same as _pkgver
_knockpatchver=3.10
_replaces=('kernel26%' 'kernel26-libre%' 'linux%' 'linux-libre%-kmod-alx') # '%' gets replaced with _kernelname
@@ -28,38 +27,36 @@ source=("http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgbasever}/li
"http://linux-libre.fsfla.org/pub/linux-libre/releases/${_pkgver}/patch-${_pkgbasever}-${_pkgver}.xz"
"http://gnunet.org/sites/default/files/tcp_stealth_${_knockpatchver}.diff"
# the main kernel config files
- 'config.i686' 'config.x86_64'
+ 'config.i686' 'config.x86_64' 'config.mips64el'
# standard config files for mkinitcpio ramdisk
'linux.preset'
- 'Kbuild'
- 'Kbuild.platforms'
'logo_linux_'{clut224.ppm,vga16.ppm,mono.pbm}
'change-default-console-loglevel.patch'
'criu-no-expert.patch'
- "http://www.linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/linux-patches-${_lxopkgver}_0loongsonlibre_mipsel.tar.xz")
+ # loongson-community patch: http://linux-libre.fsfla.org/pub/linux-libre/lemote/gnewsense/pool/debuginfo/
+ '3.10.50-33c9ab76eb-loongson-community.patch')
md5sums=('d562fd52580a3b6b18b6eeb5921d1d5c'
'4840f0db6af66cbce923b1043971c256'
'26380d6f05471ef8e065a77d87588009'
'25ad0606de251a5734f4535c61452a56'
'158cb922d9b43028f6c45c696e773915'
+ ''
'eb14dcfd80c00852ef81ded6e826826a'
- '2967cecc3af9f954ccc822fd63dca6ff'
- '8267264d9a8966e57fdacd1fa1fc65c4'
'071d4939e9ef4256e4c027ef3c864903'
'2ae9ef17f45b39ff9e6e172c0c97d263'
'96c2ae40e3b1cdd90fe7e6dba8078922'
'f3def2cefdcbb954c21d8505d23cc83c'
'd50c1ac47394e9aec637002ef3392bd1'
- '200668954d1cee93fb649196e3df8bde')
-if [ "$CARCH" != "mips64el" ]; then
- # don't use the Loongson-specific patches on non-mips64el arches.
- unset source[${#source[@]}-1]
- unset md5sums[${#md5sums[@]}-1]
-fi
+ '')
_kernelname=${pkgbase#linux-libre}
_replaces=("${_replaces[@]/\%/${_kernelname}}")
+case "$CARCH" in
+ i686|x86_64) KARCH=x86;;
+ mips64el) KARCH=mips;;
+esac
+
prepare() {
cd "${srcdir}/${_srcname}"
@@ -87,27 +84,10 @@ prepare() {
# patch from fedora
patch -Np1 -i "${srcdir}/criu-no-expert.patch"
- if [ "$CARCH" == "mips64el" ]; then
- sed -i "s|^EXTRAVERSION.*|EXTRAVERSION =-libre-lts-knock|" Makefile
- sed -r "s|^( SUBLEVEL = ).*|\1$_sublevel|" \
- < "${srcdir}/lxo-config.patch" > lxo-config.patch
- msg2 "Adding loongson-community patches"
- patch -Np1 -i ${srcdir}/${_basekernel}*-*-loongson-community.patch
- patch -Np0 -i lxo-config.patch
-
- # ensure N32, add localversion, remove uevent helper as per
- # https://git.kernel.org/?p=linux/hotplug/udev.git;a=blob_plain;f=README
- # and make USB storage support builtin (e.g. for booting from USB
- # disks without slowly loading an initramfs)
- sed -ri \
- -e "s|CONFIG_MIPS32_N32=.*|CONFIG_MIPS32_N32=y|g" \
- -e "s|CONFIG_UEVENT_HELPER_PATH=.*|CONFIG_UEVENT_HELPER_PATH=\"\"|g" \
- -e "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_localversionname}\"|g" \
- -e "s;(CONFIG_USB(_COMMON|_EHCI_HCD|_OHCI_HCD|_STORAGE.*|_UAS)?)=.*;\1=y;g" \
- ./.config
- else
- cat "${srcdir}/config.${CARCH}" > ./.config # simpler
- fi
+ # Adding loongson-community patch
+ patch -p1 -i ${srcdir}/3.10.50-33c9ab76eb-loongson-community.patch
+
+ cat "${srcdir}/config.${CARCH}" > ./.config
if [ "${_kernelname}" != "" ]; then
sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config
@@ -139,10 +119,12 @@ build() {
yes "" | make config >/dev/null
# save configuration for later reuse
- if [ "${CARCH}" = "x86_64" ]; then
- cat .config > "${startdir}/config.x86_64.last"
- else
+ if [ "${CARCH}" = "i686" ]; then
cat .config > "${startdir}/config.i686.last"
+ elif [ "${CARCH}" = "x86_64" ]; then
+ cat .config > "${startdir}/config.x86_64.last"
+ elif [ "${CARCH}" = "mips64el" ]; then
+ cat .config > "${startdir}/config.mips64el.last"
fi
####################
@@ -152,16 +134,7 @@ build() {
####################
# build!
- if [ "$CARCH" == "mips64el" ]; then
- # The build system passes it directly to linker, disable to avoid
- # having unknown -Wl,... options.
- export LDFLAGS=""
- # bzImage is arch-specific and not supported on mips; vmlinux is
- # useful for oprofile.
- make ${MAKEFLAGS} LOCALVERSION= vmlinux vmlinuz modules
- else
- make ${MAKEFLAGS} LOCALVERSION= bzImage modules
- fi
+ make ${MAKEFLAGS} LOCALVERSION= bzImage modules
}
_package() {
@@ -174,16 +147,8 @@ _package() {
replaces=( "${_replaces[@]}")
backup=("etc/mkinitcpio.d/${pkgbase}.preset")
install=linux.install
- if [ "$CARCH" = "mips64el" ]; then
- optdepends+=('mkinitcpio: to make the initramfs (needs reinstall of this package)')
- conflicts+=('mkinitcpio<0.7')
- else
- depends+=('mkinitcpio>=0.7')
- fi
cd "${srcdir}/${_srcname}
- KARCH=x86
- [ $CARCH = "mips64el" ] && KARCH=mips
# get kernel version
_kernver="$(make LOCALVERSION= kernelrelease)"
@@ -193,12 +158,7 @@ _package() {
mkdir -p "${pkgdir}"/{lib/modules,lib/firmware,boot}
make LOCALVERSION= INSTALL_MOD_PATH="${pkgdir}" modules_install
- if [ "$CARCH" == "mips64el" ]; then
- cp vmlinuz "${pkgdir}/boot/vmlinuz-${pkgbase}"
- cp vmlinux "${pkgdir}/boot/vmlinux-${pkgbase}"
- else
- cp arch/${KARCH}/boot/bzImage "${pkgdir}/boot/vmlinuz-${pkgbase}"
- fi
+ cp arch/${KARCH}/boot/bzImage "${pkgdir}/boot/vmlinuz-${pkgbase}"
# add vmlinux
install -D -m644 vmlinux "${pkgdir}/usr/src/linux-${_kernver}/vmlinux"
@@ -220,12 +180,6 @@ _package() {
-e "s|fallback_image=.*|fallback_image=\"/boot/initramfs-${pkgbase}-fallback.img\"|" \
-i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset"
- # mkinitcpio 0.7 relies on bzImage to find the kernel version
- if [ "$CARCH" == "mips64el" ]; then
- sed -e "s|ALL_kver=.*|ALL_kver=\"${_kernver}\"|" \
- -i "${pkgdir}/etc/mkinitcpio.d/${pkgbase}.preset"
- fi
-
# remove build and source links
rm -f "${pkgdir}"/lib/modules/${_kernver}/{source,build}
# remove the firmware
@@ -251,9 +205,6 @@ _package-headers() {
conflicts=("${_replaces[@]/%/-headers}")
replaces=( "${_replaces[@]/%/-headers}")
- KARCH=x86
- [ $CARCH = "mips64el" ] && KARCH=mips
-
# in case of repackaging this is empty
if [ -z "${_kernver}" ]; then
cd "${srcdir}/linux-${_basekernel}"
@@ -288,12 +239,6 @@ _package-headers() {
cp Module.symvers "${pkgdir}/usr/src/linux-${_kernver}"
cp -a scripts "${pkgdir}/usr/src/linux-${_kernver}"
- if [ "$CARCH" = "mips64el" ]; then
- cp arch/${KARCH}/Kbuild "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/"
- cp -a arch/${KARCH}/loongson "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/"
- cp ${srcdir}/Kbuild.platforms "${pkgdir}/usr/src/linux-${_kernver}/arch/${KARCH}/"
- fi
-
# fix permissions on scripts dir
chmod og-w -R "${pkgdir}/usr/src/linux-${_kernver}/scripts"
mkdir -p "${pkgdir}/usr/src/linux-${_kernver}/.tmp_versions"
@@ -397,12 +342,7 @@ _package-headers() {
done
# remove unneeded architectures
- rm -rf "${pkgdir}"/usr/src/linux-${_kernver}/arch/{alpha,arc,arm,arm26,arm64,avr32,blackfin,c6x,cris,frv,h8300,hexagon,ia64,m32r,m68k,m68knommu,metag,microblaze,mn10300,openrisc,parisc,powerpc,ppc,s390,score,sh,sh64,sparc,sparc64,tile,unicore32,um,v850,xtensa}
- if [ "$CARCH" = "mips64el" ]; then
- rm -rf ${pkgdir}/usr/src/linux-${_kernver}/arch/x86
- else
- rm -rf ${pkgdir}/usr/src/linux-${_kernver}/arch/mips
- fi
+ find "${pkgdir}"/usr/lib/modules/${_kernver}/build/arch -mindepth 1 -maxdepth 1 -type d -not -name "$KARCH" -exec rm -rf {} +
}
_package-docs() {
diff --git a/kernels/linux-libre-lts-knock/gnewsense-binutils-flag.patch b/kernels/linux-libre-lts-knock/gnewsense-binutils-flag.patch
deleted file mode 100644
index 5f2d44f99..000000000
--- a/kernels/linux-libre-lts-knock/gnewsense-binutils-flag.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-Our binutils somehow ended up with a -mfix-gs2f-kernel, rather than
--mfix-ls2f-kernel. Cope with it.
-
-Index: arch/mips/loongson/Platform
-===================================================================
---- arch/mips/loongson/Platform.orig 2010-10-25 19:09:49.000000000 +0000
-+++ arch/mips/loongson/Platform 2010-10-25 19:10:44.000000000 +0000
-@@ -10,6 +10,12 @@
- $(call cc-option,-march=loongson2f,-march=r4600)
- # Enable the workarounds for Loongson2f
- ifdef CONFIG_CPU_LOONGSON2F_WORKAROUNDS
-+ ifneq ($(call as-option,-Wa$(comma)-mfix-gs2f-kernel,),)
-+ cflags-$(CONFIG_CPU_NOP_WORKAROUNDS) += -Wa$(comma)-mfix-gs2f-kernel
-+ ifneq ($(CONFIG_CPU_NOP_WORKAROUNDS),$(CONFIG_CPU_JUMP_WORKAROUNDS))
-+ cflags-$(CONFIG_CPU_JUMP_WORKAROUNDS) += -Wa$(comma)-mfix-gs2f-kernel
-+ endif
-+ else
- ifeq ($(call as-option,-Wa$(comma)-mfix-loongson2f-nop,),)
- $(error only binutils >= 2.20.2 have needed option -mfix-loongson2f-nop)
- else
-@@ -20,6 +26,7 @@
- else
- cflags-$(CONFIG_CPU_JUMP_WORKAROUNDS) += -Wa$(comma)-mfix-loongson2f-jump
- endif
-+ endif
- endif
-
- #
diff --git a/kernels/linux-libre-lts-knock/linux.install b/kernels/linux-libre-lts-knock/linux.install
index 8d5658aab..c0ee63a83 100644
--- a/kernels/linux-libre-lts-knock/linux.install
+++ b/kernels/linux-libre-lts-knock/linux.install
@@ -8,10 +8,8 @@ post_install () {
# updating module dependencies
echo ">>> Updating module dependencies. Please wait ..."
depmod ${KERNEL_VERSION}
- if command -v mkinitcpio 2>&1 > /dev/null; then
- echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..."
- mkinitcpio -p linux-libre${KERNEL_NAME}
- fi
+ echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..."
+ mkinitcpio -p linux-libre${KERNEL_NAME}
}
post_upgrade() {
@@ -22,10 +20,8 @@ post_upgrade() {
# updating module dependencies
echo ">>> Updating module dependencies. Please wait ..."
depmod ${KERNEL_VERSION}
- if command -v mkinitcpio 2>&1 > /dev/null; then
- echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..."
- mkinitcpio -p linux-libre${KERNEL_NAME}
- fi
+ echo ">>> Generating initial ramdisk, using mkinitcpio. Please wait..."
+ mkinitcpio -p linux-libre${KERNEL_NAME}
}
post_remove() {