diff options
-rw-r--r-- | ChangeLog.txt | 127 | ||||
-rw-r--r-- | linden/indra/cmake/GStreamer.cmake | 42 | ||||
-rw-r--r-- | linden/indra/cmake/LLMedia.cmake | 2 | ||||
-rw-r--r-- | linden/indra/cmake/OPENAL.cmake | 36 | ||||
-rw-r--r-- | linden/indra/cmake/QuickTime.cmake | 49 | ||||
-rw-r--r-- | linden/indra/llaudio/CMakeLists.txt | 1 | ||||
-rw-r--r-- | linden/indra/llaudio/audioengine_openal.cpp | 11 | ||||
-rw-r--r-- | linden/indra/llcommon/llerror.cpp | 6 | ||||
-rw-r--r-- | linden/indra/llcommon/llthread.cpp | 10 | ||||
-rw-r--r-- | linden/indra/llcommon/llthread.h | 8 | ||||
-rw-r--r-- | linden/indra/llmedia/CMakeLists.txt | 13 | ||||
-rw-r--r-- | linden/indra/llmedia/llmediaimplgstreamer.cpp | 138 | ||||
-rw-r--r-- | linden/indra/newview/CMakeLists.txt | 5 | ||||
-rw-r--r-- | linden/indra/newview/Info-Imprudence.plist (renamed from linden/indra/newview/Info-SecondLife.plist) | 2 | ||||
-rw-r--r-- | linden/indra/newview/app_settings/settings.xml | 2 | ||||
-rwxr-xr-x | linden/indra/newview/viewer_manifest.py | 114 |
16 files changed, 406 insertions, 160 deletions
diff --git a/ChangeLog.txt b/ChangeLog.txt index f99ebae..6fd7771 100644 --- a/ChangeLog.txt +++ b/ChangeLog.txt | |||
@@ -1,3 +1,19 @@ | |||
1 | 2009-04-06 Jacek Antonelli <jacek.antonelli@gmail.com> | ||
2 | |||
3 | * linden/indra/llmedia/llmediaimplgstreamer.cpp: | ||
4 | Don't use LL_ERRS, it makes the viewer abort! | ||
5 | |||
6 | |||
7 | * linden/indra/llcommon/llerror.cpp: | ||
8 | Made LogLock mutex less likely to fail, hopefully. | ||
9 | |||
10 | |||
11 | * linden/indra/llcommon/llthread.cpp: | ||
12 | Converted BOOLs to bools in llthread. | ||
13 | * linden/indra/llcommon/llthread.h: | ||
14 | Ditto. | ||
15 | |||
16 | |||
1 | 2009-04-05 Jacek Antonelli <jacek.antonelli@gmail.com> | 17 | 2009-04-05 Jacek Antonelli <jacek.antonelli@gmail.com> |
2 | 18 | ||
3 | * linden/indra/llmedia/llmediaimplgstreamer.cpp: | 19 | * linden/indra/llmedia/llmediaimplgstreamer.cpp: |
@@ -63,12 +79,42 @@ | |||
63 | Added LLMediaBase::EDebugLevel and setDebugLevel prototype. | 79 | Added LLMediaBase::EDebugLevel and setDebugLevel prototype. |
64 | 80 | ||
65 | 81 | ||
82 | 2009-03-30 Jacek Antonelli <jacek.antonelli@gmail.com> | ||
83 | |||
84 | * linden/indra/newview/viewer_manifest.py: | ||
85 | Added libgstdecodebin.so plugin to Mac manifest. | ||
86 | |||
87 | |||
66 | 2009-03-30 McCabe Maxsted <hakushakukun@gmail.com> | 88 | 2009-03-30 McCabe Maxsted <hakushakukun@gmail.com> |
67 | 89 | ||
68 | * linden/indra/llmedia/llmediaimplgstreamer.cpp: | 90 | * linden/indra/llmedia/llmediaimplgstreamer.cpp: |
69 | Cleaned up logic for bad streams. | 91 | Cleaned up logic for bad streams. |
70 | 92 | ||
71 | 93 | ||
94 | 2009-03-29 Jacek Antonelli <jacek.antonelli@gmail.com> | ||
95 | |||
96 | * linden/indra/llmedia/llmediaimplgstreamer.cpp: | ||
97 | set_gst_plugin_path now sets GST_PLUGIN_SYSTEM_PATH="". | ||
98 | This prevents GStreamer from looking for system-installed plugins, | ||
99 | which can have conflicts with our packaged ones. | ||
100 | |||
101 | |||
102 | * linden/indra/llmedia/llmediaimplgstreamer.cpp: | ||
103 | Improved set_gst_plugin_path, now sets path on Mac too. | ||
104 | |||
105 | |||
106 | * linden/indra/cmake/GStreamer.cmake: | ||
107 | Using OpenAL framework on Mac after all. Maybe. | ||
108 | |||
109 | |||
110 | * linden/indra/cmake/GStreamer.cmake: | ||
111 | Tweaked the list of linked-in gstreamer libs for Mac. | ||
112 | |||
113 | |||
114 | * linden/indra/newview/viewer_manifest.py: | ||
115 | Removed the "2.0.0" named glib libs. Only using "2.0" now. | ||
116 | |||
117 | |||
72 | 2009-03-29 McCabe Maxsted <hakushakukun@gmail.com> | 118 | 2009-03-29 McCabe Maxsted <hakushakukun@gmail.com> |
73 | 119 | ||
74 | * linden/indra/llmedia/llmediaimplgstreamer.cpp: | 120 | * linden/indra/llmedia/llmediaimplgstreamer.cpp: |
@@ -110,6 +156,12 @@ | |||
110 | Print out the plugins gstreamer finds, for debugging. | 156 | Print out the plugins gstreamer finds, for debugging. |
111 | 157 | ||
112 | 158 | ||
159 | 2009-03-27 Jacek Antonelli <jacek.antonelli@gmail.com> | ||
160 | |||
161 | * linden/indra/newview/app_settings/settings.xml: | ||
162 | Changed the login splash screen URL. | ||
163 | |||
164 | |||
113 | 2009-03-27 McCabe Maxsted <hakushakukun@gmail.com> | 165 | 2009-03-27 McCabe Maxsted <hakushakukun@gmail.com> |
114 | 166 | ||
115 | * linden/indra/llmedia/llmediaimplgstreamer.cpp: | 167 | * linden/indra/llmedia/llmediaimplgstreamer.cpp: |
@@ -187,12 +239,86 @@ | |||
187 | Ditto. | 239 | Ditto. |
188 | 240 | ||
189 | 241 | ||
242 | 2009-03-16 Jacek Antonelli <jacek.antonelli@gmail.com> | ||
243 | |||
244 | * linden/indra/newview/viewer_manifest.py: | ||
245 | Symlinks for Mac glib dylibs (2.0.0 -> 2.0). | ||
246 | |||
247 | * linden/indra/newview/viewer_manifest.py: | ||
248 | Added more Mac dylibs to manifest. | ||
249 | |||
250 | |||
251 | 2009-03-13 Jacek Antonelli <jacek.antonelli@gmail.com> | ||
252 | |||
253 | * linden/indra/llaudio/audioengine_openal.cpp: | ||
254 | Added error checking when generating an OpenAL source. | ||
255 | |||
256 | |||
257 | 2009-03-12 Jacek Antonelli <jacek.antonelli@gmail.com> | ||
258 | |||
259 | * linden/indra/cmake/OPENAL.cmake: | ||
260 | Don't find specific OpenAL lib locations on Mac/Linux. | ||
261 | Linking that way is bad. Just use -lopenal -lalut instead. | ||
262 | |||
263 | |||
264 | 2009-03-11 Jacek Antonelli <jacek.antonelli@gmail.com> | ||
265 | |||
266 | * linden/indra/cmake/OPENAL.cmake: | ||
267 | Removed redundant/unnecessary OpenAL lib names and paths. | ||
268 | |||
269 | * linden/indra/newview/viewer_manifest.py: | ||
270 | Added Mac gstreamer plugins to viewer manifest. | ||
271 | |||
272 | * linden/indra/llaudio/CMakeLists.txt: | ||
273 | LLAudio's CMakeLists should include OPENAL. | ||
274 | |||
275 | * linden/indra/cmake/LLMedia.cmake: | ||
276 | Removed Quicktime-related cmake code. | ||
277 | * linden/indra/cmake/LLMedia.cmake: | ||
278 | Ditto. | ||
279 | * linden/indra/llmedia/CMakeLists.txt: | ||
280 | Ditto. | ||
281 | * linden/indra/newview/CMakeLists.txt: | ||
282 | Ditto. | ||
283 | |||
284 | |||
190 | 2009-03-10 McCabe Maxsted <hakushakukun@gmail.com> | 285 | 2009-03-10 McCabe Maxsted <hakushakukun@gmail.com> |
191 | 286 | ||
192 | * linden/indra/llaudio/audioengine.cpp: | 287 | * linden/indra/llaudio/audioengine.cpp: |
193 | Changed startinternetstream() a bit to be clearer. | 288 | Changed startinternetstream() a bit to be clearer. |
194 | 289 | ||
195 | 290 | ||
291 | 2009-03-09 Jacek Antonelli <jacek.antonelli@gmail.com> | ||
292 | |||
293 | * linden/indra/newview/viewer_manifest.py: | ||
294 | Manifest includes openal and gstreamer libs in Mac package. | ||
295 | |||
296 | * linden/indra/newview/CMakeLists.txt: | ||
297 | Mac app icon will be called viewer.icns instead of secondlife.icns. | ||
298 | * linden/indra/newview/Info-Imprudence.plist: | ||
299 | Ditto. | ||
300 | * linden/indra/newview/viewer_manifest.py: | ||
301 | Ditto. | ||
302 | |||
303 | |||
304 | 2009-03-08 Jacek Antonelli <jacek.antonelli@gmail.com> | ||
305 | |||
306 | * linden/indra/llmedia/llmediaimplgstreamer.cpp: | ||
307 | Load the proper gstreamer lib type (dylib) on Mac. | ||
308 | |||
309 | |||
310 | * linden/indra/cmake/GStreamer.cmake: | ||
311 | Tweaked GStreamer.cmake to work on Mac. | ||
312 | |||
313 | |||
314 | 2009-03-07 Jacek Antonelli <jacek.antonelli@gmail.com> | ||
315 | |||
316 | * linden/indra/newview/Info-SecondLife.plist: | ||
317 | Moved Info-SecondLife.plist to Info-Imprudence.plist. | ||
318 | * linden/indra/newview/viewer_manifest.py: | ||
319 | Ditto. | ||
320 | |||
321 | |||
196 | 2009-03-07 McCabe Maxsted <hakushakukun@gmail.com> | 322 | 2009-03-07 McCabe Maxsted <hakushakukun@gmail.com> |
197 | 323 | ||
198 | * linden/indra/llimagej2coj/llimagej2coj.cpp: | 324 | * linden/indra/llimagej2coj/llimagej2coj.cpp: |
@@ -286,6 +412,7 @@ | |||
286 | not highlighted in script editor). | 412 | not highlighted in script editor). |
287 | 413 | ||
288 | 414 | ||
415 | |||
289 | =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- | 416 | =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- |
290 | =- 1.1.0 RC2 -= | 417 | =- 1.1.0 RC2 -= |
291 | =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- | 418 | =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- |
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 | ||
78 | endif (WINDOWS) | 96 | endif (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 | ||
3 | include(GStreamer) | 3 | include(GStreamer) |
4 | include(QuickTime) | ||
5 | 4 | ||
6 | set(LLMEDIA_INCLUDE_DIRS | 5 | set(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 | |||
3 | if(INSTALL_PROPRIETARY) | ||
4 | include(Prebuilt) | ||
5 | use_prebuilt_binary(quicktime) | ||
6 | endif(INSTALL_PROPRIETARY) | ||
7 | |||
8 | if (DARWIN) | ||
9 | include(CMakeFindFrameworks) | ||
10 | find_library(QUICKTIME_LIBRARY QuickTime) | ||
11 | elseif (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 | ) | ||
39 | endif (DARWIN) | ||
40 | |||
41 | mark_as_advanced(QUICKTIME_LIBRARY) | ||
42 | |||
43 | if (QUICKTIME_LIBRARY) | ||
44 | set(QUICKTIME ON CACHE BOOL "Build with QuickTime streaming media support.") | ||
45 | endif (QUICKTIME_LIBRARY) | ||
46 | |||
47 | if (QUICKTIME) | ||
48 | add_definitions(-DLL_QUICKTIME_ENABLED=1) | ||
49 | endif (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 | ||
5 | include(00-Common) | 5 | include(00-Common) |
6 | include(Audio) | 6 | include(Audio) |
7 | include(OPENAL) | ||
7 | include(FMOD) | 8 | include(FMOD) |
8 | include(LLCommon) | 9 | include(LLCommon) |
9 | include(LLMath) | 10 | include(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 | ||
177 | LLAudioChannelOpenAL::~LLAudioChannelOpenAL() | 188 | LLAudioChannelOpenAL::~LLAudioChannelOpenAL() |
diff --git a/linden/indra/llcommon/llerror.cpp b/linden/indra/llcommon/llerror.cpp index 5c7c3cd..b95b325 100644 --- a/linden/indra/llcommon/llerror.cpp +++ b/linden/indra/llcommon/llerror.cpp | |||
@@ -902,7 +902,7 @@ namespace { | |||
902 | return; | 902 | return; |
903 | } | 903 | } |
904 | 904 | ||
905 | const int MAX_RETRIES = 5; | 905 | const int MAX_RETRIES = 10; |
906 | for (int attempts = 0; attempts < MAX_RETRIES; ++attempts) | 906 | for (int attempts = 0; attempts < MAX_RETRIES; ++attempts) |
907 | { | 907 | { |
908 | apr_status_t s = apr_thread_mutex_trylock(gLogMutexp); | 908 | apr_status_t s = apr_thread_mutex_trylock(gLogMutexp); |
@@ -914,9 +914,7 @@ namespace { | |||
914 | } | 914 | } |
915 | 915 | ||
916 | ms_sleep(1); | 916 | ms_sleep(1); |
917 | //apr_thread_yield(); | 917 | apr_thread_yield(); |
918 | // Just yielding won't necessarily work, I had problems with | ||
919 | // this on Linux - doug 12/02/04 | ||
920 | } | 918 | } |
921 | 919 | ||
922 | // We're hosed, we can't get the mutex. Blah. | 920 | // We're hosed, we can't get the mutex. Blah. |
diff --git a/linden/indra/llcommon/llthread.cpp b/linden/indra/llcommon/llthread.cpp index 822adc2..4879d58 100644 --- a/linden/indra/llcommon/llthread.cpp +++ b/linden/indra/llcommon/llthread.cpp | |||
@@ -84,7 +84,7 @@ void *APR_THREAD_FUNC LLThread::staticRun(apr_thread_t *apr_threadp, void *datap | |||
84 | 84 | ||
85 | 85 | ||
86 | LLThread::LLThread(const std::string& name, apr_pool_t *poolp) : | 86 | LLThread::LLThread(const std::string& name, apr_pool_t *poolp) : |
87 | mPaused(FALSE), | 87 | mPaused(false), |
88 | mName(name), | 88 | mName(name), |
89 | mAPRThreadp(NULL), | 89 | mAPRThreadp(NULL), |
90 | mStatus(STOPPED) | 90 | mStatus(STOPPED) |
@@ -92,12 +92,12 @@ LLThread::LLThread(const std::string& name, apr_pool_t *poolp) : | |||
92 | // Thread creation probably CAN be paranoid about APR being initialized, if necessary | 92 | // Thread creation probably CAN be paranoid about APR being initialized, if necessary |
93 | if (poolp) | 93 | if (poolp) |
94 | { | 94 | { |
95 | mIsLocalPool = FALSE; | 95 | mIsLocalPool = false; |
96 | mAPRPoolp = poolp; | 96 | mAPRPoolp = poolp; |
97 | } | 97 | } |
98 | else | 98 | else |
99 | { | 99 | { |
100 | mIsLocalPool = TRUE; | 100 | mIsLocalPool = true; |
101 | apr_pool_create(&mAPRPoolp, NULL); // Create a subpool for this thread | 101 | apr_pool_create(&mAPRPoolp, NULL); // Create a subpool for this thread |
102 | } | 102 | } |
103 | mRunCondition = new LLCondition(mAPRPoolp); | 103 | mRunCondition = new LLCondition(mAPRPoolp); |
@@ -268,12 +268,12 @@ LLMutex::LLMutex(apr_pool_t *poolp) : | |||
268 | { | 268 | { |
269 | //if (poolp) | 269 | //if (poolp) |
270 | //{ | 270 | //{ |
271 | // mIsLocalPool = FALSE; | 271 | // mIsLocalPool = false; |
272 | // mAPRPoolp = poolp; | 272 | // mAPRPoolp = poolp; |
273 | //} | 273 | //} |
274 | //else | 274 | //else |
275 | { | 275 | { |
276 | mIsLocalPool = TRUE; | 276 | mIsLocalPool = true; |
277 | apr_pool_create(&mAPRPoolp, NULL); // Create a subpool for this thread | 277 | apr_pool_create(&mAPRPoolp, NULL); // Create a subpool for this thread |
278 | } | 278 | } |
279 | apr_thread_mutex_create(&mAPRMutexp, APR_THREAD_MUTEX_UNNESTED, mAPRPoolp); | 279 | apr_thread_mutex_create(&mAPRMutexp, APR_THREAD_MUTEX_UNNESTED, mAPRPoolp); |
diff --git a/linden/indra/llcommon/llthread.h b/linden/indra/llcommon/llthread.h index 9da3134..a0b22f2 100644 --- a/linden/indra/llcommon/llthread.h +++ b/linden/indra/llcommon/llthread.h | |||
@@ -67,7 +67,7 @@ public: | |||
67 | // Called from MAIN THREAD. | 67 | // Called from MAIN THREAD. |
68 | void pause(); | 68 | void pause(); |
69 | void unpause(); | 69 | void unpause(); |
70 | bool isPaused() { return isStopped() || mPaused == TRUE; } | 70 | bool isPaused() { return isStopped() || mPaused; } |
71 | 71 | ||
72 | // Cause the thread to wake up and check its condition | 72 | // Cause the thread to wake up and check its condition |
73 | void wake(); | 73 | void wake(); |
@@ -84,7 +84,7 @@ public: | |||
84 | apr_pool_t *getAPRPool() { return mAPRPoolp; } | 84 | apr_pool_t *getAPRPool() { return mAPRPoolp; } |
85 | 85 | ||
86 | private: | 86 | private: |
87 | BOOL mPaused; | 87 | bool mPaused; |
88 | 88 | ||
89 | // static function passed to APR thread creation routine | 89 | // static function passed to APR thread creation routine |
90 | static void *APR_THREAD_FUNC staticRun(apr_thread_t *apr_threadp, void *datap); | 90 | static void *APR_THREAD_FUNC staticRun(apr_thread_t *apr_threadp, void *datap); |
@@ -95,7 +95,7 @@ protected: | |||
95 | 95 | ||
96 | apr_thread_t *mAPRThreadp; | 96 | apr_thread_t *mAPRThreadp; |
97 | apr_pool_t *mAPRPoolp; | 97 | apr_pool_t *mAPRPoolp; |
98 | BOOL mIsLocalPool; | 98 | bool mIsLocalPool; |
99 | EThreadStatus mStatus; | 99 | EThreadStatus mStatus; |
100 | 100 | ||
101 | void setQuitting(); | 101 | void setQuitting(); |
@@ -137,7 +137,7 @@ public: | |||
137 | protected: | 137 | protected: |
138 | apr_thread_mutex_t *mAPRMutexp; | 138 | apr_thread_mutex_t *mAPRMutexp; |
139 | apr_pool_t *mAPRPoolp; | 139 | apr_pool_t *mAPRPoolp; |
140 | BOOL mIsLocalPool; | 140 | bool mIsLocalPool; |
141 | }; | 141 | }; |
142 | 142 | ||
143 | // Actually a condition/mutex pair (since each condition needs to be associated with a mutex). | 143 | // Actually a condition/mutex pair (since each condition needs to be associated with a mutex). |
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) |
66 | endif (MOZLIB) | 66 | endif (MOZLIB) |
67 | 67 | ||
68 | if (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) | ||
79 | endif (QUICKTIME) | ||
80 | |||
81 | set_source_files_properties(${llmedia_HEADER_FILES} | 68 | set_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..7eb2b7b 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 |
64 | static LLMediaImplRegister sLLMediaImplGStreamerReg( "LLMediaImplGStreamer", new LLMediaImplGStreamerMaker() ); | 68 | static LLMediaImplRegister sLLMediaImplGStreamerReg( "LLMediaImplGStreamer", new LLMediaImplGStreamerMaker() ); |
65 | 69 | ||
@@ -223,61 +227,111 @@ bool LLMediaImplGStreamer::startup (LLMediaManagerData* init_data) | |||
223 | 227 | ||
224 | void LLMediaImplGStreamer::set_gst_plugin_path() | 228 | void 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 | ||
@@ -303,7 +357,7 @@ void LLMediaImplGStreamer::gstreamer_log(GstDebugCategory *category, | |||
303 | switch( level ) | 357 | switch( level ) |
304 | { | 358 | { |
305 | case GST_LEVEL_ERROR: | 359 | case GST_LEVEL_ERROR: |
306 | LL_ERRS("MediaImpl") << log.str() << LL_ENDL; | 360 | LL_WARNS("MediaImpl") << "(ERROR) " << log.str() << LL_ENDL; |
307 | break; | 361 | break; |
308 | case GST_LEVEL_WARNING: | 362 | case GST_LEVEL_WARNING: |
309 | LL_WARNS("MediaImpl") << log.str() << LL_ENDL; | 363 | LL_WARNS("MediaImpl") << log.str() << LL_ENDL; |
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/app_settings/settings.xml b/linden/indra/newview/app_settings/settings.xml index 1ecab2b..55ff208 100644 --- a/linden/indra/newview/app_settings/settings.xml +++ b/linden/indra/newview/app_settings/settings.xml | |||
@@ -4459,7 +4459,7 @@ | |||
4459 | <key>Type</key> | 4459 | <key>Type</key> |
4460 | <string>String</string> | 4460 | <string>String</string> |
4461 | <key>Value</key> | 4461 | <key>Value</key> |
4462 | <string /> | 4462 | <string>http://imprudenceviewer.org/splash/</string> |
4463 | </map> | 4463 | </map> |
4464 | <key>LosslessJ2CUpload</key> | 4464 | <key>LosslessJ2CUpload</key> |
4465 | <map> | 4465 | <map> |
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") |