path: root/include/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* MFC r289393:bdrewery2015-12-041-0/+1
| | | | Add more SUBDIR_PARALLEL.
* MFC r278204:ngie2015-03-241-11/+10
| | | | | | Sort the entries by build knob, then MACHINE_ARCH like other areas of the tree Sponsored by: EMC / Isilon Storage Division
* MFC r278135,r278202:ngie2015-03-241-1/+5
| | | | | | | | | | | | | | | | | r278135 (by amdmi3): - Remove more files when MK_USB == no Reviewed by: ngie Approved by: ngie Differential Revision: D1600 r278202: Clean up more usb related files when MK_USB == no when dealing with manpages, libraries, and binaries Sponsored by: EMC / Isilon Storage Division
* MFC 273598 273602 273607 273613 273647:rpaulo2014-11-031-1/+3
| | | | Userland HPET support.
* MFC r267441:tijl2014-06-201-2/+7
| | | | | | | | Don't install GSS-API headers when the GSSAPI option has been disabled. Some ports assume GSS-API is supported when they find the headers. PR: 189156 Submitted by: Garrett Cooper <>
* Merge r257485: install netpfil/pf includes.glebius2014-03-191-0/+5
* Bulk sync of pf changes from head, in attempt to fixup broken build Iglebius2014-03-121-0/+7
| | | | | | | | | made in r263029. Merge r257186,257215,257349,259736,261797. These changesets split pfvar.h into several smaller headers and make userland utilities to include only some of them.
* MFC r257583, r258012, r258013:gjb2013-11-161-9/+1
| | | | | | | | | | | | | | | | | | | r257583 (peter): Remove the WITH_LIBICONV_COMPAT hack that seems to do more harm than good. This caused libc to spoof the ports libiconv namespace and provide a colliding to fool rtld. This should have been removed some time ago. r258012: Remove WITH_LIBICONV_COMPAT file to chase after r257583. r258013: Regenerate src.conf.5 after removal of WITH_LIBICONV_COMPAT. Approved by: re (kib) Sponsored by: The FreeBSD Foundation Sponsored by: The FreeBSD Foundation
* Remove BIND.des2013-09-301-5/+0
| | | | Approved by: re (gjb)
* Allow the path to the system source directory to be passed in toian2013-09-281-2/+4
| | | | | | | | | | | | | | | | Pass it in from include/Makefile. If it isn't passed in, fall back to the old logic of using dirname $0. Using dirname $0 does not yield the path to the script if it was sourced in from another script in another directory; you end up with the parent script's path. That was causing to look one level below the FreeBSD src/ directory when building osreldate.h and it may find something like a git or svn repo there that has nothing to do with FreeBSD. PR: 174422 Approved by: re () MFC after: 2 weeks
* Launch the bourne shell using "sh" rather than "${SHELL}", as the latterian2013-09-231-1/+1
| | | | | | | | | | may come in from the environment and reflect the user's interactive shell. Using bare "sh" is the dominant pattern in existing makefiles. MFC this together with r255775. Approved by: re () MFC after: 2 weeks
* Launch the shell, passing it the path to the mk-osreldate script, ratherian2013-09-221-1/+1
| | | | | | | | | | than launching the script directly and relying on #! to launch the shell. This avoids problems when the source is mounted with the noexec flag. MFC this together with r255775. Approved by: re (kib) MFC after: 2 weeks
* Create a separate script to generate osreldate.h rather than sourcingian2013-09-211-13/+10
| | | | | | | | | | | | | | | | | into a temporary subshell with inline make rules. Using a separate script fixes a variety of problems, including establishing the correct dependencies in the makefiles. It also eliminates a problem with the way uses `realpath $0`, because $0 expands differently within a script sourced into a rule in a makefile depending on the version of make and of /bin/sh being used. The latter can cause build breakage in a cross-build environment, and can also make it difficult to compile 10.0 on older pre-10.0 systems. PR: 160646 174422 Submitted by: Garrett Cooper <> Approved by: re (gjb) MFC after: 2 weeks
* The iconv in libc did two things - implement the standard APIs, the GNUpeter2013-08-131-4/+14
| | | | | | | | | | | | | | | | | | | | | | | | extensions and also tried to be link time compatible with ports libiconv. This splits that functionality and enables the parts that shouldn't interfere with the port by default. WITH_ICONV (now on by default) - adds iconv.h, iconv_open(3) etc. WITH_LIBICONV_COMPAT (off by default) adds the libiconv_open etc API, linker symbols and even a stub that are good enough to be able to 'pkg delete -f libiconv' on a running system and reasonably expect it to work. I have tortured many machines over the last few days to try and reduce the possibilities of foot-shooting as much as I can. I've successfully recompiled to enable and disable the libiconv_compat modes, ports that use libiconv alongside system iconv etc. If you don't enable the WITH_LIBICONV_COMPAT switch, they don't share symbol space. This is an extension of behavior on other system. iconv(3) is a standard libc interface and libiconv port expects to be able to run alongside it on systems that have it. Bumped osreldate.
* - Trim an unused and bogus Makefile for mount_smbfs.davide2013-06-281-2/+3
| | | | | | - Reconnect with some minor modifications, in particular now selsocket() internals are adapted to use sbintime units after recent'ish calloutng switch.
* Move <stdatomic.h> into sys/sys/.ed2013-06-011-3/+3
| | | | | This will allow us to use C11 atomics in kernelspace, although it will need to be included as <sys/stdatomic.h>.
* Add <uchar.h>.ed2013-05-211-1/+1
| | | | | | | | | | | | The <uchar.h> header, part of C11, adds a small number of utility functions for 16/32-bit "universal" characters, which may or may not be UTF-16/32. As our wchar_t is already ISO 10646, simply add light-weight wrappers around wcrtomb() and mbrtowc(). While there, also add (non-yet-standard) _l functions, similar to the ones we already have for the other locale-dependent functions. Reviewed by: theraven
* Install <dev/agp/agpreg.h> and <dev/pci/pcireg.h> as userland headersjhb2013-02-051-4/+21
| | | | | | in /usr/include. MFC after: 2 weeks
* Replace our implementation of the vis(3) and unvis(3) APIs withbrooks2012-12-181-1/+4
| | | | | | | | | NetBSD's. This output size limited versions of vis and unvis functions as well as a set of vis variants that allow arbitrary characters to be specified for encoding. Finally, MIME Quoted-Printable encoding as described in RFC 2045 is supported.
* Disconnect non-MPSAFE SMBFS from the build in preparation for droppingattilio2012-10-181-3/+2
| | | | | | | | | | | | | GIANT from VFS. In addition, disconnect also netsmb, which is a base requirement for SMBFS. In the while SMBFS regular users can use FUSE interface and smbnetfs port to work with their SMBFS partitions. Also, there are ongoing efforts by vendor to support in-kernel smbfs, so there are good chances that it will get relinked once properly locked. This is not targeted for MFC.
* Include a piece that was left out during r241629.attilio2012-10-171-1/+1
| | | | Pointy hat to: me
* Disconnect non-MPSAFE NTFS from the build in preparation for droppingattilio2012-10-171-1/+1
| | | | | | | | | | | | | | GIANT from VFS. This code is particulary broken and fragile and other in-kernel implementations around, found in other operating systems, don't really seem clean and solid enough to be imported at all. If someone wants to reconsider in-kernel NTFS implementation for inclusion again, a fair effort for completely fixing and cleaning it up is expected. In the while NTFS regular users can use FUSE interface and ntfs-3g port to work with their NTFS partitions. This is not targeted for MFC.
* Disconnect non-MPSAFE NWFS from the build in preparation for droppingattilio2012-10-171-6/+1
| | | | | | | | | | | | GIANT from VFS. In addition, disconnect also netncp, which is a base requirement for NWFS. In the possibility of a future maintenance of the code and later readd to the FreeBSD base, maybe we should think about a better location for netncp. I'm not entirely sure the / top location is actually right, however I will let network people to comment on that more specifically. This is not targeted for MFC.
* Disconnect non-MPSAFE PORTALFS from the build in preparation for droppingattilio2012-10-161-1/+1
| | | | | | GIANT from VFS. This is not targeted for MFC.
* Integrate nvmecontrol(8) into the amd64 and i386 builds.jimharris2012-09-171-2/+2
| | | | | | This includes adding NVMe header files to /usr/include/dev/nvme. Sponsored by: Intel
* o Create directory sys/netpfil, where all packet filters shouldglebius2012-09-141-8/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | reside, and move there ipfw(4) and pf(4). o Move most modified parts of pf out of contrib. Actual movements: sys/contrib/pf/net/*.c -> sys/netpfil/pf/ sys/contrib/pf/net/*.h -> sys/net/ contrib/pf/pfctl/*.c -> sbin/pfctl contrib/pf/pfctl/*.h -> sbin/pfctl contrib/pf/pfctl/pfctl.8 -> sbin/pfctl contrib/pf/pfctl/*.4 -> share/man/man4 contrib/pf/pfctl/*.5 -> share/man/man5 sys/netinet/ipfw -> sys/netpfil/ipfw The arguable movement is pf/net/*.h -> sys/net. There are future plans to refactor pf includes, so I decided not to break things twice. Not modified bits of pf left in contrib: authpf, ftp-proxy, tftp-proxy, pflogd. The ipfw(4) movement is planned to be merged to stable/9, to make head and stable match. Discussed with: bz, luigi
* Install filemon.h into /usr/include for userland consumption.obrien2012-06-201-1/+1
* Import work done under project/nand (@235533) into head.gber2012-05-171-3/+17
| | | | | | | | | | | | | | The NAND Flash environment consists of several distinct components: - NAND framework (drivers harness for NAND controllers and NAND chips) - NAND simulator (NANDsim) - NAND file system (NAND FS) - Companion tools and utilities - Documentation (manual pages) This work is still experimental. Please use with caution. Obtained from: Semihalf Supported by: FreeBSD Foundation, Juniper Networks
* Remove fifo.h. The only used function declaration from the header iskib2012-03-111-1/+1
| | | | | | migrated to sys/vnode.h. Submitted by: gianni
* Reapply 227753 (xlocale cleanup), plus some fixes so that it passes buildtheraven2012-03-041-2/+2
| | | | | | universe with gcc. Approved by: dim (mentor)
* Revert r231673 and r231682 for now, until we can run a full makedim2012-02-141-2/+2
| | | | | | universe with them. Sorry for the breakage. Pointy hat to: me and brooks
* Cleanup of xlocale:theraven2012-02-141-2/+2
| | | | | | | | | | | | | | | | - Address performance regressions encountered by das@ by caching per-thread data in TLS where available. - Add a __NO_TLS flag to cdefs.h to indicate where not available. - Reorganise the xlocale.h definitions into xlocale/*.h so that they can be included from multiple places. - Export the POSIX2008 subset of xlocale when POSIX2008 says it should be exported, independently of whether xlocale.h is included. - Fix the bug where programs using ctype functions always assumed ASCII unless recompiled. - Fix some style(9) violations. Reviewed by: brooks (mentor) Approved by: dim (mentor)
* Add <stdalign.h> and <stdnoreturn.h>.ed2011-12-251-2/+2
| | | | | | | Even though these header files make little sense to me, they are part of the standard. By including these header files, you can simply use `alignas', `alignof' and `noreturn' instead of the underscore-prefixed versions.
* ...and actually install it.theraven2011-12-241-1/+1
| | | | Approved by: dim (mentor)
* Implement xlocale APIs from Darwin, mainly for use by libc++. This adds atheraven2011-11-201-1/+1
| | | | | | | | | | | | load of _l suffixed versions of various standard library functions that use the global locale, making them take an explicit locale parameter. Also adds support for per-thread locales. This work was funded by the FreeBSD Foundation. Please test any code you have that uses the C standard locale functions! Reviewed by: das (gdtoa changes) Approved by: dim (mentor)
* Install ciss(4) ioctl header (together with other .h files from sys/dev/ciss).kib2011-09-271-1/+1
| | | | | | | PR: kern/109813 Discussued with: Alex Samorukov <samm os2 kiev ua> (smartmontools maintainer) MFC after: 1 week
* * Add the readline(3) API to libedit. The libedit versions ofobrien2011-04-051-1/+1
| | | | | | | | | | | | | | | | {readline,history}.h are in /usr/include/edit so as to not conflict with the GNU libreadline versions. To use the libedit readline(3) one should add "-I/usr/include/edit" to their Makefile (spelled "-I${DESTDIR}/${INCLUDEDIR}/edit" within the FreeBSD source tree). * Enable its use in the BSD licensed utilities that support readline(3). * To make it easier to sync libedit development with NetBSD, histedit.h is moved into libedit's directory as history shows shown we keep merging it into that location. Obtained from: NetBSD Sponsored by: Juniper Networks
* MFgraid/head:mav2011-03-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add new RAID GEOM class, that is going to replace ataraid(4) in supporting various BIOS-based software RAIDs. Unlike ataraid(4) this implementation does not depend on legacy ata(4) subsystem and can be used with any disk drivers, including new CAM-based ones (ahci(4), siis(4), mvs(4), ata(4) with `options ATA_CAM`). To make code more readable and extensible, this implementation follows modular design, including core part and two sets of modules, implementing support for different metadata formats and RAID levels. Support for such popular metadata formats is now implemented: Intel, JMicron, NVIDIA, Promise (also used by AMD/ATI) and SiliconImage. Such RAID levels are now supported: RAID0, RAID1, RAID1E, RAID10, SINGLE, CONCAT. For any all of these RAID levels and metadata formats this class supports full cycle of volume operations: reading, writing, creation, deletion, disk removal and insertion, rebuilding, dirty shutdown detection and resynchronization, bad sector recovery, faulty disks tracking, hot-spare disks. For Intel and Promise formats there is support multiple volumes per disk set. Look graid(8) manual page for additional details. Co-authored by: imp Sponsored by: Cisco Systems, Inc. and iXsystems, Inc.
* Add the BSD-licensed Citrus iconv to the base system with default offgabor2011-02-251-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | setting. It can be built by setting the WITH_ICONV knob. While this knob is unset, the library part, the binaries, the header file and the metadata files will not be built or installed so it makes no impact on the system if left turned off. This work is based on the iconv implementation in NetBSD but a great number of improvements and feature additions have been included: - Some utilities have been added. There is a conversion table generator, which can compare conversion tables to reference data generated by GNU libiconv. This helps ensuring conversion compatibility. - UTF-16 surrogate support and some endianness issues have been fixed. - The rather chaotic Makefiles to build metadata have been refactored and cleaned up, now it is easy to read and it is also easier to add support for new encodings. - A bunch of new encodings and encoding aliases have been added. - Support for 1->2, 1->3 and 1->4 mappings, which is needed for transliterating with flying accents as GNU does, like "u. - Lots of warnings have been fixed, the major part of the code is now WARNS=6 clean. - New section 1 and section 5 manual pages have been added. - Some GNU-specific calls have been implemented: iconvlist(), iconvctl(), iconv_canonicalize(), iconv_open_into() - Support for GNU's //IGNORE suffix has been added. - The "-" argument for stdin is now recognized in iconv(1) as per POSIX. - The Big5 conversion module has been fixed. - The iconv.h header files is supposed to be compatible with the GNU version, i.e. sources should build with base iconv.h and GNU libiconv. It also includes a macro magic to deal with the char ** and const char ** incompatibility. - GNU compatibility: "" or "char" means the current local encoding in use - Various cleanups and style(9) fixes. Approved by: delphij (mentor) Obtained from: The NetBSD Project Sponsored by: Google Summer of Code 2009
* Install iodev.h.kib2011-02-171-1/+1
| | | | | Reviewed by: attilio MFC after: 1 week
* Add an x86/include directory to the kernel to hold headers that are commonjhb2010-11-011-5/+12
| | | | | | | | to amd64, i386, and pc98. The headers are installed to /usr/include/x86 during an installworld, and an 'x86' symlink is created for kernel builds similar to 'machine' so that the headers can be included as <x86/foo.h>. Reviewed by: imp
* MFtbemd:imp2010-08-231-2/+2
| | | | | Prefer MACHNE_CPUARCH to MACHINE_ARCH in most contexts where you want to test of all the CPUs of a given family conform.
* Connect powerpc64 to the build. It is not presently part of make universe,nwhitehorn2010-07-131-3/+3
| | | | | | which will be added soon. Reviewed by: imp
* Trim down libcompat by removing <regexp.h>.ed2010-03-141-1/+1
| | | | | | | | | | | | | | | Erwin ran an exp-run with libcompat and <regexp.h> removed. It turns out the regexp library is almost entirely unused. In fact, it looks like it is sometimes used by accident. Because these function names clash with libc's <regex.h>, some application use both <regex.h> and libcompat, which means they link against the wrong regex library. This commit removes the regexp library and reimplements re_comp() and re_exec() using <regex.h>. It seems the grammar of the regular expressions accepted by these functions is similar to POSIX EREs. After this commit, 1 low-profile port will be broken, but the maintainer already has a patch for it sitting in his mailbox.
* Remove last traces of <utmp.h>.ed2010-03-031-1/+1
* Add gmountver, disk mount verification GEOM class.trasz2010-01-161-1/+1
| | | | | | | | Note that due to e.g. write throttling ('wdrain'), it can stall all the disk I/O instead of just the device it's configured for. Using it for removable media is therefore not a good idea. Reviewed by: pjd (earlier version)
* Implement <utmpx.h>.ed2010-01-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The utmpx interface is the standardized interface of the user accounting database. The standard only defines a subset of the functions that were present in System V-like systems. I'd like to highlight some of the traits my implementation has: - The standard allows the on-disk format to be different than the in-memory representation (struct utmpx). Most operating systems don't do this, but we do. This allows us to keep our ABI more stable, while giving us the opportunity to modify the on-disk format. It also allows us to use a common file format across different architectures (i.e. byte ordering). - Our implementation of pututxline() also updates wtmp and lastlog (now called utx.log and utx.lastlogin). This means the databases are more likely to be in sync. - Care must be taken that our implementation discard any fields that are not applicable. For example, our DEAD_PROCESS records do not hold a TTY name. Just a time stamp, a record identifier and a process identifier. It also guarantees that strings (ut_host, ut_line and ut_user) are null terminated. ut_id is obviously not null terminated, because it's not a string. - The API and its behaviour should be conformant to POSIX, but there may be things that slightly deviate from the standard. This implementation uses separate file descriptors when writing to the log files. It also doesn't use getutxid() to search for a field to overwrite. It uses an allocation strategy similar to getutxid(), but prevents DEAD_PROCESS records from accumulating. Make sure libulog doesn't overwrite the manpages shipped with our C library. Also keep the symbol list in sorted. I'll bump __FreeBSD_version later this evening. I first want to convert everything to <utmpx.h> and get rid of <utmp.h>.
* Use umtx to implement process sharable semaphore, to make this work,davidxu2010-01-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | now type sema_t is a structure which can be put in a shared memory area, and multiple processes can operate it concurrently. User can either use mmap(MAP_SHARED) + sem_init(pshared=1) or use sem_open() to initialize a shared semaphore. Named semaphore uses file system and is located in /tmp directory, and its file name is prefixed with 'SEMD', so now it is chroot or jail friendly. In simplist cases, both for named and un-named semaphore, userland code does not have to enter kernel to reduce/increase semaphore's count. The semaphore is designed to be crash-safe, it means even if an application is crashed in the middle of operating semaphore, the semaphore state is still safely recovered by later use, there is no waiter counter maintained by userland code. The main semaphore code is in libc and libthr only has some necessary stubs, this makes it possible that a non-threaded application can use semaphore without linking to thread library. Old semaphore implementation is kept libc to maintain binary compatibility. The kernel ksem API is no longer used in the new implemenation. Discussed on: threads@
* Decompose <sys/termios.h>.ed2009-11-281-2/+2
| | | | | | | | | | | | | | | | | | | | The <sys/termios.h> header file is hardlinked to <termios.h>. It contains both the structures and the flag definitions, but also the C library interface that's implemented by the C library. This header file has the typical problem of including too many random things and being badly ordered. Instead of trying to fix this, decompose it into two header files: - <sys/_termios.h>, which contains struct termios and the flags. - <termios.h>, which includes <sys/_termios.h> and contains the C library interface. This means userspace has to include <termios.h> for struct termios, while kernelspace code has to include <sys/tty.h>. Also add a <sys/termios.h>, which prints a warning message before including <termios.h>. I am aware that there are some applications that use this header file as well.
* ntroduce mfiutil, a basic utility for managing LSI SAS-RAID & Dell PERC5/6scottl2009-08-131-1/+1
| | | | | | | | | | | | | | controllers. Controller, array, and drive status can be checked, basic attributes can be changed, and arrays and spares can be created and deleted. Controller firmware can also be flashed. This does not replace MegaCLI, found in ports, as that is officially sanctioned and supported by LSI and includes vastly more functionality. However, mfiutil is open source and guaranteed to provide basic functionality, which can be especially useful if you have a problem and can't get MegaCLI to work. Approved by: re Obtained from: Yahoo! Inc.
OpenPOWER on IntegriCloud