[syslinux:elflink] ldlinux: Tag __syslinux_init() as __constructor
syslinux-bot for Matt Fleming
matt.fleming at intel.com
Tue Apr 17 11:24:12 PDT 2012
Commit-ID: 0132132022e73d5720121695a9b96fe2eb264d80
Gitweb: http://www.syslinux.org/commit/0132132022e73d5720121695a9b96fe2eb264d80
Author: Matt Fleming <matt.fleming at intel.com>
AuthorDate: Mon, 2 Apr 2012 12:53:59 +0100
Committer: Matt Fleming <matt.fleming at intel.com>
CommitDate: Tue, 17 Apr 2012 10:58:33 +0100
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 at intel.com>
---
com32/elflink/ldlinux/adv.c | 2 +-
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 7869547..b81361f 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 56777b1..3cf6513 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) {
/*
More information about the Syslinux-commits
mailing list