Update boost to 1.66.0

Signed-off-by: Adam Jimerson <vendion@gmail.com>
diff --git a/extra/boost/PKGBUILD b/extra/boost/PKGBUILD
index 87b4b7e..88aa7bc 100644
--- a/extra/boost/PKGBUILD
+++ b/extra/boost/PKGBUILD
@@ -1,16 +1,16 @@
 # Port: devel/boost-libs
 pkgbase=boost
 pkgname=('boost-libs' 'boost')
-pkgver=1.64.0
+pkgver=1.66.0
 _boostver=${pkgver//./_}
-pkgrel=2
+pkgrel=1
 url="http://www.boost.org/"
-arch=('i386' 'amd64')
+arch=('amd64')
 license=('custom')
-makedepends=('icu>=51.1' 'python' 'python2')
+makedepends=('icu>=55.1' 'python' 'python2')
 patchdir=(${pkgbase}_${_boostver})
 source=(https://downloads.sourceforge.net/project/${pkgbase}/${pkgbase}/${pkgver}/${pkgbase}_${_boostver}.tar.bz2)
-sha1sums=('51421ef259a4530edea0fbfc448460fcc5c64edb')
+sha256sums=('5721818253e6a0989583192f96782c4a98eb6204965316df9f5ad75819225ca9')
 
 export _stagedir="${srcdir}/stagedir"
 
diff --git a/extra/boost/files/patch-boost_serialization_array.hpp b/extra/boost/files/patch-boost_serialization_array.hpp
deleted file mode 100644
index 3b8a84a..0000000
--- a/extra/boost/files/patch-boost_serialization_array.hpp
+++ /dev/null
@@ -1,14 +0,0 @@
-https://svn.boost.org/trac/boost/ticket/12982
-https://github.com/boostorg/serialization/commit/1d8626158123
-
---- boost/serialization/array.hpp.orig	2017-04-17 02:22:24 UTC
-+++ boost/serialization/array.hpp
-@@ -23,6 +23,8 @@ namespace std{ 
- } // namespace std
- #endif
- 
-+#include <boost/serialization/array_wrapper.hpp>
-+
- #ifndef BOOST_NO_CXX11_HDR_ARRAY
- 
- #include <array>
diff --git a/extra/boost/files/patch-boost_stacktrace_detail_collect__unwind.ipp b/extra/boost/files/patch-boost_stacktrace_detail_collect__unwind.ipp
new file mode 100644
index 0000000..58b3a75
--- /dev/null
+++ b/extra/boost/files/patch-boost_stacktrace_detail_collect__unwind.ipp
@@ -0,0 +1,23 @@
+Expose _Unwind_Backtrace in libcxxrt
+
+--- boost/stacktrace/detail/collect_unwind.ipp.orig	2017-09-02 09:56:17 UTC
++++ boost/stacktrace/detail/collect_unwind.ipp
+@@ -14,7 +14,18 @@
+ 
+ #include <boost/stacktrace/safe_dump_to.hpp>
+ 
++#ifndef _GNU_SOURCE
++#define _GNU_SOURCE
++#define _GNU_SOURCE_TEMPORARY
++#endif
+ #include <unwind.h>
++#ifdef _GNU_SOURCE_TEMPORARY
++#undef _GNU_SOURCE
++#undef _GNU_SOURCE_TEMPORARY
++#endif
++#if !defined(_URC_NO_REASON) && defined(__arm__) && !defined(__ARM_DWARF_EH__)
++#define _URC_NO_REASON _URC_OK
++#endif
+ #include <cstdio>
+ 
+ #if !defined(_GNU_SOURCE) && !defined(BOOST_STACKTRACE_GNU_SOURCE_NOT_REQUIRED) && !defined(BOOST_WINDOWS)
diff --git a/extra/boost/files/patch-libs_stacktrace_build_has__addr2line.cpp b/extra/boost/files/patch-libs_stacktrace_build_has__addr2line.cpp
new file mode 100644
index 0000000..5ee8980
--- /dev/null
+++ b/extra/boost/files/patch-libs_stacktrace_build_has__addr2line.cpp
@@ -0,0 +1,36 @@
+Don't overflow return value from main()
+
+--- libs/stacktrace/build/has_addr2line.cpp.orig	2017-07-10 14:19:05 UTC
++++ libs/stacktrace/build/has_addr2line.cpp
+@@ -4,22 +4,24 @@
+ // accompanying file LICENSE_1_0.txt or copy at
+ // http://www.boost.org/LICENSE_1_0.txt)
+ 
+-#include <cstdlib>
+ #include <string>
+ 
+ #include <boost/config.hpp>
+-#include <unwind.h>
+-#include <sys/types.h>
+-#include <sys/wait.h>
++#ifdef BOOST_MSVC
++#include <io.h>
++#define X_OK 4
++#define access _access
++#else
++#include <unistd.h>
++#endif
+ 
+ int main() {
+ 
+ #ifdef BOOST_STACKTRACE_ADDR2LINE_LOCATION
+     std::string s = BOOST_STRINGIZE( BOOST_STACKTRACE_ADDR2LINE_LOCATION );
+-    s += " -h";
+ #else
+-    std::string s = "/usr/bin/addr2line -h";
++    std::string s = "/usr/bin/addr2line";
+ #endif
+ 
+-    return std::system(s.c_str());
++    return ::access(s.c_str(), X_OK) == -1;
+ }
diff --git a/extra/boost/files/patch-tools_build_src_tools_clang-linux.jam b/extra/boost/files/patch-tools_build_src_tools_clang-linux.jam
index 4d0f5d0..9fd189a 100644
--- a/extra/boost/files/patch-tools_build_src_tools_clang-linux.jam
+++ b/extra/boost/files/patch-tools_build_src_tools_clang-linux.jam
@@ -1,6 +1,6 @@
---- tools/build/src/tools/clang-linux.jam.orig	2017-04-17 02:22:26 UTC
+--- tools/build/src/tools/clang-linux.jam.orig	2017-11-19 12:12:37 UTC
 +++ tools/build/src/tools/clang-linux.jam
-@@ -31,7 +31,7 @@ generators.override clang-linux.compile.c.pch   : pch.
+@@ -32,7 +32,7 @@ generators.override clang-linux.compile.c.pch   : pch.
  generators.override clang-linux.compile.c++.pch : pch.default-cpp-pch-generator ;
   
  type.set-generated-target-suffix PCH
@@ -9,10 +9,10 @@
  
  toolset.inherit-rules clang-linux : gcc ;
  toolset.inherit-flags clang-linux : gcc 
-@@ -96,24 +96,24 @@ rule compile.c++ ( targets * : sources * : properties 
-   gcc.setup-fpic $(targets) : $(sources) : $(properties) ;
-   gcc.setup-address-model $(targets) : $(sources) : $(properties) ;
+@@ -101,47 +101,47 @@ toolset.flags clang-linux.compile OPTIONS <rtti>off : 
+ # C and C++ compilation
  
+ rule compile.c++ ( targets * : sources * : properties * ) {
 -  local pth-file = [ on $(<) return $(PCH_FILE) ] ;
 +  local pch-file = [ on $(<) return $(PCH_FILE) ] ;
  
@@ -40,10 +40,7 @@
  }
  
  rule compile.c ( targets * : sources * : properties * )
-@@ -122,25 +122,25 @@ rule compile.c ( targets * : sources * : properties * 
-   gcc.setup-fpic $(targets) : $(sources) : $(properties) ;
-   gcc.setup-address-model $(targets) : $(sources) : $(properties) ;    
- 
+ {
 -  local pth-file = [ on $(<) return $(PCH_FILE) ] ;
 +  local pch-file = [ on $(<) return $(PCH_FILE) ] ;
  
@@ -76,17 +73,17 @@
  }
  
  actions compile.c++.pch {
--  rm -f "$(<)" && "$(CONFIG_COMMAND)" -c -x c++-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pth -o "$(<)" "$(>)"
-+  rm -f "$(<)" && "$(CONFIG_COMMAND)" -c -x c++-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pch -o "$(<)" "$(>)"
+-  $(RM) -f "$(<)" && "$(CONFIG_COMMAND)" -c -x c++-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pth -o "$(<)" "$(>)"
++  $(RM) -f "$(<)" && "$(CONFIG_COMMAND)" -c -x c++-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pch -o "$(<)" "$(>)"
  }
  
  rule compile.c.pch ( targets * : sources * : properties * ) {
-@@ -164,7 +164,7 @@ rule compile.c.pch ( targets * : sources * : propertie
+@@ -161,7 +161,7 @@ rule compile.c.pch ( targets * : sources * : propertie
  
  actions compile.c.pch
  {
--  rm -f "$(<)" && "$(CONFIG_COMMAND)" -c -x c-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pth -o "$(<)" "$(>)"
-+  rm -f "$(<)" && "$(CONFIG_COMMAND)" -c -x c-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pch -o "$(<)" "$(>)"
+-  $(RM) -f "$(<)" && "$(CONFIG_COMMAND)" -c -x c-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pth -o "$(<)" "$(>)"
++  $(RM) -f "$(<)" && "$(CONFIG_COMMAND)" -c -x c-header $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -Xclang -emit-pch -o "$(<)" "$(>)"
  }
  
  ###############################################################################