Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] Annotation of /branches/lamont/src/lib/build/mk/build_gmk.in
ViewVC logotype

Annotation of /branches/lamont/src/lib/build/mk/build_gmk.in

Parent Directory Parent Directory | Revision Log Revision Log


Revision 3349 - (view) (download)

1 : jhr 1115 # build.gmk
2 :     #
3 : jhr 3349 # This code is part of the Diderot Project (http://diderot-language.cs.uchicago.edu)
4 :     #
5 :     # COPYRIGHT (c) 2015 The University of Chicago
6 : jhr 1115 # All rights reserved.
7 :     #
8 :     # Common definitions shared by all of the runtime-system makefiles.
9 :     #
10 :     # @configure_input@
11 :     #
12 :    
13 :     #
14 :     # determine the build options
15 :     #
16 :     ifeq (,$(findstring debug,$(BUILD_OPTIONS)))
17 :     ENABLE_DEBUG=false
18 :     else
19 :     ENABLE_DEBUG=true
20 :     endif
21 :     ifeq (,$(findstring float,$(BUILD_OPTIONS)))
22 :     PRECISION=double
23 :     else
24 :     PRECISION=float
25 :     endif
26 :     ifeq (,$(findstring parallel,$(BUILD_OPTIONS)))
27 :     ENABLE_PARALLEL=false
28 :     else
29 :     ENABLE_PARALLEL=true
30 :     endif
31 :    
32 :     #
33 :     # tools and flags
34 :     #
35 :     CC = @CC@
36 :     INCLUDES = -I@DIDEROT_SRCDIR@/include -I@TEEM_DIR@/include -I../../include
37 : jhr 2364 CFLAGS = @CFLAGS@ @CFLAG_MXX@
38 : jhr 1115 LDFLAGS =
39 :     CPPFLAGS = @CPPFLAGS@ $(INCLUDES)
40 :    
41 : lamonts 2416 COMMON_SRCS = image.c input.c eigen2x2.c eigen3x3.c dyn-seq.c util.c nrrd.c kdtree.c
42 : jhr 2298
43 : jhr 1115 SRCS = $(COMMON_SRCS) $(TARGET_SRCS)
44 :     OBJS = $(patsubst %.c,%.o,$(SRCS))
45 :    
46 : jhr 1301 #
47 :     # determine target platform
48 :     #
49 :     ifeq (c,$(TARGET_PLATFORM))
50 :     CPPFLAGS += -DDIDEROT_TARGET_C
51 :     else ifeq (cl,$(TARGET_PLATFORM))
52 : jhr 1843 CPPFLAGS += -DDIDEROT_TARGET_CL @CPPFLAGS_CL@
53 : jhr 1301 else ifeq (cuda,$(TARGET_PLATFORM))
54 :     CPPFLAGS += -DDIDEROT_TARGET_CUDA
55 :     else ifeq (parallel,$(TARGET_PLATFORM))
56 :     CPPFLAGS += -DDIDEROT_TARGET_PARALLEL
57 :     endif
58 :    
59 : jhr 1721 #
60 :     # set debug flags, if needed
61 :     #
62 : jhr 1115 ifeq ($(ENABLE_DEBUG),true)
63 : jhr 1232 CFLAGS += -g3 -O0
64 : jhr 1115 else
65 :     CPPFLAGS += -DNDEBUG
66 : jhr 1370 CFLAGS += -O3
67 : jhr 1115 endif
68 :    
69 : jhr 1640 #
70 :     # set numeric precision
71 :     #
72 : jhr 1115 ifeq ($(PRECISION),float)
73 :     CPPFLAGS += -DDIDEROT_SINGLE_PRECISION
74 :     else
75 :     CPPFLAGS += -DDIDEROT_DOUBLE_PRECISION
76 :     endif
77 : jhr 1640 CPPFLAGS += -DDIDEROT_INT
78 : jhr 1115
79 :     ifeq ($(ENABLE_PARALLEL),true)
80 :     CFLAGS += @PTHREAD_CFLAGS@
81 :     endif
82 :    
83 :     $(TARGET): $(OBJS)
84 :     $(LD) -r -o $(TARGET) $(OBJS)
85 :    
86 :     #################### Cleanup ####################
87 :    
88 :     CLEAN_FILES = $(OBJS) $(TARGET)
89 :     CLEAN_FILES += $(wildcard *.dSYM)
90 :    
91 :     include @DIDEROT_MKDIR@/clean-rules.gmk

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0