Compare commits
	
		
			No commits in common. "c8" and "c9-beta" have entirely different histories.
		
	
	
		
	
		
							
								
								
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @ -1 +1 @@ | ||||
| SOURCES/2018_U2.tar.gz | ||||
| SOURCES/tbb-2020.3.tar.gz | ||||
|  | ||||
| @ -1 +1 @@ | ||||
| 1d3e011649dbe9259156b6cb0fe15f375abd8f9c SOURCES/2018_U2.tar.gz | ||||
| ae543670251a6d667e6f077ecfab0d5bb09b270c SOURCES/tbb-2020.3.tar.gz | ||||
|  | ||||
							
								
								
									
										43
									
								
								SOURCES/tbb-2019-dont-snip-Wall.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										43
									
								
								SOURCES/tbb-2019-dont-snip-Wall.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,43 @@ | ||||
| diff -up tbb-2019_U6/build/common_rules.inc.orig tbb-2019_U6/build/common_rules.inc
 | ||||
| --- tbb-2019_U6/build/common_rules.inc.orig	2019-04-18 05:14:08.000000000 -0600
 | ||||
| +++ tbb-2019_U6/build/common_rules.inc	2019-05-08 08:30:03.434532204 -0600
 | ||||
| @@ -130,7 +130,7 @@ LINK_FILES+=$(TEST_LIBS)
 | ||||
|   | ||||
|  # Customizations | ||||
|  $(KNOWN_WARNINGS): %.$(OBJ): %.cpp | ||||
| -	$(CPLUS) $(COMPILE_ONLY) $(subst $(WARNING_KEY),,$(CPLUS_FLAGS)) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $<
 | ||||
| +	$(CPLUS) $(COMPILE_ONLY) $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $<
 | ||||
|   | ||||
|  tbb_misc.$(OBJ): version_string.ver | ||||
|  tbb_misc.$(OBJ): INCLUDES+=$(INCLUDE_KEY). | ||||
| diff -up tbb-2019_U6/build/Makefile.tbbmalloc.orig tbb-2019_U6/build/Makefile.tbbmalloc
 | ||||
| --- tbb-2019_U6/build/Makefile.tbbmalloc.orig	2019-04-18 05:14:08.000000000 -0600
 | ||||
| +++ tbb-2019_U6/build/Makefile.tbbmalloc	2019-05-08 08:30:03.447531968 -0600
 | ||||
| @@ -47,11 +47,11 @@ ORIG_LINK_MALLOC.LIB:=$(LINK_MALLOC.LIB)
 | ||||
|  MALLOC_CPLUS.OBJ = backend.$(OBJ) large_objects.$(OBJ) backref.$(OBJ)  tbbmalloc.$(OBJ) | ||||
|  MALLOC.OBJ := $(MALLOC_CPLUS.OBJ) $(MALLOC_ASM.OBJ) itt_notify_malloc.$(OBJ) frontend.$(OBJ) | ||||
|  PROXY.OBJ := proxy.$(OBJ) tbb_function_replacement.$(OBJ) | ||||
| -M_CPLUS_FLAGS += $(DEFINE_KEY)__TBBMALLOC_BUILD=1
 | ||||
| +M_CPLUS_FLAGS += -fno-strict-aliasing $(DEFINE_KEY)__TBBMALLOC_BUILD=1
 | ||||
|  M_INCLUDES := $(INCLUDES) $(INCLUDE_KEY)$(MALLOC_ROOT) $(INCLUDE_KEY)$(MALLOC_SOURCE_ROOT) | ||||
|   | ||||
|  # Suppress superfluous warnings for TBBMalloc compilation | ||||
| -$(MALLOC.OBJ): M_CPLUS_FLAGS := $(subst $(WARNING_KEY),,$(M_CPLUS_FLAGS)) $(WARNING_SUPPRESS)
 | ||||
| +$(MALLOC.OBJ): M_CPLUS_FLAGS := $(M_CPLUS_FLAGS) $(WARNING_SUPPRESS)
 | ||||
|  # Suppress superfluous warnings for TBBMalloc proxy compilation | ||||
|  $(PROXY.OBJ): CPLUS_FLAGS += $(WARNING_SUPPRESS) | ||||
|   | ||||
| diff -up tbb-2019_U6/build/Makefile.test.orig tbb-2019_U6/build/Makefile.test
 | ||||
| --- tbb-2019_U6/build/Makefile.test.orig	2019-05-08 08:30:03.448531949 -0600
 | ||||
| +++ tbb-2019_U6/build/Makefile.test	2019-05-08 08:31:48.190498336 -0600
 | ||||
| @@ -275,7 +275,7 @@ test_tbb_plain: $(TEST_PREREQUISITE) $(T
 | ||||
|   | ||||
|   | ||||
|  # For deprecated files, we don't mind warnings etc., thus compilation rules are most relaxed | ||||
| -CPLUS_FLAGS_DEPRECATED = $(DEFINE_KEY)__TBB_TEST_DEPRECATED=1 $(subst $(WARNING_KEY),,$(CPLUS_FLAGS)) $(WARNING_SUPPRESS) $(INCLUDE_KEY)$(tbb_root)/src/test
 | ||||
| +CPLUS_FLAGS_DEPRECATED = $(DEFINE_KEY)__TBB_TEST_DEPRECATED=1 $(CPLUS_FLAGS) $(WARNING_SUPPRESS) $(INCLUDE_KEY)$(tbb_root)/src/test
 | ||||
|  TEST_TBB_OLD.OBJ = test_concurrent_vector_v2.$(OBJ) test_concurrent_queue_v2.$(OBJ) test_mutex_v2.$(OBJ) test_task_scheduler_observer_v3.$(OBJ) | ||||
|   | ||||
|  $(TEST_TBB_OLD.OBJ): CPLUS_FLAGS := $(CPLUS_FLAGS_DEPRECATED) | ||||
| 
 | ||||
| Diff finished.  Wed May  8 08:31:49 2019 | ||||
							
								
								
									
										12
									
								
								SOURCES/tbb-2019-test-task-scheduler-init.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								SOURCES/tbb-2019-test-task-scheduler-init.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,12 @@ | ||||
| diff -up tbb-2019_U8/src/test/test_task_scheduler_init.cpp.orig tbb-2019_U8/src/test/test_task_scheduler_init.cpp
 | ||||
| --- tbb-2019_U8/src/test/test_task_scheduler_init.cpp.orig	2019-06-06 04:29:15.000000000 -0600
 | ||||
| +++ tbb-2019_U8/src/test/test_task_scheduler_init.cpp	2019-08-26 12:08:19.547880295 -0600
 | ||||
| @@ -285,7 +285,7 @@ namespace TestBlockingTerminateNS {
 | ||||
|              } | ||||
|          }; | ||||
|          void operator()() { | ||||
| -            const int numThreads = 4;
 | ||||
| +            const int numThreads = 2;
 | ||||
|              tbb::task_scheduler_init init( numThreads ); | ||||
|              Harness::SpinBarrier barrier( numThreads ); | ||||
|              tbb::parallel_for( 0, numThreads, Body( barrier ) ); | ||||
							
								
								
									
										56
									
								
								SOURCES/tbb-2019-test-thread-monitor.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								SOURCES/tbb-2019-test-thread-monitor.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,56 @@ | ||||
| --- tbb-2020.2/oneTBB-2020.2/src/rml/test/test_thread_monitor.cpp	2020-03-30 13:38:06.000000000 +0200
 | ||||
| +++ oneTBB-2020.2/src/rml/test/test_thread_monitor.cpp	2020-04-27 15:43:34.209452298 +0200
 | ||||
| @@ -23,6 +23,7 @@
 | ||||
|  #include "thread_monitor.h" | ||||
|  #include "harness_memory.h" | ||||
|  #include "tbb/semaphore.cpp" | ||||
| +#include <atomic>
 | ||||
|   | ||||
|  class ThreadState { | ||||
|      void loop(); | ||||
| @@ -33,21 +34,21 @@
 | ||||
|      } | ||||
|      typedef rml::internal::thread_monitor thread_monitor; | ||||
|      thread_monitor monitor; | ||||
| -    volatile int request;
 | ||||
| -    volatile int ack;
 | ||||
| -    volatile unsigned clock;
 | ||||
| -    volatile unsigned stamp;
 | ||||
| +    std::atomic<int> request;
 | ||||
| +    std::atomic<int> ack;
 | ||||
| +    std::atomic<unsigned> clock;
 | ||||
| +    unsigned stamp;
 | ||||
|      ThreadState() : request(-1), ack(-1), clock(0) {} | ||||
|  }; | ||||
|   | ||||
|  void ThreadState::loop() { | ||||
|      for(;;) { | ||||
| -        ++clock;
 | ||||
|          if( ack==request ) { | ||||
|              thread_monitor::cookie c; | ||||
|              monitor.prepare_wait(c); | ||||
|              if( ack==request ) { | ||||
| -                REMARK("%p: request=%d ack=%d\n", this, request, ack );
 | ||||
| +                REMARK("%p: request=%d ack=%d\n", this, request.load(), ack.load() );
 | ||||
| +                ++clock;
 | ||||
|                  monitor.commit_wait(c); | ||||
|              } else | ||||
|                  monitor.cancel_wait(); | ||||
| @@ -60,7 +61,7 @@
 | ||||
|                      rml::internal::thread_monitor::yield(); | ||||
|              } | ||||
|              int r = request; | ||||
| -            ack = request;
 | ||||
| +            ack = r;
 | ||||
|              if( !r ) return; | ||||
|          } | ||||
|      } | ||||
| @@ -89,7 +90,7 @@
 | ||||
|                                  REPORT("Warning: thread %d not waiting\n",i); | ||||
|                                  break; | ||||
|                              } | ||||
| -                        } while( t[i].stamp!=t[i].clock );
 | ||||
| +                        } while( t[i].stamp==0 || t[i].stamp!=t[i].clock );
 | ||||
|                      } | ||||
|                  } | ||||
|                  REMARK("notifying threads\n"); | ||||
							
								
								
									
										54
									
								
								SOURCES/tbb-2020-attributes.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										54
									
								
								SOURCES/tbb-2020-attributes.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,54 @@ | ||||
| diff -up oneTBB-2020.2/src/tbbmalloc/proxy.cpp.orig oneTBB-2020.2/src/tbbmalloc/proxy.cpp
 | ||||
| --- oneTBB-2020.2/src/tbbmalloc/proxy.cpp.orig	2020-03-31 06:40:13.752296189 -0600
 | ||||
| +++ oneTBB-2020.2/src/tbbmalloc/proxy.cpp	2020-03-31 06:42:52.611900760 -0600
 | ||||
| @@ -146,15 +146,7 @@ static inline void initPageSize()
 | ||||
|     1) detection that the proxy library is loaded | ||||
|     2) check that dlsym("malloc") found something different from our replacement malloc | ||||
|  */ | ||||
| -// Starting from GCC 9, the -Wmissing-attributes warning was extended for alias below
 | ||||
| -#if __GNUC__ == 9
 | ||||
| -    #pragma GCC diagnostic push
 | ||||
| -    #pragma GCC diagnostic ignored "-Wmissing-attributes"
 | ||||
| -#endif
 | ||||
| -extern "C" void *__TBB_malloc_proxy(size_t) __attribute__ ((alias ("malloc")));
 | ||||
| -#if __GNUC__ == 9
 | ||||
| -    #pragma GCC diagnostic pop
 | ||||
| -#endif
 | ||||
| +extern "C" void *__TBB_malloc_proxy(size_t) __attribute__ ((alias ("malloc"), copy (malloc)));
 | ||||
|   | ||||
|  static void *orig_msize; | ||||
|   | ||||
| @@ -296,25 +288,17 @@ struct mallinfo mallinfo() __THROW
 | ||||
|  size_t dlmalloc_usable_size(const void *ptr) __attribute__ ((alias ("malloc_usable_size"))); | ||||
|  #else // __ANDROID__ | ||||
|  // C11 function, supported starting GLIBC 2.16 | ||||
| -void *aligned_alloc(size_t alignment, size_t size) __attribute__ ((alias ("memalign")));
 | ||||
| +void *aligned_alloc(size_t alignment, size_t size) __attribute__ ((alias ("memalign"), copy (memalign)));
 | ||||
|  // Those non-standard functions are exported by GLIBC, and might be used | ||||
|  // in conjunction with standard malloc/free, so we must ovberload them. | ||||
|  // Bionic doesn't have them. Not removing from the linker scripts, | ||||
|  // as absent entry points are ignored by the linker. | ||||
|   | ||||
| -// Starting from GCC 9, the -Wmissing-attributes warning was extended for aliases below
 | ||||
| -#if __GNUC__ == 9
 | ||||
| -    #pragma GCC diagnostic push
 | ||||
| -    #pragma GCC diagnostic ignored "-Wmissing-attributes"
 | ||||
| -#endif
 | ||||
| -void *__libc_malloc(size_t size) __attribute__ ((alias ("malloc")));
 | ||||
| -void *__libc_calloc(size_t num, size_t size) __attribute__ ((alias ("calloc")));
 | ||||
| -void *__libc_memalign(size_t alignment, size_t size) __attribute__ ((alias ("memalign")));
 | ||||
| -void *__libc_pvalloc(size_t size) __attribute__ ((alias ("pvalloc")));
 | ||||
| -void *__libc_valloc(size_t size) __attribute__ ((alias ("valloc")));
 | ||||
| -#if __GNUC__ == 9
 | ||||
| -    #pragma GCC diagnostic pop
 | ||||
| -#endif
 | ||||
| +void *__libc_malloc(size_t size) __attribute__ ((alias ("malloc"), copy (malloc)));
 | ||||
| +void *__libc_calloc(size_t num, size_t size) __attribute__ ((alias ("calloc"), copy (calloc)));
 | ||||
| +void *__libc_memalign(size_t alignment, size_t size) __attribute__ ((alias ("memalign"), copy (memalign)));
 | ||||
| +void *__libc_pvalloc(size_t size) __attribute__ ((alias ("pvalloc"), copy (pvalloc)));
 | ||||
| +void *__libc_valloc(size_t size) __attribute__ ((alias ("valloc"), copy (valloc)));
 | ||||
|   | ||||
|  // call original __libc_* to support naive replacement of free via __libc_free etc | ||||
|  void __libc_free(void *ptr) | ||||
| 
 | ||||
| Diff finished.  Tue Mar 31 06:43:27 2020 | ||||
| @ -1,14 +0,0 @@ | ||||
| diff -up tbb44_20151115oss/include/tbb/machine/linux_ia32.h\~ tbb44_20151115oss/include/tbb/machine/linux_ia32.h
 | ||||
| --- tbb44_20151115oss/include/tbb/machine/linux_ia32.h~	2015-11-25 03:49:14.000000000 -0700
 | ||||
| +++ tbb44_20151115oss/include/tbb/machine/linux_ia32.h	2016-01-14 20:29:45.251333321 -0700
 | ||||
| @@ -34,7 +34,7 @@
 | ||||
|  #define __TBB_control_consistency_helper() __TBB_compiler_fence() | ||||
|  #define __TBB_acquire_consistency_helper() __TBB_compiler_fence() | ||||
|  #define __TBB_release_consistency_helper() __TBB_compiler_fence() | ||||
| -#define __TBB_full_memory_fence()          __asm__ __volatile__("mfence": : :"memory")
 | ||||
| +#define __TBB_full_memory_fence()          __sync_synchronize()
 | ||||
|   | ||||
|  #if __TBB_ICC_ASM_VOLATILE_BROKEN | ||||
|  #define __TBB_VOLATILE | ||||
| 
 | ||||
| Diff finished.  Thu Jan 14 20:30:12 2016 | ||||
| @ -1,14 +0,0 @@ | ||||
| diff -up tbb44_20151115oss/build/Makefile.tbbmalloc\~ tbb44_20151115oss/build/Makefile.tbbmalloc
 | ||||
| --- tbb44_20151115oss/build/Makefile.tbbmalloc~	2016-01-14 20:20:49.514774850 -0700
 | ||||
| +++ tbb44_20151115oss/build/Makefile.tbbmalloc	2016-01-14 20:36:32.126342096 -0700
 | ||||
| @@ -51,7 +51,7 @@ ORIG_LINK_MALLOC.LIB:=$(LINK_MALLOC.LIB)
 | ||||
|  MALLOC_CPLUS.OBJ = backend.$(OBJ) large_objects.$(OBJ) backref.$(OBJ)  tbbmalloc.$(OBJ) | ||||
|  MALLOC.OBJ := $(MALLOC_CPLUS.OBJ) $(MALLOC_ASM.OBJ) itt_notify_malloc.$(OBJ) frontend.$(OBJ) | ||||
|  PROXY.OBJ := proxy.$(OBJ) tbb_function_replacement.$(OBJ) | ||||
| -M_CPLUS_FLAGS := $(subst $(WARNING_KEY),,$(M_CPLUS_FLAGS)) $(CXXFLAGS) $(DEFINE_KEY)__TBBMALLOC_BUILD=1
 | ||||
| +M_CPLUS_FLAGS := $(CXXFLAGS) -fno-strict-aliasing $(DEFINE_KEY)__TBBMALLOC_BUILD=1
 | ||||
|  M_INCLUDES := $(INCLUDES) $(INCLUDE_KEY)$(MALLOC_ROOT) $(INCLUDE_KEY)$(MALLOC_SOURCE_ROOT) | ||||
|   | ||||
|  # Suppress superfluous warnings for TBBMalloc compilation | ||||
| 
 | ||||
| Diff finished.  Thu Jan 14 20:37:02 2016 | ||||
| @ -1,37 +0,0 @@ | ||||
| diff -up tbb-2018_U2/build/linux.gcc.inc\~ tbb-2018_U2/build/linux.gcc.inc
 | ||||
| --- tbb-2018_U2/build/linux.gcc.inc~	2017-12-06 10:29:49.000000000 -0700
 | ||||
| +++ tbb-2018_U2/build/linux.gcc.inc	2018-01-22 20:47:07.148422967 -0700
 | ||||
| @@ -68,10 +68,10 @@ ifneq (,$(shell gcc -dumpversion | egrep
 | ||||
|  endif | ||||
|   | ||||
|  ifeq ($(cfg), release) | ||||
| -        CPLUS_FLAGS = $(ITT_NOTIFY) -g -O2 -DUSE_PTHREAD
 | ||||
| +        CPLUS_FLAGS = $(CXXFLAGS) $(ITT_NOTIFY) -g -O2 -DUSE_PTHREAD
 | ||||
|  endif | ||||
|  ifeq ($(cfg), debug) | ||||
| -        CPLUS_FLAGS = -DTBB_USE_DEBUG $(ITT_NOTIFY) -g -O0 -DUSE_PTHREAD
 | ||||
| +        CPLUS_FLAGS = $(CXXFLAGS) -DTBB_USE_DEBUG $(ITT_NOTIFY) -g -O0 -DUSE_PTHREAD
 | ||||
|  endif | ||||
|   | ||||
|  TBB_ASM.OBJ= | ||||
| diff -up tbb-2018_U2/build/Makefile.tbbmalloc\~ tbb-2018_U2/build/Makefile.tbbmalloc
 | ||||
| --- tbb-2018_U2/build/Makefile.tbbmalloc~	2017-12-06 10:29:49.000000000 -0700
 | ||||
| +++ tbb-2018_U2/build/Makefile.tbbmalloc	2018-01-22 20:47:30.104350662 -0700
 | ||||
| @@ -51,7 +51,7 @@ ORIG_LINK_MALLOC.LIB:=$(LINK_MALLOC.LIB)
 | ||||
|  MALLOC_CPLUS.OBJ = backend.$(OBJ) large_objects.$(OBJ) backref.$(OBJ)  tbbmalloc.$(OBJ) | ||||
|  MALLOC.OBJ := $(MALLOC_CPLUS.OBJ) $(MALLOC_ASM.OBJ) itt_notify_malloc.$(OBJ) frontend.$(OBJ) | ||||
|  PROXY.OBJ := proxy.$(OBJ) tbb_function_replacement.$(OBJ) | ||||
| -M_CPLUS_FLAGS := $(subst $(WARNING_KEY),,$(M_CPLUS_FLAGS)) $(DEFINE_KEY)__TBBMALLOC_BUILD=1
 | ||||
| +M_CPLUS_FLAGS := $(subst $(WARNING_KEY),,$(M_CPLUS_FLAGS)) $(CXXFLAGS) $(DEFINE_KEY)__TBBMALLOC_BUILD=1
 | ||||
|  M_INCLUDES := $(INCLUDES) $(INCLUDE_KEY)$(MALLOC_ROOT) $(INCLUDE_KEY)$(MALLOC_SOURCE_ROOT) | ||||
|   | ||||
|  # Suppress superfluous warnings for TBBMalloc compilation | ||||
| @@ -86,7 +86,7 @@ $(MALLOC.DLL) $(MALLOCPROXY.DLL): CPLUS_
 | ||||
|  $(MALLOC.DLL) $(MALLOCPROXY.DLL): M_CPLUS_FLAGS += $(SDL_FLAGS) | ||||
|  $(MALLOC.DLL): BUILDING_LIBRARY = $(MALLOC.DLL) | ||||
|  $(MALLOC.DLL): $(MALLOC.OBJ) $(MALLOC.RES) $(MALLOC_NO_VERSION.DLL) | ||||
| -	$(subst $(CPLUS),$(CONLY),$(LIB_LINK_CMD)) $(LIB_OUTPUT_KEY)$(MALLOC.DLL) $(MALLOC.OBJ) $(MALLOC.RES) $(LIB_LINK_LIBS) $(MALLOC_LINK_FLAGS)
 | ||||
| +	$(LIB_LINK_CMD) $(LIB_OUTPUT_KEY)$(MALLOC.DLL) $(MALLOC.OBJ) $(MALLOC.RES) $(LIB_LINK_LIBS) $(MALLOC_LINK_FLAGS)
 | ||||
|   | ||||
|  ifneq (,$(MALLOCPROXY.DEF)) | ||||
|  tbbmallocproxy.def: $(MALLOCPROXY.DEF) | ||||
							
								
								
									
										26
									
								
								SOURCES/tbb-mark-empty_task-execute-with-gnu-used.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								SOURCES/tbb-mark-empty_task-execute-with-gnu-used.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,26 @@ | ||||
| From db2f2116adfb545bb76c92205f91e3e3f0f9e44a Mon Sep 17 00:00:00 2001 | ||||
| From: Thomas Rodgers <rodgert@twrodgers.com> | ||||
| Date: Wed, 2 Jun 2021 15:18:30 -0700 | ||||
| Subject: [PATCH] Mark tbb::empty_task::execute with [[gnu::used]] | ||||
| 
 | ||||
| ---
 | ||||
|  include/tbb/task.h | 3 +++ | ||||
|  1 file changed, 3 insertions(+) | ||||
| 
 | ||||
| diff --git a/include/tbb/task.h b/include/tbb/task.h
 | ||||
| index 5e137c6..5b60163 100644
 | ||||
| --- a/include/tbb/task.h
 | ||||
| +++ b/include/tbb/task.h
 | ||||
| @@ -1040,6 +1040,9 @@ inline void task::resume(suspend_point tag) {
 | ||||
|  //! task that does nothing.  Useful for synchronization. | ||||
|  /** @ingroup task_scheduling */ | ||||
|  class __TBB_DEPRECATED_IN_VERBOSE_MODE empty_task: public task { | ||||
| +#if __has_cpp_attribute(gnu::used)
 | ||||
| +    [[gnu::used]]
 | ||||
| +#endif
 | ||||
|      task* execute() __TBB_override { | ||||
|          return NULL; | ||||
|      } | ||||
| -- 
 | ||||
| 2.31.1 | ||||
| 
 | ||||
							
								
								
									
										375
									
								
								SPECS/tbb.spec
									
									
									
									
									
								
							
							
						
						
									
										375
									
								
								SPECS/tbb.spec
									
									
									
									
									
								
							| @ -1,61 +1,42 @@ | ||||
| %global upver 2018 | ||||
| %global uprel 2 | ||||
| 
 | ||||
| Name:    tbb | ||||
| Summary: The Threading Building Blocks library abstracts low-level threading details | ||||
| Version: %{upver}%{?uprel:.%{uprel}} | ||||
| Release: 10%{?dist}.1 | ||||
| Version: 2020.3 | ||||
| Release: 9%{?dist} | ||||
| License: ASL 2.0 | ||||
| Group:   Development/Tools | ||||
| URL:     http://threadingbuildingblocks.org/ | ||||
| 
 | ||||
| Source0: https://github.com/01org/tbb/archive/%{upver}%{?uprel:_U%{uprel}}.tar.gz | ||||
| Source0: https://github.com/intel/tbb/archive/v%{version}/%{name}-%{version}.tar.gz | ||||
| # These three are downstream sources. | ||||
| Source6: tbb.pc | ||||
| Source7: tbbmalloc.pc | ||||
| Source8: tbbmalloc_proxy.pc | ||||
| 
 | ||||
| # Propagate CXXFLAGS variable into flags used when compiling C++. | ||||
| # This is so that RPM_OPT_FLAGS are respected. | ||||
| Patch1: tbb-4.4-cxxflags.patch | ||||
| 
 | ||||
| # For 32-bit x86 only, don't assume that the mfence instruction is available. | ||||
| # It was added with SSE2.  This patch causes a lock xchg instruction to be | ||||
| # emitted for non-SSE2 builds, and the mfence instruction to be emitted for | ||||
| # SSE2-enabled builds. | ||||
| Patch2: tbb-4.0-mfence.patch | ||||
| 
 | ||||
| # Don't snip -Wall from C++ flags.  Add -fno-strict-aliasing, as that | ||||
| # uncovers some static-aliasing warnings. | ||||
| # Related: https://bugzilla.redhat.com/show_bug.cgi?id=1037347 | ||||
| Patch3: tbb-4.3-dont-snip-Wall.patch | ||||
| Patch0: tbb-2019-dont-snip-Wall.patch | ||||
| 
 | ||||
| # python3 is not available on RHEL <=7 | ||||
| %if 0%{?rhel} && 0%{?rhel} <= 7 | ||||
| # disable python3 by default | ||||
| %bcond_with python3 | ||||
| %else | ||||
| %bcond_without python3 | ||||
| %endif | ||||
| # Make attributes of aliases match those on the aliased function. | ||||
| Patch1: tbb-2020-attributes.patch | ||||
| 
 | ||||
| # python2 is not available on RHEL > 7 and not needed on Fedora > 28 | ||||
| %if 0%{?rhel} > 7 || 0%{?fedora} > 28 | ||||
| # disable python2 by default | ||||
| %bcond_with python2 | ||||
| %else | ||||
| %bcond_without python2 | ||||
| %endif | ||||
| # Fix test-thread-monitor, which had multiple bugs that could (and did, on | ||||
| # ppc64le) result in a hang. | ||||
| Patch2: tbb-2019-test-thread-monitor.patch | ||||
| 
 | ||||
| # Fix a test that builds a 4-thread barrier, but cannot guarantee that more | ||||
| # than 2 threads will be available to use it. | ||||
| Patch3: tbb-2019-test-task-scheduler-init.patch | ||||
| 
 | ||||
| # Fix ABI break resulting from tbb::empty_task being removed from libtbb.so's | ||||
| # exported symbols | ||||
| Patch4: tbb-mark-empty_task-execute-with-gnu-used.patch | ||||
| 
 | ||||
| BuildRequires: cmake | ||||
| BuildRequires: doxygen | ||||
| BuildRequires: gcc-c++ | ||||
| BuildRequires: swig | ||||
| 
 | ||||
| %if %{with python2} | ||||
| BuildRequires: python2-devel | ||||
| %endif | ||||
| 
 | ||||
| %if %{with python3} | ||||
| BuildRequires: make | ||||
| BuildRequires: python3-devel | ||||
| %endif | ||||
| BuildRequires: swig | ||||
| 
 | ||||
| %description | ||||
| Threading Building Blocks (TBB) is a C++ runtime library that | ||||
| @ -71,7 +52,6 @@ maintenance is required as more processor cores become available. | ||||
| 
 | ||||
| %package devel | ||||
| Summary: The Threading Building Blocks C++ headers and shared development libraries | ||||
| Group: Development/Libraries | ||||
| Requires: %{name}%{?_isa} = %{version}-%{release} | ||||
| 
 | ||||
| %description devel | ||||
| @ -81,149 +61,89 @@ Blocks (TBB) C++ libraries. | ||||
| 
 | ||||
| %package doc | ||||
| Summary: The Threading Building Blocks documentation | ||||
| Group: Documentation | ||||
| 
 | ||||
| %description doc | ||||
| HTML documentation for the user of the Threading Building Block (TBB) | ||||
| C++ library. | ||||
| 
 | ||||
| %if %{with python2} | ||||
| %package -n python2-%{name} | ||||
| Summary: Python 2 TBB module | ||||
| %{?python_provide:%python_provide python2-%{name}} | ||||
| Requires: tbb = %{version}-%{release} | ||||
| 
 | ||||
| %description -n python2-%{name} | ||||
| Python 2 TBB module. | ||||
| %endif | ||||
| 
 | ||||
| %if %{with python3} | ||||
| %package -n python3-%{name} | ||||
| Summary: Python 3 TBB module | ||||
| %{?python_provide:%python_provide python3-%{name}} | ||||
| Requires: tbb = %{version}-%{release} | ||||
| 
 | ||||
| %description -n python3-%{name} | ||||
| Python 3 TBB module. | ||||
| %endif | ||||
| 
 | ||||
| 
 | ||||
| %prep | ||||
| %setup -q -n %{name}-%{upver}_U%{uprel} | ||||
| %patch1 -p1 | ||||
| %patch2 -p1 | ||||
| %patch3 -p1 | ||||
| %autosetup -p1 -n oneTBB-%{version} | ||||
| 
 | ||||
| # For repeatable builds, don't query the hostname or architecture | ||||
| sed -i 's/"`hostname -s`" ("`uname -m`"/fedorabuild (%{_arch}/' \ | ||||
|     build/version_info_linux.sh | ||||
| 
 | ||||
| # Do not assume the RTM instructions are available | ||||
| sed -i 's/-mrtm//' build/linux.gcc.inc | ||||
| # Insert --as-needed before the libraries to be linked. | ||||
| sed -i "s/-fPIC/& -Wl,--as-needed/" build/linux.gcc.inc | ||||
| 
 | ||||
| %if %{with python2} | ||||
| # Invoke the right python binary directly | ||||
| sed -i 's,env python,python2,' python/TBB.py python/tbb/__*.py | ||||
| %endif | ||||
| 
 | ||||
| %if %{with python3} | ||||
| # Invoke the right python binary directly | ||||
| sed -i 's,env python,python3,' python/TBB.py python/tbb/__*.py | ||||
| %endif | ||||
| 
 | ||||
| # Remove shebang from files that don't need it | ||||
| sed -i '/^#!/d' python/tbb/{pool,test}.py | ||||
| 
 | ||||
| # Fix libdir on 64-bit systems | ||||
| if [ "%{_libdir}" != "%{_prefix}/lib" ]; then | ||||
|   sed -i.orig 's/"lib"/"%{_lib}"/' cmake/TBBMakeConfig.cmake | ||||
|   touch -r cmake/TBBMakeConfig.cmake.orig cmake/TBBMakeConfig.cmake | ||||
|   rm cmake/TBBMakeConfig.cmake.orig | ||||
| fi | ||||
| 
 | ||||
| # Prepare to build the python module for both python 2 and python 3 | ||||
| %if %{with python2} | ||||
| cp -a python python2 | ||||
| %endif | ||||
| 
 | ||||
| %if %{with python3} | ||||
| cp -a python python3 | ||||
| sed -i 's,python,python3,g' python3/Makefile python3/rml/Makefile | ||||
| sed -i 's,python2,python3,' python3/TBB.py python3/tbb/__*.py | ||||
| 
 | ||||
| # Invoke Python with the %%{__python3} executable instead of hardcoded python3 | ||||
| sed -i 's,PY_SETUP=python3,PY_SETUP=%{__python3},g' python3/Makefile | ||||
| sed -i 's,python3 -m tbb test,%{__python3} -m tbb test,g' python3/Makefile | ||||
| %endif | ||||
| 
 | ||||
| # Remove jQuery | ||||
| rm doc/html/jquery.js | ||||
| find doc/html -name '*.html' | xargs sed -i '/<script type="text.javascript" src="jquery.js"><.script>/d' | ||||
| # Disable jQuery use | ||||
| sed -i '/^SEARCHENGINE/s/YES/NO/' Doxyfile | ||||
| 
 | ||||
| %build | ||||
| %ifarch %{ix86} | ||||
| # Build an SSE2-enabled version so the mfence instruction can be used | ||||
| cp -a build build.orig | ||||
| make %{?_smp_mflags} tbb_build_prefix=obj stdver=c++14 \ | ||||
|   CXXFLAGS="$RPM_OPT_FLAGS -march=pentium4 -msse2" \ | ||||
|   LDFLAGS="-Wl,--as-needed $RPM_LD_FLAGS" | ||||
| mv build build.sse2 | ||||
| mv build.orig build | ||||
| %endif | ||||
| compiler="" | ||||
| if [[ %{__cc} == *"gcc"* ]]; then | ||||
|     compiler="gcc" | ||||
| elif [[ %{__cc} == *"clang"* ]]; then | ||||
|     compiler="clang" | ||||
| else | ||||
|     compiler="%{__cc}" | ||||
| fi | ||||
| 
 | ||||
| make %{?_smp_mflags} tbb_build_prefix=obj stdver=c++14 \ | ||||
|   CXXFLAGS="$RPM_OPT_FLAGS" \ | ||||
|   LDFLAGS="-Wl,--as-needed $RPM_LD_FLAGS" | ||||
| %make_build tbb_build_prefix=obj stdver=c++14 \ | ||||
|     compiler=${compiler} \ | ||||
|     CXXFLAGS="%{optflags} -DUSE_PTHREAD" \ | ||||
|     LDFLAGS="$RPM_LD_FLAGS -lpthread" | ||||
| for file in %{SOURCE6} %{SOURCE7} %{SOURCE8}; do | ||||
|     base=$(basename ${file}) | ||||
|     sed 's/_FEDORA_VERSION/%{version}/' ${file} > ${base} | ||||
|     touch -r ${file} ${base} | ||||
| done | ||||
| 
 | ||||
| # Build for python 2 | ||||
| %if %{with python2} | ||||
| . build/obj_release/tbbvars.sh | ||||
| pushd python2 | ||||
| make %{?_smp_mflags} -C rml stdver=c++14 \ | ||||
|   CPLUS_FLAGS="%{optflags} -DDO_ITT_NOTIFY -DUSE_PTHREAD" \ | ||||
|   PIC_KEY="-fPIC -Wl,--as-needed" \ | ||||
|   LDFLAGS="$RPM_LD_FLAGS" | ||||
| cp -p rml/libirml.so* . | ||||
| %py2_build | ||||
| popd | ||||
| %endif | ||||
| 
 | ||||
| %if %{with python3} | ||||
| # Build for python 3 | ||||
| . build/obj_release/tbbvars.sh | ||||
| pushd python3 | ||||
| make %{?_smp_mflags} -C rml stdver=c++14 \ | ||||
|   CPLUS_FLAGS="%{optflags} -DDO_ITT_NOTIFY -DUSE_PTHREAD" \ | ||||
|   PIC_KEY="-fPIC -Wl,--as-needed" \ | ||||
|   LDFLAGS="$RPM_LD_FLAGS" | ||||
| pushd python | ||||
| %make_build -C rml stdver=c++14 \ | ||||
|     compiler=${compiler} \ | ||||
|     CPLUS_FLAGS="%{optflags} -DUSE_PTHREAD" \ | ||||
|     LDFLAGS="$RPM_LD_FLAGS -lpthread" | ||||
| cp -p rml/libirml.so* . | ||||
| %py3_build | ||||
| popd | ||||
| %endif | ||||
| 
 | ||||
| # Build the documentation | ||||
| make doxygen | ||||
| # We don't want to ship jQuery in the tbb-doc package | ||||
| rm html/jquery.js | ||||
| find html -name '*.html' | xargs sed -i '/<script type="text.javascript" src="jquery.js"><.script>/d' | ||||
| 
 | ||||
| %check | ||||
| echo ============BEGIN TESTING=============== | ||||
| make -k test tbb_build_prefix=obj stdver=c++14 CXXFLAGS="$RPM_OPT_FLAGS" && true | ||||
| echo ============END TESTING=========== | ||||
| # This test assumes it can create thread barriers for arbitrary numbers of | ||||
| # threads, but tbb limits the number of threads spawned to a function of the | ||||
| # number of CPUs available.  Some of the koji builders have a small number of | ||||
| # CPUs, so the test hangs waiting for threads that have not been created to | ||||
| # arrive at the barrier.  Skip this test until upstream fixes it. | ||||
| sed -i '/test_task_scheduler_observer/d' build/Makefile.test | ||||
| 
 | ||||
| make test tbb_build_prefix=obj stdver=c++14 CXXFLAGS="%{optflags}" | ||||
| 
 | ||||
| %install | ||||
| mkdir -p $RPM_BUILD_ROOT/%{_libdir} | ||||
| mkdir -p $RPM_BUILD_ROOT/%{_includedir} | ||||
| 
 | ||||
| %ifarch %{ix86} | ||||
| mkdir -p $RPM_BUILD_ROOT/%{_libdir}/sse2 | ||||
| pushd build.sse2/obj_release | ||||
|     for file in libtbb{,malloc{,_proxy}}; do | ||||
|         install -p -D -m 755 ${file}.so.2 $RPM_BUILD_ROOT/%{_libdir}/sse2 | ||||
|     done | ||||
| popd | ||||
| %endif | ||||
| 
 | ||||
| pushd build/obj_release | ||||
|     for file in libtbb{,malloc{,_proxy}}; do | ||||
|         install -p -D -m 755 ${file}.so.2 $RPM_BUILD_ROOT/%{_libdir} | ||||
| @ -246,101 +166,162 @@ done | ||||
| mkdir -p $RPM_BUILD_ROOT%{_includedir}/rml | ||||
| cp -p src/rml/include/*.h $RPM_BUILD_ROOT%{_includedir}/rml | ||||
| 
 | ||||
| # Python 2 install | ||||
| %if %{with python2} | ||||
| . build/obj_release/tbbvars.sh | ||||
| pushd python2 | ||||
| %py2_install | ||||
| chmod a+x $RPM_BUILD_ROOT%{python2_sitearch}/TBB.py | ||||
| chmod a+x $RPM_BUILD_ROOT%{python2_sitearch}/tbb/__*.py | ||||
| cp -p libirml.so.1 $RPM_BUILD_ROOT%{_libdir} | ||||
| ln -s libirml.so.1 $RPM_BUILD_ROOT%{_libdir}/libirml.so | ||||
| popd | ||||
| %endif | ||||
| 
 | ||||
| # Python 3 install | ||||
| %if %{with python3} | ||||
| pushd python3 | ||||
| . build/obj_release/tbbvars.sh | ||||
| pushd python | ||||
| %py3_install | ||||
| chmod a+x $RPM_BUILD_ROOT%{python3_sitearch}/TBB.py | ||||
| chmod a+x $RPM_BUILD_ROOT%{python3_sitearch}/tbb/__*.py | ||||
| cp -p libirml.so.1 $RPM_BUILD_ROOT%{_libdir} | ||||
| ln -s libirml.so.1 $RPM_BUILD_ROOT%{_libdir}/libirml.so | ||||
| popd | ||||
| %endif | ||||
| 
 | ||||
| # Install the cmake files | ||||
| mkdir -p $RPM_BUILD_ROOT%{_libdir}/cmake | ||||
| cp -a cmake $RPM_BUILD_ROOT%{_libdir}/cmake/%{name} | ||||
| rm $RPM_BUILD_ROOT%{_libdir}/cmake/%{name}/README.rst | ||||
| 
 | ||||
| %post -p /sbin/ldconfig | ||||
| 
 | ||||
| %postun -p /sbin/ldconfig | ||||
| cmake \ | ||||
|   -DINSTALL_DIR=$RPM_BUILD_ROOT%{_libdir}/cmake/TBB \ | ||||
|   -DSYSTEM_NAME=Linux \ | ||||
|   -DLIB_REL_PATH=../.. \ | ||||
|   -P cmake/tbb_config_installer.cmake | ||||
| 
 | ||||
| %files | ||||
| %doc doc/Release_Notes.txt README.md | ||||
| %license LICENSE | ||||
| %{_libdir}/*.so.2 | ||||
| %{_libdir}/libtbb.so.2 | ||||
| %{_libdir}/libtbbmalloc.so.2 | ||||
| %{_libdir}/libtbbmalloc_proxy.so.2 | ||||
| %{_libdir}/libirml.so.1 | ||||
| %ifarch %{ix86} | ||||
| %{_libdir}/sse2/*.so.2 | ||||
| %endif | ||||
| 
 | ||||
| %files devel | ||||
| %doc CHANGES cmake/README.rst | ||||
| %{_includedir}/rml | ||||
| %{_includedir}/tbb | ||||
| %{_includedir}/rml/ | ||||
| %{_includedir}/tbb/ | ||||
| %{_libdir}/*.so | ||||
| %{_libdir}/cmake/ | ||||
| %{_libdir}/cmake/TBB/ | ||||
| %{_libdir}/pkgconfig/*.pc | ||||
| 
 | ||||
| %files doc | ||||
| %doc doc/Release_Notes.txt | ||||
| %doc doc/html | ||||
| %doc html | ||||
| 
 | ||||
| %if %{with python2} | ||||
| %files -n python2-%{name} | ||||
| %doc python/index.html | ||||
| %{python2_sitearch}/TBB* | ||||
| %{python2_sitearch}/tbb/ | ||||
| %endif | ||||
| 
 | ||||
| %if %{with python3} | ||||
| %files -n python3-%{name} | ||||
| %doc python3/index.html | ||||
| %doc python/index.html | ||||
| %{python3_sitearch}/TBB* | ||||
| %{python3_sitearch}/tbb/ | ||||
| %{python3_sitearch}/__pycache__/TBB* | ||||
| %endif | ||||
| 
 | ||||
| %changelog | ||||
| * Tue Feb 04 2025 Jonathan Wakely <jwakely@redhat.com> - 2018.2-10.1 | ||||
| - Remove jQuery from Doxygen files (RHEL-77669) | ||||
| * Tue Feb 04 2025 Jonathan Wakely <jwakely@redhat.com> - 2020.3-9 | ||||
| - Remove jQuery from Doxygen output (RHEL-77697) | ||||
| 
 | ||||
| * Wed Feb 03 2021 Thomas Rodgers <trodgers@redhat.com> - 2018.2-10 | ||||
| - Apply patches from (BZ #1907561) | ||||
| - Bump release | ||||
| * Tue Aug 10 2021 Mohan Boddu <mboddu@redhat.com> - 2020.3-8 | ||||
| - Rebuilt for IMA sigs, glibc 2.34, aarch64 flags | ||||
|   Related: rhbz#1991688 | ||||
| 
 | ||||
| * Sun Dec 20 2020 Owen Taylor <otaylor@redhat.com> - 2018.2-9 | ||||
| - Fix build directory referenced in python2 build | ||||
| - Move some python3 code that escaped back into a conditional | ||||
|   (BZ #1907561) | ||||
| * Thu Jun  3 2021 Thomas Rodgers <trodgers@redhat.com> - 2020.3-6 | ||||
| - Fix ABI regression in tbb::empty_task caused by switch to LTO | ||||
| 
 | ||||
| * Tue Nov 13 2018 Patsy Griffin Franklin <pfrankli@redhat.com> - 2018.2-9 | ||||
| - Require the correct version of tbb for python2-tbb and python3-tbb. | ||||
|   (BZ #1638041) | ||||
| * Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 2020.3-6 | ||||
| - Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937 | ||||
| 
 | ||||
| * Fri Sep 28 2018 Patsy Griffin Franklin <pfrankli@redhat.com> - 2018.2-8 | ||||
| - Run check for all supported architectures. | ||||
| * Mon Feb 22 2021 Jerry James <loganjerry@gmail.com> - 2020.3-5 | ||||
| - Fix cmake file installation some more (bz 1930389) | ||||
| 
 | ||||
| * Wed Aug 01 2018 Patsy Griffin Franklin <pfrankli@redhat.com> - 2018.2-7 | ||||
| - Selectively build python2 or python3 based on current version. | ||||
| - Don't use pathfix.py as it fails prep on RHEL when building on systems | ||||
|   do not have python installled. | ||||
| * Thu Feb 18 2021 Jerry James <loganjerry@gmail.com> - 2020.3-4 | ||||
| - Fix cmake file installation (bz 1930389) | ||||
| - Allow use of RTM instructions when available | ||||
| - At upstream's suggestion, do not force ITT_NOTIFY support | ||||
| - Drop -fetchadd64 patch, only needed for forced ITT_NOTIFY support | ||||
| 
 | ||||
| * Tue Jul 03 2018 Tomas Orsava <torsava@redhat.com> - 2018.2-6 | ||||
| - Switch hardcoded python3 path into the %%{__python3} macro | ||||
| * Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 2020.3-3 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild | ||||
| 
 | ||||
| * Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2020.3-2 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild | ||||
| 
 | ||||
| * Mon Jul 27 2020 Jerry James <loganjerry@gmail.com> - 2020.3-1 | ||||
| - Rebase to version 2020.3 | ||||
| 
 | ||||
| * Tue Jul 14 2020 Tom Stellard <tstellar@redhat.com> - 2020.2-4 | ||||
| - Use make macros | ||||
| - https://fedoraproject.org/wiki/Changes/UseMakeBuildInstallMacro | ||||
| 
 | ||||
| * Tue May 26 2020 Miro Hrončok <mhroncok@redhat.com> - 2020.2-3 | ||||
| - Rebuilt for Python 3.9 | ||||
| 
 | ||||
| * Mon Apr 27 2020 Timm Baeder <tbaeder@redhat.com> - 2020.2-2 | ||||
| - Pass the compiler to when building | ||||
| - Update the tbb-2019-test-thread-monitor.patch to use std::atomic | ||||
| 
 | ||||
| * Tue Mar 31 2020 Jerry James <loganjerry@gmail.com> - 2020.2-1 | ||||
| - Rebase to version 2020.2 | ||||
| 
 | ||||
| * Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 2020.1-2 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild | ||||
| 
 | ||||
| * Wed Jan 22 2020 Jerry James <loganjerry@gmail.com> - 2020.1-1 | ||||
| - Rebase to version 2020.1 | ||||
| 
 | ||||
| * Tue Dec 31 2019 Jerry James <loganjerry@gmail.com> - 2020-1 | ||||
| - Rebase to version 2020 | ||||
| 
 | ||||
| * Sat Oct 12 2019 Jerry James <loganjerry@gmail.com> - 2019.9-1 | ||||
| - Rebase to 2019 update 9 | ||||
| 
 | ||||
| * Thu Oct 03 2019 Miro Hrončok <mhroncok@redhat.com> - 2019.8-4 | ||||
| - Rebuilt for Python 3.8.0rc1 (#1748018) | ||||
| 
 | ||||
| * Tue Aug 27 2019 Jerry James <loganjerry@gmail.com> - 2019.8-3 | ||||
| - Add -test-thread-monitor and -test-task-scheduler-init patches to fix FTBFS | ||||
| 
 | ||||
| * Mon Aug 19 2019 Miro Hrončok <mhroncok@redhat.com> - 2019.8-3 | ||||
| - Rebuilt for Python 3.8 | ||||
| 
 | ||||
| * Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2019.8-2 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild | ||||
| 
 | ||||
| * Sat Jun  8 2019 Jerry James <loganjerry@gmail.com> - 2019.8-1 | ||||
| - Rebase to 2019 update 8 | ||||
| 
 | ||||
| * Thu May 23 2019 Jerry James <loganjerry@gmail.com> - 2019.7-1 | ||||
| - Rebase to 2019 update 7 | ||||
| 
 | ||||
| * Thu May  9 2019 Jerry James <loganjerry@gmail.com> - 2019.6-1 | ||||
| - Rebase to 2019 update 6 | ||||
| - Add -attributes patch to silence gcc warnings | ||||
| 
 | ||||
| * Mon Mar 25 2019 Jerry James <loganjerry@gmail.com> - 2019.5-1 | ||||
| - Rebase to 2019 update 5 | ||||
| 
 | ||||
| * Mon Mar  4 2019 Jerry James <loganjerry@gmail.com> - 2019.4-1 | ||||
| - Rebase to 2019 update 4 | ||||
| 
 | ||||
| * Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2019.3-2 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild | ||||
| 
 | ||||
| * Sat Dec  8 2018 Jerry James <loganjerry@gmail.com> - 2019.3-1 | ||||
| - Rebase to 2019 update 3 | ||||
| 
 | ||||
| * Fri Nov 16 2018 Jerry James <loganjerry@gmail.com> - 2019.2-1 | ||||
| - Rebase to 2019 update 2 | ||||
| 
 | ||||
| * Thu Oct  4 2018 Jerry James <loganjerry@gmail.com> - 2019.1-1 | ||||
| - Rebase to 2019 update 1 | ||||
| - Drop special SSE2 build for 32-bit x86 as that is now default | ||||
| - Drop unneeded -cxxflags patch | ||||
| - Drop python 2 support (bz 1629761) | ||||
| 
 | ||||
| * Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2018.5-2 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild | ||||
| 
 | ||||
| * Tue Jul  3 2018 Jerry James <loganjerry@gmail.com> - 2018.5-1 | ||||
| - Rebase to 2018 update 5 | ||||
| - Run check script on all architectures | ||||
| 
 | ||||
| * Tue Jun 19 2018 Miro Hrončok <mhroncok@redhat.com> - 2018.4-2 | ||||
| - Rebuilt for Python 3.7 | ||||
| 
 | ||||
| * Thu May 31 2018 Jerry James <loganjerry@gmail.com> - 2018.4-1 | ||||
| - Rebase to 2018 update 4 | ||||
| 
 | ||||
| * Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2018.2-5 | ||||
| - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user