Andrej730
2e71e002fc
try out just intel
2025-10-30 18:54:31 +05:00
Andrej730
40ed2fe3ab
build-all.py - remove unused wasm flags
...
`-Wl,-undefined,suppress` have no meaning in emscripten and they are just ignored. And emscripten is ignoring undefined symbols by default without any flags.
2025-10-30 18:53:56 +05:00
Andrej730
379fe632a3
build-all.py - switch to dynamic_lookup
...
1) `-undefined,suppress` is deprecated and linking is sending warnings about it and it seems to be superseded by `dynamic_lookup`
2) `-flat_namespace` is not compatible with GMP when building for intel, for some reason and results in horrible errors during linking:
Example error:
```
ld: branch8 out of range 366651 in ___gmpn_add_nc
final section layout:
__TEXT addr=0x00000000, size=0x02d09000, fileOffset=0x00000000
__text addr=0x00001400, size=0x0264a5e4, fileOffset=0x00001400
__stubs addr=0x0264b9e4, size=0x0000423c, fileOffset=0x0264b9e4
__stub_helper addr=0x0264fc20, size=0x00006c58, fileOffset=0x0264fc20
__gcc_except_tab addr=0x02656878, size=0x002efc04, fileOffset=0x02656878
__const addr=0x02946480, size=0x001cdc18, fileOffset=0x02946480
__cstring addr=0x02b140a0, size=0x0014324b, fileOffset=0x02b140a0
__unwind_info addr=0x02c572ec, size=0x0008d2d0, fileOffset=0x02c572ec
__eh_frame addr=0x02ce45c0, size=0x00024a30, fileOffset=0x02ce45c0
__DATA_CONST addr=0x02d09000, size=0x0022b000, fileOffset=0x02d09000
__got addr=0x02d09000, size=0x00001dc8, fileOffset=0x02d09000
__mod_init_func addr=0x02d0adc8, size=0x00000690, fileOffset=0x02d0adc8
__const addr=0x02d0b460, size=0x00227fd0, fileOffset=0x02d0b460
__DATA addr=0x02f34000, size=0x000c3000, fileOffset=0x02f34000
__la_symbol_ptr addr=0x02f34000, size=0x000056a0, fileOffset=0x02f34000
__data addr=0x02f396a0, size=0x0005f7b8, fileOffset=0x02f396a0
__thread_vars addr=0x02f98e58, size=0x000006d8, fileOffset=0x02f98e58
__thread_ptrs addr=0x02f99530, size=0x00000178, fileOffset=0x02f99530
__thread_data addr=0x02f996b0, size=0x000000d8, fileOffset=0x02f996b0
__thread_bss addr=0x02f99790, size=0x00018850, fileOffset=0x02f99790
__bss addr=0x02fb1fe0, size=0x0003b0c0, fileOffset=0x00000000
__common addr=0x02fed0a0, size=0x00009098, fileOffset=0x00000000
__LINKEDIT addr=0x02ff7000, size=0x0148e000, fileOffset=0x02fb2000
clang: error: linker command failed with exit code 1 (use -v to see invocation)
```
2025-10-30 18:53:55 +05:00
Andrej730
2ecaee9024
build-all.py - add VERBOSE=1 to the wrapper make command
2025-10-30 18:53:55 +05:00
Andrej730
f9a3c9a994
build-all.py - fix missing mac cross compilation host args in gmp
...
I guess something has changed in gmp 6.3.0 and this issue become more apparent.
Example error:
```
tmp-cnd_sub_n.s:133:14: error: tmp-cnd_add_n.sbrackets expression not supported on this target:
130 stp x8, x9, [x1,#16]
^
:2tmp-cnd_sub_n.s: :error: 134invalid instruction mnemonic 'bic':
6 bic x7, x13, x0:
error: invalid instruction mnemonic 'cset'^
~Lrt: cset x0, cc~
^~~tmp-cnd_add_n.s~:
131:2: error: invalid instruction mnemonic 'adcs'
adcs x8, x10, x6
^~~~
tmp-cnd_add_n.s:132:2: error: invalid instruction mnemonic 'adcs'
adcs x9, x11, x7
^~~~
tmp-cnd_add_n.s:133:14: error: brackets expression not supported on this target
stp x8, x9, [x1,#16]
^
tmp-cnd_add_n.s:134:6: error: invalid instruction mnemonic 'cset'
Lrt: cset x0, cs
^~~~
```
2025-10-29 14:38:24 +05:00
Andrej730
77acbff50b
black .
2025-10-29 13:25:26 +05:00
Ryan Schultz
3f2cad0490
Add suppress_zero_inches parameter to imperial_length formatting function
bonsai-0.8.4-alpha2510290325
2025-10-28 22:24:40 -05:00
Andrej730
5ec974ff94
Exclude build-all.py from main ruff check
2025-10-28 18:20:43 +05:00
Andrej730
2c585b649a
Fix RUFF037 (redundant quotes)
2025-10-28 18:20:14 +05:00
Andrej730
36c28f3953
Mention in docs wasm-wheels as the main wheels source for pyodide builds
2025-10-28 18:20:13 +05:00
Andrej730
d1763237d2
ifcopenshell docs make - add server target
2025-10-28 18:20:13 +05:00
Andrej730
e8544d78ee
ci.yml - note on rtti in rocksdb
2025-10-28 17:17:20 +05:00
Andrej730
e715a9467d
ci.yml - exclude PYTHON_LIBRARY as redundant
2025-10-28 17:17:20 +05:00
Andrej730
1f8c12a4c8
build_pyodide - test wasm wheel working
2025-10-28 17:17:20 +05:00
Andrej730
89a6eac535
build-all.py - access pyodide for necessary variables, simplify debug build env
2025-10-28 17:17:20 +05:00
Andrej730
d1ffb329c8
pyodide/setup.py - fix missing ifcopenshell subpackages
2025-10-28 17:17:20 +05:00
Andrej730
4396126a43
build-all.py - fix for upcoming pyodide changes (cmake INIT flags)
2025-10-28 17:17:20 +05:00
Andrej730
7448feed44
build-all.py - reinitialize wasm cxx flags from cflags to accomodate issue upstream
2025-10-28 17:17:19 +05:00
Andrej730
6bc4046b17
ifcwrap cmake - fix issue with debug build after migration to FindPython
...
In FindPython variable was renamed to Python_LIBRARY_DEBUG
2025-10-28 17:17:19 +05:00
Andrej730
1a83e52935
ifcwrap cmake - avoid using deprecated swig_link_libraries
2025-10-28 17:17:19 +05:00
Andrej730
f16d42ba14
ifcwrap cmake - use usual name for wrapper target
2025-10-28 17:17:19 +05:00
Andrej730
75135fe45d
cache_dependencies.py - fix tarfile deprecation warnings in 3.12-3.13
2025-10-28 17:17:19 +05:00
Andrej730
de89ab31cf
ifcwrap cmake - move DEBUG_POSTFIX logic to one place
2025-10-28 17:17:19 +05:00
Andrej730
c8a4f1bbd2
cmake - build without Python libraries on Unix
2025-10-28 17:17:19 +05:00
Andrej730
5be1858767
ifcwrap cmake - accomodate bug in cmake makefiles generator
2025-10-28 17:17:19 +05:00
Andrej730
ace1db739f
build-all - use shutil.which instead of custom function
...
To make it more idiomatic and custom function also was misinterpreting folders with the same name as existing executables.
2025-10-28 17:17:19 +05:00
Andrej730
80504310b6
build_pyodide - use ccache
2025-10-28 17:17:19 +05:00
Andrej730
a4dae9650f
build_rocky - switch to main branch ccache
2025-10-28 17:17:18 +05:00
Andrej730
c27a995480
build_pyodide - use prebuilt pyodide build env
2025-10-28 17:17:18 +05:00
Andrej730
5b4c54abd2
build-all.py - switch to gmp ftpmirror
...
previous url is inaccessible
2025-10-28 17:17:18 +05:00
Andrej730
57d0beedee
build_pyodide - display logs in github action output
2025-10-28 17:17:18 +05:00
Andrej730
d0ba675b1b
build_pyodide - upload build logs for debugging
2025-10-28 17:17:18 +05:00
Andrej730
f4f2fa9535
build_pyodide - pack cached dependencies
2025-10-28 17:17:18 +05:00
Andrej730
67707914b9
build_osx - remove setup-python
...
as it's already preinstalled on the image
2025-10-28 17:17:18 +05:00
Andrej730
12766d61d4
build-all.py - print BUILD_DIR
2025-10-28 17:17:18 +05:00
Andrej730
34374cba41
build_pyodide - no need to adjust version
...
since it's now inferred automatically
2025-10-28 17:17:18 +05:00
Andrej730
f8bb04eae3
build-all.py - accomodate pyodide build system automatically
...
as it's the main way to build the wasm package
2025-10-28 17:17:18 +05:00
Andrej730
aee8cbe479
build_pyodide.yaml - move build_pyodide to a separate script
2025-10-28 17:17:18 +05:00
Andrej730
cb36e10279
Add notes for pyodide building process
2025-10-28 17:17:18 +05:00
Andrej730
7ca44b5677
build-all.py wasm - move SIDE_MODULE=2 to cmake
...
Next to `EXPORTED_FUNCTIONS` and avoid possible issues with pyodide in the future (pyodide is using `SIDE_MODULE=1`, but currently not providing it libraries of type `MODULE`, only for shared ones).
2025-10-28 17:17:17 +05:00
Andrej730
a6921b83a1
ifcwrap cmake - provide correct suffix for wasm python extension
2025-10-28 17:17:17 +05:00
Andrej730
c3c94b9c59
pyodide setup.py - add dependencies
...
so micropip would be able to gather them automatically
2025-10-28 17:17:17 +05:00
Andrej730
576ef336fc
pyodide setup.py - add a note on not switching to pyproject.toml
2025-10-28 17:17:17 +05:00
Andrej730
b1fb541912
pyodide setup.py - ensure we have correct pyodide_2025_0_wasm32 suffix
...
Adding extension, but avoiding adding sources as we're not actually building.
As a result build will have a correct suffix `pyodide_2025_0_wasm32.whl` that's pyodide is currently using and this is pyodide is plan to use when it's going to release to PyPI, see https://peps.python.org/pep-0783/
2025-10-28 17:17:17 +05:00
Andrej730
6345b052da
build-all.py - add a note about alternative gmp mirror
2025-10-28 17:17:17 +05:00
Andrej730
061554d921
cmake - deduplicate ccache set_property code
2025-10-28 17:17:17 +05:00
Andrej730
bcaa412f4b
build-all.py - don't pass side module flags as usual flags
...
As they're parsed by emcmake automatically https://github.com/pyodide/pyodide-build/blob/bdd0b1422064de6d92264a08c599e85001a28567/pyodide_build/tools/cmake/Modules/Platform/Emscripten.cmake#L105-L107
2025-10-28 17:17:17 +05:00
Andrej730
9f6536b263
build-all.py - option to build wasm outside pyodide for debugging
2025-10-28 17:17:17 +05:00
Andrej730
226581f76e
build-all.py - provide exported functions to target explicitly
...
Otherwise it broke compilation in some cases when cmake would try to test that linker is working.
2025-10-28 17:17:17 +05:00
Andrej730
e833d0cd13
build-all - wasm to use packages instead of providing includes/libs paths explicitly
...
More complicated than I anticipated😅
Details
https://discourse.cmake.org/t/provide-absolute-paths-to-dependencies-with-cmake-find-root-path-search-during-cross-compilation-wasm/15241
2025-10-28 17:17:16 +05:00