|
16 | 16 |
|
17 | 17 | FILE(GLOB io_cpp "*.cpp") |
18 | 18 |
|
19 | | - |
20 | | -## find our parser generators |
21 | | -#find_program(BISON_EXE bison) |
22 | | -#find_program(FLEX_EXE flex) |
23 | | -#find_program(SED_EXE sed) |
24 | | -# |
25 | | -#if((BISON_EXE STREQUAL "BISON_EXE-NOTFOUND") OR (FLEX_EXE STREQUAL "FLEX_EXE-NOTFOUND") OR (SED_EXE STREQUAL "SED_EXE-NOTFOUND")) |
26 | | -# # don't have flex/bison/sed, use pregenerated versions |
27 | | -# set (parser_cpp generated/SeExprParser.cpp generated/SeExprParserLex.cpp ) |
28 | | -#else ((BISON_EXE STREQUAL "BISON_EXE-NOTFOUND") OR (FLEX_EXE STREQUAL "FLEX_EXE-NOTFOUND") OR (SED_EXE STREQUAL "SED_EXE-NOTFOUND")) |
29 | | -# ## build the parser from the flex/yacc sources |
30 | | -# |
31 | | -# ADD_CUSTOM_COMMAND( |
32 | | -# SOURCE "SeExprParserLex.l" |
33 | | -# COMMAND "flex" |
34 | | -# ARGS "-oSeExprParserLexIn.cpp" "${CMAKE_CURRENT_SOURCE_DIR}/SeExprParserLex.l" |
35 | | -# OUTPUT SeExprParserLexIn.cpp |
36 | | -# DEPENDS SeExprParserLex.l |
37 | | -# ) |
38 | | -# |
39 | | -# ADD_CUSTOM_COMMAND( |
40 | | -# SOURCE "SeExprParserLexIn.cpp" |
41 | | -# COMMAND "sed" |
42 | | -## ARGS -e "'s/SeExprwrap(n)/SeExprwrap()/g'" -e "'s/yy/SeExpr/g'" -e "'s/YY/SeExprYY/g'" SeExprParserLexIn.cpp | tee SeExprParserLex.cpp ${CMAKE_CURRENT_SOURCE_DIR}/generated/SeExprParserLex.cpp > /dev/null |
43 | | -# ARGS -e "'s/SeExprwrap(n)/SeExprwrap()/g'" -e "'s/yy/SeExpr/g'" -e "'s/YY/SeExprYY/g'" SeExprParserLexIn.cpp | tee SeExprParserLex.cpp ${CMAKE_CURRENT_SOURCE_DIR}/generated/SeExprParserLex.cpp > /dev/null |
44 | | -# OUTPUT SeExprParserLex.cpp |
45 | | -# DEPENDS SeExprParserLexIn.cpp |
46 | | -# ) |
47 | | -# |
48 | | -# ADD_CUSTOM_COMMAND( |
49 | | -# SOURCE "SeExprParser.y" |
50 | | -# COMMAND "bison" |
51 | | -# ARGS "--defines" "--verbose" "--fixed-output-files" "-p" "SeExpr" "${CMAKE_CURRENT_SOURCE_DIR}/SeExprParser.y" |
52 | | -# OUTPUT y.tab.c y.tab.h |
53 | | -# DEPENDS SeExprParser.y |
54 | | -# ) |
55 | | -# |
56 | | -# ADD_CUSTOM_COMMAND( |
57 | | -# SOURCE "y.tab.h" |
58 | | -# COMMAND "sed" |
59 | | -# ARGS -e "'s/yy/SeExpr/g'" -e "'s/YY/SeExprYY/g'" y.tab.h | tee SeExprParser.tab.h ${CMAKE_CURRENT_SOURCE_DIR}/generated/SeExprParser.tab.h > /dev/null |
60 | | -# OUTPUT SeExprParser.tab.h |
61 | | -# DEPENDS y.tab.h |
62 | | -# ) |
63 | | -# |
64 | | -# ADD_CUSTOM_COMMAND( |
65 | | -# SOURCE "y.tab.c" |
66 | | -# COMMAND "sed" |
67 | | -# ARGS -e "'s/yy/SeExpr/g'" -e "'s/YY/SeExprYY/g'" y.tab.c | tee SeExprParser.cpp "${CMAKE_CURRENT_SOURCE_DIR}/generated/SeExprParser.cpp" > /dev/null |
68 | | -# OUTPUT SeExprParser.cpp |
69 | | -# DEPENDS y.tab.c SeExprParser.tab.h |
70 | | -# ) |
71 | | -# |
72 | | -# ## set build files |
73 | | -# set (parser_cpp SeExprParser.cpp SeExprParserLex.cpp ) |
74 | | -# |
75 | | -#endif( (BISON_EXE STREQUAL "BISON_EXE-NOTFOUND") OR (FLEX_EXE STREQUAL "FLEX_EXE-NOTFOUND") OR (SED_EXE STREQUAL "SED_EXE-NOTFOUND")) |
76 | | - |
77 | 19 | BuildParserScanner(SeExprParserLex SeExprParser SeExpr parser_cpp) |
78 | 20 |
|
79 | | - |
80 | 21 | ## Make the SeExpr library |
81 | 22 | ADD_LIBRARY (SeExpr SHARED ${io_cpp} ${core_cpp} ${parser_cpp}) |
82 | 23 | ADD_LIBRARY (SeExpr-static ${io_cpp} ${core_cpp} ${parser_cpp}) |
|
0 commit comments