source: icGREP/icgrep-devel/README-icgrep.txt @ 4793

Last change on this file since 4793 was 4783, checked in by hongpum, 4 years ago

Fix the build command in README in accordance with the new LLVM version.

File size: 2.2 KB
Line 
1README-icgrep.txt
2
3This is the open-source version of icgrep 1.x.     
4
5icgrep is a very fast regular expression search program, particularly
6for complex regular expressions.  It is also a very capable engine,
7supporting most common regular expression syntax and many useful
8command line options.   
9
10icgrep 1.0 is designed to offer substantial Unicode support, meeting
11all the Unicode Level 1 requirements of UTS #18, the Unicode
12Technical Standard for regular expressions.
13
14Normal usage to find lines in a file f matching a regexp r is:
15icgrep r f
16
17To produce a count of matching lines only, use the command:
18icgrep -c r f
19
20To read the regexp to be matched from file regexpf use the command:
21
22icgrep -f regexpf f
23
24See http://parabix.costar.sfu.ca/wiki/ICgrep for more information.
25
26BUILD
27
28To build icgrep, you need an installed LLVM system providing the
29core libraries.  The distribution includes a suitable source
30code version of LLVM.   
31
32To build LLVM,
33(L1) open a terminal window and cd to the llvm-build directory
34(L2) enter the following command to build the makefiles
35cmake -DCMAKE_INSTALL_PREFIX=../libllvm -DLLVM_TARGETS_TO_BUILD=X86 -DLLVM_BUILD_TOOLS=OFF -DLLVM_BUILD_EXAMPLES=OFF -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER:FILEPATH=/usr/bin/clang++ -DCMAKE_C_COMPILER:FILEPATH=/usr/bin/clang ../llvm-3.6.1.src
36(L3) Still in the llvm-build directory, enter the commands "make" and then "make install"
37
38Using the installed LLVM, building icgrep uses the CMake build
39system generator.
40(IC1)  open a terminal window and cd to the icgrep-build directory
41(IC2.1)  enter the following command to build the makefiles
42cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER:FILEPATH=/usr/bin/clang++ -DCMAKE_C_COMPILER:FILEPATH=/usr/bin/clang ../icgrep
43(IC2.2)  to specify the type of supported SIMD operations rather than relying on auto detection
44cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER:FILEPATH=/usr/bin/clang++ -DCMAKE_C_COMPILER:FILEPATH=/usr/bin/clang -DSIMD_SUPPORT=XXX ../icgrep
45     Where XXX can be SSE2, SSE3, SSE4_1, SSE4_2, AVX1 or AVX2.
46(IC3) Enter the command "make"
47
48LLVM files are governed by the LLVM Release License in LLVM-LICENSE.txt.
49icgrep is governed by Open Software License 3.0 in OSL-3.0.txt.
50
Note: See TracBrowser for help on using the repository browser.