public inbox for gdb-cvs@sourceware.org help / color / mirror / Atom feed
From: Nick Clifton <nickc@sourceware.org> To: bfd-cvs@sourceware.org, gdb-cvs@sourceware.org Subject: [binutils-gdb] gprofng: a new GNU profiler Date: Fri, 11 Mar 2022 09:00:01 +0000 (GMT) [thread overview] Message-ID: <20220311090001.6CDCC385781C@sourceware.org> (raw) https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=bb368aad297fe3ad40cf397e6fc85aa471429a28 commit bb368aad297fe3ad40cf397e6fc85aa471429a28 Author: Vladimir Mezentsev <vladimir.mezentsev@oracle.com> Date: Fri Mar 11 08:58:31 2022 +0000 gprofng: a new GNU profiler top-level * Makefile.def: Add gprofng module. * configure.ac: Add --enable-gprofng option. * src-release.sh: Add gprofng. * Makefile.in: Regenerate. * configure: Regenerate. * gprofng: New directory. binutils * MAINTAINERS: Add gprofng maintainer. * README-how-to-make-a-release: Add gprofng. include. * collectorAPI.h: New file. * libcollector.h: New file. * libfcollector.h: New file. Diff: --- ChangeLog | 9 + Makefile.def | 11 + Makefile.in | 497 + binutils/ChangeLog | 5 + binutils/MAINTAINERS | 1 + binutils/README-how-to-make-a-release | 12 +- configure | 18 + configure.ac | 14 + gprofng/Makefile.am | 79 + gprofng/Makefile.in | 940 + gprofng/README | 100 + gprofng/acinclude.m4 | 4 + gprofng/aclocal.m4 | 1254 ++ gprofng/common/cc_libcollector.h | 44 + gprofng/common/config.h.in | 117 + gprofng/common/core_pcbe.c | 3023 +++ gprofng/common/cpu_frequency.h | 303 + gprofng/common/cpuid.c | 203 + gprofng/common/gp-defs.h | 58 + gprofng/common/gp-experiment.h | 186 + gprofng/common/gp-time.h | 46 + gprofng/common/hwc_cpus.h | 198 + gprofng/common/hwcdrv.c | 1454 ++ gprofng/common/hwcdrv.h | 330 + gprofng/common/hwcentry.h | 417 + gprofng/common/hwcfuncs.c | 704 + gprofng/common/hwcfuncs.h | 269 + gprofng/common/hwctable.c | 5410 ++++++ gprofng/common/opteron_pcbe.c | 448 + gprofng/config/bison.m4 | 92 + gprofng/configure | 19350 +++++++++++++++++++ gprofng/configure.ac | 189 + gprofng/doc/Makefile.am | 37 + gprofng/doc/Makefile.in | 834 + gprofng/doc/fdl.texi | 506 + gprofng/doc/gprofng.texi | 3399 ++++ gprofng/doc/mdate-sh | 224 + gprofng/doc/texinfo.tex | 11731 +++++++++++ gprofng/doc/version.texi | 4 + gprofng/gp-display-html/Makefile.am | 60 + gprofng/gp-display-html/Makefile.in | 630 + gprofng/gp-display-html/gp-display-html.in | 256 + gprofng/libcollector/CHK_LIBC_OBJ | 82 + gprofng/libcollector/Makefile.am | 79 + gprofng/libcollector/Makefile.in | 1131 ++ gprofng/libcollector/aclocal.m4 | 1237 ++ gprofng/libcollector/collector.c | 2494 +++ gprofng/libcollector/collector.h | 236 + gprofng/libcollector/collectorAPI.c | 140 + gprofng/libcollector/configure | 18081 +++++++++++++++++ gprofng/libcollector/configure.ac | 60 + gprofng/libcollector/descendants.h | 81 + gprofng/libcollector/dispatcher.c | 1263 ++ gprofng/libcollector/envmgmt.c | 840 + gprofng/libcollector/gethrtime.c | 41 + gprofng/libcollector/heaptrace.c | 503 + gprofng/libcollector/hwprofile.c | 905 + gprofng/libcollector/hwprofile.h | 89 + gprofng/libcollector/iolib.c | 1156 ++ gprofng/libcollector/iotrace.c | 3728 ++++ gprofng/libcollector/jprofile.c | 1315 ++ gprofng/libcollector/libcol-i386-dis.c | 28 + gprofng/libcollector/libcol_hwcdrv.c | 25 + gprofng/libcollector/libcol_hwcfuncs.c | 27 + gprofng/libcollector/libcol_util.c | 1693 ++ gprofng/libcollector/libcol_util.h | 321 + gprofng/libcollector/linetrace.c | 2005 ++ gprofng/libcollector/mapfile.aarch64-Linux | 40 + gprofng/libcollector/mapfile.amd64-Linux | 79 + gprofng/libcollector/mapfile.intel-Linux | 81 + gprofng/libcollector/mapfile.sparc-Linux | 40 + gprofng/libcollector/mapfile.sparcv9-Linux | 58 + gprofng/libcollector/memmgr.c | 396 + gprofng/libcollector/memmgr.h | 59 + gprofng/libcollector/mmaptrace.c | 1691 ++ gprofng/libcollector/profile.c | 287 + gprofng/libcollector/synctrace.c | 1064 + gprofng/libcollector/tsd.c | 149 + gprofng/libcollector/tsd.h | 80 + gprofng/libcollector/unwind.c | 4630 +++++ gprofng/src/ABS.h | 62 + gprofng/src/Application.cc | 259 + gprofng/src/Application.h | 108 + gprofng/src/ArchiveExp.cc | 149 + gprofng/src/ArchiveExp.h | 41 + gprofng/src/BaseMetric.cc | 975 + gprofng/src/BaseMetric.h | 246 + gprofng/src/BaseMetricTreeNode.cc | 329 + gprofng/src/BaseMetricTreeNode.h | 100 + gprofng/src/CacheMap.h | 186 + gprofng/src/CallStack.cc | 1250 ++ gprofng/src/CallStack.h | 114 + gprofng/src/CatchOutOfMemory.cc | 59 + gprofng/src/ClassFile.cc | 1639 ++ gprofng/src/ClassFile.h | 63 + gprofng/src/Command.cc | 562 + gprofng/src/Command.h | 286 + gprofng/src/CompCom.cc | 313 + gprofng/src/CompCom.h | 63 + gprofng/src/DataObject.cc | 193 + gprofng/src/DataObject.h | 82 + gprofng/src/DataSpace.cc | 558 + gprofng/src/DataSpace.h | 55 + gprofng/src/DataStream.cc | 55 + gprofng/src/DataStream.h | 51 + gprofng/src/Data_window.cc | 241 + gprofng/src/Data_window.h | 99 + gprofng/src/Dbe.cc | 10371 ++++++++++ gprofng/src/Dbe.h | 294 + gprofng/src/DbeApplication.cc | 113 + gprofng/src/DbeApplication.h | 50 + gprofng/src/DbeArray.h | 99 + gprofng/src/DbeCacheMap.h | 109 + gprofng/src/DbeFile.cc | 541 + gprofng/src/DbeFile.h | 103 + gprofng/src/DbeJarFile.cc | 505 + gprofng/src/DbeJarFile.h | 46 + gprofng/src/DbeLinkList.h | 73 + gprofng/src/DbeLock.cc | 41 + gprofng/src/DbeLock.h | 38 + gprofng/src/DbeSession.cc | 3527 ++++ gprofng/src/DbeSession.cc.1 | 3531 ++++ gprofng/src/DbeSession.h | 481 + gprofng/src/DbeSyncMap.h | 224 + gprofng/src/DbeThread.cc | 224 + gprofng/src/DbeThread.h | 61 + gprofng/src/DbeView.cc | 3126 +++ gprofng/src/DbeView.h | 842 + gprofng/src/DefaultHandler.h | 114 + gprofng/src/DefaultMap.h | 232 + gprofng/src/DefaultMap2D.h | 147 + gprofng/src/DerivedMetrics.cc | 293 + gprofng/src/DerivedMetrics.h | 54 + gprofng/src/Disasm.cc | 403 + gprofng/src/Disasm.h | 66 + gprofng/src/Dwarf.cc | 1041 + gprofng/src/Dwarf.h | 87 + gprofng/src/DwarfLib.cc | 2203 +++ gprofng/src/DwarfLib.h | 313 + gprofng/src/Elf.cc | 1138 ++ gprofng/src/Elf.h | 170 + gprofng/src/Emsg.cc | 614 + gprofng/src/Emsg.h | 112 + gprofng/src/Emsgnum.h | 135 + gprofng/src/ExpGroup.cc | 163 + gprofng/src/ExpGroup.h | 50 + gprofng/src/Exp_Layout.cc | 422 + gprofng/src/Exp_Layout.h | 158 + gprofng/src/Experiment.cc | 6961 +++++++ gprofng/src/Experiment.h | 689 + gprofng/src/Expression.cc | 1279 ++ gprofng/src/Expression.h | 180 + gprofng/src/FileData.cc | 400 + gprofng/src/FileData.h | 522 + gprofng/src/Filter.cc | 514 + gprofng/src/Filter.h | 111 + gprofng/src/FilterExp.h | 56 + gprofng/src/FilterSet.cc | 106 + gprofng/src/FilterSet.h | 72 + gprofng/src/Function.cc | 1160 ++ gprofng/src/Function.h | 222 + gprofng/src/HashMap.h | 435 + gprofng/src/HeapActivity.cc | 408 + gprofng/src/HeapActivity.h | 76 + gprofng/src/HeapData.cc | 284 + gprofng/src/HeapData.h | 450 + gprofng/src/HeapMap.cc | 325 + gprofng/src/HeapMap.h | 59 + gprofng/src/Hist_data.cc | 1886 ++ gprofng/src/Hist_data.h | 292 + gprofng/src/Histable.h | 333 + gprofng/src/IOActivity.cc | 825 + gprofng/src/IOActivity.h | 86 + gprofng/src/IndexMap2D.h | 119 + gprofng/src/IndexObject.cc | 554 + gprofng/src/IndexObject.h | 111 + gprofng/src/IntervalMap.h | 194 + gprofng/src/LoadObject.cc | 1242 ++ gprofng/src/LoadObject.h | 210 + gprofng/src/MachineModel.cc | 317 + gprofng/src/Makefile.am | 202 + gprofng/src/Makefile.in | 1171 ++ gprofng/src/Map.h | 61 + gprofng/src/Map2D.h | 53 + gprofng/src/MemObject.cc | 44 + gprofng/src/MemObject.h | 62 + gprofng/src/MemorySpace.cc | 452 + gprofng/src/MemorySpace.h | 113 + gprofng/src/Metric.cc | 1660 ++ gprofng/src/Metric.h | 188 + gprofng/src/MetricList.cc | 1075 ++ gprofng/src/MetricList.h | 163 + gprofng/src/Module.cc | 1840 ++ gprofng/src/Module.h | 284 + gprofng/src/Ovw_data.cc | 242 + gprofng/src/Ovw_data.h | 102 + gprofng/src/PRBTree.cc | 480 + gprofng/src/PRBTree.h | 106 + gprofng/src/PathTree.cc | 2637 +++ gprofng/src/PathTree.h | 405 + gprofng/src/PreviewExp.cc | 113 + gprofng/src/PreviewExp.h | 49 + gprofng/src/Print.cc | 3485 ++++ gprofng/src/Print.h | 283 + gprofng/src/QLParser.h | 61 + gprofng/src/QLParser.tab.cc | 1453 ++ gprofng/src/QLParser.tab.hh | 2038 ++ gprofng/src/QLParser.yy | 390 + gprofng/src/SAXParser.h | 49 + gprofng/src/SAXParserFactory.cc | 666 + gprofng/src/SAXParserFactory.h | 75 + gprofng/src/Sample.cc | 94 + gprofng/src/Sample.h | 80 + gprofng/src/SegMem.h | 76 + gprofng/src/Settings.cc | 1586 ++ gprofng/src/Settings.h | 425 + gprofng/src/SourceFile.cc | 229 + gprofng/src/SourceFile.h | 117 + gprofng/src/Stabs.cc | 2650 +++ gprofng/src/Stabs.h | 160 + gprofng/src/Stats_data.cc | 203 + gprofng/src/Stats_data.h | 59 + gprofng/src/StringBuilder.cc | 585 + gprofng/src/StringBuilder.h | 101 + gprofng/src/StringMap.h | 238 + gprofng/src/Table.cc | 1687 ++ gprofng/src/Table.h | 618 + gprofng/src/UserLabel.cc | 177 + gprofng/src/UserLabel.h | 61 + gprofng/src/checks.cc | 516 + gprofng/src/collctrl.cc | 3149 +++ gprofng/src/collctrl.h | 405 + gprofng/src/collect.h | 156 + gprofng/src/collector_module.h | 223 + gprofng/src/comp_com.c | 3481 ++++ gprofng/src/comp_com.h | 903 + gprofng/src/count.cc | 237 + gprofng/src/data_pckts.h | 595 + gprofng/src/dbe_collctrl.cc | 28 + gprofng/src/dbe_hwc.h | 38 + gprofng/src/dbe_hwcdrv.c | 23 + gprofng/src/dbe_hwcfuncs.c | 23 + gprofng/src/dbe_hwctable.c | 23 + gprofng/src/dbe_memmgr.c | 118 + gprofng/src/dbe_structs.h | 219 + gprofng/src/dbe_types.h | 62 + gprofng/src/debug.h | 89 + gprofng/src/enums.h | 195 + gprofng/src/envsets.cc | 420 + gprofng/src/gethrtime.c | 166 + gprofng/src/gp-archive.cc | 700 + gprofng/src/gp-archive.h | 64 + gprofng/src/gp-collect-app.cc | 1598 ++ gprofng/src/gp-display-src.cc | 752 + gprofng/src/gp-display-text.cc | 2834 +++ gprofng/src/gp-print.h | 118 + gprofng/src/gprofng.cc | 301 + gprofng/src/gprofng.h2m | 4 + gprofng/src/gprofng.rc | 132 + gprofng/src/i18n.cc | 30 + gprofng/src/i18n.h | 40 + gprofng/src/info.h | 73 + gprofng/src/ipc.cc | 2829 +++ gprofng/src/ipcio.cc | 1025 + gprofng/src/ipcio.h | 176 + gprofng/src/machinemodels/generic.ermm | 32 + gprofng/src/machinemodels/m5.ermm | 65 + gprofng/src/machinemodels/m6.ermm | 65 + gprofng/src/machinemodels/m7.ermm | 64 + gprofng/src/machinemodels/t4.ermm | 67 + gprofng/src/machinemodels/t5.ermm | 65 + gprofng/src/parse.cc | 927 + gprofng/src/stab.h | 205 + gprofng/src/util.cc | 1582 ++ gprofng/src/util.h | 185 + gprofng/src/vec.h | 524 + gprofng/testsuite/config/default.exp | 38 + gprofng/testsuite/gprofng.display/display.exp | 86 + .../gprofng.display/jsynprog/Intface.java | 6 + .../gprofng.display/jsynprog/Launcher.java | 90 + .../testsuite/gprofng.display/jsynprog/Makefile | 56 + .../gprofng.display/jsynprog/Routine.java | 224 + .../gprofng.display/jsynprog/Sub_Routine.java | 54 + .../gprofng.display/jsynprog/check_results.pl | 33 + .../testsuite/gprofng.display/jsynprog/cloop.cc | 114 + .../testsuite/gprofng.display/jsynprog/jsynprog.h | 74 + .../gprofng.display/jsynprog/jsynprog.java | 229 + gprofng/testsuite/gprofng.display/mttest/Makefile | 41 + .../gprofng.display/mttest/check_results.pl | 46 + .../testsuite/gprofng.display/mttest/gethrtime.c | 265 + gprofng/testsuite/gprofng.display/mttest/mttest.c | 1306 ++ gprofng/testsuite/gprofng.display/synprog/Makefile | 66 + gprofng/testsuite/gprofng.display/synprog/callso.c | 152 + gprofng/testsuite/gprofng.display/synprog/callsx.c | 152 + .../gprofng.display/synprog/check_results.pl | 40 + .../testsuite/gprofng.display/synprog/endcases.c | 208 + gprofng/testsuite/gprofng.display/synprog/fitos.c | 78 + .../testsuite/gprofng.display/synprog/inc_body.h | 26 + .../testsuite/gprofng.display/synprog/inc_brace.h | 26 + .../testsuite/gprofng.display/synprog/inc_entry.h | 24 + .../testsuite/gprofng.display/synprog/inc_exit.h | 25 + .../testsuite/gprofng.display/synprog/inc_func.h | 28 + .../testsuite/gprofng.display/synprog/inc_inline.h | 32 + .../testsuite/gprofng.display/synprog/inc_macro.h | 26 + gprofng/testsuite/gprofng.display/synprog/iosyn.c | 614 + .../testsuite/gprofng.display/synprog/pagethrash.c | 75 + gprofng/testsuite/gprofng.display/synprog/so_syn.c | 69 + gprofng/testsuite/gprofng.display/synprog/so_syx.c | 68 + .../testsuite/gprofng.display/synprog/stopwatch.c | 294 + .../testsuite/gprofng.display/synprog/stopwatch.h | 61 + .../testsuite/gprofng.display/synprog/synprog.c | 1823 ++ gprofng/testsuite/lib/Makefile.skel | 61 + gprofng/testsuite/lib/acct.pm | 774 + gprofng/testsuite/lib/display-lib.exp | 105 + include/ChangeLog | 6 + include/collectorAPI.h | 73 + include/libcollector.h | 89 + include/libfcollector.h | 42 + src-release.sh | 4 +- 319 files changed, 222979 insertions(+), 8 deletions(-) diff --git a/ChangeLog b/ChangeLog index 18e8b6835da..73b6085d6ef 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2022-03-11 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> + + * Makefile.def: Add gprofng module. + * configure.ac: Add --enable-gprofng option. + * src-release.sh: Add gprofng. + * Makefile.in: Regenerate. + * configure: Regenerate. + * gprofng: New directory. + 2022-01-22 Nick Clifton <nickc@redhat.com> * 2.38 release branch created. diff --git a/Makefile.def b/Makefile.def index 8181a7aa97b..acdcd625ed6 100644 --- a/Makefile.def +++ b/Makefile.def @@ -75,6 +75,7 @@ host_modules= { module= libelf; lib_path=.libs; bootstrap=true; no_install= true; }; host_modules= { module= gold; bootstrap=true; }; host_modules= { module= gprof; }; +host_modules= { module= gprofng; }; host_modules= { module= intl; bootstrap=true; }; host_modules= { module= tcl; missing=mostlyclean; }; @@ -508,6 +509,16 @@ dependencies = { module=all-gprof; on=all-bfd; }; dependencies = { module=all-gprof; on=all-opcodes; }; dependencies = { module=all-gprof; on=all-intl; }; dependencies = { module=all-gprof; on=all-gas; }; + +dependencies = { module=configure-gprofng; on=configure-intl; }; +dependencies = { module=all-gprofng; on=all-libiberty; }; +dependencies = { module=all-gprofng; on=all-bfd; }; +dependencies = { module=all-gprofng; on=all-opcodes; }; +dependencies = { module=all-gprofng; on=all-intl; }; +dependencies = { module=all-gprofng; on=all-gas; }; +dependencies = { module=install-gprofng; on=install-opcodes; }; +dependencies = { module=install-gprofng; on=install-bfd; }; + dependencies = { module=configure-ld; on=configure-intl; }; dependencies = { module=all-ld; on=all-libiberty; }; dependencies = { module=all-ld; on=all-bfd; }; diff --git a/Makefile.in b/Makefile.in index 843e150dac6..3aacd2daac9 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1073,6 +1073,7 @@ configure-host: \ maybe-configure-libelf \ maybe-configure-gold \ maybe-configure-gprof \ + maybe-configure-gprofng \ maybe-configure-intl \ maybe-configure-tcl \ maybe-configure-itcl \ @@ -1228,6 +1229,7 @@ all-host: maybe-all-libelf all-host: maybe-all-gold @endif gold-no-bootstrap all-host: maybe-all-gprof +all-host: maybe-all-gprofng @if intl-no-bootstrap all-host: maybe-all-intl @endif intl-no-bootstrap @@ -1357,6 +1359,7 @@ info-host: maybe-info-isl info-host: maybe-info-libelf info-host: maybe-info-gold info-host: maybe-info-gprof +info-host: maybe-info-gprofng info-host: maybe-info-intl info-host: maybe-info-tcl info-host: maybe-info-itcl @@ -1447,6 +1450,7 @@ dvi-host: maybe-dvi-isl dvi-host: maybe-dvi-libelf dvi-host: maybe-dvi-gold dvi-host: maybe-dvi-gprof +dvi-host: maybe-dvi-gprofng dvi-host: maybe-dvi-intl dvi-host: maybe-dvi-tcl dvi-host: maybe-dvi-itcl @@ -1537,6 +1541,7 @@ pdf-host: maybe-pdf-isl pdf-host: maybe-pdf-libelf pdf-host: maybe-pdf-gold pdf-host: maybe-pdf-gprof +pdf-host: maybe-pdf-gprofng pdf-host: maybe-pdf-intl pdf-host: maybe-pdf-tcl pdf-host: maybe-pdf-itcl @@ -1627,6 +1632,7 @@ html-host: maybe-html-isl html-host: maybe-html-libelf html-host: maybe-html-gold html-host: maybe-html-gprof +html-host: maybe-html-gprofng html-host: maybe-html-intl html-host: maybe-html-tcl html-host: maybe-html-itcl @@ -1717,6 +1723,7 @@ TAGS-host: maybe-TAGS-isl TAGS-host: maybe-TAGS-libelf TAGS-host: maybe-TAGS-gold TAGS-host: maybe-TAGS-gprof +TAGS-host: maybe-TAGS-gprofng TAGS-host: maybe-TAGS-intl TAGS-host: maybe-TAGS-tcl TAGS-host: maybe-TAGS-itcl @@ -1807,6 +1814,7 @@ install-info-host: maybe-install-info-isl install-info-host: maybe-install-info-libelf install-info-host: maybe-install-info-gold install-info-host: maybe-install-info-gprof +install-info-host: maybe-install-info-gprofng install-info-host: maybe-install-info-intl install-info-host: maybe-install-info-tcl install-info-host: maybe-install-info-itcl @@ -1897,6 +1905,7 @@ install-dvi-host: maybe-install-dvi-isl install-dvi-host: maybe-install-dvi-libelf install-dvi-host: maybe-install-dvi-gold install-dvi-host: maybe-install-dvi-gprof +install-dvi-host: maybe-install-dvi-gprofng install-dvi-host: maybe-install-dvi-intl install-dvi-host: maybe-install-dvi-tcl install-dvi-host: maybe-install-dvi-itcl @@ -1987,6 +1996,7 @@ install-pdf-host: maybe-install-pdf-isl install-pdf-host: maybe-install-pdf-libelf install-pdf-host: maybe-install-pdf-gold install-pdf-host: maybe-install-pdf-gprof +install-pdf-host: maybe-install-pdf-gprofng install-pdf-host: maybe-install-pdf-intl install-pdf-host: maybe-install-pdf-tcl install-pdf-host: maybe-install-pdf-itcl @@ -2077,6 +2087,7 @@ install-html-host: maybe-install-html-isl install-html-host: maybe-install-html-libelf install-html-host: maybe-install-html-gold install-html-host: maybe-install-html-gprof +install-html-host: maybe-install-html-gprofng install-html-host: maybe-install-html-intl install-html-host: maybe-install-html-tcl install-html-host: maybe-install-html-itcl @@ -2167,6 +2178,7 @@ installcheck-host: maybe-installcheck-isl installcheck-host: maybe-installcheck-libelf installcheck-host: maybe-installcheck-gold installcheck-host: maybe-installcheck-gprof +installcheck-host: maybe-installcheck-gprofng installcheck-host: maybe-installcheck-intl installcheck-host: maybe-installcheck-tcl installcheck-host: maybe-installcheck-itcl @@ -2257,6 +2269,7 @@ mostlyclean-host: maybe-mostlyclean-isl mostlyclean-host: maybe-mostlyclean-libelf mostlyclean-host: maybe-mostlyclean-gold mostlyclean-host: maybe-mostlyclean-gprof +mostlyclean-host: maybe-mostlyclean-gprofng mostlyclean-host: maybe-mostlyclean-intl mostlyclean-host: maybe-mostlyclean-tcl mostlyclean-host: maybe-mostlyclean-itcl @@ -2347,6 +2360,7 @@ clean-host: maybe-clean-isl clean-host: maybe-clean-libelf clean-host: maybe-clean-gold clean-host: maybe-clean-gprof +clean-host: maybe-clean-gprofng clean-host: maybe-clean-intl clean-host: maybe-clean-tcl clean-host: maybe-clean-itcl @@ -2437,6 +2451,7 @@ distclean-host: maybe-distclean-isl distclean-host: maybe-distclean-libelf distclean-host: maybe-distclean-gold distclean-host: maybe-distclean-gprof +distclean-host: maybe-distclean-gprofng distclean-host: maybe-distclean-intl distclean-host: maybe-distclean-tcl distclean-host: maybe-distclean-itcl @@ -2527,6 +2542,7 @@ maintainer-clean-host: maybe-maintainer-clean-isl maintainer-clean-host: maybe-maintainer-clean-libelf maintainer-clean-host: maybe-maintainer-clean-gold maintainer-clean-host: maybe-maintainer-clean-gprof +maintainer-clean-host: maybe-maintainer-clean-gprofng maintainer-clean-host: maybe-maintainer-clean-intl maintainer-clean-host: maybe-maintainer-clean-tcl maintainer-clean-host: maybe-maintainer-clean-itcl @@ -2675,6 +2691,7 @@ check-host: \ maybe-check-libelf \ maybe-check-gold \ maybe-check-gprof \ + maybe-check-gprofng \ maybe-check-intl \ maybe-check-tcl \ maybe-check-itcl \ @@ -2812,6 +2829,7 @@ install-host-nogcc: \ maybe-install-libelf \ maybe-install-gold \ maybe-install-gprof \ + maybe-install-gprofng \ maybe-install-intl \ maybe-install-tcl \ maybe-install-itcl \ @@ -2867,6 +2885,7 @@ install-host: \ maybe-install-libelf \ maybe-install-gold \ maybe-install-gprof \ + maybe-install-gprofng \ maybe-install-intl \ maybe-install-tcl \ maybe-install-itcl \ @@ -2977,6 +2996,7 @@ install-strip-host: \ maybe-install-strip-libelf \ maybe-install-strip-gold \ maybe-install-strip-gprof \ + maybe-install-strip-gprofng \ maybe-install-strip-intl \ maybe-install-strip-tcl \ maybe-install-strip-itcl \ @@ -20404,6 +20424,474 @@ maintainer-clean-gprof: +.PHONY: configure-gprofng maybe-configure-gprofng +maybe-configure-gprofng: +@if gcc-bootstrap +configure-gprofng: stage_current +@endif gcc-bootstrap +@if gprofng +maybe-configure-gprofng: configure-gprofng +configure-gprofng: + @: $(MAKE); $(unstage) + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + test ! -f $(HOST_SUBDIR)/gprofng/Makefile || exit 0; \ + $(SHELL) $(srcdir)/mkinstalldirs $(HOST_SUBDIR)/gprofng; \ + $(HOST_EXPORTS) \ + echo Configuring in $(HOST_SUBDIR)/gprofng; \ + cd "$(HOST_SUBDIR)/gprofng" || exit 1; \ + case $(srcdir) in \ + /* | [A-Za-z]:[\\/]*) topdir=$(srcdir) ;; \ + *) topdir=`echo $(HOST_SUBDIR)/gprofng/ | \ + sed -e 's,\./,,g' -e 's,[^/]*/,../,g' `$(srcdir) ;; \ + esac; \ + module_srcdir=gprofng; \ + $(SHELL) \ + $$s/$$module_srcdir/configure \ + --srcdir=$${topdir}/$$module_srcdir \ + $(HOST_CONFIGARGS) --build=${build_alias} --host=${host_alias} \ + --target=${target_alias} \ + || exit 1 +@endif gprofng + + + + + +.PHONY: all-gprofng maybe-all-gprofng +maybe-all-gprofng: +@if gcc-bootstrap +all-gprofng: stage_current +@endif gcc-bootstrap +@if gprofng +TARGET-gprofng=all +maybe-all-gprofng: all-gprofng +all-gprofng: configure-gprofng + @: $(MAKE); $(unstage) + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) \ + $(TARGET-gprofng)) +@endif gprofng + + + + +.PHONY: check-gprofng maybe-check-gprofng +maybe-check-gprofng: +@if gprofng +maybe-check-gprofng: check-gprofng + +check-gprofng: + @: $(MAKE); $(unstage) + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(FLAGS_TO_PASS) check) + +@endif gprofng + +.PHONY: install-gprofng maybe-install-gprofng +maybe-install-gprofng: +@if gprofng +maybe-install-gprofng: install-gprofng + +install-gprofng: installdirs + @: $(MAKE); $(unstage) + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(FLAGS_TO_PASS) install) + +@endif gprofng + +.PHONY: install-strip-gprofng maybe-install-strip-gprofng +maybe-install-strip-gprofng: +@if gprofng +maybe-install-strip-gprofng: install-strip-gprofng + +install-strip-gprofng: installdirs + @: $(MAKE); $(unstage) + @r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(FLAGS_TO_PASS) install-strip) + +@endif gprofng + +# Other targets (info, dvi, pdf, etc.) + +.PHONY: maybe-info-gprofng info-gprofng +maybe-info-gprofng: +@if gprofng +maybe-info-gprofng: info-gprofng + +info-gprofng: \ + configure-gprofng + @: $(MAKE); $(unstage) + @[ -f ./gprofng/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS) ; do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing info in gprofng"; \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \ + info) \ + || exit 1 + +@endif gprofng + +.PHONY: maybe-dvi-gprofng dvi-gprofng +maybe-dvi-gprofng: +@if gprofng +maybe-dvi-gprofng: dvi-gprofng + +dvi-gprofng: \ + configure-gprofng + @: $(MAKE); $(unstage) + @[ -f ./gprofng/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS) ; do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing dvi in gprofng"; \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \ + dvi) \ + || exit 1 + +@endif gprofng + +.PHONY: maybe-pdf-gprofng pdf-gprofng +maybe-pdf-gprofng: +@if gprofng +maybe-pdf-gprofng: pdf-gprofng + +pdf-gprofng: \ + configure-gprofng + @: $(MAKE); $(unstage) + @[ -f ./gprofng/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS) ; do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing pdf in gprofng"; \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \ + pdf) \ + || exit 1 + +@endif gprofng + +.PHONY: maybe-html-gprofng html-gprofng +maybe-html-gprofng: +@if gprofng +maybe-html-gprofng: html-gprofng + +html-gprofng: \ + configure-gprofng + @: $(MAKE); $(unstage) + @[ -f ./gprofng/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS) ; do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing html in gprofng"; \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \ + html) \ + || exit 1 + +@endif gprofng + +.PHONY: maybe-TAGS-gprofng TAGS-gprofng +maybe-TAGS-gprofng: +@if gprofng +maybe-TAGS-gprofng: TAGS-gprofng + +TAGS-gprofng: \ + configure-gprofng + @: $(MAKE); $(unstage) + @[ -f ./gprofng/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS) ; do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing TAGS in gprofng"; \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \ + TAGS) \ + || exit 1 + +@endif gprofng + +.PHONY: maybe-install-info-gprofng install-info-gprofng +maybe-install-info-gprofng: +@if gprofng +maybe-install-info-gprofng: install-info-gprofng + +install-info-gprofng: \ + configure-gprofng \ + info-gprofng + @: $(MAKE); $(unstage) + @[ -f ./gprofng/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS) ; do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing install-info in gprofng"; \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \ + install-info) \ + || exit 1 + +@endif gprofng + +.PHONY: maybe-install-dvi-gprofng install-dvi-gprofng +maybe-install-dvi-gprofng: +@if gprofng +maybe-install-dvi-gprofng: install-dvi-gprofng + +install-dvi-gprofng: \ + configure-gprofng \ + dvi-gprofng + @: $(MAKE); $(unstage) + @[ -f ./gprofng/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS) ; do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing install-dvi in gprofng"; \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \ + install-dvi) \ + || exit 1 + +@endif gprofng + +.PHONY: maybe-install-pdf-gprofng install-pdf-gprofng +maybe-install-pdf-gprofng: +@if gprofng +maybe-install-pdf-gprofng: install-pdf-gprofng + +install-pdf-gprofng: \ + configure-gprofng \ + pdf-gprofng + @: $(MAKE); $(unstage) + @[ -f ./gprofng/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS) ; do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing install-pdf in gprofng"; \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \ + install-pdf) \ + || exit 1 + +@endif gprofng + +.PHONY: maybe-install-html-gprofng install-html-gprofng +maybe-install-html-gprofng: +@if gprofng +maybe-install-html-gprofng: install-html-gprofng + +install-html-gprofng: \ + configure-gprofng \ + html-gprofng + @: $(MAKE); $(unstage) + @[ -f ./gprofng/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS) ; do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing install-html in gprofng"; \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \ + install-html) \ + || exit 1 + +@endif gprofng + +.PHONY: maybe-installcheck-gprofng installcheck-gprofng +maybe-installcheck-gprofng: +@if gprofng +maybe-installcheck-gprofng: installcheck-gprofng + +installcheck-gprofng: \ + configure-gprofng + @: $(MAKE); $(unstage) + @[ -f ./gprofng/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS) ; do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing installcheck in gprofng"; \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \ + installcheck) \ + || exit 1 + +@endif gprofng + +.PHONY: maybe-mostlyclean-gprofng mostlyclean-gprofng +maybe-mostlyclean-gprofng: +@if gprofng +maybe-mostlyclean-gprofng: mostlyclean-gprofng + +mostlyclean-gprofng: + @: $(MAKE); $(unstage) + @[ -f ./gprofng/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS) ; do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing mostlyclean in gprofng"; \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \ + mostlyclean) \ + || exit 1 + +@endif gprofng + +.PHONY: maybe-clean-gprofng clean-gprofng +maybe-clean-gprofng: +@if gprofng +maybe-clean-gprofng: clean-gprofng + +clean-gprofng: + @: $(MAKE); $(unstage) + @[ -f ./gprofng/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS) ; do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing clean in gprofng"; \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \ + clean) \ + || exit 1 + +@endif gprofng + +.PHONY: maybe-distclean-gprofng distclean-gprofng +maybe-distclean-gprofng: +@if gprofng +maybe-distclean-gprofng: distclean-gprofng + +distclean-gprofng: + @: $(MAKE); $(unstage) + @[ -f ./gprofng/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS) ; do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing distclean in gprofng"; \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \ + distclean) \ + || exit 1 + +@endif gprofng + +.PHONY: maybe-maintainer-clean-gprofng maintainer-clean-gprofng +maybe-maintainer-clean-gprofng: +@if gprofng +maybe-maintainer-clean-gprofng: maintainer-clean-gprofng + +maintainer-clean-gprofng: + @: $(MAKE); $(unstage) + @[ -f ./gprofng/Makefile ] || exit 0; \ + r=`${PWD_COMMAND}`; export r; \ + s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \ + $(HOST_EXPORTS) \ + for flag in $(EXTRA_HOST_FLAGS) ; do \ + eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \ + done; \ + echo "Doing maintainer-clean in gprofng"; \ + (cd $(HOST_SUBDIR)/gprofng && \ + $(MAKE) $(BASE_FLAGS_TO_PASS) "AR=$${AR}" "AS=$${AS}" \ + "CC=$${CC}" "CXX=$${CXX}" "LD=$${LD}" "NM=$${NM}" \ + "RANLIB=$${RANLIB}" \ + "DLLTOOL=$${DLLTOOL}" "WINDRES=$${WINDRES}" "WINDMC=$${WINDMC}" \ + maintainer-clean) \ + || exit 1 + +@endif gprofng + + + .PHONY: configure-intl maybe-configure-intl maybe-configure-intl: @if gcc-bootstrap @@ -62838,6 +63326,8 @@ all-stagetrain-gas: maybe-all-stagetrain-intl all-stagefeedback-gas: maybe-all-stagefeedback-intl all-stageautoprofile-gas: maybe-all-stageautoprofile-intl all-stageautofeedback-gas: maybe-all-stageautofeedback-intl +install-gprofng: maybe-install-opcodes +install-gprofng: maybe-install-bfd configure-ld: maybe-configure-intl configure-stage1-ld: maybe-configure-stage1-intl configure-stage2-ld: maybe-configure-stage2-intl @@ -63240,6 +63730,7 @@ configure-gdb: stage_last configure-gdbserver: stage_last configure-gdbsupport: stage_last configure-gprof: stage_last +configure-gprofng: stage_last configure-sid: stage_last configure-sim: stage_last configure-fastjar: stage_last @@ -63272,6 +63763,12 @@ all-gprof: maybe-all-bfd all-gprof: maybe-all-opcodes all-gprof: maybe-all-intl all-gprof: maybe-all-gas +configure-gprofng: maybe-configure-intl +all-gprofng: maybe-all-libiberty +all-gprofng: maybe-all-bfd +all-gprofng: maybe-all-opcodes +all-gprofng: maybe-all-intl +all-gprofng: maybe-all-gas all-sid: maybe-all-libiberty all-sid: maybe-all-bfd all-sid: maybe-all-opcodes diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 213f8710c39..539849c8815 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +2022-03-11 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> + + * MAINTAINERS: Add gprofng maintainer. + * README-how-to-make-a-release: Add gprofng. + 2022-03-10 Nick Clifton <nickc@redhat.com> * dwarf.c (use_debuginfod): New variable. Set to 1. diff --git a/binutils/MAINTAINERS b/binutils/MAINTAINERS index ef12371f353..fda4a653a99 100644 --- a/binutils/MAINTAINERS +++ b/binutils/MAINTAINERS @@ -84,6 +84,7 @@ responsibility among the other maintainers. FRV Alexandre Oliva <aoliva@sourceware.org> GOLD Ian Lance Taylor <iant@google.com> GOLD Cary Coutant <ccoutant@gmail.com> + gprofng Vladimir Mezentsev <vladimir.mezentsev@oracle.com> H8300 Prafulla Thakare <prafulla.thakare@kpitcummins.com> HPPA Dave Anglin <dave.anglin@bell.net> HPPA elf32 Alan Modra <amodra@gmail.com> diff --git a/binutils/README-how-to-make-a-release b/binutils/README-how-to-make-a-release index e52d9aebbe4..5afc6f25ccb 100644 --- a/binutils/README-how-to-make-a-release +++ b/binutils/README-how-to-make-a-release @@ -35,7 +35,7 @@ Approx time to complete from here: 2 hours .... in the gold directory - it has its own release numbering. Likewise for the ChangeLog files in: bfd, binutils, config, cpu, - elfcpp, gas, gold, gprof, include, ld, libctf, libiberty, opcodes + elfcpp, gas, gold, gprof, gprofng, include, ld, libctf, libiberty, opcodes and toplevel. Add a note of the name of the new branch to binutils/BRANCHES. @@ -97,8 +97,8 @@ Approx time to complete from here: 2 hours .... m4_define([BFD_VERSION], [2.39.50]) Regenerate various files on both branch and HEAD by configuring - with "--enable-maintainer-mode --enable-gold" and then building - with "make all-binutils all-gas all-gold all-gprof all-ld" + with "--enable-maintainer-mode --enable-gold --enable-shared" and then building + with "make all-binutils all-gas all-gold all-gprof all-gprofng all-ld" Add ChangeLog entries for the updated files. Commit the changes. Make sure that this includes the .pot files as well as the @@ -114,7 +114,7 @@ Approx time to complete from here: 2 hours .... b. Create a source tarball of the BRANCH sources: - ./src-release -x binutils + ./src-release.sh -x binutils c. Build a test target using this tarball. @@ -262,8 +262,8 @@ When the time comes to actually make the release.... chmod -R -w binutils-2.* mkdir build cd build - ../binutils-2.*/configure --quiet --enable-gold --prefix=`pwd`/install --enable-plugins - make all-gas all-gold all-ld all-binutils all-gprof + ../binutils-2.*/configure --quiet --enable-gold --prefix=`pwd`/install --enable-plugins --enable-shared + make all-gas all-gold all-ld all-binutils all-gprof all-gprofng make check-gas check-binutils check-ld check-gold make install-gas install-gold install-ld install-binutils diff --git a/configure b/configure index 787fcf89100..26935ebda24 100755 --- a/configure +++ b/configure @@ -787,6 +787,7 @@ enable_as_accelerator_for enable_offload_targets enable_gold enable_ld +enable_gprofng enable_compressed_debug_sections enable_libquadmath enable_libquadmath_support @@ -1514,6 +1515,7 @@ Optional Features: offload target compiler during the build --enable-gold[=ARG] build gold [ARG={default,yes,no}] --enable-ld[=ARG] build ld [ARG={default,yes,no}] + --enable-gprofng[=ARG] build gprofng [ARG={yes,no}] --enable-compressed-debug-sections={all,gas,gold,ld,none} Enable compressed debug sections for gas, gold or ld by default @@ -3072,6 +3074,22 @@ $as_echo "$as_me: WARNING: neither ld nor gold are enabled" >&2;} ;; esac +# Check whether --enable-gprofng was given. +if test "${enable_gprofng+set}" = set; then : + enableval=$enable_gprofng; enable_gprofng=$enableval +else + enable_gprofng=yes +fi + +if test "$enable_gprofng" = "yes"; then + case "${target}" in + x86_64-*-linux* | i?86-*-linux* | aarch64-*-linux*) + configdirs="$configdirs gprofng" + ;; + esac +fi + + # PR gas/19109 # Decide the default method for compressing debug sections. # Provide a configure time option to override our default. diff --git a/configure.ac b/configure.ac index 2b10e9a1b02..da4e41d7247 100644 --- a/configure.ac +++ b/configure.ac @@ -392,6 +392,20 @@ case "${ENABLE_LD}" in ;; esac +AC_ARG_ENABLE(gprofng, +[AS_HELP_STRING([[--enable-gprofng[=ARG]]], + [build gprofng @<:@ARG={yes,no}@:>@])], +enable_gprofng=$enableval, +enable_gprofng=yes) +if test "$enable_gprofng" = "yes"; then + case "${target}" in + x86_64-*-linux* | i?86-*-linux* | aarch64-*-linux*) + configdirs="$configdirs gprofng" + ;; + esac +fi + + # PR gas/19109 # Decide the default method for compressing debug sections. # Provide a configure time option to override our default. diff --git a/gprofng/Makefile.am b/gprofng/Makefile.am new file mode 100644 index 00000000000..3bf707412ca --- /dev/null +++ b/gprofng/Makefile.am @@ -0,0 +1,79 @@ +## Process this file with automake to generate Makefile.in +# +# Copyright (C) 2021 Free Software Foundation, Inc. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; see the file COPYING3. If not see +# <http://www.gnu.org/licenses/>. + +ACLOCAL_AMFLAGS = -I . -I .. + +AUTOMAKE_OPTIONS = dejagnu foreign + +if BUILD_COLLECTOR + COLLECTOR_SUBDIRS = libcollector +endif +if BUILD_SRC + SRC_SUBDIRS = src gp-display-html doc +endif +SUBDIRS = $(COLLECTOR_SUBDIRS) $(SRC_SUBDIRS) +DIST_SUBDIRS = libcollector src gp-display-html doc + +# Setup the testing framework, if you have one +EXPECT = expect +RUNTEST = runtest +RUNTESTFLAGS = + +BASEDIR = $(srcdir)/.. +BFDDIR = $(BASEDIR)/bfd +jdk_inc = @jdk_inc@ +LD_NO_AS_NEEDED = @LD_NO_AS_NEEDED@ +GPROFNG_CFLAGS = @GPROFNG_CFLAGS@ +GPROFNG_CPPFLAGS = @GPROFNG_CPPFLAGS@ +GPROFNG_LIBDIR = @GPROFNG_LIBDIR@ + +AM_MAKEFLAGS = \ + jdk_inc="$(jdk_inc)" \ + LD_NO_AS_NEEDED="$(LD_NO_AS_NEEDED)" \ + GPROFNG_CFLAGS="$(GPROFNG_CFLAGS)" \ + GPROFNG_CPPFLAGS="$(GPROFNG_CPPFLAGS)" \ + GPROFNG_LIBDIR="$(GPROFNG_LIBDIR)" + +if TCL_TRY +check-DEJAGNU: site.exp development.exp + srcroot=`cd $(srcdir) && pwd`; export srcroot; \ + r=`pwd`; export r; \ + LC_ALL=C; export LC_ALL; \ + EXPECT=$(EXPECT); export EXPECT; \ + jdk_inc="$(jdk_inc)"; export jdk_inc; \ + runtest=$(RUNTEST); \ + if $(SHELL) -c "$$runtest --version" > /dev/null 2>&1; then \ + $$runtest --tool $(DEJATOOL) --srcdir $${srcroot}/testsuite \ + MAKE="$(MAKE)" CC="$(CC)" CFLAGS="$(CFLAGS) $(PTHREAD_CFLAGS)" \ + LDFLAGS="$(LDFLAGS)" LIBS="$(PTHREAD_LIBS) $(LIBS)" \ + BUILDDIR="$(abs_top_builddir)" $(RUNTESTFLAGS); \ + else echo "WARNING: could not find \`runtest'" 1>&2; :;\ + fi + +development.exp: $(BFDDIR)/development.sh + $(EGREP) "(development|experimental)=" $(BFDDIR)/development.sh \ + | $(AWK) -F= '{ print "set " $$1 " " $$2 }' > $@ + +# development.sh is used to determine -Werror default. +CONFIG_STATUS_DEPENDENCIES = $(BFDDIR)/development.sh + +EXTRA_DEJAGNU_SITE_CONFIG = development.exp + +DISTCLEANFILES = site.exp development.exp +endif + diff --git a/gprofng/Makefile.in b/gprofng/Makefile.in new file mode 100644 index 00000000000..08ffdd2b65a --- /dev/null +++ b/gprofng/Makefile.in @@ -0,0 +1,940 @@ +# Makefile.in generated by automake 1.15.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2017 Free Software Foundation, Inc. + +# This Makefile.in is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +@SET_MAKE@ + +# +# Copyright (C) 2021 Free Software Foundation, Inc. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; see the file COPYING3. If not see +# <http://www.gnu.org/licenses/>. +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +install_sh_DATA = $(install_sh) -c -m 644 +install_sh_PROGRAM = $(install_sh) -c +install_sh_SCRIPT = $(install_sh) -c +INSTALL_HEADER = $(INSTALL_DATA) +transform = $(program_transform_name) +NORMAL_INSTALL = : +PRE_INSTALL = : +POST_INSTALL = : +NORMAL_UNINSTALL = : +PRE_UNINSTALL = : +POST_UNINSTALL = : +build_triplet = @build@ +host_triplet = @host@ +subdir = . +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/../libtool.m4 \ + $(top_srcdir)/../ltoptions.m4 $(top_srcdir)/../ltsugar.m4 \ + $(top_srcdir)/../ltversion.m4 $(top_srcdir)/../lt~obsolete.m4 \ + $(top_srcdir)/acinclude.m4 $(top_srcdir)/../config/warnings.m4 \ + $(top_srcdir)/../config/enable.m4 \ + $(top_srcdir)/../config/ax_pthread.m4 \ + $(top_srcdir)/config/bison.m4 $(top_srcdir)/../bfd/version.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ + $(am__configure_deps) $(am__DIST_COMMON) +am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ + configure.lineno config.status.lineno +mkinstalldirs = $(SHELL) $(top_srcdir)/../mkinstalldirs +CONFIG_HEADER = config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ + ctags-recursive dvi-recursive html-recursive info-recursive \ + install-data-recursive install-dvi-recursive \ + install-exec-recursive install-html-recursive \ + install-info-recursive install-pdf-recursive \ + install-ps-recursive install-recursive installcheck-recursive \ + installdirs-recursive pdf-recursive ps-recursive \ + tags-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +am__recursive_targets = \ + $(RECURSIVE_TARGETS) \ + $(RECURSIVE_CLEAN_TARGETS) \ + $(am__extra_recursive_targets) +AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ + cscope distdir dist dist-all distcheck +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +CSCOPE = cscope +DEJATOOL = $(PACKAGE) +RUNTESTDEFAULTFLAGS = --tool $$tool --srcdir $$srcdir +am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/../ar-lib \ + $(top_srcdir)/../compile $(top_srcdir)/../config.guess \ + $(top_srcdir)/../config.sub $(top_srcdir)/../install-sh \ + $(top_srcdir)/../ltmain.sh $(top_srcdir)/../missing \ + $(top_srcdir)/../mkinstalldirs \ + $(top_srcdir)/common/config.h.in README +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +distdir = $(PACKAGE)-$(VERSION) +top_distdir = $(distdir) +am__remove_distdir = \ + if test -d "$(distdir)"; then \ + find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ + && rm -rf "$(distdir)" \ + || { sleep 5 && rm -rf "$(distdir)"; }; \ + else :; fi +am__post_remove_distdir = $(am__remove_distdir) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" +DIST_ARCHIVES = $(distdir).tar.gz +GZIP_ENV = --best +DIST_TARGETS = dist-gzip +distuninstallcheck_listfiles = find . -type f -print +am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ + | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' +distcleancheck_listfiles = find . -type f -print +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +BUILD_SUBDIRS = @BUILD_SUBDIRS@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CXX = @CXX@ +CXXCPP = @CXXCPP@ +CXXDEPMODE = @CXXDEPMODE@ +CXXFLAGS = @CXXFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ + +# Setup the testing framework, if you have one +EXPECT = expect +FGREP = @FGREP@ +GPROFNG_CFLAGS = @GPROFNG_CFLAGS@ +GPROFNG_CPPFLAGS = @GPROFNG_CPPFLAGS@ +GPROFNG_LIBADD = @GPROFNG_LIBADD@ +GPROFNG_LIBDIR = @GPROFNG_LIBDIR@ +GREP = @GREP@ +HELP2MAN = @HELP2MAN@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +JAVA = @JAVA@ +JAVAC = @JAVAC@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LD_NO_AS_NEEDED = @LD_NO_AS_NEEDED@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBOBJS = @LTLIBOBJS@ +MAINT = @MAINT@ +MAKEINFO = @MAKEINFO@ +MKDIR_P = @MKDIR_P@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PTHREAD_CC = @PTHREAD_CC@ +PTHREAD_CFLAGS = @PTHREAD_CFLAGS@ +PTHREAD_LIBS = @PTHREAD_LIBS@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +VERSION = @VERSION@ +WERROR = @WERROR@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_CXX = @ac_ct_CXX@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +ax_pthread_config = @ax_pthread_config@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +gprofng_cflags = @gprofng_cflags@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +jdk_inc = @jdk_inc@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +subdirs = @subdirs@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +ACLOCAL_AMFLAGS = -I . -I .. +AUTOMAKE_OPTIONS = dejagnu foreign +@BUILD_COLLECTOR_TRUE@COLLECTOR_SUBDIRS = libcollector +@BUILD_SRC_TRUE@SRC_SUBDIRS = src gp-display-html doc +SUBDIRS = $(COLLECTOR_SUBDIRS) $(SRC_SUBDIRS) +DIST_SUBDIRS = libcollector src gp-display-html doc +RUNTEST = runtest +RUNTESTFLAGS = +BASEDIR = $(srcdir)/.. +BFDDIR = $(BASEDIR)/bfd +AM_MAKEFLAGS = \ + jdk_inc="$(jdk_inc)" \ + LD_NO_AS_NEEDED="$(LD_NO_AS_NEEDED)" \ + GPROFNG_CFLAGS="$(GPROFNG_CFLAGS)" \ + GPROFNG_CPPFLAGS="$(GPROFNG_CPPFLAGS)" \ + GPROFNG_LIBDIR="$(GPROFNG_LIBDIR)" + + +# development.sh is used to determine -Werror default. +@TCL_TRY_TRUE@CONFIG_STATUS_DEPENDENCIES = $(BFDDIR)/development.sh +@TCL_TRY_TRUE@EXTRA_DEJAGNU_SITE_CONFIG = development.exp +@TCL_TRY_TRUE@DISTCLEANFILES = site.exp development.exp +all: config.h + $(MAKE) $(AM_MAKEFLAGS) all-recursive + +.SUFFIXES: +am--refresh: Makefile + @: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \ + $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign Makefile +Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status + @case '$?' in \ + *config.status*) \ + echo ' $(SHELL) ./config.status'; \ + $(SHELL) ./config.status;; \ + *) \ + echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ + cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ + esac; + +$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) + $(SHELL) ./config.status --recheck + +$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + $(am__cd) $(srcdir) && $(AUTOCONF) +$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) + $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) +$(am__aclocal_m4_deps): + +config.h: stamp-h1 + @test -f $@ || rm -f stamp-h1 + @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1 + +stamp-h1: $(top_srcdir)/common/config.h.in $(top_builddir)/config.status + @rm -f stamp-h1 + cd $(top_builddir) && $(SHELL) ./config.status config.h +$(top_srcdir)/common/config.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) + ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) + rm -f stamp-h1 + touch $@ + +distclean-hdr: + -rm -f config.h stamp-h1 + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + -rm -f libtool config.lt + +# This directory's subdirectories are mostly independent; you can cd +# into them and run 'make' without going through this Makefile. +# To change the values of 'make' variables: instead of editing Makefiles, +# (1) if the variable is set in 'config.status', edit 'config.status' +# (which will cause the Makefiles to be regenerated when you run 'make'); +# (2) otherwise, pass the desired values on the 'make' command line. +$(am__recursive_targets): + @fail=; \ + if $(am__make_keepgoing); then \ + failcom='fail=yes'; \ + else \ + failcom='exit 1'; \ + fi; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + for subdir in $$list; do \ + echo "Making $$target in $$subdir"; \ + if test "$$subdir" = "."; then \ + dot_seen=yes; \ + local_target="$$target-am"; \ + else \ + local_target="$$target"; \ + fi; \ + ($(am__cd) $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ + || eval $$failcom; \ + done; \ + if test "$$dot_seen" = "no"; then \ + $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ + fi; test -z "$$fail" + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-recursive +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ + include_option=--etags-include; \ + empty_fix=.; \ + else \ + include_option=--include; \ + empty_fix=; \ + fi; \ + list='$(SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + test ! -f $$subdir/TAGS || \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-recursive + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscope: cscope.files + test ! -s cscope.files \ + || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS) +clean-cscope: + -rm -f cscope.files +cscope.files: clean-cscope cscopelist +cscopelist: cscopelist-recursive + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + -rm -f cscope.out cscope.in.out cscope.po.out cscope.files + +@TCL_TRY_FALSE@check-DEJAGNU: site.exp +@TCL_TRY_FALSE@ srcdir='$(srcdir)'; export srcdir; \ +@TCL_TRY_FALSE@ EXPECT=$(EXPECT); export EXPECT; \ +@TCL_TRY_FALSE@ if $(SHELL) -c "$(RUNTEST) --version" > /dev/null 2>&1; then \ +@TCL_TRY_FALSE@ exit_status=0; l='$(DEJATOOL)'; for tool in $$l; do \ +@TCL_TRY_FALSE@ if $(RUNTEST) $(AM_RUNTESTFLAGS) $(RUNTESTDEFAULTFLAGS) $(RUNTESTFLAGS); \ +@TCL_TRY_FALSE@ then :; else exit_status=1; fi; \ +@TCL_TRY_FALSE@ done; \ +@TCL_TRY_FALSE@ else echo "WARNING: could not find '$(RUNTEST)'" 1>&2; :;\ +@TCL_TRY_FALSE@ fi; \ +@TCL_TRY_FALSE@ exit $$exit_status +site.exp: Makefile $(EXTRA_DEJAGNU_SITE_CONFIG) + @echo 'Making a new site.exp file ...' + @echo '## these variables are automatically generated by make ##' >site.tmp + @echo '# Do not edit here. If you wish to override these values' >>site.tmp + @echo '# edit the last section' >>site.tmp + @echo 'set srcdir "$(srcdir)"' >>site.tmp + @echo "set objdir `pwd`" >>site.tmp + @echo 'set build_alias "$(build_alias)"' >>site.tmp + @echo 'set build_triplet $(build_triplet)' >>site.tmp + @echo 'set host_alias "$(host_alias)"' >>site.tmp + @echo 'set host_triplet $(host_triplet)' >>site.tmp + @list='$(EXTRA_DEJAGNU_SITE_CONFIG)'; for f in $$list; do \ + echo "## Begin content included from file $$f. Do not modify. ##" \ + && cat `test -f "$$f" || echo '$(srcdir)/'`$$f \ + && echo "## End content included from file $$f. ##" \ + || exit 1; \ + done >> site.tmp + @echo "## End of auto-generated content; you can edit from here. ##" >> site.tmp + @if test -f site.exp; then \ + sed -e '1,/^## End of auto-generated content.*##/d' site.exp >> site.tmp; \ + fi + @-rm -f site.bak + @test ! -f site.exp || mv site.exp site.bak + @mv site.tmp site.exp + +distclean-DEJAGNU: + -rm -f site.exp site.bak + -l='$(DEJATOOL)'; for tool in $$l; do \ + rm -f $$tool.sum $$tool.log; \ + done + +distdir: $(DISTFILES) + $(am__remove_distdir) + test -d "$(distdir)" || mkdir "$(distdir)" + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done + @list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ + if test "$$subdir" = .; then :; else \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ + distdir) \ + || exit 1; \ + fi; \ + done + -test -n "$(am__skip_mode_fix)" \ + || find "$(distdir)" -type d ! -perm -755 \ + -exec chmod u+rwx,go+rx {} \; -o \ + ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ + ! -type d ! -perm -444 -exec $(install_sh) -c -m a+r {} {} \; \ + || chmod -R a+r "$(distdir)" +dist-gzip: distdir + tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz + $(am__post_remove_distdir) + +dist-bzip2: distdir + tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 + $(am__post_remove_distdir) + +dist-lzip: distdir + tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz + $(am__post_remove_distdir) + +dist-xz: distdir + tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz + $(am__post_remove_distdir) + +dist-tarZ: distdir + @echo WARNING: "Support for distribution archives compressed with" \ + "legacy program 'compress' is deprecated." >&2 + @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 + tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z + $(am__post_remove_distdir) + +dist-shar: distdir + @echo WARNING: "Support for shar distribution archives is" \ + "deprecated." >&2 + @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 + shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz + $(am__post_remove_distdir) + +dist-zip: distdir + -rm -f $(distdir).zip + zip -rq $(distdir).zip $(distdir) + $(am__post_remove_distdir) + +dist dist-all: + $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:' + $(am__post_remove_distdir) + +# This target untars the dist file and tries a VPATH configuration. Then +# it guarantees that the distribution is self-contained by making another +# tarfile. +distcheck: dist + case '$(DIST_ARCHIVES)' in \ + *.tar.gz*) \ + eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\ + *.tar.bz2*) \ + bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ + *.tar.lz*) \ + lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ + *.tar.xz*) \ + xz -dc $(distdir).tar.xz | $(am__untar) ;;\ + *.tar.Z*) \ + uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ + *.shar.gz*) \ + eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\ + *.zip*) \ + unzip $(distdir).zip ;;\ + esac + chmod -R a-w $(distdir) + chmod u+w $(distdir) + mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst + chmod a-w $(distdir) + test -d $(distdir)/_build || exit 0; \ + dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ + && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ + && am__cwd=`pwd` \ + && $(am__cd) $(distdir)/_build/sub \ + && ../../configure \ + $(AM_DISTCHECK_CONFIGURE_FLAGS) \ + $(DISTCHECK_CONFIGURE_FLAGS) \ + --srcdir=../.. --prefix="$$dc_install_base" \ + && $(MAKE) $(AM_MAKEFLAGS) \ + && $(MAKE) $(AM_MAKEFLAGS) dvi \ + && $(MAKE) $(AM_MAKEFLAGS) check \ + && $(MAKE) $(AM_MAKEFLAGS) install \ + && $(MAKE) $(AM_MAKEFLAGS) installcheck \ + && $(MAKE) $(AM_MAKEFLAGS) uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ + distuninstallcheck \ + && chmod -R a-w "$$dc_install_base" \ + && ({ \ + (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ + && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ + distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ + } || { rm -rf "$$dc_destdir"; exit 1; }) \ + && rm -rf "$$dc_destdir" \ + && $(MAKE) $(AM_MAKEFLAGS) dist \ + && rm -rf $(DIST_ARCHIVES) \ + && $(MAKE) $(AM_MAKEFLAGS) distcleancheck \ + && cd "$$am__cwd" \ + || exit 1 + $(am__post_remove_distdir) + @(echo "$(distdir) archives ready for distribution: "; \ + list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ + sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' +distuninstallcheck: + @test -n '$(distuninstallcheck_dir)' || { \ + echo 'ERROR: trying to run $@ with an empty' \ + '$$(distuninstallcheck_dir)' >&2; \ + exit 1; \ + }; \ + $(am__cd) '$(distuninstallcheck_dir)' || { \ + echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ + exit 1; \ + }; \ + test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ + || { echo "ERROR: files left after uninstall:" ; \ + if test -n "$(DESTDIR)"; then \ + echo " (check DESTDIR support)"; \ + fi ; \ + $(distuninstallcheck_listfiles) ; \ + exit 1; } >&2 +distcleancheck: distclean + @if test '$(srcdir)' = . ; then \ + echo "ERROR: distcleancheck can only run from a VPATH build" ; \ + exit 1 ; \ + fi + @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ + || { echo "ERROR: files left in build directory after distclean:" ; \ + $(distcleancheck_listfiles) ; \ + exit 1; } >&2 +check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU +check: check-recursive +all-am: Makefile config.h +installdirs: installdirs-recursive +installdirs-am: +install: install-recursive +install-exec: install-exec-recursive +install-data: install-data-recursive +uninstall: uninstall-recursive + +install-am: all-am + @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + +installcheck: installcheck-recursive +install-strip: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." +clean: clean-recursive + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -f Makefile +distclean-am: clean-am distclean-DEJAGNU distclean-generic \ + distclean-hdr distclean-libtool distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +html-am: + +info: info-recursive + +info-am: + +install-data-am: + +install-dvi: install-dvi-recursive + +install-dvi-am: + +install-exec-am: + +install-html: install-html-recursive + +install-html-am: + +install-info: install-info-recursive + +install-info-am: + +install-man: + +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -rf $(top_srcdir)/autom4te.cache + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(am__recursive_targets) all check-am install-am install-strip + +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--refresh check check-DEJAGNU check-am clean clean-cscope \ + clean-generic clean-libtool cscope cscopelist-am ctags \ + ctags-am dist dist-all dist-bzip2 dist-gzip dist-lzip \ + dist-shar dist-tarZ dist-xz dist-zip distcheck distclean \ + distclean-DEJAGNU distclean-generic distclean-hdr \ + distclean-libtool distclean-tags distcleancheck distdir \ + distuninstallcheck dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am tags tags-am uninstall uninstall-am + +.PRECIOUS: Makefile + + +@TCL_TRY_TRUE@check-DEJAGNU: site.exp development.exp +@TCL_TRY_TRUE@ srcroot=`cd $(srcdir) && pwd`; export srcroot; \ +@TCL_TRY_TRUE@ r=`pwd`; export r; \ +@TCL_TRY_TRUE@ LC_ALL=C; export LC_ALL; \ +@TCL_TRY_TRUE@ EXPECT=$(EXPECT); export EXPECT; \ +@TCL_TRY_TRUE@ jdk_inc="$(jdk_inc)"; export jdk_inc; \ +@TCL_TRY_TRUE@ runtest=$(RUNTEST); \ +@TCL_TRY_TRUE@ if $(SHELL) -c "$$runtest --version" > /dev/null 2>&1; then \ +@TCL_TRY_TRUE@ $$runtest --tool $(DEJATOOL) --srcdir $${srcroot}/testsuite \ +@TCL_TRY_TRUE@ MAKE="$(MAKE)" CC="$(CC)" CFLAGS="$(CFLAGS) $(PTHREAD_CFLAGS)" \ +@TCL_TRY_TRUE@ LDFLAGS="$(LDFLAGS)" LIBS="$(PTHREAD_LIBS) $(LIBS)" \ +@TCL_TRY_TRUE@ BUILDDIR="$(abs_top_builddir)" $(RUNTESTFLAGS); \ +@TCL_TRY_TRUE@ else echo "WARNING: could not find \`runtest'" 1>&2; :;\ +@TCL_TRY_TRUE@ fi + +@TCL_TRY_TRUE@development.exp: $(BFDDIR)/development.sh +@TCL_TRY_TRUE@ $(EGREP) "(development|experimental)=" $(BFDDIR)/development.sh \ +@TCL_TRY_TRUE@ | $(AWK) -F= '{ print "set " $$1 " " $$2 }' > $@ + +# Tell versions [3.59,3.63) of GNU make to not export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/gprofng/README b/gprofng/README new file mode 100644 index 00000000000..66d2e7c86ac --- /dev/null +++ b/gprofng/README @@ -0,0 +1,100 @@ +What is gprofng? + + Gprofng is the GNU Next Generation profiler for analyzing the performance + of Linux applications. Gprofng allows you to: + - Profile C / C++ / Java / Scala applications without needing to recompile + - Profile multi-threaded applications + - Analyze and compare multiple experiments + - Use time-based sampling and / or hardware event counters + +Building gprofng + + Gprofng is distributed with binutils. To build gprofng, you build binutils. + Overview: + 1. Set paths + 2. Verify prerequisites + 3. Git clone + 4. Configure, make, and make install + Details follow for each of these. + +1. Set paths + + If you are configuring binutils for the default location, it will use: + /usr/local + In your shell initialization procedure, set your paths using commands + similar to these: + export PATH=/usr/local/bin:$PATH + export MANPATH=/usr/local/share/man:$MANPATH + export INFOPATH=/usr/local/share/info/:$INFOPATH + +2. Verify prerequisites + + To build a recent version of binutils, it is useful to have a developer + system with the most recent compilers, libraries, and operating system. + Development systems will typically already include most of these: + + bison bison-devel bzip2 elfutils-debuginfod-client-devel + expat-devel flex gcc gcc-c++ git-core git-core-doc gmp-devel + help2man libbabeltrace-devel libipt-devel m4 make mpfr-devel + ncurses-devel perl-Data-Dumper tar texinfo xz zlib-devel + java-17-openjdk-devel + + CAUTION: The list of prerequisites changes depending on your operating system + and changes as binutils evolves. The list above is a snapshot of the useful + packages in early 2022 for Red Hat Enterprise Linux and Oracle Linux. + + Your system may use other packages; for example, you may be able to use a + different version of Java than shown above. If there are failures, you may + need to search for other packages as described in the "Hints" section below. + +3. Git clone + + Select a binutils repository and a branch that you would like + to start from. For example, to clone from the master at + sourceware.org, you could say: + git clone http://sourceware.org/git/binutils-gdb.git CloneDir + +4. Configure, make, and install + + There are many options for configure (see: configure --help). For example, + --prefix sets the destination, as described in the "Hints" section below. + If the default destination /usr/local is acceptable for your needs, then + after the clone operation finishes, you can simply say: + + mkdir build + cd build + ../CloneDir/configure + make + sudo make install + +Getting started + + To start using gprofng, see the tutorial available by saying: + info gprofng + +Hints and tips for building binutils + + - Use the script(1) command to write a log of your build. + + - If you run multiple commands at once (for example: make --jobs=10) then you + should also use make option: + --output-sync + Without --output-sync, the log would be difficult to interpret. + + - Search the log for errors and warnings, for example: + configure: WARNING: <package> is missing or unusable; some features + may be unavailable. + The above message suggests that <package> may be needed on your system. + + - Sometimes the above message is not sufficiently specific to guide you to + the right package. In the directory where the failure happens, config.log + may identify a specific missing file, and your package manager may allow + you to search for it. For example, if build/gprofng/config.log shows that + javac is missing, and if your package manager is dnf, you could try: + dnf --repo='*' whatprovides '*/javac' + + - You can set a custom destination directory using configure --prefix. + This is useful if you prefer not to change /usr/local, or if you are not + allowed to do so. If you set a custom prefix, be sure to change all three + paths mentioned in the PATH section above. + diff --git a/gprofng/acinclude.m4 b/gprofng/acinclude.m4 new file mode 100644 index 00000000000..966da186ee3 --- /dev/null +++ b/gprofng/acinclude.m4 @@ -0,0 +1,4 @@ +m4_include([../config/warnings.m4]) +m4_include([../config/enable.m4]) +m4_include([../config/ax_pthread.m4]) +m4_include([config/bison.m4]) diff --git a/gprofng/aclocal.m4 b/gprofng/aclocal.m4 new file mode 100644 index 00000000000..02b07b91597 --- /dev/null +++ b/gprofng/aclocal.m4 @@ -0,0 +1,1254 @@ +# generated automatically by aclocal 1.15.1 -*- Autoconf -*- + +# Copyright (C) 1996-2017 Free Software Foundation, Inc. + +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY, to the extent permitted by law; without +# even the implied warranty of MERCHANTABILITY or FITNESS FOR A +# PARTICULAR PURPOSE. + +m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) +m4_ifndef([AC_AUTOCONF_VERSION], + [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl +m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],, +[m4_warning([this file was generated for autoconf 2.69. +You have another version of autoconf. It may work, but is not guaranteed to. +If you have problems, you may need to regenerate the build system entirely. +To do so, use the procedure documented by the package, typically 'autoreconf'.])]) + +# Copyright (C) 2002-2017 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_AUTOMAKE_VERSION(VERSION) +# ---------------------------- +# Automake X.Y traces this macro to ensure aclocal.m4 has been +# generated from the m4 files accompanying Automake X.Y. +# (This private macro should not be called outside this file.) +AC_DEFUN([AM_AUTOMAKE_VERSION], +[am__api_version='1.15' +dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to +dnl require some minimum version. Point them to the right macro. +m4_if([$1], [1.15.1], [], + [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl +]) + +# _AM_AUTOCONF_VERSION(VERSION) +# ----------------------------- +# aclocal traces this macro to find the Autoconf version. +# This is a private macro too. Using m4_define simplifies +# the logic in aclocal, which can simply ignore this definition. +m4_define([_AM_AUTOCONF_VERSION], []) + +# AM_SET_CURRENT_AUTOMAKE_VERSION +# ------------------------------- +# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. +# This function is AC_REQUIREd by AM_INIT_AUTOMAKE. +AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], +[AM_AUTOMAKE_VERSION([1.15.1])dnl +m4_ifndef([AC_AUTOCONF_VERSION], + [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl +_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) + +# Copyright (C) 2011-2017 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_PROG_AR([ACT-IF-FAIL]) +# ------------------------- +# Try to determine the archiver interface, and trigger the ar-lib wrapper +# if it is needed. If the detection of archiver interface fails, run +# ACT-IF-FAIL (default is to abort configure with a proper error message). +AC_DEFUN([AM_PROG_AR], +[AC_BEFORE([$0], [LT_INIT])dnl +AC_BEFORE([$0], [AC_PROG_LIBTOOL])dnl +AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +AC_REQUIRE_AUX_FILE([ar-lib])dnl +AC_CHECK_TOOLS([AR], [ar lib "link -lib"], [false]) +: ${AR=ar} + +AC_CACHE_CHECK([the archiver ($AR) interface], [am_cv_ar_interface], + [AC_LANG_PUSH([C]) + am_cv_ar_interface=ar + AC_COMPILE_IFELSE([AC_LANG_SOURCE([[int some_variable = 0;]])], + [am_ar_try='$AR cru libconftest.a conftest.$ac_objext >&AS_MESSAGE_LOG_FD' + AC_TRY_EVAL([am_ar_try]) + if test "$ac_status" -eq 0; then + am_cv_ar_interface=ar + else + am_ar_try='$AR -NOLOGO -OUT:conftest.lib conftest.$ac_objext >&AS_MESSAGE_LOG_FD' + AC_TRY_EVAL([am_ar_try]) + if test "$ac_status" -eq 0; then + am_cv_ar_interface=lib + else + am_cv_ar_interface=unknown + fi + fi + rm -f conftest.lib libconftest.a + ]) + AC_LANG_POP([C])]) + +case $am_cv_ar_interface in +ar) + ;; +lib) + # Microsoft lib, so override with the ar-lib wrapper script. + # FIXME: It is wrong to rewrite AR. + # But if we don't then we get into trouble of one sort or another. + # A longer-term fix would be to have automake use am__AR in this case, + # and then we could set am__AR="$am_aux_dir/ar-lib \$(AR)" or something + # similar. + AR="$am_aux_dir/ar-lib $AR" + ;; +unknown) + m4_default([$1], + [AC_MSG_ERROR([could not determine $AR interface])]) + ;; +esac +AC_SUBST([AR])dnl +]) + +# AM_AUX_DIR_EXPAND -*- Autoconf -*- + +# Copyright (C) 2001-2017 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets +# $ac_aux_dir to '$srcdir/foo'. In other projects, it is set to +# '$srcdir', '$srcdir/..', or '$srcdir/../..'. +# +# Of course, Automake must honor this variable whenever it calls a +# tool from the auxiliary directory. The problem is that $srcdir (and +# therefore $ac_aux_dir as well) can be either absolute or relative, +# depending on how configure is run. This is pretty annoying, since +# it makes $ac_aux_dir quite unusable in subdirectories: in the top +# source directory, any form will work fine, but in subdirectories a +# relative path needs to be adjusted first. +# +# $ac_aux_dir/missing +# fails when called from a subdirectory if $ac_aux_dir is relative +# $top_srcdir/$ac_aux_dir/missing +# fails if $ac_aux_dir is absolute, +# fails when called from a subdirectory in a VPATH build with +# a relative $ac_aux_dir +# +# The reason of the latter failure is that $top_srcdir and $ac_aux_dir +# are both prefixed by $srcdir. In an in-source build this is usually +# harmless because $srcdir is '.', but things will broke when you +# start a VPATH build or use an absolute $srcdir. +# +# So we could use something similar to $top_srcdir/$ac_aux_dir/missing, +# iff we strip the leading $srcdir from $ac_aux_dir. That would be: +# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` +# and then we would define $MISSING as +# MISSING="\${SHELL} $am_aux_dir/missing" +# This will work as long as MISSING is not called from configure, because +# unfortunately $(top_srcdir) has no meaning in configure. +# However there are other variables, like CC, which are often used in +# configure, and could therefore not use this "fixed" $ac_aux_dir. +# +# Another solution, used here, is to always expand $ac_aux_dir to an +# absolute PATH. The drawback is that using absolute paths prevent a +# configured tree to be moved without reconfiguration. + +AC_DEFUN([AM_AUX_DIR_EXPAND], +[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl +# Expand $ac_aux_dir to an absolute path. +am_aux_dir=`cd "$ac_aux_dir" && pwd` +]) + +# AM_CONDITIONAL -*- Autoconf -*- + +# Copyright (C) 1997-2017 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# AM_CONDITIONAL(NAME, SHELL-CONDITION) +# ------------------------------------- +# Define a conditional. +AC_DEFUN([AM_CONDITIONAL], +[AC_PREREQ([2.52])dnl + m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], + [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl +AC_SUBST([$1_TRUE])dnl +AC_SUBST([$1_FALSE])dnl +_AM_SUBST_NOTMAKE([$1_TRUE])dnl +_AM_SUBST_NOTMAKE([$1_FALSE])dnl +m4_define([_AM_COND_VALUE_$1], [$2])dnl +if $2; then + $1_TRUE= + $1_FALSE='#' +else + $1_TRUE='#' + $1_FALSE= +fi +AC_CONFIG_COMMANDS_PRE( +[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then + AC_MSG_ERROR([[conditional "$1" was never defined. +Usually this means the macro was only invoked conditionally.]]) +fi])]) + +# Copyright (C) 1999-2017 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + + +# There are a few dirty hacks below to avoid letting 'AC_PROG_CC' be +# written in clear, in which case automake, when reading aclocal.m4, +# will think it sees a *use*, and therefore will trigger all it's +# C support machinery. Also note that it means that autoscan, seeing +# CC etc. in the Makefile, will ask for an AC_PROG_CC use... + + +# _AM_DEPENDENCIES(NAME) +# ---------------------- +# See how the compiler implements dependency checking. +# NAME is "CC", "CXX", "OBJC", "OBJCXX", "UPC", or "GJC". +# We try a few techniques and use that to set a single cache variable. +# +# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was +# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular +# dependency, and given that the user is not expected to run this macro, +# just rely on AC_PROG_CC. +AC_DEFUN([_AM_DEPENDENCIES], +[AC_REQUIRE([AM_SET_DEPDIR])dnl +AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl +AC_REQUIRE([AM_MAKE_INCLUDE])dnl +AC_REQUIRE([AM_DEP_TRACK])dnl + +m4_if([$1], [CC], [depcc="$CC" am_compiler_list=], + [$1], [CXX], [depcc="$CXX" am_compiler_list=], + [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'], + [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'], + [$1], [UPC], [depcc="$UPC" am_compiler_list=], + [$1], [GCJ], [depcc="$GCJ" am_compiler_list='gcc3 gcc'], + [depcc="$$1" am_compiler_list=]) + +AC_CACHE_CHECK([dependency style of $depcc], + [am_cv_$1_dependencies_compiler_type], +[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then + # We make a subdir and do the tests there. Otherwise we can end up + # making bogus files that we don't know about and never remove. For + # instance it was reported that on HP-UX the gcc test will end up + # making a dummy file named 'D' -- because '-MD' means "put the output + # in D". + rm -rf conftest.dir + mkdir conftest.dir + # Copy depcomp to subdir because otherwise we won't find it if we're + # using a relative directory. + cp "$am_depcomp" conftest.dir + cd conftest.dir + # We will build objects and dependencies in a subdirectory because + # it helps to detect inapplicable dependency modes. For instance + # both Tru64's cc and ICC support -MD to output dependencies as a + # side effect of compilation, but ICC will put the dependencies in + # the current directory while Tru64 will put them in the object + # directory. + mkdir sub + + am_cv_$1_dependencies_compiler_type=none + if test "$am_compiler_list" = ""; then + am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` + fi + am__universal=false + m4_case([$1], [CC], + [case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac], + [CXX], + [case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac]) + + for depmode in $am_compiler_list; do + # Setup a source with many dependencies, because some compilers + # like to wrap large dependency lists on column 80 (with \), and + # we should not choose a depcomp mode which is confused by this. + # + # We need to recreate these files for each test, as the compiler may + # overwrite some of them when testing with obscure command lines. + [...] [diff truncated at 100000 bytes]
reply other threads:[~2022-03-11 9:00 UTC|newest] Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20220311090001.6CDCC385781C@sourceware.org \ --to=nickc@sourceware.org \ --cc=bfd-cvs@sourceware.org \ --cc=gdb-cvs@sourceware.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
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).