Commit Graph

629 Commits

Author SHA1 Message Date
Wolfgang Thaller
2999ed8613 change the way gcc's collect2 works to fix #74
GCC's AIX port, which RetroPPC is based on, uses a different method
from most other platforms to collect the list of all global constructors
and the list of all exception handling tables.
The "standard" method does not work on AIX because IBM's linker will
discard those symbols too early for GCC's liking if they are not
directly referenced.

Unfortunately, the workaround seems to keep too much, so PPC C++
exececutables were at least 1.1MB big.

We don't need to be compatible with IBM's linker. Instead, hack binutils
to keep the symbols that we need kept, and allow GCC to use the
"standard" method for the collect2 pass.

PowerPC application sizes are now down to a reasonable size.
2019-01-13 22:33:07 +01:00
Wolfgang Thaller
8d303a9185 add automated test for exception handling 2019-01-13 21:43:38 +01:00
Wolfgang Thaller
1fc19efaeb LaunchAPPLServer: use separate OT endpoints for connection 2019-01-11 00:46:36 +01:00
Wolfgang Thaller
f1f9cf9099 fix automatedtests 2019-01-09 23:53:11 +01:00
Wolfgang Thaller
75f72af9ac LaunchAPPLServer: logging changes 2019-01-09 20:12:59 +01:00
Wolfgang Thaller
ee5a3b13ca binutils: display file auxentries 2019-01-09 20:12:26 +01:00
Wolfgang Thaller
641a8e2c77 automated tests: run all platforms in one command 2019-01-09 08:39:09 +01:00
Wolfgang Thaller
09110dbff4 LaunchAPPL: delay 0.1 seconds so that server has time to reopen the port 2019-01-09 00:33:04 +01:00
Wolfgang Thaller
29d6d2d230 add .editorconfig file 2019-01-09 00:31:47 +01:00
Wolfgang Thaller
360c364bf9 LaunchAPPLServer: optional embedded debug console 2019-01-09 00:31:32 +01:00
Wolfgang Thaller
71660defd6 LaunchAPPLServer: fix problem with empty forks 2019-01-09 00:18:44 +01:00
Wolfgang Thaller
3bb5ce4e74 LaunchAPPLServer: "Listening on TCP" message 2019-01-09 00:15:44 +01:00
Wolfgang Thaller
ce9deca9db make console embeddable 2019-01-09 00:12:47 +01:00
Wolfgang Thaller
35dedc550a setup -carbon flag in toolchain file 2019-01-09 00:11:12 +01:00
Wolfgang Thaller
bbc3a1f049 Fix crashes caused by 68K relocations past the end of sections; still no idea what's going on. 2019-01-08 22:58:30 +01:00
Wolfgang Thaller
380fef0114 cleanup CMAKE_CXX_FLAGS and fix various warnings 2019-01-04 03:35:32 +01:00
Wolfgang Thaller
bade105326 fix permissions when extracting from powerpc library archives - upstream bug at https://sourceware.org/bugzilla/show_bug.cgi?id=24061 2019-01-04 01:37:18 +01:00
Wolfgang Thaller
aa6518b7db
Merge pull request #73 from autc04/gcc-8.2
Upgrade to GCC 8.2, binutils 2.31.1 and newlib 3.0.0
2019-01-03 23:47:37 +01:00
Wolfgang Thaller
5443381d68 fix pascal calls 2019-01-03 22:55:50 +01:00
Wolfgang Thaller
d520ee4311 attempt to improve code quality for pascal calls 2019-01-03 20:59:51 +01:00
Wolfgang Thaller
12485f7276 Prevent stack overrun in binutils (issue #69) 2019-01-02 20:50:24 +01:00
Wolfgang Thaller
e1fb84081d Prevent stack overrun in binutils (issue #69) 2019-01-02 15:26:45 +01:00
Wolfgang Thaller
b87964c355 fix automated tests for carbon 2019-01-02 15:26:44 +01:00
Wolfgang Thaller
31cf746b9a update README 2019-01-02 00:19:42 +01:00
Wolfgang Thaller
f53e0a3c2b powerpc: disable binutils/bfd plugin support, it causes problems 2019-01-02 00:19:19 +01:00
Wolfgang Thaller
e92b60224d build-toolchain: don't create empty libretrocrt.a, override cmake's compiler test instead 2019-01-02 00:18:26 +01:00
Wolfgang Thaller
413bb90073 (hopefully) fix pascal calls for gcc 8.2 2019-01-02 00:15:42 +01:00
Wolfgang Thaller
1e59241091 make raw_inline work again for gcc 8.2 2019-01-02 00:14:08 +01:00
Wolfgang Thaller
0f240969b4 MakeImports: skip wrong-architecture libraries 2019-01-02 00:13:51 +01:00
Wolfgang Thaller
3b0ef808de re-merge newlib 2018-12-29 10:19:56 +01:00
Wolfgang Thaller
5420e7d4ce Merge branch 'upstream' into gcc-8.2 2018-12-29 10:04:44 +01:00
Wolfgang Thaller
ec13cc9ce7 fix newlib 2018-12-29 09:59:36 +01:00
Wolfgang Thaller
78de0215f8 gcc 8.2 fixups 2018-12-29 00:41:17 +01:00
Wolfgang Thaller
39af85e1fd restore upgraded intl 2018-12-28 18:55:40 +01:00
Wolfgang Thaller
3f05837f3f Merge branch 'upstream' into gcc-8.2
# Conflicts:
#	binutils/bfd/config.bfd
#	binutils/gas/configure.tgt
#	binutils/intl/ChangeLog
#	binutils/intl/aclocal.m4
#	binutils/intl/config.h.in
#	binutils/intl/configure
#	binutils/intl/configure.ac
#	binutils/ld/configure.tgt
#	gcc/gcc/c/c-decl.c
#	gcc/gcc/c/c-parser.c
#	gcc/gcc/calls.c
#	gcc/gcc/combine.c
#	gcc/gcc/config/m68k/m68k-protos.h
#	gcc/gcc/config/m68k/m68k.c
#	gcc/gcc/config/rs6000/rs6000.opt
#	gcc/gcc/cp/parser.c
#	gcc/gcc/expr.c
#	gcc/intl/ChangeLog
#	gcc/intl/configure
#	gcc/intl/configure.ac
#	gcc/newlib/configure.host
2018-12-28 17:02:51 +01:00
Wolfgang Thaller
5dfed9d403 upgrade to gcc 8.2.0 and newlib 3.0.0 2018-12-28 16:30:48 +01:00
Wolfgang Thaller
1cc92c1e99 update to binutils 2.31.1 2018-12-28 16:25:28 +01:00
Wolfgang Thaller
ec8a5332b9 fix warning 2018-12-28 15:59:07 +01:00
Wolfgang Thaller
a726045d54 fix some warnings 2018-12-25 22:42:58 +01:00
Wolfgang Thaller
2e2a734403 Rez: fix $ABCD hex literals 2018-12-25 20:05:53 +01:00
Wolfgang Thaller
a3d330fa3b Revert ineffective workaround for bison 3.2.3 bug
This reverts commit 7eced7335a.
2018-12-25 00:07:16 +01:00
Wolfgang Thaller
ac1b89dd41 Merge branch 'master' of github.com:autc04/Retro68 2018-12-23 12:02:45 +01:00
Wolfgang Thaller
7eced7335a work around bison 3.2 bug (fixes #72) 2018-12-23 12:02:36 +01:00
Wolfgang Thaller
1594085852 patch for gcc bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86724 (already fixed upstream in gcc 7.3.1 and 8.2.1) 2018-12-22 15:47:37 +01:00
Wolfgang Thaller
00471c6104 compatibility with bison 3.2 (fix #70) 2018-12-22 10:07:18 +01:00
Wolfgang Thaller
68636d820c interpret .as as extension for apple single 2018-12-22 10:07:18 +01:00
Wolfgang Thaller
d7a9c8d862 gitattributes 2018-12-22 10:07:18 +01:00
Wolfgang Thaller
eca387c58d
Merge pull request #68 from v3rm0n/v3rm0n-patch-1
Small changes in README
2018-12-19 09:27:15 +01:00
Maido Käära
a6bedb1dcf
Small changes in README 2018-12-19 09:51:54 +02:00
Wolfgang Thaller
564dd9be0e
Merge pull request #62 from donbright/patch-3
check the directories where the interfaces and libraries are installed to make sure they dont contain the '&' character, which breaks the build on linux. (some archives of the interfaces and libraries files, have them named as "Interfaces&Libraries")
2018-09-16 18:28:42 +02:00