[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [39633] branches/soc-2011-tomato: Merging trunk into soc-2011-tomato.

Sergey Sharybin g.ulairi at gmail.com
Mon Aug 22 21:30:05 CEST 2011


Revision: 39633
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=39633
Author:   nazgul
Date:     2011-08-22 19:30:05 +0000 (Mon, 22 Aug 2011)
Log Message:
-----------
Merging trunk into soc-2011-tomato.

Pardon, lost message about which revisions are going to be merged..

Modified Paths:
--------------
    branches/soc-2011-tomato/CMakeLists.txt
    branches/soc-2011-tomato/SConstruct
    branches/soc-2011-tomato/build_files/buildbot/config/user-config-i686.py
    branches/soc-2011-tomato/build_files/buildbot/config/user-config-player-i686.py
    branches/soc-2011-tomato/build_files/buildbot/config/user-config-player-x86_64.py
    branches/soc-2011-tomato/build_files/buildbot/config/user-config-x86_64.py
    branches/soc-2011-tomato/build_files/buildbot/slave_compile.py
    branches/soc-2011-tomato/build_files/buildbot/slave_pack.py
    branches/soc-2011-tomato/build_files/cmake/buildinfo.cmake
    branches/soc-2011-tomato/build_files/cmake/macros.cmake
    branches/soc-2011-tomato/build_files/scons/config/linuxcross-config.py
    branches/soc-2011-tomato/build_files/scons/config/win32-mingw-config.py
    branches/soc-2011-tomato/build_files/scons/tools/Blender.py
    branches/soc-2011-tomato/build_files/scons/tools/btools.py
    branches/soc-2011-tomato/doc/build_systems/scons-dev.txt
    branches/soc-2011-tomato/doc/build_systems/scons.txt
    branches/soc-2011-tomato/extern/bullet2/src/SConscript
    branches/soc-2011-tomato/extern/eltopo/SConscript
    branches/soc-2011-tomato/intern/ghost/SConscript
    branches/soc-2011-tomato/release/scripts/modules/bpy_extras/mesh_utils.py
    branches/soc-2011-tomato/release/scripts/startup/bl_operators/add_mesh_torus.py
    branches/soc-2011-tomato/release/scripts/startup/bl_operators/mesh.py
    branches/soc-2011-tomato/release/scripts/startup/bl_operators/nla.py
    branches/soc-2011-tomato/release/scripts/startup/bl_operators/object.py
    branches/soc-2011-tomato/release/scripts/startup/bl_operators/object_align.py
    branches/soc-2011-tomato/release/scripts/startup/bl_operators/object_quick_effects.py
    branches/soc-2011-tomato/release/scripts/startup/bl_operators/object_randomize_transform.py
    branches/soc-2011-tomato/release/scripts/startup/bl_operators/sequencer.py
    branches/soc-2011-tomato/release/scripts/startup/bl_operators/uvcalc_lightmap.py
    branches/soc-2011-tomato/release/scripts/startup/bl_operators/uvcalc_smart_project.py
    branches/soc-2011-tomato/release/scripts/startup/bl_operators/vertexpaint_dirt.py
    branches/soc-2011-tomato/release/scripts/startup/bl_operators/wm.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/__init__.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/properties_data_camera.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/properties_particle.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/space_console.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/space_dopesheet.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/space_image.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/space_info.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/space_userpref.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/space_userpref_keymap.py
    branches/soc-2011-tomato/release/scripts/startup/bl_ui/space_view3d_toolbar.py
    branches/soc-2011-tomato/release/scripts/templates/addon_add_object.py
    branches/soc-2011-tomato/release/scripts/templates/operator_export.py
    branches/soc-2011-tomato/release/scripts/templates/operator_mesh_add.py
    branches/soc-2011-tomato/release/scripts/templates/operator_modal_view3d.py
    branches/soc-2011-tomato/release/scripts/templates/operator_simple.py
    branches/soc-2011-tomato/source/blender/blenkernel/intern/cloth.c
    branches/soc-2011-tomato/source/blender/blenlib/intern/jitter.c
    branches/soc-2011-tomato/source/blender/blenlib/intern/math_geom.c
    branches/soc-2011-tomato/source/blender/blenlib/intern/math_rotation.c
    branches/soc-2011-tomato/source/blender/blenlib/intern/rct.c
    branches/soc-2011-tomato/source/blender/blenlib/intern/scanfill.c
    branches/soc-2011-tomato/source/blender/blenloader/CMakeLists.txt
    branches/soc-2011-tomato/source/blender/blenloader/intern/readfile.c
    branches/soc-2011-tomato/source/blender/blenloader/intern/writefile.c
    branches/soc-2011-tomato/source/blender/blenpluginapi/SConscript
    branches/soc-2011-tomato/source/blender/collada/CMakeLists.txt
    branches/soc-2011-tomato/source/blender/collada/DocumentExporter.cpp
    branches/soc-2011-tomato/source/blender/editors/armature/SConscript
    branches/soc-2011-tomato/source/blender/editors/interface/interface_draw.c
    branches/soc-2011-tomato/source/blender/editors/interface/interface_widgets.c
    branches/soc-2011-tomato/source/blender/editors/mesh/SConscript
    branches/soc-2011-tomato/source/blender/editors/object/SConscript
    branches/soc-2011-tomato/source/blender/editors/object/object_add.c
    branches/soc-2011-tomato/source/blender/editors/object/object_bake.c
    branches/soc-2011-tomato/source/blender/editors/physics/SConscript
    branches/soc-2011-tomato/source/blender/editors/render/SConscript
    branches/soc-2011-tomato/source/blender/editors/render/render_shading.c
    branches/soc-2011-tomato/source/blender/editors/screen/SConscript
    branches/soc-2011-tomato/source/blender/editors/sculpt_paint/SConscript
    branches/soc-2011-tomato/source/blender/editors/space_file/SConscript
    branches/soc-2011-tomato/source/blender/editors/space_image/image_ops.c
    branches/soc-2011-tomato/source/blender/editors/space_info/info_ops.c
    branches/soc-2011-tomato/source/blender/editors/space_node/SConscript
    branches/soc-2011-tomato/source/blender/editors/space_node/node_edit.c
    branches/soc-2011-tomato/source/blender/editors/space_outliner/outliner_intern.h
    branches/soc-2011-tomato/source/blender/editors/space_sequencer/sequencer_edit.c
    branches/soc-2011-tomato/source/blender/editors/space_view3d/view3d_draw.c
    branches/soc-2011-tomato/source/blender/editors/space_view3d/view3d_edit.c
    branches/soc-2011-tomato/source/blender/editors/space_view3d/view3d_fly.c
    branches/soc-2011-tomato/source/blender/editors/transform/transform.c
    branches/soc-2011-tomato/source/blender/imbuf/intern/filter.c
    branches/soc-2011-tomato/source/blender/makesdna/DNA_sdna_types.h
    branches/soc-2011-tomato/source/blender/makesdna/intern/CMakeLists.txt
    branches/soc-2011-tomato/source/blender/makesdna/intern/SConscript
    branches/soc-2011-tomato/source/blender/makesdna/intern/dna_genfile.c
    branches/soc-2011-tomato/source/blender/makesrna/SConscript
    branches/soc-2011-tomato/source/blender/makesrna/intern/CMakeLists.txt
    branches/soc-2011-tomato/source/blender/makesrna/intern/SConscript
    branches/soc-2011-tomato/source/blender/makesrna/intern/rna_sequencer.c
    branches/soc-2011-tomato/source/blender/nodes/SConscript
    branches/soc-2011-tomato/source/blender/python/generic/noise_py_api.c
    branches/soc-2011-tomato/source/blender/python/intern/bpy_interface.c
    branches/soc-2011-tomato/source/blender/python/intern/bpy_rna.c
    branches/soc-2011-tomato/source/blender/python/intern/bpy_util.h
    branches/soc-2011-tomato/source/blender/render/SConscript
    branches/soc-2011-tomato/source/blender/render/intern/source/convertblender.c
    branches/soc-2011-tomato/source/blender/render/intern/source/envmap.c
    branches/soc-2011-tomato/source/blender/render/intern/source/gammaCorrectionTables.c
    branches/soc-2011-tomato/source/blender/render/intern/source/initrender.c
    branches/soc-2011-tomato/source/blender/render/intern/source/occlusion.c
    branches/soc-2011-tomato/source/blender/render/intern/source/pixelblending.c
    branches/soc-2011-tomato/source/blender/render/intern/source/pixelshading.c
    branches/soc-2011-tomato/source/blender/render/intern/source/rayshade.c
    branches/soc-2011-tomato/source/blender/render/intern/source/render_texture.c
    branches/soc-2011-tomato/source/blender/render/intern/source/rendercore.c
    branches/soc-2011-tomato/source/blender/render/intern/source/renderdatabase.c
    branches/soc-2011-tomato/source/blender/render/intern/source/shadbuf.c
    branches/soc-2011-tomato/source/blender/render/intern/source/sss.c
    branches/soc-2011-tomato/source/blender/render/intern/source/strand.c
    branches/soc-2011-tomato/source/blender/render/intern/source/sunsky.c
    branches/soc-2011-tomato/source/blender/render/intern/source/volume_precache.c
    branches/soc-2011-tomato/source/blender/render/intern/source/volumetric.c
    branches/soc-2011-tomato/source/blender/render/intern/source/voxeldata.c
    branches/soc-2011-tomato/source/blender/render/intern/source/zbuf.c
    branches/soc-2011-tomato/source/blender/windowmanager/CMakeLists.txt
    branches/soc-2011-tomato/source/blender/windowmanager/SConscript
    branches/soc-2011-tomato/source/blender/windowmanager/intern/wm_operators.c
    branches/soc-2011-tomato/source/creator/CMakeLists.txt
    branches/soc-2011-tomato/source/creator/buildinfo.c
    branches/soc-2011-tomato/source/creator/creator.c
    branches/soc-2011-tomato/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
    branches/soc-2011-tomato/source/gameengine/GamePlayer/ghost/GPG_Application.cpp

Added Paths:
-----------
    branches/soc-2011-tomato/build_files/scons/config/linux-config.py

Removed Paths:
-------------
    branches/soc-2011-tomato/build_files/scons/config/linux2-config.py

Property Changed:
----------------
    branches/soc-2011-tomato/
    branches/soc-2011-tomato/source/blender/editors/space_outliner/


Property changes on: branches/soc-2011-tomato
___________________________________________________________________
Modified: svn:mergeinfo
   - /trunk/blender:36831-39542
   + /trunk/blender:36831-39630

Modified: branches/soc-2011-tomato/CMakeLists.txt
===================================================================
--- branches/soc-2011-tomato/CMakeLists.txt	2011-08-22 19:27:54 UTC (rev 39632)
+++ branches/soc-2011-tomato/CMakeLists.txt	2011-08-22 19:30:05 UTC (rev 39633)
@@ -63,6 +63,22 @@
 # set_property(GLOBAL PROPERTY RULE_MESSAGES OFF)
 
 #-----------------------------------------------------------------------------
+# Set policy
+
+# see "cmake --help-policy CMP0003"
+# So library linking is more sane
+cmake_policy(SET CMP0003 NEW)
+
+# So BUILDINFO and BLENDERPATH strings are automatically quoted
+cmake_policy(SET CMP0005 NEW)
+
+# So syntax problems are errors
+cmake_policy(SET CMP0010 NEW)
+
+# Input directories must have CMakeLists.txt
+cmake_policy(SET CMP0014 NEW)
+
+#-----------------------------------------------------------------------------
 # Load some macros.
 include(build_files/cmake/macros.cmake)
 
@@ -502,6 +518,9 @@
 	# GNU Compiler
 	if(CMAKE_COMPILER_IS_GNUCC)
 		set(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
+	# CLang is the same as GCC for now.
+	elseif(CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+		set(PLATFORM_CFLAGS "-pipe -fPIC -funsigned-char -fno-strict-aliasing")
 	# Intel C++ Compiler
 	elseif(CMAKE_C_COMPILER_ID MATCHES "Intel")
 		# think these next two are broken
@@ -690,15 +709,15 @@
 
 		if(WITH_CODEC_FFMPEG)
 			set(FFMPEG_INCLUDE_DIRS
-				${LIBDIR}/ffmpeg-0.8/include
-				${LIBDIR}/ffmpeg-0.8/include/msvc
+				${LIBDIR}/ffmpeg/include
+				${LIBDIR}/ffmpeg/include/msvc
 			)
 			set(FFMPEG_LIBRARIES
-				${LIBDIR}/ffmpeg-0.8/lib/avcodec-53.lib
-				${LIBDIR}/ffmpeg-0.8/lib/avformat-53.lib
-				${LIBDIR}/ffmpeg-0.8/lib/avdevice-53.lib
-				${LIBDIR}/ffmpeg-0.8/lib/avutil-51.lib
-				${LIBDIR}/ffmpeg-0.8/lib/swscale-2.lib
+				${LIBDIR}/ffmpeg/lib/avcodec-53.lib
+				${LIBDIR}/ffmpeg/lib/avformat-53.lib
+				${LIBDIR}/ffmpeg/lib/avdevice-53.lib
+				${LIBDIR}/ffmpeg/lib/avutil-51.lib
+				${LIBDIR}/ffmpeg/lib/swscale-2.lib
 			)
 		endif()
 
@@ -823,7 +842,7 @@
 		endif()
 		
 		if(WITH_CODEC_FFMPEG)
-			set(FFMPEG ${LIBDIR}/ffmpeg-0.8)
+			set(FFMPEG ${LIBDIR}/ffmpeg)
 			set(FFMPEG_INCLUDE_DIRS ${FFMPEG}/include ${FFMPEG}/include)
 			set(FFMPEG_LIBRARIES avcodec-53 avformat-53 avdevice-53 avutil-51 swscale-2)
 			set(FFMPEG_LIBPATH ${FFMPEG}/lib)
@@ -962,7 +981,7 @@
 	endif()
 
 	if(WITH_CODEC_FFMPEG)
-		set(FFMPEG ${LIBDIR}/ffmpeg-0.8)
+		set(FFMPEG ${LIBDIR}/ffmpeg)
 		set(FFMPEG_INCLUDE_DIRS ${FFMPEG}/include)
 		set(FFMPEG_LIBRARIES avcodec avdevice avformat avutil mp3lame swscale x264 xvidcore theora theoradec theoraenc vorbis vorbisenc vorbisfile ogg)
 		set(FFMPEG_LIBPATH ${FFMPEG}/lib)

Modified: branches/soc-2011-tomato/SConstruct
===================================================================
--- branches/soc-2011-tomato/SConstruct	2011-08-22 19:27:54 UTC (rev 39632)
+++ branches/soc-2011-tomato/SConstruct	2011-08-22 19:30:05 UTC (rev 39633)
@@ -166,6 +166,13 @@
 
 env.SConscriptChdir(0)
 
+# Remove major kernel version from linux platform.
+# After Linus switched kernel to new version model this major version
+# shouldn't take much sense for building rules.
+
+if re.match('linux[0-9]+', platform):
+    platform = 'linux'
+
 crossbuild = B.arguments.get('BF_CROSS', None)
 if crossbuild and platform not in ('win32-vc', 'win64-vc'):
     platform = 'linuxcross'
@@ -262,7 +269,7 @@
     else:
         print B.bc.OKGREEN + "Found recommended sdk :" + B.bc.ENDC + " using MacOSX10.5.sdk"
 
-    # for now, Mac builders must download and install the driver framework from 3Dconnexion
+    # for now, Mac builders must download and install the 3DxWare 10 Beta 4 driver framework from 3Dconnexion
     # necessary header file lives here when installed:
     # /Library/Frameworks/3DconnexionClient.framework/Versions/Current/Headers/ConnexionClientAPI.h
     if env['WITH_BF_3DMOUSE'] == 1 and not os.path.exists('/Library/Frameworks/3DconnexionClient.framework'):
@@ -551,7 +558,7 @@
                     scriptinstall.append(env.Install(dir=dir,source=source))
 
 #-- icons
-if env['OURPLATFORM']=='linux2':
+if env['OURPLATFORM']=='linux':
     iconlist = []
     icontargetlist = []
 
@@ -630,7 +637,7 @@
 
 if  env['OURPLATFORM']=='darwin':
         allinstall = [blenderinstall, plugininstall, textinstall]
-elif env['OURPLATFORM']=='linux2':
+elif env['OURPLATFORM']=='linux':
         allinstall = [blenderinstall, dotblenderinstall, scriptinstall, plugininstall, textinstall, iconinstall]
 else:
         allinstall = [blenderinstall, dotblenderinstall, scriptinstall, plugininstall, textinstall]

Modified: branches/soc-2011-tomato/build_files/buildbot/config/user-config-i686.py
===================================================================
--- branches/soc-2011-tomato/build_files/buildbot/config/user-config-i686.py	2011-08-22 19:27:54 UTC (rev 39632)
+++ branches/soc-2011-tomato/build_files/buildbot/config/user-config-i686.py	2011-08-22 19:30:05 UTC (rev 39633)
@@ -22,7 +22,7 @@
 WITH_BF_FFMPEG = True
 WITH_BF_STATICFFMPEG = True
 
-BF_FFMPEG = '/home/sources/staticlibs/ffmpeg-0.8'
+BF_FFMPEG = '/home/sources/staticlibs/ffmpeg'
 BF_FFMPEG_LIBPATH = '${BF_FFMPEG}/lib32'
 BF_FFMPEG_LIB_STATIC = '${BF_FFMPEG_LIBPATH}/libavformat.a ${BF_FFMPEG_LIBPATH}/libswscale.a ' + \
     '${BF_FFMPEG_LIBPATH}/libavcodec.a ${BF_FFMPEG_LIBPATH}/libavdevice.a ${BF_FFMPEG_LIBPATH}/libavutil.a ' + \

Modified: branches/soc-2011-tomato/build_files/buildbot/config/user-config-player-i686.py
===================================================================
--- branches/soc-2011-tomato/build_files/buildbot/config/user-config-player-i686.py	2011-08-22 19:27:54 UTC (rev 39632)
+++ branches/soc-2011-tomato/build_files/buildbot/config/user-config-player-i686.py	2011-08-22 19:30:05 UTC (rev 39633)
@@ -16,7 +16,7 @@
 WITH_BF_FFMPEG = True
 WITH_BF_STATICFFMPEG = True
 
-BF_FFMPEG = '/home/sources/staticlibs/ffmpeg-0.8'
+BF_FFMPEG = '/home/sources/staticlibs/ffmpeg'
 BF_FFMPEG_LIBPATH = '${BF_FFMPEG}/lib32'
 BF_FFMPEG_LIB_STATIC = '${BF_FFMPEG_LIBPATH}/libavformat.a ${BF_FFMPEG_LIBPATH}/libswscale.a ' + \
     '${BF_FFMPEG_LIBPATH}/libavcodec.a ${BF_FFMPEG_LIBPATH}/libavdevice.a ${BF_FFMPEG_LIBPATH}/libavutil.a ' + \

Modified: branches/soc-2011-tomato/build_files/buildbot/config/user-config-player-x86_64.py
===================================================================
--- branches/soc-2011-tomato/build_files/buildbot/config/user-config-player-x86_64.py	2011-08-22 19:27:54 UTC (rev 39632)
+++ branches/soc-2011-tomato/build_files/buildbot/config/user-config-player-x86_64.py	2011-08-22 19:30:05 UTC (rev 39633)
@@ -16,7 +16,7 @@
 WITH_BF_FFMPEG = True
 WITH_BF_STATICFFMPEG = True
 
-BF_FFMPEG = '/home/sources/staticlibs/ffmpeg-0.8'
+BF_FFMPEG = '/home/sources/staticlibs/ffmpeg'
 BF_FFMPEG_LIBPATH = '${BF_FFMPEG}/lib64'
 BF_FFMPEG_LIB_STATIC = '${BF_FFMPEG_LIBPATH}/libavformat.a ${BF_FFMPEG_LIBPATH}/libswscale.a ' + \
     '${BF_FFMPEG_LIBPATH}/libavcodec.a ${BF_FFMPEG_LIBPATH}/libavdevice.a ${BF_FFMPEG_LIBPATH}/libavutil.a ' + \

Modified: branches/soc-2011-tomato/build_files/buildbot/config/user-config-x86_64.py
===================================================================
--- branches/soc-2011-tomato/build_files/buildbot/config/user-config-x86_64.py	2011-08-22 19:27:54 UTC (rev 39632)
+++ branches/soc-2011-tomato/build_files/buildbot/config/user-config-x86_64.py	2011-08-22 19:30:05 UTC (rev 39633)
@@ -22,7 +22,7 @@
 WITH_BF_FFMPEG = True
 WITH_BF_STATICFFMPEG = True
 
-BF_FFMPEG = '/home/sources/staticlibs/ffmpeg-0.8'
+BF_FFMPEG = '/home/sources/staticlibs/ffmpeg'
 BF_FFMPEG_LIBPATH = '${BF_FFMPEG}/lib64'
 BF_FFMPEG_LIB_STATIC = '${BF_FFMPEG_LIBPATH}/libavformat.a ${BF_FFMPEG_LIBPATH}/libswscale.a ' + \
     '${BF_FFMPEG_LIBPATH}/libavcodec.a ${BF_FFMPEG_LIBPATH}/libavdevice.a ${BF_FFMPEG_LIBPATH}/libavutil.a ' + \

Modified: branches/soc-2011-tomato/build_files/buildbot/slave_compile.py
===================================================================
--- branches/soc-2011-tomato/build_files/buildbot/slave_compile.py	2011-08-22 19:27:54 UTC (rev 39632)
+++ branches/soc-2011-tomato/build_files/buildbot/slave_compile.py	2011-08-22 19:30:05 UTC (rev 39633)
@@ -108,32 +108,12 @@
 
         sys.exit(0)
     else:
-        bitness = '32'
-        # Switch to new FFmpeg library
         if builder.find('win') != -1:
-            if builder.find('win32') != -1:
-                LCGDIR = '#../lib/windows'
-            elif builder.find('win64') != -1:
-                LCGDIR = '#../lib/win64'
+            bitness = '32'
+
+            if builder.find('win64') != -1:
                 bitness = '64'
 
-            all_ffmpeg_libs = ['avcodec-53',
-                               'avdevice-53',
-                               'avformat-53',
-                               'avutil-51',
-                               'swscale-2']
-
-            ffmpeg_lib = []
-            ffmpeg_dll = []
-
-            for lib in all_ffmpeg_libs:
-                ffmpeg_lib.append(lib + '.lib')
-                ffmpeg_dll.append('${BF_FFMPEG_LIBPATH}/' + lib + '.dll')
-
-            scons_options.append('BF_FFMPEG=' + LCGDIR + '/ffmpeg-0.8')
-            scons_options.append('BF_FFMPEG_LIB=' + (' '.join(ffmpeg_lib)))
-            scons_options.append('BF_FFMPEG_DLL=' + (' '.join(ffmpeg_dll)))
-
             scons_options.append('BF_BITNESS=' + bitness)
 
         retcode = subprocess.call(['python', 'scons/scons.py'] + scons_options)

Modified: branches/soc-2011-tomato/build_files/buildbot/slave_pack.py
===================================================================
--- branches/soc-2011-tomato/build_files/buildbot/slave_pack.py	2011-08-22 19:27:54 UTC (rev 39632)
+++ branches/soc-2011-tomato/build_files/buildbot/slave_pack.py	2011-08-22 19:30:05 UTC (rev 39633)
@@ -72,32 +72,12 @@
         retcode = subprocess.call(['python', 'scons/scons.py'] + scons_options)
         sys.exit(retcode)
     else:
-        bitness = '32'
-        # Switch to new FFmpeg library
         if builder.find('win') != -1:
-            if builder.find('win32') != -1:
-                LCGDIR = '#../lib/windows'
-            elif builder.find('win64') != -1:

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list