On 21/07/26 02:36PM, Stuart Henderson wrote:
> Ports must not use cpu features detected at build time in the default
> build.
> 
> In some special cases it might make sense to have a "native" flavour
> that is not linked to the build by default (i.e. so packages are not
> normally built) as long as that doesn't change the ABI.
> 
> On amd64 you can use SSE2 which is present on all 64-bit capable CPUs,
> anything else should either have a runtime cpuid check and fall back to
> another implementation, or in some special cases where something else
> is required for the software to work at all (e.g. in textproc/hyperscan)
> then it will need something else which we'd probably want to look at
> case-by-case.

Thanks. Perhaps I should put this into faq/ports/specialtopics.html and 
send a patch?

> > 
> > marisa 0.2.6 configuration:
> > -------------------------------
> >   HOST:      x86_64-unknown-openbsd6.9
> >   CXX:       c++
> >   CXXFLAGS:  -g -O2 -DMARISA_USE_POPCNT -mpopcnt -DMARISA_USE_SSE4 -msse4
> 
> also this suggests the port isn't passing in CXXFLAGS from ports to the
> build environment (port shouldn't hardcode -O2).

I tried different combination of CONFIGURE_ENV / CONFIGURE_ARGS but -O2 
and -pipe are still there:

  HOST:      x86_64-unknown-openbsd6.9
  CXX:       c++
  CXXFLAGS:  -O2 -pipe
  LDFLAGS:
  PREFIX:    /usr/local   

How should I debug this?

Here is my WIP port in case anyone wants to take a look at it: `make 
install` works and I can use it, but I'm not sure if I did things in the 
right way.

https://raw.githubusercontent.com/ZhanYF/static/main/libmarisa-wip.tar

(also attached in this email)

Attachment: libmarisa-wip.tar
Description: Unix tar archive

Reply via email to