ld: Require GCC 5 for Build pr25749-1b (-pie -fPIE)
[deliverable/binutils-gdb.git] / sim / ppc / lf.h
index 13017f1f74e7594cbb5a1813d2e99c4859701f86..ce0b8763bba3e8015bcf97a855d7faee0ebd53a1 100644 (file)
@@ -4,7 +4,7 @@
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
+    the Free Software Foundation; either version 3 of the License, or
     (at your option) any later version.
 
     This program is distributed in the hope that it will be useful,
@@ -13,8 +13,7 @@
     GNU General Public License for more details.
  
     You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+    along with this program; if not, see <http://www.gnu.org/licenses/>.
  
     */
 
 
 typedef struct _lf lf;
 
+typedef enum {
+  lf_is_h,
+  lf_is_c,
+  lf_is_text,
+} lf_file_type;
+
+
+typedef enum {
+  lf_include_references,
+  lf_omit_references,
+} lf_file_references;
 
-#if !defined (__attribute__) && (!defined(__GNUC__) || __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7))
-#define __attribute__(arg)
-#endif
 
 /* Open the file NAME for writing.  REAL_NAME is to be included in any
    line number outputs.  The output of line number information can be
    suppressed with LINE_NUMBERS */
+
 extern lf *lf_open
 (char *name,
  char *real_name,
- int number_lines);
+ lf_file_references file_references,
+ lf_file_type type,
+ const char *program);
 
 extern void lf_close
 (lf *file);
 
 
-/* Suppress indentation for the next new line (current if not yet
-   started) */
-extern void lf_indent_suppress
-(lf *file);
+/* Basic output functions */
 
-extern void lf_putchr
+extern int lf_putchr
 (lf *file,
  const char ch);
 
-extern void lf_putstr
+extern int lf_putstr
 (lf *file,
  const char *string);
 
-extern void lf_putint
+extern int lf_putint
 (lf *file,
  int decimal);
 
-extern void lf_printf
+extern int lf_putbin
+(lf *file,
+ int decimal,
+ int width);
+
+extern int lf_printf
 (lf *file,
  const char *fmt,
  ...) __attribute__((format(printf, 2, 3)));
 
-extern void lf_print_lf_c_line_nr
+
+/* Indentation control.
+
+   lf_indent_suppress suppresses indentation on the next line (current
+   line if that has not yet been started) */
+
+extern void lf_indent_suppress
 (lf *file);
 
 extern void lf_indent
 (lf *file,
  int delta);
 
-extern void lf_print_copyleft
+
+/* Print generic text: */
+
+
+extern int lf_print__gnu_copyleft
 (lf *file);
 
-extern void lf_print_binary
+extern int lf_print__file_start
+(lf *file);
+
+extern int lf_print__this_file_is_empty
+(lf *file);
+
+extern int lf_print__file_finish
+(lf *file);
+
+extern int lf_print__internal_reference
+(lf *file);
+
+extern int lf_print__external_reference
 (lf *file,
- int decimal,
int width);
+ int line_nr,
const char *file_name);
 
-/* it is assumed that each line of code is prefixed by a tab character
-   that should be suppressed */
-extern void lf_print_c_code
+extern int lf_print__ucase_filename
+(lf *file);
+
+/* Tab prefix is suppressed */
+
+extern int lf_print__c_code
 (lf *file,
- char *code);
+ const char *code);
 
 
-extern void lf_print_c_line_nr
+extern int lf_print_function_type
 (lf *file,
- int line_nr,
- char *file_name);
+ const char *type,
+ const char *prefix,
+ const char *trailing_space);
This page took 0.063785 seconds and 4 git commands to generate.