X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=deblob-2.6.37;h=d3850734bec11d46497bf49bd48f1ae47ecc9e93;hb=a071277b500d147ef0c4556b361ee76a6d454fe3;hp=b161fa68bd9f6e390dbaa88a9131a0191da578bd;hpb=445ecc1108de959ad12ed2b56462e913839770ac;p=releases.git diff --git a/deblob-2.6.37 b/deblob-2.6.37 index b161fa68bd9f..d3850734bec1 100755 --- a/deblob-2.6.37 +++ b/deblob-2.6.37 @@ -1,9 +1,13 @@ #!/bin/sh -# Copyright (C) 2008, 2009, 2010 Alexandre Oliva +# Copyright (C) 2008-2013 Alexandre Oliva # Copyright (C) 2008 Jeff Moe # Copyright (C) 2009 Rubén Rodríguez # +# This program is part of GNU Linux-libre, a GNU project that +# publishes scripts to clean up Linux so as to make it suitable for +# use in the GNU Project and in Free System Distributions. +# # 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 of the License, or @@ -44,7 +48,7 @@ # 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.37 extra= +kver=2.6.37 extra=1 case $1 in --force) @@ -76,6 +80,7 @@ if [ ! -f $check ] ; then have_check=false else have_check=: + [ -x $check ] || check="/bin/sh $check" fi filetest () { @@ -112,7 +117,13 @@ clean_blob () { name=$1 set fnord "$@" -d shift 2 - $check "$@" -i linux-$kver $name > $name.deblob + if $check "$@" -i linux-$kver $name > $name.deblob; then + if [ ! -s $name.deblob ]; then + die got an empty file after removing blobs from $name + fi + else + die failed removing blobs from $name + fi check_changed $name && echo $name: removed blobs else clean_file $1 @@ -244,16 +255,14 @@ for f in \ drivers/net/wan/wanxlfw.S \ drivers/net/wireless/atmel.c \ drivers/net/wireless/atmel.c \ - drivers/scsi/53c700_d.h_shipped \ - drivers/scsi/53c700.scr \ drivers/scsi/aic7xxx/aic79xx_seq.h_shipped \ drivers/scsi/aic7xxx/aic79xx.seq \ drivers/scsi/aic7xxx/aic7xxx_seq.h_shipped \ drivers/scsi/aic7xxx/aic7xxx.seq \ drivers/scsi/aic7xxx_old/aic7xxx_seq.c \ drivers/scsi/aic7xxx_old/aic7xxx.seq \ - drivers/scsi/53c7xx_d.h_shipped \ - drivers/scsi/53c7xx.scr \ + drivers/scsi/53c700_d.h_shipped \ + drivers/scsi/53c700.scr \ drivers/scsi/sym53c8xx_2/sym_fw1.h \ drivers/scsi/sym53c8xx_2/sym_fw1.h \ drivers/scsi/sym53c8xx_2/sym_fw2.h \ @@ -267,25 +276,23 @@ for f in \ sound/pci/cs46xx/imgs/cwcdma.h \ sound/pci/cs46xx/imgs/cwcdma.asp \ ; do - if test ! $f; then - die $f is not present, something is amiss && return - fi + filetest $f done # Identify the tarball. -grep -q 'EXTRAVERSION.*-libre' Makefile || -clean_sed "s,^EXTRAVERSION.*,&-libre$extra, -" Makefile 'added -libre to EXTRAVERSION' +grep -q 'EXTRAVERSION.*-gnu' Makefile || +clean_sed "s,^EXTRAVERSION.*,&-gnu$extra, +" Makefile 'added -gnu to EXTRAVERSION' grep -q Linux-libre README || clean_sed ' -1,3 s,Linux kernel release.*kernel\.org.*,Linux-libre , -2,5 s,Linux version 2.6,Linux-libre, +1,3 s,Linux kernel release.*kernel\.org.*,GNU Linux-libre , +2,5 s,Linux version [0-9.]*,GNU Linux-libre, 1,20 s,\(operating system \)\?Unix,Unix kernel, /WHAT IS LINUX/i\ -WHAT IS Linux-libre?\ +WHAT IS GNU Linux-libre?\ \ - Linux-libre is a Free version of the kernel Linux (see below),\ + GNU Linux-libre is a Free version of the kernel Linux (see below),\ suitable for use with the GNU Operating System in 100% Free\ GNU/Linux-libre System Distributions.\ http://www.gnu.org/distros/\ @@ -299,21 +306,22 @@ WHAT IS Linux-libre?\ \ Linux-libre started within the gNewSense GNU/Linux distribution.\ It was later adopted by Jeff Moe, who coined its name, and in 2008\ - it became a project maintained by FSF Latin America.\ + it became a project maintained by FSF Latin America. In 2012, it\ + became part of the GNU Project.\ \ - The Linux-libre project takes a minimal-changes approach to cleaning\ - up Linux, making no effort to substitute components that need to be\ - removed with functionally equivalent Free ones. Nevertheless, we\ - encourage and support efforts towards doing so.\ + The GNU Linux-libre project takes a minimal-changes approach to\ + cleaning up Linux, making no effort to substitute components that\ + need to be removed with functionally equivalent Free ones.\ + Nevertheless, we encourage and support efforts towards doing so.\ http://libreplanet.org/wiki/LinuxLibre:Devices_that_require_non-free_firmware\ \ Our mascot is Freedo, a light-blue penguin that has just come out\ - of the the shower. Although we like penguins, GNU is a much\ - greater contribution to the entire system, so its mascot deserves\ - more promotion. See our web page for their images.\ + of the shower. Although we like penguins, GNU is a much greater\ + contribution to the entire system, so its mascot deserves more\ + promotion. See our web page for their images.\ http://linux-libre.fsfla.org/\ -' README 'added blurb about Linux-libre' +' README 'added blurb about GNU Linux-libre' # Add reject_firmware and maybe_reject_firmware grep -q _LINUX_LIBRE_FIRMWARE_H include/linux/firmware.h || @@ -596,15 +604,6 @@ reject_firmware drivers/media/dvb/dvb-usb/dvb-usb-firmware.c clean_kconfig drivers/media/dvb/dvb-usb/Kconfig 'DVB_USB' clean_mk CONFIG_DVB_USB drivers/media/dvb/dvb-usb/Makefile -announce DVB_USB_AF9005 - "Afatech AF9005 DVB-T USB1.1" -clean_file drivers/media/dvb/dvb-usb/af9005-script.h -clean_sed ' -s,^ deb_info("load init script\\n");$, {\n err("Missing Free init script\\n");\n return scriptlen = ret = -EINVAL;\n ,; -' drivers/media/dvb/dvb-usb/af9005-fe.c 'report missing Free init script' -clean_blob drivers/media/dvb/dvb-usb/af9005-fe.c -clean_kconfig drivers/media/dvb/dvb-usb/Kconfig 'DVB_USB_AF9005' -clean_mk CONFIG_DVB_USB_AF9005 drivers/media/dvb/dvb-usb/Makefile - announce DVB_B2C2_FLEXCOP - "Technisat/B2C2 FlexCopII(b) and FlexCopIII adapters" reject_firmware drivers/media/dvb/b2c2/flexcop-fe-tuner.c @@ -617,6 +616,11 @@ clean_kconfig drivers/media/dvb/dvb-usb/Kconfig 'DVB_USB_A800' clean_mk CONFIG_DVB_USB_A800 drivers/media/dvb/dvb-usb/Makefile announce DVB_USB_AF9005 - "Afatech AF9005 DVB-T USB1.1 support" +clean_file drivers/media/dvb/dvb-usb/af9005-script.h +clean_sed ' +s,^ deb_info("load init script\\n");$, {\n err("Missing Free init script\\n");\n return scriptlen = ret = -EINVAL;\n ,; +' drivers/media/dvb/dvb-usb/af9005-fe.c 'report missing Free init script' +clean_blob drivers/media/dvb/dvb-usb/af9005-fe.c clean_blob drivers/media/dvb/dvb-usb/af9005.c clean_kconfig drivers/media/dvb/dvb-usb/Kconfig 'DVB_USB_AF9005' clean_mk CONFIG_DVB_USB_AF9005 drivers/media/dvb/dvb-usb/Makefile @@ -872,6 +876,7 @@ clean_mk CONFIG_DVB_TTUSB_BUDGET drivers/media/dvb/ttusb-budget/Makefile announce DVB_TTUSB_DEC - "Technotrend/Hauppauge USB DEC devices" reject_firmware drivers/media/dvb/ttusb-dec/ttusb_dec.c clean_blob drivers/media/dvb/ttusb-dec/ttusb_dec.c +clean_blob Documentation/dvb/ttusb-dec.txt clean_kconfig drivers/media/dvb/ttusb-dec/Kconfig 'DVB_TTUSB_DEC' clean_mk CONFIG_DVB_TTUSB_DEC drivers/media/dvb/ttusb-dec/Makefile @@ -879,6 +884,8 @@ clean_mk CONFIG_DVB_TTUSB_DEC drivers/media/dvb/ttusb-dec/Makefile announce VIDEO_BT848 - "BT848 Video For Linux" reject_firmware drivers/media/video/bt8xx/bttv-cards.c +clean_blob drivers/media/video/bt8xx/bttv-cards.c +clean_blob Documentation/video4linux/bttv/README clean_kconfig drivers/media/video/bt8xx/Kconfig 'VIDEO_BT848' clean_mk CONFIG_VIDEO_BT848 drivers/media/video/bt8xx/Makefile @@ -1011,7 +1018,7 @@ clean_blob drivers/net/starfire.c clean_kconfig drivers/net/Kconfig 'ADAPTEC_STARFIRE' clean_mk CONFIG_ADAPTEC_STARFIRE drivers/net/Makefile -announce CONFIG_BNA - "Brocade 1010/1020 10Gb Ethernet Driver support" +announce BNA - "Brocade 1010/1020 10Gb Ethernet Driver support" clean_blob drivers/net/bna/bnad.c clean_blob drivers/net/bna/cna.h reject_firmware drivers/net/bna/cna_fwimg.c @@ -1242,15 +1249,15 @@ announce PCMCIA_3C574 - "3Com 3c574 PCMCIA support" # This is not software; it's Free, but GPLed without in-tree sources. drop_fw_file firmware/cis/3CCFEM556.cis.ihex firmware/cis/3CCFEM556.cis # clean_blob drivers/net/pcmcia/3c574_cs.c -clean_kconfig drivers/net/pcmcia/Kconfig 'PCMCIA_3C574' -clean_mk CONFIG_PCMCIA_3C574 drivers/net/pcmcia/Makefile +# clean_kconfig drivers/net/pcmcia/Kconfig 'PCMCIA_3C574' +# clean_mk CONFIG_PCMCIA_3C574 drivers/net/pcmcia/Makefile announce PCMCIA_3C589 - "3Com 3c589 PCMCIA support" # This is not software; it's Free, but GPLed without in-tree sources. drop_fw_file firmware/cis/3CXEM556.cis.ihex firmware/cis/3CXEM556.cis # clean_blob drivers/net/pcmcia/3c589_cs.c -clean_kconfig drivers/net/pcmcia/Kconfig 'PCMCIA_3C589' -clean_mk CONFIG_PCMCIA_3C589 drivers/net/pcmcia/Makefile +# clean_kconfig drivers/net/pcmcia/Kconfig 'PCMCIA_3C589' +# clean_mk CONFIG_PCMCIA_3C589 drivers/net/pcmcia/Makefile announce PCMCIA_PCNET - "NE2000 compatible PCMCIA support" # These are not software; they're Free, but GPLed without in-tree sources. @@ -1269,6 +1276,7 @@ drop_fw_file firmware/cis/PE520.cis.ihex firmware/cis/PE520.cis announce 3C359 - "3Com 3C359 Token Link Velocity XL adapter" drop_fw_file firmware/3com/3C359.bin.ihex firmware/3com/3C359.bin +reject_firmware drivers/net/tokenring/3c359.c clean_blob drivers/net/tokenring/3c359.c clean_kconfig drivers/net/tokenring/Kconfig '3C359' clean_mk CONFIG_3C359 drivers/net/tokenring/Makefile @@ -1361,18 +1369,27 @@ clean_blob drivers/net/wireless/orinoco/orinoco_usb.c clean_kconfig drivers/net/wireless/orinoco/Kconfig 'ORINOCO_USB' clean_mk CONFIG_ORINOCO_USB drivers/net/wireless/orinoco/Makefile -announce WLAGS49_H2 - 'Agere Systems HERMES II Wireless PC Card Model 0110' +announce WLAGS49_H2 - "Agere Systems HERMES II Wireless PC Card Model 0110" # Some pieces of the firmware images are most definitely data, but # others seem to be code. -clean_file drivers/staging/wlags49_h2/ap_h2.c -clean_file drivers/staging/wlags49_h2/sta_h2.c +clean_blob drivers/staging/wlags49_h2/ap_h2.c +clean_blob drivers/staging/wlags49_h2/sta_h2.c +echo 'extern int deblobbed; /*(DEBLOBBED)*/' > drivers/staging/wlags49_h2/ap_h2.c +echo 'extern int deblobbed; /*(DEBLOBBED)*/' > drivers/staging/wlags49_h2/sta_h2.c clean_blob drivers/staging/wlags49_h2/wl_profile.c +clean_sed ' + s,\(.*hcf_status = \)dhf_download_fw(.*&fw_image );,//& /*(DEBLOBBED)*/\n\1HCF_ERR_INCOMP_FW;, +' drivers/staging/wlags49_h2/wl_main.c 'reject built-in non-Free firmware' clean_kconfig drivers/staging/wlags49_h2/Kconfig 'WLAGS49_H2' clean_mk CONFIG_WLAGS49_H2 drivers/staging/Makefile -announce WLAGS49_H25 - 'Linksys Systems HERMES II.5 Wireless-G_CompactFlash_Card' -clean_file drivers/staging/wlags49_h2/ap_h25.c -clean_file drivers/staging/wlags49_h2/sta_h25.c +announce WLAGS49_H25 - "Linksys Systems HERMES II.5 Wireless-G_CompactFlash_Card" +# Some pieces of the firmware images are most definitely data, but +# others seem to be code. +clean_blob drivers/staging/wlags49_h2/ap_h25.c +clean_blob drivers/staging/wlags49_h2/sta_h25.c +echo 'extern int deblobbed; /*(DEBLOBBED)*/' > drivers/staging/wlags49_h2/ap_h25.c +echo 'extern int deblobbed; /*(DEBLOBBED)*/' > drivers/staging/wlags49_h2/sta_h25.c clean_kconfig drivers/staging/wlags49_h25/Kconfig 'WLAGS49_H25' clean_mk CONFIG_WLAGS49_H25 drivers/staging/Makefile @@ -1476,7 +1493,7 @@ clean_blob drivers/net/wireless/libertas_tf/if_usb.c clean_kconfig drivers/net/wireless/Kconfig 'LIBERTAS_THINFIRM_USB' clean_mk CONFIG_LIBERTAS_THINFIRM_USB drivers/net/wireless/libertas_tf/Makefile -announce MWL8K - 'Marvell 88W8xxx PCI/PCIe Wireless support' +announce MWL8K - "Marvell 88W8xxx PCI/PCIe Wireless support" reject_firmware drivers/net/wireless/mwl8k.c clean_blob drivers/net/wireless/mwl8k.c clean_kconfig drivers/net/wireless/Kconfig 'MWL8K' @@ -1491,15 +1508,11 @@ clean_sed ' ' drivers/staging/ath6kl/os/linux/ar6000_android.c \ 'disabled non-Free firmware loading machinery' clean_blob drivers/staging/ath6kl/os/linux/include/ar6000_drv.h +clean_sed '/File:/ s,bdata[^)]*\.bin,/*DEBLOBBED*/,' \ + drivers/staging/ath6kl/Kconfig 'removed blob names' clean_kconfig drivers/staging/ath6kl/Kconfig 'ATH6K_LEGACY' clean_mk CONFIG_ATH6K_LEGACY drivers/staging/ath6kl/Makefile -announce ATH9K_HTC - "Atheros HTC based wireless cards support" -reject_firmware drivers/net/wireless/ath/ath9k/hif_usb.c -clean_blob drivers/net/wireless/ath/ath9k/hif_usb.c -clean_kconfig drivers/net/wireless/ath/ath9k/Kconfig 'ATH9K_HTC' -clean_mk CONFIG_ATH9K_HTC drivers/net/wireless/ath/ath9k/Makefile - announce PRISM2_USB - "Prism2.5/3 USB driver" reject_firmware drivers/staging/wlan-ng/prism2fw.c clean_blob drivers/staging/wlan-ng/prism2fw.c @@ -1529,7 +1542,7 @@ clean_blob drivers/net/wireless/p54/p54usb.h clean_kconfig drivers/net/wireless/p54/Kconfig 'P54_USB' clean_mk CONFIG_P54_USB drivers/net/wireless/p54/Makefile -announce PRISM54 - 'Intersil Prism GT/Duette/Indigo PCI/Cardbus' +announce PRISM54 - "Intersil Prism GT/Duette/Indigo PCI/Cardbus" reject_firmware drivers/net/wireless/prism54/islpci_dev.c clean_blob drivers/net/wireless/prism54/islpci_dev.c clean_kconfig drivers/net/wireless/Kconfig 'PRISM54' @@ -1774,7 +1787,7 @@ clean_mk CONFIG_SERIAL_QE drivers/serial/Makefile announce TOUCHSCREEN_QT602240 - "QT602240 I2C Touchscreen" reject_firmware drivers/input/touchscreen/qt602240_ts.c clean_blob drivers/input/touchscreen/qt602240_ts.c -clean_kconfig drivers/net/Kconfig 'TOUCHSCREEN_QT602240' +clean_kconfig drivers/input/touchscreen/Kconfig 'TOUCHSCREEN_QT602240' clean_mk CONFIG_TOUCHSCREEN_QT602240 drivers/input/touchscreen/Makefile announce LIRC_ZILOG - "Zilog/Hauppauge IR Transmitter" @@ -2322,7 +2335,6 @@ clean_mk CONFIG_SOUND_PSS sound/oss/Makefile announce Documentation - "non-Free firmware scripts and documentation" clean_blob Documentation/dvb/avermedia.txt clean_blob Documentation/dvb/opera-firmware.txt -clean_blob Documentation/dvb/ttusb-dec.txt clean_blob Documentation/sound/alsa/ALSA-Configuration.txt clean_blob Documentation/sound/oss/MultiSound clean_blob Documentation/sound/oss/PSS