Opened 3 months ago

Last modified 3 months ago

#70280 assigned defect

chez-scheme @10.0.0: builds for an inferred arch, and infers incorrectly on Snow Leopard

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by: mohd-akram (Mohamed Akram)
Priority: Normal Milestone:
Component: ports Version: 2.9.3
Keywords: snowleopard Cc:
Port: chez-scheme

Description

chez-scheme fails to build on Snow Leopard, where it uses MacPorts clang 11. I am not able to decipher from the log what the error is.

Attachments (1)

chez-scheme.log (41.9 KB) - added by ryandesign (Ryan Carsten Schmidt) 3 months ago.

Download all attachments as: .zip

Change History (4)

Changed 3 months ago by ryandesign (Ryan Carsten Schmidt)

Attachment: chez-scheme.log added

comment:1 Changed 3 months ago by ryandesign (Ryan Carsten Schmidt)

The relevant part of the log may be:

: ti3osx/bin/ti3osx/scheme
running ti3osx/bin/ti3osx/scheme to build ti3osx/s/cmacros.so
sizeof(ptr) * 8 [8] != ptr_bits [32]
sizeof(long) * 8 [8] != long_bits [32]
sizeof(size_t) * 8 [8] != size_t_bits [32]
sizeof(ssize_t) * 8 [8] != size_t_bits [32]
sizeof(ptrdiff_t) * 8 [8] != ptrdiff_t_bits [32]
running ti3osx/bin/ti3osx/scheme to build ti3osx/s/nanopass.so
sizeof(ptr) * 8 [8] != ptr_bits [32]
sizeof(long) * 8 [8] != long_bits [32]
sizeof(size_t) * 8 [8] != size_t_bits [32]
sizeof(ssize_t) * 8 [8] != size_t_bits [32]
sizeof(ptrdiff_t) * 8 [8] != ptrdiff_t_bits [32]
failed
 in build-one
 in loop
 in module->hash
make: *** [build] Error 1

comment:2 Changed 3 months ago by ryandesign (Ryan Carsten Schmidt)

In the buildbot log for 10.7 I see:

Configuring for ta6osx, and will create boot files via pb

However in the log for 10.6 I see:

Configuring for ti3osx, and will create boot files via pb 

This project uses a non-autoconf configure script that tries to infer what to build for based on uname. Likely, the fact that uname -m returns i386 on most 10.6 systems is misleading this configure script into thinking it is supposed to be building for 32-bit; when we then nevertheless compile for 64-bit it fails this sanity check. This also explains why the 32-bit build on 10.6 succeeded. We need to override the configure script's auto-detection by specifying the --machine= configure argument.

This also makes clear that the port's universal variant cannot possibly work in its present form and should be disabled. The muniversal portgroup could perhaps be used to make it work if that is desired in the future.

I have a partial fix ready to go but am waiting for a response to an upstream bug report to see if it can be improved.

comment:3 Changed 3 months ago by ryandesign (Ryan Carsten Schmidt)

Summary: chez-scheme @10.0.0: build failure on Snow Leopard with MacPorts clang 11chez-scheme @10.0.0: builds for an inferred arch, and infers incorrectly on Snow Leopard
Note: See TracTickets for help on using tickets.