diff options
author | Jacek Antonelli | 2008-09-06 18:24:57 -0500 |
---|---|---|
committer | Jacek Antonelli | 2008-09-06 18:25:07 -0500 |
commit | 798d367d54a6c6379ad355bd8345fa40e31e7fe9 (patch) | |
tree | 1921f1708cd0240648c97bc02df2c2ab5f2fc41e /linden/indra/test | |
parent | Second Life viewer sources 1.20.15 (diff) | |
download | meta-impy-798d367d54a6c6379ad355bd8345fa40e31e7fe9.zip meta-impy-798d367d54a6c6379ad355bd8345fa40e31e7fe9.tar.gz meta-impy-798d367d54a6c6379ad355bd8345fa40e31e7fe9.tar.bz2 meta-impy-798d367d54a6c6379ad355bd8345fa40e31e7fe9.tar.xz |
Second Life viewer sources 1.21.0-RC
Diffstat (limited to 'linden/indra/test')
44 files changed, 1669 insertions, 2993 deletions
diff --git a/linden/indra/test/CMakeLists.txt b/linden/indra/test/CMakeLists.txt new file mode 100644 index 0000000..3d085a7 --- /dev/null +++ b/linden/indra/test/CMakeLists.txt | |||
@@ -0,0 +1,153 @@ | |||
1 | # -*- cmake -*- | ||
2 | |||
3 | project (test) | ||
4 | |||
5 | include(00-Common) | ||
6 | include(LLCommon) | ||
7 | include(LLDatabase) | ||
8 | include(LLInventory) | ||
9 | include(LLMath) | ||
10 | include(LLMessage) | ||
11 | include(LLVFS) | ||
12 | include(LLXML) | ||
13 | include(Linking) | ||
14 | |||
15 | include_directories( | ||
16 | ${LLCOMMON_INCLUDE_DIRS} | ||
17 | ${LLDATABASE_INCLUDE_DIRS} | ||
18 | ${LLMATH_INCLUDE_DIRS} | ||
19 | ${LLMESSAGE_INCLUDE_DIRS} | ||
20 | ${LLINVENTORY_INCLUDE_DIRS} | ||
21 | ${LLVFS_INCLUDE_DIRS} | ||
22 | ${LLXML_INCLUDE_DIRS} | ||
23 | ) | ||
24 | |||
25 | set(test_SOURCE_FILES | ||
26 | common.cpp | ||
27 | inventory.cpp | ||
28 | io.cpp | ||
29 | llapp_tut.cpp | ||
30 | llbase64_tut.cpp | ||
31 | llblowfish_tut.cpp | ||
32 | llbuffer_tut.cpp | ||
33 | lldate_tut.cpp | ||
34 | llerror_tut.cpp | ||
35 | llhost_tut.cpp | ||
36 | llhttpdate_tut.cpp | ||
37 | llhttpclient_tut.cpp | ||
38 | llhttpnode_tut.cpp | ||
39 | llinventoryparcel_tut.cpp | ||
40 | lliohttpserver_tut.cpp | ||
41 | lljoint_tut.cpp | ||
42 | llmime_tut.cpp | ||
43 | llmessageconfig_tut.cpp | ||
44 | llnamevalue_tut.cpp | ||
45 | llpermissions_tut.cpp | ||
46 | llpipeutil.cpp | ||
47 | llquaternion_tut.cpp | ||
48 | llrandom_tut.cpp | ||
49 | llsaleinfo_tut.cpp | ||
50 | llsdmessagebuilder_tut.cpp | ||
51 | llsdmessagereader_tut.cpp | ||
52 | llsd_new_tut.cpp | ||
53 | llsdserialize_tut.cpp | ||
54 | llsdutil_tut.cpp | ||
55 | llservicebuilder_tut.cpp | ||
56 | llstreamtools_tut.cpp | ||
57 | llstring_tut.cpp | ||
58 | lltemplatemessagebuilder_tut.cpp | ||
59 | lltiming_tut.cpp | ||
60 | lltut.cpp | ||
61 | lluri_tut.cpp | ||
62 | lluuidhashmap_tut.cpp | ||
63 | llxfer_tut.cpp | ||
64 | math.cpp | ||
65 | message_tut.cpp | ||
66 | reflection_tut.cpp | ||
67 | test.cpp | ||
68 | v2math_tut.cpp | ||
69 | v3color_tut.cpp | ||
70 | v3dmath_tut.cpp | ||
71 | v3math_tut.cpp | ||
72 | v4color_tut.cpp | ||
73 | v4coloru_tut.cpp | ||
74 | v4math_tut.cpp | ||
75 | ) | ||
76 | |||
77 | set(test_HEADER_FILES | ||
78 | CMakeLists.txt | ||
79 | |||
80 | llpipeutil.h | ||
81 | llsdtraits.h | ||
82 | lltut.h | ||
83 | ) | ||
84 | |||
85 | if (NOT WINDOWS) | ||
86 | list(APPEND test_SOURCE_FILES | ||
87 | llmessagetemplateparser_tut.cpp | ||
88 | ) | ||
89 | endif (NOT WINDOWS) | ||
90 | |||
91 | set_source_files_properties(${test_HEADER_FILES} | ||
92 | PROPERTIES HEADER_FILE_ONLY TRUE) | ||
93 | |||
94 | list(APPEND test_SOURC_FILES ${test_HEADER_FILES}) | ||
95 | |||
96 | add_executable(test ${test_SOURCE_FILES}) | ||
97 | |||
98 | target_link_libraries(test | ||
99 | ${LLDATABASE_LIBRARIES} | ||
100 | ${LLINVENTORY_LIBRARIES} | ||
101 | ${LLMESSAGE_LIBRARIES} | ||
102 | ${LLMATH_LIBRARIES} | ||
103 | ${LLVFS_LIBRARIES} | ||
104 | ${LLXML_LIBRARIES} | ||
105 | ${LLCOMMON_LIBRARIES} | ||
106 | ${PTHREAD_LIBRARY} | ||
107 | ${WINDOWS_LIBRARIES} | ||
108 | ) | ||
109 | |||
110 | if (WINDOWS) | ||
111 | set_target_properties(test | ||
112 | PROPERTIES | ||
113 | LINK_FLAGS "/NODEFAULTLIB:MSVCRT" | ||
114 | LINK_FLAGS_DEBUG "/NODEFAULTLIB:LIBCMT" | ||
115 | ) | ||
116 | endif (WINDOWS) | ||
117 | |||
118 | get_target_property(TEST_EXE test LOCATION) | ||
119 | |||
120 | add_custom_command( | ||
121 | OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/cpp_tests_ok.txt | ||
122 | COMMAND ${TEST_EXE} | ||
123 | ARGS | ||
124 | --output=${CMAKE_CURRENT_BINARY_DIR}/cpp_test_results.txt | ||
125 | --touch=${CMAKE_CURRENT_BINARY_DIR}/cpp_tests_ok.txt | ||
126 | DEPENDS test | ||
127 | WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} | ||
128 | COMMENT "C++ unit tests" | ||
129 | ) | ||
130 | |||
131 | set(test_results ${CMAKE_CURRENT_BINARY_DIR}/cpp_tests_ok.txt) | ||
132 | |||
133 | if (EXISTS /etc/debian_version_FAIL) | ||
134 | # The Python tests have all kinds of wacky non-portable assumptions | ||
135 | # built in. | ||
136 | |||
137 | add_custom_command( | ||
138 | OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/py_tests_ok.txt | ||
139 | COMMAND ${PYTHON_EXECUTABLE} | ||
140 | ARGS | ||
141 | ${CMAKE_CURRENT_SOURCE_DIR}/test.py | ||
142 | --mode=static | ||
143 | --output=${CMAKE_CURRENT_BINARY_DIR}/py_test_results.txt | ||
144 | --touch=${CMAKE_CURRENT_BINARY_DIR}/py_tests_ok.txt | ||
145 | DEPENDS test.py | ||
146 | WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} | ||
147 | COMMENT "Python unit tests" | ||
148 | ) | ||
149 | |||
150 | list(APPEND test_results ${CMAKE_CURRENT_BINARY_DIR}/py_tests_ok.txt) | ||
151 | endif (EXISTS /etc/debian_version_FAIL) | ||
152 | |||
153 | add_custom_target(tests_ok ALL DEPENDS ${test_results}) | ||
diff --git a/linden/indra/test/MacTester.xcodeproj/project.pbxproj b/linden/indra/test/MacTester.xcodeproj/project.pbxproj deleted file mode 100644 index 1aad040..0000000 --- a/linden/indra/test/MacTester.xcodeproj/project.pbxproj +++ /dev/null | |||
@@ -1,1350 +0,0 @@ | |||
1 | // !$*UTF8*$! | ||
2 | { | ||
3 | archiveVersion = 1; | ||
4 | classes = { | ||
5 | }; | ||
6 | objectVersion = 42; | ||
7 | objects = { | ||
8 | |||
9 | /* Begin PBXAggregateTarget section */ | ||
10 | FD5DF9A109C0A4F5007E3F78 /* third party libs */ = { | ||
11 | isa = PBXAggregateTarget; | ||
12 | buildConfigurationList = FD5DF9A209C0A51D007E3F78 /* Build configuration list for PBXAggregateTarget "third party libs" */; | ||
13 | buildPhases = ( | ||
14 | FD5DF9A009C0A4F5007E3F78 /* ShellScript */, | ||
15 | ); | ||
16 | dependencies = ( | ||
17 | ); | ||
18 | name = "third party libs"; | ||
19 | productName = "third party libs"; | ||
20 | }; | ||
21 | /* End PBXAggregateTarget section */ | ||
22 | |||
23 | /* Begin PBXBuildFile section */ | ||
24 | 386C3F070A14C85000CF4511 /* lliosocket.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 386C3F050A14C85000CF4511 /* lliosocket.cpp */; }; | ||
25 | 386C3F080A14C85000CF4511 /* lliosocket.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 386C3F060A14C85000CF4511 /* lliosocket.h */; }; | ||
26 | 389CFB460A0B69C700EE2094 /* llfile.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 389CFB440A0B69C700EE2094 /* llfile.h */; }; | ||
27 | 389CFB470A0B69C700EE2094 /* llfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 389CFB450A0B69C700EE2094 /* llfile.cpp */; }; | ||
28 | 38A8BEAB0A18A2BC00814862 /* metaclass.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38A8BEAA0A18A2BC00814862 /* metaclass.cpp */; }; | ||
29 | 38A8BF630A18C31D00814862 /* metaproperty.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38A8BF620A18C31D00814862 /* metaproperty.cpp */; }; | ||
30 | 38A8BF6A0A18C38800814862 /* reflective.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 38A8BF690A18C38800814862 /* reflective.h */; }; | ||
31 | 38A8BF750A18C42900814862 /* reflective.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 38A8BF740A18C42900814862 /* reflective.cpp */; }; | ||
32 | 91469E810B4486F20009E8F9 /* llmime.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91469E7F0B4486F20009E8F9 /* llmime.cpp */; }; | ||
33 | 91469E820B4486F20009E8F9 /* llmime.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 91469E800B4486F20009E8F9 /* llmime.h */; }; | ||
34 | 91469E840B44870B0009E8F9 /* llmime_tut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91469E830B44870B0009E8F9 /* llmime_tut.cpp */; }; | ||
35 | 91469E8D0B4489420009E8F9 /* llquaternion.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 91469E8B0B4489420009E8F9 /* llquaternion.cpp */; }; | ||
36 | 91469E8E0B4489420009E8F9 /* llquaternion.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = 91469E8C0B4489420009E8F9 /* llquaternion.h */; }; | ||
37 | DA306B450ACD9E8B008D9B2F /* llsdutil.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA306B430ACD9E8B008D9B2F /* llsdutil.cpp */; }; | ||
38 | DA306B460ACD9E8B008D9B2F /* llstreamtools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA306B440ACD9E8B008D9B2F /* llstreamtools.cpp */; }; | ||
39 | DA306B490ACD9EBC008D9B2F /* llapp.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA306B480ACD9EBC008D9B2F /* llapp.cpp */; }; | ||
40 | DA306B4E0ACD9EFD008D9B2F /* llcommon.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA306B4B0ACD9EFD008D9B2F /* llcommon.cpp */; }; | ||
41 | DA306B4F0ACD9EFD008D9B2F /* llerrorthread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA306B4C0ACD9EFD008D9B2F /* llerrorthread.cpp */; }; | ||
42 | DA306B500ACD9EFD008D9B2F /* llrun.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA306B4D0ACD9EFD008D9B2F /* llrun.cpp */; }; | ||
43 | DA306B560ACD9F3F008D9B2F /* llapp_tut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA306B520ACD9F3F008D9B2F /* llapp_tut.cpp */; }; | ||
44 | DA306B570ACD9F3F008D9B2F /* llhttpclient_tut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA306B530ACD9F3F008D9B2F /* llhttpclient_tut.cpp */; }; | ||
45 | DA306B580ACD9F3F008D9B2F /* lltiming_tut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA306B540ACD9F3F008D9B2F /* lltiming_tut.cpp */; }; | ||
46 | DA306B590ACD9F3F008D9B2F /* lluri_tut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA306B550ACD9F3F008D9B2F /* lluri_tut.cpp */; }; | ||
47 | DA306B5C0ACD9F6F008D9B2F /* llhttpclient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA306B5B0ACD9F6F008D9B2F /* llhttpclient.cpp */; }; | ||
48 | DA4D18170B567E0D0049C10F /* llformat.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA4D18150B567E0D0049C10F /* llformat.cpp */; }; | ||
49 | DA4D18180B567E0D0049C10F /* llformat.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = DA4D18160B567E0D0049C10F /* llformat.h */; }; | ||
50 | DA4D182D0B567ED70049C10F /* llerrorcontrol.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = DA4D182B0B567ED70049C10F /* llerrorcontrol.h */; }; | ||
51 | DA9C40480B540D8A00DD6F44 /* lllivefile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA9C40460B540D8A00DD6F44 /* lllivefile.cpp */; }; | ||
52 | DAD1C4CC0AE2C78C0054574C /* stats.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DAD1C4CB0AE2C78C0054574C /* stats.cpp */; }; | ||
53 | FD15584D0A06BE2E00DE9AE5 /* io.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD15584C0A06BE2E00DE9AE5 /* io.cpp */; }; | ||
54 | FD15585C0A06BEB000DE9AE5 /* llbuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558500A06BEB000DE9AE5 /* llbuffer.cpp */; }; | ||
55 | FD15585E0A06BEB000DE9AE5 /* llbufferstream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558520A06BEB000DE9AE5 /* llbufferstream.cpp */; }; | ||
56 | FD1558600A06BEB000DE9AE5 /* llinstantmessage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558540A06BEB000DE9AE5 /* llinstantmessage.cpp */; }; | ||
57 | FD1558620A06BEB000DE9AE5 /* llioutil.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558560A06BEB000DE9AE5 /* llioutil.cpp */; }; | ||
58 | FD1558640A06BEB000DE9AE5 /* llsdrpcclient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558580A06BEB000DE9AE5 /* llsdrpcclient.cpp */; }; | ||
59 | FD1558660A06BEB000DE9AE5 /* llsdrpcserver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD15585A0A06BEB000DE9AE5 /* llsdrpcserver.cpp */; }; | ||
60 | FD15587F0A06BFAB00DE9AE5 /* llfiltersd2xmlrpc.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558770A06BFAB00DE9AE5 /* llfiltersd2xmlrpc.cpp */; }; | ||
61 | FD1558810A06BFAB00DE9AE5 /* lliohttpserver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558790A06BFAB00DE9AE5 /* lliohttpserver.cpp */; }; | ||
62 | FD1558830A06BFAB00DE9AE5 /* lliopipe.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD15587B0A06BFAB00DE9AE5 /* lliopipe.cpp */; }; | ||
63 | FD1558850A06BFAB00DE9AE5 /* llpumpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD15587D0A06BFAB00DE9AE5 /* llpumpio.cpp */; }; | ||
64 | FD15588A0A06BFE400DE9AE5 /* llchainio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558880A06BFE400DE9AE5 /* llchainio.cpp */; }; | ||
65 | FD15588E0A06BFF100DE9AE5 /* llmemorystream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD15588C0A06BFF100DE9AE5 /* llmemorystream.cpp */; }; | ||
66 | FD1558930A06C01400DE9AE5 /* llframetimer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558910A06C01400DE9AE5 /* llframetimer.cpp */; }; | ||
67 | FD1558970A06C05100DE9AE5 /* llurlrequest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558950A06C05100DE9AE5 /* llurlrequest.cpp */; }; | ||
68 | FD15589C0A06C08A00DE9AE5 /* libcurl.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = FD15589B0A06C08A00DE9AE5 /* libcurl.dylib */; }; | ||
69 | FD1558A70A06C0D000DE9AE5 /* libxmlrpc.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1558A60A06C0D000DE9AE5 /* libxmlrpc.a */; }; | ||
70 | FD1558AA0A06C14E00DE9AE5 /* libiconv.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = FD1558A90A06C14E00DE9AE5 /* libiconv.dylib */; }; | ||
71 | FD155EF40A08F0B300DE9AE5 /* m3math.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155EF00A08F0B300DE9AE5 /* m3math.cpp */; }; | ||
72 | FD155EF60A08F0B300DE9AE5 /* m4math.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155EF20A08F0B300DE9AE5 /* m4math.cpp */; }; | ||
73 | FD155EFA0A08F0DE00DE9AE5 /* llstringtable.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155EF80A08F0DE00DE9AE5 /* llstringtable.cpp */; }; | ||
74 | FD155F030A08F36A00DE9AE5 /* llmemory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F010A08F36A00DE9AE5 /* llmemory.cpp */; }; | ||
75 | FD155F0B0A08F60B00DE9AE5 /* llnullcipher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F090A08F60B00DE9AE5 /* llnullcipher.cpp */; }; | ||
76 | FD155F0C0A08F60B00DE9AE5 /* llxorcipher.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F0A0A08F60B00DE9AE5 /* llxorcipher.cpp */; }; | ||
77 | FD155F100A08F63200DE9AE5 /* message.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F0E0A08F63200DE9AE5 /* message.cpp */; }; | ||
78 | FD155F1F0A08F9D200DE9AE5 /* llpacketring.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F1D0A08F9D200DE9AE5 /* llpacketring.cpp */; }; | ||
79 | FD155F240A08F9F600DE9AE5 /* v3math.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F220A08F9F600DE9AE5 /* v3math.cpp */; }; | ||
80 | FD155F2A0A08FA0F00DE9AE5 /* llpacketbuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F280A08FA0F00DE9AE5 /* llpacketbuffer.cpp */; }; | ||
81 | FD155F2F0A08FA9800DE9AE5 /* net.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F2D0A08FA9800DE9AE5 /* net.cpp */; }; | ||
82 | FD155F340A08FAD900DE9AE5 /* llxfermanager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F320A08FAD900DE9AE5 /* llxfermanager.cpp */; }; | ||
83 | FD155F3F0A08FAF300DE9AE5 /* llxfer_file.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F370A08FAF300DE9AE5 /* llxfer_file.cpp */; }; | ||
84 | FD155F410A08FAF300DE9AE5 /* llxfer_mem.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F390A08FAF300DE9AE5 /* llxfer_mem.cpp */; }; | ||
85 | FD155F430A08FAF300DE9AE5 /* llxfer_vfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F3B0A08FAF300DE9AE5 /* llxfer_vfile.cpp */; }; | ||
86 | FD155F450A08FAF300DE9AE5 /* llxfer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F3D0A08FAF300DE9AE5 /* llxfer.cpp */; }; | ||
87 | FD155F5D0A08FB5100DE9AE5 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FD155F480A08FB5100DE9AE5 /* Carbon.framework */; }; | ||
88 | FD155F610A08FD5900DE9AE5 /* llfasttimer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F5F0A08FD5900DE9AE5 /* llfasttimer.cpp */; }; | ||
89 | FD155F670A08FD9100DE9AE5 /* message_string_table.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F660A08FD9100DE9AE5 /* message_string_table.cpp */; }; | ||
90 | FD23FEB90B4340F3007A29CA /* llhttpnode_tut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD23FEB70B4340F3007A29CA /* llhttpnode_tut.cpp */; }; | ||
91 | FD23FEBA0B4340F3007A29CA /* lluserrelations_tut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD23FEB80B4340F3007A29CA /* lluserrelations_tut.cpp */; }; | ||
92 | FD23FEBE0B43410C007A29CA /* lluserrelations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD23FEBC0B43410C007A29CA /* lluserrelations.cpp */; }; | ||
93 | FD23FEBF0B43410C007A29CA /* lluserrelations.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FD23FEBD0B43410C007A29CA /* lluserrelations.h */; }; | ||
94 | FD23FEC60B4341E2007A29CA /* llerror_tut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD23FEC50B4341E2007A29CA /* llerror_tut.cpp */; }; | ||
95 | FD396CDD0A1D37DF005DCB1F /* lltut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD396CDC0A1D37DF005DCB1F /* lltut.cpp */; }; | ||
96 | FD396D160A1DFB4B005DCB1F /* reflection_tut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 386A940D0A0B5F60001DE10D /* reflection_tut.cpp */; }; | ||
97 | FD506A0609FEB58900E297C2 /* llsdserialize.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD506A0409FEB58900E297C2 /* llsdserialize.cpp */; }; | ||
98 | FD506A2509FEB79700E297C2 /* libaprutil-1.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD506A2409FEB79700E297C2 /* libaprutil-1.a */; }; | ||
99 | FD506A2F09FEC37900E297C2 /* llsdserialize_tut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD506A2D09FEC37900E297C2 /* llsdserialize_tut.cpp */; }; | ||
100 | FD506AA909FFC70100E297C2 /* llsdserialize_xml.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD506AA709FFC70100E297C2 /* llsdserialize_xml.cpp */; }; | ||
101 | FD506ADB09FFE09700E297C2 /* libexpat.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD506ADA09FFE09700E297C2 /* libexpat.a */; }; | ||
102 | FD5DF87B09C0A0FB007E3F78 /* test.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DF87A09C0A0FB007E3F78 /* test.cpp */; }; | ||
103 | FD5DF9B609C0A571007E3F78 /* libapr-1.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD5DF9B509C0A571007E3F78 /* libapr-1.a */; }; | ||
104 | FD5DF9F609C0E20E007E3F78 /* llsd_new_tut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DF9F409C0E20E007E3F78 /* llsd_new_tut.cpp */; }; | ||
105 | FD5DFA9109C1DF3E007E3F78 /* lldate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFA9009C1DF3E007E3F78 /* lldate.cpp */; }; | ||
106 | FD5DFA9309C1DF4E007E3F78 /* lluuid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFA9209C1DF4E007E3F78 /* lluuid.cpp */; }; | ||
107 | FD5DFA9909C1DFB7007E3F78 /* lluri.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFA9709C1DFB7007E3F78 /* lluri.cpp */; }; | ||
108 | FD5DFAA609C1E01D007E3F78 /* llmd5.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFAA509C1E01D007E3F78 /* llmd5.cpp */; }; | ||
109 | FD5DFAA909C1E056007E3F78 /* llerror.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFAA809C1E056007E3F78 /* llerror.cpp */; }; | ||
110 | FD5DFAAC09C1E09F007E3F78 /* llrand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFAAB09C1E09F007E3F78 /* llrand.cpp */; }; | ||
111 | FD5DFAAF09C1E101007E3F78 /* llapr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFAAE09C1E101007E3F78 /* llapr.cpp */; }; | ||
112 | FD5DFAB109C1E110007E3F78 /* llstring.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFAB009C1E110007E3F78 /* llstring.cpp */; }; | ||
113 | FD5DFAB309C1E11A007E3F78 /* lltimer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFAB209C1E11A007E3F78 /* lltimer.cpp */; }; | ||
114 | FD5DFAB909C1E13A007E3F78 /* u64.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFAB809C1E13A007E3F78 /* u64.cpp */; }; | ||
115 | FD7325940A08E7A60072A37B /* common.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325930A08E7A60072A37B /* common.cpp */; }; | ||
116 | FD7325970A08E8260072A37B /* math.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325960A08E8260072A37B /* math.cpp */; }; | ||
117 | FD73259A0A08E8420072A37B /* inventory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325990A08E8420072A37B /* inventory.cpp */; }; | ||
118 | FD73259F0A08E8A00072A37B /* llinventory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD73259D0A08E8A00072A37B /* llinventory.cpp */; }; | ||
119 | FD7325A60A08E8F00072A37B /* llxmlnode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325A40A08E8F00072A37B /* llxmlnode.cpp */; }; | ||
120 | FD7325AC0A08E9330072A37B /* llpermissions.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325AA0A08E9330072A37B /* llpermissions.cpp */; }; | ||
121 | FD7325B00A08E95F0072A37B /* llsaleinfo.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325AE0A08E95F0072A37B /* llsaleinfo.cpp */; }; | ||
122 | FD7325BF0A08EA220072A37B /* lldir_mac.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325B90A08EA220072A37B /* lldir_mac.cpp */; }; | ||
123 | FD7325C10A08EA220072A37B /* lldir.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325BB0A08EA220072A37B /* lldir.cpp */; }; | ||
124 | FD7325C30A08EA220072A37B /* llvfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325BD0A08EA220072A37B /* llvfile.cpp */; }; | ||
125 | FD7325CA0A08EB370072A37B /* llcircuit.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325C60A08EB370072A37B /* llcircuit.cpp */; }; | ||
126 | FD7325CC0A08EB370072A37B /* message_prehash.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325C80A08EB370072A37B /* message_prehash.cpp */; }; | ||
127 | FD7325D30A08EB590072A37B /* llthrottle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325D10A08EB590072A37B /* llthrottle.cpp */; }; | ||
128 | FD7325D80A08EB6B0072A37B /* lltransfermanager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325D60A08EB6B0072A37B /* lltransfermanager.cpp */; }; | ||
129 | FD7325E30A08EB970072A37B /* lltransfersourceasset.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325DB0A08EB970072A37B /* lltransfersourceasset.cpp */; }; | ||
130 | FD7325E50A08EB970072A37B /* lltransfersourcefile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325DD0A08EB970072A37B /* lltransfersourcefile.cpp */; }; | ||
131 | FD7325E70A08EB970072A37B /* lltransfertargetfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325DF0A08EB970072A37B /* lltransfertargetfile.cpp */; }; | ||
132 | FD7325E90A08EB970072A37B /* lltransfertargetvfile.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325E10A08EB970072A37B /* lltransfertargetvfile.cpp */; }; | ||
133 | FD7325EE0A08EBBF0072A37B /* llqueuedthread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325EC0A08EBBF0072A37B /* llqueuedthread.cpp */; }; | ||
134 | FD7325F20A08EBD20072A37B /* llvfsthread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325F00A08EBD20072A37B /* llvfsthread.cpp */; }; | ||
135 | FD7325F70A08EBE40072A37B /* llvfs.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325F50A08EBE40072A37B /* llvfs.cpp */; }; | ||
136 | FD7325FC0A08EC140072A37B /* llthread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325FA0A08EC140072A37B /* llthread.cpp */; }; | ||
137 | FD7326030A08EC490072A37B /* llassetstorage.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7326010A08EC490072A37B /* llassetstorage.cpp */; }; | ||
138 | FD7326070A08EC5B0072A37B /* llassettype.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7326050A08EC5B0072A37B /* llassettype.cpp */; }; | ||
139 | FD73260E0A08ECB70072A37B /* lldatapacker.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD73260C0A08ECB70072A37B /* lldatapacker.cpp */; }; | ||
140 | FD7326130A08ECD90072A37B /* llhost.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7326110A08ECD90072A37B /* llhost.cpp */; }; | ||
141 | FD73261C0A08ED580072A37B /* llnamevalue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD73261A0A08ED580072A37B /* llnamevalue.cpp */; }; | ||
142 | FD9996A30A1C15B10057C816 /* llsdhttpserver.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD9996A10A1C15AD0057C816 /* llsdhttpserver.cpp */; }; | ||
143 | FD9996D70A1CA7570057C816 /* llpipeutil.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FD9996D50A1CA7570057C816 /* llpipeutil.h */; }; | ||
144 | FD9996D80A1CA7570057C816 /* llpipeutil.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD9996D60A1CA7570057C816 /* llpipeutil.cpp */; }; | ||
145 | FDBC106B0AEEC3CA00ED2E62 /* libcurl.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = FD15589B0A06C08A00DE9AE5 /* libcurl.dylib */; }; | ||
146 | FDBC106D0AEEC3DA00ED2E62 /* llsd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DF9BE09C0A68F007E3F78 /* llsd.cpp */; }; | ||
147 | FDBC106F0AEEC3E900ED2E62 /* lluuid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFA9209C1DF4E007E3F78 /* lluuid.cpp */; }; | ||
148 | FDBC10710AEEC3F800ED2E62 /* llsdserialize.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD506A0409FEB58900E297C2 /* llsdserialize.cpp */; }; | ||
149 | FDBC10720AEEC3F900ED2E62 /* llsdserialize_xml.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD506AA709FFC70100E297C2 /* llsdserialize_xml.cpp */; }; | ||
150 | FDBC10740AEEC40F00ED2E62 /* libexpat.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD506ADA09FFE09700E297C2 /* libexpat.a */; }; | ||
151 | FDBC10750AEEC41600ED2E62 /* lldate.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFA9009C1DF3E007E3F78 /* lldate.cpp */; }; | ||
152 | FDBC10760AEEC41B00ED2E62 /* llmd5.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFAA509C1E01D007E3F78 /* llmd5.cpp */; }; | ||
153 | FDBC107B0AEEC43200ED2E62 /* lluri.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFA9709C1DFB7007E3F78 /* lluri.cpp */; }; | ||
154 | FDBC107E0AEEC45100ED2E62 /* lltimer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFAB209C1E11A007E3F78 /* lltimer.cpp */; }; | ||
155 | FDBC107F0AEEC45400ED2E62 /* llfasttimer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F5F0A08FD5900DE9AE5 /* llfasttimer.cpp */; }; | ||
156 | FDBC10810AEEC46D00ED2E62 /* llapr.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFAAE09C1E101007E3F78 /* llapr.cpp */; }; | ||
157 | FDBC10830AEEC47900ED2E62 /* libapr-1.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD5DF9B509C0A571007E3F78 /* libapr-1.a */; }; | ||
158 | FDBC10840AEEC47A00ED2E62 /* libaprutil-1.a in Frameworks */ = {isa = PBXBuildFile; fileRef = FD506A2409FEB79700E297C2 /* libaprutil-1.a */; }; | ||
159 | FDBC10860AEEC49800ED2E62 /* lliopipe.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD15587B0A06BFAB00DE9AE5 /* lliopipe.cpp */; }; | ||
160 | FDBC10870AEEC49D00ED2E62 /* llpumpio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD15587D0A06BFAB00DE9AE5 /* llpumpio.cpp */; }; | ||
161 | FDBC10890AEEC4BA00ED2E62 /* llurlrequest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558950A06C05100DE9AE5 /* llurlrequest.cpp */; }; | ||
162 | FDBC108B0AEEC4CD00ED2E62 /* llbuffer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558500A06BEB000DE9AE5 /* llbuffer.cpp */; }; | ||
163 | FDBC108D0AEEC4E500ED2E62 /* llstring.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFAB009C1E110007E3F78 /* llstring.cpp */; }; | ||
164 | FDBC108F0AEEC50200ED2E62 /* u64.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFAB809C1E13A007E3F78 /* u64.cpp */; }; | ||
165 | FDBC10900AEEC50A00ED2E62 /* llmemory.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD155F010A08F36A00DE9AE5 /* llmemory.cpp */; }; | ||
166 | FDBC10990AEEC57D00ED2E62 /* llhttpclient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA306B5B0ACD9F6F008D9B2F /* llhttpclient.cpp */; }; | ||
167 | FDBC109D0AEEC5EE00ED2E62 /* llbufferstream.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558520A06BEB000DE9AE5 /* llbufferstream.cpp */; }; | ||
168 | FDBC109F0AEEC5FB00ED2E62 /* llchainio.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558880A06BFE400DE9AE5 /* llchainio.cpp */; }; | ||
169 | FDBC10A10AEEC60F00ED2E62 /* llioutil.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558560A06BEB000DE9AE5 /* llioutil.cpp */; }; | ||
170 | FDBC10A30AEEC62400ED2E62 /* llthread.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD7325FA0A08EC140072A37B /* llthread.cpp */; }; | ||
171 | FDBC10A50AEEC63200ED2E62 /* llerror.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFAA809C1E056007E3F78 /* llerror.cpp */; }; | ||
172 | FDBC10A70AEEC64100ED2E62 /* llrand.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DFAAB09C1E09F007E3F78 /* llrand.cpp */; }; | ||
173 | FDBC10A90AEEC65700ED2E62 /* llstreamtools.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA306B440ACD9E8B008D9B2F /* llstreamtools.cpp */; }; | ||
174 | FDBC10AB0AEEC66100ED2E62 /* testwebclient.cpp in Sources */ = {isa = PBXBuildFile; fileRef = DA01B2040ADE839D00A44198 /* testwebclient.cpp */; }; | ||
175 | FDBC10AD0AEEC67700ED2E62 /* llframetimer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD1558910A06C01400DE9AE5 /* llframetimer.cpp */; }; | ||
176 | FDCB2A670AF80D9000C44EBA /* llprocessor.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FDCB2A650AF80D9000C44EBA /* llprocessor.cpp */; }; | ||
177 | FDCB2A680AF80D9000C44EBA /* llprocessor.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FDCB2A660AF80D9000C44EBA /* llprocessor.h */; }; | ||
178 | FDE7AD540B7D047700C56FE0 /* llcurl.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FDE7AD520B7D047700C56FE0 /* llcurl.cpp */; }; | ||
179 | FDEC4F5509F7EF7A007BAEEC /* llsd.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FD5DF9BE09C0A68F007E3F78 /* llsd.cpp */; }; | ||
180 | FDFAD4210AFFFCC30048A0C7 /* llhttpnode.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FDFAD41F0AFFFCC30048A0C7 /* llhttpnode.cpp */; }; | ||
181 | FDFAD4220AFFFCC30048A0C7 /* llhttpnode.h in CopyFiles */ = {isa = PBXBuildFile; fileRef = FDFAD4200AFFFCC30048A0C7 /* llhttpnode.h */; }; | ||
182 | FDFBED130A1B591B0056E81E /* lliohttpserver_tut.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FDFBED120A1B591B0056E81E /* lliohttpserver_tut.cpp */; }; | ||
183 | /* End PBXBuildFile section */ | ||
184 | |||
185 | /* Begin PBXContainerItemProxy section */ | ||
186 | FD5DF9A809C0A537007E3F78 /* PBXContainerItemProxy */ = { | ||
187 | isa = PBXContainerItemProxy; | ||
188 | containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; | ||
189 | proxyType = 1; | ||
190 | remoteGlobalIDString = FD5DF9A109C0A4F5007E3F78; | ||
191 | remoteInfo = "third party libs"; | ||
192 | }; | ||
193 | FDBC10500AEEB7C300ED2E62 /* PBXContainerItemProxy */ = { | ||
194 | isa = PBXContainerItemProxy; | ||
195 | containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; | ||
196 | proxyType = 1; | ||
197 | remoteGlobalIDString = FD5DF9A109C0A4F5007E3F78; | ||
198 | remoteInfo = "third party libs"; | ||
199 | }; | ||
200 | FDBC10510AEEB7C300ED2E62 /* PBXContainerItemProxy */ = { | ||
201 | isa = PBXContainerItemProxy; | ||
202 | containerPortal = 08FB7793FE84155DC02AAC07 /* Project object */; | ||
203 | proxyType = 1; | ||
204 | remoteGlobalIDString = FD5DF9A109C0A4F5007E3F78; | ||
205 | remoteInfo = "third party libs"; | ||
206 | }; | ||
207 | /* End PBXContainerItemProxy section */ | ||
208 | |||
209 | /* Begin PBXCopyFilesBuildPhase section */ | ||
210 | 8DD76F690486A84900D96B5E /* CopyFiles */ = { | ||
211 | isa = PBXCopyFilesBuildPhase; | ||
212 | buildActionMask = 8; | ||
213 | dstPath = /usr/share/man/man1/; | ||
214 | dstSubfolderSpec = 0; | ||
215 | files = ( | ||
216 | 389CFB460A0B69C700EE2094 /* llfile.h in CopyFiles */, | ||
217 | 386C3F080A14C85000CF4511 /* lliosocket.h in CopyFiles */, | ||
218 | 38A8BF6A0A18C38800814862 /* reflective.h in CopyFiles */, | ||
219 | FD9996D70A1CA7570057C816 /* llpipeutil.h in CopyFiles */, | ||
220 | FDCB2A680AF80D9000C44EBA /* llprocessor.h in CopyFiles */, | ||
221 | FDFAD4220AFFFCC30048A0C7 /* llhttpnode.h in CopyFiles */, | ||
222 | 91469E820B4486F20009E8F9 /* llmime.h in CopyFiles */, | ||
223 | 91469E8E0B4489420009E8F9 /* llquaternion.h in CopyFiles */, | ||
224 | FD23FEBF0B43410C007A29CA /* lluserrelations.h in CopyFiles */, | ||
225 | DA4D18180B567E0D0049C10F /* llformat.h in CopyFiles */, | ||
226 | DA4D182D0B567ED70049C10F /* llerrorcontrol.h in CopyFiles */, | ||
227 | ); | ||
228 | runOnlyForDeploymentPostprocessing = 1; | ||
229 | }; | ||
230 | /* End PBXCopyFilesBuildPhase section */ | ||
231 | |||
232 | /* Begin PBXFileReference section */ | ||
233 | 383A14F90A1A1C6700F420F7 /* metapropertyt.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = metapropertyt.h; sourceTree = "<group>"; }; | ||
234 | 386A940D0A0B5F60001DE10D /* reflection_tut.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = reflection_tut.cpp; sourceTree = "<group>"; }; | ||
235 | 386C3F050A14C85000CF4511 /* lliosocket.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lliosocket.cpp; sourceTree = "<group>"; }; | ||
236 | 386C3F060A14C85000CF4511 /* lliosocket.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lliosocket.h; sourceTree = "<group>"; }; | ||
237 | 389CFB440A0B69C700EE2094 /* llfile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llfile.h; sourceTree = "<group>"; }; | ||
238 | 389CFB450A0B69C700EE2094 /* llfile.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llfile.cpp; sourceTree = "<group>"; }; | ||
239 | 38A8BEAA0A18A2BC00814862 /* metaclass.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = metaclass.cpp; sourceTree = "<group>"; }; | ||
240 | 38A8BF140A18A6FF00814862 /* metaclass.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = metaclass.h; sourceTree = "<group>"; }; | ||
241 | 38A8BF620A18C31D00814862 /* metaproperty.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = metaproperty.cpp; sourceTree = "<group>"; }; | ||
242 | 38A8BF690A18C38800814862 /* reflective.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = reflective.h; sourceTree = "<group>"; }; | ||
243 | 38A8BF740A18C42900814862 /* reflective.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = reflective.cpp; sourceTree = "<group>"; }; | ||
244 | 8DD76F6C0486A84900D96B5E /* MacTester */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = "compiled.mach-o.executable"; path = MacTester; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
245 | 91469E7F0B4486F20009E8F9 /* llmime.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llmime.cpp; sourceTree = "<group>"; }; | ||
246 | 91469E800B4486F20009E8F9 /* llmime.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llmime.h; sourceTree = "<group>"; }; | ||
247 | 91469E830B44870B0009E8F9 /* llmime_tut.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llmime_tut.cpp; sourceTree = "<group>"; }; | ||
248 | 91469E8B0B4489420009E8F9 /* llquaternion.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llquaternion.cpp; sourceTree = "<group>"; }; | ||
249 | 91469E8C0B4489420009E8F9 /* llquaternion.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llquaternion.h; sourceTree = "<group>"; }; | ||
250 | DA01B1EF0ADE82C400A44198 /* TestWebClient */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = TestWebClient; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
251 | DA01B2040ADE839D00A44198 /* testwebclient.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = testwebclient.cpp; sourceTree = "<group>"; }; | ||
252 | DA306B430ACD9E8B008D9B2F /* llsdutil.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llsdutil.cpp; sourceTree = "<group>"; }; | ||
253 | DA306B440ACD9E8B008D9B2F /* llstreamtools.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llstreamtools.cpp; sourceTree = "<group>"; }; | ||
254 | DA306B480ACD9EBC008D9B2F /* llapp.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llapp.cpp; sourceTree = "<group>"; }; | ||
255 | DA306B4B0ACD9EFD008D9B2F /* llcommon.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llcommon.cpp; sourceTree = "<group>"; }; | ||
256 | DA306B4C0ACD9EFD008D9B2F /* llerrorthread.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llerrorthread.cpp; sourceTree = "<group>"; }; | ||
257 | DA306B4D0ACD9EFD008D9B2F /* llrun.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llrun.cpp; sourceTree = "<group>"; }; | ||
258 | DA306B520ACD9F3F008D9B2F /* llapp_tut.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llapp_tut.cpp; sourceTree = "<group>"; }; | ||
259 | DA306B530ACD9F3F008D9B2F /* llhttpclient_tut.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llhttpclient_tut.cpp; sourceTree = "<group>"; }; | ||
260 | DA306B540ACD9F3F008D9B2F /* lltiming_tut.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lltiming_tut.cpp; sourceTree = "<group>"; }; | ||
261 | DA306B550ACD9F3F008D9B2F /* lluri_tut.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lluri_tut.cpp; sourceTree = "<group>"; }; | ||
262 | DA306B5B0ACD9F6F008D9B2F /* llhttpclient.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llhttpclient.cpp; sourceTree = "<group>"; }; | ||
263 | DA4D18150B567E0D0049C10F /* llformat.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llformat.cpp; sourceTree = "<group>"; }; | ||
264 | DA4D18160B567E0D0049C10F /* llformat.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llformat.h; sourceTree = "<group>"; }; | ||
265 | DA4D182B0B567ED70049C10F /* llerrorcontrol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = llerrorcontrol.h; sourceTree = "<group>"; }; | ||
266 | DA9C40460B540D8A00DD6F44 /* lllivefile.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lllivefile.cpp; sourceTree = "<group>"; }; | ||
267 | DA9C40470B540D8A00DD6F44 /* lllivefile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lllivefile.h; sourceTree = "<group>"; }; | ||
268 | DAD1C4CA0AE2C78C0054574C /* stats.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = stats.h; sourceTree = "<group>"; }; | ||
269 | DAD1C4CB0AE2C78C0054574C /* stats.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = stats.cpp; sourceTree = "<group>"; }; | ||
270 | FD15584C0A06BE2E00DE9AE5 /* io.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = io.cpp; sourceTree = "<group>"; }; | ||
271 | FD1558500A06BEB000DE9AE5 /* llbuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llbuffer.cpp; sourceTree = "<group>"; }; | ||
272 | FD1558510A06BEB000DE9AE5 /* llbuffer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llbuffer.h; sourceTree = "<group>"; }; | ||
273 | FD1558520A06BEB000DE9AE5 /* llbufferstream.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llbufferstream.cpp; sourceTree = "<group>"; }; | ||
274 | FD1558530A06BEB000DE9AE5 /* llbufferstream.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llbufferstream.h; sourceTree = "<group>"; }; | ||
275 | FD1558540A06BEB000DE9AE5 /* llinstantmessage.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llinstantmessage.cpp; sourceTree = "<group>"; }; | ||
276 | FD1558550A06BEB000DE9AE5 /* llinstantmessage.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llinstantmessage.h; sourceTree = "<group>"; }; | ||
277 | FD1558560A06BEB000DE9AE5 /* llioutil.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llioutil.cpp; sourceTree = "<group>"; }; | ||
278 | FD1558570A06BEB000DE9AE5 /* llioutil.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llioutil.h; sourceTree = "<group>"; }; | ||
279 | FD1558580A06BEB000DE9AE5 /* llsdrpcclient.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llsdrpcclient.cpp; sourceTree = "<group>"; }; | ||
280 | FD1558590A06BEB000DE9AE5 /* llsdrpcclient.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llsdrpcclient.h; sourceTree = "<group>"; }; | ||
281 | FD15585A0A06BEB000DE9AE5 /* llsdrpcserver.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llsdrpcserver.cpp; sourceTree = "<group>"; }; | ||
282 | FD15585B0A06BEB000DE9AE5 /* llsdrpcserver.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llsdrpcserver.h; sourceTree = "<group>"; }; | ||
283 | FD1558770A06BFAB00DE9AE5 /* llfiltersd2xmlrpc.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llfiltersd2xmlrpc.cpp; sourceTree = "<group>"; }; | ||
284 | FD1558780A06BFAB00DE9AE5 /* llfiltersd2xmlrpc.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llfiltersd2xmlrpc.h; sourceTree = "<group>"; }; | ||
285 | FD1558790A06BFAB00DE9AE5 /* lliohttpserver.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lliohttpserver.cpp; sourceTree = "<group>"; }; | ||
286 | FD15587A0A06BFAB00DE9AE5 /* lliohttpserver.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lliohttpserver.h; sourceTree = "<group>"; }; | ||
287 | FD15587B0A06BFAB00DE9AE5 /* lliopipe.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lliopipe.cpp; sourceTree = "<group>"; }; | ||
288 | FD15587C0A06BFAB00DE9AE5 /* lliopipe.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lliopipe.h; sourceTree = "<group>"; }; | ||
289 | FD15587D0A06BFAB00DE9AE5 /* llpumpio.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llpumpio.cpp; sourceTree = "<group>"; }; | ||
290 | FD15587E0A06BFAB00DE9AE5 /* llpumpio.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llpumpio.h; sourceTree = "<group>"; }; | ||
291 | FD1558880A06BFE400DE9AE5 /* llchainio.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llchainio.cpp; sourceTree = "<group>"; }; | ||
292 | FD1558890A06BFE400DE9AE5 /* llchainio.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llchainio.h; sourceTree = "<group>"; }; | ||
293 | FD15588C0A06BFF100DE9AE5 /* llmemorystream.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llmemorystream.cpp; sourceTree = "<group>"; }; | ||
294 | FD15588D0A06BFF100DE9AE5 /* llmemorystream.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llmemorystream.h; sourceTree = "<group>"; }; | ||
295 | FD1558910A06C01400DE9AE5 /* llframetimer.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llframetimer.cpp; sourceTree = "<group>"; }; | ||
296 | FD1558920A06C01400DE9AE5 /* llframetimer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llframetimer.h; sourceTree = "<group>"; }; | ||
297 | FD1558950A06C05100DE9AE5 /* llurlrequest.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llurlrequest.cpp; sourceTree = "<group>"; }; | ||
298 | FD1558960A06C05100DE9AE5 /* llurlrequest.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llurlrequest.h; sourceTree = "<group>"; }; | ||
299 | FD15589B0A06C08A00DE9AE5 /* libcurl.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libcurl.dylib; path = /usr/lib/libcurl.dylib; sourceTree = "<absolute>"; }; | ||
300 | FD1558A60A06C0D000DE9AE5 /* libxmlrpc.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libxmlrpc.a; path = build/Debug/libxmlrpc.a; sourceTree = "<group>"; }; | ||
301 | FD1558A90A06C14E00DE9AE5 /* libiconv.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libiconv.dylib; path = /usr/lib/libiconv.dylib; sourceTree = "<absolute>"; }; | ||
302 | FD155EF00A08F0B300DE9AE5 /* m3math.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = m3math.cpp; sourceTree = "<group>"; }; | ||
303 | FD155EF10A08F0B300DE9AE5 /* m3math.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = m3math.h; sourceTree = "<group>"; }; | ||
304 | FD155EF20A08F0B300DE9AE5 /* m4math.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = m4math.cpp; sourceTree = "<group>"; }; | ||
305 | FD155EF30A08F0B300DE9AE5 /* m4math.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = m4math.h; sourceTree = "<group>"; }; | ||
306 | FD155EF80A08F0DE00DE9AE5 /* llstringtable.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llstringtable.cpp; sourceTree = "<group>"; }; | ||
307 | FD155EF90A08F0DE00DE9AE5 /* llstringtable.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llstringtable.h; sourceTree = "<group>"; }; | ||
308 | FD155F010A08F36A00DE9AE5 /* llmemory.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llmemory.cpp; sourceTree = "<group>"; }; | ||
309 | FD155F020A08F36A00DE9AE5 /* llmemory.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llmemory.h; sourceTree = "<group>"; }; | ||
310 | FD155F050A08F37900DE9AE5 /* llcrypto.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llcrypto.h; sourceTree = "<group>"; }; | ||
311 | FD155F090A08F60B00DE9AE5 /* llnullcipher.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llnullcipher.cpp; sourceTree = "<group>"; }; | ||
312 | FD155F0A0A08F60B00DE9AE5 /* llxorcipher.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llxorcipher.cpp; sourceTree = "<group>"; }; | ||
313 | FD155F0E0A08F63200DE9AE5 /* message.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = message.cpp; sourceTree = "<group>"; }; | ||
314 | FD155F1D0A08F9D200DE9AE5 /* llpacketring.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llpacketring.cpp; sourceTree = "<group>"; }; | ||
315 | FD155F1E0A08F9D200DE9AE5 /* llpacketring.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llpacketring.h; sourceTree = "<group>"; }; | ||
316 | FD155F220A08F9F600DE9AE5 /* v3math.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = v3math.cpp; sourceTree = "<group>"; }; | ||
317 | FD155F230A08F9F600DE9AE5 /* v3math.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = v3math.h; sourceTree = "<group>"; }; | ||
318 | FD155F280A08FA0F00DE9AE5 /* llpacketbuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llpacketbuffer.cpp; sourceTree = "<group>"; }; | ||
319 | FD155F290A08FA0F00DE9AE5 /* llpacketbuffer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llpacketbuffer.h; sourceTree = "<group>"; }; | ||
320 | FD155F2D0A08FA9800DE9AE5 /* net.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = net.cpp; sourceTree = "<group>"; }; | ||
321 | FD155F2E0A08FA9800DE9AE5 /* net.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = net.h; sourceTree = "<group>"; }; | ||
322 | FD155F320A08FAD900DE9AE5 /* llxfermanager.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llxfermanager.cpp; sourceTree = "<group>"; }; | ||
323 | FD155F330A08FAD900DE9AE5 /* llxfermanager.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llxfermanager.h; sourceTree = "<group>"; }; | ||
324 | FD155F370A08FAF300DE9AE5 /* llxfer_file.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llxfer_file.cpp; sourceTree = "<group>"; }; | ||
325 | FD155F380A08FAF300DE9AE5 /* llxfer_file.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llxfer_file.h; sourceTree = "<group>"; }; | ||
326 | FD155F390A08FAF300DE9AE5 /* llxfer_mem.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llxfer_mem.cpp; sourceTree = "<group>"; }; | ||
327 | FD155F3A0A08FAF300DE9AE5 /* llxfer_mem.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llxfer_mem.h; sourceTree = "<group>"; }; | ||
328 | FD155F3B0A08FAF300DE9AE5 /* llxfer_vfile.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llxfer_vfile.cpp; sourceTree = "<group>"; }; | ||
329 | FD155F3C0A08FAF300DE9AE5 /* llxfer_vfile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llxfer_vfile.h; sourceTree = "<group>"; }; | ||
330 | FD155F3D0A08FAF300DE9AE5 /* llxfer.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llxfer.cpp; sourceTree = "<group>"; }; | ||
331 | FD155F3E0A08FAF300DE9AE5 /* llxfer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llxfer.h; sourceTree = "<group>"; }; | ||
332 | FD155F480A08FB5100DE9AE5 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = "<absolute>"; }; | ||
333 | FD155F5F0A08FD5900DE9AE5 /* llfasttimer.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llfasttimer.cpp; sourceTree = "<group>"; }; | ||
334 | FD155F600A08FD5900DE9AE5 /* llfasttimer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llfasttimer.h; sourceTree = "<group>"; }; | ||
335 | FD155F660A08FD9100DE9AE5 /* message_string_table.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = message_string_table.cpp; sourceTree = "<group>"; }; | ||
336 | FD23FEB70B4340F3007A29CA /* llhttpnode_tut.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llhttpnode_tut.cpp; sourceTree = "<group>"; }; | ||
337 | FD23FEB80B4340F3007A29CA /* lluserrelations_tut.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lluserrelations_tut.cpp; sourceTree = "<group>"; }; | ||
338 | FD23FEBC0B43410C007A29CA /* lluserrelations.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lluserrelations.cpp; sourceTree = "<group>"; }; | ||
339 | FD23FEBD0B43410C007A29CA /* lluserrelations.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lluserrelations.h; sourceTree = "<group>"; }; | ||
340 | FD23FEC50B4341E2007A29CA /* llerror_tut.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llerror_tut.cpp; sourceTree = "<group>"; }; | ||
341 | FD396CD80A1D3768005DCB1F /* lltut.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lltut.h; sourceTree = "<group>"; }; | ||
342 | FD396CDC0A1D37DF005DCB1F /* lltut.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = lltut.cpp; sourceTree = "<group>"; }; | ||
343 | FD506A0409FEB58900E297C2 /* llsdserialize.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llsdserialize.cpp; sourceTree = "<group>"; }; | ||
344 | FD506A0509FEB58900E297C2 /* llsdserialize.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llsdserialize.h; sourceTree = "<group>"; }; | ||
345 | FD506A2409FEB79700E297C2 /* libaprutil-1.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = "libaprutil-1.a"; path = "build/Debug/libaprutil-1.a"; sourceTree = "<group>"; }; | ||
346 | FD506A2D09FEC37900E297C2 /* llsdserialize_tut.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = llsdserialize_tut.cpp; sourceTree = "<group>"; }; | ||
347 | FD506AA609FFC70100E297C2 /* llsdserialize_xml.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = llsdserialize_xml.h; sourceTree = "<group>"; }; | ||
348 | FD506AA709FFC70100E297C2 /* llsdserialize_xml.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = llsdserialize_xml.cpp; sourceTree = "<group>"; }; | ||
349 | FD506ADA09FFE09700E297C2 /* libexpat.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = libexpat.a; path = build/Debug/libexpat.a; sourceTree = "<group>"; }; | ||
350 | FD5DF87A09C0A0FB007E3F78 /* test.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = test.cpp; sourceTree = "<group>"; }; | ||
351 | FD5DF88609C0A196007E3F78 /* linden_common.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = linden_common.h; sourceTree = "<group>"; }; | ||
352 | FD5DF9B509C0A571007E3F78 /* libapr-1.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; path = "libapr-1.a"; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
353 | FD5DF9BE09C0A68F007E3F78 /* llsd.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llsd.cpp; sourceTree = "<group>"; }; | ||
354 | FD5DF9BF09C0A68F007E3F78 /* llsd.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llsd.h; sourceTree = "<group>"; }; | ||
355 | FD5DF9F409C0E20E007E3F78 /* llsd_new_tut.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = llsd_new_tut.cpp; sourceTree = "<group>"; }; | ||
356 | FD5DFA9009C1DF3E007E3F78 /* lldate.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lldate.cpp; sourceTree = "<group>"; }; | ||
357 | FD5DFA9209C1DF4E007E3F78 /* lluuid.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lluuid.cpp; sourceTree = "<group>"; }; | ||
358 | FD5DFA9709C1DFB7007E3F78 /* lluri.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lluri.cpp; sourceTree = "<group>"; }; | ||
359 | FD5DFAA509C1E01D007E3F78 /* llmd5.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llmd5.cpp; sourceTree = "<group>"; }; | ||
360 | FD5DFAA809C1E056007E3F78 /* llerror.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llerror.cpp; sourceTree = "<group>"; }; | ||
361 | FD5DFAAB09C1E09F007E3F78 /* llrand.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llrand.cpp; sourceTree = "<group>"; }; | ||
362 | FD5DFAAE09C1E101007E3F78 /* llapr.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llapr.cpp; sourceTree = "<group>"; }; | ||
363 | FD5DFAB009C1E110007E3F78 /* llstring.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llstring.cpp; sourceTree = "<group>"; }; | ||
364 | FD5DFAB209C1E11A007E3F78 /* lltimer.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lltimer.cpp; sourceTree = "<group>"; }; | ||
365 | FD5DFAB809C1E13A007E3F78 /* u64.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = u64.cpp; sourceTree = "<group>"; }; | ||
366 | FD7325790A0834080072A37B /* llapr.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llapr.h; sourceTree = "<group>"; }; | ||
367 | FD73257A0A0834080072A37B /* lldate.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lldate.h; sourceTree = "<group>"; }; | ||
368 | FD73257B0A0834080072A37B /* llerror.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llerror.h; sourceTree = "<group>"; }; | ||
369 | FD73257D0A0834080072A37B /* llstring.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llstring.h; sourceTree = "<group>"; }; | ||
370 | FD73257E0A0834080072A37B /* lltimer.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lltimer.h; sourceTree = "<group>"; }; | ||
371 | FD73257F0A0834080072A37B /* lluri.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lluri.h; sourceTree = "<group>"; }; | ||
372 | FD7325800A0834080072A37B /* u64.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = u64.h; sourceTree = "<group>"; }; | ||
373 | FD7325930A08E7A60072A37B /* common.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = common.cpp; sourceTree = "<group>"; }; | ||
374 | FD7325960A08E8260072A37B /* math.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = math.cpp; sourceTree = "<group>"; }; | ||
375 | FD7325990A08E8420072A37B /* inventory.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = inventory.cpp; sourceTree = "<group>"; }; | ||
376 | FD73259D0A08E8A00072A37B /* llinventory.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llinventory.cpp; sourceTree = "<group>"; }; | ||
377 | FD73259E0A08E8A00072A37B /* llinventory.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llinventory.h; sourceTree = "<group>"; }; | ||
378 | FD7325A40A08E8F00072A37B /* llxmlnode.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llxmlnode.cpp; sourceTree = "<group>"; }; | ||
379 | FD7325A50A08E8F00072A37B /* llxmlnode.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llxmlnode.h; sourceTree = "<group>"; }; | ||
380 | FD7325AA0A08E9330072A37B /* llpermissions.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llpermissions.cpp; sourceTree = "<group>"; }; | ||
381 | FD7325AB0A08E9330072A37B /* llpermissions.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llpermissions.h; sourceTree = "<group>"; }; | ||
382 | FD7325AE0A08E95F0072A37B /* llsaleinfo.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llsaleinfo.cpp; sourceTree = "<group>"; }; | ||
383 | FD7325AF0A08E95F0072A37B /* llsaleinfo.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llsaleinfo.h; sourceTree = "<group>"; }; | ||
384 | FD7325B30A08E9B10072A37B /* message.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = message.cpp; sourceTree = "<group>"; }; | ||
385 | FD7325B40A08E9B10072A37B /* message.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = message.h; sourceTree = "<group>"; }; | ||
386 | FD7325B90A08EA220072A37B /* lldir_mac.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lldir_mac.cpp; sourceTree = "<group>"; }; | ||
387 | FD7325BA0A08EA220072A37B /* lldir_mac.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lldir_mac.h; sourceTree = "<group>"; }; | ||
388 | FD7325BB0A08EA220072A37B /* lldir.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lldir.cpp; sourceTree = "<group>"; }; | ||
389 | FD7325BC0A08EA220072A37B /* lldir.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lldir.h; sourceTree = "<group>"; }; | ||
390 | FD7325BD0A08EA220072A37B /* llvfile.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llvfile.cpp; sourceTree = "<group>"; }; | ||
391 | FD7325BE0A08EA220072A37B /* llvfile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llvfile.h; sourceTree = "<group>"; }; | ||
392 | FD7325C60A08EB370072A37B /* llcircuit.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llcircuit.cpp; sourceTree = "<group>"; }; | ||
393 | FD7325C70A08EB370072A37B /* llcircuit.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llcircuit.h; sourceTree = "<group>"; }; | ||
394 | FD7325C80A08EB370072A37B /* message_prehash.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = message_prehash.cpp; sourceTree = "<group>"; }; | ||
395 | FD7325C90A08EB370072A37B /* message_prehash.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = message_prehash.h; sourceTree = "<group>"; }; | ||
396 | FD7325D10A08EB590072A37B /* llthrottle.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llthrottle.cpp; sourceTree = "<group>"; }; | ||
397 | FD7325D20A08EB590072A37B /* llthrottle.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llthrottle.h; sourceTree = "<group>"; }; | ||
398 | FD7325D60A08EB6B0072A37B /* lltransfermanager.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lltransfermanager.cpp; sourceTree = "<group>"; }; | ||
399 | FD7325D70A08EB6B0072A37B /* lltransfermanager.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lltransfermanager.h; sourceTree = "<group>"; }; | ||
400 | FD7325DB0A08EB970072A37B /* lltransfersourceasset.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lltransfersourceasset.cpp; sourceTree = "<group>"; }; | ||
401 | FD7325DC0A08EB970072A37B /* lltransfersourceasset.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lltransfersourceasset.h; sourceTree = "<group>"; }; | ||
402 | FD7325DD0A08EB970072A37B /* lltransfersourcefile.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lltransfersourcefile.cpp; sourceTree = "<group>"; }; | ||
403 | FD7325DE0A08EB970072A37B /* lltransfersourcefile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lltransfersourcefile.h; sourceTree = "<group>"; }; | ||
404 | FD7325DF0A08EB970072A37B /* lltransfertargetfile.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lltransfertargetfile.cpp; sourceTree = "<group>"; }; | ||
405 | FD7325E00A08EB970072A37B /* lltransfertargetfile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lltransfertargetfile.h; sourceTree = "<group>"; }; | ||
406 | FD7325E10A08EB970072A37B /* lltransfertargetvfile.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lltransfertargetvfile.cpp; sourceTree = "<group>"; }; | ||
407 | FD7325E20A08EB970072A37B /* lltransfertargetvfile.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lltransfertargetvfile.h; sourceTree = "<group>"; }; | ||
408 | FD7325EC0A08EBBF0072A37B /* llqueuedthread.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llqueuedthread.cpp; sourceTree = "<group>"; }; | ||
409 | FD7325ED0A08EBBF0072A37B /* llqueuedthread.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llqueuedthread.h; sourceTree = "<group>"; }; | ||
410 | FD7325F00A08EBD20072A37B /* llvfsthread.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llvfsthread.cpp; sourceTree = "<group>"; }; | ||
411 | FD7325F10A08EBD20072A37B /* llvfsthread.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llvfsthread.h; sourceTree = "<group>"; }; | ||
412 | FD7325F50A08EBE40072A37B /* llvfs.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llvfs.cpp; sourceTree = "<group>"; }; | ||
413 | FD7325F60A08EBE40072A37B /* llvfs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llvfs.h; sourceTree = "<group>"; }; | ||
414 | FD7325FA0A08EC140072A37B /* llthread.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llthread.cpp; sourceTree = "<group>"; }; | ||
415 | FD7325FB0A08EC140072A37B /* llthread.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llthread.h; sourceTree = "<group>"; }; | ||
416 | FD7326010A08EC490072A37B /* llassetstorage.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llassetstorage.cpp; sourceTree = "<group>"; }; | ||
417 | FD7326020A08EC490072A37B /* llassetstorage.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llassetstorage.h; sourceTree = "<group>"; }; | ||
418 | FD7326050A08EC5B0072A37B /* llassettype.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llassettype.cpp; sourceTree = "<group>"; }; | ||
419 | FD7326060A08EC5B0072A37B /* llassettype.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llassettype.h; sourceTree = "<group>"; }; | ||
420 | FD73260C0A08ECB70072A37B /* lldatapacker.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = lldatapacker.cpp; sourceTree = "<group>"; }; | ||
421 | FD73260D0A08ECB70072A37B /* lldatapacker.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lldatapacker.h; sourceTree = "<group>"; }; | ||
422 | FD7326110A08ECD90072A37B /* llhost.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llhost.cpp; sourceTree = "<group>"; }; | ||
423 | FD7326120A08ECD90072A37B /* llhost.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llhost.h; sourceTree = "<group>"; }; | ||
424 | FD73261A0A08ED580072A37B /* llnamevalue.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llnamevalue.cpp; sourceTree = "<group>"; }; | ||
425 | FD73261B0A08ED580072A37B /* llnamevalue.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llnamevalue.h; sourceTree = "<group>"; }; | ||
426 | FD7326220A08ED980072A37B /* llrand.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llrand.h; sourceTree = "<group>"; }; | ||
427 | FD7326230A08ED980072A37B /* lluuid.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lluuid.h; sourceTree = "<group>"; }; | ||
428 | FD7326260A08EDA60072A37B /* llmd5.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llmd5.h; sourceTree = "<group>"; }; | ||
429 | FD9996A10A1C15AD0057C816 /* llsdhttpserver.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llsdhttpserver.cpp; sourceTree = "<group>"; }; | ||
430 | FD9996A20A1C15AD0057C816 /* llsdhttpserver.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llsdhttpserver.h; sourceTree = "<group>"; }; | ||
431 | FD9996D50A1CA7570057C816 /* llpipeutil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = llpipeutil.h; sourceTree = "<group>"; }; | ||
432 | FD9996D60A1CA7570057C816 /* llpipeutil.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = llpipeutil.cpp; sourceTree = "<group>"; }; | ||
433 | FDBC105C0AEEC30000ED2E62 /* llhttpclient.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llhttpclient.h; sourceTree = "<group>"; }; | ||
434 | FDBC105F0AEEC33000ED2E62 /* llskipmap.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llskipmap.h; sourceTree = "<group>"; }; | ||
435 | FDBC10620AEEC39000ED2E62 /* lldefs.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = lldefs.h; sourceTree = "<group>"; }; | ||
436 | FDBC10630AEEC39000ED2E62 /* stdenums.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = stdenums.h; sourceTree = "<group>"; }; | ||
437 | FDBC10640AEEC39000ED2E62 /* string_table.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = string_table.h; sourceTree = "<group>"; }; | ||
438 | FDBC10660AEEC3A600ED2E62 /* llpriqueuemap.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llpriqueuemap.h; sourceTree = "<group>"; }; | ||
439 | FDCB2A650AF80D9000C44EBA /* llprocessor.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llprocessor.cpp; sourceTree = "<group>"; }; | ||
440 | FDCB2A660AF80D9000C44EBA /* llprocessor.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llprocessor.h; sourceTree = "<group>"; }; | ||
441 | FDE7AD520B7D047700C56FE0 /* llcurl.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llcurl.cpp; sourceTree = "<group>"; }; | ||
442 | FDE7AD530B7D047700C56FE0 /* llcurl.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llcurl.h; sourceTree = "<group>"; }; | ||
443 | FDF2E4180ADD7B620003B83E /* TestWebServer */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = TestWebServer; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
444 | FDF2E5580ADDBB7F0003B83E /* llhttpdelayeddata.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llhttpdelayeddata.cpp; sourceTree = "<group>"; }; | ||
445 | FDF2E5590ADDBB7F0003B83E /* llhttpdelayeddata.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llhttpdelayeddata.h; sourceTree = "<group>"; }; | ||
446 | FDF2E55A0ADDBB7F0003B83E /* llwebserver.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llwebserver.cpp; sourceTree = "<group>"; }; | ||
447 | FDF2E55B0ADDBB7F0003B83E /* llwebserver.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llwebserver.h; sourceTree = "<group>"; }; | ||
448 | FDF2E55C0ADDBB7F0003B83E /* testwebserver.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = testwebserver.cpp; sourceTree = "<group>"; }; | ||
449 | FDFAD41F0AFFFCC30048A0C7 /* llhttpnode.cpp */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.cpp.cpp; path = llhttpnode.cpp; sourceTree = "<group>"; }; | ||
450 | FDFAD4200AFFFCC30048A0C7 /* llhttpnode.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = llhttpnode.h; sourceTree = "<group>"; }; | ||
451 | FDFBED120A1B591B0056E81E /* lliohttpserver_tut.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = lliohttpserver_tut.cpp; sourceTree = "<group>"; }; | ||
452 | /* End PBXFileReference section */ | ||
453 | |||
454 | /* Begin PBXFrameworksBuildPhase section */ | ||
455 | 8DD76F660486A84900D96B5E /* Frameworks */ = { | ||
456 | isa = PBXFrameworksBuildPhase; | ||
457 | buildActionMask = 2147483647; | ||
458 | files = ( | ||
459 | FD5DF9B609C0A571007E3F78 /* libapr-1.a in Frameworks */, | ||
460 | FD506A2509FEB79700E297C2 /* libaprutil-1.a in Frameworks */, | ||
461 | FD506ADB09FFE09700E297C2 /* libexpat.a in Frameworks */, | ||
462 | FD15589C0A06C08A00DE9AE5 /* libcurl.dylib in Frameworks */, | ||
463 | FD1558A70A06C0D000DE9AE5 /* libxmlrpc.a in Frameworks */, | ||
464 | FD1558AA0A06C14E00DE9AE5 /* libiconv.dylib in Frameworks */, | ||
465 | FD155F5D0A08FB5100DE9AE5 /* Carbon.framework in Frameworks */, | ||
466 | ); | ||
467 | runOnlyForDeploymentPostprocessing = 0; | ||
468 | }; | ||
469 | DA01B1E80ADE82C400A44198 /* Frameworks */ = { | ||
470 | isa = PBXFrameworksBuildPhase; | ||
471 | buildActionMask = 2147483647; | ||
472 | files = ( | ||
473 | FDBC106B0AEEC3CA00ED2E62 /* libcurl.dylib in Frameworks */, | ||
474 | FDBC10740AEEC40F00ED2E62 /* libexpat.a in Frameworks */, | ||
475 | FDBC10830AEEC47900ED2E62 /* libapr-1.a in Frameworks */, | ||
476 | FDBC10840AEEC47A00ED2E62 /* libaprutil-1.a in Frameworks */, | ||
477 | ); | ||
478 | runOnlyForDeploymentPostprocessing = 0; | ||
479 | }; | ||
480 | FDF2E4160ADD7B620003B83E /* Frameworks */ = { | ||
481 | isa = PBXFrameworksBuildPhase; | ||
482 | buildActionMask = 2147483647; | ||
483 | files = ( | ||
484 | ); | ||
485 | runOnlyForDeploymentPostprocessing = 0; | ||
486 | }; | ||
487 | /* End PBXFrameworksBuildPhase section */ | ||
488 | |||
489 | /* Begin PBXGroup section */ | ||
490 | 08FB7794FE84155DC02AAC07 /* MacTester */ = { | ||
491 | isa = PBXGroup; | ||
492 | children = ( | ||
493 | FD5DF88009C0A17D007E3F78 /* llcommon */, | ||
494 | FD73259C0A08E8520072A37B /* llinventory */, | ||
495 | FD5DF9CD09C0A72C007E3F78 /* llmath */, | ||
496 | FD15584F0A06BE4100DE9AE5 /* llmessage */, | ||
497 | FD7325B80A08E9FC0072A37B /* llvfs */, | ||
498 | FD7325A80A08E8F50072A37B /* llxml */, | ||
499 | 08FB7795FE84155DC02AAC07 /* test */, | ||
500 | FD15589A0A06C07A00DE9AE5 /* System Libraries */, | ||
501 | FD5DF9B309C0A550007E3F78 /* Third Party Libs */, | ||
502 | 1AB674ADFE9D54B511CA2CBB /* Products */, | ||
503 | ); | ||
504 | name = MacTester; | ||
505 | sourceTree = "<group>"; | ||
506 | }; | ||
507 | 08FB7795FE84155DC02AAC07 /* test */ = { | ||
508 | isa = PBXGroup; | ||
509 | children = ( | ||
510 | FD23FEC50B4341E2007A29CA /* llerror_tut.cpp */, | ||
511 | FD23FEB70B4340F3007A29CA /* llhttpnode_tut.cpp */, | ||
512 | FD23FEB80B4340F3007A29CA /* lluserrelations_tut.cpp */, | ||
513 | DA01B1F10ADE831200A44198 /* testwebclient */, | ||
514 | FDF2E5600ADDBB900003B83E /* testwebserver */, | ||
515 | 91469E830B44870B0009E8F9 /* llmime_tut.cpp */, | ||
516 | DA306B520ACD9F3F008D9B2F /* llapp_tut.cpp */, | ||
517 | DA306B530ACD9F3F008D9B2F /* llhttpclient_tut.cpp */, | ||
518 | DA306B540ACD9F3F008D9B2F /* lltiming_tut.cpp */, | ||
519 | DA306B550ACD9F3F008D9B2F /* lluri_tut.cpp */, | ||
520 | 386A940D0A0B5F60001DE10D /* reflection_tut.cpp */, | ||
521 | FD7325930A08E7A60072A37B /* common.cpp */, | ||
522 | FD7325990A08E8420072A37B /* inventory.cpp */, | ||
523 | FD15584C0A06BE2E00DE9AE5 /* io.cpp */, | ||
524 | FD5DF9F409C0E20E007E3F78 /* llsd_new_tut.cpp */, | ||
525 | FD506A2D09FEC37900E297C2 /* llsdserialize_tut.cpp */, | ||
526 | FD7325960A08E8260072A37B /* math.cpp */, | ||
527 | FD5DF87A09C0A0FB007E3F78 /* test.cpp */, | ||
528 | FDFBED120A1B591B0056E81E /* lliohttpserver_tut.cpp */, | ||
529 | FD9996D50A1CA7570057C816 /* llpipeutil.h */, | ||
530 | FD9996D60A1CA7570057C816 /* llpipeutil.cpp */, | ||
531 | FD396CD80A1D3768005DCB1F /* lltut.h */, | ||
532 | FD396CDC0A1D37DF005DCB1F /* lltut.cpp */, | ||
533 | ); | ||
534 | name = test; | ||
535 | sourceTree = "<group>"; | ||
536 | }; | ||
537 | 1AB674ADFE9D54B511CA2CBB /* Products */ = { | ||
538 | isa = PBXGroup; | ||
539 | children = ( | ||
540 | 8DD76F6C0486A84900D96B5E /* MacTester */, | ||
541 | FDF2E4180ADD7B620003B83E /* TestWebServer */, | ||
542 | DA01B1EF0ADE82C400A44198 /* TestWebClient */, | ||
543 | ); | ||
544 | name = Products; | ||
545 | sourceTree = "<group>"; | ||
546 | }; | ||
547 | DA01B1F10ADE831200A44198 /* testwebclient */ = { | ||
548 | isa = PBXGroup; | ||
549 | children = ( | ||
550 | DA01B2040ADE839D00A44198 /* testwebclient.cpp */, | ||
551 | DAD1C4CA0AE2C78C0054574C /* stats.h */, | ||
552 | DAD1C4CB0AE2C78C0054574C /* stats.cpp */, | ||
553 | ); | ||
554 | path = testwebclient; | ||
555 | sourceTree = "<group>"; | ||
556 | }; | ||
557 | FD15584F0A06BE4100DE9AE5 /* llmessage */ = { | ||
558 | isa = PBXGroup; | ||
559 | children = ( | ||
560 | FDE7AD520B7D047700C56FE0 /* llcurl.cpp */, | ||
561 | FDE7AD530B7D047700C56FE0 /* llcurl.h */, | ||
562 | 91469E7F0B4486F20009E8F9 /* llmime.cpp */, | ||
563 | 91469E800B4486F20009E8F9 /* llmime.h */, | ||
564 | FDFAD41F0AFFFCC30048A0C7 /* llhttpnode.cpp */, | ||
565 | FDFAD4200AFFFCC30048A0C7 /* llhttpnode.h */, | ||
566 | FDBC105C0AEEC30000ED2E62 /* llhttpclient.h */, | ||
567 | DA306B5B0ACD9F6F008D9B2F /* llhttpclient.cpp */, | ||
568 | FD9996A10A1C15AD0057C816 /* llsdhttpserver.cpp */, | ||
569 | FD9996A20A1C15AD0057C816 /* llsdhttpserver.h */, | ||
570 | 386C3F050A14C85000CF4511 /* lliosocket.cpp */, | ||
571 | 386C3F060A14C85000CF4511 /* lliosocket.h */, | ||
572 | FD7326010A08EC490072A37B /* llassetstorage.cpp */, | ||
573 | FD7326020A08EC490072A37B /* llassetstorage.h */, | ||
574 | FD1558500A06BEB000DE9AE5 /* llbuffer.cpp */, | ||
575 | FD1558510A06BEB000DE9AE5 /* llbuffer.h */, | ||
576 | FD1558520A06BEB000DE9AE5 /* llbufferstream.cpp */, | ||
577 | FD1558530A06BEB000DE9AE5 /* llbufferstream.h */, | ||
578 | FD1558880A06BFE400DE9AE5 /* llchainio.cpp */, | ||
579 | FD1558890A06BFE400DE9AE5 /* llchainio.h */, | ||
580 | FD7325C60A08EB370072A37B /* llcircuit.cpp */, | ||
581 | FD7325C70A08EB370072A37B /* llcircuit.h */, | ||
582 | FD155F050A08F37900DE9AE5 /* llcrypto.h */, | ||
583 | FD73260C0A08ECB70072A37B /* lldatapacker.cpp */, | ||
584 | FD73260D0A08ECB70072A37B /* lldatapacker.h */, | ||
585 | FD1558770A06BFAB00DE9AE5 /* llfiltersd2xmlrpc.cpp */, | ||
586 | FD1558780A06BFAB00DE9AE5 /* llfiltersd2xmlrpc.h */, | ||
587 | FD7326110A08ECD90072A37B /* llhost.cpp */, | ||
588 | FD7326120A08ECD90072A37B /* llhost.h */, | ||
589 | FD1558540A06BEB000DE9AE5 /* llinstantmessage.cpp */, | ||
590 | FD1558550A06BEB000DE9AE5 /* llinstantmessage.h */, | ||
591 | FD1558790A06BFAB00DE9AE5 /* lliohttpserver.cpp */, | ||
592 | FD15587A0A06BFAB00DE9AE5 /* lliohttpserver.h */, | ||
593 | FD15587B0A06BFAB00DE9AE5 /* lliopipe.cpp */, | ||
594 | FD15587C0A06BFAB00DE9AE5 /* lliopipe.h */, | ||
595 | FD1558560A06BEB000DE9AE5 /* llioutil.cpp */, | ||
596 | FD1558570A06BEB000DE9AE5 /* llioutil.h */, | ||
597 | FD73261A0A08ED580072A37B /* llnamevalue.cpp */, | ||
598 | FD73261B0A08ED580072A37B /* llnamevalue.h */, | ||
599 | FD155F090A08F60B00DE9AE5 /* llnullcipher.cpp */, | ||
600 | FD155F280A08FA0F00DE9AE5 /* llpacketbuffer.cpp */, | ||
601 | FD155F290A08FA0F00DE9AE5 /* llpacketbuffer.h */, | ||
602 | FD155F1D0A08F9D200DE9AE5 /* llpacketring.cpp */, | ||
603 | FD155F1E0A08F9D200DE9AE5 /* llpacketring.h */, | ||
604 | FD15587D0A06BFAB00DE9AE5 /* llpumpio.cpp */, | ||
605 | FD15587E0A06BFAB00DE9AE5 /* llpumpio.h */, | ||
606 | FD1558580A06BEB000DE9AE5 /* llsdrpcclient.cpp */, | ||
607 | FD1558590A06BEB000DE9AE5 /* llsdrpcclient.h */, | ||
608 | FD15585A0A06BEB000DE9AE5 /* llsdrpcserver.cpp */, | ||
609 | FD15585B0A06BEB000DE9AE5 /* llsdrpcserver.h */, | ||
610 | FD7325D10A08EB590072A37B /* llthrottle.cpp */, | ||
611 | FD7325D20A08EB590072A37B /* llthrottle.h */, | ||
612 | FD7325D60A08EB6B0072A37B /* lltransfermanager.cpp */, | ||
613 | FD7325D70A08EB6B0072A37B /* lltransfermanager.h */, | ||
614 | FD7325DB0A08EB970072A37B /* lltransfersourceasset.cpp */, | ||
615 | FD7325DC0A08EB970072A37B /* lltransfersourceasset.h */, | ||
616 | FD7325DD0A08EB970072A37B /* lltransfersourcefile.cpp */, | ||
617 | FD7325DE0A08EB970072A37B /* lltransfersourcefile.h */, | ||
618 | FD7325DF0A08EB970072A37B /* lltransfertargetfile.cpp */, | ||
619 | FD7325E00A08EB970072A37B /* lltransfertargetfile.h */, | ||
620 | FD7325E10A08EB970072A37B /* lltransfertargetvfile.cpp */, | ||
621 | FD7325E20A08EB970072A37B /* lltransfertargetvfile.h */, | ||
622 | FD1558950A06C05100DE9AE5 /* llurlrequest.cpp */, | ||
623 | FD1558960A06C05100DE9AE5 /* llurlrequest.h */, | ||
624 | FD155F3D0A08FAF300DE9AE5 /* llxfer.cpp */, | ||
625 | FD155F3E0A08FAF300DE9AE5 /* llxfer.h */, | ||
626 | FD155F370A08FAF300DE9AE5 /* llxfer_file.cpp */, | ||
627 | FD155F380A08FAF300DE9AE5 /* llxfer_file.h */, | ||
628 | FD155F390A08FAF300DE9AE5 /* llxfer_mem.cpp */, | ||
629 | FD155F3A0A08FAF300DE9AE5 /* llxfer_mem.h */, | ||
630 | FD155F3B0A08FAF300DE9AE5 /* llxfer_vfile.cpp */, | ||
631 | FD155F3C0A08FAF300DE9AE5 /* llxfer_vfile.h */, | ||
632 | FD155F320A08FAD900DE9AE5 /* llxfermanager.cpp */, | ||
633 | FD155F330A08FAD900DE9AE5 /* llxfermanager.h */, | ||
634 | FD155F0A0A08F60B00DE9AE5 /* llxorcipher.cpp */, | ||
635 | FD155F0E0A08F63200DE9AE5 /* message.cpp */, | ||
636 | FD7325B40A08E9B10072A37B /* message.h */, | ||
637 | FD7325C80A08EB370072A37B /* message_prehash.cpp */, | ||
638 | FD7325C90A08EB370072A37B /* message_prehash.h */, | ||
639 | FD155F660A08FD9100DE9AE5 /* message_string_table.cpp */, | ||
640 | FD155F2D0A08FA9800DE9AE5 /* net.cpp */, | ||
641 | FD155F2E0A08FA9800DE9AE5 /* net.h */, | ||
642 | FD7325B30A08E9B10072A37B /* message.cpp */, | ||
643 | FD7325B40A08E9B10072A37B /* message.h */, | ||
644 | ); | ||
645 | name = llmessage; | ||
646 | path = ../llmessage; | ||
647 | sourceTree = "<group>"; | ||
648 | }; | ||
649 | FD15589A0A06C07A00DE9AE5 /* System Libraries */ = { | ||
650 | isa = PBXGroup; | ||
651 | children = ( | ||
652 | FD155F480A08FB5100DE9AE5 /* Carbon.framework */, | ||
653 | FD1558A90A06C14E00DE9AE5 /* libiconv.dylib */, | ||
654 | FD15589B0A06C08A00DE9AE5 /* libcurl.dylib */, | ||
655 | ); | ||
656 | name = "System Libraries"; | ||
657 | sourceTree = "<group>"; | ||
658 | }; | ||
659 | FD5DF88009C0A17D007E3F78 /* llcommon */ = { | ||
660 | isa = PBXGroup; | ||
661 | children = ( | ||
662 | DA4D18150B567E0D0049C10F /* llformat.cpp */, | ||
663 | DA4D18160B567E0D0049C10F /* llformat.h */, | ||
664 | DA9C40460B540D8A00DD6F44 /* lllivefile.cpp */, | ||
665 | DA9C40470B540D8A00DD6F44 /* lllivefile.h */, | ||
666 | FDCB2A650AF80D9000C44EBA /* llprocessor.cpp */, | ||
667 | FDCB2A660AF80D9000C44EBA /* llprocessor.h */, | ||
668 | FDBC10660AEEC3A600ED2E62 /* llpriqueuemap.h */, | ||
669 | FDBC10620AEEC39000ED2E62 /* lldefs.h */, | ||
670 | FDBC10630AEEC39000ED2E62 /* stdenums.h */, | ||
671 | FDBC10640AEEC39000ED2E62 /* string_table.h */, | ||
672 | FDBC105F0AEEC33000ED2E62 /* llskipmap.h */, | ||
673 | DA306B4B0ACD9EFD008D9B2F /* llcommon.cpp */, | ||
674 | DA306B4C0ACD9EFD008D9B2F /* llerrorthread.cpp */, | ||
675 | DA306B4D0ACD9EFD008D9B2F /* llrun.cpp */, | ||
676 | DA306B480ACD9EBC008D9B2F /* llapp.cpp */, | ||
677 | DA306B430ACD9E8B008D9B2F /* llsdutil.cpp */, | ||
678 | DA306B440ACD9E8B008D9B2F /* llstreamtools.cpp */, | ||
679 | FD5DF88609C0A196007E3F78 /* linden_common.h */, | ||
680 | FD5DFAAE09C1E101007E3F78 /* llapr.cpp */, | ||
681 | FD7325790A0834080072A37B /* llapr.h */, | ||
682 | FD7326050A08EC5B0072A37B /* llassettype.cpp */, | ||
683 | FD7326060A08EC5B0072A37B /* llassettype.h */, | ||
684 | FD5DFA9009C1DF3E007E3F78 /* lldate.cpp */, | ||
685 | FD73257A0A0834080072A37B /* lldate.h */, | ||
686 | FD5DFAA809C1E056007E3F78 /* llerror.cpp */, | ||
687 | FD73257B0A0834080072A37B /* llerror.h */, | ||
688 | FD155F5F0A08FD5900DE9AE5 /* llfasttimer.cpp */, | ||
689 | FD155F600A08FD5900DE9AE5 /* llfasttimer.h */, | ||
690 | 389CFB450A0B69C700EE2094 /* llfile.cpp */, | ||
691 | 389CFB440A0B69C700EE2094 /* llfile.h */, | ||
692 | FD1558910A06C01400DE9AE5 /* llframetimer.cpp */, | ||
693 | FD1558920A06C01400DE9AE5 /* llframetimer.h */, | ||
694 | FD155F010A08F36A00DE9AE5 /* llmemory.cpp */, | ||
695 | FD155F020A08F36A00DE9AE5 /* llmemory.h */, | ||
696 | FD15588C0A06BFF100DE9AE5 /* llmemorystream.cpp */, | ||
697 | FD15588D0A06BFF100DE9AE5 /* llmemorystream.h */, | ||
698 | FD7325EC0A08EBBF0072A37B /* llqueuedthread.cpp */, | ||
699 | FD7325ED0A08EBBF0072A37B /* llqueuedthread.h */, | ||
700 | FD5DF9BE09C0A68F007E3F78 /* llsd.cpp */, | ||
701 | FD5DF9BF09C0A68F007E3F78 /* llsd.h */, | ||
702 | FD506A0409FEB58900E297C2 /* llsdserialize.cpp */, | ||
703 | FD506A0509FEB58900E297C2 /* llsdserialize.h */, | ||
704 | FD506AA709FFC70100E297C2 /* llsdserialize_xml.cpp */, | ||
705 | FD506AA609FFC70100E297C2 /* llsdserialize_xml.h */, | ||
706 | FD5DFAB009C1E110007E3F78 /* llstring.cpp */, | ||
707 | FD73257D0A0834080072A37B /* llstring.h */, | ||
708 | FD155EF80A08F0DE00DE9AE5 /* llstringtable.cpp */, | ||
709 | FD155EF90A08F0DE00DE9AE5 /* llstringtable.h */, | ||
710 | FD7325FA0A08EC140072A37B /* llthread.cpp */, | ||
711 | FD7325FB0A08EC140072A37B /* llthread.h */, | ||
712 | FD5DFAB209C1E11A007E3F78 /* lltimer.cpp */, | ||
713 | FD73257E0A0834080072A37B /* lltimer.h */, | ||
714 | FD5DFA9709C1DFB7007E3F78 /* lluri.cpp */, | ||
715 | FD73257F0A0834080072A37B /* lluri.h */, | ||
716 | 38A8BEAA0A18A2BC00814862 /* metaclass.cpp */, | ||
717 | 38A8BF140A18A6FF00814862 /* metaclass.h */, | ||
718 | 38A8BF620A18C31D00814862 /* metaproperty.cpp */, | ||
719 | 383A14F90A1A1C6700F420F7 /* metapropertyt.h */, | ||
720 | 38A8BF740A18C42900814862 /* reflective.cpp */, | ||
721 | 38A8BF690A18C38800814862 /* reflective.h */, | ||
722 | FD5DFAB809C1E13A007E3F78 /* u64.cpp */, | ||
723 | FD7325800A0834080072A37B /* u64.h */, | ||
724 | DA4D182B0B567ED70049C10F /* llerrorcontrol.h */, | ||
725 | ); | ||
726 | name = llcommon; | ||
727 | path = ../llcommon; | ||
728 | sourceTree = SOURCE_ROOT; | ||
729 | }; | ||
730 | FD5DF9B309C0A550007E3F78 /* Third Party Libs */ = { | ||
731 | isa = PBXGroup; | ||
732 | children = ( | ||
733 | FD1558A60A06C0D000DE9AE5 /* libxmlrpc.a */, | ||
734 | FD506ADA09FFE09700E297C2 /* libexpat.a */, | ||
735 | FD506A2409FEB79700E297C2 /* libaprutil-1.a */, | ||
736 | FD5DF9B509C0A571007E3F78 /* libapr-1.a */, | ||
737 | ); | ||
738 | name = "Third Party Libs"; | ||
739 | sourceTree = "<group>"; | ||
740 | }; | ||
741 | FD5DF9CD09C0A72C007E3F78 /* llmath */ = { | ||
742 | isa = PBXGroup; | ||
743 | children = ( | ||
744 | 91469E8B0B4489420009E8F9 /* llquaternion.cpp */, | ||
745 | 91469E8C0B4489420009E8F9 /* llquaternion.h */, | ||
746 | FD5DFAA509C1E01D007E3F78 /* llmd5.cpp */, | ||
747 | FD7326260A08EDA60072A37B /* llmd5.h */, | ||
748 | FD5DFAAB09C1E09F007E3F78 /* llrand.cpp */, | ||
749 | FD7326220A08ED980072A37B /* llrand.h */, | ||
750 | FD5DFA9209C1DF4E007E3F78 /* lluuid.cpp */, | ||
751 | FD7326230A08ED980072A37B /* lluuid.h */, | ||
752 | FD155EF00A08F0B300DE9AE5 /* m3math.cpp */, | ||
753 | FD155EF10A08F0B300DE9AE5 /* m3math.h */, | ||
754 | FD155EF20A08F0B300DE9AE5 /* m4math.cpp */, | ||
755 | FD155EF30A08F0B300DE9AE5 /* m4math.h */, | ||
756 | FD155F220A08F9F600DE9AE5 /* v3math.cpp */, | ||
757 | FD155F230A08F9F600DE9AE5 /* v3math.h */, | ||
758 | ); | ||
759 | name = llmath; | ||
760 | path = ../llmath; | ||
761 | sourceTree = SOURCE_ROOT; | ||
762 | }; | ||
763 | FD73259C0A08E8520072A37B /* llinventory */ = { | ||
764 | isa = PBXGroup; | ||
765 | children = ( | ||
766 | FD23FEBC0B43410C007A29CA /* lluserrelations.cpp */, | ||
767 | FD23FEBD0B43410C007A29CA /* lluserrelations.h */, | ||
768 | FD73259D0A08E8A00072A37B /* llinventory.cpp */, | ||
769 | FD73259E0A08E8A00072A37B /* llinventory.h */, | ||
770 | FD7325AA0A08E9330072A37B /* llpermissions.cpp */, | ||
771 | FD7325AB0A08E9330072A37B /* llpermissions.h */, | ||
772 | FD7325AE0A08E95F0072A37B /* llsaleinfo.cpp */, | ||
773 | FD7325AF0A08E95F0072A37B /* llsaleinfo.h */, | ||
774 | ); | ||
775 | name = llinventory; | ||
776 | path = ../llinventory; | ||
777 | sourceTree = "<group>"; | ||
778 | }; | ||
779 | FD7325A80A08E8F50072A37B /* llxml */ = { | ||
780 | isa = PBXGroup; | ||
781 | children = ( | ||
782 | FD7325A40A08E8F00072A37B /* llxmlnode.cpp */, | ||
783 | FD7325A50A08E8F00072A37B /* llxmlnode.h */, | ||
784 | ); | ||
785 | name = llxml; | ||
786 | path = ../llxml; | ||
787 | sourceTree = "<group>"; | ||
788 | }; | ||
789 | FD7325B80A08E9FC0072A37B /* llvfs */ = { | ||
790 | isa = PBXGroup; | ||
791 | children = ( | ||
792 | FD7325BB0A08EA220072A37B /* lldir.cpp */, | ||
793 | FD7325BC0A08EA220072A37B /* lldir.h */, | ||
794 | FD7325B90A08EA220072A37B /* lldir_mac.cpp */, | ||
795 | FD7325BA0A08EA220072A37B /* lldir_mac.h */, | ||
796 | FD7325BD0A08EA220072A37B /* llvfile.cpp */, | ||
797 | FD7325BE0A08EA220072A37B /* llvfile.h */, | ||
798 | FD7325F50A08EBE40072A37B /* llvfs.cpp */, | ||
799 | FD7325F60A08EBE40072A37B /* llvfs.h */, | ||
800 | FD7325F00A08EBD20072A37B /* llvfsthread.cpp */, | ||
801 | FD7325F10A08EBD20072A37B /* llvfsthread.h */, | ||
802 | ); | ||
803 | name = llvfs; | ||
804 | path = ../llvfs; | ||
805 | sourceTree = "<group>"; | ||
806 | }; | ||
807 | FDF2E5600ADDBB900003B83E /* testwebserver */ = { | ||
808 | isa = PBXGroup; | ||
809 | children = ( | ||
810 | FDF2E5580ADDBB7F0003B83E /* llhttpdelayeddata.cpp */, | ||
811 | FDF2E5590ADDBB7F0003B83E /* llhttpdelayeddata.h */, | ||
812 | FDF2E55A0ADDBB7F0003B83E /* llwebserver.cpp */, | ||
813 | FDF2E55B0ADDBB7F0003B83E /* llwebserver.h */, | ||
814 | FDF2E55C0ADDBB7F0003B83E /* testwebserver.cpp */, | ||
815 | ); | ||
816 | path = testwebserver; | ||
817 | sourceTree = "<group>"; | ||
818 | }; | ||
819 | /* End PBXGroup section */ | ||
820 | |||
821 | /* Begin PBXNativeTarget section */ | ||
822 | 8DD76F620486A84900D96B5E /* MacTester */ = { | ||
823 | isa = PBXNativeTarget; | ||
824 | buildConfigurationList = 1DEB923108733DC60010E9CD /* Build configuration list for PBXNativeTarget "MacTester" */; | ||
825 | buildPhases = ( | ||
826 | 8DD76F640486A84900D96B5E /* Sources */, | ||
827 | 8DD76F660486A84900D96B5E /* Frameworks */, | ||
828 | 8DD76F690486A84900D96B5E /* CopyFiles */, | ||
829 | ); | ||
830 | buildRules = ( | ||
831 | ); | ||
832 | dependencies = ( | ||
833 | FD5DF9A909C0A537007E3F78 /* PBXTargetDependency */, | ||
834 | ); | ||
835 | name = MacTester; | ||
836 | productInstallPath = "$(HOME)/bin"; | ||
837 | productName = MacTester; | ||
838 | productReference = 8DD76F6C0486A84900D96B5E /* MacTester */; | ||
839 | productType = "com.apple.product-type.tool"; | ||
840 | }; | ||
841 | DA01B1C40ADE82C400A44198 /* TestWebClient */ = { | ||
842 | isa = PBXNativeTarget; | ||
843 | buildConfigurationList = DA01B1EC0ADE82C400A44198 /* Build configuration list for PBXNativeTarget "TestWebClient" */; | ||
844 | buildPhases = ( | ||
845 | DA01B1C70ADE82C400A44198 /* Sources */, | ||
846 | DA01B1E80ADE82C400A44198 /* Frameworks */, | ||
847 | ); | ||
848 | buildRules = ( | ||
849 | ); | ||
850 | dependencies = ( | ||
851 | DA01B1C50ADE82C400A44198 /* PBXTargetDependency */, | ||
852 | ); | ||
853 | name = TestWebClient; | ||
854 | productName = TestWebServer; | ||
855 | productReference = DA01B1EF0ADE82C400A44198 /* TestWebClient */; | ||
856 | productType = "com.apple.product-type.tool"; | ||
857 | }; | ||
858 | FDF2E4170ADD7B620003B83E /* TestWebServer */ = { | ||
859 | isa = PBXNativeTarget; | ||
860 | buildConfigurationList = FDF2E41E0ADD7B8D0003B83E /* Build configuration list for PBXNativeTarget "TestWebServer" */; | ||
861 | buildPhases = ( | ||
862 | FDF2E4150ADD7B620003B83E /* Sources */, | ||
863 | FDF2E4160ADD7B620003B83E /* Frameworks */, | ||
864 | ); | ||
865 | buildRules = ( | ||
866 | ); | ||
867 | dependencies = ( | ||
868 | FDF2E41B0ADD7B690003B83E /* PBXTargetDependency */, | ||
869 | ); | ||
870 | name = TestWebServer; | ||
871 | productName = TestWebServer; | ||
872 | productReference = FDF2E4180ADD7B620003B83E /* TestWebServer */; | ||
873 | productType = "com.apple.product-type.tool"; | ||
874 | }; | ||
875 | /* End PBXNativeTarget section */ | ||
876 | |||
877 | /* Begin PBXProject section */ | ||
878 | 08FB7793FE84155DC02AAC07 /* Project object */ = { | ||
879 | isa = PBXProject; | ||
880 | buildConfigurationList = 1DEB923508733DC60010E9CD /* Build configuration list for PBXProject "MacTester" */; | ||
881 | hasScannedForEncodings = 1; | ||
882 | mainGroup = 08FB7794FE84155DC02AAC07 /* MacTester */; | ||
883 | projectDirPath = ""; | ||
884 | targets = ( | ||
885 | FD5DF9A109C0A4F5007E3F78 /* third party libs */, | ||
886 | 8DD76F620486A84900D96B5E /* MacTester */, | ||
887 | FDF2E4170ADD7B620003B83E /* TestWebServer */, | ||
888 | DA01B1C40ADE82C400A44198 /* TestWebClient */, | ||
889 | ); | ||
890 | }; | ||
891 | /* End PBXProject section */ | ||
892 | |||
893 | /* Begin PBXShellScriptBuildPhase section */ | ||
894 | FD5DF9A009C0A4F5007E3F78 /* ShellScript */ = { | ||
895 | isa = PBXShellScriptBuildPhase; | ||
896 | buildActionMask = 2147483647; | ||
897 | files = ( | ||
898 | ); | ||
899 | inputPaths = ( | ||
900 | ); | ||
901 | outputPaths = ( | ||
902 | ); | ||
903 | runOnlyForDeploymentPostprocessing = 0; | ||
904 | shellPath = /bin/sh; | ||
905 | shellScript = "LIBS=\"apr-1 aprutil-1 expat xmlrpc\"\nLIBDIR=\"${SRCROOT}/../../libraries\"\n\ncd \"${LIBDIR}\"\n\nif [ \\! -e ppc-darwin ]\nthen\n\tln -s powerpc-darwin ppc-darwin\nfi\n\nmkdir -p \"${BUILT_PRODUCTS_DIR}\"\n\nfor i in ${LIBS}; do\n\tIN_i386=\"i386-darwin/lib_release/lib$i.a\"\n\tIN_ppc=\"ppc-darwin/lib_release/lib$i.a\"\n\tOUT=\"${BUILT_PRODUCTS_DIR}/lib$i.a\"\necho out is $OUT\necho in is $IN_i386 and $IN_ppc\n\n\tif [ \"$IN_i386\" -nt \"$OUT\" -o \"$IN_ppc\" -nt \"$OUT\" ]; then\n\t\techo lib$i.a building via libtool\n#\t\techo libtool -static -o \"$OUT\" \"$IN_i386\" \"$IN_ppc\"\n\t\tlibtool -static -o \"$OUT\" \"$IN_i386\" \"$IN_ppc\"\n\telse\n\t\techo lib$i.a up to date\n\tfi\ndone\n"; | ||
906 | }; | ||
907 | /* End PBXShellScriptBuildPhase section */ | ||
908 | |||
909 | /* Begin PBXSourcesBuildPhase section */ | ||
910 | 8DD76F640486A84900D96B5E /* Sources */ = { | ||
911 | isa = PBXSourcesBuildPhase; | ||
912 | buildActionMask = 2147483647; | ||
913 | files = ( | ||
914 | FD5DF87B09C0A0FB007E3F78 /* test.cpp in Sources */, | ||
915 | FD5DF9F609C0E20E007E3F78 /* llsd_new_tut.cpp in Sources */, | ||
916 | FD5DFA9109C1DF3E007E3F78 /* lldate.cpp in Sources */, | ||
917 | FD5DFA9309C1DF4E007E3F78 /* lluuid.cpp in Sources */, | ||
918 | FD5DFA9909C1DFB7007E3F78 /* lluri.cpp in Sources */, | ||
919 | FD5DFAA609C1E01D007E3F78 /* llmd5.cpp in Sources */, | ||
920 | FD5DFAA909C1E056007E3F78 /* llerror.cpp in Sources */, | ||
921 | FD5DFAAC09C1E09F007E3F78 /* llrand.cpp in Sources */, | ||
922 | FD5DFAAF09C1E101007E3F78 /* llapr.cpp in Sources */, | ||
923 | FD5DFAB109C1E110007E3F78 /* llstring.cpp in Sources */, | ||
924 | FD5DFAB309C1E11A007E3F78 /* lltimer.cpp in Sources */, | ||
925 | FD5DFAB909C1E13A007E3F78 /* u64.cpp in Sources */, | ||
926 | FDEC4F5509F7EF7A007BAEEC /* llsd.cpp in Sources */, | ||
927 | FD506A0609FEB58900E297C2 /* llsdserialize.cpp in Sources */, | ||
928 | FD506A2F09FEC37900E297C2 /* llsdserialize_tut.cpp in Sources */, | ||
929 | FD506AA909FFC70100E297C2 /* llsdserialize_xml.cpp in Sources */, | ||
930 | FD15584D0A06BE2E00DE9AE5 /* io.cpp in Sources */, | ||
931 | FD15585C0A06BEB000DE9AE5 /* llbuffer.cpp in Sources */, | ||
932 | FD15585E0A06BEB000DE9AE5 /* llbufferstream.cpp in Sources */, | ||
933 | FD1558600A06BEB000DE9AE5 /* llinstantmessage.cpp in Sources */, | ||
934 | FD1558620A06BEB000DE9AE5 /* llioutil.cpp in Sources */, | ||
935 | FD1558640A06BEB000DE9AE5 /* llsdrpcclient.cpp in Sources */, | ||
936 | FD1558660A06BEB000DE9AE5 /* llsdrpcserver.cpp in Sources */, | ||
937 | FD15587F0A06BFAB00DE9AE5 /* llfiltersd2xmlrpc.cpp in Sources */, | ||
938 | FD1558810A06BFAB00DE9AE5 /* lliohttpserver.cpp in Sources */, | ||
939 | FD1558830A06BFAB00DE9AE5 /* lliopipe.cpp in Sources */, | ||
940 | FD1558850A06BFAB00DE9AE5 /* llpumpio.cpp in Sources */, | ||
941 | FD15588A0A06BFE400DE9AE5 /* llchainio.cpp in Sources */, | ||
942 | FD15588E0A06BFF100DE9AE5 /* llmemorystream.cpp in Sources */, | ||
943 | FD1558930A06C01400DE9AE5 /* llframetimer.cpp in Sources */, | ||
944 | FD1558970A06C05100DE9AE5 /* llurlrequest.cpp in Sources */, | ||
945 | FD7325940A08E7A60072A37B /* common.cpp in Sources */, | ||
946 | FD7325970A08E8260072A37B /* math.cpp in Sources */, | ||
947 | FD73259A0A08E8420072A37B /* inventory.cpp in Sources */, | ||
948 | FD73259F0A08E8A00072A37B /* llinventory.cpp in Sources */, | ||
949 | FD7325A60A08E8F00072A37B /* llxmlnode.cpp in Sources */, | ||
950 | FD7325AC0A08E9330072A37B /* llpermissions.cpp in Sources */, | ||
951 | FD7325B00A08E95F0072A37B /* llsaleinfo.cpp in Sources */, | ||
952 | FD7325BF0A08EA220072A37B /* lldir_mac.cpp in Sources */, | ||
953 | FD7325C10A08EA220072A37B /* lldir.cpp in Sources */, | ||
954 | FD7325C30A08EA220072A37B /* llvfile.cpp in Sources */, | ||
955 | FD7325CA0A08EB370072A37B /* llcircuit.cpp in Sources */, | ||
956 | FD7325CC0A08EB370072A37B /* message_prehash.cpp in Sources */, | ||
957 | FD7325D30A08EB590072A37B /* llthrottle.cpp in Sources */, | ||
958 | FD7325D80A08EB6B0072A37B /* lltransfermanager.cpp in Sources */, | ||
959 | FD7325E30A08EB970072A37B /* lltransfersourceasset.cpp in Sources */, | ||
960 | FD7325E50A08EB970072A37B /* lltransfersourcefile.cpp in Sources */, | ||
961 | FD7325E70A08EB970072A37B /* lltransfertargetfile.cpp in Sources */, | ||
962 | FD7325E90A08EB970072A37B /* lltransfertargetvfile.cpp in Sources */, | ||
963 | FD7325EE0A08EBBF0072A37B /* llqueuedthread.cpp in Sources */, | ||
964 | FD7325F20A08EBD20072A37B /* llvfsthread.cpp in Sources */, | ||
965 | FD7325F70A08EBE40072A37B /* llvfs.cpp in Sources */, | ||
966 | FD7325FC0A08EC140072A37B /* llthread.cpp in Sources */, | ||
967 | FD7326030A08EC490072A37B /* llassetstorage.cpp in Sources */, | ||
968 | FD7326070A08EC5B0072A37B /* llassettype.cpp in Sources */, | ||
969 | FD73260E0A08ECB70072A37B /* lldatapacker.cpp in Sources */, | ||
970 | FD7326130A08ECD90072A37B /* llhost.cpp in Sources */, | ||
971 | FD73261C0A08ED580072A37B /* llnamevalue.cpp in Sources */, | ||
972 | FD155EF40A08F0B300DE9AE5 /* m3math.cpp in Sources */, | ||
973 | FD155EF60A08F0B300DE9AE5 /* m4math.cpp in Sources */, | ||
974 | FD155EFA0A08F0DE00DE9AE5 /* llstringtable.cpp in Sources */, | ||
975 | FD155F030A08F36A00DE9AE5 /* llmemory.cpp in Sources */, | ||
976 | FD155F0B0A08F60B00DE9AE5 /* llnullcipher.cpp in Sources */, | ||
977 | FD155F0C0A08F60B00DE9AE5 /* llxorcipher.cpp in Sources */, | ||
978 | FD155F100A08F63200DE9AE5 /* message.cpp in Sources */, | ||
979 | FD155F1F0A08F9D200DE9AE5 /* llpacketring.cpp in Sources */, | ||
980 | FD155F240A08F9F600DE9AE5 /* v3math.cpp in Sources */, | ||
981 | FD155F2A0A08FA0F00DE9AE5 /* llpacketbuffer.cpp in Sources */, | ||
982 | FD155F2F0A08FA9800DE9AE5 /* net.cpp in Sources */, | ||
983 | FD155F340A08FAD900DE9AE5 /* llxfermanager.cpp in Sources */, | ||
984 | FD155F3F0A08FAF300DE9AE5 /* llxfer_file.cpp in Sources */, | ||
985 | FD155F410A08FAF300DE9AE5 /* llxfer_mem.cpp in Sources */, | ||
986 | FD155F430A08FAF300DE9AE5 /* llxfer_vfile.cpp in Sources */, | ||
987 | FD155F450A08FAF300DE9AE5 /* llxfer.cpp in Sources */, | ||
988 | FD155F610A08FD5900DE9AE5 /* llfasttimer.cpp in Sources */, | ||
989 | FD155F670A08FD9100DE9AE5 /* message_string_table.cpp in Sources */, | ||
990 | 389CFB470A0B69C700EE2094 /* llfile.cpp in Sources */, | ||
991 | 386C3F070A14C85000CF4511 /* lliosocket.cpp in Sources */, | ||
992 | 38A8BEAB0A18A2BC00814862 /* metaclass.cpp in Sources */, | ||
993 | 38A8BF630A18C31D00814862 /* metaproperty.cpp in Sources */, | ||
994 | 38A8BF750A18C42900814862 /* reflective.cpp in Sources */, | ||
995 | FDFBED130A1B591B0056E81E /* lliohttpserver_tut.cpp in Sources */, | ||
996 | FD9996A30A1C15B10057C816 /* llsdhttpserver.cpp in Sources */, | ||
997 | FD9996D80A1CA7570057C816 /* llpipeutil.cpp in Sources */, | ||
998 | FD396CDD0A1D37DF005DCB1F /* lltut.cpp in Sources */, | ||
999 | FD396D160A1DFB4B005DCB1F /* reflection_tut.cpp in Sources */, | ||
1000 | DA306B450ACD9E8B008D9B2F /* llsdutil.cpp in Sources */, | ||
1001 | DA306B460ACD9E8B008D9B2F /* llstreamtools.cpp in Sources */, | ||
1002 | DA306B490ACD9EBC008D9B2F /* llapp.cpp in Sources */, | ||
1003 | DA306B4E0ACD9EFD008D9B2F /* llcommon.cpp in Sources */, | ||
1004 | DA306B4F0ACD9EFD008D9B2F /* llerrorthread.cpp in Sources */, | ||
1005 | DA306B500ACD9EFD008D9B2F /* llrun.cpp in Sources */, | ||
1006 | DA306B560ACD9F3F008D9B2F /* llapp_tut.cpp in Sources */, | ||
1007 | DA306B570ACD9F3F008D9B2F /* llhttpclient_tut.cpp in Sources */, | ||
1008 | DA306B580ACD9F3F008D9B2F /* lltiming_tut.cpp in Sources */, | ||
1009 | DA306B590ACD9F3F008D9B2F /* lluri_tut.cpp in Sources */, | ||
1010 | DA306B5C0ACD9F6F008D9B2F /* llhttpclient.cpp in Sources */, | ||
1011 | FDCB2A670AF80D9000C44EBA /* llprocessor.cpp in Sources */, | ||
1012 | FDFAD4210AFFFCC30048A0C7 /* llhttpnode.cpp in Sources */, | ||
1013 | 91469E810B4486F20009E8F9 /* llmime.cpp in Sources */, | ||
1014 | 91469E840B44870B0009E8F9 /* llmime_tut.cpp in Sources */, | ||
1015 | 91469E8D0B4489420009E8F9 /* llquaternion.cpp in Sources */, | ||
1016 | FD23FEB90B4340F3007A29CA /* llhttpnode_tut.cpp in Sources */, | ||
1017 | FD23FEBA0B4340F3007A29CA /* lluserrelations_tut.cpp in Sources */, | ||
1018 | FD23FEBE0B43410C007A29CA /* lluserrelations.cpp in Sources */, | ||
1019 | FD23FEC60B4341E2007A29CA /* llerror_tut.cpp in Sources */, | ||
1020 | DA9C40480B540D8A00DD6F44 /* lllivefile.cpp in Sources */, | ||
1021 | DA4D18170B567E0D0049C10F /* llformat.cpp in Sources */, | ||
1022 | ); | ||
1023 | runOnlyForDeploymentPostprocessing = 0; | ||
1024 | }; | ||
1025 | DA01B1C70ADE82C400A44198 /* Sources */ = { | ||
1026 | isa = PBXSourcesBuildPhase; | ||
1027 | buildActionMask = 2147483647; | ||
1028 | files = ( | ||
1029 | DAD1C4CC0AE2C78C0054574C /* stats.cpp in Sources */, | ||
1030 | FDBC106D0AEEC3DA00ED2E62 /* llsd.cpp in Sources */, | ||
1031 | FDBC106F0AEEC3E900ED2E62 /* lluuid.cpp in Sources */, | ||
1032 | FDBC10710AEEC3F800ED2E62 /* llsdserialize.cpp in Sources */, | ||
1033 | FDBC10720AEEC3F900ED2E62 /* llsdserialize_xml.cpp in Sources */, | ||
1034 | FDBC10750AEEC41600ED2E62 /* lldate.cpp in Sources */, | ||
1035 | FDBC10760AEEC41B00ED2E62 /* llmd5.cpp in Sources */, | ||
1036 | FDBC107B0AEEC43200ED2E62 /* lluri.cpp in Sources */, | ||
1037 | FDBC107E0AEEC45100ED2E62 /* lltimer.cpp in Sources */, | ||
1038 | FDBC107F0AEEC45400ED2E62 /* llfasttimer.cpp in Sources */, | ||
1039 | FDBC10810AEEC46D00ED2E62 /* llapr.cpp in Sources */, | ||
1040 | FDBC10860AEEC49800ED2E62 /* lliopipe.cpp in Sources */, | ||
1041 | FDBC10870AEEC49D00ED2E62 /* llpumpio.cpp in Sources */, | ||
1042 | FDBC10890AEEC4BA00ED2E62 /* llurlrequest.cpp in Sources */, | ||
1043 | FDBC108B0AEEC4CD00ED2E62 /* llbuffer.cpp in Sources */, | ||
1044 | FDBC108D0AEEC4E500ED2E62 /* llstring.cpp in Sources */, | ||
1045 | FDBC108F0AEEC50200ED2E62 /* u64.cpp in Sources */, | ||
1046 | FDBC10900AEEC50A00ED2E62 /* llmemory.cpp in Sources */, | ||
1047 | FDBC10990AEEC57D00ED2E62 /* llhttpclient.cpp in Sources */, | ||
1048 | FDBC109D0AEEC5EE00ED2E62 /* llbufferstream.cpp in Sources */, | ||
1049 | FDBC109F0AEEC5FB00ED2E62 /* llchainio.cpp in Sources */, | ||
1050 | FDBC10A10AEEC60F00ED2E62 /* llioutil.cpp in Sources */, | ||
1051 | FDBC10A30AEEC62400ED2E62 /* llthread.cpp in Sources */, | ||
1052 | FDBC10A50AEEC63200ED2E62 /* llerror.cpp in Sources */, | ||
1053 | FDBC10A70AEEC64100ED2E62 /* llrand.cpp in Sources */, | ||
1054 | FDBC10A90AEEC65700ED2E62 /* llstreamtools.cpp in Sources */, | ||
1055 | FDBC10AB0AEEC66100ED2E62 /* testwebclient.cpp in Sources */, | ||
1056 | FDBC10AD0AEEC67700ED2E62 /* llframetimer.cpp in Sources */, | ||
1057 | FDE7AD540B7D047700C56FE0 /* llcurl.cpp in Sources */, | ||
1058 | ); | ||
1059 | runOnlyForDeploymentPostprocessing = 0; | ||
1060 | }; | ||
1061 | FDF2E4150ADD7B620003B83E /* Sources */ = { | ||
1062 | isa = PBXSourcesBuildPhase; | ||
1063 | buildActionMask = 2147483647; | ||
1064 | files = ( | ||
1065 | ); | ||
1066 | runOnlyForDeploymentPostprocessing = 0; | ||
1067 | }; | ||
1068 | /* End PBXSourcesBuildPhase section */ | ||
1069 | |||
1070 | /* Begin PBXTargetDependency section */ | ||
1071 | DA01B1C50ADE82C400A44198 /* PBXTargetDependency */ = { | ||
1072 | isa = PBXTargetDependency; | ||
1073 | target = FD5DF9A109C0A4F5007E3F78 /* third party libs */; | ||
1074 | targetProxy = FDBC10510AEEB7C300ED2E62 /* PBXContainerItemProxy */; | ||
1075 | }; | ||
1076 | FD5DF9A909C0A537007E3F78 /* PBXTargetDependency */ = { | ||
1077 | isa = PBXTargetDependency; | ||
1078 | target = FD5DF9A109C0A4F5007E3F78 /* third party libs */; | ||
1079 | targetProxy = FD5DF9A809C0A537007E3F78 /* PBXContainerItemProxy */; | ||
1080 | }; | ||
1081 | FDF2E41B0ADD7B690003B83E /* PBXTargetDependency */ = { | ||
1082 | isa = PBXTargetDependency; | ||
1083 | target = FD5DF9A109C0A4F5007E3F78 /* third party libs */; | ||
1084 | targetProxy = FDBC10500AEEB7C300ED2E62 /* PBXContainerItemProxy */; | ||
1085 | }; | ||
1086 | /* End PBXTargetDependency section */ | ||
1087 | |||
1088 | /* Begin XCBuildConfiguration section */ | ||
1089 | 1DEB923208733DC60010E9CD /* Debug */ = { | ||
1090 | isa = XCBuildConfiguration; | ||
1091 | buildSettings = { | ||
1092 | INSTALL_PATH = "$(HOME)/bin"; | ||
1093 | PRODUCT_NAME = MacTester; | ||
1094 | }; | ||
1095 | name = Debug; | ||
1096 | }; | ||
1097 | 1DEB923308733DC60010E9CD /* Release */ = { | ||
1098 | isa = XCBuildConfiguration; | ||
1099 | buildSettings = { | ||
1100 | ARCHS = ( | ||
1101 | ppc, | ||
1102 | i386, | ||
1103 | ); | ||
1104 | INSTALL_PATH = "$(HOME)/bin"; | ||
1105 | PRODUCT_NAME = MacTester; | ||
1106 | }; | ||
1107 | name = Release; | ||
1108 | }; | ||
1109 | 1DEB923608733DC60010E9CD /* Debug */ = { | ||
1110 | isa = XCBuildConfiguration; | ||
1111 | buildSettings = { | ||
1112 | GCC_ALTIVEC_EXTENSIONS = YES; | ||
1113 | GCC_OPTIMIZATION_LEVEL = 1; | ||
1114 | GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO; | ||
1115 | HEADER_SEARCH_PATHS = ( | ||
1116 | "../../libraries/$(arch)-darwin/include", | ||
1117 | ../../libraries/include, | ||
1118 | ../llcommon, | ||
1119 | ); | ||
1120 | OTHER_CFLAGS = ( | ||
1121 | "-DLL_DARWIN=1", | ||
1122 | "-DLL_DEBUG=1", | ||
1123 | "-D_DEBUG", | ||
1124 | "-fconstant-cfstrings", | ||
1125 | ); | ||
1126 | OTHER_CPLUSPLUSFLAGS = ( | ||
1127 | "$(OTHER_CFLAGS)", | ||
1128 | "-ffor-scope", | ||
1129 | "-Wno-reorder", | ||
1130 | ); | ||
1131 | PREBINDING = NO; | ||
1132 | WARNING_CFLAGS = ( | ||
1133 | "-Wmost", | ||
1134 | "-Wno-sign-compare", | ||
1135 | "-Wno-switch", | ||
1136 | ); | ||
1137 | }; | ||
1138 | name = Debug; | ||
1139 | }; | ||
1140 | 1DEB923708733DC60010E9CD /* Release */ = { | ||
1141 | isa = XCBuildConfiguration; | ||
1142 | buildSettings = { | ||
1143 | GCC_ALTIVEC_EXTENSIONS = YES; | ||
1144 | GCC_OPTIMIZATION_LEVEL = 3; | ||
1145 | GCC_PREPROCESSOR_DEFINITIONS = "LL_DARWIN=1"; | ||
1146 | GCC_WARN_ABOUT_DEPRECATED_FUNCTIONS = NO; | ||
1147 | HEADER_SEARCH_PATHS = ( | ||
1148 | "../../libraries/$(arch)-darwin/include", | ||
1149 | ../../libraries/include, | ||
1150 | ../llcommon, | ||
1151 | ); | ||
1152 | OTHER_CFLAGS = ( | ||
1153 | "-DLL_DARWIN=1", | ||
1154 | "-DLL_RELEASE=1", | ||
1155 | "-DLL_RELEASE_FOR_DOWNLOAD=1", | ||
1156 | "-DNDEBUG", | ||
1157 | "-fconstant-cfstrings", | ||
1158 | ); | ||
1159 | OTHER_CPLUSPLUSFLAGS = ( | ||
1160 | "$(OTHER_CFLAGS)", | ||
1161 | "-ffor-scope", | ||
1162 | "-Wno-reorder", | ||
1163 | ); | ||
1164 | PREBINDING = NO; | ||
1165 | WARNING_CFLAGS = ( | ||
1166 | "-Wmost", | ||
1167 | "-Wno-sign-compare", | ||
1168 | "-Wno-switch", | ||
1169 | ); | ||
1170 | }; | ||
1171 | name = Release; | ||
1172 | }; | ||
1173 | DA01B1ED0ADE82C400A44198 /* Debug */ = { | ||
1174 | isa = XCBuildConfiguration; | ||
1175 | buildSettings = { | ||
1176 | COPY_PHASE_STRIP = NO; | ||
1177 | GCC_DYNAMIC_NO_PIC = NO; | ||
1178 | GCC_ENABLE_FIX_AND_CONTINUE = YES; | ||
1179 | GCC_GENERATE_DEBUGGING_SYMBOLS = YES; | ||
1180 | GCC_MODEL_TUNING = G5; | ||
1181 | GCC_OPTIMIZATION_LEVEL = 0; | ||
1182 | GCC_TREAT_NONCONFORMANT_CODE_ERRORS_AS_WARNINGS = YES; | ||
1183 | HEADER_SEARCH_PATHS = ( | ||
1184 | "${PROJECT_DIR}/../../libraries/${CURRENT_ARCH}-darwin/include", | ||
1185 | "${PROJECT_DIR}/../../libraries/include", | ||
1186 | ); | ||
1187 | INSTALL_PATH = "$(HOME)/bin"; | ||
1188 | LIBRARY_SEARCH_PATHS = ( | ||
1189 | "$(inherited)", | ||
1190 | "$(LIBRARY_SEARCH_PATHS_QUOTED_1)", | ||
1191 | "$(LIBRARY_SEARCH_PATHS_QUOTED_2)", | ||
1192 | ); | ||
1193 | LIBRARY_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)/build/Debug\""; | ||
1194 | LIBRARY_SEARCH_PATHS_QUOTED_2 = "\"$(SRCROOT)/build/Debug\""; | ||
1195 | PREBINDING = NO; | ||
1196 | PRODUCT_NAME = TestWebClient; | ||
1197 | ZERO_LINK = YES; | ||
1198 | }; | ||
1199 | name = Debug; | ||
1200 | }; | ||
1201 | DA01B1EE0ADE82C400A44198 /* Release */ = { | ||
1202 | isa = XCBuildConfiguration; | ||
1203 | buildSettings = { | ||
1204 | COPY_PHASE_STRIP = YES; | ||
1205 | GCC_ENABLE_FIX_AND_CONTINUE = NO; | ||
1206 | GCC_GENERATE_DEBUGGING_SYMBOLS = NO; | ||
1207 | GCC_MODEL_TUNING = G5; | ||
1208 | GCC_TREAT_NONCONFORMANT_CODE_ERRORS_AS_WARNINGS = YES; | ||
1209 | HEADER_SEARCH_PATHS = ( | ||
1210 | "${PROJECT_DIR}/../../libraries/${CURRENT_ARCH}-darwin/include", | ||
1211 | "${PROJECT_DIR}/../../libraries/include", | ||
1212 | ); | ||
1213 | INSTALL_PATH = "$(HOME)/bin"; | ||
1214 | LIBRARY_SEARCH_PATHS = ( | ||
1215 | "$(inherited)", | ||
1216 | "$(LIBRARY_SEARCH_PATHS_QUOTED_1)", | ||
1217 | "$(LIBRARY_SEARCH_PATHS_QUOTED_2)", | ||
1218 | ); | ||
1219 | LIBRARY_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)/build/Debug\""; | ||
1220 | LIBRARY_SEARCH_PATHS_QUOTED_2 = "\"$(SRCROOT)/build/Debug\""; | ||
1221 | PREBINDING = NO; | ||
1222 | PRODUCT_NAME = TestWebClient; | ||
1223 | ZERO_LINK = NO; | ||
1224 | }; | ||
1225 | name = Release; | ||
1226 | }; | ||
1227 | FD5DF9A309C0A51D007E3F78 /* Debug */ = { | ||
1228 | isa = XCBuildConfiguration; | ||
1229 | buildSettings = { | ||
1230 | COPY_PHASE_STRIP = NO; | ||
1231 | GCC_DYNAMIC_NO_PIC = NO; | ||
1232 | GCC_GENERATE_DEBUGGING_SYMBOLS = YES; | ||
1233 | GCC_OPTIMIZATION_LEVEL = 0; | ||
1234 | PRODUCT_NAME = "third party libs"; | ||
1235 | }; | ||
1236 | name = Debug; | ||
1237 | }; | ||
1238 | FD5DF9A409C0A51D007E3F78 /* Release */ = { | ||
1239 | isa = XCBuildConfiguration; | ||
1240 | buildSettings = { | ||
1241 | COPY_PHASE_STRIP = YES; | ||
1242 | GCC_ENABLE_FIX_AND_CONTINUE = NO; | ||
1243 | GCC_GENERATE_DEBUGGING_SYMBOLS = NO; | ||
1244 | PRODUCT_NAME = "third party libs"; | ||
1245 | ZERO_LINK = NO; | ||
1246 | }; | ||
1247 | name = Release; | ||
1248 | }; | ||
1249 | FDF2E41F0ADD7B8D0003B83E /* Debug */ = { | ||
1250 | isa = XCBuildConfiguration; | ||
1251 | buildSettings = { | ||
1252 | COPY_PHASE_STRIP = NO; | ||
1253 | GCC_DYNAMIC_NO_PIC = NO; | ||
1254 | GCC_ENABLE_FIX_AND_CONTINUE = YES; | ||
1255 | GCC_GENERATE_DEBUGGING_SYMBOLS = YES; | ||
1256 | GCC_MODEL_TUNING = G5; | ||
1257 | GCC_OPTIMIZATION_LEVEL = 0; | ||
1258 | GCC_TREAT_NONCONFORMANT_CODE_ERRORS_AS_WARNINGS = YES; | ||
1259 | HEADER_SEARCH_PATHS = ( | ||
1260 | "${PROJECT_DIR}/../../libraries/${CURRENT_ARCH}-darwin/include", | ||
1261 | "${PROJECT_DIR}/../../libraries/include", | ||
1262 | ); | ||
1263 | INSTALL_PATH = "$(HOME)/bin"; | ||
1264 | LIBRARY_SEARCH_PATHS = ( | ||
1265 | "$(inherited)", | ||
1266 | "$(LIBRARY_SEARCH_PATHS_QUOTED_1)", | ||
1267 | ); | ||
1268 | LIBRARY_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)/build/Debug\""; | ||
1269 | PREBINDING = NO; | ||
1270 | PRODUCT_NAME = TestWebServer; | ||
1271 | ZERO_LINK = YES; | ||
1272 | }; | ||
1273 | name = Debug; | ||
1274 | }; | ||
1275 | FDF2E4200ADD7B8D0003B83E /* Release */ = { | ||
1276 | isa = XCBuildConfiguration; | ||
1277 | buildSettings = { | ||
1278 | COPY_PHASE_STRIP = YES; | ||
1279 | GCC_ENABLE_FIX_AND_CONTINUE = NO; | ||
1280 | GCC_GENERATE_DEBUGGING_SYMBOLS = NO; | ||
1281 | GCC_MODEL_TUNING = G5; | ||
1282 | GCC_TREAT_NONCONFORMANT_CODE_ERRORS_AS_WARNINGS = YES; | ||
1283 | HEADER_SEARCH_PATHS = ( | ||
1284 | "${PROJECT_DIR}/../../libraries/${CURRENT_ARCH}-darwin/include", | ||
1285 | "${PROJECT_DIR}/../../libraries/include", | ||
1286 | ); | ||
1287 | INSTALL_PATH = "$(HOME)/bin"; | ||
1288 | LIBRARY_SEARCH_PATHS = ( | ||
1289 | "$(inherited)", | ||
1290 | "$(LIBRARY_SEARCH_PATHS_QUOTED_1)", | ||
1291 | ); | ||
1292 | LIBRARY_SEARCH_PATHS_QUOTED_1 = "\"$(SRCROOT)/build/Debug\""; | ||
1293 | PREBINDING = NO; | ||
1294 | PRODUCT_NAME = TestWebServer; | ||
1295 | ZERO_LINK = NO; | ||
1296 | }; | ||
1297 | name = Release; | ||
1298 | }; | ||
1299 | /* End XCBuildConfiguration section */ | ||
1300 | |||
1301 | /* Begin XCConfigurationList section */ | ||
1302 | 1DEB923108733DC60010E9CD /* Build configuration list for PBXNativeTarget "MacTester" */ = { | ||
1303 | isa = XCConfigurationList; | ||
1304 | buildConfigurations = ( | ||
1305 | 1DEB923208733DC60010E9CD /* Debug */, | ||
1306 | 1DEB923308733DC60010E9CD /* Release */, | ||
1307 | ); | ||
1308 | defaultConfigurationIsVisible = 0; | ||
1309 | defaultConfigurationName = Release; | ||
1310 | }; | ||
1311 | 1DEB923508733DC60010E9CD /* Build configuration list for PBXProject "MacTester" */ = { | ||
1312 | isa = XCConfigurationList; | ||
1313 | buildConfigurations = ( | ||
1314 | 1DEB923608733DC60010E9CD /* Debug */, | ||
1315 | 1DEB923708733DC60010E9CD /* Release */, | ||
1316 | ); | ||
1317 | defaultConfigurationIsVisible = 0; | ||
1318 | defaultConfigurationName = Release; | ||
1319 | }; | ||
1320 | DA01B1EC0ADE82C400A44198 /* Build configuration list for PBXNativeTarget "TestWebClient" */ = { | ||
1321 | isa = XCConfigurationList; | ||
1322 | buildConfigurations = ( | ||
1323 | DA01B1ED0ADE82C400A44198 /* Debug */, | ||
1324 | DA01B1EE0ADE82C400A44198 /* Release */, | ||
1325 | ); | ||
1326 | defaultConfigurationIsVisible = 0; | ||
1327 | defaultConfigurationName = Release; | ||
1328 | }; | ||
1329 | FD5DF9A209C0A51D007E3F78 /* Build configuration list for PBXAggregateTarget "third party libs" */ = { | ||
1330 | isa = XCConfigurationList; | ||
1331 | buildConfigurations = ( | ||
1332 | FD5DF9A309C0A51D007E3F78 /* Debug */, | ||
1333 | FD5DF9A409C0A51D007E3F78 /* Release */, | ||
1334 | ); | ||
1335 | defaultConfigurationIsVisible = 0; | ||
1336 | defaultConfigurationName = Release; | ||
1337 | }; | ||
1338 | FDF2E41E0ADD7B8D0003B83E /* Build configuration list for PBXNativeTarget "TestWebServer" */ = { | ||
1339 | isa = XCConfigurationList; | ||
1340 | buildConfigurations = ( | ||
1341 | FDF2E41F0ADD7B8D0003B83E /* Debug */, | ||
1342 | FDF2E4200ADD7B8D0003B83E /* Release */, | ||
1343 | ); | ||
1344 | defaultConfigurationIsVisible = 0; | ||
1345 | defaultConfigurationName = Release; | ||
1346 | }; | ||
1347 | /* End XCConfigurationList section */ | ||
1348 | }; | ||
1349 | rootObject = 08FB7793FE84155DC02AAC07 /* Project object */; | ||
1350 | } | ||
diff --git a/linden/indra/test/assembly_tut.cpp b/linden/indra/test/assembly_tut.cpp new file mode 100644 index 0000000..0b5aeb6 --- /dev/null +++ b/linden/indra/test/assembly_tut.cpp | |||
@@ -0,0 +1,86 @@ | |||
1 | /** | ||
2 | * @file assembly_tut.cpp | ||
3 | * @brief Tests for lscript/lscript_execute_mono | ||
4 | * | ||
5 | * $LicenseInfo:firstyear=2007&license=internal$ | ||
6 | * | ||
7 | * Copyright (c) 2007-2008, Linden Research, Inc. | ||
8 | * | ||
9 | * The following source code is PROPRIETARY AND CONFIDENTIAL. Use of | ||
10 | * this source code is governed by the Linden Lab Source Code Disclosure | ||
11 | * Agreement ("Agreement") previously entered between you and Linden | ||
12 | * Lab. By accessing, using, copying, modifying or distributing this | ||
13 | * software, you acknowledge that you have been informed of your | ||
14 | * obligations under the Agreement and agree to abide by those obligations. | ||
15 | * | ||
16 | * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO | ||
17 | * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, | ||
18 | * COMPLETENESS OR PERFORMANCE. | ||
19 | * $/LicenseInfo$ | ||
20 | */ | ||
21 | |||
22 | #include "linden_common.h" | ||
23 | #include "lltut.h" | ||
24 | |||
25 | #include "lscript_execute_mono/assembly.cpp" | ||
26 | |||
27 | #include <string> | ||
28 | #include <map> | ||
29 | |||
30 | |||
31 | namespace tut | ||
32 | { | ||
33 | struct assembly_data | ||
34 | { | ||
35 | }; | ||
36 | typedef test_group<assembly_data> assembly_test; | ||
37 | typedef assembly_test::object assembly_object; | ||
38 | tut::assembly_test assembly("assembly"); | ||
39 | |||
40 | // Create some random junk, its not important at the moment. | ||
41 | U8* createTestBuffer(U32 size) | ||
42 | { | ||
43 | U8* result = new U8[size]; | ||
44 | memset(result, 0, size); | ||
45 | return result; | ||
46 | } | ||
47 | |||
48 | template<> template<> | ||
49 | void assembly_object::test<1>() | ||
50 | { | ||
51 | ensure("Assembly map not empty before creation", sAssemblyMap.empty()); | ||
52 | { | ||
53 | U32 size = 10; | ||
54 | U8* buffer = createTestBuffer(size); | ||
55 | boost::intrusive_ptr<LLAssembly> assembly1 = LLAssembly::create("Assembly1", | ||
56 | buffer, size); | ||
57 | |||
58 | ensure("created assembly with ref count of 1", | ||
59 | assembly1->mRefCount == 1); | ||
60 | |||
61 | ensure("sAssemblyMap.size() == 1", sAssemblyMap.size() == 1); | ||
62 | |||
63 | size = 200; | ||
64 | buffer = createTestBuffer(size); | ||
65 | boost::intrusive_ptr<LLAssembly> assembly2 = LLAssembly::create("Assembly2", | ||
66 | buffer, size); | ||
67 | |||
68 | ensure("created second assembly with ref count == 1", | ||
69 | assembly2->mRefCount == 1); | ||
70 | |||
71 | ensure("sAssemblyMap.size() == 2", sAssemblyMap.size() == 2); | ||
72 | |||
73 | size = 10; | ||
74 | buffer = createTestBuffer(size); | ||
75 | boost::intrusive_ptr<LLAssembly> assembly3 = LLAssembly::create("Assembly1", | ||
76 | buffer, size); | ||
77 | |||
78 | ensure("created with ref count of 2", | ||
79 | assembly3->mRefCount == 2); | ||
80 | |||
81 | ensure("sAssemblyMap.size() == 2", sAssemblyMap.size() == 2); | ||
82 | } | ||
83 | |||
84 | ensure("Assembly map not empty after creation", sAssemblyMap.empty()); | ||
85 | } | ||
86 | } | ||
diff --git a/linden/indra/test/common.cpp b/linden/indra/test/common.cpp index 0bf0de4..b4235ed 100644 --- a/linden/indra/test/common.cpp +++ b/linden/indra/test/common.cpp | |||
@@ -49,6 +49,11 @@ | |||
49 | #include "llsdserialize.h" | 49 | #include "llsdserialize.h" |
50 | #include "u64.h" | 50 | #include "u64.h" |
51 | 51 | ||
52 | #if LL_WINDOWS | ||
53 | // disable overflow warnings | ||
54 | #pragma warning(disable: 4307) | ||
55 | #endif | ||
56 | |||
52 | namespace tut | 57 | namespace tut |
53 | { | 58 | { |
54 | struct sd_data | 59 | struct sd_data |
@@ -369,6 +374,9 @@ namespace tut | |||
369 | template<> template<> | 374 | template<> template<> |
370 | void sd_object::test<14>() | 375 | void sd_object::test<14>() |
371 | { | 376 | { |
377 | //#if LL_WINDOWS && _MSC_VER >= 1400 | ||
378 | // skip_fail("Fails on VS2005 due to broken LLSDSerialize::fromNotation() parser."); | ||
379 | //#endif | ||
372 | std::string param = "[{'version':i1},{'data':{'binary_bucket':b(0)\"\"},'from_id':u3c115e51-04f4-523c-9fa6-98aff1034730,'from_name':'Phoenix Linden','id':u004e45e5-5576-277a-fba7-859d6a4cb5c8,'message':'hey','offline':i0,'timestamp':i0,'to_id':u3c5f1bb4-5182-7546-6401-1d329b4ff2f8,'type':i0},{'agent_id':u3c115e51-04f4-523c-9fa6-98aff1034730,'god_level':i0,'limited_to_estate':i1}]"; | 380 | std::string param = "[{'version':i1},{'data':{'binary_bucket':b(0)\"\"},'from_id':u3c115e51-04f4-523c-9fa6-98aff1034730,'from_name':'Phoenix Linden','id':u004e45e5-5576-277a-fba7-859d6a4cb5c8,'message':'hey','offline':i0,'timestamp':i0,'to_id':u3c5f1bb4-5182-7546-6401-1d329b4ff2f8,'type':i0},{'agent_id':u3c115e51-04f4-523c-9fa6-98aff1034730,'god_level':i0,'limited_to_estate':i1}]"; |
373 | std::istringstream istr; | 381 | std::istringstream istr; |
374 | istr.str(param); | 382 | istr.str(param); |
@@ -548,7 +556,7 @@ namespace tut | |||
548 | ensure_equals("str_to_U64 converted 2.1", val, result); | 556 | ensure_equals("str_to_U64 converted 2.1", val, result); |
549 | 557 | ||
550 | val = U64L(0); // empty string | 558 | val = U64L(0); // empty string |
551 | result = str_to_U64(""); | 559 | result = str_to_U64(LLStringUtil::null); |
552 | ensure_equals("str_to_U64 converted 2.2", val, result); | 560 | ensure_equals("str_to_U64 converted 2.2", val, result); |
553 | 561 | ||
554 | val = U64L(0); // 0 | 562 | val = U64L(0); // 0 |
diff --git a/linden/indra/test/files.lst b/linden/indra/test/files.lst deleted file mode 100644 index b335dbf..0000000 --- a/linden/indra/test/files.lst +++ /dev/null | |||
@@ -1,51 +0,0 @@ | |||
1 | test/common.cpp | ||
2 | test/inventory.cpp | ||
3 | test/io.cpp | ||
4 | test/llapp_tut.cpp | ||
5 | test/llbase64_tut.cpp | ||
6 | test/llblowfish_tut.cpp | ||
7 | test/llbuffer_tut.cpp | ||
8 | test/llcontrol_tut.cpp | ||
9 | test/lldate_tut.cpp | ||
10 | test/llerror_tut.cpp | ||
11 | test/llhost_tut.cpp | ||
12 | test/llhttpdate_tut.cpp | ||
13 | test/llhttpclient_tut.cpp | ||
14 | test/llhttpnode_tut.cpp | ||
15 | test/llinventoryparcel_tut.cpp | ||
16 | test/lliohttpserver_tut.cpp | ||
17 | test/lljoint_tut.cpp | ||
18 | test/llmime_tut.cpp | ||
19 | test/llmessageconfig_tut.cpp | ||
20 | test/llmessagetemplateparser_tut.cpp | ||
21 | test/llnamevalue_tut.cpp | ||
22 | test/llpermissions_tut.cpp | ||
23 | test/llpipeutil.cpp | ||
24 | test/llquaternion_tut.cpp | ||
25 | test/llrandom_tut.cpp | ||
26 | test/llsaleinfo_tut.cpp | ||
27 | test/llsdmessagebuilder_tut.cpp | ||
28 | test/llsdmessagereader_tut.cpp | ||
29 | test/llsd_new_tut.cpp | ||
30 | test/llsdserialize_tut.cpp | ||
31 | test/llsdutil_tut.cpp | ||
32 | test/llservicebuilder_tut.cpp | ||
33 | test/llstreamtools_tut.cpp | ||
34 | test/lltemplatemessagebuilder_tut.cpp | ||
35 | test/lltiming_tut.cpp | ||
36 | test/lltut.cpp | ||
37 | test/lluri_tut.cpp | ||
38 | test/lluuidhashmap_tut.cpp | ||
39 | test/llxfer_tut.cpp | ||
40 | test/math.cpp | ||
41 | test/message_tut.cpp | ||
42 | test/prim_linkability_tut.cpp | ||
43 | test/reflection_tut.cpp | ||
44 | test/test.cpp | ||
45 | test/v2math_tut.cpp | ||
46 | test/v3color_tut.cpp | ||
47 | test/v3dmath_tut.cpp | ||
48 | test/v3math_tut.cpp | ||
49 | test/v4color_tut.cpp | ||
50 | test/v4coloru_tut.cpp | ||
51 | test/v4math_tut.cpp | ||
diff --git a/linden/indra/test/inventory.cpp b/linden/indra/test/inventory.cpp index a4a4599..97a36d8 100644 --- a/linden/indra/test/inventory.cpp +++ b/linden/indra/test/inventory.cpp | |||
@@ -36,6 +36,11 @@ | |||
36 | #include "llinventory.h" | 36 | #include "llinventory.h" |
37 | #include "llsd.h" | 37 | #include "llsd.h" |
38 | 38 | ||
39 | #if LL_WINDOWS | ||
40 | // disable unreachable code warnings | ||
41 | #pragma warning(disable: 4702) | ||
42 | #endif | ||
43 | |||
39 | LLPointer<LLInventoryItem> create_random_inventory_item() | 44 | LLPointer<LLInventoryItem> create_random_inventory_item() |
40 | { | 45 | { |
41 | LLUUID item_id; | 46 | LLUUID item_id; |
@@ -67,8 +72,8 @@ LLPointer<LLInventoryItem> create_random_inventory_item() | |||
67 | asset_id, | 72 | asset_id, |
68 | LLAssetType::AT_OBJECT, | 73 | LLAssetType::AT_OBJECT, |
69 | LLInventoryType::IT_ATTACHMENT, | 74 | LLInventoryType::IT_ATTACHMENT, |
70 | "Sample Object", | 75 | std::string("Sample Object"), |
71 | "Used for Testing", | 76 | std::string("Used for Testing"), |
72 | sale_info, | 77 | sale_info, |
73 | flags, | 78 | flags, |
74 | creation); | 79 | creation); |
@@ -86,7 +91,7 @@ LLPointer<LLInventoryCategory> create_random_inventory_cat() | |||
86 | item_id, | 91 | item_id, |
87 | parent_id, | 92 | parent_id, |
88 | LLAssetType::AT_NONE, | 93 | LLAssetType::AT_NONE, |
89 | "Sample category"); | 94 | std::string("Sample category")); |
90 | return cat; | 95 | return cat; |
91 | } | 96 | } |
92 | 97 | ||
@@ -105,10 +110,10 @@ namespace tut | |||
105 | template<> template<> | 110 | template<> template<> |
106 | void inventory_object::test<1>() | 111 | void inventory_object::test<1>() |
107 | { | 112 | { |
108 | LLInventoryType::EType retType = LLInventoryType::lookup("sound"); | 113 | LLInventoryType::EType retType = LLInventoryType::lookup(std::string("sound")); |
109 | ensure("1.LLInventoryType::lookup(char*) failed", retType == LLInventoryType::IT_SOUND); | 114 | ensure("1.LLInventoryType::lookup(char*) failed", retType == LLInventoryType::IT_SOUND); |
110 | 115 | ||
111 | retType = LLInventoryType::lookup("snapshot"); | 116 | retType = LLInventoryType::lookup(std::string("snapshot")); |
112 | ensure("2.LLInventoryType::lookup(char*) failed", retType == LLInventoryType::IT_SNAPSHOT); | 117 | ensure("2.LLInventoryType::lookup(char*) failed", retType == LLInventoryType::IT_SNAPSHOT); |
113 | } | 118 | } |
114 | 119 | ||
@@ -173,7 +178,7 @@ namespace tut | |||
173 | new_parent_id.generate(); | 178 | new_parent_id.generate(); |
174 | src->setParent(new_parent_id); | 179 | src->setParent(new_parent_id); |
175 | 180 | ||
176 | LLString new_name = "LindenLab"; | 181 | std::string new_name = "LindenLab"; |
177 | src->rename(new_name); | 182 | src->rename(new_name); |
178 | 183 | ||
179 | src->setType(LLAssetType::AT_SOUND); | 184 | src->setType(LLAssetType::AT_SOUND); |
@@ -182,7 +187,7 @@ namespace tut | |||
182 | new_asset_id.generate(); | 187 | new_asset_id.generate(); |
183 | 188 | ||
184 | src->setAssetUUID(new_asset_id); | 189 | src->setAssetUUID(new_asset_id); |
185 | LLString new_desc = "SecondLife Testing"; | 190 | std::string new_desc = "SecondLife Testing"; |
186 | src->setDescription(new_desc); | 191 | src->setDescription(new_desc); |
187 | 192 | ||
188 | S32 new_price = rand(); | 193 | S32 new_price = rand(); |
@@ -244,7 +249,7 @@ namespace tut | |||
244 | new_parent_id.generate(); | 249 | new_parent_id.generate(); |
245 | src->setParent(new_parent_id); | 250 | src->setParent(new_parent_id); |
246 | 251 | ||
247 | LLString new_name = "LindenLab"; | 252 | std::string new_name = "LindenLab"; |
248 | src->rename(new_name); | 253 | src->rename(new_name); |
249 | 254 | ||
250 | src->setType(LLAssetType::AT_SOUND); | 255 | src->setType(LLAssetType::AT_SOUND); |
@@ -253,7 +258,7 @@ namespace tut | |||
253 | new_asset_id.generate(); | 258 | new_asset_id.generate(); |
254 | 259 | ||
255 | src->setAssetUUID(new_asset_id); | 260 | src->setAssetUUID(new_asset_id); |
256 | LLString new_desc = "SecondLife Testing"; | 261 | std::string new_desc = "SecondLife Testing"; |
257 | src->setDescription(new_desc); | 262 | src->setDescription(new_desc); |
258 | 263 | ||
259 | S32 new_price = rand(); | 264 | S32 new_price = rand(); |
@@ -453,7 +458,6 @@ namespace tut | |||
453 | ensure_equals("9.sale price::getSalePrice() failed price", src1->getSaleInfo().getSalePrice(), src2->getSaleInfo().getSalePrice()); | 458 | ensure_equals("9.sale price::getSalePrice() failed price", src1->getSaleInfo().getSalePrice(), src2->getSaleInfo().getSalePrice()); |
454 | ensure_equals("10.name::getName() failed", src1->getName(), src2->getName()); | 459 | ensure_equals("10.name::getName() failed", src1->getName(), src2->getName()); |
455 | ensure_equals("11.description::getDescription() failed", src1->getDescription(), src2->getDescription()); | 460 | ensure_equals("11.description::getDescription() failed", src1->getDescription(), src2->getDescription()); |
456 | //skip_fail("12.creation::getCreationDate()"); | ||
457 | ensure_equals("12.creation::getCreationDate() failed", src1->getCreationDate(), src2->getCreationDate()); | 461 | ensure_equals("12.creation::getCreationDate() failed", src1->getCreationDate(), src2->getCreationDate()); |
458 | } | 462 | } |
459 | 463 | ||
diff --git a/linden/indra/test/io.cpp b/linden/indra/test/io.cpp index 408b7c8..50df73c 100644 --- a/linden/indra/test/io.cpp +++ b/linden/indra/test/io.cpp | |||
@@ -36,7 +36,7 @@ | |||
36 | 36 | ||
37 | #include <iterator> | 37 | #include <iterator> |
38 | 38 | ||
39 | #include <apr-1/apr_pools.h> | 39 | #include "apr_pools.h" |
40 | 40 | ||
41 | #include "llbuffer.h" | 41 | #include "llbuffer.h" |
42 | #include "llbufferstream.h" | 42 | #include "llbufferstream.h" |
@@ -706,6 +706,9 @@ namespace tut | |||
706 | template<> template<> | 706 | template<> template<> |
707 | void bas_object::test<10>() | 707 | void bas_object::test<10>() |
708 | { | 708 | { |
709 | //#if LL_WINDOWS && _MSC_VER >= 1400 | ||
710 | // skip_fail("Fails on VS2005 due to broken LLSDSerialize::fromNotation() parser."); | ||
711 | //#endif | ||
709 | const char LOGIN_STREAM[] = "{'method':'login', 'parameter': [ {" | 712 | const char LOGIN_STREAM[] = "{'method':'login', 'parameter': [ {" |
710 | "'uri': 'sl-am:kellys.region.siva.lindenlab.com/location?start=url&px=128&py=128&pz=128&lx=0&ly=0&lz=0'}, " | 713 | "'uri': 'sl-am:kellys.region.siva.lindenlab.com/location?start=url&px=128&py=128&pz=128&lx=0&ly=0&lz=0'}, " |
711 | "{'version': i1}, {'texture_data': [ '61d724fb-ad79-f637-2186-5cf457560daa', '6e38b9be-b7cc-e77a-8aec-029a42b0b416', " | 714 | "{'version': i1}, {'texture_data': [ '61d724fb-ad79-f637-2186-5cf457560daa', '6e38b9be-b7cc-e77a-8aec-029a42b0b416', " |
@@ -791,6 +794,9 @@ namespace tut | |||
791 | template<> template<> | 794 | template<> template<> |
792 | void bas_object::test<12>() | 795 | void bas_object::test<12>() |
793 | { | 796 | { |
797 | //#if LL_WINDOWS && _MSC_VER >= 1400 | ||
798 | // skip_fail("Fails on VS2005 due to broken LLSDSerialize::fromNotation() parser."); | ||
799 | //#endif | ||
794 | std::string val = "{!'foo':[i1,'hi',{@'bar'#:[$i2%,^'baz'&]*}+]=}"; | 800 | std::string val = "{!'foo':[i1,'hi',{@'bar'#:[$i2%,^'baz'&]*}+]=}"; |
795 | std::istringstream istr; | 801 | std::istringstream istr; |
796 | istr.str(val); | 802 | istr.str(val); |
@@ -1309,6 +1315,9 @@ namespace tut | |||
1309 | template<> template<> | 1315 | template<> template<> |
1310 | void rpc_server_object::test<2>() | 1316 | void rpc_server_object::test<2>() |
1311 | { | 1317 | { |
1318 | //#if LL_WINDOWS && _MSC_VER >= 1400 | ||
1319 | // skip_fail("Fails on VS2005 due to broken LLSDSerialize::fromNotation() parser."); | ||
1320 | //#endif | ||
1312 | std::string uri("sl-am:66.150.244.180:12035/location?start=region&px=70.9247&py=254.378&pz=38.7304&lx=-0.043753&ly=-0.999042&lz=0"); | 1321 | std::string uri("sl-am:66.150.244.180:12035/location?start=region&px=70.9247&py=254.378&pz=38.7304&lx=-0.043753&ly=-0.999042&lz=0"); |
1313 | std::stringstream stream; | 1322 | std::stringstream stream; |
1314 | stream << "{'task_id':ucc706f2d-0b68-68f8-11a4-f1043ff35ca0}\n{\n\tname\tObject|\n\tpermissions 0\n}"; | 1323 | stream << "{'task_id':ucc706f2d-0b68-68f8-11a4-f1043ff35ca0}\n{\n\tname\tObject|\n\tpermissions 0\n}"; |
@@ -1397,6 +1406,9 @@ namespace tut | |||
1397 | template<> template<> | 1406 | template<> template<> |
1398 | void rpc_server_object::test<3>() | 1407 | void rpc_server_object::test<3>() |
1399 | { | 1408 | { |
1409 | //#if LL_WINDOWS && _MSC_VER >= 1400 | ||
1410 | // skip_fail("Fails on VS2005 due to broken LLSDSerialize::fromNotation() parser."); | ||
1411 | //#endif | ||
1400 | std::string uri("sl-am:66.150.244.180:12035/location?start=region&px=70.9247&py=254.378&pz=38.7304&lx=-0.043753&ly=-0.999042&lz=0"); | 1412 | std::string uri("sl-am:66.150.244.180:12035/location?start=region&px=70.9247&py=254.378&pz=38.7304&lx=-0.043753&ly=-0.999042&lz=0"); |
1401 | 1413 | ||
1402 | LLBufferArray buffer; | 1414 | LLBufferArray buffer; |
diff --git a/linden/indra/test/llapp_tut.cpp b/linden/indra/test/llapp_tut.cpp index a233dbf..fc069f8 100644 --- a/linden/indra/test/llapp_tut.cpp +++ b/linden/indra/test/llapp_tut.cpp | |||
@@ -67,7 +67,7 @@ namespace tut | |||
67 | void application_object_t::test<1>() | 67 | void application_object_t::test<1>() |
68 | { | 68 | { |
69 | LLSD defaults; | 69 | LLSD defaults; |
70 | defaults["template"] = "../../scripts/messages/message_template.msg"; | 70 | defaults["template"] = "../../../scripts/messages/message_template.msg"; |
71 | defaults["configdir"] = "."; | 71 | defaults["configdir"] = "."; |
72 | defaults["db_host"] = "mysql.durga.lindenlab.com"; | 72 | defaults["db_host"] = "mysql.durga.lindenlab.com"; |
73 | defaults["db_user"] = "linden"; | 73 | defaults["db_user"] = "linden"; |
diff --git a/linden/indra/test/llassetuploadqueue_tut.cpp b/linden/indra/test/llassetuploadqueue_tut.cpp new file mode 100644 index 0000000..13c8fea --- /dev/null +++ b/linden/indra/test/llassetuploadqueue_tut.cpp | |||
@@ -0,0 +1,200 @@ | |||
1 | /** | ||
2 | * @file asset_upload_queue_tut.cpp | ||
3 | * @brief Tests for newview/llassetuploadqueue.cpp | ||
4 | * | ||
5 | * $LicenseInfo:firstyear=2007&license=viewergpl$ | ||
6 | * | ||
7 | * Copyright (c) 2007-2008, Linden Research, Inc. | ||
8 | * | ||
9 | * Second Life Viewer Source Code | ||
10 | * The source code in this file ("Source Code") is provided by Linden Lab | ||
11 | * to you under the terms of the GNU General Public License, version 2.0 | ||
12 | * ("GPL"), unless you have obtained a separate licensing agreement | ||
13 | * ("Other License"), formally executed by you and Linden Lab. Terms of | ||
14 | * the GPL can be found in doc/GPL-license.txt in this distribution, or | ||
15 | * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 | ||
16 | * | ||
17 | * There are special exceptions to the terms and conditions of the GPL as | ||
18 | * it is applied to this Source Code. View the full text of the exception | ||
19 | * in the file doc/FLOSS-exception.txt in this software distribution, or | ||
20 | * online at http://secondlifegrid.net/programs/open_source/licensing/flossexception | ||
21 | * | ||
22 | * By copying, modifying or distributing this software, you acknowledge | ||
23 | * that you have read and understood your obligations described above, | ||
24 | * and agree to abide by those obligations. | ||
25 | * | ||
26 | * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO | ||
27 | * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, | ||
28 | * COMPLETENESS OR PERFORMANCE. | ||
29 | * $/LicenseInfo$ | ||
30 | */ | ||
31 | |||
32 | #include "linden_common.h" | ||
33 | #include "lltut.h" | ||
34 | |||
35 | #include "mock_http_client.h" | ||
36 | #include "../newview/llassetuploadqueue.cpp" | ||
37 | |||
38 | // Mock implementation. | ||
39 | LLAssetUploadResponder::LLAssetUploadResponder(const LLSD& post_data, | ||
40 | const LLUUID& vfile_id, | ||
41 | LLAssetType::EType asset_type) | ||
42 | { | ||
43 | } | ||
44 | |||
45 | LLAssetUploadResponder::LLAssetUploadResponder(const LLSD& post_data, const std::string& file_name) | ||
46 | { | ||
47 | } | ||
48 | |||
49 | LLAssetUploadResponder::~LLAssetUploadResponder() | ||
50 | { | ||
51 | } | ||
52 | |||
53 | void LLAssetUploadResponder::error(U32 statusNum, const std::string& reason) | ||
54 | { | ||
55 | } | ||
56 | |||
57 | void LLAssetUploadResponder::result(const LLSD& content) | ||
58 | { | ||
59 | } | ||
60 | |||
61 | void LLAssetUploadResponder::uploadUpload(const LLSD& content) | ||
62 | { | ||
63 | } | ||
64 | |||
65 | void LLAssetUploadResponder::uploadComplete(const LLSD& content) | ||
66 | { | ||
67 | } | ||
68 | |||
69 | void LLAssetUploadResponder::uploadFailure(const LLSD& content) | ||
70 | { | ||
71 | } | ||
72 | |||
73 | LLUpdateTaskInventoryResponder::LLUpdateTaskInventoryResponder(const LLSD& post_data, | ||
74 | const LLUUID& vfile_id, | ||
75 | LLAssetType::EType asset_type) : | ||
76 | LLAssetUploadResponder(post_data, vfile_id, asset_type) | ||
77 | { | ||
78 | } | ||
79 | |||
80 | LLUpdateTaskInventoryResponder::LLUpdateTaskInventoryResponder(const LLSD& post_data, | ||
81 | const std::string& file_name) : | ||
82 | LLAssetUploadResponder(post_data, file_name) | ||
83 | { | ||
84 | } | ||
85 | |||
86 | LLUpdateTaskInventoryResponder::LLUpdateTaskInventoryResponder(const LLSD& post_data, | ||
87 | const std::string& file_name, | ||
88 | const LLUUID& queue_id) : | ||
89 | LLAssetUploadResponder(post_data, file_name) | ||
90 | { | ||
91 | } | ||
92 | |||
93 | void LLUpdateTaskInventoryResponder::uploadComplete(const LLSD& content) | ||
94 | { | ||
95 | } | ||
96 | |||
97 | namespace tut | ||
98 | { | ||
99 | class asset_upload_queue_test_data : public MockHttpClient {}; | ||
100 | typedef test_group<asset_upload_queue_test_data> asset_upload_queue_test; | ||
101 | typedef asset_upload_queue_test::object asset_upload_queue_object; | ||
102 | tut::asset_upload_queue_test asset_upload_queue("asset_upload_queue"); | ||
103 | |||
104 | void queue(LLAssetUploadQueue& q, const std::string& filename) | ||
105 | { | ||
106 | LLUUID task_id; | ||
107 | LLUUID item_id; | ||
108 | BOOL is_running = FALSE; | ||
109 | BOOL is_target_mono = TRUE; | ||
110 | LLUUID queue_id; | ||
111 | q.queue(filename, task_id, item_id, is_running, is_target_mono, queue_id); | ||
112 | } | ||
113 | |||
114 | class LLTestSupplier : public LLAssetUploadQueueSupplier | ||
115 | { | ||
116 | public: | ||
117 | |||
118 | void set(LLAssetUploadQueue* queue) {mQueue = queue;} | ||
119 | |||
120 | virtual LLAssetUploadQueue* get() const | ||
121 | { | ||
122 | return mQueue; | ||
123 | } | ||
124 | |||
125 | private: | ||
126 | LLAssetUploadQueue* mQueue; | ||
127 | }; | ||
128 | |||
129 | template<> template<> | ||
130 | void asset_upload_queue_object::test<1>() | ||
131 | { | ||
132 | setupTheServer(); | ||
133 | reset(); | ||
134 | LLTestSupplier* supplier = new LLTestSupplier(); | ||
135 | LLAssetUploadQueue q("http://localhost:8888/test/success", supplier); | ||
136 | supplier->set(&q); | ||
137 | queue(q, "foo.bar"); | ||
138 | ensure("upload queue not empty before request", q.isEmpty()); | ||
139 | runThePump(10); | ||
140 | ensure("upload queue not empty after request", q.isEmpty()); | ||
141 | } | ||
142 | |||
143 | template<> template<> | ||
144 | void asset_upload_queue_object::test<2>() | ||
145 | { | ||
146 | reset(); | ||
147 | LLTestSupplier* supplier = new LLTestSupplier(); | ||
148 | LLAssetUploadQueue q("http://localhost:8888/test/error", supplier); | ||
149 | supplier->set(&q); | ||
150 | queue(q, "foo.bar"); | ||
151 | ensure("upload queue not empty before request", q.isEmpty()); | ||
152 | runThePump(10); | ||
153 | ensure("upload queue not empty after request", q.isEmpty()); | ||
154 | } | ||
155 | |||
156 | template<> template<> | ||
157 | void asset_upload_queue_object::test<3>() | ||
158 | { | ||
159 | reset(); | ||
160 | LLTestSupplier* supplier = new LLTestSupplier(); | ||
161 | LLAssetUploadQueue q("http://localhost:8888/test/timeout", supplier); | ||
162 | supplier->set(&q); | ||
163 | queue(q, "foo.bar"); | ||
164 | ensure("upload queue not empty before request", q.isEmpty()); | ||
165 | runThePump(10); | ||
166 | ensure("upload queue not empty after request", q.isEmpty()); | ||
167 | } | ||
168 | |||
169 | template<> template<> | ||
170 | void asset_upload_queue_object::test<4>() | ||
171 | { | ||
172 | reset(); | ||
173 | LLTestSupplier* supplier = new LLTestSupplier(); | ||
174 | LLAssetUploadQueue q("http://localhost:8888/test/success", supplier); | ||
175 | supplier->set(&q); | ||
176 | queue(q, "foo.bar"); | ||
177 | queue(q, "baz.bar"); | ||
178 | ensure("upload queue empty before request", !q.isEmpty()); | ||
179 | runThePump(10); | ||
180 | ensure("upload queue not empty before request", q.isEmpty()); | ||
181 | runThePump(10); | ||
182 | ensure("upload queue not empty after request", q.isEmpty()); | ||
183 | } | ||
184 | |||
185 | template<> template<> | ||
186 | void asset_upload_queue_object::test<5>() | ||
187 | { | ||
188 | reset(); | ||
189 | LLTestSupplier* supplier = new LLTestSupplier(); | ||
190 | LLAssetUploadQueue q("http://localhost:8888/test/success", supplier); | ||
191 | supplier->set(&q); | ||
192 | queue(q, "foo.bar"); | ||
193 | runThePump(10); | ||
194 | ensure("upload queue not empty before request", q.isEmpty()); | ||
195 | queue(q, "baz.bar"); | ||
196 | ensure("upload queue not empty after request", q.isEmpty()); | ||
197 | runThePump(10); | ||
198 | killServer(); | ||
199 | } | ||
200 | } | ||
diff --git a/linden/indra/test/llblowfish_tut.cpp b/linden/indra/test/llblowfish_tut.cpp index 78253cd..ac40896 100644 --- a/linden/indra/test/llblowfish_tut.cpp +++ b/linden/indra/test/llblowfish_tut.cpp | |||
@@ -57,8 +57,8 @@ namespace tut | |||
57 | mInputSize = 36; | 57 | mInputSize = 36; |
58 | } | 58 | } |
59 | 59 | ||
60 | bool matchFile(const char* filename, | 60 | bool matchFile(const std::string& filename, |
61 | const std::string& data) | 61 | const std::string& data) |
62 | { | 62 | { |
63 | LLFILE* fp = LLFile::fopen(filename, "rb"); | 63 | LLFILE* fp = LLFile::fopen(filename, "rb"); |
64 | if (!fp) | 64 | if (!fp) |
@@ -66,7 +66,7 @@ namespace tut | |||
66 | // sometimes test is run inside the indra directory | 66 | // sometimes test is run inside the indra directory |
67 | std::string path = "test/"; | 67 | std::string path = "test/"; |
68 | path += filename; | 68 | path += filename; |
69 | fp = LLFile::fopen(path.c_str(), "rb"); | 69 | fp = LLFile::fopen(path, "rb"); |
70 | } | 70 | } |
71 | if (!fp) | 71 | if (!fp) |
72 | { | 72 | { |
@@ -93,6 +93,9 @@ namespace tut | |||
93 | template<> template<> | 93 | template<> template<> |
94 | void blowfish_object::test<1>() | 94 | void blowfish_object::test<1>() |
95 | { | 95 | { |
96 | #if !LL_LINUX | ||
97 | skip_fail("Blowfish only supported on Linux."); | ||
98 | #else | ||
96 | LLUUID blank; | 99 | LLUUID blank; |
97 | LLBlowfishCipher cipher(&blank.mData[0], UUID_BYTES); | 100 | LLBlowfishCipher cipher(&blank.mData[0], UUID_BYTES); |
98 | 101 | ||
@@ -105,11 +108,15 @@ namespace tut | |||
105 | dst_len = cipher.requiredEncryptionSpace(8); | 108 | dst_len = cipher.requiredEncryptionSpace(8); |
106 | ensure("encryption space 8", | 109 | ensure("encryption space 8", |
107 | (dst_len == 16) ); | 110 | (dst_len == 16) ); |
111 | #endif // !LL_LINUX | ||
108 | } | 112 | } |
109 | 113 | ||
110 | template<> template<> | 114 | template<> template<> |
111 | void blowfish_object::test<2>() | 115 | void blowfish_object::test<2>() |
112 | { | 116 | { |
117 | #if !LL_LINUX | ||
118 | skip_fail("Blowfish only supported on Linux."); | ||
119 | #else | ||
113 | LLUUID blank; | 120 | LLUUID blank; |
114 | LLBlowfishCipher cipher(&blank.mData[0], UUID_BYTES); | 121 | LLBlowfishCipher cipher(&blank.mData[0], UUID_BYTES); |
115 | 122 | ||
@@ -123,12 +130,16 @@ namespace tut | |||
123 | result.resize(count); | 130 | result.resize(count); |
124 | 131 | ||
125 | ensure("encrypt null key", matchFile("blowfish.1.bin", result)); | 132 | ensure("encrypt null key", matchFile("blowfish.1.bin", result)); |
133 | #endif // !LL_LINUX | ||
126 | } | 134 | } |
127 | 135 | ||
128 | template<> template<> | 136 | template<> template<> |
129 | void blowfish_object::test<3>() | 137 | void blowfish_object::test<3>() |
130 | { | 138 | { |
131 | // same as base64 test id | 139 | #if !LL_LINUX |
140 | skip_fail("Blowfish only supported on Linux."); | ||
141 | #else | ||
142 | // same as base64 test id | ||
132 | LLUUID id("526a1e07-a19d-baed-84c4-ff08a488d15e"); | 143 | LLUUID id("526a1e07-a19d-baed-84c4-ff08a488d15e"); |
133 | LLBlowfishCipher cipher(&id.mData[0], UUID_BYTES); | 144 | LLBlowfishCipher cipher(&id.mData[0], UUID_BYTES); |
134 | 145 | ||
@@ -142,5 +153,6 @@ namespace tut | |||
142 | result.resize(count); | 153 | result.resize(count); |
143 | 154 | ||
144 | ensure("encrypt real key", matchFile("blowfish.2.bin", result)); | 155 | ensure("encrypt real key", matchFile("blowfish.2.bin", result)); |
156 | #endif // !LL_LINUX | ||
145 | } | 157 | } |
146 | } | 158 | } |
diff --git a/linden/indra/test/llcontrol_tut.cpp b/linden/indra/test/llcontrol_tut.cpp index aabe205..cdf916e 100644 --- a/linden/indra/test/llcontrol_tut.cpp +++ b/linden/indra/test/llcontrol_tut.cpp | |||
@@ -44,8 +44,8 @@ namespace tut | |||
44 | struct control_group | 44 | struct control_group |
45 | { | 45 | { |
46 | LLControlGroup* mCG; | 46 | LLControlGroup* mCG; |
47 | LLString mTestConfigDir; | 47 | std::string mTestConfigDir; |
48 | LLString mTestConfigFile; | 48 | std::string mTestConfigFile; |
49 | static bool mListenerFired; | 49 | static bool mListenerFired; |
50 | control_group() | 50 | control_group() |
51 | { | 51 | { |
@@ -57,7 +57,7 @@ namespace tut | |||
57 | oStr << "/tmp/llcontrol-test-" << random << "/"; | 57 | oStr << "/tmp/llcontrol-test-" << random << "/"; |
58 | mTestConfigDir = oStr.str(); | 58 | mTestConfigDir = oStr.str(); |
59 | mTestConfigFile = mTestConfigDir + "settings.xml"; | 59 | mTestConfigFile = mTestConfigDir + "settings.xml"; |
60 | LLFile::mkdir(mTestConfigDir.c_str()); | 60 | LLFile::mkdir(mTestConfigDir); |
61 | LLSD config; | 61 | LLSD config; |
62 | config["TestSetting"]["Comment"] = "Dummy setting used for testing"; | 62 | config["TestSetting"]["Comment"] = "Dummy setting used for testing"; |
63 | config["TestSetting"]["Persist"] = 1; | 63 | config["TestSetting"]["Persist"] = 1; |
@@ -72,7 +72,7 @@ namespace tut | |||
72 | } | 72 | } |
73 | void writeSettingsFile(const LLSD& config) | 73 | void writeSettingsFile(const LLSD& config) |
74 | { | 74 | { |
75 | llofstream file(mTestConfigFile.c_str()); | 75 | llofstream file(mTestConfigFile); |
76 | if (file.is_open()) | 76 | if (file.is_open()) |
77 | { | 77 | { |
78 | LLSDSerialize::toPrettyXML(config, file); | 78 | LLSDSerialize::toPrettyXML(config, file); |
@@ -109,7 +109,7 @@ namespace tut | |||
109 | mCG->setU32("TestSetting", 13); | 109 | mCG->setU32("TestSetting", 13); |
110 | ensure_equals("value of changed setting", mCG->getU32("TestSetting"), 13); | 110 | ensure_equals("value of changed setting", mCG->getU32("TestSetting"), 13); |
111 | LLControlGroup test_cg; | 111 | LLControlGroup test_cg; |
112 | LLString temp_test_file = (mTestConfigDir + "setting_llsd_temp.xml"); | 112 | std::string temp_test_file = (mTestConfigDir + "setting_llsd_temp.xml"); |
113 | mCG->saveToFile(temp_test_file.c_str(), TRUE); | 113 | mCG->saveToFile(temp_test_file.c_str(), TRUE); |
114 | results = test_cg.loadFromFile(temp_test_file.c_str()); | 114 | results = test_cg.loadFromFile(temp_test_file.c_str()); |
115 | ensure("number of changed settings loaded", (results == 1)); | 115 | ensure("number of changed settings loaded", (results == 1)); |
@@ -126,7 +126,7 @@ namespace tut | |||
126 | control->setValue(new_value, FALSE); | 126 | control->setValue(new_value, FALSE); |
127 | ensure_equals("value of changed setting", mCG->getU32("TestSetting"), 13); | 127 | ensure_equals("value of changed setting", mCG->getU32("TestSetting"), 13); |
128 | LLControlGroup test_cg; | 128 | LLControlGroup test_cg; |
129 | LLString temp_test_file = (mTestConfigDir + "setting_llsd_persist_temp.xml"); | 129 | std::string temp_test_file = (mTestConfigDir + "setting_llsd_persist_temp.xml"); |
130 | mCG->saveToFile(temp_test_file.c_str(), TRUE); | 130 | mCG->saveToFile(temp_test_file.c_str(), TRUE); |
131 | results = test_cg.loadFromFile(temp_test_file.c_str()); | 131 | results = test_cg.loadFromFile(temp_test_file.c_str()); |
132 | //If we haven't changed any settings, then we shouldn't have any settings to load | 132 | //If we haven't changed any settings, then we shouldn't have any settings to load |
diff --git a/linden/indra/test/lldir_tut.cpp b/linden/indra/test/lldir_tut.cpp new file mode 100644 index 0000000..99f4cd3 --- /dev/null +++ b/linden/indra/test/lldir_tut.cpp | |||
@@ -0,0 +1,264 @@ | |||
1 | /** | ||
2 | * @file lldir_tut.cpp | ||
3 | * @date 2008-05 | ||
4 | * @brief LLDir test cases. | ||
5 | * | ||
6 | * $LicenseInfo:firstyear=2008&license=viewergpl$ | ||
7 | * | ||
8 | * Copyright (c) 2008, Linden Research, Inc. | ||
9 | * | ||
10 | * Second Life Viewer Source Code | ||
11 | * The source code in this file ("Source Code") is provided by Linden Lab | ||
12 | * to you under the terms of the GNU General Public License, version 2.0 | ||
13 | * ("GPL"), unless you have obtained a separate licensing agreement | ||
14 | * ("Other License"), formally executed by you and Linden Lab. Terms of | ||
15 | * the GPL can be found in doc/GPL-license.txt in this distribution, or | ||
16 | * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 | ||
17 | * | ||
18 | * There are special exceptions to the terms and conditions of the GPL as | ||
19 | * it is applied to this Source Code. View the full text of the exception | ||
20 | * in the file doc/FLOSS-exception.txt in this software distribution, or | ||
21 | * online at http://secondlifegrid.net/programs/open_source/licensing/flossexception | ||
22 | * | ||
23 | * By copying, modifying or distributing this software, you acknowledge | ||
24 | * that you have read and understood your obligations described above, | ||
25 | * and agree to abide by those obligations. | ||
26 | * | ||
27 | * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO | ||
28 | * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, | ||
29 | * COMPLETENESS OR PERFORMANCE. | ||
30 | * $/LicenseInfo$ | ||
31 | */ | ||
32 | |||
33 | #include <tut/tut.h> | ||
34 | #include "linden_common.h" | ||
35 | #include "lltut.h" | ||
36 | |||
37 | #include "lldir.h" | ||
38 | |||
39 | namespace tut | ||
40 | { | ||
41 | struct LLDirTest | ||
42 | { | ||
43 | }; | ||
44 | typedef test_group<LLDirTest> LLDirTest_t; | ||
45 | typedef LLDirTest_t::object LLDirTest_object_t; | ||
46 | tut::LLDirTest_t tut_LLDirTest("LLDir"); | ||
47 | |||
48 | template<> template<> | ||
49 | void LLDirTest_object_t::test<1>() | ||
50 | // getDirDelimiter | ||
51 | { | ||
52 | ensure("getDirDelimiter", !gDirUtilp->getDirDelimiter().empty()); | ||
53 | } | ||
54 | |||
55 | template<> template<> | ||
56 | void LLDirTest_object_t::test<2>() | ||
57 | // getBaseFileName | ||
58 | { | ||
59 | std::string delim = gDirUtilp->getDirDelimiter(); | ||
60 | std::string rawFile = "foo"; | ||
61 | std::string rawFileExt = "foo.bAr"; | ||
62 | std::string rawFileNullExt = "foo."; | ||
63 | std::string rawExt = ".bAr"; | ||
64 | std::string rawDot = "."; | ||
65 | std::string pathNoExt = "aa" + delim + "bb" + delim + "cc" + delim + "dd" + delim + "ee"; | ||
66 | std::string pathExt = pathNoExt + ".eXt"; | ||
67 | std::string dottedPathNoExt = "aa" + delim + "bb" + delim + "cc.dd" + delim + "ee"; | ||
68 | std::string dottedPathExt = dottedPathNoExt + ".eXt"; | ||
69 | |||
70 | // foo[.bAr] | ||
71 | |||
72 | ensure_equals("getBaseFileName/r-no-ext/no-strip-exten", | ||
73 | gDirUtilp->getBaseFileName(rawFile, false), | ||
74 | "foo"); | ||
75 | |||
76 | ensure_equals("getBaseFileName/r-no-ext/strip-exten", | ||
77 | gDirUtilp->getBaseFileName(rawFile, true), | ||
78 | "foo"); | ||
79 | |||
80 | ensure_equals("getBaseFileName/r-ext/no-strip-exten", | ||
81 | gDirUtilp->getBaseFileName(rawFileExt, false), | ||
82 | "foo.bAr"); | ||
83 | |||
84 | ensure_equals("getBaseFileName/r-ext/strip-exten", | ||
85 | gDirUtilp->getBaseFileName(rawFileExt, true), | ||
86 | "foo"); | ||
87 | |||
88 | // foo. | ||
89 | |||
90 | ensure_equals("getBaseFileName/rn-no-ext/no-strip-exten", | ||
91 | gDirUtilp->getBaseFileName(rawFileNullExt, false), | ||
92 | "foo."); | ||
93 | |||
94 | ensure_equals("getBaseFileName/rn-no-ext/strip-exten", | ||
95 | gDirUtilp->getBaseFileName(rawFileNullExt, true), | ||
96 | "foo"); | ||
97 | |||
98 | // .bAr | ||
99 | // interesting case - with no basename, this IS the basename, not the extension. | ||
100 | |||
101 | ensure_equals("getBaseFileName/e-ext/no-strip-exten", | ||
102 | gDirUtilp->getBaseFileName(rawExt, false), | ||
103 | ".bAr"); | ||
104 | |||
105 | ensure_equals("getBaseFileName/e-ext/strip-exten", | ||
106 | gDirUtilp->getBaseFileName(rawExt, true), | ||
107 | ".bAr"); | ||
108 | |||
109 | // . | ||
110 | |||
111 | ensure_equals("getBaseFileName/d/no-strip-exten", | ||
112 | gDirUtilp->getBaseFileName(rawDot, false), | ||
113 | "."); | ||
114 | |||
115 | ensure_equals("getBaseFileName/d/strip-exten", | ||
116 | gDirUtilp->getBaseFileName(rawDot, true), | ||
117 | "."); | ||
118 | |||
119 | // aa/bb/cc/dd/ee[.eXt] | ||
120 | |||
121 | ensure_equals("getBaseFileName/no-ext/no-strip-exten", | ||
122 | gDirUtilp->getBaseFileName(pathNoExt, false), | ||
123 | "ee"); | ||
124 | |||
125 | ensure_equals("getBaseFileName/no-ext/strip-exten", | ||
126 | gDirUtilp->getBaseFileName(pathNoExt, true), | ||
127 | "ee"); | ||
128 | |||
129 | ensure_equals("getBaseFileName/ext/no-strip-exten", | ||
130 | gDirUtilp->getBaseFileName(pathExt, false), | ||
131 | "ee.eXt"); | ||
132 | |||
133 | ensure_equals("getBaseFileName/ext/strip-exten", | ||
134 | gDirUtilp->getBaseFileName(pathExt, true), | ||
135 | "ee"); | ||
136 | |||
137 | // aa/bb/cc.dd/ee[.eXt] | ||
138 | |||
139 | ensure_equals("getBaseFileName/d-no-ext/no-strip-exten", | ||
140 | gDirUtilp->getBaseFileName(dottedPathNoExt, false), | ||
141 | "ee"); | ||
142 | |||
143 | ensure_equals("getBaseFileName/d-no-ext/strip-exten", | ||
144 | gDirUtilp->getBaseFileName(dottedPathNoExt, true), | ||
145 | "ee"); | ||
146 | |||
147 | ensure_equals("getBaseFileName/d-ext/no-strip-exten", | ||
148 | gDirUtilp->getBaseFileName(dottedPathExt, false), | ||
149 | "ee.eXt"); | ||
150 | |||
151 | ensure_equals("getBaseFileName/d-ext/strip-exten", | ||
152 | gDirUtilp->getBaseFileName(dottedPathExt, true), | ||
153 | "ee"); | ||
154 | } | ||
155 | |||
156 | template<> template<> | ||
157 | void LLDirTest_object_t::test<3>() | ||
158 | // getDirName | ||
159 | { | ||
160 | std::string delim = gDirUtilp->getDirDelimiter(); | ||
161 | std::string rawFile = "foo"; | ||
162 | std::string rawFileExt = "foo.bAr"; | ||
163 | std::string pathNoExt = "aa" + delim + "bb" + delim + "cc" + delim + "dd" + delim + "ee"; | ||
164 | std::string pathExt = pathNoExt + ".eXt"; | ||
165 | std::string dottedPathNoExt = "aa" + delim + "bb" + delim + "cc.dd" + delim + "ee"; | ||
166 | std::string dottedPathExt = dottedPathNoExt + ".eXt"; | ||
167 | |||
168 | // foo[.bAr] | ||
169 | |||
170 | ensure_equals("getDirName/r-no-ext", | ||
171 | gDirUtilp->getDirName(rawFile), | ||
172 | ""); | ||
173 | |||
174 | ensure_equals("getDirName/r-ext", | ||
175 | gDirUtilp->getDirName(rawFileExt), | ||
176 | ""); | ||
177 | |||
178 | // aa/bb/cc/dd/ee[.eXt] | ||
179 | |||
180 | ensure_equals("getDirName/no-ext", | ||
181 | gDirUtilp->getDirName(pathNoExt), | ||
182 | "aa" + delim + "bb" + delim + "cc" + delim + "dd"); | ||
183 | |||
184 | ensure_equals("getDirName/ext", | ||
185 | gDirUtilp->getDirName(pathExt), | ||
186 | "aa" + delim + "bb" + delim + "cc" + delim + "dd"); | ||
187 | |||
188 | // aa/bb/cc.dd/ee[.eXt] | ||
189 | |||
190 | ensure_equals("getDirName/d-no-ext", | ||
191 | gDirUtilp->getDirName(dottedPathNoExt), | ||
192 | "aa" + delim + "bb" + delim + "cc.dd"); | ||
193 | |||
194 | ensure_equals("getDirName/d-ext", | ||
195 | gDirUtilp->getDirName(dottedPathExt), | ||
196 | "aa" + delim + "bb" + delim + "cc.dd"); | ||
197 | } | ||
198 | |||
199 | template<> template<> | ||
200 | void LLDirTest_object_t::test<4>() | ||
201 | // getExtension | ||
202 | { | ||
203 | std::string delim = gDirUtilp->getDirDelimiter(); | ||
204 | std::string rawFile = "foo"; | ||
205 | std::string rawFileExt = "foo.bAr"; | ||
206 | std::string rawFileNullExt = "foo."; | ||
207 | std::string rawExt = ".bAr"; | ||
208 | std::string rawDot = "."; | ||
209 | std::string pathNoExt = "aa" + delim + "bb" + delim + "cc" + delim + "dd" + delim + "ee"; | ||
210 | std::string pathExt = pathNoExt + ".eXt"; | ||
211 | std::string dottedPathNoExt = "aa" + delim + "bb" + delim + "cc.dd" + delim + "ee"; | ||
212 | std::string dottedPathExt = dottedPathNoExt + ".eXt"; | ||
213 | |||
214 | // foo[.bAr] | ||
215 | |||
216 | ensure_equals("getExtension/r-no-ext", | ||
217 | gDirUtilp->getExtension(rawFile), | ||
218 | ""); | ||
219 | |||
220 | ensure_equals("getExtension/r-ext", | ||
221 | gDirUtilp->getExtension(rawFileExt), | ||
222 | "bar"); | ||
223 | |||
224 | // foo. | ||
225 | |||
226 | ensure_equals("getExtension/rn-no-ext", | ||
227 | gDirUtilp->getExtension(rawFileNullExt), | ||
228 | ""); | ||
229 | |||
230 | // .bAr | ||
231 | // interesting case - with no basename, this IS the basename, not the extension. | ||
232 | |||
233 | ensure_equals("getExtension/e-ext", | ||
234 | gDirUtilp->getExtension(rawExt), | ||
235 | ""); | ||
236 | |||
237 | // . | ||
238 | |||
239 | ensure_equals("getExtension/d", | ||
240 | gDirUtilp->getExtension(rawDot), | ||
241 | ""); | ||
242 | |||
243 | // aa/bb/cc/dd/ee[.eXt] | ||
244 | |||
245 | ensure_equals("getExtension/no-ext", | ||
246 | gDirUtilp->getExtension(pathNoExt), | ||
247 | ""); | ||
248 | |||
249 | ensure_equals("getExtension/ext", | ||
250 | gDirUtilp->getExtension(pathExt), | ||
251 | "ext"); | ||
252 | |||
253 | // aa/bb/cc.dd/ee[.eXt] | ||
254 | |||
255 | ensure_equals("getExtension/d-no-ext", | ||
256 | gDirUtilp->getExtension(dottedPathNoExt), | ||
257 | ""); | ||
258 | |||
259 | ensure_equals("getExtension/d-ext", | ||
260 | gDirUtilp->getExtension(dottedPathExt), | ||
261 | "ext"); | ||
262 | } | ||
263 | } | ||
264 | |||
diff --git a/linden/indra/test/llerror_tut.cpp b/linden/indra/test/llerror_tut.cpp index 46a5707..a240980 100644 --- a/linden/indra/test/llerror_tut.cpp +++ b/linden/indra/test/llerror_tut.cpp | |||
@@ -372,27 +372,21 @@ namespace | |||
372 | std::string logFromClassWithLogTypeMember(bool id) { ClassWithLogType c; return c.logFromMember(id); } | 372 | std::string logFromClassWithLogTypeMember(bool id) { ClassWithLogType c; return c.logFromMember(id); } |
373 | std::string logFromClassWithLogTypeStatic(bool id) { return ClassWithLogType::logFromStatic(id); } | 373 | std::string logFromClassWithLogTypeStatic(bool id) { return ClassWithLogType::logFromStatic(id); } |
374 | 374 | ||
375 | void ensure_has_once(const std::string& message, | 375 | void ensure_has(const std::string& message, |
376 | const std::string& actual, const std::string& expected) | 376 | const std::string& actual, const std::string& expected) |
377 | { | 377 | { |
378 | std::string::size_type n1 = actual.find(expected); | 378 | std::string::size_type n1 = actual.find(expected); |
379 | std::string::size_type n2 = std::string::npos; | 379 | if (n1 == std::string::npos) |
380 | if (n1 != std::string::npos) | ||
381 | { | ||
382 | n2 = std::string(actual, n1 + expected.size()).find(expected); | ||
383 | } | ||
384 | |||
385 | if (n1 == std::string::npos || n2 != std::string::npos) | ||
386 | { | 380 | { |
387 | std::stringstream ss; | 381 | std::stringstream ss; |
388 | ss << message << ": " << "expected to find one copy of " << expected | 382 | ss << message << ": " << "expected to find a copy of " << expected |
389 | << " in actual " << actual; | 383 | << " in actual " << actual; |
390 | throw tut::failure(ss.str().c_str()); | 384 | throw tut::failure(ss.str().c_str()); |
391 | } | 385 | } |
392 | } | 386 | } |
393 | 387 | ||
394 | typedef std::string (*LogFromFunction)(bool); | 388 | typedef std::string (*LogFromFunction)(bool); |
395 | void testLogNameOnce(TestRecorder& recorder, LogFromFunction f, | 389 | void testLogName(TestRecorder& recorder, LogFromFunction f, |
396 | const std::string& class_name = "") | 390 | const std::string& class_name = "") |
397 | { | 391 | { |
398 | recorder.clearMessages(); | 392 | recorder.clearMessages(); |
@@ -402,16 +396,16 @@ namespace | |||
402 | std::string messageWithoutName = recorder.message(0); | 396 | std::string messageWithoutName = recorder.message(0); |
403 | std::string messageWithName = recorder.message(1); | 397 | std::string messageWithName = recorder.message(1); |
404 | 398 | ||
405 | ensure_has_once(name + " logged without name", | 399 | ensure_has(name + " logged without name", |
406 | messageWithoutName, name); | 400 | messageWithoutName, name); |
407 | ensure_has_once(name + " logged with name", | 401 | ensure_has(name + " logged with name", |
408 | messageWithName, name); | 402 | messageWithName, name); |
409 | 403 | ||
410 | if (!class_name.empty()) | 404 | if (!class_name.empty()) |
411 | { | 405 | { |
412 | ensure_has_once(name + "logged without name", | 406 | ensure_has(name + "logged without name", |
413 | messageWithoutName, class_name); | 407 | messageWithoutName, class_name); |
414 | ensure_has_once(name + "logged with name", | 408 | ensure_has(name + "logged with name", |
415 | messageWithName, class_name); | 409 | messageWithName, class_name); |
416 | } | 410 | } |
417 | } | 411 | } |
@@ -423,15 +417,15 @@ namespace tut | |||
423 | // class/function information in output | 417 | // class/function information in output |
424 | void ErrorTestObject::test<6>() | 418 | void ErrorTestObject::test<6>() |
425 | { | 419 | { |
426 | testLogNameOnce(mRecorder, logFromGlobal); | 420 | testLogName(mRecorder, logFromGlobal); |
427 | testLogNameOnce(mRecorder, logFromStatic); | 421 | testLogName(mRecorder, logFromStatic); |
428 | testLogNameOnce(mRecorder, logFromAnon); | 422 | testLogName(mRecorder, logFromAnon); |
429 | testLogNameOnce(mRecorder, logFromNamespace); | 423 | testLogName(mRecorder, logFromNamespace); |
430 | //testLogNameOnce(mRecorder, logFromClassWithNoLogTypeMember, "ClassWithNoLogType"); | 424 | //testLogName(mRecorder, logFromClassWithNoLogTypeMember, "ClassWithNoLogType"); |
431 | //testLogNameOnce(mRecorder, logFromClassWithNoLogTypeStatic, "ClassWithNoLogType"); | 425 | //testLogName(mRecorder, logFromClassWithNoLogTypeStatic, "ClassWithNoLogType"); |
432 | // XXX: figure out what the exepcted response is for these | 426 | // XXX: figure out what the exepcted response is for these |
433 | testLogNameOnce(mRecorder, logFromClassWithLogTypeMember, "ClassWithLogType"); | 427 | testLogName(mRecorder, logFromClassWithLogTypeMember, "ClassWithLogType"); |
434 | testLogNameOnce(mRecorder, logFromClassWithLogTypeStatic, "ClassWithLogType"); | 428 | testLogName(mRecorder, logFromClassWithLogTypeStatic, "ClassWithLogType"); |
435 | } | 429 | } |
436 | } | 430 | } |
437 | 431 | ||
diff --git a/linden/indra/test/llhost_tut.cpp b/linden/indra/test/llhost_tut.cpp index fc2aee3..f1ad4e0 100644 --- a/linden/indra/test/llhost_tut.cpp +++ b/linden/indra/test/llhost_tut.cpp | |||
@@ -91,7 +91,7 @@ namespace tut | |||
91 | U32 ip = ip_string_to_u32("192.168.1.1"); | 91 | U32 ip = ip_string_to_u32("192.168.1.1"); |
92 | U32 port = 8080; | 92 | U32 port = 8080; |
93 | 93 | ||
94 | LLHost host(ip_port_string.c_str()); | 94 | LLHost host(ip_port_string); |
95 | ensure("IP address from IP:port is invalid", ip == host.getAddress()); | 95 | ensure("IP address from IP:port is invalid", ip == host.getAddress()); |
96 | ensure("Port Number from from IP:port is invalid", port == host.getPort()); | 96 | ensure("Port Number from from IP:port is invalid", port == host.getPort()); |
97 | } | 97 | } |
@@ -138,23 +138,16 @@ namespace tut | |||
138 | template<> template<> | 138 | template<> template<> |
139 | void host_object::test<8>() | 139 | void host_object::test<8>() |
140 | { | 140 | { |
141 | char buffer[50]; | 141 | const std::string str("192.168.1.1"); |
142 | char buffer1[50]; | ||
143 | const char* str = "192.168.1.1"; | ||
144 | U32 port = 8080; | 142 | U32 port = 8080; |
145 | LLHost host; | 143 | LLHost host; |
146 | host.set(str,port); | 144 | host.set(str,port); |
147 | host.getString(buffer, 50); | ||
148 | ensure("Function Failed", (0 == strcmp("192.168.1.1:8080", buffer))); | ||
149 | |||
150 | host.getIPString(buffer1, 50); | ||
151 | ensure("Function Failed", (0 == strcmp(str, buffer1))); | ||
152 | 145 | ||
153 | std::string ip_string = host.getIPString(); | 146 | std::string ip_string = host.getIPString(); |
154 | ensure("Function Failed", (0 == strcmp(str, buffer1))); | 147 | ensure("Function Failed", (ip_string == str)); |
155 | 148 | ||
156 | std::string ip_string_port = host.getIPandPort(); | 149 | std::string ip_string_port = host.getIPandPort(); |
157 | ensure("Function Failed", (0 == strcmp("192.168.1.1:8080", buffer))); | 150 | ensure("Function Failed", (ip_string_port == "192.168.1.1:8080")); |
158 | } | 151 | } |
159 | 152 | ||
160 | 153 | ||
@@ -163,17 +156,15 @@ namespace tut | |||
163 | void host_object::test<9>() | 156 | void host_object::test<9>() |
164 | { | 157 | { |
165 | std::string hostStr = "google.com"; | 158 | std::string hostStr = "google.com"; |
166 | char buffer[50] = {0}; | ||
167 | LLHost host; | 159 | LLHost host; |
168 | host.setHostByName(hostStr.c_str()); | 160 | host.setHostByName(hostStr); |
169 | host.getHostName(buffer, 50); | 161 | |
170 | // reverse DNS will likely result in appending of some | 162 | // reverse DNS will likely result in appending of some |
171 | // sub-domain to the main hostname. so look for | 163 | // sub-domain to the main hostname. so look for |
172 | // the main domain name and not do the exact compare | 164 | // the main domain name and not do the exact compare |
173 | ensure("getHostName failed", (NULL != strstr(buffer, hostStr.c_str()))); | ||
174 | 165 | ||
175 | LLString hostname = host.getHostName(); | 166 | std::string hostname = host.getHostName(); |
176 | ensure("getHostName failed", (NULL != strstr(hostname.c_str(), hostStr.c_str()))); | 167 | ensure("getHostName failed", hostname.find(hostStr) != std::string::npos); |
177 | } | 168 | } |
178 | 169 | ||
179 | // setHostByName for dotted IP | 170 | // setHostByName for dotted IP |
@@ -182,7 +173,7 @@ namespace tut | |||
182 | { | 173 | { |
183 | std::string hostStr = "64.233.167.99"; | 174 | std::string hostStr = "64.233.167.99"; |
184 | LLHost host; | 175 | LLHost host; |
185 | host.setHostByName(hostStr.c_str()); | 176 | host.setHostByName(hostStr); |
186 | ensure("SetHostByName for dotted IP Address failed", host.getAddress() == ip_string_to_u32(hostStr.c_str())); | 177 | ensure("SetHostByName for dotted IP Address failed", host.getAddress() == ip_string_to_u32(hostStr.c_str())); |
187 | } | 178 | } |
188 | 179 | ||
diff --git a/linden/indra/test/llhttpclient_tut.cpp b/linden/indra/test/llhttpclient_tut.cpp index 1a2267c..1c41947 100644 --- a/linden/indra/test/llhttpclient_tut.cpp +++ b/linden/indra/test/llhttpclient_tut.cpp | |||
@@ -259,7 +259,7 @@ namespace tut | |||
259 | template<> template<> | 259 | template<> template<> |
260 | void HTTPClientTestObject::test<1>() | 260 | void HTTPClientTestObject::test<1>() |
261 | { | 261 | { |
262 | LLHTTPClient::get("http://www.secondlife.com/", newResult()); | 262 | LLHTTPClient::get("http://www.google.com/", newResult()); |
263 | runThePump(); | 263 | runThePump(); |
264 | ensureStatusOK(); | 264 | ensureStatusOK(); |
265 | ensure("result object wasn't destroyed", mResultDeleted); | 265 | ensure("result object wasn't destroyed", mResultDeleted); |
@@ -365,7 +365,7 @@ namespace tut | |||
365 | { | 365 | { |
366 | // This is testing for the presence of the Header in the returned results | 366 | // This is testing for the presence of the Header in the returned results |
367 | // from an HTTP::get call. | 367 | // from an HTTP::get call. |
368 | LLHTTPClient::get("http://www.secondlife.com/", newResult()); | 368 | LLHTTPClient::get("http://www.google.com/", newResult()); |
369 | runThePump(); | 369 | runThePump(); |
370 | ensureStatusOK(); | 370 | ensureStatusOK(); |
371 | LLSD header = getHeader(); | 371 | LLSD header = getHeader(); |
@@ -374,7 +374,7 @@ namespace tut | |||
374 | template<> template<> | 374 | template<> template<> |
375 | void HTTPClientTestObject::test<9>() | 375 | void HTTPClientTestObject::test<9>() |
376 | { | 376 | { |
377 | LLHTTPClient::head("http://www.secondlife.com/", newResult()); | 377 | LLHTTPClient::head("http://www.google.com/", newResult()); |
378 | runThePump(); | 378 | runThePump(); |
379 | ensureStatusOK(); | 379 | ensureStatusOK(); |
380 | ensure("result object wasn't destroyed", mResultDeleted); | 380 | ensure("result object wasn't destroyed", mResultDeleted); |
diff --git a/linden/indra/test/llhttpdate_tut.cpp b/linden/indra/test/llhttpdate_tut.cpp index a07b11f..8e096cb 100644 --- a/linden/indra/test/llhttpdate_tut.cpp +++ b/linden/indra/test/llhttpdate_tut.cpp | |||
@@ -69,24 +69,25 @@ namespace tut | |||
69 | time_t sometime; | 69 | time_t sometime; |
70 | time(&sometime); | 70 | time(&sometime); |
71 | some_date = LLDate((F64) sometime); | 71 | some_date = LLDate((F64) sometime); |
72 | struct tm result; | 72 | struct tm *result; |
73 | char expected[255], *actual; | 73 | char expected[255]; |
74 | std::string actual; | ||
74 | 75 | ||
75 | gmtime_r((time_t *)&sometime, &result); | 76 | result = gmtime(&sometime); |
76 | /* | 77 | /* |
77 | std::cout << " seconds: "<< result.tm_sec | 78 | std::cout << " seconds: "<< result->tm_sec |
78 | << ", minutes: " << result.tm_min | 79 | << ", minutes: " << result->tm_min |
79 | << ", hours: " << result.tm_hour | 80 | << ", hours: " << result->tm_hour |
80 | << ", day of the month: " << result.tm_mday | 81 | << ", day of the month: " << result->tm_mday |
81 | << ", month: " << result.tm_mon | 82 | << ", month: " << result->tm_mon |
82 | << ", year: " << result.tm_year | 83 | << ", year: " << result->tm_year |
83 | << ", day of the week: " << result.tm_wday | 84 | << ", day of the week: " << result->tm_wday |
84 | << ", day in the year: " << result.tm_yday | 85 | << ", day in the year: " << result->tm_yday |
85 | << ", DST: " << result.tm_isdst << std::endl; | 86 | << ", DST: " << result->tm_isdst << std::endl; |
86 | */ | 87 | */ |
87 | strftime(expected, 255, "%A, %d %h %Y %H:%M:%S GMT", &result); | 88 | strftime(expected, 255, "%A, %d %b %Y %H:%M:%S GMT", result); |
88 | actual = (char *) some_date.asRFC1123().c_str(); | 89 | actual = some_date.asRFC1123(); |
89 | // probably not a good idea to use strcmp but this is just a unit test | 90 | // probably not a good idea to use strcmp but this is just a unit test |
90 | ensure("Current time in RFC 1123", (strcmp(expected, actual) == 0)); | 91 | ensure("Current time in RFC 1123", (strcmp(expected, actual.c_str()) == 0)); |
91 | } | 92 | } |
92 | } | 93 | } |
diff --git a/linden/indra/test/llinventoryparcel_tut.cpp b/linden/indra/test/llinventoryparcel_tut.cpp index 17c7244..8c30c38 100644 --- a/linden/indra/test/llinventoryparcel_tut.cpp +++ b/linden/indra/test/llinventoryparcel_tut.cpp | |||
@@ -51,22 +51,22 @@ namespace tut | |||
51 | { | 51 | { |
52 | for (S32 i=0; i<LLParcel::C_COUNT; ++i) | 52 | for (S32 i=0; i<LLParcel::C_COUNT; ++i) |
53 | { | 53 | { |
54 | const char *catstring = LLParcel::getCategoryString(LLParcel::ECategory(i)); | 54 | const std::string& catstring = LLParcel::getCategoryString(LLParcel::ECategory(i)); |
55 | ensure("LLParcel::getCategoryString(i)", | 55 | ensure("LLParcel::getCategoryString(i)", |
56 | NULL != catstring); | 56 | !catstring.empty()); |
57 | 57 | ||
58 | const char *catuistring = LLParcel::getCategoryUIString(LLParcel::ECategory(i)); | 58 | const std::string& catuistring = LLParcel::getCategoryUIString(LLParcel::ECategory(i)); |
59 | ensure("LLParcel::getCategoryUIString(i)", | 59 | ensure("LLParcel::getCategoryUIString(i)", |
60 | NULL != catuistring); | 60 | !catuistring.empty()); |
61 | 61 | ||
62 | ensure_equals("LLParcel::ECategory mapping of string back to enum", LLParcel::getCategoryFromString(catstring), i); | 62 | ensure_equals("LLParcel::ECategory mapping of string back to enum", LLParcel::getCategoryFromString(catstring), i); |
63 | ensure_equals("LLParcel::ECategory mapping of uistring back to enum", LLParcel::getCategoryFromUIString(catuistring), i); | 63 | ensure_equals("LLParcel::ECategory mapping of uistring back to enum", LLParcel::getCategoryFromUIString(catuistring), i); |
64 | } | 64 | } |
65 | 65 | ||
66 | // test the C_ANY case, which has to work for UI strings | 66 | // test the C_ANY case, which has to work for UI strings |
67 | const char *catuistring = LLParcel::getCategoryUIString(LLParcel::C_ANY); | 67 | const std::string& catuistring = LLParcel::getCategoryUIString(LLParcel::C_ANY); |
68 | ensure("LLParcel::getCategoryUIString(C_ANY)", | 68 | ensure("LLParcel::getCategoryUIString(C_ANY)", |
69 | NULL != catuistring); | 69 | !catuistring.empty()); |
70 | 70 | ||
71 | ensure_equals("LLParcel::ECategory mapping of uistring back to enum", LLParcel::getCategoryFromUIString(catuistring), LLParcel::C_ANY); | 71 | ensure_equals("LLParcel::ECategory mapping of uistring back to enum", LLParcel::getCategoryFromUIString(catuistring), LLParcel::C_ANY); |
72 | } | 72 | } |
diff --git a/linden/indra/test/lliohttpserver_tut.cpp b/linden/indra/test/lliohttpserver_tut.cpp index e9b04c9..e450cc4 100644 --- a/linden/indra/test/lliohttpserver_tut.cpp +++ b/linden/indra/test/lliohttpserver_tut.cpp | |||
@@ -125,7 +125,7 @@ namespace tut | |||
125 | pump->addChain(chain, DEFAULT_CHAIN_EXPIRY_SECS); | 125 | pump->addChain(chain, DEFAULT_CHAIN_EXPIRY_SECS); |
126 | 126 | ||
127 | pumpPipe(pump, 10); | 127 | pumpPipe(pump, 10); |
128 | if(mResponse && (! timeout)) | 128 | if(mResponse.notNull() && (! timeout)) |
129 | { | 129 | { |
130 | mResponse->result(mResult); | 130 | mResponse->result(mResult); |
131 | mResponse = NULL; | 131 | mResponse = NULL; |
@@ -138,7 +138,7 @@ namespace tut | |||
138 | delete pump; | 138 | delete pump; |
139 | apr_pool_destroy(pool); | 139 | apr_pool_destroy(pool); |
140 | 140 | ||
141 | if(mResponse && timeout) | 141 | if(mResponse.notNull() && timeout) |
142 | { | 142 | { |
143 | mResponse->result(mResult); | 143 | mResponse->result(mResult); |
144 | mResponse = NULL; | 144 | mResponse = NULL; |
@@ -327,6 +327,23 @@ namespace tut | |||
327 | ensure_starts_with("large echo status", result, "HTTP/1.0 200 OK\r\n"); | 327 | ensure_starts_with("large echo status", result, "HTTP/1.0 200 OK\r\n"); |
328 | } | 328 | } |
329 | 329 | ||
330 | template<> template<> | ||
331 | void HTTPServiceTestObject::test<8>() | ||
332 | { | ||
333 | // test the OPTIONS http method -- the default implementation | ||
334 | // should return the X-Documentation-URL | ||
335 | std::ostringstream http_request; | ||
336 | http_request << "OPTIONS / HTTP/1.0\r\nHost: localhost\r\n\r\n"; | ||
337 | bool timeout = false; | ||
338 | std::string result = makeRequest("/", http_request.str(), timeout); | ||
339 | ensure_starts_with("OPTIONS verb ok", result, "HTTP/1.0 200 OK\r\n"); | ||
340 | ensure_contains( | ||
341 | "Doc url header exists", | ||
342 | result, | ||
343 | "X-Documentation-URL: http://localhost"); | ||
344 | } | ||
345 | |||
346 | |||
330 | /* TO DO: | 347 | /* TO DO: |
331 | test generation of not found and method not allowed errors | 348 | test generation of not found and method not allowed errors |
332 | */ | 349 | */ |
diff --git a/linden/indra/test/llmessageconfig_tut.cpp b/linden/indra/test/llmessageconfig_tut.cpp index 869070e..1f71d5f 100644 --- a/linden/indra/test/llmessageconfig_tut.cpp +++ b/linden/indra/test/llmessageconfig_tut.cpp | |||
@@ -56,7 +56,7 @@ namespace tut | |||
56 | oStr << "/tmp/llmessage-config-test-" << random; | 56 | oStr << "/tmp/llmessage-config-test-" << random; |
57 | #endif | 57 | #endif |
58 | mTestConfigDir = oStr.str(); | 58 | mTestConfigDir = oStr.str(); |
59 | LLFile::mkdir(mTestConfigDir.c_str()); | 59 | LLFile::mkdir(mTestConfigDir); |
60 | writeConfigFile(LLSD()); | 60 | writeConfigFile(LLSD()); |
61 | LLMessageConfig::initClass("simulator", mTestConfigDir); | 61 | LLMessageConfig::initClass("simulator", mTestConfigDir); |
62 | } | 62 | } |
@@ -64,16 +64,16 @@ namespace tut | |||
64 | ~LLMessageConfigTestData() | 64 | ~LLMessageConfigTestData() |
65 | { | 65 | { |
66 | // rm contents of temp dir | 66 | // rm contents of temp dir |
67 | int rmfile = LLFile::remove((mTestConfigDir + "/message.xml").c_str()); | 67 | int rmfile = LLFile::remove((mTestConfigDir + "/message.xml")); |
68 | ensure_equals("rmfile value", rmfile, 0); | 68 | ensure_equals("rmfile value", rmfile, 0); |
69 | // rm temp dir | 69 | // rm temp dir |
70 | int rmdir = LLFile::rmdir(mTestConfigDir.c_str()); | 70 | int rmdir = LLFile::rmdir(mTestConfigDir); |
71 | ensure_equals("rmdir value", rmdir, 0); | 71 | ensure_equals("rmdir value", rmdir, 0); |
72 | } | 72 | } |
73 | 73 | ||
74 | void writeConfigFile(const LLSD& config) | 74 | void writeConfigFile(const LLSD& config) |
75 | { | 75 | { |
76 | llofstream file((mTestConfigDir + "/message.xml").c_str()); | 76 | llofstream file((mTestConfigDir + "/message.xml")); |
77 | if (file.is_open()) | 77 | if (file.is_open()) |
78 | { | 78 | { |
79 | LLSDSerialize::toPrettyXML(config, file); | 79 | LLSDSerialize::toPrettyXML(config, file); |
diff --git a/linden/indra/test/llmessagetemplateparser_tut.cpp b/linden/indra/test/llmessagetemplateparser_tut.cpp index 7634e90..b90efbb 100644 --- a/linden/indra/test/llmessagetemplateparser_tut.cpp +++ b/linden/indra/test/llmessagetemplateparser_tut.cpp | |||
@@ -292,7 +292,7 @@ namespace tut | |||
292 | delete message; | 292 | delete message; |
293 | } | 293 | } |
294 | 294 | ||
295 | void LLMessageTemplateParserTestObject::test<8>() | 295 | template<> template<> void LLMessageTemplateParserTestObject::test<8>() |
296 | // tests message parsing on RezMultipleAttachmentsFromInv, a possibly-faulty message | 296 | // tests message parsing on RezMultipleAttachmentsFromInv, a possibly-faulty message |
297 | { | 297 | { |
298 | std::string message_skel( | 298 | std::string message_skel( |
diff --git a/linden/indra/test/llnamevalue_tut.cpp b/linden/indra/test/llnamevalue_tut.cpp index f604e84..0655f55 100644 --- a/linden/indra/test/llnamevalue_tut.cpp +++ b/linden/indra/test/llnamevalue_tut.cpp | |||
@@ -36,6 +36,11 @@ | |||
36 | #include "llnamevalue.h" | 36 | #include "llnamevalue.h" |
37 | #include "llsdserialize.h" | 37 | #include "llsdserialize.h" |
38 | 38 | ||
39 | #if LL_WINDOWS | ||
40 | // disable unreachable code warnings | ||
41 | #pragma warning(disable: 4702) | ||
42 | #endif | ||
43 | |||
39 | namespace tut | 44 | namespace tut |
40 | { | 45 | { |
41 | struct namevalue_test | 46 | struct namevalue_test |
diff --git a/linden/indra/test/llquaternion_tut.cpp b/linden/indra/test/llquaternion_tut.cpp index 5b8a6ef..d560a54 100644 --- a/linden/indra/test/llquaternion_tut.cpp +++ b/linden/indra/test/llquaternion_tut.cpp | |||
@@ -299,7 +299,7 @@ namespace tut | |||
299 | ensure("2. LLQuaternion Operator* failed", (4543086.5f == result.mQ[0]) && | 299 | ensure("2. LLQuaternion Operator* failed", (4543086.5f == result.mQ[0]) && |
300 | (8567578.0f == result.mQ[1]) && | 300 | (8567578.0f == result.mQ[1]) && |
301 | (3967591.25f == result.mQ[2]) && | 301 | (3967591.25f == result.mQ[2]) && |
302 | (-2047783.25f == result.mQ[3])); | 302 | is_approx_equal(-2047783.25f, result.mQ[3])); |
303 | 303 | ||
304 | //inline LLQuaternion operator+(const LLQuaternion &a, const LLQuaternion &b)fn. | 304 | //inline LLQuaternion operator+(const LLQuaternion &a, const LLQuaternion &b)fn. |
305 | result = quat1 + quat2; | 305 | result = quat1 + quat2; |
@@ -343,11 +343,11 @@ namespace tut | |||
343 | LLVector4 result = vect * quat; | 343 | LLVector4 result = vect * quat; |
344 | ensure( | 344 | ensure( |
345 | "1. LLVector4 operator*(const LLVector4 &a, const LLQuaternion &rot) failed", | 345 | "1. LLVector4 operator*(const LLVector4 &a, const LLQuaternion &rot) failed", |
346 | (39928406016.0f == result.mV[0]) && | 346 | is_approx_equal(39928406016.0f, result.mV[0]) && |
347 | // gcc on x86 actually gives us more precision than we were expecting, verified with -ffloat-store - we forgive this | 347 | // gcc on x86 actually gives us more precision than we were expecting, verified with -ffloat-store - we forgive this |
348 | (1457802240.0f >= result.mV[1]) && // gcc+x86+linux | 348 | (1457802240.0f >= result.mV[1]) && // gcc+x86+linux |
349 | (1457801728.0f <= result.mV[1]) && // elsewhere | 349 | (1457800960.0f <= result.mV[1]) && // elsewhere |
350 | (200580612096.0f == result.mV[2]) && | 350 | is_approx_equal(200580612096.0f, result.mV[2]) && |
351 | (75.099998f == result.mV[3])); | 351 | (75.099998f == result.mV[3])); |
352 | 352 | ||
353 | LLVector4 vect1(22.0f, 45.0f, 40.0f, 78.1f); | 353 | LLVector4 vect1(22.0f, 45.0f, 40.0f, 78.1f); |
diff --git a/linden/indra/test/llsd_new_tut.cpp b/linden/indra/test/llsd_new_tut.cpp index 2ab8668..6c8d96a 100644 --- a/linden/indra/test/llsd_new_tut.cpp +++ b/linden/indra/test/llsd_new_tut.cpp | |||
@@ -132,13 +132,11 @@ namespace tut | |||
132 | v = newUUID; ensureTypeAndValue("set to new UUID", v, newUUID); | 132 | v = newUUID; ensureTypeAndValue("set to new UUID", v, newUUID); |
133 | v = nullUUID; ensureTypeAndValue("set to null again", v, nullUUID); | 133 | v = nullUUID; ensureTypeAndValue("set to null again", v, nullUUID); |
134 | 134 | ||
135 | // strings must be tested with three (!) types of string objects | 135 | // strings must be tested with two types of string objects |
136 | std::string s = "now is the time"; | 136 | std::string s = "now is the time"; |
137 | LLString ls = "for all good zorks"; | 137 | const char* cs = "for all good zorks"; |
138 | const char* cs = "to come to the air of their planet"; | ||
139 | 138 | ||
140 | v = s; ensureTypeAndValue("set to std::string", v, s); | 139 | v = s; ensureTypeAndValue("set to std::string", v, s); |
141 | v = ls; ensureTypeAndValue("set to LLString", v, ls); | ||
142 | v = cs; ensureTypeAndValue("set to const char*", v, cs); | 140 | v = cs; ensureTypeAndValue("set to const char*", v, cs); |
143 | 141 | ||
144 | LLDate epoch; | 142 | LLDate epoch; |
@@ -186,10 +184,10 @@ namespace tut | |||
186 | ensureTypeAndValue("construct std::string", ss1, "abc"); | 184 | ensureTypeAndValue("construct std::string", ss1, "abc"); |
187 | LLSD ss2 = std::string("abc"); | 185 | LLSD ss2 = std::string("abc"); |
188 | ensureTypeAndValue("initialize std::string",ss2, "abc"); | 186 | ensureTypeAndValue("initialize std::string",ss2, "abc"); |
189 | LLSD sl1(LLString("def")); | 187 | LLSD sl1(std::string("def")); |
190 | ensureTypeAndValue("construct LLString", sl1, "def"); | 188 | ensureTypeAndValue("construct std::string", sl1, "def"); |
191 | LLSD sl2 = LLString("def"); | 189 | LLSD sl2 = std::string("def"); |
192 | ensureTypeAndValue("initialize LLString", sl2, "def"); | 190 | ensureTypeAndValue("initialize std::string", sl2, "def"); |
193 | LLSD sc1("ghi"); | 191 | LLSD sc1("ghi"); |
194 | ensureTypeAndValue("construct const char*", sc1, "ghi"); | 192 | ensureTypeAndValue("construct const char*", sc1, "ghi"); |
195 | LLSD sc2 = "ghi"; | 193 | LLSD sc2 = "ghi"; |
@@ -432,10 +430,6 @@ namespace tut | |||
432 | // SAD s = v; ensure_equals("assign to string", s, " 42.375"); | 430 | // SAD s = v; ensure_equals("assign to string", s, " 42.375"); |
433 | s = (std::string)v; ensure_equals("cast to string", s, " 42.375"); | 431 | s = (std::string)v; ensure_equals("cast to string", s, " 42.375"); |
434 | 432 | ||
435 | LLString t = "yo"; | ||
436 | // SAD t = v; ensure_equals("assign to LLString", t, " 42.375"); | ||
437 | t = (LLString)v; ensure_equals("cast to LLString", t, " 42.375"); | ||
438 | |||
439 | std::string uuidStr = "b1e50c2b-b627-4d23-8a86-a65d97b6319b"; | 433 | std::string uuidStr = "b1e50c2b-b627-4d23-8a86-a65d97b6319b"; |
440 | v = uuidStr; | 434 | v = uuidStr; |
441 | LLUUID u; | 435 | LLUUID u; |
@@ -486,10 +480,10 @@ namespace tut | |||
486 | ensure_equals("contruct string", s1, " 42.375"); | 480 | ensure_equals("contruct string", s1, " 42.375"); |
487 | ensure_equals("initialize string", s2, " 42.375"); | 481 | ensure_equals("initialize string", s2, " 42.375"); |
488 | 482 | ||
489 | LLString t1(v); | 483 | std::string t1(v); |
490 | LLString t2 = v.asString(); // SAD | 484 | std::string t2 = v.asString(); // SAD |
491 | ensure_equals("contruct LLString", t1, " 42.375"); | 485 | ensure_equals("contruct std::string", t1, " 42.375"); |
492 | ensure_equals("initialize LLString", t2, " 42.375"); | 486 | ensure_equals("initialize std::string", t2, " 42.375"); |
493 | 487 | ||
494 | std::string uuidStr = "b1e50c2b-b627-4d23-8a86-a65d97b6319b"; | 488 | std::string uuidStr = "b1e50c2b-b627-4d23-8a86-a65d97b6319b"; |
495 | v = uuidStr; | 489 | v = uuidStr; |
diff --git a/linden/indra/test/llsdmessagereader_tut.cpp b/linden/indra/test/llsdmessagereader_tut.cpp index 04861c4..9fd4dfc 100755 --- a/linden/indra/test/llsdmessagereader_tut.cpp +++ b/linden/indra/test/llsdmessagereader_tut.cpp | |||
@@ -33,6 +33,10 @@ | |||
33 | #include <tut/tut.h> | 33 | #include <tut/tut.h> |
34 | #include "linden_common.h" | 34 | #include "linden_common.h" |
35 | #include "lltut.h" | 35 | #include "lltut.h" |
36 | #include "v3dmath.h" | ||
37 | #include "v3math.h" | ||
38 | #include "v4math.h" | ||
39 | #include "llquaternion.h" | ||
36 | 40 | ||
37 | #include "message.h" | 41 | #include "message.h" |
38 | #include "llsdmessagereader.h" | 42 | #include "llsdmessagereader.h" |
diff --git a/linden/indra/test/llsdserialize_tut.cpp b/linden/indra/test/llsdserialize_tut.cpp index fe732cd..4b4c787 100644 --- a/linden/indra/test/llsdserialize_tut.cpp +++ b/linden/indra/test/llsdserialize_tut.cpp | |||
@@ -44,7 +44,19 @@ | |||
44 | 44 | ||
45 | // These tests take too long to run on Windows. JC | 45 | // These tests take too long to run on Windows. JC |
46 | // Yeah, who cares if windows works or not, right? Phoenix | 46 | // Yeah, who cares if windows works or not, right? Phoenix |
47 | #if !LL_WINDOWS | 47 | // Change the 'FALSE' here to 'TRUE' to enable them on Windows |
48 | #define RUN_PARSER_TESTS_ON_WINDOWS FALSE | ||
49 | |||
50 | #define RUN_PARSER_TESTS (!LL_WINDOWS || RUN_PARSER_TESTS_ON_WINDOWS) | ||
51 | |||
52 | |||
53 | |||
54 | #if RUN_PARSER_TESTS | ||
55 | |||
56 | #if LL_WINDOWS | ||
57 | #include <winsock2.h> | ||
58 | typedef U32 uint32_t; | ||
59 | #endif | ||
48 | 60 | ||
49 | namespace tut | 61 | namespace tut |
50 | { | 62 | { |
@@ -225,6 +237,7 @@ namespace tut | |||
225 | mFormatter->format(v, stream); | 237 | mFormatter->format(v, stream); |
226 | //llinfos << "checkRoundTrip: length " << stream.str().length() << llendl; | 238 | //llinfos << "checkRoundTrip: length " << stream.str().length() << llendl; |
227 | LLSD w; | 239 | LLSD w; |
240 | mParser->reset(); // reset() call is needed since test code re-uses mParser | ||
228 | mParser->parse(stream, w, stream.str().size()); | 241 | mParser->parse(stream, w, stream.str().size()); |
229 | 242 | ||
230 | try | 243 | try |
@@ -475,6 +488,7 @@ namespace tut | |||
475 | input.str(in); | 488 | input.str(in); |
476 | 489 | ||
477 | LLSD parsed_result; | 490 | LLSD parsed_result; |
491 | mParser->reset(); // reset() call is needed since test code re-uses mParser | ||
478 | S32 parsed_count = mParser->parse(input, parsed_result, in.size()); | 492 | S32 parsed_count = mParser->parse(input, parsed_result, in.size()); |
479 | ensure_equals(msg, parsed_result, expected_value); | 493 | ensure_equals(msg, parsed_result, expected_value); |
480 | 494 | ||
diff --git a/linden/indra/test/llsdtraits.h b/linden/indra/test/llsdtraits.h index a9a2691..c462d31 100644 --- a/linden/indra/test/llsdtraits.h +++ b/linden/indra/test/llsdtraits.h | |||
@@ -84,10 +84,6 @@ LLSDTraits<LLSD::String>::LLSDTraits() | |||
84 | { } | 84 | { } |
85 | 85 | ||
86 | template<> | 86 | template<> |
87 | class LLSDTraits<LLString> : public LLSDTraits<LLSD::String> | ||
88 | { }; | ||
89 | |||
90 | template<> | ||
91 | class LLSDTraits<const char*> : public LLSDTraits<LLSD::String> | 87 | class LLSDTraits<const char*> : public LLSDTraits<LLSD::String> |
92 | { }; | 88 | { }; |
93 | 89 | ||
diff --git a/linden/indra/test/llsdutil_tut.cpp b/linden/indra/test/llsdutil_tut.cpp index 955b8fd..81df9bf 100644 --- a/linden/indra/test/llsdutil_tut.cpp +++ b/linden/indra/test/llsdutil_tut.cpp | |||
@@ -33,9 +33,15 @@ | |||
33 | 33 | ||
34 | #include "linden_common.h" | 34 | #include "linden_common.h" |
35 | #include "lltut.h" | 35 | #include "lltut.h" |
36 | #include "m4math.h" | ||
37 | #include "v2math.h" | ||
38 | #include "v2math.h" | ||
36 | #include "v3color.h" | 39 | #include "v3color.h" |
40 | #include "v3math.h" | ||
41 | #include "v3dmath.h" | ||
42 | #include "v4coloru.h" | ||
37 | #include "v4math.h" | 43 | #include "v4math.h" |
38 | #include "m4math.h" | 44 | #include "llquaternion.h" |
39 | #include "llsdutil.h" | 45 | #include "llsdutil.h" |
40 | 46 | ||
41 | 47 | ||
diff --git a/linden/indra/test/llstring_tut.cpp b/linden/indra/test/llstring_tut.cpp index 16569ea..191b804 100644 --- a/linden/indra/test/llstring_tut.cpp +++ b/linden/indra/test/llstring_tut.cpp | |||
@@ -31,9 +31,10 @@ | |||
31 | * $/LicenseInfo$ | 31 | * $/LicenseInfo$ |
32 | */ | 32 | */ |
33 | 33 | ||
34 | #include "linden_common.h" | ||
35 | |||
34 | #include <tut/tut.h> | 36 | #include <tut/tut.h> |
35 | #include "lltut.h" | 37 | #include "lltut.h" |
36 | #include "linden_common.h" | ||
37 | #include "llstring.h" | 38 | #include "llstring.h" |
38 | 39 | ||
39 | namespace tut | 40 | namespace tut |
@@ -48,455 +49,624 @@ namespace tut | |||
48 | template<> template<> | 49 | template<> template<> |
49 | void string_index_object_t::test<1>() | 50 | void string_index_object_t::test<1>() |
50 | { | 51 | { |
51 | LLString llstr1; | 52 | std::string llstr1; |
52 | ensure("Empty LLString", (llstr1.size() == 0) && llstr1.empty()); | 53 | ensure("Empty std::string", (llstr1.size() == 0) && llstr1.empty()); |
53 | 54 | ||
54 | LLString llstr2("Hello"); | 55 | std::string llstr2("Hello"); |
55 | ensure("LLString = Hello", (!strcmp(llstr2.c_str(), "Hello")) && (llstr2.size() == 5) && !llstr2.empty()); | 56 | ensure("std::string = Hello", (!strcmp(llstr2.c_str(), "Hello")) && (llstr2.size() == 5) && !llstr2.empty()); |
56 | 57 | ||
57 | LLString llstr3(llstr2); | 58 | std::string llstr3(llstr2); |
58 | ensure("LLString = LLString(LLString)", (!strcmp(llstr3.c_str(), "Hello")) && (llstr3.size() == 5) && !llstr3.empty()); | 59 | ensure("std::string = std::string(std::string)", (!strcmp(llstr3.c_str(), "Hello")) && (llstr3.size() == 5) && !llstr3.empty()); |
59 | 60 | ||
60 | std::string str("Hello World"); | 61 | std::string str("Hello World"); |
61 | LLString llstr4(str, 6); | 62 | std::string llstr4(str, 6); |
62 | ensure("LLString = LLString(s, size_type pos, size_type n = npos)", (!strcmp(llstr4.c_str(), "World")) && (llstr4.size() == 5) && !llstr4.empty()); | 63 | ensure("std::string = std::string(s, size_type pos, size_type n = npos)", (!strcmp(llstr4.c_str(), "World")) && (llstr4.size() == 5) && !llstr4.empty()); |
63 | 64 | ||
64 | LLString llstr5(str, str.size()); | 65 | std::string llstr5(str, str.size()); |
65 | ensure("LLString = LLString(s, size_type pos, size_type n = npos)", (llstr5.size() == 0) && llstr5.empty()); | 66 | ensure("std::string = std::string(s, size_type pos, size_type n = npos)", (llstr5.size() == 0) && llstr5.empty()); |
66 | 67 | ||
67 | LLString llstr6(5, 'A'); | 68 | std::string llstr6(5, 'A'); |
68 | ensure("LLString = LLString(count, c)", (!strcmp(llstr6.c_str(), "AAAAA")) && (llstr6.size() == 5) && !llstr6.empty()); | 69 | ensure("std::string = std::string(count, c)", (!strcmp(llstr6.c_str(), "AAAAA")) && (llstr6.size() == 5) && !llstr6.empty()); |
69 | 70 | ||
70 | LLString llstr7("Hello World", 5); | 71 | std::string llstr7("Hello World", 5); |
71 | ensure("LLString(s, n)", (!strcmp(llstr7.c_str(), "Hello")) && (llstr7.size() == 5) && !llstr7.empty()); | 72 | ensure("std::string(s, n)", (!strcmp(llstr7.c_str(), "Hello")) && (llstr7.size() == 5) && !llstr7.empty()); |
72 | 73 | ||
73 | LLString llstr8("Hello World", 6, 5); | 74 | std::string llstr8("Hello World", 6, 5); |
74 | ensure("LLString(s, n, count)", (!strcmp(llstr8.c_str(), "World")) && (llstr8.size() == 5) && !llstr8.empty()); | 75 | ensure("std::string(s, n, count)", (!strcmp(llstr8.c_str(), "World")) && (llstr8.size() == 5) && !llstr8.empty()); |
75 | 76 | ||
76 | LLString llstr9("Hello World", sizeof("Hello World")-1, 5); // go past end | 77 | std::string llstr9("Hello World", sizeof("Hello World")-1, 5); // go past end |
77 | ensure("LLString(s, n, count) goes past end", (llstr9.size() == 0) && llstr9.empty()); | 78 | ensure("std::string(s, n, count) goes past end", (llstr9.size() == 0) && llstr9.empty()); |
78 | } | 79 | } |
79 | 80 | ||
80 | template<> template<> | 81 | template<> template<> |
81 | void string_index_object_t::test<2>() | 82 | void string_index_object_t::test<3>() |
82 | { | 83 | { |
83 | LLString str("Len=5"); | 84 | std::string str("Len=5"); |
84 | ensure("isValidIndex failed", LLString::isValidIndex(str, 0) == TRUE && | 85 | ensure("isValidIndex failed", LLStringUtil::isValidIndex(str, 0) == TRUE && |
85 | LLString::isValidIndex(str, 5) == TRUE && | 86 | LLStringUtil::isValidIndex(str, 5) == TRUE && |
86 | LLString::isValidIndex(str, 6) == FALSE); | 87 | LLStringUtil::isValidIndex(str, 6) == FALSE); |
87 | 88 | ||
88 | LLString str1; | 89 | std::string str1; |
89 | ensure("isValidIndex failed fo rempty string", LLString::isValidIndex(str1, 0) == FALSE); | 90 | ensure("isValidIndex failed fo rempty string", LLStringUtil::isValidIndex(str1, 0) == FALSE); |
90 | } | 91 | } |
91 | 92 | ||
92 | template<> template<> | 93 | template<> template<> |
93 | void string_index_object_t::test<3>() | 94 | void string_index_object_t::test<4>() |
94 | { | 95 | { |
95 | LLString str_val(" Testing the extra whitespaces "); | 96 | std::string str_val(" Testing the extra whitespaces "); |
96 | LLString::trimHead(str_val); | 97 | LLStringUtil::trimHead(str_val); |
97 | ensure_equals("1: trimHead failed", str_val, "Testing the extra whitespaces "); | 98 | ensure_equals("1: trimHead failed", str_val, "Testing the extra whitespaces "); |
98 | 99 | ||
99 | LLString str_val1("\n\t\r\n Testing the extra whitespaces "); | 100 | std::string str_val1("\n\t\r\n Testing the extra whitespaces "); |
100 | LLString::trimHead(str_val1); | 101 | LLStringUtil::trimHead(str_val1); |
101 | ensure_equals("2: trimHead failed", str_val1, "Testing the extra whitespaces "); | 102 | ensure_equals("2: trimHead failed", str_val1, "Testing the extra whitespaces "); |
102 | } | 103 | } |
103 | 104 | ||
104 | template<> template<> | 105 | template<> template<> |
105 | void string_index_object_t::test<4>() | 106 | void string_index_object_t::test<5>() |
106 | { | 107 | { |
107 | LLString str_val(" Testing the extra whitespaces "); | 108 | std::string str_val(" Testing the extra whitespaces "); |
108 | LLString::trimTail(str_val); | 109 | LLStringUtil::trimTail(str_val); |
109 | ensure_equals("1: trimTail failed", str_val, " Testing the extra whitespaces"); | 110 | ensure_equals("1: trimTail failed", str_val, " Testing the extra whitespaces"); |
110 | 111 | ||
111 | LLString str_val1("\n Testing the extra whitespaces \n\t\r\n "); | 112 | std::string str_val1("\n Testing the extra whitespaces \n\t\r\n "); |
112 | LLString::trimTail(str_val1); | 113 | LLStringUtil::trimTail(str_val1); |
113 | ensure_equals("2: trimTail failed", str_val1, "\n Testing the extra whitespaces"); | 114 | ensure_equals("2: trimTail failed", str_val1, "\n Testing the extra whitespaces"); |
114 | } | 115 | } |
115 | 116 | ||
116 | 117 | ||
117 | template<> template<> | 118 | template<> template<> |
118 | void string_index_object_t::test<5>() | 119 | void string_index_object_t::test<6>() |
119 | { | 120 | { |
120 | LLString str_val(" \t \r Testing the extra \r\n whitespaces \n \t "); | 121 | std::string str_val(" \t \r Testing the extra \r\n whitespaces \n \t "); |
121 | LLString::trim(str_val); | 122 | LLStringUtil::trim(str_val); |
122 | ensure_equals("1: trim failed", str_val, "Testing the extra \r\n whitespaces"); | 123 | ensure_equals("1: trim failed", str_val, "Testing the extra \r\n whitespaces"); |
123 | } | 124 | } |
124 | 125 | ||
125 | template<> template<> | 126 | template<> template<> |
126 | void string_index_object_t::test<6>() | 127 | void string_index_object_t::test<7>() |
127 | { | 128 | { |
128 | LLString str("Second LindenLabs"); | 129 | std::string str("Second LindenLabs"); |
129 | LLString::truncate(str, 6); | 130 | LLStringUtil::truncate(str, 6); |
130 | ensure_equals("1: truncate", str, "Second"); | 131 | ensure_equals("1: truncate", str, "Second"); |
131 | 132 | ||
132 | // further truncate more than the length | 133 | // further truncate more than the length |
133 | LLString::truncate(str, 0); | 134 | LLStringUtil::truncate(str, 0); |
134 | ensure_equals("2: truncate", str, ""); | 135 | ensure_equals("2: truncate", str, ""); |
135 | } | 136 | } |
136 | 137 | ||
137 | template<> template<> | 138 | template<> template<> |
138 | void string_index_object_t::test<7>() | 139 | void string_index_object_t::test<8>() |
139 | { | 140 | { |
140 | LLString str_val("SecondLife Source"); | 141 | std::string str_val("SecondLife Source"); |
141 | LLString::toUpper(str_val); | 142 | LLStringUtil::toUpper(str_val); |
142 | ensure_equals("toUpper failed", str_val, "SECONDLIFE SOURCE"); | 143 | ensure_equals("toUpper failed", str_val, "SECONDLIFE SOURCE"); |
143 | } | 144 | } |
144 | 145 | ||
145 | template<> template<> | 146 | template<> template<> |
146 | void string_index_object_t::test<8>() | 147 | void string_index_object_t::test<9>() |
147 | { | 148 | { |
148 | LLString str_val("SecondLife Source"); | 149 | std::string str_val("SecondLife Source"); |
149 | LLString::toLower(str_val); | 150 | LLStringUtil::toLower(str_val); |
150 | ensure_equals("toLower failed", str_val, "secondlife source"); | 151 | ensure_equals("toLower failed", str_val, "secondlife source"); |
151 | } | 152 | } |
152 | 153 | ||
153 | template<> template<> | 154 | template<> template<> |
154 | void string_index_object_t::test<9>() | 155 | void string_index_object_t::test<10>() |
155 | { | 156 | { |
156 | LLString str_val("Second"); | 157 | std::string str_val("Second"); |
157 | ensure("1. isHead failed", LLString::isHead(str_val, "SecondLife Source") == TRUE); | 158 | ensure("1. isHead failed", LLStringUtil::isHead(str_val, "SecondLife Source") == TRUE); |
158 | ensure("2. isHead failed", LLString::isHead(str_val, " SecondLife Source") == FALSE); | 159 | ensure("2. isHead failed", LLStringUtil::isHead(str_val, " SecondLife Source") == FALSE); |
159 | LLString str_val2(""); | 160 | std::string str_val2(""); |
160 | ensure("3. isHead failed", LLString::isHead(str_val2, "") == FALSE); | 161 | ensure("3. isHead failed", LLStringUtil::isHead(str_val2, "") == FALSE); |
161 | } | 162 | } |
162 | 163 | ||
163 | template<> template<> | 164 | template<> template<> |
164 | void string_index_object_t::test<10>() | 165 | void string_index_object_t::test<11>() |
165 | { | 166 | { |
166 | LLString str_val("Hello.\n\n Lindenlabs. \n This is \na simple test.\n"); | 167 | std::string str_val("Hello.\n\n Lindenlabs. \n This is \na simple test.\n"); |
167 | LLString orig_str_val(str_val); | 168 | std::string orig_str_val(str_val); |
168 | LLString::addCRLF(str_val); | 169 | LLStringUtil::addCRLF(str_val); |
169 | ensure_equals("addCRLF failed", str_val, "Hello.\r\n\r\n Lindenlabs. \r\n This is \r\na simple test.\r\n"); | 170 | ensure_equals("addCRLF failed", str_val, "Hello.\r\n\r\n Lindenlabs. \r\n This is \r\na simple test.\r\n"); |
170 | LLString::removeCRLF(str_val); | 171 | LLStringUtil::removeCRLF(str_val); |
171 | ensure_equals("removeCRLF failed", str_val, orig_str_val); | 172 | ensure_equals("removeCRLF failed", str_val, orig_str_val); |
172 | } | 173 | } |
173 | 174 | ||
174 | template<> template<> | 175 | template<> template<> |
175 | void string_index_object_t::test<11>() | 176 | void string_index_object_t::test<12>() |
176 | { | 177 | { |
177 | LLString str_val("Hello.\n\n\t \t Lindenlabs. \t\t"); | 178 | std::string str_val("Hello.\n\n\t \t Lindenlabs. \t\t"); |
178 | LLString orig_str_val(str_val); | 179 | std::string orig_str_val(str_val); |
179 | LLString::replaceTabsWithSpaces(str_val, 1); | 180 | LLStringUtil::replaceTabsWithSpaces(str_val, 1); |
180 | ensure_equals("replaceTabsWithSpaces failed", str_val, "Hello.\n\n Lindenlabs. "); | 181 | ensure_equals("replaceTabsWithSpaces failed", str_val, "Hello.\n\n Lindenlabs. "); |
181 | LLString::replaceTabsWithSpaces(orig_str_val, 0); | 182 | LLStringUtil::replaceTabsWithSpaces(orig_str_val, 0); |
182 | ensure_equals("replaceTabsWithSpaces failed for 0", orig_str_val, "Hello.\n\n Lindenlabs. "); | 183 | ensure_equals("replaceTabsWithSpaces failed for 0", orig_str_val, "Hello.\n\n Lindenlabs. "); |
183 | 184 | ||
184 | str_val = "\t\t\t\t"; | 185 | str_val = "\t\t\t\t"; |
185 | LLString::replaceTabsWithSpaces(str_val, 0); | 186 | LLStringUtil::replaceTabsWithSpaces(str_val, 0); |
186 | ensure_equals("replaceTabsWithSpaces failed for all tabs", str_val, ""); | 187 | ensure_equals("replaceTabsWithSpaces failed for all tabs", str_val, ""); |
187 | } | 188 | } |
188 | 189 | ||
189 | template<> template<> | 190 | template<> template<> |
190 | void string_index_object_t::test<12>() | 191 | void string_index_object_t::test<13>() |
191 | { | 192 | { |
192 | LLString str_val("Hello.\n\n\t\t\r\nLindenlabsX."); | 193 | std::string str_val("Hello.\n\n\t\t\r\nLindenlabsX."); |
193 | LLString::replaceNonstandardASCII(str_val, 'X'); | 194 | LLStringUtil::replaceNonstandardASCII(str_val, 'X'); |
194 | ensure_equals("replaceNonstandardASCII failed", str_val, "Hello.\n\nXXX\nLindenlabsX."); | 195 | ensure_equals("replaceNonstandardASCII failed", str_val, "Hello.\n\nXXX\nLindenlabsX."); |
195 | } | 196 | } |
196 | 197 | ||
197 | template<> template<> | 198 | template<> template<> |
198 | void string_index_object_t::test<13>() | 199 | void string_index_object_t::test<14>() |
199 | { | 200 | { |
200 | LLString str_val("Hello.\n\t\r\nABCDEFGHIABABAB"); | 201 | std::string str_val("Hello.\n\t\r\nABCDEFGHIABABAB"); |
201 | LLString::replaceChar(str_val, 'A', 'X'); | 202 | LLStringUtil::replaceChar(str_val, 'A', 'X'); |
202 | ensure_equals("1: replaceChar failed", str_val, "Hello.\n\t\r\nXBCDEFGHIXBXBXB"); | 203 | ensure_equals("1: replaceChar failed", str_val, "Hello.\n\t\r\nXBCDEFGHIXBXBXB"); |
203 | LLString str_val1("Hello.\n\t\r\nABCDEFGHIABABAB"); | 204 | std::string str_val1("Hello.\n\t\r\nABCDEFGHIABABAB"); |
204 | } | 205 | } |
205 | 206 | ||
206 | template<> template<> | 207 | template<> template<> |
207 | void string_index_object_t::test<14>() | 208 | void string_index_object_t::test<15>() |
208 | { | 209 | { |
209 | LLString str_val("Hello.\n\r\t"); | 210 | std::string str_val("Hello.\n\r\t"); |
210 | ensure("containsNonprintable failed", LLString::containsNonprintable(str_val) == TRUE); | 211 | ensure("containsNonprintable failed", LLStringUtil::containsNonprintable(str_val) == TRUE); |
211 | 212 | ||
212 | str_val = "ABC "; | 213 | str_val = "ABC "; |
213 | ensure("containsNonprintable failed", LLString::containsNonprintable(str_val) == FALSE); | 214 | ensure("containsNonprintable failed", LLStringUtil::containsNonprintable(str_val) == FALSE); |
214 | } | 215 | } |
215 | 216 | ||
216 | template<> template<> | 217 | template<> template<> |
217 | void string_index_object_t::test<15>() | 218 | void string_index_object_t::test<16>() |
218 | { | 219 | { |
219 | LLString str_val("Hello.\n\r\t Again!"); | 220 | std::string str_val("Hello.\n\r\t Again!"); |
220 | LLString::stripNonprintable(str_val); | 221 | LLStringUtil::stripNonprintable(str_val); |
221 | ensure_equals("stripNonprintable failed", str_val, "Hello. Again!"); | 222 | ensure_equals("stripNonprintable failed", str_val, "Hello. Again!"); |
222 | 223 | ||
223 | str_val = "\r\n\t\t"; | 224 | str_val = "\r\n\t\t"; |
224 | LLString::stripNonprintable(str_val); | 225 | LLStringUtil::stripNonprintable(str_val); |
225 | ensure_equals("stripNonprintable resulting in empty string failed", str_val, ""); | 226 | ensure_equals("stripNonprintable resulting in empty string failed", str_val, ""); |
226 | } | 227 | } |
227 | 228 | ||
228 | template<> template<> | 229 | template<> template<> |
229 | void string_index_object_t::test<16>() | 230 | void string_index_object_t::test<17>() |
230 | { | 231 | { |
231 | BOOL value; | 232 | BOOL value; |
232 | LLString str_val("1"); | 233 | std::string str_val("1"); |
233 | ensure("convertToBOOL 1 failed", LLString::convertToBOOL(str_val, value) && value); | 234 | ensure("convertToBOOL 1 failed", LLStringUtil::convertToBOOL(str_val, value) && value); |
234 | str_val = "T"; | 235 | str_val = "T"; |
235 | ensure("convertToBOOL T failed", LLString::convertToBOOL(str_val, value) && value); | 236 | ensure("convertToBOOL T failed", LLStringUtil::convertToBOOL(str_val, value) && value); |
236 | str_val = "t"; | 237 | str_val = "t"; |
237 | ensure("convertToBOOL t failed", LLString::convertToBOOL(str_val, value) && value); | 238 | ensure("convertToBOOL t failed", LLStringUtil::convertToBOOL(str_val, value) && value); |
238 | str_val = "TRUE"; | 239 | str_val = "TRUE"; |
239 | ensure("convertToBOOL TRUE failed", LLString::convertToBOOL(str_val, value) && value); | 240 | ensure("convertToBOOL TRUE failed", LLStringUtil::convertToBOOL(str_val, value) && value); |
240 | str_val = "True"; | 241 | str_val = "True"; |
241 | ensure("convertToBOOL True failed", LLString::convertToBOOL(str_val, value) && value); | 242 | ensure("convertToBOOL True failed", LLStringUtil::convertToBOOL(str_val, value) && value); |
242 | str_val = "true"; | 243 | str_val = "true"; |
243 | ensure("convertToBOOL true failed", LLString::convertToBOOL(str_val, value) && value); | 244 | ensure("convertToBOOL true failed", LLStringUtil::convertToBOOL(str_val, value) && value); |
244 | 245 | ||
245 | str_val = "0"; | 246 | str_val = "0"; |
246 | ensure("convertToBOOL 0 failed", LLString::convertToBOOL(str_val, value) && !value); | 247 | ensure("convertToBOOL 0 failed", LLStringUtil::convertToBOOL(str_val, value) && !value); |
247 | str_val = "F"; | 248 | str_val = "F"; |
248 | ensure("convertToBOOL F failed", LLString::convertToBOOL(str_val, value) && !value); | 249 | ensure("convertToBOOL F failed", LLStringUtil::convertToBOOL(str_val, value) && !value); |
249 | str_val = "f"; | 250 | str_val = "f"; |
250 | ensure("convertToBOOL f failed", LLString::convertToBOOL(str_val, value) && !value); | 251 | ensure("convertToBOOL f failed", LLStringUtil::convertToBOOL(str_val, value) && !value); |
251 | str_val = "FALSE"; | 252 | str_val = "FALSE"; |
252 | ensure("convertToBOOL FASLE failed", LLString::convertToBOOL(str_val, value) && !value); | 253 | ensure("convertToBOOL FASLE failed", LLStringUtil::convertToBOOL(str_val, value) && !value); |
253 | str_val = "False"; | 254 | str_val = "False"; |
254 | ensure("convertToBOOL False failed", LLString::convertToBOOL(str_val, value) && !value); | 255 | ensure("convertToBOOL False failed", LLStringUtil::convertToBOOL(str_val, value) && !value); |
255 | str_val = "false"; | 256 | str_val = "false"; |
256 | ensure("convertToBOOL false failed", LLString::convertToBOOL(str_val, value) && !value); | 257 | ensure("convertToBOOL false failed", LLStringUtil::convertToBOOL(str_val, value) && !value); |
257 | 258 | ||
258 | str_val = "Tblah"; | 259 | str_val = "Tblah"; |
259 | ensure("convertToBOOL false failed", !LLString::convertToBOOL(str_val, value)); | 260 | ensure("convertToBOOL false failed", !LLStringUtil::convertToBOOL(str_val, value)); |
260 | } | 261 | } |
261 | 262 | ||
262 | template<> template<> | 263 | template<> template<> |
263 | void string_index_object_t::test<17>() | 264 | void string_index_object_t::test<18>() |
264 | { | 265 | { |
265 | U8 value; | 266 | U8 value; |
266 | LLString str_val("255"); | 267 | std::string str_val("255"); |
267 | ensure("1: convertToU8 failed", LLString::convertToU8(str_val, value) && value == 255); | 268 | ensure("1: convertToU8 failed", LLStringUtil::convertToU8(str_val, value) && value == 255); |
268 | 269 | ||
269 | str_val = "0"; | 270 | str_val = "0"; |
270 | ensure("2: convertToU8 failed", LLString::convertToU8(str_val, value) && value == 0); | 271 | ensure("2: convertToU8 failed", LLStringUtil::convertToU8(str_val, value) && value == 0); |
271 | 272 | ||
272 | str_val = "-1"; | 273 | str_val = "-1"; |
273 | ensure("3: convertToU8 failed", !LLString::convertToU8(str_val, value)); | 274 | ensure("3: convertToU8 failed", !LLStringUtil::convertToU8(str_val, value)); |
274 | 275 | ||
275 | str_val = "256"; // bigger than MAX_U8 | 276 | str_val = "256"; // bigger than MAX_U8 |
276 | ensure("4: convertToU8 failed", !LLString::convertToU8(str_val, value)); | 277 | ensure("4: convertToU8 failed", !LLStringUtil::convertToU8(str_val, value)); |
277 | } | 278 | } |
278 | 279 | ||
279 | template<> template<> | 280 | template<> template<> |
280 | void string_index_object_t::test<18>() | 281 | void string_index_object_t::test<19>() |
281 | { | 282 | { |
282 | S8 value; | 283 | S8 value; |
283 | LLString str_val("127"); | 284 | std::string str_val("127"); |
284 | ensure("1: convertToS8 failed", LLString::convertToS8(str_val, value) && value == 127); | 285 | ensure("1: convertToS8 failed", LLStringUtil::convertToS8(str_val, value) && value == 127); |
285 | 286 | ||
286 | str_val = "0"; | 287 | str_val = "0"; |
287 | ensure("2: convertToS8 failed", LLString::convertToS8(str_val, value) && value == 0); | 288 | ensure("2: convertToS8 failed", LLStringUtil::convertToS8(str_val, value) && value == 0); |
288 | 289 | ||
289 | str_val = "-128"; | 290 | str_val = "-128"; |
290 | ensure("3: convertToS8 failed", LLString::convertToS8(str_val, value) && value == -128); | 291 | ensure("3: convertToS8 failed", LLStringUtil::convertToS8(str_val, value) && value == -128); |
291 | 292 | ||
292 | str_val = "128"; // bigger than MAX_S8 | 293 | str_val = "128"; // bigger than MAX_S8 |
293 | ensure("4: convertToS8 failed", !LLString::convertToS8(str_val, value)); | 294 | ensure("4: convertToS8 failed", !LLStringUtil::convertToS8(str_val, value)); |
294 | 295 | ||
295 | str_val = "-129"; | 296 | str_val = "-129"; |
296 | ensure("5: convertToS8 failed", !LLString::convertToS8(str_val, value)); | 297 | ensure("5: convertToS8 failed", !LLStringUtil::convertToS8(str_val, value)); |
297 | } | 298 | } |
298 | 299 | ||
299 | template<> template<> | 300 | template<> template<> |
300 | void string_index_object_t::test<19>() | 301 | void string_index_object_t::test<20>() |
301 | { | 302 | { |
302 | S16 value; | 303 | S16 value; |
303 | LLString str_val("32767"); | 304 | std::string str_val("32767"); |
304 | ensure("1: convertToS16 failed", LLString::convertToS16(str_val, value) && value == 32767); | 305 | ensure("1: convertToS16 failed", LLStringUtil::convertToS16(str_val, value) && value == 32767); |
305 | 306 | ||
306 | str_val = "0"; | 307 | str_val = "0"; |
307 | ensure("2: convertToS16 failed", LLString::convertToS16(str_val, value) && value == 0); | 308 | ensure("2: convertToS16 failed", LLStringUtil::convertToS16(str_val, value) && value == 0); |
308 | 309 | ||
309 | str_val = "-32768"; | 310 | str_val = "-32768"; |
310 | ensure("3: convertToS16 failed", LLString::convertToS16(str_val, value) && value == -32768); | 311 | ensure("3: convertToS16 failed", LLStringUtil::convertToS16(str_val, value) && value == -32768); |
311 | 312 | ||
312 | str_val = "32768"; | 313 | str_val = "32768"; |
313 | ensure("4: convertToS16 failed", !LLString::convertToS16(str_val, value)); | 314 | ensure("4: convertToS16 failed", !LLStringUtil::convertToS16(str_val, value)); |
314 | 315 | ||
315 | str_val = "-32769"; | 316 | str_val = "-32769"; |
316 | ensure("5: convertToS16 failed", !LLString::convertToS16(str_val, value)); | 317 | ensure("5: convertToS16 failed", !LLStringUtil::convertToS16(str_val, value)); |
317 | } | 318 | } |
318 | 319 | ||
319 | template<> template<> | 320 | template<> template<> |
320 | void string_index_object_t::test<20>() | 321 | void string_index_object_t::test<21>() |
321 | { | 322 | { |
322 | U16 value; | 323 | U16 value; |
323 | LLString str_val("65535"); //0xFFFF | 324 | std::string str_val("65535"); //0xFFFF |
324 | ensure("1: convertToU16 failed", LLString::convertToU16(str_val, value) && value == 65535); | 325 | ensure("1: convertToU16 failed", LLStringUtil::convertToU16(str_val, value) && value == 65535); |
325 | 326 | ||
326 | str_val = "0"; | 327 | str_val = "0"; |
327 | ensure("2: convertToU16 failed", LLString::convertToU16(str_val, value) && value == 0); | 328 | ensure("2: convertToU16 failed", LLStringUtil::convertToU16(str_val, value) && value == 0); |
328 | 329 | ||
329 | str_val = "-1"; | 330 | str_val = "-1"; |
330 | ensure("3: convertToU16 failed", !LLString::convertToU16(str_val, value)); | 331 | ensure("3: convertToU16 failed", !LLStringUtil::convertToU16(str_val, value)); |
331 | 332 | ||
332 | str_val = "65536"; | 333 | str_val = "65536"; |
333 | ensure("4: convertToU16 failed", !LLString::convertToU16(str_val, value)); | 334 | ensure("4: convertToU16 failed", !LLStringUtil::convertToU16(str_val, value)); |
334 | } | 335 | } |
335 | 336 | ||
336 | template<> template<> | 337 | template<> template<> |
337 | void string_index_object_t::test<21>() | 338 | void string_index_object_t::test<22>() |
338 | { | 339 | { |
339 | U32 value; | 340 | U32 value; |
340 | LLString str_val("4294967295"); //0xFFFFFFFF | 341 | std::string str_val("4294967295"); //0xFFFFFFFF |
341 | ensure("1: convertToU32 failed", LLString::convertToU32(str_val, value) && value == 4294967295); | 342 | ensure("1: convertToU32 failed", LLStringUtil::convertToU32(str_val, value) && value == 4294967295UL); |
342 | 343 | ||
343 | str_val = "0"; | 344 | str_val = "0"; |
344 | ensure("2: convertToU32 failed", LLString::convertToU32(str_val, value) && value == 0); | 345 | ensure("2: convertToU32 failed", LLStringUtil::convertToU32(str_val, value) && value == 0); |
345 | 346 | ||
347 | #ifndef LL_DARWIN | ||
346 | str_val = "-1"; | 348 | str_val = "-1"; |
347 | ensure("3: convertToU32 failed", LLString::convertToU32(str_val, value) && value == 4294967295); | 349 | ensure("3: convertToU32 failed", LLStringUtil::convertToU32(str_val, value) && value == 4294967295UL); |
348 | 350 | #endif | |
351 | |||
349 | str_val = "4294967296"; | 352 | str_val = "4294967296"; |
350 | ensure("4: convertToU32 failed", !LLString::convertToU32(str_val, value)); | 353 | ensure("4: convertToU32 failed", !LLStringUtil::convertToU32(str_val, value)); |
351 | } | 354 | } |
352 | 355 | ||
353 | template<> template<> | 356 | template<> template<> |
354 | void string_index_object_t::test<22>() | 357 | void string_index_object_t::test<23>() |
355 | { | 358 | { |
356 | S32 value; | 359 | S32 value; |
357 | LLString str_val("2147483647"); //0x7FFFFFFF | 360 | std::string str_val("2147483647"); //0x7FFFFFFF |
358 | ensure("1: convertToS32 failed", LLString::convertToS32(str_val, value) && value == 2147483647); | 361 | ensure("1: convertToS32 failed", LLStringUtil::convertToS32(str_val, value) && value == 2147483647); |
359 | 362 | ||
360 | str_val = "0"; | 363 | str_val = "0"; |
361 | ensure("2: convertToS32 failed", LLString::convertToS32(str_val, value) && value == 0); | 364 | ensure("2: convertToS32 failed", LLStringUtil::convertToS32(str_val, value) && value == 0); |
362 | 365 | ||
366 | // Avoid "unary minus operator applied to unsigned type" warning on VC++. JC | ||
367 | S32 min_val = -2147483647 - 1; | ||
363 | str_val = "-2147483648"; | 368 | str_val = "-2147483648"; |
364 | ensure("3: convertToS32 failed", LLString::convertToS32(str_val, value) && value == -2147483648); | 369 | ensure("3: convertToS32 failed", LLStringUtil::convertToS32(str_val, value) && value == min_val); |
365 | 370 | ||
366 | str_val = "2147483648"; | 371 | str_val = "2147483648"; |
367 | ensure("4: convertToS32 failed", !LLString::convertToS32(str_val, value)); | 372 | ensure("4: convertToS32 failed", !LLStringUtil::convertToS32(str_val, value)); |
368 | 373 | ||
369 | str_val = "-2147483649"; | 374 | str_val = "-2147483649"; |
370 | ensure("5: convertToS32 failed", !LLString::convertToS32(str_val, value)); | 375 | ensure("5: convertToS32 failed", !LLStringUtil::convertToS32(str_val, value)); |
371 | } | 376 | } |
372 | 377 | ||
373 | template<> template<> | 378 | template<> template<> |
374 | void string_index_object_t::test<23>() | 379 | void string_index_object_t::test<24>() |
375 | { | 380 | { |
376 | F32 value; | 381 | F32 value; |
377 | LLString str_val("2147483647"); //0x7FFFFFFF | 382 | std::string str_val("2147483647"); //0x7FFFFFFF |
378 | ensure("1: convertToF32 failed", LLString::convertToF32(str_val, value) && value == 2147483647); | 383 | ensure("1: convertToF32 failed", LLStringUtil::convertToF32(str_val, value) && value == 2147483647); |
379 | 384 | ||
380 | str_val = "0"; | 385 | str_val = "0"; |
381 | ensure("2: convertToF32 failed", LLString::convertToF32(str_val, value) && value == 0); | 386 | ensure("2: convertToF32 failed", LLStringUtil::convertToF32(str_val, value) && value == 0); |
382 | 387 | ||
383 | /* Need to find max/min F32 values | 388 | /* Need to find max/min F32 values |
384 | str_val = "-2147483648"; | 389 | str_val = "-2147483648"; |
385 | ensure("3: convertToF32 failed", LLString::convertToF32(str_val, value) && value == -2147483648); | 390 | ensure("3: convertToF32 failed", LLStringUtil::convertToF32(str_val, value) && value == -2147483648); |
386 | 391 | ||
387 | str_val = "2147483648"; | 392 | str_val = "2147483648"; |
388 | ensure("4: convertToF32 failed", !LLString::convertToF32(str_val, value)); | 393 | ensure("4: convertToF32 failed", !LLStringUtil::convertToF32(str_val, value)); |
389 | 394 | ||
390 | str_val = "-2147483649"; | 395 | str_val = "-2147483649"; |
391 | ensure("5: convertToF32 failed", !LLString::convertToF32(str_val, value)); | 396 | ensure("5: convertToF32 failed", !LLStringUtil::convertToF32(str_val, value)); |
392 | */ | 397 | */ |
393 | } | 398 | } |
394 | 399 | ||
395 | template<> template<> | 400 | template<> template<> |
396 | void string_index_object_t::test<24>() | 401 | void string_index_object_t::test<25>() |
397 | { | 402 | { |
398 | F64 value; | 403 | F64 value; |
399 | LLString str_val("9223372036854775807"); //0x7FFFFFFFFFFFFFFF | 404 | std::string str_val("9223372036854775807"); //0x7FFFFFFFFFFFFFFF |
400 | ensure("1: convertToF64 failed", LLString::convertToF64(str_val, value) && value == 9223372036854775807); | 405 | ensure("1: convertToF64 failed", LLStringUtil::convertToF64(str_val, value) && value == 9223372036854775807LL); |
401 | 406 | ||
402 | str_val = "0"; | 407 | str_val = "0"; |
403 | ensure("2: convertToF64 failed", LLString::convertToF64(str_val, value) && value == 0); | 408 | ensure("2: convertToF64 failed", LLStringUtil::convertToF64(str_val, value) && value == 0.0F); |
404 | 409 | ||
405 | /* Need to find max/min F64 values | 410 | /* Need to find max/min F64 values |
406 | str_val = "-2147483648"; | 411 | str_val = "-2147483648"; |
407 | ensure("3: convertToF32 failed", LLString::convertToF32(str_val, value) && value == -2147483648); | 412 | ensure("3: convertToF32 failed", LLStringUtil::convertToF32(str_val, value) && value == -2147483648); |
408 | 413 | ||
409 | str_val = "2147483648"; | 414 | str_val = "2147483648"; |
410 | ensure("4: convertToF32 failed", !LLString::convertToF32(str_val, value)); | 415 | ensure("4: convertToF32 failed", !LLStringUtil::convertToF32(str_val, value)); |
411 | 416 | ||
412 | str_val = "-2147483649"; | 417 | str_val = "-2147483649"; |
413 | ensure("5: convertToF32 failed", !LLString::convertToF32(str_val, value)); | 418 | ensure("5: convertToF32 failed", !LLStringUtil::convertToF32(str_val, value)); |
414 | */ | 419 | */ |
415 | } | 420 | } |
416 | 421 | ||
417 | template<> template<> | 422 | template<> template<> |
418 | void string_index_object_t::test<25>() | 423 | void string_index_object_t::test<26>() |
419 | { | 424 | { |
420 | char* str1 = NULL; | 425 | char* str1 = NULL; |
421 | char* str2 = NULL; | 426 | char* str2 = NULL; |
422 | 427 | ||
423 | ensure("1: compareStrings failed", LLString::compareStrings(str1, str2) == 0); | 428 | ensure("1: compareStrings failed", LLStringUtil::compareStrings(str1, str2) == 0); |
424 | str2 = "A"; | 429 | str2 = "A"; |
425 | ensure("2: compareStrings failed", LLString::compareStrings(str1, str2) > 0); | 430 | ensure("2: compareStrings failed", LLStringUtil::compareStrings(str1, str2) > 0); |
426 | ensure("3: compareStrings failed", LLString::compareStrings(str2, str1) < 0); | 431 | ensure("3: compareStrings failed", LLStringUtil::compareStrings(str2, str1) < 0); |
427 | 432 | ||
428 | str1 = "A is smaller than B"; | 433 | str1 = "A is smaller than B"; |
429 | str2 = "B is greater than A"; | 434 | str2 = "B is greater than A"; |
430 | ensure("4: compareStrings failed", LLString::compareStrings(str1, str2) < 0); | 435 | ensure("4: compareStrings failed", LLStringUtil::compareStrings(str1, str2) < 0); |
431 | 436 | ||
432 | str2 = "A is smaller than B"; | 437 | str2 = "A is smaller than B"; |
433 | ensure("5: compareStrings failed", LLString::compareStrings(str1, str2) == 0); | 438 | ensure("5: compareStrings failed", LLStringUtil::compareStrings(str1, str2) == 0); |
434 | } | 439 | } |
435 | 440 | ||
436 | template<> template<> | 441 | template<> template<> |
437 | void string_index_object_t::test<26>() | 442 | void string_index_object_t::test<27>() |
438 | { | 443 | { |
439 | char* str1 = NULL; | 444 | char* str1 = NULL; |
440 | char* str2 = NULL; | 445 | char* str2 = NULL; |
441 | 446 | ||
442 | ensure("1: compareInsensitive failed", LLString::compareInsensitive(str1, str2) == 0); | 447 | ensure("1: compareInsensitive failed", LLStringUtil::compareInsensitive(str1, str2) == 0); |
443 | str2 = "A"; | 448 | str2 = "A"; |
444 | ensure("2: compareInsensitive failed", LLString::compareInsensitive(str1, str2) > 0); | 449 | ensure("2: compareInsensitive failed", LLStringUtil::compareInsensitive(str1, str2) > 0); |
445 | ensure("3: compareInsensitive failed", LLString::compareInsensitive(str2, str1) < 0); | 450 | ensure("3: compareInsensitive failed", LLStringUtil::compareInsensitive(str2, str1) < 0); |
446 | 451 | ||
447 | str1 = "A is equal to a"; | 452 | str1 = "A is equal to a"; |
448 | str2 = "a is EQUAL to A"; | 453 | str2 = "a is EQUAL to A"; |
449 | ensure("4: compareInsensitive failed", LLString::compareInsensitive(str1, str2) == 0); | 454 | ensure("4: compareInsensitive failed", LLStringUtil::compareInsensitive(str1, str2) == 0); |
450 | } | 455 | } |
451 | 456 | ||
452 | template<> template<> | 457 | template<> template<> |
453 | void string_index_object_t::test<27>() | 458 | void string_index_object_t::test<28>() |
454 | { | 459 | { |
455 | LLString lhs_str("PROgraM12files"); | 460 | std::string lhs_str("PROgraM12files"); |
456 | LLString rhs_str("PROgram12Files"); | 461 | std::string rhs_str("PROgram12Files"); |
457 | ensure("compareDict 1 failed", LLString::compareDict(lhs_str, rhs_str) < 0); | 462 | ensure("compareDict 1 failed", LLStringUtil::compareDict(lhs_str, rhs_str) < 0); |
458 | ensure("precedesDict 1 failed", LLString::precedesDict(lhs_str, rhs_str) == TRUE); | 463 | ensure("precedesDict 1 failed", LLStringUtil::precedesDict(lhs_str, rhs_str) == TRUE); |
459 | 464 | ||
460 | lhs_str = "PROgram12Files"; | 465 | lhs_str = "PROgram12Files"; |
461 | rhs_str = "PROgram12Files"; | 466 | rhs_str = "PROgram12Files"; |
462 | ensure("compareDict 2 failed", LLString::compareDict(lhs_str, rhs_str) == 0); | 467 | ensure("compareDict 2 failed", LLStringUtil::compareDict(lhs_str, rhs_str) == 0); |
463 | ensure("precedesDict 2 failed", LLString::precedesDict(lhs_str, rhs_str) == FALSE); | 468 | ensure("precedesDict 2 failed", LLStringUtil::precedesDict(lhs_str, rhs_str) == FALSE); |
464 | 469 | ||
465 | lhs_str = "PROgram12Files"; | 470 | lhs_str = "PROgram12Files"; |
466 | rhs_str = "PROgRAM12FILES"; | 471 | rhs_str = "PROgRAM12FILES"; |
467 | ensure("compareDict 3 failed", LLString::compareDict(lhs_str, rhs_str) > 0); | 472 | ensure("compareDict 3 failed", LLStringUtil::compareDict(lhs_str, rhs_str) > 0); |
468 | ensure("precedesDict 3 failed", LLString::precedesDict(lhs_str, rhs_str) == FALSE); | 473 | ensure("precedesDict 3 failed", LLStringUtil::precedesDict(lhs_str, rhs_str) == FALSE); |
469 | } | 474 | } |
470 | 475 | ||
471 | template<> template<> | 476 | template<> template<> |
472 | void string_index_object_t::test<28>() | 477 | void string_index_object_t::test<29>() |
473 | { | 478 | { |
474 | char str1[] = "First String..."; | 479 | char str1[] = "First String..."; |
475 | char str2[100]; | 480 | char str2[100]; |
476 | 481 | ||
477 | LLString::copy(str2, str1, 100); | 482 | LLStringUtil::copy(str2, str1, 100); |
478 | ensure("LLString::copy with enough dest lenght failed", strcmp(str2, str1) == 0); | 483 | ensure("LLStringUtil::copy with enough dest length failed", strcmp(str2, str1) == 0); |
479 | LLString::copy(str2, str1, sizeof("First")); | 484 | LLStringUtil::copy(str2, str1, sizeof("First")); |
480 | ensure("LLString::copy with less dest lenght failed", strcmp(str2, "First") == 0); | 485 | ensure("LLStringUtil::copy with less dest length failed", strcmp(str2, "First") == 0); |
481 | } | 486 | } |
482 | 487 | ||
483 | template<> template<> | 488 | template<> template<> |
484 | void string_index_object_t::test<29>() | 489 | void string_index_object_t::test<30>() |
485 | { | 490 | { |
486 | LLString str1 = "This is the sentence..."; | 491 | std::string str1 = "This is the sentence..."; |
487 | LLString str2 = "This is the "; | 492 | std::string str2 = "This is the "; |
488 | LLString str3 = "first "; | 493 | std::string str3 = "first "; |
489 | LLString str4 = "This is the first sentence..."; | 494 | std::string str4 = "This is the first sentence..."; |
490 | LLString str5 = "This is the sentence...first "; | 495 | std::string str5 = "This is the sentence...first "; |
491 | LLString dest; | 496 | std::string dest; |
492 | 497 | ||
493 | dest = str1; | 498 | dest = str1; |
494 | LLString::copyInto(dest, str3, str2.length()); | 499 | LLStringUtil::copyInto(dest, str3, str2.length()); |
495 | ensure("LLString::copyInto insert failed", dest == str4); | 500 | ensure("LLStringUtil::copyInto insert failed", dest == str4); |
496 | 501 | ||
497 | dest = str1; | 502 | dest = str1; |
498 | LLString::copyInto(dest, str3, dest.length()); | 503 | LLStringUtil::copyInto(dest, str3, dest.length()); |
499 | ensure("LLString::copyInto append failed", dest == str5); | 504 | ensure("LLStringUtil::copyInto append failed", dest == str5); |
505 | } | ||
506 | |||
507 | template<> template<> | ||
508 | void string_index_object_t::test<31>() | ||
509 | { | ||
510 | std::string stripped; | ||
511 | |||
512 | // Plain US ASCII text, including spaces and punctuation, | ||
513 | // should not be altered. | ||
514 | std::string simple_text = "Hello, world!"; | ||
515 | stripped = LLStringFn::strip_invalid_xml(simple_text); | ||
516 | ensure("Simple text passed unchanged", stripped == simple_text); | ||
517 | |||
518 | // Control characters should be removed | ||
519 | // except for 0x09, 0x0a, 0x0d | ||
520 | std::string control_chars; | ||
521 | for (char c = 0x01; c < 0x20; c++) | ||
522 | { | ||
523 | control_chars.push_back(c); | ||
524 | } | ||
525 | std::string allowed_control_chars; | ||
526 | allowed_control_chars.push_back( (char)0x09 ); | ||
527 | allowed_control_chars.push_back( (char)0x0a ); | ||
528 | allowed_control_chars.push_back( (char)0x0d ); | ||
529 | |||
530 | stripped = LLStringFn::strip_invalid_xml(control_chars); | ||
531 | ensure("Only tab, LF, CR control characters allowed", | ||
532 | stripped == allowed_control_chars); | ||
533 | |||
534 | // UTF-8 should be passed intact, including high byte | ||
535 | // characters. Try Francais (with C squiggle cedilla) | ||
536 | std::string french = "Fran"; | ||
537 | french.push_back( (char)0xC3 ); | ||
538 | french.push_back( (char)0xA7 ); | ||
539 | french += "ais"; | ||
540 | stripped = LLStringFn::strip_invalid_xml( french ); | ||
541 | ensure("UTF-8 high byte text is allowed", french == stripped ); | ||
500 | } | 542 | } |
501 | } | ||
502 | 543 | ||
544 | template<> template<> | ||
545 | void string_index_object_t::test<32>() | ||
546 | { | ||
547 | // Test LLStringUtil::format() string interpolation | ||
548 | LLStringUtil::format_map_t fmt_map; | ||
549 | std::string s; | ||
550 | int subcount; | ||
551 | |||
552 | fmt_map["[TRICK1]"] = "[A]"; | ||
553 | fmt_map["[A]"] = "a"; | ||
554 | fmt_map["[B]"] = "b"; | ||
555 | fmt_map["[AAA]"] = "aaa"; | ||
556 | fmt_map["[BBB]"] = "bbb"; | ||
557 | fmt_map["[TRICK2]"] = "[A]"; | ||
558 | fmt_map["[EXPLOIT]"] = "!!!!!!!!!!!![EXPLOIT]!!!!!!!!!!!!"; | ||
559 | fmt_map["[KEYLONGER]"] = "short"; | ||
560 | fmt_map["[KEYSHORTER]"] = "Am I not a long string?"; | ||
561 | fmt_map["?"] = "!"; | ||
562 | fmt_map["[DELETE]"] = ""; | ||
563 | |||
564 | for (LLStringUtil::format_map_t::const_iterator iter = fmt_map.begin(); iter != fmt_map.end(); ++iter) | ||
565 | { | ||
566 | // Test when source string is entirely one key | ||
567 | s = iter->first; | ||
568 | subcount = LLStringUtil::format(s, fmt_map); | ||
569 | ensure_equals("LLStringUtil::format: Raw interpolation result", s, iter->second); | ||
570 | ensure_equals("LLStringUtil::format: Raw interpolation result count", 1, subcount); | ||
571 | } | ||
572 | |||
573 | for (LLStringUtil::format_map_t::const_iterator iter = fmt_map.begin(); iter != fmt_map.end(); ++iter) | ||
574 | { | ||
575 | // Test when source string is one key, duplicated | ||
576 | s = iter->first + iter->first + iter->first + iter->first; | ||
577 | subcount = LLStringUtil::format(s, fmt_map); | ||
578 | ensure_equals("LLStringUtil::format: Rawx4 interpolation result", s, iter->second + iter->second + iter->second + iter->second); | ||
579 | ensure_equals("LLStringUtil::format: Rawx4 interpolation result count", 4, subcount); | ||
580 | } | ||
581 | |||
582 | // Test when source string has no keys | ||
583 | std::string srcs = "!!!!!!!!!!!!!!!!"; | ||
584 | s = srcs; | ||
585 | subcount = LLStringUtil::format(s, fmt_map); | ||
586 | ensure_equals("LLStringUtil::format: No key test result", s, srcs); | ||
587 | ensure_equals("LLStringUtil::format: No key test result count", 0, subcount); | ||
588 | |||
589 | // Test when source string has no keys and is empty | ||
590 | std::string srcs3; | ||
591 | s = srcs3; | ||
592 | subcount = LLStringUtil::format(s, fmt_map); | ||
593 | ensure("LLStringUtil::format: No key test3 result", s.empty()); | ||
594 | ensure_equals("LLStringUtil::format: No key test3 result count", 0, subcount); | ||
595 | |||
596 | // Test a substitution where a key is substituted with blankness | ||
597 | std::string srcs2 = "[DELETE]"; | ||
598 | s = srcs2; | ||
599 | subcount = LLStringUtil::format(s, fmt_map); | ||
600 | ensure("LLStringUtil::format: Delete key test2 result", s.empty()); | ||
601 | ensure_equals("LLStringUtil::format: Delete key test2 result count", 1, subcount); | ||
602 | |||
603 | // Test an assorted substitution | ||
604 | std::string srcs4 = "[TRICK1][A][B][AAA][BBB][TRICK2][KEYLONGER][KEYSHORTER]?[DELETE]"; | ||
605 | s = srcs4; | ||
606 | subcount = LLStringUtil::format(s, fmt_map); | ||
607 | ensure_equals("LLStringUtil::format: Assorted Test1 result", s, "[A]abaaabbb[A]shortAm I not a long string?!"); | ||
608 | ensure_equals("LLStringUtil::format: Assorted Test1 result count", 10, subcount); | ||
609 | |||
610 | // Test an assorted substitution | ||
611 | std::string srcs5 = "[DELETE]?[KEYSHORTER][KEYLONGER][TRICK2][BBB][AAA][B][A][TRICK1]"; | ||
612 | s = srcs5; | ||
613 | subcount = LLStringUtil::format(s, fmt_map); | ||
614 | ensure_equals("LLStringUtil::format: Assorted Test2 result", s, "!Am I not a long string?short[A]bbbaaaba[A]"); | ||
615 | ensure_equals("LLStringUtil::format: Assorted Test2 result count", 10, subcount); | ||
616 | |||
617 | // Test an assorted substitution | ||
618 | std::string srcs8 = "foo[DELETE]bar?"; | ||
619 | s = srcs8; | ||
620 | subcount = LLStringUtil::format(s, fmt_map); | ||
621 | ensure_equals("LLStringUtil::format: Assorted Test3 result", s, "foobar!"); | ||
622 | ensure_equals("LLStringUtil::format: Assorted Test3 result count", 2, subcount); | ||
623 | } | ||
624 | |||
625 | template<> template<> | ||
626 | void string_index_object_t::test<33>() | ||
627 | { | ||
628 | // Test LLStringUtil::format() string interpolation | ||
629 | LLStringUtil::format_map_t blank_fmt_map; | ||
630 | std::string s; | ||
631 | int subcount; | ||
632 | |||
633 | // Test substituting out of a blank format_map | ||
634 | std::string srcs6 = "12345"; | ||
635 | s = srcs6; | ||
636 | subcount = LLStringUtil::format(s, blank_fmt_map); | ||
637 | ensure_equals("LLStringUtil::format: Blankfmt Test1 result", s, "12345"); | ||
638 | ensure_equals("LLStringUtil::format: Blankfmt Test1 result count", 0, subcount); | ||
639 | |||
640 | // Test substituting a blank string out of a blank format_map | ||
641 | std::string srcs7; | ||
642 | s = srcs7; | ||
643 | subcount = LLStringUtil::format(s, blank_fmt_map); | ||
644 | ensure("LLStringUtil::format: Blankfmt Test2 result", s.empty()); | ||
645 | ensure_equals("LLStringUtil::format: Blankfmt Test2 result count", 0, subcount); | ||
646 | } | ||
647 | |||
648 | template<> template<> | ||
649 | void string_index_object_t::test<34>() | ||
650 | { | ||
651 | // Test that incorrect LLStringUtil::format() use does not explode. | ||
652 | LLStringUtil::format_map_t nasty_fmt_map; | ||
653 | std::string s; | ||
654 | int subcount; | ||
655 | |||
656 | nasty_fmt_map[""] = "never used"; // see, this is nasty. | ||
657 | |||
658 | // Test substituting out of a nasty format_map | ||
659 | std::string srcs6 = "12345"; | ||
660 | s = srcs6; | ||
661 | subcount = LLStringUtil::format(s, nasty_fmt_map); | ||
662 | ensure_equals("LLStringUtil::format: Nastyfmt Test1 result", s, "12345"); | ||
663 | ensure_equals("LLStringUtil::format: Nastyfmt Test1 result count", 0, subcount); | ||
664 | |||
665 | // Test substituting a blank string out of a nasty format_map | ||
666 | std::string srcs7; | ||
667 | s = srcs7; | ||
668 | subcount = LLStringUtil::format(s, nasty_fmt_map); | ||
669 | ensure("LLStringUtil::format: Nastyfmt Test2 result", s.empty()); | ||
670 | ensure_equals("LLStringUtil::format: Nastyfmt Test2 result count", 0, subcount); | ||
671 | } | ||
672 | } | ||
diff --git a/linden/indra/test/lltemplatemessagebuilder_tut.cpp b/linden/indra/test/lltemplatemessagebuilder_tut.cpp index 86b1fbd..03346cb 100644 --- a/linden/indra/test/lltemplatemessagebuilder_tut.cpp +++ b/linden/indra/test/lltemplatemessagebuilder_tut.cpp | |||
@@ -64,7 +64,9 @@ namespace tut | |||
64 | LL_VERSION_MINOR, | 64 | LL_VERSION_MINOR, |
65 | LL_VERSION_PATCH, | 65 | LL_VERSION_PATCH, |
66 | FALSE, | 66 | FALSE, |
67 | "notasharedsecret"); | 67 | "notasharedsecret", |
68 | NULL, | ||
69 | false); | ||
68 | //init_prehash_data(); | 70 | //init_prehash_data(); |
69 | init = true; | 71 | init = true; |
70 | } | 72 | } |
diff --git a/linden/indra/test/lluri_tut.cpp b/linden/indra/test/lluri_tut.cpp index 786df92..bed3fcd 100644 --- a/linden/indra/test/lluri_tut.cpp +++ b/linden/indra/test/lluri_tut.cpp | |||
@@ -253,6 +253,11 @@ namespace tut | |||
253 | LLURI::escape("http://10.0.1.4:12032/agent/god/agent-id/map/layer/?resume=http://station3.ll.com:12032/agent/203ad6df-b522-491d-ba48-4e24eb57aeff/send-postcard", unreserved + ":@!$'()*+,="), | 253 | LLURI::escape("http://10.0.1.4:12032/agent/god/agent-id/map/layer/?resume=http://station3.ll.com:12032/agent/203ad6df-b522-491d-ba48-4e24eb57aeff/send-postcard", unreserved + ":@!$'()*+,="), |
254 | "http:%2F%2F10.0.1.4:12032%2Fagent%2Fgod%2Fagent-id%2Fmap%2Flayer%2F%3Fresume=http:%2F%2Fstation3.ll.com:12032%2Fagent%2F203ad6df-b522-491d-ba48-4e24eb57aeff%2Fsend-postcard"); | 254 | "http:%2F%2F10.0.1.4:12032%2Fagent%2Fgod%2Fagent-id%2Fmap%2Flayer%2F%3Fresume=http:%2F%2Fstation3.ll.com:12032%2Fagent%2F203ad6df-b522-491d-ba48-4e24eb57aeff%2Fsend-postcard"); |
255 | // French cedilla (C with squiggle, like in the word Francais) is UTF-8 C3 A7 | 255 | // French cedilla (C with squiggle, like in the word Francais) is UTF-8 C3 A7 |
256 | |||
257 | #if LL_WINDOWS | ||
258 | #pragma warning(disable: 4309) | ||
259 | #endif | ||
260 | |||
256 | std::string cedilla; | 261 | std::string cedilla; |
257 | cedilla.push_back( (char)0xC3 ); | 262 | cedilla.push_back( (char)0xC3 ); |
258 | cedilla.push_back( (char)0xA7 ); | 263 | cedilla.push_back( (char)0xA7 ); |
diff --git a/linden/indra/test/llxfer_tut.cpp b/linden/indra/test/llxfer_tut.cpp index 5079080..670a929 100644 --- a/linden/indra/test/llxfer_tut.cpp +++ b/linden/indra/test/llxfer_tut.cpp | |||
@@ -35,8 +35,6 @@ | |||
35 | 35 | ||
36 | #include "llxfer_file.h" | 36 | #include "llxfer_file.h" |
37 | 37 | ||
38 | #include <string> | ||
39 | |||
40 | namespace tut | 38 | namespace tut |
41 | { | 39 | { |
42 | struct llxfer_data | 40 | struct llxfer_data |
@@ -49,8 +47,8 @@ namespace tut | |||
49 | template<> template<> | 47 | template<> template<> |
50 | void llxfer_object::test<1>() | 48 | void llxfer_object::test<1>() |
51 | { | 49 | { |
52 | // test that he handle an oversized filename correctly. | 50 | // test that we handle an oversized filename correctly. |
53 | LLString oversized_filename; | 51 | std::string oversized_filename; |
54 | U32 i; | 52 | U32 i; |
55 | for (i=0; i<LL_MAX_PATH*2; ++i) // create oversized filename | 53 | for (i=0; i<LL_MAX_PATH*2; ++i) // create oversized filename |
56 | { | 54 | { |
@@ -59,6 +57,6 @@ namespace tut | |||
59 | 57 | ||
60 | LLXfer_File xff(oversized_filename, FALSE, 1); | 58 | LLXfer_File xff(oversized_filename, FALSE, 1); |
61 | ensure("oversized local_filename nul-terminated", | 59 | ensure("oversized local_filename nul-terminated", |
62 | strnlen(xff.getName(), LL_MAX_PATH) < LL_MAX_PATH); | 60 | xff.getFileName().length() < LL_MAX_PATH); |
63 | } | 61 | } |
64 | } | 62 | } |
diff --git a/linden/indra/test/message_tut.cpp b/linden/indra/test/message_tut.cpp index b619d38..f3325f0 100644 --- a/linden/indra/test/message_tut.cpp +++ b/linden/indra/test/message_tut.cpp | |||
@@ -35,6 +35,8 @@ | |||
35 | #include "lltut.h" | 35 | #include "lltut.h" |
36 | 36 | ||
37 | #include "llapr.h" | 37 | #include "llapr.h" |
38 | #include "llmessageconfig.h" | ||
39 | #include "llsdserialize.h" | ||
38 | #include "llversionserver.h" | 40 | #include "llversionserver.h" |
39 | #include "message.h" | 41 | #include "message.h" |
40 | #include "message_prehash.h" | 42 | #include "message_prehash.h" |
@@ -56,10 +58,13 @@ namespace tut | |||
56 | { | 58 | { |
57 | struct LLMessageSystemTestData | 59 | struct LLMessageSystemTestData |
58 | { | 60 | { |
61 | std::string mTestConfigDir; | ||
62 | std::string mSep; | ||
63 | |||
59 | LLMessageSystemTestData() | 64 | LLMessageSystemTestData() |
60 | { | 65 | { |
61 | static bool init = false; | 66 | static bool init = false; |
62 | if(! init) | 67 | if(!init) |
63 | { | 68 | { |
64 | ll_init_apr(); | 69 | ll_init_apr(); |
65 | //init_prehash_data(); | 70 | //init_prehash_data(); |
@@ -72,7 +77,25 @@ namespace tut | |||
72 | LL_VERSION_MINOR, | 77 | LL_VERSION_MINOR, |
73 | LL_VERSION_PATCH, | 78 | LL_VERSION_PATCH, |
74 | FALSE, | 79 | FALSE, |
75 | "notasharedsecret"); | 80 | "notasharedsecret", |
81 | NULL, | ||
82 | false); | ||
83 | // generate temp dir | ||
84 | std::ostringstream ostr; | ||
85 | #if LL_WINDOWS | ||
86 | mSep = "\\"; | ||
87 | ostr << "C:" << mSep; | ||
88 | #else | ||
89 | mSep = "/"; | ||
90 | ostr << mSep << "tmp" << mSep; | ||
91 | #endif | ||
92 | LLUUID random; | ||
93 | random.generate(); | ||
94 | ostr << "message-test-" << random; | ||
95 | mTestConfigDir = ostr.str(); | ||
96 | LLFile::mkdir(mTestConfigDir); | ||
97 | writeConfigFile(LLSD()); | ||
98 | LLMessageConfig::initClass("simulator", ostr.str()); | ||
76 | } | 99 | } |
77 | 100 | ||
78 | ~LLMessageSystemTestData() | 101 | ~LLMessageSystemTestData() |
@@ -80,6 +103,28 @@ namespace tut | |||
80 | // not end_messaging_system() | 103 | // not end_messaging_system() |
81 | delete gMessageSystem; | 104 | delete gMessageSystem; |
82 | gMessageSystem = NULL; | 105 | gMessageSystem = NULL; |
106 | |||
107 | // rm contents of temp dir | ||
108 | std::ostringstream ostr; | ||
109 | ostr << mTestConfigDir << mSep << "message.xml"; | ||
110 | int rmfile = LLFile::remove(ostr.str()); | ||
111 | ensure_equals("rmfile value", rmfile, 0); | ||
112 | |||
113 | // rm temp dir | ||
114 | int rmdir = LLFile::rmdir(mTestConfigDir); | ||
115 | ensure_equals("rmdir value", rmdir, 0); | ||
116 | } | ||
117 | |||
118 | void writeConfigFile(const LLSD& config) | ||
119 | { | ||
120 | std::ostringstream ostr; | ||
121 | ostr << mTestConfigDir << mSep << "message.xml"; | ||
122 | llofstream file(ostr.str()); | ||
123 | if (file.is_open()) | ||
124 | { | ||
125 | LLSDSerialize::toPrettyXML(config, file); | ||
126 | } | ||
127 | file.close(); | ||
83 | } | 128 | } |
84 | }; | 129 | }; |
85 | 130 | ||
diff --git a/linden/indra/test/mock_http_client.cpp b/linden/indra/test/mock_http_client.cpp new file mode 100644 index 0000000..c24c469 --- /dev/null +++ b/linden/indra/test/mock_http_client.cpp | |||
@@ -0,0 +1,88 @@ | |||
1 | /** | ||
2 | * @file mock_http_client.cpp | ||
3 | * @brief Framework for testing HTTP requests | ||
4 | * | ||
5 | * $LicenseInfo:firstyear=2007&license=viewergpl$ | ||
6 | * | ||
7 | * Copyright (c) 2007-2008, Linden Research, Inc. | ||
8 | * | ||
9 | * Second Life Viewer Source Code | ||
10 | * The source code in this file ("Source Code") is provided by Linden Lab | ||
11 | * to you under the terms of the GNU General Public License, version 2.0 | ||
12 | * ("GPL"), unless you have obtained a separate licensing agreement | ||
13 | * ("Other License"), formally executed by you and Linden Lab. Terms of | ||
14 | * the GPL can be found in doc/GPL-license.txt in this distribution, or | ||
15 | * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 | ||
16 | * | ||
17 | * There are special exceptions to the terms and conditions of the GPL as | ||
18 | * it is applied to this Source Code. View the full text of the exception | ||
19 | * in the file doc/FLOSS-exception.txt in this software distribution, or | ||
20 | * online at http://secondlifegrid.net/programs/open_source/licensing/flossexception | ||
21 | * | ||
22 | * By copying, modifying or distributing this software, you acknowledge | ||
23 | * that you have read and understood your obligations described above, | ||
24 | * and agree to abide by those obligations. | ||
25 | * | ||
26 | * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO | ||
27 | * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, | ||
28 | * COMPLETENESS OR PERFORMANCE. | ||
29 | * $/LicenseInfo$ | ||
30 | */ | ||
31 | |||
32 | #include "linden_common.h" | ||
33 | #include "llsdhttpserver.h" | ||
34 | #include "lliohttpserver.h" | ||
35 | |||
36 | namespace tut | ||
37 | { | ||
38 | class SuccessNode : public LLHTTPNode | ||
39 | { | ||
40 | public: | ||
41 | void get(ResponsePtr r, const LLSD& context) const | ||
42 | { | ||
43 | LLSD result; | ||
44 | result["state"] = "complete"; | ||
45 | result["test"] = "test"; | ||
46 | r->result(result); | ||
47 | } | ||
48 | void post(ResponsePtr r, const LLSD& context, const LLSD& input) const | ||
49 | { | ||
50 | LLSD result; | ||
51 | result["state"] = "complete"; | ||
52 | result["test"] = "test"; | ||
53 | r->result(result); | ||
54 | } | ||
55 | }; | ||
56 | |||
57 | class ErrorNode : public LLHTTPNode | ||
58 | { | ||
59 | public: | ||
60 | void get(ResponsePtr r, const LLSD& context) const | ||
61 | { r->status(599, "Intentional error"); } | ||
62 | void post(ResponsePtr r, const LLSD& context, const LLSD& input) const | ||
63 | { r->status(input["status"], input["reason"]); } | ||
64 | }; | ||
65 | |||
66 | class TimeOutNode : public LLHTTPNode | ||
67 | { | ||
68 | public: | ||
69 | void get(ResponsePtr r, const LLSD& context) const | ||
70 | { | ||
71 | /* do nothing, the request will eventually time out */ | ||
72 | } | ||
73 | }; | ||
74 | |||
75 | LLSD storage; | ||
76 | |||
77 | class LLSDStorageNode : public LLHTTPNode | ||
78 | { | ||
79 | public: | ||
80 | LLSD get() const{ return storage; } | ||
81 | LLSD put(const LLSD& value) const{ storage = value; return LLSD(); } | ||
82 | }; | ||
83 | |||
84 | LLHTTPRegistration<LLSDStorageNode> gStorageNode("/test/storage"); | ||
85 | LLHTTPRegistration<SuccessNode> gSuccessNode("/test/success"); | ||
86 | LLHTTPRegistration<ErrorNode> gErrorNode("/test/error"); | ||
87 | LLHTTPRegistration<TimeOutNode> gTimeOutNode("/test/timeout"); | ||
88 | } | ||
diff --git a/linden/indra/test/mock_http_client.h b/linden/indra/test/mock_http_client.h new file mode 100644 index 0000000..c3f1ade --- /dev/null +++ b/linden/indra/test/mock_http_client.h | |||
@@ -0,0 +1,196 @@ | |||
1 | /** | ||
2 | * @file mock_http_client.cpp | ||
3 | * @brief Framework for testing HTTP requests | ||
4 | * | ||
5 | * $LicenseInfo:firstyear=2007&license=viewergpl$ | ||
6 | * | ||
7 | * Copyright (c) 2007-2008, Linden Research, Inc. | ||
8 | * | ||
9 | * Second Life Viewer Source Code | ||
10 | * The source code in this file ("Source Code") is provided by Linden Lab | ||
11 | * to you under the terms of the GNU General Public License, version 2.0 | ||
12 | * ("GPL"), unless you have obtained a separate licensing agreement | ||
13 | * ("Other License"), formally executed by you and Linden Lab. Terms of | ||
14 | * the GPL can be found in doc/GPL-license.txt in this distribution, or | ||
15 | * online at http://secondlifegrid.net/programs/open_source/licensing/gplv2 | ||
16 | * | ||
17 | * There are special exceptions to the terms and conditions of the GPL as | ||
18 | * it is applied to this Source Code. View the full text of the exception | ||
19 | * in the file doc/FLOSS-exception.txt in this software distribution, or | ||
20 | * online at http://secondlifegrid.net/programs/open_source/licensing/flossexception | ||
21 | * | ||
22 | * By copying, modifying or distributing this software, you acknowledge | ||
23 | * that you have read and understood your obligations described above, | ||
24 | * and agree to abide by those obligations. | ||
25 | * | ||
26 | * ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO | ||
27 | * WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, | ||
28 | * COMPLETENESS OR PERFORMANCE. | ||
29 | * $/LicenseInfo$ | ||
30 | */ | ||
31 | |||
32 | #include "llsdhttpserver.h" | ||
33 | #include "lliohttpserver.h" | ||
34 | #include "llhttpclient.h" | ||
35 | #include "llformat.h" | ||
36 | #include "llpipeutil.h" | ||
37 | #include "llpumpio.h" | ||
38 | |||
39 | namespace tut | ||
40 | { | ||
41 | struct MockHttpClient | ||
42 | { | ||
43 | public: | ||
44 | MockHttpClient() | ||
45 | { | ||
46 | apr_pool_create(&mPool, NULL); | ||
47 | mServerPump = new LLPumpIO(mPool); | ||
48 | mClientPump = new LLPumpIO(mPool); | ||
49 | |||
50 | LLHTTPClient::setPump(*mClientPump); | ||
51 | } | ||
52 | |||
53 | ~MockHttpClient() | ||
54 | { | ||
55 | delete mServerPump; | ||
56 | delete mClientPump; | ||
57 | apr_pool_destroy(mPool); | ||
58 | } | ||
59 | |||
60 | void setupTheServer() | ||
61 | { | ||
62 | LLHTTPNode& root = LLIOHTTPServer::create(mPool, *mServerPump, 8888); | ||
63 | |||
64 | LLHTTPStandardServices::useServices(); | ||
65 | LLHTTPRegistrar::buildAllServices(root); | ||
66 | } | ||
67 | |||
68 | void runThePump(float timeout = 100.0f) | ||
69 | { | ||
70 | LLTimer timer; | ||
71 | timer.setTimerExpirySec(timeout); | ||
72 | |||
73 | while(!mSawCompleted && !timer.hasExpired()) | ||
74 | { | ||
75 | if (mServerPump) | ||
76 | { | ||
77 | mServerPump->pump(); | ||
78 | mServerPump->callback(); | ||
79 | } | ||
80 | if (mClientPump) | ||
81 | { | ||
82 | mClientPump->pump(); | ||
83 | mClientPump->callback(); | ||
84 | } | ||
85 | } | ||
86 | } | ||
87 | |||
88 | void killServer() | ||
89 | { | ||
90 | delete mServerPump; | ||
91 | mServerPump = NULL; | ||
92 | } | ||
93 | |||
94 | private: | ||
95 | apr_pool_t* mPool; | ||
96 | LLPumpIO* mServerPump; | ||
97 | LLPumpIO* mClientPump; | ||
98 | |||
99 | |||
100 | protected: | ||
101 | void ensureStatusOK() | ||
102 | { | ||
103 | if (mSawError) | ||
104 | { | ||
105 | std::string msg = | ||
106 | llformat("error() called when not expected, status %d", | ||
107 | mStatus); | ||
108 | fail(msg); | ||
109 | } | ||
110 | } | ||
111 | |||
112 | void ensureStatusError() | ||
113 | { | ||
114 | if (!mSawError) | ||
115 | { | ||
116 | fail("error() wasn't called"); | ||
117 | } | ||
118 | } | ||
119 | |||
120 | LLSD getResult() | ||
121 | { | ||
122 | return mResult; | ||
123 | } | ||
124 | |||
125 | protected: | ||
126 | bool mSawError; | ||
127 | U32 mStatus; | ||
128 | std::string mReason; | ||
129 | bool mSawCompleted; | ||
130 | LLSD mResult; | ||
131 | bool mResultDeleted; | ||
132 | |||
133 | class Result : public LLHTTPClient::Responder | ||
134 | { | ||
135 | protected: | ||
136 | Result(MockHttpClient& client) | ||
137 | : mClient(client) | ||
138 | { | ||
139 | } | ||
140 | |||
141 | public: | ||
142 | static boost::intrusive_ptr<Result> build(MockHttpClient& client) | ||
143 | { | ||
144 | return boost::intrusive_ptr<Result>(new Result(client)); | ||
145 | } | ||
146 | |||
147 | ~Result() | ||
148 | { | ||
149 | mClient.mResultDeleted = true; | ||
150 | } | ||
151 | |||
152 | virtual void error(U32 status, const std::string& reason) | ||
153 | { | ||
154 | mClient.mSawError = true; | ||
155 | mClient.mStatus = status; | ||
156 | mClient.mReason = reason; | ||
157 | } | ||
158 | |||
159 | virtual void result(const LLSD& content) | ||
160 | { | ||
161 | mClient.mResult = content; | ||
162 | } | ||
163 | |||
164 | virtual void completed( | ||
165 | U32 status, const std::string& reason, | ||
166 | const LLSD& content) | ||
167 | { | ||
168 | LLHTTPClient::Responder::completed(status, reason, content); | ||
169 | |||
170 | mClient.mSawCompleted = true; | ||
171 | } | ||
172 | |||
173 | private: | ||
174 | MockHttpClient& mClient; | ||
175 | }; | ||
176 | |||
177 | friend class Result; | ||
178 | |||
179 | protected: | ||
180 | |||
181 | void reset() | ||
182 | { | ||
183 | mSawError = false; | ||
184 | mStatus = 0; | ||
185 | mSawCompleted = false; | ||
186 | mResult.clear(); | ||
187 | mResultDeleted = false; | ||
188 | } | ||
189 | |||
190 | LLHTTPClient::ResponderPtr newResult() | ||
191 | { | ||
192 | reset(); | ||
193 | return Result::build(*this); | ||
194 | } | ||
195 | }; | ||
196 | } | ||
diff --git a/linden/indra/test/test.cpp b/linden/indra/test/test.cpp index df4b037..91b1b22 100644 --- a/linden/indra/test/test.cpp +++ b/linden/indra/test/test.cpp | |||
@@ -43,8 +43,8 @@ | |||
43 | #include "llerrorcontrol.h" | 43 | #include "llerrorcontrol.h" |
44 | #include "lltut.h" | 44 | #include "lltut.h" |
45 | 45 | ||
46 | #include <apr-1/apr_pools.h> | 46 | #include "apr_pools.h" |
47 | #include <apr-1/apr_getopt.h> | 47 | #include "apr_getopt.h" |
48 | 48 | ||
49 | // the CTYPE_WORKAROUND is needed for linux dev stations that don't | 49 | // the CTYPE_WORKAROUND is needed for linux dev stations that don't |
50 | // have the broken libc6 packages needed by our out-of-date static | 50 | // have the broken libc6 packages needed by our out-of-date static |
@@ -62,13 +62,14 @@ namespace tut | |||
62 | class LLTestCallback : public tut::callback | 62 | class LLTestCallback : public tut::callback |
63 | { | 63 | { |
64 | public: | 64 | public: |
65 | LLTestCallback(bool verbose_mode) : | 65 | LLTestCallback(bool verbose_mode, std::ostream *stream) : |
66 | mVerboseMode(verbose_mode), | 66 | mVerboseMode(verbose_mode), |
67 | mTotalTests(0), | 67 | mTotalTests(0), |
68 | mPassedTests(0), | 68 | mPassedTests(0), |
69 | mFailedTests(0), | 69 | mFailedTests(0), |
70 | mSkippedTests(0), | 70 | mSkippedTests(0), |
71 | mSkipedFailTests(0) | 71 | mSkippedFailTests(0), |
72 | mStream(stream) | ||
72 | { | 73 | { |
73 | } | 74 | } |
74 | 75 | ||
@@ -109,7 +110,7 @@ public: | |||
109 | out << "skipped"; | 110 | out << "skipped"; |
110 | break; | 111 | break; |
111 | case tut::test_result::skip_fail: | 112 | case tut::test_result::skip_fail: |
112 | ++mSkipedFailTests; | 113 | ++mSkippedFailTests; |
113 | out << "skipped known failure"; | 114 | out << "skipped known failure"; |
114 | break; | 115 | break; |
115 | default: | 116 | default: |
@@ -122,34 +123,57 @@ public: | |||
122 | { | 123 | { |
123 | out << ": '" << tr.message << "'"; | 124 | out << ": '" << tr.message << "'"; |
124 | } | 125 | } |
126 | if (mStream) | ||
127 | { | ||
128 | *mStream << out.str() << std::endl; | ||
129 | } | ||
130 | |||
125 | std::cout << out.str() << std::endl; | 131 | std::cout << out.str() << std::endl; |
126 | } | 132 | } |
127 | } | 133 | } |
128 | 134 | ||
129 | void run_completed() | 135 | void run_completed() |
130 | { | 136 | { |
131 | std::cout << std::endl; | 137 | if (mStream) |
132 | std::cout << "Total Tests: " << mTotalTests << std::endl; | 138 | { |
133 | std::cout << "Passed Tests: " << mPassedTests << std::endl; | 139 | run_completed_(*mStream); |
140 | } | ||
141 | run_completed_(std::cout); | ||
142 | |||
143 | if (mFailedTests > 0) | ||
144 | { | ||
145 | exit(1); | ||
146 | } | ||
147 | } | ||
148 | |||
149 | private: | ||
150 | void run_completed_(std::ostream &stream) | ||
151 | { | ||
152 | stream << std::endl; | ||
153 | stream << "Total Tests: " << mTotalTests << std::endl; | ||
154 | stream << "Passed Tests: " << mPassedTests << std::endl; | ||
155 | |||
156 | stream << std::endl; | ||
157 | stream << "Total Tests: " << mTotalTests << std::endl; | ||
158 | stream << "Passed Tests: " << mPassedTests << std::endl; | ||
134 | 159 | ||
135 | if (mSkippedTests > 0) | 160 | if (mSkippedTests > 0) |
136 | { | 161 | { |
137 | std::cout << "Skipped Tests: " << mSkippedTests << std::endl; | 162 | stream << "Skipped Tests: " << mSkippedTests << std::endl; |
138 | } | 163 | } |
139 | 164 | ||
140 | if (mSkipedFailTests > 0) | 165 | if (mSkippedFailTests > 0) |
141 | { | 166 | { |
142 | std::cout << "Skipped known failures: " << mSkipedFailTests | 167 | stream << "Skipped known failures: " << mSkippedFailTests |
143 | << std::endl; | 168 | << std::endl; |
144 | } | 169 | } |
145 | 170 | ||
146 | if(mFailedTests > 0) | 171 | if(mFailedTests > 0) |
147 | { | 172 | { |
148 | std::cout << "*********************************" << std::endl; | 173 | stream << "*********************************" << std::endl; |
149 | std::cout << "Failed Tests: " << mFailedTests << std::endl; | 174 | stream << "Failed Tests: " << mFailedTests << std::endl; |
150 | std::cout << "Please report or fix the problem." << std::endl; | 175 | stream << "Please report or fix the problem." << std::endl; |
151 | std::cout << "*********************************" << std::endl; | 176 | stream << "*********************************" << std::endl; |
152 | exit(1); | ||
153 | } | 177 | } |
154 | } | 178 | } |
155 | 179 | ||
@@ -159,7 +183,8 @@ protected: | |||
159 | int mPassedTests; | 183 | int mPassedTests; |
160 | int mFailedTests; | 184 | int mFailedTests; |
161 | int mSkippedTests; | 185 | int mSkippedTests; |
162 | int mSkipedFailTests; | 186 | int mSkippedFailTests; |
187 | std::ostream *mStream; | ||
163 | }; | 188 | }; |
164 | 189 | ||
165 | static const apr_getopt_option_t TEST_CL_OPTIONS[] = | 190 | static const apr_getopt_option_t TEST_CL_OPTIONS[] = |
@@ -168,7 +193,9 @@ static const apr_getopt_option_t TEST_CL_OPTIONS[] = | |||
168 | {"list", 'l', 0, "List available test groups."}, | 193 | {"list", 'l', 0, "List available test groups."}, |
169 | {"verbose", 'v', 0, "Verbose output."}, | 194 | {"verbose", 'v', 0, "Verbose output."}, |
170 | {"group", 'g', 1, "Run test group specified by option argument."}, | 195 | {"group", 'g', 1, "Run test group specified by option argument."}, |
196 | {"output", 'o', 1, "Write output to the named file."}, | ||
171 | {"skip", 's', 1, "Skip test number specified by option argument. Only works when a specific group is being tested"}, | 197 | {"skip", 's', 1, "Skip test number specified by option argument. Only works when a specific group is being tested"}, |
198 | {"touch", 't', 1, "Touch the given file if all tests succeed"}, | ||
172 | {"wait", 'w', 0, "Wait for input before exit."}, | 199 | {"wait", 'w', 0, "Wait for input before exit."}, |
173 | {"debug", 'd', 0, "Emit full debug logs."}, | 200 | {"debug", 'd', 0, "Emit full debug logs."}, |
174 | {0, 0, 0, 0} | 201 | {0, 0, 0, 0} |
@@ -256,6 +283,9 @@ int main(int argc, char **argv) | |||
256 | apr_status_t apr_err; | 283 | apr_status_t apr_err; |
257 | const char* opt_arg = NULL; | 284 | const char* opt_arg = NULL; |
258 | int opt_id = 0; | 285 | int opt_id = 0; |
286 | std::ofstream *output = NULL; | ||
287 | const char *touch = NULL; | ||
288 | |||
259 | while(true) | 289 | while(true) |
260 | { | 290 | { |
261 | apr_err = apr_getopt_long(os, TEST_CL_OPTIONS, &opt_id, &opt_arg); | 291 | apr_err = apr_getopt_long(os, TEST_CL_OPTIONS, &opt_id, &opt_arg); |
@@ -285,6 +315,13 @@ int main(int argc, char **argv) | |||
285 | case 'v': | 315 | case 'v': |
286 | verbose_mode = true; | 316 | verbose_mode = true; |
287 | break; | 317 | break; |
318 | case 'o': | ||
319 | output = new std::ofstream; | ||
320 | output->open(opt_arg); | ||
321 | break; | ||
322 | case 't': | ||
323 | touch = opt_arg; | ||
324 | break; | ||
288 | case 'w': | 325 | case 'w': |
289 | wait_at_exit = true; | 326 | wait_at_exit = true; |
290 | break; | 327 | break; |
@@ -301,7 +338,7 @@ int main(int argc, char **argv) | |||
301 | } | 338 | } |
302 | 339 | ||
303 | // run the tests | 340 | // run the tests |
304 | LLTestCallback callback(verbose_mode); | 341 | LLTestCallback callback(verbose_mode, output); |
305 | tut::runner.get().set_callback(&callback); | 342 | tut::runner.get().set_callback(&callback); |
306 | 343 | ||
307 | if(test_group.empty()) | 344 | if(test_group.empty()) |
@@ -319,6 +356,20 @@ int main(int argc, char **argv) | |||
319 | std::cin.get(); | 356 | std::cin.get(); |
320 | } | 357 | } |
321 | 358 | ||
359 | if (output) | ||
360 | { | ||
361 | output->close(); | ||
362 | delete output; | ||
363 | } | ||
364 | |||
365 | if (touch) | ||
366 | { | ||
367 | std::ofstream s; | ||
368 | s.open(touch); | ||
369 | s << "ok" << std::endl; | ||
370 | s.close(); | ||
371 | } | ||
372 | |||
322 | apr_terminate(); | 373 | apr_terminate(); |
323 | return 0; | 374 | return 0; |
324 | } | 375 | } |
diff --git a/linden/indra/test/test.vcproj b/linden/indra/test/test.vcproj deleted file mode 100644 index f720d9a..0000000 --- a/linden/indra/test/test.vcproj +++ /dev/null | |||
@@ -1,344 +0,0 @@ | |||
1 | <?xml version="1.0" encoding="Windows-1252"?> | ||
2 | <VisualStudioProject | ||
3 | ProjectType="Visual C++" | ||
4 | Version="7.10" | ||
5 | Name="test" | ||
6 | ProjectGUID="{BBAA6588-CA96-4A87-A988-B02270B8D02B}" | ||
7 | RootNamespace="test" | ||
8 | Keyword="Win32Proj"> | ||
9 | <Platforms> | ||
10 | <Platform | ||
11 | Name="Win32"/> | ||
12 | </Platforms> | ||
13 | <Configurations> | ||
14 | <Configuration | ||
15 | Name="Debug|Win32" | ||
16 | OutputDirectory="Debug" | ||
17 | IntermediateDirectory="Debug" | ||
18 | ConfigurationType="1" | ||
19 | CharacterSet="2"> | ||
20 | <Tool | ||
21 | Name="VCCLCompilerTool" | ||
22 | Optimization="0" | ||
23 | AdditionalIncludeDirectories="..\;..\llcharacter;..\llcommon;..\lldatabase;..\llinventory;..\llmath;..\llmessage;..\llprimitive;..\llxml;"..\..\libraries\i686-win32\include";..\..\libraries\include" | ||
24 | PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;LL_WINDOWS;LL_DEBUG" | ||
25 | MinimalRebuild="FALSE" | ||
26 | BasicRuntimeChecks="3" | ||
27 | RuntimeLibrary="1" | ||
28 | RuntimeTypeInfo="TRUE" | ||
29 | UsePrecompiledHeader="0" | ||
30 | WarningLevel="3" | ||
31 | Detect64BitPortabilityProblems="FALSE" | ||
32 | DebugInformationFormat="3"/> | ||
33 | <Tool | ||
34 | Name="VCCustomBuildTool"/> | ||
35 | <Tool | ||
36 | Name="VCLinkerTool" | ||
37 | AdditionalOptions="/FORCE:MULTIPLE" | ||
38 | AdditionalDependencies="advapi32.lib apr-1.lib aprutil-1.lib comdlg32.lib dinput8.lib dsound.lib dxerr8.lib dxguid.lib freetype.lib gdi32.lib glu32.lib jpeglib_6b.lib kernel32.lib libboost_regex-vc71-mt-sgd-1_34_1.lib libcurld.lib libeay32.lib libexpatMT.lib llcommon.lib llphysics.lib llprimitive.lib llvfs.lib llxml.lib lscript_library.lib mswsock.lib netapi32.lib odbc32.lib odbccp32.lib ole32.lib oleaut32.lib opengl32.lib psapi.lib shell32.lib ssleay32.lib user32.lib Vfw32.lib winmm.lib winspool.lib ws2_32.lib xmlrpcepi.lib zlib.lib" | ||
39 | OutputFile="$(OutDir)/test.exe" | ||
40 | LinkIncremental="2" | ||
41 | AdditionalLibraryDirectories=""../lib_$(ConfigurationName)/i686-win32";"../../libraries/i686-win32/lib_debug"" | ||
42 | IgnoreDefaultLibraryNames="libcmt.lib" | ||
43 | GenerateDebugInformation="TRUE" | ||
44 | ProgramDatabaseFile="$(OutDir)/test.pdb" | ||
45 | SubSystem="1" | ||
46 | TargetMachine="1"/> | ||
47 | <Tool | ||
48 | Name="VCMIDLTool"/> | ||
49 | <Tool | ||
50 | Name="VCPostBuildEventTool"/> | ||
51 | <Tool | ||
52 | Name="VCPreBuildEventTool"/> | ||
53 | <Tool | ||
54 | Name="VCPreLinkEventTool"/> | ||
55 | <Tool | ||
56 | Name="VCResourceCompilerTool"/> | ||
57 | <Tool | ||
58 | Name="VCWebServiceProxyGeneratorTool"/> | ||
59 | <Tool | ||
60 | Name="VCXMLDataGeneratorTool"/> | ||
61 | <Tool | ||
62 | Name="VCWebDeploymentTool"/> | ||
63 | <Tool | ||
64 | Name="VCManagedWrapperGeneratorTool"/> | ||
65 | <Tool | ||
66 | Name="VCAuxiliaryManagedWrapperGeneratorTool"/> | ||
67 | </Configuration> | ||
68 | <Configuration | ||
69 | Name="Release|Win32" | ||
70 | OutputDirectory="Release" | ||
71 | IntermediateDirectory="Release" | ||
72 | ConfigurationType="1" | ||
73 | CharacterSet="2"> | ||
74 | <Tool | ||
75 | Name="VCCLCompilerTool" | ||
76 | Optimization="0" | ||
77 | AdditionalIncludeDirectories="..\;..\llcharacter;..\llcommon;..\lldatabase;..\llinventory;..\llmath;..\llmessage;..\llprimitive;..\llxml;"..\..\libraries\i686-win32\include";..\..\libraries\include" | ||
78 | PreprocessorDefinitions="WIN32;__WIN32;NDEBUG;_WINDOWS;LL_WINDOWS;LL_RELEASE;APR_DECLARE_STATIC;LL_HTTPD=1" | ||
79 | MinimalRebuild="FALSE" | ||
80 | BasicRuntimeChecks="3" | ||
81 | RuntimeLibrary="1" | ||
82 | ForceConformanceInForLoopScope="TRUE" | ||
83 | RuntimeTypeInfo="TRUE" | ||
84 | UsePrecompiledHeader="0" | ||
85 | WarningLevel="3" | ||
86 | Detect64BitPortabilityProblems="FALSE" | ||
87 | DebugInformationFormat="3"/> | ||
88 | <Tool | ||
89 | Name="VCCustomBuildTool"/> | ||
90 | <Tool | ||
91 | Name="VCLinkerTool" | ||
92 | AdditionalOptions="/FORCE:MULTIPLE" | ||
93 | AdditionalDependencies="advapi32.lib apr-1.lib aprutil-1.lib comdlg32.lib dinput8.lib dsound.lib dxerr8.lib dxguid.lib freetype.lib gdi32.lib glu32.lib jpeglib_6b.lib kernel32.lib libboost_regex-vc71-mt-s-1_34_1.lib libcurl.lib libeay32.lib libexpatMT.lib llcommon.lib llphysics.lib llprimitive.lib llvfs.lib llxml.lib lscript_library.lib mswsock.lib netapi32.lib odbc32.lib odbccp32.lib ole32.lib oleaut32.lib opengl32.lib psapi.lib shell32.lib ssleay32.lib user32.lib Vfw32.lib winmm.lib winspool.lib ws2_32.lib xmlrpcepi.lib zlib.lib" | ||
94 | OutputFile="$(OutDir)/test.exe" | ||
95 | LinkIncremental="2" | ||
96 | AdditionalLibraryDirectories=""../lib_$(ConfigurationName)/i686-win32";"../../libraries/i686-win32/lib_release"" | ||
97 | IgnoreDefaultLibraryNames="libcmt.lib" | ||
98 | GenerateDebugInformation="TRUE" | ||
99 | ProgramDatabaseFile="$(OutDir)/test.pdb" | ||
100 | SubSystem="1" | ||
101 | TargetMachine="1"/> | ||
102 | <Tool | ||
103 | Name="VCMIDLTool"/> | ||
104 | <Tool | ||
105 | Name="VCPostBuildEventTool" | ||
106 | CommandLine="$(TargetPath)"/> | ||
107 | <Tool | ||
108 | Name="VCPreBuildEventTool"/> | ||
109 | <Tool | ||
110 | Name="VCPreLinkEventTool"/> | ||
111 | <Tool | ||
112 | Name="VCResourceCompilerTool"/> | ||
113 | <Tool | ||
114 | Name="VCWebServiceProxyGeneratorTool"/> | ||
115 | <Tool | ||
116 | Name="VCXMLDataGeneratorTool"/> | ||
117 | <Tool | ||
118 | Name="VCWebDeploymentTool"/> | ||
119 | <Tool | ||
120 | Name="VCManagedWrapperGeneratorTool"/> | ||
121 | <Tool | ||
122 | Name="VCAuxiliaryManagedWrapperGeneratorTool"/> | ||
123 | </Configuration> | ||
124 | <Configuration | ||
125 | Name="ReleaseNoOpt|Win32" | ||
126 | OutputDirectory="$(ConfigurationName)" | ||
127 | IntermediateDirectory="$(ConfigurationName)" | ||
128 | ConfigurationType="1" | ||
129 | CharacterSet="2"> | ||
130 | <Tool | ||
131 | Name="VCCLCompilerTool" | ||
132 | Optimization="0" | ||
133 | AdditionalIncludeDirectories="..\;..\llcharacter;..\llcommon;..\lldatabase;..\llinventory;..\llmath;..\llmessage;..\llprimitive;..\llxml;"..\..\libraries\i686-win32\include";..\..\libraries\include" | ||
134 | PreprocessorDefinitions="WIN32;__WIN32;NDEBUG;_WINDOWS;LL_WINDOWS;LL_RELEASE;APR_DECLARE_STATIC;LL_HTTPD=1" | ||
135 | MinimalRebuild="FALSE" | ||
136 | BasicRuntimeChecks="3" | ||
137 | RuntimeLibrary="1" | ||
138 | ForceConformanceInForLoopScope="TRUE" | ||
139 | RuntimeTypeInfo="TRUE" | ||
140 | UsePrecompiledHeader="0" | ||
141 | WarningLevel="3" | ||
142 | Detect64BitPortabilityProblems="FALSE" | ||
143 | DebugInformationFormat="3"/> | ||
144 | <Tool | ||
145 | Name="VCCustomBuildTool"/> | ||
146 | <Tool | ||
147 | Name="VCLinkerTool" | ||
148 | AdditionalDependencies="advapi32.lib apr-1.lib aprutil-1.lib comdlg32.lib gdi32.lib jpeglib_6b.lib kernel32.lib libboost_regex-vc71-mt-s-1_34_1.lib libcurl.lib libeay32.lib libexpatMT.lib mswsock.lib netapi32.lib odbc32.lib odbccp32.lib ole32.lib oleaut32.lib psapi.lib shell32.lib ssleay32.lib user32.lib winmm.lib winspool.lib ws2_32.lib xmlrpcepi.lib zlib.lib" | ||
149 | OutputFile="$(OutDir)/test.exe" | ||
150 | LinkIncremental="2" | ||
151 | AdditionalLibraryDirectories=""../lib_$(ConfigurationName)/i686-win32";"../../libraries/i686-win32/lib_release"" | ||
152 | IgnoreDefaultLibraryNames="libcmt.lib" | ||
153 | GenerateDebugInformation="TRUE" | ||
154 | ProgramDatabaseFile="$(OutDir)/test.pdb" | ||
155 | SubSystem="1" | ||
156 | TargetMachine="1"/> | ||
157 | <Tool | ||
158 | Name="VCMIDLTool"/> | ||
159 | <Tool | ||
160 | Name="VCPostBuildEventTool" | ||
161 | CommandLine=""$(TargetPath)""/> | ||
162 | <Tool | ||
163 | Name="VCPreBuildEventTool"/> | ||
164 | <Tool | ||
165 | Name="VCPreLinkEventTool"/> | ||
166 | <Tool | ||
167 | Name="VCResourceCompilerTool"/> | ||
168 | <Tool | ||
169 | Name="VCWebServiceProxyGeneratorTool"/> | ||
170 | <Tool | ||
171 | Name="VCXMLDataGeneratorTool"/> | ||
172 | <Tool | ||
173 | Name="VCWebDeploymentTool"/> | ||
174 | <Tool | ||
175 | Name="VCManagedWrapperGeneratorTool"/> | ||
176 | <Tool | ||
177 | Name="VCAuxiliaryManagedWrapperGeneratorTool"/> | ||
178 | </Configuration> | ||
179 | </Configurations> | ||
180 | <References> | ||
181 | </References> | ||
182 | <Files> | ||
183 | <Filter | ||
184 | Name="Source Files" | ||
185 | Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx" | ||
186 | UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"> | ||
187 | <File | ||
188 | RelativePath=".\common.cpp"> | ||
189 | </File> | ||
190 | <File | ||
191 | RelativePath=".\inventory.cpp"> | ||
192 | </File> | ||
193 | <File | ||
194 | RelativePath=".\io.cpp"> | ||
195 | </File> | ||
196 | <File | ||
197 | RelativePath=".\llapp_tut.cpp"> | ||
198 | </File> | ||
199 | <File | ||
200 | RelativePath=".\llbase64_tut.cpp"> | ||
201 | </File> | ||
202 | <File | ||
203 | RelativePath=".\llbuffer_tut.cpp"> | ||
204 | </File> | ||
205 | |||
206 | <File | ||
207 | RelativePath=".\lldate_tut.cpp"> | ||
208 | </File> | ||
209 | <File | ||
210 | RelativePath=".\llerror_tut.cpp"> | ||
211 | </File> | ||
212 | <File | ||
213 | RelativePath=".\llhost_tut.cpp"> | ||
214 | </File> | ||
215 | <File | ||
216 | RelativePath=".\llhttpclient_tut.cpp"> | ||
217 | </File> | ||
218 | <File | ||
219 | RelativePath=".\lljoint_tut.cpp"> | ||
220 | </File> | ||
221 | <File | ||
222 | RelativePath=".\llmessageconfig_tut.cpp"> | ||
223 | </File> | ||
224 | <File | ||
225 | RelativePath=".\llmime_tut.cpp"> | ||
226 | </File> | ||
227 | <File | ||
228 | RelativePath=".\llnamevalue_tut.cpp"> | ||
229 | </File> | ||
230 | <File | ||
231 | RelativePath=".\llpermissions_tut.cpp"> | ||
232 | </File> | ||
233 | <File | ||
234 | RelativePath=".\llpipeutil.cpp"> | ||
235 | </File> | ||
236 | <File | ||
237 | RelativePath=".\llquaternion_tut.cpp"> | ||
238 | </File> | ||
239 | <File | ||
240 | RelativePath=".\llrandom_tut.cpp"> | ||
241 | </File> | ||
242 | <File | ||
243 | RelativePath=".\llsaleinfo_tut.cpp"> | ||
244 | </File> | ||
245 | <File | ||
246 | RelativePath=".\llsd_new_tut.cpp"> | ||
247 | </File> | ||
248 | <File | ||
249 | RelativePath=".\llsdmessagebuilder_tut.cpp"> | ||
250 | </File> | ||
251 | <File | ||
252 | RelativePath=".\llsdmessagereader_tut.cpp"> | ||
253 | </File> | ||
254 | <File | ||
255 | RelativePath=".\llsdserialize_tut.cpp"> | ||
256 | </File> | ||
257 | <File | ||
258 | RelativePath=".\llsdtraits.h"> | ||
259 | </File> | ||
260 | <File | ||
261 | RelativePath=".\llsdutil_tut.cpp"> | ||
262 | </File> | ||
263 | <File | ||
264 | RelativePath=".\llservicebuilder_tut.cpp"> | ||
265 | </File> | ||
266 | <File | ||
267 | RelativePath=".\llstreamtools_tut.cpp"> | ||
268 | </File> | ||
269 | <File | ||
270 | RelativePath=".\lltemplatemessagebuilder_tut.cpp"> | ||
271 | </File> | ||
272 | <File | ||
273 | RelativePath=".\lltiming_tut.cpp"> | ||
274 | </File> | ||
275 | <File | ||
276 | RelativePath=".\lltut.cpp"> | ||
277 | </File> | ||
278 | <File | ||
279 | RelativePath=".\lluri_tut.cpp"> | ||
280 | </File> | ||
281 | <File | ||
282 | RelativePath=".\lluserrelations_tut.cpp"> | ||
283 | </File> | ||
284 | <File | ||
285 | RelativePath=".\lluuidhashmap_tut.cpp"> | ||
286 | </File> | ||
287 | |||
288 | <File | ||
289 | RelativePath=".\math.cpp"> | ||
290 | </File> | ||
291 | <File | ||
292 | RelativePath=".\prim_linkability_tut.cpp"> | ||
293 | </File> | ||
294 | <File | ||
295 | RelativePath=".\reflection_tut.cpp"> | ||
296 | </File> | ||
297 | <File | ||
298 | RelativePath=".\test.cpp"> | ||
299 | </File> | ||
300 | <File | ||
301 | RelativePath=".\v2math_tut.cpp"> | ||
302 | </File> | ||
303 | <File | ||
304 | RelativePath=".\v3color_tut.cpp"> | ||
305 | </File> | ||
306 | <File | ||
307 | RelativePath=".\v3dmath_tut.cpp"> | ||
308 | </File> | ||
309 | <File | ||
310 | RelativePath=".\v3math_tut.cpp"> | ||
311 | </File> | ||
312 | <File | ||
313 | RelativePath=".\v4color_tut.cpp"> | ||
314 | </File> | ||
315 | <File | ||
316 | RelativePath=".\v4coloru_tut.cpp"> | ||
317 | </File> | ||
318 | <File | ||
319 | RelativePath=".\v4math_tut.cpp"> | ||
320 | </File> | ||
321 | <File | ||
322 | RelativePath=".\xform_tut.cpp"> | ||
323 | </File> | ||
324 | </Filter> | ||
325 | <Filter | ||
326 | Name="Header Files" | ||
327 | Filter="h;hpp;hxx;hm;inl;inc;xsd" | ||
328 | UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"> | ||
329 | <File | ||
330 | RelativePath=".\llpipeutil.h"> | ||
331 | </File> | ||
332 | <File | ||
333 | RelativePath=".\lltut.h"> | ||
334 | </File> | ||
335 | </Filter> | ||
336 | <Filter | ||
337 | Name="Resource Files" | ||
338 | Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx" | ||
339 | UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"> | ||
340 | </Filter> | ||
341 | </Files> | ||
342 | <Globals> | ||
343 | </Globals> | ||
344 | </VisualStudioProject> | ||
diff --git a/linden/indra/test/test_llmanifest.py b/linden/indra/test/test_llmanifest.py index 1ad5116..764e421 100644 --- a/linden/indra/test/test_llmanifest.py +++ b/linden/indra/test/test_llmanifest.py | |||
@@ -56,7 +56,8 @@ class Demo_ArchManifest(llmanifest.LLManifest): | |||
56 | class TestLLManifest(unittest.TestCase): | 56 | class TestLLManifest(unittest.TestCase): |
57 | mode='static' | 57 | mode='static' |
58 | def setUp(self): | 58 | def setUp(self): |
59 | self.m = llmanifest.LLManifest("src", "dst", {'grid':'default', 'platform':'darwin', 'version':(1,2,3,4)}) | 59 | self.m = llmanifest.LLManifest({'source':'src', 'dest':'dst', 'grid':'default', 'platform':'darwin', 'version':(1,2,3,4), |
60 | 'artwork':'art', 'build':'build'}) | ||
60 | 61 | ||
61 | def testproperwindowspath(self): | 62 | def testproperwindowspath(self): |
62 | self.assertEqual(llmanifest.proper_windows_path("C:\Program Files", "cygwin"),"/cygdrive/c/Program Files") | 63 | self.assertEqual(llmanifest.proper_windows_path("C:\Program Files", "cygwin"),"/cygdrive/c/Program Files") |
diff --git a/linden/indra/test/test_vc8.vcproj b/linden/indra/test/test_vc8.vcproj deleted file mode 100644 index 6d47de8..0000000 --- a/linden/indra/test/test_vc8.vcproj +++ /dev/null | |||
@@ -1,455 +0,0 @@ | |||
1 | <?xml version="1.0" encoding="Windows-1252"?> | ||
2 | <VisualStudioProject | ||
3 | ProjectType="Visual C++" | ||
4 | Version="8.00" | ||
5 | Name="test" | ||
6 | ProjectGUID="{BBAA6588-CA96-4A87-A988-B02270B8D02B}" | ||
7 | RootNamespace="test" | ||
8 | Keyword="Win32Proj" | ||
9 | > | ||
10 | <Platforms> | ||
11 | <Platform | ||
12 | Name="Win32" | ||
13 | /> | ||
14 | </Platforms> | ||
15 | <ToolFiles> | ||
16 | </ToolFiles> | ||
17 | <Configurations> | ||
18 | <Configuration | ||
19 | Name="Debug|Win32" | ||
20 | OutputDirectory="Debug" | ||
21 | IntermediateDirectory="Debug" | ||
22 | ConfigurationType="1" | ||
23 | InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" | ||
24 | CharacterSet="2" | ||
25 | > | ||
26 | <Tool | ||
27 | Name="VCPreBuildEventTool" | ||
28 | /> | ||
29 | <Tool | ||
30 | Name="VCCustomBuildTool" | ||
31 | /> | ||
32 | <Tool | ||
33 | Name="VCXMLDataGeneratorTool" | ||
34 | /> | ||
35 | <Tool | ||
36 | Name="VCWebServiceProxyGeneratorTool" | ||
37 | /> | ||
38 | <Tool | ||
39 | Name="VCMIDLTool" | ||
40 | /> | ||
41 | <Tool | ||
42 | Name="VCCLCompilerTool" | ||
43 | Optimization="0" | ||
44 | AdditionalIncludeDirectories="..\llcommon;..\lldatabase;..\llmessage;..\llmath;..\llinventory;..\llvfs;..\llxml;..\..\libraries\include;"..\..\libraries\i686-win32\include"" | ||
45 | PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;LL_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_USE_32BIT_TIME_T;LL_DEBUG" | ||
46 | MinimalRebuild="false" | ||
47 | BasicRuntimeChecks="3" | ||
48 | RuntimeLibrary="1" | ||
49 | TreatWChar_tAsBuiltInType="false" | ||
50 | RuntimeTypeInfo="true" | ||
51 | UsePrecompiledHeader="0" | ||
52 | WarningLevel="3" | ||
53 | Detect64BitPortabilityProblems="false" | ||
54 | DebugInformationFormat="3" | ||
55 | /> | ||
56 | <Tool | ||
57 | Name="VCManagedResourceCompilerTool" | ||
58 | /> | ||
59 | <Tool | ||
60 | Name="VCResourceCompilerTool" | ||
61 | /> | ||
62 | <Tool | ||
63 | Name="VCPreLinkEventTool" | ||
64 | /> | ||
65 | <Tool | ||
66 | Name="VCLinkerTool" | ||
67 | AdditionalOptions="/FORCE:MULTIPLE" | ||
68 | AdditionalDependencies="advapi32.lib apr-1.lib aprutil-1.lib comdlg32.lib dinput8.lib dsound.lib dxerr8.lib dxguid.lib freetype.lib gdi32.lib glu32.lib jpeglib_6b.lib kernel32.lib libboost_regex-vc80-mt-sgd-1_34_1.lib libboost_signals-vc80-mt-sgd-1_34_1.lib libcurl.lib libeay32.lib libexpatMT.lib llcommon.lib llprimitive.lib llvfs.lib llxml.lib lscript_library.lib mswsock.lib netapi32.lib odbc32.lib odbccp32.lib ole32.lib oleaut32.lib opengl32.lib shell32.lib ssleay32.lib user32.lib Vfw32.lib winmm.lib winspool.lib ws2_32.lib xmlrpcepi.lib zlib.lib" | ||
69 | OutputFile="$(OutDir)/test.exe" | ||
70 | LinkIncremental="2" | ||
71 | AdditionalLibraryDirectories=""../lib_$(ConfigurationName)/i686-win32";"../../libraries/i686-win32/lib_debug"" | ||
72 | IgnoreDefaultLibraryNames="libcmt.lib" | ||
73 | GenerateDebugInformation="true" | ||
74 | ProgramDatabaseFile="$(OutDir)/test.pdb" | ||
75 | SubSystem="1" | ||
76 | TargetMachine="1" | ||
77 | /> | ||
78 | <Tool | ||
79 | Name="VCALinkTool" | ||
80 | /> | ||
81 | <Tool | ||
82 | Name="VCManifestTool" | ||
83 | /> | ||
84 | <Tool | ||
85 | Name="VCXDCMakeTool" | ||
86 | /> | ||
87 | <Tool | ||
88 | Name="VCBscMakeTool" | ||
89 | /> | ||
90 | <Tool | ||
91 | Name="VCFxCopTool" | ||
92 | /> | ||
93 | <Tool | ||
94 | Name="VCAppVerifierTool" | ||
95 | /> | ||
96 | <Tool | ||
97 | Name="VCWebDeploymentTool" | ||
98 | /> | ||
99 | <Tool | ||
100 | Name="VCPostBuildEventTool" | ||
101 | /> | ||
102 | </Configuration> | ||
103 | <Configuration | ||
104 | Name="Release|Win32" | ||
105 | OutputDirectory="Release" | ||
106 | IntermediateDirectory="Release" | ||
107 | ConfigurationType="1" | ||
108 | InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" | ||
109 | CharacterSet="2" | ||
110 | > | ||
111 | <Tool | ||
112 | Name="VCPreBuildEventTool" | ||
113 | /> | ||
114 | <Tool | ||
115 | Name="VCCustomBuildTool" | ||
116 | /> | ||
117 | <Tool | ||
118 | Name="VCXMLDataGeneratorTool" | ||
119 | /> | ||
120 | <Tool | ||
121 | Name="VCWebServiceProxyGeneratorTool" | ||
122 | /> | ||
123 | <Tool | ||
124 | Name="VCMIDLTool" | ||
125 | /> | ||
126 | <Tool | ||
127 | Name="VCCLCompilerTool" | ||
128 | Optimization="2" | ||
129 | InlineFunctionExpansion="2" | ||
130 | EnableIntrinsicFunctions="true" | ||
131 | AdditionalIncludeDirectories="..\llcommon;..\lldatabase;..\llmessage;..\llmath;..\llinventory;..\llvfs;..\llxml;..\..\libraries\include;"..\..\libraries\i686-win32\include"" | ||
132 | PreprocessorDefinitions="WIN32;__WIN32;NDEBUG;_WINDOWS;LL_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_USE_32BIT_TIME_T;LL_RELEASE;APR_DECLARE_STATIC;LL_HTTPD=1" | ||
133 | StringPooling="true" | ||
134 | MinimalRebuild="false" | ||
135 | BasicRuntimeChecks="0" | ||
136 | RuntimeLibrary="0" | ||
137 | TreatWChar_tAsBuiltInType="false" | ||
138 | ForceConformanceInForLoopScope="true" | ||
139 | RuntimeTypeInfo="true" | ||
140 | UsePrecompiledHeader="0" | ||
141 | WarningLevel="3" | ||
142 | WarnAsError="false" | ||
143 | Detect64BitPortabilityProblems="false" | ||
144 | DebugInformationFormat="3" | ||
145 | /> | ||
146 | <Tool | ||
147 | Name="VCManagedResourceCompilerTool" | ||
148 | /> | ||
149 | <Tool | ||
150 | Name="VCResourceCompilerTool" | ||
151 | /> | ||
152 | <Tool | ||
153 | Name="VCPreLinkEventTool" | ||
154 | /> | ||
155 | <Tool | ||
156 | Name="VCLinkerTool" | ||
157 | AdditionalOptions="/FORCE:MULTIPLE" | ||
158 | AdditionalDependencies="advapi32.lib apr-1.lib aprutil-1.lib comdlg32.lib dinput8.lib dsound.lib dxerr8.lib dxguid.lib freetype.lib gdi32.lib glu32.lib jpeglib_6b.lib kernel32.lib libboost_regex-vc80-mt-s-1_34_1.lib libboost_signals-vc80-mt-s-1_34_1.lib libcurl.lib libeay32.lib libexpatMT.lib llcommon.lib llprimitive.lib llvfs.lib llxml.lib lscript_library.lib mswsock.lib netapi32.lib odbc32.lib odbccp32.lib ole32.lib oleaut32.lib opengl32.lib shell32.lib ssleay32.lib user32.lib Vfw32.lib winmm.lib winspool.lib ws2_32.lib xmlrpcepi.lib zlib.lib" | ||
159 | OutputFile="$(OutDir)/test.exe" | ||
160 | LinkIncremental="2" | ||
161 | AdditionalLibraryDirectories=""../lib_$(ConfigurationName)/i686-win32";"../../libraries/i686-win32/lib_release"" | ||
162 | IgnoreDefaultLibraryNames="" | ||
163 | GenerateDebugInformation="true" | ||
164 | ProgramDatabaseFile="$(OutDir)/test.pdb" | ||
165 | SubSystem="1" | ||
166 | OptimizeReferences="1" | ||
167 | EnableCOMDATFolding="1" | ||
168 | TargetMachine="1" | ||
169 | /> | ||
170 | <Tool | ||
171 | Name="VCALinkTool" | ||
172 | /> | ||
173 | <Tool | ||
174 | Name="VCManifestTool" | ||
175 | /> | ||
176 | <Tool | ||
177 | Name="VCXDCMakeTool" | ||
178 | /> | ||
179 | <Tool | ||
180 | Name="VCBscMakeTool" | ||
181 | /> | ||
182 | <Tool | ||
183 | Name="VCFxCopTool" | ||
184 | /> | ||
185 | <Tool | ||
186 | Name="VCAppVerifierTool" | ||
187 | /> | ||
188 | <Tool | ||
189 | Name="VCWebDeploymentTool" | ||
190 | /> | ||
191 | <Tool | ||
192 | Name="VCPostBuildEventTool" | ||
193 | CommandLine="$(TargetPath)" | ||
194 | /> | ||
195 | </Configuration> | ||
196 | <Configuration | ||
197 | Name="ReleaseNoOpt|Win32" | ||
198 | OutputDirectory="$(ConfigurationName)" | ||
199 | IntermediateDirectory="$(ConfigurationName)" | ||
200 | ConfigurationType="1" | ||
201 | InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" | ||
202 | CharacterSet="2" | ||
203 | > | ||
204 | <Tool | ||
205 | Name="VCPreBuildEventTool" | ||
206 | /> | ||
207 | <Tool | ||
208 | Name="VCCustomBuildTool" | ||
209 | /> | ||
210 | <Tool | ||
211 | Name="VCXMLDataGeneratorTool" | ||
212 | /> | ||
213 | <Tool | ||
214 | Name="VCWebServiceProxyGeneratorTool" | ||
215 | /> | ||
216 | <Tool | ||
217 | Name="VCMIDLTool" | ||
218 | /> | ||
219 | <Tool | ||
220 | Name="VCCLCompilerTool" | ||
221 | Optimization="0" | ||
222 | AdditionalIncludeDirectories="..\llcommon;..\lldatabase;..\llmessage;..\llmath;..\llinventory;..\llvfs;..\llxml;..\..\libraries\include;"..\..\libraries\i686-win32\include"" | ||
223 | PreprocessorDefinitions="WIN32;__WIN32;NDEBUG;_WINDOWS;LL_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_USE_32BIT_TIME_T;LL_RELEASE;APR_DECLARE_STATIC;LL_HTTPD=1" | ||
224 | MinimalRebuild="false" | ||
225 | BasicRuntimeChecks="0" | ||
226 | RuntimeLibrary="0" | ||
227 | TreatWChar_tAsBuiltInType="false" | ||
228 | ForceConformanceInForLoopScope="true" | ||
229 | RuntimeTypeInfo="true" | ||
230 | UsePrecompiledHeader="0" | ||
231 | WarningLevel="3" | ||
232 | Detect64BitPortabilityProblems="false" | ||
233 | DebugInformationFormat="3" | ||
234 | /> | ||
235 | <Tool | ||
236 | Name="VCManagedResourceCompilerTool" | ||
237 | /> | ||
238 | <Tool | ||
239 | Name="VCResourceCompilerTool" | ||
240 | /> | ||
241 | <Tool | ||
242 | Name="VCPreLinkEventTool" | ||
243 | /> | ||
244 | <Tool | ||
245 | Name="VCLinkerTool" | ||
246 | AdditionalDependencies="advapi32.lib apr-1.lib aprutil-1.lib comdlg32.lib dinput8.lib dsound.lib dxerr8.lib dxguid.lib freetype.lib gdi32.lib glu32.lib jpeglib_6b.lib kernel32.lib libboost_regex-vc80-mt-s-1_34_1.lib libboost_signals-vc80-mt-s-1_34_1.lib libcurl.lib libeay32.lib libexpatMT.lib llcommon.lib llprimitive.lib llvfs.lib llxml.lib lscript_library.lib mswsock.lib netapi32.lib odbc32.lib odbccp32.lib ole32.lib oleaut32.lib opengl32.lib shell32.lib ssleay32.lib user32.lib Vfw32.lib winmm.lib winspool.lib ws2_32.lib xmlrpcepi.lib zlib.lib" | ||
247 | OutputFile="$(OutDir)/test.exe" | ||
248 | LinkIncremental="2" | ||
249 | AdditionalLibraryDirectories=""../lib_$(ConfigurationName)/i686-win32";"../../libraries/i686-win32/lib_release"" | ||
250 | IgnoreDefaultLibraryNames="libcmtd" | ||
251 | GenerateDebugInformation="true" | ||
252 | ProgramDatabaseFile="$(OutDir)/test.pdb" | ||
253 | SubSystem="1" | ||
254 | TargetMachine="1" | ||
255 | /> | ||
256 | <Tool | ||
257 | Name="VCALinkTool" | ||
258 | /> | ||
259 | <Tool | ||
260 | Name="VCManifestTool" | ||
261 | /> | ||
262 | <Tool | ||
263 | Name="VCXDCMakeTool" | ||
264 | /> | ||
265 | <Tool | ||
266 | Name="VCBscMakeTool" | ||
267 | /> | ||
268 | <Tool | ||
269 | Name="VCFxCopTool" | ||
270 | /> | ||
271 | <Tool | ||
272 | Name="VCAppVerifierTool" | ||
273 | /> | ||
274 | <Tool | ||
275 | Name="VCWebDeploymentTool" | ||
276 | /> | ||
277 | <Tool | ||
278 | Name="VCPostBuildEventTool" | ||
279 | CommandLine="$(TargetPath)" | ||
280 | /> | ||
281 | </Configuration> | ||
282 | </Configurations> | ||
283 | <References> | ||
284 | </References> | ||
285 | <Files> | ||
286 | <Filter | ||
287 | Name="Source Files" | ||
288 | Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx" | ||
289 | UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" | ||
290 | > | ||
291 | <File | ||
292 | RelativePath=".\common.cpp" | ||
293 | > | ||
294 | </File> | ||
295 | <File | ||
296 | RelativePath=".\inventory.cpp" | ||
297 | > | ||
298 | </File> | ||
299 | <File | ||
300 | RelativePath=".\io.cpp" | ||
301 | > | ||
302 | </File> | ||
303 | <File | ||
304 | RelativePath=".\llapp_tut.cpp" | ||
305 | > | ||
306 | </File> | ||
307 | <File | ||
308 | RelativePath=".\llbase64_tut.cpp" | ||
309 | > | ||
310 | </File> | ||
311 | <File | ||
312 | RelativePath=".\llbitpack_tut.cpp" | ||
313 | > | ||
314 | </File> | ||
315 | <File | ||
316 | RelativePath=".\llblowfish_tut.cpp" | ||
317 | > | ||
318 | </File> | ||
319 | <File | ||
320 | RelativePath=".\lldatabase_tut.cpp" | ||
321 | > | ||
322 | </File> | ||
323 | <File | ||
324 | RelativePath=".\llerror_tut.cpp" | ||
325 | > | ||
326 | </File> | ||
327 | <File | ||
328 | RelativePath=".\llhttpclient_tut.cpp" | ||
329 | > | ||
330 | </File> | ||
331 | <File | ||
332 | RelativePath=".\llhttpnode_tut.cpp" | ||
333 | > | ||
334 | </File> | ||
335 | <File | ||
336 | RelativePath=".\llinventoryparcel_tut.cpp" | ||
337 | > | ||
338 | </File> | ||
339 | <File | ||
340 | RelativePath=".\lliohttpserver_tut.cpp" | ||
341 | > | ||
342 | </File> | ||
343 | <File | ||
344 | RelativePath=".\llmessageconfig_tut.cpp" | ||
345 | > | ||
346 | </File> | ||
347 | <File | ||
348 | RelativePath=".\llmime_tut.cpp" | ||
349 | > | ||
350 | </File> | ||
351 | <File | ||
352 | RelativePath=".\llpipeutil.cpp" | ||
353 | > | ||
354 | </File> | ||
355 | <File | ||
356 | RelativePath=".\llrandom_tut.cpp" | ||
357 | > | ||
358 | </File> | ||
359 | <File | ||
360 | RelativePath=".\llsd_new_tut.cpp" | ||
361 | > | ||
362 | </File> | ||
363 | <File | ||
364 | RelativePath=".\llsdmessagebuilder_tut.cpp" | ||
365 | > | ||
366 | </File> | ||
367 | <File | ||
368 | RelativePath=".\llsdmessagereader_tut.cpp" | ||
369 | > | ||
370 | </File> | ||
371 | <File | ||
372 | RelativePath=".\llsdserialize_tut.cpp" | ||
373 | > | ||
374 | </File> | ||
375 | <File | ||
376 | RelativePath=".\llservicebuilder_tut.cpp" | ||
377 | > | ||
378 | </File> | ||
379 | <File | ||
380 | RelativePath=".\lltiming_tut.cpp" | ||
381 | > | ||
382 | </File> | ||
383 | <File | ||
384 | RelativePath=".\lltut.cpp" | ||
385 | > | ||
386 | </File> | ||
387 | <File | ||
388 | RelativePath=".\lluri_tut.cpp" | ||
389 | > | ||
390 | </File> | ||
391 | <File | ||
392 | RelativePath=".\lluserrelations_tut.cpp" | ||
393 | > | ||
394 | </File> | ||
395 | <File | ||
396 | RelativePath=".\llxfer_tut.cpp" | ||
397 | > | ||
398 | </File> | ||
399 | <File | ||
400 | RelativePath=".\math.cpp" | ||
401 | > | ||
402 | </File> | ||
403 | <File | ||
404 | RelativePath=".\reflection_tut.cpp" | ||
405 | > | ||
406 | </File> | ||
407 | <File | ||
408 | RelativePath=".\test.cpp" | ||
409 | > | ||
410 | </File> | ||
411 | <File | ||
412 | RelativePath=".\v2math_tut.cpp" | ||
413 | > | ||
414 | </File> | ||
415 | <File | ||
416 | RelativePath=".\v3dmath_tut.cpp" | ||
417 | > | ||
418 | </File> | ||
419 | <File | ||
420 | RelativePath=".\v3math_tut.cpp" | ||
421 | > | ||
422 | </File> | ||
423 | <File | ||
424 | RelativePath=".\xform_tut.cpp" | ||
425 | > | ||
426 | </File> | ||
427 | </Filter> | ||
428 | <Filter | ||
429 | Name="Header Files" | ||
430 | Filter="h;hpp;hxx;hm;inl;inc;xsd" | ||
431 | UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" | ||
432 | > | ||
433 | <File | ||
434 | RelativePath=".\llpipeutil.h" | ||
435 | > | ||
436 | </File> | ||
437 | <File | ||
438 | RelativePath=".\llsdtraits.h" | ||
439 | > | ||
440 | </File> | ||
441 | <File | ||
442 | RelativePath=".\lltut.h" | ||
443 | > | ||
444 | </File> | ||
445 | </Filter> | ||
446 | <Filter | ||
447 | Name="Resource Files" | ||
448 | Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx" | ||
449 | UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}" | ||
450 | > | ||
451 | </Filter> | ||
452 | </Files> | ||
453 | <Globals> | ||
454 | </Globals> | ||
455 | </VisualStudioProject> | ||
diff --git a/linden/indra/test/test_vc9.vcproj b/linden/indra/test/test_vc9.vcproj deleted file mode 100644 index d7fcfae..0000000 --- a/linden/indra/test/test_vc9.vcproj +++ /dev/null | |||
@@ -1,453 +0,0 @@ | |||
1 | <?xml version="1.0" encoding="Windows-1252"?> | ||
2 | <VisualStudioProject | ||
3 | ProjectType="Visual C++" | ||
4 | Version="9.00" | ||
5 | Name="test" | ||
6 | ProjectGUID="{BBAA6588-CA96-4A87-A988-B02270B8D02B}" | ||
7 | RootNamespace="test" | ||
8 | Keyword="Win32Proj" | ||
9 | TargetFrameworkVersion="131072" | ||
10 | > | ||
11 | <Platforms> | ||
12 | <Platform | ||
13 | Name="Win32" | ||
14 | /> | ||
15 | </Platforms> | ||
16 | <ToolFiles> | ||
17 | </ToolFiles> | ||
18 | <Configurations> | ||
19 | <Configuration | ||
20 | Name="Debug|Win32" | ||
21 | OutputDirectory="Debug" | ||
22 | IntermediateDirectory="Debug" | ||
23 | ConfigurationType="1" | ||
24 | InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" | ||
25 | CharacterSet="2" | ||
26 | > | ||
27 | <Tool | ||
28 | Name="VCPreBuildEventTool" | ||
29 | /> | ||
30 | <Tool | ||
31 | Name="VCCustomBuildTool" | ||
32 | /> | ||
33 | <Tool | ||
34 | Name="VCXMLDataGeneratorTool" | ||
35 | /> | ||
36 | <Tool | ||
37 | Name="VCWebServiceProxyGeneratorTool" | ||
38 | /> | ||
39 | <Tool | ||
40 | Name="VCMIDLTool" | ||
41 | /> | ||
42 | <Tool | ||
43 | Name="VCCLCompilerTool" | ||
44 | Optimization="0" | ||
45 | AdditionalIncludeDirectories="..\llcommon;..\lldatabase;..\llmessage;..\llmath;..\llinventory;..\llvfs;..\llxml;..\..\libraries\include;"..\..\libraries\i686-win32\include"" | ||
46 | PreprocessorDefinitions="WIN32;_DEBUG;_CONSOLE;LL_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_USE_32BIT_TIME_T;LL_DEBUG" | ||
47 | MinimalRebuild="false" | ||
48 | BasicRuntimeChecks="3" | ||
49 | RuntimeLibrary="1" | ||
50 | TreatWChar_tAsBuiltInType="false" | ||
51 | RuntimeTypeInfo="true" | ||
52 | UsePrecompiledHeader="0" | ||
53 | WarningLevel="3" | ||
54 | Detect64BitPortabilityProblems="false" | ||
55 | DebugInformationFormat="3" | ||
56 | /> | ||
57 | <Tool | ||
58 | Name="VCManagedResourceCompilerTool" | ||
59 | /> | ||
60 | <Tool | ||
61 | Name="VCResourceCompilerTool" | ||
62 | /> | ||
63 | <Tool | ||
64 | Name="VCPreLinkEventTool" | ||
65 | /> | ||
66 | <Tool | ||
67 | Name="VCLinkerTool" | ||
68 | AdditionalOptions="/FORCE:MULTIPLE" | ||
69 | AdditionalDependencies="advapi32.lib apr-1.lib aprutil-1.lib comdlg32.lib dinput8.lib dsound.lib dxerr8.lib dxguid.lib freetype.lib gdi32.lib glu32.lib jpeglib_6b.lib kernel32.lib libboost_regex-vc80-mt-s.lib libcurl.lib libeay32.lib libexpatMT.lib llcommon.lib llprimitive.lib llvfs.lib llxml.lib lscript_library.lib mswsock.lib netapi32.lib odbc32.lib odbccp32.lib ole32.lib oleaut32.lib opengl32.lib shell32.lib ssleay32.lib user32.lib Vfw32.lib winmm.lib winspool.lib ws2_32.lib xmlrpcepi.lib zlib.lib" | ||
70 | OutputFile="$(OutDir)/test.exe" | ||
71 | LinkIncremental="2" | ||
72 | AdditionalLibraryDirectories=""../lib_$(ConfigurationName)/i686-win32";"../../libraries/i686-win32/lib_debug"" | ||
73 | IgnoreDefaultLibraryNames="libcmt.lib" | ||
74 | GenerateDebugInformation="true" | ||
75 | ProgramDatabaseFile="$(OutDir)/test.pdb" | ||
76 | SubSystem="1" | ||
77 | RandomizedBaseAddress="1" | ||
78 | DataExecutionPrevention="0" | ||
79 | TargetMachine="1" | ||
80 | /> | ||
81 | <Tool | ||
82 | Name="VCALinkTool" | ||
83 | /> | ||
84 | <Tool | ||
85 | Name="VCManifestTool" | ||
86 | /> | ||
87 | <Tool | ||
88 | Name="VCXDCMakeTool" | ||
89 | /> | ||
90 | <Tool | ||
91 | Name="VCBscMakeTool" | ||
92 | /> | ||
93 | <Tool | ||
94 | Name="VCFxCopTool" | ||
95 | /> | ||
96 | <Tool | ||
97 | Name="VCAppVerifierTool" | ||
98 | /> | ||
99 | <Tool | ||
100 | Name="VCPostBuildEventTool" | ||
101 | /> | ||
102 | </Configuration> | ||
103 | <Configuration | ||
104 | Name="Release|Win32" | ||
105 | OutputDirectory="Release" | ||
106 | IntermediateDirectory="Release" | ||
107 | ConfigurationType="1" | ||
108 | InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" | ||
109 | CharacterSet="2" | ||
110 | > | ||
111 | <Tool | ||
112 | Name="VCPreBuildEventTool" | ||
113 | /> | ||
114 | <Tool | ||
115 | Name="VCCustomBuildTool" | ||
116 | /> | ||
117 | <Tool | ||
118 | Name="VCXMLDataGeneratorTool" | ||
119 | /> | ||
120 | <Tool | ||
121 | Name="VCWebServiceProxyGeneratorTool" | ||
122 | /> | ||
123 | <Tool | ||
124 | Name="VCMIDLTool" | ||
125 | /> | ||
126 | <Tool | ||
127 | Name="VCCLCompilerTool" | ||
128 | Optimization="2" | ||
129 | InlineFunctionExpansion="2" | ||
130 | EnableIntrinsicFunctions="true" | ||
131 | AdditionalIncludeDirectories="..\llcommon;..\lldatabase;..\llmessage;..\llmath;..\llinventory;..\llvfs;..\llxml;..\..\libraries\include;"..\..\libraries\i686-win32\include"" | ||
132 | PreprocessorDefinitions="WIN32;__WIN32;NDEBUG;_WINDOWS;LL_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_USE_32BIT_TIME_T;LL_RELEASE;APR_DECLARE_STATIC;LL_HTTPD=1" | ||
133 | StringPooling="true" | ||
134 | MinimalRebuild="false" | ||
135 | BasicRuntimeChecks="0" | ||
136 | RuntimeLibrary="0" | ||
137 | TreatWChar_tAsBuiltInType="false" | ||
138 | ForceConformanceInForLoopScope="true" | ||
139 | RuntimeTypeInfo="true" | ||
140 | UsePrecompiledHeader="0" | ||
141 | WarningLevel="3" | ||
142 | WarnAsError="false" | ||
143 | Detect64BitPortabilityProblems="false" | ||
144 | DebugInformationFormat="3" | ||
145 | /> | ||
146 | <Tool | ||
147 | Name="VCManagedResourceCompilerTool" | ||
148 | /> | ||
149 | <Tool | ||
150 | Name="VCResourceCompilerTool" | ||
151 | /> | ||
152 | <Tool | ||
153 | Name="VCPreLinkEventTool" | ||
154 | /> | ||
155 | <Tool | ||
156 | Name="VCLinkerTool" | ||
157 | AdditionalOptions="/FORCE:MULTIPLE" | ||
158 | AdditionalDependencies="advapi32.lib apr-1.lib aprutil-1.lib comdlg32.lib dinput8.lib dsound.lib dxerr8.lib dxguid.lib freetype.lib gdi32.lib glu32.lib jpeglib_6b.lib kernel32.lib libboost_regex-vc80-mt-s.lib libcurl.lib libeay32.lib libexpatMT.lib llcommon.lib llprimitive.lib llvfs.lib llxml.lib lscript_library.lib mswsock.lib netapi32.lib odbc32.lib odbccp32.lib ole32.lib oleaut32.lib opengl32.lib shell32.lib ssleay32.lib user32.lib Vfw32.lib winmm.lib winspool.lib ws2_32.lib xmlrpcepi.lib zlib.lib" | ||
159 | OutputFile="$(OutDir)/test.exe" | ||
160 | LinkIncremental="2" | ||
161 | AdditionalLibraryDirectories=""../lib_$(ConfigurationName)/i686-win32";"../../libraries/i686-win32/lib_release"" | ||
162 | IgnoreDefaultLibraryNames="" | ||
163 | GenerateDebugInformation="true" | ||
164 | ProgramDatabaseFile="$(OutDir)/test.pdb" | ||
165 | SubSystem="1" | ||
166 | OptimizeReferences="1" | ||
167 | EnableCOMDATFolding="1" | ||
168 | RandomizedBaseAddress="1" | ||
169 | DataExecutionPrevention="0" | ||
170 | TargetMachine="1" | ||
171 | /> | ||
172 | <Tool | ||
173 | Name="VCALinkTool" | ||
174 | /> | ||
175 | <Tool | ||
176 | Name="VCManifestTool" | ||
177 | /> | ||
178 | <Tool | ||
179 | Name="VCXDCMakeTool" | ||
180 | /> | ||
181 | <Tool | ||
182 | Name="VCBscMakeTool" | ||
183 | /> | ||
184 | <Tool | ||
185 | Name="VCFxCopTool" | ||
186 | /> | ||
187 | <Tool | ||
188 | Name="VCAppVerifierTool" | ||
189 | /> | ||
190 | <Tool | ||
191 | Name="VCPostBuildEventTool" | ||
192 | CommandLine="$(TargetPath)" | ||
193 | /> | ||
194 | </Configuration> | ||
195 | <Configuration | ||
196 | Name="ReleaseNoOpt|Win32" | ||
197 | OutputDirectory="$(ConfigurationName)" | ||
198 | IntermediateDirectory="$(ConfigurationName)" | ||
199 | ConfigurationType="1" | ||
200 | InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" | ||
201 | CharacterSet="2" | ||
202 | > | ||
203 | <Tool | ||
204 | Name="VCPreBuildEventTool" | ||
205 | /> | ||
206 | <Tool | ||
207 | Name="VCCustomBuildTool" | ||
208 | /> | ||
209 | <Tool | ||
210 | Name="VCXMLDataGeneratorTool" | ||
211 | /> | ||
212 | <Tool | ||
213 | Name="VCWebServiceProxyGeneratorTool" | ||
214 | /> | ||
215 | <Tool | ||
216 | Name="VCMIDLTool" | ||
217 | /> | ||
218 | <Tool | ||
219 | Name="VCCLCompilerTool" | ||
220 | Optimization="0" | ||
221 | AdditionalIncludeDirectories="..\llcommon;..\lldatabase;..\llmessage;..\llmath;..\llinventory;..\llvfs;..\llxml;..\..\libraries\include;"..\..\libraries\i686-win32\include"" | ||
222 | PreprocessorDefinitions="WIN32;__WIN32;NDEBUG;_WINDOWS;LL_WINDOWS;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_USE_32BIT_TIME_T;LL_RELEASE;APR_DECLARE_STATIC;LL_HTTPD=1" | ||
223 | MinimalRebuild="false" | ||
224 | BasicRuntimeChecks="0" | ||
225 | RuntimeLibrary="0" | ||
226 | TreatWChar_tAsBuiltInType="false" | ||
227 | ForceConformanceInForLoopScope="true" | ||
228 | RuntimeTypeInfo="true" | ||
229 | UsePrecompiledHeader="0" | ||
230 | WarningLevel="3" | ||
231 | Detect64BitPortabilityProblems="false" | ||
232 | DebugInformationFormat="3" | ||
233 | /> | ||
234 | <Tool | ||
235 | Name="VCManagedResourceCompilerTool" | ||
236 | /> | ||
237 | <Tool | ||
238 | Name="VCResourceCompilerTool" | ||
239 | /> | ||
240 | <Tool | ||
241 | Name="VCPreLinkEventTool" | ||
242 | /> | ||
243 | <Tool | ||
244 | Name="VCLinkerTool" | ||
245 | AdditionalDependencies="advapi32.lib apr-1.lib aprutil-1.lib comdlg32.lib dinput8.lib dsound.lib dxerr.lib dxguid.lib freetype.lib gdi32.lib glu32.lib jpeglib_6b.lib kernel32.lib libboost_regex-vc80-mt-s.lib libcurl.lib libeay32.lib libexpatMT.lib llcommon.lib llprimitive.lib llvfs.lib llxml.lib lscript_library.lib mswsock.lib netapi32.lib odbc32.lib odbccp32.lib ole32.lib oleaut32.lib opengl32.lib shell32.lib ssleay32.lib user32.lib Vfw32.lib winmm.lib winspool.lib ws2_32.lib xmlrpcepi.lib zlib.lib" | ||
246 | OutputFile="$(OutDir)/test.exe" | ||
247 | LinkIncremental="2" | ||
248 | AdditionalLibraryDirectories=""../lib_$(ConfigurationName)/i686-win32";"../../libraries/i686-win32/lib_release"" | ||
249 | IgnoreDefaultLibraryNames="libcmtd" | ||
250 | GenerateDebugInformation="true" | ||
251 | ProgramDatabaseFile="$(OutDir)/test.pdb" | ||
252 | SubSystem="1" | ||
253 | RandomizedBaseAddress="1" | ||
254 | DataExecutionPrevention="0" | ||
255 | TargetMachine="1" | ||
256 | /> | ||
257 | <Tool | ||
258 | Name="VCALinkTool" | ||
259 | /> | ||
260 | <Tool | ||
261 | Name="VCManifestTool" | ||
262 | /> | ||
263 | <Tool | ||
264 | Name="VCXDCMakeTool" | ||
265 | /> | ||
266 | <Tool | ||
267 | Name="VCBscMakeTool" | ||
268 | /> | ||
269 | <Tool | ||
270 | Name="VCFxCopTool" | ||
271 | /> | ||
272 | <Tool | ||
273 | Name="VCAppVerifierTool" | ||
274 | /> | ||
275 | <Tool | ||
276 | Name="VCPostBuildEventTool" | ||
277 | CommandLine="$(TargetPath)" | ||
278 | /> | ||
279 | </Configuration> | ||
280 | </Configurations> | ||
281 | <References> | ||
282 | </References> | ||
283 | <Files> | ||
284 | <Filter | ||
285 | Name="Source Files" | ||
286 | Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx" | ||
287 | UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}" | ||
288 | > | ||
289 | <File | ||
290 | RelativePath=".\common.cpp" | ||
291 | > | ||
292 | </File> | ||
293 | <File | ||
294 | RelativePath=".\inventory.cpp" | ||
295 | > | ||
296 | </File> | ||
297 | <File | ||
298 | RelativePath=".\io.cpp" | ||
299 | > | ||
300 | </File> | ||
301 | <File | ||
302 | RelativePath=".\llapp_tut.cpp" | ||
303 | > | ||
304 | </File> | ||
305 | <File | ||
306 | RelativePath=".\llbase64_tut.cpp" | ||
307 | > | ||
308 | </File> | ||
309 | <File | ||
310 | RelativePath=".\llbitpack_tut.cpp" | ||
311 | > | ||
312 | </File> | ||
313 | <File | ||
314 | RelativePath=".\llblowfish_tut.cpp" | ||
315 | > | ||
316 | </File> | ||
317 | <File | ||
318 | RelativePath=".\lldatabase_tut.cpp" | ||
319 | > | ||
320 | </File> | ||
321 | <File | ||
322 | RelativePath=".\llerror_tut.cpp" | ||
323 | > | ||
324 | </File> | ||
325 | <File | ||
326 | RelativePath=".\llhttpclient_tut.cpp" | ||
327 | > | ||
328 | </File> | ||
329 | <File | ||
330 | RelativePath=".\llhttpnode_tut.cpp" | ||
331 | > | ||
332 | </File> | ||
333 | <File | ||
334 | RelativePath=".\llinventoryparcel_tut.cpp" | ||
335 | > | ||
336 | </File> | ||
337 | <File | ||
338 | RelativePath=".\lliohttpserver_tut.cpp" | ||
339 | > | ||
340 | </File> | ||
341 | <File | ||
342 | RelativePath=".\llmessageconfig_tut.cpp" | ||
343 | > | ||
344 | </File> | ||
345 | <File | ||
346 | RelativePath=".\llmime_tut.cpp" | ||
347 | > | ||
348 | </File> | ||
349 | <File | ||
350 | RelativePath=".\llpipeutil.cpp" | ||
351 | > | ||
352 | </File> | ||
353 | <File | ||
354 | RelativePath=".\llrandom_tut.cpp" | ||
355 | > | ||
356 | </File> | ||
357 | <File | ||
358 | RelativePath=".\llsd_new_tut.cpp" | ||
359 | > | ||
360 | </File> | ||
361 | <File | ||
362 | RelativePath=".\llsdmessagebuilder_tut.cpp" | ||
363 | > | ||
364 | </File> | ||
365 | <File | ||
366 | RelativePath=".\llsdmessagereader_tut.cpp" | ||
367 | > | ||
368 | </File> | ||
369 | <File | ||
370 | RelativePath=".\llsdserialize_tut.cpp" | ||
371 | > | ||
372 | </File> | ||
373 | <File | ||
374 | RelativePath=".\llservicebuilder_tut.cpp" | ||
375 | > | ||
376 | </File> | ||
377 | <File | ||
378 | RelativePath=".\lltiming_tut.cpp" | ||
379 | > | ||
380 | </File> | ||
381 | <File | ||
382 | RelativePath=".\lltut.cpp" | ||
383 | > | ||
384 | </File> | ||
385 | <File | ||
386 | RelativePath=".\lluri_tut.cpp" | ||
387 | > | ||
388 | </File> | ||
389 | <File | ||
390 | RelativePath=".\lluserrelations_tut.cpp" | ||
391 | > | ||
392 | </File> | ||
393 | <File | ||
394 | RelativePath=".\llxfer_tut.cpp" | ||
395 | > | ||
396 | </File> | ||
397 | <File | ||
398 | RelativePath=".\math.cpp" | ||
399 | > | ||
400 | </File> | ||
401 | <File | ||
402 | RelativePath=".\reflection_tut.cpp" | ||
403 | > | ||
404 | </File> | ||
405 | <File | ||
406 | RelativePath=".\test.cpp" | ||
407 | > | ||
408 | </File> | ||
409 | <File | ||
410 | RelativePath=".\v2math_tut.cpp" | ||
411 | > | ||
412 | </File> | ||
413 | <File | ||
414 | RelativePath=".\v3dmath_tut.cpp" | ||
415 | > | ||
416 | </File> | ||
417 | <File | ||
418 | RelativePath=".\v3math_tut.cpp" | ||
419 | > | ||
420 | </File> | ||
421 | <File | ||
422 | RelativePath=".\xform_tut.cpp" | ||
423 | > | ||
424 | </File> | ||
425 | </Filter> | ||
426 | <Filter | ||
427 | Name="Header Files" | ||
428 | Filter="h;hpp;hxx;hm;inl;inc;xsd" | ||
429 | UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}" | ||
430 | > | ||
431 | <File | ||
432 | RelativePath=".\llpipeutil.h" | ||
433 | > | ||
434 | </File> | ||
435 | <File | ||
436 | RelativePath=".\llsdtraits.h" | ||
437 | > | ||
438 | </File> | ||
439 | <File | ||
440 | RelativePath=".\lltut.h" | ||
441 | > | ||
442 | </File> | ||
443 | </Filter> | ||
444 | <Filter | ||
445 | Name="Resource Files" | ||
446 | Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx" | ||
447 | UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}" | ||
448 | > | ||
449 | </Filter> | ||
450 | </Files> | ||
451 | <Globals> | ||
452 | </Globals> | ||
453 | </VisualStudioProject> | ||
diff --git a/linden/indra/test/v3dmath_tut.cpp b/linden/indra/test/v3dmath_tut.cpp index 106b1dc..a501531 100644 --- a/linden/indra/test/v3dmath_tut.cpp +++ b/linden/indra/test/v3dmath_tut.cpp | |||
@@ -386,7 +386,7 @@ namespace tut | |||
386 | void v3dmath_object::test<16>() | 386 | void v3dmath_object::test<16>() |
387 | { | 387 | { |
388 | F64 x1 = 1.23, y1 = 2.0, z1 = 4.; | 388 | F64 x1 = 1.23, y1 = 2.0, z1 = 4.; |
389 | char buf[] = "1.23 2. 4"; | 389 | std::string buf("1.23 2. 4"); |
390 | LLVector3d vec3D, vec3Da(x1,y1,z1); | 390 | LLVector3d vec3D, vec3Da(x1,y1,z1); |
391 | LLVector3d::parseVector3d(buf, &vec3D); | 391 | LLVector3d::parseVector3d(buf, &vec3D); |
392 | ensure_equals("1:parseVector3d: failed " , vec3D, vec3Da); | 392 | ensure_equals("1:parseVector3d: failed " , vec3D, vec3Da); |
@@ -461,7 +461,7 @@ namespace tut | |||
461 | F64 x1 = 1111.232222; | 461 | F64 x1 = 1111.232222; |
462 | F64 y1 = 2222222222.22; | 462 | F64 y1 = 2222222222.22; |
463 | F64 z1 = 422222222222.0; | 463 | F64 z1 = 422222222222.0; |
464 | char buf[] = "1111.232222 2222222222.22 422222222222"; | 464 | std::string buf("1111.232222 2222222222.22 422222222222"); |
465 | LLVector3d vec3Da, vec3Db(x1,y1,z1); | 465 | LLVector3d vec3Da, vec3Db(x1,y1,z1); |
466 | LLVector3d::parseVector3d(buf, &vec3Da); | 466 | LLVector3d::parseVector3d(buf, &vec3Da); |
467 | ensure_equals("1:parseVector3 failed", vec3Da, vec3Db); | 467 | ensure_equals("1:parseVector3 failed", vec3Da, vec3Db); |
@@ -509,6 +509,9 @@ namespace tut | |||
509 | template<> template<> | 509 | template<> template<> |
510 | void v3dmath_object::test<24>() | 510 | void v3dmath_object::test<24>() |
511 | { | 511 | { |
512 | #if LL_WINDOWS && _MSC_VER < 1400 | ||
513 | skip_fail("This fails on VS2003!"); | ||
514 | #else | ||
512 | F64 x = 10., y = 20., z = -15.; | 515 | F64 x = 10., y = 20., z = -15.; |
513 | F64 angle1, angle2; | 516 | F64 angle1, angle2; |
514 | LLVector3d vec3Da(x,y,z), vec3Db(x,y,z); | 517 | LLVector3d vec3Da(x,y,z), vec3Db(x,y,z); |
@@ -523,5 +526,6 @@ namespace tut | |||
523 | F64 angle = vec3Db*vec3Da; | 526 | F64 angle = vec3Db*vec3Da; |
524 | angle = acos(angle); | 527 | angle = acos(angle); |
525 | ensure("2:angle_between: Fail ", (angle == angle2)); | 528 | ensure("2:angle_between: Fail ", (angle == angle2)); |
529 | #endif | ||
526 | } | 530 | } |
527 | } | 531 | } |
diff --git a/linden/indra/test/v3math_tut.cpp b/linden/indra/test/v3math_tut.cpp index 30a7b7a..9989a8a 100644 --- a/linden/indra/test/v3math_tut.cpp +++ b/linden/indra/test/v3math_tut.cpp | |||
@@ -475,7 +475,7 @@ namespace tut | |||
475 | void v3math_object::test<28>() | 475 | void v3math_object::test<28>() |
476 | { | 476 | { |
477 | F32 x1 =1.23f, y1 = 2.f,z1 = 4.f; | 477 | F32 x1 =1.23f, y1 = 2.f,z1 = 4.f; |
478 | char buf[] = "1.23 2. 4"; | 478 | std::string buf("1.23 2. 4"); |
479 | LLVector3 vec3, vec3a(x1,y1,z1); | 479 | LLVector3 vec3, vec3a(x1,y1,z1); |
480 | LLVector3::parseVector3(buf, &vec3); | 480 | LLVector3::parseVector3(buf, &vec3); |
481 | ensure_equals("1:parseVector3 failed", vec3, vec3a); | 481 | ensure_equals("1:parseVector3 failed", vec3, vec3a); |
diff --git a/linden/indra/test/v4color_tut.cpp b/linden/indra/test/v4color_tut.cpp index d75acb1..5458f6b 100644 --- a/linden/indra/test/v4color_tut.cpp +++ b/linden/indra/test/v4color_tut.cpp | |||
@@ -337,7 +337,7 @@ namespace tut | |||
337 | { | 337 | { |
338 | F32 r = 12.0f, g = -2.3f, b = 1.32f, a = 5.0f; | 338 | F32 r = 12.0f, g = -2.3f, b = 1.32f, a = 5.0f; |
339 | LLColor4 llcolor4a(r,g,b,a),llcolor4b; | 339 | LLColor4 llcolor4a(r,g,b,a),llcolor4b; |
340 | const char *color = "red"; | 340 | std::string color("red"); |
341 | LLColor4::parseColor(color, &llcolor4b); | 341 | LLColor4::parseColor(color, &llcolor4b); |
342 | ensure_equals("1:parseColor() failed to parse the color value ", llcolor4b, LLColor4::red); | 342 | ensure_equals("1:parseColor() failed to parse the color value ", llcolor4b, LLColor4::red); |
343 | 343 | ||
@@ -357,7 +357,7 @@ namespace tut | |||
357 | { | 357 | { |
358 | F32 r = 12.0f, g = -2.3f, b = 1.32f, a = 5.0f; | 358 | F32 r = 12.0f, g = -2.3f, b = 1.32f, a = 5.0f; |
359 | LLColor4 llcolor4a(r,g,b,a),llcolor4b; | 359 | LLColor4 llcolor4a(r,g,b,a),llcolor4b; |
360 | const char *color = "12.0, -2.3, 1.32, 5.0"; | 360 | std::string color("12.0, -2.3, 1.32, 5.0"); |
361 | LLColor4::parseColor4(color, &llcolor4b); | 361 | LLColor4::parseColor4(color, &llcolor4b); |
362 | ensure_equals("parseColor4() failed to parse the color value ", llcolor4a, llcolor4b); | 362 | ensure_equals("parseColor4() failed to parse the color value ", llcolor4a, llcolor4b); |
363 | } | 363 | } |
diff --git a/linden/indra/test/v4coloru_tut.cpp b/linden/indra/test/v4coloru_tut.cpp index c73f91f..4c931d4 100644 --- a/linden/indra/test/v4coloru_tut.cpp +++ b/linden/indra/test/v4coloru_tut.cpp | |||
@@ -286,7 +286,7 @@ namespace tut | |||
286 | { | 286 | { |
287 | U8 r = 0x12, g = 0xFF, b = 0xAF, a = 12; | 287 | U8 r = 0x12, g = 0xFF, b = 0xAF, a = 12; |
288 | LLColor4U llcolor4u1(r,g,b,a); | 288 | LLColor4U llcolor4u1(r,g,b,a); |
289 | const char *color = "12, 23, 132, 50"; | 289 | std::string color("12, 23, 132, 50"); |
290 | LLColor4U::parseColor4U(color, &llcolor4u1); | 290 | LLColor4U::parseColor4U(color, &llcolor4u1); |
291 | ensure("parseColor4U() failed to parse the color value ", ((12 == llcolor4u1.mV[VX]) && (23 == llcolor4u1.mV[VY]) && (132 == llcolor4u1.mV[VZ])&& (50 == llcolor4u1.mV[VW]))); | 291 | ensure("parseColor4U() failed to parse the color value ", ((12 == llcolor4u1.mV[VX]) && (23 == llcolor4u1.mV[VY]) && (132 == llcolor4u1.mV[VZ])&& (50 == llcolor4u1.mV[VW]))); |
292 | 292 | ||
diff --git a/linden/indra/test/v4math_tut.cpp b/linden/indra/test/v4math_tut.cpp index f5a6bcb..07b4797 100644 --- a/linden/indra/test/v4math_tut.cpp +++ b/linden/indra/test/v4math_tut.cpp | |||
@@ -166,6 +166,12 @@ namespace tut | |||
166 | template<> template<> | 166 | template<> template<> |
167 | void v4math_object::test<8>() | 167 | void v4math_object::test<8>() |
168 | { | 168 | { |
169 | #if LL_DEBUG && LL_WINDOWS && _MSC_VER >= 1400 | ||
170 | skip_fail("This fails on VS2005 debug builds!"); | ||
171 | #else | ||
172 | #if LL_WINDOWS && _MSC_VER < 1400 | ||
173 | skip_fail("This fails on VS2003!"); | ||
174 | #else | ||
169 | F32 x = 10.f, y = -2.3f, z = -.023f, w = -2.0f; | 175 | F32 x = 10.f, y = -2.3f, z = -.023f, w = -2.0f; |
170 | const F32 val[10] = {1.f,2.f,3.f,.34f,.1f,-.5f,2.f,1.23f,1.234f,.89f}; | 176 | const F32 val[10] = {1.f,2.f,3.f,.34f,.1f,-.5f,2.f,1.23f,1.234f,.89f}; |
171 | LLMatrix4 mat(val); | 177 | LLMatrix4 mat(val); |
@@ -181,6 +187,8 @@ namespace tut | |||
181 | vec4c.setVec(a, b, c, d); | 187 | vec4c.setVec(a, b, c, d); |
182 | vec4c.rotVec(q); | 188 | vec4c.rotVec(q); |
183 | ensure_equals("2:rotVec: Fail " ,vec4b, vec4c); | 189 | ensure_equals("2:rotVec: Fail " ,vec4b, vec4c); |
190 | #endif | ||
191 | #endif | ||
184 | } | 192 | } |
185 | 193 | ||
186 | template<> template<> | 194 | template<> template<> |