mirror of
https://github.com/jellyfin/jellyfin-web.git
synced 2024-11-17 19:08:18 -07:00
2ff0a67e10
Rewrite so we don't need to constantly update with every new Fedora release. This is especially useful when Fedora and Jellyfin release cycles don't line up. Version selection is as follows: * TARGET environment variable, which is currently used already * Currently running Fedora version * Hardcoded Fallback version that can be updated occasionally
49 lines
2.0 KiB
Makefile
49 lines
2.0 KiB
Makefile
DIR := $(dir $(lastword $(MAKEFILE_LIST)))
|
|
# install git and npm
|
|
$(info $(shell set -x; if [ "$$(id -u)" = "0" ]; then echo "Installing git"; dnf -y install git npm; fi))
|
|
NAME := jellyfin-web
|
|
VERSION := $(shell set -x; sed -ne '/^Version:/s/.* *//p' $(DIR)/$(NAME).spec)
|
|
RELEASE := $(shell set -x; sed -ne '/^Release:/s/.* *\(.*\)%{.*}.*/\1/p' $(DIR)/$(NAME).spec)
|
|
SRPM := jellyfin-web-$(subst -,~,$(VERSION))-$(RELEASE)$(shell rpm --eval %dist).src.rpm
|
|
TARBALL :=$(NAME)-$(subst -,~,$(VERSION)).tar.gz
|
|
|
|
epel-7-x86_64_repos := https://rpm.nodesource.com/pub_16.x/el/\$$releasever/\$$basearch/
|
|
|
|
fed_ver := $(shell rpm -E %fedora)
|
|
# fallback when not running on Fedora
|
|
fed_ver ?= 36
|
|
TARGET ?= fedora-$(fed_ver)-x86_64
|
|
|
|
outdir ?= $(PWD)/$(DIR)/
|
|
|
|
srpm: $(DIR)/$(SRPM)
|
|
tarball: $(DIR)/$(TARBALL)
|
|
|
|
$(DIR)/$(TARBALL):
|
|
cd $(DIR)/; \
|
|
SOURCE_DIR=.. \
|
|
WORKDIR="$${PWD}"; \
|
|
version=$(VERSION); \
|
|
tar \
|
|
--transform "s,^\.,$(NAME)-$(subst -,~,$(VERSION))," \
|
|
--exclude='.git*' \
|
|
--exclude='**/.git' \
|
|
--exclude='**/.hg' \
|
|
--exclude=deployment \
|
|
--exclude='*.deb' \
|
|
--exclude='*.rpm' \
|
|
--exclude=$(notdir $@) \
|
|
-czf $(notdir $@) \
|
|
-C $${SOURCE_DIR} ./
|
|
|
|
$(DIR)/$(SRPM): $(DIR)/$(TARBALL) $(DIR)/jellyfin-web.spec
|
|
cd $(DIR)/; \
|
|
rpmbuild -bs $(NAME).spec \
|
|
--define "_sourcedir $$PWD/" \
|
|
--define "_srcrpmdir $(outdir)"
|
|
|
|
rpms: $(DIR)/$(SRPM)
|
|
mock $(addprefix --addrepo=, $($(TARGET)_repos)) \
|
|
--enable-network \
|
|
-r $(TARGET) $<
|