carl
9fab867333
Fix issue again with wrong macro on error.
2019-02-26 00:46:10 +08:00
carl
f74b29d303
* Remove some more compiler warnings.
2019-02-24 00:46:05 +08:00
carl
9622898131
Bugfix of fprint using correct output redirection (fix from last commit).
2019-02-24 00:45:35 +08:00
carl
f7ba3eec50
Remove CMake changes and generic sed scripts so they are move to a separate branch.
2019-02-21 00:43:04 +08:00
carl
9ca8f42930
+ Add missing files.
2019-02-20 00:32:19 +08:00
carl
750a6bc684
Better ANSI C compatibility and portability:
...
+ Addition of function prototypes and include files.
+ Change function definitions to ANSI C style.
+ Initial support for CMake
+ Scripts to generate compiler header is now sed based.
2019-02-19 00:54:23 +08:00
David Given
58698bed19
Removed a whole bunch of old strcpy() prototypes in favour of <string.h>.
2019-02-10 13:20:04 +01:00
David Given
24ffbe086a
Install the cpp.ansi man page. #82 .
2018-12-22 23:47:49 +01:00
David Given
79fd34dac6
Call atexit handlers properly, avoiding a NPE and seg fault every time a
...
program exits.
2018-09-09 18:51:00 +02:00
David Given
b76352de99
Remove stray #include.
2018-09-02 12:54:53 +02:00
David Given
cb983fac44
Rip out the built-in preprocessor from cemcom.ansi, now it's no longer used.
2018-09-02 12:50:50 +02:00
David Given
6931ffa5a4
Disable the built-in preprocessor in cemcom.ansi; the external preprocessor is
...
always run. Fix a bug in block skipping in the preprocessor.
2018-09-02 12:39:00 +02:00
David Given
f8fc5bc3d8
Implement single-line C++-style comments.
...
Fixes : #118
2018-09-02 12:14:59 +02:00
David Given
0e9736fdca
Run through clang-format before editing.
2018-09-02 12:04:33 +02:00
David Given
274ed3cb6a
Run through clang-format before editing.
2018-09-02 11:49:40 +02:00
David Given
dd00b81080
Run files through clang-format before editing.
2018-09-02 11:36:15 +02:00
David Given
788f439a48
Run files through clang-format before editing.
2018-09-02 11:16:06 +02:00
David Given
fd94e219d4
Remove the attic.
2018-06-23 23:16:22 +02:00
David Given
59dbdea48a
Move mktemp to sys; attic getgrent as noone will ever use this.
2018-06-23 23:15:42 +02:00
David Given
3f10299f43
Move the portable time code into core. clock() goes into sys (as it calls
...
times()).
2018-06-23 19:49:29 +02:00
David Given
64ae1d7583
Move time() into sys; change the name of the variable which controls it.
2018-06-23 19:40:50 +02:00
David Given
bb78fd158c
Move the big gnarly functions like system() and popen() into sys, and make them
...
build.
2018-06-23 19:18:16 +02:00
David Given
6a729b846a
Move stdio into (mostly) sys.
2018-06-23 18:54:40 +02:00
David Given
af22b7ea85
Change stdio to use atexit() rather than the internal __clean variable; this
...
breaks the dependency between exit/atexit and stdio. Buffers are no longer
flushed on abort() (because it's pretty risky). Move the relevant functions
into sys/core.
2018-06-23 18:35:45 +02:00
David Given
f744a21699
All the opendir()/readdir() stuff is obsolete because it's all implemented in
...
terms of open() and read(), which isn't how it's done any more; move the
functions into an attic.
2018-06-23 18:25:26 +02:00
David Given
df1cdf7762
Add the sys directory for libc functions which use system calls; move the
...
malloc functions in there.
2018-06-23 18:08:03 +02:00
David Given
c4e4505a73
Move the errno functions into core.
2018-06-23 17:52:15 +02:00
David Given
538eefb573
Get em22 working. Remove the leading-underscore system calls from its libsys.
2018-06-23 15:57:57 +02:00
David Given
680b4071b7
Made the two OSX platforms work with the new libc layout.
2018-06-23 12:55:59 +02:00
David Given
b727b7affd
Make linuxppc work.
2018-06-23 12:41:54 +02:00
David Given
b267b56ad9
Made linux68k work; commoned up all the generic linux includes.
2018-06-23 12:35:17 +02:00
David Given
66815ff987
Make linux386 work with the new libc layout.
2018-06-23 12:13:33 +02:00
David Given
32c881474e
Create a basic and probably wrong common unistd.h, which replaces the plat one.
...
Made this work with cpm (but nothing else yet).
2018-06-23 11:46:55 +02:00
David Given
dd0f959245
Move assert into core.
2018-06-23 11:16:06 +02:00
David Given
5fd8d772fd
Move the string-to-float functions into core, after marking them as
...
ACKCONF_WANT_FLOAT.
2018-06-23 11:14:24 +02:00
David Given
94ffa3ba88
libc floating point and stdio floating point can now be turned on and off using
...
ACKCONF variables.
2018-06-23 00:04:14 +02:00
David Given
9bf1d548fc
Rearrange the libc config files, ready for adding new options.
2018-06-22 23:43:15 +02:00
David Given
c0276416d8
Move some more libc functions into core.
2018-06-22 22:20:02 +02:00
David Given
d1cdb07719
Realise that the libc core can safely call other libc core functions, even if
...
they're not defined in the core: so putw() can call stdio stuff, for example.
So the earlier concept of pureness isn't necessary. Rename accordingly.
2018-06-21 23:24:23 +02:00
David Given
62025c92bd
The ctype functions are pure.
2018-06-21 23:06:29 +02:00
David Given
d9d7ffe0d7
The maths library is pure.
2018-06-21 23:00:33 +02:00
David Given
f9c059812b
Moved the setjmp functions into the new pure directoy.
2018-06-21 22:55:42 +02:00
David Given
32f47b1d24
Move the pure locale functions into the new pure directory.
2018-06-21 22:54:25 +02:00
David Given
b9d2f353d9
Move the pure stdlib functions into the new pure directory.
2018-06-21 22:52:31 +02:00
David Given
4dbdb7d8d5
Rethink the libc layout.
2018-06-21 22:47:02 +02:00
David Given
83e1b2ad94
Move the str and mem functions into the new src/core.
2018-06-21 22:39:08 +02:00
David Given
93f39e4bbf
Run libcc.ansi through clang-format.
2018-06-21 22:33:47 +02:00
David Given
13e195d19f
Warning fixes.
2018-06-17 15:42:26 +02:00
David Given
7eaa235fd1
Bodge the ancient em monitor library into building as a libsys for the em22
...
plat. It's completely untested, but it builds and makes e.out executables.
2018-06-13 21:44:25 +09:00
David Given
d623440c77
Add the core of a simple em22 platform. Unfortunately it doesn't work; the old
...
em libmon vanished decades ago (or never existed), and also ass appears to have
a different idea of what the em opcodes are to everything else and gets
confused.
2018-06-10 20:25:48 +09:00