Paul Sokolovsky
61d74fdef8
tools, unix: Replace upip tarball with just source files.
...
To make its inclusion as frozen modules in multiple ports less magic.
Ports are just expected to symlink 2 files into their scripts/modules
subdirs.
Unix port updated to use this and in general follow frozen modules setup
tested and tried on baremetal ports, where there's "scripts" predefined
dir (overridable with FROZEN_DIR make var), and a user just drops Python
files there.
2016-11-07 18:39:41 +03:00
Damien George
ca973bd308
qemu-arm: Enable software floating point support, and float tests.
...
This helps to test floating point code on Cortex-M hardware.
As part of this patch the link-time-optimisation was disabled because it
wasn't compatible with software FP support. In particular, the linker
could not find the __aeabi_f2d, __aeabi_d2f etc functions even though they
were provided by lib/libm/math.c.
2016-11-03 12:28:31 +11:00
Paul Sokolovsky
796b720dbc
tools/tinytest-codegen: Exclude ticks_diff test for qemu-arm port.
2016-10-30 22:24:07 +03:00
Alex March
52aa532050
qemu-arm: Exclude new vfs_fat tests.
2016-10-27 12:25:28 +11:00
Paul Sokolovsky
f7aa692093
tools/check_code_size.sh: Code size validation script for CI.
2016-10-25 11:43:55 +03:00
Paul Sokolovsky
b78144c64d
tools/pip-micropython: Remove deprecated wrapper tool.
...
Deprecated for long time, pip-micropython now can't install packages
optimized for low-heap ports (like whole of micropython-lib).
2016-10-24 16:52:15 +03:00
Alex March
06e7032906
qemu-arm: Exclude extmod/vfs_fat_fileio.py test.
2016-10-24 12:49:19 +11:00
Paul Sokolovsky
197a5724d8
tools: Upgrade upip to 1.1.4.
...
Fix error on unix when installing to non-existing absolute path.
2016-10-22 21:14:58 +03:00
Damien George
b0a15aa735
qemu-arm: Enable lots of extmods and enable tests for them.
...
The qemu-arm port is used for testing of ARM Thumb architecture on a
desktop so should have many features enabled.
2016-10-14 00:08:19 +11:00
Paul Sokolovsky
cdbeee0c50
tools: Upgrade upip to 1.1.3.
...
Initial support for running on a baremetal, low-heap systems (like esp8266),
using Python module interface.
2016-10-12 18:55:31 +03:00
Paul Sokolovsky
cecf6bee97
tools: Upgrade upip to 1.0.
...
Fully self-hosted release (without fallbacks), and uses stream gzip
decompression (step towards support for limited-heap baremetal systems).
2016-10-05 00:34:09 +03:00
Paul Sokolovsky
4c63986101
tools: Update upip to 0.8. Fixes IPv6 support.
2016-09-23 15:35:06 +03:00
Damien George
7df9291b6c
py: Update opcode format table because 3 opcodes were removed, 1 added.
...
LIST_APPEND, MAP_ADD and SET_ADD have been removed, and STORE_COMP has
been added in adaf0d865c
.
2016-09-23 12:48:57 +10:00
Damien George
c51c883cc8
tools/mpy-tool.py: Support freezing of complex numbers.
2016-09-03 00:19:02 +10:00
Damien George
b6bdf18deb
tools/mpy-tool.py: Compute the hash value for str/bytes objects.
...
This makes it more efficient at runtime to hash str/bytes objects.
2016-09-02 15:10:45 +10:00
Damien George
b4790afdaf
tools/mpy-tool.py: Store qstr config values in global config object.
...
Makes it easier to access them without passing around another dict of the
config values.
2016-09-02 15:09:21 +10:00
Damien George
72ae3c72c7
tools/mpy-tool.py: Support freezing float literals with obj-repr C.
...
The tool now generates code for freezing floats in obj-repr A, B or C,
with the specific representation detected at compile time using macros.
2016-08-10 13:26:11 +10:00
Paul Sokolovsky
cbe544a76d
tools: Upgrade upip to 0.7.
...
SSL certificate warning, switch to uerrno, and better usage message.
2016-05-28 02:57:53 +03:00
Damien George
25a42fb6ef
tools/mpy-tool.py: Don't strip directories from the frozen source name.
...
Directories are now supported by the frozen import system (to implement
frozen packages) so we should keep them.
2016-05-23 13:29:03 +01:00
Damien George
9b4c013823
tools/mpy-tool.py: Include .py extension in frozen filename.
...
So that it can be correctly stat'd when looking for frozen files.
2016-05-23 12:46:02 +01:00
Paul Sokolovsky
daa4793578
tools/make-frozen: Update for latest changes in frozen modules support.
...
Frozen modules are now stored with extensions and with '/' as path
separator. In other words, frozen modules paths stored as they are
in normal filesystem.
2016-05-21 21:39:27 +03:00
Damien George
99b4719357
tools/mpy-tool.py: Add checks for critical configuration vars.
...
When an mpy file is frozen it must know the values of certain
configuration variables. This patch provides an explicit check in the
generated C file that the configuration variables are what they are
supposed to be.
2016-05-16 23:13:30 +01:00
Paul Sokolovsky
7b1bf0c308
tools/make-frozen.py: Quick fix to support package-modules.
...
It allows to "import foo.bar", but not "from foo import bar".
2016-05-14 16:30:02 +03:00
Damien George
5985e41afc
tools/make-frozen.py: Properly escape hex chars when making C strings.
2016-05-13 13:12:01 +01:00
Damien George
02fd83bcbc
tools/mpy-tool: Make sure that all C-level variables are unique.
...
Fixes issue #2023 .
2016-05-03 12:24:39 +01:00
Damien George
c3beb16db3
tools/mpy-tool.py: Add support for Python 2.7.
2016-04-15 11:56:10 +01:00
Damien George
0a2e9650f5
py: Add ability to have frozen persistent bytecode from .mpy files.
...
The config variable MICROPY_MODULE_FROZEN is now made of two separate
parts: MICROPY_MODULE_FROZEN_STR and MICROPY_MODULE_FROZEN_MPY. This
allows to have none, either or both of frozen strings and frozen mpy
files (aka frozen bytecode).
2016-04-13 16:07:47 +01:00
Damien George
0699c6bf9e
tools: Add mpy-tool.py, to work with .mpy files.
...
Currently it can freeze .mpy files.
2016-04-13 16:05:43 +01:00
Damien George
be989be861
qemu-arm: Enable builtin override feature, and enable more tests.
...
Hopefully these tests run reliably on Travis.
2016-03-15 13:45:32 +00:00
Paul Sokolovsky
17f324b836
py/frozenmod: Store frozen module names together, to quickly scan them.
2016-01-03 18:08:45 +02:00
Paul Sokolovsky
0992588811
py/frozenmod: Make frozen module content be 0-terminated.
...
To allow simple zero-terminated lexers.
2016-01-01 07:51:07 +02:00
Damien George
4bd95f8b44
tools: Add C middle-processor to make builtin tables proper hash tables.
2015-12-31 00:24:33 +00:00
Paul Sokolovsky
bb7f5b5501
tools: Upgrade upip to 0.6.3.
...
Updated for _os -> uos builtin module rename.
2015-12-12 00:20:10 +02:00
Damien George
bbe2e22fcb
tools: Fix pyboard.py to work under Python 3.
2015-12-08 12:55:28 +00:00
Peter Hinch
f4fcc14cfb
tools: Add option to pyboard.py to wait for serial device to be ready.
...
Also prints a nicer error message if the serial connection could not be
established.
2015-12-08 11:10:09 +00:00
Dave Hylands
519cef813e
tools: Allow pyboard.py to work when boot.py prints things.
2015-12-06 21:45:10 +00:00
Paul Sokolovsky
f8bc3f6964
tools: Update to upip 0.6.2. Fixes issue due to MacOSX undocumented behavior.
2015-11-15 00:04:18 +02:00
Paul Sokolovsky
3862ef9a9f
tools: Update upip to 0.6.1. Fixes normal installs without -p switch.
2015-11-14 17:54:30 +02:00
Paul Sokolovsky
0aff87b808
tools: Update upip to 0.6.
...
Removes FFI dependency, instead uses builtin os module. Thus can work on
systems where dynamic library loading is not available.
2015-11-14 00:05:24 +02:00
Paul Sokolovsky
89f2ddd2d0
tools/pyboard.py: Don't add terminating \x04 character to stdout output.
2015-11-07 13:48:35 +00:00
Paul Sokolovsky
e6dccaf18e
tools/pyboard.py: Make -c (inline Python code) option compatible with python2.
2015-11-07 12:16:11 +03:00
Tom Soulanille
a787467569
tools/pyboard: Add -c argument to run a program passed as a string.
2015-10-19 23:20:59 +01:00
Paul Sokolovsky
6a515b95a8
tools/upip: Update to 0.5.9.
...
MICROPYPATH environment variable is now honored, package are installed to
first path specified in it.
2015-10-17 20:16:41 +03:00
Damien George
0334058fa4
Rename "Micro Python" to "MicroPython" in REPL, help, readme's and misc.
2015-10-12 00:06:25 +01:00
Dave Hylands
01d64914c5
stmhal: Fix USB CDC-only mode under Windows.
...
This fix adds PIDs 9801 and 9802 to the pybcdc.inf file.
When in CDC only mode, it presents itself as a Communcations
device rather than as a composite device. Presenting as a
composite device with only the CDC interface seems to confuse
windows.
To test and make sure that the correct pybcdc.inf was being used,
I used USBDeview from http://www.nirsoft.net/utils/usb_devices_view.html
to uninstall any old pyboard drivers (Use Control-F and search
for pyboard). I found running USBDeview as administrator worked best.
Installing the driver in CDC+MSC mode first is recommended (since the
pybcdc.inf file in on the internal flash drive). Then when you switch
modes everything seems to work properly.
I used https://github.com/dhylands/upy-examples/blob/master/boot_switch.py
to easily switch the pyboard between the various USB modes for testing.
2015-10-09 00:18:01 +01:00
Paul Sokolovsky
a5deadf082
tools: Upgrade upip to 0.5.8.
...
Adds support for ussl module (which is experimental and not fully
implemented yet itself).
2015-09-13 09:49:09 +03:00
Paul Sokolovsky
e8ad47a6ca
tools: Upgrade to upip 0.5.7.
...
Just dependent micropython-lib modules update for upip, no new
functionality.
2015-08-30 11:04:38 +03:00
Damien George
b7d59060e2
tools: Make gen-changelog.sh print more lines from the tag annotation.
2015-08-11 13:50:40 +01:00
Damien George
e86b47175f
tools: Make pyboard.py Python2 compatible.
2015-08-08 13:03:08 +01:00
Damien George
7ccdf8be77
tools/pyboard.py: Fix read timeout calc to work with shorter sleep.
2015-07-29 00:21:22 +01:00