diff options
author | Alexandru Ardelean <ardeleanalex@gmail.com> | 2017-01-17 15:02:23 +0200 |
---|---|---|
committer | Alexandru Ardelean <ardeleanalex@gmail.com> | 2017-01-17 15:23:19 +0200 |
commit | a5b9cc6a24581a68dcb3b6a053b71f8ae83ee530 (patch) | |
tree | 9416e4dc776e14bbdb42208cad760a93da0f77fd /lang | |
parent | 13316fd67fdf4a484302400fa9096aa1a88a873a (diff) |
micropython-lib: workaround the `install` build rule
So, I chose to workaround it in the Makefile.
A proper fix is a bit more work that I would like to do now,
and I have no suggestion/idea for a good fix right now.
The problem is with the `CMD` part that's used in the install rule,
together with the fact that PREFIX is the same as the source location.
```
CMD="find . -maxdepth 1 -mindepth 1 \( -name '*.py' -not -name 'test_*' -not -name 'setup.py' \) -or \( -type d -not -name 'dist' -not -name '*.egg-info' -not -name '__pycache__' \)| xargs --no-run-if-empty cp -r -t $(PREFIX)"
```
The gist of it, is that it seems that this will filter
and copy to `PREFIX` all python sources and folders that
are not names `dist`, `__pycache__`, or `*.egg-info`.
And it searches all folders at (exactly) depth 1.
The solution I chose is to put a `dist` folder under
`_install_tmp`, which is kind of a trick to go
to depth 2 and avoid both conditions in the `find` call.
This avoids errors:
```
cp: './weakref.py' and '/home/sandu/work/lede/build_dir/target-mips_24kc_musl-1.1.16/micropython-lib-1.8.6-f81e979c56dddb771ad36ec381b7f2c6cd12111f-f81e979c56dddb771ad36ec381b7f2c6cd12111f/_install_tmp/weakref.py' are the same file
cp: './xmltok.py' and '/home/sandu/work/lede/build_dir/target-mips_24kc_musl-1.1.16/micropython-lib-1.8.6-f81e979c56dddb771ad36ec381b7f2c6cd12111f-f81e979c56dddb771ad36ec381b7f2c6cd12111f/_install_tmp/xmltok.py' are the same file
cp: './zipfile.py' and '/home/sandu/work/lede/build_dir/target-mips_24kc_musl-1.1.16/micropython-lib-1.8.6-f81e979c56dddb771ad36ec381b7f2c6cd12111f-f81e979c56dddb771ad36ec381b7f2c6cd12111f/_install_tmp/zipfile.py' are the same file
```
Initially I tried to add exit 0, but that would
just hide other (potentially worse) issues.
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
Diffstat (limited to 'lang')
-rw-r--r-- | lang/micropython-lib/Makefile | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/lang/micropython-lib/Makefile b/lang/micropython-lib/Makefile index 2f3fc6180..989506ae9 100644 --- a/lang/micropython-lib/Makefile +++ b/lang/micropython-lib/Makefile @@ -42,13 +42,12 @@ define Package/micropython-lib/description endef MAKE_FLAGS:=\ - -C $(PKG_BUILD_DIR) \ - PREFIX=$(PKG_BUILD_DIR)/_install_tmp \ + PREFIX=$(PKG_BUILD_DIR)/_install_tmp/dist \ install define Package/micropython-lib/install $(INSTALL_DIR) $(1)/usr/lib/micropython - $(CP) $(PKG_BUILD_DIR)/_install_tmp/* $(1)/usr/lib/micropython + $(CP) $(PKG_BUILD_DIR)/_install_tmp/dist/* $(1)/usr/lib/micropython endef $(eval $(call BuildPackage,micropython-lib)) |