
-V prints the version information in both BSD and GNU ar/ranlib. BSD ranlib rejects -v while -v enables verbose output in GNU ar but is another alias for --version in GNU ranlib. The GNU ranlib behavior is inconsistent: `ranlib -v` is different from `ar -sv`. But it's not a major concern in practice: * Users typically use ranlib solely for creating archive symbol tables, and they don't need verbose output. * Verbose output in ranlib seems a no-op. * GNU ar creates an archive symbol table by default. Many ranlib uses have been eliminated. * Modern linkers like lld/ELF (since version 14) and mold don't rely on archive symbol tables anymore. https://reviews.llvm.org/D71554 introduced -v. This patch removes it so that `llvm-ranlib -v` and `llvm-ranlib -version` lead to errors (GNU ranlib rejects `-version` as well). -V is added as an alias for --version. Close #87654 Pull Request: https://github.com/llvm/llvm-project/pull/87661
27 lines
1.1 KiB
Plaintext
27 lines
1.1 KiB
Plaintext
## Show that the help message for llvm-ranlib can be printed with either the
|
|
## long flag -help.
|
|
|
|
# RUN: llvm-ranlib -h | FileCheck %s --check-prefix=HELP
|
|
# RUN: llvm-ranlib -help | FileCheck %s --check-prefix=HELP
|
|
# RUN: llvm-ranlib --help | FileCheck %s --check-prefix=HELP
|
|
# RUN: llvm-ranlib --version | FileCheck %s --check-prefix=VERSION
|
|
# RUN: llvm-ranlib -V | FileCheck %s --check-prefix=VERSION
|
|
|
|
## Also check combined options (first -h/-v flag wins)
|
|
# RUN: llvm-ranlib -Dh | FileCheck %s --check-prefix=HELP
|
|
# RUN: llvm-ranlib -DVh | FileCheck %s --check-prefix=VERSION
|
|
# RUN: llvm-ranlib -DhV | FileCheck %s --check-prefix=HELP
|
|
|
|
# HELP: USAGE: llvm-ranlib
|
|
# VERSION: version
|
|
|
|
## -v enables verbose output in BSD ranlib and GNU ar but is another alias
|
|
## for --version in GNU ranlib. Reject -v.
|
|
# RUN: not llvm-ranlib -v 2>&1 | FileCheck %s --check-prefix=ERR1
|
|
# RUN: not llvm-ranlib -version 2>&1 | FileCheck %s --check-prefix=ERR2
|
|
# RUN: not llvm-ranlib -Dvh 2>&1 | FileCheck %s --check-prefix=ERR3
|
|
|
|
# ERR1: error: Invalid option: '-v'
|
|
# ERR2: error: Invalid option: '-version'
|
|
# ERR3: error: Invalid option: '-vh'
|