1 | use ExtUtils::MakeMaker; |
1 | use ExtUtils::MakeMaker; |
2 | |
|
|
3 | if(0){ |
|
|
4 | print <<EOF; |
|
|
5 | |
|
|
6 | *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** |
|
|
7 | |
|
|
8 | |
|
|
9 | Welcome to OpenCL configuration. If you are in a hurry, just press return here |
|
|
10 | and hope for the best. The defaults should usually do. |
|
|
11 | |
|
|
12 | EOF |
|
|
13 | |
|
|
14 | if (prompt ("Skip further questions and use defaults (y/n)?", "y") =~ /[yY]/) { |
|
|
15 | $ENV{PERL_MM_USE_DEFAULT} = 1; |
|
|
16 | } |
|
|
17 | } |
|
|
18 | |
2 | |
19 | print <<EOF; |
3 | print <<EOF; |
20 | |
4 | |
21 | *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** |
5 | *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** |
22 | |
6 | |
23 | |
7 | |
24 | Most OpenCL implementations can interface to OpenGL. Should This module |
8 | OpenCL does not have good backwards compatibility - for example, the only |
25 | try to take advantage of and offer support for OpenGL? |
9 | way to create a 2D image in OpenCL 1.1 is clCreateImage2D, which is not |
|
|
10 | available anymore with OpenCL 1.2. |
|
|
11 | |
|
|
12 | The OpenCL module can often emulate OpenCL 1.1 functions using OpenCL 1.2 |
|
|
13 | functions, but even though your OpenCL library might contain the OpenCL |
|
|
14 | 1.2 functions, they might be nonfunctional and crash. |
|
|
15 | |
|
|
16 | Do you want to prefer the OpenCL 1.1 API over the 1.2 API where possible? |
26 | |
17 | |
27 | EOF |
18 | EOF |
28 | |
19 | |
29 | my $DEFINE .= " -DHAVE_OPENGL=" . (0 + (prompt ("Enable optional support for OpenGL (y/n)?", "y") =~ /[yY]/)); |
20 | my $DEFINE .= " -DPREFER_1_1=" . (0 + (prompt ("Prefer OpenCL 1.1 over 1.2 functions (y/n)?", "y") =~ /[yY]/)); |
30 | |
21 | |
31 | WriteMakefile( |
22 | WriteMakefile( |
32 | dist => { |
23 | dist => { |
33 | PREOP => 'pod2text OpenCL.pm | tee README >$(DISTVNAME)/README; chmod -R u=rwX,go=rX . ;', |
24 | PREOP => 'pod2text OpenCL.pm | tee README >$(DISTVNAME)/README; chmod -R u=rwX,go=rX . ;', |
34 | COMPRESS => 'gzip -9v', |
25 | COMPRESS => 'gzip -9v', |
35 | SUFFIX => '.gz', |
26 | SUFFIX => '.gz', |
36 | }, |
27 | }, |
37 | PREREQ_PM => { |
28 | PREREQ_PM => { |
38 | common::sense => 0, |
29 | common::sense => 3, |
|
|
30 | Async::Interrupt => 1.1, |
39 | }, |
31 | }, |
40 | DEFINE => $DEFINE, |
32 | DEFINE => $DEFINE, |
41 | NAME => "OpenCL", |
33 | NAME => "OpenCL", |
42 | VERSION_FROM => "OpenCL.pm", |
34 | VERSION_FROM => "OpenCL.pm", |
43 | LIBS => ["-lOpenCL"], |
35 | LIBS => ["-lOpenCL -lpthread"], |
44 | ); |
36 | ); |
45 | |
37 | |