Merge git://proxy01.pd.intel.com:9419/git/mesa/mesa into crestline
[mesa.git] / Makefile.mgw
1 # Mesa 3-D graphics library
2 # Version: 4.0
3 #
4 # Copyright (C) 1999 Brian Paul All Rights Reserved.
5 #
6 # Permission is hereby granted, free of charge, to any person obtaining a
7 # copy of this software and associated documentation files (the "Software"),
8 # to deal in the Software without restriction, including without limitation
9 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
10 # and/or sell copies of the Software, and to permit persons to whom the
11 # Software is furnished to do so, subject to the following conditions:
12 #
13 # The above copyright notice and this permission notice shall be included
14 # in all copies or substantial portions of the Software.
15 #
16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
17 # OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
19 # BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
20 # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
21 # CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
22
23 # MinGW makefile v1.2 for Mesa
24 #
25 # Copyright (C) 2002 - Daniel Borca
26 # Email : dborca@users.sourceforge.net
27 # Web : http://www.geocities.com/dborca
28
29
30 #
31 # Available options:
32 #
33 # Environment variables:
34 # GLIDE path to Glide3 SDK; used with FX.
35 # default = $(TOP)/glide3
36 # FX=1 build for 3dfx Glide3. Note that this disables
37 # compilation of most WMesa code and requires fxMesa.
38 # As a consequence, you'll need the Win32 Glide3
39 # library to build any application.
40 # default = no
41 # ICD=1 build the installable client driver interface
42 # (windows opengl driver interface)
43 # default = no
44 # X86=1 optimize for x86 (if possible, use MMX, SSE, 3DNow).
45 # default = no
46 #
47 # Targets:
48 # all: build everything
49 # libgl: build GL
50 # clean: remove object files
51 # realclean: remove all generated files
52 #
53
54
55
56 .PHONY : all libgl clean realclean
57
58 ifeq ($(ICD),1)
59 # when -std=c99 mingw will not define WIN32
60 CFLAGS = -Wall -W -Werror
61 else
62 # I love c89
63 CFLAGS = -Wall -W -pedantic
64 endif
65 CFLAGS += -O2 -ffast-math
66
67 export CFLAGS
68
69 ifeq ($(wildcard $(addsuffix /rm.exe,$(subst ;, ,$(PATH)))),)
70 UNLINK = del $(subst /,\,$(1))
71 else
72 UNLINK = $(RM) $(1)
73 endif
74
75 all: libgl
76
77 libgl: lib
78 $(MAKE) -f Makefile.mgw -C src/mesa
79
80 lib:
81 mkdir lib
82
83 clean:
84 $(MAKE) -f Makefile.mgw clean -C src/mesa
85
86 realclean: clean
87 -$(call UNLINK,lib/*.a)
88 -$(call UNLINK,lib/*.dll)