runtime/go-breakpoint.c \
runtime/go-caller.c \
runtime/go-can-convert-interface.c \
+ runtime/go-cgo.c \
runtime/go-chan-cap.c \
runtime/go-chan-len.c \
runtime/go-check-interface.c \
runtime/go-closed.c \
runtime/go-construct-map.c \
runtime/go-convert-interface.c \
+ runtime/go-copy.c \
runtime/go-defer.c \
runtime/go-deferred-recover.c \
runtime/go-eface-compare.c \
go/runtime/type.go \
version.go
-if LIBGO_IS_386
-GOARCH = 386
-else
-if LIBGO_IS_X86_64
-GOARCH = amd64
-else
-if LIBGO_IS_ARM
-GOARCH = arm
-else
-GOARCH = unknown
-endif
-endif
-endif
-
-if LIBGO_IS_LINUX
-GOOS = linux
-else
-if LIBGO_IS_DARWIN
-GOOS = darwin
-else
-if LIBGO_IS_FREEBSD
-GOOS = freebsd
-else
-if LIBGO_IS_RTEMS
-GOOS = rtems
-else
-GOOS = unknown
-endif
-endif
-endif
-endif
-
version.go: s-version; @true
s-version: Makefile
rm -f version.go.tmp
go/debug/pe/file.go \
go/debug/pe/pe.go
-if LIBGO_IS_LINUX
-proc_file = go/debug/proc/proc_linux.go
-if LIBGO_IS_386
-regs_file = go/debug/proc/regs_linux_386.go
-else
-if LIBGO_IS_X86_64
-regs_file = go/debug/proc/regs_linux_amd64.go
-else
-regs_file =
-endif
-endif
-else
-if LIBGO_IS_DARWIN
-proc_file = go/debug/proc/proc_darwin.go
-if LIBGO_IS_386
-regs_file = go/debug/proc/regs_darwin_386.go
-else
-if LIBGO_IS_X86_64
-regs_file = go/debug/proc/regs_darwin_amd64.go
-else
-regs_file =
-endif
-endif
-else
-if LIBGO_IS_FREEBSD
-proc_file = go/debug/proc/proc_freebsd.go
-if LIBGO_IS_386
-regs_file = go/debug/proc/regs_freebsd_386.go
-else
-if LIBGO_IS_X86_64
-regs_file = go/debug/proc/regs_freebsd_amd64.go
-else
-regs_file =
-endif
-endif
-else
-proc_file =
-regs_file =
-endif
-endif
-endif
-
go_debug_proc_files = \
go/debug/proc/proc.go \
- $(proc_file) \
- $(regs_file)
+ go/debug/proc/proc_$(GOOS).go \
+ go/debug/proc/regs_$(GOOS)_$(GOARCH).go
go_encoding_ascii85_files = \
go/encoding/ascii85/ascii85.go
go_testing_script_files = \
go/testing/script/script.go
-if LIBGO_IS_LINUX
-syscall_os_file = syscalls/syscall_linux.go
-if LIBGO_IS_386
-syscall_arch_file = syscalls/syscall_linux_386.go
-else
-if LIBGO_IS_X86_64
-syscall_arch_file = syscalls/syscall_linux_amd64.go
-else
-syscall_arch_file =
-endif
-endif
-else
-syscall_os_file =
-syscall_arch_file =
-endif
-
if LIBGO_IS_RTEMS
syscall_exec_os_file = syscalls/exec_stubs.go
syscall_socket_os_file = syscalls/socket_bsd.go
-syscall_socket_epoll_file=
+syscall_socket_epoll_file =
syscall_sysfile_os_file = syscalls/sysfile_rtems.go
syscall_syscall_file = syscalls/syscall_stubs.go
syscall_errstr_file = syscalls/errstr_rtems.go
endif
endif
+syscall_arch.go: s-syscall_arch; @true
+s-syscall_arch: Makefile
+ rm -f syscall_arch.go.tmp
+ echo "package syscall" > syscall_arch.go.tmp
+ echo 'const ARCH = "'$(GOARCH)'"' >> syscall_arch.go.tmp
+ $(SHELL) $(srcdir)/../move-if-change syscall_arch.go.tmp syscall_arch.go
+ $(STAMP) $@
+
go_syscall_files = \
$(syscall_errstr_file) \
$(syscall_errstr_decl_file) \
$(syscall_syscall_file) \
syscalls/syscall_unix.go \
syscalls/stringbyte.go \
- $(syscall_os_file) \
- $(syscall_arch_file) \
+ syscalls/syscall_$(GOOS).go \
+ syscalls/syscall_$(GOOS)_$(GOARCH).go \
syscalls/sysfile_posix.go \
$(syscall_sysfile_os_file) \
- sysinfo.go
+ sysinfo.go \
+ syscall_arch.go
go_syscall_c_files = \
syscalls/errno.c
libgo_la_SOURCES = $(runtime_files)
-libgo_la_LIBADD = $(libgo_go_objs) $(LIBFFI) $(PTHREAD_LIBS)
+libgo_la_LIBADD = $(libgo_go_objs) $(LIBFFI) $(PTHREAD_LIBS) $(MATH_LIBS)
libgobegin_a_SOURCES = \
runtime/go-main.c
GOLINK = $(LIBTOOL) --tag GO --mode-link $(GOC) \
$(OPT_LDFLAGS) $(SECTION_LDFLAGS) $(AM_GOCFLAGS) $(LTLDFLAGS) \
- $(PTHREAD_LIBS) -o $@
+ $(PTHREAD_LIBS) $(MATH_LIBS) -o $@
# Build a package.
BUILDARCHIVE = \
test -d $(@D) || $(MKDIR_P) $(@D); \
rm -f $@; \
files=`echo $^ | sed -e 's/[^ ]*\.gox//g'`; \
- if $(LTGOCOMPILE) -c -fgo-prefix="libgo_$(@D)" -o $@.$(OBJEXT) $$files; then \
+ if $(LTGOCOMPILE) -I . -c -fgo-prefix="libgo_$(@D)" -o $@.$(OBJEXT) $$files; then \
$(AR) rc $@ $@.$(OBJEXT); \
else exit 1; fi
MAKE="$(MAKE)"; \
export MAKE; \
rm -f $@-log; \
- echo -n "$(@D) " >$@-log 2>&1; \
prefix=`if test "$(@D)" = "regexp"; then echo regexp-test; else dirname $(@D); fi`; \
test "$${prefix}" != "." || prefix="$(@D)"; \
- $(srcdir)/testsuite/gotest --dejagnu=$(use_dejagnu) --basedir=$(srcdir) --srcdir=$(srcdir)/go/$(@D) --prefix="libgo_$${prefix}" --pkgfiles="$(go_$(subst /,_,$(@D))_files)" >>$@-log 2>&1; \
- x=$$?; \
- cat $@-log; \
- exit $$x
+ if $(srcdir)/testsuite/gotest --dejagnu=$(use_dejagnu) --basedir=$(srcdir) --srcdir=$(srcdir)/go/$(@D) --prefix="libgo_$${prefix}" --pkgfiles="$(go_$(subst /,_,$(@D))_files)" >>$@-log 2>&1; then \
+ echo "PASS: $(@D)"; \
+ else \
+ echo "FAIL: $(@D)"; \
+ cat $@-log; \
+ exit 1; \
+ fi
# Build all packages before checking any.
CHECK_DEPS = libgo.la libgobegin.a \
$(CHECK)
.PHONY: bufio/check
-bytes/libbytes.a: $(go_bytes_files) $(go_bytes_c_files) io.gox os.gox utf8.gox
+bytes/libbytes.a: $(go_bytes_files) $(go_bytes_c_files) io.gox os.gox \
+ unicode.gox utf8.gox
test -d bytes || $(MKDIR_P) bytes
$(LTGOCOMPILE) -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
$(LTCOMPILE) -c -o bytes/index.$(OBJEXT) $(srcdir)/go/bytes/indexbyte.c