blob: 0940fda686d90d5c40f1e9927b619dc41ab72234 [file] [log] [blame]
Brian Paul304d11e2003-08-05 15:54:08 +00001# 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
Daniel Borcaedf4f532004-04-14 08:00:52 +000023# MinGW makefile v1.1 for Mesa
Brian Paul304d11e2003-08-05 15:54:08 +000024#
25# Copyright (C) 2002 - Borca Daniel
26# Email : dborca@users.sourceforge.net
27# Web : http://www.geocities.com/dborca
28
29
30#
31# Available options:
32#
33# Environment variables:
34# CPU optimize for the given processor.
Brian Paul9ec58c22003-08-19 15:52:51 +000035# default = pentium
Brian Paul304d11e2003-08-05 15:54:08 +000036# GLIDE path to Glide3 SDK; used with FX.
37# default = $(TOP)/glide3
38# FX=1 build for 3dfx Glide3. Note that this disables
39# compilation of most WMesa code and requires fxMesa.
40# As a consequence, you'll need the Win32 Glide3
41# library to build any application.
42# default = no
Brian Paul86e001b2004-08-25 14:59:45 +000043# ICD=1 build the installable client driver interface
44# (windows opengl driver interface)
45# default = no
Daniel Borcaedf4f532004-04-14 08:00:52 +000046# X86=1 optimize for x86 (if possible, use MMX, SSE, 3DNow).
Brian Paul304d11e2003-08-05 15:54:08 +000047# default = no
48#
49# Targets:
50# all: build everything
51# libgl: build GL
52# clean: remove object files
53# realclean: remove all generated files
54#
55
56
57
58.PHONY : all libgl clean realclean
59
Brian Paul9ec58c22003-08-19 15:52:51 +000060CPU ?= pentium
Daniel Borcaeec588b2004-08-30 08:34:52 +000061
62ifeq ($(ICD),1)
63 # when -std=c99 mingw will not define WIN32
Brian Pauldbc48302004-08-30 20:53:49 +000064 CFLAGS = -Wall -W -Werror
Daniel Borcaeec588b2004-08-30 08:34:52 +000065else
66 # I love c89
67 CFLAGS = -Wall -W -pedantic
68endif
Brian Paul304d11e2003-08-05 15:54:08 +000069CFLAGS += -O2 -ffast-math -mcpu=$(CPU)
70
71export CFLAGS
72
73ifeq ($(wildcard $(addsuffix /rm.exe,$(subst ;, ,$(PATH)))),)
74UNLINK = del $(subst /,\,$(1))
75else
76UNLINK = $(RM) $(1)
77endif
78
79all: libgl
80
81libgl: lib
82 $(MAKE) -f Makefile.mgw -C src/mesa
83
84lib:
85 mkdir lib
86
87clean:
88 $(MAKE) -f Makefile.mgw clean -C src/mesa
89
90realclean: clean
91 -$(call UNLINK,lib/*.a)
92 -$(call UNLINK,lib/*.dll)