Fix symlinks.

This commit is contained in:
Zeckmathederg
2025-06-09 15:36:25 -06:00
parent eebdfc91d7
commit 43f7d18445
2 changed files with 2 additions and 1524 deletions

View File

@ -1,948 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
<!ENTITY changelogs "https://www.linuxfromscratch.org/blfs">
<!ENTITY % general-entities SYSTEM "../../general.ent">
%general-entities;
]>
<!-- vim: set expandtab: -->
<sect1 id="changelog" xreflabel="Change Log">
<?dbhtml filename="changelog.html"?>
<title>Change Log</title>
<!-- <para>Please note that the Change Log only lists which editor was
responsible for putting the changes into SVN; please read the
<xref linkend="credits"/> page in Chapter 1 for details on
who wrote what.</para> -->
<para>Current release: &version; &ndash; &releasedate;</para>
<itemizedlist>
<title>Changelog Entries:</title>
<!-- Changelog template
<listitem>
<para>MMMM DD{nd,st,th}, YYYY</para>
<itemizedlist>
<listitem>
<para>[name] - Newer entry.</para>
</listitem>
<listitem>
<para>[name] - package: ver -&gt; ver. Fixes
<ulink url="&glfs-issues;/num">#num</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
-->
<listitem>
<para>June 9th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - rust-bindgen: 0.71.1 -&gt; 0.72.0.</para>
</listitem>
<listitem>
<para>[zeckma] - libdrm: 2.4.124 -&gt; 2.4.125.</para>
</listitem>
<listitem>
<para>[zeckma] - XKeyboard-Config: 2.44 -&gt; 2.45.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>June 8th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - SQLite: 3.50.0 -&gt; 3.50.1.</para>
</listitem>
<listitem>
<para>[zeckma] - libvpx: 1.15.1 -&gt; 1.15.2 (security). Fixes
<ulink url="&glfs-issues;/257">#257</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>June 7th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - NVIDIA: Add EGL libraries.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>June 5th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Mesa: 25.1.1 -&gt; 25.1.2.</para>
</listitem>
<listitem>
<para>[zeckma] - LLVM: 20.1.5 -&gt; 20.1.6.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>June 4th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - hwdata: 0.395 -&gt; 0.396.</para>
</listitem>
<listitem>
<para>[zeckma] - Python: 3.13.3 -&gt; 3.13.4.</para>
</listitem>
<listitem>
<para>[zeckma] - SDL2: 2.32.6 -&gt; 2.32.8.</para>
</listitem>
<listitem>
<para>[zeckma] - cURL: 8.14.0 -&gt; 8.14.1 (security). Fixes
<ulink url="&glfs-issues;/253">#253</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - make-ca: 1.16 -&gt; 1.16.1. Fixes
<ulink url="&glfs-issues;/252">#252</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>June 3rd, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Systemd: 257.3 -&gt; 257.6.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>June 2nd, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Wine: 10.7 -&gt; 10.9.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 31st, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - AMDGPU PRO: Deprecate until 12.4.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 30th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - SQLite: 3.49.0 -&gt; 3.50.0.</para>
</listitem>
<listitem>
<para>[zeckma] - Cbindgen: 0.28.0 -&gt; 0.29.0. Fixes
<ulink url="&glfs-issues;/245">#245</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Gst: 1.26.1 -&gt; 1.26.2 (security). Fixes
<ulink url="&glfs-issues;/250">#250</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - NVIDIA: Create install script.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 29th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - NVIDIA: 575.51.02 -&gt; 575.57.08.</para>
</listitem>
<listitem>
<para>[zeckma] - cURL: 8.13.0 -&gt; 8.14.0. Fixes
<ulink url="&glfs-issues;/249">#249</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 28th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - NSS: 3.111 -&gt; 3.112. Fixes
<ulink url="&glfs-issues;/247">#247</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 27th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - NVIDIA: Overhaul. Fixes
<ulink url="&glfs-issues;/248">#248</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 23rd, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - aboutgles -&gt; aboutgl.</para>
</listitem>
<listitem>
<para>[zeckma] - Xorg Libraries: Don't build libFS.</para>
</listitem>
<listitem>
<para>[zeckma] - libxkbcommon: 1.9.2 -&gt; 1.10.0.</para>
</listitem>
<listitem>
<para>[zeckma] - GLib: 2.84.1 -&gt; 2.84.2. Fixes
<ulink url="&glfs-issues;/241">#241</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Cython: 3.1.0 -&gt; 3.1.1. Fixes
<ulink url="&glfs-issues;/242">#242</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Mesa: 25.1.0 -&gt; 25.1.1. Fixes
<ulink url="&glfs-issues;/243">#243</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - LLVM, libclc: 20.1.4 -&gt; 20.1.5. Fixes
<ulink url="&glfs-issues;/244">#244</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 20th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - sessreg: 1.1.3 -&gt; 1.1.4;
smproxy: 1.0.7 -&gt; 1.0.8;
xcursorgen: 1.0.8 -&gt; 1.0.9 (Xorg apps).</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 19th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Rustc: 1.86.0 -&gt; 1.87.0. Fixes
<ulink url="&glfs-issues;/240">#240</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 14th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - HarfBuzz: 11.2.0 -&gt; 11.2.1. Fixes
<ulink url="&glfs-issues;/237">#237</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - libxml2: 2.14.2 -&gt; 2.14.3. Fixes
<ulink url="&glfs-issues;/238">#238</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 13th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Cython: 3.0.12 -&gt; 3.1.0. Fixes
<ulink url="&glfs-issues;/231">#231</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 12th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - GLES: Explain the API and how to disable it.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 9th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Gst*: Combine into 1 page (GStreamer Suite).</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 8th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - SQLite: 3.49.1 -&gt; 3.49.2.</para>
</listitem>
<listitem>
<para>[zeckma] - hwdata: 0.394 -&gt; 0.395. Fixes
<ulink url="&glfs-issues;/229">#229</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Mesa: 25.0.5 -> 25.1.0. Fixes
<ulink url="&glfs-issues;/230">#230</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 7th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Speex: Added.</para>
</listitem>
<listitem>
<para>[zeckma] - *: Split up book into chapters.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 6th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - libxkbcommon: 1.9.1 -&gt; 1.9.2.</para>
</listitem>
<listitem>
<para>[zeckma] - Vulkan-*: 1.4.309 -&gt; 1.4.313. Fixes
<ulink url="&glfs-issues;/169">#169</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - NSS: 3.110 -&gt; 3.111. Fixes
<ulink url="&glfs-issues;/218">#218</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - LLVM, libclc: 20.1.3 -&gt; 20.1.4. Fixes
<ulink url="&glfs-issues;/224">#224</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - CMake: 4.0.1 -&gt; 4.0.2. Fixes
<ulink url="&glfs-issues;/227">#227</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - SDL2: 2.30.11 -&gt; 2.32.6. Fixes
<ulink url="&glfs-issues;/228">#228</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 5th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Wine: 10.6 -&gt; 10.7. Fixes
<ulink url="&glfs-issues;/226">#226</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Mesa: 25.0.4 -&gt; 25.0.5. Fixes
<ulink url="&glfs-issues;/223">#223</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 4th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - SPIRV-LLVM-Translator: 20.1.1 -&gt; 20.1.2. Fixes
<ulink url="&glfs-issues;/225">#225</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - libpng: 1.6.47 -&gt; 1.6.48. Fixes
<ulink url="&glfs-issues;/222">#222</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Pixman: 0.44.2 -&gt; 0.46.0. Fixes
<ulink url="&glfs-issues;/221">#221</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - HarfBuzz: 11.1.0 -&gt; 11.2.0. Fixes
<ulink url="&glfs-issues;/220">#220</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Wayland-Protocols: 1.43 -&gt; 1.44. Fixes
<ulink url="&glfs-issues;/217">#217</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - libxkbcommon: 1.8.1 -&gt; 1.9.1. Fixes
<ulink url="&glfs-issues;/216">#216</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 3rd, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - NVIDIA: Fix building with GCC-15.x.x.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>May 2nd, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - GCC: 14.2.0 -&gt; 15.1.0. Fixes
<ulink url="&glfs-issues;/213">#213</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - libsndfile; libunwind; Wine: Fix building with
GCC-15.x.x.</para>
</listitem>
<listitem>
<para>[zeckma] - Mesa: A few tweaks regarding libglvnd.</para>
</listitem>
<listitem>
<para>[zeckma] - GBM: Make PyYAML a requirement.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 30th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - gst*: 1.26.0 -&gt; 1.26.1 (Security). Fixes
<ulink url="&glfs-issues;/215">#215</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 27th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - glslang: 15.2.0 -&gt; 15.3.0.</para>
</listitem>
<listitem>
<para>[zeckma] - Preface: Heavily tweaked.</para>
</listitem>
<listitem>
<para>[zeckma] - libgpg-error: 1.54 -&gt; 1.55.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 24th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - whatdriver: Reworked explanations.</para>
</listitem>
<listitem>
<para>[zeckma] - Steam: 1.0.0.82 -&gt; 1.0.0.83. Fixes
<ulink url="&glfs-issues;/212">#212</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 22nd, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - LLVM, libclc: 20.1.2 -&gt; 20.1.3. Fixes
<ulink url="&glfs-issues;/203">#203</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Wine: 10.5 -&gt; 10.6. Fixes
<ulink url="&glfs-issues;/208">#208</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 21st, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - LibXft: 2.3.8 -&gt; 2.3.9. Fixes
<ulink url="&glfs-issues;/209">#209</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 19th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Wine: Update installed contents.</para>
</listitem>
<listitem>
<para>[zeckma] - libxml2: 2.14.1 -&gt; 2.14.2 (security fix). Fixes
<ulink url="&glfs-issues;/205">#205</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 18th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Mesa: 25.0.3 -&gt; 25.0.4. Fixes
<ulink url="&glfs-issues;/204">#204</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - NVIDIA: 570.133.07 -&gt; 575.51.02. Fixes
<ulink url="&glfs-issues;/206">#206</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - HarfBuzz: 11.0.1 -&gt; 11.1.0;
libgpg-error: 1.53 -&gt; 1.54. Fixes
<ulink url="&glfs-issues;/202">#202</ulink> and
<ulink url="&glfs-issues;/207">#207</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 17th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - gpuconfig: Document Xe driver.</para>
</listitem>
<listitem>
<para>[zeckma] - Rustc: Update config.toml.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 16th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Fontconfig: 2.16.0 -&gt; 2.16.2. Fixes
<ulink url="&glfs-issues;/201">#201</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 15th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - libaom: 3.12.0 -&gt; 3.12.1.</para>
</listitem>
<listitem>
<para>[zeckma] - CMake: 4.0.0 -&gt; 4.0.1. Fixes
<ulink url="&glfs-issues;/200">#200</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 14th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - alsa-{lib,ucm-conf,utils}: * -&gt; 1.2.14.</para>
</listitem>
<listitem>
<para>[zeckma] - alsa-lib: Ensure alsa-ucm-conf is installed.</para>
</listitem>
<listitem>
<para>[zeckma] - Python3: 3.13.2 -&gt; 3.13.3.</para>
</listitem>
<listitem>
<para>[zeckma] - libvdpau-va-gl: Allow building w/ CMake-4.0.</para>
</listitem>
<listitem>
<para>[zeckma] - x265: Allow building with CMake-4.0.</para>
</listitem>
<listitem>
<para>[zeckma] - libvpx: Ensure files get updated.</para>
</listitem>
<listitem>
<para>[zeckma] - alsa-lib: Patch alsa-ucm-conf config file.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 11th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - mako: 1.3.8 -&gt; 1.3.10.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 10th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - libvpx: 1.15.0 -&gt; 1.15.1. Fixes
<ulink url="&glfs-issues;/199">#199</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - libgpg-error: 1.51 -&gt; 1.53. Fixes
<ulink url="&glfs-issues;/198">#198</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Wayland-Protocols: 1.42 -&gt; 1.43. Fixes
<ulink url="&glfs-issues;/197">#197</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 8th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - make-ca: 1.15 -> 1.16. Fixes
<ulink url="&glfs-issues;/196">#196</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 7th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - DXVK: 2.6 -&gt; 2.6.1. Fixes
<ulink url="&glfs-issues;/195">#195</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 6th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - HarfBuzz: 11.0.0 -&gt; 11.0.1. Fixes
<ulink url="&glfs-issues;/193">#193</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 4th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Wine: 10.4 -&gt; 10.5. Fixes
<ulink url="&glfs-issues;/192">#192</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - All: Stop using .so for library suffixes. Fixes
<ulink url="&glfs-issues;/188">#188</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - GLib: 2.84.0 -&gt; 2.84.1. Fixes
<ulink url="&glfs-issues;/191">#191</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Rustc: 1.85.1 -&gt; 1.86.0. Fixes
<ulink url="&glfs-issues;/186">#186</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - p11-kit: Remove lib32 instructions.</para>
</listitem>
<listitem>
<para>[zeckma] - libxml2: 2.14.0 -&gt; 2.14.1 Fixes
<ulink url="&glfs-issues;/190">#190</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 3rd, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Glslang: Ensure libSPIRV is installed.</para>
</listitem>
<listitem>
<para>[zeckma] - LLVM: 20.1.1 -> 20.1.2;
SPIRV-LLVM-Translator: 20.1.0 -> 20.1.1. Fixes
<ulink url="&glfs-issues;/181">#181</ulink> and
<ulink url="&glfs-issues;/182">#182</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - libxml2: 1.13.6 -&gt; 1.14.0. Fixes
<ulink url="&glfs-issues;/176">#176</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Mesa: 25.0.2 -&gt; 25.0.3. Fixes
<ulink url="&glfs-issues;/185">#185</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>April 2nd, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - libinput: 1.28.0 -&gt; 1.28.1;
cURL: 8.12.1 -&gt; 8.13.0;
hwdata: 0.393 -&gt; 0.394. Fixes
<ulink url="&glfs-issues;/180">#180</ulink>,
<ulink url="&glfs-issues;/183">#183</ulink>, and
<ulink url="&glfs-issues;/184">#184</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 31st, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - shadow: 4.17.3 -&gt; 4.17.4.</para>
</listitem>
<listitem>
<para>[zeckma] - glslang: 15.1.0 -&gt; 15.2.0. Fixes
<ulink url="&glfs-issues;/179">#179</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - NSS: 3.109 -&gt; 3.110. Fixes
<ulink url="&glfs-issues;/178">#178</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - CMake: 3.31.6 -&gt; 4.0.0. Fixes
<ulink url="&glfs-issues;/177">#177</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 25th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - libevdev: 1.13.3 -&gt; 1.13.4. Fixes
<ulink url="&glfs-issues;/174">#174</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Removed 32-bit CPU support. Fixes
<ulink url="&glfs-issues;/175">#175</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - libinput: 1.27.1 -&gt; 1.28.0. Fixes
<ulink url="&glfs-issues;/172">#172</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - HarfBuzz: 10.4.0 -&gt; 11.0.0. Fixes
<ulink url="&glfs-issues;/171">#171</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Wayland-Protocols: 1.41 -&gt; 1.42. Fixes
<ulink url="&glfs-issues;/173">#173</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 23rd, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - MinGW-w64-Binutils: Remove --disable-multilib.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 22nd, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Wine: 10.3 -&gt; 10.4. Fixes
<ulink url="&glfs-issues;/170">#170</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 21st, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - *: Made the book easier to follow for NVIDIA
users.</para>
</listitem>
<listitem>
<para>[zeckma] - libdrm: Disable building tests. Fixes
<ulink url="&glfs-issues;/168">#168</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - GBM: Add lib32 installation instructions.</para>
</listitem>
<listitem>
<para>[zeckma] - NVIDIA: Fix other package builds without DRI.</para>
</listitem>
<listitem>
<para>[zeckma] - alsa-*: Don't use prefix for lib32.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 20th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - LLVM; libclc: 20.1.0 -&gt; 20.1.1. Fixes
<ulink url="&glfs-issues;/167">#167</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Mesa: 25.0.1 -&gt; 25.0.2. Fixes
<ulink url="&glfs-issues;/166">#166</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - NVIDIA: 570.124.04 -&gt; 570.133.07. Fixes
<ulink url="&glfs-issues;/164">#164</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 19th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Rustc: 1.85.0 -&gt; 1.85.1. Fixes
<ulink url="&glfs-issues;/162">#162</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 18th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - D-Bus: 1.16.0 -&gt; 1.16.2. Fixes
<ulink url="&glfs-issues;/131">#131</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 17th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - libxkbcommon: 1.8.0 -&gt; 1.8.1. Fixes
<ulink url="&glfs-issues;/151">#151</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - GObject-Introspection: 1.82.0 -&gt; 1.84.0. Fixes
<ulink url="&glfs-issues;/159">#159</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Git: 2.48.1 -&gt; 2.49.0. Fixes
<ulink url="&glfs-issues;/158">#158</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - ICU: 76.1 -&gt; 77.1. Fixes
<ulink url="&glfs-issues;/156">#156</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 16th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - NVIDIA: Document GBM.</para>
</listitem>
<listitem>
<para>[Toxikuu] - NVIDIA: 560.35.03 -&gt; 570.124.04. PR
<ulink url="&glfs-pull;/161">(#161)</ulink>. Fixes
<ulink url="&glfs-issues;/129">#129</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 15th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Updated LLVM and Vulkan related packages.
Fixes <ulink url="&glfs-issues;/136">#136</ulink>,
<ulink url="&glfs-issues;/138">#138</ulink>,
<ulink url="&glfs-issues;/153">#153</ulink>,
<ulink url="&glfs-issues;/154">#154</ulink>, and
<ulink url="&glfs-issues;/157">#157</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 14th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - GLib2: 2.82.5 -&gt; 2.84.0. Fixes
<ulink url="&glfs-issues;/139">#139</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Gst*: 1.24.12 -&gt; 1.26.0. Fixes
<ulink url="&glfs-issues;/155">#155</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Wine: 10.2 -&gt; 10.3. Fixes
<ulink url="&glfs-issues;/152">#152</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 12th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Keep up with BLFS.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 5th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - Mesa: 24.3.4 -&gt; 25.0.1. Fixes
<ulink url="&glfs-issues;/120">#120</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - libglvnd; NVIDIA: Unarchived.</para>
</listitem>
<listitem>
<para>[zeckma] - luit: Removed. Fixes
<ulink url="&glfs-issues;/137">#137</ulink>.</para>
</listitem>
</itemizedlist>
</listitem>
<listitem>
<para>March 4th, 2025</para>
<itemizedlist>
<listitem>
<para>[zeckma] - SQLite; Python3: Added. Fixes
<ulink url="&glfs-issues;/91">#91</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - NSS: 3.108 -&gt; 3.109;
CMake: 3.31.5 -&gt; 3.31.6;
Wayland-Protocols: 1.40 -&gt; 1.41;
hwdata: 0.392 -&gt; 0.393;
SPIRV-LLVM-Translator: 19.1.4 -&gt; 19.1.5. Fixes
<ulink url="&glfs-issues;/116">#116</ulink>,
<ulink url="&glfs-issues;/125">#125</ulink>,
<ulink url="&glfs-issues;/130">#130</ulink>,
<ulink url="&glfs-issues;/132">#132</ulink>, and
<ulink url="&glfs-issues;/135">#135</ulink>.</para>
</listitem>
<listitem>
<para>[zeckma] - Changelog: Cleaned for next release cycle.</para>
</listitem>
</itemizedlist>
</listitem>
</itemizedlist>
</sect1>

1
changelog.xml Symbolic link
View File

@ -0,0 +1 @@
introduction/welcome/changelog.xml

View File

@ -1,576 +0,0 @@
Submitted By: Xi Ruoyao <xry111 at xry111 dot site>
Date: 2025-03-19
Initial Package Version: 1.85.1
Upstream Status: Applied for master but not 1.85.x
Origin: Upstream PR #135177, #135763 (only commit
97f6e4d34b7e), #136895, #135084, #135088, #135764
Description: Allow building rustc-1.85.x with llvm-20.
From fc32dd49cb70c4b113353c7a060a875f30b9af04 Mon Sep 17 00:00:00 2001
From: Matthew Maurer <mmaurer@google.com>
Date: Tue, 7 Jan 2025 00:53:42 +0000
Subject: [PATCH] llvm: Ignore error value that is always false
See llvm/llvm-project#121851
For LLVM 20+, this function (`renameModuleForThinLTO`) has no return
value. For prior versions of LLVM, this never failed, but had a
signature which allowed an error value people were handling.
---
compiler/rustc_codegen_gcc/src/back/lto.rs | 4 +---
compiler/rustc_codegen_llvm/src/back/lto.rs | 6 +-----
compiler/rustc_codegen_llvm/src/llvm/ffi.rs | 2 +-
compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp | 10 ++--------
4 files changed, 5 insertions(+), 17 deletions(-)
diff --git a/compiler/rustc_codegen_gcc/src/back/lto.rs b/compiler/rustc_codegen_gcc/src/back/lto.rs
index ed92f9c52412c..f7173d4d2ffce 100644
--- a/compiler/rustc_codegen_gcc/src/back/lto.rs
+++ b/compiler/rustc_codegen_gcc/src/back/lto.rs
@@ -660,9 +660,7 @@ pub unsafe fn optimize_thin_module(
{
let _timer =
cgcx.prof.generic_activity_with_arg("LLVM_thin_lto_rename", thin_module.name());
- if !llvm::LLVMRustPrepareThinLTORename(thin_module.shared.data.0, llmod, target) {
- return Err(write::llvm_err(&dcx, LlvmError::PrepareThinLtoModule));
- }
+ unsafe { llvm::LLVMRustPrepareThinLTORename(thin_module.shared.data.0, llmod, target) };
save_temp_bitcode(cgcx, &module, "thin-lto-after-rename");
}
diff --git a/compiler/rustc_codegen_llvm/src/back/lto.rs b/compiler/rustc_codegen_llvm/src/back/lto.rs
index 4adf99e91d08d..08b774f8d6ec0 100644
--- a/compiler/rustc_codegen_llvm/src/back/lto.rs
+++ b/compiler/rustc_codegen_llvm/src/back/lto.rs
@@ -737,11 +737,7 @@ pub(crate) unsafe fn optimize_thin_module(
{
let _timer =
cgcx.prof.generic_activity_with_arg("LLVM_thin_lto_rename", thin_module.name());
- if unsafe {
- !llvm::LLVMRustPrepareThinLTORename(thin_module.shared.data.0, llmod, target)
- } {
- return Err(write::llvm_err(dcx, LlvmError::PrepareThinLtoModule));
- }
+ unsafe { llvm::LLVMRustPrepareThinLTORename(thin_module.shared.data.0, llmod, target) };
save_temp_bitcode(cgcx, &module, "thin-lto-after-rename");
}
diff --git a/compiler/rustc_codegen_llvm/src/llvm/ffi.rs b/compiler/rustc_codegen_llvm/src/llvm/ffi.rs
index bb324ee682cdb..cb4a8c9a5f21c 100644
--- a/compiler/rustc_codegen_llvm/src/llvm/ffi.rs
+++ b/compiler/rustc_codegen_llvm/src/llvm/ffi.rs
@@ -2374,7 +2374,7 @@ unsafe extern "C" {
Data: &ThinLTOData,
Module: &Module,
Target: &TargetMachine,
- ) -> bool;
+ );
pub fn LLVMRustPrepareThinLTOResolveWeak(Data: &ThinLTOData, Module: &Module) -> bool;
pub fn LLVMRustPrepareThinLTOInternalize(Data: &ThinLTOData, Module: &Module) -> bool;
pub fn LLVMRustPrepareThinLTOImport(
diff --git a/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp b/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
index de14c6d188365..6447a9362b3ab 100644
--- a/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
+++ b/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
@@ -1389,20 +1389,14 @@ static bool clearDSOLocalOnDeclarations(Module &Mod, TargetMachine &TM) {
return ClearDSOLocalOnDeclarations;
}
-extern "C" bool LLVMRustPrepareThinLTORename(const LLVMRustThinLTOData *Data,
+extern "C" void LLVMRustPrepareThinLTORename(const LLVMRustThinLTOData *Data,
LLVMModuleRef M,
LLVMTargetMachineRef TM) {
Module &Mod = *unwrap(M);
TargetMachine &Target = *unwrap(TM);
bool ClearDSOLocal = clearDSOLocalOnDeclarations(Mod, Target);
- bool error = renameModuleForThinLTO(Mod, Data->Index, ClearDSOLocal);
-
- if (error) {
- LLVMRustSetLastError("renameModuleForThinLTO failed");
- return false;
- }
- return true;
+ renameModuleForThinLTO(Mod, Data->Index, ClearDSOLocal);
}
extern "C" bool
From 97f6e4d34b7e103150c35d390e33d17041363af3 Mon Sep 17 00:00:00 2001
From: Nikita Popov <npopov@redhat.com>
Date: Mon, 3 Feb 2025 14:50:40 +0100
Subject: [PATCH] Quote embedded codeview command line arguments
The formatting of the command line arguments has been moved to the
frontend in:
https://github.com/llvm/llvm-project/commit/e190d074a0a77c9f8a7d7938a8187a7e2076e290
However, the Rust logic introduced in
https://github.com/rust-lang/rust/commit/ad0ecebf432fcb80cb666034ea44f75b81e55f95
did not replicate the previous argument quoting behavior.
---
.../rustc_llvm/llvm-wrapper/PassWrapper.cpp | 20 +++++++++++--------
1 file changed, 12 insertions(+), 8 deletions(-)
diff --git a/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp b/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
index a6b2384f2d7b2..7eb11f9e6087c 100644
--- a/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
+++ b/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
@@ -22,6 +22,7 @@
#include "llvm/Passes/StandardInstrumentations.h"
#include "llvm/Support/CBindingWrapping.h"
#include "llvm/Support/FileSystem.h"
+#include "llvm/Support/Program.h"
#include "llvm/Support/TimeProfiler.h"
#include "llvm/Support/VirtualFileSystem.h"
#include "llvm/Target/TargetMachine.h"
@@ -472,16 +473,19 @@ extern "C" LLVMTargetMachineRef LLVMRustCreateTargetMachine(
assert(ArgsCstrBuff[ArgsCstrBuffLen - 1] == '\0');
auto Arg0 = std::string(ArgsCstrBuff);
buffer_offset = Arg0.size() + 1;
- auto ArgsCppStr = std::string(ArgsCstrBuff + buffer_offset,
- ArgsCstrBuffLen - buffer_offset);
- auto i = 0;
- while (i != std::string::npos) {
- i = ArgsCppStr.find('\0', i + 1);
- if (i != std::string::npos)
- ArgsCppStr.replace(i, 1, " ");
+
+ std::string CommandlineArgs;
+ raw_string_ostream OS(CommandlineArgs);
+ ListSeparator LS(" ");
+ for (StringRef Arg : split(StringRef(ArgsCstrBuff + buffer_offset,
+ ArgsCstrBuffLen - buffer_offset),
+ '\0')) {
+ OS << LS;
+ sys::printArg(OS, Arg, /*Quote=*/true);
}
+ OS.flush();
Options.MCOptions.Argv0 = Arg0;
- Options.MCOptions.CommandlineArgs = ArgsCppStr;
+ Options.MCOptions.CommandlineArgs = CommandlineArgs;
#else
int buffer_offset = 0;
assert(ArgsCstrBuff[ArgsCstrBuffLen - 1] == '\0');
From d82219a4fa06bfa47fc5aac64844c461905ae77d Mon Sep 17 00:00:00 2001
From: Matthew Maurer <mmaurer@google.com>
Date: Wed, 12 Feb 2025 00:37:33 +0000
Subject: [PATCH] debuginfo: Set bitwidth appropriately in enum variant tags
Previously, we unconditionally set the bitwidth to 128-bits, the largest
an discrimnator would possibly be. Then, LLVM would cut down the constant by
chopping off leading zeroes before emitting the DWARF. LLVM only
supported 64-bit descriminators, so this would also have occasionally
resulted in truncated data (or an assert) if more than 64-bits were
used.
LLVM added support for 128-bit enumerators in llvm/llvm-project#125578
That patchset also trusts the constant to describe how wide the variant tag is.
As a result, we went from emitting tags that looked like:
DW_AT_discr_value (0xfe)
(`form1`)
to emitting tags that looked like:
DW_AT_discr_value (<0x10> fe ff ff ff 00 00 00 00 00 00 00 00 00 00 00 00 )
This makes the `DW_AT_discr_value` encode at the bitwidth of the tag,
which:
1. Is probably closer to our intentions in terms of describing the data.
2. Doesn't invoke the 128-bit support which may not be supported by all
debuggers / downstream tools.
3. Will result in smaller debug information.
---
.../src/debuginfo/metadata/enums/native.rs | 8 +++++++-
tests/codegen/enum/enum-debug-niche-2.rs | 4 ++--
2 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/compiler/rustc_codegen_llvm/src/debuginfo/metadata/enums/native.rs b/compiler/rustc_codegen_llvm/src/debuginfo/metadata/enums/native.rs
index 11824398f243e..187d97c54c873 100644
--- a/compiler/rustc_codegen_llvm/src/debuginfo/metadata/enums/native.rs
+++ b/compiler/rustc_codegen_llvm/src/debuginfo/metadata/enums/native.rs
@@ -437,6 +437,12 @@ fn build_enum_variant_member_di_node<'ll, 'tcx>(
.source_info
.unwrap_or_else(|| (unknown_file_metadata(cx), UNKNOWN_LINE_NUMBER));
+ let discr = discr_value.opt_single_val().map(|value| {
+ let tag_base_type = tag_base_type(cx.tcx, enum_type_and_layout);
+ let size = cx.size_of(tag_base_type);
+ cx.const_uint_big(cx.type_ix(size.bits()), value)
+ });
+
unsafe {
llvm::LLVMRustDIBuilderCreateVariantMemberType(
DIB(cx),
@@ -448,7 +454,7 @@ fn build_enum_variant_member_di_node<'ll, 'tcx>(
enum_type_and_layout.size.bits(),
enum_type_and_layout.align.abi.bits() as u32,
Size::ZERO.bits(),
- discr_value.opt_single_val().map(|value| cx.const_u128(value)),
+ discr,
DIFlags::FlagZero,
variant_member_info.variant_struct_type_di_node,
)
diff --git a/tests/codegen/enum/enum-debug-niche-2.rs b/tests/codegen/enum/enum-debug-niche-2.rs
index 58f43fe3ec6bf..80a4081f15b10 100644
--- a/tests/codegen/enum/enum-debug-niche-2.rs
+++ b/tests/codegen/enum/enum-debug-niche-2.rs
@@ -5,8 +5,8 @@
//@ ignore-msvc
//
// CHECK: {{.*}}DICompositeType{{.*}}tag: DW_TAG_variant_part,{{.*}}size: 32,{{.*}}
-// CHECK: {{.*}}DIDerivedType{{.*}}tag: DW_TAG_member,{{.*}}name: "Placeholder",{{.*}}extraData: i128 4294967295{{[,)].*}}
-// CHECK: {{.*}}DIDerivedType{{.*}}tag: DW_TAG_member,{{.*}}name: "Error",{{.*}}extraData: i128 0{{[,)].*}}
+// CHECK: {{.*}}DIDerivedType{{.*}}tag: DW_TAG_member,{{.*}}name: "Placeholder",{{.*}}extraData: i32 -1{{[,)].*}}
+// CHECK: {{.*}}DIDerivedType{{.*}}tag: DW_TAG_member,{{.*}}name: "Error",{{.*}}extraData: i32 0{{[,)].*}}
#![feature(never_type)]
#[derive(Copy, Clone)]
From ed005245c64447db5bcf28c29045a3bb99dd15e0 Mon Sep 17 00:00:00 2001
From: Matthew Maurer <mmaurer@google.com>
Date: Fri, 3 Jan 2025 19:39:52 +0000
Subject: [PATCH] Update carrying_mul_add test to tolerate `nuw`
LLVM 20 adds nuw to GEP operations in this code, tolerate them.
---
tests/codegen/intrinsics/carrying_mul_add.rs | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tests/codegen/intrinsics/carrying_mul_add.rs b/tests/codegen/intrinsics/carrying_mul_add.rs
index 174c4077f09e9..b53585a8a6ee6 100644
--- a/tests/codegen/intrinsics/carrying_mul_add.rs
+++ b/tests/codegen/intrinsics/carrying_mul_add.rs
@@ -84,7 +84,7 @@ pub unsafe fn cma_u128(a: u128, b: u128, c: u128, d: u128) -> (u128, u128) {
// RAW: [[PAIR0:%.+]] = insertvalue { i128, i128 } poison, i128 [[LOW]], 0
// RAW: [[PAIR1:%.+]] = insertvalue { i128, i128 } [[PAIR0]], i128 [[HIGH]], 1
// OPT: store i128 [[LOW]], ptr %_0
- // OPT: [[P1:%.+]] = getelementptr inbounds i8, ptr %_0, {{i32|i64}} 16
+ // OPT: [[P1:%.+]] = getelementptr inbounds{{( nuw)?}} i8, ptr %_0, {{i32|i64}} 16
// OPT: store i128 [[HIGH]], ptr [[P1]]
// CHECK: ret void
carrying_mul_add(a, b, c, d)
@@ -111,7 +111,7 @@ pub unsafe fn cma_i128(a: i128, b: i128, c: i128, d: i128) -> (u128, i128) {
// RAW: [[PAIR0:%.+]] = insertvalue { i128, i128 } poison, i128 [[LOW]], 0
// RAW: [[PAIR1:%.+]] = insertvalue { i128, i128 } [[PAIR0]], i128 [[HIGH]], 1
// OPT: store i128 [[LOW]], ptr %_0
- // OPT: [[P1:%.+]] = getelementptr inbounds i8, ptr %_0, {{i32|i64}} 16
+ // OPT: [[P1:%.+]] = getelementptr inbounds{{( nuw)?}} i8, ptr %_0, {{i32|i64}} 16
// OPT: store i128 [[HIGH]], ptr [[P1]]
// CHECK: ret void
carrying_mul_add(a, b, c, d)
From cf679e428136f7992e8c110b32365a0e0057154e Mon Sep 17 00:00:00 2001
From: Matthew Maurer <mmaurer@google.com>
Date: Fri, 3 Jan 2025 22:21:39 +0000
Subject: [PATCH] Force code generation in assembly generation smoke-tests
In llvm/llvm-project@7b23f413d1f76532825e470b523e971818d453ca , `.text`
started being suppressed from LLVM assembly in cases where it wasn't
strictly necessary. Currently, the sample functions in these two tests
are frequently decided to be IR-only functions, resulting in no code
generation, so LLVM drops the `.text` directive.
Adding `#[no_mangle]` forces these tests back to their original intent -
assembly code is generated, and so a `.text` directive is generated as
well.
---
tests/assembly/targets/targets-elf.rs | 2 ++
tests/assembly/targets/targets-macho.rs | 2 ++
2 files changed, 4 insertions(+)
diff --git a/tests/assembly/targets/targets-elf.rs b/tests/assembly/targets/targets-elf.rs
index 7d50647bed18e..59d27ed649c0f 100644
--- a/tests/assembly/targets/targets-elf.rs
+++ b/tests/assembly/targets/targets-elf.rs
@@ -676,6 +676,8 @@
#[lang = "sized"]
trait Sized {}
+// Force linkage to ensure code is actually generated
+#[no_mangle]
pub fn test() -> u8 {
42
}
diff --git a/tests/assembly/targets/targets-macho.rs b/tests/assembly/targets/targets-macho.rs
index 8095ae9029b75..25e9059afeb18 100644
--- a/tests/assembly/targets/targets-macho.rs
+++ b/tests/assembly/targets/targets-macho.rs
@@ -83,6 +83,8 @@
#[lang = "sized"]
trait Sized {}
+// Force linkage to ensure code is actually generated
+#[no_mangle]
pub fn test() -> u8 {
42
}
From aaccb71da9f0954ee5433f61ae8274b29f6da1c5 Mon Sep 17 00:00:00 2001
From: Nikita Popov <npopov@redhat.com>
Date: Mon, 20 Jan 2025 11:38:48 +0100
Subject: [PATCH 1/2] Fix sparcv8plus test on LLVM 20
Split this into two tests, one for LLVM 19 and one for LLVM 20.
---
tests/ui/abi/sparcv8plus-llvm19.rs | 43 +++++++++++++++++++
tests/ui/abi/sparcv8plus-llvm19.sparc.stderr | 8 ++++
.../sparcv8plus-llvm19.sparc_cpu_v9.stderr | 8 ++++
...-llvm19.sparc_cpu_v9_feature_v8plus.stderr | 8 ++++
...cv8plus-llvm19.sparc_feature_v8plus.stderr | 8 ++++
.../abi/sparcv8plus-llvm19.sparcv8plus.stderr | 8 ++++
tests/ui/abi/sparcv8plus.rs | 6 +--
tests/ui/abi/sparcv8plus.sparc_cpu_v9.stderr | 6 +--
...cv8plus.sparc_cpu_v9_feature_v8plus.stderr | 2 +-
.../sparcv8plus.sparc_feature_v8plus.stderr | 2 +-
tests/ui/abi/sparcv8plus.sparcv8plus.stderr | 2 +-
11 files changed, 92 insertions(+), 9 deletions(-)
create mode 100644 tests/ui/abi/sparcv8plus-llvm19.rs
create mode 100644 tests/ui/abi/sparcv8plus-llvm19.sparc.stderr
create mode 100644 tests/ui/abi/sparcv8plus-llvm19.sparc_cpu_v9.stderr
create mode 100644 tests/ui/abi/sparcv8plus-llvm19.sparc_cpu_v9_feature_v8plus.stderr
create mode 100644 tests/ui/abi/sparcv8plus-llvm19.sparc_feature_v8plus.stderr
create mode 100644 tests/ui/abi/sparcv8plus-llvm19.sparcv8plus.stderr
diff --git a/tests/ui/abi/sparcv8plus-llvm19.rs b/tests/ui/abi/sparcv8plus-llvm19.rs
new file mode 100644
index 0000000000000..a884e5ca06f10
--- /dev/null
+++ b/tests/ui/abi/sparcv8plus-llvm19.rs
@@ -0,0 +1,43 @@
+//@ revisions: sparc sparcv8plus sparc_cpu_v9 sparc_feature_v8plus sparc_cpu_v9_feature_v8plus
+//@[sparc] compile-flags: --target sparc-unknown-none-elf
+//@[sparc] needs-llvm-components: sparc
+//@[sparcv8plus] compile-flags: --target sparc-unknown-linux-gnu
+//@[sparcv8plus] needs-llvm-components: sparc
+//@[sparc_cpu_v9] compile-flags: --target sparc-unknown-none-elf -C target-cpu=v9
+//@[sparc_cpu_v9] needs-llvm-components: sparc
+//@[sparc_feature_v8plus] compile-flags: --target sparc-unknown-none-elf -C target-feature=+v8plus
+//@[sparc_feature_v8plus] needs-llvm-components: sparc
+//@[sparc_cpu_v9_feature_v8plus] compile-flags: --target sparc-unknown-none-elf -C target-cpu=v9 -C target-feature=+v8plus
+//@[sparc_cpu_v9_feature_v8plus] needs-llvm-components: sparc
+//@ exact-llvm-major-version: 19
+
+#![crate_type = "rlib"]
+#![feature(no_core, rustc_attrs, lang_items)]
+#![no_core]
+
+#[lang = "sized"]
+trait Sized {}
+#[lang = "copy"]
+trait Copy {}
+
+#[rustc_builtin_macro]
+macro_rules! compile_error {
+ () => {};
+}
+
+#[cfg(all(not(target_feature = "v8plus"), not(target_feature = "v9")))]
+compile_error!("-v8plus,-v9");
+//[sparc]~^ ERROR -v8plus,-v9
+
+// FIXME: sparc_cpu_v9 should be in "-v8plus,+v9" group (fixed in LLVM 20)
+#[cfg(all(target_feature = "v8plus", target_feature = "v9"))]
+compile_error!("+v8plus,+v9");
+//[sparcv8plus,sparc_cpu_v9_feature_v8plus,sparc_cpu_v9]~^ ERROR +v8plus,+v9
+
+// FIXME: should be rejected
+#[cfg(all(target_feature = "v8plus", not(target_feature = "v9")))]
+compile_error!("+v8plus,-v9 (FIXME)");
+//[sparc_feature_v8plus]~^ ERROR +v8plus,-v9 (FIXME)
+
+#[cfg(all(not(target_feature = "v8plus"), target_feature = "v9"))]
+compile_error!("-v8plus,+v9");
diff --git a/tests/ui/abi/sparcv8plus-llvm19.sparc.stderr b/tests/ui/abi/sparcv8plus-llvm19.sparc.stderr
new file mode 100644
index 0000000000000..7eedf26135f54
--- /dev/null
+++ b/tests/ui/abi/sparcv8plus-llvm19.sparc.stderr
@@ -0,0 +1,8 @@
+error: -v8plus,-v9
+ --> $DIR/sparcv8plus-llvm19.rs:29:1
+ |
+LL | compile_error!("-v8plus,-v9");
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+error: aborting due to 1 previous error
+
diff --git a/tests/ui/abi/sparcv8plus-llvm19.sparc_cpu_v9.stderr b/tests/ui/abi/sparcv8plus-llvm19.sparc_cpu_v9.stderr
new file mode 100644
index 0000000000000..ac61df3567808
--- /dev/null
+++ b/tests/ui/abi/sparcv8plus-llvm19.sparc_cpu_v9.stderr
@@ -0,0 +1,8 @@
+error: +v8plus,+v9
+ --> $DIR/sparcv8plus-llvm19.rs:34:1
+ |
+LL | compile_error!("+v8plus,+v9");
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+error: aborting due to 1 previous error
+
diff --git a/tests/ui/abi/sparcv8plus-llvm19.sparc_cpu_v9_feature_v8plus.stderr b/tests/ui/abi/sparcv8plus-llvm19.sparc_cpu_v9_feature_v8plus.stderr
new file mode 100644
index 0000000000000..ac61df3567808
--- /dev/null
+++ b/tests/ui/abi/sparcv8plus-llvm19.sparc_cpu_v9_feature_v8plus.stderr
@@ -0,0 +1,8 @@
+error: +v8plus,+v9
+ --> $DIR/sparcv8plus-llvm19.rs:34:1
+ |
+LL | compile_error!("+v8plus,+v9");
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+error: aborting due to 1 previous error
+
diff --git a/tests/ui/abi/sparcv8plus-llvm19.sparc_feature_v8plus.stderr b/tests/ui/abi/sparcv8plus-llvm19.sparc_feature_v8plus.stderr
new file mode 100644
index 0000000000000..1bf7a3ad76a83
--- /dev/null
+++ b/tests/ui/abi/sparcv8plus-llvm19.sparc_feature_v8plus.stderr
@@ -0,0 +1,8 @@
+error: +v8plus,-v9 (FIXME)
+ --> $DIR/sparcv8plus-llvm19.rs:39:1
+ |
+LL | compile_error!("+v8plus,-v9 (FIXME)");
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+error: aborting due to 1 previous error
+
diff --git a/tests/ui/abi/sparcv8plus-llvm19.sparcv8plus.stderr b/tests/ui/abi/sparcv8plus-llvm19.sparcv8plus.stderr
new file mode 100644
index 0000000000000..ac61df3567808
--- /dev/null
+++ b/tests/ui/abi/sparcv8plus-llvm19.sparcv8plus.stderr
@@ -0,0 +1,8 @@
+error: +v8plus,+v9
+ --> $DIR/sparcv8plus-llvm19.rs:34:1
+ |
+LL | compile_error!("+v8plus,+v9");
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+error: aborting due to 1 previous error
+
diff --git a/tests/ui/abi/sparcv8plus.rs b/tests/ui/abi/sparcv8plus.rs
index 108279b34949b..a78ae0cd32889 100644
--- a/tests/ui/abi/sparcv8plus.rs
+++ b/tests/ui/abi/sparcv8plus.rs
@@ -9,7 +9,7 @@
//@[sparc_feature_v8plus] needs-llvm-components: sparc
//@[sparc_cpu_v9_feature_v8plus] compile-flags: --target sparc-unknown-none-elf -C target-cpu=v9 -C target-feature=+v8plus
//@[sparc_cpu_v9_feature_v8plus] needs-llvm-components: sparc
-//@ min-llvm-version: 19
+//@ min-llvm-version: 20
#![crate_type = "rlib"]
#![feature(no_core, rustc_attrs, lang_items)]
@@ -29,10 +29,9 @@ macro_rules! compile_error {
compile_error!("-v8plus,-v9");
//[sparc]~^ ERROR -v8plus,-v9
-// FIXME: sparc_cpu_v9 should be in "-v8plus,+v9" group (fixed in LLVM 20)
#[cfg(all(target_feature = "v8plus", target_feature = "v9"))]
compile_error!("+v8plus,+v9");
-//[sparcv8plus,sparc_cpu_v9_feature_v8plus,sparc_cpu_v9]~^ ERROR +v8plus,+v9
+//[sparcv8plus,sparc_cpu_v9_feature_v8plus]~^ ERROR +v8plus,+v9
// FIXME: should be rejected
#[cfg(all(target_feature = "v8plus", not(target_feature = "v9")))]
@@ -41,3 +40,4 @@ compile_error!("+v8plus,-v9 (FIXME)");
#[cfg(all(not(target_feature = "v8plus"), target_feature = "v9"))]
compile_error!("-v8plus,+v9");
+//[sparc_cpu_v9]~^ ERROR -v8plus,+v9
diff --git a/tests/ui/abi/sparcv8plus.sparc_cpu_v9.stderr b/tests/ui/abi/sparcv8plus.sparc_cpu_v9.stderr
index 5e1e1fa5c798f..00fd7ef4ea8fb 100644
--- a/tests/ui/abi/sparcv8plus.sparc_cpu_v9.stderr
+++ b/tests/ui/abi/sparcv8plus.sparc_cpu_v9.stderr
@@ -1,7 +1,7 @@
-error: +v8plus,+v9
- --> $DIR/sparcv8plus.rs:34:1
+error: -v8plus,+v9
+ --> $DIR/sparcv8plus.rs:42:1
|
-LL | compile_error!("+v8plus,+v9");
+LL | compile_error!("-v8plus,+v9");
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: aborting due to 1 previous error
diff --git a/tests/ui/abi/sparcv8plus.sparc_cpu_v9_feature_v8plus.stderr b/tests/ui/abi/sparcv8plus.sparc_cpu_v9_feature_v8plus.stderr
index 5e1e1fa5c798f..a3c74e67f8f11 100644
--- a/tests/ui/abi/sparcv8plus.sparc_cpu_v9_feature_v8plus.stderr
+++ b/tests/ui/abi/sparcv8plus.sparc_cpu_v9_feature_v8plus.stderr
@@ -1,5 +1,5 @@
error: +v8plus,+v9
- --> $DIR/sparcv8plus.rs:34:1
+ --> $DIR/sparcv8plus.rs:33:1
|
LL | compile_error!("+v8plus,+v9");
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diff --git a/tests/ui/abi/sparcv8plus.sparc_feature_v8plus.stderr b/tests/ui/abi/sparcv8plus.sparc_feature_v8plus.stderr
index 8a5375a46bc05..84f560d158ca9 100644
--- a/tests/ui/abi/sparcv8plus.sparc_feature_v8plus.stderr
+++ b/tests/ui/abi/sparcv8plus.sparc_feature_v8plus.stderr
@@ -1,5 +1,5 @@
error: +v8plus,-v9 (FIXME)
- --> $DIR/sparcv8plus.rs:39:1
+ --> $DIR/sparcv8plus.rs:38:1
|
LL | compile_error!("+v8plus,-v9 (FIXME)");
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diff --git a/tests/ui/abi/sparcv8plus.sparcv8plus.stderr b/tests/ui/abi/sparcv8plus.sparcv8plus.stderr
index 5e1e1fa5c798f..a3c74e67f8f11 100644
--- a/tests/ui/abi/sparcv8plus.sparcv8plus.stderr
+++ b/tests/ui/abi/sparcv8plus.sparcv8plus.stderr
@@ -1,5 +1,5 @@
error: +v8plus,+v9
- --> $DIR/sparcv8plus.rs:34:1
+ --> $DIR/sparcv8plus.rs:33:1
|
LL | compile_error!("+v8plus,+v9");
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
From 2718710d4a505019c46ccc7db42d890f230de25e Mon Sep 17 00:00:00 2001
From: Nikita Popov <npopov@redhat.com>
Date: Mon, 20 Jan 2025 12:08:27 +0100
Subject: [PATCH 2/2] Fix x86_64-bigint-helpers test on LLVM 20
LLVM 20 choses a different unroll factor for the loop.
---
tests/assembly/x86_64-bigint-helpers.rs | 19 +++++++++++++------
1 file changed, 13 insertions(+), 6 deletions(-)
diff --git a/tests/assembly/x86_64-bigint-helpers.rs b/tests/assembly/x86_64-bigint-helpers.rs
index 198e554353909..3ad253a2bd0fe 100644
--- a/tests/assembly/x86_64-bigint-helpers.rs
+++ b/tests/assembly/x86_64-bigint-helpers.rs
@@ -2,6 +2,9 @@
//@ assembly-output: emit-asm
//@ compile-flags: --crate-type=lib -O -C target-cpu=x86-64-v4
//@ compile-flags: -C llvm-args=-x86-asm-syntax=intel
+//@ revisions: llvm-pre-20 llvm-20
+//@ [llvm-20] min-llvm-version: 20
+//@ [llvm-pre-20] max-llvm-major-version: 19
#![no_std]
#![feature(bigint_helper_methods)]
@@ -20,12 +23,16 @@ pub unsafe extern "sysv64" fn bigint_chain_carrying_add(
n: usize,
mut carry: bool,
) -> bool {
- // CHECK: mov [[TEMP:r..]], qword ptr [rsi + 8*[[IND:r..]] + 8]
- // CHECK: adc [[TEMP]], qword ptr [rdx + 8*[[IND]] + 8]
- // CHECK: mov qword ptr [rdi + 8*[[IND]] + 8], [[TEMP]]
- // CHECK: mov [[TEMP]], qword ptr [rsi + 8*[[IND]] + 16]
- // CHECK: adc [[TEMP]], qword ptr [rdx + 8*[[IND]] + 16]
- // CHECK: mov qword ptr [rdi + 8*[[IND]] + 16], [[TEMP]]
+ // llvm-pre-20: mov [[TEMP:r..]], qword ptr [rsi + 8*[[IND:r..]] + 8]
+ // llvm-pre-20: adc [[TEMP]], qword ptr [rdx + 8*[[IND]] + 8]
+ // llvm-pre-20: mov qword ptr [rdi + 8*[[IND]] + 8], [[TEMP]]
+ // llvm-pre-20: mov [[TEMP]], qword ptr [rsi + 8*[[IND]] + 16]
+ // llvm-pre-20: adc [[TEMP]], qword ptr [rdx + 8*[[IND]] + 16]
+ // llvm-pre-20: mov qword ptr [rdi + 8*[[IND]] + 16], [[TEMP]]
+ // llvm-20: adc [[TEMP:r..]], qword ptr [rdx + 8*[[IND:r..]]]
+ // llvm-20: mov qword ptr [rdi + 8*[[IND]]], [[TEMP]]
+ // llvm-20: mov [[TEMP]], qword ptr [rsi + 8*[[IND]] + 8]
+ // llvm-20: adc [[TEMP]], qword ptr [rdx + 8*[[IND]] + 8]
for i in 0..n {
(*dest.add(i), carry) = u64::carrying_add(*src1.add(i), *src2.add(i), carry);
}

View File

@ -0,0 +1 @@
rustc-1.85.0-upstream_fixes_llvm-1.patch