12.7 __FreeBSD_version values

Here is a convenient list of __FreeBSD_version values as defined in sys/param.h:

Table 12-1. __FreeBSD_version values

Release __FreeBSD_version
2.0-RELEASE 119411
2.1-CURRENT 199501, 199503
2.0.5-RELEASE 199504
2.2-CURRENT before 2.1 199508
2.1.0-RELEASE 199511
2.2-CURRENT before 2.1.5 199512
2.1.5-RELEASE 199607
2.2-CURRENT before 2.1.6 199608
2.1.6-RELEASE 199612
2.1.7-RELEASE 199612
2.2-RELEASE 220000
2.2.1-RELEASE 220000 (no change)
2.2-STABLE after 2.2.1-RELEASE 220000 (no change)
2.2-STABLE after texinfo-3.9 221001
2.2-STABLE after top 221002
2.2.2-RELEASE 222000
2.2-STABLE after 2.2.2-RELEASE 222001
2.2.5-RELEASE 225000
2.2-STABLE after 2.2.5-RELEASE 225001
2.2-STABLE after ldconfig -R merge 225002
2.2.6-RELEASE 226000
2.2.7-RELEASE 227000
2.2-STABLE after 2.2.7-RELEASE 227001
2.2-STABLE after semctl(2) change 227002
2.2.8-RELEASE 228000
2.2-STABLE after 2.2.8-RELEASE 228001
3.0-CURRENT before mount(2) change 300000
3.0-CURRENT after mount(2) change 300001
3.0-CURRENT after semctl(2) change 300002
3.0-CURRENT after ioctl arg changes 300003
3.0-CURRENT after ELF conversion 300004
3.0-RELEASE 300005
3.0-CURRENT after 3.0-RELEASE 300006
3.0-STABLE after 3/4 branch 300007
3.1-RELEASE 310000
3.1-STABLE after 3.1-RELEASE 310001
3.1-STABLE after C++ constructor/destructor order change 310002
3.2-RELEASE 320000
3.2-STABLE 320001
3.2-STABLE after binary-incompatible IPFW and socket changes 320002
3.3-RELEASE 330000
3.3-STABLE 330001
3.3-STABLE after adding mkstemp(3) to libc 330002
3.4-RELEASE 340000
3.4-STABLE 340001
3.5-RELEASE 350000
3.5-STABLE 350001
4.0-CURRENT after 3.4 branch 400000
4.0-CURRENT after change in dynamic linker handling 400001
4.0-CURRENT after C++ constructor/destructor order change 400002
4.0-CURRENT after functioning dladdr(3) 400003
4.0-CURRENT after __deregister_frame_info dynamic linker bug fix (also 4.0-CURRENT after EGCS 1.1.2 integration) 400004
4.0-CURRENT after suser(9) API change (also 4.0-CURRENT after newbus) 400005
4.0-CURRENT after cdevsw registration change 400006
4.0-CURRENT after the addition of so_cred for socket level credentials 400007
4.0-CURRENT after the addition of a poll syscall wrapper to libc_r 400008
4.0-CURRENT after the change of the kernel's dev_t type to struct specinfo pointer 400009
4.0-CURRENT after fixing a hole in jail(2) 400010
4.0-CURRENT after the sigset_t datatype change 400011
4.0-CURRENT after the cutover to the GCC 2.95.2 compiler 400012
4.0-CURRENT after adding pluggable linux-mode ioctl handlers 400013
4.0-CURRENT after importing OpenSSL 400014
4.0-CURRENT after the C++ ABI change in GCC 2.95.2 from -fvtable-thunks to -fno-vtable-thunks by default 400015
4.0-CURRENT after importing OpenSSH 400016
4.0-RELEASE 400017
4.0-STABLE after 4.0-RELEASE 400018
4.0-STABLE after the introduction of delayed checksums. 400019
4.0-STABLE after merging libxpg4 code into libc. 400020
4.0-STABLE after upgrading Binutils to 2.10.0, ELF branding changes, and tcsh in the base system. 400021
4.1-RELEASE 410000
4.1-STABLE after 4.1-RELEASE 410001
4.1-STABLE after setproctitle(3) moved from libutil to libc. 410002
4.1.1-RELEASE 411000
4.1.1-STABLE after 4.1.1-RELEASE 411001
4.2-RELEASE 420000
4.2-STABLE after combining libgcc.a and libgcc_r.a, and associated GCC linkage changes. 420001
4.3-RELEASE 430000
4.3-STABLE after wint_t introduction. 430001
4.3-STABLE after PCI powerstate API merge. 430002
4.4-RELEASE 440000
4.4-STABLE after d_thread_t introduction. 440001
4.4-STABLE after mount structure changes (affects filesystem klds). 440002
4.4-STABLE after the userland components of smbfs were imported. 440003
4.5-RELEASE 450000
4.5-STABLE after the usb structure element rename. 450001
4.5-STABLE after the sendmail_enable rc.conf(5) variable was made to take the value NONE. 450004
4.5-STABLE after moving to XFree86 4 by default for package builds. 450005
4.5-STABLE after accept filtering was fixed so that is no longer susceptible to an easy DoS. 450006
4.6-RELEASE 460000
4.6-STABLE sendfile(2) fixed to comply with documentation, not to count any headers sent against the amount of data to be sent from the file. 460001
4.6.2-RELEASE 460002
4.6-STABLE 460100
4.6-STABLE after MFC of `sed -i'. 460101
4.6-STABLE after MFC of many new pkg_install features from the HEAD. 460102
4.7-RELEASE 470000
4.7-STABLE 470100
Start generated __std{in,out,err}p references rather than __sF. This changes std{in,out,err} from a compile time expression to a runtime one. 470101
4.7-STABLE after MFC of mbuf changes to replace m_aux mbufs by m_tag's 470102
4.7-STABLE gets OpenSSL 0.9.7 470103
4.8-RELEASE 480000
4.8-STABLE 480100
4.8-STABLE after realpath(3) has been made thread-safe 480101
4.8-STABLE 3ware API changes to twe. 480102
4.9-RELEASE 490000
4.9-STABLE 490100
4.9-STABLE after e_sid was added to struct kinfo_eproc. 490101
4.9-STABLE after MFC of libmap functionality for rtld. 490102
4.10-RELEASE 491000
4.10-STABLE 491100
4.10-STABLE after MFC of revision 20040629 of the package tools 491101
4.10-STABLE after VM fix dealing with unwiring of fictitious pages 491102
4.11-RELEASE 492000
4.11-STABLE 492100
4.11-STABLE after adding libdata/ldconfig directories to mtree files. 492101
5.0-CURRENT 500000
5.0-CURRENT after adding addition ELF header fields, and changing our ELF binary branding method. 500001
5.0-CURRENT after kld metadata changes. 500002
5.0-CURRENT after buf/bio changes. 500003
5.0-CURRENT after binutils upgrade. 500004
5.0-CURRENT after merging libxpg4 code into libc and after TASKQ interface introduction. 500005
5.0-CURRENT after the addition of AGP interfaces. 500006
5.0-CURRENT after Perl upgrade to 5.6.0 500007
5.0-CURRENT after the update of KAME code to 2000/07 sources. 500008
5.0-CURRENT after ether_ifattach() and ether_ifdetach() changes. 500009
5.0-CURRENT after changing mtree defaults back to original variant, adding -L to follow symlinks. 500010
5.0-CURRENT after kqueue API changed. 500011
5.0-CURRENT after setproctitle(3) moved from libutil to libc. 500012
5.0-CURRENT after the first SMPng commit. 500013
5.0-CURRENT after <sys/select.h> moved to <sys/selinfo.h>. 500014
5.0-CURRENT after combining libgcc.a and libgcc_r.a, and associated GCC linkage changes. 500015
5.0-CURRENT after change allowing libc and libc_r to be linked together, deprecating -pthread option. 500016
5.0-CURRENT after switch from struct ucred to struct xucred to stabilize kernel-exported API for mountd et al. 500017
5.0-CURRENT after addition of CPUTYPE make variable for controlling CPU-specific optimizations. 500018
5.0-CURRENT after moving machine/ioctl_fd.h to sys/fdcio.h 500019
5.0-CURRENT after locale names renaming. 500020
5.0-CURRENT after Bzip2 import. Also signifies removal of S/Key. 500021
5.0-CURRENT after SSE support. 500022
5.0-CURRENT after KSE Milestone 2. 500023
5.0-CURRENT after d_thread_t, and moving UUCP to ports. 500024
5.0-CURRENT after ABI change for descriptor and creds passing on 64 bit platforms. 500025
5.0-CURRENT after moving to XFree86 4 by default for package builds, and after the new libc strnstr() function was added. 500026
5.0-CURRENT after the new libc strcasestr() function was added. 500027
5.0-CURRENT after the userland components of smbfs were imported. 500028
5.0-CURRENT after the new C99 specific-width integer types were added. (Not incremented.)
5.0-CURRENT after a change was made in the return value of sendfile(2). 500029
5.0-CURRENT after the introduction of the type fflags_t, which is the appropriate size for file flags. 500030
5.0-CURRENT after the usb structure element rename. 500031
5.0-CURRENT after the introduction of Perl 5.6.1. 500032
5.0-CURRENT after the sendmail_enable rc.conf(5) variable was made to take the value NONE. 500033
5.0-CURRENT after mtx_init() grew a third argument. 500034
5.0-CURRENT with Gcc 3.1. 500035
5.0-CURRENT without Perl in /usr/src 500036
5.0-CURRENT after the addition of dlfunc(3) 500037
5.0-CURRENT after the types of some struct sockbuf members were changed and the structure was reordered. 500038
5.0-CURRENT after GCC 3.2.1 import. Also after headers stopped using _BSD_FOO_T_ and started using _FOO_T_DECLARED. This value can also be used as a conservative estimate of the start of bzip2(1) package support. 500039
5.0-CURRENT after various changes to disk functions were made in the name of removing dependency on disklabel structure internals. 500040
5.0-CURRENT after the addition of getopt_long(3) to libc. 500041
5.0-CURRENT after Binutils 2.13 upgrade, which included new FreeBSD emulation, vec, and output format. 500042
5.0-CURRENT after adding weak pthread_XXX stubs to libc, obsoleting libXThrStub.so. 5.0-RELEASE. 500043
5.0-CURRENT after branching for RELENG_5_0 500100
<sys/dkstat.h> is empty and should not be included. 500101
5.0-CURRENT after the d_mmap_t interface change. 500102
5.0-CURRENT after taskqueue_swi changed to run without Giant, and taskqueue_swi_giant added to run with Giant. 500103
cdevsw_add() and cdevsw_remove() no longer exists. Appearance of MAJOR_AUTO allocation facility. 500104
5.0-CURRENT after new cdevsw initialization method. 500105
devstat_add_entry() has been replaced by devstat_new_entry() 500106
Devstat interface change; see sys/sys/param.h 1.149 500107
Token-Ring interface changes. 500108
Addition of vm_paddr_t. 500109
5.0-CURRENT after realpath(3) has been made thread-safe 500110
5.0-CURRENT after usbhid(3) has been synced with NetBSD 500111
5.0-CURRENT after new NSS implementation and addition of POSIX.1 getpw*_r, getgr*_r functions 500112
5.0-CURRENT after removal of the old rc system. 500113
5.1-RELEASE. 501000
5.1-CURRENT after branching for RELENG_5_1. 501100
5.1-CURRENT after correcting the semantics of sigtimedwait(2) and sigwaitinfo(2). 501101
5.1-CURRENT after adding the lockfunc and lockfuncarg fields to bus_dma_tag_create(9). 501102
5.1-CURRENT after GCC 3.3.1-pre 20030711 snapshot integration. 501103
5.1-CURRENT 3ware API changes to twe. 501104
5.1-CURRENT dynamically-linked /bin and /sbin support and movement of libraries to /lib. 501105
5.1-CURRENT after adding kernel support for Coda 6.x. 501106
5.1-CURRENT after 16550 UART constants moved from <dev/sio/sioreg.h> to <dev/ic/ns16550.h>. Also when libmap functionality was unconditionally supported by rtld. 501107
5.1-CURRENT after PFIL_HOOKS API update 501108
5.1-CURRENT after adding kiconv(3) 501109
5.1-CURRENT after changing default operations for open and close in cdevsw 501110
5.1-CURRENT after changed layout of cdevsw 501111
5.1-CURRENT after adding kobj multiple inheritance 501112
5.1-CURRENT after the if_xname change in struct ifnet 501113
5.1-CURRENT after changing /bin and /sbin to be dynamically linked 501114
5.2-RELEASE 502000
5.2.1-RELEASE 502010
5.2-CURRENT after branching for RELENG_5_2 502100
5.2-CURRENT after __cxa_atexit/__cxa_finalize functions were added to libc. 502101
5.2-CURRENT after change of default thread library from libc_r to libpthread. 502102
5.2-CURRENT after device driver API megapatch. 502103
5.2-CURRENT after getopt_long_only() addition. 502104
5.2-CURRENT after NULL is made into ((void *)0) for C, creating more warnings. 502105
5.2-CURRENT after pf is linked to the build and install. 502106
5.2-CURRENT after time_t is changed to a 64-bit value on sparc64. 502107
5.2-CURRENT after Intel C/C++ compiler support in some headers and execve(2) changes to be more strictly conforming to POSIX. 502108
5.2-CURRENT after the introduction of the bus_alloc_resource_any API 502109
5.2-CURRENT after the addition of UTF-8 locales 502110
5.2-CURRENT after the removal of the getvfsent(3) API 502111
5.2-CURRENT after the addition of the .warning directive for make. 502112
5.2-CURRENT after ttyioctl() was made mandatory for serial drivers. 502113
5.2-CURRENT after import of the ALTQ framework. 502114
5.2-CURRENT after changing sema_timedwait(9) to return 0 on success and a non-zero error code on failure. 502115
5.2-CURRENT after changing kernel dev_t to be pointer to struct cdev *. 502116
5.2-CURRENT after changing kernel udev_t to dev_t. 502117
5.2-CURRENT after adding support for CLOCK_VIRTUAL and CLOCK_PROF to clock_gettime(2) and clock_getres(2). 502118
5.2-CURRENT after changing network interface cloning overhaul. 502119
5.2-CURRENT after the update of the package tools to revision 20040629. 502120
5.2-CURRENT after marking Bluetooth code as non-i386 specific. 502121
5.2-CURRENT after the introduction of the KDB debugger framework, the conversion of DDB into a backend and the introduction of the GDB backend. 502122
5.2-CURRENT after change to make VFS_ROOT take a struct thread argument as does vflush. Struct kinfo_proc now has a user data pointer. The switch of the default X implementation to xorg was also made at this time. 502123
5.2-CURRENT after the change to separate the way ports rc.d and legacy scripts are started. 502124
5.2-CURRENT after the backout of the previous change. 502125
5.2-CURRENT after the removal of kmem_alloc_pageable() and the import of gcc 3.4.2. 502126
5.2-CURRENT after changing the UMA kernel API to allow ctors/inits to fail. 502127
5.2-CURRENT after the change of the vfs_mount signature as well as global replacement of PRISON_ROOT with SUSER_ALLOWJAIL for the suser(9) API. 502128
5.3-BETA/RC before the pfil API change 503000
5.3-RELEASE 503001
5.3-STABLE after branching for RELENG_5_3 503100
5.3-STABLE after addition of glibc style strftime(3) padding options. 503101
5.3-STABLE after OpenBSD's nc(1) import MFC. 503102
5.4-PRERELEASE after the MFC of the fixes in <src/include/stdbool.h> and <src/sys/i386/include/_types.h> for using the GCC-compatibility of the Intel C/C++ compiler. 503103
5.4-PRERELEASE after the MFC of the change of ifi_epoch from wall clock time to uptime. 503104
5.4-PRERELEASE after the MFC of the fix of EOVERFLOW check in vswprintf(3). 503105
5.4-RELEASE. 504000
5.4-STABLE after branching for RELENG_5_4 504100
5.4-STABLE after increasing the default thread stacksizes 504101
5.4-STABLE after the addition of sha256 504102
5.4-STABLE after the MFC of if_bridge 504103
5.4-STABLE after the MFC of bsdiff and portsnap 504104
5.4-STABLE after MFC of ldconfig_local_dirs change. 504105
5.5-RELEASE. 505000
5.5-STABLE after branching for RELENG_5_5 505100
6.0-CURRENT 600000
6.0-CURRENT after permanently enabling PFIL_HOOKS in the kernel. 600001
6.0-CURRENT after initial addition of ifi_epoch to struct if_data. Backed out after a few days. Do not use this value. 600002
6.0-CURRENT after the re-addition of the ifi_epoch member of struct if_data. 600003
6.0-CURRENT after addition of the struct inpcb argument to the pfil API. 600004
6.0-CURRENT after addition of the "-d DESTDIR" argument to newsyslog. 600005
6.0-CURRENT after addition of glibc style strftime(3) padding options. 600006
6.0-CURRENT after addition of 802.11 framework updates. 600007
6.0-CURRENT after changes to VOP_*VOBJECT() functions and introduction of MNTK_MPSAFE flag for Giantfree filesystems. 600008
6.0-CURRENT after addition of the cpufreq framework and drivers. 600009
6.0-CURRENT after importing OpenBSD's nc(1). 600010
6.0-CURRENT after removing semblance of SVID2 matherr() support. 600011
6.0-CURRENT after increase of default thread stacks' size. 600012
6.0-CURRENT after fixes in <src/include/stdbool.h> and <src/sys/i386/include/_types.h> for using the GCC-compatibility of the Intel C/C++ compiler. 600013
6.0-CURRENT after EOVERFLOW checks in vswprintf(3) fixed. 600014
6.0-CURRENT after changing the struct if_data member, ifi_epoch, from wall clock time to uptime. 600015
6.0-CURRENT after LC_CTYPE disk format changed. 600016
6.0-CURRENT after NLS catalogs disk format changed. 600017
6.0-CURRENT after LC_COLLATE disk format changed. 600018
Installation of acpica includes into /usr/include. 600019
Addition of MSG_NOSIGNAL flag to send(2) API. 600020
Addition of fields to cdevsw 600021
Removed gtar from base system. 600022
LOCAL_CREDS, LOCAL_CONNWAIT socket options added to unix(4). 600023
hwpmc(4) and related tools added to 6.0-CURRENT. 600024
struct icmphdr added to 6.0-CURRENT. 600025
pf updated to 3.7. 600026
Kernel libalias and ng_nat introduced. 600027
POSIX ttyname_r(3) made available through unistd.h and libc. 600028
6.0-CURRENT after libpcap updated to v0.9.1 alpha 096. 600029
6.0-CURRENT after importing NetBSD's if_bridge(4). 600030
6.0-CURRENT after struct ifnet was broken out of the driver softcs. 600031
6.0-CURRENT after the import of libpcap v0.9.1. 600032
6.0-STABLE after bump of all shared library versions that had not been changed since RELENG_5. 600033
6.0-STABLE after credential argument is added to dev_clone vent handler. 6.0-RELEASE. 600034
6.0-STABLE after 6.0-RELEASE 600100
6.0-STABLE after incorporating scripts from the local_startup directories into the base rcorder(8). 600101
6.0-STABLE after updating the ELF types and constants. 600102
6.0-STABLE after MFC of pidfile(3) API. 600103
6.0-STABLE after MFC of ldconfig_local_dirs change. 600104
6.0-STABLE after NLS catalog support of csh(1). 600105
7.0-CURRENT. 700000
7.0-CURRENT after bump of all shared library versions that had not been changed since RELENG_5. 700001
7.0-CURRENT after credential argument is added to dev_clone vent handler. 700002
7.0-CURRENT after memmem(3) is added to libc. 700003
7.0-CURRENT after solisten(9) kernel arguments are modified to accept a backlog parameter. 700004
7.0-CURRENT after IFP2ENADDR() was changed to return a pointer to IF_LLADDR(). 700005
7.0-CURRENT after addition of if_addr member to struct ifnet and IFP2ENADDR() removal. 700006
7.0-CURRENT after incorporating scripts from the local_startup directories into the base rcorder(8). 700007
7.0-CURRENT after removal of MNT_NODEV mount option. 700008
7.0-CURRENT after ELF-64 type changes and symbol versioning. 700009
7.0-CURRENT after addition of hostb and vgapci drivers, addition of pci_find_extcap(), and changing the AGP drivers to no longer map the aperture. 700010
7.0-CURRENT after tv_sec was made time_t on all platforms but Alpha. 700011
7.0-CURRENT after ldconfig_local_dirs change. 700012
7.0-CURRENT after changes to /etc/rc.d/abi to support /compat/linux/etc/ld.so.cache being a symlink in a readonly filesystem. 700013
7.0-CURRENT after pts import. 700014
7.0-CURRENT after the introduction of version 2 of hwpmc(4)'s ABI. 700015
7.0-CURRENT after addition of fcloseall(3) to libc. 700016
7.0-CURRENT after removal of ip6fw. 700017

Note: Note that 2.2-STABLE sometimes identifies itself as ``2.2.5-STABLE'' after the 2.2.5-RELEASE. The pattern used to be year followed by the month, but we decided to change it to a more straightforward major/minor system starting from 2.2. This is because the parallel development on several branches made it infeasible to classify the releases simply by their real release dates. If you are making a port now, you do not have to worry about old -CURRENTs; they are listed here just for your reference.

For questions about the FreeBSD ports system, e-mail <[email protected]>.
For questions about this documentation, e-mail <[email protected]>.