[clang] [flang] [Flang][Driver] Enable the -B option (PR #109965)

Tom Eccles via cfe-commits cfe-commits at lists.llvm.org
Wed Sep 25 06:01:09 PDT 2024


================
@@ -0,0 +1,23 @@
+! Check -B driver option.
+!
+! Target triple prefix is not detected for -B.
+! RUN: %flang %s -### -o %t.o -target i386-unknown-linux \
+! RUN:     -B %S/Inputs/B_opt_tree/dir1 -fuse-ld=ld 2>&1 \
+! RUN:   | FileCheck --check-prefix=CHECK-B-OPT-TRIPLE %s
+! CHECK-B-OPT-TRIPLE-NOT: "{{.*}}/Inputs/B_opt_tree/dir1{{/|\\\\}}i386-unknown-linux-ld"
+!
+! RUN: %flang %s -### -o %t.o -target i386-unknown-linux \
+! RUN:     -B %S/Inputs/B_opt_tree/dir2 -fuse-ld=ld 2>&1 \
+! RUN:   | FileCheck --check-prefix=CHECK-B-OPT-DIR %s
+! CHECK-B-OPT-DIR: "{{.*}}/Inputs/B_opt_tree/dir2{{/|\\\\}}ld"
+!
+! RUN: %flang %s -### -o %t.o -target i386-unknown-linux \
+! RUN:     -B %S/Inputs/B_opt_tree/dir3/prefix- -fuse-ld=ld 2>&1 \
+! RUN:   | FileCheck --check-prefix=CHECK-B-OPT-PREFIX %s
+! CHECK-B-OPT-PREFIX: "{{.*}}/Inputs/B_opt_tree/dir3{{/|\\\\}}prefix-ld"
+!
+! RUN: %flang %s -### -o %t.o -target i386-unknown-linux \
+! RUN:     -B %S/Inputs/B_opt_tree/dir3/prefix- \
+! RUN:     -B %S/Inputs/B_opt_tree/dir2 2>&1 -fuse-ld=ld \
+! RUN:   | FileCheck --check-prefix=CHECK-B-OPT-MULT %s
+! CHECK-B-OPT-MULT: "{{.*}}/Inputs/B_opt_tree/dir3{{/|\\\\}}prefix-ld"
----------------
tblah wrote:

It is a bit surprising that we take the first version of `-B`. Most things use the last argument.

But if this is just copied from clang, it is better to mimic clang's behavior, and I don't think this would be safe to fix in clang because it could break existing build scripts.

https://github.com/llvm/llvm-project/pull/109965


More information about the cfe-commits mailing list