16404201 serialize pkglinting of components
16666374 userland misses opensolaris.org very much, but must move on to java.net's love
16703472 more userland components could benefit from resolve.deps files
16921386 move to parfait 1.2.0.1
16991973 some things ain't parfait'n
17361780 LD_Z_TEXT should, ya know, contain -z text not -z direct
17389915 default userland gcc should be gcc4
17621943 move to build 32 breaks userland-incorporation
17785723 gdb shouldn't override CC/CXX
17852021 userland-incorporator should detect duplicate packages
17899000 libtool doesn't build properly in non-C locale
--- a/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -18,7 +18,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
#
include make-rules/shared-macros.mk
@@ -43,6 +43,6 @@
test: component-hook $(SUBDIRS)
$(SUBDIRS): FORCE
- +echo "$(TARGET) $@" ; $(GMAKE) -C $@ $(TARGET)
+ @+echo "$(TARGET) $@" ; $(GMAKE) -C $@ $(TARGET)
FORCE:
--- a/components/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -106,7 +106,7 @@
DUMMYPKG += "set org.opensolaris.consolidation=userland\n"
DUMMYPKG += "set info.classification=org.opensolaris.category.2008:System/Core"
-$(WS_LINT_CACHE): $(WS_LOGS)
+$(WS_LINT_CACHE): $(WS_LOGS) tools
ifdef CANONICAL_REPO
@echo "Generating pkglint(1) cache from $(CANONICAL_REPO)..."
@(echo $(DUMMYPKG) | $(PKGLINT) \
@@ -131,7 +131,7 @@
$(BASS_O_MATIC) $(TEMPLATE_ZONE:%=--template-zone %) \
$(@:%=--component %) --make $(TARGET) $(LOG)
-publish:
+incorporation:
$(PKGREPO) refresh -s $(PKG_REPO)
$(WS_TOOLS)/userland-incorporator --repository $(PKG_REPO) \
-p pkg:/consolidation/$(CONSOLIDATION)/$(CONSOLIDATION)-incorporation@0.$(OS_VERSION),$(BUILD_VERSION) \
@@ -140,7 +140,9 @@
-c $(CONSOLIDATION) >$(WS_LOGS)/$(CONSOLIDATION)-incorporation.p5m
$(PKGSEND) -s $(PKG_REPO) publish --fmri-in-manifest \
$(WS_LOGS)/$(CONSOLIDATION)-incorporation.p5m
- $(PKGREPO) refresh -s $(PKG_REPO)
+
+publish:
+ $(MAKE) incorporation
# pkglint all of the published manifests in one batch.
ifdef CANONICAL_REPO
@echo 'pkglinting all package manifests...'
--- a/components/acpidump/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/acpidump/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -20,7 +20,7 @@
#
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../../make-rules/shared-macros.mk
@@ -48,7 +48,7 @@
PKG_PROTO_DIRS += $(BUILD_DIR_32)
-COMPILER = gcc
+COMPILER = gcc3
COMPONENT_BUILD_ENV += CC=$(CC)
--- a/components/autogen/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/autogen/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -18,7 +18,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../../make-rules/shared-macros.mk
@@ -40,7 +40,7 @@
COMPONENT_PRE_CONFIGURE_ACTION = ($(CLONEY) $(SOURCE_DIR) $(@D))
# built in SFW with gcc and builds cleanly now only with gcc
-COMPILER = gcc
+COMPILER = gcc3
CONFIGURE_OPTIONS += CFLAGS="$(CFLAGS)"
# strip the environment or install target fails
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/automake/automake-1.9.6/resolve.deps Wed Dec 18 10:04:53 2013 -0800
@@ -0,0 +1,2 @@
+runtime/perl-512
+shell/ksh93
--- a/components/bcc/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/bcc/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -20,7 +20,7 @@
#
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../../make-rules/shared-macros.mk
@@ -39,7 +39,7 @@
include ../../make-rules/justmake.mk
include ../../make-rules/ips.mk
-COMPILER=gcc
+COMPILER=gcc3
COMPONENT_PRE_CONFIGURE_ACTION = ($(CLONEY) $(SOURCE_DIR) $(@D))
--- a/components/clisp/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/clisp/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -20,7 +20,7 @@
#
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../../make-rules/shared-macros.mk
@@ -46,7 +46,7 @@
COMPONENT_PRE_CONFIGURE_ACTION = \
($(CLONEY) $(SOURCE_DIR) $(@D))
-COMPILER= gcc
+COMPILER= gcc3
PATCH_LEVEL= 0
# SHELLOPTS appears to cause clisp's configure script to fail while
@@ -56,6 +56,9 @@
# clisp's configure script is not a GNU auto* tools generated configure script
# and doesn't take --sbindir, so we need to override the default values.
CONFIGURE_OPTIONS = CC="$(CC) -DNO_GENERATIONAL_GC"
+ifeq ($(strip $(PARFAIT_BUILD)),yes)
+CONFIGURE_OPTIONS = CC="$(CC) -DNO_GENERATIONAL_GC -DNO_ASM"
+endif
CONFIGURE_OPTIONS += CPPFLAGS="$(CPPFLAGS)"
CONFIGURE_OPTIONS += --prefix=$(CONFIGURE_PREFIX)
CONFIGURE_OPTIONS += --mandir=$(CONFIGURE_MANDIR)
--- a/components/cmake/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/cmake/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -19,12 +19,12 @@
# CDDL HEADER END
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
# parfait seems to hang on libcmsysTestDynload.so.bc, so for
# now we have to disable it.
-PARFAIT_BUILD=no
+export PARFAIT_BUILD=no
include ../../make-rules/shared-macros.mk
--- a/components/emacs/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/emacs/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -18,7 +18,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../../make-rules/shared-macros.mk
@@ -62,7 +62,7 @@
# configure script has problems using a non-GNU cpp. I am not aware of
# any reason Sun Studio could not be made to work, but simply made a
# cost/benefit decision not to pursue it at this time
-COMPILER = gcc
+COMPILER = gcc3
# Uncomment this for debugging only. It configures emacs to run from the
# local proto instead of from its final installed location.
--- a/components/erlang/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/erlang/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -20,7 +20,7 @@
#
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../../make-rules/shared-macros.mk
@@ -69,7 +69,7 @@
IPS_COMPONENT_VERSION= $(COMPONENT_VERSION_MAJOR).2.$(COMPONENT_VERSION_MICRO)
# Built in SFW with gcc and builds cleanly now only with gcc
-COMPILER = gcc
+COMPILER = gcc3
CONFIGURE_OPTIONS += CFLAGS="$(CFLAGS)"
CONFIGURE_OPTIONS += CPPFLAGS="$(CPPFLAGS) -I/usr/include/gd2"
--- a/components/foomatic/db/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/foomatic/db/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -18,7 +18,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../../../make-rules/shared-macros.mk
@@ -36,6 +36,9 @@
include ../../../make-rules/configure.mk
include ../../../make-rules/ips.mk
+# This package delivers only data files and has no dependencies.
+EXTDEPFILES = $(NULLDEPFILE)
+
COMPONENT_PRE_CONFIGURE_ACTION = $(CLONEY) $(SOURCE_DIR) $(@D)
# One file is not gzipped; fix it
--- a/components/foomatic/fppd/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/foomatic/fppd/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -18,7 +18,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../../../make-rules/shared-macros.mk
@@ -35,6 +35,9 @@
include ../../../make-rules/prep.mk
include ../../../make-rules/ips.mk
+# This package delivers only data files and has no dependencies.
+EXTDEPFILES = $(NULLDEPFILE)
+
CACHE_FILE=$(PROTOUSRLIBDIR)/lp/caches/SUNWfoomatic.cache
$(SOURCE_DIR)/.built: $(SOURCE_DIR)/.prep $(COMPONENT_DIR)/nolicense $(COMPONENT_DIR)/supportedonly.sh
--- a/components/gdb/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/gdb/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -39,14 +39,10 @@
include ../../make-rules/configure.mk
include ../../make-rules/ips.mk
-# Build GDB with GCC 4.7.3.
-# In S11.2 COMPILER=gcc defaults to GCC 3.4.3 and we don't want that one.
-GCCHOME=/usr/gcc/4.7
-CC=$(GCCHOME)/bin/gcc
-CXX=$(GCCHOME)/bin/g++
+COMPILER=gcc
# GDB wants the GNU utilities
-PATH=/usr/gnu/bin:$(GCCHOME)/bin:/usr/bin:/usr/perl5/bin
+PATH=/usr/gnu/bin:$(GCC_ROOT)/bin:/usr/bin:/usr/perl5/bin
CFLAGS_sparc = -g -O2 -mcpu=ultrasparc -mtune=ultrasparc
CFLAGS_sparc += -mno-unaligned-doubles
--- a/components/ghostscript/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/ghostscript/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -22,10 +22,6 @@
# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
-# parfait seems to spin when looking at the .bc files, so
-# for now disable it.
-PARFAIT_BUILD=no
-
include ../../make-rules/shared-macros.mk
COMPONENT_NAME= ghostscript
--- a/components/gnu-gs-fonts-other/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/gnu-gs-fonts-other/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -19,7 +19,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../../make-rules/shared-macros.mk
@@ -41,6 +41,9 @@
include ../../make-rules/prep.mk
include ../../make-rules/ips.mk
+# This package delivers only data files and has no dependencies.
+EXTDEPFILES = $(NULLDEPFILE)
+
# untar the tar ball and apply the patches
build: $(SOURCE_DIR)/.prep
--- a/components/gnu-gs-fonts-std/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/gnu-gs-fonts-std/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -19,7 +19,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../../make-rules/shared-macros.mk
@@ -41,6 +41,9 @@
include ../../make-rules/prep.mk
include ../../make-rules/ips.mk
+# This package delivers only data files and has no dependencies.
+EXTDEPFILES = $(NULLDEPFILE)
+
# untar the tar ball and apply the patches
build: $(SOURCE_DIR)/.prep
--- a/components/guile/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/guile/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -18,7 +18,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../../make-rules/shared-macros.mk
@@ -37,7 +37,7 @@
include ../../make-rules/ips.mk
# Built in SFW with gcc and builds cleanly now only with gcc
-COMPILER = gcc
+COMPILER = gcc3
CONFIGURE_OPTIONS += CPPFLAGS="-I/usr/include/gmp -D__USE_LEGACY_PROTOTYPES__"
CONFIGURE_OPTIONS += --disable-static
CONFIGURE_OPTIONS += --disable-error-on-warning
--- a/components/hwdata/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/hwdata/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -55,6 +55,9 @@
PKG_MACROS += $(foreach i,$(ID_FILES),\
COMPONENT_VERSION_$(i)='$(shell $(ID_VERSION_EXTRACT_COMMAND) $(i))')
+# This package delivers only data files and has no dependencies.
+EXTDEPFILES = $(NULLDEPFILE)
+
# Since we have two separately licensed components we don't use the default
# license transform rules, but handle the license info metadata directly
LICENSE_TRANSFORMS =
--- a/components/jsl/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/jsl/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -39,7 +39,7 @@
# Preferred compiler set to gcc and not Studio as on Sparc architecture
# some assembler code is required for locking which fails to compile on
# solaris, when using gcc this is inlined (see jslock.c)
-COMPILER= gcc
+COMPILER= gcc3
COMPONENT_BUILD_ARGS += -f src/Makefile
COMPONENT_BUILD_ARGS += CC="$(CC)"
--- a/components/junit/junit.p5m Wed Dec 18 04:50:56 2013 -0800
+++ b/components/junit/junit.p5m Wed Dec 18 10:04:53 2013 -0800
@@ -317,3 +317,5 @@
license junit.license license="CPLv1.0, BSD"
link path=usr/share/doc/junit/javadoc target=../../lib/java/javadoc/junit
link path=usr/share/lib/java/junit.jar target=junit-$(COMPONENT_VERSION).jar
+
+depend fmri=runtime/java/jre-7 type=require
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/junit/resolve.deps Wed Dec 18 10:04:53 2013 -0800
@@ -0,0 +1,1 @@
+runtime/java/jre-7
--- a/components/ksh93/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/ksh93/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -20,7 +20,6 @@
#
# Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
#
-PARFAIT_BUILD=no
include ../../make-rules/shared-macros.mk
--- a/components/libnet/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/libnet/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -20,7 +20,7 @@
#
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../../make-rules/shared-macros.mk
@@ -43,7 +43,7 @@
($(CLONEY) $(SOURCE_DIR) $(@D))
PKG_PROTO_DIRS += $(COMPONENT_SRC)/doc/man/man3
-COMPILER= gcc
+COMPILER= gcc3
CFLAGS += -g -fPIC
CONFIGURE_OPTIONS += CFLAGS="$(CFLAGS)"
CONFIGURE_OPTIONS.32 += --srcdir=$(BUILD_DIR_32)
--- a/components/libtorrent/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/libtorrent/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -20,12 +20,12 @@
#
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
# we really need to use studio, mostly because that's what
# sigc++ uses, so we don't like that parfait is g++ in disguise
-PARFAIT_BUILD=no
+export PARFAIT_BUILD=no
include ../../make-rules/shared-macros.mk
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/libtorrent/patches/rlibtorrent-06-parfait.patch Wed Dec 18 10:04:53 2013 -0800
@@ -0,0 +1,10 @@
+--- libtorrent-0.12.2/rak/functional.h.orig Mon Apr 29 10:51:44 2013
++++ libtorrent-0.12.2/rak/functional.h Mon Apr 29 10:51:54 2013
+@@ -38,6 +38,7 @@
+ #define RAK_FUNCTIONAL_H
+
+ #include <functional>
++#include <stdio.h>
+
+ namespace rak {
+
--- a/components/memcached-java/memcached-java.p5m Wed Dec 18 04:50:56 2013 -0800
+++ b/components/memcached-java/memcached-java.p5m Wed Dec 18 10:04:53 2013 -0800
@@ -101,3 +101,5 @@
file path=usr/share/lib/java/javadoc/memcached-java/api/resources/titlebar_end.gif
file path=usr/share/lib/java/javadoc/memcached-java/api/serialized-form.html
file path=usr/share/lib/java/javadoc/memcached-java/api/stylesheet.css
+
+depend fmri=runtime/java/jre-7 type=require
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/memcached-java/resolve.deps Wed Dec 18 10:04:53 2013 -0800
@@ -0,0 +1,1 @@
+runtime/java/jre-7
--- a/components/net-snmp/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/net-snmp/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -18,8 +18,12 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
+
+# parfait is upset about some inline assembly
+export PARFAIT_BUILD=no
+
include ../../make-rules/shared-macros.mk
PATH=$(SPRO_VROOT)/bin:/usr/gnu/bin:/usr/bin
--- a/components/nmap/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/nmap/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -41,7 +41,7 @@
# Can't use the Studio compilers as they don't support the GNU
# __attribute__ extension
-COMPILER = gcc
+COMPILER = gcc3
COMPONENT_PRE_CONFIGURE_ACTION = \
($(CLONEY) $(SOURCE_DIR) $(@D))
--- a/components/open-fabrics/ofed.mk Wed Dec 18 04:50:56 2013 -0800
+++ b/components/open-fabrics/ofed.mk Wed Dec 18 10:04:53 2013 -0800
@@ -18,7 +18,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
# Since we are building these as a set and not packaging them individually at
@@ -27,9 +27,12 @@
PROTO_DIR = $(WS_COMPONENTS)/open-fabrics/prototype/$(MACH)
# OFED only builds with GCC
-COMPILER=gcc
+COMPILER=gcc3
-PATH=/usr/sfw/bin:/usr/bin:/usr/gnu/bin
+PATH=$(GCC3_ROOT)/bin:/usr/bin:/usr/gnu/bin
+ifeq ($(strip $(PARFAIT_BUILD)),yes)
+PATH=$(PARFAIT_TOOLS_GCC3):$(GCC3_ROOT)/bin:/usr/bin
+endif
CPPFLAGS += "-Wformat=2"
CFLAGS += -D_REENTRANT
--- a/components/openscap/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/openscap/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -34,7 +34,7 @@
COMPONENT_ARCHIVE_URL= $(COMPONENT_DOWNLOAD_URL)/$(COMPONENT_ARCHIVE)
COMPONENT_BUGDB= utility/openscap
-COMPILER= gcc
+COMPILER= gcc3
CFLAGS+= -std=c99
CFLAGS+= -DNDEBUG
--- a/components/openssl/openssl-0.9.8-fips-140/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/openssl/openssl-0.9.8-fips-140/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -20,7 +20,7 @@
#
# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
-PARFAIT_BUILD=no
+export PARFAIT_BUILD=no
include ../../../make-rules/shared-macros.mk
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/openssl/openssl-1.0.1/resolve.deps Wed Dec 18 10:04:53 2013 -0800
@@ -0,0 +1,4 @@
+runtime/perl-512
+runtime/perl-516
+system/library
+system/library/security/crypto
--- a/components/openusb/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/openusb/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -18,7 +18,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../../make-rules/shared-macros.mk
@@ -42,7 +42,7 @@
COMPONENT_PRE_CONFIGURE_ACTION = \
($(CLONEY) $(SOURCE_DIR) $(@D))
-COMPILER = gcc
+COMPILER = gcc3
PATCH_LEVEL = 1
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/php-common/resolve.deps Wed Dec 18 10:04:53 2013 -0800
@@ -0,0 +1,1 @@
+system/linker
--- a/components/python/greenlet/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/python/greenlet/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -38,7 +38,7 @@
ASLR_MODE = $(ASLR_NOT_APPLICABLE)
-COMPILER = gcc
+COMPILER = gcc3
gcc_OPT = -O2
COMPONENT_PRE_BUILD_ACTION = \
--- a/components/rsyslog/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/rsyslog/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -18,7 +18,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../../make-rules/shared-macros.mk
@@ -35,7 +35,7 @@
include ../../make-rules/configure.mk
include ../../make-rules/ips.mk
-COMPILER = gcc
+COMPILER = gcc3
# This is needed for things to be built correctly.
CONFIGURE_ENV += CFLAGS="$(CFLAGS)"
--- a/components/rtorrent/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/rtorrent/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -20,12 +20,12 @@
#
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
# we really need to use studio, mostly because that's what
# sigc++ uses, so we don't like that parfait is g++ in disguise
-PARFAIT_BUILD=no
+export PARFAIT_BUILD=no
include ../../make-rules/shared-macros.mk
--- a/components/samba/samba/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/samba/samba/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -56,7 +56,7 @@
ifeq ($(MACH), sparc)
COMPILER = studio
else
-COMPILER = gcc
+COMPILER = gcc3
endif
include ../../../make-rules/prep.mk
@@ -122,7 +122,7 @@
cd $(BUILD_DIR) ; $(UNPACK) $(UNPACK_ARGS) ../$(COMPONENT_ARCHIVE_2)
CFLAGS.studio += $(studio_C99_ENABLE)
-CFLAGS.gcc += -std=c99
+CFLAGS.gcc3 += -std=c99
#CPPFLAGS += -DSAMBA_VERSION_VENDOR_SUFFIX=\\\"Placeholder_for_vendor_suffix\\\"
CPPFLAGS += $(CPP_LARGEFILES)
--- a/components/squid/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/squid/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -41,7 +41,7 @@
include ../../make-rules/configure.mk
include ../../make-rules/ips.mk
-COMPILER = gcc
+COMPILER = gcc3
CFLAGS += -I/usr/include/kerberosv5
CFLAGS += $(CPP_LARGEFILES)
--- a/components/stdcxx/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/stdcxx/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -23,7 +23,7 @@
# we really need to use studio so we don't like that
# parfait is g++ in disguise
-PARFAIT_BUILD=no
+export PARFAIT_BUILD=no
include ../../make-rules/shared-macros.mk
--- a/components/timezone/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/timezone/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -37,6 +37,9 @@
include ../../make-rules/ips.mk
+# This package delivers only data files and has no dependencies.
+EXTDEPFILES = $(NULLDEPFILE)
+
POFILE=zoneinfo.po
download:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/visual-panels/coreadm/resolve.deps Wed Dec 18 10:04:53 2013 -0800
@@ -0,0 +1,1 @@
+system/management/visual-panels-core
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/visual-panels/firewall/resolve.deps Wed Dec 18 10:04:53 2013 -0800
@@ -0,0 +1,1 @@
+system/management/visual-panels-core
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/visual-panels/sysmon/resolve.deps Wed Dec 18 10:04:53 2013 -0800
@@ -0,0 +1,1 @@
+system/management/visual-panels-core
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/visual-panels/usermgr/resolve.deps Wed Dec 18 10:04:53 2013 -0800
@@ -0,0 +1,1 @@
+system/management/visual-panels-core
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/components/visual-panels/zconsole/resolve.deps Wed Dec 18 10:04:53 2013 -0800
@@ -0,0 +1,1 @@
+system/management/visual-panels-core
--- a/components/webalizer/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/components/webalizer/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -48,7 +48,7 @@
$(GSED) -i -e 's?lib/httpd/logs/?apache2/2.2/logs/?' \
$(SOURCE_DIR)/sample.conf
-COMPILER = gcc
+COMPILER = gcc3
CONFIGURE_OPTIONS += --enable-dns
CONFIGURE_OPTIONS += --with-gd=/usr/include/gd2
--- a/make-rules/ant.mk Wed Dec 18 04:50:56 2013 -0800
+++ b/make-rules/ant.mk Wed Dec 18 10:04:53 2013 -0800
@@ -18,7 +18,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
ANT=/usr/bin/ant
@@ -32,6 +32,9 @@
(cd $(@D) ; $(ENV) $(COMPONENT_BUILD_ENV) \
$(ANT) $(COMPONENT_BUILD_ARGS) $(COMPONENT_BUILD_TARGETS))
$(COMPONENT_POST_BUILD_ACTION)
+ifeq ($(strip $(PARFAIT_BUILD)),yes)
+ -$(PARFAIT) $(@D)
+endif
$(TOUCH) $@
COMPONENT_INSTALL_ENV += JAVA_HOME="$(JAVA_HOME)"
@@ -43,5 +46,12 @@
$(COMPONENT_POST_INSTALL_ACTION)
$(TOUCH) $@
+ifeq ($(strip $(PARFAIT_BUILD)),yes)
+parfait: build
+else
+parfait:
+ $(MAKE) PARFAIT_BUILD=yes parfait
+endif
+
clean::
$(RM) -r $(SOURCE_DIR) $(BUILD_DIR)
--- a/make-rules/attpackagemake.mk Wed Dec 18 04:50:56 2013 -0800
+++ b/make-rules/attpackagemake.mk Wed Dec 18 10:04:53 2013 -0800
@@ -18,7 +18,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved.
#
#
# Rules and Macros for building opens source software that uses AT&T's package
@@ -72,6 +72,9 @@
cd $(@D); $(ENV) $(COMPONENT_BUILD_ENV) \
bin/package make $(COMPONENT_BUILD_TARGETS) $(COMPONENT_BUILD_ARGS)
$(COMPONENT_POST_BUILD_ACTION)
+ifeq ($(strip $(PARFAIT_BUILD)),yes)
+ -$(PARFAIT) $(@D)
+endif
$(TOUCH) $@
# install the built source into a prototype area
@@ -94,5 +97,12 @@
$(COMPONENT_POST_TEST_ACTION)
$(TOUCH) $@
+ifeq ($(strip $(PARFAIT_BUILD)),yes)
+parfait: build
+else
+parfait:
+ $(MAKE) PARFAIT_BUILD=yes parfait
+endif
+
clean::
$(RM) -r $(BUILD_DIR) $(PROTO_DIR)
--- a/make-rules/configure.mk Wed Dec 18 04:50:56 2013 -0800
+++ b/make-rules/configure.mk Wed Dec 18 10:04:53 2013 -0800
@@ -18,7 +18,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
#
#
@@ -121,7 +121,7 @@
$(GMAKE) $(COMPONENT_BUILD_ARGS) $(COMPONENT_BUILD_TARGETS))
$(COMPONENT_POST_BUILD_ACTION)
ifeq ($(strip $(PARFAIT_BUILD)),yes)
- -$(PARFAIT) build
+ -$(PARFAIT) $(@D)
endif
$(TOUCH) $@
@@ -142,8 +142,7 @@
$(TOUCH) $@
ifeq ($(strip $(PARFAIT_BUILD)),yes)
-parfait: install
- -$(PARFAIT) build
+parfait: build
else
parfait:
$(MAKE) PARFAIT_BUILD=yes parfait
--- a/make-rules/ips.mk Wed Dec 18 04:50:56 2013 -0800
+++ b/make-rules/ips.mk Wed Dec 18 10:04:53 2013 -0800
@@ -39,7 +39,11 @@
PKGFMT = /usr/bin/pkgfmt
PKGMOGRIFY = /usr/bin/pkgmogrify
PKGSEND = /usr/bin/pkgsend
+ifeq ($(strip $(PKGLINT_COMPONENT)),)
PKGLINT = /usr/bin/pkglint
+else
+PKGLINT = ${WS_TOOLS}/pkglint
+endif
PKGMANGLE = $(WS_TOOLS)/userland-mangler
# Package headers should all pretty much follow the same format
@@ -240,7 +244,14 @@
# These files should contain a list of packages that the component is known to
# depend on. Using resolve.deps is not required, but significantly speeds up
# the "pkg resolve" step.
-EXTDEPFILES = $(wildcard $(sort $(addsuffix ../resolve.deps, $(dir $(DEPENDED)))))
+EXTDEPFILES ?= $(wildcard $(sort $(addsuffix ../resolve.deps, $(dir $(DEPENDED)))))
+
+# If the package contains no automatically discoverable dependencies, then
+# we can speed up resolution by providing a dummy resolve.deps to skip loading
+# all the possible packages for resolution. Unfortunately, pkgdepend does not
+# accept a completely empty resolve.deps, so we pass the userland-incorporation
+# as a quick, content-free placeholder.
+NULLDEPFILE = $(BUILD_DIR)/null-resolve.deps
# This is a target that should only be run by hand, and not something that
# .resolved-$(MACH) should depend on.
@@ -259,6 +270,9 @@
# resolve the dependencies all at once
$(BUILD_DIR)/.resolved-$(MACH): $(DEPENDED)
+ if [[ "$(EXTDEPFILES)" == "$(NULLDEPFILE)" ]] ; then \
+ echo 'consolidation/userland/userland-incorporation' > $(NULLDEPFILE) ; \
+ fi
$(PKGDEPEND) resolve $(EXTDEPFILES:%=-e %) -m $(DEPENDED)
$(TOUCH) $@
--- a/make-rules/justmake.mk Wed Dec 18 04:50:56 2013 -0800
+++ b/make-rules/justmake.mk Wed Dec 18 10:04:53 2013 -0800
@@ -18,7 +18,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
#
# Rules and Macros for building opens source software that just uses their
@@ -55,7 +55,7 @@
$(GMAKE) $(COMPONENT_BUILD_ARGS) $(COMPONENT_BUILD_TARGETS))
$(COMPONENT_POST_BUILD_ACTION)
ifeq ($(strip $(PARFAIT_BUILD)),yes)
- -$(PARFAIT) build
+ -$(PARFAIT) $(@D)
endif
$(TOUCH) $@
@@ -77,8 +77,7 @@
$(TOUCH) $@
ifeq ($(strip $(PARFAIT_BUILD)),yes)
-parfait: install
- -$(PARFAIT) build
+parfait: build
else
parfait:
$(MAKE) PARFAIT_BUILD=yes parfait
--- a/make-rules/makemaker.mk Wed Dec 18 04:50:56 2013 -0800
+++ b/make-rules/makemaker.mk Wed Dec 18 10:04:53 2013 -0800
@@ -62,6 +62,9 @@
(cd $(@D) ; $(ENV) $(COMPONENT_BUILD_ENV) \
$(GMAKE) $(COMPONENT_BUILD_ARGS) $(COMPONENT_BUILD_TARGETS))
$(COMPONENT_POST_BUILD_ACTION)
+ifeq ($(strip $(PARFAIT_BUILD)),yes)
+ -$(PARFAIT) $(@D)
+endif
$(TOUCH) $@
@@ -83,10 +86,14 @@
(cd $(@D) ; $(ENV) $(COMPONENT_TEST_ENV) $(GMAKE) \
$(COMPONENT_TEST_ARGS) $(COMPONENT_TEST_TARGETS))
$(COMPONENT_POST_TEST_ACTION)
+ $(TOUCH) $@
+
ifeq ($(strip $(PARFAIT_BUILD)),yes)
- -$(PARFAIT) build
+parfait: build
+else
+parfait:
+ $(MAKE) PARFAIT_BUILD=yes parfait
endif
- $(TOUCH) $@
clean::
$(RM) -r $(BUILD_DIR) $(PROTO_DIR)
--- a/make-rules/setup.py.mk Wed Dec 18 04:50:56 2013 -0800
+++ b/make-rules/setup.py.mk Wed Dec 18 10:04:53 2013 -0800
@@ -73,7 +73,7 @@
$(PYTHON.$(BITS)) ./setup.py build)
$(COMPONENT_POST_BUILD_ACTION)
ifeq ($(strip $(PARFAIT_BUILD)),yes)
- -$(PARFAIT) $(SOURCE_DIR)/$(@D:$(BUILD_DIR)/%=%)
+ -$(PARFAIT) $(@D)
endif
$(TOUCH) $@
@@ -110,8 +110,7 @@
$(TOUCH) $@
ifeq ($(strip $(PARFAIT_BUILD)),yes)
-parfait: install
- -$(PARFAIT) build
+parfait: build
else
parfait:
$(MAKE) PARFAIT_BUILD=yes parfait
--- a/make-rules/shared-macros.mk Wed Dec 18 04:50:56 2013 -0800
+++ b/make-rules/shared-macros.mk Wed Dec 18 10:04:53 2013 -0800
@@ -32,13 +32,14 @@
# The location of an external mirror of community source archives that we build
# in this gate. The external mirror is a replica of the internal mirror.
-EXTERNAL_ARCHIVE_MIRROR = \
- http://static.opensolaris.org/action/browse/userland/tarball/userland
+EXTERNAL_ARCHIVE_MIRROR =
# Default to looking for source archives on the internal mirror and the external
# mirror before we hammer on the community source archive repositories.
export DOWNLOAD_SEARCH_PATH += $(INTERNAL_ARCHIVE_MIRROR)
+ifneq ($(strip $(EXTERNAL_ARCHIVE_MIRROR)),)
export DOWNLOAD_SEARCH_PATH += $(EXTERNAL_ARCHIVE_MIRROR)
+endif
# The workspace starts at the mercurial root
ifeq ($(origin WS_TOP), undefined)
@@ -65,6 +66,10 @@
install: SHELLOPTS=
publish: SHELLOPTS=pipefail
+# some things don't build properly in non-C locales,
+# so lets stay there
+export LC_ALL=C
+
SHELL= /bin/bash
CONSOLIDATION = userland
@@ -222,7 +227,9 @@
SPRO_ROOT = $(BUILD_TOOLS)/SUNWspro
SPRO_VROOT = $(SPRO_ROOT)/sunstudio12.1
-PARFAIT_ROOT = $(BUILD_TOOLS)/parfait/parfait-tools-0.5.0.1/
+PARFAIT_ROOT = $(BUILD_TOOLS)/parfait/parfait-tools-1.2.0.2
+PARFAIT_TOOLS= $(WS_TOOLS)/$(MACH)/parfait
+PARFAIT_TOOLS_GCC3= $(PARFAIT_TOOLS)/gcc3
PARFAIT= $(PARFAIT_ROOT)/bin/parfait
export PARFAIT_NATIVESUNCC=$(SPRO_VROOT)/bin/cc
export PARFAIT_NATIVESUNCXX=$(SPRO_VROOT)/bin/CC
@@ -231,7 +238,8 @@
# for now
export PARFAIT_CLANG=0
-GCC_ROOT = /usr/sfw
+GCC_ROOT = /usr/gcc/4.7
+GCC3_ROOT = /usr/sfw
CC.studio.32 = $(SPRO_VROOT)/bin/cc
CXX.studio.32 = $(SPRO_VROOT)/bin/CC
@@ -246,6 +254,12 @@
CC.gcc.64 = $(GCC_ROOT)/bin/gcc
CXX.gcc.64 = $(GCC_ROOT)/bin/g++
+CC.gcc3.32 = $(GCC3_ROOT)/bin/gcc
+CXX.gcc3.32 = $(GCC3_ROOT)/bin/g++
+
+CC.gcc3.64 = $(GCC3_ROOT)/bin/gcc
+CXX.gcc3.64 = $(GCC3_ROOT)/bin/g++
+
lint.32 = $(SPRO_VROOT)/bin/lint -m32
lint.64 = $(SPRO_VROOT)/bin/lint -m64
@@ -263,15 +277,19 @@
PYTHON.2.7.VENDOR_PACKAGES = $(PYTHON.2.7.VENDOR_PACKAGES.$(BITS))
ifeq ($(strip $(PARFAIT_BUILD)),yes)
-CC.studio.32 = $(WS_TOOLS)/parfait/cc
-CXX.studio.32 = $(WS_TOOLS)/parfait/CC
-CC.studio.64 = $(WS_TOOLS)/parfait/cc
-CXX.studio.64 = $(WS_TOOLS)/parfait/CC
-CC.gcc.32 = $(WS_TOOLS)/parfait/gcc
-CXX.gcc.32 = $(WS_TOOLS)/parfait/g++
-CC.gcc.64 = $(WS_TOOLS)/parfait/gcc
-CXX.gcc.64 = $(WS_TOOLS)/parfait/g++
-LD = $(WS_TOOLS)/parfait/ld
+CC.studio.32 = $(PARFAIT_TOOLS)/cc
+CXX.studio.32 = $(PARFAIT_TOOLS)/CC
+CC.studio.64 = $(PARFAIT_TOOLS)/cc
+CXX.studio.64 = $(PARFAIT_TOOLS)/CC
+CC.gcc.32 = $(PARFAIT_TOOLS)/gcc
+CXX.gcc.32 = $(PARFAIT_TOOLS)/g++
+CC.gcc.64 = $(PARFAIT_TOOLS)/gcc
+CXX.gcc.64 = $(PARFAIT_TOOLS)/g++
+CC.gcc3.32 = $(PARFAIT_TOOLS_GCC3)/gcc
+CXX.gcc3.32 = $(PARFAIT_TOOLS_GCC3)/g++
+CC.gcc3.64 = $(PARFAIT_TOOLS_GCC3)/gcc
+CXX.gcc3.64 = $(PARFAIT_TOOLS_GCC3)/g++
+LD = $(PARFAIT_TOOLS)/ld
endif
CC = $(CC.$(COMPILER).$(BITS))
@@ -357,7 +375,11 @@
PKGREPO = /usr/bin/pkgrepo
PKGSEND = /usr/bin/pkgsend
-PKGLINT = /usr/bin/pkglint
+ifeq ($(strip $(PKGLINT_COMPONENT)),)
+PKGLINT = /usr/bin/pkglint
+else
+PKGLINT = ${WS_TOOLS}/pkglint
+endif
ACLOCAL = /usr/bin/aclocal-1.10
AUTOMAKE = /usr/bin/automake-1.10
@@ -555,6 +577,8 @@
# configure environment.
CFLAGS.gcc += $(gcc_OPT)
CFLAGS.gcc += $(gcc_XREGS)
+CFLAGS.gcc3 += $(gcc_OPT)
+CFLAGS.gcc3 += $(gcc_XREGS)
# Build 32 or 64 bit objects.
@@ -612,7 +636,7 @@
# only be required if the component's native build is horribly broken.
LD_Z_RESCAN_NOW = -z rescan-now
-LD_Z_TEXT = -z direct
+LD_Z_TEXT = -z text
# make sure that -lc is always present when building shared objects.
LD_DEF_LIBS += -lc
@@ -623,6 +647,9 @@
# eliminate unreferenced dynamic dependencies
LD_Z_IGNORE = -z ignore
+# eliminate comments
+LD_Z_STRIP_CLASS = -z strip-class=comment
+
# use direct binding
LD_B_DIRECT = -Bdirect
@@ -656,7 +683,8 @@
# libraries to this macro, as it will apply to everything linked during the
# component build.
LD_OPTIONS += $(LD_MAP_NOEXSTK.$(MACH)) $(LD_MAP_NOEXDATA.$(MACH)) \
- $(LD_MAP_PAGEALIGN) $(LD_B_DIRECT) $(LD_Z_IGNORE)
+ $(LD_MAP_PAGEALIGN) $(LD_B_DIRECT) $(LD_Z_IGNORE) \
+ $(LD_Z_STRIP_CLASS)
# Environment variables and arguments passed into the build and install
# environment(s). These are the initial settings.
--- a/tools/Makefile Wed Dec 18 04:50:56 2013 -0800
+++ b/tools/Makefile Wed Dec 18 10:04:53 2013 -0800
@@ -18,48 +18,63 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
#
include ../make-rules/shared-macros.mk
download setup prep build install publish \
-validate: links time-$(MACH32).so time-$(MACH64).so
+validate: links pkglint time-$(MACH32).so time-$(MACH64).so
# generate wrappers for parfait. we need to generate them
# with the correct compiler variables from the common makefiles because
# some things reset the environment which causes lovely infinite
# loops
links:
- $(MKDIR) parfait
+ @$(MKDIR) $(PARFAIT_TOOLS)
@for i in cc CC gcc g++ ld ; do \
- $(MKDIR) parfait ; \
- $(RM) parfait/$$i ; \
- echo "#!/bin/ksh" > parfait/$$i ; \
- echo "IFS=" >> parfait/$$i ; \
- echo "export PARFAIT_NATIVESUNCC=$(SPRO_VROOT)/bin/cc" >> parfait/$$i ; \
- echo "export PARFAIT_NATIVESUNCXX=$(SPRO_VROOT)/bin/CC" >> parfait/$$i ; \
- echo "export PARFAIT_NATIVEGCC=$(GCC_ROOT)/bin/gcc" >> parfait/$$i ; \
- echo "export PARFAIT_NATIVEGXX=$(GCC_ROOT)/bin/g++" >> parfait/$$i ; \
- echo "export PARFAIT_CLANG="$(PARFAIT_CLANG) >> parfait/$$i ; \
- echo "exec" $(PARFAIT_ROOT)/bin/parfait-$$i '$$*' >> parfait/$$i ; \
- chmod +x parfait/$$i ; \
+ $(RM) $(PARFAIT_TOOLS)/$$i ; \
+ echo "#!/bin/ksh" > $(PARFAIT_TOOLS)/$$i ; \
+ echo "IFS=" >> $(PARFAIT_TOOLS)/$$i ; \
+ echo "export PARFAIT_NATIVESUNCC=$(SPRO_VROOT)/bin/cc" >> $(PARFAIT_TOOLS)/$$i ; \
+ echo "export PARFAIT_NATIVESUNCXX=$(SPRO_VROOT)/bin/CC" >> $(PARFAIT_TOOLS)/$$i ; \
+ echo "export PARFAIT_NATIVEGCC=$(GCC_ROOT)/bin/gcc" >> $(PARFAIT_TOOLS)/$$i ; \
+ echo "export PARFAIT_NATIVEGXX=$(GCC_ROOT)/bin/g++" >> $(PARFAIT_TOOLS)/$$i ; \
+ echo "export PARFAIT_NATIVELD=/usr/bin/ld" >> $(PARFAIT_TOOLS)/$$i ; \
+ echo "exec" $(PARFAIT_ROOT)/$(MACH)/parfait-$$i '$$*' >> $(PARFAIT_TOOLS)/$$i ; \
+ chmod +x $(PARFAIT_TOOLS)/$$i ; \
done
+ @$(MKDIR) $(PARFAIT_TOOLS_GCC3)
+ @for i in cc CC gcc g++ ld ; do \
+ $(RM) $(PARFAIT_TOOLS_GCC3)/$$i ; \
+ sed \
+ -e "s,$(GCC_ROOT),$(GCC3_ROOT)," < $(PARFAIT_TOOLS)/$$i \
+ > $(PARFAIT_TOOLS_GCC3)/$$i ; \
+ chmod +x $(PARFAIT_TOOLS_GCC3)/$$i ; \
+ done
+
+pkglint:
+ @rm -f pkglint
+ @sed -e "s,WS_TOP_XXX,$(WS_TOP)/$(MACH)," \
+ < pkglint.sh \
+ > pkglint
+ @chmod +x pkglint
time-$(MACH64).o: BITS=64
time-$(MACH32).o time-$(MACH64).o: CFLAGS += -Kpic
time-$(MACH32).o time-$(MACH64).o: time.c
- $(CC) $(CFLAGS) -c -o $@ $<
+ @$(CC) $(CFLAGS) -c -o $@ $<
time-%.so: time-%.o
- $(LD) -G -o $@ $<
+ @$(LD) -G -o $@ $<
clean:
- $(RM) time-*.o time*.bc
+ @$(RM) time-*.o time*.bc
+ @$(RM) pkglint
clobber: clean
- $(RM) time-*.so python/pkglint/*.pyc
- $(RM) -r parfait
+ @$(RM) time-*.so python/pkglint/*.pyc
+ @$(RM) -r $(PARFAIT_TOOLS) $(PARFAIT_TOOLS_GCC3) $(MACH)
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/tools/pkglint.sh Wed Dec 18 10:04:53 2013 -0800
@@ -0,0 +1,38 @@
+#!/bin/ksh
+#
+# CDDL HEADER START
+#
+# The contents of this file are subject to the terms of the
+# Common Development and Distribution License (the "License").
+# You may not use this file except in compliance with the License.
+#
+# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
+# or http://www.opensolaris.org/os/licensing.
+# See the License for the specific language governing permissions
+# and limitations under the License.
+#
+# When distributing Covered Code, include this CDDL HEADER in each
+# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
+# If applicable, add the following below this CDDL HEADER, with the
+# fields enclosed by brackets "[]" replaced with your own identifying
+# information: Portions Copyright [yyyy] [name of copyright owner]
+#
+# CDDL HEADER END
+#
+# Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+#
+IFS=
+export WS_TOP=WS_TOP_XXX
+
+SLEEPTIME=60
+
+LOCKFILE=${WS_TOP}/pkglint.lock
+
+lockfile -${SLEEPTIME} ${LOCKFILE}
+
+/usr/bin/pkglint $*
+
+pls=$?
+
+rm -f ${LOCKFILE}
+exit ${pls}
--- a/tools/userland-incorporator Wed Dec 18 04:50:56 2013 -0800
+++ b/tools/userland-incorporator Wed Dec 18 10:04:53 2013 -0800
@@ -19,7 +19,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
#
# incorporator - an utility to incorporate packages in a repo
@@ -38,8 +38,11 @@
while (<$fp>) {
# lines should be in the form:
- # publisher package [r|o] version,branch:timestamp
- if (/^(\S+)\s+(\S+)\s+\S?\s+([\d.]+),[\d.]+-([\d.]+):.+$/) {
+ # publisher package [r|o] version,5.12-branch:timestamp
+ # or lines should be in the form:
+ # publisher package [r|o] version-branch:timestamp
+ if ((/^(\S+)\s+(\S+)\s+\S?\s+([\d.]+),[\d.]+-([\d.]+):.+$/) ||
+ (/^(\S+)\s+(\S+)\s+\S?\s+([\d.]+)-([\d.]+):.+$/)) {
my ($package) = ();
$package->{publisher} = $1;
@@ -47,9 +50,11 @@
$package->{version} = $3;
$package->{branch} = $4;
- push(@packages, $package);
+ if ($package->{name} !~ m/incorporation/) {
+ push(@packages, $package);
+ }
} else {
- printf STDERR "SKIP: %s", $_;
+ die "error: cannot handle: ", $_;
}
}
@@ -68,6 +73,7 @@
}
my ($repository, $fmri, $summary, $description, $consolidation) = ();
+my %seen = ();
$consolidation = 'userland';
@@ -89,8 +95,13 @@
printf "set name=info.classification value='org.opensolaris.category.2008:Meta Packages/Incorporations'\n";
@packages = enumerate_packages($repository, $consolidation, @fmris);
+
for (@packages) {
+ if ($seen->{$_->{name}} == 1) {
+ die "error: duplicate package ", $_->{name};
+ }
printf "depend fmri=pkg:/%s@%s-%s %s=true type=incorporate\n",
- %$_->{name}, %$_->{version}, %$_->{branch},
- "facet.version-lock.".%$_->{name};
+ $_->{name}, $_->{version}, $_->{branch},
+ "facet.version-lock.".$_->{name};
+ $seen->{$_->{name}} = 1;
}
--- a/tools/userland-mangler Wed Dec 18 04:50:56 2013 -0800
+++ b/tools/userland-mangler Wed Dec 18 10:04:53 2013 -0800
@@ -19,7 +19,7 @@
#
# CDDL HEADER END
#
-# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
#
#
# userland-mangler - a file mangling utility
@@ -93,7 +93,7 @@
Further information about this software can be found on the open source community website at %s.
"""
notes_source = """
-This software was built from source available at http://opensolaris.org/. The original community source was downloaded from %s
+This software was built from source available at https://java.net/projects/solaris-userland. The original community source was downloaded from %s
"""
def notes_section_text(header_seen, community, source, modified_date):