X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=deblob-2.6.27;h=67e5a1b1e5d2b672a329353324a48f4ca0c4f5ab;hb=0bf0fc2dabd545eefa194bb41f75f88f010af1b7;hp=d3199ea090cc108a39b0b25fcd728a9cc2e9342e;hpb=0328db7a3d94e67c49c28a3bec520db098829f1e;p=releases.git diff --git a/deblob-2.6.27 b/deblob-2.6.27 index d3199ea090cc..67e5a1b1e5d2 100755 --- a/deblob-2.6.27 +++ b/deblob-2.6.27 @@ -1,7 +1,7 @@ #!/bin/sh # Copyright (C) 2008 Jeff Moe -# Copyright (C) 2008 Alexandre Oliva +# Copyright (C) 2008, 2009 Alexandre Oliva # # 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 @@ -44,7 +44,12 @@ # For each kver release, start extra with an empty string, then count # from 1 if changes are needed that require rebuilding the tarball. -kver=2.6.27 extra= +kver=2.6.27 extra=++ + +case $1 in +--force) die () { echo ERROR: "$@": ignored >&2; }; shift;; +*) die () { echo "$@" >&2; exit 1; };; +esac check=`echo $0 | sed 's,/[^/]*$,,'`/deblob-check if [ ! -f $check ] ; then @@ -54,55 +59,68 @@ else have_check=: fi -function clean_file { +clean_file () { #$1 = filename if test ! -f $1; then - echo $1 does not exist, something is wrong >&2 - exit 1 + die $1 does not exist, something is wrong fi rm -v $1 } -function check_changed { +check_changed () { if test ! -f $1; then - echo $1 does not exist, something is wrong >&2 - exit 1 + die $1 does not exist, something is wrong elif cmp $1.deblob $1 > /dev/null; then - echo $1 did not change, something is wrong >&2 - exit 1 + die $1 did not change, something is wrong fi mv $1.deblob $1 } -function clean_blob { +clean_blob () { #$1 = filename if $have_check; then if test ! -f $1; then - echo $1 does not exist, something is wrong >&2 - exit 1 + die $1 does not exist, something is wrong fi name=$1 echo Removing blobs from $name set fnord "$@" -d shift 2 - $check "$@" $name > $name.deblob + $check "$@" -i linux-$kver $name > $name.deblob check_changed $name else clean_file $1 fi } -function dummy_blob { +dummy_blob () { #$1 = filename if test -f $1; then echo $1 exists, something is wrong >&2 exit 1 - else - echo '/*(DEBLOBBED)*/' > $1 + elif test ! -f firmware/Makefile; then + echo firmware/Makefile does not exist, something is wrong >&2 + exit 1 + fi + + sed -i "s,`echo $1 | sed s,^firmware/,,`,\$(DEBLOBBED),g" \ + firmware/Makefile +} + +clean_fw () { + #$1 = firmware text input, $2 = firmware output + if test ! -f $1; then + echo $1 does not exist, something is wrong >&2 + exit 1 + elif test -f $2; then + echo $2 exists, something is wrong >&2 + exit 1 fi + clean_blob $1 -s 4 + dummy_blob $2 } -function clean_kconfig { +clean_kconfig () { #$1 = filename $2 = things to remove echo Marking config $2 as depending on NONFREE in $1 sed "/^config \\($2\\)\$/{p;i\ @@ -111,7 +129,7 @@ d;}" $1 > $1.deblob check_changed $1 } -function clean_mk { +clean_mk () { #$1 = config $2 = Makefile name # We don't clean up Makefiles any more --lxoliva # sed -i "/\\($1\\)/d" $2 @@ -119,8 +137,7 @@ function clean_mk { if sed -n "/\\($1\\)/p" $2 | grep . > /dev/null; then : else - echo $2 does not contain matches for $1 - exit 1 + die $2 does not contain matches for $1 fi } @@ -164,40 +181,27 @@ for f in \ sound/pci/cs46xx/imgs/cwcdma.asp \ ; do if test ! $f; then - echo $f is not present, something is amiss >&2 - exit 1 + die $f is not present, something is amiss fi done # Identify the tarball. sed -i "s,^EXTRAVERSION.*,&-libre$extra," Makefile -# We use `# clean_blob\nclean_file' to indicate that a file is -# allegedly under the GPL or some other compatible license, but we -# don't have its sources. Using the default deblobbing machinery -# doesn't work, because then the binary firmware generators would barf -# at the deblobbed file. - ####################### # Removed ATM Drivers # ####################### # ATM_AMBASSADOR - Madge Ambassador (Collage PCI 155 Server) -# clean_blob -clean_file firmware/atmsar11.HEX -empty_blob firmware/atmsar11.fw +clean_fw firmware/atmsar11.HEX firmware/atmsar11.fw +clean_kconfig drivers/atm/Kconfig 'ATM_AMBASSADOR' +clean_mk CONFIG_ATM_AMBASSADOR drivers/atm/Makefile # ATM_FORE200E_PCA # ATM_FORE200E_SBA - SBA-200E clean_kconfig drivers/atm/Kconfig 'ATM_FORE.*' clean_mk CONFIG_ATM_FORE200E drivers/atm/Makefile -clean_file drivers/atm/pca200e.data -clean_file drivers/atm/pca200e_ecd.data -clean_file drivers/atm/sba200e_ecd.data -clean_kconfig drivers/atm/Kconfig 'ATM_AMBASSADOR' -clean_mk CONFIG_ATM_AMBASSADOR drivers/atm/Makefile - ######################## # Removed char Drivers # @@ -212,17 +216,17 @@ clean_mk CONFIG_COMPUTONE drivers/char/Makefile # gpu drm # DRM_MGA - Matrox g200/g400 -clean_blob drivers/gpu/drm/mga_ucode.h +clean_blob drivers/gpu/drm/mga/mga_ucode.h clean_kconfig drivers/gpu/drm/Kconfig 'DRM_MGA' clean_mk CONFIG_DRM_MGA drivers/gpu/drm/Makefile # DRM_R128 - ATI Rage 128 -clean_blob drivers/gpu/drm/r128_cce.c +clean_blob drivers/gpu/drm/r128/r128_cce.c clean_kconfig drivers/gpu/drm/Kconfig 'DRM_R128' clean_mk CONFIG_DRM_R128 drivers/gpu/drm/Makefile # DRM_RADEON - ATI Radeon -clean_blob drivers/gpu/drm/radeon_microcode.h +clean_blob drivers/gpu/drm/radeon/radeon_microcode.h clean_kconfig drivers/gpu/drm/Kconfig 'DRM_RADEON' clean_mk CONFIG_DRM_RADEON drivers/gpu/drm/Makefile @@ -299,9 +303,7 @@ clean_kconfig drivers/media/video/pwc/Kconfig 'USB_PWC' clean_mk CONFIG_USB_PWC drivers/media/video/Makefile # VIDEO_CPIA - CPiA Video For Linux -# clean_blob -clean_file firmware/cpia2/stv0672_vp4.bin.ihex -dummy_blob firmware/cpia2/stv0672_vp4.bin +clean_fw firmware/cpia2/stv0672_vp4.bin.ihex firmware/cpia2/stv0672_vp4.bin clean_kconfig drivers/media/video/Kconfig 'VIDEO_CPIA' clean_kconfig drivers/media/video/Kconfig 'VIDEO_CPIA_PP' clean_kconfig drivers/media/video/Kconfig 'VIDEO_CPIA_USB' @@ -312,12 +314,8 @@ clean_mk CONFIG_VIDEO_CPIA_USB drivers/media/video/Makefile clean_mk CONFIG_VIDEO_CPIA2 drivers/media/video/Makefile # USB_DABUSB - DABUSB driver -# clean_blob -clean_file firmware/dabusb/bitstream.bin.ihex -dummy_blob firmware/dabusb/bitstream.bin -# clean_blob -clean_file firmware/dabusb/firmware.HEX -dummy_blob firmware/dabusb/firmware.fw +clean_fw firmware/dabusb/bitstream.bin.ihex firmware/dabusb/bitstream.bin +clean_fw firmware/dabusb/firmware.HEX firmware/dabusb/firmware.fw clean_kconfig drivers/media/Kconfig 'USB_DABUSB' clean_mk CONFIG_USB_DABUSB drivers/media/video/Makefile @@ -345,8 +343,12 @@ clean_kconfig drivers/net/Kconfig 'ACENIC' clean_mk CONFIG_ACENIC drivers/net/Makefile # ADAPTEC_STARFIRE - Adaptec Starfire/DuraLAN support -# This adds restrictions on top of GPLv2, but after deblobbing, -# nothing copyrightable remains. + +# This file requires prior acceptance of the GPL before you can even +# run the code in it. It's not clear whether this is a further +# requirement that would make the distribution incompatible with the +# GPL, but since nothing remains after we remove the blob, it's +# irrelevant whether the explicit acceptance would be a problem. clean_blob drivers/net/starfire_firmware.h clean_kconfig drivers/net/Kconfig 'ADAPTEC_STARFIRE' clean_mk CONFIG_ADAPTEC_STARFIRE drivers/net/Makefile @@ -381,12 +383,14 @@ clean_kconfig drivers/net/Kconfig 'MYRI_SBUS' clean_mk CONFIG_MYRI_SBUS drivers/net/Makefile # TEHUTI - Tehuti Networks 10G Ethernet -clean_blob drivers/net/tehuti_fw.h +clean_blob drivers/net/tehuti_fw.h -s 4 clean_kconfig drivers/net/Kconfig 'TEHUTI' clean_mk CONFIG_TEHUTI drivers/net/Makefile # TIGON3 - Broadcom Tigon3 -patch --no-backup-if-mismatch -p0 <<\EOF # patches/linux-2.6-tg3-clean.patch +patch --no-backup-if-mismatch --batch -p0 <<\EOF || \ + die failed to remove license comments from drivers/net/tg3.c \ + # patches/linux-2.6-tg3-clean.patch --- drivers/net/tg3.c +++ drivers/net/tg3.c @@ -5,14 +5,6 @@ @@ -479,6 +483,8 @@ dummy_blob firmware/kaweth/trigger_code_fix.bin clean_kconfig drivers/net/usb/Kconfig 'USB_KAWETH' clean_mk CONFIG_USB_KAWETH drivers/net/usb/Makefile +# wireless + ######################## # Removed s390 Drivers # @@ -489,6 +495,24 @@ clean_blob drivers/s390/net/qeth_core_mpc.c clean_kconfig drivers/s390/net/Kconfig 'QETH' clean_mk CONFIG_QETH drivers/s390/net/Makefile + +##################### +# Removed SH boards # +##################### + +# SH_AP325RXA - Renesas AP-325RXA board +clean_blob arch/sh/boards/board-ap325rxa.c +clean_kconfig arch/sh/boards/Kconfig 'SH_AP325RXA' +clean_mk CONFIG_SH_AP325RXA arch/sh/boards/Makefile + +# SH_MIGOR - Reneasas Migo-R +clean_blob arch/sh/boards/mach-migor/lcd_qvga.c -s 16 +clean_blob arch/sh/boards/mach-migor/setup.c +clean_kconfig arch/sh/boards/Kconfig 'SH_MIGOR' +clean_kconfig arch/sh/boards/mach-migor/Kconfig 'SH_MIGOR_QVGA' +clean_mk CONFIG_SH_MIGOR_QVGA arch/sh/boards/mach-migor/Makefile + + ######################## # Removed SCSI Drivers # ######################## @@ -603,25 +627,15 @@ clean_kconfig drivers/usb/serial/Kconfig 'USB_SERIAL_KEYSPAN_USA49WLC' clean_mk CONFIG_USB_SERIAL_KEYSPAN drivers/usb/serial/Makefile # USB_SERIAL_EDGEPORT - USB Inside Out Edgeport Serial Driver -# clean_blob -clean_file firmware/edgeport/boot.H16 -dummy_blob firmware/edgeport/boot.fw -# clean_blob -clean_file firmware/edgeport/down.H16 -dummy_blob firmware/edgeport/down.fw -# clean_blob -clean_file firmware/edgeport/down2.H16 -dummy_blob firmware/edgeport/down2.fw +clean_fw firmware/edgeport/boot.H16 firmware/edgeport/boot.fw +clean_fw firmware/edgeport/down.H16 firmware/edgeport/down.fw +clean_fw firmware/edgeport/down2.H16 firmware/edgeport/down2.fw clean_kconfig drivers/usb/serial/Kconfig 'USB_SERIAL_EDGEPORT' clean_mk CONFIG_USB_SERIAL_EDGEPORT drivers/usb/serial/Makefile # USB_SERIAL_EDGEPORT_TI - USB Inside Out Edgeport Serial Driver (TI devices) -# clean_blob -clean_file firmware/edgeport/boot2.H16 -dummy_blob firmware/edgeport/boot2.fw -# clean_blob -clean_file firmware/edgeport/down3.bin.ihex -dummy_blob firmware/edgeport/down3.bin +clean_fw firmware/edgeport/boot2.H16 firmware/edgeport/boot2.fw +clean_fw firmware/edgeport/down3.bin.ihex firmware/edgeport/down3.bin clean_kconfig drivers/usb/serial/Kconfig 'USB_SERIAL_EDGEPORT_TI' clean_mk CONFIG_USB_SERIAL_EDGEPORT_TI drivers/usb/serial/Makefile @@ -634,15 +648,9 @@ clean_kconfig drivers/usb/serial/Kconfig 'USB_SERIAL_TI' clean_mk CONFIG_USB_SERIAL_TI drivers/usb/serial/Makefile # USB_SERIAL_WHITEHEAT - USB ConnectTech WhiteHEAT Serial Driver -# clean_blob -clean_file firmware/whiteheat.HEX -dummy_blob firmware/whiteheat.fw -# clean_blob -clean_file firmware/whiteheat_loader.HEX -dummy_blob firmware/whiteheat_loader.fw -# clean_blob -clean_file firmware/whiteheat_loader_debug.HEX -dummy_blob firmware/whiteheat_loader_debug.fw +clean_fw firmware/whiteheat.HEX firmware/whiteheat.fw +clean_fw firmware/whiteheat_loader.HEX firmware/whiteheat_loader.fw +clean_fw firmware/whiteheat_loader_debug.HEX firmware/whiteheat_loader_debug.fw clean_kconfig drivers/usb/serial/Kconfig 'USB_SERIAL_WHITEHEAT' clean_mk CONFIG_USB_SERIAL_WHITEHEAT drivers/usb/serial/Makefile @@ -661,6 +669,10 @@ clean_blob drivers/video/chipsfb.c clean_kconfig drivers/video/Kconfig 'FB_CT65550' clean_mk CONFIG_FB_CT65550 drivers/video/Makefile +# USB_GSPCA - Conexant 11646 +clean_blob drivers/media/video/gspca/conex.c +# clean_kconfig drivers/video/gspca/Kconfig 'USB_GSPCA' +# clean_mk CONFIG_USB_GSPCA drivers/video/Makefile ######################### # Removed Sound Drivers # @@ -710,5 +722,6 @@ dummy_blob firmware/sb16/ima_adpcm_playback.csp # Most of this file is not matched by deblob-check because of WAIT_IDLE. # Just remove it. clean_file sound/isa/wavefront/yss225.c +clean_kconfig sound/isa/Kconfig 'SND_WAVEFRONT_FIRMWARE_IN_KERNEL' exit 0