summaryrefslogtreecommitdiffstats
path: root/src/kernels/meson.build
blob: bf61d773744929d32470a5af4736ce0545d71664 (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
kernel_files = [
    'arithmetics.cl',
    'backproject.cl',
    'binarize.cl',
    'bin.cl',
    'clip.cl',
    'complex.cl',
    'conebeam.cl',
    'correlate.cl',
    'cut.cl',
    'cut-sinogram.cl',
    'cumsum.cl',
    'denoise.cl',
    'dfi.cl',
    'edge.cl',
    'estimate-noise.cl',
    'ffc.cl',
    'fft.cl',
    'fftmult.cl',
    'filter.cl',
    'flip.cl',
    'forwardproject.cl',
    'gaussian.cl',
    'gradient.cl',
    'histthreshold.cl',
    'interpolator.cl',
    'mask.cl',
    'median.cl',
    'metaballs.cl',
    'morphology.cl',
    'nlm.cl',
    'ordfilt.cl',
    'opencl.cl',
    'opencl-reduce.cl',
    'pad.cl',
    'phase-retrieval.cl',
    'piv.cl',
    'polar.cl',
    'rescale.cl',
    'reductor.cl',
    'rm-outliers.cl',
    'rotate.cl',
    'segment.cl',
    'split.cl',
    'stacked-backproject.cl',
    'swap-quadrants.cl',
    'transpose.cl',
    'zeropad.cl',
    'templates/general_bp_definitions.in',
    'templates/general_bp_body.in',
    'templates/general_bp_header_scalar.in',
    'templates/general_bp_header_vector.in',
]

install_data(kernel_files,
    install_dir: kernel_install_dir,
)

# generate kernels for lamino_backproject
lamino_kernel_names = [
    'z',
    'lamino',
    'center',
    'roll',
]

if python.found()
    command = [
        python.path(),
        '@INPUT0@', '@INPUT1@',
        '1', '2', '4', '8', '16',
    ]

    foreach name: lamino_kernel_names
        target_name = '@0@_kernel'.format(name)
        template_name = 'templates/@0@_template.in'.format(name)
        output_name = '@0@_kernel.cl'.format(name)

        custom_target(target_name,
            build_by_default: true,
            capture: true,
            command: command,
            input: ['tools/make_burst_kernels.py', template_name],
            output: output_name,
            install: true,
            install_dir: kernel_install_dir
        )
    endforeach
endif