83de6ca350e5b057eaa26b85b26d2eb3355532e7
[charm.git] / src / libs / ck-libs / ParFUM-Tops / Makefile
1 CDIR=../../../..
2 CHARMC=$(CDIR)/bin/charmc $(OPTS) -g
3
4 #Headers to be copied to include directory so application users can see them
5 HEADERS= ParFUM_TOPS.h  $(INTERNALHEADERS)
6
7 #Headers generated from .ci files
8 GENHEADERS= ParFUM_TOPS.def.h ParFUM_TOPS.decl.h 
9
10 HEADDEP= $(GENHEADERS) $(HEADERS) $(INTERNALHEADERS)
11
12 OBJS=ParFUM_TOPS.o ParFUM_TOPS_Iterators.o
13
14 LIB=libmoduleParFUM_TOPS
15
16 LIBDIR=$(CDIR)/lib
17 DEST=$(LIBDIR)/$(LIB).a
18
19 INCS=-I.
20
21 all: $(DEST)
22
23
24 ParFUM_TOPS.decl.h: ParFUM_TOPS.ci
25         $(CHARMC) ParFUM_TOPS.ci
26 ParFUM_TOPS.def.h: ParFUM_TOPS.ci
27         $(CHARMC) ParFUM_TOPS.ci
28
29 # Build libmoduleParFUM
30 $(DEST): $(OBJS) headers $(HEADDEP)
31         $(CHARMC) $(OBJS) -o $@
32         cp $(LIB).dep $(LIBDIR)/$(LIB).dep
33
34 # Copy header files to include directory
35 headers: $(HEADDEP)
36         cp $(HEADERS) $(CDIR)/include/
37         touch headers
38
39 ParFUM_TOPS.o: ParFUM_TOPS.C $(HEADDEP) ParFUM_TOPS.h
40         $(CHARMC) -c ParFUM_TOPS.C $(INCS)
41
42 ParFUM_TOPS_Iterators.o: ParFUM_TOPS_Iterators.C $(HEADDEP) ParFUM_TOPS.h
43         $(CHARMC) -c ParFUM_TOPS_Iterators.C $(INCS)
44
45
46 # clean up
47 clean:
48         rm -rf *.a *.def.h *.decl.h *.o *~ SunWS_cache $(DEST) headers