Index: sqlite3/Makefile.in =================================================================== --- sqlite3.orig/Makefile.in +++ sqlite3/Makefile.in @@ -799,10 +799,20 @@ sqlite3.lo: sqlite3.c # Rules to build the LEMON compiler generator # -lemon$(BEXE): $(TOP)/tool/lemon.c $(TOP)/tool/lempar.c +lemon-for-build$(BEXE): $(TOP)/tool/lemon.c $(TOP)/tool/lempar.c $(BCC) -o $@ $(TOP)/tool/lemon.c cp $(TOP)/tool/lempar.c . +lemon$(TEXE): $(TOP)/tool/lemon.c $(TOP)/tool/lempar.c + $(LTLINK) -o $@ $(TOP)/tool/lemon.c + cp $(TOP)/tool/lempar.c . + +ifeq ($(CROSS_BUILDING),yes) +LEMON_FOR_BUILD = lemon-for-build$(BEXE) +else +LEMON_FOR_BUILD = lemon$(TEXE) +endif + # Rules to build the program that generates the source-id # mksourceid$(BEXE): $(TOP)/tool/mksourceid.c @@ -1087,9 +1087,9 @@ opcodes.h: parse.h $(TOP)/src/vdbe.c $(T # parse.h: parse.c -parse.c: $(TOP)/src/parse.y lemon$(BEXE) +parse.c: $(TOP)/src/parse.y $(LEMON_FOR_BUILD) cp $(TOP)/src/parse.y . - ./lemon$(BEXE) $(OPT_FEATURE_FLAGS) $(OPTS) -S parse.y + ./$(LEMON_FOR_BUILD) $(OPT_FEATURE_FLAGS) $(OPTS) -S parse.y sqlite3.h: $(TOP)/src/sqlite.h.in $(TOP)/manifest mksourceid$(BEXE) $(TOP)/VERSION $(TCLSH_CMD) $(TOP)/tool/mksqlite3h.tcl $(TOP) >sqlite3.h @@ -1225,10 +1225,10 @@ FTS5_SRC = \ $(TOP)/ext/fts5/fts5_varint.c \ $(TOP)/ext/fts5/fts5_vocab.c \ -fts5parse.c: $(TOP)/ext/fts5/fts5parse.y lemon$(BEXE) +fts5parse.c: $(TOP)/ext/fts5/fts5parse.y $(LEMON_FOR_BUILD) cp $(TOP)/ext/fts5/fts5parse.y . rm -f fts5parse.h - ./lemon$(BEXE) $(OPTS) -S fts5parse.y + ./$(LEMON_FOR_BUILD)$(BEXE) $(OPTS) -S fts5parse.y fts5parse.h: fts5parse.c @@ -1496,7 +1496,10 @@ clean: rm -f *.lo *.la *.o sqlite3$(TEXE) libsqlite3.la rm -f sqlite3.h opcodes.* rm -rf .libs .deps - rm -f lemon$(BEXE) lempar.c parse.* sqlite*.tar.gz + rm -f $(LEMON_FOR_BUILD) lempar.c parse.* sqlite*.tar.gz +ifeq ($(CROSS_BUILDING), yes) + rm -f lemon$(TEXE) +endif rm -f mkkeywordhash$(BEXE) keywordhash.h rm -f mksourceid$(BEXE) rm -f *.da *.bb *.bbg gmon.out