1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
|
# MAKEFILE FOR PORTMIDI AND PORTTIME
# For debugging, define PM_CHECK_ERRORS
PMFLAGS = -DPM_CHECK_ERRORS
# Otherwise do not define PM_CHECK_ERRORS
# PMFLAGS =
# Use this for linux alsa (0.9x) version
versions = pm_linux/pmlinuxalsa.o
ALSALIB = -lasound
VFLAGS = -DPMALSA
# Use this for null (a dummy implementation for no Midi I/O:
# versions = pmlinuxnull.o
# ALSALIB =
# VFLAGS = -DPMNULL
pmlib = pm_linux/libportmidi.a
pmslib = pm_linux/libportmidi.so.0.0.0
ptlib = porttime/libporttime.a
ptslib = porttime/libporttime.so.0.0.0
CC = gcc $(CFLAGS) $(VFLAGS) $(PMFLAGS) -g -Ipm_common -Iporttime
INSTALL = install
pmobjects = pm_common/pmutil.o $(versions) pm_linux/pmlinux.o \
pm_common/portmidi.o
ptobjects = porttime/porttime.o porttime/ptlinux.o
current: all
all: $(pmlib) $(ptlib) pm_test/test pm_test/sysex pm_test/midithread \
pm_test/latency pm_test/midithru
$(pmlib): Makefile $(pmobjects)
ar -cr $(pmlib) $(pmobjects)
$(CC) -shared $(ALSALIB) $(pmobjects) -Wl,-soname -Wl,libportmidi.so.0 -o $(pmslib)
$(ptlib): Makefile $(ptobjects)
ar -cr $(ptlib) $(ptobjects)
$(CC) -shared $(ptobjects) -Wl,-soname -Wl,libporttime.so.0 -o $(ptslib)
pm_linux/pmlinuxalsa.o: Makefile pm_linux/pmlinuxalsa.c pm_linux/pmlinuxalsa.h
$(CC) -c pm_linux/pmlinuxalsa.c -o pm_linux/pmlinuxalsa.o
pm_test/test: Makefile pm_test/test.o $(pmlib) $(ptlib)
$(CC) pm_test/test.c -o pm_test/test $(pmlib) $(ptlib) $(ALSALIB)
pm_test/sysex: Makefile pm_test/sysex.o $(pmlib) $(ptlib)
$(CC) pm_test/sysex.c -o pm_test/sysex $(pmlib) $(ptlib) $(ALSALIB)
pm_test/midithread: Makefile pm_test/midithread.o $(pmlib) $(ptlib)
$(CC) pm_test/midithread.c -o pm_test/midithread \
$(pmlib) $(ptlib) $(ALSALIB)
pm_test/latency: Makefile $(ptlib) pm_test/latency.o
$(CC) pm_test/latency.c -o pm_test/latency $(pmlib) $(ptlib) \
$(ALSALIB) -lpthread -lm
pm_test/midithru: Makefile $(ptlib) pm_test/midithru.o
$(CC) pm_test/midithru.c -o pm_test/midithru $(pmlib) $(ptlib) \
$(ALSALIB) -lpthread -lm
porttime/ptlinux.o: Makefile porttime/ptlinux.c
$(CC) -c porttime/ptlinux.c -o porttime/ptlinux.o
install:
$(INSTALL) -d $(DESTDIR)/usr/include/
$(INSTALL) -m 644 pm_common/portmidi.h $(DESTDIR)/usr/include/
$(INSTALL) -m 644 porttime/porttime.h $(DESTDIR)/usr/include/
$(INSTALL) -d $(DESTDIR)/usr/lib/
$(INSTALL) -m 644 pm_linux/libportmidi* $(DESTDIR)/usr/lib/
$(INSTALL) -m 644 porttime/libporttime* $(DESTDIR)/usr/lib/
clean:
rm -f *.o *~ core* */*.o */*.so */*~ */core* pm_test/*/pm_dll.dll
rm -f *.opt *.ncb *.plg pm_win/Debug/pm_dll.lib pm_win/Release/pm_dll.lib
rm -f pm_test/*.opt pm_test/*.ncb
cleaner: clean
cleanest: cleaner
rm -f $(pmlib) $(ptlib) pm_test/test pm_test/sysex pm_test/midithread
rm -f pm_test/latency pm_test/midithru
rm -f pm_linux/libportmidi.a pm_linux/libportmidi.so.0.0.0 pm_test/test pm_test/sysex \
pm_test/midithread pm_test/latency pm_test/midithru porttime/libporttime.a \
porttime/libporttime.so.0.0.0
backup: cleanest
cd ..; zip -r portmidi.zip portmidi
|