* config/visium/visium.c (visium_gimplify_va_arg): Emit a big-endian
[official-gcc.git] / libgo / Makefile.am
blobbe5b0cac19c1996c65b4b521998709c13d09ce4c
1 # Makefile.am -- Go library Makefile.
3 # Copyright 2009 The Go Authors. All rights reserved.
4 # Use of this source code is governed by a BSD-style
5 # license that can be found in the LICENSE file.
7 # Process this file with autoreconf to produce Makefile.in.
9 # Go support.
10 SUFFIXES = .c .go .gox .o .obj .lo .a
12 if LIBGO_IS_RTEMS
13 subdirs = testsuite
14 endif
16 SUBDIRS = ${subdirs}
18 gcc_version := $(shell $(GOC) -dumpversion)
20 MAINT_CHARSET = latin1
22 mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs
23 PWD_COMMAND = $${PWDCMD-pwd}
24 STAMP = echo timestamp >
26 toolexecdir = $(glibgo_toolexecdir)
27 toolexeclibdir = $(glibgo_toolexeclibdir)
28 toolexeclibgodir = $(nover_glibgo_toolexeclibdir)/go/$(gcc_version)/$(target_alias)
29 libexecsubdir = $(libexecdir)/gcc/$(target_alias)/$(gcc_version)
31 LIBFFI = @LIBFFI@
32 LIBFFIINCS = @LIBFFIINCS@
34 LIBATOMIC = @LIBATOMIC@
36 WARN_CFLAGS = $(WARN_FLAGS) $(WERROR)
38 # -I/-D flags to pass when compiling.
39 AM_CPPFLAGS = -I $(srcdir)/runtime $(LIBFFIINCS) $(PTHREAD_CFLAGS)
41 ACLOCAL_AMFLAGS = -I ./config -I ../config
43 AM_CFLAGS = -fexceptions -fnon-call-exceptions -fplan9-extensions \
44         $(SPLIT_STACK) $(WARN_CFLAGS) \
45         $(STRINGOPS_FLAG) $(OSCFLAGS) \
46         -I $(srcdir)/../libgcc -I $(srcdir)/../libbacktrace \
47         -I $(MULTIBUILDTOP)../../gcc/include
49 if USING_SPLIT_STACK
50 AM_LDFLAGS = -XCClinker $(SPLIT_STACK)
51 endif
53 # Multilib support.
54 MAKEOVERRIDES=
56 # Work around what appears to be a GNU make  handling MAKEFLAGS
57 # values defined in terms of make variables, as is the case for CC and
58 # friends when we are called from the top level Makefile.
59 AM_MAKEFLAGS = \
60         "AR_FLAGS=$(AR_FLAGS)" \
61         "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
62         "CC_FOR_TARGET=$(CC_FOR_TARGET)" \
63         "CFLAGS=$(CFLAGS)" \
64         "CXXFLAGS=$(CXXFLAGS)" \
65         "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
66         "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
67         "GOC_FOR_TARGET=$(GOC_FOR_TARGET)" \
68         "GOC=$(GOC)" \
69         "GOCFLAGS=$(GOCFLAGS)" \
70         "INSTALL=$(INSTALL)" \
71         "INSTALL_DATA=$(INSTALL_DATA)" \
72         "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
73         "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
74         "LDFLAGS=$(LDFLAGS)" \
75         "LIBCFLAGS=$(LIBCFLAGS)" \
76         "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
77         "MAKE=$(MAKE)" \
78         "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
79         "PICFLAG=$(PICFLAG)" \
80         "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
81         "SHELL=$(SHELL)" \
82         "RUNTESTFLAGS=$(RUNTESTFLAGS)" \
83         "exec_prefix=$(exec_prefix)" \
84         "infodir=$(infodir)" \
85         "libdir=$(libdir)" \
86         "includedir=$(includedir)" \
87         "prefix=$(prefix)" \
88         "tooldir=$(tooldir)" \
89         "gxx_include_dir=$(gxx_include_dir)" \
90         "AR=$(AR)" \
91         "AS=$(AS)" \
92         "LD=$(LD)" \
93         "RANLIB=$(RANLIB)" \
94         "NM=$(NM)" \
95         "NM_FOR_BUILD=$(NM_FOR_BUILD)" \
96         "NM_FOR_TARGET=$(NM_FOR_TARGET)" \
97         "DESTDIR=$(DESTDIR)" \
98         "WERROR=$(WERROR)"
100 # Subdir rules rely on $(FLAGS_TO_PASS)
101 FLAGS_TO_PASS = $(AM_MAKEFLAGS)
103 if GOC_IS_LLGO
104 toolexeclib_LTLIBRARIES = libgo-llgo.la
105 toolexeclib_LIBRARIES = libgobegin-llgo.a
106 else
107 toolexeclib_LTLIBRARIES = libgo.la
108 toolexeclib_LIBRARIES = libgobegin.a libgolibbegin.a libnetgo.a
109 endif
111 toolexeclibgo_DATA = \
112         bufio.gox \
113         bytes.gox \
114         context.gox \
115         crypto.gox \
116         encoding.gox \
117         errors.gox \
118         expvar.gox \
119         flag.gox \
120         fmt.gox \
121         hash.gox \
122         html.gox \
123         image.gox \
124         io.gox \
125         log.gox \
126         math.gox \
127         mime.gox \
128         net.gox \
129         os.gox \
130         path.gox \
131         reflect.gox \
132         regexp.gox \
133         runtime.gox \
134         sort.gox \
135         strconv.gox \
136         strings.gox \
137         sync.gox \
138         syscall.gox \
139         testing.gox \
140         time.gox \
141         unicode.gox
143 toolexeclibgoarchivedir = $(toolexeclibgodir)/archive
145 toolexeclibgoarchive_DATA = \
146         archive/tar.gox \
147         archive/zip.gox
149 toolexeclibgocompressdir = $(toolexeclibgodir)/compress
151 toolexeclibgocompress_DATA = \
152         compress/bzip2.gox \
153         compress/flate.gox \
154         compress/gzip.gox \
155         compress/lzw.gox \
156         compress/zlib.gox
158 toolexeclibgocontainerdir = $(toolexeclibgodir)/container
160 toolexeclibgocontainer_DATA = \
161         container/heap.gox \
162         container/list.gox \
163         container/ring.gox
165 toolexeclibgocryptodir = $(toolexeclibgodir)/crypto
167 toolexeclibgocrypto_DATA = \
168         crypto/aes.gox \
169         crypto/cipher.gox \
170         crypto/des.gox \
171         crypto/dsa.gox \
172         crypto/ecdsa.gox \
173         crypto/elliptic.gox \
174         crypto/hmac.gox \
175         crypto/md5.gox \
176         crypto/rand.gox \
177         crypto/rc4.gox \
178         crypto/rsa.gox \
179         crypto/sha1.gox \
180         crypto/sha256.gox \
181         crypto/sha512.gox \
182         crypto/subtle.gox \
183         crypto/tls.gox \
184         crypto/x509.gox
186 toolexeclibgocryptox509dir = $(toolexeclibgocryptodir)/x509
188 toolexeclibgocryptox509_DATA = \
189         crypto/x509/pkix.gox
191 toolexeclibgodatabasedir = $(toolexeclibgodir)/database
193 toolexeclibgodatabase_DATA = \
194         database/sql.gox
196 toolexeclibgodatabasesqldir = $(toolexeclibgodatabasedir)/sql
198 toolexeclibgodatabasesql_DATA = \
199         database/sql/driver.gox
201 toolexeclibgodebugdir = $(toolexeclibgodir)/debug
203 toolexeclibgodebug_DATA = \
204         debug/dwarf.gox \
205         debug/elf.gox \
206         debug/gosym.gox \
207         debug/macho.gox \
208         debug/pe.gox \
209         debug/plan9obj.gox
211 toolexeclibgoencodingdir = $(toolexeclibgodir)/encoding
213 toolexeclibgoencoding_DATA = \
214         encoding/ascii85.gox \
215         encoding/asn1.gox \
216         encoding/base32.gox \
217         encoding/base64.gox \
218         encoding/binary.gox \
219         encoding/csv.gox \
220         encoding/gob.gox \
221         encoding/hex.gox \
222         encoding/json.gox \
223         encoding/pem.gox \
224         encoding/xml.gox
226 toolexeclibgoexpdir = $(toolexeclibgodir)/exp
228 toolexeclibgoexp_DATA = \
229         exp/proxy.gox \
230         exp/terminal.gox
232 toolexeclibgogodir = $(toolexeclibgodir)/go
234 toolexeclibgogo_DATA = \
235         go/ast.gox \
236         go/build.gox \
237         go/constant.gox \
238         go/doc.gox \
239         go/format.gox \
240         go/importer.gox \
241         go/parser.gox \
242         go/printer.gox \
243         go/scanner.gox \
244         go/token.gox \
245         go/types.gox
247 toolexeclibgohashdir = $(toolexeclibgodir)/hash
249 toolexeclibgohash_DATA = \
250         hash/adler32.gox \
251         hash/crc32.gox \
252         hash/crc64.gox \
253         hash/fnv.gox
255 toolexeclibgohtmldir = $(toolexeclibgodir)/html
257 toolexeclibgohtml_DATA = \
258         html/template.gox
260 toolexeclibgoimagedir = $(toolexeclibgodir)/image
262 toolexeclibgoimage_DATA = \
263         image/color.gox \
264         image/draw.gox \
265         image/gif.gox \
266         image/jpeg.gox \
267         image/png.gox
269 toolexeclibgoimagecolordir = $(toolexeclibgoimagedir)/color
271 toolexeclibgoimagecolor_DATA = \
272         image/color/palette.gox
274 toolexeclibgoindexdir = $(toolexeclibgodir)/index
276 toolexeclibgoindex_DATA = \
277         index/suffixarray.gox
279 toolexeclibgoiodir = $(toolexeclibgodir)/io
281 toolexeclibgoio_DATA = \
282         io/ioutil.gox
284 toolexeclibgologdir = $(toolexeclibgodir)/log
286 toolexeclibgolog_DATA = \
287         log/syslog.gox
289 toolexeclibgomathdir = $(toolexeclibgodir)/math
291 toolexeclibgomath_DATA = \
292         math/big.gox \
293         math/cmplx.gox \
294         math/rand.gox
296 toolexeclibgomimedir = $(toolexeclibgodir)/mime
298 toolexeclibgomime_DATA = \
299         mime/multipart.gox \
300         mime/quotedprintable.gox
302 toolexeclibgonetdir = $(toolexeclibgodir)/net
304 toolexeclibgonet_DATA = \
305         net/http.gox \
306         net/mail.gox \
307         net/rpc.gox \
308         net/smtp.gox \
309         net/textproto.gox \
310         net/url.gox
312 toolexeclibgonethttpdir = $(toolexeclibgonetdir)/http
314 toolexeclibgonethttp_DATA = \
315         net/http/cgi.gox \
316         net/http/cookiejar.gox \
317         net/http/fcgi.gox \
318         net/http/httptest.gox \
319         net/http/httptrace.gox \
320         net/http/httputil.gox \
321         net/http/pprof.gox
323 toolexeclibgonetrpcdir = $(toolexeclibgonetdir)/rpc
325 toolexeclibgonetrpc_DATA = \
326         net/rpc/jsonrpc.gox
328 toolexeclibgoolddir = $(toolexeclibgodir)/old
330 toolexeclibgoold_DATA = \
331         old/regexp.gox \
332         old/template.gox
334 toolexeclibgoosdir = $(toolexeclibgodir)/os
336 toolexeclibgoos_DATA = \
337         os/exec.gox \
338         os/signal.gox \
339         os/user.gox
341 toolexeclibgopathdir = $(toolexeclibgodir)/path
343 toolexeclibgopath_DATA = \
344         path/filepath.gox
346 toolexeclibgoregexpdir = $(toolexeclibgodir)/regexp
348 toolexeclibgoregexp_DATA = \
349         regexp/syntax.gox
351 toolexeclibgoruntimedir = $(toolexeclibgodir)/runtime
353 toolexeclibgoruntime_DATA = \
354         runtime/debug.gox \
355         runtime/pprof.gox
357 toolexeclibgosyncdir = $(toolexeclibgodir)/sync
359 toolexeclibgosync_DATA = \
360         sync/atomic.gox
362 toolexeclibgotestingdir = $(toolexeclibgodir)/testing
364 toolexeclibgotesting_DATA = \
365         testing/iotest.gox \
366         testing/quick.gox
368 toolexeclibgotextdir = $(toolexeclibgodir)/text
370 toolexeclibgotext_DATA = \
371         text/scanner.gox \
372         text/tabwriter.gox \
373         text/template.gox
375 toolexeclibgotexttemplatedir = $(toolexeclibgotextdir)/template
377 toolexeclibgotexttemplate_DATA = \
378         text/template/parse.gox
380 toolexeclibgounicodedir = $(toolexeclibgodir)/unicode
382 toolexeclibgounicode_DATA = \
383         unicode/utf16.gox \
384         unicode/utf8.gox
386 if HAVE_SYS_MMAN_H
387 runtime_mem_file = runtime/mem.c
388 else
389 runtime_mem_file = runtime/mem_posix_memalign.c
390 endif
392 if LIBGO_IS_RTEMS
393 rtems_task_variable_add_file = runtime/rtems-task-variable-add.c
394 else
395 rtems_task_variable_add_file =
396 endif
398 if LIBGO_IS_LINUX
399 runtime_thread_files = runtime/thread-linux.c
400 else
401 runtime_thread_files = runtime/thread-sema.c
402 endif
404 if LIBGO_IS_LINUX
405 runtime_getncpu_file = runtime/getncpu-linux.c
406 else
407 if LIBGO_IS_DARWIN
408 runtime_getncpu_file = runtime/getncpu-bsd.c
409 else
410 if LIBGO_IS_IRIX
411 runtime_getncpu_file = runtime/getncpu-irix.c
412 else
413 if LIBGO_IS_SOLARIS
414 runtime_getncpu_file = runtime/getncpu-solaris.c
415 else
416 if LIBGO_IS_FREEBSD
417 runtime_getncpu_file = runtime/getncpu-bsd.c
418 else
419 if LIBGO_IS_NETBSD
420 runtime_getncpu_file = runtime/getncpu-bsd.c
421 else
422 runtime_getncpu_file = runtime/getncpu-none.c
423 endif
424 endif
425 endif
426 endif
427 endif
428 endif
430 if LIBGO_IS_LINUX
431 runtime_netpoll_files = runtime/netpoll_epoll.c
432 else
433 if LIBGO_IS_SOLARIS
434 runtime_netpoll_files = runtime/netpoll_select.c
435 else
436 runtime_netpoll_files = runtime/netpoll_kqueue.c
437 endif
438 endif
440 runtime_files = \
441         runtime/go-append.c \
442         runtime/go-assert.c \
443         runtime/go-assert-interface.c \
444         runtime/go-breakpoint.c \
445         runtime/go-caller.c \
446         runtime/go-callers.c \
447         runtime/go-can-convert-interface.c \
448         runtime/go-cdiv.c \
449         runtime/go-cgo.c \
450         runtime/go-check-interface.c \
451         runtime/go-construct-map.c \
452         runtime/go-convert-interface.c \
453         runtime/go-copy.c \
454         runtime/go-defer.c \
455         runtime/go-deferred-recover.c \
456         runtime/go-eface-compare.c \
457         runtime/go-eface-val-compare.c \
458         runtime/go-ffi.c \
459         runtime/go-fieldtrack.c \
460         runtime/go-interface-compare.c \
461         runtime/go-interface-eface-compare.c \
462         runtime/go-interface-val-compare.c \
463         runtime/go-make-slice.c \
464         runtime/go-matherr.c \
465         runtime/go-memclr.c \
466         runtime/go-memcmp.c \
467         runtime/go-memequal.c \
468         runtime/go-memmove.c \
469         runtime/go-nanotime.c \
470         runtime/go-now.c \
471         runtime/go-new.c \
472         runtime/go-nosys.c \
473         runtime/go-panic.c \
474         runtime/go-recover.c \
475         runtime/go-reflect-call.c \
476         runtime/go-runtime-error.c \
477         runtime/go-setenv.c \
478         runtime/go-signal.c \
479         runtime/go-strcmp.c \
480         runtime/go-strslice.c \
481         runtime/go-traceback.c \
482         runtime/go-type-complex.c \
483         runtime/go-type-eface.c \
484         runtime/go-type-float.c \
485         runtime/go-type-identity.c \
486         runtime/go-type-interface.c \
487         runtime/go-type-string.c \
488         runtime/go-typedesc-equal.c \
489         runtime/go-unsafe-new.c \
490         runtime/go-unsafe-newarray.c \
491         runtime/go-unsafe-pointer.c \
492         runtime/go-unsetenv.c \
493         runtime/go-unwind.c \
494         runtime/go-varargs.c \
495         runtime/env_posix.c \
496         runtime/heapdump.c \
497         runtime/mcache.c \
498         runtime/mcentral.c \
499         $(runtime_mem_file) \
500         runtime/mfixalloc.c \
501         runtime/mgc0.c \
502         runtime/mheap.c \
503         runtime/msize.c \
504         $(runtime_netpoll_files) \
505         runtime/panic.c \
506         runtime/parfor.c \
507         runtime/print.c \
508         runtime/proc.c \
509         runtime/runtime.c \
510         runtime/signal_unix.c \
511         runtime/thread.c \
512         $(runtime_thread_files) \
513         runtime/yield.c \
514         $(rtems_task_variable_add_file) \
515         cpuprof.c \
516         go-iface.c \
517         lfstack.c \
518         malloc.c \
519         mprof.c \
520         netpoll.c \
521         rdebug.c \
522         reflect.c \
523         runtime1.c \
524         sigqueue.c \
525         time.c \
526         $(runtime_getncpu_file)
528 goc2c.$(OBJEXT): runtime/goc2c.c
529         $(CC_FOR_BUILD) -c $(CFLAGS_FOR_BUILD) $<
531 goc2c: goc2c.$(OBJEXT)
532         $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@ $<
534 malloc.c: $(srcdir)/runtime/malloc.goc goc2c
535         ./goc2c $< > $@.tmp
536         mv -f $@.tmp $@
538 mprof.c: $(srcdir)/runtime/mprof.goc goc2c
539         ./goc2c $< > $@.tmp
540         mv -f $@.tmp $@
542 netpoll.c: $(srcdir)/runtime/netpoll.goc goc2c
543         ./goc2c $< > $@.tmp
544         mv -f $@.tmp $@
546 reflect.c: $(srcdir)/runtime/reflect.goc goc2c
547         ./goc2c $< > $@.tmp
548         mv -f $@.tmp $@
550 runtime1.c: $(srcdir)/runtime/runtime1.goc goc2c
551         ./goc2c $< > $@.tmp
552         mv -f $@.tmp $@
554 sema.c: $(srcdir)/runtime/sema.goc goc2c
555         ./goc2c $< > $@.tmp
556         mv -f $@.tmp $@
558 sigqueue.c: $(srcdir)/runtime/sigqueue.goc goc2c
559         ./goc2c --go-pkgpath os_signal $< > $@.tmp
560         mv -f $@.tmp $@
562 time.c: $(srcdir)/runtime/time.goc goc2c
563         ./goc2c $< > $@.tmp
564         mv -f $@.tmp $@
566 %.c: $(srcdir)/runtime/%.goc goc2c
567         ./goc2c $< > $@.tmp
568         mv -f $@.tmp $@
570 version.go: s-version; @true
571 s-version: Makefile
572         rm -f version.go.tmp
573         echo "package sys" > version.go.tmp
574         echo 'const DefaultGoroot = "$(prefix)"' >> version.go.tmp
575         echo 'const TheVersion = "'`cat $(srcdir)/VERSION | sed 1q`' '`$(GOC) --version | sed 1q`'"' >> version.go.tmp
576         echo 'const GOARCH = "'$(GOARCH)'"' >> version.go.tmp
577         echo 'const GOOS = "'$(GOOS)'"' >> version.go.tmp
578         echo 'const GccgoToolDir = "$(libexecsubdir)"' >> version.go.tmp
579         echo >> version.go.tmp
580         echo "type ArchFamilyType int" >> version.go.tmp
581         echo >> version.go.tmp
582         echo "const (" >> version.go.tmp
583         echo "  UNKNOWN ArchFamilyType = iota" >> version.go.tmp
584         for a in $(ALLGOARCHFAMILY); do \
585           echo "        $${a}" >> version.go.tmp; \
586         done
587         echo ")" >> version.go.tmp
588         echo >> version.go.tmp
589         for a in $(ALLGOARCH); do \
590           f=`echo $${a} | sed -e 's/\(.\).*/\1/' -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`; \
591           n="$${f}`echo $${a} | sed -e 's/.//'`"; \
592           if test "$${a}" = "$(GOARCH)"; then \
593             echo "const Goarch$${n} = 1" >> version.go.tmp; \
594           else \
595             echo "const Goarch$${n} = 0" >> version.go.tmp; \
596           fi; \
597         done
598         echo >> version.go.tmp
599         echo "const (" >> version.go.tmp
600         echo "  ArchFamily = $(GOARCH_FAMILY)" >> version.go.tmp
601         echo "  BigEndian = $(GOARCH_BIGENDIAN)" >> version.go.tmp
602         echo "  CacheLineSize = $(GOARCH_CACHELINESIZE)" >> version.go.tmp
603         echo "  PhysPageSize = $(GOARCH_PHYSPAGESIZE)" >> version.go.tmp
604         echo "  PCQuantum = $(GOARCH_PCQUANTUM)" >> version.go.tmp
605         echo "  Int64Align = $(GOARCH_INT64ALIGN)" >> version.go.tmp
606         echo "  HugePageSize = $(GOARCH_HUGEPAGESIZE)" >> version.go.tmp
607         echo "  MinFrameSize = $(GOARCH_MINFRAMESIZE)" >> version.go.tmp
608         echo ")" >> version.go.tmp
609         echo >> version.go.tmp
610         for a in $(ALLGOOS); do \
611           f=`echo $${a} | sed -e 's/\(.\).*/\1/' -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`; \
612           n="$${f}`echo $${a} | sed -e 's/.//'`"; \
613           if test "$${a}" = "$(GOOS)"; then \
614             echo "const Goos$${n} = 1" >> version.go.tmp; \
615           else \
616             echo "const Goos$${n} = 0" >> version.go.tmp; \
617           fi; \
618         done
619         echo >> version.go.tmp
620         echo "type Uintreg uintptr" >> version.go.tmp
621         $(SHELL) $(srcdir)/mvifdiff.sh version.go.tmp version.go
622         $(STAMP) $@
624 runtime_sysinfo.go: s-runtime_sysinfo; @true
625 s-runtime_sysinfo: $(srcdir)/mkrsysinfo.sh gen-sysinfo.go
626         $(SHELL) $(srcdir)/mkrsysinfo.sh
627         $(SHELL) $(srcdir)/mvifdiff.sh tmp-runtime_sysinfo.go runtime_sysinfo.go
628         $(STAMP) $@
630 noinst_DATA = zstdpkglist.go
632 # Generate the list of go std packages that were included in libgo
633 zstdpkglist.go: s-zstdpkglist; @true
634 s-zstdpkglist: Makefile
635         rm -f zstdpkglist.go.tmp
636         echo 'package main' > zstdpkglist.go.tmp
637         echo "" >> zstdpkglist.go.tmp
638         echo 'var stdpkg = map[string]bool{' >> zstdpkglist.go.tmp
639         echo $(libgo_go_objs) 'unsafe.lo' 'runtime/cgo.lo' | sed 's/\.lo /\": true,\n/g' | sed 's/\.lo/\": true,/' | sed 's/-go//' | grep -v _c | sed 's/^/\t\"/' | sort | uniq >> zstdpkglist.go.tmp
640         echo '}' >> zstdpkglist.go.tmp
641         $(SHELL) $(srcdir)/mvifdiff.sh zstdpkglist.go.tmp zstdpkglist.go
642         $(STAMP) $@
644 if LIBGO_IS_LINUX
645 syscall_epoll_file = epoll.go
646 else
647 syscall_epoll_file =
648 endif
650 extra_go_files_syscall = \
651         libcalls.go \
652         sysinfo.go \
653         syscall_arch.go \
654         $(syscall_epoll_file)
656 libcalls.go: s-libcalls; @true
657 s-libcalls: libcalls-list go/syscall/mksyscall.awk $(srcdir)/go/syscall/*.go
658         rm -f libcalls.go.tmp
659         $(AWK) -f $(srcdir)/go/syscall/mksyscall.awk `cat libcalls-list` > libcalls.go.tmp
660         $(SHELL) $(srcdir)/mvifdiff.sh libcalls.go.tmp libcalls.go
661         $(STAMP) $@
663 libcalls-list: s-libcalls-list; @true
664 s-libcalls-list: Makefile $(srcdir)/go/syscall/*.go
665         rm -f libcalls-list.tmp
666         $(SHELL) $(srcdir)/match.sh --goarch=$(GOARCH) --goos=$(GOOS) --srcdir=$(srcdir)/go/syscall $(matchargs_syscall) > libcalls-list.tmp
667         $(SHELL) $(srcdir)/mvifdiff.sh libcalls-list.tmp libcalls-list
668         $(STAMP) $@
670 syscall_arch.go: s-syscall_arch; @true
671 s-syscall_arch: Makefile
672         rm -f syscall_arch.go.tmp
673         echo "package syscall" > syscall_arch.go.tmp
674         echo 'const ARCH = "'$(GOARCH)'"' >> syscall_arch.go.tmp
675         echo 'const OS = "'$(GOOS)'"' >> syscall_arch.go.tmp
676         $(SHELL) $(srcdir)/mvifdiff.sh syscall_arch.go.tmp syscall_arch.go
677         $(STAMP) $@
679 SYSINFO_FLAGS = \
680         $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
681         $(CPPFLAGS) $(OSCFLAGS) -O
683 gen-sysinfo.go: s-gen-sysinfo; @true
684 s-gen-sysinfo: $(srcdir)/sysinfo.c config.h
685         $(CC) $(SYSINFO_FLAGS) -fdump-go-spec=tmp-gen-sysinfo.go -std=gnu99 -S -o sysinfo.s $(srcdir)/sysinfo.c
686         rm -f sysinfo.s
687         $(SHELL) $(srcdir)/mvifdiff.sh tmp-gen-sysinfo.go gen-sysinfo.go
688         $(STAMP) $@
690 errno.i: s-errno; @true
691 s-errno:
692         echo '#include <errno.h>' | $(CC) $(SYSINFO_FLAGS) -x c - -E -dM > tmp-errno.i
693         $(SHELL) $(srcdir)/mvifdiff.sh tmp-errno.i errno.i
694         $(STAMP) $@
696 sysinfo.go: s-sysinfo; @true
697 s-sysinfo: $(srcdir)/mksysinfo.sh gen-sysinfo.go errno.i
698         $(SHELL) $(srcdir)/mksysinfo.sh
699         $(SHELL) $(srcdir)/mvifdiff.sh tmp-sysinfo.go sysinfo.go
700         $(STAMP) $@
702 # The epoll struct has an embedded union and is packed on x86_64,
703 # which is too complicated for mksysinfo.sh.  We find the offset of
704 # the only field we care about in configure.ac, and generate the
705 # struct here.
706 epoll.go: s-epoll; @true
707 s-epoll: Makefile
708         rm -f epoll.go.tmp
709         echo 'package syscall' > epoll.go.tmp
710         echo 'type EpollEvent struct {' >> epoll.go.tmp
711         echo '  Events uint32' >> epoll.go.tmp
712         case "$(SIZEOF_STRUCT_EPOLL_EVENT),$(STRUCT_EPOLL_EVENT_FD_OFFSET)" in \
713         0,0) echo 1>&2 "*** struct epoll_event data.fd offset unknown"; \
714            exit 1; ;; \
715         8,4) echo '     Fd int32' >> epoll.go.tmp; ;; \
716         12,4) echo '    Fd int32' >> epoll.go.tmp; \
717            echo '       Pad [4]byte' >> epoll.go.tmp; ;; \
718         12,8) echo '    Pad [4]byte' >> epoll.go.tmp; \
719            echo '       Fd int32' >> epoll.go.tmp; ;; \
720         16,8) echo '    Pad [4]byte' >> epoll.go.tmp; \
721            echo '       Fd int32' >> epoll.go.tmp; \
722            echo '       Pad2 [4]byte' >> epoll.go.tmp; ;; \
723         *) echo 1>&2 "*** struct epoll_event unsupported"; \
724            exit 1; ;; \
725         esac
726         echo '}' >> epoll.go.tmp
727         $(SHELL) $(srcdir)/mvifdiff.sh epoll.go.tmp epoll.go
728         $(STAMP) $@
730 if LIBGO_IS_LINUX
731 syscall_lib_clone_lo = syscall/clone_linux.lo
732 else
733 syscall_lib_clone_lo =
734 endif
736 libgo_go_objs = \
737         bufio.lo \
738         bytes.lo \
739         bytes/index.lo \
740         context.lo \
741         crypto.lo \
742         encoding.lo \
743         errors.lo \
744         expvar.lo \
745         flag.lo \
746         fmt.lo \
747         hash.lo \
748         html.lo \
749         image.lo \
750         io.lo \
751         log.lo \
752         math.lo \
753         mime.lo \
754         net.lo \
755         os.lo \
756         path.lo \
757         reflect-go.lo \
758         reflect/makefunc_ffi_c.lo \
759         regexp.lo \
760         runtime-go.lo \
761         sort.lo \
762         strconv.lo \
763         strings.lo \
764         strings/index.lo \
765         sync.lo \
766         syscall.lo \
767         $(syscall_lib_clone_lo) \
768         syscall/errno.lo \
769         syscall/signame.lo \
770         syscall/wait.lo \
771         testing.lo \
772         time-go.lo \
773         unicode.lo \
774         archive/tar.lo \
775         archive/zip.lo \
776         compress/bzip2.lo \
777         compress/flate.lo \
778         compress/gzip.lo \
779         compress/lzw.lo \
780         compress/zlib.lo \
781         container/heap.lo \
782         container/list.lo \
783         container/ring.lo \
784         crypto/aes.lo \
785         crypto/cipher.lo \
786         crypto/des.lo \
787         crypto/dsa.lo \
788         crypto/ecdsa.lo \
789         crypto/elliptic.lo \
790         crypto/hmac.lo \
791         crypto/md5.lo \
792         crypto/rand.lo \
793         crypto/rc4.lo \
794         crypto/rsa.lo \
795         crypto/sha1.lo \
796         crypto/sha256.lo \
797         crypto/sha512.lo \
798         crypto/subtle.lo \
799         crypto/tls.lo \
800         crypto/x509.lo \
801         crypto/x509/pkix.lo \
802         database/sql.lo \
803         database/sql/driver.lo \
804         debug/dwarf.lo \
805         debug/elf.lo \
806         debug/gosym.lo \
807         debug/macho.lo \
808         debug/pe.lo \
809         debug/plan9obj.lo \
810         encoding/ascii85.lo \
811         encoding/asn1.lo \
812         encoding/base32.lo \
813         encoding/base64.lo \
814         encoding/binary.lo \
815         encoding/csv.lo \
816         encoding/gob.lo \
817         encoding/hex.lo \
818         encoding/json.lo \
819         encoding/pem.lo \
820         encoding/xml.lo \
821         exp/proxy.lo \
822         exp/terminal.lo \
823         html/template.lo \
824         go/ast.lo \
825         go/build.lo \
826         go/constant.lo \
827         go/doc.lo \
828         go/format.lo \
829         go/importer.lo \
830         go/internal/gcimporter.lo \
831         go/internal/gccgoimporter.lo \
832         go/parser.lo \
833         go/printer.lo \
834         go/scanner.lo \
835         go/token.lo \
836         go/types.lo \
837         golang_org/x/net/http2/hpack.lo \
838         golang_org/x/net/lex/httplex.lo \
839         $(golang_org_x_net_route_lo) \
840         hash/adler32.lo \
841         hash/crc32.lo \
842         hash/crc64.lo \
843         hash/fnv.lo \
844         net/http/cgi.lo \
845         net/http/cookiejar.lo \
846         net/http/fcgi.lo \
847         net/http/httptest.lo \
848         net/http/httptrace.lo \
849         net/http/httputil.lo \
850         net/http/internal.lo \
851         net/http/pprof.lo \
852         image/color.lo \
853         image/color/palette.lo \
854         image/draw.lo \
855         image/gif.lo \
856         image/internal/imageutil.lo \
857         image/jpeg.lo \
858         image/png.lo \
859         index/suffixarray.lo \
860         internal/nettrace.lo \
861         internal/race.lo \
862         internal/singleflight.lo \
863         internal/syscall/unix.lo \
864         internal/testenv.lo \
865         internal/trace.lo \
866         io/ioutil.lo \
867         log/syslog.lo \
868         log/syslog/syslog_c.lo \
869         math/big.lo \
870         math/cmplx.lo \
871         math/rand.lo \
872         mime/multipart.lo \
873         mime/quotedprintable.lo \
874         net/http.lo \
875         net/internal/socktest.lo \
876         net/mail.lo \
877         net/rpc.lo \
878         net/smtp.lo \
879         net/textproto.lo \
880         net/url.lo \
881         old/regexp.lo \
882         old/template.lo \
883         os/exec.lo \
884         $(os_lib_inotify_lo) \
885         os/signal.lo \
886         os/user.lo \
887         path/filepath.lo \
888         regexp/syntax.lo \
889         net/rpc/jsonrpc.lo \
890         runtime/debug.lo \
891         runtime/pprof.lo \
892         runtime/internal/atomic.lo \
893         runtime/internal/atomic_c.lo \
894         runtime/internal/sys.lo \
895         sync/atomic.lo \
896         sync/atomic_c.lo \
897         text/scanner.lo \
898         text/tabwriter.lo \
899         text/template.lo \
900         text/template/parse.lo \
901         testing/iotest.lo \
902         testing/quick.lo \
903         unicode/utf16.lo \
904         unicode/utf8.lo
906 libgo_ldflags = \
907         -version-info $(libtool_VERSION) $(PTHREAD_CFLAGS) $(AM_LDFLAGS)
909 libgo_libadd = \
910         $(libgo_go_objs) ../libbacktrace/libbacktrace.la \
911         $(LIBATOMIC) $(LIBFFI) $(PTHREAD_LIBS) $(MATH_LIBS) $(NET_LIBS)
913 libgo_la_SOURCES = $(runtime_files)
914 libgo_la_LDFLAGS = $(libgo_ldflags)
915 libgo_la_LIBADD = $(libgo_libadd)
917 libgo_llgo_la_SOURCES = $(runtime_files)
918 libgo_llgo_la_LDFLAGS = $(libgo_ldflags)
919 libgo_llgo_la_LIBADD = $(libgo_libadd)
921 libgobegin_a_SOURCES = \
922         runtime/go-main.c
924 libgobegin_llgo_a_SOURCES = \
925         runtime/go-main.c
927 # Use -fPIC for libgobegin so that it can be put in a PIE.
928 libgobegin_a_CFLAGS = $(AM_CFLAGS) -fPIC
929 libgobegin_llgo_a_CFLAGS = $(AM_CFLAGS) -fPIC
931 libgolibbegin_a_SOURCES = \
932         runtime/go-libmain.c
934 libgolibbegin_a_CFLAGS = $(AM_CFLAGS) -fPIC
936 libnetgo_a_SOURCES =
937 libnetgo_a_LIBADD = netgo.o
939 # Make sure runtime.inc is built before compiling any .c file.
940 $(libgo_la_OBJECTS): runtime.inc
941 $(libgo_llgo_la_OBJECTS): runtime.inc
942 $(libgobegin_a_OBJECTS): runtime.inc
943 $(libgobegin_llgo_a_OBJECTS): runtime.inc
944 $(libgolibbegin_a_OBJECTS): runtime.inc
946 LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
948 GOCFLAGS = $(CFLAGS)
949 AM_GOCFLAGS = $(STRINGOPS_FLAG) $(GO_SPLIT_STACK)
950 GOCOMPILE = $(GOC) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_GOCFLAGS) $(GOCFLAGS)
952 LTGOCOMPILE = $(LIBTOOL) --tag GO --mode=compile $(GOC) $(INCLUDES) \
953         $(AM_GOCFLAGS) $(GOCFLAGS)
955 GOLINK = $(LIBTOOL) --tag GO --mode-link $(GOC) \
956         $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_GOCFLAGS) $(LTLDFLAGS) -o $@
958 # Build the dependencies for a Go package.
959 BUILDDEPS = \
960         $(MKDIR_P) $(@D); \
961         dir=`echo $@ | sed -e 's/.lo.dep$$//' -e 's/-go//'`; \
962         files=`$(SHELL) $(srcdir)/match.sh --goarch=$(GOARCH) --goos=$(GOOS) --srcdir=$(srcdir)/go/$$dir --extrafiles="$(extra_go_files_$(subst /,_,$(subst -go,,$(subst .lo.dep,,$@))))" $(matchargs_$(subst /,_,$(subst -go,,$(subst .lo.dep,,$@))))`; \
963         $(SHELL) $(srcdir)/godeps.sh `echo $@ | sed -e 's/.dep$$//'` $$files > $@.tmp; \
964         if ! cmp $@.tmp $@ >/dev/null 2>/dev/null; then \
965           rm -f `echo $@ | sed -e 's/\.dep$$//'`; \
966         fi; \
967         mv -f $@.tmp $@
969 # Build the .go files for a package, generating a .lo file.
970 BUILDPACKAGE = \
971         $(MKDIR_P) $(@D); \
972         files=`echo $^ | sed -e 's/[^ ]*\.gox//g' -e 's/[^ ]*\.dep//'`; \
973         $(LTGOCOMPILE) -I . -c -fgo-pkgpath=`echo $@ | sed -e 's/.lo$$//' -e 's/-go$$//'` $($(subst -,_,$(subst .,_,$(subst /,_,$@)))_GOCFLAGS) -o $@ $$files
975 # Build deps for netgo.o.
976 BUILDNETGODEPS = \
977         $(MKDIR_P) $(@D); \
978         files=`$(SHELL) $(srcdir)/match.sh --nocgo --tag=netgo --goarch=$(GOARCH) --goos=$(GOOS) --srcdir=$(srcdir)/go/net`; \
979         $(SHELL) $(srcdir)/godeps.sh netgo.o $$files > $@.tmp; \
980         mv -f $@.tmp $@
982 # Build netgo.o.
983 BUILDNETGO = \
984         $(MKDIR_P) $(@D); \
985         files=`echo $^ | sed -e 's/[^ ]*\.gox//g' -e 's/[^ ]*\.dep//'`; \
986         $(GOCOMPILE) -I . -c -fPIC -fgo-pkgpath=net -o $@ $$files
988 GOTESTFLAGS =
989 GOBENCH = 
991 # Check a package.
992 CHECK = \
993         GC="$(GOC) $(GOCFLAGS) $($(subst /,_,$@)_GOCFLAGS) -L `${PWD_COMMAND}` -L `${PWD_COMMAND}`/.libs"; \
994         export GC; \
995         GOLIBS="$(MATH_LIBS) $(NET_LIBS) $(LIBS)"; \
996         export GOLIBS; \
997         RUNTESTFLAGS="$(RUNTESTFLAGS)"; \
998         export RUNTESTFLAGS; \
999         MAKE="$(MAKE)"; \
1000         export MAKE; \
1001         libgccdir=`${GOC} -print-libgcc-file-name | sed -e 's|/[^/]*$$||'`; \
1002         LD_LIBRARY_PATH="`${PWD_COMMAND}`/.libs:$${libgccdir}:${LD_LIBRARY_PATH}"; \
1003         LD_LIBRARY_PATH=`echo $${LD_LIBRARY_PATH} | sed 's,::*,:,g;s,^:*,,;s,:*$$,,'`; \
1004         export LD_LIBRARY_PATH; \
1005         $(MKDIR_P) $(@D); \
1006         rm -f $@-testsum $@-testlog; \
1007         files=`$(SHELL) $(srcdir)/match.sh --goarch=$(GOARCH) --goos=$(GOOS) --srcdir=$(srcdir)/go/$(@D) --extrafiles="$(extra_go_files_$(subst /,_,$(@D)))" $(matchargs_$(subst /,_,$(@D)))`; \
1008         if test "$(USE_DEJAGNU)" = "yes"; then \
1009           $(SHELL) $(srcdir)/testsuite/gotest --goarch=$(GOARCH) --goos=$(GOOS) --dejagnu=yes --basedir=$(srcdir) --srcdir=$(srcdir)/go/$(@D) --pkgpath="$(@D)" --pkgfiles="$$files" --testname="$(@D)" $(GOTESTFLAGS); \
1010         elif test "$(GOBENCH)" != ""; then \
1011           $(SHELL) $(srcdir)/testsuite/gotest --goarch=$(GOARCH) --goos=$(GOOS) --basedir=$(srcdir) --srcdir=$(srcdir)/go/$(@D) --pkgpath="$(@D)" --pkgfiles="$$files" --bench="$(GOBENCH)" $(GOTESTFLAGS); \
1012         else \
1013           if $(SHELL) $(srcdir)/testsuite/gotest --goarch=$(GOARCH) --goos=$(GOOS) --basedir=$(srcdir) --srcdir=$(srcdir)/go/$(@D) --pkgpath="$(@D)" --pkgfiles="$$files" $(GOTESTFLAGS) >>$@-testlog 2>&1; then \
1014             echo "PASS: $(@D)" >> $@-testlog; \
1015             echo "PASS: $(@D)"; \
1016             echo "PASS: $(@D)" > $@-testsum; \
1017           else \
1018             echo "FAIL: $(@D)" >> $@-testlog; \
1019             cat $@-testlog; \
1020             echo "FAIL: $(@D)" > $@-testsum; \
1021             exit 1; \
1022           fi; \
1023         fi
1025 # Build all packages before checking any.
1026 CHECK_DEPS = \
1027         $(toolexeclibgo_DATA) \
1028         $(toolexeclibgoarchive_DATA) \
1029         $(toolexeclibgocompress_DATA) \
1030         $(toolexeclibgocontainer_DATA) \
1031         $(toolexeclibgocrypto_DATA) \
1032         $(toolexeclibgodebug_DATA) \
1033         $(toolexeclibgoencoding_DATA) \
1034         $(toolexeclibgoexp_DATA) \
1035         $(toolexeclibgogo_DATA) \
1036         $(toolexeclibgohash_DATA) \
1037         $(toolexeclibgoimage_DATA) \
1038         $(toolexeclibgoindex_DATA) \
1039         $(toolexeclibgoio_DATA) \
1040         $(toolexeclibgolog_DATA) \
1041         $(toolexeclibgomath_DATA) \
1042         $(toolexeclibgomime_DATA) \
1043         $(toolexeclibgonet_DATA) \
1044         $(toolexeclibgonethttp_DATA) \
1045         $(toolexeclibgoos_DATA) \
1046         $(toolexeclibgopath_DATA) \
1047         $(toolexeclibgorpc_DATA) \
1048         $(toolexeclibgoruntime_DATA) \
1049         $(toolexeclibgosync_DATA) \
1050         $(toolexeclibgotesting_DATA) \
1051         $(toolexeclibgotext_DATA) \
1052         $(toolexeclibgotexttemplate_DATA) \
1053         $(toolexeclibgounicode_DATA)
1055 if GOC_IS_LLGO
1056 CHECK_DEPS += libgo-llgo.la libgobegin-llgo.a
1057 else
1058 CHECK_DEPS += libgo.la libgobegin.a
1059 endif
1061 @go_include@ bufio.lo.dep
1062 bufio.lo.dep: $(srcdir)/go/bufio/*.go
1063         $(BUILDDEPS)
1064 bufio.lo:
1065         $(BUILDPACKAGE)
1066 bufio/check: $(CHECK_DEPS)
1067         @$(CHECK)
1068 .PHONY: bufio/check
1070 @go_include@ bytes.lo.dep
1071 bytes.lo.dep: $(srcdir)/go/bytes/*.go
1072         $(BUILDDEPS)
1073 bytes.lo:
1074         $(BUILDPACKAGE)
1075 bytes/index.lo: go/bytes/indexbyte.c runtime.inc
1076         @$(MKDIR_P) bytes
1077         $(LTCOMPILE) -c -o bytes/index.lo $(srcdir)/go/bytes/indexbyte.c
1078 bytes/check: $(CHECK_DEPS)
1079         @$(CHECK)
1080 .PHONY: bytes/check
1082 @go_include@ context.lo.dep
1083 context.lo.dep: $(srcdir)/go/context/*.go
1084         $(BUILDDEPS)
1085 context.lo:
1086         $(BUILDPACKAGE)
1087 context/check: $(CHECK_DEPS)
1088         @$(CHECK)
1089 .PHONY: context/check
1091 @go_include@ crypto.lo.dep
1092 crypto.lo.dep: $(srcdir)/go/crypto/*.go
1093         $(BUILDDEPS)
1094 crypto.lo:
1095         $(BUILDPACKAGE)
1096 crypto/check: $(CHECK_DEPS)
1097         @$(CHECK)
1098 .PHONY: crypto/check
1100 @go_include@ encoding.lo.dep
1101 encoding.lo.dep: $(srcdir)/go/encoding/*.go
1102         $(BUILDDEPS)
1103 encoding.lo:
1104         $(BUILDPACKAGE)
1105 encoding/check: $(CHECK_DEPS)
1106         @$(CHECK)
1107 .PHONY: encoding/check
1109 @go_include@ errors.lo.dep
1110 errors.lo.dep: $(srcdir)/go/errors/*.go
1111         $(BUILDDEPS)
1112 errors.lo:
1113         $(BUILDPACKAGE)
1114 errors/check: $(CHECK_DEPS)
1115         @$(CHECK)
1116 .PHONY: errors/check
1118 @go_include@ expvar.lo.dep
1119 expvar.lo.dep: $(srcdir)/go/expvar/*.go
1120         $(BUILDDEPS)
1121 expvar.lo:
1122         $(BUILDPACKAGE)
1123 expvar/check: $(CHECK_DEPS)
1124         @$(CHECK)
1125 .PHONY: expvar/check
1127 @go_include@ flag.lo.dep
1128 flag.lo.dep: $(srcdir)/go/flag/*.go
1129         $(BUILDDEPS)
1130 flag.lo:
1131         $(BUILDPACKAGE)
1132 flag/check: $(CHECK_DEPS)
1133         @$(CHECK)
1134 .PHONY: flag/check
1136 @go_include@ fmt.lo.dep
1137 fmt.lo.dep: $(srcdir)/go/fmt/*.go
1138         $(BUILDDEPS)
1139 fmt.lo:
1140         $(BUILDPACKAGE)
1141 fmt/check: $(CHECK_DEPS)
1142         @$(CHECK)
1143 .PHONY: fmt/check
1145 @go_include@ hash.lo.dep
1146 hash.lo.dep: $(srcdir)/go/hash/*.go
1147         $(BUILDDEPS)
1148 hash.lo:
1149         $(BUILDPACKAGE)
1150 hash/check: $(CHECK_DEPS)
1151         @$(CHECK)
1152 .PHONY: hash/check
1154 @go_include@ html.lo.dep
1155 html.lo.dep: $(srcdir)/go/html/*.go
1156         $(BUILDDEPS)
1157 html.lo:
1158         $(BUILDPACKAGE)
1159 html/check: $(CHECK_DEPS)
1160         @$(CHECK)
1161 .PHONY: html/check
1163 @go_include@ image.lo.dep
1164 image.lo.dep: $(srcdir)/go/image/*.go
1165         $(BUILDDEPS)
1166 image.lo:
1167         $(BUILDPACKAGE)
1168 image/check: $(CHECK_DEPS)
1169         @$(CHECK)
1170 .PHONY: image/check
1172 @go_include@ io.lo.dep
1173 io.lo.dep: $(srcdir)/go/io/*.go
1174         $(BUILDDEPS)
1175 io.lo:
1176         $(BUILDPACKAGE)
1177 io/check: $(CHECK_DEPS)
1178         @$(CHECK)
1179 .PHONY: io/check
1181 @go_include@ log.lo.dep
1182 log.lo.dep: $(srcdir)/go/log/*.go
1183         $(BUILDDEPS)
1184 log.lo:
1185         $(BUILDPACKAGE)
1186 log/check: $(CHECK_DEPS)
1187         @$(CHECK)
1188 .PHONY: log/check
1190 @go_include@ math.lo.dep
1191 math.lo.dep: $(srcdir)/go/math/*.go
1192         $(BUILDDEPS)
1193 math.lo:
1194         $(MKDIR_P) $(@D)
1195         files=`echo $^ | sed -e 's/[^ ]*\.gox//g'`; \
1196         $(LTGOCOMPILE) $(MATH_FLAG) -I . -c -fgo-pkgpath=math -o $@ $$files
1197 math/check: $(CHECK_DEPS)
1198         @$(CHECK)
1199 .PHONY: math/check
1201 @go_include@ mime.lo.dep
1202 mime.lo.dep: $(srcdir)/go/mime/*.go
1203         $(BUILDDEPS)
1204 mime.lo:
1205         $(BUILDPACKAGE)
1206 mime/check: $(CHECK_DEPS)
1207         @$(CHECK)
1208 .PHONY: mime/check
1210 @go_include@ net.lo.dep
1211 net.lo.dep: $(srcdir)/go/net/*.go
1212         $(BUILDDEPS)
1213 net.lo:
1214         $(BUILDPACKAGE)
1215 net/check: $(CHECK_DEPS)
1216         @$(CHECK)
1217 .PHONY: net/check
1219 @go_include@ netgo.o.dep
1220 netgo.o.dep: $(srcdir)/go/net/*.go
1221         $(BUILDNETGODEPS)
1222 netgo.o: netgo.o.dep
1223         $(BUILDNETGO)
1225 if LIBGO_IS_SOLARIS
1226 if HAVE_STAT_TIMESPEC
1227 matchargs_os = --tag=solaristag
1228 else
1229 matchargs_os =
1230 endif
1231 else
1232 matchargs_os =
1233 endif
1235 @go_include@ os.lo.dep
1236 os.lo.dep: $(srcdir)/go/os/*.go
1237         $(BUILDDEPS)
1238 os.lo:
1239         $(BUILDPACKAGE)
1240 os/check: $(CHECK_DEPS)
1241         @$(CHECK)
1242 .PHONY: os/check
1244 @go_include@ path.lo.dep
1245 path.lo.dep: $(srcdir)/go/path/*.go
1246         $(BUILDDEPS)
1247 path.lo:
1248         $(BUILDPACKAGE)
1249 path/check: $(CHECK_DEPS)
1250         @$(CHECK)
1251 .PHONY: path/check
1253 @go_include@ reflect-go.lo.dep
1254 reflect-go.lo.dep: $(srcdir)/go/reflect/*.go
1255         $(BUILDDEPS)
1256 reflect-go.lo:
1257         $(BUILDPACKAGE)
1258 reflect/check: $(CHECK_DEPS)
1259         @$(CHECK)
1260 reflect/makefunc_ffi_c.lo: go/reflect/makefunc_ffi_c.c runtime.inc
1261         @$(MKDIR_P) reflect
1262         $(LTCOMPILE) -c -o $@ $<
1263 .PHONY: reflect/check
1265 @go_include@ regexp.lo.dep
1266 regexp.lo.dep: $(srcdir)/go/regexp/*.go
1267         $(BUILDDEPS)
1268 regexp.lo:
1269         $(BUILDPACKAGE)
1270 regexp/check: $(CHECK_DEPS)
1271         @$(CHECK)
1272 .PHONY: regexp/check
1274 extra_go_files_runtime = runtime_sysinfo.go
1276 @go_include@ runtime-go.lo.dep
1277 runtime-go.lo.dep: $(srcdir)/go/runtime/*.go $(extra_go_files_runtime)
1278         $(BUILDDEPS)
1279 runtime_go_lo_GOCFLAGS = -fgo-c-header=runtime.inc.tmp -fgo-compiling-runtime
1280 runtime-go.lo:
1281         $(BUILDPACKAGE)
1282 runtime.inc: s-runtime-inc; @true
1283 s-runtime-inc: runtime-go.lo Makefile
1284         rm -f runtime.inc.tmp2
1285         grep -v "#define _" runtime.inc.tmp > runtime.inc.tmp2
1286         for pattern in '_G[a-z]' '_P[a-z]' _Max _Lock _Sig _Trace _MHeap _Num; do \
1287           grep "#define $$pattern" runtime.inc.tmp >> runtime.inc.tmp2; \
1288         done
1289         $(SHELL) $(srcdir)/mvifdiff.sh runtime.inc.tmp2 runtime.inc
1290         $(STAMP) $@
1291 runtime_check_GOCFLAGS = -fgo-compiling-runtime
1292 runtime/check: $(CHECK_DEPS)
1293         @$(CHECK)
1294 .PHONY: runtime/check
1296 @go_include@ sort.lo.dep
1297 sort.lo.dep: $(srcdir)/go/sort/*.go
1298         $(BUILDDEPS)
1299 sort.lo:
1300         $(BUILDPACKAGE)
1301 sort/check: $(CHECK_DEPS)
1302         @$(CHECK)
1303 .PHONY: sort/check
1305 @go_include@ strconv.lo.dep
1306 strconv.lo.dep: $(srcdir)/go/strconv/*.go
1307         $(BUILDDEPS)
1308 strconv.lo:
1309         $(BUILDPACKAGE)
1310 strconv/check: $(CHECK_DEPS)
1311         @$(CHECK)
1312 .PHONY: strconv/check
1314 @go_include@ strings.lo.dep
1315 strings.lo.dep: $(srcdir)/go/strings/*.go
1316         $(BUILDDEPS)
1317 strings.lo:
1318         $(BUILDPACKAGE)
1319 strings/index.lo: go/strings/indexbyte.c runtime.inc
1320         @$(MKDIR_P) strings
1321         $(LTCOMPILE) -c -o strings/index.lo $(srcdir)/go/strings/indexbyte.c
1322 strings/check: $(CHECK_DEPS)
1323         @$(CHECK)
1324 .PHONY: strings/check
1326 @go_include@ sync.lo.dep
1327 sync.lo.dep: $(srcdir)/go/sync/*.go
1328         $(BUILDDEPS)
1329 sync.lo:
1330         $(BUILDPACKAGE)
1331 sync/check: $(CHECK_DEPS)
1332         @$(CHECK)
1333 .PHONY: sync/check
1335 @go_include@ testing.lo.dep
1336 testing.lo.dep: $(srcdir)/go/testing/*.go
1337         $(BUILDDEPS)
1338 testing.lo:
1339         $(BUILDPACKAGE)
1340 testing/check: $(CHECK_DEPS)
1341         @$(CHECK)
1342 .PHONY: testing/check
1344 @go_include@ time-go.lo.dep
1345 time-go.lo.dep: $(srcdir)/go/time/*.go
1346         $(BUILDDEPS)
1347 time-go.lo:
1348         $(BUILDPACKAGE)
1349 time/check: $(CHECK_DEPS)
1350         @$(CHECK)
1351 .PHONY: time/check
1353 @go_include@ unicode.lo.dep
1354 unicode.lo.dep: $(srcdir)/go/unicode/*.go
1355         $(BUILDDEPS)
1356 unicode.lo:
1357         $(BUILDPACKAGE)
1358 unicode/check: $(CHECK_DEPS)
1359         @$(CHECK)
1360 .PHONY: unicode/check
1362 @go_include@ archive/tar.lo.dep
1363 archive/tar.lo.dep: $(srcdir)/go/archive/tar/*.go
1364         $(BUILDDEPS)
1365 archive/tar.lo:
1366         $(BUILDPACKAGE)
1367 archive/tar/check: $(CHECK_DEPS)
1368         @$(CHECK)
1369 .PHONY: archive/tar/check
1371 @go_include@ archive/zip.lo.dep
1372 archive/zip.lo.dep: $(srcdir)/go/archive/zip/*.go
1373         $(BUILDDEPS)
1374 archive/zip.lo:
1375         $(BUILDPACKAGE)
1376 archive/zip/check: $(CHECK_DEPS)
1377         @$(CHECK)
1378 .PHONY: archive/zip/check
1380 @go_include@ compress/bzip2.lo.dep
1381 compress/bzip2.lo.dep: $(srcdir)/go/compress/bzip2/*.go
1382         $(BUILDDEPS)
1383 compress/bzip2.lo:
1384         $(BUILDPACKAGE)
1385 compress/bzip2/check: $(CHECK_DEPS)
1386         @$(CHECK)
1387 .PHONY: compress/bzip2/check
1389 @go_include@ compress/flate.lo.dep
1390 compress/flate.lo.dep: $(srcdir)/go/compress/flate/*.go
1391         $(BUILDDEPS)
1392 compress/flate.lo:
1393         $(BUILDPACKAGE)
1394 compress/flate/check: $(CHECK_DEPS)
1395         @$(CHECK)
1396 .PHONY: compress/flate/check
1398 @go_include@ compress/gzip.lo.dep
1399 compress/gzip.lo.dep: $(srcdir)/go/compress/gzip/*.go
1400         $(BUILDDEPS)
1401 compress/gzip.lo:
1402         $(BUILDPACKAGE)
1403 compress/gzip/check: $(CHECK_DEPS)
1404         @$(CHECK)
1405 .PHONY: compress/gzip/check
1407 @go_include@ compress/lzw.lo.dep
1408 compress/lzw.lo.dep: $(srcdir)/go/compress/lzw/*.go
1409         $(BUILDDEPS)
1410 compress/lzw.lo:
1411         $(BUILDPACKAGE)
1412 compress/lzw/check: $(CHECK_DEPS)
1413         @$(CHECK)
1414 .PHONY: compress/lzw/check
1416 @go_include@ compress/zlib.lo.dep
1417 compress/zlib.lo.dep: $(srcdir)/go/compress/zlib/*.go
1418         $(BUILDDEPS)
1419 compress/zlib.lo:
1420         $(BUILDPACKAGE)
1421 compress/zlib/check: $(CHECK_DEPS)
1422         @$(CHECK)
1423 .PHONY: compress/zlib/check
1425 @go_include@ container/heap.lo.dep
1426 container/heap.lo.dep: $(srcdir)/go/container/heap/*.go
1427         $(BUILDDEPS)
1428 container/heap.lo:
1429         $(BUILDPACKAGE)
1430 container/heap/check: $(CHECK_DEPS)
1431         @$(CHECK)
1432 .PHONY: container/heap/check
1434 @go_include@ container/list.lo.dep
1435 container/list.lo.dep: $(srcdir)/go/container/list/*.go
1436         $(BUILDDEPS)
1437 container/list.lo:
1438         $(BUILDPACKAGE)
1439 container/list/check: $(CHECK_DEPS)
1440         @$(CHECK)
1441 .PHONY: container/list/check
1443 @go_include@ container/ring.lo.dep
1444 container/ring.lo.dep: $(srcdir)/go/container/ring/*.go
1445         $(BUILDDEPS)
1446 container/ring.lo:
1447         $(BUILDPACKAGE)
1448 container/ring/check: $(CHECK_DEPS)
1449         @$(CHECK)
1450 .PHONY: container/ring/check
1452 @go_include@ crypto/aes.lo.dep
1453 crypto/aes.lo.dep: $(srcdir)/go/crypto/aes/*.go
1454         $(BUILDDEPS)
1455 crypto/aes.lo:
1456         $(BUILDPACKAGE)
1457 crypto/aes/check: $(CHECK_DEPS)
1458         @$(CHECK)
1459 .PHONY: crypto/aes/check
1461 @go_include@ crypto/cipher.lo.dep
1462 crypto/cipher.lo.dep: $(srcdir)/go/crypto/cipher/*.go
1463         $(BUILDDEPS)
1464 crypto/cipher.lo:
1465         $(BUILDPACKAGE)
1466 crypto/cipher/check: $(CHECK_DEPS)
1467         @$(CHECK)
1468 .PHONY: crypto/cipher/check
1470 @go_include@ crypto/des.lo.dep
1471 crypto/des.lo.dep: $(srcdir)/go/crypto/des/*.go
1472         $(BUILDDEPS)
1473 crypto/des.lo:
1474         $(BUILDPACKAGE)
1475 crypto/des/check: $(CHECK_DEPS)
1476         @$(CHECK)
1477 .PHONY: crypto/des/check
1479 @go_include@ crypto/dsa.lo.dep
1480 crypto/dsa.lo.dep: $(srcdir)/go/crypto/dsa/*.go
1481         $(BUILDDEPS)
1482 crypto/dsa.lo:
1483         $(BUILDPACKAGE)
1484 crypto/dsa/check: $(CHECK_DEPS)
1485         @$(CHECK)
1486 .PHONY: crypto/dsa/check
1488 @go_include@ crypto/ecdsa.lo.dep
1489 crypto/ecdsa.lo.dep: $(srcdir)/go/crypto/ecdsa/*.go
1490         $(BUILDDEPS)
1491 crypto/ecdsa.lo:
1492         $(BUILDPACKAGE)
1493 crypto/ecdsa/check: $(CHECK_DEPS)
1494         @$(CHECK)
1495 .PHONY: crypto/ecdsa/check
1497 @go_include@ crypto/elliptic.lo.dep
1498 crypto/elliptic.lo.dep: $(srcdir)/go/crypto/elliptic/*.go
1499         $(BUILDDEPS)
1500 crypto/elliptic.lo:
1501         $(BUILDPACKAGE)
1502 crypto/elliptic/check: $(CHECK_DEPS)
1503         @$(CHECK)
1504 .PHONY: crypto/elliptic/check
1506 @go_include@ crypto/hmac.lo.dep
1507 crypto/hmac.lo.dep: $(srcdir)/go/crypto/hmac/*.go
1508         $(BUILDDEPS)
1509 crypto/hmac.lo:
1510         $(BUILDPACKAGE)
1511 crypto/hmac/check: $(CHECK_DEPS)
1512         @$(CHECK)
1513 .PHONY: crypto/hmac/check
1515 @go_include@ crypto/md5.lo.dep
1516 crypto/md5.lo.dep: $(srcdir)/go/crypto/md5/*.go
1517         $(BUILDDEPS)
1518 crypto/md5.lo:
1519         $(BUILDPACKAGE)
1520 crypto/md5/check: $(CHECK_DEPS)
1521         @$(CHECK)
1522 .PHONY: crypto/md5/check
1524 @go_include@ crypto/rand.lo.dep
1525 crypto/rand.lo.dep: $(srcdir)/go/crypto/rand/*.go
1526         $(BUILDDEPS)
1527 crypto/rand.lo:
1528         $(BUILDPACKAGE)
1529 crypto/rand/check: $(CHECK_DEPS)
1530         @$(CHECK)
1531 .PHONY: crypto/rand/check
1533 @go_include@ crypto/rc4.lo.dep
1534 crypto/rc4.lo.dep: $(srcdir)/go/crypto/rc4/*.go
1535         $(BUILDDEPS)
1536 crypto/rc4.lo:
1537         $(BUILDPACKAGE)
1538 crypto/rc4/check: $(CHECK_DEPS)
1539         @$(CHECK)
1540 .PHONY: crypto/rc4/check
1542 @go_include@ crypto/rsa.lo.dep
1543 crypto/rsa.lo.dep: $(srcdir)/go/crypto/rsa/*.go
1544         $(BUILDDEPS)
1545 crypto/rsa.lo:
1546         $(BUILDPACKAGE)
1547 crypto/rsa/check: $(CHECK_DEPS)
1548         @$(CHECK)
1549 .PHONY: crypto/rsa/check
1551 @go_include@ crypto/sha1.lo.dep
1552 crypto/sha1.lo.dep: $(srcdir)/go/crypto/sha1/*.go
1553         $(BUILDDEPS)
1554 crypto/sha1.lo:
1555         $(BUILDPACKAGE)
1556 crypto/sha1/check: $(CHECK_DEPS)
1557         @$(CHECK)
1558 .PHONY: crypto/sha1/check
1560 @go_include@ crypto/sha256.lo.dep
1561 crypto/sha256.lo.dep: $(srcdir)/go/crypto/sha256/*.go
1562         $(BUILDDEPS)
1563 crypto/sha256.lo:
1564         $(BUILDPACKAGE)
1565 crypto/sha256/check: $(CHECK_DEPS)
1566         @$(CHECK)
1567 .PHONY: crypto/sha256/check
1569 @go_include@ crypto/sha512.lo.dep
1570 crypto/sha512.lo.dep: $(srcdir)/go/crypto/sha512/*.go
1571         $(BUILDDEPS)
1572 crypto/sha512.lo:
1573         $(BUILDPACKAGE)
1574 crypto/sha512/check: $(CHECK_DEPS)
1575         @$(CHECK)
1576 .PHONY: crypto/sha512/check
1578 @go_include@ crypto/subtle.lo.dep
1579 crypto/subtle.lo.dep: $(srcdir)/go/crypto/subtle/*.go
1580         $(BUILDDEPS)
1581 crypto/subtle.lo:
1582         $(BUILDPACKAGE)
1583 crypto/subtle/check: $(CHECK_DEPS)
1584         @$(CHECK)
1585 .PHONY: crypto/subtle/check
1587 @go_include@ crypto/tls.lo.dep
1588 crypto/tls.lo.dep: $(srcdir)/go/crypto/tls/*.go
1589         $(BUILDDEPS)
1590 crypto/tls.lo:
1591         $(BUILDPACKAGE)
1592 crypto/tls/check: $(CHECK_DEPS)
1593         @$(CHECK)
1594 .PHONY: crypto/tls/check
1596 @go_include@ crypto/x509.lo.dep
1597 crypto/x509.lo.dep: $(srcdir)/go/crypto/x509/*.go
1598         $(BUILDDEPS)
1599 crypto/x509.lo:
1600         $(BUILDPACKAGE)
1601 crypto/x509/check: $(CHECK_DEPS)
1602         @$(CHECK)
1603 .PHONY: crypto/x509/check
1605 @go_include@ crypto/x509/pkix.lo.dep
1606 crypto/x509/pkix.lo.dep: $(srcdir)/go/crypto/x509/pkix/*.go
1607         $(BUILDDEPS)
1608 crypto/x509/pkix.lo:
1609         $(BUILDPACKAGE)
1610 crypto/x509/pkix/check: $(CHECK_DEPS)
1611         @$(CHECK)
1612 .PHONY: crypto/x509/pkix/check
1614 @go_include@ database/sql.lo.dep
1615 database/sql.lo.dep: $(srcdir)/go/database/sql/*.go
1616         $(BUILDDEPS)
1617 database/sql.lo:
1618         $(BUILDPACKAGE)
1619 database/sql/check: $(CHECK_DEPS)
1620         @$(CHECK)
1621 .PHONY: database/sql/check
1623 @go_include@ database/sql/driver.lo.dep
1624 database/sql/driver.lo.dep: $(srcdir)/go/database/sql/driver/*.go
1625         $(BUILDDEPS)
1626 database/sql/driver.lo:
1627         $(BUILDPACKAGE)
1628 database/sql/driver/check: $(CHECK_DEPS)
1629         @$(CHECK)
1630 .PHONY: database/sql/driver/check
1632 @go_include@ debug/dwarf.lo.dep
1633 debug/dwarf.lo.dep: $(srcdir)/go/debug/dwarf/*.go
1634         $(BUILDDEPS)
1635 debug/dwarf.lo:
1636         $(BUILDPACKAGE)
1637 debug/dwarf/check: $(CHECK_DEPS)
1638         @$(CHECK)
1639 .PHONY: debug/dwarf/check
1641 @go_include@ debug/elf.lo.dep
1642 debug/elf.lo.dep: $(srcdir)/go/debug/elf/*.go
1643         $(BUILDDEPS)
1644 debug/elf.lo:
1645         $(BUILDPACKAGE)
1646 debug/elf/check: $(CHECK_DEPS)
1647         @$(CHECK)
1648 .PHONY: debug/elf/check
1650 @go_include@ debug/gosym.lo.dep
1651 debug/gosym.lo.dep: $(srcdir)/go/debug/gosym/*.go
1652         $(BUILDDEPS)
1653 debug/gosym.lo:
1654         $(BUILDPACKAGE)
1655 debug/gosym/check: $(CHECK_DEPS)
1656         @$(CHECK)
1657 .PHONY: debug/gosym/check
1659 @go_include@ debug/macho.lo.dep
1660 debug/macho.lo.dep: $(srcdir)/go/debug/macho/*.go
1661         $(BUILDDEPS)
1662 debug/macho.lo:
1663         $(BUILDPACKAGE)
1664 debug/macho/check: $(CHECK_DEPS)
1665         @$(CHECK)
1666 .PHONY: debug/macho/check
1668 @go_include@ debug/pe.lo.dep
1669 debug/pe.lo.dep: $(srcdir)/go/debug/pe/*.go
1670         $(BUILDDEPS)
1671 debug/pe.lo:
1672         $(BUILDPACKAGE)
1673 debug/pe/check: $(CHECK_DEPS)
1674         @$(CHECK)
1675 .PHONY: debug/pe/check
1677 @go_include@ debug/plan9obj.lo.dep
1678 debug/plan9obj.lo.dep: $(srcdir)/go/debug/plan9obj/*.go
1679         $(BUILDDEPS)
1680 debug/plan9obj.lo:
1681         $(BUILDPACKAGE)
1682 debug/plan9obj/check: $(CHECK_DEPS)
1683         @$(CHECK)
1684 .PHONY: debug/plan9obj/check
1686 @go_include@ encoding/asn1.lo.dep
1687 encoding/asn1.lo.dep: $(srcdir)/go/encoding/asn1/*.go
1688         $(BUILDDEPS)
1689 encoding/asn1.lo:
1690         $(BUILDPACKAGE)
1691 encoding/asn1/check: $(CHECK_DEPS)
1692         @$(CHECK)
1693 .PHONY: encoding/asn1/check
1695 @go_include@ encoding/ascii85.lo.dep
1696 encoding/ascii85.lo.dep: $(srcdir)/go/encoding/ascii85/*.go
1697         $(BUILDDEPS)
1698 encoding/ascii85.lo:
1699         $(BUILDPACKAGE)
1700 encoding/ascii85/check: $(CHECK_DEPS)
1701         @$(CHECK)
1702 .PHONY: encoding/ascii85/check
1704 @go_include@ encoding/base32.lo.dep
1705 encoding/base32.lo.dep: $(srcdir)/go/encoding/base32/*.go
1706         $(BUILDDEPS)
1707 encoding/base32.lo:
1708         $(BUILDPACKAGE)
1709 encoding/base32/check: $(CHECK_DEPS)
1710         @$(CHECK)
1711 .PHONY: encoding/base32/check
1713 @go_include@ encoding/base64.lo.dep
1714 encoding/base64.lo.dep: $(srcdir)/go/encoding/base64/*.go
1715         $(BUILDDEPS)
1716 encoding/base64.lo:
1717         $(BUILDPACKAGE)
1718 encoding/base64/check: $(CHECK_DEPS)
1719         @$(CHECK)
1720 .PHONY: encoding/base64/check
1722 @go_include@ encoding/binary.lo.dep
1723 encoding/binary.lo.dep: $(srcdir)/go/encoding/binary/*.go
1724         $(BUILDDEPS)
1725 encoding/binary.lo:
1726         $(BUILDPACKAGE)
1727 encoding/binary/check: $(CHECK_DEPS)
1728         @$(CHECK)
1729 .PHONY: encoding/binary/check
1731 @go_include@ encoding/csv.lo.dep
1732 encoding/csv.lo.dep: $(srcdir)/go/encoding/csv/*.go
1733         $(BUILDDEPS)
1734 encoding/csv.lo:
1735         $(BUILDPACKAGE)
1736 encoding/csv/check: $(CHECK_DEPS)
1737         @$(CHECK)
1738 .PHONY: encoding/csv/check
1740 @go_include@ encoding/gob.lo.dep
1741 encoding/gob.lo.dep: $(srcdir)/go/encoding/gob/*.go
1742         $(BUILDDEPS)
1743 encoding/gob.lo:
1744         $(BUILDPACKAGE)
1745 encoding/gob/check: $(CHECK_DEPS)
1746         @$(CHECK)
1747 .PHONY: encoding/gob/check
1749 @go_include@ encoding/hex.lo.dep
1750 encoding/hex.lo.dep: $(srcdir)/go/encoding/hex/*.go
1751         $(BUILDDEPS)
1752 encoding/hex.lo:
1753         $(BUILDPACKAGE)
1754 encoding/hex/check: $(CHECK_DEPS)
1755         @$(CHECK)
1756 .PHONY: encoding/hex/check
1758 @go_include@ encoding/json.lo.dep
1759 encoding/json.lo.dep: $(srcdir)/go/encoding/json/*.go
1760         $(BUILDDEPS)
1761 encoding/json.lo:
1762         $(BUILDPACKAGE)
1763 encoding/json/check: $(CHECK_DEPS)
1764         @$(CHECK)
1765 .PHONY: encoding/json/check
1767 @go_include@ encoding/pem.lo.dep
1768 encoding/pem.lo.dep: $(srcdir)/go/encoding/pem/*.go
1769         $(BUILDDEPS)
1770 encoding/pem.lo:
1771         $(BUILDPACKAGE)
1772 encoding/pem/check: $(CHECK_DEPS)
1773         @$(CHECK)
1774 .PHONY: encoding/pem/check
1776 @go_include@ encoding/xml.lo.dep
1777 encoding/xml.lo.dep: $(srcdir)/go/encoding/xml/*.go
1778         $(BUILDDEPS)
1779 encoding/xml.lo:
1780         $(BUILDPACKAGE)
1781 encoding/xml/check: $(CHECK_DEPS)
1782         @$(CHECK)
1783 .PHONY: encoding/xml/check
1785 @go_include@ exp/proxy.lo.dep
1786 exp/proxy.lo.dep: $(srcdir)/go/exp/proxy/*.go
1787         $(BUILDDEPS)
1788 exp/proxy.lo:
1789         $(BUILDPACKAGE)
1790 exp/proxy/check: $(CHECK_DEPS)
1791         @$(CHECK)
1792 .PHONY: exp/proxy/check
1794 @go_include@ exp/terminal.lo.dep
1795 exp/terminal.lo.dep: $(srcdir)/go/exp/terminal/*.go
1796         $(BUILDDEPS)
1797 exp/terminal.lo:
1798         $(BUILDPACKAGE)
1799 exp/terminal/check: $(CHECK_DEPS)
1800         @$(CHECK)
1801 .PHONY: exp/terminal/check
1803 @go_include@ html/template.lo.dep
1804 html/template.lo.dep: $(srcdir)/go/html/template/*.go
1805         $(BUILDDEPS)
1806 html/template.lo:
1807         $(BUILDPACKAGE)
1808 html/template/check: $(CHECK_DEPS)
1809         @$(CHECK)
1810 .PHONY: html/template/check
1812 @go_include@ go/ast.lo.dep
1813 go/ast.lo.dep: $(srcdir)/go/go/ast/*.go
1814         $(BUILDDEPS)
1815 go/ast.lo:
1816         $(BUILDPACKAGE)
1817 go/ast/check: $(CHECK_DEPS)
1818         @$(CHECK)
1819 .PHONY: go/ast/check
1821 @go_include@ go/build.lo.dep
1822 go/build.lo.dep: $(srcdir)/go/go/build/*.go
1823         $(BUILDDEPS)
1824 go/build.lo:
1825         $(BUILDPACKAGE)
1826 go/build/check: $(CHECK_DEPS)
1827         @$(CHECK)
1828 .PHONY: go/build/check
1830 @go_include@ go/constant.lo.dep
1831 go/constant.lo.dep: $(srcdir)/go/go/constant/*.go
1832         $(BUILDDEPS)
1833 go/constant.lo:
1834         $(BUILDPACKAGE)
1835 go/constant/check: $(CHECK_DEPS)
1836         @$(CHECK)
1837 .PHONY: go/constant/check
1839 @go_include@ go/doc.lo.dep
1840 go/doc.lo.dep: $(srcdir)/go/go/doc/*.go
1841         $(BUILDDEPS)
1842 go/doc.lo:
1843         $(BUILDPACKAGE)
1844 go/doc/check: $(CHECK_DEPS)
1845         @$(CHECK)
1846 .PHONY: go/doc/check
1848 @go_include@ go/format.lo.dep
1849 go/format.lo.dep: $(srcdir)/go/go/format/*.go
1850         $(BUILDDEPS)
1851 go/format.lo:
1852         $(BUILDPACKAGE)
1853 go/format/check: $(CHECK_DEPS)
1854         @$(CHECK)
1855 .PHONY: go/format/check
1857 @go_include@ go/importer.lo.dep
1858 go/importer.lo.dep: $(srcdir)/go/go/importer/*.go
1859         $(BUILDDEPS)
1860 go/importer.lo:
1861         $(BUILDPACKAGE)
1862 go/importer/check: $(CHECK_DEPS)
1863         @$(CHECK)
1864 .PHONY: go/importer/check
1866 @go_include@ go/parser.lo.dep
1867 go/parser.lo.dep: $(srcdir)/go/go/parser/*.go
1868         $(BUILDDEPS)
1869 go/parser.lo:
1870         $(BUILDPACKAGE)
1871 go/parser/check: $(CHECK_DEPS)
1872         @$(CHECK)
1873 .PHONY: go/parser/check
1875 @go_include@ go/printer.lo.dep
1876 go/printer.lo.dep: $(srcdir)/go/go/printer/*.go
1877         $(BUILDDEPS)
1878 go/printer.lo:
1879         $(BUILDPACKAGE)
1880 go/printer/check: $(CHECK_DEPS)
1881         @$(CHECK)
1882 .PHONY: go/printer/check
1884 @go_include@ go/scanner.lo.dep
1885 go/scanner.lo.dep: $(srcdir)/go/go/scanner/*.go
1886         $(BUILDDEPS)
1887 go/scanner.lo:
1888         $(BUILDPACKAGE)
1889 go/scanner/check: $(CHECK_DEPS)
1890         @$(CHECK)
1891 .PHONY: go/scanner/check
1893 @go_include@ go/token.lo.dep
1894 go/token.lo.dep: $(srcdir)/go/go/token/*.go
1895         $(BUILDDEPS)
1896 go/token.lo:
1897         $(BUILDPACKAGE)
1898 go/token/check: $(CHECK_DEPS)
1899         @$(CHECK)
1900 .PHONY: go/token/check
1902 @go_include@ go/types.lo.dep
1903 go/types.lo.dep: $(srcdir)/go/go/types/*.go
1904         $(BUILDDEPS)
1905 go/types.lo:
1906         $(BUILDPACKAGE)
1907 go/types/check: $(CHECK_DEPS)
1908         @$(CHECK)
1909 .PHONY: go/types/check
1911 @go_include@ go/internal/gcimporter.lo.dep
1912 go/internal/gcimporter.lo.dep: $(srcdir)/go/go/internal/gcimporter/*.go
1913         $(BUILDDEPS)
1914 go/internal/gcimporter.lo:
1915         $(BUILDPACKAGE)
1916 go/internal/gcimporter/check: $(CHECK_DEPS)
1917         @$(CHECK)
1918 .PHONY: go/internal/gcimporter/check
1920 @go_include@ go/internal/gccgoimporter.lo.dep
1921 go/internal/gccgoimporter.lo.dep: $(srcdir)/go/go/internal/gccgoimporter/*.go
1922         $(BUILDDEPS)
1923 go/internal/gccgoimporter.lo:
1924         $(BUILDPACKAGE)
1925 go/internal/gccgoimporter/check: $(CHECK_DEPS)
1926         @$(CHECK)
1927 .PHONY: go/internal/gccgoimporter/check
1929 @go_include@ golang_org/x/net/http2/hpack.lo.dep
1930 golang_org/x/net/http2/hpack.lo.dep: $(srcdir)/go/golang_org/x/net/http2/hpack/*.go
1931         $(BUILDDEPS)
1932 golang_org/x/net/http2/hpack.lo:
1933         $(BUILDPACKAGE)
1934 golang_org/x/net/http2/hpack/check: $(CHECK_DEPS)
1935         @$(CHECK)
1936 .PHONY: golang_org/x/net/http2/hpack/check
1938 @go_include@ golang_org/x/net/lex/httplex.lo.dep
1939 golang_org/x/net/lex/httplex.lo.dep: $(srcdir)/go/golang_org/x/net/lex/httplex/*.go
1940         $(BUILDDEPS)
1941 golang_org/x/net/lex/httplex.lo:
1942         $(BUILDPACKAGE)
1943 golang_org/x/net/lex/httplex/check: $(CHECK_DEPS)
1944         @$(CHECK)
1945 .PHONY: golang_org/x/net/lex/httplex/check
1947 if LIBGO_IS_BSD
1949 golang_org_x_net_route_lo = \
1950         golang_org/x/net/route/route.lo
1951 golang_org_x_net_route_check = \
1952         golang_org/x/net/route/check
1954 @go_include@ golang_org/x/net/route.lo.dep
1955 golang_org/x/net/route.lo.dep: $(srcdir)/go/golang_org/x/net/route/*.go
1956         $(BUILDDEPS)
1957 golang_org/x/net/route.lo:
1958         $(BUILDPACKAGE)
1959 golang_org/x/net/route/check: $(CHECK_DEPS)
1960         @$(CHECK)
1962 endif
1964 .PHONY: golang_org/x/net/route/check
1966 @go_include@ hash/adler32.lo.dep
1967 hash/adler32.lo.dep: $(srcdir)/go/hash/adler32/*.go
1968         $(BUILDDEPS)
1969 hash/adler32.lo:
1970         $(BUILDPACKAGE)
1971 hash/adler32/check: $(CHECK_DEPS)
1972         @$(CHECK)
1973 .PHONY: hash/adler32/check
1975 @go_include@ hash/crc32.lo.dep
1976 hash/crc32.lo.dep: $(srcdir)/go/hash/crc32/*.go
1977         $(BUILDDEPS)
1978 hash/crc32.lo:
1979         $(BUILDPACKAGE)
1980 hash/crc32/check: $(CHECK_DEPS)
1981         @$(CHECK)
1982 .PHONY: hash/crc32/check
1984 @go_include@ hash/crc64.lo.dep
1985 hash/crc64.lo.dep: $(srcdir)/go/hash/crc64/*.go
1986         $(BUILDDEPS)
1987 hash/crc64.lo:
1988         $(BUILDPACKAGE)
1989 hash/crc64/check: $(CHECK_DEPS)
1990         @$(CHECK)
1991 .PHONY: hash/crc64/check
1993 @go_include@ hash/fnv.lo.dep
1994 hash/fnv.lo.dep: $(srcdir)/go/hash/fnv/*.go
1995         $(BUILDDEPS)
1996 hash/fnv.lo:
1997         $(BUILDPACKAGE)
1998 hash/fnv/check: $(CHECK_DEPS)
1999         @$(CHECK)
2000 .PHONY: hash/fnv/check
2002 @go_include@ image/color.lo.dep
2003 image/color.lo.dep: $(srcdir)/go/image/color/*.go
2004         $(BUILDDEPS)
2005 image/color.lo:
2006         $(BUILDPACKAGE)
2007 image/color/check: $(CHECK_DEPS)
2008         @$(CHECK)
2009 .PHONY: image/color/check
2011 @go_include@ image/color/palette.lo.dep
2012 image/color/palette.lo.dep: $(srcdir)/go/image/color/palette/*.go
2013         $(BUILDDEPS)
2014 image/color/palette.lo:
2015         $(BUILDPACKAGE)
2016 image/color/palette/check: $(CHECK_DEPS)
2017         @$(CHECK)
2018 .PHONY: image/color/palette/check
2020 @go_include@ image/draw.lo.dep
2021 image/draw.lo.dep: $(srcdir)/go/image/draw/*.go
2022         $(BUILDDEPS)
2023 image/draw.lo:
2024         $(BUILDPACKAGE)
2025 image/draw/check: $(CHECK_DEPS)
2026         @$(CHECK)
2027 .PHONY: image/draw/check
2029 @go_include@ image/gif.lo.dep
2030 image/gif.lo.dep: $(srcdir)/go/image/gif/*.go
2031         $(BUILDDEPS)
2032 image/gif.lo:
2033         $(BUILDPACKAGE)
2034 image/gif/check: $(CHECK_DEPS)
2035         @$(CHECK)
2036 .PHONY: image/gif/check
2038 @go_include@ image/internal/imageutil.lo.dep
2039 image/internal/imageutil.lo.dep: $(srcdir)/go/image/internal/imageutil/*.go
2040         $(BUILDDEPS)
2041 image/internal/imageutil.lo:
2042         $(BUILDPACKAGE)
2043 image/internal/imageutil/check: $(CHECK_DEPS)
2044         @$(CHECK)
2045 .PHONY: image/internal/imageutil/check
2047 @go_include@ image/jpeg.lo.dep
2048 image/jpeg.lo.dep: $(srcdir)/go/image/jpeg/*.go
2049         $(BUILDDEPS)
2050 image/jpeg.lo:
2051         $(BUILDPACKAGE)
2052 image/jpeg/check: $(CHECK_DEPS)
2053         @$(CHECK)
2054 .PHONY: image/jpeg/check
2056 @go_include@ image/png.lo.dep
2057 image/png.lo.dep: $(srcdir)/go/image/png/*.go
2058         $(BUILDDEPS)
2059 image/png.lo:
2060         $(BUILDPACKAGE)
2061 image/png/check: $(CHECK_DEPS)
2062         @$(CHECK)
2063 .PHONY: image/png/check
2065 @go_include@ index/suffixarray.lo.dep
2066 index/suffixarray.lo.dep: $(srcdir)/go/index/suffixarray/*.go
2067         $(BUILDDEPS)
2068 index/suffixarray.lo:
2069         $(BUILDPACKAGE)
2070 index/suffixarray/check: $(CHECK_DEPS)
2071         @$(CHECK)
2072 .PHONY: index/suffixarray/check
2074 @go_include@ internal/nettrace.lo.dep
2075 internal/nettrace.lo.dep: $(srcdir)/go/internal/nettrace/*.go
2076         $(BUILDDEPS)
2077 internal/nettrace.lo:
2078         $(BUILDPACKAGE)
2079 internal/nettrace/check: $(CHECK_DEPS)
2080         @$(CHECK)
2081 .PHONY: internal/nettrace/check
2083 @go_include@ internal/race.lo.dep
2084 internal/race.lo.dep: $(srcdir)/go/internal/race/*.go
2085         $(BUILDDEPS)
2086 internal/race.lo:
2087         $(BUILDPACKAGE)
2088 internal/race/check: $(CHECK_DEPS)
2089         @$(CHECK)
2090 .PHONY: internal/race/check
2092 @go_include@ internal/singleflight.lo.dep
2093 internal/singleflight.lo.dep: $(srcdir)/go/internal/singleflight/*.go
2094         $(BUILDDEPS)
2095 internal/singleflight.lo:
2096         $(BUILDPACKAGE)
2097 internal/singleflight/check: $(CHECK_DEPS)
2098         @$(CHECK)
2099 .PHONY: internal/singleflight/check
2101 @go_include@ internal/syscall/unix.lo.dep
2102 internal/syscall/unix.lo.dep: $(srcdir)/go/internal/syscall/unix/*.go
2103         $(BUILDDEPS)
2104 internal/syscall/unix.lo:
2105         $(BUILDPACKAGE)
2106 internal/syscall/unix/check: $(CHECK_DEPS)
2107         @$(CHECK)
2108 .PHONY: internal/syscall/unix/check
2110 @go_include@ internal/testenv.lo.dep
2111 internal/testenv.lo.dep: $(srcdir)/go/internal/testenv/*.go
2112         $(BUILDDEPS)
2113 internal/testenv.lo:
2114         $(BUILDPACKAGE)
2115 internal/testenv/check: $(CHECK_DEPS)
2116         @$(CHECK)
2117 .PHONY: internal/testenv/check
2119 @go_include@ internal/trace.lo.dep
2120 internal/trace.lo.dep: $(srcdir)/go/internal/trace/*.go
2121         $(BUILDDEPS)
2122 internal/trace.lo:
2123         $(BUILDPACKAGE)
2124 internal/trace/check: $(CHECK_DEPS)
2125         @$(CHECK)
2126 .PHONY: internal/trace/check
2128 @go_include@ io/ioutil.lo.dep
2129 io/ioutil.lo.dep: $(srcdir)/go/io/ioutil/*.go
2130         $(BUILDDEPS)
2131 io/ioutil.lo:
2132         $(BUILDPACKAGE)
2133 io/ioutil/check: $(CHECK_DEPS)
2134         @$(CHECK)
2135 .PHONY: io/ioutil/check
2137 @go_include@ log/syslog.lo.dep
2138 log/syslog.lo.dep: $(srcdir)/go/log/syslog/*.go
2139         $(BUILDDEPS)
2140 log/syslog.lo:
2141         $(BUILDPACKAGE)
2142 log/syslog/syslog_c.lo: go/log/syslog/syslog_c.c runtime.inc log/syslog.lo
2143         @$(MKDIR_P) log/syslog
2144         $(LTCOMPILE) -c -o $@ $(srcdir)/go/log/syslog/syslog_c.c
2145 log/syslog/check: $(CHECK_DEPS)
2146         @$(CHECK)
2147 .PHONY: log/syslog/check
2149 @go_include@ math/big.lo.dep
2150 math/big.lo.dep: $(srcdir)/go/math/big/*.go
2151         $(BUILDDEPS)
2152 math/big.lo:
2153         $(BUILDPACKAGE)
2154 math/big/check: $(CHECK_DEPS)
2155         @$(CHECK)
2156 .PHONY: math/big/check
2158 @go_include@ math/cmplx.lo.dep
2159 math/cmplx.lo.dep: $(srcdir)/go/math/cmplx/*.go
2160         $(BUILDDEPS)
2161 math/cmplx.lo:
2162         $(BUILDPACKAGE)
2163 math/cmplx/check: $(CHECK_DEPS)
2164         @$(CHECK)
2165 .PHONY: math/cmplx/check
2167 @go_include@ math/rand.lo.dep
2168 math/rand.lo.dep: $(srcdir)/go/math/rand/*.go
2169         $(BUILDDEPS)
2170 math/rand.lo:
2171         $(BUILDPACKAGE)
2172 math/rand/check: $(CHECK_DEPS)
2173         @$(CHECK)
2174 .PHONY: math/rand/check
2176 @go_include@ mime/multipart.lo.dep
2177 mime/multipart.lo.dep: $(srcdir)/go/mime/multipart/*.go
2178         $(BUILDDEPS)
2179 mime/multipart.lo:
2180         $(BUILDPACKAGE)
2181 mime/multipart/check: $(CHECK_DEPS)
2182         @$(CHECK)
2183 .PHONY: mime/multipart/check
2185 @go_include@ mime/quotedprintable.lo.dep
2186 mime/quotedprintable.lo.dep: $(srcdir)/go/mime/quotedprintable/*.go
2187         $(BUILDDEPS)
2188 mime/quotedprintable.lo:
2189         $(BUILDPACKAGE)
2190 mime/quotedprintable/check: $(CHECK_DEPS)
2191         @$(CHECK)
2192 .PHONY: mime/quotedprintable/check
2194 @go_include@ net/http.lo.dep
2195 net/http.lo.dep: $(srcdir)/go/net/http/*.go
2196         $(BUILDDEPS)
2197 net/http.lo:
2198         $(BUILDPACKAGE)
2199 net/http/check: $(CHECK_DEPS)
2200         @$(CHECK)
2201 .PHONY: net/http/check
2203 @go_include@ net/mail.lo.dep
2204 net/mail.lo.dep: $(srcdir)/go/net/mail/*.go
2205         $(BUILDDEPS)
2206 net/mail.lo:
2207         $(BUILDPACKAGE)
2208 net/mail/check: $(CHECK_DEPS)
2209         @$(CHECK)
2210 .PHONY: net/mail/check
2212 @go_include@ net/rpc.lo.dep
2213 net/rpc.lo.dep: $(srcdir)/go/net/rpc/*.go
2214         $(BUILDDEPS)
2215 net/rpc.lo:
2216         $(BUILDPACKAGE)
2217 net/rpc/check: $(CHECK_DEPS)
2218         @$(CHECK)
2219 .PHONY: net/rpc/check
2221 @go_include@ net/smtp.lo.dep
2222 net/smtp.lo.dep: $(srcdir)/go/net/smtp/*.go
2223         $(BUILDDEPS)
2224 net/smtp.lo:
2225         $(BUILDPACKAGE)
2226 net/smtp/check: $(CHECK_DEPS)
2227         @$(CHECK)
2228 .PHONY: net/smtp/check
2230 @go_include@ net/url.lo.dep
2231 net/url.lo.dep: $(srcdir)/go/net/url/*.go
2232         $(BUILDDEPS)
2233 net/url.lo:
2234         $(BUILDPACKAGE)
2235 net/url/check: $(CHECK_DEPS)
2236         @$(CHECK)
2237 .PHONY: net/url/check
2239 @go_include@ net/textproto.lo.dep
2240 net/textproto.lo.dep: $(srcdir)/go/net/textproto/*.go
2241         $(BUILDDEPS)
2242 net/textproto.lo:
2243         $(BUILDPACKAGE)
2244 net/textproto/check: $(CHECK_DEPS)
2245         @$(CHECK)
2246 .PHONY: net/textproto/check
2248 @go_include@ net/http/cgi.lo.dep
2249 net/http/cgi.lo.dep: $(srcdir)/go/net/http/cgi/*.go
2250         $(BUILDDEPS)
2251 net/http/cgi.lo:
2252         $(BUILDPACKAGE)
2253 net/http/cgi/check: $(CHECK_DEPS)
2254         @$(CHECK)
2255 .PHONY: net/http/cgi/check
2257 @go_include@ net/http/cookiejar.lo.dep
2258 net/http/cookiejar.lo.dep: $(srcdir)/go/net/http/cookiejar/*.go
2259         $(BUILDDEPS)
2260 net/http/cookiejar.lo:
2261         $(BUILDPACKAGE)
2262 net/http/cookiejar/check: $(CHECK_DEPS)
2263         @$(CHECK)
2264 .PHONY: net/http/cookiejar/check
2266 @go_include@ net/http/fcgi.lo.dep
2267 net/http/fcgi.lo.dep: $(srcdir)/go/net/http/fcgi/*.go
2268         $(BUILDDEPS)
2269 net/http/fcgi.lo:
2270         $(BUILDPACKAGE)
2271 net/http/fcgi/check: $(CHECK_DEPS)
2272         @$(CHECK)
2273 .PHONY: net/http/fcgi/check
2275 @go_include@ net/http/httptest.lo.dep
2276 net/http/httptest.lo.dep: $(srcdir)/go/net/http/httptest/*.go
2277         $(BUILDDEPS)
2278 net/http/httptest.lo:
2279         $(BUILDPACKAGE)
2280 net/http/httptest/check: $(check_deps)
2281         @$(CHECK)
2282 .PHONY: net/http/httptest/check
2284 @go_include@ net/http/httptrace.lo.dep
2285 net/http/httptrace.lo.dep: $(srcdir)/go/net/http/httptrace/*.go
2286         $(BUILDDEPS)
2287 net/http/httptrace.lo:
2288         $(BUILDPACKAGE)
2289 net/http/httptrace/check: $(check_deps)
2290         @$(CHECK)
2291 .PHONY: net/http/httptrace/check
2293 @go_include@ net/http/httputil.lo.dep
2294 net/http/httputil.lo.dep: $(srcdir)/go/net/http/httputil/*.go
2295         $(BUILDDEPS)
2296 net/http/httputil.lo:
2297         $(BUILDPACKAGE)
2298 net/http/httputil/check: $(check_deps)
2299         @$(CHECK)
2300 .PHONY: net/http/httputil/check
2302 @go_include@ net/http/internal.lo.dep
2303 net/http/internal.lo.dep: $(srcdir)/go/net/http/internal/*.go
2304         $(BUILDDEPS)
2305 net/http/internal.lo:
2306         $(BUILDPACKAGE)
2307 net/http/internal/check: $(CHECK_DEPS)
2308         @$(CHECK)
2309 .PHONY: net/http/internal/check
2311 @go_include@ net/http/pprof.lo.dep
2312 net/http/pprof.lo.dep: $(srcdir)/go/net/http/pprof/*.go
2313         $(BUILDDEPS)
2314 net/http/pprof.lo:
2315         $(BUILDPACKAGE)
2316 net/http/pprof/check: $(CHECK_DEPS)
2317         @$(CHECK)
2318 .PHONY: net/http/pprof/check
2320 @go_include@ net/internal/socktest.lo.dep
2321 net/internal/socktest.lo.dep: $(srcdir)/go/net/internal/socktest/*.go
2322         $(BUILDDEPS)
2323 net/internal/socktest.lo:
2324         $(BUILDPACKAGE)
2325 net/internal/socktest/check: $(CHECK_DEPS)
2326         @$(CHECK)
2327 .PHONY: net/internal/socktest/check
2329 @go_include@ net/rpc/jsonrpc.lo.dep
2330 net/rpc/jsonrpc.lo.dep: $(srcdir)/go/net/rpc/jsonrpc/*.go
2331         $(BUILDDEPS)
2332 net/rpc/jsonrpc.lo:
2333         $(BUILDPACKAGE)
2334 net/rpc/jsonrpc/check: $(CHECK_DEPS)
2335         @$(CHECK)
2336 .PHONY: net/rpc/jsonrpc/check
2338 @go_include@ old/regexp.lo.dep
2339 old/regexp.lo.dep: $(srcdir)/go/old/regexp/*.go
2340         $(BUILDDEPS)
2341 old/regexp.lo:
2342         $(BUILDPACKAGE)
2343 old/regexp/check: $(CHECK_DEPS)
2344         @$(CHECK)
2345 .PHONY: old/regexp/check
2347 @go_include@ old/template.lo.dep
2348 old/template.lo.dep: $(srcdir)/go/old/template/*.go
2349         $(BUILDDEPS)
2350 old/template.lo:
2351         $(BUILDPACKAGE)
2352 old/template/check: $(CHECK_DEPS)
2353         @$(CHECK)
2354 .PHONY: old/template/check
2356 @go_include@ os/exec.lo.dep
2357 os/exec.lo.dep: $(srcdir)/go/os/exec/*.go
2358         $(BUILDDEPS)
2359 os/exec.lo:
2360         $(BUILDPACKAGE)
2361 os/exec/check: $(CHECK_DEPS)
2362         @$(CHECK)
2363 .PHONY: os/exec/check
2365 @go_include@ os/signal.lo.dep
2366 os/signal.lo.dep: $(srcdir)/go/os/signal/*.go
2367         $(BUILDDEPS)
2368 os/signal.lo:
2369         $(BUILDPACKAGE)
2370 os/signal/check: $(CHECK_DEPS)
2371         @$(CHECK)
2372 .PHONY: os/signal/check
2374 @go_include@ os/user.lo.dep
2375 os/user.lo.dep: $(srcdir)/go/os/user/*.go
2376         $(BUILDDEPS)
2377 os/user.lo:
2378         $(BUILDPACKAGE)
2379 os/user/check: $(CHECK_DEPS)
2380         @$(CHECK)
2381 .PHONY: os/user/check
2383 @go_include@ path/filepath.lo.dep
2384 path/filepath.lo.dep: $(srcdir)/go/path/filepath/*.go
2385         $(BUILDDEPS)
2386 path/filepath.lo:
2387         $(BUILDPACKAGE)
2388 path/filepath/check: $(CHECK_DEPS)
2389         @$(CHECK)
2390 .PHONY: path/filepath/check
2392 @go_include@ regexp/syntax.lo.dep
2393 regexp/syntax.lo.dep: $(srcdir)/go/regexp/syntax/*.go
2394         $(BUILDDEPS)
2395 regexp/syntax.lo:
2396         $(BUILDPACKAGE)
2397 regexp/syntax/check: $(CHECK_DEPS)
2398         @$(CHECK)
2399 .PHONY: regexp/syntax/check
2401 @go_include@ runtime/debug.lo.dep
2402 runtime/debug.lo.dep: $(srcdir)/go/runtime/debug/*.go
2403         $(BUILDDEPS)
2404 runtime/debug.lo:
2405         $(BUILDPACKAGE)
2406 runtime/debug/check: $(CHECK_DEPS)
2407         @$(CHECK)
2408 .PHONY: runtime/debug/check
2410 @go_include@ runtime/pprof.lo.dep
2411 runtime/pprof.lo.dep: $(srcdir)/go/runtime/pprof/*.go
2412         $(BUILDDEPS)
2413 runtime/pprof.lo:
2414         $(BUILDPACKAGE)
2415 runtime/pprof/check: $(CHECK_DEPS)
2416         @$(CHECK)
2417 .PHONY: runtime/pprof/check
2418 # At least for now, we need -static-libgo for this test, because
2419 # otherwise we can't get the line numbers.
2420 # Also use -fno-inline to get better results from the memory profiler.
2421 runtime_pprof_check_GOCFLAGS = -static-libgo -fno-inline
2423 @go_include@ runtime/internal/atomic.lo.dep
2424 runtime/internal/atomic.lo.dep: $(srcdir)/go/runtime/internal/atomic/*.go
2425         $(BUILDDEPS)
2426 runtime_internal_atomic_lo_GOCFLAGS = -fgo-compiling-runtime
2427 runtime/internal/atomic.lo:
2428         $(BUILDPACKAGE)
2429 runtime/internal/atomic_c.lo: go/runtime/internal/atomic/atomic.c runtime.inc runtime/internal/atomic.lo
2430         $(LTCOMPILE) -c -o $@ $(srcdir)/go/runtime/internal/atomic/atomic.c
2431 runtime/internal/atomic/check: $(CHECK_DEPS)
2432         @$(CHECK)
2433 .PHONY: runtime/internal/atomic/check
2435 extra_go_files_runtime_internal_sys = version.go
2437 @go_include@ runtime/internal/sys.lo.dep
2438 runtime/internal/sys.lo.dep: $(srcdir)/go/runtime/internal/sys/*.go
2439         $(BUILDDEPS)
2440 runtime_internal_sys_lo_GOCFLAGS = -fgo-compiling-runtime
2441 runtime/internal/sys.lo:
2442         $(BUILDPACKAGE)
2443 runtime/internal/sys/check: $(CHECK_DEPS)
2444         @$(CHECK)
2445 .PHONY: runtime/internal/sys/check
2447 @go_include@ sync/atomic.lo.dep
2448 sync/atomic.lo.dep: $(srcdir)/go/sync/atomic/*.go
2449         $(BUILDDEPS)
2450 sync/atomic.lo:
2451         $(BUILDPACKAGE)
2452 sync/atomic_c.lo: go/sync/atomic/atomic.c runtime.inc sync/atomic.lo
2453         $(LTCOMPILE) -c -o $@ $(srcdir)/go/sync/atomic/atomic.c
2454 sync/atomic/check: $(CHECK_DEPS)
2455         @$(CHECK)
2456 .PHONY: sync/atomic/check
2458 @go_include@ text/scanner.lo.dep
2459 text/scanner.lo.dep: $(srcdir)/go/text/scanner/*.go
2460         $(BUILDDEPS)
2461 text/scanner.lo:
2462         $(BUILDPACKAGE)
2463 text/scanner/check: $(CHECK_DEPS)
2464         @$(CHECK)
2465 .PHONY: text/scanner/check
2467 @go_include@ text/tabwriter.lo.dep
2468 text/tabwriter.lo.dep: $(srcdir)/go/text/tabwriter/*.go
2469         $(BUILDDEPS)
2470 text/tabwriter.lo:
2471         $(BUILDPACKAGE)
2472 text/tabwriter/check: $(CHECK_DEPS)
2473         @$(CHECK)
2474 .PHONY: text/tabwriter/check
2476 @go_include@ text/template.lo.dep
2477 text/template.lo.dep: $(srcdir)/go/text/template/*.go
2478         $(BUILDDEPS)
2479 text/template.lo:
2480         $(BUILDPACKAGE)
2481 text/template/check: $(CHECK_DEPS)
2482         @$(CHECK)
2483 .PHONY: text/template/check
2485 @go_include@ text/template/parse.lo.dep
2486 text/template/parse.lo.dep: $(srcdir)/go/text/template/parse/*.go
2487         $(BUILDDEPS)
2488 text/template/parse.lo:
2489         $(BUILDPACKAGE)
2490 text/template/parse/check: $(CHECK_DEPS)
2491         @$(CHECK)
2492 .PHONY: text/template/parse/check
2494 @go_include@ testing/iotest.lo.dep
2495 testing/iotest.lo.dep: $(srcdir)/go/testing/iotest/*.go
2496         $(BUILDDEPS)
2497 testing/iotest.lo:
2498         $(BUILDPACKAGE)
2499 testing/iotest/check: $(CHECK_DEPS)
2500         @$(CHECK)
2501 .PHONY: testing/iotest/check
2503 @go_include@ testing/quick.lo.dep
2504 testing/quick.lo.dep: $(srcdir)/go/testing/quick/*.go
2505         $(BUILDDEPS)
2506 testing/quick.lo:
2507         $(BUILDPACKAGE)
2508 testing/quick/check: $(CHECK_DEPS)
2509         @$(CHECK)
2510 .PHONY: testing/quick/check
2512 @go_include@ unicode/utf16.lo.dep
2513 unicode/utf16.lo.dep: $(srcdir)/go/unicode/utf16/*.go
2514         $(BUILDDEPS)
2515 unicode/utf16.lo:
2516         $(BUILDPACKAGE)
2517 unicode/utf16/check: $(CHECK_DEPS)
2518         @$(CHECK)
2519 .PHONY: unicode/utf16/check
2521 @go_include@ unicode/utf8.lo.dep
2522 unicode/utf8.lo.dep: $(srcdir)/go/unicode/utf8/*.go
2523         $(BUILDDEPS)
2524 unicode/utf8.lo:
2525         $(BUILDPACKAGE)
2526 unicode/utf8/check: $(CHECK_DEPS)
2527         @$(CHECK)
2528 .PHONY: unicode/utf8/check
2530 @go_include@ syscall.lo.dep
2531 syscall.lo.dep: $(srcdir)/go/syscall/*.go $(extra_go_files_syscall)
2532         $(BUILDDEPS)
2533 syscall.lo:
2534         $(BUILDPACKAGE)
2535 syscall/clone_linux.lo: go/syscall/clone_linux.c runtime.inc
2536         @$(MKDIR_P) syscall
2537         $(LTCOMPILE) -c -o $@ $<
2538 syscall/errno.lo: go/syscall/errno.c runtime.inc
2539         @$(MKDIR_P) syscall
2540         $(LTCOMPILE) -c -o $@ $<
2541 syscall/signame.lo: go/syscall/signame.c runtime.inc
2542         @$(MKDIR_P) syscall
2543         $(LTCOMPILE) -c -o $@ $<
2544 syscall/wait.lo: go/syscall/wait.c runtime.inc
2545         @$(MKDIR_P) syscall
2546         $(LTCOMPILE) -c -o $@ $<
2547 syscall/check: $(CHECK_DEPS)
2548         @$(CHECK)
2549 .PHONY: syscall/check
2551 # How to build a .gox file from a .lo file.
2552 BUILDGOX = \
2553         f=`echo $< | sed -e 's/.lo$$/.o/'`; \
2554         $(OBJCOPY) -j .go_export $$f $@.tmp && mv -f $@.tmp $@
2556 bufio.gox: bufio.lo
2557         $(BUILDGOX)
2558 bytes.gox: bytes.lo
2559         $(BUILDGOX)
2560 context.gox: context.lo
2561         $(BUILDGOX)
2562 crypto.gox: crypto.lo
2563         $(BUILDGOX)
2564 encoding.gox: encoding.lo
2565         $(BUILDGOX)
2566 errors.gox: errors.lo
2567         $(BUILDGOX)
2568 expvar.gox: expvar.lo
2569         $(BUILDGOX)
2570 flag.gox: flag.lo
2571         $(BUILDGOX)
2572 fmt.gox: fmt.lo
2573         $(BUILDGOX)
2574 hash.gox: hash.lo
2575         $(BUILDGOX)
2576 html.gox: html.lo
2577         $(BUILDGOX)
2578 image.gox: image.lo
2579         $(BUILDGOX)
2580 io.gox: io.lo
2581         $(BUILDGOX)
2582 log.gox: log.lo
2583         $(BUILDGOX)
2584 math.gox: math.lo
2585         $(BUILDGOX)
2586 mime.gox: mime.lo
2587         $(BUILDGOX)
2588 net.gox: net.lo
2589         $(BUILDGOX)
2590 os.gox: os.lo
2591         $(BUILDGOX)
2592 path.gox: path.lo
2593         $(BUILDGOX)
2594 reflect.gox: reflect-go.lo
2595         $(BUILDGOX)
2596 regexp.gox: regexp.lo
2597         $(BUILDGOX)
2598 runtime.gox: runtime-go.lo
2599         $(BUILDGOX)
2600 sort.gox: sort.lo
2601         $(BUILDGOX)
2602 strconv.gox: strconv.lo
2603         $(BUILDGOX)
2604 strings.gox: strings.lo
2605         $(BUILDGOX)
2606 sync.gox: sync.lo
2607         $(BUILDGOX)
2608 syscall.gox: syscall.lo
2609         $(BUILDGOX)
2610 testing.gox: testing.lo
2611         $(BUILDGOX)
2612 time.gox: time-go.lo
2613         $(BUILDGOX)
2614 unicode.gox: unicode.lo
2615         $(BUILDGOX)
2617 archive/tar.gox: archive/tar.lo
2618         $(BUILDGOX)
2619 archive/zip.gox: archive/zip.lo
2620         $(BUILDGOX)
2622 compress/bzip2.gox: compress/bzip2.lo
2623         $(BUILDGOX)
2624 compress/flate.gox: compress/flate.lo
2625         $(BUILDGOX)
2626 compress/gzip.gox: compress/gzip.lo
2627         $(BUILDGOX)
2628 compress/lzw.gox: compress/lzw.lo
2629         $(BUILDGOX)
2630 compress/zlib.gox: compress/zlib.lo
2631         $(BUILDGOX)
2633 container/heap.gox: container/heap.lo
2634         $(BUILDGOX)
2635 container/list.gox: container/list.lo
2636         $(BUILDGOX)
2637 container/ring.gox: container/ring.lo
2638         $(BUILDGOX)
2640 crypto/aes.gox: crypto/aes.lo
2641         $(BUILDGOX)
2642 crypto/cipher.gox: crypto/cipher.lo
2643         $(BUILDGOX)
2644 crypto/des.gox: crypto/des.lo
2645         $(BUILDGOX)
2646 crypto/dsa.gox: crypto/dsa.lo
2647         $(BUILDGOX)
2648 crypto/ecdsa.gox: crypto/ecdsa.lo       
2649         $(BUILDGOX)
2650 crypto/elliptic.gox: crypto/elliptic.lo
2651         $(BUILDGOX)
2652 crypto/hmac.gox: crypto/hmac.lo
2653         $(BUILDGOX)
2654 crypto/md5.gox: crypto/md5.lo
2655         $(BUILDGOX)
2656 crypto/rand.gox: crypto/rand.lo
2657         $(BUILDGOX)
2658 crypto/rc4.gox: crypto/rc4.lo
2659         $(BUILDGOX)
2660 crypto/rsa.gox: crypto/rsa.lo
2661         $(BUILDGOX)
2662 crypto/sha1.gox: crypto/sha1.lo
2663         $(BUILDGOX)
2664 crypto/sha256.gox: crypto/sha256.lo
2665         $(BUILDGOX)
2666 crypto/sha512.gox: crypto/sha512.lo
2667         $(BUILDGOX)
2668 crypto/subtle.gox: crypto/subtle.lo
2669         $(BUILDGOX)
2670 crypto/tls.gox: crypto/tls.lo
2671         $(BUILDGOX)
2672 crypto/x509.gox: crypto/x509.lo
2673         $(BUILDGOX)
2675 crypto/x509/pkix.gox: crypto/x509/pkix.lo
2676         $(BUILDGOX)
2678 database/sql.gox: database/sql.lo
2679         $(BUILDGOX)
2681 database/sql/driver.gox: database/sql/driver.lo
2682         $(BUILDGOX)
2684 debug/dwarf.gox: debug/dwarf.lo
2685         $(BUILDGOX)
2686 debug/elf.gox: debug/elf.lo
2687         $(BUILDGOX)
2688 debug/gosym.gox: debug/gosym.lo
2689         $(BUILDGOX)
2690 debug/macho.gox: debug/macho.lo
2691         $(BUILDGOX)
2692 debug/pe.gox: debug/pe.lo
2693         $(BUILDGOX)
2694 debug/plan9obj.gox: debug/plan9obj.lo
2695         $(BUILDGOX)
2697 encoding/ascii85.gox: encoding/ascii85.lo
2698         $(BUILDGOX)
2699 encoding/asn1.gox: encoding/asn1.lo
2700         $(BUILDGOX)
2701 encoding/base32.gox: encoding/base32.lo
2702         $(BUILDGOX)
2703 encoding/base64.gox: encoding/base64.lo
2704         $(BUILDGOX)
2705 encoding/binary.gox: encoding/binary.lo
2706         $(BUILDGOX)
2707 encoding/csv.gox: encoding/csv.lo
2708         $(BUILDGOX)
2709 encoding/gob.gox: encoding/gob.lo
2710         $(BUILDGOX)
2711 encoding/hex.gox: encoding/hex.lo
2712         $(BUILDGOX)
2713 encoding/json.gox: encoding/json.lo
2714         $(BUILDGOX)
2715 encoding/pem.gox: encoding/pem.lo
2716         $(BUILDGOX)
2717 encoding/xml.gox: encoding/xml.lo
2718         $(BUILDGOX)
2720 exp/proxy.gox: exp/proxy.lo
2721         $(BUILDGOX)
2722 exp/terminal.gox: exp/terminal.lo
2723         $(BUILDGOX)
2725 html/template.gox: html/template.lo
2726         $(BUILDGOX)
2728 go/ast.gox: go/ast.lo
2729         $(BUILDGOX)
2730 go/build.gox: go/build.lo
2731         $(BUILDGOX)
2732 go/constant.gox: go/constant.lo
2733         $(BUILDGOX)
2734 go/doc.gox: go/doc.lo
2735         $(BUILDGOX)
2736 go/format.gox: go/format.lo
2737         $(BUILDGOX)
2738 go/importer.gox: go/importer.lo
2739         $(BUILDGOX)
2740 go/parser.gox: go/parser.lo
2741         $(BUILDGOX)
2742 go/printer.gox: go/printer.lo
2743         $(BUILDGOX)
2744 go/scanner.gox: go/scanner.lo
2745         $(BUILDGOX)
2746 go/token.gox: go/token.lo
2747         $(BUILDGOX)
2748 go/types.gox: go/types.lo
2749         $(BUILDGOX)
2751 go/internal/gcimporter.gox: go/internal/gcimporter.lo
2752         $(BUILDGOX)
2753 go/internal/gccgoimporter.gox: go/internal/gccgoimporter.lo
2754         $(BUILDGOX)
2756 golang_org/x/net/http2/hpack.gox: golang_org/x/net/http2/hpack.lo
2757         $(BUILDGOX)
2759 golang_org/x/net/lex/httplex.gox: golang_org/x/net/lex/httplex.lo
2760         $(BUILDGOX)
2762 if LIBGO_IS_BSD
2763 golang_org/x/net/route.gox: golang_org/x/net/route.lo
2764         $(BUILDGOX)
2765 endif
2767 hash/adler32.gox: hash/adler32.lo
2768         $(BUILDGOX)
2769 hash/crc32.gox: hash/crc32.lo
2770         $(BUILDGOX)
2771 hash/crc64.gox: hash/crc64.lo
2772         $(BUILDGOX)
2773 hash/fnv.gox: hash/fnv.lo
2774         $(BUILDGOX)
2776 image/color.gox: image/color.lo
2777         $(BUILDGOX)
2778 image/draw.gox: image/draw.lo
2779         $(BUILDGOX)
2780 image/gif.gox: image/gif.lo
2781         $(BUILDGOX)
2782 image/internal/imageutil.gox: image/internal/imageutil.lo
2783         $(BUILDGOX)
2784 image/jpeg.gox: image/jpeg.lo
2785         $(BUILDGOX)
2786 image/png.gox: image/png.lo
2787         $(BUILDGOX)
2789 image/color/palette.gox: image/color/palette.lo
2790         $(BUILDGOX)
2792 index/suffixarray.gox: index/suffixarray.lo
2793         $(BUILDGOX)
2795 internal/nettrace.gox: internal/nettrace.lo
2796         $(BUILDGOX)
2797 internal/race.gox: internal/race.lo
2798         $(BUILDGOX)
2799 internal/singleflight.gox: internal/singleflight.lo
2800         $(BUILDGOX)
2801 internal/syscall/unix.gox: internal/syscall/unix.lo
2802         $(BUILDGOX)
2803 internal/testenv.gox: internal/testenv.lo
2804         $(BUILDGOX)
2805 internal/trace.gox: internal/trace.lo
2806         $(BUILDGOX)
2808 io/ioutil.gox: io/ioutil.lo
2809         $(BUILDGOX)
2811 log/syslog.gox: log/syslog.lo
2812         $(BUILDGOX)
2814 math/big.gox: math/big.lo
2815         $(BUILDGOX)
2816 math/cmplx.gox: math/cmplx.lo
2817         $(BUILDGOX)
2818 math/rand.gox: math/rand.lo
2819         $(BUILDGOX)
2821 mime/multipart.gox: mime/multipart.lo
2822         $(BUILDGOX)
2823 mime/quotedprintable.gox: mime/quotedprintable.lo
2824         $(BUILDGOX)
2826 net/http.gox: net/http.lo
2827         $(BUILDGOX)
2828 net/mail.gox: net/mail.lo
2829         $(BUILDGOX)
2830 net/rpc.gox: net/rpc.lo
2831         $(BUILDGOX)
2832 net/smtp.gox: net/smtp.lo
2833         $(BUILDGOX)
2834 net/textproto.gox: net/textproto.lo
2835         $(BUILDGOX)
2836 net/url.gox: net/url.lo
2837         $(BUILDGOX)
2839 net/http/cgi.gox: net/http/cgi.lo
2840         $(BUILDGOX)
2841 net/http/cookiejar.gox: net/http/cookiejar.lo
2842         $(BUILDGOX)
2843 net/http/fcgi.gox: net/http/fcgi.lo
2844         $(BUILDGOX)
2845 net/http/httptest.gox: net/http/httptest.lo
2846         $(BUILDGOX)
2847 net/http/httptrace.gox: net/http/httptrace.lo
2848         $(BUILDGOX)
2849 net/http/httputil.gox: net/http/httputil.lo
2850         $(BUILDGOX)
2851 net/http/pprof.gox: net/http/pprof.lo
2852         $(BUILDGOX)
2854 net/http/internal.gox: net/http/internal.lo
2855         $(BUILDGOX)
2857 net/internal/socktest.gox: net/internal/socktest.lo
2858         $(BUILDGOX)
2860 net/rpc/jsonrpc.gox: net/rpc/jsonrpc.lo
2861         $(BUILDGOX)
2863 old/regexp.gox: old/regexp.lo
2864         $(BUILDGOX)
2865 old/template.gox: old/template.lo
2866         $(BUILDGOX)
2868 os/exec.gox: os/exec.lo
2869         $(BUILDGOX)
2870 os/signal.gox: os/signal.lo
2871         $(BUILDGOX)
2872 os/user.gox: os/user.lo
2873         $(BUILDGOX)
2875 path/filepath.gox: path/filepath.lo
2876         $(BUILDGOX)
2878 regexp/syntax.gox: regexp/syntax.lo
2879         $(BUILDGOX)
2881 runtime/debug.gox: runtime/debug.lo
2882         $(BUILDGOX)
2883 runtime/pprof.gox: runtime/pprof.lo
2884         $(BUILDGOX)
2885 runtime/internal/atomic.gox: runtime/internal/atomic.lo
2886         $(BUILDGOX)
2887 runtime/internal/sys.gox: runtime/internal/sys.lo
2888         $(BUILDGOX)
2890 sync/atomic.gox: sync/atomic.lo
2891         $(BUILDGOX)
2893 text/scanner.gox: text/scanner.lo
2894         $(BUILDGOX)
2895 text/tabwriter.gox: text/tabwriter.lo
2896         $(BUILDGOX)
2897 text/template.gox: text/template.lo
2898         $(BUILDGOX)
2899 text/template/parse.gox: text/template/parse.lo
2900         $(BUILDGOX)
2902 testing/iotest.gox: testing/iotest.lo
2903         $(BUILDGOX)
2904 testing/quick.gox: testing/quick.lo
2905         $(BUILDGOX)
2907 unicode/utf16.gox: unicode/utf16.lo
2908         $(BUILDGOX)
2909 unicode/utf8.gox: unicode/utf8.lo
2910         $(BUILDGOX)
2912 TEST_PACKAGES = \
2913         bufio/check \
2914         bytes/check \
2915         context/check \
2916         errors/check \
2917         expvar/check \
2918         flag/check \
2919         fmt/check \
2920         html/check \
2921         image/check \
2922         io/check \
2923         log/check \
2924         math/check \
2925         mime/check \
2926         net/check \
2927         os/check \
2928         path/check \
2929         reflect/check \
2930         regexp/check \
2931         runtime/check \
2932         sort/check \
2933         strconv/check \
2934         strings/check \
2935         sync/check \
2936         syscall/check \
2937         time/check \
2938         unicode/check \
2939         archive/tar/check \
2940         archive/zip/check \
2941         compress/bzip2/check \
2942         compress/flate/check \
2943         compress/gzip/check \
2944         compress/lzw/check \
2945         compress/zlib/check \
2946         container/heap/check \
2947         container/list/check \
2948         container/ring/check \
2949         crypto/aes/check \
2950         crypto/cipher/check \
2951         crypto/des/check \
2952         crypto/dsa/check \
2953         crypto/ecdsa/check \
2954         crypto/elliptic/check \
2955         crypto/hmac/check \
2956         crypto/md5/check \
2957         crypto/rand/check \
2958         crypto/rc4/check \
2959         crypto/rsa/check \
2960         crypto/sha1/check \
2961         crypto/sha256/check \
2962         crypto/sha512/check \
2963         crypto/subtle/check \
2964         crypto/tls/check \
2965         crypto/x509/check \
2966         database/sql/check \
2967         database/sql/driver/check \
2968         debug/dwarf/check \
2969         debug/elf/check \
2970         debug/macho/check \
2971         debug/pe/check \
2972         debug/plan9obj/check \
2973         encoding/ascii85/check \
2974         encoding/asn1/check \
2975         encoding/base32/check \
2976         encoding/base64/check \
2977         encoding/binary/check \
2978         encoding/csv/check \
2979         encoding/gob/check \
2980         encoding/hex/check \
2981         encoding/json/check \
2982         encoding/pem/check \
2983         encoding/xml/check \
2984         exp/proxy/check \
2985         exp/terminal/check \
2986         html/template/check \
2987         go/ast/check \
2988         go/build/check \
2989         go/constant/check \
2990         go/doc/check \
2991         go/format/check \
2992         go/internal/gcimporter/check \
2993         go/internal/gccgoimporter/check \
2994         go/parser/check \
2995         go/printer/check \
2996         go/scanner/check \
2997         go/token/check \
2998         go/types/check \
2999         golang_org/x/net/http2/hpack/check \
3000         golang_org/x/net/lex/httplex/check \
3001         $(golang_org_x_net_route_check) \
3002         hash/adler32/check \
3003         hash/crc32/check \
3004         hash/crc64/check \
3005         hash/fnv/check \
3006         image/color/check \
3007         image/draw/check \
3008         image/jpeg/check \
3009         image/png/check \
3010         index/suffixarray/check \
3011         internal/singleflight/check \
3012         internal/trace/check \
3013         io/ioutil/check \
3014         log/syslog/check \
3015         math/big/check \
3016         math/cmplx/check \
3017         math/rand/check \
3018         mime/multipart/check \
3019         mime/quotedprintable/check \
3020         net/http/check \
3021         net/http/cgi/check \
3022         net/http/cookiejar/check \
3023         net/http/fcgi/check \
3024         net/http/httptest/check \
3025         net/http/httptrace/check \
3026         net/http/httputil/check \
3027         net/http/internal/check \
3028         net/internal/socktest/check \
3029         net/mail/check \
3030         net/rpc/check \
3031         net/smtp/check \
3032         net/textproto/check \
3033         net/url/check \
3034         net/rpc/jsonrpc/check \
3035         old/regexp/check \
3036         old/template/check \
3037         os/exec/check \
3038         os/signal/check \
3039         os/user/check \
3040         path/filepath/check \
3041         regexp/syntax/check \
3042         runtime/pprof/check \
3043         runtime/internal/atomic/check \
3044         runtime/internal/sys/check \
3045         sync/atomic/check \
3046         text/scanner/check \
3047         text/tabwriter/check \
3048         text/template/check \
3049         text/template/parse/check \
3050         testing/quick/check \
3051         unicode/utf16/check \
3052         unicode/utf8/check
3054 check: check-tail
3055 check-recursive: check-head
3057 check-head:
3058         @echo "Test Run By $${USER} on `date`" > libgo.head
3059         @echo "Native configuration is $(host_triplet)" >> libgo.head
3060         @echo >> libgo.head
3061         @echo "         === libgo tests ===" >> libgo.head
3062         @echo >> libgo.head
3064 check-tail: check-recursive check-multi
3065         @if test "$(USE_DEJAGNU)" = "yes"; then \
3066           exit 0; \
3067         fi; \
3068         lib=`${PWD_COMMAND} | sed -e 's,^.*/\([^/][^/]*\)$$,\1,'`; \
3069         for dir in . $(MULTIDIRS); do \
3070           mv ../$${dir}/$${lib}/libgo.sum ../$${dir}/$${lib}/libgo.sum.sep; \
3071           mv ../$${dir}/$${lib}/libgo.log ../$${dir}/$${lib}/libgo.log.sep; \
3072         done; \
3073         mv libgo.head libgo.sum; \
3074         cp libgo.sum libgo.log; \
3075         echo "Schedule of variations:" >> libgo.sum; \
3076         for dir in . $(MULTIDIRS); do \
3077           multidir=../$${dir}/$${lib}; \
3078           multivar=`cat $${multidir}/libgo.var`; \
3079           echo "    $${multivar}" >> libgo.sum; \
3080         done; \
3081         echo >> libgo.sum; \
3082         pass=0; fail=0; untested=0; \
3083         for dir in . $(MULTIDIRS); do \
3084           multidir=../$${dir}/$${lib}; \
3085           multivar=`cat $${multidir}/libgo.var`; \
3086           echo "Running target $${multivar}" >> libgo.sum; \
3087           echo "Running $(srcdir)/libgo.exp ..." >> libgo.sum; \
3088           cat $${multidir}/libgo.sum.sep >> libgo.sum; \
3089           cat $${multidir}/libgo.log.sep >> libgo.log; \
3090           if test -n "${MULTIDIRS}"; then \
3091             echo "              === libgo Summary for $${multivar} ===" >> libgo.sum; \
3092             echo >> libgo.sum; \
3093           fi; \
3094           p=`grep -c PASS $${multidir}/libgo.sum.sep`; \
3095           pass=`expr $$pass + $$p`; \
3096           if test "$$p" -ne "0" && test -n "${MULTIDIRS}"; then \
3097             echo "# of expected passes          $$p" >> libgo.sum; \
3098           fi; \
3099           p=`grep -c FAIL $${multidir}/libgo.sum.sep`; \
3100           fail=`expr $$fail + $$p`; \
3101           if test "$$p" -ne "0" && test -n "${MULTIDIRS}"; then \
3102             echo "# of unexpected failures      $$p" >> libgo.sum; \
3103           fi; \
3104           p=`grep -c UNTESTED $${multidir}/libgo.sum.sep`; \
3105           untested=`expr $$untested + $$p`; \
3106           if test "$$p" -ne "0" && test -n "${MULTIDIRS}"; then \
3107             echo "# of untested testcases               $$p" >> libgo.sum; \
3108           fi; \
3109         done; \
3110         echo >> libgo.sum; \
3111         echo "          === libgo Summary ===" >> libgo.sum; \
3112         echo >> libgo.sum; \
3113         if test "$$pass" -ne "0"; then \
3114           echo "# of expected passes            $$pass" >> libgo.sum; \
3115         fi; \
3116         if test "$$fail" -ne "0"; then \
3117           echo "# of unexpected failures        $$fail" >> libgo.sum; \
3118         fi; \
3119         if test "$$untested" -ne "0"; then \
3120           echo "# of untested testcases         $$untested" >> libgo.sum; \
3121         fi; \
3122         echo `echo $(GOC) | sed -e 's/ .*//'`  `$(GOC) -v 2>&1 | grep " version" | sed -n -e 's/.* \(version.*$$\)/\1/p'` >> libgo.sum; \
3123         echo >> libgo.log; \
3124         echo "runtest completed at `date`" >> libgo.log; \
3125         if test "$$fail" -ne "0"; then \
3126           status=1; \
3127         else \
3128           status=0; \
3129         fi; \
3130         exit $$status
3132 check-am:
3133         @rm -f libgo.sum libgo.log libgo.tail
3134         @multivar="unix"; \
3135         [ -z "$(MULTIFLAGS)" ] || multivar="$${multivar}/$(MULTIFLAGS)"; \
3136         echo "$${multivar}" > libgo.var
3137         @for f in $(TEST_PACKAGES); do \
3138            rm -f $$f-testsum $$f-testlog; \
3139          done
3140         -@$(MAKE) -k $(TEST_PACKAGES)
3141         @for f in $(TEST_PACKAGES); do \
3142           if test -f $$f-testsum; then \
3143             cat $$f-testsum >> libgo.sum; \
3144           fi; \
3145           if test -f $$f-testlog; then \
3146             cat $$f-testlog >> libgo.log; \
3147           fi; \
3148         done
3150 check-multi:
3151         $(MULTIDO) $(AM_MAKEFLAGS) DO=check-am multi-do # $(MAKE)
3153 bench:
3154         -@$(MAKE) -k $(TEST_PACKAGES) GOBENCH=.
3156 MOSTLYCLEAN_FILES = libgo.head libgo.sum.sep libgo.log.sep
3158 mostlyclean-local:
3159         find . -name '*.lo' -print | xargs $(LIBTOOL) --mode=clean rm -f
3160         find . -name '*.$(OBJEXT)' -print | xargs rm -f
3161         find . -name '*-testsum' -print | xargs rm -f
3162         find . -name '*-testlog' -print | xargs rm -f
3164 CLEANFILES = *.go *.gox goc2c *.c s-version libgo.sum libgo.log
3166 clean-local:
3167         find . -name '*.la' -print | xargs $(LIBTOOL) --mode=clean rm -f
3168         find . -name '*.a' -print | xargs rm -f