diff options
author | Andrew Clayton <a.clayton@nginx.com> | 2024-02-22 02:24:36 +0000 |
---|---|---|
committer | Andrew Clayton <a.clayton@nginx.com> | 2024-02-22 03:17:08 +0000 |
commit | d54af163c46bffd1bea0c2b544e412b5d628ec80 (patch) | |
tree | 9c3ec22452e9c81943ac7f860cb907fb86d85cd9 | |
parent | 7b13c30604952059c337b8c6afa588fdb5b8895a (diff) | |
download | unit-d54af163c46bffd1bea0c2b544e412b5d628ec80.tar.gz unit-d54af163c46bffd1bea0c2b544e412b5d628ec80.tar.bz2 |
Wasm-wc: Use the cargo build output as the make target dependency
cargo build creates the language module under
src/wasm-wasi-component/target/release/libwasm_wasi_component.so and not
build/lib/unit/modules/wasm_wasi_component.unit.so which is what we were
using as a target dependency in the Makefile which doesn't exist so this
resulted in the following
$ make wasm-wasi-component-install
cargo build --release --manifest-path src/wasm-wasi-component/Cargo.toml
Finished release [optimized] target(s) in 0.17s
install -d /opt/unit/modules
install -p src/wasm-wasi-component/target/release/libwasm_wasi_component.so \
/opt/unit/modules/wasm_wasi_component.unit.so
I.e it wanted to rebuild the module, after this patch we get the more
correct
$ make wasm-wasi-component-install
install -d /opt/unit/modules
install -p src/wasm-wasi-component/target/release/libwasm_wasi_component.so \
/opt/unit/modules/wasm_wasi_component.unit.so
This is all a little ugly because we're fighting against cargo wanting
to do its own thing and this wasm-wasi-component language module build
process is likely going to get some re-working anyway, so this will do
for now.
Reported-by: Konstantin Pavlov <thresh@nginx.com>
Signed-off-by: Andrew Clayton <a.clayton@nginx.com>
-rw-r--r-- | auto/modules/wasm-wasi-component | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/auto/modules/wasm-wasi-component b/auto/modules/wasm-wasi-component index 52ea3428..bfb6ffcb 100644 --- a/auto/modules/wasm-wasi-component +++ b/auto/modules/wasm-wasi-component @@ -5,6 +5,8 @@ NXT_WCM_MODULE=wasm-wasi-component NXT_WCM_MOD_NAME=`echo $NXT_WCM_MODULE | tr '-' '_'`.unit.so +NXT_WCM_MOD_CARGO="src/wasm-wasi-component/target/release/libwasm_wasi_component.so" + shift @@ -97,16 +99,16 @@ cat << END >> $NXT_MAKEFILE all: ${NXT_WCM_MODULE} -${NXT_WCM_MODULE}: $NXT_BUILD_DIR/lib/unit/modules/$NXT_WCM_MOD_NAME +${NXT_WCM_MODULE}: ${NXT_WCM_MOD_CARGO} -$NXT_BUILD_DIR/lib/unit/modules/$NXT_WCM_MOD_NAME: build/src/nxt_unit.o +${NXT_WCM_MOD_CARGO}: build/src/nxt_unit.o $NXT_CARGO_CMD install: ${NXT_WCM_MODULE}-install ${NXT_WCM_MODULE}-install: ${NXT_WCM_MODULE} install-check install -d \$(DESTDIR)$NXT_MODULESDIR - install -p src/wasm-wasi-component/target/release/libwasm_wasi_component.so \\ + install -p ${NXT_WCM_MOD_CARGO} \\ \$(DESTDIR)$NXT_MODULESDIR/$NXT_WCM_MOD_NAME uninstall: ${NXT_WCM_MODULE}-uninstall |