111 lines
3.2 KiB
Makefile
111 lines
3.2 KiB
Makefile
# Mesa 3-D graphics library
|
|
# Version: 4.0
|
|
#
|
|
# Copyright (C) 1999 Brian Paul All Rights Reserved.
|
|
#
|
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
|
# copy of this software and associated documentation files (the "Software"),
|
|
# to deal in the Software without restriction, including without limitation
|
|
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
|
# and/or sell copies of the Software, and to permit persons to whom the
|
|
# Software is furnished to do so, subject to the following conditions:
|
|
#
|
|
# The above copyright notice and this permission notice shall be included
|
|
# in all copies or substantial portions of the Software.
|
|
#
|
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
|
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
|
# BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
|
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
|
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
|
|
# MinGW makefile v1.2 for Mesa
|
|
#
|
|
# Copyright (C) 2002 - Daniel Borca
|
|
# Email : dborca@users.sourceforge.net
|
|
# Web : http://www.geocities.com/dborca
|
|
|
|
|
|
#
|
|
# Available options:
|
|
#
|
|
# Environment variables:
|
|
# GLIDE path to Glide3 SDK; used with FX.
|
|
# default = $(TOP)/glide3
|
|
# FX=1 build for 3dfx Glide3. Note that this disables
|
|
# compilation of most WMesa code and requires fxMesa.
|
|
# As a consequence, you'll need the Win32 Glide3
|
|
# library to build any application.
|
|
# default = no
|
|
# ICD=1 build the installable client driver interface
|
|
# (windows opengl driver interface)
|
|
# default = no
|
|
# X86=1 optimize for x86 (if possible, use MMX, SSE, 3DNow).
|
|
# default = no
|
|
#
|
|
# Targets:
|
|
# all: build everything
|
|
# libgl: build GL
|
|
# clean: remove object files
|
|
# realclean: remove all generated files
|
|
#
|
|
|
|
# MinGW core makefile updated for Mesa 7.0
|
|
#
|
|
# Updated : by Heromyth, on 2007-7-21
|
|
# Email : zxpmyth@yahoo.com.cn
|
|
# Bugs : 1) All the default settings work fine. But the setting X86=1 can't work.
|
|
# The others havn't been tested yet.
|
|
# 2) The generated DLLs are *not* compatible with the ones built
|
|
# with the other compilers like VC8, especially for GLUT.
|
|
# 3) MAlthough more tests are needed, it can be used individually!
|
|
|
|
|
|
.PHONY : all libgl clean realclean
|
|
|
|
ifeq ($(ICD),1)
|
|
# when -std=c99 mingw will not define WIN32
|
|
CFLAGS = -Wall -Werror
|
|
else
|
|
# I love c89
|
|
CFLAGS = -Wall -pedantic
|
|
endif
|
|
CFLAGS += -O2 -ffast-math
|
|
|
|
export CFLAGS
|
|
|
|
|
|
ifeq ($(wildcard $(addsuffix /rm.exe,$(subst ;, ,$(PATH)))),)
|
|
UNLINK = del $(subst /,\,$(1))
|
|
else
|
|
UNLINK = $(RM) $(1)
|
|
endif
|
|
|
|
all: libgl libglu libglut example
|
|
|
|
libgl: lib
|
|
$(MAKE) -f Makefile.mgw -C src/mesa
|
|
|
|
libglu: libgl
|
|
$(MAKE) -f Makefile.mgw -C src/glu/sgi
|
|
|
|
libglut: libglu
|
|
$(MAKE) -f Makefile.mgw -C src/glut/glx
|
|
|
|
example: libglut
|
|
$(MAKE) -f Makefile.mgw star -C progs/samples
|
|
copy progs\samples\star.exe lib
|
|
|
|
lib:
|
|
mkdir lib
|
|
|
|
clean:
|
|
$(MAKE) -f Makefile.mgw clean -C src/mesa
|
|
$(MAKE) -f Makefile.mgw clean -C src/glu/sgi
|
|
$(MAKE) -f Makefile.mgw clean -C src/glut/glx
|
|
|
|
realclean: clean
|
|
-$(call UNLINK,lib/*.a)
|
|
-$(call UNLINK,lib/*.dll)
|