summaryrefslogtreecommitdiff
path: root/src/cmd/6l/obj.c
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2009-04-30 13:32:39 -0700
committerRuss Cox <rsc@golang.org>2009-04-30 13:32:39 -0700
commitf1b95a7c9b51b5f6e0c10e53d444525b05224b9b (patch)
tree1f0498e5a6b1eb2011d73d5d3b2bc2851d5da5c5 /src/cmd/6l/obj.c
parent04d14d08460ae645c31bb77f7e1ad5dbde4ebd6c (diff)
downloadgolang-f1b95a7c9b51b5f6e0c10e53d444525b05224b9b.tar.gz
change 6l library directory flag to -L,
to match traditional c linkers. R=r DELTA=42 (8 added, 12 deleted, 22 changed) OCL=28101 CL=28115
Diffstat (limited to 'src/cmd/6l/obj.c')
-rw-r--r--src/cmd/6l/obj.c46
1 files changed, 21 insertions, 25 deletions
diff --git a/src/cmd/6l/obj.c b/src/cmd/6l/obj.c
index b65c7f313..31fb978e1 100644
--- a/src/cmd/6l/obj.c
+++ b/src/cmd/6l/obj.c
@@ -71,6 +71,13 @@ isobjfile(char *f)
}
void
+usage(void)
+{
+ fprint(2, "usage: 6l [-options] [-E entry] [-H head] [-L dir] [-T text] [-R rnd] [-o out] files...\n");
+ exits("usage");
+}
+
+void
main(int argc, char *argv[])
{
int i, c;
@@ -87,7 +94,7 @@ main(int argc, char *argv[])
INITDAT = -1;
INITRND = -1;
INITENTRY = 0;
- PKGDIR = nil;
+ LIBDIR = nil;
ARGBEGIN {
default:
@@ -96,37 +103,26 @@ main(int argc, char *argv[])
debug[c]++;
break;
case 'o': /* output to (next arg) */
- outfile = ARGF();
+ outfile = EARGF(usage());
break;
case 'E':
- a = ARGF();
- if(a)
- INITENTRY = a;
+ INITENTRY = EARGF(usage());
break;
case 'H':
- a = ARGF();
- if(a)
- HEADTYPE = atolwhex(a);
+ HEADTYPE = atolwhex(EARGF(usage()));
+ break;
+ case 'L':
+ LIBDIR = EARGF(usage());
break;
case 'T':
- a = ARGF();
- if(a)
- INITTEXT = atolwhex(a);
+ INITTEXT = atolwhex(EARGF(usage()));
break;
case 'D':
- a = ARGF();
- if(a)
- INITDAT = atolwhex(a);
+ INITDAT = atolwhex(EARGF(usage()));
break;
case 'R':
- a = ARGF();
- if(a)
- INITRND = atolwhex(a);
+ INITRND = atolwhex(EARGF(usage()));
break;
- case 'P':
- a = ARGF();
- if(a)
- PKGDIR = a;
break;
case 'x': /* produce export table */
doexp = 1;
@@ -690,10 +686,10 @@ addlib(char *src, char *obj)
}
if(search) {
- // try dot, -P "pkgdir", and then goroot.
- snprint(pname, sizeof pname, ".%s", name);
- if(access(pname, AEXIST) < 0 && PKGDIR != nil)
- snprint(pname, sizeof pname, "%s/%s", PKGDIR, name);
+ // try dot, -L "libdir", and then goroot.
+ snprint(pname, sizeof pname, "./%s", name);
+ if(access(pname, AEXIST) < 0 && LIBDIR != nil)
+ snprint(pname, sizeof pname, "%s/%s", LIBDIR, name);
if(access(pname, AEXIST) < 0)
snprint(pname, sizeof pname, "%s/pkg/%s", goroot, name);
strcpy(name, pname);