I've recently re-compiled the Darwin Streaming Server for OpenBSD 3.6
I've attached the patch file in case anyone else needs to build it (it
is not very big)
Additional info below.
Hope you find this useful.
---
the main changes were:
adding a new case to Buildit
CommonUtilitiesLib/OS.cpp and
PlaylistBroadcaster.tproj/BCasterTracker.cpp needed an additional
include
Server.tproj/main.cpp an additional include and excluding a code block
Install needs a few changes - and I've not tried un-installing
(the patch file was generated by diff -u -r -p)
to use it ...
unzip DarwinStreamingSrc5.0.1.1.zip
patch < patch.OpenBSD.i386.txt
cd DarwinStreamingSrc5.0.1.1
./buildtarball
# from the tarball you can install
# DarwinStreamingSrvr-OpenBSD.tar.gz StreamingProxy--OpenBSD.tar.gz
groupadd qtss
tar -zxf DarwinStreamingSrvr-OpenBSD.tar.gz
cd DarwinStreamingSrvr-OpenBSD
./Install
# To start server on boot
# add to /etc/rc.local
if [ -x /usr/local/sbin/streamingadminserver.pl ]; then
echo -n ' DawinStreamingServer'; /usr/local/sbin/streamingadminserver.pl
fi
diff -u -p DarwinStreamingSrc5.0.1.1/Buildit DarwinStreamingSrc5.0.1.1-OpenBSD.i386/Buildit
--- DarwinStreamingSrc5.0.1.1/Buildit Thu Nov 13 01:01:32 2003
+++ DarwinStreamingSrc5.0.1.1-OpenBSD.i386/Buildit Mon Oct 25 22:41:46 2004
@@ -81,6 +81,22 @@ case $PLAT in
fi
;;
+ OpenBSD.i386)
+ echo "Configuring for the "$OSNAME" "$HARDWARENAME" platform"
+ CPLUS=gcc
+ CCOMP=gcc
+ LINKER="gcc"
+ MAKE=make
+
+ COMPILER_FLAGS="-D__FreeBSD__ -D__OpenBSD__"
+ INCLUDE_FLAG="-include"
+
+ CORE_LINK_LIBS="-pthread -lm"
+
+ SHARED=-shared
+ MODULE_LIBS=
+ ;;
+
FreeBSD.i386)
echo "Configuring for the "$OSNAME" "$HARDWARENAME" platform"
CPLUS=gcc
diff -u -p DarwinStreamingSrc5.0.1.1/CommonUtilitiesLib/OS.cpp DarwinStreamingSrc5.0.1.1-OpenBSD.i386/CommonUtilitiesLib/OS.cpp
--- DarwinStreamingSrc5.0.1.1/CommonUtilitiesLib/OS.cpp Fri Oct 24 13:12:52 2003
+++ DarwinStreamingSrc5.0.1.1-OpenBSD.i386/CommonUtilitiesLib/OS.cpp Mon Oct 25 22:27:54 2004
@@ -62,6 +62,9 @@
#endif
+#if (__OpenBSD__)
+ #include <sys/param.h>
+#endif
#if (__FreeBSD__ || __MacOSX__)
#include <sys/sysctl.h>
diff -u -p DarwinStreamingSrc5.0.1.1/DSS_MakeRoot DarwinStreamingSrc5.0.1.1-OpenBSD.i386/DSS_MakeRoot
--- DarwinStreamingSrc5.0.1.1/DSS_MakeRoot Thu Nov 13 01:54:05 2003
+++ DarwinStreamingSrc5.0.1.1-OpenBSD.i386/DSS_MakeRoot Mon Oct 25 22:44:58 2004
@@ -5,10 +5,10 @@
# source release
DSS=0
-if [ $1 = "-f" ]; then
+if [ "$1" = "-f" ]; then
FLATTEN=1
INSTALLROOT=$2
- if [ $3 = "dss" ]; then
+ if [ "$3" = "dss" ]; then
DSS=1
fi
else
diff -u -p DarwinStreamingSrc5.0.1.1/Install DarwinStreamingSrc5.0.1.1-OpenBSD.i386/Install
--- DarwinStreamingSrc5.0.1.1/Install Thu Nov 13 01:01:32 2003
+++ DarwinStreamingSrc5.0.1.1-OpenBSD.i386/Install Mon Oct 25 22:44:58 2004
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/bin/sh
# Install script for the Darwin Streaming Server
# source release
@@ -18,6 +18,11 @@ if [ $USERID = 0 ]; then
echo Checking for and Killing currently running Darwin Streaming Server
if [ `uname` = "FreeBSD" ]; then
+ ps -ax | awk '/DarwinStreamingServer/ {print $1}' | xargs kill -9
+ ps -ax | awk '/streamingadminserver.pl/ {print $1}' | xargs kill -9
+ fi
+
+ if [ `uname` = "OpenBSD" ]; then
ps -ax | awk '/DarwinStreamingServer/ {print $1}' | xargs kill -9
ps -ax | awk '/streamingadminserver.pl/ {print $1}' | xargs kill -9
fi
diff -u -p DarwinStreamingSrc5.0.1.1/PlaylistBroadcaster.tproj/BCasterTracker.cpp DarwinStreamingSrc5.0.1.1-OpenBSD.i386/PlaylistBroadcaster.tproj/BCasterTracker.cpp
--- DarwinStreamingSrc5.0.1.1/PlaylistBroadcaster.tproj/BCasterTracker.cpp Sat Aug 16 00:53:05 2003
+++ DarwinStreamingSrc5.0.1.1-OpenBSD.i386/PlaylistBroadcaster.tproj/BCasterTracker.cpp Mon Oct 25 22:30:33 2004
@@ -50,6 +50,9 @@
#include <sys/file.h>
#include <sys/stat.h>
#include <sys/types.h>
+#if (__OpenBSD__)
+ #include <sys/param.h>
+#endif
#if !(defined(__solaris__) || defined(__osf__) || defined(__hpux__))
#include <sys/sysctl.h>
#endif
diff -u -p DarwinStreamingSrc5.0.1.1/Server.tproj/main.cpp DarwinStreamingSrc5.0.1.1-OpenBSD.i386/Server.tproj/main.cpp
--- DarwinStreamingSrc5.0.1.1/Server.tproj/main.cpp Sat Aug 16 00:53:22 2003
+++ DarwinStreamingSrc5.0.1.1-OpenBSD.i386/Server.tproj/main.cpp Mon Oct 25 22:35:00 2004
@@ -53,6 +53,10 @@
#include "daemon.h"
#endif
+#if (__OpenBSD__)
+ #include <sys/param.h>
+#endif
+
#if __MacOSX__ || __FreeBSD__
#include <sys/sysctl.h>
#endif
@@ -229,7 +233,7 @@ int main(int argc, char * argv[])
setrlimit (RLIMIT_NOFILE, &rl);
#endif
-#if __MacOSX__ || __FreeBSD__
+#if (( __MacOSX__ || __FreeBSD__ ) && (! __OpenBSD__ ))
//
// These 2 OSes have problems with large socket buffer sizes. Make sure they allow even
// ridiculously large ones, because we may need them to receive a large volume of ACK packets
diff -u -p DarwinStreamingSrc5.0.1.1/buildtarball DarwinStreamingSrc5.0.1.1-OpenBSD.i386/buildtarball
--- DarwinStreamingSrc5.0.1.1/buildtarball Thu Feb 19 03:03:14 2004
+++ DarwinStreamingSrc5.0.1.1-OpenBSD.i386/buildtarball Mon Oct 25 22:44:58 2004
@@ -67,24 +67,6 @@ then
exit 1
fi
-if [ $1 = "dss" ]; then
- echo ""
-else
- if [ ! -d StreamingLoadTool ];
- then
- echo "Error: there is no StreamingLoadTool folder."
- echo Cannot build StreamingLoadTool. Exiting!
- exit 1
- fi
-
- if [ ! -f StreamingLoadTool/StreamingLoadTool ];
- then
- echo "StreamingLoadTool failed to build!"
- echo Buildit FAILED. Exiting!
- exit 1
- fi
-fi
-
./DSS_MakeRoot -f DarwinStreamingSrvr$1-$PLAT $1
tar cvf DarwinStreamingSrvr$1-$PLAT.tar DarwinStreamingSrvr$1-$PLAT
gzip DarwinStreamingSrvr$1-$PLAT.tar
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Streaming-server-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden