Opened 13 years ago

Last modified 7 years ago

#29336 assigned defect

Maude: universal variant fails

Reported by: ryandesign (Ryan Carsten Schmidt) Owned by:
Priority: Normal Milestone:
Component: ports Version: 1.9.2
Keywords: universal Cc:
Port: Maude

Description

Maude does not build when using the universal variant:

Making all in Utility
ccache /usr/bin/g++-4.2 -DHAVE_CONFIG_H -I. -I. -I../..   -I/opt/local/include  -pipe -O2 -arch x86_64 -arch i386 -c -o macros.o macros.cc
macros.cc:111: error: integer constant is too large for 'long' type
macros.cc:115: error: integer constant is too large for 'long' type
macros.cc:117: error: integer constant is too large for 'long' type
macros.cc: In function 'Int64 stringToInt64(const char*, bool&, int)':
macros.cc:117: warning: overflow in implicit constant conversion
macros.cc: In function 'void correctEcvt(double, int, char*, int&, int&)':
macros.cc:258: warning: large integer implicitly truncated to unsigned type
macros.cc:259: warning: large integer implicitly truncated to unsigned type
macros.cc:266: warning: right shift count >= width of type
macros.cc:268: warning: right shift count >= width of type
lipo: can't open input file: /var/tmp//cccFBzK7.out (No such file or directory)
make[3]: *** [macros.o] Error 1
make[2]: *** [all-recursive] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

Attachments (2)

main.log (24.7 KB) - added by ryandesign (Ryan Carsten Schmidt) 13 years ago.
fix-universal.diff (1011 bytes) - added by dcolish@… 13 years ago.

Download all attachments as: .zip

Change History (5)

Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

Attachment: main.log added

Changed 13 years ago by dcolish@…

Attachment: fix-universal.diff added

comment:1 Changed 13 years ago by dcolish@…

I'm not 100% sure that diff is the best way to fix the build issue, but it does appear to do the trick.

comment:2 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)

I'm skeptical about this proposed fix. It seems to me that the developers of maude want to make decisions in the build process based on whether we're building 32-bit or 64-bit, and that they make that determination at configure time and as a result define various constants in config.h that are then referenced in the source at build time. Instead, the determination should be made at build time, using existing preprocessor defines like __LP64__.

comment:3 Changed 7 years ago by mf2k (Frank Schima)

Owner: dcolish@… deleted
Status: newassigned

See #54089.

Note: See TracTickets for help on using tickets.