Little additional improvement of documentation of include/dai/util.h
[libdai.git] / Makefile
index 749847b..7ff3579 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,22 +1,11 @@
-# Copyright (C) 2006-2009  Joris Mooij  [joris dot mooij at tuebingen dot mpg dot de]
-# Radboud University Nijmegen, The Netherlands /
-# Max Planck Institute for Biological Cybernetics, Germany
-#   
-# This file is part of libDAI.
+# This file is part of libDAI - http://www.libdai.org/
 #
-# libDAI is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
+# libDAI is licensed under the terms of the GNU General Public License version
+# 2, or (at your option) any later version. libDAI is distributed without any
+# warranty. See the file COPYING for more details.
 #
-# libDAI is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with libDAI; if not, write to the Free Software
-# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+# Copyright (C) 2006-2009  Joris Mooij  [joris dot mooij at libdai dot org]
+# Copyright (C) 2006-2007  Radboud University Nijmegen, The Netherlands
 
 
 # Load the local configuration from Makefile.conf
@@ -30,13 +19,26 @@ SRC=src
 # Destination directory of libDAI library
 LIB=lib
 
+# Set final compiler flags
+ifdef DEBUG
+  CCFLAGS:=$(CCFLAGS) $(CCDEBUGFLAGS)
+else
+  CCFLAGS:=$(CCFLAGS) $(CCNODEBUGFLAGS)
+endif
+
 # Define build targets
 TARGETS=tests utils lib examples testregression testem
 ifdef WITH_DOC
-  TARGETS:=$(TARGETS) doc 
+  TARGETS:=$(TARGETS) doc
 endif
 ifdef WITH_MATLAB
   TARGETS:=$(TARGETS) matlabs
+  # Specify the same C++ compiler and flags to mex
+  ifneq ($(OS),WINDOWS)
+    MEXFLAGS=CXX\#$(CC) CXXFLAGS\#'$(CCFLAGS)'
+  else
+    MEXFLAGS=CXX\#$(CC) CXXFLAGS\#"$(CCFLAGS)"
+  endif
   ifdef NEW_MATLAB
     MEXFLAGS:=$(MEXFLAGS) -largeArrayDims
   else
@@ -83,14 +85,10 @@ ifdef WITH_CBP
   OBJECTS:=$(OBJECTS) bbp$(OE) cbp$(OE) bp_dual$(OE)
 endif
 
-
 # Define standard libDAI header dependencies
 HEADERS=$(INC)/bipgraph.h $(INC)/index.h $(INC)/var.h $(INC)/factor.h $(INC)/varset.h $(INC)/smallset.h $(INC)/prob.h $(INC)/daialg.h $(INC)/properties.h $(INC)/alldai.h $(INC)/enum.h $(INC)/exceptions.h $(INC)/util.h
 
 # Setup final command for C++ compiler and MEX
-ifdef DEBUG
-  CCFLAGS:=$(CCFLAGS) $(CCDEBUGFLAGS)
-endif
 ifneq ($(OS),WINDOWS)
   CC:=$(CC) $(CCINC) $(CCFLAGS) $(CCLIB)
 else
@@ -105,7 +103,7 @@ MEX:=$(MEX) $(CCLIB) $(CCINC) $(MEXFLAGS)
 
 all : $(TARGETS)
 
-examples : examples/example$(EE) examples/example_bipgraph$(EE) examples/example_varset$(EE) examples/example_sprinkler$(EE)
+examples : examples/example$(EE) examples/example_bipgraph$(EE) examples/example_varset$(EE) examples/example_permute$(EE) examples/example_sprinkler$(EE)
 
 matlabs : matlab/dai$(ME) matlab/dai_readfg$(ME) matlab/dai_writefg$(ME) matlab/dai_potstrength$(ME)
 
@@ -113,7 +111,7 @@ tests : tests/testdai$(EE) tests/testem/testem$(EE) tests/testbbp$(EE)
 
 utils : utils/createfg$(EE) utils/fg2dot$(EE) utils/fginfo$(EE)
 
-lib: $(LIB)/libdai$(LE) 
+lib: $(LIB)/libdai$(LE)
 
 
 # OBJECTS
@@ -204,6 +202,9 @@ examples/example_bipgraph$(EE) : examples/example_bipgraph.cpp $(HEADERS) $(LIB)
 examples/example_varset$(EE) : examples/example_varset.cpp $(HEADERS) $(LIB)/libdai$(LE)
        $(CC) $(CCO)examples/example_varset$(EE) examples/example_varset.cpp $(LIBS)
 
+examples/example_permute$(EE) : examples/example_permute.cpp $(HEADERS) $(LIB)/libdai$(LE)
+       $(CC) $(CCO)examples/example_permute$(EE) examples/example_permute.cpp $(LIBS)
+
 examples/example_sprinkler$(EE) : examples/example_sprinkler.cpp $(HEADERS) $(LIB)/libdai$(LE)
        $(CC) $(CCO)examples/example_sprinkler$(EE) examples/example_sprinkler.cpp $(LIBS)
 
@@ -305,7 +306,7 @@ ifneq ($(OS),WINDOWS)
 clean :
        -rm *$(OE)
        -rm matlab/*$(ME)
-       -rm examples/example$(EE) examples/example_bipgraph$(EE) examples/example_varset$(EE) examples/example_sprinkler$(EE)
+       -rm examples/example$(EE) examples/example_bipgraph$(EE) examples/example_varset$(EE) examples/example_permute$(EE) examples/example_sprinkler$(EE)
        -rm tests/testdai$(EE) tests/testem/testem$(EE) tests/testbbp$(EE)
        -rm utils/fg2dot$(EE) utils/createfg$(EE) utils/fginfo$(EE)
        -rm -R doc