summaryrefslogtreecommitdiffhomepage
path: root/contrib/userspace-nvram/Makefile
blob: b0e4471a1563e83c38e868de1dfebfaa61e636be (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
CC      = gcc
LN      = ln
CFLAGS  = -Wall -g
LDFLAGS =

LIB_VERMAJOR = 0
LIB_VERMINOR = 1
LIB_FILENAME = libnvram.so

LIB_CFLAGS  = $(CFLAGS) -shared -fPIC
LIB_LDFLAGS = $(LDFLAGS) -Wl,-soname,$(LIB_FILENAME).$(LIB_VERMAJOR).$(LIB_VERMINOR)

CLI_CFLAGS  = $(CFLAGS)
CLI_LDFLAGS = $(LDFLAGS) -lc -L. -lnvram

CLI_OBJ = cli.o
LIB_OBJ = crc.o nvram.o

all: cli libnvram

cli: libnvram
	$(CC) $(CLI_CFLAGS) -c -o cli.o cli.c
	$(CC) -o nvram $(CLI_OBJ) $(CLI_LDFLAGS)

cli.o: cli.c
	$(CC) $(CLI_CFLAGS) -c -o $@ $<

libnvram:
	$(CC) $(LIB_CFLAGS) -c -o crc.o crc.c
	$(CC) $(LIB_CFLAGS) -c -o nvram.o nvram.c
	$(CC) $(LIB_CFLAGS) $(LIB_LDFLAGS) \
		-o $(LIB_FILENAME).$(LIB_VERMAJOR).$(LIB_VERMINOR) $(LIB_OBJ)
	$(LN) -s $(LIB_FILENAME).$(LIB_VERMAJOR).$(LIB_VERMINOR) \
		$(LIB_FILENAME).$(LIB_VERMAJOR)
	$(LN) -s $(LIB_FILENAME).$(LIB_VERMAJOR).$(LIB_VERMINOR) \
		$(LIB_FILENAME)

clean:
	rm -f nvram $(LIB_FILENAME)* *.o