LEFT | RIGHT |
1 # Copyright 2009 The Go Authors. All rights reserved. | 1 # Copyright 2009 The Go Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style | 2 # Use of this source code is governed by a BSD-style |
3 # license that can be found in the LICENSE file. | 3 # license that can be found in the LICENSE file. |
4 | 4 |
5 include ../../Make.$(GOARCH) | 5 include ../../Make.$(GOARCH) |
6 | 6 |
7 TARG=runtime | 7 TARG=runtime |
8 | 8 |
9 # Set SIZE to 32 or 64. | 9 # Set SIZE to 32 or 64. |
10 SIZE_386=32 | 10 SIZE_386=32 |
11 SIZE_amd64=64 | 11 SIZE_amd64=64 |
12 SIZE_arm=32 | 12 SIZE_arm=32 |
13 SIZE=$(SIZE_$(GOARCH)) | 13 SIZE=$(SIZE_$(GOARCH)) |
14 | 14 |
15 # Setup CFLAGS. Add -D_64BIT on 64-bit platforms (sorry). | 15 # Setup CFLAGS. Add -D_64BIT on 64-bit platforms (sorry). |
16 CFLAGS_64=-D_64BIT | 16 CFLAGS_64=-D_64BIT |
17 # TODO(kaib): fix register allocation to honor extern register so we | 17 # TODO(kaib): fix register allocation to honor extern register so we |
18 # can enable optimizations again. | 18 # can enable optimizations again. |
19 CFLAGS_arm=-N | 19 CFLAGS_arm=-N |
20 CFLAGS_mingw=-D__MINGW__ | 20 CFLAGS_mingw=-D__MINGW__ |
21 CFLAGS=-I$(GOOS) -I$(GOOS)/$(GOARCH) -wF $(CFLAGS_$(SIZE)) $(CFLAGS_$(GOARCH)) $
(CFLAGS_$(GOOS)) | 21 CFLAGS=-I$(GOOS) -I$(GOOS)/$(GOARCH) -wF $(CFLAGS_$(SIZE)) $(CFLAGS_$(GOARCH)) $
(CFLAGS_$(GOOS)) |
22 | 22 |
23 GOFILES=\ | 23 GOFILES=\ |
24 extern.go\ | 24 extern.go\ |
25 type.go\ | 25 type.go\ |
26 | 26 |
27 GOFILES_pchw=\ | 27 GOFILES_pchw=\ |
28 pchw/io.go\ | 28 pchw/io.go\ |
29 | 29 |
30 GOFILES_mingw=\ | 30 OFILES_mingw=\ |
31 » mingw/syscall.go\ | 31 » syscall.$O\ |
32 | 32 |
33 # 386-specific object files | 33 # 386-specific object files |
34 OFILES_386=\ | 34 OFILES_386=\ |
35 vlop.$O\ | 35 vlop.$O\ |
36 vlrt.$O\ | 36 vlrt.$O\ |
37 | 37 |
38 GOARM?=6 | 38 GOARM?=6 |
39 | 39 |
40 # arm-specific object files | 40 # arm-specific object files |
41 OFILES_arm=\ | 41 OFILES_arm=\ |
(...skipping 46 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
88 runtime.h\ | 88 runtime.h\ |
89 hashmap.h\ | 89 hashmap.h\ |
90 malloc.h\ | 90 malloc.h\ |
91 $(GOARCH)/asm.h\ | 91 $(GOARCH)/asm.h\ |
92 $(GOOS)/os.h\ | 92 $(GOOS)/os.h\ |
93 $(GOOS)/signals.h\ | 93 $(GOOS)/signals.h\ |
94 $(GOOS)/$(GOARCH)/defs.h\ | 94 $(GOOS)/$(GOARCH)/defs.h\ |
95 | 95 |
96 GOFILES+=$(GOFILES_$(GOOS)) | 96 GOFILES+=$(GOFILES_$(GOOS)) |
97 | 97 |
| 98 # For use by cgo. |
| 99 INSTALLFILES=$(pkgdir)/runtime.h $(pkgdir)/cgocall.h |
| 100 |
98 # special, out of the way compiler flag that means "add runtime metadata to outp
ut" | 101 # special, out of the way compiler flag that means "add runtime metadata to outp
ut" |
99 GC+= -+ | 102 GC+= -+ |
100 | 103 |
101 include ../../Make.pkg | 104 include ../../Make.pkg |
| 105 |
| 106 $(pkgdir)/%.h: %.h |
| 107 @test -d $(QUOTED_GOROOT)/pkg && mkdir -p $(pkgdir) |
| 108 cp $< $@ |
102 | 109 |
103 clean: clean-local | 110 clean: clean-local |
104 | 111 |
105 clean-local: | 112 clean-local: |
106 rm -f cgo2c */asm.h runtime.acid.* | 113 rm -f cgo2c */asm.h runtime.acid.* |
107 | 114 |
108 $(GOARCH)/asm.h: mkasmh.sh runtime.acid.$(GOARCH) | 115 $(GOARCH)/asm.h: mkasmh.sh runtime.acid.$(GOARCH) |
109 ./mkasmh.sh >$@.x | 116 ./mkasmh.sh >$@.x |
110 mv -f $@.x $@ | 117 mv -f $@.x $@ |
111 | 118 |
(...skipping 15 matching lines...) Expand all Loading... |
127 | 134 |
128 %.$O: $(GOARCH)/%.s $(GOARCH)/asm.h | 135 %.$O: $(GOARCH)/%.s $(GOARCH)/asm.h |
129 $(QUOTED_GOBIN)/$(AS) $< | 136 $(QUOTED_GOBIN)/$(AS) $< |
130 | 137 |
131 %.$O: $(GOOS)/$(GOARCH)/%.s $(GOARCH)/asm.h | 138 %.$O: $(GOOS)/$(GOARCH)/%.s $(GOARCH)/asm.h |
132 $(QUOTED_GOBIN)/$(AS) $< | 139 $(QUOTED_GOBIN)/$(AS) $< |
133 | 140 |
134 # for discovering offsets inside structs when debugging | 141 # for discovering offsets inside structs when debugging |
135 runtime.acid.$(GOARCH): runtime.h proc.c | 142 runtime.acid.$(GOARCH): runtime.h proc.c |
136 $(QUOTED_GOBIN)/$(CC) $(CFLAGS) -a proc.c >$@ | 143 $(QUOTED_GOBIN)/$(CC) $(CFLAGS) -a proc.c >$@ |
LEFT | RIGHT |