| \ lib.fs shared library support package 16aug03py |
\ lib.fs shared library support package 16aug03py |
| |
|
| \ Copyright (C) 1995,1996,1997,1998,2000,2003,2005 Free Software Foundation, Inc. |
\ Copyright (C) 1995,1996,1997,1998,2000,2003,2005,2006,2007 Free Software Foundation, Inc. |
| |
|
| \ This file is part of Gforth. |
\ This file is part of Gforth. |
| |
|
| \ Gforth is free software; you can redistribute it and/or |
\ Gforth is free software; you can redistribute it and/or |
| \ modify it under the terms of the GNU General Public License |
\ modify it under the terms of the GNU General Public License |
| \ as published by the Free Software Foundation; either version 2 |
\ as published by the Free Software Foundation, either version 3 |
| \ of the License, or (at your option) any later version. |
\ of the License, or (at your option) any later version. |
| |
|
| \ This program is distributed in the hope that it will be useful, |
\ This program is distributed in the hope that it will be useful, |
| \ GNU General Public License for more details. |
\ GNU General Public License for more details. |
| |
|
| \ You should have received a copy of the GNU General Public License |
\ You should have received a copy of the GNU General Public License |
| \ along with this program; if not, write to the Free Software |
\ along with this program. If not, see http://www.gnu.org/licenses/. |
| \ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111, USA. |
|
| |
|
| Variable libs 0 libs ! |
Variable libs 0 libs ! |
| \ links between libraries |
\ links between libraries |
| DOES> ( -- ) dup thislib ! proc: ; |
DOES> ( -- ) dup thislib ! proc: ; |
| |
|
| : init-shared-libs ( -- ) |
: init-shared-libs ( -- ) |
| defers 'cold libs |
defers 'cold |
| 0 libs BEGIN @ dup WHILE dup REPEAT drop |
0 libs BEGIN |
| BEGIN dup WHILE >r |
@ dup WHILE |
| |
dup REPEAT |
| |
drop BEGIN |
| |
dup WHILE |
| |
>r |
| r@ @lib |
r@ @lib |
| r@ 2 cells + BEGIN @ dup WHILE r@ over @proc REPEAT |
r@ 2 cells + BEGIN |
| |
@ dup WHILE |
| |
r@ over @proc REPEAT |
| drop rdrop |
drop rdrop |
| REPEAT drop ; |
REPEAT |
| |
drop ; |
| |
|
| ' init-shared-libs IS 'cold |
' init-shared-libs IS 'cold |
| |
|