Commit Graph

21 Commits

Author SHA1 Message Date
Adam Goode
085ef7e333 Define "macintosh" and "Macintosh"
See https://sourceforge.net/p/predef/wiki/OperatingSystems/.
2024-03-18 21:47:22 -04:00
Wolfgang Thaller
ca8e6715cb PowerPC: we need XCOFF_DEBUG, dwarf doesn't work 2022-10-28 11:38:55 +02:00
Wolfgang Thaller
3d744ea86e switch PROCESSOR_DEFAULT to PROCESSOR_PPC601 2022-08-28 19:31:47 +02:00
Wolfgang Thaller
878a21d741 PowerPC: use long int for int32_t, to match Apple's SInt32 and the m68k target 2019-09-09 21:48:40 +02:00
Wolfgang Thaller
7d2fd1bf78 make pascal attribute imply C linkage (fixes #75) 2019-01-21 21:42:41 +01:00
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
78de0215f8 gcc 8.2 fixups 2018-12-29 00:41:17 +01:00
Wolfgang Thaller
a135f0b196 libretro: use separate library file names for Carbon and Classic PPC 2018-05-16 02:08:25 +02:00
Wolfgang Thaller
d7976cae6b add __PPC__ to list of predefined symbols for powerpc-macos 2017-12-04 22:11:33 +01:00
Wolfgang Thaller
bc200ad489 For *-apple-macos-gcc, -Wno-trigraphs is now the default.
('????' is a common four character code on Classic MacOS, we don't want warnings)
2017-10-08 20:55:04 +02:00
Wolfgang Thaller
e8063b8cf6 C library/system calls: clean up, implement open, read, write, close, lseek; clean up the command line gcc passes to ld 2017-10-08 19:28:10 +02:00
Wolfgang Thaller
46c502e5da fix merge problem: struct field alignment in powerpc-macos gcc 2017-10-07 16:04:54 +02:00
Wolfgang Thaller
431390d872 brutally use absolute addresses in exception handling tables and stick them in .data (for now) 2017-04-12 11:55:14 +02:00
Wolfgang Thaller
79d23218a9 Clean up Carbon build 2015-10-07 00:03:28 +02:00
Wolfgang Thaller
8bd1a20557 ppc: yes, we need GCC's COLLECT_EXPORT_LIST hack. Constructors/Destructors and exceptions now work. 2015-09-16 00:38:12 +02:00
Wolfgang Thaller
05d5067e33 Implement a -carbon option for gcc: link with CarbonLib instead of InterfaceLib 2015-09-13 00:42:48 +02:00
Wolfgang Thaller
3ae6b24cca setup libs for powerpc 2015-09-08 18:04:15 +02:00
Wolfgang Thaller
899546720e ppc: link to libretrocrt by default 2015-09-01 00:05:31 +02:00
Wolfgang Thaller
8ffcbfe2d4 ppc: make ptrdiff_t be long, for compatibility with 68K 2015-08-31 16:43:08 +02:00
Wolfgang Thaller
1434a0dbae ppc: add to build script 2015-08-31 01:17:52 +02:00
Wolfgang Thaller
fa0afdce72 ppc: initial powerpc-apple-macos target 2015-08-30 10:46:39 +02:00