cvs commit: src/share/mk bsd.cpu.mk bsd.dep.mk bsd.lib.mk bsd.sys.mk src/sys/conf files kern.mk kern.pre.mk kmod.mk src/sys/dev/aic7xxx/aicasm Makefile

Tom Rhodes trhodes at FreeBSD.org
Fri Mar 12 13:36:13 PST 2004


trhodes     2004/03/12 13:36:12 PST

  FreeBSD src repository

  Modified files:
    share/mk             bsd.cpu.mk bsd.dep.mk bsd.lib.mk 
                         bsd.sys.mk 
    sys/conf             files kern.mk kern.pre.mk kmod.mk 
    sys/dev/aic7xxx/aicasm Makefile 
  Log:
  This are the build infrastructure changes to allow to use the
  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 at alchemy.franken.de>.
  
  Reviewed by:    silence on -arch
  Submitted by:   netchild
  
  Revision  Changes    Path
  1.34      +18 -2     src/share/mk/bsd.cpu.mk
  1.46      +13 -6     src/share/mk/bsd.dep.mk
  1.157     +12 -3     src/share/mk/bsd.lib.mk
  1.35      +1 -1      src/share/mk/bsd.sys.mk
  1.874     +2 -2      src/sys/conf/files
  1.41      +14 -1     src/sys/conf/kern.mk
  1.43      +31 -2     src/sys/conf/kern.pre.mk
  1.155     +14 -1     src/sys/conf/kmod.mk
  1.18      +8 -1      src/sys/dev/aic7xxx/aicasm/Makefile


More information about the cvs-src mailing list