996
|
1 In this file is a list of API changes that caused API to increment:
|
|
2
|
|
3 Version 1
|
|
4 ---------
|
|
5 Initial version, external API was not versioned before this.
|
|
6
|
|
7
|
|
8 Version 2
|
|
9 ---------
|
|
10 Main breaking change was changing prototype of fungespace_load_string from
|
|
11 void fungespace_load_string(const unsigned char * restrict program);
|
|
12 to
|
|
13 void fungespace_load_string(const unsigned char * restrict program,
|
|
14 size_t length);
|
|
15
|
|
16 The parameter "length" should be like taking a strlen() on the program parameter
|
|
17 (if program contains no embedded null-bytes). However as long as length is
|
|
18 correct the code can handle embedded null bytes.
|
|
19
|
|
20 Version 3
|
|
21 ---------
|
|
22 Added CFUN_IS_IFFI to disable most of main.c.
|
|
23 If you are not building with cmake, #define these as string constants:
|
|
24 * CFUN_TARGET_PLATFORM
|
|
25 Platform such as returned by uname -m (on target).
|
|
26 * CFUN_TARGET_OS
|
|
27 Platform as returned by uname -s (on target).
|
|
28 * CFUN_COMPILER
|
|
29 Compiler (full path).
|
|
30 * CFUN_BUILD_TYPE
|
|
31 Build type. For standard builds with cmake possible alternatives are:
|
|
32 None, Debug, Release, RelWithDebInfo and MinSizeRel.
|
|
33 * CFUN_COMPILED_ON
|
|
34 A string constant like (shell syntax):
|
|
35 "$(uname -s) $(uname -r) ($(uname -m))".
|
|
36 This one represents the build system, not the target system (in case of cross
|
|
37 compilation).
|
|
38 * CFUN_USER_CFLAGS
|
|
39 User defined CFLAGS (ones added by cfunge build system internally are not
|
|
40 included).
|
|
41 * CFUN_USER_LDFLAGS
|
|
42 User defined LDFLAGS (ones added by cfunge build system internally are not
|
|
43 included).
|
|
44
|
|
45 Note that defining CFUN_IS_IFFI will currently disable the place where these are
|
|
46 used. This may change without prior notice.
|