59 changed files with 7084 additions and 0 deletions
-
85resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/AIX.gcc.inc
-
76resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/AIX.inc
-
95resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/FreeBSD.gcc.inc
-
84resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/FreeBSD.inc
-
161resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/Makefile.rml
-
134resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/Makefile.tbb
-
218resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/Makefile.tbbmalloc
-
117resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/Makefile.tbbproxy
-
387resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/Makefile.test
-
102resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/SunOS.gcc.inc
-
93resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/SunOS.inc
-
100resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/SunOS.suncc.inc
-
144resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/android.gcc.inc
-
77resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/android.inc
-
78resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/android.linux.inc
-
164resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/android.linux.launcher.sh
-
87resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/android.macos.inc
-
86resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/android.windows.inc
-
74resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/big_iron.inc
-
7resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/codecov.txt
-
141resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/common.inc
-
129resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/common_rules.inc
-
183resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/detect.js
-
77resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/generate_tbbvars.bat
-
81resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/generate_tbbvars.sh
-
242resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/index.html
-
145resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/linux.gcc.inc
-
126resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/linux.icc.inc
-
141resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/linux.inc
-
114resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/linux.xl.inc
-
120resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/macos.clang.inc
-
109resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/macos.gcc.inc
-
103resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/macos.icc.inc
-
105resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/macos.inc
-
90resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/mic.icc.inc
-
47resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/mic.linux.inc
-
111resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/mic.linux.launcher.sh
-
170resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/mic.offload.inc
-
1resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/suncc.map.pause
-
51resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/test_launcher.bat
-
60resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/test_launcher.sh
-
42resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/version_info_aix.sh
-
46resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/version_info_android.sh
-
42resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/version_info_linux.sh
-
39resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/version_info_macos.sh
-
39resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/version_info_sunos.sh
-
136resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/version_info_windows.js
-
30resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/vsproject/index.html
-
84resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/vsproject/makefile.sln
-
538resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/vsproject/tbb.vcproj
-
418resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/vsproject/tbbmalloc.vcproj
-
214resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/vsproject/tbbmalloc_proxy.vcproj
-
1resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/vsproject/version_string.ver
-
138resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/windows.cl.inc
-
145resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/windows.gcc.inc
-
173resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/windows.icl.inc
-
111resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/windows.inc
-
93resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/xbox360.cl.inc
-
80resources/3rdparty/tbb41_20130314_merged-win-lin-mac/build/xbox360.inc
@ -0,0 +1,85 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
COMPILE_ONLY = -c -MMD |
|||
PREPROC_ONLY = -E -x c++ |
|||
INCLUDE_KEY = -I |
|||
DEFINE_KEY = -D |
|||
OUTPUT_KEY = -o # |
|||
OUTPUTOBJ_KEY = -o # |
|||
PIC_KEY = -fPIC |
|||
WARNING_AS_ERROR_KEY = -Werror |
|||
WARNING_KEY = -Wall |
|||
DYLIB_KEY = -shared |
|||
LIBDL = -ldl |
|||
|
|||
TBB_NOSTRICT = 1 |
|||
|
|||
CPLUS = g++ |
|||
CONLY = gcc |
|||
LIB_LINK_FLAGS = -shared |
|||
LIBS = -lpthread -ldl |
|||
C_FLAGS = $(CPLUS_FLAGS) -x c |
|||
|
|||
ifeq ($(cfg), release) |
|||
CPLUS_FLAGS = -O2 -DUSE_PTHREAD -pthread |
|||
endif |
|||
ifeq ($(cfg), debug) |
|||
CPLUS_FLAGS = -DTBB_USE_DEBUG -g -O0 -DUSE_PTHREAD -pthread |
|||
endif |
|||
|
|||
ASM= |
|||
ASM_FLAGS= |
|||
|
|||
TBB_ASM.OBJ= |
|||
|
|||
ifeq (powerpc,$(arch)) |
|||
CPLUS_FLAGS += -maix64 -Wl,-G |
|||
LIB_LINK_FLAGS += -maix64 -Wl,-b64 -Wl,-brtl -Wl,-G |
|||
endif |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
ASSEMBLY_SOURCE=ibm_aix51 |
|||
ifeq (powerpc,$(arch)) |
|||
TBB_ASM.OBJ = atomic_support.o |
|||
endif |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) -fno-rtti -fno-exceptions -fno-schedule-insns2 |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
@ -0,0 +1,76 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
ifndef arch |
|||
arch:=$(shell uname -p) |
|||
export arch |
|||
endif |
|||
|
|||
ifndef runtime |
|||
gcc_version:=$(shell gcc -v 2>&1 | grep 'gcc version' | sed -e 's/^gcc version //' | sed -e 's/ .*$$//') |
|||
os_version:=$(shell uname -r) |
|||
os_kernel_version:=$(shell uname -r | sed -e 's/-.*$$//') |
|||
export runtime:=cc$(gcc_version)_kernel$(os_kernel_version) |
|||
endif |
|||
|
|||
native_compiler := gcc |
|||
export compiler ?= gcc |
|||
debugger ?= gdb |
|||
|
|||
CMD=$(SHELL) -c |
|||
CWD=$(shell pwd) |
|||
RM?=rm -f |
|||
RD?=rmdir |
|||
MD?=mkdir -p |
|||
NUL= /dev/null |
|||
SLASH=/ |
|||
MAKE_VERSIONS=sh $(tbb_root)/build/version_info_aix.sh $(CPLUS) $(CPLUS_FLAGS) $(INCLUDES) >version_string.ver |
|||
MAKE_TBBVARS=sh $(tbb_root)/build/generate_tbbvars.sh |
|||
|
|||
ifdef LIBPATH |
|||
export LIBPATH := .:$(LIBPATH) |
|||
else |
|||
export LIBPATH := . |
|||
endif |
|||
|
|||
####### Build settings ######################################################## |
|||
|
|||
OBJ = o |
|||
DLL = so |
|||
|
|||
TBB.LST = |
|||
TBB.DEF = |
|||
TBB.DLL = libtbb$(CPF_SUFFIX)$(DEBUG_SUFFIX).$(DLL) |
|||
TBB.LIB = $(TBB.DLL) |
|||
LINK_TBB.LIB = $(TBB.LIB) |
|||
|
|||
MALLOC.DLL = libtbbmalloc$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOC.LIB = $(MALLOC.DLL) |
|||
LINK_MALLOC.LIB = $(MALLOC.LIB) |
|||
|
|||
TBB_NOSTRICT=1 |
|||
|
|||
TEST_LAUNCHER=sh $(tbb_root)/build/test_launcher.sh $(largs) |
@ -0,0 +1,95 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
COMPILE_ONLY = -c -MMD |
|||
PREPROC_ONLY = -E -x c++ |
|||
INCLUDE_KEY = -I |
|||
DEFINE_KEY = -D |
|||
OUTPUT_KEY = -o # |
|||
OUTPUTOBJ_KEY = -o # |
|||
PIC_KEY = -fPIC |
|||
WARNING_AS_ERROR_KEY = -Werror |
|||
WARNING_KEY = -Wall |
|||
DYLIB_KEY = -shared |
|||
|
|||
TBB_NOSTRICT = 1 |
|||
|
|||
CPLUS = g++ |
|||
CONLY = gcc |
|||
LIB_LINK_FLAGS = -shared |
|||
LIBS = -lpthread |
|||
C_FLAGS = $(CPLUS_FLAGS) |
|||
|
|||
ifeq ($(cfg), release) |
|||
CPLUS_FLAGS = -O2 -DUSE_PTHREAD |
|||
endif |
|||
ifeq ($(cfg), debug) |
|||
CPLUS_FLAGS = -DTBB_USE_DEBUG -g -O0 -DUSE_PTHREAD |
|||
endif |
|||
|
|||
ASM= |
|||
ASM_FLAGS= |
|||
|
|||
TBB_ASM.OBJ= |
|||
MALLOC_ASM.OBJ= |
|||
|
|||
ifeq (ia64,$(arch)) |
|||
# Position-independent code (PIC) is a must on IA-64, even for regular (not shared) executables |
|||
CPLUS_FLAGS += $(PIC_KEY) |
|||
endif |
|||
|
|||
ifeq (intel64,$(arch)) |
|||
CPLUS_FLAGS += -m64 |
|||
LIB_LINK_FLAGS += -m64 |
|||
endif |
|||
|
|||
ifeq (ia32,$(arch)) |
|||
CPLUS_FLAGS += -m32 |
|||
LIB_LINK_FLAGS += -m32 |
|||
endif |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
ASSEMBLY_SOURCE=$(arch)-gas |
|||
ifeq (ia64,$(arch)) |
|||
ASM=as |
|||
TBB_ASM.OBJ = atomic_support.o lock_byte.o log2.o pause.o |
|||
MALLOC_ASM.OBJ = atomic_support.o lock_byte.o pause.o |
|||
endif |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) -fno-rtti -fno-exceptions -fno-schedule-insns2 |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
@ -0,0 +1,84 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
ifndef arch |
|||
ifeq ($(shell uname -m),i386) |
|||
export arch:=ia32 |
|||
endif |
|||
ifeq ($(shell uname -m),ia64) |
|||
export arch:=ia64 |
|||
endif |
|||
ifeq ($(shell uname -m),amd64) |
|||
export arch:=intel64 |
|||
endif |
|||
endif |
|||
|
|||
ifndef runtime |
|||
gcc_version:=$(shell gcc -v 2>&1 | grep 'gcc version' | sed -e 's/^gcc version //' | sed -e 's/ .*$$//') |
|||
os_version:=$(shell uname -r) |
|||
os_kernel_version:=$(shell uname -r | sed -e 's/-.*$$//') |
|||
export runtime:=cc$(gcc_version)_kernel$(os_kernel_version) |
|||
endif |
|||
|
|||
native_compiler := gcc |
|||
export compiler ?= gcc |
|||
debugger ?= gdb |
|||
|
|||
CMD=$(SHELL) -c |
|||
CWD=$(shell pwd) |
|||
RM?=rm -f |
|||
RD?=rmdir |
|||
MD?=mkdir -p |
|||
NUL= /dev/null |
|||
SLASH=/ |
|||
MAKE_VERSIONS=sh $(tbb_root)/build/version_info_linux.sh $(CPLUS) $(CPLUS_FLAGS) $(INCLUDES) >version_string.ver |
|||
MAKE_TBBVARS=sh $(tbb_root)/build/generate_tbbvars.sh |
|||
|
|||
ifdef LD_LIBRARY_PATH |
|||
export LD_LIBRARY_PATH := .:$(LD_LIBRARY_PATH) |
|||
else |
|||
export LD_LIBRARY_PATH := . |
|||
endif |
|||
|
|||
####### Build settings ######################################################## |
|||
|
|||
OBJ = o |
|||
DLL = so |
|||
LIBEXT=so |
|||
|
|||
TBB.LST = |
|||
TBB.DEF = |
|||
TBB.DLL = libtbb$(CPF_SUFFIX)$(DEBUG_SUFFIX).$(DLL) |
|||
TBB.LIB = $(TBB.DLL) |
|||
LINK_TBB.LIB = $(TBB.LIB) |
|||
|
|||
MALLOC.DLL = libtbbmalloc$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOC.LIB = $(MALLOC.DLL) |
|||
LINK_MALLOC.LIB = $(MALLOC.LIB) |
|||
|
|||
TBB_NOSTRICT=1 |
|||
|
|||
TEST_LAUNCHER=sh $(tbb_root)/build/test_launcher.sh $(largs) |
@ -0,0 +1,161 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved.
|
|||
#
|
|||
# This file is part of Threading Building Blocks.
|
|||
#
|
|||
# Threading Building Blocks is free software; you can redistribute it
|
|||
# and/or modify it under the terms of the GNU General Public License
|
|||
# version 2 as published by the Free Software Foundation.
|
|||
#
|
|||
# Threading Building Blocks is distributed in the hope that it will be
|
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
|
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|||
# GNU General Public License for more details.
|
|||
#
|
|||
# You should have received a copy of the GNU General Public License
|
|||
# along with Threading Building Blocks; if not, write to the Free Software
|
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|||
#
|
|||
# As a special exception, you may use this file as part of a free software
|
|||
# library without restriction. Specifically, if other files instantiate
|
|||
# templates or use macros or inline functions from this file, or you compile
|
|||
# this file and link it with other files to produce an executable, this
|
|||
# file does not by itself cause the resulting executable to be covered by
|
|||
# the GNU General Public License. This exception does not however
|
|||
# invalidate any other reasons why the executable file might be covered by
|
|||
# the GNU General Public License.
|
|||
|
|||
tbb_root ?= $(TBBROOT) |
|||
BUILDING_PHASE=1 |
|||
TEST_RESOURCE = $(RML.RES) |
|||
include $(tbb_root)/build/common.inc |
|||
DEBUG_SUFFIX=$(findstring _debug,_$(cfg)) |
|||
|
|||
# default target
|
|||
default_rml: rml rml_test |
|||
|
|||
RML_ROOT ?= $(tbb_root)/src/rml |
|||
RML_SERVER_ROOT = $(RML_ROOT)/server |
|||
|
|||
VPATH = $(tbb_root)/src/tbb $(tbb_root)/src/tbb/$(ASSEMBLY_SOURCE) |
|||
VPATH += $(RML_ROOT)/server $(RML_ROOT)/client $(RML_ROOT)/test $(tbb_root)/src/test |
|||
|
|||
include $(tbb_root)/build/common_rules.inc |
|||
|
|||
#--------------------------------------------------------------------------
|
|||
# Define rules for making the RML server shared library and client objects.
|
|||
#--------------------------------------------------------------------------
|
|||
|
|||
# Object files that make up RML server
|
|||
RML_SERVER.OBJ = rml_server.$(OBJ) |
|||
|
|||
# Object files that RML clients need
|
|||
RML_TBB_CLIENT.OBJ ?= rml_tbb.$(OBJ) dynamic_link_rml.$(OBJ) |
|||
RML_OMP_CLIENT.OBJ ?= rml_omp.$(OBJ) omp_dynamic_link.$(OBJ) |
|||
|
|||
RML.OBJ = $(RML_SERVER.OBJ) $(RML_TBB_CLIENT.OBJ) $(RML_OMP_CLIENT.OBJ) |
|||
ifeq (windows,$(tbb_os)) |
|||
RML_ASM.OBJ = $(if $(findstring intel64,$(arch)),$(TBB_ASM.OBJ)) |
|||
endif |
|||
ifeq (linux,$(tbb_os)) |
|||
RML_ASM.OBJ = $(if $(findstring ia64,$(arch)),$(TBB_ASM.OBJ)) |
|||
endif |
|||
|
|||
RML_TBB_DEP= cache_aligned_allocator_rml.$(OBJ) dynamic_link_rml.$(OBJ) concurrent_vector_rml.$(OBJ) semaphore_rml.$(OBJ) tbb_misc_rml.$(OBJ) tbb_misc_ex_rml.$(OBJ) |
|||
TBB_DEP_NON_RML_TEST?= cache_aligned_allocator_rml.$(OBJ) dynamic_link_rml.$(OBJ) $(RML_ASM.OBJ) tbb_misc_rml.$(OBJ) tbb_misc_ex_rml.$(OBJ) |
|||
ifeq ($(cfg),debug) |
|||
RML_TBB_DEP+= spin_mutex_rml.$(OBJ) |
|||
TBB_DEP_RML_TEST?= $(RML_ASM.OBJ) tbb_misc_rml.$(OBJ) |
|||
else |
|||
TBB_DEP_RML_TEST?= $(RML_ASM.OBJ) |
|||
endif |
|||
LIBS += $(LIBDL) |
|||
|
|||
INCLUDES += $(INCLUDE_KEY)$(RML_ROOT)/include $(INCLUDE_KEY). |
|||
T_INCLUDES = $(INCLUDES) $(INCLUDE_KEY)$(tbb_root)/src/test $(INCLUDE_KEY)$(RML_SERVER_ROOT) |
|||
|
|||
# Suppress superfluous warnings for RML compilation
|
|||
R_CPLUS_FLAGS = $(subst DO_ITT_NOTIFY,DO_ITT_NOTIFY=0,$(CPLUS_FLAGS)) $(WARNING_SUPPRESS) \
|
|||
$(DEFINE_KEY)TBB_USE_THREADING_TOOLS=0 $(DEFINE_KEY)__TBB_RML_STATIC=1 $(DEFINE_KEY)__TBB_NO_IMPLICIT_LINKAGE=1 |
|||
|
|||
%.$(OBJ): %.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(R_CPLUS_FLAGS) $(PIC_KEY) $(INCLUDES) $< |
|||
|
|||
ifeq (linux,$(tbb_os)) |
|||
omp_dynamic_link.$(OBJ): CPLUS_FLAGS+=-fno-exceptions |
|||
endif |
|||
|
|||
tbb_misc_rml.$(OBJ): version_string.ver |
|||
|
|||
RML_TEST.OBJ = test_job_automaton.$(OBJ) test_thread_monitor.$(OBJ) test_rml_tbb.$(OBJ) test_rml_omp.$(OBJ) test_rml_mixed.$(OBJ) |
|||
|
|||
$(RML_TBB_DEP): %_rml.$(OBJ): %.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(OUTPUTOBJ_KEY)$@ $(R_CPLUS_FLAGS) $(PIC_KEY) $(INCLUDES) $< |
|||
|
|||
$(RML_TEST.OBJ): %.$(OBJ): %.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(R_CPLUS_FLAGS) $(PIC_KEY) $(T_INCLUDES) $< |
|||
|
|||
ifneq (,$(RML.DEF)) |
|||
rml.def: $(RML.DEF) |
|||
$(CPLUS) $(PREPROC_ONLY) $< $(CPLUS_FLAGS) $(INCLUDES) > $@ |
|||
|
|||
LIB_LINK_FLAGS += $(EXPORT_KEY)rml.def |
|||
$(RML.DLL): rml.def |
|||
endif |
|||
|
|||
$(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) |
|||
|
|||
ifneq (,$(RML_NO_VERSION.DLL)) |
|||
$(RML_NO_VERSION.DLL): |
|||
echo "INPUT ($(RML.DLL))" > $(RML_NO_VERSION.DLL) |
|||
endif |
|||
|
|||
rml: $(RML.DLL) $(RML_TBB_CLIENT.OBJ) $(RML_OMP_CLIENT.OBJ) |
|||
|
|||
#------------------------------------------------------
|
|||
# End of rules for making the RML server shared library
|
|||
#------------------------------------------------------
|
|||
|
|||
#------------------------------------------------------
|
|||
# Define rules for making the RML unit tests
|
|||
#------------------------------------------------------
|
|||
|
|||
add_debug=$(basename $(1))_debug$(suffix $(1)) |
|||
cross_suffix=$(if $(crosstest),$(if $(DEBUG_SUFFIX),$(subst _debug,,$(1)),$(call add_debug,$(1))),$(1)) |
|||
|
|||
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) |
|||
|
|||
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) |
|||
|
|||
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) |
|||
|
|||
rml_omp_stub.$(OBJ): rml_omp_stub.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(M_CPLUS_FLAGS) $(WARNING_SUPPRESS) $(T_INCLUDES) $(PIC_KEY) $< |
|||
|
|||
test_rml_omp_c_linkage.$(TEST_EXT): test_rml_omp_c_linkage.$(OBJ) rml_omp_stub.$(OBJ) omp_dynamic_link.$(OBJ) |
|||
$(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) |
|||
|
|||
### run_cmd is usually empty
|
|||
rml_test: $(call cross_suffix,$(RML.DLL)) $(TEST_PREREQUISITE) $(RML_TESTS) |
|||
$(run_cmd) ./test_job_automaton.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_thread_monitor.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_rml_tbb.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_rml_omp.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_rml_mixed.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_rml_omp_c_linkage.$(TEST_EXT) $(args) |
|||
|
|||
#------------------------------------------------------
|
|||
# End of rules for making the TBBMalloc unit tests
|
|||
#------------------------------------------------------
|
|||
|
|||
# Include automatically generated dependences
|
|||
-include *.d |
@ -0,0 +1,134 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved.
|
|||
#
|
|||
# This file is part of Threading Building Blocks.
|
|||
#
|
|||
# Threading Building Blocks is free software; you can redistribute it
|
|||
# and/or modify it under the terms of the GNU General Public License
|
|||
# version 2 as published by the Free Software Foundation.
|
|||
#
|
|||
# Threading Building Blocks is distributed in the hope that it will be
|
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
|
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|||
# GNU General Public License for more details.
|
|||
#
|
|||
# You should have received a copy of the GNU General Public License
|
|||
# along with Threading Building Blocks; if not, write to the Free Software
|
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|||
#
|
|||
# As a special exception, you may use this file as part of a free software
|
|||
# library without restriction. Specifically, if other files instantiate
|
|||
# templates or use macros or inline functions from this file, or you compile
|
|||
# this file and link it with other files to produce an executable, this
|
|||
# file does not by itself cause the resulting executable to be covered by
|
|||
# the GNU General Public License. This exception does not however
|
|||
# invalidate any other reasons why the executable file might be covered by
|
|||
# the GNU General Public License.
|
|||
|
|||
#------------------------------------------------------------------------------
|
|||
# Define rules for making the TBB shared library.
|
|||
#------------------------------------------------------------------------------
|
|||
|
|||
tbb_root ?= "$(TBBROOT)" |
|||
BUILDING_PHASE=1 |
|||
include $(tbb_root)/build/common.inc |
|||
DEBUG_SUFFIX=$(findstring _debug,_$(cfg)) |
|||
|
|||
#------------------------------------------------------------
|
|||
# Define static pattern rules dealing with .cpp source files
|
|||
#------------------------------------------------------------
|
|||
$(warning CONFIG: cfg=$(cfg) arch=$(arch) compiler=$(compiler) os=$(tbb_os) runtime=$(runtime)) |
|||
|
|||
default_tbb: $(TBB.DLL) |
|||
.PHONY: default_tbb tbbvars clean |
|||
.PRECIOUS: %.$(OBJ) |
|||
|
|||
VPATH = $(tbb_root)/src/tbb/$(ASSEMBLY_SOURCE) $(tbb_root)/src/tbb $(tbb_root)/src/old $(tbb_root)/src/rml/client |
|||
|
|||
CPLUS_FLAGS += $(PIC_KEY) $(DEFINE_KEY)__TBB_BUILD=1 |
|||
|
|||
# A template to switch off strict-ansi for certain compilation units
|
|||
# ifeq (1,$(TBB_NOSTRICT))
|
|||
# KNOWN_NOSTRICT = <object-file-name>
|
|||
# endif
|
|||
|
|||
# suppress warnings for build of itt_notify by GCC3
|
|||
ifneq (,$(findstring gcc_cc3., $(compiler)_$(runtime))) |
|||
KNOWN_WARNINGS += itt_notify.$(OBJ) |
|||
endif |
|||
|
|||
# Object files (that were compiled from C++ code) that gmake up TBB
|
|||
TBB_CPLUS.OBJ = concurrent_hash_map.$(OBJ) \
|
|||
concurrent_queue.$(OBJ) \
|
|||
concurrent_vector.$(OBJ) \
|
|||
dynamic_link.$(OBJ) \
|
|||
itt_notify.$(OBJ) \
|
|||
cache_aligned_allocator.$(OBJ) \
|
|||
pipeline.$(OBJ) \
|
|||
queuing_mutex.$(OBJ) \
|
|||
queuing_rw_mutex.$(OBJ) \
|
|||
reader_writer_lock.$(OBJ) \
|
|||
spin_rw_mutex.$(OBJ) \
|
|||
spin_mutex.$(OBJ) \
|
|||
critical_section.$(OBJ) \
|
|||
task.$(OBJ) \
|
|||
tbb_misc.$(OBJ) \
|
|||
tbb_misc_ex.$(OBJ) \
|
|||
mutex.$(OBJ) \
|
|||
recursive_mutex.$(OBJ) \
|
|||
condition_variable.$(OBJ) \
|
|||
tbb_thread.$(OBJ) \
|
|||
concurrent_monitor.$(OBJ) \
|
|||
semaphore.$(OBJ) \
|
|||
private_server.$(OBJ) \
|
|||
rml_tbb.$(OBJ) \
|
|||
task_group_context.$(OBJ) \
|
|||
governor.$(OBJ) \
|
|||
market.$(OBJ) \
|
|||
arena.$(OBJ) \
|
|||
scheduler.$(OBJ) \
|
|||
observer_proxy.$(OBJ) \
|
|||
tbb_statistics.$(OBJ) \
|
|||
tbb_main.$(OBJ) |
|||
|
|||
# OLD/Legacy object files for backward binary compatibility
|
|||
ifeq (,$(findstring $(DEFINE_KEY)TBB_NO_LEGACY,$(CPLUS_FLAGS))) |
|||
TBB_CPLUS_OLD.OBJ = \
|
|||
concurrent_vector_v2.$(OBJ) \
|
|||
concurrent_queue_v2.$(OBJ) \
|
|||
spin_rw_mutex_v2.$(OBJ) \
|
|||
task_v2.$(OBJ) |
|||
endif |
|||
|
|||
# Object files that gmake up TBB (TBB_ASM.OBJ is platform-specific)
|
|||
TBB.OBJ = $(TBB_CPLUS.OBJ) $(TBB_CPLUS_OLD.OBJ) $(TBB_ASM.OBJ) |
|||
|
|||
# Suppress superfluous warnings for TBB compilation
|
|||
WARNING_KEY += $(WARNING_SUPPRESS) |
|||
|
|||
include $(tbb_root)/build/common_rules.inc |
|||
|
|||
ifneq (,$(TBB.DEF)) |
|||
tbb.def: $(TBB.DEF) $(TBB.LST) |
|||
$(CPLUS) $(PREPROC_ONLY) $< $(CPLUS_FLAGS) $(INCLUDES) > $@ |
|||
|
|||
LIB_LINK_FLAGS += $(EXPORT_KEY)tbb.def |
|||
$(TBB.DLL): tbb.def |
|||
endif |
|||
|
|||
tbbvars.sh: |
|||
$(MAKE_TBBVARS) |
|||
|
|||
$(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) |
|||
|
|||
ifneq (,$(TBB_NO_VERSION.DLL)) |
|||
$(TBB_NO_VERSION.DLL): |
|||
echo "INPUT ($(TBB.DLL))" > $(TBB_NO_VERSION.DLL) |
|||
endif |
|||
|
|||
#clean:
|
|||
# $(RM) *.$(OBJ) *.$(DLL) *.res *.map *.ilk *.pdb *.exp *.manifest *.tmp *.d core core.*[0-9][0-9] *.ver
|
|||
|
|||
# Include automatically generated dependences
|
|||
-include *.d |
@ -0,0 +1,218 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved.
|
|||
#
|
|||
# This file is part of Threading Building Blocks.
|
|||
#
|
|||
# Threading Building Blocks is free software; you can redistribute it
|
|||
# and/or modify it under the terms of the GNU General Public License
|
|||
# version 2 as published by the Free Software Foundation.
|
|||
#
|
|||
# Threading Building Blocks is distributed in the hope that it will be
|
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
|
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|||
# GNU General Public License for more details.
|
|||
#
|
|||
# You should have received a copy of the GNU General Public License
|
|||
# along with Threading Building Blocks; if not, write to the Free Software
|
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|||
#
|
|||
# As a special exception, you may use this file as part of a free software
|
|||
# library without restriction. Specifically, if other files instantiate
|
|||
# templates or use macros or inline functions from this file, or you compile
|
|||
# this file and link it with other files to produce an executable, this
|
|||
# file does not by itself cause the resulting executable to be covered by
|
|||
# the GNU General Public License. This exception does not however
|
|||
# invalidate any other reasons why the executable file might be covered by
|
|||
# the GNU General Public License.
|
|||
|
|||
# default target
|
|||
default_malloc: malloc malloc_test |
|||
|
|||
tbb_root ?= $(TBBROOT) |
|||
BUILDING_PHASE=1 |
|||
TEST_RESOURCE = $(MALLOC.RES) |
|||
include $(tbb_root)/build/common.inc |
|||
DEBUG_SUFFIX=$(findstring _debug,_$(cfg)) |
|||
|
|||
MALLOC_ROOT ?= $(tbb_root)/src/tbbmalloc |
|||
MALLOC_SOURCE_ROOT ?= $(MALLOC_ROOT) |
|||
|
|||
VPATH = $(tbb_root)/src/tbb/$(ASSEMBLY_SOURCE) $(tbb_root)/src/tbb $(tbb_root)/src/test |
|||
VPATH += $(MALLOC_ROOT) $(MALLOC_SOURCE_ROOT) |
|||
|
|||
CPLUS_FLAGS += $(if $(crosstest),$(DEFINE_KEY)__TBBMALLOC_NO_IMPLICIT_LINKAGE=1) |
|||
|
|||
include $(tbb_root)/build/common_rules.inc |
|||
|
|||
#------------------------------------------------------
|
|||
# Define rules for making the TBBMalloc shared library.
|
|||
#------------------------------------------------------
|
|||
|
|||
# Object files that make up TBBMalloc
|
|||
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_INCLUDES = $(INCLUDES) $(INCLUDE_KEY)$(MALLOC_ROOT) $(INCLUDE_KEY)$(MALLOC_SOURCE_ROOT) |
|||
|
|||
# Suppress superfluous warnings for TBBmalloc compilation
|
|||
$(MALLOC.OBJ): M_CPLUS_FLAGS += $(WARNING_SUPPRESS) |
|||
|
|||
frontend.$(OBJ): frontend.cpp version_string.ver |
|||
$(CPLUS) $(COMPILE_ONLY) $(M_CPLUS_FLAGS) $(PIC_KEY) $(M_INCLUDES) $(INCLUDE_KEY). $< |
|||
|
|||
$(PROXY.OBJ): %.$(OBJ): %.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(CPLUS_FLAGS) $(PIC_KEY) $(DEFINE_KEY)__TBBMALLOC_BUILD=1 $(M_INCLUDES) $< |
|||
|
|||
$(MALLOC_CPLUS.OBJ): %.$(OBJ): %.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(M_CPLUS_FLAGS) $(PIC_KEY) $(M_INCLUDES) $< |
|||
|
|||
itt_notify_malloc.$(OBJ): itt_notify.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(M_CPLUS_FLAGS) $(PIC_KEY) $(OUTPUTOBJ_KEY)$@ $(INCLUDES) $< |
|||
|
|||
MALLOC_LINK_FLAGS = $(LIB_LINK_FLAGS) |
|||
PROXY_LINK_FLAGS = $(LIB_LINK_FLAGS) |
|||
|
|||
ifneq (,$(MALLOC.DEF)) |
|||
tbbmalloc.def: $(MALLOC.DEF) |
|||
$(CPLUS) $(PREPROC_ONLY) $< $(CPLUS_FLAGS) $(INCLUDES) > $@ |
|||
|
|||
MALLOC_LINK_FLAGS += $(EXPORT_KEY)tbbmalloc.def |
|||
$(MALLOC.DLL): tbbmalloc.def |
|||
endif |
|||
|
|||
$(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) |
|||
|
|||
ifneq (,$(MALLOCPROXY.DEF)) |
|||
tbbmallocproxy.def: $(MALLOCPROXY.DEF) |
|||
$(CPLUS) $(PREPROC_ONLY) $< $(CPLUS_FLAGS) $(INCLUDES) > $@ |
|||
|
|||
PROXY_LINK_FLAGS += $(EXPORT_KEY)tbbmallocproxy.def |
|||
$(MALLOCPROXY.DLL): tbbmallocproxy.def |
|||
endif |
|||
|
|||
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) |
|||
endif |
|||
|
|||
ifneq (,$(MALLOC_NO_VERSION.DLL)) |
|||
$(MALLOC_NO_VERSION.DLL): |
|||
echo "INPUT ($(MALLOC.DLL))" > $(MALLOC_NO_VERSION.DLL) |
|||
endif |
|||
|
|||
ifneq (,$(MALLOCPROXY_NO_VERSION.DLL)) |
|||
$(MALLOCPROXY_NO_VERSION.DLL): |
|||
echo "INPUT ($(MALLOCPROXY.DLL))" > $(MALLOCPROXY_NO_VERSION.DLL) |
|||
endif |
|||
|
|||
malloc: $(MALLOC.DLL) $(MALLOCPROXY.DLL) |
|||
|
|||
malloc_dll: $(MALLOC.DLL) |
|||
|
|||
malloc_proxy_dll: $(MALLOCPROXY.DLL) |
|||
|
|||
.PHONY: malloc malloc_dll malloc_proxy_dll |
|||
|
|||
#------------------------------------------------------
|
|||
# End of rules for making the TBBMalloc shared library
|
|||
#------------------------------------------------------
|
|||
|
|||
#------------------------------------------------------
|
|||
# Define rules for making the TBBMalloc unit tests
|
|||
#------------------------------------------------------
|
|||
|
|||
add_debug=$(basename $(1))_debug$(suffix $(1)) |
|||
cross_suffix=$(if $(crosstest),$(if $(DEBUG_SUFFIX),$(subst _debug,,$(1)),$(call add_debug,$(1))),$(1)) |
|||
|
|||
MALLOC_MAIN_TESTS = test_ScalableAllocator.$(TEST_EXT) \
|
|||
test_ScalableAllocator_STL.$(TEST_EXT) \
|
|||
test_malloc_compliance.$(TEST_EXT) \
|
|||
test_malloc_regression.$(TEST_EXT) \
|
|||
test_malloc_init_shutdown.$(TEST_EXT) \
|
|||
test_malloc_pools.$(TEST_EXT) |
|||
MALLOC_OVERLOAD_TESTS = test_malloc_overload.$(TEST_EXT) test_malloc_overload_proxy.$(TEST_EXT) test_malloc_atexit.$(TEST_EXT) |
|||
|
|||
MALLOC_LIB ?= $(call cross_suffix,$(MALLOC.LIB)) |
|||
MALLOC_PROXY_LIB ?= $(call cross_suffix,$(MALLOCPROXY.LIB)) |
|||
LINK_MALLOC_LIB ?= $(call cross_suffix,$(LINK_MALLOC.LIB)) |
|||
LINK_MALLOC_PROXY_LIB ?= $(call cross_suffix,$(LINK_MALLOCPROXY.LIB)) |
|||
|
|||
ifeq (windows.gcc,$(tbb_os).$(compiler)) |
|||
test_malloc_overload.$(TEST_EXT): LIBS += $(MALLOC_PROXY_LIB) |
|||
endif |
|||
|
|||
# on Ubuntu 11.10 linker called with --as-needed, so dependence on libtbbmalloc_proxy
|
|||
# is not created, and malloc overload via linking with -ltbbmalloc_proxy is not working.
|
|||
# Overcome with --no-as-needed.
|
|||
ifeq (linux.gcc,$(tbb_os).$(compiler)) |
|||
test_malloc_atexit.$(TEST_EXT): MALLOC_PROXY_LIB := -Wl,--no-as-needed $(MALLOC_PROXY_LIB) |
|||
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) |
|||
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) |
|||
|
|||
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) |
|||
|
|||
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) |
|||
|
|||
# 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) |
|||
|
|||
test_malloc_used_by_lib.$(DLL): test_malloc_used_by_lib.cpp $(MALLOC_LIB) |
|||
$(CPLUS) $(OUTPUT_KEY)$@ $(subst /MT,/LD,$(M_CPLUS_FLAGS)) $(PIC_KEY) $(M_INCLUDES) $(DEFINE_KEY)_USRDLL $< $(LINK_MALLOC_LIB) $(LINK_FLAGS) $(DYLIB_KEY) |
|||
|
|||
$(MALLOC_MAIN_TESTS): %.$(TEST_EXT): %.$(OBJ) $(MALLOC_LIB) |
|||
$(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $< $(LINK_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) $^ $(LINK_MALLOC_LIB) $(LIBS) $(LINK_FLAGS) |
|||
|
|||
# Rules for generating a test DLL
|
|||
%_dll.$(DLL): %_dll.$(OBJ) |
|||
$(LIB_LINK_CMD) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(PIC_KEY) $< $(LIBS) $(LIBDL) $(LINK_FLAGS) $(DYLIB_KEY) |
|||
.PRECIOUS: %_dll.$(OBJ) |
|||
|
|||
test_malloc_atexit.$(TEST_EXT): test_malloc_atexit.$(OBJ) test_malloc_atexit_dll.$(DLL) $(MALLOC_LIB) |
|||
$(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $< $(MALLOC_PROXY_LIB) $(LINK_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)) |
|||
MALLOC_TESTS += $(MALLOC_OVERLOAD_TESTS) test_malloc_lib_unload.$(TEST_EXT) |
|||
endif |
|||
|
|||
# run_cmd is usually empty
|
|||
malloc_test: $(call cross_suffix,$(MALLOC.DLL)) malloc_test_no_depends |
|||
|
|||
malloc_test_no_depends: $(TEST_PREREQUISITE) $(MALLOC_TESTS) |
|||
$(run_cmd) ./test_malloc_pools.$(TEST_EXT) $(args) 1:4 |
|||
ifneq (,$(MALLOCPROXY.DLL)) |
|||
$(run_cmd) ./test_malloc_atexit.$(TEST_EXT) $(args) |
|||
$(run_cmd) $(TEST_LAUNCHER) test_malloc_lib_unload.$(TEST_EXT) $(args) |
|||
$(run_cmd) $(TEST_LAUNCHER) -l $(call cross_suffix,$(MALLOCPROXY.DLL)) test_malloc_overload.$(TEST_EXT) $(args) |
|||
$(run_cmd) $(TEST_LAUNCHER) test_malloc_overload_proxy.$(TEST_EXT) $(args) |
|||
endif |
|||
$(run_cmd) ./test_malloc_used_by_lib.$(TEST_EXT) |
|||
$(run_cmd) ./test_malloc_whitebox.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) $(TEST_LAUNCHER) -u test_malloc_compliance.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_ScalableAllocator.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_ScalableAllocator_STL.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_malloc_regression.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_malloc_init_shutdown.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_malloc_pure_c.$(TEST_EXT) $(args) |
|||
|
|||
#------------------------------------------------------
|
|||
# End of rules for making the TBBMalloc unit tests
|
|||
#------------------------------------------------------
|
|||
|
|||
# Include automatically generated dependences
|
|||
-include *.d |
@ -0,0 +1,117 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved.
|
|||
#
|
|||
# This file is part of Threading Building Blocks.
|
|||
#
|
|||
# Threading Building Blocks is free software; you can redistribute it
|
|||
# and/or modify it under the terms of the GNU General Public License
|
|||
# version 2 as published by the Free Software Foundation.
|
|||
#
|
|||
# Threading Building Blocks is distributed in the hope that it will be
|
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
|
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|||
# GNU General Public License for more details.
|
|||
#
|
|||
# You should have received a copy of the GNU General Public License
|
|||
# along with Threading Building Blocks; if not, write to the Free Software
|
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|||
#
|
|||
# As a special exception, you may use this file as part of a free software
|
|||
# library without restriction. Specifically, if other files instantiate
|
|||
# templates or use macros or inline functions from this file, or you compile
|
|||
# this file and link it with other files to produce an executable, this
|
|||
# file does not by itself cause the resulting executable to be covered by
|
|||
# the GNU General Public License. This exception does not however
|
|||
# invalidate any other reasons why the executable file might be covered by
|
|||
# the GNU General Public License.
|
|||
|
|||
# default target
|
|||
default_tbbproxy: tbbproxy tbbproxy_test |
|||
|
|||
tbb_root ?= $(TBBROOT) |
|||
BUILDING_PHASE=1 |
|||
include $(tbb_root)/build/common.inc |
|||
DEBUG_SUFFIX=$(findstring _debug,_$(cfg)) |
|||
|
|||
PROXY_ROOT ?= $(tbb_root)/src/tbbproxy |
|||
PROXY_SOURCE_ROOT ?= $(PROXY_ROOT) |
|||
|
|||
VPATH = $(tbb_root)/src/tbb/$(ASSEMBLY_SOURCE) $(tbb_root)/src/tbb $(tbb_root)/src/test |
|||
VPATH += $(PROXY_ROOT) $(PROXY_SOURCE_ROOT) |
|||
|
|||
CPLUS_FLAGS += $(DEFINE_KEY)__TBB_DLL_NAME=$(TBB.DLL) |
|||
CPLUS_FLAGS += $(DEFINE_KEY)__TBB_LST=$(TBB.LST) |
|||
CPLUS_FLAGS += $(foreach dir,$(VPATH),$(INCLUDE_KEY)$(dir)) |
|||
CPLUS_FLAGS += $(PIC_KEY) |
|||
|
|||
include $(tbb_root)/build/common_rules.inc |
|||
|
|||
#------------------------------------------------------
|
|||
# Define rules for making the TBB Proxy static library.
|
|||
#------------------------------------------------------
|
|||
|
|||
# Object files that make up TBB Proxy
|
|||
PROXY_CPLUS.OBJ = tbbproxy.$(OBJ) |
|||
PROXY_ASM.OBJ = tbbproxy-asm.$(OBJ) |
|||
PROXY.OBJ := $(PROXY_CPLUS.OBJ) $(PROXY_ASM.OBJ) |
|||
|
|||
# Not using intrinsics prevents undesired dependence from ICL libraries (e.g. libirc).
|
|||
# Not using default libs prevents link issues caused by different CRT versions in tbbproxy and in an app.
|
|||
$(PROXY.OBJ): CPLUS_FLAGS += $(DEFINE_KEY)ARCH_$(arch) $(DEFINE_KEY)OS_$(tbb_os) $(NOINTRINSIC_KEY) $(NODEFAULTLIB_KEY) |
|||
|
|||
$(PROXY_CPLUS.OBJ): CPLUS_FLAGS+=$(if $(filter windows.%cl,$(tbb_os).$(compiler)),/Fdtbbproxy$(DEBUG_SUFFIX).pdb) |
|||
$(PROXY_CPLUS.OBJ): %.$(OBJ): %.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(CPLUS_FLAGS) $(INCLUDES) $< |
|||
|
|||
$(PROXY.LIB): $(PROXY.OBJ) |
|||
$(AR) $(AR_FLAGS) $(AR_OUTPUT_KEY)$@ $^ |
|||
|
|||
.PRECIOUS : %.$(ASMEXT) |
|||
tbbproxy-asm.$(ASMEXT) : tbbproxy-$(tbb_os).$(ASMEXT) $(TBB.LST) $(TBB-OBJECTS.LST) |
|||
$(CPLUS) $(PREPROC_ONLY) $< $(INCLUDES) $(CPLUS_FLAGS) > $@ |
|||
|
|||
.PHONY: tbbproxy |
|||
ifeq (windows,$(tbb_os)) |
|||
tbbproxy: $(PROXY.LIB) |
|||
else |
|||
tbbproxy: |
|||
endif |
|||
|
|||
#------------------------------------------------------
|
|||
# End of rules for making the TBB Proxy static library
|
|||
#------------------------------------------------------
|
|||
|
|||
#------------------------------------------------------
|
|||
# Define rules for making the TBB Proxy unit tests
|
|||
#------------------------------------------------------
|
|||
|
|||
add_debug=$(basename $(1))_debug$(suffix $(1)) |
|||
cross_suffix=$(if $(crosstest),$(if $(DEBUG_SUFFIX),$(subst _debug,,$(1)),$(call add_debug,$(1))),$(1)) |
|||
|
|||
PROXY_LIB = $(call cross_suffix,$(PROXY.LIB)) |
|||
PROXY_TESTS_SRCS = test_runtime_loader.cpp |
|||
PROXY_TESTS_OBJS = $(PROXY_TESTS_SRCS:.cpp=.$(OBJ)) |
|||
PROXY_TESTS_EXES = $(PROXY_TESTS_OBJS:.$(OBJ)=.$(TEST_EXT)) |
|||
|
|||
# Run rules.
|
|||
.PHONY: tbbproxy_test |
|||
ifeq (windows,$(tbb_os)) |
|||
tbbproxy_test: $(call cross_suffix,$(PROXY.LIB)) $(TEST_PREREQUISITE) $(PROXY_TESTS_EXES) |
|||
$(run_cmd) ./test_runtime_loader.$(TEST_EXT) $(args) |
|||
else |
|||
tbbproxy_test: |
|||
endif |
|||
|
|||
# Link rules.
|
|||
$(PROXY_TESTS_EXES): %.$(TEST_EXT): %.$(OBJ) $(PROXY_LIB) |
|||
$(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $< $(PROXY_LIB) $(LIBS) $(LIBDL) $(LINK_FLAGS) |
|||
|
|||
# Compilation rules.
|
|||
$(PROXY_TESTS_OBJS): %.$(OBJ): %.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $(OUTPUT_KEY)$@ $< |
|||
|
|||
#------------------------------------------------------
|
|||
# End of rules for making the TBB Proxy unit tests
|
|||
#------------------------------------------------------
|
|||
|
|||
# Include automatically generated dependences
|
|||
-include *.d |
@ -0,0 +1,387 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved.
|
|||
#
|
|||
# This file is part of Threading Building Blocks.
|
|||
#
|
|||
# Threading Building Blocks is free software; you can redistribute it
|
|||
# and/or modify it under the terms of the GNU General Public License
|
|||
# version 2 as published by the Free Software Foundation.
|
|||
#
|
|||
# Threading Building Blocks is distributed in the hope that it will be
|
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
|
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|||
# GNU General Public License for more details.
|
|||
#
|
|||
# You should have received a copy of the GNU General Public License
|
|||
# along with Threading Building Blocks; if not, write to the Free Software
|
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|||
#
|
|||
# As a special exception, you may use this file as part of a free software
|
|||
# library without restriction. Specifically, if other files instantiate
|
|||
# templates or use macros or inline functions from this file, or you compile
|
|||
# this file and link it with other files to produce an executable, this
|
|||
# file does not by itself cause the resulting executable to be covered by
|
|||
# the GNU General Public License. This exception does not however
|
|||
# invalidate any other reasons why the executable file might be covered by
|
|||
# the GNU General Public License.
|
|||
|
|||
#------------------------------------------------------------------------------
|
|||
# Define rules for making the TBB tests.
|
|||
#------------------------------------------------------------------------------
|
|||
.PHONY: default test_tbb_plain test_tbb_openmp test_tbb_cilk test_tbb_old clean |
|||
|
|||
default: test_tbb_plain test_tbb_openmp test_tbb_cilk test_tbb_old |
|||
|
|||
tbb_root ?= $(TBBROOT) |
|||
BUILDING_PHASE=1 |
|||
TEST_RESOURCE = $(TBB.RES) |
|||
include $(tbb_root)/build/common.inc |
|||
DEBUG_SUFFIX=$(findstring _debug,$(call cross_cfg,_$(cfg))) |
|||
|
|||
#------------------------------------------------------------
|
|||
# Define static pattern rules dealing with .cpp source files
|
|||
#------------------------------------------------------------
|
|||
|
|||
VPATH = $(tbb_root)/src/tbb/$(ASSEMBLY_SOURCE) $(tbb_root)/src/tbb $(tbb_root)/src/rml/client $(tbb_root)/src/old $(tbb_root)/src/test $(tbb_root)/src/perf |
|||
|
|||
CPLUS_FLAGS += $(if $(crosstest),$(DEFINE_KEY)__TBB_NO_IMPLICIT_LINKAGE=1) |
|||
ifdef use_proxy |
|||
USE_PROXY_FLAG = $(DEFINE_KEY)HARNESS_USE_PROXY |
|||
CPLUS_FLAGS += $(USE_PROXY_FLAG) |
|||
LINK_TBB.LIB = $(PROXY.LIB) |
|||
LIBS += $(LIBDL) |
|||
endif |
|||
|
|||
include $(tbb_root)/build/common_rules.inc |
|||
|
|||
# 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) |
|||
|
|||
# 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) |
|||
.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) |
|||
|
|||
# tbb_misc.$(OBJ) has to be specified here (instead of harness_inject_scheduler.h) because it carries dependency on version_string.ver
|
|||
SCHEDULER_DEPENDENCIES = $(TBB_ASM.OBJ) tbb_misc.$(OBJ) |
|||
|
|||
# These executables don't depend on the TBB library, but include core .cpp files directly
|
|||
SCHEDULER_DIRECTLY_INCLUDED = test_task_leaks.$(TEST_EXT) \
|
|||
test_task_assertions.$(TEST_EXT) \
|
|||
test_fast_random.$(TEST_EXT) |
|||
|
|||
# Necessary to locate version_string.ver referenced from directly included tbb_misc.cpp
|
|||
INCLUDES += $(INCLUDE_KEY). |
|||
|
|||
$(SCHEDULER_DIRECTLY_INCLUDED): WARNING_KEY += $(WARNING_SUPPRESS) |
|||
|
|||
$(SCHEDULER_DIRECTLY_INCLUDED): %.$(TEST_EXT) : %.$(OBJ) $(SCHEDULER_DEPENDENCIES) |
|||
$(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $^ $(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) $< |
|||
$(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) |
|||
|
|||
# test_tbb_header detects "multiple definition" linker error using the test that covers the whole library
|
|||
TWICE_LINKED_TESTS = test_tbb_header.$(TEST_EXT) \
|
|||
test_concurrent_unordered.$(TEST_EXT) |
|||
|
|||
%_secondary.$(OBJ): CPLUS_FLAGS+=$(DEFINE_KEY)__TBB_TEST_SECONDARY=1 |
|||
%_secondary.$(OBJ): %.cpp |
|||
$(CPLUS) $(OUTPUTOBJ_KEY)$@ $(COMPILE_ONLY) $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $< |
|||
|
|||
$(TWICE_LINKED_TESTS): %.$(TEST_EXT): %.$(OBJ) %_secondary.$(OBJ) $(TBB.LIB) |
|||
$(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $*.$(OBJ) $*_secondary.$(OBJ) $(LINK_TBB.LIB) $(LIBS) $(AUX_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) |
|||
|
|||
#Test of generic gcc port and icc intrinsics port
|
|||
%_compiler_builtins.$(TEST_EXT): CPLUS_FLAGS+=$(DEFINE_KEY)__TBB_TEST_BUILTINS=1 |
|||
%_compiler_builtins.$(TEST_EXT): %.cpp |
|||
$(CPLUS) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(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) \
|
|||
test_tbb_fork.$(TEST_EXT) \
|
|||
test_assembly_compiler_builtins.$(TEST_EXT) \
|
|||
test_aligned_space.$(TEST_EXT) \
|
|||
test_atomic.$(TEST_EXT) \
|
|||
test_atomic_pic.$(TEST_EXT) \
|
|||
test_atomic_compiler_builtins.$(TEST_EXT) \
|
|||
test_blocked_range.$(TEST_EXT) \
|
|||
test_blocked_range2d.$(TEST_EXT) \
|
|||
test_blocked_range3d.$(TEST_EXT) \
|
|||
test_concurrent_queue.$(TEST_EXT) \
|
|||
test_concurrent_vector.$(TEST_EXT) \
|
|||
test_concurrent_unordered.$(TEST_EXT) \
|
|||
test_concurrent_hash_map.$(TEST_EXT) \
|
|||
test_enumerable_thread_specific.$(TEST_EXT) \
|
|||
test_handle_perror.$(TEST_EXT) \
|
|||
test_halt.$(TEST_EXT) \
|
|||
test_model_plugin.$(TEST_EXT) \
|
|||
test_mutex.$(TEST_EXT) \
|
|||
test_mutex_native_threads.$(TEST_EXT) \
|
|||
test_rwm_upgrade_downgrade.$(TEST_EXT) \
|
|||
test_cache_aligned_allocator.$(TEST_EXT) \
|
|||
test_parallel_for.$(TEST_EXT) \
|
|||
test_parallel_reduce.$(TEST_EXT) \
|
|||
test_parallel_sort.$(TEST_EXT) \
|
|||
test_parallel_scan.$(TEST_EXT) \
|
|||
test_parallel_while.$(TEST_EXT) \
|
|||
test_parallel_do.$(TEST_EXT) \
|
|||
test_pipeline.$(TEST_EXT) \
|
|||
test_pipeline_with_tbf.$(TEST_EXT) \
|
|||
test_parallel_pipeline.$(TEST_EXT) \
|
|||
test_task_scheduler_init.$(TEST_EXT) \
|
|||
test_task_scheduler_observer.$(TEST_EXT) \
|
|||
test_task.$(TEST_EXT) \
|
|||
test_tbb_thread.$(TEST_EXT) \
|
|||
test_std_thread.$(TEST_EXT) \
|
|||
test_tick_count.$(TEST_EXT) \
|
|||
test_inits_loop.$(TEST_EXT) \
|
|||
test_yield.$(TEST_EXT) \
|
|||
test_eh_tasks.$(TEST_EXT) \
|
|||
test_eh_algorithms.$(TEST_EXT) \
|
|||
test_eh_flow_graph.$(TEST_EXT) \
|
|||
test_parallel_invoke.$(TEST_EXT) \
|
|||
test_task_group.$(TEST_EXT) \
|
|||
test_ittnotify.$(TEST_EXT) \
|
|||
test_parallel_for_each.$(TEST_EXT) \
|
|||
test_tbb_header.$(TEST_EXT) \
|
|||
test_combinable.$(TEST_EXT) \
|
|||
test_task_auto_init.$(TEST_EXT) \
|
|||
test_task_arena.$(TEST_EXT) \
|
|||
test_concurrent_monitor.$(TEST_EXT) \
|
|||
test_semaphore.$(TEST_EXT) \
|
|||
test_critical_section.$(TEST_EXT) \
|
|||
test_reader_writer_lock.$(TEST_EXT) \
|
|||
test_tbb_condition_variable.$(TEST_EXT) \
|
|||
test_intrusive_list.$(TEST_EXT) \
|
|||
test_concurrent_priority_queue.$(TEST_EXT) \
|
|||
test_task_priority.$(TEST_EXT) \
|
|||
test_task_enqueue.$(TEST_EXT) \
|
|||
test_task_steal_limit.$(TEST_EXT) \
|
|||
test_hw_concurrency.$(TEST_EXT) \
|
|||
test_fp.$(TEST_EXT) \
|
|||
test_flow_graph.$(TEST_EXT) \
|
|||
test_broadcast_node.$(TEST_EXT) \
|
|||
test_continue_node.$(TEST_EXT) \
|
|||
test_function_node.$(TEST_EXT) \
|
|||
test_limiter_node.$(TEST_EXT) \
|
|||
test_join_node.$(TEST_EXT) \
|
|||
test_buffer_node.$(TEST_EXT) \
|
|||
test_queue_node.$(TEST_EXT) \
|
|||
test_priority_queue_node.$(TEST_EXT) \
|
|||
test_sequencer_node.$(TEST_EXT) \
|
|||
test_source_node.$(TEST_EXT) \
|
|||
test_overwrite_node.$(TEST_EXT) \
|
|||
test_write_once_node.$(TEST_EXT) \
|
|||
test_or_node.$(TEST_EXT) \
|
|||
test_multifunction_node.$(TEST_EXT) \
|
|||
test_split_node.$(TEST_EXT) \
|
|||
test_static_assert.$(TEST_EXT) \
|
|||
test_tbb_version.$(TEST_EXT) # insert new files right above |
|||
|
|||
TEST_TBB_PLAIN.EXE += $(TEST_TBB_CPP11) |
|||
|
|||
ifdef OPENMP_FLAG |
|||
test_openmp.$(TEST_EXT): test_openmp.cpp |
|||
$(CPLUS) $(OPENMP_FLAG) $(OUTPUT_KEY)$@ $(CPLUS_FLAGS) $(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 |
|||
test_tbb_openmp: |
|||
@echo "OpenMP is not available" |
|||
endif |
|||
|
|||
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) |
|||
# 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)) |
|||
test_cilk_interop.$(TEST_EXT): LIBS += -lcilkrts |
|||
endif |
|||
test_tbb_cilk: test_cilk_interop.$(TEST_EXT) test_cilk_dynamic_load.$(TEST_EXT) |
|||
$(run_cmd) ./test_cilk_interop.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_cilk_dynamic_load.$(TEST_EXT) $(args) |
|||
else |
|||
test_tbb_cilk: |
|||
@echo "Intel(R) Cilk Plus is not available" |
|||
endif |
|||
|
|||
$(TEST_TBB_PLAIN.EXE): WARNING_KEY += $(TEST_WARNING_KEY) |
|||
|
|||
# Run tests that are in SCHEDULER_DIRECTLY_INCLUDED and TEST_TBB_PLAIN.EXE
|
|||
# Note that usually run_cmd is empty, and tests run directly
|
|||
test_tbb_plain: $(TEST_PREREQUISITE) $(SCHEDULER_DIRECTLY_INCLUDED) $(TEST_TBB_PLAIN.EXE) |
|||
$(run_cmd) ./test_tbb_version.$(TEST_EXT) $(args) |
|||
# Checking TBB version first to make sure the following testing has anything in it |
|||
$(run_cmd) ./test_assembly.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_atomic.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_atomic_pic.$(TEST_EXT) $(args) |
|||
# Yes, 4:8 is intended on the next line. |
|||
$(run_cmd) ./test_yield.$(TEST_EXT) $(args) 4:8 |
|||
$(run_cmd) ./test_handle_perror.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_task_auto_init.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_task_arena.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_task_scheduler_init.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_task_scheduler_observer.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_task.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_task_assertions.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_task_leaks.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_fast_random.$(TEST_EXT) $(args) 1:16 |
|||
$(run_cmd) ./test_eh_tasks.$(TEST_EXT) $(args) 2:4 |
|||
$(run_cmd) ./test_cache_aligned_allocator.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_cache_aligned_allocator_STL.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_blocked_range.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_blocked_range2d.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_blocked_range3d.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_parallel_for.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_parallel_sort.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_aligned_space.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_parallel_reduce.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_parallel_scan.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_parallel_while.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_parallel_do.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_inits_loop.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_lambda.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_mutex.$(TEST_EXT) $(args) 1:3 |
|||
$(run_cmd) ./test_mutex_native_threads.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_rwm_upgrade_downgrade.$(TEST_EXT) $(args) 4 |
|||
# Yes, 4:8 is intended on the next line. |
|||
$(run_cmd) ./test_halt.$(TEST_EXT) $(args) 4:8 |
|||
$(run_cmd) ./test_pipeline.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_pipeline_with_tbf.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_parallel_pipeline.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_tick_count.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_concurrent_queue.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_concurrent_vector.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_concurrent_unordered.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_concurrent_hash_map.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_enumerable_thread_specific.$(TEST_EXT) $(args) 0:4 |
|||
$(run_cmd) ./test_combinable.$(TEST_EXT) $(args) 0:4 |
|||
$(run_cmd) ./test_model_plugin.$(TEST_EXT) $(args) 4 |
|||
$(run_cmd) ./test_eh_algorithms.$(TEST_EXT) $(args) 2:4 |
|||
$(run_cmd) ./test_eh_flow_graph.$(TEST_EXT) $(args) 2:4 |
|||
$(run_cmd) ./test_tbb_thread.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_std_thread.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_parallel_invoke.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_task_group.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_ittnotify.$(TEST_EXT) $(args) 2:2 |
|||
$(run_cmd) ./test_parallel_for_each.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_tbb_header.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_concurrent_monitor.$(TEST_EXT) $(args) 6:8 |
|||
$(run_cmd) ./test_critical_section.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_semaphore.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_reader_writer_lock.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_tbb_condition_variable.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_tbb_fork.$(TEST_EXT) |
|||
$(run_cmd) ./test_intrusive_list.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_concurrent_priority_queue.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_task_priority.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_task_enqueue.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_task_steal_limit.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_hw_concurrency.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_fp.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_flow_graph.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_broadcast_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_continue_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_function_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_limiter_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_join_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_buffer_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_queue_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_priority_queue_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_sequencer_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_source_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_overwrite_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_write_once_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_or_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_multifunction_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_split_node.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_atomic_compiler_builtins.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_assembly_compiler_builtins.$(TEST_EXT) $(args) |
|||
$(run_cmd) ./test_static_assert.$(TEST_EXT) $(args) |
|||
|
|||
CPLUS_FLAGS_DEPRECATED = $(DEFINE_KEY)TBB_DEPRECATED=1 $(subst $(WARNING_KEY),,$(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_DEPRECATED.OBJ = test_concurrent_queue_deprecated.$(OBJ) \
|
|||
test_concurrent_vector_deprecated.$(OBJ) \
|
|||
|
|||
|
|||
# For deprecated files, we don't mind warnings etc., thus compilation rules are most relaxed
|
|||
$(TEST_TBB_OLD.OBJ): %.$(OBJ): %.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(CPLUS_FLAGS_DEPRECATED) $(CXX_ONLY_FLAGS) $(INCLUDES) $< |
|||
|
|||
%_deprecated.$(OBJ): %.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(OUTPUTOBJ_KEY)$@ $(CPLUS_FLAGS_DEPRECATED) $(CXX_ONLY_FLAGS) $(INCLUDES) $< |
|||
.PRECIOUS: %_deprecated.$(OBJ) |
|||
|
|||
TEST_TBB_OLD.EXE = $(subst .$(OBJ),.$(TEST_EXT),$(TEST_TBB_OLD.OBJ) $(TEST_TBB_DEPRECATED.OBJ)) |
|||
|
|||
ifeq (,$(NO_LEGACY_TESTS)) |
|||
test_tbb_old: $(TEST_PREREQUISITE) $(TEST_TBB_OLD.EXE) |
|||
$(run_cmd) ./test_concurrent_vector_v2.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_concurrent_vector_deprecated.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_concurrent_queue_v2.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_concurrent_queue_deprecated.$(TEST_EXT) $(args) 1:4 |
|||
$(run_cmd) ./test_mutex_v2.$(TEST_EXT) $(args) 1 |
|||
$(run_cmd) ./test_mutex_v2.$(TEST_EXT) $(args) 2 |
|||
$(run_cmd) ./test_mutex_v2.$(TEST_EXT) $(args) 4 |
|||
$(run_cmd) ./test_task_scheduler_observer_v3.$(TEST_EXT) $(args) 1:4 |
|||
else |
|||
test_tbb_old: |
|||
@echo Legacy tests skipped |
|||
endif |
|||
|
|||
ifneq (,$(codecov)) |
|||
codecov_gen: |
|||
profmerge |
|||
codecov $(if $(findstring -,$(codecov)),$(codecov),) -demang -comp $(tbb_root)/build/codecov.txt |
|||
endif |
|||
|
|||
test_% debug_%: test_%.$(TEST_EXT) $(TEST_PREREQUISITE) |
|||
ifeq (,$(repeat)) |
|||
$(run_cmd) ./$< $(args) |
|||
else |
|||
ifeq (windows,$(tbb_os)) |
|||
for /L %%i in (1,1,$(repeat)) do echo %%i of $(repeat): && $(run_cmd) $< $(args) |
|||
else |
|||
for ((i=1;i<=$(repeat);++i)); do echo $$i of $(repeat): && $(run_cmd) ./$< $(args); done |
|||
endif |
|||
endif # repeat
|
|||
ifneq (,$(codecov)) |
|||
profmerge |
|||
codecov $(if $(findstring -,$(codecov)),$(codecov),) -demang -comp $(tbb_root)/build/codecov.txt |
|||
endif |
|||
|
|||
time_%: time_%.$(TEST_EXT) $(TEST_PREREQUISITE) |
|||
$(run_cmd) ./$< $(args) |
|||
|
|||
|
|||
perf_%: AUX_LIBS = perf_dll.$(LIBEXT) |
|||
perf_%: perf_dll.$(DLL) perf_%.$(TEST_EXT) |
|||
$(run_cmd) ./$@.$(TEST_EXT) $(args) |
|||
|
|||
clean_%: |
|||
$(RM) $*.$(OBJ) $*.exe $*.$(DLL) $*.$(LIBEXT) $*.res $*.map $*.ilk $*.pdb $*.exp $*.*manifest $*.tmp $*.d *.ver |
|||
|
|||
clean: |
|||
$(RM) *.$(OBJ) *.exe *.$(DLL) *.$(LIBEXT) *.res *.map *.ilk *.pdb *.exp *.manifest *.tmp *.d pgopti.* *.dyn core core.*[0-9][0-9] *.ver |
|||
|
|||
# Include automatically generated dependences
|
|||
-include *.d |
@ -0,0 +1,102 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
COMPILE_ONLY = -c -MMD |
|||
PREPROC_ONLY = -E -x c++ |
|||
INCLUDE_KEY = -I |
|||
DEFINE_KEY = -D |
|||
OUTPUT_KEY = -o # |
|||
OUTPUTOBJ_KEY = -o # |
|||
PIC_KEY = -fPIC |
|||
WARNING_AS_ERROR_KEY = -Werror |
|||
WARNING_KEY = -Wall |
|||
TEST_WARNING_KEY = -Wshadow -Wcast-qual -Woverloaded-virtual -Wnon-virtual-dtor $(if $(findstring cc4., $(runtime)),-Wextra) |
|||
WARNING_SUPPRESS = -Wno-parentheses -Wno-non-virtual-dtor |
|||
DYLIB_KEY = -shared |
|||
LIBDL = -ldl |
|||
|
|||
TBB_NOSTRICT = 1 |
|||
|
|||
CPLUS = g++ |
|||
CONLY = gcc |
|||
LIB_LINK_FLAGS = -shared |
|||
LIBS = -lpthread -lrt -ldl |
|||
C_FLAGS = $(CPLUS_FLAGS) -x c |
|||
|
|||
ifeq ($(cfg), release) |
|||
CPLUS_FLAGS = -O2 -DUSE_PTHREAD |
|||
endif |
|||
ifeq ($(cfg), debug) |
|||
CPLUS_FLAGS = -DTBB_USE_DEBUG -g -O0 -DUSE_PTHREAD |
|||
endif |
|||
|
|||
ASM= |
|||
ASM_FLAGS= |
|||
|
|||
TBB_ASM.OBJ= |
|||
|
|||
ifeq (ia64,$(arch)) |
|||
# Position-independent code (PIC) is a must for IA-64 |
|||
CPLUS_FLAGS += $(PIC_KEY) |
|||
endif |
|||
|
|||
ifeq (intel64,$(arch)) |
|||
CPLUS_FLAGS += -m64 |
|||
LIB_LINK_FLAGS += -m64 |
|||
endif |
|||
|
|||
ifeq (ia32,$(arch)) |
|||
CPLUS_FLAGS += -m32 |
|||
LIB_LINK_FLAGS += -m32 |
|||
endif |
|||
|
|||
# for some gcc versions on Solaris, -m64 may imply V9, but perhaps not everywhere (TODO: verify) |
|||
ifeq (sparc,$(arch)) |
|||
CPLUS_FLAGS += -mcpu=v9 -m64 |
|||
LIB_LINK_FLAGS += -mcpu=v9 -m64 |
|||
endif |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
ASSEMBLY_SOURCE=$(arch)-gas |
|||
ifeq (ia64,$(arch)) |
|||
ASM=ias |
|||
TBB_ASM.OBJ = atomic_support.o lock_byte.o log2.o pause.o |
|||
endif |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) -fno-rtti -fno-exceptions -fno-schedule-insns2 |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
@ -0,0 +1,93 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
ifndef arch |
|||
arch:=$(shell uname -p) |
|||
ifeq ($(arch),i386) |
|||
ifeq ($(shell isainfo -b),64) |
|||
arch:=intel64 |
|||
else |
|||
arch:=ia32 |
|||
endif |
|||
endif |
|||
export arch |
|||
# For non-IA systems running Sun OS, 'arch' will contain whatever is printed by uname -p. |
|||
# In particular, for SPARC architecture it will contain "sparc". |
|||
endif |
|||
|
|||
ifndef runtime |
|||
gcc_version:=$(shell gcc -v 2>&1 | grep 'gcc version' | sed -e 's/^gcc version //' | sed -e 's/ .*$$//') |
|||
os_version:=$(shell uname -r) |
|||
os_kernel_version:=$(shell uname -r | sed -e 's/-.*$$//') |
|||
export runtime:=cc$(gcc_version)_kernel$(os_kernel_version) |
|||
endif |
|||
|
|||
ifeq ($(arch),sparc) |
|||
native_compiler := gcc |
|||
export compiler ?= gcc |
|||
else |
|||
native_compiler := suncc |
|||
export compiler ?= suncc |
|||
endif |
|||
# debugger ?= gdb |
|||
|
|||
CMD=$(SHELL) -c |
|||
CWD=$(shell pwd) |
|||
RM?=rm -f |
|||
RD?=rmdir |
|||
MD?=mkdir -p |
|||
NUL= /dev/null |
|||
SLASH=/ |
|||
MAKE_VERSIONS=bash $(tbb_root)/build/version_info_sunos.sh $(CPLUS) $(CPLUS_FLAGS) $(INCLUDES) >version_string.ver |
|||
MAKE_TBBVARS=bash $(tbb_root)/build/generate_tbbvars.sh |
|||
|
|||
ifdef LD_LIBRARY_PATH |
|||
export LD_LIBRARY_PATH := .:$(LD_LIBRARY_PATH) |
|||
else |
|||
export LD_LIBRARY_PATH := . |
|||
endif |
|||
|
|||
####### Build settings ######################################################## |
|||
|
|||
OBJ = o |
|||
DLL = so |
|||
LIBEXT=so |
|||
|
|||
TBB.LST = |
|||
TBB.DEF = |
|||
TBB.DLL = libtbb$(CPF_SUFFIX)$(DEBUG_SUFFIX).$(DLL) |
|||
TBB.LIB = $(TBB.DLL) |
|||
LINK_TBB.LIB = $(TBB.LIB) |
|||
|
|||
MALLOC.DLL = libtbbmalloc$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOC.LIB = $(MALLOC.DLL) |
|||
LINK_MALLOC.LIB = $(MALLOC.LIB) |
|||
|
|||
MALLOCPROXY.DLL = libtbbmalloc_proxy$(DEBUG_SUFFIX).$(DLL) |
|||
|
|||
TBB_NOSTRICT=1 |
|||
|
|||
TEST_LAUNCHER=sh $(tbb_root)/build/test_launcher.sh $(largs) |
@ -0,0 +1,100 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
COMPILE_ONLY = -c -xMMD -errtags |
|||
PREPROC_ONLY = -E -xMMD |
|||
INCLUDE_KEY = -I |
|||
DEFINE_KEY = -D |
|||
OUTPUT_KEY = -o # |
|||
OUTPUTOBJ_KEY = -o # |
|||
PIC_KEY = -KPIC |
|||
DYLIB_KEY = -G |
|||
LIBDL = -ldl |
|||
# WARNING_AS_ERROR_KEY = -errwarn=%all |
|||
WARNING_AS_ERROR_KEY = Warning as error |
|||
# Supported Solaris Studio* 12.2 and above, remove ',inlasmpnu' in the line below to build by compiler prior Solaris Studio* 12.2 |
|||
WARNING_SUPPRESS = -erroff=unassigned,attrskipunsup,badargtype2w,badbinaryopw,wbadasg,wvarhidemem,inlasmpnu |
|||
tbb_strict=0 |
|||
|
|||
TBB_NOSTRICT = 1 |
|||
|
|||
CPLUS = CC |
|||
CONLY = cc |
|||
LIB_LINK_FLAGS = -G -R . -M$(tbb_root)/build/suncc.map.pause |
|||
LINK_FLAGS += -M$(tbb_root)/build/suncc.map.pause |
|||
LIBS = -lpthread -lrt -R . |
|||
C_FLAGS = $(CPLUS_FLAGS) |
|||
|
|||
#TODO: the $(stdlib) instead of hard-wiring STLPort |
|||
ifeq ($(cfg), release) |
|||
CPLUS_FLAGS = -mt -xO2 -library=stlport4 -DUSE_PTHREAD $(WARNING_SUPPRESS) |
|||
endif |
|||
ifeq ($(cfg), debug) |
|||
CPLUS_FLAGS = -mt -DTBB_USE_DEBUG -g -library=stlport4 -DUSE_PTHREAD $(WARNING_SUPPRESS) |
|||
endif |
|||
|
|||
ASM= |
|||
ASM_FLAGS= |
|||
|
|||
TBB_ASM.OBJ= |
|||
|
|||
ifeq (intel64,$(arch)) |
|||
CPLUS_FLAGS += -m64 |
|||
ASM_FLAGS += -m64 |
|||
LIB_LINK_FLAGS += -m64 |
|||
endif |
|||
|
|||
ifeq (ia32,$(arch)) |
|||
CPLUS_FLAGS += -m32 |
|||
LIB_LINK_FLAGS += -m32 |
|||
endif |
|||
|
|||
# TODO: verify whether -m64 implies V9 on relevant Sun Studio versions |
|||
# (those that handle gcc assembler syntax) |
|||
ifeq (sparc,$(arch)) |
|||
CPLUS_FLAGS += -m64 |
|||
LIB_LINK_FLAGS += -m64 |
|||
endif |
|||
|
|||
export TBB_CUSTOM_VARS_SH=export CXXFLAGS="-I$${TBBROOT}/include -library=stlport4 $(CXXFLAGS) -M$${TBBROOT}/build/suncc.map.pause" |
|||
export TBB_CUSTOM_VARS_CSH=setenv CXXFLAGS "-I$${TBBROOT}/include -library=stlport4 $(CXXFLAGS) -M$${TBBROOT}/build/suncc.map.pause" |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
ASSEMBLY_SOURCE=$(arch)-fbe |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
M_INCLUDES = $(INCLUDES) -I$(MALLOC_ROOT) -I$(MALLOC_SOURCE_ROOT) |
|||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
@ -0,0 +1,144 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
|
|||
COMPILE_ONLY = -c -MMD |
|||
PREPROC_ONLY = -E -x c++ |
|||
INCLUDE_KEY = -I |
|||
DEFINE_KEY = -D |
|||
OUTPUT_KEY = -o # |
|||
OUTPUTOBJ_KEY = -o # |
|||
PIC_KEY = -fPIC |
|||
WARNING_AS_ERROR_KEY = -Werror |
|||
WARNING_KEY = -Wall |
|||
TEST_WARNING_KEY = -Wshadow -Wcast-qual -Woverloaded-virtual -Wnon-virtual-dtor -Wextra |
|||
|
|||
WARNING_SUPPRESS = -Wno-parentheses -Wno-non-virtual-dtor |
|||
DYLIB_KEY = -shared |
|||
EXPORT_KEY = -Wl,--version-script, |
|||
LIBDL = -ldl |
|||
|
|||
TBB_NOSTRICT = 1 |
|||
|
|||
CPLUS = $(tbb_tool_prefix)g++ |
|||
CONLY = $(tbb_tool_prefix)gcc |
|||
|
|||
# -soname is necessary for proper linkage to TBB prebuilt libraries when building application with Android SDK |
|||
LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY) |
|||
|
|||
LINK_FLAGS = -Wl,-rpath-link=. |
|||
C_FLAGS = $(CPLUS_FLAGS) |
|||
|
|||
# gcc 4.4 and higher support C++11 |
|||
ifneq (,$(shell $(CPLUS) -dumpversion | egrep "^(4\.[4-9]|[5-9])")) |
|||
# On Android/gcc 4.4.3, -std=c++0x causes ::int64_t and ::uint64_t to be undefined. |
|||
CPP11_FLAGS = -std=gnu++0x $(DEFINE_KEY)_TBB_CPP0X |
|||
endif |
|||
|
|||
ifeq ($(cfg), release) |
|||
CPLUS_FLAGS = -O2 |
|||
endif |
|||
ifeq ($(cfg), debug) |
|||
CPLUS_FLAGS = -g -O0 $(DEFINE_KEY)TBB_USE_DEBUG |
|||
endif |
|||
|
|||
CPLUS_FLAGS += $(DEFINE_KEY)USE_PTHREAD $(DEFINE_KEY)_GLIBCXX_HAVE_FENV_H |
|||
|
|||
ifneq (,$(findstring $(arch),ia32 intel64)) |
|||
CPLUS_FLAGS += $(DEFINE_KEY)DO_ITT_NOTIFY |
|||
endif |
|||
|
|||
ifneq (0, $(dlopen_workaround)) |
|||
CPLUS_FLAGS += $(DEFINE_KEY)__TBB_USE_DLOPEN_REENTRANCY_WORKAROUND=1 |
|||
CPLUS_FLAGS += $(DEFINE_KEY)__TBB_USE_DLOPEN_MAIN_PROGRAM_WORKAROUND=1 |
|||
else |
|||
CPLUS_FLAGS += $(DEFINE_KEY)__TBB_USE_DLOPEN_REENTRANCY_WORKAROUND=0 |
|||
CPLUS_FLAGS += $(DEFINE_KEY)__TBB_USE_DLOPEN_MAIN_PROGRAM_WORKAROUND=0 |
|||
endif |
|||
|
|||
ifeq (0, $(dynamic_load)) |
|||
CPLUS_FLAGS += $(DEFINE_KEY)__TBB_DYNAMIC_LOAD_ENABLED=0 |
|||
endif |
|||
|
|||
|
|||
# Paths to the NDK prebuilt tools and libraries |
|||
CPLUS_FLAGS += --sysroot=$(SYSROOT) |
|||
LIB_LINK_FLAGS += --sysroot=$(SYSROOT) |
|||
LIBS = -L$(CPLUS_LIB_PATH) -lgnustl_shared |
|||
|
|||
# This causes CPP11_FLAGS to be issued twice for test_lambda.cpp |
|||
# TODO: Fix this in general for all platforms once the correct strategy is determined. |
|||
ifneq (00,$(lambdas)$(cpp0x)) |
|||
CXX_ONLY_FLAGS += $(CPP11_FLAGS) |
|||
endif |
|||
|
|||
ifeq (ia32,$(arch)) |
|||
# TODO: Determine best setting of -march and add to CPLUS_FLAGS |
|||
CPLUS_FLAGS += -m32 |
|||
LIB_LINK_FLAGS += -m32 |
|||
endif |
|||
|
|||
# Currently, no intel64 support for Android, but if added later, these flags may suffice |
|||
ifeq (intel64,$(arch)) |
|||
CPLUS_FLAGS += -m64 |
|||
LIB_LINK_FLAGS += -m64 |
|||
endif |
|||
|
|||
ifeq (arm,$(findstring arm,$(arch))) |
|||
CPLUS_FLAGS += -march=armv7-a $(DEFINE_KEY)TBB_USE_GCC_BUILTINS=1 $(DEFINE_KEY)__TBB_64BIT_ATOMICS=0 |
|||
endif |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
TBB_ASM.OBJ= |
|||
MALLOC_ASM.OBJ= |
|||
|
|||
ASM = $(tbb_tool_prefix)as |
|||
ifeq (intel64,$(arch)) |
|||
ASM_FLAGS += --64 |
|||
endif |
|||
ifeq (ia32,$(arch)) |
|||
ASM_FLAGS += --32 |
|||
endif |
|||
ifeq ($(cfg),debug) |
|||
ASM_FLAGS += -g |
|||
endif |
|||
|
|||
ASSEMBLY_SOURCE=$(arch)-gas |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) -fno-rtti -fno-exceptions -fno-schedule-insns2 |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
@ -0,0 +1,77 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
# |
|||
# Extra gmake command-line parameters for use with Android: |
|||
# |
|||
# dlopen_workaround: Some OS versions need workaround for dlopen to avoid recursive calls. |
|||
# |
|||
|
|||
####### Detections and Commands ############################################### |
|||
|
|||
ifeq (android,$(findstring android,$(tbb_os))) |
|||
$(error TBB only supports cross-compilation for Android. Specify "target=android" instead.) |
|||
endif |
|||
|
|||
ifneq ("command line","$(origin arch)") |
|||
ifeq (icc,$(compiler)) |
|||
export COMPILER_VERSION := ICC: $(shell icc -V </dev/null 2>&1 | grep 'Version') |
|||
ifneq (,$(findstring IA-32, $(COMPILER_VERSION))) |
|||
export arch:=ia32 |
|||
else |
|||
$(error "No support for Android in $(COMPILER_VERSION)") |
|||
endif |
|||
|
|||
else |
|||
ifdef ANDROID_SERIAL |
|||
uname_m:=$(shell adb shell uname -m) |
|||
ifeq (i686,$(uname_m)) |
|||
export arch:=ia32 |
|||
else |
|||
export arch:=$(uname_m) |
|||
endif |
|||
else |
|||
ifndef arch |
|||
$(error "No target architecture specified and \'ANDROID_SERIAL\' environment variable specifying target device not set") |
|||
endif |
|||
endif |
|||
endif |
|||
endif |
|||
|
|||
ifneq (ia32,$(arch)) |
|||
ifneq (arm,$(findstring arm,$(arch))) |
|||
$(error "Unsupported architecture for Android target build: arch=$(arch).\nPlease ensure target device is connected via \'adb\' and \'ANDROID_SERIAL\' is set to target device.") |
|||
endif |
|||
endif |
|||
|
|||
|
|||
# Many OS versions (Android 4.0.[0-3] for example) need workaround for dlopen to avoid non-recursive loader lock hang |
|||
export dlopen_workaround = 1 |
|||
|
|||
# Android platform only supported from TBB 4.1 forward |
|||
NO_LEGACY_TESTS = 1 |
|||
|
|||
|
@ -0,0 +1,78 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
####### Detections and Commands ############################################### |
|||
|
|||
# Must set def_prefix according to target architecture detected above |
|||
ifeq (ia32,$(arch)) |
|||
def_prefix = lin32 |
|||
endif |
|||
ifeq (arm,$(findstring arm,$(arch))) |
|||
def_prefix = lin32 |
|||
endif |
|||
ifeq (64,$(findstring 64,$(arch))) |
|||
def_prefix = lin64 |
|||
endif |
|||
|
|||
gcc_version = $(shell $(tbb_tool_prefix)g++ -dumpversion) |
|||
|
|||
ifdef ANDROID_NDK_ROOT |
|||
$(warning "NDK version $(ANDROID_NDK_ROOT)") |
|||
ndk_version:= $(lastword $(subst -, ,$(ANDROID_NDK_ROOT))) |
|||
else |
|||
$(warning "NDK version not set in environment, using \'unknown\' instead.") |
|||
ndk_version:=unknown |
|||
endif |
|||
|
|||
export runtime:=$(target)_cc$(gcc_version)_NDK$(ndk_version)_version_$(target_os_version) |
|||
|
|||
AR = $(tbb_tool_prefix)ar |
|||
MAKE_VERSIONS=sh $(tbb_root)/build/version_info_android.sh $(CPLUS) $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(INCLUDES) >version_string.ver |
|||
|
|||
####### Build settings ######################################################## |
|||
|
|||
# No SONAME_SUFFIX for Android allowed in library names |
|||
TBB.LST = $(tbb_root)/src/tbb/$(def_prefix)-tbb-export.lst |
|||
TBB.DEF = $(TBB.LST:.lst=.def) |
|||
TBB.DLL = libtbb$(CPF_SUFFIX)$(DEBUG_SUFFIX).$(DLL) |
|||
TBB.LIB = $(TBB.DLL) |
|||
TBB_NO_VERSION.DLL= |
|||
LINK_TBB.LIB = $(TBB.LIB) |
|||
|
|||
MALLOC.DEF = $(MALLOC_ROOT)/$(def_prefix)-tbbmalloc-export.def |
|||
MALLOC.DLL = libtbbmalloc$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOC.LIB = $(MALLOC.DLL) |
|||
MALLOC_NO_VERSION.DLL= |
|||
LINK_MALLOC.LIB = $(MALLOC.LIB) |
|||
|
|||
MALLOCPROXY.DEF = $(MALLOC_ROOT)/$(def_prefix)-proxy-export.def |
|||
MALLOCPROXY.DLL = libtbbmalloc_proxy$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOCPROXY_NO_VERSION.DLL= |
|||
MALLOCPROXY.LIB = $(MALLOCPROXY.DLL) |
|||
LINK_MALLOCPROXY.LIB = $(MALLOCPROXY.LIB) |
|||
|
|||
TEST_LAUNCHER= |
|||
run_cmd ?= -sh $(tbb_root)/build/android.linux.launcher.sh $(largs) |
@ -0,0 +1,164 @@ |
|||
#!/bin/sh |
|||
# |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
# Usage: |
|||
# android.linux.launcher.sh [-v] [-u] [-l <library>] <executable> <arg1> <arg2> <argN> |
|||
# where: -l <library> specfies the library name to be assigned to LD_PRELOAD |
|||
# where: -v enables verbose output when running the test (where supported) |
|||
# where: -u is ignored on Android |
|||
# |
|||
# Libs and executable necessary for testing should be present in the current directory before running. |
|||
# ANDROID_SERIAL must be set to the connected Android target device name for file transfer and test runs. |
|||
# ANDROID_TEST_DIRECTORY may be set to the directory used for testing on the Android target device; otherwise, |
|||
# the default directory used is "/data/local/tmp/$(basename $PWD)". |
|||
# Note: Do not remove the redirections to '/dev/null' in the script, otherwise the nightly test system will fail. |
|||
|
|||
do_cleanup() |
|||
{ |
|||
adb pull $targetdir/events.txt events.txt > /dev/null 2>&1 |
|||
# Remove target directory on the device |
|||
adb shell "rm -r ${targetdir}; mkdir -p ${targetdir}" > /dev/null 2>&1 |
|||
} |
|||
|
|||
do_trap_cleanup() |
|||
{ |
|||
do_cleanup |
|||
exit -1 |
|||
} |
|||
|
|||
# Process the optional arguments if present |
|||
if [ "x$1" = "x-v" ]; then { |
|||
verb="$1" |
|||
shift 1 |
|||
}; fi |
|||
|
|||
if [ "x$1" = "x-u" ]; then { |
|||
shift 1 |
|||
}; fi |
|||
|
|||
if [ "x$1" = "x-l" ]; then { |
|||
ldpreload="$2" |
|||
shift 2 |
|||
}; fi |
|||
|
|||
# Collect the executable name |
|||
exename=$(basename $1) |
|||
shift |
|||
|
|||
# Prepare the target directory on the device |
|||
currentdir=$(basename $PWD) |
|||
targetdir=${ANDROID_TEST_DIRECTORY:-/data/local/tmp/$currentdir} |
|||
do_cleanup |
|||
trap do_trap_cleanup INT # if someone hits control-c, cleanup the device |
|||
|
|||
# Collect the list of files to transfer to the target device, starting with executable itself. |
|||
fnamelist="$exename" |
|||
|
|||
# Add the C++ standard library from the NDK, which is required for all tests on Android. |
|||
if [ ! -z "${LIB_GNU_STL_ANDROID}" ]; then |
|||
fnamelist="$fnamelist ${LIB_GNU_STL_ANDROID}/libgnustl_shared.so" |
|||
else |
|||
fnamelist="$fnamelist libgnustl_shared.so" |
|||
fi |
|||
|
|||
# Find the TBB libraries and add them to the list. |
|||
# Add TBB libraries from the current directory that contains libtbb* files |
|||
|
|||
files="$(/bin/ls libtbb* 2> /dev/null)" |
|||
if [ ! -z "$files" ]; then fnamelist="$fnamelist $files"; fi |
|||
|
|||
mallocfiles="$(/bin/ls libtbbmalloc* 2> /dev/null)" |
|||
if [ ! -z "$mallocfiles" ]; then { |
|||
#TODO: any better workaround instead calling echo |
|||
#(without echo there is error: /system/bin/sh: libtbbmalloc_proxy.so: not found) |
|||
ldpreload="$ldpreload $(echo $mallocfiles)" |
|||
}; fi |
|||
|
|||
if [ ! -z "$ldpreload" ]; then ldpreload="export LD_PRELOAD=$ldpreload;"; fi |
|||
|
|||
# Add any libraries built for specific tests. |
|||
exeroot=${exename%\.*} |
|||
files="$(/bin/ls ${exeroot}*.so ${exeroot}*.so.* 2> /dev/null)" |
|||
if [ ! -z "$files" ]; then { |
|||
fnamelist="$fnamelist $files" |
|||
}; fi |
|||
|
|||
# TODO: Add extra libraries from the Intel(R) Compiler for certain tests |
|||
# found=$(echo $exename | egrep 'test_malloc_atexit\|test_malloc_lib_unload' 2> /dev/null) |
|||
# if [ ! -z $found ] ; then |
|||
# fnamelist="$fnamelist ${compiler_path_lib}/libimf.so \ |
|||
# ${compiler_path_lib}/libsvml.so \ |
|||
# ${compiler_path_lib}/libintlc.so.5" |
|||
# fi |
|||
|
|||
# Transfer collected executable and library files to the target device. |
|||
transfers_ok=1 |
|||
for fullname in $fnamelist; do { |
|||
if [ -r $fullname ]; then { |
|||
# Transfer the executable and libraries to top-level target directory |
|||
adb push $fullname ${targetdir}/$(basename $fullname) > /dev/null 2>&1 |
|||
}; else { |
|||
echo "Error: required file ${currentdir}/${fullname} for test $exename not available for transfer." |
|||
transfers_ok=0 |
|||
}; fi |
|||
}; done |
|||
|
|||
if [ "${transfers_ok}" = "0" ]; then { |
|||
do_cleanup |
|||
exit -1 |
|||
}; fi |
|||
|
|||
# Transfer input files used by example codes by scanning the executable argument list. |
|||
for fullname in "$@"; do { |
|||
if [ -r $fullname ]; then { |
|||
directory=$(dirname $fullname) |
|||
filename=$(basename $fullname) |
|||
# strip leading "." from fullname if present |
|||
if [ "$directory" = "\." ]; then { |
|||
directory="" |
|||
fullname=$filename |
|||
}; fi |
|||
# Create the target directory to hold input file if necessary |
|||
if [ ! -z $directory ]; then { |
|||
adb shell "mkdir $directory" > /dev/null 2>&1 |
|||
}; fi |
|||
# Transfer the input file to corresponding directory on target device |
|||
adb push $fullname ${targetdir}/$fullname > /dev/null 2>&1 |
|||
}; fi |
|||
}; done |
|||
|
|||
# The return_code file is the best way found to return the status of the test execution when using adb shell. |
|||
(adb shell "cd $targetdir; $ldpreload export LD_LIBRARY_PATH=.; ./$exename $verb $*; echo \$? > return_code") | sed -e "s/\\r$//" |
|||
|
|||
# Capture the return code string and remove the trailing \r from the return_code file contents |
|||
exitcode=`(adb shell "cat $targetdir/return_code 2> /dev/null") | sed -e "s/\\r$//"` |
|||
|
|||
do_cleanup |
|||
|
|||
# Return the exit code of the test. |
|||
exit $exitcode |
@ -0,0 +1,87 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
####### Detections and Commands ############################################### |
|||
|
|||
# Must set def_prefix according to target architecture detected above |
|||
ifeq (ia32,$(arch)) |
|||
def_prefix = lin32 |
|||
endif |
|||
ifeq (arm,$(findstring arm,$(arch))) |
|||
def_prefix = lin32 |
|||
endif |
|||
ifeq (64,$(findstring 64,$(arch))) |
|||
def_prefix = lin64 |
|||
endif |
|||
|
|||
gcc_version = $(shell $(tbb_tool_prefix)g++ -dumpversion) |
|||
|
|||
ifdef ANDROID_NDK_ROOT |
|||
$(warning "NDK version $(ANDROID_NDK_ROOT)") |
|||
ndk_version:= $(lastword $(subst -, ,$(ANDROID_NDK_ROOT))) |
|||
else |
|||
$(warning "NDK version not set in environment, using \'unknown\' instead.") |
|||
ndk_version:=unknown |
|||
endif |
|||
|
|||
export runtime:=$(target)_cc$(gcc_version)_NDK$(ndk_version)_version_$(target_os_version) |
|||
|
|||
AR = $(tbb_tool_prefix)ar |
|||
MAKE_VERSIONS=sh $(tbb_root)/build/version_info_android.sh $(CPLUS) $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(INCLUDES) >version_string.ver |
|||
|
|||
####### Build settings ######################################################## |
|||
|
|||
# No SONAME_SUFFIX for Android allowed in library names |
|||
TBB.LST = $(tbb_root)/src/tbb/$(def_prefix)-tbb-export.lst |
|||
TBB.DEF = $(TBB.LST:.lst=.def) |
|||
TBB.DLL = libtbb$(CPF_SUFFIX)$(DEBUG_SUFFIX).$(DLL) |
|||
TBB.LIB = $(TBB.DLL) |
|||
TBB_NO_VERSION.DLL= |
|||
LINK_TBB.LIB = $(TBB.LIB) |
|||
|
|||
MALLOC.DEF = $(MALLOC_ROOT)/$(def_prefix)-tbbmalloc-export.def |
|||
MALLOC.DLL = libtbbmalloc$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOC.LIB = $(MALLOC.DLL) |
|||
MALLOC_NO_VERSION.DLL= |
|||
LINK_MALLOC.LIB = $(MALLOC.LIB) |
|||
|
|||
MALLOCPROXY.DEF = $(MALLOC_ROOT)/$(def_prefix)-proxy-export.def |
|||
MALLOCPROXY.DLL = libtbbmalloc_proxy$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOCPROXY_NO_VERSION.DLL= |
|||
MALLOCPROXY.LIB = $(MALLOCPROXY.DLL) |
|||
LINK_MALLOCPROXY.LIB = $(MALLOCPROXY.LIB) |
|||
|
|||
TBB.RES = |
|||
MALLOC.RES = |
|||
RML.RES = |
|||
TBB.MANIFEST = |
|||
MALLOC.MANIFEST = |
|||
RML.MANIFEST = |
|||
OBJ = o |
|||
DLL = so |
|||
|
|||
TEST_LAUNCHER= |
|||
run_cmd ?= -sh $(tbb_root)/build/android.linux.launcher.sh $(largs) |
@ -0,0 +1,86 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
####### Detections and Commands ############################################### |
|||
|
|||
# Must set def_prefix according to target architecture detected above |
|||
ifeq (ia32,$(arch)) |
|||
def_prefix = lin32 |
|||
endif |
|||
ifeq (arm,$(findstring arm,$(arch))) |
|||
def_prefix = lin32 |
|||
endif |
|||
ifeq (64,$(findstring 64,$(arch))) |
|||
def_prefix = lin64 |
|||
endif |
|||
|
|||
gcc_version = $(shell $(tbb_tool_prefix)g++ -dumpversion) |
|||
|
|||
ifdef ANDROID_NDK_ROOT |
|||
$(warning "NDK version $(ANDROID_NDK_ROOT)") |
|||
ndk_version:= $(lastword $(subst -, ,$(ANDROID_NDK_ROOT))) |
|||
else |
|||
$(warning "NDK version not set in environment, using \'unknown\' instead.") |
|||
ndk_version:=unknown |
|||
endif |
|||
|
|||
export runtime:=$(target)_cc$(gcc_version)_NDK$(ndk_version)_version_$(target_os_version) |
|||
|
|||
AR = $(tbb_tool_prefix)ar |
|||
MAKE_VERSIONS = cmd /C cscript /nologo /E:jscript $(subst \,/,$(tbb_root))/build/version_info_windows.js $(CONLY) $(arch) $(subst \,/,"$(CPLUS) $(CPLUS_FLAGS)") > version_string.ver |
|||
|
|||
####### Build settings ######################################################## |
|||
|
|||
# No SONAME_SUFFIX for Android allowed in library names |
|||
TBB.LST = $(tbb_root)/src/tbb/$(def_prefix)-tbb-export.lst |
|||
TBB.DEF = $(TBB.LST:.lst=.def) |
|||
TBB.DLL = libtbb$(CPF_SUFFIX)$(DEBUG_SUFFIX).$(DLL) |
|||
TBB.LIB = $(TBB.DLL) |
|||
TBB_NO_VERSION.DLL= |
|||
LINK_TBB.LIB = $(TBB.LIB) |
|||
|
|||
MALLOC.DEF = $(MALLOC_ROOT)/$(def_prefix)-tbbmalloc-export.def |
|||
MALLOC.DLL = libtbbmalloc$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOC.LIB = $(MALLOC.DLL) |
|||
MALLOC_NO_VERSION.DLL= |
|||
LINK_MALLOC.LIB = $(MALLOC.LIB) |
|||
|
|||
MALLOCPROXY.DEF = $(MALLOC_ROOT)/$(def_prefix)-proxy-export.def |
|||
MALLOCPROXY.DLL = libtbbmalloc_proxy$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOCPROXY_NO_VERSION.DLL= |
|||
MALLOCPROXY.LIB = $(MALLOCPROXY.DLL) |
|||
|
|||
TBB.RES = |
|||
MALLOC.RES = |
|||
RML.RES = |
|||
TBB.MANIFEST = |
|||
MALLOC.MANIFEST = |
|||
RML.MANIFEST = |
|||
OBJ = o |
|||
DLL = so |
|||
|
|||
TEST_LAUNCHER= |
|||
run_cmd ?= -sh $(tbb_root)/build/android.linux.launcher.sh $(largs) |
@ -0,0 +1,74 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Defines settings for building the TBB run-time as a static library. |
|||
# Use these only on platforms where dynamic linking is impractical. |
|||
# |
|||
# IF YOU USE TBB AS A STATIC LIBRARY, YOU MUST GUARANTEE THAT ONLY ONE COPY OF |
|||
# THE TBB RUN-TIME IS LINKED INTO AN APPLICATION! LINKING IN MULTIPLE COPIES |
|||
# OF THE TBB RUN-TIME, DIRECTLY OR INDIRECTLY, MAY CAUSE PROGRAM FAILURE! |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
# Note that ITT_NOTIFY allows to selectively remove the definition of |
|||
# DO_ITT_NOTIFY without sabotaging deferred expansion of CPLUS_FLAGS. |
|||
# TODO: currently only in linux.{gcc,xl}.inc |
|||
|
|||
# Note that -pthread with xl gives "1501-210 (W) command option t contains an incorrect subargument"; |
|||
# multithreading is instead achieved by using the _r affix in the compiler name. |
|||
# TODO: is -lpthread still relevant/needed with XL and _r affix? |
|||
|
|||
# Note that -D__TBB_NO_DLOPEN is only for scalability, |
|||
# and is not necessarily needed by any static build. |
|||
|
|||
# OS specific settings => |
|||
LIB_LINK_CMD = ar rcs |
|||
LIB_LINK_FLAGS = |
|||
LIB_LINK_LIBS = |
|||
LIB_OUTPUT_KEY = |
|||
ifeq ($(tbb_os),linux) |
|||
ifeq ($(compiler),gcc) |
|||
LIBS = -pthread -ldl -lrt |
|||
endif |
|||
ifeq ($(compiler),xl) |
|||
LIBS = -lpthread -ldl -lrt |
|||
endif |
|||
LINK_FLAGS = |
|||
endif |
|||
override CXXFLAGS += -D__TBB_DYNAMIC_LOAD_ENABLED=0 -D__TBB_SOURCE_DIRECTLY_INCLUDED=1 |
|||
ITT_NOTIFY = |
|||
LIBEXT = a |
|||
LIBPREF = lib |
|||
# <= OS specific settings |
|||
|
|||
TBB.DLL = $(LIBPREF)tbb$(DEBUG_SUFFIX).$(LIBEXT) |
|||
TBB.LST = |
|||
TBB.DEF = |
|||
MALLOC.DLL = $(LIBPREF)tbbmalloc$(DEBUG_SUFFIX).$(LIBEXT) |
|||
MALLOC.DEF = |
|||
MALLOCPROXY.DLL = |
|||
MALLOCPROXY.DEF = |
|||
LINK_TBB.LIB = $(TBB.DLL) |
@ -0,0 +1,7 @@ |
|||
src/tbb |
|||
src/tbbmalloc |
|||
include/tbb |
|||
src/rml/server |
|||
src/rml/client |
|||
src/rml/include |
|||
source/malloc |
@ -0,0 +1,141 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
ifndef tbb_os |
|||
|
|||
# Windows sets environment variable OS; for other systems, ask uname |
|||
ifeq ($(OS),) |
|||
OS:=$(shell uname) |
|||
ifeq ($(OS),) |
|||
$(error "Cannot detect operating system") |
|||
endif |
|||
export tbb_os=$(OS) |
|||
endif |
|||
|
|||
ifeq ($(OS), Windows_NT) |
|||
export tbb_os=windows |
|||
endif |
|||
ifeq ($(OS), Linux) |
|||
export tbb_os=linux |
|||
endif |
|||
ifeq ($(OS), Darwin) |
|||
export tbb_os=macos |
|||
endif |
|||
|
|||
endif # !tbb_os |
|||
|
|||
ifeq ($(tbb_cpf),1) |
|||
export CPF_SUFFIX ?=_preview |
|||
endif |
|||
|
|||
ifeq (,$(wildcard $(tbb_root)/build/$(tbb_os).inc)) |
|||
$(error "$(tbb_os)" is not supported. Add build/$(tbb_os).inc file with os-specific settings ) |
|||
endif |
|||
|
|||
# detect arch and runtime versions, provide common host-specific definitions |
|||
include $(tbb_root)/build/$(tbb_os).inc |
|||
|
|||
ifeq ($(arch),) |
|||
$(error Architecture not detected) |
|||
endif |
|||
ifeq ($(runtime),) |
|||
$(error Runtime version not detected) |
|||
endif |
|||
|
|||
# process target-dependent compilation and testing configurations |
|||
ifdef target |
|||
# optionally process target-dependent options for compilation and testing |
|||
ifneq (,$(wildcard $(tbb_root)/build/$(target).inc)) |
|||
include $(tbb_root)/build/$(target).inc |
|||
endif |
|||
|
|||
# optionally process host-dependent environment for target-dependent compilation and testing |
|||
ifneq (,$(wildcard $(tbb_root)/build/$(target).$(tbb_os).inc)) |
|||
include $(tbb_root)/build/$(target).$(tbb_os).inc |
|||
endif |
|||
|
|||
# insure at least one target-dependent configuration file was found for compilation and testing |
|||
ifeq (,$(wildcard $(tbb_root)/build/$(target).inc)$(wildcard $(tbb_root)/build/$(target).$(tbb_os).inc)) |
|||
$(error "$(target)" is not supported. Add build/$(target).inc or build/$(target).$(tbb_os).inc file) |
|||
endif |
|||
endif #target |
|||
|
|||
# Support for running debug tests to release library and vice versa |
|||
flip_cfg=$(subst _flipcfg,_release,$(subst _release,_debug,$(subst _debug,_flipcfg,$(1)))) |
|||
cross_cfg = $(if $(crosstest),$(call flip_cfg,$(1)),$(1)) |
|||
|
|||
ifdef BUILDING_PHASE |
|||
# Setting default configuration to release |
|||
cfg?=release |
|||
# No lambas or other C++0x extensions by default for compilers that implement them as experimental features |
|||
# TODO: it should become unnecessary when all relevant tests are "moved" to the TEST_TBB_CPP11 set |
|||
lambdas ?= 0 |
|||
cpp0x ?= 0 |
|||
|
|||
ifndef target |
|||
target:=$(tbb_os) |
|||
endif |
|||
# process host/target compiler-dependent build configuration |
|||
ifeq (,$(wildcard $(tbb_root)/build/$(target).$(compiler).inc)) |
|||
$(error "$(compiler)" is not supported on $(target). Add build/$(target).$(compiler).inc file with compiler-specific settings. ) |
|||
endif |
|||
include $(tbb_root)/build/$(target).$(compiler).inc |
|||
endif |
|||
|
|||
ifneq ($(BUILDING_PHASE),1) |
|||
# definitions for top-level Makefiles |
|||
origin_build_dir:=$(origin tbb_build_dir) |
|||
tbb_build_dir?=$(tbb_root)$(SLASH)build |
|||
tbb_build_prefix?=$(tbb_os)_$(arch)_$(compiler)_$(runtime)$(CPF_SUFFIX) |
|||
work_dir=$(tbb_build_dir)$(SLASH)$(tbb_build_prefix) |
|||
endif # BUILDING_PHASE != 1 |
|||
|
|||
ifdef offload |
|||
extra_inc=$(offload).offload.inc |
|||
endif |
|||
ifdef extra_inc |
|||
ifneq (,$(wildcard $(tbb_root)/build/$(extra_inc))) |
|||
include $(tbb_root)/build/$(extra_inc) |
|||
else |
|||
$(error specified build file: "build/$(extra_inc)" is not found. ) |
|||
endif |
|||
endif |
|||
|
|||
ifndef BUILDING_PHASE |
|||
work_dir:=$(work_dir) |
|||
# assign new value for tbb_root if path is not absolute (the filter keeps only /* paths) |
|||
ifeq ($(filter /% $(SLASH)%, $(subst :, ,$(tbb_root)) ),) |
|||
ifeq ($(origin_build_dir),undefined) |
|||
override tbb_root:=../.. |
|||
else |
|||
override tbb_root:=$(CWD)/$(tbb_root) |
|||
endif |
|||
endif |
|||
export tbb_root |
|||
endif # !BUILDING_PHASE |
|||
|
|||
.DELETE_ON_ERROR: # Make will delete target if error occurred when building it. |
|||
|
@ -0,0 +1,129 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
ifeq ($(tbb_strict),1) |
|||
ifeq ($(WARNING_AS_ERROR_KEY),) |
|||
$(error WARNING_AS_ERROR_KEY is empty) |
|||
endif |
|||
# Do not remove line below! |
|||
WARNING_KEY += $(WARNING_AS_ERROR_KEY) |
|||
endif |
|||
|
|||
ifndef TEST_EXT |
|||
TEST_EXT = exe |
|||
endif |
|||
|
|||
.PRECIOUS: %.$(OBJ) %.$(TEST_EXT) %.res |
|||
|
|||
INCLUDES += $(INCLUDE_KEY)$(tbb_root)/src $(INCLUDE_KEY)$(tbb_root)/src/rml/include $(INCLUDE_KEY)$(tbb_root)/include |
|||
|
|||
CPLUS_FLAGS += $(WARNING_KEY) $(CXXFLAGS) |
|||
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) |
|||
ifeq ($(origin LIB_OUTPUT_KEY), undefined) |
|||
LIB_OUTPUT_KEY = $(OUTPUT_KEY) |
|||
endif |
|||
ifeq ($(origin LIB_LINK_LIBS), undefined) |
|||
LIB_LINK_LIBS = $(LIBDL) $(LIBS) |
|||
endif |
|||
|
|||
CONLY ?= $(CPLUS) |
|||
|
|||
# The most generic rules |
|||
%.$(OBJ): %.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $< |
|||
|
|||
%.$(OBJ): %.c |
|||
$(CONLY) $(COMPILE_ONLY) $(C_FLAGS) $(INCLUDES) $< |
|||
|
|||
%.$(OBJ): %.asm |
|||
$(ASM) $(ASM_FLAGS) $< |
|||
|
|||
%.$(OBJ): %.s |
|||
cpp <$< | grep -v '^#' >$*.tmp |
|||
$(ASM) $(ASM_FLAGS) -o $@ $*.tmp |
|||
|
|||
# Rule for generating .E file if needed for visual inspection |
|||
# Note that due to mapping for ICL all uses of PREPROC_ONLY should be immediately followed by a file name |
|||
%.E: %.cpp |
|||
$(CPLUS) $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(INCLUDES) $(PREPROC_ONLY) $< >$@ |
|||
|
|||
# TODO Rule for generating .asm file if needed for visual inspection |
|||
%.asm: %.cpp |
|||
$(CPLUS) /c /FAs /Fa $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(INCLUDES) $< |
|||
|
|||
# TODO Rule for generating .s file if needed for visual inspection |
|||
%.s: %.cpp |
|||
$(CPLUS) -S $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(INCLUDES) $< |
|||
|
|||
# Customizations |
|||
|
|||
ifeq (1,$(TBB_NOSTRICT)) |
|||
# GNU 3.2.3 headers have a ISO syntax that is rejected by Intel compiler in -strict-ansi mode. |
|||
# The Mac uses gcc, so the list is empty for that platform. |
|||
# The files below need the -strict-ansi flag downgraded to -ansi to compile |
|||
|
|||
$(KNOWN_NOSTRICT): %.$(OBJ): %.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(CPLUS_FLAGS_NOSTRICT) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $< |
|||
endif |
|||
|
|||
$(KNOWN_WARNINGS): %.$(OBJ): %.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(subst $(WARNING_KEY),,$(CPLUS_FLAGS)) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $< |
|||
|
|||
tbb_misc.$(OBJ): tbb_misc.cpp version_string.ver |
|||
$(CPLUS) $(COMPILE_ONLY) $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDE_KEY). $(INCLUDES) $< |
|||
|
|||
tbb_misc.E: tbb_misc.cpp version_string.ver |
|||
$(CPLUS) $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(INCLUDE_KEY). $(INCLUDES) $(PREPROC_ONLY) $< >$@ |
|||
|
|||
%.res: %.rc version_string.ver $(TBB.MANIFEST) |
|||
rc /Fo$@ $(INCLUDES) $(filter /D%,$(CPLUS_FLAGS)) $< |
|||
|
|||
ifneq (,$(TBB.MANIFEST)) |
|||
$(TBB.MANIFEST): |
|||
cmd /C "echo #include ^<stdio.h^> >tbbmanifest.c" |
|||
cmd /C "echo int main(){return 0;} >>tbbmanifest.c" |
|||
cl /nologo $(C_FLAGS) tbbmanifest.c |
|||
|
|||
version_string.ver: $(TBB.MANIFEST) |
|||
$(MAKE_VERSIONS) |
|||
cmd /C "echo #define TBB_MANIFEST 1 >> version_string.ver" |
|||
|
|||
else |
|||
version_string.ver: |
|||
$(MAKE_VERSIONS) |
|||
endif |
|||
|
|||
|
|||
# Rules for generating a test DLL |
|||
%_dll.$(OBJ): %.cpp |
|||
$(CPLUS) $(COMPILE_ONLY) $(OUTPUTOBJ_KEY)$@ $(CPLUS_FLAGS) $(PIC_KEY) $(DEFINE_KEY)_USRDLL $(INCLUDES) $< |
@ -0,0 +1,183 @@ |
|||
// Copyright 2005-2013 Intel Corporation. All Rights Reserved.
|
|||
//
|
|||
// This file is part of Threading Building Blocks.
|
|||
//
|
|||
// Threading Building Blocks is free software; you can redistribute it
|
|||
// and/or modify it under the terms of the GNU General Public License
|
|||
// version 2 as published by the Free Software Foundation.
|
|||
//
|
|||
// Threading Building Blocks is distributed in the hope that it will be
|
|||
// useful, but WITHOUT ANY WARRANTY; without even the implied warranty
|
|||
// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|||
// GNU General Public License for more details.
|
|||
//
|
|||
// You should have received a copy of the GNU General Public License
|
|||
// along with Threading Building Blocks; if not, write to the Free Software
|
|||
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|||
//
|
|||
// As a special exception, you may use this file as part of a free software
|
|||
// library without restriction. Specifically, if other files instantiate
|
|||
// templates or use macros or inline functions from this file, or you compile
|
|||
// this file and link it with other files to produce an executable, this
|
|||
// file does not by itself cause the resulting executable to be covered by
|
|||
// the GNU General Public License. This exception does not however
|
|||
// invalidate any other reasons why the executable file might be covered by
|
|||
// the GNU General Public License.
|
|||
|
|||
function doWork() { |
|||
var WshShell = WScript.CreateObject("WScript.Shell"); |
|||
|
|||
var fso = new ActiveXObject("Scripting.FileSystemObject"); |
|||
|
|||
var tmpExec; |
|||
tmpExec = WshShell.Run("cmd /c echo int main(){return 0;} >detect.c", 0, true); |
|||
|
|||
// The next block deals with GCC (MinGW)
|
|||
if ( WScript.Arguments.Count() > 1 && WScript.Arguments(1) == "gcc" ) { |
|||
if ( WScript.Arguments(0) == "/arch" ) { |
|||
// Get predefined macros
|
|||
tmpExec = WshShell.Run("cmd /C gcc -dM -E detect.c > detect.map", 0, true); |
|||
var file = fso.OpenTextFile("detect.map", 1, 0); |
|||
var defs = file.readAll(); |
|||
file.Close(); |
|||
|
|||
//detect target architecture
|
|||
var intel64=/x86_64|amd64/mgi; |
|||
var ia32=/i386/mgi; |
|||
if ( defs.match(intel64) ) { |
|||
WScript.Echo( "intel64" ); |
|||
} else if ( defs.match(ia32) ) { |
|||
WScript.Echo( "ia32" ); |
|||
} else { |
|||
WScript.Echo( "unknown" ); |
|||
} |
|||
} else { |
|||
tmpExec = WshShell.Exec("gcc -dumpversion"); |
|||
var gcc_version = tmpExec.StdOut.ReadLine(); |
|||
if ( WScript.Arguments(0) == "/runtime" ) { |
|||
WScript.Echo( "mingw"+gcc_version ); |
|||
} |
|||
else if ( WScript.Arguments(0) == "/minversion" ) { |
|||
// Comparing strings, not numbers; will not work for two-digit versions
|
|||
if ( gcc_version >= WScript.Arguments(2) ) { |
|||
WScript.Echo( "ok" ); |
|||
} else { |
|||
WScript.Echo( "fail" ); |
|||
} |
|||
} |
|||
} |
|||
return; |
|||
} |
|||
|
|||
//Compile binary
|
|||
tmpExec = WshShell.Exec("cl /MD detect.c /link /MAP"); |
|||
while ( tmpExec.Status == 0 ) { |
|||
WScript.Sleep(100); |
|||
} |
|||
//compiler banner that includes version and target arch was printed to stderr
|
|||
var clVersion = tmpExec.StdErr.ReadAll(); |
|||
|
|||
if ( WScript.Arguments(0) == "/arch" ) { |
|||
//detect target architecture
|
|||
var intel64=/AMD64|EM64T|x64/mgi; |
|||
var ia64=/IA-64|Itanium/mgi; |
|||
var ia32=/[80|\s]x86/mgi; |
|||
if ( clVersion.match(intel64) ) { |
|||
WScript.Echo( "intel64" ); |
|||
} else if ( clVersion.match(ia64) ) { |
|||
WScript.Echo( "ia64" ); |
|||
} else if ( clVersion.match(ia32) ) { |
|||
WScript.Echo( "ia32" ); |
|||
} else { |
|||
WScript.Echo( "unknown" ); |
|||
} |
|||
return; |
|||
} |
|||
|
|||
if ( WScript.Arguments(0) == "/runtime" ) { |
|||
//read map-file
|
|||
var map = fso.OpenTextFile("detect.map", 1, 0); |
|||
var mapContext = map.readAll(); |
|||
map.Close(); |
|||
|
|||
//detect runtime
|
|||
var vc71=/MSVCR71\.DLL/mgi; |
|||
var vc80=/MSVCR80\.DLL/mgi; |
|||
var vc90=/MSVCR90\.DLL/mgi; |
|||
var vc100=/MSVCR100\.DLL/mgi; |
|||
var vc110=/MSVCR110\.DLL/mgi; |
|||
var psdk=/MSVCRT\.DLL/mgi; |
|||
if ( mapContext.match(vc71) ) { |
|||
WScript.Echo( "vc7.1" ); |
|||
} else if ( mapContext.match(vc80) ) { |
|||
WScript.Echo( "vc8" ); |
|||
} else if ( mapContext.match(vc90) ) { |
|||
WScript.Echo( "vc9" ); |
|||
} else if ( mapContext.match(vc100) ) { |
|||
WScript.Echo( "vc10" ); |
|||
} else if ( mapContext.match(vc110) ) { |
|||
WScript.Echo( "vc11" ); |
|||
} else { |
|||
WScript.Echo( "unknown" ); |
|||
} |
|||
return; |
|||
} |
|||
|
|||
if ( WScript.Arguments(0) == "/minversion" ) { |
|||
var compiler_version; |
|||
if ( WScript.Arguments(1) == "cl" ) { |
|||
compiler_version = clVersion.match(/Compiler Version ([0-9.]+)\s/mi)[1]; |
|||
// compiler_version is in xx.xx.xxxxx.xx format, i.e. a string.
|
|||
// It will compare well with major.minor versions where major has two digits,
|
|||
// which is sufficient as the versions of interest start from 13 (for VC7).
|
|||
} else if ( WScript.Arguments(1) == "icl" ) { |
|||
// Get predefined ICL macros
|
|||
tmpExec = WshShell.Run("cmd /C icl /QdM /E detect.c > detect.map", 0, true); |
|||
var file = fso.OpenTextFile("detect.map", 1, 0); |
|||
var defs = file.readAll(); |
|||
file.Close(); |
|||
// In #define __INTEL_COMPILER XXYY, XX is the major ICL version, YY is minor
|
|||
compiler_version = defs.match(/__INTEL_COMPILER[ \t]*([0-9]+).*$/mi)[1]/100; |
|||
// compiler version is a number; it compares well with another major.minor
|
|||
// version number, where major has one, two, and perhaps more digits (9.1, 11, etc).
|
|||
} |
|||
if ( compiler_version >= WScript.Arguments(2) ) { |
|||
WScript.Echo( "ok" ); |
|||
} else { |
|||
WScript.Echo( "fail" ); |
|||
} |
|||
return; |
|||
} |
|||
} |
|||
|
|||
function doClean() { |
|||
var fso = new ActiveXObject("Scripting.FileSystemObject"); |
|||
// delete intermediate files
|
|||
if ( fso.FileExists("detect.c") ) |
|||
fso.DeleteFile ("detect.c", false); |
|||
if ( fso.FileExists("detect.obj") ) |
|||
fso.DeleteFile ("detect.obj", false); |
|||
if ( fso.FileExists("detect.map") ) |
|||
fso.DeleteFile ("detect.map", false); |
|||
if ( fso.FileExists("detect.exe") ) |
|||
fso.DeleteFile ("detect.exe", false); |
|||
if ( fso.FileExists("detect.exe.manifest") ) |
|||
fso.DeleteFile ("detect.exe.manifest", false); |
|||
} |
|||
|
|||
if ( WScript.Arguments.Count() > 0 ) { |
|||
|
|||
try { |
|||
doWork(); |
|||
} catch( error ) { |
|||
WScript.Echo( "unknown" ); |
|||
} |
|||
doClean(); |
|||
|
|||
} else { |
|||
WScript.Echo( "Supported options:\n" |
|||
+ "\t/arch [compiler]\n" |
|||
+ "\t/runtime [compiler]\n" |
|||
+ "\t/minversion compiler version" ); |
|||
} |
|||
|
@ -0,0 +1,77 @@ |
|||
@echo off |
|||
REM |
|||
REM Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
REM |
|||
REM This file is part of Threading Building Blocks. |
|||
REM |
|||
REM Threading Building Blocks is free software; you can redistribute it |
|||
REM and/or modify it under the terms of the GNU General Public License |
|||
REM version 2 as published by the Free Software Foundation. |
|||
REM |
|||
REM Threading Building Blocks is distributed in the hope that it will be |
|||
REM useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
REM of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
REM GNU General Public License for more details. |
|||
REM |
|||
REM You should have received a copy of the GNU General Public License |
|||
REM along with Threading Building Blocks; if not, write to the Free Software |
|||
REM Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
REM |
|||
REM As a special exception, you may use this file as part of a free software |
|||
REM library without restriction. Specifically, if other files instantiate |
|||
REM templates or use macros or inline functions from this file, or you compile |
|||
REM this file and link it with other files to produce an executable, this |
|||
REM file does not by itself cause the resulting executable to be covered by |
|||
REM the GNU General Public License. This exception does not however |
|||
REM invalidate any other reasons why the executable file might be covered by |
|||
REM the GNU General Public License. |
|||
REM |
|||
setlocal |
|||
for %%D in ("%tbb_root%") do set actual_root=%%~fD |
|||
set fslash_root=%actual_root:\=/% |
|||
set bin_dir=%CD% |
|||
set fslash_bin_dir=%bin_dir:\=/% |
|||
set _INCLUDE=INCLUDE& set _LIB=LIB |
|||
if not x%UNIXMODE%==x set _INCLUDE=CPATH& set _LIB=LIBRARY_PATH |
|||
|
|||
if exist tbbvars.bat goto skipbat |
|||
echo Generating local tbbvars.bat |
|||
echo @echo off>tbbvars.bat |
|||
echo SET TBBROOT=%actual_root%>>tbbvars.bat |
|||
echo SET TBB_ARCH_PLATFORM=%arch%\%runtime%>>tbbvars.bat |
|||
echo SET TBB_TARGET_ARCH=%arch%>>tbbvars.bat |
|||
echo SET %_INCLUDE%=%%TBBROOT%%\include;%%%_INCLUDE%%%>>tbbvars.bat |
|||
echo SET %_LIB%=%bin_dir%;%%%_LIB%%%>>tbbvars.bat |
|||
echo SET PATH=%bin_dir%;%%PATH%%>>tbbvars.bat |
|||
if not x%UNIXMODE%==x echo SET LD_LIBRARY_PATH=%bin_dir%;%%LD_LIBRARY_PATH%%>>tbbvars.bat |
|||
:skipbat |
|||
|
|||
if exist tbbvars.sh goto skipsh |
|||
echo Generating local tbbvars.sh |
|||
echo #!/bin/sh>tbbvars.sh |
|||
echo export TBBROOT="%fslash_root%">>tbbvars.sh |
|||
echo export TBB_ARCH_PLATFORM="%arch%\%runtime%">>tbbvars.sh |
|||
echo export TBB_TARGET_ARCH="%arch%">>tbbvars.sh |
|||
echo export %_INCLUDE%="${TBBROOT}/include;$%_INCLUDE%">>tbbvars.sh |
|||
echo export %_LIB%="%fslash_bin_dir%;$%_LIB%">>tbbvars.sh |
|||
echo export PATH="%fslash_bin_dir%;$PATH">>tbbvars.sh |
|||
if not x%UNIXMODE%==x echo export LD_LIBRARY_PATH="%fslash_bin_dir%;$LD_LIBRARY_PATH">>tbbvars.sh |
|||
:skipsh |
|||
|
|||
if exist tbbvars.csh goto skipcsh |
|||
echo Generating local tbbvars.csh |
|||
echo #!/bin/csh>tbbvars.csh |
|||
echo setenv TBBROOT "%actual_root%">>tbbvars.csh |
|||
echo setenv TBB_ARCH_PLATFORM "%arch%\%runtime%">>tbbvars.csh |
|||
echo setenv TBB_TARGET_ARCH "%arch%">>tbbvars.csh |
|||
echo setenv %_INCLUDE% "${TBBROOT}\include;$%_INCLUDE%">>tbbvars.csh |
|||
echo setenv %_LIB% "%bin_dir%;$%_LIB%">>tbbvars.csh |
|||
echo setenv PATH "%bin_dir%;$PATH">>tbbvars.csh |
|||
if not x%UNIXMODE%==x echo setenv LD_LIBRARY_PATH "%bin_dir%;$LD_LIBRARY_PATH">>tbbvars.csh |
|||
:skipcsh |
|||
|
|||
REM Workaround for copying Android* specific libgnustl_shared.so library to work folder |
|||
if not x%LIB_GNU_STL_ANDROID%==x copy /Y "%LIB_GNU_STL_ANDROID%"\libgnustl_shared.so |
|||
|
|||
endlocal |
|||
exit |
@ -0,0 +1,81 @@ |
|||
#!/bin/bash |
|||
# |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
# Script used to generate tbbvars.[c]sh scripts |
|||
bin_dir="$PWD" # |
|||
cd "$tbb_root" # keep this comments here |
|||
tbb_root="$PWD" # to make it unsensible |
|||
cd "$bin_dir" # to EOL encoding |
|||
[ "`uname`" = "Darwin" ] && dll_path="DYLD_LIBRARY_PATH" || dll_path="LD_LIBRARY_PATH" # |
|||
[ -f ./tbbvars.sh ] || cat >./tbbvars.sh <<EOF |
|||
#!/bin/bash |
|||
export TBBROOT="${tbb_root}" # |
|||
tbb_bin="${bin_dir}" # |
|||
if [ -z "\$CPATH" ]; then # |
|||
export CPATH="\${TBBROOT}/include" # |
|||
else # |
|||
export CPATH="\${TBBROOT}/include:\$CPATH" # |
|||
fi # |
|||
if [ -z "\$LIBRARY_PATH" ]; then # |
|||
export LIBRARY_PATH="\${tbb_bin}" # |
|||
else # |
|||
export LIBRARY_PATH="\${tbb_bin}:\$LIBRARY_PATH" # |
|||
fi # |
|||
if [ -z "\$${dll_path}" ]; then # |
|||
export ${dll_path}="\${tbb_bin}" # |
|||
else # |
|||
export ${dll_path}="\${tbb_bin}:\$${dll_path}" # |
|||
fi # |
|||
${TBB_CUSTOM_VARS_SH} # |
|||
EOF |
|||
[ -f ./tbbvars.csh ] || cat >./tbbvars.csh <<EOF |
|||
#!/bin/csh |
|||
setenv TBBROOT "${tbb_root}" # |
|||
setenv tbb_bin "${bin_dir}" # |
|||
if (! \$?CPATH) then # |
|||
setenv CPATH "\${TBBROOT}/include" # |
|||
else # |
|||
setenv CPATH "\${TBBROOT}/include:\$CPATH" # |
|||
endif # |
|||
if (! \$?LIBRARY_PATH) then # |
|||
setenv LIBRARY_PATH "\${tbb_bin}" # |
|||
else # |
|||
setenv LIBRARY_PATH "\${tbb_bin}:\$LIBRARY_PATH" # |
|||
endif # |
|||
if (! \$?${dll_path}) then # |
|||
setenv ${dll_path} "\${tbb_bin}" # |
|||
else # |
|||
setenv ${dll_path} "\${tbb_bin}:\$${dll_path}" # |
|||
endif # |
|||
${TBB_CUSTOM_VARS_CSH} # |
|||
EOF |
|||
|
|||
# Workaround for copying Android* specific libgnustl_shared.so library to "." |
|||
if [ ! -z "${LIB_GNU_STL_ANDROID}" ]; then |
|||
cp ${LIB_GNU_STL_ANDROID}/libgnustl_shared.so . |
|||
fi |
@ -0,0 +1,242 @@ |
|||
<HTML> |
|||
<BODY> |
|||
|
|||
<H2>Overview</H2> |
|||
This directory contains the internal Makefile infrastructure for Intel® Threading Building Blocks (Intel® TBB). |
|||
|
|||
<P> |
|||
See below for how to <A HREF=#build>build</A> Intel TBB and how to <A HREF=#port>port</A> Intel TBB |
|||
to a new platform, operating system or architecture. |
|||
</P> |
|||
|
|||
<H2>Files</H2> |
|||
The files here are not intended to be used directly. See below for usage. |
|||
<DL> |
|||
<DT><A HREF="Makefile.tbb">Makefile.tbb</A> |
|||
<DD>Main Makefile to build the Intel TBB library. |
|||
Invoked via 'make tbb' from <A HREF=../Makefile>top-level Makefile</A>. |
|||
<DT><A HREF="Makefile.tbbmalloc">Makefile.tbbmalloc</A> |
|||
<DD>Main Makefile to build the Intel TBB scalable memory allocator library as well as its tests. |
|||
Invoked via 'make tbbmalloc' from <A HREF=../Makefile>top-level Makefile</A>. |
|||
<DT><A HREF="Makefile.test">Makefile.test</A> |
|||
<DD>Main Makefile to build and run the tests for the Intel TBB library. |
|||
Invoked via 'make test' from <A HREF=../Makefile>top-level Makefile</A>. |
|||
<DT><A HREF="common.inc">common.inc</A> |
|||
<DD>Main common included Makefile that includes OS-specific and compiler-specific Makefiles. |
|||
<DT><os>.inc |
|||
<DD>OS-specific Makefile for a particular <os>. |
|||
<DT><os>.<compiler>.inc |
|||
<DD>Compiler-specific Makefile for a particular <os> / <compiler> combination. |
|||
<DT>*.sh |
|||
<DD>Infrastructure utilities for Linux* OS, OS X*, and UNIX*-related operating systems. |
|||
<DT>*.js, *.bat |
|||
<DD>Infrastructure utilities for Windows* OS. |
|||
</DL> |
|||
|
|||
<A NAME=build><H2>To Build</H2></A> |
|||
<P> |
|||
To port Intel TBB to a new platform, operating system or architecture, see the <A HREF=#port>porting directions</A> below. |
|||
</P> |
|||
|
|||
<H3>Software prerequisites:</H3> |
|||
<OL> |
|||
<LI>C++ compiler for the platform, operating system and architecture of interest. |
|||
Either the native compiler for your system, or, optionally, the appropriate Intel® C++ compiler, may be used. |
|||
<LI>GNU make utility. On Windows OS, if a UNIX* emulator is used to run GNU make, |
|||
it should be able to run Windows OS utilities and commands. On Linux OS, OS X, etc., |
|||
shell commands issued by GNU make should execute in a Bourne or BASH compatible shell. |
|||
</OL> |
|||
|
|||
<P> |
|||
Intel TBB libraries can be built by performing the following steps. |
|||
On systems that support only one ABI (e.g., 32-bit), these steps build the libraries for that ABI. |
|||
On systems that support both 64-bit and 32-bit libraries, these steps build the 64-bit libraries |
|||
(Linux OS, OS X, and related systems) or whichever ABI is selected in the development environment (Windows OS). |
|||
</P> |
|||
<OL> |
|||
<LI>Change to the <A HREF=../index.html>top-level directory</A> of the installed software. |
|||
<LI>If using the Intel® C++ compiler, make sure the appropriate compiler is available in your PATH |
|||
(e.g., by sourcing the appropriate iccvars script for the compiler to be used). |
|||
<LI>Invoke GNU make using no arguments, for example, 'gmake'. |
|||
</OL> |
|||
|
|||
<P> |
|||
To build Intel TBB libraries for other than the default ABI (e.g., to build 32-bit libraries on Linux OS, OS X, |
|||
or related systems that support both 64-bit and 32-bit libraries), perform the following steps: |
|||
</P> |
|||
<OL> |
|||
<LI>Change to the <A HREF=../index.html>top-level directory</A> of the installed software. |
|||
<LI>If using the Intel® C++ compiler, make sure the appropriate compiler is available in your PATH |
|||
(e.g., by sourcing the appropriate iccvars script for the compiler to be used). |
|||
<LI>Invoke GNU make as follows, 'gmake arch=ia32'. |
|||
</OL> |
|||
|
|||
<P>The default make target will build the release and debug versions of the Intel TBB library.</P> |
|||
<P>Other targets are available in the top-level Makefile. You might find the following targets useful: |
|||
<UL> |
|||
<LI>'make test' will build and run Intel TBB <A HREF=../src/test>unit-tests</A>; |
|||
<LI>'make examples' will build and run Intel TBB <A HREF=../examples/index.html>examples</A>; |
|||
<LI>'make all' will do all of the above. |
|||
</UL> |
|||
See also the list of other targets below. |
|||
</P> |
|||
|
|||
<P> |
|||
By default, the libraries will be built in sub-directories within the build/ directory. |
|||
The sub-directories are named according to the operating system, architecture, compiler and software environment used |
|||
(the sub-directory names also distinguish release vs. debug libraries). On Linux OS, the software environment comprises |
|||
the GCC, libc and kernel version used. On OS X, the software environment comprises the GCC and OS version used. |
|||
On Windows OS, the software environment comprises the Microsoft* Visual Studio* version used. |
|||
See below for how to change the default build directory. |
|||
</P> |
|||
|
|||
<P> |
|||
To perform different build and/or test operations, use the following steps. |
|||
</P> |
|||
<OL> |
|||
<LI>Change to the <A HREF=../index.html>top-level directory</A> of the installed software. |
|||
<LI>If using the Intel® C++ compiler, make sure the appropriate compiler is available in your PATH |
|||
(e.g., by sourcing the appropriate iccvars script for the compiler to be used). |
|||
<LI>Invoke GNU make by using one or more of the following commands. |
|||
<DL> |
|||
<DT><TT>make</TT> |
|||
<DD>Default build. Equivalent to 'make tbb tbbmalloc'. |
|||
<DT><TT>make all</TT> |
|||
<DD>Equivalent to 'make tbb tbbmalloc test examples'. |
|||
<DT><TT>cd src;make release</TT> |
|||
<DD>Build and test release libraries only. |
|||
<DT><TT>cd src;make debug</TT> |
|||
<DD>Build and test debug libraries only. |
|||
<DT><TT>make tbb</TT> |
|||
<DD>Make Intel TBB release and debug libraries. |
|||
<DT><TT>make tbbmalloc</TT> |
|||
<DD>Make Intel TBB scalable memory allocator libraries. |
|||
<DT><TT>make test</TT> |
|||
<DD>Compile and run unit-tests |
|||
<DT><TT>make examples</TT> |
|||
<DD>Build libraries and run all examples, like doing 'make debug clean release' from |
|||
<A HREF=../examples/Makefile>the general example Makefile</A>. |
|||
<DT><TT>make compiler=<B>{</B>icl, icc, gcc, clang<B>}</B> <B>[</B>(above options or targets)<B>]</B></TT> |
|||
<DD>Build and run as above, but use specified compilers instead of default, native compilers |
|||
<LI><TT><B> {</B>icl, icc<B>}</B> </TT> - to use Intel® compilers (<TT>icl</TT> on Windows OS, <TT>icc</TT> on Linux OS or OS X). </LI> |
|||
<LI><TT>gcc</TT> - to use g++ (e.g. MinGW on Windows OS)</LI> |
|||
<LI><TT>clang</TT> - to use Clang compiler</LI> |
|||
<DT><TT>make compiler=clang stdlib=libc++ </B> <B>[</B>(above options or targets)<B>]</B></TT> |
|||
<DD>Build and run as above, but use <TT>libc++</TT> as a standard c++ library for clang. |
|||
<DT><TT>make target_ui=win8ui [target_ui_mode=production]</B> <B>[</B>(above options or targets)<B>]</B></TT> |
|||
<DD>Build and run as above, but use API that is compliant with Windows Store* applications. |
|||
<TT>target_ui_mode=production</TT> is used to produce binaries that are compliant with Windows Store* application container. |
|||
In later case they won't with Intel TBB unit tests but work only with Windows Store* applications. |
|||
<DT><TT>ndk-build target=android</B> <B>[</B>(above options or targets)<B>]</B></TT> |
|||
<DD>Build and run as above, but build libraries for Android* OS by Android NDK that should be installed. Makefiles were tested with revision 8. |
|||
<DT><TT>make arch=<B>{</B>ia32, intel64, ia64<B>}</B> <B>[</B>(above options or targets)<B>]</B></TT> |
|||
<DD>Build and run as above, but build libraries for the selected ABI. |
|||
Might be useful for cross-compilation; ensure proper environment is set before running this command. |
|||
<DT><TT>make tbb_root=<B>{</B>(Intel TBB directory)<B>}</B> <B>[</B>(above options or targets)<B>]</B></TT> |
|||
<DD>Build and run as above; for use when invoking 'make' from a directory other than |
|||
the <A HREF=../index.html>top-level directory</A>. |
|||
<DT><TT>make tbb_build_dir=<B>{</B>(build directory)<B>}</B> <B>[</B>(above options or targets)<B>]</B></TT> |
|||
<DD>Build and run as above, but place the built libraries in the specified directory, rather than in the default |
|||
sub-directory within the build/ directory. This command might have troubles with the build in case the sources |
|||
installed to the directory with spaces in the path. |
|||
<DT><TT>make tbb_build_prefix=<B>{</B>(build sub-directory)<B>}</B> <B>[</B>(above options or targets)<B>]</B></TT> |
|||
<DD>Build and run as above, but place the built libraries in the specified sub-directory within the build/ directory, |
|||
rather than using the default sub-directory name. |
|||
<DT><TT>make tbb_cpf=1 <B>[</B>(above options or targets)<B>]</B></TT> |
|||
<DD>Build and run as above, but build and use libraries with the Community Preview Features enabled, |
|||
rather than the default libraries. |
|||
<DT><TT>make <B>[</B>(above options)<B>]</B> clean</TT> |
|||
<DD>Remove any executables or intermediate files produced by the above commands. |
|||
Includes build directories, object files, libraries and test executables. |
|||
</DL> |
|||
</OL> |
|||
|
|||
<A NAME=port><H2>To Port</H2></A> |
|||
<P> |
|||
This section provides information on how to port Intel TBB to a new platform, operating system or architecture. |
|||
A subset or a superset of these steps may be required for porting to a given platform. |
|||
</P> |
|||
|
|||
<H4>To port the Intel TBB source code:</H4> |
|||
<OL> |
|||
<LI>If porting to a new architecture, create a file that describes the architecture-specific details for that architecture. |
|||
<UL> |
|||
<LI>Create a <os>_<architecture>.h file in the <A HREF=../include/tbb/machine>include/tbb/machine</A> directory |
|||
that describes these details. |
|||
<UL> |
|||
<LI>The <os>_<architecture>.h is named after the operating system and architecture as recognized by |
|||
<A HREF=../include/tbb/tbb_machine.h>include/tbb/tbb_machine.h</A> and the Makefile infrastructure. |
|||
<LI>This file defines the implementations of synchronization operations, and also the |
|||
scheduler yield function, for the operating system and architecture. |
|||
<LI>Several examples of <os>_<architecture>.h files can be found in the |
|||
<A HREF=../include/tbb/machine>include/tbb/machine</A> directory. |
|||
<UL> |
|||
<LI>A minimal implementation defines the 4-byte and 8-byte compare-and-swap operations, |
|||
and the scheduler yield function. See <A HREF=../include/tbb/machine/mac_ppc.h>include/tbb/machine/mac_ppc.h</A> |
|||
for an example of a minimal implementation. |
|||
<LI>More complex implementation examples can also be found in the |
|||
<A HREF=../include/tbb/machine>include/tbb/machine</A> directory |
|||
that implement all the individual variants of synchronization operations that Intel TBB uses. |
|||
Such implementations are more verbose but may achieve better performance on a given architecture. |
|||
<LI>In a given implementation, any synchronization operation that is not defined is implemented, by default, |
|||
in terms of 4-byte or 8-byte compare-and-swap. More operations can thus be added incrementally to increase |
|||
the performance of an implementation. |
|||
<LI>In most cases, synchronization operations are implemented as inline assembly code; examples also exist, |
|||
(e.g., for Intel® Itanium® processors) that use out-of-line assembly code in *.s or *.asm files |
|||
(see the assembly code sub-directories in the <A HREF=../src/tbb>src/tbb</A> directory). |
|||
</UL> |
|||
</UL> |
|||
<LI>Modify <A HREF=../include/tbb/tbb_machine.h>include/tbb/tbb_machine.h</A>, if needed, to invoke the appropriate |
|||
<os>_<architecture>.h file in the <A HREF=../include/tbb/machine>include/tbb/machine</A> directory. |
|||
</UL> |
|||
<LI>Add an implementation of DetectNumberOfWorkers() in <A HREF=../src/tbb/tbb_misc.h>src/tbb/tbb_misc.h</A>, |
|||
that returns the number of cores found on the system in case it is not supported by the current implementation. |
|||
This is used to determine the default number of threads for the Intel TBB task scheduler. |
|||
<LI>Either properly define FillDynamicLinks for use in |
|||
<A HREF=../src/tbb/cache_aligned_allocator.cpp>src/tbb/cache_aligned_allocator.cpp</A>, |
|||
or hardcode the allocator to be used. |
|||
<LI>Additional types might be required in the union defined in |
|||
<A HREF=../include/tbb/aligned_space.h>include/tbb/aligned_space.h</A> |
|||
to ensure proper alignment on your platform. |
|||
<LI>Changes may be required in <A HREF=../include/tbb/tick_count.h>include/tbb/tick_count.h</A> |
|||
for systems that do not provide gettimeofday. |
|||
</OL> |
|||
|
|||
<H4>To port the Makefile infrastructure:</H4> |
|||
Modify the appropriate files in the Makefile infrastructure to add a new platform, operating system or architecture as needed. |
|||
See the Makefile infrastructure files for examples. |
|||
<OL> |
|||
<LI>The <A HREF=../Makefile>top-level Makefile</A> includes <A HREF=common.inc>common.inc</A> to determine the operating system. |
|||
<UL> |
|||
<LI>To add a new operating system, add the appropriate test to <A HREF=common.inc>common.inc</A>, |
|||
and create the needed <os>.inc and <os>.<compiler>.inc files (see below). |
|||
</UL> |
|||
<LI>The <os>.inc file makes OS-specific settings for a particular operating systems. |
|||
<UL> |
|||
<LI>For example, <A HREF=linux.inc>linux.inc</A> makes settings specific to Linux operating systems. |
|||
<LI>This file performs OS-dependent tests to determine the specific platform and/or architecture, |
|||
and sets other platform-dependent values. |
|||
<LI>Add a new <os>.inc file for each new operating system added. |
|||
</UL> |
|||
<LI>The <os>.<compiler>.inc file makes compiler-specific settings for a particular |
|||
<os> / <compiler> combination. |
|||
<UL> |
|||
<LI>For example, <A HREF=linux.gcc.inc>linux.gcc.inc</A> makes specific settings for using GCC on Linux OS, |
|||
and <A HREF=linux.icc.inc>linux.icc.inc</A> makes specific settings for using the Intel® C++ compiler on Linux OS. |
|||
<LI>This file sets particular compiler, assembler and linker options required when using a particular |
|||
<os> / <compiler> combination. |
|||
<LI>Add a new <os>.<compiler>.inc file for each new <os> / <compiler> combination added. |
|||
</UL> |
|||
</OL> |
|||
|
|||
<HR> |
|||
<A HREF="../index.html">Up to parent directory</A> |
|||
<P></P> |
|||
Copyright © 2005-2013 Intel Corporation. All Rights Reserved. |
|||
<P></P> |
|||
Intel and Itanium are registered trademarks or trademarks of Intel Corporation or its |
|||
subsidiaries in the United States and other countries. |
|||
<p></p> |
|||
* Other names and brands may be claimed as the property of others. |
|||
</BODY> |
|||
</HTML> |
@ -0,0 +1,145 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
COMPILE_ONLY = -c -MMD |
|||
PREPROC_ONLY = -E -x c++ |
|||
INCLUDE_KEY = -I |
|||
DEFINE_KEY = -D |
|||
OUTPUT_KEY = -o # |
|||
OUTPUTOBJ_KEY = -o # |
|||
PIC_KEY = -fPIC |
|||
WARNING_AS_ERROR_KEY = -Werror |
|||
WARNING_KEY = -Wall |
|||
TEST_WARNING_KEY = -Wshadow -Wcast-qual -Woverloaded-virtual -Wnon-virtual-dtor $(if $(findstring cc4., $(runtime)),-Wextra) |
|||
|
|||
WARNING_SUPPRESS = -Wno-parentheses -Wno-non-virtual-dtor |
|||
DYLIB_KEY = -shared |
|||
EXPORT_KEY = -Wl,--version-script, |
|||
LIBDL = -ldl |
|||
|
|||
TBB_NOSTRICT = 1 |
|||
|
|||
CPLUS = g++ |
|||
CONLY = gcc |
|||
LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY) |
|||
LIBS += -lpthread -lrt |
|||
LINK_FLAGS = -Wl,-rpath-link=. |
|||
C_FLAGS = $(CPLUS_FLAGS) |
|||
# gcc 4.4 and higher support -std=c++0x |
|||
ifneq (,$(shell gcc -dumpversion | egrep "^(4\.[4-9]|[5-9])")) |
|||
CPP11_FLAGS = -std=c++0x -D_TBB_CPP0X |
|||
endif |
|||
|
|||
# gcc 4.2 and higher support OpenMP |
|||
ifneq (,$(shell gcc -dumpversion | egrep "^(4\.[2-9]|[5-9])")) |
|||
OPENMP_FLAG = -fopenmp |
|||
endif |
|||
|
|||
ifeq ($(cfg), release) |
|||
CPLUS_FLAGS = $(ITT_NOTIFY) -g -O2 -DUSE_PTHREAD |
|||
endif |
|||
ifeq ($(cfg), debug) |
|||
CPLUS_FLAGS = -DTBB_USE_DEBUG $(ITT_NOTIFY) -g -O0 -DUSE_PTHREAD |
|||
endif |
|||
|
|||
ifneq (00,$(lambdas)$(cpp0x)) |
|||
CXX_ONLY_FLAGS += $(CPP11_FLAGS) |
|||
endif |
|||
|
|||
TBB_ASM.OBJ= |
|||
MALLOC_ASM.OBJ= |
|||
|
|||
ifeq (ia64,$(arch)) |
|||
# Position-independent code (PIC) is a must on IA-64, even for regular (not shared) executables |
|||
CPLUS_FLAGS += $(PIC_KEY) |
|||
endif |
|||
|
|||
ifeq (intel64,$(arch)) |
|||
ITT_NOTIFY = -DDO_ITT_NOTIFY |
|||
CPLUS_FLAGS += -m64 |
|||
LIB_LINK_FLAGS += -m64 |
|||
endif |
|||
|
|||
ifeq (ia32,$(arch)) |
|||
ITT_NOTIFY = -DDO_ITT_NOTIFY |
|||
CPLUS_FLAGS += -m32 -march=pentium4 |
|||
LIB_LINK_FLAGS += -m32 |
|||
endif |
|||
|
|||
ifeq (ppc64,$(arch)) |
|||
CPLUS_FLAGS += -m64 |
|||
LIB_LINK_FLAGS += -m64 |
|||
endif |
|||
|
|||
ifeq (ppc32,$(arch)) |
|||
CPLUS_FLAGS += -m32 |
|||
LIB_LINK_FLAGS += -m32 |
|||
endif |
|||
|
|||
ifeq (bgp,$(arch)) |
|||
CPLUS = mpicxx |
|||
CONLY = mpicc |
|||
endif |
|||
|
|||
# for some gcc versions on Solaris, -m64 may imply V9, but perhaps not everywhere (TODO: verify) |
|||
ifeq (sparc,$(arch)) |
|||
CPLUS_FLAGS += -mcpu=v9 -m64 |
|||
LIB_LINK_FLAGS += -mcpu=v9 -m64 |
|||
endif |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
ASM = as |
|||
ifeq (intel64,$(arch)) |
|||
ASM_FLAGS += --64 |
|||
endif |
|||
ifeq (ia32,$(arch)) |
|||
ASM_FLAGS += --32 |
|||
endif |
|||
ifeq ($(cfg),debug) |
|||
ASM_FLAGS += -g |
|||
endif |
|||
|
|||
ASSEMBLY_SOURCE=$(arch)-gas |
|||
ifeq (ia64,$(arch)) |
|||
ASM_FLAGS += -xexplicit |
|||
TBB_ASM.OBJ += atomic_support.o lock_byte.o log2.o pause.o ia64_misc.o |
|||
MALLOC_ASM.OBJ += atomic_support.o lock_byte.o pause.o log2.o |
|||
endif |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) -fno-rtti -fno-exceptions -fno-schedule-insns2 |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
@ -0,0 +1,126 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
COMPILE_ONLY = -c -MMD |
|||
PREPROC_ONLY = -E -x c++ |
|||
INCLUDE_KEY = -I |
|||
DEFINE_KEY = -D |
|||
OUTPUT_KEY = -o # |
|||
OUTPUTOBJ_KEY = -o # |
|||
PIC_KEY = -fPIC |
|||
WARNING_AS_ERROR_KEY = -Werror |
|||
WARNING_KEY = -w1 |
|||
DYLIB_KEY = -shared |
|||
EXPORT_KEY = -Wl,--version-script, |
|||
NOINTRINSIC_KEY = -fno-builtin |
|||
LIBDL = -ldl |
|||
|
|||
TBB_NOSTRICT = 1 |
|||
|
|||
CPLUS = icpc |
|||
CONLY = icc |
|||
|
|||
ITT_NOTIFY = -DDO_ITT_NOTIFY |
|||
ifeq (release,$(cfg)) |
|||
CPLUS_FLAGS = $(ITT_NOTIFY) -O2 -g -DUSE_PTHREAD |
|||
else |
|||
CPLUS_FLAGS = $(ITT_NOTIFY) -O0 -g -DUSE_PTHREAD -DTBB_USE_DEBUG |
|||
endif |
|||
|
|||
OPENMP_FLAG = -openmp |
|||
LIB_LINK_FLAGS = -shared -i-static -Wl,-soname=$(BUILDING_LIBRARY) |
|||
LIBS += -lpthread -lrt |
|||
C_FLAGS = $(CPLUS_FLAGS) |
|||
# ICC 11.0 and higher support -std=c++0x |
|||
ifneq (,$(shell icc -dumpversion | egrep "^1[1-9]\.")) |
|||
CPP11_FLAGS = -std=c++0x -D_TBB_CPP0X |
|||
endif |
|||
|
|||
# ICC 12.0 and higher provide Intel(R) Cilk Plus |
|||
ifneq (,$(shell icc -dumpversion | egrep "^1[2-9]\.")) |
|||
CILK_AVAILABLE = yes |
|||
endif |
|||
|
|||
TBB_ASM.OBJ= |
|||
MALLOC_ASM.OBJ= |
|||
|
|||
ifeq (ia32,$(arch)) |
|||
CPLUS_FLAGS += -m32 -falign-stack=maintain-16-byte |
|||
LIB_LINK_FLAGS += -m32 |
|||
endif |
|||
|
|||
ifeq (ia64,$(arch)) |
|||
ITT_NOTIFY = |
|||
# Position-independent code (PIC) is a must on IA-64, even for regular (not shared) executables |
|||
# strict-ansi does not work with <signal.h> on RHEL 4 AS |
|||
CPLUS_FLAGS += $(PIC_KEY) $(if $(findstring cc3.,$(runtime)),-ansi,-strict-ansi) |
|||
else |
|||
CPLUS_FLAGS += -strict-ansi |
|||
endif |
|||
|
|||
ifneq (,$(codecov)) |
|||
# no tool support for code coverage, need profile data generation |
|||
ITT_NOTIFY = -prof-genx |
|||
endif |
|||
|
|||
ifneq (00,$(lambdas)$(cpp0x)) |
|||
CPLUS_FLAGS += $(CPP11_FLAGS) |
|||
endif |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
ASM = as |
|||
ifeq (intel64,$(arch)) |
|||
ASM_FLAGS += --64 |
|||
endif |
|||
ifeq (ia32,$(arch)) |
|||
ASM_FLAGS += --32 |
|||
endif |
|||
ifeq ($(cfg),debug) |
|||
ASM_FLAGS += -g |
|||
endif |
|||
|
|||
ASSEMBLY_SOURCE=$(arch)-gas |
|||
ifeq (ia64,$(arch)) |
|||
ASM_FLAGS += -xexplicit |
|||
TBB_ASM.OBJ += atomic_support.o lock_byte.o log2.o pause.o ia64_misc.o |
|||
MALLOC_ASM.OBJ += atomic_support.o lock_byte.o pause.o log2.o |
|||
endif |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) -fno-rtti -fno-exceptions |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
@ -0,0 +1,141 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
####### Detections and Commands ############################################### |
|||
|
|||
ifeq (icc,$(compiler)) |
|||
export COMPILER_VERSION := ICC: $(shell icc -V </dev/null 2>&1 | grep 'Version') |
|||
ifneq (,$(findstring IA-32, $(COMPILER_VERSION))) |
|||
export arch:=ia32 |
|||
endif |
|||
ifneq (,$(findstring Intel(R) 64, $(COMPILER_VERSION))) |
|||
export arch:=intel64 |
|||
endif |
|||
ifneq (,$(findstring IA-64, $(COMPILER_VERSION))) |
|||
export arch:=ia64 |
|||
endif |
|||
ifeq (,$(arch)) |
|||
$(warning "Unknown Intel compiler") |
|||
endif |
|||
endif |
|||
|
|||
ifndef arch |
|||
uname_m:=$(shell uname -m) |
|||
ifeq ($(uname_m),i686) |
|||
export arch:=ia32 |
|||
endif |
|||
ifeq ($(uname_m),ia64) |
|||
export arch:=ia64 |
|||
endif |
|||
ifeq ($(uname_m),x86_64) |
|||
export arch:=intel64 |
|||
endif |
|||
ifeq ($(uname_m),sparc64) |
|||
export arch:=sparc |
|||
endif |
|||
ifndef arch |
|||
export arch:=$(uname_m) |
|||
endif |
|||
endif |
|||
|
|||
ifndef runtime |
|||
gcc_version = $(shell gcc -dumpversion) |
|||
os_version:=$(shell uname -r) |
|||
os_kernel_version:=$(shell uname -r | sed -e 's/-.*$$//') |
|||
export os_glibc_version_full:=$(shell getconf GNU_LIBC_VERSION | grep glibc | sed -e 's/^glibc //') |
|||
os_glibc_version:=$(shell echo "$(os_glibc_version_full)" | sed -e '2,$$d' -e 's/-.*$$//') |
|||
export runtime:=cc$(gcc_version)_libc$(os_glibc_version)_kernel$(os_kernel_version) |
|||
endif |
|||
|
|||
native_compiler := gcc |
|||
export compiler ?= gcc |
|||
debugger ?= gdb |
|||
|
|||
CMD=sh -c |
|||
CWD=$(shell pwd) |
|||
CP=cp |
|||
RM?=rm -f |
|||
RD?=rmdir |
|||
MD?=mkdir -p |
|||
NUL= /dev/null |
|||
SLASH=/ |
|||
MAKE_VERSIONS=sh $(tbb_root)/build/version_info_linux.sh $(CPLUS) $(CPLUS_FLAGS) $(INCLUDES) >version_string.ver |
|||
MAKE_TBBVARS=sh $(tbb_root)/build/generate_tbbvars.sh |
|||
|
|||
ifdef LD_LIBRARY_PATH |
|||
export LD_LIBRARY_PATH := .:$(LD_LIBRARY_PATH) |
|||
else |
|||
export LD_LIBRARY_PATH := . |
|||
endif |
|||
|
|||
####### Build settings ######################################################## |
|||
|
|||
OBJ = o |
|||
DLL = so |
|||
LIBEXT = so |
|||
SONAME_SUFFIX =$(shell grep TBB_COMPATIBLE_INTERFACE_VERSION $(tbb_root)/include/tbb/tbb_stddef.h | egrep -o [0-9.]+) |
|||
|
|||
ifeq ($(arch),ia64) |
|||
def_prefix = lin64ipf |
|||
endif |
|||
ifeq ($(arch),sparc) |
|||
def_prefix = lin64 |
|||
endif |
|||
ifeq (,$(def_prefix)) |
|||
ifeq (64,$(findstring 64,$(arch))) |
|||
def_prefix = lin64 |
|||
else |
|||
def_prefix = lin32 |
|||
endif |
|||
endif |
|||
TBB.LST = $(tbb_root)/src/tbb/$(def_prefix)-tbb-export.lst |
|||
TBB.DEF = $(TBB.LST:.lst=.def) |
|||
|
|||
TBB.DLL = $(TBB_NO_VERSION.DLL).$(SONAME_SUFFIX) |
|||
TBB.LIB = $(TBB.DLL) |
|||
TBB_NO_VERSION.DLL=libtbb$(CPF_SUFFIX)$(DEBUG_SUFFIX).$(DLL) |
|||
LINK_TBB.LIB = $(TBB_NO_VERSION.DLL) |
|||
|
|||
MALLOC_NO_VERSION.DLL = libtbbmalloc$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOC.DEF = $(MALLOC_ROOT)/$(def_prefix)-tbbmalloc-export.def |
|||
MALLOC.DLL = $(MALLOC_NO_VERSION.DLL).$(SONAME_SUFFIX) |
|||
MALLOC.LIB = $(MALLOC_NO_VERSION.DLL) |
|||
LINK_MALLOC.LIB = $(MALLOC_NO_VERSION.DLL) |
|||
|
|||
MALLOCPROXY_NO_VERSION.DLL = libtbbmalloc_proxy$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOCPROXY.DEF = $(MALLOC_ROOT)/$(def_prefix)-proxy-export.def |
|||
MALLOCPROXY.DLL = $(MALLOCPROXY_NO_VERSION.DLL).$(SONAME_SUFFIX) |
|||
MALLOCPROXY.LIB = $(MALLOCPROXY_NO_VERSION.DLL) |
|||
LINK_MALLOCPROXY.LIB = $(MALLOCPROXY.LIB) |
|||
|
|||
RML_NO_VERSION.DLL = libirml$(DEBUG_SUFFIX).$(DLL) |
|||
RML.DEF = $(RML_SERVER_ROOT)/lin-rml-export.def |
|||
RML.DLL = $(RML_NO_VERSION.DLL).1 |
|||
RML.LIB = $(RML_NO_VERSION.DLL) |
|||
|
|||
TBB_NOSTRICT=1 |
|||
|
|||
TEST_LAUNCHER=sh $(tbb_root)/build/test_launcher.sh $(largs) |
@ -0,0 +1,114 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
####### Detections and Commands ############################################### |
|||
|
|||
COMPILE_ONLY = -c |
|||
PREPROC_ONLY = -E -qsourcetype=c |
|||
INCLUDE_KEY = -I |
|||
DEFINE_KEY = -D |
|||
OUTPUT_KEY = -o # |
|||
OUTPUTOBJ_KEY = -o # |
|||
PIC_KEY = -qpic |
|||
WARNING_AS_ERROR_KEY = -qhalt=w |
|||
WARNING_KEY = |
|||
TEST_WARNING_KEY = |
|||
|
|||
WARNING_SUPPRESS = |
|||
DYLIB_KEY = -qmkshrobj |
|||
EXPORT_KEY = -Wl,--version-script, |
|||
LIBDL = -ldl |
|||
|
|||
TBB_NOSTRICT = 1 |
|||
|
|||
CPLUS = xlc++_r |
|||
CONLY = xlc_r |
|||
LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY) |
|||
LIBS = -lpthread -lrt |
|||
C_FLAGS = $(CPLUS_FLAGS) |
|||
|
|||
ifeq ($(cfg), release) |
|||
CPLUS_FLAGS = $(ITT_NOTIFY) -O2 -DUSE_PTHREAD |
|||
endif |
|||
ifeq ($(cfg), debug) |
|||
CPLUS_FLAGS = -DTBB_USE_DEBUG $(ITT_NOTIFY) -g -O0 -DUSE_PTHREAD |
|||
endif |
|||
|
|||
# Adding directly to CPLUS_FLAGS instead of to WARNING_SUPPRESS because otherwise it would not be used in several tests (why not?). |
|||
# Suppress warnings like: |
|||
# - "1500-029: (W) WARNING: subprogram [...] could not be inlined into [...]." |
|||
# - "1501-201: (W) Maximum number of common component diagnostics, 10 has been exceeded." |
|||
# see http://www-01.ibm.com/support/docview.wss?uid=swg1LI72843 |
|||
# it seems that the internal compiler error that would ensue has now been avoided, making the condition harmless |
|||
# - "1540-0198 (W) The omitted keyword "private" is assumed for base class "no_copy"." |
|||
# - "1540-0822 (W) The name "__FUNCTION__" must not be defined as a macro." |
|||
CPLUS_FLAGS += -qsuppress=1500-029:1501-201:1540-0198:1540-0822 |
|||
|
|||
ASM= |
|||
ASM_FLAGS= |
|||
|
|||
TBB_ASM.OBJ= |
|||
|
|||
ifeq (intel64,$(arch)) |
|||
ITT_NOTIFY = -DDO_ITT_NOTIFY |
|||
CPLUS_FLAGS += -q64 |
|||
LIB_LINK_FLAGS += -q64 |
|||
endif |
|||
|
|||
# TODO: equivalent for -march=pentium4 in CPLUS_FLAGS |
|||
ifeq (ia32,$(arch)) |
|||
ITT_NOTIFY = -DDO_ITT_NOTIFY |
|||
CPLUS_FLAGS += -q32 -qarch=pentium4 |
|||
LIB_LINK_FLAGS += -q32 |
|||
endif |
|||
|
|||
ifeq (ppc64,$(arch)) |
|||
CPLUS_FLAGS += -q64 |
|||
LIB_LINK_FLAGS += -q64 |
|||
endif |
|||
|
|||
ifeq (ppc32,$(arch)) |
|||
CPLUS_FLAGS += -q32 |
|||
LIB_LINK_FLAGS += -q32 |
|||
endif |
|||
|
|||
ifeq (bgp,$(arch)) |
|||
CPLUS = bgxlC_r |
|||
CONLY = bgxlc_r |
|||
endif |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
# Suppress innumerable warnings like "1540-1088 (W) The exception specification is being ignored." |
|||
# Suppress warnings like "1540-1090 (I) The destructor of "lock" might not be called." |
|||
# TODO: aren't these warnings an indication that -qnoeh might not be appropriate? |
|||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) -qnortti -qnoeh -qsuppress=1540-1088:1540-1090 |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
@ -0,0 +1,120 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
CPLUS = clang++ |
|||
CONLY = clang |
|||
COMPILE_ONLY = -c -MMD |
|||
PREPROC_ONLY = -E -x c++ |
|||
INCLUDE_KEY = -I |
|||
DEFINE_KEY = -D |
|||
OUTPUT_KEY = -o # |
|||
OUTPUTOBJ_KEY = -o # |
|||
PIC_KEY = -fPIC |
|||
WARNING_AS_ERROR_KEY = -Werror |
|||
WARNING_KEY = -Wall |
|||
TEST_WARNING_KEY = -Wextra -Wshadow -Wcast-qual -Woverloaded-virtual -Wnon-virtual-dtor |
|||
WARNING_SUPPRESS = -Wno-non-virtual-dtor |
|||
DYLIB_KEY = -dynamiclib |
|||
EXPORT_KEY = -Wl,-exported_symbols_list, |
|||
LIBDL = -ldl |
|||
|
|||
LIBS = -lpthread |
|||
LINK_FLAGS = |
|||
LIB_LINK_FLAGS = -dynamiclib |
|||
C_FLAGS = $(CPLUS_FLAGS) |
|||
|
|||
ifeq ($(cfg), release) |
|||
CPLUS_FLAGS = -O2 |
|||
else |
|||
CPLUS_FLAGS = -g -O0 -DTBB_USE_DEBUG |
|||
endif |
|||
|
|||
CPLUS_FLAGS += -DUSE_PTHREAD |
|||
|
|||
ifeq (libc++,$(stdlib)) |
|||
LIBS += -stdlib=libc++ |
|||
CPLUS_FLAGS += -stdlib=libc++ |
|||
endif |
|||
|
|||
CPP11_FLAGS = -std=c++11 -D_TBB_CPP0X |
|||
|
|||
ifneq (00,$(lambdas)$(cpp0x)) |
|||
CXX_ONLY_FLAGS += $(CPP11_FLAGS) |
|||
endif |
|||
|
|||
ifeq (intel64,$(arch)) |
|||
CPLUS_FLAGS += -m64 |
|||
LINK_FLAGS += -m64 |
|||
LIB_LINK_FLAGS += -m64 |
|||
endif |
|||
|
|||
ifeq (ia32,$(arch)) |
|||
CPLUS_FLAGS += -m32 |
|||
LINK_FLAGS += -m32 |
|||
LIB_LINK_FLAGS += -m32 |
|||
endif |
|||
|
|||
ifeq (ppc64,$(arch)) |
|||
CPLUS_FLAGS += -arch ppc64 |
|||
LINK_FLAGS += -arch ppc64 |
|||
LIB_LINK_FLAGS += -arch ppc64 |
|||
endif |
|||
|
|||
ifeq (ppc32,$(arch)) |
|||
CPLUS_FLAGS += -arch ppc |
|||
LINK_FLAGS += -arch ppc |
|||
LIB_LINK_FLAGS += -arch ppc |
|||
endif |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
ASM = as |
|||
ifeq (intel64,$(arch)) |
|||
ASM_FLAGS += -arch x86_64 |
|||
endif |
|||
ifeq (ia32,$(arch)) |
|||
ASM_FLAGS += -arch i386 |
|||
endif |
|||
ifeq ($(cfg), debug) |
|||
ASM_FLAGS += -g |
|||
endif |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) -fno-rtti -fno-exceptions |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
@ -0,0 +1,109 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
CPLUS = g++ |
|||
CONLY = gcc |
|||
COMPILE_ONLY = -c -MMD |
|||
PREPROC_ONLY = -E -x c++ |
|||
INCLUDE_KEY = -I |
|||
DEFINE_KEY = -D |
|||
OUTPUT_KEY = -o # |
|||
OUTPUTOBJ_KEY = -o # |
|||
PIC_KEY = -fPIC |
|||
WARNING_AS_ERROR_KEY = -Werror |
|||
WARNING_KEY = -Wall |
|||
TEST_WARNING_KEY = -Wextra -Wshadow -Wcast-qual -Woverloaded-virtual -Wnon-virtual-dtor |
|||
WARNING_SUPPRESS = -Wno-non-virtual-dtor |
|||
DYLIB_KEY = -dynamiclib |
|||
EXPORT_KEY = -Wl,-exported_symbols_list, |
|||
LIBDL = -ldl |
|||
|
|||
LIBS = -lpthread |
|||
LINK_FLAGS = |
|||
LIB_LINK_FLAGS = -dynamiclib |
|||
C_FLAGS = $(CPLUS_FLAGS) |
|||
|
|||
ifeq ($(cfg), release) |
|||
CPLUS_FLAGS = -O2 |
|||
else |
|||
CPLUS_FLAGS = -g -O0 -DTBB_USE_DEBUG |
|||
endif |
|||
|
|||
CPLUS_FLAGS += -DUSE_PTHREAD |
|||
|
|||
ifeq (intel64,$(arch)) |
|||
CPLUS_FLAGS += -m64 |
|||
LINK_FLAGS += -m64 |
|||
LIB_LINK_FLAGS += -m64 |
|||
endif |
|||
|
|||
ifeq (ia32,$(arch)) |
|||
CPLUS_FLAGS += -m32 |
|||
LINK_FLAGS += -m32 |
|||
LIB_LINK_FLAGS += -m32 |
|||
endif |
|||
|
|||
ifeq (ppc64,$(arch)) |
|||
CPLUS_FLAGS += -arch ppc64 |
|||
LINK_FLAGS += -arch ppc64 |
|||
LIB_LINK_FLAGS += -arch ppc64 |
|||
endif |
|||
|
|||
ifeq (ppc32,$(arch)) |
|||
CPLUS_FLAGS += -arch ppc |
|||
LINK_FLAGS += -arch ppc |
|||
LIB_LINK_FLAGS += -arch ppc |
|||
endif |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
ASM = as |
|||
ifeq (intel64,$(arch)) |
|||
ASM_FLAGS += -arch x86_64 |
|||
endif |
|||
ifeq (ia32,$(arch)) |
|||
ASM_FLAGS += -arch i386 |
|||
endif |
|||
ifeq ($(cfg), debug) |
|||
ASM_FLAGS += -g |
|||
endif |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) -fno-rtti -fno-exceptions -fno-schedule-insns2 |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
@ -0,0 +1,103 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
CPLUS = icpc |
|||
CONLY = icc |
|||
COMPILE_ONLY = -c -MMD |
|||
PREPROC_ONLY = -E -x c++ |
|||
INCLUDE_KEY = -I |
|||
DEFINE_KEY = -D |
|||
OUTPUT_KEY = -o # |
|||
OUTPUTOBJ_KEY = -o # |
|||
PIC_KEY = -fPIC |
|||
WARNING_AS_ERROR_KEY = -Werror |
|||
WARNING_KEY = -w1 |
|||
DYLIB_KEY = -dynamiclib |
|||
EXPORT_KEY = -Wl,-exported_symbols_list, |
|||
LIBDL = -ldl |
|||
|
|||
OPENMP_FLAG = -openmp |
|||
LIBS = -lpthread |
|||
LINK_FLAGS = |
|||
LIB_LINK_FLAGS = -dynamiclib -i-static |
|||
C_FLAGS = $(CPLUS_FLAGS) |
|||
# ICC 11.0 and higher support -std=c++0x |
|||
ifneq (,$(shell icc -dumpversion | egrep "^1[1-9]\.")) |
|||
CPP11_FLAGS = -std=c++0x -D_TBB_CPP0X |
|||
endif |
|||
|
|||
# ICC 12.0 and higher provide Intel(R) Cilk Plus |
|||
ifneq (,$(shell icc -dumpversion | egrep "^1[2-9]\.")) |
|||
CILK_AVAILABLE = yes |
|||
endif |
|||
|
|||
ifeq ($(cfg), release) |
|||
CPLUS_FLAGS = -O2 -fno-omit-frame-pointer |
|||
else |
|||
CPLUS_FLAGS = -g -O0 -DTBB_USE_DEBUG |
|||
endif |
|||
|
|||
CPLUS_FLAGS += -DUSE_PTHREAD |
|||
|
|||
ifneq (,$(codecov)) |
|||
CPLUS_FLAGS += -prof-genx |
|||
endif |
|||
|
|||
ifneq (00,$(lambdas)$(cpp0x)) |
|||
CPLUS_FLAGS += $(CPP11_FLAGS) |
|||
endif |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
ASM = as |
|||
ifeq (intel64,$(arch)) |
|||
ASM_FLAGS += -arch x86_64 |
|||
endif |
|||
ifeq (ia32,$(arch)) |
|||
CPLUS_FLAGS += -m32 |
|||
LINK_FLAGS += -m32 |
|||
LIB_LINK_FLAGS += -m32 |
|||
ASM_FLAGS += -arch i386 |
|||
endif |
|||
ifeq ($(cfg), debug) |
|||
ASM_FLAGS += -g |
|||
endif |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) -fno-rtti -fno-exceptions |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
@ -0,0 +1,105 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
####### Detections and Commands ############################################### |
|||
|
|||
ifeq (icc,$(compiler)) |
|||
export COMPILER_VERSION := ICC: $(shell icc -V </dev/null 2>&1 | grep 'Version') |
|||
ifneq (,$(findstring IA-32, $(COMPILER_VERSION))) |
|||
export arch:=ia32 |
|||
endif |
|||
ifneq (,$(findstring Intel(R) 64, $(COMPILER_VERSION))) |
|||
export arch:=intel64 |
|||
endif |
|||
ifeq (,$(arch)) |
|||
$(warning "Unknown Intel compiler") |
|||
endif |
|||
endif |
|||
|
|||
ifndef arch |
|||
ifeq ($(shell /usr/sbin/sysctl -n hw.machine),Power Macintosh) |
|||
ifeq ($(shell /usr/sbin/sysctl -n hw.optional.64bitops),1) |
|||
export arch:=ppc64 |
|||
else |
|||
export arch:=ppc32 |
|||
endif |
|||
else |
|||
ifeq ($(shell /usr/sbin/sysctl -n hw.optional.x86_64 2>/dev/null),1) |
|||
export arch:=intel64 |
|||
else |
|||
export arch:=ia32 |
|||
endif |
|||
endif |
|||
endif |
|||
|
|||
ifndef runtime |
|||
gcc_version = $(shell gcc -dumpversion) |
|||
os_version:=$(shell /usr/bin/sw_vers -productVersion) |
|||
export runtime:=cc$(gcc_version)_os$(os_version) |
|||
endif |
|||
|
|||
native_compiler := gcc |
|||
export compiler ?= gcc |
|||
debugger ?= gdb |
|||
|
|||
CMD=$(SHELL) -c |
|||
CWD=$(shell pwd) |
|||
RM?=rm -f |
|||
RD?=rmdir |
|||
MD?=mkdir -p |
|||
NUL= /dev/null |
|||
SLASH=/ |
|||
MAKE_VERSIONS=sh $(tbb_root)/build/version_info_macos.sh $(CPLUS) $(CPLUS_FLAGS) $(INCLUDES) >version_string.ver |
|||
MAKE_TBBVARS=sh $(tbb_root)/build/generate_tbbvars.sh |
|||
|
|||
ifdef DYLD_LIBRARY_PATH |
|||
export DYLD_LIBRARY_PATH := .:$(DYLD_LIBRARY_PATH) |
|||
else |
|||
export DYLD_LIBRARY_PATH := . |
|||
endif |
|||
|
|||
####### Build settings ######################################################## |
|||
|
|||
OBJ=o |
|||
DLL=dylib |
|||
LIBEXT=dylib |
|||
|
|||
def_prefix = $(if $(findstring 64,$(arch)),mac64,mac32) |
|||
|
|||
TBB.LST = $(tbb_root)/src/tbb/$(def_prefix)-tbb-export.lst |
|||
TBB.DEF = $(TBB.LST:.lst=.def) |
|||
TBB.DLL = libtbb$(CPF_SUFFIX)$(DEBUG_SUFFIX).$(DLL) |
|||
TBB.LIB = $(TBB.DLL) |
|||
LINK_TBB.LIB = $(TBB.LIB) |
|||
|
|||
MALLOC.DEF = $(MALLOC_ROOT)/$(def_prefix)-tbbmalloc-export.def |
|||
MALLOC.DLL = libtbbmalloc$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOC.LIB = $(MALLOC.DLL) |
|||
LINK_MALLOC.LIB = $(MALLOC.LIB) |
|||
|
|||
TBB_NOSTRICT=1 |
|||
|
|||
TEST_LAUNCHER=sh $(tbb_root)/build/test_launcher.sh $(largs) |
@ -0,0 +1,90 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
COMPILE_ONLY = -c -MMD |
|||
PREPROC_ONLY = -E -x c++ |
|||
INCLUDE_KEY = -I |
|||
DEFINE_KEY = -D |
|||
OUTPUT_KEY = -o # |
|||
OUTPUTOBJ_KEY = -o # |
|||
PIC_KEY = -fPIC |
|||
WARNING_AS_ERROR_KEY = -Werror |
|||
WARNING_KEY = -w1 |
|||
DYLIB_KEY = -shared |
|||
EXPORT_KEY = -Wl,--version-script, |
|||
NOINTRINSIC_KEY = -fno-builtin |
|||
LIBDL = -ldl |
|||
|
|||
TBB_NOSTRICT = 1 |
|||
|
|||
CPLUS = icpc |
|||
CONLY = icc |
|||
|
|||
ifeq (release,$(cfg)) |
|||
CPLUS_FLAGS = -O2 -g -DUSE_PTHREAD |
|||
else |
|||
CPLUS_FLAGS = -O0 -g -DUSE_PTHREAD -DTBB_USE_DEBUG |
|||
endif |
|||
|
|||
ifneq (,$(codecov)) |
|||
CPLUS_FLAGS += -prof-genx |
|||
endif |
|||
|
|||
OPENMP_FLAG = -openmp |
|||
LIB_LINK_FLAGS = -shared -i-static -Wl,-soname=$(BUILDING_LIBRARY) |
|||
LIBS += -lpthread -lrt |
|||
C_FLAGS = $(CPLUS_FLAGS) |
|||
CPP11_FLAGS = -std=c++0x -D_TBB_CPP0X |
|||
CILK_AVAILABLE = yes |
|||
|
|||
TBB_ASM.OBJ= |
|||
MALLOC_ASM.OBJ= |
|||
|
|||
ifneq (00,$(lambdas)$(cpp0x)) |
|||
CPLUS_FLAGS += $(CPP11_FLAGS) |
|||
endif |
|||
|
|||
CPLUS_FLAGS += -DHARNESS_INCOMPLETE_SOURCES=1 -D__TBB_MIC_NATIVE -DTBB_USE_EXCEPTIONS=0 -opt-streaming-stores never |
|||
CPLUS += -mmic |
|||
CONLY += -mmic |
|||
LINK_FLAGS = -Wl,-rpath-link=. |
|||
# Tell the icc to not link against libcilk*. Otherwise icc tries to link and emits a warning message. |
|||
LIB_LINK_LIBS += -no-intel-extensions |
|||
# Do not depend on libirc etc dynamic libs. It makes 'native' execution easier for the users. |
|||
LIB_LINK_LIBS += -static-intel |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) -fno-rtti -fno-exceptions |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
|
|||
|
@ -0,0 +1,47 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
ifeq ($(tbb_os),mic) |
|||
$(error MIC supports only cross-compilation. Specify "target=mic" instead.) |
|||
endif |
|||
|
|||
ifneq ($(BUILDING_PHASE),1) |
|||
# The same build prefix should be used in offload.inc |
|||
tbb_build_prefix?=mic_icc$(CPF_SUFFIX) |
|||
endif |
|||
|
|||
MAKE_VERSIONS=sh $(tbb_root)/build/version_info_linux.sh $(CPLUS) $(CPLUS_FLAGS) $(INCLUDES) >version_string.ver |
|||
MAKE_TBBVARS=sh $(tbb_root)/build/generate_tbbvars.sh |
|||
def_prefix=lin64 |
|||
|
|||
TEST_LAUNCHER= |
|||
run_cmd ?= bash $(tbb_root)/build/mic.linux.launcher.sh $(largs) |
|||
|
|||
# detects whether examples are being built. |
|||
ifeq ($(BUILDING_PHASE),0) |
|||
export UI = con |
|||
export x64 = 64 |
|||
endif # examples |
@ -0,0 +1,111 @@ |
|||
#!/bin/bash |
|||
# |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
# Usage: |
|||
# mic.linux.launcher.sh [-v] [-s] [-r <repeats>] [-u] [-l <library>] <executable> <arg1> <arg2> <argN> |
|||
# where: -v enables verbose output |
|||
# where: -s enables stress testing unless ctrl-c is pressed |
|||
# where: -r <repeats> specifies number of times to repeat execution |
|||
# where: -u is ignored |
|||
# where: -l <library> specifies the library name to be assigned to LD_PRELOAD |
|||
# |
|||
# Libs and executable necessary for testing should be present in the current directory before running. |
|||
# Note: Do not remove the redirections to '/dev/null' in the script, otherwise the nightly test system will fail. |
|||
# |
|||
trap 'echo Error at line $LINENO while executing "$BASH_COMMAND"' ERR # |
|||
trap 'echo -e "\n*** Interrupted ***" && exit 1' SIGINT SIGQUIT # |
|||
# Process the optional arguments if present |
|||
if [ "x$1" = "x-v" ]; then shift 1; else SUPPRESS='>/dev/null'; fi # |
|||
if [ "x$1" = "x-s" ]; then shift 1; echo Doing stress testing. Press Ctrl-C to terminate |
|||
run_prefix+='rep() { while :; do $*; done; }; rep '; fi # |
|||
if [ "x$1" = "x-r" ]; then # |
|||
run_prefix+="rep() { for i in \$(seq 1 $2); do echo \$i of $2:; \$*; done; }; rep " # |
|||
shift 2; fi # |
|||
[ "x$1" = "x-u" ] && shift 1 # |
|||
if [ "x$1" = "x-l" ]; then { # |
|||
ldd_list+="$2 "# |
|||
run_prefix+=" LD_PRELOAD=$2" # |
|||
shift 2 # |
|||
}; fi # |
|||
# Collect the executable name |
|||
fexename="$1" # |
|||
exename=`basename $1` # |
|||
shift # |
|||
# |
|||
RSH="sudo ssh mic0" # |
|||
RCP="sudo scp" # |
|||
# |
|||
# Prepare the target directory on the device |
|||
currentdir=`basename $PWD` # |
|||
targetdir=${TEST_DIRECTORY:-/mic0fs/$USER/$currentdir} # |
|||
# |
|||
# Remove leftover target directory on the device |
|||
eval "$RSH \"rm -r $targetdir; mkdir -p $targetdir\" $SUPPRESS 2>&1 || exit \$?" # |
|||
eval "$RCP $fexename mic0:$targetdir/ $SUPPRESS || exit \$?" # |
|||
# |
|||
# Collect the list of files to transfer to the target device, starting with executable itself. |
|||
ldd_list+="libtbbmalloc*.so* `$RSH ldd $targetdir/$exename | grep = | cut -d= -f1 2>/dev/null`" # |
|||
fnamelist="" # |
|||
# |
|||
# Find the libraries and add them to the list. |
|||
# For example, go through MIC_LD_LIBRARY_PATH and add TBB libraries from the first |
|||
# directory that contains tbb files |
|||
mic_dir_list=`echo .:$MIC_LD_LIBRARY_PATH | tr : " "` # |
|||
for name in $ldd_list; do # adds the first matched name in specified dirs |
|||
fnamelist+="`find $mic_dir_list -name $name -a -readable -print -quit 2>/dev/null` " # |
|||
done # |
|||
# |
|||
# Add any libraries built for specific tests. |
|||
exeroot=${exename%\.*} # |
|||
fnamelist+=`ls ${exeroot}*.so ${exeroot}*.so.* 2>/dev/null`||: # |
|||
# |
|||
# Transfer collected executable and library files to the target device. |
|||
eval "$RCP $fnamelist mic0:$targetdir/ $SUPPRESS || exit \$?" # |
|||
# |
|||
# Transfer input files used by example codes by scanning the executable argument list. |
|||
for fullname in "$@"; do if [ -r $fullname ]; then { # |
|||
directory=$(dirname $fullname) # |
|||
filename=$(basename $fullname) # |
|||
# strip leading "." from fullname if present |
|||
[ "$directory" = "." ] && directory="" && fullname="$filename" # |
|||
# Create the target directory to hold input file if necessary |
|||
[ ! -z "$directory" ] && $RSH "mkdir -p $targetdir/$directory" $SUPPRESS 2>&1 # |
|||
# Transfer the input file to corresponding directory on target device |
|||
eval "$RCP $fullname mic0:$targetdir/$fullname $SUPPRESS 2>&1 || exit \$?" # |
|||
}; fi; done # |
|||
# |
|||
args=$* # |
|||
# Run the test on the target device |
|||
kill_interrupt() { # |
|||
echo -e "\n*** Killing remote $exename ***" && $RSH "killall $exename" # |
|||
} # kill target process |
|||
trap 'kill_interrupt' SIGINT SIGQUIT # trap keyboard interrupt (control-c) |
|||
trap - ERR # |
|||
$RSH "cd $targetdir; export LD_LIBRARY_PATH=.:\$LD_LIBRARY_PATH; $run_prefix ./$exename $args" # |
|||
# Return the exit code of the test. |
|||
exit $? # |
@ -0,0 +1,170 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
ifneq (mic,$(offload)) |
|||
$(error File mic.offload.inc should not be included directly. Use offload=mic instead.) |
|||
endif |
|||
ifneq (icc,$(compiler)) |
|||
$(error Only Intel(R) Compiler is supported for MIC offload compilation) |
|||
endif |
|||
|
|||
tbb_offload_build_prefix?=mic_offload_icc$(CPF_SUFFIX) |
|||
# The same build prefix should be used in mic.linux.inc |
|||
export tbb_mic_build_prefix?=mic_icc$(CPF_SUFFIX) |
|||
initial_tbb_root:=$(tbb_root) |
|||
|
|||
ifndef BUILDING_PHASE |
|||
tbb_native_debug: |
|||
$(MAKE) tbb_debug target=mic compiler=icc offload= tbb_root=$(initial_tbb_root) |
|||
tbb_native_release: |
|||
$(MAKE) tbb_release target=mic compiler=icc offload= tbb_root=$(initial_tbb_root) |
|||
tbbmalloc_native_debug: |
|||
$(MAKE) tbbmalloc_debug target=mic compiler=icc offload= tbb_root=$(initial_tbb_root) |
|||
tbbmalloc_native_release: |
|||
$(MAKE) tbbmalloc_release target=mic compiler=icc offload= tbb_root=$(initial_tbb_root) |
|||
rml_native_debug: |
|||
$(MAKE) rml_debug target=mic compiler=icc offload= tbb_root=$(initial_tbb_root) |
|||
rml_native_release: |
|||
$(MAKE) rml_release target=mic compiler=icc offload= tbb_root=$(initial_tbb_root) |
|||
tbb_native: |
|||
$(MAKE) tbb target=mic compiler=icc offload= tbb_root=$(initial_tbb_root) |
|||
tbbmalloc_native: |
|||
$(MAKE) tbbmalloc target=mic compiler=icc offload= tbb_root=$(initial_tbb_root) |
|||
rml_native: |
|||
$(MAKE) rml target=mic compiler=icc offload= tbb_root=$(initial_tbb_root) |
|||
tbb_host_debug: |
|||
$(MAKE) tbb_debug compiler=icc offload= tbb_root=$(initial_tbb_root) |
|||
tbb_host_release: |
|||
$(MAKE) tbb_release compiler=icc offload= tbb_root=$(initial_tbb_root) |
|||
tbbmalloc_host_debug: |
|||
$(MAKE) tbbmalloc_debug compiler=icc offload= tbb_root=$(initial_tbb_root) |
|||
tbbmalloc_host_release: |
|||
$(MAKE) tbbmalloc_release compiler=icc offload= tbb_root=$(initial_tbb_root) |
|||
|
|||
# The work_dir variable can not be set via target-specific variable mechanism |
|||
# since it will affect other targets on which the target depends. |
|||
# So work_dir is set via eval function inside the recipe. |
|||
prepare_test_offload_dir_debug: initial_tbb_build_dir:=$(tbb_build_dir) |
|||
prepare_test_offload_dir_debug: tbb_host_debug tbbmalloc_host_debug tbb_native_debug tbbmalloc_native_debug |
|||
$(eval work_dir=$(initial_tbb_build_dir)$(SLASH)$(tbb_offload_build_prefix)) |
|||
$(shell $(MD) "$(work_dir)_debug$(SLASH)mic" >$(NUL) 2>$(NUL)) |
|||
$(shell $(CP) "$(initial_tbb_build_dir)$(SLASH)$(tbb_build_prefix)_debug$(SLASH)lib"* "$(work_dir)_debug" >$(NUL) 2>$(NUL)) |
|||
$(shell $(CP) "$(initial_tbb_build_dir)$(SLASH)$(tbb_mic_build_prefix)_debug$(SLASH)lib"* "$(work_dir)_debug$(SLASH)mic" >$(NUL) 2>$(NUL)) |
|||
$(eval export TEST_COMPILATION=1) |
|||
|
|||
prepare_test_offload_dir_release: initial_tbb_build_dir:=$(tbb_build_dir) |
|||
prepare_test_offload_dir_release: tbb_host_release tbbmalloc_host_release tbb_native_release tbbmalloc_native_release |
|||
$(eval work_dir=$(initial_tbb_build_dir)$(SLASH)$(tbb_offload_build_prefix)) |
|||
$(shell $(MD) "$(work_dir)_release$(SLASH)mic" >$(NUL) 2>$(NUL)) |
|||
$(shell $(CP) "$(initial_tbb_build_dir)$(SLASH)$(tbb_build_prefix)_release$(SLASH)lib"* "$(work_dir)_release" >$(NUL) 2>$(NUL)) |
|||
$(shell $(CP) "$(initial_tbb_build_dir)$(SLASH)$(tbb_mic_build_prefix)_release$(SLASH)lib"* "$(work_dir)_release$(SLASH)mic" >$(NUL) 2>$(NUL)) |
|||
$(eval export TEST_COMPILATION=1) |
|||
|
|||
prepare_test_offload_dir: initial_tbb_build_dir:=$(tbb_build_dir) |
|||
prepare_test_offload_dir: tbb tbbmalloc tbb_native tbbmalloc_native |
|||
$(eval work_dir=$(initial_tbb_build_dir)$(SLASH)$(tbb_offload_build_prefix)) |
|||
$(shell $(MD) "$(work_dir)_debug$(SLASH)mic" >$(NUL) 2>$(NUL)) |
|||
$(shell $(MD) "$(work_dir)_release$(SLASH)mic" >$(NUL) 2>$(NUL)) |
|||
$(shell $(CP) "$(initial_tbb_build_dir)$(SLASH)$(tbb_build_prefix)_debug$(SLASH)lib"* "$(work_dir)_debug" >$(NUL) 2>$(NUL)) |
|||
$(shell $(CP) "$(initial_tbb_build_dir)$(SLASH)$(tbb_build_prefix)_release$(SLASH)lib"* "$(work_dir)_release" >$(NUL) 2>$(NUL)) |
|||
$(shell $(CP) "$(initial_tbb_build_dir)$(SLASH)$(tbb_mic_build_prefix)_debug$(SLASH)lib"* "$(work_dir)_debug$(SLASH)mic" >$(NUL) 2>$(NUL)) |
|||
$(shell $(CP) "$(initial_tbb_build_dir)$(SLASH)$(tbb_mic_build_prefix)_release$(SLASH)lib"* "$(work_dir)_release$(SLASH)mic" >$(NUL) 2>$(NUL)) |
|||
$(eval export TEST_COMPILATION=1) |
|||
|
|||
test: prepare_test_offload_dir |
|||
tbb_test_debug: prepare_test_offload_dir_debug |
|||
tbb_test_release: prepare_test_offload_dir_release |
|||
tbbmalloc_test_debug: prepare_test_offload_dir_debug |
|||
tbbmalloc_test_release: prepare_test_offload_dir_release |
|||
rml_test_debug: rml_native_debug prepare_test_offload_dir_debug |
|||
rml_test_release: rml_native_release prepare_test_offload_dir_release |
|||
|
|||
debug_% test_% stress_% time_% perf_%:: work_dir:=$(tbb_build_dir)$(SLASH)$(tbb_offload_build_prefix) |
|||
debug_% test_% stress_% time_% perf_%:: export TEST_COMPILATION=1 |
|||
|
|||
clean: work_dir:=$(tbb_build_dir)$(SLASH)$(tbb_offload_build_prefix) |
|||
# The _clean* targets begin with an underscore symbol to prevent a collision with the clean_% template |
|||
clean: _clean_mic_subdir_debug _clean_mic_subdir_release _clean_host _clean_mic |
|||
clean_release: work_dir:=$(tbb_build_dir)$(SLASH)$(tbb_offload_build_prefix) |
|||
clean_release: _clean_mic_subdir_release _clean_host_release _clean_mic_release |
|||
clean_debug: work_dir:=$(tbb_build_dir)$(SLASH)$(tbb_offload_build_prefix) |
|||
clean_debug: _clean_mic_subdir_debug _clean_host_debug _clean_mic_debug |
|||
clean_%:: work_dir:=$(tbb_build_dir)$(SLASH)$(tbb_offload_build_prefix) |
|||
|
|||
_clean_mic_subdir_debug: |
|||
$(shell $(RM) $(work_dir)_debug$(SLASH)mic/$(SLASH)*.* >$(NUL) 2>$(NUL)) |
|||
$(shell $(RD) $(work_dir)_debug$(SLASH)mic >$(NUL) 2>$(NUL)) |
|||
_clean_mic_subdir_release: |
|||
$(shell $(RM) $(work_dir)_release$(SLASH)mic/$(SLASH)*.* >$(NUL) 2>$(NUL)) |
|||
$(shell $(RD) $(work_dir)_release$(SLASH)mic >$(NUL) 2>$(NUL)) |
|||
_clean_host: |
|||
$(MAKE) clean tbb_root=$(initial_tbb_root) offload= |
|||
_clean_mic: |
|||
$(MAKE) clean target=mic tbb_root=$(initial_tbb_root) offload= |
|||
_clean_host_release: |
|||
$(MAKE) clean_release tbb_root=$(initial_tbb_root) offload= |
|||
_clean_host_debug: |
|||
$(MAKE) clean_debug tbb_root=$(initial_tbb_root) offload= |
|||
_clean_mic_release: |
|||
$(MAKE) clean_release target=mic tbb_root=$(initial_tbb_root) offload= |
|||
_clean_mic_debug: |
|||
$(MAKE) clean_debug target=mic tbb_root=$(initial_tbb_root) offload= |
|||
endif |
|||
|
|||
ifeq ($(TEST_COMPILATION),1) |
|||
ifdef MIC_LD_LIBRARY_PATH |
|||
export MIC_LD_LIBRARY_PATH := ./mic:$(MIC_LD_LIBRARY_PATH) |
|||
else |
|||
export MIC_LD_LIBRARY_PATH := ./mic |
|||
endif |
|||
LINK_TBB.LIB=-offload-option,mic,ld,"./mic/$(TBB.LIB)" $(TBB.LIB) |
|||
LINK_MALLOC_LIB=-offload-option,mic,ld,"./mic/$(MALLOC.DLL)" $(MALLOC.DLL) |
|||
LINK_MALLOC_PROXY_LIB=-offload-option,mic,ld,"./mic/$(MALLOCPROXY.DLL)" $(MALLOCPROXY.DLL) |
|||
LINK_FLAGS = |
|||
LIB_LINK_FLAGS += $(DYLIB_KEY) |
|||
# Do not use -Werror because it is too strict for the early offload compiler. |
|||
# Need to set anything because WARNING_AS_ERROR_KEY should not be empty. |
|||
# Treat #2426 as a warning. Print errors only. |
|||
tbb_strict=0 |
|||
override WARNING_AS_ERROR_KEY = Warning as error |
|||
override WARNING_KEY = -diag-warning 2426 -w0 |
|||
# Enable mic-specific stuff. |
|||
CXX_MIC_STUFF = -offload-attribute-target=mic -D__TBB_MIC_OFFLOAD=1 \ |
|||
-offload-option,mic,compiler,"-D__TBB_MIC_OFFLOAD=1 -DHARNESS_INCOMPLETE_SOURCES=1 -D__TBB_MIC_NATIVE -DTBB_USE_EXCEPTIONS=0" |
|||
CPLUS_FLAGS += $(CXX_MIC_STUFF) |
|||
export OFFLOAD_EXECUTION = 1 |
|||
# Workaround to skip the RML tests in the offload mode |
|||
TBB_DEP_NON_RML_TEST = |
|||
TBB_DEP_RML_TEST = |
|||
RML_TBB_CLIENT.OBJ = |
|||
RML_OMP_CLIENT.OBJ = |
|||
endif |
|||
|
|||
# detects whether examples are being built. |
|||
ifeq ($(BUILDING_PHASE),0) |
|||
export UI = con |
|||
export x64 = 64 |
|||
endif # examples |
@ -0,0 +1 @@ |
|||
hwcap_1 = OVERRIDE; |
@ -0,0 +1,51 @@ |
|||
@echo off |
|||
REM |
|||
REM Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
REM |
|||
REM This file is part of Threading Building Blocks. |
|||
REM |
|||
REM Threading Building Blocks is free software; you can redistribute it |
|||
REM and/or modify it under the terms of the GNU General Public License |
|||
REM version 2 as published by the Free Software Foundation. |
|||
REM |
|||
REM Threading Building Blocks is distributed in the hope that it will be |
|||
REM useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
REM of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
REM GNU General Public License for more details. |
|||
REM |
|||
REM You should have received a copy of the GNU General Public License |
|||
REM along with Threading Building Blocks; if not, write to the Free Software |
|||
REM Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
REM |
|||
REM As a special exception, you may use this file as part of a free software |
|||
REM library without restriction. Specifically, if other files instantiate |
|||
REM templates or use macros or inline functions from this file, or you compile |
|||
REM this file and link it with other files to produce an executable, this |
|||
REM file does not by itself cause the resulting executable to be covered by |
|||
REM the GNU General Public License. This exception does not however |
|||
REM invalidate any other reasons why the executable file might be covered by |
|||
REM the GNU General Public License. |
|||
REM |
|||
|
|||
set cmd_line= |
|||
:while |
|||
if NOT "%1"=="" ( |
|||
REM no LD_PRELOAD under Windows |
|||
REM but run the test to check "#pragma comment" construction |
|||
if "%1"=="-l" ( |
|||
REM The command line may specify -l with empty dll name, |
|||
REM e.g. "test_launcher.bat -l app.exe". If the dll name is |
|||
REM empty then %2 contains the application name and the SHIFT |
|||
REM operation is not necessary. |
|||
if exist "%3" SHIFT |
|||
GOTO continue |
|||
) |
|||
REM no need to setup up stack size under Windows |
|||
if "%1"=="-u" GOTO continue |
|||
set cmd_line=%cmd_line% %1 |
|||
:continue |
|||
SHIFT |
|||
GOTO while |
|||
) |
|||
|
|||
%cmd_line% |
@ -0,0 +1,60 @@ |
|||
#!/bin/sh |
|||
# |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
while getopts "ul:" flag # |
|||
do case $flag in # |
|||
l ) if [ `uname` != 'Linux' ] ; then # |
|||
echo 'skip' # |
|||
exit # |
|||
fi # |
|||
LD_PRELOAD=$OPTARG ;; # |
|||
u ) # Set stack limit |
|||
ulimit -s 10240 ;; # |
|||
esac done # |
|||
shift `expr $OPTIND - 1` # |
|||
if [ $OFFLOAD_EXECUTION ] ; then # |
|||
if [ -z $MIC_CARD ] ; then # |
|||
MIC_CARD=mic0 # |
|||
fi # |
|||
TMPDIR_HOST=$(mktemp -d /tmp/libtbbmallocXXXXXX) # |
|||
TMPDIR_MIC=$(sudo ssh $MIC_CARD mktemp -d /tmp/libtbbmallocXXXXXX) # |
|||
sudo ssh $MIC_CARD "chmod +x $TMPDIR_MIC" # |
|||
cp "./mic/libtbbmalloc"* "$TMPDIR_HOST" >/dev/null 2>/dev/null # |
|||
sudo scp "$TMPDIR_HOST"/* $MIC_CARD:"$TMPDIR_MIC" >/dev/null 2>/dev/null # |
|||
LD_LIBRARY_PATH=$TMPDIR_MIC:$LD_LIBRARY_PATH # |
|||
export LD_LIBRARY_PATH # |
|||
fi # |
|||
# Run the command line passed via parameters |
|||
export LD_PRELOAD # |
|||
./$* # |
|||
exitcode=$? # |
|||
if [ $OFFLOAD_EXECUTION ] ; then # |
|||
sudo ssh $MIC_CARD rm -fr "$TMPDIR_MIC" >/dev/null 2>/dev/null # |
|||
rm -fr "$TMPDIR_HOST" >/dev/null 2>/dev/null # |
|||
fi # |
|||
exit ${exitcode} # |
@ -0,0 +1,42 @@ |
|||
#!/bin/sh |
|||
# |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
# Script used to generate version info string |
|||
echo "#define __TBB_VERSION_STRINGS(N) \\" |
|||
echo '#N": BUILD_HOST'"\t\t"`hostname -s`" ("`uname -m`")"'" ENDL \' |
|||
# find OS name in *-release and issue* files by filtering blank lines and lsb-release content out |
|||
echo '#N": BUILD_OS'"\t\t"`lsb_release -sd 2>/dev/null | grep -ih '[a-z] ' - /etc/*release /etc/issue 2>/dev/null | head -1 | sed -e 's/["\\\\]//g'`'" ENDL \' |
|||
echo '#N": BUILD_KERNEL'"\t"`uname -srv`'" ENDL \' |
|||
echo '#N": BUILD_GCC'"\t\t"`g++ -v </dev/null 2>&1 | grep 'gcc.*version'`'" ENDL \' |
|||
[ -z "$COMPILER_VERSION" ] || echo '#N": BUILD_COMPILER'"\t"$COMPILER_VERSION'" ENDL \' |
|||
echo '#N": BUILD_LIBC'"\t"`getconf GNU_LIBC_VERSION | grep glibc | sed -e 's/^glibc //'`'" ENDL \' |
|||
echo '#N": BUILD_LD'"\t\t"`ld -v 2>&1 | grep 'version'`'" ENDL \' |
|||
echo '#N": BUILD_TARGET'"\t$arch on $runtime"'" ENDL \' |
|||
echo '#N": BUILD_COMMAND'"\t"$*'" ENDL \' |
|||
echo "" |
|||
echo "#define __TBB_DATETIME \""`date -u`"\"" |
@ -0,0 +1,46 @@ |
|||
#!/bin/sh |
|||
# |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
# Script used to generate version info string |
|||
# remove extraneous cntrl-M characters from ends of lines generated by adb shell command |
|||
android_os=`(adb shell getprop ro.build.version.release) | sed -e 's/\\r$//g'` |
|||
android_kernel=`(adb shell uname -srv) | sed -e 's/\\r$//g'` |
|||
echo "#define __TBB_VERSION_STRINGS(N) \\" |
|||
echo '#N": BUILD_HOST'"\t\t"`hostname -s`" ("`uname -m`")"'" ENDL \' |
|||
# find OS name in *-release and issue* files by filtering blank lines and lsb-release content out |
|||
echo '#N": BUILD_OS'"\t\t"`lsb_release -sd 2>/dev/null | grep -ih '[a-z] ' - /etc/*release /etc/issue 2>/dev/null | head -1 | sed -e 's/["\\\\]//g'`'" ENDL \' |
|||
echo '#N": BUILD_TARGET_OS'"\t\tAndroid ${android_os}"'" ENDL \' |
|||
echo '#N": BUILD_TARGET_KERNEL'"\t${android_kernel}"'" ENDL \' |
|||
echo '#N": BUILD_GCC'"\t\t"`${tbb_tool_prefix}g++ -dumpversion`'" ENDL \' |
|||
[ -z "$COMPILER_VERSION" ] || echo '#N": BUILD_COMPILER'"\t"$COMPILER_VERSION'" ENDL \' |
|||
[ -z "$ndk_version" ] || echo '#N": BUILD_NDK'"\t\t$ndk_version"'" ENDL \' |
|||
echo '#N": BUILD_LD'"\t\t"`${tbb_tool_prefix}ld -v 2>&1 | grep 'ld'`'" ENDL \' |
|||
echo '#N": BUILD_TARGET'"\t$arch on $runtime"'" ENDL \' |
|||
echo '#N": BUILD_COMMAND'"\t"$*'" ENDL \' |
|||
echo "" |
|||
echo "#define __TBB_DATETIME \""`date -u`"\"" |
@ -0,0 +1,42 @@ |
|||
#!/bin/sh |
|||
# |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
# Script used to generate version info string |
|||
echo "#define __TBB_VERSION_STRINGS(N) \\" |
|||
echo '#N": BUILD_HOST'"\t\t"`hostname -s`" ("`uname -m`")"'" ENDL \' |
|||
# find OS name in *-release and issue* files by filtering blank lines and lsb-release content out |
|||
echo '#N": BUILD_OS'"\t\t"`lsb_release -sd 2>/dev/null | grep -ih '[a-z] ' - /etc/*release /etc/issue 2>/dev/null | head -1 | sed -e 's/["\\\\]//g'`'" ENDL \' |
|||
echo '#N": BUILD_KERNEL'"\t"`uname -srv`'" ENDL \' |
|||
echo '#N": BUILD_GCC'"\t\t"`g++ -v </dev/null 2>&1 | grep 'gcc.*version '`'" ENDL \' |
|||
[ -z "$COMPILER_VERSION" ] || echo '#N": BUILD_COMPILER'"\t"$COMPILER_VERSION'" ENDL \' |
|||
echo '#N": BUILD_LIBC'"\t"`getconf GNU_LIBC_VERSION | grep glibc | sed -e 's/^glibc //'`'" ENDL \' |
|||
echo '#N": BUILD_LD'"\t\t"`ld -v 2>&1 | grep 'version'`'" ENDL \' |
|||
echo '#N": BUILD_TARGET'"\t$arch on $runtime"'" ENDL \' |
|||
echo '#N": BUILD_COMMAND'"\t"$*'" ENDL \' |
|||
echo "" |
|||
echo "#define __TBB_DATETIME \""`date -u`"\"" |
@ -0,0 +1,39 @@ |
|||
#!/bin/sh |
|||
# |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
# Script used to generate version info string |
|||
echo "#define __TBB_VERSION_STRINGS(N) \\" |
|||
echo '#N": BUILD_HOST'"\t\t"`hostname -s`" ("`arch`")"'" ENDL \' |
|||
echo '#N": BUILD_OS'"\t\t"`sw_vers -productName`" version "`sw_vers -productVersion`'" ENDL \' |
|||
echo '#N": BUILD_KERNEL'"\t"`uname -v`'" ENDL \' |
|||
echo '#N": BUILD_GCC'"\t\t"`gcc -v </dev/null 2>&1 | grep 'version'`'" ENDL \' |
|||
[ -z "$COMPILER_VERSION" ] || echo '#N": BUILD_COMPILER'"\t"$COMPILER_VERSION'" ENDL \' |
|||
echo '#N": BUILD_TARGET'"\t$arch on $runtime"'" ENDL \' |
|||
echo '#N": BUILD_COMMAND'"\t"$*'" ENDL \' |
|||
echo "" |
|||
echo "#define __TBB_DATETIME \""`date -u`"\"" |
@ -0,0 +1,39 @@ |
|||
#!/bin/sh |
|||
# |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
# Script used to generate version info string |
|||
echo "#define __TBB_VERSION_STRINGS(N) \\" |
|||
echo '#N": BUILD_HOST'"\t"`hostname`" ("`arch`")"'" ENDL \' |
|||
echo '#N": BUILD_OS'"\t\t"`uname`'" ENDL \' |
|||
echo '#N": BUILD_KERNEL'"\t"`uname -srv`'" ENDL \' |
|||
echo '#N": BUILD_SUNCC'"\t"`CC -V </dev/null 2>&1 | grep 'C++'`'" ENDL \' |
|||
[ -z "$COMPILER_VERSION" ] || echo '#N": BUILD_COMPILER'"\t"$COMPILER_VERSION'" ENDL \' |
|||
echo '#N": BUILD_TARGET'"\t$arch on $runtime"'" ENDL \' |
|||
echo '#N": BUILD_COMMAND'"\t"$*'" ENDL \' |
|||
echo "" |
|||
echo "#define __TBB_DATETIME \""`date -u`"\"" |
@ -0,0 +1,136 @@ |
|||
// Copyright 2005-2013 Intel Corporation. All Rights Reserved.
|
|||
//
|
|||
// This file is part of Threading Building Blocks.
|
|||
//
|
|||
// Threading Building Blocks is free software; you can redistribute it
|
|||
// and/or modify it under the terms of the GNU General Public License
|
|||
// version 2 as published by the Free Software Foundation.
|
|||
//
|
|||
// Threading Building Blocks is distributed in the hope that it will be
|
|||
// useful, but WITHOUT ANY WARRANTY; without even the implied warranty
|
|||
// of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|||
// GNU General Public License for more details.
|
|||
//
|
|||
// You should have received a copy of the GNU General Public License
|
|||
// along with Threading Building Blocks; if not, write to the Free Software
|
|||
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|||
//
|
|||
// As a special exception, you may use this file as part of a free software
|
|||
// library without restriction. Specifically, if other files instantiate
|
|||
// templates or use macros or inline functions from this file, or you compile
|
|||
// this file and link it with other files to produce an executable, this
|
|||
// file does not by itself cause the resulting executable to be covered by
|
|||
// the GNU General Public License. This exception does not however
|
|||
// invalidate any other reasons why the executable file might be covered by
|
|||
// the GNU General Public License.
|
|||
|
|||
var WshShell = WScript.CreateObject("WScript.Shell"); |
|||
|
|||
var tmpExec; |
|||
|
|||
WScript.Echo("#define __TBB_VERSION_STRINGS(N) \\"); |
|||
|
|||
//Getting BUILD_HOST
|
|||
WScript.echo( "#N \": BUILD_HOST\\t\\t" + |
|||
WshShell.ExpandEnvironmentStrings("%COMPUTERNAME%") + |
|||
"\" ENDL \\" ); |
|||
|
|||
//Getting BUILD_OS
|
|||
tmpExec = WshShell.Exec("cmd /c ver"); |
|||
while ( tmpExec.Status == 0 ) { |
|||
WScript.Sleep(100); |
|||
} |
|||
tmpExec.StdOut.ReadLine(); |
|||
|
|||
WScript.echo( "#N \": BUILD_OS\\t\\t" + |
|||
tmpExec.StdOut.ReadLine() + |
|||
"\" ENDL \\" ); |
|||
|
|||
if ( WScript.Arguments(0).toLowerCase().match("gcc") ) { |
|||
tmpExec = WshShell.Exec(WScript.Arguments(0) + " --version"); |
|||
WScript.echo( "#N \": BUILD_COMPILER\\t" + |
|||
tmpExec.StdOut.ReadLine() + |
|||
"\" ENDL \\" ); |
|||
|
|||
} else { // MS / Intel compilers
|
|||
//Getting BUILD_CL
|
|||
tmpExec = WshShell.Exec("cmd /c echo #define 0 0>empty.cpp"); |
|||
tmpExec = WshShell.Exec("cl -c empty.cpp "); |
|||
while ( tmpExec.Status == 0 ) { |
|||
WScript.Sleep(100); |
|||
} |
|||
var clVersion = tmpExec.StdErr.ReadLine(); |
|||
WScript.echo( "#N \": BUILD_CL\\t\\t" + |
|||
clVersion + |
|||
"\" ENDL \\" ); |
|||
|
|||
//Getting BUILD_COMPILER
|
|||
if ( WScript.Arguments(0).toLowerCase().match("icl") ) { |
|||
tmpExec = WshShell.Exec("icl -c empty.cpp "); |
|||
while ( tmpExec.Status == 0 ) { |
|||
WScript.Sleep(100); |
|||
} |
|||
WScript.echo( "#N \": BUILD_COMPILER\\t" + |
|||
tmpExec.StdErr.ReadLine() + |
|||
"\" ENDL \\" ); |
|||
} else { |
|||
WScript.echo( "#N \": BUILD_COMPILER\\t\\t" + |
|||
clVersion + |
|||
"\" ENDL \\" ); |
|||
} |
|||
tmpExec = WshShell.Exec("cmd /c del /F /Q empty.obj empty.cpp"); |
|||
} |
|||
|
|||
//Getting BUILD_TARGET
|
|||
WScript.echo( "#N \": BUILD_TARGET\\t" + |
|||
WScript.Arguments(1) + |
|||
"\" ENDL \\" ); |
|||
|
|||
//Getting BUILD_COMMAND
|
|||
WScript.echo( "#N \": BUILD_COMMAND\\t" + WScript.Arguments(2) + "\" ENDL" ); |
|||
|
|||
//Getting __TBB_DATETIME and __TBB_VERSION_YMD
|
|||
var date = new Date(); |
|||
WScript.echo( "#define __TBB_DATETIME \"" + date.toUTCString() + "\"" ); |
|||
WScript.echo( "#define __TBB_VERSION_YMD " + date.getUTCFullYear() + ", " + |
|||
(date.getUTCMonth() > 8 ? (date.getUTCMonth()+1):("0"+(date.getUTCMonth()+1))) + |
|||
(date.getUTCDate() > 9 ? date.getUTCDate():("0"+date.getUTCDate())) ); |
|||
|
|||
|
|||
/* |
|||
|
|||
Original strings |
|||
|
|||
#define __TBB_VERSION_STRINGS \ |
|||
"TBB: BUILD_HOST\t\tvpolin-mobl1 (ia32)" ENDL \ |
|||
"TBB: BUILD_OS\t\tMicrosoft Windows XP [Version 5.1.2600]" ENDL \ |
|||
"TBB: BUILD_CL\t\tMicrosoft (R) 32-bit C/C++ Optimizing Compiler Version 13.10.3077 for 80x86" ENDL \ |
|||
"TBB: BUILD_COMPILER\tIntel(R) C++ Compiler for 32-bit applications, Version 9.1 Build 20070109Z Package ID: W_CC_C_9.1.034 " ENDL \ |
|||
"TBB: BUILD_TARGET\t" ENDL \ |
|||
"TBB: BUILD_COMMAND\t" ENDL \ |
|||
|
|||
#define __TBB_DATETIME "Mon Jun 4 10:16:07 UTC 2007" |
|||
#define __TBB_VERSION_YMD 2007, 0604 |
|||
|
|||
|
|||
|
|||
# The script must be run from two directory levels below this level. |
|||
x='"TBB: ' |
|||
y='" ENDL \' |
|||
echo "#define __TBB_VERSION_STRINGS \\" |
|||
echo $x "BUILD_HOST\t\t"`hostname`" ("`../../arch.exe`")"$y |
|||
echo $x "BUILD_OS\t\t"`../../win_version.bat|grep -i 'Version'`$y |
|||
echo >empty.cpp |
|||
echo $x "BUILD_CL\t\t"`cl -c empty.cpp 2>&1 | grep -i Version`$y |
|||
echo $x "BUILD_COMPILER\t"`icl -c empty.cpp 2>&1 | grep -i Version`$y |
|||
echo $x "BUILD_TARGET\t"$TBB_ARCH$y |
|||
echo $x "BUILD_COMMAND\t"$*$y |
|||
echo "" |
|||
# A workaround for MKS 8.6 where `date -u` crashes. |
|||
date -u > date.tmp |
|||
echo "#define __TBB_DATETIME \""`cat date.tmp`"\"" |
|||
echo "#define __TBB_VERSION_YMD "`date '+%Y, %m%d'` |
|||
rm empty.cpp |
|||
rm empty.obj |
|||
rm date.tmp |
|||
*/ |
@ -0,0 +1,30 @@ |
|||
<HTML> |
|||
<BODY> |
|||
|
|||
<H2>Overview</H2> |
|||
This directory contains the visual studio* 2008 solution to build Intel® Threading Building Blocks. |
|||
|
|||
|
|||
<H2>Files</H2> |
|||
<DL> |
|||
<DT><A HREF="makefile.sln">makefile.sln</A> |
|||
<DD>Solution file. |
|||
<DT><A HREF="tbb.vcproj">tbb.vcproj</A> |
|||
<DD>Library project file. |
|||
<DT><A HREF="tbbmalloc.vcproj">tbbmalloc.vcproj</A> |
|||
<DD>Scalable allocator library project file. Allocator sources are expected to be located in <A HREF="../../src/tbbmalloc">../../src/tbbmalloc</A> folder. |
|||
<DT><A HREF="tbbmalloc_proxy.vcproj">tbbmalloc_proxy.vcproj</A> |
|||
<DD>Standard allocator replacement project file. |
|||
</DL> |
|||
|
|||
<HR> |
|||
<A HREF="../index.html">Up to parent directory</A> |
|||
<P></P> |
|||
Copyright © 2005-2013 Intel Corporation. All Rights Reserved. |
|||
<P></P> |
|||
Intel is a registered trademark or trademark of Intel Corporation |
|||
or its subsidiaries in the United States and other countries. |
|||
<p></p> |
|||
* Other names and brands may be claimed as the property of others. |
|||
</BODY> |
|||
</HTML> |
@ -0,0 +1,84 @@ |
|||
Microsoft Visual Studio Solution File, Format Version 10.00 |
|||
# Visual Studio 2008 |
|||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{8898CE0B-0BFB-45AE-AA71-83735ED2510D}" |
|||
ProjectSection(SolutionItems) = preProject |
|||
index.html = index.html |
|||
EndProjectSection |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tbb", "tbb.vcproj", "{F62787DD-1327-448B-9818-030062BCFAA5}" |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tbbmalloc", "tbbmalloc.vcproj", "{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}" |
|||
ProjectSection(ProjectDependencies) = postProject |
|||
{F62787DD-1327-448B-9818-030062BCFAA5} = {F62787DD-1327-448B-9818-030062BCFAA5} |
|||
EndProjectSection |
|||
EndProject |
|||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tbbmalloc_proxy", "tbbmalloc_proxy.vcproj", "{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}" |
|||
ProjectSection(ProjectDependencies) = postProject |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8} = {B15F131E-328A-4D42-ADC2-9FF4CA6306D8} |
|||
EndProjectSection |
|||
EndProject |
|||
Global |
|||
GlobalSection(SolutionConfigurationPlatforms) = preSolution |
|||
Debug|Win32 = Debug|Win32 |
|||
Debug|x64 = Debug|x64 |
|||
Debug-MT|Win32 = Debug-MT|Win32 |
|||
Debug-MT|x64 = Debug-MT|x64 |
|||
Release|Win32 = Release|Win32 |
|||
Release|x64 = Release|x64 |
|||
Release-MT|Win32 = Release-MT|Win32 |
|||
Release-MT|x64 = Release-MT|x64 |
|||
EndGlobalSection |
|||
GlobalSection(ProjectConfigurationPlatforms) = postSolution |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Debug|x64.Build.0 = Debug|x64 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Debug-MT|Win32.ActiveCfg = Debug-MT|Win32 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Debug-MT|Win32.Build.0 = Debug-MT|Win32 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Debug-MT|x64.ActiveCfg = Debug-MT|x64 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Debug-MT|x64.Build.0 = Debug-MT|x64 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Release|Win32.Build.0 = Release|Win32 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Release|x64.ActiveCfg = Release|x64 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Release|x64.Build.0 = Release|x64 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Release-MT|Win32.ActiveCfg = Release-MT|Win32 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Release-MT|Win32.Build.0 = Release-MT|Win32 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Release-MT|x64.ActiveCfg = Release-MT|x64 |
|||
{F62787DD-1327-448B-9818-030062BCFAA5}.Release-MT|x64.Build.0 = Release-MT|x64 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Debug|x64.Build.0 = Debug|x64 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Debug-MT|Win32.ActiveCfg = Debug-MT|Win32 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Debug-MT|Win32.Build.0 = Debug-MT|Win32 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Debug-MT|x64.ActiveCfg = Debug-MT|x64 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Debug-MT|x64.Build.0 = Debug-MT|x64 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Release|Win32.Build.0 = Release|Win32 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Release|x64.ActiveCfg = Release|x64 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Release|x64.Build.0 = Release|x64 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Release-MT|Win32.ActiveCfg = Release-MT|Win32 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Release-MT|Win32.Build.0 = Release-MT|Win32 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Release-MT|x64.ActiveCfg = Release-MT|x64 |
|||
{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}.Release-MT|x64.Build.0 = Release-MT|x64 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Debug|Win32.ActiveCfg = Debug|Win32 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Debug|Win32.Build.0 = Debug|Win32 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Debug|x64.ActiveCfg = Debug|x64 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Debug|x64.Build.0 = Debug|x64 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Debug-MT|Win32.ActiveCfg = Debug-MT|Win32 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Debug-MT|Win32.Build.0 = Debug-MT|Win32 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Debug-MT|x64.ActiveCfg = Debug-MT|x64 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Debug-MT|x64.Build.0 = Debug-MT|x64 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Release|Win32.ActiveCfg = Release|Win32 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Release|Win32.Build.0 = Release|Win32 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Release|x64.ActiveCfg = Release|x64 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Release|x64.Build.0 = Release|x64 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Release-MT|Win32.ActiveCfg = Release-MT|Win32 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Release-MT|Win32.Build.0 = Release-MT|Win32 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Release-MT|x64.ActiveCfg = Release-MT|x64 |
|||
{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}.Release-MT|x64.Build.0 = Release-MT|x64 |
|||
EndGlobalSection |
|||
GlobalSection(SolutionProperties) = preSolution |
|||
HideSolutionNode = FALSE |
|||
EndGlobalSection |
|||
EndGlobal |
@ -0,0 +1,538 @@ |
|||
<?xml version="1.0" encoding="windows-1251"?> |
|||
<VisualStudioProject ProjectType="Visual C++" Version="9.00" Name="tbb" ProjectGUID="{F62787DD-1327-448B-9818-030062BCFAA5}" RootNamespace="tbb" Keyword="Win32Proj" TargetFrameworkVersion="131072"> |
|||
<Platforms> |
|||
<Platform Name="Win32"/> |
|||
<Platform Name="x64"/> |
|||
</Platforms> |
|||
<ToolFiles> |
|||
<DefaultToolFile FileName="masm.rules"/> |
|||
</ToolFiles> |
|||
<Configurations> |
|||
<Configuration Name="Debug|Win32" OutputDirectory="$(SolutionDir)ia32\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)ia32\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MDd /Od /Ob0 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=tbb_debug.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include" Optimization="0" AdditionalIncludeDirectories="." PreprocessorDefinitions="" MinimalRebuild="true" BasicRuntimeChecks="3" RuntimeLibrary="3" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbb.def"" OutputFile="$(OutDir)\tbb_debug.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="1"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Debug|x64" OutputDirectory="$(SolutionDir)intel64\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)intel64\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool" TargetEnvironment="3"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MDd /Od /Ob0 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=tbb_debug.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include" Optimization="0" AdditionalIncludeDirectories="." PreprocessorDefinitions="" MinimalRebuild="true" BasicRuntimeChecks="3" RuntimeLibrary="3" BufferSecurityCheck="false" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3" ShowIncludes="false"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbb.def"" OutputFile="$(OutDir)\tbb_debug.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="17"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Release|Win32" OutputDirectory="$(SolutionDir)ia32\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)ia32\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0" WholeProgramOptimization="1"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MD /O2 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=tbb.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include" AdditionalIncludeDirectories="." PreprocessorDefinitions="" RuntimeLibrary="2" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbb.def"" OutputFile="$(OutDir)\tbb.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" OptimizeReferences="2" EnableCOMDATFolding="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="1"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Release|x64" OutputDirectory="$(SolutionDir)intel64\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)intel64\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0" WholeProgramOptimization="1"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool" TargetEnvironment="3"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MD /O2 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=tbb.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include" AdditionalIncludeDirectories="." PreprocessorDefinitions="" RuntimeLibrary="2" BufferSecurityCheck="false" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbb.def"" OutputFile="$(OutDir)\tbb.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" OptimizeReferences="2" EnableCOMDATFolding="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="17"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Debug-MT|Win32" OutputDirectory="$(SolutionDir)ia32\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)ia32\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MTd /Od /Ob0 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=tbb_debug.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include" Optimization="0" AdditionalIncludeDirectories="." PreprocessorDefinitions="" MinimalRebuild="true" BasicRuntimeChecks="3" RuntimeLibrary="1" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbb.def"" OutputFile="$(OutDir)\tbb_debug.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="1"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Debug-MT|x64" OutputDirectory="$(SolutionDir)intel64\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)intel64\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool" TargetEnvironment="3"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MTd /Od /Ob0 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=tbb_debug.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include" Optimization="0" AdditionalIncludeDirectories="." PreprocessorDefinitions="" MinimalRebuild="true" BasicRuntimeChecks="3" RuntimeLibrary="1" BufferSecurityCheck="false" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3" ShowIncludes="false"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbb.def"" OutputFile="$(OutDir)\tbb_debug.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="17"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Release-MT|Win32" OutputDirectory="$(SolutionDir)ia32\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)ia32\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0" WholeProgramOptimization="1"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MT /O2 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=tbb.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include" AdditionalIncludeDirectories="." PreprocessorDefinitions="" RuntimeLibrary="0" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbb.def"" OutputFile="$(OutDir)\tbb.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" OptimizeReferences="2" EnableCOMDATFolding="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="1"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Release-MT|x64" OutputDirectory="$(SolutionDir)intel64\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)intel64\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0" WholeProgramOptimization="1"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool" TargetEnvironment="3"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MT /O2 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=tbb.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include" AdditionalIncludeDirectories="." PreprocessorDefinitions="" RuntimeLibrary="0" BufferSecurityCheck="false" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbb.def"" OutputFile="$(OutDir)\tbb.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" OptimizeReferences="2" EnableCOMDATFolding="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="17"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
</Configurations> |
|||
<References> |
|||
</References> |
|||
<Files> |
|||
<Filter Name="Source Files" Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"> |
|||
<File RelativePath="..\..\src\tbb\ia32-masm\atomic_support.asm"> |
|||
<FileConfiguration Name="Debug|Win32"> |
|||
<Tool Name="MASM" AdditionalOptions="/coff /Zi"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="MASM" AdditionalOptions="/coff /Zi"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="MASM"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|Win32"> |
|||
<Tool Name="MASM" AdditionalOptions="/coff /Zi"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="MASM" AdditionalOptions="/coff /Zi"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="MASM"/> |
|||
</FileConfiguration> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\intel64-masm\atomic_support.asm"> |
|||
<FileConfiguration Name="Debug|Win32" ExcludedFromBuild="true"> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="building atomic_support.obj" CommandLine="ml64 /Fo"intel64\Debug\atomic_support.obj" /DUSE_FRAME_POINTER /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm |
|||
" Outputs="intel64\Debug\atomic_support.obj"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|Win32" ExcludedFromBuild="true"> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="building atomic_support.obj" CommandLine="ml64 /Fo"intel64\Release\atomic_support.obj" /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm |
|||
" Outputs="intel64\Release\atomic_support.obj"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|Win32" ExcludedFromBuild="true"> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="building atomic_support.obj" CommandLine="ml64 /Fo"intel64\Debug-MT\atomic_support.obj" /DUSE_FRAME_POINTER /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm |
|||
" Outputs="intel64\Debug-MT\atomic_support.obj"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|Win32" ExcludedFromBuild="true"> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="building atomic_support.obj" CommandLine="ml64 /Fo"intel64\Release-MT\atomic_support.obj" /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm |
|||
" Outputs="intel64\Release-MT\atomic_support.obj"/> |
|||
</FileConfiguration> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\intel64-masm\intel64_misc.asm"> |
|||
<FileConfiguration Name="Debug|Win32" ExcludedFromBuild="true"> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="building intel64_misc.obj" CommandLine="ml64 /Fo"intel64\Debug\intel64_misc.obj" /DUSE_FRAME_POINTER /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/intel64_misc.asm |
|||
" Outputs="intel64\Debug\intel64_misc.obj"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|Win32" ExcludedFromBuild="true"> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="building intel64_misc.obj" CommandLine="ml64 /Fo"intel64\Release\intel64_misc.obj" /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/intel64_misc.asm |
|||
" Outputs="intel64\Release\intel64_misc.obj"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|Win32" ExcludedFromBuild="true"> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="building intel64_misc.obj" CommandLine="ml64 /Fo"intel64\Debug-MT\intel64_misc.obj" /DUSE_FRAME_POINTER /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/intel64_misc.asm |
|||
" Outputs="intel64\Debug-MT\intel64_misc.obj"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|Win32" ExcludedFromBuild="true"> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="building intel64_misc.obj" CommandLine="ml64 /Fo"intel64\Release-MT\intel64_misc.obj" /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/intel64_misc.asm |
|||
" Outputs="intel64\Release-MT\intel64_misc.obj"/> |
|||
</FileConfiguration> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\ia32-masm\lock_byte.asm"> |
|||
<FileConfiguration Name="Debug|Win32"> |
|||
<Tool Name="MASM" AdditionalOptions="/coff /Zi"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="MASM" AdditionalOptions="/coff /Zi"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="MASM"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|Win32"> |
|||
<Tool Name="MASM" AdditionalOptions="/coff /Zi"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="MASM" AdditionalOptions="/coff /Zi"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="MASM"/> |
|||
</FileConfiguration> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\win32-tbb-export.def"> |
|||
<FileConfiguration Name="Debug|Win32"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win32-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 /I../../src /I../../include >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win32-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|Win32"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win32-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 /I../../src /I../../include >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win32-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|Win32"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win32-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 /I../../src /I../../include >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win32-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|Win32"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win32-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 /I../../src /I../../include >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win32-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\win64-tbb-export.def"> |
|||
<FileConfiguration Name="Debug|Win32" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win64-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win64-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 /I../../src /I../../include >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|Win32" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win64-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win64-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 /I../../src /I../../include >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|Win32" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win64-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win64-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 /I../../src /I../../include >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|Win32" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win64-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbb.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win64-tbb-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBB_BUILD=1 /I../../src /I../../include >"$(IntDir)\tbb.def" |
|||
" Outputs=""$(IntDir)\tbb.def""/> |
|||
</FileConfiguration> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\concurrent_hash_map.cpp"/><File RelativePath="..\..\src\tbb\concurrent_queue.cpp"/><File RelativePath="..\..\src\tbb\concurrent_vector.cpp"/><File RelativePath="..\..\src\tbb\dynamic_link.cpp"/><File RelativePath="..\..\src\tbb\itt_notify.cpp"/><File RelativePath="..\..\src\tbb\cache_aligned_allocator.cpp"/><File RelativePath="..\..\src\tbb\pipeline.cpp"/><File RelativePath="..\..\src\tbb\queuing_mutex.cpp"/><File RelativePath="..\..\src\tbb\queuing_rw_mutex.cpp"/><File RelativePath="..\..\src\tbb\reader_writer_lock.cpp"/><File RelativePath="..\..\src\tbb\spin_rw_mutex.cpp"/><File RelativePath="..\..\src\tbb\spin_mutex.cpp"/><File RelativePath="..\..\src\tbb\critical_section.cpp"/><File RelativePath="..\..\src\tbb\task.cpp"/><File RelativePath="..\..\src\tbb\tbb_misc.cpp"/><File RelativePath="..\..\src\tbb\tbb_misc_ex.cpp"/><File RelativePath="..\..\src\tbb\mutex.cpp"/><File RelativePath="..\..\src\tbb\recursive_mutex.cpp"/><File RelativePath="..\..\src\tbb\condition_variable.cpp"/><File RelativePath="..\..\src\tbb\tbb_thread.cpp"/><File RelativePath="..\..\src\tbb\concurrent_monitor.cpp"/><File RelativePath="..\..\src\tbb\semaphore.cpp"/><File RelativePath="..\..\src\tbb\private_server.cpp"/><File RelativePath="..\..\src\rml\client\rml_tbb.cpp"/><File RelativePath="..\..\src\tbb\task_group_context.cpp"/><File RelativePath="..\..\src\tbb\governor.cpp"/><File RelativePath="..\..\src\tbb\market.cpp"/><File RelativePath="..\..\src\tbb\arena.cpp"/><File RelativePath="..\..\src\tbb\scheduler.cpp"/><File RelativePath="..\..\src\tbb\observer_proxy.cpp"/><File RelativePath="..\..\src\tbb\tbb_statistics.cpp"/><File RelativePath="..\..\src\tbb\tbb_main.cpp"/><File RelativePath="..\..\src\old\concurrent_vector_v2.cpp"/><File RelativePath="..\..\src\old\concurrent_queue_v2.cpp"/><File RelativePath="..\..\src\old\spin_rw_mutex_v2.cpp"/><File RelativePath="..\..\src\old\task_v2.cpp"/></Filter> |
|||
<Filter Name="Header Files" Filter="h;hpp;hxx;hm;inl;inc;xsd" UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"> |
|||
<File RelativePath="..\..\include\tbb\internal\_concurrent_queue_impl.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\_tbb_windef.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\aligned_space.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\atomic.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\blocked_range.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\blocked_range2d.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\blocked_range3d.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\cache_aligned_allocator.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\combinable.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\concurrent_hash_map.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\concurrent_monitor.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\concurrent_priority_queue.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\concurrent_queue.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\old\concurrent_queue_v2.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\concurrent_vector.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\old\concurrent_vector_v2.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\critical_section.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\dynamic_link.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\enumerable_thread_specific.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\gate.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\test\harness.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\test\harness_allocator.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\test\harness_assert.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\test\harness_bad_expr.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\test\harness_barrier.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\test\harness_concurrency_tracker.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\test\harness_cpu.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\test\harness_eh.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\test\harness_iterator.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\test\harness_m128.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\test\harness_memory.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\test\harness_report.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\machine\ibm_aix51.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\itt_notify.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\machine\linux_common.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\machine\linux_ia32.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\machine\linux_ia64.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\machine\linux_intel64.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\machine\mac_ppc.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\null_mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\null_rw_mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_do.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_for.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_for_each.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_invoke.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_reduce.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_scan.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_sort.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_while.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\partitioner.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\pipeline.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\compat\ppl.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\queuing_mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\queuing_rw_mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\reader_writer_lock.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\recursive_mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\scalable_allocator.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\semaphore.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\spin_mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\spin_rw_mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\old\spin_rw_mutex_v2.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\task.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\task_group.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\task_scheduler_init.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\task_scheduler_observer.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_allocator.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\tbb_assert_impl.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_config.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_exception.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_machine.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\tbb_misc.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_profiling.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_stddef.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_thread.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\tbb_version.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbbmalloc_proxy.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\test\test_allocator.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\test\test_allocator_STL.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tick_count.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbb\tls.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\machine\windows_ia32.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\machine\windows_intel64.h"> |
|||
</File> |
|||
</Filter> |
|||
<Filter Name="Resource Files" Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"> |
|||
<File RelativePath="..\..\src\tbb\tbb_resource.rc"> |
|||
<FileConfiguration Name="Debug|Win32"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug|x64"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|Win32"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|x64"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|Win32"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|x64"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|Win32"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|x64"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
</File> |
|||
</Filter> |
|||
</Files> |
|||
<Globals> |
|||
</Globals> |
|||
</VisualStudioProject> |
@ -0,0 +1,418 @@ |
|||
<?xml version="1.0" encoding="windows-1251"?> |
|||
<VisualStudioProject ProjectType="Visual C++" Version="9.00" Name="tbbmalloc" ProjectGUID="{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}" RootNamespace="tbbmalloc" Keyword="Win32Proj" TargetFrameworkVersion="131072"> |
|||
<Platforms> |
|||
<Platform Name="Win32"/> |
|||
<Platform Name="x64"/> |
|||
</Platforms> |
|||
<ToolFiles> |
|||
<DefaultToolFile FileName="masm.rules"/> |
|||
</ToolFiles> |
|||
<Configurations> |
|||
<Configuration Name="Debug|Win32" OutputDirectory="$(SolutionDir)ia32\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)ia32\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MDd /Od /Ob0 /Zi /EHs- /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=tbb_debug.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I." Optimization="0" AdditionalIncludeDirectories="." PreprocessorDefinitions="" MinimalRebuild="true" ExceptionHandling="0" BasicRuntimeChecks="0" RuntimeLibrary="3" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbbmalloc.def"" OutputFile="$(OutDir)\tbbmalloc_debug.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="1"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Debug|x64" OutputDirectory="$(SolutionDir)intel64\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)intel64\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool" TargetEnvironment="3"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MDd /Od /Ob0 /Zi /EHs- /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=tbb_debug.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I." Optimization="0" AdditionalIncludeDirectories="." MinimalRebuild="false" ExceptionHandling="0" BasicRuntimeChecks="0" RuntimeLibrary="3" BufferSecurityCheck="false" TreatWChar_tAsBuiltInType="true" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3" ShowIncludes="false"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbbmalloc.def"" OutputFile="$(OutDir)\tbbmalloc_debug.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="17"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Release|Win32" OutputDirectory="$(SolutionDir)ia32\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)ia32\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0" WholeProgramOptimization="1"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MD /O2 /Zi /EHs- /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=tbb.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I." AdditionalIncludeDirectories="." PreprocessorDefinitions="" ExceptionHandling="0" RuntimeLibrary="2" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbbmalloc.def"" OutputFile="$(OutDir)\tbbmalloc.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" OptimizeReferences="2" EnableCOMDATFolding="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="1"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Release|x64" OutputDirectory="$(SolutionDir)intel64\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)intel64\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0" WholeProgramOptimization="1"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool" TargetEnvironment="3"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MD /O2 /Zi /EHs- /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=tbb.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I." AdditionalIncludeDirectories="." PreprocessorDefinitions="" ExceptionHandling="0" RuntimeLibrary="2" BufferSecurityCheck="false" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbbmalloc.def"" OutputFile="$(OutDir)\tbbmalloc.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" OptimizeReferences="2" EnableCOMDATFolding="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="17"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Debug-MT|Win32" OutputDirectory="$(SolutionDir)ia32\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)ia32\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MTd /Od /Ob0 /Zi /EHs- /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=tbb_debug.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I." Optimization="0" AdditionalIncludeDirectories="." PreprocessorDefinitions="" MinimalRebuild="true" ExceptionHandling="0" BasicRuntimeChecks="0" RuntimeLibrary="1" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbbmalloc.def"" OutputFile="$(OutDir)\tbbmalloc_debug.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="1"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Debug-MT|x64" OutputDirectory="$(SolutionDir)intel64\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)intel64\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool" TargetEnvironment="3"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MTd /Od /Ob0 /Zi /EHs- /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=tbb_debug.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I." Optimization="0" AdditionalIncludeDirectories="." MinimalRebuild="false" ExceptionHandling="0" BasicRuntimeChecks="0" RuntimeLibrary="1" BufferSecurityCheck="false" TreatWChar_tAsBuiltInType="true" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3" ShowIncludes="false"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbbmalloc.def"" OutputFile="$(OutDir)\tbbmalloc_debug.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="17"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Release-MT|Win32" OutputDirectory="$(SolutionDir)ia32\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)ia32\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0" WholeProgramOptimization="1"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MT /O2 /Zi /EHs- /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=tbb.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I." AdditionalIncludeDirectories="." PreprocessorDefinitions="" ExceptionHandling="0" RuntimeLibrary="0" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbbmalloc.def"" OutputFile="$(OutDir)\tbbmalloc.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" OptimizeReferences="2" EnableCOMDATFolding="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="1"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Release-MT|x64" OutputDirectory="$(SolutionDir)intel64\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)intel64\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0" WholeProgramOptimization="1"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool" TargetEnvironment="3"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MT /O2 /Zi /EHs- /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=tbb.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I." AdditionalIncludeDirectories="." PreprocessorDefinitions="" ExceptionHandling="0" RuntimeLibrary="0" BufferSecurityCheck="false" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)\tbbmalloc.def"" OutputFile="$(OutDir)\tbbmalloc.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" OptimizeReferences="2" EnableCOMDATFolding="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="17"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
</Configurations> |
|||
<References> |
|||
</References> |
|||
<Files> |
|||
<Filter Name="Source Files" Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"> |
|||
<File RelativePath="..\..\src\tbb\intel64-masm\atomic_support.asm"> |
|||
<FileConfiguration Name="Debug|Win32" ExcludedFromBuild="true"> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="building atomic_support.obj" CommandLine="ml64 /Fo"intel64\Debug\atomic_support.obj" /DUSE_FRAME_POINTER /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm |
|||
" Outputs="intel64\Debug\atomic_support.obj"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|Win32" ExcludedFromBuild="true"> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="building atomic_support.obj" CommandLine="ml64 /Fo"intel64\Release\atomic_support.obj" /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm |
|||
" Outputs="intel64\Release\atomic_support.obj"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|Win32" ExcludedFromBuild="true"> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="building atomic_support.obj" CommandLine="ml64 /Fo"intel64\Debug-MT\atomic_support.obj" /DUSE_FRAME_POINTER /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm |
|||
" Outputs="intel64\Debug-MT\atomic_support.obj"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|Win32" ExcludedFromBuild="true"> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="building atomic_support.obj" CommandLine="ml64 /Fo"intel64\Release-MT\atomic_support.obj" /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm |
|||
" Outputs="intel64\Release-MT\atomic_support.obj"/> |
|||
</FileConfiguration> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbbmalloc\win32-tbbmalloc-export.def"> |
|||
<FileConfiguration Name="Debug|Win32"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbbmalloc/win32-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbbmalloc/win32-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|Win32"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbbmalloc/win32-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win32-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|Win32"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbbmalloc/win32-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbbmalloc/win32-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|Win32"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbbmalloc/win32-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|x64" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win32-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbbmalloc\win64-tbbmalloc-export.def"> |
|||
<FileConfiguration Name="Debug|Win32" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win64-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbbmalloc/win64-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|Win32" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win64-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbbmalloc/win64-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|Win32" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win64-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbbmalloc/win64-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|Win32" ExcludedFromBuild="true"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbb/win64-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|x64"> |
|||
<Tool Name="VCCustomBuildTool" Description="generating tbbmalloc.def file" CommandLine="cl /nologo /TC /EP ../../src/tbbmalloc/win64-tbbmalloc-export.def /DTBB_USE_DEBUG /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 /D__TBBMALLOC_BUILD=1 >"$(IntDir)\tbbmalloc.def" |
|||
" Outputs=""$(IntDir)\tbbmalloc.def""/> |
|||
</FileConfiguration> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbbmalloc\backend.cpp"/><File RelativePath="..\..\src\tbbmalloc\large_objects.cpp"/><File RelativePath="..\..\src\tbbmalloc\backref.cpp"/><File RelativePath="..\..\src\tbbmalloc\tbbmalloc.cpp"/><File RelativePath="..\..\src\tbb\itt_notify.cpp"/><File RelativePath="..\..\src\tbbmalloc\frontend.cpp"/></Filter> |
|||
<Filter Name="Header Files" Filter="h;hpp;hxx;hm;inl;inc;xsd" UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"> |
|||
<File RelativePath="..\..\include\tbb\internal\_concurrent_queue_impl.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\_tbb_windef.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\aligned_space.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\atomic.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\blocked_range.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\blocked_range2d.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\blocked_range3d.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\cache_aligned_allocator.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\combinable.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\concurrent_hash_map.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\concurrent_queue.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\concurrent_vector.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\critical_section.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbbmalloc\Customize.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\enumerable_thread_specific.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbbmalloc\LifoList.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbbmalloc\MapMemory.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\null_mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\null_rw_mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_do.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_for.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_for_each.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_invoke.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_reduce.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_scan.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_sort.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\parallel_while.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\partitioner.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\pipeline.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbbmalloc\proxy.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\queuing_mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\queuing_rw_mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\recursive_mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\scalable_allocator.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\spin_mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\spin_rw_mutex.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbbmalloc\Statistics.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\task.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\task_group.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\task_scheduler_init.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\task_scheduler_observer.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_allocator.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_config.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_exception.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbbmalloc\tbb_function_replacement.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_machine.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_profiling.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_stddef.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_thread.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbb_version.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbbmalloc_proxy.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tick_count.h"> |
|||
</File> |
|||
<File RelativePath="..\..\src\tbbmalloc\TypeDefinitions.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\machine\windows_ia32.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\machine\windows_intel64.h"> |
|||
</File> |
|||
</Filter> |
|||
<Filter Name="Resource Files" Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"> |
|||
<File RelativePath="..\..\src\tbbmalloc\tbbmalloc.rc"> |
|||
<FileConfiguration Name="Debug|Win32"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug|x64"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|Win32"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|x64"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|Win32"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|x64"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|Win32"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|x64"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
</File> |
|||
</Filter> |
|||
</Files> |
|||
<Globals> |
|||
</Globals> |
|||
</VisualStudioProject> |
@ -0,0 +1,214 @@ |
|||
<?xml version="1.0" encoding="windows-1251"?> |
|||
<VisualStudioProject ProjectType="Visual C++" Version="9.00" Name="tbbmalloc_proxy" ProjectGUID="{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}" RootNamespace="tbbmalloc_proxy" Keyword="Win32Proj" TargetFrameworkVersion="131072"> |
|||
<Platforms> |
|||
<Platform Name="Win32"/> |
|||
<Platform Name="x64"/> |
|||
</Platforms> |
|||
<ToolFiles> |
|||
<DefaultToolFile FileName="masm.rules"/> |
|||
</ToolFiles> |
|||
<Configurations> |
|||
<Configuration Name="Debug|Win32" OutputDirectory="$(SolutionDir)ia32\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)ia32\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MDd /Od /Ob0 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=tbb_debug.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc" Optimization="0" AdditionalIncludeDirectories="." PreprocessorDefinitions="" MinimalRebuild="true" ExceptionHandling="1" BasicRuntimeChecks="0" RuntimeLibrary="3" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO " OutputFile="$(OutDir)\tbbmalloc_proxy_debug.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="1"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Debug|x64" OutputDirectory="$(SolutionDir)intel64\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)intel64\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool" TargetEnvironment="3"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MDd /Od /Ob0 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=tbb_debug.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc" Optimization="0" AdditionalIncludeDirectories="." MinimalRebuild="false" ExceptionHandling="0" BasicRuntimeChecks="0" RuntimeLibrary="3" BufferSecurityCheck="false" TreatWChar_tAsBuiltInType="true" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3" ShowIncludes="false"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO" OutputFile="$(OutDir)\tbbmalloc_proxy_debug.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="17"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Release|Win32" OutputDirectory="$(SolutionDir)ia32\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)ia32\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0" WholeProgramOptimization="1"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MD /O2 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=tbb.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc" AdditionalIncludeDirectories="." PreprocessorDefinitions="" ExceptionHandling="0" RuntimeLibrary="2" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO " OutputFile="$(OutDir)\tbbmalloc_proxy.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" OptimizeReferences="2" EnableCOMDATFolding="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="1"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Release|x64" OutputDirectory="$(SolutionDir)intel64\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)intel64\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0" WholeProgramOptimization="1"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool" TargetEnvironment="3"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MD /O2 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=tbb.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc" AdditionalIncludeDirectories="." PreprocessorDefinitions="" ExceptionHandling="0" RuntimeLibrary="2" BufferSecurityCheck="false" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO" OutputFile="$(OutDir)\tbbmalloc_proxy.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" OptimizeReferences="2" EnableCOMDATFolding="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="17"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Debug-MT|Win32" OutputDirectory="$(SolutionDir)ia32\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)ia32\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MTd /Od /Ob0 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=tbb_debug.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc" Optimization="0" AdditionalIncludeDirectories="." PreprocessorDefinitions="" MinimalRebuild="true" ExceptionHandling="1" BasicRuntimeChecks="0" RuntimeLibrary="1" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO " OutputFile="$(OutDir)\tbbmalloc_proxy_debug.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="1"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Debug-MT|x64" OutputDirectory="$(SolutionDir)intel64\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)intel64\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool" TargetEnvironment="3"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MTd /Od /Ob0 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=tbb_debug.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc" Optimization="0" AdditionalIncludeDirectories="." MinimalRebuild="false" ExceptionHandling="0" BasicRuntimeChecks="0" RuntimeLibrary="1" BufferSecurityCheck="false" TreatWChar_tAsBuiltInType="true" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3" ShowIncludes="false"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO" OutputFile="$(OutDir)\tbbmalloc_proxy_debug.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="17"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Release-MT|Win32" OutputDirectory="$(SolutionDir)ia32\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)ia32\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0" WholeProgramOptimization="1"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MT /O2 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=tbb.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc" AdditionalIncludeDirectories="." PreprocessorDefinitions="" ExceptionHandling="0" RuntimeLibrary="0" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO " OutputFile="$(OutDir)\tbbmalloc_proxy.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" OptimizeReferences="2" EnableCOMDATFolding="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="1"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
<Configuration Name="Release-MT|x64" OutputDirectory="$(SolutionDir)intel64\$(ConfigurationName)" IntermediateDirectory="$(SolutionDir)intel64\$(ConfigurationName)" ConfigurationType="2" CharacterSet="0" WholeProgramOptimization="1"> |
|||
<Tool Name="VCPreBuildEventTool"/> |
|||
<Tool Name="VCCustomBuildTool"/> |
|||
<Tool Name="MASM"/> |
|||
<Tool Name="VCXMLDataGeneratorTool"/> |
|||
<Tool Name="VCWebServiceProxyGeneratorTool"/> |
|||
<Tool Name="VCMIDLTool" TargetEnvironment="3"/> |
|||
<Tool Name="VCCLCompilerTool" AdditionalOptions=" /c /MT /O2 /Zi /EHsc /GR /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=tbb.lib /DDO_ITT_NOTIFY /GS /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0501 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc" AdditionalIncludeDirectories="." PreprocessorDefinitions="" ExceptionHandling="0" RuntimeLibrary="0" BufferSecurityCheck="false" UsePrecompiledHeader="0" WarningLevel="4" DebugInformationFormat="3"/> |
|||
<Tool Name="VCManagedResourceCompilerTool"/> |
|||
<Tool Name="VCResourceCompilerTool"/> |
|||
<Tool Name="VCPreLinkEventTool"/> |
|||
<Tool Name="VCLinkerTool" AdditionalOptions="/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO" OutputFile="$(OutDir)\tbbmalloc_proxy.dll" LinkIncremental="1" GenerateDebugInformation="true" SubSystem="2" OptimizeReferences="2" EnableCOMDATFolding="2" RandomizedBaseAddress="1" DataExecutionPrevention="0" TargetMachine="17"/> |
|||
<Tool Name="VCALinkTool"/> |
|||
<Tool Name="VCManifestTool"/> |
|||
<Tool Name="VCXDCMakeTool"/> |
|||
<Tool Name="VCBscMakeTool"/> |
|||
<Tool Name="VCFxCopTool"/> |
|||
<Tool Name="VCAppVerifierTool"/> |
|||
<Tool Name="VCPostBuildEventTool"/> |
|||
</Configuration> |
|||
</Configurations> |
|||
<References> |
|||
</References> |
|||
<Files> |
|||
<Filter Name="Source Files" Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx" UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"> |
|||
<File RelativePath="..\..\src\tbbmalloc\proxy.cpp"/><File RelativePath="..\..\src\tbbmalloc\tbb_function_replacement.cpp"/></Filter> |
|||
<Filter Name="Header Files" Filter="h;hpp;hxx;hm;inl;inc;xsd" UniqueIdentifier="{93995380-89BD-4b04-88EB-625FBE52EBFB}"> |
|||
<File RelativePath="..\..\src\tbbmalloc\tbb_function_replacement.h"> |
|||
</File> |
|||
<File RelativePath="..\..\include\tbb\tbbmalloc_proxy.h"> |
|||
</File> |
|||
</Filter> |
|||
<Filter Name="Resource Files" Filter="rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav" UniqueIdentifier="{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}"> |
|||
<File RelativePath="..\..\src\tbbmalloc\tbbmalloc.rc"> |
|||
<FileConfiguration Name="Debug|Win32"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug|x64"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|Win32"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release|x64"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|Win32"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Debug-MT|x64"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|Win32"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
<FileConfiguration Name="Release-MT|x64"> |
|||
<Tool Name="VCResourceCompilerTool" AdditionalOptions="/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400"/> |
|||
</FileConfiguration> |
|||
</File> |
|||
</Filter> |
|||
</Files> |
|||
<Globals> |
|||
</Globals> |
|||
</VisualStudioProject> |
@ -0,0 +1 @@ |
|||
#define __TBB_VERSION_STRINGS(N) "Empty" |
@ -0,0 +1,138 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Define compiler-specific variables. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting compiler flags. |
|||
#------------------------------------------------------------------------------ |
|||
CPLUS = cl /nologo |
|||
LINK_FLAGS = /link /nologo |
|||
LIB_LINK_FLAGS=/link /nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DYNAMICBASE /NXCOMPAT |
|||
|
|||
ifeq ($(arch), ia32) |
|||
LIB_LINK_FLAGS += /SAFESEH |
|||
endif |
|||
|
|||
ifeq ($(runtime), vc_mt) |
|||
MS_CRT_KEY = /MT$(if $(findstring debug,$(cfg)),d) |
|||
else |
|||
MS_CRT_KEY = /MD$(if $(findstring debug,$(cfg)),d) |
|||
endif |
|||
EH_FLAGS = /EHsc /GR |
|||
|
|||
ifeq ($(cfg), release) |
|||
CPLUS_FLAGS = $(MS_CRT_KEY) /O2 /Zi $(EH_FLAGS) /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=$(TBB.LIB) |
|||
ASM_FLAGS = |
|||
endif |
|||
ifeq ($(cfg), debug) |
|||
CPLUS_FLAGS = $(MS_CRT_KEY) /Od /Ob0 /Zi $(EH_FLAGS) /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=$(TBB.LIB) |
|||
ASM_FLAGS = /DUSE_FRAME_POINTER |
|||
endif |
|||
|
|||
ifeq ($(target_ui), win8ui) |
|||
CPLUS_FLAGS += /D "_UNICODE" /D "UNICODE" /D "WINAPI_FAMILY=WINAPI_FAMILY_APP" |
|||
_WIN32_WINNT=0x0602 |
|||
ifeq ($(target_ui_mode), production) |
|||
LIB_LINK_FLAGS += /APPCONTAINER |
|||
endif |
|||
else |
|||
CPLUS_FLAGS += /DDO_ITT_NOTIFY |
|||
endif |
|||
|
|||
CPLUS_FLAGS += /GS |
|||
|
|||
COMPILE_ONLY = /c |
|||
PREPROC_ONLY = /TP /EP |
|||
INCLUDE_KEY = /I |
|||
DEFINE_KEY = /D |
|||
OUTPUT_KEY = /Fe |
|||
OUTPUTOBJ_KEY = /Fo |
|||
WARNING_AS_ERROR_KEY = /WX |
|||
|
|||
ifeq ($(runtime),vc7.1) |
|||
WARNING_KEY = /W3 |
|||
else |
|||
WARNING_KEY = /W4 |
|||
OPENMP_FLAG = /openmp |
|||
endif |
|||
|
|||
DYLIB_KEY = /DLL |
|||
EXPORT_KEY = /DEF: |
|||
NODEFAULTLIB_KEY = /Zl |
|||
NOINTRINSIC_KEY = /Oi- |
|||
|
|||
ifeq ($(runtime),vc8) |
|||
WARNING_KEY += /Wp64 |
|||
CPLUS_FLAGS += /D_USE_RTM_VERSION |
|||
endif |
|||
|
|||
CPLUS_FLAGS += /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE \ |
|||
/D_WIN32_WINNT=$(_WIN32_WINNT) |
|||
C_FLAGS = $(CPLUS_FLAGS) |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting compiler flags. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
ASSEMBLY_SOURCE=$(arch)-masm |
|||
ifeq (intel64,$(arch)) |
|||
ASM=ml64 /nologo |
|||
ASM_FLAGS += /DEM64T=1 /c /Zi |
|||
TBB_ASM.OBJ = atomic_support.obj intel64_misc.obj |
|||
MALLOC_ASM.OBJ = atomic_support.obj |
|||
else |
|||
ASM=ml /nologo |
|||
ASM_FLAGS += /c /coff /Zi /safeseh |
|||
TBB_ASM.OBJ = atomic_support.obj lock_byte.obj |
|||
endif |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
ifneq ($(target_ui), win8ui) |
|||
M_CPLUS_FLAGS = $(subst $(EH_FLAGS),/EHs-,$(CPLUS_FLAGS)) |
|||
else |
|||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) |
|||
endif |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of define compiler-specific variables. |
|||
#------------------------------------------------------------------------------ |
@ -0,0 +1,145 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Overriding settings from windows.inc |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
SLASH= $(strip \) |
|||
OBJ = o |
|||
LIBEXT = dll # MinGW allows linking with DLLs directly |
|||
|
|||
TBB.RES = |
|||
MALLOC.RES = |
|||
RML.RES = |
|||
TBB.MANIFEST = |
|||
MALLOC.MANIFEST = |
|||
RML.MANIFEST = |
|||
|
|||
ifeq (ia32,$(arch)) |
|||
TBB.LST = $(tbb_root)/src/tbb/lin32-tbb-export.lst |
|||
else |
|||
TBB.LST = $(tbb_root)/src/tbb/win64-gcc-tbb-export.lst |
|||
endif |
|||
MALLOC.DEF = $(MALLOC_ROOT)/$(def_prefix)-gcc-tbbmalloc-export.def |
|||
RML.DEF = $(RML_SERVER_ROOT)/lin-rml-export.def |
|||
|
|||
LINK_TBB.LIB = $(TBB.LIB) |
|||
# no TBB proxy for the configuration |
|||
PROXY.LIB = |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of overridden settings |
|||
#------------------------------------------------------------------------------ |
|||
# Compiler-specific variables |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
CPLUS = g++ |
|||
COMPILE_ONLY = -c -MMD |
|||
PREPROC_ONLY = -E -x c++ |
|||
INCLUDE_KEY = -I |
|||
DEFINE_KEY = -D |
|||
OUTPUT_KEY = -o # |
|||
OUTPUTOBJ_KEY = -o # |
|||
PIC_KEY = |
|||
WARNING_AS_ERROR_KEY = -Werror |
|||
WARNING_KEY = -Wall |
|||
TEST_WARNING_KEY = -Wextra -Wshadow -Wcast-qual -Woverloaded-virtual -Wnon-virtual-dtor -Wno-uninitialized |
|||
WARNING_SUPPRESS = -Wno-parentheses -Wno-uninitialized |
|||
DYLIB_KEY = -shared |
|||
LIBDL = |
|||
EXPORT_KEY = -Wl,--version-script, |
|||
LIBS = -lpsapi |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of compiler-specific variables |
|||
#------------------------------------------------------------------------------ |
|||
# Command lines |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
LINK_FLAGS = -Wl,--enable-auto-import |
|||
LIB_LINK_FLAGS = $(DYLIB_KEY) |
|||
# gcc 4.4 and higher support -std=c++0x |
|||
ifeq (ok,$(shell cmd /C "cscript /nologo /E:jscript $(tbb_root)/build/detect.js /minversion gcc 4.4")) |
|||
CPP11_FLAGS = -std=c++0x -D_TBB_CPP0X |
|||
endif |
|||
|
|||
ifeq ($(cfg), release) |
|||
CPLUS_FLAGS = -O2 |
|||
endif |
|||
ifeq ($(cfg), debug) |
|||
CPLUS_FLAGS = -g -O0 -DTBB_USE_DEBUG |
|||
endif |
|||
|
|||
ifneq (00,$(lambdas)$(cpp0x)) |
|||
CXX_ONLY_FLAGS += $(CPP11_FLAGS) |
|||
endif |
|||
|
|||
CPLUS_FLAGS += -DUSE_WINTHREAD |
|||
CPLUS_FLAGS += -D_WIN32_WINNT=$(_WIN32_WINNT) |
|||
|
|||
# MinGW specific |
|||
CPLUS_FLAGS += -DMINGW_HAS_SECURE_API=1 -D__MSVCRT_VERSION__=0x0700 -msse -mthreads |
|||
|
|||
CONLY = gcc |
|||
debugger = gdb |
|||
C_FLAGS = $(CPLUS_FLAGS) |
|||
|
|||
ifeq (intel64,$(arch)) |
|||
CPLUS_FLAGS += -m64 |
|||
LIB_LINK_FLAGS += -m64 |
|||
endif |
|||
|
|||
ifeq (ia32,$(arch)) |
|||
CPLUS_FLAGS += -m32 -march=i686 |
|||
LIB_LINK_FLAGS += -m32 |
|||
endif |
|||
|
|||
# For examples |
|||
export UNIXMODE = 1 |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of command lines |
|||
#------------------------------------------------------------------------------ |
|||
# Setting assembler data |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
ASM= |
|||
ASM_FLAGS= |
|||
TBB_ASM.OBJ= |
|||
ASSEMBLY_SOURCE=$(arch)-gas |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting assembler data |
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) -fno-rtti -fno-exceptions |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data |
|||
#------------------------------------------------------------------------------ |
@ -0,0 +1,173 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Define compiler-specific variables. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting default configuration to release. |
|||
#------------------------------------------------------------------------------ |
|||
cfg ?= release |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting default configuration to release. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting compiler flags. |
|||
#------------------------------------------------------------------------------ |
|||
CPLUS = icl /nologo $(VCCOMPAT_FLAG) |
|||
LINK_FLAGS = /link /nologo |
|||
LIB_LINK_FLAGS= /link /nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DYNAMICBASE /NXCOMPAT |
|||
|
|||
ifeq ($(arch), ia32) |
|||
LIB_LINK_FLAGS += /SAFESEH |
|||
endif |
|||
|
|||
|
|||
# ICC 11.0 and higher support -std=c++0x |
|||
ifeq (ok,$(shell cmd /C "cscript /nologo /E:jscript $(tbb_root)/build/detect.js /minversion icl 11")) |
|||
CPP11_FLAGS = /Qstd=c++0x /D_TBB_CPP0X |
|||
endif |
|||
|
|||
# ICC 12.0 and higher provide Intel(R) Cilk Plus |
|||
ifeq (ok,$(shell cmd /C "cscript /nologo /E:jscript $(tbb_root)/build/detect.js /minversion icl 12")) |
|||
CILK_AVAILABLE = yes |
|||
endif |
|||
|
|||
ifeq ($(runtime), vc_mt) |
|||
MS_CRT_KEY = /MT$(if $(findstring debug,$(cfg)),d) |
|||
else |
|||
MS_CRT_KEY = /MD$(if $(findstring debug,$(cfg)),d) |
|||
endif |
|||
EH_FLAGS = /EHsc /GR |
|||
|
|||
ifeq ($(cfg), release) |
|||
CPLUS_FLAGS = $(MS_CRT_KEY) /O2 /Zi $(EH_FLAGS) /Zc:forScope /Zc:wchar_t /D__TBB_LIB_NAME=$(TBB.LIB) |
|||
ASM_FLAGS = |
|||
endif |
|||
ifeq ($(cfg), debug) |
|||
CPLUS_FLAGS = $(MS_CRT_KEY) /Od /Ob0 /Zi $(EH_FLAGS) /Zc:forScope /Zc:wchar_t /DTBB_USE_DEBUG /D__TBB_LIB_NAME=$(TBB.LIB) |
|||
ASM_FLAGS = /DUSE_FRAME_POINTER |
|||
endif |
|||
CPLUS_FLAGS += /GS |
|||
|
|||
COMPILE_ONLY = /c /QMMD |
|||
# PREPROC_ONLY should really use /TP which applies to all files in the command line. |
|||
# But with /TP, ICL does not preprocess *.def files. |
|||
PREPROC_ONLY = /EP /Tp |
|||
INCLUDE_KEY = /I |
|||
DEFINE_KEY = /D |
|||
OUTPUT_KEY = /Fe |
|||
OUTPUTOBJ_KEY = /Fo |
|||
WARNING_AS_ERROR_KEY = /WX |
|||
WARNING_KEY = /W3 |
|||
DYLIB_KEY = /DLL |
|||
EXPORT_KEY = /DEF: |
|||
NODEFAULTLIB_KEY = /Zl |
|||
NOINTRINSIC_KEY = /Oi- |
|||
|
|||
|
|||
ifneq (,$(codecov)) |
|||
CPLUS_FLAGS += /Qprof-genx |
|||
else |
|||
CPLUS_FLAGS += /DDO_ITT_NOTIFY |
|||
endif |
|||
|
|||
OPENMP_FLAG = /Qopenmp |
|||
CPLUS_FLAGS += /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE \ |
|||
/D_WIN32_WINNT=$(_WIN32_WINNT) |
|||
|
|||
ifeq ($(runtime),vc8) |
|||
CPLUS_FLAGS += /D_USE_RTM_VERSION |
|||
endif |
|||
|
|||
|
|||
C_FLAGS = $(CPLUS_FLAGS) |
|||
|
|||
ifneq (00,$(lambdas)$(cpp0x)) |
|||
CPLUS_FLAGS += $(CPP11_FLAGS) |
|||
endif |
|||
|
|||
VCVERSION:=$(runtime) |
|||
VCCOMPAT_FLAG ?= $(if $(findstring vc7.1, $(VCVERSION)),/Qvc7.1) |
|||
ifeq ($(VCCOMPAT_FLAG),) |
|||
VCCOMPAT_FLAG := $(if $(findstring vc8, $(VCVERSION)),/Qvc8) |
|||
endif |
|||
ifeq ($(VCCOMPAT_FLAG),) |
|||
VCCOMPAT_FLAG := $(if $(findstring vc_mt, $(VCVERSION)),/Qvc10) |
|||
endif |
|||
ifeq ($(VCCOMPAT_FLAG),) |
|||
VCCOMPAT_FLAG := $(if $(findstring vc9, $(VCVERSION)),/Qvc9) |
|||
endif |
|||
ifeq ($(VCCOMPAT_FLAG),) |
|||
VCCOMPAT_FLAG := $(if $(findstring vc10, $(VCVERSION)),/Qvc10) |
|||
endif |
|||
ifeq ($(VCCOMPAT_FLAG),) |
|||
VCCOMPAT_FLAG := $(if $(findstring vc11, $(VCVERSION)),/Qvc11) |
|||
endif |
|||
ifeq ($(VCCOMPAT_FLAG),) |
|||
$(error VC version not detected correctly: $(VCVERSION) ) |
|||
endif |
|||
export VCCOMPAT_FLAG |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of setting compiler flags. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
ASSEMBLY_SOURCE=$(arch)-masm |
|||
ifeq (intel64,$(arch)) |
|||
ASM=ml64 /nologo |
|||
ASM_FLAGS += /DEM64T=1 /c /Zi |
|||
TBB_ASM.OBJ = atomic_support.obj intel64_misc.obj |
|||
MALLOC_ASM.OBJ = atomic_support.obj |
|||
else |
|||
ASM=ml /nologo |
|||
ASM_FLAGS += /c /coff /Zi /safeseh |
|||
TBB_ASM.OBJ = atomic_support.obj lock_byte.obj |
|||
endif |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
M_CPLUS_FLAGS = $(subst $(EH_FLAGS),/EHs-,$(CPLUS_FLAGS)) |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of define compiler-specific variables. |
|||
#------------------------------------------------------------------------------ |
@ -0,0 +1,111 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
export SHELL = cmd |
|||
|
|||
ifdef tbb_build_dir |
|||
test_dir:=$(tbb_build_dir) |
|||
else |
|||
test_dir:=. |
|||
endif |
|||
|
|||
# TODO give an error if archs doesn't match |
|||
ifndef arch |
|||
export arch:=$(shell cmd /C "cscript /nologo /E:jscript $(tbb_root)/build/detect.js /arch $(compiler)") |
|||
endif |
|||
|
|||
ifndef runtime |
|||
export runtime:=$(shell cmd /C "cscript /nologo /E:jscript $(tbb_root)/build/detect.js /runtime $(compiler)") |
|||
endif |
|||
|
|||
native_compiler := cl |
|||
export compiler ?= cl |
|||
debugger ?= devenv /debugexe |
|||
|
|||
CMD=cmd /C |
|||
CWD=$(shell cmd /C echo %CD%) |
|||
RM=cmd /C del /Q /F |
|||
RD=cmd /C rmdir |
|||
MD=cmd /c mkdir |
|||
SLASH=\\ |
|||
NUL = nul |
|||
|
|||
AR=lib |
|||
AR_OUTPUT_KEY=/out: |
|||
AR_FLAGS=/nologo /nodefaultlib |
|||
|
|||
OBJ = obj |
|||
DLL = dll |
|||
LIBEXT = lib |
|||
ASMEXT = asm |
|||
|
|||
def_prefix = $(if $(findstring ia32,$(arch)),win32,win64) |
|||
|
|||
# Target Windows version. Do not increase beyond 0x0501 without prior discussion! |
|||
# Used as the value for macro definition opiton in windows.cl.inc etc. |
|||
_WIN32_WINNT=0x0501 |
|||
|
|||
TBB.LST = $(tbb_root)/src/tbb/$(def_prefix)-tbb-export.lst |
|||
TBB.DEF = $(TBB.LST:.lst=.def) |
|||
TBB.DLL = tbb$(CPF_SUFFIX)$(DEBUG_SUFFIX).$(DLL) |
|||
TBB.LIB = tbb$(CPF_SUFFIX)$(DEBUG_SUFFIX).$(LIBEXT) |
|||
TBB.RES = tbb_resource.res |
|||
# On Windows, we use #pragma comment to set the proper TBB lib to link with |
|||
# But for cross-configuration testing, need to link explicitly |
|||
LINK_TBB.LIB = $(if $(crosstest),$(TBB.LIB)) |
|||
TBB.MANIFEST = |
|||
ifneq ($(filter vc8 vc9,$(runtime)),) |
|||
TBB.MANIFEST = tbbmanifest.exe.manifest |
|||
endif |
|||
|
|||
MALLOC.DEF = $(MALLOC_ROOT)/$(def_prefix)-tbbmalloc-export.def |
|||
MALLOC.DLL = tbbmalloc$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOC.LIB = tbbmalloc$(DEBUG_SUFFIX).$(LIBEXT) |
|||
MALLOC.RES = tbbmalloc.res |
|||
MALLOC.MANIFEST = |
|||
ifneq ($(filter vc8 vc9,$(runtime)),) |
|||
MALLOC.MANIFEST = tbbmanifest.exe.manifest |
|||
endif |
|||
LINK_MALLOC.LIB = $(MALLOC.LIB) |
|||
|
|||
MALLOCPROXY.DLL = tbbmalloc_proxy$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOCPROXY.LIB = tbbmalloc_proxy$(DEBUG_SUFFIX).$(LIBEXT) |
|||
LINK_MALLOCPROXY.LIB = $(MALLOCPROXY.LIB) |
|||
|
|||
PROXY.LIB = tbbproxy$(DEBUG_SUFFIX).$(LIBEXT) |
|||
|
|||
RML.DEF = $(RML_SERVER_ROOT)/$(def_prefix)-rml-export.def |
|||
RML.DLL = irml$(DEBUG_SUFFIX).$(DLL) |
|||
RML.LIB = irml$(DEBUG_SUFFIX).$(LIBEXT) |
|||
RML.RES = irml.res |
|||
ifneq ($(filter vc8 vc9,$(runtime)),) |
|||
RML.MANIFEST = tbbmanifest.exe.manifest |
|||
endif |
|||
|
|||
MAKE_VERSIONS = cmd /C cscript /nologo /E:jscript $(subst \,/,$(tbb_root))/build/version_info_windows.js $(compiler) $(arch) $(subst \,/,"$(CPLUS) $(CPLUS_FLAGS)") > version_string.ver |
|||
MAKE_TBBVARS = cmd /C "$(subst /,\,$(tbb_root))\build\generate_tbbvars.bat" |
|||
|
|||
TEST_LAUNCHER = $(subst /,\,$(tbb_root))\build\test_launcher.bat $(largs) |
@ -0,0 +1,93 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Define compiler-specific variables. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting compiler flags. |
|||
#------------------------------------------------------------------------------ |
|||
CPLUS = cl /nologo |
|||
LINK_FLAGS = /link /nologo |
|||
LIB_LINK_FLAGS=/link /nologo /DLL /MAP /DEBUG |
|||
MS_CRT_KEY = /MT$(if $(findstring debug,$(cfg)),d) |
|||
EH_FLAGS = /EHsc /GR |
|||
|
|||
ifeq ($(cfg), release) |
|||
CPLUS_FLAGS = $(MS_CRT_KEY) /O2 /Zi $(EH_FLAGS) /Zc:forScope /D_XBOX /DTBB_NO_LEGACY=1 |
|||
ASM_FLAGS = |
|||
endif |
|||
ifeq ($(cfg), debug) |
|||
CPLUS_FLAGS = $(MS_CRT_KEY) /Od /Ob0 /Zi $(EH_FLAGS) /Zc:forScope \ |
|||
/DTBB_USE_DEBUG /D_XBOX /DTBB_NO_LEGACY=1 |
|||
ASM_FLAGS = /DUSE_FRAME_POINTER |
|||
endif |
|||
|
|||
|
|||
COMPILE_ONLY = /c |
|||
PREPROC_ONLY = /TP /EP |
|||
INCLUDE_KEY = /I |
|||
DEFINE_KEY = /D |
|||
OUTPUT_KEY = /Fe |
|||
OUTPUTOBJ_KEY = /Fo |
|||
WARNING_AS_ERROR_KEY = /WX |
|||
WARNING_KEY = /W3 |
|||
DYLIB_KEY = /DLL |
|||
EXPORT_KEY = /DEF: |
|||
|
|||
ifeq (em64t,$(arch)) |
|||
CPLUS_FLAGS += /GS- |
|||
endif |
|||
|
|||
CPLUS_FLAGS += /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=$(_WIN32_WINNT) |
|||
C_FLAGS = $(CPLUS_FLAGS) /TC |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting compiler flags. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
# nothing for XBOX360 |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting assembler data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# Setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
M_CPLUS_FLAGS = $(subst $(EH_FLAGS),/EHs-,$(CPLUS_FLAGS)) |
|||
#------------------------------------------------------------------------------ |
|||
# End of setting tbbmalloc data. |
|||
#------------------------------------------------------------------------------ |
|||
|
|||
#------------------------------------------------------------------------------ |
|||
# End of define compiler-specific variables. |
|||
#------------------------------------------------------------------------------ |
@ -0,0 +1,80 @@ |
|||
# Copyright 2005-2013 Intel Corporation. All Rights Reserved. |
|||
# |
|||
# This file is part of Threading Building Blocks. |
|||
# |
|||
# Threading Building Blocks is free software; you can redistribute it |
|||
# and/or modify it under the terms of the GNU General Public License |
|||
# version 2 as published by the Free Software Foundation. |
|||
# |
|||
# Threading Building Blocks is distributed in the hope that it will be |
|||
# useful, but WITHOUT ANY WARRANTY; without even the implied warranty |
|||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|||
# GNU General Public License for more details. |
|||
# |
|||
# You should have received a copy of the GNU General Public License |
|||
# along with Threading Building Blocks; if not, write to the Free Software |
|||
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
|||
# |
|||
# As a special exception, you may use this file as part of a free software |
|||
# library without restriction. Specifically, if other files instantiate |
|||
# templates or use macros or inline functions from this file, or you compile |
|||
# this file and link it with other files to produce an executable, this |
|||
# file does not by itself cause the resulting executable to be covered by |
|||
# the GNU General Public License. This exception does not however |
|||
# invalidate any other reasons why the executable file might be covered by |
|||
# the GNU General Public License. |
|||
|
|||
ifdef tbb_build_dir |
|||
test_dir:=$(tbb_build_dir) |
|||
else |
|||
test_dir:=. |
|||
endif |
|||
|
|||
# TODO give an error if archs doesn't match |
|||
ifndef arch |
|||
export arch:=xbox360 |
|||
endif |
|||
|
|||
ifndef runtime |
|||
export runtime:=xdk |
|||
endif |
|||
|
|||
native_compiler := cl |
|||
export compiler ?= cl |
|||
debugger ?= devenv /debugexe |
|||
|
|||
CMD=cmd /C |
|||
CWD=$(shell cmd /C echo %CD%) |
|||
RM=cmd /C del /Q /F |
|||
RD=cmd /C rmdir |
|||
MD=cmd /c mkdir |
|||
SLASH=\\ |
|||
NUL = nul |
|||
|
|||
OBJ = obj |
|||
DLL = dll |
|||
LIBEXT = lib |
|||
|
|||
def_prefix = $(arch) |
|||
|
|||
# Target Windows version. Do not increase beyond 0x0500 without prior discussion! |
|||
# Used as the value for macro definition opiton in compiler specific inc files. |
|||
_WIN32_WINNT=0x0400 |
|||
|
|||
TBB.LST = |
|||
TBB.DEF = $(tbb_root)/src/tbb/$(def_prefix)-tbb-export.def |
|||
TBB.DLL = tbb$(CPF_SUFFIX)$(DEBUG_SUFFIX).$(DLL) |
|||
TBB.LIB = tbb$(CPF_SUFFIX)$(DEBUG_SUFFIX).$(LIBEXT) |
|||
TBB.RES = |
|||
#On Windows we specify appropriate tbb library using #pragma comment |
|||
LINK_TBB.LIB = |
|||
|
|||
MALLOC.DEF = $(MALLOC_ROOT)/$(def_prefix)-tbbmalloc-export.def |
|||
MALLOC.DLL = tbbmalloc$(DEBUG_SUFFIX).$(DLL) |
|||
MALLOC.LIB = tbbmalloc$(DEBUG_SUFFIX).$(LIBEXT) |
|||
#On Windows we specify appropriate tbbmalloc library using #pragma comment |
|||
LINK_MALLOC.LIB = |
|||
MALLOC.RES = |
|||
|
|||
MAKE_VERSIONS = cmd /C cscript /nologo /E:jscript $(subst \,/,$(tbb_root))/build/version_info_windows.js $(compiler) $(arch) $(subst \,/,"$(CPLUS) $(CPLUS_FLAGS) $(INCLUDES)") > version_string.ver |
|||
MAKE_TBBVARS = cmd /C "$(subst /,\,$(tbb_root))\build\generate_tbbvars.bat" |
Reference in new issue
xxxxxxxxxx