1
2--------------------------------------------------------------------------
3-- Copyright (c) 2007-2010, ETH Zurich.
4-- All rights reserved.
5--
6-- This file is distributed under the terms in the attached LICENSE file.
7-- If you do not find this file, copies can be found by writing to:
8-- ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
9--
10-- Hakefile for lib/dma and lib/dma_client
11-- 
12--------------------------------------------------------------------------
13
14[ build library { 
15    target = "dma",
16    cFiles = [
17      "dma_mem_mgr.c",
18      "dma_mem_utils.c",
19      "dma_mgr_client.c",
20      "dma_device.c",
21      "dma_channel.c",
22      "dma_request.c",
23      "dma_ring.c",
24      "dma_descriptor.c",
25      "dma_bench.c",
26      "ioat/ioat_dma_channel.c",
27      "ioat/ioat_dma_dca.c",
28      "ioat/ioat_dma_descriptors.c",
29      "ioat/ioat_dma_device.c",
30      "ioat/ioat_dma_request.c",
31      "ioat/ioat_dma.c",
32      "xeon_phi/xeon_phi_dma.c",
33      "xeon_phi/xeon_phi_dma_device.c",
34      "xeon_phi/xeon_phi_dma_channel.c",
35      "xeon_phi/xeon_phi_dma_request.c",
36      "xeon_phi/xeon_phi_dma_descriptors.c",
37      "client/dma_client_device.c",
38      "client/dma_client_channel.c",
39      "client/dma_client_request.c"
40    ],
41    addIncludes = [ "include" ],
42    addLibraries = libDeps [ "bench" ],
43    flounderBindings = [ "dma", "ioat_dma_mgr", "dma_mgr" ],
44    flounderDefs = [ "dma" ],
45    flounderExtraBindings = [ ("dma_mgr",["rpcclient"]) ],
46    mackerelDevices = [ 
47      "ioat_dma", 
48      "ioat_dma_chan", 
49      "xeon_phi/xeon_phi_dma", 
50      "xeon_phi/xeon_phi_dma_chan" ]
51  },
52  
53  build library { 
54    target = "dma_mgr_client",
55    cFiles = [ 
56      "dma_mgr_client.c" 
57    ],
58    addIncludes = [ "include" ],
59    flounderBindings = [ "dma_mgr" ],
60    flounderExtraBindings = [ ("dma_mgr",["rpcclient"]) ]
61  },
62  
63  build library { 
64    target = "dma_service",
65    cFiles = [ 
66      "dma_mgr_client.c", 
67      "dma_mem_mgr.c",
68      "dma_service.c" 
69    ],
70    addIncludes = [ "include" ],
71    flounderBindings = [ "dma", "dma_mgr" ],
72    flounderExtraBindings = [ ("dma_mgr",["rpcclient"]) ],
73    flounderDefs = [ "dma" ]
74  },
75  
76  build library { 
77    target = "dma_client",
78    cFiles = [
79      "dma_mem_mgr.c",
80      "dma_mem_utils.c",
81      "dma_mgr_client.c",
82      "dma_device.c",
83      "dma_channel.c",
84      "dma_request.c",
85      "dma_ring.c",
86      "dma_descriptor.c",
87      "dma_bench.c",
88      "client/dma_client_device.c",
89      "client/dma_client_channel.c",
90      "client/dma_client_request.c"
91    ],
92    addIncludes = [ "include" ],
93    addLibraries = libDeps [ "bench" ],
94    flounderBindings = [ "dma", "dma_mgr" ],
95    flounderDefs = [ "dma" ],
96    flounderExtraBindings = [ ("dma_mgr",["rpcclient"]) ]
97  }
98]
99
100
101