mirror of
https://github.com/archr-linux/Arch-R.git
synced 2026-03-31 14:41:55 -07:00
48 lines
2.2 KiB
Bash
Executable File
48 lines
2.2 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
################################################################################
|
|
# This file is part of OpenELEC - http://www.openelec.tv
|
|
# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv)
|
|
#
|
|
# This Program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 2, or (at your option)
|
|
# any later version.
|
|
#
|
|
# This Program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with OpenELEC.tv; see the file COPYING. If not, write to
|
|
# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
# http://www.gnu.org/copyleft/gpl.html
|
|
################################################################################
|
|
|
|
. config/options $1
|
|
|
|
cd $PKG_BUILD
|
|
|
|
[ -z "$OBJDUMP" ] && OBJDUMP=${TARGET_PREFIX}objdump
|
|
[ -z "$ECHO" ] && ECHO=/bin/echo
|
|
|
|
# fix some directives after unpacking
|
|
sed -i "s|KDIR = .*|KDIR = $(kernel_path)|" Makefile
|
|
sed -i "s|KSRC = .*|KSRC = \$KDIR|" Makefile
|
|
sed -i "s|KINS = .*|KINS = \./modules|" Makefile
|
|
|
|
make CC=$CC
|
|
|
|
# ultraman: Original build module doesn't depends on dvb-usb module
|
|
# How to fix that? For now let's just modify .modinfo section in kernel module
|
|
# and depmod will pick up appropriate dependend modules
|
|
cp dvb-usb-af9035.ko dvb-usb-af9035.ko_orig
|
|
$OBJDUMP -s -j .modinfo dvb-usb-af9035.ko_orig | awk 'BEGIN{v=0;} /Contents/ {v=1; next;} {if (v==1) print $0;}' >new.modinfo1
|
|
cat new.modinfo1 | cut -c7-41 | awk '{printf($0);}' | sed 's/ //g;s/../\\\x&/g;' >new.modinfo2
|
|
$ECHO -ne `cat new.modinfo2` >new.modinfo3
|
|
cat new.modinfo3 | tr '\000' '\n' | awk '/^depends=/ {next;} {print $0;}' | tr '\n' '\000' >new.modinfo4
|
|
$ECHO -ne "depends=dvb-usb\0" >>new.modinfo4
|
|
$OBJCOPY --remove-section=.modinfo --add-section=.modinfo=new.modinfo4 --set-section-flags .modinfo=contents,alloc,load,readonly,data dvb-usb-af9035.ko_orig dvb-usb-af9035.ko
|
|
rm new.modinfo*
|