Promote ../fedora/current/*/scripts/deblob.sh to deblob-main.
[releases.git] / deblob-check
index 1ad6aa325a76b881a36473ce508cd4596a66c96f..b65363e1e8ade5c78c8e2c636bc1d16df2c7fff9 100755 (executable)
 
 # Yeah, lots of stuff to do.  Want to help?
 
+# This makes it much faster, and mostly immune to non-ASCII stuff, as
+# long as a 8-bit-safe sed is used.  Probably a safe assumption these
+# days.
+case ${LANG+set} in set) LANG=C; export LANG;; esac
+
 rm="rm -f"
 case $1 in
 --save-scripts | -S)
@@ -499,6 +504,14 @@ set_except () {
   }
 
   case /$1 in
+  /drivers/net/tg3.c)
+    # This file contains firmwares that we deblob with high
+    # sensitivity, so make sure the sequences of numbers that are not
+    # blobs are not deblobbed.  FIXME: we should have patterns to
+    # recognize the blobs instead.
+    initnc '   static const u32 test_pat\[4\]\[6\] ='
+    initnc '   }, mem_tbl_5705\[\] ='
+    ;;
   */*linux*.tar* | */*kernel*.tar* | */*linux-*.*.*/*)
     # false alarms, contain source
     # drivers/net/wan/wanxlfw.inc_shipped -> wanxlfw.S
@@ -598,6 +611,10 @@ set_except () {
     initnc '   static const unsigned char invert5\[\] ='
     initnc 'static unsigned char alpa2target\[\] ='
     initnc 'static unsigned char target2alpa\[\] ='
+    oprepline '#define INIT_THREAD [{0},]\+[   ]*\\[   ]*[{0},]\+'
+    initnc 'static uint tas300\(1c\|4\)_\(master\|mixer\|treble\|bass\)_tab\[\]='
+    initnc 'static short dmasound_[au]law2dma16\[\] ='
+    initnc 'static const unsigned short DACVolTable\[101\] ='
 
     # new in 2.6.25
     accept "%canned_values = ([\\n]    \\([0-9]\\+ => \\[[     \\n]\\+\\(\\([0-9]\\+\\|'0x[0-9a-f]\\+'\\),[    \\n]*\\)*\\]\\(, \\|[\\n]\\)\\)*);"
@@ -637,7 +654,7 @@ set_except () {
 
     # too lax?
     initnc 'static yyconst flex_int\(16\|32\)_t yy_[^[]*\[[][0-9]*\] ='
-    initnc 'static const yytype_u\?int\(8\|16\) yy[^[]*\[\] ='
+    initnc 'static const \(yytype_u\?int\(8\|16\)\|unsigned \(short\( int\)\?\|char\)\) yy[^[]*\[\] ='
     initnc '\(\|       \)static \(const \|\)\(unsigned \(short\|char\)\|struct SiS_[^ ]*\) SiS[^[]*\(\[[] [*0-9]*\]\)\+ *='
 
     initnc 'static const a3d_Hrtf_t A3dHrirZeros = {'