diff --git a/src/conio/genmap.c b/src/conio/genmap.c index aa0f643a024ec30090ff11bf7817662cd5f3db56..5716bd80c2c40b20827fd1699e42ee42ddcda42c 100644 --- a/src/conio/genmap.c +++ b/src/conio/genmap.c @@ -61,6 +61,7 @@ main(int argc, char **argv) char path[1024]; char *mangle = ""; char *section = ".rodata"; + char *gnustack = ""; if (argc != 3) { fprintf(stderr, "Usage: %s <os> <path>\n", argv[0]); @@ -81,16 +82,19 @@ main(int argc, char **argv) section = "__TEXT,__const"; mangle = "_"; } + if (strcmp(argv[1], "linux") == 0) { + gnustack = ".section .note.GNU-stack, \“\”, @progbits\n"; + } fprintf(s, - ".section %s\n" + "%s.section %s\n" ".global %sr2y\n" ".global %sy2r\n" ".align 4\n" "%sr2y:\n" " .incbin \"%s/r2y.bin\"\n" "%sy2r:\n" - " .incbin \"%s/y2r.bin\"\n", section, mangle, mangle, mangle, argv[2], mangle, argv[2]); + " .incbin \"%s/y2r.bin\"\n", gnustack, section, mangle, mangle, mangle, argv[2], mangle, argv[2]); fprintf(h, "#ifndef RGBMAP_H\n" "#define RGBMAP_H\n"