Skip to content

I managed to fully build this for Apple Silicon - Works like a charm #39

Description

@dmitridb

Hello;

I'm noticing the binaries last released in 2023 were just X64, so I went and took the time to port it to apple silicon - I'll make a pull request if I can get a confirmation that this isn't already in the pipeline or something, any guidance on the process to do that?

Admittedly I just let claude do this lol. Here's the BUILD-LOG.md it generated in case anyone else wants to get this done and would like a starting point in the meantime

entelechy@manzana cdp-build % cat BUILD-LOG.md

CDP8 + Renoise CDP Interface BUILD LOG

Started: Sun 28 Jun 2026 16:18:46 CST
Host: Darwin 25.5.0 arm64

===== RECON Sun 28 Jun 2026 16:18:46 CST =====

arch

arm64
Apple M2 Pro
proc_translated=0

toolchain

xcode-select -p: /Applications/Xcode.app/Contents/Developer
Apple clang version 21.0.0 (clang-2100.0.123.102)
cmake version 4.2.3
Homebrew 6.0.5
git version 2.50.1 (Apple Git-155)

renoise apps

/Applications/Renoise.app -> v3.5.4

renoise prefs and tools

V3.5.2
V3.5.4
/Users/entelechy/Library/Preferences/Renoise/V3.5.2/Scripts/Tools
/Users/entelechy/Library/Preferences/Renoise/V3.5.4/Scripts/Tools
Cloning into 'CDP8'...
PATCH Sun 28 Jun 2026 18:34:36 CST: removed -Werror from portaudio Makefile (clang 21 -Wimplicit-const-int-float-conversion in pa_converters.c). Backup: Makefile.orig
/opt/homebrew/bin/ginstall -c -d /usr/local/lib
/bin/sh ./libtool --mode=install /opt/homebrew/bin/ginstall -c lib/libportaudio.la /usr/local/lib
libtool: install: /opt/homebrew/bin/ginstall -c lib/.libs/libportaudio.lai /usr/local/lib/libportaudio.la
libtool: install: /opt/homebrew/bin/ginstall -c lib/.libs/libportaudio.a /usr/local/lib/libportaudio.a
libtool: install: chmod 644 /usr/local/lib/libportaudio.a
libtool: install: ranlib /usr/local/lib/libportaudio.a
/opt/homebrew/bin/ginstall -c -d /usr/local/include
for include in portaudio.h; do
/opt/homebrew/bin/ginstall -c -m 644 -m 644 ./include/$include /usr/local/include/$include;
done
/opt/homebrew/bin/ginstall -c -d /usr/local/lib/pkgconfig
/opt/homebrew/bin/ginstall -c -m 644 portaudio-2.0.pc /usr/local/lib/pkgconfig/portaudio-2.0.pc


PortAudio was successfully installed.

On some systems (e.g. Linux) you should run 'ldconfig' now
to make the shared object available. You may also need to
modify your LD_LIBRARY_PATH environment variable to include
the directory /usr/local/lib

/Applications/Xcode.app/Contents/Developer/usr/bin/make install-recursive
if test -n "" ; then for dir in ""; do /Applications/Xcode.app/Contents/Developer/usr/bin/make -C $dir install; done ; fi

[3] CDP build OK Sun 28 Jun 2026 18:44:20 CST: make exit=0, 0 errors, native arm64, no source patches.

[4] relocated NewRelease -> ~/cdp/_cdprogs ( 220 items)

[6] Sun 28 Jun 2026 18:52:22 CST: ApiVersion 5->6 in manifest.xml; re-zipped as com.afta8.CdpInterface.xrnx

================================================================
SETUP COMPLETE — SUMMARY (reproduce / undo)

HOST: Apple M2 Pro, macOS arm64 (native; proc_translated=0)
TOOLCHAIN (all pre-existing; step [0] no-op): clang 21, cmake 4.2.3, Homebrew 6.0.5, git 2.50.1
RENOISE: 3.5.4, Lua API major 6. Tools: ~/Library/Preferences/Renoise/V3.5.4/Scripts/Tools

INSTALLED / WHERE:

  • portaudio v19.7.0 (static, arm64), systemwide:
    /usr/local/lib/libportaudio.a
    /usr/local/lib/pkgconfig/portaudio-2.0.pc
    /usr/local/include/portaudio.h
  • CDP8 source+build: ~/cdp-build/CDP8 (build/, NewRelease/)
  • CDP binaries (arm64, 220): ~/cdp/_cdprogs
  • Renoise tool installed: ~/Library/Preferences/Renoise/V3.5.4/Scripts/Tools/com.afta8.CdpInterface.xrnx
  • Patched installer kept: ~/cdp-build/com.afta8.CdpInterface.xrnx

CONFIG FLAGS:

  • portaudio: ./configure --enable-shared=no --enable-mac-universal=no (per dev/externals/paprogs/pamacbuild.txt)
  • CDP cmake: cmake .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_POLICY_VERSION_MINIMUM=3.5

PATCHES:

  1. portaudio Makefile: removed all -Werror (clang 21 -Wimplicit-const-int-float-conversion in
    src/common/pa_converters.c, *src * 0x7FFFFFFF). Backup: paprogs/portaudio/Makefile.orig
  2. CDP8 source: NONE (clean on clang 21; repo Sept-2025 revision).
  3. Tool manifest.xml: ApiVersion 5 -> 6. Backup: CdpInterface_patched/manifest.xml.orig

TOOL PATH CONFIGURED: CDP dir -> ~/cdp/_cdprogs (tool first-run file selector)
VERIFICATION [9]: sample processed through CDP inside Renoise returned transformed audio. CONFIRMED.

ROLLBACK (in this order):

  1. Remove tool: rm -rf ~/Library/Preferences/Renoise/V3.5.4/Scripts/Tools/com.afta8.CdpInterface.xrnx
  2. Uninstall portaudio (needs build dir, so BEFORE step 4):
    cd ~/cdp-build/CDP8/dev/externals/paprogs/portaudio && sudo make uninstall
    (or: sudo rm -f /usr/local/lib/libportaudio.a /usr/local/lib/pkgconfig/portaudio-2.0.pc /usr/local/include/portaudio.h)
  3. Remove binaries: rm -rf ~/cdp
  4. Remove build tree: rm -rf ~/cdp-build

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions