Building the SonnetAmiga package - Sakura-IT/SonnetAmiga GitHub Wiki
This article contains information related to the build process.
Building with Linux container
See: https://github.com/Sakura-IT/SonnetAmiga-builder
Building manually
Buliding the Sonnet powerpc.library
and associated programs requires a specially prepared development environment.
Prerequisites
- vasm - current source as of 2018-04-30 or newer.
- vlink - current source as of 2016-02-05 or newer.
- GNU Make - any fairly new version will suffice.
- AmigaOS 3.9 NDK - currently this requires some manual fixing, issue #6 and below.
- WarpOS 5.1 include files (WarpUP_V51Upd.lha on AmiNet).
- patch - if you want to automatically fix the NDK (available on AmiNet).
- lha - for automatically packaging the build results.
Additionally, some tools and utilities needs:
- vbcc 0.9d or newer.
- vbcc AmigaOS 3.x target.
- vbcc WarpOS target.
Note that latest stable version of vasm and vlink do not have the necessary features, you need to build them from the current source (the author of vasm/vlink does not provide daily binary builds).
Building the project on AmigaOS does not require GeekGadgets installed, but finding a working version of GNU Make that does not depend on ixemul.library might be difficult.
Fixing the NDK
Some headers in the NDK need to be fixed, but the necessary patch is temporarily unavailable.
Apply the following patch to the AmigaOS 3.9 NDK:
http://sonnet.uguu.waw.pl/patch-ndk-1.diff
Building
Building is supported on both AmigaOS and UNIX-likes, just export HOST variable when running make, i.e.:
$ make HOST=unix
Path to NDK and WarpOS includes should be provided, on AmigaOS with incluide_i:
assign, on UNIX-like OSes with INCLUDE_I
environment variable.
Path to vbcc should be provided with vbcc:
on AmigaOS and VBCC
environment variable on UNIX.
For example (on UNIX):
$ INCLUDE_I=/opt/amiga-cross/NDK_3.9/Include/include_i/
$ export INCLUDE_I
Obviously, when building on UNIX, WarpOS includes must also be installed below
INCLUDE_I
path.
Packaging
To make a lha archive of the built binaries use "distribution" target in Makefile:
$ make HOST=unix all distribution