Skip to content

Commit 81986bc

Browse files
committed
ifcopenshell wasm wheel should be dynamically fetched, not included in git
1 parent 03de698 commit 81986bc

File tree

2 files changed

+20
-2
lines changed

2 files changed

+20
-2
lines changed

src/ifctester/Makefile

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,18 @@ WEBAPP_BUILD_DIR := $(WEBAPP_DIR)/dist
2525
PYODIDE_DIR := $(WEBAPP_DIR)/public/pyodide
2626
PYODIDE_VERSION := 0.28.0
2727
PYODIDE_URL := https://github.com/pyodide/pyodide/releases/download/$(PYODIDE_VERSION)/pyodide-$(PYODIDE_VERSION).tar.bz2
28+
WORKER_BIN_DIR := $(WEBAPP_DIR)/public/worker/bin
29+
IFCOPENSHELL_WASM_WHEEL := ifcopenshell-0.8.5+a51b2c5-cp313-cp313-pyodide_2025_0_wasm32.whl
30+
IFCOPENSHELL_WASM_WHEEL_URL := https://s3.amazonaws.com/ifcopenshell-builds/ifcopenshell-0.8.5%2Ba51b2c5-cp313-cp313-pyodide_2025_0_wasm32.whl
31+
IFCOPENSHELL_WASM_WHEEL_PATH := $(WORKER_BIN_DIR)/$(IFCOPENSHELL_WASM_WHEEL)
2832
WEBAPP_GENERATED_DIR := $(WEBAPP_DIR)/public/worker/generated
2933
WEBAPP_IFCTESTER_MANIFEST := $(WEBAPP_GENERATED_DIR)/ifctester.json
3034
WEBAPP_IFCTESTER_BUILD_DIR := build-webapp-wheel
3135
PACKAGE_WEBAPP_DIR := $(PACKAGE_NAME)/webapp
3236
PACKAGE_WEBAPP_WWW_DIR := $(PACKAGE_WEBAPP_DIR)/www
3337

3438
.PHONY: webapp-dev
35-
webapp-dev: pyodide-download webapp-stage-ifctester-wheel
39+
webapp-dev: pyodide-download ifcopenshell-wasm-download webapp-stage-ifctester-wheel
3640
cd $(WEBAPP_DIR) && npm install
3741
cd $(WEBAPP_DIR) && npm run dev
3842

@@ -68,6 +72,18 @@ pyodide-download:
6872
echo "Pyodide $(PYODIDE_VERSION) prepared in $(PYODIDE_DIR)"; \
6973
fi
7074

75+
.PHONY: ifcopenshell-wasm-download
76+
ifcopenshell-wasm-download:
77+
@if [ -f "$(IFCOPENSHELL_WASM_WHEEL_PATH)" ]; then \
78+
echo "IfcOpenShell wasm wheel already exists at $(IFCOPENSHELL_WASM_WHEEL_PATH), skipping download"; \
79+
else \
80+
echo "Downloading IfcOpenShell wasm wheel..."; \
81+
mkdir -p $(WORKER_BIN_DIR); \
82+
rm -f $(WORKER_BIN_DIR)/ifcopenshell-*.whl; \
83+
curl -fL -o "$(IFCOPENSHELL_WASM_WHEEL_PATH)" "$(IFCOPENSHELL_WASM_WHEEL_URL)"; \
84+
echo "IfcOpenShell wasm wheel prepared at $(IFCOPENSHELL_WASM_WHEEL_PATH)"; \
85+
fi
86+
7187
.PHONY: webapp-stage-ifctester-wheel
7288
webapp-stage-ifctester-wheel:
7389
rm -rf $(WEBAPP_GENERATED_DIR)
@@ -92,7 +108,7 @@ endif
92108
rm -rf $(WEBAPP_IFCTESTER_BUILD_DIR)
93109

94110
.PHONY: webapp-build
95-
webapp-build: pyodide-download webapp-stage-ifctester-wheel
111+
webapp-build: pyodide-download ifcopenshell-wasm-download webapp-stage-ifctester-wheel
96112
cd $(WEBAPP_DIR) && npm install
97113
cd $(WEBAPP_DIR) && npm run build
98114

@@ -105,6 +121,7 @@ clean:
105121
rm -rf $(WEBAPP_BUILD_DIR)
106122
rm -rf $(WEBAPP_DIR)/node_modules
107123
rm -rf $(PYODIDE_DIR)
124+
rm -f $(WORKER_BIN_DIR)/ifcopenshell-*.whl
108125
rm -rf $(WEBAPP_GENERATED_DIR)
109126
rm -rf $(WEBAPP_IFCTESTER_BUILD_DIR)
110127
rm -rf $(PACKAGE_NAME)/webapp

src/ifctester/webapp/.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ node_modules
1111
dist
1212
dist-ssr
1313
*.local
14+
public/worker/bin/ifcopenshell-*.whl
1415
public/worker/generated
1516

1617
# Editor directories and files

0 commit comments

Comments
 (0)