Hi, while trying to build a newer xserver 1.17 on loongson, I got the folloing ld crash.
Apparently this is already using -fPIC so I don't know how to make space for local GOT entries. Making all in modesetting /bin/sh ../../../../libtool --tag=CC --mode=link gcc -std=gnu99 -DHAVE_DIX_CONFIG_H -Wall -Wpointer-arith -Wmissing-declarations -Wformat=2 -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wbad-function-cast -Wold-style-definition -Wdeclaration-after-statement -Wunused -Wuninitialized -Wshadow -Wmissing-noreturn -Wmissing-format-attribute -Werror=implicit -Werror=nonnull -Werror=init-self -Werror=main -Werror=missing-braces -Werror=sequence-point -Werror=return-type -Werror=trigraphs -Werror=write-strings -Werror=address -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -fno-strict-aliasing -fno-strict-aliasing -I/usr/X11R6/include -D_DEFAULT_SOURCE -D_BSD_SOURCE -DHAS_FCHOWN -DHAS_STICKY_DIR_BIT -I/usr/X11R6/include/X11/dri -I/usr/include/dev/pci/drm -I/usr/X11R6/include/pixman-1 -I/usr/X11R6/include/freetype2 -I/usr/xenocara/xserver/include -I../../../../include -I/usr/xenocara/xserver/Xext -I/usr/xenocara/xserver/composite -I/usr/xenocara/xserver/dama! geext -I/usr/xenocara/xserver/xfixes -I/usr/xenocara/xserver/Xi -I/usr/xenocara/xserver/mi -I/usr/xenocara/xserver/miext/sync -I/usr/xenocara/xserver/miext/shadow -I/usr/xenocara/xserver/miext/damage -I/usr/xenocara/xserver/render -I/usr/xenocara/xserver/randr -I/usr/xenocara/xserver/fb -I/usr/xenocara/xserver/dbe -I/usr/xenocara/xserver/present -fvisibility=hidden -DHAVE_XORG_CONFIG_H -fvisibility=hidden -I/usr/X11R6/include -I/usr/X11R6/include -I/usr/include/dev/pci/drm -DXF86PM -I/usr/X11R6/include -I/usr/X11R6/include -I/usr/include/dev/pci/drm -Wall -Wpointer-arith -Wmissing-declarations -Wformat=2 -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wbad-function-cast -Wold-style-definition -Wdeclaration-after-statement -Wunused -Wuninitialized -Wshadow -Wmissing-noreturn -Wmissing-format-attribute -Werror=implicit -Werror=nonnull -Werror=init-self -Werror=main -Werror=missing-braces -Werror=sequence-point -Werror=return-type -Werror=trigraphs -Werror=write-s! trings -Werror=address -Werror=int-to-pointer-cast -Werror=pointer-to-int-cast -fno-strict-aliasing -O2 -pipe -Wa,-xgot -module -avoid-version -o modesetting_drv.la -rpath /usr/X11R6/lib/modules/drivers dri2.lo driver.lo drmmode_display.lo dumb_bo.lo present.lo vblank.lo -lm libtool: link: gcc -std=gnu99 -shared -fPIC -DPIC -o .libs/modesetting_drv.so .libs/dri2.o .libs/driver.o .libs/drmmode_display.o .libs/dumb_bo.o .libs/present.o .libs/vblank.o -lm -O2 /usr/bin/ld: not enough GOT space for local GOT entries /usr/bin/ld: BFD 2.17 internal error, aborting at /usr/src/gnu/usr.bin/binutils-2.17/bfd/elfxx-mips.c line 7924 in _bfd_mips_elf_relocate_section /usr/bin/ld: Please report this bug. collect2: ld returned 1 exit status *** Error 1 in obj/hw/xfree86/drivers/modesetting (Makefile:640 'modesetting_drv.la') *** Error 1 in obj/hw/xfree86/drivers (Makefile:553 'all-recursive') *** Error 1 in obj/hw/xfree86 (Makefile:802 'all-recursive') *** Error 1 in obj/hw/xfree86 (Makefile:598 'all') *** Error 1 in obj/hw (Makefile:569 'all-recursive') *** Error 1 in obj (Makefile:737 'all-recursive') *** Error 1 in /usr/xenocara/xserver (/usr/X11R6/share/mk/bsd.xorg.mk:145 'all') -- Matthieu Herrb
