Giter VIP home page Giter VIP logo

max-devkit's Introduction

Max-DevKit

Build Status Build status

Tools, documentation, and reference implementation of a Max Package built using the Max-API.

For full backwards compatibility or additional functionality, the legacy Max SDK may provide an alternate path for those wishing to create their own package including Max external objects written in C/C++.

Structure

There are two levels of material included in the Max-DevKit package. The outer level is a Max package folder named, appropriately, "max-devkit". The inner level is a folder called "max-api".

  • max-devkit is an example package following current best-practices package creation.
  • max-api is a folder containing all of the support files you will need to compile an external object written in C/C++. This folder you will include in your own package's source folder.

Prerequisites

To build the externals in this package you will need some form of compiler support on your system.

  • On the Mac this means Xcode (you can get from the App Store for free).
  • On Windows this most likely means some version of Visual Studio (the free versions should work fine).

You will also need to install CMake.

Building

  1. Get the code from Github, or download a zip and unpack it into a folder.
  2. In the Terminal or Console app of your choice, change directories (cd) into the folder you created in step 0.
  3. mkdir build to create a folder with your various build files
  4. cd build to put yourself into that folder
  5. Now you can generate the projects for your choosen build environment:

Mac

You can build on the command line using Makefiles, or you can generate an Xcode project and use the GUI to build.

  • Xcode: Run cmake -G Xcode .. and then run cmake --build . or open the Xcode project from this "build" folder and use the GUI.
  • Make: Run cmake .. and then run cmake --build . or make. Note that the Xcode project is preferrable because it is able substitute values for e.g. the Info.plist files in your builds.

Windows

If you are using Visual Studio, You can run cmake --help to get a list of the options available. Assuming some version of Visual Studio 2017, the commands to generate the projects will look like this:

  • 32 bit: cmake -G "Visual Studio 15 2017" ..
  • 64 bit: cmake -G "Visual Studio 15 2017 Win64" ..

Having generated the projects, you can now build by opening the .sln file in the build folder with the Visual Studio app (just double-click the .sln file) or you can build on the command line like this:

cmake --build . --config Release

Testing

It is highly recommended that you test your code thoroughly. One option is use the max-test package.

Continuous Integration

Continuous Integration (CI) is...

The Max-DevKit project models CI using two different services, both of which are free and very easy to set up if your project is hosted publically on Github.

  • Mac: go to http://travis-ci.org and sign up. If your repository follows the same model as Max-DevKit, you can copy .travis.yml directly with no changes. Now every push to your repository will trigger an automatic build for the Mac with Travis CI.
  • Windows: go to http://appveyor.com and sign up. If your repository follows the same model as Max-DevKit, you can copy appveyor.yml directly with no changes. Now every push to your repository will trigger automatic builds for both 32 and 64-bit Windows with Appveyor.

Fetching your builds

  • Windows: On Appveyor it is simple. You go to the latest build, choose the "Platform" and then look under the "Artifacts" tab.
  • Mac: Travis CI does not host your build files for you like Appveyor. Instead, you need to configure a place for Travis to upload your builds. This is most easily done by signing up for a free Amazon Web Services account.

S3 Integration

The builds from Travis for this package can be found on this S3-hosted page.

To setup your own page:

  1. Sign up for a free AWS account as mentioned above
  2. Create a "bucket" for your Travis builds
  3. Add the correct info to your .travis.yml file for your S3 bucket as described in the Travis S3 Documentation.
  4. At this point, builds should go from Travis to a folder in your S3 bucket.
  5. To access the build, you can log in to your S3 account and download it. Alternatively you may want to make your builds publically available. If you wish to do the later, read on...
  6. upload the files from this folder's source/max-api/site folder to your S3 bucket's root folder. For more information on the content of these files, please visit the Github page for the S3 Bucket Listing Code.
  7. As described on the above Github page, you will need to set the permissions for your bucket such that "Everyone" has both listing and viewing access.

Support

For support, please use the developer forums at: http://cycling74.com/forums/

max-devkit's People

Contributors

benbrackenc74 avatar grrrwaaa avatar tap avatar

Watchers

James Cloos avatar Nathan Argetsinger avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.