Index: work/alien_formats/altium_parser/Makefile =================================================================== --- work/alien_formats/altium_parser/Makefile (revision 35269) +++ work/alien_formats/altium_parser/Makefile (revision 35270) @@ -1,3 +1,13 @@ -CFLAGS = -Wall -g +SPHASH=src_3rd/sphash/sphash +CFLAGS = -Wall -g -Isrc_3rd -main: main.o pcbdoc_ascii.o +main: main.o pcbdoc_ascii.o altium_kw.o + +main.o: main.c pcbdoc_ascii.h + +pcbdoc_ascii.o: pcbdoc_ascii.c pcbdoc_ascii.h + +altium_kw.c altium_kw.h: altium_kw.sphash + $(SPHASH) $(VERBOSE) -i --prefix altium_kw --out altium_kw < altium_kw.sphash + +altium_kw.o: altium_kw.c altium_kw.h \ No newline at end of file Index: work/alien_formats/altium_parser/altium_kw.sphash =================================================================== --- work/alien_formats/altium_parser/altium_kw.sphash (nonexistent) +++ work/alien_formats/altium_parser/altium_kw.sphash (revision 35270) @@ -0,0 +1,11 @@ +board +class +net +component +polygon +arc +pad +via +track +text +componentbody Index: work/alien_formats/altium_parser/pcbdoc_ascii.h =================================================================== --- work/alien_formats/altium_parser/pcbdoc_ascii.h (revision 35269) +++ work/alien_formats/altium_parser/pcbdoc_ascii.h (revision 35270) @@ -1,4 +1,17 @@ #include "plug_io.h" +#include +typedef struct altium_field_s { + const char *key; + const char *val; + gdl_elem_t rec; +} altium_field_t; + +typedef struct altium_record_s { +/* altium_record_type_t type;*/ + const char *type_s; + gdl_list_t fields; +} altium_record_t; + int pcbdoc_ascii_test_parse(pcb_plug_io_t *ctx, pcb_plug_iot_t typ, const char *file_name, FILE *f);