diff --git a/net-misc/icecast/icecast-2.4.4.recipe b/net-misc/icecast/icecast-2.4.4.recipe deleted file mode 100644 index b6dc90e63..000000000 --- a/net-misc/icecast/icecast-2.4.4.recipe +++ /dev/null @@ -1,87 +0,0 @@ -SUMMARY="Free server software for streaming multimedia" -DESCRIPTION="Icecast is a streaming media (audio/video) server which \ -currently supports Ogg (Vorbis and Theora), Opus, WebM and MP3 streams. \ -It can be used to create an Internet radio station or a privately running \ -jukebox and many things in between. It is very versatile in that new formats \ -can be added relatively easily and supports open standards for communication \ -and interaction." -HOMEPAGE="https://www.icecast.org/" -COPYRIGHT="2001-2018 the Icecast team - Jack Moffitt - Michael Smith - oddsock - Karl Heyes - Philipp Schafft - Thomas B. Ruecker - David Richards" -LICENSE="GNU LGPL v2" -REVISION="6" -SOURCE_URI="http://downloads.xiph.org/releases/icecast/icecast-$portVersion.tar.gz" -CHECKSUM_SHA256="49b5979f9f614140b6a38046154203ee28218d8fc549888596a683ad604e4d44" -PATCHES="icecast-$portVersion.patchset" -if [ "$effectiveTargetArchitecture" = x86_gcc2 ]; then - PATCHES+=" - icecast-$portVersion-gcc2.patchset" -fi - -ARCHITECTURES="all" - -GLOBAL_WRITABLE_FILES="settings/icecast.xml keep-old" - -PROVIDES=" - icecast = $portVersion - cmd:icecast = $portVersion - " -REQUIRES=" - haiku - lib:libcurl - lib:libnghttp2 - lib:libogg - lib:libspeex - lib:libssl - lib:libtheora - lib:libvorbis - lib:libxml2 - lib:libxslt - lib:libz - " - -BUILD_REQUIRES=" - haiku_devel - devel:libcurl - devel:libnghttp2 - devel:libogg - devel:libspeex - devel:libssl - devel:libtheora - devel:libvorbis - devel:libxml2 - devel:libxslt - devel:libz - " -BUILD_PREREQUIRES=" - cmd:aclocal - cmd:autoconf - cmd:automake - cmd:gcc - cmd:ld - cmd:libtoolize - cmd:make - cmd:pkg_config - " - -defineDebugInfoPackage icecast \ - $binDir/icecast - - -BUILD() -{ - autoreconf -vfi - runConfigure ./configure - make $jobArgs -} - -INSTALL() -{ - make install -} diff --git a/net-misc/icecast/icecast-2.5.0.recipe b/net-misc/icecast/icecast-2.5.0.recipe new file mode 100644 index 000000000..e57fce0b0 --- /dev/null +++ b/net-misc/icecast/icecast-2.5.0.recipe @@ -0,0 +1,99 @@ +SUMMARY="Free server software for streaming multimedia" +DESCRIPTION="Icecast is a streaming media (audio/video) server which \ +currently supports Ogg (Vorbis and Theora), Opus, WebM and MP3 streams. \ +It can be used to create an Internet radio station or a privately running \ +jukebox and many things in between. It is very versatile in that new formats \ +can be added relatively easily and supports open standards for communication \ +and interaction." +HOMEPAGE="https://www.icecast.org/" +COPYRIGHT="2001-2018 the Icecast team + Jack Moffitt + Michael Smith + oddsock + Karl Heyes + Philipp Schafft + Thomas B. Ruecker + David Richards" +LICENSE="GNU LGPL v2" +REVISION="1" +SOURCE_URI="http://downloads.xiph.org/releases/icecast/icecast-$portVersion.tar.gz" +CHECKSUM_SHA256="d9aa07c7429aec19d950ff6fd425c371f77158cd34ff220fc191b2c186c67c7a" +PATCHES="icecast-$portVersion.patchset" + +ARCHITECTURES="all !x86_gcc2" +SECONDARY_ARCHITECTURES="x86" + +commandBinDir=$binDir +commandSuffix=$secondaryArchSuffix +if [ "$targetArchitecture" = x86_gcc2 ]; then + commandSuffix= + commandBinDir=$prefix/bin +fi + +GLOBAL_WRITABLE_FILES="settings/icecast.xml keep-old" + +PROVIDES=" + icecast$secondaryArchSuffix = $portVersion + cmd:icecast$commandSuffix = $portVersion + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libcrypto$secondaryArchSuffix + lib:libcurl$secondaryArchSuffix + lib:libnghttp2$secondaryArchSuffix + lib:libigloo$secondaryArchSuffix + lib:libogg$secondaryArchSuffix + lib:librhash$secondaryArchSuffix + lib:libspeex$secondaryArchSuffix + lib:libssl$secondaryArchSuffix + lib:libtheora$secondaryArchSuffix + lib:libvorbis$secondaryArchSuffix + lib:libxml2$secondaryArchSuffix + lib:libxslt$secondaryArchSuffix + lib:libz$secondaryArchSuffix + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + devel:libcrypto$secondaryArchSuffix >= 3 + devel:libcurl$secondaryArchSuffix + devel:libnghttp2$secondaryArchSuffix + devel:libigloo$secondaryArchSuffix + devel:libogg$secondaryArchSuffix + devel:librhash$secondaryArchSuffix + devel:libspeex$secondaryArchSuffix + devel:libssl$secondaryArchSuffix >= 3 + devel:libtheora$secondaryArchSuffix + devel:libvorbis$secondaryArchSuffix + devel:libxml2$secondaryArchSuffix + devel:libxslt$secondaryArchSuffix + devel:libz$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:aclocal + cmd:autoconf + cmd:automake + cmd:gcc$secondaryArchSuffix + cmd:ld$secondaryArchSuffix + cmd:libtoolize$secondaryArchSuffix + cmd:make + cmd:pkg_config$secondaryArchSuffix + " + +BUILD() +{ + autoreconf -fi + runConfigure --omit-dirs binDir ./configure \ + --bindir=$commandBinDir + make $jobArgs +} + +INSTALL() +{ + make install +} + +TEST() +{ + make VERBOSE=1 check +} diff --git a/net-misc/icecast/patches/icecast-2.4.4-gcc2.patchset b/net-misc/icecast/patches/icecast-2.4.4-gcc2.patchset deleted file mode 100644 index 53b551989..000000000 --- a/net-misc/icecast/patches/icecast-2.4.4-gcc2.patchset +++ /dev/null @@ -1,49 +0,0 @@ -From 6d40c726148f69837b5a599dc54f9cdc7f13c1e3 Mon Sep 17 00:00:00 2001 -From: begasus -Date: Tue, 18 Dec 2018 14:43:08 +0100 -Subject: gcc2 fixes - - -diff --git a/src/slave.c b/src/slave.c -index bd9eecc..522f403 100644 ---- a/src/slave.c -+++ b/src/slave.c -@@ -669,6 +669,7 @@ static int update_from_master(ice_config_t *config) - if (!strlen(buf)) - continue; - ICECAST_LOG_DEBUG("read %d from master \"%s\"", count++, buf); -+ { - xmlURIPtr parsed_uri = xmlParseURI(buf); - if (parsed_uri == NULL) { - ICECAST_LOG_DEBUG("Error while parsing line from master. Ignoring line."); -@@ -700,6 +701,7 @@ static int update_from_master(ice_config_t *config) - new_relays = r; - } - xmlFreeURI(parsed_uri); -+ } - } - sock_close (mastersock); - -diff --git a/src/source.c b/src/source.c -index e7bf39f..909440e 100644 ---- a/src/source.c -+++ b/src/source.c -@@ -1474,6 +1474,7 @@ void source_recheck_mounts (int update_all) - if (mount->mounttype != MOUNT_TYPE_NORMAL) - continue; - -+ { - source_t *source = source_find_mount (mount->mountname); - - if (source) -@@ -1509,6 +1510,7 @@ void source_recheck_mounts (int update_all) - strdup (mount->fallback_mount), THREAD_DETACHED); - } - } -+ } - } - avl_tree_unlock (global.source_tree); - config_release_config(); --- -2.19.1 - diff --git a/net-misc/icecast/patches/icecast-2.4.4.patchset b/net-misc/icecast/patches/icecast-2.5.0.patchset similarity index 50% rename from net-misc/icecast/patches/icecast-2.4.4.patchset rename to net-misc/icecast/patches/icecast-2.5.0.patchset index 5dd7a20be..9e9129bc0 100644 --- a/net-misc/icecast/patches/icecast-2.4.4.patchset +++ b/net-misc/icecast/patches/icecast-2.5.0.patchset @@ -4,19 +4,19 @@ Date: Tue, 18 Dec 2018 14:36:17 +0100 Subject: comment out pthread_attr_setinheritsched -diff --git a/src/thread/thread.c b/src/thread/thread.c -index e842448..ebc786c 100644 ---- a/src/thread/thread.c -+++ b/src/thread/thread.c -@@ -294,7 +294,7 @@ thread_type *thread_create_c(char *name, void *(*start_routine)(void *), - start->thread = thread; +diff --git a/src/common/thread/thread.c b/src/common/thread/thread.c +index 6c6db81..5cffdda 100644 +--- a/src/common/thread/thread.c ++++ b/src/common/thread/thread.c +@@ -301,7 +301,7 @@ thread_type *thread_create_c(const char *name, void *(*start_routine)(void *), pthread_attr_setstacksize (&attr, 512*1024); -- pthread_attr_setinheritsched (&attr, PTHREAD_INHERIT_SCHED); -+ // pthread_attr_setinheritsched (&attr, PTHREAD_INHERIT_SCHED); - if (detached) - { - pthread_attr_setdetachstate (&attr, PTHREAD_CREATE_DETACHED); + +-#ifndef __ANDROID__ ++#if !defined(__ANDROID__) && !defined(__HAIKU__) + pthread_attr_setinheritsched (&attr, PTHREAD_INHERIT_SCHED); + #endif + -- 2.24.1 @@ -27,28 +27,20 @@ Date: Mon, 23 Dec 2019 09:52:32 +0100 Subject: Move PATCH and libnetwork check to configure.in -diff --git a/configure.in b/configure.in -index a3f5315..070300b 100644 ---- a/configure.in -+++ b/configure.in -@@ -6,6 +6,7 @@ dnl Process this file with autoconf to produce a configure script. +diff --git a/configure.ac b/configure.ac +index be6a34a..8ff5a3a 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -47,6 +47,9 @@ AM_MAINTAINER_MODE([enable]) + LT_INIT - AM_INIT_AUTOMAKE - AM_CONFIG_HEADER(config.h) -+AC_CONFIG_MACRO_DIRS([m4]) - AM_MAINTAINER_MODE - - AC_PROG_CC -@@ -13,6 +14,9 @@ AC_CANONICAL_HOST - AC_PROG_LIBTOOL - AC_SYS_LARGEFILE +dnl Add search for Haiku's libnetwork +AC_CHECK_LIB(network, socket, [LIBS="$LIBS -lnetwork"]) + - dnl Set some options based on environment + dnl Sanitizer flags - DEBUG="-g" + AC_ARG_WITH([sanitizer], -- 2.24.1 @@ -60,18 +52,18 @@ Subject: Disable: don't run as root diff --git a/src/main.c b/src/main.c -index 4844415..679b58c 100644 +index dd7eb7c..76d58f7 100644 --- a/src/main.c +++ b/src/main.c -@@ -501,7 +501,7 @@ int main(int argc, char **argv) +@@ -755,7 +755,7 @@ int main(int argc, char **argv) stats_initialize(); /* We have to do this later on because of threading */ fserve_initialize(); /* This too */ --#ifdef HAVE_SETUID +-#ifdef HAVE_SETUID +#if defined(HAVE_SETUID) && !defined(__HAIKU__) /* We'll only have getuid() if we also have setuid(), it's reasonable to * assume */ - if(!getuid()) /* Running as root! Don't allow this */ + if(!getuid() && getpid() != 1) /* Running as root! Don't allow this */ -- 2.24.1