On Wed, 2019-08-14 at 19:55 +0200, Niclas Zeising wrote: > On 2019-08-14 19:23, Emmanuel Vadot wrote: > > On Wed, 14 Aug 2019 10:13:48 -0700 > > John Baldwin <jhb_at_FreeBSD.org> wrote: > > > > > On 8/14/19 9:22 AM, Ian Lepore wrote: > > > > This all sounds vaguely wrong, backwards, to me. A developer > > > > who is > > > > using a given module on their build system might want that > > > > module to be > > > > rebuilt automatically, but only if the build parameters match > > > > those of > > > > the running build host system. > > > > > > > > If my build host is running freebsd 12 amd64 and I'm doing a > > > > build for > > > > freebsd 13 armv7, I have no interest in automatic rebuilds of > > > > an amd64 > > > > driver module for a different OS arch and version just because > > > > that > > > > module happens to be installed on the system I use to do > > > > crossbuilds. > > > > > > > > My objections are theoretical... this automation just seems > > > > improperly > > > > designed to me. But it won't actually affect me in any way, > > > > because I > > > > don't build video driver modules from ports, and I don't run > > > > freebsd > > > > current on my build host machine. Probably the number of > > > > people doing > > > > crossbuilding is small enough that nobody else is going to > > > > object to > > > > this "the whole world is amd64" automation. > > > > > > You assume DRM is amd64-only when it is definitely not. It also > > > has > > > suitable guards in its Makefile to only build the relevant kernel > > > modules on supported architectures. > > > > I clearly don't want to spend time to build the drm and radeon > > modules > > when I'm hacking on arm64. > > Shouldn't LOCAL_MODULE have ${TARGET}.${TARGET_ARCH} as a > > subdirectory ? So when you install drm-kmod-* it will only install > > the > > source in /usr/local/modules/${TARGET}.${TARGET_ARCH}/ ? (or > > whatever > > the correct dir is). > > > > I'm not sure what you're trying to accomplish. I might be > misunderstanding completely, but, at least the drm ports have > safeguards > in their makefiles so they'll only be built for those arches where > there > is support, and only the modules needed, as an example, i915kms.ko > will > only be built on amd64 and i386, if that's what you're worried about. > Regards I can't understand what you guys are not-understanding. New machinery has been added that says "if some module source code exists in this absolute fixed location on the build machine, then whenever you do any kernel build for any OS version or any arch, rebuild that module source code so that the the build machine's video drivers stay in sync with the build machine's kernel." Do you not see that for some of us, only a tiny fraction of the builds done (maybe none of them at all) involve the kernel for the build host machine or the video drivers for the build host machine? And yet, for us, every build we do will now inapppropriately rebuild this video driver module which has nothing to do with the machine the build is targeting. And it's not just about crossbuilds, because it's about versions too. Even when a developer is running 13-current and wants their video driver rebuilt and installed automatically along with the kernel, they're certainly going to want that to happen only when they're building 13-current. If they're doing a test-build for 12-stable they certainly aren't going to want to build and install that video driver. -- IanReceived on Wed Aug 14 2019 - 16:04:26 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:21 UTC