summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 0e380f4a7d17bb93da2132506f01047995b8b11e (plain)
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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
# Maintainer: Darjan Krijan [https://disc-kuraudo.eu]

_target_alias="ppu"
_pkgname="ffmpeg"
pkgname="ps3-${_pkgname}-libs"
pkgver="7.0.1"
pkgrel=1
pkgdesc="Complete solution to record, convert and stream audio and video"
arch=(x86_64 aarch64 powerpc64le powerpc64 powerpc riscv64)
url="https://www.ffmpeg.org"
license=(GPL3)
depends=(ps3-env ps3-ppu-gcc)
options=(!emptydirs !strip staticlibs)
source=(
	"https://www.ffmpeg.org/releases/${_pkgname}-${pkgver}.tar.xz"
)
sha256sums=(
	'bce9eeb0f17ef8982390b1f37711a61b4290dc8c2a0c1a37b5857e85bfb0e4ff'
)

source /opt/ps3dev/ps3toolchain.sh

prepare() {
	cd "${srcdir}/${_pkgname}-${pkgver}"
}

build() {
	cd "${srcdir}/${_pkgname}-${pkgver}"

	export AR="${_target_alias}-ar" CC="${_target_alias}-gcc" RANLIB="${_target_alias}-ranlib"	
	local _cflags=(
		-O3
		-flto=auto
		-ffat-lto-objects
		-mminimal-toc
		-I${PSL1GHT}/ppu/include
		-L${PSL1GHT}/ppu/lib
		-I${PS3DEV}/ppu/include
		#-include ${TOPDIR}/support/nostrictansi.h
		-Dstatic_assert=_Static_assert
	)
	export CFLAGS="${_cflags[@]}"

	local _configure_flags=(
		# env
		--prefix="${PS3DEV}/portlibs/${_target_alias}"
		--cc="${CC}"

		# arch
		--enable-cross-compile
		--cross-prefix=${PS3DEV}/ppu/bin/ppu-
		--arch=powerpc64
		--cpu=cell
		--target-os=none
		#--malloc-prefix=my
		--disable-shared
		--enable-static
		--disable-network
		--disable-doc

		# common
    	#--disable-parsers
		#--disable-decoders
		#--disable-demuxers
		--enable-decoder=png
		--enable-decoder=mjpeg
		--enable-encoder=mjpeg
		--enable-encoder=png
		--enable-muxer=spdif
		--enable-encoder=ac3
		--enable-encoder=eac3
		--enable-muxer=matroska
		--enable-encoder=ffvhuff
		--enable-encoder=pcm_s16le
		--disable-encoders
		--disable-filters
		--disable-muxers
		--disable-devices
		--disable-demuxer=rtp
		--disable-protocol=rtp
		--disable-bzlib
		--disable-decoder=twinvq
		--disable-decoder=snow
		--disable-decoder=cavs
		--disable-programs
		--disable-avfilter
	)
	./configure "${_configure_flags[@]}"

	make V=1
}

package() {
	cd "${srcdir}/${_pkgname}-${pkgver}"

	make DESTDIR="${pkgdir}" install
}