Files
UltraGrid/package_specs/ultragrid/debian.rules
2020-06-30 11:37:25 +02:00

153 lines
6.4 KiB
Makefile

#!/usr/bin/make -f
SHELL=/bin/bash
PACKAGE=ultragrid
DEB_UPSTREAM_URL = https://github.com/CESNET/UltraGrid
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
CARDCONF_BLUEFISH=--disable-bluefish444 --disable-blue-audio
CARDCONF_DVS=--disable-dvs
CARDCONF_DECKLINK=--disable-decklink
CARDCONF_DELTACAST=--disable-deltacast
CARDCONF_AJA=--disable-aja
CARDCONF_XIMEA=
CUDA=--disable-cuda
VAAPI=--disable-lavc-hw-accel-vaapi
VDPAU=--disable-lavc-hw-accel-vdpau
CINEFORM=--disable-cineform
NDI=--disable-ndi
XIMEA=--disable-ximea
#####################################################
# > bluefish
#####################################################
CARDCONF_BLUEFISH=--enable-bluefish444 --enable-blue-audio --with-bluefish444=/usr/src/ultragrid-externals/bluefish_sdk
#####################################################
# < bluefish
#####################################################
#####################################################
# > dvs
#####################################################
#CARDCONF_DVS=--enable-dvs --with-dvs=/usr/src/ultragrid-externals/dvs_sdk4
#####################################################
# < dvs
#####################################################
#####################################################
# > blackmagick
#####################################################
CARDCONF_DECKLINK= --enable-decklink
#####################################################
# < blackmagick
#####################################################
#####################################################
# > deltacast
#####################################################
CARDCONF_DELTACAST= --enable-deltacast --with-deltacast=/usr/src/ultragrid-externals/deltacast_sdk
#####################################################
# < deltacast
#####################################################
#####################################################
# > aja
#####################################################
CARDCONF_AJA= --enable-aja --with-aja=/usr/src/ultragrid-externals/aja_sdk
#####################################################
# < aja
#####################################################
#####################################################
# > cuda
#####################################################
CUDA=--with-cuda=/usr/local/cuda-8.0 --enable-jpeg
#####################################################
# < cuda
#####################################################
#####################################################
# > vaapi
#####################################################
VAAPI=--enable-lavc-hw-accel-vaapi
#####################################################
# < vaapi
#####################################################
#####################################################
# > vdpau
#####################################################
VDPAU=--enable-lavc-hw-accel-vdpau
#####################################################
# < vdpau
#####################################################
#####################################################
# > cineform
#####################################################
CINEFORM=--enable-cineform
#####################################################
# < cineform
#####################################################
#####################################################
# > ximea
#####################################################
XIMEA=--enable-ximea
CARDCONF_XIMEA='GENICAM_GENTL64_PATH=/usr/src/ultragrid-externals/ximea_sdk/lib'
#####################################################
# < ximea
#####################################################
#####################################################
# > ndi
#####################################################
#NDI=--enable-ndi
#####################################################
# < ndi
#####################################################
CARDCONF=$(CARDCONF_BLUEFISH) $(CARDCONF_DVS) $(CARDCONF_DECKLINK) $(CARDCONF_DELTACAST) $(CARDCONF_AJA) $(CARDCONF_XIMEA)
LIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH)
UGLIBDIR=$(LIBDIR)/ultragrid
%:
dh $@ -- --fail-missing
override_dh_auto_configure:
./autogen.sh || true
echo "$(CINEFORM)" ; test "$(CINEFORM)" = "--enable-cineform" && pushd cineform-sdk && cmake -DCMAKE_INSTALL_PREFIX=/usr . && make && popd
dh_auto_configure -- --disable-profile --libdir=$(LIBDIR) --disable-debug --enable-ipv6 --enable-plugins \
--enable-sdl2 --enable-gl --enable-gl-display --enable-rtdxt \
--enable-portaudio --disable-jack-transport --enable-jack \
--enable-alsa --enable-scale --enable-qt --disable-quicktime \
--disable-coreaudio --disable-sage --enable-screen\
--enable-v4l2 --enable-gpl-build --enable-libavcodec --enable-scale --enable-uyvy \
--disable-rtsp \
--enable-video-mixer --enable-swmix --enable-ihdtv \
$(CINEFORM) \
$(NDI) \
$(XIMEA) \
$(VDPAU) \
$(VAAPI) \
$(CUDA) \
$(CARDCONF)
override_dh_auto_build:
dh_auto_build
override_dh_auto_install:
mkdir -p debian/$(PACKAGE)/usr/share/doc/ultragrid
mkdir -p debian/$(PACKAGE)/$(UGLIBDIR)
echo $(DEB_VERSION_UPSTREAM)-$(DEB_VERSION_UPSTREAM_REVISION) > debian/$(PACKAGE)/usr/share/doc/ultragrid/ultragrid.version
cp speex-*/COPYING debian/$(PACKAGE)/usr/share/doc/ultragrid/COPYING-speex
cp dxt_compress/LICENSE debian/$(PACKAGE)/usr/share/doc/ultragrid/LICENSE-dxt_compress
cp dxt_compress/LICENSE-rtdxt debian/$(PACKAGE)/usr/share/doc/ultragrid/
test "$(CINEFORM)" = "--enable-cineform" && cp cineform-sdk/LICENSE.txt debian/$(PACKAGE)/usr/share/doc/ultragrid/LICENSE-cineform.txt
dh_auto_install
# cp ${DELTACAST_DIRECTORY}/License.txt usr/share/doc/ultragrid/LICENSE-Deltacast
# mkdir -p debian/tmp/$(UGLIBDIR)
# sh -c "$$(ldd bin/uv $$(find . -name '*.so*') 2>/dev/null | grep cuda | grep -E '^[[:space:]]+' | sed -r 's#[[:space:]]+([^[:space:]]+)[[:space:]]+=>[[:space:]]+([^[:space:]].*)[[:space:]]+[(][^)]+[)]#cp "$$(realpath "\2")" debian/tmp$(UGLIBDIR)/\1#g' | uniq | tr $$'\n' ';')"
override_dh_shlibdeps:
env LD_LIBRARY_PATH=$${LD_LIBRARY_PATH}:$$((find /usr/local -maxdepth 1 -type d -iname "*cuda*" ; echo /usr) | sort -r -n)/lib64:$$((find /usr/local -maxdepth 1 -type d -iname "*cuda*" ; echo /usr) | sort -r -n)/lib dh_shlibdeps -- --ignore-missing-info
for file in $$(grep ultragrid-proprietary-drivers debian -Hri | cut -d: -f1 | sort | uniq) ; do \
sed --in-place -r 's#, ultragrid-proprietary-drivers[^ ,]*##g' $$file ; \
sed --in-place -r 's#ultragrid-proprietary-drivers[^ ,]*, ##g' $$file ; \
sed --in-place -r 's#ultragrid-proprietary-drivers[^ ,]*##g' $$file ; \
done
override_dh_auto_test:
env UG_SKIP_NET_TESTS=1 dh_auto_test