L4Re/idl4re

Makefile

149:2c91a2dd01ee
2020-01-30 Paul Boddie Added initial reference documentation.
     1 # Original sources and final program.     2      3 SOURCES = \     4 	main.c client.c common.c config.c declaration.c dispatch.c includes.c \     5 	interface.c message.c program.c server.c structure.c summary.c \     6      7 PROGRAM = idl     8      9 # Generated files from flex and bison.    10     11 SCANNER = lex.yy.c    12 PARSER = y.tab.c    13 HEADER = y.tab.h    14 GENERATED = $(SCANNER) $(PARSER)    15     16 # Version-related files.    17     18 VERSION = version.h    19     20 # Computed values.    21     22 ALL_SOURCES = $(SOURCES) $(GENERATED)    23 OBJECTS = $(patsubst %.c,%.o,$(SOURCES))    24     25 # Flags and options.    26     27 CFLAGS = -D_GNU_SOURCE    28 #DEBUG = -DYYDEBUG=1    29     30 # Rules.    31     32 .PHONY: version    33     34 all: $(PROGRAM)    35     36 $(VERSION): version    37 	echo "#define VERSION_INFORMATION \"$(shell hg identify -i)\"" > $(VERSION)    38     39 version:    40     41 clean:    42 	$(RM) $(PROGRAM) $(GENERATED) $(HEADER) $(OBJECTS)    43     44 $(PROGRAM): $(GENERATED) $(OBJECTS)    45 	$(CC) $(CFLAGS) -o $@ $(GENERATED) $(OBJECTS) -ll    46     47 $(SCANNER): idl.lex    48 	flex $<    49     50 $(PARSER): idl.y    51 	bison -d -y -t $<    52     53 $(OBJECTS): $(SOURCES) $(VERSION)    54     55 .c.o:    56 	$(CC) $(CFLAGS) -o $@ -c $<