pf2 0.5.2 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/Cargo.lock +7 -27
  4. data/README.md +1 -1
  5. data/crates/backtrace-sys2/build.rs +1 -4
  6. data/crates/backtrace-sys2/src/libbacktrace/Makefile.am +116 -31
  7. data/crates/backtrace-sys2/src/libbacktrace/Makefile.in +295 -141
  8. data/crates/backtrace-sys2/src/libbacktrace/README.md +11 -1
  9. data/crates/backtrace-sys2/src/libbacktrace/alloc.c +1 -1
  10. data/crates/backtrace-sys2/src/libbacktrace/allocfail.c +1 -1
  11. data/crates/backtrace-sys2/src/libbacktrace/allocfail.sh +1 -1
  12. data/crates/backtrace-sys2/src/libbacktrace/atomic.c +1 -1
  13. data/crates/backtrace-sys2/src/libbacktrace/backtrace-supported.h.in +1 -1
  14. data/crates/backtrace-sys2/src/libbacktrace/backtrace.c +1 -1
  15. data/crates/backtrace-sys2/src/libbacktrace/backtrace.h +12 -12
  16. data/crates/backtrace-sys2/src/libbacktrace/btest.c +24 -8
  17. data/crates/backtrace-sys2/src/libbacktrace/config/libtool.m4 +162 -53
  18. data/crates/backtrace-sys2/src/libbacktrace/config.h.in +3 -0
  19. data/crates/backtrace-sys2/src/libbacktrace/configure +255 -66
  20. data/crates/backtrace-sys2/src/libbacktrace/configure.ac +27 -8
  21. data/crates/backtrace-sys2/src/libbacktrace/dwarf.c +37 -30
  22. data/crates/backtrace-sys2/src/libbacktrace/edtest.c +2 -2
  23. data/crates/backtrace-sys2/src/libbacktrace/edtest2.c +1 -1
  24. data/crates/backtrace-sys2/src/libbacktrace/elf.c +98 -76
  25. data/crates/backtrace-sys2/src/libbacktrace/fileline.c +1 -1
  26. data/crates/backtrace-sys2/src/libbacktrace/install-debuginfo-for-buildid.sh.in +2 -2
  27. data/crates/backtrace-sys2/src/libbacktrace/instrumented_alloc.c +1 -1
  28. data/crates/backtrace-sys2/src/libbacktrace/internal.h +41 -2
  29. data/crates/backtrace-sys2/src/libbacktrace/macho.c +25 -19
  30. data/crates/backtrace-sys2/src/libbacktrace/mmap.c +1 -1
  31. data/crates/backtrace-sys2/src/libbacktrace/mmapio.c +1 -1
  32. data/crates/backtrace-sys2/src/libbacktrace/mtest.c +4 -4
  33. data/crates/backtrace-sys2/src/libbacktrace/nounwind.c +1 -1
  34. data/crates/backtrace-sys2/src/libbacktrace/pecoff.c +192 -26
  35. data/crates/backtrace-sys2/src/libbacktrace/posix.c +1 -1
  36. data/crates/backtrace-sys2/src/libbacktrace/print.c +41 -16
  37. data/crates/backtrace-sys2/src/libbacktrace/read.c +1 -1
  38. data/crates/backtrace-sys2/src/libbacktrace/simple.c +1 -1
  39. data/crates/backtrace-sys2/src/libbacktrace/sort.c +1 -1
  40. data/crates/backtrace-sys2/src/libbacktrace/state.c +1 -1
  41. data/crates/backtrace-sys2/src/libbacktrace/stest.c +1 -1
  42. data/crates/backtrace-sys2/src/libbacktrace/test_format.c +1 -1
  43. data/crates/backtrace-sys2/src/libbacktrace/testlib.c +1 -1
  44. data/crates/backtrace-sys2/src/libbacktrace/testlib.h +1 -1
  45. data/crates/backtrace-sys2/src/libbacktrace/ttest.c +1 -1
  46. data/crates/backtrace-sys2/src/libbacktrace/unittest.c +1 -1
  47. data/crates/backtrace-sys2/src/libbacktrace/unknown.c +1 -1
  48. data/crates/backtrace-sys2/src/libbacktrace/xcoff.c +43 -32
  49. data/crates/backtrace-sys2/src/libbacktrace/xztest.c +2 -2
  50. data/crates/backtrace-sys2/src/libbacktrace/zstdtest.c +1 -1
  51. data/crates/backtrace-sys2/src/libbacktrace/ztest.c +1 -1
  52. data/ext/pf2/Cargo.toml +1 -1
  53. data/ext/pf2/src/lib.rs +1 -0
  54. data/ext/pf2/src/profile.rs +7 -3
  55. data/ext/pf2/src/profile_serializer.rs +6 -13
  56. data/ext/pf2/src/ringbuffer.rs +1 -3
  57. data/ext/pf2/src/ruby_init.rs +1 -4
  58. data/ext/pf2/src/sample.rs +1 -0
  59. data/ext/pf2/src/serialization/profile.rs +47 -0
  60. data/ext/pf2/src/serialization/serializer.rs +325 -0
  61. data/ext/pf2/src/serialization.rs +2 -0
  62. data/ext/pf2/src/session/configuration.rs +2 -1
  63. data/ext/pf2/src/session/new_thread_watcher.rs +1 -1
  64. data/ext/pf2/src/session/ruby_object.rs +1 -5
  65. data/ext/pf2/src/session.rs +20 -19
  66. data/ext/pf2/src/signal_scheduler.rs +12 -7
  67. data/ext/pf2/src/timer_thread_scheduler.rs +11 -3
  68. data/lib/pf2/cli.rb +3 -1
  69. data/lib/pf2/reporter/firefox_profiler.rb +397 -0
  70. data/lib/pf2/reporter/stack_weaver.rb +81 -0
  71. data/lib/pf2/reporter.rb +3 -392
  72. data/lib/pf2/serve.rb +3 -1
  73. data/lib/pf2/session.rb +2 -0
  74. data/lib/pf2/version.rb +3 -1
  75. data/lib/pf2.rb +4 -1
  76. data/rustfmt.toml +1 -0
  77. metadata +13 -12
  78. data/crates/backtrace-sys2/src/libbacktrace/libtool.m4 +0 -7436
  79. data/crates/backtrace-sys2/src/libbacktrace/ltoptions.m4 +0 -369
  80. data/crates/backtrace-sys2/src/libbacktrace/ltsugar.m4 +0 -123
  81. data/crates/backtrace-sys2/src/libbacktrace/ltversion.m4 +0 -23
  82. data/crates/backtrace-sys2/src/libbacktrace/lt~obsolete.m4 +0 -98
@@ -655,8 +655,10 @@ HAVE_COMPRESSED_DEBUG_ZSTD_FALSE
655
655
  HAVE_COMPRESSED_DEBUG_ZSTD_TRUE
656
656
  HAVE_ZSTD_FALSE
657
657
  HAVE_ZSTD_TRUE
658
- HAVE_COMPRESSED_DEBUG_FALSE
659
- HAVE_COMPRESSED_DEBUG_TRUE
658
+ HAVE_COMPRESSED_DEBUG_ZLIB_GABI_FALSE
659
+ HAVE_COMPRESSED_DEBUG_ZLIB_GABI_TRUE
660
+ HAVE_COMPRESSED_DEBUG_ZLIB_GNU_FALSE
661
+ HAVE_COMPRESSED_DEBUG_ZLIB_GNU_TRUE
660
662
  HAVE_BUILDID_FALSE
661
663
  HAVE_BUILDID_TRUE
662
664
  HAVE_ZLIB_FALSE
@@ -680,6 +682,8 @@ PIC_FLAG
680
682
  WARN_FLAGS
681
683
  EXTRA_FLAGS
682
684
  BACKTRACE_FILE
685
+ ENABLE_DARWIN_AT_RPATH_FALSE
686
+ ENABLE_DARWIN_AT_RPATH_TRUE
683
687
  OTOOL64
684
688
  OTOOL
685
689
  LIPO
@@ -804,6 +808,7 @@ with_pic
804
808
  enable_fast_install
805
809
  with_gnu_ld
806
810
  enable_libtool_lock
811
+ enable_darwin_at_rpath
807
812
  enable_largefile
808
813
  enable_werror
809
814
  with_system_libunwind
@@ -1451,6 +1456,9 @@ Optional Features:
1451
1456
  --enable-fast-install[=PKGS]
1452
1457
  optimize for fast installation [default=yes]
1453
1458
  --disable-libtool-lock avoid locking (might break parallel builds)
1459
+ --enable-darwin-at-rpath
1460
+ install libraries with @rpath/library-name, requires
1461
+ rpaths to be added to executables
1454
1462
  --disable-largefile omit support for large files
1455
1463
  --disable-werror disable building with -Werror
1456
1464
  --enable-host-shared build host code as shared libraries
@@ -5617,48 +5625,55 @@ if ${lt_cv_path_NM+:} false; then :
5617
5625
  $as_echo_n "(cached) " >&6
5618
5626
  else
5619
5627
  if test -n "$NM"; then
5620
- # Let the user override the test.
5621
- lt_cv_path_NM="$NM"
5622
- else
5623
- lt_nm_to_check="${ac_tool_prefix}nm"
5624
- if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
5625
- lt_nm_to_check="$lt_nm_to_check nm"
5626
- fi
5627
- for lt_tmp_nm in $lt_nm_to_check; do
5628
- lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
5629
- for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
5630
- IFS="$lt_save_ifs"
5631
- test -z "$ac_dir" && ac_dir=.
5632
- tmp_nm="$ac_dir/$lt_tmp_nm"
5633
- if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext" ; then
5634
- # Check to see if the nm accepts a BSD-compat flag.
5635
- # Adding the `sed 1q' prevents false positives on HP-UX, which says:
5636
- # nm: unknown option "B" ignored
5637
- # Tru64's nm complains that /dev/null is an invalid object file
5638
- case `"$tmp_nm" -B /dev/null 2>&1 | sed '1q'` in
5639
- */dev/null* | *'Invalid file or object type'*)
5640
- lt_cv_path_NM="$tmp_nm -B"
5641
- break
5642
- ;;
5643
- *)
5644
- case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in
5645
- */dev/null*)
5646
- lt_cv_path_NM="$tmp_nm -p"
5647
- break
5648
- ;;
5649
- *)
5650
- lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
5651
- continue # so that we can try to find one that supports BSD flags
5652
- ;;
5653
- esac
5654
- ;;
5655
- esac
5656
- fi
5657
- done
5658
- IFS="$lt_save_ifs"
5659
- done
5660
- : ${lt_cv_path_NM=no}
5661
- fi
5628
+ # Let the user override the nm to test.
5629
+ lt_nm_to_check="$NM"
5630
+ else
5631
+ lt_nm_to_check="${ac_tool_prefix}nm"
5632
+ if test -n "$ac_tool_prefix" && test "$build" = "$host"; then
5633
+ lt_nm_to_check="$lt_nm_to_check nm"
5634
+ fi
5635
+ fi
5636
+ for lt_tmp_nm in "$lt_nm_to_check"; do
5637
+ lt_save_ifs="$IFS"; IFS=$PATH_SEPARATOR
5638
+ for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do
5639
+ IFS="$lt_save_ifs"
5640
+ test -z "$ac_dir" && ac_dir=.
5641
+ # Strip out any user-provided options from the nm to test twice,
5642
+ # the first time to test to see if nm (rather than its options) has
5643
+ # an explicit path, the second time to yield a file which can be
5644
+ # nm'ed itself.
5645
+ tmp_nm_path="`$ECHO "$lt_tmp_nm" | sed 's, -.*$,,'`"
5646
+ case "$tmp_nm_path" in
5647
+ */*|*\\*) tmp_nm="$lt_tmp_nm";;
5648
+ *) tmp_nm="$ac_dir/$lt_tmp_nm";;
5649
+ esac
5650
+ tmp_nm_to_nm="`$ECHO "$tmp_nm" | sed 's, -.*$,,'`"
5651
+ if test -f "$tmp_nm_to_nm" || test -f "$tmp_nm_to_nm$ac_exeext" ; then
5652
+ # Check to see if the nm accepts a BSD-compat flag.
5653
+ # Adding the `sed 1q' prevents false positives on HP-UX, which says:
5654
+ # nm: unknown option "B" ignored
5655
+ case `"$tmp_nm" -B "$tmp_nm_to_nm" 2>&1 | grep -v '^ *$' | sed '1q'` in
5656
+ *$tmp_nm*) lt_cv_path_NM="$tmp_nm -B"
5657
+ break
5658
+ ;;
5659
+ *)
5660
+ case `"$tmp_nm" -p "$tmp_nm_to_nm" 2>&1 | grep -v '^ *$' | sed '1q'` in
5661
+ *$tmp_nm*)
5662
+ lt_cv_path_NM="$tmp_nm -p"
5663
+ break
5664
+ ;;
5665
+ *)
5666
+ lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but
5667
+ continue # so that we can try to find one that supports BSD flags
5668
+ ;;
5669
+ esac
5670
+ ;;
5671
+ esac
5672
+ fi
5673
+ done
5674
+ IFS="$lt_save_ifs"
5675
+ done
5676
+ : ${lt_cv_path_NM=no}
5662
5677
  fi
5663
5678
  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
5664
5679
  $as_echo "$lt_cv_path_NM" >&6; }
@@ -6355,6 +6370,11 @@ sysv4 | sysv4.3*)
6355
6370
  tpf*)
6356
6371
  lt_cv_deplibs_check_method=pass_all
6357
6372
  ;;
6373
+ vxworks*)
6374
+ # Assume VxWorks cross toolchains are built on Linux, possibly
6375
+ # as canadian for Windows hosts.
6376
+ lt_cv_deplibs_check_method=pass_all
6377
+ ;;
6358
6378
  esac
6359
6379
 
6360
6380
  fi
@@ -6375,6 +6395,19 @@ test -z "$deplibs_check_method" && deplibs_check_method=unknown
6375
6395
 
6376
6396
 
6377
6397
 
6398
+ plugin_option=
6399
+ plugin_names="liblto_plugin.so liblto_plugin-0.dll cyglto_plugin-0.dll"
6400
+ for plugin in $plugin_names; do
6401
+ plugin_so=`${CC} ${CFLAGS} --print-prog-name $plugin`
6402
+ if test x$plugin_so = x$plugin; then
6403
+ plugin_so=`${CC} ${CFLAGS} --print-file-name $plugin`
6404
+ fi
6405
+ if test x$plugin_so != x$plugin; then
6406
+ plugin_option="--plugin $plugin_so"
6407
+ break
6408
+ fi
6409
+ done
6410
+
6378
6411
  if test -n "$ac_tool_prefix"; then
6379
6412
  # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
6380
6413
  set dummy ${ac_tool_prefix}ar; ac_word=$2
@@ -6468,6 +6501,19 @@ else
6468
6501
  fi
6469
6502
 
6470
6503
  test -z "$AR" && AR=ar
6504
+ if test -n "$plugin_option"; then
6505
+ if $AR --help 2>&1 | grep -q "\--plugin"; then
6506
+ touch conftest.c
6507
+ $AR $plugin_option rc conftest.a conftest.c
6508
+ if test "$?" != 0; then
6509
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Failed: $AR $plugin_option rc" >&5
6510
+ $as_echo "$as_me: WARNING: Failed: $AR $plugin_option rc" >&2;}
6511
+ else
6512
+ AR="$AR $plugin_option"
6513
+ fi
6514
+ rm -f conftest.*
6515
+ fi
6516
+ fi
6471
6517
  test -z "$AR_FLAGS" && AR_FLAGS=cru
6472
6518
 
6473
6519
 
@@ -6672,6 +6718,11 @@ else
6672
6718
  fi
6673
6719
 
6674
6720
  test -z "$RANLIB" && RANLIB=:
6721
+ if test -n "$plugin_option" && test "$RANLIB" != ":"; then
6722
+ if $RANLIB --help 2>&1 | grep -q "\--plugin"; then
6723
+ RANLIB="$RANLIB $plugin_option"
6724
+ fi
6725
+ fi
6675
6726
 
6676
6727
 
6677
6728
 
@@ -6786,7 +6837,7 @@ osf*)
6786
6837
  symcode='[BCDEGQRST]'
6787
6838
  ;;
6788
6839
  solaris*)
6789
- symcode='[BDRT]'
6840
+ symcode='[BCDRT]'
6790
6841
  ;;
6791
6842
  sco3.2v5*)
6792
6843
  symcode='[DT]'
@@ -7796,7 +7847,7 @@ $as_echo "$lt_cv_ld_force_load" >&6; }
7796
7847
  # darwin 5.x (macOS 10.1) onwards we only need to adjust when the
7797
7848
  # deployment target is forced to an earlier version.
7798
7849
  case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host in
7799
- UNSET,*-darwin[89]*|UNSET,*-darwin[12][0123456789]*)
7850
+ UNSET,*-darwin[89]*|UNSET,*-darwin[12][0-9]*)
7800
7851
  ;;
7801
7852
  10.[012][,.]*)
7802
7853
  _lt_dar_allow_undefined='${wl}-flat_namespace ${wl}-undefined ${wl}suppress'
@@ -9472,6 +9523,49 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
9472
9523
  darwin* | rhapsody*)
9473
9524
 
9474
9525
 
9526
+
9527
+ # Publish an arg to allow the user to select that Darwin host (and target)
9528
+ # libraries should be given install-names like @rpath/libfoo.dylib. This
9529
+ # requires that the user of the library then adds an 'rpath' to the DSO that
9530
+ # needs access.
9531
+ # NOTE: there are defaults below, for systems that support rpaths. The person
9532
+ # configuring can override the defaults for any system version that supports
9533
+ # them - they are, however, forced off for system versions without support.
9534
+ # Check whether --enable-darwin-at-rpath was given.
9535
+ if test "${enable_darwin_at_rpath+set}" = set; then :
9536
+ enableval=$enable_darwin_at_rpath; if test "x$enable_darwin_at_rpath" = "xyes"; then
9537
+ # This is not supported before macOS 10.5 / Darwin9.
9538
+ case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
9539
+ UNSET,darwin[4-8]*|UNSET,rhapsody*|10.[0-4][,.]*)
9540
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Darwin @rpath library names are incompatible with OSX versions earlier than 10.5 (rpaths disabled)" >&5
9541
+ $as_echo "$as_me: WARNING: Darwin @rpath library names are incompatible with OSX versions earlier than 10.5 (rpaths disabled)" >&2;}
9542
+ enable_darwin_at_rpath=no
9543
+ ;;
9544
+ esac
9545
+ fi
9546
+ else
9547
+ case ${MACOSX_DEPLOYMENT_TARGET-UNSET},$host_os in
9548
+ # As above, before 10.5 / Darwin9 this does not work.
9549
+ UNSET,darwin[4-8]*|UNSET,rhapsody*|10.[0-4][,.]*)
9550
+ enable_darwin_at_rpath=no
9551
+ ;;
9552
+
9553
+ # We cannot build and test reliably on macOS 10.11+ (Darwin15+) without use
9554
+ # of rpaths, since runpaths set via DYLD_LIBRARY_PATH are elided by key
9555
+ # system executables (e.g. /bin/sh). Force rpaths on for these systems.
9556
+ UNSET,darwin1[5-9]*|UNSET,darwin2*|10.1[1-9][,.]*|1[1-9].*[,.]* )
9557
+ { $as_echo "$as_me:${as_lineno-$LINENO}: @rpath library names are needed on macOS versions later than 10.11 (rpaths have been enabled)" >&5
9558
+ $as_echo "$as_me: @rpath library names are needed on macOS versions later than 10.11 (rpaths have been enabled)" >&6;}
9559
+ enable_darwin_at_rpath=yes
9560
+ ;;
9561
+ # NOTE: we are not (yet) doing anything for 10.5 .. 10.10, since they can
9562
+ # work with either DYLD_LIBRARY_PATH or embedded rpaths.
9563
+
9564
+ esac
9565
+
9566
+ fi
9567
+
9568
+
9475
9569
  archive_cmds_need_lc=no
9476
9570
  hardcode_direct=no
9477
9571
  hardcode_automatic=yes
@@ -9489,9 +9583,13 @@ if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib"; fi
9489
9583
  esac
9490
9584
  if test "$_lt_dar_can_shared" = "yes"; then
9491
9585
  output_verbose_link_cmd=func_echo_all
9492
- archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod${_lt_dsymutil}"
9586
+ _lt_install_name='\$rpath/\$soname'
9587
+ if test "x$enable_darwin_at_rpath" = "xyes"; then
9588
+ _lt_install_name='@rpath/\$soname'
9589
+ fi
9590
+ archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name ${_lt_install_name} \$verstring ${_lt_dsymutil}"
9493
9591
  module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dsymutil}"
9494
- archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring ${_lt_dar_single_mod}${_lt_dar_export_syms}${_lt_dsymutil}"
9592
+ archive_expsym_cmds="sed 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name ${_lt_install_name} \$verstring ${_lt_dar_export_syms}${_lt_dsymutil}"
9495
9593
  module_expsym_cmds="sed -e 's,^,_,' < \$export_symbols > \$output_objdir/\${libname}-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags${_lt_dar_export_syms}${_lt_dsymutil}"
9496
9594
 
9497
9595
  else
@@ -10477,7 +10575,7 @@ haiku*)
10477
10575
  soname_spec='${libname}${release}${shared_ext}$major'
10478
10576
  shlibpath_var=LIBRARY_PATH
10479
10577
  shlibpath_overrides_runpath=yes
10480
- sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/beos/system/lib'
10578
+ sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib'
10481
10579
  hardcode_into_libs=yes
10482
10580
  ;;
10483
10581
 
@@ -10837,6 +10935,25 @@ uts4*)
10837
10935
  shlibpath_var=LD_LIBRARY_PATH
10838
10936
  ;;
10839
10937
 
10938
+ # Shared libraries for VwWorks, >= 7 only at this stage
10939
+ # and (fpic) still incompatible with "large" code models
10940
+ # in a few configurations. Only for RTP mode in any case,
10941
+ # and upon explicit request at configure time.
10942
+ vxworks7*)
10943
+ dynamic_linker=no
10944
+ case ${with_multisubdir}-${enable_shared} in
10945
+ *large*)
10946
+ ;;
10947
+ *mrtp*-yes)
10948
+ version_type=linux
10949
+ need_lib_prefix=no
10950
+ need_version=no
10951
+ library_names_spec='${libname}${release}${shared_ext}$versuffix ${libname}${release}${shared_ext}$major $libname${shared_ext}'
10952
+ soname_spec='${libname}${release}${shared_ext}$major'
10953
+ dynamic_linker="$host_os module_loader"
10954
+ ;;
10955
+ esac
10956
+ ;;
10840
10957
  *)
10841
10958
  dynamic_linker=no
10842
10959
  ;;
@@ -11278,7 +11395,7 @@ else
11278
11395
  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
11279
11396
  lt_status=$lt_dlunknown
11280
11397
  cat > conftest.$ac_ext <<_LT_EOF
11281
- #line 11281 "configure"
11398
+ #line 11398 "configure"
11282
11399
  #include "confdefs.h"
11283
11400
 
11284
11401
  #if HAVE_DLFCN_H
@@ -11384,7 +11501,7 @@ else
11384
11501
  lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
11385
11502
  lt_status=$lt_dlunknown
11386
11503
  cat > conftest.$ac_ext <<_LT_EOF
11387
- #line 11387 "configure"
11504
+ #line 11504 "configure"
11388
11505
  #include "confdefs.h"
11389
11506
 
11390
11507
  #if HAVE_DLFCN_H
@@ -11623,6 +11740,15 @@ CC="$lt_save_CC"
11623
11740
 
11624
11741
 
11625
11742
 
11743
+ if test x$enable_darwin_at_rpath = xyes; then
11744
+ ENABLE_DARWIN_AT_RPATH_TRUE=
11745
+ ENABLE_DARWIN_AT_RPATH_FALSE='#'
11746
+ else
11747
+ ENABLE_DARWIN_AT_RPATH_TRUE='#'
11748
+ ENABLE_DARWIN_AT_RPATH_FALSE=
11749
+ fi
11750
+
11751
+
11626
11752
  # Check whether --enable-largefile was given.
11627
11753
  if test "${enable_largefile+set}" = set; then :
11628
11754
  enableval=$enable_largefile;
@@ -11929,7 +12055,9 @@ WARN_FLAGS=
11929
12055
  save_CFLAGS="$CFLAGS"
11930
12056
  for real_option in -W -Wall -Wwrite-strings -Wstrict-prototypes \
11931
12057
  -Wmissing-prototypes -Wold-style-definition \
11932
- -Wmissing-format-attribute -Wcast-qual; do
12058
+ -Wmissing-format-attribute -Wcast-qual \
12059
+ -Wno-attributes -Wno-unknown-attributes \
12060
+ -Wpointer-arith; do
11933
12061
  # Do the check with the no- prefix removed since gcc silently
11934
12062
  # accepts any -Wno-* option on purpose
11935
12063
  case $real_option in
@@ -12452,6 +12580,21 @@ fi
12452
12580
 
12453
12581
  done
12454
12582
 
12583
+ for ac_header in tlhelp32.h
12584
+ do :
12585
+ ac_fn_c_check_header_compile "$LINENO" "tlhelp32.h" "ac_cv_header_tlhelp32_h" "#ifdef HAVE_WINDOWS_H
12586
+ # include <windows.h>
12587
+ #endif
12588
+ "
12589
+ if test "x$ac_cv_header_tlhelp32_h" = xyes; then :
12590
+ cat >>confdefs.h <<_ACEOF
12591
+ #define HAVE_TLHELP32_H 1
12592
+ _ACEOF
12593
+
12594
+ fi
12595
+
12596
+ done
12597
+
12455
12598
 
12456
12599
  # Check for the fcntl function.
12457
12600
  if test -n "${with_target_subdir}"; then
@@ -12840,9 +12983,9 @@ else
12840
12983
  fi
12841
12984
 
12842
12985
 
12843
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether --compress-debug-sections is supported" >&5
12844
- $as_echo_n "checking whether --compress-debug-sections is supported... " >&6; }
12845
- if ${libgo_cv_ld_compress+:} false; then :
12986
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether --compress-debug-sections=zlib-gnu is supported" >&5
12987
+ $as_echo_n "checking whether --compress-debug-sections=zlib-gnu is supported... " >&6; }
12988
+ if ${libgo_cv_ld_compress_zlib_gnu+:} false; then :
12846
12989
  $as_echo_n "(cached) " >&6
12847
12990
  else
12848
12991
  LDFLAGS_hold=$LDFLAGS
@@ -12859,22 +13002,60 @@ main ()
12859
13002
  }
12860
13003
  _ACEOF
12861
13004
  if ac_fn_c_try_link "$LINENO"; then :
12862
- libgo_cv_ld_compress=yes
13005
+ libgo_cv_ld_compress_zlib_gnu=yes
13006
+ else
13007
+ libgo_cv_ld_compress_zlib_gnu=no
13008
+ fi
13009
+ rm -f core conftest.err conftest.$ac_objext \
13010
+ conftest$ac_exeext conftest.$ac_ext
13011
+ LDFLAGS=$LDFLAGS_hold
13012
+ fi
13013
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libgo_cv_ld_compress_zlib_gnu" >&5
13014
+ $as_echo "$libgo_cv_ld_compress_zlib_gnu" >&6; }
13015
+ if test "$libgo_cv_ld_compress_zlib_gnu" = yes; then
13016
+ HAVE_COMPRESSED_DEBUG_ZLIB_GNU_TRUE=
13017
+ HAVE_COMPRESSED_DEBUG_ZLIB_GNU_FALSE='#'
13018
+ else
13019
+ HAVE_COMPRESSED_DEBUG_ZLIB_GNU_TRUE='#'
13020
+ HAVE_COMPRESSED_DEBUG_ZLIB_GNU_FALSE=
13021
+ fi
13022
+
13023
+
13024
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether --compress-debug-sections=zlib-gabi is supported" >&5
13025
+ $as_echo_n "checking whether --compress-debug-sections=zlib-gabi is supported... " >&6; }
13026
+ if ${libgo_cv_ld_compress_zlib_gabi+:} false; then :
13027
+ $as_echo_n "(cached) " >&6
13028
+ else
13029
+ LDFLAGS_hold=$LDFLAGS
13030
+ LDFLAGS="$LDFLAGS -Wl,--compress-debug-sections=zlib-gabi"
13031
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
13032
+ /* end confdefs.h. */
13033
+
13034
+ int
13035
+ main ()
13036
+ {
13037
+
13038
+ ;
13039
+ return 0;
13040
+ }
13041
+ _ACEOF
13042
+ if ac_fn_c_try_link "$LINENO"; then :
13043
+ libgo_cv_ld_compress_zlib_gabi=yes
12863
13044
  else
12864
- libgo_cv_ld_compress=no
13045
+ libgo_cv_ld_compress_zlib_gabi=no
12865
13046
  fi
12866
13047
  rm -f core conftest.err conftest.$ac_objext \
12867
13048
  conftest$ac_exeext conftest.$ac_ext
12868
13049
  LDFLAGS=$LDFLAGS_hold
12869
13050
  fi
12870
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libgo_cv_ld_compress" >&5
12871
- $as_echo "$libgo_cv_ld_compress" >&6; }
12872
- if test "$libgo_cv_ld_compress" = yes; then
12873
- HAVE_COMPRESSED_DEBUG_TRUE=
12874
- HAVE_COMPRESSED_DEBUG_FALSE='#'
13051
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: $libgo_cv_ld_compress_zlib_gabi" >&5
13052
+ $as_echo "$libgo_cv_ld_compress_zlib_gabi" >&6; }
13053
+ if test "$libgo_cv_ld_compress_zlib_gabi" = yes; then
13054
+ HAVE_COMPRESSED_DEBUG_ZLIB_GABI_TRUE=
13055
+ HAVE_COMPRESSED_DEBUG_ZLIB_GABI_FALSE='#'
12875
13056
  else
12876
- HAVE_COMPRESSED_DEBUG_TRUE='#'
12877
- HAVE_COMPRESSED_DEBUG_FALSE=
13057
+ HAVE_COMPRESSED_DEBUG_ZLIB_GABI_TRUE='#'
13058
+ HAVE_COMPRESSED_DEBUG_ZLIB_GABI_FALSE=
12878
13059
  fi
12879
13060
 
12880
13061
 
@@ -13493,6 +13674,10 @@ if test -z "${HAVE_DWZ_TRUE}" && test -z "${HAVE_DWZ_FALSE}"; then
13493
13674
  as_fn_error $? "conditional \"HAVE_DWZ\" was never defined.
13494
13675
  Usually this means the macro was only invoked conditionally." "$LINENO" 5
13495
13676
  fi
13677
+ if test -z "${ENABLE_DARWIN_AT_RPATH_TRUE}" && test -z "${ENABLE_DARWIN_AT_RPATH_FALSE}"; then
13678
+ as_fn_error $? "conditional \"ENABLE_DARWIN_AT_RPATH\" was never defined.
13679
+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
13680
+ fi
13496
13681
  if test -z "${HAVE_ELF_TRUE}" && test -z "${HAVE_ELF_FALSE}"; then
13497
13682
  as_fn_error $? "conditional \"HAVE_ELF\" was never defined.
13498
13683
  Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -13513,8 +13698,12 @@ if test -z "${HAVE_BUILDID_TRUE}" && test -z "${HAVE_BUILDID_FALSE}"; then
13513
13698
  as_fn_error $? "conditional \"HAVE_BUILDID\" was never defined.
13514
13699
  Usually this means the macro was only invoked conditionally." "$LINENO" 5
13515
13700
  fi
13516
- if test -z "${HAVE_COMPRESSED_DEBUG_TRUE}" && test -z "${HAVE_COMPRESSED_DEBUG_FALSE}"; then
13517
- as_fn_error $? "conditional \"HAVE_COMPRESSED_DEBUG\" was never defined.
13701
+ if test -z "${HAVE_COMPRESSED_DEBUG_ZLIB_GNU_TRUE}" && test -z "${HAVE_COMPRESSED_DEBUG_ZLIB_GNU_FALSE}"; then
13702
+ as_fn_error $? "conditional \"HAVE_COMPRESSED_DEBUG_ZLIB_GNU\" was never defined.
13703
+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
13704
+ fi
13705
+ if test -z "${HAVE_COMPRESSED_DEBUG_ZLIB_GABI_TRUE}" && test -z "${HAVE_COMPRESSED_DEBUG_ZLIB_GABI_FALSE}"; then
13706
+ as_fn_error $? "conditional \"HAVE_COMPRESSED_DEBUG_ZLIB_GABI\" was never defined.
13518
13707
  Usually this means the macro was only invoked conditionally." "$LINENO" 5
13519
13708
  fi
13520
13709
  if test -z "${HAVE_ZSTD_TRUE}" && test -z "${HAVE_ZSTD_FALSE}"; then
@@ -1,5 +1,5 @@
1
1
  # configure.ac -- Backtrace configure script.
2
- # Copyright (C) 2012-2021 Free Software Foundation, Inc.
2
+ # Copyright (C) 2012-2024 Free Software Foundation, Inc.
3
3
 
4
4
  # Redistribution and use in source and binary forms, with or without
5
5
  # modification, are permitted provided that the following conditions are
@@ -90,6 +90,8 @@ AM_CONDITIONAL(HAVE_DWZ, test "$DWZ" != "")
90
90
  LT_INIT
91
91
  AM_PROG_LIBTOOL
92
92
 
93
+ AM_CONDITIONAL([ENABLE_DARWIN_AT_RPATH], [test x$enable_darwin_at_rpath = xyes])
94
+
93
95
  AC_SYS_LARGEFILE
94
96
 
95
97
  backtrace_supported=yes
@@ -142,7 +144,9 @@ AC_SUBST(EXTRA_FLAGS)
142
144
 
143
145
  ACX_PROG_CC_WARNING_OPTS([-W -Wall -Wwrite-strings -Wstrict-prototypes \
144
146
  -Wmissing-prototypes -Wold-style-definition \
145
- -Wmissing-format-attribute -Wcast-qual],
147
+ -Wmissing-format-attribute -Wcast-qual \
148
+ -Wno-attributes -Wno-unknown-attributes \
149
+ -Wpointer-arith],
146
150
  [WARN_FLAGS])
147
151
 
148
152
  AC_ARG_ENABLE([werror],
@@ -374,6 +378,10 @@ if test "$have_loadquery" = "yes"; then
374
378
  fi
375
379
 
376
380
  AC_CHECK_HEADERS(windows.h)
381
+ AC_CHECK_HEADERS(tlhelp32.h, [], [],
382
+ [#ifdef HAVE_WINDOWS_H
383
+ # include <windows.h>
384
+ #endif])
377
385
 
378
386
  # Check for the fcntl function.
379
387
  if test -n "${with_target_subdir}"; then
@@ -497,16 +505,27 @@ AC_LINK_IFELSE([AC_LANG_PROGRAM(,)],
497
505
  LDFLAGS=$LDFLAGS_hold])
498
506
  AM_CONDITIONAL(HAVE_BUILDID, test "$libbacktrace_cv_ld_buildid" = yes)
499
507
 
500
- dnl Test whether the linker supports the --compress-debug-sections option.
501
- AC_CACHE_CHECK([whether --compress-debug-sections is supported],
502
- [libgo_cv_ld_compress],
508
+ dnl Test whether the linker supports the --compress-debug-sections=zlib-gnu
509
+ dnl option.
510
+ AC_CACHE_CHECK([whether --compress-debug-sections=zlib-gnu is supported],
511
+ [libgo_cv_ld_compress_zlib_gnu],
503
512
  [LDFLAGS_hold=$LDFLAGS
504
513
  LDFLAGS="$LDFLAGS -Wl,--compress-debug-sections=zlib-gnu"
505
514
  AC_LINK_IFELSE([AC_LANG_PROGRAM(,)],
506
- [libgo_cv_ld_compress=yes],
507
- [libgo_cv_ld_compress=no])
515
+ [libgo_cv_ld_compress_zlib_gnu=yes],
516
+ [libgo_cv_ld_compress_zlib_gnu=no])
517
+ LDFLAGS=$LDFLAGS_hold])
518
+ AM_CONDITIONAL(HAVE_COMPRESSED_DEBUG_ZLIB_GNU, test "$libgo_cv_ld_compress_zlib_gnu" = yes)
519
+
520
+ AC_CACHE_CHECK([whether --compress-debug-sections=zlib-gabi is supported],
521
+ [libgo_cv_ld_compress_zlib_gabi],
522
+ [LDFLAGS_hold=$LDFLAGS
523
+ LDFLAGS="$LDFLAGS -Wl,--compress-debug-sections=zlib-gabi"
524
+ AC_LINK_IFELSE([AC_LANG_PROGRAM(,)],
525
+ [libgo_cv_ld_compress_zlib_gabi=yes],
526
+ [libgo_cv_ld_compress_zlib_gabi=no])
508
527
  LDFLAGS=$LDFLAGS_hold])
509
- AM_CONDITIONAL(HAVE_COMPRESSED_DEBUG, test "$libgo_cv_ld_compress" = yes)
528
+ AM_CONDITIONAL(HAVE_COMPRESSED_DEBUG_ZLIB_GABI, test "$libgo_cv_ld_compress_zlib_gabi" = yes)
510
529
 
511
530
  AC_CHECK_LIB([zstd], [ZSTD_compress],
512
531
  [AC_DEFINE(HAVE_ZSTD, 1, [Define if -lzstd is available.])])