Makefile revision 156
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj###############################################################################
df4a7c143b27b489dd2d865bb3f6668c8420b3a9fanf#
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj# Copyright 2007 Sun Microsystems, Inc. All rights reserved.
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj# Use subject to license terms.
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj#
8ac8f75b9d0076f5f115c65adf02e5a177a84378trawick# Permission is hereby granted, free of charge, to any person obtaining a
bd929c73ef04789b7183b840d8db6e01d03a4d86rbb# copy of this software and associated documentation files (the
70f6f32765cfaadd6da8de6f0fea97ddd72d8fadmanoj# "Software"), to deal in the Software without restriction, including
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj# without limitation the rights to use, copy, modify, merge, publish,
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj# distribute, and/or sell copies of the Software, and to permit persons
91a71946d0fb28c0866139edef3dd59f36ba5b9cstoddard# to whom the Software is furnished to do so, provided that the above
91a71946d0fb28c0866139edef3dd59f36ba5b9cstoddard# copyright notice(s) and this permission notice appear in all copies of
91a71946d0fb28c0866139edef3dd59f36ba5b9cstoddard# the Software and that both the above copyright notice(s) and this
91a71946d0fb28c0866139edef3dd59f36ba5b9cstoddard# permission notice appear in supporting documentation.
91a71946d0fb28c0866139edef3dd59f36ba5b9cstoddard#
bd929c73ef04789b7183b840d8db6e01d03a4d86rbb# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
bd929c73ef04789b7183b840d8db6e01d03a4d86rbb# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
bd929c73ef04789b7183b840d8db6e01d03a4d86rbb# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
bd929c73ef04789b7183b840d8db6e01d03a4d86rbb# OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
632b0b53511f3bb9c32aa2869fbc73ee35081b38rbb# HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
632b0b53511f3bb9c32aa2869fbc73ee35081b38rbb# INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
632b0b53511f3bb9c32aa2869fbc73ee35081b38rbb# FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
bd929c73ef04789b7183b840d8db6e01d03a4d86rbb# NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
f6a6245816cd866361da8c576b1f47c7a54b6610fanf# WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
f755f06050191550f77c825eff6b0e48a35b3e91dgaudet#
f755f06050191550f77c825eff6b0e48a35b3e91dgaudet# Except as contained in this notice, the name of a copyright holder
40a5b7189dbbb28e107bf008ee625f2f0142c2ccdgaudet# shall not be used in advertising or otherwise to promote the sale, use
85cbdc16ac57fa68ce1358a308269abcd417f4d9stoddard# or other dealings in this Software without prior written authorization
85cbdc16ac57fa68ce1358a308269abcd417f4d9stoddard# of the copyright holder.
85cbdc16ac57fa68ce1358a308269abcd417f4d9stoddard#
85cbdc16ac57fa68ce1358a308269abcd417f4d9stoddard# @(#)Makefile 1.5 07/05/15
85cbdc16ac57fa68ce1358a308269abcd417f4d9stoddard#
85cbdc16ac57fa68ce1358a308269abcd417f4d9stoddard
2aae6faee508221efbeaba5547ca79b7a20ef047stoddardPWD:sh=pwd
2aae6faee508221efbeaba5547ca79b7a20ef047stoddardTOP=$(PWD)/../..
2aae6faee508221efbeaba5547ca79b7a20ef047stoddard
40a5b7189dbbb28e107bf008ee625f2f0142c2ccdgaudet# Version number (used in path names)
2aae6faee508221efbeaba5547ca79b7a20ef047stoddardMESA_VERS=6.5.2
4065b438067f3f08d0bd98b31ac4085b581b931dstoddard
2739add8add66e21526ce27f83c2ae133d089070rbb# Source tarball
2739add8add66e21526ce27f83c2ae133d089070rbbSOURCE_TARBALL_NAME=MesaDemos-$(MESA_VERS).tar.bz2
4065b438067f3f08d0bd98b31ac4085b581b931dstoddard
211bf1d44f4653bf753a15740cd5ebbf330b6e93manoj# Download site for source
211bf1d44f4653bf753a15740cd5ebbf330b6e93manojSOURCE_URL=$(SF_DOWNLOADS_URL)/mesa3d/$(SOURCE_TARBALL_NAME)
2a6c49cfaef5979a5a06098f3ce987cd76769409manojSOURCE_URL_SET=yes
369edcdd0a9c5516c61e736ec2a6fc8fb0d92fe2manoj
369edcdd0a9c5516c61e736ec2a6fc8fb0d92fe2manoj# Patches to apply to source after unpacking, in order
2a6c49cfaef5979a5a06098f3ce987cd76769409manojSOURCE_PATCHES= \
85cbdc16ac57fa68ce1358a308269abcd417f4d9stoddard null-display.patch \
85cbdc16ac57fa68ce1358a308269abcd417f4d9stoddard Xorg-6.9-changes.patch
85cbdc16ac57fa68ce1358a308269abcd417f4d9stoddard
d208bda4a893cc81ed5d3ed1cdd7d706e012bd42stoddard# Directory created by unpacking source
d208bda4a893cc81ed5d3ed1cdd7d706e012bd42stoddardSOURCE_DIR=$(BUILD_DIR)/Mesa-$(MESA_VERS)
d208bda4a893cc81ed5d3ed1cdd7d706e012bd42stoddard
d208bda4a893cc81ed5d3ed1cdd7d706e012bd42stoddard# Binaries built in tree
d208bda4a893cc81ed5d3ed1cdd7d706e012bd42stoddardGLXGEARS_BIN=$(SOURCE_DIR)/progs/xdemos/glxgears
d208bda4a893cc81ed5d3ed1cdd7d706e012bd42stoddardGLXINFO_BIN=$(SOURCE_DIR)/progs/xdemos/glxinfo
d208bda4a893cc81ed5d3ed1cdd7d706e012bd42stoddard
d208bda4a893cc81ed5d3ed1cdd7d706e012bd42stoddard# Where to install files
d208bda4a893cc81ed5d3ed1cdd7d706e012bd42stoddardMESA_prefix=$(PROTODIR)/usr/X11
75960f20f88dad6bc67892c711c429946063d133stoddard
75960f20f88dad6bc67892c711c429946063d133stoddard# What to build
75960f20f88dad6bc67892c711c429946063d133stoddardBUILD_TARGETS=$(GLXGEARS_BIN) $(GLXINFO_BIN)
75960f20f88dad6bc67892c711c429946063d133stoddard
75960f20f88dad6bc67892c711c429946063d133stoddard### Include common rulesets
75960f20f88dad6bc67892c711c429946063d133stoddardinclude $(TOP)/common/Makefile.inc
75960f20f88dad6bc67892c711c429946063d133stoddard
75960f20f88dad6bc67892c711c429946063d133stoddard### Rules specific to this directory:
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj# Merge in additional sources from Mesa library sun-src directory
2a6c49cfaef5979a5a06098f3ce987cd76769409manojsource_gen:: $(LNDIR)
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj mkdir -p $(SOURCE_DIR)
70f6f32765cfaadd6da8de6f0fea97ddd72d8fadmanoj (cd $(SOURCE_DIR) && $(LNDIR) ../../../../lib/mesa/sun-src)
2a6c49cfaef5979a5a06098f3ce987cd76769409manoj (cd $(SOURCE_DIR)/configs && touch default)
56ca30c968906053ae61acb218420667bb58d996rbb
56ca30c968906053ae61acb218420667bb58d996rbb# Only care about building X demos
a9e07e4f90adcc7bc768db3055431c3dcd560cd1manojDEMOS_DIR=$(SOURCE_DIR)/progs/xdemos
f6a6245816cd866361da8c576b1f47c7a54b6610fanf
f6a6245816cd866361da8c576b1f47c7a54b6610fanf# Mesa config file names
a9e07e4f90adcc7bc768db3055431c3dcd560cd1manojMESA_CFG_32_sparc=sunos5-v8
2a6c49cfaef5979a5a06098f3ce987cd76769409manojMESA_CFG_64_sparc=sunos5-v9
bd929c73ef04789b7183b840d8db6e01d03a4d86rbbMESA_CFG_32_i386=solaris-x86-cc-dri
bd929c73ef04789b7183b840d8db6e01d03a4d86rbbMESA_CFG_64_i386=solaris-x64-cc-dri
bd929c73ef04789b7183b840d8db6e01d03a4d86rbb
bd929c73ef04789b7183b840d8db6e01d03a4d86rbbMESA_CFG_32= $(MESA_CFG_32_$(MACH))
8de99b4c89d4ed4292a7dca42dd8a96b9a7c456fdgaudetMESA_CFG_64= $(MESA_CFG_64_$(MACH))
8de99b4c89d4ed4292a7dca42dd8a96b9a7c456fdgaudet
8de99b4c89d4ed4292a7dca42dd8a96b9a7c456fdgaudetBUILD_32_FLAGS= MESA_CFG=$(MESA_CFG_32)
8de99b4c89d4ed4292a7dca42dd8a96b9a7c456fdgaudetBUILD_64_FLAGS= MESA_CFG=$(MESA_CFG_64)
8de99b4c89d4ed4292a7dca42dd8a96b9a7c456fdgaudet
8de99b4c89d4ed4292a7dca42dd8a96b9a7c456fdgaudet# Build Mesa demos
8de99b4c89d4ed4292a7dca42dd8a96b9a7c456fdgaudet$(GLXGEARS_BIN): $(UNPACK_TARGET)
8de99b4c89d4ed4292a7dca42dd8a96b9a7c456fdgaudet (cd $(SOURCE_DIR)/configs && rm -f current && ln -s $(MESA_CFG) current)
8de99b4c89d4ed4292a7dca42dd8a96b9a7c456fdgaudet (cd $(DEMOS_DIR) && $(MAKE) $(MFLAGS) LDFLAGS="$(PROG_LDFLAGS)" glxgears )
8de99b4c89d4ed4292a7dca42dd8a96b9a7c456fdgaudet
8de99b4c89d4ed4292a7dca42dd8a96b9a7c456fdgaudet$(GLXINFO_BIN): $(UNPACK_TARGET)
8de99b4c89d4ed4292a7dca42dd8a96b9a7c456fdgaudet (cd $(SOURCE_DIR)/configs && rm -f current && ln -s $(MESA_CFG) current)
8de99b4c89d4ed4292a7dca42dd8a96b9a7c456fdgaudet (cd $(DEMOS_DIR) && $(MAKE) $(MFLAGS) LDFLAGS="$(PROG_LDFLAGS)" glxinfo )
40a5b7189dbbb28e107bf008ee625f2f0142c2ccdgaudet
0b0a5225c5ed94b9f689839a14842ad4a24215e9dgaudet# For testing - we don't ship the rest of these
0b0a5225c5ed94b9f689839a14842ad4a24215e9dgaudetall-xdemos_gen: $(UNPACK_TARGET)
0b0a5225c5ed94b9f689839a14842ad4a24215e9dgaudet (cd $(SOURCE_DIR)/configs && rm -f current && ln -s $(MESA_CFG) current)
0b0a5225c5ed94b9f689839a14842ad4a24215e9dgaudet (cd $(DEMOS_DIR) && $(MAKE) $(MFLAGS) LDFLAGS="$(PROG_LDFLAGS)")
0b0a5225c5ed94b9f689839a14842ad4a24215e9dgaudet
f824925ac58ff729289c017235eeb3bdd21ec3a2stoddardall-xdemos:
f824925ac58ff729289c017235eeb3bdd21ec3a2stoddard $(MAKE) $(MFLAGS) BUILD_DIR=$(BUILD_DIR_32) ARCH_FLAGS="$(ARCH32_FLAGS)" $(BUILD_32_FLAGS) all-xdemos_gen
f824925ac58ff729289c017235eeb3bdd21ec3a2stoddard
f824925ac58ff729289c017235eeb3bdd21ec3a2stoddardinstall_gen: $(GLXGEARS_BIN) $(GLXINFO_BIN)
2aae6faee508221efbeaba5547ca79b7a20ef047stoddard cp -p $(GLXGEARS_BIN) $(GLXINFO_BIN) $(MESA_prefix)/bin
2aae6faee508221efbeaba5547ca79b7a20ef047stoddard
75960f20f88dad6bc67892c711c429946063d133stoddard
75960f20f88dad6bc67892c711c429946063d133stoddard