[vlc-devel] [PATCH] contrib: more consistent unpack target names
Rémi Denis-Courmont
remi at remlab.net
Mon Aug 14 09:55:36 CEST 2017
Le 14 août 2017 09:49:53 GMT+03:00, Steve Lhomme <robux4 at videolabs.io> a écrit :
>matches the name of the package to build
>---
> contrib/src/a52/rules.mak | 4 ++--
> contrib/src/ass/rules.mak | 4 ++--
> contrib/src/dca/rules.mak | 4 ++--
> contrib/src/dvbpsi/rules.mak | 4 ++--
> contrib/src/ebml/rules.mak | 4 ++--
> contrib/src/freetype2/rules.mak | 4 ++--
> contrib/src/gme/rules.mak | 4 ++--
> contrib/src/gpg-error/rules.mak | 4 ++--
> contrib/src/kate/rules.mak | 4 ++--
> contrib/src/mad/rules.mak | 4 ++--
> contrib/src/matroska/rules.mak | 4 ++--
> contrib/src/modplug/rules.mak | 4 ++--
> contrib/src/mpcdec/rules.mak | 8 ++++----
> contrib/src/ogg/rules.mak | 4 ++--
> contrib/src/shout/rules.mak | 4 ++--
> contrib/src/sidplay2/rules.mak | 4 ++--
> contrib/src/theora/rules.mak | 4 ++--
> contrib/src/vorbis/rules.mak | 4 ++--
> contrib/src/vpx/rules.mak | 4 ++--
> 19 files changed, 40 insertions(+), 40 deletions(-)
>
>diff --git a/contrib/src/a52/rules.mak b/contrib/src/a52/rules.mak
>index 00a9d76b59..3f5926f4c2 100644
>--- a/contrib/src/a52/rules.mak
>+++ b/contrib/src/a52/rules.mak
>@@ -12,7 +12,7 @@ $(TARBALLS)/a52dec-$(A52DEC_VERSION).tar.gz:
>
> .sum-a52: a52dec-$(A52DEC_VERSION).tar.gz
>
>-a52dec: a52dec-$(A52DEC_VERSION).tar.gz .sum-a52
>+a52: a52dec-$(A52DEC_VERSION).tar.gz .sum-a52
> $(UNPACK)
> $(APPLY) $(SRC)/a52/liba52-pic.patch
> $(APPLY) $(SRC)/a52/liba52-silence.patch
>@@ -22,7 +22,7 @@ ifndef HAVE_FPU
> endif
> $(MOVE)
>
>-.a52: a52dec
>+.a52: a52
> $(RECONF)
> cd $< && $(HOSTVARS) ./configure $(HOSTCONF)
> cd $</liba52 && $(MAKE) install
>diff --git a/contrib/src/ass/rules.mak b/contrib/src/ass/rules.mak
>index 2ee548b4f0..aeb601b071 100644
>--- a/contrib/src/ass/rules.mak
>+++ b/contrib/src/ass/rules.mak
>@@ -39,7 +39,7 @@ $(TARBALLS)/libass-$(ASS_VERSION).tar.gz:
>
> .sum-ass: libass-$(ASS_VERSION).tar.gz
>
>-libass: libass-$(ASS_VERSION).tar.gz .sum-ass
>+ass: libass-$(ASS_VERSION).tar.gz .sum-ass
> $(UNPACK)
> $(APPLY) $(SRC)/ass/ass-macosx.patch
> ifdef HAVE_WIN32
>@@ -79,7 +79,7 @@ else
> ASS_CFLAGS += -g
> endif
>
>-.ass: libass
>+.ass: ass
> $(RECONF)
> cd $< && $(HOSTVARS) CFLAGS="$(CFLAGS) $(ASS_CFLAGS)" ./configure
>$(HOSTCONF) $(ASS_CONF)
> cd $< && $(MAKE) install
>diff --git a/contrib/src/dca/rules.mak b/contrib/src/dca/rules.mak
>index 2b977a0c42..35d7967694 100644
>--- a/contrib/src/dca/rules.mak
>+++ b/contrib/src/dca/rules.mak
>@@ -17,14 +17,14 @@ $(TARBALLS)/libdca-$(DCA_VERSION).tar.bz2:
>
> .sum-dca: libdca-$(DCA_VERSION).tar.bz2
>
>-libdca: libdca-$(DCA_VERSION).tar.bz2 .sum-dca
>+dca: libdca-$(DCA_VERSION).tar.bz2 .sum-dca
> $(UNPACK)
> #$(APPLY) $(SRC)/dca/libdca-llvm-gcc.patch
> $(APPLY) $(SRC)/dca/libdca-inline.patch
> $(UPDATE_AUTOCONFIG) && cd $(UNPACK_DIR) && mv config.guess config.sub
>autotools
> $(MOVE)
>
>-.dca: libdca
>+.dca: dca
> $(RECONF)
> cd $< && $(HOSTVARS) CFLAGS="$(CFLAGS) -std=gnu89" ./configure
>$(HOSTCONF)
> cd $< && $(MAKE) -C include install
>diff --git a/contrib/src/dvbpsi/rules.mak
>b/contrib/src/dvbpsi/rules.mak
>index 3f5f15e701..a303ea3d7a 100644
>--- a/contrib/src/dvbpsi/rules.mak
>+++ b/contrib/src/dvbpsi/rules.mak
>@@ -13,14 +13,14 @@ $(TARBALLS)/libdvbpsi-$(DVBPSI_VERSION).tar.bz2:
>
> .sum-dvbpsi: libdvbpsi-$(DVBPSI_VERSION).tar.bz2
>
>-libdvbpsi: libdvbpsi-$(DVBPSI_VERSION).tar.bz2 .sum-dvbpsi
>+dvbpsi: libdvbpsi-$(DVBPSI_VERSION).tar.bz2 .sum-dvbpsi
> $(UNPACK)
> $(UPDATE_AUTOCONFIG) && cd $(UNPACK_DIR) && mv config.guess config.sub
>.auto
> $(APPLY) $(SRC)/dvbpsi/dvbpsi-noexamples.patch
> $(APPLY) $(SRC)/dvbpsi/dvbpsi-sys-types.patch
> $(MOVE)
>
>-.dvbpsi: libdvbpsi
>+.dvbpsi: dvbpsi
> cd $< && $(HOSTVARS) ./configure $(HOSTCONF)
> cd $< && $(MAKE) install
> touch $@
>diff --git a/contrib/src/ebml/rules.mak b/contrib/src/ebml/rules.mak
>index d857aac7d6..65e16a8ae6 100644
>--- a/contrib/src/ebml/rules.mak
>+++ b/contrib/src/ebml/rules.mak
>@@ -8,7 +8,7 @@ $(TARBALLS)/libebml-$(EBML_VERSION).tar.bz2:
>
> .sum-ebml: libebml-$(EBML_VERSION).tar.bz2
>
>-libebml: libebml-$(EBML_VERSION).tar.bz2 .sum-ebml
>+ebml: libebml-$(EBML_VERSION).tar.bz2 .sum-ebml
> $(UNPACK)
> $(MOVE)
>
>@@ -16,7 +16,7 @@ libebml: libebml-$(EBML_VERSION).tar.bz2 .sum-ebml
>EBML_EXTRA_FLAGS = CXXFLAGS="${CXXFLAGS} -fexceptions
>-fvisibility=hidden" \
> CPPFLAGS=""
>
>-.ebml: libebml
>+.ebml: ebml
> cd $< && $(HOSTVARS) ./configure $(HOSTCONF) $(EBML_EXTRA_FLAGS)
> cd $< && $(MAKE) install
> touch $@
>diff --git a/contrib/src/freetype2/rules.mak
>b/contrib/src/freetype2/rules.mak
>index 42df3922c6..9a0f8ac541 100644
>--- a/contrib/src/freetype2/rules.mak
>+++ b/contrib/src/freetype2/rules.mak
>@@ -13,14 +13,14 @@ $(TARBALLS)/freetype-$(FREETYPE2_VERSION).tar.gz:
>
> .sum-freetype2: freetype-$(FREETYPE2_VERSION).tar.gz
>
>-freetype: freetype-$(FREETYPE2_VERSION).tar.gz .sum-freetype2
>+freetype2: freetype-$(FREETYPE2_VERSION).tar.gz .sum-freetype2
> $(UNPACK)
> $(call pkg_static, "builds/unix/freetype2.in")
> $(MOVE)
>
> DEPS_freetype2 = zlib $(DEPS_zlib)
>
>-.freetype2: freetype
>+.freetype2: freetype2
> cd $< && cp builds/unix/install-sh .
> sed -i.orig s/-ansi// $</builds/unix/configure
> cd $< && GNUMAKE=$(MAKE) $(HOSTVARS) ./configure --with-harfbuzz=no
>--with-zlib=yes --without-png --with-bzip2=no $(HOSTCONF)
>diff --git a/contrib/src/gme/rules.mak b/contrib/src/gme/rules.mak
>index bc85a99f67..1edca7c549 100644
>--- a/contrib/src/gme/rules.mak
>+++ b/contrib/src/gme/rules.mak
>@@ -10,14 +10,14 @@ $(TARBALLS)/game-music-emu-$(GME_VERSION).tar.bz2:
>
> .sum-gme: game-music-emu-$(GME_VERSION).tar.bz2
>
>-game-music-emu: game-music-emu-$(GME_VERSION).tar.bz2 .sum-gme
>+gme: game-music-emu-$(GME_VERSION).tar.bz2 .sum-gme
> $(UNPACK)
> $(APPLY) $(SRC)/gme/gme-static.patch
> $(APPLY) $(SRC)/gme/gme-quotes.patch
> $(APPLY) $(SRC)/gme/skip-underrun.patch
> $(MOVE)
>
>-.gme: game-music-emu toolchain.cmake
>+.gme: gme toolchain.cmake
> cd $< && $(HOSTVARS_PIC) $(CMAKE) .
> cd $< && $(MAKE) install
> touch $@
>diff --git a/contrib/src/gpg-error/rules.mak
>b/contrib/src/gpg-error/rules.mak
>index 025fdc0455..8fb60ede80 100644
>--- a/contrib/src/gpg-error/rules.mak
>+++ b/contrib/src/gpg-error/rules.mak
>@@ -7,7 +7,7 @@ $(TARBALLS)/libgpg-error-$(GPGERROR_VERSION).tar.bz2:
>
> .sum-gpg-error: libgpg-error-$(GPGERROR_VERSION).tar.bz2
>
>-libgpg-error: libgpg-error-$(GPGERROR_VERSION).tar.bz2 .sum-gpg-error
>+gpg-error: libgpg-error-$(GPGERROR_VERSION).tar.bz2 .sum-gpg-error
> $(UNPACK)
> ifdef HAVE_WIN32
> $(APPLY) $(SRC)/gpg-error/windres-make.patch
>@@ -40,7 +40,7 @@ else
> endif
> endif
>
>-.gpg-error: libgpg-error
>+.gpg-error: gpg-error
> $(RECONF)
> cd $< && $(HOSTVARS) ./configure $(HOSTCONF) --disable-nls
>--disable-shared --disable-languages --disable-tests
> cd $< && $(MAKE) install
>diff --git a/contrib/src/kate/rules.mak b/contrib/src/kate/rules.mak
>index 5236beda96..d8db111a89 100644
>--- a/contrib/src/kate/rules.mak
>+++ b/contrib/src/kate/rules.mak
>@@ -13,13 +13,13 @@ $(TARBALLS)/libkate-$(KATE_VERSION).tar.gz:
>
> .sum-kate: libkate-$(KATE_VERSION).tar.gz
>
>-libkate: libkate-$(KATE_VERSION).tar.gz .sum-kate
>+kate: libkate-$(KATE_VERSION).tar.gz .sum-kate
> $(UNPACK)
> $(MOVE)
>
> DEPS_kate = ogg $(DEPS_ogg)
>
>-.kate: libkate
>+.kate: kate
> cd $< && $(HOSTVARS) ./configure $(HOSTCONF) \
> --disable-valgrind \
> --disable-doc
>diff --git a/contrib/src/mad/rules.mak b/contrib/src/mad/rules.mak
>index e49a733b75..add8f79968 100644
>--- a/contrib/src/mad/rules.mak
>+++ b/contrib/src/mad/rules.mak
>@@ -15,7 +15,7 @@ $(TARBALLS)/libmad-$(MAD_VERSION).tar.gz:
>
> .sum-mad: libmad-$(MAD_VERSION).tar.gz
>
>-libmad: libmad-$(MAD_VERSION).tar.gz .sum-mad
>+mad: libmad-$(MAD_VERSION).tar.gz .sum-mad
> $(UNPACK)
> ifdef HAVE_DARWIN_OS
> cd $@-$(MAD_VERSION) && sed \
>@@ -33,7 +33,7 @@ endif
> $(APPLY) $(SRC)/mad/check-bitstream-length.patch
> $(MOVE)
>
>-.mad: libmad
>+.mad: mad
> $(RECONF)
> ifdef HAVE_IOS
> cd $< && $(HOSTVARS) CCAS="$(AS)" CFLAGS="$(CFLAGS) -O3" ./configure
>$(HOSTCONF) $(MAD_CONF)
>diff --git a/contrib/src/matroska/rules.mak
>b/contrib/src/matroska/rules.mak
>index 1420b9f291..9d2cd0b8fc 100644
>--- a/contrib/src/matroska/rules.mak
>+++ b/contrib/src/matroska/rules.mak
>@@ -11,14 +11,14 @@
>$(TARBALLS)/libmatroska-$(MATROSKA_VERSION).tar.bz2:
>
> .sum-matroska: libmatroska-$(MATROSKA_VERSION).tar.bz2
>
>-libmatroska: libmatroska-$(MATROSKA_VERSION).tar.bz2 .sum-matroska
>+matroska: libmatroska-$(MATROSKA_VERSION).tar.bz2 .sum-matroska
> $(UNPACK)
> $(call pkg_static,"libmatroska.pc.in")
> $(MOVE)
>
> MATROSKA_EXTRA_FLAGS = CXXFLAGS="${CXXFLAGS} -fvisibility=hidden"
>
>-.matroska: libmatroska
>+.matroska: matroska
> cd $< && $(HOSTVARS) ./configure $(HOSTCONF) $(MATROSKA_EXTRA_FLAGS)
> cd $< && $(MAKE) install
> touch $@
>diff --git a/contrib/src/modplug/rules.mak
>b/contrib/src/modplug/rules.mak
>index 29507574e1..f73e60a5ac 100644
>--- a/contrib/src/modplug/rules.mak
>+++ b/contrib/src/modplug/rules.mak
>@@ -13,13 +13,13 @@ $(TARBALLS)/libmodplug-$(MODPLUG_VERSION).tar.gz:
>
> .sum-modplug: libmodplug-$(MODPLUG_VERSION).tar.gz
>
>-libmodplug: libmodplug-$(MODPLUG_VERSION).tar.gz .sum-modplug
>+modplug: libmodplug-$(MODPLUG_VERSION).tar.gz .sum-modplug
> $(UNPACK)
> $(APPLY) $(SRC)/modplug/modplug-win32-static.patch
> $(call pkg_static,"libmodplug.pc.in")
> $(MOVE)
>
>-.modplug: libmodplug
>+.modplug: modplug
> $(RECONF)
> cd $< && $(HOSTVARS) ./configure $(HOSTCONF)
> cd $< && $(MAKE) install
>diff --git a/contrib/src/mpcdec/rules.mak
>b/contrib/src/mpcdec/rules.mak
>index 8b1d3c74a3..6b45b8c1b7 100644
>--- a/contrib/src/mpcdec/rules.mak
>+++ b/contrib/src/mpcdec/rules.mak
>@@ -24,7 +24,7 @@ $(TARBALLS)/musepack_src_r$(MUSE_REV).tar.gz:
> # $(warning $@ not implemented)
> # touch $@
>
>-musepack: musepack_src_r$(MUSE_REV).tar.gz .sum-mpcdec
>+mpcdec: musepack_src_r$(MUSE_REV).tar.gz .sum-mpcdec
> $(UNPACK)
> $(APPLY) $(SRC)/mpcdec/musepack-no-cflags-clobber.patch
> $(APPLY) $(SRC)/mpcdec/musepack-no-binaries.patch
>@@ -34,15 +34,15 @@ endif
> sed -i.orig \
> -e 's,^add_subdirectory(mpcgain),,g' \
> -e 's,^add_subdirectory(mpcchap),,g' \
>- $@_src_r$(MUSE_REV)/CMakeLists.txt
>+ musepack_src_r$(MUSE_REV)/CMakeLists.txt
> ifdef HAVE_MACOSX
> cd musepack_src_r$(MUSE_REV) && \
> sed -e 's%-O3 -Wall%-O3 -Wall $(CFLAGS)%' CMakeLists.txt
> endif
>- mv $@_src_r$(MUSE_REV) $@
>+ mv musepack_src_r$(MUSE_REV) $@
> touch $@
>
>-.mpcdec: musepack toolchain.cmake
>+.mpcdec: mpcdec toolchain.cmake
> cd $< && $(HOSTVARS_PIC) $(CMAKE) -DSHARED=OFF .
> cd $< && $(MAKE) install
> mkdir -p -- "$(PREFIX)/lib"
>diff --git a/contrib/src/ogg/rules.mak b/contrib/src/ogg/rules.mak
>index 24dd7cc1e9..48f9c4f404 100644
>--- a/contrib/src/ogg/rules.mak
>+++ b/contrib/src/ogg/rules.mak
>@@ -15,14 +15,14 @@ $(TARBALLS)/libogg-$(OGG_VERSION).tar.xz:
>
> .sum-ogg: libogg-$(OGG_VERSION).tar.xz
>
>-libogg: libogg-$(OGG_VERSION).tar.xz .sum-ogg
>+ogg: libogg-$(OGG_VERSION).tar.xz .sum-ogg
> $(UNPACK)
> $(APPLY) $(SRC)/ogg/libogg-1.1.patch
> $(APPLY) $(SRC)/ogg/libogg-disable-check.patch
> $(UPDATE_AUTOCONFIG)
> $(MOVE)
>
>-.ogg: libogg
>+.ogg: ogg
> $(RECONF)
> cd $< && $(HOSTVARS) ./configure $(HOSTCONF)
> cd $< && $(MAKE) install
>diff --git a/contrib/src/shout/rules.mak b/contrib/src/shout/rules.mak
>index 500420cbe2..9410db9bf1 100644
>--- a/contrib/src/shout/rules.mak
>+++ b/contrib/src/shout/rules.mak
>@@ -18,7 +18,7 @@ $(TARBALLS)/libshout-$(SHOUT_VERSION).tar.gz:
> .sum-shout: libshout-$(SHOUT_VERSION).tar.gz
>
> # TODO: fix socket stuff on POSIX and Linux
>-libshout: libshout-$(SHOUT_VERSION).tar.gz .sum-shout
>+shout: libshout-$(SHOUT_VERSION).tar.gz .sum-shout
> $(UNPACK)
> $(APPLY) $(SRC)/shout/bsd.patch
> $(APPLY) $(SRC)/shout/libshout-arpa.patch
>@@ -39,7 +39,7 @@ ifdef HAVE_ANDROID
> SHOUT_CONF += "--disable-thread"
> endif
>
>-.shout: libshout
>+.shout: shout
> $(RECONF)
> cd $< && $(HOSTVARS) ./configure --without-openssl $(SHOUT_CONF)
>$(HOSTCONF)
> cd $< && $(MAKE) install
>diff --git a/contrib/src/sidplay2/rules.mak
>b/contrib/src/sidplay2/rules.mak
>index 69cae3e66d..ab3110728a 100644
>--- a/contrib/src/sidplay2/rules.mak
>+++ b/contrib/src/sidplay2/rules.mak
>@@ -12,7 +12,7 @@ $(TARBALLS)/sidplay-libs-$(SID_VERSION).tar.gz:
>
> .sum-sidplay2: sidplay-libs-$(SID_VERSION).tar.gz
>
>-sidplay-libs: sidplay-libs-$(SID_VERSION).tar.gz .sum-sidplay2
>+sidplay2: sidplay-libs-$(SID_VERSION).tar.gz .sum-sidplay2
> $(UNPACK)
> $(APPLY) $(SRC)/sidplay2/sidplay2-openmode.patch
> $(APPLY) $(SRC)/sidplay2/sidplay2-endian.patch
>@@ -21,7 +21,7 @@ sidplay-libs: sidplay-libs-$(SID_VERSION).tar.gz
>.sum-sidplay2
> $(APPLY) $(SRC)/sidplay2/sidplay2-string.patch
> $(MOVE)
>
>-.sidplay2: sidplay-libs
>+.sidplay2: sidplay2
> for d in . libsidplay builders resid builders/resid-builder \
> builders/hardsid-builder libsidutils ; \
> do \
>diff --git a/contrib/src/theora/rules.mak
>b/contrib/src/theora/rules.mak
>index f253fdfa51..35e343c19b 100644
>--- a/contrib/src/theora/rules.mak
>+++ b/contrib/src/theora/rules.mak
>@@ -13,7 +13,7 @@ $(TARBALLS)/libtheora-$(THEORA_VERSION).tar.xz:
>
> .sum-theora: libtheora-$(THEORA_VERSION).tar.xz
>
>-libtheora: libtheora-$(THEORA_VERSION).tar.xz .sum-theora
>+theora: libtheora-$(THEORA_VERSION).tar.xz .sum-theora
> $(UNPACK)
> $(APPLY) $(SRC)/theora/libtheora-compiler-differentiation.patch
> $(APPLY) $(SRC)/theora/libtheora-no-forceaddr.patch
>@@ -45,7 +45,7 @@ endif
>
> DEPS_theora = ogg $(DEPS_ogg)
>
>-.theora: libtheora
>+.theora: theora
> cd $< && $(HOSTVARS) ./configure $(THEORACONF)
> cd $< && $(MAKE) install
> touch $@
>diff --git a/contrib/src/vorbis/rules.mak
>b/contrib/src/vorbis/rules.mak
>index 51747b2137..1f9e64629c 100644
>--- a/contrib/src/vorbis/rules.mak
>+++ b/contrib/src/vorbis/rules.mak
>@@ -22,7 +22,7 @@ $(TARBALLS)/libvorbis-$(VORBIS_VERSION).tar.xz:
>
> .sum-vorbis: libvorbis-$(VORBIS_VERSION).tar.xz
>
>-libvorbis: libvorbis-$(VORBIS_VERSION).tar.xz .sum-vorbis
>+vorbis: libvorbis-$(VORBIS_VERSION).tar.xz .sum-vorbis
> $(UNPACK)
> ifneq (,$(filter %clang,$(CC)))
> $(APPLY) $(SRC)/vorbis/clang.patch
>@@ -34,7 +34,7 @@ endif
>
> DEPS_vorbis = ogg $(DEPS_ogg)
>
>-.vorbis: libvorbis
>+.vorbis: vorbis
> $(RECONF) -Im4
> cd $< && $(HOSTVARS) ./configure $(HOSTCONF) --disable-docs
>--disable-examples --disable-oggtest
> cd $< && $(MAKE) install
>diff --git a/contrib/src/vpx/rules.mak b/contrib/src/vpx/rules.mak
>index e5e44758f0..dd7c59023f 100644
>--- a/contrib/src/vpx/rules.mak
>+++ b/contrib/src/vpx/rules.mak
>@@ -13,7 +13,7 @@ $(TARBALLS)/libvpx-$(VPX_VERSION).tar.bz2:
>
> .sum-vpx: libvpx-$(VPX_VERSION).tar.bz2
>
>-libvpx: libvpx-$(VPX_VERSION).tar.bz2 .sum-vpx
>+vpx: libvpx-$(VPX_VERSION).tar.bz2 .sum-vpx
> $(UNPACK)
> $(APPLY) $(SRC)/vpx/libvpx-mac.patch
> $(APPLY) $(SRC)/vpx/libvpx-ios.patch
>@@ -126,7 +126,7 @@ ifndef WITH_OPTIMIZATION
> VPX_CONF += --enable-debug --disable-optimizations
> endif
>
>-.vpx: libvpx
>+.vpx: vpx
> cd $< && LDFLAGS="$(VPX_LDFLAGS)" CROSS=$(VPX_CROSS) ./configure
>--target=$(VPX_TARGET) \
> $(VPX_CONF) --prefix=$(PREFIX)
> cd $< && $(MAKE)
>--
>2.12.1
>
>_______________________________________________
>vlc-devel mailing list
>To unsubscribe or modify your subscription options:
>https://mailman.videolan.org/listinfo/vlc-devel
It should be obvious given that these are Makefile rules but the name MUST match the result. You can't just change it for your convenience
--
Rémi Denis-Courmont
Typed on an inconvenient virtual keyboard
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20170814/84c0f165/attachment.html>
More information about the vlc-devel
mailing list