1# SPDX-License-Identifier: MIT
2# Copyright © 2021 Intel Corporation
3
4libglu = library(
5  'GLU',
6  [
7    'libutil/error.c',
8    'libutil/glue.c',
9    'libutil/mipmap.c',
10    'libutil/project.c',
11    'libutil/quad.c',
12    'libutil/registry.c',
13    'libtess/dict.c',
14    'libtess/geom.c',
15    'libtess/memalloc.c',
16    'libtess/mesh.c',
17    'libtess/normal.c',
18    'libtess/priorityq.c',
19    'libtess/render.c',
20    'libtess/sweep.c',
21    'libtess/tess.c',
22    'libtess/tessmono.c',
23    'libnurbs/interface/bezierEval.cc',
24    'libnurbs/interface/bezierPatch.cc',
25    'libnurbs/interface/bezierPatchMesh.cc',
26    'libnurbs/interface/glcurveval.cc',
27    'libnurbs/interface/glinterface.cc',
28    'libnurbs/interface/glrenderer.cc',
29    'libnurbs/interface/glsurfeval.cc',
30    'libnurbs/interface/incurveeval.cc',
31    'libnurbs/interface/insurfeval.cc',
32    'libnurbs/internals/arc.cc',
33    'libnurbs/internals/arcsorter.cc',
34    'libnurbs/internals/arctess.cc',
35    'libnurbs/internals/backend.cc',
36    'libnurbs/internals/basiccrveval.cc',
37    'libnurbs/internals/basicsurfeval.cc',
38    'libnurbs/internals/bin.cc',
39    'libnurbs/internals/bufpool.cc',
40    'libnurbs/internals/cachingeval.cc',
41    'libnurbs/internals/ccw.cc',
42    'libnurbs/internals/coveandtiler.cc',
43    'libnurbs/internals/curve.cc',
44    'libnurbs/internals/curvelist.cc',
45    'libnurbs/internals/curvesub.cc',
46    'libnurbs/internals/dataTransform.cc',
47    'libnurbs/internals/displaylist.cc',
48    'libnurbs/internals/flist.cc',
49    'libnurbs/internals/flistsorter.cc',
50    'libnurbs/internals/hull.cc',
51    'libnurbs/internals/intersect.cc',
52    'libnurbs/internals/knotvector.cc',
53    'libnurbs/internals/mapdesc.cc',
54    'libnurbs/internals/mapdescv.cc',
55    'libnurbs/internals/maplist.cc',
56    'libnurbs/internals/mesher.cc',
57    'libnurbs/internals/monoTriangulationBackend.cc',
58    'libnurbs/internals/monotonizer.cc',
59    'libnurbs/internals/mycode.cc',
60    'libnurbs/internals/nurbsinterfac.cc',
61    'libnurbs/internals/nurbstess.cc',
62    'libnurbs/internals/patch.cc',
63    'libnurbs/internals/patchlist.cc',
64    'libnurbs/internals/quilt.cc',
65    'libnurbs/internals/reader.cc',
66    'libnurbs/internals/renderhints.cc',
67    'libnurbs/internals/slicer.cc',
68    'libnurbs/internals/sorter.cc',
69    'libnurbs/internals/splitarcs.cc',
70    'libnurbs/internals/subdivider.cc',
71    'libnurbs/internals/tobezier.cc',
72    'libnurbs/internals/trimline.cc',
73    'libnurbs/internals/trimregion.cc',
74    'libnurbs/internals/trimvertpool.cc',
75    'libnurbs/internals/uarray.cc',
76    'libnurbs/internals/varray.cc',
77    'libnurbs/nurbtess/directedLine.cc',
78    'libnurbs/nurbtess/gridWrap.cc',
79    'libnurbs/nurbtess/monoChain.cc',
80    'libnurbs/nurbtess/monoPolyPart.cc',
81    'libnurbs/nurbtess/monoTriangulation.cc',
82    'libnurbs/nurbtess/partitionX.cc',
83    'libnurbs/nurbtess/partitionY.cc',
84    'libnurbs/nurbtess/polyDBG.cc',
85    'libnurbs/nurbtess/polyUtil.cc',
86    'libnurbs/nurbtess/primitiveStream.cc',
87    'libnurbs/nurbtess/quicksort.cc',
88    'libnurbs/nurbtess/rectBlock.cc',
89    'libnurbs/nurbtess/sampleComp.cc',
90    'libnurbs/nurbtess/sampleCompBot.cc',
91    'libnurbs/nurbtess/sampleCompRight.cc',
92    'libnurbs/nurbtess/sampleCompTop.cc',
93    'libnurbs/nurbtess/sampleMonoPoly.cc',
94    'libnurbs/nurbtess/sampledLine.cc',
95    'libnurbs/nurbtess/searchTree.cc',
96  ],
97  c_args : ['-DLIBRARYBUILD'],
98  cpp_args : ['-DLIBRARYBUILD'],
99  include_directories : [
100    'include',
101    'libnurbs/internals',
102    'libnurbs/interface',
103    'libnurbs/nurbtess',
104    inc_include,
105  ],
106  gnu_symbol_visibility : 'hidden',
107  dependencies : [dep_gl],
108  version : '1.3.1',
109  install : true,
110)
111
112# for subproject users
113dep_glu = declare_dependency(
114  link_with : libglu,
115  include_directories : inc_include,
116)
117