From: Felipe Huici Date: Tue, 8 Oct 2019 07:34:45 +0000 (+0200) Subject: Introduce library skeleton X-Git-Tag: RELEASE-0.4~6 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=a1aa20299135210e49e6eb57c90bdbd6d9b35cc9;p=unikraft%2Flibs%2Fmicropython.git Introduce library skeleton We use the BSD-3-Clause license for this library glue code. Signed-off-by: Felipe Huici Reviewed-by: Vlad-Andrei Badoiu --- diff --git a/CODING_STYLE.md b/CODING_STYLE.md new file mode 100644 index 0000000..5730041 --- /dev/null +++ b/CODING_STYLE.md @@ -0,0 +1,4 @@ +Coding Style +============ + +Please refer to the `CODING_STYLE.md` file in the main Unikraft repository. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..14f6ac6 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,4 @@ +Contributing to Unikraft +======================== + +Please refer to the `CONTRIBUTING.md` file in the main Unikraft repository. diff --git a/COPYING.md b/COPYING.md new file mode 100644 index 0000000..192da51 --- /dev/null +++ b/COPYING.md @@ -0,0 +1,38 @@ +License +======= + +Unikraft Micropython wrappers +---------------------------------- + +This repository contains wrapper code to build Micropython with Unikraft. +Each C code file in this repository should declare who is the +copyright owner and under which terms and conditions the code is +licensed. If such a licence note is missing, the following copyright +notice will apply: + + Copyright (c) Year, Institution. All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions + are met: + + 1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + 2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + 3. Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. diff --git a/Config.uk b/Config.uk new file mode 100644 index 0000000..5bdbb82 --- /dev/null +++ b/Config.uk @@ -0,0 +1,14 @@ +menuconfig LIBMICROPYTHON + bool "Micropython - Python for microcontrollers" + default y + select LIBLWIP + select LWIP_NOTHREADS + select LWIP_IGMP + select LIBUKMMAP + select LIBNEWLIBC + +if LIBMICROPYTHON +config LIBMICROPYTHON_MAIN_FUNCTION + bool "Provide main function" + default y +endif diff --git a/MAINTAINERS.md b/MAINTAINERS.md new file mode 100644 index 0000000..2d242a0 --- /dev/null +++ b/MAINTAINERS.md @@ -0,0 +1,12 @@ +Maintainers List +================ + +For notes on how to read this information, please refer to `MAINTAINERS.md` in +the main Unikraft repository. + + LIBMICROPYTHON-UNIKRAFT + M: Felipe Huici + M: Simon Kuenzer + M: Vlad-Andrei BĂDOIU + L: minios-devel@lists.xen.org + F: * diff --git a/README.md b/README.md new file mode 100644 index 0000000..abb8d97 --- /dev/null +++ b/README.md @@ -0,0 +1,15 @@ +Micropython for Unikraft +============================= + +This is a port of Micropython for Unikraft as external library. By +default, the port will go into interactive mode (though note that for +now there is a slight problem with it in that characters are echoed +twice). Alternatively, you can run a script from a file if passed as an +initrd parameter (e.g., in QEMU add -initrd "filename.py"). + +Note that for the build to work, in the menu you need to select: + +lwip - Lightweight TCP/IP stack ---> Operation mode (Mainloop (non-threaded)) + +Please refer to the `README.md` as well as the documentation in the `doc/` +subdirectory of the main unikraft repository.