<?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.postlink</title>
    <description></description>
    <language>en</language>
    <copyright>Copyright 2015</copyright>
    <generator>Java</generator><item>
        <title>ac4f0678 - kbuild: Create intermediate vmlinux build with relocations preserved</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/mips/Makefile.postlink#ac4f0678</link>
        <description>kbuild: Create intermediate vmlinux build with relocations preservedThe imperative paradigm used to build vmlinux, extract some info from itor perform some checks on it, and subsequently modify it again goesagainst the declarative paradigm that is usually employed for definingmake rules.In particular, the Makefile.postlink files that consume their input viaan output rule result in some dodgy logic in the decompressor makefilesfor RISC-V and x86, given that the vmlinux.relocs input file needed togenerate the arch-specific relocation tables may not exist or be out ofdate, but cannot be constructed using the ordinary Make dependency basedrules, because the info needs to be extracted while vmlinux is in itsephemeral, non-stripped form.So instead, for architectures that require the static relocations thatare emitted into vmlinux when passing --emit-relocs to the linker, andare subsequently stripped out again, introduce an intermediate vmlinuxtarget called vmlinux.unstripped, and organize the reset of the buildlogic accordingly:- vmlinux.unstripped is created only once, and not updated again- build rules under arch/*/boot can depend on vmlinux.unstripped without  running the risk of the data disappearing or being out of date- the final vmlinux generated by the build is not bloated with static  relocations that are never needed again after the build completes.Signed-off-by: Ard Biesheuvel &lt;ardb@kernel.org&gt;Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;

            List of files:
            /linux-6.15/arch/mips/Makefile.postlink</description>
        <pubDate>Tue, 11 Mar 2025 11:06:20 +0000</pubDate>
        <dc:creator>Ard Biesheuvel &lt;ardb@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>7f6d8f7e - kbuild: remove ARCH_POSTLINK from module builds</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/mips/Makefile.postlink#7f6d8f7e</link>
        <description>kbuild: remove ARCH_POSTLINK from module buildsThe &apos;%.ko&apos; rule in arch/*/Makefile.postlink does nothing but call the&apos;true&apos; command.Remove the unneeded code.Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;Reviewed-by: Nicolas Schier &lt;n.schier@avm.de&gt;

            List of files:
            /linux-6.15/arch/mips/Makefile.postlink</description>
        <pubDate>Wed, 18 Oct 2023 15:19:47 +0000</pubDate>
        <dc:creator>Masahiro Yamada &lt;masahiroy@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>67d7c302 - kbuild: remove --include-dir MAKEFLAG from top Makefile</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/mips/Makefile.postlink#67d7c302</link>
        <description>kbuild: remove --include-dir MAKEFLAG from top MakefileI added $(srctree)/ to some included Makefiles in the following commits: - 3204a7fb98a3 (&quot;kbuild: prefix $(srctree)/ to some included Makefiles&quot;) - d82856395505 (&quot;kbuild: do not require sub-make for separate output tree builds&quot;)They were a preparation for removing --include-dir flag.I have never thought --include-dir useful. Rather, it _is_ harmful.For example, run the following commands:  $ make -s ARCH=x86 mrproper defconfig  $ make ARCH=arm O=foo dtbs  make[1]: Entering directory &apos;/tmp/linux/foo&apos;    HOSTCC  scripts/basic/fixdep  Error: kernelrelease not valid - run &apos;make prepare&apos; to update it    UPD     include/config/kernel.release  make[1]: Leaving directory &apos;/tmp/linux/foo&apos;The first command configures the source tree for x86. The next commandtries to build ARM device trees in the separate foo/ directory - thismust stop because the directory foo/ has not been configured yet.However, due to --include-dir=$(abs_srctree), the top Makefile includesthe wrong include/config/auto.conf from the source tree and continuesbuilding. Kbuild traverses the directory tree, but of course it doesnot work correctly. The Error message is also pointless - &apos;make prepare&apos;does not help at all for fixing the issue.This commit fixes more arch Makefile, and finally removes --include-dirfrom the top Makefile.There are more breakages under drivers/, but I do not volunteer to fixthem all. I just moved --include-dir to drivers/Makefile.With this commit, the second command will stop with a sensible message.  $ make -s ARCH=x86 mrproper defconfig  $ make ARCH=arm O=foo dtbs  make[1]: Entering directory &apos;/tmp/linux/foo&apos;    SYNC    include/config/auto.conf.cmd  ***  *** The source tree is not clean, please run &apos;make ARCH=arm mrproper&apos;  *** in /tmp/linux  ***  make[2]: *** [../Makefile:646: outputmakefile] Error 1  /tmp/linux/Makefile:770: include/config/auto.conf.cmd: No such file or directory  make[1]: *** [/tmp/linux/Makefile:793: include/config/auto.conf.cmd] Error 2  make[1]: Leaving directory &apos;/tmp/linux/foo&apos;  make: *** [Makefile:226: __sub-make] Error 2Signed-off-by: Masahiro Yamada &lt;masahiroy@kernel.org&gt;

            List of files:
            /linux-6.15/arch/mips/Makefile.postlink</description>
        <pubDate>Sat, 28 Jan 2023 09:24:23 +0000</pubDate>
        <dc:creator>Masahiro Yamada &lt;masahiroy@kernel.org&gt;</dc:creator>
    </item>
<item>
        <title>a5399880 - MIPS: fix indentation of the &apos;RELOCS&apos; message</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/mips/Makefile.postlink#a5399880</link>
        <description>MIPS: fix indentation of the &apos;RELOCS&apos; messagequiet_cmd_relocs lacks a whitespace which results in:  LD      vmlinux  SORTEX  vmlinux  SYSMAP  System.map  RELOCS vmlinux  Building modules, stage 2.  MODPOST 64 modulesAfter this patch:  LD      vmlinux  SORTEX  vmlinux  SYSMAP  System.map  RELOCS  vmlinux  Building modules, stage 2.  MODPOST 64 modulesTypo is present in kernel tree since the introduction of relocatablekernel support in commit e818fac595ab (&quot;MIPS: Generate relocation tablewhen CONFIG_RELOCATABLE&quot;), but the relocation scripts were moved toMakefile.postlink later with commit 44079d3509ae (&quot;MIPS: UseMakefile.postlink to insert relocations into vmlinux&quot;).Fixes: 44079d3509ae (&quot;MIPS: Use Makefile.postlink to insert relocations into vmlinux&quot;)Cc: &lt;stable@vger.kernel.org&gt; # v4.11+Signed-off-by: Alexander Lobakin &lt;alobakin@dlink.ru&gt;[paulburton@kernel.org: Fixup commit references in commit message.]Signed-off-by: Paul Burton &lt;paulburton@kernel.org&gt;Cc: Ralf Baechle &lt;ralf@linux-mips.org&gt;Cc: James Hogan &lt;jhogan@kernel.org&gt;Cc: Masahiro Yamada &lt;yamada.masahiro@socionext.com&gt;Cc: Rob Herring &lt;robh@kernel.org&gt;Cc: linux-mips@vger.kernel.orgCc: linux-kernel@vger.kernel.org

            List of files:
            /linux-6.15/arch/mips/Makefile.postlink</description>
        <pubDate>Fri, 17 Jan 2020 14:02:07 +0000</pubDate>
        <dc:creator>Alexander Lobakin &lt;alobakin@dlink.ru&gt;</dc:creator>
    </item>
<item>
        <title>e4acfbc1 - MIPS: Check Loongson3 LL/SC errata workaround correctness</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/mips/Makefile.postlink#e4acfbc1</link>
        <description>MIPS: Check Loongson3 LL/SC errata workaround correctnessWhen Loongson3 LL/SC errata workarounds are enabled (ie.CONFIG_CPU_LOONGSON3_WORKAROUNDS=y) run a tool to scan through thecompiled kernel &amp; ensure that the workaround is applied correctly. Thatis, ensure that:  - Every LL or LLD instruction is preceded by a sync instruction.  - Any branches from within an LL/SC loop to outside of that loop    target a sync instruction.Reasoning for these conditions can be found by reading the comment abovethe definition of __SYNC_loongson3_war in arch/mips/include/asm/sync.h.This tool will help ensure that we don&apos;t inadvertently introduce codepaths that miss the required workarounds.Signed-off-by: Paul Burton &lt;paul.burton@mips.com&gt;Cc: linux-mips@vger.kernel.orgCc: Huacai Chen &lt;chenhc@lemote.com&gt;Cc: Jiaxun Yang &lt;jiaxun.yang@flygoat.com&gt;Cc: linux-kernel@vger.kernel.org

            List of files:
            /linux-6.15/arch/mips/Makefile.postlink</description>
        <pubDate>Tue, 01 Oct 2019 21:53:44 +0000</pubDate>
        <dc:creator>Paul Burton &lt;paul.burton@mips.com&gt;</dc:creator>
    </item>
<item>
        <title>b2441318 - License cleanup: add SPDX GPL-2.0 license identifier to files with no license</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/mips/Makefile.postlink#b2441318</link>
        <description>License cleanup: add SPDX GPL-2.0 license identifier to files with no licenseMany source files in the tree are missing licensing information, whichmakes it harder for compliance tools to determine the correct license.By default all files without license information are under the defaultlicense of the kernel, which is GPL version 2.Update the files which contain no license information with the &apos;GPL-2.0&apos;SPDX license identifier.  The SPDX identifier is a legally bindingshorthand, which can be used instead of the full boiler plate text.This patch is based on work done by Thomas Gleixner and Kate Stewart andPhilippe Ombredanne.How this work was done:Patches were generated and checked against linux-4.14-rc6 for a subset ofthe use cases: - file had no licensing information it it. - file was a */uapi/* one with no licensing information in it, - file was a */uapi/* one with existing licensing information,Further patches will be generated in subsequent months to fix up caseswhere non-standard license headers were used, and references to licensehad to be inferred by heuristics based on keywords.The analysis to determine which SPDX License Identifier to be applied toa file was done in a spreadsheet of side by side results from of theoutput of two independent scanners (ScanCode &amp; Windriver) producing SPDXtag:value files created by Philippe Ombredanne.  Philippe prepared thebase worksheet, and did an initial spot review of a few 1000 files.The 4.13 kernel was the starting point of the analysis with 60,537 filesassessed.  Kate Stewart did a file by file comparison of the scannerresults in the spreadsheet to determine which SPDX license identifier(s)to be applied to the file. She confirmed any determination that was notimmediately clear with lawyers working with the Linux Foundation.Criteria used to select files for SPDX license identifier tagging was: - Files considered eligible had to be source code files. - Make and config files were included as candidates if they contained &gt;5   lines of source - File already had some variant of a license header in it (even if &lt;5   lines).All documentation files were explicitly excluded.The following heuristics were used to determine which SPDX licenseidentifiers to apply. - when both scanners couldn&apos;t find any license traces, file was   considered to have no license information in it, and the top level   COPYING file license applied.   For non */uapi/* files that summary was:   SPDX license identifier                            # files   ---------------------------------------------------|-------   GPL-2.0                                              11139   and resulted in the first patch in this series.   If that file was a */uapi/* path one, it was &quot;GPL-2.0 WITH   Linux-syscall-note&quot; otherwise it was &quot;GPL-2.0&quot;.  Results of that was:   SPDX license identifier                            # files   ---------------------------------------------------|-------   GPL-2.0 WITH Linux-syscall-note                        930   and resulted in the second patch in this series. - if a file had some form of licensing information in it, and was one   of the */uapi/* ones, it was denoted with the Linux-syscall-note if   any GPL family license was found in the file or had no licensing in   it (per prior point).  Results summary:   SPDX license identifier                            # files   ---------------------------------------------------|------   GPL-2.0 WITH Linux-syscall-note                       270   GPL-2.0+ WITH Linux-syscall-note                      169   ((GPL-2.0 WITH Linux-syscall-note) OR BSD-2-Clause)    21   ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)    17   LGPL-2.1+ WITH Linux-syscall-note                      15   GPL-1.0+ WITH Linux-syscall-note                       14   ((GPL-2.0+ WITH Linux-syscall-note) OR BSD-3-Clause)    5   LGPL-2.0+ WITH Linux-syscall-note                       4   LGPL-2.1 WITH Linux-syscall-note                        3   ((GPL-2.0 WITH Linux-syscall-note) OR MIT)              3   ((GPL-2.0 WITH Linux-syscall-note) AND MIT)             1   and that resulted in the third patch in this series. - when the two scanners agreed on the detected license(s), that became   the concluded license(s). - when there was disagreement between the two scanners (one detected a   license but the other didn&apos;t, or they both detected different   licenses) a manual inspection of the file occurred. - In most cases a manual inspection of the information in the file   resulted in a clear resolution of the license that should apply (and   which scanner probably needed to revisit its heuristics). - When it was not immediately clear, the license identifier was   confirmed with lawyers working with the Linux Foundation. - If there was any question as to the appropriate license identifier,   the file was flagged for further research and to be revisited later   in time.In total, over 70 hours of logged manual review was done on thespreadsheet to determine the SPDX license identifiers to apply to thesource files by Kate, Philippe, Thomas and, in some cases, confirmationby lawyers working with the Linux Foundation.Kate also obtained a third independent scan of the 4.13 code base fromFOSSology, and compared selected files where the other two scannersdisagreed against that SPDX file, to see if there was new insights.  TheWindriver scanner is based on an older version of FOSSology in part, sothey are related.Thomas did random spot checks in about 500 files from the spreadsheetsfor the uapi headers and agreed with SPDX license identifier in thefiles he inspected. For the non-uapi files Thomas did random spot checksin about 15000 files.In initial set of patches against 4.14-rc6, 3 files were found to havecopy/paste license identifier errors, and have been fixed to reflect thecorrect identifier.Additionally Philippe spent 10 hours this week doing a detailed manualinspection and review of the 12,461 patched files from the initial patchversion early this week with: - a full scancode scan run, collecting the matched texts, detected   license ids and scores - reviewing anything where there was a license detected (about 500+   files) to ensure that the applied SPDX license was correct - reviewing anything where there was no detection but the patch license   was not GPL-2.0 WITH Linux-syscall-note to ensure that the applied   SPDX license was correctThis produced a worksheet with 20 files needing minor correction.  Thisworksheet was then exported into 3 different .csv files for thedifferent types of files to be modified.These .csv files were then reviewed by Greg.  Thomas wrote a script toparse the csv files and add the proper SPDX tag to the file, in theformat that the file expected.  This script was further refined by Gregbased on the output to detect more types of files automatically and todistinguish between header and source .c files (which need differentcomment types.)  Finally Greg ran the script using the .csv files togenerate the patches.Reviewed-by: Kate Stewart &lt;kstewart@linuxfoundation.org&gt;Reviewed-by: Philippe Ombredanne &lt;pombredanne@nexb.com&gt;Reviewed-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

            List of files:
            /linux-6.15/arch/mips/Makefile.postlink</description>
        <pubDate>Wed, 01 Nov 2017 14:07:57 +0000</pubDate>
        <dc:creator>Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;</dc:creator>
    </item>
<item>
        <title>6e5b95cd - MIPS: Fix distclean with Makefile.postlink</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/mips/Makefile.postlink#6e5b95cd</link>
        <description>MIPS: Fix distclean with Makefile.postlinkThe postlink Makefile must include include/config/auto.conf to get thekernel configuration variables. But in a clean kernel directory thisfile does not exist, causing make to bail with the error:arch/mips/Makefile.postlink:10: include/config/auto.conf: No such file or directorymake[1]: *** No rule to make target &apos;include/config/auto.conf&apos;.  Stop.Makefile:1290: recipe for target &apos;vmlinuxclean&apos; failedFix this by using &quot;-include&quot; to not cause a Make error when the filedoes not exist.Fixes: 44079d3509ae (&quot;MIPS: Use Makefile.postlink to insert relocations into vmlinux&quot;)Signed-off-by: Matt Redfearn &lt;matt.redfearn@imgtec.com&gt;Cc: Ralf Baechle &lt;ralf@linux-mips.org&gt;Cc: linux-mips@linux-mips.orgPatchwork: https://patchwork.linux-mips.org/patch/15136/Signed-off-by: James Hogan &lt;james.hogan@imgtec.com&gt;

            List of files:
            /linux-6.15/arch/mips/Makefile.postlink</description>
        <pubDate>Mon, 30 Jan 2017 09:58:34 +0000</pubDate>
        <dc:creator>Matt Redfearn &lt;matt.redfearn@imgtec.com&gt;</dc:creator>
    </item>
<item>
        <title>44079d35 - MIPS: Use Makefile.postlink to insert relocations into vmlinux</title>
        <link>http://172.16.0.5:8080/history/linux-6.15/arch/mips/Makefile.postlink#44079d35</link>
        <description>MIPS: Use Makefile.postlink to insert relocations into vmlinuxWhen relocatable support for MIPS was merged, there was no support foran architecture to add a postlink step for vmlinux. This meant that onlyinvoking a target within the boot directory, such as uImage, caused therelocations to be inserted into vmlinux. Building just the vmlinuxtarget would result in a relocatable kernel with no relocationinformation present.Commit fbe6e37dab97 (&quot;kbuild: add arch specific post-link Makefile&quot;)recified this situation, so MIPS can now define a postlink step to addrelocation information into vmlinux, and remove the additional stepstacked onto boot targets.Signed-off-by: Matt Redfearn &lt;matt.redfearn@imgtec.com&gt;Tested-by: Steven J. Hill &lt;steven.hill@cavium.com&gt;Cc: linux-mips@linux-mips.orgCc: linux-kernel@vger.kernel.orgPatchwork: https://patchwork.linux-mips.org/patch/14554/Signed-off-by: Ralf Baechle &lt;ralf@linux-mips.org&gt;

            List of files:
            /linux-6.15/arch/mips/Makefile.postlink</description>
        <pubDate>Thu, 10 Nov 2016 10:02:13 +0000</pubDate>
        <dc:creator>Matt Redfearn &lt;matt.redfearn@imgtec.com&gt;</dc:creator>
    </item>
</channel>
</rss>
