Makefile 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. VERSION=0.0.1
  2. FILTER=
  3. PARAMS=
  4. # Set debug
  5. ifeq ($(debug),1)
  6. PARAMS+=debug=1
  7. endif
  8. # Set filter pid
  9. ifdef pid
  10. ifneq ($(pid),0)
  11. PARAMS+=pid=$(pid)
  12. FILTER=FILTER_PID=${pid}
  13. endif
  14. endif
  15. # Set send data
  16. ifeq ($(send),1)
  17. FILTER+= SEND=1
  18. endif
  19. # Set eBPF build kernel
  20. ifdef kernel
  21. PARAMS+= kernel=${kernel}
  22. endif
  23. ifdef version
  24. VERSION=${version}
  25. endif
  26. GIT_COMMIT=$(shell git rev-parse --short HEAD)
  27. BUILD_DATE=$(shell date '+%Y-%m-%d-%H:%M:%S')
  28. ARCH=$(shell uname -m)
  29. # Set Version
  30. TARGET_FILE=dist/${ARCH}/package_dir/bin/euspace
  31. GO_LD_FLAGS_VERSION=-X github.com/coroot/coroot-node-agent/flags.AgentVersion=${VERSION}
  32. GO_LD_FLAGS_GIT_COMMIT=-X github.com/coroot/coroot-node-agent/flags.GitCommit=${GIT_COMMIT}
  33. GO_LD_FLAGS_BUILD_DATE=-X github.com/coroot/coroot-node-agent/flags.BuildDate=${BUILD_DATE}
  34. GO_LD_FLAGS=-ldflags="${GO_LD_FLAGS_VERSION} ${GO_LD_FLAGS_GIT_COMMIT} ${GO_LD_FLAGS_BUILD_DATE}"
  35. all: c-build go-build
  36. build:
  37. CGO_ENABLED=1 go build -gcflags="all=-N -l" ${GO_LD_FLAGS} -buildvcs=false -o ${TARGET_FILE}
  38. c:
  39. docker exec -it 62d0676aa0b7 sh -c 'cd /opt/github/euspace/ebpftracer && make all ${PARAMS}'
  40. c-build: c
  41. go-build:
  42. docker exec -it 62d0676aa0b7 bash -c 'cd /opt/github/euspace && source ~/.g/env && make build'
  43. go: go-build run
  44. run:
  45. ssh [email protected] 'cd /opt/github/euspace && CONFIG_ENDPOINT=10.0.16.250:18080 && TRACES_ENDPOINT=http://10.0.16.250:18080/docp/api/v2/data/receive ${FILTER} ./euspace --listen="0.0.0.0:8123"'
  46. docker-build-c:
  47. cd /opt/github/euspace/ebpftracer && make all ${PARAMS}
  48. docker-build-go:
  49. source ~/.g/env; CGO_ENABLED=1 go build -a -gcflags="all=-N -l" ${GO_LD_FLAGS} -buildvcs=false -o ${TARGET_FILE}
  50. docker-build: docker-build-c docker-build-go
  51. @echo Target file: ${TARGET_FILE}
  52. @echo Euspaces build success!