xtreeprs.adb, xnmake.adb: Use Stream_IO instead of Text_IO to guarantee Unix style line terminators for...

2005-03-29  Robert Dewar  <dewar@adacore.com>

	* xtreeprs.adb, xnmake.adb: Use Stream_IO instead of Text_IO to
	guarantee Unix style line terminators for the output files, even when
	running on windows.

From-SVN: r97187
This commit is contained in:
Robert Dewar 2005-03-29 18:22:15 +02:00 committed by Arnaud Charlet
parent a6de8e2167
commit 077f6c5977
2 changed files with 46 additions and 10 deletions

View file

@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1992-2002 Free Software Foundation, Inc. --
-- Copyright (C) 1992-2005 Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@ -53,6 +53,7 @@ with Ada.Strings.Unbounded; use Ada.Strings.Unbounded;
with Ada.Strings.Unbounded.Text_IO; use Ada.Strings.Unbounded.Text_IO;
with Ada.Strings.Maps; use Ada.Strings.Maps;
with Ada.Strings.Maps.Constants; use Ada.Strings.Maps.Constants;
with Ada.Streams.Stream_IO; use Ada.Streams.Stream_IO;
with Ada.Text_IO; use Ada.Text_IO;
with GNAT.Spitbol; use GNAT.Spitbol;
@ -76,7 +77,6 @@ procedure XNmake is
Synonym : VString := Nul;
X : VString := Nul;
Lineno : Natural;
NWidth : Natural;
FileS : VString := V ("nmake.ads");
@ -86,10 +86,12 @@ procedure XNmake is
Given_File : VString := Nul;
-- File name given by command line argument
InS, InT : File_Type;
OutS, OutB : File_Type;
subtype Sfile is Ada.Streams.Stream_IO.File_Type;
wsp : Pattern := Span (' ' & ASCII.HT);
InS, InT : Ada.Text_IO.File_Type;
OutS, OutB : Sfile;
wsp : Pattern := Span (' ' & ASCII.HT);
Body_Only : Pattern := BreakX (' ') * X & Span (' ') & "-- body only";
Spec_Only : Pattern := BreakX (' ') * X & Span (' ') & "-- spec only";
@ -130,6 +132,10 @@ procedure XNmake is
V_Elist_Id : constant VString := V ("Elist_Id");
V_Boolean : constant VString := V ("Boolean");
procedure Put_Line (F : Sfile; S : String);
procedure Put_Line (F : Sfile; S : VString);
-- Local version of Put_Line ensures Unix style line endings
procedure WriteS (S : String);
procedure WriteB (S : String);
procedure WriteBS (S : String);
@ -188,10 +194,20 @@ procedure XNmake is
end if;
end WriteS;
procedure Put_Line (F : Sfile; S : String) is
begin
String'Write (Stream (F), S);
Character'Write (Stream (F), ASCII.LF);
end Put_Line;
procedure Put_Line (F : Sfile; S : VString) is
begin
Put_Line (F, To_String (S));
end Put_Line;
-- Start of processing for XNmake
begin
Lineno := 0;
NWidth := 28;
Anchored_Mode := True;

View file

@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
-- Copyright (C) 1992-2004 Free Software Foundation, Inc. --
-- Copyright (C) 1992-2005 Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@ -45,6 +45,7 @@ with Ada.Command_Line; use Ada.Command_Line;
with Ada.Strings.Unbounded; use Ada.Strings.Unbounded;
with Ada.Strings.Unbounded.Text_IO; use Ada.Strings.Unbounded.Text_IO;
with Ada.Text_IO; use Ada.Text_IO;
with Ada.Streams.Stream_IO; use Ada.Streams.Stream_IO;
with GNAT.Spitbol; use GNAT.Spitbol;
with GNAT.Spitbol.Patterns; use GNAT.Spitbol.Patterns;
@ -75,13 +76,15 @@ procedure XTreeprs is
Synonym : VString := Nul;
Term : VString := Nul;
OutS : File_Type;
subtype Sfile is Ada.Streams.Stream_IO.File_Type;
OutS : Sfile;
-- Output file
InS : File_Type;
InS : Ada.Text_IO.File_Type;
-- Read sinfo.ads
InT : File_Type;
InT : Ada.Text_IO.File_Type;
-- Read treeprs.adt
Special : TB.Table (20);
@ -137,6 +140,23 @@ procedure XTreeprs is
M : Match_Result;
procedure Put_Line (F : Sfile; S : String);
procedure Put_Line (F : Sfile; S : VString);
-- Local version of Put_Line ensures Unix style line endings
procedure Put_Line (F : Sfile; S : String) is
begin
String'Write (Stream (F), S);
Character'Write (Stream (F), ASCII.LF);
end Put_Line;
procedure Put_Line (F : Sfile; S : VString) is
begin
Put_Line (F, To_String (S));
end Put_Line;
-- Start of processing for XTreeprs
begin
Anchored_Mode := True;