52 lines
1.0 KiB
Makefile
52 lines
1.0 KiB
Makefile
.POSIX:
|
|
|
|
PREFIX = /usr/local
|
|
DST = $(PREFIX)/bin
|
|
PROJECT = slcl
|
|
O = -Og
|
|
CDEFS = -D_FILE_OFFSET_BITS=64 # Required for large file support on 32-bit.
|
|
CFLAGS = $(O) $(CDEFS) -g -Wall -Ilibweb/include -Ilibweb/dynstr/include \
|
|
-MD -MF $(@:.o=.d)
|
|
LIBS = -lcjson -lssl -lm -lcrypto
|
|
DEPS = $(OBJECTS:.o=.d)
|
|
DYNSTR = libweb/dynstr/libdynstr.a
|
|
DYNSTR_FLAGS = -Llibweb/dynstr -ldynstr
|
|
LIBWEB = libweb/libslweb.a
|
|
SLWEB_FLAGS = -Llibweb -lweb
|
|
OBJECTS = \
|
|
auth.o \
|
|
base64.o \
|
|
cftw.o \
|
|
hex.o \
|
|
jwt.o \
|
|
main.o \
|
|
page.o \
|
|
style.o
|
|
|
|
all: $(PROJECT)
|
|
|
|
install: all usergen
|
|
mkdir -p $(DST)
|
|
cp slcl usergen $(DST)
|
|
chmod 0755 $(DST)/slcl
|
|
chmod 0755 $(DST)/usergen
|
|
+cd doc && $(MAKE) PREFIX=$(PREFIX) install
|
|
|
|
clean:
|
|
rm -f $(OBJECTS) $(DEPS)
|
|
+cd libweb && $(MAKE) clean
|
|
+cd libweb/dynstr && $(MAKE) clean
|
|
|
|
FORCE:
|
|
|
|
$(PROJECT): $(OBJECTS) $(DYNSTR) $(LIBWEB)
|
|
$(CC) $(OBJECTS) $(LDFLAGS) $(LIBS) $(SLWEB_FLAGS) $(DYNSTR_FLAGS) -o $@
|
|
|
|
$(DYNSTR): FORCE
|
|
+cd libweb/dynstr && $(MAKE)
|
|
|
|
$(LIBWEB): FORCE
|
|
+cd libweb && $(MAKE)
|
|
|
|
-include $(DEPS)
|