Skip to content

Conversation

giuliobenetti
Copy link
Contributor

At the moment extra_compile_args is set to -O2 by default. But m68k
toolchain has a bug that when trying to build Extension uvloop.loop enters
an infinite loop1. So we need to override -O2 with -O0 to make it
work. So let's getenv('MODULES_CFLAGS') and assign it to local
MODULES_CFLAGS (former CFLAGS) and assign it to extra_compile_args. If
not MODULES_CFLAGS is found then -O2 is kept as default.

Signed-off-by: Giulio Benetti giulio.benetti@benettiengineering.com

giuliobenetti and others added 3 commits September 23, 2021 01:16
At the moment extra_compile_args is set to -O2 by default. But m68k toolchain has a bug that when trying to build Extension uvloop.loop enters an infinite loop[1]. So we need to override -O2 with -O0 to make it work. So let's getenv('MODULES_CFLAGS') and assign it to local MODULES_CFLAGS (former CFLAGS) and assign it to extra_compile_args. If not MODULES_CFLAGS is found then -O2 is kept as default. [1]: http://autobuild.buildroot.net/results/17d/17d6e6422abadcd6313c430c40f2a5d7162dbbd3/build-end.log Signed-off-by: Giulio Benetti <giulio.benetti@benettiengineering.com>
@fantix
Copy link
Member

fantix commented Aug 13, 2022

Thanks for the PR! I renamed the env to UVLOOP_OPT_CFLAGS

@fantix fantix merged commit a130375 into MagicStack:master Aug 13, 2022
fantix added a commit that referenced this pull request Sep 13, 2022
This release adds Python 3.11 support, updates bundled libuv to 1.43.0 and fixes a handful of issues. Changes ======= * Expose uv_loop_t pointer for integration with other C-extensions (#310) (by @pranavtbhat in b332eb8 for #310) * Support python 3.11+ (#473) (by @zeroday0619 in 8e42921 for #473) * Expose libuv uv_fs_event functionality (#474) (by @jensbjorgensen @fantix in 74d381e for #474) * Activate debug mode when `-X dev` is used (by @jack1142 in 637a77a) * Expose uv_version() for libuv API compatibility (#491) (by @fantix in 089f6cb for #491) * Fix loop.getaddrinfo() and tests (#495) (by @fantix in 598b16f for #495) * Bump to libuv 1.43.0 (by @fantix in 94e5e53) Fixes ===== * _TransProtPair is no longer defined in asyncio.events (by @jensbjorgensen in fae5f7f) * use a TypeVar for asyncio.BaseProtocol (#478) (by @graingert in 3aacb35 for #478) * Fix segfault in TimerHandle.when() after cleared (by @jensbjorgensen in c39afff for #469) * Avoid self._errpipe_write double close (#466) (by @graingert in 72140d7 for #466) * Fix typo in test (#456) (by @kianmeng in 033d52d for #456) * Fix potential infinite loop (#446) (by @kfur in ada43c0 for #446) * use a stack of self._fds_to_close to prevent double closes (#481) (by @graingert in 3214cf6 for #481) * Fix incorrect main thread id value forking from a thread (#453) (by @horpto @fantix in e7934c8 for #453) * create_subprocess_exec should treat env={} as empty environment (#439) (#454) (by @byllyfish in e04637e for #439) * Queue write only after processing all buffers (#445) (by @jakirkham @fantix in 9c6ecb6 for #445) * Drop Python 3.6 support for thread ident (by @fantix in 9c37930) * bugfix: write to another transport in resume_writing() fails (#498) (by @fantix in d2deffe for #498) Build ===== * Upgrade GitHub Actions (#477) (#480) (by @cclauss in fcbf422 for #477, 1008694 for #480) * typo `same as same` (by @YoSTEALTH in fedba80) * setup.py: allow to override extra_compile_args (#443) (by @giuliobenetti in a130375 for #443) * Drop hack in setup.py in finalize_options (492) (by @fantix in 2f1bc83 for #492) * Fix tests invocation on release CI worklow (#489) (by @ben9923 in d6a2b59 for #489) Documentation ============= * use asyncio.Runner loop_factory on 3.11+ (#472) (by @graingert in 31ba48c for #472) * Fix CI badge in docs, remove remaining Travis CI references from docs (by @Nothing4You in c6901a7) * Fix typo in README (by @monosans in 73d7253)
@fantix fantix mentioned this pull request Sep 13, 2022
fantix added a commit that referenced this pull request Sep 14, 2022
This release adds Python 3.11 support, updates bundled libuv to 1.43.0 and fixes a handful of issues. Changes ======= * Expose uv_loop_t pointer for integration with other C-extensions (#310) (by @pranavtbhat in b332eb8 for #310) * Support python 3.11+ (#473) (by @zeroday0619 in 8e42921 for #473) * Expose libuv uv_fs_event functionality (#474) (by @jensbjorgensen @fantix in 74d381e for #474) * Activate debug mode when `-X dev` is used (by @jack1142 in 637a77a) * Expose uv_version() for libuv API compatibility (#491) (by @fantix in 089f6cb for #491) * Fix loop.getaddrinfo() and tests (#495) (by @fantix in 598b16f for #495) * Bump to libuv 1.43.0 (by @fantix in 94e5e53) Fixes ===== * _TransProtPair is no longer defined in asyncio.events (by @jensbjorgensen in fae5f7f) * use a TypeVar for asyncio.BaseProtocol (#478) (by @graingert in 3aacb35 for #478) * Fix segfault in TimerHandle.when() after cleared (by @jensbjorgensen in c39afff for #469) * Avoid self._errpipe_write double close (#466) (by @graingert in 72140d7 for #466) * Fix typo in test (#456) (by @kianmeng in 033d52d for #456) * Fix potential infinite loop (#446) (by @kfur in ada43c0 for #446) * use a stack of self._fds_to_close to prevent double closes (#481) (by @graingert in 3214cf6 for #481) * Fix incorrect main thread id value forking from a thread (#453) (by @horpto @fantix in e7934c8 for #453) * create_subprocess_exec should treat env={} as empty environment (#439) (#454) (by @byllyfish in e04637e for #439) * Queue write only after processing all buffers (#445) (by @jakirkham @fantix in 9c6ecb6 for #445) * Drop Python 3.6 support for thread ident (by @fantix in 9c37930) * bugfix: write to another transport in resume_writing() fails (#498) (by @fantix in d2deffe for #498) Build ===== * Upgrade GitHub Actions (#477) (#480) (by @cclauss in fcbf422 for #477, 1008694 for #480) * typo `same as same` (by @YoSTEALTH in fedba80) * setup.py: allow to override extra_compile_args (#443) (by @giuliobenetti in a130375 for #443) * Drop hack in setup.py in finalize_options (492) (by @fantix in 2f1bc83 for #492) * Fix tests invocation on release CI worklow (#489) (by @ben9923 in d6a2b59 for #489) Documentation ============= * use asyncio.Runner loop_factory on 3.11+ (#472) (by @graingert in 31ba48c for #472) * Fix CI badge in docs, remove remaining Travis CI references from docs (by @Nothing4You in c6901a7) * Fix typo in README (by @monosans in 73d7253)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants