1 // SPDX-License-Identifier: GPL-2.0-or-later 2 /* 3 * Copyright (C) 2020 Matt Helsley <[email protected]> 4 * Weak definitions necessary to compile objtool without 5 * some subcommands (e.g. check, orc). 6 */ 7 8 #include <stdbool.h> 9 #include <errno.h> 10 #include "objtool.h" 11 12 #define __weak __attribute__((weak)) 13 14 #define UNSUPPORTED(name) \ 15 ({ \ 16 fprintf(stderr, "error: objtool: " name " not implemented\n"); \ 17 return ENOSYS; \ 18 }) 19 20 int __weak check(struct objtool_file *file) 21 { 22 UNSUPPORTED("check subcommand"); 23 } 24 25 int __weak orc_dump(const char *_objname) 26 { 27 UNSUPPORTED("orc"); 28 } 29 30 int __weak create_orc(struct objtool_file *file) 31 { 32 UNSUPPORTED("orc"); 33 } 34 35 int __weak create_orc_sections(struct objtool_file *file) 36 { 37 UNSUPPORTED("orc"); 38 } 39