firmware/general/package/go2rtc/go2rtc.mk

44 lines
1.1 KiB
Makefile

################################################################################
#
# go2rtc
#
################################################################################
GO2RTC_VERSION = HEAD
GO2RTC_SITE = $(call github,AlexxIT,go2rtc,$(GO2RTC_VERSION))
GO2RTC_LICENSE = MIT
GO2RTC_LICENSE_FILES = LICENSE
GO2RTC_INSTALL_TARGET = YES
GO2RTC_DEPENDENCIES = host-go host-upx
GO2RTC_GO_LDFLAGS = -s -w
define GO2RTC_BUILD_CMDS
GOARCH=$$( \
case $(BR2_ARCH) in \
x86) echo 386 ;; \
x86_64) echo amd64 ;; \
arm) echo arm ;; \
aarch64) echo arm64 ;; \
mips) echo mips ;; \
mipsel) echo mipsle ;; \
*) echo "Unsupported architecture: $(BR2_ARCH)" && exit 1 ;; \
esac \
); \
echo "Building for GOARCH: $$GOARCH"; \
(cd $(@D); \
CGO_ENABLED=0 \
GOOS=linux \
GOARCH=$$GOARCH \
go build -ldflags "$(GO2RTC_GO_LDFLAGS)")
endef
define GO2RTC_INSTALL_TARGET_CMDS
$(INSTALL) -D -m 0755 $(@D)/go2rtc $(TARGET_DIR)/usr/bin/go2rtc
upx --best --lzma $(TARGET_DIR)/usr/bin/go2rtc
$(INSTALL) -m 644 -t $(TARGET_DIR)/etc/ $(GO2RTC_PKGDIR)/files/go2rtc.yaml
endef
$(eval $(golang-package))