David Given
b146d2641c
Fix a slightly mysterious dependency issue.
2015-03-23 00:09:41 +01:00
David Given
98ea849d03
Improve flex correctness.
2015-03-23 00:09:27 +01:00
David Given
9f23fbbe6a
Allow machines to use cg if they wish.
...
--HG--
rename : mach/proto/ncg/build.mk => mach/proto/cg/build.mk
rename : util/ncgg/build.mk => util/cgg/build.mk
2015-03-23 00:08:51 +01:00
David Given
c5018d7088
64-bit-ify (adhoc varargs are evil).
2015-03-23 00:07:59 +01:00
David Given
3d5e72e20b
Newer versions of GNU Make have a new function which collides with a
...
variable we're using; change the name of the variable.
2015-03-22 12:09:46 +01:00
David Given
aacabba165
Apply fix contributed by George Koehler:
...
- don't crash if BSS overlaps BDOS
- fix stack initialisation bug
- fix command line argification
2013-06-02 22:02:15 +01:00
David Given
d273497077
Add some missing libc functions: setenv, unsetenv, strdup.
...
--HG--
rename : lang/cem/libcc.ansi/stdlib/getenv.c => lang/cem/libcc.ansi/stdlib/setenv.c
rename : lang/cem/libcc.ansi/string/strlen.c => lang/cem/libcc.ansi/string/strdup.c
extra : source : 64d6e6eec18d76bf8f3947ec5d171db94acdb282
2013-05-29 21:41:58 +01:00
David Given
f522aba4af
Add support for snprintf and vsnprintf. Try and make the return value a bit
...
more standards-compliant.
--HG--
extra : source : a19eb606871f918e3d9e195b487b5276855edc8e
2013-05-29 17:10:58 +01:00
David Given
6fff2d45fe
Attempt to fix 64-bitness error in ashow. Deprecate the structure format macros in h/out.h because they make no sense on 64-bit platforms.
2013-05-29 14:48:51 +01:00
David Given
e0c121d6e6
Use relocation enumerations rather than hard-coded values for relocation types
...
(these were causing problems due to the enumeration values having changed).
2013-05-29 14:11:04 +01:00
David Given
fc1b3672a3
Reapply bugfix to sbrk() which got dropped during the move from linx386/libsys
...
to liblinux. Set errno correctly.
2013-05-18 13:00:37 +01:00
David Given
c18a82ec40
Apply build system fixes for OpenBSD contributed by George Koehler.
2013-05-18 12:15:53 +01:00
David Given
9a513e8ef3
Fix warning.
2013-05-17 00:04:54 +01:00
David Given
e7c2029c9c
Dependency fixes.
2013-05-17 00:04:37 +01:00
David Given
e5f6d5acfa
Fix buffer overrun looking up type information for op_lab pseudoops (as
...
they're not EM opcodes, we shouldn't look them up in em_flags!).
2013-05-16 22:02:59 +01:00
David Given
f70f78b6e4
Correctly generate dependency information.
2013-05-16 22:02:00 +01:00
David Given
84f81a442c
Merge in build system changes.
2013-05-16 14:33:19 +01:00
David Given
24ef1627ec
A few last build tweaks.
...
--HG--
branch : dtrg-buildsystem
2013-05-16 14:20:58 +01:00
David Given
11377070fd
Update distribution files.
...
--HG--
branch : dtrg-buildsystem
2013-05-15 23:46:15 +01:00
David Given
8fbce949f5
Now describe the make-based build system in the README.
...
--HG--
branch : dtrg-buildsystem
2013-05-15 23:12:05 +01:00
David Given
aaa3f14a79
Fix build error in opt which was causing all code, everywhere, to be broken.
...
Remember to build opt2 too.
--HG--
branch : dtrg-buildsystem
2013-05-15 22:09:28 +01:00
David Given
e9233b4712
Build ego.
...
--HG--
branch : dtrg-buildsystem
rename : util/arch/build.mk => util/ego/build.mk
2013-05-15 21:14:06 +01:00
David Given
f6c43b95ef
Modula-2 now works.
...
--HG--
branch : dtrg-buildsystem
rename : lang/pc/build.mk => lang/m2/build.mk
rename : lang/pc/libpc/build.mk => lang/m2/comp/build.mk
rename : lang/pc/libpc/build.mk => lang/m2/libm2/build.mk
2013-05-14 22:24:38 +01:00
David Given
66aebcdd91
Pascal compiler now runs.
...
--HG--
branch : dtrg-buildsystem
rename : lang/basic/build.mk => lang/pc/build.mk
rename : lang/cem/cemcom.ansi/build.mk => lang/pc/comp/build.mk
rename : lang/basic/lib/build.mk => lang/pc/libpc/build.mk
2013-05-14 20:47:04 +01:00
David Given
a6ebaeabd0
Basic compiler now runs.
...
--HG--
branch : dtrg-buildsystem
2013-05-14 18:01:38 +01:00
David Given
d5f0107746
Build the Basic run-time library (after some modernisation).
...
--HG--
branch : dtrg-buildsystem
2013-05-14 16:11:29 +01:00
David Given
a68b117e96
Add missing dependency.
...
--HG--
branch : dtrg-buildsystem
2013-05-14 14:55:29 +01:00
David Given
07453d184a
Top, topgen, aelflod. Moved the libraries back into the platform-specific
...
directories --- wrangling descr files was too hard. C programs can be built
for cpm, pc86, linux386, linux68k!
--HG--
branch : dtrg-buildsystem
rename : util/ack/build.mk => util/led/build.mk
rename : util/LLgen/build.mk => util/topgen/build.mk
2013-05-13 23:26:15 +01:00
David Given
442306d557
Split off some of the platform-independent stuff (such as as and ncg).
...
--HG--
branch : dtrg-buildsystem
rename : plat/pc86/build.mk => mach/i386/build.mk
rename : plat/pc86/build.mk => mach/i80/build.mk
rename : plat/pc86/build.mk => mach/i86/build.mk
rename : plat/pc86/build.mk => mach/m68020/build.mk
rename : plat/pc86/build.mk => mach/powerpc/build.mk
2013-05-13 22:12:46 +01:00
David Given
81778b603f
Merge updates from trunk.
...
--HG--
branch : dtrg-buildsystem
2013-05-13 12:37:27 +01:00
David Given
af0dedeb6e
Fix typo.
...
--HG--
branch : dtrg-buildsystem
2013-05-13 11:14:10 +01:00
David Given
b0c238eb5d
Made a start on building the runtimes for each platform and language; the
...
Linuxes all build.
--HG--
branch : dtrg-buildsystem
rename : modules/src/em_mes/build.mk => modules/src/read_em/build.mk
rename : plat/pc86/build.mk => plat/linux386/build.mk
rename : plat/pc86/build.mk => plat/linux68k/build.mk
rename : plat/pc86/build.mk => plat/linuxppc/build.mk
rename : util/ack/build.mk => util/misc/build.mk
2013-05-12 23:51:55 +01:00
David Given
c1aca7dae5
First milestone of replacing the build system.
...
--HG--
branch : dtrg-buildsystem
rename : lang/cem/cpp.ansi/Parameters => lang/cem/cpp.ansi/parameters.h
2013-05-12 20:45:55 +01:00
David Given
d89f172841
Change fatal() and error() to use varargs.
2013-05-10 12:04:21 +01:00
David Given
d91a1dc1a6
Merge changes from branch: linux68k platform, linuxppc platform (partially
...
working), and miscellaneous changes to support these.
2013-05-09 18:14:16 +01:00
David Given
b9b808e01a
Apply George Koehler's aelflod fix for generating non-EM_386 binaries.
...
Adjust platforms to use it. Fix some bugs in the linux386 platform.
--HG--
branch : dtrg-experimental-powerpc
2013-05-09 15:54:23 +01:00
David Given
99d7f513f2
Properly error out if something goes wrong rather than ploughing ahead
...
anyway.
--HG--
branch : dtrg-experimental-powerpc
2013-05-09 11:20:36 +01:00
David Given
bcfb3d802f
Add pmfile for m68020 libend.
...
--HG--
branch : dtrg-experimental-powerpc
2013-05-09 00:58:35 +01:00
David Given
8e2d027c49
Add pmfile for m68020 libem.
...
--HG--
branch : dtrg-experimental-powerpc
2013-05-09 00:57:47 +01:00
David Given
8d0261473d
Add missing linux68k platform and liblinux support library.
...
--HG--
branch : dtrg-experimental-powerpc
2013-05-09 00:56:10 +01:00
David Given
c93cb69959
Check in incomplete Linux PowerPC and M68K work.
...
--HG--
branch : dtrg-experimental-powerpc
2013-05-08 00:48:48 +01:00
George Koehler
c8fdcff960
Some fixes for aelflod and aslod.
...
Copy rhead() and rsect() from aslod to aelflod, so aelflod can work
for machine with 64-bit long.
In aelflod, fix ELF header so file(1) no longer reports "corrupted
section header size".
2013-04-24 19:57:23 -04:00
David Given
dccecc5d45
Back out erroneous change.
2012-12-14 11:56:21 +00:00
George Koehler
0fc7fd5d33
Prevent segfault when trying to print an error message.
...
Use <stdarg.h> to pass arguments correctly, as ack/util/util.c
already uses <stdarg.h> the same way.
2012-10-24 13:44:50 -04:00
David Given
4349d702fa
Change from using platform-specific types to stdint platform-independent types
...
when reading the structure header.
2012-09-27 11:32:40 +01:00
David Given
2beb3646a7
Change to use stdint's implementation independent types rather than short and
...
long (which vary depending on whether you're on a 64-bit system or not).
2012-09-27 10:54:41 +01:00
George Koehler
7ef9b79c11
Merge deletion of many undead files.
2012-09-23 15:31:16 -04:00
George Koehler
3dcc3bd1cf
Allow pc86 bootloader to boot from more floppy drives.
...
When the bootloader probes the drive geometry, the BIOS can clobber the
es register. If this happens, the bootloader loads the program to the
wrong address, and jumps off the code. This happens with an emulated
floppy drive in Bochs or QEMU, but not with an emulated hard disk.
2012-09-23 14:43:22 -04:00
George Koehler
e7c79415b5
Prevent division by zero in aslod.
...
rhead() and rsect() had assumed sizeof(long) == 4, but OpenBSD/amd64
has sizeof(long) == 8. The problem revealed itself when sect->os_lign
became zero, and align() divided by zero.
2012-09-21 22:51:12 -04:00
George Koehler
0131ca4d46
Delete 689 undead files.
...
These files "magically reappeared" after the conversion from CVS to
Mercurial. The old CVS repository deleted these files but did not
record *when* it deleted these files. The conversion resurrected these
files because they have no history of deletion. These files were
probably deleted before year 1995. The CVS repository begins to record
deletions around 1995.
These files may still appear in older revisions of this Mercurial
repository, when they should already be deleted. There is no way to fix
this, because the CVS repository provides no dates of deletion.
See http://sourceforge.net/mailarchive/message.php?msg_id=29823032
2012-09-20 22:26:32 -04:00