Makefile revision 969
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein###############################################################################
990d0e893f5b70e735cdf990af66e9ec6e91fa78Tinderbox User#
75c0816e8295e180f4bc7f10db3d0d880383bc1cMark Andrews# X11 1.x Makefile
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
4a14ce5ba00ab7bc55c99ffdcf59c7a4ab902721Automatic Updater# Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Permission is hereby granted, free of charge, to any person obtaining a
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# copy of this software and associated documentation files (the "Software"),
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# 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#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# The above copyright notice and this permission notice (including the next
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# paragraph) shall be included in all copies or substantial portions of the
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Software.
ea94d370123a5892f6c47a97f21d1b28d44bb168Tinderbox User#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
e21a2904f02a03fa06b6db04d348f65fe9c67b2bMark Andrews# 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
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# DEALINGS IN THE SOFTWARE.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Package name used in tarballs
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinMODULE_NAME=libX11
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews# Version number (used in path names)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinMODULE_VERSION=1.3.4
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Checksums for upstream tarball
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinTARBALL_MD5 = f65c9c7ecbfb64c19dbd7927160d63fd
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinTARBALL_SHA1 = 5aab6dc8ed5ec0e86419626715efc3edd34d1db4
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Patches to apply to source after unpacking, in order
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinSOURCE_PATCHES = \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein 1234757.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein 4010755.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein 4614834.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein 5039226.patch \
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews solaris-abi.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein solaris-kbd.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein SolarisIA.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein 4076297.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein 1261271.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein 6714036.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein 6789219.patch \
e4a70b8fdfc5d2db2d992d884327a1e1fec67a07Tinderbox User sme.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein im-suneu-greek.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein im-ximcp.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein lc-jisx0212.patch \
e4a70b8fdfc5d2db2d992d884327a1e1fec67a07Tinderbox User lc-jisx0208.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein lc-ksc5601.1992-3.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein lc-gb18030.patch \
a87790b9d8e062fac1b2dfb8903e77bfe92a3891Tinderbox User om-generic.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein compose.dir.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein compose-iso8859-1.patch \
a87790b9d8e062fac1b2dfb8903e77bfe92a3891Tinderbox User compose-iso8859-2.patch \
a87790b9d8e062fac1b2dfb8903e77bfe92a3891Tinderbox User compose-iso8859-5.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein compose-iso8859-6.patch \
a87790b9d8e062fac1b2dfb8903e77bfe92a3891Tinderbox User compose-iso8859-7.patch \
a87790b9d8e062fac1b2dfb8903e77bfe92a3891Tinderbox User compose-iso8859-8.patch \
a87790b9d8e062fac1b2dfb8903e77bfe92a3891Tinderbox User compose-iso8859-9.patch \
a87790b9d8e062fac1b2dfb8903e77bfe92a3891Tinderbox User compose-iso8859-13.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein compose-iso8859-15.patch \
a87790b9d8e062fac1b2dfb8903e77bfe92a3891Tinderbox User compose-el_GR.UTF-8.patch \
a87790b9d8e062fac1b2dfb8903e77bfe92a3891Tinderbox User compose-en_US.UTF-8.patch \
a87790b9d8e062fac1b2dfb8903e77bfe92a3891Tinderbox User compose-ja_JP.UTF-8.patch \
a87790b9d8e062fac1b2dfb8903e77bfe92a3891Tinderbox User compose-ko_KR.UTF-8.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein compose-pt_BR.UTF-8.patch \
a87790b9d8e062fac1b2dfb8903e77bfe92a3891Tinderbox User compose-th_TH.UTF-8.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein compose-zh_CN.UTF-8.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein compose-zh_HK.UTF-8.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein compose-zh_TW.UTF-8.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein locale.aliases.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein locale.paths.patch \
a1ad6695ed6f988406cf155aa26376f84f73bcb9Automatic Updater locale-C.patch \
27963ad22062efe8eac2beed51ff70d8f0b35900Tinderbox User locale-iso8859-1.patch \
a1ad6695ed6f988406cf155aa26376f84f73bcb9Automatic Updater locale-iso8859-6.patch \
44d0f0256fbdce130a18655023c3b06bacacbd61Automatic Updater locale-iso8859-8.patch \
27963ad22062efe8eac2beed51ff70d8f0b35900Tinderbox User locale-en_US.UTF-8.patch \
2895f101b5585a19015ac2c2c1e1812ac467fa12Automatic Updater locale-ja.SJIS.patch \
27963ad22062efe8eac2beed51ff70d8f0b35900Tinderbox User locale-ja.patch \
44d0f0256fbdce130a18655023c3b06bacacbd61Automatic Updater locale-ja_JP.UTF-8.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein locale-ko.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein locale-ko_KR.UTF-8.patch \
27963ad22062efe8eac2beed51ff70d8f0b35900Tinderbox User locale-th_TH.UTF-8.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein locale-zh_CN.UTF-8.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein locale-zh_CN.gb18030.patch \
27963ad22062efe8eac2beed51ff70d8f0b35900Tinderbox User locale-zh_HK.UTF-8.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein locale-zh_TW.UTF-8.patch \
27963ad22062efe8eac2beed51ff70d8f0b35900Tinderbox User locale-zh_TW.patch \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein locale-ru-RU.UTF-8.patch
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
27963ad22062efe8eac2beed51ff70d8f0b35900Tinderbox User# Library name (used for specfiles/mapfiles)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinLIBNAME=X11
27963ad22062efe8eac2beed51ff70d8f0b35900Tinderbox User
27963ad22062efe8eac2beed51ff70d8f0b35900Tinderbox User# Man pages to apply Sun footer to & attributes to list
27963ad22062efe8eac2beed51ff70d8f0b35900Tinderbox UserSUNTOUCHED_MANPAGES=man/*.man man/xkb/*.man
7208386cd37a2092c70eddf80cf29519b16c4c80Mark AndrewsSUN_PACKAGE=SUNWxwplt
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinMODULE_STABILITY=Committed
507151045be68c671ffd4e2f37e17cdfa0376fc4Automatic UpdaterLIB_MAN_SUFFIX=3x11
507151045be68c671ffd4e2f37e17cdfa0376fc4Automatic Updater
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Command line options to GNU autoconf configure script
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinMODULE_CONFIG_OPTS = --enable-xthreads --enable-loadable-i18n \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein --disable-specs \
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews --with-xcb=no --enable-loadable-xcursor --enable-xcms \
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews --enable-xlocaledir --enable-xkb --enable-man-pages=$(LIB_MAN_SUFFIX) \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein --with-locale-lib-dir='$${exec_prefix}/lib/X11/locale$(LIBSUBDIR)'
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews# -xF is needed for mapfile reordering to work
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinMODULE_CFLAGS = -xF
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews# -DSUNSOFT enables SUN_SME (Shared Memory transport extension)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# -DMOTIFBC enables compatibility with bugs in Motif & other apps
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# -DSUNSOFT_KBD enables Solaris traditional keyboard handling
71c66a876ecca77923638d3f94cc0783152b2f03Mark AndrewsMODULE_CPPFLAGS = -DSUNSOFT -DMOTIFBC -DSUNSOFT_KBD
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinMODULE_LDFLAGS = -R$(X11_LIB_DIR)$(ARCHLIBSUBDIR)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Backwards compatibility for old paths until g11n moves all input methods
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinMODULE_CONFIG_ENV = \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein XLOCALEDIR="/usr/share/X11/locale:/usr/X11/share/X11/locale" \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein XLOCALELIBDIR="/usr/lib/X11/locale$(LIBSUBDIR):/usr/X11/lib/X11/locale$(LIBSUBDIR)"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
71c66a876ecca77923638d3f94cc0783152b2f03Mark Andrews# Work around libtool's interference
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinDELIBTOOLIZE=yes
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Use -KPIC instead of -Kpic because we have too many symbols on SPARC
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinDELIBTOOLIZE_FLAGS_sparc = -P
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinDELIBTOOLIZE_FLAGS_i386 =
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinDELIBTOOLIZE_FLAGS = $(DELIBTOOLIZE_FLAGS_$(MACH))
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Need additional mapfile for additional symbols in 64-bit versions
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinMODULE_BUILD_64_FLAGS = ADD_libX11_LDFLAGS="-M $(PWD)/mapfile-vers-64"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# pkg-config files that need to have -R added
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinFIX_PC_FILES=x11.pc.in
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Regenerate Makefile.in's from Makefile.am's after patching them
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinAUTORECONF=yes
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Merge in additional sources from sun-src directory
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinADDITIONAL_SOURCE_DIR=sun-src
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Install additional headers we need in other parts of the build or ship in
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# packages, but which X.Org doesn't
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinMODULE_ADD_INSTALL_TARGETS_32 = install_extra_headers
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinMODULE_ADD_INSTALL_TARGETS = $(MODULE_ADD_INSTALL_TARGETS_$(BUILD_TYPE))
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Install additional links to libX11 that we include in our packages
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinMODULE_ADD_INSTALL_TARGETS += install_extra_links
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininclude ../Makefile.inc
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininstall_extra_headers: $(INSTALL_DEPS)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein mkdir -p $(PROTODIR)$(X11_INCLUDES_DIR)/X11/extensions
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein cp -pf sun-src/include/X11/Xvarargs.h \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(PROTODIR)$(X11_INCLUDES_DIR)/X11/
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein cp -pf sun-src/include/X11/extensions/XInteractive.h \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(PROTODIR)$(X11_INCLUDES_DIR)/X11/extensions/
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein cp -pf $(SOURCE_DIR)/src/xlibi18n/Xlc*.h \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein $(PROTODIR)$(X11_INCLUDES_DIR)/X11/
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews# Extra links to libX11 for compatibility with SVID / SPARC ABI / etc.
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark AndrewsEXTRA_LINKS = libX.so libX.so.4 libX11.so.5
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark AndrewsEXTRA_PROTO_LINKS = $(EXTRA_LINKS:%=$(PROTODIR)$(MODULE_PREFIX)/lib$(ARCHLIBSUBDIR)/%)
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews$(EXTRA_PROTO_LINKS): $(INSTALL_DEPS)
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews @rm -f $@
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews ln -s libX11.so.4 $@
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews
b05bdb520d83f7ecaad708fe305268c3420be01dMark Andrewsinstall_extra_links: $(EXTRA_PROTO_LINKS)
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews