New Ticket     Tickets     Wiki     Browse Source     Timeline     Roadmap     Ticket Reports     Search

Ticket #25439 (closed defect: fixed)

Opened 3 years ago

Last modified 2 years ago

libffi@3.0.9_0+universal installes an invalid ffitarget.h

Reported by: yugui@… Owned by: mcalhoun@…
Priority: Normal Milestone:
Component: ports Version: 1.9.1
Keywords: muniversal Cc:
Port: libffi

Description

I installed libffi@3.0.9_0 with +universal variant on MacOS X 10.5, and I got an invalid /opt/local/lib/libffi-3.0.9/include/ffitarget.h .

I did as the following:

% uname -a
Darwin yugui-macbookpro.local 9.8.0 Darwin Kernel Version 9.8.0: Wed Jul 15 16:55:01 PDT 2009; root:xnu-1228.15.4~1/RELEASE_I386 
% port version
Version: 1.9.1
% sudo port install libffi +universal universal_archs="i386 ppc x86_64"

After installation succeeded, I got the attached ffitarget.h as /opt/local/lib/libffi-3.0.9/include/ffitarget.h. This file is not valid for C preprocessor, So preprocessing for the following C source fails.

conftest.c:

#include <ffi.h>
int main(void){ return 0; }

preprocessing:

% /usr/bin/gcc -E -I/opt/local/include -I/opt/local/lib/libffi-3.0.9/include -o conftest.i conftest.c
In file included from /opt/local/lib/libffi-3.0.9/include/ffi.h:68,
                 from conftest.c:1:
/opt/local/lib/libffi-3.0.9/include/ffitarget.h:10:2: error: #endif without #if
/opt/local/lib/libffi-3.0.9/include/ffitarget.h:200:2: error: #else after #else
/opt/local/lib/libffi-3.0.9/include/ffitarget.h:197:1: error: the conditional began here
/opt/local/lib/libffi-3.0.9/include/ffitarget.h:202:2: error: #else after #else
/opt/local/lib/libffi-3.0.9/include/ffitarget.h:197:1: error: the conditional began here
/opt/local/lib/libffi-3.0.9/include/ffitarget.h:192:1: error: unterminated #else
/opt/local/lib/libffi-3.0.9/include/ffitarget.h:191:1: error: unterminated #if
/opt/local/lib/libffi-3.0.9/include/ffitarget.h:83:1: error: unterminated #if
/opt/local/lib/libffi-3.0.9/include/ffitarget.h:62:1: error: unterminated #ifndef
/opt/local/lib/libffi-3.0.9/include/ffitarget.h:39:1: error: unterminated #if
/opt/local/lib/libffi-3.0.9/include/ffitarget.h:34:1: error: unterminated #ifndef

It seems to have tried merging src/x86/ffitarget.h and src/powerpc/ffitarget.h and to have generates a wrong ffitarget.h.

Attachments

ffitarget.h (7.1 KB) - added by yugui@… 3 years ago.
generated ffitarget.h

Change History

Changed 3 years ago by yugui@…

generated ffitarget.h

comment:1 Changed 3 years ago by jmr@…

  • Port set to libffi

Please remember to fill in the Port field.

comment:2 Changed 3 years ago by jmr@…

  • Keywords muniversal added
  • Owner changed from macports-tickets@… to mcalhoun@…

comment:3 Changed 2 years ago by jmr@…

  • Status changed from new to closed
  • Resolution set to fixed
Note: See TracTickets for help on using tickets.