1 | #######################################################
|
---|
2 | #
|
---|
3 | # Makefile for the SimpleGraphTest Code
|
---|
4 | #
|
---|
5 | #######################################################
|
---|
6 |
|
---|
7 | EXE =.exe
|
---|
8 | OBJ =.obj
|
---|
9 | # NT40/NT40_x64
|
---|
10 | ARCH ?=NT40
|
---|
11 | # optimize/debug
|
---|
12 | BUILDPROFILE ?=optimize
|
---|
13 |
|
---|
14 | #######################################################
|
---|
15 | # BOOST SETUP
|
---|
16 | #######################################################
|
---|
17 |
|
---|
18 | BOOST_VERSION =1_48_0
|
---|
19 | BOOST_ROOT = $(THIRD_PARTY)/boost/boost_$(BOOST_VERSION)
|
---|
20 |
|
---|
21 | #######################################################
|
---|
22 | # BUILD FLAGS
|
---|
23 | #######################################################
|
---|
24 |
|
---|
25 | CC =cl
|
---|
26 | CXX =cl
|
---|
27 |
|
---|
28 | ifeq ($(BUILDPROFILE),optimize)
|
---|
29 | CPPFLAGS =-DHAVE_EXCEPTIONS -D$(ARCH) -DANSI -DWIN32 -D_WINDOWS -D_WIN32 -DPtW32NoCatchWarn \
|
---|
30 | -DNT -DSTRICT -DSTACK_GROWS_DOWN -DNDEBUG -DOPTIMIZE -DNT_VC8_DLL
|
---|
31 | LDFLAGS =/nologo /force:MULTIPLE /NOdefaultLIB:msvcrtd.lib /NOdefaultLIB:libcd.lib /NOdefaultLIB:libcmtd.lib \
|
---|
32 | /NOdefaultLIB:libc.lib /NOdefaultLIB:libcmt.lib
|
---|
33 | CXXFLAGS =/nologo /D_CRT_SECURE_NO_DEPRECATE /wd4996 /wd4251 /DNOMINMAX /GR /EHsc /TP /Zm600 '/Fd./' /MD -O2 -Oi -Ot -Oy -Ob1
|
---|
34 | else
|
---|
35 | CPPFLAGS =-DHAVE_EXCEPTIONS -D$(ARCH) -DANSI -DWIN32 -D_WINDOWS -D_WIN32 -DPtW32NoCatchWarn \
|
---|
36 | -DNT -DSTRICT -DSTACK_GROWS_DOWN -D_DEBUG -DNT_VC8_DLL
|
---|
37 | LDFLAGS =/nologo /force:MULTIPLE /DEBUG /fixed:no /NOdefaultLIB:msvcrt.lib /NOdefaultLIB:libc.lib \
|
---|
38 | /NOdefaultLIB:libcmt.lib /NOdefaultLIB:libcd.lib /NOdefaultLIB:libcmtd.lib
|
---|
39 | CXXFLAGS =/nologo /D_CRT_SECURE_NO_DEPRECATE /wd4996 /wd4251 /DNOMINMAX /GR /EHsc /TP /Zm600 '/Fd./' /MDd /Zi
|
---|
40 | endif
|
---|
41 |
|
---|
42 | CXXOUT =-Fo
|
---|
43 | CXXWARNINGS =/W3
|
---|
44 |
|
---|
45 | LD =link
|
---|
46 | LIBPATH_OPTION =/LIBPATH:
|
---|
47 | LDOUT =-out:
|
---|
48 |
|
---|
49 | define CXX_COMPILATION_RULE
|
---|
50 | echo "Compiling C++ ($(ARCH),$(CC),$(BUILDPROFILE)): $<";\
|
---|
51 | $(CXX) $(CPPFLAGS) $(CXXWARNINGS) $(INC) $(CXXFLAGS) -c $< $(CXXOUT)$@
|
---|
52 | endef
|
---|
53 |
|
---|
54 | %.obj: %.cpp $(FORCE)
|
---|
55 | @$(CXX_COMPILATION_RULE)
|
---|
56 |
|
---|
57 | INC = -I$(BOOST_ROOT)
|
---|
58 |
|
---|
59 | #######################################################
|
---|
60 | # Targets
|
---|
61 | #######################################################
|
---|
62 | module: SimpleGraphTest$(EXE)
|
---|
63 |
|
---|
64 | SimpleGraphTest$(EXE): SimpleGraphTest$(OBJ)
|
---|
65 | $(LD) $(LDFLAGS) $(LDOUT)$@ $<
|
---|
66 |
|
---|
67 | # A debug target to get to variable values.
|
---|
68 | print_%:
|
---|
69 | # The Makefile variable $(@:print_%=%) has the value: '$($(@:print_%=%))'
|
---|
70 |
|
---|