github.com/metux/go-metabuild@v0.0.0-20240118143255-d9ed5ab697f9/util/strs/xdtcsource.go (about) 1 package strs 2 3 import ( 4 "fmt" 5 ) 6 7 const maxWidth = 71 8 9 func XdtCSource(in string, src string, resname string) string { 10 packed := PackXML(string(in)) 11 return fmt.Sprintf( 12 "/* automatically generated from %s */\n"+ 13 "#ifdef __SUNPRO_C\n"+ 14 "#pragma align 4 (%s)\n"+ 15 "#endif\n"+ 16 "#ifdef __GNUC__\n"+ 17 "static const char %s[] __attribute__ ((__aligned__ (4))) =\n"+ 18 "#else\n"+ 19 "static const char %s[] =\n"+ 20 "#endif\n"+ 21 "{\n"+ 22 "%s};\n\nstatic const unsigned %s_length = %du;\n\n", 23 src, resname, resname, resname, CLiteral(packed, " ", maxWidth), resname, len(packed)) 24 }