You've already forked macports-ports
mirror of
https://github.com/macports/macports-ports.git
synced 2026-07-12 18:20:25 -07:00
105 lines
3.0 KiB
Tcl
105 lines
3.0 KiB
Tcl
# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
|
|
|
|
PortSystem 1.0
|
|
PortGroup github 1.0
|
|
|
|
github.setup VCVRack Rack 1.1.6 v
|
|
# Change github.tarball_from to 'releases' or 'archive' next update
|
|
github.tarball_from tarball
|
|
name vcvrack
|
|
|
|
categories audio
|
|
license GPL-3
|
|
|
|
set rack_fundamental_version 1.3.1
|
|
|
|
homepage https://vcvrack.com/
|
|
|
|
description VCV Rack is an open-source virtual modular synthesizer.
|
|
|
|
long_description {*}${description}
|
|
|
|
maintainers {gmail.com:herby.gillot @herbygillot} \
|
|
openmaintainer
|
|
|
|
# Build process requires git checkout
|
|
fetch.type git
|
|
|
|
patchfiles patch-makefile.diff
|
|
patchfiles-append fetch.patch
|
|
|
|
depends_fetch-append \
|
|
port:wget
|
|
|
|
depends_build-append \
|
|
path:bin/cmake:cmake \
|
|
port:jq
|
|
|
|
use_configure no
|
|
|
|
compiler.thread_local_storage yes
|
|
|
|
# fatal error: 'stdatomic.h' file not found
|
|
compiler.blacklist-append {clang < 700}
|
|
|
|
build.env-append CC=${configure.cc} \
|
|
CXX=${configure.cxx} \
|
|
CPP=${configure.cpp}
|
|
|
|
set rack_fundamental_checksum \
|
|
1c6ec2aca01ac912181d194ff12f4137ca6e5ddd8616ccee3497b7b4347f59ff
|
|
|
|
set rack_fundamental_url \
|
|
"https://github.com/VCVRack/Fundamental/archive/v${rack_fundamental_version}.zip"
|
|
|
|
post-fetch {
|
|
# Fetch Rack's Fundamental plugins
|
|
system -W ${workpath} "wget ${rack_fundamental_url} -O ./Fundamental.zip"
|
|
}
|
|
|
|
post-checksum {
|
|
# Checksum plugins
|
|
system -W ${workpath} \
|
|
"echo '${rack_fundamental_checksum} ./Fundamental.zip' | shasum -a 256 -c"
|
|
}
|
|
|
|
post-extract {
|
|
# Fetch dependencies
|
|
system -W ${worksrcpath} \
|
|
"git submodule update --init --recursive"
|
|
|
|
# Extract plugins and move them into place for the build process
|
|
system -W ${workpath} "unzip -q -x Fundamental.zip"
|
|
move ${workpath}/Fundamental-${rack_fundamental_version} ${workpath}/Fundamental
|
|
move ${workpath}/Fundamental ${worksrcpath}/plugins/
|
|
}
|
|
|
|
build {
|
|
set build_command "${build.env} ${build.cmd} -j ${build.jobs}"
|
|
|
|
# Build dependencies
|
|
system -W ${worksrcpath} "${build_command} dep"
|
|
|
|
# Build plugins
|
|
system -W ${worksrcpath} "${build_command} plugins"
|
|
|
|
# Collect plugins distributables
|
|
xinstall -d ${workpath}/plugins
|
|
xinstall -d ${workpath}/plugins/Fundamental
|
|
copy {*}[glob ${worksrcpath}/plugins/Fundamental/LICENSE* \
|
|
${worksrcpath}/plugins/Fundamental/plugin* ] \
|
|
${worksrcpath}/plugins/Fundamental/res \
|
|
${worksrcpath}/plugins/Fundamental/src \
|
|
${workpath}/plugins/Fundamental
|
|
|
|
# Create plugins zip file
|
|
system -W ${workpath}/plugins/ "zip -9 -r ${worksrcpath}/Fundamental.zip ./"
|
|
|
|
# Create VCVRack distributable
|
|
system -W ${worksrcpath} "${build_command} dist"
|
|
}
|
|
|
|
destroot {
|
|
copy ${worksrcpath}/dist/Rack.app ${destroot}${applications_dir}/
|
|
}
|