INSTALLDIR ?= /usr/local/lib/gkrellm2/plugins
INSTALL ?= install

GTK_INCLUDE = `pkg-config gtk+-2.0 --cflags`
GTK_LIB = `pkg-config gtk+-2.0 --libs`

OS_NAME=$(shell uname -s)

ifeq ($(alsa5),1)
SD_INCLUDE = 
SD_LIB = -lasound
else
SD_INCLUDE = `esd-config --cflags`
SD_LIB = `esd-config --libs`
endif

FFTW_LIB_DIR ?=

FFTW_LIB = $(FFTW_LIB_DIR) -lrfftw -lfftw

FLAGS = -O2 -Wall -fPIC $(GTK_INCLUDE) $(SD_INCLUDE)
LIBS = $(GTK_LIB) $(SD_LIB) $(FFTW_LIB) -lm

ifeq ($(OS_NAME),Darwin)
LFLAGS = -bundle -bundle_loader `which gkrellm`
STRIP =
FLAGS += -DDARWIN
else
LFLAGS = -shared
STRIP ?= -s
endif

ifeq ($(debug),1)
	FLAGS += -g
endif

ifeq ($(enable_nls),1)
	FLAGS += -DENABLE_NLS -DLOCALEDIR=\"$(LOCALEDIR)\"
endif

ifeq ($(alsa5),1)
	FLAGS += -DGKRELLM_ALSA5
endif

CC = gcc $(FLAGS) $(CFLAGS)

OBJS = gkrellmss.o oscope.o spectrum.o sdlib.o

all:	gkrellmss.so

gkrellmss.so: $(OBJS)
	$(CC) $(OBJS) -o gkrellmss.so $(LFLAGS) $(LIBS)

clean:
	rm -f *.o core *.so* *.bak *~

install: 
	$(INSTALL) -d -m 755 $(INSTALLDIR)
	$(INSTALL) -c $(STRIP) -m 755 gkrellmss.so $(INSTALLDIR)

gkrellmss.o: gkrellmss.c gkrellmss.h
oscope.o: oscope.c gkrellmss.h
spectrum.o: spectrum.c gkrellmss.h
sdlib.o: sdlib.c gkrellmss.h sdlib-esd.c sdlib-alsa5.c
