version 1.84, 2000/05/04 09:31:16
|
version 1.86, 2000/09/23 15:05:58
|
Line 1
|
Line 1
|
\ CROSS.FS The Cross-Compiler 06oct92py |
\ CROSS.FS The Cross-Compiler 06oct92py |
\ Idea and implementation: Bernd Paysan (py) |
\ Idea and implementation: Bernd Paysan (py) |
|
|
\ Copyright (C) 1995,1996,1997,1998,1999 Free Software Foundation, Inc. |
\ Copyright (C) 1995,1996,1997,1998,1999,2000 Free Software Foundation, Inc. |
|
|
\ This file is part of Gforth. |
\ This file is part of Gforth. |
|
|
Line 474 Create tfile 0 c, 255 chars allot
|
Line 474 Create tfile 0 c, 255 chars allot
|
THEN ; |
THEN ; |
|
|
: compact.. ( adr len -- adr2 len2 ) |
: compact.. ( adr len -- adr2 len2 ) |
\ deletes phrases like "xy/.." out of our directory name 2dec97jaw |
\ deletes phrases like "xy/.." out of our directory name 2dec97jaw |
over >r -1 >r |
over swap |
BEGIN dup WHILE |
BEGIN dup WHILE |
over c@ pathsep? |
dup >r '/ scan 2dup 4 min s" /../" compare 0= |
IF r@ -1 = |
IF |
IF r> drop dup >r |
dup r> - >r 4 /string over r> + 4 - |
ELSE 2dup 1 /string |
swap 2dup + >r move dup r> over - |
3 min s" ../" compare |
ELSE |
0= |
rdrop dup 1 min /string |
IF r@ over - ( diff ) |
THEN |
2 pick swap - ( dest-adr ) |
REPEAT drop over - ; |
>r 3 /string r> swap 2dup >r >r |
|
move r> r> |
|
ELSE r> drop dup >r |
|
THEN |
|
THEN |
|
THEN |
|
1 /string |
|
REPEAT |
|
r> drop |
|
drop r> tuck - ; |
|
|
|
: reworkdir ( -- ) |
: reworkdir ( -- ) |
remove~+ |
remove~+ |