xref: /dragonfly/contrib/binutils-2.34/ld/ldfile.h (revision 7ff0fc30)
1 /* ldfile.h -
2    Copyright (C) 1991-2020 Free Software Foundation, Inc.
3 
4    This file is part of the GNU Binutils.
5 
6    This program is free software; you can redistribute it and/or modify
7    it under the terms of the GNU General Public License as published by
8    the Free Software Foundation; either version 3 of the License, or
9    (at your option) any later version.
10 
11    This program is distributed in the hope that it will be useful,
12    but WITHOUT ANY WARRANTY; without even the implied warranty of
13    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14    GNU General Public License for more details.
15 
16    You should have received a copy of the GNU General Public License
17    along with this program; if not, write to the Free Software
18    Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
19    MA 02110-1301, USA.  */
20 
21 #ifndef LDFILE_H
22 #define LDFILE_H
23 
24 extern bfd_boolean ldfile_assumed_script;
25 extern unsigned long ldfile_output_machine;
26 extern enum bfd_architecture ldfile_output_architecture;
27 extern const char *ldfile_output_machine_name;
28 
29 /* Structure used to hold the list of directories to search for
30    libraries.  */
31 
32 typedef struct search_dirs {
33   /* Next directory on list.  */
34   struct search_dirs *next;
35   /* Name of directory.  */
36   const char *name;
37   /* TRUE if this is from the command line.  */
38   bfd_boolean cmdline;
39 } search_dirs_type;
40 
41 extern search_dirs_type *search_head;
42 
43 extern void ldfile_add_arch
44   (const char *);
45 extern void ldfile_add_library_path
46   (const char *, bfd_boolean cmdline);
47 extern void ldfile_open_command_file
48   (const char *name);
49 extern void ldfile_open_script_file
50   (const char *name);
51 extern void ldfile_open_default_command_file
52   (const char *name);
53 extern void ldfile_open_file
54   (struct lang_input_statement_struct *);
55 extern bfd_boolean ldfile_try_open_bfd
56   (const char *, struct lang_input_statement_struct *);
57 extern void ldfile_set_output_arch
58   (const char *, enum bfd_architecture);
59 extern bfd_boolean ldfile_open_file_search
60   (const char *arch, struct lang_input_statement_struct *,
61    const char *lib, const char *suffix);
62 
63 #endif
64