ports/163969: [maintainer-update] mplayer and mencoder ports to a recent snapshot
Thomas Zander
thomas.e.zander at googlemail.com
Thu Jan 12 18:01:00 UTC 2012
> #1 If some of the patches are already committed upstream, you would also need to change distfile, and maybe bump
> portversion.
> #2, the diffs on the Makefiles indicate you are not sending patch against current cvs Makefiles.
> Can you update your ports tree, and resubmit the patch once you know what happened upstream?
Okay, this is how it goes:
#1: I _know_ what happened upstream because I _make_ that distfile
(the mplayer developers don't do releases, this is left to the
maintainers of the respective OS distribution) and put it on a server
I have access to. Therefore distfile, PORTVERSION and PORTREVISION are
perfectly alright. So is the rest of the port (at least there weren't
any complaints when I called for testers on the ports mailing list, so
I assume it worked for them too).
#2: Done, attached.
@miwi: Would you be so kind to mirror the distfile as usual? Thanks in advance!
Best regards,
Riggs
-------------- next part --------------
diff -ruN /usr/ports/multimedia/mplayer/Makefile mplayer/Makefile
--- /usr/ports/multimedia/mplayer/Makefile 2011-08-21 10:11:55.000000000 +0200
+++ mplayer/Makefile 2011-12-31 00:36:07.699572135 +0100
@@ -7,15 +7,15 @@
PORTNAME= mplayer
PORTVERSION= ${MPLAYER_PORT_VERSION}
-PORTREVISION= 3
+PORTREVISION= 0
COMMENT= High performance media player supporting many formats
.include "${.CURDIR}/Makefile.shared"
OPTIONS= DEBUG "Include debug symbols in mplayer's binaries" off
-OPTIONS+= BLURAY "Build with libbluray support" off
OPTIONS+= RTCPU "Allow runtime CPU detection" on
OPTIONS+= OCFLAGS "Use optimized compiler flags" on
+OPTIONS+= OTCHAIN "Use up-to-date toolchain (gcc 4.6)" on
OPTIONS+= IPV6 "Include inet6 network support" on
OPTIONS+= X11 "Enable X11 support for mplayer's video output" on
OPTIONS+= X11XV "X11 video drivers: XV" on
@@ -51,13 +51,13 @@
OPTIONS+= THEORA "Enable ogg theora video support" off
OPTIONS+= VPX "Enable VP8 video via libvpx" off
OPTIONS+= SCHROEDINGER "Dirac codec via libschroedinger" off
-OPTIONS+= ASS "Enable ASS/SSA subtitle rendering" on
.if !defined(PACKAGE_BUILDING)
OPTIONS+= WIN32 "Enable win32 codec set on the IA32 arch" on
.endif
OPTIONS+= REALPLAYER "Enable real player plugin" off
OPTIONS+= LIVEMEDIA "Enable LIVE555 streaming support" off
OPTIONS+= SMB "Enable Samba input support" off
+OPTIONS+= BLURAY "Build with libbluray support" off
OPTIONS+= FRIBIDI "Enable FriBiDi support" off
OPTIONS+= LIRC "Enable lirc support" off
OPTIONS+= LIBCDIO "Enable libcdio support" off
@@ -80,8 +80,7 @@
BROKEN= Does not compile on sparc64
.endif
-CONFIGURE_ARGS+= --disable-ssse3 \
- --disable-directfb \
+CONFIGURE_ARGS+= --disable-directfb \
--disable-faac \
--disable-faad \
--disable-libdca \
@@ -95,15 +94,6 @@
.include "${.CURDIR}/Makefile.options"
-.if defined(WITH_ASS)
-LIB_DEPENDS+= ass.5:${PORTSDIR}/multimedia/libass
-BUILD_DEPENDS += pkg-config:${PORTSDIR}/devel/pkg-config
-LIBASS_PKGCONFIG_CFLAGS= pkg-config --cflags --silence-errors libass
-.else
-CONFIGURE_ARGS+= --disable-ass --disable-ass-internal --disable-enca
-LIBASS_PKGCONFIG_CFLAGS= ${ECHO_CMD}
-.endif
-
.if !defined(WITHOUT_GUI) && !defined(WITHOUT_X11)
MLINKS+= mplayer.1 gmplayer.1
PLIST_SUB+= GMPLAYER=""
@@ -170,7 +160,6 @@
BUILD_DEPENDS+= ${LOCALBASE}/modules/rtc.ko:${PORTSDIR}/emulators/rtc
RUN_DEPENDS+= ${LOCALBASE}/modules/rtc.ko:${PORTSDIR}/emulators/rtc
CONFIGURE_ARGS+= --enable-rtc
-CONFIGURE_ENV+= CFLAGS+="-I/${LOCALBASE}/include"
.else
CONFIGURE_ARGS+= --disable-rtc
.endif
@@ -236,8 +225,8 @@
@${ECHO_MSG} "N - O - T - E"
@${ECHO_MSG} ""
@${ECHO_MSG} "There are some knobs which *can* *not* be selected via the"
- @${ECHO_MSG} "OPTIONS framework. You might want to check the Makefile in"
- @${ECHO_MSG} "order to learn more about them."
+ @${ECHO_MSG} "OPTIONS framework. You might want to check Makefile.options"
+ @${ECHO_MSG} "in order to learn more about them."
.if !defined(WITHOUT_GUI) && !defined(WITHOUT_X11)
@${ECHO_MSG} "If you want to use the GUI, you can either install"
@@ -257,8 +246,6 @@
s|/dev/cdrom|${DEFAULT_CDROM_DEVICE}|' \
-e 's|/usr/local|${LOCALBASE}|' \
-e 's|-lbz2|/usr/lib/libbz2.so|' \
- -e 's|-L$$_prefix/lib|-L${LOCALBASE}/lib|' \
- -e 's|-I$$_prefix/include|-I${LOCALBASE}/include|' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
@${FIND} -E ${WRKSRC} -type f \
-iregex ".*(configure|.sh|Makefile)" -print0 | \
@@ -277,18 +264,6 @@
's|irqp = 1024|irqp = ${DEFAULT_KERN_HZ}|' \
${WRKSRC}/mplayer.c
.endif
- @${REINPLACE_CMD} \
- -e 's|%%LIBASS_PKGCONFIG_CFLAGS%%|${LIBASS_PKGCONFIG_CFLAGS}|' \
- ${BUILD_WRKSRC}/${MAKEFILE}
-
-post-configure:
- @${REINPLACE_CMD} -e 's#-pthread#${PTHREAD_LIBS}#g' \
- ${WRKSRC}/config.mak
- @${REINPLACE_CMD} \
- -e 's#HAVE_FAST_CMOV 1#HAVE_FAST_CMOV 0#g' \
- -e 's#HAVE_LOG2 1#HAVE_LOG2 0#g' \
- -e 's#HAVE_LOG2F 1#HAVE_LOG2F 0#g' \
- ${WRKSRC}/config.h
post-install:
@${MKDIR} ${DATADIR}
@@ -300,7 +275,7 @@
.endfor
.if !defined(WITHOUT_GUI) && !defined(WITHOUT_X11)
@${LN} -sf ${PREFIX}/bin/mplayer ${PREFIX}/bin/gmplayer
- ${INSTALL_DATA} ${WRKSRC}/etc/mplayer.xpm ${LOCALBASE}/share/pixmaps
+ ${INSTALL_DATA} ${WRKSRC}/gui/ui/pixmaps/mplayer.xpm ${LOCALBASE}/share/pixmaps
.endif
@${CAT} ${PKGMESSAGE}
diff -ruN /usr/ports/multimedia/mplayer/Makefile.options mplayer/Makefile.options
--- /usr/ports/multimedia/mplayer/Makefile.options 2011-08-21 10:11:55.000000000 +0200
+++ mplayer/Makefile.options 2011-12-31 02:16:15.700228847 +0100
@@ -7,8 +7,11 @@
# $FreeBSD: ports/multimedia/mplayer/Makefile.options,v 1.21 2011/08/21 08:11:55 crees Exp $
#
# Feature options:
-# These options influence some general behaviour of mplayer. Most of the featues,
+# These options influence some general behaviour of mplayer. Almost all of the featues,
# for example all the codecs, are selected via the OPTIONS framework.
+# The following options WITH_DVD_DEVICE, WITH_CDROM_DEVICE, WITH_LANG are *not*
+# selected via the options framework and must be set via make.conf or by passing
+# the variable to make during build, e.g. make WITH_DVD_DEVICE=/dev/cd0
#
# WITH_DVD_DEVICE=/path/to/desired/device
# default 5.x: /dev/acd0
@@ -37,19 +40,27 @@
DEBUG_FLAGS= -g -O -fomit-frame-pointer
.endif
.else
-.if !defined(WITHOUT_OCFLAGS)
-#CFLAGS+= -O3 -ffast-math -fomit-frame-pointer
-#Let mplayer determine its own cflags
-CFLAGS=
-.else
+#Historically, we manually set OCFLAGS to -O3 -ffast-math -fomit-frame-pointer
+#Nowadays, let mplayer determine its own optimised flags
+.if defined(WITHOUT_OCFLAGS)
CFLAGS+= -O -fomit-frame-pointer
+.else
+CONFIGURE_ENV+= CFLAGS=
.endif
-.endif
+.endif #WITH_DEBUG
.if !defined(WITHOUT_RTCPU)
CONFIGURE_ARGS+=--enable-runtime-cpudetection
.endif
+.if defined(WITH_OTCHAIN)
+USE_GCC?= 4.6+
+BUILD_DEPENDS+= ${LOCALBASE}/bin/as:${PORTSDIR}/devel/binutils
+.else
+CONFIGURE_ARGS+=--disable-ssse3 --disable-fast-cmov
+EXTRA_PATCHES+= ${FILESDIR}/extra-patch-base_system_gcc
+.endif
+
.if defined(WITHOUT_IPV6)
CONFIGURE_ARGS+= --disable-inet6
.else
@@ -62,7 +73,7 @@
CONFIGURE_ARGS+= --disable-gif
.endif
-.ifdef(WITH_OPENJPEG)
+.if defined(WITH_OPENJPEG)
LIB_DEPENDS+= openjpeg.2:${PORTSDIR}/graphics/openjpeg
.else
CONFIGURE_ARGS+= --disable-libopenjpeg
@@ -137,7 +148,6 @@
.if defined(WITH_BLURAY)
LIB_DEPENDS+= bluray.0:${PORTSDIR}/multimedia/libbluray
-CONFIGURE_ARGS+= --enable-bluray
.else
CONFIGURE_ARGS+= --disable-bluray
.endif
@@ -213,21 +223,16 @@
LIB_DEPENDS+= opencore-amrnb.0:${PORTSDIR}/audio/opencore-amr
.endif
-.ifdef(WITH_AMR_NB)
-CONFIGURE_ARGS+= --enable-libopencore_amrnb --enable-version3
-.else
+.ifdef(WITHOUT_AMR_NB)
CONFIGURE_ARGS+= --disable-libopencore_amrnb
.endif
-.ifdef(WITH_AMR_WB)
-CONFIGURE_ARGS+= --enable-libopencore_amrwb --enable-version3
-.else
+.ifdef(WITHOUT_AMR_WB)
CONFIGURE_ARGS+= --disable-libopencore_amrwb
.endif
.ifdef(WITH_GSM)
LIB_DEPENDS+= gsm.1:${PORTSDIR}/audio/gsm
-CONFIGURE_ARGS+= --enable-libgsm
.else
CONFIGURE_ARGS+= --disable-libgsm
.endif
@@ -235,8 +240,6 @@
.if defined(WITH_V4L)
BUILD_DEPENDS+= ${LOCALBASE}/include/linux/videodev2.h:${PORTSDIR}/multimedia/v4l_compat
LIB_DEPENDS+= v4l2.0:${PORTSDIR}/multimedia/libv4l
-CONFIGURE_ARGS+= --enable-tv-v4l1 \
- --enable-tv-v4l2
EXTRA_LIBS+= -lv4l1 -lv4l2
.else
CONFIGURE_ARGS+= --disable-tv-v4l1 \
diff -ruN /usr/ports/multimedia/mplayer/Makefile.shared mplayer/Makefile.shared
--- /usr/ports/multimedia/mplayer/Makefile.shared 2011-08-21 10:11:55.000000000 +0200
+++ mplayer/Makefile.shared 2011-12-31 01:07:39.440707758 +0100
@@ -4,7 +4,7 @@
#
# $FreeBSD: ports/multimedia/mplayer/Makefile.shared,v 1.13 2011/08/21 08:11:55 crees Exp $
-MPLAYER_SNAPSHOT_DATE= 2011-03-29
+MPLAYER_SNAPSHOT_DATE= 2011-12-18
MPLAYER_PORT_VERSION= 1.0.r${MPLAYER_SNAPSHOT_DATE:S/-//g}
CATEGORIES?= multimedia audio
MASTER_SITES= http://freebsd.unixfreunde.de/sources/ \
@@ -12,7 +12,7 @@
DISTNAME= mplayer-${MPLAYER_PORT_VERSION:S/.r/rc/g}
WRKSRC= ${WRKDIR}/mplayer-export-${MPLAYER_SNAPSHOT_DATE}
-MAINTAINER?= riggs at rrr.de
+MAINTAINER?= thomas.e.zander at googlemail.com
LICENSE= GPLv2
@@ -21,7 +21,7 @@
BUILD_DEPENDS= ${LOCALBASE}/bin/yasm:${PORTSDIR}/devel/yasm
-USE_BZIP2= yes
+USE_XZ= yes
USE_GMAKE= yes
USE_ICONV= yes
USE_NCURSES= yes
@@ -29,10 +29,16 @@
CONFIGURE_ENV= PTHREAD_CFLAGS="${PTHREAD_CFLAGS}" \
PTHREAD_LIBS="${PTHREAD_LIBS}" \
TMPDIR="${WRKSRC}"
-CONFIGURE_ARGS= --cc=${CC} \
- --host-cc=${CC} \
+CONFIGURE_ARGS= --cc="${CC}" \
+ --host-cc="${CC}" \
+ --as="${AS}" \
+ --extra-cflags="-I${PREFIX}/include -I${LOCALBASE}/include" \
+ --extra-libs="-L${PREFIX}/lib" \
--disable-bitmap-font \
- --disable-liba52
+ --disable-liba52 \
+ --disable-alsa \
+ --enable-ass-internal \
+ --disable-enca
WANT_GNOME= yes
WANT_SDL= yes
diff -ruN /usr/ports/multimedia/mplayer/distinfo mplayer/distinfo
--- /usr/ports/multimedia/mplayer/distinfo 2011-04-01 13:09:36.000000000 +0200
+++ mplayer/distinfo 2011-12-18 19:53:17.590634000 +0100
@@ -1,2 +1,2 @@
-SHA256 (mplayer-1.0rc20110329.tar.bz2) = 802a87f3d4ac77c2ea1e2b20c6a73951034d7553ac57acc496fea1b4b5565e17
-SIZE (mplayer-1.0rc20110329.tar.bz2) = 9864317
+SHA256 (mplayer-1.0rc20111218.tar.xz) = 9e70b0f5d3f0840024583cfedc186b4342d3385ed88b2085efc080e5c006c03f
+SIZE (mplayer-1.0rc20111218.tar.xz) = 9132500
diff -ruN /usr/ports/multimedia/mplayer/files/extra-patch-base_system_gcc mplayer/files/extra-patch-base_system_gcc
--- /usr/ports/multimedia/mplayer/files/extra-patch-base_system_gcc 1970-01-01 01:00:00.000000000 +0100
+++ mplayer/files/extra-patch-base_system_gcc 2011-12-31 01:35:34.322386519 +0100
@@ -0,0 +1,33 @@
+--- ffmpeg/libavutil/x86_cpu.h.orig 2010-10-06 03:26:13.000000000 +0200
++++ ffmpeg/libavutil/x86_cpu.h 2010-11-04 21:01:40.581647958 +0100
+@@ -71,7 +71,7 @@
+ #define HAVE_7REGS (ARCH_X86_64 || (HAVE_EBX_AVAILABLE && HAVE_EBP_AVAILABLE))
+ #define HAVE_6REGS (ARCH_X86_64 || (HAVE_EBX_AVAILABLE || HAVE_EBP_AVAILABLE))
+
+-#if ARCH_X86_64 && defined(PIC)
++#if ARCH_X86_64
+ # define BROKEN_RELOCATIONS 1
+ #endif
+
+--- configure.orig 2011-12-31 00:40:03.990976000 +0100
++++ configure 2011-12-31 01:33:51.407685009 +0100
+@@ -1533,7 +1533,7 @@
+ fi
+
+ extra_cflags="-I. -Iffmpeg $extra_cflags"
+-extra_ldflags="-lm $extra_ldflags"
++extra_ldflags="-lm $extra_ldflags -L$_prefix/lib"
+ _timer=timer-linux.c
+ _getch=getch2.c
+
+@@ -2683,10 +2683,6 @@
+ def_ebx_available='#define HAVE_EBX_AVAILABLE 0'
+ def_xmm_clobbers='#define HAVE_XMM_CLOBBERS 0'
+
+-if x86_64 ; then
+-inline_asm_check '"mov (%eax), %eax"' || die "Your binutils version is too old to compile for 64-bit"
+-fi
+-
+ if x86 ; then
+
+ echocheck ".align is a power of two"
diff -ruN /usr/ports/multimedia/mplayer/files/patch-Makefile mplayer/files/patch-Makefile
--- /usr/ports/multimedia/mplayer/files/patch-Makefile 2011-07-20 04:52:22.000000000 +0200
+++ mplayer/files/patch-Makefile 2011-12-29 03:33:59.803751900 +0100
@@ -1,18 +1,6 @@
--- Makefile.orig 2011-03-28 12:50:56.000000000 -0300
+++ Makefile 2011-07-18 23:23:16.000000000 -0300
-@@ -814,8 +814,10 @@
- mencoder$(EXESUF) mplayer$(EXESUF):
- $(CC) -o $@ $^ $(EXTRALIBS)
-
-+CFLAGS_LIBASS := $(shell %%LIBASS_PKGCONFIG_CFLAGS%%)
-+
- codec-cfg$(EXESUF): codec-cfg.c codec-cfg.h help_mp.h
-- $(HOST_CC) -O -DCODECS2HTML -I. -Iffmpeg -o $@ $<
-+ $(HOST_CC) -O -DCODECS2HTML $(CFLAGS_LIBASS) -I. -Iffmpeg -o $@ $<
-
- codecs.conf.h: codec-cfg$(EXESUF) etc/codecs.conf
- ./$^ > $@
-@@ -890,20 +892,16 @@
+@@ -899,20 +899,17 @@
install: $(INSTALL_TARGETS-yes)
install-dirs:
@@ -22,11 +10,12 @@
- $(INSTALL) -m 755 $(INSTALLSTRIP) $< $(BINDIR)
+install-mplayer: mplayer$(EXESUF) install-dirs
+ @${BSD_INSTALL_PROGRAM} mplayer$(EXESUF) $(BINDIR)
++
install-gui: install-mplayer
- -ln -sf mplayer$(EXESUF) $(BINDIR)/gmplayer$(EXESUF)
- $(INSTALL) -d $(DATADIR)/skins $(prefix)/share/pixmaps $(prefix)/share/applications
-- $(INSTALL) -m 644 etc/mplayer.xpm $(prefix)/share/pixmaps/
+- $(INSTALL) -m 644 etc/mplayer.png $(prefix)/share/pixmaps/
- $(INSTALL) -m 644 etc/mplayer.desktop $(prefix)/share/applications/
install-gui-man: $(foreach lang,$(MAN_LANGS),install-gui-man-$(lang))
diff -ruN /usr/ports/multimedia/mplayer/files/patch-configure mplayer/files/patch-configure
--- /usr/ports/multimedia/mplayer/files/patch-configure 2011-08-09 08:39:25.000000000 +0200
+++ mplayer/files/patch-configure 2011-12-29 03:33:59.804751164 +0100
@@ -1,6 +1,6 @@
---- configure.orig 2011-03-13 01:32:55.000000000 +0100
-+++ configure 2011-03-18 17:05:13.932557908 +0100
-@@ -614,7 +614,7 @@
+--- configure.orig 2011-12-15 15:01:05.000000000 +0100
++++ configure 2011-12-29 02:08:51.963305635 +0100
+@@ -635,7 +635,7 @@
_iwmmxt=auto
_mtrr=auto
_altivec=auto
@@ -9,7 +9,7 @@
_ranlib=ranlib
_windres=windres
_cc=cc
-@@ -1416,7 +1416,6 @@
+@@ -1447,7 +1447,6 @@
*)
echo "Unknown parameter: $ac_option"
@@ -17,53 +17,25 @@
;;
esac
-@@ -1525,8 +1524,8 @@
- _timer=timer-linux.c
- _getch=getch2.c
- if freebsd ; then
-- extra_ldflags="$extra_ldflags -L/usr/local/lib"
-- extra_cflags="$extra_cflags -I/usr/local/include"
-+ extra_ldflags="$extra_ldflags -L$_prefix/lib"
-+ extra_cflags="$extra_cflags -I$_prefix/include"
- fi
-
- if netbsd || dragonfly ; then
-@@ -1661,7 +1660,7 @@ else
- echores "$cc_version"
- break
- fi
-- cc_name_tmp=$($_cc -v 2>&1 | head -n 1 | cut -d ' ' -f 1)
-+ cc_name_tmp=$($_cc -v 2>&1 | awk "NR == 1 { if(\$1 == \"$system_name\") print \$2; else print \$1 }")
- if test "$cc_name_tmp" = "clang"; then
- echocheck "$_cc version"
- cc_vendor=clang
-@@ -3577,22 +3576,10 @@
+@@ -3565,7 +3564,7 @@
if linux ; then
THREAD_CFLAGS=-D_REENTRANT
elif freebsd || netbsd || openbsd || bsdos ; then
- THREAD_CFLAGS=-D_THREAD_SAFE
--fi
--if test "$_pthreads" = auto ; then
--cat > $TMPC << EOF
--#include <pthread.h>
--static void *func(void *arg) { return arg; }
--int main(void) { pthread_t tid; return pthread_create(&tid, 0, func, 0) == 0 ? 0 : 1; }
--EOF
--_pthreads=no
--if ! hpux ; then
-- for _ld_tmp in "-lpthreadGC2" "" "-lpthread" "-pthread" ; do
-- # for crosscompilation, we cannot execute the program, be happy if we can link statically
-- cc_check $THREAD_CFLAGS $_ld_tmp && (tmp_run || test "$_ld_static") && _ld_pthread="$_ld_tmp" && _pthreads=yes && break
-- done
--fi
+ THREAD_CFLAGS=${PTHREAD_CFLAGS}
fi
-+_pthreads=yes
-+_ld_pthread="${PTHREAD_LIBS}"
- if test "$_pthreads" = yes ; then
- test $_ld_pthread && res_comment="using $_ld_pthread"
- def_pthreads='#define HAVE_PTHREADS 1'
-@@ -6354,7 +6341,7 @@
+ if test "$_pthreads" = auto ; then
+ cat > $TMPC << EOF
+@@ -3575,7 +3574,7 @@
+ EOF
+ _pthreads=no
+ if ! hpux ; then
+- for ld_tmp in "-lpthreadGC2" "" "-lpthread" "-pthread" ; do
++ for ld_tmp in ${PTHREAD_LIBS} ; do
+ # for crosscompilation, we cannot execute the program, be happy if we can link statically
+ cc_check $THREAD_CFLAGS $ld_tmp && (tmp_run || test "$ld_static") && ld_pthread="$ld_tmp" && _pthreads=yes && break
+ done
+@@ -6216,7 +6215,7 @@
echocheck "libgsm"
if test "$_libgsm" = auto ; then
_libgsm=no
@@ -72,7 +44,7 @@
fi
if test "$_libgsm" = yes ; then
def_libgsm='#define CONFIG_LIBGSM 1'
-@@ -6852,6 +6839,16 @@
+@@ -6716,6 +6715,16 @@
nolibrtmp=no
def_librtmp='#define CONFIG_LIBRTMP 1'
inputmodules="librtmp $inputmodules"
@@ -89,16 +61,16 @@
else
nolibrtmp=yes
_librtmp=no
-@@ -7214,7 +7211,7 @@
- def_muxers='#define CONFIG_MUXERS 1'
- else
+@@ -7085,7 +7094,7 @@
+ echocheck "mencoder"
+ if test "$_mencoder" = no ; then
# mpeg1video for vf_lavc, snow for vf_uspp / vf_mcdeint,
- libavencoders="$mplayer_encoders MPEG1VIDEO_ENCODER SNOW_ENCODER"
+ libavencoders="$mplayer_encoders MPEG1VIDEO_ENCODER H263_ENCODER SNOW_ENCODER"
- libavmuxers=""
- def_muxers='#define CONFIG_MUXERS 0'
+ # needed for codec id -> tag conversion
+ libavmuxers="AVI_MUXER"
fi
-@@ -7559,8 +7556,11 @@
+@@ -7425,8 +7434,11 @@
if test "$_gui" = yes ; then
# Required libraries
@@ -112,7 +84,7 @@
die "The GUI requires libavcodec with PNG support (needs zlib)."
fi
test "$_freetype" = no && test "$_bitmap_font" = no &&
-@@ -7947,7 +7947,7 @@
+@@ -7991,7 +8003,7 @@
EXESUF = $_exesuf
EXESUFS_ALL = .exe
diff -ruN /usr/ports/multimedia/mplayer/files/patch-libao2-ao_oss.c mplayer/files/patch-libao2-ao_oss.c
--- /usr/ports/multimedia/mplayer/files/patch-libao2-ao_oss.c 2010-04-21 15:07:22.000000000 +0200
+++ mplayer/files/patch-libao2-ao_oss.c 2011-12-29 03:33:59.804751164 +0100
@@ -1,18 +1,89 @@
---- libao2/ao_oss.c.orig 2009-05-12 21:58:57.000000000 -0500
-+++ libao2/ao_oss.c 2009-07-23 19:58:44.870097203 -0500
-@@ -453,6 +453,7 @@
+--- libao2/ao_oss.c.orig 2010-01-11 21:27:52.000000000 +0100
++++ libao2/ao_oss.c 2011-12-29 01:06:49.227522915 +0100
+@@ -56,6 +56,8 @@
+ ""
+ };
+
++static int volume = -1;
++
+ /* Support for >2 output channels added 2001-11-25 - Steve Davies <steve at daviesfam.org> */
+
+ LIBAO_EXTERN(oss)
+@@ -72,6 +74,11 @@
+ case AF_FORMAT_S16_BE: return AFMT_S16_BE;
+ #ifdef AFMT_S24_PACKED
+ case AF_FORMAT_S24_LE: return AFMT_S24_PACKED;
++#elif defined(__FreeBSD__) && defined(AFMT_S24_LE)
++ case AF_FORMAT_U24_LE: return AFMT_U24_LE;
++ case AF_FORMAT_U24_BE: return AFMT_U24_BE;
++ case AF_FORMAT_S24_LE: return AFMT_S24_LE;
++ case AF_FORMAT_S24_BE: return AFMT_S24_BE;
+ #endif
+ #ifdef AFMT_U32_LE
+ case AF_FORMAT_U32_LE: return AFMT_U32_LE;
+@@ -115,6 +122,11 @@
+ case AFMT_S16_BE: return AF_FORMAT_S16_BE;
+ #ifdef AFMT_S24_PACKED
+ case AFMT_S24_PACKED: return AF_FORMAT_S24_LE;
++#elif defined(__FreeBSD__) && defined(AFMT_S24_LE)
++ case AFMT_U24_LE: return AF_FORMAT_U24_LE;
++ case AFMT_U24_BE: return AF_FORMAT_U24_BE;
++ case AFMT_S24_LE: return AF_FORMAT_S24_LE;
++ case AFMT_S24_BE: return AF_FORMAT_S24_BE;
+ #endif
+ #ifdef AFMT_U32_LE
+ case AFMT_U32_LE: return AF_FORMAT_U32_LE;
+@@ -434,9 +446,29 @@
+ audio_fd = -1;
+ }
+
++static void savevol(void){
++ int fd;
++ if (volume < 0) {
++ if ((fd = open(oss_mixer_device, O_RDONLY)) >= 0) {
++ ioctl(fd, MIXER_READ(oss_mixer_channel), &volume);
++ close(fd);
++ }
++ }
++}
++
++static void restorevol(void){
++ int fd;
++ if ((fd = open(oss_mixer_device, O_RDONLY)) >= 0) {
++ ioctl(fd, MIXER_WRITE(oss_mixer_channel), &volume);
++ close(fd);
++ }
++ volume = -1;
++}
++
+ // stop playing and empty buffers (for seeking/pause)
+ static void reset(void){
+ int oss_format;
++ savevol();
+ uninit(1);
+ audio_fd=open(dsp, O_WRONLY);
+ if(audio_fd < 0){
+@@ -448,6 +480,7 @@
fcntl(audio_fd, F_SETFD, FD_CLOEXEC);
#endif
+ ioctl (audio_fd, SNDCTL_DSP_SPEED, &ao_data.samplerate);
oss_format = format2oss(ao_data.format);
- if(ao_data.format == AF_FORMAT_AC3)
+ if(AF_FORMAT_IS_AC3(ao_data.format))
ioctl (audio_fd, SNDCTL_DSP_SPEED, &ao_data.samplerate);
-@@ -464,7 +465,6 @@
+@@ -459,13 +492,14 @@
int c = ao_data.channels-1;
ioctl (audio_fd, SNDCTL_DSP_STEREO, &c);
}
- ioctl (audio_fd, SNDCTL_DSP_SPEED, &ao_data.samplerate);
}
++ restorevol();
}
+ // stop playing, keep buffers (for pause)
+ static void audio_pause(void)
+ {
++ savevol();
+ prepause_space = get_space();
+ uninit(1);
+ }
diff -ruN /usr/ports/multimedia/mplayer/files/patch-libavcodec-Makefile mplayer/files/patch-libavcodec-Makefile
--- /usr/ports/multimedia/mplayer/files/patch-libavcodec-Makefile 2010-12-02 10:18:01.000000000 +0100
+++ mplayer/files/patch-libavcodec-Makefile 2011-11-26 19:48:35.700509000 +0100
@@ -1,11 +1,19 @@
---- ffmpeg/libavcodec/Makefile.orig 2010-11-02 09:32:04.000000000 +0100
-+++ ffmpeg/libavcodec/Makefile 2010-11-04 21:14:51.158501798 +0100
-@@ -623,7 +623,7 @@
+--- ffmpeg/libavcodec/Makefile.orig 2011-11-18 19:20:08.000000000 +0100
++++ ffmpeg/libavcodec/Makefile 2011-11-26 19:47:40.015896744 +0100
+@@ -699,14 +699,14 @@
# well.
OBJS-$(!CONFIG_SMALL) += inverse.o
---include $(SUBDIR)$(ARCH)/Makefile
-+-include $(SUBDIR)$(MPLAYER_ARCH)/Makefile
+--include $(SRC_PATH)/$(SUBDIR)$(ARCH)/Makefile
++-include $(SRC_PATH)/$(SUBDIR)$(MPLAYER_ARCH)/Makefile
- SKIPHEADERS = %_tablegen.h
+ SKIPHEADERS += %_tablegen.h \
+ %_tables.h \
+ aac_tablegen_decl.h \
+ fft-internal.h \
+ tableprint.h \
+- $(ARCH)/vp56_arith.h
++ $(MPLAYER_ARCH)/vp56_arith.h
SKIPHEADERS-$(CONFIG_DXVA2) += dxva2.h dxva2_internal.h
+ SKIPHEADERS-$(CONFIG_LIBDIRAC) += libdirac.h
+ SKIPHEADERS-$(CONFIG_LIBSCHROEDINGER) += libschroedinger.h
diff -ruN /usr/ports/multimedia/mplayer/files/patch-libavcodec-x86-snowdsp_mmx.c mplayer/files/patch-libavcodec-x86-snowdsp_mmx.c
--- /usr/ports/multimedia/mplayer/files/patch-libavcodec-x86-snowdsp_mmx.c 2011-04-01 13:09:36.000000000 +0200
+++ mplayer/files/patch-libavcodec-x86-snowdsp_mmx.c 1970-01-01 01:00:00.000000000 +0100
@@ -1,19 +0,0 @@
---- ffmpeg/libavcodec/x86/snowdsp_mmx.c.orig 2011-03-12 15:13:39.000000000 +0100
-+++ ffmpeg/libavcodec/x86/snowdsp_mmx.c 2011-03-25 13:12:53.087099520 +0100
-@@ -675,14 +675,14 @@
-
- #define snow_inner_add_yblock_sse2_end_8\
- "sal $1, %%"REG_c" \n\t"\
-- "add $"PTR_SIZE"*2, %1 \n\t"\
-+ "addb $"PTR_SIZE"*2, %1 \n\t"\
- snow_inner_add_yblock_sse2_end_common1\
- "sar $1, %%"REG_c" \n\t"\
- "sub $2, %2 \n\t"\
- snow_inner_add_yblock_sse2_end_common2
-
- #define snow_inner_add_yblock_sse2_end_16\
-- "add $"PTR_SIZE"*1, %1 \n\t"\
-+ "addw $"PTR_SIZE"*1, %1 \n\t"\
- snow_inner_add_yblock_sse2_end_common1\
- "dec %2 \n\t"\
- snow_inner_add_yblock_sse2_end_common2
diff -ruN /usr/ports/multimedia/mplayer/files/patch-libavfilter-Makefile mplayer/files/patch-libavfilter-Makefile
--- /usr/ports/multimedia/mplayer/files/patch-libavfilter-Makefile 1970-01-01 01:00:00.000000000 +0100
+++ mplayer/files/patch-libavfilter-Makefile 2011-11-26 19:51:31.069160000 +0100
@@ -0,0 +1,11 @@
+--- ffmpeg/libavfilter/Makefile.orig 2011-11-26 19:50:38.592463304 +0100
++++ ffmpeg/libavfilter/Makefile 2011-11-26 19:50:38.570462855 +0100
+@@ -153,7 +153,7 @@
+ OBJS-$(CONFIG_MP_FILTER) += libmpcodecs/pullup.o
+
+
+--include $(SRC_PATH)/$(SUBDIR)$(ARCH)/Makefile
++-include $(SRC_PATH)/$(SUBDIR)$(MPLAYER_ARCH)/Makefile
+
+ DIRS = x86 libmpcodecs
+
diff -ruN /usr/ports/multimedia/mplayer/files/patch-libavutil-x86_cpu.h mplayer/files/patch-libavutil-x86_cpu.h
--- /usr/ports/multimedia/mplayer/files/patch-libavutil-x86_cpu.h 2010-12-02 10:18:01.000000000 +0100
+++ mplayer/files/patch-libavutil-x86_cpu.h 1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
---- ffmpeg/libavutil/x86_cpu.h.orig 2010-10-06 03:26:13.000000000 +0200
-+++ ffmpeg/libavutil/x86_cpu.h 2010-11-04 21:01:40.581647958 +0100
-@@ -71,7 +71,7 @@
- #define HAVE_7REGS (ARCH_X86_64 || (HAVE_EBX_AVAILABLE && HAVE_EBP_AVAILABLE))
- #define HAVE_6REGS (ARCH_X86_64 || (HAVE_EBX_AVAILABLE || HAVE_EBP_AVAILABLE))
-
--#if ARCH_X86_64 && defined(PIC)
-+#if ARCH_X86_64
- # define BROKEN_RELOCATIONS 1
- #endif
-
diff -ruN /usr/ports/multimedia/mplayer/files/patch-libmpcodecs-vd_ffmpeg.c mplayer/files/patch-libmpcodecs-vd_ffmpeg.c
--- /usr/ports/multimedia/mplayer/files/patch-libmpcodecs-vd_ffmpeg.c 2011-04-01 13:09:36.000000000 +0200
+++ mplayer/files/patch-libmpcodecs-vd_ffmpeg.c 1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
---- libmpcodecs/vd_ffmpeg.c.orig 2011-02-05 15:02:49.000000000 +0100
-+++ libmpcodecs/vd_ffmpeg.c 2011-03-24 19:10:08.064575435 +0100
-@@ -423,7 +423,7 @@
- }
- /* Pass palette to codec */
- if (sh->bih && (sh->bih->biBitCount <= 8)) {
-- avctx->palctrl = calloc(1, sizeof(AVPaletteControl));
-+ avctx->palctrl = av_malloc(sizeof(AVPaletteControl));
- avctx->palctrl->palette_changed = 1;
- if (sh->bih->biSize-sizeof(*sh->bih))
- /* Palette size in biSize */
diff -ruN /usr/ports/multimedia/mplayer/files/patch-stream-tvi_v4l2.c mplayer/files/patch-stream-tvi_v4l2.c
--- /usr/ports/multimedia/mplayer/files/patch-stream-tvi_v4l2.c 2010-04-21 15:07:22.000000000 +0200
+++ mplayer/files/patch-stream-tvi_v4l2.c 2011-11-26 20:10:02.648772000 +0100
@@ -1,14 +1,14 @@
---- stream/tvi_v4l2.c 2007-10-07 23:49:26.000000000 +0400
-+++ stream/tvi_v4l2.c 2010-01-27 13:25:47.000000000 +0300
-@@ -38,7 +38,6 @@ known issues:
- #ifdef HAVE_SYS_SYSINFO_H
- #include <sys/sysinfo.h>
- #endif
+--- stream/tvi_v4l2.c.orig 2011-06-26 16:42:35.000000000 +0200
++++ stream/tvi_v4l2.c 2011-11-26 20:09:03.369654854 +0100
+@@ -52,7 +52,6 @@
+ #ifdef HAVE_SYS_VIDEOIO_H
+ #include <sys/videoio.h>
+ #else
-#include <linux/types.h>
#include <linux/videodev2.h>
+ #endif
#include "mp_msg.h"
- #include "libmpcodecs/img_format.h"
-@@ -46,6 +46,14 @@ known issues:
+@@ -62,6 +61,14 @@
#include "tv.h"
#include "audio_in.h"
diff -ruN /usr/ports/multimedia/mplayer/files/patch-sub__subreader.c mplayer/files/patch-sub__subreader.c
--- /usr/ports/multimedia/mplayer/files/patch-sub__subreader.c 2011-08-01 05:40:30.000000000 +0200
+++ mplayer/files/patch-sub__subreader.c 1970-01-01 01:00:00.000000000 +0100
@@ -1,13 +0,0 @@
---- sub/subreader.c.orig 2011-07-22 23:08:52.000000000 -0400
-+++ sub/subreader.c 2011-07-22 23:26:15.000000000 -0400
-@@ -2509,8 +2509,10 @@
- strip_markup = 1;
- #endif
- if (!strip_markup) {
-+#ifdef CONFIG_ASS
- subassconvert_subrip(txt, buf, MAX_SUBLINE + 1);
- sub->text[sub->lines] = buf;
-+#endif
- } else {
- for (i = 0; i < len && pos < MAX_SUBLINE; i++) {
- char c = txt[i];
diff -ruN /usr/ports/multimedia/mplayer/files/patch-vidix-radeon_vid.c mplayer/files/patch-vidix-radeon_vid.c
--- /usr/ports/multimedia/mplayer/files/patch-vidix-radeon_vid.c 2010-04-21 15:07:23.000000000 +0200
+++ mplayer/files/patch-vidix-radeon_vid.c 1970-01-01 01:00:00.000000000 +0100
@@ -1,11 +0,0 @@
---- vidix/radeon_vid.c.orig 2009-05-12 21:58:57.000000000 -0500
-+++ vidix/radeon_vid.c 2009-07-23 20:43:25.733650341 -0500
-@@ -345,6 +345,8 @@
- { DEVICE_ATI_RAGE_128_PRO2, 0 },
- { DEVICE_ATI_RAGE_128_PRO3, 0 },
- /* these seem to be based on rage 128 instead of mach64 */
-+ { DEVICE_ATI_RAGE_MOBILITY_M4, 0 },
-+ { DEVICE_ATI_RAGE_MOBILITY_M42, 0 },
- { DEVICE_ATI_RAGE_MOBILITY_M3, 0 },
- { DEVICE_ATI_RAGE_MOBILITY_M32, 0 },
- #else
diff -ruN /usr/ports/multimedia/mplayer/files/pkg-message.in mplayer/files/pkg-message.in
--- /usr/ports/multimedia/mplayer/files/pkg-message.in 2011-04-01 13:09:36.000000000 +0200
+++ mplayer/files/pkg-message.in 2011-12-29 14:23:44.850017793 +0100
@@ -17,14 +17,4 @@
%%DATADIR%%/examples/etc
===================================================================
-If seeking in streams causes the playback volume to be reset to
-the previous setting (on 8.x or newer system with VPC enabled),
-you and you dislike this behaviour, you have two options:
-- Use mplayer's -softvol command line option
-- Set the sysctl hw.snd.vpc_autoreset to 0
-===================================================================
-ffmpeg's ogg demuxer is currently broken for ogg streams.
-A possible workaround is the command line option'-demuxer ogg' when
-playing these streams.
-===================================================================
diff -ruN /usr/ports/multimedia/mencoder/Makefile mencoder/Makefile
--- /usr/ports/multimedia/mencoder/Makefile 2011-12-21 09:48:27.000000000 +0100
+++ mencoder/Makefile 2012-01-12 18:12:17.310144279 +0100
@@ -6,22 +6,22 @@
PORTNAME= mencoder
PORTVERSION= ${MPLAYER_PORT_VERSION}
-PORTREVISION= 4
+PORTREVISION= 0
COMMENT= Convenient video file and movie encoder
RESTRICTED= Port has restricted dependencies
.include "${.CURDIR}/../mplayer/Makefile.shared"
OPTIONS= DEBUG "Include debug symbols in mencoder's binary" off
-OPTIONS+= BLURAY "Build with libbluray support" off
-OPTIONS+= FONTCONFIG "Enable fontconfig support" off
OPTIONS+= RTCPU "Allow runtime CPU detection" on
OPTIONS+= OCFLAGS "Use optimized compiler flags" on
+OPTIONS+= OTCHAIN "Use up-to-date toolchain (gcc 4.6)" on
OPTIONS+= IPV6 "Include inet6 network support" on
OPTIONS+= JACK "Enable JackIt audio server support" off
OPTIONS+= NAS "Enable NAS sound server support" off
OPTIONS+= OPENAL "Enable OpenAL sound support" off
OPTIONS+= PULSE "Enable PulseAudio" off
+OPTIONS+= FONTCONFIG "Enable fontconfig support" off
OPTIONS+= LIBUNGIF "Enable gif support" on
OPTIONS+= OPENJPEG "Enable JPEG2000 support" off
OPTIONS+= MNG "Enable MNG input support" off
@@ -41,10 +41,10 @@
OPTIONS+= VPX "Enable VP8 video via libvpx" off
OPTIONS+= DIRAC "Enable dirac video codec support" off
OPTIONS+= SCHROEDINGER "Dirac codec via libschroedinger" off
-OPTIONS+= ASS "Enable ASS/SSA subtitle rendering" on
OPTIONS+= REALPLAYER "Enable real player plugin" off
OPTIONS+= LIVEMEDIA "Enable LIVE555 streaming support" off
OPTIONS+= SMB "Enable Samba input support" off
+OPTIONS+= BLURAY "Build with libbluray support" off
OPTIONS+= FRIBIDI "Enable FriBiDi support" off
OPTIONS+= LIBCDIO "Enable libcdio support" off
OPTIONS+= CDPARANOIA "Enable cdparanoia support" off
@@ -55,15 +55,17 @@
MAN1= mencoder.1
PATCHDIR= ${.CURDIR}/../mplayer/files
+FILESDIR= ${PATCHDIR}
DATADIR= ${PREFIX}/share/mplayer
TOOLFILES= aconvert.sh binary_codecs.sh calcbpp.pl \
checktree.sh countquant.pl divx2svcd.sh \
dvd2divxscript.pl edgedetect.fp edgeenh.fp \
emboss.fp mencvcd.sh midentify.sh \
- mpconsole.sh mplmult.sh plotpsnr.pl \
- psnr-video.sh qepdvcd.sh subedit.pl \
- subsearch.sh w32codec_dl.pl wma2ogg.pl \
+ mpconsole.sh mphelp_check.py mplmult.sh \
+ plotpsnr.pl psnr-video.sh qepdvcd.sh \
+ subedit.pl subsearch.sh vobshift.py \
+ w32codec_dl.pl wma2ogg.pl
.include <bsd.port.pre.mk>
@@ -83,7 +85,6 @@
--disable-aa \
--disable-joystick \
--disable-directfb \
- --disable-ssse3 \
--disable-mpg123 \
--disable-musepack
@@ -91,15 +92,6 @@
.include "${.CURDIR}/../mplayer/Makefile.options"
-.if defined(WITH_ASS)
-LIB_DEPENDS+= ass.5:${PORTSDIR}/multimedia/libass
-BUILD_DEPENDS += pkg-config:${PORTSDIR}/devel/pkg-config
-LIBASS_PKGCONFIG_CFLAGS= pkg-config --cflags --silence-errors libass
-.else
-CONFIGURE_ARGS+= --disable-ass --disable-ass-internal --disable-enca
-LIBASS_PKGCONFIG_CFLAGS= ${ECHO_CMD}
-.endif
-
.if defined(WITH_FONTCONFIG)
LIB_DEPENDS+= fontconfig.1:${PORTSDIR}/x11-fonts/fontconfig
.else
@@ -156,8 +148,6 @@
s|/dev/cdrom|${DEFAULT_CDROM_DEVICE}|' \
-e 's|/usr/local|${LOCALBASE}|' \
-e 's|-lbz2|/usr/lib/libbz2.so|' \
- -e 's|-L$$_prefix/lib|-L${LOCALBASE}/lib|' \
- -e 's|-I$$_prefix/include|-I${LOCALBASE}/include|' \
${CONFIGURE_WRKSRC}/${CONFIGURE_SCRIPT}
@${FIND} -E ${WRKSRC} -type f \
-iregex ".*(configure|.sh|Makefile)" -print0 | \
@@ -171,18 +161,6 @@
's|/usr/\\:local/\\:etc/\\:mplayer|${DATADIR:S/\//\/\\\:/g}|g ; \
s|/dev/\\:(dvd[[:alnum:]]*[[:>:]])|${DEFAULT_DVD_DEVICE:S/dev\//dev\/\\\:/}|g ; \
s|/dev/\\:(cdrom[[:alnum:]]*[[:>:]])|${DEFAULT_CDROM_DEVICE:S/dev\//dev\/\\\:/}|g'
- @${REINPLACE_CMD} \
- -e 's|%%LIBASS_PKGCONFIG_CFLAGS%%|${LIBASS_PKGCONFIG_CFLAGS}|' \
- ${BUILD_WRKSRC}/${MAKEFILE}
-
-post-configure:
- @${REINPLACE_CMD} -e 's#-pthread#${PTHREAD_LIBS}#g' \
- ${WRKSRC}/config.mak
- @${REINPLACE_CMD} \
- -e 's#HAVE_FAST_CMOV 1#HAVE_FAST_CMOV 0#g' \
- -e 's#HAVE_LOG2 1#HAVE_LOG2 0#g' \
- -e 's#HAVE_LOG2F 1#HAVE_LOG2F 0#g' \
- ${WRKSRC}/config.h
do-install:
@${INSTALL_PROGRAM} ${WRKSRC}/mencoder ${PREFIX}/bin
diff -ruN /usr/ports/multimedia/mencoder/distinfo mencoder/distinfo
--- /usr/ports/multimedia/mencoder/distinfo 2011-04-01 13:09:36.000000000 +0200
+++ mencoder/distinfo 2011-12-18 19:53:29.829245000 +0100
@@ -1,2 +1,2 @@
-SHA256 (mplayer-1.0rc20110329.tar.bz2) = 802a87f3d4ac77c2ea1e2b20c6a73951034d7553ac57acc496fea1b4b5565e17
-SIZE (mplayer-1.0rc20110329.tar.bz2) = 9864317
+SHA256 (mplayer-1.0rc20111218.tar.xz) = 9e70b0f5d3f0840024583cfedc186b4342d3385ed88b2085efc080e5c006c03f
+SIZE (mplayer-1.0rc20111218.tar.xz) = 9132500
diff -ruN /usr/ports/multimedia/mencoder/pkg-plist mencoder/pkg-plist
--- /usr/ports/multimedia/mencoder/pkg-plist 2010-04-21 15:07:23.000000000 +0200
+++ mencoder/pkg-plist 2011-12-04 19:57:32.795726000 +0100
@@ -12,12 +12,14 @@
%%DATADIR%%/tools/mencvcd.sh
%%DATADIR%%/tools/midentify.sh
%%DATADIR%%/tools/mpconsole.sh
+%%DATADIR%%/tools/mphelp_check.py
%%DATADIR%%/tools/mplmult.sh
%%DATADIR%%/tools/plotpsnr.pl
%%DATADIR%%/tools/psnr-video.sh
%%DATADIR%%/tools/qepdvcd.sh
%%DATADIR%%/tools/subedit.pl
%%DATADIR%%/tools/subsearch.sh
+%%DATADIR%%/tools/vobshift.py
%%DATADIR%%/tools/w32codec_dl.pl
%%DATADIR%%/tools/wma2ogg.pl
@dirrm %%DATADIR%%/tools
More information about the freebsd-ports-bugs
mailing list