| Age | Commit message (Collapse) | Author |
|
When built for Linux, libffi includes very bloated and workaround exec-alloc
implementation required to work around SELinux and other "sekuritee" features
which real people don't use. MicroPython has own alloc-exec implementation,
used to alloc memory for @micropython.native code. With this option enabled,
uPy's implementation will override libffi's. This saves 11K on x86_64 (and
that accounts for more than half of the libffi code size).
TODO: Possibly, we want to refactor this option to allow either use uPy's
implementation even for libffi, or allow to use libffi's implementation even
for uPy.
|
|
Also try to use -fno-exceptions. Other options taken from libffi's configure
defaults.
|
|
|
|
|
|
|
|
|
|
This actually saves "only" 6K for x86_64 build, as we're still more or less
careful to #ifdef unneeded code. But relying on --gc-sections in a "lazy"
manner would allow to make #ifdef'ing less pervasive (not suggested right
away, but an option for the future).
|
|
|
|
The time stamp is taken from the RTC for all newly generated
or changed files. RTC must be maintained separately.
The dummy time stamp of Jan 1, 2000 is set in vfs.stat() for the
root directory, avoiding invalid time values.
|
|
|
|
|
|
MicroPython own readline implementation is superior now by providing
automatic indentation and completion (completion for GNU Readline was
never implemented). MICROPY_USE_READLINE=2 also wasn't build for a long
time and probably broken.
If GNU Readline is still beneficial for some cases, it can be achieved
with external wrappers like "rlwrap" (there will be the same level of
functionality, as again, there never was deep integration, like completion
support).
|
|
It has more usages than just qstr extraction, for example, embedding (where
people don't care about efficient predefined qstrs).
|
|
TODO: Do the same for other config files.
|
|
"lib" happened to be defined inside block conditional on $(PROG).
|
|
That's arbitrary restriction, in case of embedding, a source file path may
be absolute. For the purpose of filtering out system includes, checking
for ".c" suffix is enough.
|
|
Was broken since introduction of FatFs support.
|
|
Don't error out when options is not what you support, just skip your code.
This allows to make FatFs support properly configurable.
|
|
|
|
|
|
Applied "official" patches and fixed various warnings when built with uPy's
compile options.
|
|
|
|
From https://github.com/pfalcon/berkeley-db-1.xx, which so far contains
pristine 1.85, but will get patches and compile warning fixes going
forward.
Berkeley DB 1.xx is BSD-licensed, and will form the basis of "btree"
simple database module.
|
|
This implements basic wrapping of native get/put/seq API, and then dictionary
access protocol. Native API is intended to be superceded going forward.
|
|
Docs are now by default rebuilt from scratch, as required to build
conditionalized (i.e. using only:: directive) docs across different
output types. We have pretty small docset, so that's still rather fast.
However, if that's a concern, incremental rebuilds can be used by
passing "FORCE=" (nothing after =) as a make parameter. This will work
when using the same output type (e.g. only "html").
|
|
Based on my experience, there's rather non-zero chance to have an image be
flashed incorrectly. As --verify option is now works well in teh latest
esptool.py, enable it by default.
|
|
|
|
There's a need for .exp file because CPython renders OrderedDict's as:
OrderedDict([('b', 2)])
while MicroPython as:
OrderedDict({'b': 2})
|
|
|
|
For modindex_exclude extension, per-port module excludes are also added.
With these changes, it's possible to generate docs for a particular port
devoid of any superfluous and unrelated content, including in indexes and
full-text search - with small caveat: when generating PDF docs after HTML,
or vice-versa cached internal doctree representation (build/*/doctrees/)
must be removed first.
|
|
Designed specifically to workaround issues we were facing with generating
multiple conditionalized output docsets from a single master doctree.
Extensions were factored out into a separate project, based on the fact
that many other Sphinx users experience similar or related problems:
https://github.com/pfalcon/sphinx_selective_exclude
Corresponds to the 182f4a8da57 upstream revision.
|
|
|
|
Seealso and Limitations sectiosn added, better formatting and grammar.
|
|
With currentmodule:: set properly, none are needed. Extra "machine." prefix
produces wrong indexing data.
|
|
|
|
|
|
Based on unix version. No descriptions so far.
|
|
|
|
Class designator will be used as is in indexes, so must match actual class
name.
|
|
|
|
|
|
|
|
Based on python-dev discussion regarding PEP467.
|
|
This makes rendered docs to not provide incorrect information and
consistent with how it's down for other machine classes.
|
|
Class designator will be used as is in indexes, so must match actual class
name.
|
|
|
|
With currentmodule:: support, all targets should be generated properly by
Sphinx.
|
|
Makes sure that classes described in these separate files are properly
designated as belonging to "pyb" module in indexes.
|
|
Makes sure that classes described in these separate files are properly
designated as belonging to "machine" module in indexes.
|
|
|