[MacPorts] #38124: Having libc-headers active causes cctools to fail to build
#38124: Having libc-headers active causes cctools to fail to build ---------------------+---------------------------------- Reporter: egall@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Keywords: | Port: libc-headers cctools ---------------------+---------------------------------- I was just trying to rebuild cctools, and the build failed on me. Relevant part of the log: {{{ ./../include/stuff/errors.h:39:29: note: use __attribute__((visibility("hidden"))) attribute instead libtool.c:87:13: error: expected identifier or '{' static enum bool zero_ar_date = FALSE; ^ /opt/local/include/stdbool.h:36:14: note: expanded from macro 'bool' #define bool _Bool ^ libtool.c:87:1: warning: declaration does not declare anything [-Wmissing- declarations] static enum bool zero_ar_date = FALSE; ^~~~~~ libtool.c:100:10: error: expected identifier or '{' enum bool ^ /opt/local/include/stdbool.h:36:14: note: expanded from macro 'bool' #define bool _Bool ^ libtool.c:101:13: error: type name requires a specifier or qualifier no_files_ok; /* ok to see no files */ ^ libtool.c:102:10: error: expected identifier or '{' enum bool ranlib; /* set if this is run as ranlib not libtool */ ^ /opt/local/include/stdbool.h:36:14: note: expanded from macro 'bool' #define bool _Bool ^ In file included from checksyms.c:38libtool.c:102:21: error: type name requires a specifier or qualifier enum bool ranlib; /* set if this is run as ranlib not libtool */ ^ libtool.c:103:10: error: expected identifier or '{' enum bool s; /* sort the table of contents */ ^ /opt/local/include/stdbool.h:36:14: note: expanded from macro 'bool' #define bool _Bool: ./../include/stuff/errors.h:35:26: warning: use of __private_extern__ on a declaration may not prod ^ libtool.c:103:16: error: type name requires a specifier or qualifier enum bool s; /* sort the table of contents */ ^ libtool.c:104:10: error: expected identifier or '{' enum bool a; /* don't sort the table of contents (original form) */ ^ /opt/local/include/stdbool.h:36:14: note: expanded from macro 'bool' #define bool _Bool ^ libtool.c:104:16: error: type name requires a specifier or qualifier enum bool a; /* don't sort the table of contents (original form) */ ^ libtool.c:105:10: error: expected identifier or '{' enum bool c; /* include commmon symbols in the table of contents */ ^ /opt/local/include/stdbool.h:36:14: note: expanded from macro 'bool' #define bool _Bool ^ libtool.c:105:16: error: type name requires a specifier or qualifier enum bool c; /* include commmon symbols in the table of contents */ ^ libtool.c:106:10: error: expected identifier or '{' enum bool t; /* just "touch" the archives to get the date right */ ^ /opt/local/include/stdbool.h:36:14: note: expanded from macro 'bool' #define bool _Bool ^ libtool.c:106:16: error: type name reuce external symbol private to the linkage unit and is deprecated [-Wprivate-extern] __private_extern__ char *progname; ^ ./../include/stuff/errors.h:35:26: note: use __attribute__((visibility("hidden"))) attribute quires a specifier or qualifier enum bool t; /* just "touch" the archives to get the date right */ ^ libtool.c:107:10: error: expected identifier or '{' enum bool f; /* warn if the output archive is fat,used by ar(1) -s */ ^ /opt/local/include/stdbool.h:36:14: note: expanded from macro 'bool' #define bool _Bool ^ libtool.c:107:16: error: type name requires a specifier or qualifier enum bool f; /* warn if the output archive is fat,used by ar(1) -s */ ^ libtool.c:108:10: error: expected identifier or '{' enum bool q; /* only write archive if NOT fat, used by ar(1) */ ^ /opt/local/include/stdbool.h:36:14: note: expanded from macro 'bool' #define bool _Bool ^ libtool.c:108:16: error: type name requires a specifier or qualifier enum bool q; /* only write archive if NOT fat, used by ar(1) */ ^ libtool.c:110:10: error: expected identifier or '{' enum bool final_output_specified; /* if -final_output is specified */ ^ /opt/local/include/stdbool.h:36:14: note: expanded from macro 'bool' #define bool _Bool ^ libtool.c:110:37: error: type name requires a specifier or qualifier enum bool final_output_specified; /* if -final_output is specified */ ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] instead ./../include/stuff/errors.h:39:29: warning: use of __private_extern__ on a declaration may not produce external symbol private to the linkage unit and is deprecated [-Wprivate-extern] __private_extern__ uint32_t errors; ^ ./../include/stuff/errors.h:39:29: note: use __attribute__((visibility("hidden"))) attribute instead checksyms.c:374:34: warning: comp3 warnings and 20 errors generated. make[1]: *** [libtool.o] Error 1 make[1]: *** Waiting for unfinished jobs.... arison of unsigned expression < 0 is always false [-Wtautological-compare] else if(symbols[i].n_un.n_strx < 0 || ~~~~~~~~~~~~~~~~~~~~~~ ^ ~ 3 warnings generated. 2 warnings generated. In file included from checksyms.c:38: ./../include/stuff/errors.h:35:26: warning: use of __private_extern__ on a declaration may not produce external symbol private to the linkage unit and is deprecated [-Wprivate-extern] __private_extern__ char *progname; ^ ./../include/stuff/errors.h:35:26: note: use __attribute__((visibility("hidden"))) attribute instead ./../include/stuff/errors.h:39:29: warning: use of __private_extern__ on a declaration may not produce external symbol private to the linkage unit and is deprecated [-Wprivate-extern] __private_extern__ uint32_t errors; ^ ./../include/stuff/errors.h:39:29: note: use __attribute__((visibility("hidden"))) attribute instead checksyms.c:374:34: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare] else if(symbols[i].n_un.n_strx < 0 || ~~~~~~~~~~~~~~~~~~~~~~ ^ ~ In file included from nm.c:94: ./../include/stuff/errors.h:35:26: warning: use of __private_extern__ on a declaration may not produce external symbol private to the linkage unit and is deprecated [-Wprivate-extern] __private_extern__ char *progname; ^ ./../include/stuff/errors.h:35:26: note: use __attribute__((visibility("hidden"))) attribute instead ./../include/stuff/errors.h:39:29: warning: use of __private_extern__ on a declaration may not produce external symbol private to the linkage unit and is deprecated [-Wprivate-extern] __private_extern__ uint32_t errors; ^ ./../include/stuff/errors.h:39:29: note: use __attribute__((visibility("hidden"))) attribute instead 2 warnings generated. In file included from lipo.c:62: ./../include/stuff/errors.h:35:26: warning: use of __private_extern__ on a declaration may not produce external symbol private to the linkage unit and is deprecated [-Wprivate-extern] __private_extern__ char *progname; ^ ./../include/stuff/errors.h:35:26: note: use __attribute__((visibility("hidden"))) attribute instead ./../include/stuff/errors.h:39:29: warning: use of __private_extern__ on a declaration may not produce external symbol private to the linkage unit and is deprecated [-Wprivate-extern] __private_extern__ uint32_t errors; ^ ./../include/stuff/errors.h:39:29: note: use __attribute__((visibility("hidden"))) attribute instead 3 warnings generated. 2 warnings generated. 2 warnings generated. make[1]: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_cctools/cctools/work/cctools-836/misc' make: *** [all] Error 1 make: Leaving directory `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_cctools/cctools/work/cctools-836' Command failed: cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_devel_cctools/cctools/work/cctools-836" && /usr/bin/make -j4 -w all RC_OS="macos" RC_ProjectSourceVersion=836 USE_DEPENDENCY_FILE=NO BUILD_DYLIBS=NO CC="/usr/bin/clang" CXX="/usr/bin/clang++" RC_ARCHS="i386 x86_64" SDK="-I/opt/local/include" LTO=-DLTO_SUPPORT RC_CFLAGS="-arch x86_64 -arch i386 -I`llvm-config-mp-3.2 --includedir`" LLVM_MC="llvm-mc-mp-3.2" TRIE=-DTRIE_SUPPORT Exit code: 2 }}} Deactivating libc-headers makes cctools build successfully. I've attached both the main.log from the failed build attempt and from the successful one after that. And a diff between the two. -- Ticket URL: <https://trac.macports.org/ticket/38124> MacPorts <http://www.macports.org/> Ports system for Mac OS
#38124: Having libc-headers active causes cctools to fail to build -----------------------------------+---------------------- Reporter: egall@… | Owner: larryv@… Type: defect | Status: assigned Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: libc-headers cctools | -----------------------------------+---------------------- Changes (by larryv@…): * owner: macports-tickets@… => larryv@… * status: new => assigned Comment: This looks related to #37601. -- Ticket URL: <https://trac.macports.org/ticket/38124#comment:1> MacPorts <http://www.macports.org/> Ports system for Mac OS
#38124: Having libc-headers active causes cctools to fail to build -----------------------------------+---------------------- Reporter: egall@… | Owner: larryv@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: fixed | Keywords: Port: libc-headers cctools | -----------------------------------+---------------------- Changes (by larryv@…): * status: assigned => closed * resolution: => fixed Comment: Added a build conflict to cctools in r103240. -- Ticket URL: <https://trac.macports.org/ticket/38124#comment:2> MacPorts <http://www.macports.org/> Ports system for Mac OS
#38124: Having libc-headers active causes cctools to fail to build -----------------------------------+---------------------- Reporter: egall@… | Owner: larryv@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: fixed | Keywords: Port: libc-headers cctools | -----------------------------------+---------------------- Comment (by egall@…): Actually looking back at the ticket you linked to, it looks like this is a bigger issue than just marking the build conflict. The whole point of adding a libc-headers was to make MacPorts self-hosting (something that I'd like, too), and both libc-headers and cctools are necessary for that purpose. While this will work in the meantime, I'd like upstream to eventually provide a more permanent fix. -- Ticket URL: <https://trac.macports.org/ticket/38124#comment:3> MacPorts <http://www.macports.org/> Ports system for Mac OS
#38124: Having libc-headers active causes cctools to fail to build -----------------------------------+---------------------- Reporter: egall@… | Owner: larryv@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: fixed | Keywords: Port: libc-headers cctools | -----------------------------------+---------------------- Comment (by jmr@…): True, resolving it that way is really a wontfix. -- Ticket URL: <https://trac.macports.org/ticket/38124#comment:4> MacPorts <http://www.macports.org/> Ports system for Mac OS
#38124: Having libc-headers active causes cctools to fail to build -----------------------------------+---------------------- Reporter: egall@… | Owner: larryv@… Type: defect | Status: reopened Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: libc-headers cctools | -----------------------------------+---------------------- Changes (by larryv@…): * status: closed => reopened * resolution: fixed => Comment: So is the problem with libc-headers or cctools? #37601 seems to imply that it’s the former. -- Ticket URL: <https://trac.macports.org/ticket/38124#comment:5> MacPorts <http://www.macports.org/> Ports system for Mac OS
#38124: Having libc-headers active causes cctools to fail to build -----------------------------------+------------------- Reporter: egall@… | Owner: Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: libc-headers cctools | -----------------------------------+------------------- Changes (by larryv@…): * status: reopened => new * owner: larryv@… => -- Ticket URL: <https://trac.macports.org/ticket/38124#comment:6> MacPorts <http://www.macports.org/> Ports system for Mac OS
#38124: Having libc-headers active causes cctools to fail to build -----------------------------------+-------------------------------- Reporter: egall@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: libc-headers cctools | -----------------------------------+-------------------------------- Changes (by larryv@…): * owner: => macports-tickets@… -- Ticket URL: <https://trac.macports.org/ticket/38124#comment:7> MacPorts <http://www.macports.org/> Ports system for Mac OS
#38124: Having libc-headers active causes cctools to fail to build -----------------------------------+-------------------------------- Reporter: egall@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: libc-headers cctools | -----------------------------------+-------------------------------- Comment (by ryandesign@…): I would say cctools is not doing anything wrong; it's completely reasonable to assume that stdio.h and other system headers exist and work. It's a bug for libc-headers to be installing headers of standard names that don't work like the corresponding system headers. -- Ticket URL: <https://trac.macports.org/ticket/38124#comment:8> MacPorts <http://www.macports.org/> Ports system for Mac OS
#38124: Having libc-headers active causes cctools to fail to build -----------------------------------+-------------------------------- Reporter: egall@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: | Keywords: Port: libc-headers cctools | -----------------------------------+-------------------------------- Comment (by jeremyhu@…): yes. -- Ticket URL: <https://trac.macports.org/ticket/38124#comment:9> MacPorts <http://www.macports.org/> Ports system for Mac OS
#38124: cctools: build fails if libc-headers is active -----------------------------------+-------------------------------- Reporter: egall@… | Owner: macports-tickets@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.1.3 Resolution: duplicate | Keywords: Port: libc-headers cctools | -----------------------------------+-------------------------------- Changes (by ryandesign@…): * status: new => closed * cc: ryandesign@… (added) * resolution: => duplicate Comment: Replying to [comment:2 larryv@…]:
Added a build conflict to cctools in r103240.
Jeremy reverted half of r103240 in r103361; I reverted the other half in r103371. Duplicate of #37601. -- Ticket URL: <https://trac.macports.org/ticket/38124#comment:10> MacPorts <http://www.macports.org/> Ports system for Mac OS
participants (1)
-
MacPorts