[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Minios-devel] [UNIKRAFT/LIBMICROPYTHON PATCH 2/7] Add Makefile.uk
Hi Vlad, On 08.10.19, 16:01, "Minios-devel on behalf of Vlad-Andrei BĂDOIU (78692)" <minios-devel-bounces@xxxxxxxxxxxxxxxxxxxx on behalf of vlad_andrei.badoiu@xxxxxxxxxxxxxxx> wrote: Hey Felipe, I have just seen this small typo while testing the config options. Please see my comment inline. Thanks, Vlad On 08.10.2019 13:55, Vlad-Andrei BĂDOIU (78692) wrote: > Thanks for the patch Felipe! > > Reviewed-by: Vlad-Andrei Badoiu <vlad_andrei.badoiu@xxxxxxxxxxxxxxx> > > On 08.10.2019 11:04, Felipe Huici wrote: >> We patch unix/main.c and optionally provide a main() to enter >> Micropython's main loop. We also add mpconfigport.mk, Micropython's >> Makefile. >> >> Signed-off-by: Felipe Huici <felipe.huici@xxxxxxxxx> >> --- >> Makefile.uk | 299 ++++++++++++++++++++++++++++++++++++++++++++++++ >> mpconfigport.mk | 45 ++++++++ >> 2 files changed, 344 insertions(+) >> create mode 100644 Makefile.uk >> create mode 100644 mpconfigport.mk >> >> diff --git a/Makefile.uk b/Makefile.uk >> new file mode 100644 >> index 0000000..74d2259 >> --- /dev/null >> +++ b/Makefile.uk >> @@ -0,0 +1,299 @@ >> +# libmicropython Makefile.uc >> +# >> +# Authors: Felipe Huici <felipe.huici@xxxxxxxxx> >> +# >> +# >> +# Copyright (c) 2017, NEC Europe Ltd., NEC Corporation. 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. >> +# >> +# THIS HEADER MAY NOT BE EXTRACTED OR MODIFIED IN ANY WAY. >> +# >> + >> +################################################################################ >> +# check reqs >> +################################################################################ >> +ifdef CONFIG_LWIP_IPV6 >> +$(error IPV6 not supported, please delesect and re-run) >> +endif >> + >> +################################################################################ >> +# Library registration >> +################################################################################ >> +$(eval $(call addlib_s,libmicropython,$(CONFIG_LIBMICROPYTHON))) >> + >> +################################################################################ >> +# Sources >> +################################################################################ >> +LIBMICROPYTHON_VERSION=1.9.2 >> +LIBMICROPYTHON_TAR=micropython-$(LIBMICROPYTHON_VERSION) >> +LIBMICROPYTHON_URL=http://micropython.org/resources/source/$(LIBMICROPYTHON_TAR).zip >> +LIBMICROPYTHON_PATCHDIR=$(LIBMICROPYTHON_BASE)/patches >> +$(eval $(call fetch,libmicropython,$(LIBMICROPYTHON_URL))) >> +$(eval $(call patch,libmicropython,$(LIBMICROPYTHON_PATCHDIR),$(LIBMICROPYTHON_TAR))) >> + >> +################################################################################ >> +# Helpers >> +################################################################################ >> +LIBMICROPYTHON_SRCS_BASE=$(LIBMICROPYTHON_ORIGIN)/$(LIBMICROPYTHON_TAR) >> +LIBMICROPYTHON_FROZEN_DIR = scripts >> +LIBMICROPYTHON_PY_QSTR_DEFS = $(LIBMICROPYTHON_SRCS_BASE)/py/qstrdefs.h >> +LIBMICROPYTHON_QSTR_DEFS = $(LIBMICROPYTHON_SRCS_BASE)/unix/qstrdefsport.h >> +LIBMICROPYTHON_HEADER_BUILD = $(LIBMICROPYTHON_SRCS_BASE)/genhdr >> +LIBMICROPYTHON_QSTR_DEFS_COLLECTED = $(LIBMICROPYTHON_HEADER_BUILD)/qstrdefs.collected.h >> +LIBMICROPYTHON_MPCONFIGPORT_MK = $(LIBMICROPYTHON_SRCS_BASE)/unix/mpconfigport.mk >> +LIBMICROPYTHON_QSTR_GEN_EXTRA_CFLAGS += -DNO_QSTR -DN_X64 -DN_X86 -DN_THUMB -DN_ARM -D MICROPY_PY_LWIP >> +PYTHON := python >> + >> +################################################################################ >> +# Micropython options >> +################################################################################ >> +-include $(LIBMICROPYTHON_BASE)/mpconfigport.mk >> + >> +################################################################################ >> +# Library includes >> +################################################################################ >> +LIBMICROPYTHON_CINCLUDES-y += -I$(LIBMICROPYTHON_BASE)/include \ >> + -I$(LIBMICROPYTHON_SRCS_BASE) \ >> + -I$(LIBMICROPYTHON_SRCS_BASE)/py \ >> + -I$(LIBMICROPYTHON_SRCS_BASE)/unix \ >> + -I$(LIBMICROPYTHON_SRCS_BASE)/lib/mp-readline \ >> + -I$(LIBMICROPYTHON_SRCS_BASE)/lib/netutils \ >> + -I$(LIBMICROPYTHON_SRCS_BASE)/lib/utils >> + >> +################################################################################ >> +# Global flags >> +################################################################################ >> +LIBMICROPYTHON_CFLAGS-y += -DUNIX -DN_X64 -D MICROPY_PY_LWIP \ >> + -Wno-unused-parameter \ >> + -Wno-override-init \ >> + -Wno-sign-compare \ >> + -Wno-unused-value \ >> + -Wno-format \ >> + -Wno-incompatible-pointer-types \ >> + -Wno-implicit-fallthrough \ >> + -Wno-expansion-to-defined \ >> + -Wno-unused-label \ >> + -Wno-implicit-function-declaration \ >> + -Wno-unused-but-set-variable \ >> + -Wno-unused-function >> + >> +################################################################################ >> +# Unikraft <-> Micropython glue code >> +################################################################################ >> +LIBMICROPYTHON_SRCS-(CONFIG_LIBMICROPYTHON_MAIN_FUNCTION) += $(LIBMICROPYTHON_BASE)/main.c There is a missing $ sign before (CONFIG_LIBMICROPYTHON_MAIN_FUNCTION). In this case the main.c file is never compiled. Thanks for spotting that, I'll fix it. -- Felipe >> + >> +################################################################################ >> +# Micropyton sources - py >> +################################################################################ >> +LIBMICROPYTHON_MAIN_FLAGS-y += -Dmain=micropython_main >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/unix/main.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/mpstate.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/nlrx86.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/nlrx64.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/nlrthumb.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/nlrxtensa.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/nlrsetjmp.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/malloc.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/gc.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/qstr.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/vstr.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/mpprint.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/unicode.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/mpz.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/lexer.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/parse.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/scope.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/compile.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/emitcommon.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/emitnative.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/emitbc.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/asmbase.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/asmx64.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/asmx86.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/asmthumb.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/emitinlinethumb.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/asmarm.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/formatfloat.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/parsenumbase.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/parsenum.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/emitglue.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/runtime.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/runtime_utils.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/nativeglue.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/stackctrl.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/argcheck.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/warning.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/map.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/obj.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objarray.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objattrtuple.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objbool.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objboundmeth.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objcell.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objclosure.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objcomplex.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objdict.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objenumerate.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objexcept.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objfilter.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objfloat.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objfun.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objgenerator.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objgetitemiter.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objint.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objint_longlong.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objint_mpz.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objlist.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objmap.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objmodule.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objobject.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objpolyiter.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objproperty.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objnone.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objnamedtuple.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objrange.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objreversed.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objset.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objsingleton.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objslice.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objstr.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objstrunicode.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objstringio.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objtuple.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objtype.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/objzip.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/opmethods.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/sequence.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/stream.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/binary.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/builtinimport.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/builtinevex.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/modarray.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/modbuiltins.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/modcollections.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/modgc.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/modio.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/modmath.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/modcmath.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/modmicropython.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/modstruct.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/modsys.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/moduerrno.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/persistentcode.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/scheduler.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/vm.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/bc.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/showbc.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/repl.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/reader.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/smallint.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/py/frozenmod.c >> + >> +################################################################################ >> +# Micropyton sources - extmod >> +################################################################################ >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/moductypes.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/modure.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/moduzlib.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/moduheapq.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/moduhashlib.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/modubinascii.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/machine_mem.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/machine_i2c.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/machine_pinbase.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/machine_pulse.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/machine_signal.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/modurandom.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/modutimeq.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/modwebsocket.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/modwebrepl.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/modframebuf.c >> +#LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/fsusermount.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/modujson.c >> +#LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/moduos_dupterm.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/virtpin.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/extmod/utime_mphal.c >> +LIBMICROPYTHON_SRCS-$(CONFIG_LIBLWIP) += $(LIBMICROPYTHON_SRCS_BASE)/extmod/modlwip.c >> + >> +################################################################################ >> +# Micropyton sources - lib >> +################################################################################ >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/lib/utils/pyexec.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/lib/timeutils/timeutils.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/lib/mp-readline/readline.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/lib/netutils/netutils.c >> + >> +################################################################################ >> +# Micropyton sources - unix >> +################################################################################ >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/unix/gccollect.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/unix/unix_mphal.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/unix/mpthreadport.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/unix/input.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/unix/file.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/unix/alloc.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/unix/coverage.c >> +#LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/unix/fatfs_port.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/unix/moduselect.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/unix/modmachine.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/unix/modtime.c >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/unix/modos.c >> +#LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_SRCS_BASE)/unix/modsocket.c >> + >> +################################################################################ >> +# Micropyton sources - frozen modules (auto-generated, see rule below) >> +################################################################################ >> +LIBMICROPYTHON_SRCS-y += $(LIBMICROPYTHON_BUILD)/frozen.c >> + >> +################################################################################ >> +# Lib-specific Targets >> +################################################################################ >> +$(LIBMICROPYTHON_HEADER_BUILD)/qstrdefs.generated.h: $(LIBMICROPYTHON_PY_QSTR_DEFS) $(LIBMICROPYTHON_QSTR_DEFS) $(LIBMICROPYTHON_QSTR_DEFS_COLLECTED) $(LIBMICROPYTHON_SRCS_BASE)/py/makeqstrdata.py $(LIBMICROPYTHON_SRCS_BASE)/unix/mpconfigport.h $(LIBMICROPYTHON_MPCONFIGPORT_MK) $(LIBMICROPYTHON_SRCS_BASE)/py/mpconfig.h | $(LIBMICROPYTHON_HEADER_BUILD) >> + $(call verbose_cmd,GEN,libmicropython':' qstrdefs.preprocessed.h,$(CAT) $(LIBMICROPYTHON_PY_QSTR_DEFS) $(LIBMICROPYTHON_QSTR_DEFS) $(LIBMICROPYTHON_QSTR_DEFS_COLLECTED) | $(SED) 's/^Q(.*)/"&"/' | $(CC) -E $(CFLAGS) $(CFLAGS-y) $(LIBMICROPYTHON_CFLAGS) $(LIBMICROPYTHON_CFLAGS-y) $(CINCLUDES) $(CINCLUDES-y) $(LIBMICROPYTHON_CINCLUDES) $(LIBMICROPYTHON_CINCLUDES-y) - | $(SED) 's/^"\(Q(.*)\)"/\1/' > $(LIBMICROPYTHON_HEADER_BUILD)/qstrdefs.preprocessed.h) >> + $(call verbose_cmd,PY,libmicropython':' qstrdefs.generated.h,$(PYTHON) $(LIBMICROPYTHON_SRCS_BASE)/py/makeqstrdata.py $(LIBMICROPYTHON_HEADER_BUILD)/qstrdefs.preprocessed.h > $@) >> + >> +$(LIBMICROPYTHON_HEADER_BUILD): $(LIBMICROPYTHON_BUILD)/.patched >> + $(call verbose_cmd,MKDIR,libmicropython':' $(notdir $(LIBMICROPYTHON_HEADER_BUILD)),$(MKDIR) $(LIBMICROPYTHON_HEADER_BUILD)) >> + >> +$(LIBMICROPYTHON_HEADER_BUILD)/mpversion.h: | $(LIBMICROPYTHON_HEADER_BUILD) >> + $(call verbose_cmd,PY,libmicropython':' $(notdir $@),$(PYTHON) $(LIBMICROPYTHON_SRCS_BASE)/py/makeversionhdr.py $@) >> + >> +$(LIBMICROPYTHON_HEADER_BUILD)/qstr.i.last: | $(LIBMICROPYTHON_HEADER_BUILD)/mpversion.h >> + $(call verbose_cmd,GEN,libmicropython':' $(notdir $@),$(CC) -E $(LIBMICROPYTHON_QSTR_GEN_EXTRA_CFLAGS) $(CINCLUDES) $(CINCLUDES-y) $(LIBMICROPYTHON_CINCLUDES) $(LIBMICROPYTHON_CINCLUDES-y) $(LIBMICROPYTHON_SRCS-y) >$(LIBMICROPYTHON_HEADER_BUILD)/qstr.i.last) >> + >> +$(LIBMICROPYTHON_HEADER_BUILD)/qstr.split: $(LIBMICROPYTHON_HEADER_BUILD)/qstr.i.last >> + $(call verbose_cmd,PY,libmicropython':' $(notdir $@),$(PYTHON) $(LIBMICROPYTHON_SRCS_BASE)/py//makeqstrdefs.py split $(LIBMICROPYTHON_HEADER_BUILD)/qstr.i.last $(LIBMICROPYTHON_HEADER_BUILD)/qstr $(LIBMICROPYTHON_QSTR_DEFS_COLLECTED) && touch $@) >> + >> +$(LIBMICROPYTHON_QSTR_DEFS_COLLECTED): $(LIBMICROPYTHON_HEADER_BUILD)/qstr.split >> + $(call verbose_cmd,PY,libmicropython':' $(notdir $@),$(PYTHON) $(LIBMICROPYTHON_SRCS_BASE)/py/makeqstrdefs.py cat $(LIBMICROPYTHON_HEADER_BUILD)/qstr.i.last $(LIBMICROPYTHON_HEADER_BUILD)/qstr $(LIBMICROPYTHON_QSTR_DEFS_COLLECTED)) >> + >> +$(LIBMICROPYTHON_BUILD)/frozen.c: $(wildcard $(LIBMICROPYTHON_FROZEN_DIR)/*) $(LIBMICROPYTHON_HEADER_BUILD) >> + $(call verbose_cmd,PY,libmicropython':' $(notdir $@),$(PYTHON) $(LIBMICROPYTHON_SRCS_BASE)/tools/make-frozen.py $(LIBMICROPYTHON_FROZEN_DIR) > $@) >> + >> +$(LIBMICROPYTHON_BUILD)/.prepared: $(LIBMICROPYTHON_BUILD)/frozen.c $(LIBMICROPYTHON_HEADER_BUILD)/qstrdefs.generated.h >> + >> +UK_PREPARE-$(CONFIG_LIBMICROPYTHON) += $(LIBMICROPYTHON_BUILD)/.prepared >> diff --git a/mpconfigport.mk b/mpconfigport.mk >> new file mode 100644 >> index 0000000..6e5d3fa >> --- /dev/null >> +++ b/mpconfigport.mk >> @@ -0,0 +1,45 @@ >> +# Enable/disable modules and 3rd-party libs to be included in interpreter >> + >> +# Build 32-bit binaries on a 64-bit host >> +MICROPY_FORCE_32BIT = 0 >> + >> +# This variable can take the following values: >> +# 0 - no readline, just simple stdin input >> +# 1 - use MicroPython version of readline >> +MICROPY_USE_READLINE = 1 >> + >> +# btree module using Berkeley DB 1.xx >> +MICROPY_PY_BTREE = 0 >> + >> +# _thread module using pthreads >> +MICROPY_PY_THREAD = 1 >> + >> +# Subset of CPython termios module >> +MICROPY_PY_TERMIOS = 0 >> + >> +# Subset of CPython socket module >> +MICROPY_PY_SOCKET = 0 >> + >> +# Subset of CPython lwip module >> +MICROPY_PY_LWIP = 1 >> + >> +# ffi module requires libffi (libffi-dev Debian package) >> +MICROPY_PY_FFI = 0 >> + >> +# ussl module requires one of the TLS libraries below >> +MICROPY_PY_USSL = 0 >> +# axTLS has minimal size and fully integrated with MicroPython, but >> +# implements only a subset of modern TLS functionality, so may have >> +# problems with some servers. >> +MICROPY_SSL_AXTLS = 0 >> +# mbedTLS is more up to date and complete implementation, but also >> +# more bloated. Configuring and building of mbedTLS should be done >> +# outside of MicroPython, it can just link with mbedTLS library. >> +MICROPY_SSL_MBEDTLS = 0 >> + >> +# jni module requires JVM/JNI >> +MICROPY_PY_JNI = 0 >> + >> +# Avoid using system libraries, use copies bundled with MicroPython >> +# as submodules (currently affects only libffi). >> +MICROPY_STANDALONE = 0 > _______________________________________________ > Minios-devel mailing list > Minios-devel@xxxxxxxxxxxxxxxxxxxx > https://lists.xenproject.org/mailman/listinfo/minios-devel _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel _______________________________________________ Minios-devel mailing list Minios-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/minios-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |