Support for building as a shared library, based on patches from
[deliverable/binutils-gdb.git] / bfd / init.c
CommitLineData
e89f2fbe 1/* bfd initialization stuff
2ffbb79a 2 Copyright (C) 1990, 91, 92, 93, 94 Free Software Foundation, Inc.
e89f2fbe
SC
3 Written by Steve Chamberlain of Cygnus Support.
4
5This file is part of BFD, the Binary File Descriptor library.
6
7This program is free software; you can redistribute it and/or modify
8it under the terms of the GNU General Public License as published by
9the Free Software Foundation; either version 2 of the License, or
10(at your option) any later version.
11
12This program is distributed in the hope that it will be useful,
13but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15GNU General Public License for more details.
16
17You should have received a copy of the GNU General Public License
18along with this program; if not, write to the Free Software
2ffbb79a 19Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
c188b0be 20
e89f2fbe 21#include "bfd.h"
c188b0be 22#include "sysdep.h"
e89f2fbe
SC
23#include "libbfd.h"
24
2ffbb79a 25extern void bfd_section_init ();
c188b0be 26
e89f2fbe
SC
27static boolean initialized = false;
28
c188b0be
DM
29/*
30SECTION
31 Initialization
32
33 These are the functions that handle initializing a BFD.
34*/
35
36/*
37FUNCTION
38 bfd_init
e89f2fbe 39
c188b0be
DM
40SYNOPSIS
41 void bfd_init(void);
e89f2fbe 42
c188b0be 43DESCRIPTION
2ffbb79a 44 This routine must be called before any other BFD function to
c188b0be 45 initialize magical internal data structures.
e89f2fbe
SC
46*/
47
c188b0be
DM
48void
49bfd_init ()
e89f2fbe 50{
2ffbb79a
ILT
51 if (initialized == false)
52 {
53 initialized = true;
54 }
e89f2fbe
SC
55}
56
57
c188b0be
DM
58/*
59INTERNAL_FUNCTION
60 bfd_check_init
e89f2fbe 61
c188b0be
DM
62SYNOPSIS
63 void bfd_check_init(void);
e89f2fbe 64
c188b0be 65DESCRIPTION
2ffbb79a 66 This routine is called before any other BFD function using
c188b0be 67 initialized data. It ensures that the structures have
2ffbb79a 68 been initialized. Soon this function will go away, and the BFD
c188b0be 69 library will assume that <<bfd_init>> has been called.
e89f2fbe
SC
70*/
71
c188b0be
DM
72void
73bfd_check_init ()
e89f2fbe
SC
74{
75 if (initialized == false) {
e89f2fbe
SC
76 bfd_init();
77 }
78}
This page took 0.154152 seconds and 4 git commands to generate.