This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: sed and configure scripts


On Mon, May 29, 2000 at 11:59:11AM +0300, you [Ville Herva] claimed:
> I must be doing something wrong here. Basicly, it seems like sed would
> always intepret its input as binary.
> 
> I'm trying to run zsh-3.1.6 configure script. All is fine until configure
> does something like
> 
> cat > c.sed << EOF
> s/ristiina/parkano/g
> s/oulu/turku/g
> EOF
> sed -n -f c.sed < naantali > hollola
> 
> Now, c.sed contains dos newlines (0x0d), and sed barfs:
> 
> sed: file conftest.frag line 1: Unknown option to 's'
> 
> (option 'g^M'...)
> 
> my mounts are textmode, but the situation did not change with binary
> either. The configure script (the cat > ... and the following lines in
> particular) has no ^M's. CYGWIN=binmode is _not_ set.
> 
> cygwin1.ddl snapshot 15052000, newest sed from net.

This is a problem with sed. I tried to recompile sed but its configure
script failed the same way! How do you people get configure scripts run? I
couldn't even figure out any bearable work-around.

Sed uses mmap to read executed file:

sed.c::main():
        case 'f':
          the_program = compile_file(the_program, optarg);
          break;

compile.c:.compile_file():
  if (cmdfile[0] != '-' || cmdfile[1] != '\0')
    prog.file = ck_fopen(cmdfile, "r");
  if (map_file(prog.file, &prog.base, &len))
  
  
util.c::cd_fopen():
  if ( ! (fp = fopen(name, mode)) )
  
  
sed.c::map_file():
      nbase = VCAST(VOID *)mmap(NULL, CAST(size_t)s.st_size, PROT_READ,
                                MAP_PRIVATE, fileno(fp), CAST(off_t)0);
                                

I assume CR/LF translation is not done for mmap? 

Am I missing something obvious?


-- v --

v@iki.fi

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]