Tizen 2.0 Release
[profile/ivi/osmesa.git] / src / glu / sgi / Makefile
1 # src/glu/sgi/Makefile
2
3 .SUFFIXES : .cc
4
5 TOP = ../../..
6
7 include $(TOP)/configs/current
8
9 GLU_MAJOR = 1
10 GLU_MINOR = 3
11 GLU_TINY = 0$(MESA_MAJOR)$(MESA_MINOR)0$(MESA_TINY)
12
13 INCDIRS = -I$(TOP)/include -Iinclude -Iinternals -Ilibnurbs/internals -Ilibnurbs/interface -Ilibnurbs/nurbtess
14
15 C_SOURCES = \
16         libutil/error.c         \
17         libutil/glue.c          \
18         libutil/mipmap.c        \
19         libutil/project.c       \
20         libutil/quad.c          \
21         libutil/registry.c      \
22         libtess/dict.c          \
23         libtess/geom.c          \
24         libtess/memalloc.c      \
25         libtess/mesh.c          \
26         libtess/normal.c        \
27         libtess/priorityq.c     \
28         libtess/render.c        \
29         libtess/sweep.c         \
30         libtess/tess.c          \
31         libtess/tessmono.c
32
33 CC_SOURCES = \
34         libnurbs/interface/bezierEval.cc                \
35         libnurbs/interface/bezierPatch.cc               \
36         libnurbs/interface/bezierPatchMesh.cc           \
37         libnurbs/interface/glcurveval.cc                \
38         libnurbs/interface/glinterface.cc               \
39         libnurbs/interface/glrenderer.cc                \
40         libnurbs/interface/glsurfeval.cc                \
41         libnurbs/interface/incurveeval.cc               \
42         libnurbs/interface/insurfeval.cc                \
43         libnurbs/internals/arc.cc                       \
44         libnurbs/internals/arcsorter.cc                 \
45         libnurbs/internals/arctess.cc                   \
46         libnurbs/internals/backend.cc                   \
47         libnurbs/internals/basiccrveval.cc              \
48         libnurbs/internals/basicsurfeval.cc             \
49         libnurbs/internals/bin.cc                       \
50         libnurbs/internals/bufpool.cc                   \
51         libnurbs/internals/cachingeval.cc               \
52         libnurbs/internals/ccw.cc                       \
53         libnurbs/internals/coveandtiler.cc              \
54         libnurbs/internals/curve.cc                     \
55         libnurbs/internals/curvelist.cc                 \
56         libnurbs/internals/curvesub.cc                  \
57         libnurbs/internals/dataTransform.cc             \
58         libnurbs/internals/displaylist.cc               \
59         libnurbs/internals/flist.cc                     \
60         libnurbs/internals/flistsorter.cc               \
61         libnurbs/internals/hull.cc                      \
62         libnurbs/internals/intersect.cc                 \
63         libnurbs/internals/knotvector.cc                \
64         libnurbs/internals/mapdesc.cc                   \
65         libnurbs/internals/mapdescv.cc                  \
66         libnurbs/internals/maplist.cc                   \
67         libnurbs/internals/mesher.cc                    \
68         libnurbs/internals/monoTriangulationBackend.cc  \
69         libnurbs/internals/monotonizer.cc               \
70         libnurbs/internals/mycode.cc                    \
71         libnurbs/internals/nurbsinterfac.cc             \
72         libnurbs/internals/nurbstess.cc                 \
73         libnurbs/internals/patch.cc                     \
74         libnurbs/internals/patchlist.cc                 \
75         libnurbs/internals/quilt.cc                     \
76         libnurbs/internals/reader.cc                    \
77         libnurbs/internals/renderhints.cc               \
78         libnurbs/internals/slicer.cc                    \
79         libnurbs/internals/sorter.cc                    \
80         libnurbs/internals/splitarcs.cc                 \
81         libnurbs/internals/subdivider.cc                \
82         libnurbs/internals/tobezier.cc                  \
83         libnurbs/internals/trimline.cc                  \
84         libnurbs/internals/trimregion.cc                \
85         libnurbs/internals/trimvertpool.cc              \
86         libnurbs/internals/uarray.cc                    \
87         libnurbs/internals/varray.cc                    \
88         libnurbs/nurbtess/directedLine.cc               \
89         libnurbs/nurbtess/gridWrap.cc                   \
90         libnurbs/nurbtess/monoChain.cc                  \
91         libnurbs/nurbtess/monoPolyPart.cc               \
92         libnurbs/nurbtess/monoTriangulation.cc          \
93         libnurbs/nurbtess/partitionX.cc                 \
94         libnurbs/nurbtess/partitionY.cc                 \
95         libnurbs/nurbtess/polyDBG.cc                    \
96         libnurbs/nurbtess/polyUtil.cc                   \
97         libnurbs/nurbtess/primitiveStream.cc            \
98         libnurbs/nurbtess/quicksort.cc                  \
99         libnurbs/nurbtess/rectBlock.cc                  \
100         libnurbs/nurbtess/sampleComp.cc                 \
101         libnurbs/nurbtess/sampleCompBot.cc              \
102         libnurbs/nurbtess/sampleCompRight.cc            \
103         libnurbs/nurbtess/sampleCompTop.cc              \
104         libnurbs/nurbtess/sampleMonoPoly.cc             \
105         libnurbs/nurbtess/sampledLine.cc                \
106         libnurbs/nurbtess/searchTree.cc
107
108 SOURCES = $(C_SOURCES) $(CC_SOURCES)
109
110 C_OBJECTS = $(C_SOURCES:.c=.o)
111 CC_OBJECTS = $(CC_SOURCES:.cc=.o)
112 OBJECTS = $(C_OBJECTS) $(CC_OBJECTS)
113
114
115 ##### RULES #####
116
117 .c.o:
118         $(CC) -c $(INCDIRS) $(CFLAGS) -DNDEBUG -DLIBRARYBUILD $< -o $@
119
120 .cc.o:
121         $(CXX) -c $(INCDIRS) $(CXXFLAGS) -DNDEBUG -DLIBRARYBUILD $< -o $@
122
123
124 ##### TARGETS #####
125
126 default:
127         @if [ "${CONFIG_NAME}" = "beos" ] ; then \
128                 echo "$(GLU_LIB_NAME) not build under BeOS, but integrated into ${GL_LIB_NAME}." ; \
129                 exit 0 ; \
130         else \
131                 $(MAKE) $(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME) || exit 1 ; \
132         fi
133
134 $(TOP)/$(LIB_DIR):
135         -mkdir $(TOP)/$(LIB_DIR)
136
137 # Make the library:
138 $(TOP)/$(LIB_DIR)/$(GLU_LIB_NAME): $(OBJECTS)
139         $(MKLIB) -o $(GLU_LIB) -linker '$(CXX)' -ldflags '$(LDFLAGS)' \
140                 -major $(GLU_MAJOR) -minor $(GLU_MINOR) -patch $(GLU_TINY) \
141                 -cplusplus $(MKLIB_OPTIONS) -install $(TOP)/$(LIB_DIR) \
142                 -exports glu.exports -id $(INSTALL_LIB_DIR)/lib$(GLU_LIB).$(GLU_MAJOR).dylib \
143                 $(GLU_LIB_DEPS) $(OBJECTS)
144
145
146 clean:
147         -rm -f *.o */*.o */*/*.o
148         -rm -f *.lo */*.lo */*/*.lo
149         -rm -f *.la */*.la */*/*.la