Linker.cmake should use target_link_options instead of target_compile_options

Abierto
#72 0 comentarios 2 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
1/5
Tiempo estimado
Menos de una hora
Aptitud para principiantes
58/100
Tipo de issue
Error
Claridad
Bien especificado
Estado de actividad
Estancado
Stack tecnológico
cmake
Área
build-system

Línea de trabajo

Abre cmake/Linker.cmake en la línea 29 y compara la llamada actual a target_compile_options con el comando target_link_options descrito en el issue. Se considera terminado cuando los flags específicos del linker se aplican en el momento del enlazado en lugar de en el momento de la compilación, evitando la advertencia de argumento no utilizado informada en las configuraciones afectadas.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

https://github.com/cpp-best-practices/cmake_template/blob/d19d8921771ba582824948f0cc57f849a5c6efd8/cmake/Linker.cmake#L29

From my understanding target_compile_options can be replaced by the more appropriate target_link_options.

Motivation

Functionally there's no difference, but adding linker-specific flags to the compilation step will raise warnings e.g. clang: error: argument unused during compilation: '-fuse-ld=mold' [-Werror,-Wunused-command-line-argument] in certain setups.

Example from CI in a project of mine. Treating warnings as errors means this harmless warning caused CI to fail.

Using target_link_options resolved it.

Thank you for sharing and maintaining this template project, it is a tremendous help!

Lenguaje dominante
CMake
Estrellas
1.8k
Forks
205
Métricas de merge de PR
Sin PR fusionados en 30 d

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

  • Sin Dockerfile ni archivo de Docker Compose
  • Sin plantilla de pull request
  • Sin guía de contribución

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de cpp-best-practices/cmake_template

Todos los issues de cpp-best-practices/cmake_template

Issues similares

Más issues de Build System

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.