tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Build fix for lang/python312 on macOS



		Hey Greg, (tech-pkg@)

> On 26 Nov 2024, at 08:14, Greg Troxel <gdt%lexort.com@localhost> wrote:
> 
> Greg Troxel <gdt%lexort.com@localhost> writes:
> 
>> Pierre Pronchery <khorben%defora.org@localhost> writes:
>> 
>>> FWIW, the issue with expat is related to the absence of the symbol
>>> XML_SetReparseDeferralEnabled in the version of expat detected by
>>> Python on macOS. If I try to build without
>>> CONFIGURE_ARGS+=--with-system-expat, the package builds again as
>>> expected.
> 
> In python 3.12.4, Modules/pyexpat.c, I see:
> 
>  static PyObject *
>  pyexpat_xmlparser_SetReparseDeferralEnabled_impl(xmlparseobject *self,
>                                                   int enabled)
>  /*[clinic end generated code: output=5ec539e3b63c8c49 input=021eb9e0bafc32c5]*/
>  {
>  #if XML_COMBINED_VERSION >= 20600
>      XML_SetReparseDeferralEnabled(self->itself, enabled ? XML_TRUE : XML_FALSE);
>      self->reparse_deferral_enabled = (bool)enabled;
>  #endif
>      Py_RETURN_NONE;
>  }
> 
> and I therefore suspect pkgsrc head will be ok for you.

Unfortunately it does not help; 2024Q3 has 3.12.6 already anyway.

> There is a remaining question about whether we should add an API depends
> to force pkgsrc expat, but that would need a solid argument that it's
> worth it.  (And leading up to branch, concurrence from jperkin that it's
> a good functionality/risk tradeoff.)

One thing that might make it worth it, is security: almost every release of expat
in the 2.6.x branch has been accompanied by security fixes. pkgsrc cannot fix each
and every vulnerability present in the base system, but relying on the base can
also expose the users to a false sense of security. (e.g., when looking at the
version included in pkgsrc as opposed to that of the base system)

In addition, this would help ensure a most consistent environment for pkgsrc
builds across the different platforms supported - as illustrated by the issue I am
having now on macOS.

OTOH, on native NetBSD, it means an extra copy of expat lying around, since it
seems to be part of the base system. (For gdb, gettext, libarchive, unbound, and
Xorg apparently)

Cheers & HTH,
-- 
khorben

Attachment: signature.asc
Description: Message signed with OpenPGP



Home | Main Index | Thread Index | Old Index