mirror of
https://github.com/Fishwaldo/build.git
synced 2025-03-16 03:41:26 +00:00
Rework some package dependencies
This commit is contained in:
parent
476b6c1d30
commit
928c696b25
16 changed files with 33 additions and 88 deletions
|
@ -22,7 +22,7 @@ create_chroot()
|
|||
{
|
||||
local target_dir="$1"
|
||||
debootstrap --variant=buildd --arch=$ARCH --foreign \
|
||||
--include=ccache,locales,git,ca-certificates,devscripts,libfile-fcntllock-perl,debhelper,rsync \
|
||||
--include=ccache,locales,git,ca-certificates,devscripts,libfile-fcntllock-perl,debhelper,rsync,python3 \
|
||||
$RELEASE $target_dir "http://localhost:3142/$APT_MIRROR"
|
||||
[[ $? -ne 0 || ! -f $target_dir/debootstrap/debootstrap ]] && exit_with_error "Create chroot first stage failed"
|
||||
cp /usr/bin/$QEMU_BINARY $target_dir/usr/bin/
|
||||
|
@ -50,12 +50,10 @@ update_chroot()
|
|||
local t=$target_dir/root/.update-timestamp
|
||||
# apply changes to previously created chroots
|
||||
mkdir -p $target_dir/root/{build,overlay,sources} $target_dir/selinux
|
||||
# apt-get update && apt-get dist-upgrade
|
||||
if [[ -f $t && $(( ($(date +%s) - $(<$t)) / 86400 )) -gt 2 ]]; then
|
||||
if [[ ! -f $t || $(( ($(date +%s) - $(<$t)) / 86400 )) -gt 2 ]]; then
|
||||
systemd-nspawn -a -q -D $target_dir /bin/bash -c "apt-get -q update; apt-get -q -y upgrade"
|
||||
date +%s > $t
|
||||
fi
|
||||
# helper script
|
||||
cat <<-'EOF' > $target_dir/root/install-deps.sh
|
||||
#!/bin/bash
|
||||
deps=()
|
||||
|
@ -70,7 +68,9 @@ update_chroot()
|
|||
#
|
||||
chroot_build_packages()
|
||||
{
|
||||
display_alert "Starting package building process" "$RELEASE" "info"
|
||||
[[ $RELEASE != jessie && $RELEASE != xenial ]] && return
|
||||
|
||||
display_alert "Starting package building process" "$RELEASE"
|
||||
|
||||
local target_dir=$DEST/buildpkg/${RELEASE}-${ARCH}
|
||||
# to avoid conflicts between published and self-built packages
|
||||
|
@ -92,7 +92,7 @@ chroot_build_packages()
|
|||
source $plugin
|
||||
|
||||
# check build arch
|
||||
[[ $package_arch != $ARCH || $package_arch != all ]] && continue
|
||||
[[ $package_arch != $ARCH && $package_arch != all ]] && continue
|
||||
|
||||
# check if needs building
|
||||
local needs_building=no
|
||||
|
@ -118,7 +118,6 @@ chroot_build_packages()
|
|||
export PATH="/usr/lib/ccache:$PATH"
|
||||
export HOME="/root"
|
||||
export DEBIAN_FRONTEND="noninteractive"
|
||||
# for display_alert logging
|
||||
export DEST="/tmp"
|
||||
mkdir -p /tmp/debug
|
||||
export DEB_BUILD_OPTIONS="ccache nocheck"
|
||||
|
@ -126,7 +125,6 @@ chroot_build_packages()
|
|||
export DEBFULLNAME="$MAINTAINER"
|
||||
export DEBEMAIL="$MAINTAINERMAIL"
|
||||
$(declare -f display_alert)
|
||||
# check and install build dependencies
|
||||
display_alert "Installing build dependencies"
|
||||
[[ -n "$package_builddeps" ]] && /root/install-deps.sh $package_builddeps
|
||||
cd /root/build
|
||||
|
@ -172,13 +170,7 @@ chroot_build_packages()
|
|||
systemd-nspawn -a -q -D $target_dir --tmpfs=/root/build --tmpfs=/tmp --bind-ro $SRC/lib/extras-buildpkgs/:/root/overlay \
|
||||
--bind-ro $SRC/sources/extra/:/root/sources /bin/bash -c "/root/build.sh"
|
||||
# move built packages to $DEST/debs/extras/$RELEASE
|
||||
if [[ -n $package_install_target ]]; then
|
||||
for f in $package_install_target; do
|
||||
mv $target_dir/root/${f}_*.deb $DEST/debs/extra/$RELEASE/
|
||||
done
|
||||
fi
|
||||
# cleanup
|
||||
rm $target_dir/root/*.deb 2>/dev/null
|
||||
mv $target_dir/root/*.deb $DEST/debs/extra/$RELEASE/
|
||||
done
|
||||
} #############################################################################
|
||||
|
||||
|
@ -205,7 +197,7 @@ fetch_from_repo()
|
|||
local ref_type=${ref%%:*}
|
||||
local ref_name=${ref##*:}
|
||||
|
||||
display_alert "Checking git sources" "$ref_subdir $ref_name"
|
||||
display_alert "Checking git sources" "$dir $ref_name"
|
||||
|
||||
# get default remote branch name without cloning
|
||||
# doesn't work with git:// remote URLs
|
||||
|
@ -224,7 +216,6 @@ fetch_from_repo()
|
|||
display_alert "... creating local copy"
|
||||
git init -q .
|
||||
git remote add origin $url
|
||||
#git clone -n --depth 1 $url .
|
||||
fi
|
||||
|
||||
local local_hash=$(git rev-parse @ 2>/dev/null)
|
||||
|
@ -324,5 +315,4 @@ chroot_installpackages()
|
|||
chmod +x $CACHEDIR/sdcard/tmp/install.sh
|
||||
chroot $CACHEDIR/sdcard /bin/bash -c "/tmp/install.sh"
|
||||
kill $aptly_pid
|
||||
|
||||
} #############################################################################
|
||||
|
|
|
@ -3,7 +3,7 @@ local package_name="libDRI2"
|
|||
local package_repo="https://github.com/robclark/libdri2.git"
|
||||
local package_ref="branch:master"
|
||||
local package_upstream_version="1.0.1"
|
||||
local package_builddeps="xutils-dev x11proto-xext-dev x11proto-dri2-dev quilt pkg-config libxfixes-dev libxext-dev libdrm-dev dh-autoreconf"
|
||||
local package_builddeps="xutils-dev x11proto-xext-dev x11proto-dri2-dev pkg-config libxfixes-dev libxext-dev libdrm-dev dh-autoreconf"
|
||||
local package_install_chroot="libdri2-1 libdri2-dev"
|
||||
local package_install_target="libdri2-1"
|
||||
local package_arch="armhf"
|
||||
|
|
|
@ -1,9 +1,10 @@
|
|||
# FFmpeg
|
||||
# may depend on sunxi-mali
|
||||
local package_name="FFmpeg"
|
||||
local package_repo="https://github.com/FFmpeg/FFmpeg.git"
|
||||
local package_ref="tag:n3.1.1"
|
||||
local package_upstream_version="7:3.1.1"
|
||||
local package_builddeps="dpkg-dev flite1-dev frei0r-plugins-dev ladspa-sdk libass-dev libavc1394-dev libbluray-dev libbs2b-dev libbz2-dev libcaca-dev libcdio-paranoia-dev libdc1394-22-dev libfontconfig1-dev libfreetype6-dev libfribidi-dev libgl1-mesa-dev libgme-dev libgnutls28-dev libgsm1-dev libiec61883-dev libjack-jackd2-dev liblzma-dev libmodplug-dev libmp3lame-dev libopenal-dev libopencv-dev libopenjpeg-dev libopus-dev libpulse-dev librtmp-dev libschroedinger-dev libsctp-dev libsdl1.2-dev libshine-dev libsnappy-dev libsoxr-dev libspeex-dev libssh-gcrypt-dev libtheora-dev libtwolame-dev libva-dev libvdpau-dev libvorbis-dev libvpx-dev libwavpack-dev libwebp-dev libx264-dev libx265-dev libxext-dev libxvidcore-dev libxvmc-dev libzmq3-dev libzvbi-dev pkg-config yasm"
|
||||
local package_builddeps="dpkg-dev flite1-dev frei0r-plugins-dev ladspa-sdk libass-dev libavc1394-dev libbluray-dev libbs2b-dev libbz2-dev libcaca-dev libcdio-paranoia-dev libdc1394-22-dev libfontconfig1-dev libfreetype6-dev libfribidi-dev libgme-dev libgnutls28-dev libgsm1-dev libiec61883-dev liblzma-dev libmodplug-dev libmp3lame-dev libopenal-dev libopencv-dev libopenjpeg-dev libopus-dev libpulse-dev librtmp-dev libschroedinger-dev libsctp-dev libsdl1.2-dev libshine-dev libsnappy-dev libsoxr-dev libspeex-dev libssh-gcrypt-dev libtheora-dev libtwolame-dev libva-dev libvdpau-dev libvorbis-dev libvpx-dev libwavpack-dev libwebp-dev libx264-dev libx265-dev libxext-dev libxvidcore-dev libxvmc-dev libzmq3-dev libzvbi-dev pkg-config yasm"
|
||||
local package_install_chroot="libavutil-ffmpeg54 libavutil-dev libpostproc-ffmpeg53 libswresample-ffmpeg1 libswscale-ffmpeg3 libswscale-dev libavresample-ffmpeg2 libavresample-dev libavcodec-ffmpeg56 libswresample-dev libavcodec-dev libpostproc-dev libavformat-ffmpeg56 libavformat-dev libavfilter-ffmpeg5 libavfilter-dev libavdevice-ffmpeg56 libavdevice-dev"
|
||||
local package_install_target="libavutil-ffmpeg54 libpostproc-ffmpeg53 libswresample-ffmpeg1 libswscale-ffmpeg3 libavresample-ffmpeg2 libavcodec-ffmpeg56 libavformat-ffmpeg56 libavfilter-ffmpeg5 libavdevice-ffmpeg56 ffmpeg"
|
||||
local package_arch="armhf"
|
||||
|
|
|
@ -4,7 +4,7 @@ local package_name="guvcview"
|
|||
local package_repo="https://github.com/avafinger/guvcview.git"
|
||||
local package_ref="branch:master"
|
||||
local package_upstream_version="2.0.2.1"
|
||||
local package_builddeps="intltool dh-autoreconf autotools-dev libsdl1.2-dev libgtk-3-dev portaudio19-dev libpng12-dev libavcodec-dev libavutil-dev libudev-dev libusb-1.0-0-dev libpulse-dev libgsl0-dev libv4l-dev libv4l2rds0 libsdl2-dev"
|
||||
local package_builddeps="intltool dh-autoreconf autotools-dev libsdl1.2-dev libgtk-3-dev portaudio19-dev libpng12-dev libudev-dev libusb-1.0-0-dev libpulse-dev libgsl0-dev libv4l-dev libv4l2rds0 libsdl2-dev"
|
||||
local package_install_target="libguvcview-1.1-1 guvcview"
|
||||
local package_arch="armhf"
|
||||
|
||||
|
|
|
@ -1,11 +1,12 @@
|
|||
# mpv
|
||||
# depends on FFmpeg
|
||||
# may depend on custom libvdpau
|
||||
# depends on libvdpau
|
||||
# may depend on sunxi-mali
|
||||
local package_name="mpv"
|
||||
local package_repo="https://github.com/mpv-player/mpv.git"
|
||||
local package_ref="tag:v0.18.0"
|
||||
local package_upstream_version="0.18.0"
|
||||
local package_builddeps="libasound2-dev libbluray-dev libcdio-paranoia-dev libdvdnav-dev libdvdread-dev libegl1-mesa-dev libenca-dev libgl1-mesa-dev libguess-dev libjack-dev libjpeg-dev liblcms2-dev liblua5.2-dev libpulse-dev librubberband-dev libsdl2-dev libsndio-dev libva-dev libvdpau-dev libwayland-dev libx11-dev libxinerama-dev libxkbcommon-dev libxrandr-dev libxss-dev libxv-dev pkg-config python python-docutils"
|
||||
local package_ref="tag:v0.18.1"
|
||||
local package_upstream_version="0.18.1"
|
||||
local package_builddeps="libasound2-dev libbluray-dev libcdio-paranoia-dev libdvdnav-dev libdvdread-dev libenca-dev libguess-dev libjpeg-dev liblcms2-dev liblua5.2-dev libpulse-dev librubberband-dev libsdl2-dev libsndio-dev libva-dev libx11-dev libxinerama-dev libxkbcommon-dev libxrandr-dev libxss-dev pkg-config python python-docutils"
|
||||
local package_install_target="libmpv1 mpv"
|
||||
local package_arch="armhf"
|
||||
|
||||
|
|
|
@ -35,8 +35,6 @@ Build-Depends:
|
|||
libcaca-dev,
|
||||
# --enable-libcdio
|
||||
libcdio-paranoia-dev,
|
||||
# autodetected 'crystalhd'
|
||||
libcrystalhd-dev [amd64 i386],
|
||||
# --enable-libdc1394
|
||||
libdc1394-22-dev [linux-any],
|
||||
# --enable-libfontconfig
|
||||
|
@ -45,8 +43,6 @@ Build-Depends:
|
|||
libfreetype6-dev,
|
||||
# --enable-fribidi
|
||||
libfribidi-dev,
|
||||
# --enable-opengl
|
||||
libgl1-mesa-dev,
|
||||
# --enable-libgme
|
||||
libgme-dev,
|
||||
# --enable-gnutls
|
||||
|
@ -57,8 +53,6 @@ Build-Depends:
|
|||
# --enable-libiec61883
|
||||
libiec61883-dev [linux-any],
|
||||
libavc1394-dev [linux-any],
|
||||
# autodetected: indev 'jack'
|
||||
libjack-jackd2-dev,
|
||||
# autodetected for the tiff decoder
|
||||
liblzma-dev,
|
||||
# --enable-libmodplug
|
||||
|
@ -67,19 +61,12 @@ Build-Depends:
|
|||
libmp3lame-dev,
|
||||
# --enable-openal
|
||||
libopenal-dev,
|
||||
# --enable-libopencore_amrnb
|
||||
libopencore-amrnb-dev,
|
||||
# --enable-libopencore_amrwb
|
||||
libopencore-amrwb-dev,
|
||||
# --enable-libopencv
|
||||
libopencv-dev [!sh4 !sparc64] <!stage1>,
|
||||
# --enable-libopenjpeg
|
||||
libopenjpeg-dev,
|
||||
# --enable-libopus
|
||||
libopus-dev,
|
||||
# Disabled, as it might produce problems.
|
||||
# # --enable-libquvi
|
||||
# libquvi-dev,
|
||||
# --enable-libpulse
|
||||
libpulse-dev,
|
||||
# --enable-librtmp
|
||||
|
@ -104,17 +91,10 @@ Build-Depends:
|
|||
libtheora-dev,
|
||||
# --enable-libtwolame
|
||||
libtwolame-dev,
|
||||
# This is not necessary, see explanation in debian/rules.
|
||||
# # --enable-libv4l2
|
||||
# libv4l-dev [!hurd-any],
|
||||
# autodetected: hwaccels 'h263_vaapi, mpeg2_vaapi, vc1_vaapi, h264_vaapi, mpeg4_vaapi, wmv3_vaapi'
|
||||
libva-dev [!hurd-any],
|
||||
# autodetected: hwaccels 'h263_vdpau, mpeg2_vdpau, vc1_vdpau, h264_vdpau, mpeg4_vdpau, wmv3_vdpau, mpeg1_vdpau', decoders 'h264_vdpau, mpeg1_vdpau, mpeg4_vdpau, mpeg_vdpau, vc1_vdpau, wmv3_vdpau'
|
||||
libvdpau-dev,
|
||||
# --enable-libvo_aacenc
|
||||
libvo-aacenc-dev,
|
||||
# --enable-libvo_amrwbenc
|
||||
libvo-amrwbenc-dev,
|
||||
# --enable-libvorbis
|
||||
libvorbis-dev,
|
||||
# --enable-libvpx
|
||||
|
@ -137,9 +117,6 @@ Build-Depends:
|
|||
libzmq3-dev [!hurd-any],
|
||||
# --enable-libzvbi
|
||||
libzvbi-dev,
|
||||
# The opencl API is considered experimental.
|
||||
# # --enable-opencl
|
||||
# ocl-icd-opencl-dev [!hurd-any] | opencl-dev [!hurd-any],
|
||||
# used to detect libraries
|
||||
pkg-config,
|
||||
# assembler optimizations
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
# This enables verbose mode.
|
||||
#export DH_VERBOSE=1
|
||||
export V=1
|
||||
#export V=1
|
||||
|
||||
# Determine the debian directory, which is the directory of this makefile.
|
||||
# The path of this makefile is the first word in the MAKEFILE_LIST.
|
||||
|
@ -22,34 +22,6 @@ DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH)
|
|||
# Ubuntu ld adds -Bsymbolic-functions by default, but that prevents FFmpeg from building.
|
||||
export DEB_LDFLAGS_MAINT_STRIP=-Wl,-Bsymbolic-functions
|
||||
|
||||
# Enable as many features as possible, as long as the result is still GPLv2+ (a GPLv3+ variant is built as libavcodec-extra flavor).
|
||||
# The following flags (and build-dependencies) are not added, because they would require a libavformat-extra flavor:
|
||||
# --enable-libsmbclient (libsmbclient-dev [!hurd-i386 !m68k !sparc64])
|
||||
# The following flags are not added, because the necessary libraries are not in Debian:
|
||||
# --enable-decklink
|
||||
# --enable-libcelt (see #676592: removed from Debian as abandoned upstream, replaced by opus)
|
||||
# --enable-libdcadec
|
||||
# --enable-libilbc (see #675959 for the RFP bug)
|
||||
# --enable-libkvazaar
|
||||
# --enable-libmfx
|
||||
# --enable-libnut
|
||||
# --enable-libopenh264
|
||||
# --enable-libstagefright-h264
|
||||
# --enable-libutvideo
|
||||
# --enable-libvidstab (see #709193 for the RFP bug)
|
||||
# --enable-libxavs
|
||||
# The following flags are not added for various reasons:
|
||||
# * --enable-libquvi: The wrapper wasn't updated for recent versions (due to license concerns) and thus might produce problems, e.g. for mpv.
|
||||
# * --enable-libv4l2 [!hurd-any]: This is only needed for very old devices and may cause problems for others.
|
||||
# Should anyone need it, using LD_PRELOAD pointing on libv4l2 has the same effect.
|
||||
# * --enable-opencl [!hurd-any]: This is considered an experimental API.
|
||||
# For the shared libraries there are several ways to build:
|
||||
# * Without further option: This will have no compatibility with Libav, but some sonames clash. Therefore no good choice.
|
||||
# * With --enable-incompatible-libav-abi, packages build against Libav would work with these libraries, but probably not the other way around.
|
||||
# This could be used together with Breaks:, Replaces: against the corresponding Libav libraries.
|
||||
# * With --enable-raise-major, the resulting binaries should be co-installable with the Libav ones and thus no conflicts would be necessary.
|
||||
# But this could break versioned configure checks.
|
||||
# * With --build-suffix="-ffmpeg" the library names are changed, so there can't be a conflict with Libav.
|
||||
CONFIG := --prefix=/usr \
|
||||
--extra-version="$(DEB_REVISION)" \
|
||||
--build-suffix="-ffmpeg" \
|
||||
|
@ -100,8 +72,8 @@ CONFIG := --prefix=/usr \
|
|||
--enable-libxvid \
|
||||
--enable-libzvbi \
|
||||
--enable-openal \
|
||||
--enable-opengl \
|
||||
--enable-x11grab \
|
||||
--disable-opengl \
|
||||
--disable-htmlpages \
|
||||
--disable-podpages \
|
||||
--disable-txtpages
|
||||
|
|
|
@ -43,8 +43,8 @@ KERNEL=="mali", MODE="0660", GROUP="video"
|
|||
|
||||
* ffmpeg: disable building documentation - **done**
|
||||
|
||||
* ffmpeg: disable unused features
|
||||
* ffmpeg: disable unused features - **done**
|
||||
|
||||
* mpv: disable unused features
|
||||
* mpv: disable unused features **done**
|
||||
|
||||
* libvdpau-sunxi: select branch (master or dev)
|
||||
|
|
|
@ -3,7 +3,6 @@ Section: libs
|
|||
Priority: optional
|
||||
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
|
||||
Build-Depends: debhelper (>= 9),
|
||||
quilt,
|
||||
dh-autoreconf,
|
||||
libdrm-dev (>= 2.4.32),
|
||||
libxext-dev,
|
||||
|
|
|
@ -1 +1,2 @@
|
|||
which udevadm > /dev/null || exit 0
|
||||
udevadm trigger --action=add --sysname-match=ump
|
||||
|
|
|
@ -16,11 +16,8 @@ Build-Depends: debhelper (>= 9),
|
|||
libcdio-paranoia-dev,
|
||||
libdvdnav-dev,
|
||||
libdvdread-dev,
|
||||
libegl1-mesa-dev [linux-any],
|
||||
libenca-dev,
|
||||
libgl1-mesa-dev,
|
||||
libguess-dev,
|
||||
libjack-dev,
|
||||
libjpeg-dev,
|
||||
liblcms2-dev (>= 2.6~),
|
||||
liblua5.2-dev,
|
||||
|
|
|
@ -13,7 +13,9 @@ override_dh_auto_configure:
|
|||
--zshdir=/usr/share/zsh/vendor-completions \
|
||||
--enable-cdda --enable-sdl2 --enable-sndio \
|
||||
--enable-zsh-comp --enable-libmpv-shared \
|
||||
--disable-build-date --disable-libass
|
||||
--disable-build-date --disable-libass \
|
||||
--disable-jack --disable-gl --disable-wayland \
|
||||
--disable-xv
|
||||
|
||||
override_dh_auto_build:
|
||||
python ./waf build
|
||||
|
|
|
@ -22,6 +22,9 @@ Package: sunxi-mali-r3p0-dev
|
|||
Section: libdevel
|
||||
Architecture: any
|
||||
Depends: sunxi-mali-r3p0 (= ${binary:Version}), ${misc:Depends}
|
||||
Conflicts: libegl1-mesa-dev, libgles1-mesa-dev, libgles2-mesa-dev
|
||||
Replaces: libegl1-mesa-dev, libgles1-mesa-dev, libgles2-mesa-dev
|
||||
Provides: libegl1-mesa-dev, libgles1-mesa-dev, libgles2-mesa-dev
|
||||
Description: Mali userspace binary driver version r3p0
|
||||
This package contains a complete set of Mali userspace drivers,
|
||||
including proprietary OpenGLESv2/EGL binaries.
|
||||
|
|
|
@ -15,3 +15,5 @@ override_dh_auto_configure:
|
|||
override_dh_auto_install:
|
||||
mkdir -p debian/tmp/usr/lib/ debian/tmp/usr/include
|
||||
dh_auto_install
|
||||
mkdir -p debian/sunxi-mali-r3p0/etc/modules-load.d/
|
||||
install -m0644 debian/sunxi-mali.conf debian/sunxi-mali-r3p0/etc/modules-load.d/sunxi-mali.conf
|
||||
|
|
1
extras-buildpkgs/sunxi-mali-r3p0/debian/sunxi-mali.conf
Normal file
1
extras-buildpkgs/sunxi-mali-r3p0/debian/sunxi-mali.conf
Normal file
|
@ -0,0 +1 @@
|
|||
mali
|
5
main.sh
5
main.sh
|
@ -237,9 +237,8 @@ fi
|
|||
|
||||
[[ -n $RELEASE ]] && create_board_package
|
||||
|
||||
# chroot-build-ackages
|
||||
[[ $KERNEL_ONLY == yes && ($RELEASE == jessie || $RELEASE == xenial) && \
|
||||
$EXTERNAL_NEW == yes && $(lsb_release -sc) == xenial ]] && chroot_build_packages
|
||||
# chroot-buildpackages
|
||||
[[ $EXTERNAL_NEW == yes && $(lsb_release -sc) == xenial ]] && chroot_build_packages
|
||||
|
||||
if [[ $KERNEL_ONLY != yes ]]; then
|
||||
if [[ $EXTENDED_DEBOOTSTRAP != no ]]; then
|
||||
|
|
Loading…
Add table
Reference in a new issue