Fix build on EL7
Add /usr/local/bin to $PATH. Update fedora/Makefile with enhancements from jellyfin-web.
This commit is contained in:
parent
2c6d6dbbf8
commit
543b0127b3
|
@ -1 +0,0 @@
|
|||
../fedora/Makefile
|
|
@ -1,41 +1,55 @@
|
|||
VERSION := $(shell sed -ne '/^Version:/s/.* *//p' fedora/jellyfin.spec)
|
||||
outdir ?= fedora/
|
||||
DIR := $(dir $(lastword $(MAKEFILE_LIST)))
|
||||
INSTGIT := $(shell if [ "$$(id -u)" = "0" ]; then dnf -y install git; fi)
|
||||
NAME := jellyfin-server
|
||||
VERSION := $(shell sed -ne '/^Version:/s/.* *//p' $(DIR)/jellyfin.spec)
|
||||
RELEASE := $(shell sed -ne '/^Release:/s/.* *\(.*\)%{.*}.*/\1/p' $(DIR)/jellyfin.spec)
|
||||
GIT_VER := $(shell git describe --tags | sed -e 's/^v//' -e 's/-[0-9]*-g.*$$//')
|
||||
SRPM := jellyfin-$(subst -,~,$(GIT_VER))-$(RELEASE)$(shell rpm --eval %dist).src.rpm
|
||||
TARBALL :=$(NAME)-$(subst -,~,$(GIT_VER)).tar.gz
|
||||
|
||||
epel-7-x86_64_repos := https://packages.microsoft.com/rhel/7/prod/
|
||||
epel-8-x86_64_repos := https://download.copr.fedorainfracloud.org/results/@dotnet-sig/dotnet-preview/$(TARGET)/
|
||||
fedora_repos := https://download.copr.fedorainfracloud.org/results/@dotnet-sig/dotnet-preview/$(TARGET)/
|
||||
fedora-34-x86_64_repos := $(fedora_repos)
|
||||
fedora-35-x86_64_repos := $(fedora_repos)
|
||||
fedora-34-x86_64_repos := $(fedora_repos)
|
||||
|
||||
outdir ?= $(PWD)/$(DIR)/
|
||||
TARGET ?= fedora-35-x86_64
|
||||
|
||||
srpm:
|
||||
pushd fedora/; \
|
||||
if [ "$$(id -u)" = "0" ]; then \
|
||||
dnf -y install git; \
|
||||
fi; \
|
||||
version=$$(git describe --tags | sed -e 's/^v//' \
|
||||
-e 's/-[0-9]*-g.*$$//' \
|
||||
-e 's/-/~/'); \
|
||||
SOURCE_DIR=.. \
|
||||
WORKDIR="$${PWD}"; \
|
||||
tar \
|
||||
--transform "s,^\.,jellyfin-server-$$version," \
|
||||
--exclude='.git*' \
|
||||
--exclude='**/.git' \
|
||||
--exclude='**/.hg' \
|
||||
--exclude='**/.vs' \
|
||||
--exclude='**/.vscode' \
|
||||
--exclude=deployment \
|
||||
--exclude='**/bin' \
|
||||
--exclude='**/obj' \
|
||||
--exclude='**/.nuget' \
|
||||
--exclude='*.deb' \
|
||||
--exclude='*.rpm' \
|
||||
--exclude=jellyfin-server-$$version.tar.gz \
|
||||
-czf "jellyfin-server-$$version.tar.gz" \
|
||||
-C $${SOURCE_DIR} ./; \
|
||||
popd; \
|
||||
./bump_version $$version
|
||||
cd fedora/; \
|
||||
srpm: $(DIR)/$(SRPM)
|
||||
tarball: $(DIR)/$(TARBALL)
|
||||
|
||||
$(DIR)/$(TARBALL):
|
||||
cd $(DIR)/; \
|
||||
SOURCE_DIR=.. \
|
||||
WORKDIR="$${PWD}"; \
|
||||
version=$(GIT_VER); \
|
||||
tar \
|
||||
--transform "s,^\.,$(NAME)-$(subst -,~,$(GIT_VER))," \
|
||||
--exclude='.git*' \
|
||||
--exclude='**/.git' \
|
||||
--exclude='**/.hg' \
|
||||
--exclude='**/.vs' \
|
||||
--exclude='**/.vscode' \
|
||||
--exclude=deployment \
|
||||
--exclude='**/bin' \
|
||||
--exclude='**/obj' \
|
||||
--exclude='**/.nuget' \
|
||||
--exclude='*.deb' \
|
||||
--exclude='*.rpm' \
|
||||
--exclude=$(notdir $@) \
|
||||
-czf $(notdir $@) \
|
||||
-C $${SOURCE_DIR} ./
|
||||
|
||||
$(DIR)/$(SRPM): $(DIR)/$(TARBALL) $(DIR)/jellyfin.spec
|
||||
./bump_version $(GIT_VER)
|
||||
cd $(DIR)/; \
|
||||
rpmbuild -bs jellyfin.spec \
|
||||
--define "_sourcedir $$PWD/" \
|
||||
--define "_srcrpmdir $(outdir)"
|
||||
|
||||
rpms: fedora/jellyfin-$(shell git describe --tags | sed -e 's/^v//' -e 's/-[0-9]*-g.*$$//' -e 's/-/~/')-1$(shell rpm --eval %dist).src.rpm
|
||||
mock --addrepo=https://download.copr.fedorainfracloud.org/results/@dotnet-sig/dotnet-preview/$(TARGET)/ \
|
||||
--enable-network \
|
||||
rpms: $(DIR)/$(SRPM)
|
||||
mock $(addprefix --addrepo=, $($(TARGET)_repos)) \
|
||||
--enable-network \
|
||||
-r $(TARGET) $<
|
||||
|
|
|
@ -64,6 +64,7 @@ the Jellyfin server to bind to ports 80 and/or 443 for example.
|
|||
%install
|
||||
export DOTNET_CLI_TELEMETRY_OPTOUT=1
|
||||
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
|
||||
export PATH=$PATH:/usr/local/bin
|
||||
dotnet publish --configuration Release --output='%{buildroot}%{_libdir}/jellyfin' --self-contained --runtime %{dotnet_runtime} \
|
||||
"-p:DebugSymbols=false;DebugType=none" Jellyfin.Server
|
||||
%{__install} -D -m 0644 LICENSE %{buildroot}%{_datadir}/licenses/jellyfin/LICENSE
|
||||
|
|
Loading…
Reference in New Issue
Block a user