blob: 8ad34be32e2fcb270da0846b4f94191d49f3048e [file] [log] [blame]
Brian Paul642699a2003-06-16 14:32:44 +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# DOS/DJGPP makefile v1.5 for Mesa
Brian Paul642699a2003-06-16 14:32:44 +000024#
25# Copyright (C) 2002 - Borca Daniel
Brian Paul9ec58c22003-08-19 15:52:51 +000026# Email : dborca@users.sourceforge.net
Brian Paul642699a2003-06-16 14:32:44 +000027# 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 Paul642699a2003-06-16 14:32:44 +000036# GLU=[mesa|sgi] specify GLU directory; can be `sgi' (requires GNU/C++)
37# or `mesa'.
38# default = mesa
Brian Paul9ec58c22003-08-19 15:52:51 +000039# GLIDE path to Glide3 SDK; used with FX.
40# default = $(TOP)/glide3
Brian Paul642699a2003-06-16 14:32:44 +000041# FX=1 build for 3dfx Glide3. Note that this disables
42# compilation of most DMesa code and requires fxMesa.
43# As a consequence, you'll need the DJGPP Glide3
44# library to build any application.
45# default = no
Daniel Borcaedf4f532004-04-14 08:00:52 +000046# X86=1 optimize for x86 (if possible, use MMX, SSE, 3DNow).
Brian Paul642699a2003-06-16 14:32:44 +000047# default = no
48#
49# Targets:
50# all: build everything
51# libgl: build GL
52# libglu: build GLU
53# libglut: build GLUT
54# clean: remove object files
55# realclean: remove all generated files
56#
57
58
59
60.PHONY : all libgl libglu libglut clean realclean
61
Brian Paul9ec58c22003-08-19 15:52:51 +000062CPU ?= pentium
Brian Paul642699a2003-06-16 14:32:44 +000063
64GLU ?= mesa
65
66CFLAGS = -Wall -W -pedantic
67CFLAGS += -O2 -ffast-math -mcpu=$(CPU)
68
69export CFLAGS
70
71ifeq ($(wildcard $(addsuffix /rm.exe,$(subst ;, ,$(PATH)))),)
72UNLINK = del $(subst /,\,$(1))
73else
74UNLINK = $(RM) $(1)
75endif
76
77all: libgl libglu libglut
78
79libgl: lib
80 $(MAKE) -f Makefile.DJ -C src/mesa
81libglu: lib
82 $(MAKE) -f Makefile.DJ -C src/glu/$(GLU)
83libglut: lib
84 $(MAKE) -f Makefile.DJ -C src/glut/dos
85
86lib:
87 mkdir lib
88
89clean:
90 $(MAKE) -f Makefile.DJ clean -C src/mesa
91 $(MAKE) -f Makefile.DJ clean -C src/glu/mesa
92 $(MAKE) -f Makefile.DJ clean -C src/glu/sgi
93 $(MAKE) -f Makefile.DJ clean -C src/glut/dos
94
95realclean: clean
96 -$(call UNLINK,lib/*.a)
97 -$(call UNLINK,lib/*.dxe)