 : define-c-library ( name -- )
     c-library-name c-library set
     V{ } clone c-strings set
-    V{ } clone compiler-args set ;
+    V{ } clone linker-args set ;
 
 : compile-c-library ( -- )
     compile-library? [ compile-library ] when

<PRIVATE
SYMBOL: c-library
SYMBOL: library-is-c++
SYMBOL: compiler-args
SYMBOL: c-strings

: cleanup-variables ( -- )
    { c-library library-is-c++ compiler-args c-strings }
    [ off ] each ;

: function-types-effect ( -- function types effect )

    ] dip append-function-body c-strings get push ;

: c-link-to ( str -- )
    "-l" prepend linker-args get push ;

: c-use-framework ( str -- )
    "-framework" swap linker-args get '[ _ push ] bi@ ;

: c-link-to/use-framework ( str -- )
    os macosx? [ c-use-framework ] [ c-link-to ] if ;
