python3 rpm macros not available without python3-devel installed
Robin Lee
robinlee.sysu at gmail.com
Thu Sep 16 04:21:56 UTC 2010
Oh! Thank you! This works.
On Thu, Sep 16, 2010 at 12:07 PM, Toshio Kuratomi <a.badger at gmail.com>wrote:
> On Thu, Sep 16, 2010 at 10:03:21AM +0800, Robin Lee wrote:
> > The main point I want to get is to set a proper python(abi) requirement
> at
> > buildtime without using hard version number at all.
> > %{?!py3_ver: %global py3_ver 3.2}
> > Doing so of course will make the package built. But that uses a hard
> version
> > number.
> >
> > I now suggest the requester to make a phantom file to get what we want.
> > See this patch:
> https://bugzilla.redhat.com/attachment.cgi?id=447458&action=
> > diff
> >
> I'm sorry I'm not being clear. I thought that py3_ver was being set by the
> python3 macros but I see now that you have to define that in the spec file.
> I've added a more detailed comment in bugzilla, but the basic spec file
> code
> to do this more simply is:
>
> # get python3 version
> %global py3_ver 0
> %{?__python3: %global py3_ver %(%{__python3} -c "import sys;
> sys.stdout.write(sys.version[:3])")}
>
> -Toshio
>
> > Robin
> >
> > On Thu, Sep 16, 2010 at 12:17 AM, Toshio Kuratomi <a.badger at gmail.com>
> wrote:
> >
> > On Wed, Sep 15, 2010 at 07:25:49PM +0800, Robin Lee wrote:
> > > For a more concrete example:
> https://bugzilla.redhat.com/show_bug.cgi?id=
> > 567348
> > > I want to set the python(abi) requirement of the subpackage at
> buildtime.
> > So, I
> > > want to set it like this:
> > > Requires: python(abi) = %{py3_ver}
> > >
> > > But when build it, it will fail with the following output:
> > > $ rpmbuild -bp dreampie.spec
> > > Building target platforms: i686
> > > Building for target i686
> > > sh: python3: command not found
> > > sh: python3: command not found
> > > sh: python3: command not found
> > > error: line 46: Version required: Requires: python(abi) =
> > >
> > > Even though python3-devel has been added as BR.
> > >
> > I think that where you're running into this problem is important.
> It's
> > when
> > koji is constructing the srpm, isn't it? at that stage, koji needs
> to
> > parse the spec file and it's running into the "Requires foo =\n" and
> > throwing that error.
> >
> > I think that conditionally defining a py3_ver macro in the spec file
> will
> > do
> > what you wnat. That way, when the package is actually built, the
> > python3-devel pakage will be present and your conditional will not
> set the
> > macro. but when building the srpm and python3-devel is missing, it
> will.
> >
> > Something like this:
> > %{?!py3_ver: %global py3_ver 3.2}
> >
> > would work. I'm not sure of the safest thing that we can use there
> and
> > still not run into problems when building the srpm.
> >
> > -Toshio
> >
> > > On Wed, Sep 15, 2010 at 7:06 PM, Ignacio Vazquez-Abrams <
> > ivazqueznet at gmail.com>
> > > wrote:
> > >
> > > On Wed, 2010-09-15 at 18:22 +0800, Robin Lee wrote:
> > > > python3 rpm macros not available without python3-devel
> installed.
> > > > 'rpmbuild --viewrc' will show you.
> > > >
> > > > So if you use the python3 macros to define another macro and
> you
> > have
> > > > no python3-devel installed, you must fail.
> > > >
> > > > So, how to define, for example, a %py3_ver macro for the
> major
> > version
> > > > of Python3? Must yum be used?
> > > >
> > > > Robin
> > >
> > > Adding a "BuildRequires: python3-devel" should be enough to
> pull them
> > > in.
> > >
> > > --
> > > Ignacio Vazquez-Abrams <ivazqueznet at gmail.com>
> > >
> > > _______________________________________________
> > > python-devel mailing list
> > > python-devel at lists.fedoraproject.org
> > > https://admin.fedoraproject.org/mailman/listinfo/python-devel
> > >
> > >
> >
> > > _______________________________________________
> > > python-devel mailing list
> > > python-devel at lists.fedoraproject.org
> > > https://admin.fedoraproject.org/mailman/listinfo/python-devel
> >
> >
> > _______________________________________________
> > python-devel mailing list
> > python-devel at lists.fedoraproject.org
> > https://admin.fedoraproject.org/mailman/listinfo/python-devel
> >
> >
>
> > _______________________________________________
> > python-devel mailing list
> > python-devel at lists.fedoraproject.org
> > https://admin.fedoraproject.org/mailman/listinfo/python-devel
>
>
> _______________________________________________
> python-devel mailing list
> python-devel at lists.fedoraproject.org
> https://admin.fedoraproject.org/mailman/listinfo/python-devel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.fedoraproject.org/pipermail/python-devel/attachments/20100916/af23a88c/attachment-0001.html
More information about the python-devel
mailing list