Added README.md
[clueless-kmeans.git] / Makefile
1
2 # clueless-kmeans is a variant of k-means which enforces balanced
3 # distribution of classes in every cluster
4 #
5 # Copyright (c) 2013 Idiap Research Institute, http://www.idiap.ch/
6 # Written by Francois Fleuret <francois.fleuret@idiap.ch>
7 #
8 # This file is part of clueless-kmeans.
9 #
10 # clueless-kmeans is free software: you can redistribute it and/or
11 # modify it under the terms of the GNU General Public License
12 # version 3 as published by the Free Software Foundation.
13 #
14 # clueless-kmeans is distributed in the hope that it will be useful,
15 # but WITHOUT ANY WARRANTY; without even the implied warranty of
16 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17 # General Public License for more details.
18 #
19 # You should have received a copy of the GNU General Public License
20 # along with selector.  If not, see <http://www.gnu.org/licenses/>.
21
22 LDFLAGS= -lm -lglpk
23
24 ifeq ($(DEBUG),yes)
25   OPTIMIZE_FLAG = -ggdb3 -DDEBUG -fno-omit-frame-pointer
26 else
27   OPTIMIZE_FLAG = -ggdb3 -O3
28 endif
29
30 ifeq ($(PROFILE),yes)
31   PROFILE_FLAG = -pg
32 endif
33
34 CXXFLAGS = -Wall $(OPTIMIZE_FLAG) $(PROFILE_FLAG) $(CXXGLPK)
35
36 all: clueless-kmeans
37
38 clueless-kmeans: \
39         misc.o \
40         sample_set.o \
41         clusterer.o \
42         clueless-kmeans.o
43         $(CXX) $(CXXFLAGS) -o $@ $^ $(LDFLAGS)
44
45 Makefile.depend: *.h *.cc Makefile
46         $(CC) -M *.cc > Makefile.depend
47
48 clean:
49         rm -f *.o Makefile.depend clueless-kmeans
50
51 -include Makefile.depend