1------------------------------------------------------------------------------
2--                                                                          --
3--                         GNAT COMPILER COMPONENTS                         --
4--                                                                          --
5--                              T E M P D I R                               --
6--                                                                          --
7--                                 S p e c                                  --
8--                                                                          --
9--          Copyright (C) 2003-2013, Free Software Foundation, Inc.         --
10--                                                                          --
11-- GNAT is free software;  you can  redistribute it  and/or modify it under --
12-- terms of the  GNU General Public License as published  by the Free Soft- --
13-- ware  Foundation;  either version 3,  or (at your option) any later ver- --
14-- sion.  GNAT is distributed in the hope that it will be useful, but WITH- --
15-- OUT ANY WARRANTY;  without even the  implied warranty of MERCHANTABILITY --
16-- or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License --
17-- for  more details.  You should have  received  a copy of the GNU General --
18-- Public License  distributed with GNAT; see file COPYING3.  If not, go to --
19-- http://www.gnu.org/licenses for a complete copy of the license.          --
20--                                                                          --
21-- GNAT was originally developed  by the GNAT team at  New York University. --
22-- Extensive contributions were provided by Ada Core Technologies Inc.      --
23--                                                                          --
24------------------------------------------------------------------------------
25
26--  This package is used by gnatmake and by the Project Manager to create
27--  temporary files.  If environment variable TMPDIR is defined and
28--  designates an absolute path, temporary files are create in this directory.
29--  Otherwise, temporary files are created in the current working directory.
30
31with Namet; use Namet;
32
33with GNAT.OS_Lib; use GNAT.OS_Lib;
34
35package Tempdir is
36
37   procedure Create_Temp_File
38     (FD   : out File_Descriptor;
39      Name : out Path_Name_Type);
40   --  Create a temporary text file and return its file descriptor and
41   --  its path name as a Name_Id. If environment variable TMPDIR is defined
42   --  and its value is an absolute path, the temp file is created in the
43   --  directory designated by TMPDIR, otherwise, it is created in the current
44   --  directory. If temporary file cannot be created, FD gets the value
45   --  Invalid_FD and Name gets the value No_Name.
46
47   procedure Use_Temp_Dir (Status : Boolean);
48   --  Specify if the temp file should be created in the system temporary
49   --  directory as specified by the corresponding environment variables. If
50   --  Status is False, the temp files will be created into the current working
51   --  directory.
52
53end Tempdir;
54