Seperate the Doxygen configuration files (for full Mesa only) in a common part and...
[mesa.git] / Makefile.DJ
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 # DOS/DJGPP makefile v1.4 for Mesa
24 #
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.
35 # default = pentium
36 # GLU=[mesa|sgi] specify GLU directory; can be `sgi' (requires GNU/C++)
37 # or `mesa'.
38 # default = mesa
39 # GLIDE path to Glide3 SDK; used with FX.
40 # default = $(TOP)/glide3
41 # 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
46 # MATROX=1 build for Matrox Millennium I (MGA2064W) cards.
47 # This is experimental and not intensively tested.
48 # default = no
49 # HAVE_X86=1 optimize for i386.
50 # default = no
51 # HAVE_MMX=1 allow MMX specializations, provided your assembler
52 # supports MMX instruction set. However, the true CPU
53 # capabilities are checked at run-time to avoid crashes.
54 # default = no
55 # HAVE_SSE=1 (see HAVE_MMX)
56 # default = no
57 # HAVE_3DNOW=1 (see HAVE_MMX)
58 # default = no
59 #
60 # Targets:
61 # all: build everything
62 # libgl: build GL
63 # libglu: build GLU
64 # libglut: build GLUT
65 # clean: remove object files
66 # realclean: remove all generated files
67 #
68
69
70
71 .PHONY : all libgl libglu libglut clean realclean
72
73 CPU ?= pentium
74
75 GLU ?= mesa
76
77 CFLAGS = -Wall -W -pedantic
78 CFLAGS += -O2 -ffast-math -mcpu=$(CPU)
79
80 export CFLAGS
81
82 ifeq ($(wildcard $(addsuffix /rm.exe,$(subst ;, ,$(PATH)))),)
83 UNLINK = del $(subst /,\,$(1))
84 else
85 UNLINK = $(RM) $(1)
86 endif
87
88 all: libgl libglu libglut
89
90 libgl: lib
91 $(MAKE) -f Makefile.DJ -C src/mesa
92 libglu: lib
93 $(MAKE) -f Makefile.DJ -C src/glu/$(GLU)
94 libglut: lib
95 $(MAKE) -f Makefile.DJ -C src/glut/dos
96
97 lib:
98 mkdir lib
99
100 clean:
101 $(MAKE) -f Makefile.DJ clean -C src/mesa
102 $(MAKE) -f Makefile.DJ clean -C src/glu/mesa
103 $(MAKE) -f Makefile.DJ clean -C src/glu/sgi
104 $(MAKE) -f Makefile.DJ clean -C src/glut/dos
105
106 realclean: clean
107 -$(call UNLINK,lib/*.a)
108 -$(call UNLINK,lib/*.dxe)