svn commit: r231905 - in stable/9: share/mk sys/conf sys/modules sys/modules/drm sys/modules/sound/driver sys/modules/usb tools/build/options

Robert Millan rmh at FreeBSD.org
Sun Feb 19 07:44:39 UTC 2012


Author: rmh
Date: Sun Feb 19 07:44:38 2012
New Revision: 231905
URL: http://svn.freebsd.org/changeset/base/231905

Log:
  MFC r230972,r230980,r231559,r231565: Add MK_SOURCELESS build option, and
  associated fixes.
  
  Approved by:	kib (mentor)

Added:
  stable/9/sys/conf/WITHOUT_SOURCELESS
     - copied unchanged from r231559, head/sys/conf/WITHOUT_SOURCELESS
  stable/9/sys/conf/WITHOUT_SOURCELESS_HOST
     - copied, changed from r231559, head/sys/conf/WITHOUT_SOURCELESS_HOST
  stable/9/sys/conf/WITHOUT_SOURCELESS_UCODE
     - copied unchanged from r231559, head/sys/conf/WITHOUT_SOURCELESS_UCODE
  stable/9/tools/build/options/WITHOUT_SOURCELESS
     - copied unchanged from r230972, head/tools/build/options/WITHOUT_SOURCELESS
  stable/9/tools/build/options/WITHOUT_SOURCELESS_HOST
     - copied unchanged from r230972, head/tools/build/options/WITHOUT_SOURCELESS_HOST
  stable/9/tools/build/options/WITHOUT_SOURCELESS_UCODE
     - copied unchanged from r230972, head/tools/build/options/WITHOUT_SOURCELESS_UCODE
Modified:
  stable/9/share/mk/bsd.own.mk
  stable/9/sys/modules/Makefile
  stable/9/sys/modules/drm/Makefile
  stable/9/sys/modules/sound/driver/Makefile
  stable/9/sys/modules/usb/Makefile
Directory Properties:
  stable/9/share/mk/   (props changed)
  stable/9/share/mk/bsd.arch.inc.mk   (props changed)
  stable/9/sys/   (props changed)
  stable/9/sys/amd64/include/xen/   (props changed)
  stable/9/sys/boot/   (props changed)
  stable/9/sys/boot/i386/efi/   (props changed)
  stable/9/sys/boot/ia64/efi/   (props changed)
  stable/9/sys/boot/ia64/ski/   (props changed)
  stable/9/sys/boot/powerpc/boot1.chrp/   (props changed)
  stable/9/sys/boot/powerpc/ofw/   (props changed)
  stable/9/sys/cddl/contrib/opensolaris/   (props changed)
  stable/9/sys/conf/   (props changed)
  stable/9/sys/contrib/dev/acpica/   (props changed)
  stable/9/sys/contrib/octeon-sdk/   (props changed)
  stable/9/sys/contrib/pf/   (props changed)
  stable/9/sys/contrib/x86emu/   (props changed)
  stable/9/tools/build/options/   (props changed)

Modified: stable/9/share/mk/bsd.own.mk
==============================================================================
--- stable/9/share/mk/bsd.own.mk	Sun Feb 19 00:28:49 2012	(r231904)
+++ stable/9/share/mk/bsd.own.mk	Sun Feb 19 07:44:38 2012	(r231905)
@@ -316,6 +316,9 @@ __DEFAULT_YES_OPTIONS = \
     BOOT \
     BSD_CPIO \
     BSNMP \
+    SOURCELESS \
+    SOURCELESS_HOST \
+    SOURCELESS_UCODE \
     BZIP2 \
     CALENDAR \
     CDDL \
@@ -504,6 +507,11 @@ MK_BIND_UTILS:=	no
 MK_BIND_ETC:=	no
 .endif
 
+.if ${MK_SOURCELESS} == "no"
+MK_SOURCELESS_HOST:=	no
+MK_SOURCELESS_UCODE:= no
+.endif
+
 .if ${MK_CDDL} == "no"
 MK_ZFS:=	no
 .endif

Copied: stable/9/sys/conf/WITHOUT_SOURCELESS (from r231559, head/sys/conf/WITHOUT_SOURCELESS)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/9/sys/conf/WITHOUT_SOURCELESS	Sun Feb 19 07:44:38 2012	(r231905, copy of r231559, head/sys/conf/WITHOUT_SOURCELESS)
@@ -0,0 +1,7 @@
+#
+# WITHOUT_SOURCELESS -- Disable drivers that include sourceless code.
+#
+# $FreeBSD$
+
+include WITHOUT_SOURCELESS_HOST
+include WITHOUT_SOURCELESS_UCODE

Copied and modified: stable/9/sys/conf/WITHOUT_SOURCELESS_HOST (from r231559, head/sys/conf/WITHOUT_SOURCELESS_HOST)
==============================================================================
--- head/sys/conf/WITHOUT_SOURCELESS_HOST	Sun Feb 12 14:55:27 2012	(r231559, copy source)
+++ stable/9/sys/conf/WITHOUT_SOURCELESS_HOST	Sun Feb 19 07:44:38 2012	(r231905)
@@ -1,5 +1,5 @@
 #
-# WITHOUT_SOURCELESS_UCODE -- Disable drivers that include sourceless
+# WITHOUT_SOURCELESS_HOST -- Disable drivers that include sourceless
 # native code for host CPU.
 #
 # $FreeBSD$

Copied: stable/9/sys/conf/WITHOUT_SOURCELESS_UCODE (from r231559, head/sys/conf/WITHOUT_SOURCELESS_UCODE)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/9/sys/conf/WITHOUT_SOURCELESS_UCODE	Sun Feb 19 07:44:38 2012	(r231905, copy of r231559, head/sys/conf/WITHOUT_SOURCELESS_UCODE)
@@ -0,0 +1,41 @@
+#
+# WITHOUT_SOURCELESS_UCODE -- Disable drivers that include sourceless
+# microcode.
+#
+# $FreeBSD$
+
+nodevice	adw
+nodevice	bce
+nodevice	fatm
+nodevice	fxp
+nodevice	ispfw
+nodevice	mwlfw
+nodevice	ralfw
+nodevice	runfw
+nodevice	sf
+nodevice	sn
+nodevice	ti
+nodevice	txp
+nodevice	ce
+nodevice	cp
+nodevice	ctau
+nodevice	ipwfw
+nodevice	iwifw
+nodevice	iwnfw
+nodevice	wpifw
+
+# drm
+nodevice	mga
+nodevice	r128
+nodevice	radeon
+
+# sound
+nodevice	csa
+nodevice	ds1
+nodevice	maestro3
+
+# usb
+nodevice	rum
+nodevice	uath
+nodevice	zyd
+nodevice	kue

Modified: stable/9/sys/modules/Makefile
==============================================================================
--- stable/9/sys/modules/Makefile	Sun Feb 19 00:28:49 2012	(r231904)
+++ stable/9/sys/modules/Makefile	Sun Feb 19 07:44:38 2012	(r231905)
@@ -2,6 +2,9 @@
 
 .include <bsd.own.mk>
 
+# Modules that include binary-only blobs of microcode should be selectable by
+# MK_SOURCELESS_UCODE option (see below).
+
 SUBDIR=	${_3dfx} \
 	${_3dfx_linux} \
 	${_aac} \
@@ -37,7 +40,7 @@ SUBDIR=	${_3dfx} \
 	ath \
 	ath_pci \
 	${_auxio} \
-	bce \
+	${_bce} \
 	bfe \
 	bge \
 	${_bxe} \
@@ -94,13 +97,13 @@ SUBDIR=	${_3dfx} \
 	${_ex} \
 	${_exca} \
 	${_ext2fs} \
-	fatm \
+	${_fatm} \
 	fdc \
 	fdescfs \
 	${_fe} \
 	firewire \
 	firmware \
-	fxp \
+	${_fxp} \
 	gem \
 	geom \
 	${_glxiic} \
@@ -148,7 +151,7 @@ SUBDIR=	${_3dfx} \
 	${_isci} \
 	iscsi \
 	isp \
-	ispfw \
+	${_ispfw} \
 	${_iwi} \
 	${_iwifw} \
 	${_iwn} \
@@ -209,7 +212,7 @@ SUBDIR=	${_3dfx} \
 	${_mthca} \
 	mvs \
 	mwl \
-	mwlfw \
+	${_mwlfw} \
 	mxge \
 	my \
 	${_ncp} \
@@ -260,14 +263,14 @@ SUBDIR=	${_3dfx} \
 	puc \
 	${_qlxgb} \
 	ral \
-	ralfw \
+	${_ralfw} \
 	${_random} \
 	rc4 \
 	${_rdma} \
 	re \
 	reiserfs \
 	rl \
-	runfw \
+	${_runfw} \
 	${_s3} \
 	${_safe} \
 	${_sbni} \
@@ -277,7 +280,7 @@ SUBDIR=	${_3dfx} \
 	sdhci \
 	sem \
 	send \
-	sf \
+	${_sf} \
 	${_sfxge} \
 	sge \
 	siba_bwn \
@@ -286,7 +289,7 @@ SUBDIR=	${_3dfx} \
 	sis \
 	sk \
 	${_smbfs} \
-	sn \
+	${_sn} \
 	${_snc} \
 	snp \
 	${_sound} \
@@ -301,7 +304,7 @@ SUBDIR=	${_3dfx} \
 	${_sym} \
 	${_syscons} \
 	sysvipc \
-	ti \
+	${_ti} \
 	tl \
 	tmpfs \
 	${_tpm} \
@@ -310,7 +313,7 @@ SUBDIR=	${_3dfx} \
 	twe \
 	tws \
 	tx \
-	txp \
+	${_txp} \
 	uart \
 	ubsec \
 	udf \
@@ -358,8 +361,10 @@ _vpo=		vpo
 # No barrier instruction support (specific to this driver)
 _sym=		sym
 # intr_disable() is a macro, causes problems
+.if ${MK_SOURCELESS_UCODE} != "no"
 _cxgb=		cxgb
 .endif
+.endif
 
 .if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
 .if exists(${.CURDIR}/../opencrypto)
@@ -401,6 +406,20 @@ _pfsync=	pfsync
 .endif
 .endif
 
+.if ${MK_SOURCELESS_UCODE} != "no"
+_bce=		bce
+_fatm=		fatm
+_fxp=		fxp
+_ispfw=		ispfw
+_mwlfw=		mwlfw
+_ralfw=		ralfw
+_runfw=		runfw
+_sf=		sf
+_sn=		sn
+_ti=		ti
+_txp=		txp
+.endif
+
 .if ${MACHINE_CPUARCH} == "i386"
 # XXX some of these can move to the general case when de-i386'ed
 # XXX some of these can move now, but are untested on other architectures.
@@ -417,9 +436,13 @@ _bktr=		bktr
 _bxe=		bxe
 _cardbus=	cardbus
 _cbb=		cbb
+.if ${MK_SOURCELESS_UCODE} != "no"
 _ce=		ce
+.endif
 _coff=		coff
+.if ${MK_SOURCELESS_UCODE} != "no"
 _cp=		cp
+.endif
 _cpuctl=	cpuctl
 _cpufreq=	cpufreq
 _cs=		cs
@@ -508,36 +531,52 @@ _ciss=		ciss
 _cm=		cm
 _cmx=		cmx
 _coretemp=	coretemp
+.if ${MK_SOURCELESS_UCODE} != "no"
 _ctau=		ctau
+.endif
 _dpt=		dpt
 _ex=		ex
+.if ${MK_SOURCELESS_HOST} != "no"
 _hpt27xx=	hpt27xx
+.endif
 _hptiop=	hptiop
+.if ${MK_SOURCELESS_HOST} != "no"
 _hptmv=		hptmv
 _hptrr=		hptrr
+.endif
 _ichwd=		ichwd
 _ida=		ida
 _iir=		iir
 _ipmi=		ipmi
 _ips=		ips
 _ipw=		ipw
+.if ${MK_SOURCELESS_UCODE} != "no"
 _ipwfw=		ipwfw
+.endif
 _isci=		isci
 _iwi=		iwi
+.if ${MK_SOURCELESS_UCODE} != "no"
 _iwifw=		iwifw
+.endif
 _iwn=		iwn
+.if ${MK_SOURCELESS_UCODE} != "no"
 _iwnfw=		iwnfw
+.endif
 _ixgb=		ixgb
 _ixgbe=		ixgbe
 _mly=		mly
 _nfe=		nfe
+.if ${MK_SOURCELESS_HOST} != "no"
 _nve=		nve
+.endif
 _nvram=		nvram
 _nxge=		nxge
 _tpm=		tpm
 _viawd=		viawd
 _wpi=		wpi
+.if ${MK_SOURCELESS_UCODE} != "no"
 _wpifw=		wpifw
+.endif
 .if ${MK_CRYPT} != "no" || defined(ALL_MODULES)
 _padlock=	padlock
 .endif
@@ -587,10 +626,14 @@ _et=		et
 _em=		em
 _exca=		exca
 _ext2fs=	ext2fs
+.if ${MK_SOURCELESS_HOST} != "no"
 _hpt27xx=	hpt27xx
+.endif
 _hptiop=	hptiop
+.if ${MK_SOURCELESS_HOST} != "no"
 _hptmv=		hptmv
 _hptrr=		hptrr
+.endif
 _i2c=		i2c
 _ichwd=		ichwd
 _ida=		ida
@@ -601,12 +644,18 @@ _io=		io
 _ipmi=		ipmi
 _ips=		ips
 _ipw=		ipw
+.if ${MK_SOURCELESS_UCODE} != "no"
 _ipwfw=		ipwfw
+.endif
 _isci=		isci
 _iwi=		iwi
+.if ${MK_SOURCELESS_UCODE} != "no"
 _iwifw=		iwifw
+.endif
 _iwn=		iwn
+.if ${MK_SOURCELESS_UCODE} != "no"
 _iwnfw=		iwnfw
+.endif
 _ixgb=		ixgb
 _ixgbe=		ixgbe
 _lindev=	lindev
@@ -622,7 +671,9 @@ _mthca=		mthca
 .endif
 _ndis=		ndis
 _nfe=		nfe
+.if ${MK_SOURCELESS_HOST} != "no"
 _nve=		nve
+.endif
 _nvram=		nvram
 _nxge=		nxge
 .if ${MK_CDDL} != "no" || defined(ALL_MODULES)
@@ -651,7 +702,9 @@ _vxge=  	vxge
 _x86bios=	x86bios
 _wi=		wi
 _wpi=		wpi
+.if ${MK_SOURCELESS_UCODE} != "no"
 _wpifw=		wpifw
+.endif
 .if ${MK_ZFS} != "no" || defined(ALL_MODULES)
 _zfs=		zfs
 .endif

Modified: stable/9/sys/modules/drm/Makefile
==============================================================================
--- stable/9/sys/modules/drm/Makefile	Sun Feb 19 00:28:49 2012	(r231904)
+++ stable/9/sys/modules/drm/Makefile	Sun Feb 19 07:44:38 2012	(r231905)
@@ -1,15 +1,26 @@
 # $FreeBSD$
 
+.include <bsd.own.mk>
+
+# Modules that include binary-only blobs of microcode should be selectable by
+# MK_SOURCELESS_UCODE option (see below).
+
 SUBDIR = \
 	drm \
 	i915 \
 	mach64 \
-	mga \
-	r128 \
-	radeon \
+	${_mga} \
+	${_r128} \
+	${_radeon} \
 	savage \
 	sis \
 	tdfx \
 	via
 
+.if ${MK_SOURCELESS_UCODE} != "no"
+_mga=		mga
+_r128=		r128
+_radeon=	radeon
+.endif
+
 .include <bsd.subdir.mk>

Modified: stable/9/sys/modules/sound/driver/Makefile
==============================================================================
--- stable/9/sys/modules/sound/driver/Makefile	Sun Feb 19 00:28:49 2012	(r231904)
+++ stable/9/sys/modules/sound/driver/Makefile	Sun Feb 19 07:44:38 2012	(r231905)
@@ -1,10 +1,21 @@
 # $FreeBSD$
 
-SUBDIR=		ad1816 als4000 atiixp cs4281 csa ds1 emu10k1 emu10kx
-SUBDIR+=	envy24 envy24ht es137x ess fm801 hda ich maestro maestro3
+.include <bsd.own.mk>
+
+# Modules that include binary-only blobs of microcode should be selectable by
+# MK_SOURCELESS_UCODE option (see below).
+
+SUBDIR=		ad1816 als4000 atiixp cs4281 ${_csa} ${_ds1} emu10k1 emu10kx
+SUBDIR+=	envy24 envy24ht es137x ess fm801 hda ich maestro ${_maestro3}
 SUBDIR+=	neomagic sb16 sb8 sbc solo spicds t4dwave via8233
 SUBDIR+=	via82c686 vibes driver uaudio
 
+.if ${MK_SOURCELESS_UCODE} != "no"
+_csa=		csa
+_ds1=		ds1
+_maestro3=	maestro3
+.endif
+
 .if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
 SUBDIR+=	cmi mss
 .endif

Modified: stable/9/sys/modules/usb/Makefile
==============================================================================
--- stable/9/sys/modules/usb/Makefile	Sun Feb 19 00:28:49 2012	(r231904)
+++ stable/9/sys/modules/usb/Makefile	Sun Feb 19 07:44:38 2012	(r231905)
@@ -25,16 +25,28 @@
 # SUCH DAMAGE.
 #
 
+.include <bsd.own.mk>
+
+# Modules that include binary-only blobs of microcode should be selectable by
+# MK_SOURCELESS_UCODE option (see below).
+
 SUBDIR = usb
 SUBDIR += ehci musb ohci uhci xhci uss820dci ${_at91dci} ${_atmegadci} ${_avr32dci}
-SUBDIR += rum run uath upgt usie ural zyd ${_urtw}
+SUBDIR += ${_rum} run ${_uath} upgt usie ural ${_zyd} ${_urtw}
 SUBDIR += atp uhid ukbd ums udbp ufm uep
 SUBDIR += ucom u3g uark ubsa ubser uchcom ucycom ufoma uftdi ugensa uipaq ulpt \
 	  umct umcs umodem umoscom uplcom uslcom uvisor uvscom
-SUBDIR += uether aue axe cdce cue kue mos rue udav uhso ipheth
+SUBDIR += uether aue axe cdce cue ${_kue} mos rue udav uhso ipheth
 SUBDIR += usfs umass urio
 SUBDIR += quirk template
 
+.if ${MK_SOURCELESS_UCODE} != "no"
+_rum=		rum
+_uath=		uath
+_zyd=		zyd
+_kue=		kue
+.endif
+
 .if ${MACHINE_CPUARCH} == "amd64"
 _urtw=		urtw
 .endif

Copied: stable/9/tools/build/options/WITHOUT_SOURCELESS (from r230972, head/tools/build/options/WITHOUT_SOURCELESS)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/9/tools/build/options/WITHOUT_SOURCELESS	Sun Feb 19 07:44:38 2012	(r231905, copy of r230972, head/tools/build/options/WITHOUT_SOURCELESS)
@@ -0,0 +1,2 @@
+.\" $FreeBSD$
+Set to not build kernel modules that include sourceless code (either microcode or native code for host CPU).

Copied: stable/9/tools/build/options/WITHOUT_SOURCELESS_HOST (from r230972, head/tools/build/options/WITHOUT_SOURCELESS_HOST)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/9/tools/build/options/WITHOUT_SOURCELESS_HOST	Sun Feb 19 07:44:38 2012	(r231905, copy of r230972, head/tools/build/options/WITHOUT_SOURCELESS_HOST)
@@ -0,0 +1,2 @@
+.\" $FreeBSD$
+Set to not build kernel modules that include sourceless native code for host CPU.

Copied: stable/9/tools/build/options/WITHOUT_SOURCELESS_UCODE (from r230972, head/tools/build/options/WITHOUT_SOURCELESS_UCODE)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ stable/9/tools/build/options/WITHOUT_SOURCELESS_UCODE	Sun Feb 19 07:44:38 2012	(r231905, copy of r230972, head/tools/build/options/WITHOUT_SOURCELESS_UCODE)
@@ -0,0 +1,2 @@
+.\" $FreeBSD$
+Set to not build kernel modules that include sourceless microcode.


More information about the svn-src-stable-9 mailing list