0N/A# Makefile for X Consolidation Open Source bits
2362N/A#
0N/A# Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
0N/A#
0N/A# Permission is hereby granted, free of charge, to any person obtaining a
0N/A# copy of this software and associated documentation files (the "Software"),
2362N/A# to deal in the Software without restriction, including without limitation
0N/A# the rights to use, copy, modify, merge, publish, distribute, sublicense,
2362N/A# and/or sell copies of the Software, and to permit persons to whom the
0N/A# Software is furnished to do so, subject to the following conditions:
0N/A#
0N/A# The above copyright notice and this permission notice (including the next
0N/A# paragraph) shall be included in all copies or substantial portions of the
0N/A# Software.
0N/A#
0N/A# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
0N/A# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
0N/A# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
0N/A# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
0N/A# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
2362N/A# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
2362N/A# DEALINGS IN THE SOFTWARE.
2362N/A#
0N/A#
0N/A###############################################################################
0N/A#
0N/A
0N/A# Need to install to proto area by default for inter-package dependencies to
0N/A# work right.
0N/Adefault_target: install
0N/A
0N/A# Modules have to be built in a specific order for dependencies to be
0N/A# handled properly
0N/A
0N/A# Some specific notes:
0N/A# - app/rgb depends on the rgb.h header installed by the Xorg xserver,
0N/A# so has to be built after xserver/xorg
0N/A# - util/util-macros must be first, since any module that does autoreconf
0N/A# requires it
0N/A# - data/xbitmaps must be before app, as some applications depend on the
0N/A# bitmaps installed, but the rest of data depends on applications like
0N/A# xcursorgen for processing, so must come later
0N/A# - font depends on utils like mkfontdir from app
# High level dependencies
proto: util/util-macros util/lndir util/build-tools
util/lndir: proto/x11proto
lib: proto font/util util
util: proto font/util
app: lib data/xbitmaps font/util
xserver/xorg xserver/xvnc: proto doc/xorg-sgml-doctools lib font/util
driver: xserver/xorg
app/rgb: xserver/xorg
doc/xorg-docs: doc/xorg-sgml-doctools
data: app
FONTAPPS = app/bdftopcf app/mkfontscale app/mkfontdir
font: $(FONTAPPS) font/util
$(FONTAPPS): lib
OS_SUBDIRS_common = \
util/util-macros \
util/build-tools \
proto/x11proto \
util/lndir \
proto \
data/xbitmaps \
font/util \
util \
doc/xorg-sgml-doctools \
doc/xorg-docs \
lib \
app \
$(FONTAPPS) \
xserver/xorg \
xserver/xvnc \
xserver/xserver-common \
driver \
kernel \
app/rgb \
data \
font
OS_SUBDIRS_sparc = $(OS_SUBDIRS_common)
OS_SUBDIRS_i386 = $(OS_SUBDIRS_common)
# Subdirs we used to build, but now just need to clean up
OBSOLETE_SUBDIRS = \
doc/docbook-utils
PWD:sh=pwd
TOP=$(PWD)/..
### Include common definitions
DIRNAME=""
include $(TOP)/open-src/common/Makefile.subdirs
PROTOTOP=$(TOP)/proto
PROTODIR=$(PROTOTOP)/root_$(MACH)
check: check_rtime
# check_rtime script from onbld to check binaries are built with the right
# linker flags
check_rtime:
check_rtime -e ../exception_lists/check_rtime -d $(PROTODIR) $(PROTODIR)
# This is generated here instead of in $(TOP)/Makefile so that it has access
# to the variables defined in Makefile.init like $(GCC)
include $(TOP)/open-src/common/Makefile.init
$(TOP)/BUILD_INSTRUCTIONS.txt: $(TOP)/BUILD_INSTRUCTIONS
-rm -f $(@)
cp $(TOP)/BUILD_INSTRUCTIONS $(@)
printf '\nThe software in this package was built using:\n\n' >> $(@)
(for tool in cc CC fbe lint ; do \
$${tool} -V 2>&1 | head -1 ; \
done) >> $(@)
dmake -v >> $(@)
(for tool in ${GCC} gmake autoconf automake libtool ${PERL} ${PYTHON} hg ; do \
printf "%s: " "$$(whence $${tool})" ; \
$${tool} --version | head -1 ; \
done) >> $(@)
printf '\non a machine installed with:\n\n' >> $(@)
pkg list '*-incorporation' >> $(@)