X-Git-Url: http://sraa.de/git/?a=blobdiff_plain;f=dol%2Fsrc%2Fdol%2Fvisitor%2Fepiphany%2FEpiphanyVisitor.java;fp=dol%2Fsrc%2Fdol%2Fvisitor%2Fepiphany%2FEpiphanyVisitor.java;h=5a053ca424e84a289462d5bd141750dd49b7f2ee;hb=288a00688bd1ef5ffad268212df3c54c7c8c4e30;hp=2c0c642a5a0b173c44276cafaf668f9d815942e8;hpb=2858109405a90a4d9df149b10444678d42e41c59;p=jump.git diff --git a/dol/src/dol/visitor/epiphany/EpiphanyVisitor.java b/dol/src/dol/visitor/epiphany/EpiphanyVisitor.java index 2c0c642..5a053ca 100644 --- a/dol/src/dol/visitor/epiphany/EpiphanyVisitor.java +++ b/dol/src/dol/visitor/epiphany/EpiphanyVisitor.java @@ -264,23 +264,29 @@ public class EpiphanyVisitor extends PNVisitor { File fTemplate = new File(template); copyFile(fTemplate, fFilename); - /* generate replacement string */ + /* generate replacement strings */ + String shmBufTypes = ""; String shmBufs = ""; for(EpiphanyBuffer buf : _buffers) { if("shm".equals(buf.type)) { - shmBufs += + shmBufTypes += "\ntypedef struct {\n" + "\tuint32_t rp;\n" + "\tuint32_t wp;\n" + "\tuint32_t size;\n" + "\tchar buf[" + buf.size + "];\n" + "} PACKED buf" + buf.shmIndex + "_t;\n"; + + shmBufs += + "\tbuf" + buf.shmIndex + "_t" + + "\tbuf" + buf.shmIndex + ";\n"; } } /* do the replace */ Sed sed = new Sed(); - sed.sed(filename, "@@SHM_BUF_STRUCTS@@", shmBufs); + sed.sed(filename, "@@SHM_BUF_STRUCTS@@", shmBufTypes); + sed.sed(filename, "@@SHM_BUFS@@", shmBufs); System.out.println("done!"); }