commit | author | age
|
deb32d
|
1 |
|
2a9e94
|
2 |
# This file and its contents are supplied under the terms of the |
AP |
3 |
# Common Development and Distribution License ("CDDL"), version 1.0. |
|
4 |
# You may only use this file in accordance with the terms of version |
|
5 |
# 1.0 of the CDDL. |
|
6 |
# |
|
7 |
# A full copy of the text of the CDDL should have accompanied this |
|
8 |
# source. A copy of the CDDL is also available via the Internet at |
|
9 |
# http://www.illumos.org/license/CDDL. |
|
10 |
# |
|
11 |
|
|
12 |
# |
|
13 |
# Copyright 2015 Alexander Pyhalov |
fc9d08
|
14 |
# Copyright 2023 Niklas Poslovski |
2a9e94
|
15 |
# |
fc9d08
|
16 |
|
27eae2
|
17 |
USE_PARALLEL_BUILD= yes |
2a9e94
|
18 |
include ../../../make-rules/shared-macros.mk |
AP |
19 |
|
5d3370
|
20 |
COMPONENT_NAME= ffmpeg |
9f8d1f
|
21 |
COMPONENT_VERSION= 6.1.1 |
27eae2
|
22 |
COMPONENT_REVISION= 1 |
5d3370
|
23 |
COMPONENT_SUMMARY= A very fast video and audio converter |
AL |
24 |
COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION) |
fc9d08
|
25 |
COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.xz |
9f8d1f
|
26 |
COMPONENT_ARCHIVE_HASH= sha256:8684f4b00f94b85461884c3719382f1261f0d9eb3d59640a1f4ac0873616f968 |
deb32d
|
27 |
COMPONENT_ARCHIVE_URL= https://www.ffmpeg.org/releases/$(COMPONENT_ARCHIVE) |
5d3370
|
28 |
COMPONENT_PROJECT_URL= https://www.ffmpeg.org/ |
AL |
29 |
COMPONENT_FMRI= video/ffmpeg |
7dfc05
|
30 |
COMPONENT_CLASSIFICATION=System/Multimedia Libraries |
AW |
31 |
COMPONENT_LICENSE= LGPLv2.1+, GPLv2, MIT/X11/BSD-style |
2a9e94
|
32 |
|
b8f83f
|
33 |
include $(WS_MAKE_RULES)/encumbered.mk |
62c9a7
|
34 |
include $(WS_MAKE_RULES)/common.mk |
2a9e94
|
35 |
|
AP |
36 |
CFLAGS += -I/usr/X11/include |
|
37 |
CFLAGS += $(CPP_LARGEFILES) |
3bcb29
|
38 |
|
AP |
39 |
CPPFLAGS += $($(COMPILER)_C99_ENABLE) |
2a9e94
|
40 |
|
AP |
41 |
CONFIGURE_OPTIONS = --prefix=$(CONFIGURE_PREFIX) |
|
42 |
CONFIGURE_OPTIONS += --mandir=$(CONFIGURE_MANDIR) |
|
43 |
CONFIGURE_OPTIONS += --bindir=$(CONFIGURE_BINDIR.$(BITS)) |
|
44 |
CONFIGURE_OPTIONS += --libdir=$(CONFIGURE_LIBDIR.$(BITS)) |
|
45 |
CONFIGURE_OPTIONS += --cc=$(CC) |
|
46 |
CONFIGURE_OPTIONS += --enable-runtime-cpudetect |
|
47 |
CONFIGURE_OPTIONS += --enable-mmx --enable-sse --enable-ssse3 |
62c9a7
|
48 |
# force additional new CPU instruction enablement |
TM |
49 |
CONFIGURE_OPTIONS += --enable-avx |
2a9e94
|
50 |
CONFIGURE_OPTIONS += --disable-debug |
AP |
51 |
CONFIGURE_OPTIONS += --enable-nonfree |
|
52 |
CONFIGURE_OPTIONS += --enable-gpl |
|
53 |
CONFIGURE_OPTIONS += --enable-postproc |
|
54 |
CONFIGURE_OPTIONS += --enable-avfilter |
|
55 |
CONFIGURE_OPTIONS += --enable-swscale |
|
56 |
CONFIGURE_OPTIONS += --enable-libgsm |
|
57 |
CONFIGURE_OPTIONS += --enable-libxvid |
|
58 |
CONFIGURE_OPTIONS += --enable-libx264 |
aa32d9
|
59 |
CONFIGURE_OPTIONS += --enable-libx265 |
62c9a7
|
60 |
CONFIGURE_OPTIONS += --enable-libdav1d |
27eae2
|
61 |
CONFIGURE_OPTIONS += --enable-libwebp |
2a9e94
|
62 |
# Don't enable it, resulting binary is not |
AP |
63 |
# redistributable |
|
64 |
#CONFIGURE_OPTIONS += --enable-libfaac |
|
65 |
CONFIGURE_OPTIONS += --enable-libtheora |
|
66 |
CONFIGURE_OPTIONS += --enable-libmp3lame |
|
67 |
CONFIGURE_OPTIONS += --enable-libvorbis |
|
68 |
CONFIGURE_OPTIONS += --enable-libvpx |
62c9a7
|
69 |
# x11grab has been replaced by the x11xcb options |
TM |
70 |
#CONFIGURE_OPTIONS += --enable-x11grab |
|
71 |
CONFIGURE_OPTIONS += --enable-libxcb |
2a9e94
|
72 |
CONFIGURE_OPTIONS += --enable-libspeex |
AP |
73 |
CONFIGURE_OPTIONS += --enable-pthreads |
21fbb0
|
74 |
# Incompatible with GPLv2 |
2a9e94
|
75 |
#CONFIGURE_OPTIONS += --enable-libopencore-amrnb |
AP |
76 |
CONFIGURE_OPTIONS += --enable-libass |
|
77 |
CONFIGURE_OPTIONS += --enable-openssl |
|
78 |
CONFIGURE_OPTIONS += --enable-openal |
62c9a7
|
79 |
# don't enable avresample any more, it's long-deprecated. Use swresample |
TM |
80 |
# instead |
|
81 |
#CONFIGURE_OPTIONS += --enable-avresample |
|
82 |
CONFIGURE_OPTIONS += --enable-swresample |
21fbb0
|
83 |
# Incompatible with GPLv2 |
2a9e94
|
84 |
#CONFIGURE_OPTIONS += --enable-libopencore-amrwb |
62c9a7
|
85 |
# libschroedinger support was removed in 3.4.x |
TM |
86 |
#CONFIGURE_OPTIONS += --enable-libschroedinger |
2a9e94
|
87 |
CONFIGURE_OPTIONS += --enable-libopenjpeg |
AP |
88 |
CONFIGURE_OPTIONS += --enable-librtmp |
|
89 |
CONFIGURE_OPTIONS += --enable-vdpau |
|
90 |
CONFIGURE_OPTIONS += --enable-shared |
|
91 |
CONFIGURE_OPTIONS += --disable-static |
62c9a7
|
92 |
# these tests cause problems, skip them |
TM |
93 |
CONFIGURE_OPTIONS += --ignore-tests=source |
2a9e94
|
94 |
|
3bcb29
|
95 |
CONFIGURE_ENV += CPPFLAGS="$(CPPFLAGS)" |
2a9e94
|
96 |
|
5d3370
|
97 |
COMPONENT_TEST_ENV += PATH=$(PROTO_DIR)/$(CONFIGURE_BINDIR.$(BITS)):$(PATH) |
AL |
98 |
COMPONENT_TEST_ENV += LD_LIBRARY_PATH=$(PROTO_DIR)/$(CONFIGURE_LIBDIR.$(BITS)) |
6a60ae
|
99 |
|
62c9a7
|
100 |
COMPONENT_TEST_TRANSFORMS+= '-n -e "/TEST/p" -e "/^IGNORE/p" ' |
TM |
101 |
|
|
102 |
# You must run the 'install' target before running the test |
|
103 |
# suite, as we use binaries and libraries from $(PROTO_DIR) for tests |
|
104 |
# to reduce issues with all the test binaries not being able to find |
|
105 |
# ffmpeg's libraries. |
fc9d08
|
106 |
test: install $(TEST_64) |
735415
|
107 |
|
aa32d9
|
108 |
# Auto-generated dependencies |
6a60ae
|
109 |
REQUIRED_PACKAGES += audio/lame |
62c9a7
|
110 |
REQUIRED_PACKAGES += codec/dav1d |
6a60ae
|
111 |
REQUIRED_PACKAGES += codec/libtheora |
AL |
112 |
REQUIRED_PACKAGES += codec/speex |
|
113 |
REQUIRED_PACKAGES += compress/bzip2 |
|
114 |
REQUIRED_PACKAGES += compress/xz |
|
115 |
REQUIRED_PACKAGES += image/library/openjpeg |
|
116 |
REQUIRED_PACKAGES += library/audio/libgsm |
|
117 |
REQUIRED_PACKAGES += library/audio/openal |
|
118 |
REQUIRED_PACKAGES += library/graphics/libvdpau |
|
119 |
REQUIRED_PACKAGES += library/libvorbis |
27eae2
|
120 |
REQUIRED_PACKAGES += library/libwebp |
aa32d9
|
121 |
REQUIRED_PACKAGES += library/sdl2 |
031d3b
|
122 |
REQUIRED_PACKAGES += library/security/openssl-31 |
6a60ae
|
123 |
REQUIRED_PACKAGES += library/video/libass |
AL |
124 |
REQUIRED_PACKAGES += library/video/libvpx |
|
125 |
REQUIRED_PACKAGES += library/video/x264 |
aa32d9
|
126 |
REQUIRED_PACKAGES += library/video/x265 |
6a60ae
|
127 |
REQUIRED_PACKAGES += library/video/xvid |
AL |
128 |
REQUIRED_PACKAGES += library/zlib |
|
129 |
REQUIRED_PACKAGES += system/library |
|
130 |
REQUIRED_PACKAGES += system/library/math |
|
131 |
REQUIRED_PACKAGES += video/rtmpdump |
|
132 |
REQUIRED_PACKAGES += x11/library/libx11 |
|
133 |
REQUIRED_PACKAGES += x11/library/libxcb |
|
134 |
REQUIRED_PACKAGES += x11/library/libxext |
|
135 |
REQUIRED_PACKAGES += x11/library/libxv |