Commit Graph

418 Commits

Author SHA1 Message Date
Wolfgang Thaller
2885f5d8cd LaunchAPPL: Classic and Carbon methods 2017-10-03 11:57:56 +02:00
Wolfgang Thaller
5f998b85be ResourceFiles: read data forks from MacBinary and AppleSingle 2017-10-03 00:17:31 +02:00
Wolfgang Thaller
eb9dd5aaff AutomatedTests: clean up CMakeLists.txt 2017-10-02 23:43:35 +02:00
Wolfgang Thaller
c01a99637a add a missing error check (one of many) 2017-10-02 23:13:07 +02:00
Wolfgang Thaller
5961d1884d LaunchAPPL: modularize; Executor and MiniVMac backends for now 2017-10-02 23:06:50 +02:00
Wolfgang Thaller
270cafaab4 improve LaunchAPPL 2017-10-02 09:21:55 +02:00
Wolfgang Thaller
360a9858e3 Automated tests! 2017-10-02 09:21:54 +02:00
Wolfgang Thaller
8b5f06cb9b Fix #28: Don't pass Elf2Mac options on PPC. There is life beyond the 68K. 2017-10-02 09:21:28 +02:00
Wolfgang Thaller
38a2bf10c9 Merge pull request #27 from autc04/segments
Segments: Multiple-segment Apps for 68K. UnloadSeg is still missing.
2017-09-30 23:41:47 +02:00
Wolfgang Thaller
04b54dc296 update .gitignore 2017-09-30 23:38:41 +02:00
Wolfgang Thaller
c10538e350 build Samples/Dialog as single-segment app (to prevent the code path from rotting) 2017-09-30 23:38:23 +02:00
Wolfgang Thaller
32a2da9547 New, more compact format for relocations 2017-09-30 23:03:17 +02:00
Wolfgang Thaller
a68112b08d enable -ffunction-sections for libgcc and libc 2017-09-30 03:01:49 +02:00
Wolfgang Thaller
821bc04a7a set -ffunction-sections option on libretro and libConsole, and use gc-sections in Samples/HelloWorld. 2017-09-29 22:31:35 +02:00
Wolfgang Thaller
80443795d4 ConvertObj: add MacsBug names 2017-09-29 22:21:32 +02:00
Wolfgang Thaller
bf6728b156 Elf2Mac: --mac-single option for generating single-segment apps 2017-09-29 22:17:50 +02:00
Wolfgang Thaller
04174d1b55 Elf2Mac: option for stripping macsbug symbols 2017-09-29 22:04:11 +02:00
Wolfgang Thaller
70be98cb62 put macsbug name in separate section so it can be stripped out - and hack ld so that it won't be stripped out by -gc-sections 2017-09-29 22:02:21 +02:00
Wolfgang Thaller
c95a59f75e ConvertOBJ: sort modules to go easy on 16-bit relative references 2017-09-29 15:15:48 +02:00
Wolfgang Thaller
5c968dc589 missing #include 2017-09-29 15:15:20 +02:00
Wolfgang Thaller
58a39b22d6 Elf2Mac: clean up, split up 2017-09-29 02:12:57 +02:00
Wolfgang Thaller
16b6ab7a7a remove elfutils directory 2017-09-29 02:05:40 +02:00
Wolfgang Thaller
c70816ace7 hack libelf to work 2017-09-29 02:05:38 +02:00
Wolfgang Thaller
3df5e3bd13 libelf: portable endianness detection 2017-09-28 18:31:04 +02:00
Wolfgang Thaller
bf7325099e Take only libelf from elfutils and simplify the build system 2017-09-28 18:31:03 +02:00
Wolfgang Thaller
8240fa9358 Use a simple CMake build for libelf (autoconf is causing trouble on Mac OS 10.4) 2017-09-28 18:31:03 +02:00
Wolfgang Thaller
4897a9e039 Fix cache flushing 2017-09-28 17:51:19 +02:00
Wolfgang Thaller
c757fb9520 Name CODE resources, it's just cooler 2017-09-27 06:44:00 +02:00
Wolfgang Thaller
68c43b7a39 SegmentMap, code flushing, cleanup 2017-09-27 00:30:06 +02:00
Wolfgang Thaller
8a2038601a Exceptions now work in multiseg 2017-09-26 20:37:28 +02:00
Wolfgang Thaller
d08331584e MultiSeg Apps: First working version (exceptions don't work) 2017-09-26 11:27:53 +02:00
Wolfgang Thaller
a4716081c2 moving closer to multiseg 2017-09-26 02:38:05 +02:00
Wolfgang Thaller
ce59176be5 explicitly store target section in relocations 2017-09-24 21:25:58 +02:00
Wolfgang Thaller
33a2744643 Take responsibility: don't use standard crtbegin/end anymore, now that we control the linker script 2017-09-24 20:04:11 +02:00
Wolfgang Thaller
68150e1c23 Elf2Mac: start preparing for multiseg 2017-09-24 20:03:01 +02:00
Wolfgang Thaller
a5dad80454 Console: make ConsoleWindow immune to constructor ordering 2017-09-24 19:59:54 +02:00
Wolfgang Thaller
284126e13c Elf2Mac now generates CODE resources itself; --mac-flat for the old functionality 2017-09-24 16:00:00 +02:00
Wolfgang Thaller
6a3e6863c5 Elf2Mac: Clean up code and prepare for segments 2017-09-24 14:16:58 +02:00
Wolfgang Thaller
a6bc7b5de6 elf2flt is no longer the right name 2017-09-24 14:10:37 +02:00
Wolfgang Thaller
0eb20cae6f fix bootstrap 2017-09-24 02:20:50 +02:00
Wolfgang Thaller
0e3a0a5d18 output of elf2mac is now a piece of code with no headers with its entry point at the start. No more FLT file format. 2017-09-24 00:32:13 +02:00
Wolfgang Thaller
6c1e76280e don't include relocs for undefined symbols - they should stay at absolute NULL 2017-09-24 00:29:50 +02:00
Wolfgang Thaller
975c1f31c3 Some cleanups 2017-09-23 22:36:47 +02:00
Wolfgang Thaller
406471dd79 AppleDouble support 2017-09-23 21:05:40 +02:00
Wolfgang Thaller
57906f91c1 zero-terminate relocation list 2017-09-23 20:11:38 +02:00
Wolfgang Thaller
5059b87fe4 relocate.c: reduce reliance on the FLT header (it has to go) 2017-09-23 19:56:36 +02:00
Wolfgang Thaller
278780642e make DEBUGBREAK flag for add_application work again 2017-09-23 04:00:30 +02:00
Wolfgang Thaller
008ffe1401 Elf2Mac, a replacement for elf2flt.
Right now this is not an improvement, but the plan is to work towards multi-segment apps.
2017-09-23 03:56:37 +02:00
Wolfgang Thaller
d21be3b4e1 Add elfutils-0.170
(from https://sourceware.org/elfutils/, GPL/LGPL licensed)
2017-09-21 21:04:42 +02:00
Wolfgang Thaller
0ecc07538f Make things work with Universal Interfaces 3.0 2017-09-21 15:41:10 +02:00