Makefile revision 1366
d6fa26d0adaec6c910115be34fe7a5a5f402c14fMark Andrews###############################################################################
5347c0fcb04eaea19d9f39795646239f487c6207Tinderbox User# Xorg server Makefile
5347c0fcb04eaea19d9f39795646239f487c6207Tinderbox User# Copyright (c) 2006, 2013, Oracle and/or its affiliates. All rights reserved.
5347c0fcb04eaea19d9f39795646239f487c6207Tinderbox User# Permission is hereby granted, free of charge, to any person obtaining a
6ea1b817e31b89a627e146fe69e23ea0a64c89ecBob Halley# copy of this software and associated documentation files (the "Software"),
d6fa26d0adaec6c910115be34fe7a5a5f402c14fMark Andrews# to deal in the Software without restriction, including without limitation
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# the rights to use, copy, modify, merge, publish, distribute, sublicense,
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# and/or sell copies of the Software, and to permit persons to whom the
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Software is furnished to do so, subject to the following conditions:
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# The above copyright notice and this permission notice (including the next
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User# paragraph) shall be included in all copies or substantial portions of the
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# DEALINGS IN THE SOFTWARE.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Package name used in tarballs
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Package metadata
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserMODULE_DESC = portions of the X.Org X server software
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Version number (used in path names) - set in open-src/common/Makefile.init
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Checksums for upstream tarball
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserTARBALL_MD5 = 86110278b784e279381b7f6f2295c508
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserTARBALL_SHA1 = 62b35456ece3e2bb9944b0c1f8b880ec02aab91e
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserTARBALL_SHA256= 1f5107573252c26439fdd165481765a2c0964e02a2e9fab36e02414d08f30630
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Patches to apply to source after unpacking, in order
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# *** Moved to patch-list file so they can be shared between Xorg & Xvnc builds
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Used in rules shared between Xorg & Xvnc builds in Makefile.inc
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# to allow for different source layouts
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# ARC cases that covered this module
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# PSARC/2004/187 Xorg Server for Solaris
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# PSARC/2004/685 Xorg server upgrade to X11R6.8 release
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# PSARC/2004/829 Xorg 6.8.2 server upgrade for Solaris
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# PSARC/2005/450 Xorg 6.9 for Solaris
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# PSARC/2006/609 Xserver provider for DTrace
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# PSARC/2007/051 Xorg server upgrade to 7.2
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# PSARC/2007/434 Xorg server 1.3
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# PSARC/2007/500 X11 MIT-SHM Extension across zones
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# PSARC/2008/294 Xorg driver selection based on VIS_GETIDENTIFIER
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# PSARC/2009/021 Xorg server 1.5
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# PSARC/2009/292 Xorg server 1.6
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# PSARC/2009/679 Xorg server 1.7
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# PSARC/2010/109 Introduce libXcb in Solaris
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# PSARC/2011/008 Xorg server 1.9
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox User# PSARC/2010/382 Removal of 32-bit X servers
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# PSARC/2011/214 Xorg server 1.10
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# PSARC/2012/144 Xorg server 1.12
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# PSARC/2012/320 Xorg server 1.13
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# PSARC/2013/091 Xorg server 1.14
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Man pages to apply Sun footer to & attributes to list
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Override specific attributes for specific man pages
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(SUNTOUCH_MAN_FLAGS_$(@F:%.man.$(FIXED_MAN_SUFFIX)=%))
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Xephyr, Xvfb, and Xdmx are split out into their own packages
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinSUNTOUCH_MAN_FLAGS_Xephyr = -o '{Availability, $(MODULE_PKGNAME:%xorg=%xephyr)}'
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinSUNTOUCH_MAN_FLAGS_Xvfb = -o '{Availability, $(MODULE_PKGNAME:%xorg=%xvfb)}'
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinSUNTOUCH_MAN_FLAGS_Xdmx = -o '{Availability, $(MODULE_PKGNAME:%xorg=%xdmx)}'
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinSUNTOUCH_MAN_FLAGS_Xserver = -o '{Availability, $(MODULE_PKGNAME:%xorg=%xserver-common)}'
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Binary built in tree
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserBUILD_TARGETS=$(XORGSERVER_BIN) build_mdb set-elf-comments \
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Need to convert dtrace docs from xml to text/html ourselves, since
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Solaris doesn't bundle the xmlto tool used upstream
91a45a8ad51e9167e674ac5ed9b4c9eb3e7faea6Tinderbox UserMODULE_DOC_DIR = $(MODULE_PREFIX)/share/doc/Xserver
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox UserDTRACE_DOCS = $(DTRACE_DOC_DIR)/Xserver-DTrace.html
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox UserDTRACE_DOCS += $(DTRACE_DOC_DIR)/Xserver-DTrace.txt
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Need to regenerate autoconf/automake files after patching
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Command line options to GNU autoconf configure script
6ea2385360e9e2167e65f9286447da9eea189457Tinderbox User# XXX: --disable-dga
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User --enable-kdrive --enable-xephyr --disable-xsdl \
6ea2385360e9e2167e65f9286447da9eea189457Tinderbox User# Pass linker mapfile listing symbols that modules can count on resolving
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# from the Xorg binary itself
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinXORG_EXTERNS_FLAG = -Wl,-M,$(PWD)/$(XORG_EXTERNS_FILE)
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserMODULE_BUILD_ENV = XORG_EXTERNS_FLAG='$(XORG_EXTERNS_FLAG)'
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Optimization doesn't always remove unused inline functions, leaving many
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# binaries referencing pixman symbols that normally don't need them. Using
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# -z ignore should ensure that it's not added when not really needed.
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Adding -z muldefs for 16418361 - which should be removed once we fix that
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserMODULE_CONFIG_OPTS += LIBS="-z ignore -lpixman-1 -z muldefs"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# pkg-config files that need to have -R added
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Remove compiler specific visibility flag that breaks builds of drivers
e68c527dff2f1f7df2a542f8d6f9181a27e05eb7Tinderbox User# with other compilers
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserMODULE_FIX_PC_FLAGS= -e 's|\@symbol_visibility\@||'
e68c527dff2f1f7df2a542f8d6f9181a27e05eb7Tinderbox User# Need to use GNU Make to build due to hw/xfree86/loader
0eea9763d88e3edf9b6de585f7cfbb08de977124Tinderbox User# Additional configure time targets beyond the defaults
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User# Additional install targets beyond the defaults
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox UserMODULE_ADD_INSTALL_TARGETS=install_extras install_mdb install_pc_common \
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User# Have to avoid dependency loop between install_pc_common and
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# install_pkgconfig_uninstalled
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserINSTALL_PCU_DEPS = $(INSTALL_TARGETS:install_pc_common=)
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Merge in additional sources from sun-src directory
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User# Compatibility links from /usr/X11/bin to /usr/bin
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User# Only needed for programs that were in /usr/X11/bin before we moved
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox UserMODULE_X11_BINCOMPAT_LINKS = Xorg Xephyr Xvfb cvt gtf
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox UserMODULE_X11_BINCOMPAT_LINKS += $(MODULE_X11_BINCOMPAT_LINKS_$(MACH))
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Binaries that were linked to isaexec on x86 to choose 32-bit or 64-bit,
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# now just symlinks from amd64 to parent directory
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Don't include build date & time in delivered binaries as it just causes
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User# unnecessary binary differences to be pulled into package updates, but
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# leave it in debug builds for developer convenience
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(BUILD_DEBUG:yes=$(POUND_SIGN)) CBD_TARGET = actually_clear_build_date
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User printf '#undef BUILD_DATE\n#undef BUILD_TIME\n' > \
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserSDK_INCLUDES_DIR=$(PROTODIR)$(X11_INCLUDES_DIR)/xorg/
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein sed -e 's%#define XF86DRI 1%/* #define XF86DRI 1 */%' \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(SOURCE_DIR)/include/xorg-server.h > $(SDK_INCLUDES_DIR)/xorg-server.h
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(SOURCE_DIR)/hw/xfree86/os-support/bus/xf86Sbus.h \
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User $(SOURCE_DIR)/hw/xfree86/dri/*.h $(SDK_INCLUDES_DIR)/
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User mkdir -p $(PROTODIR)/etc/hal/fdi/preprobe/10osvendor
c4d99a62407cebca29653666ae11f87e4f56ebbcAutomatic Updater cp -pf $(SOURCE_DIR)/config/x11-input.fdi \
c4d99a62407cebca29653666ae11f87e4f56ebbcAutomatic Updater $(PROTODIR)/etc/hal/fdi/preprobe/10osvendor/10-x11-input.fdi
0e1dece22e128f9dfa723316a35c4b3f06912381Tinderbox User cp -pf 90-zap.conf $(PROTODIR)/etc/X11/xorg.conf.avail
0e1dece22e128f9dfa723316a35c4b3f06912381Tinderbox User# Workaround bug in installing pkgconfig file to wrong directory in 64-bit
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User# builds, and install xorg-server.pc in 32-bit pkgconfig dir too
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox Userinstall_pc_common: default_install install_pkgconfig_uninstalled
c4d99a62407cebca29653666ae11f87e4f56ebbcAutomatic Updater -rm -f $(PROTODIR)$(PKGCONFIG_DIR)/xorg-server.pc
c4d99a62407cebca29653666ae11f87e4f56ebbcAutomatic Updater $(PROTODIR)$(PKGCONFIG_DIR)/xorg-server.pc
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User -rm -f $(PROTODIR)$(PKGCONFIG_DIR_32)/xorg-server.pc \
c4d99a62407cebca29653666ae11f87e4f56ebbcAutomatic Updater $(PROTODIR)$(PKGCONFIG_DIR_32)/xorg-server-uninstalled.pc
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User ln -s ../$(SUBDIR64)$(PKGCONFIG_DIR_suffix)/xorg-server.pc \
c4d99a62407cebca29653666ae11f87e4f56ebbcAutomatic Updater ../$(SUBDIR64)$(PKGCONFIG_DIR_suffix)/xorg-server-uninstalled.pc \
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User# Generate a list of exported functions & data objects so that we can verify
c4d99a62407cebca29653666ae11f87e4f56ebbcAutomatic Updater# loadable modules don't reference symbols that have been deleted or renamed.
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User'BEGIN { print "\043 Functions exported by Xorg server to loadable modules" ; \
c4d99a62407cebca29653666ae11f87e4f56ebbcAutomatic Updater print "\n\044mapfile_version 2\n\nSYMBOL_SCOPE {\n\tglobal:" } \
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User END { print "};" } \
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User $$7 ~ /UNDEF|\.tdata/ { next } \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $$5 !~ /GLOB/ { next } \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $$8 ~ /^(__|_edata|_end|_etext|_start|_environ|_lib_version)/ { next } \
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User $$4 ~ /FUNC/ && $$7 ~ /\.text/ { printf "\t\t%-40s { FLAGS = EXTERN };\n", $$8 } \
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User $$4 ~ /OBJT/ && $$7 ~ /data|bss/ { printf "\t\t%-40s { FLAGS = EXTERN };\n", $$8}'
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(BUILD_DIR)/mapfile-Xorg-externs: $(XORGSERVER_BIN)
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User LC_ALL=C /usr/bin/nm -gs $(XORGSERVER_BIN) | \
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# cmp $(XORG_EXTERNS_FILE) $@
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Fix paths in proto area to match paths in packages / installed systems
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(PROTODIR)$(MODULE_PREFIX)/bin/$(ARCHBINSUBDIR)/X
2a1d6afad5c725cbc796c10f1d2b9041eda9f077Automatic UpdaterMESA_MODULE_DIR = /usr/lib/mesa/modules/extensions
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserEXT_MODULE_DIR = $(X11_SERVERMODS_DIR)/extensions
2a1d6afad5c725cbc796c10f1d2b9041eda9f077Automatic Updaterinstall_fix_paths_glxmodule: default_install
2a1d6afad5c725cbc796c10f1d2b9041eda9f077Automatic Updater @rm -f $(PROTODIR)$(MESA_MODULE_DIR)/libglx.so
0e1dece22e128f9dfa723316a35c4b3f06912381Tinderbox User mv -f $(PROTODIR)$(EXT_MODULE_DIR)/libglx.so \
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User ln -s ../../../../../system/volatile/opengl/server/libglx.so \
0e1dece22e128f9dfa723316a35c4b3f06912381Tinderbox Userinstall_fix_paths: install_fix_paths_glxmodule
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User# Install metadata for Xephyr, Xvfb, Xdmx, & xtsol packages too
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox UserXCOMMON_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-xorg=%-xserver-common)
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserXEPHYR_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-xorg=%-xephyr)
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserXVFB_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-xorg=%-xvfb)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinXDMX_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-xorg=%-xdmx)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinXTSOL_PKG_METADATA_DIR = $(MODULE_PKG_METADATA_DIR:%-server-xorg=%-trusted-trusted-xorg)
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox UserEXTRA_METADATA_DIRS = $(XCOMMON_PKG_METADATA_DIR) \
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserEXTRA_ATTRDATA_FILES = $(EXTRA_METADATA_DIRS:%=%/$(ATTRDATA_FILE_NAME))
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox UserEXTRA_LICENSE_FILES = $(EXTRA_METADATA_DIRS:%=%/$(LICENSE_FILE_NAME))
d71e2e0c61df16ff37c9934c371a4a60c08974f7Mark AndrewsEXTRA_METADATA_TARGETS= $(EXTRA_METADATA_DIRS) \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(EXTRA_ATTRDATA_FILES) $(EXTRA_LICENSE_FILES): $(EXTRA_METADATA_DIRS)
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Xtsol module is covered only by Oracle copyright/license
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinXTSOL_LICENSE = $(XTSOL_PKG_METADATA_DIR)/$(LICENSE_FILE_NAME)
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User$(XTSOL_LICENSE):= LICENSE_NAME = $(ORACLE_LICENSE_NAME)
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User$(XTSOL_LICENSE):= LICENSE_FILE = COPYING.tsol
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(XTSOL_LICENSE):= LICENSE_APPEND = $(ORACLE_LICENSE_APPEND)
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# Special compatibility links from /usr/X11/include to /usr/include
824f38c0310fddef55f0f691580154022a7852f5Automatic UpdaterX11_INCLUDE_COMPAT_DIR = $(PROTODIR)/usr/X11/include
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserX11_INCLUDE_COMPAT_LINKS = $(X11_INCLUDE_COMPAT_DIR)/drm \
d5ece58e3bb75eb2dff7802f5ce9904dc4dce05fTinderbox User$(X11_INCLUDE_COMPAT_LINKS): $(X11_INCLUDE_COMPAT_DIR)
947d37484ed01966a9e89dd27f62c1b427324dc2Tinderbox User## mdb module rules
947d37484ed01966a9e89dd27f62c1b427324dc2Tinderbox User# Build & install mdb modules & scripts that aren't integrated to
947d37484ed01966a9e89dd27f62c1b427324dc2Tinderbox User# normal build process.
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserMDB_SOURCE_DIR=$(XORG_BUILD_DIR)/os/solaris/mdb
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserMDB_MODULE_DIR=/usr/lib/mdb/proc/$(ARCHLIBSUBDIR)
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserBUILT_MDB_MODULE=$(MDB_SOURCE_DIR)/modules/Xserver.so
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinBUILT_MDB_SCRIPTS=$(MDB_SCRIPTS:%=$(MDB_SOURCE_DIR)/scripts/%)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinINSTALLED_MDB_LINKS=$(MDB_MODULE_NAMES:%=$(PROTODIR)$(MDB_MODULE_DIR)/%.so)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinINSTALLED_MDB_MODULE=$(PROTODIR)$(MDB_MODULE_DIR)/Xserver.so
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinINSTALLED_MDB_SCRIPTS=$(MDB_SCRIPTS:%=$(PROTODIR)$(MDB_SCRIPT_DIR)/%)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinINSTALLED_MDB_ALL=$(INSTALLED_MDB_MODULE) $(INSTALLED_MDB_LINKS) \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Since configure options aren't used to build the mdb modules, pass
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User# those variables at build time
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserMDB_BUILD_ENV += CFLAGS="$(LIB_CFLAGS)" LDFLAGS="$(LIB_LDFLAGS)"
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox UserMDB_BUILD_ENV += ARCHLIBSUBDIR="$(ARCHLIBSUBDIR)"
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User $(MDB_BUILD_ENV) $(MAKE) $(MAKEFLAGS) $(DEFAULT_BUILD_MAKEFLAGS))
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(PROTODIR)$(MDB_MODULE_DIR) $(PROTODIR)$(MDB_SCRIPT_DIR):
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(INSTALLED_MDB_MODULE): $(PROTODIR)$(MDB_MODULE_DIR) $(BUILT_MDB_MODULE)
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User $(INSTALL_SCRIPT) -c -m 0555 $(BUILT_MDB_MODULE) $@
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein$(INSTALLED_MDB_LINKS): $(PROTODIR)$(MDB_MODULE_DIR)
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User$(INSTALLED_MDB_SCRIPTS): $(BUILT_MDB_SCRIPTS) $(PROTODIR)$(MDB_SCRIPT_DIR)
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User $(INSTALL_SCRIPT) -c -m 0555 $(MDB_SOURCE_DIR)/scripts/$(@F) \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(INSTALL_SCRIPT) -c -m 0444 $(MDB_SOURCE_DIR)/README \
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User## Dtrace docs rules
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User$(DTRACE_DOC_DIR)/Xserver-DTrace.xml: $(AUTOCONF_TARGET)
fd2597f75693a2279fdf588bd40dfe2407c42028Tinderbox Userinstall_docs: $(DTRACE_DOCS) $(PROTODIR)$(MODULE_DOC_DIR)
7911e6f9de303bca5a3d8b34f4330c8f7cecffaeTinderbox User $(INSTALL_SCRIPT) -c -m 0444 $(DTRACE_DOCS) $(PROTODIR)$(MODULE_DOC_DIR)