
all: tinycap \
	tinyplay \
	tinymix \
	tinypcminfo

install: tinyalsa_install \
	tinycap_install \
	tinyplay_install \
	tinymix_install \
	tinypcminfo_install

clean: tinyalsa_clean \
	tinycap_clean \
	tinyplay_clean \
	tinymix_clean \
	tinypcminfo_clean

TINYALSA_CFLAGS = -Wall -g -O -fPIC
TINYALSA_DEFCONFIG =

LIBS = -ltinyalsa
LIBPATH = .
LIBPATH_D = -L$(LIBPATH)

TINYALSA_INCLUDE_DIRS = \
	-I include

#libtinyalsa.so
TINYALSA_I_INC = \
	asoundlib.h

TINYALSA_OBJS = \
	pcm.o \
	mixer.o

TINYALSA_SRCS = \
	pcm.c \
	mixer.c

TINYALSA_LIBS =
TINYALSA_TARGET = libtinyalsa.so

tinyalsa:$(TINYALSA_OBJS)
	$(CC) -shared -fPIC -o $(TINYALSA_TARGET) $(TINYALSA_OBJS) $(LIBPATH_D) $(TINYALSA_LIBS)

$(TINYALSA_OBJS):$(TINYALSA_SRCS)
	$(CC) $(TINYALSA_CFLAGS) ${TINYALSA_DEFCONFIG} $(TINYALSA_INCLUDE_DIRS) -c $^

tinyalsa_install:
	cp $(TINYALSA_TARGET) $(INSTALL_MOD_PATH)/usr/lib
	mkdir -p /usr/include/tinyalsa
	cp $(TINYALSA_I_INC) $(INSTALL_MOD_PATH)/usr/include/tinyalsa

tinyalsa_clean:
	rm -f $(TINYALSA_OBJS)
	rm -f $(TINYALSA_TARGET)

#tinycap
TINYCAP_TARGET = tinycap
TINYCAP_OBJS = tinycap.o
TINYCAP_SRCS = tinycap.c

tinycap: tinyalsa \
	$(TINYCAP_OBJS)
	$(CC) -o $(TINYCAP_TARGET) $(TINYCAP_OBJS) $(LIBPATH_D) $(LIBS)

$(TINYCAP_OBJS):$(TINYCAP_SRCS)
	$(CC) $(TINYALSA_CFLAGS) ${TINYALSA_DEFCONFIG} $(TINYALSA_INCLUDE_DIRS) -c $^

tinycap_install:
	cp $(TINYCAP_TARGET) $(INSTALL_MOD_PATH)/usr/bin

tinycap_clean:
	rm -f $(TINYCAP_OBJS)
	rm -f $(TINYCAP_TARGET)

#tinyplay
TINYPLAY_TARGET = tinyplay
TINYPLAY_OBJS = tinyplay.o
TINYPLAY_SRCS = tinyplay.c

tinyplay: tinyalsa \
	$(TINYPLAY_OBJS)
	$(CC) -o $(TINYPLAY_TARGET) $(TINYPLAY_OBJS) $(LIBPATH_D) $(LIBS)

$(TINYPLAY_OBJS):$(TINYPLAY_SRCS)
	$(CC) $(TINYALSA_CFLAGS) ${TINYALSA_DEFCONFIG} $(TINYALSA_INCLUDE_DIRS) -c $^

tinyplay_install:
	cp $(TINYPLAY_TARGET) $(INSTALL_MOD_PATH)/usr/bin

tinyplay_clean:
	rm -f $(TINYPLAY_OBJS)
	rm -f $(TINYPLAY_TARGET)
	rm -f oe-*

#tinymix
TINYMIX_TARGET = tinymix
TINYMIX_OBJS = tinymix.o
TINYMIX_SRCS = tinymix.c

tinymix: tinyalsa \
	$(TINYMIX_OBJS)
	$(CC) -o $(TINYMIX_TARGET) $(TINYMIX_OBJS) $(LIBPATH_D) $(LIBS)

$(TINYMIX_OBJS):$(TINYMIX_SRCS)
	$(CC) $(TINYALSA_CFLAGS) ${TINYALSA_DEFCONFIG} $(TINYALSA_INCLUDE_DIRS) -c $^

tinymix_install:
	cp $(TINYMIX_TARGET) $(INSTALL_MOD_PATH)/usr/bin

tinymix_clean:
	rm -f $(TINYMIX_OBJS)
	rm -f $(TINYMIX_TARGET)

#tinypcminfo
TINYPCMINFO_TARGET = tinypcminfo
TINYPCMINFO_OBJS = tinypcminfo.o
TINYPCMINFO_SRCS = tinypcminfo.c

tinypcminfo: tinyalsa \
	$(TINYPCMINFO_OBJS)
	$(CC) -o $(TINYPCMINFO_TARGET) $(TINYPCMINFO_OBJS) $(LIBPATH_D) $(LIBS)

$(TINYPCMINFO_OBJS):$(TINYPCMINFO_SRCS)
	$(CC) $(TINYALSA_CFLAGS) ${TINYALSA_DEFCONFIG} $(TINYALSA_INCLUDE_DIRS) -c $^

tinypcminfo_install:
	cp $(TINYPCMINFO_TARGET) $(INSTALL_MOD_PATH)/usr/bin

tinypcminfo_clean:
	rm -f $(TINYPCMINFO_OBJS)
	rm -f $(TINYPCMINFO_TARGET)

