Page MenuHomeFreeBSD

Remove Redundant Include Directories
ClosedPublic

Authored by cy on Jul 28 2017, 6:13 AM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Apr 12, 5:46 AM
Unknown Object (File)
Feb 9 2024, 10:56 PM
Unknown Object (File)
Feb 1 2024, 12:16 AM
Unknown Object (File)
Dec 20 2023, 3:43 AM
Unknown Object (File)
Oct 28 2023, 1:57 PM
Unknown Object (File)
Sep 23 2023, 12:44 AM
Unknown Object (File)
Aug 22 2023, 3:39 PM
Unknown Object (File)
May 9 2023, 12:04 PM
Subscribers
None

Details

Summary

The includes -I${KRB5DIR}/lib/krb5 -I${KRB5OBJDIR} -I${ASN1OBJDIR} are incorrect and not used. See example below. It is proposed that the include directory specifications be removed.

cc -target x86_64-unknown-freebsd12.0 --sysroot=/usr/obj/export/home/cy/freebsd/svn/current/tmp -B/usr/obj/export/home/cy/freebsd/svn/current/tmp/usr/bin -O2 -pipe -pipe -I/export/home/cy/freeb
sd/svn/current/contrib/telnet -DENCRYPTION -DAUTHENTICATION -DSRA -DKRB5 * SEE HERE ---> -I/lib/krb5 -I -I <--- * -DFORWARD -Dnet_write=telnet_net_write -MD -MF.depend.genget.o -MTgenget.o -std=gnu99 -fstack-protector-
strong -Wsystem-headers -Werror -Wall -Wno-format-y2k -Wno-uninitialized -Wno-pointer-sign -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable -Wno-tautological-compare -Wno-unused-val
ue -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion -Wno-unused-local-typedef -Wno-address-of-packed-member -Wno-switch -Wno-switch-enum -Wno-knr-promoted-parameter -Qunused-ar
guments -c /export/home/cy/freebsd/svn/current/contrib/telnet/libtelnet/genget.c -o genget.o

Test Plan

Make tinderbox on universe12b completed successfully.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Does Kerberised telnet still work after this? ISTR (many years ago) that a successful compile does not necessarily mean a working binary due to similarly named libraries.

Yes, it still works.

Notice the include directories either don't exist or are are null. -I/lib/krb5 -I -I They are never found.

I suspect -I${SRCTOP}/crypto/heimdal/lib/krb5 was supposed to be one of the directories.

From my work so far on the Heimdal to MIT project, I suspect that like discovered during the amd upgrade project, Heimdal is pulling its include files from /usr/include. (This too will need to be fixed.)

In D11769#243938, @cy wrote:

Yes, it still works.

Notice the include directories either don't exist or are are null. -I/lib/krb5 -I -I They are never found.

I suspect -I${SRCTOP}/crypto/heimdal/lib/krb5 was supposed to be one of the directories.

From my work so far on the Heimdal to MIT project, I suspect that like discovered during the amd upgrade project, Heimdal is pulling its include files from /usr/include. (This too will need to be fixed.)

The logic that cy@ pointed out hasn't worked since r117675 (when kerberos support was rolled in to lib/libtelnet and out of kerberos5/lib/libtelnet). In order for that change to have been successful, kerberos/Makefile.inc should have been included.

This revision is now accepted and ready to land.Jul 28 2017, 4:06 PM