head	1.8;
access;
symbols
	charm6_1:1.8
	charm_6_0_1:1.8
	charm6_0_1:1.8
	charm6_0:1.5
	ChaNGa_1-0:1.5
	charm5_9:1.5;
locks; strict;
comment	@# @;


1.8
date	2008.10.07.17.22.49;	author phil;	state Exp;
branches;
next	1.7;
commitid	fxlBkjXVaeIhEIlt;

1.7
date	2008.10.02.23.48.46;	author phil;	state Exp;
branches;
next	1.6;
commitid	66EybiORc6BuW6lt;

1.6
date	2008.10.02.23.44.28;	author phil;	state Exp;
branches;
next	1.5;
commitid	qFWyNXvWXTq0V6lt;

1.5
date	2003.09.27.23.36.00;	author gzheng;	state Exp;
branches;
next	1.4;

1.4
date	2003.04.08.21.47.14;	author olawlor;	state Exp;
branches;
next	1.3;

1.3
date	2002.10.24.22.36.13;	author olawlor;	state Exp;
branches;
next	1.2;

1.2
date	2001.12.06.23.31.38;	author olawlor;	state Exp;
branches;
next	1.1;

1.1
date	2001.07.23.16.04.10;	author olawlor;	state Exp;
branches;
next	;


desc
@@


1.8
log
@Remove nonce INTERFACE files in clean target, so that later build attempts work.
@
text
@include ../common.mk

HEADERS=collide_util.h bbox.h collide_cfg.h collide_buffers.h \
	collidecharm.h collidec.h collidef.h 
HEADDEP=$(HEADERS) collidecharm_impl.h \
	collide_serial.h collide_buffers.h collide_cfg.h \
	collide.decl.h collidecharm.decl.h headers

COBJS=collide_util.o collide_serial.o collidecharm.o collide_buffers.o 
CLIB=libmodulecollidecharm
CDEST=$(LIBDIR)/$(CLIB).a

OBJS=$(COBJS) threadCollide.o
LIB=libmodulecollide
DEST=$(LIBDIR)/$(LIB).a

all: $(DEST) $(CDEST) headers

$(DEST): $(OBJS) $(COMPAT) 
	$(CHARMC) $(OBJS) $(COMPAT) -o $@@
	cp $(LIB).dep $(LIBDIR)/$(LIB).dep

$(CDEST): $(COBJS) $(COMPAT) 
	$(CHARMC) $(COBJS) $(COMPAT) -o $@@
#	cp $(CLIB).dep $(LIBDIR)/$(CLIB).dep

headers: $(HEADERS)
	cp $(HEADERS) $(CDIR)/include/
	touch headers

collide_util.o: collide_util.C $(HEADDEP)
	$(CHARMC) -c collide_util.C

collide_serial.o: collide_serial.C $(HEADDEP)
	$(CHARMC) -c collide_serial.C

collidecharm.o: collidecharm.C $(HEADDEP)
	$(CHARMC) -c collidecharm.C

collide_buffers.o: collide_buffers.C $(HEADDEP)
	$(CHARMC) -c collide_buffers.C

threadCollide.o: threadCollide.C $(HEADDEP)
	$(CHARMC) -c threadCollide.C

collide.decl.h collide.def.h: INTERFACE.threadCollide

INTERFACE.threadCollide: threadCollide.ci
	$(CHARMC) threadCollide.ci
	touch $@@

collidecharm.decl.h collidecharm.def.h: INTERFACE.collidecharm

INTERFACE.collidecharm: collidecharm.ci
	$(CHARMC) collidecharm.ci
	touch $@@

call_init.o: call_init.c
	$(CHARMC) -c call_init.c

clean:
	rm -rf *.a *.def.h *.decl.h *.o SunWS_cache $(DEST) headers INTERFACE.*

@


1.7
log
@Remove rules and definitions commented with work to parallelize build
@
text
@d62 1
a62 1
	rm -rf *.a *.def.h *.decl.h *.o SunWS_cache $(DEST) headers
@


1.6
log
@Modifications to ease parallel make, and move duplication to a common
definitions file.
@
text
@a2 4
#CDIR=../../../..
#CHARMC=$(CDIR)/bin/charmc $(OPTS)
#LIBDIR=$(CDIR)/lib

a26 3
#$(CDIR)/include/%.h: %.h
#	/bin/cp $< $@@

@


1.5
log
@small changes to dependecies to avoid double execution.
@
text
@d1 5
a5 3
CDIR=../../../..
CHARMC=$(CDIR)/bin/charmc $(OPTS)
LIBDIR=$(CDIR)/lib
d21 1
a21 2
all: $(DEST) $(CDEST)
	$(MAKE)  headers
d31 3
d53 1
a53 1
collide.def.h: collide.decl.h
d55 1
a55 1
collide.decl.h: threadCollide.ci
d57 1
d59 1
a59 1
collidecharm.def.h: collidecharm.decl.h
d61 1
a61 1
collidecharm.decl.h: collidecharm.ci
d63 1
d70 1
@


1.4
log
@Version 2.0 of collision library:
  - Cleanly separated utility classes from API implementation.
  - Provides clean Charm and TCharm API's.
  - Allows collision priority to be specified (useful for,
    among other things, data transfer).
  - No explicit assumption about a small number of collisions.
  - Massive source reorganization.
@
text
@d20 1
d22 1
a22 1
$(DEST): $(OBJS) $(COMPAT) headers
d26 1
a26 1
$(CDEST): $(COBJS) $(COMPAT) headers
d49 2
d53 2
@


1.3
log
@Removed make variable "$<", which on the DEC Alpha
only works from a ".c.o"-style rule, not a regular rule.
@
text
@d3 1
d5 5
a9 4
HEADERS=collision.h collidef.h \
	col_aggregate.h parCollide.decl.h collide.decl.h
OBJS = collision.o parCollide.o threadCollide.o \
	aggregate.o 
d11 3
a13 1
DEST=$(CDIR)/lib/libmodulecollide.a
d15 3
a17 1
all: $(DEST)
d19 1
a19 2
$(DEST): $(OBJS) $(CDIR)/include/collision.h
	$(CHARMC) $(OBJS) -o $@@
d21 9
a29 1
$(CDIR)/include/collision.h: $(HEADERS)
d31 1
d33 2
a34 5
model_corr.o: model_corr.C $(HEADERS)
	$(CHARMC) $(CFLAGS) -c model_corr.C

collision.o: collision.C $(HEADERS)
	$(CHARMC) $(CFLAGS) -c collision.C
d36 2
a37 2
aggregate.o: aggregate.C $(HEADERS)
	$(CHARMC) $(CFLAGS) -c aggregate.C
d39 2
a40 2
parCollide.o: parCollide.C $(HEADERS)
	$(CHARMC) $(CFLAGS) -c parCollide.C
d42 2
a43 2
threadCollide.o: threadCollide.C $(HEADERS)
	$(CHARMC) $(CFLAGS) -c threadCollide.C
d45 2
a46 2
parCollide.decl.h: parCollide.ci
	$(CHARMC) parCollide.ci
d51 2
d54 2
a55 8
test_par.o: test_par.C $(HEADERS)
	$(CHARMC) $(CFLAGS) -c test_par.C

test_par.decl.h: test_par.ci
	$(CHARMC) test_par.ci

clean: 
	-rm -fr *.o *~ *.decl.h *.def.h gmon.out $(DEST) conv-host charmrun
d57 2
@


1.2
log
@Minor changes to make collide a linkable module.
@
text
@d20 1
a20 1
	$(CHARMC) $(CFLAGS) -c $<
d23 1
a23 1
	$(CHARMC) $(CFLAGS) -c $<
d26 1
a26 1
	$(CHARMC) $(CFLAGS) -c $<
d29 1
a29 1
	$(CHARMC) $(CFLAGS) -c $<
d32 1
a32 1
	$(CHARMC) $(CFLAGS) -c $<
d42 1
a42 1
	$(CHARMC) $(CFLAGS) -c $<
@


1.1
log
@A 3D axis-aligned box version of my thesis code.
collision.C is the serial collision library
aggregate.C is a parallel communication library
parCollide.C is the main Charm++ glue
threadCollide.C provides a threaded API atop parCollide.

Both C++, C, and f90 bindings are supported.
@
text
@d5 1
a5 1
	col_aggregate.h parCollide.decl.h threadCollide.decl.h
d9 1
a9 1
DEST=$(CDIR)/lib/libcollide.a
d37 1
a37 1
threadCollide.decl.h: threadCollide.ci
@

