diff options
-rw-r--r-- | Makefile | 29 | ||||
-rw-r--r-- | src/Makefile | 45 | ||||
-rw-r--r-- | src/mixer.c (renamed from mixer.c) | 0 | ||||
-rw-r--r-- | src/pcm.c (renamed from pcm.c) | 0 |
4 files changed, 50 insertions, 24 deletions
@@ -1,44 +1,25 @@ export TOPDIR = $(shell pwd) -export SRCDIR = $(TOPDIR) +export SRCDIR = $(TOPDIR)/src export INCDIR = $(TOPDIR)/include export DESTDIR ?= export PREFIX ?= /usr/local export CROSS_COMPILE = -CC = $(CROSS_COMPILE)gcc -CFLAGS = -Wall -Wextra -Werror -Wfatal-errors -I $(INCDIR) - -LD = $(CROSS_COMPILE)ld -LDFLAGS = - -OBJECTS = mixer.o pcm.o -LIB = libtinyalsa.a -SHLIB = libtinyalsa.so - .PHONY: all -all: $(LIB) $(SHLIB) +all: + $(MAKE) -C src $(MAKE) -C utils -$(SHLIB): $(OBJECTS) - $(CC) $(LDFLAGS) -shared $(OBJECTS) -o $(SHLIB) - -$(LIB): $(OBJECTS) - $(CROSS_COMPILE)$(AR) rcs $@ $^ - -%.o: %.c - $(CROSS_COMPILE)$(CC) $(CFLAGS) -fPIC -c $^ -o $@ - .PHONY: clean clean: - -rm $(LIB) $(SHLIB) $(OBJECTS) + $(MAKE) -C src clean $(MAKE) -C utils clean .PHONY: install install: $(LIB) $(SHLIB) - cp -u $(SHLIB) $(PREFIX)/lib/ - cp -u $(LIB) $(PREFIX)/lib/ mkdir -p $(PREFIX)/include/tinyalsa cp -Ru $(INCDIR)/tinyalsa $(PREFIX)/include/ + $(MAKE) -C src install $(MAKE) -C utils install diff --git a/src/Makefile b/src/Makefile new file mode 100644 index 0000000..1549650 --- /dev/null +++ b/src/Makefile @@ -0,0 +1,45 @@ +TOPDIR ?= .. +SRCDIR ?= $(TOPDIR)/src +INCDIR ?= $(TOPDIR)/include + +DESTDIR ?= +PREFIX ?= /usr/local +CROSS_COMPILE = + +CC = $(CROSS_COMPILE)gcc +CFLAGS = -Wall -Wextra -Werror -Wfatal-errors +CFLAGS += -I $(INCDIR) +CFLAGS += -fPIC + +AR = $(CROSS_COMPILE)ar +ARFLAGS = rcs + +LD = $(CROSS_COMPILE)gcc +LDFLAGS = + +OBJECTS = mixer.o pcm.o + +.PHONY: all +all: libtinyalsa.a libtinyalsa.so + +pcm.o: pcm.c $(INCDIR)/tinyalsa/pcm.h + +mixer.o: mixer.c $(INCDIR)/tinyalsa/mixer.h + +libtinyalsa.a: $(OBJECTS) + $(AR) $(ARFLAGS) $@ $^ + +libtinyalsa.so: $(OBJECTS) + $(LD) $(LDFLAGS) -shared $^ -o $@ + +.PHONY: clean +clean: + rm -f libtinyalsa.a + rm -f libtinyalsa.so + rm -f $(OBJECTS) + +.PHONY: install +install: libtinyalsa.a libtinyalsa.so + cp -u libtinyalsa.a $(DESTDIR)$(PREFIX)/lib/ + cp -u libtinyalsa.so $(DESTDIR)$(PREFIX)/lib/ + |