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