packages/minidlna: various changes:
authorNicolas Thill <nico@openwrt.org>
Sun, 13 Nov 2011 22:16:28 +0000 (22:16 +0000)
committerNicolas Thill <nico@openwrt.org>
Sun, 13 Nov 2011 22:16:28 +0000 (22:16 +0000)
 * fix "invasive" patches (those introducing a STAGING_DIR var into upstream Makefiles)
 * pass proper target OS name/version, not host ones
 * change db path to /var/run/minidlna and log path to /var/log
 * use new service functions

SVN-Revision: 29081

multimedia/minidlna/Makefile
multimedia/minidlna/files/minidlna.init
multimedia/minidlna/patches/010-genconfig-checks.patch
multimedia/minidlna/patches/020-makefile-tweaks.patch

index 8adc0138fba9aa16aabade8654065a2248851615..b9bee58f82a6d65892b79fd7118fc5ca556064c5 100644 (file)
@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
 
 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
@@ -17,13 +17,10 @@ PKG_MD5SUM:=3de2f6b54f43bb998dfad3c8fa75cef3
 
 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
@@ -43,6 +40,40 @@ define Package/minidlna/conffiles
 /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/
index 2886ef39ed6bca2305534ed44defd1165cf7d294..64f9d3220d2968443e47b0b84e5670a041c73dd2 100644 (file)
@@ -2,14 +2,15 @@
 # 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
 }
index 368f408a124449da2243bd64c97ae2be15c7009b..7e3be031b76a73f4b1e10a4598bd9bd78eab2562 100644 (file)
@@ -1,6 +1,29 @@
 --- 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}
@@ -48,7 +81,7 @@
  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}
index 18d901cf7926111de249014baf95f997a82a0200..887ebe45c7739e96dfb87f9377cf67e231500f35 100644 (file)
@@ -1,41 +1,43 @@
 --- 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)