--- a/buildit Tue Oct 13 15:30:00 2009 -0700
+++ b/buildit Thu Oct 15 20:19:43 2009 -0700
@@ -6,6 +6,7 @@
###########################################################################
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -34,12 +35,12 @@
#
###########################################################################
#
-# ident "@(#)buildit 1.8 09/05/15 SMI"
+# ident "@(#)buildit 1.10 09/10/27 SMI"
#
MAKE_PKGS=0
-set -- `getopt p $*`
+set -- $(getopt p $*)
if [ $? != 0 ]
then
echo USAGE: $0 [-p]
@@ -52,12 +53,11 @@
esac
done
-
# Add /usr/bin to front of path in case user has /usr/gnu/bin default
# Add /usr/sbin to path for dtrace
# Add /usr/X11/bin to path for makedepend
-PATH=/usr/bin:$PATH:/usr/sbin:/usr/X11/bin
+PATH=/usr/bin:${PATH}:/usr/sbin:/usr/X11/bin
export PATH
[ -d log ] || mkdir log
@@ -68,7 +68,7 @@
echo "------------------------------------------------------------------------------"
echo "Start time: "
date
-START=`perl -e 'print time'`
+START="$(perl -e 'print time')"
echo "Building on: "
uname -a
echo "Using these compilers: "
@@ -78,23 +78,29 @@
print $_ ; print "*** Compiler too old!\n" if ( ($1 != 5) || ($2 < 9) ) }'
gcc -v
-# Exported to reduce number of times it's evaluated in makefiles
-export POUND_SIGN='#'
+# Exported to stop Sun compilers from reporting home on each usage
+export SUNW_NO_UPDATE_NOTIFY='true'
+export UT_NO_USAGE_TRACKING='1'
echo "Using these environment variables: "
env
echo "------------------------------------------------------------------------------"
-MACH=`uname -p`
-if [ "$MACH" = "i386" ]; then
+
+XMAKE="$(pwd)/open-src/util/build-tools/xmake"
+chmod +x ${XMAKE}
+
+MACH="$(uname -p)"
+if [ "${MACH}" = "i386" ]; then
/bin/rm -rf proto-i386-svr4
else
/bin/rm -rf proto-sun4-svr4
fi
+chmod +x open-src/common/install-sh open-src/common/delibtoolize.pl
cd open-src
-make -k clean install
+${XMAKE} -v -k clean install
cd ..
echo ""
@@ -103,13 +109,11 @@
echo ""
echo "Finish time: "
date
-perl -e '$runtime=time-$ARGV[0];printf("Runtime: %d:%02d\n", $runtime/3600, ($runtime%3600)/60); ' $START
+perl -e '$runtime=time-$ARGV[0]; printf("Runtime: %d:%02d\n", $runtime/3600, ($runtime%3600)/60); ' "${START}"
-if [ $MAKE_PKGS = 1 ] ; then
- PACKAGE_LIST=`cd packages && echo SUNW* FSW*`
- export PACKAGE_LIST
+if [ "${MAKE_PKGS}" = 1 ] ; then
+ export PACKAGE_LIST="$(cd packages && echo SUNW* FSW*)"
chmod +x make_release_packages
mkdir packages/common_files
./make_release_packages
fi
-
--- a/open-src/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
# Makefile for X Consolidation Open Source bits
#
-# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -28,11 +28,15 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.22 08/08/08
+# ident "@(#)Makefile 1.23 09/10/13 SMI"
#
###############################################################################
#
+# Need to install to proto area by default for inter-package dependencies to
+# work right.
+default_target: install
+
# Modules have to be built in a specific order for dependencies to be
# handled properly
@@ -44,6 +48,17 @@
# - data/xbitmaps must be before app, as some applications depend on the
# bitmaps installed, but the rest of data depends on applications like
# xcursorgen for processing, so must come later
+# - font depends on utils like mkfontdir from app
+
+# High level dependencies
+proto: util/util-macros
+lib: proto
+app: lib data/xbitmaps
+xserver: proto doc lib
+driver: xserver
+app/rgb: xserver
+data: app
+font: app
OS_SUBDIRS_common = \
util/util-macros \
@@ -62,10 +77,6 @@
OS_SUBDIRS_sparc = $(OS_SUBDIRS_common)
OS_SUBDIRS_i386 = $(OS_SUBDIRS_common)
-# Need to install to proto area by default for inter-package dependencies to
-# work right.
-default_target: install
-
PWD:sh=pwd
TOP=$(PWD)
--- a/open-src/app/mesa-demos/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/app/mesa-demos/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -58,7 +58,9 @@
GLXINFO_BIN=$(SOURCE_DIR)/progs/xdemos/glxinfo
# configure script is run in ../lib/mesa build, just link to results here
-CONFIGURE_TARGETS=$(SOURCE_DIR)/configs/current
+CONFIGURE_TARGETS_sparc=
+CONFIGURE_TARGETS_i386=$(SOURCE_DIR)/configs/current
+CONFIGURE_TARGETS= $(CONFIGURE_TARGETS_$(MACH))
CONFIGURE_TARGETS_SET=yes
# What to build
--- a/open-src/app/xmakemap/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/app/xmakemap/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
###############################################################################
#
-# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -37,11 +37,12 @@
SOURCE_TARBALL_NAME_SET=yes
ADDITIONAL_SOURCE_DIR=sun-src
-# Don't need default targets for make build or make install, since there's
+# Don't need default targets for configure, build, or install, since there's
# nothing to build, and the install rule follows here
-BUILD_TARGETS = $(SOURCE_TARGETS)
+CONFIGURE_TARGETS =
+CONFIGURE_TARGETS_SET=yes
+BUILD_TARGETS =
BUILD_TARGETS_SET=yes
-
INSTALL_TARGETS =
INSTALL_TARGETS_SET=yes
--- a/open-src/common/Makefile.inc Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/common/Makefile.inc Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
# -*- Makefile -*- rules commonly shared among X consolidation open source dirs
#
-# Copyright 2009 Sun Microsystems, Inc. All Rights Reserved.
-# Use subject to license terms.
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -28,7 +28,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile.inc 1.99 09/05/15
+# ident "@(#)Makefile.inc 1.100 09/10/13 SMI"
#
### Default rules
@@ -45,6 +45,9 @@
MODULE_MAKE_DEFAULT = $(MODULE_MAKE_SET:yes=$(POUND_SIGN))
$(MODULE_MAKE_DEFAULT) MODULE_MAKE = $(MODTYPE_MAKE)
+# Enable parallel make for gmake built modules too
+#MAKEFLAGS += -j $(DMAKE_MAX_JOBS)
+
# Where to install files
MODTYPE_PREFIX_DEFAULT = $(MODTYPE_PREFIX_SET:yes=$(POUND_SIGN))
$(MODULE_PREFIX_DEFAULT) MODTYPE_PREFIX=$(X11_DIR)
@@ -106,11 +109,16 @@
$(MODULE_ADD_INSTALL_TARGETS)
# Additional flags to pass to make in 32-bit & 64-bit builds
-BUILD_32_FLAGS= BUILD_DIR=$(BUILD_DIR_32) ARCH_FLAGS="$(ARCH32_FLAGS)" \
- BUILD_TYPE=32 $(MODTYPE_BUILD_32_FLAGS) $(MODULE_BUILD_32_FLAGS)
+BUILD_DIR_32_FLAGS= BUILD_DIR=$(BUILD_DIR_32) BUILD_TYPE=32
+
+BUILD_DIR_64_FLAGS= BUILD_DIR=$(BUILD_DIR_64) BUILD_TYPE=64 \
+ LIBSUBDIR=/$(SUBDIR64) ARCHLIBSUBDIR=/$(SUBDIR64)
-BUILD_64_FLAGS= BUILD_DIR=$(BUILD_DIR_64) ARCH_FLAGS="$(ARCH64_FLAGS)" \
- BUILD_TYPE=64 $(MODTYPE_BUILD_64_FLAGS) $(MODULE_BUILD_64_FLAGS)
+BUILD_32_FLAGS= $(BUILD_DIR_32_FLAGS) ARCH_FLAGS="$(ARCH32_FLAGS)" \
+ $(MODTYPE_BUILD_32_FLAGS) $(MODULE_BUILD_32_FLAGS)
+
+BUILD_64_FLAGS= $(BUILD_DIR_64_FLAGS) ARCH_FLAGS="$(ARCH64_FLAGS)" \
+ $(MODTYPE_BUILD_64_FLAGS) $(MODULE_BUILD_64_FLAGS)
all: $(BUILD_TYPES:%=source_%) $(BUILD_TYPES:%=build_%)
all_32: source_32 configure_32 build_32
@@ -130,31 +138,31 @@
source_32: $(SOURCE_DIR_32)/$(UNPACK_FILE)
$(SOURCE_DIR_32)/$(UNPACK_FILE):
- $(MAKE) $(MAKEFLAGS) BUILD_DIR=$(BUILD_DIR_32) source_gen
+ $(MAKE) $(MAKEFLAGS) $(BUILD_DIR_32_FLAGS) source_gen
source_64: $(SOURCE_DIR_64)/$(UNPACK_FILE)
$(SOURCE_DIR_64)/$(UNPACK_FILE):
- $(MAKE) $(MAKEFLAGS) BUILD_DIR=$(BUILD_DIR_64) source_gen
+ $(MAKE) $(MAKEFLAGS) $(BUILD_DIR_64_FLAGS) source_gen
configure: $(BUILD_TYPES:%=configure_%)
configure_gen: $(CONFIGURE_TARGETS)
-configure_32::
+configure_32:: source_32
$(MAKE) $(MAKEFLAGS) $(BUILD_32_FLAGS) configure_gen
-configure_64::
- $(MAKE) $(MAKEFLAGS) LIBSUBDIR=/$(SUBDIR64) ARCHLIBSUBDIR=/$(SUBDIR64) $(BUILD_64_FLAGS) configure_gen
+configure_64:: source_64
+ $(MAKE) $(MAKEFLAGS) $(BUILD_64_FLAGS) configure_gen
build: $(BUILD_TYPES:%=build_%)
build_gen: $(BUILD_TARGETS)
-build_32::
+build_32:: configure_32
$(MAKE) $(MAKEFLAGS) $(BUILD_32_FLAGS) build_gen
-build_64::
- $(MAKE) $(MAKEFLAGS) LIBSUBDIR=/$(SUBDIR64) ARCHLIBSUBDIR=/$(SUBDIR64) $(BUILD_64_FLAGS) build_gen
+build_64:: configure_64
+ $(MAKE) $(MAKEFLAGS) $(BUILD_64_FLAGS) build_gen
install: $(BUILD_TYPES:%=install_%)
@@ -164,7 +172,7 @@
$(MAKE) $(MAKEFLAGS) $(BUILD_32_FLAGS) install_gen
install_64:: build_64
- $(MAKE) $(MAKEFLAGS) LIBSUBDIR=/64 ARCHLIBSUBDIR=/$(SUBDIR64) $(BUILD_64_FLAGS) install_gen
+ $(MAKE) $(MAKEFLAGS) $(BUILD_64_FLAGS) install_gen
DEBUG_BUILD_FLAGS = BUILD_DEBUG=yes
@@ -313,8 +321,7 @@
# Command line options to GNU autoconf configure script
DEFAULT_CONFIG_OPTS = --prefix=$(MODULE_PREFIX) \
- --mandir='$${prefix}/share/man' --localstatedir=/var \
- --disable-libtool-lock
+ --mandir='$${prefix}/share/man' --localstatedir=/var
CONFIG_OPTS = $(DEFAULT_CONFIG_OPTS) \
$(MODTYPE_CONFIG_OPTS) $(MODULE_CONFIG_OPTS)
@@ -392,8 +399,13 @@
LD_OPTIONS = -L$(PROTODIR)$(X11_DIR)/lib$(LIBSUBDIR) \
$(MODTYPE_LD_OPTIONS) $(MODULE_LD_OPTIONS)
+# MKDIRPROG - Workaround parallel build race condition
+# in older upstream packaged install-sh
+
BUILD_ENV = LD_OPTIONS='$(LD_OPTIONS)' \
PROTODIR='$(PROTODIR)' \
+ MAKE='$(MODULE_MAKE)' \
+ MKDIRPROG='mkdir -p' \
$(MODTYPE_BUILD_ENV) $(MODULE_BUILD_ENV)
DEFAULT_BUILD_MAKEFLAGS=$(MODTYPE_MAKEFLAGS) $(MODULE_MAKEFLAGS) \
@@ -406,7 +418,7 @@
print_default_build_flags:
@print "BUILD_ENV='$(BUILD_ENV)'" ; \
print "MAKE='$(MODULE_MAKE)'" ; \
- print "MAKE_FLAGS='$(MAKEFLAGS) $(DEFAULT_BUILD_MAKEFLAGS)'"
+ print "MAKEFLAGS='$(MAKEFLAGS) $(DEFAULT_BUILD_MAKEFLAGS)'"
build-in-subdir:
(cd $(subdir) ; \
@@ -443,7 +455,7 @@
-e 's|^sdkdir=|sdkdir=$$protodir|g;' \
-e 's|$$protodir\$${sdkdir}|\$${sdkdir}|g;'
-install_pkgconfig_uninstalled:
+install_pkgconfig_uninstalled: $(INSTALL_TARGETS)
@ if [[ ! -z "$(FIX_PC_FILES)" ]] ; then \
cd $(SOURCE_DIR) ; \
for pcin in $(FIX_PC_FILES:.in=) ; do \
@@ -462,7 +474,7 @@
$(BUILD_DEBUG:yes=$(POUND_SIGN)) DEBUG_ELF_COMMENTS=
ELF_COMMENTS += $(DEBUG_ELF_COMMENTS)
-set-elf-comments:
+set-elf-comments: $(BUILD_TARGETS:set-elf-comments=)
$(TOP)/common/set-elf-comments.pl -B $(TOP)/../packages/pkgversion \
-M '$(ELF_COMMENTS)' $(SOURCE_DIR)
--- a/open-src/common/Makefile.init Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/common/Makefile.init Thu Oct 15 20:19:43 2009 -0700
@@ -29,7 +29,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile.init 1.12 09/10/08
+# ident "@(#)Makefile.init 1.13 09/10/13 SMI"
#
# Use ksh93 for shell commands in Makefiles so that builds are the same
@@ -40,16 +40,12 @@
# Borrowed from Solaris OS/Net makefile.master:
# The declaration POUND_SIGN is always '#'. This is needed to get around the
# make feature that '#' is always a comment delimiter, even when escaped or
-# quoted. The only way of generating this is the :sh macro mechanism. Note
-# however that in general :sh macros should be avoided in makefiles that are
-# widely included into other makefiles, as the resulting shell executions can
-# cause a noticable slowdown in build times.
+# quoted. We use this macro expansion method to get POUND_SIGN rather than
+# always breaking out a shell because the general case can cause a noticable
+# slowdown in build times when so many Makefiles include Makefile.init.
#
-# The extra $(POUND_SIGN) in front keeps us from spending time doing
-# additional shell executions once it's already defined. (See CR 6589104,
-# credit to Casper Dik for the idea.)
-#
-$(POUND_SIGN)POUND_SIGN:sh= echo \\043
+PRE_POUND= pre\#
+POUND_SIGN= $(PRE_POUND:pre\%=%)
# Set default build target to all
default:: all
@@ -60,7 +56,7 @@
### Machine architecture macros
# MACH will be either "sparc" or "i386"
-MACH:sh=uname -p
+MACH=$(TARGET_ARCH:-%=%)
# ARCH will be either "sun4" or "i386" - mainly used in $(PROTODIR)
ARCH=$(MACH:sparc=sun4)
--- a/open-src/common/Makefile.subdirs Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/common/Makefile.subdirs Thu Oct 15 20:19:43 2009 -0700
@@ -1,8 +1,8 @@
# -*- Makefile -*- rules commonly shared among X consolidation open source dirs
# Makefile.subdirs has rules for recursively iterating through module subdirs
#
-# Copyright 2009 Sun Microsystems, Inc. All Rights Reserved.
-# Use subject to license terms.
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -29,7 +29,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile.subdirs 1.3 09/05/15
+# ident "@(#)Makefile.subdirs 1.4 09/10/13 SMI"
#
# Need to set $MACH
@@ -46,13 +46,13 @@
$(MAKE) $(MAKEFLAGS) subdirs OS_TARGET=clean
$(MAKE) $(MAKEFLAGS) clean-obsolete-subdirs
-subdirs:
+subdirs: $(OS_SUBDIRS)
+
+$(OS_SUBDIRS): ALWAYS_RUN
@case '${MAKEFLAGS}' in *[ik]*) set +e;; esac; \
- for i in $(OS_SUBDIRS) ; do \
- (cd $$i ; \
- print "## making" $(OS_TARGET) "in open-src/$(DIRNAME)$$i..."; \
- $(MAKE) $(MAKEFLAGS) CDEBUGFLAGS="$(CDEBUGFLAGS)" $(OS_TARGET)); \
- done
+ cd $@ ; \
+ print "## making" $(OS_TARGET) "in open-src/$(DIRNAME)$@..."; \
+ $(MAKE) $(MAKEFLAGS) CDEBUGFLAGS="$(CDEBUGFLAGS)" $(OS_TARGET)
clean-obsolete-subdirs:
@case '${MAKEFLAGS}' in *[ik]*) set +e;; esac; \
@@ -64,9 +64,16 @@
else ; \
print "## removing obsolete build directories in open-src/$(DIRNAME)$$i..."; \
(set -x ; cd $$i && rm -rf build_32 build_64 ) ; \
- (set -x ; rmdir $$i ) ; \
+ (set -x ; rmdir $$i/SCCS $$i ) ; \
fi ; \
fi ; \
done ; \
fi ; \
return 0
+
+# Dummy target to force another target to always be run, even if a file
+# or directory with the same name already exists (as it will for subdirs)
+ALWAYS_RUN:
+
+# Tell dmake it can build subdirs in parallel
+.PARALLEL: $(OS_SUBDIRS)
--- a/open-src/data/workspace-patterns/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/data/workspace-patterns/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
###############################################################################
#
-# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -36,6 +36,9 @@
SOURCE_TARBALL_NAME=NONE
SOURCE_TARBALL_NAME_SET=yes
+CONFIGURE_TARGETS =
+CONFIGURE_TARGETS_SET=yes
+
BUILD_TARGETS =
BUILD_TARGETS_SET=yes
--- a/open-src/doc/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/doc/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
# Makefile for X Consolidation Open Source Documentation tools & modules
#
-# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -28,7 +28,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.4 08/08/08
+# ident "@(#)Makefile 1.5 09/10/13 SMI"
#
###############################################################################
@@ -44,6 +44,10 @@
# work right.
default_target: install
+# Dependencies for parallel make
+xorg-docs: docbook-utils xorg-sgml-doctools
+docbook-utils: xorg-sgml-doctools
+
PWD:sh=pwd
TOP=$(PWD)/..
--- a/open-src/doc/xorg-docs/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/doc/xorg-docs/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
###############################################################################
#
-# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -28,7 +28,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.5 08/08/08
+# ident "@(#)Makefile 1.6 09/10/13 SMI"
#
# Package name used in tarballs
@@ -67,7 +67,7 @@
MAN_DIR=$(PROTODIR)$(X11_MAN_DIR)
install_gen::
- mkdir -p $(DOC_DIR) $(MAN_DIR)
+ mkdir -p $(DOC_DIR) $(MAN_DIR)/man5
cp -p $(SGML_DIR)/LICENSE.txt $(DOC_DIR)/LICENSE
cp -p $(SGML_DIR)/RELNOTES.txt $(DOC_DIR)/RELNOTES
cp -p $(SGML_DIR)/input/XKB-Config.txt $(DOC_DIR)/README.XKB-Config
--- a/open-src/driver/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/driver/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
# Makefile for X Consolidation Open Source Xorg driver modules
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -28,7 +28,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.14 09/07/17
+# ident "@(#)Makefile 1.15 09/10/13 SMI"
#
###############################################################################
@@ -106,3 +106,7 @@
### Include common definitions
DIRNAME="driver/"
include $(TOP)/common/Makefile.subdirs
+
+# Dependencies between modules
+xf86-input-vmmouse: xf86-input-mouse
+
--- a/open-src/font/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/font/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
# Makefile for X Consolidation Open Source font modules
#
-# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -28,21 +28,23 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.10 09/02/26
+# ident "@(#)Makefile 1.11 09/10/13 SMI"
#
###############################################################################
-# encodings must be first, since it installs files used to build the rest
+# Need to install to proto area by default for inter-package dependencies to
+# work right.
+default_target: install
+
+# encodings & util must be first, since they install files used by the rest
# catalogue-dirs must be last, since it remixes the results of the rest
-OS_SUBDIRS_common = \
- encodings \
+FONT_SUBDIRS= \
sun-aliases \
bitstream-vera \
deja-vu \
google-droid \
liberation \
- util \
adobe-75dpi \
adobe-100dpi \
adobe-utopia-75dpi \
@@ -78,8 +80,16 @@
sun-misc \
winitzki-cyrillic \
xfree86-type1 \
+
+OS_SUBDIRS_common = \
+ encodings \
+ util \
+ $(FONT_SUBDIRS) \
catalogue-dirs
+$(FONT_SUBDIRS): encodings util
+catalogue-dirs: $(FONT_SUBDIRS)
+
OS_SUBDIRS_sparc = $(OS_SUBDIRS_common)
OS_SUBDIRS_i386 = $(OS_SUBDIRS_common)
--- a/open-src/font/bitstream-vera/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/font/bitstream-vera/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -3,7 +3,7 @@
# Bitstream Vera Fonts Makefile
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -30,7 +30,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.7 09/02/26
+# ident "@(#)Makefile 1.8 09/10/13 SMI"
#
# Package name used in tarballs
@@ -46,6 +46,10 @@
# Patches to apply to source after unpacking, in order
SOURCE_PATCHES= # None
+# No configure script to run
+CONFIGURE_TARGETS=
+CONFIGURE_TARGETS_SET=yes
+
# What to build
BUILD_TARGETS=$(SOURCE_DIR)/fonts.scale
BUILD_TARGETS_SET=yes
--- a/open-src/font/catalogue-dirs/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/font/catalogue-dirs/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
###############################################################################
#
-# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -36,6 +36,10 @@
SOURCE_TARBALL_NAME=NONE
SOURCE_TARBALL_NAME_SET=yes
+# No configure script to run
+CONFIGURE_TARGETS=
+CONFIGURE_TARGETS_SET=yes
+
SOURCE_TARGETS =
SOURCE_TARGETS_SET=yes
--- a/open-src/font/deja-vu/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/font/deja-vu/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -3,7 +3,7 @@
# Deja Vu Fonts Makefile
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -30,7 +30,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.10 09/08/17
+# ident "@(#)Makefile 1.11 09/10/13 SMI"
#
# Package name used in tarballs
@@ -46,6 +46,10 @@
# Patches to apply to source after unpacking, in order
SOURCE_PATCHES= # None
+# No configure script to run
+CONFIGURE_TARGETS=
+CONFIGURE_TARGETS_SET=yes
+
# What to build
BUILD_TARGETS=$(SOURCE_DIR)/ttf/fonts.scale
BUILD_TARGETS_SET=yes
--- a/open-src/font/encodings/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/font/encodings/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
###############################################################################
#
-# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -28,7 +28,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.3 08/08/08
+# ident "@(#)Makefile 1.4 09/10/13 SMI"
#
# Package name used in tarballs
@@ -45,6 +45,3 @@
### Include common rulesets
include ../Makefile.inc
-
-install_gen::
- (cd $(PROTODIR)/$(X11_DIR)/lib/X11/fonts/encodings && LD_LIBRARY_PATH=$(PROTODIR)$(X11_SERVERLIBS_DIR)$(ARCHLIBSUBDIR) $(PROTODIR)$(X11_DIR)/bin/mkfontscale -b -s -l -n -r -p $(X11_DIR)/lib/X11/fonts/encodings -e . -e large .)
--- a/open-src/font/google-droid/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/font/google-droid/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -3,7 +3,7 @@
# Droid Fonts Makefile
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -30,7 +30,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.1 09/02/26 SMI
+# ident "@(#)Makefile 1.2 09/10/13 SMI"
#
# Package name used in tarballs
@@ -55,6 +55,10 @@
# Patches to apply to source after unpacking, in order
SOURCE_PATCHES= # None
+# No configure script to run
+CONFIGURE_TARGETS=
+CONFIGURE_TARGETS_SET=yes
+
# What to build
BUILD_TARGETS=$(SOURCE_DIR)/fonts.scale
BUILD_TARGETS_SET=yes
--- a/open-src/font/liberation/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/font/liberation/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -3,7 +3,7 @@
# Liberation Fonts Makefile
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -30,7 +30,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.6 09/02/26 SMI
+# ident "@(#)Makefile 1.7 09/10/13 SMI"
#
# Package name used in tarballs
@@ -51,6 +51,10 @@
# Patches to apply to source after unpacking, in order
SOURCE_PATCHES= # None
+# No configure script to run
+CONFIGURE_TARGETS=
+CONFIGURE_TARGETS_SET=yes
+
# What to build
BUILD_TARGETS=$(SOURCE_DIR)/fonts.scale
BUILD_TARGETS_SET=yes
--- a/open-src/font/sun-aliases/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/font/sun-aliases/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
###############################################################################
#
-# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -36,6 +36,9 @@
SOURCE_TARBALL_NAME=NONE
SOURCE_TARBALL_NAME_SET=yes
+CONFIGURE_TARGETS =
+CONFIGURE_TARGETS_SET=yes
+
BUILD_TARGETS =
BUILD_TARGETS_SET=yes
--- a/open-src/lib/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/lib/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -28,10 +28,14 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.31 09/07/14
+# ident "@(#)Makefile 1.32 09/10/13 SMI"
#
###############################################################################
+# Need to install to proto area by default for inter-package dependencies to
+# work right.
+default_target: install
+
# Order copied from X.Org's util/modular/build.sh:
# the libraries have a dependency order:
# xtrans, Xau, Xdmcp before anything else
@@ -41,11 +45,43 @@
# (X11 and SM) before Xt
# Xt before Xmu and Xpm and Xtst
# Xext before any other extension library, including mesa
-# Xfixes before Xcomposite
-# Xp before XprintUtil before XprintAppUtil
+# Xfixes before Xcomposite, Xcursor or Xdamage
# libpthread-stubs before libdrm (and in the future, before xcb)
# libdrm before mesa
+# Dependencies needed for parallel make:
+fontconfig: freetype
+libdrm: libpthread-stubs
+libFS: libxtrans
+libICE: libxtrans
+libSM: libxtrans libICE
+libX11: libxtrans libXau libXdmcp
+libXaw: libX11 libXt libXmu libXpm
+libXcomposite: libX11 libXext libXfixes
+libXcursor: libX11 libXfixes libXrender
+libXdamage: libXfixes
+libXevie: libX11 libXext
+libXext: libX11 libXau
+libXfont: libxtrans freetype libfontenc
+libXft: freetype fontconfig libXrender
+libXi: libX11 libXext
+libXinerama: libX11 libXext
+libXlg3d: libX11 libXfixes libXext
+libXmu: libX11 libXt libXext
+libXp: libX11 libXext
+libXpm: libX11 libXt
+libXrandr: libX11 libXext libXrender
+libXres: libX11 libXext
+libXt: libX11 libSM
+libXtst: libX11 libXext
+libXv: libX11 libXext
+libXvMC: libX11 libXext
+libXxf86misc: libX11 libXext
+libXxf86vm: libX11 libXext
+libxkbfile: libX11
+libxkbui: libX11 libXt libxkbfile
+mesa: libdrm libX11 libXext
+
OS_SUBDIRS_common = \
freetype \
fontconfig \
@@ -109,3 +145,4 @@
### Include common definitions
DIRNAME="lib/"
include $(TOP)/common/Makefile.subdirs
+
--- a/open-src/lib/Makefile.inc Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/lib/Makefile.inc Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
# -*- Makefile -*- rules common to most X.Org library modules
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -28,7 +28,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile.inc 1.13 09/05/15
+# ident "@(#)Makefile.inc 1.14 09/10/13 SMI"
#
PWD:sh=pwd
@@ -81,7 +81,9 @@
LIB_INST_DIR=$(PROTODIR)$(MODULE_PREFIX)/lib$(MODULE_ADD_LIB_SUBDIR)
-install_64::
- -/bin/rm -f $(LIB_INST_DIR)/64
- ln -s $(SUBDIR64) $(LIB_INST_DIR)/64
+install_64:: $(LIB_INST_DIR)/64
+$(LIB_INST_DIR)/64:
+ mkdir -p $(LIB_INST_DIR)
+ /bin/ln -s $(SUBDIR64) $(LIB_INST_DIR)/64 || true
+
--- a/open-src/lib/fontconfig/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/lib/fontconfig/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -3,7 +3,7 @@
# Fontconfig 2.x Makefile
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -30,7 +30,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.81 09/09/09
+# ident "@(#)Makefile 1.82 09/10/13 SMI"
#
# Package name used in tarballs
@@ -114,7 +114,7 @@
( cd $(SOURCE_DIR) ; \
./config.status --file fonts.conf )
-install_gen:: $(SOURCE_DIR)/fonts.conf-SUNW
+install_gen:: default_install $(SOURCE_DIR)/fonts.conf-SUNW
rm $(PROTODIR)/etc/fonts/fonts.conf
cp $(SOURCE_DIR)/fonts.conf-SUNW $(PROTODIR)/etc/fonts/fonts.conf
@@ -133,7 +133,7 @@
FC_MAN_DIR=$(PROTODIR)/usr/share/man
-fontconfig-sunman-install:
+fontconfig-sunman-install: default_install
mkdir -p $(FC_MAN_DIR)/man4 $(FC_MAN_DIR)/man3lib
sed -e 's/.TH "FONTS-CONF" "5"/.TH "fonts.conf" "4"/' \
-e 's/SUNWfontconfig/SUNWfontconfig-root/' \
--- a/open-src/lib/freetype/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/lib/freetype/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -3,7 +3,7 @@
# Freetype 2.x Makefile
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -30,7 +30,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.79 09/08/30
+# ident "@(#)Makefile 1.80 09/10/13 SMI"
#
PWD:sh=pwd
@@ -150,6 +150,7 @@
install_64::
-/bin/rm -f $(BIN_INST_DIR)/64
+ mkdir -p $(BIN_INST_DIR)
ln -s $(SUBDIR64) $(BIN_INST_DIR)/64
--- a/open-src/lib/libX11/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/lib/libX11/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -3,7 +3,7 @@
# X11 1.x Makefile
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -30,7 +30,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.22 09/04/15
+# ident "@(#)Makefile 1.23 09/10/13 SMI"
#
# Package name used in tarballs
@@ -144,14 +144,9 @@
include ../Makefile.inc
-install_gen::
- mkdir -p $(PROTODIR)/usr/X11/lib$(ARCHLIBSUBDIR)
- -rm -f $(PROTODIR)/usr/X11/lib$(ARCHLIBSUBDIR)/libX11.so
- ln -s libX11.so.4 $(PROTODIR)/usr/X11/lib$(ARCHLIBSUBDIR)/libX11.so
-
# Install additional headers we need in other parts of the build or ship in
# packages, but which X.Org doesn't
-install_32::
+install_32:: build_32
mkdir -p $(PROTODIR)/usr/X11/include/X11/extensions
cp -pf sun-src/include/X11/Xvarargs.h $(PROTODIR)/usr/X11/include/X11/
cp -pf sun-src/include/X11/extensions/XInteractive.h \
--- a/open-src/lib/libXaw/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/lib/libXaw/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -30,7 +30,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.6 09/07/31
+# ident "@(#)Makefile 1.7 09/10/15 SMI"
#
# Package name used in tarballs
@@ -63,10 +63,8 @@
# started shipping the now-dropped-by-X.Org libXaw.so.8 (Xaw + Xprint)
MODULE_CONFIG_OPTS= --disable-xaw6
-# Remove existing Xaw headers from proto area before build to avoid conflicts
-MODULE_BUILD_DEPS = remove-old-headers
-
include ../Makefile.inc
-remove-old-headers:
+# Remove existing Xaw headers from proto area before build to avoid conflicts
+clean::
rm -rf $(PROTODIR)$(X11_INCLUDES_DIR)/X11/Xaw
--- a/open-src/lib/libpciaccess/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/lib/libpciaccess/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -3,7 +3,7 @@
# libpciaccess Makefile
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -60,10 +60,14 @@
# Activate additional debugging code in debug builds
MODULE_DEBUG_FLAGS=-DDEBUG
+# Additional targets for scanpci
+MODULE_ADD_SOURCE_TARGETS = source_scanpci_man
+MODULE_ADD_INSTALL_TARGETS = install_scanpci
+
include ../Makefile.inc
# Update scanpci.man with program man page flags instead of library ones
-source_gen::
+source_scanpci_man:: default_source
(cd $(SOURCE_DIR) && \
/usr/perl5/bin/perl $(TOP)/common/suntouch-manpages.pl \
-a '{Availability, $(SUN_PACKAGE)}' \
@@ -74,7 +78,7 @@
src/scanpci.man > src/scanpci.1 )
# We want to install scanpci, even though the upstream Makefile doesn't
-install_gen::
+install_scanpci:: default_install
mkdir -p $(PROTODIR)$(MODULE_PREFIX)/bin$(ARCHLIBSUBDIR) \
$(PROTODIR)$(MODULE_PREFIX)/share/man/man1
$(INSTALL_SCRIPT) -m 755 $(SOURCE_DIR)/src/scanpci \
--- a/open-src/proto/Makefile.inc Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/proto/Makefile.inc Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
# -*- Makefile -*- rules common to most X.Org protocol modules
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -28,7 +28,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile.inc 1.8 09/05/15
+# ident "@(#)Makefile.inc 1.9 09/10/13 SMI"
#
PWD:sh=pwd
@@ -60,7 +60,7 @@
# Install
default_install::
(cd $(SOURCE_DIR) ; \
- $(MAKE) $(MFLAGS) -e DESTDIR=$(PROTODIR) pkgconfigdir=$(PKGCONFIG_DIR_64) install-pkgconfigDATA )
+ $(BUILD_ENV) $(MAKE) $(MFLAGS) -e DESTDIR=$(PROTODIR) pkgconfigdir=$(PKGCONFIG_DIR_64) install-pkgconfigDATA )
--- a/open-src/proto/sun-ext-protos/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/proto/sun-ext-protos/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
###############################################################################
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -29,7 +29,7 @@
# of the copyright holder.
#
#
-# ident "@(#)Makefile 1.3 09/05/15 SMI"
+# ident "@(#)Makefile 1.4 09/10/13 SMI"
#
# Definitions of Solaris-specific X Server extensions
@@ -38,6 +38,8 @@
SOURCE_TARBALL_NAME_SET=yes
# Don't need to configure or build these or install pkg-config files for them
+CONFIGURE_TARGETS=
+CONFIGURE_TARGETS_SET=yes
BUILD_TARGETS=
BUILD_TARGETS_SET=yes
INSTALL_TARGETS=
--- a/open-src/util/build-tools/find-build-errors Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/util/build-tools/find-build-errors Thu Oct 15 20:19:43 2009 -0700
@@ -29,7 +29,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# ident "@(#)find-build-errors 1.3 09/05/13 SMI"
+# ident "@(#)find-build-errors 1.4 09/10/13 SMI"
#
require 5.005; # minimal Perl version required
@@ -90,6 +90,7 @@
# Clear saved lines for each new module/subdir
if (($l =~ m{^\#\# making \S+ in \S+\.\.\.$}ms) || # open-src pattern
+ ($l =~ m{^dmake: Warning: Target `subdirs' not remade because of errors}ms) ||
($l =~ m{^\S+ing( \S+)* in \S+\.\.\.$}ms)) { # xc pattern
@steplines = ();
$found_error = 0;
@@ -110,7 +111,7 @@
next if ($l =~ m{\\\Z}ms);
# Found a new error?
- if ($l =~ m{\*\*\* }ms) {
+ if (($l =~ m{\*\*\* }ms) || ($l =~ m{^make: Fatal error}ms)) {
$found_error = 1;
# Print section header
@@ -125,13 +126,13 @@
my $sl = $steplines[$ln];
# print "lastmake: $lastmake, lastcom: $lastcommand, lastplus: $lastplus, line #$ln: $sl\n";
- if ($sl =~ m{\b(make|gmake)\b}ms) {
+ if ($sl =~ m{\b(make|dmake|gmake)\b}ms) {
$lastmake = $ln;
}
if ($sl =~ m{\breturned\b}ms) {
# don't treat this as a command
- } elsif ($sl =~ m{\b(cc|gcc|CC|g\+\+|ld|gpatch|libtool)\s+}ms) {
+ } elsif ($sl =~ m{\b(cc|gcc|CC|g\+\+|ld|gpatch|libtool|GEN|CCLD)\s+}ms) {
if ($sl !~ m{usage:}) {
$lastcommand = $ln;
}
--- a/open-src/util/build-tools/xmake Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/util/build-tools/xmake Thu Oct 15 20:19:43 2009 -0700
@@ -1,7 +1,7 @@
#! /usr/perl5/bin/perl -w
#
-# Copyright 2008 Sun Microsystems, Inc. All rights reserved.
+# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
@@ -13,7 +13,7 @@
# copyright notice(s) and this permission notice appear in all copies of
# the Software and that both the above copyright notice(s) and this
# permission notice appear in supporting documentation.
-#
+#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
@@ -23,23 +23,44 @@
# FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
# NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
# WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
-#
+#
# Except as contained in this notice, the name of a copyright holder
# shall not be used in advertising or otherwise to promote the sale, use
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# ident "@(#)xmake 1.1 08/08/07 SMI"
+# ident "@(#)xmake 1.2 09/10/13 SMI"
#
require 5.005; # minimal Perl version required
use strict; #
use diagnostics; #
+use File::Path;
use File::Spec;
use English qw( -nomatchvars );
+use POSIX qw(uname);
-# Path to make sure we're running Solaris make instead of GNU make
-my $solaris_make = '/usr/ccs/bin/make';
+my $verbose = 0;
+if ((scalar(@ARGV) > 0) && ($ARGV[0] eq '-v')) {
+ shift @ARGV;
+ $verbose = 1;
+}
+
+# Arguments: (envvar, defval)
+# If environment variable 'envvar' is not set, set it to 'defval'
+sub setenv_default {
+ my ($envvar, $defval) = @_;
+
+ if (!exists $ENV{$envvar}) {
+ $ENV{$envvar} = $defval;
+ }
+
+ if ($verbose > 0) {
+ print $envvar, '=', $ENV{$envvar}, "\n";
+ }
+
+ return $ENV{$envvar};
+}
# save full path to current directory
my $startdir = File::Spec->rel2abs(File::Spec->curdir());
@@ -55,17 +76,79 @@
last;
}
}
+ if ($dirtree[$n] eq 'closed-src') {
+ if (-f File::Spec->catfile( @dirtree[0..($n-1)],
+ 'open-src/common/Makefile.inc')) {
+ $osdepth = $n;
+ last;
+ }
+ }
}
if (!defined($osdepth)) {
die "$0: Cannot find path to open-src/common/Makefile.inc from here";
}
+
+# Use dmake unless user environment overrides
+my $make_cmd = setenv_default('MAKE', 'dmake');
+
+if ($make_cmd =~ m/dmake/) {
+ # Set dmake environment for parallel builds by default
+ setenv_default('DMAKE_MODE', 'parallel');
+ setenv_default('DMAKE_OUTPUT_MODE', 'TXT2');
+
+ if (!exists $ENV{'DMAKE_MAX_JOBS'}) {
+ my $max_jobs;
+ my $machlist = join('/', $ENV{'HOME'}, '.make.machines');
+ if ( -f $machlist ) {
+ my $nodename = (POSIX::uname())[1];
+ if (open my $MACHLIST, '<', $machlist) {
+ while (my $m = <$MACHLIST>) {
+ my ($hostname, $vars) = split ' ', $m, 2;
+
+ next if (!defined($hostname) || !defined($vars));
+ if ($hostname eq $nodename) {
+ my @varlist = split /\s+/, $vars;
+ foreach my $v (@varlist) {
+ my ($var, $val) = split /=/, $v;
+ if ($var eq 'max') {
+ $max_jobs = $val;
+ last;
+ }
+ }
+ last;
+ }
+ }
+ close $MACHLIST;
+ }
+ }
+ if (!defined($max_jobs)) {
+ $max_jobs = 0;
+
+ if (open my $PSRINFO, '-|', '/usr/sbin/psrinfo') {
+ while (my $p = <$PSRINFO>) {
+ if ($p =~ m/on-line/) {
+ $max_jobs++;
+ }
+ }
+ close $PSRINFO;
+ }
+ }
+ setenv_default('DMAKE_MAX_JOBS', $max_jobs);
+ }
+
+ my $dmake_odir =
+ setenv_default('DMAKE_ODIR', File::Spec->catfile(@dirtree[0..($osdepth-1)],
+ 'log', '.dmake'));
+ mkpath($dmake_odir);
+}
+
# if in top two levels, just run make
if ($osdepth >= ($#dirtree - 2)) {
- print join(' ', $solaris_make, @ARGV), "\n";
- exec($solaris_make, @ARGV)
- or die "$0: exec of $solaris_make failed: $OS_ERROR";
+ print join(' ', $make_cmd, @ARGV), "\n";
+ exec($make_cmd, @ARGV)
+ or die "$0: exec of $make_cmd failed: $OS_ERROR";
}
my $subdir_target = 'build-in-subdir';
@@ -80,14 +163,14 @@
my @makeargs = ($subdir_target, qq{subdir='$startdir'});
if (scalar(@ARGV) > 0) {
- push @makeargs, join(q{}, q{subdir_cmd='}, @ARGV, q{'});
+ push @makeargs, join(q{ }, q{subdir_cmd=}, @ARGV);
}
-print join(' ', "(cd $moduledir ;\\\n", $solaris_make, @makeargs), ")\n";
+print join(' ', "(cd $moduledir ;\\\n", $make_cmd, @makeargs), ")\n";
chdir $moduledir
or die "$0: Can't chdir $moduledir: $OS_ERROR";
-exec($solaris_make, @makeargs)
- or die "$0: exec of $solaris_make failed: $OS_ERROR";
+exec($make_cmd, @makeargs)
+ or die "$0: exec of $make_cmd failed: $OS_ERROR";
__END__
--- a/open-src/xserver/xorg/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/xserver/xorg/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -30,7 +30,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.77 09/06/24
+# ident "@(#)Makefile 1.78 09/10/13 SMI"
#
# Build 32-bit or 64-bit?
@@ -86,12 +86,14 @@
# pkg-config files that need to have -R added
FIX_PC_FILES=xorg-server.pc.in
+include ../Makefile.inc
+
# Additional install targets beyond the defaults
+# - install_pc can't be in INSTALL_TARGETS or MODULE_ADD_INSTALL_TARGETS
+# without causing a dependency loop that breaks dmake
EXTRA_INSTALL_sparc=install_pc
EXTRA_INSTALL_i386=
-MODULE_ADD_INSTALL_TARGETS=install_extras $(EXTRA_INSTALL_$(MACH))
-
-include ../Makefile.inc
+install_gen:: install_extras $(EXTRA_INSTALL_$(MACH))
# Merge in additional sources from sun-src directory
source_gen:: $(LNDIR)
--- a/open-src/xserver/xvnc/Makefile Tue Oct 13 15:30:00 2009 -0700
+++ b/open-src/xserver/xvnc/Makefile Thu Oct 15 20:19:43 2009 -0700
@@ -5,7 +5,7 @@
# http://cvs.fedoraproject.org/viewvc/rpms/vnc/devel/vnc.spec
#
# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# Use subject to license terms.
+# Use is subject to license terms.
#
# Permission is hereby granted, free of charge, to any person obtaining a
# copy of this software and associated documentation files (the
@@ -32,7 +32,7 @@
# or other dealings in this Software without prior written authorization
# of the copyright holder.
#
-# @(#)Makefile 1.19 09/05/15
+# ident "@(#)Makefile 1.20 09/10/13 SMI"
#
# Package name used in tarballs
@@ -140,7 +140,7 @@
# Use layout from Fedora RPM so their patches apply
# This step has to be done after including common/Makefile.inc since
# it depends on files created in that stage
-source_gen::
+source_gen:: default_source
(cd $(SOURCE_DIR) ; \
cp -p unix/xc/programs/Xserver/vnc/Xvnc/xvnc.cc \
unix/xc/programs/Xserver/Xvnc.man \