SF.net SVN: gar:[23534] csw/mgar/pkg/boost/trunk

wahwah at users.sourceforge.net wahwah at users.sourceforge.net
Fri May 2 10:47:08 CEST 2014


Revision: 23534
          http://sourceforge.net/p/gar/code/23534
Author:   wahwah
Date:     2014-05-02 08:47:06 +0000 (Fri, 02 May 2014)
Log Message:
-----------
boost/trunk: it does not build

Modified Paths:
--------------
    csw/mgar/pkg/boost/trunk/Makefile
    csw/mgar/pkg/boost/trunk/checksums

Added Paths:
-----------
    csw/mgar/pkg/boost/trunk/files/0001-Don-t-try-to-use-fchmodat.patch
    csw/mgar/pkg/boost/trunk/files/0003-Bug-4757-fix-backported.patch
    csw/mgar/pkg/boost/trunk/files/Boost-bug-4757-fix.patch

Modified: csw/mgar/pkg/boost/trunk/Makefile
===================================================================
--- csw/mgar/pkg/boost/trunk/Makefile	2014-05-02 07:42:14 UTC (rev 23533)
+++ csw/mgar/pkg/boost/trunk/Makefile	2014-05-02 08:47:06 UTC (rev 23534)
@@ -1,7 +1,7 @@
 # $Id$
 
 NAME = boost
-VERSION = 1.45.0
+VERSION = 1.55.0
 GARTYPE = v2
 
 define BLURB
@@ -16,37 +16,40 @@
   programming style of the Standard Template Library (STL).
 endef
 
-MASTER_SITES = $(SF_MIRROR)/$(NAME)/
+DESCRIPTION = Free peer-reviewed portable C++ source libraries
+
+MASTER_SITES = $(SF_MIRROR)
 DISTVERSION = $(subst .,_,$(VERSION))
 DISTNAME = $(NAME)_$(DISTVERSION)
 DISTFILES  = $(DISTNAME).tar.bz2
 
+# PATCHFILES += 0003-Bug-4757-fix-backported.patch
+
+# It takes an awful lot of time.
+NOGITPATCH = 1
+
+# PATCHFILES += 0001-Don-t-try-to-use-fchmodat.patch
+
 # Known problems:
 # https://svn.boost.org/trac/boost/ticket/4757
 # Proposed fix:
 # https://svn.boost.org/trac/boost/changeset/66651
 
 # We define upstream file regex so we can be notifed of new upstream software release
-UPSTREAM_MASTER_SITES = $(SF_PROJECT_SHOWFILE)=7586
-UPSTREAM_USE_SF = 1
-UFILES_REGEX = (\d+(?:\.\d+)*)
+# UPSTREAM_MASTER_SITES = $(SF_PROJECT_SHOWFILE)=7586
+# UPSTREAM_USE_SF = 1
+UPSTREAM_MASTER_SITES = http://www.boost.org/users/history/
+UFILES_REGEX = Version (\d+(?:\.\d+)*)
 
-# GARCOMPILER = GNU
+
 TOOLSET = sun
 COMPILER_SUFFIX_PKG =
 COMPILER_SUFFIX_CAT =
 
-PACKAGES += CSWboost$(COMPILER_SUFFIX_PKG)
-CATALOGNAME_CSWboost$(COMPILER_SUFFIX_PKG) += boost$(COMPILER_SUFFIX_CAT)
-SPKG_DESC_CSWboost$(COMPILER_SUFFIX_PKG) = Boost libraries
-# The boost build system is hard to harness.
-CHECKPKG_OVERRIDES_CSWboost$(COMPILER_SUFFIX_PKG) += bad-rpath-entry
+PACKAGES += CSWboost$(COMPILER_SUFFIX_PKG)-dev
+SPKG_DESC_CSWboost$(COMPILER_SUFFIX_PKG)-dev = $(DESCRIPTION), development files
+PKGFILES_CSWboost$(COMPILER_SUFFIX_PKG)-dev = $(PKGFILES_DEVEL)
 
-PACKAGES += CSWboost$(COMPILER_SUFFIX_PKG)devel
-CATALOGNAME_CSWboost$(COMPILER_SUFFIX_PKG)devel = boost$(COMPILER_SUFFIX_CAT)_devel
-SPKG_DESC_CSWboost$(COMPILER_SUFFIX_PKG)devel = Boost libraries, development files
-PKGFILES_CSWboost$(COMPILER_SUFFIX_PKG)devel = $(PKGFILES_DEVEL)
-
 # Empty transitional package
 PACKAGES += CSWboostrt
 CATALOGNAME_CSWboostrt = boost_rt
@@ -57,35 +60,46 @@
 LICENSE = LICENSE_1_0.txt
 
 BUILD_DEP_PKGS += CSWstar
-BUILD_DEP_PKGS += CSWboost-jam
 
 CONFIGURE_SCRIPTS = boost
 BUILD_SCRIPTS = boost
 INSTALL_SCRIPTS = bjam
 
+BUILD64 = 1
+
 BUILD_ARGS += toolset=$(TOOLSET)
 BUILD_ARGS += --prefix=$(DESTDIR)$(prefix)
+BUILD_ARGS += --libdir=$(DESTDIR)$(libdir)
 BUILD_ARGS += link=shared
-BUILD_ARGS += cflags="$(CFLAGS)"
-BUILD_ARGS += cxxflags="$(CXXFLAGS)"
-BUILD_ARGS += linkflags="$(LDFLAGS) $(LD_OPTIONS)"
+BUILD_ARGS += cflags='$(CFLAGS)'
+BUILD_ARGS += cxxflags='$(CXXFLAGS)'
+BUILD_ARGS += linkflags='$(LDFLAGS) $(LD_OPTIONS)'
 # Stop on the first error
 BUILD_ARGS += -q
 # Display commands as you run them, I want to know what you are doing there
 BUILD_ARGS += -d+2
+BUILD_ARGS += include='/opt/csw/include'
+BUILD_ARGS += --debug-building
+BUILD_ARGS += address-model=$(MEMORYMODEL)
+# We don't have 64-bit Python
+BUILD_ARGS += --without-python
 
+BUILD_ARGS_sparcv8plus = instruction-set=v9
+BUILD_ARGS_sparcv9 = instruction-set=v9
+BUILD_ARGS += $(BUILD_ARGS_$(ISA))
+
 TEST_SCRIPTS =
 
 JAMDIR_sparc = solarissparc
 JAMDIR_i386 = solarisx86
 JAMDIR = $(JAMDIR_$(GARCH))
 
-# BUILD64_LIBS_ONLY = 1
+# BUILD64 = 1
 
 # These can't be just passed from Make's PARALLELMFLAGS because of the -l flag.
-BJAM_PARALLELMFLAGS_current9s = -j 32
-BJAM_PARALLELMFLAGS_current9x = -j 5
-BJAM_PARALLELMFLAGS = $(BJAM_PARALLELMFLAGS_$(call modulation2host))
+# BJAM_PARALLELMFLAGS_current9s = -j 32
+# BJAM_PARALLELMFLAGS_current9x = -j 5
+# BJAM_PARALLELMFLAGS = $(BJAM_PARALLELMFLAGS_$(call modulation2host))
 
 include gar/category.mk
 
@@ -100,19 +114,21 @@
 	@$(MAKECOOKIE)
 
 configure-boost:
-	cd $(WORKSRC) && ./bootstrap.sh
+	( cd $(WORKSRC) && \
+	  ./bootstrap.sh $(TOOLSET))
 	@$(MAKECOOKIE)
 
 build-boost:
 	cd $(WORKSRC) && \
-		./bjam \
+		./b2 \
+		  -d+2 \
 			$(BJAM_PARALLELMFLAGS) \
 			$(BUILD_ARGS)
 	@$(MAKECOOKIE)
 
 install-bjam:
 	cd $(WORKSRC) && \
-		./bjam \
+		./b2 \
 			$(BJAM_PARALLELMFLAGS) \
 			$(BUILD_ARGS) \
 			install

Modified: csw/mgar/pkg/boost/trunk/checksums
===================================================================
--- csw/mgar/pkg/boost/trunk/checksums	2014-05-02 07:42:14 UTC (rev 23533)
+++ csw/mgar/pkg/boost/trunk/checksums	2014-05-02 08:47:06 UTC (rev 23534)
@@ -1 +1 @@
-d405c606354789d0426bc07bea617e58  boost_1_45_0.tar.bz2
+d6eef4b4cacb2183f2bf265a5a03a354  boost_1_55_0.tar.bz2

Copied: csw/mgar/pkg/boost/trunk/files/0001-Don-t-try-to-use-fchmodat.patch (from rev 17220, csw/mgar/pkg/boost/branches/boost-gcc/files/0001-Don-t-try-to-use-fchmodat.patch)
===================================================================
--- csw/mgar/pkg/boost/trunk/files/0001-Don-t-try-to-use-fchmodat.patch	                        (rev 0)
+++ csw/mgar/pkg/boost/trunk/files/0001-Don-t-try-to-use-fchmodat.patch	2014-05-02 08:47:06 UTC (rev 23534)
@@ -0,0 +1,25 @@
+From 41a096b2d285342872396ab98594a0cadba310e5 Mon Sep 17 00:00:00 2001
+From: Maciej Blizinski <maciej at opencsw.org>
+Date: Mon, 27 Feb 2012 00:49:24 +0100
+Subject: [PATCH] Don't try to use fchmodat
+
+---
+ libs/filesystem/v3/src/operations.cpp |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/libs/filesystem/v3/src/operations.cpp b/libs/filesystem/v3/src/operations.cpp
+index 226f107..116029b 100644
+--- a/libs/filesystem/v3/src/operations.cpp
++++ b/libs/filesystem/v3/src/operations.cpp
+@@ -1387,7 +1387,7 @@ namespace detail
+ 
+     // Mac OS X Lion and some other platforms don't support fchmodat()  
+ #   if defined(AT_FDCWD) && defined(AT_SYMLINK_NOFOLLOW) \
+-      && (!defined(__SUNPRO_CC) || __SUNPRO_CC > 0x5100)
++      && (!defined(__SUNPRO_CC) || __SUNPRO_CC > 0x5100) && 0
+       if (::fchmodat(AT_FDCWD, p.c_str(), mode_cast(prms),
+            !(prms & symlink_perms) ? 0 : AT_SYMLINK_NOFOLLOW))
+ #   else  // fallback if fchmodat() not supported
+-- 
+1.7.9
+

Added: csw/mgar/pkg/boost/trunk/files/0003-Bug-4757-fix-backported.patch
===================================================================
--- csw/mgar/pkg/boost/trunk/files/0003-Bug-4757-fix-backported.patch	                        (rev 0)
+++ csw/mgar/pkg/boost/trunk/files/0003-Bug-4757-fix-backported.patch	2014-05-02 08:47:06 UTC (rev 23534)
@@ -0,0 +1,86 @@
+From 8b06be191c2f4644d3a266bd140bdac7710aabf4 Mon Sep 17 00:00:00 2001
+From: Maciej Blizinski <maciej at opencsw.org>
+Date: Sat, 18 Dec 2010 02:13:56 +0100
+Subject: [PATCH 3/3] Bug 4757 fix, backported
+
+Bug 4757: Compiler error in boost/array.hpp on Solaris w/Sun Studio 12
+
+https://svn.boost.org/trac/boost/ticket/4757
+---
+ boost/array.hpp |   46 ++++++++++++++++++++++++++++++----------------
+ 1 files changed, 30 insertions(+), 16 deletions(-)
+
+diff --git a/boost/array.hpp b/boost/array.hpp
+index b56a84a..a5bee24 100644
+--- a/boost/array.hpp
++++ b/boost/array.hpp
+@@ -346,7 +346,34 @@ namespace boost {
+         x.swap(y);
+     }
+ 
+-    // Specific for boost::array: simply returns its elems data member.
++#if defined(__SUNPRO_CC)
++//	Trac ticket #4757; the Sun Solaris compiler can't handle
++//	syntax like 'T(&get_c_array(boost::array<T,N>& arg))[N]'
++//	
++//	We can't just use this for all compilers, because the 
++//		borland compilers can't handle this form. 
++	namespace detail {
++       template <typename T, std::size_t N> struct c_array
++       {
++           typedef T type[N];
++       };
++	}
++    
++   // Specific for boost::array: simply returns its elems data member.
++   template <typename T, std::size_t N>
++   typename detail::c_array<T,N>::type& get_c_array(boost::array<T,N>& arg)
++   {
++       return arg.elems;
++   }
++
++   // Specific for boost::array: simply returns its elems data member.
++   template <typename T, std::size_t N>
++   typename const detail::c_array<T,N>::type& get_c_array(const boost::array<T,N>& arg)
++   {
++       return arg.elems;
++   }
++#else
++// Specific for boost::array: simply returns its elems data member.
+     template <typename T, std::size_t N>
+     T(&get_c_array(boost::array<T,N>& arg))[N]
+     {
+@@ -359,7 +386,8 @@ namespace boost {
+     {
+         return arg.elems;
+     }
+-
++#endif
++	
+ #if 0
+     // Overload for std::array, assuming that std::array will have
+     // explicit conversion functions as discussed at the WG21 meeting
+@@ -381,20 +409,6 @@ namespace boost {
+ } /* namespace boost */
+ 
+ 
+-#else
+-// Specific for boost::array: simply returns its elems data member.
+-    template <typename T, std::size_t N>
+-    T(&get_c_array(boost::array<T,N>& arg))[N]
+-    {
+-        return arg.elems;
+-    }
+-    
+-    // Const version.
+-    template <typename T, std::size_t N>
+-    const T(&get_c_array(const boost::array<T,N>& arg))[N]
+-    {
+-        return arg.elems;
+-    }
+ #if BOOST_WORKAROUND(BOOST_MSVC, >= 1400)  
+ # pragma warning(pop)  
+ #endif 
+-- 
+1.7.3.2
+

Added: csw/mgar/pkg/boost/trunk/files/Boost-bug-4757-fix.patch
===================================================================
--- csw/mgar/pkg/boost/trunk/files/Boost-bug-4757-fix.patch	                        (rev 0)
+++ csw/mgar/pkg/boost/trunk/files/Boost-bug-4757-fix.patch	2014-05-02 08:47:06 UTC (rev 23534)
@@ -0,0 +1,54 @@
+https://svn.boost.org/trac/boost/ticket/4757
+
+Patch stolen from:
+https://svn.boost.org/trac/boost/changeset/66651
+
+Index: trunk/boost/array.hpp
+===================================================================
+--- trunk/boost/array.hpp	(revision 66154)
++++ trunk/boost/array.hpp	(revision 66651)
+@@ -347,19 +347,10 @@
+     }
+ 
+-#if 0
+-	// Specific for boost::array: simply returns its elems data member.
+-    template <typename T, std::size_t N>
+-    T(&get_c_array(boost::array<T,N>& arg))[N]
+-    {
+-        return arg.elems;
+-    }
+-    
+-    // Const version.
+-    template <typename T, std::size_t N>
+-    const T(&get_c_array(const boost::array<T,N>& arg))[N]
+-    {
+-        return arg.elems;
+-    }
+-#else
++#if defined(__SUNPRO_CC)
++//	Trac ticket #4757; the Sun Solaris compiler can't handle
++//	syntax like 'T(&get_c_array(boost::array<T,N>& arg))[N]'
++//	
++//	We can't just use this for all compilers, because the 
++//		borland compilers can't handle this form. 
+ 	namespace detail {
+        template <typename T, std::size_t N> struct c_array
+@@ -382,4 +373,18 @@
+        return arg.elems;
+    }
++#else
++// Specific for boost::array: simply returns its elems data member.
++    template <typename T, std::size_t N>
++    T(&get_c_array(boost::array<T,N>& arg))[N]
++    {
++        return arg.elems;
++    }
++    
++    // Const version.
++    template <typename T, std::size_t N>
++    const T(&get_c_array(const boost::array<T,N>& arg))[N]
++    {
++        return arg.elems;
++    }
+ #endif
+ 	

This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.



More information about the devel mailing list