function (cxx_target_compile_options compiler)
    list (REMOVE_AT ARGV 0)
    if (${CMAKE_CXX_COMPILER_ID} STREQUAL ${compiler})
        target_compile_options (${ARGV})
    endif()
endfunction()

function (cxx_target_compile_definitions compiler)
    list (REMOVE_AT ARGV 0)
    if (${CMAKE_CXX_COMPILER_ID} STREQUAL ${compiler})
        target_compile_definitions (${ARGV})
    endif()
endfunction()

function (cxx_add_compile_options compiler)
    list (REMOVE_AT ARGV 0)
    if (${CMAKE_CXX_COMPILER_ID} STREQUAL ${compiler})
        add_compile_options (${ARGV})
    endif()
endfunction()
