Opened 6 years ago

Closed 6 years ago

Last modified 5 years ago

#14749 closed bug (duplicate)

Building PHP fails in microtime.c

Reported by: bullfrog Owned by: bonefish
Priority: normal Milestone: Unscheduled
Component: Build System Version: R1/beta1
Keywords: glibc microtime php Cc:
Blocked By: Blocking: #3353
Platform: All

Description

I'd normally post this in haikuports, but my reasearch shows this may be a flaw in the OS implementation. So I'm posting here first. I'm trying to build php-7.1.25. It fails on when it gets to the microtime.c part of the compile. PHP docs mention it is most likely an issue in our glibc. http://php.net/manual/en/faq.build.php#faq.build.microtime

Attachments (1)

php-build-log.fail (9.2 KB ) - added by bullfrog 6 years ago.

Download all attachments as: .zip

Change History (9)

by bullfrog, 6 years ago

Attachment: php-build-log.fail added

comment:1 by waddlesplash, 6 years ago

Are those part of the POSIX spec?

comment:2 by bullfrog, 6 years ago

Is this the matter that was mentioned in php's git that required hardcoding includes as a workaround? It seems to be coming from our posix/sys headers.

Last edited 6 years ago by bullfrog (previous) (diff)

comment:3 by bullfrog, 6 years ago

The struct that it is looking for seems to be in sys/resource.h or rather missing from it.

Last edited 6 years ago by bullfrog (previous) (diff)

comment:5 by bullfrog, 6 years ago

I did some further digging. The missing fields in struct rusage{} seem to be in BSD and SYSV, but not specified in POSIX. https://www.tutorialspoint.com/unix_system_calls/getrusage.htm

Last edited 6 years ago by bullfrog (previous) (diff)

comment:6 by pulkomandy, 6 years ago

Blocking: 3353 added
Resolution: duplicate
Status: newclosed

Then PHP needs to be adjusted to use something else on Haiku (haikuports probably has a patch doing that for other versions).

We already have a ticket about adding these to rusage.

comment:7 by bullfrog, 6 years ago

Thanks.

comment:8 by nielx, 5 years ago

Remove milestone for tickets with status = closed and resolution != fixed

Note: See TracTickets for help on using tickets.