2 martin 1.6 #//
3 #// Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
4 #// Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
5 #// Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
6 #// IBM Corp.; EMC Corporation, The Open Group.
7 #// Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
8 #// IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
9 #// Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
10 #// EMC Corporation; VERITAS Software Corporation; The Open Group.
|
13 martin 1.6 #//
14 #// Permission is hereby granted, free of charge, to any person obtaining a copy
15 #// of this software and associated documentation files (the "Software"), to
16 #// deal in the Software without restriction, including without limitation the
17 #// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
18 #// sell copies of the Software, and to permit persons to whom the Software is
19 #// furnished to do so, subject to the following conditions:
20 #//
21 #// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
22 #// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
23 #// "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
24 #// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
25 #// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
26 #// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
27 #// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
28 #// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
29 #//
30 #//==============================================================================
|
31 a.arora 1.5 ROOT = ../../..
32
33 DIR = Pegasus/CQL
34
35 include $(ROOT)/mak/config.mak
36
37 LOCAL_DEFINES = -DPEGASUS_CQL_INTERNAL -DPEGASUS_INTERNALONLY -DCQLINPUT
38
39 # Next line can be used to debug CQL.y
40 #LOCAL_DEFINES = -DPEGASUS_CQL_INTERNAL -DPEGASUS_INTERNALONLY -DCQL_DEBUG_GRAMMAR -DCQLINPUT
41
42 ifneq ($(OS), HPUX)
43 ifneq ($(OS), zos)
44 EXTRA_INCLUDES = -Int_includes
45 endif
46 endif
47
48 LIBRARY = pegcql
49
50 LIBRARIES = \
51 pegquerycommon \
52 a.arora 1.5 pegcommon
53
54 SOURCES = \
55 CQLYACC.cpp \
56 CQLLEX.cpp \
57 CQLChainedIdentifier.cpp \
58 CQLChainedIdentifierRep.cpp \
59 CQLIdentifier.cpp \
60 CQLIdentifierRep.cpp \
61 CQLParser.cpp \
62 CQLParserState.cpp \
63 CQLSimplePredicate.cpp \
64 CQLSimplePredicateRep.cpp \
65 CQLPredicate.cpp \
66 CQLPredicateRep.cpp \
67 CQLTerm.cpp \
68 CQLTermRep.cpp \
69 CQLFunction.cpp \
70 CQLFunctionRep.cpp \
71 CQLExpression.cpp \
72 CQLExpressionRep.cpp \
73 a.arora 1.5 CQLFactor.cpp \
74 CQLFactorRep.cpp \
75 CQLFactory.cpp \
76 CQLSelectStatement.cpp \
77 CQLSelectStatementRep.cpp \
78 CQLValue.cpp \
79 CQLValueRep.cpp \
80 CQLRegularExpression.cpp \
81 CQLUtilities.cpp \
82 Cql2Dnf.cpp
83
84 include $(ROOT)/mak/library.mak
85
86
87 ##-----------------------------------------------------------------------------
88 ##
89 ## Rules to build LEX AND YACC sources:
90 ##
91 ## To make these files type: "make grammar"
92 ##
93 ##------------------------------------------------------------------------------
94 a.arora 1.5
95
96 ##
97 ## This pushes BISON_SIMPLE into the environment so that bison will use this
98 ## rather than looking for /usr/local/share/bison.simple.
99 ##
100
101 grammar: yacc_rule lex_rule
102
103 export BISON_SIMPLE = bison.simple
104 #YACC = bison
105 ##
106 ## Lex rule:
107 ##
108 lex_rule:
109 $(LEX) -PCQL_ CQL.l
110 $(COPY) lex.CQL_.c CQLLEX.cpp
111 $(RM) lex.CQL_.c
112 $(TOUCH) CQLLEX.cpp
113
114 ##
115 a.arora 1.5 ## Yacc rule:
116 ##
117 yacc_rule:
118 ifeq ($(YACC),yacc)
119 $(YACC) -vd -p CQL_ CQL.y
120 $(COPY) y.tab.c CQLYACC.cpp
121 $(COPY) y.tab.h CQLYACC.h
122 $(RM) y.tab.c y.tab.h
123 $(TOUCH) CQLYACC.cpp
124 else
125 $(YACC) -vd -oCQLtemp -p CQL_ CQL.y
126 $(COPY) CQLtemp CQLYACC.cpp
127 $(COPY) CQLtemp.h CQLYACC.h
128 $(RM) CQLtemp CQLtemp.h
129 $(TOUCH) CQLYACC.cpp CQLYACC.h
130 endif
131
|