Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 14 Jan 2019 13:14:26 -0800
From:      Enji Cooper <yaneurabeya@gmail.com>
To:        rgrimes@freebsd.org
Cc:        Cy Schubert <Cy.Schubert@cschubert.com>, Takahashi Yoshihiro <nyan@freebsd.org>, src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   Re: svn commit: r343011 - in head/kerberos5: lib/libasn1  lib/libgssapi_krb5 lib/libhdb lib/libheimntlm lib/libhx509  lib/libkadm5clnt lib/libkadm5srv lib/libkdc lib/libkrb5 lib/libwind  libexec/digest-se...
Message-ID:  <67E1A06E-292E-4771-A604-46C60D899277@gmail.com>
In-Reply-To: <201901142031.x0EKVQSb036914@pdx.rh.CN85.dnsmgr.net>
References:  <201901142031.x0EKVQSb036914@pdx.rh.CN85.dnsmgr.net>

next in thread | previous in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]

> On Jan 14, 2019, at 12:31 PM, Rodney W. Grimes <freebsd@pdx.rh.CN85.dnsmgr.net> wrote:
> 
>> In message <201901141617.x0EGHwqQ035748@pdx.rh.CN85.dnsmgr.net>,
>> "Rodney W. Gri
>> mes" writes:
>>>> Author: nyan
>>>> Date: Mon Jan 14 06:34:54 2019
>>>> New Revision: 343011
>>>> URL: https://svnweb.freebsd.org/changeset/base/343011
>>>> 
>>>> Log:
>>>>  Use ${SRCTOP}/contrib/com_err/com_err.h instead of the installed com_err.
>>> h.
>>>>  This fixes build when com_err.h is not installed.
>>> 
>>> Isn't this the general state of affairs for almost all
>>> of the source tree?   I would rather see this solved
>>> in a general way, rather than sprinkly all this
>>> -I${SRCTOP} all over in the tree.
>> 
>> Agreed however in practice this is fixed when discovered while working
>> on other issues/problems/projects.
> 
> This adds another special case that should not exist.
> 
>>> 
>>> It use to be (and maybe still is) required that you run
>>> cd $DRCTOP && make includes
>>> if you expected new source code to compile.  I expect
>>> this has changed, but the just of it should work in
>>> some aspect.
>> 
>> This fixes the potential bug of requiring a header file to be
>> installed. I suspect this to be an oversight at the time.
>> 
>> Good that it's fixed now.
> 
> Something is wrong, as infact com_err.h *IS*
> installed as /usr/include/com_err.h
> 
> diff /usr/include/com_err.h /usr/src/contrib/com_err/com_err.h

Hi Rod,
	In the full case, yes. It’s relying on the staging process for buildworld, which builds and installs everything in one phase as part of “make libraries”.
	The list of kerberos libraries which rely on libcom_err is potentially incomplete, so there’s a chance that it’s not installing the headers in time.
	I’ll leave it as an exercise to the reader (in part, because I’d rather not spending time chasing down this issue, as there are other bigger fish to fry), to find the underlying issue in Makefile.inc1 (in my not so humble opinion, kerberos/lib is broken down a bit too much in Makefile.inc1, which obfuscates dependencies, makes it extremely easy to miss them when adding/accounting for libraries, and also plugs too much knowledge into a separate location in the build system, duplicating efforts).
Cheers,
-Enji

2734 _prebuild_libs= ${_kerberos5_lib_libasn1} \
2735                 ${_kerberos5_lib_libhdb} \
2736                 ${_kerberos5_lib_libheimbase} \
2737                 ${_kerberos5_lib_libheimntlm} \
2738                 ${_libsqlite3} \
2739                 ${_kerberos5_lib_libheimipcc} \
2740                 ${_kerberos5_lib_libhx509} ${_kerberos5_lib_libkrb5} \
2741                 ${_kerberos5_lib_libroken} \
2742                 ${_kerberos5_lib_libwind} \
2743                 lib/libbz2 ${_libcom_err} lib/libcrypt \
…
2878 .if ${MK_KERBEROS} != "no"
2879 kerberos5/lib/libasn1__L: lib/libcom_err__L kerberos5/lib/libroken__L
2880 kerberos5/lib/libhdb__L: kerberos5/lib/libasn1__L lib/libcom_err__L \
2881     kerberos5/lib/libkrb5__L kerberos5/lib/libroken__L \
2882     kerberos5/lib/libwind__L lib/libsqlite3__L
2883 kerberos5/lib/libheimntlm__L: secure/lib/libcrypto__L kerberos5/lib/libkrb5__L \
2884     kerberos5/lib/libroken__L lib/libcom_err__L
2885 kerberos5/lib/libhx509__L: kerberos5/lib/libasn1__L lib/libcom_err__L \
2886     secure/lib/libcrypto__L kerberos5/lib/libroken__L kerberos5/lib/libwind__L
2887 kerberos5/lib/libkrb5__L: kerberos5/lib/libasn1__L lib/libcom_err__L \
2888     lib/libcrypt__L secure/lib/libcrypto__L kerberos5/lib/libhx509__L \
2889     kerberos5/lib/libroken__L kerberos5/lib/libwind__L \
2890     kerberos5/lib/libheimbase__L kerberos5/lib/libheimipcc__L
2891 kerberos5/lib/libroken__L: lib/libcrypt__L
2892 kerberos5/lib/libwind__L: kerberos5/lib/libroken__L lib/libcom_err__L
2893 kerberos5/lib/libheimbase__L: lib/libthr__L
2894 kerberos5/lib/libheimipcc__L: kerberos5/lib/libroken__L kerberos5/lib/libheimbase__L lib/libthr__L
2895 .endif
...
2903 .if ${MK_KERBEROS} != "no"
2904 _kerberos5_lib= kerberos5/lib
2905 _kerberos5_lib_libasn1= kerberos5/lib/libasn1
2906 _kerberos5_lib_libhdb= kerberos5/lib/libhdb
2907 _kerberos5_lib_libheimbase= kerberos5/lib/libheimbase
2908 _kerberos5_lib_libkrb5= kerberos5/lib/libkrb5
2909 _kerberos5_lib_libhx509= kerberos5/lib/libhx509
2910 _kerberos5_lib_libroken= kerberos5/lib/libroken
2911 _kerberos5_lib_libheimntlm= kerberos5/lib/libheimntlm
2912 _libsqlite3= lib/libsqlite3
2913 _kerberos5_lib_libheimipcc= kerberos5/lib/libheimipcc
2914 _kerberos5_lib_libwind= kerberos5/lib/libwind
2915 _libcom_err= lib/libcom_err
2916 .endif
...
2949 .for _lib in ${_startup_libs} ${_prebuild_libs} ${_generic_libs}
2950 ${_lib}__L: .PHONY .MAKE
2951 .if !defined(_MKSHOWCONFIG) && exists(${.CURDIR}/${_lib})
2952         ${_+_}@${ECHODIR} "===> ${_lib} (obj,all,install)"; \
2953                 cd ${.CURDIR}/${_lib}; \
2954                 if [ -z "${NO_OBJWALK}" ]; then ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ obj; fi; \
2955                 ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ all; \
2956                 ${MAKE} MK_TESTS=no DIRPRFX=${_lib}/ install
2957 .endif
2958 .endfor

[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCAAdFiEEtvtxN6kOllEF3nmX5JFNMZeDGN4FAlw8+7IACgkQ5JFNMZeD
GN7TwhAAkfVdOVYG1zUazOxs9lajlrH4nMRy4evgPHGToQTQ+7padZnljo6c3rRM
5iUHczEwWCf0JqzvE85uQUD/3KCT+ef09MD4F4avB5Y+K+39PlHJsPp0DINGZtsd
O324/CgBJ3ipaYVQsDCks4lRY8itfsM2TctLCu9xcjf6DxFG9WmE7P73NpgAeDms
PPzWeHy64uwS8pdMoMUypdjUuZ549OtHwBTbfYkTgbgTPNCfDlmOo3Ln7xr5Q5Gs
1ZzxJ7kvHKbhQHNCoDzeDwwgFLoZlJpFbwWCAjYFxwTgS5+UqUz8R+osbOEeWrI+
IkU0rBb8S1+B4FosOxnaH0PVNYpWHH94ltlhZaQrVZZyBaUA0KoiwCXuHrarYH3R
csxb6eYk1mcmOD55UyNGhIhChgUym/YfrW5RmodbdMVNNWcr6R3gjayYBshVMvXw
C8lr62dG9mKtO2KoBM0dE6uhC8/41OHlLvIY60mOQhzf15usDfdOy4slwy1oIf7I
PKJDaPf30+ZpZ0LFlBuM4GrzRhAAmApDwKR6q4Byjq+D10x5R08bnDMrFNO4FqHE
IyfX1ZQe34JiRmczr74TbDejQTcQzbNuiOd6nDRjmum/jX4AgoGfUvY85BPH7pIk
8pVQN/njDQhlTf8A4ZYNQLIcIlpz+AWiIMl4jKO+7hUGLS+gQAQ=
=qmlq
-----END PGP SIGNATURE-----

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?67E1A06E-292E-4771-A604-46C60D899277>