浏览代码

Modify debian build files to support .NET core

Joshua Boniface 6 年之前
父节点
当前提交
0b64fb771f
共有 2 个文件被更改,包括 13 次插入28 次删除
  1. 7 7
      debian/control
  2. 6 21
      debian/rules

+ 7 - 7
debian/control

@@ -3,12 +3,12 @@ Section: misc
 Priority: optional
 Maintainer: Joshua Boniface <joshua@boniface.me>
 Build-Depends:  debhelper (>= 9),
-                mono-devel (>= 5.14),
-                mono-xbuild (>= 5.14),
-                msbuild (>= 15.6),
-                libmono-cil-dev (>= 5.14),
-                cli-common-dev (>= 0.9),
-                referenceassemblies-pcl,
+#                libmono-cil-dev (>= 5.14),
+#                mono-devel (>= 5.14),
+#                mono-xbuild (>= 5.14),
+#                cli-common-dev (>= 0.9),
+#                referenceassemblies-pcl,
+                dotnet-sdk-2.1,
                 libc6-dev
 Standards-Version: 3.9.4
 
@@ -17,6 +17,6 @@ Replaces: mediabrowser, emby, emby-server-beta, emby-server-dev
 Breaks: mediabrowser, emby, emby-server-beta, emby-server-dev
 Conflicts: mediabrowser, emby, emby-server-beta, emby-server-dev
 Architecture: all
-Depends: ${shlibs:Depends}, ${cli:Depends}, ${misc:Depends}, at, libsqlite3-0, mono-runtime (>= 5.14)
+Depends: ${shlibs:Depends}, ${misc:Depends}, at, libsqlite3-0
 Description: Emby Server is a home media server.
  It is built on top of other popular open source technologies such as Service Stack, jQuery, jQuery mobile, and Mono. It features a REST-based api with built-in documentation to facilitate client development. We also have client libraries for our api to enable rapid development.

+ 6 - 21
debian/rules

@@ -1,9 +1,12 @@
 #! /usr/bin/make -f
+CONFIG := Release
+RUNTIME := linux-x64
+TERM := xterm
 SHELL := /bin/bash
 export DH_VERBOSE=1
 
 %:
-	dh $@ --with=cli
+	dh $@
 
 # disable "make check"
 override_dh_auto_test:
@@ -12,25 +15,7 @@ override_dh_auto_test:
 override_dh_clistrip:
 
 override_dh_auto_build:
-ifneq ("$(wildcard $(CURDIR)/MediaBrowser.Server.Mono/SQLitePCLRaw.provider.sqlite3.dll.config)","")
-	$(eval libdl_count := $(shell grep -c "libdl" $(CURDIR)/MediaBrowser.Server.Mono/SQLitePCLRaw.provider.sqlite3.dll.config))
-	@ if [[ "$(libdl_count)" -eq "0" ]]; then \
-		sed -i -e 's%\(</configuration>\)%<dllmap dll="dl" target="libdl.so.2" os="linux"/>\n\1%' $(CURDIR)/MediaBrowser.Server.Mono/SQLitePCLRaw.provider.sqlite3.dll.config; \
-	else  \
-		sed -i -e 's%<dllmap dll="dl" target="libdl.so" os="linux"/>%<dllmap dll="dl" target="libdl.so.2" os="linux"/>%' $(CURDIR)/MediaBrowser.Server.Mono/SQLitePCLRaw.provider.sqlite3.dll.config; \
-	fi
-endif
-	msbuild $(CURDIR)/MediaBrowser.sln /p:Configuration="Release Mono" /p:Platform="Any Cpu" /property:OutputPath='$(CURDIR)/usr/lib/emby-server/bin' /t:build
+	dotnet build --configuration $(CONFIG) --runtime $(RUNTIME) $(CURDIR)/MediaBrowser.sln
 
 override_dh_auto_clean:
-	msbuild $(CURDIR)/MediaBrowser.sln /p:Configuration="Release Mono" /p:Platform="Any Cpu" /t:clean
-
-# disable package does not produce library files
-override_dh_makeclilibs:
-
-override_dh_clideps:
-	dh_clideps --exclude-moduleref=i:ole32 --exclude-moduleref=i:msvcrt --exclude-moduleref=i:Mono.Posix.dll --exclude-moduleref=i:MonoPosixHelper --exclude-moduleref=i:CORE_RL_Wand_ --exclude-moduleref=i:MediaInfo --exclude-moduleref=i:CORE_RL_magick_ --exclude-moduleref=i:sqlite3 --exclude-moduleref=i:libSkiaSharp --exclude-moduleref=i:SkiaSharp --exclude-moduleref=i:libEGL.dll --exclude-moduleref=ntdll.dll
-
-override_dh_installinit:
-	# use "emby-server" as our service name, not "emby-server-beta"
-	dh_installinit --name=emby-server --no-start --noscripts
+	dotnet clean --configuration $(CONFIG) --runtime $(RUNTIME) $(CURDIR)/MediaBrowser.sln