diff --git a/patches/jack_01_OptionalPortAudio.diff b/patches/jack_01_OptionalPortAudio.diff
index 807bfb7..5431f03 100644
--- a/patches/jack_01_OptionalPortAudio.diff
+++ b/patches/jack_01_OptionalPortAudio.diff
@@ -1,8 +1,8 @@
diff --git a/common/wscript b/common/wscript
-index 4302b1e..53d453d 100644
+index 4302b1e..c39aec1 100644
--- a/common/wscript
+++ b/common/wscript
-@@ -380,7 +381,7 @@ def build(bld):
+@@ -380,7 +380,7 @@ def build(bld):
process = create_jack_process_obj(bld, 'audioadapter', audio_adapter_sources, serverlib)
process.use = 'SAMPLERATE'
@@ -12,15 +12,15 @@ index 4302b1e..53d453d 100644
process = create_jack_process_obj(bld, 'audioadapter', audio_adapter_sources, serverlib)
process.use += ['SAMPLERATE', 'PORTAUDIO']
diff --git a/windows/wscript b/windows/wscript
-index fdae9bb..069fd53 100644
+index ea4dd3d..f00d66e 100644
--- a/windows/wscript
+++ b/windows/wscript
-@@ -6,7 +6,7 @@ import re
- import os
+@@ -2,7 +2,7 @@
+ # encoding: utf-8
def configure(conf):
-- conf.check_cc(function_name='Pa_GetVersion', header_name='portaudio.h', lib='portaudio', uselib_store="PORTAUDIO", define_name='HAVE_PORTAUDIO')
-+ conf.check_cc(function_name='Pa_GetVersion', header_name='portaudio.h', lib='portaudio', uselib_store="PORTAUDIO", define_name='HAVE_PORTAUDIO', mandatory=False)
+- conf.check_cfg(package='portaudio-2.0', uselib_store='PORTAUDIO', atleast_version='19', args='--cflags --libs')
++ conf.check_cfg(package='portaudio-2.0', uselib_store='PORTAUDIO', atleast_version='19', args='--cflags --libs', mandatory=False)
conf.env['BUILD_DRIVER_PORTAUDIO'] = conf.is_defined('HAVE_PORTAUDIO')
- def build(bld):
+ def create_jack_driver_obj(bld, target, sources, uselib = None):
diff --git a/zen-all.sh b/zen-all.sh
index 8ac81d9..97aff37 100755
--- a/zen-all.sh
+++ b/zen-all.sh
@@ -18,7 +18,7 @@ function all_build {
}
function all_get_deps {
-# echo "dbus"
+ echo "dbus"
echo "expat"
# echo "faad2" # error: "two or more data types in declaration specifiers"
# echo "ffmpeg"
@@ -27,8 +27,8 @@ function all_get_deps {
echo "fribidi"
echo "gmplib"
# echo "gnutls"
-# #echo "gpac" requires ffmpeg -fPIC
-# echo "jack"
+ echo "gpac"
+ echo "jack"
echo "liba52"
# echo "libalsa"
echo "libass"
@@ -43,7 +43,7 @@ function all_get_deps {
echo "libopenjpeg"
echo "libpng"
# echo "libpthread"
-# echo "librtmp" # link errors: "undefined reference to `__imp_htons'"
+ echo "librtmp"
echo "libsamplerate"
echo "libsdl"
echo "libsndfile"
@@ -54,7 +54,7 @@ function all_get_deps {
# echo "libxcb"
# echo "libxvidcore"
echo "opencore-amr"
-# echo "openh264"
+ echo "openh264"
# echo "openhevc"
echo "opus"
echo "portaudio"
@@ -69,7 +69,7 @@ function all_get_deps {
# echo "xcb-proto"
# echo "xcbproto"
# echo "xcbpthreadstubs"
-# echo "xproto"
+ echo "xproto"
echo "zlib"
}
diff --git a/zen-dbus.sh b/zen-dbus.sh
new file mode 100755
index 0000000..736ec2d
--- /dev/null
+++ b/zen-dbus.sh
@@ -0,0 +1,44 @@
+#!/bin/bash
+
+# Copyright (C) 2014 - Sebastien Alaiwan
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
+
+function dbus_build {
+ host=$1
+ pushDir $WORK/src
+
+ lazy_download "dbus.tar.gz" "http://dbus.freedesktop.org/releases/dbus/dbus-1.8.8.tar.gz"
+ lazy_extract "dbus.tar.gz"
+
+ mkdir -p dbus/build/$host
+ pushDir dbus/build/$host
+ CFLAGS+=" -I$PREFIX/$host/include " \
+ LDFLAGS+=" -L$PREFIX/$host/lib " \
+ ../../configure \
+ --host=$host \
+ --enable-static \
+ --enable-abstract-sockets \
+ --disable-shared \
+ --prefix=$PREFIX/$host
+ $MAKE
+ $MAKE install
+ popDir
+
+ popDir
+}
+
+function dbus_get_deps {
+ echo "expat"
+}
+
diff --git a/zen-expat.sh b/zen-expat.sh
index 316e743..4499929 100755
--- a/zen-expat.sh
+++ b/zen-expat.sh
@@ -24,18 +24,13 @@ function expat_build {
lazy_extract "expat.tar.xz"
mkgit "expat"
- mkdir -p expat/build/$host
- pushDir expat/build/$host
CFLAGS+=" -I$PREFIX/$host/include " \
LDFLAGS+=" -L$PREFIX/$host/lib " \
- ../../configure \
- --host=$host \
- --prefix=$PREFIX/$host
- $MAKE
- $MAKE install
+ autoconf_build $host "expat" \
+ --enable-static \
+ --disable-shared
popDir
- popDir
}
function expat_get_deps {
diff --git a/zen-gpac.sh b/zen-gpac.sh
index 8034224..18dacec 100755
--- a/zen-gpac.sh
+++ b/zen-gpac.sh
@@ -35,15 +35,20 @@ function gpac_build {
pushDir gpac/build/$host
../../configure \
--target-os=$OS \
- --prefix=$PREFIX/$host \
+ --cross-prefix="$crossPrefix" \
--extra-cflags="-I$PREFIX/$host/include -w -fPIC" \
--extra-ldflags="-L$PREFIX/$host/lib" \
--disable-jack \
--enable-amr \
- --cross-prefix="$crossPrefix"
+ --prefix=$PREFIX/$host
$MAKE
- $MAKE install
+
+ # 'make install' is broken, ignore the following error.
+ # install: cannot stat ‘bin/gcc/libgpac.dll.a’: No such file or directory
+ # Makefile:174: recipe for target 'installdylib' failed
+ $MAKE install-lib -k || true
+
popDir
popDir
diff --git a/zen-jack.sh b/zen-jack.sh
index 2bf1ad4..6a832d8 100755
--- a/zen-jack.sh
+++ b/zen-jack.sh
@@ -25,21 +25,31 @@ function jack_build {
host=$1
pushDir $WORK/src
- lazy_git_clone "git://github.com/jackaudio/jack2.git" jack2_$host f90f76f
+ lazy_git_clone "git://github.com/jackaudio/jack2.git" jack2_$host 9159e9f85f1b85df525c3bc95260e51c72ef9d65 --depth=100
CFLAGS="-I$PREFIX/$host/include -L$PREFIX/$host/lib"
- CFLAGS+=" -I$PREFIX/$host/include/tre"
pushDir jack2_$host
applyPatch $scriptDir/patches/jack_01_OptionalPortAudio.diff
applyPatch $scriptDir/patches/jack_03_NoExamples.diff
applyPatch $scriptDir/patches/jack_04_OptionalSampleRate.diff
+ sed -i "s/.*tests.*//" wscript
+ sed -i "s/.*example-clients.*//" wscript
+
+ local options=""
+
+ case $host in
+ *mingw*)
+ CFLAGS+=" -I$PREFIX/$host/include/tre"
+ options+=" --winmme --dist-target mingw"
+ ;;
+ esac
CC="$host-gcc $CFLAGS" \
CXX="$host-g++ $CFLAGS" \
PREFIX=$PREFIX/$host \
- python2 ./waf configure --winmme --dist-target mingw
+ python2 ./waf configure $options
python2 ./waf build
python2 ./waf install
popDir
diff --git a/zen-librtmp.sh b/zen-librtmp.sh
index 3686192..c9c1785 100755
--- a/zen-librtmp.sh
+++ b/zen-librtmp.sh
@@ -27,6 +27,13 @@ function librtmp_build {
pushDir rtmpdump/librtmp
+ case $host in
+ *mingw*)
+ sed -i "s/^SYS=posix/SYS=mingw/" Makefile
+ echo "# YO" >> Makefile
+ ;;
+ esac
+
sed -i "s@^prefix=.*@prefix=$PREFIX/$host@" Makefile
sed -i "s@^CRYPTO=.*@@" Makefile
diff --git a/zen-libvpx.sh b/zen-libvpx.sh
index 0e74ee0..2b929fa 100755
--- a/zen-libvpx.sh
+++ b/zen-libvpx.sh
@@ -21,7 +21,7 @@ function libvpx_build {
lazy_git_clone https://chromium.googlesource.com/webm/libvpx libvpx c5718a7aa3b5490fbfbc47d6f82e7cb3eed46a1e
local host2=$(echo $host | sed "s/x86_64-w64-mingw32/x86_64-win64-gcc/")
- host2=$(echo $host2 | sed "s/i686-w64-mingw32/i686-win32-gcc/")
+ host2=$(echo $host2 | sed "s/i686-w64-mingw32/x86-win32-gcc/")
host2=$(echo $host2 | sed "s/x86_64-linux-gnu/x86_64-linux-gcc/")
mkdir -p libvpx/build/$host
pushDir libvpx/build/$host
@@ -30,6 +30,7 @@ function libvpx_build {
../../configure \
--target=$host2 \
--disable-examples \
+ --disable-unit-tests \
--disable-docs \
--prefix=$PREFIX/$host
$MAKE
diff --git a/zen-openh264.sh b/zen-openh264.sh
index c54f152..9ab63b8 100755
--- a/zen-openh264.sh
+++ b/zen-openh264.sh
@@ -15,21 +15,19 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
-function openh264_get_deps {
- local a=0
-}
-
function openh264_build {
host=$1
pushDir $WORK/src
local ARCH=$(get_arch $host)
local OS=$(get_os $host)
-
- lazy_git_clone "https://github.com/cisco/openh264" "openh264" 7f967f6fc46290794da02319470afe27e7ed7a6e
-
+
+ lazy_download "openh264.tar.gz" "https://github.com/cisco/openh264/archive/v1.3.1.tar.gz"
+ lazy_extract "openh264.tar.gz"
+ mkgit "openh264"
+
pushDir openh264
-
+
sed -i "s@^PREFIX=.*@PREFIX=$PREFIX/$host@" Makefile
sed -i "s@^ARCH=.*@ARCH=$ARCH@" Makefile
sed -i "s@^OS=.*@OS=$OS@" Makefile
@@ -38,7 +36,12 @@ function openh264_build {
$MAKE
$MAKE install
-
+
popDir
popDir
}
+
+function openh264_get_deps {
+ local a=0
+}
+
diff --git a/zen-xproto.sh b/zen-xproto.sh
index 7df06b1..1cadc28 100755
--- a/zen-xproto.sh
+++ b/zen-xproto.sh
@@ -1,35 +1,30 @@
#!/bin/bash
-# Copyright (C) 2014 - Badr BADRI
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License
-# as published by the Free Software Foundation; either version 3
-# of the License, or (at your option) any later version.
+# Copyright (C) 2014 - Sebastien Alaiwan
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
+# GNU Affero General Public License for more details.
#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
-
-function xproto-get_deps {
- local a=0
-}
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
function xproto_build {
-
- local host=$1
+ host=$1
pushDir $WORK/src
- lazy_download "xproto.tar.gz" "http://xorg.freedesktop.org/releases/individual/proto/xproto-7.0.27.tar.gz"
-
- lazy_extract "xproto.tar.gz"
+ lazy_git_clone "git://anongit.freedesktop.org/xorg/proto/xproto" xproto
autoconf_build $host "xproto"
-
popDir
+}
+function xproto_get_deps {
+ local a=0
}
+
diff --git a/zenbuild.sh b/zenbuild.sh
index bdc6f1e..a6952bc 100755
--- a/zenbuild.sh
+++ b/zenbuild.sh
@@ -58,7 +58,8 @@ function lazy_download
local url="$2"
if [ ! -e "$CACHE/$file" ]; then
- wget "$url" -c -O "$CACHE/${file}.tmp"
+ echo "Downloading: $file"
+ wget "$url" -c -O "$CACHE/${file}.tmp" --no-verbose
mv "$CACHE/${file}.tmp" "$CACHE/$file"
fi
}
@@ -196,8 +197,10 @@ function initCflags {
export CXXFLAGS
export LDFLAGS
+ local cores=$(nproc)
+
if [ -z "$MAKE" ]; then
- MAKE="make"
+ MAKE="make -j$cores"
fi
export MAKE
@@ -275,6 +278,7 @@ function autoconf_build {
popDir
fi
+ rm -rf $name/build/$host
mkdir -p $name/build/$host
pushDir $name/build/$host
../../configure \