Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ===== Toolchain and Build Session ===== ==== Agenda ==== * <del>Incremental builds with bmake and so on (BSDCam holdover)</del> (punted to BSDCan) * Review GPL in base status (BSDCam holdover) * Brief comparison of %%NetBSD%% (build.sh) vs buildworld/installworld/release * External toolchain status * GCC Support ==== Notes ==== === Review of GPLinBase === * Recent changes for editorial intent (pro-permissive, not anti-GPL) * linker (mclinker) * Is it feature complete? * linker scripts supported, not sure of exact feature set? * include directive (hps) * diff * Recollection that the issue with %%OpenBSD%%'s diff was wide char support * binutils * %%FreeBSD%% stuff has been upstreamed * Need a detailed breakout and to decide which pieces we should take from where * dtc * Done except for removing GPL version from tree * gcc (in tree) * esoteric architecture support needs to be upstreamed * format extensions patch needed for cross ports * libgcc * undwinder -> libunwind * ~60% done * groff * roff papers -> to doc repo * Some ports install things that mandoc won't render, but groff does * bapt@ to add hook to find ports that do not work with mandoc * gdb * gone by 11 * Should be building lldb by default by 10.1 === NetBSD build.sh, build === * Some discussion about build.sh vs alternative approaches to bootstrapping build tools * Needs to be more organized with pre-prep by %%FreeBSD%% and %%NetBSD%% people to be highly useful * NO_ROOT needs to be better documented === External Toolchain === Mostly about status of Warner's work to support GCC. * 4.9 is target for patches. Estimate at ~1500 lines of relevant patches. * our tree (loc) : * modernize x86 bulk of patches not needed in newer versions (5000) * backported and relicensed gcc bugfixes (2500) * %%FreeBSD%% specific architecture changes (2000) * printf extensions (150) * make issues due to gcc differences * how gcc --sysroot support works still unclear * -B differs in meaning * make format extensions a COMPILER_FEATURE * Should have a way to include a .mk file to describe external toolchain: TOOLCHAIN= %%<%%foo>.mk * Need to document external toolchain ==== Actions ==== * add ports impact (column), e.g. gperf, texinfo to %%GPLinBase%% (bapt) * Break out binutils in %%GPLinBase%% (brooks, emaste) * Follow up with DES re diff status (gavin) * Move roff papers to doc repo (???) * Add ports infrastructure to detect invalid man pages for groff depend (bapt) * Have a kernel build session at BSDCan (brooks) * Merge architecture specific gcc patches upstream (imp, etc) * make WITH(OUT)_FORMAT_EXTENSIONS a COMPILER_FEATURE (brooks) * Need to document external toolchain support (brooks, imp) * Need cross gcc ports (imp) * Should figure out a standardizable way to implemnt format extensions as #pragmas (theraven) ==== Summary ==== {{devsummit/201309/toolchainandbuild/toolchain-and-build-eurobsdcon2013.pdf?linkonly|Summary Presentation}} devsummit/201309/toolchainandbuild.txt Last modified: 2021/04/25 10:00by JethroNederhof