diff options
Diffstat (limited to '3rdparty/portmidi/pm_mac/Makefile.osx')
-rw-r--r-- | 3rdparty/portmidi/pm_mac/Makefile.osx | 129 |
1 files changed, 129 insertions, 0 deletions
diff --git a/3rdparty/portmidi/pm_mac/Makefile.osx b/3rdparty/portmidi/pm_mac/Makefile.osx new file mode 100644 index 00000000000..8c6862e28f0 --- /dev/null +++ b/3rdparty/portmidi/pm_mac/Makefile.osx @@ -0,0 +1,129 @@ +# MAKEFILE FOR PORTMIDI + +# Roger B. Dannenberg +# Sep 2009 + +# NOTE: you can use +# make -f pm_osx/Makefile.osx configuration=Release +# to override the default Debug configuration +configuration=Release + +PF=/usr/local + +# For debugging, define PM_CHECK_ERRORS +ifeq ($(configuration),Release) + CONFIG = Release +else + CONFIG = Debug +endif + +current: all + +all: $(CONFIG)/CMakeCache.txt + cd $(CONFIG); make + +$(CONFIG)/CMakeCache.txt: + rm -f CMakeCache.txt + mkdir -p $(CONFIG) + cd $(CONFIG); cmake .. -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=$(CONFIG) + + +**** For instructions: make -f pm_mac\Makefile.osx help ****\n' + +help: + echo $$'\n\n\ +This is help for portmidi/pm_mac/Makefile.osx\n\n\ +Installation path for dylib is $(PF)\n\ +To build Release version libraries and test applications,\n \ +make -f pm_mac/Makefile.osx\n\ +To build Debug version libraries and test applications,\n \ +make -f pm_mac/Makefile.osx configuration=Debug\n\ +To install universal dynamic library,\n \ +sudo make -f pm_mac/Makefile.osx install\n\ +To install universal dynamic library with xcode,\n \ +make -f pm_mac/Makefile.osx install-with-xcode\n\ +To make PmDefaults Java application,\n \ +make -f pm_mac/Makefile.osx pmdefaults\n\n \ +configuration = $(configuration)\n' + + +clean: + rm -f *.o *~ core* */*.o */*/*.o */*~ */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 + rm -f pm_java/pmjni/*.o pm_java/pmjni/*~ pm_java/*.h + rm -rf Release/CMakeFiles Debug/CMakeFiles + rm -rf pm_mac/pmdefaults/lib pm_mac/pmdefaults/src + +cleaner: clean + rm -rf pm_mac/build + rm -rf pm_mac/Debug pm_mac/Release pm_test/Debug pm_test/Release + rm -f Debug/*.dylib Release/*.dylib + rm -f pm_java/pmjni/Debug/*.jnilib + rm -f pm_java/pmjni/Release/*.jnilib + +cleanest: cleaner + rm -f Debug/libportmidi_s.a Release/libportmidi_s.a + rm -f pm_test/Debug/test pm_test/Debug/sysex pm_test/Debug/midithread + rm -f pm_test/Debug/latency pm_test/Debug/midithru + rm -f pm_test/Debug/qtest pm_test/Debug/mm + rm -f pm_test/Release/test pm_test/Release/sysex pm_test/Release/midithread + rm -f pm_test/Release/latency pm_test/Release/midithru + rm -f pm_test/Release/qtest pm_test/Release/mm + rm -f pm_java/*/*.class + rm -f pm_java/pmjni/jportmidi_JPortMidiApi_PortMidiStream.h + +backup: cleanest + cd ..; zip -r portmidi.zip portmidi + +install: porttime/porttime.h pm_common/portmidi.h \ + $(CONFIG)/libportmidi.dylib + install porttime/porttime.h $(PF)/include/ + install pm_common/portmidi.h $(PF)/include + install $(CONFIG)/libportmidi.dylib $(PF)/lib/ + +# note - this uses xcode to build and install portmidi universal binaries +install-with-xcode: + sudo xcodebuild -project pm_mac/pm_mac.xcodeproj \ + -configuration Release install DSTROOT=/ + +##### build pmdefault ###### + +pm_java/pmjni/jportmidi_JPortMidiApi.h: pm_java/jportmidi/JPortMidiApi.class + cd pm_java; javah jportmidi.JPortMidiApi + mv pm_java/jportmidi_JportMidiApi.h pm_java/pmjni + +JAVASRC = pmdefaults/PmDefaultsFrame.java \ + pmdefaults/PmDefaults.java \ + jportmidi/JPortMidiApi.java jportmidi/JPortMidi.java \ + jportmidi/JPortMidiException.java + +# this compiles ALL of the java code +pm_java/jportmidi/JPortMidiApi.class: $(JAVASRC:%=pm_java/%) + cd pm_java; javac $(JAVASRC) + +$(CONFIG)/libpmjni.dylib: + mkdir -p $(CONFIG) + cd $(CONFIG); make -f ../pm_mac/$(MAKEFILE) + +pmdefaults: $(CONFIG)/libpmjni.dylib pm_java/jportmidi/JPortMidiApi.class +ifeq ($(CONFIG),Debug) + echo "Error: you cannot build pmdefaults in a Debug configuration \n\ + You should use configuration=Release in the Makefile command line. " + @exit 2 +endif + xcodebuild -project pm_mac/pm_mac.xcodeproj \ + -configuration Release -target PmDefaults + echo "pmdefaults java application is made" + +###### test plist reader ####### +PLHDR = pm_mac/readbinaryplist.h +PLSRC = pm_mac/plisttest.c pm_mac/readbinaryplist.c +pm_mac/plisttest: $(PLHDR) $(PLSRC) + cc $(VFLAGS) -Ipm_mac \ + -I/Developer/Headers/FlatCarbon \ + -I/System/Library/Frameworks/CoreFoundation.framework/Headers \ + -I/System/Library/Frameworks/CoreServices.framework/Headers \ + $(PLSRC) -o pm_mac/$(CONFIG)/plisttest \ + -framework CoreFoundation -framework CoreServices + |