diff --git a/README.md b/README.md index 14568885..18d8e430 100644 --- a/README.md +++ b/README.md @@ -27,22 +27,8 @@ More information about the Mycroft A.I. software stack at https://mycroft.ai At this moment development is in very early stages and focussed on the Raspberry Pi 3B. As soon as an initial first workable version is created, other hardware might be added. -### Getting the code. -First, get the code on your system! The simplest method is via git. - -- cd ~/ -- git clone --recurse-submodules https://github.com/j1nx/MycroftOS.git -- cd MycroftOS - -If this is the very first time you are going to build an image, you need to execute the following command once; -- ./scripts/br-patches.sh - -### Building the code. -Then we can build the image(s) by running the following command; -- ./scripts/build.sh -(At this moment only one image get's build. Namely the one for RPi3B. Later on in time this section will get expanded with other hardware such as, the other Raspberry Pi's, perhaps Mark-1 and/or Mark-2 and further down the road for the new Rockchip RK3399Pro SoC with RK1808 NPU - -... More building instructions will follow soon ... +## Documentation. +More information and instructions can be found within the "documentation" folder. ## Credits Mycroft AI (@MycroftAI)
diff --git a/buildroot-external/Config.in b/buildroot-external/Config.in index 60a49c60..5623193e 100644 --- a/buildroot-external/Config.in +++ b/buildroot-external/Config.in @@ -7,6 +7,7 @@ menu "Additional external python modules" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-bs4/Config.in" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-cachetools/Config.in" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-casttube/Config.in" + source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-colorzero/Config.in" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-coverage/Config.in" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-coveralls/Config.in" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-deprecated/Config.in" @@ -18,6 +19,7 @@ menu "Additional external python modules" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-google-api-python-client/Config.in" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-google-auth-httplib2/Config.in" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-google-auth/Config.in" + source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-gpiozero/Config.in" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-gtts/Config.in" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-gtts_token/Config.in" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-humanhash3/Config.in" diff --git a/buildroot-external/board/raspberrypi/config.txt b/buildroot-external/board/raspberrypi/config.txt index 451af7e9..73a6701f 100644 --- a/buildroot-external/board/raspberrypi/config.txt +++ b/buildroot-external/board/raspberrypi/config.txt @@ -34,3 +34,4 @@ disable_splash=1 dtparam=i2c_arm=on dtoverlay=i2s-mmap dtparam=i2s=on +dtparam=spi=on diff --git a/buildroot-external/configs/mycroftos_rpi3_defconfig b/buildroot-external/configs/mycroftos_rpi3_defconfig index effaf12d..116465e9 100644 --- a/buildroot-external/configs/mycroftos_rpi3_defconfig +++ b/buildroot-external/configs/mycroftos_rpi3_defconfig @@ -4,23 +4,20 @@ BR2_ARM_FPU_NEON_VFPV4=y BR2_DL_DIR="../downloads" BR2_CCACHE=y BR2_CCACHE_DIR="../ccache" -# BR2_STRIP_strip is not set -BR2_OPTIMIZE_FAST=y -BR2_SHARED_STATIC_LIBS=y BR2_GLOBAL_PATCH_DIR="../buildroot-patches" +BR2_TOOLCHAIN_BUILDROOT_GLIBC=y BR2_PACKAGE_HOST_LINUX_HEADERS_CUSTOM_4_14=y -BR2_TOOLCHAIN_BUILDROOT_LOCALE=y BR2_TOOLCHAIN_BUILDROOT_CXX=y +BR2_TOOLCHAIN_GLIBC_GCONV_LIBS_COPY=y BR2_TARGET_GENERIC_HOSTNAME="MycroftOS" BR2_TARGET_GENERIC_ISSUE="Welcome to MycroftOS" -BR2_ROOTFS_DEVICE_CREATION_DYNAMIC_MDEV=y +BR2_INIT_SYSTEMD=y BR2_TARGET_GENERIC_ROOT_PASSWD="mycroft" BR2_SYSTEM_BIN_SH_BASH=y # BR2_TARGET_GENERIC_GETTY is not set BR2_SYSTEM_DHCP="eth0" -BR2_ENABLE_LOCALE_WHITELIST="C en_US en_US.UTF8" -BR2_GENERATE_LOCALE="en_US en_US.UTF-8" -BR2_TARGET_TZ_INFO=y +# BR2_ENABLE_LOCALE_PURGE is not set +BR2_GENERATE_LOCALE="en_US.UTF-8" BR2_ROOTFS_OVERLAY="../buildroot-external/rootfs-overlay" BR2_ROOTFS_POST_BUILD_SCRIPT="../buildroot-external/board/raspberrypi3/post-build.sh" BR2_ROOTFS_POST_IMAGE_SCRIPT="../buildroot-external/board/raspberrypi3/post-image.sh" @@ -33,7 +30,6 @@ BR2_LINUX_KERNEL_DEFCONFIG="bcm2709" BR2_LINUX_KERNEL_DTS_SUPPORT=y BR2_LINUX_KERNEL_INTREE_DTS_NAME="bcm2710-rpi-3-b bcm2710-rpi-3-b-plus bcm2710-rpi-cm3" BR2_PACKAGE_BUSYBOX_CONFIG="../buildroot-external/busybox.config" -BR2_PACKAGE_BUSYBOX_SHOW_OTHERS=y BR2_PACKAGE_BUSYBOX_INDIVIDUAL_BINARIES=y BR2_PACKAGE_ALSA_UTILS=y BR2_PACKAGE_ALSA_UTILS_ALSACONF=y @@ -60,6 +56,7 @@ BR2_PACKAGE_MIMIC_AUDIO_BACKEND_ALSA=y BR2_PACKAGE_MPG123=y BR2_PACKAGE_MPV=y BR2_PACKAGE_PULSEAUDIO=y +BR2_PACKAGE_PULSEAUDIO_DAEMON=y BR2_PACKAGE_VLC=y BR2_PACKAGE_GZIP=y BR2_PACKAGE_LZ4=y @@ -89,8 +86,9 @@ BR2_PACKAGE_RPI_WIFI_FIRMWARE=y BR2_PACKAGE_DBUS_PYTHON=y BR2_PACKAGE_KBD=y BR2_PACKAGE_PARTED=y +BR2_PACKAGE_SPI_TOOLS=y BR2_PACKAGE_PYTHON3=y -BR2_PACKAGE_PYTHON3_PY_ONLY=y +BR2_PACKAGE_PYTHON3_PY_PYC=y BR2_PACKAGE_PYTHON3_BZIP2=y BR2_PACKAGE_PYTHON3_CODECSCJK=y BR2_PACKAGE_PYTHON3_CURSES=y @@ -113,7 +111,9 @@ BR2_PACKAGE_PYTHON_PSUTIL=y BR2_PACKAGE_PYTHON_PYCLI=y BR2_PACKAGE_PYTHON_PYCRYPTO=y BR2_PACKAGE_PYTHON_PYTZ=y +BR2_PACKAGE_PYTHON_PYUSB=y BR2_PACKAGE_PYTHON_SERIAL=y +BR2_PACKAGE_PYTHON_SPIDEV=y BR2_PACKAGE_PYTHON_TEXTTABLE=y BR2_PACKAGE_PYTHON_TORNADO=y BR2_PACKAGE_PYTHON_WEBSOCKET_CLIENT=y @@ -139,6 +139,7 @@ BR2_PACKAGE_LIBMPEG2_BINS=y BR2_PACKAGE_LIBTHEORA=y BR2_PACKAGE_LIBCURL=y BR2_PACKAGE_CURL=y +BR2_PACKAGE_LIBTIRPC=y BR2_PACKAGE_LIBFRIBIDI=y BR2_PACKAGE_LIBUNISTRING=y BR2_PACKAGE_NCURSES_WCHAR=y @@ -166,11 +167,9 @@ BR2_PACKAGE_WHICH=y BR2_PACKAGE_HTOP=y BR2_PACKAGE_START_STOP_DAEMON=y BR2_PACKAGE_TAR=y -BR2_PACKAGE_UTIL_LINUX_FSCK=y BR2_PACKAGE_UTIL_LINUX_HWCLOCK=y BR2_PACKAGE_UTIL_LINUX_KILL=y BR2_PACKAGE_UTIL_LINUX_MORE=y -BR2_PACKAGE_UTIL_LINUX_MOUNT=y BR2_PACKAGE_NANO=y BR2_PACKAGE_VIM=y # BR2_PACKAGE_VIM_RUNTIME is not set @@ -181,14 +180,20 @@ BR2_TARGET_ROOTFS_EXT2_SIZE="1024M" BR2_PACKAGE_HOST_DOSFSTOOLS=y BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_MTOOLS=y +BR2_PACKAGE_HOST_PYTHON_CYTHON=y +BR2_PACKAGE_HOST_PYTHON_LXML=y +BR2_PACKAGE_HOST_PYTHON_SIX=y +BR2_PACKAGE_HOST_PYTHON_XLRD=y BR2_PACKAGE_FANN=y BR2_PACKAGE_RESPEAKER=y BR2_PACKAGE_PYTHON_ADAPT_PARSER=y +BR2_PACKAGE_PYTHON_COLORZERO=y BR2_PACKAGE_PYTHON_COVERALLS=y BR2_PACKAGE_PYTHON_DEPRECATED=y BR2_PACKAGE_PYTHON_FASTENERS=y BR2_PACKAGE_PYTHON_FEEDPARSER=y BR2_PACKAGE_PYTHON_GOOGLE_API_PYTHON_CLIENT=y +BR2_PACKAGE_PYTHON_GPIOZERO=y BR2_PACKAGE_PYTHON_GTTS=y BR2_PACKAGE_PYTHON_HUMANHASH3=y BR2_PACKAGE_PYTHON_INFLECTION=y diff --git a/buildroot-external/package/python-colorzero/Config.in b/buildroot-external/package/python-colorzero/Config.in new file mode 100644 index 00000000..631929f8 --- /dev/null +++ b/buildroot-external/package/python-colorzero/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_COLORZERO + bool "python-colorzero" + help + Yet another Python color library. + + http://colorzero.readthedocs.io/ diff --git a/buildroot-external/package/python-colorzero/python-colorzero.hash b/buildroot-external/package/python-colorzero/python-colorzero.hash new file mode 100644 index 00000000..c8749468 --- /dev/null +++ b/buildroot-external/package/python-colorzero/python-colorzero.hash @@ -0,0 +1,5 @@ +# md5, sha256 from https://pypi.org/pypi/colorzero/json +md5 7581c4b7fc5f52bf41422e4bbb29731a colorzero-1.1.tar.gz +sha256 acba47119b5d8555680d3cda9afe6ccc5481385ccc3c00084dd973f7aa184599 colorzero-1.1.tar.gz +# Locally computed sha256 checksums +sha256 47778d78e05bb6c39c022814e3712a0327c6418c7251757e72167ab8ff12bb4d LICENSE.txt diff --git a/buildroot-external/package/python-colorzero/python-colorzero.mk b/buildroot-external/package/python-colorzero/python-colorzero.mk new file mode 100644 index 00000000..7ee4eab2 --- /dev/null +++ b/buildroot-external/package/python-colorzero/python-colorzero.mk @@ -0,0 +1,14 @@ +################################################################################ +# +# python-colorzero +# +################################################################################ + +PYTHON_COLORZERO_VERSION = 1.1 +PYTHON_COLORZERO_SOURCE = colorzero-$(PYTHON_COLORZERO_VERSION).tar.gz +PYTHON_COLORZERO_SITE = https://files.pythonhosted.org/packages/08/0e/826b882db4da2970f53331969d66efc2da2071ffd9a8824601d0feff513d +PYTHON_COLORZERO_SETUP_TYPE = setuptools +PYTHON_COLORZERO_LICENSE = BSD-3-Clause +PYTHON_COLORZERO_LICENSE_FILES = LICENSE.txt + +$(eval $(python-package)) diff --git a/buildroot-external/package/python-gpiozero/Config.in b/buildroot-external/package/python-gpiozero/Config.in new file mode 100644 index 00000000..eae21642 --- /dev/null +++ b/buildroot-external/package/python-gpiozero/Config.in @@ -0,0 +1,6 @@ +config BR2_PACKAGE_PYTHON_GPIOZERO + bool "python-gpiozero" + help + A simple interface to GPIO devices with Raspberry Pi.. + + https://github.com/RPi-Distro/python-gpiozero diff --git a/buildroot-external/package/python-gpiozero/python-gpiozero.hash b/buildroot-external/package/python-gpiozero/python-gpiozero.hash new file mode 100644 index 00000000..32efb319 --- /dev/null +++ b/buildroot-external/package/python-gpiozero/python-gpiozero.hash @@ -0,0 +1,3 @@ +# md5, sha256 from https://pypi.org/pypi/gpiozero/json +md5 1b138b727e71e976675773e2131a8297 gpiozero-1.4.1.tar.gz +sha256 b4b074e56dea12c21b05e6feef792719a392a245f5e685bc56be3dc2546f8609 gpiozero-1.4.1.tar.gz diff --git a/buildroot-external/package/python-gpiozero/python-gpiozero.mk b/buildroot-external/package/python-gpiozero/python-gpiozero.mk new file mode 100644 index 00000000..7ee696c8 --- /dev/null +++ b/buildroot-external/package/python-gpiozero/python-gpiozero.mk @@ -0,0 +1,12 @@ +################################################################################ +# +# python-gpiozero +# +################################################################################ + +PYTHON_GPIOZERO_VERSION = 1.4.1 +PYTHON_GPIOZERO_SOURCE = gpiozero-$(PYTHON_GPIOZERO_VERSION).tar.gz +PYTHON_GPIOZERO_SITE = https://files.pythonhosted.org/packages/3b/50/377575ff8fbdb672c27869ce536813cafdd94f5e14b5bf377edabb8a8097 +PYTHON_GPIOZERO_SETUP_TYPE = setuptools + +$(eval $(python-package)) diff --git a/buildroot-external/package/python-mycroft/0001-Enforce-UTF8-encoding.patch b/buildroot-external/package/python-mycroft/0001-Enforce-UTF8-encoding.patch deleted file mode 100644 index 6a2ae49f..00000000 --- a/buildroot-external/package/python-mycroft/0001-Enforce-UTF8-encoding.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 28a9ff65a9b71ad70b906d688b7b2f593ea108cc Mon Sep 17 00:00:00 2001 -From: Peter Steenbergen -Date: Fri, 5 Oct 2018 09:42:55 +0200 -Subject: [PATCH 1/1] Enforce UTF8 encoding - ---- - mycroft/dialog/__init__.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/mycroft/dialog/__init__.py b/mycroft/dialog/__init__.py -index 59b4a44a0d..59c521b929 100644 ---- a/mycroft/dialog/__init__.py -+++ b/mycroft/dialog/__init__.py -@@ -45,7 +45,7 @@ class MustacheDialogRenderer(object): - template_name (str): a unique identifier for a group of templates - filename (str): a fully qualified filename of a mustache template. - """ -- with open(filename, 'r') as f: -+ with open(filename, 'r', encoding='utf-8') as f: - for line in f: - template_text = line.strip() - if template_name not in self.templates: --- -2.11.0 - diff --git a/buildroot-external/package/python-mycroft/0002-Bump-python-tornado-requirement-to-5.1.1.patch b/buildroot-external/package/python-mycroft/0002-Bump-python-tornado-requirement-to-5.1.1.patch new file mode 100644 index 00000000..96d70b08 --- /dev/null +++ b/buildroot-external/package/python-mycroft/0002-Bump-python-tornado-requirement-to-5.1.1.patch @@ -0,0 +1,26 @@ +From 9fbd29b3c0442191706468fdd14270749e358211 Mon Sep 17 00:00:00 2001 +From: Peter Steenbergen +Date: Fri, 25 Jan 2019 13:04:53 +0100 +Subject: [PATCH 1/1] Bump python-tornado requirement to 5.1.1 This because + 4.5.3 does not compile on the host with Python 3.7 + +--- + requirements.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/requirements.txt b/requirements.txt +index 94ffe987e8..5fe21dfa80 100644 +--- a/requirements.txt ++++ b/requirements.txt +@@ -5,7 +5,7 @@ gTTS-token==1.1.3 + PyAudio==0.2.11 + pyee==1.0.1 + SpeechRecognition==3.8.1 +-tornado==4.5.3 ++tornado==5.1.1 + websocket-client==0.32.0 + requests-futures==0.9.5 + pyalsaaudio==0.8.2 +-- +2.11.0 + diff --git a/buildroot-external/package/python-mycroft/0003-Bump-python-dateutil-requirement-to-2.7.5.patch b/buildroot-external/package/python-mycroft/0003-Bump-python-dateutil-requirement-to-2.7.5.patch new file mode 100644 index 00000000..80824a64 --- /dev/null +++ b/buildroot-external/package/python-mycroft/0003-Bump-python-dateutil-requirement-to-2.7.5.patch @@ -0,0 +1,25 @@ +From e5c877740c298fc07fcbadd29ca00c02cfb49ca5 Mon Sep 17 00:00:00 2001 +From: Peter Steenbergen +Date: Tue, 29 Jan 2019 10:25:42 +0100 +Subject: [PATCH 1/1] Bump python-dateutil requirement to 2.7.5 + +--- + requirements.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/requirements.txt b/requirements.txt +index 5fe21dfa80..7f481ccb93 100644 +--- a/requirements.txt ++++ b/requirements.txt +@@ -15,7 +15,7 @@ psutil==5.2.1 + pocketsphinx==0.1.0 + inflection==0.3.1 + pillow==4.1.1 +-python-dateutil==2.6.0 ++python-dateutil==2.7.5 + pychromecast==0.7.7 + python-vlc==1.1.2 + pulsectl==17.7.4 +-- +2.11.0 + diff --git a/buildroot-external/package/python-mycroft/python-mycroft.hash b/buildroot-external/package/python-mycroft/python-mycroft.hash index 153a936f..11f24613 100644 --- a/buildroot-external/package/python-mycroft/python-mycroft.hash +++ b/buildroot-external/package/python-mycroft/python-mycroft.hash @@ -5,3 +5,4 @@ sha256 42950284980d415d5cf75c91ad1e59080770cf82a12dc294f106b97fdf8c65c0 python- sha256 35d6c2d6155ea9b1887b296164a8ee7f1abf8e58b192a4829aaa59a7592909fa python-mycroft-v18.8.5.tar.gz sha256 14d936dea78379a58c80b2d8268be87e5e89b3147a6f48fa85c6db4c37dc8b56 python-mycroft-v18.8.10.tar.gz sha256 f3a4dcfbf4690df6a885cab40c7069d67b61e8cd5d81f85cf892dd38b3902aff python-mycroft-v18.8.11.tar.gz +sha256 b7ddc81be63310c28bc5da1e39745429941311362364dc44b67e3bc69139bb94 python-mycroft-v18.8.12.tar.gz diff --git a/buildroot-external/package/python-mycroft/python-mycroft.mk b/buildroot-external/package/python-mycroft/python-mycroft.mk index a7384e66..be32aed0 100644 --- a/buildroot-external/package/python-mycroft/python-mycroft.mk +++ b/buildroot-external/package/python-mycroft/python-mycroft.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_MYCROFT_VERSION = v18.8.11 +PYTHON_MYCROFT_VERSION = v18.8.12 PYTHON_MYCROFT_SITE = $(call github,MycroftAI,mycroft-core,release/$(PYTHON_MYCROFT_VERSION)) PYTHON_MYCROFT_SETUP_TYPE = setuptools PYTHON_MYCROFT_LICENSE_FILES = diff --git a/buildroot-external/rootfs-overlay/etc/init.d/S15modules b/buildroot-external/rootfs-overlay/etc/init.d/S15modules index 987426e0..8eb8efad 100755 --- a/buildroot-external/rootfs-overlay/etc/init.d/S15modules +++ b/buildroot-external/rootfs-overlay/etc/init.d/S15modules @@ -1,2 +1,3 @@ modprobe snd-bcm2835 +modprobe spi-bcm2835 #modprobe snd-usb-audio diff --git a/buildroot-external/rootfs-overlay/etc/mycroft/mycroft.conf b/buildroot-external/rootfs-overlay/etc/mycroft/mycroft.conf index f5adf9b0..15e7e745 100644 --- a/buildroot-external/rootfs-overlay/etc/mycroft/mycroft.conf +++ b/buildroot-external/rootfs-overlay/etc/mycroft/mycroft.conf @@ -2,6 +2,9 @@ "play_wav_cmdline": "aplay -Dhw:0,0 %1", "play_mp3_cmdline": "mpg123 -a hw:0,0 %1", "ipc_path": "/ramdisk/mycroft/ipc/", + "listener": { + "mute_during_output": false + }, "ignore_logs": ["enclosure.mouth.viseme", "enclosure.mouth.display"], - "log_level": "INFO" + "log_level": "DEBUG" } diff --git a/buildroot-external/rootfs-overlay/etc/pip.conf b/buildroot-external/rootfs-overlay/etc/pip.conf new file mode 100644 index 00000000..d48dbbd9 --- /dev/null +++ b/buildroot-external/rootfs-overlay/etc/pip.conf @@ -0,0 +1,3 @@ +[global] +only-binary=:all: +extra-index-url=https://www.piwheels.org/simple diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/.empty b/buildroot-external/rootfs-overlay/root/.mycroft/.empty deleted file mode 100644 index e69de29b..00000000 diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/hey-mycroft.pb b/buildroot-external/rootfs-overlay/root/.mycroft/precise/hey-mycroft.pb new file mode 100644 index 00000000..59475385 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/hey-mycroft.pb differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/hey-mycroft.pb.params b/buildroot-external/rootfs-overlay/root/.mycroft/precise/hey-mycroft.pb.params new file mode 100644 index 00000000..ec4262fa --- /dev/null +++ b/buildroot-external/rootfs-overlay/root/.mycroft/precise/hey-mycroft.pb.params @@ -0,0 +1 @@ +{"window_t": 0.1, "hop_t": 0.05, "buffer_t": 1.5, "sample_rate": 16000, "sample_depth": 2, "n_mfcc": 13, "n_filt": 20, "n_fft": 512} \ No newline at end of file diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/hey-mycroft.tar.gz b/buildroot-external/rootfs-overlay/root/.mycroft/precise/hey-mycroft.tar.gz new file mode 100644 index 00000000..ca731ad5 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/hey-mycroft.tar.gz differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_bz2.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_bz2.so new file mode 100755 index 00000000..40ee424d Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_bz2.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_cn.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_cn.so new file mode 100755 index 00000000..27566492 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_cn.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_hk.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_hk.so new file mode 100755 index 00000000..07348d79 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_hk.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_iso2022.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_iso2022.so new file mode 100755 index 00000000..d628bf01 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_iso2022.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_jp.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_jp.so new file mode 100755 index 00000000..50d3fdb4 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_jp.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_kr.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_kr.so new file mode 100755 index 00000000..4810c2ea Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_kr.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_tw.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_tw.so new file mode 100755 index 00000000..d2c78195 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_codecs_tw.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_csv.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_csv.so new file mode 100755 index 00000000..4ca02901 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_csv.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_ctypes.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_ctypes.so new file mode 100755 index 00000000..d842e4e5 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_ctypes.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_curses.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_curses.so new file mode 100755 index 00000000..7493969d Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_curses.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_decimal.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_decimal.so new file mode 100755 index 00000000..7f313b90 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_decimal.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_hashlib.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_hashlib.so new file mode 100755 index 00000000..24780f10 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_hashlib.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_json.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_json.so new file mode 100755 index 00000000..fe11d618 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_json.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_lzma.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_lzma.so new file mode 100755 index 00000000..f1b2534b Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_lzma.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_multibytecodec.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_multibytecodec.so new file mode 100755 index 00000000..8bc32d2c Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_multibytecodec.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_multiprocessing.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_multiprocessing.so new file mode 100755 index 00000000..e4b858fb Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_multiprocessing.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_opcode.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_opcode.so new file mode 100755 index 00000000..8d9a3fa9 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_opcode.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_pywrap_tensorflow_internal.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_pywrap_tensorflow_internal.so new file mode 100755 index 00000000..e105f970 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_pywrap_tensorflow_internal.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_ssl.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_ssl.so new file mode 100755 index 00000000..a05be661 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/_ssl.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/audioop.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/audioop.so new file mode 100755 index 00000000..f713c2db Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/audioop.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/base_library.zip b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/base_library.zip new file mode 100644 index 00000000..af44ec18 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/base_library.zip differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py._conv.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py._conv.so new file mode 100755 index 00000000..96e7801c Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py._conv.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py._errors.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py._errors.so new file mode 100755 index 00000000..ff3a6723 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py._errors.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py._objects.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py._objects.so new file mode 100755 index 00000000..3f21c5bc Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py._objects.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py._proxy.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py._proxy.so new file mode 100755 index 00000000..23f81200 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py._proxy.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.defs.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.defs.so new file mode 100755 index 00000000..39fc9869 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.defs.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5.so new file mode 100755 index 00000000..9e9c4a7e Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5a.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5a.so new file mode 100755 index 00000000..b8b65e75 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5a.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5ac.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5ac.so new file mode 100755 index 00000000..09b10dac Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5ac.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5d.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5d.so new file mode 100755 index 00000000..681e2bb5 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5d.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5ds.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5ds.so new file mode 100755 index 00000000..958a56b8 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5ds.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5f.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5f.so new file mode 100755 index 00000000..548ada96 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5f.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5fd.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5fd.so new file mode 100755 index 00000000..494cf46e Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5fd.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5g.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5g.so new file mode 100755 index 00000000..d87ab370 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5g.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5i.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5i.so new file mode 100755 index 00000000..bd67e0e8 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5i.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5l.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5l.so new file mode 100755 index 00000000..f3658182 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5l.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5o.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5o.so new file mode 100755 index 00000000..84d3ad32 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5o.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5p.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5p.so new file mode 100755 index 00000000..15eee3e2 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5p.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5r.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5r.so new file mode 100755 index 00000000..013ccd63 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5r.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5s.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5s.so new file mode 100755 index 00000000..fd28851c Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5s.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5t.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5t.so new file mode 100755 index 00000000..16f5068c Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5t.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5z.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5z.so new file mode 100755 index 00000000..cff4355b Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.h5z.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.utils.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.utils.so new file mode 100755 index 00000000..500dafe0 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/h5py.utils.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/include/python3.4m/pyconfig.h b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/include/python3.4m/pyconfig.h new file mode 100644 index 00000000..5e97fad2 --- /dev/null +++ b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/include/python3.4m/pyconfig.h @@ -0,0 +1,79 @@ +#if defined(__linux__) +# if defined(__x86_64__) && defined(__LP64__) +# include +# elif defined(__x86_64__) && defined(__ILP32__) +# include +# elif defined(__i386__) +# include +# elif defined(__aarch64__) && defined(__AARCH64EL__) +# include +# elif defined(__alpha__) +# include +# elif defined(__ARM_EABI__) && defined(__ARM_PCS_VFP) +# include +# elif defined(__ARM_EABI__) && !defined(__ARM_PCS_VFP) +# include +# elif defined(__hppa__) +# include +# elif defined(__ia64__) +# include +# elif defined(__m68k__) && !defined(__mcoldfire__) +# include +# elif defined(__mips_hard_float) && defined(_MIPSEL) +# if _MIPS_SIM == _ABIO32 +# include +# elif _MIPS_SIM == _ABIN32 +# include +# elif _MIPS_SIM == _ABI64 +# include +# else +# error unknown multiarch location for pyconfig.h +# endif +# elif defined(__mips_hard_float) +# if _MIPS_SIM == _ABIO32 +# include +# elif _MIPS_SIM == _ABIN32 +# include +# elif _MIPS_SIM == _ABI64 +# include +# else +# error unknown multiarch location for pyconfig.h +# endif +# elif defined(__or1k__) +# include +# elif defined(__powerpc__) && defined(__SPE__) +# include +# elif defined(__powerpc64__) +# if defined(__LITTLE_ENDIAN__) +# include +# else +# include +# endif +# elif defined(__powerpc__) +# include +# elif defined(__s390x__) +# include +# elif defined(__s390__) +# include +# elif defined(__sh__) && defined(__LITTLE_ENDIAN__) +# include +# elif defined(__sparc__) && defined(__arch64__) +# include +# elif defined(__sparc__) +# include +# else +# error unknown multiarch location for pyconfig.h +# endif +#elif defined(__FreeBSD_kernel__) +# if defined(__LP64__) +# include +# elif defined(__i386__) +# include +# else +# error unknown multiarch location for pyconfig.h +# endif +#elif defined(__gnu_hurd__) +# include +#else +# error unknown multiarch location for pyconfig.h +#endif diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/lib/python3.4/config-3.4m-arm-linux-gnueabihf/Makefile b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/lib/python3.4/config-3.4m-arm-linux-gnueabihf/Makefile new file mode 100644 index 00000000..9e4b5e1a --- /dev/null +++ b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/lib/python3.4/config-3.4m-arm-linux-gnueabihf/Makefile @@ -0,0 +1,1761 @@ +# Generated automatically from Makefile.pre by makesetup. +# Top-level Makefile for Python +# +# As distributed, this file is called Makefile.pre.in; it is processed +# into the real Makefile by running the script ./configure, which +# replaces things like @spam@ with values appropriate for your system. +# This means that if you edit Makefile, your changes get lost the next +# time you run the configure script. Ideally, you can do: +# +# ./configure +# make +# make test +# make install +# +# If you have a previous version of Python installed that you don't +# want to overwrite, you can use "make altinstall" instead of "make +# install". Refer to the "Installing" section in the README file for +# additional details. +# +# See also the section "Build instructions" in the README file. + +# === Variables set by makesetup === + +MODOBJS= Modules/_threadmodule.o Modules/signalmodule.o Modules/arraymodule.o Modules/mathmodule.o Modules/_math.o Modules/_struct.o Modules/timemodule.o Modules/_randommodule.o Modules/_elementtree.o Modules/_pickle.o Modules/_datetimemodule.o Modules/_bisectmodule.o Modules/_heapqmodule.o Modules/unicodedata.o Modules/fcntlmodule.o Modules/spwdmodule.o Modules/grpmodule.o Modules/selectmodule.o Modules/socketmodule.o Modules/_posixsubprocess.o Modules/md5module.o Modules/sha1module.o Modules/sha256module.o Modules/sha512module.o Modules/syslogmodule.o Modules/binascii.o Modules/zlibmodule.o Modules/pyexpat.o Modules/posixmodule.o Modules/errnomodule.o Modules/pwdmodule.o Modules/_sre.o Modules/_codecsmodule.o Modules/_weakref.o Modules/_functoolsmodule.o Modules/_operator.o Modules/_collectionsmodule.o Modules/itertoolsmodule.o Modules/atexitmodule.o Modules/_stat.o Modules/_localemodule.o Modules/_iomodule.o Modules/iobase.o Modules/fileio.o Modules/bytesio.o Modules/bufferedio.o Modules/textio.o Modules/stringio.o Modules/zipimport.o Modules/faulthandler.o Modules/_tracemalloc.o Modules/hashtable.o Modules/symtablemodule.o Modules/xxsubtype.o +MODLIBS= $(LOCALMODLIBS) $(BASEMODLIBS) + +# === Variables set by configure +VERSION= 3.4 +srcdir= .. +VPATH= .. +abs_srcdir= /build/python3.4-5WkL9e/python3.4-3.4.2/build-shared/.. +abs_builddir= /build/python3.4-5WkL9e/python3.4-3.4.2/build-shared + + +CC= arm-linux-gnueabihf-gcc -pthread +CXX= arm-linux-gnueabihf-g++ -pthread +MAINCC= $(CC) +LINKCC= $(PURIFY) $(MAINCC) +AR= arm-linux-gnueabihf-gcc-ar +RANLIB= arm-linux-gnueabihf-gcc-ranlib +READELF= readelf +SOABI= cpython-34m +LDVERSION= $(VERSION)$(ABIFLAGS) +HGVERSION= +HGTAG= +HGBRANCH= + +GNULD= yes + +# Shell used by make (some versions default to the login shell, which is bad) +SHELL= /bin/sh + +# Use this to make a link between python$(VERSION) and python in $(BINDIR) +LN= ln + +# Portable install script (configure doesn't always guess right) +INSTALL= /usr/bin/install -c +INSTALL_PROGRAM=${INSTALL} +INSTALL_SCRIPT= ${INSTALL} +INSTALL_DATA= ${INSTALL} -m 644 +# Shared libraries must be installed with executable mode on some systems; +# rather than figuring out exactly which, we always give them executable mode. +# Also, making them read-only seems to be a good idea... +INSTALL_SHARED= ${INSTALL} -m 555 + +MKDIR_P= /bin/mkdir -p + +MAKESETUP= $(srcdir)/Modules/makesetup + +# Compiler options +OPT= -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes +BASECFLAGS= -Wno-unused-result +BASECPPFLAGS= +CONFIGURE_CFLAGS= -g -fstack-protector-strong -Wformat -Werror=format-security +# CFLAGS_NODIST is used for building the interpreter and stdlib C extensions. +# Use it when a compiler flag should _not_ be part of the distutils CFLAGS +# once Python is installed (Issue #21121). +CONFIGURE_CFLAGS_NODIST= -Werror=declaration-after-statement +CONFIGURE_CPPFLAGS= -D_FORTIFY_SOURCE=2 +CONFIGURE_LDFLAGS= -Wl,-z,relro +# Avoid assigning CFLAGS, LDFLAGS, etc. so users can use them on the +# command line to append to these values without stomping the pre-set +# values. +PY_CFLAGS= $(BASECFLAGS) $(OPT) $(CONFIGURE_CFLAGS) $(CFLAGS) $(EXTRA_CFLAGS) +PY_CFLAGS_NODIST=$(CONFIGURE_CFLAGS_NODIST) $(CFLAGS_NODIST) +# Both CPPFLAGS and LDFLAGS need to contain the shell's value for setup.py to +# be able to build extension modules using the directories specified in the +# environment variables +PY_CPPFLAGS= $(BASECPPFLAGS) -I. -IInclude -I$(srcdir)/Include $(CONFIGURE_CPPFLAGS) $(CPPFLAGS) +PY_LDFLAGS= $(CONFIGURE_LDFLAGS) $(LDFLAGS) +NO_AS_NEEDED= -Wl,--no-as-needed +LDLAST= +SGI_ABI= +CCSHARED= -fPIC +LINKFORSHARED= -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions +ARFLAGS= rc +# Extra C flags added for building the interpreter object files. +CFLAGSFORSHARED=$(CCSHARED) +# C flags used for building the interpreter object files +PY_CORE_CFLAGS= $(PY_CFLAGS) $(PY_CFLAGS_NODIST) $(PY_CPPFLAGS) $(CFLAGSFORSHARED) -DPy_BUILD_CORE + + +# Machine-dependent subdirectories +MACHDEP= linux + +# Multiarch directory (may be empty) +MULTIARCH= arm-linux-gnueabihf + +# Install prefix for architecture-independent files +prefix= /usr + +# Install prefix for architecture-dependent files +exec_prefix= ${prefix} + +# Install prefix for data files +datarootdir= ${prefix}/share + +# Expanded directories +BINDIR= ${exec_prefix}/bin +LIBDIR= ${exec_prefix}/lib +MANDIR= ${datarootdir}/man +INCLUDEDIR= ${prefix}/include +CONFINCLUDEDIR= $(exec_prefix)/include +SCRIPTDIR= $(prefix)/lib +ABIFLAGS= m + +# Detailed destination directories +BINLIBDEST= $(LIBDIR)/python$(VERSION) +LIBDEST= $(SCRIPTDIR)/python$(VERSION) +INCLUDEPY= $(INCLUDEDIR)/python$(LDVERSION) +CONFINCLUDEPY= $(CONFINCLUDEDIR)/python$(LDVERSION) + +# Symbols used for using shared libraries +SHLIB_SUFFIX= .so +EXT_SUFFIX= .cpython-34m.so +LDSHARED= $(CC) -shared -Wl,-O1 -Wl,-Bsymbolic-functions $(PY_LDFLAGS) +BLDSHARED= $(CC) -shared -Wl,-O1 -Wl,-Bsymbolic-functions $(PY_LDFLAGS) $(PY_CFLAGS) +LDCXXSHARED= $(CXX) -shared -Wl,-O1 -Wl,-Bsymbolic-functions +DESTSHARED= $(BINLIBDEST)/lib-dynload + +# Executable suffix (.exe on Windows and Mac OS X) +EXE= +BUILDEXE= + +# Short name and location for Mac OS X Python framework +UNIVERSALSDK= +PYTHONFRAMEWORK= +PYTHONFRAMEWORKDIR= no-framework +PYTHONFRAMEWORKPREFIX= +PYTHONFRAMEWORKINSTALLDIR= +# Deployment target selected during configure, to be checked +# by distutils. The export statement is needed to ensure that the +# deployment target is active during build. +MACOSX_DEPLOYMENT_TARGET= +#export MACOSX_DEPLOYMENT_TARGET + +# Option to install to strip binaries +STRIPFLAG=-s + +# Flags to lipo to produce a 32-bit-only universal executable +LIPO_32BIT_FLAGS= + +# Options to enable prebinding (for fast startup prior to Mac OS X 10.3) +OTHER_LIBTOOL_OPT= + +# Environment to run shared python without installed libraries +RUNSHARED= + +# ensurepip options +ENSUREPIP= no + +# Modes for directories, executables and data files created by the +# install process. Default to user-only-writable for all file types. +DIRMODE= 755 +EXEMODE= 755 +FILEMODE= 644 + +# configure script arguments +CONFIG_ARGS= '--enable-shared' '--prefix=/usr' '--enable-ipv6' '--enable-loadable-sqlite-extensions' '--with-dbmliborder=bdb:gdbm' '--with-computed-gotos' '--without-ensurepip' '--with-system-expat' '--with-system-libmpdec' '--with-system-ffi' '--with-fpectl' 'CC=arm-linux-gnueabihf-gcc' 'CFLAGS=-g -fstack-protector-strong -Wformat -Werror=format-security ' 'LDFLAGS=-Wl,-z,relro' 'CPPFLAGS=-D_FORTIFY_SOURCE=2' + + +# Subdirectories with code +SRCDIRS= Parser Grammar Objects Python Modules Mac + +# Other subdirectories +SUBDIRSTOO= Include Lib Misc + +# Files and directories to be distributed +CONFIGFILES= configure configure.ac acconfig.h pyconfig.h.in Makefile.pre.in +DISTFILES= README ChangeLog $(CONFIGFILES) +DISTDIRS= $(SUBDIRS) $(SUBDIRSTOO) Ext-dummy +DIST= $(DISTFILES) $(DISTDIRS) + + +LIBRARY= libpython$(VERSION)$(ABIFLAGS).a +LDLIBRARY= libpython$(LDVERSION).so +BLDLIBRARY= -lpython$(LDVERSION) +PY3LIBRARY= libpython3.so +DLLLIBRARY= +LDLIBRARYDIR= +INSTSONAME= libpython$(LDVERSION).so.1.0 + + +LIBS= -lpthread -ldl -lutil +LIBM= -lm +LIBC= +SYSLIBS= $(LIBM) $(LIBC) +SHLIBS= $(LIBS) + +THREADOBJ= Python/thread.o +DLINCLDIR= . +DYNLOADFILE= dynload_shlib.o +MACHDEP_OBJS= +LIBOBJDIR= Python/ +LIBOBJS= + +PYTHON= python$(EXE) +BUILDPYTHON= python$(BUILDEXE) + +PYTHON_FOR_BUILD=./$(BUILDPYTHON) -E +_PYTHON_HOST_PLATFORM= +BUILD_GNU_TYPE= armv7l-unknown-linux-gnueabihf +HOST_GNU_TYPE= armv7l-unknown-linux-gnueabihf + +# Tcl and Tk config info from --with-tcltk-includes and -libs options +TCLTK_INCLUDES= +TCLTK_LIBS= + +# The task to run while instrument when building the profile-opt target +PROFILE_TASK= $(srcdir)/Tools/pybench/pybench.py -n 2 --with-gc --with-syscheck +#PROFILE_TASK= $(srcdir)/Lib/test/regrtest.py + +# report files for gcov / lcov coverage report +COVERAGE_INFO= $(abs_builddir)/coverage.info +COVERAGE_REPORT=$(abs_builddir)/lcov-report +COVERAGE_REPORT_OPTIONS=--no-branch-coverage --title "CPython lcov report" + + +# === Definitions added by makesetup === + +LOCALMODLIBS= -lrt -lexpat -L$(exec_prefix)/lib -lz -lexpat +BASEMODLIBS= +PYTHONPATH=$(COREPYTHONPATH) +COREPYTHONPATH=$(DESTPATH)$(SITEPATH)$(TESTPATH)$(MACHDEPPATH)$(EXTRAMACHDEPPATH) +EXTRAMACHDEPPATH= +MACHDEPPATH=:plat-$(MULTIARCH) +TESTPATH= +SITEPATH= +DESTPATH= +MACHDESTLIB=$(BINLIBDEST) +DESTLIB=$(LIBDEST) + + + +########################################################################## +# Modules +MODULE_OBJS= \ + Modules/config.o \ + Modules/getpath.o \ + Modules/main.o \ + Modules/gcmodule.o + +# Used of signalmodule.o is not available +SIGNAL_OBJS= + +IO_H= Modules/_io/_iomodule.h + +IO_OBJS= \ + Modules/_io/_iomodule.o \ + Modules/_io/iobase.o \ + Modules/_io/fileio.o \ + Modules/_io/bufferedio.o \ + Modules/_io/textio.o \ + Modules/_io/bytesio.o \ + Modules/_io/stringio.o + +########################################################################## +# Grammar +GRAMMAR_H= Include/graminit.h +GRAMMAR_C= Python/graminit.c +GRAMMAR_INPUT= $(srcdir)/Grammar/Grammar + + +LIBFFI_INCLUDEDIR= + +########################################################################## +# Parser +PGEN= Parser/pgen$(EXE) + +PSRCS= \ + Parser/acceler.c \ + Parser/grammar1.c \ + Parser/listnode.c \ + Parser/node.c \ + Parser/parser.c \ + Parser/bitset.c \ + Parser/metagrammar.c \ + Parser/firstsets.c \ + Parser/grammar.c \ + Parser/pgen.c + +POBJS= \ + Parser/acceler.o \ + Parser/grammar1.o \ + Parser/listnode.o \ + Parser/node.o \ + Parser/parser.o \ + Parser/bitset.o \ + Parser/metagrammar.o \ + Parser/firstsets.o \ + Parser/grammar.o \ + Parser/pgen.o + +PARSER_OBJS= $(POBJS) Parser/myreadline.o Parser/parsetok.o Parser/tokenizer.o + +PGSRCS= \ + Objects/obmalloc.c \ + Python/dynamic_annotations.c \ + Python/mysnprintf.c \ + Python/pyctype.c \ + Parser/tokenizer_pgen.c \ + Parser/printgrammar.c \ + Parser/parsetok_pgen.c \ + Parser/pgenmain.c + +PGOBJS= \ + Objects/obmalloc.o \ + Python/dynamic_annotations.o \ + Python/mysnprintf.o \ + Python/pyctype.o \ + Parser/tokenizer_pgen.o \ + Parser/printgrammar.o \ + Parser/parsetok_pgen.o \ + Parser/pgenmain.o + +PARSER_HEADERS= \ + $(srcdir)/Parser/parser.h \ + $(srcdir)/Include/parsetok.h \ + $(srcdir)/Parser/tokenizer.h + +PGENSRCS= $(PSRCS) $(PGSRCS) +PGENOBJS= $(POBJS) $(PGOBJS) + +########################################################################## +# AST +AST_H_DIR= Include +AST_H= $(AST_H_DIR)/Python-ast.h +AST_C_DIR= Python +AST_C= $(AST_C_DIR)/Python-ast.c +AST_ASDL= $(srcdir)/Parser/Python.asdl + +ASDLGEN_FILES= $(srcdir)/Parser/asdl.py $(srcdir)/Parser/asdl_c.py +# Note that a build now requires Python to exist before the build starts. +# Use "hg touch" to fix up screwed up file mtimes in a checkout. +ASDLGEN= python3.4 $(srcdir)/Parser/asdl_c.py + +########################################################################## +# Python + +OPCODETARGETS_H= \ + Python/opcode_targets.h + +OPCODETARGETGEN= \ + $(srcdir)/Python/makeopcodetargets.py + +OPCODETARGETGEN_FILES= \ + $(OPCODETARGETGEN) $(srcdir)/Lib/opcode.py + +PYTHON_OBJS= \ + Python/_warnings.o \ + Python/Python-ast.o \ + Python/asdl.o \ + Python/ast.o \ + Python/bltinmodule.o \ + Python/ceval.o \ + Python/compile.o \ + Python/codecs.o \ + Python/dynamic_annotations.o \ + Python/errors.o \ + Python/frozenmain.o \ + Python/future.o \ + Python/getargs.o \ + Python/getcompiler.o \ + Python/getcopyright.o \ + Python/getplatform.o \ + Python/getversion.o \ + Python/graminit.o \ + Python/import.o \ + Python/importdl.o \ + Python/marshal.o \ + Python/modsupport.o \ + Python/mystrtoul.o \ + Python/mysnprintf.o \ + Python/peephole.o \ + Python/pyarena.o \ + Python/pyctype.o \ + Python/pyfpe.o \ + Python/pyhash.o \ + Python/pymath.o \ + Python/pystate.o \ + Python/pythonrun.o \ + Python/pytime.o \ + Python/random.o \ + Python/structmember.o \ + Python/symtable.o \ + Python/sysmodule.o \ + Python/traceback.o \ + Python/getopt.o \ + Python/pystrcmp.o \ + Python/pystrtod.o \ + Python/dtoa.o \ + Python/formatter_unicode.o \ + Python/fileutils.o \ + Python/$(DYNLOADFILE) \ + $(LIBOBJS) \ + $(MACHDEP_OBJS) \ + $(THREADOBJ) + + +########################################################################## +# Objects +OBJECT_OBJS= \ + Objects/abstract.o \ + Objects/accu.o \ + Objects/boolobject.o \ + Objects/bytes_methods.o \ + Objects/bytearrayobject.o \ + Objects/bytesobject.o \ + Objects/cellobject.o \ + Objects/classobject.o \ + Objects/codeobject.o \ + Objects/complexobject.o \ + Objects/descrobject.o \ + Objects/enumobject.o \ + Objects/exceptions.o \ + Objects/genobject.o \ + Objects/fileobject.o \ + Objects/floatobject.o \ + Objects/frameobject.o \ + Objects/funcobject.o \ + Objects/iterobject.o \ + Objects/listobject.o \ + Objects/longobject.o \ + Objects/dictobject.o \ + Objects/memoryobject.o \ + Objects/methodobject.o \ + Objects/moduleobject.o \ + Objects/namespaceobject.o \ + Objects/object.o \ + Objects/obmalloc.o \ + Objects/capsule.o \ + Objects/rangeobject.o \ + Objects/setobject.o \ + Objects/sliceobject.o \ + Objects/structseq.o \ + Objects/tupleobject.o \ + Objects/typeobject.o \ + Objects/unicodeobject.o \ + Objects/unicodectype.o \ + Objects/weakrefobject.o + +########################################################################## +# objects that get linked into the Python library +LIBRARY_OBJS_OMIT_FROZEN= \ + Modules/getbuildinfo.o \ + $(PARSER_OBJS) \ + $(OBJECT_OBJS) \ + $(PYTHON_OBJS) \ + $(MODULE_OBJS) \ + $(SIGNAL_OBJS) \ + $(MODOBJS) + +LIBRARY_OBJS= \ + $(LIBRARY_OBJS_OMIT_FROZEN) \ + Python/frozen.o + +######################################################################### +# Rules + +# Default target +all: build_all +build_all: $(BUILDPYTHON) oldsharedmods sharedmods gdbhooks Modules/_testembed python-config + +# Compile a binary with gcc profile guided optimization. +profile-opt: + @echo "Building with support for profile generation:" + $(MAKE) clean + $(MAKE) build_all_generate_profile + @echo "Running benchmark to generate profile data:" + $(MAKE) profile-removal + $(MAKE) run_profile_task + @echo "Rebuilding with profile guided optimizations:" + $(MAKE) clean + $(MAKE) build_all_use_profile + +build_all_generate_profile: + $(MAKE) all CFLAGS="$(CFLAGS) -fprofile-generate" LIBS="$(LIBS) -lgcov" + +run_profile_task: + : # FIXME: can't run for a cross build + task="$(PROFILE_TASK)"; \ + case "$$task" in \ + *-s\ *) \ + $(RUNSHARED) ./$(BUILDPYTHON) $$task; \ + while [ -f $(srcdir)/build/pynexttest ]; do \ + $(RUNSHARED) ./$(BUILDPYTHON) $$task; \ + done;; \ + *) \ + $(RUNSHARED) ./$(BUILDPYTHON) $$task; \ + esac + +build_all_use_profile: + $(MAKE) all CFLAGS="$(CFLAGS) -fprofile-use -fprofile-correction" + +# Compile and run with gcov +.PHONY=coverage coverage-lcov coverage-report +coverage: + @echo "Building with support for coverage checking:" + $(MAKE) clean profile-removal + $(MAKE) all CFLAGS="$(CFLAGS) -O0 -pg -fprofile-arcs -ftest-coverage" LIBS="$(LIBS) -lgcov" + +coverage-lcov: + @echo "Creating Coverage HTML report with LCOV:" + @rm -f $(COVERAGE_INFO) + @rm -rf $(COVERAGE_REPORT) + @lcov --capture --directory $(abs_builddir) \ + --base-directory $(realpath $(abs_builddir)) \ + --path $(realpath $(abs_srcdir)) \ + --output-file $(COVERAGE_INFO) + : # remove 3rd party modules and system headers + @lcov --remove $(COVERAGE_INFO) \ + '*/Modules/_ctypes/libffi*/*' \ + '*/Modules/_decimal/libmpdec/*' \ + '*/Modules/expat/*' \ + '*/Modules/zlib/*' \ + '*/Include/*' \ + '/usr/include/*' \ + '/usr/local/include/*' \ + --output-file $(COVERAGE_INFO) + @genhtml $(COVERAGE_INFO) --output-directory $(COVERAGE_REPORT) \ + $(COVERAGE_REPORT_OPTIONS) + @echo + @echo "lcov report at $(COVERAGE_REPORT)/index.html" + @echo + +coverage-report: + : # force rebuilding of parser and importlib + @touch $(GRAMMAR_INPUT) + @touch $(srcdir)/Lib/importlib/_bootstrap.py + : # build with coverage info + $(MAKE) coverage + : # run tests, ignore failures + $(TESTRUNNER) $(TESTOPTS) || true + : # build lcov report + $(MAKE) coverage-lcov + +# Run "Argument Clinic" over all source files +# (depends on python having already been built) +.PHONY=clinic +clinic: $(BUILDPYTHON) + $(RUNSHARED) $(PYTHON_FOR_BUILD) ./Tools/clinic/clinic.py --make + +# Build the interpreter +$(BUILDPYTHON): Modules/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY) + $(LINKCC) $(PY_LDFLAGS) $(PY_CFLAGS) $(LINKFORSHARED) -o $@ Modules/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) + +platform: $(BUILDPYTHON) pybuilddir.txt + $(RUNSHARED) $(PYTHON_FOR_BUILD) -c 'import sys ; from sysconfig import get_platform ; print(get_platform()+"-"+sys.version[0:3])' >platform + +# Create build directory and generate the sysconfig build-time data there. +# pybuilddir.txt contains the name of the build dir and is used for +# sys.path fixup -- see Modules/getpath.c. +# Since this step runs before shared modules are built, try to avoid bootstrap +# problems by creating a dummy pybuilddir.txt just to allow interpreter +# initialization to succeed. It will be overwritten by generate-posix-vars +# or removed in case of failure. +pybuilddir.txt: $(BUILDPYTHON) + @echo "none" > ./pybuilddir.txt + $(RUNSHARED) $(PYTHON_FOR_BUILD) -S -m sysconfig --generate-posix-vars ;\ + if test $$? -ne 0 ; then \ + echo "generate-posix-vars failed" ; \ + rm -f ./pybuilddir.txt ; \ + exit 1 ; \ + fi + +# Build the shared modules +# Under GNU make, MAKEFLAGS are sorted and normalized; the 's' for +# -s, --silent or --quiet is always the first char. +# Under BSD make, MAKEFLAGS might be " -s -v x=y". +sharedmods: $(BUILDPYTHON) pybuilddir.txt + @case "$$MAKEFLAGS" in \ + *\ -s*|s*) quiet="-q";; \ + *) quiet="";; \ + esac; \ + $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ + _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \ + $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build + +# Build static library +# avoid long command lines, same as LIBRARY_OBJS +$(LIBRARY): $(LIBRARY_OBJS) + -rm -f $@ + $(AR) $(ARFLAGS) $@ Modules/getbuildinfo.o + $(AR) $(ARFLAGS) $@ $(PARSER_OBJS) + $(AR) $(ARFLAGS) $@ $(OBJECT_OBJS) + $(AR) $(ARFLAGS) $@ $(PYTHON_OBJS) Python/frozen.o + $(AR) $(ARFLAGS) $@ $(MODULE_OBJS) $(SIGNAL_OBJS) + $(AR) $(ARFLAGS) $@ $(MODOBJS) + $(RANLIB) $@ + +libpython$(LDVERSION).so: $(LIBRARY_OBJS) + if test $(INSTSONAME) != $(LDLIBRARY); then \ + $(BLDSHARED) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ + $(LN) -f $(INSTSONAME) $@; \ + else \ + $(BLDSHARED) -o $@ $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ + fi + +libpython3.so: libpython$(LDVERSION).so + $(BLDSHARED) $(NO_AS_NEEDED) -o $@ -Wl,-h$@ $^ + +libpython$(LDVERSION).dylib: $(LIBRARY_OBJS) + $(CC) -dynamiclib -Wl,-single_module $(PY_LDFLAGS) -undefined dynamic_lookup -Wl,-install_name,$(prefix)/lib/libpython$(LDVERSION).dylib -Wl,-compatibility_version,$(VERSION) -Wl,-current_version,$(VERSION) -o $@ $(LIBRARY_OBJS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \ + + +libpython$(VERSION).sl: $(LIBRARY_OBJS) + $(LDSHARED) -o $@ $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST) + +# Copy up the gdb python hooks into a position where they can be automatically +# loaded by gdb during Lib/test/test_gdb.py +# +# Distributors are likely to want to install this somewhere else e.g. relative +# to the stripped DWARF data for the shared library. +gdbhooks: $(BUILDPYTHON)-gdb.py + +SRC_GDB_HOOKS=$(srcdir)/Tools/gdb/libpython.py +$(BUILDPYTHON)-gdb.py: $(SRC_GDB_HOOKS) + $(INSTALL_DATA) $(SRC_GDB_HOOKS) $(BUILDPYTHON)-gdb.py + +# This rule is here for OPENSTEP/Rhapsody/MacOSX. It builds a temporary +# minimal framework (not including the Lib directory and such) in the current +# directory. +RESSRCDIR=Mac/Resources/framework +$(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK): \ + $(LIBRARY) \ + $(RESSRCDIR)/Info.plist + $(INSTALL) -d -m $(DIRMODE) $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION) + $(CC) -o $(LDLIBRARY) $(PY_LDFLAGS) -dynamiclib \ + -all_load $(LIBRARY) -Wl,-single_module \ + -install_name $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK) \ + -compatibility_version $(VERSION) \ + -current_version $(VERSION) \ + -framework CoreFoundation $(LIBS); + $(INSTALL) -d -m $(DIRMODE) \ + $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Resources/English.lproj + $(INSTALL_DATA) $(RESSRCDIR)/Info.plist \ + $(PYTHONFRAMEWORKDIR)/Versions/$(VERSION)/Resources/Info.plist + $(LN) -fsn $(VERSION) $(PYTHONFRAMEWORKDIR)/Versions/Current + $(LN) -fsn Versions/Current/$(PYTHONFRAMEWORK) $(PYTHONFRAMEWORKDIR)/$(PYTHONFRAMEWORK) + $(LN) -fsn Versions/Current/Resources $(PYTHONFRAMEWORKDIR)/Resources + +# This rule builds the Cygwin Python DLL and import library if configured +# for a shared core library; otherwise, this rule is a noop. +$(DLLLIBRARY) libpython$(VERSION).dll.a: $(LIBRARY_OBJS) + if test -n "$(DLLLIBRARY)"; then \ + $(LDSHARED) -Wl,--out-implib=$@ -o $(DLLLIBRARY) $^ \ + $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST); \ + else true; \ + fi + + +oldsharedmods: $(SHAREDMODS) + + +Makefile Modules/config.c: Makefile.pre \ + $(srcdir)/Modules/config.c.in \ + $(MAKESETUP) \ + Modules/Setup.config \ + Modules/Setup \ + Modules/Setup.local + $(SHELL) $(MAKESETUP) -c $(srcdir)/Modules/config.c.in \ + -s Modules \ + Modules/Setup.config \ + Modules/Setup.local \ + Modules/Setup + @mv config.c Modules + @echo "The Makefile was updated, you may need to re-run make." + + +Modules/Setup: $(srcdir)/Modules/Setup.dist + @if test -f Modules/Setup; then \ + echo "-----------------------------------------------"; \ + echo "Modules/Setup.dist is newer than Modules/Setup;"; \ + echo "check to make sure you have all the updates you"; \ + echo "need in your Modules/Setup file."; \ + echo "Usually, copying Modules/Setup.dist to Modules/Setup will work."; \ + echo "-----------------------------------------------"; \ + fi + +Modules/_testembed: Modules/_testembed.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY) + $(LINKCC) $(PY_LDFLAGS) $(LINKFORSHARED) -o $@ Modules/_testembed.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) + +############################################################################ +# Importlib + +Modules/_freeze_importlib: Modules/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN) + $(LINKCC) $(PY_LDFLAGS) -o $@ Modules/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) + +Python/importlib.h: $(srcdir)/Lib/importlib/_bootstrap.py Modules/_freeze_importlib.c + $(MAKE) Modules/_freeze_importlib + ./Modules/_freeze_importlib \ + $(srcdir)/Lib/importlib/_bootstrap.py Python/importlib.h + + +############################################################################ +# Special rules for object files + +Modules/getbuildinfo.o: $(PARSER_OBJS) \ + $(OBJECT_OBJS) \ + $(PYTHON_OBJS) \ + $(MODULE_OBJS) \ + $(SIGNAL_OBJS) \ + $(MODOBJS) \ + $(srcdir)/Modules/getbuildinfo.c + $(CC) -c $(PY_CORE_CFLAGS) \ + -DHGVERSION="\"`LC_ALL=C $(HGVERSION)`\"" \ + -DHGTAG="\"`LC_ALL=C $(HGTAG)`\"" \ + -DHGBRANCH="\"`LC_ALL=C $(HGBRANCH)`\"" \ + -o $@ $(srcdir)/Modules/getbuildinfo.c + +Modules/getpath.o: $(srcdir)/Modules/getpath.c Makefile + $(CC) -c $(PY_CORE_CFLAGS) -DPYTHONPATH='"$(PYTHONPATH)"' \ + -DPREFIX='"$(prefix)"' \ + -DEXEC_PREFIX='"$(exec_prefix)"' \ + -DVERSION='"$(VERSION)"' \ + -DVPATH='"$(VPATH)"' \ + -o $@ $(srcdir)/Modules/getpath.c + +Modules/python.o: $(srcdir)/Modules/python.c + $(MAINCC) -c $(PY_CORE_CFLAGS) -o $@ $(srcdir)/Modules/python.c + +Modules/_testembed.o: $(srcdir)/Modules/_testembed.c + $(MAINCC) -c $(PY_CORE_CFLAGS) -o $@ $(srcdir)/Modules/_testembed.c + +Modules/_sre.o: $(srcdir)/Modules/_sre.c $(srcdir)/Modules/sre.h $(srcdir)/Modules/sre_constants.h $(srcdir)/Modules/sre_lib.h + +Modules/posixmodule.o: $(srcdir)/Modules/posixmodule.c $(srcdir)/Modules/posixmodule.h + +Modules/grpmodule.o: $(srcdir)/Modules/grpmodule.c $(srcdir)/Modules/posixmodule.h + +Modules/pwdmodule.o: $(srcdir)/Modules/pwdmodule.c $(srcdir)/Modules/posixmodule.h + +Modules/signalmodule.o: $(srcdir)/Modules/signalmodule.c $(srcdir)/Modules/posixmodule.h + +Python/dynload_shlib.o: $(srcdir)/Python/dynload_shlib.c Makefile + $(CC) -c $(PY_CORE_CFLAGS) \ + $(if $(MULTIARCH),-DMULTIARCH='"$(MULTIARCH)"') \ + -DSOABI='"$(SOABI)"' \ + -o $@ $(srcdir)/Python/dynload_shlib.c + +Python/dynload_hpux.o: $(srcdir)/Python/dynload_hpux.c Makefile + $(CC) -c $(PY_CORE_CFLAGS) \ + -DSHLIB_EXT='"$(EXT_SUFFIX)"' \ + -o $@ $(srcdir)/Python/dynload_hpux.c + +Python/sysmodule.o: $(srcdir)/Python/sysmodule.c Makefile + $(CC) -c $(PY_CORE_CFLAGS) \ + -DABIFLAGS='"$(ABIFLAGS)"' \ + -DMULTIARCH='"$(MULTIARCH)"' \ + -o $@ $(srcdir)/Python/sysmodule.c + +$(IO_OBJS): $(IO_H) + +$(GRAMMAR_H): $(GRAMMAR_INPUT) $(PGENSRCS) + @$(MKDIR_P) Include + $(MAKE) $(PGEN) + $(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C) +$(GRAMMAR_C): $(GRAMMAR_H) $(GRAMMAR_INPUT) $(PGENSRCS) + $(MAKE) $(GRAMMAR_H) + touch $(GRAMMAR_C) + +$(PGEN): $(PGENOBJS) + $(CC) $(OPT) $(PY_LDFLAGS) $(PGENOBJS) $(LIBS) -o $(PGEN) + +Parser/grammar.o: $(srcdir)/Parser/grammar.c \ + $(srcdir)/Include/token.h \ + $(srcdir)/Include/grammar.h +Parser/metagrammar.o: $(srcdir)/Parser/metagrammar.c + +Parser/tokenizer_pgen.o: $(srcdir)/Parser/tokenizer.c +Parser/parsetok_pgen.o: $(srcdir)/Parser/parsetok.c +Parser/printgrammar.o: $(srcdir)/Parser/printgrammar.c + +Parser/pgenmain.o: $(srcdir)/Include/parsetok.h + +$(AST_H): $(AST_ASDL) $(ASDLGEN_FILES) + $(MKDIR_P) $(AST_H_DIR) + $(ASDLGEN) -h $(AST_H_DIR) $(AST_ASDL) + +$(AST_C): $(AST_H) $(AST_ASDL) $(ASDLGEN_FILES) + $(MKDIR_P) $(AST_C_DIR) + $(ASDLGEN) -c $(AST_C_DIR) $(AST_ASDL) + +Python/compile.o Python/symtable.o Python/ast.o: $(GRAMMAR_H) $(AST_H) + +Python/getplatform.o: $(srcdir)/Python/getplatform.c + $(CC) -c $(PY_CORE_CFLAGS) -DPLATFORM='"$(MACHDEP)"' -o $@ $(srcdir)/Python/getplatform.c + +Python/importdl.o: $(srcdir)/Python/importdl.c + $(CC) -c $(PY_CORE_CFLAGS) -I$(DLINCLDIR) -o $@ $(srcdir)/Python/importdl.c + +Objects/unicodectype.o: $(srcdir)/Objects/unicodectype.c \ + $(srcdir)/Objects/unicodetype_db.h + +BYTESTR_DEPS = \ + $(srcdir)/Objects/stringlib/count.h \ + $(srcdir)/Objects/stringlib/ctype.h \ + $(srcdir)/Objects/stringlib/fastsearch.h \ + $(srcdir)/Objects/stringlib/find.h \ + $(srcdir)/Objects/stringlib/join.h \ + $(srcdir)/Objects/stringlib/partition.h \ + $(srcdir)/Objects/stringlib/split.h \ + $(srcdir)/Objects/stringlib/stringdefs.h \ + $(srcdir)/Objects/stringlib/transmogrify.h + +UNICODE_DEPS = \ + $(srcdir)/Objects/stringlib/asciilib.h \ + $(srcdir)/Objects/stringlib/codecs.h \ + $(srcdir)/Objects/stringlib/count.h \ + $(srcdir)/Objects/stringlib/fastsearch.h \ + $(srcdir)/Objects/stringlib/find.h \ + $(srcdir)/Objects/stringlib/find_max_char.h \ + $(srcdir)/Objects/stringlib/localeutil.h \ + $(srcdir)/Objects/stringlib/partition.h \ + $(srcdir)/Objects/stringlib/replace.h \ + $(srcdir)/Objects/stringlib/split.h \ + $(srcdir)/Objects/stringlib/ucs1lib.h \ + $(srcdir)/Objects/stringlib/ucs2lib.h \ + $(srcdir)/Objects/stringlib/ucs4lib.h \ + $(srcdir)/Objects/stringlib/undef.h \ + $(srcdir)/Objects/stringlib/unicode_format.h \ + $(srcdir)/Objects/stringlib/unicodedefs.h + +Objects/bytesobject.o: $(srcdir)/Objects/bytesobject.c $(BYTESTR_DEPS) + +Objects/bytearrayobject.o: $(srcdir)/Objects/bytearrayobject.c $(BYTESTR_DEPS) + +Objects/unicodeobject.o: $(srcdir)/Objects/unicodeobject.c $(UNICODE_DEPS) + +Objects/dictobject.o: $(srcdir)/Objects/stringlib/eq.h +Objects/setobject.o: $(srcdir)/Objects/stringlib/eq.h + +$(OPCODETARGETS_H): $(OPCODETARGETGEN_FILES) + $(OPCODETARGETGEN) $(OPCODETARGETS_H) + +Python/ceval.o: $(OPCODETARGETS_H) $(srcdir)/Python/ceval_gil.h + +Python/frozen.o: Python/importlib.h + +Objects/typeobject.o: Objects/typeslots.inc +Objects/typeslots.inc: $(srcdir)/Include/typeslots.h $(srcdir)/Objects/typeslots.py + $(PYTHON) $(srcdir)/Objects/typeslots.py < $(srcdir)/Include/typeslots.h > Objects/typeslots.inc + +############################################################################ +# Header files + +PYTHON_HEADERS= \ + $(srcdir)/Include/Python.h \ + $(srcdir)/Include/abstract.h \ + $(srcdir)/Include/accu.h \ + $(srcdir)/Include/asdl.h \ + $(srcdir)/Include/ast.h \ + $(srcdir)/Include/bltinmodule.h \ + $(srcdir)/Include/bitset.h \ + $(srcdir)/Include/boolobject.h \ + $(srcdir)/Include/bytes_methods.h \ + $(srcdir)/Include/bytearrayobject.h \ + $(srcdir)/Include/bytesobject.h \ + $(srcdir)/Include/cellobject.h \ + $(srcdir)/Include/ceval.h \ + $(srcdir)/Include/classobject.h \ + $(srcdir)/Include/code.h \ + $(srcdir)/Include/codecs.h \ + $(srcdir)/Include/compile.h \ + $(srcdir)/Include/complexobject.h \ + $(srcdir)/Include/descrobject.h \ + $(srcdir)/Include/dictobject.h \ + $(srcdir)/Include/dtoa.h \ + $(srcdir)/Include/dynamic_annotations.h \ + $(srcdir)/Include/enumobject.h \ + $(srcdir)/Include/errcode.h \ + $(srcdir)/Include/eval.h \ + $(srcdir)/Include/fileobject.h \ + $(srcdir)/Include/fileutils.h \ + $(srcdir)/Include/floatobject.h \ + $(srcdir)/Include/frameobject.h \ + $(srcdir)/Include/funcobject.h \ + $(srcdir)/Include/genobject.h \ + $(srcdir)/Include/import.h \ + $(srcdir)/Include/intrcheck.h \ + $(srcdir)/Include/iterobject.h \ + $(srcdir)/Include/listobject.h \ + $(srcdir)/Include/longintrepr.h \ + $(srcdir)/Include/longobject.h \ + $(srcdir)/Include/marshal.h \ + $(srcdir)/Include/memoryobject.h \ + $(srcdir)/Include/metagrammar.h \ + $(srcdir)/Include/methodobject.h \ + $(srcdir)/Include/modsupport.h \ + $(srcdir)/Include/moduleobject.h \ + $(srcdir)/Include/namespaceobject.h \ + $(srcdir)/Include/node.h \ + $(srcdir)/Include/object.h \ + $(srcdir)/Include/objimpl.h \ + $(srcdir)/Include/opcode.h \ + $(srcdir)/Include/osdefs.h \ + $(srcdir)/Include/patchlevel.h \ + $(srcdir)/Include/pgen.h \ + $(srcdir)/Include/pgenheaders.h \ + $(srcdir)/Include/pyarena.h \ + $(srcdir)/Include/pyatomic.h \ + $(srcdir)/Include/pycapsule.h \ + $(srcdir)/Include/pyctype.h \ + $(srcdir)/Include/pydebug.h \ + $(srcdir)/Include/pyerrors.h \ + $(srcdir)/Include/pyfpe.h \ + $(srcdir)/Include/pyhash.h \ + $(srcdir)/Include/pymath.h \ + $(srcdir)/Include/pygetopt.h \ + $(srcdir)/Include/pymacro.h \ + $(srcdir)/Include/pymem.h \ + $(srcdir)/Include/pyport.h \ + $(srcdir)/Include/pystate.h \ + $(srcdir)/Include/pystrcmp.h \ + $(srcdir)/Include/pystrtod.h \ + $(srcdir)/Include/pythonrun.h \ + $(srcdir)/Include/pythread.h \ + $(srcdir)/Include/pytime.h \ + $(srcdir)/Include/rangeobject.h \ + $(srcdir)/Include/setobject.h \ + $(srcdir)/Include/sliceobject.h \ + $(srcdir)/Include/structmember.h \ + $(srcdir)/Include/structseq.h \ + $(srcdir)/Include/symtable.h \ + $(srcdir)/Include/sysmodule.h \ + $(srcdir)/Include/traceback.h \ + $(srcdir)/Include/tupleobject.h \ + $(srcdir)/Include/ucnhash.h \ + $(srcdir)/Include/unicodeobject.h \ + $(srcdir)/Include/warnings.h \ + $(srcdir)/Include/weakrefobject.h \ + pyconfig.h \ + $(PARSER_HEADERS) \ + $(AST_H) + +$(LIBRARY_OBJS) $(MODOBJS) Modules/python.o: $(PYTHON_HEADERS) + + +###################################################################### + +TESTOPTS= $(EXTRATESTOPTS) +TESTPYTHON= $(RUNSHARED) ./$(BUILDPYTHON) $(TESTPYTHONOPTS) +TESTRUNNER= $(TESTPYTHON) $(srcdir)/Tools/scripts/run_tests.py +TESTTIMEOUT= 3600 + +# Run a basic set of regression tests. +# This excludes some tests that are particularly resource-intensive. +test: all platform + $(TESTRUNNER) $(TESTOPTS) + +# Run the full test suite twice - once without .pyc files, and once with. +# In the past, we've had problems where bugs in the marshalling or +# elsewhere caused bytecode read from .pyc files to behave differently +# than bytecode generated directly from a .py source file. Sometimes +# the bytecode read from a .pyc file had the bug, sometimes the directly +# generated bytecode. This is sometimes a very shy bug needing a lot of +# sample data. +testall: all platform + -find $(srcdir)/Lib -name '*.py[co]' -print | xargs rm -f + $(TESTPYTHON) -E $(srcdir)/Lib/compileall.py + -find $(srcdir)/Lib -name '*.py[co]' -print | xargs rm -f + -$(TESTRUNNER) -u all $(TESTOPTS) + $(TESTRUNNER) -u all $(TESTOPTS) + +# Run the test suite for both architectures in a Universal build on OSX. +# Must be run on an Intel box. +testuniversal: all platform + if [ `arch` != 'i386' ];then \ + echo "This can only be used on OSX/i386" ;\ + exit 1 ;\ + fi + $(TESTRUNNER) -u all $(TESTOPTS) + $(RUNSHARED) /usr/libexec/oah/translate \ + ./$(BUILDPYTHON) -E -m test -j 0 -u all $(TESTOPTS) + +# Like testall, but with only one pass and without multiple processes. +# Run an optional script to include information about the build environment. +buildbottest: all platform + -@if which pybuildbot.identify >/dev/null 2>&1; then \ + pybuildbot.identify "CC='$(CC)'" "CXX='$(CXX)'"; \ + fi + $(TESTRUNNER) -j 1 -u all -W --timeout=$(TESTTIMEOUT) $(TESTOPTS) + +QUICKTESTOPTS= $(TESTOPTS) -x test_subprocess test_io test_lib2to3 \ + test_multibytecodec test_urllib2_localnet test_itertools \ + test_multiprocessing_fork test_multiprocessing_spawn \ + test_multiprocessing_forkserver \ + test_mailbox test_socket test_poll \ + test_select test_zipfile test_concurrent_futures +quicktest: all platform + $(TESTRUNNER) $(QUICKTESTOPTS) + + +install: commoninstall bininstall maninstall + if test "x$(ENSUREPIP)" != "xno" ; then \ + case $(ENSUREPIP) in \ + upgrade) ensurepip="--upgrade" ;; \ + install|*) ensurepip="" ;; \ + esac; \ + $(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \ + $$ensurepip --root=$(DESTDIR)/ ; \ + fi + +altinstall: commoninstall + if test "x$(ENSUREPIP)" != "xno" ; then \ + case $(ENSUREPIP) in \ + upgrade) ensurepip="--altinstall --upgrade" ;; \ + install|*) ensurepip="--altinstall" ;; \ + esac; \ + $(RUNSHARED) $(PYTHON_FOR_BUILD) -m ensurepip \ + $$ensurepip --root=$(DESTDIR)/ ; \ + fi + +commoninstall: \ + altbininstall libinstall inclinstall libainstall \ + sharedinstall oldsharedinstall altmaninstall \ + + +# Install shared libraries enabled by Setup +DESTDIRS= $(exec_prefix) $(LIBDIR) $(BINLIBDEST) $(DESTSHARED) + +oldsharedinstall: $(DESTSHARED) $(SHAREDMODS) + @for i in X $(SHAREDMODS); do \ + if test $$i != X; then \ + echo $(INSTALL_SHARED) $$i $(DESTSHARED)/`basename $$i`; \ + $(INSTALL_SHARED) $$i $(DESTDIR)$(DESTSHARED)/`basename $$i`; \ + fi; \ + done + +$(DESTSHARED): + @for i in $(DESTDIRS); \ + do \ + if test ! -d $(DESTDIR)$$i; then \ + echo "Creating directory $$i"; \ + $(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$i; \ + else true; \ + fi; \ + done + +# Install the interpreter with $(VERSION) affixed +# This goes into $(exec_prefix) +altbininstall: $(BUILDPYTHON) + @for i in $(BINDIR) $(LIBDIR); \ + do \ + if test ! -d $(DESTDIR)$$i; then \ + echo "Creating directory $$i"; \ + $(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$i; \ + else true; \ + fi; \ + done + if test "$(PYTHONFRAMEWORKDIR)" = "no-framework" ; then \ + $(INSTALL_PROGRAM) $(BUILDPYTHON) $(DESTDIR)$(BINDIR)/python$(LDVERSION)$(EXE); \ + else \ + $(INSTALL_PROGRAM) $(STRIPFLAG) Mac/pythonw $(DESTDIR)$(BINDIR)/python$(LDVERSION)$(EXE); \ + fi + -if test "$(VERSION)" != "$(LDVERSION)"; then \ + if test -f $(DESTDIR)$(BINDIR)/python$(VERSION)$(EXE) -o -h $(DESTDIR)$(BINDIR)/python$(VERSION)$(EXE); \ + then rm -f $(DESTDIR)$(BINDIR)/python$(VERSION)$(EXE); \ + fi; \ + (cd $(DESTDIR)$(BINDIR); $(LN) python$(LDVERSION)$(EXE) python$(VERSION)$(EXE)); \ + fi + if test -f $(LDLIBRARY) && test "$(PYTHONFRAMEWORKDIR)" = "no-framework" ; then \ + if test -n "$(DLLLIBRARY)" ; then \ + $(INSTALL_SHARED) $(DLLLIBRARY) $(DESTDIR)$(BINDIR); \ + else \ + $(INSTALL_SHARED) $(LDLIBRARY) $(DESTDIR)$(LIBDIR)/$(INSTSONAME); \ + if test $(LDLIBRARY) != $(INSTSONAME); then \ + (cd $(DESTDIR)$(LIBDIR); $(LN) -sf $(INSTSONAME) $(LDLIBRARY)) \ + fi \ + fi; \ + if test -n "$(PY3LIBRARY)"; then \ + $(INSTALL_SHARED) $(PY3LIBRARY) $(DESTDIR)$(LIBDIR)/$(PY3LIBRARY); \ + fi; \ + else true; \ + fi + if test "x$(LIPO_32BIT_FLAGS)" != "x" ; then \ + rm -f $(DESTDIR)$(BINDIR)python$(VERSION)-32$(EXE); \ + lipo $(LIPO_32BIT_FLAGS) \ + -output $(DESTDIR)$(BINDIR)/python$(VERSION)-32$(EXE) \ + $(DESTDIR)$(BINDIR)/python$(VERSION)$(EXE); \ + fi + +bininstall: altbininstall + -if test -f $(DESTDIR)$(BINDIR)/python3$(EXE) -o -h $(DESTDIR)$(BINDIR)/python3$(EXE); \ + then rm -f $(DESTDIR)$(BINDIR)/python3$(EXE); \ + else true; \ + fi + (cd $(DESTDIR)$(BINDIR); $(LN) -s python$(VERSION)$(EXE) python3$(EXE)) + -if test "$(VERSION)" != "$(LDVERSION)"; then \ + rm -f $(DESTDIR)$(BINDIR)/python$(VERSION)-config; \ + (cd $(DESTDIR)$(BINDIR); $(LN) -s python$(LDVERSION)-config python$(VERSION)-config); \ + rm -f $(DESTDIR)$(LIBPC)/python-$(LDVERSION).pc; \ + (cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION).pc python-$(LDVERSION).pc); \ + fi + -rm -f $(DESTDIR)$(BINDIR)/python3-config + (cd $(DESTDIR)$(BINDIR); $(LN) -s python$(VERSION)-config python3-config) + -rm -f $(DESTDIR)$(LIBPC)/python3.pc + (cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION).pc python3.pc) + -rm -f $(DESTDIR)$(BINDIR)/idle3 + (cd $(DESTDIR)$(BINDIR); $(LN) -s idle$(VERSION) idle3) + -rm -f $(DESTDIR)$(BINDIR)/pydoc3 + (cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3) + -rm -f $(DESTDIR)$(BINDIR)/2to3 + (cd $(DESTDIR)$(BINDIR); $(LN) -s 2to3-$(VERSION) 2to3) + -rm -f $(DESTDIR)$(BINDIR)/pyvenv + (cd $(DESTDIR)$(BINDIR); $(LN) -s pyvenv-$(VERSION) pyvenv) + if test "x$(LIPO_32BIT_FLAGS)" != "x" ; then \ + rm -f $(DESTDIR)$(BINDIR)/python3-32$(EXE); \ + (cd $(DESTDIR)$(BINDIR); $(LN) -s python$(VERSION)-32$(EXE) python3-32$(EXE)) \ + fi + +# Install the versioned manual page +altmaninstall: + @for i in $(MANDIR) $(MANDIR)/man1; \ + do \ + if test ! -d $(DESTDIR)$$i; then \ + echo "Creating directory $$i"; \ + $(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$i; \ + else true; \ + fi; \ + done + $(INSTALL_DATA) $(srcdir)/Misc/python.man \ + $(DESTDIR)$(MANDIR)/man1/python$(VERSION).1 + +# Install the unversioned manual page +maninstall: altmaninstall + -rm -f $(DESTDIR)$(MANDIR)/man1/python3.1 + (cd $(DESTDIR)$(MANDIR)/man1; $(LN) -s python$(VERSION).1 python3.1) + +# Install the library +PLATDIR= plat-$(MULTIARCH) +EXTRAPLATDIR= @EXTRAPLATDIR@ +MACHDEPS= $(PLATDIR) $(EXTRAPLATDIR) +XMLLIBSUBDIRS= xml xml/dom xml/etree xml/parsers xml/sax +LIBSUBDIRS= tkinter tkinter/test tkinter/test/test_tkinter \ + tkinter/test/test_ttk site-packages test \ + test/audiodata \ + test/capath test/data \ + test/cjkencodings test/decimaltestdata test/xmltestdata \ + test/imghdrdata \ + test/subprocessdata test/sndhdrdata test/support \ + test/tracedmodules test/encoded_modules \ + test/test_importlib/namespace_pkgs \ + test/test_importlib/namespace_pkgs/both_portions \ + test/test_importlib/namespace_pkgs/both_portions/foo \ + test/test_importlib/namespace_pkgs/not_a_namespace_pkg \ + test/test_importlib/namespace_pkgs/not_a_namespace_pkg/foo \ + test/test_importlib/namespace_pkgs/portion1 \ + test/test_importlib/namespace_pkgs/portion1/foo \ + test/test_importlib/namespace_pkgs/portion2 \ + test/test_importlib/namespace_pkgs/portion2/foo \ + test/test_importlib/namespace_pkgs/project1 \ + test/test_importlib/namespace_pkgs/project1/parent \ + test/test_importlib/namespace_pkgs/project1/parent/child \ + test/test_importlib/namespace_pkgs/project2 \ + test/test_importlib/namespace_pkgs/project2/parent \ + test/test_importlib/namespace_pkgs/project2/parent/child \ + test/test_importlib/namespace_pkgs/project3 \ + test/test_importlib/namespace_pkgs/project3/parent \ + test/test_importlib/namespace_pkgs/project3/parent/child \ + test/test_importlib/namespace_pkgs/module_and_namespace_package \ + test/test_importlib/namespace_pkgs/module_and_namespace_package/a_test \ + asyncio \ + test/test_asyncio \ + collections concurrent concurrent/futures encodings \ + email email/mime test/test_email test/test_email/data \ + ensurepip ensurepip/_bundled \ + html json test/test_json http dbm xmlrpc \ + sqlite3 sqlite3/test \ + logging csv wsgiref urllib \ + lib2to3 lib2to3/fixes lib2to3/pgen2 lib2to3/tests \ + lib2to3/tests/data lib2to3/tests/data/fixers \ + lib2to3/tests/data/fixers/myfixes \ + ctypes ctypes/test ctypes/macholib \ + idlelib idlelib/Icons idlelib/idle_test \ + distutils distutils/command distutils/tests $(XMLLIBSUBDIRS) \ + importlib test/test_importlib test/test_importlib/builtin \ + test/test_importlib/extension test/test_importlib/frozen \ + test/test_importlib/import_ test/test_importlib/source \ + turtledemo \ + multiprocessing multiprocessing/dummy \ + unittest unittest/test unittest/test/testmock \ + venv venv/scripts venv/scripts/posix \ + curses pydoc_data $(MACHDEPS) +libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c + @for i in $(SCRIPTDIR) $(LIBDEST); \ + do \ + if test ! -d $(DESTDIR)$$i; then \ + echo "Creating directory $$i"; \ + $(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$i; \ + else true; \ + fi; \ + done + @for d in $(LIBSUBDIRS); \ + do \ + a=$(srcdir)/Lib/$$d; \ + if test ! -d $$a; then continue; else true; fi; \ + b=$(LIBDEST)/$$d; \ + if test ! -d $(DESTDIR)$$b; then \ + echo "Creating directory $$b"; \ + $(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$b; \ + else true; \ + fi; \ + done + @for i in $(srcdir)/Lib/*.py `cat pybuilddir.txt`/_sysconfigdata.py; \ + do \ + if test -x $$i; then \ + $(INSTALL_SCRIPT) $$i $(DESTDIR)$(LIBDEST); \ + echo $(INSTALL_SCRIPT) $$i $(LIBDEST); \ + else \ + $(INSTALL_DATA) $$i $(DESTDIR)$(LIBDEST); \ + echo $(INSTALL_DATA) $$i $(LIBDEST); \ + fi; \ + done + @for d in $(LIBSUBDIRS); \ + do \ + a=$(srcdir)/Lib/$$d; \ + if test ! -d $$a; then continue; else true; fi; \ + if test `ls $$a | wc -l` -lt 1; then continue; fi; \ + b=$(LIBDEST)/$$d; \ + for i in $$a/*; \ + do \ + case $$i in \ + *CVS) ;; \ + *.py[co]) ;; \ + *.orig) ;; \ + *~) ;; \ + *) \ + if test -d $$i; then continue; fi; \ + if test -x $$i; then \ + echo $(INSTALL_SCRIPT) $$i $$b; \ + $(INSTALL_SCRIPT) $$i $(DESTDIR)$$b; \ + else \ + echo $(INSTALL_DATA) $$i $$b; \ + $(INSTALL_DATA) $$i $(DESTDIR)$$b; \ + fi;; \ + esac; \ + done; \ + done + $(INSTALL_DATA) $(srcdir)/LICENSE $(DESTDIR)$(LIBDEST)/LICENSE.txt + if test -d $(DESTDIR)$(LIBDEST)/distutils/tests; then \ + $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \ + $(DESTDIR)$(LIBDEST)/distutils/tests ; \ + fi + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \ + -d $(LIBDEST) -f \ + -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ + $(DESTDIR)$(LIBDEST) + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + $(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \ + -d $(LIBDEST) -f \ + -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ + $(DESTDIR)$(LIBDEST) + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \ + -d $(LIBDEST)/site-packages -f \ + -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + $(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \ + -d $(LIBDEST)/site-packages -f \ + -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt + -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ + $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/PatternGrammar.txt + +# Create the PLATDIR source directory, if one wasn't distributed.. +$(srcdir)/Lib/$(PLATDIR): + mkdir $(srcdir)/Lib/$(PLATDIR) + cp $(srcdir)/Lib/plat-generic/regen $(srcdir)/Lib/$(PLATDIR)/regen + if [ -n "$(MULTIARCH)" ]; then \ + cp -p $(srcdir)/Lib/plat-linux/*.py $(srcdir)/Lib/$(PLATDIR)/.; \ + rm -f $(srcdir)/Lib/$(PLATDIR)/IN.py; \ + fi + export PATH; PATH="`pwd`:$$PATH"; \ + export PYTHONPATH; PYTHONPATH="`pwd`/Lib"; \ + export DYLD_FRAMEWORK_PATH; DYLD_FRAMEWORK_PATH="`pwd`"; \ + export EXE; EXE="$(BUILDEXE)"; \ + if [ -n "$(MULTIARCH)" ]; then export MULTIARCH; MULTIARCH=$(MULTIARCH); fi; \ + export PYTHON_FOR_BUILD; \ + if [ "$(BUILD_GNU_TYPE)" = "$(HOST_GNU_TYPE)" ]; then \ + PYTHON_FOR_BUILD="$(BUILDPYTHON)"; \ + else \ + PYTHON_FOR_BUILD="$(PYTHON_FOR_BUILD)"; \ + fi; \ + cd $(srcdir)/Lib/$(PLATDIR); $(RUNSHARED) ./regen + +python-config: $(srcdir)/Misc/python-config.in Misc/python-config.sh + # Substitution happens here, as the completely-expanded BINDIR + # is not available in configure + sed -e "s,@EXENAME@,$(BINDIR)/python$(LDVERSION)$(EXE)," < $(srcdir)/Misc/python-config.in >python-config.py + # Replace makefile compat. variable references with shell script compat. ones; $(VAR) -> ${VAR} + sed -e 's,\$$(\([A-Za-z0-9_]*\)),\$$\{\1\},g' < Misc/python-config.sh >python-config + # On Darwin, always use the python version of the script, the shell + # version doesn't use the compiler customizations that are provided + # in python (_osx_support.py). + if test `uname -s` = Darwin; then \ + cp python-config.py python-config; \ + fi + + +# Install the include files +INCLDIRSTOMAKE=$(INCLUDEDIR) $(CONFINCLUDEDIR) $(INCLUDEPY) $(CONFINCLUDEPY) +inclinstall: + @for i in $(INCLDIRSTOMAKE); \ + do \ + if test ! -d $(DESTDIR)$$i; then \ + echo "Creating directory $$i"; \ + $(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$i; \ + else true; \ + fi; \ + done + @for i in $(srcdir)/Include/*.h; \ + do \ + echo $(INSTALL_DATA) $$i $(INCLUDEPY); \ + $(INSTALL_DATA) $$i $(DESTDIR)$(INCLUDEPY); \ + done + $(INSTALL_DATA) pyconfig.h $(DESTDIR)$(CONFINCLUDEPY)/pyconfig.h + +# Install the library and miscellaneous stuff needed for extending/embedding +# This goes into $(exec_prefix) +LIBPL= $(LIBDEST)/config-$(LDVERSION)-$(MULTIARCH) + +# pkgconfig directory +LIBPC= $(LIBDIR)/$(MULTIARCH)/pkgconfig + +libainstall: all python-config + @for i in $(LIBDIR) $(LIBPL) $(LIBPC); \ + do \ + if test ! -d $(DESTDIR)$$i; then \ + echo "Creating directory $$i"; \ + $(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$i; \ + else true; \ + fi; \ + done + @if test -d $(LIBRARY); then :; else \ + if test "$(PYTHONFRAMEWORKDIR)" = no-framework; then \ + if test "$(SHLIB_SUFFIX)" = .dll; then \ + $(INSTALL_DATA) $(LDLIBRARY) $(DESTDIR)$(LIBPL) ; \ + else \ + $(INSTALL_DATA) $(LIBRARY) $(DESTDIR)$(LIBPL)/$(LIBRARY) ; \ + $(RANLIB) $(DESTDIR)$(LIBPL)/$(LIBRARY) ; \ + fi; \ + else \ + echo Skip install of $(LIBRARY) - use make frameworkinstall; \ + fi; \ + fi + $(INSTALL_DATA) Modules/config.c $(DESTDIR)$(LIBPL)/config.c + $(INSTALL_DATA) Modules/python.o $(DESTDIR)$(LIBPL)/python.o + $(INSTALL_DATA) $(srcdir)/Modules/config.c.in $(DESTDIR)$(LIBPL)/config.c.in + $(INSTALL_DATA) Makefile $(DESTDIR)$(LIBPL)/Makefile + $(INSTALL_DATA) Modules/Setup $(DESTDIR)$(LIBPL)/Setup + $(INSTALL_DATA) Modules/Setup.local $(DESTDIR)$(LIBPL)/Setup.local + $(INSTALL_DATA) Modules/Setup.config $(DESTDIR)$(LIBPL)/Setup.config + $(INSTALL_DATA) Misc/python.pc $(DESTDIR)$(LIBPC)/python-$(VERSION).pc + $(INSTALL_SCRIPT) $(srcdir)/Modules/makesetup $(DESTDIR)$(LIBPL)/makesetup + $(INSTALL_SCRIPT) $(srcdir)/install-sh $(DESTDIR)$(LIBPL)/install-sh + $(INSTALL_SCRIPT) python-config.py $(DESTDIR)$(LIBPL)/python-config.py + $(INSTALL_SCRIPT) python-config $(DESTDIR)$(BINDIR)/python$(LDVERSION)-config + @if [ -s Modules/python.exp -a \ + "`echo $(MACHDEP) | sed 's/^\(...\).*/\1/'`" = "aix" ]; then \ + echo; echo "Installing support files for building shared extension modules on AIX:"; \ + $(INSTALL_DATA) Modules/python.exp \ + $(DESTDIR)$(LIBPL)/python.exp; \ + echo; echo "$(LIBPL)/python.exp"; \ + $(INSTALL_SCRIPT) $(srcdir)/Modules/makexp_aix \ + $(DESTDIR)$(LIBPL)/makexp_aix; \ + echo "$(LIBPL)/makexp_aix"; \ + $(INSTALL_SCRIPT) $(srcdir)/Modules/ld_so_aix \ + $(DESTDIR)$(LIBPL)/ld_so_aix; \ + echo "$(LIBPL)/ld_so_aix"; \ + echo; echo "See Misc/AIX-NOTES for details."; \ + else true; \ + fi + +# Install the dynamically loadable modules +# This goes into $(exec_prefix) +sharedinstall: sharedmods + $(RUNSHARED) $(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \ + --prefix=$(prefix) \ + --install-scripts=$(BINDIR) \ + --install-platlib=$(DESTSHARED) \ + --root=$(DESTDIR)/ + -rm $(DESTDIR)$(DESTSHARED)/_sysconfigdata.py + -rm -r $(DESTDIR)$(DESTSHARED)/__pycache__ + +# Here are a couple of targets for MacOSX again, to install a full +# framework-based Python. frameworkinstall installs everything, the +# subtargets install specific parts. Much of the actual work is offloaded to +# the Makefile in Mac +# +# +# This target is here for backward compatiblity, previous versions of Python +# hadn't integrated framework installation in the normal install process. +frameworkinstall: install + +# On install, we re-make the framework +# structure in the install location, /Library/Frameworks/ or the argument to +# --enable-framework. If --enable-framework has been specified then we have +# automatically set prefix to the location deep down in the framework, so we +# only have to cater for the structural bits of the framework. + +frameworkinstallframework: frameworkinstallstructure install frameworkinstallmaclib + +frameworkinstallstructure: $(LDLIBRARY) + @if test "$(PYTHONFRAMEWORKDIR)" = no-framework; then \ + echo Not configured with --enable-framework; \ + exit 1; \ + else true; \ + fi + @for i in $(prefix)/Resources/English.lproj $(prefix)/lib; do\ + if test ! -d $(DESTDIR)$$i; then \ + echo "Creating directory $(DESTDIR)$$i"; \ + $(INSTALL) -d -m $(DIRMODE) $(DESTDIR)$$i; \ + else true; \ + fi; \ + done + $(LN) -fsn include/python$(LDVERSION) $(DESTDIR)$(prefix)/Headers + sed 's/%VERSION%/'"`$(RUNSHARED) ./$(BUILDPYTHON) -c 'import platform; print(platform.python_version())'`"'/g' < $(RESSRCDIR)/Info.plist > $(DESTDIR)$(prefix)/Resources/Info.plist + $(LN) -fsn $(VERSION) $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Versions/Current + $(LN) -fsn Versions/Current/$(PYTHONFRAMEWORK) $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/$(PYTHONFRAMEWORK) + $(LN) -fsn Versions/Current/Headers $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Headers + $(LN) -fsn Versions/Current/Resources $(DESTDIR)$(PYTHONFRAMEWORKINSTALLDIR)/Resources + $(INSTALL_SHARED) $(LDLIBRARY) $(DESTDIR)$(PYTHONFRAMEWORKPREFIX)/$(LDLIBRARY) + +# This installs Mac/Lib into the framework +# Install a number of symlinks to keep software that expects a normal unix +# install (which includes python-config) happy. +frameworkinstallmaclib: + $(LN) -fs "../../../$(PYTHONFRAMEWORK)" "$(DESTDIR)$(prefix)/lib/python$(VERSION)/config-$(LDVERSION)/libpython$(LDVERSION).a" + $(LN) -fs "../../../$(PYTHONFRAMEWORK)" "$(DESTDIR)$(prefix)/lib/python$(VERSION)/config-$(LDVERSION)/libpython$(LDVERSION).dylib" + $(LN) -fs "../../../$(PYTHONFRAMEWORK)" "$(DESTDIR)$(prefix)/lib/python$(VERSION)/config-$(LDVERSION)/libpython$(VERSION).a" + $(LN) -fs "../../../$(PYTHONFRAMEWORK)" "$(DESTDIR)$(prefix)/lib/python$(VERSION)/config-$(LDVERSION)/libpython$(VERSION).dylib" + $(LN) -fs "../$(PYTHONFRAMEWORK)" "$(DESTDIR)$(prefix)/lib/libpython$(LDVERSION).dylib" + $(LN) -fs "../$(PYTHONFRAMEWORK)" "$(DESTDIR)$(prefix)/lib/libpython$(VERSION).dylib" + +# This installs the IDE, the Launcher and other apps into /Applications +frameworkinstallapps: + cd Mac && $(MAKE) installapps DESTDIR="$(DESTDIR)" + +# Build the bootstrap executable that will spawn the interpreter inside +# an app bundle within the framework. This allows the interpreter to +# run OS X GUI APIs. +frameworkpythonw: + cd Mac && $(MAKE) pythonw + +# This installs the python* and other bin symlinks in $prefix/bin or in +# a bin directory relative to the framework root +frameworkinstallunixtools: + cd Mac && $(MAKE) installunixtools DESTDIR="$(DESTDIR)" + +frameworkaltinstallunixtools: + cd Mac && $(MAKE) altinstallunixtools DESTDIR="$(DESTDIR)" + +# This installs the Tools into the applications directory. +# It is not part of a normal frameworkinstall +frameworkinstallextras: + cd Mac && $(MAKE) installextras DESTDIR="$(DESTDIR)" + +# This installs a few of the useful scripts in Tools/scripts +scriptsinstall: + SRCDIR=$(srcdir) $(RUNSHARED) \ + $(PYTHON_FOR_BUILD) $(srcdir)/Tools/scripts/setup.py install \ + --prefix=$(prefix) \ + --install-scripts=$(BINDIR) \ + --root=$(DESTDIR)/ + +# Build the toplevel Makefile +Makefile.pre: $(srcdir)/Makefile.pre.in config.status + CONFIG_FILES=Makefile.pre CONFIG_HEADERS= $(SHELL) config.status + $(MAKE) -f Makefile.pre Makefile + +# Run the configure script. +config.status: $(srcdir)/configure + $(SHELL) $(srcdir)/configure $(CONFIG_ARGS) + +.PRECIOUS: config.status $(BUILDPYTHON) Makefile Makefile.pre + +# Some make's put the object file in the current directory +.c.o: + $(CC) -c $(PY_CORE_CFLAGS) -o $@ $< + +# Run reindent on the library +reindent: + ./$(BUILDPYTHON) $(srcdir)/Tools/scripts/reindent.py -r $(srcdir)/Lib + +# Rerun configure with the same options as it was run last time, +# provided the config.status script exists +recheck: + $(SHELL) config.status --recheck + $(SHELL) config.status + +# Rebuild the configure script from configure.ac; also rebuild pyconfig.h.in +autoconf: + (cd $(srcdir); autoconf -Wall) + (cd $(srcdir); autoheader -Wall) + +# Create a tags file for vi +tags:: + cd $(srcdir); \ + ctags -w -t Include/*.h; \ + for i in $(SRCDIRS); do ctags -w -t -a $$i/*.[ch]; \ + done; \ + sort -o tags tags + +# Create a tags file for GNU Emacs +TAGS:: + cd $(srcdir); \ + etags Include/*.h; \ + for i in $(SRCDIRS); do etags -a $$i/*.[ch]; done + +# This fixes up the mtimes of checked-in generated files, assuming that they +# only *appear* to be outdated because of checkout order. +# This is run while preparing a source release tarball, and can be run manually +# to avoid bootstrap issues. +touch: + cd $(srcdir); \ + hg --config extensions.touch=Tools/hg/hgtouch.py touch -v + +# Sanitation targets -- clean leaves libraries, executables and tags +# files, which clobber removes as well +pycremoval: + -find $(srcdir) -depth -name '__pycache__' -exec rm -rf {} ';' + -find $(srcdir) -name '*.py[co]' -exec rm -f {} ';' + +rmtestturds: + -rm -f *BAD *GOOD *SKIPPED + -rm -rf OUT + -rm -f *.TXT + -rm -f *.txt + -rm -f gb-18030-2000.xml + +docclean: + -rm -rf Doc/build + -rm -rf Doc/tools/sphinx Doc/tools/pygments Doc/tools/docutils + +clean: pycremoval + find . -name '*.[oa]' -exec rm -f {} ';' + find . -name '*.s[ol]' -exec rm -f {} ';' + find . -name '*.so.[0-9]*.[0-9]*' -exec rm -f {} ';' + find build -name 'fficonfig.h' -exec rm -f {} ';' || true + find build -name '*.py' -exec rm -f {} ';' || true + find build -name '*.py[co]' -exec rm -f {} ';' || true + -rm -f pybuilddir.txt + -rm -f Lib/lib2to3/*Grammar*.pickle + -rm -f Modules/_testembed Modules/_freeze_importlib + +profile-removal: + find . -name '*.gc??' -exec rm -f {} ';' + rm -f $(COVERAGE_INFO) + rm -rf $(COVERAGE_REPORT) + +clobber: clean profile-removal + -rm -f $(BUILDPYTHON) $(PGEN) $(LIBRARY) $(LDLIBRARY) $(DLLLIBRARY) \ + tags TAGS \ + config.cache config.log pyconfig.h Modules/config.c + -rm -rf build platform + -rm -rf $(PYTHONFRAMEWORKDIR) + -rm -f python-config.py python-config + +# Make things extra clean, before making a distribution: +# remove all generated files, even Makefile[.pre] +# Keep configure and Python-ast.[ch], it's possible they can't be generated +distclean: clobber + for file in $(srcdir)/Lib/test/data/* ; do \ + if test "$$file" != "$(srcdir)/Lib/test/data/README"; then rm "$$file"; fi; \ + done + -rm -f core Makefile Makefile.pre config.status \ + Modules/Setup Modules/Setup.local Modules/Setup.config \ + Modules/ld_so_aix Modules/python.exp Misc/python.pc + -rm -f python*-gdb.py + find $(srcdir)/[a-zA-Z]* '(' -name '*.fdc' -o -name '*~' \ + -o -name '[@,#]*' -o -name '*.old' \ + -o -name '*.orig' -o -name '*.rej' \ + -o -name '*.bak' ')' \ + -exec rm -f {} ';' + +# Check for smelly exported symbols (not starting with Py/_Py) +smelly: all + nm -p $(LIBRARY) | \ + sed -n "/ [TDB] /s/.* //p" | grep -v "^_*Py" | sort -u; \ + +# Find files with funny names +funny: + find $(SUBDIRS) $(SUBDIRSTOO) \ + -type d \ + -o -name '*.[chs]' \ + -o -name '*.py' \ + -o -name '*.pyw' \ + -o -name '*.dat' \ + -o -name '*.el' \ + -o -name '*.fd' \ + -o -name '*.in' \ + -o -name '*.gif' \ + -o -name '*.txt' \ + -o -name '*.xml' \ + -o -name '*.xbm' \ + -o -name '*.xpm' \ + -o -name '*.uue' \ + -o -name '*.decTest' \ + -o -name '*.tmCommand' \ + -o -name '*.tmSnippet' \ + -o -name 'Setup' \ + -o -name 'Setup.*' \ + -o -name regen \ + -o -name README \ + -o -name NEWS \ + -o -name HISTORY \ + -o -name Makefile \ + -o -name ChangeLog \ + -o -name .hgignore \ + -o -name .bzrignore \ + -o -name MANIFEST \ + -o -print + +# Perform some verification checks on any modified files. +patchcheck: + $(RUNSHARED) ./$(BUILDPYTHON) $(srcdir)/Tools/scripts/patchcheck.py + +# Dependencies + +Python/thread.o: $(srcdir)/Python/thread_foobar.h $(srcdir)/Python/thread_nt.h $(srcdir)/Python/thread_pthread.h + +# Declare targets that aren't real files +.PHONY: all build_all sharedmods oldsharedmods test quicktest +.PHONY: install altinstall oldsharedinstall bininstall altbininstall +.PHONY: maninstall libinstall inclinstall libainstall sharedinstall +.PHONY: frameworkinstall frameworkinstallframework frameworkinstallstructure +.PHONY: frameworkinstallmaclib frameworkinstallapps frameworkinstallunixtools +.PHONY: frameworkaltinstallunixtools recheck autoconf clean clobber distclean +.PHONY: smelly funny patchcheck touch altmaninstall commoninstall +.PHONY: gdbhooks + +# IF YOU PUT ANYTHING HERE IT WILL GO AWAY +# Local Variables: +# mode: makefile +# End: + +# Rules appended by makedepend + +Modules/_threadmodule.o: $(srcdir)/Modules/_threadmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_threadmodule.c -o Modules/_threadmodule.o +Modules/_thread$(EXT_SUFFIX): Modules/_threadmodule.o; $(BLDSHARED) Modules/_threadmodule.o -o Modules/_thread$(EXT_SUFFIX) +Modules/signalmodule.o: $(srcdir)/Modules/signalmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/signalmodule.c -o Modules/signalmodule.o +Modules/signal$(EXT_SUFFIX): Modules/signalmodule.o; $(BLDSHARED) Modules/signalmodule.o -o Modules/signal$(EXT_SUFFIX) +Modules/arraymodule.o: $(srcdir)/Modules/arraymodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/arraymodule.c -o Modules/arraymodule.o +Modules/array$(EXT_SUFFIX): Modules/arraymodule.o; $(BLDSHARED) Modules/arraymodule.o -o Modules/array$(EXT_SUFFIX) +Modules/mathmodule.o: $(srcdir)/Modules/mathmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/mathmodule.c -o Modules/mathmodule.o +Modules/_math.o: $(srcdir)/Modules/_math.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_math.c -o Modules/_math.o +Modules/math$(EXT_SUFFIX): Modules/mathmodule.o Modules/_math.o; $(BLDSHARED) Modules/mathmodule.o Modules/_math.o -o Modules/math$(EXT_SUFFIX) +Modules/_struct.o: $(srcdir)/Modules/_struct.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_struct.c -o Modules/_struct.o +Modules/_struct$(EXT_SUFFIX): Modules/_struct.o; $(BLDSHARED) Modules/_struct.o -o Modules/_struct$(EXT_SUFFIX) +Modules/timemodule.o: $(srcdir)/Modules/timemodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/timemodule.c -o Modules/timemodule.o +Modules/time$(EXT_SUFFIX): Modules/timemodule.o; $(BLDSHARED) Modules/timemodule.o -lrt -o Modules/time$(EXT_SUFFIX) +Modules/_randommodule.o: $(srcdir)/Modules/_randommodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_randommodule.c -o Modules/_randommodule.o +Modules/_random$(EXT_SUFFIX): Modules/_randommodule.o; $(BLDSHARED) Modules/_randommodule.o -o Modules/_random$(EXT_SUFFIX) +Modules/_elementtree.o: $(srcdir)/Modules/_elementtree.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_elementtree.c -o Modules/_elementtree.o +Modules/_elementtree$(EXT_SUFFIX): Modules/_elementtree.o; $(BLDSHARED) Modules/_elementtree.o -lexpat -o Modules/_elementtree$(EXT_SUFFIX) +Modules/_pickle.o: $(srcdir)/Modules/_pickle.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_pickle.c -o Modules/_pickle.o +Modules/_pickle$(EXT_SUFFIX): Modules/_pickle.o; $(BLDSHARED) Modules/_pickle.o -o Modules/_pickle$(EXT_SUFFIX) +Modules/_datetimemodule.o: $(srcdir)/Modules/_datetimemodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_datetimemodule.c -o Modules/_datetimemodule.o +Modules/_datetime$(EXT_SUFFIX): Modules/_datetimemodule.o; $(BLDSHARED) Modules/_datetimemodule.o -o Modules/_datetime$(EXT_SUFFIX) +Modules/_bisectmodule.o: $(srcdir)/Modules/_bisectmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_bisectmodule.c -o Modules/_bisectmodule.o +Modules/_bisect$(EXT_SUFFIX): Modules/_bisectmodule.o; $(BLDSHARED) Modules/_bisectmodule.o -o Modules/_bisect$(EXT_SUFFIX) +Modules/_heapqmodule.o: $(srcdir)/Modules/_heapqmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_heapqmodule.c -o Modules/_heapqmodule.o +Modules/_heapq$(EXT_SUFFIX): Modules/_heapqmodule.o; $(BLDSHARED) Modules/_heapqmodule.o -o Modules/_heapq$(EXT_SUFFIX) +Modules/unicodedata.o: $(srcdir)/Modules/unicodedata.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/unicodedata.c -o Modules/unicodedata.o +Modules/unicodedata$(EXT_SUFFIX): Modules/unicodedata.o; $(BLDSHARED) Modules/unicodedata.o -o Modules/unicodedata$(EXT_SUFFIX) +Modules/fcntlmodule.o: $(srcdir)/Modules/fcntlmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/fcntlmodule.c -o Modules/fcntlmodule.o +Modules/fcntl$(EXT_SUFFIX): Modules/fcntlmodule.o; $(BLDSHARED) Modules/fcntlmodule.o -o Modules/fcntl$(EXT_SUFFIX) +Modules/spwdmodule.o: $(srcdir)/Modules/spwdmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/spwdmodule.c -o Modules/spwdmodule.o +Modules/spwd$(EXT_SUFFIX): Modules/spwdmodule.o; $(BLDSHARED) Modules/spwdmodule.o -o Modules/spwd$(EXT_SUFFIX) +Modules/grpmodule.o: $(srcdir)/Modules/grpmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/grpmodule.c -o Modules/grpmodule.o +Modules/grp$(EXT_SUFFIX): Modules/grpmodule.o; $(BLDSHARED) Modules/grpmodule.o -o Modules/grp$(EXT_SUFFIX) +Modules/selectmodule.o: $(srcdir)/Modules/selectmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/selectmodule.c -o Modules/selectmodule.o +Modules/select$(EXT_SUFFIX): Modules/selectmodule.o; $(BLDSHARED) Modules/selectmodule.o -o Modules/select$(EXT_SUFFIX) +Modules/socketmodule.o: $(srcdir)/Modules/socketmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/socketmodule.c -o Modules/socketmodule.o +Modules/_socket$(EXT_SUFFIX): Modules/socketmodule.o; $(BLDSHARED) Modules/socketmodule.o -o Modules/_socket$(EXT_SUFFIX) +Modules/_posixsubprocess.o: $(srcdir)/Modules/_posixsubprocess.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_posixsubprocess.c -o Modules/_posixsubprocess.o +Modules/_posixsubprocess$(EXT_SUFFIX): Modules/_posixsubprocess.o; $(BLDSHARED) Modules/_posixsubprocess.o -o Modules/_posixsubprocess$(EXT_SUFFIX) +Modules/md5module.o: $(srcdir)/Modules/md5module.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/md5module.c -o Modules/md5module.o +Modules/_md5$(EXT_SUFFIX): Modules/md5module.o; $(BLDSHARED) Modules/md5module.o -o Modules/_md5$(EXT_SUFFIX) +Modules/sha1module.o: $(srcdir)/Modules/sha1module.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/sha1module.c -o Modules/sha1module.o +Modules/_sha1$(EXT_SUFFIX): Modules/sha1module.o; $(BLDSHARED) Modules/sha1module.o -o Modules/_sha1$(EXT_SUFFIX) +Modules/sha256module.o: $(srcdir)/Modules/sha256module.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/sha256module.c -o Modules/sha256module.o +Modules/_sha256$(EXT_SUFFIX): Modules/sha256module.o; $(BLDSHARED) Modules/sha256module.o -o Modules/_sha256$(EXT_SUFFIX) +Modules/sha512module.o: $(srcdir)/Modules/sha512module.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/sha512module.c -o Modules/sha512module.o +Modules/_sha512$(EXT_SUFFIX): Modules/sha512module.o; $(BLDSHARED) Modules/sha512module.o -o Modules/_sha512$(EXT_SUFFIX) +Modules/syslogmodule.o: $(srcdir)/Modules/syslogmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/syslogmodule.c -o Modules/syslogmodule.o +Modules/syslog$(EXT_SUFFIX): Modules/syslogmodule.o; $(BLDSHARED) Modules/syslogmodule.o -o Modules/syslog$(EXT_SUFFIX) +Modules/binascii.o: $(srcdir)/Modules/binascii.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/binascii.c -o Modules/binascii.o +Modules/binascii$(EXT_SUFFIX): Modules/binascii.o; $(BLDSHARED) Modules/binascii.o -o Modules/binascii$(EXT_SUFFIX) +Modules/zlibmodule.o: $(srcdir)/Modules/zlibmodule.c; $(CC) $(PY_CORE_CFLAGS) -I$(prefix)/include -c $(srcdir)/Modules/zlibmodule.c -o Modules/zlibmodule.o +Modules/zlib$(EXT_SUFFIX): Modules/zlibmodule.o; $(BLDSHARED) Modules/zlibmodule.o -L$(exec_prefix)/lib -lz -o Modules/zlib$(EXT_SUFFIX) +Modules/pyexpat.o: $(srcdir)/Modules/pyexpat.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/pyexpat.c -o Modules/pyexpat.o +Modules/pyexpat$(EXT_SUFFIX): Modules/pyexpat.o; $(BLDSHARED) Modules/pyexpat.o -lexpat -o Modules/pyexpat$(EXT_SUFFIX) +Modules/posixmodule.o: $(srcdir)/Modules/posixmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/posixmodule.c -o Modules/posixmodule.o +Modules/posix$(EXT_SUFFIX): Modules/posixmodule.o; $(BLDSHARED) Modules/posixmodule.o -o Modules/posix$(EXT_SUFFIX) +Modules/errnomodule.o: $(srcdir)/Modules/errnomodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/errnomodule.c -o Modules/errnomodule.o +Modules/errno$(EXT_SUFFIX): Modules/errnomodule.o; $(BLDSHARED) Modules/errnomodule.o -o Modules/errno$(EXT_SUFFIX) +Modules/pwdmodule.o: $(srcdir)/Modules/pwdmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/pwdmodule.c -o Modules/pwdmodule.o +Modules/pwd$(EXT_SUFFIX): Modules/pwdmodule.o; $(BLDSHARED) Modules/pwdmodule.o -o Modules/pwd$(EXT_SUFFIX) +Modules/_sre.o: $(srcdir)/Modules/_sre.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_sre.c -o Modules/_sre.o +Modules/_sre$(EXT_SUFFIX): Modules/_sre.o; $(BLDSHARED) Modules/_sre.o -o Modules/_sre$(EXT_SUFFIX) +Modules/_codecsmodule.o: $(srcdir)/Modules/_codecsmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_codecsmodule.c -o Modules/_codecsmodule.o +Modules/_codecs$(EXT_SUFFIX): Modules/_codecsmodule.o; $(BLDSHARED) Modules/_codecsmodule.o -o Modules/_codecs$(EXT_SUFFIX) +Modules/_weakref.o: $(srcdir)/Modules/_weakref.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_weakref.c -o Modules/_weakref.o +Modules/_weakref$(EXT_SUFFIX): Modules/_weakref.o; $(BLDSHARED) Modules/_weakref.o -o Modules/_weakref$(EXT_SUFFIX) +Modules/_functoolsmodule.o: $(srcdir)/Modules/_functoolsmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_functoolsmodule.c -o Modules/_functoolsmodule.o +Modules/_functools$(EXT_SUFFIX): Modules/_functoolsmodule.o; $(BLDSHARED) Modules/_functoolsmodule.o -o Modules/_functools$(EXT_SUFFIX) +Modules/_operator.o: $(srcdir)/Modules/_operator.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_operator.c -o Modules/_operator.o +Modules/_operator$(EXT_SUFFIX): Modules/_operator.o; $(BLDSHARED) Modules/_operator.o -o Modules/_operator$(EXT_SUFFIX) +Modules/_collectionsmodule.o: $(srcdir)/Modules/_collectionsmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_collectionsmodule.c -o Modules/_collectionsmodule.o +Modules/_collections$(EXT_SUFFIX): Modules/_collectionsmodule.o; $(BLDSHARED) Modules/_collectionsmodule.o -o Modules/_collections$(EXT_SUFFIX) +Modules/itertoolsmodule.o: $(srcdir)/Modules/itertoolsmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/itertoolsmodule.c -o Modules/itertoolsmodule.o +Modules/itertools$(EXT_SUFFIX): Modules/itertoolsmodule.o; $(BLDSHARED) Modules/itertoolsmodule.o -o Modules/itertools$(EXT_SUFFIX) +Modules/atexitmodule.o: $(srcdir)/Modules/atexitmodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/atexitmodule.c -o Modules/atexitmodule.o +Modules/atexit$(EXT_SUFFIX): Modules/atexitmodule.o; $(BLDSHARED) Modules/atexitmodule.o -o Modules/atexit$(EXT_SUFFIX) +Modules/_stat.o: $(srcdir)/Modules/_stat.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_stat.c -o Modules/_stat.o +Modules/_stat$(EXT_SUFFIX): Modules/_stat.o; $(BLDSHARED) Modules/_stat.o -o Modules/_stat$(EXT_SUFFIX) +Modules/_localemodule.o: $(srcdir)/Modules/_localemodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_localemodule.c -o Modules/_localemodule.o +Modules/_locale$(EXT_SUFFIX): Modules/_localemodule.o; $(BLDSHARED) Modules/_localemodule.o -o Modules/_locale$(EXT_SUFFIX) +Modules/_iomodule.o: $(srcdir)/Modules/_io/_iomodule.c; $(CC) $(PY_CORE_CFLAGS) -I$(srcdir)/Modules/_io -c $(srcdir)/Modules/_io/_iomodule.c -o Modules/_iomodule.o +Modules/iobase.o: $(srcdir)/Modules/_io/iobase.c; $(CC) $(PY_CORE_CFLAGS) -I$(srcdir)/Modules/_io -c $(srcdir)/Modules/_io/iobase.c -o Modules/iobase.o +Modules/fileio.o: $(srcdir)/Modules/_io/fileio.c; $(CC) $(PY_CORE_CFLAGS) -I$(srcdir)/Modules/_io -c $(srcdir)/Modules/_io/fileio.c -o Modules/fileio.o +Modules/bytesio.o: $(srcdir)/Modules/_io/bytesio.c; $(CC) $(PY_CORE_CFLAGS) -I$(srcdir)/Modules/_io -c $(srcdir)/Modules/_io/bytesio.c -o Modules/bytesio.o +Modules/bufferedio.o: $(srcdir)/Modules/_io/bufferedio.c; $(CC) $(PY_CORE_CFLAGS) -I$(srcdir)/Modules/_io -c $(srcdir)/Modules/_io/bufferedio.c -o Modules/bufferedio.o +Modules/textio.o: $(srcdir)/Modules/_io/textio.c; $(CC) $(PY_CORE_CFLAGS) -I$(srcdir)/Modules/_io -c $(srcdir)/Modules/_io/textio.c -o Modules/textio.o +Modules/stringio.o: $(srcdir)/Modules/_io/stringio.c; $(CC) $(PY_CORE_CFLAGS) -I$(srcdir)/Modules/_io -c $(srcdir)/Modules/_io/stringio.c -o Modules/stringio.o +Modules/_io$(EXT_SUFFIX): Modules/_iomodule.o Modules/iobase.o Modules/fileio.o Modules/bytesio.o Modules/bufferedio.o Modules/textio.o Modules/stringio.o; $(BLDSHARED) Modules/_iomodule.o Modules/iobase.o Modules/fileio.o Modules/bytesio.o Modules/bufferedio.o Modules/textio.o Modules/stringio.o -o Modules/_io$(EXT_SUFFIX) +Modules/zipimport.o: $(srcdir)/Modules/zipimport.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/zipimport.c -o Modules/zipimport.o +Modules/zipimport$(EXT_SUFFIX): Modules/zipimport.o; $(BLDSHARED) Modules/zipimport.o -o Modules/zipimport$(EXT_SUFFIX) +Modules/faulthandler.o: $(srcdir)/Modules/faulthandler.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/faulthandler.c -o Modules/faulthandler.o +Modules/faulthandler$(EXT_SUFFIX): Modules/faulthandler.o; $(BLDSHARED) Modules/faulthandler.o -o Modules/faulthandler$(EXT_SUFFIX) +Modules/_tracemalloc.o: $(srcdir)/Modules/_tracemalloc.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/_tracemalloc.c -o Modules/_tracemalloc.o +Modules/hashtable.o: $(srcdir)/Modules/hashtable.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/hashtable.c -o Modules/hashtable.o +Modules/_tracemalloc$(EXT_SUFFIX): Modules/_tracemalloc.o Modules/hashtable.o; $(BLDSHARED) Modules/_tracemalloc.o Modules/hashtable.o -o Modules/_tracemalloc$(EXT_SUFFIX) +Modules/symtablemodule.o: $(srcdir)/Modules/symtablemodule.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/symtablemodule.c -o Modules/symtablemodule.o +Modules/_symtable$(EXT_SUFFIX): Modules/symtablemodule.o; $(BLDSHARED) Modules/symtablemodule.o -o Modules/_symtable$(EXT_SUFFIX) +Modules/xxsubtype.o: $(srcdir)/Modules/xxsubtype.c; $(CC) $(PY_CORE_CFLAGS) -c $(srcdir)/Modules/xxsubtype.c -o Modules/xxsubtype.o +Modules/xxsubtype$(EXT_SUFFIX): Modules/xxsubtype.o; $(BLDSHARED) Modules/xxsubtype.o -o Modules/xxsubtype$(EXT_SUFFIX) diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/lib2to3/Grammar.txt b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/lib2to3/Grammar.txt new file mode 100644 index 00000000..e667bcde --- /dev/null +++ b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/lib2to3/Grammar.txt @@ -0,0 +1,159 @@ +# Grammar for 2to3. This grammar supports Python 2.x and 3.x. + +# Note: Changing the grammar specified in this file will most likely +# require corresponding changes in the parser module +# (../Modules/parsermodule.c). If you can't make the changes to +# that module yourself, please co-ordinate the required changes +# with someone who can; ask around on python-dev for help. Fred +# Drake will probably be listening there. + +# NOTE WELL: You should also follow all the steps listed in PEP 306, +# "How to Change Python's Grammar" + +# Commands for Kees Blom's railroad program +#diagram:token NAME +#diagram:token NUMBER +#diagram:token STRING +#diagram:token NEWLINE +#diagram:token ENDMARKER +#diagram:token INDENT +#diagram:output\input python.bla +#diagram:token DEDENT +#diagram:output\textwidth 20.04cm\oddsidemargin 0.0cm\evensidemargin 0.0cm +#diagram:rules + +# Start symbols for the grammar: +# file_input is a module or sequence of commands read from an input file; +# single_input is a single interactive statement; +# eval_input is the input for the eval() and input() functions. +# NB: compound_stmt in single_input is followed by extra NEWLINE! +file_input: (NEWLINE | stmt)* ENDMARKER +single_input: NEWLINE | simple_stmt | compound_stmt NEWLINE +eval_input: testlist NEWLINE* ENDMARKER + +decorator: '@' dotted_name [ '(' [arglist] ')' ] NEWLINE +decorators: decorator+ +decorated: decorators (classdef | funcdef) +funcdef: 'def' NAME parameters ['->' test] ':' suite +parameters: '(' [typedargslist] ')' +typedargslist: ((tfpdef ['=' test] ',')* + ('*' [tname] (',' tname ['=' test])* [',' '**' tname] | '**' tname) + | tfpdef ['=' test] (',' tfpdef ['=' test])* [',']) +tname: NAME [':' test] +tfpdef: tname | '(' tfplist ')' +tfplist: tfpdef (',' tfpdef)* [','] +varargslist: ((vfpdef ['=' test] ',')* + ('*' [vname] (',' vname ['=' test])* [',' '**' vname] | '**' vname) + | vfpdef ['=' test] (',' vfpdef ['=' test])* [',']) +vname: NAME +vfpdef: vname | '(' vfplist ')' +vfplist: vfpdef (',' vfpdef)* [','] + +stmt: simple_stmt | compound_stmt +simple_stmt: small_stmt (';' small_stmt)* [';'] NEWLINE +small_stmt: (expr_stmt | print_stmt | del_stmt | pass_stmt | flow_stmt | + import_stmt | global_stmt | exec_stmt | assert_stmt) +expr_stmt: testlist_star_expr (augassign (yield_expr|testlist) | + ('=' (yield_expr|testlist_star_expr))*) +testlist_star_expr: (test|star_expr) (',' (test|star_expr))* [','] +augassign: ('+=' | '-=' | '*=' | '@=' | '/=' | '%=' | '&=' | '|=' | '^=' | + '<<=' | '>>=' | '**=' | '//=') +# For normal assignments, additional restrictions enforced by the interpreter +print_stmt: 'print' ( [ test (',' test)* [','] ] | + '>>' test [ (',' test)+ [','] ] ) +del_stmt: 'del' exprlist +pass_stmt: 'pass' +flow_stmt: break_stmt | continue_stmt | return_stmt | raise_stmt | yield_stmt +break_stmt: 'break' +continue_stmt: 'continue' +return_stmt: 'return' [testlist] +yield_stmt: yield_expr +raise_stmt: 'raise' [test ['from' test | ',' test [',' test]]] +import_stmt: import_name | import_from +import_name: 'import' dotted_as_names +import_from: ('from' ('.'* dotted_name | '.'+) + 'import' ('*' | '(' import_as_names ')' | import_as_names)) +import_as_name: NAME ['as' NAME] +dotted_as_name: dotted_name ['as' NAME] +import_as_names: import_as_name (',' import_as_name)* [','] +dotted_as_names: dotted_as_name (',' dotted_as_name)* +dotted_name: NAME ('.' NAME)* +global_stmt: ('global' | 'nonlocal') NAME (',' NAME)* +exec_stmt: 'exec' expr ['in' test [',' test]] +assert_stmt: 'assert' test [',' test] + +compound_stmt: if_stmt | while_stmt | for_stmt | try_stmt | with_stmt | funcdef | classdef | decorated +if_stmt: 'if' test ':' suite ('elif' test ':' suite)* ['else' ':' suite] +while_stmt: 'while' test ':' suite ['else' ':' suite] +for_stmt: 'for' exprlist 'in' testlist ':' suite ['else' ':' suite] +try_stmt: ('try' ':' suite + ((except_clause ':' suite)+ + ['else' ':' suite] + ['finally' ':' suite] | + 'finally' ':' suite)) +with_stmt: 'with' with_item (',' with_item)* ':' suite +with_item: test ['as' expr] +with_var: 'as' expr +# NB compile.c makes sure that the default except clause is last +except_clause: 'except' [test [(',' | 'as') test]] +suite: simple_stmt | NEWLINE INDENT stmt+ DEDENT + +# Backward compatibility cruft to support: +# [ x for x in lambda: True, lambda: False if x() ] +# even while also allowing: +# lambda x: 5 if x else 2 +# (But not a mix of the two) +testlist_safe: old_test [(',' old_test)+ [',']] +old_test: or_test | old_lambdef +old_lambdef: 'lambda' [varargslist] ':' old_test + +test: or_test ['if' or_test 'else' test] | lambdef +or_test: and_test ('or' and_test)* +and_test: not_test ('and' not_test)* +not_test: 'not' not_test | comparison +comparison: expr (comp_op expr)* +comp_op: '<'|'>'|'=='|'>='|'<='|'<>'|'!='|'in'|'not' 'in'|'is'|'is' 'not' +star_expr: '*' expr +expr: xor_expr ('|' xor_expr)* +xor_expr: and_expr ('^' and_expr)* +and_expr: shift_expr ('&' shift_expr)* +shift_expr: arith_expr (('<<'|'>>') arith_expr)* +arith_expr: term (('+'|'-') term)* +term: factor (('*'|'@'|'/'|'%'|'//') factor)* +factor: ('+'|'-'|'~') factor | power +power: atom trailer* ['**' factor] +atom: ('(' [yield_expr|testlist_gexp] ')' | + '[' [listmaker] ']' | + '{' [dictsetmaker] '}' | + '`' testlist1 '`' | + NAME | NUMBER | STRING+ | '.' '.' '.') +listmaker: (test|star_expr) ( comp_for | (',' (test|star_expr))* [','] ) +testlist_gexp: (test|star_expr) ( comp_for | (',' (test|star_expr))* [','] ) +lambdef: 'lambda' [varargslist] ':' test +trailer: '(' [arglist] ')' | '[' subscriptlist ']' | '.' NAME +subscriptlist: subscript (',' subscript)* [','] +subscript: test | [test] ':' [test] [sliceop] +sliceop: ':' [test] +exprlist: (expr|star_expr) (',' (expr|star_expr))* [','] +testlist: test (',' test)* [','] +dictsetmaker: ( (test ':' test (comp_for | (',' test ':' test)* [','])) | + (test (comp_for | (',' test)* [','])) ) + +classdef: 'class' NAME ['(' [arglist] ')'] ':' suite + +arglist: (argument ',')* (argument [','] + |'*' test (',' argument)* [',' '**' test] + |'**' test) +argument: test [comp_for] | test '=' test # Really [keyword '='] test + +comp_iter: comp_for | comp_if +comp_for: 'for' exprlist 'in' testlist_safe [comp_iter] +comp_if: 'if' old_test [comp_iter] + +testlist1: test (',' test)* + +# not used in grammar, but may appear in "node" passed from Parser to Compiler +encoding_decl: NAME + +yield_expr: 'yield' [yield_arg] +yield_arg: 'from' test | testlist diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/lib2to3/PatternGrammar.txt b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/lib2to3/PatternGrammar.txt new file mode 100644 index 00000000..36bf8148 --- /dev/null +++ b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/lib2to3/PatternGrammar.txt @@ -0,0 +1,28 @@ +# Copyright 2006 Google, Inc. All Rights Reserved. +# Licensed to PSF under a Contributor Agreement. + +# A grammar to describe tree matching patterns. +# Not shown here: +# - 'TOKEN' stands for any token (leaf node) +# - 'any' stands for any node (leaf or interior) +# With 'any' we can still specify the sub-structure. + +# The start symbol is 'Matcher'. + +Matcher: Alternatives ENDMARKER + +Alternatives: Alternative ('|' Alternative)* + +Alternative: (Unit | NegatedUnit)+ + +Unit: [NAME '='] ( STRING [Repeater] + | NAME [Details] [Repeater] + | '(' Alternatives ')' [Repeater] + | '[' Alternatives ']' + ) + +NegatedUnit: 'not' (STRING | NAME [Details] | '(' Alternatives ')') + +Repeater: '*' | '+' | '{' NUMBER [',' NUMBER] '}' + +Details: '<' Alternatives '>' diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libbz2.so.1.0 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libbz2.so.1.0 new file mode 100755 index 00000000..787c34ea Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libbz2.so.1.0 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libcrypto.so.1.0.0 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libcrypto.so.1.0.0 new file mode 100755 index 00000000..aa484901 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libcrypto.so.1.0.0 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libexpat.so.1 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libexpat.so.1 new file mode 100755 index 00000000..0b72fcd4 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libexpat.so.1 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libffi.so.6 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libffi.so.6 new file mode 100755 index 00000000..de4a048a Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libffi.so.6 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libgcc_s.so.1 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libgcc_s.so.1 new file mode 100755 index 00000000..5d4e5b9e Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libgcc_s.so.1 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libgfortran.so.3 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libgfortran.so.3 new file mode 100755 index 00000000..71be6cbd Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libgfortran.so.3 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libhdf5_serial.so.8 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libhdf5_serial.so.8 new file mode 100755 index 00000000..366fd301 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libhdf5_serial.so.8 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libhdf5_serial_hl.so.8 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libhdf5_serial_hl.so.8 new file mode 100755 index 00000000..bae329f7 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libhdf5_serial_hl.so.8 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/liblapack.so.3 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/liblapack.so.3 new file mode 100755 index 00000000..0a2026a4 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/liblapack.so.3 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/liblzma.so.5 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/liblzma.so.5 new file mode 100755 index 00000000..c119fe54 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/liblzma.so.5 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libmpdec.so.2 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libmpdec.so.2 new file mode 100755 index 00000000..82140410 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libmpdec.so.2 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libncursesw.so.5 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libncursesw.so.5 new file mode 100755 index 00000000..495cd413 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libncursesw.so.5 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libopenblas.so.0 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libopenblas.so.0 new file mode 100755 index 00000000..b8a68e67 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libopenblas.so.0 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libpython3.4m.so.1.0 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libpython3.4m.so.1.0 new file mode 100755 index 00000000..393ba57e Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libpython3.4m.so.1.0 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libreadline.so.6 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libreadline.so.6 new file mode 100755 index 00000000..ccbeb79d Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libreadline.so.6 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libssl.so.1.0.0 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libssl.so.1.0.0 new file mode 100755 index 00000000..ebf4a302 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libssl.so.1.0.0 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libstdc++.so.6 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libstdc++.so.6 new file mode 100755 index 00000000..c7810daa Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libstdc++.so.6 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libtinfo.so.5 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libtinfo.so.5 new file mode 100755 index 00000000..72ba2da0 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libtinfo.so.5 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libz.so.1 b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libz.so.1 new file mode 100755 index 00000000..c39ab680 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/libz.so.1 differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/mmap.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/mmap.so new file mode 100755 index 00000000..ab7ea928 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/mmap.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.core.multiarray.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.core.multiarray.so new file mode 100755 index 00000000..9f530fe4 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.core.multiarray.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.core.multiarray_tests.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.core.multiarray_tests.so new file mode 100755 index 00000000..fa25bc0b Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.core.multiarray_tests.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.core.umath.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.core.umath.so new file mode 100755 index 00000000..6e4f73c0 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.core.umath.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.fft.fftpack_lite.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.fft.fftpack_lite.so new file mode 100755 index 00000000..d05d5843 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.fft.fftpack_lite.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.linalg._umath_linalg.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.linalg._umath_linalg.so new file mode 100755 index 00000000..759a3f11 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.linalg._umath_linalg.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.linalg.lapack_lite.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.linalg.lapack_lite.so new file mode 100755 index 00000000..173a4e30 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.linalg.lapack_lite.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.random.mtrand.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.random.mtrand.so new file mode 100755 index 00000000..135e141d Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/numpy.random.mtrand.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/parser.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/parser.so new file mode 100755 index 00000000..c3036b7c Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/parser.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/precise-engine b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/precise-engine new file mode 100755 index 00000000..3c723637 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/precise-engine differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/readline.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/readline.so new file mode 100755 index 00000000..358cbecd Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/readline.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/resource.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/resource.so new file mode 100755 index 00000000..114d8dcd Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/resource.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy._lib._ccallback_c.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy._lib._ccallback_c.so new file mode 100755 index 00000000..3a509e85 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy._lib._ccallback_c.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.fftpack._fftpack.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.fftpack._fftpack.so new file mode 100755 index 00000000..1dea84d5 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.fftpack._fftpack.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.fftpack.convolve.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.fftpack.convolve.so new file mode 100755 index 00000000..d6bbef33 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.fftpack.convolve.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate._dop.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate._dop.so new file mode 100755 index 00000000..7d2e064a Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate._dop.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate._odepack.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate._odepack.so new file mode 100755 index 00000000..ff3d1e82 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate._odepack.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate._quadpack.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate._quadpack.so new file mode 100755 index 00000000..ab98be23 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate._quadpack.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate.lsoda.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate.lsoda.so new file mode 100755 index 00000000..25dc85dc Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate.lsoda.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate.vode.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate.vode.so new file mode 100755 index 00000000..a113448a Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.integrate.vode.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate._bspl.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate._bspl.so new file mode 100755 index 00000000..a2d76a43 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate._bspl.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate._fitpack.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate._fitpack.so new file mode 100755 index 00000000..d530fb46 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate._fitpack.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate._ppoly.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate._ppoly.so new file mode 100755 index 00000000..065f9379 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate._ppoly.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate.dfitpack.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate.dfitpack.so new file mode 100755 index 00000000..f4048b65 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate.dfitpack.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate.interpnd.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate.interpnd.so new file mode 100755 index 00000000..cb363474 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.interpolate.interpnd.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._cblas.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._cblas.so new file mode 100755 index 00000000..6a7695f2 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._cblas.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._clapack.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._clapack.so new file mode 100755 index 00000000..afa3f0bf Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._clapack.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._decomp_update.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._decomp_update.so new file mode 100755 index 00000000..e2a28c6c Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._decomp_update.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._fblas.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._fblas.so new file mode 100755 index 00000000..727f1bfa Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._fblas.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._flapack.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._flapack.so new file mode 100755 index 00000000..780acf47 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._flapack.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._flinalg.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._flinalg.so new file mode 100755 index 00000000..a61d54e8 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._flinalg.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._solve_toeplitz.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._solve_toeplitz.so new file mode 100755 index 00000000..3bcbff75 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg._solve_toeplitz.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg.cython_blas.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg.cython_blas.so new file mode 100755 index 00000000..d225c478 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg.cython_blas.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg.cython_lapack.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg.cython_lapack.so new file mode 100755 index 00000000..d51bb65c Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.linalg.cython_lapack.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.ndimage._nd_image.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.ndimage._nd_image.so new file mode 100755 index 00000000..a17ada5c Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.ndimage._nd_image.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.ndimage._ni_label.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.ndimage._ni_label.so new file mode 100755 index 00000000..74b6b74a Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.ndimage._ni_label.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._cobyla.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._cobyla.so new file mode 100755 index 00000000..327601a6 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._cobyla.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._group_columns.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._group_columns.so new file mode 100755 index 00000000..10b9a2d3 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._group_columns.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._lbfgsb.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._lbfgsb.so new file mode 100755 index 00000000..b771986b Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._lbfgsb.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._lsq.givens_elimination.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._lsq.givens_elimination.so new file mode 100755 index 00000000..babe8af6 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._lsq.givens_elimination.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._minpack.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._minpack.so new file mode 100755 index 00000000..c5730ccf Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._minpack.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._nnls.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._nnls.so new file mode 100755 index 00000000..13defe58 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._nnls.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._slsqp.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._slsqp.so new file mode 100755 index 00000000..6f0806eb Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._slsqp.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._trlib._trlib.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._trlib._trlib.so new file mode 100755 index 00000000..54ee7e18 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._trlib._trlib.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._zeros.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._zeros.so new file mode 100755 index 00000000..ec4d6fa2 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize._zeros.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize.minpack2.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize.minpack2.so new file mode 100755 index 00000000..88352778 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize.minpack2.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize.moduleTNC.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize.moduleTNC.so new file mode 100755 index 00000000..565aef22 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.optimize.moduleTNC.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse._csparsetools.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse._csparsetools.so new file mode 100755 index 00000000..a0ccf1a1 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse._csparsetools.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse._sparsetools.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse._sparsetools.so new file mode 100755 index 00000000..3c8a8a45 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse._sparsetools.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._min_spanning_tree.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._min_spanning_tree.so new file mode 100755 index 00000000..2e409fcb Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._min_spanning_tree.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._reordering.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._reordering.so new file mode 100755 index 00000000..b30cfd10 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._reordering.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._shortest_path.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._shortest_path.so new file mode 100755 index 00000000..a79132b3 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._shortest_path.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._tools.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._tools.so new file mode 100755 index 00000000..4318e1c7 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._tools.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._traversal.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._traversal.so new file mode 100755 index 00000000..26702cbf Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.csgraph._traversal.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.linalg.dsolve._superlu.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.linalg.dsolve._superlu.so new file mode 100755 index 00000000..285a64f7 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.linalg.dsolve._superlu.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.linalg.eigen.arpack._arpack.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.linalg.eigen.arpack._arpack.so new file mode 100755 index 00000000..918649cc Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.linalg.eigen.arpack._arpack.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.linalg.isolve._iterative.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.linalg.isolve._iterative.so new file mode 100755 index 00000000..39d30c91 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.sparse.linalg.isolve._iterative.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial._distance_wrap.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial._distance_wrap.so new file mode 100755 index 00000000..34a977dd Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial._distance_wrap.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial._hausdorff.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial._hausdorff.so new file mode 100755 index 00000000..99f8747a Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial._hausdorff.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial._voronoi.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial._voronoi.so new file mode 100755 index 00000000..4b909f70 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial._voronoi.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial.ckdtree.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial.ckdtree.so new file mode 100755 index 00000000..e52008a8 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial.ckdtree.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial.qhull.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial.qhull.so new file mode 100755 index 00000000..79f6cf24 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.spatial.qhull.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special._comb.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special._comb.so new file mode 100755 index 00000000..2d254cef Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special._comb.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special._ellip_harm_2.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special._ellip_harm_2.so new file mode 100755 index 00000000..1956675b Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special._ellip_harm_2.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special._ufuncs.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special._ufuncs.so new file mode 100755 index 00000000..3037e60b Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special._ufuncs.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special._ufuncs_cxx.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special._ufuncs_cxx.so new file mode 100755 index 00000000..b4626689 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special._ufuncs_cxx.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special.specfun.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special.specfun.so new file mode 100755 index 00000000..dc53a9ef Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.special.specfun.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.stats._stats.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.stats._stats.so new file mode 100755 index 00000000..09cfb51b Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.stats._stats.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.stats.mvn.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.stats.mvn.so new file mode 100755 index 00000000..c372e521 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.stats.mvn.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.stats.statlib.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.stats.statlib.so new file mode 100755 index 00000000..56787c8f Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/scipy.stats.statlib.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/tensorflow.python.framework.fast_tensor_util.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/tensorflow.python.framework.fast_tensor_util.so new file mode 100755 index 00000000..0056c335 Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/tensorflow.python.framework.fast_tensor_util.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/termios.so b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/termios.so new file mode 100755 index 00000000..5f682b8a Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine/termios.so differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine_0.2.0_armv7l.tar.gz b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine_0.2.0_armv7l.tar.gz new file mode 100644 index 00000000..d450fefc Binary files /dev/null and b/buildroot-external/rootfs-overlay/root/.mycroft/precise/precise-engine_0.2.0_armv7l.tar.gz differ diff --git a/buildroot-patches/0010-Downgrade-python-tornado-to-4.5.3.patch b/buildroot-patches/0010-Downgrade-python-tornado-to-4.5.3.patch deleted file mode 100644 index c4db5d00..00000000 --- a/buildroot-patches/0010-Downgrade-python-tornado-to-4.5.3.patch +++ /dev/null @@ -1,107 +0,0 @@ -From 558f6ce4014280563a57eecd446969034ab36d77 Mon Sep 17 00:00:00 2001 -From: Peter Steenbergen -Date: Mon, 7 Jan 2019 16:36:09 +0100 -Subject: [PATCH 1/1] Downgrade python-tornado to 4.5.3 - ---- - .../python-tornado/0001-Disable-SSL-checks.patch | 45 ---------------------- - package/python-tornado/Config.in | 2 - - package/python-tornado/python-tornado.hash | 1 + - package/python-tornado/python-tornado.mk | 4 +- - 4 files changed, 3 insertions(+), 49 deletions(-) - delete mode 100644 package/python-tornado/0001-Disable-SSL-checks.patch - -diff --git a/package/python-tornado/0001-Disable-SSL-checks.patch b/package/python-tornado/0001-Disable-SSL-checks.patch -deleted file mode 100644 -index 272afd64fe..0000000000 ---- a/package/python-tornado/0001-Disable-SSL-checks.patch -+++ /dev/null -@@ -1,45 +0,0 @@ --From 82a3bbc2ac41b5a1b34a53f97459558efe131f14 Mon Sep 17 00:00:00 2001 --From: Jan Dohl --Date: Sun, 24 Jun 2018 16:00:54 +0200 --Subject: [PATCH] Disable SSL checks -- --Checking for SSL support in the Python used on the build system is not --relevant, as we need SSL support in the Python on the target system. -- --Signed-off-by: Jan Dohl ----- -- setup.py | 11 ----------- -- 1 file changed, 11 deletions(-) -- --diff --git a/setup.py b/setup.py --index 6fbb10a8..1a9220c7 100644 ----- a/setup.py --+++ b/setup.py --@@ -15,7 +15,6 @@ -- -- import os -- import platform ---import ssl -- import sys -- import warnings -- --@@ -137,16 +136,6 @@ if setuptools is not None: -- python_requires = '>= 2.7, !=3.0.*, !=3.1.*, !=3.2.*, != 3.3.*' -- kwargs['python_requires'] = python_requires -- ---# Verify that the SSL module has all the modern upgrades. Check for several ---# names individually since they were introduced at different versions, ---# although they should all be present by Python 3.4 or 2.7.9. ---if (not hasattr(ssl, 'SSLContext') or --- not hasattr(ssl, 'create_default_context') or --- not hasattr(ssl, 'match_hostname')): --- raise ImportError("Tornado requires an up-to-date SSL module. This means " --- "Python 2.7.9+ or 3.4+ (although some distributions have " --- "backported the necessary changes to older versions).") --- -- setup( -- name="tornado", -- version=version, ---- --2.14.4 -- -diff --git a/package/python-tornado/Config.in b/package/python-tornado/Config.in -index 1afbdc5729..a0ee78fb7a 100644 ---- a/package/python-tornado/Config.in -+++ b/package/python-tornado/Config.in -@@ -2,8 +2,6 @@ config BR2_PACKAGE_PYTHON_TORNADO - bool "python-tornado" - select BR2_PACKAGE_PYTHON_ZLIB if BR2_PACKAGE_PYTHON - select BR2_PACKAGE_PYTHON3_ZLIB if BR2_PACKAGE_PYTHON3 -- select BR2_PACKAGE_PYTHON_SSL if BR2_PACKAGE_PYTHON -- select BR2_PACKAGE_PYTHON3_SSL if BR2_PACKAGE_PYTHON3 - select BR2_PACKAGE_PYTHON_SINGLEDISPATCH if BR2_PACKAGE_PYTHON # runtime - select BR2_PACKAGE_PYTHON_BACKPORTS_ABC if BR2_PACKAGE_PYTHON # runtime - select BR2_PACKAGE_PYTHON_CERTIFI if BR2_PACKAGE_PYTHON # runtime -diff --git a/package/python-tornado/python-tornado.hash b/package/python-tornado/python-tornado.hash -index fbf5efa60a..7cfaefad73 100644 ---- a/package/python-tornado/python-tornado.hash -+++ b/package/python-tornado/python-tornado.hash -@@ -1,5 +1,6 @@ - # md5, sha256 from https://pypi.org/pypi/tornado/json - md5 a1ce4f392d30ff0ebcb255150d89b826 tornado-5.1.1.tar.gz - sha256 4e5158d97583502a7e2739951553cbd88a72076f152b4b11b64b9a10c4c49409 tornado-5.1.1.tar.gz -+sha256 6d14e47eab0e15799cf3cdcc86b0b98279da68522caace2bd7ce644287685f0a tornado-4.5.3.tar.gz - # Locally computed sha256 checksums - sha256 cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30 LICENSE -diff --git a/package/python-tornado/python-tornado.mk b/package/python-tornado/python-tornado.mk -index 71f536f023..b86e476fd6 100644 ---- a/package/python-tornado/python-tornado.mk -+++ b/package/python-tornado/python-tornado.mk -@@ -4,9 +4,9 @@ - # - ################################################################################ - --PYTHON_TORNADO_VERSION = 5.1.1 -+PYTHON_TORNADO_VERSION = 4.5.3 - PYTHON_TORNADO_SOURCE = tornado-$(PYTHON_TORNADO_VERSION).tar.gz --PYTHON_TORNADO_SITE = https://files.pythonhosted.org/packages/e6/78/6e7b5af12c12bdf38ca9bfe863fcaf53dc10430a312d0324e76c1e5ca426 -+PYTHON_TORNADO_SITE = https://files.pythonhosted.org/packages/e3/7b/e29ab3d51c8df66922fea216e2bddfcb6430fb29620e5165b16a216e0d3c - PYTHON_TORNADO_LICENSE = Apache-2.0 - PYTHON_TORNADO_LICENSE_FILES = LICENSE - PYTHON_TORNADO_SETUP_TYPE = setuptools --- -2.11.0 - diff --git a/documentation/boards.md b/documentation/boards.md new file mode 100644 index 00000000..49ef50ac --- /dev/null +++ b/documentation/boards.md @@ -0,0 +1,55 @@ +# Boards that are or can be supported. + +## Supported Hardware: + +### Raspberry Pi + +| Device | Status | Board | +|--------|-----------|-----------| +| Raspberry Pi A+/B/B+ | Unknown, most likely under powered | N/A | +| Raspberry Pi Zero | Unknown, most likely under powered | N/A | +| Raspberry Pi Zero W | Unknown, most likely under powered | N/A | +| Raspberry Pi 2 B | Unknown, could possibly work | N/A | +| Raspberry Pi 3 B/B+ | Works | rpi3 | + +## Unsupported for now, but perhaps possible in the future + +### Hardkernel + +| Device | Status | Board | +|--------|-----------|-----------| +| Odroid-C2 | most likely possible | Not available yet | + +### Orange Pi + +| Device | Status | Board | +|--------|-----------|-----------| +| Prime | most likely possible | Not available yet | + +### Friendly ARM + +| Device | Status | Board | +|--------|-----------|-----------| +| NanoPi M4 | most likely possible | Not available yet | + +### Asus + +| Device | Status | Board | +|--------|-----------|-----------| +| Tinker RK3288 | most likely possible | Not available yet | +| Tinker S RK3288 | most likely possible | Not available yet | + +### Intel NUC + +| Device | Status | Board | +|--------|-----------|-----------| +| Unknown | most likely possible | Not available yet | + +### Seeedstudio + +| Device | Status | Board | +|--------|-----------|-----------| +| ReSpeaker Core V2 | most likely possible | Not available yet | + +

+Further ideas and discussion open at the issue tracker: #4 diff --git a/documentation/building.md b/documentation/building.md new file mode 100644 index 00000000..a49b38d6 --- /dev/null +++ b/documentation/building.md @@ -0,0 +1,25 @@ +# Building of MycroftOS from sources. + +Flashable images will be provided at mayor, minor and hotfix release tags. However if you want to build the images from source yourself, below instructions will get you on your way. + +## Getting the code. +First, get the code on your system! The simplest method is via git. +
+- cd ~/ +- git clone --recurse-submodules https://github.com/j1nx/MycroftOS.git +- cd MycroftOS + +## Patching Buildroot. +If this is the very first time you are going to build an image, you need to execute the following command once; +
+- ./scripts/br-patches.sh +
+This will patch the Buildroot packages. + +## Building the image. +We can build the image(s) by running the following command; +
+- ./scripts/build.sh +
+At this moment only one image get's build. Namely the one for RPi3. Later on in time this section will get expanded with other possible supported hardware. + diff --git a/documentation/kernel.md b/documentation/kernel.md new file mode 100644 index 00000000..1a1269b0 --- /dev/null +++ b/documentation/kernel.md @@ -0,0 +1,6 @@ +# Kernel Version +Linux kernel version used for supported boards.
+ +| Board | Version | +|-------|---------| +| Raspberry Pi | 4.14.78 | diff --git a/documentation/python-packages.md b/documentation/python-packages.md new file mode 100644 index 00000000..d7b9b665 --- /dev/null +++ b/documentation/python-packages.md @@ -0,0 +1,108 @@ +# Python 3.7 + +## Default installed Python libraries + +The following Python libraries are installed when Mycroft has been fully booted and configured; + +- adapt-parser 0.3.0 +- arrow 0.10.0 +- astral 1.4 +- beautifulsoup4 4.5.3 +- bs4 0.0.1 +- cachetools 2.1.0 +- casttube 0.1.0 +- certifi 2018.10.15 +- cffi 1.11.2 +- chardet 3.0.4 +- Click 7.0 +- configshell-fb 1.1.18 +- coverage 4.5.1 +- coveralls 1.5.1 +- daemonize 2.4.7 +- ddg3 0.6.6 +- Deprecated 1.2.3 +- docopt 0.6.2 +- fann2 1.0.7 +- fasteners 0.14.1 +- feedparser 5.2.1 +- gitdb2 2.0.4 +- GitPython 2.1.11 +- google-api-python-client 1.6.4 +- google-auth 1.5.1 +- google-auth-httplib2 0.0.3 +- gTTS 2.0.1 +- gTTS-token 1.1.3 +- httplib2 0.10.3 +- humanhash3 0.0.6 +- idna 2.7 +- ifaddr 0.1.6 +- inflect 2.1.0 +- inflection 0.3.1 +- jaraco.itertools 4.4.1 +- lxml 4.2.5 +- monotonic 1.5 +- more-itertools 5.0.0 +- msk 0.3.12 +- msm 0.6.3 +- multi-key-dict 2.0.3 +- mycroft-core 18.8.11 +- netaddr 0.7.19 +- netifaces 0.10.7 +- oauth2client 4.1.3 +- oauthlib 2.1.0 +- olefile 0.46 +- padaos 0.1.8 +- padatious 0.4.5 +- pep8 1.7.0 +- petact 0.1.2 +- Pillow 4.1.1 +- pip 18.1 +- pocketsphinx 0.1.0 +- precise-runner 0.2.1 +- protobuf 3.0.0b2 +- psutil 5.2.1 +- pulsectl 17.7.4 +- pyalsaaudio 0.8.2 +- pyasn1 0.4.4 +- pyasn1-modules 0.2.2 +- PyAudio 0.2.11 +- PyChromecast 0.7.7 +- pyCLI 2.0.3 +- pycparser 2.19 +- pycrypto 2.6.1 +- pyee 1.0.1 +- PyGithub 1.43.2 +- pyjokes 0.5.0 +- PyJWT 1.6.4 +- pyowm 2.6.1 +- pyparsing 2.1.10 +- pyserial 3.0 +- python-dateutil 2.7.5 +- python-vlc 1.1.2 +- pytz 2017.2 +- requests 2.20.0 +- requests-futures 0.9.5 +- rsa 4.0 +- setuptools 40.5.0 +- sgmllib3k 1.0.0 +- six 1.10.0 +- smmap2 2.0.4 +- source 1.2.0 +- SpeechRecognition 3.8.1 +- texttable 0.9.1 +- tornado 5.1.1 +- typing 3.6.6 +- tzlocal 1.3 +- uritemplate 3.0.0 +- urllib3 1.24.1 +- urwid 1.3.1 +- uuid 1.30 +- websocket-client 0.32.0 +- wikipedia 1.4.0 +- wolframalpha 3.0 +- wrapt 1.10.11 +- xmlrunner 1.7.7 +- xmltodict 0.11.0 +- xxhash 1.2.0 +- zeroconf 0.20.0 + diff --git a/scripts/build.sh b/scripts/build.sh index 11175013..65197dbf 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -10,7 +10,7 @@ for platform in "${all_platforms[@]}"; do make -C buildroot BR2_EXTERNAL=../buildroot-external mycroftos_${platform}_defconfig # Optional if you need to change stuff, uncomment the next line. - make -C buildroot BR2_EXTERNAL=../buildroot-external menuconfig + # make -C buildroot BR2_EXTERNAL=../buildroot-external menuconfig make -C buildroot BR2_EXTERNAL=../buildroot-external 2>&1 | tee logs/buildroot_output.txt cp -f buildroot/output/images/sdcard.img release/MycroftOS_${platform}.img