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