summaryrefslogtreecommitdiff
path: root/hack/lib/golang.sh
diff options
context:
space:
mode:
authorzhangjie <iamkadisi@163.com>2020-02-05 20:37:19 +0800
committerzhangjie <iamkadisi@163.com>2020-02-18 16:54:39 +0800
commit9d540eb95d8773ba111217ac5dacb639c0175db3 (patch)
tree7f6ccd696d83b54282da929e2a9f2e3506d79aaf /hack/lib/golang.sh
parentsupport make e2e (diff)
downloadkubeedge-9d540eb95d8773ba111217ac5dacb639c0175db3.tar.gz
support make bluetoothdevice and make bluetoothdevice_imagex
Signed-off-by: zhangjie <iamkadisi@163.com> Co-Authored-By: Kevin Wang <kevinwzf0126@gmail.com>
Diffstat (limited to 'hack/lib/golang.sh')
-rw-r--r--hack/lib/golang.sh70
1 files changed, 23 insertions, 47 deletions
diff --git a/hack/lib/golang.sh b/hack/lib/golang.sh
index 0e75c673b..07e1fe701 100644
--- a/hack/lib/golang.sh
+++ b/hack/lib/golang.sh
@@ -24,7 +24,6 @@ set -o errexit
set -o nounset
set -o pipefail
-readonly KUBEEDGE_GO_PACKAGE="github.com/kubeedge/kubeedge"
YES="y"
NO="n"
@@ -133,7 +132,6 @@ kubeedge::golang::binaries_from_targets() {
kubeedge::check::env() {
errors=()
-
if [ -z $GOPATH ]; then
errors+="GOPATH environment value not set"
fi
@@ -192,7 +190,6 @@ IFS=" " read -ra KUBEEDGE_ALL_BINARIES<<< "$(kubeedge::golang::get_all_binares)"
kubeedge::golang::build_binaries() {
kubeedge::check::env
-
local -a targets=()
local binArg
for binArg in "$@"; do
@@ -209,32 +206,15 @@ kubeedge::golang::build_binaries() {
local ldflags
read -r ldflags <<< "$(kubeedge::version::ldflags)"
+ mkdir -p ${KUBEEDGE_OUTPUT_BINPATH}
for bin in ${binaries[@]}; do
- echo "buildding $bin"
- go install -ldflags "$ldflags" $bin
+ echo "building $bin"
+ local name="${bin##*/}"
+ set -x
+ go build -o ${KUBEEDGE_OUTPUT_BINPATH}/${name} -ldflags "$ldflags" $bin
+ set +x
done
-}
-
-kubeedge::golang::place_bins() {
- echo "Placing binaries $@"
-
- local -a binaries=()
- local binArg
- for binArg in "$@"; do
- binaries+=("${binArg}")
- done
-
- if [[ ${#binaries[@]} -eq 0 ]]; then
- binaries=("${KUBEEDGE_ALL_BINARIES[@]}")
- fi
-
- mkdir -p ${KUBEEDGE_OUTPUT_BINPATH}
-
- local name
- for name in ${binaries[@]}; do
- mv -f "${GOPATH}/bin/${name}" ${KUBEEDGE_OUTPUT_BINPATH}
- done
}
@@ -274,7 +254,6 @@ kubeedge::golang::cross_build_place_binaries() {
kubeedge::check::env
local -a targets=()
- local -a binariesArray=()
local goarm=${goarm:-${KUBEEDGE_ALL_CROSS_GOARMS[0]}}
for arg in "$@"; do
@@ -287,14 +266,12 @@ kubeedge::golang::cross_build_place_binaries() {
exit 1
fi
targets+=("$(kubeedge::golang::get_target_by_binary $arg)")
- binariesArray+=("$arg")
fi
done
if [[ ${#targets[@]} -eq 0 ]]; then
for bin in ${KUBEEDGE_ALL_CROSS_BINARIES[@]}; do
targets+=("$(kubeedge::golang::get_target_by_binary $bin)")
- binariesArray+=("$bin")
done
fi
@@ -309,18 +286,20 @@ kubeedge::golang::cross_build_place_binaries() {
local ldflags
read -r ldflags <<< "$(kubeedge::version::ldflags)"
+ mkdir -p ${KUBEEDGE_OUTPUT_BINPATH}
for bin in ${binaries[@]}; do
- echo "cross buildding $bin"
+ echo "cross buildding $bin GOARM${goarm}"
+ local name="${bin##*/}"
if [ "${goarm}" == "8" ]; then
- GOARCH=arm64 GOOS="linux" CGO_ENABLED=1 CC=aarch64-linux-gnu-gcc; go install -ldflags "$ldflags" $bin
+ set -x
+ GOARCH=arm64 GOOS="linux" CGO_ENABLED=1 CC=aarch64-linux-gnu-gcc go build -o ${KUBEEDGE_OUTPUT_BINPATH}/${name} -ldflags "$ldflags" $bin
+ set +x
elif [ "${goarm}" == "7" ]; then
- GOARCH=arm GOOS="linux" GOARM=6 CGO_ENABLED=1 CC=arm-linux-gnueabi-gcc; go install -ldflags "$ldflags" $bin
+ set -x
+ GOARCH=arm GOOS="linux" GOARM=6 CGO_ENABLED=1 CC=arm-linux-gnueabi-gcc go build -o ${KUBEEDGE_OUTPUT_BINPATH}/${name} -ldflags "$ldflags" $bin
+ set +x
fi
done
-
- for name in ${binariesArray[@]}; do
- mv -f "${GOPATH}/bin/${name}" ${KUBEEDGE_OUTPUT_BINPATH}
- done
}
KUBEEDGE_ALL_SMALL_BINARIES=(
@@ -342,7 +321,6 @@ kubeedge::golang::is_small_build_binary() {
kubeedge::golang::small_build_place_binaries() {
kubeedge::check::env
local -a targets=()
- local -a binariesArray=()
for arg in "$@"; do
if [ "$(kubeedge::golang::is_small_build_binary ${arg})" == "${NO}" ]; then
@@ -350,13 +328,11 @@ kubeedge::golang::small_build_place_binaries() {
exit 1
fi
targets+=("$(kubeedge::golang::get_target_by_binary $arg)")
- binariesArray+=("$arg")
done
if [[ ${#targets[@]} -eq 0 ]]; then
for bin in ${KUBEEDGE_ALL_SMALL_BINARIES[@]}; do
targets+=("$(kubeedge::golang::get_target_by_binary $bin)")
- binariesArray+=("$bin")
done
fi
@@ -366,14 +342,14 @@ kubeedge::golang::small_build_place_binaries() {
local ldflags
read -r ldflags <<< "$(kubeedge::version::ldflags)"
+ mkdir -p ${KUBEEDGE_OUTPUT_BINPATH}
for bin in ${binaries[@]}; do
- echo "small buildding $bin"
- go install -ldflags "-w -s -extldflags -static $ldflags" $bin
- done
-
- for name in ${binariesArray[@]}; do
- upx-ucl -9 ${GOPATH}/bin/edgecore
- mv -f "${GOPATH}/bin/${name}" ${KUBEEDGE_OUTPUT_BINPATH}
+ echo "small building $bin"
+ local name="${bin##*/}"
+ set -x
+ go build -o ${KUBEEDGE_OUTPUT_BINPATH}/${name} -ldflags "-w -s -extldflags -static $ldflags" $bin
+ upx-ucl -9 ${KUBEEDGE_OUTPUT_BINPATH}/${name}
+ set +x
done
}
@@ -398,7 +374,7 @@ kubeedge::golang::get_edge_test_dirs() {
local findDirs
local -a dirArray=()
cd ${KUBEEDGE_ROOT}
- findDirs=$(find "./edge/pkg" -name "*_test.go"| xargs -I{} dirname {} | uniq)
+ findDirs=$(find "./edge/pkg" -name "*_test.go"| xargs -I{} dirname {} | uniq)
dirArray=(${findDirs// /})
echo "${dirArray[@]}"
)