From 44a4c48b16548fb17653529a9a633f7e042c5cba Mon Sep 17 00:00:00 2001 From: Jakub Dorňák Date: Jan 19 2016 14:50:03 +0000 Subject: Update to 5.7.10 --- diff --git a/.gitignore b/.gitignore index fa5212b..5707045 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,5 @@ /mysql-5.6.26.tar.gz /mysql-5.6.27.tar.gz /mysql-5.7.9.tar.gz +/mysql-5.7.10.tar.gz +/boost_1_59_0.tar.bz2 diff --git a/boost-1.48.0-add-bjam-man-page.patch b/boost-1.48.0-add-bjam-man-page.patch new file mode 100644 index 0000000..ea3f19f --- /dev/null +++ b/boost-1.48.0-add-bjam-man-page.patch @@ -0,0 +1,150 @@ +diff --git a/tools/build/v2/doc/bjam.1 b/tools/build/v2/doc/bjam.1 +new file mode 100644 +index 0000000..8a44af6 +--- /dev/null ++++ b/tools/build/v2/doc/bjam.1 +@@ -0,0 +1,144 @@ ++.TH "bjam" 1 "Sat Nov 19 2011" "Doxygen" \" -*- nroff -*- ++.ad l ++.nh ++.SH NAME ++bjam \- Command-line utility to build Boost-related C++ projects with Boost\&.Build ++.SH "SYNOPSIS" ++.PP ++\fBbjam\fP \fC[-a] [-dx] [-fx] [-jx] [-lx] [-n] [-ox] [-px] [-q] [-sx=y] [-tx] [-v] [--x]\fP ++.PP ++\fIbjam\fP accepts the following options: ++.PP ++\fB-a\fP ++.br ++ Build all targets, even if they are current ++.PP ++\fB-dx\fP ++.br ++ Set the debug level to x (0-9) ++.PP ++\fB-fx\fP ++.br ++ Read x instead of Jambase ++.PP ++\fB-jx\fP ++.br ++ Run up to x shell commands concurrently ++.PP ++\fB-lx\fP ++.br ++ Limit actions to x number of seconds after which they are stopped ++.PP ++\fB-n\fP ++.br ++ Don't actually execute the updating actions ++.PP ++\fB-ox\fP ++.br ++ Write the updating actions to file x ++.PP ++\fB-px\fP ++.br ++ x=0, pipes action stdout and stderr merged into action output ++.PP ++\fB-q\fP ++.br ++ Quit quickly as soon as a target fails ++.PP ++\fB-sx=y\fP ++.br ++ Set variable x=y, overriding environment ++.PP ++\fB-tx\fP ++.br ++ Rebuild x, even if it is up-to-date ++.PP ++\fB-v\fP ++.br ++ Print the version of jam and exit ++.PP ++\fB--x\fP ++.br ++ Option is ignored ++.SH "DESCRIPTION" ++.PP ++This section provides the information necessary to create your own projects using \fIBoost\&.Build\fP The information provided here is relatively high-level, and Chapter 6, Reference as well as the on-line help system must be used to obtain low-level documentation (see --help) ++.PP ++\fIBoost\&.Build\fP actually consists of two parts - \fIBoost\&.Jam\fP, a build engine with its own interpreted language, and \fIBoost\&.Build\fP itself, implemented in \fIBoost\&.Jam's\fP language\&. The chain of events when you type bjam on the command line is as follows: ++.IP "\(bu" 2 ++\fIBoost\&.Jam\fP tries to find \fIBoost\&.Build\fP and loads the top-level module\&. The exact process is described in the section called “Initialization” ++.PP ++.PP ++.IP "\(bu" 2 ++The top-level module loads user-defined configuration files, \fIuser-config\&.jam\fP and \fIsite-config\&.jam\fP, which define available toolsets ++.PP ++.PP ++.IP "\(bu" 2 ++The \fIJamfile\fP in the current directory is read That in turn might cause reading of further Jamfiles\&. As a result, a tree of projects is created, with targets inside projects ++.PP ++.PP ++.IP "\(bu" 2 ++Finally, using the build request specified on the command line, \fIBoost\&.Build\fP decides which targets should be built and how\&. That information is passed back to \fIBoost\&.Jam\fP, which takes care of actually running the scheduled build action commands ++.PP ++.PP ++So, to be able to successfully use \fIBoost\&.Build\fP, you need to know only four things: ++.IP "\(bu" 2 ++How to configure \fIBoost\&.Build\fP (http://www.boost.org/boost-build2/doc/html/bbv2/overview/configuration.html) ++.IP "\(bu" 2 ++How to declare targets in Jamfiles (http://www.boost.org/boost-build2/doc/html/bbv2/overview/targets.html) ++.IP "\(bu" 2 ++How the build process works (http://www.boost.org/boost-build2/doc/html/bbv2/overview/build_process.html) ++.PP ++.PP ++Some Basics about the \fIBoost\&.Jam\fP language\&. See the section called “Boost\&.Jam Language” (http://www.boost.org/boost-build2/doc/html/bbv2/overview/jam_language.html) ++.SH "CONCEPTS" ++.PP ++\fIBoost\&.Build\fP has a few unique concepts that are introduced in this section\&. The best way to explain the concepts is by comparison with more classical build tools ++.PP ++When using any flavour of make, you directly specify targets and commands that are used to create them from other target\&. The below example creates a\&.o from a\&.c using a hardcoded compiler invocation command ++.PP ++a\&.o: a\&.c ++.br ++ g++ -o a\&.o -g a\&.c ++.PP ++This is rather low-level description mechanism and it is hard to adjust commands, options, and sets of created targets depending on the used compiler and operating system\&. ++.PP ++To improve portability, most modern build system provide a set of higher-level functions that can be used in build description files\&. Consider this example: ++.PP ++add_program ('a', 'a\&.c') ++.br ++.PP ++This is a function call that creates targets necessary to create executable file from source file a\&.c\&. Depending on configured properties, different commands line may be used\&. However, \fIadd_program\fP is higher-level, but rather thin level All targets are created immediately when build description is parsed, which makes it impossible to perform multi-variant builds\&. Often, change in any build property requires complete reconfiguration of the build tree ++.PP ++In order to support true multivariant builds, Boost\&.Build introduces the concept of metatarget—object that is created when build description is parsed and can be later called with specific build properties to generate actual targets ++.PP ++Consider an example: ++.PP ++exe a : a\&.cpp ; ++.br ++.PP ++When this declaration is parsed, \fIBoost\&.Build\fP creates a metatarget, but does not yet decides what files must be created, or what commands must be used\&. After all build files are parsed, Boost\&.Build considers properties requested on the command line\&. Supposed you have invoked \fIBoost\&.Build\fP with: ++.PP ++\fIbjam\fP toolset=gcc toolset=msvc ++.br ++.PP ++In that case, the metatarget will be called twice, once with toolset=gcc and once with toolset=msvc\&. Both invocations will produce concrete targets, that will have different extensions and use different command lines\&. Another key concept is build property\&. Build property is a variable that affects the build process\&. It can be specified on the command line, and is passed when calling a metatarget ++.PP ++While all build tools have a similar mechanism, \fIBoost\&.Build\fP differs by requiring that all build properties are declared in advance, and providing a large set of properties with portable semantics ++.PP ++The final concept is property propagation\&. Boost\&.Build does not require that every metatarget is called with the same properties\&. Instead, the 'top-level' metatargets are called with the properties specified on the command line Each metatarget can elect to augment or override some properties (in particular, using the requirements mechanism, see the section called “Requirements”: http://www.boost.org/boost-build2/doc/html/bbv2/overview/targets.html#bbv2.overview.targets.requirements) Then, the dependency metatargets are called with modified properties and produce concrete targets that are then used in build process Of course, dependency metatargets maybe in turn modify build properties and have dependencies of their own\&. ++.PP ++For more in-depth treatment of the requirements and concepts, you may refer to SYRCoSE 2009 Boost\&.Build article (http://syrcose.ispras.ru/2009/files/04_paper.pdf)\&. ++.SH "SEE ALSO" ++.PP ++\fBboost-libraries\fP(3) ++.SH "SUPPORT" ++.PP ++Please report any bugs to https://svn.boost.org/trac/boost/ ++.SH "COPYRIGHT" ++.PP ++Boost Software License - Version 1\&.0 - August 17th, 2003 ++.PP ++See the LICENSE_1_0\&.txt file for more information on that license, or directly on Internet: ++.br ++ http://www.boost.org/LICENSE_1_0.txt diff --git a/boost-1.50.0-fix-non-utf8-files.patch b/boost-1.50.0-fix-non-utf8-files.patch new file mode 100644 index 0000000..b60a3ac --- /dev/null +++ b/boost-1.50.0-fix-non-utf8-files.patch @@ -0,0 +1,22 @@ +diff --git a/libs/units/example/autoprefixes.cpp b/libs/units/example/autoprefixes.cpp +index 8b2bc43..d04f2fe 100644 +--- a/libs/units/example/autoprefixes.cpp ++++ b/libs/units/example/autoprefixes.cpp +@@ -67,7 +67,7 @@ struct thing_base_unit : boost::units::base_unit + { + static const char* name() { return("EUR"); } +- static const char* symbol() { return("�"); } ++ static const char* symbol() { return("€"); } + }; + + int main() +@@ -140,7 +140,7 @@ int main() + + quantity ce = 2048. * euro_base_unit::unit_type(); + cout << name_format << engineering_prefix << ce << endl; // 2.048 kiloEUR +- cout << symbol_format << engineering_prefix << ce << endl; // 2.048 k� ++ cout << symbol_format << engineering_prefix << ce << endl; // 2.048 k€ + + + return 0; diff --git a/boost-1.54.0-locale-unused_typedef.patch b/boost-1.54.0-locale-unused_typedef.patch new file mode 100644 index 0000000..b7c9128 --- /dev/null +++ b/boost-1.54.0-locale-unused_typedef.patch @@ -0,0 +1,11 @@ +diff -urp boost_1_54_0-orig/boost/locale/boundary/segment.hpp boost_1_54_0/boost/locale/boundary/segment.hpp +--- boost_1_54_0-orig/boost/locale/boundary/segment.hpp 2013-07-23 00:47:27.020787174 +0200 ++++ boost_1_54_0/boost/locale/boundary/segment.hpp 2013-07-23 00:50:40.382959016 +0200 +@@ -27,7 +27,6 @@ namespace boundary { + int compare_text(LeftIterator l_begin,LeftIterator l_end,RightIterator r_begin,RightIterator r_end) + { + typedef LeftIterator left_iterator; +- typedef RightIterator right_iterator; + typedef typename std::iterator_traits::value_type char_type; + typedef std::char_traits traits; + while(l_begin!=l_end && r_begin!=r_end) { diff --git a/boost-1.55.0-python-test-PyImport_AppendInittab.patch b/boost-1.55.0-python-test-PyImport_AppendInittab.patch new file mode 100644 index 0000000..1d2ee5c --- /dev/null +++ b/boost-1.55.0-python-test-PyImport_AppendInittab.patch @@ -0,0 +1,98 @@ +diff -up boost_1_55_0/libs/python/test/exec.cpp\~ boost_1_55_0/libs/python/test/exec.cpp +--- boost_1_55_0/libs/python/test/exec.cpp~ 2010-07-05 00:38:38.000000000 +0200 ++++ boost_1_55_0/libs/python/test/exec.cpp 2015-01-09 21:31:12.903218280 +0100 +@@ -56,6 +56,20 @@ void eval_test() + BOOST_TEST(value == "ABCDEFG"); + } + ++struct PyCtx ++{ ++ PyCtx() { ++ Py_Initialize(); ++ } ++ ++ ~PyCtx() { ++ // N.B. certain problems may arise when Py_Finalize is called when ++ // using Boost.Python. However in this test suite it all seems to ++ // work fine. ++ Py_Finalize(); ++ } ++}; ++ + void exec_test() + { + // Register the module with the interpreter +@@ -68,6 +82,8 @@ void exec_test() + ) == -1) + throw std::runtime_error("Failed to add embedded_hello to the interpreter's " + "builtin modules"); ++ ++ PyCtx ctx; + // Retrieve the main module + python::object main = python::import("__main__"); + +@@ -148,41 +164,43 @@ void check_pyerr(bool pyerr_expected=fal + } + } + ++template ++bool ++run_and_handle_exception(Cb cb, bool pyerr_expected = false) ++{ ++ PyCtx ctx; ++ if (python::handle_exception(cb)) { ++ check_pyerr(pyerr_expected); ++ return true; ++ } else { ++ return false; ++ } ++} ++ + int main(int argc, char **argv) + { + BOOST_TEST(argc == 2 || argc == 3); + std::string script = argv[1]; +- // Initialize the interpreter +- Py_Initialize(); + +- if (python::handle_exception(eval_test)) { +- check_pyerr(); +- } +- else if(python::handle_exception(exec_test)) { +- check_pyerr(); +- } +- else if (python::handle_exception(boost::bind(exec_file_test, script))) { ++ // N.B. exec_test mustn't be called through run_and_handle_exception ++ // as it needs to handles the python context by itself. ++ if (run_and_handle_exception(eval_test) ++ || python::handle_exception(exec_test)) + check_pyerr(); +- } +- +- if (python::handle_exception(exec_test_error)) +- { +- check_pyerr(/*pyerr_expected*/ true); +- } + else +- { ++ run_and_handle_exception(boost::bind(exec_file_test, script)); ++ ++ if (!run_and_handle_exception(exec_test_error, true)) + BOOST_ERROR("Python exception expected, but not seen."); +- } + + if (argc > 2) { ++ PyCtx ctx; + // The main purpose is to test compilation. Since this test generates + // a file and I (rwgk) am uncertain about the side-effects, run it only + // if explicitly requested. + exercise_embedding_html(); + } + +- // Boost.Python doesn't support Py_Finalize yet. +- // Py_Finalize(); + return boost::report_errors(); + } + + +Diff finished. Fri Jan 9 21:31:13 2015 diff --git a/boost-1.57.0-build-optflags.patch b/boost-1.57.0-build-optflags.patch new file mode 100644 index 0000000..d0b925f --- /dev/null +++ b/boost-1.57.0-build-optflags.patch @@ -0,0 +1,48 @@ +diff -up ./tools/build/src/tools/gcc.jam~ ./tools/build/src/tools/gcc.jam +--- ./tools/build/src/tools/gcc.jam~ 2015-02-09 15:01:04.850331626 +0100 ++++ ./tools/build/src/tools/gcc.jam 2015-02-09 15:44:29.122307134 +0100 +@@ -366,17 +366,17 @@ generators.override gcc.compile.c++.pch + toolset.flags gcc.compile PCH_FILE on : ; + + # Declare flags and action for compilation. +-toolset.flags gcc.compile OPTIONS off : -O0 ; +-toolset.flags gcc.compile OPTIONS speed : -O3 ; +-toolset.flags gcc.compile OPTIONS space : -Os ; ++toolset.flags gcc.compile OPTIONS off : ; ++toolset.flags gcc.compile OPTIONS speed : ; ++toolset.flags gcc.compile OPTIONS space : ; + +-toolset.flags gcc.compile OPTIONS off : -fno-inline ; +-toolset.flags gcc.compile OPTIONS on : -Wno-inline ; +-toolset.flags gcc.compile OPTIONS full : -finline-functions -Wno-inline ; ++toolset.flags gcc.compile OPTIONS off : ; ++toolset.flags gcc.compile OPTIONS on : ; ++toolset.flags gcc.compile OPTIONS full : ; + +-toolset.flags gcc.compile OPTIONS off : -w ; +-toolset.flags gcc.compile OPTIONS on : -Wall ; +-toolset.flags gcc.compile OPTIONS all : -Wall -pedantic ; ++toolset.flags gcc.compile OPTIONS off : ; ++toolset.flags gcc.compile OPTIONS on : ; ++toolset.flags gcc.compile OPTIONS all : ; + toolset.flags gcc.compile OPTIONS on : -Werror ; + + toolset.flags gcc.compile OPTIONS on : -g ; +@@ -603,7 +603,7 @@ rule compile.fortran ( targets * : sourc + + actions compile.c++ bind PCH_FILE + { +- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" -c -o "$(<:W)" "$(>:W)" ++ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" -c -o "$(<:W)" "$(>:W)" + } + + actions compile.c bind PCH_FILE +@@ -613,7 +613,7 @@ actions compile.c bind PCH_FILE + + actions compile.c++.preprocess bind PCH_FILE + { +- "$(CONFIG_COMMAND)" $(LANG) -ftemplate-depth-$(TEMPLATE_DEPTH) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" "$(>:W)" -E >"$(<:W)" ++ "$(CONFIG_COMMAND)" $(LANG) $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(PCH_FILE:D)" -I"$(INCLUDES)" "$(>:W)" -E >"$(<:W)" + } + + actions compile.c.preprocess bind PCH_FILE diff --git a/boost-1.57.0-mpl-print.patch b/boost-1.57.0-mpl-print.patch new file mode 100644 index 0000000..561cef1 --- /dev/null +++ b/boost-1.57.0-mpl-print.patch @@ -0,0 +1,31 @@ +diff -up boost_1_57_0/boost/mpl/print.hpp\~ boost_1_57_0/boost/mpl/print.hpp +--- boost_1_57_0/boost/mpl/print.hpp~ 2014-07-09 23:12:31.000000000 +0200 ++++ boost_1_57_0/boost/mpl/print.hpp 2015-01-20 12:44:59.621400948 +0100 +@@ -52,16 +52,15 @@ struct print + enum { n = sizeof(T) + -1 }; + #elif defined(__MWERKS__) + void f(int); +-#else +- enum { +- n = +-# if defined(__EDG_VERSION__) +- aux::dependent_unsigned::value > -1 +-# else +- sizeof(T) > -1 +-# endif +- }; +-#endif ++#elif defined(__EDG_VERSION__) ++ enum { n = aux::dependent_unsigned::value > -1 }; ++#elif defined(BOOST_GCC) ++ enum { n1 }; ++ enum { n2 }; ++ enum { n = n1 != n2 }; ++#else ++ enum { n = sizeof(T) > -1 }; ++#endif + }; + + #if defined(BOOST_MSVC) + +Diff finished. Tue Jan 20 12:45:03 2015 diff --git a/boost-1.57.0-python-abi_letters.patch b/boost-1.57.0-python-abi_letters.patch new file mode 100644 index 0000000..7df3ee7 --- /dev/null +++ b/boost-1.57.0-python-abi_letters.patch @@ -0,0 +1,62 @@ +--- boost_1_57_0/tools/build/src/tools/python.jam 2013-05-21 06:14:18.000000000 +0200 ++++ boost_1_55_0/tools/build/src/tools/python.jam 2014-05-29 19:09:12.115413877 +0200 +@@ -94,7 +94,7 @@ feature.feature pythonpath : : free opti + # using python : 2.3 : /usr/local/bin/python ; + # + rule init ( version ? : cmd-or-prefix ? : includes * : libraries ? +- : condition * : extension-suffix ? ) ++ : condition * : extension-suffix ? : abi-letters ? ) + { + project.push-current $(.project) ; + +@@ -107,7 +107,7 @@ rule init ( version ? : cmd-or-prefix ? + } + } + +- configure $(version) : $(cmd-or-prefix) : $(includes) : $(libraries) : $(condition) : $(extension-suffix) ; ++ configure $(version) : $(cmd-or-prefix) : $(includes) : $(libraries) : $(condition) : $(extension-suffix) : $(abi-letters) ; + + project.pop-current ; + } +@@ -653,7 +653,7 @@ local rule system-library-dependencies ( + + # Declare a target to represent Python's library. + # +-local rule declare-libpython-target ( version ? : requirements * ) ++local rule declare-libpython-target ( version ? : requirements * : abi-letters ? ) + { + # Compute the representation of Python version in the name of Python's + # library file. +@@ -677,13 +677,13 @@ local rule declare-libpython-target ( ve + } + + # Declare it. +- lib python.lib : : python$(lib-version) $(requirements) ; ++ lib python.lib : : python$(lib-version)$(abi-letters) $(requirements) ; + } + + + # Implementation of init. + local rule configure ( version ? : cmd-or-prefix ? : includes * : libraries ? : +- condition * : extension-suffix ? ) ++ condition * : extension-suffix ? : abi-letters ? ) + { + local prefix ; + local exec-prefix ; +@@ -699,6 +699,7 @@ local rule configure ( version ? : cmd-o + extension-suffix ?= _d ; + } + extension-suffix ?= "" ; ++ abi-letters ?= "" ; + + # Normalize and dissect any version number. + local major-minor ; +@@ -922,7 +923,7 @@ local rule configure ( version ? : cmd-o + } + else + { +- declare-libpython-target $(version) : $(target-requirements) ; ++ declare-libpython-target $(version) : $(target-requirements) : $(abi-letters) ; + + # This is an evil hack. On, Windows, when Python is embedded, nothing + # seems to set up sys.path to include Python's standard library diff --git a/boost-1.57.0-python-libpython_dep.patch b/boost-1.57.0-python-libpython_dep.patch new file mode 100644 index 0000000..57bfc26 --- /dev/null +++ b/boost-1.57.0-python-libpython_dep.patch @@ -0,0 +1,13 @@ +Index: boost_1_57_0/tools/build/src/tools/python.jam +=================================================================== +--- boost_1_57_0/tools/build/src/tools/python.jam (revision 50406) ++++ boost_1_57_0/tools/build/src/tools/python.jam (working copy) +@@ -994,7 +994,7 @@ + else + { + alias python_for_extensions +- : ++ : python + : $(target-requirements) + : + : $(usage-requirements) diff --git a/boost-1.57.0-spirit-unused_typedef.patch b/boost-1.57.0-spirit-unused_typedef.patch new file mode 100644 index 0000000..2829629 --- /dev/null +++ b/boost-1.57.0-spirit-unused_typedef.patch @@ -0,0 +1,19 @@ +diff -up boost_1_57_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp\~ boost_1_57_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp +--- boost_1_57_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp~ 2014-10-13 12:21:40.000000000 +0200 ++++ boost_1_57_0/boost/spirit/home/classic/core/non_terminal/impl/grammar.ipp 2015-01-20 13:25:50.069710766 +0100 +@@ -282,12 +282,12 @@ struct grammar_definition + #if !defined(BOOST_SPIRIT_SINGLE_GRAMMAR_INSTANCE) + typedef impl::grammar_helper_base helper_base_t; + typedef grammar_helper_list helper_list_t; +- typedef typename helper_list_t::vector_t::reverse_iterator iterator_t; + + helper_list_t& helpers = + grammartract_helper_list::do_(self); + + # if defined(BOOST_INTEL_CXX_VERSION) ++ typedef typename helper_list_t::vector_t::reverse_iterator iterator_t; + for (iterator_t i = helpers.rbegin(); i != helpers.rend(); ++i) + (*i)->undefine(self); + # else + +Diff finished. Tue Jan 20 13:25:53 2015 diff --git a/boost-1.58.0-address-model.patch b/boost-1.58.0-address-model.patch new file mode 100644 index 0000000..3582737 --- /dev/null +++ b/boost-1.58.0-address-model.patch @@ -0,0 +1,13 @@ +--- boost_1_58_0/tools/build/src/tools/gcc.jam~ 2015-07-17 15:14:57.381636224 +0100 ++++ boost_1_58_0/tools/build/src/tools/gcc.jam 2015-07-27 17:35:29.122264048 +0100 +@@ -421,7 +421,9 @@ + + rule setup-address-model ( targets * : sources * : properties * ) + { +- local model = [ feature.get-values address-model : $(properties) ] ; ++ # For RPM builds the address model flag is passed in %{optflags}. ++ # local model = [ feature.get-values address-model : $(properties) ] ; ++ local model ; + if $(model) + { + local option ; diff --git a/boost-1.58.0-pool-test_linking.patch b/boost-1.58.0-pool-test_linking.patch new file mode 100644 index 0000000..a381370 --- /dev/null +++ b/boost-1.58.0-pool-test_linking.patch @@ -0,0 +1,31 @@ +diff -up boost_1_58_0/libs/pool/test/Jamfile.v2\~ boost_1_58_0/libs/pool/test/Jamfile.v2 +--- boost_1_57_0/libs/pool/test/Jamfile.v2~ 2015-07-17 11:36:16.362519826 +0100 ++++ boost_1_57_0/libs/pool/test/Jamfile.v2 2015-07-17 11:37:38.858847388 +0100 +@@ -28,17 +28,17 @@ + local Werr = gcc:on msvc:on ; + + test-suite pool : +- [ run test_simple_seg_storage.cpp : : : $(Werr) msvc:-wd4267 ] +- [ run test_pool_alloc.cpp : : : $(Werr) ] +- [ run pool_msvc_compiler_bug_test.cpp : : : $(Werr) msvc:-wd4512 ] +- [ run test_msvc_mem_leak_detect.cpp : : : $(Werr) ] +- [ run test_bug_3349.cpp : : : $(Werr) ] +- [ run test_bug_4960.cpp : : : $(Werr) ] +- [ run test_bug_1252.cpp : : : $(Werr) ] +- [ run test_bug_2696.cpp : : : $(Werr) ] +- [ run test_bug_5526.cpp : : : $(Werr) ] ++ [ run test_simple_seg_storage.cpp : : : $(Werr) msvc:-wd4267 /boost/system//boost_system ] ++ [ run test_pool_alloc.cpp : : : $(Werr) /boost/system//boost_system ] ++ [ run pool_msvc_compiler_bug_test.cpp : : : $(Werr) msvc:-wd4512 /boost/system//boost_system ] ++ [ run test_msvc_mem_leak_detect.cpp : : : $(Werr) /boost/system//boost_system ] ++ [ run test_bug_3349.cpp : : : $(Werr) /boost/system//boost_system ] ++ [ run test_bug_4960.cpp : : : $(Werr) /boost/system//boost_system ] ++ [ run test_bug_1252.cpp : : : $(Werr) /boost/system//boost_system ] ++ [ run test_bug_2696.cpp : : : $(Werr) /boost/system//boost_system ] ++ [ run test_bug_5526.cpp : : : $(Werr) /boost/system//boost_system ] + [ run test_threading.cpp : : : multi /boost/thread//boost_thread ] +- [ run ../example/time_pool_alloc.cpp : : : $(Werr) ] ++ [ run ../example/time_pool_alloc.cpp : : : $(Werr) /boost/system//boost_system ] + [ compile test_poisoned_macros.cpp : $(Werr) ] + + # diff --git a/boost-1.58.0-pool.patch b/boost-1.58.0-pool.patch new file mode 100644 index 0000000..ed8449e --- /dev/null +++ b/boost-1.58.0-pool.patch @@ -0,0 +1,120 @@ +Index: boost/pool/pool.hpp +=================================================================== +--- boost/pool/pool.hpp (revision 78317) ++++ boost/pool/pool.hpp (revision 78326) +@@ -27,4 +27,6 @@ + #include + ++// std::numeric_limits ++#include + // boost::integer::static_lcm + #include +@@ -358,4 +360,11 @@ + } + ++ size_type max_chunks() const ++ { //! Calculated maximum number of memory chunks that can be allocated in a single call by this Pool. ++ size_type partition_size = alloc_size(); ++ size_type POD_size = integer::static_lcm::value + sizeof(size_type); ++ return (std::numeric_limits::max() - POD_size) / alloc_size(); ++ } ++ + static void * & nextof(void * const ptr) + { //! \returns Pointer dereferenced. +@@ -377,5 +388,7 @@ + //! the first time that object needs to allocate system memory. + //! The default is 32. This parameter may not be 0. +- //! \param nmax_size is the maximum number of chunks to allocate in one block. ++ //! \param nmax_size is the maximum number of chunks to allocate in one block. ++ set_next_size(nnext_size); ++ set_max_size(nmax_size); + } + +@@ -400,7 +413,7 @@ + } + void set_next_size(const size_type nnext_size) +- { //! Set number of chunks to request from the system the next time that object needs to allocate system memory. This value should never be set to 0. +- //! \returns nnext_size. +- next_size = start_size = nnext_size; ++ { //! Set number of chunks to request from the system the next time that object needs to allocate system memory. This value should never be set to 0. ++ BOOST_USING_STD_MIN(); ++ next_size = start_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(nnext_size, max_chunks()); + } + size_type get_max_size() const +@@ -410,5 +423,6 @@ + void set_max_size(const size_type nmax_size) + { //! Set max_size. +- max_size = nmax_size; ++ BOOST_USING_STD_MIN(); ++ max_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(nmax_size, max_chunks()); + } + size_type get_requested_size() const +@@ -713,7 +727,7 @@ + BOOST_USING_STD_MIN(); + if(!max_size) +- next_size <<= 1; ++ set_next_size(next_size << 1); + else if( next_size*partition_size/requested_size < max_size) +- next_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size*requested_size/ partition_size); ++ set_next_size(min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size * requested_size / partition_size)); + + // initialize it, +@@ -753,7 +767,7 @@ + BOOST_USING_STD_MIN(); + if(!max_size) +- next_size <<= 1; ++ set_next_size(next_size << 1); + else if( next_size*partition_size/requested_size < max_size) +- next_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size*requested_size/ partition_size); ++ set_next_size(min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size * requested_size / partition_size)); + + // initialize it, +@@ -797,4 +811,6 @@ + //! \returns Address of chunk n if allocated ok. + //! \returns 0 if not enough memory for n chunks. ++ if (n > max_chunks()) ++ return 0; + + const size_type partition_size = alloc_size(); +@@ -845,7 +861,7 @@ + BOOST_USING_STD_MIN(); + if(!max_size) +- next_size <<= 1; ++ set_next_size(next_size << 1); + else if( next_size*partition_size/requested_size < max_size) +- next_size = min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size*requested_size/ partition_size); ++ set_next_size(min BOOST_PREVENT_MACRO_SUBSTITUTION(next_size << 1, max_size * requested_size / partition_size)); + + // insert it into the list, +Index: libs/pool/test/test_bug_6701.cpp +=================================================================== +--- libs/pool/test/test_bug_6701.cpp (revision 78326) ++++ libs/pool/test/test_bug_6701.cpp (revision 78326) +@@ -0,0 +1,27 @@ ++/* Copyright (C) 2012 Étienne Dupuis ++* ++* Use, modification and distribution is subject to the ++* Boost Software License, Version 1.0. (See accompanying ++* file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) ++*/ ++ ++// Test of bug #6701 (https://svn.boost.org/trac/boost/ticket/6701) ++ ++#include ++#include ++ ++int main() ++{ ++ boost::pool<> p(1024, std::numeric_limits::max() / 768); ++ ++ void *x = p.malloc(); ++ BOOST_ASSERT(!x); ++ ++ BOOST_ASSERT(std::numeric_limits::max() / 1024 >= p.get_next_size()); ++ BOOST_ASSERT(std::numeric_limits::max() / 1024 >= p.get_max_size()); ++ ++ void *y = p.ordered_malloc(std::numeric_limits::max() / 768); ++ BOOST_ASSERT(!y); ++ ++ return 0; ++} diff --git a/boost-1.59-python-make_setter.patch b/boost-1.59-python-make_setter.patch new file mode 100644 index 0000000..6c00658 --- /dev/null +++ b/boost-1.59-python-make_setter.patch @@ -0,0 +1,25 @@ +From f410fbd64d887e2a8824f968b0533588489b5430 Mon Sep 17 00:00:00 2001 +From: Jonathan Wakely +Date: Wed, 2 Sep 2015 13:02:12 +0100 +Subject: [PATCH] Python: Fix condition for make_setter overload. + +This fixes the regression caused by 42e7d7b. + +Fixes #39 +--- + include/boost/python/data_members.hpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/include/boost/python/data_members.hpp b/include/boost/python/data_members.hpp +index 139bde3..5d3309c 100644 +--- a/include/boost/python/data_members.hpp ++++ b/include/boost/python/data_members.hpp +@@ -305,7 +305,7 @@ inline object make_setter(D& x) + return detail::make_setter(x, default_call_policies(), is_member_pointer(), 0); + } + +-# if BOOST_WORKAROUND(__EDG_VERSION__, <= 238) ++# if !BOOST_WORKAROUND(__EDG_VERSION__, <= 238) + template + inline object make_setter(D const& x) + { diff --git a/boost-1.59-test-fenv.patch b/boost-1.59-test-fenv.patch new file mode 100644 index 0000000..df87f56 --- /dev/null +++ b/boost-1.59-test-fenv.patch @@ -0,0 +1,32 @@ +commit 2f3b98e640c25fe45ae691a5aa950745380b983e +Author: Jonathan Wakely +Date: Mon Sep 14 15:05:24 2015 +0100 + + Do not qualify names that might be macros. + +diff --git a/include/boost/test/impl/execution_monitor.ipp b/include/boost/test/impl/execution_monitor.ipp +index 3a9e779..8b319df 100644 +--- a/include/boost/test/impl/execution_monitor.ipp ++++ b/include/boost/test/impl/execution_monitor.ipp +@@ -1380,8 +1380,8 @@ enable( unsigned mask ) + + return ~old_cw & BOOST_FPE_ALL; + #elif defined(__GLIBC__) && defined(__USE_GNU) && !defined(BOOST_CLANG) && !defined(BOOST_NO_FENV_H) +- ::feclearexcept(BOOST_FPE_ALL); +- int res = ::feenableexcept( mask ); ++ feclearexcept(BOOST_FPE_ALL); ++ int res = feenableexcept( mask ); + return res == -1 ? (unsigned)BOOST_FPE_INV : (unsigned)res; + #else + /* Not Implemented */ +@@ -1417,8 +1417,8 @@ disable( unsigned mask ) + + return ~old_cw & BOOST_FPE_ALL; + #elif defined(__GLIBC__) && defined(__USE_GNU) && !defined(BOOST_CLANG) && !defined(BOOST_NO_FENV_H) +- ::feclearexcept(BOOST_FPE_ALL); +- int res = ::fedisableexcept( mask ); ++ feclearexcept(BOOST_FPE_ALL); ++ int res = fedisableexcept( mask ); + return res == -1 ? (unsigned)BOOST_FPE_INV : (unsigned)res; + #else + /* Not Implemented */ diff --git a/boost-1.59.0-log.patch b/boost-1.59.0-log.patch new file mode 100644 index 0000000..844b3ff --- /dev/null +++ b/boost-1.59.0-log.patch @@ -0,0 +1,106 @@ +From 7da193fde1a9c1bc925ee980339f4df2e1a66fa7 Mon Sep 17 00:00:00 2001 +From: Andrey Semashev +Date: Sun, 23 Aug 2015 17:27:20 +0300 +Subject: [PATCH] Fixed compilation of operator<< into a record ostream, when + the operator right hand argument is not directly supported by + formatting_ostream. Fixed #11549. + +--- + +diff --git a/include/boost/log/sources/record_ostream.hpp b/include/boost/log/sources/record_ostream.hpp +index b3c58e2..c1e8059 100644 +--- a/include/boost/log/sources/record_ostream.hpp ++++ b/include/boost/log/sources/record_ostream.hpp +@@ -39,6 +39,18 @@ namespace boost { + + BOOST_LOG_OPEN_NAMESPACE + ++template< typename CharT > ++class basic_record_ostream; ++ ++namespace aux { ++ ++template< typename StreamT, typename R > ++struct enable_if_record_ostream {}; ++template< typename CharT, typename R > ++struct enable_if_record_ostream< basic_record_ostream< CharT >, R > { typedef R type; }; ++ ++} // namespace aux ++ + /*! + * \brief Logging record adapter with a streaming capability + * +@@ -174,6 +186,55 @@ typedef basic_record_ostream< char > record_ostream; //!< Convenience typ + typedef basic_record_ostream< wchar_t > wrecord_ostream; //!< Convenience typedef for wide-character logging + #endif + ++// Implementation note: these operators below should be the least attractive for the compiler ++// so that user's overloads are chosen, when present. We use function template partial ordering for this purpose. ++// We also don't use perfect forwarding for the right hand argument because in ths case the generic overload ++// would be more preferred than the typical one written by users: ++// ++// record_ostream& operator<< (record_ostream& strm, my_type const& arg); ++// ++// This is because my_type rvalues require adding const to the type, which counts as a conversion that is not required ++// if there is a perfect forwarding overload. ++template< typename StreamT, typename T > ++inline typename boost::log::aux::enable_if_record_ostream< StreamT, StreamT& >::type ++operator<< (StreamT& strm, T const& value) ++{ ++ typedef basic_formatting_ostream< typename StreamT::char_type > formatting_ostream_type; ++ static_cast< formatting_ostream_type& >(strm) << value; ++ return strm; ++} ++ ++template< typename StreamT, typename T > ++inline typename boost::log::aux::enable_if_record_ostream< StreamT, StreamT& >::type ++operator<< (StreamT& strm, T& value) ++{ ++ typedef basic_formatting_ostream< typename StreamT::char_type > formatting_ostream_type; ++ static_cast< formatting_ostream_type& >(strm) << value; ++ return strm; ++} ++ ++#if !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) ++ ++template< typename StreamT, typename T > ++inline typename boost::log::aux::enable_if_record_ostream< StreamT, StreamT& >::type ++operator<< (StreamT&& strm, T const& value) ++{ ++ typedef basic_formatting_ostream< typename StreamT::char_type > formatting_ostream_type; ++ static_cast< formatting_ostream_type& >(strm) << value; ++ return strm; ++} ++ ++template< typename StreamT, typename T > ++inline typename boost::log::aux::enable_if_record_ostream< StreamT, StreamT& >::type ++operator<< (StreamT&& strm, T& value) ++{ ++ typedef basic_formatting_ostream< typename StreamT::char_type > formatting_ostream_type; ++ static_cast< formatting_ostream_type& >(strm) << value; ++ return strm; ++} ++ ++#endif // !defined(BOOST_NO_CXX11_RVALUE_REFERENCES) ++ + namespace aux { + + //! Internal class that provides formatting streams for record pumps +diff --git a/include/boost/log/utility/formatting_ostream.hpp b/include/boost/log/utility/formatting_ostream.hpp +index 4345206..744acc0 100644 +--- a/include/boost/log/utility/formatting_ostream.hpp ++++ b/include/boost/log/utility/formatting_ostream.hpp +@@ -779,6 +779,13 @@ void basic_formatting_ostream< CharT, TraitsT, AllocatorT >::aligned_write(const + + // Implementation note: these operators below should be the least attractive for the compiler + // so that user's overloads are chosen, when present. We use function template partial ordering for this purpose. ++// We also don't use perfect forwarding for the right hand argument because in ths case the generic overload ++// would be more preferred than the typical one written by users: ++// ++// formatting_ostream& operator<< (formatting_ostream& strm, my_type const& arg); ++// ++// This is because my_type rvalues require adding const to the type, which counts as a conversion that is not required ++// if there is a perfect forwarding overload. + template< typename StreamT, typename T > + inline typename boost::log::aux::enable_if_formatting_ostream< StreamT, StreamT& >::type + operator<< (StreamT& strm, T const& value) diff --git a/community-mysql-5.6.16-mysql-install.patch b/community-mysql-5.6.16-mysql-install.patch deleted file mode 100644 index 5efc4eb..0000000 --- a/community-mysql-5.6.16-mysql-install.patch +++ /dev/null @@ -1,46 +0,0 @@ -We have, for security hardening reasons, changed upstream sources to never -create the test database in 5.7. This patch is a backport from 5.7. - -The patch in Fedora is the same that we apply in our own repos. Debian and -Ubuntu are also skipping creation of the test database, so we're trying -to align across distros in this issue. - -diff --git a/scripts/mysql_install_db.pl.in b/scripts/mysql_install_db.pl.in -index 1fa5164..4aa49ca 100644 ---- a/scripts/mysql_install_db.pl.in -+++ b/scripts/mysql_install_db.pl.in -@@ -113,6 +113,7 @@ EOF2 - print <{srcdir} and $opt->{basedir} ) - { - error($opt,"Specify either --basedir or --srcdir, not both"); - } --if ( $opt->{'keep-my-cnf'} ) -+if ( $opt->{rpm} || $opt->{'keep-my-cnf'} ) - { - $keep_my_cnf = 1; - } -@@ -664,7 +665,7 @@ if ( $opt->{'skip-name-resolve'} and $resolved and $resolved =~ /\s/ ) - } - - # ---------------------------------------------------------------------- --# Create database directories mysql & test -+# Create database directory mysql - # ---------------------------------------------------------------------- - - # FIXME The shell variant uses "mkdir -p": -@@ -697,7 +698,7 @@ if ($opt_user) - } - } - --foreach my $dir ( $opt->{ldata}, "$opt->{ldata}/mysql", "$opt->{ldata}/test" ) -+foreach my $dir ( $opt->{ldata}, "$opt->{ldata}/mysql") - { - mkdir($dir, 0700) unless -d $dir; - if ($opt_user and -w "/") diff --git a/community-mysql-5.7.9-major.patch b/community-mysql-5.7.9-major.patch index b822aed..15b50b8 100644 --- a/community-mysql-5.7.9-major.patch +++ b/community-mysql-5.7.9-major.patch @@ -1,11 +1,11 @@ ---- mysql-5.7.8/cmake/mysql_version.cmake.orig 2015-09-23 15:43:23.252558904 +0200 -+++ mysql-5.7.8/cmake/mysql_version.cmake 2015-09-23 15:42:58.187604141 +0200 +--- mysql-5.7.10/cmake/mysql_version.cmake.orig 2015-11-29 20:16:24.000000000 +0100 ++++ mysql-5.7.10/cmake/mysql_version.cmake 2015-12-16 14:15:49.129269372 +0100 @@ -17,7 +17,7 @@ # Global constants, only to be changed between major releases. # -SET(SHARED_LIB_MAJOR_VERSION "20") +SET(SHARED_LIB_MAJOR_VERSION "1020") - SET(SHARED_LIB_MINOR_VERSION "0") + SET(SHARED_LIB_MINOR_VERSION "1") SET(PROTOCOL_VERSION "10") SET(DOT_FRM_VERSION "6") diff --git a/community-mysql-boost.patch b/community-mysql-boost.patch deleted file mode 100644 index 03e2aa3..0000000 --- a/community-mysql-boost.patch +++ /dev/null @@ -1,160 +0,0 @@ ---- mysql-5.7.9/client/CMakeLists.txt.orig 2015-10-12 08:21:35.000000000 +0200 -+++ mysql-5.7.9/client/CMakeLists.txt 2015-11-10 21:16:37.264522003 +0100 -@@ -30,12 +30,6 @@ INCLUDE_DIRECTORIES( - - INCLUDE(${MYSQL_CMAKE_SCRIPT_DIR}/compile_flags.cmake) - --# Prevent Boost from including external precompiled Boost libraries, use --# threading (not implemented for Solaris) and turn off unused functionality. --ADD_DEFINITIONS( -- -DBOOST_ALL_NO_LIB -- -DBOOST_SYSTEM_NO_DEPRECATED) -- - ## Subdirectory with common client code. - ADD_SUBDIRECTORY(base) - ## Subdirectory for mysqlpump code. -@@ -46,74 +40,6 @@ COPY_OPENSSL_DLLS(copy_openssl_client) - - INCLUDE(${MYSQL_CMAKE_SCRIPT_DIR}/compile_flags.cmake) - --SET(BOOST_SOURCES_DIR ${BOOST_PATCHES_DIR}) -- --IF(WIN32) -- LIST(APPEND BOOST_THREAD_SOURCES -- ${BOOST_SOURCES_DIR}/libs/thread/src/win32/thread.cpp -- ${BOOST_SOURCES_DIR}/libs/thread/src/win32/tss_dll.cpp -- ${BOOST_SOURCES_DIR}/libs/thread/src/win32/tss_pe.cpp -- ) --ELSE() -- LIST(APPEND BOOST_THREAD_SOURCES -- ${BOOST_SOURCES_DIR}/libs/thread/src/pthread/once.cpp -- ${BOOST_SOURCES_DIR}/libs/thread/src/pthread/thread.cpp -- ) --ENDIF() -- --SET(BOOST_LIB_SOURCES -- ${BOOST_SOURCES_DIR}/libs/atomic/src/lockpool.cpp -- ${BOOST_SOURCES_DIR}/libs/chrono/src/chrono.cpp -- ${BOOST_SOURCES_DIR}/libs/chrono/src/process_cpu_clocks.cpp -- ${BOOST_SOURCES_DIR}/libs/chrono/src/thread_clock.cpp -- ${BOOST_SOURCES_DIR}/libs/system/src/error_code.cpp -- ${BOOST_SOURCES_DIR}/libs/thread/src/future.cpp --) -- --ADD_CONVENIENCE_LIBRARY(boost_lib -- ${BOOST_LIB_SOURCES} -- ${BOOST_THREAD_SOURCES} --) -- --SET_TARGET_PROPERTIES(boost_lib -- PROPERTIES COMPILE_FLAGS "-DBOOST_THREAD_BUILD_LIB") -- --IF(HAVE_clock_gettime_IN_rt) -- TARGET_LINK_LIBRARIES(boost_lib ${LIBRT}) --ENDIF() -- --# Do not build library unless it is needed by some other target. --SET_PROPERTY(TARGET boost_lib PROPERTY EXCLUDE_FROM_ALL TRUE) -- --MY_CHECK_CXX_COMPILER_FLAG("-Wno-logical-op" HAVE_NO_LOGICAL_OP) --IF(HAVE_NO_LOGICAL_OP) -- ADD_COMPILE_FLAGS( -- ${BOOST_SOURCES_DIR}/libs/thread/src/pthread/thread.cpp -- COMPILE_FLAGS "-Wno-logical-op" -- ) --ENDIF() -- --# Boost source has unused local typedefs. --MY_CHECK_CXX_COMPILER_FLAG("-Wno-unused-local-typedefs" HAVE_NO_UNUSED_TYPEDEFS) --IF(HAVE_NO_UNUSED_TYPEDEFS) -- ADD_COMPILE_FLAGS( -- ${BOOST_SOURCES_DIR}/libs/thread/src/pthread/once.cpp -- ${BOOST_SOURCES_DIR}/libs/thread/src/pthread/thread.cpp -- COMPILE_FLAGS "-Wno-unused-local-typedefs" -- ) --ENDIF() -- --ADD_COMPILE_FLAGS( -- ${BOOST_LIB_SOURCES} -- ${BOOST_THREAD_SOURCES} -- COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR} --) -- --# Need explicit pthread for gcc -fsanitize=address --IF(CMAKE_USE_PTHREADS_INIT AND CMAKE_C_FLAGS MATCHES "-fsanitize=") -- TARGET_LINK_LIBRARIES(boost_lib pthread) --ENDIF() -- - ADD_DEFINITIONS(${SSL_DEFINES}) - MYSQL_ADD_EXECUTABLE(mysql completion_hash.cc mysql.cc readline.cc ../sql-common/sql_string.cc) - TARGET_LINK_LIBRARIES(mysql mysqlclient) -@@ -125,9 +51,6 @@ IF(NOT WITHOUT_SERVER) - MYSQL_ADD_EXECUTABLE(mysql_upgrade - upgrade/program.cc - ) --ADD_COMPILE_FLAGS( -- upgrade/program.cc COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR} --) - TARGET_LINK_LIBRARIES(mysql_upgrade mysqlclient client_base mysqlcheck_core) - ADD_DEPENDENCIES(mysql_upgrade GenFixPrivs GenSysSchema) - ENDIF() ---- mysql-5.7.9/client/base/CMakeLists.txt.orig 2015-11-10 21:38:13.968255057 +0100 -+++ mysql-5.7.9/client/base/CMakeLists.txt 2015-11-10 21:41:47.685928592 +0100 -@@ -45,14 +45,7 @@ ADD_CONVENIENCE_LIBRARY(client_base - ../../sql-common/sql_string.cc - ) - --ADD_COMPILE_FLAGS( -- mutex.cc -- mysql_query_runner.cc -- show_variable_query_extractor.cc -- COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR} --) -- --TARGET_LINK_LIBRARIES(client_base mysqlclient boost_lib) -+TARGET_LINK_LIBRARIES(client_base mysqlclient boost_chrono boost_system) - - # Do not build library unless it is needed by some other target. - SET_PROPERTY(TARGET client_base PROPERTY EXCLUDE_FROM_ALL TRUE) ---- mysql-5.7.9/client/dump/CMakeLists.txt.orig 2015-11-10 21:37:51.399289532 +0100 -+++ mysql-5.7.9/client/dump/CMakeLists.txt 2015-11-10 21:40:32.536043387 +0100 -@@ -101,7 +101,7 @@ IF (NOT (CMAKE_CXX_COMPILER_ID STREQUAL - ../../sql-common/my_user.c) - ADD_CONVENIENCE_LIBRARY(mysqlpump_lib ${MYSQLPUMP_LIB_SOURCES}) - TARGET_LINK_LIBRARIES(mysqlpump_lib -- client_base ${LZ4_LIBRARY} boost_lib) -+ client_base ${LZ4_LIBRARY} boost_chrono boost_system) - - # Boost source has unused local typedefs. - MY_CHECK_CXX_COMPILER_FLAG("-Wno-unused-local-typedefs" -@@ -125,19 +125,11 @@ IF (NOT (CMAKE_CXX_COMPILER_ID STREQUAL - ENDIF() - - ADD_COMPILE_FLAGS( -- ${MYSQLPUMP_LIB_SOURCES} -- COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR} -- ) -- -- ADD_COMPILE_FLAGS( - compression_writer.cc - mysqldump_tool_chain_maker.cc - COMPILE_FLAGS -I${LZ4_INCLUDE_DIR} - ) - MYSQL_ADD_EXECUTABLE(mysqlpump program.cc) -- ADD_COMPILE_FLAGS( -- program.cc COMPILE_FLAGS -I${BOOST_PATCHES_DIR} -I${BOOST_INCLUDE_DIR} -- ) - - TARGET_LINK_LIBRARIES(mysqlpump mysqlpump_lib) - ---- mysql-5.7.9/CMakeLists.txt.orig 2015-10-12 08:21:33.000000000 +0200 -+++ mysql-5.7.9/CMakeLists.txt 2015-11-11 12:19:26.313509287 +0100 -@@ -432,8 +432,6 @@ ELSE() - SET(DEFAULT_TMPDIR "\"${TMPDIR}\"") - ENDIF() - --INCLUDE(cmake/boost.cmake) -- - IF (CMAKE_SYSTEM_NAME MATCHES "Linux") - OPTION(WITH_SYSTEMD "Enable installation of systemd support files" OFF) - IF (WITH_SYSTEMD) diff --git a/community-mysql-test-openssl_1.patch b/community-mysql-test-openssl_1.patch deleted file mode 100644 index 26f293c..0000000 --- a/community-mysql-test-openssl_1.patch +++ /dev/null @@ -1,23 +0,0 @@ -diff -rup mysql-5.7.8.orig/mysql-test/r/openssl_1.result mysql-5.7.8/mysql-test/r/openssl_1.result ---- mysql-5.7.8.orig/mysql-test/r/openssl_1.result 2015-07-20 14:25:08.000000000 +0200 -+++ mysql-5.7.8/mysql-test/r/openssl_1.result 2015-10-15 11:15:37.719376398 +0200 -@@ -211,8 +211,6 @@ Variable_name Value - Ssl_cipher EDH-RSA-DES-CBC3-SHA - Variable_name Value - Ssl_cipher AES256-SHA --Variable_name Value --Ssl_cipher RC4-SHA - select 'is still running; no cipher request crashed the server' as result from dual; - result - is still running; no cipher request crashed the server -diff -rup mysql-5.7.8.orig/mysql-test/t/openssl_1.test mysql-5.7.8/mysql-test/t/openssl_1.test ---- mysql-5.7.8.orig/mysql-test/t/openssl_1.test 2015-07-20 14:25:08.000000000 +0200 -+++ mysql-5.7.8/mysql-test/t/openssl_1.test 2015-10-15 11:15:07.648425927 +0200 -@@ -218,7 +218,6 @@ DROP TABLE t1; - --exec $MYSQL --host=localhost -e "SHOW STATUS LIKE 'Ssl_cipher';" --ssl --ssl-cipher=DHE-RSA-AES256-SHA - --exec $MYSQL --host=localhost -e "SHOW STATUS LIKE 'Ssl_cipher';" --ssl --ssl-cipher=EDH-RSA-DES-CBC3-SHA - --exec $MYSQL --host=localhost -e "SHOW STATUS LIKE 'Ssl_cipher';" --ssl --ssl-cipher=AES256-SHA ----exec $MYSQL --host=localhost -e "SHOW STATUS LIKE 'Ssl_cipher';" --ssl --ssl-cipher=RC4-SHA - --disable_query_log - --disable_result_log - diff --git a/community-mysql.spec b/community-mysql.spec index e402580..7863c44 100644 --- a/community-mysql.spec +++ b/community-mysql.spec @@ -79,7 +79,7 @@ %global sameevr %{?epoch:%{epoch}:}%{version}-%{release} Name: community-mysql -Version: 5.7.9 +Version: 5.7.10 Release: 1%{?with_debug:.debug}%{?dist} Summary: MySQL client programs and shared libraries Group: Applications/Databases @@ -90,6 +90,7 @@ URL: http://www.mysql.com License: GPLv2 with exceptions and LGPLv2 and BSD Source0: https://cdn.mysql.com/Downloads/MySQL-5.7/mysql-%{version}.tar.gz +Source1: http://downloads.sourceforge.net/boost/boost_1_59_0.tar.bz2 Source2: mysql_config_multilib.sh Source3: my.cnf.in Source4: my_config.h @@ -117,15 +118,29 @@ Patch3: %{pkgnamepatch}-logrotate.patch Patch4: %{pkgnamepatch}-file-contents.patch Patch5: %{pkgnamepatch}-scripts.patch Patch6: %{pkgnamepatch}-paths.patch -Patch7: %{pkgnamepatch}-boost.patch -Patch8: %{pkgnamepatch}-test-openssl_1.patch # Patches specific for this mysql package Patch51: %{pkgnamepatch}-chain-certs.patch Patch52: %{pkgnamepatch}-sharedir.patch Patch70: %{pkgnamepatch}-5.7.9-major.patch -BuildRequires: boost-devel +# Patches taken from boost 1.59 +Patch104: boost-1.50.0-fix-non-utf8-files.patch +Patch105: boost-1.48.0-add-bjam-man-page.patch +Patch115: boost-1.58.0-pool.patch +Patch125: boost-1.57.0-mpl-print.patch +Patch136: boost-1.57.0-spirit-unused_typedef.patch +Patch145: boost-1.54.0-locale-unused_typedef.patch +Patch151: boost-1.58.0-pool-test_linking.patch +Patch161: boost-1.57.0-python-libpython_dep.patch +Patch162: boost-1.57.0-python-abi_letters.patch +Patch163: boost-1.55.0-python-test-PyImport_AppendInittab.patch +Patch165: boost-1.57.0-build-optflags.patch +Patch168: boost-1.58.0-address-model.patch +Patch170: boost-1.59.0-log.patch +Patch180: boost-1.59-python-make_setter.patch +Patch181: boost-1.59-test-fenv.patch + BuildRequires: cmake BuildRequires: libaio-devel BuildRequires: libedit-devel @@ -377,16 +392,33 @@ the MySQL sources. %patch4 -p1 %patch5 -p1 %patch6 -p1 -%patch7 -p1 -%patch8 -p1 %patch51 -p1 %patch52 -p1 %if %{with_shared_lib_major_hack} %patch70 -p1 %endif -# Prevent using bundled boost -rm -r include/boost_1_59_0 +# Unpack Boost +%setup -q -n mysql-%{version} -D -T -a 1 + +# Patch Boost +pushd boost_1_59_0 +%patch104 -p1 +%patch105 -p1 +%patch115 -p0 +%patch125 -p1 +%patch136 -p1 +%patch145 -p1 +%patch151 -p1 +%patch161 -p1 +%patch162 -p1 +%patch163 -p1 +%patch165 -p1 +%patch168 -p1 +%patch170 -p2 +%patch180 -p2 +%patch181 -p2 +popd # Modify tests to pass on all archs pushd mysql-test @@ -397,92 +429,157 @@ add_test () { touch %{skiplist} -# these tests fail in 5.7.9 -add_test 'main.gis-precise : fails in 5.7.9' -add_test 'main.gis : fails in 5.7.9' -add_test 'gis.gis_bugs_crashes : fails in 5.7.9' -add_test 'gis.spatial_analysis_functions_buffer : fails in 5.7.9' -add_test 'gis.spatial_op_testingfunc_mix : fails in 5.7.9' -add_test 'gis.spatial_operators_difference : fails in 5.7.9' -add_test 'gis.spatial_operators_intersection : fails in 5.7.9' -add_test 'gis.spatial_operators_symdifference : fails in 5.7.9' -add_test 'main.datadir_permission : fails in 5.7.9' -add_test 'main.events_1 : fails in 5.7.9' -# these tests fail in 5.7.9 randomly -add_test 'sysschema.fn_ps_thread_trx_info : randomly fails in 5.7.9' -add_test 'test_service_sql_api.test_sql_shutdown : randomly fails in 5.7.9' -add_test 'main.mysqldump : randomly fails in 5.7.9' -add_test 'perfschema.memory_aggregate_no_a_no_u : randomly fails in 5.7.9' +# these tests fail in 5.7.10 on arms +%ifarch aarch64 armv7hl +add_test 'binlog.binlog_xa_prepared_disconnect : fails in 5.7.10' +add_test 'gis.geometry_class_attri_prop : fails in 5.7.10' +add_test 'gis.geometry_property_function_issimple : fails in 5.7.10' +add_test 'gis.gis_bugs_crashes : fails in 5.7.10' +add_test 'gis.spatial_analysis_functions_buffer : fails in 5.7.10' +add_test 'gis.spatial_analysis_functions_centroid : fails in 5.7.10' +add_test 'gis.spatial_analysis_functions_distance : fails in 5.7.10' +add_test 'gis.spatial_operators_intersection : fails in 5.7.10' +add_test 'gis.spatial_operators_union : fails in 5.7.10' +add_test 'gis.spatial_op_testingfunc_mix : fails in 5.7.10' +add_test 'gis.spatial_testing_functions_contains : fails in 5.7.10' +add_test 'gis.spatial_testing_functions_crosses : fails in 5.7.10' +add_test 'gis.spatial_testing_functions_equals : fails in 5.7.10' +add_test 'gis.spatial_testing_functions_touches : fails in 5.7.10' +add_test 'gis.spatial_testing_functions_within : fails in 5.7.10' +add_test 'gis.spatial_utility_function_simplify : fails in 5.7.10' +add_test 'innodb_fts.opt : fails in 5.7.10' +add_test 'innodb_gis.gis : fails in 5.7.10' +add_test 'innodb_gis.1 : fails in 5.7.10' +add_test 'innodb.innodb : fails in 5.7.10' +add_test 'innodb.innodb-wl5980-discard : fails in 5.7.10' +add_test 'innodb.log_file : fails in 5.7.10' +add_test 'main.ctype_big5 : fails in 5.7.10' +add_test 'main.ctype_gbk : fails in 5.7.10' +add_test 'main.gis : fails in 5.7.10' +add_test 'main.gis-precise : fails in 5.7.10' +add_test 'main.insert : fails in 5.7.10' +add_test 'perfschema.func_file_io : fails in 5.7.10' +add_test 'perfschema.merge_table_io : fails in 5.7.10' +add_test 'perfschema.setup_objects : fails in 5.7.10' +add_test 'sysschema.fn_ps_thread_trx_info : fails in 5.7.10' +add_test 'sysschema.v_schema_auto_increment_columns : fails in 5.7.10' +add_test 'test_service_sql_api.test_session_detach : fails in 5.7.10' +add_test 'test_service_sql_api.test_session_info : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_all_col_types : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_complex : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_errors : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_general_log : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_processlist : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_replication : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_sqlmode : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_stored_procedures_functions: fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_views_triggers : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_2_sessions : fails in 5.7.10' +%endif -# Workaround for upstream bug #http://bugs.mysql.com/56342 -rm -f t/ssl_8k_key-master.opt +# these tests fail in 5.7.10 on ppcs +%ifarch ppc64 ppc64le +add_test 'federated.federated_server : fails in 5.7.10' +add_test 'funcs_1.innodb_views : fails in 5.7.10' +add_test 'funcs_1.storedproc : fails in 5.7.10' +add_test 'gis.geometry_class_attri_prop : fails in 5.7.10' +add_test 'gis.geometry_property_function_issimple : fails in 5.7.10' +add_test 'gis.gis_bugs_crashes : fails in 5.7.10' +add_test 'gis.spatial_analysis_functions_buffer : fails in 5.7.10' +add_test 'gis.spatial_analysis_functions_centroid : fails in 5.7.10' +add_test 'gis.spatial_analysis_functions_distance : fails in 5.7.10' +add_test 'gis.spatial_operators_symdifference : fails in 5.7.10' +add_test 'gis.spatial_operators_union : fails in 5.7.10' +add_test 'gis.spatial_op_testingfunc_mix : fails in 5.7.10' +add_test 'gis.spatial_utility_function_distance_sphere : fails in 5.7.10' +add_test 'gis.spatial_utility_function_simplify : fails in 5.7.10' +add_test 'innodb_fts.ngram_1 : fails in 5.7.10' +add_test 'innodb_fts.plugin : fails in 5.7.10' +add_test 'innodb_fts.tablespace_location : fails in 5.7.10' +add_test 'innodb.innodb_bug30919 : fails in 5.7.10' +add_test 'innodb.innodb : fails in 5.7.10' +add_test 'innodb.mysqldump_max_recordsize : fails in 5.7.10' +add_test 'innodb_zip.cmp_per_index : fails in 5.7.10' +add_test 'innodb_zip.wl6470_2 : fails in 5.7.10' +add_test 'main.bootstrap : fails in 5.7.10' +add_test 'main.ctype_big5 : fails in 5.7.10' +add_test 'main.ctype_cp1251 : fails in 5.7.10' +add_test 'main.ctype_gbk : fails in 5.7.10' +add_test 'main.grant_alter_user : fails in 5.7.10' +add_test 'main.innodb_icp : fails in 5.7.10' +add_test 'main.innodb_mrr : fails in 5.7.10' +add_test 'main.innodb_mrr_icp : fails in 5.7.10' +add_test 'main.insert : fails in 5.7.10' +add_test 'main.mysql_client_test : fails in 5.7.10' +add_test 'main.mysqldump : fails in 5.7.10' +add_test 'main.mysql_embedded : fails in 5.7.10' +add_test 'main.partition_innodb_semi_consistent : fails in 5.7.10' +add_test 'main.partition_range : fails in 5.7.10' +add_test 'main.sql_mode_default : fails in 5.7.10' +add_test 'main.subquery_sj_dupsweed_bka_nixbnl : fails in 5.7.10' +add_test 'main.subquery_sj_firstmatch_bka : fails in 5.7.10' +add_test 'main.subquery_sj_firstmatch_bka_nixbnl : fails in 5.7.10' +add_test 'main.subquery_sj_none_bka : fails in 5.7.10' +add_test 'main.subselect_innodb : fails in 5.7.10' +add_test 'perfschema.mdl_func : fails in 5.7.10' +add_test 'perfschema.socket_summary_by_instance_func : fails in 5.7.10' +add_test 'rpl.rpl_alter_repository : fails in 5.7.10' +add_test 'rpl.rpl_checksum_cache : fails in 5.7.10' +add_test 'rpl.rpl_innodb_bug28430 : fails in 5.7.10' +add_test 'rpl.rpl_innodb_bug30888 : fails in 5.7.10' +add_test 'rpl.rpl_many_optimize : fails in 5.7.10' +add_test 'rpl.rpl_mixed_binlog_max_cache_size : fails in 5.7.10' +add_test 'rpl.rpl_recovery_replicate_same_server_id : fails in 5.7.10' +add_test 'rpl.rpl_replicate_do : fails in 5.7.10' +add_test 'rpl.rpl_rotate_logs : fails in 5.7.10' +add_test 'sysschema.pr_diagnostics : fails in 5.7.10' +add_test 'sysschema.pr_statement_performance_analyzer : fails in 5.7.10' +add_test 'sysschema.v_schema_auto_increment_columns : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_views_triggers : fails in 5.7.10' +%endif -# these tests fail in 5.7.9 on arch -%ifarch %{arm} -add_test 'gis.spatial_operators_union : fails in 5.7.9' -add_test 'gis.spatial_testing_functions_contains : fails in 5.7.9' -add_test 'gis.spatial_testing_functions_crosses : fails in 5.7.9' -add_test 'gis.spatial_testing_functions_disjoint : fails in 5.7.9' -add_test 'gis.spatial_testing_functions_equals : fails in 5.7.9' -add_test 'gis.spatial_testing_functions_intersects : fails in 5.7.9' -add_test 'gis.spatial_testing_functions_overlaps : fails in 5.7.9' -add_test 'gis.spatial_testing_functions_touches : fails in 5.7.9' -add_test 'gis.spatial_testing_functions_within : fails in 5.7.9' -add_test 'innodb_fts.opt : fails in 5.7.9' -add_test 'innodb_gis.gis : fails in 5.7.9' -add_test 'innodb_gis.precise : fails in 5.7.9' -add_test 'innodb_gis.1 : fails in 5.7.9' -add_test 'innodb.log_file : fails in 5.7.9' -add_test 'perfschema.dml_host_cache : fails in 5.7.9' -add_test 'perfschema.dml_hosts : fails in 5.7.9' -add_test 'perfschema.dml_file_instances : fails in 5.7.9' -add_test 'perfschema.mdl_func : fails in 5.7.9' -add_test 'perfschema.func_file_io : fails in 5.7.9' -add_test 'perfschema.setup_objects : fails in 5.7.9' -add_test 'test_service_sql_api.test_session_detach : fails in 5.7.9' -add_test 'test_service_sql_api.test_session_info : fails in 5.7.9' -add_test 'test_service_sql_api.test_sql_all_col_types : fails in 5.7.9' -add_test 'test_service_sql_api.test_sql_complex : fails in 5.7.9' -add_test 'test_service_sql_api.test_sql_errors : fails in 5.7.9' -add_test 'test_service_sql_api.test_sql_general_log : fails in 5.7.9' -add_test 'test_service_sql_api.test_sql_processlist : fails in 5.7.9' -add_test 'test_service_sql_api.test_sql_replication : fails in 5.7.9' -add_test 'test_service_sql_api.test_sql_sqlmode : fails in 5.7.9' -add_test 'test_service_sql_api.test_sql_stored_procedures_functions : fails in 5.7.9' -add_test 'test_service_sql_api.test_sql_views_triggers : fails in 5.7.9' -add_test 'test_service_sql_api.test_sql_2_sessions : fails in 5.7.9' -# fails sometimes -add_test 'perfschema.func_mutex : fails in 5.7.9' -add_test 'main.xa_prepared_binlog_off : fails in 5.7.9' -add_test 'main.innodb_icp_all : fails in 5.7.9' -add_test 'perfschema.global_read_lock : fails in 5.7.9' +# these tests fail in 5.7.10 on s390s +%ifarch s390 s390x +add_test 'gis.geometry_class_attri_prop : fails in 5.7.10' +add_test 'gis.gis_bugs_crashes : fails in 5.7.10' +add_test 'gis.spatial_analysis_functions_buffer : fails in 5.7.10' +add_test 'gis.spatial_analysis_functions_centroid : fails in 5.7.10' +add_test 'gis.spatial_analysis_functions_distance : fails in 5.7.10' +add_test 'gis.spatial_operators_symdifference : fails in 5.7.10' +add_test 'gis.spatial_operators_union : fails in 5.7.10' +add_test 'gis.spatial_op_testingfunc_mix : fails in 5.7.10' +add_test 'gis.spatial_utility_function_distance_sphere : fails in 5.7.10' +add_test 'gis.spatial_utility_function_simplify : fails in 5.7.10' +add_test 'innodb_fts.opt : fails in 5.7.10' +add_test 'main.ps_ddl : fails in 5.7.10' +add_test 'main.ps_ddl1 : fails in 5.7.10' +add_test 'perfschema.status_reprepare : fails in 5.7.10' +add_test 'rpl.rpl_cross_version : fails in 5.7.10' +add_test 'rpl.rpl_dual_pos_advance : fails in 5.7.10' +add_test 'test_service_sql_api.test_session_detach : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_all_col_types : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_complex : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_replication : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_sqlmode : fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_stored_procedures_functions: fails in 5.7.10' +add_test 'test_service_sql_api.test_sql_views_triggers : fails in 5.7.10' %endif +# Workaround for upstream bug #http://bugs.mysql.com/56342 +rm -f t/ssl_8k_key-master.opt + # Archs without hw performance counter, rh 741325 %ifarch aarch64 sparc64 add_test 'perfschema.func_file_io : rh 741325' -add_test 'perfschema.func_mutex : rh 741325' add_test 'perfschema.setup_objects : rh 741325' -add_test 'perfschema.global_read_lock : 77889' -%endif - -# Archs with collation issues, bugs.mysql.com/46895 -%ifarch aarch64 ppc %{power64} s390 s390x -add_test 'innodb.innodb_ctype_ldml : 46895' -add_test 'main.ctype_ldml : 46895' %endif # Archs with ps_ddl issues -%ifarch ppc s390 +%ifarch s390 add_test 'main.ps_ddl : ps_ddl issue' add_test 'main.ps_ddl1 : ps_ddl issue' %endif -# Arch with other issues -%ifarch ppc -add_test 'main.audit_plugin : unknown' -add_test 'main.upgrade : unknown' -%endif popd cp %{SOURCE2} %{SOURCE3} %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} \ @@ -546,6 +643,7 @@ cmake .. \ -DWITH_MECAB=system \ -DWITH_SSL=system \ -DWITH_ZLIB=system \ + -DWITH_BOOST=.. \ -DCMAKE_C_FLAGS="%{optflags}%{?with_debug: -fno-strict-overflow -Wno-unused-result -Wno-unused-function -Wno-unused-but-set-variable}" \ -DCMAKE_CXX_FLAGS="%{optflags}%{?with_debug: -fno-strict-overflow -Wno-unused-result -Wno-unused-function -Wno-unused-but-set-variable}" \ %{?with_debug: -DWITH_DEBUG=1}\ @@ -886,6 +984,8 @@ fi %{_bindir}/replace %{_bindir}/resolve_stack_dump %{_bindir}/resolveip +%{_bindir}/lz4_decompress +%{_bindir}/zlib_decompress %config(noreplace) %{_sysconfdir}/my.cnf.d/%{pkg_name}-server.cnf @@ -919,6 +1019,8 @@ fi %{_mandir}/man1/replace.1* %{_mandir}/man1/resolve_stack_dump.1* %{_mandir}/man1/resolveip.1* +%{_mandir}/man1/lz4_decompress.1* +%{_mandir}/man1/zlib_decompress.1* %{_mandir}/man8/mysqld.8* %{_datadir}/%{pkg_name}/dictionary.txt @@ -982,6 +1084,9 @@ fi %endif %changelog +* Wed Dec 16 2015 Jakub Dorňák - 5.7.10-1 +- Update to 5.7.10 + * Fri Oct 2 2015 Jakub Dorňák - 5.7.9-1 - Update to 5.7.9 diff --git a/sources b/sources index 35278c8..7f953bc 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ -6d782dda9046acb81e694934fd513993 mysql-5.7.9.tar.gz +aabc96e8628228014479f7233d076877 mysql-5.7.10.tar.gz +6aa9a5c6a4ca1016edd0ed1178e3cb87 boost_1_59_0.tar.bz2