xfree86: allow modules to be built without undefined symbols
This will be necessary to port Xorg to Cygwin, but other platforms may find this useful as well. Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net> Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk> Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
This commit is contained in:
		
							parent
							
								
									12cd7ca83c
								
							
						
					
					
						commit
						fd115ee114
					
				| 
						 | 
					@ -1070,6 +1070,7 @@ if test "x$GLX_USE_TLS" = xyes ; then
 | 
				
			||||||
	GLX_SYS_LIBS="$GLX_SYS_LIBS -lpthread"
 | 
						GLX_SYS_LIBS="$GLX_SYS_LIBS -lpthread"
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
AC_SUBST([GLX_DEFINES])
 | 
					AC_SUBST([GLX_DEFINES])
 | 
				
			||||||
 | 
					AC_SUBST([GLX_SYS_LIBS])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
AM_CONDITIONAL(DRI, test "x$DRI" = xyes)
 | 
					AM_CONDITIONAL(DRI, test "x$DRI" = xyes)
 | 
				
			||||||
if test "x$DRI" = xyes; then
 | 
					if test "x$DRI" = xyes; then
 | 
				
			||||||
| 
						 | 
					@ -1471,7 +1472,10 @@ AC_SUBST([UTILS_SYS_LIBS])
 | 
				
			||||||
# Some platforms require extra flags to do this.   libtool should set the
 | 
					# Some platforms require extra flags to do this.   libtool should set the
 | 
				
			||||||
# necessary flags for each platform when -export-dynamic is passed to it.
 | 
					# necessary flags for each platform when -export-dynamic is passed to it.
 | 
				
			||||||
LD_EXPORT_SYMBOLS_FLAG="-export-dynamic"
 | 
					LD_EXPORT_SYMBOLS_FLAG="-export-dynamic"
 | 
				
			||||||
 | 
					LD_NO_UNDEFINED_FLAG=
 | 
				
			||||||
AC_SUBST([LD_EXPORT_SYMBOLS_FLAG])
 | 
					AC_SUBST([LD_EXPORT_SYMBOLS_FLAG])
 | 
				
			||||||
 | 
					AC_SUBST([LD_NO_UNDEFINED_FLAG])
 | 
				
			||||||
 | 
					AM_CONDITIONAL([NO_UNDEFINED], [test x"$LD_NO_UNDEFINED_FLAG" != x])
 | 
				
			||||||
 | 
					
 | 
				
			||||||
dnl Imake defines SVR4 on SVR4 systems, and many files check for it, so
 | 
					dnl Imake defines SVR4 on SVR4 systems, and many files check for it, so
 | 
				
			||||||
dnl we need to replicate that here until those can all be fixed
 | 
					dnl we need to replicate that here until those can all be fixed
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -30,35 +30,39 @@ INCLUDES = @XORG_INCS@ \
 | 
				
			||||||
           -I$(top_srcdir)/miext/shadow \
 | 
					           -I$(top_srcdir)/miext/shadow \
 | 
				
			||||||
           -I$(top_srcdir)/glx
 | 
					           -I$(top_srcdir)/glx
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libdbe_la_LDFLAGS = -module -avoid-version
 | 
					libdbe_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
libdbe_la_LIBADD = $(top_builddir)/dbe/libdbe.la
 | 
					libdbe_la_LIBADD = $(top_builddir)/dbe/libdbe.la
 | 
				
			||||||
libdbe_la_SOURCES = dbemodule.c
 | 
					libdbe_la_SOURCES = dbemodule.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libfb_la_LDFLAGS = -module -avoid-version
 | 
					libfb_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
libfb_la_LIBADD = $(top_builddir)/fb/libfb.la
 | 
					libfb_la_LIBADD = $(top_builddir)/fb/libfb.la
 | 
				
			||||||
libfb_la_SOURCES = $(top_builddir)/fb/fbcmap_mi.c fbmodule.c
 | 
					libfb_la_SOURCES = $(top_builddir)/fb/fbcmap_mi.c fbmodule.c
 | 
				
			||||||
libfb_la_CFLAGS = $(AM_CFLAGS)
 | 
					libfb_la_CFLAGS = $(AM_CFLAGS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libwfb_la_LDFLAGS = -module -avoid-version
 | 
					libwfb_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
libwfb_la_LIBADD = $(top_builddir)/fb/libwfb.la
 | 
					libwfb_la_LIBADD = $(top_builddir)/fb/libwfb.la
 | 
				
			||||||
libwfb_la_SOURCES = $(top_builddir)/fb/fbcmap_mi.c fbmodule.c
 | 
					libwfb_la_SOURCES = $(top_builddir)/fb/fbcmap_mi.c fbmodule.c
 | 
				
			||||||
libwfb_la_CFLAGS = $(AM_CFLAGS) -DFB_ACCESS_WRAPPER
 | 
					libwfb_la_CFLAGS = $(AM_CFLAGS) -DFB_ACCESS_WRAPPER
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libglx_la_LDFLAGS = -module -avoid-version
 | 
					libglx_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
 | 
					libglx_la_LIBADD = $(top_builddir)/glx/libglx.la $(GLX_SYS_LIBS)
 | 
				
			||||||
if AIGLX_DRI_LOADER
 | 
					if AIGLX_DRI_LOADER
 | 
				
			||||||
GLXDRI_LIBRARY = $(top_builddir)/glx/libglxdri.la
 | 
					libglx_la_LIBADD += $(top_builddir)/glx/libglxdri.la
 | 
				
			||||||
 | 
					if NO_UNDEFINED
 | 
				
			||||||
 | 
					libglx_la_LIBADD += ../dri/libdri.la ../dri2/libdri2.la
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
libglx_la_LIBADD = \
 | 
					 | 
				
			||||||
	$(top_builddir)/glx/libglx.la \
 | 
					 | 
				
			||||||
	$(GLXDRI_LIBRARY)
 | 
					 | 
				
			||||||
libglx_la_SOURCES = glxmodule.c
 | 
					libglx_la_SOURCES = glxmodule.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
librecord_la_LDFLAGS = -module -avoid-version
 | 
					librecord_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
librecord_la_LIBADD = $(top_builddir)/record/librecord.la
 | 
					librecord_la_LIBADD = $(top_builddir)/record/librecord.la
 | 
				
			||||||
librecord_la_SOURCES = recordmod.c
 | 
					librecord_la_SOURCES = recordmod.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libshadow_la_LDFLAGS = -module -avoid-version
 | 
					libshadow_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
libshadow_la_LIBADD = $(top_builddir)/miext/shadow/libshadow.la
 | 
					libshadow_la_LIBADD = $(top_builddir)/miext/shadow/libshadow.la
 | 
				
			||||||
 | 
					if NO_UNDEFINED
 | 
				
			||||||
 | 
					libshadow_la_LIBADD += libfb.la
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
libshadow_la_SOURCES = shmodule.c
 | 
					libshadow_la_SOURCES = shmodule.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libdixmods_la_SOURCES = $(top_srcdir)/mi/miinitext.c
 | 
					libdixmods_la_SOURCES = $(top_srcdir)/mi/miinitext.c
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -21,7 +21,7 @@ INCLUDES = @XORG_INCS@ \
 | 
				
			||||||
           -I$(top_srcdir)/hw/xfree86/loader \
 | 
					           -I$(top_srcdir)/hw/xfree86/loader \
 | 
				
			||||||
           -I$(top_srcdir)/miext/shadow
 | 
					           -I$(top_srcdir)/miext/shadow
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libextmod_la_LDFLAGS = -module -avoid-version
 | 
					libextmod_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
libextmod_la_SOURCES = modinit.c \
 | 
					libextmod_la_SOURCES = modinit.c \
 | 
				
			||||||
                       modinit.h \
 | 
					                       modinit.h \
 | 
				
			||||||
                       $(DGA_SRCS) \
 | 
					                       $(DGA_SRCS) \
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -12,7 +12,8 @@ libdri_la_CFLAGS = -I$(top_srcdir)/hw/xfree86/common \
 | 
				
			||||||
                   @DIX_CFLAGS@ @XORG_CFLAGS@ @DRIPROTO_CFLAGS@ \
 | 
					                   @DIX_CFLAGS@ @XORG_CFLAGS@ @DRIPROTO_CFLAGS@ \
 | 
				
			||||||
                   @LIBDRM_CFLAGS@ \
 | 
					                   @LIBDRM_CFLAGS@ \
 | 
				
			||||||
                   @DRI_CFLAGS@
 | 
					                   @DRI_CFLAGS@
 | 
				
			||||||
libdri_la_LDFLAGS = -module -avoid-version @LIBDRM_LIBS@
 | 
					libdri_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
 | 
					libdri_la_LIBADD = @LIBDRM_LIBS@
 | 
				
			||||||
libdri_ladir = $(moduledir)/extensions
 | 
					libdri_ladir = $(moduledir)/extensions
 | 
				
			||||||
libdri_la_SOURCES = \
 | 
					libdri_la_SOURCES = \
 | 
				
			||||||
	dri.c \
 | 
						dri.c \
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -6,7 +6,8 @@ libdri2_la_CFLAGS = \
 | 
				
			||||||
	-I$(top_srcdir)/hw/xfree86/common \
 | 
						-I$(top_srcdir)/hw/xfree86/common \
 | 
				
			||||||
	-I$(top_srcdir)/hw/xfree86/os-support/bus
 | 
						-I$(top_srcdir)/hw/xfree86/os-support/bus
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libdri2_la_LDFLAGS = -module -avoid-version @LIBDRM_LIBS@
 | 
					libdri2_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
 | 
					libdri2_la_LIBADD = @LIBDRM_LIBS@
 | 
				
			||||||
libdri2_ladir = $(moduledir)/extensions
 | 
					libdri2_ladir = $(moduledir)/extensions
 | 
				
			||||||
libdri2_la_SOURCES = \
 | 
					libdri2_la_SOURCES = \
 | 
				
			||||||
	dri2.c \
 | 
						dri2.c \
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,7 @@ SUBDIRS = man
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module_LTLIBRARIES = libexa.la
 | 
					module_LTLIBRARIES = libexa.la
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libexa_la_LDFLAGS = -module -avoid-version
 | 
					libexa_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
INCLUDES = \
 | 
					INCLUDES = \
 | 
				
			||||||
	$(XORG_INCS) \
 | 
						$(XORG_INCS) \
 | 
				
			||||||
| 
						 | 
					@ -15,4 +15,4 @@ libexa_la_SOURCES = \
 | 
				
			||||||
	examodule.c
 | 
						examodule.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libexa_la_LIBADD = \
 | 
					libexa_la_LIBADD = \
 | 
				
			||||||
	../../../exa/libexa.la
 | 
						../../../exa/libexa.la $(PIXMAN_LIBS)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -2,7 +2,7 @@ SUBDIRS = man
 | 
				
			||||||
 | 
					
 | 
				
			||||||
module_LTLIBRARIES = libfbdevhw.la
 | 
					module_LTLIBRARIES = libfbdevhw.la
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libfbdevhw_la_LDFLAGS = -module -avoid-version
 | 
					libfbdevhw_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if FBDEVHW
 | 
					if FBDEVHW
 | 
				
			||||||
libfbdevhw_la_SOURCES = fbdevhw.c
 | 
					libfbdevhw_la_SOURCES = fbdevhw.c
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -21,23 +21,26 @@ sdk_HEADERS = xf86i2c.h bt829.h fi1236.h msp3430.h tda8425.h tda9850.h tda9885.h
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
# i2c drivers
 | 
					# i2c drivers
 | 
				
			||||||
#
 | 
					#
 | 
				
			||||||
bt829_drv_la_LDFLAGS = -module -avoid-version
 | 
					bt829_drv_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
bt829_drv_la_SOURCES = bt829.c bt829.h bt829_module.c
 | 
					bt829_drv_la_SOURCES = bt829.c bt829.h bt829_module.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
fi1236_drv_la_LDFLAGS = -module -avoid-version
 | 
					fi1236_drv_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
fi1236_drv_la_SOURCES = fi1236.c fi1236.h fi1236_module.c
 | 
					fi1236_drv_la_SOURCES = fi1236.c fi1236.h fi1236_module.c
 | 
				
			||||||
 | 
					if NO_UNDEFINED
 | 
				
			||||||
 | 
					fi1236_drv_la_LIBADD = tda9885_drv.la
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
msp3430_drv_la_LDFLAGS = -module -avoid-version
 | 
					msp3430_drv_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
msp3430_drv_la_SOURCES = msp3430.c msp3430.h msp3430_module.c
 | 
					msp3430_drv_la_SOURCES = msp3430.c msp3430.h msp3430_module.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
tda8425_drv_la_LDFLAGS = -module -avoid-version
 | 
					tda8425_drv_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
tda8425_drv_la_SOURCES = tda8425.c tda8425.h tda8425_module.c
 | 
					tda8425_drv_la_SOURCES = tda8425.c tda8425.h tda8425_module.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
tda9850_drv_la_LDFLAGS = -module -avoid-version
 | 
					tda9850_drv_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
tda9850_drv_la_SOURCES = tda9850.c tda9850.h tda9850_module.c
 | 
					tda9850_drv_la_SOURCES = tda9850.c tda9850.h tda9850_module.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
tda9885_drv_la_LDFLAGS = -module -avoid-version
 | 
					tda9885_drv_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
tda9885_drv_la_SOURCES = tda9885.c tda9885.h tda9885_module.c
 | 
					tda9885_drv_la_SOURCES = tda9885.c tda9885.h tda9885_module.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
uda1380_drv_la_LDFLAGS = -module -avoid-version
 | 
					uda1380_drv_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
uda1380_drv_la_SOURCES = uda1380.c uda1380.h uda1380_module.c
 | 
					uda1380_drv_la_SOURCES = uda1380.c uda1380.h uda1380_module.c
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,7 @@
 | 
				
			||||||
module_LTLIBRARIES = libshadowfb.la
 | 
					module_LTLIBRARIES = libshadowfb.la
 | 
				
			||||||
libshadowfb_la_LDFLAGS = -module -avoid-version
 | 
					libshadowfb_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
libshadowfb_la_SOURCES = sfbmodule.c shadow.c
 | 
					libshadowfb_la_SOURCES = sfbmodule.c shadow.c
 | 
				
			||||||
 | 
					libshadowfb_la_LIBADD = $(PIXMAN_LIBS)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
sdk_HEADERS = shadowfb.h
 | 
					sdk_HEADERS = shadowfb.h
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,9 @@
 | 
				
			||||||
module_LTLIBRARIES = libvbe.la
 | 
					module_LTLIBRARIES = libvbe.la
 | 
				
			||||||
libvbe_la_LDFLAGS = -module -avoid-version
 | 
					libvbe_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
libvbe_la_SOURCES = vbe.c vbeModes.c vbe_module.c
 | 
					libvbe_la_SOURCES = vbe.c vbeModes.c vbe_module.c
 | 
				
			||||||
 | 
					if NO_UNDEFINED
 | 
				
			||||||
 | 
					libvbe_la_LIBADD = ../int10/libint10.la
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
sdk_HEADERS = vbe.h vbeModes.h
 | 
					sdk_HEADERS = vbe.h vbeModes.h
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -10,7 +10,7 @@ POLYSEG = s-xaaLine.c s-xaaDashLine.c
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if XAA
 | 
					if XAA
 | 
				
			||||||
 | 
					
 | 
				
			||||||
libxaa_la_LDFLAGS = -module -avoid-version
 | 
					libxaa_la_LDFLAGS = -module -avoid-version $(LD_NO_UNDEFINED_FLAG)
 | 
				
			||||||
if COMPOSITE
 | 
					if COMPOSITE
 | 
				
			||||||
libxaa_la_LIBADD = $(top_builddir)/miext/cw/libcw.la
 | 
					libxaa_la_LIBADD = $(top_builddir)/miext/cw/libcw.la
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue