8 "Dispatcher", # comment
9 "\$(COMMON_HEADERS)", # depend
10 "\$(KERNEL_CORE_DIR)/dsp", # path
26 "\$(KERNEL_CORE_DIR)/que",
40 "\$(KERNEL_CORE_DIR)/rdq",
52 "\$(KERNEL_CORE_DIR)/tim",
59 "\$(KERNEL_CORE_DIR)/toq",
68 "\$(KERNEL_CORE_DIR)/tmq",
77 "\$(KERNEL_CORE_DIR)/hep",
84 "Deferrable procedure call",
86 "\$(KERNEL_CORE_DIR)/dpc",
91 "Asyncronous data-queue",
93 "\$(KERNEL_CORE_DIR)/adtq",
104 "\$(COMMON_HEADERS)",
105 "\$(KERNEL_OBJ_DIR)/sys",
119 "\$(COMMON_HEADERS)",
120 "\$(KERNEL_OBJ_DIR)/tsk",
140 "\$(COMMON_HEADERS) \$(SEMOBJ_HEADERS)",
141 "\$(KERNEL_OBJ_DIR)/sem",
156 "\$(COMMON_HEADERS) \$(FLGOBJ_HEADERS)",
157 "\$(KERNEL_OBJ_DIR)/flg",
174 "\$(COMMON_HEADERS) \$(DTQOBJ_HEADERS)",
175 "\$(KERNEL_OBJ_DIR)/dtq",
188 "\$(COMMON_HEADERS) \$(MBXOBJ_HEADERS)",
189 "\$(KERNEL_OBJ_DIR)/mbx",
204 "\$(COMMON_HEADERS) \$(MTXOBJ_HEADERS)",
205 "\$(KERNEL_OBJ_DIR)/mtx",
217 "Fixed-sized Memory Pools",
218 "\$(COMMON_HEADERS) \$(MPFOBJ_HEADERS)",
219 "\$(KERNEL_OBJ_DIR)/mpf",
228 "System Time Management",
229 "\$(COMMON_HEADERS)",
230 "\$(KERNEL_OBJ_DIR)/tim",
237 "Interrupt handlers",
238 "\$(COMMON_HEADERS) \$(INHOBJ_HEADERS)",
239 "\$(KERNEL_OBJ_DIR)/inh",
247 "Interrupt Service Routines",
248 "\$(COMMON_HEADERS) \$(ISROBJ_HEADERS)",
249 "\$(KERNEL_OBJ_DIR)/isr",
258 $headers = <<END_OF_HEADERS;
260 ITRON_HEADERS = \$(KERNEL_INC_DIR)/itron.h \\
261 \$(KERNEL_INC_DIR)/kernel.h
263 CFG_HEADERS = \$(KERNEL_INC_DIR)/parser/parssys.h \\
264 \$(KERNEL_INC_DIR)/parser/parsknl.h \\
265 \$(KERNEL_INC_DIR)/parser/parserr.h \\
266 \$(KERNEL_INC_DIR)/parser/parshok.h
268 PARS_HEADERS = \$(KERNEL_INC_DIR)/config/cfgsys.h \\
269 \$(KERNEL_INC_DIR)/config/cfgknl.h \\
270 \$(KERNEL_INC_DIR)/config/cfgerr.h \\
271 \$(KERNEL_INC_DIR)/config/cfghok.h
273 CORE_HEADERS = \$(KERNEL_INC_DIR)/core/adtq.h \\
274 \$(KERNEL_INC_DIR)/core/basetyp.h \\
275 \$(KERNEL_INC_DIR)/core/chkptr.h \\
276 \$(KERNEL_INC_DIR)/core/cmpl.h \\
277 \$(KERNEL_INC_DIR)/core/core.h \\
278 \$(KERNEL_INC_DIR)/core/dsp.h \\
279 \$(KERNEL_INC_DIR)/core/hep.h \\
280 \$(KERNEL_INC_DIR)/core/objhdl.h \\
281 \$(KERNEL_INC_DIR)/core/objid.h \\
282 \$(KERNEL_INC_DIR)/core/que.h \\
283 \$(KERNEL_INC_DIR)/core/rdq.h \\
284 \$(KERNEL_INC_DIR)/core/sys.h \\
285 \$(KERNEL_INC_DIR)/core/tmq.h \\
286 \$(KERNEL_INC_DIR)/core/toq.h \\
287 \$(KERNEL_INC_DIR)/core/dpc.h
289 ARCH_HEADERS = \$(INC_PROC_DIR)/proc.h \\
290 \$(INC_PROC_DIR)/procatr.h \\
291 \$(INC_IRC_DIR)/irc.h \\
292 \$(INC_IRC_DIR)/ircatr.h
294 TSKOBJ_HEADERS = \$(KERNEL_INC_DIR)/object/tskobj.h
296 SEMOBJ_HEADERS = \$(KERNEL_INC_DIR)/object/semobj.h
298 FLGOBJ_HEADERS = \$(KERNEL_INC_DIR)/object/flgobj.h
300 DTQOBJ_HEADERS = \$(KERNEL_INC_DIR)/object/dtqobj.h
302 MBXOBJ_HEADERS = \$(KERNEL_INC_DIR)/object/mbxobj.h
304 MTXOBJ_HEADERS = \$(KERNEL_INC_DIR)/object/mtxobj.h
306 MPFOBJ_HEADERS = \$(KERNEL_INC_DIR)/object/mpfobj.h
308 TIMOBJ_HEADERS = \$(KERNEL_INC_DIR)/object/timobj.h
310 INHOBJ_HEADERS = \$(KERNEL_INC_DIR)/object/inhobj.h
312 ISROBJ_HEADERS = \$(KERNEL_INC_DIR)/object/isrobj.h
314 COMMON_HEADERS = \$(ITRON_HEADERS) \\
319 \$(TSKOBJ_HEADERS) \\
325 # --------------------------------------------------
327 # --------------------------------------------------
329 open(OUT, "> ../gmake/knlsrc.inc");
331 print(OUT "# ----------------------------------------------------------------------------\n");
332 print(OUT "# Hyper Operating System V4 Advance\n");
333 print(OUT "# common include file for GNU make\n");
335 print(OUT "# Copyright (C) 1998-2007 by Project HOS\n");
336 print(OUT "# http://sourceforge.jp/projects/hos/\n");
337 print(OUT "# ----------------------------------------------------------------------------\n");
341 print(OUT "# Directories\n");
342 print(OUT "KERNEL_SRC_DIR = \$(KERNEL_DIR)/source\n");
343 print(OUT "KERNEL_INC_DIR = \$(KERNEL_DIR)/include\n");
344 print(OUT "KERNEL_CORE_DIR = \$(KERNEL_SRC_DIR)/core\n");
345 print(OUT "KERNEL_OBJ_DIR = \$(KERNEL_SRC_DIR)/object\n");
349 print(OUT "# Kernel include directorys\n");
350 print(OUT "INC_DIRS += \$(KERNEL_INC_DIR)\n");
357 foreach $s ( @sources )
360 $comment = shift(@list);
361 $depend = shift(@list);
362 $path = shift(@list);
363 $def_dir = shift(@list);
366 print(OUT "# $comment\n");
367 print(OUT "$def_dir = $path\n");
368 print(OUT "SRC_DIRS += \$($def_dir)\n");
369 foreach $file ( @list )
371 print(OUT "CSRCS += \$($def_dir)/$file\n");
378 print(OUT "# end of file\n");
384 # --------------------------------------------------
386 # --------------------------------------------------
388 open(OUT, "> ../gmake/knldep.inc");
390 print(OUT "# ----------------------------------------------------------------------------\n");
391 print(OUT "# Hyper Operating System V4 Advance\n");
392 print(OUT "# common depend file for GNU make\n");
394 print(OUT "# Copyright (C) 1998-2007 by Project HOS\n");
395 print(OUT "# http://sourceforge.jp/projects/hos/\n");
396 print(OUT "# ----------------------------------------------------------------------------\n");
400 foreach $s ( @sources )
403 $comment = shift(@list);
404 $depend = shift(@list);
405 $path = shift(@list);
406 $def_dir = shift(@list);
409 foreach $file ( @list )
412 $objfile =~ s/\.c/\./;
413 print(OUT "\$(OBJS_DIR)/$objfile\$(EXT_OBJ):\t\$($def_dir)/$file\t$depend\n");
420 print(OUT "# end of file\n");
427 # --------------------------------------------------
429 # --------------------------------------------------
431 open(OUT, "> ../nmake/knlsrc.inc");
433 print(OUT "# ----------------------------------------------------------------------------\n");
434 print(OUT "# Hyper Operating System V4 Advance\n");
435 print(OUT "# common include file for nmake\n");
437 print(OUT "# Copyright (C) 1998-2007 by Project HOS\n");
438 print(OUT "# http://sourceforge.jp/projects/hos/\n");
439 print(OUT "# ----------------------------------------------------------------------------\n");
443 print(OUT "# Directories\n");
444 print(OUT "KERNEL_SRC_DIR = \$(KERNEL_DIR)\\source\n");
445 print(OUT "KERNEL_INC_DIR = \$(KERNEL_DIR)\\include\n");
446 print(OUT "KERNEL_CORE_DIR = \$(KERNEL_SRC_DIR)\\core\n");
447 print(OUT "KERNEL_OBJ_DIR = \$(KERNEL_SRC_DIR)\\object\n");
451 print(OUT "# Kernel include directorys\n");
452 print(OUT "INC_DIRS = \$(INC_DIRS) \$(KERNEL_INC_DIR)\n");
461 foreach $s ( @sources )
464 $comment = shift(@list);
465 $depend = shift(@list);
466 $path = shift(@list);
467 $def_dir = shift(@list);
472 print(OUT "# $comment\n");
473 print(OUT "$def_dir = $path\n");
474 foreach $file ( @list )
476 print(OUT "CSRCS = \$(CSRCS) \$($def_dir)\\$file\n");
478 foreach $file ( @list )
481 print(OUT "OBJS = \$(OBJS) \$(OBJS_DIR)\\$file\.\$(EXT_OBJ)\n");
488 print(OUT "# end of file\n");
494 # --------------------------------------------------
496 # --------------------------------------------------
498 open(OUT, "> ../nmake/knldep.inc");
500 print(OUT "# ----------------------------------------------------------------------------\n");
501 print(OUT "# Hyper Operating System V4 Advance\n");
502 print(OUT "# common depend file for nmake\n");
504 print(OUT "# Copyright (C) 1998-2007 by Project HOS\n");
505 print(OUT "# http://sourceforge.jp/projects/hos/\n");
506 print(OUT "# ----------------------------------------------------------------------------\n");
510 print(OUT "# ----------------------------------\n");
511 print(OUT "# source copy\n");
512 print(OUT "# ----------------------------------\n");
513 print(OUT "srcobjcp_makelib:\n");
514 foreach $s ( @sources )
517 $comment = shift(@list);
518 $depend = shift(@list);
519 $path = shift(@list);
520 $def_dir = shift(@list);
522 print(OUT "\t\$(CMD_CP) \$($def_dir)\\*.* \$(OBJS_DIR)\n");
528 print(OUT "# ----------------------------------\n");
529 print(OUT "# depend\n");
530 print(OUT "# ----------------------------------\n");
532 foreach $s ( @sources )
535 $comment = shift(@list);
536 $depend = shift(@list);
537 $path = shift(@list);
538 $def_dir = shift(@list);
543 foreach $file ( @list )
545 $objfile =~ s/\.c//g;
546 print(OUT "\$(OBJS_DIR)\\$objfile.\$(EXT_OBJ):\t\$(OBJS_DIR)\\$file\t$depend\n");
554 print(OUT "# end of file\n");