In message <[EMAIL PROTECTED]>, Brian Somers writes:
>> Yes, the src/tools/tools/kerninclude script first renames the include
>> and if the source file still compiles it declares a "no-read" and
>> leaves the #include intact.
>
>The thing that's screwed me up the most doing this sort of thing is
>something like:
>
> #include <net/if_tun.h> /* For TUNS* ioctls */
> ....
> #ifdef TUNSIFMODE
> /* Make sure we're POINTOPOINT */
> iff = IFF_POINTOPOINT;
> if (ID0ioctl(bundle.dev.fd, TUNSIFMODE, &iff) < 0)
> log_Printf(LogERROR, "bundle_Create: ioctl(TUNSIFMODE): %s\n",
> strerror(errno));
> #endif
>
>hence the comments beside many of the includes in ppp. I think the
>only way to ensure something really can be removed is to compile with
>& without and ensure that the resulting object is the same modulo
>embedded compile dates.
If the MD5 over the generated object file changes after substituting an
empty file for the include, I consider it "used" by default, so that
case should be covered as well.
--
Poul-Henning Kamp | UNIX since Zilog Zeus 3.20
[EMAIL PROTECTED] | TCP/IP since RFC 956
FreeBSD coreteam member | BSD since 4.3-tahoe
Never attribute to malice what can adequately be explained by incompetence.
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message