FreeBSD 5.0 was released in January of 2003, and FreeBSD 4.11, the last on that branch in January of 2005, so it appears time to remove support for anything older than FreeBSD 5.x, if for no other reason to simplify things a bit.
This simplifies the spec file a fair bit, and I would not be surprised for even FreeBSD 5.x not to really work any longer. On the way, move a now no longer relevant comment where it is still applicable. What do you think? (Let me know if you'd like me to keep the first sentence of the original comment.) Gerald 2018-05-24 Gerald Pfeifer <ger...@pfeifer.com> * config/freebsd-spec.h (FBSD_LIB_SPEC): Only consider FreeBSD 5 and later. Index: gcc/config/freebsd-spec.h =================================================================== --- gcc/config/freebsd-spec.h (revision 260690) +++ gcc/config/freebsd-spec.h (working copy) @@ -79,15 +79,9 @@ #define FBSD_ENDFILE_SPEC \ "%{shared|pie:crtendS.o%s;:crtend.o%s} crtn.o%s" -/* Provide a LIB_SPEC appropriate for FreeBSD as configured and as - required by the user-land thread model. Before __FreeBSD_version - 500016, select the appropriate libc, depending on whether we're - doing profiling or need threads support. At __FreeBSD_version - 500016 and later, when threads support is requested include both - -lc and the threading lib instead of only -lc_r. To make matters - interesting, we can't actually use __FreeBSD_version provided by - <osreldate.h> directly since it breaks cross-compiling. As a final - twist, make it a hard error if -pthread is provided on the command +/* When threads support is requested (assuming FreeBSD 5.x and later) + include both -lc and the threading lib. + And make it a hard error if -pthread is provided on the command line and gcc was configured with --disable-threads (this will help avoid bug reports from users complaining about threading when they misconfigured the gcc bootstrap but are later consulting FreeBSD @@ -106,19 +100,8 @@ %{pg: -lc_p} \ }" #else -#if FBSD_MAJOR < 5 #define FBSD_LIB_SPEC " \ %{!shared: \ - %{!pg: \ - %{!pthread:-lc} \ - %{pthread:-lc_r}} \ - %{pg: \ - %{!pthread:-lc_p} \ - %{pthread:-lc_r_p}} \ - }" -#else -#define FBSD_LIB_SPEC " \ - %{!shared: \ %{!pg: %{pthread:-lpthread} -lc} \ %{pg: %{pthread:-lpthread_p} -lc_p} \ } \ @@ -126,8 +109,10 @@ %{pthread:-lpthread} -lc \ }" #endif -#endif +/* To make matters interesting, we can't actually use __FreeBSD_version + provided by <osreldate.h> directly since it breaks cross-compiling. */ + #if FBSD_MAJOR < 6 #define FBSD_DYNAMIC_LINKER "/usr/libexec/ld-elf.so.1" #else