Commit graph

7616 commits

Author SHA1 Message Date
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 2eaca39322
Merge pull request #120 from davidgiven/dtrg-no
Remove the built-in preprocessor in cemcom.ansi
2018-09-02 13:15:11 +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 fa1ba55ad2 Convert CRLF into LF on read; this should avoid problems with parsing CRLF files.
Fixes #117.
2018-09-02 11:30:20 +02:00
David Given 788f439a48 Run files through clang-format before editing. 2018-09-02 11:16:06 +02:00
David Given bed39e1f4d Merge. 2018-09-01 15:34:36 +02:00
David Given 1d9f9074d9 The default installation location should be /usr/local. 2018-09-01 15:34:01 +02:00
David Given 7dc4c16521
Merge pull request #112 from davidgiven/dtrg-te
Add tea-ci CI for Windows builds
2018-09-01 11:49:28 +02:00
David Given 6f74f1caf3 Disable the msys32 build because it doesn't work (due to brk issues). 2018-09-01 11:43:52 +02:00
David Given f09182eb37 Another typo fix. 2018-09-01 11:34:29 +02:00
David Given 269484f64a Typo fix. 2018-09-01 11:32:26 +02:00
David Given b57900c638 Experiment with a build matrix and msys32. 2018-09-01 11:31:45 +02:00
David Given a7719a8fe6 Add bison and flex. 2018-09-01 11:25:03 +02:00
David Given bc1a639697 No luck with ninja --- make should work? 2018-09-01 11:23:39 +02:00
David Given e4ba155886 Update apt before installing. 2018-09-01 11:19:16 +02:00
David Given 0a735d43e6 Typo fix. 2018-09-01 11:18:25 +02:00
David Given e886186890 Cygwin setup is very slow, so put sh-on-windows first for testing. 2018-09-01 11:17:50 +02:00
David Given d1a00f2f48 Let's try sh-on-windows as well. 2018-09-01 11:12:14 +02:00
David Given 10785e9791 msys32 doesn't work; try Cygwin instead. 2018-09-01 11:07:28 +02:00
David Given 2666268af7 Install ninja before building. 2018-09-01 11:04:12 +02:00
David Given 5377c1cc82 Looks like sh-on-windows isn't working. 2018-09-01 11:02:48 +02:00
David Given ccde733793 Add a drone.yml for tea-ci. 2018-09-01 11:00:08 +02:00
David Given 5f83fd85dc Don't try to use acct() on cygwin (which doesn't support it). Fixes: #111 2018-09-01 10:41:31 +02:00
David Given 8d321900b4
Merge pull request #110 from davidgiven/dtrg-warnings
Fix warnings and convert the Modula-2 library to ANSI C.
2018-06-25 22:29:47 +02:00
David Given 7971bdba5a Warning-fixed and ansified the Modula-2 library. 2018-06-25 22:22:37 +02:00
David Given f8ba7ef962 Move the Modula-2 library includes into a directory in lang/m2 where they belong. 2018-06-24 20:32:59 +02:00
David Given aa19c08512
Merge pull request #109 from davidgiven/dtrg-warnings
Rework the Linux include directories.
2018-06-24 20:03:21 +02:00
David Given ab7002c0ee All the Linux include directories are the same, so common them all out into a
single one, like OSX.
2018-06-24 19:57:43 +02:00
David Given 47bdd9cc49
Merge pull request #108 from davidgiven/dtrg-warnings
Warning-fix and protoise the basic library.
2018-06-24 01:00:30 +02:00
David Given 1702d873ea Warning-fix and protoise the basic library. 2018-06-24 00:35:51 +02:00
David Given a6742a7d55
Merge pull request #107 from davidgiven/dtrg-libc
OpenBSD fixes
2018-06-24 00:21:29 +02:00
David Given bbb98240fe Merge from trunk. 2018-06-24 00:08:39 +02:00
David Given f45b357740 Remove the dependency on the glibc-only byteswap.h. 2018-06-24 00:01:06 +02:00
David Given 1fc20e90c0 Remove c99-isms. 2018-06-23 23:56:34 +02:00
David Given 205c8d0a35 Run through clang-format. 2018-06-23 23:46:44 +02:00
David Given 91a978fa95
Merge pull request #106 from davidgiven/dtrg-libc
Refactor the libc
2018-06-23 23:28:21 +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