mirror of
https://github.com/freebsd/freebsd-src.git
synced 2024-11-27 09:12:44 +00:00
efba4afa18
Add devctl(8): a utility for manipulating new-bus devices. Note that this version does not include the 'suspend' and 'resume' commands present in HEAD as those depend on larger changes to the suspend and resume code in the kernel. 278320: Add a new device control utility for new-bus devices called devctl. This allows the user to request administrative changes to individual devices such as attach or detaching drivers or disabling and re-enabling devices. - Add a new /dev/devctl2 character device which uses ioctls for device requests. The ioctls use a common 'struct devreq' which is somewhat similar to 'struct ifreq'. - The ioctls identify the device to operate on via a string. This string can either by the device's name, or it can be a bus-specific address. (For unattached devices, a bus address is the only way to locate a device.) Bus drivers register an eventhandler to claim unrecognized device names that the driver recognizes as a valid address. Two buses currently support addresses: ACPI recognizes any device in the ACPI namespace via its full path starting with "\" and the PCI bus driver recognizes an address specification of 'pci[<domain>:]<bus>:<slot>:<func>' (identical to the PCI selector strings supported by pciconf). - To make it easier to cut and paste, change the PnP location string in the PCI bus driver to output a full PCI selector string rather than 'slot=<slot> function=<func>'. - Add a devctl(3) interface in libdevctl which provides a wrapper around the ioctls and is the preferred interface for other userland code. - Add a devctl(8) program which is a simple wrapper around the requests supported by devctl(3). - Add a resource_unset_value() function that can be used to remove a hint from the kernel environment. This is used to clear a hint.<driver>.<unit>.disabled hint when re-enabling a boot-time disabled device. 278336: Unbreak the build (memchr is explicitly required by devctl(9) after r278320) 278830: install the man page... 285621: Fix formatting. Approved by: re (marius)
290 lines
5.0 KiB
Makefile
290 lines
5.0 KiB
Makefile
# @(#)Makefile 8.1 (Berkeley) 6/4/93
|
|
# $FreeBSD$
|
|
|
|
.include <bsd.own.mk>
|
|
|
|
# The SUBDIR_ORDERED list is a small set of libraries which are used by many
|
|
# of the other libraries. These are built first with a .WAIT between them
|
|
# and the main list to avoid needing a SUBDIR_DEPEND line on every library
|
|
# naming just these few items.
|
|
|
|
SUBDIR_ORDERED= csu \
|
|
.WAIT \
|
|
libc \
|
|
libc_nonshared \
|
|
libcompiler_rt \
|
|
${_libcplusplus} \
|
|
${_libcxxrt} \
|
|
libelf \
|
|
msun
|
|
|
|
# The main list; please keep these sorted alphabetically.
|
|
|
|
SUBDIR= ${SUBDIR_ORDERED} \
|
|
.WAIT \
|
|
libalias \
|
|
libarchive \
|
|
${_libatm} \
|
|
libauditd \
|
|
libbegemot \
|
|
libblocksruntime \
|
|
${_libbluetooth} \
|
|
${_libbsnmp} \
|
|
libbsm \
|
|
libbz2 \
|
|
libcalendar \
|
|
libcam \
|
|
${_libcom_err} \
|
|
libcompat \
|
|
libcrypt \
|
|
libdevctl \
|
|
libdevinfo \
|
|
libdevstat \
|
|
libdpv \
|
|
libdwarf \
|
|
libedit \
|
|
${_libefi} \
|
|
libexecinfo \
|
|
libexpat \
|
|
libfetch \
|
|
libfigpar \
|
|
libgeom \
|
|
${_libgpib} \
|
|
${_libgssapi} \
|
|
${_librpcsec_gss} \
|
|
${_libiconv_modules} \
|
|
libipsec \
|
|
${_libipx} \
|
|
libjail \
|
|
libkiconv \
|
|
libkvm \
|
|
${_libldns} \
|
|
liblzma \
|
|
${_libmagic} \
|
|
libmandoc \
|
|
libmemstat \
|
|
libmd \
|
|
${_libmilter} \
|
|
${_libmp} \
|
|
libmt \
|
|
${_libnandfs} \
|
|
libnetbsd \
|
|
${_libnetgraph} \
|
|
${_libngatm} \
|
|
libnv \
|
|
libopie \
|
|
libpam \
|
|
libpcap \
|
|
${_libpmc} \
|
|
${_libproc} \
|
|
libprocstat \
|
|
${_libradius} \
|
|
librpcsvc \
|
|
librt \
|
|
${_librtld_db} \
|
|
libsbuf \
|
|
${_libsdp} \
|
|
${_libsm} \
|
|
libsmb \
|
|
${_libsmdb} \
|
|
${_libsmutil} \
|
|
libstand \
|
|
libstdbuf \
|
|
libstdthreads \
|
|
libtacplus \
|
|
${_libtelnet} \
|
|
${_libthr} \
|
|
libthread_db \
|
|
libucl \
|
|
libufs \
|
|
libugidfw \
|
|
libulog \
|
|
${_libunbound} \
|
|
${_libusbhid} \
|
|
${_libusb} \
|
|
libutil \
|
|
${_libvgl} \
|
|
${_libvmmapi} \
|
|
libwrap \
|
|
liby \
|
|
${_libypclnt} \
|
|
libyaml \
|
|
libz \
|
|
ncurses \
|
|
${_atf} \
|
|
${_clang} \
|
|
${_tests}
|
|
|
|
# Inter-library dependencies. When the makefile for a library contains LDADD
|
|
# libraries, those libraries should be listed as build order dependencies here.
|
|
|
|
SUBDIR_DEPEND_libarchive= libz libbz2 libexpat liblzma libmd
|
|
SUBDIR_DEPEND_libatm= libmd
|
|
SUBDIR_DEPEND_libauditdm= libbsm
|
|
SUBDIR_DEPEND_libbsnmp= ${_libnetgraph}
|
|
SUBDIR_DEPEND_libc++= libcxxrt
|
|
SUBDIR_DEPEND_libc= libcompiler_rt
|
|
SUBDIR_DEPEND_libcam= libsbuf
|
|
SUBDIR_DEPEND_libdevstat= libkvm
|
|
SUBDIR_DEPEND_libdpv= libfigpar ncurses libutil
|
|
SUBDIR_DEPEND_libedit= ncurses
|
|
SUBDIR_DEPEND_libg++= msun
|
|
SUBDIR_DEPEND_libgeom= libexpat libsbuf
|
|
SUBDIR_DEPEND_liblibrpcsec_gss= libgssapi
|
|
SUBDIR_DEPEND_libmagic= libz
|
|
SUBDIR_DEPEND_libmemstat= libkvm
|
|
SUBDIR_DEPEND_libopie= libmd
|
|
SUBDIR_DEPEND_libpam= libcrypt libopie ${_libradius} librpcsvc libtacplus libutil ${_libypclnt} ${_libcom_err}
|
|
SUBDIR_DEPEND_libpjdlog= libutil
|
|
SUBDIR_DEPEND_libprocstat= libkvm libutil
|
|
SUBDIR_DEPEND_libradius= libmd
|
|
SUBDIR_DEPEND_libsmb= libkiconv
|
|
SUBDIR_DEPEND_libstdc++= msun
|
|
SUBDIR_DEPEND_libtacplus= libmd
|
|
SUBDIR_DEPEND_libulog= libmd
|
|
SUBDIR_DEPEND_libunbound= ${_libldns}
|
|
SUBDIR_DEPEND_liblzma= ${_libthr}
|
|
|
|
# NB: keep these sorted by MK_* knobs
|
|
|
|
.if ${MK_ATM} != "no"
|
|
_libngatm= libngatm
|
|
.endif
|
|
|
|
.if ${MK_BLUETOOTH} != "no"
|
|
_libbluetooth= libbluetooth
|
|
_libsdp= libsdp
|
|
.endif
|
|
|
|
.if ${MK_BSNMP} != "no"
|
|
_libbsnmp= libbsnmp
|
|
.endif
|
|
|
|
.if ${MK_CLANG} != "no" && !defined(COMPAT_32BIT)
|
|
_clang= clang
|
|
.endif
|
|
|
|
.if ${MK_FILE} != "no"
|
|
_libmagic= libmagic
|
|
.endif
|
|
|
|
.if ${MK_GPIB} != "no"
|
|
_libgpib= libgpib
|
|
.endif
|
|
|
|
.if ${MK_GSSAPI} != "no"
|
|
_libgssapi= libgssapi
|
|
_librpcsec_gss= librpcsec_gss
|
|
.endif
|
|
|
|
.if ${MK_ICONV} != "no"
|
|
_libiconv_modules= libiconv_modules
|
|
.endif
|
|
|
|
.if ${MK_KERBEROS_SUPPORT} != "no"
|
|
_libcom_err= libcom_err
|
|
.endif
|
|
|
|
.if ${MK_IPX} != "no"
|
|
_libipx= libipx
|
|
.endif
|
|
|
|
.if ${MK_LDNS} != "no"
|
|
_libldns= libldns
|
|
.endif
|
|
|
|
.if ${MK_LIBCPLUSPLUS} != "no"
|
|
_libcxxrt= libcxxrt
|
|
_libcplusplus= libc++
|
|
.endif
|
|
|
|
.if ${MK_LIBTHR} != "no"
|
|
_libthr= libthr
|
|
.endif
|
|
|
|
.if ${MK_NAND} != "no"
|
|
_libnandfs= libnandfs
|
|
.endif
|
|
|
|
.if ${MK_NETGRAPH} != "no"
|
|
_libnetgraph= libnetgraph
|
|
.endif
|
|
|
|
.if ${MK_NIS} != "no"
|
|
_libypclnt= libypclnt
|
|
.endif
|
|
|
|
.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
|
|
_libvgl= libvgl
|
|
_libproc= libproc
|
|
_librtld_db= librtld_db
|
|
.endif
|
|
|
|
.if ${MACHINE_CPUARCH} == "amd64"
|
|
.if ${MK_BHYVE} != "no"
|
|
_libvmmapi= libvmmapi
|
|
.endif
|
|
.endif
|
|
|
|
.if ${MACHINE_CPUARCH} == "ia64"
|
|
_libefi= libefi
|
|
.endif
|
|
|
|
.if ${MACHINE_CPUARCH} == "mips"
|
|
_libproc= libproc
|
|
_librtld_db= librtld_db
|
|
.endif
|
|
|
|
.if ${MACHINE_CPUARCH} == "powerpc"
|
|
_libproc= libproc
|
|
_librtld_db= librtld_db
|
|
.endif
|
|
|
|
.if ${MK_OPENSSL} != "no"
|
|
_libmp= libmp
|
|
.endif
|
|
|
|
.if ${MK_PMC} != "no"
|
|
_libpmc= libpmc
|
|
.endif
|
|
|
|
.if ${MK_RADIUS_SUPPORT} != "no"
|
|
_libradius= libradius
|
|
.endif
|
|
|
|
.if ${MK_SENDMAIL} != "no"
|
|
_libmilter= libmilter
|
|
_libsm= libsm
|
|
_libsmdb= libsmdb
|
|
_libsmutil= libsmutil
|
|
.endif
|
|
|
|
.if ${MK_TELNET} != "no"
|
|
_libtelnet= libtelnet
|
|
.endif
|
|
|
|
.if ${MK_TESTS} != "no"
|
|
_atf= atf
|
|
_tests= tests
|
|
.endif
|
|
|
|
.if ${MK_UNBOUND} != "no"
|
|
_libunbound= libunbound
|
|
.endif
|
|
|
|
.if ${MK_USB} != "no"
|
|
_libusbhid= libusbhid
|
|
_libusb= libusb
|
|
.endif
|
|
|
|
.if !defined(LIBRARIES_ONLY)
|
|
afterinstall:
|
|
${INSTALL_SYMLINK} ../include ${DESTDIR}/usr/lib/include
|
|
.endif
|
|
|
|
.if !make(install)
|
|
SUBDIR_PARALLEL=
|
|
.endif
|
|
|
|
.include <bsd.subdir.mk>
|