1 // SPDX-License-Identifier: GPL-2.0-or-later 2 /* 3 * Copyright (C) 2020 Matt Helsley <mhelsley@vmware.com> 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 const char __weak *objname; 21 22 int __weak check(const char *_objname, bool orc) 23 { 24 UNSUPPORTED("check subcommand"); 25 } 26 27 int __weak orc_dump(const char *_objname) 28 { 29 UNSUPPORTED("orc"); 30 } 31 32 int __weak create_orc(struct objtool_file *file) 33 { 34 UNSUPPORTED("orc"); 35 } 36 37 int __weak create_orc_sections(struct objtool_file *file) 38 { 39 UNSUPPORTED("orc"); 40 } 41