Hi,

on Fedora 38, the binary package python3-collada ships a
broken symlink (CHANGELOG.rst):

| $ rpm -qlv python3-collada | grep /usr/share/doc/python3-collada
| drwxr-xr-x    2 root     root                        0 Jan 20  2023 
/usr/share/doc/python3-collada
| -rw-r--r--    1 root     root                      428 Nov 12  2021 
/usr/share/doc/python3-collada/AUTHORS.md
| lrwxrwxrwx    1 root     root                       18 Nov 12  2021 
/usr/share/doc/python3-collada/CHANGELOG.rst -> docs/changelog.rst
| -rw-r--r--    1 root     root                     1095 Nov 12  2021 
/usr/share/doc/python3-collada/README.markdown
| $

So I wanted to fix this by:

| diff --git a/python-collada.spec b/python-collada.spec
| index 1f6a6bf..6178381 100644
| --- a/python-collada.spec
| +++ b/python-collada.spec
| @@ -58,6 +58,7 @@ as well as in-place editing.

|  %install
|  %py3_install
| +install -p -m 0644 -t '%{buildroot}%{_pkgdocdir}' -D CHANGELOG.rst


|  %check
| @@ -66,7 +67,8 @@ as well as in-place editing.

|  %files -n python%{python3_pkgversion}-collada
|  %license COPYING
| -%doc AUTHORS.md CHANGELOG.rst README.markdown
| +%doc AUTHORS.md README.markdown
| +%doc %{_pkgdocdir}/CHANGELOG.rst
|  %{python3_sitelib}/*

But this installs CHANGELOG.rst in
/usr/share/doc/python-collada (not python3-collada):

| $ rpm -qlpv noarch/python3-collada-0.7.2-5.fc38.noarch.rpm | grep /doc
| -rw-r--r--    1 root     root                     8133 Nov 12  2021 
/usr/share/doc/python-collada/CHANGELOG.rst
| drwxr-xr-x    2 root     root                        0 Jan 20  2023 
/usr/share/doc/python3-collada
| -rw-r--r--    1 root     root                      428 Nov 12  2021 
/usr/share/doc/python3-collada/AUTHORS.md
| -rw-r--r--    1 root     root                     1095 Nov 12  2021 
/usr/share/doc/python3-collada/README.markdown
| $

as %_pkgdocdir is defined by appending the source package's
name, not the binary's name:

| $ grep -R pkgdocdir /usr/lib/rpm
| /usr/lib/rpm/redhat/macros:%_pkgdocdir             %{_docdir}/%{name}
| $

But obviously, rpm(build) must know the binary package's di-
rectory name as it installs %doc files given by only by
their base filename there (AUTHORS.md and README.markdown in
this example).

So how/with which macro can I access a binary package's do-
cumentation directory name in a spec file?

(Posting this on python-devel as %pkgdocdir is used in some
Python packages as well and there is (always?) a difference
between the source and binary package name.)

TIA,
Tim
--
_______________________________________________
python-devel mailing list -- python-devel@lists.fedoraproject.org
To unsubscribe send an email to python-devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/python-devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to