{
rule LexRule
{
- local cfile = [ LocateTarget $(<:S=.c) ] ;
+ local cfile = [ LocateTarget $(<:S=.c) : $(SUBDIR) ] ;
local object = [ CompileObjects $(cfile) ] ;
Lex $(cfile) : $(<) ;
rule Lex++Rule
{
- local cppfile = [ LocateTarget $(<:S=.cpp) ] ;
+ local cppfile = [ LocateTarget $(<:S=.cpp) : $(SUBDIR) ] ;
local object = [ CompileObjects $(cppfile) ] ;
Lex $(cppfile) : $(<) ;
return $(object) ;
}
- RegisterFileType Flex++Rule : .ll ;
+ RegisterFileType Lex++Rule : .ll ;
if $(COMPILER_TYPE) != "GCC"
{
{
rule BisonRule
{
- local cfile = [ LocateTarget $(<:S=.c) ] ;
- local headerfile = [ LocateTarget $(<:S=.h) ] ;
+ local cfile = [ LocateTarget $(<:S=.c) : $(SUBDIR) ] ;
+ local headerfile = [ LocateTarget $(<:S=.h) : $(SUBDIR) ] ;
local object = [ CompileObjects $(cfile) ] ;
Includes $(headerfile:G=) : $(headerfile) ;
- Bison $(cfile) $(headerfile) : $(<) ;
+ Bison $(cfile) : $(<) ;
# work around jam warning about independent target
Includes $(cfile) : $(headerfile) ;
rule Bison++Rule
{
- local cppfile = [ LocateTarget $(<:S=.cpp) ] ;
- local headerfile = [ LocateTarget $(<:S=.hpp) ] ;
+ local cppfile = [ LocateTarget $(<:S=.cpp) : $(SUBDIR) ] ;
+ local headerfile = [ LocateTarget $(<:S=.hpp) : $(SUBDIR) ] ;
headerfile = $(headerfile:G=) ;
local object = [ CompileObjects $(cppfile) ] ;
# here
Includes $(headerfile:G=) : $(headerfile) ;
- Bison $(cppfile) $(headerfile) : $(<) ;
- Includes $(cppfile) : $(headerfile) ;
+ Bison $(cppfile) $(headerfile:G=) : $(<) ;
+#Includes $(cppfile) : $(headerfile:G=) ;
return $(object) ;
}