Re: Linux/m68k config again
On Sun, Dec 29, 2013 at 12:03 AM, Thorsten Glaser <tg@mirbsd.de> wrote:
> understand. But the question is, does the work you do there
> have any influence on the Debian configs? (Not that the work
> you were doing was useless, rather the contrary. But I think
> we need to get *both* the “Linux defconfigs” and whatever
> Debian uses into shape.)
>
>
> I’m trying again to understand how Debian generates its config.
>
> http://buildd.debian-ports.org/status/fetch.php?pkg=linux&arch=m68k&ver=3.12.6-1&stamp=1387760310
>
> This is the autobuilder log from the latest kernel build.
> Please look at the following lines:
>
>
> python debian/bin/kconfig.py 'debian/build/config.m68k_none_m68k' \
> debian/config/config debian/config/m68k/config
>
> This basically does the equivalent of:
>
> cat debian/config/config debian/config/m68k/config \
> >debian/build/config.m68k_none_m68k
>
> Except that when you have 'CONFIG_X=y' followed by
> '# CONFIG_X is not set', only the latter will show up in
> the output, viceque versa.
IC.
So you need a file that
- Explicitly enables what we need,
- Explicitly disables what we don't want.
And the rest is defined by the base debian/config/config and
"make oldconfig" on top.
> env -u ABINAME -u ABINAME_PART -u ARCH -u FEATURESET -u FLAVOUR \
> -u VERSION -u LOCALVERSION DISTRIBUTION_OFFICIAL_BUILD=1 \
> DISTRIBUTOR="Debian" DISTRIBUTION_VERSION="3.12.6-1" \
> KBUILD_BUILD_TIMESTAMP="Debian 3.12.6-1 (2013-12-21)" \
> KBUILD_BUILD_USER="debian-kernel" \
> KBUILD_BUILD_HOST="lists.debian.org" /usr/bin/make -C \
> 'debian/build/source_none' \
> O='/«PKGBUILDDIR»/debian/build/build_m68k_none_m68k' V=1 \
> listnewconfig
>
> Immediately (after listnewconfig’s output) followed by:
>
> yes "" | env -u ABINAME -u ABINAME_PART -u ARCH -u FEATURESET \
> -u FLAVOUR -u VERSION -u LOCALVERSION \
> DISTRIBUTION_OFFICIAL_BUILD=1 DISTRIBUTOR="Debian" \
> DISTRIBUTION_VERSION="3.12.6-1" \
> KBUILD_BUILD_TIMESTAMP="Debian 3.12.6-1 (2013-12-21)" \
> KBUILD_BUILD_USER="debian-kernel" \
> KBUILD_BUILD_HOST="lists.debian.org" /usr/bin/make -C \
> 'debian/build/source_none' \
> O='/«PKGBUILDDIR»/debian/build/build_m68k_none_m68k' \
> oldconfig >/dev/null
> kernel/time/Kconfig:162:warning: range is invalid
Ugh, "yes", so everything else is enabled. Not silentoldconfig.
> These two lines are “how” it generates the configuration that
> is actually used (in the immediately following gmake invocation)
> for the kernel.
>
>
> So basically, the mechanism of “define some stuff to y or m or
> not set, leave the rest undefined, then run make oldconfig” is
> what Debian uses, the “defconfigs” you were talking about are
> *not* (and cannot) be involved.
>
> I hope this clears things up from my side. Is there anything
> from your side I can do, now?
>
> I’ve attached the debian/bin/kconfig.py output from the SVN for
> sid (3.12.6-2~unreleased) and trunk (3.13~rc4-1~exp1~unreleased)
> so you can run both of these against “make oldconfig” on your,
> or probably better torvalds’, tree then look at what comes out
> and send me deltas to tweak the output. Deltas should indicate,
> for each CONFIG_* option, in which Kconfig file they are, since
> we use that (in comments) for grouping in the Debian config, see:
> http://anonscm.debian.org/viewvc/kernel/dists/trunk/linux/debian/config/m68k/config?revision=20825&view=markup
Thanks, added to haystack of tasks.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
Reply to: