You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -84,10 +84,10 @@ Buildscripts to build numpy and other wheels for wasix. For convenience, this pa
84
84
85
85
The build script is controlled by the following environment variables:
86
86
87
-
-`CC`, `CXX`, `AR`, `LD`, `RANLIB`, etc... : The cross-compiler tools. These should all be normal clang tools, but target wasm32-wasix by default and use the wasix sysroot.
88
-
-`WASIX_SYSROOT`: The path to the wasix sysroot that is used by the toolchain. Libraries will get installed here when you run `make install` or when they are required to build a package.
89
-
-`INSTALL_DIR`: The path to the python library path. Wheels will get installed here when you run `make install`.
90
-
-`WASMER`: The path to the wasmer binary. You must have it registered to handle wasm files as binfmt_misc. You can do this with `sudo $WASMER binfmt reregister`.
87
+
*`CC`, `CXX`, `AR`, `LD`, `RANLIB`, etc... : The cross-compiler tools. These should all be normal clang tools, but target wasm32-wasix by default and use the wasix sysroot.
88
+
*`WASIX_SYSROOT`: The path to the wasix sysroot that is used by the toolchain. Libraries will get installed here when you run `make install` or when they are required to build a package.
89
+
*`INSTALL_DIR`: The path to the python library path. Wheels will get installed here when you run `make install`.
90
+
*`WASMER`: The path to the wasmer binary. You must have it registered to handle wasm files as binfmt_misc. You can do this with `sudo $WASMER binfmt reregister`.
91
91
92
92
The easiest way to setup all the environment variables is to activate the wasix-clang environment using `source wasix-clang/activate`.
93
93
@@ -154,110 +154,110 @@ Here is a list of the versions of the wheels and libraries that are included in
154
154
155
155
#### Wheels
156
156
157
-
- numpy: numpy/numpy main
158
-
- markupsafe: 3.0.2
159
-
- pandas: 2.3.2
160
-
- pytz: 2025.2
161
-
- dateutil: 2.9.0
162
-
- tzdata: 2025.2
163
-
- six: 1.17.0
164
-
- msgpack: 1.1.0
165
-
- pycryptodome: 3.23.0
166
-
- pycryptodomex: 3.23.0
167
-
- pyzbar: 0.1.9
168
-
- cpython: 3.1.2
169
-
- pypandoc: 1.15
170
-
- pypandoc_binary: 1.15
171
-
- psycopg: 3.2.9
172
-
- psycopg-binary: 3.2.9
173
-
- psycopg-pool: pool-3.2.6
174
-
- brotlicffi: 1.1.0.0
175
-
- cffi: 1.17.1
176
-
- pillow: 11.3.0
177
-
- matplotlib: 3.10.6
178
-
- uvloop: 0.21.0
179
-
- mysqlclient: 2.2.7
180
-
- python-qrcode: 8.2
181
-
- pycparser: 2.22
182
-
- pydantic: 2.11.7
183
-
- typing_extensions: 4.14.1
184
-
- typing-inspection: 0.4.1
185
-
- annotated-types: 0.7.0
186
-
- shapely: 2.1.1
187
-
- mrab-regex: 2025.7.31
188
-
- lxml: 6.0.0
189
-
- protobuf: 31.1
190
-
- grpc: 1.74.1
191
-
- numpy: 1.26.5
192
-
- numpy: 2.0.2
193
-
- numpy: 2.3.2
194
-
- python-crc32c: 1.7.1
195
-
- requests: 2.32.4
196
-
- urllib3: 2.5.0
197
-
- idna: 3.10
198
-
- certifi: 2025.08.03
199
-
- charset-normalizer: 3.4.3
200
-
- pypng: 0.20250521.0
201
-
- pyarrow: 19.0.1
202
-
- pyarrow: 21.0.0
203
-
- packaging: 25.0
204
-
- pyparsing: 3.2.3
205
-
- cycler: 0.12.1
206
-
- kiwisolver: 1.4.9
207
-
- contourpy: 1.3.3
208
-
- pyopenssl: 25.1.0
209
-
- aspw: 3.50.4.0
157
+
* numpy: numpy/numpy main
158
+
* markupsafe: 3.0.2
159
+
* pandas: 2.3.2
160
+
* pytz: 2025.2
161
+
* dateutil: 2.9.0
162
+
* tzdata: 2025.2
163
+
* six: 1.17.0
164
+
* msgpack: 1.1.0
165
+
* pycryptodome: 3.23.0
166
+
* pycryptodomex: 3.23.0
167
+
* pyzbar: 0.1.9
168
+
* cpython: 3.1.2
169
+
* pypandoc: 1.15
170
+
* pypandoc_binary: 1.15
171
+
* psycopg: 3.2.9
172
+
* psycopg-binary: 3.2.9
173
+
* psycopg-pool: pool-3.2.6
174
+
* brotlicffi: 1.1.0.0
175
+
* cffi: 1.17.1
176
+
* pillow: 11.3.0
177
+
* matplotlib: 3.10.6
178
+
* uvloop: 0.21.0
179
+
* mysqlclient: 2.2.7
180
+
* python-qrcode: 8.2
181
+
* pycparser: 2.22
182
+
* pydantic: 2.11.7
183
+
* typing_extensions: 4.14.1
184
+
* typing-inspection: 0.4.1
185
+
* annotated-types: 0.7.0
186
+
* shapely: 2.1.1
187
+
* mrab-regex: 2025.7.31
188
+
* lxml: 6.0.0
189
+
* protobuf: 31.1
190
+
* grpc: 1.74.1
191
+
* numpy: 1.26.5
192
+
* numpy: 2.0.2
193
+
* numpy: 2.3.2
194
+
* python-crc32c: 1.7.1
195
+
* requests: 2.32.4
196
+
* urllib3: 2.5.0
197
+
* idna: 3.10
198
+
* certifi: 2025.08.03
199
+
* charset-normalizer: 3.4.3
200
+
* pypng: 0.20250521.0
201
+
* pyarrow: 19.0.1
202
+
* pyarrow: 21.0.0
203
+
* packaging: 25.0
204
+
* pyparsing: 3.2.3
205
+
* cycler: 0.12.1
206
+
* kiwisolver: 1.4.9
207
+
* contourpy: 1.3.3
208
+
* pyopenssl: 25.1.0
209
+
* aspw: 3.50.4.0
210
210
<!-- WHEEL_VERSIONS_END -->
211
211
212
-
psycopg3-c is just the sdist of psycopg3-binary## Running Tests
212
+
psycopg3-c is just the sdist of psycopg3-binary
213
213
214
214
#### Libraries
215
215
216
-
- libzbar: 0.23.93
217
-
- libffi: wasix-org/libffi main
218
-
- pandoc: haskell-wasm/pandoc wasm
219
-
- postgresql: 17.5
220
-
- brotli: 1.1.0
221
-
- zlib: develop
222
-
- 1.3.1 does not have proper cmake support, so we are using develop for now
@@ -350,52 +350,52 @@ TODO: Make this more understandable
350
350
351
351
Inside the pkgs/ folder there can be the following directories:
352
352
353
-
-`*.source`: clean submodule checkout
354
-
-`*.prepared`: patched worktree of source
355
-
-`*.build`: temporary build directory
356
-
-`*.tar.gz`: python sdist
357
-
-`*.sdist`: unpacked python sdist
358
-
-`*.whl`: compiled python wheel
359
-
-`*.wheel`: unpacked python wheel
360
-
-`*.lib`: unpacked library/application
361
-
-`*.tar.xz`: packed library/application
353
+
*`*.source`: clean submodule checkout
354
+
*`*.prepared`: patched worktree of source
355
+
*`*.build`: temporary build directory
356
+
*`*.tar.gz`: python sdist
357
+
*`*.sdist`: unpacked python sdist
358
+
*`*.whl`: compiled python wheel
359
+
*`*.wheel`: unpacked python wheel
360
+
*`*.lib`: unpacked library/application
361
+
*`*.tar.xz`: packed library/application
362
362
363
363
#### Base structure
364
364
365
365
Each project follows a consistent flow through the first three main directories.
366
366
367
-
-`*.source`
368
-
- This is a clean checkout of the project's upstream source code, tracked as a git submodule.
369
-
- We avoid modifying this directly, since changes here would slow down git operations in the build-scripts repo.
370
-
-`*.prepared`
371
-
- A git worktree created from the `*.source` repository.
372
-
- If patches are needed, they're applied here.
373
-
- If no patches are needed, it's just a clean mirror of the source.
374
-
- This directory is persistent and only refreshed if the source changes so new patches can be developed in this directory
375
-
-`*.build`
376
-
- A copy of the `*.prepared` directory, used for the actual build step.
377
-
- Contains all intermediate build artifacts.
378
-
- This directory is temporary and may be deleted between builds. Never make manual changes here.
367
+
*`*.source`
368
+
* This is a clean checkout of the project's upstream source code, tracked as a git submodule.
369
+
* We avoid modifying this directly, since changes here would slow down git operations in the build-scripts repo.
370
+
*`*.prepared`
371
+
* A git worktree created from the `*.source` repository.
372
+
* If patches are needed, they're applied here.
373
+
* If no patches are needed, it's just a clean mirror of the source.
374
+
* This directory is persistent and only refreshed if the source changes so new patches can be developed in this directory
375
+
*`*.build`
376
+
* A copy of the `*.prepared` directory, used for the actual build step.
377
+
* Contains all intermediate build artifacts.
378
+
* This directory is temporary and may be deleted between builds. Never make manual changes here.
379
379
380
380
The remaining steps are different depending on the type of project.
381
381
382
382
#### Python modules
383
383
384
-
- The build step creates a `*.tar.gz` sdist from the `*.build` directory.
385
-
- The sdist is then extracted into a `*.sdist` folder.
386
-
- Finally, a wheel (`*.whl`) is built from the `*.sdist`.
387
-
- If you want to you can make a `*.wheel` directory to view the unpacked wheel
384
+
* The build step creates a `*.tar.gz` sdist from the `*.build` directory.
385
+
* The sdist is then extracted into a `*.sdist` folder.
386
+
* Finally, a wheel (`*.whl`) is built from the `*.sdist`.
387
+
* If you want to you can make a `*.wheel` directory to view the unpacked wheel
388
388
389
389
#### WASIX libraries and applications
390
390
391
-
- The build step builds the library and installs it into a `*.lib` folder, following the correct directory structure.
392
-
- That folder is then compressed into a final distributable \*.tar.xz.
391
+
* The build step builds the library and installs it into a `*.lib` folder, following the correct directory structure.
392
+
* That folder is then compressed into a final distributable \*.tar.xz.
393
393
394
394
#### Interdependencies
395
395
396
396
If a project depends on other project they can either be direct dependencies of that project or you can define a `*.sysroot` target with the dependencies as prerequisites.
397
397
398
-
-`*.sysroot`
399
-
- Contains the merged builds of multiple other projects
400
-
- Useful when a project is using pkg-config to find its dependencies
401
-
- Automatically builds a sysroot from its list of prerequisites
398
+
*`*.sysroot`
399
+
* Contains the merged builds of multiple other projects
400
+
* Useful when a project is using pkg-config to find its dependencies
401
+
* Automatically builds a sysroot from its list of prerequisites
0 commit comments