1 This file is inlib.def
, from which is created inlib.c.
2 It implements the Apollo
-specific builtin
"inlib" in Bush.
4 Copyright (C
) 1987-2002 Free Software Foundation
, Inc.
6 This file is part of GNU Bush
, the Bourne Again SHell.
8 Bush is free software
: you can redistribute it and
/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation
, either version
3 of the License
, or
11 (at your option
) any later version.
13 Bush is distributed in the hope that it will be useful
,
14 but WITHOUT ANY WARRANTY
; without even the implied warranty of
15 MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with Bush. If not
, see
<http
://www.gnu.org
/licenses
/>.
25 #include
"../src/shell.h"
28 $FUNCTION inlib_builtin
30 $SHORT_DOC inlib pathname
[pathname...
]
31 Install user
-supplied library.
33 Install a user
-supplied library specified by pathname in the current
34 shell process. The library is used to resolve external references
35 in programs and libraries loaded after its installation. Note
36 that the library is not loaded into the address space unless it is
37 needed to resolve an external reference. The list of inlibed
38 libraries is passed to all children of the current shell.
41 Returns success unless PATHNAME is not found or an error occurs.
46 #include
<apollo
/base.h
>
47 #include
<apollo
/loader.h
>
62 return_value
= EXECUTION_SUCCESS
;
66 len
= (short
)strlen (list
->word
->word
);
67 loader_$
inlib (list
->word
->word
, len
, &status
);
69 if (status.all
!= status_$ok
)
71 builtin_error (_("%s: inlib failed"), list
->word
->word
);
72 return_value
= EXECUTION_FAILURE
;
78 return (return_value
);