Skip to content

📦 Package manager for REAPER

License

LGPL-3.0, GPL-3.0 licenses found

Licenses found

LGPL-3.0
COPYING.LESSER
GPL-3.0
COPYING
Notifications You must be signed in to change notification settings

IlyaFinkelshteyn/reapack

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,352 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ReaPack: Package manager for REAPER

Build status macOS build status Donate

Visit the ReaPack website for ready-to-use binaries and the user guide.

Compilation

The following section describes how to build ReaPack on your computer. The build system is based on Tup. A modern compiler (gcc/clang/msvc) with C++17 support is needed.

By default the tup command triggers both the 64-bit and 32-bit builds. Use tup x64 or tup x86 to select a single architecture. Run the test suite with make test.

The 64-bit and 32-bit binaries (such as reaper_reapack64.so) are created in x64/bin and x86/bin respectively. Copy or link the desired one into <REAPER resource path>/UserPlugins and restart REAPER to use it.

Compiling ReaPack requires a few external libraries and files depending on the operating system.

Put the REAPER extension SDK into the vendor directory:

  • reaper_plugin.h from reaper-oss/sws
  • reaper_plugin_functions.h from the REAPER action "[developer] Write C++ API functions header"

Clone WDL: git clone https://github.com/justinfrankel/WDL.git vendor/WDL

Linux

Install GCC/G++, tup, PHP and the development files for Boost (1.56 or later), Catch2, libcurl, SQLite3 and zlib matching the target architecture(s).

Custom compiler

Set the CXX environement variable to select a different compiler (default is gcc if unset).

CXX=gcc-8 tup x64

Custom libcurl

Set the CURLSO environment variable to override the system default libcurl used for linking. Some older distributions still ship libcurl with the old pre-7.16 SONAME. Consider using a libcurl built with --disable-versioned-symbols to produce more compatible binaries (libcurl-compat on Arch Linux for example).

CURLSO=:libcurl.so.3 tup

macOS

Install Boost, tup and Xcode Command Line Tools. Using Homebrew:

xcode-select --install
brew cask install osxfuse
brew install boost tup

Download the single header version of Catch2 (catch.hpp) into vendor/catch2.

Apply these patches to WDL:

Windows

Install tup (explicit-variant branch, see this thread) and Visual Studio 2017 with C++ support.

Clone vcpkg into vendor and install the build dependencies:

git clone https://github.com/Microsoft/vcpkg.git vendor\vcpkg
git apply --directory=vendor vendor\0001-vcpkg-curl-use-winssl.patch
vendor\vcpkg\bootstrap-vcpkg.bat

set /p vcpkg-deps=<vendor\vcpkg-deps.txt
vendor\vcpkg\vcpkg install --triplet x64-windows-static %vcpkg-deps%
vendor\vcpkg\vcpkg install --triplet x86-windows-static %vcpkg-deps%

Support and feedback

Ask any ReaPack-releated questions in the ReaPack forum thread. Questions related to development or packaging can be asked in the development thread.

Report bugs or request features in the issue tracker.

About

📦 Package manager for REAPER

Resources

License

LGPL-3.0, GPL-3.0 licenses found

Licenses found

LGPL-3.0
COPYING.LESSER
GPL-3.0
COPYING

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 99.0%
  • Other 1.0%