# Copyright 2009 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. # After editing the DIRS= list or adding imports to any Go files # in any of those directories, run: # # ./deps.bash # # to rebuild the dependency information in Make.deps. include ../Make.inc all: install DIRS=\ archive/tar\ archive/zip\ asn1\ big\ bufio\ bytes\ cmath\ compress/flate\ compress/gzip\ compress/zlib\ container/heap\ container/list\ container/ring\ container/vector\ crypto/aes\ crypto/block\ crypto/blowfish\ crypto/hmac\ crypto/md4\ crypto/md5\ crypto/ocsp\ crypto/rand\ crypto/rc4\ crypto/ripemd160\ crypto/rsa\ crypto/sha1\ crypto/sha256\ crypto/sha512\ crypto/subtle\ crypto/tls\ crypto/x509\ crypto/xtea\ debug/dwarf\ debug/macho\ debug/elf\ debug/gosym\ debug/proc\ ebnf\ encoding/ascii85\ encoding/base64\ encoding/binary\ encoding/git85\ encoding/hex\ encoding/pem\ exec\ exp/datafmt\ exp/draw\ exp/draw/x11\ exp/eval\ expvar\ flag\ fmt\ go/ast\ go/doc\ go/parser\ go/printer\ go/scanner\ go/token\ go/typechecker\ gob\ hash\ hash/adler32\ hash/crc32\ hash/crc64\ html\ http\ http/pprof\ image\ image/jpeg\ image/png\ index/suffixarray\ io\ io/ioutil\ json\ log\ math\ mime\ mime/multipart\ net\ net/dict\ net/textproto\ netchan\ nntp\ os\ os/signal\ patch\ path\ rand\ reflect\ regexp\ rpc\ rpc/jsonrpc\ runtime\ runtime/pprof\ scanner\ smtp\ sort\ strconv\ strings\ sync\ syscall\ syslog\ tabwriter\ template\ testing\ testing/iotest\ testing/quick\ testing/script\ time\ try\ unicode\ utf16\ utf8\ websocket\ xml\ ../libcgo\ ../cmd/cgo\ ../cmd/ebnflint\ ../cmd/godoc\ ../cmd/gofmt\ ../cmd/goinstall\ ../cmd/goyacc\ ../cmd/hgpatch\ NOTEST=\ debug/proc\ exp/draw/x11\ go/ast\ go/doc\ go/token\ hash\ http/pprof\ image\ image/jpeg\ net/dict\ rand\ runtime\ runtime/pprof\ syscall\ testing/iotest\ try\ ../libcgo\ ../cmd/cgo\ ../cmd/ebnflint\ ../cmd/godoc\ ../cmd/gofmt\ ../cmd/goinstall\ ../cmd/goyacc\ ../cmd/hgpatch\ NOBENCH=\ container/vector\ # Disable tests that depend on an external network. ifeq ($(DISABLE_NET_TESTS),1) NOTEST+=http net endif # Disable tests that NaCl cannot run yet. ifeq ($(GOOS),nacl) NOTEST+=archive/tar # no pipe NOTEST+=archive/zip # no pread NOTEST+=debug/dwarf # no pread NOTEST+=debug/macho # no pread NOTEST+=debug/elf # no pread NOTEST+=exec # no pipe NOTEST+=http # no network NOTEST+=log # no runtime.Caller NOTEST+=net # no network NOTEST+=netchan # no network NOTEST+=os # many things unimplemented NOTEST+=os/signal # no signals NOTEST+=path # tree walking does not work NOTEST+=rpc # no network NOTEST+=syslog # no network NOTEST+=time # no syscall.Kill, syscall.SIGCHLD for sleep tests NOTEST+=websocket # no network endif # Disable tests that windows cannot run yet. ifeq ($(GOOS),windows) NOTEST+=exec # no pipe NOTEST+=os/signal # no signals NOTEST+=path # tree walking does not work NOTEST+=syslog # no network NOTEST+=time # no syscall.Kill, syscall.SIGCHLD for sleep tests endif ifeq ($(GOARCH),arm) # Tests that fail, probably 5g bugs. # Disable so that dashboard all.bash can catch regressions. NOTEST+=archive/tar NOTEST+=archive/zip NOTEST+=cmath NOTEST+=crypto/block NOTEST+=debug/dwarf NOTEST+=debug/elf NOTEST+=debug/macho NOTEST+=encoding/binary NOTEST+=exp/datafmt NOTEST+=exp/eval NOTEST+=expvar NOTEST+=flag NOTEST+=fmt NOTEST+=go/printer NOTEST+=gob NOTEST+=http NOTEST+=image/png NOTEST+=json NOTEST+=log NOTEST+=math NOTEST+=net NOTEST+=netchan NOTEST+=os NOTEST+=os/signal NOTEST+=rpc NOTEST+=rpc/jsonrpc NOTEST+=strconv NOTEST+=syslog NOTEST+=template NOTEST+=testing/quick NOTEST+=websocket NOTEST+=xml endif TEST=\ $(filter-out $(NOTEST),$(DIRS)) BENCH=\ $(filter-out $(NOBENCH),$(TEST)) clean.dirs: $(addsuffix .clean, $(DIRS)) install.dirs: $(addsuffix .install, $(DIRS)) nuke.dirs: $(addsuffix .nuke, $(DIRS)) test.dirs: $(addsuffix .test, $(TEST)) bench.dirs: $(addsuffix .bench, $(BENCH)) %.clean: +cd $* && gomake clean %.install: +cd $* && gomake install %.nuke: +cd $* && gomake nuke %.test: +cd $* && gomake test %.bench: +cd $* && gomake bench clean: clean.dirs install: install.dirs test: test.dirs bench: bench.dirs ../../test/garbage.bench nuke: nuke.dirs rm -rf "$(GOROOT)"/pkg/* deps: ./deps.bash -include Make.deps ../cmd/cgo.install: ../libcgo.install