mirror of
https://github.com/X11Libre/xserver.git
synced 2026-09-26 21:12:25 +00:00
Remove static symbol address tables in hw/xfree86/loader/*sym.{c,h}
Those tables were once used to decide what symbols are visible to modules, but they were outdated. The only real usage was that, since it was taking the address of symbols, linkage should fail if the symbols were not available. Now the proper way to make symbols available to modules should be to use the _X_EXPORT macro, or not compile with hidden symbols, so that all symbols would be available. All symbols in the tables were revised to ensure they are exported, and only symbols that were not exported are ClientSleepUntil() and DuplicateModule(), that were not in the sdk for quite some time already, and should not have any users outside of the X Server (and/or builtin modules).
This commit is contained in:
parent
091a50d126
commit
44c8c3cf7d
9 changed files with 7 additions and 1764 deletions
|
|
@ -53,8 +53,6 @@
|
|||
#ifndef _LOADERPROCS_H
|
||||
#define _LOADERPROCS_H
|
||||
|
||||
#undef IN_LOADER
|
||||
#define IN_LOADER
|
||||
#include "xf86Module.h"
|
||||
#include <X11/fonts/fontmod.h>
|
||||
|
||||
|
|
@ -79,12 +77,7 @@ ModuleDescPtr LoadDriver(const char *, const char *, int, pointer, int *,
|
|||
ModuleDescPtr LoadModule(const char *, const char *, const char **,
|
||||
const char **, pointer, const XF86ModReqInfo *,
|
||||
int *, int *);
|
||||
pointer LoadSubModule(pointer, const char *,
|
||||
const char **, const char **, pointer,
|
||||
const XF86ModReqInfo *, int *, int *);
|
||||
ModuleDescPtr DuplicateModule(ModuleDescPtr mod, ModuleDescPtr parent);
|
||||
void UnloadModule(pointer);
|
||||
void UnloadSubModule(pointer);
|
||||
void UnloadDriver(ModuleDescPtr);
|
||||
void LoaderSetPath(const char *path);
|
||||
void LoaderSortExtensions(void);
|
||||
|
|
|
|||
Loading…
Reference in a new issue