1#############################################################################
2# Linux Makefile for building BillardGl  Tobias Nopper 2001
3#     Project: BillardGL
4#############################################################################
5
6####### Compiler, tools and options
7
8CC	?=	gcc
9CXX	?=	g++
10CFLAGS	+=	-Wall -W -DNO_DEBUG
11CXXFLAGS+=	-Wall -W -DNO_DEBUG
12INCPATH	=	-I${LOCALBASE}/include
13LINK	?=	${CXX}
14LFLAGS	+=	${LDFLAGS}
15LIBS	+=	-L${LOCALBASE}/lib -lGL -lGLU -lglut -lXmu -lXext -lX11 -lm -lXi
16
17## -lqgl -lGLU
18
19TAR	=	tar -cf
20GZIP	=	gzip -9f
21
22####### Files
23
24HEADERS =	Anzeige.h\
25		Beleuchtung.h\
26		Benutzerschnittstelle.h\
27		BillardGL.h\
28		Einsetzen.h\
29		Handling.h\
30		Kamera.h\
31		KommandoZeilenParameter.h\
32		Kugel.h\
33		LA.h\
34		Menu.h\
35		Namen.h\
36		Netzwerk.h\
37		Physik.h\
38		SchattenKreis.h\
39		Schiedsrichter.h\
40		Schild.h\
41		SpielfeldAufbau.h\
42		Textfeld.h\
43		Tisch.h\
44		Tischfunktionen.h\
45		Zeit.h\
46		bmp.h\
47		createTexture.h\
48		kugeltabellen.h\
49		viertelLoch.h\
50		LadeScreen.h
51
52SOURCES =	Anzeige.cpp\
53		Beleuchtung.cpp\
54		Benutzerschnittstelle.cpp\
55		BillardGL.cpp\
56		Einsetzen.cpp\
57		Handling.cpp\
58		Kamera.cpp\
59		KommandoZeilenParameter.cpp\
60		Kugel.cpp\
61		LA.cpp\
62		Menu.cpp\
63		Netzwerk.cpp\
64		Physik.cpp\
65		SchattenKreis.cpp\
66		Schiedsrichter.cpp\
67		Schild.cpp\
68		SpielfeldAufbau.cpp\
69		Textfeld.cpp\
70		Tisch.cpp\
71		Tischfunktionen.cpp\
72		Zeit.cpp\
73		bmp.cpp\
74		createTexture.cpp\
75		kugeltabellen.cpp\
76		viertelLoch.cpp\
77		LadeScreen.cpp
78
79OBJECTS =	Anzeige.o\
80		Beleuchtung.o\
81		Benutzerschnittstelle.o\
82		BillardGL.o\
83		Einsetzen.o\
84		Handling.o\
85		Kamera.o\
86		KommandoZeilenParameter.o\
87		Kugel.o\
88		LA.o\
89		Netzwerk.o\
90		Menu.o\
91		Physik.o\
92		SchattenKreis.o\
93		Schiedsrichter.o\
94		Schild.o\
95		SpielfeldAufbau.o\
96		Textfeld.o\
97		Tisch.o\
98		Tischfunktionen.o\
99		Zeit.o\
100		bmp.o\
101		createTexture.o\
102		kugeltabellen.o\
103		viertelLoch.o\
104		LadeScreen.o
105
106INTERFACES =
107UICDECLS =
108UICIMPLS =
109SRCMOC	=
110OBJMOC	=
111DIST	=
112TARGET	=	BillardGL
113INTERFACE_DECL_PATH = .
114
115####### Implicit rules
116
117.SUFFIXES: .cpp .cxx .cc .C .c
118
119.cpp.o:
120	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
121
122.cxx.o:
123	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
124
125.cc.o:
126	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
127
128.C.o:
129	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<
130
131.c.o:
132	$(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<
133
134####### Build rules
135
136
137all: $(TARGET)
138
139$(TARGET): $(UICDECLS) $(OBJECTS) $(OBJMOC)
140	$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJMOC) $(LIBS)
141
142dist:
143	$(TAR) BillardGL.tar BillardGL.pro $(SOURCES) $(HEADERS) $(INTERFACES) $(DIST)
144	$(GZIP) BillardGL.tar
145
146clean:
147	-rm -f $(OBJECTS) $(OBJMOC) $(SRCMOC) $(UICIMPLS) $(UICDECLS) $(TARGET)
148	-rm -f *~ core
149clear:
150	-rm -f $(OBJECTS) $(OBJMOC) $(SRCMOC) $(UICIMPLS) $(UICDECLS) $(TARGET)
151	-rm -f *~ core
152
153install:
154	-cp BillardGL /usr/X11R6/bin/BillardGL
155	-cp BillardGL /usr/X11R6/bin/billardGL
156	-mkdir -p /usr/share/BillardGL
157	-cp -R Texturen /usr/share/BillardGL
158	-cp -R lang /usr/share/BillardGL
159	-mkdir -p /usr/share/doc/packages/BillardGL
160	-cp README /usr/share/doc/packages/BillardGL
161
162uninstall:
163	-rm /usr/X11R6/bin/BillardGL
164	-rm -rf /usr/share/BillardGL
165	-rm -rf /usr/share/doc/packages/BillardGL
166####### Sub-libraries
167
168
169
170