forked from Imagelibrary/rtems
* linkcmds.c, linkcmds.h, memory.c, memory.h, sample.ptf: New files. * bridges.c: corrected detection of bridged connections * clocks.c: removed a printf * linkcmds.[ch] new files, added output of linker script * Makefile.am: added new files * memory.[ch]: new files, detection of memory in SOPC configuration * nios2gen.c: updated command line parsing and output control * output.[ch]: improved output of BSP header file * ptf.[ch]: added ptf_dump_ptf_item and small fixes * sample.ptf: new file, sample configuration for nios2gen * README: updated
72 lines
1.3 KiB
C
72 lines
1.3 KiB
C
/*
|
|
* Copyright (c) 2006 Kolja Waschk rtemsdev/ixo.de
|
|
*
|
|
* The license and distribution terms for this file may be
|
|
* found in the file LICENSE in this distribution or at
|
|
* http://www.rtems.com/license/LICENSE.
|
|
*
|
|
* $Id$
|
|
*/
|
|
|
|
#if !defined(__PTF_H)
|
|
#define __PTF_H 1
|
|
|
|
#include <stdio.h>
|
|
|
|
#define MAX_SECTION_NESTING 20
|
|
|
|
typedef enum
|
|
{
|
|
item, section
|
|
}
|
|
ptf_item_type;
|
|
|
|
struct ptf
|
|
{
|
|
ptf_item_type type;
|
|
char *name;
|
|
char *value;
|
|
struct ptf *sub;
|
|
struct ptf *next;
|
|
};
|
|
|
|
struct ptf_item
|
|
{
|
|
int level;
|
|
struct ptf *item[MAX_SECTION_NESTING];
|
|
};
|
|
|
|
|
|
typedef void (*ptf_match_action)(struct ptf_item *x, void *arg);
|
|
|
|
struct ptf *ptf_parse_file(char *filename);
|
|
struct ptf *ptf_concat(struct ptf *a, struct ptf *b);
|
|
struct ptf *ptf_alloc_item(ptf_item_type t, char *name, char *value);
|
|
void ptf_printf(FILE *s, struct ptf *tree, char *prefix);
|
|
void ptf_dump_ptf_item(FILE *s, struct ptf_item *pi);
|
|
|
|
struct ptf *ptf_find(
|
|
struct ptf *tree,
|
|
struct ptf_item *item,
|
|
ptf_item_type ttype,
|
|
char *name,
|
|
char *value);
|
|
|
|
struct ptf *ptf_next(
|
|
struct ptf_item *item,
|
|
ptf_item_type ttype,
|
|
char *name,
|
|
char *value);
|
|
|
|
int ptf_match(
|
|
struct ptf *const ptf,
|
|
struct ptf_item *const match,
|
|
const ptf_match_action action,
|
|
void *arg);
|
|
|
|
char *ptf_defused_name(char *);
|
|
|
|
|
|
#endif /* !defined(__PTF_H) */
|
|
|