diff options
| author | Linus Torvalds <torvalds@home.transmeta.com> | 2002-05-22 20:35:24 -0700 |
|---|---|---|
| committer | Linus Torvalds <torvalds@home.transmeta.com> | 2002-05-22 20:35:24 -0700 |
| commit | 85ecde67c552a378e3b7df50bca1a8fe8fc18456 (patch) | |
| tree | e828ac3ac36053be3134bb55561877f433a372b9 /include/linux | |
| parent | 62bfdbe83d7ce9efa6e511652071063d5b121a54 (diff) | |
| parent | a6bf5d9a10436c2ce8e668942d78a51aea290d03 (diff) | |
Merge http://linux-isdn.bkbits.net/linux-2.5.export
into home.transmeta.com:/home/torvalds/v2.5/linux
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/module.h | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/include/linux/module.h b/include/linux/module.h index 1021d58d1742..7dae60a448fa 100644 --- a/include/linux/module.h +++ b/include/linux/module.h @@ -349,13 +349,6 @@ extern struct module *module_list; /* We want the EXPORT_SYMBOL tag left intact for recognition. */ -#elif !defined(AUTOCONF_INCLUDED) - -#define __EXPORT_SYMBOL(sym,str) error config_must_be_included_before_module -#define EXPORT_SYMBOL(var) error config_must_be_included_before_module -#define EXPORT_SYMBOL_NOVERS(var) error config_must_be_included_before_module -#define EXPORT_SYMBOL_GPL(var) error config_must_be_included_before_module - #elif !defined(CONFIG_MODULES) #define __EXPORT_SYMBOL(sym,str) @@ -370,8 +363,6 @@ extern struct module *module_list; #define EXPORT_SYMBOL_NOVERS(var) error this_object_must_be_defined_as_export_objs_in_the_Makefile #define EXPORT_SYMBOL_GPL(var) error this_object_must_be_defined_as_export_objs_in_the_Makefile -__asm__(".section __ksymtab,\"a\"\n.previous"); - #else #define __EXPORT_SYMBOL(sym, str) \ @@ -400,12 +391,23 @@ __attribute__((section("__ksymtab"))) = \ #endif /* __GENKSYMS__ */ -#ifdef MODULE -/* Force a module to export no symbols. */ -#define EXPORT_NO_SYMBOLS __asm__(".section __ksymtab\n.previous") -#else +/* + * Force a module to export no symbols. + * EXPORT_NO_SYMBOLS is default now, leave the define around for sources + * which still have it + */ #define EXPORT_NO_SYMBOLS -#endif /* MODULE */ + +#ifdef CONFIG_MODULES +/* + * Always allocate a section "__ksymtab". If we encounter EXPORT_SYMBOL, + * the exported symbol will be added to it. + * If it remains empty, that tells modutils that we do not want to + * export any symbols (as opposed to it not being present, which means + * "export all symbols" to modutils) + */ +__asm__(".section __ksymtab,\"a\"\n.previous"); +#endif #ifdef CONFIG_MODULES #define SET_MODULE_OWNER(some_struct) do { (some_struct)->owner = THIS_MODULE; } while (0) |
