Age | Commit message (Collapse) | Author |
|
make install
from Simon Nicolussi
ok jsing tedu
|
|
This should catch all the same bad cases, but be a little less aggravating
in circumstances where a prototype isn't necessary
ok deraadt
|
|
used and depended, mimicking new changes by guenther to amd64.
|
|
-Wstack-larger-than-. This is what modern GCC supports as well as LLVM.
ok miod@
|
|
|
|
.data, so that it will not get mapped read-only by pmap_bootstrap().
|
|
- switch to perl for better data structures and (thus) speed
- fix a couple glitches in the interpretation of the stabs output
- compress the strings by putting them in one big array and overlaying
suffixes
- all sizes and offsets are <64k, so use u_short for them
This results in ~60% reduction in the resulting text size and it now
takes less than a second to create on fast platforms.
ok miod@
|
|
Add CWARNFLAGS to the command line when using -xassembler-with-cpp. We are
mostly interested in -Werror here.
|
|
ok deraadt miod
|
|
updated gcc and ld to understand the new -nopie flag.
ok deraadt@
|
|
|
|
|
|
spikes in other developers by making it so that removal of a .d
file without removing the corresponding object will result in the
latter being treated as out of date.
ok beck@ art@ drahn@
|
|
ok beck deraadt
|
|
using the -MD option to cc, with -MP, -MT, and -MF where needed, converting
"make depend" to a no-op. This increases parallelism for those using "make -j"
and keeps the dependencies up to date with each compilation automatically.
sparc and vax users will need to rebuild gcc with support for the
-M[PTF] options before config'ing with this diff.
|
|
in some grief. Split this out.
From Vladimir Kirillov
|
|
early MD and late MI files must be split up so that vers.o can sneak
between. Issue spotted by bluhm, repair discussed with miod
|
|
having it linked last is bad (on at least i386 and amd64) because the lapic
is mapped over the start of the data segment -- savecore(8) then reads the
version string for a fixed buffer space, and reads into the lapic area
causing unintended side-effects (at least on Intel X5570 and X5680)
found by pedro, discussed with kettenis and mpf and miod
|
|
prefer binutils-compatible options in STRIPFLAGS (now that our non-binutils
strip(1) can handle them too)
ok drahn; miod kettenis (for parts)
|
|
to genassym.sh
ok deraadt
|
|
the differences between these files. You will need a newer config(8) binary
to be able to build kernels.
ok kettenis miod
|
|
result: kernels built without 'make depend'-provided information
(ie. the .depend file) are more likely to have their *.[Ss] file
compilations track changes to *.h files.
The "*.o: assym.h" dependencies listed are gotten from reading the
.depend output --- from the biggest kernel possible (ie. GENERIC.MP).
When an architecture changes in a substantial way (new .[sS] files),
the list should be updated in the prettiest way possible.
This is not encouraging people to skip 'make depend'; other issues are
not resolved and may be solved later with a change guenther is working
on. You can still screwed really easily, so continue running make
depend as config tells you.
Idea from a discussion with drahn
ok drahn, kettenis likes the idea too
|
|
idea that came out of discussion with drahn
|
|
delete the archaic links: target which is easily misused
handle special .[sS] files in a portable way
|
|
ok various people, tested by fewer people, tested by me on 15.
|
|
Makefile.* files
|
|
and SRCS= (common files always after the \)
|
|
|
|
|
|
two directories. in reality, because of how we place files, it has four:
.../arch/A, .../arch/A/A, .../arch/M, and .../arch/M/M
formalize this A/A and M/M scheme directly in the Makefiles, which makes
them a lot more similar
drahn likes the idea a lot
|
|
|
|
|
|
|
|
arch and machine dependent files (and add the missing files)
ok miod drahn
|
|
ok miod drahn
|
|
ok miod
|
|
bsd) unless some other object has changed. Rebuild and reinstall
in /usr/src/usr.sbin/config/ after updating!
"I like it" deraadt@
|
|
a few arches where toolchain limitations apply) will embed some symbolic
information about the various structs used within the kernel, and have
new ddb commands allowing struct display and some useful information
gathering. Kernel rodata increase varies accross platforms from ~150KB to
~300KB.
This option is not enabled by default.
|
|
for us.
|
|
What happened was that the output of mkdep was fed to a sed expression
that trimmed a bit more than required and also failed to work when
attempting to do make depend with pcc.
Example:
genassym_c.o: /tmp/genassym.whatever ../../../../../sys/param.h \
was changed to:
assym.h: \
but what was intended was:
assym.h: ../../../../../sys/param.h \
For the pcc -M output things were a bit different and after the make
depend the genassym entry would still remain and make would fail. This
affected all platforms except amd64 and sgi.
Okay miod@.
|
|
|
|
|
|
|
|
directive can select between MI and MD versions of these files. At
the same time, adjust the boot programs to pick exactly what they need,
instead of the 7 or 8 mechanisms previously used.
There will be some fallout from this, but testing it all by myself is a
ridiculously slow process; it will be finished in-tree.
Various developers were very nice and avoided making fun of me when I
was gibbering in the corner..
|
|
decide which files must be pulled into the kernel. Also conditionalize
the pulling of those files based on the COMPAT_* options.
|
|
kernel builds locally this doesnt change much but over NFS this
cuts about 12% of the build time on my setup (i386).
OK miod@, deraadt@.
|
|
committed.
|
|
miod@ tested (since I hacked it up blindly) and ok.
|
|
offending code has been taken out and shot. ok deraadt@
|
|
(with symbols) to bsd.gdb, then strips bsd. This diff makes it rename the
file with symbols, and then asks strip to output the stripped version as
bsd. Avoids a potentially lengthy wait when we would otherwise copy the
large (50MB+) kernel with debug symbols.
ok reyk@ ketennis@
|