#!/bin/sh

#
# Compilation Examples
#

# for all architecture
gcc -O2 -I. -I../../include -I/usr/local/include -o tree.o   -DUSEX11=0 -DVECTORIZED=0 -DBFLOAD=0 -DDYNMEM=1    -c -o tree.o tree.c
gcc -O2 -I. -I../../include -I/usr/local/include -o direct.o   -DUSEX11=0 -DVECTORIZED=0 -DBFLOAD=0 -DDYNMEM=1    -c -o direct.o direct.c
gcc -O2 -I. -I../../include -I/usr/local/include -o sort.o   -DUSEX11=0 -DVECTORIZED=0 -DBFLOAD=0 -DDYNMEM=1    -c -o sort.o sort.c
gcc -O2 -I. -I../../include -I/usr/local/include -o cputime.o   -DUSEX11=0 -DVECTORIZED=0 -DBFLOAD=0 -DDYNMEM=1    -c -o cputime.o cputime.c
gcc -O2 -I. -I../../include -I/usr/local/include -o viewtree.o   -DUSEX11=0 -DVECTORIZED=0 -DBFLOAD=0 -DDYNMEM=1    -c -o viewtree.o viewtree.c
gcc -O2 -I. -I../../include -I/usr/local/include -o p2m2.o   -DUSEX11=0 -DVECTORIZED=0 -DBFLOAD=0 -DDYNMEM=1    -c -o p2m2.o p2m2.c
gcc -O2 -I. -I../../include -I/usr/local/include -o mr1interface.o   -DUSEX11=0 -DVECTORIZED=0 -DBFLOAD=0 -DDYNMEM=1    -c -o mr1interface.o mr1interface.c
gcc -O2 -I. -I../../include -I/usr/local/include -o force_g7.o   -DUSEX11=0 -DVECTORIZED=0 -DBFLOAD=0 -DDYNMEM=1    -c -o force_g7.o force_g7.c
ar ruv libvtc.a tree.o direct.o sort.o cputime.o viewtree.o p2m2.o mr1interface.o force_g7.o

# for GRAPE-DR
echo building for GRAPE-DR...
gcc -O2 -I. -I../../include -o vtc_gdr -DUSEX11=0 -DVECTORIZED=0 -DBFLOAD=0 -DDYNMEM=1 -L../../lib vtc.c ./libvtc.a -lgdr5 -lhib -lm
echo done.

# for GRAPE-7
echo building for GRAPE-7...
gcc -O2 -I. -I../../include -o vtc_g7 -DUSEX11=0 -DVECTORIZED=0 -DBFLOAD=0 -DDYNMEM=1 -L../../lib vtc.c ./libvtc.a -lg75 -lhib -lm
echo done.

# for Phantom-GRAPE-5
echo building for Phantom-GRAPE-5...
gcc -O2 -I. -I../../include -o vtc_pg5 -DUSEX11=0 -DVECTORIZED=0 -DBFLOAD=0 -DDYNMEM=1 -L../../lib vtc.c ./libvtc.a -lpg55 -lm -fopenmp
echo done.

# for CUDA G5
echo building for CUDA G5...
gcc -pthread -O2 -I. -I../../include -o vtc_cuda -DUSEX11=0 -DVECTORIZED=0 -DBFLOAD=0 -DDYNMEM=1 -L../../lib -L/usr/local/cuda/lib64 vtc.c ./libvtc.a -lcuda5 -lcudart -lm -lstdc++
echo done. 
