#25439: libffi@3.0.9_0+universal installes an invalid ffitarget.h ----------------------------+----------------------------------------------- Reporter: yugui@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 1.9.1 Keywords: | Port: ----------------------------+----------------------------------------------- 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. -- Ticket URL: <http://trac.macports.org/ticket/25439> MacPorts <http://www.macports.org/> Ports system for Mac OS