diff options
Diffstat (limited to 'kernels/linux-libre-lts-knock')
-rw-r--r-- | kernels/linux-libre-lts-knock/Kbuild | 19 | ||||
-rw-r--r-- | kernels/linux-libre-lts-knock/Kbuild.platforms | 6 | ||||
-rw-r--r-- | kernels/linux-libre-lts-knock/PKGBUILD | 104 | ||||
-rw-r--r-- | kernels/linux-libre-lts-knock/gnewsense-binutils-flag.patch | 28 | ||||
-rw-r--r-- | kernels/linux-libre-lts-knock/linux.install | 12 |
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() { |