mk/image.mk: Ship /init in initramfs
[openadk.git] / package / go / Makefile
blobcd218acfab5a2e9cff8118b88e37188b732e4e11
1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 include $(ADK_TOPDIR)/rules.mk
6 PKG_NAME:= go
7 PKG_VERSION:= 1.8
8 PKG_RELEASE:= 1
9 PKG_HASH:= 406865f587b44be7092f206d73fc1de252600b79b3cacc587b74b5ef5c623596
10 PKG_DESCR:= go compiler and tools
11 PKG_SECTION:= dev/lang
12 HOST_BUILDDEP:= go-bootstrap-host
13 PKG_URL:= http://www.golang.org
14 PKG_SITES:= https://storage.googleapis.com/golang/
16 PKG_ARCH_DEPENDS:= aarch64 arm mips mips64 ppc64 x86 x86_64
18 PKG_CFLINE_GO:= depends on ADK_HOST_ONLY
20 DISTFILES:= $(PKG_NAME)$(PKG_VERSION).src.tar.gz
21 WRKDIST= ${WRKDIR}/go/src
23 include $(ADK_TOPDIR)/mk/host.mk
24 include $(ADK_TOPDIR)/mk/package.mk
26 $(eval $(call HOST_template,GO,go,$(PKG_VERSION)-${PKG_RELEASE}))
28 HOST_STYLE:= manual
30 include $(ADK_TOPDIR)/mk/go.mk
32 ADK_GO_BOOTSTRAP:= $(STAGING_HOST_DIR)/usr/lib/go-bootstrap
33 ADK_GO_TEMP:= $(WRKBUILD)/go-temp
34 ADK_GO_HOST_ENV:= GOROOT_BOOTSTRAP="$(ADK_GO_BOOTSTRAP)" \
35 GOROOT_FINAL="$(ADK_GO_ROOT)" \
36 GOROOT="$(WRKBUILD)" \
37 GOBIN="$(WRKBUILD)/bin" \
38 GOARCH=$(ADK_GO_ARCH) \
39 GOOS=linux
41 host-build:
42 (cd $(WRKBUILD) && \
43 CGO_ENABLED=0 \
44 CC_FOR_TARGET=$(HOST_CC) \
45 CXX_FOR_TARGET=$(HOST_CXX) \
46 $(ADK_GO_HOST_ENV) ./make.bash)
47 mkdir -p $(ADK_GO_TEMP)
48 mv $(WRKBUILD)/../pkg/tool $(ADK_GO_TEMP)
49 mv $(WRKBUILD)/../bin $(ADK_GO_TEMP)
50 (cd $(WRKBUILD) && \
51 CGO_ENABLED=1 \
52 CC_FOR_TARGET=$(TARGET_CC) \
53 CXX_FOR_TARGET=$(TARGET_CXX) \
54 $(ADK_GO_HOST_ENV) ./make.bash)
56 go-hostinstall:
57 $(INSTALL_DIR) $(ADK_GO_ROOT)/bin
58 $(INSTALL_BIN) $(ADK_GO_TEMP)/bin/{go,gofmt} $(ADK_GO_ROOT)/bin
59 ln -sf ../lib/go/bin/go $(STAGING_HOST_DIR)/usr/bin/
60 ln -sf ../lib/go/bin/gofmt $(STAGING_HOST_DIR)/usr/bin/
61 $(CP) $(WRKBUILD)/../lib $(ADK_GO_ROOT)
62 $(INSTALL_DIR) $(ADK_GO_ROOT)/pkg
63 $(CP) $(WRKBUILD)/../pkg/include $(ADK_GO_ROOT)/pkg
64 $(CP) $(WRKBUILD)/../pkg/linux_* $(ADK_GO_ROOT)/pkg
65 $(CP) $(ADK_GO_TEMP)/tool $(ADK_GO_ROOT)/pkg
66 $(CP) $(WRKBUILD)/../src $(ADK_GO_ROOT)
68 include ${ADK_TOPDIR}/mk/host-bottom.mk
69 include $(ADK_TOPDIR)/mk/pkg-bottom.mk