version 1.70, 2012/03/22 16:27:11
|
version 1.71, 2012/07/02 21:59:10
|
Line 64
|
Line 64
|
\ wrapper again. This is all done by loading the index file(s?), |
\ wrapper again. This is all done by loading the index file(s?), |
\ which define words for the wrappers in a separate wordlist. |
\ which define words for the wrappers in a separate wordlist. |
|
|
\ The files are built in .../lib/gforth/$VERSION/libcc/ or |
\ The files are built in .../lib/gforth$ARCH/$VERSION/libcc/ or |
\ ~/.gforth/libcc/$HOST/. |
\ ~/.gforth$ARCH/libcc/$HOST/. |
|
|
\ Todo: conversion between function pointers and xts (both directions) |
\ Todo: conversion between function pointers and xts (both directions) |
|
|
Line 266 defer save-c-prefix-line ( c-addr u -- )
|
Line 266 defer save-c-prefix-line ( c-addr u -- )
|
\G One line of C declarations for the C interface |
\G One line of C declarations for the C interface |
-1 parse save-c-prefix-line ; |
-1 parse save-c-prefix-line ; |
|
|
s" #include <gforth/" version-string s+ s" /libcc.h>" append ( c-addr u ) |
s" #include <gforth" arch-modifier s+ s" /" s+ version-string s+ s" /libcc.h>" append ( c-addr u ) |
2dup save-c-prefix-line drop free throw |
2dup save-c-prefix-line drop free throw |
|
|
\ Types (for parsing) |
\ Types (for parsing) |
Line 506 create gen-wrapped-types
|
Line 506 create gen-wrapped-types
|
libcc-named-dir-v 2@ ; |
libcc-named-dir-v 2@ ; |
|
|
: libcc-tmp-dir ( -- c-addr u ) |
: libcc-tmp-dir ( -- c-addr u ) |
s" ~/.gforth/libcc-tmp/" ; |
s" ~/.gforth" arch-modifier s+ s" /libcc-tmp/" s+ ; |
|
|
: prepend-dirname ( c-addr1 u1 c-addr2 u2 -- c-addr3 u3 ) |
: prepend-dirname ( c-addr1 u1 c-addr2 u2 -- c-addr3 u3 ) |
2over s+ 2swap drop free throw ; |
2over s+ 2swap drop free throw ; |
Line 699 clear-libs
|
Line 699 clear-libs
|
compile-wrapper-function1 ; |
compile-wrapper-function1 ; |
|
|
: init-libcc ( -- ) |
: init-libcc ( -- ) |
s" ~/.gforth/libcc-named/" libcc-named-dir-v 2! |
s" ~/.gforth" arch-modifier s+ s" /libcc-named/" s+ libcc-named-dir-v 2! |
[IFDEF] $init |
[IFDEF] $init |
libcc-path $init |
libcc-path $init |
libcc-named-dir libcc-path also-path |
libcc-named-dir libcc-path also-path |