diff options
author | Matt Fleming <matt.fleming@intel.com> | 2012-04-02 12:53:59 +0100 |
---|---|---|
committer | Matt Fleming <matt.fleming@intel.com> | 2012-04-17 10:58:33 +0100 |
commit | 0132132022e73d5720121695a9b96fe2eb264d80 (patch) | |
tree | 73331b8a1b4dbca4869dbeaf409bade4e6d90bd3 | |
parent | 85598d328b2cc544338c49dc2776ff0bb27a8bd4 (diff) | |
download | syslinux-0132132022e73d5720121695a9b96fe2eb264d80.tar.gz syslinux-0132132022e73d5720121695a9b96fe2eb264d80.tar.xz syslinux-0132132022e73d5720121695a9b96fe2eb264d80.zip |
ldlinux: Tag __syslinux_init() as __constructor
We don't need to have control over exactly when __syslinux_init() is
executed, it just needs to be before we call syslinux_get_adv(). Let's
apply the __constructor tag to __syslinux_init() so that it is
executed before we enter ldlinux.c32's main(). This partially reverts
commit 487b67a9ce ("ldlinux: Remove __constructor attribute") because
we can now have __constructor functions in ldlinux.
By not calling __syslinux_init() directly we also avoid the following
build warning,
ldlinux.c: In function ‘main’:
ldlinux.c:131:2: warning: implicit declaration of function ‘__syslinux_init’
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
-rw-r--r-- | com32/elflink/ldlinux/adv.c | 2 | ||||
-rw-r--r-- | com32/elflink/ldlinux/ldlinux.c | 1 |
2 files changed, 1 insertions, 2 deletions
diff --git a/com32/elflink/ldlinux/adv.c b/com32/elflink/ldlinux/adv.c index 78695471..b81361f2 100644 --- a/com32/elflink/ldlinux/adv.c +++ b/com32/elflink/ldlinux/adv.c @@ -40,7 +40,7 @@ void *__syslinux_adv_ptr; size_t __syslinux_adv_size; extern void adv_init(void); -void __syslinux_init(void) +void __constructor __syslinux_init(void) { static com32sys_t reg; diff --git a/com32/elflink/ldlinux/ldlinux.c b/com32/elflink/ldlinux/ldlinux.c index 56777b14..3cf6513d 100644 --- a/com32/elflink/ldlinux/ldlinux.c +++ b/com32/elflink/ldlinux/ldlinux.c @@ -128,7 +128,6 @@ int main(int argc, char **argv) parse_configs(config_argv); - __syslinux_init(); adv = syslinux_getadv(ADV_BOOTONCE, &count); if (adv && count) { /* |