(file) Return to Makefile CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / WQL

  1 martin 1.22 #//%LICENSE////////////////////////////////////////////////////////////////
  2 martin 1.23 #//
  3 martin 1.22 #// Licensed to The Open Group (TOG) under one or more contributor license
  4             #// agreements.  Refer to the OpenPegasusNOTICE.txt file distributed with
  5             #// this work for additional information regarding copyright ownership.
  6             #// Each contributor licenses this file to you under the OpenPegasus Open
  7             #// Source License; you may not use this file except in compliance with the
  8             #// License.
  9 martin 1.23 #//
 10 martin 1.22 #// Permission is hereby granted, free of charge, to any person obtaining a
 11             #// copy of this software and associated documentation files (the "Software"),
 12             #// to deal in the Software without restriction, including without limitation
 13             #// the rights to use, copy, modify, merge, publish, distribute, sublicense,
 14             #// and/or sell copies of the Software, and to permit persons to whom the
 15             #// Software is furnished to do so, subject to the following conditions:
 16 martin 1.23 #//
 17 martin 1.22 #// The above copyright notice and this permission notice shall be included
 18             #// in all copies or substantial portions of the Software.
 19 martin 1.23 #//
 20 martin 1.22 #// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 21 martin 1.23 #// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 22 martin 1.22 #// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
 23             #// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
 24             #// CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
 25             #// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
 26             #// SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 27 martin 1.23 #//
 28 martin 1.22 #//////////////////////////////////////////////////////////////////////////
 29 mike   1.2  ROOT = ../../..
 30             
 31             DIR = Pegasus/WQL
 32             
 33             include $(ROOT)/mak/config.mak
 34             
 35 kumpf  1.5  LOCAL_DEFINES = -DPEGASUS_WQL_INTERNAL -DPEGASUS_INTERNALONLY
 36 mike   1.2  
 37 chip   1.11 ifneq ($(OS), HPUX)
 38 kumpf  1.21     ifneq ($(OS), zos)
 39                     EXTRA_INCLUDES = -Int_includes
 40 r.kieninger 1.15     endif
 41 kumpf       1.4  endif
 42 mike        1.2  
 43 mike        1.20 STATIC=1
 44 mike        1.2  LIBRARY = pegwql
 45                  
 46 schuur      1.7  LIBRARIES = \
 47 karl        1.14    pegcommon \
 48 chuck       1.13    pegquerycommon
 49 mike        1.2  
 50                  SOURCES = \
 51 chip        1.11 	WQLSelectStatement.cpp \
 52 chuck       1.12 	WQLSelectStatementRep.cpp \
 53 chip        1.11 	WQLYACC.cpp \
 54                  	WQLLEX.cpp \
 55                  	WQLSimplePropertySource.cpp \
 56                  	WQLPropertySource.cpp \
 57                  	WQLInstancePropertySource.cpp \
 58                  	WQLParserState.cpp \
 59                  	WQLOperation.cpp \
 60                  	WQLOperand.cpp \
 61                  	WQLParser.cpp \
 62                  	WQLQueryExpressionRep.cpp
 63 mike        1.2  
 64                  SOURCES_X = \
 65 chip        1.11 	WQLLEX.cpp \
 66 mike        1.2  
 67                  include $(ROOT)/mak/library.mak
 68                  
 69                  ##------------------------------------------------------------------------------
 70                  ##
 71                  ## Rules to build LEX AND YACC sources:
 72                  ##
 73                  ## To make these files type: "make grammar"
 74                  ##
 75 karl        1.24 ## NOTE: Normally developers should never need to compile the WQL grammar.
 76                  ## The generate source files are committed to CVS as part of any changes
 77                  ## to the lex or yacc defintions so only developers of the grammar itsel
 78                  ## need execute the make grammar below.
 79                  ##
 80 mike        1.2  ##------------------------------------------------------------------------------
 81                  
 82                  
 83                  ##
 84 chip        1.11 ## This pushes BISON_SIMPLE into the environment so that bison will use this
 85 mike        1.2  ## rather than looking for /usr/local/share/bison.simple.
 86                  ##
 87                  
 88                  grammar: yacc_rule lex_rule
 89                  
 90                  export BISON_SIMPLE = bison.simple
 91                  
 92                  ##
 93                  ## Lex rule:
 94                  ##
 95                  lex_rule:
 96                  	$(LEX) -oWQLLEX.cpp -PWQL_ WQL.l
 97                  	$(TOUCH) WQLLEX.cpp
 98 karl        1.24 	mu prepend ../nochksrc.txt WQLLEX.cpp
 99 mike        1.2  
100                  ##
101                  ## Yacc rule:
102                  ##
103                  yacc_rule:
104                  ifeq ($(YACC),yacc)
105                  	$(YACC) -vd -p WQL_ WQL.y
106 kumpf       1.10 	$(COPY) "y.tab.c" "WQLYACC.cpp"
107                  	$(COPY) "y.tab.h" "WQLYACC.h"
108 mike        1.2  	$(RM) y.tab.c y.tab.h
109                  	$(TOUCH) WQLYACC.cpp WQLYACC.h
110                  else
111                  	$(YACC) -vd -oWQLtemp -p WQL_ WQL.y
112 karl        1.18 	$(COPY) "WQLtemp" "WQLYACC.cpp"
113                  	$(COPY) "WQLtemp.h" "WQLYACC.h"
114 mike        1.2  	$(RM) WQLtemp WQLtemp.h WQLtemp.output wqltemp.out
115                  	$(TOUCH) WQLYACC.cpp WQLYACC.h
116                  endif
117 karl        1.24 	mu prepend ../nochksrc.txt WQLYACC.h
118                  	mu prepend ../nochksrc.txt WQLYACC.cpp

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2