mender.mk 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. ################################################################################
  2. #
  3. # mender
  4. #
  5. ################################################################################
  6. MENDER_VERSION = 3.4.0
  7. MENDER_SITE = $(call github,mendersoftware,mender,$(MENDER_VERSION))
  8. MENDER_LICENSE = Apache-2.0, BSD-2-Clause, BSD-3-Clause, ISC, MIT, OLDAP-2.8
  9. MENDER_CPE_ID_VENDOR = northern.tech
  10. # Vendor license paths generated with:
  11. # awk '{print $2}' LIC_FILES_CHKSUM.sha256 | grep vendor
  12. MENDER_LICENSE_FILES = \
  13. LICENSE \
  14. LIC_FILES_CHKSUM.sha256 \
  15. vendor/github.com/mendersoftware/mender-artifact/LICENSE \
  16. vendor/github.com/mendersoftware/openssl/LICENSE \
  17. vendor/github.com/minio/sha256-simd/LICENSE \
  18. vendor/github.com/mendersoftware/progressbar/LICENSE \
  19. vendor/github.com/pkg/errors/LICENSE \
  20. vendor/github.com/godbus/dbus/LICENSE \
  21. vendor/github.com/gorilla/websocket/LICENSE \
  22. vendor/github.com/klauspost/compress/LICENSE \
  23. vendor/github.com/pmezard/go-difflib/LICENSE \
  24. vendor/golang.org/x/sys/LICENSE \
  25. vendor/github.com/bmatsuo/lmdb-go/LICENSE.md \
  26. vendor/github.com/remyoudompheng/go-liblzma/LICENSE \
  27. vendor/golang.org/x/term/LICENSE \
  28. vendor/github.com/davecgh/go-spew/LICENSE \
  29. vendor/github.com/klauspost/pgzip/LICENSE \
  30. vendor/github.com/klauspost/cpuid/v2/LICENSE \
  31. vendor/github.com/sirupsen/logrus/LICENSE \
  32. vendor/github.com/stretchr/testify/LICENSE \
  33. vendor/github.com/ungerik/go-sysfs/LICENSE \
  34. vendor/github.com/urfave/cli/v2/LICENSE \
  35. vendor/github.com/stretchr/objx/LICENSE \
  36. vendor/gopkg.in/yaml.v3/LICENSE \
  37. vendor/github.com/mattn/go-isatty/LICENSE \
  38. vendor/github.com/bmatsuo/lmdb-go/LICENSE.mdb.md
  39. MENDER_DEPENDENCIES = host-pkgconf openssl
  40. MENDER_LDFLAGS = -X github.com/mendersoftware/mender/conf.Version=$(MENDER_VERSION)
  41. MENDER_UPDATE_MODULES_FILES = \
  42. directory \
  43. script \
  44. single-file \
  45. $(if $(BR2_PACKAGE_DOCKER_CLI),docker) \
  46. $(if $(BR2_PACKAGE_RPM),rpm)
  47. define MENDER_INSTALL_CONFIG_FILES
  48. $(INSTALL) -d -m 755 $(TARGET_DIR)/etc/mender/scripts
  49. echo -n "3" > $(TARGET_DIR)/etc/mender/scripts/version
  50. $(INSTALL) -D -m 0644 $(MENDER_PKGDIR)/mender.conf \
  51. $(TARGET_DIR)/etc/mender/mender.conf
  52. $(INSTALL) -D -m 0644 $(MENDER_PKGDIR)/server.crt \
  53. $(TARGET_DIR)/etc/mender/server.crt
  54. $(INSTALL) -D -m 0755 $(@D)/support/mender-device-identity \
  55. $(TARGET_DIR)/usr/share/mender/identity/mender-device-identity
  56. $(foreach f,bootloader-integration hostinfo network os rootfs-type, \
  57. $(INSTALL) -D -m 0755 $(@D)/support/mender-inventory-$(f) \
  58. $(TARGET_DIR)/usr/share/mender/inventory/mender-inventory-$(f)
  59. )
  60. $(INSTALL) -D -m 0755 $(MENDER_PKGDIR)/artifact_info \
  61. $(TARGET_DIR)/etc/mender/artifact_info
  62. $(INSTALL) -D -m 0755 $(MENDER_PKGDIR)/device_type \
  63. $(TARGET_DIR)/etc/mender/device_type
  64. mkdir -p $(TARGET_DIR)/var/lib
  65. ln -snf /var/run/mender $(TARGET_DIR)/var/lib/mender
  66. $(foreach f,$(MENDER_UPDATE_MODULES_FILES), \
  67. $(INSTALL) -D -m 0755 $(@D)/support/modules/$(notdir $(f)) \
  68. $(TARGET_DIR)/usr/share/mender/modules/v3/$(notdir $(f))
  69. )
  70. endef
  71. MENDER_POST_INSTALL_TARGET_HOOKS += MENDER_INSTALL_CONFIG_FILES
  72. ifeq ($(BR2_PACKAGE_XZ),y)
  73. MENDER_DEPENDENCIES += xz
  74. else
  75. MENDER_TAGS += nolzma
  76. endif
  77. ifeq ($(BR2_PACKAGE_DBUS)$(BR2_PACKAGE_LIBGLIB2),yy)
  78. MENDER_DEPENDENCIES += libglib2
  79. define MENDER_INSTALL_DBUS_AUTHENTICATION_MANAGER_CONF
  80. $(INSTALL) -D -m 0755 $(@D)/support/dbus/io.mender.AuthenticationManager.conf \
  81. $(TARGET_DIR)/etc/dbus-1/system.d/io.mender.AuthenticationManager.conf
  82. $(INSTALL) -D -m 0755 $(@D)/support/dbus/io.mender.UpdateManager.conf \
  83. $(TARGET_DIR)/etc/dbus-1/system.d/io.mender.UpdateManager.conf
  84. endef
  85. MENDER_POST_INSTALL_TARGET_HOOKS += MENDER_INSTALL_DBUS_AUTHENTICATION_MANAGER_CONF
  86. else
  87. MENDER_TAGS += nodbus
  88. endif
  89. define MENDER_INSTALL_INIT_SYSTEMD
  90. $(INSTALL) -D -m 0644 $(MENDER_PKGDIR)/mender-client.service \
  91. $(TARGET_DIR)/usr/lib/systemd/system/mender-client.service
  92. endef
  93. define MENDER_INSTALL_INIT_SYSV
  94. $(INSTALL) -D -m 755 $(MENDER_PKGDIR)/S42mender \
  95. $(TARGET_DIR)/etc/init.d/S42mender
  96. endef
  97. $(eval $(golang-package))