ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/xyz2pov/src/Makefile
Revision: 511
Committed: Tue Apr 29 18:08:55 2003 UTC (21 years, 2 months ago) by mmeineke
File size: 3709 byte(s)
Log Message:
killing misc . crap that shouldn't be inb the source tree.

cleanning up the makefiles

File Contents

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