From 3bc2f9a8974639ac4c0d112675d86584336b1620 Mon Sep 17 00:00:00 2001 From: Poul-Henning Kamp Date: Fri, 29 Aug 2003 10:35:01 +0000 Subject: [PATCH] Introduce more knobs to slim down FreeBSD userland NO_TOOLCHAIN skips Compilers and Binutils NO_USB skips USB stuff NO_VINUM skips Vinum stuff NO_ACPI skips ACPI stuff --- gnu/usr.bin/Makefile | 7 ++++++- lib/Makefile | 6 +++++- sbin/Makefile | 7 +++++-- usr.bin/Makefile | 23 +++++++++++++++++------ usr.sbin/Makefile | 15 +++++++++++---- 5 files changed, 44 insertions(+), 14 deletions(-) diff --git a/gnu/usr.bin/Makefile b/gnu/usr.bin/Makefile index 096c23c0454e..b6a7cbd68871 100644 --- a/gnu/usr.bin/Makefile +++ b/gnu/usr.bin/Makefile @@ -1,8 +1,13 @@ # $FreeBSD$ -SUBDIR= bc binutils cc cpio dc dialog diff diff3 \ +SUBDIR= bc ${_binutils} ${_cc} cpio dc dialog diff diff3 \ ${_gperf} grep gzip man patch rcs sdiff send-pr sort tar texinfo +.if !defined(NO_TOOLCHAIN) +_cc=cc +_binutils=binutils +.endif + .if !defined(NO_CXX) .if ${MACHINE_ARCH} != "powerpc" _gperf=gperf diff --git a/lib/Makefile b/lib/Makefile index 94776d7bea4b..a21bc277b714 100644 --- a/lib/Makefile +++ b/lib/Makefile @@ -29,7 +29,7 @@ SUBDIR= ${_csu} libcom_err libcrypt libkvm msun libmd \ libipx libisc libmenu ${_libmilter} ${_libmp} ${_libncp} \ libnetgraph libopie libpam libpanel libpcap ${_libpthread} \ ${_libsm} ${_libsmb} ${_libsmdb} ${_libsmutil} \ - libstand libtelnet ${_libthr} libufs libugidfw libusbhid \ + libstand libtelnet ${_libthr} libufs libugidfw ${_libusbhid} \ ${_libvgl} libwrap libxpg4 liby libz .if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf) @@ -62,6 +62,10 @@ _libsmdb= libsmdb _libsmutil= libsmutil .endif +.if !defined(NO_USB) +_libusbhid= libusbhid +.endif + .if ${MACHINE_ARCH} == "i386" _compat= compat _libncp= libncp diff --git a/sbin/Makefile b/sbin/Makefile index c91d13140dc6..71e5440598d4 100644 --- a/sbin/Makefile +++ b/sbin/Makefile @@ -74,8 +74,7 @@ SUBDIR= adjkerntz \ swapon \ sysctl \ tunefs \ - umount \ - vinum + umount .if !defined(NOATM) SUBDIR+=atm @@ -98,6 +97,10 @@ SUBDIR+=ip6fw \ ping6 .endif +.if !defined(NO_VINUM) +SUBDIR+=vinum +.endif + .if ${MACHINE_ARCH} == "i386" SUBDIR+=cxconfig .if ${MACHINE} == "pc98" diff --git a/usr.bin/Makefile b/usr.bin/Makefile index 310c39fb9c4b..ce9cc76e6d6f 100644 --- a/usr.bin/Makefile +++ b/usr.bin/Makefile @@ -8,11 +8,19 @@ # .if ${MACHINE_ARCH} != "ia64" +.if !defined(NO_TOOLCHAIN) _xlint= xlint +_lex= lex +_yacc= yacc +_c88= c88 +_c98= c98 +.endif .endif .if ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "amd64" +.if !defined(NO_TOOLCHAIN) _gprof= gprof +.endif _truss= truss .endif @@ -27,8 +35,8 @@ SUBDIR= alias \ brandelf \ bzip2 \ bzip2recover \ - c89 \ - c99 \ + ${_c89} \ + ${_c99} \ calendar \ cap_mkdb \ catman \ @@ -96,7 +104,7 @@ SUBDIR= alias \ less \ lessecho \ lesskey \ - lex \ + ${_lex} \ limits \ locale \ locate \ @@ -188,8 +196,6 @@ SUBDIR= alias \ uniq \ units \ unvis \ - usbhidaction \ - usbhidctl \ users \ uudecode \ uuencode \ @@ -212,7 +218,7 @@ SUBDIR= alias \ xinstall \ ${_xlint} \ xstr \ - yacc \ + ${_yacc} \ yes \ ypcat \ ypmatch \ @@ -229,6 +235,11 @@ SUBDIR+=dig \ SUBDIR+=vacation .endif +.if !defined(NO_USB) +SUBDIR+=usbhidaction \ + usbhidctl +.endif + .if ${MACHINE_ARCH} == "i386" # Things that don't compile on alpha or are aout specific: SUBDIR+=doscmd \ diff --git a/usr.sbin/Makefile b/usr.sbin/Makefile index 5d79535e0ccc..18c7f63ac606 100644 --- a/usr.sbin/Makefile +++ b/usr.sbin/Makefile @@ -114,8 +114,6 @@ SUBDIR= IPXrouted \ trpt \ tzsetup \ ugidfw \ - usbd \ - usbdevs \ vidcontrol \ vipw \ vnconfig \ @@ -148,6 +146,10 @@ SUBDIR+=ipftest \ iptest .endif +.if !defined(NO_USB) +SUBDIR+=usbd \ + usbdevs +.endif .if !defined(NOLIBC_R) && ${MACHINE_ARCH} != "powerpc" SUBDIR+=pppctl .endif @@ -179,8 +181,7 @@ SUBDIR+=elf2exe \ .endif .if ${MACHINE_ARCH} == "i386" -SUBDIR+=acpi \ - apm \ +SUBDIR+=apm \ apmd \ asf \ btxld \ @@ -199,9 +200,15 @@ SUBDIR+=acpi \ stallion \ wlconfig \ zzz + +.if !defined(NO_ACPI) +SUBDIR+=acpi +.endif + .if !defined(NO_I4B) SUBDIR+=i4b .endif + .endif # kgmon: builds, but no kernel profiling