source: proto/parabix2/Makefile @ 2817

Last change on this file since 2817 was 2817, checked in by ksherdy, 6 years ago

Added experimental pabloj Makefile target and template.

File size: 2.8 KB
Line 
1OUTFILE=src/xmlwf.cpp
2ID_OUTFILE=src/id.cpp
3DIV2_OUTFILE=src/div2.cpp
4LOGBASE2_OUTFILE=src/logbase2.cpp
5DIV2_LOGBASE2_OUTFILE=src/div2_logbase2.cpp
6BIT_BYTE_OUTFILE=src/bit_byte.cpp
7
8PABLO_SRC=parabix2_pablo.py
9PABLO_TEMPLATE=pablo_template.cpp
10PABLO_TEMPLATE_LSST=pablo_template_lsst.cpp
11PABLO_COMPILER=../Compiler2265/pablomain.py
12PABLO_ADD_DEBUG = # -a -b
13
14PABLOJ_TEMPLATE=pabloj_template.cpp
15
16# LSST
17LSST_PABLO_SRC_DIR=lib/lsst-lib/pablo
18LSST_TEMPLATES_DIR=lib/lsst-lib/templates
19
20# Markers
21MARKER_PREFIX=@marker_strms_
22MARKER_PABLO_SRC=$(LSST_PABLO_SRC_DIR)/xmlwf_marker_strms.py # glue
23
24# Hash
25HASH_PREFIX=@hash_strms_
26HASH_PABLO_SRC=$(LSST_PABLO_SRC_DIR)/hash_strms.py
27
28# Groups
29GROUP_PREFIX=@group_strms_
30
31ID_GROUP_STRMS_SRC = $(LSST_PABLO_SRC_DIR)/id_group_strms.py
32DIV2_GROUP_STRMS_SRC = $(LSST_PABLO_SRC_DIR)/div2_group_strms.py
33LOGBASE2_GROUP_STRMS_SRC = $(LSST_PABLO_SRC_DIR)/logbase2_group_strms.py
34DIV2_LOGBASE2_GROUP_STRMS_SRC = $(LSST_PABLO_SRC_DIR)/div2_logbase2_group_strms.py
35BIT_BYTE_GROUP_STRMS_SRC = $(LSST_PABLO_SRC_DIR)/bit_byte_group_strms.py
36
37TEMP=t.tmp
38
39all: xmlwf id div2 logbase2 div2_logbase2 bit_byte
40
41pabloj:
42        python $(PABLO_COMPILER) $(PABLO_SRC) -t $(PABLOJ_TEMPLATE) -o $(OUTFILE) $(PABLO_ADD_DEBUG)
43
44xmlwf:  $(PABLO_SRC)
45        python $(PABLO_COMPILER) $(PABLO_SRC) -t $(PABLO_TEMPLATE) -o $(OUTFILE) $(PABLO_ADD_DEBUG)
46
47experimental:   $(PABLO_SRC)
48        python $(PABLO_COMPILER) $(PABLO_SRC) -X -t $(PABLO_TEMPLATE) -o $(OUTFILE)
49
50id: template
51        python $(PABLO_COMPILER) $(ID_GROUP_STRMS_SRC) -t $(TEMP) -l $(GROUP_PREFIX) -o $(ID_OUTFILE) $(PABLO_ADD_DEBUG)
52
53div2: template
54        python $(PABLO_COMPILER) $(DIV2_GROUP_STRMS_SRC) -t $(TEMP) -l $(GROUP_PREFIX) -o $(DIV2_OUTFILE) $(PABLO_ADD_DEBUG)
55
56logbase2: template
57        python $(PABLO_COMPILER) $(LOGBASE2_GROUP_STRMS_SRC) -t $(TEMP) -l $(GROUP_PREFIX) -o $(LOGBASE2_OUTFILE) $(PABLO_ADD_DEBUG)
58
59div2_logbase2: template
60        python $(PABLO_COMPILER) $(DIV2_LOGBASE2_GROUP_STRMS_SRC) -t $(TEMP) -l $(GROUP_PREFIX) -o $(DIV2_LOGBASE2_OUTFILE) $(PABLO_ADD_DEBUG)
61
62bit_byte: template
63        python $(PABLO_COMPILER) $(BIT_BYTE_GROUP_STRMS_SRC) -t $(TEMP) -l $(GROUP_PREFIX) -o $(BIT_BYTE_OUTFILE) $(PABLO_ADD_DEBUG)
64
65template: $(PABLO_SRC) $(PABLO_TEMPLATE_LSST)
66        python $(PABLO_COMPILER) $(PABLO_SRC) -t $(PABLO_TEMPLATE_LSST) -o $(TEMP)
67        python $(PABLO_COMPILER) $(MARKER_PABLO_SRC) -t $(TEMP) -l $(MARKER_PREFIX) -o $(TEMP) $(PABLO_ADD_DEBUG)
68        python $(PABLO_COMPILER) $(HASH_PABLO_SRC) -t $(TEMP) -l $(HASH_PREFIX) -o $(TEMP) $(PABLO_ADD_DEBUG)
69
70#threads:       $(PABLO_SRC)
71#       python $(PABLO_COMPILER) $(PABLO_SRC) parabix2_pablo2.py -t pablo_template_multithreads.cpp -o $(OUTFILE)
72
73avx:    $(PABLO_SRC)
74        python $(PABLO_COMPILER) $(PABLO_SRC) -t pablo_template_avx.cpp -o $(OUTFILE)
75
76pablo_help:
77        python  $(PABLO_COMPILER) -h
78
79clean: 
80        rm -f $(OUTFILE) $(ID_OUTFILE) $(DIV2_OUTFILE) $(LOGBASE2_OUTFILE) $(DIV2_LOGBASE2_OUTFILE) $(BIT_BYTE_OUTFILE) $(TEMP)
81
82
Note: See TracBrowser for help on using the repository browser.