# This file is part of libDAI - http://www.libdai.org/ # # Copyright (c) 2006-2011, The libDAI authors. All rights reserved. # # Use of this source code is governed by a BSD-style license that can be found in the LICENSE file. # This template contains configurations for compiling libDAI with Visual C++ # under Windows (and GNU Make) # # To use it, simply copy this file to 'Makefile.conf' and adapt 'Makefile.conf' # to your local setup # OPERATING SYSTEM # Choose OS from {LINUX, WINDOWS, CYGWIN, MACOSX} OS=WINDOWS # FILE EXTENSIONS # Static library LE=.lib # Object file OE=.obj # Binary executable EE=.exe # MatLab compiled MEX file ME=.mexw32 # DIRECTORIES # Directories where third party libraries are located BOOSTDIR=E:\windows\boost_1_51_0 MPIRDIR=E:\windows\mpir_251 # COMPILER # Compile using Visual C++ Compiler CC=cl # Output filename option of the compiler CCO=/Fe # Flags for the C++ compiler CCFLAGS=/EHac /GR /W3 /DWINDOWS /DNOMINMAX /MD # For MatLab R2008b, the following flag seems to be necessary: /D_SECURE_SCL=0 # but it generates exceptions in normal executables... therefore, the MatLab # interface is now built from source completely using mex # Flags to add in debugging mode (if DEBUG=true) CCDEBUGFLAGS=/Ox /Zi /DDAI_DEBUG # Flags to add in non-debugging mode (if DEBUG=false) CCNODEBUGFLAGS=/Ox # Standard include directories CCINC=-Iinclude -I$(BOOSTDIR) -I$(MPIRDIR) # LINKER # Standard libraries to include LIBS=/link $(LIB)/libdai$(LE) # For linking with BOOST libraries BOOSTLIBS_PO=/LIBPATH:$(BOOSTDIR)\stage\lib BOOSTLIBS_UTF=/LIBPATH:$(BOOSTDIR)\stage\lib # Additional library search paths for linker # (For some reason, we have to add the VC library path, although it is in the environment) CCLIB=/LIBPATH:"C:\Program Files\Microsoft Visual Studio 9.0\VC\ATLMFC\LIB" /LIBPATH:"C:\Program Files\Microsoft Visual Studio 9.0\VC\LIB" /LIBPATH:"C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib" /LIBPATH:"$(MPIRDIR)" mpirxx.lib mpir.lib # MATLAB # MatLab version 7.3 (R2006b) or newer? NEW_MATLAB=true # Replace the following by the directory where MatLab has been installed MATLABDIR=c:\matlab\R2008b # The following should resolve to the MatLab mex compile command MEX=$(MATLABDIR)\bin\mex # Flags for MEX MEXFLAGS:=-DWINDOWS -DNOMINMAX # Standard include directories for MEX MEXINC:=$(CCINC) # Standard libraries to include MEXLIBS:=-lmpirxx -lmpir # Additional library search paths for MEX MEXLIB:=-L"$(BOOSTDIR)\stage\lib" -L"C:\Program Files\Microsoft Visual Studio 9.0\VC\ATLMFC\LIB" -L"C:\Program Files\Microsoft Visual Studio 9.0\VC\LIB" -L"C:\Program Files\Microsoft SDKs\Windows\v6.0A\lib" -L"$(MPIRDIR)" # SWIG PYTHON INTERFACE # The following should resolve to the SWIG command SWIG=swig # Location of Python header files INCLUDE_PYTHON=C:\python2.5 # Location of Boost C++ library header files INCLUDE_BOOST=$(BOOSTDIR) # CIMG # CImg version 1.3.0 or newer? NEW_CIMG=true # Include directory for image segmentation example CIMGINC=-IE:\windows\CImg-1.3.9 # Libraries for image segmentation example CIMGLIBS=gdi32.lib user32.lib shell32.lib