Commit Graph

39 Commits

Author SHA1 Message Date
Jakub Jelinek
877e3c2abf Update Copyright in ChangeLog files
Do this separately from all other Copyright updates, as ChangeLog files
can be modified only separately.
2022-01-03 10:31:39 +01:00
GCC Administrator
cf82e8d964 Daily bump. 2021-11-02 00:16:32 +00:00
Martin Liska
7a71ea4df7 libcody: add mostlyclean Makefile target
PR other/102657

libcody/ChangeLog:

	* Makefile.in: Add mostlyclean Makefile target.
2021-11-01 04:47:38 +01:00
GCC Administrator
ae5c540662 Daily bump. 2021-10-22 00:16:31 +00:00
Jonathan Wakely
e6d1003543 libcody: Avoid double-free
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-10-21 22:23:00 +01:00
GCC Administrator
8cac6af6f8 Daily bump. 2021-04-07 00:16:39 +00:00
Nathan Sidwell
86532e5419 libcody: Remove FSF license
Apparently this was never needed.

	libcody/
	* LICENSE.gcc: Delete.
2021-04-06 05:07:17 -07:00
GCC Administrator
6851dda2e7 Daily bump. 2021-01-13 00:16:36 +00:00
Nathan Sidwell
e2aa8a5f98 libcody: Simplify configure [PR 98414, 98509]
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-12 10:32:27 -08:00
GCC Administrator
942ae5be66 Daily bump. 2021-01-07 00:16:19 +00:00
John David Anglin
6d0b075d66 Fix libcody build on hppa*-*-hpux11.11.
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-06 13:58:56 +00:00
GCC Administrator
7e73f51157 Daily bump. 2021-01-05 00:16:42 +00:00
Nathan Sidwell
6288183377 [libcody] Remove some std::move [PR 98368]
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 06:38:52 -08:00
Mateusz Wajchęprzełóż
6bbc196c64 [libcody] Windows absdir fix
An obvious thinko in dirve name check :(

	libcody/
	* resolver.cc (IsAbsDir): Fix string indexing.

Signed-off-by: Nathan Sidwell <nathan@acm.org>
2021-01-04 08:59:10 -05:00
Jakub Jelinek
c48514bea6 Update Copyright in ChangeLog files
Do this separately from all other Copyright updates, as ChangeLog files
can be modified only separately.
2021-01-04 09:35:45 +01:00
GCC Administrator
85d8ebcfc2 Daily bump. 2020-12-24 00:16:26 +00:00
Nathan Sidwell
16929214fd libcody: Remove testsuite [PR 98318]
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-23 08:07:16 -08:00
GCC Administrator
1a5e728a54 Daily bump. 2020-12-22 00:16:23 +00:00
Nathan Sidwell
1467a5c5ab bootstrap: std:stoul non-portable [PR 98412]
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-21 09:20:15 -08:00
Gerald Pfeifer
cf22f78ff6 libcody: Include <netinet/in.h> as needed
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-21 17:11:43 +01:00
Nathan Sidwell
626b63d63a libcody: Add ranlib
Add RANLIB.

	libcody/
	* Makefile.in (RANLIB): New var.
	* Makesub.in (libcody.a): Apply RANLIB.
	* configure.ac: Call AC_PROG_RANLIB.
	* configure: Rebuilt.
2020-12-21 06:30:59 -08:00
Nathan Sidwell
119d7478d1 libcody: to_string is not always available [PR 98412]
to_string is not always available, so don't use it.

	libcody/
	* buffer.cc (MessageBuffer::AppendInteger): Workaround
	to_string's non-ubiquity.
2020-12-21 05:42:03 -08:00
Nathan Sidwell
31705b068f libcody: Add netinet.h
We explicitly need to inlude netinet.h, (despite what happened on my test systems)

	libcody/
	* netclient.cc: Add netinet.h.
2020-12-21 05:42:03 -08:00
GCC Administrator
cd69e3d5cd Daily bump. 2020-12-18 00:16:30 +00:00
Nathan Sidwell
d1ad55c4e0 libcody: Allow PIC [PR 98324]
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-17 09:56:42 -08:00
Nathan Sidwell
5357b1620c libcody: Remove nop asm
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-17 05:35:37 -08:00
GCC Administrator
eefe499fdf Daily bump. 2020-12-17 00:16:37 +00:00
Nathan Sidwell
b7b6879f0b c++: Another solaris header use [PR 98315]
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-16 11:57:31 -08:00
Jakub Jelinek
652702b0c9 libcody: fix --enable-checking=... follow-up [PR98311]
> 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-16 18:21:32 +01:00
Jonathan Wakely
4e42f6ebf4 libcody: Fix build for older GCC versions
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-16 14:33:26 +00:00
Nathan Sidwell
4be6c4e2a4 libcody: fix --enable-checking=... [PR 98311]
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-16 06:20:20 -08:00
Nathan Sidwell
6d972f5183 libcody: More dashism
There were still some dash-killing uses of +=.  Fixed thusly.

	* config.m4: Replace V+="..." with V="$V..."
	* configure: Rebuilt.
2020-12-16 06:03:38 -08:00
GCC Administrator
6e9d865119 Daily bump. 2020-12-16 00:16:31 +00:00
Marek Polacek
65eac818db cody: Remove unused variable.
libcody/ChangeLog:

	* buffer.cc (MessageBuffer::Lex): Remove unused variable.
2020-12-15 17:04:17 -05:00
Nathan Sidwell
4f0c800ba6 libcody: Work with older gccs
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-15 13:48:15 -08:00
Nathan Sidwell
a582a319c1 Fix dashism
I missed some other places that used +=

	* config.m4: Avoid var+=...
	* configure: Rebuilt
2020-12-15 11:37:52 -08:00
Nathan Sidwell
e48456f568 libcody: Fix for dash
Apparently 'var+=...' is not a dash thing.  Fixed thusly.

	* config.m4: Avoid non-dash idiom
	* configure: Rebuilt.
2020-12-15 11:29:44 -08:00
Jakub Jelinek
30c41abc41 c++: Add changelog files in c++tools/ and libcody/ directories
Add ChangeLog files, so that update_version_git can then fill those in.
2020-12-15 17:39:12 +01:00
Nathan Sidwell
362303298a Add libcody
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.
2020-12-15 07:09:59 -08:00