Skip to content

[clang] Add support for Debian 14 Forky and Debian 15 Duke #138460

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 4, 2025

Conversation

tambry
Copy link
Contributor

@tambry tambry commented May 4, 2025

Futureproofs our single Debian-specific special case for roughly the next 6 years.

See: https://lists.debian.org/debian-devel-announce/2025/01/msg00004.html

@tambry tambry requested a review from sylvestre May 4, 2025 16:50
@tambry tambry self-assigned this May 4, 2025
@llvmbot llvmbot added clang Clang issues not falling into any other category clang:driver 'clang' and 'clang++' user-facing binaries. Not 'clang-cl' labels May 4, 2025
@llvmbot
Copy link
Member

llvmbot commented May 4, 2025

@llvm/pr-subscribers-clang-driver

@llvm/pr-subscribers-clang

Author: Raul Tambre (tambry)

Changes

Futureproofs our single Debian-specific special case for roughly the next 6 years.

See: https://lists.debian.org/debian-devel-announce/2025/01/msg00004.html


Full diff: https://github.com/llvm/llvm-project/pull/138460.diff

2 Files Affected:

  • (modified) clang/include/clang/Driver/Distro.h (+3-1)
  • (modified) clang/lib/Driver/Distro.cpp (+6)
diff --git a/clang/include/clang/Driver/Distro.h b/clang/include/clang/Driver/Distro.h
index 9f27c2baaeb47..5c25592e68ade 100644
--- a/clang/include/clang/Driver/Distro.h
+++ b/clang/include/clang/Driver/Distro.h
@@ -39,6 +39,8 @@ class Distro {
     DebianBullseye,
     DebianBookworm,
     DebianTrixie,
+    DebianForky,
+    DebianDuke,
     Exherbo,
     RHEL5,
     RHEL6,
@@ -129,7 +131,7 @@ class Distro {
   bool IsOpenSUSE() const { return DistroVal == OpenSUSE; }
 
   bool IsDebian() const {
-    return DistroVal >= DebianLenny && DistroVal <= DebianTrixie;
+    return DistroVal >= DebianLenny && DistroVal <= DebianDuke;
   }
 
   bool IsUbuntu() const {
diff --git a/clang/lib/Driver/Distro.cpp b/clang/lib/Driver/Distro.cpp
index 82c627819d9fc..90e5a390be7eb 100644
--- a/clang/lib/Driver/Distro.cpp
+++ b/clang/lib/Driver/Distro.cpp
@@ -161,6 +161,10 @@ static Distro::DistroType DetectDistro(llvm::vfs::FileSystem &VFS) {
         return Distro::DebianBookworm;
       case 13:
         return Distro::DebianTrixie;
+      case 14:
+        return Distro::DebianForky;
+      case 15:
+        return Distro::DebianDuke;
       default:
         return Distro::UnknownDistro;
       }
@@ -174,6 +178,8 @@ static Distro::DistroType DetectDistro(llvm::vfs::FileSystem &VFS) {
         .Case("bullseye/sid", Distro::DebianBullseye)
         .Case("bookworm/sid", Distro::DebianBookworm)
         .Case("trixie/sid", Distro::DebianTrixie)
+        .Case("forky/sid", Distro::DebianForky)
+        .Case("duke/sid", Distro::DebianDuke)
         .Default(Distro::UnknownDistro);
   }
 

Copy link
Collaborator

@sylvestre sylvestre left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

excellent, thanks!

@sylvestre
Copy link
Collaborator

please let me know i should merge it

@tambry
Copy link
Contributor Author

tambry commented May 4, 2025

I have commit access but I'll wait for CI so everything's by the book. 🙂

@tambry tambry merged commit 58e6883 into llvm:main May 4, 2025
14 checks passed
@tambry tambry deleted the debian_forky_duke branch May 4, 2025 17:55
@llvm-ci
Copy link
Collaborator

llvm-ci commented May 4, 2025

LLVM Buildbot has detected a new failure on builder llvm-clang-x86_64-gcc-ubuntu running on sie-linux-worker3 while building clang at step 6 "test-build-unified-tree-check-all".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/174/builds/17214

Here is the relevant piece of the build log for the reference
Step 6 (test-build-unified-tree-check-all) failure: test (failure)
...
PASS: lit :: allow-retries.py (89893 of 89902)
PASS: lit :: discovery.py (89894 of 89902)
PASS: lit :: shtest-external-shell-kill.py (89895 of 89902)
PASS: lit :: googletest-timeout.py (89896 of 89902)
PASS: lit :: selecting.py (89897 of 89902)
PASS: lit :: shtest-timeout.py (89898 of 89902)
PASS: lit :: max-time.py (89899 of 89902)
PASS: lit :: shtest-shell.py (89900 of 89902)
PASS: lit :: shtest-define.py (89901 of 89902)
TIMEOUT: AddressSanitizer-x86_64-linux-dynamic :: TestCases/asan_lsan_deadlock.cpp (89902 of 89902)
******************** TEST 'AddressSanitizer-x86_64-linux-dynamic :: TestCases/asan_lsan_deadlock.cpp' FAILED ********************
Exit Code: -9
Timeout: Reached timeout of 900 seconds

Command Output (stderr):
--
/home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/./bin/clang  --driver-mode=g++ -fsanitize=address -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer -fno-optimize-sibling-calls -gline-tables-only  -m64  -shared-libasan -O0 /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/llvm-project/compiler-rt/test/asan/TestCases/asan_lsan_deadlock.cpp -o /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/runtimes/runtimes-bins/compiler-rt/test/asan/X86_64LinuxDynamicConfig/TestCases/Output/asan_lsan_deadlock.cpp.tmp # RUN: at line 4
+ /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/./bin/clang --driver-mode=g++ -fsanitize=address -mno-omit-leaf-frame-pointer -fno-omit-frame-pointer -fno-optimize-sibling-calls -gline-tables-only -m64 -shared-libasan -O0 /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/llvm-project/compiler-rt/test/asan/TestCases/asan_lsan_deadlock.cpp -o /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/runtimes/runtimes-bins/compiler-rt/test/asan/X86_64LinuxDynamicConfig/TestCases/Output/asan_lsan_deadlock.cpp.tmp
env ASAN_OPTIONS=detect_leaks=1 not  /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/runtimes/runtimes-bins/compiler-rt/test/asan/X86_64LinuxDynamicConfig/TestCases/Output/asan_lsan_deadlock.cpp.tmp 2>&1 | FileCheck /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/llvm-project/compiler-rt/test/asan/TestCases/asan_lsan_deadlock.cpp # RUN: at line 5
+ env ASAN_OPTIONS=detect_leaks=1 not /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/runtimes/runtimes-bins/compiler-rt/test/asan/X86_64LinuxDynamicConfig/TestCases/Output/asan_lsan_deadlock.cpp.tmp
+ FileCheck /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/llvm-project/compiler-rt/test/asan/TestCases/asan_lsan_deadlock.cpp

--

********************
********************
Timed Out Tests (1):
  AddressSanitizer-x86_64-linux-dynamic :: TestCases/asan_lsan_deadlock.cpp


Testing Time: 1169.99s

Total Discovered Tests: 124386
  Skipped          :     38 (0.03%)
  Unsupported      :   2646 (2.13%)
  Passed           : 121410 (97.61%)
  Expectedly Failed:    291 (0.23%)
  Timed Out        :      1 (0.00%)
FAILED: CMakeFiles/check-all /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/CMakeFiles/check-all 
cd /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build && /usr/bin/python3.8 /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/./bin/llvm-lit --verbose --timeout=900 --param USE_Z3_SOLVER=0 /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/utils/mlgo-utils /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/projects/cross-project-tests /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/tools/lld/test /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/tools/clang/tools/extra/include-cleaner/test /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/tools/clang/tools/extra/test /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/tools/clang/test @/home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/runtimes/runtimes-bins/lit.tests /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/utils/lit /home/buildbot/buildbot-root/llvm-clang-x86_64-gcc-ubuntu/build/test
ninja: build stopped: subcommand failed.

@tambry
Copy link
Contributor Author

tambry commented May 5, 2025

/cherry-pick 58e6883

1 similar comment
@tambry
Copy link
Contributor Author

tambry commented May 6, 2025

/cherry-pick 58e6883

@llvmbot
Copy link
Member

llvmbot commented May 6, 2025

/pull-request #138652

@llvmbot llvmbot moved this from Needs Triage to Done in LLVM Release Status May 6, 2025
@tambry
Copy link
Contributor Author

tambry commented May 6, 2025

Seems like the cherry-pick only works if the branch of the PR still exists. 🤔

@anutosh491
Copy link
Member

Seems like the cherry-pick only works if the branch of the PR still exists. 🤔

Thanks for pointing this out. I faced a similar issue when I deleted the branch and tried cherry picking !

Now that I've restored the branch, should I try cherry picking again ?

@tambry
Copy link
Contributor Author

tambry commented May 6, 2025

@anutosh491 Yep, precisely. That's what I did here.

@anutosh491
Copy link
Member

I did the same and worked pretty smoothly. Thank you :)

@tambry
Copy link
Contributor Author

tambry commented May 6, 2025

Someone probably ought to open an issue for this caveat.

@anutosh491
Copy link
Member

anutosh491 commented May 6, 2025

Someone probably ought to open an issue for this caveat.

I don't know who would be responsible for looking into this just yet :|

Can we raise something (a quick one liner issue pointing this out) and tag someone responsible for this ?

@mstorsjo
Copy link
Member

mstorsjo commented May 6, 2025

Seems like the cherry-pick only works if the branch of the PR still exists. 🤔

That's not my experience with it. It looks like the cherry-pick command yesterday just hit an unrelated issue: https://github.com/llvm/llvm-project/actions/runs/14837157160/job/41650945562

@tambry
Copy link
Contributor Author

tambry commented May 6, 2025

I presumed the 401 being the error being returned for it trying to query a repo/branch that no longer existed.
But if it was just a temporary blip, then great. 🙂

IanWood1 pushed a commit to IanWood1/llvm-project that referenced this pull request May 6, 2025
IanWood1 pushed a commit to IanWood1/llvm-project that referenced this pull request May 6, 2025
IanWood1 pushed a commit to IanWood1/llvm-project that referenced this pull request May 6, 2025
GeorgeARM pushed a commit to GeorgeARM/llvm-project that referenced this pull request May 7, 2025
swift-ci pushed a commit to swiftlang/llvm-project that referenced this pull request May 9, 2025
Futureproofs our single Debian-specific special case for roughly the next 6 years.

See: https://lists.debian.org/debian-devel-announce/2025/01/msg00004.html
(cherry picked from commit 58e6883)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
clang:driver 'clang' and 'clang++' user-facing binaries. Not 'clang-cl' clang Clang issues not falling into any other category
Projects
Development

Successfully merging this pull request may close these issues.

6 participants