# HG changeset patch # User Mike Sullivan # Date 1371595948 25200 # Node ID 1358a1e1ff4c018c72d27dc08154397d6416fa97 # Parent 5c589218fa09553611b86cd35fd02724895d95d3 16921386 move to parfait 1.2.0.1 diff -r 5c589218fa09 -r 1358a1e1ff4c components/antlr/patches/antlr-parfait.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/components/antlr/patches/antlr-parfait.patch Tue Jun 18 15:52:28 2013 -0700 @@ -0,0 +1,30 @@ +--- ./lib/cpp/antlr/TokenRefCount.hpp.orig Mon Mar 18 11:58:26 2013 ++++ ./lib/cpp/antlr/TokenRefCount.hpp Mon Mar 18 11:58:52 2013 +@@ -84,9 +84,9 @@ + return *this; + } + +- operator T* () const { return ref ? static_cast(ref->ptr) : 0; } +- T* operator->() const { return ref ? static_cast(ref->ptr) : 0; } +- T* get() const { return ref ? static_cast(ref->ptr) : 0; } ++ operator T* () const { return ref ? static_cast(ref->ptr) : 0; } ++ T* operator->() const { return ref ? static_cast(ref->ptr) : 0; } ++ T* get() const { return ref ? static_cast(ref->ptr) : 0; } + }; + + typedef TokenRefCount RefToken; +--- ./lib/cpp/antlr/ASTRefCount.hpp.orig Mon Mar 18 11:59:16 2013 ++++ ./lib/cpp/antlr/ASTRefCount.hpp Mon Mar 18 11:59:28 2013 +@@ -84,9 +84,9 @@ + return *this; + } + +- operator T* () const { return ref ? static_cast(ref->ptr) : 0; } +- T* operator->() const { return ref ? static_cast(ref->ptr) : 0; } +- T* get() const { return ref ? static_cast(ref->ptr) : 0; } ++ operator T* () const { return ref ? static_cast(ref->ptr) : 0; } ++ T* operator->() const { return ref ? static_cast(ref->ptr) : 0; } ++ T* get() const { return ref ? static_cast(ref->ptr) : 0; } + }; + + typedef ASTRefCount RefAST; diff -r 5c589218fa09 -r 1358a1e1ff4c components/clisp/Makefile --- a/components/clisp/Makefile Tue Jun 18 13:15:45 2013 -0700 +++ b/components/clisp/Makefile Tue Jun 18 15:52:28 2013 -0700 @@ -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) diff -r 5c589218fa09 -r 1358a1e1ff4c components/cmake/Makefile --- a/components/cmake/Makefile Tue Jun 18 13:15:45 2013 -0700 +++ b/components/cmake/Makefile Tue Jun 18 15:52:28 2013 -0700 @@ -24,7 +24,7 @@ # 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 diff -r 5c589218fa09 -r 1358a1e1ff4c components/ghostscript/Makefile --- a/components/ghostscript/Makefile Tue Jun 18 13:15:45 2013 -0700 +++ b/components/ghostscript/Makefile Tue Jun 18 15:52:28 2013 -0700 @@ -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 diff -r 5c589218fa09 -r 1358a1e1ff4c components/ksh93/Makefile --- a/components/ksh93/Makefile Tue Jun 18 13:15:45 2013 -0700 +++ b/components/ksh93/Makefile Tue Jun 18 15:52:28 2013 -0700 @@ -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 diff -r 5c589218fa09 -r 1358a1e1ff4c components/libtorrent/Makefile --- a/components/libtorrent/Makefile Tue Jun 18 13:15:45 2013 -0700 +++ b/components/libtorrent/Makefile Tue Jun 18 15:52:28 2013 -0700 @@ -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 diff -r 5c589218fa09 -r 1358a1e1ff4c components/libtorrent/patches/rlibtorrent-06-parfait.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/components/libtorrent/patches/rlibtorrent-06-parfait.patch Tue Jun 18 15:52:28 2013 -0700 @@ -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 ++#include + + namespace rak { + diff -r 5c589218fa09 -r 1358a1e1ff4c components/net-snmp/Makefile --- a/components/net-snmp/Makefile Tue Jun 18 13:15:45 2013 -0700 +++ b/components/net-snmp/Makefile Tue Jun 18 15:52:28 2013 -0700 @@ -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 diff -r 5c589218fa09 -r 1358a1e1ff4c components/openssl/openssl-0.9.8-fips-140/Makefile --- a/components/openssl/openssl-0.9.8-fips-140/Makefile Tue Jun 18 13:15:45 2013 -0700 +++ b/components/openssl/openssl-0.9.8-fips-140/Makefile Tue Jun 18 15:52:28 2013 -0700 @@ -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 diff -r 5c589218fa09 -r 1358a1e1ff4c components/rtorrent/Makefile --- a/components/rtorrent/Makefile Tue Jun 18 13:15:45 2013 -0700 +++ b/components/rtorrent/Makefile Tue Jun 18 15:52:28 2013 -0700 @@ -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 diff -r 5c589218fa09 -r 1358a1e1ff4c components/stdcxx/Makefile --- a/components/stdcxx/Makefile Tue Jun 18 13:15:45 2013 -0700 +++ b/components/stdcxx/Makefile Tue Jun 18 15:52:28 2013 -0700 @@ -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 diff -r 5c589218fa09 -r 1358a1e1ff4c components/webalizer/Makefile --- a/components/webalizer/Makefile Tue Jun 18 13:15:45 2013 -0700 +++ b/components/webalizer/Makefile Tue Jun 18 15:52:28 2013 -0700 @@ -55,6 +55,14 @@ CONFIGURE_OPTIONS += CFLAGS="$(CFLAGS)" CONFIGURE_OPTIONS += LDFLAGS="$(LDFLAGS)" +# webalizer is defining u_int64_t but also uses db.h +# which typedefs it, and parfait isn't happy. +# gcc4 may not be as well. +ifeq ($(strip $(PARFAIT_BUILD)),yes) +CC += -Du_int64_t=uint64_t +CONFIGURE_OPTIONS += c_cv_type_u_int64_t=yes +endif + # Needed to correctly build that 64-bit library. LDFLAGS += $(CC_BITS) diff -r 5c589218fa09 -r 1358a1e1ff4c make-rules/ant.mk --- a/make-rules/ant.mk Tue Jun 18 13:15:45 2013 -0700 +++ b/make-rules/ant.mk Tue Jun 18 15:52:28 2013 -0700 @@ -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) diff -r 5c589218fa09 -r 1358a1e1ff4c make-rules/attpackagemake.mk --- a/make-rules/attpackagemake.mk Tue Jun 18 13:15:45 2013 -0700 +++ b/make-rules/attpackagemake.mk Tue Jun 18 15:52:28 2013 -0700 @@ -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) diff -r 5c589218fa09 -r 1358a1e1ff4c make-rules/configure.mk --- a/make-rules/configure.mk Tue Jun 18 13:15:45 2013 -0700 +++ b/make-rules/configure.mk Tue Jun 18 15:52:28 2013 -0700 @@ -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 diff -r 5c589218fa09 -r 1358a1e1ff4c make-rules/justmake.mk --- a/make-rules/justmake.mk Tue Jun 18 13:15:45 2013 -0700 +++ b/make-rules/justmake.mk Tue Jun 18 15:52:28 2013 -0700 @@ -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 diff -r 5c589218fa09 -r 1358a1e1ff4c make-rules/makemaker.mk --- a/make-rules/makemaker.mk Tue Jun 18 13:15:45 2013 -0700 +++ b/make-rules/makemaker.mk Tue Jun 18 15:52:28 2013 -0700 @@ -71,6 +71,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) $@ @@ -92,10 +95,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) diff -r 5c589218fa09 -r 1358a1e1ff4c make-rules/setup.py.mk --- a/make-rules/setup.py.mk Tue Jun 18 13:15:45 2013 -0700 +++ b/make-rules/setup.py.mk Tue Jun 18 15:52:28 2013 -0700 @@ -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 diff -r 5c589218fa09 -r 1358a1e1ff4c make-rules/shared-macros.mk --- a/make-rules/shared-macros.mk Tue Jun 18 13:15:45 2013 -0700 +++ b/make-rules/shared-macros.mk Tue Jun 18 15:52:28 2013 -0700 @@ -225,7 +225,7 @@ SPRO_ROOT = $(BUILD_TOOLS)/SUNWspro SPRO_VROOT = $(SPRO_ROOT)/sunstudio12.1 -PARFAIT_ROOT = $(BUILD_TOOLS)/parfait/parfait-tools-1.0.1/ +PARFAIT_ROOT = $(BUILD_TOOLS)/parfait/parfait-tools-1.2.0.1 PARFAIT= $(PARFAIT_ROOT)/bin/parfait export PARFAIT_NATIVESUNCC=$(SPRO_VROOT)/bin/cc export PARFAIT_NATIVESUNCXX=$(SPRO_VROOT)/bin/CC diff -r 5c589218fa09 -r 1358a1e1ff4c tools/Makefile --- a/tools/Makefile Tue Jun 18 13:15:45 2013 -0700 +++ b/tools/Makefile Tue Jun 18 15:52:28 2013 -0700 @@ -41,7 +41,8 @@ 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 "exec" $(PARFAIT_ROOT)/bin/parfait-$$i '$$*' >> parfait/$$i ; \ + echo "export PARFAIT_NATIVELD=/usr/bin/ld" >> parfait/$$i ; \ + echo "exec" $(PARFAIT_ROOT)/$(MACH)/parfait-$$i '$$*' >> parfait/$$i ; \ chmod +x parfait/$$i ; \ done