Skip to content

Commit 6273bc7

Browse files
committed
Base support for llvm / c loader macos.
1 parent cecb0c2 commit 6273bc7

File tree

2 files changed

+14
-5
lines changed

2 files changed

+14
-5
lines changed

tools/metacall-environment.sh

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -686,7 +686,6 @@ sub_c(){
686686
$SUDO_CMD apt-get install -y --no-install-recommends libffi-dev libclang-${LLVM_VERSION_STRING}-dev
687687
elif [ "${LINUX_DISTRO}" = "alpine" ]; then
688688
$SUDO_CMD apk add --no-cache libffi-dev
689-
$SUDO_CMD apk add --no-cache --repository=https://dl-cdn.alpinelinux.org/alpine/edge/testing tcc
690689
$SUDO_CMD apk add --no-cache --repository=https://dl-cdn.alpinelinux.org/alpine/v3.16/main clang-libs=13.0.1-r1 clang-dev=13.0.1-r1
691690
fi
692691
elif [ "${OPERATIVE_SYSTEM}" = "Darwin" ]; then

tools/metacall-runtime.sh

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -252,10 +252,10 @@ sub_java(){
252252
# C
253253
sub_c(){
254254
echo "configure c"
255+
cd $ROOT_DIR
256+
LLVM_VERSION_STRING=14
255257

256258
if [ "${OPERATIVE_SYSTEM}" = "Linux" ]; then
257-
LLVM_VERSION_STRING=14
258-
259259
if [ "${LINUX_DISTRO}" = "debian" ]; then
260260
UBUNTU_CODENAME=""
261261
CODENAME_FROM_ARGUMENTS=""
@@ -293,9 +293,19 @@ sub_c(){
293293
sub_apt_install_hold libffi libclang-${LLVM_VERSION_STRING}
294294
elif [ "${LINUX_DISTRO}" = "ubuntu" ]; then
295295
sub_apt_install_hold libffi libclang-${LLVM_VERSION_STRING}
296+
elif [ "${LINUX_DISTRO}" = "alpine" ]; then
297+
$SUDO_CMD apk add --no-cache libffi-dev
298+
$SUDO_CMD apk add --no-cache --repository=https://dl-cdn.alpinelinux.org/alpine/v3.16/main clang-libs=13.0.1-r1 clang-dev=13.0.1-r1
296299
fi
297-
298-
# TODO: Implement Alpine and Darwin
300+
elif [ "${OPERATIVE_SYSTEM}" = "Darwin" ]; then
301+
brew install libffi
302+
brew install llvm@$LLVM_VERSION_STRING
303+
brew link llvm@$LLVM_VERSION_STRING --force --overwrite
304+
mkdir -p "$ROOT_DIR/build"
305+
CMAKE_CONFIG_PATH="$ROOT_DIR/build/CMakeConfig.txt"
306+
LIBCLANG_PREFIX=$(brew --prefix llvm@$LLVM_VERSION_STRING)
307+
echo "-DLibClang_INCLUDE_DIR=${LIBCLANG_PREFIX}/include" >> $CMAKE_CONFIG_PATH
308+
echo "-DLibClang_LIBRARY=${LIBCLANG_PREFIX}/lib/libclang.dylib" >> $CMAKE_CONFIG_PATH
299309
fi
300310
}
301311

0 commit comments

Comments
 (0)