fix some broken cflag/cppflag use and behaviour. (NicJA)
[AROS.git] / workbench / libs / glu / mmakefile.src
blob071fe5991f943bb8ba1c2f2617c37c848daee07c
1 #   $Id$
3 include $(SRCDIR)/config/aros.cfg
5 ################################################################################
6 # GLU                                                                          #
7 ################################################################################
9 #MM- workbench-libs-complete : workbench-libs-glu
11 #MM workbench-libs-glu : includes workbench-libs-mesa-linklib workbench-libs-glu-fetch
12 #MM workbench-libs-glu-includes : workbench-libs-glu-fetch
14 #MM- includes-copy : workbench-libs-glu-includes
16 REPOSITORIES = ftp://ftp.freedesktop.org/pub/mesa/glu/ \
17  ftp://ftp.embeddedarm.com/mirror/yocto/
18 ARCHBASE := glu-9.0.0
19 PATCHSPEC := $(ARCHBASE)-aros.diff:$(ARCHBASE):-p1
21 top_srcdir = $(PORTSDIR)/glu/$(ARCHBASE)
23 GLU_INCLUDE_FILES := glu.h
25 LIBUTIL_SOURCES = \
26             libutil/error \
27             libutil/glue \
28             libutil/mipmap \
29             libutil/project \
30             libutil/quad \
31             libutil/registry
33 LIBTESS_SOURCES = \
34             libtess/dict \
35             libtess/geom \
36             libtess/memalloc \
37             libtess/mesh \
38             libtess/normal \
39             libtess/priorityq \
40             libtess/render \
41             libtess/sweep \
42             libtess/tess \
43             libtess/tessmono
45 LIBNURBS_SOURCES = \
46             libnurbs/interface/bezierEval \
47             libnurbs/interface/bezierPatch \
48             libnurbs/interface/bezierPatchMesh \
49             libnurbs/interface/glcurveval \
50             libnurbs/interface/glinterface \
51             libnurbs/interface/glrenderer \
52             libnurbs/interface/glsurfeval \
53             libnurbs/interface/incurveeval \
54             libnurbs/interface/insurfeval \
55             libnurbs/internals/arc \
56             libnurbs/internals/arcsorter \
57             libnurbs/internals/arctess \
58             libnurbs/internals/backend \
59             libnurbs/internals/basiccrveval \
60             libnurbs/internals/basicsurfeval \
61             libnurbs/internals/bin \
62             libnurbs/internals/bufpool \
63             libnurbs/internals/cachingeval \
64             libnurbs/internals/ccw \
65             libnurbs/internals/coveandtiler \
66             libnurbs/internals/curve \
67             libnurbs/internals/curvelist \
68             libnurbs/internals/curvesub \
69             libnurbs/internals/dataTransform \
70             libnurbs/internals/displaylist \
71             libnurbs/internals/flist \
72             libnurbs/internals/flistsorter \
73             libnurbs/internals/hull \
74             libnurbs/internals/intersect \
75             libnurbs/internals/knotvector \
76             libnurbs/internals/mapdesc \
77             libnurbs/internals/mapdescv \
78             libnurbs/internals/maplist \
79             libnurbs/internals/mesher \
80             libnurbs/internals/monotonizer \
81             libnurbs/internals/monoTriangulationBackend \
82             libnurbs/internals/mycode \
83             libnurbs/internals/nurbstess \
84             libnurbs/internals/nurbsinterfac \
85             libnurbs/internals/patch \
86             libnurbs/internals/patchlist \
87             libnurbs/internals/quilt \
88             libnurbs/internals/reader \
89             libnurbs/internals/renderhints \
90             libnurbs/internals/slicer \
91             libnurbs/internals/sorter \
92             libnurbs/internals/splitarcs \
93             libnurbs/internals/subdivider \
94             libnurbs/internals/tobezier \
95             libnurbs/internals/trimline \
96             libnurbs/internals/trimregion \
97             libnurbs/internals/trimvertpool \
98             libnurbs/internals/uarray \
99             libnurbs/internals/varray \
100             libnurbs/nurbtess/directedLine \
101             libnurbs/nurbtess/gridWrap \
102             libnurbs/nurbtess/monoChain \
103             libnurbs/nurbtess/monoPolyPart \
104             libnurbs/nurbtess/monoTriangulation \
105             libnurbs/nurbtess/partitionX \
106             libnurbs/nurbtess/partitionY \
107             libnurbs/nurbtess/polyDBG \
108             libnurbs/nurbtess/polyUtil \
109             libnurbs/nurbtess/primitiveStream \
110             libnurbs/nurbtess/quicksort \
111             libnurbs/nurbtess/rectBlock \
112             libnurbs/nurbtess/sampleCompBot \
113             libnurbs/nurbtess/sampleComp \
114             libnurbs/nurbtess/sampleCompRight \
115             libnurbs/nurbtess/sampleCompTop \
116             libnurbs/nurbtess/sampledLine \
117             libnurbs/nurbtess/sampleMonoPoly \
118             libnurbs/nurbtess/searchTree
120 EMUL_C_SOURCES := \
121     emul_stdc
123 EMUL_CXX_SOURCES := \
124     emul_stdc++
126 LIBRARY_SOURCES := \
127             $(addprefix $(top_srcdir)/src/, $(LIBUTIL_SOURCES)) \
128             $(addprefix $(top_srcdir)/src/, $(LIBTESS_SOURCES)) \
129             $(EMUL_C_SOURCES)
131 USER_INCLUDES := \
132             -I$(top_srcdir)/src/include \
133             -I$(top_srcdir)/src/libnurbs/internals \
134             -I$(top_srcdir)/src/libnurbs/nurbtess
136 NOWARN_FLAGS := $(NOWARN_NONNULL_COMPARE) $(NOWARN_MISLEADING_INDENTATION) \
137                 $(NOWARN_UNINITIALIZED) $(NOWARN_VOLATILE_REGISTER_VAR)
138 GLU_COMMONFLAGS := -fno-asynchronous-unwind-tables -fno-exceptions
139 USER_CPPFLAGS := -DLIBRARYBUILD
140 USER_CFLAGS := $(GLU_COMMONFLAGS) $(NOWARN_FLAGS)
141 USER_CXXFLAGS := $(GLU_COMMONFLAGS) -fno-rtti $(NOWARN_FLAGS)
143 CC_SOURCES := \
144     $(addprefix $(top_srcdir)/src/, $(LIBNURBS_SOURCES))
146 %fetch mmake=workbench-libs-glu-fetch archive=$(ARCHBASE) destination=$(PORTSDIR)/glu \
147     location=$(PORTSSOURCEDIR) archive_origins=$(REPOSITORIES) suffixes="tar.bz2" \
148     patches_specs=$(PATCHSPEC)
150 %create_patch mmake=workbench-libs-glu-create-patch \
151     archive=$(ARCHBASE) srcdir=$(ARCHBASE) destination=$(PORTSDIR)/glu
153 %build_module mmake=workbench-libs-glu \
154     modname=glu modtype=library linklibname=GLU \
155     files="$(LIBRARY_SOURCES)" cxxfiles="$(EMUL_CXX_SOURCES) $(CC_SOURCES)" \
156     uselibs="GL stdcio stdc"
159 workbench-libs-glu-includes:
160 %copy_includes path=GL dir=$(top_srcdir)/include/GL includes=$(GLU_INCLUDE_FILES)
162 %common