On FreeBSD, using `environ` in a shared library linked with `-Wl,-z,defs` causes an undefined reference error: ``` gcc -m64 -o dlls/msv1_0/msv1_0.so -shared -Wl,-Bsymbolic -Wl,-soname,msv1_0.so -Wl,-z,defs dlls/msv1_0/unixlib.o dlls/ntdll/ntdll.so /usr/local/bin/ld: dlls/msv1_0/unixlib.o: in function `ntlm_fork': /usr/home/pip/wine/build64/../dlls/msv1_0/unixlib.c:206: undefined reference to `environ' collect2: error: ld returned 1 exit status *** Error code 1 ```
This is unfortunately a common issue on FreeBSD, see: - https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=263265 - https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=265008 - https://reviews.freebsd.org/D30842
Reported by Gerald Pfeifer.
-- v2: configure: Don't link with -Wl,-z,defs on FreeBSD.