Skip to content

Linker.cmake should use target_link_options instead of target_compile_options  #72

Description

@CramBL

target_compile_options(${project_name} INTERFACE ${LINKER_FLAG})

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!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions