common: Define markers for weak symbols

This patch introduces macros to mark weak symbols. These macros are
used to annotate weak definitions, declarations, and overriding
definitions.

__override_proto: declarations
__override: definitions which take precedence
__overridable: default (weak) definitions

Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org>

BUG=chromium.org/964060
BRANCH=none
TEST=buildall

Change-Id: I44cec41e0523e285db19a890d084b52337f64a9c
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/1633911
Reviewed-by: Jack Rosenthal <jrosenth@chromium.org>
Reviewed-by: Denis Brockus <dbrockus@chromium.org>
Reviewed-by: Jett Rink <jettrink@chromium.org>
Tested-by: Jack Rosenthal <jrosenth@chromium.org>
Commit-Queue: Denis Brockus <dbrockus@chromium.org>
1 file changed