aboutsummaryrefslogtreecommitdiff
path: root/libcody
AgeCommit message (Collapse)AuthorFilesLines
2023-05-08Update ChangeLog and version files for releasereleases/gcc-12.3.0Richard Biener1-0/+4
2022-08-19Update ChangeLog and version files for releasereleases/gcc-12.2.0Richard Biener1-0/+4
2022-05-06Update ChangeLog and version files for releasereleases/gcc-12.1.0Jakub Jelinek1-0/+4
2022-03-19Daily bump.GCC Administrator1-0/+5
2022-03-18libcody: Do not use a dummy port number in getaddrinfo().Iain Sandoe1-4/+2
the getaddrinfo() requires either a non-null name for the server or a port service / number. In the code that opens a connection we have been calling this with a dummy port number of "0". Unfortunately this triggers a bug in some BSD versions and OSes importing that code. In this part of the code we do not really need a port number, since it is not reasonable to open a connection to an unspecified host. Setting hints info field to 0, and the servname parm to nullptr works around the BSD bug in this case. Signed-off-by: Iain Sandoe <iain@sandoe.co.uk> libcody/ChangeLog: * netclient.cc (OpenInet6): Do not provide a dummy port number in the getaddrinfo() call.
2022-01-03Update Copyright in ChangeLog filesJakub Jelinek1-1/+1
Do this separately from all other Copyright updates, as ChangeLog files can be modified only separately.
2021-11-02Daily bump.GCC Administrator1-0/+5
2021-11-01libcody: add mostlyclean Makefile targetMartin Liska1-6/+14
PR other/102657 libcody/ChangeLog: * Makefile.in: Add mostlyclean Makefile target.
2021-10-22Daily bump.GCC Administrator1-0/+5
2021-10-21libcody: Avoid double-freeJonathan Wakely1-0/+1
If the listen call fails then 'goto fail' will jump to that label and use freeaddrinfo again. Set the pointer to null to prevent that. libcody/ChangeLog: * netserver.cc (ListenInet6): Set pointer to null after deallocation.
2021-04-07Daily bump.GCC Administrator1-0/+4
2021-04-06libcody: Remove FSF licenseNathan Sidwell1-29/+0
Apparently this was never needed. libcody/ * LICENSE.gcc: Delete.
2021-01-13Daily bump.GCC Administrator1-0/+17
2021-01-12libcody: Simplify configure [PR 98414, 98509]Nathan Sidwell13-6874/+48
Libcody's configurey was overly 'clever'. That didn't play well with GCC's structure. This removes lots of that overengineering, using libcpp as an example. libcody/ * Makefile.in: Remove auto parallelize, swallow Makesub.in. Don't check compiler name here. * Makesub.in: Delete. * build-aux/config.guess: Delete. * build-aux/config.sub: Delete. * build-aux/install-sh: Delete. * dox.cfg.in: Delete. * gdbinit.in: Delete. * internal.hh (BuildNote): Delete. * fatal.cc (BuildNote): Delete. * config.m4: Remove unneeded fns. * configure.ac: Remove unneccessary checks and configures. * configure: Rebuilt. * config.h.in: Rebuilt.
2021-01-07Daily bump.GCC Administrator1-0/+5
2021-01-06Fix libcody build on hppa*-*-hpux11.11.John David Anglin1-1/+3
2021-01-06 John David Anglin <danglin@gcc.gnu.org> libcody/ChangeLog: PR bootstrap/98506 * resolver.cc: Only use fstatat when _POSIX_C_SOURCE >= 200809L.
2021-01-05Daily bump.GCC Administrator1-0/+9
2021-01-04[libcody] Remove some std::move [PR 98368]Nathan Sidwell1-2/+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-04[libcody] Windows absdir fixMateusz Wajchęprzełóż1-2/+2
An obvious thinko in dirve name check :( libcody/ * resolver.cc (IsAbsDir): Fix string indexing. Signed-off-by: Nathan Sidwell <nathan@acm.org>
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/+12
2020-12-23libcody: Remove testsuite [PR 98318]Nathan Sidwell9-440/+1
libcody's testsuite is not very portable, and is testing a host library, so will do weird things on cross compiling, I think. Let's just drop it. libcody/ * Makefile.in (LDFLAGS): Drop -L.. * tests/01-serialize/connect.cc: Delete. * tests/01-serialize/decoder.cc: Delete. * tests/01-serialize/encoder.cc: Delete. * tests/02-comms/client-1.cc: Delete. * tests/02-comms/pivot-1.cc: Delete. * tests/02-comms/server-1.cc: Delete. * tests/Makesub.in: Delete. * tests/jouster: Delete.
2020-12-22Daily bump.GCC Administrator1-0/+26
2020-12-21bootstrap: std:stoul non-portable [PR 98412]Nathan Sidwell2-0/+2
Fix some more system-specific issues. Not everyone's C++11 is the same :( PR bootstrap/98412 libcody/ * client.cc: Include cstdlib. * server.cc: Include cstdlib. gcc/cp/ * mapper-client.cc: INCLUDE_STRING, INCLUDE_VECTOR. (module_client::open_module_client): Avoid std::stoul. * mapper-resolver.cc: INCLUDE_STRING, INCLUDE_VECTOR.
2020-12-21libcody: Include <netinet/in.h> as neededGerald Pfeifer1-0/+1
libcody as originally added to GCC fail to build on *-unknown-freebsd11.4 and presumably others: c++ -std=c++11 -g -include config.h -I ... -MMD -MP -MF netclient.d -c -o netclient.o .../libcody/netclient.cc:114:3: error: unknown type sockaddr_in6 addr; ^~~~~~~~~~~~ sockaddr_in6 is declared in /usr/include/netinet6/in6.h, which is included by /usr/include/netinet/in.h. Indeed, per https://man7.org/linux/man-pages/man7/ipv6.7.html #include <sys/socket.h> #include <netinet/in.h> should be included, and our own gcc/ada/gsocket.h also has #if !(defined (VMS) || defined (__MINGW32__)) #include <sys/socket.h> #include <sys/un.h> #include <netinet/in.h> : #endif libcody/ChangeLog: 2020-12-21 Gerald Pfeifer <gerald@pfeifer.com> * netserver.cc: Include <netinet/in.h>.
2020-12-21libcody: Add ranlibNathan Sidwell4-0/+96
Add RANLIB. libcody/ * Makefile.in (RANLIB): New var. * Makesub.in (libcody.a): Apply RANLIB. * configure.ac: Call AC_PROG_RANLIB. * configure: Rebuilt.
2020-12-21libcody: to_string is not always available [PR 98412]Nathan Sidwell1-1/+7
to_string is not always available, so don't use it. libcody/ * buffer.cc (MessageBuffer::AppendInteger): Workaround to_string's non-ubiquity.
2020-12-21libcody: Add netinet.hNathan Sidwell1-0/+1
We explicitly need to inlude netinet.h, (despite what happened on my test systems) libcody/ * netclient.cc: Add netinet.h.
2020-12-18Daily bump.GCC Administrator1-0/+10
2020-12-17libcody: Allow PIC [PR 98324]Nathan Sidwell3-1/+19
While this doesn't fix 98324, it was an omission. Cribbed code from libcpp to build libcody as PIC. libcody/ * configure.ac: Add --enable-host-shared. * Makefile.in: Add FLAGPIC. * configure: Regenerated.
2020-12-17libcody: Remove nop asmNathan Sidwell1-1/+2
This asm was a useful place for gdb to drop a breakpoint and make it clear where you were when debugging. I took a punt that 'surely every arch has a nop instruction'. Well, no, some apparently have nops with operands (what, do nothing harder? :) libcody/ * fatal.cc (HCF): Remove nop breakpoint lander.
2020-12-17Daily bump.GCC Administrator1-0/+27
2020-12-16c++: Another solaris header use [PR 98315]Nathan Sidwell1-0/+4
Rather than early-include sys/socket.h, let's allow the includer to tell cody no networking. libcody/ * cody.hh: Allow user to set CODY_NETWORKING. gcc/cp/ * mapper-resolver.cc: Remove early include of sys/socket.h. Specify no CODY_NETWORKING instead. * module.cc: Specify no CODY_NETWORKING.
2020-12-16libcody: fix --enable-checking=... follow-up [PR98311]Jakub Jelinek2-16/+20
> The -enable-checking configure code in libcody didn't play well with > us. This just uses libcpp's configurey for that piece. This doesn't set is_release anywhere, which means when --enable-checking* or --disable-checking isn't specified, it always treats it as --enable-checking=yes, while the normal gcc behavior is treat only trunk as --enable-checking=yes and treat release branches as --enable-checking=release by default. On the other side, nothing uses those ac_assert_checking and ac_valgrind_checking variables, so it is a waste to compute those. 2020-12-16 Jakub Jelinek <jakub@redhat.com> * configure.ac: Compute is_release. (NMS_ENABLE_CHECKING): Simplify but not computing ac_assert_checking and ac_valgrind_checking the code doesn't use. * configure: Regenerated.
2020-12-16libcody: Fix build for older GCC versionsJonathan Wakely1-2/+13
Before CWG DR 1955 the controlling expression for an #elif must be syntactically correct, meaning this won't compile with C++11 compilers such as gcc 4.8: The solution is to define __has_include(X) as 0 for compilers that don't support it. The second problem is that when <source_location> is found, it is used without the std:: qualification. libcody/ChangeLog: * internal.hh: Define fallback macros for __has_builtin and __has_include. Use __has_builtin for __builtin_FILE and __builtin_LINE. Define alias for std::source_location.
2020-12-16libcody: fix --enable-checking=... [PR 98311]Nathan Sidwell2-20/+79
The -enable-checking configure code in libcody didn't play well with us. This just uses libcpp's configurey for that piece. libcody/ * configure.ac: Use libcpp's enable-checking code. * configure: Rebuilt.
2020-12-16libcody: More dashismNathan Sidwell2-14/+16
There were still some dash-killing uses of +=. Fixed thusly. * config.m4: Replace V+="..." with V="$V..." * configure: Rebuilt.
2020-12-16Daily bump.GCC Administrator1-0/+58
2020-12-15cody: Remove unused variable.Marek Polacek1-1/+0
libcody/ChangeLog: * buffer.cc (MessageBuffer::Lex): Remove unused variable.
2020-12-15libcody: Work with older gccsNathan Sidwell1-1/+5
Older GCCs don't have all the exciting options we have now. let's just turn them off. libcody/ * Makefile.in: Disable some flags.
2020-12-15Fix dashismNathan Sidwell2-4/+4
I missed some other places that used += * config.m4: Avoid var+=... * configure: Rebuilt
2020-12-15libcody: Fix for dashNathan Sidwell2-2/+4
Apparently 'var+=...' is not a dash thing. Fixed thusly. * config.m4: Avoid non-dash idiom * configure: Rebuilt.
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 libcodyNathan Sidwell36-0/+15137
In order to separate compiler from build system, C++ Modules, as implemented in GCC introduces a communication channel between those two entities. This is implemented by libcody. It is anticipated that other implementations will also implement this protocol, or use libcody to provide it. * Makefile.def: Add libcody. * configure.ac: Add libcody. * Makefile.in: Regenerated. * configure: Regenerated. gcc/ * Makefile.in (CODYINC, CODYLIB, CODYLIB_H): New. Use them. libcody/ * configure.ac: New. * CMakeLists.txt: New. * CODING.md: New. * CONTRIB.md: New. * LICENSE: New. * LICENSE.gcc: New. * Makefile.in: New. * Makesub.in: New. * README.md: New. * buffer.cc: New. * build-aux/config.guess: New. * build-aux/config.sub: New. * build-aux/install-sh: New. * client.cc: New. * cmake/libcody-config-ix.cmake * cody.hh: New. * config.h.in: New. * config.m4: New. * configure: New. * configure.ac: New. * dox.cfg.in: New. * fatal.cc: New. * gdbinit.in: New. * internal.hh: New. * netclient.cc: New. * netserver.cc: New. * packet.cc: New. * resolver.cc: New. * server.cc: New. * tests/01-serialize/connect.cc: New. * tests/01-serialize/decoder.cc: New. * tests/01-serialize/encoder.cc: New. * tests/02-comms/client-1.cc: New. * tests/02-comms/pivot-1.cc: New. * tests/02-comms/server-1.cc: New. * tests/Makesub.in: New. * tests/jouster: New.