--- a/ohbuild.sh
+++ b/ohbuild.sh
@@ -52,9 +52,32 @@
dir=ohNet
echo building $dir
cd $dir
- # Apr 29 2015
- git checkout 5118af2acce9a25123336b9d3526cc87cdb96386
- make ohNetCore proxies devices TestFramework bundle || exit 1
+ # Nov 30 2015. Commits from early december broke ohNetGenerated
+ git checkout 0e22566e3da0eb9b40f4183e76254c6f2a3c2909 || exit 1
+
+ git checkout Makefile
+ # Note: the 'make: o: Command not found' errors originate in
+ # common.mak and are due to variable t4 being undefined. t4 is
+ # normally defined as 'mono' in T4Linux.mak, included in Makefile
+ # only if 'uset4' is set (which it is not by default). Common.mak
+ # should heed uset4, but it does not. This does not seem to have
+ # consequences, and the errors are suppressed by defining t4 as 'echo'
+ patch -p1 <<EOF
+diff --git a/Makefile b/Makefile
+index 7c0dae8..ddc4477 100644
+--- a/Makefile
++++ b/Makefile
+@@ -412,6 +412,7 @@ ifeq (\$(uset4), yes)
+ build_targets = \$(build_targets_base) tt
+ else
+ build_targets = \$(build_targets_base)
++t4 = echo
+ endif
+ default : all
+
+EOF
+
+ make native_only=yes || exit 1
cd ..
}
@@ -64,8 +87,24 @@
dir=ohNetGenerated
echo building $dir
cd $dir
- # Apr 29 2015
- git checkout 8deb7ffd2f8e99fdc56449dadcd7d4fbc96cb829
+ # Jul 30 2015
+ git checkout 92294ce514dbe38fa569fce8b58588f40bf09cdb || exit 1
+ git checkout Makefile
+ patch -p1 <<EOF
+diff --git a/Makefile b/Makefile
+index a7b84e3..9c335f8 100644
+--- a/Makefile
++++ b/Makefile
+@@ -359,6 +359,7 @@ ifeq (\$(uset4), yes)
+ build_targets = \$(build_targets_base) tt
+ else
+ build_targets = \$(build_targets_base)
++t4 = echo
+ endif
+ default : all
+
+EOF
+
# e.g. Linux-x64, Linux-armhf
arch=`basename $topdir/ohNet/Build/Bundles/ohNet-*-*.tar.gz | \
sed -e s/ohNet-// -e s/-[A-Z][a-z][a-z]*\.tar\.gz$//`
@@ -79,8 +118,8 @@
tar xvzf $topdir/ohNet/Build/Bundles/ohNet-${arch}-${debug}.tar.gz
) || exit 1
- # This should fail looking for some dll (csharp again), but that's ok
- make
+
+ make native_only=yes
# Copy the includes from here to the ohNet dir where ohTopology
# will want them
@@ -95,26 +134,37 @@
dir=ohdevtools
echo building $dir
cd $dir
- git checkout 52445477e4201b35b4ee5174bf90d25543cd1849
+
+ # Dec 9 2015
+ git checkout 77f4f971e2c62e84a7eab2a1bcf4aa3dc3590840 || exit 1
# Nothing to build
cd ..
}
+# It appears that nothing compiled in topology is needed for Receivers
+# or Senders, only managers of those. Some of the include files are
+# needed (or at least used) though.
build_ohTopology()
{
cd $topdir
dir=ohTopology
echo building $dir
cd $dir
- # Apr 29 2015
- git checkout 18f004621a7b0dc3add6ddfeec781bd3878ae42e
+
+ # Mar 17 2015
+ git checkout 18f004621a7b0dc3add6ddfeec781bd3878ae42e || exit 1
- ./go fetch --all --clean
-
- ./waf configure --ohnet=../ohNet --dest-platform=Linux-x86
- # This fails, but it creates what we need.
- ./waf build
+ #./go fetch --all --clean
+ #./waf configure --ohnet=../ohNet --dest-platform=Linux-x86
+
+ # The build fails because of mono issues (trying to generate
+ # include files from templates, this is probably fixable as the e
+ # actual includes may exist somewhere).
+ #./waf build
+
+ mkdir -p build/Include/OpenHome/Av
+ cp -p OpenHome/Av/*.h build/Include/OpenHome/Av/
cd ..
}
@@ -126,26 +176,29 @@
echo building $dir
cd $dir
- # Apr 29 2015.
- git checkout d3f6017a1ef133525f75f4d78e399e6fd6b70ce6
-
- # This (used to?) fails because the link options are wrong
- # (-lpthread should be at the end of the link line), but it builds
- # the objs we need.
+ # Aug 19 2015
+ git checkout fe9b8a80080118f3bff9b44328975d10bc2c230b || exit 1
+
make release=1 Receiver
+ # make release=1 WavSender
}
official_way()
{
-# from README, actually Does not work, for reference
+ # from README, actually Does not work, for reference. Issues probably have
+ # something to do with lacking mono or wrong version
cd ohNet
make ohNetCore proxies devices TestFramework
cd ../ohNetGenerated
+ ./go fetch --all
make
cd ../ohNetmon
- make
+ ./go fetch --all
+ ./waf configure --ohnet=../ohNet
+ ./waf build
cd ../ohTopology
- ./waf configure --ohnet=../ohNet --debug --dest-platform=[Windows-x86|Mac-x86|Linux-x86]
+ ./go fetch --all
+ ./waf configure --ohnet=../ohNet
./waf build
cd ../ohSongcast
make release=1