Sophie

Sophie

distrib > Mandriva > 2009.0 > i586 > by-pkgid > d8bca261a4ff4205c2b8628e39adf56d > files > 1

portmidi-20070107-3mdv2009.0.src.rpm

--- pm_linux/Makefile	2007-07-31 19:43:11.000000000 +0200
+++ pm_linux/Makefile.oden	2007-07-31 19:42:14.000000000 +0200
@@ -32,18 +32,21 @@
 # ALSALIB = 
 # VFLAGS = -DPMNULL
 
+VERSION=17
+CFLAGS = -fPIC
+
 pmlib = pm_linux/libportmidi.a
 
 ptlib = porttime/libporttime.a
 
-CC = gcc $(VFLAGS) $(PMFLAGS) -g -Ipm_common -Iporttime
+CC = gcc $(CFLAGS) $(VFLAGS) $(PMFLAGS) -g -Ipm_common -Iporttime
 
 pmobjects = pm_common/pmutil.o $(versions) pm_linux/pmlinux.o  \
 	pm_common/portmidi.o
 
 ptobjects = porttime/porttime.o porttime/ptlinux.o 
 
-current: all
+current: shared all
 
 all: $(pmlib) $(ptlib) pm_test/test pm_test/sysex pm_test/midithread \
 	pm_test/latency pm_test/midithru pm_test/qtest pm_test/mm
@@ -54,47 +57,55 @@
 $(ptlib): pm_linux/Makefile $(ptobjects)
 	ar -cr $(ptlib) $(ptobjects)
 
+shared: $(pmobjects) $(ptobjects)
+	$(CC) $(CFLAGS) -shared -Wl,-soname=libportmidi.so.0 -o \
+	pm_linux/libportmidi.so.0.$(VERSION) $(pmobjects)
+	ln -snf libportmidi.so.0.$(VERSION) pm_linux/libportmidi.so.0
+	ln -snf libportmidi.so.0.$(VERSION) pm_linux/libportmidi.so
+	$(CC) $(CFLAGS) -shared -Wl,-soname=libporttime.so.0 -o \
+	porttime/libporttime.so.0.$(VERSION) $(ptobjects)
+	ln -snf libporttime.so.0.$(VERSION) porttime/libporttime.so.0
+	ln -snf libporttime.so.0.$(VERSION) porttime/libporttime.so
+
 pm_linux/pmlinuxalsa.o: pm_linux/Makefile pm_linux/pmlinuxalsa.c pm_linux/pmlinuxalsa.h
-	$(CC) -c pm_linux/pmlinuxalsa.c -o pm_linux/pmlinuxalsa.o
+	$(CC) $(CFLAGS) -c pm_linux/pmlinuxalsa.c -o pm_linux/pmlinuxalsa.o
 
-pm_test/test: pm_linux/Makefile pm_test/test.o $(pmlib) $(ptlib)
-	$(CC) pm_test/test.o -o pm_test/test $(pmlib) $(ptlib) $(ALSALIB)
+pm_test/test: pm_linux/Makefile pm_test/test.o shared $(pmlib) $(ptlib)
+	$(CC) $(CFLAGS) pm_test/test.o -o pm_test/test -L./pm_linux -lportmidi -L./porttime -lporttime $(ALSALIB)
 
-pm_test/sysex: pm_linux/Makefile pm_test/sysex.o $(pmlib) $(ptlib)
-	$(CC) pm_test/sysex.o -o pm_test/sysex $(pmlib) $(ptlib) $(ALSALIB)
+pm_test/sysex: pm_linux/Makefile pm_test/sysex.o shared $(pmlib) $(ptlib)
+	$(CC) $(CFLAGS) pm_test/sysex.o -o pm_test/sysex -L./pm_linux -lportmidi -L./porttime -lporttime $(ALSALIB)
 
-pm_test/midithread: pm_linux/Makefile pm_test/midithread.o $(pmlib) $(ptlib)
-	$(CC) pm_test/midithread.o -o pm_test/midithread \
-        $(pmlib) $(ptlib) $(ALSALIB)
+pm_test/midithread: pm_linux/Makefile pm_test/midithread.o shared $(pmlib) $(ptlib)
+	$(CC) $(CFLAGS) pm_test/midithread.o -o pm_test/midithread \
+        -L./pm_linux -lportmidi -L./porttime -lporttime $(ALSALIB)
 
-pm_test/latency: pm_linux/Makefile $(ptlib) pm_test/latency.o 
-	$(CC) pm_test/latency.o -o pm_test/latency $(pmlib) $(ptlib) \
+pm_test/latency: pm_linux/Makefile shared $(ptlib) pm_test/latency.o 
+	$(CC) $(CFLAGS) pm_test/latency.o -o pm_test/latency -L./pm_linux -lportmidi -L./porttime -lporttime \
         $(ALSALIB) -lpthread -lm
 
-pm_test/midithru: pm_linux/Makefile $(ptlib) pm_test/midithru.o 
-	$(CC) pm_test/midithru.o -o pm_test/midithru $(pmlib) $(ptlib) \
+pm_test/midithru: pm_linux/Makefile shared $(ptlib) pm_test/midithru.o 
+	$(CC) $(CFLAGS) pm_test/midithru.o -o pm_test/midithru -L./pm_linux -lportmidi -L./porttime -lporttime \
         $(ALSALIB) -lpthread -lm
 
-pm_test/mm: pm_linux/Makefile $(ptlib) pm_test/mm.o 
-	$(CC) pm_test/mm.o -o pm_test/mm $(pmlib) $(ptlib) \
+pm_test/mm: pm_linux/Makefile shared $(ptlib) pm_test/mm.o 
+	$(CC) $(CFLAGS) pm_test/mm.o -o pm_test/mm -L./pm_linux -lportmidi -L./porttime -lporttime \
         $(ALSALIB) -lpthread -lm
 
 porttime/ptlinux.o: pm_linux/Makefile porttime/ptlinux.c
-	$(CC) -c porttime/ptlinux.c -o porttime/ptlinux.o
+	$(CC) $(CFLAGS) -c porttime/ptlinux.c -o porttime/ptlinux.o
 
-pm_test/qtest: pm_linux/Makefile pm_test/qtest.o $(pmlib) $(ptlib)
-	$(CC) pm_test/qtest.o -o pm_test/qtest $(pmlib) $(ptlib) $(ALSALIB)
+pm_test/qtest: pm_linux/Makefile pm_test/qtest.o shared $(pmlib) $(ptlib)
+	$(CC) $(CFLAGS) pm_test/qtest.o -o pm_test/qtest -L./pm_linux -lportmidi -L./porttime -lporttime $(ALSALIB)
 
 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 pm_test/qtest pm_test/mm
+	rm -f pm_linux/libportmidi.a porttime/libporttime.a
+	rm -f pm_linux/libportmidi.so* porttime/libporttime.so*
 
-backup: cleanest
+backup: clean
 	cd ..; zip -r portmidi.zip portmidi