Rework symbol visibility for easier maintenance

Save in a few special cases, _X_EXPORT should not be used in C source
files. Instead, it should be used in headers, and the proper C source
include that header. Some special cases are symbols that need to be
shared between modules, but not expected to be used by external drivers,
and symbols that are accessible via LoaderSymbol/dlopen.

  This patch also adds conditionally some new sdk header files, depending
on extensions enabled. These files were added to match pattern for
other extensions/modules, that is, have the headers "deciding" symbol
visibility in the sdk. These headers are:
o Xext/panoramiXsrv.h, Xext/panoramiX.h
o fbpict.h (unconditionally)
o vidmodeproc.h
o mioverlay.h (unconditionally, used only by xaa)
o xfixes.h (unconditionally, symbols required by dri2)

  LoaderSymbol and similar functions now don't have different prototypes,
in loaderProcs.h and xf86Module.h, so that both headers can be included,
without the need of defining IN_LOADER.

  xf86NewInputDevice() device prototype readded to xf86Xinput.h, but
not exported (and with a comment about it).
This commit is contained in:
Paulo Cesar Pereira de Andrade 2008-12-03 05:43:34 -02:00
commit 49f77fff14
528 changed files with 5964 additions and 5880 deletions

View file

@ -53,7 +53,7 @@
#include "xf86RAC.h"
/* Bus-specific globals */
_X_EXPORT Bool pciSlotClaimed = FALSE;
Bool pciSlotClaimed = FALSE;
static struct pci_device ** xf86PciVideoInfo = NULL; /* PCI probe for video hw */
@ -97,7 +97,7 @@ static struct pci_device ** xf86PciVideoInfo = NULL; /* PCI probe for video hw *
|| IS_VGA(c) )
_X_EXPORT void
void
xf86FormatPciBusNumber(int busnum, char *buffer)
{
/* 'buffer' should be at least 8 characters long */
@ -701,7 +701,7 @@ DisablePciBusAccess(void)
* Otherwise, claim the slot for the screen requesting it.
*/
_X_EXPORT int
int
xf86ClaimPciSlot(struct pci_device * d, DriverPtr drvp,
int chipset, GDevPtr dev, Bool active)
{
@ -759,7 +759,7 @@ xf86ClaimPciSlot(struct pci_device * d, DriverPtr drvp,
* in the correct format for a PCI bus id.
*/
_X_EXPORT Bool
Bool
xf86ParsePciBusString(const char *busID, int *bus, int *device, int *func)
{
/*
@ -833,7 +833,7 @@ xf86ParsePciBusString(const char *busID, int *bus, int *device, int *func)
* Compare a BUS ID string with a PCI bus id. Return TRUE if they match.
*/
_X_EXPORT Bool
Bool
xf86ComparePciBusString(const char *busID, int bus, int device, int func)
{
int ibus, idevice, ifunc;
@ -850,7 +850,7 @@ xf86ComparePciBusString(const char *busID, int bus, int device, int func)
* is PCI and bus, dev and func numbers match.
*/
_X_EXPORT Bool
Bool
xf86IsPrimaryPci(struct pci_device *pPci)
{
return ((primaryBus.type == BUS_PCI) && (pPci == primaryBus.id.pci));
@ -859,7 +859,7 @@ xf86IsPrimaryPci(struct pci_device *pPci)
/*
* xf86GetPciInfoForEntity() -- Get the pciVideoRec of entity.
*/
_X_EXPORT struct pci_device *
struct pci_device *
xf86GetPciInfoForEntity(int entityIndex)
{
EntityPtr p;
@ -875,7 +875,7 @@ xf86GetPciInfoForEntity(int entityIndex)
* xf86CheckPciMemBase() checks that the memory base value matches one of the
* PCI base address register values for the given PCI device.
*/
_X_EXPORT Bool
Bool
xf86CheckPciMemBase( struct pci_device * pPci, memType base )
{
int i;
@ -890,7 +890,7 @@ xf86CheckPciMemBase( struct pci_device * pPci, memType base )
* Check if the slot requested is free. If it is already in use, return FALSE.
*/
_X_EXPORT Bool
Bool
xf86CheckPciSlot(const struct pci_device *d)
{
int i;