Makefile
author Tero Marttila <terom@fixme.fi>
Thu, 25 Sep 2008 22:16:22 +0300
changeset 3 10b53719659c
parent 1 b31db3248246
child 6 d2036d7799fd
permissions -rw-r--r--
signal handling
1
b31db3248246 a working hello
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
     1
LIBEVENT_PATH = ../libs/libevent-dev
b31db3248246 a working hello
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
     2
LIBFUSE_PATH = ../libs/libfuse-2.7.4
0
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     3
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     4
LIBRARY_PATHS = -L${LIBEVENT_PATH}/lib -L${LIBFUSE_PATH}/lib
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     5
INCLUDE_PATHS = -I${LIBEVENT_PATH}/include -I${LIBFUSE_PATH}/include
1
b31db3248246 a working hello
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
     6
LDLIBS = -levent -lfuse
0
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     7
1
b31db3248246 a working hello
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
     8
# XXX: ugh... use `pkg-config fuse`
b31db3248246 a working hello
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
     9
DEFINES = -D_FILE_OFFSET_BITS=64
0
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    10
MY_CFLAGS = -Wall -g -std=gnu99
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    11
1
b31db3248246 a working hello
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    12
BIN_NAMES = hello helloworld
0
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    13
1
b31db3248246 a working hello
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    14
bin/helloworld: 
3
10b53719659c signal handling
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    15
bin/hello: obj/evfuse.o obj/lib/common.o obj/lib/signals.o
0
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    16
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    17
# computed
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    18
LDFLAGS = ${LIBRARY_PATHS} ${LIBRARY_LIST}
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    19
CFLAGS = ${INCLUDE_PATHS} ${DEFINES} ${MY_CFLAGS}
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    20
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    21
SRC_PATHS = $(wildcard src/*.c)
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    22
SRC_NAMES = $(patsubst src/%,%,$(SRC_PATHS))
1
b31db3248246 a working hello
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    23
SRC_DIRS = $(dir $(SRC_NAMES))
0
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    24
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    25
BIN_PATHS = $(addprefix bin/,$(BIN_NAMES))
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    26
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    27
# targets
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    28
all: depend ${BIN_PATHS}
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    29
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    30
clean :
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    31
	-rm obj/* bin/*
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    32
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    33
depend:
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    34
	cd src
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    35
	makedepend -p../obj/ -Y -- $(CFLAGS) -- $(SRC_NAMES) 2> /dev/null
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    36
	cd ..
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    37
1
b31db3248246 a working hello
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    38
obj-dirs: 
b31db3248246 a working hello
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    39
	python build/make_obj_dirs.py $(BIN_PATHS)
b31db3248246 a working hello
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    40
0
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    41
obj/%.o : src/%.c
1
b31db3248246 a working hello
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    42
	$(CC) -c $(CPPFLAGS) $(CFLAGS) $^ -o $@
0
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    43
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    44
bin/% : obj/%.o
1
b31db3248246 a working hello
Tero Marttila <terom@fixme.fi>
parents: 0
diff changeset
    45
	$(CC) $(LDFLAGS) $+ $(LOADLIBES) $(LDLIBS) -o $@
0
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    46
487cbfbafa2c initial untested code...
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    47
# DO NOT DELETE THIS LINE -- make depend depends on it.