Re: [Tack-devel] ACK compiles on NetBSD-macppc, sort of...
Moved to https://github.com/davidgiven/ack
Brought to you by:
dtrg
From: Perry E. M. <pe...@pi...> - 2006-07-20 02:57:57
|
"Gregory T. (tim) Kelly" <gt...@di...> writes: > "/usr/include/sys/cdefs.h", line 245: error: unknown control > > The line in cdefs.h that is failing is > > #error "No function renaming possible" > > within > > #if !defined(_STANDALONE) && !defined(_KERNEL) > #ifdef __GNUC__ > #define __RENAME(x) ___RENAME(x) > #else > #ifdef __lint__ > #define __RENAME(x) __symbolrename(x) > #else > #error "No function renaming possible" > #endif /* __lint__ */ > #endif /* __GNUC__ */ > #else /* _STANDALONE || _KERNEL */ > #define __RENAME(x) no renaming in kernel or standalone environment > #endif Congratulations. You've hit NetBSD's symbol renaming stuff. Unfortunately, in order to handle API versioning, it is kind of necessary for whatever compiler one uses under NetBSD to be able to deal with symbol renaming in order to select the appropriate version of the C library call in question -- no versioning support means you have no hope at all of linking against our C library. Luckily, symbol renaming is fairly easy to implement. It requires only the most minor of namespace tricks. Have a look at, for example, sys/cdefs_aout.h or (preferably) sys/cdefs_elf.h for some clues on what is being done. Generally speaking, it should be pretty straightforward to make the whole thing work right. Perry |