Makefile revision 1504
0d444dc136a1a8df89a329d7ad43c74e1db8dfbeMark Andrews###############################################################################
0d444dc136a1a8df89a329d7ad43c74e1db8dfbeMark Andrews# Xorg server Makefile
4e9775118dbf128dd296f01638733ba221f76c34Mark Andrews# Copyright (c) 2006, 2014, Oracle and/or its affiliates. All rights reserved.
35378bcc6a6c95495e70bad92f245b6fa9c8292aTatuya JINMEI 神明達哉# Permission is hereby granted, free of charge, to any person obtaining a
35378bcc6a6c95495e70bad92f245b6fa9c8292aTatuya JINMEI 神明達哉# copy of this software and associated documentation files (the "Software"),
35378bcc6a6c95495e70bad92f245b6fa9c8292aTatuya JINMEI 神明達哉# to deal in the Software without restriction, including without limitation
b05585dcfe270c40e309ff7304cf6b69d7390bdaTatuya JINMEI 神明達哉# the rights to use, copy, modify, merge, publish, distribute, sublicense,
b05585dcfe270c40e309ff7304cf6b69d7390bdaTatuya JINMEI 神明達哉# and/or sell copies of the Software, and to permit persons to whom the
1f030ca8a3df943d8016cac39bc3018f5952126aJeremy Reed# Software is furnished to do so, subject to the following conditions:
1f030ca8a3df943d8016cac39bc3018f5952126aJeremy Reed# The above copyright notice and this permission notice (including the next
698a4dcc8ae5c2a62a254ab2aff7b16d52598cc0Mark Andrews# paragraph) shall be included in all copies or substantial portions of the
88674be66567d3c7db91e717cd5972655e2e2488Mark Andrews# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
88674be66567d3c7db91e717cd5972655e2e2488Mark Andrews# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
88674be66567d3c7db91e717cd5972655e2e2488Mark Andrews# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
d7896edb4e93c4785a9281ea86afba86b758e813Mark Andrews# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
d7896edb4e93c4785a9281ea86afba86b758e813Mark Andrews# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
d7896edb4e93c4785a9281ea86afba86b758e813Mark Andrews# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
d7896edb4e93c4785a9281ea86afba86b758e813Mark Andrews# DEALINGS IN THE SOFTWARE.
0db6bf459f7afa1f9dc0690a521df19955c89dbfJeremy Reed# Package name used in tarballs
99a522dad7623549cd5e32a4968e6de8eca46ff1Mark Andrews# Package metadata
99a522dad7623549cd5e32a4968e6de8eca46ff1Mark AndrewsMODULE_DESC = portions of the X.Org X server software
b90d59882c3b0bbe5dafe27c51c274f0b5912f65Mark Andrews# Version number (used in path names) - set in open-src/common/Makefile.init
b90d59882c3b0bbe5dafe27c51c274f0b5912f65Mark Andrews# Checksums for upstream tarball
cd6555930b6829ebce8bbf2adc7ba05111edf595Mark AndrewsTARBALL_SHA1 = 3891522665195ac722403e34840ec94b0b5cc5bc
369e148f307a322206a460f9fd470927bcc756d0Tatuya JINMEI 神明達哉TARBALL_SHA256= 8d0f06bf1416487a5170318477088826a8d737d4a201e996b2dc1ecff47461d1
369e148f307a322206a460f9fd470927bcc756d0Tatuya JINMEI 神明達哉# Patches to apply to source after unpacking, in order
2be6798f93e7ba1f4c4082e7b0837c7668a06dcaTatuya JINMEI 神明達哉# *** Moved to patch-list file so they can be shared between Xorg & Xvnc builds
2be6798f93e7ba1f4c4082e7b0837c7668a06dcaTatuya JINMEI 神明達哉# Used in rules shared between Xorg & Xvnc builds in Makefile.inc
b0bf1ad5b0b1d29b4cdf5de9789405aec5e0844cEvan Hunt# to allow for different source layouts
eab4a5c29ddda688d975ad59a55a965b16534432Mark Andrews# ARC cases that covered this module
eab4a5c29ddda688d975ad59a55a965b16534432Mark Andrews# PSARC/2004/187 Xorg Server for Solaris
21d493fc392d472086ad3c7c4563b7cadcb06788Mark Andrews# PSARC/2004/685 Xorg server upgrade to X11R6.8 release
5737b74d34b1eab413f4a5734714bb176c5cc849Mark Andrews# PSARC/2004/829 Xorg 6.8.2 server upgrade for Solaris
5737b74d34b1eab413f4a5734714bb176c5cc849Mark Andrews# PSARC/2005/450 Xorg 6.9 for Solaris
5737b74d34b1eab413f4a5734714bb176c5cc849Mark Andrews# PSARC/2006/609 Xserver provider for DTrace
19e4588ed76d6832be4de0813b6108a292ef413aMark Andrews# PSARC/2007/051 Xorg server upgrade to 7.2
48a866144e3b14efa6c51af05ef7641b23c7516dJeremy Reed# PSARC/2007/434 Xorg server 1.3
143852efc066b3e3cd16eeec679016adbd450474Mark Andrews# PSARC/2007/500 X11 MIT-SHM Extension across zones
6098d364b690cb9dabf96e9664c4689c8559bd2eMark Andrews# PSARC/2008/294 Xorg driver selection based on VIS_GETIDENTIFIER
931cb604b1552b8c2ce2da7a97a12406140f7f99Mark Andrews# PSARC/2009/021 Xorg server 1.5
eeaa2277ead6df7253a8958ee2d786f73e05b8beTatuya JINMEI 神明達哉# PSARC/2009/292 Xorg server 1.6
eeaa2277ead6df7253a8958ee2d786f73e05b8beTatuya JINMEI 神明達哉# PSARC/2009/679 Xorg server 1.7
cfef3799266c3955a3e19df5794b7994d4dd7bdbMark Andrews# PSARC/2010/109 Introduce libXcb in Solaris
cfef3799266c3955a3e19df5794b7994d4dd7bdbMark Andrews# PSARC/2011/008 Xorg server 1.9
ce688d65947a05561509aef48c8c240130d443eaMark Andrews# PSARC/2010/382 Removal of 32-bit X servers
c6c09f77f85860b6e084b0daad066ded08729b3eMark Andrews# PSARC/2011/214 Xorg server 1.10
467e6fd1672fb35968f522e1ef11a7e2e0cb701eMichael Graff# PSARC/2012/144 Xorg server 1.12
467e6fd1672fb35968f522e1ef11a7e2e0cb701eMichael Graff# PSARC/2012/320 Xorg server 1.13
896f88361ec8a15a20688eb533a65977ee698974Mark Andrews# PSARC/2013/091 Xorg server 1.14
5ce9206eb95c2b818a7f863dd26d9b7a2c3d9261Evan Hunt# Man pages to apply Sun footer to & attributes to list
baeed3c40fc0a2f30ef399899e16ded472f04c06Evan Hunt# Override specific attributes for specific man pages
f5662f41e73c27cc6e7fd29323c8dddf54dff982Mark Andrews $(SUNTOUCH_MAN_FLAGS_$(@F:%.man.$(FIXED_MAN_SUFFIX)=%))
691f1f7731d175c7b2e21fbcc8d16a0c323e209aMark Andrews# Xephyr, Xvfb, and Xdmx are split out into their own packages
691f1f7731d175c7b2e21fbcc8d16a0c323e209aMark AndrewsSUNTOUCH_MAN_FLAGS_Xephyr = -o '{Availability, $(MODULE_PKGNAME:%xorg=%xephyr)}'
691f1f7731d175c7b2e21fbcc8d16a0c323e209aMark AndrewsSUNTOUCH_MAN_FLAGS_Xvfb = -o '{Availability, $(MODULE_PKGNAME:%xorg=%xvfb)}'
691f1f7731d175c7b2e21fbcc8d16a0c323e209aMark AndrewsSUNTOUCH_MAN_FLAGS_Xdmx = -o '{Availability, $(MODULE_PKGNAME:%xorg=%xdmx)}'
691f1f7731d175c7b2e21fbcc8d16a0c323e209aMark AndrewsSUNTOUCH_MAN_FLAGS_Xserver = -o '{Availability, $(MODULE_PKGNAME:%xorg=%xserver-common)}'
691f1f7731d175c7b2e21fbcc8d16a0c323e209aMark AndrewsSUNTOUCH_MAN_FLAGS_xdmxconfig = $(SUNTOUCH_MAN_FLAGS_Xdmx)
691f1f7731d175c7b2e21fbcc8d16a0c323e209aMark AndrewsSUNTOUCH_MAN_FLAGS_vdltodmx = $(SUNTOUCH_MAN_FLAGS_Xdmx)
36440d1ec6cf1ff0cbb0b5b2fb39423e4e0bd450Evan HuntSUNTOUCH_MAN_FLAGS_dmxtodmx = $(SUNTOUCH_MAN_FLAGS_Xdmx)
470212919fb8a92cd7eb621e981905348eb73ccaMark Andrews# Binary built in tree
e72c1e7e465822fc9b5067b2dd3cf047f6132214Mark AndrewsBUILD_TARGETS=$(XORGSERVER_BIN) build_mdb set-elf-comments \
a8f6b2aa46f882c7c680b7bdab1dfb78a76787eaMark Andrews# Need to convert dtrace docs from xml to text/html ourselves, since
c6a1797aff73b707b4b7a71fdaa303136953d2a3Mark Andrews# Solaris doesn't bundle the xmlto tool used upstream
c6a1797aff73b707b4b7a71fdaa303136953d2a3Mark AndrewsMODULE_DOC_DIR = $(MODULE_PREFIX)/share/doc/Xserver
1e0209137159d4e16e4459cc8e804d657aad1af1Mark AndrewsDTRACE_DOCS = $(DTRACE_DOC_DIR)/Xserver-DTrace.html
5e3f390f057801d245680b07dc2b2d64939183d4Mark AndrewsDTRACE_DOCS += $(DTRACE_DOC_DIR)/Xserver-DTrace.txt
5e3f390f057801d245680b07dc2b2d64939183d4Mark Andrews# Need to regenerate autoconf/automake files after patching
ebacb7908afe3d62fe341f7ef9efed63d0c651a2Tatuya JINMEI 神明達哉# Command line options to GNU autoconf configure script
3dfa202e4fea6b985bcf8761e2d11c176baa40d1Mark Andrews# XXX: --disable-dga
3dfa202e4fea6b985bcf8761e2d11c176baa40d1Mark Andrews --enable-kdrive --enable-xephyr --disable-xsdl \
a45f57a2d5fa5a4cb50c4232c09dd7676a256599Evan Hunt# Pass linker mapfile listing symbols that modules can count on resolving
1bfe8851c0a2eb1d7e15556bfa21291cd62ee2bcMark Andrews# from the Xorg binary itself
1bfe8851c0a2eb1d7e15556bfa21291cd62ee2bcMark AndrewsXORG_EXTERNS_FILE = mapfile-Xorg-externs.$(MACH)
a45f57a2d5fa5a4cb50c4232c09dd7676a256599Evan HuntXORG_EXTERNS_FLAG = -Wl,-M,$(PWD)/$(XORG_EXTERNS_FILE)
13d9b8ce94aee267761cd297a583e280df262d60Tatuya JINMEI 神明達哉MODULE_BUILD_ENV = XORG_EXTERNS_FLAG='$(XORG_EXTERNS_FLAG)'
13d9b8ce94aee267761cd297a583e280df262d60Tatuya JINMEI 神明達哉MODULE_LD_SHARED_OPTIONS += -M $(PWD)/$(XORG_EXTERNS_FILE)
13d9b8ce94aee267761cd297a583e280df262d60Tatuya JINMEI 神明達哉# Disable direct binding in shared objects, since it breaks libglx.so
691f1f7731d175c7b2e21fbcc8d16a0c323e209aMark Andrews# Optimization doesn't always remove unused inline functions, leaving many
691f1f7731d175c7b2e21fbcc8d16a0c323e209aMark Andrews# binaries referencing pixman symbols that normally don't need them. The
691f1f7731d175c7b2e21fbcc8d16a0c323e209aMark Andrews# $(ZDISCARD_UNUSED_DEP) in LD_OPTIONS should avoid adding it when
691f1f7731d175c7b2e21fbcc8d16a0c323e209aMark Andrews# not really needed.
2f420f33bbd5a84eee03b5f9b608e79acf06cb29Mark Andrews# pkg-config files that need to have -R added
2f420f33bbd5a84eee03b5f9b608e79acf06cb29Mark Andrews# Remove compiler specific visibility flag that breaks builds of drivers
b049b8ce6a70f13f8cc8e33bfb16e1871282f700Tatuya JINMEI 神明達哉# with other compilers
b049b8ce6a70f13f8cc8e33bfb16e1871282f700Tatuya JINMEI 神明達哉MODULE_FIX_PC_FLAGS= -e 's|\@symbol_visibility\@||'
e2fe1fda755f24f593406dc26fed87e8ea1bb502Tatuya JINMEI 神明達哉# Need to use GNU Make to build due to hw/xfree86/loader
cf225ed6cd51f9acc901a60520a9368e14224a4dTatuya JINMEI 神明達哉# Additional configure time targets beyond the defaults
cf225ed6cd51f9acc901a60520a9368e14224a4dTatuya JINMEI 神明達哉MODULE_ADD_CONFIGURE_TARGETS=clear_build_date
52d5489b9563ae7a0b89aafbce6829802255b151Tatuya JINMEI 神明達哉# Additional install targets beyond the defaults
52d5489b9563ae7a0b89aafbce6829802255b151Tatuya JINMEI 神明達哉MODULE_ADD_INSTALL_TARGETS=install_extras install_mdb install_pc_common \
515ada69db06a727ca1197e2aa1f6a286d278228Tatuya JINMEI 神明達哉# Have to avoid dependency loop between install_pc_common and
515ada69db06a727ca1197e2aa1f6a286d278228Tatuya JINMEI 神明達哉# install_pkgconfig_uninstalled
515ada69db06a727ca1197e2aa1f6a286d278228Tatuya JINMEI 神明達哉INSTALL_PCU_DEPS = $(INSTALL_TARGETS:install_pc_common=)
dc842cdcb946b3f89448f07a9f024497a50c216aMark Andrews# Merge in additional sources from sun-src directory
cd9bebfc4c225931391c7d9ce1cfd88394b23f20Tatuya JINMEI 神明達哉# Compatibility links from /usr/X11/bin to /usr/bin
cd9bebfc4c225931391c7d9ce1cfd88394b23f20Tatuya JINMEI 神明達哉# Only needed for programs that were in /usr/X11/bin before we moved
cd9bebfc4c225931391c7d9ce1cfd88394b23f20Tatuya JINMEI 神明達哉MODULE_X11_BINCOMPAT_LINKS = Xorg Xephyr Xvfb cvt gtf
04115a59c176759177545c72376e844e10dc557cMark AndrewsMODULE_X11_BINCOMPAT_LINKS += $(MODULE_X11_BINCOMPAT_LINKS_$(MACH))
4db36a15c5716050d40aa8e709e8c8e9475ea25bMark Andrews# Binaries that were linked to isaexec on x86 to choose 32-bit or 64-bit,
4db36a15c5716050d40aa8e709e8c8e9475ea25bMark Andrews# now just symlinks from amd64 to parent directory
146484aced3e6c1b9cc88db5e75b8cbfd166f701Mark Andrews# Don't include build date & time in delivered binaries as it just causes
146484aced3e6c1b9cc88db5e75b8cbfd166f701Mark Andrews# unnecessary binary differences to be pulled into package updates, but
593bb6464621c50ceec0e5550045f4b405558548Evan Hunt# leave it in debug builds for developer convenience
dbe9f900ecbefb34e960b69b41b9ecde36e0a256Tatuya JINMEI 神明達哉$(BUILD_DEBUG:yes=$(POUND_SIGN)) CBD_TARGET = actually_clear_build_date
7999db4215b9398d4598ac0156ff097cda40402bMark Andrews printf '#undef BUILD_DATE\n#undef BUILD_TIME\n' > \
cbb8a1b7cbab933795ddee4f05f4eb5074a68e6cFrancis DupontSDK_INCLUDES_DIR=$(PROTODIR)$(X11_INCLUDES_DIR)/xorg/
09477e188f874c8c43a90f050733b114385992dcTatuya JINMEI 神明達哉 sed -e 's%#define XF86DRI 1%/* #define XF86DRI 1 */%' \
0cdb53f093f5814b40a68848025dd8d7e9ef2e9bTatuya JINMEI 神明達哉 $(BUILD_DIR)/include/xorg-server.h > $(SDK_INCLUDES_DIR)/xorg-server.h
05b8187cb3cf03fbd75af1afdacc4aefb373e37bTatuya JINMEI 神明達哉 $(SOURCE_DIR)/hw/xfree86/os-support/bus/xf86Sbus.h \
05b8187cb3cf03fbd75af1afdacc4aefb373e37bTatuya JINMEI 神明達哉 $(SOURCE_DIR)/hw/xfree86/dri/*.h $(SDK_INCLUDES_DIR)/
f5662f41e73c27cc6e7fd29323c8dddf54dff982Mark Andrews cp -pf $(SOURCE_DIR)/hw/xfree86/man/xorgcfg.1 \
0eeaaaf0ae1ae2856b94886fa80f94c21e6f1bfdMark Andrews mkdir -p $(PROTODIR)/etc/hal/fdi/preprobe/10osvendor
9de0f9b0aed432ee357dbba8d1d807525f4b6d4aMark Andrews $(PROTODIR)/etc/hal/fdi/preprobe/10osvendor/10-x11-input.fdi
ee6c0ce79e83039c9f8692bfb6196e0bb591ff98Mark Andrews cp -pf 90-zap.conf $(PROTODIR)/etc/X11/xorg.conf.avail
07d0f86c8a1591c0ee785d6728af69cb40f1da61Francis Dupont# Workaround bug in installing pkgconfig file to wrong directory in 64-bit
07d0f86c8a1591c0ee785d6728af69cb40f1da61Francis Dupont# builds, and install xorg-server.pc in 32-bit pkgconfig dir too
07d0f86c8a1591c0ee785d6728af69cb40f1da61Francis Dupontinstall_pc_common: default_install install_pkgconfig_uninstalled
07d0f86c8a1591c0ee785d6728af69cb40f1da61Francis Dupont -rm -f $(PROTODIR)$(PKGCONFIG_DIR_32)/xorg-server.pc \
07d0f86c8a1591c0ee785d6728af69cb40f1da61Francis Dupont $(PROTODIR)$(PKGCONFIG_DIR_32)/xorg-server-uninstalled.pc
7ed4399c6598276b76df95e6dc91ed7b2834abc6Evan Hunt ln -s ../$(SUBDIR64)$(PKGCONFIG_DIR_suffix)/xorg-server.pc \
3d8b9b9956b64aba0d105f955ac0354fbcf5baa9Tatuya JINMEI 神明達哉 ../$(SUBDIR64)$(PKGCONFIG_DIR_suffix)/xorg-server-uninstalled.pc \
2f76108082f11d4979048f1c22602391c5733c88Tatuya JINMEI 神明達哉# Generate a list of exported functions & data objects so that we can verify
2f76108082f11d4979048f1c22602391c5733c88Tatuya JINMEI 神明達哉# loadable modules don't reference symbols that have been deleted or renamed.
c6678b68efae57ecaec97f489f6d9104f85ed0a8Mark Andrews'BEGIN { print "\043 Functions exported by Xorg server to loadable modules" ; \
efe34b8ddbecf45d1671efbcba30bdb75410c98aMark Andrews print "\n\044mapfile_version 2\n\nSYMBOL_SCOPE {\n\tglobal:" } \
7c60401dbd4dce617dffc685c269fca224c589adTatuya JINMEI 神明達哉 END { print "};" } \
7c60401dbd4dce617dffc685c269fca224c589adTatuya JINMEI 神明達哉 $$7 ~ /UNDEF|\.tdata/ { next } \
7c60401dbd4dce617dffc685c269fca224c589adTatuya JINMEI 神明達哉 $$5 !~ /GLOB/ { next } \
d923262186a3111a6ac7aae5dcd9996e01115a44Mark Andrews $$8 ~ /^(__|_edata|_end|_etext|_start|_environ|_lib_version)/ { next } \
d923262186a3111a6ac7aae5dcd9996e01115a44Mark Andrews $$4 ~ /FUNC/ && $$7 ~ /\.text/ { printf "\t\t%-40s { FLAGS = EXTERN };\n", $$8 } \
d923262186a3111a6ac7aae5dcd9996e01115a44Mark Andrews $$4 ~ /OBJT/ && $$7 ~ /data|bss/ { printf "\t\t%-40s { FLAGS = EXTERN };\n", $$8}'
f92c897cb69fbb8b7400a5df93271b0743fe9adeTatuya JINMEI 神明達哉$(BUILD_DIR)/mapfile-Xorg-externs: $(XORGSERVER_BIN)
77514242b09538db8f3a8f96f7f3d368cff6ebbaTatuya JINMEI 神明達哉 LC_ALL=C /usr/bin/nm -gs $(XORGSERVER_BIN) | \
77514242b09538db8f3a8f96f7f3d368cff6ebbaTatuya JINMEI 神明達哉# cmp $(XORG_EXTERNS_FILE) $@
8aae2264818e1511fa30c3ef5c3dc7669e347d3cTatuya JINMEI 神明達哉# Fix paths in proto area to match paths in packages / installed systems
0f39ff74a85e16cbfd30354e24403b1ee50e1104Tatuya JINMEI 神明達哉 rm -f $(PROTODIR)$(MODULE_PREFIX)/bin/X \
0f39ff74a85e16cbfd30354e24403b1ee50e1104Tatuya JINMEI 神明達哉 $(PROTODIR)$(MODULE_PREFIX)/bin/$(ARCHBINSUBDIR)/X
05e2cc844530031e4dd4e25b3826bece7a183ee1Tatuya JINMEI 神明達哉 ln -s Xserver $(PROTODIR)$(MODULE_PREFIX)/bin/X
7ecbfb6c0f566894fb7050e021cded6822771789Mark AndrewsMESA_MODULE_DIR = /usr/lib/mesa/modules/extensions
8ef7b7f3f68a26cb60f98da398562f8d1c616f96Mark AndrewsEXT_MODULE_DIR = $(X11_SERVERMODS_DIR)/extensions
538a0a40a2c308a004ea40a9efd31c9aecb0f041Mark Andrews ln -s ../../../../../system/volatile/opengl/server/libglx.so \
250dcb4cf5c356bb492c849edff5fe3c81f61f77Tatuya JINMEI 神明達哉install_fix_paths: install_fix_paths_glxmodule
4875b50dca297a5d2082f503da31eaab896b3a8fTatuya JINMEI 神明達哉# Install metadata for Xephyr, Xvfb, Xdmx, & xtsol packages too
4875b50dca297a5d2082f503da31eaab896b3a8fTatuya JINMEI 神明達哉XCOMMON_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-xorg=%-xserver-common)
4875b50dca297a5d2082f503da31eaab896b3a8fTatuya JINMEI 神明達哉XEPHYR_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-xorg=%-xephyr)
d87ad693fc0e91168da01f887cc6ae318b6b7f3eMark AndrewsXVFB_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-xorg=%-xvfb)
d87ad693fc0e91168da01f887cc6ae318b6b7f3eMark AndrewsXDMX_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-xorg=%-xdmx)
ae6942e3d1fc7327ba5df9d638e0af15a908f8fbMark AndrewsXTSOL_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-server-xorg=%-trusted-trusted-xorg)
8aae2264818e1511fa30c3ef5c3dc7669e347d3cTatuya JINMEI 神明達哉EXTRA_METADATA_DIRS = $(XCOMMON_PKG_METADATA_DIR) \
5a17fe2916ce37793c12b243ab08c16095a59cf7Evan HuntEXTRA_ATTRDATA_FILES = $(EXTRA_METADATA_DIRS:%=%/$(ATTRDATA_FILE_NAME))
5a17fe2916ce37793c12b243ab08c16095a59cf7Evan HuntEXTRA_LICENSE_FILES = $(EXTRA_METADATA_DIRS:%=%/$(LICENSE_FILE_NAME))
ae6942e3d1fc7327ba5df9d638e0af15a908f8fbMark AndrewsEXTRA_METADATA_TARGETS= $(EXTRA_METADATA_DIRS) \
c72279e756e6578dc8f09ceac5158d80a8a61ce5Evan Hunt$(EXTRA_ATTRDATA_FILES) $(EXTRA_LICENSE_FILES): $(EXTRA_METADATA_DIRS)
ae6942e3d1fc7327ba5df9d638e0af15a908f8fbMark Andrews# Xtsol module is covered only by Oracle copyright/license
0415ca35ada2cac6a86127eaca64f3a997aea121Evan HuntXTSOL_LICENSE = $(XTSOL_PKG_METADATA_DIR)/$(LICENSE_FILE_NAME)
ae6942e3d1fc7327ba5df9d638e0af15a908f8fbMark Andrews$(XTSOL_LICENSE):= LICENSE_NAME = $(ORACLE_LICENSE_NAME)
69ec1b7eb3be37f06b53f572f6c33622e95a7935Evan Hunt$(XTSOL_LICENSE):= LICENSE_INSERT = $(ORACLE_LICENSE_INSERT)
816496b22114ee7c2c15321c2c6cc4be77fdf822Mark Andrews# Special compatibility links from /usr/X11/include to /usr/include
ae6942e3d1fc7327ba5df9d638e0af15a908f8fbMark AndrewsX11_INCLUDE_COMPAT_DIR = $(PROTODIR)/usr/X11/include
ae6942e3d1fc7327ba5df9d638e0af15a908f8fbMark AndrewsX11_INCLUDE_COMPAT_LINKS = $(X11_INCLUDE_COMPAT_DIR)/drm \
ae6942e3d1fc7327ba5df9d638e0af15a908f8fbMark Andrews$(X11_INCLUDE_COMPAT_LINKS): $(X11_INCLUDE_COMPAT_DIR)
bf64a0d5d9469c42622401bc5d55cf9888eeef44Tatuya JINMEI 神明達哉## mdb module rules
bf64a0d5d9469c42622401bc5d55cf9888eeef44Tatuya JINMEI 神明達哉# Build & install mdb modules & scripts that aren't integrated to
bf64a0d5d9469c42622401bc5d55cf9888eeef44Tatuya JINMEI 神明達哉# normal build process.
00c93a6214214772d4952cd4327aa34670c763bcMichael GraffMDB_SOURCE_DIR = $(XORG_SOURCE_DIR)/os/solaris/mdb
00c93a6214214772d4952cd4327aa34670c763bcMichael GraffMDB_BUILD_DIR = $(XORG_BUILD_DIR)/os/solaris/mdb
00c93a6214214772d4952cd4327aa34670c763bcMichael GraffMDB_REL_SOURCE_DIR = ../../../../$(MDB_SOURCE_DIR)
375e2c913a21cb852310418785f359a6b21b851dMark AndrewsMDB_MODULE_DIR=/usr/lib/mdb/proc/$(ARCHLIBSUBDIR)
68cd13fff2b45c8a941ed8ac3efa0698798dcc96Mark AndrewsBUILT_MDB_MODULE=$(MDB_BUILD_DIR)/modules/Xserver.so
c4fadc88619959582ac89b841c489be0519ae79dTatuya JINMEI 神明達哉BUILT_MDB_SCRIPTS=$(MDB_SCRIPTS:%=$(MDB_BUILD_DIR)/scripts/%)
8907d8fa04fdaa65baf0bc6b01230b2ebde93106Mark AndrewsINSTALLED_MDB_LINKS=$(MDB_MODULE_NAMES:%=$(PROTODIR)$(MDB_MODULE_DIR)/%.so)
8907d8fa04fdaa65baf0bc6b01230b2ebde93106Mark AndrewsINSTALLED_MDB_MODULE=$(PROTODIR)$(MDB_MODULE_DIR)/Xserver.so
8907d8fa04fdaa65baf0bc6b01230b2ebde93106Mark AndrewsINSTALLED_MDB_SCRIPTS=$(MDB_SCRIPTS:%=$(PROTODIR)$(MDB_SCRIPT_DIR)/%)
68cd13fff2b45c8a941ed8ac3efa0698798dcc96Mark AndrewsINSTALLED_MDB_ALL=$(INSTALLED_MDB_MODULE) $(INSTALLED_MDB_LINKS) \
db30f4bdcb66afb7eb1ab0c6882cc70be9a53d79Mark Andrews# Since configure options aren't used to build the mdb modules, pass
db30f4bdcb66afb7eb1ab0c6882cc70be9a53d79Mark Andrews# those variables at build time
db30f4bdcb66afb7eb1ab0c6882cc70be9a53d79Mark AndrewsMDB_BUILD_ENV += CFLAGS="$(LIB_CFLAGS)" LDFLAGS="$(LIB_LDFLAGS)"
db30f4bdcb66afb7eb1ab0c6882cc70be9a53d79Mark AndrewsMDB_BUILD_ENV += ARCHLIBSUBDIR="$(ARCHLIBSUBDIR)"
db30f4bdcb66afb7eb1ab0c6882cc70be9a53d79Mark AndrewsMDB_BUILD_ENV += top_builddir="$(PWD)/$(BUILD_DIR)"
db30f4bdcb66afb7eb1ab0c6882cc70be9a53d79Mark AndrewsMDB_BUILD_ENV += top_srcdir="$(PWD)/$(SOURCE_DIR)"
07555e64d9102eae058efd58f872b4a3b9ddff61Mark Andrews$(MDB_BUILD_DIR): $(SOURCE_TARGETS) $(BUILD_DIR) $(LNDIR)
a76b380643a22f23a67a9df284e86cd7ef7608c1Mark Andrews cd $(MDB_BUILD_DIR) && $(LNDIR) $(MDB_REL_SOURCE_DIR)
2a31bd531072824ef252c18303859d6af7451b00Francis Dupont$(BUILT_MDB_MODULE): $(CONFIGURE_TARGETS) $(MDB_BUILD_DIR)
2a31bd531072824ef252c18303859d6af7451b00Francis Dupont $(MDB_BUILD_ENV) $(MAKE) $(MAKEFLAGS) $(DEFAULT_BUILD_MAKEFLAGS))
4a253e12fc611763cd7c1b793e78a00d47894399Francis Dupont$(PROTODIR)$(MDB_MODULE_DIR) $(PROTODIR)$(MDB_SCRIPT_DIR):
cffe96e26744abcf33494837b234219046a631d8Mark Andrews$(INSTALLED_MDB_MODULE): $(PROTODIR)$(MDB_MODULE_DIR) $(BUILT_MDB_MODULE)
cffe96e26744abcf33494837b234219046a631d8Mark Andrews $(INSTALL_SCRIPT) -c -m 0555 $(BUILT_MDB_MODULE) $@
f703353673abc17ef76c89561a1fbf3555d38927Mark Andrews$(INSTALLED_MDB_LINKS): $(PROTODIR)$(MDB_MODULE_DIR)
7e26a2a646877bcd5e03fce6d7347e88f059011eMark Andrews$(INSTALLED_MDB_SCRIPTS): $(BUILT_MDB_SCRIPTS) $(PROTODIR)$(MDB_SCRIPT_DIR)
7e26a2a646877bcd5e03fce6d7347e88f059011eMark Andrews $(INSTALL_SCRIPT) -c -m 0555 $(MDB_SOURCE_DIR)/scripts/$(@F) \
a95a9de45ca739dab17ec1263186dbaaaba50d97Tatuya JINMEI 神明達哉 $(INSTALL_SCRIPT) -c -m 0444 $(MDB_SOURCE_DIR)/README \
55f580c7fc4b99316a54ef54ed79c58efca5fff1Mark Andrews## Dtrace docs rules
55f580c7fc4b99316a54ef54ed79c58efca5fff1Mark Andrews$(DTRACE_DOC_DIR)/Xserver-DTrace.xml: $(AUTOCONF_TARGET)
4074b8e7342618ff38ffe3773a2699ee1734f1adMark Andrewsinstall_docs: $(DTRACE_DOCS) $(PROTODIR)$(MODULE_DOC_DIR) $(PROTODIR)$(RELNOTES_DIR)
0283e511317cae3785a9d48e236289a234a25368Mark Andrews $(INSTALL_SCRIPT) -c -m 0444 $(DTRACE_DOCS) $(PROTODIR)$(MODULE_DOC_DIR)
664e11f0b14c78cef7cf6b8c70323a1da494e351Mark Andrews $(INSTALL_SCRIPT) -c -m 0444 release-notes/*.txt \