Changeset 3347

Show
Ignore:
Timestamp:
07/24/99 15:19:29 (9 years ago)
Author:
frodo
Message:

mkpatch updates.

Video4Linux should now be able to live next to the our new i2c package.
v4l files are renamed i2c-old.c and i2c-old.h, but except for that, no
changes were necessary.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • i2c/trunk/kernel/i2c-core.c

    r3346 r3347  
    11351135 
    11361136 
    1137 int __init i2c_init(void) 
     1137static int __init i2c_init(void) 
    11381138{ 
    11391139        /* clear algorithms */ 
  • i2c/trunk/mkpatch/mkpatch.pl

    r3345 r3347  
    2020use strict; 
    2121 
     22use vars qw($temp); 
     23$temp = "mkpatch/.temp"; 
     24 
    2225# $_[0]: i2c package root (like /tmp/i2c) 
    2326# $_[1]: Linux kernel tree (like /usr/src/linux) 
     
    2932  my ($diff_command,$dummy); 
    3033 
    31   $diff_command = "diff -u2 $kernel_root/$kernel_file "; 
    32   $diff_command .= "$package_root/$package_file"; 
    33   open INPUT, "$diff_command|"; 
     34  $diff_command = "diff -u2"; 
     35  if ( -e "$kernel_root/$kernel_file") { 
     36    $diff_command .= " $kernel_root/$kernel_file "; 
     37  } else { 
     38    $diff_command .= " /dev/null "; 
     39  } 
     40  if ( -e "$package_root/$package_file") { 
     41    $diff_command .= " $package_root/$package_file "; 
     42  } else { 
     43    $diff_command .= " /dev/null"; 
     44  } 
     45  open INPUT, "$diff_command|" or die "Can't call `$diff_command'"; 
    3446  $dummy = <INPUT>; 
    3547  $dummy = <INPUT>; 
     
    4355} 
    4456 
     57# $_[0]: sensors package root (like /tmp/sensors) 
     58# $_[1]: Linux kernel tree (like /usr/src/linux) 
     59sub patch_old_i2c 
     60{ 
     61  my ($package_root,$kernel_root) = @_; 
     62  my (@files,$file); 
     63  print_diff $kernel_root,$kernel_root,"include/linux/i2c-old.h",  
     64             "include/linux/i2c.h" 
     65        if (not -e "$kernel_root/include/linux/i2c-old.h"); 
     66 
     67  open INPUT, "$package_root/mkpatch/OLDI2C"  
     68        or die "Can't open `$package_root/mkpatch/OLDI2C'"; 
     69  @files = <INPUT>; 
     70  close INPUT; 
     71 
     72  foreach $file (@files,"drivers/char/i2c-old.c") { 
     73    chomp $file; 
     74    if ($file eq "drivers/char/i2c-old.c") { 
     75      open INPUT, "$kernel_root/drivers/char/i2c.c" 
     76            or die "Can't open `$kernel_root/drivers/char/i2c.c'"; 
     77    } else {  
     78      open INPUT, "$kernel_root/$file" 
     79           or die "Can't open `$kernel_root/$file'"; 
     80    } 
     81    open OUTPUT, ">$package_root/$temp" 
     82           or die "Can't open `$package_root/$temp'"; 
     83    while (<INPUT>) { 
     84      s@(\s*#\s*include\s*)<linux/i2c.h>@\1<linux/i2c-old.h>@; 
     85      print OUTPUT; 
     86    } 
     87    close INPUT; 
     88    close OUTPUT; 
     89    print_diff $package_root,$kernel_root,$file,$temp; 
     90  } 
     91} 
     92 
    4593# $_[0]: i2c package root (like /tmp/i2c) 
    4694# $_[1]: Linux kernel tree (like /usr/src/linux) 
     
    4997  my ($package_root,$kernel_root) = @_; 
    5098  my $kernel_file = "Makefile"; 
    51   my $package_file = "mkpatch/.temp"
    52  
    53   open INPUT,"$kernel_root/$kernel_file" 
    54         or die "Can't open `$kernel_root/$kernel_file'"; 
    55   open OUTPUT,">$package_root/mkpatch/.temp
     99  my $package_file = $temp
     100 
     101  open INPUT,"$kernel_root/$kernel_file" 
     102        or die "Can't open `$kernel_root/$kernel_file'"; 
     103  open OUTPUT,">$package_root/$package_file
    56104        or die "Can't open $package_root/$package_file"; 
    57105  while(<INPUT>) { 
     
    82130  my ($package_root,$kernel_root) = @_; 
    83131  my $kernel_file = "drivers/Makefile"; 
    84   my $package_file = "mkpatch/.temp"
     132  my $package_file = $temp
    85133  my $i2c_present; 
    86134 
    87135  open INPUT,"$kernel_root/$kernel_file" 
    88136        or die "Can't open `$kernel_root/$kernel_file'"; 
    89   open OUTPUT,">$package_root/mkpatch/.temp
     137  open OUTPUT,">$package_root/$package_file
    90138        or die "Can't open $package_root/$package_file"; 
    91139  while(<INPUT>) { 
     
    127175# $_[0]: i2c package root (like /tmp/i2c) 
    128176# $_[1]: Linux kernel tree (like /usr/src/linux) 
     177sub gen_drivers_char_Makefile 
     178{ 
     179  my ($package_root,$kernel_root) = @_; 
     180  my $kernel_file = "drivers/char/Makefile"; 
     181  my $package_file = $temp; 
     182  open INPUT,"$kernel_root/$kernel_file" 
     183        or die "Can't open `$kernel_root/$kernel_file'"; 
     184  open OUTPUT,">$package_root/$package_file" 
     185        or die "Can't open $package_root/$package_file"; 
     186  while(<INPUT>) { 
     187    s@i2c\.o@i2c-old\.o@; 
     188    print OUTPUT; 
     189  } 
     190  close INPUT; 
     191  close OUTPUT; 
     192  print_diff $package_root,$kernel_root,$kernel_file,$package_file; 
     193} 
     194 
     195# $_[0]: i2c package root (like /tmp/i2c) 
     196# $_[1]: Linux kernel tree (like /usr/src/linux) 
    129197sub gen_drivers_char_Config_in 
    130198{ 
    131199  my ($package_root,$kernel_root) = @_; 
    132200  my $kernel_file = "drivers/char/Config.in"; 
    133   my $package_file = "mkpatch/.temp"
     201  my $package_file = $temp
    134202  my $ready = 0; 
    135203  my $done = 0; 
     
    137205  open INPUT,"$kernel_root/$kernel_file" 
    138206        or die "Can't open `$kernel_root/$kernel_file'"; 
    139   open OUTPUT,">$package_root/mkpatch/.temp
     207  open OUTPUT,">$package_root/$package_file
    140208        or die "Can't open $package_root/$package_file"; 
    141209  while(<INPUT>) { 
     
    166234  my ($package_root,$kernel_root) = @_; 
    167235  my $kernel_file = "drivers/char/mem.c"; 
    168   my $package_file = "mkpatch/.temp"
     236  my $package_file = $temp
    169237  my $right_place = 0; 
    170   my $with_video = 0; 
    171238  my $done = 0; 
    172239  my $atstart = 1; 
     
    174241  open INPUT,"$kernel_root/$kernel_file" 
    175242        or die "Can't open `$kernel_root/$kernel_file'"; 
    176   open OUTPUT,">$package_root/mkpatch/.temp" 
    177         or die "Can't open $package_root/$package_file"; 
    178   while(<INPUT>) { 
     243  open OUTPUT,">$package_root/$package_file" 
     244        or die "Can't open $package_root/$package_file"; 
     245  while(<INPUT>) { 
     246    if (m@#include <linux/i2c.h>@) { 
     247       $_=<INPUT>; 
     248    } 
    179249    if ($atstart and m@#ifdef@) { 
    180250      print OUTPUT << 'EOF'; 
     251#ifdef CONFIG_VIDEO_BT848 
     252extern int i2c_init(void); 
     253#endif 
    181254#ifdef CONFIG_I2C 
    182 extern void i2c_init_all(void); 
     255extern int i2c_init_all(void); 
    183256#endif 
    184257EOF 
    185258      $atstart = 0; 
    186259    } 
    187     if (not $right_place and m@CONFIG_I2C@) { 
     260    while (not $right_place and (m@CONFIG_I2C@ or m@CONFIG_VIDEO_BT848@)) { 
    188261      $_ = <INPUT> while not m@#endif@; 
    189262      $_ = <INPUT>; 
    190263    } 
    191     $with_video = 1 if m@CONFIG_VIDEO_BT848@; 
    192264    $right_place = 1 if (m@lp_init\(\);@); 
     265    if ($right_place and m@CONFIG_I2C@) { 
     266      $_ = <INPUT> while not m@#endif@; 
     267      $_ = <INPUT>; 
     268    } 
    193269    if ($right_place and not $done and 
    194         (m@CONFIG_I2C@ or m@CONFIG_VIDEO_BT848@ or m@return 0;@)) { 
    195       if (not m@return 0;@) { 
    196         $_ = <INPUT> while not m@#endif@; 
    197         $_ = <INPUT>; 
    198         $_ = <INPUT> if m@^$@; 
    199       } 
    200       if ($with_video) { 
    201         print OUTPUT '#if defined(CONFIG_I2C) || defined(CONFIG_VIDEO_BT848)'; 
    202       } else { 
    203         print OUTPUT '#ifdef CONFIG_I2C'; 
    204       } 
     270        (m@CONFIG_VIDEO_BT848@ or m@return 0;@)) { 
    205271      print OUTPUT <<'EOF'; 
    206  
     272#ifdef CONFIG_I2C 
    207273        i2c_init_all(); 
    208274#endif 
     
    231297  die "Kernel root `$kernel_root' is not found\n"  
    232298        unless -f "$kernel_root/Rules.make"; 
     299 
     300  patch_old_i2c $package_root, $kernel_root  
     301         if not -e "$kernel_root/drivers/char/i2c-old.c"; 
    233302 
    234303  # --> Read FILES 
     
    254323  foreach $package_file (keys %files) { 
    255324    $kernel_file = $files{$package_file}; 
    256     $diff_command = "diff -u2 "; 
    257     if ( -f "$kernel_root/$kernel_file") { 
    258       $diff_command .= "$kernel_root/$kernel_file"; 
    259     } else { 
    260       $diff_command .= "/dev/null"; 
    261     } 
    262     $diff_command .= " $package_root/$package_file"; 
    263     open INPUT, "$diff_command|"; 
    264     $dummy = <INPUT>; 
    265     $dummy = <INPUT>; 
    266     print "--- linux-old/$kernel_file\t".`date`; 
    267     print "+++ linux/$kernel_file\t".`date`; 
    268      
     325    open INPUT, "$package_root/$package_file" 
     326         or die "Can't open `$package_root/$package_file'"; 
     327    open OUTPUT, ">$package_root/$temp" 
     328         or die "Can't open `$package_root/$temp'"; 
    269329    while (<INPUT>) { 
    270330      eval $sedscript; 
    271       print
     331      print OUTPUT
    272332    } 
    273333    close INPUT; 
     334    close OUTPUT; 
     335    print_diff "$package_root","$kernel_root","$kernel_file","$temp"; 
    274336  } 
    275337 
     
    278340  gen_drivers_char_Config_in $package_root, $kernel_root; 
    279341  gen_drivers_char_mem_c $package_root, $kernel_root; 
     342  gen_drivers_char_Makefile $package_root, $kernel_root; 
    280343} 
    281344