public inbox for gdb-cvs@sourceware.org
help / color / mirror / Atom feed
* [binutils-gdb] sim: Link ZSTD_LIBS
@ 2022-09-27 18:43 Fangrui Song
0 siblings, 0 replies; only message in thread
From: Fangrui Song @ 2022-09-27 18:43 UTC (permalink / raw)
To: gdb-cvs
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=382fa97ce0eb1119266607e2802fd29318ed2d78
commit 382fa97ce0eb1119266607e2802fd29318ed2d78
Author: Fangrui Song <maskray@google.com>
Date: Tue Sep 27 11:42:32 2022 -0700
sim: Link ZSTD_LIBS
This fixes linker errors in a `../../configure --enable-targets
--enable-sim; make all-gdb` build.
Diff:
---
sim/Makefile.in | 5 +-
sim/aclocal.m4 | 1 +
sim/arch-subdir.mk.in | 1 +
sim/common/Make-common.in | 2 +-
sim/config.h.in | 3 ++
sim/configure | 134 +++++++++++++++++++++++++++++++++++++++++++++-
sim/m4/sim_ac_platform.m4 | 1 +
sim/ppc/Makefile.in | 2 +-
8 files changed, 144 insertions(+), 5 deletions(-)
diff --git a/sim/Makefile.in b/sim/Makefile.in
index dbbaa84224a..3278febc5e8 100644
--- a/sim/Makefile.in
+++ b/sim/Makefile.in
@@ -170,7 +170,8 @@ am__aclocal_m4_deps = $(top_srcdir)/../config/acx.m4 \
$(top_srcdir)/../config/override.m4 \
$(top_srcdir)/../config/pkg.m4 \
$(top_srcdir)/../config/plugins.m4 \
- $(top_srcdir)/../config/zlib.m4 $(top_srcdir)/../libtool.m4 \
+ $(top_srcdir)/../config/zlib.m4 \
+ $(top_srcdir)/../config/zstd.m4 $(top_srcdir)/../libtool.m4 \
$(top_srcdir)/../ltoptions.m4 $(top_srcdir)/../ltsugar.m4 \
$(top_srcdir)/../ltversion.m4 $(top_srcdir)/../lt~obsolete.m4 \
$(top_srcdir)/m4/sim_ac_option_alignment.m4 \
@@ -855,6 +856,8 @@ VERSION = @VERSION@
WARN_CFLAGS = @WARN_CFLAGS@
WERROR_CFLAGS = @WERROR_CFLAGS@
XGETTEXT = @XGETTEXT@
+ZSTD_CFLAGS = @ZSTD_CFLAGS@
+ZSTD_LIBS = @ZSTD_LIBS@
abs_builddir = @abs_builddir@
abs_srcdir = @abs_srcdir@
abs_top_builddir = @abs_top_builddir@
diff --git a/sim/aclocal.m4 b/sim/aclocal.m4
index 40806b929bf..5ecf08aa3e9 100644
--- a/sim/aclocal.m4
+++ b/sim/aclocal.m4
@@ -1175,6 +1175,7 @@ m4_include([../config/override.m4])
m4_include([../config/pkg.m4])
m4_include([../config/plugins.m4])
m4_include([../config/zlib.m4])
+m4_include([../config/zstd.m4])
m4_include([../libtool.m4])
m4_include([../ltoptions.m4])
m4_include([../ltsugar.m4])
diff --git a/sim/arch-subdir.mk.in b/sim/arch-subdir.mk.in
index c9ba0d53f35..f6d8188d1a8 100644
--- a/sim/arch-subdir.mk.in
+++ b/sim/arch-subdir.mk.in
@@ -46,6 +46,7 @@ DEPMODE = @CCDEPMODE@
DEPDIR = @DEPDIR@
zlibdir = @zlibdir@
+ZSTD_LIBS = @ZSTD_LIBS@
@PLUGINS_TRUE@LIBDL = @lt_cv_dlopen_libs@
LIBINTL = @LIBINTL@
LIBINTL_DEP = @LIBINTL_DEP@
diff --git a/sim/common/Make-common.in b/sim/common/Make-common.in
index 74e5dad3049..b07ec96e147 100644
--- a/sim/common/Make-common.in
+++ b/sim/common/Make-common.in
@@ -223,7 +223,7 @@ ZLIB = $(zlibdir) -lz
LIBIBERTY_LIB = ../../libiberty/libiberty.a
BFD_LIB = ../../bfd/libbfd.a
OPCODES_LIB = ../../opcodes/libopcodes.a
-CONFIG_LIBS = $(COMMON_LIBS) @LIBS@ $(ZLIB)
+CONFIG_LIBS = $(COMMON_LIBS) @LIBS@ $(ZLIB) $(ZSTD_LIBS)
LIBDEPS = $(BFD_LIB) $(OPCODES_LIB) $(LIBINTL_DEP) $(LIBIBERTY_LIB)
EXTRA_LIBS = $(BFD_LIB) $(OPCODES_LIB) $(LIBINTL) $(LIBIBERTY_LIB) \
$(CONFIG_LIBS) $(SIM_EXTRA_LIBS) $(LIBDL) $(LIBGNU) $(LIBGNU_EXTRA_LIBS)
diff --git a/sim/config.h.in b/sim/config.h.in
index 8e84759df04..84c363c0aec 100644
--- a/sim/config.h.in
+++ b/sim/config.h.in
@@ -383,6 +383,9 @@
/* Define to 1 if you have the <windows.h> header file. */
#undef HAVE_WINDOWS_H
+/* Define to 1 if zstd is enabled. */
+#undef HAVE_ZSTD
+
/* Define to 1 if the system has the type `__int128'. */
#undef HAVE___INT128
diff --git a/sim/configure b/sim/configure
index b31c2f5d8f3..75d1935df38 100755
--- a/sim/configure
+++ b/sim/configure
@@ -879,6 +879,8 @@ SED
LIBTOOL
PLUGINS_FALSE
PLUGINS_TRUE
+ZSTD_LIBS
+ZSTD_CFLAGS
zlibinc
zlibdir
CATOBJEXT
@@ -981,6 +983,7 @@ enable_option_checking
with_pkgversion
with_bugurl
with_system_zlib
+with_zstd
enable_plugins
enable_shared
enable_static
@@ -1025,6 +1028,8 @@ CPP
PKG_CONFIG
PKG_CONFIG_PATH
PKG_CONFIG_LIBDIR
+ZSTD_CFLAGS
+ZSTD_LIBS
SDL_CFLAGS
SDL_LIBS
AS_FOR_TARGET_AARCH64
@@ -1807,6 +1812,8 @@ Optional Packages:
--with-pkgversion=PKG Use PKG in the version string in place of "SIM"
--with-bugurl=URL Direct users to URL to report a bug
--with-system-zlib use installed libz
+ --with-zstd support zstd compressed debug sections
+ (default=auto)
--with-pic try to use only PIC/non-PIC objects [default=use
both]
--with-gnu-ld assume the C compiler uses GNU ld [default=no]
@@ -1825,6 +1832,8 @@ Some influential environment variables:
directories to add to pkg-config's search path
PKG_CONFIG_LIBDIR
path overriding pkg-config's built-in search path
+ ZSTD_CFLAGS C compiler flags for ZSTD, overriding pkg-config
+ ZSTD_LIBS linker flags for ZSTD, overriding pkg-config
SDL_CFLAGS C compiler flags for SDL, overriding pkg-config
SDL_LIBS linker flags for SDL, overriding pkg-config
AS_FOR_TARGET_AARCH64
@@ -9065,6 +9074,127 @@ fi
+# Check whether --with-zstd was given.
+if test "${with_zstd+set}" = set; then :
+ withval=$with_zstd;
+else
+ with_zstd=auto
+fi
+
+
+if test "$with_zstd" != no; then :
+
+pkg_failed=no
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for libzstd" >&5
+$as_echo_n "checking for libzstd... " >&6; }
+
+if test -n "$ZSTD_CFLAGS"; then
+ pkg_cv_ZSTD_CFLAGS="$ZSTD_CFLAGS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libzstd\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libzstd") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_ZSTD_CFLAGS=`$PKG_CONFIG --cflags "libzstd" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+if test -n "$ZSTD_LIBS"; then
+ pkg_cv_ZSTD_LIBS="$ZSTD_LIBS"
+ elif test -n "$PKG_CONFIG"; then
+ if test -n "$PKG_CONFIG" && \
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"libzstd\""; } >&5
+ ($PKG_CONFIG --exists --print-errors "libzstd") 2>&5
+ ac_status=$?
+ $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+ test $ac_status = 0; }; then
+ pkg_cv_ZSTD_LIBS=`$PKG_CONFIG --libs "libzstd" 2>/dev/null`
+ test "x$?" != "x0" && pkg_failed=yes
+else
+ pkg_failed=yes
+fi
+ else
+ pkg_failed=untried
+fi
+
+if test $pkg_failed = no; then
+ pkg_save_LDFLAGS="$LDFLAGS"
+ LDFLAGS="$LDFLAGS $pkg_cv_ZSTD_LIBS"
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+
+else
+ pkg_failed=yes
+fi
+rm -f core conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+ LDFLAGS=$pkg_save_LDFLAGS
+fi
+
+
+
+if test $pkg_failed = yes; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
+ _pkg_short_errors_supported=yes
+else
+ _pkg_short_errors_supported=no
+fi
+ if test $_pkg_short_errors_supported = yes; then
+ ZSTD_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "libzstd" 2>&1`
+ else
+ ZSTD_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "libzstd" 2>&1`
+ fi
+ # Put the nasty error message in config.log where it belongs
+ echo "$ZSTD_PKG_ERRORS" >&5
+
+
+ if test "$with_zstd" = yes; then
+ as_fn_error $? "--with-zstd was given, but pkgconfig/libzstd.pc is not found" "$LINENO" 5
+ fi
+
+elif test $pkg_failed = untried; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+$as_echo "no" >&6; }
+
+ if test "$with_zstd" = yes; then
+ as_fn_error $? "--with-zstd was given, but pkgconfig/libzstd.pc is not found" "$LINENO" 5
+ fi
+
+else
+ ZSTD_CFLAGS=$pkg_cv_ZSTD_CFLAGS
+ ZSTD_LIBS=$pkg_cv_ZSTD_LIBS
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+$as_echo "yes" >&6; }
+
+
+$as_echo "#define HAVE_ZSTD 1" >>confdefs.h
+
+
+fi
+
+fi
+
+
+
maybe_plugins=no
for ac_header in dlfcn.h
do :
@@ -12641,7 +12771,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 12644 "configure"
+#line 12774 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -12747,7 +12877,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
-#line 12750 "configure"
+#line 12880 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
diff --git a/sim/m4/sim_ac_platform.m4 b/sim/m4/sim_ac_platform.m4
index aa91c42562e..a91b2334b84 100644
--- a/sim/m4/sim_ac_platform.m4
+++ b/sim/m4/sim_ac_platform.m4
@@ -150,6 +150,7 @@ ZW_GNU_GETTEXT_SISTER_DIR
dnl BFD conditionally uses zlib, so we must link it in if libbfd does, by
dnl using the same condition.
AM_ZLIB
+AC_ZSTD
dnl BFD uses libdl when when plugins enabled.
AC_PLUGINS
diff --git a/sim/ppc/Makefile.in b/sim/ppc/Makefile.in
index 33d7df953b5..b0c073b8867 100644
--- a/sim/ppc/Makefile.in
+++ b/sim/ppc/Makefile.in
@@ -522,7 +522,7 @@ PACKAGE_OBJ = @sim_pk_obj@
psim$(EXEEXT): $(TARGETLIB) main.o $(LIBIBERTY_LIB) $(BFD_LIB) $(LIBINTL_DEP)
- $(ECHO_CCLD) $(CC) $(CFLAGS) $(LDFLAGS) -o psim$(EXEEXT) main.o $(TARGETLIB) $(BFD_LIB) $(ZLIB) $(LIBINTL) $(LIBIBERTY_LIB) $(LIBS)
+ $(ECHO_CCLD) $(CC) $(CFLAGS) $(LDFLAGS) -o psim$(EXEEXT) main.o $(TARGETLIB) $(BFD_LIB) $(ZLIB) $(ZSTD_LIBS) $(LIBINTL) $(LIBIBERTY_LIB) $(LIBS)
run$(EXEEXT): psim$(EXEEXT)
$(SILENCE) rm -f $@
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-09-27 18:43 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-27 18:43 [binutils-gdb] sim: Link ZSTD_LIBS Fangrui Song
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).