# include components.config

-include $(STAGINGDIR)/usr/components.config
-include $(STAGINGDIR)/components.config

TARGET = jukebox.so

OBJECTS = jukebox.o

ifeq ($(CONFIG_SAH_TOOLS_PCB_JUKEBOX_DUMMY),y)
OBJECTS += dummy_player.o
endif

ifeq ($(CONFIG_SAH_TOOLS_PCB_JUKEBOX_TOTEM_DBUS),y)
OBJECTS += totem_dbus.o
endif

CFLAGS += -fPIC -O2 -g -I. -I../common -Wall -Wextra -Werror -I$(STAGINGDIR)/include -I$(STAGINGDIR)/usr/include $(shell pkg-config --cflags sahtrace pcb)
LDFLAGS += -L$(STAGINGDIR)/lib -L$(STAGINGDIR)/usr/lib $(shell pkg-config --libs sahtrace pcb)

all: $(TARGET)

$(TARGET): $(OBJECTS)
	$(CC) -Wl,-soname,$(TARGET) -shared -fPIC -o $(@) $(OBJECTS) $(LDFLAGS) 

-include $(OBJECTS:.o=.d)

%.o: %.c
	$(CC) $(CFLAGS) -c -o $@ $<
	@$(CC) $(CFLAGS) -MM -MP -MT '$(@) $(@:.o=.d)' -MF $(@:.o=.d) $(<)

install:
	$(INSTALL) -d $(STAGINGDIR)/usr/lib/tutorials/jukebox
	$(INSTALL) -m 755 $(TARGET) $(STAGINGDIR)/usr/lib/tutorials/jukebox
	$(INSTALL) -m 755 jukebox.odl $(STAGINGDIR)/usr/lib/tutorials/jukebox

clean:
	rm -f $(TARGET) $(OBJECTS)
	rm -f *.d

.PHONY: install clean
