Author: peter
Date: Tue Mar 27 21:23:56 2012
New Revision: 233578
URL: http://svn.freebsd.org/changeset/base/233578

Log:
  Allow (with a license warning) "options ZFS" to work in static kernels.
  
  The 'make depend' rules have to use custom -I paths for the special compat
  includes for the opensolaris/zfs headers.
  
  This option will pull in the couple of files that are shared with dtrace,
  but they appear to correctly use the MODULE_VERSION/MODULE_DEPEND rules
  so loader should do the right thing, as should kldload.
  
  Reviewed by:  pjd (glanced at)

Modified:
  head/sys/conf/files
  head/sys/conf/files.amd64
  head/sys/conf/files.arm
  head/sys/conf/files.i386
  head/sys/conf/files.ia64
  head/sys/conf/files.mips
  head/sys/conf/files.pc98
  head/sys/conf/files.powerpc
  head/sys/conf/files.sparc64
  head/sys/conf/kern.post.mk
  head/sys/conf/kern.pre.mk
  head/sys/conf/options

Modified: head/sys/conf/files
==============================================================================
--- head/sys/conf/files Tue Mar 27 20:50:14 2012        (r233577)
+++ head/sys/conf/files Tue Mar 27 21:23:56 2012        (r233578)
@@ -139,6 +139,131 @@ cam/scsi/scsi_sg.c                optional sg
 cam/scsi/scsi_targ_bh.c                optional targbh
 cam/scsi/scsi_target.c         optional targ
 cam/scsi/smp_all.c             optional scbus
+# shared between zfs and dtrace
+cddl/compat/opensolaris/kern/opensolaris.c                             
optional zfs compile-with "${ZFS_C}"
+cddl/compat/opensolaris/kern/opensolaris_cmn_err.c                     
optional zfs compile-with "${ZFS_C}"
+cddl/compat/opensolaris/kern/opensolaris_kmem.c                                
optional zfs compile-with "${ZFS_C}"
+cddl/compat/opensolaris/kern/opensolaris_misc.c                                
optional zfs compile-with "${ZFS_C}"
+cddl/compat/opensolaris/kern/opensolaris_sunddi.c                      
optional zfs compile-with "${ZFS_C}"
+# zfs specific
+cddl/compat/opensolaris/kern/opensolaris_acl.c                         
optional zfs compile-with "${ZFS_C}"
+cddl/compat/opensolaris/kern/opensolaris_kobj.c                                
optional zfs compile-with "${ZFS_C}"
+cddl/compat/opensolaris/kern/opensolaris_kstat.c                       
optional zfs compile-with "${ZFS_C}"
+cddl/compat/opensolaris/kern/opensolaris_lookup.c                      
optional zfs compile-with "${ZFS_C}"
+cddl/compat/opensolaris/kern/opensolaris_policy.c                      
optional zfs compile-with "${ZFS_C}"
+cddl/compat/opensolaris/kern/opensolaris_string.c                      
optional zfs compile-with "${ZFS_C}"
+cddl/compat/opensolaris/kern/opensolaris_sysevent.c                    
optional zfs compile-with "${ZFS_C}"
+cddl/compat/opensolaris/kern/opensolaris_taskq.c                       
optional zfs compile-with "${ZFS_C}"
+cddl/compat/opensolaris/kern/opensolaris_uio.c                         
optional zfs compile-with "${ZFS_C}"
+cddl/compat/opensolaris/kern/opensolaris_vfs.c                         
optional zfs compile-with "${ZFS_C}"
+cddl/compat/opensolaris/kern/opensolaris_zone.c                                
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/common/acl/acl_common.c                       
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/common/avl/avl.c                              
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/common/nvpair/nvpair.c                                
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/common/nvpair/nvpair_alloc_fixed.c            
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/common/unicode/u8_textprep.c                  
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/common/zfs/zfs_comutil.c                      
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/common/zfs/zfs_deleg.c                                
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/common/zfs/zfs_fletcher.c                     
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/common/zfs/zfs_ioctl_compat.c                 
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/common/zfs/zfs_namecheck.c                    
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/common/zfs/zfs_prop.c                         
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/common/zfs/zpool_prop.c                       
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/common/zfs/zprop_common.c                     
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/gfs.c                           
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/vnode.c                         
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c                       
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/bplist.c                    
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/bpobj.c                     
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c                      
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/ddt.c                       
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/ddt_zap.c                   
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c                       
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_diff.c                  
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_object.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_objset.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_send.c                  
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_traverse.c              
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_tx.c                    
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dmu_zfetch.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dnode.c                     
optional zfs compile-with "${ZFS_C}" \
+       warning "kernel contains CDDL licensed ZFS filesystem"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dnode_sync.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dataset.c               
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_deadlist.c              
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_deleg.c                 
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_dir.c                   
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_pool.c                  
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_prop.c                  
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_scan.c                  
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/dsl_synctask.c              
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/gzip.c                      
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/lzjb.c                      
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c                  
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/refcount.c                  
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/rrwlock.c                   
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/sa.c                                
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/sha256.c                    
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c                       
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/spa_errlog.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/spa_history.c               
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c                  
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/space_map.c                 
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/txg.c                       
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/uberblock.c                 
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/unique.c                    
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c                      
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_cache.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c                 
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c                 
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_label.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c               
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_missing.c              
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_queue.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_raidz.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_root.c                 
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zap.c                       
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zap_leaf.c                  
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zap_micro.c                 
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_acl.c                   
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_byteswap.c              
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ctldir.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_debug.c                 
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_dir.c                   
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_fm.c                    
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_fuid.c                  
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c                 
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_log.c                   
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_onexit.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_replay.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_rlock.c                 
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_sa.c                    
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c                 
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c                 
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zil.c                       
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c                       
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zio_checksum.c              
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zio_compress.c              
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zio_inject.c                        
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zle.c                       
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zrlock.c                    
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c                      
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/os/callb.c                         
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/os/fm.c                            
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/os/list.c                          
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/os/nvpair_alloc_system.c           
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/zmod/adler32.c                     
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/zmod/deflate.c                     
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/zmod/inffast.c                     
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/zmod/inflate.c                     
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/zmod/inftrees.c                    
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/zmod/opensolaris_crc32.c           
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/zmod/trees.c                       
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/zmod/zmod.c                                
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/zmod/zmod_subr.c                   
optional zfs compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/uts/common/zmod/zutil.c                       
optional zfs compile-with "${ZFS_C}"
 contrib/altq/altq/altq_cbq.c   optional altq \
        compile-with "${NORMAL_C} -I$S/contrib/pf"
 contrib/altq/altq/altq_cdnr.c  optional altq
@@ -415,7 +540,7 @@ crypto/rijndael/rijndael-api.c      optional 
 crypto/sha1.c                  optional carp | crypto | ipsec | \
                                         netgraph_mppc_encryption | sctp
 crypto/sha2/sha2.c             optional crypto | geom_bde | ipsec | random | \
-                                        sctp
+                                        sctp | zfs
 ddb/db_access.c                        optional        ddb
 ddb/db_break.c                 optional        ddb
 ddb/db_capture.c               optional        ddb

Modified: head/sys/conf/files.amd64
==============================================================================
--- head/sys/conf/files.amd64   Tue Mar 27 20:50:14 2012        (r233577)
+++ head/sys/conf/files.amd64   Tue Mar 27 21:23:56 2012        (r233578)
@@ -133,6 +133,7 @@ amd64/amd64/uio_machdep.c   standard
 amd64/amd64/uma_machdep.c      standard
 amd64/amd64/vm_machdep.c       standard
 amd64/pci/pci_cfgreg.c         optional        pci
+cddl/contrib/opensolaris/common/atomic/amd64/opensolaris_atomic.S      
optional zfs compile-with "${ZFS_S}"
 crypto/aesni/aesencdec_amd64.S optional aesni
 crypto/aesni/aeskeys_amd64.S   optional aesni
 crypto/aesni/aesni.c           optional aesni

Modified: head/sys/conf/files.arm
==============================================================================
--- head/sys/conf/files.arm     Tue Mar 27 20:50:14 2012        (r233577)
+++ head/sys/conf/files.arm     Tue Mar 27 21:23:56 2012        (r233578)
@@ -47,6 +47,7 @@ arm/arm/vm_machdep.c          standard
 arm/fpe-arm/armfpe_glue.S      optional        armfpe
 arm/fpe-arm/armfpe_init.c      optional        armfpe
 arm/fpe-arm/armfpe.S           optional        armfpe
+cddl/compat/opensolaris/kern/opensolaris_atomic.c      optional zfs 
compile-with "${ZFS_C}"
 dev/hwpmc/hwpmc_arm.c          optional        hwpmc
 dev/ofw/openfirm.c             optional        fdt
 dev/ofw/openfirmio.c           optional        fdt

Modified: head/sys/conf/files.i386
==============================================================================
--- head/sys/conf/files.i386    Tue Mar 27 20:50:14 2012        (r233577)
+++ head/sys/conf/files.i386    Tue Mar 27 21:23:56 2012        (r233578)
@@ -71,6 +71,7 @@ hptrr_lib.o                   optional        hptrr           
        \
        compile-with    "uudecode < $S/dev/hptrr/i386-elf.hptrr_lib.o.uu" \
        no-implicit-rule
 #
+cddl/contrib/opensolaris/common/atomic/i386/opensolaris_atomic.S       
optional zfs compile-with "${ZFS_S}"
 compat/linprocfs/linprocfs.c   optional linprocfs
 compat/linsysfs/linsysfs.c     optional linsysfs
 compat/linux/linux_emul.c      optional compat_linux

Modified: head/sys/conf/files.ia64
==============================================================================
--- head/sys/conf/files.ia64    Tue Mar 27 20:50:14 2012        (r233577)
+++ head/sys/conf/files.ia64    Tue Mar 27 21:23:56 2012        (r233578)
@@ -28,6 +28,7 @@ ukbdmap.h                     optional        
ukbd_dflt_keymap        \
        no-obj no-implicit-rule before-depend                           \
        clean           "ukbdmap.h"
 #
+cddl/contrib/opensolaris/common/atomic/ia64/opensolaris_atomic.S       
optional zfs compile-with "${ZFS_S}"
 compat/freebsd32/freebsd32_ioctl.c     optional        compat_freebsd32
 compat/freebsd32/freebsd32_misc.c      optional        compat_freebsd32
 compat/freebsd32/freebsd32_syscalls.c  optional        compat_freebsd32

Modified: head/sys/conf/files.mips
==============================================================================
--- head/sys/conf/files.mips    Tue Mar 27 20:50:14 2012        (r233577)
+++ head/sys/conf/files.mips    Tue Mar 27 21:23:56 2012        (r233578)
@@ -85,6 +85,7 @@ libkern/ucmpdi2.c             standard
 #libkern/mips/strcmp.S         standard
 #libkern/mips/strncmp.S                standard
 
+cddl/compat/opensolaris/kern/opensolaris_atomic.c      optional zfs 
compile-with "${ZFS_C}"
 compat/freebsd32/freebsd32_ioctl.c     optional        compat_freebsd32
 compat/freebsd32/freebsd32_misc.c      optional        compat_freebsd32
 compat/freebsd32/freebsd32_syscalls.c  optional        compat_freebsd32

Modified: head/sys/conf/files.pc98
==============================================================================
--- head/sys/conf/files.pc98    Tue Mar 27 20:50:14 2012        (r233577)
+++ head/sys/conf/files.pc98    Tue Mar 27 21:23:56 2012        (r233578)
@@ -38,6 +38,7 @@ ukbdmap.h                     optional        
ukbd_dflt_keymap        \
        no-obj no-implicit-rule before-depend                           \
        clean           "ukbdmap.h"
 #
+cddl/contrib/opensolaris/common/atomic/i386/opensolaris_atomic.S       
optional zfs compile-with "${ZFS_S}"
 compat/linprocfs/linprocfs.c   optional linprocfs
 compat/linsysfs/linsysfs.c     optional linsysfs
 compat/linux/linux_emul.c      optional compat_linux
@@ -204,7 +205,6 @@ i386/svr4/svr4_locore.s             optional compat
        dependency      "svr4_assym.h"  \
        warning "COMPAT_SVR4 is broken and should be avoided"
 i386/svr4/svr4_machdep.c       optional compat_svr4
-#
 kern/kern_clocksource.c                standard
 kern/imgact_aout.c             optional compat_aout
 kern/imgact_gzip.c             optional gzip

Modified: head/sys/conf/files.powerpc
==============================================================================
--- head/sys/conf/files.powerpc Tue Mar 27 20:50:14 2012        (r233577)
+++ head/sys/conf/files.powerpc Tue Mar 27 21:23:56 2012        (r233578)
@@ -14,6 +14,9 @@ font.h                                optional        sc      
                \
        no-obj no-implicit-rule before-depend                           \
        clean   "font.h ${SC_DFLT_FONT}-8x14 ${SC_DFLT_FONT}-8x16 
${SC_DFLT_FONT}-8x8"
 #
+# There is only an asm version on ppc64.
+cddl/compat/opensolaris/kern/opensolaris_atomic.c                      
optional zfs powerpc compile-with "${ZFS_C}"
+cddl/contrib/opensolaris/common/atomic/powerpc64/opensolaris_atomic.S  
optional zfs powerpc64 compile-with "${ZFS_S}"
 crypto/blowfish/bf_enc.c       optional        crypto | ipsec
 crypto/des/des_enc.c           optional        crypto | ipsec | netsmb
 dev/bm/if_bm.c                 optional        bm powermac

Modified: head/sys/conf/files.sparc64
==============================================================================
--- head/sys/conf/files.sparc64 Tue Mar 27 20:50:14 2012        (r233577)
+++ head/sys/conf/files.sparc64 Tue Mar 27 21:23:56 2012        (r233578)
@@ -22,6 +22,7 @@ ukbdmap.h                     optional        
ukbd_dflt_keymap        \
        no-obj no-implicit-rule before-depend                           \
        clean           "ukbdmap.h"
 #
+cddl/contrib/opensolaris/common/atomic/sparc64/opensolaris_atomic.S    
optional zfs compile-with "${ZFS_S}"
 crypto/blowfish/bf_enc.c       optional        crypto | ipsec
 crypto/des/des_enc.c           optional        crypto | ipsec | netsmb
 dev/atkbdc/atkbd.c             optional        atkbd atkbdc

Modified: head/sys/conf/kern.post.mk
==============================================================================
--- head/sys/conf/kern.post.mk  Tue Mar 27 20:50:14 2012        (r233577)
+++ head/sys/conf/kern.post.mk  Tue Mar 27 21:23:56 2012        (r233578)
@@ -152,6 +152,12 @@ genassym.o: $S/$M/$M/genassym.c
 
 ${SYSTEM_OBJS} genassym.o vers.o: opt_global.h
 
+# We have "special" -I include paths for opensolaris/zfs files in 'depend'.
+CFILES_NOZFS=  ${CFILES:N*/opensolaris/*}
+SFILES_NOZFS=  ${SFILES:N*/opensolaris/*}
+CFILES_ZFS=    ${CFILES:M*/opensolaris/*}
+SFILES_ZFS=    ${SFILES:M*/opensolaris/*}
+
 kernel-depend: .depend
 # The argument list can be very long, so use make -V and xargs to
 # pass it to mkdep.
@@ -160,10 +166,14 @@ SRCS=     assym.s vnode_if.h ${BEFORE_DEPEND
        ${MFILES:T:S/.m$/.h/}
 .depend: .PRECIOUS ${SRCS}
        rm -f .newdep
-       ${MAKE} -V CFILES -V SYSTEM_CFILES -V GEN_CFILES | \
+       ${MAKE} -V CFILES_NOZFS -V SYSTEM_CFILES -V GEN_CFILES | \
            MKDEP_CPP="${CC} -E" CC="${CC}" xargs mkdep -a -f .newdep ${CFLAGS}
-       ${MAKE} -V SFILES | \
+       ${MAKE} -V CFILES_ZFS | \
+           MKDEP_CPP="${CC} -E" CC="${CC}" xargs mkdep -a -f .newdep 
${ZFS_CFLAGS}
+       ${MAKE} -V SFILES_NOZFS | \
            MKDEP_CPP="${CC} -E" xargs mkdep -a -f .newdep ${ASM_CFLAGS}
+       ${MAKE} -V SFILES_ZFS | \
+           MKDEP_CPP="${CC} -E" xargs mkdep -a -f .newdep ${ZFS_ASM_CFLAGS}
        rm -f .depend
        mv .newdep .depend
 

Modified: head/sys/conf/kern.pre.mk
==============================================================================
--- head/sys/conf/kern.pre.mk   Tue Mar 27 20:50:14 2012        (r233577)
+++ head/sys/conf/kern.pre.mk   Tue Mar 27 21:23:56 2012        (r233578)
@@ -131,6 +131,12 @@ NORMAL_C_NOWERROR= ${CC} -c ${CFLAGS} ${
 NORMAL_M= ${AWK} -f $S/tools/makeobjops.awk ${.IMPSRC} -c ; \
          ${CC} -c ${CFLAGS} ${WERROR} ${PROF} ${.PREFIX}.c
 
+# Special flags for managing the compat compiles for ZFS
+ZFS_CFLAGS=    -DFREEBSD_NAMECACHE -DBUILDING_ZFS -nostdinc 
-I$S/cddl/compat/opensolaris -I$S/cddl/contrib/opensolaris/uts/common/fs/zfs 
-I$S/cddl/contrib/opensolaris/uts/common/zmod 
-I$S/cddl/contrib/opensolaris/uts/common -I$S 
-I$S/cddl/contrib/opensolaris/common/zfs -I$S/cddl/contrib/opensolaris/common 
${CFLAGS} -Wno-unknown-pragmas -Wno-missing-prototypes -Wno-undef 
-Wno-strict-prototypes -Wno-cast-qual -Wno-parentheses -Wno-redundant-decls 
-Wno-missing-braces -Wno-uninitialized -Wno-unused -Wno-inline -Wno-switch 
-Wno-pointer-arith -Wno-unknown-pragmas
+ZFS_ASM_CFLAGS= -x assembler-with-cpp -DLOCORE ${ZFS_CFLAGS}
+ZFS_C=         ${CC} -c ${ZFS_CFLAGS} ${WERROR} ${PROF} ${.IMPSRC}
+ZFS_S=         ${CC} -c ${ZFS_ASM_CFLAGS} ${WERROR} ${.IMPSRC}
+
 .if ${MK_CTF} != "no"
 NORMAL_CTFCONVERT=     ${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
 .elif ${MAKE_VERSION} >= 5201111300

Modified: head/sys/conf/options
==============================================================================
--- head/sys/conf/options       Tue Mar 27 20:50:14 2012        (r233577)
+++ head/sys/conf/options       Tue Mar 27 21:23:56 2012        (r233578)
@@ -837,6 +837,8 @@ XBOX                        opt_xbox.h
 # XFS
 XFS
 
+ZFS                    opt_dontuse.h
+
 # Interrupt filtering
 INTR_FILTER
 
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to