include ../config.mk

OBJ=	open.o sleep.o
LOBJ=	$(OBJ:%.o=%.lo)

STATIC=	libdmx.a

STEMNAME=libdmx.so
SONAME=$(STEMNAME).2
LIBNAME=$(SONAME).5

all:	$(STATIC) $(LIBNAME)

$(STATIC):	$(OBJ)
	ar rcs $@ $^

$(LIBNAME):	$(LOBJ)
	$(CC) -shared -Wl,-soname,$(SONAME) -o $@ $^ -lc
	ln -sf $@ $(SONAME)
	ln -sf $(SONAME) $(STEMNAME)

install:	all
	install -m 644 $(STATIC) $(LIBINSTALLPATH)
	install -m 755 $(LIBNAME) $(LIBINSTALLPATH)
ifeq ($(strip $(CROSS)),)
	$(LDCONFIG) -n $(LIBINSTALLPATH)
	$(LDCONFIG)
endif
	if [ ! -d $(HEADERINSTALLPATH)/dmx ]; then mkdir -p $(HEADERINSTALLPATH)/dmx; fi
	install -m 644 ../include/dmx/dmx.h $(HEADERINSTALLPATH)/dmx
	install -m 644 ../include/dmx/dmxioctl.h $(HEADERINSTALLPATH)/dmx

clean:	
	rm -f $(OBJ) $(LOBJ) $(STATIC) $(STEMNAME) $(SONAME) $(LIBNAME) *~

distclean:	clean uninstall

uninstall:
	rm -f $(LIBINSTALLPATH)/$(STATIC)
	rm -f $(LIBINSTALLPATH)/$(LIBNAME)
	rm -rf $(HEADERINSTALLPATH)/dmx

doxy:	
	doxygen Doxyfile

%.lo:	%.c
	$(CC) $(CFLAGS) -fPIC -c -o $@ $<
