commit 818b199e438a240cea7a9849cd05ce44d2053da062f2d3f22cf4e5a7713b0c02 Author: Adrian Schröter Date: Sat May 4 00:25:03 2024 +0200 Sync from SUSE:SLFO:Main rust1.69 revision ede33c2e4d084d4a811274c78057f675 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/README.suse-maint b/README.suse-maint new file mode 100644 index 0000000..6b3cc8f --- /dev/null +++ b/README.suse-maint @@ -0,0 +1,96 @@ +# Automatic updating via _service + +Edit the rustX.YY.spec file, and update the variables related with the +version: + +- *version_suffix*: for the new version of Rust, in X.YY format +- *version_current*: for the new version of Rust, in X.YY.Z format +- *version_previous*: for the previous version of Rust, in X.YY.X + format + +Generate the spec files for the different bootstrap compilers. This +will take the version from the main spec file. + + ./update-bootstrap.sh + +After that, we can execute the service file: + + osc service disabledrun + +This will download the new bootstrap compilers and the signature file. + +If `osc` complains about a missing service component, double check +that the components are installed. For example, for Tumbleweed: + + zypper in obs-service-download_files obs-service-refresh_patches + +Finally, update the changelog based on the releases notes: + + https://github.com/rust-lang/rust/blob/master/RELEASES.md + +# Updating to a new version from upstream + +(Original link: https://en.opensuse.org/Rust) + +Branch the rust package in the devel:languages:rust project. + +You'll need to download precompiled binaries for the compiler used for +bootstrapping, and the actual source code for the compiler. In the +"Other Installation Methods" page listed below, note that it shows +links to .tar.gz packages and their .tar.gz.asc GPG signatures, but +.tar.xz versions are also available. + +*Binaries for bootstrapping* - Go to the "Other Installation Methods" +page from rust-lang.org and scroll down to the "Standalone installers" +section. Download the following: + +- rust--aarch64-unknown-linux-gnu.tar.xz +- rust--armv7-unknown-linux-gnueabihf.tar.xz +- rust--i686-unknown-linux-gnu.tar.xz +- rust--powerpc64le-unknown-linux-gnu.tar.xz +- rust--powerpc64-unknown-linux-gnu.tar.xz +- rust--s390x-unknown-linux-gnu.tar.xz +- rust--x86_64-unknown-linux-gnu.tar.xz + +*Compiler source code* - From the same page, but now in the "Source +code" section, download this: + + rustc--src.tar.xz + +Update those files in the source RPM. Check that all the patches still +apply. + +Update the version number in rust.spec. + +Add the release notes to rust.changes. + +# Running the tests locally + +The tests are executed outside the main package using the _multibuild +feature of OBS. This is convenient for several reasons: + +* We force the installation of the new rustc / cargo in the system + +* All the test / bootstrabs and utilities are compiled using the new + compiler, and not the one used to generate the initial Rust + compiler. + +* A test fail do not block the release. Upstream tests can be + affected by some environment application, and there is some delay + for the fix. + +The tests can be run with: + + osc build -M test + +This will install the Rust compiler from OBS, so is a good idea that +we have them available. + +If some test fail, we can enter the chroot to debug it: + + osc shell + +There is more information about the test infrastructure here: + + https://rustc-dev-guide.rust-lang.org/tests/intro.html + diff --git a/_constraints b/_constraints new file mode 100644 index 0000000..afb4dab --- /dev/null +++ b/_constraints @@ -0,0 +1,27 @@ + + + + + + 6 + + 4 + + + + 30 + + + + + + + aarch64 + + + + 12 + + + + diff --git a/_multibuild b/_multibuild new file mode 100644 index 0000000..fcc7b97 --- /dev/null +++ b/_multibuild @@ -0,0 +1,3 @@ + + test + diff --git a/_service b/_service new file mode 100644 index 0000000..5102c40 --- /dev/null +++ b/_service @@ -0,0 +1,9 @@ + + + enable + + + enable + enable + + diff --git a/ignore-Wstring-conversion.patch b/ignore-Wstring-conversion.patch new file mode 100644 index 0000000..940139b --- /dev/null +++ b/ignore-Wstring-conversion.patch @@ -0,0 +1,17 @@ +Index: rustc-1.51.0-src/compiler/rustc_llvm/build.rs +=================================================================== +--- rustc-1.51.0-src.orig/compiler/rustc_llvm/build.rs ++++ rustc-1.51.0-src/compiler/rustc_llvm/build.rs +@@ -154,6 +154,12 @@ fn main() { + continue; + } + ++ // hack to avoid flag on openSUSE which is incompatible with GCC ++ if flag.starts_with("-W") && flag.contains("string-conversion") { ++ continue; ++ } ++ ++ + cfg.flag(flag); + } + diff --git a/rust-1.69.0-aarch64-unknown-linux-gnu.tar.xz b/rust-1.69.0-aarch64-unknown-linux-gnu.tar.xz new file mode 100644 index 0000000..f220d71 --- /dev/null +++ b/rust-1.69.0-aarch64-unknown-linux-gnu.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1d92fc3dd807c0182d0f87b90a9d5dac8be4164d3096634e2da23cc2a6c39792 +size 207128044 diff --git a/rust-1.69.0-aarch64-unknown-linux-gnu.tar.xz.asc b/rust-1.69.0-aarch64-unknown-linux-gnu.tar.xz.asc new file mode 100644 index 0000000..bbcc9b0 --- /dev/null +++ b/rust-1.69.0-aarch64-unknown-linux-gnu.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +wsFcBAABCgAQBQJkQUhjCRCFq5bm+hvl/gAANVsQAKnOzKXD+tbZZyipx8B8yPf0 +U2kcTu4Nb1lsxoPZxGDerbe+8DtWsVNuBU8mpjMcvMrwTMIVPw1Iufb3RfGunqug +ypgQAyhZuwBw0rVUYhJv01a+9OnLQzynyNUz57a0lpPLKn7w3o6lhIfF9hE/Hyf6 +0ulIqdy3pckEh5bZW0k8PCx+Q5QvOTEzZfOvEeDWfKEWyBdIzaRZeH3BLV0QYeSM +AffaDPZvaIFvu3cvaaI1WulnaLlvpdqsRWbCR7bxzocW87BOWjAoAMYsc4EZ1dJT +6AjysLNkwyqCadGjSKZ7hixwzDkobrZ5p+I0RVBAFQc/uH8fO2eX6/7CQ6oDYJJw +6QnF8a2TbmMPmfkayxEzu8iZKwJw2MpYOlbqYABjC9vlGdrtcGi1C/hvRfx0qvhI +1VJXiewn7wqznxotk339K960YwuWed184Fbfi5mfYx8tRxh48W2uGicdzFTepR1Y +Nud1fuW+kfIdxSkY5yMXqJ9MPUe39SY15f/xueNbqGSmvslcX7vB8dnNLAPxm+Mk +cdQzUFW6rxz0KZ7oCbck2eaaGGTtTdGdQvMystKPOHuJvKJ8Bz0SUR4kmBn1yQph +Sl0Z+viFhgxJx2BJWkEHG7lWd0iYIclMGgDR6xVe3nRxNb2Zy8eq+aZ6WHgvUmp4 +DViucfGoXCskRmq8DUg8 +=GKDC +-----END PGP SIGNATURE----- diff --git a/rust-1.69.0-arm-unknown-linux-gnueabihf.tar.xz b/rust-1.69.0-arm-unknown-linux-gnueabihf.tar.xz new file mode 100644 index 0000000..0eb02dc --- /dev/null +++ b/rust-1.69.0-arm-unknown-linux-gnueabihf.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e756f90ddd3c591de79d256d476a93cd55847d9e3295854926ffa186af1c9c13 +size 171080940 diff --git a/rust-1.69.0-arm-unknown-linux-gnueabihf.tar.xz.asc b/rust-1.69.0-arm-unknown-linux-gnueabihf.tar.xz.asc new file mode 100644 index 0000000..a881fea --- /dev/null +++ b/rust-1.69.0-arm-unknown-linux-gnueabihf.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +wsFcBAABCgAQBQJkQUhlCRCFq5bm+hvl/gAAUUgQANUQlV+7J9qbMlhjfQ5yD5Jt +R7t6y9VQgi+fibKy6xngSsWWXAxoYx1+jZ8W+5FyOk0LfO3l2u5mOUNdE5+UQJCd +4dMEyl9dGQRbNcMr/Hbt6Bp5mcHBw7T5ka5k5hX23WLtTqP884wdcJPKmLf84Ykl +/jEqluoNenYNb+kVolSetZIJ5NUbPthNnVjeNB0PH/k42YhN7y3a0S4f3GsCBniy +hsCJZ3JE/m1ZdNOAwcPEjKs0fTUqVGhiVGmhEVOYuJo4Mg2uxl9DB20QCGwe8Ndx +KV8atsB97LrzCqUYSynyw1iXLDFuSkxHjRZUPfZnuZtmb43FuTnP1+SemgZtJDlt +U6AxoEW773zUva2hOEZHh24H1TN+/TdtRXBjjiS52XIYGp42KbTBNzzH8wEzZM5+ +34WiQXJPZvI+AApg7gkArExbZ+PLEg9H+xQYpaZk6hS/ANs6NLoEADWD5C0Mgc2K +/SeOxOfW7tfJOk68gc4oZHdFBiuChUgPcf6Pv/5MVxEHGbpcrfL57PSNnLxgnpib +pXiXfn6xPkmSVCOpWa20fyAktZQxyKDnMYtE/xojylW+L15xsxoVsmS/2rHcwB76 +0r9Tep62CUtCFKGamzu2BKQ+IeIqSohgV4ggIsWqSIVIIns8lqsc4Tlh9e21GVZu +q4rSc7NDMSB4lFJ3UT9t +=/rVq +-----END PGP SIGNATURE----- diff --git a/rust-1.69.0-armv7-unknown-linux-gnueabihf.tar.xz b/rust-1.69.0-armv7-unknown-linux-gnueabihf.tar.xz new file mode 100644 index 0000000..06c57d6 --- /dev/null +++ b/rust-1.69.0-armv7-unknown-linux-gnueabihf.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d22577fab7be91aa8099c9e494be88c5e1dc45a5ab5783703a89514423bd3876 +size 175695416 diff --git a/rust-1.69.0-armv7-unknown-linux-gnueabihf.tar.xz.asc b/rust-1.69.0-armv7-unknown-linux-gnueabihf.tar.xz.asc new file mode 100644 index 0000000..63976d3 --- /dev/null +++ b/rust-1.69.0-armv7-unknown-linux-gnueabihf.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +wsFcBAABCgAQBQJkQUhkCRCFq5bm+hvl/gAAko0QAJ3fq0S81E+9Is0+68bb5cI6 +aQxjvGIA639y+2THgktAUat+PUqGqSI2LbI0oMk7pO3oVCXpCCfvKw57U+JSpeLA +ZkpmQquVXKUwbFEGloQJbEeww4u/2fs+4eK/ppVDoaPnCx7NqWNJA6Xmi6mxUCxb +fB0vbkLl6u/ox0PfF1KbXB4Fa5hwfrK0A8JJZ8LYAzXMmktvCSGOb9BryndKD8Jn +qIdNGzIidM77S03wVshK7fS4U5Ds3fAUBwK+k4deajSoVae93fcU7+YCTnJ53GQX +B0B6Ppb1YDrrRHdOaCozQ7jqeIEADMtl8qyxrRbbBwehXHGQm79nIJRnoT6HL+rd +fsQNX5M3DW5hDIf39GJmhNe6g/vKERK/WTAEYi7xWQiRGjD88ZL/uHnHMSrQ9EDu +QMnvuhSX+Bqz5mSpvEGfjomUUnexV9F2jB1bWHeLjFKEUbIcimwHo4zqMSCOJm6C +7xd4FXII2LSiv34KpuK6Cg2p8iULwktR/TDfKDLkzzyBFtwAEnl3keHfQ4t4vvwA +f5QxA4WR4Zfr87el7tCA9fbuou2xoUGVghNlvjiZa1L6Ut7+0S7EFUnhMyRAvr+A +BfRwiOgvEqperOg2HOPFuysgVEQDI72oCupw045ZH1ntPri18U5gy94WzcOQRB/w +9gYowBanEIba9xM3x5Sy +=vlzE +-----END PGP SIGNATURE----- diff --git a/rust-1.69.0-i686-unknown-linux-gnu.tar.xz b/rust-1.69.0-i686-unknown-linux-gnu.tar.xz new file mode 100644 index 0000000..e770b97 --- /dev/null +++ b/rust-1.69.0-i686-unknown-linux-gnu.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5f05309294ba144ef1dc69dff8c34405ce5ed1ee9200b6ab49540287a40f2143 +size 199132360 diff --git a/rust-1.69.0-i686-unknown-linux-gnu.tar.xz.asc b/rust-1.69.0-i686-unknown-linux-gnu.tar.xz.asc new file mode 100644 index 0000000..96d339b --- /dev/null +++ b/rust-1.69.0-i686-unknown-linux-gnu.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +wsFcBAABCgAQBQJkQUhmCRCFq5bm+hvl/gAAMXgQALrBsmAZ/z9NC37tA7dpJauI +AXMdfKx84eAhy55y33sx1LcO0UMxRxG+Sw7R9nv1RG4DiG3bDr9SfcnFCnlyck/x +pFNf6SFYuPXfqNOMmOo/Y02t9a1MMoqi9m2EwbeiKWsNhpwl4IKsZjwKpS1MvHsi +RSg3onZs8YTtPZzyMv2xcLtwwEBlcsnj+CitoksiNxjyX2LnPor32Pxpun1XKufe +ZV+v5Wp3zXIJvhJjAkuI9r6LknAHF/f0Rs6vJdei4anrzFN+QyGBelNqvRDSayCQ +3/WCC0qBR7TMkCGSkLKZ9Rnj5zI3r6OOGsKrcnQpiw+r3fkVQuhQIMO8yiALBcVM +lTNL4tPOjmaTIxDsvdSkDG1ln3S+9OT1ZeX/xpJcCLovG80KOXPkcEcswjdkTqOv +Ss3MzD90pX8thQKXWc15cfsQ2uhweBkRo/SV8NMJVOVX+tQSyu8iajD5rlfUwq21 +tFDhybJY3H81DWko7TiENyPB+6irYHllAneCN6TdeQs+8WN3hNxCgE+OQiTEnjPd +qvd7PR0ZBhiRssVkNxsGP1YcndDCu2WXJRf9SPex8uWj+5vly9Pb7OqvkKblG0zu +unA+tTpKiaFRfFyVcBsWq81ozS6fdcDHqAwS/osrDuoG+gVZKvcsIqnXrm6+VVbb +Mk+HtUOnRIqM24dwzZWO +=4E69 +-----END PGP SIGNATURE----- diff --git a/rust-1.69.0-powerpc-unknown-linux-gnu.tar.xz b/rust-1.69.0-powerpc-unknown-linux-gnu.tar.xz new file mode 100644 index 0000000..564dd7f --- /dev/null +++ b/rust-1.69.0-powerpc-unknown-linux-gnu.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:3acf7ca8730ebd7eb9701c0f4af2077e534625af5f533af336dc49ec9640845c +size 168723248 diff --git a/rust-1.69.0-powerpc-unknown-linux-gnu.tar.xz.asc b/rust-1.69.0-powerpc-unknown-linux-gnu.tar.xz.asc new file mode 100644 index 0000000..c649bab --- /dev/null +++ b/rust-1.69.0-powerpc-unknown-linux-gnu.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +wsFcBAABCgAQBQJkQUhmCRCFq5bm+hvl/gAAmF0QAI4BxaWOB+tRPiC23t6S1bAT +LFkYqHkZLzx3pYDunfHldS7xD5r/WreCiyBfDdPQiZENuUgiea5oAUTOD6P/17E8 +oZmM4rfJfqhUW7z74oaa3kBeKkH2KdwaP+GJCGFtP7AN0yen+O6BKu4WwFkby5Ro +Dc+x/izuO/OQTHQservsJvNplYvkDtMv5iAiKM5QES4H6Yjr2QPX6hAHOcPdDgdQ +jk8narNcw22gkEaiMOBf81VuRuA4ENkfye9+lo+29SYpNM44xO2/sVcISB/V7r1/ +/t/W9DrtSmIxeiEmYUFBBf9N6Ukjob4HqpsfvwWXWD57l46rgf/KopUlAlmfEnTC +UMKhMfM23lxdNHwk1ulsq9mmvTd0fih82XaclsF8rcdJUvDhoUXvjnetZ2jAkeQh +Y4bXaLzIgYFvYbzWTxvCZrglJf8bUY97B/Lb1JNayW5gGhnz7SVO+8SZQ5mPQ27r +dZslyGhgQ0Ep4HqZCJsTtFENWQ50Bw9fPwO8yMO/G8vUjIs5L0MYz3nfyWaQpz3y +NvRXK0eTLfqrZWmhkBVf4VPkDyWT20Dpz5w1FAnVUL4uqNGt36tk2XWuLyFLH2w1 +mnfuzUyoU0clUULxGlRXBpuwAPAAbiD7rk2jJGLhNPiX0kW7uh8ob4jPqh2tpFfW +mt9wlFVCttzVl6xoDRuf +=RsK7 +-----END PGP SIGNATURE----- diff --git a/rust-1.69.0-powerpc64-unknown-linux-gnu.tar.xz b/rust-1.69.0-powerpc64-unknown-linux-gnu.tar.xz new file mode 100644 index 0000000..ed91589 --- /dev/null +++ b/rust-1.69.0-powerpc64-unknown-linux-gnu.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c5d4549f559864a8dca73d767fbc7e11b1444c6637925da66e272cc6f7197fd1 +size 168097900 diff --git a/rust-1.69.0-powerpc64-unknown-linux-gnu.tar.xz.asc b/rust-1.69.0-powerpc64-unknown-linux-gnu.tar.xz.asc new file mode 100644 index 0000000..004f132 --- /dev/null +++ b/rust-1.69.0-powerpc64-unknown-linux-gnu.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +wsFcBAABCgAQBQJkQUhlCRCFq5bm+hvl/gAACSMP/RAMkK9aEl11lQM0OAA4oLHQ +X7RzOcAC4nzmyuDTeUMhHg5herSEAGWl6Wz56oqZKqZzN3Wn2hKDb/hpIWawPmS6 +BPQq8q/xcUzG2TG9ac4cc0sLYbbUTnrUxB6jdFLoBLqB/whBWJpAqK0LaOkCvQXJ +CuVEbxjWxNOdyZzhemSCCF6FqjSqV+eoGENwUTYKJ5weQ7hSt4c6log/6mBMJHrV +ozpTCdNUPRwsjvb21uwHe4CwCrRoDW53DmIblSgwc76JvSngv0x7cSOnkIA/gUDA +Urv2MYHQxgXMHkHw+68Y9GcMRBCMq4yy/T/f5pv0eJEpFVGm4tjBluDQBbPM2XLu +bG+qrCQvYsQFDrQuCmG6hf6hLBLvayL2HZjjcatJKxngpxCYjPEP3KYR4ueP3Uoj +4hCh7nSFQBWwZNyLRLuyT3HIZecuChn82Y3Tt6+FF3ucyesxD2ViX0SpV+mb4hUG +GtPvZJvs5cFPw0IktU5AyjhB+5id4wwwElVDxhV+2SRcf65cu7kwIl/+YXsYEWjY +myN7Es1YIhBnMyerw7Gr1jKGCMZKW9JdDgIrbBe8/ZjDvS/7wG2JJghsXa0BNBQj +Te8pts3XYLcQK6aMjftXYXPc5RRlu9pYzUaHUMseD/vOBY0ulQn36437jas/pQ0p +98KE3OY+mCzcPguKl9yV +=ssdL +-----END PGP SIGNATURE----- diff --git a/rust-1.69.0-powerpc64le-unknown-linux-gnu.tar.xz b/rust-1.69.0-powerpc64le-unknown-linux-gnu.tar.xz new file mode 100644 index 0000000..0655712 --- /dev/null +++ b/rust-1.69.0-powerpc64le-unknown-linux-gnu.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0b57f729fdf869f5f0d39ae0573a8855380bed471aee7cc6996d34ffd013af66 +size 177527584 diff --git a/rust-1.69.0-powerpc64le-unknown-linux-gnu.tar.xz.asc b/rust-1.69.0-powerpc64le-unknown-linux-gnu.tar.xz.asc new file mode 100644 index 0000000..0bdd6ef --- /dev/null +++ b/rust-1.69.0-powerpc64le-unknown-linux-gnu.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +wsFcBAABCgAQBQJkQUhjCRCFq5bm+hvl/gAAh8UQALCO8Vuy6XJ8+Fv8UzcoEZ7P +87c9EByM82TM4suRJocEPoLL4+xkxknQ+GJHtLHaRGrDQz9RkoOvlbk0sVJFSEtC +hGzdsKmmcK/PGXab0YNITEFCwvuYCnIVWRZO60YX1deiI8+VzaVoN5UV6XVc/GSK +jMiFpmqYQ5F/8VIrTI9oIhJJI2rPB1C7PXAe22YnBqL2hA76QfUDx617XlUTWLNe +QNF5UywDJMOkC+n6VzGvtq4wic476imjHilHwiia73pS8YfjxK/E1xEzQwMND2lr +44ANmhrgMZFeRFaWZPfPKpR5JwKpVeWoYK+AWc7VWtMJDhhZx4QCh3uxcdpmXvTi +uTUs3pvwme5ooXOOJ4JYEWVYQO3evaaTBE3cKTNarrIy4R25G9+dDna0ya8nplpT +Pwc6Q5p8ILxIdyxRalcd+q+TTh2jNRE6FXGSHXAPdIihOctC/oP9+FixN/dzvZdB +u/zSCyUVdGvyJjgGWLGAFmQ8e2k3zjus0zfwyxEWppVFoAilHd1l+2u25G1iV3lo +KxBLH3oPSHKsT0NjaigQkfoeWancKxBKlQmzxcmLia22i/dIeg1YvvBwRPsnJ/Cu +trF91rFwsp92ebAoLP9/YphrVyP8EwifbE7E91OE9v4ESpK+qCo7NNFGt2Si1U+j +HkRqjx88iyiV5ZyIhtaP +=7rvB +-----END PGP SIGNATURE----- diff --git a/rust-1.69.0-riscv64gc-unknown-linux-gnu.tar.xz b/rust-1.69.0-riscv64gc-unknown-linux-gnu.tar.xz new file mode 100644 index 0000000..1770928 --- /dev/null +++ b/rust-1.69.0-riscv64gc-unknown-linux-gnu.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:267f17bad3cdbfbad18ffd6d71ef506f0290a05e221a6d41d78d828f791ef90d +size 162502700 diff --git a/rust-1.69.0-riscv64gc-unknown-linux-gnu.tar.xz.asc b/rust-1.69.0-riscv64gc-unknown-linux-gnu.tar.xz.asc new file mode 100644 index 0000000..4c77614 --- /dev/null +++ b/rust-1.69.0-riscv64gc-unknown-linux-gnu.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +wsFcBAABCgAQBQJkQUhmCRCFq5bm+hvl/gAAFNoQAIHNaIppGTNeuBl+UfaMA/Zt +0ByeGT8BCFBX5uiFs3rlPmCJ7lh9jNm0A/6VzdlilmbsuvnV6Uu7+QiwPczF1OnI +jqUpKTvrRFNqoLHZb48GAgVBtUnYksHoHPCxmsM/D5JP9M/1OYix139/YyC112zG +83M6Ld2GeJt/2EKVdgAnmf1BSiE0rdbHNm/OKAWFrv30MNDmEDLbxi4s/B2lwwLT +eQkJ/giBzKMHercT2B+cPG5eeviK3aQKflZNrHGGlxsUx03u6R6T0lPKGe8TSV+C +pBljFL7fHONUrSxE1z/ozUwEtzToVEMWfulXiwO5L6TaP3VlGInEQnXNb1Ia2VYQ +4AMT23OQI/EaSTj3YCeeYHFv/G6B35bp7BHhO9soy6WnUYmSvu+rkCcrtWafybzV +vfkioA9AfQzcKa0P4NoU8N5UjJew6YF4M++qf5h772PdEp//bWbA+A+sOHNflmCJ +LOwvNFFu5l0Q1dlWp0ycO7iJ1La7fPj84xC8CCGDB/WGiCzjm0L1vlXXKSknHMly +sE0tUtwCmrg2oyQQzn9Ck2WP7txcPLPH7dfqsYVIEU0YxaCSxSugcoDlPdcCaEx/ ++SUE3JMkfDv+0itjA9X4TVqd6YDllV4Yo4rifC743dkUCr/OEe39xlIF98NO+BYk +Gl/BWwAZAXVpRalVzMH2 +=xU0x +-----END PGP SIGNATURE----- diff --git a/rust-1.69.0-s390x-unknown-linux-gnu.tar.xz b/rust-1.69.0-s390x-unknown-linux-gnu.tar.xz new file mode 100644 index 0000000..c3bfa47 --- /dev/null +++ b/rust-1.69.0-s390x-unknown-linux-gnu.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b17284bf745846a0f15825bc3fc0f208df9844298780e0fa39afed009845dadc +size 192163756 diff --git a/rust-1.69.0-s390x-unknown-linux-gnu.tar.xz.asc b/rust-1.69.0-s390x-unknown-linux-gnu.tar.xz.asc new file mode 100644 index 0000000..102ac41 --- /dev/null +++ b/rust-1.69.0-s390x-unknown-linux-gnu.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +wsFcBAABCgAQBQJkQUhmCRCFq5bm+hvl/gAAs88QALTICzH0ZqZNi+N5ZbyEK7iG +fJH0Tz84dMf3oLlt5yprsG/QSj3WOTexwELsKVrOyKUlvkvh4/B4/NwDq7932yiA +2e6toswwq5bxoJ4HkV0PruZ0N9h+KUfRcrPf+m2UA3unNVGOfFKBWcGz2vM0SCNP +orJKTqIYNaMYcMCdsFuR5ykmHHb7/+DvFAGOsEEIODMPg0ZkYh1gG6W/8Sn+gnvt +tizuuNNvMI8Pv/o7U10Y88mcF+WDFthyL5zCd81Cle05LjpXJedQNriLPUGcP5DB +Fd1de44CNyL0g9iLxs8KfgfX5EQEMMRPeHt9dxPvyufngih0cwR88O4D/5Xkx9Qb +7n5CpwBQYN/z9Vxg3cAOEuDD0vL5LhHpfRxY3Tp8pdY4Ao0NJyKy58kvd84xQSaf +hqgoySHRjZRIkh2slIAZkcTZKiczNlDw2GG6dU2iU6leKKf6CEnCuLpVS/XGc6N4 +w9ENPuTIrIg+TIzUJsfeMAZ3z/y+JHIdd8K3pdqIbsAU45t2OJy8SzLRnODmtHer +twz38aC8mtQvj6/cyFzTF5fIBvqRaUwMDeCUY43s43MMZxL2Ux2QW/6hskuw0s5W +XIMWjK7H54FKpbgXstAQvonCuzpfmEgH7KNovDB2EYZ9KcZi0vstXuUkmwbZFSCI +xv+6wKOf7s9dNk4gRZFa +=HMnu +-----END PGP SIGNATURE----- diff --git a/rust-1.69.0-x86_64-unknown-linux-gnu.tar.xz b/rust-1.69.0-x86_64-unknown-linux-gnu.tar.xz new file mode 100644 index 0000000..df7132e --- /dev/null +++ b/rust-1.69.0-x86_64-unknown-linux-gnu.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fe0d3eb8604a72cd70030b72b3199a2eb7ed2a427ac7462e959e93b367ff5855 +size 152594196 diff --git a/rust-1.69.0-x86_64-unknown-linux-gnu.tar.xz.asc b/rust-1.69.0-x86_64-unknown-linux-gnu.tar.xz.asc new file mode 100644 index 0000000..f108344 --- /dev/null +++ b/rust-1.69.0-x86_64-unknown-linux-gnu.tar.xz.asc @@ -0,0 +1,16 @@ +-----BEGIN PGP SIGNATURE----- + +wsFcBAABCgAQBQJkQUhlCRCFq5bm+hvl/gAA6fcQAIjirix54GuqgnrAYhDMH9DN +6MFqfRogcvnHCpjkbwGxqdeOcZ4qmRpqjuc3m+ERW1h/2C+kd0Y8VMf0K07Ica8C +VvK8cz5xxWYv6A5jBP6bCQ56RF+GYMl0m6sfbRW41Nrs9ZXuLzZKGj5dKVIfqsUI +AdFiUUoAQhs2os6pbxTmRIEAE3MFDUAwIcUacKA2/oMXwydXMxWa0eRL1Yjp+zmv +elZnf12h1XX5l2aQ7rNU/El8yziTNG2DJgtMbot3eSQDaGUCqYL3g28Vq/eq5Iab +PFnPG48/TZPmYJ4Pz+TrupW9Iyd4Iw30PTzCrN0jwm//bue8LqbkvKiUw66l6SUh +bl8z6q5lafIwuI4P0TZqeAf2Yv0CTG1Tf67TasrnqFk5muSFaAj0P+Qer8d9lWqx +jaNzrWLnTMfWKsMxjUNzd7ZaCFSxfggqbHS5RpGsQe/5wq5A7C8RLo3vVnG0esSX +0uktY3wB//17/HtZkzjWQIdTOrVEvIwBOCiWkVA6v6MM+Z1c87eac0tI3PeuSfsV +GMdII8Oe5PWS4UtJq99kGe9yzVZm/2UHR9wTUfG5WrC/DYvaiL41T04DcYNhGf05 +K8PEzOPBHHY1+dikQUMteaFglijhMGKp3w6O/AJqhCMX4FkLWkXVJYBusu8KfnxH +jf8r0/tuO4bylCyTlmQp +=s+wA +-----END PGP SIGNATURE----- diff --git a/rust.keyring b/rust.keyring new file mode 100644 index 0000000..c9248e6 --- /dev/null +++ b/rust.keyring @@ -0,0 +1,85 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- + +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 +/5A5vjHh+NhFwH5h2vBJVPdsz6k= +=jRHo +-----END PGP PUBLIC KEY BLOCK----- diff --git a/rust1.69-rpmlintrc b/rust1.69-rpmlintrc new file mode 100644 index 0000000..3f82c89 --- /dev/null +++ b/rust1.69-rpmlintrc @@ -0,0 +1,30 @@ +# we are exporting the buildroot, not changing it, this lint is wrong. +addFilter("rpm-buildroot-usage") + +# rlib not in elf format +# addFilter("binaryinfo-readelf-failed.*/usr/lib/rustlib/.*rlib") + +# rust has no stable ABI as of yet, soname is of no use yet +addFilter("no-soname.*/usr/lib/rustlib/.*") +addFilter("no-soname.*/usr/lib/lib*") + +# error when building with bootstrap. ignore for now +# addFilter(".*shlib-policy-name-error.*libLLVM-11.*") + +# Rustc driver calls exit, this is fine +# addFilter(".*shared-lib-calls-exit.*/usr/lib/librustc_driver.*") +# addFilter("potential-bashisms.*/usr/bin/rust-lldb") +# addFilter("position-independent-executable-suggested.*/usr/bin/rust-llvm-dwp") + +addFilter("non-devel-file-in-devel-package /usr/lib/.*so") +# addFilter("non-devel-file-in-devel-package /usr/lib/rustlib/.*") + +## Sssshhh warnings, we know. This is intentional so that linking +# works properly during users build times. +addFilter("devel-dependency glibc-devel") + +# Can't read wasm files, that's okay. +addFilter("readelf-failed /usr/lib/rustlib/wasm32-wasi/lib/self-contained/libc.a") + +# We know, it's okay. +addFilter("obsolete-not-provided .*") diff --git a/rust1.69.changes b/rust1.69.changes new file mode 100644 index 0000000..602d1d1 --- /dev/null +++ b/rust1.69.changes @@ -0,0 +1,85 @@ +------------------------------------------------------------------- +Wed Apr 26 05:10:35 UTC 2023 - William Brown + +- Disable fdupes on SLE/Leap due to incorrect debuginfo extraction + +------------------------------------------------------------------- +Fri Apr 21 00:01:39 UTC 2023 - William Brown + +Version 1.69.0 (2023-04-20) +========================== + +Language +-------- + +- [Deriving built-in traits on packed structs works with `Copy` fields.](https://github.com/rust-lang/rust/pull/104429/) +- [Stabilize the `cmpxchg16b` target feature on x86 and x86_64.](https://github.com/rust-lang/rust/pull/106774/) +- [Improve analysis of trait bounds for associated types.](https://github.com/rust-lang/rust/pull/103695/) +- [Allow associated types to be used as union fields.](https://github.com/rust-lang/rust/pull/106938/) +- [Allow `Self: Autotrait` bounds on dyn-safe trait methods.](https://github.com/rust-lang/rust/pull/107082/) +- [Treat `str` as containing `[u8]` for auto trait purposes.](https://github.com/rust-lang/rust/pull/107941/) + +Compiler +-------- + +- [Upgrade `*-pc-windows-gnu` on CI to mingw-w64 v10 and GCC 12.2.](https://github.com/rust-lang/rust/pull/100178/) +- [Rework min_choice algorithm of member constraints.](https://github.com/rust-lang/rust/pull/105300/) +- [Support `true` and `false` as boolean flags in compiler arguments.](https://github.com/rust-lang/rust/pull/107043/) +- [Default `repr(C)` enums to `c_int` size.](https://github.com/rust-lang/rust/pull/107592/) + +Libraries +--------- + +- [Implement the unstable `DispatchFromDyn` for cell types, allowing downstream experimentation with custom method receivers.](https://github.com/rust-lang/rust/pull/97373/) +- [Document that `fmt::Arguments::as_str()` may return `Some(_)` in more cases after optimization, subject to change.](https://github.com/rust-lang/rust/pull/106823/) +- [Implement `AsFd` and `AsRawFd` for `Rc`.](https://github.com/rust-lang/rust/pull/107317/) + +Stabilized APIs +--------------- + +- [`CStr::from_bytes_until_nul`](https://doc.rust-lang.org/stable/core/ffi/struct.CStr.html#method.from_bytes_until_nul) +- [`core::ffi::FromBytesUntilNulError`](https://doc.rust-lang.org/stable/core/ffi/struct.FromBytesUntilNulError.html) + +These APIs are now stable in const contexts: + +- [`SocketAddr::new`](https://doc.rust-lang.org/stable/std/net/enum.SocketAddr.html#method.new) +- [`SocketAddr::ip`](https://doc.rust-lang.org/stable/std/net/enum.SocketAddr.html#method.ip) +- [`SocketAddr::port`](https://doc.rust-lang.org/stable/std/net/enum.SocketAddr.html#method.port) +- [`SocketAddr::is_ipv4`](https://doc.rust-lang.org/stable/std/net/enum.SocketAddr.html#method.is_ipv4) +- [`SocketAddr::is_ipv6`](https://doc.rust-lang.org/stable/std/net/enum.SocketAddr.html#method.is_ipv6) +- [`SocketAddrV4::new`](https://doc.rust-lang.org/stable/std/net/struct.SocketAddrV4.html#method.new) +- [`SocketAddrV4::ip`](https://doc.rust-lang.org/stable/std/net/struct.SocketAddrV4.html#method.ip) +- [`SocketAddrV4::port`](https://doc.rust-lang.org/stable/std/net/struct.SocketAddrV4.html#method.port) +- [`SocketAddrV6::new`](https://doc.rust-lang.org/stable/std/net/struct.SocketAddrV6.html#method.new) +- [`SocketAddrV6::ip`](https://doc.rust-lang.org/stable/std/net/struct.SocketAddrV6.html#method.ip) +- [`SocketAddrV6::port`](https://doc.rust-lang.org/stable/std/net/struct.SocketAddrV6.html#method.port) +- [`SocketAddrV6::flowinfo`](https://doc.rust-lang.org/stable/std/net/struct.SocketAddrV6.html#method.flowinfo) +- [`SocketAddrV6::scope_id`](https://doc.rust-lang.org/stable/std/net/struct.SocketAddrV6.html#method.scope_id) + +Cargo +----- + +- [Cargo now suggests `cargo fix` or `cargo clippy --fix` when compilation warnings are auto-fixable.](https://github.com/rust-lang/cargo/pull/11558/) +- [Cargo now suggests `cargo add` if you try to install a library crate.](https://github.com/rust-lang/cargo/pull/11410/) +- [Cargo now sets the `CARGO_BIN_NAME` environment variable also for binary examples.](https://github.com/rust-lang/cargo/pull/11705/) + +Rustdoc +----- + +- [Vertically compact trait bound formatting.](https://github.com/rust-lang/rust/pull/102842/) +- [Only include stable lints in `rustdoc::all` group.](https://github.com/rust-lang/rust/pull/106316/) +- [Compute maximum Levenshtein distance based on the query.](https://github.com/rust-lang/rust/pull/107141/) +- [Remove inconsistently-present sidebar tooltips.](https://github.com/rust-lang/rust/pull/107490/) +- [Search by macro when query ends with `!`.](https://github.com/rust-lang/rust/pull/108143/) + +Compatibility Notes +------------------- + +- [The `rust-analysis` component from `rustup` now only contains a warning placeholder.](https://github.com/rust-lang/rust/pull/101841/) This was primarily intended for RLS, and the corresponding `-Zsave-analysis` flag has been removed from the compiler as well. +- [Unaligned references to packed fields are now a hard error.](https://github.com/rust-lang/rust/pull/102513/) This has been a warning since 1.53, and denied by default with a future-compatibility warning since 1.62. +- [Update the minimum external LLVM to 14.](https://github.com/rust-lang/rust/pull/107573/) +- [Cargo now emits errors on invalid characters in a registry token.](https://github.com/rust-lang/cargo/pull/11600/) +- [When `default-features` is set to false of a workspace dependency, and an inherited dependency of a member has `default-features = true`, Cargo will enable default features of that dependency.](https://github.com/rust-lang/cargo/pull/11409/) +- [Cargo denies `CARGO_HOME` in the `[env]` configuration table. Cargo itself doesn't pick up this value, but recursive calls to cargo would, which was not intended.](https://github.com/rust-lang/cargo/pull/11644/) +- [Debuginfo for build dependencies is now off if not explicitly set. This is expected to improve the overall build time.](https://github.com/rust-lang/cargo/pull/11252/) + diff --git a/rust1.69.spec b/rust1.69.spec new file mode 100644 index 0000000..e920e66 --- /dev/null +++ b/rust1.69.spec @@ -0,0 +1,711 @@ +# +# spec file +# +# Copyright (c) 2023 SUSE LLC +# Copyright (c) 2019 Luke Jones, luke@ljones.dev +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%global version_suffix 1.69 +%global version_current 1.69.0 +%global version_previous 1.68.2 +# This has to be kept lock step to the rust version. +%global llvm_version 15 +%if 0%{?sle_version} <= 150500 && 0%{?suse_version} < 1599 +# We may need a minimum gcc version for some linker flags +# This is especially true on leap/sle +# +# ⚠️ 11 is required for a number of linker flags to be supported in sle. +# +%global gcc_version 11 +%endif + +#KEEP NOSOURCE DEBUGINFO + +%define obsolete_rust_versioned() \ +Obsoletes: %{1}1.68%{?2:-%{2}} \ +Obsoletes: %{1}1.67%{?2:-%{2}} \ +Obsoletes: %{1}1.66%{?2:-%{2}} \ +Obsoletes: %{1}1.65%{?2:-%{2}} \ +Obsoletes: %{1}1.64%{?2:-%{2}} \ +Obsoletes: %{1}1.63%{?2:-%{2}} \ +Obsoletes: %{1}1.62%{?2:-%{2}} + +# ⚠️ Must leave 1.62 here due to kernel requirements. + +# Build the rust target triple. +# Some rust arches don't match what SUSE labels them. +%global rust_arch %{_arch} +%global abi gnu + +%ifarch armv7hl +%global rust_arch armv7 +%global abi gnueabihf +%endif + +%ifarch armv6hl +%global rust_arch arm +%global abi gnueabihf +%endif + +%ifarch ppc +%global rust_arch powerpc +%endif + +%ifarch ppc64 +%global rust_arch powerpc64 +%endif + +%ifarch ppc64le +%global rust_arch powerpc64le +%endif + +%ifarch riscv64 +%global rust_arch riscv64gc +%endif + +# Must restrict the x86 build to i686 since i586 is currently +# unsupported +%ifarch %{ix86} +%global rust_arch i686 +%endif + +%global rust_triple %{rust_arch}-unknown-linux-%{abi} + +# All sources and bootstraps are fetched form here +%global dl_url https://static.rust-lang.org/dist + +# Rust doesn't function well when put in /usr/lib64 +%global common_libdir %{_prefix}/lib +%global rustlibdir %{common_libdir}/rustlib + +# Detect if sccache has been requested by the build +%if "%{getenv:RUSTC_WRAPPER}" == "sccache" +%bcond_without sccache +%else +%bcond_with sccache +%endif + +# === rust arch support tiers === +# https://doc.rust-lang.org/nightly/rustc/platform-support.html +# tl;dr only aarch64, x86_64 and i686 are guaranteed to work. +# +# armv6/7, s390x, ppc[64[le]], riscv are all "guaranteed to build" only +# but may not always work. + +# === broken distro llvm === +# In some situations the llvm provided on the platform may not work. +# we add these conditions here. +# +# ⚠️ SLE/LEAP 15.3 LLVM is too old! +# ⚠️ 1.59 breaks codegen with distro llvm!!! + +%if 0%{?is_opensuse} == 1 && 0%{?suse_version} >= 1550 +# && "{version_suffix}" != "1.61" +# Can proceed with pinned llvm. +%bcond_with bundled_llvm +%else +# Use bundled llvm instead. +# For details see boo#1192067 +%bcond_without bundled_llvm +%endif + +# === Use clang/lld during build if possible === +# i586 - unable to link libatomic +# aarch64 - fails due to an invalid linker flag +# +%bcond_with llvmtools + +# Depending on our environment, we may need to configure our linker in a different manner. + +# If we elect for llvm, always use clang. +%if %{with llvmtools} +%define rust_linker clang +%else +%if 0%{?gcc_version} != 0 +%define rust_linker gcc-%{gcc_version} +%else +%define rust_linker cc +%endif +%endif + +# === Enable wasm/wasi on t1 targets === +%if 0%{?is_opensuse} == 1 && 0%{?suse_version} >= 1550 +%ifarch x86_64 aarch64 +%bcond_without wasm32 +%bcond_without wasi +%else +%bcond_with wasm32 +%bcond_with wasi +%endif +%else +%bcond_with wasm32 +%bcond_with wasi +%endif + +# Test is done in a different multibuild package (rustXXX-test). This +# package will replace the local-rust-root and use the systems's one +# from the rustXXX package itself. This will exercise the compiler, +# even tho, the tests will require more compilation. If we do not +# agree on this model we can drop the _multibuild option and do the +# pct check as a part of the main spec. + +%global flavor @BUILD_FLAVOR@%{nil} +%if "%{flavor}" == "test" +%define psuffix -test +%bcond_without test +%else +%define psuffix %{nil} +%bcond_with test +%endif + +# """ +# Do not use parallel codegen in order to +# a) not exhaust memory on build-machines and +# b) generate the fastest possible binary +# at the cost of longer build times for this package +# """ +# +# These claims are incorrect +# a) codegen=1, actually consumes MORE memory due to the fact that the full +# code unit is then LTO'd in a single pass. This can cause LLVM to internally OOM +# especially if the machine has less than 1G of ram, and this is documented: +# * https://github.com/rust-lang/rust/issues/85598 +# it has also been observed in OBS during builds of 1.52 and 1.53 +# +# b) the performance gains from codegen=1 are minimal at best, and not worth +# us messing about with these values - especially when the rust language team +# probably know more about how to set and tune these based on data and research +# +# Debuginfo can exhaust memory on these architecture workers +%ifarch %{arm} %{ix86} +%define debug_info --debuginfo-level=0 --debuginfo-level-rustc=0 --debuginfo-level-std=0 --debuginfo-level-tools=0 --debuginfo-level-tests=0 +%else +%define debug_info %{nil} +%endif + +%global rustflags -Clink-arg=-Wl,-z,relro,-z,now + +# Exclude implicitly-scanned Provides, especially the libLLVM.so ones: +%global __provides_exclude_from ^%{rustlibdir}/.*$ + +Name: rust%{version_suffix}%{psuffix} +Version: %{version_current} +Release: 0 +Summary: A systems programming language +License: Apache-2.0 OR MIT +Group: Development/Languages/Rust +URL: https://www.rust-lang.org +Source0: %{dl_url}/rustc-%{version}-src.tar.xz +Source1: rust.keyring +%if %{without test} +Source99: %{name}-rpmlintrc +%endif +Source100: %{dl_url}/rust-%{version_current}-x86_64-unknown-linux-gnu.tar.xz +NoSource: 100 +Source101: %{dl_url}/rust-%{version_current}-i686-unknown-linux-gnu.tar.xz +NoSource: 101 +Source102: %{dl_url}/rust-%{version_current}-aarch64-unknown-linux-gnu.tar.xz +NoSource: 102 +Source103: %{dl_url}/rust-%{version_current}-armv7-unknown-linux-gnueabihf.tar.xz +NoSource: 103 +Source104: %{dl_url}/rust-%{version_current}-arm-unknown-linux-gnueabihf.tar.xz +NoSource: 104 +Source105: %{dl_url}/rust-%{version_current}-powerpc64-unknown-linux-gnu.tar.xz +NoSource: 105 +Source106: %{dl_url}/rust-%{version_current}-powerpc64le-unknown-linux-gnu.tar.xz +NoSource: 106 +Source107: %{dl_url}/rust-%{version_current}-s390x-unknown-linux-gnu.tar.xz +NoSource: 107 +Source108: %{dl_url}/rust-%{version_current}-powerpc-unknown-linux-gnu.tar.xz +NoSource: 108 +Source109: %{dl_url}/rust-%{version_current}-riscv64gc-unknown-linux-gnu.tar.xz +NoSource: 109 +Source200: %{dl_url}/rust-%{version_current}-x86_64-unknown-linux-gnu.tar.xz.asc +NoSource: 200 +Source201: %{dl_url}/rust-%{version_current}-i686-unknown-linux-gnu.tar.xz.asc +NoSource: 201 +Source202: %{dl_url}/rust-%{version_current}-aarch64-unknown-linux-gnu.tar.xz.asc +NoSource: 202 +Source203: %{dl_url}/rust-%{version_current}-armv7-unknown-linux-gnueabihf.tar.xz.asc +NoSource: 203 +Source204: %{dl_url}/rust-%{version_current}-arm-unknown-linux-gnueabihf.tar.xz.asc +NoSource: 204 +Source205: %{dl_url}/rust-%{version_current}-powerpc64-unknown-linux-gnu.tar.xz.asc +NoSource: 205 +Source206: %{dl_url}/rust-%{version_current}-powerpc64le-unknown-linux-gnu.tar.xz.asc +NoSource: 206 +Source207: %{dl_url}/rust-%{version_current}-s390x-unknown-linux-gnu.tar.xz.asc +NoSource: 207 +Source208: %{dl_url}/rust-%{version_current}-powerpc-unknown-linux-gnu.tar.xz.asc +NoSource: 208 +Source209: %{dl_url}/rust-%{version_current}-riscv64gc-unknown-linux-gnu.tar.xz.asc +NoSource: 209 +# Make factory-auto stop complaining... +Source1000: README.suse-maint +# PATCH-FIX-OPENSUSE: edit src/librustc_llvm/build.rs to ignore GCC incompatible flag +Patch0: ignore-Wstring-conversion.patch +# IMPORTANT - To generate patches for submodules in git so they apply relatively you can use +# git format-patch --text --dst-prefix=b/src/tools/cargo/ HEAD~2 + +BuildRequires: chrpath +BuildRequires: curl +# BUG - fdupes on leap/sle causes issues with debug info +%if 0%{?is_opensuse} == 1 && 0%{?suse_version} >= 1550 +BuildRequires: fdupes +%endif +BuildRequires: pkgconfig +BuildRequires: procps +BuildRequires: python3-base +BuildRequires: util-linux +BuildRequires: pkgconfig(libcurl) +BuildRequires: pkgconfig(openssl) +BuildRequires: pkgconfig(zlib) +# Set requires appropriately +%if %with sccache +BuildRequires: sccache +%else +BuildRequires: ccache +%endif + +# For linking to platform +Requires: glibc-devel +# Rustc doesn't really do much without Cargo, but you know, if you wanna yolo that ... +Recommends: cargo +# For static linking +Suggests: glibc-devel-static + +%if %{with wasi} +BuildRequires: wasi-libc +%endif + +%if %{with llvmtools} +BuildRequires: clang +BuildRequires: libstdc++-devel +BuildRequires: lld +Requires: clang +Requires: lld +%else +%if 0%{?gcc_version} != 0 +BuildRequires: gcc%{gcc_version}-c++ +Requires: gcc%{gcc_version} +%else +BuildRequires: gcc-c++ +Requires: gcc +%endif +# Clang gives better errors than gcc during a compilation, and it keeps everything +# within llvm ecosystem. +Suggests: clang +# lld is significantly faster than gold for linking, so users may wish to preference it. +Suggests: lld +%endif + +# CMake and Ninja required to drive the bundled llvm build. +# Cmake is also needed in tests. +%if 0%{?sle_version} >= 120000 && 0%{?sle_version} <= 150200 +# In these distros cmake is 2.x, or 3.X < 3.13, so we need cmake3 for building llvm. +BuildRequires: cmake3 > 3.13.4 +%else +BuildRequires: cmake > 3.13.4 +%endif + +# To build rust-lld +BuildRequires: ninja + +%if %{without bundled_llvm} +# Use distro provided LLVM on Tumbleweed, but pin it to the matching LLVM! +# For details see boo#1192067 +BuildRequires: llvm%{llvm_version}-devel +Requires: lld%{llvm_version} +%endif + +%if %{with test} +BuildRequires: cargo%{version_suffix} = %{version} +BuildRequires: rust%{version_suffix} = %{version} +# Static linking tests need this. +BuildRequires: glibc-devel-static +BuildRequires: git + +%if %{without bundled_llvm} +# For FileCheck +BuildRequires: llvm%{llvm_version}-devel +%endif + +%if %{with wasm32} +BuildRequires: nodejs-default +%endif + +# End with test +%endif + +%obsolete_rust_versioned rust +Conflicts: rust+rustc < %{version} +Conflicts: rustc-bootstrap +Provides: rust+rustc = %{version} +Conflicts: rust-std < %{version} +Obsoletes: rust-std < %{version} +Provides: rust-std = %{version} +Conflicts: rust-std-static < %{version} +Obsoletes: rust-std-static < %{version} +Provides: rust-std-static = %{version} +Conflicts: rust-gdb < %{version} +Obsoletes: rust-gdb < %{version} +Provides: rust-gdb = %{version} + +%if %{without test} +# Restrict the architectures as building rust relies on being +# initially bootstrapped before we can build the n+1 release +ExclusiveArch: x86_64 %{arm} aarch64 ppc ppc64 ppc64le s390x %{ix86} riscv64 +%ifarch %{ix86} +ExclusiveArch: i686 +%endif +%else +# Restrict for Tier 1 targets (but we should report bugs in Tier 2) +# https://doc.rust-lang.org/nightly/rustc/platform-support.html#tier-1-with-host-tools +ExclusiveArch: x86_64 i686 aarch64 +%endif + +%description +Rust is a systems programming language focused on three goals: safety, +speed, and concurrency. It maintains these goals without having a +garbage collector, making it a useful language for a number of use +cases other languages are not good at: embedding in other languages, +programs with specific space and time requirements, and writing +low-level code, like device drivers and operating systems. It improves +on current languages targeting this space by having a number of +compile-time safety checks that produce no runtime overhead, while +eliminating all data races. Rust also aims to achieve "zero-cost +abstractions", even though some of these abstractions feel like those +of a high-level language. Even then, Rust still allows precise control +like a low-level language would. + +%package -n cargo%{version_suffix} +Summary: The Rust package manager +License: Apache-2.0 OR MIT +Group: Development/Languages/Rust +Requires: rust-std = %{version} +Obsoletes: cargo-vendor < %{version} +Provides: cargo-vendor = %{version} +Provides: rust+cargo = %{version} +%obsolete_rust_versioned cargo + +%description -n cargo%{version_suffix} +Cargo downloads dependencies of Rust projects and compiles it. + +%prep +# Previously the stage0 compiler was skipped in test builds, but there are now +# tests in rust's source tree that require it. +%ifarch x86_64 +%setup -q -T -b 100 -n rust-%{version_current}-%{rust_triple} +%endif +%ifarch %{ix86} +%setup -q -T -b 101 -n rust-%{version_current}-%{rust_triple} +%endif +%ifarch aarch64 +%setup -q -T -b 102 -n rust-%{version_current}-%{rust_triple} +%endif +%ifarch armv7hl +%setup -q -T -b 103 -n rust-%{version_current}-%{rust_triple} +%endif +%ifarch armv6hl +%setup -q -T -b 104 -n rust-%{version_current}-%{rust_triple} +%endif +%ifarch ppc64 +%setup -q -T -b 105 -n rust-%{version_current}-%{rust_triple} +%endif +%ifarch ppc64le +%setup -q -T -b 106 -n rust-%{version_current}-%{rust_triple} +%endif +%ifarch s390x +%setup -q -T -b 107 -n rust-%{version_current}-%{rust_triple} +%endif +%ifarch ppc +%setup -q -T -b 108 -n rust-%{version_current}-%{rust_triple} +%endif +%ifarch riscv64 +%setup -q -T -b 109 -n rust-%{version_current}-%{rust_triple} +%endif +./install.sh --components=cargo,rustc,rust-std-%{rust_triple} --prefix=.%{_prefix} --disable-ldconfig + +%global rust_root %{_builddir}/rust-%{version_current}-%{rust_triple}%{_prefix} + +%autosetup -p1 -n rustc-%{version}-src + +# We never enable emscripten. +rm -rf src/llvm-emscripten/ +# We never enable other LLVM tools. +rm -rf src/tools/clang +rm -rf src/tools/lldb + +# Fix rpmlint error "This script uses 'env' as an interpreter" +sed -i '1s|#!%{_bindir}/env python|#!%{_bindir}/python3|' library/core/src/unicode/printable.py +chmod +x library/core/src/unicode/printable.py + +# Debugging for if anything goes south. +lscpu +free -h +df -h + +%build + +# Create exports file +# Keep all the "export VARIABLE" together here, so they can be +# reread in the %%install section below. +# If the environments between build and install and different, +# everything will be rebuilt during installation! + +%if %{with llvmtools} +cat > .env.sh < .env.sh < .env.sh <> .env.sh <> main.rs <