abseil / abseil/abseil-cpp

[Bug]: Unusable for installable projects whose other dependencies also define a `check` target

Aperta
#1,641 4 commenti 1 reazione 0 assegnatari Vedi su GitHub
Lingua principale
C++
Stelle
18.1k
Fork
3.2k
Merge medio
20h 36m
PR unite (30g)
1

Descrizione

### Describe the issue

I am working on a project that depends on LLVM. LLVM uses installable targets (using CMake's `install` command), which forces my project to do the same. If I want to use `abseil-cpp` or any project that depends on it, I thus need to set `ABSL_ENABLE_INSTALL=ON`.

Furthermore, LLVM also defines a `check` target in its CMake files. This clashes with the `check` target of Abseil.

This only happens with `ABSL_ENABLE_INSTALL=ON`. Otherwise, the target names are prefixed with `absl_`, see the [definition of `absl_cc_library`](https://github.com/abseil/abseil-cpp/blob/16e2195/CMake/AbseilHelpers.cmake#L98-L102).

### Steps to reproduce the problem

-

### What version of Abseil are you using?

Any version from about four years ago until today.

### What operating system and version are you using?

Any.

### What compiler and version are you using?

Any.

### What build system are you using?

Any version of CMake older than 2.6.0.

### Additional context

Of course, the clash is also due to to LLVM using a non-prefixed target name. However, I'd argue that this doesn't absolve `abseil-cpp` from being well-behaved and prefix it's target names as an effort to keep them unique no matter what other project it is used with.

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.