diff options
-rw-r--r-- | apt-pkg/contrib/macros.h | 2 | ||||
-rw-r--r-- | apt-private/private-cmndline.cc | 4 | ||||
-rw-r--r-- | apt-private/private-cmndline.h | 4 |
3 files changed, 8 insertions, 2 deletions
diff --git a/apt-pkg/contrib/macros.h b/apt-pkg/contrib/macros.h index afa385c75..c361bded1 100644 --- a/apt-pkg/contrib/macros.h +++ b/apt-pkg/contrib/macros.h @@ -76,12 +76,14 @@ #define APT_PURE __attribute__((pure)) #define APT_NORETURN __attribute__((noreturn)) #define APT_PRINTF(n) __attribute__((format(printf, n, n + 1))) + #define APT_WEAK __attribute__((weak)); #else #define APT_DEPRECATED #define APT_CONST #define APT_PURE #define APT_NORETURN #define APT_PRINTF(n) + #define APT_WEAK #endif #if APT_GCC_VERSION > 0x0302 diff --git a/apt-private/private-cmndline.cc b/apt-private/private-cmndline.cc index 4231c4f0e..9c5eae470 100644 --- a/apt-private/private-cmndline.cc +++ b/apt-private/private-cmndline.cc @@ -514,3 +514,7 @@ unsigned short DispatchCommandLine(CommandLine &CmdL, std::vector<CommandLine::D return Errors == true ? 100 : 0; } /*}}}*/ + +// weak symbols +bool ShowHelp(CommandLine &) { return false; } +std::vector<aptDispatchWithHelp> GetCommands() { return {}; } diff --git a/apt-private/private-cmndline.h b/apt-private/private-cmndline.h index 819eb77cc..4819adce1 100644 --- a/apt-private/private-cmndline.h +++ b/apt-private/private-cmndline.h @@ -23,14 +23,14 @@ enum class APT_CMD { APT_SORTPKG, }; -bool ShowHelp(CommandLine &CmdL); +APT_PUBLIC bool ShowHelp(CommandLine &CmdL) APT_WEAK; struct aptDispatchWithHelp { const char *Match; bool (*Handler)(CommandLine &); const char *Help; }; -std::vector<aptDispatchWithHelp> GetCommands(); +APT_PUBLIC std::vector<aptDispatchWithHelp> GetCommands() APT_WEAK; APT_PUBLIC std::vector<CommandLine::Dispatch> ParseCommandLine(CommandLine &CmdL, APT_CMD const Binary, Configuration * const * const Cnf, pkgSystem ** const Sys, int const argc, const char * argv[]); |