aboutsummaryrefslogtreecommitdiff
path: root/gprofng/configure
AgeCommit message (Collapse)AuthorFilesLines
2025-07-13Update version number on mainlineNick Clifton1-10/+10
2025-06-30RISC-V: [gprofng] Allow building gprofng without asm/hwprobe.hWANG Xuerui1-0/+15
The code is actually able to gracefully fallback if the syscall number of riscv_hwprobe is not available at build time, but it still depended on the <asm/hwprobe.h> header unconditionally. In certain environments such as one of crosstool-NG's Canadian Cross build step (binutils for host), or one with very outdated kernel headers, the header will not be present, causing the build to fail. While the relevant projects/environments should be fixed nevertheless, a configure-time check for <asm/hwprobe.h> is helpful for fixing gprofng builds with released versions of ct-ng etc. Signed-off-by: WANG Xuerui <git@xen0n.name>
2025-06-26gprofng: need to know that experiment was created on big-endian machineVladimir Mezentsev1-0/+225
gprofng/ChangeLog 2025-06-25 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> * configure.ac: Add AC_C_BIGENDIAN. * common/config.h.in: Rebuild. * configure: Rebuild. * libcollector/collector.c (log_header_write): Save big-endian flag. * src/DbeSession.h (is_bigendian): New function. * src/DbeSession.cc: Likewise. * src/Experiment.cc: Set 'bigendian' and 'need_swap_endian'. * src/Experiment.h: New field 'bigendian'. * src/LoadObject.cc: Remove an unused variable. * src/LoadObject.h: Likewise.
2025-01-19Change version to 2.44.50 and regenerate filesNick Clifton1-10/+10
2024-07-20Change version to 2.43.50Nick Clifton1-10/+10
2024-07-10RISC-V:[gprofng] Minimal support gprofng for riscv.Yixuan Chen1-0/+4
ChangeLog: Add target riscv to --enable-gprofng. 2024-07-04 Yixuan Chen <chenyixuan@iscas.ac.cn> * configure: Add riscv. * configure.ac: Add riscv. gprofng/ChangeLog: Minimal support gprofng for riscv. 2024-07-04 Yixuan Chen <chenyixuan@iscas.ac.cn> * gprofng/common/core_pcbe.c (core_pcbe_init): Add RISC-V vendor conditon. (defined): Add riscv. * gprofng/common/cpuid.c (defined): Add risc-v hwprobe. * gprofng/common/gp-defs.h (TOK_A_RISCV): Add riscv. (defined): Add riscv. (ARCH_RISCV): Add riscv. * gprofng/common/hwc_cpus.h: Add RISC-V vendor. * gprofng/common/hwcfuncs.h (HW_INTERVAL_TYPE): Remove useless defination. * gprofng/configure: Add riscv. * gprofng/configure.ac: Add riscv. * gprofng/libcollector/hwprofile.h (ARCH): Add RISC-V register. (CONTEXT_PC): Add RISC-V register. (CONTEXT_FP): Add RISC-V register. (CONTEXT_SP): Add RISC-V register. (SETFUNCTIONCONTEXT): * gprofng/libcollector/libcol_util.c (__collector_util_init): Fix libc open condition. * gprofng/libcollector/libcol_util.h (ARCH): Add RISC-V. * gprofng/libcollector/unwind.c (ARCH): Add RISC-V register. (GET_PC): Add RISC-V register. (GET_SP): Add RISC-V register. (GET_FP): Add RISC-V register. (FILL_CONTEXT): * gprofng/src/DbeSession.cc (ARCH): Add RISC-V. * gprofng/src/Disasm.cc (Disasm::disasm_open): Add RISC-V. * gprofng/src/Experiment.cc (Experiment::ExperimentHandler::startElement): Add RISC-V. * gprofng/src/checks.cc (ARCH): Add RISC-V. * gprofng/src/collctrl.cc (defined): Set risc-v cpu frequency to 1000MHz as default for now, will fix when I find a better method to get cpu frequency. (read_cpuinfo): Add "mvendorid" condition according to risc-v /proc/cpuinfo file content. * gprofng/src/dbe_types.h (enum Platform_t): Add RISC-V.
2024-05-08Fix hard-coded bash path in gprofngVladimir Mezentsev1-2/+45
When running 'make check', the default gprofng test suite creates a shell script for which it used a hardcoded shebang of '/usr/bin/bash' this script would not run if bash is in a different location, like /bin/bash This commit adds 'AC_PATH_PROG(BASH, bash)' to configure.ac so the installation path of bash is detected at configuration time. The configuration is propagated to the runtest command line where it is needed.
2024-01-15Change version to 2.42.50 and regenerate filesNick Clifton1-10/+10
2023-11-01gprofng: remove dependency on help2manVladimir Mezentsev1-54/+2
help2man is no longer used to create the gprofng man pages. gprofng/ChangeLog 2023-10-31 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> * configure.ac: Remove HELP2MAN. * Makefile.in: Rebuild. * configure: Rebuild. * doc/Makefile.in: Rebuild. * gp-display-html/Makefile.in: Rebuild. * src/Makefile.in: Rebuild.
2023-10-05gprofng: 30894 bison should be no hard dependencyVladimir Mezentsev1-9/+6
When running from a distribution tarball, bison should not be necessary. The generated files (QLParser.tab.cc, QLParser.tab.hh) should be distributed. configure.ac should not abort if bison is missing. configure.ac should remove temporary files (dummy.c, Simple.class). bison must be run once to create QLParser.tab.cc and QLParser.tab.hh. gprofng/ChangeLog 2023-10-03 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> PR gprofng/30894 * configure.ac: Don't abort if bison is missing. Remove temporary files. * src/Makefile.am: Distribute QLParser.tab.cc and QLParser.tab.hh. * Run bison once to create QLParser.tab.cc and QLParser.tab.hh. * configure: Rebuild. * src/Makefile.in: Rebuild.
2023-08-12regen configAlan Modra1-30/+86
This regenerates config files changed by the previous 44 commits. Note that subject lines in these commits mostly match the gcc git originating commit.
2023-08-02Revert "2.41 Release sources"Sam James1-10/+10
This reverts commit 675b9d612cc59446e84e2c6d89b45500cb603a8d. See https://sourceware.org/pipermail/binutils/2023-August/128761.html.
2023-08-022.41 Release sourcesbinutils-2_41-releaseNick Clifton1-10/+10
2023-07-13gprofng: 30602 [2.41] gprofng test hangs on i686-linux-gnuVladimir Mezentsev1-21/+7
There were several problems in the gprofng testing: - we did not catch a timeout for each test. - we used exit() to stop a failed test. But this stops all other tests. - we used a time_t (long) type in smalltest.c instead of a long long type. PR gprofng/30602 * configure.ac: Launch only native testing. * configure: Rebuild. * testsuite/config/default.exp: Set TEST_TIMEOUT. * testsuite/gprofng.display/setpath_map.exp: Use return instead of exit. * testsuite/gprofng.display/gp-archive.exp: Likewise. * testsuite/gprofng.display/gp-collect-app_F.exp: Likewise. * testsuite/gprofng.display/display.exp: Delete an unnecessary test for native testing. * testsuite/lib/display-lib.exp (run_native_host_cmd): Add timeout. * testsuite/lib/smalltest.c: Use a long long type instead of time_t.
2023-07-03Change version number to 2.41.50 and regenerate filesNick Clifton1-10/+10
2023-01-24gprofng: PR29521 [docs] man pages are not in the release tarballVladimir Mezentsev1-9/+70
gprofng/ChangeLog 2023-01-20 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> PR gprofng/29521 * configure.ac: Check if $MAKEINFO and $HELP2MAN are missing. * Makefile.am: Build doc if $MAKEINFO exists. * doc/gprofng.texi: Update documentation for gprofng. * doc/Makefile.am: Build gprofng.1. * src/Makefile.am: Move the build of gprofng.1 to doc/Makefile.am. * configure: Rebuild. * Makefile.in: Rebuild. * doc/Makefile.in: Rebuild. * src/Makefile.in: Rebuild.
2023-01-17Revert "gprofng: PR29987 bfd/archive.c:1447: undefined reference to ↵Vladimir Mezentsev1-2/+9
`filename_ncmp'" This reverts commit c2a5d74050ea9d7897b4122ef57c627d395683b3.
2023-01-13gprofng: PR29987 bfd/archive.c:1447: undefined reference to `filename_ncmp'Vladimir Mezentsev1-9/+2
gprofng/ChangeLog 2023-01-12 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> PR gprofng/29987 * configure.ac: Remove dependencies on libbfd and libiberty. * gprofng/src/Makefile.am: Likewise. * configure: Rebuild. * Makefile.in: Rebuild. * src/Makefile.in: Rebuild. * doc/Makefile.in: Rebuild. * gp-display-html/Makefile.in: Rebuild.
2022-12-31Update version number and regenerate filesNick Clifton1-10/+10
2022-11-10gprofng: fix typo in configure.acVladimir Mezentsev1-1/+1
gprofng/ChangeLog 2022-11-10 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> * configure.ac: Fix typo in redirect operator. * configure: Rebuild.
2022-09-19gprofng: build documentation only if BUILD_MAN is trueVladimir Mezentsev1-1/+0
gprofng/ChangeLog 2022-09-16 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> PR gprofng/29476 * gprofng/Makefile.am: Build documentation only if BUILD_MAN is true * gprofng/Makefile.in: Rebuild. * gprofng/configure: Rebuild.
2022-09-14gprofng: fix build issues on muslVladimir Mezentsev1-1/+29
gprofng/ChangeLog 2022-09-14 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> PR gprofng/29477 * configure.ac: Set __MUSL_LIBC. * configure: Rebuild. * common/config.h.in: Rebuild. * src/collector_module.h: Fix compiler errors because mmap64, open64, pwrite64 are macros and getcontext() is absent on musl. * libcollector/collector.c: Likewise. * libcollector/hwprofile.c: Likewise. * libcollector/iolib.c: Likewise. * libcollector/libcol_util.c: Likewise. * libcollector/linetrace.c: Likewise. * libcollector/memmgr.c: Likewise. * libcollector/profile.c: Likewise. * libcollector/unwind.c: Likewise. * libcollector/dispatcher.c: Likewise. * src/Experiment.cc: Likewise. * libcollector/collector.h: Use dlsym() because dlvsym() is not defined on musl. * libcollector/iotrace.c: Remove interposition of versioned functions. * libcollector/mmaptrace.c: Likewise. * libcollector/libcol_util.h: Fix -Wint-to-pointer-cast warnings. * libcollector/jprofile.c: Likewise. * libcollector/synctrace.c: Include "collector.h". * src/Print.cc: Use get_basename() because basename() is not defined on musl. * common/hwcdrv.c: Fix -Wformat= warnings.
2022-07-26gprofng: check for the makeinfo versionVladimir Mezentsev1-2/+62
gprofng/ChangeLog 2022-07-25 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> PR gprofng/29368 * configure.ac: Check for the makeinfo version. * configure: Rebuild.
2022-07-09Regenerate with automake-1.15.1Alan Modra1-118/+103
Until we update the recommended versions of autoconf/automake, files should be regenerated with automake-1.15.1 and autoconf-2.69. That's not because we think those versions are golden, and newer versions are bad. It's simply because maintainers want to be able to update configury files without trouble, and if someone regenerates files with automake-1.16.5 then --enable-maintainer-mode builds will hit errors: checking that generated files are newer than configure... configure.ac:26: error: version mismatch. This is Automake 1.15.1, configure.ac:26: but the definition used by this AM_INIT_AUTOMAKE configure.ac:26: comes from Automake 1.16.5. You should recreate configure.ac:26: aclocal.m4 with aclocal and run automake again. WARNING: 'automake-1.15' is probably too old. Correcting this requires regenerating the files by hand.
2022-07-08Update version to 2.39.50 and regenerate filesNick Clifton1-113/+128
2022-06-16gprofng: fix build with -Werror=format-truncationVladimir Mezentsev1-58/+1
gprofng/ChangeLog 2022-06-16 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> * configure.ac: Remove -Wno-format-truncation. * src/Makefile.am: Likewise. * configure: Rebuild. * src/Makefile.in: Rebuild. * common/hwctable.c: Fix -Werror=format-truncation errors. * src/ipc.cc: Likewise. * src/parse.cc: Likewise.
2022-05-05gprofng: use $host instead $targetVladimir Mezentsev1-7/+2
By mistake, $target was used instead of $host to configure the gprogng build. gprofng/ChangeLog 2022-04-28 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> PR gprofng/29113 PR gprofng/29116 * configure.ac: Use $host instead $target. * libcollector/configure.ac: Likewise. * configure: Rebuild. * libcollector/configure: Rebuild.
2022-04-11gprofng doesn't build with gcc 5.5Vladimir Mezentsev1-2/+77
gprofng/ChangeLog 2022-04-07 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> PR gprofng/29026 * configure.ac: Check version of bison. * src/Makefile.am (QLParser.yy): Run bison * src/QLParser.yy: Adapted for bison 3.04 or later. * src/DbeSession.cc: make some params const. * src/DbeSession.h: Likewise. * configure: Regenerate. * Makefile.in: Regenerate. * src/Makefile.in: Regenerate. * src/QLParser.tab.cc: Deleted. * src/QLParser.tab.hh: Deleted. * doc/Makefile.in: Regenerate. * gp-display-html/Makefile.in: Regenerate. * libcollector/configure: Regenerate.
2022-04-08gprofng: zlib handlingVladimir Mezentsev1-2/+23
gprofng/ChangeLog 2022-04-06 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> * configure.ac: Add AM_ZLIB. * src/Makefile.am: Add $(ZLIBINC) and $(ZLIB). * gprofng/src/DbeSession.h: Likewise. * configure: Regenerate. * Makefile.in: Regenerate. * doc/Makefile.in: Regenerate. * gp-display-html/Makefile.in: Regenerate. * src/Makefile.in: Regenerate.
2022-03-25libtool.m4: fix the NM="/nm/over/here -B/option/with/path" caseNick Alcock1-7/+13
My previous nm patch handled all cases but one -- if the user set NM in the environment to a path which contained an option, libtool's nm detection tries to run nm against a copy of nm with the options in it: e.g. if NM was set to "nm --blargle", and nm was found in /usr/bin, the test would try to run "/usr/bin/nm --blargle /usr/bin/nm --blargle". This is unlikely to be desirable: in this case we should run "/usr/bin/nm --blargle /usr/bin/nm". Furthermore, as part of this nm has to detect when the passed-in $NM contains a path, and in that case avoid doing a path search itself. This too was thrown off if an option contained something that looked like a path, e.g. NM="nm -B../prev-gcc"; libtool then tries to run "nm -B../prev-gcc nm" which rarely works well (and indeed it looks to see whether that nm exists, finds it doesn't, and wrongly concludes that nm -p or whatever does not work). Fix all of these by clipping all options (defined as everything including and after the first " -") before deciding whether nm contains a path (but not using the clipped value for anything else), and then removing all options from the path-modified nm before looking to see whether that nm existed. NM=my-nm now does a path search and runs e.g. /usr/bin/my-nm -B /usr/bin/my-nm NM=/usr/bin/my-nm now avoids a path search and runs e.g. /usr/bin/my-nm -B /usr/bin/my-nm NM="my-nm -p../wombat" now does a path search and runs e.g. /usr/bin/my-nm -p../wombat -B /usr/bin/my-nm NM="../prev-binutils/new-nm -B../prev-gcc" now avoids a path search: ../prev-binutils/my-nm -B../prev-gcc -B ../prev-binutils/my-nm This seems to be all combinations, including those used by GCC bootstrap (which, before this commit, fails to bootstrap when configured --with-build-config=bootstrap-lto, because the lto plugin is now using --export-symbols-regex, which requires libtool to find a working nm, while also using -B../prev-gcc to point at the lto plugin associated with the GCC just built.) Regenerate all affected configure scripts. * libtool.m4 (LT_PATH_NM): Handle user-specified NM with options, including options containing paths.
2022-03-21Install gprofng libraries under $(pkglibdir)Vladimir Mezentsev1-5/+2
gprofng/ChangeLog 2022-03-21 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> PR gprofng/28972 * gprofng/libcollector/Makefile.am: Rename lib_LTLIBRARIES to pkglib_LTLIBRARIES. Add install-data-local. * gprofng/src/Makefile.am: Likewise. * gprofng/src/envsets.cc (putenv_libcollector_ld_misc): New location of the gprofng libraries. * gprofng/configure.ac: Removed an unused GPROFNG_LIBDIR. * gprofng/Makefile.am: Removed an unused GPROFNG_LIBDIR. Add install-data-local. * gprofng/configure: Regenerate. * gprofng/Makefile.in: Likewise. * gprofng/doc/Makefile.in: Likewise. * gprofng/gp-display-htmllibcollector/Makefile.in: Likewise. * gprofng/libcollector/Makefile.in: Likewise. * gprofng/src/Makefile.in: Likewise.
2022-03-18Fix Build issues due to patch "gprofng: a new GNU profiler"Nick Clifton1-2/+55
Find and fix more places where clock_gettime() and CLOCK_MONOTONIC_RAW are used.
2022-03-17gprofng: Skip jsynprog with a broken javacH.J. Lu1-2/+25
On CET enabled Linux/x86-64 machines, one can get $ javac simple.java Error: dl failure on line 894 Error: failed /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-6.fc35.x86_64/jre/lib/amd64/server/libjvm.so, because /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-6.fc35.x86_64/jre/lib/amd64/server/libjvm.so: rebuild shared object with SHSTK support enabled Set GPROFNG_BROKEN_JAVAC to "yes" only with a broken javac and skip the jsynprog test with a broken javac. PR gprofng/28965 * Makefile.am (GPROFNG_BROKEN_JAVAC): New. (check-DEJAGNU): Pass GPROFNG_BROKEN_JAVAC to runtest. * configure.ac (GPROFNG_BROKEN_JAVAC): New AC_SUBST. Set to yes with a broken javac. * Makefile.in: Regenerate. * configure: Likewise. * testsuite/gprofng.display/display.exp: Skip jsynprog with a broken javac.
2022-03-17gprofng configure target testsAlan Modra1-83/+127
${target} in configure.ac should be the canonical target, so that for example, someone configuring with --target=x86_64-linux will match x86_64-*-linux*. * configure.ac: Invoke AC_CANONICAL_TARGET. * libcollector/configure.ac: Likewise. * Makefile.in: Regenerate. * configure: Regenerate. * doc/Makefile.in: Regenerate. * gp-display-html/Makefile.in: Regenerate. * libcollector/Makefile.in: Regenerate. * libcollector/configure: Regenerate. * src/Makefile.in: Regenerate.
2022-03-16gprofng: Don't hardcode -Wno-format-truncation/-Wno-switchH.J. Lu1-2/+120
Use -Wno-format-truncation and -Wno-switch only if they are supported. PR gprof/28969 * configure.ac (GPROFNG_NO_FORMAT_TRUNCATION_CFLAGS): New AC_SUBST for -Wno-format-truncation. (GPROFNG_NO_SWITCH_CFLAGS): New AC_SUBST for -Wno-switch. * Makefile.in: Regenerate. * configure: Likewise. * src/Makefile.am (AM_CFLAGS): Replace -Wno-format-truncation and -Wno-switch with GPROFNG_NO_FORMAT_TRUNCATION_CFLAGS and GPROFNG_NO_SWITCH_CFLAGS. * src/Makefile.in: Regenerate.
2022-03-15gprofng: Add a configure test for clock_gettime and a use of the test in ↵Nick Clifton1-4/+5
getthrtime.c
2022-03-11gprofng: a new GNU profilerVladimir Mezentsev1-0/+19350
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.