upscheme/c
Lassi Kortela 5ced8d91f6 Store boot image inside main executable
Previously the boot image was kept in the separate file "flisp.boot".
This caused all kinds of problems, as bootstrapping is wont to do. The
biggest problem was finding a portable and convenient pathname for it.

Instead of dealing with all that stuff about how to find the file,
just store the image in a huge C string constant that goes into the
main executable. This necessitates adding a C-string hex dumper into
the Lisp system, and making build.sh slightly more complicated, but
that's a small price to pay for not having to carry a separate file
everywhere we go. Also, flmain.c is a lot simpler now and we don't
have to play around with symlinks.
2019-08-13 23:07:44 +03:00
..
argcount.h Hoist argcount() into its own header file 2019-08-09 22:08:44 +03:00
bitvector-ops.c Unify preprocessor checks for win32 2019-08-10 00:12:33 +03:00
bitvector.c Unify preprocessor checks for win32 2019-08-10 00:12:33 +03:00
bitvector.h Do not include count_bits() all over the place 2019-08-09 21:41:37 +03:00
buf.c Fix portability bugs uncovered by Alpine Linux/musl libc 2019-08-13 14:19:38 +03:00
buf.h Add string buffer 2019-08-11 22:31:54 +03:00
builtins.c Turn (import ...) into a macro to match Scheme syntax 2019-08-12 18:18:46 +03:00
cvalues.h Add missing const qualifiers 2019-08-11 23:27:12 +03:00
dtypes.h Remove unneeded numerical constants 2019-08-10 02:12:54 +03:00
dump.c Add some missing system includes 2019-08-10 01:02:27 +03:00
env.h Start environment-stack implementation 2019-08-11 23:27:38 +03:00
env_unix.c Start environment-stack implementation 2019-08-11 23:27:38 +03:00
env_windows.c Get OS name from uname() 2019-08-10 00:35:16 +03:00
equal.h Replace ptrint_t with standard intptr_t 2019-08-09 21:07:16 +03:00
equalhash.c Fix some "long double" nonsense 2019-08-13 18:28:19 +03:00
equalhash.h Get rid of almost all recursive includes 2019-08-09 19:00:17 +03:00
flisp.c Store boot image inside main executable 2019-08-13 23:07:44 +03:00
flisp.h Store boot image inside main executable 2019-08-13 23:07:44 +03:00
flmain.c Store boot image inside main executable 2019-08-13 23:07:44 +03:00
fs.h Break down dirpath.c into fs_*.c by OS 2019-08-09 23:12:19 +03:00
fs_darwin.c Break down dirpath.c into fs_*.c by OS 2019-08-09 23:12:19 +03:00
fs_dragonfly.c Start fs implementation for DragonFly BSD 2019-08-10 02:04:11 +03:00
fs_freebsd.c Simplify FreeBSD get_exename() 2019-08-10 02:02:41 +03:00
fs_linux.c Add some missing system includes 2019-08-10 01:02:27 +03:00
fs_netbsd.c Start file system support for NetBSD 2019-08-13 15:53:37 +03:00
fs_openbsd.c Add missing stdint.h includes 2019-08-09 23:25:20 +03:00
fs_unix.c Break down dirpath.c into fs_*.c by OS 2019-08-09 23:12:19 +03:00
fs_windows.c Break down dirpath.c into fs_*.c by OS 2019-08-09 23:12:19 +03:00
hashing.c Simplify endian (byte order) detection 2019-08-09 21:30:30 +03:00
hashing.h Replace "preferred int type" with intptr_t 2019-08-09 21:04:19 +03:00
htable.c Add missing stdint.h includes 2019-08-09 23:25:20 +03:00
htable.h Remove include protections 2019-08-09 19:47:22 +03:00
htable_inc.h Replace index_t with uintptr_t 2019-08-09 21:13:48 +03:00
htableh_inc.h Replace htable_t with struct 2019-08-09 19:26:09 +03:00
ieee754.h Simplify endian (byte order) detection 2019-08-09 21:30:30 +03:00
int2str.c Add more missing stdint.h includes 2019-08-09 23:31:21 +03:00
ios.c Add some missing system includes 2019-08-10 01:02:27 +03:00
ios.h Remove include protections 2019-08-09 19:47:22 +03:00
iostream.c Add read-u8 built-in (R7RS) 2019-08-13 22:53:37 +03:00
libraries.c Start environment-stack implementation 2019-08-11 23:27:38 +03:00
libraries.h Add concept of built-in libraries and (import) statement 2019-08-11 22:32:55 +03:00
llt.h Remove include protections 2019-08-09 19:47:22 +03:00
lltinit.c Add more missing stdint.h includes 2019-08-09 23:31:21 +03:00
lookup3.h Add fallthrough comments to switch cases 2019-08-10 01:01:40 +03:00
mt19937ar.h Get rid of almost all recursive includes 2019-08-09 19:00:17 +03:00
opcodes.h Get rid of almost all recursive includes 2019-08-09 19:00:17 +03:00
operators.h Get rid of INLINE and STATIC_INLINE 2019-08-09 21:35:20 +03:00
print.h Start changing all instances of 0x to #x 2019-08-10 15:51:43 +03:00
ptrhash.c Add missing stdint.h includes 2019-08-09 23:25:20 +03:00
ptrhash.h Remove include protections 2019-08-09 19:47:22 +03:00
random.c Add more missing stdint.h includes 2019-08-09 23:31:21 +03:00
random.h Replace idiosyncratic C types with standard ones 2019-08-09 21:00:03 +03:00
read.h Use 'int' instead of 'char' for character variables 2019-08-13 17:53:17 +03:00
socket.c Unify preprocessor checks for win32 2019-08-10 00:12:33 +03:00
socket.h Remove unneeded prototypes using sockaddr_in 2019-08-10 00:16:30 +03:00
string.c Fix some more "long double" nonsense 2019-08-13 18:51:43 +03:00
stringfuncs.h Add concept of built-in libraries and (import) statement 2019-08-11 22:32:55 +03:00
table.c Fix some more "long double" nonsense 2019-08-13 18:51:43 +03:00
time_unix.c Fix portability bugs uncovered by Alpine Linux/musl libc 2019-08-13 14:19:38 +03:00
time_windows.c Break down timefuncs.c to unix and windows 2019-08-09 23:56:18 +03:00
timefuncs.h Remove time.string and time.fromstring builtins 2019-08-09 21:50:52 +03:00
types.h Replace fltype_t with struct 2019-08-09 19:33:04 +03:00
utf8.c Set _X_OPEN_SOURCE and default compiler in build script 2019-08-10 01:43:47 +03:00
utf8.h Unify preprocessor checks for win32 2019-08-10 00:12:33 +03:00
utils.h Do not include bswap* all over the place 2019-08-09 22:04:55 +03:00
wcwidth.h Get rid of almost all recursive includes 2019-08-09 19:00:17 +03:00