You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Sami Vaarala 8b1999473b Remove some unused Python tooling 2 years ago
..
README.rst Dist/prepare tooling improvements 8 years ago
configure.py Remove some unused Python tooling 2 years ago
duk_meta_to_strarray.py Split dist util, reorg tools, Python PEP8 8 years ago
dukutil.py Genbuiltins.py varuint encoding tweaks 8 years ago
dump_bytecode.py Use py yaml.safe_load() instead of load() 4 years ago
extract_unique_options.py Makefile, dist, tools fixes for src/ rename 8 years ago
genconfig.py Use py yaml.safe_load() instead of load() 4 years ago
merge_debug_meta.py Use py yaml.safe_load() instead of load() 4 years ago
resolve_combined_lineno.py Makefile, dist, tools fixes for src/ rename 8 years ago
scan_strings.py Use 'ECMAScript' spelling in misc places 7 years ago
scan_used_stridx_bidx.py Validate DUK_USE_xxx in source against config meta 8 years ago

README.rst

=============
Duktape tools
=============

This directory contains various Duktape Python tools which are included in
the end user distributable.

The main tool is ``configure.py`` which simultaneously creates a
``duk_config.h`` configuration file and prepares source files for
compilation. These two operations are combined because:

1. Configuration options may affect source file preparation.

2. Some features involve metaprogramming. For example, when using ROM
built-ins YAML metadata is used for automatic code generation for the
ROM object initializers.

There are also other miscellaneous tools, e.g. utilities to scan potential
fixed strings from source files, dump bytecode, and resolving file/line
from combined source.

Because this tooling is part of the end user distributable, the tooling must
be as portable as possible. For example:

* Avoid Unix path separators.

* Avoid depending on Python executable name, use ``sys.executable`` instead
to launch Python commands.

The tooling has been written for Python 2.x. There's no support for
Python 3.x at present.