OSDN Git Service

bc8b8316f0ee173b09f6e53696b01e38526b29ef
[pf3gnuchains/gcc-fork.git] / libgo / Makefile.am
1 # Makefile.am -- Go library Makefile.
2
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.
6
7 # Process this file with autoreconf to produce Makefile.in.
8
9 # Go support.
10 SUFFIXES = .c .go .gox .o .obj .lo .a
11
12 if LIBGO_IS_RTEMS
13 subdirs = testsuite
14 endif
15
16 SUBDIRS = ${subdirs}
17
18 gcc_version := $(shell cat $(top_srcdir)/../gcc/BASE-VER)
19
20 MAINT_CHARSET = latin1
21
22 mkinstalldirs = $(SHELL) $(toplevel_srcdir)/mkinstalldirs
23 PWD_COMMAND = $${PWDCMD-pwd}
24 STAMP = echo timestamp >
25
26 toolexecdir = $(glibgo_toolexecdir)
27 toolexeclibdir = $(glibgo_toolexeclibdir)
28
29 LIBFFI = @LIBFFI@
30 LIBFFIINCS = @LIBFFIINCS@
31
32 WARN_CFLAGS = $(WARN_FLAGS) $(WERROR)
33
34 # -I/-D flags to pass when compiling.
35 AM_CPPFLAGS = -I $(srcdir)/runtime $(LIBFFIINCS) $(PTHREAD_CFLAGS)
36
37 ACLOCAL_AMFLAGS = -I ./config -I ../config
38
39 AM_CFLAGS = -fexceptions -fplan9-extensions $(SPLIT_STACK) $(WARN_CFLAGS) \
40         $(STRINGOPS_FLAG) \
41         -I $(srcdir)/../gcc -I $(MULTIBUILDTOP)../../gcc/include
42
43 if USING_SPLIT_STACK
44 AM_LDFLAGS = -XCClinker $(SPLIT_STACK)
45 endif
46
47 # Multilib support.
48 MAKEOVERRIDES=
49
50 # Work around what appears to be a GNU make  handling MAKEFLAGS
51 # values defined in terms of make variables, as is the case for CC and
52 # friends when we are called from the top level Makefile.
53 AM_MAKEFLAGS = \
54         "AR_FLAGS=$(AR_FLAGS)" \
55         "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
56         "CC_FOR_TARGET=$(CC_FOR_TARGET)" \
57         "CFLAGS=$(CFLAGS)" \
58         "CXXFLAGS=$(CXXFLAGS)" \
59         "CFLAGS_FOR_BUILD=$(CFLAGS_FOR_BUILD)" \
60         "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
61         "GOC_FOR_TARGET=$(GOC_FOR_TARGET)" \
62         "GOC=$(GOC)" \
63         "GOCFLAGS=$(GOCFLAGS)" \
64         "INSTALL=$(INSTALL)" \
65         "INSTALL_DATA=$(INSTALL_DATA)" \
66         "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
67         "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
68         "LDFLAGS=$(LDFLAGS)" \
69         "LIBCFLAGS=$(LIBCFLAGS)" \
70         "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
71         "MAKE=$(MAKE)" \
72         "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
73         "PICFLAG=$(PICFLAG)" \
74         "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
75         "SHELL=$(SHELL)" \
76         "RUNTESTFLAGS=$(RUNTESTFLAGS)" \
77         "exec_prefix=$(exec_prefix)" \
78         "infodir=$(infodir)" \
79         "libdir=$(libdir)" \
80         "includedir=$(includedir)" \
81         "prefix=$(prefix)" \
82         "tooldir=$(tooldir)" \
83         "gxx_include_dir=$(gxx_include_dir)" \
84         "AR=$(AR)" \
85         "AS=$(AS)" \
86         "LD=$(LD)" \
87         "RANLIB=$(RANLIB)" \
88         "NM=$(NM)" \
89         "NM_FOR_BUILD=$(NM_FOR_BUILD)" \
90         "NM_FOR_TARGET=$(NM_FOR_TARGET)" \
91         "DESTDIR=$(DESTDIR)" \
92         "WERROR=$(WERROR)"
93
94 # Subdir rules rely on $(FLAGS_TO_PASS)
95 FLAGS_TO_PASS = $(AM_MAKEFLAGS)
96
97 toolexeclib_LTLIBRARIES = libgo.la
98 toolexeclib_LIBRARIES = libgobegin.a
99
100 toolexeclibgodir = $(toolexeclibdir)/go/$(gcc_version)/$(target_alias)
101
102 toolexeclibgo_DATA = \
103         asn1.gox \
104         big.gox \
105         bufio.gox \
106         bytes.gox \
107         cmath.gox \
108         ebnf.gox \
109         exec.gox \
110         expvar.gox \
111         flag.gox \
112         fmt.gox \
113         gob.gox \
114         hash.gox \
115         html.gox \
116         http.gox \
117         image.gox \
118         io.gox \
119         json.gox \
120         log.gox \
121         math.gox \
122         mime.gox \
123         net.gox \
124         netchan.gox \
125         os.gox \
126         patch.gox \
127         path.gox \
128         rand.gox \
129         reflect.gox \
130         regexp.gox \
131         rpc.gox \
132         runtime.gox \
133         scanner.gox \
134         smtp.gox \
135         sort.gox \
136         strconv.gox \
137         strings.gox \
138         sync.gox \
139         syscall.gox \
140         syslog.gox \
141         tabwriter.gox \
142         template.gox \
143         testing.gox \
144         time.gox \
145         try.gox \
146         unicode.gox \
147         utf16.gox \
148         utf8.gox \
149         websocket.gox \
150         xml.gox
151
152 toolexeclibgoarchivedir = $(toolexeclibgodir)/archive
153
154 toolexeclibgoarchive_DATA = \
155         archive/tar.gox \
156         archive/zip.gox
157
158 toolexeclibgocompressdir = $(toolexeclibgodir)/compress
159
160 toolexeclibgocompress_DATA = \
161         compress/flate.gox \
162         compress/gzip.gox \
163         compress/zlib.gox
164
165 toolexeclibgocontainerdir = $(toolexeclibgodir)/container
166
167 toolexeclibgocontainer_DATA = \
168         container/heap.gox \
169         container/list.gox \
170         container/ring.gox \
171         container/vector.gox
172
173 toolexeclibgocryptodir = $(toolexeclibgodir)/crypto
174
175 toolexeclibgocrypto_DATA = \
176         crypto/aes.gox \
177         crypto/block.gox \
178         crypto/blowfish.gox \
179         crypto/cast5.gox \
180         crypto/cipher.gox \
181         crypto/elliptic.gox \
182         crypto/hmac.gox \
183         crypto/md4.gox \
184         crypto/md5.gox \
185         crypto/ocsp.gox \
186         crypto/rand.gox \
187         crypto/rc4.gox \
188         crypto/ripemd160.gox \
189         crypto/rsa.gox \
190         crypto/sha1.gox \
191         crypto/sha256.gox \
192         crypto/sha512.gox \
193         crypto/subtle.gox \
194         crypto/tls.gox \
195         crypto/twofish.gox \
196         crypto/x509.gox \
197         crypto/xtea.gox
198
199 toolexeclibgocryptoopenpgpdir = $(toolexeclibgocryptodir)/openpgp
200
201 toolexeclibgocryptoopenpgp_DATA = \
202         crypto/openpgp/armor.gox \
203         crypto/openpgp/error.gox \
204         crypto/openpgp/s2k.gox
205
206 toolexeclibgodebugdir = $(toolexeclibgodir)/debug
207
208 toolexeclibgodebug_DATA = \
209         debug/dwarf.gox \
210         debug/elf.gox \
211         debug/gosym.gox \
212         debug/macho.gox \
213         debug/pe.gox \
214         debug/proc.gox
215
216 toolexeclibgoencodingdir = $(toolexeclibgodir)/encoding
217
218 toolexeclibgoencoding_DATA = \
219         encoding/ascii85.gox \
220         encoding/base32.gox \
221         encoding/base64.gox \
222         encoding/binary.gox \
223         encoding/line.gox \
224         encoding/git85.gox \
225         encoding/hex.gox \
226         encoding/pem.gox
227
228 toolexeclibgoexpdir = $(toolexeclibgodir)/exp
229
230 toolexeclibgoexp_DATA = \
231         exp/datafmt.gox \
232         exp/draw.gox \
233         exp/eval.gox
234
235 toolexeclibgogodir = $(toolexeclibgodir)/go
236
237 toolexeclibgogo_DATA = \
238         go/ast.gox \
239         go/doc.gox \
240         go/parser.gox \
241         go/printer.gox \
242         go/scanner.gox \
243         go/token.gox \
244         go/typechecker.gox
245
246 toolexeclibgohashdir = $(toolexeclibgodir)/hash
247
248 toolexeclibgohash_DATA = \
249         hash/adler32.gox \
250         hash/crc32.gox \
251         hash/crc64.gox
252
253 toolexeclibgohttpdir = $(toolexeclibgodir)/http
254
255 toolexeclibgohttp_DATA = \
256         http/pprof.gox
257
258 toolexeclibgoimagedir = $(toolexeclibgodir)/image
259
260 toolexeclibgoimage_DATA = \
261         image/jpeg.gox \
262         image/png.gox
263
264 toolexeclibgoindexdir = $(toolexeclibgodir)/index
265
266 toolexeclibgoindex_DATA = \
267         index/suffixarray.gox
268
269 toolexeclibgoiodir = $(toolexeclibgodir)/io
270
271 toolexeclibgoio_DATA = \
272         io/ioutil.gox
273
274 toolexeclibgomimedir = $(toolexeclibgodir)/mime
275
276 toolexeclibgomime_DATA = \
277         mime/multipart.gox
278
279 toolexeclibgonetdir = $(toolexeclibgodir)/net
280
281 toolexeclibgonet_DATA = \
282         net/dict.gox \
283         net/textproto.gox
284
285 toolexeclibgoosdir = $(toolexeclibgodir)/os
286
287 if LIBGO_IS_LINUX
288 # os_inotify_gox = os/inotify.gox
289 os_inotify_gox =
290 else
291 os_inotify_gox =
292 endif
293
294 toolexeclibgoos_DATA = \
295         $(os_inotify_gox) \
296         os/signal.gox
297
298 toolexeclibgorpcdir = $(toolexeclibgodir)/rpc
299
300 toolexeclibgorpc_DATA = \
301         rpc/jsonrpc.gox
302
303 toolexeclibgoruntimedir = $(toolexeclibgodir)/runtime
304
305 toolexeclibgoruntime_DATA = \
306         runtime/debug.gox \
307         runtime/pprof.gox
308
309 toolexeclibgotestingdir = $(toolexeclibgodir)/testing
310
311 toolexeclibgotesting_DATA = \
312         testing/iotest.gox \
313         testing/quick.gox \
314         testing/script.gox
315
316 if HAVE_SYS_MMAN_H
317 runtime_mem_file = runtime/mem.c
318 else
319 runtime_mem_file = runtime/mem_posix_memalign.c
320 endif
321
322 if LIBGO_IS_RTEMS
323 rtems_task_variable_add_file = runtime/rtems-task-variable-add.c
324 else
325 rtems_task_variable_add_file =
326 endif
327
328 runtime_files = \
329         runtime/go-append.c \
330         runtime/go-assert.c \
331         runtime/go-assert-interface.c \
332         runtime/go-byte-array-to-string.c \
333         runtime/go-breakpoint.c \
334         runtime/go-caller.c \
335         runtime/go-can-convert-interface.c \
336         runtime/go-cgo.c \
337         runtime/go-chan-cap.c \
338         runtime/go-chan-len.c \
339         runtime/go-check-interface.c \
340         runtime/go-close.c \
341         runtime/go-closed.c \
342         runtime/go-construct-map.c \
343         runtime/go-convert-interface.c \
344         runtime/go-copy.c \
345         runtime/go-defer.c \
346         runtime/go-deferred-recover.c \
347         runtime/go-eface-compare.c \
348         runtime/go-eface-val-compare.c \
349         runtime/go-getgoroot.c \
350         runtime/go-go.c \
351         runtime/go-gomaxprocs.c \
352         runtime/go-int-array-to-string.c \
353         runtime/go-int-to-string.c \
354         runtime/go-interface-compare.c \
355         runtime/go-interface-eface-compare.c \
356         runtime/go-interface-val-compare.c \
357         runtime/go-lock-os-thread.c \
358         runtime/go-map-delete.c \
359         runtime/go-map-index.c \
360         runtime/go-map-len.c \
361         runtime/go-map-range.c \
362         runtime/go-nanotime.c \
363         runtime/go-new-channel.c \
364         runtime/go-new-map.c \
365         runtime/go-new.c \
366         runtime/go-note.c \
367         runtime/go-panic.c \
368         runtime/go-panic-defer.c \
369         runtime/go-print.c \
370         runtime/go-rec-big.c \
371         runtime/go-rec-nb-big.c \
372         runtime/go-rec-nb-small.c \
373         runtime/go-rec-small.c \
374         runtime/go-recover.c \
375         runtime/go-reflect.c \
376         runtime/go-reflect-call.c \
377         runtime/go-reflect-chan.c \
378         runtime/go-reflect-map.c \
379         runtime/go-rune.c \
380         runtime/go-runtime-error.c \
381         runtime/go-sched.c \
382         runtime/go-select.c \
383         runtime/go-semacquire.c \
384         runtime/go-send-big.c \
385         runtime/go-send-nb-big.c \
386         runtime/go-send-nb-small.c \
387         runtime/go-send-small.c \
388         runtime/go-signal.c \
389         runtime/go-strcmp.c \
390         runtime/go-string-to-byte-array.c \
391         runtime/go-string-to-int-array.c \
392         runtime/go-strplus.c \
393         runtime/go-strslice.c \
394         runtime/go-trampoline.c \
395         runtime/go-type-eface.c \
396         runtime/go-type-error.c \
397         runtime/go-type-identity.c \
398         runtime/go-type-interface.c \
399         runtime/go-type-string.c \
400         runtime/go-typedesc-equal.c \
401         runtime/go-typestring.c \
402         runtime/go-unreflect.c \
403         runtime/go-unsafe-new.c \
404         runtime/go-unsafe-newarray.c \
405         runtime/go-unsafe-pointer.c \
406         runtime/go-unwind.c \
407         runtime/mcache.c \
408         runtime/mcentral.c \
409         $(runtime_mem_file) \
410         runtime/mfinal.c \
411         runtime/mfixalloc.c \
412         runtime/mgc0.c \
413         runtime/mheap.c \
414         runtime/mheapmap32.c \
415         runtime/mheapmap64.c \
416         runtime/msize.c \
417         runtime/proc.c \
418         runtime/thread.c \
419         $(rtems_task_variable_add_file) \
420         chan.c \
421         iface.c \
422         malloc.c \
423         map.c \
424         mprof.c \
425         reflect.c \
426         sigqueue.c \
427         string.c
428
429 goc2c.$(OBJEXT): runtime/goc2c.c
430         $(CC_FOR_BUILD) -c $(CFLAGS_FOR_BUILD) $<
431
432 goc2c: goc2c.$(OBJEXT)
433         $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(LDFLAGS_FOR_BUILD) -o $@ $<
434
435 malloc.c: $(srcdir)/runtime/malloc.goc goc2c
436         ./goc2c --gcc --go-prefix libgo_runtime $< > $@.tmp
437         mv -f $@.tmp $@
438
439 mprof.c: $(srcdir)/runtime/mprof.goc goc2c
440         ./goc2c --gcc --go-prefix libgo_runtime $< > $@.tmp
441         mv -f $@.tmp $@
442
443 reflect.c: $(srcdir)/runtime/reflect.goc goc2c
444         ./goc2c --gcc --go-prefix libgo_reflect $< > $@.tmp
445         mv -f $@.tmp $@
446
447 sigqueue.c: $(srcdir)/runtime/sigqueue.goc goc2c
448         ./goc2c --gcc --go-prefix libgo_runtime $< > $@.tmp
449         mv -f $@.tmp $@
450
451 %.c: $(srcdir)/runtime/%.goc goc2c
452         ./goc2c --gcc $< > $@.tmp
453         mv -f $@.tmp $@
454
455 go_asn1_files = \
456         go/asn1/asn1.go \
457         go/asn1/common.go \
458         go/asn1/marshal.go
459
460 go_big_files = \
461         go/big/arith.go \
462         go/big/int.go \
463         go/big/nat.go \
464         go/big/rat.go
465
466 go_bufio_files = \
467         go/bufio/bufio.go
468
469 go_bytes_files = \
470         go/bytes/buffer.go \
471         go/bytes/bytes.go \
472         go/bytes/bytes_decl.go
473 go_bytes_c_files = \
474         go/bytes/indexbyte.c
475
476 go_cmath_files = \
477         go/cmath/abs.go \
478         go/cmath/asin.go \
479         go/cmath/conj.go \
480         go/cmath/exp.go \
481         go/cmath/isinf.go \
482         go/cmath/isnan.go \
483         go/cmath/log.go \
484         go/cmath/phase.go \
485         go/cmath/polar.go \
486         go/cmath/pow.go \
487         go/cmath/rect.go \
488         go/cmath/sin.go \
489         go/cmath/sqrt.go \
490         go/cmath/tan.go
491
492 go_ebnf_files = \
493         go/ebnf/ebnf.go \
494         go/ebnf/parser.go
495
496 go_exec_files = \
497         go/exec/exec.go \
498         go/exec/lp_unix.go
499
500 go_expvar_files = \
501         go/expvar/expvar.go
502
503 go_flag_files = \
504         go/flag/flag.go
505
506 go_fmt_files = \
507         go/fmt/doc.go \
508         go/fmt/format.go \
509         go/fmt/print.go \
510         go/fmt/scan.go
511
512 go_gob_files = \
513         go/gob/decode.go \
514         go/gob/decoder.go \
515         go/gob/doc.go \
516         go/gob/encode.go \
517         go/gob/encoder.go \
518         go/gob/error.go \
519         go/gob/type.go
520
521 go_hash_files = \
522         go/hash/hash.go
523
524 go_html_files = \
525         go/html/doc.go \
526         go/html/entity.go \
527         go/html/escape.go \
528         go/html/parse.go \
529         go/html/token.go
530
531 go_http_files = \
532         go/http/chunked.go \
533         go/http/client.go \
534         go/http/dump.go \
535         go/http/fs.go \
536         go/http/lex.go \
537         go/http/persist.go \
538         go/http/request.go \
539         go/http/response.go \
540         go/http/server.go \
541         go/http/status.go \
542         go/http/transfer.go \
543         go/http/url.go
544
545 go_image_files = \
546         go/image/color.go \
547         go/image/format.go \
548         go/image/geom.go \
549         go/image/image.go \
550         go/image/names.go
551
552 go_io_files = \
553         go/io/multi.go \
554         go/io/io.go \
555         go/io/pipe.go
556
557 go_json_files = \
558         go/json/decode.go \
559         go/json/encode.go \
560         go/json/indent.go \
561         go/json/scanner.go \
562         go/json/stream.go
563
564 go_log_files = \
565         go/log/log.go
566
567 go_math_files = \
568         go/math/acosh.go \
569         go/math/asin.go \
570         go/math/asinh.go \
571         go/math/atan.go \
572         go/math/atanh.go \
573         go/math/atan2.go \
574         go/math/bits.go \
575         go/math/cbrt.go \
576         go/math/const.go \
577         go/math/copysign.go \
578         go/math/erf.go \
579         go/math/exp.go \
580         go/math/exp_port.go \
581         go/math/exp2.go \
582         go/math/expm1.go \
583         go/math/fabs.go \
584         go/math/fdim.go \
585         go/math/floor.go \
586         go/math/fmod.go \
587         go/math/frexp.go \
588         go/math/gamma.go \
589         go/math/hypot.go \
590         go/math/hypot_port.go \
591         go/math/j0.go \
592         go/math/j1.go \
593         go/math/jn.go \
594         go/math/ldexp.go \
595         go/math/lgamma.go \
596         go/math/log.go \
597         go/math/log1p.go \
598         go/math/log10.go \
599         go/math/logb.go \
600         go/math/modf.go \
601         go/math/nextafter.go \
602         go/math/pow.go \
603         go/math/pow10.go \
604         go/math/remainder.go \
605         go/math/signbit.go \
606         go/math/sin.go \
607         go/math/sincos.go \
608         go/math/sinh.go \
609         go/math/sqrt.go \
610         go/math/sqrt_port.go \
611         go/math/tan.go \
612         go/math/tanh.go \
613         go/math/unsafe.go
614
615 go_mime_files = \
616         go/mime/grammar.go \
617         go/mime/mediatype.go \
618         go/mime/type.go
619
620 if LIBGO_IS_RTEMS
621 go_net_fd_os_file = go/net/fd_rtems.go
622 go_net_newpollserver_file = go/net/newpollserver_rtems.go
623 else # !LIBGO_IS_RTEMS
624 if LIBGO_IS_LINUX
625 go_net_fd_os_file = go/net/fd_linux.go
626 go_net_newpollserver_file = go/net/newpollserver.go
627 else # !LIBGO_IS_LINUX && !LIBGO_IS_RTEMS
628 # By default use select with pipes.  Most systems should have
629 # something better.
630 go_net_fd_os_file = go/net/fd_rtems.go
631 go_net_newpollserver_file = go/net/newpollserver.go
632 endif # !LIBGO_IS_LINUX
633 endif # !LIBGO_IS_RTEMS
634
635 go_net_files = \
636         go/net/dial.go \
637         go/net/dnsclient.go \
638         go/net/dnsconfig.go \
639         go/net/dnsmsg.go \
640         $(go_net_newpollserver_file) \
641         go/net/fd.go \
642         $(go_net_fd_os_file) \
643         go/net/hosts.go \
644         go/net/ip.go \
645         go/net/iprawsock.go \
646         go/net/ipsock.go \
647         go/net/net.go \
648         go/net/parse.go \
649         go/net/pipe.go \
650         go/net/port.go \
651         go/net/sock.go \
652         go/net/tcpsock.go \
653         go/net/udpsock.go \
654         go/net/unixsock.go
655
656 go_netchan_files = \
657         go/netchan/common.go \
658         go/netchan/export.go \
659         go/netchan/import.go
660
661 if LIBGO_IS_SOLARIS
662 if LIBGO_IS_386
663 go_os_dir_file = go/os/dir_largefile.go
664 else
665 go_os_dir_file = go/os/dir_regfile.go
666 endif
667 else
668 if LIBGO_IS_LINUX
669 go_os_dir_file = go/os/dir_largefile.go
670 else
671 go_os_dir_file = go/os/dir_regfile.go
672 endif
673 endif
674
675 if LIBGO_IS_LINUX
676 go_os_sys_file = go/os/sys_linux.go
677 else
678 if LIBGO_IS_SOLARIS
679 go_os_sys_file = go/os/sys_uname.go
680 else
681 if LIBGO_IS_RTEMS
682 go_os_sys_file = go/os/sys_uname.go
683 else
684 go_os_sys_file = go/os/sys_bsd.go
685 endif
686 endif
687 endif
688
689 go_os_files = \
690         $(go_os_dir_file) \
691         go/os/dir.go \
692         go/os/env.go \
693         go/os/env_unix.go \
694         go/os/error.go \
695         go/os/exec.go \
696         go/os/file.go \
697         go/os/file_unix.go \
698         go/os/getwd.go \
699         go/os/path.go \
700         go/os/proc.go \
701         go/os/stat.go \
702         $(go_os_sys_file) \
703         go/os/time.go \
704         go/os/types.go
705
706 go_patch_files = \
707         go/patch/apply.go \
708         go/patch/git.go \
709         go/patch/patch.go \
710         go/patch/textdiff.go
711
712 go_path_files = \
713         go/path/match.go \
714         go/path/path.go \
715         go/path/path_unix.go
716
717 go_rand_files = \
718         go/rand/exp.go \
719         go/rand/normal.go \
720         go/rand/rand.go \
721         go/rand/rng.go \
722         go/rand/zipf.go
723
724 go_reflect_files = \
725         go/reflect/deepequal.go \
726         go/reflect/type.go \
727         go/reflect/value.go
728
729 go_regexp_files = \
730         go/regexp/regexp.go
731
732 go_rpc_files = \
733         go/rpc/client.go \
734         go/rpc/debug.go \
735         go/rpc/server.go
736
737 go_runtime_files = \
738         go/runtime/debug.go \
739         go/runtime/error.go \
740         go/runtime/extern.go \
741         go/runtime/malloc_defs.go \
742         go/runtime/runtime_defs.go \
743         go/runtime/sig.go \
744         go/runtime/softfloat64.go \
745         go/runtime/type.go \
746         version.go
747
748 version.go: s-version; @true
749 s-version: Makefile
750         rm -f version.go.tmp
751         echo "package runtime" > version.go.tmp
752         echo 'const defaultGoroot = "$(prefix)"' >> version.go.tmp
753         echo 'const theVersion = "'`$(CC) --version | sed 1q`'"' >> version.go.tmp
754         echo 'const theGoarch = "'$(GOARCH)'"' >> version.go.tmp
755         echo 'const theGoos = "'$(GOOS)'"' >> version.go.tmp
756         $(SHELL) $(srcdir)/../move-if-change version.go.tmp version.go
757         $(STAMP) $@
758
759 go_scanner_files = \
760         go/scanner/scanner.go
761
762 go_smtp_files = \
763         go/smtp/auth.go \
764         go/smtp/smtp.go
765
766 go_sort_files = \
767         go/sort/search.go \
768         go/sort/sort.go
769
770 go_strconv_files = \
771         go/strconv/atob.go \
772         go/strconv/atof.go \
773         go/strconv/atoi.go \
774         go/strconv/decimal.go \
775         go/strconv/ftoa.go \
776         go/strconv/itoa.go \
777         go/strconv/quote.go
778
779 go_strings_files = \
780         go/strings/reader.go \
781         go/strings/strings.go
782
783 go_sync_files = \
784         go/sync/mutex.go \
785         go/sync/once.go \
786         go/sync/rwmutex.go
787 go_sync_c_files = \
788         go/sync/cas.c
789
790 if LIBGO_IS_SOLARIS
791 go_syslog_file = go/syslog/syslog_solaris.go
792 else
793 go_syslog_file = go/syslog/syslog_unix.go
794 endif
795
796 go_syslog_files = \
797         go/syslog/syslog.go \
798         $(go_syslog_file)
799
800 go_tabwriter_files = \
801         go/tabwriter/tabwriter.go
802
803 go_template_files = \
804         go/template/format.go \
805         go/template/template.go
806
807 go_testing_files = \
808         go/testing/benchmark.go \
809         go/testing/testing.go
810
811 go_time_files = \
812         go/time/format.go \
813         go/time/sleep.go \
814         go/time/tick.go \
815         go/time/time.go \
816         go/time/zoneinfo_unix.go
817
818 go_try_files = \
819         go/try/try.go
820
821 go_unicode_files = \
822         go/unicode/casetables.go \
823         go/unicode/digit.go \
824         go/unicode/letter.go \
825         go/unicode/tables.go
826
827 go_utf16_files = \
828         go/utf16/utf16.go
829
830 go_utf8_files = \
831         go/utf8/string.go \
832         go/utf8/utf8.go
833
834 go_websocket_files = \
835         go/websocket/client.go \
836         go/websocket/server.go \
837         go/websocket/websocket.go
838
839 go_xml_files = \
840         go/xml/read.go \
841         go/xml/xml.go
842
843 go_archive_tar_files = \
844         go/archive/tar/common.go \
845         go/archive/tar/reader.go \
846         go/archive/tar/writer.go
847
848 go_archive_zip_files = \
849         go/archive/zip/reader.go \
850         go/archive/zip/struct.go
851
852 go_compress_flate_files = \
853         go/compress/flate/deflate.go \
854         go/compress/flate/huffman_bit_writer.go \
855         go/compress/flate/huffman_code.go \
856         go/compress/flate/inflate.go \
857         go/compress/flate/reverse_bits.go \
858         go/compress/flate/token.go \
859         go/compress/flate/util.go
860
861 go_compress_gzip_files = \
862         go/compress/gzip/gzip.go \
863         go/compress/gzip/gunzip.go
864
865 go_compress_zlib_files = \
866         go/compress/zlib/reader.go \
867         go/compress/zlib/writer.go
868
869 go_container_heap_files = \
870         go/container/heap/heap.go
871
872 go_container_list_files = \
873         go/container/list/list.go
874
875 go_container_ring_files = \
876         go/container/ring/ring.go
877
878 go_container_vector_files = \
879         go/container/vector/defs.go \
880         go/container/vector/intvector.go \
881         go/container/vector/stringvector.go \
882         go/container/vector/vector.go
883
884 go_crypto_aes_files = \
885         go/crypto/aes/block.go \
886         go/crypto/aes/cipher.go \
887         go/crypto/aes/const.go
888 go_crypto_block_files = \
889         go/crypto/block/cbc.go \
890         go/crypto/block/cfb.go \
891         go/crypto/block/cmac.go \
892         go/crypto/block/cipher.go \
893         go/crypto/block/ctr.go \
894         go/crypto/block/eax.go \
895         go/crypto/block/ecb.go \
896         go/crypto/block/ofb.go \
897         go/crypto/block/xor.go
898 go_crypto_blowfish_files = \
899         go/crypto/blowfish/block.go \
900         go/crypto/blowfish/const.go \
901         go/crypto/blowfish/cipher.go
902 go_crypto_cast5_files = \
903         go/crypto/cast5/cast5.go
904 go_crypto_cipher_files = \
905         go/crypto/cipher/cbc.go \
906         go/crypto/cipher/cfb.go \
907         go/crypto/cipher/cipher.go \
908         go/crypto/cipher/ctr.go \
909         go/crypto/cipher/io.go \
910         go/crypto/cipher/ocfb.go \
911         go/crypto/cipher/ofb.go
912 go_crypto_elliptic_files = \
913         go/crypto/elliptic/elliptic.go
914 go_crypto_hmac_files = \
915         go/crypto/hmac/hmac.go
916 go_crypto_md4_files = \
917         go/crypto/md4/md4.go \
918         go/crypto/md4/md4block.go
919 go_crypto_md5_files = \
920         go/crypto/md5/md5.go \
921         go/crypto/md5/md5block.go
922 go_crypto_ocsp_files = \
923         go/crypto/ocsp/ocsp.go
924 go_crypto_rand_files = \
925         go/crypto/rand/rand.go \
926         go/crypto/rand/rand_unix.go
927 go_crypto_rc4_files = \
928         go/crypto/rc4/rc4.go
929 go_crypto_ripemd160_files = \
930         go/crypto/ripemd160/ripemd160.go \
931         go/crypto/ripemd160/ripemd160block.go
932 go_crypto_rsa_files = \
933         go/crypto/rsa/pkcs1v15.go \
934         go/crypto/rsa/rsa.go
935 go_crypto_sha1_files = \
936         go/crypto/sha1/sha1.go \
937         go/crypto/sha1/sha1block.go
938 go_crypto_sha256_files = \
939         go/crypto/sha256/sha256.go \
940         go/crypto/sha256/sha256block.go
941 go_crypto_sha512_files = \
942         go/crypto/sha512/sha512.go \
943         go/crypto/sha512/sha512block.go
944 go_crypto_subtle_files = \
945         go/crypto/subtle/constant_time.go
946 go_crypto_tls_files = \
947         go/crypto/tls/alert.go \
948         go/crypto/tls/ca_set.go \
949         go/crypto/tls/cipher_suites.go \
950         go/crypto/tls/common.go \
951         go/crypto/tls/conn.go \
952         go/crypto/tls/handshake_client.go \
953         go/crypto/tls/handshake_messages.go \
954         go/crypto/tls/handshake_server.go \
955         go/crypto/tls/key_agreement.go \
956         go/crypto/tls/prf.go \
957         go/crypto/tls/tls.go
958 go_crypto_twofish_files = \
959         go/crypto/twofish/twofish.go
960 go_crypto_x509_files = \
961         go/crypto/x509/x509.go
962 go_crypto_xtea_files = \
963         go/crypto/xtea/block.go \
964         go/crypto/xtea/cipher.go
965
966 go_crypto_openpgp_armor_files = \
967         go/crypto/openpgp/armor/armor.go \
968         go/crypto/openpgp/armor/encode.go
969 go_crypto_openpgp_error_files = \
970         go/crypto/openpgp/error/error.go
971 go_crypto_openpgp_s2k_files = \
972         go/crypto/openpgp/s2k/s2k.go
973
974 go_debug_dwarf_files = \
975         go/debug/dwarf/buf.go \
976         go/debug/dwarf/const.go \
977         go/debug/dwarf/entry.go \
978         go/debug/dwarf/open.go \
979         go/debug/dwarf/type.go \
980         go/debug/dwarf/unit.go
981 go_debug_elf_files = \
982         go/debug/elf/elf.go \
983         go/debug/elf/file.go
984 go_debug_gosym_files = \
985         go/debug/gosym/pclntab.go \
986         go/debug/gosym/symtab.go
987 go_debug_macho_files = \
988         go/debug/macho/file.go \
989         go/debug/macho/macho.go
990 go_debug_pe_files = \
991         go/debug/pe/file.go \
992         go/debug/pe/pe.go
993
994 go_debug_proc_files = \
995         go/debug/proc/proc.go \
996         go/debug/proc/proc_$(GOOS).go \
997         $(GO_DEBUG_PROC_REGS_OS_ARCH_FILE)
998
999 go_encoding_ascii85_files = \
1000         go/encoding/ascii85/ascii85.go
1001 go_encoding_base32_files = \
1002         go/encoding/base32/base32.go
1003 go_encoding_base64_files = \
1004         go/encoding/base64/base64.go
1005 go_encoding_binary_files = \
1006         go/encoding/binary/binary.go
1007 go_encoding_git85_files = \
1008         go/encoding/git85/git.go
1009 go_encoding_hex_files = \
1010         go/encoding/hex/hex.go
1011 go_encoding_line_files = \
1012         go/encoding/line/line.go
1013 go_encoding_pem_files = \
1014         go/encoding/pem/pem.go
1015
1016 go_exp_datafmt_files = \
1017         go/exp/datafmt/datafmt.go \
1018         go/exp/datafmt/parser.go
1019 go_exp_draw_files = \
1020         go/exp/draw/draw.go \
1021         go/exp/draw/event.go
1022 go_exp_eval_files = \
1023         go/exp/eval/abort.go \
1024         go/exp/eval/bridge.go \
1025         go/exp/eval/compiler.go \
1026         go/exp/eval/expr.go \
1027         go/exp/eval/expr1.go \
1028         go/exp/eval/func.go \
1029         go/exp/eval/scope.go \
1030         go/exp/eval/stmt.go \
1031         go/exp/eval/type.go \
1032         go/exp/eval/typec.go \
1033         go/exp/eval/value.go \
1034         go/exp/eval/world.go
1035
1036 go_go_ast_files = \
1037         go/go/ast/ast.go \
1038         go/go/ast/filter.go \
1039         go/go/ast/print.go \
1040         go/go/ast/scope.go \
1041         go/go/ast/walk.go
1042 go_go_doc_files = \
1043         go/go/doc/comment.go \
1044         go/go/doc/doc.go
1045 go_go_parser_files = \
1046         go/go/parser/interface.go \
1047         go/go/parser/parser.go
1048 go_go_printer_files = \
1049         go/go/printer/nodes.go \
1050         go/go/printer/printer.go
1051 go_go_scanner_files = \
1052         go/go/scanner/errors.go \
1053         go/go/scanner/scanner.go
1054 go_go_token_files = \
1055         go/go/token/position.go \
1056         go/go/token/token.go
1057 go_go_typechecker_files = \
1058         go/go/typechecker/scope.go \
1059         go/go/typechecker/typechecker.go \
1060         go/go/typechecker/universe.go
1061
1062 go_hash_adler32_files = \
1063         go/hash/adler32/adler32.go
1064 go_hash_crc32_files = \
1065         go/hash/crc32/crc32.go
1066 go_hash_crc64_files = \
1067         go/hash/crc64/crc64.go
1068
1069 go_http_pprof_files = \
1070         go/http/pprof/pprof.go
1071
1072 go_image_jpeg_files = \
1073         go/image/jpeg/huffman.go \
1074         go/image/jpeg/idct.go \
1075         go/image/jpeg/reader.go
1076
1077 go_image_png_files = \
1078         go/image/png/reader.go \
1079         go/image/png/writer.go
1080
1081 go_index_suffixarray_files = \
1082         go/index/suffixarray/qsufsort.go \
1083         go/index/suffixarray/suffixarray.go
1084
1085 go_io_ioutil_files = \
1086         go/io/ioutil/ioutil.go \
1087         go/io/ioutil/tempfile.go
1088
1089 go_mime_multipart_files = \
1090         go/mime/multipart/multipart.go
1091
1092 go_net_dict_files = \
1093         go/net/dict/dict.go
1094
1095 go_net_textproto_files = \
1096         go/net/textproto/pipeline.go \
1097         go/net/textproto/reader.go \
1098         go/net/textproto/textproto.go \
1099         go/net/textproto/writer.go
1100
1101 go_os_inotify_files = \
1102         go/os/inotify/inotify_linux.go
1103
1104 go_os_signal_files = \
1105         go/os/signal/signal.go \
1106         unix.go
1107
1108 go_rpc_jsonrpc_files = \
1109         go/rpc/jsonrpc/client.go \
1110         go/rpc/jsonrpc/server.go
1111
1112 go_runtime_debug_files = \
1113         go/runtime/debug/stack.go
1114 go_runtime_pprof_files = \
1115         go/runtime/pprof/pprof.go
1116
1117 go_testing_iotest_files = \
1118         go/testing/iotest/logger.go \
1119         go/testing/iotest/reader.go \
1120         go/testing/iotest/writer.go
1121 go_testing_quick_files = \
1122         go/testing/quick/quick.go
1123 go_testing_script_files = \
1124         go/testing/script/script.go
1125
1126 # Define Syscall and Syscall6.
1127 if LIBGO_IS_RTEMS
1128 syscall_syscall_file = syscalls/syscall_stubs.go
1129 else
1130 syscall_syscall_file = syscalls/syscall.go
1131 endif
1132
1133 # Declare libc functions that vary for largefile systems.
1134 if LIBGO_IS_LINUX
1135 # Always use lseek64 on GNU/Linux.
1136 syscall_filesize_file = syscalls/sysfile_largefile.go
1137 syscall_stat_file = syscalls/sysfile_stat_largefile.go
1138 else # !LIBGO_IS_LINUX
1139 if LIBGO_IS_SOLARIS
1140 # FIXME: Same for sparc vs. sparc64.  Introduce new/additional conditional?
1141 if LIBGO_IS_386
1142 # Use lseek64 on 386 Solaris.
1143 syscall_filesize_file = syscalls/sysfile_largefile.go
1144 syscall_stat_file = syscalls/sysfile_stat_largefile.go
1145 else # !LIBGO_IS_LINUX && LIBGO_IS_SOLARIS && !LIBGO_IS_386
1146 # Use lseek on amd64 Solaris.
1147 syscall_filesize_file = syscalls/sysfile_regfile.go
1148 syscall_stat_file = syscalls/sysfile_stat_regfile.go
1149 endif # !LIBGO_IS_386
1150 else # !LIBGO_IS_LINUX && !LIBGO_IS_SOLARIS
1151 # Use lseek by default.
1152 syscall_filesize_file = syscalls/sysfile_regfile.go
1153 syscall_stat_file = syscalls/sysfile_stat_regfile.go
1154 endif # !LIBGO_IS_SOLARIS
1155 endif # !LIBGO_IS_LINUX
1156
1157
1158 # Define ForkExec, PtraceForkExec, Exec, and Wait4.
1159 if LIBGO_IS_RTEMS
1160 syscall_exec_os_file = syscalls/exec_stubs.go
1161 else
1162 syscall_exec_os_file = syscalls/exec.go
1163 endif
1164
1165 # Define Sleep.
1166 if LIBGO_IS_RTEMS
1167 syscall_sleep_file = syscalls/sleep_rtems.go
1168 else
1169 syscall_sleep_file = syscalls/sleep_select.go
1170 endif
1171
1172 # Define Errstr.
1173 if LIBGO_IS_RTEMS
1174 syscall_errstr_file = syscalls/errstr_rtems.go
1175 else
1176 syscall_errstr_file = syscalls/errstr.go
1177 endif
1178
1179 # Declare libc_strerror_r which is the Go name for strerror_r.
1180 if LIBGO_IS_RTEMS
1181 # RTEMS uses newlib in which strerror_r returns char *.
1182 syscall_errstr_decl_file = syscalls/errstr_decl_rtems.go
1183 else
1184 if LIBGO_IS_LINUX
1185 # In Linux the POSIX strerror_r is called __xpg_strerror_r.
1186 syscall_errstr_decl_file = syscalls/errstr_decl_linux.go
1187 else
1188 # On other systems we hope strerror_r is just strerror_r.
1189 syscall_errstr_decl_file = syscalls/errstr_decl.go
1190 endif
1191 endif
1192
1193 # Define socket sizes and types.
1194 if LIBGO_IS_LINUX
1195 syscall_socket_os_file = syscalls/socket_linux.go
1196 else
1197 if LIBGO_IS_SOLARIS
1198 syscall_socket_os_file = syscalls/socket_solaris.go
1199 else
1200 syscall_socket_os_file = syscalls/socket_bsd.go
1201 endif
1202 endif
1203
1204 # Support for epoll.
1205 if LIBGO_IS_LINUX
1206 syscall_socket_epoll_file = syscalls/socket_epoll.go
1207 else
1208 syscall_socket_epoll_file =
1209 endif
1210
1211 # Support for uname.
1212 if LIBGO_IS_SOLARIS
1213 if LIBGO_IS_386
1214 # 32-bit Solaris 2/x86 needs _nuname, handled in syscall_solaris_386.go.
1215 syscall_uname_file =
1216 else # !LIBGO_IS_386 && LIBGO_IS_SOLARIS
1217 syscall_uname_file = syscalls/syscall_uname.go
1218 endif
1219 else # !LIBGO_IS_SOLARIS
1220 syscall_uname_file = syscalls/syscall_uname.go
1221 endif
1222
1223 syscall_arch.go: s-syscall_arch; @true
1224 s-syscall_arch: Makefile
1225         rm -f syscall_arch.go.tmp
1226         echo "package syscall" > syscall_arch.go.tmp
1227         echo 'const ARCH = "'$(GOARCH)'"' >> syscall_arch.go.tmp
1228         echo 'const OS = "'$(GOOS)'"' >> syscall_arch.go.tmp
1229         $(SHELL) $(srcdir)/../move-if-change syscall_arch.go.tmp syscall_arch.go
1230         $(STAMP) $@
1231
1232 go_syscall_files = \
1233         $(syscall_errstr_file) \
1234         $(syscall_errstr_decl_file) \
1235         syscalls/exec_helpers.go \
1236         $(syscall_exec_os_file) \
1237         $(syscall_filesize_file) \
1238         $(syscall_stat_file) \
1239         $(syscall_sleep_file) \
1240         syscalls/socket.go \
1241         $(syscall_socket_os_file) \
1242         $(syscall_socket_epoll_file) \
1243         $(syscall_syscall_file) \
1244         $(syscall_uname_file) \
1245         syscalls/syscall_unix.go \
1246         syscalls/stringbyte.go \
1247         syscalls/syscall_$(GOOS).go \
1248         $(GO_SYSCALLS_SYSCALL_OS_ARCH_FILE) \
1249         syscalls/sysfile_posix.go \
1250         sysinfo.go \
1251         syscall_arch.go
1252 go_syscall_c_files = \
1253         syscalls/errno.c
1254
1255 if LIBGO_IS_LINUX
1256 # os_lib_inotify_la = os/libinotify.la
1257 os_lib_inotify_la =
1258 else
1259 os_lib_inotify_la =
1260 endif
1261
1262 libgo_go_objs = \
1263         asn1/libasn1.la \
1264         big/libbig.la \
1265         bufio/libbufio.la \
1266         bytes/libbytes.la \
1267         cmath/libcmath.la \
1268         ebnf/libebnf.la \
1269         exec/libexec.la \
1270         expvar/libexpvar.la \
1271         flag/libflag.la \
1272         fmt/libfmt.la \
1273         gob/libgob.la \
1274         hash/libhash.la \
1275         html/libhtml.la \
1276         http/libhttp.la \
1277         image/libimage.la \
1278         io/libio.la \
1279         json/libjson.la \
1280         log/liblog.la \
1281         math/libmath.la \
1282         mime/libmime.la \
1283         net/libnet.la \
1284         netchan/libnetchan.la \
1285         os/libos.la \
1286         patch/libpatch.la \
1287         path/libpath.la \
1288         rand/librand.la \
1289         reflect/libreflect.la \
1290         regexp/libregexp.la \
1291         rpc/librpc.la \
1292         runtime/libruntime.la \
1293         scanner/libscanner.la \
1294         smtp/libsmtp.la \
1295         sort/libsort.la \
1296         strconv/libstrconv.la \
1297         strings/libstrings.la \
1298         sync/libsync.la \
1299         syslog/libsyslog.la \
1300         tabwriter/libtabwriter.la \
1301         template/libtemplate.la \
1302         time/libtime.la \
1303         try/libtry.la \
1304         unicode/libunicode.la \
1305         utf16/libutf16.la \
1306         utf8/libutf8.la \
1307         websocket/libwebsocket.la \
1308         xml/libxml.la \
1309         archive/libtar.la \
1310         archive/libzip.la \
1311         compress/libflate.la \
1312         compress/libgzip.la \
1313         compress/libzlib.la \
1314         container/libheap.la \
1315         container/liblist.la \
1316         container/libring.la \
1317         container/libvector.la \
1318         crypto/libaes.la \
1319         crypto/libblock.la \
1320         crypto/libblowfish.la \
1321         crypto/libcast5.la \
1322         crypto/libcipher.la \
1323         crypto/libelliptic.la \
1324         crypto/libhmac.la \
1325         crypto/libmd4.la \
1326         crypto/libmd5.la \
1327         crypto/libocsp.la \
1328         crypto/librand.la \
1329         crypto/librc4.la \
1330         crypto/libripemd160.la \
1331         crypto/librsa.la \
1332         crypto/libsha1.la \
1333         crypto/libsha256.la \
1334         crypto/libsha512.la \
1335         crypto/libsubtle.la \
1336         crypto/libtls.la \
1337         crypto/libtwofish.la \
1338         crypto/libx509.la \
1339         crypto/libxtea.la \
1340         crypto/openpgp/libarmor.la \
1341         crypto/openpgp/liberror.la \
1342         crypto/openpgp/libs2k.la \
1343         debug/libdwarf.la \
1344         debug/libelf.la \
1345         debug/libgosym.la \
1346         debug/libmacho.la \
1347         debug/libpe.la \
1348         debug/libproc.la \
1349         encoding/libascii85.la \
1350         encoding/libbase32.la \
1351         encoding/libbase64.la \
1352         encoding/libbinary.la \
1353         encoding/libgit85.la \
1354         encoding/libhex.la \
1355         encoding/libline.la \
1356         encoding/libpem.la \
1357         exp/libdatafmt.la \
1358         exp/libdraw.la \
1359         exp/libeval.la \
1360         go/libast.la \
1361         go/libdoc.la \
1362         go/libparser.la \
1363         go/libprinter.la \
1364         go/libscanner.la \
1365         go/libtoken.la \
1366         go/libtypechecker.la \
1367         hash/libadler32.la \
1368         hash/libcrc32.la \
1369         hash/libcrc64.la \
1370         http/libpprof.la \
1371         image/libjpeg.la \
1372         image/libpng.la \
1373         index/libsuffixarray.la \
1374         io/libioutil.la \
1375         mime/libmultipart.la \
1376         net/libdict.la \
1377         net/libtextproto.la \
1378         $(os_lib_inotify_la) \
1379         os/libsignal.la \
1380         rpc/libjsonrpc.la \
1381         runtime/libdebug.la \
1382         runtime/libpprof.la \
1383         syscalls/libsyscall.la \
1384         testing/libtesting.la \
1385         testing/libiotest.la \
1386         testing/libquick.la \
1387         testing/libscript.la
1388
1389 libgo_la_SOURCES = $(runtime_files)
1390
1391 libgo_la_LIBADD = \
1392         $(libgo_go_objs) $(LIBFFI) $(PTHREAD_LIBS) $(MATH_LIBS) $(NET_LIBS)
1393
1394 libgobegin_a_SOURCES = \
1395         runtime/go-main.c
1396
1397 LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
1398
1399 GOCFLAGS = $(CFLAGS)
1400 AM_GOCFLAGS = $(STRINGOPS_FLAG)
1401 GOCOMPILE = $(GOC) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_GOCFLAGS) $(GOCFLAGS)
1402
1403 LTGOCOMPILE = $(LIBTOOL) --tag GO --mode=compile $(GOC) $(INCLUDES) \
1404         $(AM_GOCFLAGS) $(GOCFLAGS)
1405
1406 GOLINK = $(LIBTOOL) --tag GO --mode-link $(GOC) \
1407         $(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_GOCFLAGS) $(LTLDFLAGS) -o $@
1408
1409 # Build a package.  This builds a .o and a .lo.
1410 BUILDPACKAGE = \
1411         rm -f `echo $@ | sed -e 's|/lib|/|' -e 's/\.a/.gox/'`; \
1412         test -d $(@D) || $(MKDIR_P) $(@D); \
1413         rm -f $@; \
1414         files=`echo $^ | sed -e 's/[^ ]*\.gox//g'`; \
1415         $(LTGOCOMPILE) -I . -c -fgo-prefix="libgo_$(@D)" -o $@ $$files
1416
1417 # Build a .la file from a .lo file.
1418 .lo.la:
1419         $(LINK) $<
1420
1421 if LIBGO_IS_RTEMS
1422 use_dejagnu = yes
1423 else
1424 use_dejagnu = no
1425 endif
1426
1427 # Check a package.
1428 CHECK = \
1429         @GC="$(GOC) -L `${PWD_COMMAND}` -L `${PWD_COMMAND}`/.libs -Wl,-R,`${PWD_COMMAND}`/.libs"; \
1430         export GC; \
1431         RUNTESTFLAGS="$(RUNTESTFLAGS)"; \
1432         export RUNTESTFLAGS; \
1433         MAKE="$(MAKE)"; \
1434         export MAKE; \
1435         rm -f $@-log; \
1436         prefix=`if test "$(@D)" = "regexp"; then echo regexp-test; else dirname $(@D); fi`; \
1437         test "$${prefix}" != "." || prefix="$(@D)"; \
1438         if test "$(use_dejagnu)" = "yes"; then \
1439           $(SHELL) $(srcdir)/testsuite/gotest --dejagnu=yes --basedir=$(srcdir) --srcdir=$(srcdir)/go/$(@D) --prefix="libgo_$${prefix}" --pkgfiles="$(go_$(subst /,_,$(@D))_files)"; \
1440         else \
1441           if $(SHELL) $(srcdir)/testsuite/gotest --basedir=$(srcdir) --srcdir=$(srcdir)/go/$(@D) --prefix="libgo_$${prefix}" --pkgfiles="$(go_$(subst /,_,$(@D))_files)" >>$@-log 2>&1; then \
1442             echo "PASS: $(@D)"; \
1443           else \
1444             echo "FAIL: $(@D)"; \
1445             cat $@-log; \
1446             exit 1; \
1447           fi; \
1448         fi
1449
1450 # Build all packages before checking any.
1451 CHECK_DEPS = libgo.la libgobegin.a \
1452         $(toolexeclib_DATA) \
1453         $(toolexeclibarchive_DATA) \
1454         $(toolexeclibcompress_DATA) \
1455         $(toolexeclibcontainer_DATA) \
1456         $(toolexeclibcrypto_DATA) \
1457         $(toolexeclibdebug_DATA) \
1458         $(toolexeclibencoding_DATA) \
1459         $(toolexeclibexp_DATA) \
1460         $(toolexeclibgo_DATA) \
1461         $(toolexeclibhash_DATA) \
1462         $(toolexeclibhttp_DATA) \
1463         $(toolexeclibimage_DATA) \
1464         $(toolexeclibio_DATA) \
1465         $(toolexeclibos_DATA) \
1466         $(toolexeclibrpc_DATA) \
1467         $(toolexeclibruntime_DATA) \
1468         $(toolexeclibtesting_DATA)
1469
1470 asn1/libasn1.$(OBJEXT): $(go_asn1_files) bytes.gox fmt.gox io.gox os.gox \
1471                 reflect.gox strconv.gox strings.gox time.gox
1472         $(BUILDPACKAGE)
1473 asn1/libasn1.lo: asn1/libasn1.$(OBJEXT)
1474 asn1/libasn1.la: asn1/libasn1.lo
1475 asn1/check: $(CHECK_DEPS)
1476         $(CHECK)
1477 .PHONY: asn1/check
1478
1479 big/libbig.$(OBJEXT): $(go_big_files) fmt.gox rand.gox strings.gox
1480         $(BUILDPACKAGE)
1481 big/libbig.lo: big/libbig.$(OBJEXT)
1482 big/libbig.la: big/libbig.lo
1483 big/check: $(CHECK_DEPS)
1484         $(CHECK)
1485 .PHONY: big/check
1486
1487 bufio/libbufio.$(OBJEXT): $(go_bufio_files) bytes.gox io.gox os.gox \
1488                 strconv.gox utf8.gox
1489         $(BUILDPACKAGE)
1490 bufio/libbufio.lo: bufio/libbufio.$(OBJEXT)
1491 bufio/libbufio.la: bufio/libbufio.lo
1492 bufio/check: $(CHECK_DEPS)
1493         $(CHECK)
1494 .PHONY: bufio/check
1495
1496 bytes/bytes.$(OBJEXT): $(go_bytes_files) $(go_bytes_c_files) io.gox os.gox \
1497                 unicode.gox utf8.gox
1498         test -d bytes || $(MKDIR_P) bytes
1499         $(LTGOCOMPILE) -I . -c -o bytes/bytes.$(OBJEXT) -fgo-prefix=libgo_bytes $(srcdir)/go/bytes/buffer.go $(srcdir)/go/bytes/bytes.go $(srcdir)/go/bytes/bytes_decl.go
1500 bytes/index.$(OBJEXT): go/bytes/indexbyte.c bytes/bytes.$(OBJEXT)
1501         $(LTCOMPILE) -c -o bytes/index.$(OBJEXT) $(srcdir)/go/bytes/indexbyte.c
1502 bytes/libbytes.la: bytes/bytes.$(OBJEXT) bytes/index.$(OBJEXT)
1503         $(LINK) bytes/bytes.lo bytes/index.lo
1504 bytes/check: $(CHECK_DEPS)
1505         $(CHECK)
1506 .PHONY: bytes/check
1507
1508 cmath/libcmath.$(OBJEXT): $(go_cmath_files) math.gox
1509         $(BUILDPACKAGE)
1510 cmath/libcmath.lo: cmath/libcmath.$(OBJEXT)
1511 cmath/libcmath.la: cmath/libcmath.lo
1512 cmath/check: $(CHECK_DEPS)
1513         $(CHECK)
1514 .PHONY: cmath/check
1515
1516 ebnf/libebnf.$(OBJEXT): $(go_ebnf_files) container/vector.gox go/scanner.gox \
1517                 go/token.gox os.gox strconv.gox unicode.gox utf8.gox
1518         $(BUILDPACKAGE)
1519 ebnf/libebnf.lo: ebnf/libebnf.$(OBJEXT)
1520 ebnf/libebnf.la: ebnf/libebnf.lo
1521 ebnf/check: $(CHECK_DEPS)
1522         $(CHECK)
1523 .PHONY: ebnf/check
1524
1525 exec/libexec.$(OBJEXT): $(go_exec_files) os.gox strings.gox
1526         $(BUILDPACKAGE)
1527 exec/libexec.lo: exec/libexec.$(OBJEXT)
1528 exec/libexec.la: exec/libexec.lo
1529 exec/check: $(CHECK_DEPS)
1530         $(CHECK)
1531 .PHONY: exec/check
1532
1533 expvar/libexpvar.$(OBJEXT): $(go_expvar_files) bytes.gox fmt.gox http.gox \
1534                 json.gox log.gox os.gox runtime.gox strconv.gox sync.gox
1535         $(BUILDPACKAGE)
1536 expvar/libexpvar.lo: expvar/libexpvar.$(OBJEXT)
1537 expvar/libexpvar.la: expvar/libexpvar.lo
1538 expvar/check: $(CHECK_DEPS)
1539         $(CHECK)
1540 .PHONY: expvar/check
1541
1542 flag/libflag.$(OBJEXT): $(go_flag_files) fmt.gox os.gox strconv.gox
1543         $(BUILDPACKAGE)
1544 flag/libflag.lo: flag/libflag.$(OBJEXT)
1545 flag/libflag.la: flag/libflag.lo
1546 flag/check: $(CHECK_DEPS)
1547         $(CHECK)
1548 .PHONY: flag/check
1549
1550 fmt/libfmt.$(OBJEXT): $(go_fmt_files) bytes.gox io.gox os.gox reflect.gox \
1551                 strconv.gox strings.gox unicode.gox utf8.gox
1552         $(BUILDPACKAGE)
1553 fmt/libfmt.lo: fmt/libfmt.$(OBJEXT)
1554 fmt/libfmt.la: fmt/libfmt.lo
1555 fmt/check: $(CHECK_DEPS)
1556         $(CHECK)
1557 .PHONY: fmt/check
1558
1559 gob/libgob.$(OBJEXT): $(go_gob_files) bytes.gox fmt.gox io.gox math.gox \
1560                 os.gox reflect.gox runtime.gox strings.gox sync.gox \
1561                 unicode.gox utf8.gox
1562         $(BUILDPACKAGE)
1563 gob/libgob.lo: gob/libgob.$(OBJEXT)
1564 gob/libgob.la: gob/libgob.lo
1565 gob/check: $(CHECK_DEPS)
1566         $(CHECK)
1567 .PHONY: gob/check
1568
1569 hash/libhash.$(OBJEXT): $(go_hash_files) io.gox
1570         $(BUILDPACKAGE)
1571 hash/libhash.lo: hash/libhash.$(OBJEXT)
1572 hash/libhash.la: hash/libhash.lo
1573 hash/check: $(CHECK_DEPS)
1574         $(CHECK)
1575 .PHONY: hash/check
1576
1577 html/libhtml.$(OBJEXT): $(go_html_files) bytes.gox io.gox os.gox strconv.gox \
1578                 strings.gox utf8.gox
1579         $(BUILDPACKAGE)
1580 html/libhtml.lo: html/libhtml.$(OBJEXT)
1581 html/libhtml.la: html/libhtml.lo
1582 html/check: $(CHECK_DEPS)
1583         $(CHECK)
1584 .PHONY: html/check
1585
1586 http/libhttp.$(OBJEXT): $(go_http_files) bufio.gox bytes.gox \
1587                 container/list.gox container/vector.gox crypto/rand.gox \
1588                 crypto/tls.gox encoding/base64.gox fmt.gox io.gox \
1589                 io/ioutil.gox log.gox mime.gox mime/multipart.gox net.gox \
1590                 os.gox path.gox sort.gox strconv.gox strings.gox sync.gox \
1591                 time.gox utf8.gox
1592         $(BUILDPACKAGE)
1593 http/libhttp.lo: http/libhttp.$(OBJEXT)
1594 http/libhttp.la: http/libhttp.lo
1595 http/check: $(CHECK_DEPS)
1596         $(CHECK)
1597 .PHONY: http/check
1598
1599 image/libimage.$(OBJEXT): $(go_image_files) bufio.gox io.gox os.gox strconv.gox
1600         $(BUILDPACKAGE)
1601 image/libimage.lo: image/libimage.$(OBJEXT)
1602 image/libimage.la: image/libimage.lo
1603 image/check: $(CHECK_DEPS)
1604         $(CHECK)
1605 .PHONY: image/check
1606
1607 io/libio.$(OBJEXT): $(go_io_files) os.gox runtime.gox sync.gox
1608         $(BUILDPACKAGE)
1609 io/libio.lo: io/libio.$(OBJEXT)
1610 io/libio.la: io/libio.lo
1611 io/check: $(CHECK_DEPS)
1612         $(CHECK)
1613 .PHONY: io/check
1614
1615 json/libjson.$(OBJEXT): $(go_json_files) bytes.gox container/vector.gox \
1616                 fmt.gox io.gox math.gox os.gox reflect.gox runtime.gox \
1617                 strconv.gox strings.gox unicode.gox utf16.gox utf8.gox
1618         $(BUILDPACKAGE)
1619 json/libjson.lo: json/libjson.$(OBJEXT)
1620 json/libjson.la: json/libjson.lo
1621 json/check: $(CHECK_DEPS)
1622         $(CHECK)
1623 .PHONY: json/check
1624
1625 log/liblog.$(OBJEXT): $(go_log_files) bytes.gox fmt.gox io.gox runtime.gox \
1626                 os.gox sync.gox time.gox
1627         $(BUILDPACKAGE)
1628 log/liblog.lo: log/liblog.$(OBJEXT)
1629 log/liblog.la: log/liblog.lo
1630 log/check: $(CHECK_DEPS)
1631         $(CHECK)
1632 .PHONY: log/check
1633
1634 math/libmath.$(OBJEXT): $(go_math_files)
1635         $(BUILDPACKAGE)
1636 math/libmath.lo: math/libmath.$(OBJEXT)
1637 math/libmath.la: math/libmath.lo
1638 math/check: $(CHECK_DEPS)
1639         $(CHECK)
1640 .PHONY: math/check
1641
1642 mime/libmime.$(OBJEXT): $(go_mime_files) bufio.gox bytes.gox os.gox \
1643                 strings.gox sync.gox unicode.gox
1644         $(BUILDPACKAGE)
1645 mime/libmime.lo: mime/libmime.$(OBJEXT)
1646 mime/libmime.la: mime/libmime.lo
1647 mime/check: $(CHECK_DEPS)
1648         $(CHECK)
1649 .PHONY: mime/check
1650
1651 net/libnet.$(OBJEXT): $(go_net_files) bytes.gox fmt.gox io.gox os.gox \
1652                 reflect.gox strconv.gox strings.gox sync.gox syscall.gox
1653         $(BUILDPACKAGE)
1654 net/libnet.lo: net/libnet.$(OBJEXT)
1655 net/libnet.la: net/libnet.lo
1656 net/check: $(CHECK_DEPS)
1657         $(CHECK)
1658 .PHONY: net/check
1659
1660 netchan/libnetchan.$(OBJEXT): $(go_netchan_files) gob.gox log.gox net.gox \
1661                 os.gox reflect.gox strconv.gox sync.gox time.gox
1662         $(BUILDPACKAGE)
1663 netchan/libnetchan.lo: netchan/libnetchan.$(OBJEXT)
1664 netchan/libnetchan.la: netchan/libnetchan.lo
1665 netchan/check: $(CHECK_DEPS)
1666         $(CHECK)
1667 .PHONY: netchan/check
1668
1669 os/libos.$(OBJEXT): $(go_os_files) sync.gox syscall.gox
1670         $(BUILDPACKAGE)
1671 os/libos.lo: os/libos.$(OBJEXT)
1672 os/libos.la: os/libos.lo
1673 os/check: $(CHECK_DEPS)
1674         $(CHECK)
1675 .PHONY: os/check
1676
1677 patch/libpatch.$(OBJEXT): $(go_patch_files) bytes.gox compress/zlib.gox \
1678                 crypto/sha1.gox encoding/git85.gox fmt.gox io.gox os.gox \
1679                 path.gox strings.gox
1680         $(BUILDPACKAGE)
1681 patch/libpatch.lo: patch/libpatch.$(OBJEXT)
1682 patch/libpatch.la: patch/libpatch.lo
1683 patch/check: $(CHECK_DEPS)
1684         $(CHECK)
1685 .PHONY: patch/check
1686
1687 path/libpath.$(OBJEXT): $(go_path_files) io/ioutil.gox os.gox sort.gox \
1688                 strings.gox utf8.gox
1689         $(BUILDPACKAGE)
1690 path/libpath.lo: path/libpath.$(OBJEXT)
1691 path/libpath.la: path/libpath.lo
1692 path/check: $(CHECK_DEPS)
1693         $(CHECK)
1694 .PHONY: path/check
1695
1696 rand/librand.$(OBJEXT): $(go_rand_files) math.gox sync.gox
1697         $(BUILDPACKAGE)
1698 rand/librand.lo: rand/librand.$(OBJEXT)
1699 rand/librand.la: rand/librand.lo
1700 rand/check: $(CHECK_DEPS)
1701         $(CHECK)
1702 .PHONY: rand/check
1703
1704 reflect/libreflect.$(OBJEXT): $(go_reflect_files) math.gox runtime.gox \
1705                 strconv.gox sync.gox
1706         $(BUILDPACKAGE)
1707 reflect/libreflect.lo: reflect/libreflect.$(OBJEXT)
1708 reflect/libreflect.la: reflect/libreflect.lo
1709 reflect/check: $(CHECK_DEPS)
1710         $(CHECK)
1711 .PHONY: reflect/check
1712
1713 regexp/libregexp.$(OBJEXT): $(go_regexp_files) bytes.gox io.gox os.gox \
1714                 strings.gox utf8.gox
1715         $(BUILDPACKAGE)
1716 regexp/libregexp.lo: regexp/libregexp.$(OBJEXT)
1717 regexp/libregexp.la: regexp/libregexp.lo
1718 regexp/check: $(CHECK_DEPS)
1719         $(CHECK)
1720 .PHONY: regexp/check
1721
1722 rpc/librpc.$(OBJEXT): $(go_rpc_files) bufio.gox fmt.gox gob.gox http.gox \
1723                 io.gox log.gox net.gox os.gox reflect.gox sort.gox \
1724                 strings.gox strconv.gox sync.gox template.gox unicode.gox \
1725                 utf8.gox
1726         $(BUILDPACKAGE)
1727 rpc/librpc.lo: rpc/librpc.$(OBJEXT)
1728 rpc/librpc.la: rpc/librpc.lo
1729 rpc/check: $(CHECK_DEPS)
1730         $(CHECK)
1731 .PHONY: rpc/check
1732
1733 runtime/libruntime.$(OBJEXT): $(go_runtime_files)
1734         $(BUILDPACKAGE)
1735 runtime/libruntime.lo: runtime/libruntime.$(OBJEXT)
1736 runtime/libruntime.la: runtime/libruntime.lo
1737 runtime/check: $(CHECK_DEPS)
1738         $(CHECK)
1739 .PHONY: runtime/check
1740
1741 scanner/libscanner.$(OBJEXT): $(go_scanner_files) bytes.gox fmt.gox io.gox \
1742                 os.gox unicode.gox utf8.gox
1743         $(BUILDPACKAGE)
1744 scanner/libscanner.lo: scanner/libscanner.$(OBJEXT)
1745 scanner/libscanner.la: scanner/libscanner.lo
1746 scanner/check: $(CHECK_DEPS)
1747         $(CHECK)
1748 .PHONY: scanner/check
1749
1750 smtp/libsmtp.$(OBJEXT): $(go_smtp_files) crypto/tls.gox encoding/base64.gox \
1751                 io.gox net.gox net/textproto.gox os.gox strings.gox
1752         $(BUILDPACKAGE)
1753 smtp/libsmtp.lo: smtp/libsmtp.$(OBJEXT)
1754 smtp/libsmtp.la: smtp/libsmtp.lo
1755 smtp/check: $(CHECK_DEPS)
1756         $(CHECK)
1757 .PHONY: smtp/check
1758
1759 sort/libsort.$(OBJEXT): $(go_sort_files)
1760         $(BUILDPACKAGE)
1761 sort/libsort.lo: sort/libsort.$(OBJEXT)
1762 sort/libsort.la: sort/libsort.lo
1763 sort/check: $(CHECK_DEPS)
1764         $(CHECK)
1765 .PHONY: sort/check
1766
1767 strconv/libstrconv.$(OBJEXT): $(go_strconv_files) bytes.gox math.gox os.gox \
1768                 strings.gox unicode.gox utf8.gox
1769         $(BUILDPACKAGE)
1770 strconv/libstrconv.lo: strconv/libstrconv.$(OBJEXT)
1771 strconv/libstrconv.la: strconv/libstrconv.lo
1772 strconv/check: $(CHECK_DEPS)
1773         $(CHECK)
1774 .PHONY: strconv/check
1775
1776 strings/libstrings.$(OBJEXT): $(go_strings_files) os.gox unicode.gox utf8.gox
1777         $(BUILDPACKAGE)
1778 strings/libstrings.lo: strings/libstrings.$(OBJEXT)
1779 strings/libstrings.la: strings/libstrings.lo
1780 strings/check: $(CHECK_DEPS)
1781         $(CHECK)
1782 .PHONY: strings/check
1783
1784 sync/mutex.$(OBJEXT): $(go_sync_files) $(go_sync_c_files) runtime.gox
1785         test -d sync || $(MKDIR_P) sync
1786         $(LTGOCOMPILE) -I . -c -o sync/mutex.$(OBJEXT) -fgo-prefix=libgo_sync $(srcdir)/go/sync/mutex.go $(srcdir)/go/sync/once.go $(srcdir)/go/sync/rwmutex.go
1787 sync/cas.$(OBJEXT): $(srcdir)/go/sync/cas.c sync/mutex.$(OBJEXT)
1788         $(LTCOMPILE) -c -o sync/cas.$(OBJEXT) $(srcdir)/go/sync/cas.c
1789 sync/libsync.la: sync/mutex.$(OBJEXT) sync/cas.$(OBJEXT)
1790         $(LINK) sync/mutex.lo sync/cas.lo
1791 sync/check: $(CHECK_DEPS)
1792         $(CHECK)
1793 .PHONY: sync/check
1794
1795 syslog/syslog.$(OBJEXT): $(go_syslog_files) fmt.gox log.gox net.gox os.gox \
1796                 syscall.gox
1797         test -d syslog || $(MKDIR_P) syslog
1798         $(LTGOCOMPILE) -I . -c -o $@ -fgo-prefix=libgo_syslog $(srcdir)/go/syslog/syslog.go $(srcdir)/$(go_syslog_file)
1799 syslog/syslog_c.$(OBJEXT): $(srcdir)/go/syslog/syslog_c.c syslog/syslog.$(OBJEXT)
1800         $(LTCOMPILE) -c -o $@ $(srcdir)/go/syslog/syslog_c.c
1801 syslog/libsyslog.la: syslog/syslog.$(OBJEXT) syslog/syslog_c.$(OBJEXT)
1802         $(LINK) syslog/syslog.lo syslog/syslog_c.lo
1803 syslog/check: $(CHECK_DEPS)
1804         $(CHECK)
1805 .PHONY: syslog/check
1806
1807 tabwriter/libtabwriter.$(OBJEXT): $(go_tabwriter_files) bytes.gox io.gox \
1808                 os.gox utf8.gox
1809         $(BUILDPACKAGE)
1810 tabwriter/libtabwriter.lo: tabwriter/libtabwriter.$(OBJEXT)
1811 tabwriter/libtabwriter.la: tabwriter/libtabwriter.lo
1812 tabwriter/check: $(CHECK_DEPS)
1813         $(CHECK)
1814 .PHONY: tabwriter/check
1815
1816 template/libtemplate.$(OBJEXT): $(go_template_files) bytes.gox fmt.gox io.gox \
1817                 os.gox reflect.gox runtime.gox strings.gox container/vector.gox
1818         $(BUILDPACKAGE)
1819 template/libtemplate.lo: template/libtemplate.$(OBJEXT)
1820 template/libtemplate.la: template/libtemplate.lo
1821 template/check: $(CHECK_DEPS)
1822         $(CHECK)
1823 .PHONY: template/check
1824
1825 testing/libtesting.$(OBJEXT): $(go_testing_files) flag.gox fmt.gox os.gox \
1826                 regexp.gox runtime.gox time.gox
1827         $(BUILDPACKAGE)
1828 testing/libtesting.lo: testing/libtesting.$(OBJEXT)
1829 testing/libtesting.la: testing/libtesting.lo
1830 testing/check: $(CHECK_DEPS)
1831         $(CHECK)
1832 .PHONY: testing/check
1833
1834 time/libtime.$(OBJEXT): $(go_time_files) bytes.gox container/heap.gox \
1835                 io/ioutil.gox os.gox strconv.gox sync.gox syscall.gox
1836         $(BUILDPACKAGE)
1837 time/libtime.lo: time/libtime.$(OBJEXT)
1838 time/libtime.la: time/libtime.lo
1839 time/check: $(CHECK_DEPS)
1840         $(CHECK)
1841 .PHONY: time/check
1842
1843 try/libtry.$(OBJEXT): $(go_try_files) fmt.gox io.gox os.gox reflect.gox \
1844                 unicode.gox
1845         $(BUILDPACKAGE)
1846 try/libtry.lo: try/libtry.$(OBJEXT)
1847 try/libtry.la: try/libtry.lo
1848 try/check: $(CHECK_DEPS)
1849         $(CHECK)
1850 .PHONY: try/check
1851
1852 unicode/libunicode.$(OBJEXT): $(go_unicode_files)
1853         $(BUILDPACKAGE)
1854 unicode/libunicode.lo: unicode/libunicode.$(OBJEXT)
1855 unicode/libunicode.la: unicode/libunicode.lo
1856 unicode/check: $(CHECK_DEPS)
1857         $(CHECK)
1858 .PHONY: unicode/check
1859
1860 utf16/libutf16.$(OBJEXT): $(go_utf16_files) unicode.gox
1861         $(BUILDPACKAGE)
1862 utf16/libutf16.lo: utf16/libutf16.$(OBJEXT)
1863 utf16/libutf16.la: utf16/libutf16.lo
1864 utf16/check: $(CHECK_DEPS)
1865         $(CHECK)
1866 .PHONY: utf16/check
1867
1868 utf8/libutf8.$(OBJEXT): $(go_utf8_files) unicode.gox
1869         $(BUILDPACKAGE)
1870 utf8/libutf8.lo: utf8/libutf8.$(OBJEXT)
1871 utf8/libutf8.la: utf8/libutf8.lo
1872 utf8/check: $(CHECK_DEPS)
1873         $(CHECK)
1874 .PHONY: utf8/check
1875
1876 websocket/libwebsocket.$(OBJEXT): $(go_websocket_files) bufio.gox bytes.gox \
1877                 container/vector.gox crypto/md5.gox crypto/tls.gox \
1878                 encoding/binary.gox fmt.gox http.gox io.gox net.gox os.gox \
1879                 rand.gox strings.gox
1880         $(BUILDPACKAGE)
1881 websocket/libwebsocket.lo: websocket/libwebsocket.$(OBJEXT)
1882 websocket/libwebsocket.la: websocket/libwebsocket.lo
1883 websocket/check: $(CHECK_DEPS)
1884         $(CHECK)
1885 .PHONY: websocket/check
1886
1887 xml/libxml.$(OBJEXT): $(go_xml_files) bufio.gox bytes.gox fmt.gox io.gox \
1888                 os.gox reflect.gox strconv.gox strings.gox unicode.gox utf8.gox
1889         $(BUILDPACKAGE)
1890 xml/libxml.lo: xml/libxml.$(OBJEXT)
1891 xml/libxml.la: xml/libxml.lo
1892 xml/check: $(CHECK_DEPS)
1893         $(CHECK)
1894 .PHONY: xml/check
1895
1896 archive/libtar.$(OBJEXT): $(go_archive_tar_files) bytes.gox io.gox os.gox \
1897                 strconv.gox strings.gox
1898         $(BUILDPACKAGE)
1899 archive/libtar.lo: archive/libtar.$(OBJEXT)
1900 archive/libtar.la: archive/libtar.lo
1901 archive/tar/check: $(CHECK_DEPS)
1902         @$(MKDIR_P) archive/tar
1903         $(CHECK)
1904 .PHONY: archive/tar/check
1905
1906 archive/libzip.$(OBJEXT): $(go_archive_zip_files) bufio.gox bytes.gox \
1907                 compress/flate.gox hash.gox hash/crc32.gox \
1908                 encoding/binary.gox io.gox os.gox
1909         $(BUILDPACKAGE)
1910 archive/libzip.lo: archive/libzip.$(OBJEXT)
1911 archive/libzip.la: archive/libzip.lo
1912 archive/zip/check: $(CHECK_DEPS)
1913         @$(MKDIR_P) archive/zip
1914         $(CHECK)
1915 .PHONY: archive/zip/check
1916
1917 compress/libflate.$(OBJEXT): $(go_compress_flate_files) bufio.gox io.gox \
1918                 math.gox os.gox sort.gox strconv.gox
1919         $(BUILDPACKAGE)
1920 compress/libflate.lo: compress/libflate.$(OBJEXT)
1921 compress/libflate.la: compress/libflate.lo
1922 compress/flate/check: $(CHECK_DEPS)
1923         @$(MKDIR_P) compress/flate
1924         $(CHECK)
1925 .PHONY: compress/flate/check
1926
1927 compress/libgzip.$(OBJEXT): $(go_compress_gzip_files) bufio.gox \
1928                 compress/flate.gox hash.gox hash/crc32.gox io.gox os.gox
1929         $(BUILDPACKAGE)
1930 compress/libgzip.lo: compress/libgzip.$(OBJEXT)
1931 compress/libgzip.la: compress/libgzip.lo
1932 compress/gzip/check: $(CHECK_DEPS)
1933         @$(MKDIR_P) compress/gzip
1934         $(CHECK)
1935 .PHONY: compress/gzip/check
1936
1937 compress/libzlib.$(OBJEXT): $(go_compress_zlib_files) bufio.gox \
1938                 compress/flate.gox hash.gox hash/adler32.gox io.gox os.gox
1939         $(BUILDPACKAGE)
1940 compress/libzlib.lo: compress/libzlib.$(OBJEXT)
1941 compress/libzlib.la: compress/libzlib.lo
1942 compress/zlib/check: $(CHECK_DEPS)
1943         @$(MKDIR_P) compress/zlib
1944         $(CHECK)
1945 .PHONY: compress/zlib/check
1946
1947 container/libheap.$(OBJEXT): $(go_container_heap_files) sort.gox
1948         $(BUILDPACKAGE)
1949 container/libheap.lo: container/libheap.$(OBJEXT)
1950 container/libheap.la: container/libheap.lo
1951 container/heap/check: $(CHECK_DEPS)
1952         @$(MKDIR_P) container/heap
1953         $(CHECK)
1954 .PHONY: container/heap/check
1955
1956 container/liblist.$(OBJEXT): $(go_container_list_files)
1957         $(BUILDPACKAGE)
1958 container/liblist.lo: container/liblist.$(OBJEXT)
1959 container/liblist.la: container/liblist.lo
1960 container/list/check: $(CHECK_DEPS)
1961         @$(MKDIR_P) container/list
1962         $(CHECK)
1963 .PHONY: container/list/check
1964
1965 container/libring.$(OBJEXT): $(go_container_ring_files)
1966         $(BUILDPACKAGE)
1967 container/libring.lo: container/libring.$(OBJEXT)
1968 container/libring.la: container/libring.lo
1969 container/ring/check: $(CHECK_DEPS)
1970         @$(MKDIR_P) container/ring
1971         $(CHECK)
1972 .PHONY: container/ring/check
1973
1974 container/libvector.$(OBJEXT): $(go_container_vector_files)
1975         $(BUILDPACKAGE)
1976 container/libvector.lo: container/libvector.$(OBJEXT)
1977 container/libvector.la: container/libvector.lo
1978 container/vector/check: $(CHECK_DEPS)
1979         @$(MKDIR_P) container/vector
1980         $(CHECK)
1981 .PHONY: container/vector/check
1982
1983 crypto/libaes.$(OBJEXT): $(go_crypto_aes_files) os.gox strconv.gox
1984         $(BUILDPACKAGE)
1985 crypto/libaes.lo: crypto/libaes.$(OBJEXT)
1986 crypto/libaes.la: crypto/libaes.lo
1987 crypto/aes/check: $(CHECK_DEPS)
1988         @$(MKDIR_P) crypto/aes
1989         $(CHECK)
1990 .PHONY: crypto/aes/check
1991
1992 crypto/libblock.$(OBJEXT): $(go_crypto_block_files) fmt.gox io.gox os.gox \
1993                 strconv.gox
1994         $(BUILDPACKAGE)
1995 crypto/libblock.lo: crypto/libblock.$(OBJEXT)
1996 crypto/libblock.la: crypto/libblock.lo
1997 crypto/block/check: $(CHECK_DEPS)
1998         @$(MKDIR_P) crypto/block
1999         $(CHECK)
2000 .PHONY: crypto/block/check
2001
2002 crypto/libblowfish.$(OBJEXT): $(go_crypto_blowfish_files) os.gox strconv.gox
2003         $(BUILDPACKAGE)
2004 crypto/libblowfish.lo: crypto/libblowfish.$(OBJEXT)
2005 crypto/libblowfish.la: crypto/libblowfish.lo
2006 crypto/blowfish/check: $(CHECK_DEPS)
2007         @$(MKDIR_P) crypto/blowfish
2008         $(CHECK)
2009 .PHONY: crypto/blowfish/check
2010
2011 crypto/libcast5.$(OBJEXT): $(go_crypto_cast5_files) os.gox
2012         $(BUILDPACKAGE)
2013 crypto/libcast5.lo: crypto/libcast5.$(OBJEXT)
2014 crypto/libcast5.la: crypto/libcast5.lo
2015 crypt/cast5/check: $(CHECK_DEPS)
2016         @$(MKDIR_P) crypto/cast5
2017         $(CHECK)
2018 .PHONY: crypto/cast5/check
2019
2020 crypto/libcipher.$(OBJEXT): $(go_crypto_cipher_files) io.gox os.gox
2021         $(BUILDPACKAGE)
2022 crypto/libcipher.lo: crypto/libcipher.$(OBJEXT)
2023 crypto/libcipher.la: crypto/libcipher.lo
2024 crypto/cipher/check: $(CHECK_DEPS)
2025         @$(MKDIR_P) crypto/cipher
2026         $(CHECK)
2027 .PHONY: crypto/cipher/check
2028
2029 crypto/libelliptic.$(OBJEXT): $(go_crypto_elliptic_files) big.gox io.gox \
2030                 os.gox sync.gox
2031         $(BUILDPACKAGE)
2032 crypto/libelliptic.lo: crypto/libelliptic.$(OBJEXT)
2033 crypto/libelliptic.la: crypto/libelliptic.lo
2034 crypto/elliptic/check: $(CHECK_DEPS)
2035         @$(MKDIR_P) crypto/elliptic
2036         $(CHECK)
2037 .PHONY: crypto/elliptic/check
2038
2039 crypto/libhmac.$(OBJEXT): $(go_crypto_hmac_files) crypto/md5.gox \
2040                 crypto/sha1.gox crypto/sha256.gox hash.gox os.gox
2041         $(BUILDPACKAGE)
2042 crypto/libhmac.lo: crypto/libhmac.$(OBJEXT)
2043 crypto/libhmac.la: crypto/libhmac.lo
2044 crypto/hmac/check: $(CHECK_DEPS)
2045         @$(MKDIR_P) crypto/hmac
2046         $(CHECK)
2047 .PHONY: crypto/hmac/check
2048
2049 crypto/libmd4.$(OBJEXT): $(go_crypto_md4_files) hash.gox os.gox
2050         $(BUILDPACKAGE)
2051 crypto/libmd4.lo: crypto/libmd4.$(OBJEXT)
2052 crypto/libmd4.la: crypto/libmd4.lo
2053 crypto/md4/check: $(CHECK_DEPS)
2054         @$(MKDIR_P) crypto/md4
2055         $(CHECK)
2056 .PHONY: crypto/md4/check
2057
2058 crypto/libmd5.$(OBJEXT): $(go_crypto_md5_files) hash.gox os.gox
2059         $(BUILDPACKAGE)
2060 crypto/libmd5.lo: crypto/libmd5.$(OBJEXT)
2061 crypto/libmd5.la: crypto/libmd5.lo
2062 crypto/md5/check: $(CHECK_DEPS)
2063         @$(MKDIR_P) crypto/md5
2064         $(CHECK)
2065 .PHONY: crypto/md5/check
2066
2067 crypto/libocsp.$(OBJEXT): $(go_crypto_ocsp_files) asn1.gox crypto/rsa.gox \
2068                 crypto/sha1.gox crypto/x509.gox os.gox time.gox
2069         $(BUILDPACKAGE)
2070 crypto/libocsp.lo: crypto/libocsp.$(OBJEXT)
2071 crypto/libocsp.la: crypto/libocsp.lo
2072 crypto/ocsp/check: $(CHECK_DEPS)
2073         @$(MKDIR_P) crypto/ocsp
2074         $(CHECK)
2075 .PHONY: crypto/ocsp/check
2076
2077 crypto/librand.$(OBJEXT): $(go_crypto_rand_files) crypto/aes.gox io.gox os.gox \
2078                 sync.gox time.gox
2079         $(BUILDPACKAGE)
2080 crypto/librand.lo: crypto/librand.$(OBJEXT)
2081 crypto/librand.la: crypto/librand.lo
2082 crypto/rand/check: $(CHECK_DEPS)
2083         @$(MKDIR_P) crypto/rand
2084         $(CHECK)
2085 .PHONY: crypto/rand/check
2086
2087 crypto/librc4.$(OBJEXT): $(go_crypto_rc4_files) os.gox strconv.gox
2088         $(BUILDPACKAGE)
2089 crypto/librc4.lo: crypto/librc4.$(OBJEXT)
2090 crypto/librc4.la: crypto/librc4.lo
2091 crypto/rc4/check: $(CHECK_DEPS)
2092         @$(MKDIR_P) crypto/rc4
2093         $(CHECK)
2094 .PHONY: crypto/rc4/check
2095
2096 crypto/libripemd160.$(OBJEXT): $(go_crypto_ripemd160_files) hash.gox os.gox
2097         $(BUILDPACKAGE)
2098 crypto/libripemd160.lo: crypto/libripemd160.$(OBJEXT)
2099 crypto/libripemd160.la: crypto/libripemd160.lo
2100 crypto/ripemd160/check: $(CHECK_DEPS)
2101         @$(MKDIR_P) crypto/ripemd160
2102         $(CHECK)
2103 .PHONY: crypto/ripemd160/check
2104
2105 crypto/librsa.$(OBJEXT): $(go_crypto_rsa_files) big.gox crypto/sha1.gox \
2106                 crypto/subtle.gox encoding/hex.gox hash.gox io.gox os.gox
2107         $(BUILDPACKAGE)
2108 crypto/librsa.lo: crypto/librsa.$(OBJEXT)
2109 crypto/librsa.la: crypto/librsa.lo
2110 crypto/rsa/check: $(CHECK_DEPS)
2111         @$(MKDIR_P) crypto/rsa
2112         $(CHECK)
2113 .PHONY: crypto/rsa/check
2114
2115 crypto/libsha1.$(OBJEXT): $(go_crypto_sha1_files) hash.gox os.gox
2116         $(BUILDPACKAGE)
2117 crypto/libsha1.lo: crypto/libsha1.$(OBJEXT)
2118 crypto/libsha1.la: crypto/libsha1.lo
2119 crypto/sha1/check: $(CHECK_DEPS)
2120         @$(MKDIR_P) crypto/sha1
2121         $(CHECK)
2122 .PHONY: crypto/sha1/check
2123
2124 crypto/libsha256.$(OBJEXT): $(go_crypto_sha256_files) hash.gox os.gox
2125         $(BUILDPACKAGE)
2126 crypto/libsha256.lo: crypto/libsha256.$(OBJEXT)
2127 crypto/libsha256.la: crypto/libsha256.lo
2128 crypto/sha256/check: $(CHECK_DEPS)
2129         @$(MKDIR_P) crypto/sha256
2130         $(CHECK)
2131 .PHONY: crypto/sha256/check
2132
2133 crypto/libsha512.$(OBJEXT): $(go_crypto_sha512_files) hash.gox os.gox
2134         $(BUILDPACKAGE)
2135 crypto/libsha512.lo: crypto/libsha512.$(OBJEXT)
2136 crypto/libsha512.la: crypto/libsha512.lo
2137 crypto/sha512/check: $(CHECK_DEPS)
2138         @$(MKDIR_P) crypto/sha512
2139         $(CHECK)
2140 .PHONY: crypto/sha512/check
2141
2142 crypto/libsubtle.$(OBJEXT): $(go_crypto_subtle_files)
2143         $(BUILDPACKAGE)
2144 crypto/libsubtle.lo: crypto/libsubtle.$(OBJEXT)
2145 crypto/libsubtle.la: crypto/libsubtle.lo
2146 crypto/subtle/check: $(CHECK_DEPS)
2147         @$(MKDIR_P) crypto/subtle
2148         $(CHECK)
2149 .PHONY: crypto/subtle/check
2150
2151 crypto/libtls.$(OBJEXT): $(go_crypto_tls_files) big.gox bufio.gox bytes.gox \
2152                 container/list.gox crypto/aes.gox crypto/cipher.gox \
2153                 crypto/elliptic.gox crypto/hmac.gox crypto/md5.gox \
2154                 crypto/rc4.gox crypto/rand.gox crypto/rsa.gox crypto/sha1.gox \
2155                 crypto/subtle.gox crypto/rsa.gox crypto/sha1.gox \
2156                 crypto/x509.gox encoding/pem.gox fmt.gox hash.gox io.gox \
2157                 io/ioutil.gox net.gox os.gox strings.gox sync.gox time.gox
2158         $(BUILDPACKAGE)
2159 crypto/libtls.lo: crypto/libtls.$(OBJEXT)
2160 crypto/libtls.la: crypto/libtls.lo
2161 crypto/tls/check: $(CHECK_DEPS)
2162         @$(MKDIR_P) crypto/tls
2163         $(CHECK)
2164 .PHONY: crypto/tls/check
2165
2166 crypto/libtwofish.$(OBJEXT): $(go_crypto_twofish_files) os.gox strconv.gox
2167         $(BUILDPACKAGE)
2168 crypto/libtwofish.lo: crypto/libtwofish.$(OBJEXT)
2169 crypto/libtwofish.la: crypto/libtwofish.lo
2170 crypto/twofish/check: $(CHECK_DEPS)
2171         @$(MKDIR_P) crypto/twofish
2172         $(CHECK)
2173 .PHONY: crypto/twofish/check
2174
2175 crypto/libx509.$(OBJEXT): $(go_crypto_x509_files) asn1.gox big.gox \
2176                 container/vector.gox crypto/rsa.gox crypto/sha1.gox hash.gox \
2177                 os.gox strings.gox time.gox
2178         $(BUILDPACKAGE)
2179 crypto/libx509.lo: crypto/libx509.$(OBJEXT)
2180 crypto/libx509.la: crypto/libx509.lo
2181 crypto/x509/check: $(CHECK_DEPS)
2182         @$(MKDIR_P) crypto/x509
2183         $(CHECK)
2184 .PHONY: crypto/x509/check
2185
2186 crypto/libxtea.$(OBJEXT): $(go_crypto_xtea_files) os.gox strconv.gox
2187         $(BUILDPACKAGE)
2188 crypto/libxtea.lo: crypto/libxtea.$(OBJEXT)
2189 crypto/libxtea.la: crypto/libxtea.lo
2190 crypto/xtea/check: $(CHECK_DEPS)
2191         @$(MKDIR_P) crypto/xtea
2192         $(CHECK)
2193 .PHONY: crypto/xtea/check
2194
2195 crypto/openpgp/libarmor.$(OBJEXT): $(go_crypto_openpgp_armor_files) bytes.gox \
2196                 crypto/openpgp/error.gox encoding/base64.gox \
2197                 encoding/line.gox io.gox os.gox
2198         $(BUILDPACKAGE)
2199 crypto/openpgp/libarmor.lo: crypto/openpgp/libarmor.$(OBJEXT)
2200 crypto/openpgp/libarmor.la: crypto/openpgp/libarmor.lo
2201 crypto/openpgp/armor/check: $(CHECK_DEPS)
2202         @$(MKDIR_P) crypto/openpgp/armor
2203         $(CHECK)
2204 .PHONY: crypto/openpgp/armor/check
2205
2206 crypto/openpgp/liberror.$(OBJEXT): $(go_crypto_openpgp_error_files)
2207         $(BUILDPACKAGE)
2208 crypto/openpgp/liberror.lo: crypto/openpgp/liberror.$(OBJEXT)
2209 crypto/openpgp/liberror.la: crypto/openpgp/liberror.lo
2210 crypto/openpgp/error/check: $(CHECK_DEPS)
2211         @$(MKDIR_P) crypto/openpgp/error
2212         $(CHECK)
2213 .PHONY: crypto/openpgp/error/check
2214
2215 crypto/openpgp/libs2k.$(OBJEXT): $(go_crypto_openpgp_s2k_files) crypto/md5.gox \
2216                 crypto/openpgp/error.gox crypto/ripemd160.gox crypto/sha1.gox \
2217                 crypto/sha256.gox crypto/sha512.gox hash.gox io.gox os.gox
2218         $(BUILDPACKAGE)
2219 crypto/openpgp/libs2k.lo: crypto/openpgp/libs2k.$(OBJEXT)
2220 crypto/openpgp/libs2k.la: crypto/openpgp/libs2k.lo
2221 crypto/openpgp/s2k/check: $(CHECK_DEPS)
2222         @$(MKDIR_P) crypto/openpgp/s2k
2223         $(CHECK)
2224 .PHONY: crypto/openpgp/s2k/check
2225
2226 debug/libdwarf.$(OBJEXT): $(go_debug_dwarf_files) encoding/binary.gox os.gox \
2227                 strconv.gox
2228         $(BUILDPACKAGE)
2229 debug/libdwarf.lo: debug/libdwarf.$(OBJEXT)
2230 debug/libdwarf.la: debug/libdwarf.lo
2231 debug/dwarf/check: $(CHECK_DEPS)
2232         @$(MKDIR_P) debug/dwarf
2233         $(CHECK)
2234 .PHONY: debug/dwarf/check
2235
2236 debug/libelf.$(OBJEXT): $(go_debug_elf_files) bytes.gox debug/dwarf.gox \
2237                 encoding/binary.gox fmt.gox io.gox os.gox strconv.gox
2238         $(BUILDPACKAGE)
2239 debug/libelf.lo: debug/libelf.$(OBJEXT)
2240 debug/libelf.la: debug/libelf.lo
2241 debug/elf/check: $(CHECK_DEPS)
2242         @$(MKDIR_P) debug/elf
2243         $(CHECK)
2244 .PHONY: debug/elf/check
2245
2246 debug/libgosym.$(OBJEXT): $(go_debug_gosym_files) encoding/binary.gox fmt.gox \
2247                 os.gox strconv.gox strings.gox
2248         $(BUILDPACKAGE)
2249 debug/libgosym.lo: debug/libgosym.$(OBJEXT)
2250 debug/libgosym.la: debug/libgosym.lo
2251 debug/gosym/check: $(CHECK_DEPS)
2252         @$(MKDIR_P) debug/gosym
2253         $(CHECK)
2254 .PHONY: debug/gosym/check
2255
2256 debug/libmacho.$(OBJEXT): $(go_debug_macho_files) bytes.gox debug/dwarf.gox \
2257                 encoding/binary.gox fmt.gox io.gox os.gox strconv.gox
2258         $(BUILDPACKAGE)
2259 debug/libmacho.lo: debug/libmacho.$(OBJEXT)
2260 debug/libmacho.la: debug/libmacho.lo
2261 debug/macho/check: $(CHECK_DEPS)
2262         @$(MKDIR_P) debug/macho
2263         $(CHECK)
2264 .PHONY: debug/macho/check
2265
2266 debug/libpe.$(OBJEXT): $(go_debug_pe_files) debug/dwarf.gox \
2267                 encoding/binary.gox fmt.gox io.gox os.gox strconv.gox
2268         $(BUILDPACKAGE)
2269 debug/libpe.lo: debug/libpe.$(OBJEXT)
2270 debug/libpe.la: debug/libpe.lo
2271 debug/pe/check: $(CHECK_DEPS)
2272         @$(MKDIR_P) debug/pe
2273         $(CHECK)
2274 .PHONY: debug/pe/check
2275
2276 debug/libproc.$(OBJEXT): $(go_debug_proc_files) container/vector.gox fmt.gox \
2277                 io/ioutil.gox os.gox runtime.gox strconv.gox strings.gox \
2278                 sync.gox syscall.gox
2279         $(BUILDPACKAGE)
2280 debug/libproc.lo: debug/libproc.$(OBJEXT)
2281 debug/libproc.la: debug/libproc.lo
2282 debug/proc/check: $(CHECK_DEPS)
2283         @$(MKDIR_P) debug/proc
2284         $(CHECK)
2285 .PHONY: debug/proc/check
2286
2287 encoding/libascii85.$(OBJEXT): $(go_encoding_ascii85_files) io.gox os.gox \
2288                 strconv.gox
2289         $(BUILDPACKAGE)
2290 encoding/libascii85.lo: encoding/libascii85.$(OBJEXT)
2291 encoding/libascii85.la: encoding/libascii85.lo
2292 encoding/ascii85/check: $(CHECK_DEPS)
2293         @$(MKDIR_P) encoding/ascii85
2294         $(CHECK)
2295 .PHONY: encoding/ascii85/check
2296
2297 encoding/libbase32.$(OBJEXT): $(go_encoding_base32_files) io.gox os.gox \
2298                 strconv.gox
2299         $(BUILDPACKAGE)
2300 encoding/libbase32.lo: encoding/libbase32.$(OBJEXT)
2301 encoding/libbase32.la: encoding/libbase32.lo
2302 encoding/base32/check: $(CHECK_DEPS)
2303         @$(MKDIR_P) encoding/base32
2304         $(CHECK)
2305 .PHONY: encoding/base32/check
2306
2307 encoding/libbase64.$(OBJEXT): $(go_encoding_base64_files) io.gox os.gox \
2308                 strconv.gox
2309         $(BUILDPACKAGE)
2310 encoding/libbase64.lo: encoding/libbase64.$(OBJEXT)
2311 encoding/libbase64.la: encoding/libbase64.lo
2312 encoding/base64/check: $(CHECK_DEPS)
2313         @$(MKDIR_P) encoding/base64
2314         $(CHECK)
2315 .PHONY: encoding/base64/check
2316
2317 encoding/libbinary.$(OBJEXT): $(go_encoding_binary_files) io.gox math.gox \
2318                 os.gox reflect.gox
2319         $(BUILDPACKAGE)
2320 encoding/libbinary.lo: encoding/libbinary.$(OBJEXT)
2321 encoding/libbinary.la: encoding/libbinary.lo
2322 encoding/binary/check: $(CHECK_DEPS)
2323         @$(MKDIR_P) encoding/binary
2324         $(CHECK)
2325 .PHONY: encoding/binary/check
2326
2327 encoding/libgit85.$(OBJEXT): $(go_encoding_git85_files) bytes.gox io.gox \
2328                 os.gox strconv.gox
2329         $(BUILDPACKAGE)
2330 encoding/libgit85.lo: encoding/libgit85.$(OBJEXT)
2331 encoding/libgit85.la: encoding/libgit85.lo
2332 encoding/git85/check: $(CHECK_DEPS)
2333         @$(MKDIR_P) encoding/git85
2334         $(CHECK)
2335 .PHONY: encoding/git85/check
2336
2337 encoding/libhex.$(OBJEXT): $(go_encoding_hex_files) os.gox strconv.gox
2338         $(BUILDPACKAGE)
2339 encoding/libhex.lo: encoding/libhex.$(OBJEXT)
2340 encoding/libhex.la: encoding/libhex.lo
2341 encoding/hex/check: $(CHECK_DEPS)
2342         @$(MKDIR_P) encoding/hex
2343         $(CHECK)
2344 .PHONY: encoding/hex/check
2345
2346 encoding/libline.$(OBJEXT): $(go_encoding_line_files) io.gox os.gox
2347         $(BUILDPACKAGE)
2348 encoding/libline.lo: encoding/libline.$(OBJEXT)
2349 encoding/libline.la: encoding/libline.lo
2350 encoding/line/check: $(CHECK_DEPS)
2351         @$(MKDIR_P) encoding/line
2352         $(CHECK)
2353 .PHONY: encoding/line/check
2354
2355 encoding/libpem.$(OBJEXT): $(go_encoding_pem_files) bytes.gox \
2356                 encoding/base64.gox
2357         $(BUILDPACKAGE)
2358 encoding/libpem.lo: encoding/libpem.$(OBJEXT)
2359 encoding/libpem.la: encoding/libpem.lo
2360 encoding/pem/check: $(CHECK_DEPS)
2361         @$(MKDIR_P) encoding/pem
2362         $(CHECK)
2363 .PHONY: encoding/pem/check
2364
2365 exp/libdatafmt.$(OBJEXT): $(go_exp_datafmt_files) bytes.gox \
2366                 container/vector.gox fmt.gox go/scanner.gox go/token.gox \
2367                 io.gox os.gox reflect.gox runtime.gox strconv.gox strings.gox
2368         $(BUILDPACKAGE)
2369 exp/libdatafmt.lo: exp/libdatafmt.$(OBJEXT)
2370 exp/libdatafmt.la: exp/libdatafmt.lo
2371 exp/datafmt/check: $(CHECK_DEPS)
2372         @$(MKDIR_P) exp/datafmt
2373         $(CHECK)
2374 .PHONY: exp/datafmt/check
2375
2376 exp/libdraw.$(OBJEXT): $(go_exp_draw_files) image.gox os.gox
2377         $(BUILDPACKAGE)
2378 exp/libdraw.lo: exp/libdraw.$(OBJEXT)
2379 exp/libdraw.la: exp/libdraw.lo
2380 exp/draw/check: $(CHECK_DEPS)
2381         @$(MKDIR_P) exp/draw
2382         $(CHECK)
2383 .PHONY: exp/draw/check
2384
2385 exp/libeval.$(OBJEXT): $(go_exp_eval_files) big.gox go/ast.gox go/parser.gox \
2386                 go/scanner.gox go/token.gox fmt.gox log.gox strconv.gox \
2387                 strings.gox os.gox reflect.gox runtime.gox sort.gox template.gox
2388         $(BUILDPACKAGE)
2389 exp/libeval.lo: exp/libeval.$(OBJEXT)
2390 exp/libeval.la: exp/libeval.lo
2391 exp/eval/check: $(CHECK_DEPS)
2392         @$(MKDIR_P) exp/eval
2393         $(CHECK)
2394 .PHONY: exp/eval/check
2395
2396 go/libast.$(OBJEXT): $(go_go_ast_files) fmt.gox go/token.gox io.gox os.gox \
2397                 reflect.gox unicode.gox utf8.gox
2398         $(BUILDPACKAGE)
2399 go/libast.lo: go/libast.$(OBJEXT)
2400 go/libast.la: go/libast.lo
2401 go/ast/check: $(CHECK_DEPS)
2402         @$(MKDIR_P) go/ast
2403         $(CHECK)
2404 .PHONY: go/ast/check
2405
2406 go/libdoc.$(OBJEXT): $(go_go_doc_files) go/ast.gox go/token.gox io.gox \
2407                 regexp.gox sort.gox strings.gox template.gox
2408         $(BUILDPACKAGE)
2409 go/libdoc.lo: go/libdoc.$(OBJEXT)
2410 go/libdoc.la: go/libdoc.lo
2411 go/doc/check: $(CHECK_DEPS)
2412         @$(MKDIR_P) go/doc
2413         $(CHECK)
2414 .PHONY: go/doc/check
2415
2416 go/libparser.$(OBJEXT): $(go_go_parser_files) bytes.gox fmt.gox go/ast.gox \
2417                 go/scanner.gox go/token.gox io.gox io/ioutil.gox os.gox \
2418                 path.gox strings.gox
2419         $(BUILDPACKAGE)
2420 go/libparser.lo: go/libparser.$(OBJEXT)
2421 go/libparser.la: go/libparser.lo
2422 go/parser/check: $(CHECK_DEPS)
2423         @$(MKDIR_P) go/parser
2424         $(CHECK)
2425 .PHONY: go/parser/check
2426
2427 go/libprinter.$(OBJEXT): $(go_go_printer_files) bytes.gox fmt.gox go/ast.gox \
2428                 go/token.gox io.gox os.gox reflect.gox runtime.gox \
2429                 strings.gox tabwriter.gox
2430         $(BUILDPACKAGE)
2431 go/libprinter.lo: go/libprinter.$(OBJEXT)
2432 go/libprinter.la: go/libprinter.lo
2433 go/printer/check: $(CHECK_DEPS)
2434         @$(MKDIR_P) go/printer
2435         $(CHECK)
2436 .PHONY: go/printer/check
2437
2438 go/libscanner.$(OBJEXT): $(go_go_scanner_files) bytes.gox \
2439                 container/vector.gox fmt.gox go/token.gox io.gox os.gox \
2440                 path.gox sort.gox strconv.gox unicode.gox utf8.gox
2441         $(BUILDPACKAGE)
2442 go/libscanner.lo: go/libscanner.$(OBJEXT)
2443 go/libscanner.la: go/libscanner.lo
2444 go/scanner/check: $(CHECK_DEPS)
2445         @$(MKDIR_P) go/scanner
2446         $(CHECK)
2447 .PHONY: go/scanner/check
2448
2449 go/libtoken.$(OBJEXT): $(go_go_token_files) fmt.gox strconv.gox
2450         $(BUILDPACKAGE)
2451 go/libtoken.lo: go/libtoken.$(OBJEXT)
2452 go/libtoken.la: go/libtoken.lo
2453 go/token/check: $(CHECK_DEPS)
2454         @$(MKDIR_P) go/token
2455         $(CHECK)
2456 .PHONY: go/token/check
2457
2458 go/libtypechecker.$(OBJEXT): $(go_go_typechecker_files) fmt.gox go/ast.gox \
2459                 go/token.gox go/scanner.gox os.gox
2460         $(BUILDPACKAGE)
2461 go/libtypechecker.lo: go/libtypechecker.$(OBJEXT)
2462 go/libtypechecker.la: go/libtypechecker.lo
2463 go/typechecker/check: $(CHECK_DEPS)
2464         @$(MKDIR_P) go/typechecker
2465         $(CHECK)
2466 .PHONY: go/typechecker/check
2467
2468 hash/libadler32.$(OBJEXT): $(go_hash_adler32_files) hash.gox os.gox
2469         $(BUILDPACKAGE)
2470 hash/libadler32.lo: hash/libadler32.$(OBJEXT)
2471 hash/libadler32.la: hash/libadler32.lo
2472 hash/adler32/check: $(CHECK_DEPS)
2473         @$(MKDIR_P) hash/adler32
2474         $(CHECK)
2475 .PHONY: hash/adler32/check
2476
2477 hash/libcrc32.$(OBJEXT): $(go_hash_crc32_files) hash.gox os.gox
2478         $(BUILDPACKAGE)
2479 hash/libcrc32.lo: hash/libcrc32.$(OBJEXT)
2480 hash/libcrc32.la: hash/libcrc32.lo
2481 hash/crc32/check: $(CHECK_DEPS)
2482         @$(MKDIR_P) hash/crc32
2483         $(CHECK)
2484 .PHONY: hash/crc32/check
2485
2486 hash/libcrc64.$(OBJEXT): $(go_hash_crc64_files) hash.gox os.gox
2487         $(BUILDPACKAGE)
2488 hash/libcrc64.lo: hash/libcrc64.$(OBJEXT)
2489 hash/libcrc64.la: hash/libcrc64.lo
2490 hash/crc64/check: $(CHECK_DEPS)
2491         @$(MKDIR_P) hash/crc64
2492         $(CHECK)
2493 .PHONY: hash/crc64/check
2494
2495 http/libpprof.$(OBJEXT): $(go_http_pprof_files) bufio.gox fmt.gox http.gox \
2496                 os.gox runtime.gox runtime/pprof.gox strconv.gox strings.gox
2497         $(BUILDPACKAGE)
2498 http/libpprof.lo: http/libpprof.$(OBJEXT)
2499 http/libpprof.la: http/libpprof.lo
2500 http/pprof/check: $(CHECK_DEPS)
2501         @$(MKDIR_P) http/pprof
2502         $(CHECK)
2503 .PHONY: http/pprof/check
2504
2505 image/libjpeg.$(OBJEXT): $(go_image_jpeg_files) bufio.gox image.gox io.gox \
2506                 os.gox
2507         $(BUILDPACKAGE)
2508 image/libjpeg.lo: image/libjpeg.$(OBJEXT)
2509 image/libjpeg.la: image/libjpeg.lo
2510 image/jpeg/check: $(CHECK_DEPS)
2511         @$(MKDIR_P) image/jpeg
2512         $(CHECK)
2513 .PHONY: image/jpeg/check
2514
2515 image/libpng.$(OBJEXT): $(go_image_png_files) bufio.gox compress/zlib.gox \
2516                 fmt.gox hash.gox hash/crc32.gox image.gox io.gox os.gox \
2517                 strconv.gox
2518         $(BUILDPACKAGE)
2519 image/libpng.lo: image/libpng.$(OBJEXT)
2520 image/libpng.la: image/libpng.lo
2521 image/png/check: $(CHECK_DEPS)
2522         @$(MKDIR_P) image/png
2523         $(CHECK)
2524 .PHONY: image/png/check
2525
2526 index/libsuffixarray.$(OBJEXT): $(go_index_suffixarray_files) bytes.gox \
2527                 regexp.gox sort.gox
2528         $(BUILDPACKAGE)
2529 index/libsuffixarray.lo: index/libsuffixarray.$(OBJEXT)
2530 index/libsuffixarray.la: index/libsuffixarray.lo
2531 index/suffixarray/check: $(CHECK_DEPS)
2532         @$(MKDIR_P) index/suffixarray
2533         $(CHECK)
2534 .PHONY: index/suffixarray/check
2535
2536 io/libioutil.$(OBJEXT): $(go_io_ioutil_files) bytes.gox io.gox os.gox sort.gox \
2537                 strconv.gox
2538         $(BUILDPACKAGE)
2539 io/libioutil.lo: io/libioutil.$(OBJEXT)
2540 io/libioutil.la: io/libioutil.lo
2541 io/ioutil/check: $(CHECK_DEPS)
2542         @$(MKDIR_P) io/ioutil
2543         $(CHECK)
2544 .PHONY: io/ioutil/check
2545
2546 mime/libmultipart.$(OBJEXT): $(go_mime_multipart_files) bufio.gox bytes.gox \
2547                 io.gox mime.gox os.gox regexp.gox strings.gox
2548         $(BUILDPACKAGE)
2549 mime/libmultipart.lo: mime/libmultipart.$(OBJEXT)
2550 mime/libmultipart.la: mime/libmultipart.lo
2551 mime/multipart/check: $(CHECK_DEPS)
2552         @$(MKDIR_P) mime/multipart
2553         $(CHECK)
2554 .PHONY: mime/multipart/check
2555
2556 net/libdict.$(OBJEXT): $(go_net_dict_files) container/vector.gox \
2557                 net/textproto.gox os.gox strconv.gox strings.gox
2558         $(BUILDPACKAGE)
2559 net/libdict.lo: net/libdict.$(OBJEXT)
2560 net/libdict.la: net/libdict.lo
2561
2562 net/libtextproto.$(OBJEXT): $(go_net_textproto_files) bufio.gox bytes.gox \
2563                 container/vector.gox fmt.gox io.gox io/ioutil.gox net.gox \
2564                 os.gox strconv.gox sync.gox
2565         $(BUILDPACKAGE)
2566 net/libtextproto.lo: net/libtextproto.$(OBJEXT)
2567 net/libtextproto.la: net/libtextproto.lo
2568 net/textproto/check: $(CHECK_DEPS)
2569         @$(MKDIR_P) net/textproto
2570         $(CHECK)
2571 .PHONY: net/textproto/check
2572
2573 os/libinotify.$(OBJEXT): $(go_os_inotify_files) fmt.gox os.gox strings.gox \
2574                 syscall.gox
2575         $(BUILDPACKAGE)
2576 os/libinotify.lo: os/libinotify.$(OBJEXT)
2577 os/libinotify.la: os/libinotify.lo
2578 os/inotify/check: $(CHECK_DEPS)
2579         @$(MKDIR_P) os/inotify
2580         $(CHECK)
2581 .PHONY: os/inotify/check
2582
2583 os/libsignal.$(OBJEXT): $(go_os_signal_files) runtime.gox strconv.gox
2584         $(BUILDPACKAGE)
2585 os/libsignal.lo: os/libsignal.$(OBJEXT)
2586 os/libsignal.la: os/libsignal.lo
2587 os/signal/check: $(CHECK_DEPS)
2588         @$(MKDIR_P) os/signal
2589         $(CHECK)
2590 .PHONY: os/signal/check
2591
2592 unix.go: $(srcdir)/go/os/signal/mkunix.sh sysinfo.go
2593         $(SHELL) $(srcdir)/go/os/signal/mkunix.sh sysinfo.go > $@.tmp
2594         mv -f $@.tmp $@
2595
2596 rpc/libjsonrpc.$(OBJEXT): $(go_rpc_jsonrpc_files) fmt.gox io.gox json.gox \
2597                 net.gox os.gox rpc.gox sync.gox
2598         $(BUILDPACKAGE)
2599 rpc/libjsonrpc.lo: rpc/libjsonrpc.$(OBJEXT)
2600 rpc/libjsonrpc.la: rpc/libjsonrpc.lo
2601 rpc/jsonrpc/check: $(CHECK_DEPS)
2602         @$(MKDIR_P) rpc/jsonrpc
2603         $(CHECK)
2604 .PHONY: rpc/jsonrpc/check
2605
2606 runtime/libdebug.$(OBJEXT): $(go_runtime_debug_files) bytes.gox fmt.gox \
2607                 io/ioutil.gox os.gox runtime.gox
2608         $(BUILDPACKAGE)
2609 runtime/libdebug.lo: runtime/libdebug.$(OBJEXT)
2610 runtime/libdebug.la: runtime/libdebug.lo
2611 runtime/debug/check: $(CHECK_DEPS)
2612         @$(MKDIR_P) runtime/debug
2613         $(CHECK)
2614 .PHONY: runtime/debug/check
2615
2616 runtime/libpprof.$(OBJEXT): $(go_runtime_pprof_files) bufio.gox fmt.gox \
2617                 io.gox os.gox runtime.gox
2618         $(BUILDPACKAGE)
2619 runtime/libpprof.lo: runtime/libpprof.$(OBJEXT)
2620 runtime/libpprof.la: runtime/libpprof.lo
2621 runtime/pprof/check: $(CHECK_DEPS)
2622         @$(MKDIR_P) runtime/pprof
2623         $(CHECK)
2624 .PHONY: runtime/pprof/check
2625
2626 testing/libiotest.$(OBJEXT): $(go_testing_iotest_files) io.gox log.gox os.gox
2627         $(BUILDPACKAGE)
2628 testing/libiotest.lo: testing/libiotest.$(OBJEXT)
2629 testing/libiotest.la: testing/libiotest.lo
2630 testing/iotest/check: $(CHECK_DEPS)
2631         @$(MKDIR_P) testing/iotest
2632         $(CHECK)
2633 .PHONY: testing/iotest/check
2634
2635 testing/libquick.$(OBJEXT): $(go_testing_quick_files) flag.gox fmt.gox \
2636                 math.gox os.gox rand.gox reflect.gox strings.gox
2637         $(BUILDPACKAGE)
2638 testing/libquick.lo: testing/libquick.$(OBJEXT)
2639 testing/libquick.la: testing/libquick.lo
2640 testing/quick/check: $(CHECK_DEPS)
2641         @$(MKDIR_P) testing/quick
2642         $(CHECK)
2643 .PHONY: testing/quick/check
2644
2645 testing/libscript.$(OBJEXT): $(go_testing_script_files) fmt.gox os.gox \
2646                 rand.gox reflect.gox strings.gox
2647         $(BUILDPACKAGE)
2648 testing/libscript.lo: testing/libscript.$(OBJEXT)
2649 testing/libscript.la: testing/libscript.lo
2650 testing/script/check: $(CHECK_DEPS)
2651         @$(MKDIR_P) testing/script
2652         $(CHECK)
2653 .PHONY: testing/script/check
2654
2655 sysinfo.go: s-sysinfo; @true
2656 s-sysinfo: $(srcdir)/mksysinfo.sh config.h
2657         CC="$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS)" $(SHELL) $(srcdir)/mksysinfo.sh
2658         $(SHELL) $(srcdir)/../move-if-change tmp-sysinfo.go sysinfo.go
2659         $(STAMP) $@
2660
2661 syscalls/syscall.$(OBJEXT): $(go_syscall_files) $(go_syscall_c_files) sync.gox
2662         rm -f syscall.gox syscalls/libsyscall.a
2663         test -d syscalls || $(MKDIR_P) syscalls
2664         files=`echo $^ | sed -e 's/[^ ]*\.gox//g' -e's/[^ ]*\.c//g'`; \
2665         $(LTGOCOMPILE) -I . -c -fgo-prefix="libgo_syscalls" -o syscalls/syscall.$(OBJEXT) $$files
2666 syscalls/errno.$(OBJEXT): $(srcdir)/syscalls/errno.c syscalls/syscall.$(OBJEXT)
2667         $(LTCOMPILE) -c -o syscalls/errno.$(OBJEXT) $(srcdir)/syscalls/errno.c
2668 syscalls/libsyscall.la: syscalls/syscall.$(OBJEXT) syscalls/errno.$(OBJEXT)
2669         $(LINK) syscalls/syscall.lo syscalls/errno.lo
2670
2671 # How to build a .gox file from a .a file.
2672 BUILDGOX = \
2673         $(OBJCOPY) -j .go_export $< $@.tmp && mv -f $@.tmp $@
2674
2675 asn1.gox: asn1/libasn1.$(OBJEXT)
2676         $(BUILDGOX)
2677 big.gox: big/libbig.$(OBJEXT)
2678         $(BUILDGOX)
2679 bufio.gox: bufio/libbufio.$(OBJEXT)
2680         $(BUILDGOX)
2681 bytes.gox: bytes/bytes.$(OBJEXT)
2682         $(BUILDGOX)
2683 cmath.gox: cmath/libcmath.$(OBJEXT)
2684         $(BUILDGOX)
2685 ebnf.gox: ebnf/libebnf.$(OBJEXT)
2686         $(BUILDGOX)
2687 exec.gox: exec/libexec.$(OBJEXT)
2688         $(BUILDGOX)
2689 expvar.gox: expvar/libexpvar.$(OBJEXT)
2690         $(BUILDGOX)
2691 flag.gox: flag/libflag.$(OBJEXT)
2692         $(BUILDGOX)
2693 fmt.gox: fmt/libfmt.$(OBJEXT)
2694         $(BUILDGOX)
2695 gob.gox: gob/libgob.$(OBJEXT)
2696         $(BUILDGOX)
2697 hash.gox: hash/libhash.$(OBJEXT)
2698         $(BUILDGOX)
2699 html.gox: html/libhtml.$(OBJEXT)
2700         $(BUILDGOX)
2701 http.gox: http/libhttp.$(OBJEXT)
2702         $(BUILDGOX)
2703 image.gox: image/libimage.$(OBJEXT)
2704         $(BUILDGOX)
2705 io.gox: io/libio.$(OBJEXT)
2706         $(BUILDGOX)
2707 json.gox: json/libjson.$(OBJEXT)
2708         $(BUILDGOX)
2709 log.gox: log/liblog.$(OBJEXT)
2710         $(BUILDGOX)
2711 math.gox: math/libmath.$(OBJEXT)
2712         $(BUILDGOX)
2713 mime.gox: mime/libmime.$(OBJEXT)
2714         $(BUILDGOX)
2715 net.gox: net/libnet.$(OBJEXT)
2716         $(BUILDGOX)
2717 netchan.gox: netchan/libnetchan.$(OBJEXT)
2718         $(BUILDGOX)
2719 os.gox: os/libos.$(OBJEXT)
2720         $(BUILDGOX)
2721 patch.gox: patch/libpatch.$(OBJEXT)
2722         $(BUILDGOX)
2723 path.gox: path/libpath.$(OBJEXT)
2724         $(BUILDGOX)
2725 rand.gox: rand/librand.$(OBJEXT)
2726         $(BUILDGOX)
2727 reflect.gox: reflect/libreflect.$(OBJEXT)
2728         $(BUILDGOX)
2729 regexp.gox: regexp/libregexp.$(OBJEXT)
2730         $(BUILDGOX)
2731 rpc.gox: rpc/librpc.$(OBJEXT)
2732         $(BUILDGOX)
2733 runtime.gox: runtime/libruntime.$(OBJEXT)
2734         $(BUILDGOX)
2735 scanner.gox: scanner/libscanner.$(OBJEXT)
2736         $(BUILDGOX)
2737 smtp.gox: smtp/libsmtp.$(OBJEXT)
2738         $(BUILDGOX)
2739 sort.gox: sort/libsort.$(OBJEXT)
2740         $(BUILDGOX)
2741 strconv.gox: strconv/libstrconv.$(OBJEXT)
2742         $(BUILDGOX)
2743 strings.gox: strings/libstrings.$(OBJEXT)
2744         $(BUILDGOX)
2745 sync.gox: sync/mutex.$(OBJEXT)
2746         $(BUILDGOX)
2747 syslog.gox: syslog/syslog.$(OBJEXT)
2748         $(BUILDGOX)
2749 syscall.gox: syscalls/syscall.$(OBJEXT)
2750         $(BUILDGOX)
2751 tabwriter.gox: tabwriter/libtabwriter.$(OBJEXT)
2752         $(BUILDGOX)
2753 template.gox: template/libtemplate.$(OBJEXT)
2754         $(BUILDGOX)
2755 testing.gox: testing/libtesting.$(OBJEXT)
2756         $(BUILDGOX)
2757 time.gox: time/libtime.$(OBJEXT)
2758         $(BUILDGOX)
2759 try.gox: try/libtry.$(OBJEXT)
2760         $(BUILDGOX)
2761 unicode.gox: unicode/libunicode.$(OBJEXT)
2762         $(BUILDGOX)
2763 utf16.gox: utf16/libutf16.$(OBJEXT)
2764         $(BUILDGOX)
2765 utf8.gox: utf8/libutf8.$(OBJEXT)
2766         $(BUILDGOX)
2767 websocket.gox: websocket/libwebsocket.$(OBJEXT)
2768         $(BUILDGOX)
2769 xml.gox: xml/libxml.$(OBJEXT)
2770         $(BUILDGOX)
2771
2772 archive/tar.gox: archive/libtar.$(OBJEXT)
2773         $(BUILDGOX)
2774 archive/zip.gox: archive/libzip.$(OBJEXT)
2775         $(BUILDGOX)
2776
2777 compress/flate.gox: compress/libflate.$(OBJEXT)
2778         $(BUILDGOX)
2779 compress/gzip.gox: compress/libgzip.$(OBJEXT)
2780         $(BUILDGOX)
2781 compress/zlib.gox: compress/libzlib.$(OBJEXT)
2782         $(BUILDGOX)
2783
2784 container/heap.gox: container/libheap.$(OBJEXT)
2785         $(BUILDGOX)
2786 container/list.gox: container/liblist.$(OBJEXT)
2787         $(BUILDGOX)
2788 container/ring.gox: container/libring.$(OBJEXT)
2789         $(BUILDGOX)
2790 container/vector.gox: container/libvector.$(OBJEXT)
2791         $(BUILDGOX)
2792
2793 crypto/aes.gox: crypto/libaes.$(OBJEXT)
2794         $(BUILDGOX)
2795 crypto/block.gox: crypto/libblock.$(OBJEXT)
2796         $(BUILDGOX)
2797 crypto/blowfish.gox: crypto/libblowfish.$(OBJEXT)
2798         $(BUILDGOX)
2799 crypto/cast5.gox: crypto/libcast5.$(OBJEXT)
2800         $(BUILDGOX)
2801 crypto/cipher.gox: crypto/libcipher.$(OBJEXT)
2802         $(BUILDGOX)
2803 crypto/elliptic.gox: crypto/libelliptic.$(OBJEXT)
2804         $(BUILDGOX)
2805 crypto/hmac.gox: crypto/libhmac.$(OBJEXT)
2806         $(BUILDGOX)
2807 crypto/md4.gox: crypto/libmd4.$(OBJEXT)
2808         $(BUILDGOX)
2809 crypto/md5.gox: crypto/libmd5.$(OBJEXT)
2810         $(BUILDGOX)
2811 crypto/ocsp.gox: crypto/libocsp.$(OBJEXT)
2812         $(BUILDGOX)
2813 crypto/rand.gox: crypto/librand.$(OBJEXT)
2814         $(BUILDGOX)
2815 crypto/rc4.gox: crypto/librc4.$(OBJEXT)
2816         $(BUILDGOX)
2817 crypto/ripemd160.gox: crypto/libripemd160.$(OBJEXT)
2818         $(BUILDGOX)
2819 crypto/rsa.gox: crypto/librsa.$(OBJEXT)
2820         $(BUILDGOX)
2821 crypto/sha1.gox: crypto/libsha1.$(OBJEXT)
2822         $(BUILDGOX)
2823 crypto/sha256.gox: crypto/libsha256.$(OBJEXT)
2824         $(BUILDGOX)
2825 crypto/sha512.gox: crypto/libsha512.$(OBJEXT)
2826         $(BUILDGOX)
2827 crypto/subtle.gox: crypto/libsubtle.$(OBJEXT)
2828         $(BUILDGOX)
2829 crypto/tls.gox: crypto/libtls.$(OBJEXT)
2830         $(BUILDGOX)
2831 crypto/twofish.gox: crypto/libtwofish.$(OBJEXT)
2832         $(BUILDGOX)
2833 crypto/x509.gox: crypto/libx509.$(OBJEXT)
2834         $(BUILDGOX)
2835 crypto/xtea.gox: crypto/libxtea.$(OBJEXT)
2836         $(BUILDGOX)
2837
2838 crypto/openpgp/armor.gox: crypto/openpgp/libarmor.$(OBJEXT)
2839         $(BUILDGOX)
2840 crypto/openpgp/error.gox: crypto/openpgp/liberror.$(OBJEXT)
2841         $(BUILDGOX)
2842 crypto/openpgp/s2k.gox: crypto/openpgp/libs2k.$(OBJEXT)
2843         $(BUILDGOX)
2844
2845 debug/dwarf.gox: debug/libdwarf.$(OBJEXT)
2846         $(BUILDGOX)
2847 debug/elf.gox: debug/libelf.$(OBJEXT)
2848         $(BUILDGOX)
2849 debug/gosym.gox: debug/libgosym.$(OBJEXT)
2850         $(BUILDGOX)
2851 debug/macho.gox: debug/libmacho.$(OBJEXT)
2852         $(BUILDGOX)
2853 debug/pe.gox: debug/libpe.$(OBJEXT)
2854         $(BUILDGOX)
2855 debug/proc.gox: debug/libproc.$(OBJEXT)
2856         $(BUILDGOX)
2857
2858 encoding/ascii85.gox: encoding/libascii85.$(OBJEXT)
2859         $(BUILDGOX)
2860 encoding/base32.gox: encoding/libbase32.$(OBJEXT)
2861         $(BUILDGOX)
2862 encoding/base64.gox: encoding/libbase64.$(OBJEXT)
2863         $(BUILDGOX)
2864 encoding/binary.gox: encoding/libbinary.$(OBJEXT)
2865         $(BUILDGOX)
2866 encoding/git85.gox: encoding/libgit85.$(OBJEXT)
2867         $(BUILDGOX)
2868 encoding/hex.gox: encoding/libhex.$(OBJEXT)
2869         $(BUILDGOX)
2870 encoding/line.gox: encoding/libline.$(OBJEXT)
2871         $(BUILDGOX)
2872 encoding/pem.gox: encoding/libpem.$(OBJEXT)
2873         $(BUILDGOX)
2874
2875 exp/datafmt.gox: exp/libdatafmt.$(OBJEXT)
2876         $(BUILDGOX)
2877 exp/draw.gox: exp/libdraw.$(OBJEXT)
2878         $(BUILDGOX)
2879 exp/eval.gox: exp/libeval.$(OBJEXT)
2880         $(BUILDGOX)
2881
2882 go/ast.gox: go/libast.$(OBJEXT)
2883         $(BUILDGOX)
2884 go/doc.gox: go/libdoc.$(OBJEXT)
2885         $(BUILDGOX)
2886 go/parser.gox: go/libparser.$(OBJEXT)
2887         $(BUILDGOX)
2888 go/printer.gox: go/libprinter.$(OBJEXT)
2889         $(BUILDGOX)
2890 go/scanner.gox: go/libscanner.$(OBJEXT)
2891         $(BUILDGOX)
2892 go/token.gox: go/libtoken.$(OBJEXT)
2893         $(BUILDGOX)
2894 go/typechecker.gox: go/libtypechecker.$(OBJEXT)
2895         $(BUILDGOX)
2896
2897 hash/adler32.gox: hash/libadler32.$(OBJEXT)
2898         $(BUILDGOX)
2899 hash/crc32.gox: hash/libcrc32.$(OBJEXT)
2900         $(BUILDGOX)
2901 hash/crc64.gox: hash/libcrc64.$(OBJEXT)
2902         $(BUILDGOX)
2903
2904 http/pprof.gox: http/libpprof.$(OBJEXT)
2905         $(BUILDGOX)
2906
2907 image/jpeg.gox: image/libjpeg.$(OBJEXT)
2908         $(BUILDGOX)
2909 image/png.gox: image/libpng.$(OBJEXT)
2910         $(BUILDGOX)
2911
2912 index/suffixarray.gox: index/libsuffixarray.$(OBJEXT)
2913         $(BUILDGOX)
2914
2915 io/ioutil.gox: io/libioutil.$(OBJEXT)
2916         $(BUILDGOX)
2917
2918 mime/multipart.gox: mime/libmultipart.$(OBJEXT)
2919         $(BUILDGOX)
2920
2921 net/dict.gox: net/libdict.$(OBJEXT)
2922         $(BUILDGOX)
2923 net/textproto.gox: net/libtextproto.$(OBJEXT)
2924         $(BUILDGOX)
2925
2926 os/inotify.gox: os/libinotify.$(OBJEXT)
2927         $(BUILDGOX)
2928 os/signal.gox: os/libsignal.$(OBJEXT)
2929         $(BUILDGOX)
2930
2931 rpc/jsonrpc.gox: rpc/libjsonrpc.$(OBJEXT)
2932         $(BUILDGOX)
2933
2934 runtime/debug.gox: runtime/libdebug.$(OBJEXT)
2935         $(BUILDGOX)
2936 runtime/pprof.gox: runtime/libpprof.$(OBJEXT)
2937         $(BUILDGOX)
2938
2939 testing/iotest.gox: testing/libiotest.$(OBJEXT)
2940         $(BUILDGOX)
2941 testing/quick.gox: testing/libquick.$(OBJEXT)
2942         $(BUILDGOX)
2943 testing/script.gox: testing/libscript.$(OBJEXT)
2944         $(BUILDGOX)
2945
2946 if LIBGO_IS_LINUX
2947 # os_inotify_check = os/inotify/check
2948 os_inotify_check =
2949 else
2950 os_inotify_check =
2951 endif
2952
2953 TEST_PACKAGES = \
2954         asn1/check \
2955         big/check \
2956         bufio/check \
2957         bytes/check \
2958         cmath/check \
2959         ebnf/check \
2960         exec/check \
2961         expvar/check \
2962         flag/check \
2963         fmt/check \
2964         gob/check \
2965         html/check \
2966         $(if $(GCCGO_RUN_ALL_TESTS),http/check) \
2967         io/check \
2968         json/check \
2969         log/check \
2970         math/check \
2971         mime/check \
2972         $(if $(GCCGO_RUN_ALL_TESTS),net/check) \
2973         netchan/check \
2974         os/check \
2975         patch/check \
2976         path/check \
2977         rand/check \
2978         reflect/check \
2979         regexp/check \
2980         rpc/check \
2981         runtime/check \
2982         scanner/check \
2983         smtp/check \
2984         sort/check \
2985         strconv/check \
2986         strings/check \
2987         sync/check \
2988         $(if $(GCCGO_RUN_ALL_TESTS),syslog/check) \
2989         tabwriter/check \
2990         template/check \
2991         time/check \
2992         try/check \
2993         unicode/check \
2994         utf16/check \
2995         utf8/check \
2996         websocket/check \
2997         xml/check \
2998         archive/tar/check \
2999         archive/zip/check \
3000         compress/flate/check \
3001         compress/gzip/check \
3002         compress/zlib/check \
3003         container/heap/check \
3004         container/list/check \
3005         container/ring/check \
3006         container/vector/check \
3007         crypto/aes/check \
3008         crypto/block/check \
3009         crypto/blowfish/check \
3010         crypto/cast5/check \
3011         crypto/cipher/check \
3012         crypto/elliptic/check \
3013         crypto/hmac/check \
3014         crypto/md4/check \
3015         crypto/md5/check \
3016         crypto/ocsp/check \
3017         crypto/rand/check \
3018         crypto/rc4/check \
3019         crypto/ripemd160/check \
3020         crypto/rsa/check \
3021         crypto/sha1/check \
3022         crypto/sha256/check \
3023         crypto/sha512/check \
3024         crypto/subtle/check \
3025         crypto/tls/check \
3026         crypto/twofish/check \
3027         crypto/x509/check \
3028         crypto/xtea/check \
3029         crypto/openpgp/armor/check \
3030         crypto/openpgp/s2k/check \
3031         debug/dwarf/check \
3032         debug/elf/check \
3033         debug/macho/check \
3034         debug/pe/check \
3035         encoding/ascii85/check \
3036         encoding/base32/check \
3037         encoding/base64/check \
3038         encoding/binary/check \
3039         encoding/git85/check \
3040         encoding/hex/check \
3041         encoding/line/check \
3042         encoding/pem/check \
3043         exp/datafmt/check \
3044         exp/draw/check \
3045         exp/eval/check \
3046         go/parser/check \
3047         go/printer/check \
3048         go/scanner/check \
3049         go/token/check \
3050         go/typechecker/check \
3051         hash/adler32/check \
3052         hash/crc32/check \
3053         hash/crc64/check \
3054         image/png/check \
3055         index/suffixarray/check \
3056         io/ioutil/check \
3057         mime/multipart/check \
3058         net/textproto/check \
3059         $(os_inotify_check) \
3060         os/signal/check \
3061         rpc/jsonrpc/check \
3062         testing/quick/check \
3063         testing/script/check
3064
3065 check-recursive: $(TEST_PACKAGES)
3066
3067 mostlyclean-local:
3068         find . -name '*.lo' -print | xargs $(LIBTOOL) --mode=clean rm -f
3069         find . -name '*.$(OBJEXT)' -print | xargs rm -f
3070
3071 clean-local:
3072         find . -name '*.la' -print | xargs $(LIBTOOL) --mode=clean rm -f
3073         find . -name '*.a' -print | xargs rm -f
3074
3075 CLEANFILES = *.go *.gox goc2c *.c s-version