| 1 |
require 5.006; # lower versions of perl not supported |
| 2 |
|
| 3 |
use Config; |
| 4 |
use ExtUtils::MakeMaker; |
| 5 |
use PDL::Core::Dev; |
| 6 |
|
| 7 |
{ |
| 8 |
local $ENV{CC} = "$Config{cc} $Config{cppflags} $Config{ccflags} $Config{cccdlflags}"; |
| 9 |
print "$ENV{CC}\n"; |
| 10 |
system "cd sndlib && ./configure"; |
| 11 |
} |
| 12 |
|
| 13 |
@pack = ["audio.pd",Audio,PDL::Audio]; |
| 14 |
%hash = pdlpp_stdargs(@pack); |
| 15 |
|
| 16 |
$hash{depend}{'Audio.o'} = 'xlib.h remez.h'; |
| 17 |
$hash{depend}{'xlib.o'} = 'xlib.h remez.h'; |
| 18 |
$hash{OBJECT} = "Audio.o xlib.o remez.o"; |
| 19 |
|
| 20 |
do "./config.pl"; |
| 21 |
|
| 22 |
$hash{PM}{'Scales.pm'} = '$(INST_LIBDIR)/Audio/Scales.pm'; |
| 23 |
$hash{PM}{'Pitches.pm'} = '$(INST_LIBDIR)/Audio/Pitches.pm'; |
| 24 |
|
| 25 |
push @{$hash{DIR}}, "sndlib"; |
| 26 |
|
| 27 |
WriteMakefile(%hash, |
| 28 |
'dist' => { |
| 29 |
PREOP => 'pod2text Audio.pm | tee README >$(DISTVNAME)/README; chmod -R u=rwX,go=rX . ;', |
| 30 |
COMPRESS => 'gzip -9v', |
| 31 |
SUFFIX => '.gz', |
| 32 |
}, |
| 33 |
MYEXTLIB => "sndlib/sndlib.a", |
| 34 |
VERSION_FROM => 'audio.pd', |
| 35 |
DIR => [], |
| 36 |
EXE_FILES => ["bin/pdlaudio-demo", "bin/pdlaudio-birds"], |
| 37 |
XS => { "Audio.xs" => "Audio.c" }, |
| 38 |
); |
| 39 |
|
| 40 |
sub MY::postamble { |
| 41 |
my $self=shift; |
| 42 |
pdlpp_postamble(@pack)." |
| 43 |
|
| 44 |
.EXPORT_ALL_VARIABLES: |
| 45 |
|
| 46 |
force: |
| 47 |
|
| 48 |
\$(MYEXTLIB): force |
| 49 |
cd sndlib && \$(MAKE) |
| 50 |
|
| 51 |
clean:: |
| 52 |
cd sndlib && \$(MAKE) clean |
| 53 |
|
| 54 |
"; |
| 55 |
} |