diff options
author | Chia-I Wu <[email protected]> | 2010-02-18 12:38:47 +0800 |
---|---|---|
committer | Chia-I Wu <[email protected]> | 2010-02-18 13:07:01 +0800 |
commit | 9a939adf7d25f273048d5f92cf9d96d10e664c23 (patch) | |
tree | ce77df33a6c0815bebc5e79ed9888814453307ea /src/gallium | |
parent | d449627829e1a4a3250a1a723af2f4e3cd5fd194 (diff) |
winsys/drm: Do not use --whole-archive in Makefile.egl.
--whole-archive is not portable. Have the drivers reference _eglMain as
a poor man's --whole-archive.
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/winsys/drm/Makefile.egl | 3 | ||||
-rw-r--r-- | src/gallium/winsys/drm/i965/egl/dummy.c | 4 | ||||
-rw-r--r-- | src/gallium/winsys/drm/intel/egl/dummy.c | 4 | ||||
-rw-r--r-- | src/gallium/winsys/drm/nouveau/egl/dummy.c | 4 | ||||
-rw-r--r-- | src/gallium/winsys/drm/radeon/egl/dummy.c | 4 | ||||
-rw-r--r-- | src/gallium/winsys/drm/swrast/egl/dummy.c | 4 | ||||
-rw-r--r-- | src/gallium/winsys/drm/vmware/egl/dummy.c | 4 |
7 files changed, 19 insertions, 8 deletions
diff --git a/src/gallium/winsys/drm/Makefile.egl b/src/gallium/winsys/drm/Makefile.egl index b1f20385502..8363de6e975 100644 --- a/src/gallium/winsys/drm/Makefile.egl +++ b/src/gallium/winsys/drm/Makefile.egl @@ -38,8 +38,7 @@ $(EGL_DISPLAY_LIBS): $(TOP)/$(LIB_DIR)/%.so: %.so define mklib-egl $(MKLIB) -o $@ -noprefix -linker '$(CC)' -ldflags '$(LDFLAGS)' \ - $(MKLIB_OPTIONS) $(EGL_DRIVER_OBJECTS) \ - -Wl,--whole-archive $($(1)_ST) -Wl,--no-whole-archive \ + $(MKLIB_OPTIONS) $(EGL_DRIVER_OBJECTS) $($(1)_ST) \ $(EGL_DRIVER_PIPES) $(GALLIUM_AUXILIARIES) $($(1)_LIBS) $(EGL_DRIVER_LIBS) endef diff --git a/src/gallium/winsys/drm/i965/egl/dummy.c b/src/gallium/winsys/drm/i965/egl/dummy.c index 4a1bc28b0b6..3181d0ba7e8 100644 --- a/src/gallium/winsys/drm/i965/egl/dummy.c +++ b/src/gallium/winsys/drm/i965/egl/dummy.c @@ -1 +1,3 @@ -/* mklib expects at least one object file */ +/* A poor man's --whole-archive for EGL drivers */ +void *_eglMain(void *); +void *_eglWholeArchive = (void *) _eglMain; diff --git a/src/gallium/winsys/drm/intel/egl/dummy.c b/src/gallium/winsys/drm/intel/egl/dummy.c index 4a1bc28b0b6..3181d0ba7e8 100644 --- a/src/gallium/winsys/drm/intel/egl/dummy.c +++ b/src/gallium/winsys/drm/intel/egl/dummy.c @@ -1 +1,3 @@ -/* mklib expects at least one object file */ +/* A poor man's --whole-archive for EGL drivers */ +void *_eglMain(void *); +void *_eglWholeArchive = (void *) _eglMain; diff --git a/src/gallium/winsys/drm/nouveau/egl/dummy.c b/src/gallium/winsys/drm/nouveau/egl/dummy.c index 4a1bc28b0b6..3181d0ba7e8 100644 --- a/src/gallium/winsys/drm/nouveau/egl/dummy.c +++ b/src/gallium/winsys/drm/nouveau/egl/dummy.c @@ -1 +1,3 @@ -/* mklib expects at least one object file */ +/* A poor man's --whole-archive for EGL drivers */ +void *_eglMain(void *); +void *_eglWholeArchive = (void *) _eglMain; diff --git a/src/gallium/winsys/drm/radeon/egl/dummy.c b/src/gallium/winsys/drm/radeon/egl/dummy.c index 4a1bc28b0b6..3181d0ba7e8 100644 --- a/src/gallium/winsys/drm/radeon/egl/dummy.c +++ b/src/gallium/winsys/drm/radeon/egl/dummy.c @@ -1 +1,3 @@ -/* mklib expects at least one object file */ +/* A poor man's --whole-archive for EGL drivers */ +void *_eglMain(void *); +void *_eglWholeArchive = (void *) _eglMain; diff --git a/src/gallium/winsys/drm/swrast/egl/dummy.c b/src/gallium/winsys/drm/swrast/egl/dummy.c index 4a1bc28b0b6..3181d0ba7e8 100644 --- a/src/gallium/winsys/drm/swrast/egl/dummy.c +++ b/src/gallium/winsys/drm/swrast/egl/dummy.c @@ -1 +1,3 @@ -/* mklib expects at least one object file */ +/* A poor man's --whole-archive for EGL drivers */ +void *_eglMain(void *); +void *_eglWholeArchive = (void *) _eglMain; diff --git a/src/gallium/winsys/drm/vmware/egl/dummy.c b/src/gallium/winsys/drm/vmware/egl/dummy.c index 4a1bc28b0b6..3181d0ba7e8 100644 --- a/src/gallium/winsys/drm/vmware/egl/dummy.c +++ b/src/gallium/winsys/drm/vmware/egl/dummy.c @@ -1 +1,3 @@ -/* mklib expects at least one object file */ +/* A poor man's --whole-archive for EGL drivers */ +void *_eglMain(void *); +void *_eglWholeArchive = (void *) _eglMain; |