<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="/rss.xsl.xml"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
    <title>Changes in Makefile.inc</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>3e7224df - Implement ptsname_r.</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#3e7224df</link>
        <description>Implement ptsname_r.MFC after:	2 weeksPR:		250062Reviewed by:	jilles, 0mp, Ray &lt;i maskray me&gt;Differential Revision:	https://reviews.freebsd.org/D26647

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Sat, 17 Oct 2020 04:14:38 +0000</pubDate>
        <dc:creator>Xin LI &lt;delphij@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>0d2fabfc - Add qsort_s(3).  Apart from the constraints, it also makes it easier</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#0d2fabfc</link>
        <description>Add qsort_s(3).  Apart from the constraints, it also makes it easierto port software written for Linux variant of qsort_r(3).Reviewed by:	kib, arichardsonMFC after:	2 weeksRelnotes:	yesSponsored by:	DARPADifferential Revision:	https://reviews.freebsd.org/D23174

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Mon, 20 Jan 2020 11:40:07 +0000</pubDate>
        <dc:creator>Edward Tomasz Napierala &lt;trasz@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>c62ff280 - Deprecate sranddev(3) API</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#c62ff280</link>
        <description>Deprecate sranddev(3) APIIt serves no useful purpose and wasn&apos;t as popular as its equally meritlesscousin, srandomdev(3).Setting aside the problems with rand(3) in general, the problem with thisinterface is that the seed isn&apos;t shared with the caller (other than byattacking the output of the generator, which is trivial, but not a hallmark ofpleasant API design).  The (arguable) utility of rand(3) or random(3) is as asemi-fast simulation generator which produces consistent results from a givenseed.  These are mutually at odd.  Furthermore, sometimes people got themistaken impression that a high quality random seed meant a weak generator likerand(3) or random(3) could be used for things like cryptographic keygeneration.  This is absolutely not so.The API was never part of a standard and was not widely used in tree.  Existingin-tree uses have all been removed.Possible replacement in out of tree codebases:	char buf[3];	time_t t;	time(t);	strftime(buf, sizeof(buf), &quot;%S&quot;, gmtime(&amp;t));	srand(atoi(buf));Relnotes:	yes

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Sat, 14 Dec 2019 08:28:10 +0000</pubDate>
        <dc:creator>Conrad Meyer &lt;cem@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>540cc17f - Provide set_constraint_handler_s(3) man page.</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#540cc17f</link>
        <description>Provide set_constraint_handler_s(3) man page.Mention abort_handler_s(3) and ignore_handler_s(3), providecross-reference from memset(3).Submitted by:	Yuri Pankov &lt;yuripv@yuripv.net&gt;MFC after:	3 daysDifferential revision:	https://reviews.freebsd.org/D16797

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Sun, 19 Aug 2018 14:39:57 +0000</pubDate>
        <dc:creator>Konstantin Belousov &lt;kib@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>d3ee4763 - Use tab for indent.</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#d3ee4763</link>
        <description>Use tab for indent.Submitted by:	Yuri Pankov &lt;yuripv@yuripv.net&gt;MFC after:	3 days

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Sun, 19 Aug 2018 14:22:45 +0000</pubDate>
        <dc:creator>Konstantin Belousov &lt;kib@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>5fe6063d - Move strtold wrapper from strtol.c to its own strtold.c.  This code</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#5fe6063d</link>
        <description>Move strtold wrapper from strtol.c to its own strtold.c.  This codewas written by theraven@ (David Chisnall) entirely, there&apos;s nooriginal Berkeley code left here so just copy his copyright over.

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Wed, 31 Jan 2018 03:05:14 +0000</pubDate>
        <dc:creator>Warner Losh &lt;imp@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>9851b340 - Implement the memset_s(3) function as specified by the C11 ISO/IEC</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#9851b340</link>
        <description>Implement the memset_s(3) function as specified by the C11 ISO/IEC9899:2011 Appendix K 3.7.4.1.Other needed supporting types, defines and constraint_handlerinfrastructure is added as specified in the C11 spec.Submitted by:	Tom Rix &lt;trix@juniper.net&gt;Sponsored by:	Juniper NetworksDiscussed with:	edMFC after:	3 weeksDifferential revision:	https://reviews.freebsd.org/D9903Differential revision:	https://reviews.freebsd.org/D10161

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Thu, 30 Mar 2017 04:57:26 +0000</pubDate>
        <dc:creator>Konstantin Belousov &lt;kib@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>b7c7684a - Export __cxa_thread_atexit_impl as an alias for __cxa_thread_atexit.</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#b7c7684a</link>
        <description>Export __cxa_thread_atexit_impl as an alias for __cxa_thread_atexit.libstdc++ before gcc r244057 expected that libc provided__cxa_thread_atexit_impl, and libstdc++ implemented__cxa_thread_atexit, by forwarding the calls to _impl.  Mentioned gccrevision checks for __cxa_thread_atexit in libc and does not providethe symbol from libstdc++ if found.This change helps older gcc, in particular, all released versionswhich implement thread_local, by consolidating the implementation intolibc.  For that versions, if configured with the current libc, the__cxa_thread_atexit is exported from libstdc++ as a trivial wrapperaround libc::__cxa_thread_atexit_impl.The __cxa_thread_atexit implementation is put into separate sourcefile to allow for static linking with older libstdc++.a.gcc bugzilla:	https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78968Reported by:	Hannes Hauswedell &lt;h2+fbsdports@fsfe.org&gt;PR:	215709Sponsored by:	The FreeBSD FoundationMFC after:	2 weeks

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Sat, 07 Jan 2017 16:05:19 +0000</pubDate>
        <dc:creator>Konstantin Belousov &lt;kib@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>cb1cb6a2 - When MAKEOBJDIRPREFIX points to a case-insensitive file system, the</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#cb1cb6a2</link>
        <description>When MAKEOBJDIRPREFIX points to a case-insensitive file system, thebuild can break when different source files create the same objectfiles (case-insensitivity speaking).  This is the case for _Exit.cand _exit.s.  Compile _Exit.c as C99_Exit.cReviewed by:	sjg@MFC after:	completionSponsored by:	Bracket ComputingDifferential Revision:	https://reviews.freebsd.org/D7893

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Fri, 16 Sep 2016 03:04:48 +0000</pubDate>
        <dc:creator>Marcel Moolenaar &lt;marcel@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>b585cd3e - Add __cxa_thread_atexit(3) API implementation.</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#b585cd3e</link>
        <description>Add __cxa_thread_atexit(3) API implementation.This is the backing feature to implement C++11 thread storage durationspecified by the thread_local keyword.  A destructor for giventhread-local object is registered to be executed at the threadtermination time using __cxa_thread_atexit().  Libc calls the__cxa_thread_calls_dtors() during exit(3), before finalizers andatexit functions, and libthr calls the function at the threadtermination time, after the stack unwinding and thread-specific keydestruction.There are several uncertainties in the API which lacks a formalspecification.  Among them:- is it allowed to register destructors during destructing;	we allow, but limiting the nesting level.  If too many iterations	detected, a diagnostic is issued to stderr and thread forcibly	terminates for now.- how to handle destructors which belong to an unloading dso;	for now, we ignore destructor calls for such entries, and	issue a diagnostic.  Linux does prevent dso unload until all	threads with destructors from the dso terminated.It is supposed that the diagnostics allow to detect real-worldapplications relying on the above details and possibly adjustour implementation.  Right now the choices were to provide the slimAPI (but that rarely stands the practice test).Tests are added to check generic functionality and to specify some ofthe above implementation choices.Submitted by:	Mahdi Mokhtari &lt;mokhi64_gmail.com&gt;Reviewed by:	theravenDiscussed with:	dim (detection of -std=c++11 supoort for tests)Sponsored by:	The FreeBSD Foundation (my involvement)MFC after:	2 weeksDifferential revisions:	https://reviews.freebsd.org/D7224,    https://reviews.freebsd.org/D7427

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Sat, 06 Aug 2016 13:32:40 +0000</pubDate>
        <dc:creator>Konstantin Belousov &lt;kib@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>2747eff1 - Replace implementation of hsearch() by one that scales.</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#2747eff1</link>
        <description>Replace implementation of hsearch() by one that scales.Traditionally the hcreate() function creates a hash table that useschaining, using a fixed user-provided size. The problem with thisapproach is that this often either wastes memory (table too big) oryields bad performance (table too small). For applications it may notalways be easy to estimate the right hash table size. A fixed numberonly increases performance compared to a linked list by a constantfactor.This problem can be solved easily by dynamically resizing the hashtable. If the size of the hash table is at least doubled, this has nonegative on the running time complexity. If a dynamically sized hashtable is used, we can also switch to using open addressing instead ofchaining, which has the advantage of just using a single allocation forthe entire table, instead of allocating many small objects.Finally, a problem with the existing implementation is that itsdeterministic algorithm for hashing makes it possible to come up withfixed patterns to trigger an excessive number of collisions. We caneasily solve this by using FNV-1a as a hashing algorithm in combinationwith a randomly generated offset basis.Measurements have shown that this implementation is about 20-25% fasterthan the existing implementation (even if the existing implementation isgiven an excessive number of buckets). Though it allocates more memorythrough malloc() than the old implementation (between 4-8 pointers perused entry instead of 3), process memory use is similar to the oldimplementation as if the estimated size was underestimated by a factor10. This is due to the fact that malloc() needs to perform lessbookkeeping.Reviewed by:	jilles, pfgObtained from:	https://github.com/NuxiNL/cloudlibcDifferential Revision:	https://reviews.freebsd.org/D4644

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Sun, 27 Dec 2015 07:50:11 +0000</pubDate>
        <dc:creator>Ed Schouten &lt;ed@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>450dfafb - Import reallocarray(3) from OpenBSD</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#450dfafb</link>
        <description>Import reallocarray(3) from OpenBSDAdd a manpage for it, assign the copyright to the OpenBSD project on it since itis mostly copy/paste from OpenBSD manpage.style(9) fixesDifferential Revision:	https://reviews.freebsd.org/D2420Reviewed by:	kib

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Fri, 01 May 2015 18:32:16 +0000</pubDate>
        <dc:creator>Baptiste Daroussin &lt;bapt@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>9823a90c - Add re-entrant versions of the hash functions based on the GNU api.</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#9823a90c</link>
        <description>Add re-entrant versions of the hash functions based on the GNU api.While testing this I found a conformance issue in hdestroy()that will be fixed in a subsequent commit.Obtained from:	NetBSD (hcreate.c, CVS Rev. 1.7)

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Mon, 21 Jul 2014 15:22:48 +0000</pubDate>
        <dc:creator>Pedro F. Giffuni &lt;pfg@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>46cdc140 - Add support for some block functions that come from OS X.  These are</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#46cdc140</link>
        <description>Add support for some block functions that come from OS X.  These areintended to build with any C compiler.Reviewed by:	pfgMFC after:	3 weeks

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Wed, 02 Apr 2014 16:07:48 +0000</pubDate>
        <dc:creator>David Chisnall &lt;theraven@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>8876613d - Replace use of ${.CURDIR} by ${LIBC_SRCTOP} and define ${LIBC_SRCTOP}</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#8876613d</link>
        <description>Replace use of ${.CURDIR} by ${LIBC_SRCTOP} and define ${LIBC_SRCTOP}if not already defined. This allows building libc from outside oflib/libc using a reach-over makefile.A typical use-case is to build a standard ILP32 version and a COMPAT32version in a single iteration by building the COMPAT32 version using areach-over makefile.Obtained from:	Juniper Networks, Inc.

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Tue, 04 Mar 2014 02:19:39 +0000</pubDate>
        <dc:creator>Marcel Moolenaar &lt;marcel@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>3f19323a - Add more locale-specific functions to the relevant man pages and</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#3f19323a</link>
        <description>Add more locale-specific functions to the relevant man pages andMakefiles:- libc/stdtime/strftime.3- libc/stdtime/strptime.3- libc/stdlib/strfmon.3Reviewed by:	theravenApproved by:	gabor (mentor)

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Mon, 25 Jun 2012 21:51:40 +0000</pubDate>
        <dc:creator>Isabell Long &lt;issyl0@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>a4bd5210 - Import jemalloc 9ef7f5dc34ff02f50d401e41c8d9a4a928e7c2aa (dev branch,</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#a4bd5210</link>
        <description>Import jemalloc 9ef7f5dc34ff02f50d401e41c8d9a4a928e7c2aa (dev branch,prior to 3.0.0 release) as contrib/jemalloc, and integrate it into libc.The code being imported by this commit diverged fromlib/libc/stdlib/malloc.c in March 2010, which means that a portion ofthe jemalloc 1.0.0 ChangeLog entries are relevant, as are the entriesfor all subsequent releases.

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Tue, 17 Apr 2012 07:22:14 +0000</pubDate>
        <dc:creator>Jason Evans &lt;jasone@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>9e16bab4 - Add aligned_alloc(3).</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#9e16bab4</link>
        <description>Add aligned_alloc(3).The C11 folks reinvented the wheel by introducing an aligned version ofmalloc(3) called aligned_alloc(3), instead of posix_memalign(3). Insteadof returning the allocation by reference, it returns the address, justlike malloc(3).Reviewed by:	jasone@

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Mon, 09 Jan 2012 06:36:28 +0000</pubDate>
        <dc:creator>Ed Schouten &lt;ed@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>0a31efe0 - Implement quick_exit() / at_quick_exit() from C++11 / C1x.  Also add a</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#0a31efe0</link>
        <description>Implement quick_exit() / at_quick_exit() from C++11 / C1x.  Also add a__noreturn macro and modify the other exiting functions to use it.The __noreturn macro, unlike __dead2, must be used BEFORE the function.This is in line with the C and C++ specifications that place _Noreturn (c1x)and [[noreturn]] (C++11) in front of the functions.  As with __dead2, thismacro falls back to using the GCC attribute.Unfortunately, clang currently sets the same value for the C version macroin C99 and C1x modes, so these functions are hidden by default.  At somepoint before 10.0, I need to go through the headers and clean up the C1x /C++11 visibility.Reviewed by:	brooks (mentor)

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Wed, 07 Dec 2011 15:25:48 +0000</pubDate>
        <dc:creator>David Chisnall &lt;theraven@FreeBSD.org&gt;</dc:creator>
    </item>
<item>
        <title>8bd9dc08 - Fix building of 32-bit compat libraries on amd64 with clang, and using</title>
        <link>http://172.16.0.5:8080/history/freebsd-13.1/lib/libc/stdlib/Makefile.inc#8bd9dc08</link>
        <description>Fix building of 32-bit compat libraries on amd64 with clang, and using-g, by reverting r219139.  The LLVM PR referenced in that revision wasfixed in the mean time, and we imported a clang snapshot soonafterwards, so the temporary workaround of disabling clang&apos;s integratedassembler is no longer needed.In this particular case, using e.g. DEBUG_FLAGS=-g causes clang tooutput certain directives into assembly that our version of GNU aschokes on.Reported by:	dougbApproved by:	re (kib)

            List of files:
            /freebsd-13.1/lib/libc/stdlib/Makefile.inc</description>
        <pubDate>Mon, 18 Jul 2011 20:07:29 +0000</pubDate>
        <dc:creator>Dimitry Andric &lt;dim@FreeBSD.org&gt;</dc:creator>
    </item>
</channel>
</rss>
