Makefile revision 1193
5d92fff82718cd018f0b61a10b9ad4d2b8064c95rpluem###############################################################################
bf52162f2d05c1fb1a107c7ef108de73f739b3edpquerna#
09359a90ff115fc5eeb96e1e5c78a58dd9fc59d3jim# Xorg server Makefile
09359a90ff115fc5eeb96e1e5c78a58dd9fc59d3jim#
533d85911f7e4914ee5f9d5c99a2421f4ab4208asf# Copyright (c) 2006, 2011, Oracle and/or its affiliates. All rights reserved.
533d85911f7e4914ee5f9d5c99a2421f4ab4208asf#
533d85911f7e4914ee5f9d5c99a2421f4ab4208asf# Permission is hereby granted, free of charge, to any person obtaining a
533d85911f7e4914ee5f9d5c99a2421f4ab4208asf# copy of this software and associated documentation files (the "Software"),
533d85911f7e4914ee5f9d5c99a2421f4ab4208asf# to deal in the Software without restriction, including without limitation
533d85911f7e4914ee5f9d5c99a2421f4ab4208asf# the rights to use, copy, modify, merge, publish, distribute, sublicense,
533d85911f7e4914ee5f9d5c99a2421f4ab4208asf# and/or sell copies of the Software, and to permit persons to whom the
78b046ee9f769d9609ea1157177d5467e4700c89covener# Software is furnished to do so, subject to the following conditions:
78b046ee9f769d9609ea1157177d5467e4700c89covener#
78b046ee9f769d9609ea1157177d5467e4700c89covener# The above copyright notice and this permission notice (including the next
5d1aa7e499fc511e937db7a7ce671add9a4d6702sf# paragraph) shall be included in all copies or substantial portions of the
5d1aa7e499fc511e937db7a7ce671add9a4d6702sf# Software.
5d1aa7e499fc511e937db7a7ce671add9a4d6702sf#
00f8426677a7975dc809e4ccb11241c543ec8a0esf# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
00f8426677a7975dc809e4ccb11241c543ec8a0esf# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
00f8426677a7975dc809e4ccb11241c543ec8a0esf# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
3ef519991d73cff6763052b5a44c206bda01541dsf# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
3ef519991d73cff6763052b5a44c206bda01541dsf# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
3ef519991d73cff6763052b5a44c206bda01541dsf# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
3ef519991d73cff6763052b5a44c206bda01541dsf# DEALINGS IN THE SOFTWARE.
3ef519991d73cff6763052b5a44c206bda01541dsf#
512bc8626ede860ea2ef329e6c2ffbd6ceba3903sf#
512bc8626ede860ea2ef329e6c2ffbd6ceba3903sf
f82baabbe731507742af2f7ba41463dbbc7911e9sf# Package name used in tarballs
f82baabbe731507742af2f7ba41463dbbc7911e9sfMODULE_NAME=xorg-server
f82baabbe731507742af2f7ba41463dbbc7911e9sf
26d07dbe57cb2c8f49df541329a1653635988dbbsf# Version number (used in path names)
26d07dbe57cb2c8f49df541329a1653635988dbbsfMODULE_VERSION=$(XORGSERVER_VERS)
09359a90ff115fc5eeb96e1e5c78a58dd9fc59d3jim
686555019e71b355e835166dfefbec33f7fb6f90rjung# Checksums for upstream tarball
686555019e71b355e835166dfefbec33f7fb6f90rjungTARBALL_MD5 = fc1bb18a09244cd43a998625a6a1b071
686555019e71b355e835166dfefbec33f7fb6f90rjungTARBALL_SHA1 = 1699be5c0edeca553cfa3ee6caa228483465136b
eda40bb2debf78c913552346127358797665cf7frjungTARBALL_SHA256 = 05ec05fbc8ec336127071db38cfb61c618e43b720edbd8d51d171c0cd359e290
eda40bb2debf78c913552346127358797665cf7frjung
eda40bb2debf78c913552346127358797665cf7frjung# Patches to apply to source after unpacking, in order
eda40bb2debf78c913552346127358797665cf7frjung# *** Moved to patch-list file so they can be shared between Xorg & Xvnc builds
eda40bb2debf78c913552346127358797665cf7frjungSOURCE_PATCHES=$(XORG_SOURCE_PATCHES)
eda40bb2debf78c913552346127358797665cf7frjung
53b3e9f9937ca992fb149d02d19223674c81c5a4rjung# Used in rules shared between Xorg & Xvnc builds in Makefile.inc
53b3e9f9937ca992fb149d02d19223674c81c5a4rjung# to allow for different source layouts
53b3e9f9937ca992fb149d02d19223674c81c5a4rjungXORG_BUILD_DIR=$(SOURCE_DIR)
25cc406eca0c99de0dfbd6c8862bec2d5fb6c4farjung
25cc406eca0c99de0dfbd6c8862bec2d5fb6c4farjung# ARC cases that covered this module
25cc406eca0c99de0dfbd6c8862bec2d5fb6c4farjung# PSARC/2004/187 Xorg Server for Solaris
5b43275cebfb0ff9961ac462f3a96f7fe612d327rjungMODULE_ARC_CASES = PSARC/2004/187
5b43275cebfb0ff9961ac462f3a96f7fe612d327rjung# PSARC/2004/685 Xorg server upgrade to X11R6.8 release
5b43275cebfb0ff9961ac462f3a96f7fe612d327rjungMODULE_ARC_CASES += PSARC/2004/685
3bcb72c0b2797d2ec0b41bb9f4696e58be2c7043rjung# PSARC/2004/829 Xorg 6.8.2 server upgrade for Solaris
3bcb72c0b2797d2ec0b41bb9f4696e58be2c7043rjungMODULE_ARC_CASES += PSARC/2004/829
3bcb72c0b2797d2ec0b41bb9f4696e58be2c7043rjung# PSARC/2005/450 Xorg 6.9 for Solaris
4acb0cd5536553055c7c6996414cec00b0191e1djimMODULE_ARC_CASES += PSARC/2005/450
4acb0cd5536553055c7c6996414cec00b0191e1djim# PSARC/2006/609 Xserver provider for DTrace
dc610ff4888acc61dc6c8de2b8974a4dce9c074fsfMODULE_ARC_CASES += PSARC/2006/609
dc610ff4888acc61dc6c8de2b8974a4dce9c074fsf# PSARC/2007/051 Xorg server upgrade to 7.2
dc610ff4888acc61dc6c8de2b8974a4dce9c074fsfMODULE_ARC_CASES += PSARC/2007/051
b08558bf6a64f9501ad3eca34eaf4d978bd928cfsf# PSARC/2007/434 Xorg server 1.3
b08558bf6a64f9501ad3eca34eaf4d978bd928cfsfMODULE_ARC_CASES += PSARC/2007/434
b08558bf6a64f9501ad3eca34eaf4d978bd928cfsf# PSARC/2007/500 X11 MIT-SHM Extension across zones
70f553c56eda63b353598193c3afc238db9b3c78sfMODULE_ARC_CASES += PSARC/2007/500
70f553c56eda63b353598193c3afc238db9b3c78sf# PSARC/2008/294 Xorg driver selection based on VIS_GETIDENTIFIER
70f553c56eda63b353598193c3afc238db9b3c78sfMODULE_ARC_CASES += PSARC/2008/294
3fa816e4832a1c70600bdfd6fc5ef60e9f1c18bbsf# PSARC/2009/021 Xorg server 1.5
3fa816e4832a1c70600bdfd6fc5ef60e9f1c18bbsfMODULE_ARC_CASES += PSARC/2009/021
3fa816e4832a1c70600bdfd6fc5ef60e9f1c18bbsf# PSARC/2009/292 Xorg server 1.6
0c2193f47081b894ed16f4fc371f44564d28b334jortonMODULE_ARC_CASES += PSARC/2009/292
950e3163cb42ba1e9c8f9d93f4505f580cbc71f4jorton# PSARC/2009/679 Xorg server 1.7
950e3163cb42ba1e9c8f9d93f4505f580cbc71f4jortonMODULE_ARC_CASES += PSARC/2009/679
0c2193f47081b894ed16f4fc371f44564d28b334jorton# PSARC/2010/109 Introduce libXcb in Solaris
55929f765b95e354092ac17238718e471c252ebbsfMODULE_ARC_CASES += PSARC/2010/109
55929f765b95e354092ac17238718e471c252ebbsf# PSARC/2011/008 Xorg server 1.9
2ce2fc3287632e20f1b8759aa17e571f68c6fe6dsfMODULE_ARC_CASES += PSARC/2011/008
2ce2fc3287632e20f1b8759aa17e571f68c6fe6dsf# PSARC/2010/382 Removal of 32-bit X servers
2ce2fc3287632e20f1b8759aa17e571f68c6fe6dsfMODULE_ARC_CASES += PSARC/2010/382
49aa87d735a13ae3d04012ee0df91ddb51f7c36esf# PSARC/2011/214 Xorg server 1.10
49aa87d735a13ae3d04012ee0df91ddb51f7c36esfMODULE_ARC_CASES += PSARC/2011/214
49aa87d735a13ae3d04012ee0df91ddb51f7c36esf
b44ddab21bd6e44ba3c03f7ae8ed08dd23b68b48sf# Man pages to apply Sun footer to & attributes to list
b44ddab21bd6e44ba3c03f7ae8ed08dd23b68b48sfSUNTOUCHED_MANPAGES= \
b44ddab21bd6e44ba3c03f7ae8ed08dd23b68b48sf doc/man/Xserver.man \
b44ddab21bd6e44ba3c03f7ae8ed08dd23b68b48sf hw/kdrive/ephyr/man/Xephyr.man \
b44ddab21bd6e44ba3c03f7ae8ed08dd23b68b48sf hw/xfree86/utils/man/cvt.man \
b44ddab21bd6e44ba3c03f7ae8ed08dd23b68b48sf hw/xfree86/utils/man/gtf.man \
b44ddab21bd6e44ba3c03f7ae8ed08dd23b68b48sf hw/xfree86/doc/man/Xorg.man \
0ab15ffa17f588723d0c310af78b505bf4e8a953sf hw/xfree86/doc/man/xorg.conf.man \
0ab15ffa17f588723d0c310af78b505bf4e8a953sf hw/xfree86/doc/man/xorg.conf.d.man \
0ab15ffa17f588723d0c310af78b505bf4e8a953sf hw/vfb/man/Xvfb.man
1dee19645438f8e3cb80fe86e1aaade04d093e45sf
1dee19645438f8e3cb80fe86e1aaade04d093e45sfMODULE_STABILITY=Volatile
1dee19645438f8e3cb80fe86e1aaade04d093e45sf
9f478b1ce1e6296ad7a244d9d2eaa6af79cfdfbfsf# Override specific attributes for specific man pages
9f478b1ce1e6296ad7a244d9d2eaa6af79cfdfbfsfMODULE_SUNTOUCH_MAN_FLAGS= \
9f478b1ce1e6296ad7a244d9d2eaa6af79cfdfbfsf $(SUNTOUCH_MAN_FLAGS_$(@F:%.man.$(FIXED_MAN_SUFFIX)=%))
9bec939825399ac2816ea0d912d2e3c3b2ed91f4sf# Xephyr, Xvfb, and Xdmx are split out into their own packages
9bec939825399ac2816ea0d912d2e3c3b2ed91f4sfSUNTOUCH_MAN_FLAGS_Xephyr = -o '{Availability, $(MODULE_PKGNAME:%xorg=%xephyr)}'
9bec939825399ac2816ea0d912d2e3c3b2ed91f4sfSUNTOUCH_MAN_FLAGS_Xvfb = -o '{Availability, $(MODULE_PKGNAME:%xorg=%xvfb)}'
5cca2a55e4a1cabdc2ca0db3bee456f27cf4c69eminfrinSUNTOUCH_MAN_FLAGS_Xdmx = -o '{Availability, $(MODULE_PKGNAME:%xorg=%xdmx)}'
5cca2a55e4a1cabdc2ca0db3bee456f27cf4c69eminfrinSUNTOUCH_MAN_FLAGS_Xserver = -o '{Availability, $(MODULE_PKGNAME:%xorg=%xserver-common)}'
5cca2a55e4a1cabdc2ca0db3bee456f27cf4c69eminfrin
33510984c759eb3da154ceb0db9b75fa0031d3b4sf# Binary built in tree
33510984c759eb3da154ceb0db9b75fa0031d3b4sfXORGSERVER_BIN=$(SOURCE_DIR)/hw/xfree86/Xorg
33510984c759eb3da154ceb0db9b75fa0031d3b4sf
33510984c759eb3da154ceb0db9b75fa0031d3b4sfBUILD_TARGETS=$(XORGSERVER_BIN) build_mdb set-elf-comments \
33510984c759eb3da154ceb0db9b75fa0031d3b4sf $(BUILD_DIR)/mapfile-Xorg-externs
33510984c759eb3da154ceb0db9b75fa0031d3b4sfBUILD_TARGETS_SET=yes
33510984c759eb3da154ceb0db9b75fa0031d3b4sf
33510984c759eb3da154ceb0db9b75fa0031d3b4sf# Need to regenerate autoconf/automake files after patching
33510984c759eb3da154ceb0db9b75fa0031d3b4sfAUTORECONF=yes
6b15044d54a096e6323ff1540f1a491e8de7622dsf
6b15044d54a096e6323ff1540f1a491e8de7622dsf# Command line options to GNU autoconf configure script
6b15044d54a096e6323ff1540f1a491e8de7622dsf# XXX: --disable-dga
287b17b746df229d6211c624b8a3e1edda21cecdsfMODULE_CONFIG_OPTS = $(XSERVER_CONFIG_OPTS) \
287b17b746df229d6211c624b8a3e1edda21cecdsf --enable-dmx \
287b17b746df229d6211c624b8a3e1edda21cecdsf --enable-builddocs \
de2d327e43e0f17cdb64851beafecba96a0ed962sf --enable-kdrive --enable-xephyr --disable-xsdl \
de2d327e43e0f17cdb64851beafecba96a0ed962sf MKFONTDIR="$(MKFONTDIR)" \
de2d327e43e0f17cdb64851beafecba96a0ed962sf MKFONTSCALE="$(MKFONTSCALE)"
de2d327e43e0f17cdb64851beafecba96a0ed962sf
c1ea0100af157a0d4e4a3de323f32dbfac4e5b6esfMODULE_LDFLAGS = $(XSERVER_LDFLAGS)
c1ea0100af157a0d4e4a3de323f32dbfac4e5b6esfMODULE_LD_OPTIONS = $(MAPFILES_FOR_ALL)
c1ea0100af157a0d4e4a3de323f32dbfac4e5b6esf
c1ea0100af157a0d4e4a3de323f32dbfac4e5b6esf# pkg-config files that need to have -R added
c1ea0100af157a0d4e4a3de323f32dbfac4e5b6esfFIX_PC_FILES=xorg-server.pc.in
c1ea0100af157a0d4e4a3de323f32dbfac4e5b6esf# Remove compiler specific visibility flag that breaks builds of drivers
c1ea0100af157a0d4e4a3de323f32dbfac4e5b6esf# with other compilers
b44565f239485673d9486068588a5fb3af008be9sfMODULE_FIX_PC_FLAGS= -e 's|\@symbol_visibility\@||'
b44565f239485673d9486068588a5fb3af008be9sf
b44565f239485673d9486068588a5fb3af008be9sf# Need to use GNU Make to build due to hw/xfree86/loader
b44565f239485673d9486068588a5fb3af008be9sfMODULE_MAKE=$(GNUMAKE)
bf99d597a964add76124fc185892e04733a02969sfMODULE_MAKE_SET=yes
bf99d597a964add76124fc185892e04733a02969sf
bf99d597a964add76124fc185892e04733a02969sf# Additional configure time targets beyond the defaults
876167dba234e2c7065895c87b77a8c57bdcf754sfMODULE_ADD_CONFIGURE_TARGETS=clear_build_date
876167dba234e2c7065895c87b77a8c57bdcf754sf
876167dba234e2c7065895c87b77a8c57bdcf754sf# Additional install targets beyond the defaults
9d4ce88bcd21b01619a31c53db11a51c2a1e9717sfMODULE_ADD_INSTALL_TARGETS=install_extras install_mdb install_pc_common \
9d4ce88bcd21b01619a31c53db11a51c2a1e9717sf install_fix_paths
9d4ce88bcd21b01619a31c53db11a51c2a1e9717sf
2792ea4d5c772a6bc19dece2e098b8125bf7184cjim# Have to avoid dependency loop between install_pc_common and
2792ea4d5c772a6bc19dece2e098b8125bf7184cjim# install_pkgconfig_uninstalled
2792ea4d5c772a6bc19dece2e098b8125bf7184cjimINSTALL_PCU_DEPS = $(INSTALL_TARGETS:install_pc_common=)
2792ea4d5c772a6bc19dece2e098b8125bf7184cjimINSTALL_PCU_DEPS_SET=yes
59a3c1e7880d3eab0d182735ff47758b9860411fminfrin
59a3c1e7880d3eab0d182735ff47758b9860411fminfrin# Merge in additional sources from sun-src directory
59a3c1e7880d3eab0d182735ff47758b9860411fminfrinADDITIONAL_SOURCE_DIR=sun-src
59a3c1e7880d3eab0d182735ff47758b9860411fminfrin
59a3c1e7880d3eab0d182735ff47758b9860411fminfrin# Compatibility links from /usr/X11/bin to /usr/bin
59a3c1e7880d3eab0d182735ff47758b9860411fminfrin# Only needed for programs that were in /usr/X11/bin before we moved
b3e63c395d671f14a096d7e888dbfd2caf93a663sfMODULE_X11_BINCOMPAT_LINKS = Xorg Xephyr Xvfb cvt gtf
b3e63c395d671f14a096d7e888dbfd2caf93a663sfMODULE_X11_BINCOMPAT_LINKS_i386 = amd64
b3e63c395d671f14a096d7e888dbfd2caf93a663sfMODULE_X11_BINCOMPAT_LINKS += $(MODULE_X11_BINCOMPAT_LINKS_$(MACH))
b3e63c395d671f14a096d7e888dbfd2caf93a663sf
6f88aef8511bf8ccf170bec41b82b6346c8b1ac7sf# Binaries that were linked to isaexec on x86 to choose 32-bit or 64-bit,
6f88aef8511bf8ccf170bec41b82b6346c8b1ac7sf# now just symlinks from amd64 to parent directory
6f88aef8511bf8ccf170bec41b82b6346c8b1ac7sfLINKED_TO_ISAEXEC = Xorg Xephyr Xvfb Xdmx
83c89da783ba8bdaef50ec1912443f7fad3556acjim
83c89da783ba8bdaef50ec1912443f7fad3556acjiminclude ../Makefile.inc
83c89da783ba8bdaef50ec1912443f7fad3556acjim
5152ceef718c8d39291557205cb2a98f436ce87frjung# Debug builds disable optimization that removes unused inline functions,
5152ceef718c8d39291557205cb2a98f436ce87frjung# leaving many binaries referencing pixman symbols that normally don't
4acb0cd5536553055c7c6996414cec00b0191e1djim# need them.
9c67ffea79ab184351b5d554b57814e13285e758jim$(BUILD_DEBUG:yes=) DEBUG_CONFIG_OPTS = LIBS="-lpixman-1"
9c67ffea79ab184351b5d554b57814e13285e758jim$(BUILD_DEBUG:yes=$(POUND_SIGN)) DEBUG_CONFIG_OPTS =
3eb3f27d2d93942bd4230c231aab4eb16a316384jimMODULE_CONFIG_OPTS += $(DEBUG_CONFIG_OPTS)
3eb3f27d2d93942bd4230c231aab4eb16a316384jim
3eb3f27d2d93942bd4230c231aab4eb16a316384jim# Don't include build date & time in delivered binaries as it just causes
0a2424312d9f02479a38e96dcbb170a77c218852rjung# unnecessary binary differences to be pulled into package updates, but
0a2424312d9f02479a38e96dcbb170a77c218852rjung# leave it in debug builds for developer convenience
6137a8d5cdc62f1d4dad8cbf720feaa35f42a596covener$(BUILD_DEBUG:yes=$(POUND_SIGN)) CBD_TARGET = actually_clear_build_date
6137a8d5cdc62f1d4dad8cbf720feaa35f42a596covener
6137a8d5cdc62f1d4dad8cbf720feaa35f42a596covenerclear_build_date: $(CBD_TARGET)
80a98c87d804ac7c0ea52d3f3b4676e559b49087igalic
80a98c87d804ac7c0ea52d3f3b4676e559b49087igalicactually_clear_build_date: $(AUTOCONF_TARGET)
80a98c87d804ac7c0ea52d3f3b4676e559b49087igalic printf '#undef BUILD_DATE\n#undef BUILD_TIME\n' > \
925a6d92173ab96cdb0a8976c7aac13ef809e218trawick $(SOURCE_DIR)/hw/xfree86/common/xf86Build.h
925a6d92173ab96cdb0a8976c7aac13ef809e218trawick
925a6d92173ab96cdb0a8976c7aac13ef809e218trawick$(XORGSERVER_BIN): default_build
925a6d92173ab96cdb0a8976c7aac13ef809e218trawick
e19d3a1e487aa73e0850658d3773f748aefba7f7sfSDK_INCLUDES_DIR=$(PROTODIR)$(X11_INCLUDES_DIR)/xorg/
e19d3a1e487aa73e0850658d3773f748aefba7f7sf
e19d3a1e487aa73e0850658d3773f748aefba7f7sfinstall_extras: default_install
e19d3a1e487aa73e0850658d3773f748aefba7f7sf -rm -f $(SDK_INCLUDES_DIR)/xorg-server.h
e19d3a1e487aa73e0850658d3773f748aefba7f7sf sed -e 's%#define XF86DRI 1%/* #define XF86DRI 1 */%' \
b8e5134b5779bf5505a9e5241cf8c930cc4aac5esf $(SOURCE_DIR)/include/xorg-server.h > $(SDK_INCLUDES_DIR)/xorg-server.h
b8e5134b5779bf5505a9e5241cf8c930cc4aac5esf cp -pf $(SOURCE_DIR)/mi/mioverlay.h \
b8e5134b5779bf5505a9e5241cf8c930cc4aac5esf $(SOURCE_DIR)/hw/xfree86/os-support/bus/xf86Sbus.h \
b8e5134b5779bf5505a9e5241cf8c930cc4aac5esf $(SOURCE_DIR)/hw/xfree86/dri/*.h $(SDK_INCLUDES_DIR)/
b1677ce80314e41b74bdd8d50c13ac159f3c09f4sf mkdir -p $(PROTODIR)$(X11_MAN_DIR)/man1
b1677ce80314e41b74bdd8d50c13ac159f3c09f4sf cp -pf $(SOURCE_DIR)/hw/xfree86/doc/man/xorgcfg.1 \
b1677ce80314e41b74bdd8d50c13ac159f3c09f4sf $(SOURCE_DIR)/hw/xfree86/doc/man/xorgconfig.1 \
c447f5d2f2a21e8f2df49a113c4637b7f59a6feftrawick $(PROTODIR)$(X11_MAN_DIR)/man1
c447f5d2f2a21e8f2df49a113c4637b7f59a6feftrawick mkdir -p $(PROTODIR)/etc/hal/fdi/preprobe/10osvendor
31eeb74b832eea054c7a42081c1afdeccd987e5etrawick cp -pf $(SOURCE_DIR)/config/x11-input.fdi \
31eeb74b832eea054c7a42081c1afdeccd987e5etrawick $(PROTODIR)/etc/hal/fdi/preprobe/10osvendor/10-x11-input.fdi
31eeb74b832eea054c7a42081c1afdeccd987e5etrawick mkdir -p $(PROTODIR)/etc/X11/xorg.conf.d \
e9bf808f770605c1f54a9d0fb1c560115c91fd71sf $(PROTODIR)/etc/X11/xorg.conf.avail \
e9bf808f770605c1f54a9d0fb1c560115c91fd71sf $(PROTODIR)/usr/share/X11/xorg.conf.d
e9bf808f770605c1f54a9d0fb1c560115c91fd71sf cp -pf 90-zap.conf $(PROTODIR)/etc/X11/xorg.conf.avail
575cc52562c51c0c8bb8de0c6eaa55a60f7f895bsf
575cc52562c51c0c8bb8de0c6eaa55a60f7f895bsf# Workaround bug in installing pkgconfig file to wrong directory in 64-bit
575cc52562c51c0c8bb8de0c6eaa55a60f7f895bsf# builds, and install xorg-server.pc in 32-bit pkgconfig dir too
490993ea2eda52d4fdacff247eb2657296c86f71trawickinstall_pc_common: default_install install_pkgconfig_uninstalled
490993ea2eda52d4fdacff247eb2657296c86f71trawick -rm -f $(PROTODIR)$(PKGCONFIG_DIR)/xorg-server.pc
03502de2853fcebaf853ed3bcfd5033894c238bbjim mkdir -p $(PROTODIR)$(PKGCONFIG_DIR)
03502de2853fcebaf853ed3bcfd5033894c238bbjim cp -pf $(SOURCE_DIR)/xorg-server.pc \
03502de2853fcebaf853ed3bcfd5033894c238bbjim $(PROTODIR)$(PKGCONFIG_DIR)/xorg-server.pc
03502de2853fcebaf853ed3bcfd5033894c238bbjim -rm -f $(PROTODIR)$(PKGCONFIG_DIR_32)/xorg-server.pc \
afee7998d5045107a7673f09bc3448a5dc1b6612jim $(PROTODIR)$(PKGCONFIG_DIR_32)/xorg-server-uninstalled.pc
afee7998d5045107a7673f09bc3448a5dc1b6612jim mkdir -p $(PROTODIR)$(PKGCONFIG_DIR_32)
6ec154950417d0b32082f6590ffa3acc3e0c3d49sf ln -s ../$(SUBDIR64)$(PKGCONFIG_DIR_suffix)/xorg-server.pc \
6ec154950417d0b32082f6590ffa3acc3e0c3d49sf ../$(SUBDIR64)$(PKGCONFIG_DIR_suffix)/xorg-server-uninstalled.pc \
6ec154950417d0b32082f6590ffa3acc3e0c3d49sf $(PROTODIR)$(PKGCONFIG_DIR_32)/
6ec154950417d0b32082f6590ffa3acc3e0c3d49sf
b38e1e2f118f67818f88faee827f4b3a2881e908sf# Generate a list of exported functions & data objects so that we can verify
3d636d91428f2c0a74012c89a94ec7d5b40aa52esf# loadable modules don't reference symbols that have been deleted or renamed.
b38e1e2f118f67818f88faee827f4b3a2881e908sfSYMBOL_AWK_SCRIPT = \
33e53d7c6aa5d004d96ea11d7f3ca35b30e82544trawick'BEGIN { print "\043 Functions exported by Xorg server to loadable modules" ; \
33e53d7c6aa5d004d96ea11d7f3ca35b30e82544trawick print "\n{\n global:" } \
20e0c71be778348516719e1e58a9f55c8e78c570trawick END { print "};" } \
027f7b141f164258b254c38319d06452b25d7660trawick $$7 ~ /UNDEF|\.tdata/ { next } \
027f7b141f164258b254c38319d06452b25d7660trawick $$5 !~ /GLOB/ { next } \
977c4527be5a21182f24fc22a40a79d576a52f86trawick $$8 ~ /^(__|_end|_etext|_start|_environ|_lib_version)/ { next } \
977c4527be5a21182f24fc22a40a79d576a52f86trawick $$4 ~ /FUNC/ && $$7 ~ /\.text/ { printf " %s = FUNCTION extern;\n", $$8 } \
977c4527be5a21182f24fc22a40a79d576a52f86trawick $$4 ~ /OBJT/ && $$7 ~ /data|bss/ { printf " %s = DATA extern;\n", $$8}'
7fef9f66804ea10d5bf343cdd3d607465e8340cajim
7fef9f66804ea10d5bf343cdd3d607465e8340cajim$(BUILD_DIR)/mapfile-Xorg-externs: $(XORGSERVER_BIN)
7fef9f66804ea10d5bf343cdd3d607465e8340cajim -rm -f $@
3770ed746d69c7a4111cba9966169bd5d7a509a6poirier /usr/bin/nm -gs $(XORGSERVER_BIN) \
3770ed746d69c7a4111cba9966169bd5d7a509a6poirier $(PROTODIR)$(X11_SERVERLIBS_DIR)$(ARCHLIBSUBDIR)/libXfont.so | \
3770ed746d69c7a4111cba9966169bd5d7a509a6poirier gawk -F\| $(SYMBOL_AWK_SCRIPT) > $@
3770ed746d69c7a4111cba9966169bd5d7a509a6poirier
3770ed746d69c7a4111cba9966169bd5d7a509a6poirier# Fix paths in proto area to match paths in packages / installed systems
7bd92b29516bc4bf7351d35aa447dbe68f1e8bb4jortoninstall_fix_paths_X: default_install
7bd92b29516bc4bf7351d35aa447dbe68f1e8bb4jorton rm -f $(PROTODIR)$(MODULE_PREFIX)/bin/X \
7bd92b29516bc4bf7351d35aa447dbe68f1e8bb4jorton $(PROTODIR)$(MODULE_PREFIX)/bin/$(ARCHBINSUBDIR)/X
a81c0c1ae464b2063a21b45f80c9da8d89bb840ecovener ln -s Xserver $(PROTODIR)$(MODULE_PREFIX)/bin/X
a81c0c1ae464b2063a21b45f80c9da8d89bb840ecovener
a81c0c1ae464b2063a21b45f80c9da8d89bb840ecovenerinstall_fix_paths: install_fix_paths_X
ffae06377667a5d8f9699ac7512134de7000a83dminfrin
ffae06377667a5d8f9699ac7512134de7000a83dminfrinMESA_MODULE_DIR = /usr/lib/mesa/modules/extensions
ffae06377667a5d8f9699ac7512134de7000a83dminfrinEXT_MODULE_DIR = $(X11_SERVERMODS_DIR)/extensions
ffae06377667a5d8f9699ac7512134de7000a83dminfrin
efc81fe729a2b7401028387da184b4a98f0b854atrawickinstall_fix_paths_glxmodule: default_install
efc81fe729a2b7401028387da184b4a98f0b854atrawick @rm -f $(PROTODIR)$(MESA_MODULE_DIR)/libglx.so
efc81fe729a2b7401028387da184b4a98f0b854atrawick mkdir -p $(PROTODIR)$(MESA_MODULE_DIR)/
efc81fe729a2b7401028387da184b4a98f0b854atrawick mv -f $(PROTODIR)$(EXT_MODULE_DIR)/libglx.so \
9c67ffea79ab184351b5d554b57814e13285e758jim $(PROTODIR)$(MESA_MODULE_DIR)/libglx.so
8f066564bfc0fd6ddc6ca4b2f2410615554597d1jim ln -s ../../../../../system/volatile/opengl/server/libglx.so \
8f066564bfc0fd6ddc6ca4b2f2410615554597d1jim $(PROTODIR)$(EXT_MODULE_DIR)/libglx.so
d56f48e6d861159b42b8f6eadd66e9e03086ceb9fuankg
cfd376e3e25eb609c30773a0897c97b2a9a76130fuankginstall_fix_paths: install_fix_paths_glxmodule
cfd376e3e25eb609c30773a0897c97b2a9a76130fuankg
cfd376e3e25eb609c30773a0897c97b2a9a76130fuankg# Install metadata for Xephyr, Xvfb, Xdmx, & xtsol packages too
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jimXCOMMON_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-xorg=%-xserver-common)
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jimXEPHYR_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-xorg=%-xephyr)
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jimXVFB_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-xorg=%-xvfb)
29ecbd9db1622e74964264d078336f7604d65093jimXDMX_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-xorg=%-xdmx)
29ecbd9db1622e74964264d078336f7604d65093jimXTSOL_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-server-xorg=%-trusted-trusted-xorg)
29ecbd9db1622e74964264d078336f7604d65093jim
a503caacf7ab36d5bc42cb7c78256e1221642656jimEXTRA_METADATA_DIRS = $(XCOMMON_PKG_METADATA_DIR) \
a503caacf7ab36d5bc42cb7c78256e1221642656jim $(XEPHYR_PKG_METADATA_DIR) \
da40dfabefd6f8eb8450e9a097c594ee2ab13e3eminfrin $(XVFB_PKG_METADATA_DIR) \
da40dfabefd6f8eb8450e9a097c594ee2ab13e3eminfrin $(XDMX_PKG_METADATA_DIR) \
da40dfabefd6f8eb8450e9a097c594ee2ab13e3eminfrin $(XTSOL_PKG_METADATA_DIR)
da40dfabefd6f8eb8450e9a097c594ee2ab13e3eminfrin
59d316b83d42d2a07e25c20d8c35a07b369618bdsfEXTRA_ATTRDATA_FILES = $(EXTRA_METADATA_DIRS:%=%/$(ATTRDATA_FILE_NAME))
59d316b83d42d2a07e25c20d8c35a07b369618bdsfEXTRA_LICENSE_FILES = $(EXTRA_METADATA_DIRS:%=%/$(LICENSE_FILE_NAME))
59d316b83d42d2a07e25c20d8c35a07b369618bdsf
59d316b83d42d2a07e25c20d8c35a07b369618bdsfEXTRA_METADATA_TARGETS= $(EXTRA_METADATA_DIRS) \
8602c898d4e06a7e7b9d6b7cf4b172a8e7310987sf $(EXTRA_ATTRDATA_FILES) \
8602c898d4e06a7e7b9d6b7cf4b172a8e7310987sf $(EXTRA_LICENSE_FILES)
8602c898d4e06a7e7b9d6b7cf4b172a8e7310987sf
8602c898d4e06a7e7b9d6b7cf4b172a8e7310987sfinstall_metadata: $(EXTRA_METADATA_TARGETS)
8602c898d4e06a7e7b9d6b7cf4b172a8e7310987sf
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jim$(EXTRA_ATTRDATA_FILES) $(EXTRA_LICENSE_FILES): $(EXTRA_METADATA_DIRS)
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jim
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jim$(EXTRA_METADATA_DIRS):
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jim mkdir -p $@
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jim
4acc1efe19ac2e6f2df0abb4d5bf99bd8ae3c5c6jim# Xtsol module is covered only by Oracle copyright/license
3e2582713ed6883683272fbc628a27419d0ed543minfrinXTSOL_LICENSE = $(XTSOL_PKG_METADATA_DIR)/$(LICENSE_FILE_NAME)
3e2582713ed6883683272fbc628a27419d0ed543minfrin$(XTSOL_LICENSE):= LICENSE_NAME = $(ORACLE_LICENSE_NAME)
3e2582713ed6883683272fbc628a27419d0ed543minfrin$(XTSOL_LICENSE):= LICENSE_FILE = COPYING.tsol
3e2582713ed6883683272fbc628a27419d0ed543minfrin$(XTSOL_LICENSE):= LICENSE_APPEND = $(ORACLE_LICENSE_APPEND)
2c132b1e3610da2fb9e6b3594a313efa3ff29e22minfrin
2c132b1e3610da2fb9e6b3594a313efa3ff29e22minfrin# Special compatibility links from /usr/X11/include to /usr/include
2c132b1e3610da2fb9e6b3594a313efa3ff29e22minfrinX11_INCLUDE_COMPAT_DIR = $(PROTODIR)/usr/X11/include
a46801e6532423aa7bd184471eb49158d7c9ae62sfX11_INCLUDE_COMPAT_LINKS = $(X11_INCLUDE_COMPAT_DIR)/drm \
a46801e6532423aa7bd184471eb49158d7c9ae62sf $(X11_INCLUDE_COMPAT_DIR)/xorg
a46801e6532423aa7bd184471eb49158d7c9ae62sf
808a26d70f28498b9d7252a70d9fb23def781901minfrininstall: $(X11_INCLUDE_COMPAT_LINKS)
808a26d70f28498b9d7252a70d9fb23def781901minfrin
ef12246b88300687bf1faaf56d115dd8d8d82761jorton$(X11_INCLUDE_COMPAT_DIR):
6f9bf764bc79571d1da19dfbbd78527fca278a8eminfrin mkdir -p $@
6f9bf764bc79571d1da19dfbbd78527fca278a8eminfrin
6f9bf764bc79571d1da19dfbbd78527fca278a8eminfrin$(X11_INCLUDE_COMPAT_LINKS): $(X11_INCLUDE_COMPAT_DIR)
6f9bf764bc79571d1da19dfbbd78527fca278a8eminfrin @rm -f $@
7d59a9f282af9dce031b61062a0d941641101237rpluem ln -s ../../include/$(@F) $@
7d59a9f282af9dce031b61062a0d941641101237rpluem
7d59a9f282af9dce031b61062a0d941641101237rpluem## mdb module rules
e63e8b4b886d2144fed7946d0fbe8d27386be2dcjorton# Build & install mdb modules & scripts that aren't integrated to
e63e8b4b886d2144fed7946d0fbe8d27386be2dcjorton# normal build process.
e63e8b4b886d2144fed7946d0fbe8d27386be2dcjortonMDB_SOURCE_DIR=$(XORG_BUILD_DIR)/os/solaris/mdb
223c64b836fbc2bc8611da9604379dfe13f56abasfMDB_MODULE_DIR=/usr/lib/mdb/proc/$(ARCHLIBSUBDIR)
223c64b836fbc2bc8611da9604379dfe13f56abasfMDB_SCRIPT_DIR=/usr/demo/Xserver/mdb
223c64b836fbc2bc8611da9604379dfe13f56abasfMDB_SCRIPTS=list_Xserver_clients \
bf507cc1e6ad55303c3d436c6ca153f46c788be6sf list_Xserver_devicegrab_client \
bf507cc1e6ad55303c3d436c6ca153f46c788be6sf list_Xserver_servergrab_client
bf507cc1e6ad55303c3d436c6ca153f46c788be6sfMDB_MODULE_NAMES=Xephyr Xorg Xvfb Xvnc Xdmx
bf507cc1e6ad55303c3d436c6ca153f46c788be6sf
93cf7fc650197b941ae31a7c7e51e901b129e954igalicBUILT_MDB_MODULE=$(MDB_SOURCE_DIR)/modules/Xserver.so
93cf7fc650197b941ae31a7c7e51e901b129e954igalicBUILT_MDB_SCRIPTS=$(MDB_SCRIPTS:%=$(MDB_SOURCE_DIR)/scripts/%)
93cf7fc650197b941ae31a7c7e51e901b129e954igalic
a1b1c78faf7969affb320f5c8eb270ffa21314c4rjungINSTALLED_MDB_LINKS=$(MDB_MODULE_NAMES:%=$(PROTODIR)$(MDB_MODULE_DIR)/%.so)
a1b1c78faf7969affb320f5c8eb270ffa21314c4rjungINSTALLED_MDB_MODULE=$(PROTODIR)$(MDB_MODULE_DIR)/Xserver.so
a1b1c78faf7969affb320f5c8eb270ffa21314c4rjungINSTALLED_MDB_SCRIPTS=$(MDB_SCRIPTS:%=$(PROTODIR)$(MDB_SCRIPT_DIR)/%)
a2558ec3af4391b7da7fe61e1e53383bbd0174b9jortonINSTALLED_MDB_ALL=$(INSTALLED_MDB_MODULE) $(INSTALLED_MDB_LINKS) \
a2558ec3af4391b7da7fe61e1e53383bbd0174b9jorton $(INSTALLED_MDB_SCRIPTS)
a2558ec3af4391b7da7fe61e1e53383bbd0174b9jorton
a2558ec3af4391b7da7fe61e1e53383bbd0174b9jorton# Since configure options aren't used to build the mdb modules, pass
8d6b3720340d0bd7f8d25e2a8563527e97a48df8jorton# those variables at build time
8d6b3720340d0bd7f8d25e2a8563527e97a48df8jortonMDB_BUILD_ENV=$(CONFIG_ENV) $(BUILD_ENV)
8d6b3720340d0bd7f8d25e2a8563527e97a48df8jortonMDB_BUILD_ENV += CFLAGS="$(LIB_CFLAGS)" LDFLAGS="$(LIB_LDFLAGS)"
8d6b3720340d0bd7f8d25e2a8563527e97a48df8jorton
48e4b65042d94992c50f1db6c0b0cdbd99ca77e8sfbuild_mdb: $(BUILT_MDB_MODULE)
48e4b65042d94992c50f1db6c0b0cdbd99ca77e8sf
48e4b65042d94992c50f1db6c0b0cdbd99ca77e8sf$(BUILT_MDB_SCRIPTS): $(SOURCE_TARGETS)
48e4b65042d94992c50f1db6c0b0cdbd99ca77e8sf
48e4b65042d94992c50f1db6c0b0cdbd99ca77e8sf$(BUILT_MDB_MODULE): $(CONFIGURE_TARGETS)
48e4b65042d94992c50f1db6c0b0cdbd99ca77e8sf (cd $(MDB_SOURCE_DIR) ; \
47ae8ca3c79d279b2e5424d6b8cf5e4e61ea968fjim $(MDB_BUILD_ENV) $(MAKE) $(MAKEFLAGS) $(DEFAULT_BUILD_MAKEFLAGS))
47ae8ca3c79d279b2e5424d6b8cf5e4e61ea968fjim
47ae8ca3c79d279b2e5424d6b8cf5e4e61ea968fjim$(PROTODIR)$(MDB_MODULE_DIR) $(PROTODIR)$(MDB_SCRIPT_DIR):
47ae8ca3c79d279b2e5424d6b8cf5e4e61ea968fjim mkdir -p $@
47ae8ca3c79d279b2e5424d6b8cf5e4e61ea968fjim
397df70abe0bdd78a84fb6c38c02641bcfeadceasf$(INSTALLED_MDB_MODULE): $(PROTODIR)$(MDB_MODULE_DIR) $(BUILT_MDB_MODULE)
397df70abe0bdd78a84fb6c38c02641bcfeadceasf $(INSTALL_SCRIPT) -c -m 0555 $(BUILT_MDB_MODULE) $@
397df70abe0bdd78a84fb6c38c02641bcfeadceasf
9b5fe1d4ec48643fb819bbce9dc80f93f444fb48sf$(INSTALLED_MDB_LINKS): $(PROTODIR)$(MDB_MODULE_DIR)
9b5fe1d4ec48643fb819bbce9dc80f93f444fb48sf @rm -f $@
9b5fe1d4ec48643fb819bbce9dc80f93f444fb48sf ln -s Xserver.so $@
dd9f60fdfeb73f829fe0b260b7975b4b22be0838sf
dd9f60fdfeb73f829fe0b260b7975b4b22be0838sf$(INSTALLED_MDB_SCRIPTS): $(BUILT_MDB_SCRIPTS) $(PROTODIR)$(MDB_SCRIPT_DIR)
dd9f60fdfeb73f829fe0b260b7975b4b22be0838sf $(INSTALL_SCRIPT) -c -m 0555 $(MDB_SOURCE_DIR)/scripts/$(@F) \
135e1d6a301398168e3b2e5125508828591e1673niq $(PROTODIR)$(MDB_SCRIPT_DIR)/
135e1d6a301398168e3b2e5125508828591e1673niq
135e1d6a301398168e3b2e5125508828591e1673niqinstall_mdb: $(INSTALLED_MDB_ALL)
135e1d6a301398168e3b2e5125508828591e1673niq $(INSTALL_SCRIPT) -c -m 0444 $(MDB_SOURCE_DIR)/README \
135e1d6a301398168e3b2e5125508828591e1673niq $(PROTODIR)$(MDB_SCRIPT_DIR)/
135e1d6a301398168e3b2e5125508828591e1673niq