| 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 |
|
|---|