PKG_NAME:=minidlna
PKG_VERSION:=1.0.22
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)_$(PKG_VERSION)_src.tar.gz
PKG_SOURCE_URL:=@SF/minidlna
PKG_BUILD_PARALLEL:=0
+include $(INCLUDE_DIR)/kernel.mk
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/nls.mk
-MAKE_VARS += \
- ICONV_PREFIX="$(ICONV_PREFIX)" \
- INTL_PREFIX="$(INTL_PREFIX)"
-
define Package/minidlna
SECTION:=multimedia
CATEGORY:=Multimedia
/etc/minidlna.conf
endef
+TARGET_CPPFLAGS += \
+ -I$(STAGING_DIR)/usr/include \
+ -I$(STAGING_DIR)/usr/include/FLAC \
+ -I$(STAGING_DIR)/usr/include/libavcodec \
+ -I$(STAGING_DIR)/usr/include/libavformat \
+ -I$(STAGING_DIR)/usr/include/libavutil \
+ -I$(STAGING_DIR)/usr/include/libexif \
+ -I$(STAGING_DIR)/usr/include/uuid \
+ -I$(STAGING_DIR)/usr/include/vorbis \
+ -I$(ICONV_PREFIX)/include \
+ -I$(INTL_PREFIX)/include \
+ -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 \
+
+TARGET_LDFLAGS += \
+ -L$(ICONV_PREFIX)/lib \
+ -L$(INTL_PREFIX)/lib \
+ -Wl,-rpath-link=$(STAGING_DIR)/usr/lib \
+
+MAKE_FLAGS +=\
+ CFLAGS="$(TARGET_CFLAGS) $(TARGET_CPPFLAGS)" \
+ LDFLAGS="$(TARGET_LDFLAGS)" \
+ ICONV_LIBS="-liconv" \
+
+MAKE_VARS +=\
+ PREFIX="$(STAGING_DIR)/usr" \
+ ICONV_PREFIX="$(ICONV_PREFIX)" \
+ INTL_PREFIX="$(INTL_PREFIX)" \
+ OS_NAME="OpenWrt Linux" \
+ OS_VERSION="$(LINUX_VERSION)" \
+ OS_URL="http://openwrt.org/" \
+ DB_PATH="/var/run/minidlna" \
+ LOG_PATH="/var/log" \
+
+
define Package/minidlna/install
$(INSTALL_DIR) $(1)/etc
$(INSTALL_DATA) $(PKG_BUILD_DIR)/minidlna.conf $(1)/etc/
# Copyright (C) 2010 OpenWrt.org
START=50
-BIN=/usr/bin/minidlna
-PID=/var/run/minidlna.pid
-SSD=start-stop-daemon
+
+SERVICE_USE_PID=1
start() {
- $SSD -p $PID -S -x $BIN -- -P $PID
+ mkdir -m 0755 -p /var/log
+ mkdir -m 0755 -p /var/run/minidlna
+ service_start /usr/bin/minidlna
}
stop() {
- $SSD -p $PID -K -s SIGINT
+ service_stop /usr/bin/minidlna
}
--- a/genconfig.sh
+++ b/genconfig.sh
-@@ -41,22 +41,22 @@ ${RM} ${CONFIGFILE}
+@@ -24,14 +24,18 @@ RM="rm -f"
+ CONFIGFILE="config.h"
+ CONFIGMACRO="__CONFIG_H__"
+
++PREFIX="${PREFIX:-/usr}"
++ICONV_PREFIX="${ICONV_PREFIX:-$PREFIX}"
++INTL_PREFIX="${INTL_PREFIX:-$PREFIX}"
++
+ # Database path
+-DB_PATH="/tmp/minidlna"
++DB_PATH="${DB_PATH:-/tmp/minidlna}"
+ # Log path
+-LOG_PATH="${DB_PATH}"
++LOG_PATH="${LOG_PATH:-$DB_PATH}"
+
+ # detecting the OS name and version
+-OS_NAME=`uname -s`
+-OS_VERSION=`uname -r`
++OS_NAME="${OS_NAME:-$(uname -s)}"
++OS_VERSION="${OS_VERSION:-$(uname -r)}"
+ TIVO="/*#define TIVO_SUPPORT*/"
+ NETGEAR="/*#define NETGEAR*/"
+ READYNAS="/*#define READYNAS*/"
+@@ -41,22 +45,22 @@ ${RM} ${CONFIGFILE}
# Detect if there are missing headers
# NOTE: This check only works with a normal distro
-[ ! -e "/usr/include/ffmpeg/avcodec.h" -a \
- ! -e "/usr/include/libavcodec/avcodec.h" -a \
- ! -e "/usr/include/ffmpeg/libavcodec/avcodec.h" ] && MISSING="libavcodec $MISSING"
-+[ ! -e "${STAGING_DIR}/usr/include/sqlite3.h" ] && MISSING="libsqlite3 $MISSING"
-+[ ! -e "${STAGING_DIR}/usr/include/jpeglib.h" ] && MISSING="libjpeg $MISSING"
-+[ ! -e "${STAGING_DIR}/usr/include/libexif/exif-loader.h" ] && MISSING="libexif $MISSING"
-+[ ! -e "${STAGING_DIR}/usr/include/id3tag.h" ] && MISSING="libid3tag $MISSING"
-+[ ! -e "${STAGING_DIR}/usr/include/ogg/ogg.h" ] && MISSING="libogg $MISSING"
-+[ ! -e "${STAGING_DIR}/usr/include/vorbis/codec.h" ] && MISSING="libvorbis $MISSING"
-+[ ! -e "${STAGING_DIR}/usr/include/FLAC/metadata.h" ] && MISSING="libflac $MISSING"
-+[ ! -e "${STAGING_DIR}/usr/include/ffmpeg/avutil.h" -a \
-+ ! -e "${STAGING_DIR}/usr/include/libavutil/avutil.h" -a \
-+ ! -e "${STAGING_DIR}/usr/include/ffmpeg/libavutil/avutil.h" ] && MISSING="libavutil $MISSING"
-+[ ! -e "${STAGING_DIR}/usr/include/ffmpeg/avformat.h" -a \
-+ ! -e "${STAGING_DIR}/usr/include/libavformat/avformat.h" -a \
-+ ! -e "${STAGING_DIR}/usr/include/ffmpeg/libavformat/avformat.h" ] && MISSING="libavformat $MISSING"
-+[ ! -e "${STAGING_DIR}/usr/include/ffmpeg/avcodec.h" -a \
-+ ! -e "${STAGING_DIR}/usr/include/libavcodec/avcodec.h" -a \
-+ ! -e "${STAGING_DIR}/usr/include/ffmpeg/libavcodec/avcodec.h" ] && MISSING="libavcodec $MISSING"
++[ ! -e "${PREFIX}/include/sqlite3.h" ] && MISSING="libsqlite3 $MISSING"
++[ ! -e "${PREFIX}/include/jpeglib.h" ] && MISSING="libjpeg $MISSING"
++[ ! -e "${PREFIX}/include/libexif/exif-loader.h" ] && MISSING="libexif $MISSING"
++[ ! -e "${PREFIX}/include/id3tag.h" ] && MISSING="libid3tag $MISSING"
++[ ! -e "${PREFIX}/include/ogg/ogg.h" ] && MISSING="libogg $MISSING"
++[ ! -e "${PREFIX}/include/vorbis/codec.h" ] && MISSING="libvorbis $MISSING"
++[ ! -e "${PREFIX}/include/FLAC/metadata.h" ] && MISSING="libflac $MISSING"
++[ ! -e "${PREFIX}/include/ffmpeg/avutil.h" -a \
++ ! -e "${PREFIX}/include/libavutil/avutil.h" -a \
++ ! -e "${PREFIX}/include/ffmpeg/libavutil/avutil.h" ] && MISSING="libavutil $MISSING"
++[ ! -e "${PREFIX}/include/ffmpeg/avformat.h" -a \
++ ! -e "${PREFIX}/include/libavformat/avformat.h" -a \
++ ! -e "${PREFIX}/include/ffmpeg/libavformat/avformat.h" ] && MISSING="libavformat $MISSING"
++[ ! -e "${PREFIX}/include/ffmpeg/avcodec.h" -a \
++ ! -e "${PREFIX}/include/libavcodec/avcodec.h" -a \
++ ! -e "${PREFIX}/include/ffmpeg/libavcodec/avcodec.h" ] && MISSING="libavcodec $MISSING"
if [ -n "$MISSING" ]; then
echo -e "\nERROR! Cannot continue."
echo -e "The following required libraries are either missing, or are missing development headers:\n"
-@@ -184,7 +184,7 @@ fi
+@@ -152,8 +156,7 @@ case $OS_NAME in
+ fi
+ ;;
+ *)
+- echo "Unknown OS : $OS_NAME"
+- exit 1
++ echo "WARNING: Unknown OS : $OS_NAME" 1>&2
+ ;;
+ esac
+
+@@ -184,7 +187,7 @@ fi
echo "" >> ${CONFIGFILE}
echo "/* Enable if the system iconv.h exists. ID3 tag reading in various character sets will not work properly otherwise. */" >> ${CONFIGFILE}
echo "#define HAVE_ICONV_H" >> ${CONFIGFILE}
else
echo -e "\nWARNING!! Iconv support not found. ID3 tag reading may not work."
-@@ -193,7 +193,7 @@ fi
+@@ -193,7 +196,7 @@ fi
echo "" >> ${CONFIGFILE}
echo "/* Enable if the system libintl.h exists for NLS support. */" >> ${CONFIGFILE}
--- a/Makefile
+++ b/Makefile
-@@ -13,9 +13,22 @@
+@@ -10,19 +10,23 @@
+ # or :
+ # $ make install
+ #
++PREFIX ?= /usr
++ICONV_PREFIX ?= $(PREFIX)
++INTL_PREFIX ?= $(PREFIX)
#CFLAGS = -Wall -O -D_GNU_SOURCE -g -DDEBUG
#CFLAGS = -Wall -g -Os -D_GNU_SOURCE
CFLAGS = -Wall -g -O3 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 \
- -I/usr/include/ffmpeg \
- -I/usr/include/libavutil -I/usr/include/libavcodec -I/usr/include/libavformat \
- -I/usr/include/ffmpeg/libavutil -I/usr/include/ffmpeg/libavcodec -I/usr/include/ffmpeg/libavformat
-+ -I$(STAGING_DIR)/usr/include \
-+ -I$(STAGING_DIR)/usr/include/FLAC \
-+ -I$(STAGING_DIR)/usr/include/libavcodec \
-+ -I$(STAGING_DIR)/usr/include/libavformat \
-+ -I$(STAGING_DIR)/usr/include/libavutil \
-+ -I$(STAGING_DIR)/usr/include/libexif \
-+ -I$(STAGING_DIR)/usr/include/uuid \
-+ -I$(STAGING_DIR)/usr/include/vorbis \
-+ -I$(ICONV_PREFIX)/include \
-+ -I$(INTL_PREFIX)/include
-+LDFLAGS = -L$(STAGING_DIR)/usr/lib \
-+ -L$(ICONV_PREFIX)/lib \
-+ -L$(INTL_PREFIX)/include \
-+ -Wl,-rpath=$(STAGING_DIR)/usr/lib \
-+ -Wl,-rpath-link=$(STAGING_DIR)/usr/lib
++ -I$(PREFIX)/include/ffmpeg \
++ -I$(PREFIX)/include/libavutil -I$(PREFIX)/include/libavcodec -I$(PREFIX)/include/libavformat \
++ -I$(PREFIX)/include/ffmpeg/libavutil -I$(PREFIX)/include/ffmpeg/libavcodec -I$(PREFIX)/include/ffmpeg/libavformat
+
#STATIC_LINKING: CFLAGS += -DSTATIC
#STATIC_LINKING: LDFLAGS = -static
CC = gcc
-@@ -37,7 +50,7 @@ BASEOBJS = minidlna.o upnphttp.o upnpdes
+ RM = rm -f
+ INSTALL = install
+
+-INSTALLPREFIX ?= $(DESTDIR)/usr
++INSTALLPREFIX ?= $(DESTDIR)$(PREFIX)
+ SBININSTALLDIR = $(INSTALLPREFIX)/sbin
+ ETCINSTALLDIR = $(DESTDIR)/etc
+
+@@ -37,7 +41,7 @@ BASEOBJS = minidlna.o upnphttp.o upnpdes
ALLOBJS = $(BASEOBJS) $(LNXOBJS)
-LIBS = -lpthread -lexif -ljpeg -lsqlite3 -lavformat -lavutil -lavcodec -lid3tag -lFLAC -logg -lvorbis
-+LIBS = -liconv -lpthread -lexif -ljpeg -lsqlite3 -lavformat -lavutil -lavcodec -lid3tag -lFLAC -logg -lvorbis -luuid
++LIBS = -lpthread -lexif -ljpeg -lsqlite3 -lavformat -lavutil -lavcodec -lid3tag -lFLAC -logg -lvorbis -luuid $(ICONV_LIBS)
#STATIC_LINKING: LIBS = -lvorbis -logg -lm -lsqlite3 -lpthread -lexif -ljpeg -lFLAC -lm -lid3tag -lz -lavformat -lavutil -lavcodec -lm
TESTUPNPDESCGENOBJS = testupnpdescgen.o upnpdescgen.o
-@@ -62,7 +75,7 @@ install: minidlna
+@@ -62,7 +66,7 @@ install: minidlna
$(INSTALL) -d $(ETCINSTALLDIR)
$(INSTALL) --mode=0644 minidlna.conf $(ETCINSTALLDIR)