@@ -75,44 +75,6 @@ docker commit `docker ps -l | grep wasmsdk:v2 | awk '{print $1}'` wasmsdk:v2
7575
7676This will save time on subsequent compiles.
7777
78- # ## Using Abseil from the Docker image
79-
80- Abseil (optionally) is built in /root/abseil and can be used. Note that the
81- Abseil containers (e.g. `absl ::flat_hash_set`) exercise many syscalls which are
82- not supported. Consequentially individual files should be pulled in which are
83- relatively self contained (e.g. `strings`). Example customized Makefile :
84-
85- ```makefile
86- PROXY_WASM_CPP_SDK =/sdk
87- CPP_API: =${PROXY_WASM_CPP_SDK}
88- CPP_CONTEXT_LIB = ${CPP_API}/proxy_wasm_intrinsics.cc
89- ABSL = /root/abseil-cpp
90- ABSL_CPP = ${ABSL}/absl/strings/str_cat.cc ${ABSL}/absl/strings/str_split.cc ${ABSL}/absl/strings/numbers.cc ${ABSL}/absl/strings/ascii.cc
91-
92- all : plugin.wasm
93-
94- % .wasm % .wat : % .cc ${CPP_API}/proxy_wasm_intrinsics.h ${CPP_API}/proxy_wasm_enums.h ${CPP_API}/proxy_wasm_externs.h ${CPP_API}/proxy_wasm_api.h ${CPP_API}/proxy_wasm_intrinsics.js ${CPP_CONTEXT_LIB}
95- ls /root
96- em++ --no-entry -s EXPORTED_FUNCTIONS=['_malloc'] --std=c++17 -O3 -flto -I${CPP_API} -I${CPP_API}/google/protobuf -I/usr/local/include -I${ABSL} --js-library ${CPP_API}/proxy_wasm_intrinsics.js ${ABSL_CPP} $*.cc ${CPP_API}/proxy_wasm_intrinsics.pb.cc ${CPP_CONTEXT_LIB} ${CPP_API}/libprotobuf.a -o $*.wasm
97- ```
98-
99- Precompiled Abseil libraries are also available, so the above can also be done
100- as:
101-
102- ``` makefile
103- PROXY_WASM_CPP_SDK =/sdk
104- CPP_API: =${PROXY_WASM_CPP_SDK}
105- CPP_CONTEXT_LIB = ${CPP_API}/proxy_wasm_intrinsics.cc
106- ABSL = /root/abseil-cpp
107- ABSL_LIBS = ${ABSL}/absl/strings/libabsl_strings.a ${ABSL}/absl/strings/libabsl_strings_internal.a ${ABSL}/absl/strings/libabsl_str_format_internal.a
108-
109- all : plugin.wasm
110-
111- % .wasm % .wat : % .cc ${CPP_API}/proxy_wasm_intrinsics.h ${CPP_API}/proxy_wasm_enums.h ${CPP_API}/proxy_wasm_externs.h ${CPP_API}/proxy_wasm_api.h ${CPP_API}/proxy_wasm_intrinsics.js ${CPP_CONTEXT_LIB}
112- ls /root
113- em++ --no-entry -s EXPORTED_FUNCTIONS=['_malloc'] --std=c++17 -O3 -flto -I${CPP_API} -I${CPP_API}/google/protobuf -I/usr/local/include -I${ABSL} --js-library ${CPP_API}/proxy_wasm_intrinsics.js $*.cc ${CPP_API}/proxy_wasm_intrinsics.pb.cc ${CPP_CONTEXT_LIB} ${CPP_API}/libprotobuf.a ${ABSL_LIBS} -o $*.wasm
114- ```
115-
11678# ## Ownership of the resulting .wasm files
11779
11880The compiled files may be owned by root. To chown them, add the follow lines to
0 commit comments