From 08f505ce7895f3bbad92484cd2a6050030326e6e Mon Sep 17 00:00:00 2001 From: McCabe Maxsted Date: Wed, 28 Jan 2009 13:20:05 -0700 Subject: Added GStreamer to Cmake --- linden/indra/cmake/CopyWinLibs.cmake | 174 +++++++++++++++++++++++++++++++++++ linden/indra/cmake/GStreamer.cmake | 62 +++++++++++-- 2 files changed, 228 insertions(+), 8 deletions(-) (limited to 'linden/indra/cmake') diff --git a/linden/indra/cmake/CopyWinLibs.cmake b/linden/indra/cmake/CopyWinLibs.cmake index 3d70c8f..fdfcb3f 100644 --- a/linden/indra/cmake/CopyWinLibs.cmake +++ b/linden/indra/cmake/CopyWinLibs.cmake @@ -6,6 +6,104 @@ include(CMakeCopyIfDifferent) +set(gst_plugin_debug_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/debug/gstreamer-plugins") +set(gst_plugin_debug_files + libgstadder.dll + libgstalaw.dll + libgstaudioconvert.dll + libgstaudiorate.dll + libgstaudioresample.dll + libgstaudiotestsrc.dll + libgstautodetect.dll + libgstavi.dll + libgstcutter.dll + libgstdecodebin2.dll + libgstdecodebin.dll + libgstdirectdraw.dll + libgstdirectsound.dll + libgsteffectv.dll + libgstffmpeg.dll + libgstffmpegcolorspace.dll + libgstgdp.dll + libgstjpeg.dll + libgstmulaw.dll + libgstogg.dll + libgstplaybin.dll + libgstqtdemux.dll + libgstrtp.dll + libgstrtsp.dll + libgsttheora.dll + libgsttypefindfunctions.dll + libgstudp.dll + libgstvideobalance.dll + libgstvideobox.dll + libgstvideocrop.dll + libgstvideoflip.dll + libgstvideomixer.dll + libgstvideorate.dll + libgstvideoscale.dll + libgstvideotestsrc.dll + libgstvolume.dll + libgstvorbis.dll + ) + +copy_if_different( + ${gst_plugin_debug_dir} + "${CMAKE_CURRENT_BINARY_DIR}/Debug/lib/gstreamer-plugins" + out_targets + ${gst_plugin_debug_files} + ) +set(all_targets ${all_targets} ${out_targets}) + +set(gst_plugin_release_dir "${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/release/gstreamer-plugins") +set(gst_plugin_release_files + libgstadder.dll + libgstalaw.dll + libgstaudioconvert.dll + libgstaudiorate.dll + libgstaudioresample.dll + libgstaudiotestsrc.dll + libgstautodetect.dll + libgstavi.dll + libgstcutter.dll + libgstdecodebin2.dll + libgstdecodebin.dll + libgstdirectdraw.dll + libgstdirectsound.dll + libgsteffectv.dll + libgstffmpeg.dll + libgstffmpegcolorspace.dll + libgstgdp.dll + libgstjpeg.dll + libgstmulaw.dll + libgstogg.dll + libgstplaybin.dll + libgstqtdemux.dll + libgstrtp.dll + libgstrtsp.dll + libgsttheora.dll + libgsttypefindfunctions.dll + libgstudp.dll + libgstvideobalance.dll + libgstvideobox.dll + libgstvideocrop.dll + libgstvideoflip.dll + libgstvideomixer.dll + libgstvideorate.dll + libgstvideoscale.dll + libgstvideotestsrc.dll + libgstvolume.dll + libgstvorbis.dll + ) + +copy_if_different( + ${gst_plugin_release_dir} + "${CMAKE_CURRENT_BINARY_DIR}/Release/lib/gstreamer-plugins" + out_targets + ${gst_plugin_release_files} + ) +set(all_targets ${all_targets} ${out_targets}) + set(vivox_src_dir "${CMAKE_SOURCE_DIR}/newview/vivox-runtime/i686-win32") set(vivox_files tntk.dll @@ -38,6 +136,44 @@ set(debug_files xpcom.dll xul.dll windbgdlg.exe + iconv.dll + libxml2.dll + libgio-2.0-0.dll + libglib-2.0-0.dll + libgmodule-2.0-0.dll + libgobject-2.0-0.dll + libgthread-2.0-0.dll + avcodec-51.dll + avformat-52.dll + avutil-49.dll + intl.dll + libgstapp-0.10.dll + libgstaudio-0.10.dll + libgstbase-0.10.dll + libgstcdda-0.10.dll + libgstcontroller-0.10.dll + libgstdataprotocol-0.10.dll + libgstdshow-0.10.dll + libgstfft-0.10.dll + libgstinterfaces-0.10.dll + libgstnet-0.10.dll + libgstnetbuffer-0.10.dll + libgstpbutils-0.10.dll + libgstreamer-0.10.dll + libgstriff-0.10.dll + libgstrtp-0.10.dll + libgstrtsp-0.10.dll + libgstsdp-0.10.dll + libgsttag-0.10.dll + libgstvideo-0.10.dll + libjpeg.dll + libmms.dll + liboil-0.3-0.dll + libpng13.dll + xvidcore.dll + zlib1.dll + ogg.dll + vorbis.dll ) copy_if_different( @@ -74,6 +210,44 @@ set(release_files ssl3.dll xpcom.dll xul.dll + iconv.dll + libxml2.dll + libgio-2.0-0.dll + libglib-2.0-0.dll + libgmodule-2.0-0.dll + libgobject-2.0-0.dll + libgthread-2.0-0.dll + avcodec-51.dll + avformat-52.dll + avutil-49.dll + intl.dll + libgstapp-0.10.dll + libgstaudio-0.10.dll + libgstbase-0.10.dll + libgstcdda-0.10.dll + libgstcontroller-0.10.dll + libgstdataprotocol-0.10.dll + libgstdshow-0.10.dll + libgstfft-0.10.dll + libgstinterfaces-0.10.dll + libgstnet-0.10.dll + libgstnetbuffer-0.10.dll + libgstpbutils-0.10.dll + libgstreamer-0.10.dll + libgstriff-0.10.dll + libgstrtp-0.10.dll + libgstrtsp-0.10.dll + libgstsdp-0.10.dll + libgsttag-0.10.dll + libgstvideo-0.10.dll + libjpeg.dll + libmms.dll + liboil-0.3-0.dll + libpng13.dll + xvidcore.dll + zlib1.dll + ogg.dll + vorbis.dll ) copy_if_different( diff --git a/linden/indra/cmake/GStreamer.cmake b/linden/indra/cmake/GStreamer.cmake index 4369445..fc256a8 100644 --- a/linden/indra/cmake/GStreamer.cmake +++ b/linden/indra/cmake/GStreamer.cmake @@ -1,17 +1,61 @@ # -*- cmake -*- include(Prebuilt) -if (STANDALONE) - include(FindPkgConfig) - - pkg_check_modules(GSTREAMER REQUIRED gstreamer-0.10) - pkg_check_modules(GSTREAMER_PLUGINS_BASE REQUIRED gstreamer-plugins-base-0.10) -elseif (LINUX) - use_prebuilt_binary(gstreamer) # possible libxml should have its own .cmake file instead use_prebuilt_binary(libxml) set(GSTREAMER_FOUND ON FORCE BOOL) set(GSTREAMER_PLUGINS_BASE_FOUND ON FORCE BOOL) + use_prebuilt_binary(gstreamer) + +if (WINDOWS) + + use_prebuilt_binary(libxml) + set(GSTREAMER_FOUND ON FORCE BOOL) + set(GSTREAMER_INCLUDE_DIRS + ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/glib + ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/gio + ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/gobject + ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/libxml2 + ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/iconv + ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/gst + ) + + set(GSTREAMER_LIBRARIES + glib-2.0 + gio-2.0 + gmodule-2.0 + gobject-2.0 + gthread-2.0 + libgstvideo-0.10 + libgsttag-0.10 + libgstsdp-0.10 + libgstrtsp-0.10 + libgstrtp-0.10 + libgstriff-0.10 + libgstreamer-0.10 + libgstpbutils-0.10 + libgstnetbuffer-0.10 + libgstnet-0.10 + libgstinterfaces-0.10 + libgstdshow-0.10 + libgstdataprotocol-0.10 + libgstcontroller-0.10 + libgstbase-0.10 + libgstaudio-0.10 + libgstapp-0.10 + libxml2 + libxml2_a + libxml2_a_dll + iconv + iconv_a + ) + +else (WINDOWS) + + include(FindPkgConfig) + + pkg_check_modules(GSTREAMER REQUIRED gstreamer-0.10) + pkg_check_modules(GSTREAMER_PLUGINS_BASE REQUIRED gstreamer-plugins-base-0.10) set(GSTREAMER_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/gstreamer-0.10 ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/glib-2.0 @@ -19,6 +63,7 @@ elseif (LINUX) ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/glib-2.0/gobject ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/libxml2 ) + # We don't need to explicitly link against gstreamer itself, because # LLMediaImplGStreamer probes for the system's copy at runtime. set(GSTREAMER_LIBRARIES @@ -29,7 +74,8 @@ elseif (LINUX) rt glib-2.0 ) -endif (STANDALONE) + +endif (WINDOWS) if (GSTREAMER_FOUND AND GSTREAMER_PLUGINS_BASE_FOUND) set(GSTREAMER ON CACHE BOOL "Build with GStreamer streaming media support.") -- cgit v1.1