[PD-dev] Packaging question for Scheme for Pd

Christof Ressi info at christofressi.com
Mon Oct 4 18:17:17 CEST 2021


> who build from source
If people build from source, they are also expected to install it, since 
the installation process is responsible for assembling all the files at 
the appropriate location.

pd-lib-builder already has sane default installation paths for "make 
install" (which, of course, can be overriden). The result should look 
the same as an (extracted) Deken package, so you don't have to treat it 
differently.

Christof

On 04.10.2021 18:06, Iain Duncan wrote:
> Thanks, IOhannes, that sounds sensible. So in order to make it as 
> homogenous as possible between people who build from source and those 
> who install the package (as ultimately I would like this to be 
> extension friendly at the C level), do you think it would be best to 
> just have the scm files live in the same directory as the C files in 
> the source? Or is there some suggested approach when using pd lib 
> builder to make this simple?
>
> thanks
> iain
>
> On Mon, Oct 4, 2021 at 8:52 AM IOhannes m zmoelnig <zmoelnig at iem.at 
> <mailto:zmoelnig at iem.at>> wrote:
>
>     On 10/4/21 5:22 PM, Iain Duncan wrote:
>     > of the package ('s4pd') so that this can simply be put in the
>     Pd/externals
>     > directory? I just need to know what "normal" is for a release
>     package.
>
>     yes: ship the scm files besides your external.
>
>     the easiest way is to instruct people to load your library with
>     [declare -path s4pd -lib s4pd] (which will add .../s4pd to Pd's
>     search
>     paths and *also* load the s4pd.pd_linux external).
>     in the s4pd_setup() (or better: s4pd_new()) callback, spit out a
>     big fat
>     wraning if the scm files cannot be found like:
>      > ERROR: could not find 's4pd.scm'!
>      > ERROR: use [declare -path s4pd -lib s4pd] to load this external
>
>     and refuse to create an instance of the interpreter.
>
>     to make things a bit nicer, you could *additionally* search for
>     "s4pd/s4pd.scm", and only bail out if neither of the two can be found.
>
>
>     you could also check how other language bindings do this, e.g.
>     [tclpd]
>     or [pdlua]
>     (both of which somehow try to get the path of the library file,
>     and then
>     use that to load their auxiliary scripts)
>
>     gfmnasdr
>     IOhannes
>
>     [tclpd]
>     <https://svn.code.sf.net/p/pure-data/svn/trunk/externals/loaders/tclpd/tclpd.c
>     <https://svn.code.sf.net/p/pure-data/svn/trunk/externals/loaders/tclpd/tclpd.c>>
>     [pdlua]
>     <https://svn.code.sf.net/p/pure-data/svn/trunk/externals/loaders/pdlua/src/pdlua.c
>     <https://svn.code.sf.net/p/pure-data/svn/trunk/externals/loaders/pdlua/src/pdlua.c>>
>
>     PS: we probably should move these to gitlab :-)
>
>     _______________________________________________
>     Pd-dev mailing list
>     Pd-dev at lists.iem.at <mailto:Pd-dev at lists.iem.at>
>     https://lists.puredata.info/listinfo/pd-dev
>     <https://lists.puredata.info/listinfo/pd-dev>
>
>
> _______________________________________________
> Pd-dev mailing list
> Pd-dev at lists.iem.at
> https://lists.puredata.info/listinfo/pd-dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-dev/attachments/20211004/806fe44b/attachment.htm>


More information about the Pd-dev mailing list