-CC = gcc
+CC = gcc-4.3
-CFLAGS = -Wall
-CFLAGS += -O3
+CFLAGS = -Wall -Winline
+#CFLAGS += -Wextra -pedantic
+CFLAGS += -O3 -march=native -msse2 -mfpmath=sse
CFLAGS += -g
+#CFLAGS += -pg
#CFLAGS += -ffloat-store
+#CFLAGS += -DPARALLEL -fopenmp
+#CFLAGS += -DPTHREADS -lpthread
+CFLAGS += -DVISUAL_THREAD -lpthread
+#CFLAGS += -DPTHREADS -DVISUAL_THREAD -lpthread
+
CFLAGS += -DALBE
+CFLAGS += -DALBE_FAST
+#CFLAGS += -DTERSOFF_ORIG
+
+#CFLAGS += -DSTATIC_LISTS
+CFLAGS += -DLOWMEM_LISTS
+
#CFLAGS += -DDEBUG
-CFLAGS += -DDSTART=400 -DDEND=600
+#CFLAGS += -DDSTART=-1 -DDEND=40 -DDATOM=0
#CFLAGS += -DVDEBUG
-#CFLAGS += -DTERSOFF_ORIG
-LDFLAGS=-lm
+LDFLAGS = -lm
+#LDFLAGS += -lc_p
+#LDFLAGS += -lefence
DEPS = moldyn.o random/random.o list/list.o
DEPS += potentials/lennard_jones.o potentials/harmonic_oscillator.o
DEPS += potentials/tersoff.o potentials/albe.o
+DEPS += potentials/albe_fast.o
+
+SRC = moldyn.c random/random.c list/list.c
+SRC += potentials/lennard_jones.c potentials/harmonic_oscillator.c
+SRC += potentials/tersoff.c potentials/albe.c
+SRC += potentials/albe_fast.c
-all: posic sic fluctuation_calc postproc
+ALL = mdrun sic fluctuation_calc postproc pair_correlation_calc diffusion_calc
+ALL += diffusion_calc_ver2 bond_analyze search_bonds visual_atoms
+ALL += display_atom_data atom_match
-posic: $(DEPS)
+all: $(ALL)
-sic: $(DEPS)
+# main code. using SRC, much more efficient code is produced!
+mdrun: $(SRC)
+#mdrun: $(DEPS)
+
+sic: $(DEPS) config.h
postproc: $(DEPS)
+pair_correlation_calc: $(DEPS)
+
+diffusion_calc: $(DEPS)
+
+diffusion_calc_ver2: $(DEPS)
+
+bond_analyze: $(DEPS)
+
+search_bonds: $(DEPS)
+
+visual_atoms: $(DEPS)
+
+display_atom_data: $(DEPS)
+
+atom_match: $(DEPS)
+
.PHONY:clean
clean:
- rm -vf sic postproc fluctuation_calc *.o */*.o
+ rm -vf $(ALL) *.o */*.o