]> git.sur5r.net Git - cc65/blobdiff - src/ca65/filetab.h
More lineinfo usage.
[cc65] / src / ca65 / filetab.h
index aa331f8743636353027adf619b9aa127f089e8ef..99ef4ba20b9b2406c66355fefbc4dab7d4b3f8fc 100644 (file)
@@ -6,10 +6,10 @@
 /*                                                                           */
 /*                                                                           */
 /*                                                                           */
-/* (C) 2000     Ullrich von Bassewitz                                        */
-/*              Wacholderweg 14                                              */
-/*              D-70597 Stuttgart                                            */
-/* EMail:       uz@musoftware.de                                             */
+/* (C) 2000-2008 Ullrich von Bassewitz                                       */
+/*               Roemerstrasse 52                                            */
+/*               D-70794 Filderstadt                                         */
+/* EMail:        uz@cc65.org                                                 */
 /*                                                                           */
 /*                                                                           */
 /* This software is provided 'as-is', without any expressed or implied       */
 
 
 
+/* common */
+#include "strbuf.h"
+
+
+
+/*****************************************************************************/
+/*                                          Data                                    */
+/*****************************************************************************/
+
+
+
+/* An enum that describes different types of input files. The members are
+ * choosen so that it is possible to combine them to bitsets
+ */
+typedef enum {
+    FT_MAIN     = 0x01,         /* Main input file */
+    FT_INCLUDE  = 0x02,         /* Normal include file */
+    FT_BINARY   = 0x04,         /* Binary include file */
+    FT_DBGINFO  = 0x08,         /* File from debug info */
+} FileType;
+
+
+
 /*****************************************************************************/
 /*                                          Code                                    */
 /*****************************************************************************/
 
 
 
-const char* GetFileName (unsigned Name);
+const StrBuf* GetFileName (unsigned Name);
 /* Get the name of a file where the name index is known */
 
-unsigned AddFile (const char* Name, unsigned long Size, unsigned long MTime);
+unsigned GetFileIndex (const StrBuf* Name);
+/* Return the file index for the given file name. */
+
+unsigned AddFile (const StrBuf* Name, FileType Type,
+                  unsigned long Size, unsigned long MTime);
 /* Add a new file to the list of input files. Return the index of the file in
  * the table.
  */
@@ -55,6 +82,8 @@ unsigned AddFile (const char* Name, unsigned long Size, unsigned long MTime);
 void WriteFiles (void);
 /* Write the list of input files to the object file */
 
+void CreateDependencies (void);
+/* Create dependency files requested by the user */