On 13. 09. 23 5:03, Scott Talbert wrote:
Hi all,
Hi Scott.
First, is it possible to use this macro if the pyproject.toml isn't in the root
directory of the package? There doesn't seem to be an option to specify a
path, so I tried cd'ing into a path and running it, but it seemed to run into
an odd error like it was trying to include my directory as a package.
You can do this, but you MUST NOT put anything to the standard output.
E.g. if you do this:
%generate_buildrequires
cd subdir
%pyproject_buildrequires
It'll work properly. However, if you do:
%generate_buildrequires
cd subdir
%pyproject_buildrequires
cd -
It will generate a dependency on something like /builddir/build/BUILD/pkg-1.2.3
because that is what `cd -` prints to standard output.
Same with pushd and popd.
The solution is to use >&2 when runnign such commands in
%generate_buildrequires. For example:
%generate_buildrequires
pushd pkg1 >&2
%pyproject_buildrequires
popd >&2
pushd pkg2 >&2
%pyproject_buildrequires
popd >&2
Second, can %pyproject_buildrequires (and the other %pyproject_ macros) be used
multiple times in a package? I have a package that has multiple pyproject.toml
files in it (but that's mostly a legacy thing, so I could probably separate
them into multiple RPMs).
Yes, but %pyproject_insatll SHOULD only be used once (it will install
everything, running it multiple times is redundant) and %pyproject_save_files
will not work at all.
%build
pushd pkg1
%pyproject_wheel
popd
pushd pkg2
%pyproject_wheel
popd
%install
# this will install both wheels:
%pyproject_install
# we cannot use %%pyproject_save_files here
# because mixing files from multiple wheels is not supported
--
Miro Hrončok
--
Phone: +420777974800
IRC: mhroncok
_______________________________________________
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