diff options
| author | Aleksa Vuckovic <aleksa@vuckovic.cc> | 2023-11-16 19:14:34 +0100 |
|---|---|---|
| committer | Aleksa Vuckovic <aleksa@vuckovic.cc> | 2023-11-16 19:14:34 +0100 |
| commit | 00e6a8a5a32222d65df85005dc404988f9430bc7 (patch) | |
| tree | a8f510577aff0f741c22f5235257e68feebd0fc9 | |
| parent | ca5c1242d8587d953e84c4350b625f8e819bc669 (diff) | |
Makefile + PaClose
| -rw-r--r-- | .gitignore | 4 | ||||
| -rw-r--r-- | Makefile | 31 | ||||
| -rw-r--r-- | src/main.c (renamed from main.c) | 6 |
3 files changed, 40 insertions, 1 deletions
@@ -1 +1,3 @@ -a.out +gtk-dav +*.d +*.o diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..1a0c98d --- /dev/null +++ b/Makefile @@ -0,0 +1,31 @@ +CXX=g++ +CC=gcc + +LDFLAGS=-lportaudio $(shell pkg-config --libs gtk4 cairo) +CXXFLAGS=-Wall $(shell pkg-config --cflags gtk4 cairo) -O3 -MD -MP +OBJS=\ + src/main.o + +.PHONY: all build run clean + +all: gtk-dav + +gtk-dav: ./Makefile $(OBJS) + $(CXX) $(CXXFLAGS) $(LDFLAGS) $(OBJS) -o ./gtk-dav + +%.o: %.c + $(CC) $(CXXFLAGS) -c $< -o $@ + +%.o: %.cpp + $(CXX) $(CXXFLAGS) -c $< -o $@ + +run: ./gtk-dav + @./gtk-dav + +clean: + @find -name "*.o" -exec rm {} \; + @find -name "*.d" -exec rm {} \; + @rm -f ./gtk-dav + + +-include $(OBJECTS:.o=.d) @@ -47,6 +47,12 @@ int patestCallback(const void *inputBuffer, void *outputBuffer, unsigned long fr static void select_device(GtkWidget *widget, gpointer data) { + if (stream != NULL) { + Pa_StopStream(stream); + Pa_CloseStream(stream); + stream = NULL; + } + struct data *d = (struct data *)data; device = d->device_num; printf("Device %d selected\n", d->device_num); |
