# libpxd/libpxd Makefile

.PHONY := all clean

include $(TOPDIR)/common.mk

LIBPXD_OBJS       := px_common.o px_log.o px_time.o px_connection.o px_event.o \
                     px_gemini_ctx.o px_workq.o px_url.o px_gemini.o \
                     px_path.o px_route.o px_network.o px_listen.o

all: include/libpxd/px_version.h libpxd.so

libpxd.so: $(LIBPXD_OBJS)
	$(CC) -shared -o $(@) $(LIBPXD_OBJS) $(LDFLAGS)

include/libpxd/px_version.h: .FORCE
	@./update_version.sh

px_common.o: px_common.c include/libpxd/px_version.h
	$(CC) -o $@ -c $(CFLAGS) $<

.c.o:
	$(CC) -o $@ -c -I$(CURRENT_SRC_DIR) $(CFLAGS) $<

clean :
	rm -f *.o libpxd.so

.FORCE:

