mbed I/F binding for mruby
Dependents: mruby_mbed_web mirb_mbed
mbed-mruby
How to use
Class
include/mrbconf.h@1:8ccd1d494a4b, 2015-04-13 (annotated)
- Committer:
- mzta
- Date:
- Mon Apr 13 05:20:15 2015 +0000
- Revision:
- 1:8ccd1d494a4b
- Parent:
- 0:158c61bb030f
- code refactoring.; - add SPI, SPISlave, I2C class to mruby-mbed (Incomplete).
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mzta | 0:158c61bb030f | 1 | /* |
mzta | 0:158c61bb030f | 2 | ** mrbconf.h - mruby core configuration |
mzta | 0:158c61bb030f | 3 | ** |
mzta | 0:158c61bb030f | 4 | ** See Copyright Notice in mruby.h |
mzta | 0:158c61bb030f | 5 | */ |
mzta | 0:158c61bb030f | 6 | |
mzta | 0:158c61bb030f | 7 | #ifndef MRUBYCONF_H |
mzta | 0:158c61bb030f | 8 | #define MRUBYCONF_H |
mzta | 0:158c61bb030f | 9 | |
mzta | 0:158c61bb030f | 10 | /* configuration options: */ |
mzta | 0:158c61bb030f | 11 | /* add -DMRB_USE_FLOAT to use float instead of double for floating point numbers */ |
mzta | 0:158c61bb030f | 12 | //#define MRB_USE_FLOAT |
mzta | 0:158c61bb030f | 13 | |
mzta | 0:158c61bb030f | 14 | /* add -DMRB_INT16 to use 16bit integer for mrb_int; conflict with MRB_INT64 */ |
mzta | 0:158c61bb030f | 15 | //#define MRB_INT16 |
mzta | 0:158c61bb030f | 16 | |
mzta | 0:158c61bb030f | 17 | /* add -DMRB_INT64 to use 64bit integer for mrb_int; conflict with MRB_INT16 */ |
mzta | 0:158c61bb030f | 18 | //#define MRB_INT64 |
mzta | 0:158c61bb030f | 19 | |
mzta | 0:158c61bb030f | 20 | /* represent mrb_value in boxed double; conflict with MRB_USE_FLOAT */ |
mzta | 0:158c61bb030f | 21 | //#define MRB_NAN_BOXING |
mzta | 0:158c61bb030f | 22 | |
mzta | 0:158c61bb030f | 23 | /* define on big endian machines; used by MRB_NAN_BOXING */ |
mzta | 0:158c61bb030f | 24 | //#define MRB_ENDIAN_BIG |
mzta | 0:158c61bb030f | 25 | |
mzta | 0:158c61bb030f | 26 | /* represent mrb_value as a word (natural unit of data for the processor) */ |
mzta | 0:158c61bb030f | 27 | //#define MRB_WORD_BOXING |
mzta | 0:158c61bb030f | 28 | |
mzta | 0:158c61bb030f | 29 | /* argv max size in mrb_funcall */ |
mzta | 0:158c61bb030f | 30 | //#define MRB_FUNCALL_ARGC_MAX 16 |
mzta | 0:158c61bb030f | 31 | |
mzta | 0:158c61bb030f | 32 | /* number of object per heap page */ |
mzta | 0:158c61bb030f | 33 | //#define MRB_HEAP_PAGE_SIZE 1024 |
mzta | 0:158c61bb030f | 34 | |
mzta | 0:158c61bb030f | 35 | /* use segmented list for IV table */ |
mzta | 0:158c61bb030f | 36 | //#define MRB_USE_IV_SEGLIST |
mzta | 0:158c61bb030f | 37 | |
mzta | 0:158c61bb030f | 38 | /* initial size for IV khash; ignored when MRB_USE_IV_SEGLIST is set */ |
mzta | 0:158c61bb030f | 39 | //#define MRB_IVHASH_INIT_SIZE 8 |
mzta | 0:158c61bb030f | 40 | |
mzta | 0:158c61bb030f | 41 | /* if _etext and _edata available, mruby can reduce memory used by symbols */ |
mzta | 0:158c61bb030f | 42 | //#define MRB_USE_ETEXT_EDATA |
mzta | 0:158c61bb030f | 43 | |
mzta | 0:158c61bb030f | 44 | /* do not use __init_array_start to determine readonly data section; |
mzta | 0:158c61bb030f | 45 | effective only when MRB_USE_ETEXT_EDATA is defined */ |
mzta | 0:158c61bb030f | 46 | //#define MRB_NO_INIT_ARRAY_START |
mzta | 0:158c61bb030f | 47 | |
mzta | 0:158c61bb030f | 48 | /* turn off generational GC by default */ |
mzta | 0:158c61bb030f | 49 | //#define MRB_GC_TURN_OFF_GENERATIONAL |
mzta | 0:158c61bb030f | 50 | |
mzta | 0:158c61bb030f | 51 | /* default size of khash table bucket */ |
mzta | 0:158c61bb030f | 52 | //#define KHASH_DEFAULT_SIZE 32 |
mzta | 0:158c61bb030f | 53 | |
mzta | 0:158c61bb030f | 54 | /* allocated memory address alignment */ |
mzta | 0:158c61bb030f | 55 | //#define POOL_ALIGNMENT 4 |
mzta | 0:158c61bb030f | 56 | |
mzta | 0:158c61bb030f | 57 | /* page size of memory pool */ |
mzta | 0:158c61bb030f | 58 | //#define POOL_PAGE_SIZE 16000 |
mzta | 0:158c61bb030f | 59 | |
mzta | 0:158c61bb030f | 60 | /* initial minimum size for string buffer */ |
mzta | 0:158c61bb030f | 61 | //#define MRB_STR_BUF_MIN_SIZE 128 |
mzta | 0:158c61bb030f | 62 | |
mzta | 0:158c61bb030f | 63 | /* arena size */ |
mzta | 0:158c61bb030f | 64 | //#define MRB_GC_ARENA_SIZE 100 |
mzta | 0:158c61bb030f | 65 | |
mzta | 0:158c61bb030f | 66 | /* fixed size GC arena */ |
mzta | 0:158c61bb030f | 67 | //#define MRB_GC_FIXED_ARENA |
mzta | 0:158c61bb030f | 68 | |
mzta | 0:158c61bb030f | 69 | /* state atexit stack size */ |
mzta | 0:158c61bb030f | 70 | //#define MRB_FIXED_STATE_ATEXIT_STACK_SIZE 5 |
mzta | 0:158c61bb030f | 71 | |
mzta | 0:158c61bb030f | 72 | /* fixed size state atexit stack */ |
mzta | 0:158c61bb030f | 73 | //#define MRB_FIXED_STATE_ATEXIT_STACK |
mzta | 0:158c61bb030f | 74 | |
mzta | 0:158c61bb030f | 75 | /* -DDISABLE_XXXX to drop following features */ |
mzta | 0:158c61bb030f | 76 | //#define DISABLE_STDIO /* use of stdio */ |
mzta | 0:158c61bb030f | 77 | |
mzta | 0:158c61bb030f | 78 | /* -DENABLE_XXXX to enable following features */ |
mzta | 0:158c61bb030f | 79 | //#define ENABLE_DEBUG /* hooks for debugger */ |
mzta | 0:158c61bb030f | 80 | |
mzta | 0:158c61bb030f | 81 | /* end of configuration */ |
mzta | 0:158c61bb030f | 82 | |
mzta | 0:158c61bb030f | 83 | /* define ENABLE_XXXX from DISABLE_XXX */ |
mzta | 0:158c61bb030f | 84 | #ifndef DISABLE_STDIO |
mzta | 0:158c61bb030f | 85 | #define ENABLE_STDIO |
mzta | 0:158c61bb030f | 86 | #endif |
mzta | 0:158c61bb030f | 87 | #ifndef ENABLE_DEBUG |
mzta | 0:158c61bb030f | 88 | #define DISABLE_DEBUG |
mzta | 0:158c61bb030f | 89 | #endif |
mzta | 0:158c61bb030f | 90 | |
mzta | 0:158c61bb030f | 91 | #ifdef ENABLE_STDIO |
mzta | 0:158c61bb030f | 92 | # include <stdio.h> |
mzta | 0:158c61bb030f | 93 | #endif |
mzta | 0:158c61bb030f | 94 | |
mzta | 0:158c61bb030f | 95 | #ifndef FALSE |
mzta | 0:158c61bb030f | 96 | # define FALSE 0 |
mzta | 0:158c61bb030f | 97 | #endif |
mzta | 0:158c61bb030f | 98 | |
mzta | 0:158c61bb030f | 99 | #ifndef TRUE |
mzta | 0:158c61bb030f | 100 | # define TRUE 1 |
mzta | 0:158c61bb030f | 101 | #endif |
mzta | 0:158c61bb030f | 102 | |
mzta | 0:158c61bb030f | 103 | #if defined(MRB_BUILD_AS_DLL) |
mzta | 0:158c61bb030f | 104 | |
mzta | 0:158c61bb030f | 105 | #if defined(MRB_CORE) || defined(MRB_LIB) |
mzta | 0:158c61bb030f | 106 | #define MRB_API __declspec(dllexport) |
mzta | 0:158c61bb030f | 107 | #else |
mzta | 0:158c61bb030f | 108 | #define MRB_API __declspec(dllimport) |
mzta | 0:158c61bb030f | 109 | #endif |
mzta | 0:158c61bb030f | 110 | #else |
mzta | 0:158c61bb030f | 111 | #define MRB_API extern |
mzta | 0:158c61bb030f | 112 | #endif |
mzta | 0:158c61bb030f | 113 | |
mzta | 0:158c61bb030f | 114 | #endif /* MRUBYCONF_H */ |
mzta | 0:158c61bb030f | 115 |