aboutsummaryrefslogtreecommitdiff
path: root/c++tools
AgeCommit message (Collapse)AuthorFilesLines
2021-09-15Daily bump.GCC Administrator1-0/+6
2021-09-14c++tools : Add a simple handler for ModuleCompiledRequest.Iain Sandoe2-0/+15
This just replies with "OK". c++tools/ChangeLog: * resolver.cc (module_resolver::ModuleCompiledRequest): Add a simple handler. * resolver.h: Declare handler for ModuleCompiledRequest.
2021-07-22Daily bump.GCC Administrator1-0/+14
2021-07-21c++tools, configury: Configure with C++; test checking status [PR98821].Iain Sandoe4-653/+170
The c++tools configure fragments need to be built with a C++ compiler. In addition, the stand-alone server uses diagnostic mechanisms in common with GCC, but needs to define implementations for gcc_assert and supporting output functions. Signed-off-by: Iain Sandoe <iain@sandoe.co.uk> PR c++/98821 - modules : c++tools configures with CC but code fragments assume CXX. PR c++/98821 c++tools/ChangeLog: * config.h.in: Regenerate. * configure: Regenerate. * configure.ac: Configure using C++. Pull logic to detect enabled checking modes; default to release checking. * server.cc (AI_NUMERICSERV): Define a fallback value. (gcc_assert): New. (gcc_unreachable): New. (fancy_abort): Only build when checking is enabled. Co-authored-by: Jakub Jelinek <jakub@redhat.com>
2021-05-26Daily bump.GCC Administrator1-0/+19
2021-05-25c++tools: Include <cstdlib> for exit [PR100731]Jakub Jelinek1-0/+1
This TU uses exit, but doesn't include <stdlib.h> or <cstdlib> and relies on some other header to include it indirectly, which apparently doesn't happen on reporter's host. The other <c*> headers aren't guarded either and we rely on a compiler capable of C++11, so maybe we can rely on <cstdlib> being around unconditionally. 2021-05-25 Jakub Jelinek <jakub@redhat.com> PR bootstrap/100731 * server.cc: Include <cstdlib>.
2021-05-25Fix typo and weird syntax in configure scriptEric Botcazou2-6/+6
c++tools/ * configure.ac (--enable-maintainer-mode): Fix typo and weird syntax. * configure: Regenerate.
2021-05-25Update copyright years in c++toolsJakub Jelinek5-6/+6
While looking at PR100731, I have noticed the copyright years are 2020-ish only. This patch adds it to update-copyright.py and updates those. 2021-05-25 Jakub Jelinek <jakub@redhat.com> contrib/ * update-copyright.py: Add c++tools. c++tools/ * Makefile.in: Update copyright year. * configure.ac: Likewise. * resolver.cc: Likewise. * resolver.h: Likewise. * server.cc: Likewise. (print_version): Update copyright notice date.
2021-05-11Daily bump.GCC Administrator1-0/+4
2021-05-10Use genversion to generate version.h.Martin Liska1-2/+2
c++tools/ChangeLog: * Makefile.in: Include also ../gcc folder. gcc/ChangeLog: * Makefile.in: Rename gcov-iov to genversion and depend on version.h (instead of gcov-iov.h). * gcov-io.h: Include version.h instread of gcov-iov.h. * gengtype-state.c (read_state_version): Likewise. * gcov-iov.c: Moved to... * genversion.c: ...here. * lto-streamer.h (LTO_major_version): Define it with GCC_major_version. * version.c: Removed. * version.h: Removed. libgcc/ChangeLog: * libgcov-driver.c (gcov_version): Use different name that does not clash with newly introduced macro.
2021-04-02Daily bump.GCC Administrator1-0/+5
2021-04-01modules : Make sure we include <map> in system.h.Iain Sandoe1-0/+2
It appears that many targets include the map header transitively in other std headers included from system.h. However there are some editions of clang/libc++ in Xcode that do not, which results in a bootstrap fail - since when resolver.h is included there is then a conflict in declaring abort(). The fix is to ensure that map is pulled in by system.h and before resolver.h is included. As a precautionary measure and to alert anyone perhaps adding another header to resolver.h this patch also gates the direct includes there on !IN_GCC. c++tools/ChangeLog: * resolver.h: Do not include std headers directly when building in GCC. gcc/cp/ChangeLog: * mapper-client.cc (INCLUDE_MAP): New; require map to be included from system.h. * mapper-resolver.cc (INCLUDE_MAP): Likewise.
2021-02-26Daily bump.GCC Administrator1-0/+5
2021-02-25c++tools: Make NETWORKING define check consistent [PR 98318]Nathan Sidwell1-7/+7
PR98318 also pointed out that the NETWORKING #define was being checked with both #if and #ifdef. Let's consistently use one form. c++tools/ * server.cc: Use #if NETWORKING not #ifdef, to be consistent with elsewhere.
2021-01-06Daily bump.GCC Administrator1-0/+9
2021-01-05build: libcody: Link with -lsocket -lnsl if necessary [PR98316]Rainer Orth3-1/+223
With the introduction of C++20 modules and libcody, cc1plus and cc1objplus gained a dependency on the socket functions. Before those were merged into libc in Solaris 11.4, one needed to link with -lsocket -lnsl on Solaris, so that merge broke the Solaris 11.3 build. While we already have 4 different checks for those libraries in the tree, I decided to import autoconf-archive's AX_LIB_SOCKET_NSL macro instead. At the same time, the patch only links libcody and the networking libs where needed (cc1plus, cc1objplus). Bootstrapped without regressions on i386-pc-solaris2.11 (Solaris 11.3 and 11.4), sparc-sun-solaris2.11, and x86_64-pc-linux-gnu. 2020-12-16 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE> c++tools: PR c++/98316 * configure.ac: Include ../config/ax_lib_socket_nsl.m4. (NETLIBS): Determine using AX_LIB_SOCKET_NSL. * configure: Regenerate. * Makefile.in (NETLIBS): Define. (g++-mapper-server$(exeext)): Add $(NETLIBS). gcc/objcp: PR c++/98316 * Make-lang.in (cc1objplus$(exeext)): Add $(CODYLIB), $(NETLIBS). gcc/cp: PR c++/98316 * Make-lang.in (cc1plus$(exeext)): Add $(CODYLIB), $(NETLIBS). gcc: PR c++/98316 * configure.ac (NETLIBS): Determine using AX_LIB_SOCKET_NSL. * aclocal.m4, configure: Regenerate. * Makefile.in (NETLIBS): Define. (BACKEND): Remove $(CODYLIB). config: PR c++/98316 * ax_lib_socket_nsl.m4: Import from autoconf-archive.
2021-01-05Daily bump.GCC Administrator1-0/+5
2021-01-04[libcody] Remove some std::move [PR 98368]Nathan Sidwell1-3/+1
Compiling on clang showed a couple of pessimizations. Fixed thusly. libcody/ * client.cc (Client::ProcessResponse): Remove std::move inside ?: c++tools/ * resolver.cc (module_resolver::cmi_response): Remove std::move of temporary.
2021-01-04Update Copyright in ChangeLog filesJakub Jelinek1-1/+1
Do this separately from all other Copyright updates, as ChangeLog files can be modified only separately.
2020-12-24Daily bump.GCC Administrator1-0/+7
2020-12-23c++tools: Fix PIE [PR 98324]Nathan Sidwell3-2/+24
This adds --enable-default-pie support to c++tools, so that the sample server is build -fPIE if requested. PR bootstrap/98324 c++tools/ * Makefile.in: Add FLAGPIE. * configure.ac: Add --enable-default-pie support. * configure: Rebuilt.
2020-12-22Daily bump.GCC Administrator1-0/+5
2020-12-21c++tools: Fix exe suffix [PR 98409]Nathan Sidwell1-1/+1
I had a thinko about variable case, and, coupled with Make's behaviour of just consing up variables out of nothing, and linux not having an executable extension, didn't notice. PR other/98409 c++tools/ * Makefile.in: Fix exeext variable case.
2020-12-18Daily bump.GCC Administrator1-0/+21
2020-12-17bootstrap: Don't use strsignal [PR 98300]Nathan Sidwell1-1/+2
Sadly strsignal is nonportable, so signal numbers it is then. c++tools/ * server.cc (crash_signal): Don't use strsignal.
2020-12-17bootstrap: Fix some windows issues [PR 98300]Nathan Sidwell4-3/+726
When breaking out the sample server from the gcc/cp directory, it lost its check for mmap, and the sample resolver just assumed it was there. Fixed thusly. The non-mapping paths in module.cc weren't (recently) excercised, and led to a signedness warning. Finally I'd missed c++tools's config.h.in in the gcc_update script. There I took the opportunity of adding a 'tools' segment of the dependency lists. PR bootstrap/98300 contrib/ * gcc_update: Add c++tools/config.h.in. c++tools/ * configure.ac: Check for sys/mman.h. * resolver.cc: Don't assume mmap, O_CLOEXEC are available. Use xmalloc. * config.h.in: Regenerated. * configure: Regenerated. gcc/cp/ * module.cc: Fix ::read, ::write result signedness comparisons.
2020-12-17c++tools: Fix up c++tools for --with-gcc-major-version-onlyJakub Jelinek3-2/+28
Seems c++tools doesn't honor --with-gcc-major-version-only. Our distro uses that flag and so everything is installed in /usr/lib/gcc/<target>/11/... /usr/libexec/gcc/<target>/11/... except /usr/libexec/gcc/<target>/11.0.0/g++-mapper-server The following patch should fix that. 2020-12-17 Jakub Jelinek <jakub@redhat.com> * configure.ac: Add GCC_BASE_VER. * Makefile.in (version): Remove variable. (gcc_version): New variable. (libexecsubdir): Use $(gcc_version) instead of $(version). * configure: Regenerated.
2020-12-17Daily bump.GCC Administrator1-0/+15
2020-12-16c++tools: fix install-strip [PR 98328]Nathan Sidwell3-13/+24
I'd missed an install-strip rule in c++tools. Here it is, cribbed from gcc/ subdir. c++tools/ * Makefile.in (INSTALL): Replace with ... (INSTALL_PROGRAM): ... this. (INSTALL_STRIP_PROGRAM): New. (install-strip): New target. (install): Use INSTALL_PROGRAM. * configure.ac: Add INSTALL_PROGRAM. * configure: Regenerated.
2020-12-16c++tools: Fix (an) install issueNathan Sidwell1-3/+4
This fixes installers that don't understand -p. c++tools/ * Makefile.in (install): Do not use -p, use mkinstalldirs. (clean): Fix typo.
2020-12-16Daily bump.GCC Administrator1-0/+10
2020-12-15c++: Add changelog files in c++tools/ and libcody/ directoriesJakub Jelinek1-0/+6
Add ChangeLog files, so that update_version_git can then fill those in.
2020-12-15Add c++toolsNathan Sidwell7-0/+6571
Part of our module implementation adds a sample mapper server, the guts of which are used by the default in-process mapping of cc1plus. Rather than add another executable to gcc/cp/, this creates a new c++tools directory where this and any other c++ tools might live. The toplevel changes are a subsequent commit, because ... git. c++tools/ChangeLog: * Makefile.in: New. * config.h.in: New. * configure: New. * configure.ac: New. * resolver.cc: New. * resolver.h: New. * server.cc: New.