Hierbij de Makefile voor fn. Er zijn drie aanroepen bepaald: 'make', 'make clean' en 'make install'
#
# $Id: hfst4.html,v 1.19 2016/07/29 18:37:16 luc Exp $
#
# compiles, linker opties, etc.
#
#OPTIONS = -D LEXDEBUG
INCLUDES = -I/usr/include/mysql
LIBS = -lfl -L/usr/lib/mysql -lmysqlclient
CC = -c -ansi -g -Wall
#
# deze objecten moeten gemaakt worden
#
OBJECTS = y.tab.o lex.yy.o fndb.o
#
# algemene regel voor het maken van .o bestanden
#
.c.o:
@gcc $(OPTIONS) $(CC) $(INCLUDES) $<
#
# afhankelijkheden voor 'fn'
#
fn: $(OBJECTS)
@gcc -o fn $(OBJECTS) $(LIBS)
lex.yy.c: fnlx.l y.tab.h fnprglo.h language.h fnlxglo.h
@flex $<
y.tab.c: fnpr.y fnprglo.h fnlxglo.h language.h fndbglo.h
@yacc $<
y.tab.h: fnpr.y fnprglo.h fnlxglo.h language.h
@yacc -d $<
fndb.o: fndb.c fnprglo.h fnlxglo.h language.h fndbglo.h
#
# afhankelijkheden voor clean
#
clean:
@rm -f *.o fn lex.yy.c y.tab.[ch]
#
# afhankelijkheden voor install
#
install: fn
@mv fn $$HOME/bin
Tot slot de versies van de tools die fn bouwen:
Gnu C | 4.1.1 | |
Gnu make | 3.81 | |
binutils | 2.17 | |
lex | 2.5.33 | |
bison (GNU Bison) | 2.3 | |
Linux C Library | 2.3.6 | |
Dynamic linker (ldd) | 2.3.6 | |
MySQL client libraries | 5.0.32 |