ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/xyz2pov/src/Makefile
Revision: 638
Committed: Fri Jul 18 15:17:15 2003 UTC (20 years, 11 months ago) by mmeineke
File size: 3753 byte(s)
Log Message:
fixed the AtomType file not found bug.

File Contents

# User Rev Content
1 mmeineke 509 #####################################################
2     # Makefile for xyz2pov #
3     #####################################################
4     # You should not change anything here. #
5     #####################################################
6 mmeineke 60
7 mmeineke 509 TOP=..
8 mmeineke 60
9 mmeineke 509 include $(TOP)/Make.conf
10 mmeineke 60
11 mmeineke 509 .SUFFIXES : .cpp .c .h .hpp $(O)
12 mmeineke 60
13 mmeineke 509 # First do compile-time flags:
14 mmeineke 60
15 mmeineke 509 DECLARES= -DTYPES_PATH="$(ATOMTYPES_DIR)"
16 mmeineke 60
17 mmeineke 509 # include paths starting with "." are all relative to the SUBDIRS!!!
18 mmeineke 60
19 mmeineke 509 INCLUDES= -I..
20     CXXFLAGS=$(CXXFLAGS_C) $(INCLUDES) $(DECLARES)
21     CFLAGS=$(CFLAGS_C) $(INCLUDES) $(DECLARES)
22     DEPFLAGS=$(CFLAGS_C) -I.
23 mmeineke 60
24 mmeineke 509 XYZ2POV=xyz2pov$(EXE)
25     POV2ANIM=pov2anim$(EXE)
26 mmeineke 60
27 mmeineke 509 POVTOOLS_LIB = libpovtools.a
28    
29     XYZ2POV_LDFLAGS= -L.
30     XYZ2POV_LDADD= -lpovtools -lm
31    
32     POV2ANIM_LDFLAGS= -L.
33     POV2ANIM_LDADD= -lpovtools -lm
34    
35     PREFS=-DXYZ2POV_HOME="$(XYZ2POV_HOME)"
36    
37     # Then do the compile rules:
38    
39 mmeineke 638 SRCPATH=$(PWD)
40    
41 mmeineke 509 obj/%.o: %.cpp
42 mmeineke 638 cd obj; $(CXX) $(CXXFLAGS) -c $(SRCPATH)/$<
43 mmeineke 509
44     obj/%.o: %.c
45 mmeineke 638 cd obj; $(CC) $(CFLAGS) -c $(SRCPATH)/$<
46 mmeineke 509
47     # Then list what we have to compile
48    
49     LIBC_FILES = \
50     $(DIR)/atom_parser.c \
51     $(DIR)/frameCount.c \
52     $(DIR)/pov_writer.c
53    
54     LIBCXX_FILES =
55    
56     XYZC_FILES = \
57     $(DIR)/xyz2pov.c
58    
59     XYZCXX_FILES =
60    
61     ANIMC_FILES = \
62     $(DIR)/pov2anim.c
63    
64     ANIMCXX_FILES =
65    
66     DIR:=.
67     LIBC_SRCS := $(LIBC_FILES)
68     LIBCXX_SRCS := $(LIBCXX_FILES)
69     LIB_SRCS := $(LIBC_SRCS) $(LIBCXX_SRCS)
70    
71     DIR:=.
72     XYZC_SRCS := $(XYZC_FILES)
73     XYZCXX_SRCS := $(XYZCXX_FILES)
74     XYZ_SRCS := $(XYZC_SRCS) $(XYZCXX_SRCS)
75    
76     DIR:=.
77     ANIMC_SRCS := $(ANIMC_FILES)
78     ANIMCXX_SRCS := $(ANIMCXX_FILES)
79     ANIM_SRCS := $(ANIMC_SRCS) $(ANIMCXX_SRCS)
80    
81     SRCS := $(LIB_SRCS) $(XYZ_SRCS) $(ANIM_SRCS)
82    
83     DIR:=obj
84     LIBC_OBJS := $(LIBC_FILES:.c=.o)
85     LIBCXX_OBJS := $(LIBCXX_FILES:.cpp=.o)
86     LIB_OBJS := $(LIBC_OBJS) $(LIBCXX_OBJS)
87    
88     DIR:=obj
89     XYZC_OBJS := $(XYZC_FILES:.c=.o)
90     XYZCXX_OBJS := $(XYZCXX_FILES:.cpp=.o)
91     XYZ_OBJS := $(XYZC_OBJS) $(XYZCXX_OBJS)
92    
93     DIR:=obj
94     ANIMC_OBJS := $(ANIMC_FILES:.c=.o)
95     ANIMCXX_OBJS := $(ANIMCXX_FILES:.cpp=.o)
96     ANIM_OBJS := $(ANIMC_OBJS) $(ANIMCXX_OBJS)
97    
98     LIBSUBDIRS = obj
99    
100     all : Make.dep $(POVTOOLS_LIB) $(POV2ANIM) $(XYZ2POV)
101    
102     depend: Make.dep
103    
104     libpovtools.a: $(LIB_OBJS)
105     $(RM) $@
106 mmeineke 511 $(AR) cr $@ $(LIB_OBJS)
107 mmeineke 509 $(RANLIB) $@
108    
109     xyz2pov$(EXE) : $(XYZ_OBJS) $(POVTOOLS_LIB)
110     $(CC) $(CFLAGS) $(XYZ_OBJS) -o $@ $(XYZ2POV_LDFLAGS) $(XYZ2POV_LDADD)
111    
112     pov2anim$(EXE) : $(ANIM_OBJS) $(POVTOOLS_LIB)
113     $(CC) $(CFLAGS) $(ANIM_OBJS) -o $@ $(POV2ANIM_LDFLAGS) $(POV2ANIM_LDADD)
114    
115     install : $(POV2ANIM) $(XYZ2POV)
116     $(MKINSTALLDIRS) $(XYZ2POV_HOME)/bin
117     $(INSTALL_PROGRAM) -s $(XYZ2POV) $(XYZ2POV_HOME)/bin/$(XYZ2POV)
118     $(INSTALL_PROGRAM) -s $(POV2ANIM) $(XYZ2POV_HOME)/bin/$(POV2ANIM)
119    
120     tests : dummy
121    
122     $(XYZ2POV_HOME)/bin/$(XYZ2POV) : $(XYZ2POV)
123     $(MAKE) install
124    
125     $(XYZ2POV_HOME)/bin/$(POV2ANIM) : $(POV2ANIM)
126     $(MAKE) install
127    
128     links : $(XYZ2POV_HOME)/bin/$(XYZ2POV) $(XYZ2POV_HOME)/bin/$(POV2ANIM)
129     $(MKINSTALLDIRS) $(PREFIX)/bin
130     cd $(PREFIX)/bin; $(RM) $(XYZ2POV); $(LN_S) $(XYZ2POV_HOME)/bin/$(XYZ2POV) $(XYZ2POV)
131     cd $(PREFIX)/bin; $(RM) $(POV2ANIM); $(LN_S) $(XYZ2POV_HOME)/bin/$(POV2ANIM) $(POV2ANIM)
132    
133    
134     # cleaning
135    
136     .PHONY : clean
137    
138     clean : dummy
139     for i in $(LIBSUBDIRS); do \
140     (cd $$i; $(RM) *.o) || exit 1; \
141     done
142     $(RM) $(POVTOOLS_LIB) $(XYZ2POV) $(ANIM2POV) *.o *~ Make.temp
143    
144     distclean : dummy
145     for i in $(LIBSUBDIRS); do \
146     (cd $$i; $(RM) *.o) || exit 1; \
147     done
148     $(RM) $(POVTOOLS_LIB) $(XYZ2POV) $(ANIM2POV) *.o *~ Make.temp Make.dep
149    
150     devclean : distclean
151    
152     Make.dep : $(SRCS)
153     echo "# DO NOT DELETE THIS LINE - used by make depend" > Make.dep
154     $(CC) $(DEPFLAGS) -MM $(SRCS) \
155     | sed 's/\.o:/\$$(O)\ :/g' > Make.temp
156 mmeineke 638 cat Make.temp | sed 's/^[0-9a-zA-Z]/obj\/&/' >> Make.dep
157 mmeineke 509 $(RM) Make.temp
158    
159     tags : $(SRCS)
160     ctags $(SRCS)
161    
162     dummy :
163    
164     # DO NOT DELETE
165     include Make.dep