|
| 1 | +From ca2ccdcef11ec0be6e0375444dda7420f99ee856 Mon Sep 17 00:00:00 2001 |
| 2 | +From: Ludovic Henry <git@ludovic.dev> |
| 3 | +Date: Sun, 20 Sep 2026 23:47:02 +0000 |
| 4 | +Subject: [PATCH] Widen license_files to cover the statically linked eSpeak NG |
| 5 | + |
| 6 | +setup.py names license_files explicitly, so setuptools' default |
| 7 | +LICEN[CS]E*/COPYING* glob never applies and a licence file dropped in |
| 8 | +beside the existing ones is silently ignored. |
| 9 | + |
| 10 | +CMakeLists.txt builds eSpeak NG from source as an ExternalProject and |
| 11 | +links it statically into piper/espeakbridge, and the wheel also ships |
| 12 | +eSpeak NG's own espeak-ng-data. eSpeak NG is GPL-3.0-or-later with |
| 13 | +Apache-2.0, BSD-2-Clause and UCD parts, and none of its four licence |
| 14 | +files reach dist-info/licenses/ in any piper_tts wheel on PyPI -- this is |
| 15 | +not riscv64-specific, every platform's wheel is missing them. |
| 16 | + |
| 17 | +Widening the second entry to licenses/* lets COPYING.espeak-ng and its |
| 18 | +siblings, staged in licenses/ during the build, reach |
| 19 | +dist-info/licenses/ with no other packaging change. The existing |
| 20 | +licenses/LICENSE.g2pW-Apache-2.0 is still matched by the same glob. |
| 21 | + |
| 22 | +Upstream-Status: To upstream [not yet submitted; the gap exists in every piper_tts wheel on PyPI regardless of architecture, so it needs a maintainer discussion about which eSpeak NG licence files to ship rather than a drive-by PR] |
| 23 | + |
| 24 | +Signed-off-by: Ludovic Henry <git@ludovic.dev> |
| 25 | +--- |
| 26 | + setup.py | 6 ++++-- |
| 27 | + 1 file changed, 4 insertions(+), 2 deletions(-) |
| 28 | + |
| 29 | +diff --git a/setup.py b/setup.py |
| 30 | +index dc8b6cf..932f9d7 100644 |
| 31 | +--- a/setup.py |
| 32 | ++++ b/setup.py |
| 33 | +@@ -46,8 +46,10 @@ setup( |
| 34 | + description="Fast and local neural text-to-speech engine", |
| 35 | + url="http://github.com/OHF-voice/piper1-gpl", |
| 36 | + license="GPL-3.0-or-later", |
| 37 | +- # g2pW is Apache-2.0; see src/piper/g2pw_onnx.py. |
| 38 | +- license_files=["COPYING", "licenses/LICENSE.g2pW-Apache-2.0"], |
| 39 | ++ # g2pW is Apache-2.0; see src/piper/g2pw_onnx.py. The glob also picks up the |
| 40 | ++ # licences of eSpeak NG, which CMakeLists.txt links into espeakbridge and |
| 41 | ++ # whose data this package ships. |
| 42 | ++ license_files=["COPYING", "licenses/*"], |
| 43 | + author="The Home Assistant Authors", |
| 44 | + author_email="hello@home-assistant.io", |
| 45 | + keywords=["home", "assistant", "tts", "text-to-speech"], |
| 46 | +-- |
| 47 | +2.43.0 |
| 48 | + |
0 commit comments