~vtraag/louvain/release-0.1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#!/bin/bash

CC=g++
CFLAGS=  -Wall
LDFLAGS= -Wall
SRC_DIR=src
EXEC=bin/community bin/slicer
OBJ1= $(SRC_DIR)/Base/community.o $(SRC_DIR)/Base/graph.o $(SRC_DIR)/Base/greedy_louvain.o $(SRC_DIR)/Base/info.o $(SRC_DIR)/MTRand/MersenneTwister.o
OBJ2= $(SRC_DIR)/Slicer/slicer.o $(SRC_DIR)/Base/graph.o

all: $(EXEC)

bin/community : $(OBJ1) $(SRC_DIR)/Community/main_community.o
	$(CC) -o $@ $^ $(LDFLAGS)

bin/slicer : $(OBJ2) $(SRC_DIR)/Slicer/main_slicer.o
	$(CC) -o $@ $^ $(LDFLAGS)

##########################################
# Generic rules
##########################################

%.o: %.cpp %.h
	$(CC) -o $@ -c $< $(CFLAGS)

%.o: %.cpp
	$(CC) -o $@ -c $< $(CFLAGS)

%.o: %.cc %.h
	$(CC) -o $@ -c $< $(CFLAGS)

clean:
	find src/ -name "*.o" | xargs rm