Universität Ulm, SAI, Übungen zu Systemnahe Software I

Lösungsbeispiel zu Blatt 9 (Aufgabe 13): Makefile

Datei mit Regeln für make(1).

Makefile

#       Makefile for SAM (simple archive manager).
#
#       Martin Hasch, University of Ulm, January 1997.

CC=     gcc
CFLAGS= -Wall -Werror

SRC_H=  sam.h names.h replace.h delete.h extract.h contents.h parser.h files.h
SRC_C=  main.c names.c replace.c delete.c extract.c contents.c parser.c files.c
SRC=    ${SRC_H} ${SRC_C} Makefile
OBJ=    main.o names.o replace.o delete.o extract.o contents.o parser.o files.o

sam:    ${OBJ}
        ${CC} -o $@ ${OBJ}

main.o:         sam.h names.h replace.h delete.h extract.h contents.h
names.o:        sam.h names.h
replace.o:      sam.h names.h parser.h replace.h
delete.o:       sam.h names.h parser.h delete.h
extract.o:      sam.h names.h parser.h extract.h
contents.o:     sam.h names.h parser.h contents.h
parser.o:       sam.h files.h parser.h
files.o:        sam.h files.h

clean:  ; rm -f ${OBJ} core

tags:   ${SRC_C}
        ctags ${SRC_C}

wc:     ; wc ${SRC}

<- Alle Module
Martin Hasch, Februar 1997