From eb976fa09171036cbaeaabf920708b2d39c49acc Mon Sep 17 00:00:00 2001 From: Miller Puckette Date: Sat, 3 Jun 2006 18:22:09 +0000 Subject: Removing renamed files svn path=/trunk/; revision=5163 --- pd/doc/3.audio.examples/A07.frequency.mod.pd | 54 ---- pd/doc/3.audio.examples/A08.review.pd | 41 --- pd/doc/3.audio.examples/F14.wave.packet.pd | 112 +++++++ pd/doc/5.reference/0.INTRO.txt | 153 ---------- pd/src/d_fft_mayer.c | 423 +++++++++++++++++++++++++++ pd/src/d_mayer_fft.c | 423 --------------------------- pd/src/makefile | 193 ------------ 7 files changed, 535 insertions(+), 864 deletions(-) delete mode 100644 pd/doc/3.audio.examples/A07.frequency.mod.pd delete mode 100644 pd/doc/3.audio.examples/A08.review.pd create mode 100644 pd/doc/3.audio.examples/F14.wave.packet.pd delete mode 100644 pd/doc/5.reference/0.INTRO.txt create mode 100644 pd/src/d_fft_mayer.c delete mode 100644 pd/src/d_mayer_fft.c delete mode 100644 pd/src/makefile diff --git a/pd/doc/3.audio.examples/A07.frequency.mod.pd b/pd/doc/3.audio.examples/A07.frequency.mod.pd deleted file mode 100644 index aedb1cc1..00000000 --- a/pd/doc/3.audio.examples/A07.frequency.mod.pd +++ /dev/null @@ -1,54 +0,0 @@ -#N canvas 92 96 760 640 12; -#X obj 259 168 *~; -#X floatatom 259 83 0 0 0 0 - - -; -#X floatatom 169 118 0 0 0 0 - - -; -#X obj 169 188 +~; -#N canvas 0 0 450 300 graph1 0; -#X array fm-output 441 float 0; -#X coords 0 1.02 440 -1.02 200 130 1; -#X restore 527 40 graph; -#X msg 244 228 bang; -#X text 286 228 <-- click to graph; -#X obj 244 252 tabwrite~ fm-output; -#X floatatom 281 138 0 0 0 0 - - -; -#X text 166 75 carrier; -#X text 165 93 frequency; -#X text 244 59 frequency; -#X text 245 42 modulation; -#X text 33 8 FREQUENCY MODULATION ("FM") USING TWO OSCILLATORS; -#X obj 168 232 osc~; -#X text 52 214 "carrier"; -#X text 34 232 oscillator -->; -#X text 47 149 add modulator; -#X text 46 167 to carrier; -#X text 44 186 frequency -->; -#X text 320 150 index; -#X text 322 131 modulation; -#X obj 259 108 osc~; -#X text 531 172 --- 0.01 seconds ----; -#X text 53 443 To get the FM sound \, set all three of carrier frequency -\, modulation frequency \, and modulation index in the hundreds. Note -that you get a timbral change as you sweep modulation index \, because -this changes the amplitudes of the components of the output sound but -not their frequencies.; -#X obj 167 270 output~; -#X text 489 613 updated for Pd version 0.37; -#X text 54 332 This patch shows the classical FM synthesis technique -developed by John Chowning. It's nothing but an oscillator with vibrato -controlled by another "modulation" oscillator. First \, to understand -the patch \, set carrier frequency to 400 or so \, modulation frequency -between 5 and 10 \, and try modulation index values between 0 and 400 -\, say. You'll hear a sine wave with vibrato.; -#X text 55 526 The component frequencies are equal to the carrier frequency -\, plus or minus multiples of the modulator frequency. A more complete -discussion of FM occurs in part 5 of this series.; -#X connect 0 0 3 1; -#X connect 1 0 22 0; -#X connect 2 0 3 0; -#X connect 3 0 14 0; -#X connect 5 0 7 0; -#X connect 8 0 0 1; -#X connect 14 0 7 0; -#X connect 14 0 25 0; -#X connect 14 0 25 1; -#X connect 22 0 0 0; diff --git a/pd/doc/3.audio.examples/A08.review.pd b/pd/doc/3.audio.examples/A08.review.pd deleted file mode 100644 index 9b190a19..00000000 --- a/pd/doc/3.audio.examples/A08.review.pd +++ /dev/null @@ -1,41 +0,0 @@ -#N canvas 36 68 701 588 12; -#X text 444 542 updated for Pd version 0.34; -#X text 39 14 PART 1 REVIEW; -#X obj 66 131 tabwrite~; -#X obj 66 105 line~; -#X obj 54 298 +; -#X obj 66 79 +~; -#X obj 66 209 cos~; -#X obj 66 157 osc~; -#X obj 66 183 phasor~; -#X obj 54 324 pack; -#X obj 52 511 r; -#X obj 53 487 s; -#X obj 54 408 inlet; -#X obj 53 462 f; -#X obj 53 436 t; -#X obj 54 378 dbtorms; -#X obj 97 351 mtof; -#X obj 54 350 ftom; -#X obj 105 408 outlet; -#X obj 66 235 dac~; -#X text 26 52 So far we've seen these audio ("tilde") objects:; -#X text 123 104 -- ramp generator; -#X text 157 131 -- sampler (which we've only used for graphing so far) -; -#X text 111 157 -- a cosine wave oscillator; -#X text 139 183 -- phase generator for making your own oscillator; -#X text 112 209 -- cosine waveshape lookup; -#X text 112 236 -- audio output ("digital/analog converter" -- a misnomer) -; -#X text 31 266 ... and these "control" objects:; -#X text 145 349 -- frequency to pitch conversion; -#X text 126 378 -- decibel to amplitude conversion; -#X text 167 409 -- input and output to a subpatch; -#X text 90 437 ("trigger") -- message ordering and conversion; -#X text 93 462 ("float") -- store a (floating point) number; -#X text 90 488 ("send") -- wireless message sending; -#X text 91 513 ("receive") ... and receiving; -#X text 106 78 (etc.) -- arithmetic on audio signals; -#X text 92 296 (etc.) -- arithmetic; -#X text 99 323 -- combine two or more values in a single message; diff --git a/pd/doc/3.audio.examples/F14.wave.packet.pd b/pd/doc/3.audio.examples/F14.wave.packet.pd new file mode 100644 index 00000000..bb6c92b2 --- /dev/null +++ b/pd/doc/3.audio.examples/F14.wave.packet.pd @@ -0,0 +1,112 @@ +#N canvas 448 73 647 779 12; +#X floatatom 272 241 4 0 127 0 - - -; +#X text 268 203 center; +#X obj 272 308 line~; +#X obj 272 285 pack 0 50; +#X floatatom 205 246 4 0 127 0 - - -; +#X text 153 204 fundamental; +#X floatatom 397 252 4 0 127 0 - - -; +#X obj 397 323 line~; +#X obj 132 586 *~; +#X obj 397 300 pack 0 50; +#X obj 132 635 cos~; +#X obj 206 310 mtof; +#X obj 294 333 expr 1/$f1; +#X obj 272 261 mtof; +#X text 267 218 freq.; +#X obj 272 357 *~; +#X text 394 231 bandwidth; +#X obj 397 274 mtof; +#X obj 396 366 *~; +#X text 437 358 divide by fundamental; +#X text 149 220 (MIDI units); +#X obj 136 720 output~; +#X text 91 2 WAVE PACKETS AS ALTERNATIVE TO PAF; +#X obj 79 421 phasor~; +#X obj 471 479 +~ 0.5; +#X obj 471 504 wrap~; +#X text 442 424 second phase signal; +#X text 443 439 out of phase from; +#X text 441 456 first one; +#X obj 132 658 +~ 1; +#X obj 78 522 -~ 0.5; +#X obj 135 692 +~; +#X obj 77 586 *~; +#X obj 77 609 cos~; +#X obj 214 556 samphold~; +#X obj 126 555 samphold~; +#X obj 76 634 *~; +#X obj 132 610 clip~ -0.5 0.5; +#X obj 372 597 *~; +#X obj 372 646 cos~; +#X obj 372 669 +~ 1; +#X obj 318 533 -~ 0.5; +#X obj 317 597 *~; +#X obj 317 620 cos~; +#X obj 454 567 samphold~; +#X obj 366 566 samphold~; +#X obj 316 645 *~; +#X obj 372 621 clip~ -0.5 0.5; +#X obj 396 390 max~ 1; +#X obj 205 285 - 12; +#X text 375 755 updated for Pd version 0.40.; +#X text 20 122 The patch is almost exactly like B13 (the overlapping +sample) except that \, instead of using tabread~ we just use cos~ \, +and that we control pulse width (for bandwidth) as well as wavetable +transposition (for center frequency).; +#X text 18 23 The stretched wavetable method is an alternative to the +PAF generator \, slightly more expensive in processing time but with +two advantages: first \, it is not patent encumbered (PAF patent runs +out in 2011) and second \, it can be generalized to use samples instead +of sinusoids to make complex spectral shapes.; +#X connect 0 0 13 0; +#X connect 2 0 15 0; +#X connect 3 0 2 0; +#X connect 4 0 49 0; +#X connect 6 0 17 0; +#X connect 7 0 18 0; +#X connect 8 0 37 0; +#X connect 9 0 7 0; +#X connect 10 0 29 0; +#X connect 11 0 12 0; +#X connect 11 0 23 0; +#X connect 12 0 15 1; +#X connect 12 0 18 1; +#X connect 13 0 3 0; +#X connect 15 0 35 0; +#X connect 15 0 45 0; +#X connect 17 0 9 0; +#X connect 18 0 48 0; +#X connect 23 0 24 0; +#X connect 23 0 30 0; +#X connect 23 0 35 1; +#X connect 23 0 34 1; +#X connect 24 0 25 0; +#X connect 25 0 41 0; +#X connect 25 0 45 1; +#X connect 25 0 44 1; +#X connect 29 0 36 1; +#X connect 30 0 8 0; +#X connect 30 0 32 0; +#X connect 31 0 21 0; +#X connect 31 0 21 1; +#X connect 32 0 33 0; +#X connect 33 0 36 0; +#X connect 34 0 8 1; +#X connect 35 0 32 1; +#X connect 36 0 31 0; +#X connect 37 0 10 0; +#X connect 38 0 47 0; +#X connect 39 0 40 0; +#X connect 40 0 46 1; +#X connect 41 0 38 0; +#X connect 41 0 42 0; +#X connect 42 0 43 0; +#X connect 43 0 46 0; +#X connect 44 0 38 1; +#X connect 45 0 42 1; +#X connect 46 0 31 1; +#X connect 47 0 39 0; +#X connect 48 0 34 0; +#X connect 48 0 44 0; +#X connect 49 0 11 0; diff --git a/pd/doc/5.reference/0.INTRO.txt b/pd/doc/5.reference/0.INTRO.txt deleted file mode 100644 index 8f935404..00000000 --- a/pd/doc/5.reference/0.INTRO.txt +++ /dev/null @@ -1,153 +0,0 @@ -The "reference" section of the documentation should contain a patch -demonstrating how to use each of Pd's classes. As of version 0.29, a complete -list of "object" classes follows. Not included in this list are messages, -atoms, graphs, etc. which aren't typed into object boxes but come -straight off the "add" menu. - ----------------------------- GLUE -------------------------------- -bang - output a bang message -float - store and recall a number -symbol - store and recall a symbol -int - store and recall an integer -send - send a message to a named object -receive - catch "sent" messages -select - test for matching numbers or symbols -route - route messages according to first element -pack - make compound messages -unpack - get elements of compound messages -trigger - sequence and convert messagess -spigot - interruptible message connection -moses - part a numeric stream -until - looping mechanism -print - print out messages -makefilename - format a symbol with a variable field -change - remove repeated numbers from a stream -swap - swap two numbers -value - shared numeric value ------------------------------- TIME ---------------------------------- -delay - send a message after a time delay -metro - send a message periodically -line - send a series of linearly stepped numbers -timer - measure time intervals -cputime - measure CPU time -realtime -measure real time -pipe - dynamically growable delay line for numbers ------------------------------- MATH ---------------------------------- -+ - * / pow arithmetic -== != > < >= <= relational tests -& && | || % bit twiddling -mtof ftom powtodb rmstodb dbtopow dbtorms convert acoustical units -mod div sin cos tan atan atan2 sqrt log exp abs higher math -random lower math -max min greater or lesser of 2 numbers -clip force a number into a range ------------------------------- MIDI ---------------------------------- -notein ctlin pgmin bendin touchin polytouchin midiin sysexin - MIDI input -noteout ctlout pgmout bendout touchout polytouchout midiout - MIDI output -makenote - schedule a delayed "note off" message corresponding to a note-on -stripnote - strip "note off" messages ------------------------------- TABLES---------------------------------- -tabread - read a number from a table -tabread4 - read a number from a table, with 4 point interpolation -tabwrite - write a number to a table -soundfiler - read and write tables to soundfiles ------------------------------- MISC ---------------------------------- -loadbang - bang on load -serial - serial device control for NT only -netsend - send messages over the internet -netreceive - receive them -qlist - message sequencer -textfile - file to message converter -openpanel - "Open" dialog -savepanel - "Save as" dialog -bag - set of numbers -poly - polyphonic voice allocation -key, keyup - numeric key values from keyboard -keyname - symbolic key name --------------------------- AUDIO MATH ---------------------------------- -+~ -~ *~ /~ arithmetic on audio signals -max~ min~ - maximum or minimum of 2 inputs -clip~ - constrict signal to lie between two bounds -q8_rsqrt~ - cheap reciprocal square root (beware -- 8 bits!) -q8_sqrt~ - cheap square root (beware -- 8 bits!) -wrap~ - wraparound (fractional part, sort of) -fft~ - complex forward discrete Fourier transform -ifft~ - complex inverse discrete Fourier transform -rfft~ - real forward discrete Fourier transform -rifft~ - real inverse discrete Fourier transform -framp~ - output a ramp for each block -mtof~, ftom~, rmstodb~, dbtorms~, rmstopow~, powtorms~ - acoustic conversions --------------------------- AUDIO GLUE ---------------------------------- -dac~ - audio output -adc~ - audio input -sig~ - convert numbers to audio signals -line~ - generate audio ramps -vline~ - deluxe line~ -threshold~ detect signal thresholds -snapshot~ - sample a signal (convert it back to a number) -vsnapshot~ deluxe snapshot~ -bang~ - send a bang message after each DSP block -samplerate~ get the sample rate -send~ - nonlocal signal connection with fanout -receive~ - get signal from send~ -throw~ - add to a summing bus -catch~ - define and read a summing bus -block~ - specify block size and overlap -switch~ - switch DSP computation on and off -readsf~ - soundfile playback from disk -writesf~ - record sound to disk --------------------- AUDIO OSCILLATORS AND TABLES ------------------------ -phasor~ - sawtooth oscillator -cos~ - cosine -osc~ - cosine oscillator -tabwrite~ - write to a table -tabplay~ - play back from a table (non-transposing) -tabread~ - non-interpolating table read -tabread4~ - four-point interpolating table read -tabosc4~ - wavetable oscillator -tabsend~ - write one block continuously to a table -tabreceive~ read one block continuously from a table --------------------- AUDIO FILTERS ------------------------ -vcf~ - voltage controlled filter -noise~ - white noise generator -env~ - envelope follower -hip~ - high pass filter -lop~ - low pass filter -bp~ - band pass filter -biquad~ - raw filter -samphold~ - sample and hold unit -print~ - print out one or more "blocks" -rpole~ - raw real-valued one-pole filter -rzero~ - raw real-valued one-zero filter -rzero_rev~ rzero~, time-reversed -cpole~, czero~, czero_rev - corresponding complex-valued filters --------------------- AUDIO DELAY ------------------------ -delwrite~ - write to a delay line -delread~ - read from a delay line -vd~ - read from a delay line at a variable delay time ------------------------------- SUBWINDOWS ---------------------------------- -pd - define a subwindow -table - array of numbers in a subwindow -inlet - add an inlet to a pd -outlet - add an outlet to a pd -inlet~, outlet~ - signal versions of inlet, outlet ------------------------------- DATA TEMPLATES ----------------------------- -struct - define a data structure -drawcurve, filledcurve - draw a curve -drawpolygon, filledpolygon - draw a polygon -plot - plot an array field -drawnumber - print a numeric value ------------------------------- ACCESSING DATA ---------------------------- -pointer - point to an object belonging to a template -get - get numeric fields -set - change numeric fields -element - get an array element -getsize - get the size of an array -setsize - change the size of an array -append - add an element to a list -sublist - get a pointer into a list which is an element of another scalar -scalar - draw a scalar on parent ------------------------------- OBSOLETE ---------------------------- -scope~ (use tabwrite~ now) -namecanvas -template (use struct now) diff --git a/pd/src/d_fft_mayer.c b/pd/src/d_fft_mayer.c new file mode 100644 index 00000000..860b3120 --- /dev/null +++ b/pd/src/d_fft_mayer.c @@ -0,0 +1,423 @@ +/* +** FFT and FHT routines +** Copyright 1988, 1993; Ron Mayer +** +** mayer_fht(fz,n); +** Does a hartley transform of "n" points in the array "fz". +** mayer_fft(n,real,imag) +** Does a fourier transform of "n" points of the "real" and +** "imag" arrays. +** mayer_ifft(n,real,imag) +** Does an inverse fourier transform of "n" points of the "real" +** and "imag" arrays. +** mayer_realfft(n,real) +** Does a real-valued fourier transform of "n" points of the +** "real" array. The real part of the transform ends +** up in the first half of the array and the imaginary part of the +** transform ends up in the second half of the array. +** mayer_realifft(n,real) +** The inverse of the realfft() routine above. +** +** +** NOTE: This routine uses at least 2 patented algorithms, and may be +** under the restrictions of a bunch of different organizations. +** Although I wrote it completely myself, it is kind of a derivative +** of a routine I once authored and released under the GPL, so it +** may fall under the free software foundation's restrictions; +** it was worked on as a Stanford Univ project, so they claim +** some rights to it; it was further optimized at work here, so +** I think this company claims parts of it. The patents are +** held by R. Bracewell (the FHT algorithm) and O. Buneman (the +** trig generator), both at Stanford Univ. +** If it were up to me, I'd say go do whatever you want with it; +** but it would be polite to give credit to the following people +** if you use this anywhere: +** Euler - probable inventor of the fourier transform. +** Gauss - probable inventor of the FFT. +** Hartley - probable inventor of the hartley transform. +** Buneman - for a really cool trig generator +** Mayer(me) - for authoring this particular version and +** including all the optimizations in one package. +** Thanks, +** Ron Mayer; mayer@acuson.com +** +*/ + +/* This is a slightly modified version of Mayer's contribution; write +* msp@ucsd.edu for the original code. Kudos to Mayer for a fine piece +* of work. -msp +*/ + +/* These pragmas are only used for MSVC, not MinGW or Cygwin */ +#ifdef _MSC_VER +#pragma warning( disable : 4305 ) /* uncast const double to float */ +#pragma warning( disable : 4244 ) /* uncast double to float */ +#pragma warning( disable : 4101 ) /* unused local variables */ +#endif + +/* the following is needed only to declare pd_fft() as exportable in MSW */ +#include "m_pd.h" + +#define REAL float +#define GOOD_TRIG + +#ifdef GOOD_TRIG +#else +#define FAST_TRIG +#endif + +#if defined(GOOD_TRIG) +#define FHT_SWAP(a,b,t) {(t)=(a);(a)=(b);(b)=(t);} +#define TRIG_VARS \ + int t_lam=0; +#define TRIG_INIT(k,c,s) \ + { \ + int i; \ + for (i=2 ; i<=k ; i++) \ + {coswrk[i]=costab[i];sinwrk[i]=sintab[i];} \ + t_lam = 0; \ + c = 1; \ + s = 0; \ + } +#define TRIG_NEXT(k,c,s) \ + { \ + int i,j; \ + (t_lam)++; \ + for (i=0 ; !((1<1) \ + { \ + for (j=k-i+2 ; (1<>1; (!((k2^=k)&k)); k>>=1); + if (k1>k2) + { + aa=fz[k1];fz[k1]=fz[k2];fz[k2]=aa; + } + } + for ( k=0 ; (1<> 1; + fi = fz; + gi = fi + kx; + fn = fz + n; + do + { + REAL g0,f0,f1,g1,f2,g2,f3,g3; + f1 = fi[0 ] - fi[k1]; + f0 = fi[0 ] + fi[k1]; + f3 = fi[k2] - fi[k3]; + f2 = fi[k2] + fi[k3]; + fi[k2] = f0 - f2; + fi[0 ] = f0 + f2; + fi[k3] = f1 - f3; + fi[k1] = f1 + f3; + g1 = gi[0 ] - gi[k1]; + g0 = gi[0 ] + gi[k1]; + g3 = SQRT2 * gi[k3]; + g2 = SQRT2 * gi[k2]; + gi[k2] = g0 - g2; + gi[0 ] = g0 + g2; + gi[k3] = g1 - g3; + gi[k1] = g1 + g3; + gi += k4; + fi += k4; + } while (fi */ -#ifdef _MSC_VER -#pragma warning( disable : 4305 ) /* uncast const double to float */ -#pragma warning( disable : 4244 ) /* uncast double to float */ -#pragma warning( disable : 4101 ) /* unused local variables */ -#endif - -/* the following is needed only to declare pd_fft() as exportable in MSW */ -#include "m_pd.h" - -#define REAL float -#define GOOD_TRIG - -#ifdef GOOD_TRIG -#else -#define FAST_TRIG -#endif - -#if defined(GOOD_TRIG) -#define FHT_SWAP(a,b,t) {(t)=(a);(a)=(b);(b)=(t);} -#define TRIG_VARS \ - int t_lam=0; -#define TRIG_INIT(k,c,s) \ - { \ - int i; \ - for (i=2 ; i<=k ; i++) \ - {coswrk[i]=costab[i];sinwrk[i]=sintab[i];} \ - t_lam = 0; \ - c = 1; \ - s = 0; \ - } -#define TRIG_NEXT(k,c,s) \ - { \ - int i,j; \ - (t_lam)++; \ - for (i=0 ; !((1<1) \ - { \ - for (j=k-i+2 ; (1<>1; (!((k2^=k)&k)); k>>=1); - if (k1>k2) - { - aa=fz[k1];fz[k1]=fz[k2];fz[k2]=aa; - } - } - for ( k=0 ; (1<> 1; - fi = fz; - gi = fi + kx; - fn = fz + n; - do - { - REAL g0,f0,f1,g1,f2,g2,f3,g3; - f1 = fi[0 ] - fi[k1]; - f0 = fi[0 ] + fi[k1]; - f3 = fi[k2] - fi[k3]; - f2 = fi[k2] + fi[k3]; - fi[k2] = f0 - f2; - fi[0 ] = f0 + f2; - fi[k3] = f1 - f3; - fi[k1] = f1 + f3; - g1 = gi[0 ] - gi[k1]; - g0 = gi[0 ] + gi[k1]; - g3 = SQRT2 * gi[k3]; - g2 = SQRT2 * gi[k2]; - gi[k2] = g0 - g2; - gi[0 ] = g0 + g2; - gi[k3] = g1 - g3; - gi[k1] = g1 + g3; - gi += k4; - fi += k4; - } while (fi $(MANINSTDIR)/man1/pd.1.gz - chmod 644 $(MANINSTDIR)/man1/pd.1.gz - gzip < ../man/pdsend.1 > $(MANINSTDIR)/man1/pdsend.1.gz - chmod 644 $(MANINSTDIR)/man1/pdsend.1.gz - gzip < ../man/pdreceive.1 > $(MANINSTDIR)/man1/pdreceive.1.gz - chmod 644 $(MANINSTDIR)/man1/pdreceive.1.gz - -local-clean: - -rm -f ../obj/* $(BIN_DIR)/pd $(BIN_DIR)/$(GUINAME) $(BIN_DIR)/pdsend \ - $(BIN_DIR)/pdreceive $(BIN_DIR)/pd-watchdog m_stamp.c - -rm -f `find ../portaudio ../portaudio_v18 -name "*.o"` - -rm -f *~ - -(cd ../doc/6.externs; rm -f *.pd_linux) - -rm -f makefile.dependencies - touch makefile.dependencies - chmod 666 makefile.dependencies - -extra-clean: - -rm -f `find ../extra/ -name "*.pd_*"` - -rm -f tags - -clean: extra-clean local-clean - -distclean: clean - rm -rf config.cache config.log config.status makefile tags \ - autom4te-*.cache - echo all: > makefile - echo -e "\t./configure" >> makefile - echo -e "\tmake" >> makefile - -tags: $(SRC) $(GSRC); ctags *.[ch] - -depend: makefile.dependencies - -makefile.dependencies: makefile - $(CC) $(INCLUDE) $(CFLAGS) -M $(SRC) > makefile.dependencies - -uninstall: - rm -f -r $(INSTDIR)/lib/pd - rm -f $(INSTDIR)/bin/pd - rm -f $(INSTDIR)/bin/pdsend - rm -f $(INSTDIR)/bin/pdreceive - rm -f $(INSTDIR)/include/m_pd.h - rm -f $(MANINSTDIR)/man1/pd.1.gz - rm -f $(MANINSTDIR)/man1/pdsend.1.gz - rm -f $(MANINSTDIR)/man1/pdreceive.1.gz - -include makefile.dependencies - - - - - - - -- cgit v1.2.1