From e9d11b4f599cfa92a6b3efc6fc28609b2487c425 Mon Sep 17 00:00:00 2001 From: Valeriy Kamyshniy Date: Tue, 27 May 2014 22:48:40 -0400 Subject: [PATCH] [P4/git history rebuild] unconditionally apply waves backend changes to get them aligned with initial P4 condition --- .../portmidi/src/pm_mac/README_MAC.txt | 163 ++++++++++++++++++ 1 file changed, 163 insertions(+) create mode 100644 libs/backends/wavesaudio/portmidi/src/pm_mac/README_MAC.txt diff --git a/libs/backends/wavesaudio/portmidi/src/pm_mac/README_MAC.txt b/libs/backends/wavesaudio/portmidi/src/pm_mac/README_MAC.txt new file mode 100644 index 0000000000..1650dccecc --- /dev/null +++ b/libs/backends/wavesaudio/portmidi/src/pm_mac/README_MAC.txt @@ -0,0 +1,163 @@ +README_MAC.txt for PortMidi +Roger Dannenberg +20 nov 2009 +revised 20 Sep 2010 for Xcode 3.2.4 and CMake 8.2-2 + +To build PortMidi for Mac OS X, you must install Xcode and +CMake. + +CMake can build either command-line Makefiles or Xcode projects. +These approaches are described in separate sections below. + +==== CLEANING UP ==== +(Skip this for now, but later you might want start from a clean +slate.) + +Start in the portmedia/portmidi directory. + +make -f pm_mac/Makefile.osx clean + +will remove .o, CMakeFiles, and other intermediate files. + +Using "cleaner" instead of "clean" will also remove jni-related +intermediate files. + +Using "cleanest" instead of "clean" or "cleaner" will also remove +application binaries and the portmidi libraries. (It will not +uninstall anything, however.) + +==== USING CMAKE (AND COMMAND LINE TOOLS) ==== + +Start in the portmedia/portmidi directory. + +make -f pm_mac/Makefile.osx + +(Begin note: make will invoke cmake to build a Makefile and then make to +build portmidi. This extra level allows you to correctly build +both Release and Debug versions. Release is the default, so to get +the Debug version, use: + +make -f pm_mac/Makefile.osx configuration=Debug +) + +Release version executables and libraries are now in + portmedia/portmidi/Release + +Debug version executables and libraries are created in + portmedia/portmidi/Debug +The Debug versions are compiled with PM_CHECK_ERRORS which +prints an error message and aborts when an error code is returned +by PortMidi functions. This is useful for small command line +applications. Otherwise, you should check and handle error returns +in your program. + +You can install portmidi as follows: + +cd Release; sudo make install + +This will install /usr/local/include/{portmidi.h, porttime.h} +and /usr/local/lib/{libportmidi.dylib, libportmidi_s.a, libpmjni.dylib} + +You should now make the pmdefaults.app: + +make -f pm_mac/Makefile.osx pmdefaults + +NOTE: pmdefaults.app will be in pm_mac/Release/. + +Please copy pmdefaults.app to your Applications folder or wherever +you would normally expect to find it. + +==== USING CMAKE TO BUILD Xcode PROJECT ==== + +Before you can use Xcode, you need a portmidi.xcodeproj file. +CMake builds a location-dependent Xcode project, so unfortunately +it is not easy to provide an Xcode project that is ready to use. +Therefore, you should make your own. Once you have it, you can +use it almost like any other Xcode project, and you will not have +to go back to CMake. + +(1) Install CMake if you do not have it already. + +(2) Open portmedia/portmidi/CMakeLists.txt with CMake + +(3) Use Configure and Generate buttons + +(4) This creates portmedia/portmidi/portmidi.xcodeproj. + +Note: You will also use pm_mac/pm_mac.xcodeproj, which +is not generated by CMake. + +(5) Open portmidi/portmidi.xcodeproj with Xcode and +build what you need. The simplest thing is to build the +ALL_BUILD target. The default will be to build the Debug +version, but you may want to change this to Release. + +NOTE: ALL_BUILD may report errors. Try simply building again +or rebuilding specific targets that fail until they build +without errors. There appears to be a race condition or +missing dependencies in the build system. + +The Debug version is compiled with PM_CHECK_ERRORS, and the +Release version is not. PM_CHECK_ERRORS will print an error +message and exit your program if any error is returned from +a call into PortMidi. + +CMake (currently) also creates MinSizRel and RelWithDebInfo +versions, but only because I cannot figure out how to disable +them. + +You will probably want the application PmDefaults, which sets +default MIDI In and Out devices for PortMidi. You may also +want to build a Java application using PortMidi. Since I have +not figured out how to use CMake to make an OS X Java application, +use pm_mac/pm_mac.xcodeproj as follows: + +(6) open pm_mac/pm_mac.xcodeproj + +(7) pm_java/pmjni/portmidi_JportmidiApi.h is needed +by libpmjni.jnilib, the Java native interface library. Since +portmidi_JportmidiApi.h is included with PortMidi, you can skip +to step 8, but if you really want to rebuild everything from +scratch, build the JPortMidiHeaders project first, and continue +with step 8: + +(8) If you did not build libpmjni.dylib using portmidi.xcodeproj, +do it now. (It depends on portmidi_JportmidiApi.h, and the +PmDefaults project depends on libpmjni.dylib.) + +(9) Returning to pm_mac.xcodeproj, build the PmDefaults program. + +(10) If you wish, copy pm_mac/build/Deployment/PmDefaults.app to +your applications folder. + +(11) If you want to install libportmidi.dylib, first make it with +Xcode, then + sudo make -f pm_mac/Makefile.osx install +This command will install /usr/local/include/{porttime.h, portmidi.h} +and /usr/local/lib/libportmidi.dylib +Note that the "install" function of xcode creates portmidi/Release +and does not install the library to /usr/local/lib, so please use +the command line installer. + + +CHANGELOG + +20-Sep-2010 Roger B. Dannenberg + Adapted to Xcode 3.2.4 +20-Nov-2009 Roger B. Dannenberg + Added some install instructions +26-Sep-2009 Roger B. Dannenberg + More changes for using CMake, Makefiles, XCode +20-Sep-2009 Roger B. Dannenberg + Modifications for using CMake +14-Sep-2009 Roger B. Dannenberg + Modifications for using CMake +17-Jan-2007 Roger B. Dannenberg + Explicit instructions for Xcode +15-Jan-2007 Roger B. Dannenberg + Changed instructions because of changes to Makefile.osx +07-Oct-2006 Roger B. Dannenberg + Added directions for xcodebuild +29-aug-2006 Roger B. Dannenberg + Updated this documentation. +