summaryrefslogtreecommitdiff
path: root/sys/src/cmd/5l/obj.c
diff options
context:
space:
mode:
authorcinap_lenrek <cinap_lenrek@gmx.de>2012-09-18 18:22:38 +0200
committercinap_lenrek <cinap_lenrek@gmx.de>2012-09-18 18:22:38 +0200
commita5756259cf994e08b7bbac2a9591adab02f63d2b (patch)
tree5d79dc2f9a4b03c32a616672b5c7d3b9e4934b0b /sys/src/cmd/5l/obj.c
parent3ba213a9d79bfe52f9a8aa6834c67eac665de136 (diff)
5l -H7 (elf) support (import from sources)
Diffstat (limited to 'sys/src/cmd/5l/obj.c')
-rw-r--r--sys/src/cmd/5l/obj.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/sys/src/cmd/5l/obj.c b/sys/src/cmd/5l/obj.c
index 162012842..55886c7dc 100644
--- a/sys/src/cmd/5l/obj.c
+++ b/sys/src/cmd/5l/obj.c
@@ -19,6 +19,7 @@ char *thestring = "arm";
* -H4 is IXP1200 (raw)
* -H5 -T0xC0008010 -R1024 is ipaq
* -H6 -R4096 no header with segments padded to pages
+ * -H7 is elf
*/
static int
@@ -183,6 +184,15 @@ main(int argc, char *argv[])
if(INITRND == -1)
INITRND = 1024;
break;
+ case 7: /* elf executable */
+ HEADR = rnd(52L+3*32L, 16);
+ if(INITTEXT == -1)
+ INITTEXT = 4096+HEADR;
+ if(INITDAT == -1)
+ INITDAT = 0;
+ if(INITRND == -1)
+ INITRND = 4;
+ break;
}
if(INITDAT != 0 && INITRND != 0)
print("warning: -D0x%lux is ignored because of -R0x%lux\n",