Commit 283b2329 authored by Russ Cox's avatar Russ Cox

[dev.cc] cmd/objwriter: add placeholder program

cmd/internal/obj is the name for the Go translation of the C liblink library.

cmd/objwriter is the name of a Go binary that runs liblink's writeobj function.
When the bulk of liblink has been converted to Go but the assemblers and
compilers are still written in C, the C writeobj will shell out to the Go objwriter
to actually write the object file. This lets us manage the transition in smaller
pieces.

The objwriter tool is purely transitional.
It will not ship in any release (enforced in cmd/dist).

Adding a dummy program and some dummy imports here so that we
can work on the bootstrap mechanisms that will be necessary to build it.
Once the build process handles objwriter properly,
we'll work on the actual implementation.

Change-Id: I675c818b3a513c26bb91c6dba564c6ace3b7fcd4
Reviewed-on: https://go-review.googlesource.com/3043Reviewed-by: 's avatarIan Lance Taylor <iant@golang.org>
parent c4dd7fac
......@@ -356,6 +356,7 @@ var oldtool = []string{
// not be in release branches.
var unreleased = []string{
"src/cmd/link",
"src/cmd/objwriter",
"src/debug/goobj",
"src/old",
}
......
......@@ -398,6 +398,7 @@ var goTools = map[string]targetDir{
"cmd/link": toTool,
"cmd/nm": toTool,
"cmd/objdump": toTool,
"cmd/objwriter": toTool,
"cmd/pack": toTool,
"cmd/pprof": toTool,
"cmd/yacc": toTool,
......
// Copyright 2015 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Dummy placeholder for the real obj package.
package obj
var Exported bool
// Copyright 2015 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Dummy placeholder for the real obj package.
package x86
var Exported bool
// Copyright 2015 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Objwriter reads an object file description in an unspecified format
// and writes a Go object file. It is invoked by parts of the toolchain
// that have not yet been converted from C to Go and should not be
// used otherwise.
package main
import "cmd/internal/obj"
import (
"cmd/internal/obj/x86"
)
// TODO(rsc): Implement.
// For now we just check that the objwriter binary is available to be run.
func main() {
_ = obj.Exported
_ = x86.Exported
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment