Date: Thu, 7 Dec 2017 01:53:27 +0100 From: Hans Petter Selasky <hps@selasky.org> To: Bryan Drewery <bdrewery@FreeBSD.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r326169 - in head: . contrib/ofed lib/libc/locale share/mk sys/amd64/amd64 sys/amd64/conf sys/conf sys/contrib/rdma/krping sys/dev/cxgbe sys/dev/cxgbe/common sys/dev/cxgbe/iw_cxgbe sys/... Message-ID: <19abac3b-8407-abd8-4fe9-c23d6bd7121f@selasky.org> In-Reply-To: <cec48299-e075-fe51-1297-4eb10a4f7619@FreeBSD.org> References: <201711241450.vAOEoSFW056744@repo.freebsd.org> <ea6c8eb5-f849-df2a-ab80-75d8ebc1edb8@FreeBSD.org> <0fec20d5-cb8f-4937-5dd0-54b8b7461772@selasky.org> <cec48299-e075-fe51-1297-4eb10a4f7619@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 12/07/17 01:38, Bryan Drewery wrote: > 1. SUBDIR=../../somewhere else is inherently wrong. > 2. Building a library from a directory named '2' is wrong. > 3. Not just using proper SUBDIR_DEPEND and making all these subdirs is > not needed and complicates things MORE by splitting them all up. > 4. Building a library from a directory where its real bsd.lib.mk is not > at is wrong. > 5. Depending on an include directory in the Makefile.inc1 library > dependencies is simply not needed - I told you that. Try building the COMPAT 32-bit libraries with OFED and you'll see that this is needed! > 6. Using these /0 /1 /2 /3 directories actually hurts the 'make > libraries' parallelism/dependency graph. It ends up building /1 rather > than building libibcm and libibumad directly in its graph. It creates > an indirection which adds more unneeded submake recursion. I think this is no argument over having to maintain and update Makefile.inc1 with all the dependencies every time there is a change or new driver library added to OFED. > > The whole thing needlessly obfuscates these libraries. > > It's fine, I'm going to rewrite it all now. It would be nice if these utilities can be built standalone, outside the buildworld target aswell. I've suggested adding an "all-install" variant to make. Having to kick a buildworld to test-build contrib/ofed is quite overkill, and that is some of reasoning behind the current Makefile layout. 6: When a set of libraries should be built in order, it is more clean to have 4 dependencies, than a bunch of them in my opinion. You can use the updated "tools/make_libdeps.sh" to figure this out. The old approach with _prebuild_libs+= won't work :-( --HPS
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?19abac3b-8407-abd8-4fe9-c23d6bd7121f>