summaryrefslogtreecommitdiffstats
path: root/sys/conf/kern.pre.mk
Commit message (Collapse)AuthorAgeFilesLines
* Fixed high resolution profiling on arches that support it (amd64 andbde2006-10-261-1/+1
| | | | | | | | | | | | | | | i386). Use -mprofiler-epilogue again, and don't use -finstrument-functions. The former has been fixed for arches that implement high-res profiling, and the latter has been useless for kernel profiling since gcc-3.4 when it started forcing -fno-inline. -fno-inline gives a kernel with performance characteristics too different from a normal kernel to be worth profiling, by turning off inlining of all the little optimized functions in headers. This interacts especially badly with FreeBSD's use of "static inline" for all inlines in headers, by creating many separate copies of the little functions, so not inlining tends to increase cache pressure where it should reduce it, and (since gprof(1) doesn't understand the copies) the statistics for the little functions are hard to interpret even if you want them.
* Reduced the ifdef tangle for profiling by moving the unreachablebde2006-10-261-12/+2
| | | | | | never-working parts for icc to the attic. Fixed some nearby style bugs.
* Define an empty C_DIALECT in case of "icc", just in case.ru2006-10-131-0/+1
|
* o move ath hal os glue code from the hal to the driver: this code wassam2006-09-181-1/+1
| | | | | | | | | | | | part of the hal distribution early on when the hal was built for each os but it's been portable for a long time so move the os-specific code out (and off the vendor branch) o correct the copyright on ah_osdep.?; it was mistakenly given a restricted license and not a dual-bsd/gpl license o remove the module api definition as it was never used o fixup include paths for move of ah_osdep.h MFC after: 2 weeks
* nuke unused support for building ath hal from src codesam2006-09-181-6/+0
| | | | MFC after: 1 week
* /etc/src.conf wasn't visable for the kernel build.obrien2006-07-171-0/+5
|
* Create new dialect knob, as setting the language dialect isn't a warning flag.obrien2006-06-291-1/+2
|
* Hook XFS into kernel build.rodrigc2005-12-121-0/+3
|
* We no longer need INCLUDES+= -I$S/contrib/dev/acpica.obrien2005-10-241-5/+2
|
* Define HAVE_KERNEL_OPTION_HEADERS when building kernel and when buildingglebius2005-10-051-1/+1
| | | | | | | | | | modules along with kernel. After this change it is possible to embrace opt_*.h includes with ifdef HAVE_KERNEL_OPTION_HEADERS. And thus, avoid editing a lot of Makefiles in modules directory each time we introduce a new opt_xxx.h. Requested by: bde
* The kernel-depend target doesn't get any information from "compile-with",obrien2005-09-111-0/+19
| | | | so repeat the includes paths for that target.
* Don't pollute the entire kernel build with -I$S/contrib/dev/ath andobrien2005-09-111-2/+5
| | | | | -I$S/contrib/dev/ath/freebsd. "ATH_BUILDING_FROM_SOURCE" can be defined to globally get back -I$S/contrib/dev/ath.
* Don't pollute the entire kernel build with -I$S/contrib/ipfilter.obrien2005-09-111-3/+0
|
* Don't pollute the entire kernel build with -I$S/contrib/pf.obrien2005-09-111-3/+0
|
* Don't pollute the entire kernel build with -I$S/contrib/ngatm.obrien2005-09-111-3/+0
|
* Don't pollute the entire kernel build with -I$S/dev/twa.obrien2005-09-111-3/+0
|
* Never hardcode /sys into these Makefiles. The proper way to spell it is $S.imp2005-04-131-0/+3
| | | | | | | Also, move the -I stuff to the centralized kern.pre.mk. However, it might be better to add these flags to files.conf. This is a short term fix to fix the broken builds on my machine (I don't have a valid /sys link).
* Don't generate major.c anymore.phk2005-03-291-1/+1
|
* Barrow from kmod.mk and protect against adding -fno-strict-aliasingobrien2005-02-131-1/+1
| | | | when it is already in COPTFLAGS.
* Embellish rev 1.61. If we're not building a debug kernel, use -O2 as before.obrien2005-01-221-2/+7
| | | | Submitted by: ru
* While we're building kernels -g (ie, makeoptions DEBUG=-g), use -O as itobrien2005-01-181-1/+1
| | | | | | | | | | provides truer debugger stack traces. For those that want to stick with -O2 kernel builds, one should probably add -fno-optimize-sibling-calls so that each stack frame as a frame pointer. It is semi-promissed by the Release Engineers that when RELENG_6 is created we go back to -O2. Desired by: scottl, jhb
* Don the teflon coated jacket and use the same -O2 optimization options onobrien2004-10-251-7/+1
| | | | the 'i386' kernel that we do all our 64-bit kernels.
* Back out v1.58... We still don't know what is causing the specifickensmith2004-10-071-1/+1
| | | | | | | | | | problem I had but it's happening in code that is messing around with register windows - I'm willing to live with that piece being sensitive to this and it looks like the other problems we had reported lately are not fixed by using -O instead of -O2. Sorry for the churn. Looks like I need a second pointy hat. Someone tells me they stack well. :-))))
* Back out v1.49. Recent findings suggest sparc64 may not be ready forkensmith2004-10-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | -O2 on kernel compiles after all. While working on adding a KASSERT to sparc64/sparc64/rwindow.c I found that it was "position sensitive", putting it above a call to flushw() instead of below caused corruption of processes on the system. jake and jhb have both confirmed there is no obvious explanation for that. The exact same kernel code does not have the process corruption problem if compiled with -O instead of -O2. There have been signs of similar issues floated on the sparc64@ mailing list, lets see if this helps make them go away. Note this isn't an optimal fix as far as the file format goes, if this disgusts too many people I'll fix it the right way. Since compiling with something other than -O is a known problem this format would prevent a change to the default causing grief. And this may also help motivate finding out what the compiler is doing wrong so we can shift back to using -O2. :-) My turn for the pointy hat... One of the florescent ones... MFC after: 2 days
* Use -O2 for the arm kernel as wellcognet2004-09-231-0/+2
|
* Removed COPTS support from kmod.mk and kern.pre.mk.ru2004-08-131-2/+2
| | | | COPTS support in bsd.prog.mk is preserved but discouraged.
* Allow for aggressive function inlining. This might have to be fine-tunedkan2004-07-281-1/+3
| | | | later.
* We don't need GEN_M_CFILES. Fold it into GEN_CFILES definition andimp2004-06-271-1/+1
| | | | | | adjust as necessary. Suggested by: bde
* Link ALTQ to the build and break with ABI for struct ifnet. Please recompilemlaier2004-06-131-0/+3
| | | | | | | | | | | | your (network) modules as well as any userland that might make sense of sizeof(struct ifnet). This does not change the queueing yet. These changes will follow in a seperate commit. Same with the driver changes, which need case by case evaluation. __FreeBSD_version bump will follow. Tested-by: (i386)LINT
* Address few style issues pointed out by bdeemax2004-04-271-9/+0
| | | | Reviewed by: bde, ru
* Make sure Bluetooth stuff can be statically compiled into kernelemax2004-04-231-0/+9
| | | | | Submitted by: ps Reviewed by: imp (mentor), ru
* Remove "-frename-registers" option for sparc64 kernel builds. Thatkensmith2004-03-291-1/+3
| | | | | | | | | | | | was not present in what I originally tested when checking to see if the kernel built/ran with the -O2 change. Recent instability in sparc64 kernel was tracked to this. A reproducible kernel stack traceback followed by hard hang during the call to msleep() at the point the kernel waits 15 seconds for the SCSI bus to settle crept in to recent kernel builds and it seems to go away with this patch. Noticed by: kris Approved by: rwatson (mentor)
* Lets give -O2 kernels a try on sparc64.obrien2004-03-251-1/+1
| | | | Reviewed by: kensmith
* Compile the kernel with -O2 on ia64 by default.marcel2004-03-211-0/+2
|
* Delete local junk in previous commit. Sorry.obrien2004-03-191-6/+0
|
* Depend on rev 1.40.obrien2004-03-191-2/+10
| | | | Submitted by: ru
* For AMD64, lets officially support a -O2 kernel build!obrien2004-03-181-0/+2
| | | | | | | I've added -fno-strict-aliasing for now so we can ease into this. I wanted to shoot for -O3, but the inlining caused problems due to GCC's size heuristics; so also add -frename-registers, which is one of the things -O3 would have given us.
* Fix some style bugs in previous commit.trhodes2004-03-141-5/+5
| | | | | | | | | Fix 'broken' ifdefs. icc does not support profiling yet so remove unfinished code which was supposed to help. Submitted by: netchild (original version) Reviewed by: ru
* This are the build infrastructure changes to allow to use thetrhodes2004-03-121-2/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Intel C/C++ compiler (lang/icc) to build the kernel. The icc CPUTYPE CFLAGS use icc v7 syntax, icc v8 moans about them, but doesn't abort. They also produce CPU specific code (new instructions of the CPU, not only CPU specific scheduling), so if you get coredumps with signal 4 (SIGILL, illegal instruction) you've used the wrong CPUTYPE. Incarnations of this patch survive gcc compiles and my make universe. I use it on my desktop. To use it update share/mk, add /usr/local/intel/compiler70/ia32/bin (icc v7, works) or /usr/local/intel_cc_80/bin (icc v8, doesn't work) to your PATH, make sure you have a new kernel compile directory (e.g. MYKERNEL_icc) and run CFLAGS="-O2 -ip" CC=icc make depend CFLAGS="-O2 -ip" CC=icc make in it. Don't compile with -ipo, the build infrastructure uses ld directly to link the kernel and the modules, but -ipo needs the link step to be performed with Intel's linker. Problems with icc v8: - panic: npx0 cannot be emulated on an SMP system - UP: first start of /bin/sh results in a FP exception Parts of this commit contains suggestions or submissions from Marius Strobl <marius@alchemy.franken.de>. Reviewed by: silence on -arch Submitted by: netchild
* Tweak existing header and other build infrastructure to be able to buildmlaier2004-02-261-0/+3
| | | | | | | pf/pflog/pfsync as modules. Do not list them in NOTES or modules/Makefile (i.e. do not connect it to any (automatic) builds - yet). Approved by: bms(mentor)
* Reduce the number of knobs controlling the build of debug modulesru2004-02-131-1/+1
| | | | | | | to one, DEBUG_FLAGS, which is also compatible with <bsd.prog.mk>. Previously one had to set both DEBUG and DEBUG_FLAGS to build the .ko.debug with debugging symbols which was boring when doing this manually.
* Only enforce -fno-strict-aliasing for optimization levels thatru2004-01-221-1/+4
| | | | | | imply -fstrict-aliasing. Reviewed by: bde
* Backed out a small part of rev.1.15. -Winline now works better, sobde2003-12-301-2/+1
| | | | | | | | | | there is no need turn it off when compiling with -finstrument-functions. Having -Winline turned off mainly broke checking for bogus inlines in kernels configured with high resolution profiling, e.g., LINT. Not turning it off unbreaks the warnings for bogus inlines in istallion.c, but at least the i386 LINT still builds because istallion.c is compiled without -Werror due to other bugs in it.
* Garbage-collected some vestiges of objformat support (mainly ${FMT}).bde2003-12-291-2/+2
|
* Moved $FreeBSD$ to the beginning of the file.bde2003-11-051-10/+6
| | | | | | | | | | | Don't put the name of the file in a comment. $FreeBSD$ gives more than enough about the file's pathname. Fixed misdescription of the file. It isn't the whole unified Makefile... Moved the settings of WERROR and of the standard extra CFLAGS -finline-limit and -fno-strict-aliasing to a less wrong place. They were in the section for profiling.
* Move the inline limit default variable to a per-arch place. For example,peter2003-11-041-1/+0
| | | | | | | the amd64 implementation of the pcpu macros is even more verbose than on i386 and that causes gcc to way overestimate the complexity of this 2-instruction macro. The other platforms can probably lower their default values.
* Allow building the NgATM SAAL layer directly into the kernel.harti2003-10-271-0/+3
|
* Now that the pci include file location migration has been completed,imp2003-08-221-1/+1
| | | | | | remove the -I$S/dev and -I@/dev which were there only for pci. # If I've broken something, please let me know.
* Enforce -fno-strict-aliasing to override the converse that is implied byscottl2003-07-301-1/+1
| | | | | | -O2 and -Os. Reviewed by: peter
* Turn -Werror back on again. I've tested with/withoutpeter2003-07-261-1/+1
| | | | | | invariants/witness/etc on i386, sparc64, amd64 and alpha for GENERIC. Lint probably still needs fixing, as do a couple of other drivers that have broken recently and not been noticed.
OpenPOWER on IntegriCloud