diff options
author | Sebastien Fabbro <bicatali@gentoo.org> | 2012-09-13 22:37:22 +0000 |
---|---|---|
committer | Sebastien Fabbro <bicatali@gentoo.org> | 2012-09-13 22:37:22 +0000 |
commit | 5ba05b1d2687320e12ca6d38d794a01ab20f5674 (patch) | |
tree | 9f18bdca43a04ce296d0658b588f71569ff6e36c /dev-cpp | |
parent | Stable arm, bug #434876 (diff) | |
download | gentoo-2-5ba05b1d2687320e12ca6d38d794a01ab20f5674.tar.gz gentoo-2-5ba05b1d2687320e12ca6d38d794a01ab20f5674.tar.bz2 gentoo-2-5ba05b1d2687320e12ca6d38d794a01ab20f5674.zip |
Version bump. Updated patch to respect LDFLAGS. Stable and commercially-aligned relaseses now merged to stable
(Portage version: 2.2.01.20972-prefix/cvs/Linux x86_64)
Diffstat (limited to 'dev-cpp')
-rw-r--r-- | dev-cpp/tbb/ChangeLog | 10 | ||||
-rw-r--r-- | dev-cpp/tbb/files/tbb-4.1.20120718-ldflags.patch | 231 | ||||
-rw-r--r-- | dev-cpp/tbb/tbb-4.0.297.ebuild | 6 | ||||
-rw-r--r-- | dev-cpp/tbb/tbb-4.1.20120718.ebuild | 120 |
4 files changed, 363 insertions, 4 deletions
diff --git a/dev-cpp/tbb/ChangeLog b/dev-cpp/tbb/ChangeLog index 7c6f272384cd..d05b143aa143 100644 --- a/dev-cpp/tbb/ChangeLog +++ b/dev-cpp/tbb/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for dev-cpp/tbb # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-cpp/tbb/ChangeLog,v 1.25 2012/08/08 12:04:53 hasufell Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-cpp/tbb/ChangeLog,v 1.26 2012/09/13 22:37:22 bicatali Exp $ + +*tbb-4.1.20120718 (13 Sep 2012) + + 13 Sep 2012; Sébastien Fabbro <bicatali@gentoo.org> + +files/tbb-4.1.20120718-ldflags.patch, +tbb-4.1.20120718.ebuild, + tbb-4.0.297.ebuild: + Version bump. Updated patch to respect LDFLAGS. Stable and commercially- + aligned relaseses now merged to stable 08 Aug 2012; Julian Ospald <hasufell@gentoo.org> tbb-4.0.297.ebuild: filter out --as-needed wrt #418453#c3 diff --git a/dev-cpp/tbb/files/tbb-4.1.20120718-ldflags.patch b/dev-cpp/tbb/files/tbb-4.1.20120718-ldflags.patch new file mode 100644 index 000000000000..af7f8e6c025e --- /dev/null +++ b/dev-cpp/tbb/files/tbb-4.1.20120718-ldflags.patch @@ -0,0 +1,231 @@ +From: Sebastien Fabbro <bicatali@gentoo.org> +Date: Thu Sep 13 15:13:19 PDT 2012 +Subject: build system + +respect LDFLAGS properly +wrt https://bugs.gentoo.org/show_bug.cgi?id=418453 + +diff -Nur tbb41_20120718oss.orig/build/common_rules.inc tbb41_20120718oss/build/common_rules.inc +--- tbb41_20120718oss.orig/build/common_rules.inc 2012-08-06 05:06:15.000000000 -0700 ++++ tbb41_20120718oss/build/common_rules.inc 2012-09-13 14:58:45.556908494 -0700 +@@ -44,8 +44,6 @@ + ifeq ($(tbb_cpf),1) + CPLUS_FLAGS += $(DEFINE_KEY)__TBB_CPF_BUILD=1 + endif +-LINK_FLAGS += $(LDFLAGS) +-LIB_LINK_FLAGS += $(LDFLAGS) + CPLUS_FLAGS_NOSTRICT = $(subst -strict-ansi,-ansi,$(CPLUS_FLAGS)) + + LIB_LINK_CMD ?= $(CPLUS) $(PIC_KEY) +diff -Nur tbb41_20120718oss.orig/build/Makefile.rml tbb41_20120718oss/build/Makefile.rml +--- tbb41_20120718oss.orig/build/Makefile.rml 2012-08-06 05:06:15.000000000 -0700 ++++ tbb41_20120718oss/build/Makefile.rml 2012-09-13 14:58:45.556908494 -0700 +@@ -103,7 +103,7 @@ + + $(RML.DLL): BUILDING_LIBRARY = $(RML.DLL) + $(RML.DLL): $(RML_TBB_DEP) $(RML_SERVER.OBJ) $(RML.RES) $(RML_NO_VERSION.DLL) $(RML_ASM.OBJ) +- $(LIB_LINK_CMD) $(LIB_OUTPUT_KEY)$(RML.DLL) $(RML_SERVER.OBJ) $(RML_TBB_DEP) $(RML_ASM.OBJ) $(RML.RES) $(LIB_LINK_LIBS) $(LIB_LINK_FLAGS) ++ $(LIB_LINK_CMD) $(LDFLAGS) $(LIB_OUTPUT_KEY)$(RML.DLL) $(RML_SERVER.OBJ) $(RML_TBB_DEP) $(RML_ASM.OBJ) $(RML.RES) $(LIB_LINK_LIBS) $(LIB_LINK_FLAGS) + + ifneq (,$(RML_NO_VERSION.DLL)) + $(RML_NO_VERSION.DLL): +@@ -126,13 +126,13 @@ + RML_TESTS = test_job_automaton.$(TEST_EXT) test_thread_monitor.$(TEST_EXT) test_rml_tbb.$(TEST_EXT) test_rml_omp.$(TEST_EXT) test_rml_mixed.$(TEST_EXT) test_rml_omp_c_linkage.$(TEST_EXT) + + test_rml_tbb.$(TEST_EXT): test_rml_tbb.$(OBJ) $(RML_TBB_CLIENT.OBJ) $(TBB_DEP_RML_TEST) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) test_rml_tbb.$(OBJ) $(RML_TBB_CLIENT.OBJ) $(TBB_DEP_RML_TEST) $(LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) test_rml_tbb.$(OBJ) $(RML_TBB_CLIENT.OBJ) $(TBB_DEP_RML_TEST) $(LIBS) $(LINK_FLAGS) + + test_rml_omp.$(TEST_EXT): test_rml_omp.$(OBJ) $(RML_OMP_CLIENT.OBJ) $(TBB_DEP_NON_RML_TEST) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) test_rml_omp.$(OBJ) $(RML_OMP_CLIENT.OBJ) $(TBB_DEP_NON_RML_TEST) $(LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) test_rml_omp.$(OBJ) $(RML_OMP_CLIENT.OBJ) $(TBB_DEP_NON_RML_TEST) $(LIBS) $(LINK_FLAGS) + + test_rml_mixed.$(TEST_EXT): test_rml_mixed.$(OBJ) $(RML_TBB_CLIENT.OBJ) $(RML_OMP_CLIENT.OBJ) $(TBB_DEP_RML_TEST) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) test_rml_mixed.$(OBJ) $(RML_TBB_CLIENT.OBJ) $(RML_OMP_CLIENT.OBJ) $(TBB_DEP_RML_TEST) $(LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) test_rml_mixed.$(OBJ) $(RML_TBB_CLIENT.OBJ) $(RML_OMP_CLIENT.OBJ) $(TBB_DEP_RML_TEST) $(LIBS) $(LINK_FLAGS) + + rml_omp_stub.$(OBJ): rml_omp_stub.cpp + $(CPLUS) $(COMPILE_ONLY) $(M_CPLUS_FLAGS) $(WARNING_SUPPRESS) $(T_INCLUDES) $(PIC_KEY) $< +@@ -141,7 +141,7 @@ + $(CONLY) $(C_FLAGS) $(OUTPUT_KEY)$@ test_rml_omp_c_linkage.$(OBJ) rml_omp_stub.$(OBJ) omp_dynamic_link.$(OBJ) $(LIBS) $(LINK_FLAGS) + + test_%.$(TEST_EXT): test_%.$(OBJ) $(TBB_DEP_NON_RML_TEST) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $< $(TBB_DEP_NON_RML_TEST) $(LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $< $(TBB_DEP_NON_RML_TEST) $(LIBS) $(LINK_FLAGS) + + ### run_cmd is usually empty + rml_test: $(call cross_suffix,$(RML.DLL)) $(TEST_PREREQUISITE) $(RML_TESTS) +diff -Nur tbb41_20120718oss.orig/build/Makefile.tbb tbb41_20120718oss/build/Makefile.tbb +--- tbb41_20120718oss.orig/build/Makefile.tbb 2012-08-06 05:06:15.000000000 -0700 ++++ tbb41_20120718oss/build/Makefile.tbb 2012-09-13 14:58:45.556908494 -0700 +@@ -120,7 +120,7 @@ + + $(TBB.DLL): BUILDING_LIBRARY = $(TBB.DLL) + $(TBB.DLL): $(TBB.OBJ) $(TBB.RES) tbbvars.sh $(TBB_NO_VERSION.DLL) +- $(LIB_LINK_CMD) $(LIB_OUTPUT_KEY)$(TBB.DLL) $(TBB.OBJ) $(TBB.RES) $(LIB_LINK_LIBS) $(LIB_LINK_FLAGS) ++ $(LIB_LINK_CMD) $(LDFLAGS) $(LIB_OUTPUT_KEY)$(TBB.DLL) $(TBB.OBJ) $(TBB.RES) $(LIB_LINK_LIBS) $(LIB_LINK_FLAGS) + + ifneq (,$(TBB_NO_VERSION.DLL)) + $(TBB_NO_VERSION.DLL): +diff -Nur tbb41_20120718oss.orig/build/Makefile.tbbmalloc tbb41_20120718oss/build/Makefile.tbbmalloc +--- tbb41_20120718oss.orig/build/Makefile.tbbmalloc 2012-08-06 05:06:15.000000000 -0700 ++++ tbb41_20120718oss/build/Makefile.tbbmalloc 2012-09-13 15:06:11.893254873 -0700 +@@ -82,7 +82,7 @@ + + $(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) ++ $(subst $(CPLUS),$(CONLY),$(LIB_LINK_CMD)) $(LDFLAGS) $(LIB_OUTPUT_KEY)$(MALLOC.DLL) $(MALLOC.OBJ) $(MALLOC.RES) $(LIB_LINK_LIBS) $(MALLOC_LINK_FLAGS) + + ifneq (,$(MALLOCPROXY.DEF)) + tbbmallocproxy.def: $(MALLOCPROXY.DEF) +@@ -95,7 +95,7 @@ + ifneq (,$(MALLOCPROXY.DLL)) + $(MALLOCPROXY.DLL): BUILDING_LIBRARY = $(MALLOCPROXY.DLL) + $(MALLOCPROXY.DLL): $(PROXY.OBJ) $(MALLOCPROXY_NO_VERSION.DLL) $(MALLOC.DLL) $(MALLOC.RES) +- $(LIB_LINK_CMD) $(LIB_OUTPUT_KEY)$(MALLOCPROXY.DLL) $(PROXY.OBJ) $(MALLOC.RES) $(LIB_LINK_LIBS) $(LINK_MALLOC.LIB) $(PROXY_LINK_FLAGS) ++ $(LIB_LINK_CMD) $(LDFLAGS) $(LIB_OUTPUT_KEY)$(MALLOCPROXY.DLL) $(PROXY.OBJ) $(MALLOC.RES) $(LIB_LINK_LIBS) $(LINK_MALLOC.LIB) $(PROXY_LINK_FLAGS) + endif + + ifneq (,$(MALLOC_NO_VERSION.DLL)) +@@ -143,38 +143,38 @@ + endif + + test_malloc_overload.$(TEST_EXT): test_malloc_overload.cpp +- $(CPLUS) $(OUTPUT_KEY)$@ $(subst /MT,/MD,$(M_CPLUS_FLAGS)) $(M_INCLUDES) $< $(LIBDL) $(LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(subst /MT,/MD,$(M_CPLUS_FLAGS)) $(LDFLAGS) $(M_INCLUDES) $< $(LIBDL) $(LIBS) $(LINK_FLAGS) + test_malloc_overload_proxy.$(TEST_EXT): test_malloc_overload.cpp $(MALLOC_PROXY_LIB) +- $(CPLUS) $(OUTPUT_KEY)$@ $(subst /MT,/MD,$(M_CPLUS_FLAGS)) $(M_INCLUDES) $< $(LIBDL) $(MALLOC_PROXY_LIB) $(LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(subst /MT,/MD,$(M_CPLUS_FLAGS)) $(LDFLAGS) $(M_INCLUDES) $< $(LIBDL) $(MALLOC_PROXY_LIB) $(LIBS) $(LINK_FLAGS) + + test_malloc_whitebox.$(TEST_EXT): test_malloc_whitebox.cpp $(MALLOC_ASM.OBJ) version_string.ver +- $(CPLUS) $(OUTPUT_KEY)$@ $(M_CPLUS_FLAGS) $(M_INCLUDES) $(INCLUDE_KEY). $< $(MALLOC_ASM.OBJ) $(LIBS) $(LIBDL) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(M_CPLUS_FLAGS) $(LDFLAGS) $(M_INCLUDES) $(INCLUDE_KEY). $< $(MALLOC_ASM.OBJ) $(LIBS) $(LIBDL) $(LINK_FLAGS) + + test_malloc_lib_unload.$(TEST_EXT): test_malloc_lib_unload.cpp test_malloc_lib_unload_dll.$(DLL) +- $(CPLUS) $(OUTPUT_KEY)$@ $(M_CPLUS_FLAGS) $(M_INCLUDES) $< $(LIBS) test_malloc_lib_unload_dll.$(LIBEXT) $(LIBDL) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(M_CPLUS_FLAGS) $(LDFLAGS) $(M_INCLUDES) $< $(LIBS) test_malloc_lib_unload_dll.$(LIBEXT) $(LIBDL) $(LINK_FLAGS) + + # TODO: use generic rules + test_malloc_used_by_lib.$(TEST_EXT): test_malloc_used_by_lib.cpp test_malloc_used_by_lib.$(DLL) +- $(CPLUS) $(OUTPUT_KEY)$@ $(M_CPLUS_FLAGS) $(M_INCLUDES) $< $(LIBS) $(LIBDL) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(M_CPLUS_FLAGS) $(LDFLAGS) $(M_INCLUDES) $< $(LIBS) $(LIBDL) $(LINK_FLAGS) + + test_malloc_used_by_lib.$(DLL): test_malloc_used_by_lib.cpp + $(CPLUS) $(OUTPUT_KEY)$@ $(subst /MT,/LD,$(M_CPLUS_FLAGS)) $(PIC_KEY) $(M_INCLUDES) $(DEFINE_KEY)_USRDLL $< $(MALLOC_LIB) $(LINK_FLAGS) $(DYLIB_KEY) + + $(MALLOC_MAIN_TESTS): %.$(TEST_EXT): %.$(OBJ) $(MALLOC_LIB) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $< $(MALLOC_LIB) $(LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $< $(MALLOC_LIB) $(LIBS) $(LINK_FLAGS) + + MALLOC_C_TESTS = test_malloc_pure_c.$(TEST_EXT) + + $(MALLOC_C_TESTS): %.$(TEST_EXT): %.$(OBJ) $(MALLOC_LIB) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $^ $(LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $^ $(LIBS) $(LINK_FLAGS) + + # Rules for generating a test DLL + %_dll.$(DLL): %_dll.$(OBJ) +- $(LIB_LINK_CMD) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(PIC_KEY) $< $(LIBS) $(LINK_FLAGS) $(DYLIB_KEY) ++ $(LIB_LINK_CMD) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $(PIC_KEY) $< $(LIBS) $(LINK_FLAGS) $(DYLIB_KEY) + .PRECIOUS: %_dll.$(OBJ) + + test_malloc_atexit.$(TEST_EXT): test_malloc_atexit.$(OBJ) test_malloc_atexit_dll.$(DLL) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $< $(MALLOC_PROXY_LIB) $(MALLOC_LIB) test_malloc_atexit_dll.$(LIBEXT) $(LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $< $(MALLOC_PROXY_LIB) $(MALLOC_LIB) test_malloc_atexit_dll.$(LIBEXT) $(LIBS) $(LINK_FLAGS) + + MALLOC_TESTS = $(MALLOC_MAIN_TESTS) $(MALLOC_C_TESTS) test_malloc_whitebox.$(TEST_EXT) test_malloc_used_by_lib.$(TEST_EXT) + ifneq (,$(MALLOCPROXY.DLL)) +diff -Nur tbb41_20120718oss.orig/build/Makefile.tbbproxy tbb41_20120718oss/build/Makefile.tbbproxy +--- tbb41_20120718oss.orig/build/Makefile.tbbproxy 2012-08-06 05:06:15.000000000 -0700 ++++ tbb41_20120718oss/build/Makefile.tbbproxy 2012-09-13 14:58:45.557908491 -0700 +@@ -102,7 +102,7 @@ + + # Link rules. + $(PROXY_TESTS_EXES): %.$(TEST_EXT): %.$(OBJ) $(PROXY_LIB) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $< $(PROXY_LIB) $(LIBS) $(LIBDL) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $< $(PROXY_LIB) $(LIBS) $(LIBDL) $(LINK_FLAGS) + + # Compilation rules. + $(PROXY_TESTS_OBJS): %.$(OBJ): %.cpp +diff -Nur tbb41_20120718oss.orig/build/Makefile.test tbb41_20120718oss/build/Makefile.test +--- tbb41_20120718oss.orig/build/Makefile.test 2012-08-06 05:06:15.000000000 -0700 ++++ tbb41_20120718oss/build/Makefile.test 2012-09-13 15:10:46.438703091 -0700 +@@ -55,17 +55,17 @@ + + # Rule for generating executable test + %.$(TEST_EXT): %.$(OBJ) $(TBB.LIB) $(if $(use_proxy),$(LINK_TBB.LIB)) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $< $(LINK_TBB.LIB) $(LIBS) $(AUX_LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $< $(LINK_TBB.LIB) $(LIBS) $(AUX_LIBS) $(LINK_FLAGS) + + # Rules for generating a test DLL + %_dll.$(DLL): %_dll.$(OBJ) $(TBB.LIB) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(PIC_KEY) $< $(LINK_TBB.LIB) $(LIBS) $(LINK_FLAGS) $(DYLIB_KEY) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $(PIC_KEY) $< $(LINK_TBB.LIB) $(LIBS) $(LINK_FLAGS) $(DYLIB_KEY) + .PRECIOUS: %_dll.$(OBJ) %_dll.$(DLL) + + # Rules for the tests, which use TBB in a dynamically loadable library + test_model_plugin.$(TEST_EXT): CPLUS_FLAGS := $(CPLUS_FLAGS:$(USE_PROXY_FLAG)=) + test_model_plugin.$(TEST_EXT): test_model_plugin.$(OBJ) test_model_plugin_dll.$(DLL) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $< $(LIBDL) $(LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $< $(LIBDL) $(LIBS) $(LINK_FLAGS) + + + # tbb_misc.$(OBJ) has to be specified here (instead of harness_inject_scheduler.h) because it carries dependency on version_string.ver +@@ -82,31 +82,31 @@ + $(SCHEDULER_DIRECTLY_INCLUDED): WARNING_KEY += $(WARNING_SUPPRESS) + + $(SCHEDULER_DIRECTLY_INCLUDED): %.$(TEST_EXT) : %.$(OBJ) $(SCHEDULER_DEPENDENCIES) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $^ $(LIBDL) $(LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $^ $(LIBDL) $(LIBS) $(LINK_FLAGS) + + # Tests that use some features of C++11 + TEST_TBB_CPP11 = test_lambda.$(TEST_EXT) test_cache_aligned_allocator_STL.$(TEST_EXT) + + $(TEST_TBB_CPP11:%.$(TEST_EXT)=%.$(OBJ)): %.$(OBJ): %.cpp +- $(CPLUS) $(COMPILE_ONLY) $(CPLUS_FLAGS) $(CPP11_FLAGS) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $< ++ $(CPLUS) $(COMPILE_ONLY) $(CPLUS_FLAGS) $(LDFLAGS) $(CPP11_FLAGS) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $< + $(TEST_TBB_CPP11): %.$(TEST_EXT): %.$(OBJ) $(TBB.LIB) $(if $(use_proxy),$(LINK_TBB.LIB)) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(CPP11_FLAGS) $< $(LINK_TBB.LIB) $(LIBS) $(AUX_LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $(CPP11_FLAGS) $< $(LINK_TBB.LIB) $(LIBS) $(AUX_LIBS) $(LINK_FLAGS) + + test_tbb_header2.$(OBJ): test_tbb_header.cpp +- $(CPLUS) $(COMPILE_ONLY) $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $(DEFINE_KEY)__TBB_TEST_SECONDARY=1 $< $(OUTPUTOBJ_KEY)$@ ++ $(CPLUS) $(COMPILE_ONLY) $(CPLUS_FLAGS) $(LDFLAGS) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $(DEFINE_KEY)__TBB_TEST_SECONDARY=1 $< $(OUTPUTOBJ_KEY)$@ + + # Detecting "multiple definition" linker error using the test that covers the whole library + test_tbb_header.$(TEST_EXT): test_tbb_header.$(OBJ) test_tbb_header2.$(OBJ) $(TBB.LIB) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) test_tbb_header.$(OBJ) test_tbb_header2.$(OBJ) $(LINK_TBB.LIB) $(LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) test_tbb_header.$(OBJ) test_tbb_header2.$(OBJ) $(LINK_TBB.LIB) $(LIBS) $(LINK_FLAGS) + + # Checks that TBB atomics work correctly in position independent code + test_atomic_pic.$(TEST_EXT): test_atomic.cpp +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(PIC_KEY) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $(DEFINE_KEY)__TBB_TEST_PIC=1 $< $(LINK_TBB.LIB) $(LIBS) $(AUX_LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $(PIC_KEY) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $(DEFINE_KEY)__TBB_TEST_PIC=1 $< $(LINK_TBB.LIB) $(LIBS) $(AUX_LIBS) $(LINK_FLAGS) + + #Test of generic gcc port + %_compiler_builtins.$(TEST_EXT): CPLUS_FLAGS+=$(DEFINE_KEY)__TBB_TEST_GCC_BUILTINS=1 + %_compiler_builtins.$(TEST_EXT): %.cpp +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $< $(LIBS) $(AUX_LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $< $(LIBS) $(AUX_LIBS) $(LINK_FLAGS) + + # The main list of TBB tests + TEST_TBB_PLAIN.EXE = test_assembly.$(TEST_EXT) \ +@@ -192,7 +192,7 @@ + + ifdef OPENMP_FLAG + test_openmp.$(TEST_EXT): test_openmp.cpp +- $(CPLUS) $(OPENMP_FLAG) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(INCLUDES) $< $(LIBS) $(LINK_TBB.LIB) $(LINK_FLAGS) ++ $(CPLUS) $(OPENMP_FLAG) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $(INCLUDES) $< $(LIBS) $(LINK_TBB.LIB) $(LINK_FLAGS) + test_tbb_openmp: $(TEST_PREREQUISITE) test_openmp.$(TEST_EXT) + $(run_cmd) ./test_openmp.$(TEST_EXT) 1:4 + else +@@ -202,7 +202,7 @@ + + ifdef CILK_AVAILABLE + test_cilk_dynamic_load.$(TEST_EXT): test_cilk_dynamic_load.$(OBJ) test_cilk_dynamic_load_dll.$(DLL) +- $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $< $(LINK_TBB.LIB) $(LIBDL) $(LIBS) $(LINK_FLAGS) ++ $(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(LDFLAGS) $< $(LINK_TBB.LIB) $(LIBDL) $(LIBS) $(LINK_FLAGS) + # Workaround on cilkrts linkage known issue (see Intel(R) C++ Composer XE 2011 Release Notes) + # The issue reveals itself if a version of binutils is prior to 2.17 + ifeq (linux_icc,$(tbb_os)_$(compiler)) diff --git a/dev-cpp/tbb/tbb-4.0.297.ebuild b/dev-cpp/tbb/tbb-4.0.297.ebuild index dbd64b948d9c..fa0785eb8557 100644 --- a/dev-cpp/tbb/tbb-4.0.297.ebuild +++ b/dev-cpp/tbb/tbb-4.0.297.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-cpp/tbb/tbb-4.0.297.ebuild,v 1.10 2012/08/08 12:04:53 hasufell Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-cpp/tbb/tbb-4.0.297.ebuild,v 1.11 2012/09/13 22:37:22 bicatali Exp $ EAPI=4 inherit eutils flag-o-matic multilib versionator toolchain-funcs @@ -22,12 +22,12 @@ SRC_URI="http://www.threadingbuildingblocks.org/uploads/${MYU}/${PV1}.${PV2}${MY LICENSE="GPL-2-with-exceptions" SLOT="0" -KEYWORDS="amd64 x86" +KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux" IUSE="debug doc examples" # FIXME # https://bugs.gentoo.org/show_bug.cgi?id=412675#c10 # restricting test for stabilization -RESTRICT="test" +#RESTRICT="test" DEPEND="" RDEPEND="${DEPEND}" diff --git a/dev-cpp/tbb/tbb-4.1.20120718.ebuild b/dev-cpp/tbb/tbb-4.1.20120718.ebuild new file mode 100644 index 000000000000..f3c1f1aeb1c2 --- /dev/null +++ b/dev-cpp/tbb/tbb-4.1.20120718.ebuild @@ -0,0 +1,120 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-cpp/tbb/tbb-4.1.20120718.ebuild,v 1.1 2012/09/13 22:37:22 bicatali Exp $ + +EAPI=4 +inherit eutils flag-o-matic multilib versionator toolchain-funcs + +# those 2 below change pretty much every release +# url number +MYU="77/188" +# release update +MYR="" + +PV1="$(get_version_component_range 1)" +PV2="$(get_version_component_range 2)" +PV3="$(get_version_component_range 3)" +MYP="${PN}${PV1}${PV2}_${PV3}oss" + +DESCRIPTION="High level abstract threading library" +HOMEPAGE="http://www.threadingbuildingblocks.org/" +SRC_URI="http://www.threadingbuildingblocks.org/uploads/${MYU}/${PV1}.${PV2}${MYR}/${MYP}_src.tgz" +LICENSE="GPL-2-with-exceptions" + +SLOT="0" +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux" +IUSE="debug doc examples" +# FIXME +# https://bugs.gentoo.org/show_bug.cgi?id=412675#c10 +# sep 12: still many tests are failing +# restricting test for stabilization +RESTRICT="test" + +DEPEND="" +RDEPEND="${DEPEND}" +S="${WORKDIR}/${MYP}" + +src_prepare() { + epatch \ + "${FILESDIR}"/${PN}-4.1.20120718-ldflags.patch \ + "${FILESDIR}"/${PN}-4.0.297-underlinking.patch + # use fully qualified compilers. do not force pentium4 for x86 users + sed -i \ + -e "s/-O2/${CXXFLAGS}/g" \ + -e "/CPLUS/s/g++/$(tc-getCXX)/g" \ + -e "/CONLY/s/gcc/$(tc-getCC)/g" \ + -e "s/shell gcc/shell $(tc-getCC)/g" \ + -e '/CPLUS_FLAGS +=/s/-march=pentium4//' \ + -e 's/-m64//g' \ + -e 's/-m32//g' \ + build/*.inc || die + # - Strip the $(shell ... >$(NUL) 2>$(NUL)) wrapping, leaving just the + # actual command. + # - Force generation of version_string.tmp immediately after the directory + # is created. This avoids a race when the user builds tbb and tbbmalloc + # concurrently. The choice of Makefile.tbb (instead of + # Makefile.tbbmalloc) is arbitrary. + #sed -i \ + # -e 's/^\t\$(shell \(.*\) >\$(NUL) 2>\$(NUL))\s*/\t\1/' \ + # -e 's!^\t@echo Created \$(work_dir)_\(debug\|release\).*$!&\n\t$(MAKE) -C "$(work_dir)_\1" -r -f $(tbb_root)/build/Makefile.tbb cfg=\1 tbb_root=$(tbb_root) version_string.tmp!' \ + # src/Makefile || die + find include -name \*.html -delete + + cat <<-EOF > ${PN}.pc + prefix=${EPREFIX}/usr + libdir=\${prefix}/$(get_libdir) + includedir=\${prefix}/include + Name: ${PN} + Description: ${DESCRIPTION} + Version: ${PV} + URL: ${HOMEPAGE} + Libs: -L\${libdir} -ltbb -ltbbmalloc + Cflags: -I\${includedir} + EOF +} + +src_compile() { + # wrt #418453#c3 + append-ldflags $(no-as-needed) + + if [[ $(tc-getCXX) == *g++ ]]; then + myconf="compiler=gcc" + elif [[ $(tc-getCXX) == *ic*c ]]; then + myconf="compiler=icc" + fi + local ccconf="${myconf}" + if use debug || use examples; then + ccconf="${ccconf} tbb_debug tbbmalloc_debug" + fi + emake -C src ${ccconf} tbb_release tbbmalloc_release +} + +src_test() { + local ccconf="${myconf}" + if use debug || use examples; then + ${ccconf}="${myconf} test_debug tbbmalloc_test_debug" + fi + emake -j1 -C src ${ccconf} test_release +} + +src_install(){ + local l + for l in $(find build -name lib\*.so.\*); do + dolib.so ${l} + local bl=$(basename ${l}) + dosym ${bl} /usr/$(get_libdir)/${bl%.*} + done + insinto /usr + doins -r include + insinto /usr/$(get_libdir)/pkgconfig + doins ${PN}.pc + dodoc README CHANGES doc/Release_Notes.txt + use doc && dohtml -r doc/html/* + + if use examples ; then + insinto /usr/share/doc/${PF}/examples/build + doins build/*.inc + insinto /usr/share/doc/${PF}/examples + doins -r examples + fi +} |