<?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.userprogs</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>5f56cb03 - kbuild: support &apos;userldlibs&apos; syntax</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/Makefile.userprogs#5f56cb03</link>
        <description>kbuild: support &apos;userldlibs&apos; syntaxThis syntax is useful to specify libraries linked to all userspaceprograms in the Makefile.Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;

            List of files:
            /linux-6.15/scripts/Makefile.userprogs</description>
        <pubDate>Tue, 31 Oct 2023 18:11:57 +0000</pubDate>
        <dc:creator>Masahiro Yamada &lt;masahiroy@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>7f3a59db - kbuild: add infrastructure to build userspace programs</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/scripts/Makefile.userprogs#7f3a59db</link>
        <description>kbuild: add infrastructure to build userspace programsKbuild supports the infrastructure to build host programs, but therewas no support to build userspace programs for the target architecture(i.e. the same architecture as the kernel).Sam Ravnborg worked on this in 2014 (https://lkml.org/lkml/2014/7/13/154),but it was not merged. One problem at that time was, there was no good wayto know whether $(CC) can link standalone programs. In fact, pre-builtkernel.org toolchains [1] are often used for building the kernel, but theydo not provide libc.Now, we can handle this cleanly because the compiler capability isevaluated at the Kconfig time. If $(CC) cannot link standalone programs,the relevant options are hidden by &apos;depends on CC_CAN_LINK&apos;.The implementation just mimics scripts/Makefile.hostThe userspace programs are compiled with the same flags as the hostprograms. In addition, it uses -m32 or -m64 if it is found in$(KBUILD_CFLAGS).This new syntax has two usecases.- Sample programs  Several userspace programs under samples/ include UAPI headers  installed in usr/include. Most of them were previously built for  the host architecture just to use the &apos;hostprogs&apos; syntax.  However, &apos;make headers&apos; always works for the target architecture.  This caused the arch mismatch in cross-compiling. To fix this  distortion, sample code should be built for the target architecture.- Bpfilter  net/bpfilter/Makefile compiles bpfilter_umh as the user mode helper,  and embeds it into the kernel. Currently, it overrides HOSTCC with  CC to use the &apos;hostprogs&apos; syntax. This hack should go away.[1]: https://mirrors.edge.kernel.org/pub/tools/crosstool/Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;Acked-by: Sam Ravnborg &lt;sam@ravnborg.org&gt;

            List of files:
            /linux-6.15/scripts/Makefile.userprogs</description>
        <pubDate>Wed, 29 Apr 2020 03:45:14 +0000</pubDate>
        <dc:creator>Masahiro Yamada &lt;masahiroy@kernel.org&gt;</dc:creator>
    </item>
</channel>
</rss>
