@@ -30,17 +30,24 @@ if test -z "$1"; then
30
30
fi
31
31
32
32
WASI_SDK_PATH=" ${WASI_SDK_PATH:-/ opt/ wasi-sdk} "
33
+ WASI_SYSROOT=" ${WASI_SDK_PATH} /share/wasi-sysroot"
34
+ WASIX_PATH=" ${WASIX_PATH:-/ opt/ wasix} "
33
35
34
36
if ! test -x " ${WASI_SDK_PATH} /bin/clang" ; then
35
37
echo " Error: ${WASI_SDK_PATH} /bin/clang does not exist." >&2
36
38
exit 2
37
39
fi
38
40
41
+ CC=" ${WASI_SDK_PATH} /bin/clang"
42
+ CPP=" ${WASI_SDK_PATH} /bin/clang-cpp"
43
+ CXX=" ${WASI_SDK_PATH} /bin/clang++"
44
+
39
45
# --sysroot is required if WASI-SDK is not installed in /opt/wasi-sdk.
40
- WASI_SYSROOT=" ${WASI_SDK_PATH} /share/wasi-sysroot"
41
- CC=" ${WASI_SDK_PATH} /bin/clang --sysroot=${WASI_SYSROOT} "
42
- CPP=" ${WASI_SDK_PATH} /bin/clang-cpp --sysroot=${WASI_SYSROOT} "
43
- CXX=" ${WASI_SDK_PATH} /bin/clang++ --sysroot=${WASI_SYSROOT} "
46
+ if test " ${WASI_SDK_PATH} " ! = " /opt/wasi-sdk" ; then
47
+ CC=" ${CC} --sysroot=${WASI_SYSROOT} "
48
+ CPP=" ${CPP} --sysroot=${WASI_SYSROOT} "
49
+ CXX=" ${CXX} --sysroot=${WASI_SYSROOT} "
50
+ fi
44
51
45
52
# use ccache if available
46
53
if command -v ccache > /dev/null 2>&1 ; then
@@ -58,10 +65,17 @@ PKG_CONFIG_PATH=""
58
65
PKG_CONFIG_LIBDIR=" ${WASI_SYSROOT} /lib/pkgconfig:${WASI_SYSROOT} /share/pkgconfig"
59
66
PKG_CONFIG_SYSROOT_DIR=" ${WASI_SYSROOT} "
60
67
61
- PATH=" ${WASI_SDK_PATH} /bin:$PATH "
68
+ # add WASIX (POSIX stubs for WASI) if WASIX is installed
69
+ if test -f " ${WASIX_PATH} /lib/libwasix.a" ; then
70
+ CFLAGS=" ${CFLAGS} -isystem ${WASIX_PATH} /include"
71
+ LDFLAGS=" ${LDFLAGS} -L${WASIX_PATH} /lib -lwasix"
72
+ fi
73
+
74
+ PATH=" ${WASI_SDK_PATH} /bin:${PATH} "
62
75
63
- export WASI_SDK_PATH
76
+ export WASI_SDK_PATH WASI_SYSROOT
64
77
export CC CPP CXX LDSHARED AR RANLIB
78
+ export CFLAGS LDFLAGS
65
79
export PKG_CONFIG_PATH PKG_CONFIG_LIBDIR PKG_CONFIG_SYSROOT_DIR
66
80
export PATH
67
81
0 commit comments