summaryrefslogtreecommitdiff
path: root/net-im/tg_owt/Makefile
blob: 2d1bdcd0b281427fcd492e558515b885e2ae4c5e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
PORTNAME=	tg_owt
PORTVERSION=	0.0.20231221
PORTREVISION=	6
CATEGORIES=	net-im

PATCH_SITES=	https://github.com/desktop-app/tg_owt/commit/
PATCHFILES=	a264c3311dec000dbe2ad8e3c819364f409d7897.patch:-p1 \
		62672f3756ecf218252098211d78c13369ab6d28.patch:-p1

MAINTAINER=	ports@FreeBSD.org
COMMENT=	Webrtc library used by telegram-desktop
WWW=		https://github.com/desktop-app/tg_owt

LICENSE=	BSD3CLAUSE
LICENSE_FILE=	${WRKSRC}/LICENSE

BUILD_DEPENDS=	v4l_compat>0:multimedia/v4l_compat \
		yasm:devel/yasm
LIB_DEPENDS=	libabsl_base.so:devel/abseil \
		libavformat.so:multimedia/ffmpeg \
		libcrc32c.so:devel/crc32c \
		libjpeg.so:graphics/jpeg-turbo \
		libopenh264.so:multimedia/openh264 \
		libopus.so:audio/opus \
		libpipewire-0.3.so:multimedia/pipewire \
		libprotobuf.so:devel/protobuf \
		libsrtp2.so:net/libsrtp2 \
		libvpx.so:multimedia/libvpx

USES=		cmake gl pkgconfig xorg
USE_XORG=	x11 xcomposite xdamage xrender xrandr xtst
USE_GL=		gbm gl
USE_GITHUB=	yes
GH_ACCOUNT=	desktop-app
GH_TAGNAME=	afd9d5d

CMAME_ON=	TG_OWT_PACKAGED_BUILD

# libyuv cloned from https://chromium.googlesource.com/libyuv/libyuv
# when updating port check if hash tag in the submodule was updated
GH_TUPLE=	osokin:libyuv:04821d1:libyuv/src/third_party/libyuv

post-extract:
	${RM} -rf \
		${WRKSRC}/src/sdk/android \
		${WRKSRC}/src/sdk/objc \
		${WRKSRC}/src/third_party/abseil-cpp \
		${WRKSRC}/src/third_party/crc32c \
		${WRKSRC}/src/third_party/libsrtp \
		${WRKSRC}/src/third_party/libsrtp_config \
		${WRKSRC}/src/third_party/libvpx \
		${WRKSRC}/src/third_party/openh264 \
		${WRKSRC}/src/third_party/yasm

# remove more sources not needed to build telegram-desktop, they are however
# required at tg_owt configure-time even though they are not built, see
# nice_target_sources()/remove_target_sources() calls in CMakeLists.txt
post-configure:
	${RM} -rf \
		${WRKSRC}/src/modules/audio_device/android \
		${WRKSRC}/src/modules/audio_device/mac \
		${WRKSRC}/src/modules/audio_device/win \
		${WRKSRC}/src/modules/desktop_capture/mac \
		${WRKSRC}/src/modules/desktop_capture/wayland \
		${WRKSRC}/src/modules/desktop_capture/win \
		${WRKSRC}/src/modules/video_capture/windows \
		${WRKSRC}/src/rtc_base/win \
		${WRKSRC}/src/rtc_base/win32*.h

.include <bsd.port.mk>