diff --git a/micropython.changes b/micropython.changes index 342e7bf..92757fa 100644 --- a/micropython.changes +++ b/micropython.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Wed Feb 5 23:17:33 UTC 2025 - Dominik Heidler + +- Build mpremote tool + ------------------------------------------------------------------- Sat Nov 30 19:36:52 UTC 2024 - Jaime Marquínez Ferrándiz diff --git a/micropython.spec b/micropython.spec index fdcd509..2dd080f 100644 --- a/micropython.spec +++ b/micropython.spec @@ -1,7 +1,7 @@ # # spec file for package micropython # -# Copyright (c) 2024 SUSE LLC +# Copyright (c) 2025 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,6 +16,8 @@ # +%define pythons python3 + Name: micropython Version: 1.24.1 Release: 0 @@ -28,12 +30,29 @@ BuildRequires: pkgconfig BuildRequires: python3 BuildRequires: readline-devel BuildRequires: pkgconfig(libffi) + Recommends: micropython-lib ExcludeArch: %{ix86} %{arm} ppc64 ppc64le +%package -n mpremote +Summary: MicroPython remote control +BuildArch: noarch +BuildRequires: python3-hatch-requirements-txt +BuildRequires: python3-hatchling +Requires: python3-pyserial >= 3.3 +BuildRequires: %{python_module base >= 3.6} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module wheel} +BuildRequires: fdupes +BuildRequires: python-rpm-macros + %description A lean and efficient Python implementation for microcontrollers and constrained systems +%description -n mpremote +This CLI tool provides an integrated set of utilities to remotely interact with +and automate a MicroPython device over a serial connection. + %prep %autosetup -p1 @@ -45,10 +64,23 @@ sed -i -e "s:/usr/lib/micropython:%{_prefix}/lib/micropython:g" "ports/unix/main export CFLAGS="%optflags -Wno-dangling-pointer" %make_build -C mpy-cross %make_build -C ports/unix STRIP=true +pushd tools/mpremote +# inject version info as there is no git checkout to get tags from +echo "VERSION = '%{version}'" > version.py +sed -i -e 's/source = "vcs"/path = "version.py"/' pyproject.toml +# remove useless shebang lines +sed -i -e 's_#!/usr/bin/env python3__' mpremote/{__main__,transport,transport_serial}.py +%pyproject_wheel +popd %install install -d %{buildroot}%{_bindir} install -t %{buildroot}%{_bindir} ports/unix/build-standard/micropython +pushd tools/mpremote +%pyproject_install +%python3_fix_shebang +%fdupes %{buildroot}%{python3_sitelib} +popd %check %ifnarch x86_64 @@ -65,4 +97,11 @@ make -C ports/unix PYTHON=%{_bindir}/python3 V=1 test %doc docs/unix/* %{_bindir}/micropython +%files -n mpremote +%license tools/mpremote/LICENSE +%doc tools/mpremote/README.md +%{python3_sitelib}/mpremote +%{python3_sitelib}/mpremote-%{version}.dist-info +%{_bindir}/mpremote + %changelog