Skip to content

Commit

Permalink
src/pkg/go/build/doc.go: apply comments at #57. refs #54
Browse files Browse the repository at this point in the history
  • Loading branch information
ucho committed Jun 15, 2014
1 parent d826a0f commit c67825a
Showing 1 changed file with 21 additions and 24 deletions.
45 changes: 21 additions & 24 deletions src/pkg/go/build/doc.go
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@
//
// GoのパスはGoのソースコードが入ったディレクトリツリーのリストです。
// 標準のGoのツリー内に見つからなかったインポートはここから探されます。
// デフォルトのパスはGOPATH環境変数の値で、OSに応じたパスのリストとして
// 解釈されます(Unixならばコロン区切りの文字列、
// デフォルトのパスはGOPATH環境変数の値で、
// OSに応じたパスのリストとして解釈されます(Unixならばコロン区切りの文字列、
// Windowsならばセミコロン区切りの文字列、Plan 9ならばリスト)。
//
// Goのパスにあるそれぞれのディレクトリはあらかじめ決められた構造を持ちます
// Goのパスにあるそれぞれのディレクトリはあらかじめ決められた構造を持ちます:
//
// src/ディレクトリにはソースコードが入ります。
// 'src'以下のパスがインポートするパスや実行ファイルの名前になります。
Expand All @@ -27,14 +27,14 @@
// (gccgoの場合は"DIR/pkg/gccgo/foo/libbar.a")
//
// bin/ディレクトリにはコンパイル済みのコマンドが入ります。
// 各コマンドはソースディレクトリに基いて名前が付けられますが
// 各コマンドはソースディレクトリに基づいて名前が付けられますが
// パス全体ではなく、最後の要素だけが使われます。
// つまり、DIR/src/foo/quuxはDIR/bin/quuxになるのであって、
// DIR/bin/foo/quuxにはなりません。
// DIR/binをPATHに加えればインストールされたコマンドを使えるようにするために、
// fooは取り除かれます。
//
// 以下はディレクトリレイアウトの例です
// 以下はディレクトリレイアウトの例です:
//
// GOPATH=/home/user/gocode
//
Expand All @@ -54,25 +54,24 @@
//
// Build Constraints
//
// ビルド制約はビルドタグとしても知られており、以下に示す文字列で始まる行コメント
// です
// ビルド制約はビルドタグとしても知られており、
// 以下に示す文字列で始まる行コメントです
//
// // +build
//
// この後にそのファイルがパッケージに含められる条件を列挙します。
// 制約はGoに限らずあらゆる種類のソースコードに記載できますが、
// ファイルの先頭付近に存在する必要があり、
// 空行や他の行コメントよりも先に存在する必要があります。
// まとめると、Goのファイルではビルド制約はパッケージ文より前に存在しなければ
// ならないということになります。
// まとめると、Goのファイルではビルド制約はパッケージ文より前に存在しなければならないということになります。
//
// パッケージドキュメントとビルド制約を識別するために、
// ビルド制約の前に空行を1行入れる必要があります。
//
// ビルド制約は、スペースで区切るとOR条件になり、
// カンマで区切るとAND条件になります。
// それぞれの語は英数字の単語で、先頭に!を付けると否定になります。
// 以下にビルド制約の例を示します
// 以下にビルド制約の例を示します:
//
// // +build linux,386 darwin,!cgo
//
Expand All @@ -82,16 +81,16 @@
//
// ひとつのファイルは複数のビルド制約を持つことができます。
// 全体としての制約は個々の制約をANDで組み合わせたものになります。
// 以下のようなビルド制約があるとします
// 以下のようなビルド制約があるとします:
//
// // +build linux darwin
// // +build 386
//
// これは以下のような論理式を意味します
// これは以下のような論理式を意味します:
//
// (linux OR darwin) AND 386
//
// 以下の条件は毎回のビルドで満たされます
// 以下の条件は毎回のビルドで満たされます:
//
// - runtime.GOOSで示される対象OS
// - runtime.GOARCHで示される対象アーキテクチャ
Expand All @@ -102,36 +101,34 @@
// - ctxt.BuildTagsに列挙された追加の条件
//
// ファイル名から拡張子と(あれば)_test接尾詞を除いたものが、
// 以下のパターンのいずれかにマッチする場合
// 以下のパターンのいずれかにマッチする場合:
// *_GOOS
// *_GOARCH
// *_GOOS_GOARCH
// (例: source_windows_amd64.go)または以下のリテラルである場合
// (例: source_windows_amd64.go)または以下のリテラルである場合:
// GOOS
// GOARCH
// (例: windows.go) GOOSとGOARCHはそれぞれ既知のOSとアーキテクチャの値を取り、
// ファイルはそれらの語が示すビルド制約を暗黙的に持つものとして扱われます。
//
// ファイルをビルドしないようにするには以下のようにします
// ファイルをビルドしないようにするには以下のようにします:
//
// // +build ignore
//
// (他の条件に関係なく``ignore''は効果を発揮します。)
//
// ファイルをcgoだけを使ってLinuxとOS X上だけでビルドするには以下のようにします
// ファイルをcgoだけを使ってLinuxとOS X上だけでビルドするには以下のようにします:
//
// // +build linux,cgo darwin,cgo
//
// このようなファイルはたいてい他のシステム用のデフォルトの振る舞いを実装した
// ファイルとペアになっており、そちらのファイルには以下のような制約が必要になる
// でしょう。
// このようなファイルはたいてい他のシステム用のデフォルトの振る舞いを実装したファイルとペアになっており、
// そちらのファイルには以下のような制約が必要になるでしょう:
//
// // +build !linux,!darwin !cgo
//
// dns_windows.goというファイル名を付けると、Windows向けにパッケージをビルドした
// ときだけそのファイルが含まれるようになります。
// 同様に、math_386.sは32ビットのx86向けにパッケージをビルドしたときだけ
// 含まれます。
// dns_windows.goというファイル名を付けると、
// Windows向けにパッケージをビルドしたときだけそのファイルが含まれるようになります。
// 同様に、math_386.sは32ビットのx86向けにパッケージをビルドしたときだけ含まれます。
//
// 本ドキュメントは以下のドキュメントを翻訳しています: https://code.google.com/p/go/source/browse/src/pkg/go/build/doc.go?r=5a3e576cfb5623d43ba2744d655d0c2c7b6bebd1
//
Expand Down

0 comments on commit c67825a

Please sign in to comment.