mirror of
https://github.com/mii443/wasmer.git
synced 2025-12-06 20:58:28 +00:00
Fix error when WASMER_DIR is not defined + prepare libwasmer-headless
This commit is contained in:
32
Makefile
32
Makefile
@@ -450,15 +450,15 @@ build-capi-llvm-universal: capi-setup
|
|||||||
build-capi-headless: capi-setup
|
build-capi-headless: capi-setup
|
||||||
ifeq ($(CARGO_TARGET),)
|
ifeq ($(CARGO_TARGET),)
|
||||||
RUSTFLAGS="${RUSTFLAGS} -C panic=abort -C link-dead-code -C lto -O -C embed-bitcode=yes" $(CARGO_BINARY) build --target $(HOST_TARGET) --manifest-path lib/c-api/Cargo.toml --release \
|
RUSTFLAGS="${RUSTFLAGS} -C panic=abort -C link-dead-code -C lto -O -C embed-bitcode=yes" $(CARGO_BINARY) build --target $(HOST_TARGET) --manifest-path lib/c-api/Cargo.toml --release \
|
||||||
--no-default-features --features compiler-headless,wasi
|
--no-default-features --features compiler-headless,wasi --target-dir target/$(CARGO_TARGET)/headless
|
||||||
else
|
else
|
||||||
RUSTFLAGS="${RUSTFLAGS} -C panic=abort -C link-dead-code -C lto -O -C embed-bitcode=yes" $(CARGO_BINARY) build $(CARGO_TARGET) --manifest-path lib/c-api/Cargo.toml --release \
|
RUSTFLAGS="${RUSTFLAGS} -C panic=abort -C link-dead-code -C lto -O -C embed-bitcode=yes" $(CARGO_BINARY) build $(CARGO_TARGET) --manifest-path lib/c-api/Cargo.toml --release \
|
||||||
--no-default-features --features compiler-headless,wasi
|
--no-default-features --features compiler-headless,wasi --target-dir target/$(CARGO_TARGET)/headless
|
||||||
endif
|
endif
|
||||||
|
|
||||||
build-capi-headless-ios: capi-setup
|
build-capi-headless-ios: capi-setup
|
||||||
RUSTFLAGS="${RUSTFLAGS} -C panic=abort" cargo lipo --manifest-path lib/c-api/Cargo.toml --release \
|
RUSTFLAGS="${RUSTFLAGS} -C panic=abort" cargo lipo --manifest-path lib/c-api/Cargo.toml --release \
|
||||||
--no-default-features --features compiler-headless,wasi
|
--no-default-features --features compiler-headless,wasi --target-dir target/$(CARGO_TARGET)/headless
|
||||||
|
|
||||||
#####
|
#####
|
||||||
#
|
#
|
||||||
@@ -587,24 +587,50 @@ package-capi:
|
|||||||
cp $(TARGET_DIR)/wasmer.dll package/lib/wasmer.dll ;\
|
cp $(TARGET_DIR)/wasmer.dll package/lib/wasmer.dll ;\
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -f target/headless/$(CARGO_TARGET)/release/wasmer.dll ]; then \
|
||||||
|
cp target/headless/$(CARGO_TARGET)/release/wasmer.dll package/lib/wasmer-headless.dll ;\
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -f $(TARGET_DIR)/wasmer.dll.lib ]; then \
|
if [ -f $(TARGET_DIR)/wasmer.dll.lib ]; then \
|
||||||
cp $(TARGET_DIR)/wasmer.dll.lib package/lib/wasmer.dll.lib ;\
|
cp $(TARGET_DIR)/wasmer.dll.lib package/lib/wasmer.dll.lib ;\
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -f target/headless/$(CARGO_TARGET)/release/wasmer.dll.lib ]; then \
|
||||||
|
cp target/headless/$(CARGO_TARGET)/release/wasmer.dll.lib package/lib/wasmer-headless.dll.lib ;\
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -f $(TARGET_DIR)/wasmer.lib ]; then \
|
if [ -f $(TARGET_DIR)/wasmer.lib ]; then \
|
||||||
cp $(TARGET_DIR)/wasmer.lib package/lib/wasmer.lib ;\
|
cp $(TARGET_DIR)/wasmer.lib package/lib/wasmer.lib ;\
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -f target/headless/$(CARGO_TARGET)/release/wasmer.lib ]; then \
|
||||||
|
cp target/headless/$(CARGO_TARGET)/release/wasmer.lib package/lib/wasmer-headless.lib ;\
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -f $(TARGET_DIR)/libwasmer.dylib ]; then \
|
if [ -f $(TARGET_DIR)/libwasmer.dylib ]; then \
|
||||||
cp $(TARGET_DIR)/libwasmer.dylib package/lib/libwasmer.dylib ;\
|
cp $(TARGET_DIR)/libwasmer.dylib package/lib/libwasmer.dylib ;\
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -f target/headless/$(CARGO_TARGET)/release/libwasmer.dylib ]; then \
|
||||||
|
cp target/headless/$(CARGO_TARGET)/release/libwasmer.dylib package/lib/libwasmer-headless.dylib ;\
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -f $(TARGET_DIR)/libwasmer.so ]; then \
|
if [ -f $(TARGET_DIR)/libwasmer.so ]; then \
|
||||||
cp $(TARGET_DIR)/libwasmer.so package/lib/libwasmer.so ;\
|
cp $(TARGET_DIR)/libwasmer.so package/lib/libwasmer.so ;\
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -f target/headless/$(CARGO_TARGET)/release/libwasmer.so ]; then \
|
||||||
|
cp target/headless/$(CARGO_TARGET)/release/libwasmer.so package/lib/libwasmer-headless.so ;\
|
||||||
|
fi
|
||||||
|
|
||||||
if [ -f $(TARGET_DIR)/libwasmer.a ]; then \
|
if [ -f $(TARGET_DIR)/libwasmer.a ]; then \
|
||||||
cp $(TARGET_DIR)/libwasmer.a package/lib/libwasmer.a ;\
|
cp $(TARGET_DIR)/libwasmer.a package/lib/libwasmer.a ;\
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ -f target/headless/$(CARGO_TARGET)/release/libwasmer.a ]; then \
|
||||||
|
cp target/headless/$(CARGO_TARGET)/release/libwasmer.a package/lib/libwasmer-headless.a ;\
|
||||||
|
fi
|
||||||
|
|
||||||
package-capi-headless: build-capi-headless
|
package-capi-headless: build-capi-headless
|
||||||
mkdir -p "package/include"
|
mkdir -p "package/include"
|
||||||
mkdir -p "package/lib"
|
mkdir -p "package/lib"
|
||||||
|
|||||||
@@ -1014,7 +1014,13 @@ pub(super) mod utils {
|
|||||||
|
|
||||||
let file = files
|
let file = files
|
||||||
.iter()
|
.iter()
|
||||||
.find(|f| f.ends_with("libwasmer.a")).cloned()
|
.find(|f| f.ends_with("libwasmer-headless.a"))
|
||||||
|
.or_else(|| {
|
||||||
|
files
|
||||||
|
.iter()
|
||||||
|
.find(|f| f.ends_with("libwasmer.a"))
|
||||||
|
})
|
||||||
|
.cloned()
|
||||||
.ok_or_else(|| {
|
.ok_or_else(|| {
|
||||||
anyhow!("Could not find libwasmer.a for {} target in the provided tarball path (files = {files:#?})", target)
|
anyhow!("Could not find libwasmer.a for {} target in the provided tarball path (files = {files:#?})", target)
|
||||||
})?;
|
})?;
|
||||||
@@ -1096,15 +1102,7 @@ pub(super) mod utils {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub(super) fn get_wasmer_dir() -> anyhow::Result<PathBuf> {
|
pub(super) fn get_wasmer_dir() -> anyhow::Result<PathBuf> {
|
||||||
Ok(PathBuf::from(
|
wasmer_registry::WasmerConfig::get_wasmer_dir().map_err(|e| anyhow::anyhow!("{e}"))
|
||||||
env::var("WASMER_DIR")
|
|
||||||
.or_else(|e| {
|
|
||||||
option_env!("WASMER_INSTALL_PREFIX")
|
|
||||||
.map(str::to_string)
|
|
||||||
.ok_or(e)
|
|
||||||
})
|
|
||||||
.context("Trying to read env var `WASMER_DIR`")?,
|
|
||||||
))
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub(super) fn get_wasmer_include_directory() -> anyhow::Result<PathBuf> {
|
pub(super) fn get_wasmer_include_directory() -> anyhow::Result<PathBuf> {
|
||||||
|
|||||||
Reference in New Issue
Block a user