Makefile 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. # Keep this short to avoid bloating beam files with long file path info
  2. TOPDIR := /tmp/kuiper
  3. SRCDIR := $(TOPDIR)/$(PKG_VSN)
  4. BUILT := $(SRCDIR)/BUILT
  5. dash := -
  6. none :=
  7. space := $(none) $(none)
  8. RPM_VSN ?= $(shell echo $(PKG_VSN) | grep -oE "[0-9]+\.[0-9]+(\.[0-9]+)?")
  9. RPM_REL ?= $(shell echo $(PKG_VSN) | grep -oE "(alpha|beta|rc)\.[0-9]")
  10. ifeq ($(RPM_REL),)
  11. # no tail
  12. RPM_REL := 1
  13. endif
  14. ARCH := $(shell uname -m)
  15. ifeq ($(ARCH),mips64)
  16. ARCH := mips64el
  17. endif
  18. TARGET_PKG := kuiper-$(PKG_VSN)-linux-$(shell go env GOARCH).rpm
  19. .PHONY: all
  20. all: | $(BUILT)
  21. rpmbuild -v -bb \
  22. --define "_package_name kuiper" \
  23. --define "_name kuiper" \
  24. --define "_topdir $(TOPDIR)" \
  25. --define "_code_source $(SRCDIR)" \
  26. --define "_version $(RPM_VSN)" \
  27. --define "_release $(RPM_REL)" \
  28. --define "_service_src $(KUIPER_SOURCE)/deploy/packages/rpm/kuiper.service" \
  29. --define "_service_dst %{_unitdir}/kuiper.service" \
  30. --define "_post_addition %systemd_post %{_name}.service" \
  31. --define "_preun_addition %systemd_preun %{_name}.service" \
  32. --define "_sharedstatedir /var/lib" \
  33. kuiper.spec
  34. mkdir -p $(KUIPER_SOURCE)/_packages
  35. cp $(TOPDIR)/RPMS/$(ARCH)/*.rpm $(KUIPER_SOURCE)/_packages/$(TARGET_PKG)
  36. $(BUILT):
  37. mkdir -p $(TOPDIR) $(SRCDIR)
  38. cp -r $(KUIPER_SOURCE)/. $(SRCDIR)
  39. cd $(SRCDIR) && mkdir BUILT
  40. clean:
  41. rm -rf $(SRCDIR)