-
Notifications
You must be signed in to change notification settings - Fork 31
/
Copy pathfixfiles.fs
23 lines (17 loc) · 1.24 KB
/
fixfiles.fs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
\ fix loaded files
\ Author: Bernd Paysan
\ Copyright (C) 2016,2019,2020 Free Software Foundation, Inc.
\ This file is part of Gforth.
\ Gforth 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 3
\ of the License, or (at your option) any later version.
\ This program is distributed in the hope that it will be useful,
\ but WITHOUT ANY WARRANTY; without even the implied warranty of
\ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
\ 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, see http://www.gnu.org/licenses/.
s" GFORTHDESTDIR" getenv ." Fix prefix: '" type ." '" cr
included-files $[]# 0 [?DO] [I] included-files $[]@ ." Fix file: " 2dup type over [IF] open-fpath-file 0= [IF] rot close-file throw 2dup s" GFORTHDESTDIR" getenv string-prefix? [IF] s" GFORTHDESTDIR" getenv nip /string compact-filename [THEN] ." with " 2dup type cr [I] included-files $[] off s" GFORTHINSDIR" getenv [I] included-files $[]+! [I] included-files $[]+! [THEN] [ELSE] 2drop [THEN] [LOOP]
included-files $[]# 1- cells included-files $!len