aboutsummaryrefslogtreecommitdiff
path: root/htdocs/developer.html
blob: 9764374111ed3129aaf6e19704829a187b82f545 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>Pure Data External Repository</TITLE>
<link rel="stylesheet" type="text/css" href="pd.css" media="screen">

</HEAD>
<BODY text="#000000" bgcolor="#ffffff" >

<h1>Pure Data External Repository</h1>

<div id="Menu">

| <a href="index.html" title=""><b>Introduction</b></a></br>
| <a href="download.html" title=""><b>Download</b></a></br>
| <a href="documentation.html" title=""><b>Documentation</b></a></br>
| <a href="developer.html" title=""><b>Developers</b></a></br>
| <a href="contact.html" title=""><b>Contact</b></a></br>

<br />
<br />
<span style="font-size: 0.8em;">
<b>Quote of the month</b><br />
I think it is certainly true that the open-source movement is a very powerful
source toward higher-quality software, and I would turn the question around and
ask if open-source music wouldn t also be a very good thing. 
</span>
<br><em>MSP</em>

</div>
<div id="Content">
<!-- Quote of the day -->



<h2>Accessing the Externals via CVS</h2>

You have to install cvs. On most Linux systems this is already installed, on
Windows or Mac OS/X you will have to download it <A
HREF="http://cvsgui.sourceforge.net/">from the net</A>.  Then, if you have cvs
installed (this example is assuming the commandline version) use the following
line to login into the CVS server:
<pre>
% cvs -d:pserver:anonymous@cvs.pure-data.sourceforge.net:/cvsroot/pure-data login 
</pre> 
<p>

Hit return when you are asked for a password.  In order to get the source:
<pre>
% cvs -z3 -d:pserver:anonymous@cvs.pure-data.sourceforge.net:/cvsroot/pure-data co externals
</pre>
<p>

This will give you a local copy of the externals-directory in the repository.
After some time, if you want to get all the latest additions and updates, type
(in the externals directory):
<pre>
% cvs -d:pserver:anonymous@cvs.pure-data.sourceforge.net:/cvsroot/pure-data update -d
</pre>
<p>

Without the -d only existing directories on your local copy get updated. 
<p>

Currently building the externals works to same way it did before, just cd into
the external directory (e.g. cd vst) and read through the compilation
instructions.  Later this process will be automated and you can build al the
externals in one go, or even download a precompiled archive for your system.
<p>
Some other modules in the repository include Pd abstractions or the developers
version of Pd. You can check these out by replacing the modulename with the
respective modulename.
<p>
For example check out the abstractions with:
<pre>
% cvs -z3 -d:pserver:anonymous@cvs.pure-data.sourceforge.net:/cvsroot/pure-data co abstractions
</pre>
<p>
or Pd with 

<pre>
% cvs -z3 -d:pserver:anonymous@cvs.pure-data.sourceforge.net:/cvsroot/pure-data co pd
</pre>
<p>
To check out the current developers' branch, which is tagged with &quot;devel_0_36&quot;, use 
<pre>
% cvs -z3 -d:pserver:anonymous@cvs.pure-data.sourceforge.net:/cvsroot/pure-data co -r devel_0_36 pd
</pre>
<p>
You can find out the available branches in the pulldown menu on the project's
<a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/pure-data/pd/">CVS-page</a>
(or use "cvs -T ..."). 
<a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/pure-data/">Browsing CVS</a>
is a good way to see what else is in the repository anyway.
<p>


<h2>Putting Your Externals in the Repository</h2>

This description is mainly about Linux, if you are working with Windows, you
might try the procedure described in this <a
href="http://sfsetup.sourceforge.net/tutorial_cvsaccess.html">tutorial</a>. Let
us know if it works.
<p>

To contribute your pd externals to the repository you'll first have to register
yourself at sourceforge (making you an official developer of the project). Go
to sourceforge.net and click on the "new user" link on the upper left corner.
Then <A HREF="mailto:geiger@xdv.org">send an email </A> with the user you
created and Guenter will add you to the pure-data developer list.
<p>

At the <A HREF="HTTP://sourceforge.net/projects/pure-data">project page</A> you
can see if you are already listed as a developer. The next step is to "import"
your source code. First make sure that your code is in a directory, and remove
everything from that directory that you don't want to put under CVS.  Compiled
code, for example, is not normally put into CVS. 
<p>

Make sure you are in this directory and issue the command:
<p>
<pre>
% export CVS_RSH=ssh
% cvs -z3 -d:ext: developername@cvs.pure-data.sourceforge.net:/cvsroot/pure-data 
  import externals/dirname developername source-dist
</pre>
<p>

Exchange "developername" with your sourceforge accountname and "dirname" with
the  name of your  externals directory.  You have to import the source only
once for your external(s).
<p>

If all of this went well, move away your external directory (keep it as a
backup) and checkout the code with:
<pre>
% cvs -z3 -d:ext:developername@cvs.pure-data.sourceforge.net:/cvsroot/pure-data 
  co externals
</pre>
<p>

From this point on, if you are working in your externals directory, and want to
commit your changes to the server you just have to do
<pre>
% cvs commit
</pre>
<p>

or 
<pre>
% cvs update
</pre>
<p>

to take a look at what you have changed.
<p>

All the information about where the repository is, the loginname etc, is in the
"CVS" directory, that should be part of your external directory now.
<p>

If you are still unsure about the workings, take a look at this <a
href="http://www.cvshome.org/docs/blandy.html">introduction</A> about using
CVS.



</BODY></HTML>