diff options
author | joerg <joerg@pkgsrc.org> | 2016-03-22 19:01:17 +0000 |
---|---|---|
committer | joerg <joerg@pkgsrc.org> | 2016-03-22 19:01:17 +0000 |
commit | aaa6941a94aff7fc7e36be74c14f94f88849daf8 (patch) | |
tree | 59f88193b4460ed06d68a4486fb1bd0dd14640cb /lang/micropython | |
parent | 63832206f27bcc2edfce6ce276e5459598e688d4 (diff) | |
download | pkgsrc-aaa6941a94aff7fc7e36be74c14f94f88849daf8.tar.gz |
Requires Python for build. Fix UB on left shift of negative values.
Diffstat (limited to 'lang/micropython')
-rw-r--r-- | lang/micropython/Makefile | 12 | ||||
-rw-r--r-- | lang/micropython/distinfo | 7 | ||||
-rw-r--r-- | lang/micropython/patches/patch-py_obj.h | 15 | ||||
-rw-r--r-- | lang/micropython/patches/patch-unix_Makefile (renamed from lang/micropython/patches/patch-Makefile) | 12 | ||||
-rw-r--r-- | lang/micropython/patches/patch-unix_mpconfigport.h (renamed from lang/micropython/patches/patch-mpconfigport.h) | 8 |
5 files changed, 38 insertions, 16 deletions
diff --git a/lang/micropython/Makefile b/lang/micropython/Makefile index 8cfe3e44cfc..7e0807865d5 100644 --- a/lang/micropython/Makefile +++ b/lang/micropython/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.1 2016/01/18 07:54:51 agc Exp $ +# $NetBSD: Makefile,v 1.2 2016/03/22 19:01:17 joerg Exp $ DISTNAME= micropython-1.5.2 CATEGORIES= lang @@ -10,13 +10,19 @@ HOMEPAGE= https://micropython.org/ COMMENT= Embedded version of python LICENSE= mit -WRKSRC= ${WRKDIR}/${DISTNAME}/unix DIST_SUBDIR= ${PKGNAME_NOREV} +BUILD_DIRS= unix USE_TOOLS+= gmake pkg-config AUTO_MKDIRS= yes -.include "../../devel/libffi/buildlink3.mk" +MAKE_FLAGS+= PYTHON=${PYTHONBIN} + +REPLACE_PYTHON+= tools/make-frozen.py +PYTHON_FOR_BUILD_ONLY= yes + +.include "../../devel/libffi/buildlink3.mk" +.include "../../lang/python/application.mk" .include "../../mk/bsd.pkg.mk" diff --git a/lang/micropython/distinfo b/lang/micropython/distinfo index 58a09f64d63..988255f5e93 100644 --- a/lang/micropython/distinfo +++ b/lang/micropython/distinfo @@ -1,8 +1,9 @@ -$NetBSD: distinfo,v 1.1 2016/01/18 07:54:51 agc Exp $ +$NetBSD: distinfo,v 1.2 2016/03/22 19:01:17 joerg Exp $ SHA1 (micropython-1.5.2/micropython-1.5.2.tar.gz) = 493cf36aa722b50b6034efb8de6433dcea546b0f RMD160 (micropython-1.5.2/micropython-1.5.2.tar.gz) = 0f5c316ecd716734fe8e1dbdf9a360ef6f126b85 SHA512 (micropython-1.5.2/micropython-1.5.2.tar.gz) = 309dcb20a3369ac5bec92a6a5cd8af37d671fc2a8e3b6a36c4c49d1f4730eaaa46dffb2351eb5783de12f045069554c22ee70c0100cf98ab09138ef42594a65a Size (micropython-1.5.2/micropython-1.5.2.tar.gz) = 6673101 bytes -SHA1 (patch-Makefile) = fd7a3c143cd6c4137782b0ed2e1b361e13910364 -SHA1 (patch-mpconfigport.h) = 7cd3b0604f6f7941e5a44d276fd8393ba71b5447 +SHA1 (patch-py_obj.h) = b945ad9b6c2e8dd4631c88b7c3c3d1008fe40fae +SHA1 (patch-unix_Makefile) = 302b1963bbf36dd7513380bfa34fa9cbf358aeaf +SHA1 (patch-unix_mpconfigport.h) = beb3b1b94cbb0cb81b24ef956f6f24cd86ca0194 diff --git a/lang/micropython/patches/patch-py_obj.h b/lang/micropython/patches/patch-py_obj.h new file mode 100644 index 00000000000..6acf8e9b57c --- /dev/null +++ b/lang/micropython/patches/patch-py_obj.h @@ -0,0 +1,15 @@ +$NetBSD: patch-py_obj.h,v 1.1 2016/03/22 19:01:17 joerg Exp $ + +Avoid Undefined Behavior. + +--- py/obj.h.orig 2016-03-02 16:07:50.524241926 +0000 ++++ py/obj.h +@@ -81,7 +81,7 @@ typedef struct _mp_obj_base_t mp_obj_bas + static inline bool MP_OBJ_IS_SMALL_INT(mp_const_obj_t o) + { return ((((mp_int_t)(o)) & 1) != 0); } + #define MP_OBJ_SMALL_INT_VALUE(o) (((mp_int_t)(o)) >> 1) +-#define MP_OBJ_NEW_SMALL_INT(small_int) ((mp_obj_t)((((mp_int_t)(small_int)) << 1) | 1)) ++#define MP_OBJ_NEW_SMALL_INT(small_int) ((mp_obj_t)((((mp_int_t)(small_int)) * 2) | 1)) + + static inline bool MP_OBJ_IS_QSTR(mp_const_obj_t o) + { return ((((mp_int_t)(o)) & 3) == 2); } diff --git a/lang/micropython/patches/patch-Makefile b/lang/micropython/patches/patch-unix_Makefile index 265b5020531..1ea96a9a9bd 100644 --- a/lang/micropython/patches/patch-Makefile +++ b/lang/micropython/patches/patch-unix_Makefile @@ -1,10 +1,10 @@ -$NetBSD: patch-Makefile,v 1.1 2016/01/18 07:54:51 agc Exp $ +$NetBSD: patch-unix_Makefile,v 1.1 2016/03/22 19:01:17 joerg Exp $ Invoke gmake properly ---- Makefile 2016/01/09 21:43:06 1.1 -+++ Makefile 2016/01/09 21:51:39 -@@ -149,14 +149,13 @@ +--- unix/Makefile.orig 2015-12-31 14:43:19.000000000 +0000 ++++ unix/Makefile +@@ -149,14 +149,13 @@ test: $(PROG) ../tests/run-tests # install micropython in /usr/local/bin TARGET = micropython @@ -22,7 +22,7 @@ Invoke gmake properly # uninstall micropython uninstall: -@@ -196,12 +195,12 @@ +@@ -196,12 +195,12 @@ $(BUILD)/_frozen_upip.c: $(BUILD)/frozen ../tools/make-frozen.py $(dir $^) > $@ # Select latest upip version available @@ -37,7 +37,7 @@ Invoke gmake properly $(Q)rm -rf $(dir $@) $(Q)mkdir -p $(dir $@) $(Q)cp $(BUILD)/micropython-upip-*/upip*.py $(dir $@) -@@ -224,10 +223,10 @@ +@@ -224,10 +223,10 @@ libffi: cd ../lib/libffi; ./autogen.sh mkdir -p ../lib/libffi/build_dir; cd ../lib/libffi/build_dir; \ ../configure $(CROSS_COMPILE_HOST) --prefix=$$PWD/out CC="$(CC)" CXX="$(CXX)" LD="$(LD)"; \ diff --git a/lang/micropython/patches/patch-mpconfigport.h b/lang/micropython/patches/patch-unix_mpconfigport.h index 26a676de311..bc689acf6dc 100644 --- a/lang/micropython/patches/patch-mpconfigport.h +++ b/lang/micropython/patches/patch-unix_mpconfigport.h @@ -1,10 +1,10 @@ -$NetBSD: patch-mpconfigport.h,v 1.1 2016/01/18 07:54:51 agc Exp $ +$NetBSD: patch-unix_mpconfigport.h,v 1.1 2016/03/22 19:01:17 joerg Exp $ Generalise for all BSDs ---- mpconfigport.h 2016/01/09 20:30:55 1.1 -+++ mpconfigport.h 2016/01/09 20:32:14 -@@ -251,7 +251,8 @@ +--- unix/mpconfigport.h.orig 2015-12-31 14:43:19.000000000 +0000 ++++ unix/mpconfigport.h +@@ -261,7 +261,8 @@ void mp_hal_dupterm_tx_strn(const char * // We need to provide a declaration/definition of alloca() // unless support for it is disabled. #if !defined(MICROPY_NO_ALLOCA) || MICROPY_NO_ALLOCA == 0 |