build: Check that -lzstd can be linked
commitb0248580b68d970788bb43ac3ab8fe3e21ef71be
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Mon, 3 Apr 2023 08:34:45 +0000 (3 10:34 +0200)
committerRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Mon, 3 Apr 2023 08:34:45 +0000 (3 10:34 +0200)
tree59bf6a74cf5374ee04c208c1dba76a6b3d4b54f8
parent9fd6d83a4c90325e3c339ad9a4ffab0c4e5b12f3
build: Check that -lzstd can be linked

Recent Solaris 11.4 SRUs bundle zstd, but only the 64-bit libraries (no
idea why).  Because of this, in 32-bit builds cc1 etc. fail to link with
undefined references to various ZSTD_* functions from lto-compress.o.
This happens because currently only the presence of <zstd.h> is
necessary to enable zstd support in lto-compress.cc etc.

This patch checks for libzstd first and disables zstd support if
missing.

Tested on sparc-sun-solaris2.11 with the system installation of zstd
(64-bit only) and a locally-compiled one (specified with --with-zstd).

2023-03-28  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

gcc:
* configure.ac (ZSTD_LIB): Move before zstd.h check.
Unset gcc_cv_header_zstd_h without libzstd.
* configure: Regenerate.
gcc/configure
gcc/configure.ac