PageRenderTime 49ms CodeModel.GetById 17ms RepoModel.GetById 0ms app.codeStats 0ms

/projects/netbeans-7.3/cnd.dwarfdiscovery/test/unit/src/org/netbeans/modules/cnd/dwarfdiscovery/provider/LogReaderTest.java

https://gitlab.com/essere.lab.public/qualitas.class-corpus
Java | 798 lines | 699 code | 26 blank | 73 comment | 7 complexity | 0b9a9f2ca3a3f00fccf76a6baf0c0cad MD5 | raw file
  1. /*
  2. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
  3. *
  4. * Copyright 2010 Oracle and/or its affiliates. All rights reserved.
  5. *
  6. * Oracle and Java are registered trademarks of Oracle and/or its affiliates.
  7. * Other names may be trademarks of their respective owners.
  8. *
  9. * The contents of this file are subject to the terms of either the GNU
  10. * General Public License Version 2 only ("GPL") or the Common
  11. * Development and Distribution License("CDDL") (collectively, the
  12. * "License"). You may not use this file except in compliance with the
  13. * License. You can obtain a copy of the License at
  14. * http://www.netbeans.org/cddl-gplv2.html
  15. * or nbbuild/licenses/CDDL-GPL-2-CP. See the License for the
  16. * specific language governing permissions and limitations under the
  17. * License. When distributing the software, include this License Header
  18. * Notice in each file and include the License file at
  19. * nbbuild/licenses/CDDL-GPL-2-CP. Oracle designates this
  20. * particular file as subject to the "Classpath" exception as provided
  21. * by Oracle in the GPL Version 2 section of the License file that
  22. * accompanied this code. If applicable, add the following below the
  23. * License Header, with the fields enclosed by brackets [] replaced by
  24. * your own identifying information:
  25. * "Portions Copyrighted [year] [name of copyright owner]"
  26. *
  27. * If you wish your version of this file to be governed by only the CDDL
  28. * or only the GPL Version 2, indicate your decision by adding
  29. * "[Contributor] elects to include this software in this distribution
  30. * under the [CDDL or GPL Version 2] license." If you do not indicate a
  31. * single choice of license, a recipient has the option to distribute
  32. * your version of this file under either the CDDL, the GPL Version 2 or
  33. * to extend the choice of license to its licensees as provided above.
  34. * However, if you add GPL Version 2 code and therefore, elected the GPL
  35. * Version 2 license, then the option applies only if the new code is
  36. * made subject to such option by the copyright holder.
  37. *
  38. * Contributor(s):
  39. *
  40. * Portions Copyrighted 2008 Sun Microsystems, Inc.
  41. */
  42. package org.netbeans.modules.cnd.dwarfdiscovery.provider;
  43. import java.util.ArrayList;
  44. import java.util.HashMap;
  45. import java.util.List;
  46. import java.util.Map;
  47. import java.util.TreeMap;
  48. import java.util.regex.Pattern;
  49. import junit.framework.TestCase;
  50. import org.netbeans.modules.cnd.discovery.api.DiscoveryUtils;
  51. import org.netbeans.modules.cnd.discovery.api.ItemProperties;
  52. import org.netbeans.modules.cnd.dwarfdiscovery.provider.LogReader.CommandLineSource;
  53. /**
  54. *
  55. * @author sg155630
  56. */
  57. public class LogReaderTest extends TestCase {
  58. public void testNotCompilerInvocation() {
  59. testCompilerInvocation(ItemProperties.LanguageKind.Unknown, "CXX --mode=compile -I/export/home/gcc/gccobj/gcc/xgcc ../../../libjava/gnu/gcj/natCore.cc", 1);
  60. }
  61. public void testWrongLibtoolCompilerInvocation() {
  62. testCompilerInvocation(ItemProperties.LanguageKind.CPP, "/bin/sh ./libtool --tag=CXX --mode=compile /export/home/gcc/gccobj/gcc/xgcc ../../../libjava/gnu/gcj/natCore.cc", 1);
  63. }
  64. public void testLibtoolCCompilerInvocation() {
  65. testCompilerInvocation(ItemProperties.LanguageKind.C, "/bin/sh ./libtool --mode=compile /export/home/gcc/gccobj/gcc/xgcc -shared-libgcc -B/export/home/gcc/gccobj/gcc/ ../../../libjava/gnu/gcj/natCore.c", 1);
  66. }
  67. public void testLibtoolCppCompilerInvocation() {
  68. testCompilerInvocation(ItemProperties.LanguageKind.CPP, "./libtool --tag=CXX --mode=compile /usr/bin/g++ -shared -B/usr/lib/gcc/ filename.cc", 1);
  69. }
  70. public void testCppCompilerInvocation() {
  71. testCompilerInvocation(ItemProperties.LanguageKind.CPP, "/grid/common/pkgs/gcc/v4.4.0/bin/gcc -c -fpic -DVERBOSE -pthread -fcheck-new -Wno-deprecated -m32 -g -DBEDB_SUPPORT -D_XOPEN_SOURCE_EXTENDED=1 -DLINUX2 -I. -I.. -I/vobs/ua/include -I/vobs/rcc/include -I/grid/cva/test_ius/ius.10.2.b6/tools/inca/include -I/grid/cva/test_ius/ius.10.2.b6/tools/include -I/vobs/ua/Debug/include -I/vobs/ua/include -I/vobs/sys/include/x86-lx2-32 -I/grid/common/pkgs/purifyplus/v7.0.1/releases/purify.i386_linux2.7.0.1 ../coGuiApp.C", 1);
  72. }
  73. public void testCppCompilerInvocation2() {
  74. testCompilerInvocation(ItemProperties.LanguageKind.C, "/grid/common/pkgs/gcc/v4.4.0/bin/g++ -c -x c -fpic -DVERBOSE -pthread -fcheck-new -Wno-deprecated -m32 -g -DBEDB_SUPPORT -D_XOPEN_SOURCE_EXTENDED=1 -DLINUX2 -I. -I.. -I/vobs/ua/include -I/vobs/rcc/include -I/grid/cva/test_ius/ius.10.2.b6/tools/inca/include -I/grid/cva/test_ius/ius.10.2.b6/tools/include -I/vobs/ua/Debug/include -I/vobs/ua/include -I/vobs/sys/include/x86-lx2-32 -I/grid/common/pkgs/purifyplus/v7.0.1/releases/purify.i386_linux2.7.0.1 ../coGuiApp.C", 1);
  75. }
  76. public void testCppCompilerInvocation3() {
  77. testCompilerInvocation(ItemProperties.LanguageKind.C, "/grid/common/pkgs/gcc/v4.4.0/bin/gcc -c -fpic -DVERBOSE -pthread -fcheck-new -Wno-deprecated -m32 -g -DBEDB_SUPPORT -D_XOPEN_SOURCE_EXTENDED=1 -DLINUX2 -I. -I.. -I/vobs/ua/include -I/vobs/rcc/include -I/grid/cva/test_ius/ius.10.2.b6/tools/inca/include -I/grid/cva/test_ius/ius.10.2.b6/tools/include -I/vobs/ua/Debug/include -I/vobs/ua/include -I/vobs/sys/include/x86-lx2-32 -I/grid/common/pkgs/purifyplus/v7.0.1/releases/purify.i386_linux2.7.0.1 ../coGuiApp.c", 1);
  78. }
  79. public void testCppCompilerInvocation4() {
  80. testCompilerInvocation(ItemProperties.LanguageKind.CPP, "/grid/common/pkgs/gcc/v4.4.0/bin/gcc -c -x c++ -fpic -DVERBOSE -pthread -fcheck-new -Wno-deprecated -m32 -g -DBEDB_SUPPORT -D_XOPEN_SOURCE_EXTENDED=1 -DLINUX2 -I. -I.. -I/vobs/ua/include -I/vobs/rcc/include -I/grid/cva/test_ius/ius.10.2.b6/tools/inca/include -I/grid/cva/test_ius/ius.10.2.b6/tools/include -I/vobs/ua/Debug/include -I/vobs/ua/include -I/vobs/sys/include/x86-lx2-32 -I/grid/common/pkgs/purifyplus/v7.0.1/releases/purify.i386_linux2.7.0.1 ../coGuiApp.c", 1);
  81. }
  82. public void testMultySources() {
  83. testCompilerInvocation(ItemProperties.LanguageKind.CPP, "c++ -g3 -gdwarf-2 -o container_1 container_1a.cc container_1b.cc", 2);
  84. }
  85. public void testArtifatC() {
  86. testLanguageArtifact("c++", "gcc -x c++ -g3 -gdwarf-2 -o qq qq.cc");
  87. testLanguageArtifact("c99", "cc -g3 -gdwarf-2 -xc99 -o qq qq.cc");
  88. testLanguageArtifact("c99", "gcc -g3 -gdwarf-2 -std=c99 -o qq qq.cc");
  89. testLanguageArtifact("c89", "gcc -g3 -gdwarf-2 -std=c89 -o qq qq.cc");
  90. }
  91. public void testArtifatCpp() {
  92. testLanguageArtifact("c", "g++ -x c -g3 -gdwarf-2 -o qq qq.cc");
  93. testLanguageArtifact("c++11", "g++ -g3 -std=c++0x -gdwarf-2 -o qq qq.cc");
  94. testLanguageArtifact("c++11", "g++ -g3 -std=c++11 -gdwarf-2 -o qq qq.cc");
  95. testLanguageArtifact("c++11", "g++ -g3 -std=gnu++0x -gdwarf-2 -o qq qq.cc");
  96. testLanguageArtifact("c++11", "g++ -g3 -std=gnu++11 -gdwarf-2 -o qq qq.cc");
  97. }
  98. /**
  99. make:
  100. cc -DAA=3 -DAA1='3' -DAA2="3" -DBB=\"3\" "-DBB1='3'" '-DBB2="3"' -DBB3=\'3\' "-DBB4=\"3\"" -DBB5='"3"' -c qq.c
  101. build log:
  102. cc -DAA=3 -DAA1='3' -DAA2="3" -DBB=\"3\" "-DBB1='3'" '-DBB2="3"' -DBB3=\'3\' "-DBB4=\"3\"" -DBB5='"3"' -c qq.c
  103. compile line:
  104. cc -DAA='3' -DAA1='3' -DAA2='3' -DBB='"3"' -DBB1=''3'' -DBB2='"3"' -DBB3=''3'' -DBB4='"3"' -DBB5='"3"' -c qq.c
  105. exec log:
  106. cc -DAA=3 -DAA1=3 -DAA2=3 -DBB="3" -DBB1='3' -DBB2="3" -DBB3='3' -DBB4="3" -DBB5="3" -c qq.c
  107. dwarf:
  108. cc AA=3 AA1=3 AA2=3 BB="3" BB1='3' BB2="3" BB3='3' BB4="3" BB5="3"
  109. * Test of scanCommandLine method, of class DwarfSource.
  110. */
  111. public void testProcessLine() {
  112. String build = "cc -DAA=3 -DAA1='3' -DAA2=\"3\" -DBB=\\\"3\\\" \"-DBB1='3'\" '-DBB2=\"3\"' -DBB3=\\\'3\\\' \"-DBB4=\\\"3\\\"\" -DBB5='\"3\"' -c qq.c";
  113. String compile = "cc -DAA='3' -DAA1='3' -DAA2='3' -DBB='\"3\"' -DBB1=''3'' -DBB2='\"3\"' -DBB3=''3'' -DBB4='\"3\"' -DBB5='\"3\"' -c qq.c";
  114. String exec = "cc -DAA=3 -DAA1=3 -DAA2=3 -DBB=\"3\" -DBB1='3' -DBB2=\"3\" -DBB3='3' -DBB4=\"3\" -DBB5=\"3\" -c qq.c";
  115. String expResult =
  116. "Source:qq.c\n"+
  117. "Macros:\n"+
  118. "AA=3\n"+
  119. "AA1=3\n"+
  120. "AA2=3\n"+
  121. "BB=\"3\"\n"+
  122. "BB1='3'\n"+
  123. "BB2=\"3\"\n"+
  124. "BB3='3'\n"+
  125. "BB4=\"3\"\n"+
  126. "BB5=\"3\"\n"+
  127. "Paths:";
  128. String result = processLine(build, DiscoveryUtils.LogOrigin.BuildLog);
  129. assertDocumentText(build, expResult, result);
  130. result = processLine(compile, DiscoveryUtils.LogOrigin.DwarfCompileLine);
  131. assertDocumentText(compile, expResult, result);
  132. result = processLine(exec, DiscoveryUtils.LogOrigin.ExecLog);
  133. assertDocumentText(exec, expResult, result);
  134. }
  135. /**
  136. * Test of scanCommandLine method, of class DwarfSource.
  137. */
  138. public void testLinuxCommandLine() {
  139. String line = "gcc -Wp,-MD,kernel/.bounds.s.d -nostdinc -isystem /usr/lib/gcc/x86_64-pc-linux-gnu/4.3.2/include -D__KERNEL__ " +
  140. "-Iinclude -I/export/home/av202691/NetBeansProjects/linux-2.6.28-gentoo-r5/arch/x86/include " +
  141. "-include include/linux/autoconf.h -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs " +
  142. "-fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -O2 " +
  143. "-m64 -march=core2 -mno-red-zone -mcmodel=kernel -funit-at-a-time -maccumulate-outgoing-args " +
  144. "-DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables " +
  145. "-mno-sse -mno-mmx -mno-sse2 -mno-3dnow -Iarch/x86/include/asm/mach-default -fno-stack-protector -fomit-frame-pointer " +
  146. "-Wdeclaration-after-statement -Wno-pointer-sign -fwrapv " +
  147. "-D\"KBUILD_STR(s)=#s\" -D\"KBUILD_BASENAME=KBUILD_STR(bounds)\" -D\"KBUILD_MODNAME=KBUILD_STR(bounds)\" -fverbose-asm -S -o kernel/bounds.s kernel/bounds.c";
  148. String expResult =
  149. "Source:kernel/bounds.c\n"+
  150. "Macros:\n"+
  151. "CONFIG_AS_CFI=1\n"+
  152. "CONFIG_AS_CFI_SIGNAL_FRAME=1\n"+
  153. "KBUILD_BASENAME=KBUILD_STR(bounds)\n"+
  154. "KBUILD_MODNAME=KBUILD_STR(bounds)\n"+
  155. "KBUILD_STR(s)=#s\n"+
  156. "__KERNEL__\n"+
  157. "Paths:\n"+
  158. "/usr/lib/gcc/x86_64-pc-linux-gnu/4.3.2/include\n"+
  159. "include\n"+
  160. "/export/home/av202691/NetBeansProjects/linux-2.6.28-gentoo-r5/arch/x86/include\n"+
  161. "include/linux/autoconf.h\n"+
  162. "arch/x86/include/asm/mach-default";
  163. String result = processLine(line, DiscoveryUtils.LogOrigin.BuildLog);
  164. assertDocumentText(line, expResult, result);
  165. }
  166. /**
  167. * Test of scanCommandLine method, of class DwarfSource.
  168. */
  169. public void testChromCommandLine() {
  170. String line = "gcc -DNSS_ENABLE_ZLIB \"-DSHLIB_PREFIX=\\\"lib\\\"\" "+
  171. "\"-DSHLIB_SUFFIX=\\\"so\\\"\" \"-DSHLIB_VERSION=\\\"3\\\"\" "+
  172. "\"-DSOFTOKEN_SHLIB_VERSION=\\\"3\\\"\" "+
  173. "-DUSE_UTIL_DIRECTLY -c -o out/Release/obj.target/ssl/net/third_party/nss/ssl/sslcon.o net/third_party/nss/ssl/sslcon.c";
  174. String expResult =
  175. "Source:net/third_party/nss/ssl/sslcon.c\n"+
  176. "Macros:\n"+
  177. "NSS_ENABLE_ZLIB\n"+
  178. "SHLIB_PREFIX=\"lib\"\n"+
  179. "SHLIB_SUFFIX=\"so\"\n"+
  180. "SHLIB_VERSION=\"3\"\n"+
  181. "SOFTOKEN_SHLIB_VERSION=\"3\"\n"+
  182. "USE_UTIL_DIRECTLY\n"+
  183. "Paths:";
  184. String result = processLine(line, DiscoveryUtils.LogOrigin.BuildLog);
  185. assertDocumentText(line, expResult, result);
  186. }
  187. /**
  188. * Test of scanCommandLine method, of class DwarfSource.
  189. */
  190. public void testFirefoxCommandLine() {
  191. String line = "c++ -o nsDependentString.o -c -I../../../dist/include/system_wrappers "+
  192. "-include /mozilla-1.9.1/config/gcc_hidden.h "+
  193. "-DMOZILLA_INTERNAL_API -DOSTYPE=\\\"Linux2.6\\\" -DOSARCH=Linux -D_IMPL_NS_COM "+
  194. "-I/mozilla-1.9.1/xpcom/string/src -I. "+
  195. "-I../../../dist/include/xpcom -I../../../dist/include -I../../../dist/include/string "+
  196. "-I/mozilla-1.9.1/ff-dbg/dist/include/nspr "+
  197. "-fPIC -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth "+
  198. "-Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof "+
  199. "-Wno-long-long -pedantic -g3 -gdwarf-2 -fno-strict-aliasing -fshort-wchar -pthread "+
  200. "-pipe -DDEBUG -D_DEBUG -DDEBUG_av202691 -DTRACING -g -fno-inline -DMOZILLA_CLIENT "+
  201. "-include ../../../mozilla-config.h -Wp,-MD,.deps/nsDependentString.pp "+
  202. "/mozilla-1.9.1/xpcom/string/src/nsDependentString.cpp";
  203. String expResult =
  204. "Source:/mozilla-1.9.1/xpcom/string/src/nsDependentString.cpp\n"+
  205. "Macros:\n"+
  206. "DEBUG\n"+
  207. "DEBUG_av202691\n"+
  208. "MOZILLA_CLIENT\n"+
  209. "MOZILLA_INTERNAL_API\n"+
  210. "OSARCH=Linux\n"+
  211. "OSTYPE=\"Linux2.6\"\n"+
  212. "TRACING\n"+
  213. "_DEBUG\n"+
  214. "_IMPL_NS_COM\n"+
  215. "Paths:\n"+
  216. "../../../dist/include/system_wrappers\n"+
  217. "/mozilla-1.9.1/config/gcc_hidden.h\n"+
  218. "/mozilla-1.9.1/xpcom/string/src\n"+
  219. ".\n"+
  220. "../../../dist/include/xpcom\n"+
  221. "../../../dist/include\n"+
  222. "../../../dist/include/string\n"+
  223. "/mozilla-1.9.1/ff-dbg/dist/include/nspr\n"+
  224. "../../../mozilla-config.h";
  225. String result = processLine(line, DiscoveryUtils.LogOrigin.BuildLog);
  226. assertDocumentText(line, expResult, result);
  227. }
  228. public void testCygdrive() {
  229. String CYGWIN_PATH = ":/cygwin"; // NOI18N
  230. String path = "D:/cygwin_dir/lib/gcc/i686-pc-cygwin/3.4.4/include";
  231. String cygwinPath = null;
  232. int i = path.toLowerCase().indexOf(CYGWIN_PATH);
  233. if (i > 0) {
  234. if (cygwinPath == null) {
  235. cygwinPath = "" + Character.toUpperCase(path.charAt(0)) + CYGWIN_PATH; // NOI18N
  236. for(i = i + CYGWIN_PATH.length();i < path.length();i++){
  237. char c = path.charAt(i);
  238. if (c == '/'){
  239. break;
  240. }
  241. cygwinPath+=""+c;
  242. }
  243. }
  244. }
  245. assertEquals(cygwinPath, "D:/cygwin_dir");
  246. }
  247. public void testCygdrive2() {
  248. //String res =CompilerSetManager.getCygwinBase();
  249. String res ="D:\\cygwin_dir\\bin";
  250. res = res.substring(0, res.length() - 4).replace("\\", "/"); // NOI18N
  251. if (res != null && res.endsWith("/")){
  252. res = res.substring(0,res.length()-1);
  253. }
  254. assertEquals(res, "D:/cygwin_dir");
  255. }
  256. public void testCygwinCommandLine() {
  257. String line = "gcc -g -O3 -Ospace --diag_suppress=1295 --thumb --apcs=/interwork --cpu Cortex-M3 "
  258. + "-DENABLE_RTX -D__RTX -DUSE_PROPERTIES_FROM_FS -DUSE_MCBSTM32F200 -DUSE_MDK -DENABLE_JSR_75=1 "
  259. + "-DENABLE_CBS=1 -DENABLE_JAVA_LOGGING=1 -I`cygpath -m /tools/taiga/output/esa_rtx_mdk_impng/javacall/inc` "
  260. + "-I/tools/taiga/platform/modules/stm32f2xx/inc -I/tools/taiga/platform/modules/mcbstm32f200/inc "
  261. + "-I\"/tools/taiga/cldc/src/anilib/share\" "
  262. + "-I/tools/taiga/platform/modules/usbd/inc --default_extension=o -c "
  263. + "-o`cygpath -m /tools/taiga/output/esa_rtx_mdk_impng/javacall/obj/device_info.o` "
  264. + "'D:\\tools\\taiga\\deviceaccess\\src\\native\\KNI_I2C.c'";
  265. String expResult =
  266. "Source:D:\\tools\\taiga\\deviceaccess\\src\\native\\KNI_I2C.c\n"+
  267. "Macros:\n"+
  268. "ENABLE_CBS=1\n"+
  269. "ENABLE_JAVA_LOGGING=1\n"+
  270. "ENABLE_JSR_75=1\n"+
  271. "ENABLE_RTX\n"+
  272. "USE_MCBSTM32F200\n"+
  273. "USE_MDK\n"+
  274. "USE_PROPERTIES_FROM_FS\n"+
  275. "__RTX\n"+
  276. "Paths:\n"+
  277. "/tools/taiga/output/esa_rtx_mdk_impng/javacall/inc\n"+
  278. "/tools/taiga/platform/modules/stm32f2xx/inc\n"+
  279. "/tools/taiga/platform/modules/mcbstm32f200/inc\n"+
  280. "/tools/taiga/cldc/src/anilib/share\n"+
  281. "/tools/taiga/platform/modules/usbd/inc";
  282. String result = processLine(line, DiscoveryUtils.LogOrigin.BuildLog);
  283. assertDocumentText(line, expResult, result);
  284. }
  285. public void testCygwinCommandLine2() {
  286. String line = "gcc -g -O3 -Ospace --diag_suppress=1295 --thumb --apcs=/interwork --cpu Cortex-M3 "
  287. + "-DENABLE_RTX -D__RTX -DUSE_PROPERTIES_FROM_FS -DUSE_MCBSTM32F200 -DUSE_MDK -DENABLE_JSR_75=1 "
  288. + "-DENABLE_CBS=1 -DENABLE_JAVA_LOGGING=1 -I`cygpath -m /tools/taiga/output/esa_rtx_mdk_impng/javacall/inc` "
  289. + "-I/tools/taiga/platform/modules/stm32f2xx/inc -I/tools/taiga/platform/modules/mcbstm32f200/inc "
  290. + "-I\"/tools/taiga/cldc/src/anilib/share\" "
  291. + "-I/tools/taiga/platform/modules/usbd/inc --default_extension=o -c "
  292. + "-o`cygpath -m /tools/taiga/output/esa_rtx_mdk_impng/javacall/obj/device_info.o` "
  293. + "`cygpath -m /tools/taiga/javacall-com/implementation/rtx/midp/device_info.c`";
  294. String expResult =
  295. "Source:/tools/taiga/javacall-com/implementation/rtx/midp/device_info.c\n"+
  296. "Macros:\n"+
  297. "ENABLE_CBS=1\n"+
  298. "ENABLE_JAVA_LOGGING=1\n"+
  299. "ENABLE_JSR_75=1\n"+
  300. "ENABLE_RTX\n"+
  301. "USE_MCBSTM32F200\n"+
  302. "USE_MDK\n"+
  303. "USE_PROPERTIES_FROM_FS\n"+
  304. "__RTX\n"+
  305. "Paths:\n"+
  306. "/tools/taiga/output/esa_rtx_mdk_impng/javacall/inc\n"+
  307. "/tools/taiga/platform/modules/stm32f2xx/inc\n"+
  308. "/tools/taiga/platform/modules/mcbstm32f200/inc\n"+
  309. "/tools/taiga/cldc/src/anilib/share\n"+
  310. "/tools/taiga/platform/modules/usbd/inc";
  311. String result = processLine(line, DiscoveryUtils.LogOrigin.BuildLog);
  312. assertDocumentText(line, expResult, result);
  313. }
  314. /**
  315. * Test of scanCommandLine method, of class DwarfSource.
  316. */
  317. public void testScanCommandLine() {
  318. String line = "/set/c++/bin/5.9/intel-S2/prod/bin/CC -c -g -DHELLO=75 -Idist main.cc -Qoption ccfe -prefix -Qoption ccfe .XAKABILBpivFlIc.";
  319. String expResult = "Source:main.cc\nMacros:\nHELLO=75\nPaths:\ndist";
  320. String result = processLine(line, DiscoveryUtils.LogOrigin.DwarfCompileLine);
  321. assertDocumentText(line, expResult, result);
  322. }
  323. /**
  324. * Test of scanCommandLine method, of class DwarfSource.
  325. */
  326. public void testScanCommandLine2() {
  327. String line = "/opt/SUNWspro/bin/cc -xarch=amd64 -Ui386 -U__i386 -xO3 ../../intel/amd64/ml/amd64.il " +
  328. "../../i86pc/ml/amd64.il -D_ASM_INLINES -Xa -xspace -Wu,-xmodel=kernel -Wu,-save_args -v " +
  329. "-xildoff -g -xc99=%all -W0,-noglobal -g3 -gdwarf-2 -g3 -gdwarf-2 -errtags=yes -errwarn=%all " +
  330. "-W0,-xglobalstatic -xstrconst -DDIS_MEM -D_KERNEL -D_SYSCALL32 -D_SYSCALL32_IMPL -D_ELF64 " +
  331. "-I../../i86pc -I/export/opensolaris/testws77/usr/src/common -I../../intel -Y I,../../common " +
  332. "-c -o debug64/cpupm.o ../../i86pc/os/cpupm.c";
  333. String expResult = "Source:../../i86pc/os/cpupm.c\n" +
  334. "Macros:\n" +
  335. "DIS_MEM\n" +
  336. "_ASM_INLINES\n" +
  337. "_ELF64\n" +
  338. "_KERNEL\n" +
  339. "_SYSCALL32\n" +
  340. "_SYSCALL32_IMPL\n" +
  341. "Undefs:\n" +
  342. "i386\n" +
  343. "__i386\n" +
  344. "Paths:\n" +
  345. "../../i86pc\n" +
  346. "/export/opensolaris/testws77/usr/src/common\n" +
  347. "../../intel" +
  348. "\n../../common";
  349. String result = processLine(line, DiscoveryUtils.LogOrigin.DwarfCompileLine);
  350. assertDocumentText(line, expResult, result);
  351. }
  352. /**
  353. * Test of undef
  354. */
  355. public void testUndef() {
  356. String line = "gcc -E -v -DA -UA file.cc 2>/dev/null";
  357. String expResult = "Source:file.cc\n" +
  358. "Macros:\n" +
  359. "Paths:";
  360. String result = processLine(line, DiscoveryUtils.LogOrigin.DwarfCompileLine);
  361. assertDocumentText(line, expResult, result);
  362. }
  363. /**
  364. * Test of undef
  365. */
  366. public void testUndef2() {
  367. String line = "gcc -E -v -DA -UA -DA file.cc 2>/dev/null";
  368. String expResult = "Source:file.cc\n" +
  369. "Macros:\n" +
  370. "A\n" +
  371. "Paths:";
  372. String result = processLine(line, DiscoveryUtils.LogOrigin.DwarfCompileLine);
  373. assertDocumentText(line, expResult, result);
  374. }
  375. /**
  376. * Test of undef
  377. */
  378. public void testUndef3() {
  379. String line = "gcc -E -v -UA -DA file.cc 2>/dev/null";
  380. String expResult = "Source:file.cc\n" +
  381. "Macros:\n" +
  382. "A\n" +
  383. "Paths:";
  384. String result = processLine(line, DiscoveryUtils.LogOrigin.DwarfCompileLine);
  385. assertDocumentText(line, expResult, result);
  386. }
  387. /**
  388. * Test of undef
  389. */
  390. public void testUndef4() {
  391. String line = "gcc -E -v -UA -UA -DA file.cc 2>/dev/null";
  392. String expResult = "Source:file.cc\n" +
  393. "Macros:\n" +
  394. "A\n" +
  395. "Paths:";
  396. String result = processLine(line, DiscoveryUtils.LogOrigin.DwarfCompileLine);
  397. assertDocumentText(line, expResult, result);
  398. }
  399. /**
  400. * Test of undef
  401. */
  402. public void testUndef5() {
  403. String line = "gcc -E -v -DA -DA -UA -UA file.cc 2>/dev/null";
  404. String expResult = "Source:file.cc\n" +
  405. "Macros:\n" +
  406. "Undefs:\n" +
  407. "A\n" +
  408. "Paths:";
  409. String result = processLine(line, DiscoveryUtils.LogOrigin.DwarfCompileLine);
  410. assertDocumentText(line, expResult, result);
  411. }
  412. /**
  413. * Test of scanCommandLine method, of class DwarfSource.
  414. */
  415. public void testScanCommandLine4() {
  416. String line = "/opt/onbld/bin/i386/cw -_cc -xO3 -xarch=amd64 -Ui386 -U__i386 -K pic -Xa " +
  417. "-xildoff -errtags=yes -errwarn=%all -erroff=E_EMPTY_TRANSLATION_UNIT " +
  418. "-erroff=E_STATEMENT_NOT_REACHED -erroff=E_UNRECOGNIZED_PRAGMA_IGNORED -xc99=%all " +
  419. "-D_XOPEN_SOURCE=600 -D__EXTENSIONS__=1 -W0,-xglobalstatic -v -xstrconst -g " +
  420. "-xc99=%all -D_XOPEN_SOURCE=600 -D__EXTENSIONS__=1 -W0,-noglobal -_gcc=-fno-dwarf2-indirect-strings " +
  421. "-xdebugformat=stabs -DTEXT_DOMAIN=\\\"SUNW_OST_OSLIB\\\" -D_TS_ERRNO " +
  422. "-Isrc/cmd/ksh93 -I../common/include -I/export/home/thp/opensolaris/proto/root_i386/usr/include/ast " +
  423. "-DKSHELL -DSHOPT_BRACEPAT -DSHOPT_CMDLIB_BLTIN=0 '-DSH_CMDLIB_DIR=\"/usr/ast/bin\"' " +
  424. "'-DSHOPT_CMDLIB_HDR=\"solaris_cmdlist.h\"' -DSHOPT_DYNAMIC -DSHOPT_ESH -DSHOPT_FILESCAN " +
  425. "-DSHOPT_HISTEXPAND -DSHOPT_KIA -DSHOPT_MULTIBYTE -DSHOPT_NAMESPACE -DSHOPT_OPTIMIZE " +
  426. "-DSHOPT_PFSH -DSHOPT_RAWONLY -DSHOPT_SUID_EXEC -DSHOPT_SYSRC -DSHOPT_VSH -D_BLD_shell " +
  427. "-D_PACKAGE_ast -DERROR_CONTEXT_T=Error_context_t " +
  428. "'-DUSAGE_LICENSE= \"[-author?David Korn <dgk@research.att.com>]\" " +
  429. "\"[-copyright?Copyright (c) 1982-2007 AT&T Knowledge Ventures]\" " +
  430. "\"[-license?http://www.opensource.org/licenses/cpl1.0.txt]\" \"[--catalog?libshell]\"' " +
  431. "-DPIC -D_REENTRANT -c -o pics/data/builtins.o ../common/data/builtins.c";
  432. String expResult = "Source:../common/data/builtins.c\n" +
  433. "Macros:\n" +
  434. "ERROR_CONTEXT_T=Error_context_t\n" +
  435. "KSHELL\n" +
  436. "PIC\n" +
  437. "SHOPT_BRACEPAT\n" +
  438. "SHOPT_CMDLIB_BLTIN=0\n" +
  439. "SHOPT_CMDLIB_HDR=\"solaris_cmdlist.h\"\n" +
  440. "SHOPT_DYNAMIC\n" +
  441. "SHOPT_ESH\n" +
  442. "SHOPT_FILESCAN\n" +
  443. "SHOPT_HISTEXPAND\n" +
  444. "SHOPT_KIA\n" +
  445. "SHOPT_MULTIBYTE\n" +
  446. "SHOPT_NAMESPACE\n" +
  447. "SHOPT_OPTIMIZE\n" +
  448. "SHOPT_PFSH\n" +
  449. "SHOPT_RAWONLY\n" +
  450. "SHOPT_SUID_EXEC\n" +
  451. "SHOPT_SYSRC\n" +
  452. "SHOPT_VSH\n" +
  453. "SH_CMDLIB_DIR=\"/usr/ast/bin\"\n" +
  454. "TEXT_DOMAIN=\"SUNW_OST_OSLIB\"\n" +
  455. "USAGE_LICENSE=\"[-author?David Korn <dgk@research.att.com>]\" \"[-copyright?Copyright (c) 1982-2007 AT&T Knowledge Ventures]\" \"[-license?http://www.opensource.org/licenses/cpl1.0.txt]\" \"[--catalog?libshell]\"\n" +
  456. "_BLD_shell\n" +
  457. "_PACKAGE_ast\n" +
  458. "_REENTRANT\n" +
  459. "_TS_ERRNO\n" +
  460. "_XOPEN_SOURCE=600\n" +
  461. "__EXTENSIONS__=1\n" +
  462. "Undefs:\n" +
  463. "i386\n" +
  464. "__i386\n" +
  465. "Paths:\n" +
  466. "src/cmd/ksh93\n" +
  467. "../common/include\n" +
  468. "/export/home/thp/opensolaris/proto/root_i386/usr/include/ast";
  469. String result = processLine(line, DiscoveryUtils.LogOrigin.BuildLog);
  470. assertDocumentText(line, expResult, result);
  471. }
  472. /**
  473. * Test of scanCommandLine method, of class DwarfSource.
  474. */
  475. public void testGccLine() {
  476. String line = "/bin/sh ./libtool --tag=CXX --mode=compile /export/home/gcc/gccobj/gcc/xgcc -shared-libgcc -B/export/home/gcc/gccobj/gcc/ -nostdinc++ -L/export/home/gcc/gccobj/i386-pc-solaris2.11/libstdc++-v3/src -L/export/home/gcc/gccobj/i386-pc-solaris2.11/libstdc++-v3/src/.libs -B/usr/local/i386-pc-solaris2.11/bin/ -B/usr/local/i386-pc-solaris2.11/lib/ -isystem /usr/local/i386-pc-solaris2.11/include -isystem /usr/local/i386-pc-solaris2.11/sys-include -DHAVE_CONFIG_H -I. -I../../../libjava -I./include -I./gcj -I../../../libjava -Iinclude -I../../../libjava/include -I/export/home/gcc/boehm-gc/include -DGC_SOLARIS_THREADS=1 -DGC_SOLARIS_PTHREADS=1 -DSOLARIS25_PROC_VDB_BUG_FIXED=1 -DSILENT=1 -DNO_SIGNALS=1 -DALL_INTERIOR_POINTERS=1 -DJAVA_FINALIZATION=1 -DGC_GCJ_SUPPORT=1 -DATOMIC_UNCOLLECTABLE=1 -I../../../libjava/libltdl -I../../../libjava/libltdl -I../../../libjava/.././libjava/../gcc -I../../../libjava/../zlib -I../../../libjava/../libffi/include -I../libffi/include -O2 -g3 -gdwarf-2 -fno-rtti -fnon-call-exceptions -fdollars-in-identifiers -Wswitch-enum -ffloat-store -I/usr/openwin/include -W -Wall -D_GNU_SOURCE -DPREFIX=\"\\\"/usr/local\\\"\" -DLIBDIR=\"\\\"/usr/local/lib\\\"\" -DBOOT_CLASS_PATH=\"\\\"/usr/local/share/java/libgcj-3.4.3.jar\\\"\" -g3 -gdwarf-2 -MD -MT gnu/gcj/natCore.lo -MF gnu/gcj/natCore.pp -c -o gnu/gcj/natCore.lo ../../../libjava/gnu/gcj/natCore.cc";
  477. String expResult ="Source:../../../libjava/gnu/gcj/natCore.cc\n" +
  478. "Macros:\n" +
  479. "ALL_INTERIOR_POINTERS=1\n" +
  480. "ATOMIC_UNCOLLECTABLE=1\n" +
  481. "BOOT_CLASS_PATH=\"/usr/local/share/java/libgcj-3.4.3.jar\"\n" +
  482. "GC_GCJ_SUPPORT=1\n" +
  483. "GC_SOLARIS_PTHREADS=1\n" +
  484. "GC_SOLARIS_THREADS=1\n" +
  485. "HAVE_CONFIG_H\n" +
  486. "JAVA_FINALIZATION=1\n" +
  487. "LIBDIR=\"/usr/local/lib\"\n" +
  488. "NO_SIGNALS=1\n" +
  489. "PREFIX=\"/usr/local\"\n" +
  490. "SILENT=1\n" +
  491. "SOLARIS25_PROC_VDB_BUG_FIXED=1\n" +
  492. "_GNU_SOURCE\n" +
  493. "Paths:\n" +
  494. "/usr/local/i386-pc-solaris2.11/include\n" +
  495. "/usr/local/i386-pc-solaris2.11/sys-include\n" +
  496. ".\n" +
  497. "../../../libjava\n" +
  498. "./include\n" +
  499. "./gcj\n" +
  500. "../../../libjava\n" +
  501. "include\n" +
  502. "../../../libjava/include\n" +
  503. "/export/home/gcc/boehm-gc/include\n" +
  504. "../../../libjava/libltdl\n" +
  505. "../../../libjava/libltdl\n" +
  506. "../../../libjava/.././libjava/../gcc\n" +
  507. "../../../libjava/../zlib\n" +
  508. "../../../libjava/../libffi/include\n" +
  509. "../libffi/include\n" +
  510. "/usr/openwin/include";
  511. String result = processLine(line, DiscoveryUtils.LogOrigin.BuildLog);
  512. assertDocumentText(line, expResult, result);
  513. }
  514. //gcc -DDEFAULT_BASEDIR=\"/usr/local\" -DDATADIR="\"/usr/local/var\"" -DDEFAULT_CHARSET_HOME="\"/usr/local\"" -DSHAREDIR="\"/usr/local/share/mysql\"" -DDEFAULT_HOME_ENV=MYSQL_HOME -DDEFAULT_GROUP_SUFFIX_ENV=MYSQL_GROUP_SUFFIX -DDEFAULT_SYSCONFDIR="\"/usr/local/etc\"" -DHAVE_CONFIG_H -I. -I../include -I../include -I../include -I. -O3 -DHAVE_RWLOCK_T -DUNIV_SOLARIS -MT my_init.o -MD -MP -MF .deps/my_init.Tpo -c -o my_init.o my_init.c
  515. public void testGccLine2() {
  516. String line = "gcc -DDEFAULT_BASEDIR=\\\"/usr/local\\\" -DDATADIR=\"\\\"/usr/local/var\\\"\" -DDEFAULT_CHARSET_HOME=\"\\\"/usr/local\\\"\" -DSHAREDIR=\"\\\"/usr/local/share/mysql\\\"\" -DDEFAULT_HOME_ENV=MYSQL_HOME -DDEFAULT_GROUP_SUFFIX_ENV=MYSQL_GROUP_SUFFIX -DDEFAULT_SYSCONFDIR=\"\\\"/usr/local/etc\\\"\" -DHAVE_CONFIG_H -I. -I../include -O3 -DHAVE_RWLOCK_T -DUNIV_SOLARIS -MT my_init.o -MD -MP -MF .deps/my_init.Tpo -c -o my_init.o my_init.c";
  517. String expResult =
  518. "Source:my_init.c\n" +
  519. "Macros:\n" +
  520. "DATADIR=\"/usr/local/var\"\n" +
  521. "DEFAULT_BASEDIR=\"/usr/local\"\n" +
  522. "DEFAULT_CHARSET_HOME=\"/usr/local\"\n" +
  523. "DEFAULT_GROUP_SUFFIX_ENV=MYSQL_GROUP_SUFFIX\n" +
  524. "DEFAULT_HOME_ENV=MYSQL_HOME\n" +
  525. "DEFAULT_SYSCONFDIR=\"/usr/local/etc\"\n" +
  526. "HAVE_CONFIG_H\n" +
  527. "HAVE_RWLOCK_T\n" +
  528. "SHAREDIR=\"/usr/local/share/mysql\"\n" +
  529. "UNIV_SOLARIS\n" +
  530. "Paths:\n" +
  531. ".\n" +
  532. "../include";
  533. String result = processLine(line, DiscoveryUtils.LogOrigin.BuildLog);
  534. assertDocumentText(line, expResult, result);
  535. }
  536. public void testMSVCCompilerInvocation() {
  537. String line = "cl -Zi -Od -MDd -I/ws/cheetah/output/win32_mvm_debug/javacall/inc "+
  538. "/Zm1000 -DENABLE_CDC=0 -DENABLE_MIDP_MALLOC=1 -DENABLE_IMAGE_CACHE=1 "+
  539. "-DENABLE_ICON_CACHE=1 -DENABLE_I3_TEST=0 -DENABLE_NUTS_FRAMEWORK=0 "+
  540. "-DENABLE_NETWORK_INDICATOR=1 -DENABLE_MULTIPLE_ISOLATES=1 -DENABLE_MULTIPLE_DISPLAYS=0 "+
  541. "-DENABLE_JAVA_DEBUGGER=1 -DENABLE_NATIVE_APP_MANAGER=0 -DENABLE_NAMS_TEST_SERVICE=0 "+
  542. "-DENABLE_NATIVE_INSTALLER=0 -DENABLE_NATIVE_SUITE_STORAGE=0 -DENABLE_NATIVE_RMS=0 "+
  543. "-DENABLE_NATIVE_PTI=0 -DENABLE_MESSAGE_STRINGS=0 -DENABLE_CLDC_11=1 -DENABLE_VM_PROFILES=0 "+
  544. "-DENABLE_MONET=0 -DENABLE_SERVER_SOCKET=1 -DENABLE_JPEG=0 -DENABLE_DIRECT_DRAW=0 "+
  545. "-DENABLE_FILE_SYSTEM=1 -DENABLE_ON_DEVICE_DEBUG=1 -DENABLE_WTK_DEBUG=0 -DENABLE_AMS_FOLDERS=0 "+
  546. "-DENABLE_OCSP=0 -DENABLE_DYNAMIC_COMPONENTS=0 -DPROJECT_NAME='\"Sun Java Wireless Client\"' "+
  547. "-DAZZERT=1 -DENABLE_DEBUG=1 -DENABLE_CONTROL_ARGS_FROM_JAD=0 -DRELEASE='\"ap160621:11.28.08-19:33\"' "+
  548. "-DIMPL_VERSION='\"\"' -DFULL_VERSION='\"ap160621:11.28.08-19:33\"' -DROMIZING "+
  549. "-I/ws/cheetah/output/win32_mvm_debug/javacall/inc -DWIN32 -D_WINDOWS -D_DEBUG "+
  550. "-DAZZERT /W3 /nologo -DHARDWARE_LITTLE_ENDIAN=1 -DHOST_LITTLE_ENDIAN=1 "+
  551. "/D ROMIZING -DJVM_RELEASE_VERSION='1.1' -DJVM_BUILD_VERSION='internal' "+
  552. "-DJVM_NAME='phoneME Feature VM' /MDd /Zi /Od -DREQUIRES_JVMCONFIG_H=1 "+
  553. "-DENABLE_JSR_135=1 -DENABLE_MEDIA_RECORD "+
  554. "-I/ws/cheetah/midp/src/protocol/socket/include "+
  555. "-I/ws/cheetah/output/win32_mvm_debug/cldc/javacall_i386_vc/dist/include "+
  556. "-I/ws/cheetah/output/win32_mvm_debug/midp -I/ws/cheetah/output/win32_mvm_debug/pcsl/javacall_i386/inc "+
  557. "-I/ws/cheetah/abstractions/src/share/include -I/ws/cheetah/abstractions/src/cldc_application/native/include "+
  558. "-I/ws/cheetah/abstractions/src/cldc_application/native/javacall "+
  559. "-I/ws/cheetah/output/win32_mvm_debug/midp/generated -I/ws/cheetah/midp/src/configuration/properties_port/include "+
  560. "-I/ws/cheetah/midp/src/core/suspend_resume/sr_main/include -I/ws/cheetah/midp/src/core/suspend_resume/sr_vm/include "+
  561. "-I/ws/cheetah/midp/src/core/suspend_resume/sr_port/include -I/ws/cheetah/midp/src/core/crc32/include "+
  562. "-I/ws/cheetah/midp/src/core/jarutil/include -I/ws/cheetah/midp/src/core/global_status/include "+
  563. "-I/ws/cheetah/midp/src/core/kni_util/include -I/ws/cheetah/midp/src/core/libc_ext/include "+
  564. "-I/ws/cheetah/midp/src/core/log/javacall/include -I/ws/cheetah/midp/src/core/native_thread/include "+
  565. "-I/ws/cheetah/midp/src/core/native_thread/stubs/include -I/ws/cheetah/midp/src/core/resource_manager/include "+
  566. "-I/ws/cheetah/midp/src/core/timer_queue/include -I/ws/cheetah/midp/src/core/timer_queue/reference/include "+
  567. "-I/ws/cheetah/midp/src/core/timezone/include -I/ws/cheetah/midp/src/core/vm_services/include "+
  568. "-I/ws/cheetah/midp/src/core/memory/include -I/ws/cheetah/midp/src/core/storage/include "+
  569. "-I/ws/cheetah/midp/src/core/string/include -I/ws/cheetah/midp/src/events/eventqueue/include "+
  570. "-I/ws/cheetah/midp/src/events/eventqueue_port/include -I/ws/cheetah/midp/src/events/eventsystem/include "+
  571. "-I/ws/cheetah/midp/src/events/mastermode_port/include -I/ws/cheetah/midp/src/ams/ams_base/include "+
  572. "-I/ws/cheetah/midp/src/ams/ams_base_cldc/include -I/ws/cheetah/midp/src/ams/platform_request/include "+
  573. "-I/ws/cheetah/midp/src/ams/suitestore/internal_api/include -I/ws/cheetah/midp/src/ams/suitestore/internal_api/reference/native "+
  574. "-I/ws/cheetah/midp/src/ams/suitestore/common_api/include -I/ws/cheetah/midp/src/ams/suitestore/common_api/reference/native "+
  575. "-I/ws/cheetah/midp/src/ams/suitestore/task_manager_api/include -I/ws/cheetah/midp/src/ams/suitestore/task_manager_api/reference/native "+
  576. "-I/ws/cheetah/midp/src/ams/suitestore/installer_api/include -I/ws/cheetah/midp/src/ams/suitestore/installer_api/reference/native "+
  577. "-I/ws/cheetah/midp/src/ams/suitestore/recordstore_api/include -I/ws/cheetah/midp/src/ams/suitestore/recordstore_api/reference/native "+
  578. "-I/ws/cheetah/midp/src/ams/suitestore/secure_api/include -I/ws/cheetah/midp/src/ams/suitestore/secure_api/reference/native "+
  579. "-I/ws/cheetah/midp/src/ams/appmanager_ui_resources/include -I/ws/cheetah/midp/src/ams/example/ams_common/include "+
  580. "-I/ws/cheetah/midp/src/ams/example/ams_common_port/include -I/ws/cheetah/midp/src/ams/example/jams/include "+
  581. "-I/ws/cheetah/midp/src/ams/example/jams_port/javacall/native -I/ws/cheetah/midp/src/ams/example/ams_params/include "+
  582. "-I/ws/cheetah/midp/src/ams/example/ams_common/include -I/ws/cheetah/midp/src/ams/example/ams_common/include "+
  583. "-I/ws/cheetah/midp/src/ams/example/ams_common_port/include -I/ws/cheetah/midp/src/ams/example/javacall_common/include "+
  584. "-I/ws/cheetah/midp/src/ams/example/jams_port/include -I/ws/cheetah/midp/src/push/push_server/include "+
  585. "-I/ws/cheetah/midp/src/push/push_timer/include -I/ws/cheetah/midp/src/push/push_timer/javacall/include "+
  586. "-I/ws/cheetah/midp/src/i18n/i18n_main/include -I/ws/cheetah/midp/src/i18n/i18n_port/include "+
  587. "-I/ws/cheetah/midp/src/highlevelui/annunciator/include -I/ws/cheetah/midp/src/highlevelui/keymap/include "+
  588. "-I/ws/cheetah/midp/src/highlevelui/lcdlf/include -I/ws/cheetah/midp/src/highlevelui/lcdlf/lfjava/include "+
  589. "-I/ws/cheetah/midp/src/highlevelui/lfjport/include -I/ws/cheetah/midp/src/highlevelui/nim_port/include "+
  590. "-I/ws/cheetah/midp/src/highlevelui/javacall_application/javacall_app_common/include "+
  591. "-I/ws/cheetah/midp/src/highlevelui/javacall_application/javacall_mode_port/include "+
  592. "-I/ws/cheetah/midp/src/lowlevelui/graphics_api/include -I/ws/cheetah/midp/src/lowlevelui/putpixel_port/include "+
  593. "-I/ws/cheetah/midp/src/lowlevelui/graphics/include -I/ws/cheetah/midp/src/lowlevelui/graphics/gx_putpixel/include "+
  594. "-I/ws/cheetah/midp/src/lowlevelui/graphics/gx_putpixel/native -I/ws/cheetah/midp/src/lowlevelui/image_api/include "+
  595. "-I/ws/cheetah/midp/src/lowlevelui/image/include -I/ws/cheetah/midp/src/lowlevelui/image_decode/reference/native "+
  596. "-I/ws/cheetah/midp/src/lowlevelui/image_decode/include -I/ws/cheetah/midp/src/rms/record_store/include "+
  597. "-I/ws/cheetah/midp/src/rms/record_store/file_based/native -I/ws/cheetah/midp/src/security/crypto/include "+
  598. "-I/ws/cheetah/midp/src/security/file_digest/include -I/ws/cheetah/midp/src/protocol/gcf/include "+
  599. "-I/ws/cheetah/midp/src/protocol/file/include -I/ws/cheetah/midp/src/protocol/serial_port/include "+
  600. "-I/ws/cheetah/midp/src/protocol/socket/include -I/ws/cheetah/midp/src/protocol/udp/include "+
  601. "-I/ws/cheetah/midp/src/links/include -I/ws/cheetah/jsr135/src/cldc_application/native/common "+
  602. "-I/ws/cheetah/jsr135/src/share/components/direct-player/native -c "+
  603. "-Fo/ws/cheetah/output/win32_mvm_debug/midp/obj_g/i386/socketProtocol.o "+
  604. "`echo /ws/cheetah/midp/src/protocol/socket/reference/native/socketProtocol.c | xargs -n1 cygpath -w` "+
  605. "> /ws/cheetah/output/win32_mvm_debug/midp/makelog.out 2>&1; status=$?; cat /ws/cheetah/output/win32_mvm_debug/midp/makelog.out | "+
  606. "tee -a /ws/cheetah/output/win32_mvm_debug/midp/make.out; if [ $status -ne 0 ]; then false; else true; fi";
  607. String expResult ="Source:/ws/cheetah/midp/src/protocol/socket/reference/native/socketProtocol.c\n"+
  608. "Macros:\n"+
  609. "AZZERT\n"+
  610. "ENABLE_AMS_FOLDERS=0\n"+
  611. "ENABLE_CDC=0\n"+
  612. "ENABLE_CLDC_11=1\n"+
  613. "ENABLE_CONTROL_ARGS_FROM_JAD=0\n"+
  614. "ENABLE_DEBUG=1\n"+
  615. "ENABLE_DIRECT_DRAW=0\n"+
  616. "ENABLE_DYNAMIC_COMPONENTS=0\n"+
  617. "ENABLE_FILE_SYSTEM=1\n"+
  618. "ENABLE_I3_TEST=0\n"+
  619. "ENABLE_ICON_CACHE=1\n"+
  620. "ENABLE_IMAGE_CACHE=1\n"+
  621. "ENABLE_JAVA_DEBUGGER=1\n"+
  622. "ENABLE_JPEG=0\n"+
  623. "ENABLE_JSR_135=1\n"+
  624. "ENABLE_MEDIA_RECORD\n"+
  625. "ENABLE_MESSAGE_STRINGS=0\n"+
  626. "ENABLE_MIDP_MALLOC=1\n"+
  627. "ENABLE_MONET=0\n"+
  628. "ENABLE_MULTIPLE_DISPLAYS=0\n"+
  629. "ENABLE_MULTIPLE_ISOLATES=1\n"+
  630. "ENABLE_NAMS_TEST_SERVICE=0\n"+
  631. "ENABLE_NATIVE_APP_MANAGER=0\n"+
  632. "ENABLE_NATIVE_INSTALLER=0\n"+
  633. "ENABLE_NATIVE_PTI=0\n"+
  634. "ENABLE_NATIVE_RMS=0\n"+
  635. "ENABLE_NATIVE_SUITE_STORAGE=0\n"+
  636. "ENABLE_NETWORK_INDICATOR=1\n"+
  637. "ENABLE_NUTS_FRAMEWORK=0\n"+
  638. "ENABLE_OCSP=0\n"+
  639. "ENABLE_ON_DEVICE_DEBUG=1\n"+
  640. "ENABLE_SERVER_SOCKET=1\n"+
  641. "ENABLE_VM_PROFILES=0\n"+
  642. "ENABLE_WTK_DEBUG=0\n"+
  643. "FULL_VERSION=\"ap160621:11.28.08-19:33\"\n"+
  644. "HARDWARE_LITTLE_ENDIAN=1\n"+
  645. "HOST_LITTLE_ENDIAN=1\n"+
  646. "IMPL_VERSION=\"\"\n"+
  647. "JVM_BUILD_VERSION=internal\n"+
  648. "JVM_NAME=phoneME Feature VM\n"+
  649. "JVM_RELEASE_VERSION=1.1\n"+
  650. "PROJECT_NAME=\"Sun Java Wireless Client\"\n"+
  651. "RELEASE=\"ap160621:11.28.08-19:33\"\n"+
  652. "REQUIRES_JVMCONFIG_H=1\n"+
  653. "ROMIZING\n"+
  654. "WIN32\n"+
  655. "_DEBUG\n"+
  656. "_WINDOWS\n"+
  657. "Paths:\n"+
  658. "/ws/cheetah/output/win32_mvm_debug/javacall/inc\n"+
  659. "/ws/cheetah/output/win32_mvm_debug/javacall/inc\n"+
  660. "/ws/cheetah/midp/src/protocol/socket/include\n"+
  661. "/ws/cheetah/output/win32_mvm_debug/cldc/javacall_i386_vc/dist/include\n"+
  662. "/ws/cheetah/output/win32_mvm_debug/midp\n"+
  663. "/ws/cheetah/output/win32_mvm_debug/pcsl/javacall_i386/inc\n"+
  664. "/ws/cheetah/abstractions/src/share/include\n"+
  665. "/ws/cheetah/abstractions/src/cldc_application/native/include\n"+
  666. "/ws/cheetah/abstractions/src/cldc_application/native/javacall\n"+
  667. "/ws/cheetah/output/win32_mvm_debug/midp/generated\n"+
  668. "/ws/cheetah/midp/src/configuration/properties_port/include\n"+
  669. "/ws/cheetah/midp/src/core/suspend_resume/sr_main/include\n"+
  670. "/ws/cheetah/midp/src/core/suspend_resume/sr_vm/include\n"+
  671. "/ws/cheetah/midp/src/core/suspend_resume/sr_port/include\n"+
  672. "/ws/cheetah/midp/src/core/crc32/include\n"+
  673. "/ws/cheetah/midp/src/core/jarutil/include\n"+
  674. "/ws/cheetah/midp/src/core/global_status/include\n"+
  675. "/ws/cheetah/midp/src/core/kni_util/include\n"+
  676. "/ws/cheetah/midp/src/core/libc_ext/include\n"+
  677. "/ws/cheetah/midp/src/core/log/javacall/include\n"+
  678. "/ws/cheetah/midp/src/core/native_thread/include\n"+
  679. "/ws/cheetah/midp/src/core/native_thread/stubs/include\n"+
  680. "/ws/cheetah/midp/src/core/resource_manager/include\n"+
  681. "/ws/cheetah/midp/src/core/timer_queue/include\n"+
  682. "/ws/cheetah/midp/src/core/timer_queue/reference/include\n"+
  683. "/ws/cheetah/midp/src/core/timezone/include\n"+
  684. "/ws/cheetah/midp/src/core/vm_services/include\n"+
  685. "/ws/cheetah/midp/src/core/memory/include\n"+
  686. "/ws/cheetah/midp/src/core/storage/include\n"+
  687. "/ws/cheetah/midp/src/core/string/include\n"+
  688. "/ws/cheetah/midp/src/events/eventqueue/include\n"+
  689. "/ws/cheetah/midp/src/events/eventqueue_port/include\n"+
  690. "/ws/cheetah/midp/src/events/eventsystem/include\n"+
  691. "/ws/cheetah/midp/src/events/mastermode_port/include\n"+
  692. "/ws/cheetah/midp/src/ams/ams_base/include\n"+
  693. "/ws/cheetah/midp/src/ams/ams_base_cldc/include\n"+
  694. "/ws/cheetah/midp/src/ams/platform_request/include\n"+
  695. "/ws/cheetah/midp/src/ams/suitestore/internal_api/include\n"+
  696. "/ws/cheetah/midp/src/ams/suitestore/internal_api/reference/native\n"+
  697. "/ws/cheetah/midp/src/ams/suitestore/common_api/include\n"+
  698. "/ws/cheetah/midp/src/ams/suitestore/common_api/reference/native\n"+
  699. "/ws/cheetah/midp/src/ams/suitestore/task_manager_api/include\n"+
  700. "/ws/cheetah/midp/src/ams/suitestore/task_manager_api/reference/native\n"+
  701. "/ws/cheetah/midp/src/ams/suitestore/installer_api/include\n"+
  702. "/ws/cheetah/midp/src/ams/suitestore/installer_api/reference/native\n"+
  703. "/ws/cheetah/midp/src/ams/suitestore/recordstore_api/include\n"+
  704. "/ws/cheetah/midp/src/ams/suitestore/recordstore_api/reference/native\n"+
  705. "/ws/cheetah/midp/src/ams/suitestore/secure_api/include\n"+
  706. "/ws/cheetah/midp/src/ams/suitestore/secure_api/reference/native\n"+
  707. "/ws/cheetah/midp/src/ams/appmanager_ui_resources/include\n"+
  708. "/ws/cheetah/midp/src/ams/example/ams_common/include\n"+
  709. "/ws/cheetah/midp/src/ams/example/ams_common_port/include\n"+
  710. "/ws/cheetah/midp/src/ams/example/jams/include\n"+
  711. "/ws/cheetah/midp/src/ams/example/jams_port/javacall/native\n"+
  712. "/ws/cheetah/midp/src/ams/example/ams_params/include\n"+
  713. "/ws/cheetah/midp/src/ams/example/ams_common/include\n"+
  714. "/ws/cheetah/midp/src/ams/example/ams_common/include\n"+
  715. "/ws/cheetah/midp/src/ams/example/ams_common_port/include\n"+
  716. "/ws/cheetah/midp/src/ams/example/javacall_common/include\n"+
  717. "/ws/cheetah/midp/src/ams/example/jams_port/include\n"+
  718. "/ws/cheetah/midp/src/push/push_server/include\n"+
  719. "/ws/cheetah/midp/src/push/push_timer/include\n"+
  720. "/ws/cheetah/midp/src/push/push_timer/javacall/include\n"+
  721. "/ws/cheetah/midp/src/i18n/i18n_main/include\n"+
  722. "/ws/cheetah/midp/src/i18n/i18n_port/include\n"+
  723. "/ws/cheetah/midp/src/highlevelui/annunciator/include\n"+
  724. "/ws/cheetah/midp/src/highlevelui/keymap/include\n"+
  725. "/ws/cheetah/midp/src/highlevelui/lcdlf/include\n"+
  726. "/ws/cheetah/midp/src/highlevelui/lcdlf/lfjava/include\n"+
  727. "/ws/cheetah/midp/src/highlevelui/lfjport/include\n"+
  728. "/ws/cheetah/midp/src/highlevelui/nim_port/include\n"+
  729. "/ws/cheetah/midp/src/highlevelui/javacall_application/javacall_app_common/include\n"+
  730. "/ws/cheetah/midp/src/highlevelui/javacall_application/javacall_mode_port/include\n"+
  731. "/ws/cheetah/midp/src/lowlevelui/graphics_api/include\n"+
  732. "/ws/cheetah/midp/src/lowlevelui/putpixel_port/include\n"+
  733. "/ws/cheetah/midp/src/lowlevelui/graphics/include\n"+
  734. "/ws/cheetah/midp/src/lowlevelui/graphics/gx_putpixel/include\n"+
  735. "/ws/cheetah/midp/src/lowlevelui/graphics/gx_putpixel/native\n"+
  736. "/ws/cheetah/midp/src/lowlevelui/image_api/include\n"+
  737. "/ws/cheetah/midp/src/lowlevelui/image/include\n"+
  738. "/ws/cheetah/midp/src/lowlevelui/image_decode/reference/native\n"+
  739. "/ws/cheetah/midp/src/lowlevelui/image_decode/include\n"+
  740. "/ws/cheetah/midp/src/rms/record_store/include\n"+
  741. "/ws/cheetah/midp/src/rms/record_store/file_based/native\n"+
  742. "/ws/cheetah/midp/src/security/crypto/include\n"+
  743. "/ws/cheetah/midp/src/security/file_digest/include\n"+
  744. "/ws/cheetah/midp/src/protocol/gcf/include\n"+
  745. "/ws/cheetah/midp/src/protocol/file/include\n"+
  746. "/ws/cheetah/midp/src/protocol/serial_port/include\n"+
  747. "/ws/cheetah/midp/src/protocol/socket/include\n"+
  748. "/ws/cheetah/midp/src/protocol/udp/include\n"+
  749. "/ws/cheetah/midp/src/links/include\n"+
  750. "/ws/cheetah/jsr135/src/cldc_application/native/common\n"+
  751. "/ws/cheetah/jsr135/src/share/components/direct-player/native";
  752. String result = processLine(line, DiscoveryUtils.LogOrigin.BuildLog);
  753. assertDocumentText(line, expResult, result);
  754. LogReader reader = new LogReader(line, "", null, null, null);
  755. LogReader.LineInfo li = reader.testCompilerInvocation(line);
  756. assert li.compilerType == LogReader.CompilerType.CPP;
  757. }
  758. public void testIcpcInvocation() {
  759. String line = "usr/local/packages/icc_remote/12.0.5.225_fixbug13889838/bin/icpc xsolmod.cpp -c -o xsolmod.o -O2 -DOCCI_NO_WSTRING=1 -fPIC -cxxlib -std=c89 "+
  760. "-fno-omit-frame-pointer -mp1