Commit Graph

110 Commits

Author SHA1 Message Date
Hood Chatham 55ef56ec91
BLD Fix run_docker test broken in #1424 (#1431) 2021-04-03 18:28:32 -07:00
Hood Chatham f3dc9024f0
Apply lints suggested by lgtm.com (#1398) 2021-03-31 21:11:41 +02:00
joemarshall b22b4f0c9e
Move all configuration variables for compile into Makefile.envs (#1369) 2021-03-26 15:37:59 +01:00
Hood Chatham a88e8edd17
Minor improvements to build handling of PYODIDE_PACKAGES (#1341) 2021-03-20 19:00:35 +01:00
Paul m. p. P 29639e0541
BLD handle gcc-arg-symbolic-functions (#1318) 2021-03-11 21:45:13 +01:00
Roman Yurchak cd470ec36a
BLD Fix overwriting package optflags via clfags etc in meta.yaml (#1287) 2021-03-02 19:48:57 +01:00
joemarshall 451924ba97
Clapack as so (#1236) 2021-02-26 17:01:10 +01:00
Dexter Chua 747152a008
Skip -ffixed-form flag (#1225)
This is only effective when compiling fortran code, which is not what we
are doing since we have applied f2c. Future versions of clang forbid
specifying the flag when not compiling fortran.
2021-02-10 18:25:56 +01:00
joemarshall 1bd8380c01
Emscripten 2.0.12 Upstream backend (#1102)
Co-authored-by: Dexter Chua <dalcde@users.noreply.github.com>
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2021-02-06 08:58:12 +01:00
Roman Yurchak e5672449f9
F2C, CLAPACK, scipy and numpy fixes for the upstream backend (#1193)
Co-authored-by: Joe Marshall <joe.marshall@nottingham.ac.uk>
2021-02-05 10:54:12 +01:00
Roman Yurchak 4972343414
pywasmcross improvements to work with the upstream backend (#1184)
Co-authored-by: Joe Marshall <joe.marshall@nottingham.ac.uk>
2021-02-04 12:34:40 +01:00
Hood Chatham 3635b88c89
Fix mistake in merging #1047 and #1083 (#1121) 2021-01-12 00:20:35 +01:00
Dexter Chua 65a9da04a3
Experimental new test system (#1047) 2021-01-11 18:25:55 +01:00
Roman Yurchak a68833fe6e
Add `meta.yaml` validation (#1105) 2021-01-11 15:59:22 +08:00
Michael Greminger 9c7ff5658f
Add build/script for nonlib pkg (#1070)
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
Co-authored-by: Dexter Chua <dalcde@users.noreply.github.com>
2021-01-08 17:30:39 +01:00
Dexter Chua c5f9a98de3
BLD Stop hardcoding file_packager.py directory (#1073) 2021-01-08 17:29:01 +01:00
Michael Greminger ec527fee02
Fix build error for zlib (#1060) 2021-01-07 10:48:04 +08:00
Dexter Chua 81cc3015bb
Use replace-libs for matplotlib (#1037)
The library that is supplied by USE_PNG is png, but matplotlib seeks
png16. With the fastcomp backend, we end up ignoring it anyway, but with
the upstream backend this will be the correct course of action
2021-01-04 09:50:01 +01:00
Dexter Chua ac3f1a358e
Build C libraries with the Python build system (#1027) 2021-01-03 22:09:40 +01:00
Roman Yurchak d5a7ada6ff
TST Fix test_pywasmcross.py::test_handle_command (#1032) 2021-01-03 17:11:32 +01:00
joemarshall 5ed423d9b3
Support replace libraries option in yaml files (#1029)
Some libraries have different names on wasm e.g. png16
2021-01-03 23:37:44 +08:00
joemarshall 324f595539
build .o files rather than .bc files. (#1028)
asm.js fastcomp build doesn't care about the file extension. upstream (wasm direct) build needs it to be .o
2021-01-03 22:14:56 +08:00
Michael Greminger 07e9352c6a
BLD Add cxxflags to build packages using cpp (#1019)
* Adding nlopt package (WIP)

* cxxflags added, nlopt builds

* Add docs and test for cxxflags feature

* Applied black formatter

* Remove nlopt new pkg from this branch

* Removed empty cxxflags option from SciPy meta.yaml
2021-01-03 08:17:08 +08:00
Dexter Chua 869044ba2e
Build six using usual build system (#1010) 2021-01-02 16:59:28 +08:00
Dexter Chua 2dfeba4c05
Build with -fPIC (#1008)
This is needed for the upstream backend, and I believe is a noop under
the fastcomp backend

Co-authored-by: Michael Droettboom <mdboom@gmail.com>
Co-authored-by: Joe Marshall <joe.marshall@nottingham.ac.uk>
2021-01-02 09:17:14 +01:00
Dexter Chua a8a0b73642
Fix pywasmcross race condition (#1011)
When building packages in parallel, it is possible that the symlink is
created by a different thread between the check and the linking, which
causes the build to fail. This has happened multiple times in CI.

Instead, just try to create the symlink and pass if it already exists,
which is the pythonic way of doing this.
2021-01-02 15:07:58 +08:00
Dexter Chua 27e2800120
Use upstream file packager instead of fork (#991) 2021-01-01 08:48:28 +01:00
Dexter Chua 57fea1bf74
BLD Make package build output less verbose (#947) 2020-12-31 13:19:41 +01:00
Dexter Chua 5d31bcbee4
Remove EMULATED_FUNCTION_POINTERS setting (#970)
According to pmp-p it is no longer needed, and this setting is
unavailable when using the upstream backend.

https://github.com/iodide-project/pyodide/issues/476#issuecomment-533285690
2020-12-31 11:43:49 +01:00
Tim Gates 3b534c3f85
docs: fix simple typo, convinience -> convenience (#975)
There is a small typo in pyodide_build/pywasmcross.py.

Should read `convenience` rather than `convinience`.
2020-12-30 09:42:35 +08:00
Dexter Chua 8588b0a4d6
Remove BINARYEN_METHOD flag (#966)
This has been removed since 1.38.23, and is always set to native-wasm
when we set WASM=1.

See https://github.com/emscripten-core/emscripten/pull/7836
2020-12-28 13:30:25 +08:00
Dexter Chua 3973641fb7
FIX Don't list C libraries as dependencies in packages.json (#931)
Fixes #930
2020-12-24 09:38:54 +01:00
Dexter Chua 8de2ed1202
Build C libraries via buildall.py (#927)
This addresses part of #713, by listing and building C libraries as
dependencies. This means we automatically build CLAPACK when needed, and
`lxml`'s C dependencies are not built if lxml is not. In particular,
building "core" should now be faster.

The building itself is still performed by Makefile.
2020-12-23 14:24:32 +01:00
Roman Yurchak d341645015
BLD Enable ccache for x86_64 (#882) 2020-12-21 11:27:33 +01:00
Dexter Chua 143ce603d7
BLD Clean up CLAPACK build (#901)
The biggest change is that most of `0001-hacks-for-WebAssembly-build.patch` is eliminated, and the remaining is split up into individual single-purpose patches with corresponding documentation.

Most of `0001-hacks-for-WebAssembly-build.patch` is in fact unnecessary. We can continue to produce `.a` files instead of `.bc` files, and all we have to do to make it build is to set `$(ARCH) = emar` and `$(RANLIB) = emranlib`. In fact, we don't have to set them to anything, since the point of emmake is to set these for us (except emmake uses `$(AR)` so we set `$(ARCH) = $(AR)`).

There are places where `ar` and `cc` etc. are used directly instead of the variables; we use `sed` to fix this in the parent `Makefile` instead of patching.

In addition, there are also the following changes:
 - Change the build system to build CLAPACK-WA/INSTALL as well. We should always have built it, but we managed to get away with not doing so due to a bug in emscripten that is fixed in 1.38.43. See https://github.com/iodide-project/pyodide/pull/843#issuecomment-744428471
 - Generate `F2CLIB/libf2c/arith.h` properly instead of setting it to an empty file.
 - Remove a seemingly unnecessary patch (945f06c46e)
2020-12-20 18:30:12 +08:00
Dexter Chua 67cf3abc0e
Remove ERROR_ON_MISSING_LIBARIES=0 (#858) 2020-12-14 12:04:26 +01:00
Dexter Chua 861746a675
Build packages in parallel (#840) 2020-12-10 20:37:08 +01:00
Dexter Chua ff7ec612c5
BLD Remove --host argument in pyodide_build (#836) 2020-12-08 10:22:57 +01:00
Roman Yurchak 068cb3678e
BLD Fix for compiler_compat flag in conda env (#835) 2020-12-08 09:00:53 +01:00
Dexter Chua 0defcb3825
BLD Don't compile host python (#830) 2020-12-08 00:19:16 +01:00
Roman Yurchak 55934b14e6
BLD/FIX Remove ASSERTIONS build option (#824) 2020-12-06 11:08:12 +01:00
Dexter Chua bd7d397a8c
BLD Pave way to compiling packages with system python (#820) 2020-12-05 19:42:41 +01:00
Dexter Chua d67648a6b8
BLD Update package build script's default ldflags (#817) 2020-12-03 14:27:40 +01:00
Roman Yurchak f7adad7eb3
Upgrade to emscripten 1.38.34 with fastcomp (#480)
Co-authored-by: Dexter Chua <dec41@srcf.net>
2020-11-30 18:54:35 +01:00
Roman Yurchak 8c22c98a43
MAINT Reorganize src/ and tests/ folders (#786) 2020-11-09 13:28:02 +01:00
Roman Yurchak a84ecd31f6
Fix lint CI (#759) 2020-09-24 12:28:10 +02:00
chigozienri 9dd8c565f8
MNT Add type annotations to pyodide_build/buildpkg.py (#735)
Co-authored-by: Michael Greminger <michael.greminger@gmail.com>
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2020-08-16 13:20:08 +02:00
Sergio f03cf8b667
ENH Automate package updates (#569)
Co-authored-by: Sergio <sergio.martins@points.com>
Co-authored-by: Roman Yurchak <rth.yurchak@gmail.com>
2020-07-13 23:34:10 +02:00
chigozienri c008957cb0
Docs cleanup (#726) 2020-07-13 21:46:20 +02:00
chigozienri bc3ffaae42
MAINT: yaml.load -> yaml.safe_load in pyodide_build (#717) 2020-07-10 22:55:43 +02:00