aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--ChangeLog.txt104
-rw-r--r--linden/indra/cmake/GStreamer.cmake42
-rw-r--r--linden/indra/cmake/LLMedia.cmake2
-rw-r--r--linden/indra/cmake/OPENAL.cmake36
-rw-r--r--linden/indra/cmake/QuickTime.cmake49
-rw-r--r--linden/indra/llaudio/CMakeLists.txt1
-rw-r--r--linden/indra/llaudio/audioengine_openal.cpp11
-rw-r--r--linden/indra/llmedia/CMakeLists.txt13
-rw-r--r--linden/indra/llmedia/llmediaimplgstreamer.cpp136
-rw-r--r--linden/indra/newview/CMakeLists.txt5
-rw-r--r--linden/indra/newview/Info-Imprudence.plist (renamed from linden/indra/newview/Info-SecondLife.plist)2
-rwxr-xr-xlinden/indra/newview/viewer_manifest.py114
12 files changed, 370 insertions, 145 deletions
diff --git a/ChangeLog.txt b/ChangeLog.txt
index 30347a5..4c485d4 100644
--- a/ChangeLog.txt
+++ b/ChangeLog.txt
@@ -71,12 +71,42 @@
71 Added LLMediaBase::EDebugLevel and setDebugLevel prototype. 71 Added LLMediaBase::EDebugLevel and setDebugLevel prototype.
72 72
73 73
742009-03-30 Jacek Antonelli <jacek.antonelli@gmail.com>
75
76 * linden/indra/newview/viewer_manifest.py:
77 Added libgstdecodebin.so plugin to Mac manifest.
78
79
742009-03-30 McCabe Maxsted <hakushakukun@gmail.com> 802009-03-30 McCabe Maxsted <hakushakukun@gmail.com>
75 81
76 * linden/indra/llmedia/llmediaimplgstreamer.cpp: 82 * linden/indra/llmedia/llmediaimplgstreamer.cpp:
77 Cleaned up logic for bad streams. 83 Cleaned up logic for bad streams.
78 84
79 85
862009-03-29 Jacek Antonelli <jacek.antonelli@gmail.com>
87
88 * linden/indra/llmedia/llmediaimplgstreamer.cpp:
89 set_gst_plugin_path now sets GST_PLUGIN_SYSTEM_PATH="".
90 This prevents GStreamer from looking for system-installed plugins,
91 which can have conflicts with our packaged ones.
92
93
94 * linden/indra/llmedia/llmediaimplgstreamer.cpp:
95 Improved set_gst_plugin_path, now sets path on Mac too.
96
97
98 * linden/indra/cmake/GStreamer.cmake:
99 Using OpenAL framework on Mac after all. Maybe.
100
101
102 * linden/indra/cmake/GStreamer.cmake:
103 Tweaked the list of linked-in gstreamer libs for Mac.
104
105
106 * linden/indra/newview/viewer_manifest.py:
107 Removed the "2.0.0" named glib libs. Only using "2.0" now.
108
109
802009-03-29 McCabe Maxsted <hakushakukun@gmail.com> 1102009-03-29 McCabe Maxsted <hakushakukun@gmail.com>
81 111
82 * linden/indra/llmedia/llmediaimplgstreamer.cpp: 112 * linden/indra/llmedia/llmediaimplgstreamer.cpp:
@@ -201,12 +231,86 @@
201 Ditto. 231 Ditto.
202 232
203 233
2342009-03-16 Jacek Antonelli <jacek.antonelli@gmail.com>
235
236 * linden/indra/newview/viewer_manifest.py:
237 Symlinks for Mac glib dylibs (2.0.0 -> 2.0).
238
239 * linden/indra/newview/viewer_manifest.py:
240 Added more Mac dylibs to manifest.
241
242
2432009-03-13 Jacek Antonelli <jacek.antonelli@gmail.com>
244
245 * linden/indra/llaudio/audioengine_openal.cpp:
246 Added error checking when generating an OpenAL source.
247
248
2492009-03-12 Jacek Antonelli <jacek.antonelli@gmail.com>
250
251 * linden/indra/cmake/OPENAL.cmake:
252 Don't find specific OpenAL lib locations on Mac/Linux.
253 Linking that way is bad. Just use -lopenal -lalut instead.
254
255
2562009-03-11 Jacek Antonelli <jacek.antonelli@gmail.com>
257
258 * linden/indra/cmake/OPENAL.cmake:
259 Removed redundant/unnecessary OpenAL lib names and paths.
260
261 * linden/indra/newview/viewer_manifest.py:
262 Added Mac gstreamer plugins to viewer manifest.
263
264 * linden/indra/llaudio/CMakeLists.txt:
265 LLAudio's CMakeLists should include OPENAL.
266
267 * linden/indra/cmake/LLMedia.cmake:
268 Removed Quicktime-related cmake code.
269 * linden/indra/cmake/LLMedia.cmake:
270 Ditto.
271 * linden/indra/llmedia/CMakeLists.txt:
272 Ditto.
273 * linden/indra/newview/CMakeLists.txt:
274 Ditto.
275
276
2042009-03-10 McCabe Maxsted <hakushakukun@gmail.com> 2772009-03-10 McCabe Maxsted <hakushakukun@gmail.com>
205 278
206 * linden/indra/llaudio/audioengine.cpp: 279 * linden/indra/llaudio/audioengine.cpp:
207 Changed startinternetstream() a bit to be clearer. 280 Changed startinternetstream() a bit to be clearer.
208 281
209 282
2832009-03-09 Jacek Antonelli <jacek.antonelli@gmail.com>
284
285 * linden/indra/newview/viewer_manifest.py:
286 Manifest includes openal and gstreamer libs in Mac package.
287
288 * linden/indra/newview/CMakeLists.txt:
289 Mac app icon will be called viewer.icns instead of secondlife.icns.
290 * linden/indra/newview/Info-Imprudence.plist:
291 Ditto.
292 * linden/indra/newview/viewer_manifest.py:
293 Ditto.
294
295
2962009-03-08 Jacek Antonelli <jacek.antonelli@gmail.com>
297
298 * linden/indra/llmedia/llmediaimplgstreamer.cpp:
299 Load the proper gstreamer lib type (dylib) on Mac.
300
301
302 * linden/indra/cmake/GStreamer.cmake:
303 Tweaked GStreamer.cmake to work on Mac.
304
305
3062009-03-07 Jacek Antonelli <jacek.antonelli@gmail.com>
307
308 * linden/indra/newview/Info-SecondLife.plist:
309 Moved Info-SecondLife.plist to Info-Imprudence.plist.
310 * linden/indra/newview/viewer_manifest.py:
311 Ditto.
312
313
2102009-03-07 McCabe Maxsted <hakushakukun@gmail.com> 3142009-03-07 McCabe Maxsted <hakushakukun@gmail.com>
211 315
212 * linden/indra/llimagej2coj/llimagej2coj.cpp: 316 * linden/indra/llimagej2coj/llimagej2coj.cpp:
diff --git a/linden/indra/cmake/GStreamer.cmake b/linden/indra/cmake/GStreamer.cmake
index 7b380a8..c1bbc57 100644
--- a/linden/indra/cmake/GStreamer.cmake
+++ b/linden/indra/cmake/GStreamer.cmake
@@ -62,18 +62,36 @@ else (WINDOWS)
62 ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/libxml2 62 ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/libxml2
63 ) 63 )
64 64
65 set(GSTREAMER_LIBRARIES 65 if (DARWIN)
66 gstvideo-0.10 66
67 gstaudio-0.10 67 set(GSTREAMER_LIBRARIES
68 gstbase-0.10 68 gstvideo-0.10
69 gstreamer-0.10 69 gstaudio-0.10
70 gobject-2.0 70 gstbase-0.10
71 gmodule-2.0 71 gstreamer-0.10
72 dl 72 gobject-2.0
73 gthread-2.0 73 gmodule-2.0
74 rt 74 gthread-2.0
75 glib-2.0 75 glib-2.0
76 ) 76 xml2
77 )
78
79 else (DARWIN)
80
81 set(GSTREAMER_LIBRARIES
82 gstvideo-0.10
83 gstaudio-0.10
84 gstbase-0.10
85 gstreamer-0.10
86 gobject-2.0
87 gmodule-2.0
88 dl
89 gthread-2.0
90 rt
91 glib-2.0
92 )
93
94 endif (DARWIN)
77 95
78endif (WINDOWS) 96endif (WINDOWS)
79 97
diff --git a/linden/indra/cmake/LLMedia.cmake b/linden/indra/cmake/LLMedia.cmake
index b7bf11c..8a36a69 100644
--- a/linden/indra/cmake/LLMedia.cmake
+++ b/linden/indra/cmake/LLMedia.cmake
@@ -1,7 +1,6 @@
1# -*- cmake -*- 1# -*- cmake -*-
2 2
3include(GStreamer) 3include(GStreamer)
4include(QuickTime)
5 4
6set(LLMEDIA_INCLUDE_DIRS 5set(LLMEDIA_INCLUDE_DIRS
7 ${LIBS_OPEN_DIR}/llmedia 6 ${LIBS_OPEN_DIR}/llmedia
@@ -11,5 +10,4 @@ set(LLMEDIA_LIBRARIES
11 llmedia 10 llmedia
12 ${GSTREAMER_LIBRARIES} 11 ${GSTREAMER_LIBRARIES}
13 ${GSTREAMER_PLUGINS_BASE_LIBRARIES} 12 ${GSTREAMER_PLUGINS_BASE_LIBRARIES}
14 ${QUICKTIME_LIBRARY}
15 ) 13 )
diff --git a/linden/indra/cmake/OPENAL.cmake b/linden/indra/cmake/OPENAL.cmake
index 5e71f66..f06a38e 100644
--- a/linden/indra/cmake/OPENAL.cmake
+++ b/linden/indra/cmake/OPENAL.cmake
@@ -10,16 +10,18 @@ if (OPENAL)
10 # OPENAL_LIB 10 # OPENAL_LIB
11 11
12 if (WINDOWS) 12 if (WINDOWS)
13 find_library(OPENAL_LIB 13 find_library(OPENAL_LIB
14 NAMES openal openal32 OpenAL OpenAL32 wrap_oal 14 NAMES openal32
15 PATHS ${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/release 15 PATHS ${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/release
16 ) 16 )
17 17 elseif (DARWIN)
18 # Look for for system's OpenAL.framework
19 find_library(OPENAL_LIB
20 NAMES OpenAL openal
21 PATHS ${ARCH_PREBUILT_DIRS_RELEASE}
22 )
18 else (WINDOWS) 23 else (WINDOWS)
19 find_library(OPENAL_LIB 24 set(OPENAL_LIB openal)
20 NAMES openal openal32 OpenAL OpenAL32 wrap_oal
21 PATHS ${ARCH_PREBUILT_DIRS_RELEASE}
22 )
23 endif (WINDOWS) 25 endif (WINDOWS)
24 26
25 if (NOT OPENAL_LIB) 27 if (NOT OPENAL_LIB)
@@ -34,7 +36,7 @@ if (OPENAL)
34 36
35 find_path(OPENAL_INCLUDE_DIR 37 find_path(OPENAL_INCLUDE_DIR
36 NAMES al.h 38 NAMES al.h
37 PATHS ${LIBS_PREBUILT_DIR}/include/AL /usr/include/AL 39 PATHS ${LIBS_PREBUILT_DIR}/include/AL
38 ) 40 )
39 41
40 if (NOT OPENAL_INCLUDE_DIR) 42 if (NOT OPENAL_INCLUDE_DIR)
@@ -49,15 +51,11 @@ if (OPENAL)
49 51
50 if (WINDOWS) 52 if (WINDOWS)
51 find_library(ALUT_LIB 53 find_library(ALUT_LIB
52 NAMES alut freealut 54 NAMES alut freealut
53 PATHS ${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/release 55 PATHS ${CMAKE_SOURCE_DIR}/../libraries/i686-win32/lib/release
54 ) 56 )
55
56 else (WINDOWS) 57 else (WINDOWS)
57 find_library(ALUT_LIB 58 set(ALUT_LIB alut)
58 NAMES alut freealut
59 PATHS ${ARCH_PREBUILT_DIRS_RELEASE}
60 )
61 endif (WINDOWS) 59 endif (WINDOWS)
62 60
63 if (NOT ALUT_LIB) 61 if (NOT ALUT_LIB)
@@ -72,7 +70,7 @@ if (OPENAL)
72 70
73 find_path(ALUT_INCLUDE_DIR 71 find_path(ALUT_INCLUDE_DIR
74 NAMES alut.h 72 NAMES alut.h
75 PATHS ${LIBS_PREBUILT_DIR}/include/AL /usr/include/AL 73 PATHS ${LIBS_PREBUILT_DIR}/include/AL
76 ) 74 )
77 75
78 if (NOT ALUT_INCLUDE_DIR) 76 if (NOT ALUT_INCLUDE_DIR)
diff --git a/linden/indra/cmake/QuickTime.cmake b/linden/indra/cmake/QuickTime.cmake
deleted file mode 100644
index 4352709..0000000
--- a/linden/indra/cmake/QuickTime.cmake
+++ /dev/null
@@ -1,49 +0,0 @@
1# -*- cmake -*-
2
3if(INSTALL_PROPRIETARY)
4 include(Prebuilt)
5 use_prebuilt_binary(quicktime)
6endif(INSTALL_PROPRIETARY)
7
8if (DARWIN)
9 include(CMakeFindFrameworks)
10 find_library(QUICKTIME_LIBRARY QuickTime)
11elseif (WINDOWS)
12 set(QUICKTIME_SDK_DIR "$ENV{PROGRAMFILES}/QuickTime SDK"
13 CACHE PATH "Location of the QuickTime SDK.")
14
15 find_library(DEBUG_QUICKTIME_LIBRARY qtmlclient
16 PATHS
17 ${ARCH_PREBUILT_DIRS_DEBUG}
18 "${QUICKTIME_SDK_DIR}\\libraries"
19 )
20
21 find_library(RELEASE_QUICKTIME_LIBRARY qtmlclient
22 PATHS
23 ${ARCH_PREBUILT_DIRS_RELEASE}
24 "${QUICKTIME_SDK_DIR}\\libraries"
25 )
26
27 if (DEBUG_QUICKTIME_LIBRARY AND RELEASE_QUICKTIME_LIBRARY)
28 set(QUICKTIME_LIBRARY
29 optimized ${RELEASE_QUICKTIME_LIBRARY}
30 debug ${DEBUG_QUICKTIME_LIBRARY}
31 )
32
33 endif (DEBUG_QUICKTIME_LIBRARY AND RELEASE_QUICKTIME_LIBRARY)
34
35 include_directories(
36 ${LIBS_PREBUILT_DIR}/${LL_ARCH_DIR}/include/quicktime
37 "${QUICKTIME_SDK_DIR}\\CIncludes"
38 )
39endif (DARWIN)
40
41mark_as_advanced(QUICKTIME_LIBRARY)
42
43if (QUICKTIME_LIBRARY)
44 set(QUICKTIME ON CACHE BOOL "Build with QuickTime streaming media support.")
45endif (QUICKTIME_LIBRARY)
46
47if (QUICKTIME)
48 add_definitions(-DLL_QUICKTIME_ENABLED=1)
49endif (QUICKTIME)
diff --git a/linden/indra/llaudio/CMakeLists.txt b/linden/indra/llaudio/CMakeLists.txt
index aa15a9d..8a26e54 100644
--- a/linden/indra/llaudio/CMakeLists.txt
+++ b/linden/indra/llaudio/CMakeLists.txt
@@ -4,6 +4,7 @@ project(llaudio)
4 4
5include(00-Common) 5include(00-Common)
6include(Audio) 6include(Audio)
7include(OPENAL)
7include(FMOD) 8include(FMOD)
8include(LLCommon) 9include(LLCommon)
9include(LLMath) 10include(LLMath)
diff --git a/linden/indra/llaudio/audioengine_openal.cpp b/linden/indra/llaudio/audioengine_openal.cpp
index 8f836a6..6d9a242 100644
--- a/linden/indra/llaudio/audioengine_openal.cpp
+++ b/linden/indra/llaudio/audioengine_openal.cpp
@@ -172,6 +172,17 @@ LLAudioChannelOpenAL::LLAudioChannelOpenAL()
172 mLastSamplePos(0) 172 mLastSamplePos(0)
173{ 173{
174 alGenSources(1, &mALSource); 174 alGenSources(1, &mALSource);
175
176 if( mALSource == AL_NONE )
177 {
178 ALenum error = alGetError();
179 if( error == AL_NO_ERROR )
180 {
181 LL_WARNS("OpenAL") << "LLAudioChannelOpenAL::LLAudioChannelOpenAL() Could not generate mALSource, but no error is indicated!" << LL_ENDL;
182 }
183 LL_WARNS("OpenAL") << "LLAudioChannelOpenAL::LLAudioChannelOpenAL() Could not generate mALSource: (" << error << ") " << alGetString( error ) << LL_ENDL;
184 }
185
175} 186}
176 187
177LLAudioChannelOpenAL::~LLAudioChannelOpenAL() 188LLAudioChannelOpenAL::~LLAudioChannelOpenAL()
diff --git a/linden/indra/llmedia/CMakeLists.txt b/linden/indra/llmedia/CMakeLists.txt
index 0e5b261..ea0ce1a 100644
--- a/linden/indra/llmedia/CMakeLists.txt
+++ b/linden/indra/llmedia/CMakeLists.txt
@@ -65,19 +65,6 @@ if (MOZLIB)
65 list(APPEND llmedia_HEADER_FILES llmediaimplllmozlib.h) 65 list(APPEND llmedia_HEADER_FILES llmediaimplllmozlib.h)
66endif (MOZLIB) 66endif (MOZLIB)
67 67
68if (QUICKTIME)
69 list(APPEND llmedia_SOURCE_FILES llmediaimplquicktime.cpp)
70 list(APPEND llmedia_HEADER_FILES llmediaimplquicktime.h)
71
72 # We use a bunch of deprecated system APIs.
73 if (DARWIN)
74 set_source_files_properties(
75 llmediaimplquicktime.cpp PROPERTIES
76 COMPILE_FLAGS -Wno-deprecated-declarations
77 )
78 endif (DARWIN)
79endif (QUICKTIME)
80
81set_source_files_properties(${llmedia_HEADER_FILES} 68set_source_files_properties(${llmedia_HEADER_FILES}
82 PROPERTIES HEADER_FILE_ONLY TRUE) 69 PROPERTIES HEADER_FILE_ONLY TRUE)
83 70
diff --git a/linden/indra/llmedia/llmediaimplgstreamer.cpp b/linden/indra/llmedia/llmediaimplgstreamer.cpp
index 7ae6b02..5ec9eaf 100644
--- a/linden/indra/llmedia/llmediaimplgstreamer.cpp
+++ b/linden/indra/llmedia/llmediaimplgstreamer.cpp
@@ -60,6 +60,10 @@ extern "C" {
60#include "llgstplaythread.h" 60#include "llgstplaythread.h"
61 61
62 62
63#if LL_DARWIN
64#include <CoreFoundation/CoreFoundation.h> // For CF functions used in set_gst_plugin_path
65#endif
66
63// register this impl with media manager factory 67// register this impl with media manager factory
64static LLMediaImplRegister sLLMediaImplGStreamerReg( "LLMediaImplGStreamer", new LLMediaImplGStreamerMaker() ); 68static LLMediaImplRegister sLLMediaImplGStreamerReg( "LLMediaImplGStreamer", new LLMediaImplGStreamerMaker() );
65 69
@@ -223,61 +227,111 @@ bool LLMediaImplGStreamer::startup (LLMediaManagerData* init_data)
223 227
224void LLMediaImplGStreamer::set_gst_plugin_path() 228void LLMediaImplGStreamer::set_gst_plugin_path()
225{ 229{
226 // Only needed for Windows. 230 // Linux sets GST_PLUGIN_PATH in wrapper.sh, not here.
227 // Linux sets in wrapper.sh, Mac sets in Info-Imprudence.plist 231#if LL_WINDOWS || LL_DARWIN
228#ifdef LL_WINDOWS
229 232
230 char* imp_cwd; 233 std::string imp_dir = "";
231 234
232 // Get the current working directory: 235 // Get the current working directory:
233 imp_cwd = _getcwd(NULL,0); 236#if LL_WINDOWS
237 char* raw_dir;
238 raw_dir = _getcwd(NULL,0);
239 if( raw_dir != NULL )
240 {
241 imp_dir = std::string( raw_dir );
242 }
243#elif LL_DARWIN
244 CFBundleRef main_bundle = CFBundleGetMainBundle();
245 if( main_bundle != NULL )
246 {
247 CFURLRef bundle_url = CFBundleCopyBundleURL( main_bundle );
248 if( bundle_url != NULL )
249 {
250 #ifndef MAXPATHLEN
251 #define MAXPATHLEN 1024
252 #endif
253 char raw_dir[MAXPATHLEN];
254 if( CFURLGetFileSystemRepresentation( bundle_url, true, (UInt8 *)raw_dir, MAXPATHLEN) )
255 {
256 imp_dir = std::string( raw_dir ) + "/Contents/MacOS/";
257 }
258 CFRelease(bundle_url);
259 }
260 }
261#endif
262
263 if( imp_dir == "" )
264 {
265 LL_WARNS("MediaImpl") << "Could not get application directory, not setting GST_PLUGIN_PATH."
266 << LL_ENDL;
267 return;
268 }
234 269
235 if(imp_cwd == NULL) 270 LL_DEBUGS("MediaImpl") << "Imprudence is installed at "
271 << imp_dir << LL_ENDL;
272
273 // ":" on Mac and 'Nix, ";" on Windows
274 std::string separator = G_SEARCHPATH_SEPARATOR_S;
275
276 // Grab the current path, if it's set.
277 std::string old_plugin_path = "";
278 char *old_path = getenv("GST_PLUGIN_PATH");
279 if(old_path == NULL)
236 { 280 {
237 LL_DEBUGS("MediaImpl") << "_getcwd failed, not setting GST_PLUGIN_PATH." 281 LL_DEBUGS("MediaImpl") << "Did not find user-set GST_PLUGIN_PATH."
238 << LL_ENDL; 282 << LL_ENDL;
239 } 283 }
240 else 284 else
241 { 285 {
242 LL_DEBUGS("MediaImpl") << "Imprudence is installed at " 286 old_plugin_path = separator + std::string( old_path );
243 << imp_cwd << LL_ENDL; 287 }
244 288
245 // Grab the current path, if it's set.
246 std::string old_plugin_path = "";
247 char *old_path = getenv("GST_PLUGIN_PATH");
248 if(old_path == NULL)
249 {
250 LL_DEBUGS("MediaImpl") << "Did not find user-set GST_PLUGIN_PATH."
251 << LL_ENDL;
252 }
253 else
254 {
255 old_plugin_path = ";" + std::string( old_path );
256 }
257 289
290 // Search both Imprudence and Imprudence\lib\gstreamer-plugins.
291 // But we also want to search the path the user has set, if any.
292 std::string plugin_path =
293 "GST_PLUGIN_PATH=" +
294 imp_dir + separator +
295#if LL_WINDOWS
296 imp_dir + "\\lib\\gstreamer-plugins" +
297#elif LL_DARWIN
298 imp_dir + "/../Resources/lib/gstreamer-plugins" +
299#endif
300 old_plugin_path;
258 301
259 // Search both Imprudence and Imprudence\lib\gstreamer-plugins. 302 int put_result;
260 // If those fail, search the path the user has set, if any.
261 std::string plugin_path =
262 "GST_PLUGIN_PATH=" +
263 std::string(imp_cwd) + "\\lib\\gstreamer-plugins;" +
264 std::string(imp_cwd) +
265 old_plugin_path;
266 303
267 // Place GST_PLUGIN_PATH in the environment settings for imprudence.exe 304 // Place GST_PLUGIN_PATH in the environment settings
268 // Returns 0 on success 305#if LL_WINDOWS
269 if(_putenv( (char*)plugin_path.c_str() )) 306 put_result = _putenv( (char*)plugin_path.c_str() );
270 { 307#elif LL_DARWIN
271 LL_WARNS("MediaImpl") << "Setting environment variable failed!" << LL_ENDL; 308 put_result = putenv( (char*)plugin_path.c_str() );
272 } 309#endif
273 else 310
274 { 311 if( put_result == -1 )
275 LL_DEBUGS("MediaImpl") << "GST_PLUGIN_PATH set to " 312 {
276 << getenv("GST_PLUGIN_PATH") << LL_ENDL; 313 LL_WARNS("MediaImpl") << "Setting GST_PLUGIN_PATH failed!" << LL_ENDL;
277 } 314 }
315 else
316 {
317 LL_DEBUGS("MediaImpl") << "GST_PLUGIN_PATH set to "
318 << getenv("GST_PLUGIN_PATH") << LL_ENDL;
278 } 319 }
320
321 // Don't load system plugins. We only want to use ours, to avoid conflicts.
322#if LL_WINDOWS
323 put_result = _putenv( "GST_PLUGIN_SYSTEM_PATH=\"\"" );
324#elif LL_DARWIN
325 put_result = putenv( "GST_PLUGIN_SYSTEM_PATH=\"\"" );
326#endif
279 327
280#endif //LL_WINDOWS 328 if( put_result == -1 )
329 {
330 LL_WARNS("MediaImpl") << "Setting GST_PLUGIN_SYSTEM_PATH=\"\" failed!"
331 << LL_ENDL;
332 }
333
334#endif // LL_WINDOWS || LL_DARWIN
281} 335}
282 336
283 337
diff --git a/linden/indra/newview/CMakeLists.txt b/linden/indra/newview/CMakeLists.txt
index 1e48d28..f971f97 100644
--- a/linden/indra/newview/CMakeLists.txt
+++ b/linden/indra/newview/CMakeLists.txt
@@ -849,7 +849,7 @@ if (DARWIN)
849 849
850 # Add resource files to the project. 850 # Add resource files to the project.
851 set(viewer_RESOURCE_FILES 851 set(viewer_RESOURCE_FILES
852 secondlife.icns 852 viewer.icns
853 macview.r 853 macview.r
854 gpu_table.txt 854 gpu_table.txt
855 Info-Imprudence.plist 855 Info-Imprudence.plist
@@ -1393,7 +1393,6 @@ target_link_libraries(imprudence-bin
1393 ${SMARTHEAP_LIBRARY} 1393 ${SMARTHEAP_LIBRARY}
1394 ${UI_LIBRARIES} 1394 ${UI_LIBRARIES}
1395 ${NDOF_LIBRARY} 1395 ${NDOF_LIBRARY}
1396 ${QUICKTIME_LIBRARY}
1397 ${WINDOWS_LIBRARIES} 1396 ${WINDOWS_LIBRARIES}
1398 ${XMLRPCEPI_LIBRARIES} 1397 ${XMLRPCEPI_LIBRARIES}
1399 ${ZLIB_LIBRARIES} 1398 ${ZLIB_LIBRARIES}
@@ -1447,7 +1446,7 @@ if (DARWIN)
1447 PROPERTIES 1446 PROPERTIES
1448 OUTPUT_NAME "${product}" 1447 OUTPUT_NAME "${product}"
1449 MACOSX_BUNDLE_INFO_STRING "info string - localize me" 1448 MACOSX_BUNDLE_INFO_STRING "info string - localize me"
1450 MACOSX_BUNDLE_ICON_FILE "secondlife.icns" 1449 MACOSX_BUNDLE_ICON_FILE "viewer.icns"
1451 MACOSX_BUNDLE_GUI_IDENTIFIER "Imprudence" 1450 MACOSX_BUNDLE_GUI_IDENTIFIER "Imprudence"
1452 MACOSX_BUNDLE_LONG_VERSION_STRING "ververver" 1451 MACOSX_BUNDLE_LONG_VERSION_STRING "ververver"
1453 MACOSX_BUNDLE_BUNDLE_NAME "Imprudence" 1452 MACOSX_BUNDLE_BUNDLE_NAME "Imprudence"
diff --git a/linden/indra/newview/Info-SecondLife.plist b/linden/indra/newview/Info-Imprudence.plist
index 32bba70..357d171 100644
--- a/linden/indra/newview/Info-SecondLife.plist
+++ b/linden/indra/newview/Info-Imprudence.plist
@@ -7,7 +7,7 @@
7 <key>CFBundleExecutable</key> 7 <key>CFBundleExecutable</key>
8 <string>Imprudence</string> 8 <string>Imprudence</string>
9 <key>CFBundleIconFile</key> 9 <key>CFBundleIconFile</key>
10 <string>secondlife.icns</string> 10 <string>viewer.icns</string>
11 <key>CFBundleIdentifier</key> 11 <key>CFBundleIdentifier</key>
12 <string>com.secondlife.indra.viewer</string> 12 <string>com.secondlife.indra.viewer</string>
13 <key>CFBundleInfoDictionaryVersion</key> 13 <key>CFBundleInfoDictionaryVersion</key>
diff --git a/linden/indra/newview/viewer_manifest.py b/linden/indra/newview/viewer_manifest.py
index 3583726..71c07b6 100755
--- a/linden/indra/newview/viewer_manifest.py
+++ b/linden/indra/newview/viewer_manifest.py
@@ -403,10 +403,51 @@ class DarwinManifest(ViewerManifest):
403 # <bundle>/Contents/MacOS/ 403 # <bundle>/Contents/MacOS/
404 self.contents_of_tar(self.args['source']+'/mozilla-universal-darwin.tgz', 'MacOS') 404 self.contents_of_tar(self.args['source']+'/mozilla-universal-darwin.tgz', 'MacOS')
405 405
406 self.path("Info-SecondLife.plist", dst="Info.plist") 406 self.path("Info-Imprudence.plist", dst="Info.plist")
407 407
408 # copy additional libs in <bundle>/Contents/MacOS/ 408 # copy additional libs in <bundle>/Contents/MacOS/
409 self.path("../../libraries/universal-darwin/lib_release/libndofdev.dylib", dst="MacOS/libndofdev.dylib") 409 if self.prefix(src="../../libraries/universal-darwin/lib_release", dst="MacOS/"):
410
411 self.path("libndofdev.dylib")
412
413 self.path("libopenal.1.dylib")
414 self.path("libalut.0.dylib")
415
416 self.path("libglib-2.0.dylib")
417 self.path("libgmodule-2.0.dylib")
418 self.path("libgobject-2.0.dylib")
419 self.path("libgthread-2.0.dylib")
420
421 self.path("libgstreamer-0.10.dylib")
422 self.path("libgstapp-0.10.dylib")
423 self.path("libgstaudio-0.10.dylib")
424 self.path("libgstbase-0.10.dylib")
425 self.path("libgstcdda-0.10.dylib")
426 self.path("libgstcontroller-0.10.dylib")
427 self.path("libgstdataprotocol-0.10.dylib")
428 self.path("libgstfft-0.10.dylib")
429 self.path("libgstinterfaces-0.10.dylib")
430 self.path("libgstnet-0.10.dylib")
431 self.path("libgstnetbuffer-0.10.dylib")
432 self.path("libgstpbutils-0.10.dylib")
433 self.path("libgstriff-0.10.dylib")
434 self.path("libgstrtp-0.10.dylib")
435 self.path("libgstrtsp-0.10.dylib")
436 self.path("libgstsdp-0.10.dylib")
437 self.path("libgsttag-0.10.dylib")
438 self.path("libgstvideo-0.10.dylib")
439
440 self.path("libintl.3.dylib")
441 self.path("libjpeg.62.dylib")
442 self.path("libogg.0.dylib")
443 self.path("liboil-0.3.0.dylib")
444 self.path("libpango-1.0.0.dylib")
445 self.path("libpangoft2-1.0.0.dylib")
446 self.path("libtheora.0.dylib")
447 self.path("libvorbis.0.dylib")
448 self.path("libvorbisenc.2.dylib")
449
450 self.end_prefix("../../libraries/universal-darwin/lib_release")
410 451
411 # replace the default theme with our custom theme (so scrollbars work). 452 # replace the default theme with our custom theme (so scrollbars work).
412 if self.prefix(src="mozilla-theme", dst="MacOS/chrome"): 453 if self.prefix(src="mozilla-theme", dst="MacOS/chrome"):
@@ -432,7 +473,7 @@ class DarwinManifest(ViewerManifest):
432 self.path("featuretable_mac.txt") 473 self.path("featuretable_mac.txt")
433 self.path("SecondLife.nib") 474 self.path("SecondLife.nib")
434 475
435 self.path("secondlife.icns") 476 self.path("viewer.icns")
436 477
437 # Translations 478 # Translations
438 self.path("English.lproj") 479 self.path("English.lproj")
@@ -441,9 +482,72 @@ class DarwinManifest(ViewerManifest):
441 self.path("Korean.lproj") 482 self.path("Korean.lproj")
442 483
443 484
485 if self.prefix(src="../../libraries/universal-darwin/lib_release/gstreamer-plugins", dst="lib/gstreamer-plugins"):
486 self.path("libgstaacparse.so")
487 self.path("libgstadder.so")
488 self.path("libgstaiffparse.so")
489 self.path("libgstamrparse.so")
490 self.path("libgstapp.so")
491 self.path("libgstaudioconvert.so")
492 self.path("libgstaudiorate.so")
493 self.path("libgstaudioresample.so")
494 self.path("libgstautodetect.so")
495 self.path("libgstavi.so")
496 self.path("libgstcoreelements.so")
497 self.path("libgstcoreindexers.so")
498 self.path("libgstdebug.so")
499 self.path("libgstdecodebin.so")
500 self.path("libgstdecodebin2.so")
501 self.path("libgstdeinterlace2.so")
502 self.path("libgstequalizer.so")
503 self.path("libgstffmpeg.so")
504 self.path("libgstffmpegcolorspace.so")
505 self.path("libgstffmpegscale.so")
506 self.path("libgstflac.so")
507 self.path("libgstflv.so")
508 self.path("libgstgdp.so")
509 self.path("libgsth264parse.so")
510 self.path("libgsticydemux.so")
511 self.path("libgstid3demux.so")
512 self.path("libgstinterleave.so")
513 self.path("libgstjpeg.so")
514 self.path("libgstlevel.so")
515 self.path("libgstmetadata.so")
516 self.path("libgstmpeg4videoparse.so")
517 self.path("libgstmpegdemux.so")
518 self.path("libgstmpegvideoparse.so")
519 self.path("libgstmultipart.so")
520 self.path("libgstneonhttpsrc.so")
521 self.path("libgstogg.so")
522 self.path("libgstosxaudio.so")
523 self.path("libgstosxvideosink.so")
524 self.path("libgstpango.so")
525 self.path("libgstplaybin.so")
526 self.path("libgstpng.so")
527 self.path("libgstpostproc.so")
528 self.path("libgstqtdemux.so")
529 self.path("libgstqueue2.so")
530 self.path("libgstreal.so")
531 self.path("libgstrtp.so")
532 self.path("libgstrtpmanager.so")
533 self.path("libgstrtsp.so")
534 self.path("libgstsdpelem.so")
535 self.path("libgstselector.so")
536 self.path("libgsttcp.so")
537 self.path("libgsttheora.so")
538 self.path("libgsttypefindfunctions.so")
539 self.path("libgstudp.so")
540 self.path("libgstvideoscale.so")
541 self.path("libgstvolume.so")
542 self.path("libgstvorbis.so")
543 self.path("libgstwavparse.so")
544
545 self.end_prefix("../../libraries/universal-darwin/lib_release/gstreamer-plugins")
546
547
444 # SLVoice and vivox lols 548 # SLVoice and vivox lols
445 self.path("vivox-runtime/universal-darwin/libalut.dylib", "libalut.dylib") 549 #self.path("vivox-runtime/universal-darwin/libalut.dylib", "libalut.dylib")
446 self.path("vivox-runtime/universal-darwin/libopenal.dylib", "libopenal.dylib") 550 #self.path("vivox-runtime/universal-darwin/libopenal.dylib", "libopenal.dylib")
447 #self.path("vivox-runtime/universal-darwin/libortp.dylib", "libortp.dylib") 551 #self.path("vivox-runtime/universal-darwin/libortp.dylib", "libortp.dylib")
448 #self.path("vivox-runtime/universal-darwin/libvivoxsdk.dylib", "libvivoxsdk.dylib") 552 #self.path("vivox-runtime/universal-darwin/libvivoxsdk.dylib", "libvivoxsdk.dylib")
449 #self.path("vivox-runtime/universal-darwin/SLVoice", "SLVoice") 553 #self.path("vivox-runtime/universal-darwin/SLVoice", "SLVoice")