From e0fa51512f6e1ac8342155f788a02a9ee4947a6c Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Fri, 10 Jul 2009 07:07:54 -0500 Subject: [PATCH] llvm: new add-llvm-library word to make things a bit more portable --- extra/llvm/core/core.factor | 19 +++++++++++------- extra/llvm/engine/engine.factor | 35 +++++++++++---------------------- 2 files changed, 24 insertions(+), 30 deletions(-) diff --git a/extra/llvm/core/core.factor b/extra/llvm/core/core.factor index 00a395d3b2..cb62821390 100644 --- a/extra/llvm/core/core.factor +++ b/extra/llvm/core/core.factor @@ -1,18 +1,23 @@ ! Copyright (C) 2009 Matthew Willis. ! See http://factorcode.org/license.txt for BSD license. -USING: alien.libraries alien.syntax ; +USING: alien.libraries alien.syntax system sequences combinators ; IN: llvm.core << -"LLVMSystem" "/usr/local/lib/libLLVMSystem.dylib" "cdecl" add-library +: add-llvm-library ( name -- ) + dup + { + { [ os macosx? ] [ "/usr/local/lib/lib" ".dylib" surround ] } + { [ os windows? ] [ ".dll" append ] } + { [ os unix? ] [ ".so" append ] } + } cond add-library ; -"LLVMSupport" "/usr/local/lib/libLLVMSupport.dylib" "cdecl" add-library - -"LLVMCore" "/usr/local/lib/libLLVMCore.dylib" "cdecl" add-library - -"LLVMBitReader" "/usr/local/lib/libLLVMBitReader.dylib" "cdecl" add-library +"LLVMSystem" add-llvm-library +"LLVMSupport" add-llvm-library +"LLVMCore" add-llvm-library +"LLVMBitReader" add-llvm-library >> diff --git a/extra/llvm/engine/engine.factor b/extra/llvm/engine/engine.factor index 1fa7ef01d6..d259c740e6 100644 --- a/extra/llvm/engine/engine.factor +++ b/extra/llvm/engine/engine.factor @@ -5,29 +5,18 @@ IN: llvm.engine << -"LLVMExecutionEngine" "/usr/local/lib/libLLVMExecutionEngine.dylib" "cdecl" add-library - -"LLVMTarget" "/usr/local/lib/libLLVMTarget.dylib" "cdecl" add-library - -"LLVMAnalysis" "/usr/local/lib/libLLVMAnalysis.dylib" "cdecl" add-library - -"LLVMipa" "/usr/local/lib/libLLVMipa.dylib" "cdecl" add-library - -"LLVMTransformUtils" "/usr/local/lib/libLLVMTransformUtils.dylib" "cdecl" add-library - -"LLVMScalarOpts" "/usr/local/lib/libLLVMScalarOpts.dylib" "cdecl" add-library - -"LLVMCodeGen" "/usr/local/lib/libLLVMCodeGen.dylib" "cdecl" add-library - -"LLVMAsmPrinter" "/usr/local/lib/libLLVMAsmPrinter.dylib" "cdecl" add-library - -"LLVMSelectionDAG" "/usr/local/lib/libLLVMSelectionDAG.dylib" "cdecl" add-library - -"LLVMX86CodeGen" "/usr/local/lib/libLLVMX86CodeGen.dylib" "cdecl" add-library - -"LLVMJIT" "/usr/local/lib/libLLVMJIT.dylib" "cdecl" add-library - -"LLVMInterpreter.dylib" "/usr/local/lib/libLLVMInterpreter.dylib" "cdecl" add-library +"LLVMExecutionEngine" add-llvm-library +"LLVMTarget" add-llvm-library +"LLVMAnalysis" add-llvm-library +"LLVMipa" add-llvm-library +"LLVMTransformUtils" add-llvm-library +"LLVMScalarOpts" add-llvm-library +"LLVMCodeGen" add-llvm-library +"LLVMAsmPrinter" add-llvm-library +"LLVMSelectionDAG" add-llvm-library +"LLVMX86CodeGen" add-llvm-library +"LLVMJIT" add-llvm-library +"LLVMInterpreter" add-llvm-library >>