Makefile revision 1026
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson# Makefile for X Consolidation Open Source Library modules
b0e8629055a766d4555a005a283c2889a5974945Mark Andrews#
75c0816e8295e180f4bc7f10db3d0d880383bc1cMark Andrews# Copyright (c) 2007, 2010, Oracle and/or its affiliates. All rights reserved.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson# Permission is hereby granted, free of charge, to any person obtaining a
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson# copy of this software and associated documentation files (the "Software"),
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson# to deal in the Software without restriction, including without limitation
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# the rights to use, copy, modify, merge, publish, distribute, sublicense,
af5073d03288a53b646ec3b807ac25ced64d7879Mark Andrews# and/or sell copies of the Software, and to permit persons to whom the
af5073d03288a53b646ec3b807ac25ced64d7879Mark Andrews# Software is furnished to do so, subject to the following conditions:
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
af5073d03288a53b646ec3b807ac25ced64d7879Mark Andrews# The above copyright notice and this permission notice (including the next
af5073d03288a53b646ec3b807ac25ced64d7879Mark Andrews# paragraph) shall be included in all copies or substantial portions of the
af5073d03288a53b646ec3b807ac25ced64d7879Mark Andrews# Software.
af5073d03288a53b646ec3b807ac25ced64d7879Mark Andrews#
fb84f9014321c5f33c4682de5661b579fcde318fAndreas Gustafsson# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
8dc5d5e460da15b2481893687cad7e5b72d0314aAutomatic Updater# 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
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# 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
e21a2904f02a03fa06b6db04d348f65fe9c67b2bMark Andrews# DEALINGS IN THE SOFTWARE.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein#
5a4557e8de2951a2796676b5ec4b6a90caa5be14Mark Andrews###############################################################################
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Need to install to proto area by default for inter-package dependencies to
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# work right.
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeindefault_target: install
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Order copied from X.Org's util/modular/build.sh:
7329012471d165cd3dc4180ad2a0a43de91e7f01Mark Andrews# the libraries have a dependency order:
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# xtrans, Xau, Xdmcp before anything else
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# fontenc before Xfont
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# ICE before SM
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# X11 before Xext
b0e8629055a766d4555a005a283c2889a5974945Mark Andrews# (X11 and SM) before Xt
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Xt before Xmu and Xpm and Xtst
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Xext before any other extension library, including mesa
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Xfixes before Xcomposite, Xcursor or Xdamage
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# libpthread-stubs before libdrm (and in the future, before xcb)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# libdrm before mesa
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# Dependencies needed for parallel make:
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinDPS: libX11 libXt
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinfontconfig: freetype
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinlibdga: libX11
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinlibdmx: libX11 libXext
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinlibdrm: libpthread-stubs
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibFS: libxtrans
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibICE: libxtrans
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibSM: libxtrans libICE
d71e2e0c61df16ff37c9934c371a4a60c08974f7Mark AndrewslibX11: libxtrans libXau libXdmcp
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXaw: libX11 libXt libXmu libXpm
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXaw4: libX11 libXt libXmu
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXaw5: libX11 libXt libXmu
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXcomposite: libX11 libXext libXfixes
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXcursor: libX11 libXfixes libXrender
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXdamage: libXfixes
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXevie: libX11 libXext
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXext: libX11 libXau
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXfixes: libX11 libXext
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXfont: libxtrans freetype libfontenc
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXft: freetype fontconfig libXrender libX11
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXi: libX11 libXext
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXinerama: libX11 libXext
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXmu: libX11 libXt libXext
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXp: libX11 libXext
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXpm: libX11 libXt
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXrandr: libX11 libXext libXrender
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXrender: libX11 libXext
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXres: libX11 libXext
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinlibXScrnSaver: libX11 libXext
b3cbb2f1ad021349e89807f3492df6e4e679cd56Mark AndrewslibXt: libX11 libSM libICE
b3cbb2f1ad021349e89807f3492df6e4e679cd56Mark AndrewslibXtsol: libX11 libXext
b3cbb2f1ad021349e89807f3492df6e4e679cd56Mark AndrewslibXtst: libX11 libXext
b3cbb2f1ad021349e89807f3492df6e4e679cd56Mark AndrewslibXv: libX11 libXext
b3cbb2f1ad021349e89807f3492df6e4e679cd56Mark AndrewslibXvMC: libX11 libXext
b3cbb2f1ad021349e89807f3492df6e4e679cd56Mark AndrewslibXxf86misc: libX11 libXext
b3cbb2f1ad021349e89807f3492df6e4e679cd56Mark AndrewslibXxf86vm: libX11 libXext
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinlibxkbfile: libX11
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinmesa: libdrm libX11 libXext
b0e8629055a766d4555a005a283c2889a5974945Mark Andrews
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# pixman doesn't need these itself, but its test framework uses gtk,
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein# which does depend on these
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinpixman: libXext libXrender libXinerama libXi libXrandr libXcursor
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeinpixman: libXcomposite libXdamage libXfixes libX11 freetype fontconfig
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinOS_SUBDIRS_common = \
61e1dc26d62c2a0059e3ca7efe2ad0f4a5b8df92Mark Andrews DPS \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein freetype \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein fontconfig \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libdga \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libdmx \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libdrm \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libowconfig \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libpthread-stubs \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libxtrans \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXau \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXdmcp \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libX11 \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXext \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libfontenc \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libFS \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libICE \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein liblbxutil \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libpciaccess \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libSM \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXt \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXmu \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXpm \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXp \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXaw \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXaw4 \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXaw5 \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXfixes \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXcomposite \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXrender \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXdamage \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXcursor \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXevie \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXfont \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXft \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXi \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXinerama \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libxkbfile \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXrandr \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXres \
b0e8629055a766d4555a005a283c2889a5974945Mark Andrews libXScrnSaver \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXtsol \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXtst \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXv \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXvMC \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXxf86misc \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXxf86vm \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein mesa \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein pixman \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein hwc
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinOS_SUBDIRS_sparc = $(OS_SUBDIRS_common)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
a1b05dea35aa30b152a47115e18bbe679d3fcf19Mark AndrewsOS_SUBDIRS_i386 = $(OS_SUBDIRS_common)
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinOBSOLETE_SUBDIRS = \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXlg3d \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXprintUtil \
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein libXprintAppUtil
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinPWD:sh=pwd
d71e2e0c61df16ff37c9934c371a4a60c08974f7Mark AndrewsTOP=$(PWD)/../..
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein### Include common definitions
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob AusteinDIRNAME="lib/"
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austeininclude $(TOP)/open-src/common/Makefile.subdirs
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein
60e5e10f8d2e2b0c41e8abad38cacd867caa6ab2Rob Austein