tecscde 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +12 -0
  3. data/.rubocop.yml +125 -0
  4. data/.rubocop_todo.yml +188 -0
  5. data/CHANGELOG.md +3 -0
  6. data/Gemfile +6 -0
  7. data/LICENSE +46 -0
  8. data/LICENSE.ja +32 -0
  9. data/README.ja.md +200 -0
  10. data/README.md +35 -0
  11. data/Rakefile +27 -0
  12. data/bin/tecscde +64 -0
  13. data/glade/tecscde-cell-property.glade +205 -0
  14. data/glade/tecscde-celltype-property.glade +172 -0
  15. data/glade/tecscde-celltype.glade +414 -0
  16. data/glade/tecscde-export.glade +161 -0
  17. data/glade/test-cell-plugin.rb +51 -0
  18. data/glade/test-cell-property.rb +35 -0
  19. data/glade/test-export.rb +35 -0
  20. data/glade/test-palette.rb +26 -0
  21. data/lib/tcflow.rb +148 -0
  22. data/lib/tecscde.rb +65 -0
  23. data/lib/tecscde/NewCell.png +0 -0
  24. data/lib/tecscde/SelectArrow.png +0 -0
  25. data/lib/tecscde/attr_tree_view.rb +253 -0
  26. data/lib/tecscde/cell_plugin_dialog.glade +294 -0
  27. data/lib/tecscde/cell_plugin_dialog.rb +89 -0
  28. data/lib/tecscde/celltype_tree_view.rb +105 -0
  29. data/lib/tecscde/change_set_control.rb +35 -0
  30. data/lib/tecscde/change_set_control/change_set.rb +32 -0
  31. data/lib/tecscde/change_set_control/change_set_manager.rb +62 -0
  32. data/lib/tecscde/command.rb +35 -0
  33. data/lib/tecscde/control.rb +491 -0
  34. data/lib/tecscde/highlighted_objects.rb +180 -0
  35. data/lib/tecscde/logger.rb +74 -0
  36. data/lib/tecscde/main_view_and_model.rb +80 -0
  37. data/lib/tecscde/palette.glade +553 -0
  38. data/lib/tecscde/palette.rb +174 -0
  39. data/lib/tecscde/preferences.glade +117 -0
  40. data/lib/tecscde/preferences.rb +44 -0
  41. data/lib/tecscde/tecs_model.rb +1137 -0
  42. data/lib/tecscde/tecs_model/hbar.rb +68 -0
  43. data/lib/tecscde/tecs_model/tm_c_port.rb +122 -0
  44. data/lib/tecscde/tecs_model/tm_c_port_array.rb +98 -0
  45. data/lib/tecscde/tecs_model/tm_cell.rb +496 -0
  46. data/lib/tecscde/tecs_model/tm_e_port.rb +126 -0
  47. data/lib/tecscde/tecs_model/tm_e_port_array.rb +78 -0
  48. data/lib/tecscde/tecs_model/tm_join.rb +293 -0
  49. data/lib/tecscde/tecs_model/tm_join_bar.rb +146 -0
  50. data/lib/tecscde/tecs_model/tm_port.rb +238 -0
  51. data/lib/tecscde/tecs_model/tm_port_array.rb +246 -0
  52. data/lib/tecscde/tecs_model/tm_region.rb +107 -0
  53. data/lib/tecscde/tecs_model/tm_uneditable.rb +68 -0
  54. data/lib/tecscde/tecs_model/vbar.rb +68 -0
  55. data/lib/tecscde/templates/_cell_info.cde.erb +15 -0
  56. data/lib/tecscde/templates/_join_info.cde.erb +28 -0
  57. data/lib/tecscde/templates/main.cde.erb +49 -0
  58. data/lib/tecscde/tm_object.rb +91 -0
  59. data/lib/tecscde/version.rb +4 -0
  60. data/lib/tecscde/view.rb +58 -0
  61. data/lib/tecscde/view/cairo_matrix.rb +90 -0
  62. data/lib/tecscde/view/canvas.rb +59 -0
  63. data/lib/tecscde/view/constants.rb +114 -0
  64. data/lib/tecscde/view/main_view.rb +1245 -0
  65. data/lib/tecsflow.rb +475 -0
  66. data/lib/tecsflow/C_parser.tab.rb +2471 -0
  67. data/lib/tecsflow/C_parser.y.rb +1087 -0
  68. data/lib/tecsflow/classes.rb +421 -0
  69. data/lib/tecsgen.rb +581 -0
  70. data/lib/tecsgen/core/C_parser.tab.rb +2477 -0
  71. data/lib/tecsgen/core/C_parser.y +1032 -0
  72. data/lib/tecsgen/core/bnf-deb.tab.rb +5193 -0
  73. data/lib/tecsgen/core/bnf.tab.rb +5193 -0
  74. data/lib/tecsgen/core/bnf.y +2211 -0
  75. data/lib/tecsgen/core/componentobj.rb +7901 -0
  76. data/lib/tecsgen/core/ctypes.rb +226 -0
  77. data/lib/tecsgen/core/expression.rb +1031 -0
  78. data/lib/tecsgen/core/gen_xml.rb +374 -0
  79. data/lib/tecsgen/core/generate.rb +5206 -0
  80. data/lib/tecsgen/core/location.rb +116 -0
  81. data/lib/tecsgen/core/messages.rb +101 -0
  82. data/lib/tecsgen/core/optimize.rb +456 -0
  83. data/lib/tecsgen/core/plugin.rb +332 -0
  84. data/lib/tecsgen/core/pluginModule.rb +165 -0
  85. data/lib/tecsgen/core/syntaxobj.rb +1234 -0
  86. data/lib/tecsgen/core/tecs_lang.rb +306 -0
  87. data/lib/tecsgen/core/tecsgen.rb +453 -0
  88. data/lib/tecsgen/core/tecsinfo.rb +860 -0
  89. data/lib/tecsgen/core/tool_info.rb +258 -0
  90. data/lib/tecsgen/core/types.rb +1632 -0
  91. data/lib/tecsgen/core/unjoin_plugin.rb +218 -0
  92. data/lib/tecsgen/core/value.rb +650 -0
  93. data/lib/tecsgen/messages/messages_console_en_US.rb +1171 -0
  94. data/lib/tecsgen/messages/messages_console_ja_JP.rb +1171 -0
  95. data/lib/tecsgen/messages/messages_file_en_US.rb +334 -0
  96. data/lib/tecsgen/messages/messages_file_ja_JP.rb +163 -0
  97. data/lib/tecsgen/plugin/ATK1AlarmPlugin.rb +196 -0
  98. data/lib/tecsgen/plugin/ATK1DelayTaskPlugin.rb +106 -0
  99. data/lib/tecsgen/plugin/ATK1EventPlugin.rb +147 -0
  100. data/lib/tecsgen/plugin/ATK1ISRPlugin.rb +174 -0
  101. data/lib/tecsgen/plugin/ATK1KernelPlugin.rb +287 -0
  102. data/lib/tecsgen/plugin/ATK1ResourcePlugin.rb +124 -0
  103. data/lib/tecsgen/plugin/ATK1TaskPlugin.rb +220 -0
  104. data/lib/tecsgen/plugin/C2TECSBridgePlugin.rb +210 -0
  105. data/lib/tecsgen/plugin/CellPlugin.rb +61 -0
  106. data/lib/tecsgen/plugin/CelltypePlugin.rb +72 -0
  107. data/lib/tecsgen/plugin/CompositePlugin.rb +66 -0
  108. data/lib/tecsgen/plugin/DomainPlugin.rb +89 -0
  109. data/lib/tecsgen/plugin/HRP2AlarmHandlerPlugin.rb +76 -0
  110. data/lib/tecsgen/plugin/HRP2Cache.rb +1 -0
  111. data/lib/tecsgen/plugin/HRP2CyclicHandlerPlugin.rb +75 -0
  112. data/lib/tecsgen/plugin/HRP2DataqueuePlugin.rb +68 -0
  113. data/lib/tecsgen/plugin/HRP2EventflagPlugin.rb +68 -0
  114. data/lib/tecsgen/plugin/HRP2FixedSizeMemoryPoolPlugin.rb +68 -0
  115. data/lib/tecsgen/plugin/HRP2HandlerPlugin.rb +117 -0
  116. data/lib/tecsgen/plugin/HRP2KernelObjectPlugin.rb +372 -0
  117. data/lib/tecsgen/plugin/HRP2ObjectPlugin.rb +94 -0
  118. data/lib/tecsgen/plugin/HRP2Plugin.rb +140 -0
  119. data/lib/tecsgen/plugin/HRP2PostHook.rb +111 -0
  120. data/lib/tecsgen/plugin/HRP2PriorityDataqueuePlugin.rb +66 -0
  121. data/lib/tecsgen/plugin/HRP2RPCPlugin.rb +319 -0
  122. data/lib/tecsgen/plugin/HRP2SVCPlugin.rb +473 -0
  123. data/lib/tecsgen/plugin/HRP2SemaphorePlugin.rb +67 -0
  124. data/lib/tecsgen/plugin/HRP2TaskPlugin.rb +200 -0
  125. data/lib/tecsgen/plugin/HRPHandlerPlugin.rb +125 -0
  126. data/lib/tecsgen/plugin/HRPKernelObjectManager.rb +72 -0
  127. data/lib/tecsgen/plugin/HRPKernelObjectPlugin.rb +333 -0
  128. data/lib/tecsgen/plugin/HRPObjectPlugin.rb +93 -0
  129. data/lib/tecsgen/plugin/HRPPlugin.rb +356 -0
  130. data/lib/tecsgen/plugin/HRPRPCPlugin.rb +407 -0
  131. data/lib/tecsgen/plugin/HRPSVCPlugin.rb +859 -0
  132. data/lib/tecsgen/plugin/HRPTaskPlugin.rb +107 -0
  133. data/lib/tecsgen/plugin/Mruby2CBridgePlugin.rb +86 -0
  134. data/lib/tecsgen/plugin/MrubyBridgeCellPlugin.rb +264 -0
  135. data/lib/tecsgen/plugin/MrubyBridgeCelltypePlugin.rb +293 -0
  136. data/lib/tecsgen/plugin/MrubyBridgeCompositePlugin.rb +49 -0
  137. data/lib/tecsgen/plugin/MrubyBridgePlugin.rb +67 -0
  138. data/lib/tecsgen/plugin/MrubyBridgeSignaturePlugin.rb +1307 -0
  139. data/lib/tecsgen/plugin/MrubyInfoBridgePlugin.rb +14 -0
  140. data/lib/tecsgen/plugin/MrubyInfoBridgeSignaturePlugin.rb +994 -0
  141. data/lib/tecsgen/plugin/MultiPlugin.rb +57 -0
  142. data/lib/tecsgen/plugin/NotifierPlugin.rb +1217 -0
  143. data/lib/tecsgen/plugin/OpaqueMarshalerPlugin.rb +81 -0
  144. data/lib/tecsgen/plugin/OpaqueRPCPlugin.rb +323 -0
  145. data/lib/tecsgen/plugin/RPCPlugin.rb +266 -0
  146. data/lib/tecsgen/plugin/RepeatCellPlugin.rb +166 -0
  147. data/lib/tecsgen/plugin/RepeatJoinPlugin.rb +130 -0
  148. data/lib/tecsgen/plugin/SharedOpaqueRPCPlugin.rb +357 -0
  149. data/lib/tecsgen/plugin/SharedRPCPlugin.rb +329 -0
  150. data/lib/tecsgen/plugin/SignaturePlugin.rb +77 -0
  151. data/lib/tecsgen/plugin/TECS2CBridgePlugin.rb +178 -0
  152. data/lib/tecsgen/plugin/TECSInfoPlugin.rb +280 -0
  153. data/lib/tecsgen/plugin/ThroughPlugin.rb +333 -0
  154. data/lib/tecsgen/plugin/TracePlugin.rb +484 -0
  155. data/lib/tecsgen/plugin/lib/GenHRP2Marshaler.rb +761 -0
  156. data/lib/tecsgen/plugin/lib/GenOpaqueMarshaler.rb +1107 -0
  157. data/lib/tecsgen/plugin/lib/GenParamCopy.rb +365 -0
  158. data/lib/tecsgen/plugin/lib/GenTransparentMarshaler.rb +683 -0
  159. data/lib/tecsgen/plugin/lib/MrubyBridgeCelltypePluginModule.rb +283 -0
  160. data/lib/tecsgen/plugin/lib/MrubyBridgeSignaturePluginModule.rb +277 -0
  161. data/lib/tecsgen/version.rb +6 -0
  162. data/samples/FigureSamples/active/active.cde +104 -0
  163. data/samples/FigureSamples/active/active.cdl +20 -0
  164. data/samples/FigureSamples/active/active.pdf +0 -0
  165. data/samples/FigureSamples/active/active.png +0 -0
  166. data/samples/FigureSamples/active/gen/tmp_C_src.c +36 -0
  167. data/samples/FigureSamples/active/gen/tmp_cygwin_tecs.h +1908 -0
  168. data/samples/FigureSamples/active/gen/tmp_plugin_post_code.cdl +0 -0
  169. data/samples/FigureSamples/allocator/allocator-internal.png +0 -0
  170. data/samples/FigureSamples/allocator/allocator.cde +171 -0
  171. data/samples/FigureSamples/allocator/allocator.cdl +58 -0
  172. data/samples/FigureSamples/allocator/allocator.png +0 -0
  173. data/samples/FigureSamples/basic/Makefile +87 -0
  174. data/samples/FigureSamples/basic/SimpleSample-trace.cdl +50 -0
  175. data/samples/FigureSamples/basic/SimpleSample.cde +91 -0
  176. data/samples/FigureSamples/basic/SimpleSample.cdl +47 -0
  177. data/samples/FigureSamples/basic/basic.cde +93 -0
  178. data/samples/FigureSamples/basic/basic.cdl +46 -0
  179. data/samples/FigureSamples/basic/basic.png +0 -0
  180. data/samples/FigureSamples/callback/callback.cde +130 -0
  181. data/samples/FigureSamples/callback/callback.cdl +29 -0
  182. data/samples/FigureSamples/callback/callback.png +0 -0
  183. data/samples/FigureSamples/carray/carray.cde +144 -0
  184. data/samples/FigureSamples/carray/carray.cdl +38 -0
  185. data/samples/FigureSamples/carray/carray.png +0 -0
  186. data/samples/FigureSamples/cearray/cearray.cde +314 -0
  187. data/samples/FigureSamples/cearray/cearray.cdl +60 -0
  188. data/samples/FigureSamples/cearray/cearray.png +0 -0
  189. data/samples/FigureSamples/composite/composite-internal.png +0 -0
  190. data/samples/FigureSamples/composite/composite.cde +216 -0
  191. data/samples/FigureSamples/composite/composite.cdl +95 -0
  192. data/samples/FigureSamples/composite/composite.png +0 -0
  193. data/samples/FigureSamples/earray/earray.cde +142 -0
  194. data/samples/FigureSamples/earray/earray.cdl +38 -0
  195. data/samples/FigureSamples/earray/earray.png +0 -0
  196. data/samples/FigureSamples/join/Makefile +87 -0
  197. data/samples/FigureSamples/join/join.cde +132 -0
  198. data/samples/FigureSamples/join/join.cdl +40 -0
  199. data/samples/FigureSamples/join/join.png +0 -0
  200. data/samples/FigureSamples/relay/Makefile +99 -0
  201. data/samples/FigureSamples/relay/relay-internal.png +0 -0
  202. data/samples/FigureSamples/relay/relay.cde +284 -0
  203. data/samples/FigureSamples/relay/relay.cdl +52 -0
  204. data/samples/FigureSamples/relay/relay.png +0 -0
  205. data/samples/FigureSamples/rpc/Makefile +123 -0
  206. data/samples/FigureSamples/rpc/rpc-expand.png +0 -0
  207. data/samples/FigureSamples/rpc/rpc.cde +245 -0
  208. data/samples/FigureSamples/rpc/rpc.png +0 -0
  209. data/samples/FigureSamples/rpc/rpc_sample.cdl +53 -0
  210. data/samples/SimpleSample/Makefile +25 -0
  211. data/samples/SimpleSample/SimpleSample/Makefile +86 -0
  212. data/samples/SimpleSample/SimpleSample/Makefile-trace +91 -0
  213. data/samples/SimpleSample/SimpleSample/README.txt +106 -0
  214. data/samples/SimpleSample/SimpleSample/SimpleSample-trace.cdl +50 -0
  215. data/samples/SimpleSample/SimpleSample/SimpleSample.cdl +45 -0
  216. data/samples/SimpleSample/SimpleSample/src/tSample.c +77 -0
  217. data/samples/SimpleSample/SimpleSample/src/tSimple.c +48 -0
  218. data/samples/SimpleSample/SimpleSample/src/tecs-types.h +27 -0
  219. data/samples/SimpleSample/SimpleSampleOpaqueRPC/Makefile +51 -0
  220. data/samples/SimpleSample/SimpleSampleOpaqueRPC/Makefile-trace +91 -0
  221. data/samples/SimpleSample/SimpleSampleOpaqueRPC/README.txt +106 -0
  222. data/samples/SimpleSample/SimpleSampleOpaqueRPC/SimpleSample-trace.cdl +80 -0
  223. data/samples/SimpleSample/SimpleSampleOpaqueRPC/SimpleSample.cdl +77 -0
  224. data/samples/SimpleSample/SimpleSampleOpaqueRPC/rSample/Makefile +112 -0
  225. data/samples/SimpleSample/SimpleSampleOpaqueRPC/rSimple/Makefile +109 -0
  226. data/samples/SimpleSample/SimpleSampleOpaqueRPC/src/tSample.c +80 -0
  227. data/samples/SimpleSample/SimpleSampleOpaqueRPC/src/tSimple.c +47 -0
  228. data/samples/SimpleSample/SimpleSampleOpaqueRPC/src/tTaskMain.c +66 -0
  229. data/samples/SimpleSample/SimpleSampleOpaqueRPC/src/tecs-types.h +27 -0
  230. data/samples/SimpleSample/SimpleSampleTransparentRPC/Makefile +125 -0
  231. data/samples/SimpleSample/SimpleSampleTransparentRPC/Makefile-trace +130 -0
  232. data/samples/SimpleSample/SimpleSampleTransparentRPC/SimpleSample-trace.cdl +54 -0
  233. data/samples/SimpleSample/SimpleSampleTransparentRPC/SimpleSample.cdl +53 -0
  234. data/samples/SimpleSample/SimpleSampleTransparentRPC/src/tSample.c +80 -0
  235. data/samples/SimpleSample/SimpleSampleTransparentRPC/src/tSimple.c +54 -0
  236. data/tecscde.gemspec +41 -0
  237. metadata +353 -0
@@ -0,0 +1,112 @@
1
+ # ¤³¤Î¥Õ¥¡¥¤¥ë¤Ï tecsgen ¤Ë¤è¤ê¼«Æ°À¸À®¤µ¤ì¤Þ¤·¤¿
2
+ # Makefile.temp ¤Ï gen ¤Î°ì¤Ä¾å¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë°Ü¤·¤Æ»ÈÍѤ·¤Þ¤¹
3
+ # % mv Makefile.temp Makefile
4
+ #
5
+ # clean ¤Î¥Ç¥Õ¥©¥ë¥Èưºî¤Ï $(GEN_DIR)/Makefile.* ¤òºï½ü¤·¤Þ¤¹
6
+ #
7
+ # ¤³¤Î¥Õ¥¡¥¤¥ë¤Ï GNU make ¤Ç gcc ¤òÍѤ¤ POSIX ´Ä¶­¤Çưºî¤¹¤ë¥â¥¸¥å¡¼¥ë¤ò¥Ó¥ë¥É¤¹¤ë¤Î¤ËŬÀڤʤ褦¤ËÀ¸À®¤µ¤ì¤Æ¤¤¤Þ¤¹
8
+ # vpath, CFLAGS, OTHER_OBJS ¤Ê¤É¤òÄ´À°¤¹¤ëɬÍפ¬¤¢¤ë¤«¤â¤·¤ì¤Þ¤»¤ó
9
+ # ¾¤Î´Ä¶­¤ä¥¿¡¼¥²¥Ã¥È¤Î¾ì¹ç¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤ò¸µ¤ËÊѹ¹¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹
10
+
11
+ # ÊÑ¿ô #_MVAR_#
12
+ # fixed variable (unchangeable by config or plugin)
13
+ TARGET_BASE = SimpleSample-rSample
14
+ BASE_DIR = ..
15
+ GEN_DIR = $(BASE_DIR)/gen/rSample
16
+ INCLUDES = -I $(BASE_DIR)/. -I $(BASE_DIR)/./. -I $(TECSPATH) -I $(BASE_DIR)/../../cygwin -I $(TECSPATH)/rpc -I $(BASE_DIR)/./gen -I $(BASE_DIR)/src -I $(TECSPATH)/mruby -I $(TECSPATH)/mruby-bak2 -I $(TECSPATH)/mruby.org -I $(TECSPATH)/posix -I $(GEN_DIR)
17
+ DEFINES =
18
+
19
+ # end of fixed variable (unchangeable by config or plugin)
20
+ #default C Compiler
21
+ CC = gcc
22
+
23
+ #default C Compiler options
24
+ CFLAGS = $(INCLUDES) $(DEFINES) -D "Inline=static inline"
25
+
26
+ #default Liknker
27
+ LD = gcc
28
+
29
+ #default Liknker Options
30
+ LDFLAGS = -lpthread
31
+
32
+ #default source directory
33
+ SRC_DIR = $(BASE_DIR)/src
34
+
35
+ #default target name
36
+ TARGET = $(TARGET_BASE).exe
37
+
38
+ #default TECS generator
39
+ TECSGEN = tecsgen
40
+
41
+ #Time Stamp
42
+ TIMESTAMP = $(GEN_DIR)/tecsgen.timestamp
43
+
44
+ #default relocatable object (.o) directory
45
+ _TECS_OBJ_DIR = $(GEN_DIR)/
46
+
47
+
48
+
49
+ # Pre-tecsgen target
50
+ PRE_TECSGEN_TARGET =
51
+
52
+ # Post-tecsgen target
53
+ POST_TECSGEN_TARGET =
54
+
55
+ # vpath for C sources and headers
56
+ vpath %.c $(SRC_DIR) $(GEN_DIR) .././. $(TECSPATH) ../../../cygwin $(TECSPATH)/rpc .././gen ../src $(TECSPATH)/mruby $(TECSPATH)/mruby-bak2 $(TECSPATH)/mruby.org $(TECSPATH)/posix
57
+ vpath %.h $(SRC_DIR) $(GEN_DIR) .././. $(TECSPATH) ../../../cygwin $(TECSPATH)/rpc .././gen ../src $(TECSPATH)/mruby $(TECSPATH)/mruby-bak2 $(TECSPATH)/mruby.org $(TECSPATH)/posix
58
+
59
+ # Other objects (out of tecsgen)
60
+ OTHER_OBJS = # Add objects out of tecs care.
61
+ # OTHER_OBJS = $(_TECS_OBJ_DIR)vasyslog.o
62
+ # ¥ë¡¼¥ë #_MRUL_#
63
+ allall: tecs
64
+ make all # in order to include generated Makefile.tecsgen & Makefile.depend
65
+
66
+ all : $(TARGET)
67
+
68
+
69
+ # depend ¤ò include #_MDEP_#
70
+ -include $(GEN_DIR)/Makefile.tecsgen
71
+ -include $(GEN_DIR)/Makefile.depend
72
+
73
+ $(TARGET) : $(CELLTYPE_COBJS) $(TECSGEN_COBJS) $(PLUGIN_COBJS) $(OTHER_OBJS)
74
+ $(LD) -o $(TARGET) $(TECSGEN_COBJS) $(CELLTYPE_COBJS) $(PLUGIN_COBJS) $(OTHER_OBJS) $(LDFLAGS)
75
+
76
+ clean :
77
+ rm -f $(CELLTYPE_COBJS) $(TECSGEN_COBJS) $(PLUGIN_COBJS) $(OTHER_OBJS) $(TARGET)
78
+
79
+ tecs:
80
+ @echo "run 'make tecs' in root region"
81
+
82
+ # generic target for objs
83
+ $(_TECS_OBJ_DIR)%.o : %.c
84
+ $(CC) -c $(CFLAGS) -o $@ $<
85
+
86
+ $(_TECS_OBJ_DIR)tTask.o : tTask.c
87
+ $(CC) -c $(CFLAGS) -o $@ $<
88
+
89
+ $(_TECS_OBJ_DIR)tKernel.o : tKernel.c
90
+ $(CC) -c $(CFLAGS) -o $@ $<
91
+
92
+ $(_TECS_OBJ_DIR)tSysLog.o : tSysLog.c
93
+ $(CC) -c $(CFLAGS) -o $@ $<
94
+
95
+ $(_TECS_OBJ_DIR)tNBOTDR.o : tNBOTDR.c
96
+ $(CC) -c $(CFLAGS) -o $@ $<
97
+
98
+ $(_TECS_OBJ_DIR)tRPCDedicatedTaskMainWithOpener.o : tRPCDedicatedTaskMainWithOpener.c
99
+ $(CC) -c $(CFLAGS) -o $@ $<
100
+
101
+ $(_TECS_OBJ_DIR)tPPAllocator.o : tPPAllocator.c
102
+ $(CC) -c $(CFLAGS) -o $@ $<
103
+
104
+ $(_TECS_OBJ_DIR)tSocketServer.o : tSocketServer.c
105
+ $(CC) -c $(CFLAGS) -o $@ $<
106
+
107
+ $(_TECS_OBJ_DIR)tSample.o : tSample.c
108
+ $(CC) -c $(CFLAGS) -o $@ $<
109
+
110
+ $(_TECS_OBJ_DIR)tOpaqueUnmarshaler_sSample.o : tOpaqueUnmarshaler_sSample.c
111
+ $(CC) -c $(CFLAGS) -o $@ $<
112
+
@@ -0,0 +1,109 @@
1
+ # ¤³¤Î¥Õ¥¡¥¤¥ë¤Ï tecsgen ¤Ë¤è¤ê¼«Æ°À¸À®¤µ¤ì¤Þ¤·¤¿
2
+ # Makefile.temp ¤Ï gen ¤Î°ì¤Ä¾å¤Î¥Ç¥£¥ì¥¯¥È¥ê¤Ë°Ü¤·¤Æ»ÈÍѤ·¤Þ¤¹
3
+ # % mv Makefile.temp Makefile
4
+ #
5
+ # clean ¤Î¥Ç¥Õ¥©¥ë¥Èưºî¤Ï $(GEN_DIR)/Makefile.* ¤òºï½ü¤·¤Þ¤¹
6
+ #
7
+ # ¤³¤Î¥Õ¥¡¥¤¥ë¤Ï GNU make ¤Ç gcc ¤òÍѤ¤ POSIX ´Ä¶­¤Çưºî¤¹¤ë¥â¥¸¥å¡¼¥ë¤ò¥Ó¥ë¥É¤¹¤ë¤Î¤ËŬÀڤʤ褦¤ËÀ¸À®¤µ¤ì¤Æ¤¤¤Þ¤¹
8
+ # vpath, CFLAGS, OTHER_OBJS ¤Ê¤É¤òÄ´À°¤¹¤ëɬÍפ¬¤¢¤ë¤«¤â¤·¤ì¤Þ¤»¤ó
9
+ # ¾¤Î´Ä¶­¤ä¥¿¡¼¥²¥Ã¥È¤Î¾ì¹ç¡¢¤³¤Î¥Õ¥¡¥¤¥ë¤ò¸µ¤ËÊѹ¹¤¹¤ëɬÍפ¬¤¢¤ê¤Þ¤¹
10
+
11
+ # ÊÑ¿ô #_MVAR_#
12
+ # fixed variable (unchangeable by config or plugin)
13
+ TARGET_BASE = SimpleSample-rSimple
14
+ BASE_DIR = ..
15
+ GEN_DIR = $(BASE_DIR)/gen/rSimple
16
+ INCLUDES = -I $(BASE_DIR)/. -I $(BASE_DIR)/./. -I $(TECSPATH) -I $(BASE_DIR)/../../cygwin -I $(TECSPATH)/rpc -I $(BASE_DIR)/./gen -I $(BASE_DIR)/src -I $(TECSPATH)/mruby -I $(TECSPATH)/mruby-bak2 -I $(TECSPATH)/mruby.org -I $(TECSPATH)/posix -I $(GEN_DIR)
17
+ DEFINES =
18
+
19
+ # end of fixed variable (unchangeable by config or plugin)
20
+ #default C Compiler
21
+ CC = gcc
22
+
23
+ #default C Compiler options
24
+ CFLAGS = $(INCLUDES) $(DEFINES) -D "Inline=static inline"
25
+
26
+ #default Liknker
27
+ LD = gcc
28
+
29
+ #default Liknker Options
30
+ LDFLAGS = -lpthread
31
+
32
+ #default source directory
33
+ SRC_DIR = $(BASE_DIR)/src
34
+
35
+ #default target name
36
+ TARGET = $(TARGET_BASE).exe
37
+
38
+ #default TECS generator
39
+ TECSGEN = tecsgen
40
+
41
+ #Time Stamp
42
+ TIMESTAMP = $(GEN_DIR)/tecsgen.timestamp
43
+
44
+ #default relocatable object (.o) directory
45
+ _TECS_OBJ_DIR = $(GEN_DIR)/
46
+
47
+
48
+
49
+ # Pre-tecsgen target
50
+ PRE_TECSGEN_TARGET =
51
+
52
+ # Post-tecsgen target
53
+ POST_TECSGEN_TARGET =
54
+
55
+ # vpath for C sources and headers
56
+ vpath %.c $(SRC_DIR) $(GEN_DIR) .././. $(TECSPATH) ../../../cygwin $(TECSPATH)/rpc .././gen ../src $(TECSPATH)/mruby $(TECSPATH)/mruby-bak2 $(TECSPATH)/mruby.org $(TECSPATH)/posix
57
+ vpath %.h $(SRC_DIR) $(GEN_DIR) .././. $(TECSPATH) ../../../cygwin $(TECSPATH)/rpc .././gen ../src $(TECSPATH)/mruby $(TECSPATH)/mruby-bak2 $(TECSPATH)/mruby.org $(TECSPATH)/posix
58
+
59
+ # Other objects (out of tecsgen)
60
+ OTHER_OBJS = # Add objects out of tecs care.
61
+ # OTHER_OBJS = $(_TECS_OBJ_DIR)vasyslog.o
62
+ # ¥ë¡¼¥ë #_MRUL_#
63
+ allall: tecs
64
+ make all # in order to include generated Makefile.tecsgen & Makefile.depend
65
+
66
+ all : $(TARGET)
67
+
68
+
69
+ # depend ¤ò include #_MDEP_#
70
+ -include $(GEN_DIR)/Makefile.tecsgen
71
+ -include $(GEN_DIR)/Makefile.depend
72
+
73
+ $(TARGET) : $(CELLTYPE_COBJS) $(TECSGEN_COBJS) $(PLUGIN_COBJS) $(OTHER_OBJS)
74
+ $(LD) -o $(TARGET) $(TECSGEN_COBJS) $(CELLTYPE_COBJS) $(PLUGIN_COBJS) $(OTHER_OBJS) $(LDFLAGS)
75
+
76
+ clean :
77
+ rm -f $(CELLTYPE_COBJS) $(TECSGEN_COBJS) $(PLUGIN_COBJS) $(OTHER_OBJS) $(TARGET)
78
+
79
+ tecs:
80
+ @echo "run 'make tecs' in root region"
81
+
82
+ # generic target for objs
83
+ $(_TECS_OBJ_DIR)%.o : %.c
84
+ $(CC) -c $(CFLAGS) -o $@ $<
85
+
86
+ $(_TECS_OBJ_DIR)tTask.o : tTask.c
87
+ $(CC) -c $(CFLAGS) -o $@ $<
88
+
89
+ $(_TECS_OBJ_DIR)tSemaphore.o : tSemaphore.c
90
+ $(CC) -c $(CFLAGS) -o $@ $<
91
+
92
+ $(_TECS_OBJ_DIR)tSysLog.o : tSysLog.c
93
+ $(CC) -c $(CFLAGS) -o $@ $<
94
+
95
+ $(_TECS_OBJ_DIR)tNBOTDR.o : tNBOTDR.c
96
+ $(CC) -c $(CFLAGS) -o $@ $<
97
+
98
+ $(_TECS_OBJ_DIR)tSocketClient.o : tSocketClient.c
99
+ $(CC) -c $(CFLAGS) -o $@ $<
100
+
101
+ $(_TECS_OBJ_DIR)tSimple.o : tSimple.c
102
+ $(CC) -c $(CFLAGS) -o $@ $<
103
+
104
+ $(_TECS_OBJ_DIR)tTaskMain.o : tTaskMain.c
105
+ $(CC) -c $(CFLAGS) -o $@ $<
106
+
107
+ $(_TECS_OBJ_DIR)tOpaqueMarshaler_sSample.o : tOpaqueMarshaler_sSample.c
108
+ $(CC) -c $(CFLAGS) -o $@ $<
109
+
@@ -0,0 +1,80 @@
1
+ /* #[<PREAMBLE>]#
2
+ * #[<...>]# から #[</...>]# で囲まれたコメントは編集しないでください
3
+ * tecsmerge によるマージに使用されます
4
+ *
5
+ * このファイルは tecsgen によりテンプレートとして自動生成されました
6
+ * このファイルを編集して使用することが意図されていますが
7
+ * tecsgen の再実行により上書きされてしまうため、通常
8
+ * gen/tSimpleServer_template.c => src/tSimpleServer.c
9
+ * のように名前, フォルダを変更してから修正します
10
+ *
11
+ * #[</PREAMBLE>]# */
12
+
13
+ #include <stdio.h>
14
+ #include <string.h>
15
+ #include "tSample_tecsgen.h"
16
+
17
+ #ifndef E_OK
18
+ #define E_OK 0 /* 正常終了 */
19
+ #define E_ID (-18) /* 不正ID番号 */
20
+ #endif
21
+
22
+
23
+ /* 受け口関数 #_TEPF_# */
24
+ /* #[<ENTRY_PORT>]# eEnt
25
+ * entry port: eEnt
26
+ * signature: sSample
27
+ * context: task
28
+ * params:
29
+ * #[</ENTRY_PORT>]# */
30
+
31
+ /* #[<ENTRY_FUNC>]# eEnt_sayHello
32
+ * name: eEnt_sayHello
33
+ * global_name: tSample_eEnt_sayHello
34
+ * oneway:
35
+ * #[/ENTRY_FUNC>]# */
36
+ ER
37
+ eEnt_sayHello(CELLIDX idx, int32_t times)
38
+ {
39
+ ER ercd = E_OK;
40
+ CELLCB *p_cellcb;
41
+ if (VALID_IDX(idx)) {
42
+ p_cellcb = GET_CELLCB(idx);
43
+ }
44
+ else {
45
+ return(E_ID);
46
+ }
47
+
48
+ /* ここに処理本体を記述します */
49
+ printf( "Sample: " );
50
+ while( times-- > 0 )
51
+ printf( "hello " );
52
+ printf( "\n" );
53
+
54
+ return(ercd);
55
+ }
56
+
57
+ /* #[<ENTRY_FUNC>]# eEnt_howAreYou
58
+ * name: eEnt_howAreYou
59
+ * global_name: tSample_eEnt_howAreYou
60
+ * oneway:
61
+ * #[/ENTRY_FUNC>]# */
62
+ ER
63
+ eEnt_howAreYou(CELLIDX idx, char_t* buf, int32_t len)
64
+ {
65
+ ER ercd = E_OK;
66
+ CELLCB *p_cellcb;
67
+ if (VALID_IDX(idx)) {
68
+ p_cellcb = GET_CELLCB(idx);
69
+ }
70
+ else {
71
+ return(E_ID);
72
+ }
73
+
74
+ /* ここに処理本体を記述します */
75
+ strncpy( buf, "Sample: I'm fine!", len );
76
+
77
+ return(ercd);
78
+ }
79
+
80
+
@@ -0,0 +1,47 @@
1
+ /* #[<PREAMBLE>]#
2
+ * #[<...>]# から #[</...>]# で囲まれたコメントは編集しないでください
3
+ * tecsmerge によるマージに使用されます
4
+ *
5
+ * 呼び口関数 #_TCPF_#
6
+ * call port : cCall signature: sSample context: task
7
+ * ER cCall_sayHello( int32_t times );
8
+ * ER cCall_howAreYou( char_t* buf, int32_t len );
9
+ *
10
+ * #[</PREAMBLE>]# */
11
+
12
+ #include <stdio.h>
13
+ #include "tSimple_tecsgen.h"
14
+
15
+ #ifndef E_OK
16
+ #define E_OK 0 /* 正常終了 */
17
+ #define E_ID (-18) /* 不正ID番号 */
18
+ #endif
19
+
20
+ /* #[<ENTRY_PORT>]# eBody
21
+ * entry port: eBody
22
+ * signature: sTaskBody
23
+ * context: task
24
+ * #[</ENTRY_PORT>]# */
25
+
26
+ /* #[<ENTRY_FUNC>]# eBody_main
27
+ * name: eBody_main
28
+ * global_name: tSimple_eBody_main
29
+ * oneway: false
30
+ * #[</ENTRY_FUNC>]# */
31
+ void
32
+ eBody_main()
33
+ {
34
+ char buf[256];
35
+
36
+ #define N_HELLO 3
37
+ printf( "Simple: Say hello %d times.\n", N_HELLO );
38
+ cCall_sayHello( N_HELLO ); /* 呼び口 cCall の sayHello を呼び出す */
39
+
40
+ printf( "Simple: How are you?\n" );
41
+ cCall_howAreYou( buf, sizeof buf ); /* 呼び口 cCall の howAreYou を呼び出す */
42
+ puts( buf );
43
+ }
44
+
45
+ /* #[<POSTAMBLE>]#
46
+ * これより下に非受け口関数を書きます
47
+ * #[</POSTAMBLE>]#*/
@@ -0,0 +1,66 @@
1
+ /*
2
+ * このファイルは tecsgen によりテンプレートとして自動生成されました
3
+ * このファイルを編集して使用することが意図されていますが
4
+ * tecsgen の再実行により上書きされてしまうため、通常
5
+ * gen/tTaskMain_template.c => src/tTaskMain.c
6
+ * のように名前, フォルダを変更してから修正します
7
+ */
8
+ /* #[<PREAMBLE>]#
9
+ * #[<...>]# から #[</...>]# で囲まれたコメントは編集しないでください
10
+ * tecsmerge によるマージに使用されます
11
+ *
12
+ * 呼び口関数 #_TCPF_#
13
+ * call port : cBody signature: sTaskBody context: task
14
+ * void cBody_main( );
15
+ * call port : cOpener signature: sSocketClientOpener context: task
16
+ * ER cOpener_open( const char_t* serverAddr, uint16_t portNo, TMO tmo );
17
+ * ER cOpener_simpleOpen( TMO tmo );
18
+ * ER cOpener_close( TMO tmo );
19
+ *
20
+ * #[</PREAMBLE>]# */
21
+
22
+ /* プロトタイプ宣言や変数の定義をここに書きます #_PAC_# */
23
+ #include "tTaskMain_tecsgen.h"
24
+
25
+ #ifndef E_OK
26
+ #define E_OK 0 /* success */
27
+ #define E_ID (-18) /* illegal ID */
28
+ #endif
29
+
30
+ /* 受け口関数 #_TEPF_# */
31
+ /* #[<ENTRY_PORT>]# eBody
32
+ * entry port: eBody
33
+ * signature: sTaskBody
34
+ * context: task
35
+ * #[</ENTRY_PORT>]# */
36
+
37
+ /* #[<ENTRY_FUNC>]# eBody_main
38
+ * name: eBody_main
39
+ * global_name: tTaskMain_eBody_main
40
+ * oneway: false
41
+ * #[</ENTRY_FUNC>]# */
42
+ void
43
+ eBody_main(CELLIDX idx)
44
+ {
45
+ CELLCB *p_cellcb;
46
+ TMO tmo = TMO_FEVR;
47
+ if (VALID_IDX(idx)) {
48
+ p_cellcb = GET_CELLCB(idx);
49
+ }
50
+ else {
51
+ /* エラー処理コードをここに記述します */
52
+ } /* end if VALID_IDX(idx) */
53
+
54
+ /* ここに処理本体を記述します #_TEFB_# */
55
+ while( cOpener_simpleOpen( tmo ) != E_OK ){
56
+ puts( "open failed retry after 5 second" );
57
+ sleep( 5 );
58
+ }
59
+ puts( "tTaskMain: calling Simple.eBody" );
60
+ cBody_main();
61
+ cOpener_close( tmo );
62
+ }
63
+
64
+ /* #[<POSTAMBLE>]#
65
+ * これより下に非受け口関数を書きます
66
+ * #[</POSTAMBLE>]#*/
@@ -0,0 +1,27 @@
1
+ #include <stdint.h>
2
+ typedef long ER;
3
+ typedef long ER_INT;
4
+
5
+ /* typedef long intptr_t; */
6
+ typedef int int_t;
7
+ typedef unsigned char char_t;
8
+
9
+ typedef unsigned char bool_t;
10
+
11
+ typedef double double64_t;
12
+ typedef float float32_t;
13
+
14
+ /*
15
+ typedef signed long int32_t;
16
+ typedef signed short int16_t;
17
+ typedef signed char int8_t;
18
+
19
+ typedef unsigned long uint32_t;
20
+ typedef unsigned short uint16_t;
21
+ typedef unsigned char uint8_t;
22
+
23
+
24
+ int64_t, uint64_t, int128_t, uint128_t ga
25
+ */
26
+
27
+
@@ -0,0 +1,125 @@
1
+ # このファイルは tecsgen により自動生成されました
2
+ # Makefile.temp は gen の一つ上のディレクトリに移して使用します
3
+ # % mv Makefile.temp Makefile
4
+ #
5
+ # clean のデフォルト動作は $(GEN_DIR)/Makefile.* を削除します
6
+ #
7
+ # このファイルは GNU make で gcc を用い POSIX 環境で動作するモジュールをビルドするのに適切なように生成されています
8
+ # vpath, CFLAGS, OTHER_OBJS などを調整する必要があるかもしれません
9
+ # 他の環境やターゲットの場合、このファイルを元に変更する必要があります
10
+
11
+ # 変数 #_MVAR_#
12
+ # fixed variable (unchangeable by config or plugin)
13
+ TARGET_BASE = SimpleSample
14
+ BASE_DIR = .
15
+ CYGPATH = ../../cygwin
16
+ GEN_DIR = $(BASE_DIR)/gen
17
+ INCLUDES = -I $(BASE_DIR)/. -I $(BASE_DIR)/./. -I $(TECSPATH) -I $(CYGPATH) -I $(TECSPATH)/rpc -I $(BASE_DIR)/./gen -I $(TECSPATH)/mruby -I $(TECSPATH)/posix -I $(GEN_DIR)
18
+ DEFINES =
19
+
20
+ # end of fixed variable (unchangeable by config or plugin)
21
+ #default C Compiler
22
+ CC = gcc
23
+
24
+ #default C Compiler options
25
+ CFLAGS = $(INCLUDES) $(DEFINES) -D "Inline=static inline"
26
+
27
+ #default Liknker
28
+ LD = gcc
29
+
30
+ #default Liknker Options
31
+ LDFLAGS = -lpthread
32
+
33
+ #default srource directory
34
+ SRC_DIR = $(BASE_DIR)/src
35
+
36
+ #default target name
37
+ TARGET = $(TARGET_BASE).exe
38
+
39
+ #default TECS generator
40
+ TECSGEN_EXE = tecsgen
41
+
42
+ #Time Stamp
43
+ TIMESTAMP = tecsgen.timestamp
44
+
45
+ #default relocatable object (.o) directory
46
+ _TECS_OBJ_DIR = $(GEN_DIR)/
47
+
48
+
49
+
50
+ # Pre-tecsgen target
51
+ PRE_TECSGEN_TARGET =
52
+
53
+ # Post-tecsgen target
54
+ POST_TECSGEN_TARGET =
55
+
56
+ # vpath for C sources and headers
57
+ vpath %.c $(SRC_DIR) $(GEN_DIR) $(TECSPATH) $(CYGPATH) $(TECSPATH)/rpc ./gen $(TECSPATH)/mruby $(TECSPATH)/posix
58
+ vpath %.h $(SRC_DIR) $(GEN_DIR) $(TECSPATH) $(CYGPATH) $(TECSPATH)/rpc ./gen $(TECSPATH)/mruby $(TECSPATH)/posix
59
+
60
+ # Other objects (out of tecsgen)
61
+ OTHER_OBJS = # Add objects out of tecs care.
62
+ # OTHER_OBJS = $(_TECS_OBJ_DIR)vasyslog.o
63
+ # ルール #_MRUL_#
64
+ allall: tecs
65
+ make all # in order to include generated Makefile.tecsgen & Makefile.depend
66
+
67
+ all : $(TARGET)
68
+
69
+
70
+ # depend を include #_MDEP_#
71
+ -include $(GEN_DIR)/Makefile.tecsgen
72
+ -include $(GEN_DIR)/Makefile.depend
73
+
74
+ $(TARGET) : $(TIMESTAMP) $(CELLTYPE_COBJS) $(TECSGEN_COBJS) $(PLUGIN_COBJS) $(OTHER_OBJS)
75
+ $(LD) -o $(TARGET) $(TECSGEN_COBJS) $(CELLTYPE_COBJS) $(PLUGIN_COBJS) $(OTHER_OBJS) $(LDFLAGS)
76
+ clean :
77
+ rm -f $(CELLTYPE_COBJS) $(TECSGEN_COBJS) $(PLUGIN_COBJS) $(OTHER_OBJS) $(TARGET) $(TIMESTAMP)
78
+ rm -rf $(GEN_DIR)
79
+
80
+ tecs : $(PRE_TECSGEN_TARGET) $(TIMESTAMP) $(POST_TECSGEN_TARGET)
81
+
82
+ $(TIMESTAMP) : $(TECS_IMPORTS)
83
+ $(TECSGEN_EXE) -I ./. -I $(TECSPATH) -I $(CYGPATH) -I $(TECSPATH)/rpc -I ./gen SimpleSample.cdl
84
+ touch $(TIMESTAMP)
85
+
86
+ # generic target for objs
87
+ $(_TECS_OBJ_DIR)%.o : %.c
88
+ $(CC) -c $(CFLAGS) -o $@ $<
89
+
90
+ $(_TECS_OBJ_DIR)tTask.o : tTask.c
91
+ $(CC) -c $(CFLAGS) -o $@ $<
92
+
93
+ $(_TECS_OBJ_DIR)tSemaphore.o : tSemaphore.c
94
+ $(CC) -c $(CFLAGS) -o $@ $<
95
+
96
+ $(_TECS_OBJ_DIR)tEventflag.o : tEventflag.c
97
+ $(CC) -c $(CFLAGS) -o $@ $<
98
+
99
+ $(_TECS_OBJ_DIR)tDataqueuePeer.o : tDataqueuePeer.c
100
+ $(CC) -c $(CFLAGS) -o $@ $<
101
+
102
+ $(_TECS_OBJ_DIR)tSysLog.o : tSysLog.c
103
+ $(CC) -c $(CFLAGS) -o $@ $<
104
+
105
+ $(_TECS_OBJ_DIR)tTDR.o : tTDR.c
106
+ $(CC) -c $(CFLAGS) -o $@ $<
107
+
108
+ $(_TECS_OBJ_DIR)tRPCDedicatedTaskMain.o : tRPCDedicatedTaskMain.c
109
+ $(CC) -c $(CFLAGS) -o $@ $<
110
+
111
+ $(_TECS_OBJ_DIR)tDataqueueAdaptor.o : tDataqueueAdaptor.c
112
+ $(CC) -c $(CFLAGS) -o $@ $<
113
+
114
+ $(_TECS_OBJ_DIR)tSample.o : tSample.c
115
+ $(CC) -c $(CFLAGS) -o $@ $<
116
+
117
+ $(_TECS_OBJ_DIR)tSimple.o : tSimple.c
118
+ $(CC) -c $(CFLAGS) -o $@ $<
119
+
120
+ $(_TECS_OBJ_DIR)tMarshaler_sSample.o : tMarshaler_sSample.c
121
+ $(CC) -c $(CFLAGS) -o $@ $<
122
+
123
+ $(_TECS_OBJ_DIR)tUnmarshaler_sSample.o : tUnmarshaler_sSample.c
124
+ $(CC) -c $(CFLAGS) -o $@ $<
125
+