Personal tools
You are here: Home documentation developer RepositoryLayout

Development Repositories and Build System

While the core of Pd is basically written by Miller Puckette, who takes patches from the Pd community, most of the Pd developer activity is outside of the core in the form of abstractions, external objects, GUI enhancements, APIs, etc. This is the key to what makes Pd so powerful: the wealth of code provided by the community built around a solid core.

So in order to bring all of the this together and create all-inclusive packages, the Subversion Repository was created. All developers who write code for or with Pd are encouraged to contribute their code to the repository and maintain their code there so that anyone can create an up-to-the-minute Pd install by downloading the code from the repository and compiling it using the build system of their platform.

In order to make sure your code gets distributed with the Pd installer packages, you need to add your files to the build system.

Currently, you need to add your files to the abstractions/Makefile if you want it to be included in Pd-extended
Any extra documentation goes in this directory. doc/pddp is the root of the PDDP files. Any kind of tutorial, manual, etc. is at home here.
This section is for extensions to Pd itself, things like xgui or gripd which replace the GUI of Pd.
The main externals build system is in externals/Makefile. You can copy and paste the template section in that file to create your own build system.
If you would like to create an installer build system for another platform, then all of the files for that should go in a subdirectory of packages. Currently in that directory, there is darwin_app, linux_make and win32_inno. debian and planetccrma_rpm are in the works. The format of the subdirectory name is OSname_packagetype. Darwin was chosen for MacOS X since that the name of the underlying BSD/UNIX OS. For GNU/Linux, the distro name is used.
Any kind of script related to Pd goes in this section. There are some UNIX-style scripts like a SysV startup script, a bash completion script, etc., plus scripts that add in the building of Pd-extended

Powered by IEM Powered by Plone Section 508 WCAG Valid XHTML Valid CSS Usable in any browser