Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8c5a0336bd |
@@ -0,0 +1,45 @@
|
||||
# Set the default behavior, in case people don't have core.autocrlf set.
|
||||
* text=auto
|
||||
|
||||
# Explicitly declare text files you want to always be normalized and converted
|
||||
# to native line endings on checkout.
|
||||
*.c text
|
||||
*.h text
|
||||
*.cpp text
|
||||
*.def text
|
||||
*.rc text
|
||||
*.i text
|
||||
*.sh text
|
||||
*.csh text
|
||||
*.mk text
|
||||
*.java text
|
||||
*.csv text
|
||||
*.lst text
|
||||
*.asm text
|
||||
*.cfg text
|
||||
*.css text
|
||||
*.inc text
|
||||
*.js text
|
||||
*.rb text
|
||||
*.strings text
|
||||
*.txt text
|
||||
*export.lst text
|
||||
*.xml text
|
||||
*.py text
|
||||
*.md text
|
||||
*.classpath text
|
||||
*.cproject text
|
||||
*.project text
|
||||
*.properties text
|
||||
*.java text
|
||||
*.gradle text
|
||||
|
||||
# Declare files that will always have CRLF line endings on checkout.
|
||||
*.sln text eol=crlf
|
||||
*.bat text eol=crlf
|
||||
|
||||
# Denote all files that are truly binary and should not be modified.
|
||||
*.png binary
|
||||
*.jpg binary
|
||||
*.ico binary
|
||||
*.spir binary
|
||||
@@ -0,0 +1,86 @@
|
||||
# Ignore the debug and release directories created with Makefile builds #
|
||||
#########################################################################
|
||||
build/*_debug/
|
||||
build/*_release/
|
||||
|
||||
# Compiled source #
|
||||
###################
|
||||
*.com
|
||||
*.class
|
||||
*.dll
|
||||
*.lib
|
||||
*.pdb
|
||||
*.exe
|
||||
*.o
|
||||
*.so
|
||||
*.so.1
|
||||
*.so.2
|
||||
*.dylib
|
||||
*.a
|
||||
*.obj
|
||||
*.pyc
|
||||
|
||||
*.orig
|
||||
*.raw
|
||||
*.sample
|
||||
*.slo
|
||||
*.swp
|
||||
*.config
|
||||
*.la
|
||||
*.lai
|
||||
*.lo
|
||||
*.nhdr
|
||||
*.nii.gz
|
||||
*.nrrd
|
||||
|
||||
# Packages #
|
||||
############
|
||||
# it's better to unpack these files and commit the raw source
|
||||
# git has its own built in compression methods
|
||||
*.7z
|
||||
*.dmg
|
||||
*.gz
|
||||
*.iso
|
||||
*.jar
|
||||
*.rar
|
||||
*.tar
|
||||
*.tgz
|
||||
*.zip
|
||||
|
||||
# Logs and databases #
|
||||
######################
|
||||
*.log
|
||||
*.sql
|
||||
*.sqlite
|
||||
|
||||
# OS generated files #
|
||||
######################
|
||||
.DS_Store
|
||||
.DS_Store?
|
||||
._*
|
||||
.Spotlight-V100
|
||||
.Trashes
|
||||
ehthumbs.db
|
||||
Thumbs.db
|
||||
|
||||
# IDE generated files #
|
||||
######################
|
||||
/.ninja_deps
|
||||
/.ninja_log
|
||||
/build.ninja
|
||||
/rules.ninja
|
||||
*~
|
||||
.emacs.desktop
|
||||
|
||||
# Build system generated files #
|
||||
################################
|
||||
CMakeCache.txt
|
||||
CMakeFiles/
|
||||
|
||||
# Other #
|
||||
#########
|
||||
.clang_complete
|
||||
.idea
|
||||
.svn
|
||||
crash*
|
||||
*.tmp
|
||||
@@ -0,0 +1,201 @@
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
@@ -0,0 +1,84 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
tbb_root?=.
|
||||
include $(tbb_root)/build/common.inc
|
||||
.PHONY: default all tbb tbbmalloc tbbproxy test examples
|
||||
|
||||
#workaround for non-depend targets tbb and tbbmalloc which both depend on version_string.ver
|
||||
#According to documentation, recursively invoked make commands can process their targets in parallel
|
||||
.NOTPARALLEL: tbb tbbmalloc tbbproxy
|
||||
|
||||
default: tbb tbbmalloc $(if $(use_proxy),tbbproxy)
|
||||
|
||||
all: tbb tbbmalloc tbbproxy test examples
|
||||
|
||||
tbb: mkdir
|
||||
$(MAKE) -C "$(work_dir)_debug" -r -f $(tbb_root)/build/Makefile.tbb cfg=debug
|
||||
$(MAKE) -C "$(work_dir)_release" -r -f $(tbb_root)/build/Makefile.tbb cfg=release
|
||||
|
||||
tbbmalloc: mkdir
|
||||
$(MAKE) -C "$(work_dir)_debug" -r -f $(tbb_root)/build/Makefile.tbbmalloc cfg=debug malloc
|
||||
$(MAKE) -C "$(work_dir)_release" -r -f $(tbb_root)/build/Makefile.tbbmalloc cfg=release malloc
|
||||
|
||||
tbbproxy: mkdir
|
||||
$(MAKE) -C "$(work_dir)_debug" -r -f $(tbb_root)/build/Makefile.tbbproxy cfg=debug tbbproxy
|
||||
$(MAKE) -C "$(work_dir)_release" -r -f $(tbb_root)/build/Makefile.tbbproxy cfg=release tbbproxy
|
||||
|
||||
test: tbb tbbmalloc $(if $(use_proxy),tbbproxy)
|
||||
-$(MAKE) -C "$(work_dir)_debug" -r -f $(tbb_root)/build/Makefile.tbbmalloc cfg=debug malloc_test
|
||||
-$(MAKE) -C "$(work_dir)_debug" -r -f $(tbb_root)/build/Makefile.test cfg=debug
|
||||
-$(MAKE) -C "$(work_dir)_release" -r -f $(tbb_root)/build/Makefile.tbbmalloc cfg=release malloc_test
|
||||
-$(MAKE) -C "$(work_dir)_release" -r -f $(tbb_root)/build/Makefile.test cfg=release
|
||||
|
||||
rml: mkdir
|
||||
$(MAKE) -C "$(work_dir)_debug" -r -f $(tbb_root)/build/Makefile.rml cfg=debug
|
||||
$(MAKE) -C "$(work_dir)_release" -r -f $(tbb_root)/build/Makefile.rml cfg=release
|
||||
|
||||
|
||||
examples: tbb tbbmalloc
|
||||
$(MAKE) -C examples -r -f Makefile tbb_root=.. release test
|
||||
|
||||
python: mkdir
|
||||
$(MAKE) -C "$(work_dir)_release" -r -f $(tbb_root)/build/Makefile.tbb cfg=release
|
||||
bash -c ". $(work_dir)_release$(SLASH)tbbvars.sh && $(MAKE) -rC '$(full_tbb_root)/python' CXX=$(compiler) install test-install"
|
||||
|
||||
.PHONY: clean clean_examples mkdir info
|
||||
|
||||
clean: clean_examples
|
||||
$(shell $(RM) $(work_dir)_release$(SLASH)*.* >$(NUL) 2>$(NUL))
|
||||
$(shell $(RD) $(work_dir)_release >$(NUL) 2>$(NUL))
|
||||
$(shell $(RM) $(work_dir)_debug$(SLASH)*.* >$(NUL) 2>$(NUL))
|
||||
$(shell $(RD) $(work_dir)_debug >$(NUL) 2>$(NUL))
|
||||
@echo clean done
|
||||
|
||||
clean_examples:
|
||||
$(shell $(MAKE) -s -i -r -C examples -f Makefile tbb_root=.. clean >$(NUL) 2>$(NUL))
|
||||
|
||||
mkdir:
|
||||
$(shell $(MD) "$(work_dir)_release" >$(NUL) 2>$(NUL))
|
||||
$(shell $(MD) "$(work_dir)_debug" >$(NUL) 2>$(NUL))
|
||||
@echo Created $(work_dir)_release and ..._debug directories
|
||||
|
||||
info:
|
||||
@echo OS: $(tbb_os)
|
||||
@echo arch=$(arch)
|
||||
@echo compiler=$(compiler)
|
||||
@echo runtime=$(runtime)
|
||||
@echo tbb_build_prefix=$(tbb_build_prefix)
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
Intel(R) Threading Building Blocks - README
|
||||
|
||||
See index.html for directions and documentation.
|
||||
|
||||
If source is present (./Makefile and src/ directories),
|
||||
type 'gmake' in this directory to build and test.
|
||||
|
||||
See examples/index.html for runnable examples and directions.
|
||||
|
||||
See http://threadingbuildingblocks.org for full documentation
|
||||
and software information.
|
||||
@@ -1,31 +1,32 @@
|
||||
# Intel(R) Threading Building Blocks
|
||||
# Intel(R) Threading Building Blocks 2017 Update 3
|
||||
[](LICENSE)
|
||||
|
||||
Intel(R) Threading Building Blocks (Intel(R) TBB) lets you easily write parallel C++ programs that take
|
||||
full advantage of multicore performance, that are portable, composable and have future-proof scalability.
|
||||
|
||||
## Intel(R) TBB Distribution
|
||||
* Commercial version: [https://software.intel.com/en-us/intel-tbb] (https://software.intel.com/en-us/intel-tbb)
|
||||
* Community licensing: [https://software.intel.com/sites/campaigns/nest/] (https://software.intel.com/sites/campaigns/nest/)
|
||||
* Open source version: [https://www.threadingbuildingblocks.org/] (https://www.threadingbuildingblocks.org/)
|
||||
* Intel(R) TBB for Python\*: [http://anaconda.org/intel/tbb] (http://anaconda.org/intel/tbb)
|
||||
## Release Information
|
||||
Here are the latest [Changes](CHANGES) and [Release Notes](doc/Release_Notes.txt) (contains system requirements and known issues).
|
||||
|
||||
## Repository Content
|
||||
This is an official Intel(R) TBB public GitHub repository. All source and binary packages starting from Intel(R) TBB 4.4
|
||||
can be found at the [Release page] (https://github.com/01org/tbb/releases). Links to the packages with older versions of
|
||||
Intel(R) TBB can be found in the [download.md] (download.md) file.
|
||||
## tbb_tutorials branch information
|
||||
This release provides additional TBB examples for workshops, conferences, etc.
|
||||
* [examples/ppopp17](examples/ppopp17) – examples for [PPoPP 2017](https://ppopp17.sigplan.org/home)
|
||||
* [examples/europar17](examples/europar17) – examples for [Euro-Par 2017](http://europar2017.usc.es/)
|
||||
|
||||
## Repository Structure
|
||||
The Master branch is empty and contains only README.md and download.md files.
|
||||
## Documentation
|
||||
* Intel(R) TBB [tutorial](https://software.intel.com/en-us/tbb-tutorial)
|
||||
* Intel(R) TBB general documentation: [stable](https://software.intel.com/en-us/tbb-documentation)
|
||||
and [latest](https://www.threadingbuildingblocks.org/docs/help/index.htm)
|
||||
|
||||
tbb_\<major_version\> - branch for the new major version. All minor versions of the major release will be committed in this branch.
|
||||
## Support
|
||||
Please report issues and suggestions via
|
||||
[GitHub issues](https://github.com/01org/tbb/issues) or start a topic on the
|
||||
[Intel(R) TBB forum](http://software.intel.com/en-us/forums/intel-threading-building-blocks/).
|
||||
|
||||
For example:
|
||||
* Intel(R) TBB 2017 initial release goes to branch tbb_2017.
|
||||
* Intel(R) TBB 2017 Update 1 will go to branch tbb_2017 too.
|
||||
* Intel(R) TBB 2018 initial release will go to branch tbb_2018.
|
||||
## How to Contribute
|
||||
Please, read the instructions on the official [Intel(R) TBB open source site](https://www.threadingbuildingblocks.org/submit-contribution).
|
||||
|
||||
## Сontact engineering team
|
||||
* [E-mail us.] (mailto:inteltbbdevelopers@intel.com)
|
||||
* [E-mail us.](mailto:inteltbbdevelopers@intel.com)
|
||||
|
||||
------------------------------------------------------------------------
|
||||
Intel and the Intel logo are trademarks of Intel Corporation or its subsidiaries in the U.S. and/or other countries.
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
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
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# End of setting tbbmalloc data.
|
||||
#------------------------------------------------------------------------------
|
||||
@@ -0,0 +1,66 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
ifndef arch
|
||||
arch:=$(shell uname -p)
|
||||
export arch
|
||||
endif
|
||||
|
||||
ifndef runtime
|
||||
gcc_version:=$(shell gcc -dumpversion)
|
||||
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 $(VERSION_FLAGS) >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)
|
||||
|
||||
TEST_LAUNCHER=sh $(tbb_root)/build/test_launcher.sh $(largs)
|
||||
@@ -0,0 +1,110 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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 = -Wextra -Wshadow -Wcast-qual -Woverloaded-virtual -Wnon-virtual-dtor
|
||||
WARNING_SUPPRESS = -Wno-parentheses -Wno-non-virtual-dtor -Wno-dangling-else
|
||||
DYLIB_KEY = -shared
|
||||
EXPORT_KEY = -Wl,--version-script,
|
||||
LIBDL =
|
||||
|
||||
CPLUS = clang++
|
||||
CONLY = clang
|
||||
LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)
|
||||
LIBS += -lpthread -lrt
|
||||
LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
|
||||
C_FLAGS = $(CPLUS_FLAGS)
|
||||
|
||||
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 (,$(stdlib))
|
||||
CPLUS_FLAGS += -stdlib=$(stdlib)
|
||||
LIB_LINK_FLAGS += -stdlib=$(stdlib)
|
||||
endif
|
||||
|
||||
TBB_ASM.OBJ=
|
||||
MALLOC_ASM.OBJ=
|
||||
|
||||
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 (bg,$(arch))
|
||||
CPLUS = bgclang++
|
||||
CONLY = bgclang
|
||||
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
|
||||
#------------------------------------------------------------------------------
|
||||
# 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,93 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
WARNING_SUPPRESS = -Wno-parentheses
|
||||
|
||||
CPLUS = g++
|
||||
CONLY = gcc
|
||||
LIB_LINK_FLAGS = -shared
|
||||
LIBS = -lpthread
|
||||
C_FLAGS = $(CPLUS_FLAGS)
|
||||
|
||||
# gcc 6.0 and later have -flifetime-dse option that controls
|
||||
# elimination of stores done outside the object lifetime
|
||||
ifneq (,$(shell gcc -dumpversion | egrep "^([6-9])"))
|
||||
# keep pre-contruction stores for zero initialization
|
||||
DSE_KEY = -flifetime-dse=1
|
||||
endif
|
||||
|
||||
ifeq ($(cfg), release)
|
||||
CPLUS_FLAGS = -g -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 architecture, 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
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# End of setting tbbmalloc data.
|
||||
#------------------------------------------------------------------------------
|
||||
@@ -0,0 +1,74 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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 -dumpversion)
|
||||
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 $(VERSION_FLAGS) >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)
|
||||
|
||||
TEST_LAUNCHER=sh $(tbb_root)/build/test_launcher.sh $(largs)
|
||||
@@ -0,0 +1,166 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
# TODO: investigate why version_string.ver is not complete when $(RML_SERVER.OBJ) is being compiled.
|
||||
.NOTPARALLEL:
|
||||
|
||||
tbb_root ?= $(TBBROOT)
|
||||
BUILDING_PHASE=1
|
||||
TEST_RESOURCE = $(RML.RES)
|
||||
include $(tbb_root)/build/common.inc
|
||||
DEBUG_SUFFIX=$(findstring _debug,_$(cfg))
|
||||
|
||||
ifeq (android,$(target))
|
||||
$(error "RML is not supported on Android")
|
||||
endif
|
||||
|
||||
# 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)
|
||||
|
||||
ifeq ($(rml_wcrm),1)
|
||||
CPLUS_FLAGS+=/DRML_USE_WCRM
|
||||
endif
|
||||
|
||||
# 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) $(DSE_KEY) $(INCLUDES) $<
|
||||
|
||||
ifeq (linux,$(tbb_os))
|
||||
omp_dynamic_link.$(OBJ): CPLUS_FLAGS+=-fno-exceptions
|
||||
endif
|
||||
|
||||
tbb_misc_rml.$(OBJ) $(RML_SERVER.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) $(DSE_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): CPLUS_FLAGS += $(SDL_FLAGS)
|
||||
$(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)
|
||||
RML_CUSTOM_TESTS = 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)
|
||||
|
||||
$(RML_TESTS): %.$(TEST_EXT): %.$(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) $(RML_CUSTOM_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 dependencies
|
||||
-include *.d
|
||||
@@ -0,0 +1,118 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Define rules for making the TBB shared library.
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
tbb_root ?= "$(TBBROOT)"
|
||||
BUILDING_PHASE=1
|
||||
include $(tbb_root)/build/common.inc
|
||||
CPLUS_FLAGS += $(SDL_FLAGS)
|
||||
DEBUG_SUFFIX=$(findstring _debug,_$(cfg))
|
||||
|
||||
#------------------------------------------------------------
|
||||
# Define static pattern rules dealing with .cpp source files
|
||||
#------------------------------------------------------------
|
||||
$(warning CONFIG: cfg=$(cfg) arch=$(arch) compiler=$(compiler) target=$(target) 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) $(DSE_KEY) $(DEFINE_KEY)__TBB_BUILD=1
|
||||
|
||||
# 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) \
|
||||
x86_rtm_rw_mutex.$(OBJ) \
|
||||
spin_mutex.$(OBJ) \
|
||||
critical_section.$(OBJ) \
|
||||
mutex.$(OBJ) \
|
||||
recursive_mutex.$(OBJ) \
|
||||
condition_variable.$(OBJ) \
|
||||
tbb_thread.$(OBJ) \
|
||||
concurrent_monitor.$(OBJ) \
|
||||
semaphore.$(OBJ) \
|
||||
private_server.$(OBJ) \
|
||||
rml_tbb.$(OBJ) \
|
||||
tbb_misc.$(OBJ) \
|
||||
tbb_misc_ex.$(OBJ) \
|
||||
task.$(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 dependencies
|
||||
-include *.d
|
||||
@@ -0,0 +1,236 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
# default target
|
||||
default_malloc: malloc malloc_test
|
||||
|
||||
tbb_root ?= $(TBBROOT)
|
||||
BUILDING_PHASE=1
|
||||
TEST_RESOURCE = $(MALLOC.RES)
|
||||
TESTFILE=tbbmalloc
|
||||
include $(tbb_root)/build/common.inc
|
||||
DEBUG_SUFFIX=$(findstring _debug,$(call cross_cfg,_$(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)
|
||||
|
||||
TEST_SUFFIXES=proxy
|
||||
TEST_PREREQUISITE+=$(MALLOC.LIB)
|
||||
LINK_FILES+=$(LINK_MALLOC.LIB)
|
||||
include $(tbb_root)/build/common_rules.inc
|
||||
|
||||
ORIG_CPLUS_FLAGS:=$(CPLUS_FLAGS)
|
||||
ORIG_INCLUDES:=$(INCLUDES)
|
||||
ORIG_LINK_MALLOC.LIB:=$(LINK_MALLOC.LIB)
|
||||
|
||||
#------------------------------------------------------
|
||||
# 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)
|
||||
# Suppress superfluous warnings for TBBMalloc proxy compilation
|
||||
$(PROXY.OBJ): CPLUS_FLAGS += $(WARNING_SUPPRESS)
|
||||
|
||||
frontend.$(OBJ): frontend.cpp version_string.ver
|
||||
$(CPLUS) $(COMPILE_ONLY) $(M_CPLUS_FLAGS) $(PIC_KEY) $(DSE_KEY) $(M_INCLUDES) $(INCLUDE_KEY). $<
|
||||
|
||||
$(PROXY.OBJ): %.$(OBJ): %.cpp
|
||||
$(CPLUS) $(COMPILE_ONLY) $(CPLUS_FLAGS) $(PIC_KEY) $(DSE_KEY) $(DEFINE_KEY)__TBBMALLOC_BUILD=1 $(M_INCLUDES) $<
|
||||
|
||||
$(MALLOC_CPLUS.OBJ): %.$(OBJ): %.cpp
|
||||
$(CPLUS) $(COMPILE_ONLY) $(M_CPLUS_FLAGS) $(PIC_KEY) $(DSE_KEY) $(M_INCLUDES) $<
|
||||
|
||||
itt_notify_malloc.$(OBJ): itt_notify.cpp
|
||||
$(CPLUS) $(COMPILE_ONLY) $(M_CPLUS_FLAGS) $(PIC_KEY) $(DSE_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) $< $(M_CPLUS_FLAGS) $(WARNING_SUPPRESS) $(INCLUDES) > $@
|
||||
|
||||
MALLOC_LINK_FLAGS += $(EXPORT_KEY)tbbmalloc.def
|
||||
$(MALLOC.DLL): tbbmalloc.def
|
||||
endif
|
||||
|
||||
$(MALLOC.DLL) $(MALLOCPROXY.DLL): CPLUS_FLAGS += $(SDL_FLAGS)
|
||||
$(MALLOC.DLL) $(MALLOCPROXY.DLL): M_CPLUS_FLAGS += $(SLD_FLAGS)
|
||||
$(MALLOC.DLL): BUILDING_LIBRARY = $(MALLOC.DLL)
|
||||
$(MALLOC.DLL): $(MALLOC.OBJ) $(MALLOC.RES) $(MALLOC_NO_VERSION.DLL)
|
||||
$(subst $(CPLUS),$(CONLY),$(LIB_LINK_CMD)) $(LIB_OUTPUT_KEY)$(MALLOC.DLL) $(MALLOC.OBJ) $(MALLOC.RES) $(LIB_LINK_LIBS) $(MALLOC_LINK_FLAGS)
|
||||
|
||||
ifneq (,$(MALLOCPROXY.DEF))
|
||||
tbbmallocproxy.def: $(MALLOCPROXY.DEF)
|
||||
$(CPLUS) $(PREPROC_ONLY) $< $(CPLUS_FLAGS) $(WARNING_SUPPRESS) $(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
|
||||
#------------------------------------------------------
|
||||
|
||||
# --------- The list of TBBMalloc unit tests ----------
|
||||
MALLOC_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) \
|
||||
test_malloc_pure_c.$(TEST_EXT) \
|
||||
test_malloc_whitebox.$(TEST_EXT) \
|
||||
test_malloc_used_by_lib.$(TEST_EXT) \
|
||||
test_malloc_lib_unload.$(TEST_EXT)
|
||||
ifneq (,$(MALLOCPROXY.DLL))
|
||||
MALLOC_TESTS += test_malloc_overload.$(TEST_EXT) \
|
||||
test_malloc_overload_proxy.$(TEST_EXT) \
|
||||
test_malloc_atexit.$(TEST_EXT)
|
||||
endif
|
||||
# -----------------------------------------------------
|
||||
|
||||
# ------------ Set test specific variables ------------
|
||||
ifeq (windows.gcc,$(tbb_os).$(compiler))
|
||||
test_malloc_overload.$(TEST_EXT): LIBS += $(MALLOCPROXY.LIB)
|
||||
endif
|
||||
|
||||
MALLOC_M_CPLUS_TESTS = test_malloc_whitebox.$(TEST_EXT) test_malloc_lib_unload.$(TEST_EXT) \
|
||||
test_malloc_used_by_lib.$(TEST_EXT)
|
||||
MALLOC_NO_LIB_TESTS = test_malloc_whitebox.$(TEST_EXT) test_malloc_lib_unload.$(TEST_EXT) \
|
||||
test_malloc_used_by_lib.$(TEST_EXT) test_malloc_overload.$(TEST_EXT)
|
||||
MALLOC_LINK_PROXY_TESTS = test_malloc_overload_proxy.$(TEST_EXT)
|
||||
MALLOC_ADD_DLL_TESTS = test_malloc_lib_unload.$(TEST_EXT) test_malloc_used_by_lib.$(TEST_EXT) \
|
||||
test_malloc_atexit.$(TEST_EXT)
|
||||
|
||||
# TODO: implement accurate warning suppression for tests to unify with Makefile.test.
|
||||
|
||||
$(MALLOC_M_CPLUS_TESTS): CPLUS_FLAGS=$(M_CPLUS_FLAGS)
|
||||
$(MALLOC_M_CPLUS_TESTS): INCLUDES=$(M_INCLUDES)
|
||||
$(MALLOC_NO_LIB_TESTS): LINK_MALLOC.LIB=
|
||||
$(MALLOC_NO_LIB_TESTS): LINK_FLAGS+=$(LIBDL)
|
||||
$(MALLOC_LINK_PROXY_TESTS): LINK_MALLOC.LIB=$(LINK_MALLOCPROXY.LIB)
|
||||
ifneq (,$(DYLIB_KEY))
|
||||
$(MALLOC_ADD_DLL_TESTS): %.$(TEST_EXT): %_dll.$(DLL)
|
||||
$(MALLOC_ADD_DLL_TESTS): TEST_LIBS+=$(@:.$(TEST_EXT)=_dll.$(LIBEXT))
|
||||
endif
|
||||
|
||||
test_malloc_over%.$(TEST_EXT): CPLUS_FLAGS=$(subst /MT,/MD,$(M_CPLUS_FLAGS))
|
||||
test_malloc_over%.$(TEST_EXT): INCLUDES=$(M_INCLUDES)
|
||||
test_malloc_overload_proxy.$(TEST_EXT): LINK_FLAGS+=$(LIBDL)
|
||||
|
||||
test_malloc_atexit_dll.$(DLL): CPLUS_FLAGS=$(subst /MT,/MD,$(M_CPLUS_FLAGS))
|
||||
test_malloc_atexit.$(TEST_EXT): CPLUS_FLAGS=$(subst /MT,/MD,$(M_CPLUS_FLAGS))
|
||||
test_malloc_atexit.$(TEST_EXT): LINK_FLAGS+=$(LIBDL)
|
||||
# on Ubuntu 11.10 linker called with --as-needed, so dependency 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): MALLOCPROXY.LIB := -Wl,--no-as-needed $(MALLOCPROXY.LIB)
|
||||
endif
|
||||
# The test isn't added to MALLOC_LINK_PROXY_TESTS, because we need both
|
||||
# tbbmalloc and proxy libs. For platforms other than Android it's enough
|
||||
# to modify LINK_MALLOC.LIB for TEST_EXT target only. But under Android build
|
||||
# of DLL and TEST_EXT can be requested independently, so there is no chance
|
||||
# to set LINK_MALLOC.LIB in TEST_EXT build rule, and affect DLL build.
|
||||
test_malloc_atexit.$(TEST_EXT): LINK_MALLOC.LIB := $(LINK_MALLOC.LIB) $(LINK_MALLOCPROXY.LIB)
|
||||
test_malloc_atexit_dll.$(DLL): LINK_MALLOC.LIB := $(LINK_MALLOC.LIB) $(LINK_MALLOCPROXY.LIB)
|
||||
|
||||
test_malloc_whitebox.$(TEST_EXT): $(MALLOC_ASM.OBJ) version_string.ver
|
||||
test_malloc_whitebox.$(TEST_EXT): INCLUDES+=$(INCLUDE_KEY).
|
||||
test_malloc_whitebox.$(TEST_EXT): LINK_FILES+=$(MALLOC_ASM.OBJ)
|
||||
|
||||
# Some _dll targets need to restore variables since they are changed by parent
|
||||
# target-specific rule of its .exe targets
|
||||
test_malloc_lib_unload_dll.$(DLL): CPLUS_FLAGS=$(ORIG_CPLUS_FLAGS)
|
||||
test_malloc_lib_unload_dll.$(DLL): INCLUDES=$(ORIG_INCLUDES)
|
||||
|
||||
test_malloc_used_by_lib_dll.$(DLL): CPLUS_FLAGS=$(subst /MT,/LD,$(M_CPLUS_FLAGS))
|
||||
test_malloc_used_by_lib_dll.$(DLL): LINK_FILES+=$(ORIG_LINK_MALLOC.LIB)
|
||||
test_malloc_used_by_lib_dll.$(DLL): LIBDL=
|
||||
# -----------------------------------------------------
|
||||
|
||||
# ---- The list of TBBMalloc test running commands ----
|
||||
# run_cmd is usually empty
|
||||
malloc_test: $(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) -l $(MALLOCPROXY.DLL) ./test_malloc_overload.$(TEST_EXT) $(args)
|
||||
$(run_cmd) $(TEST_LAUNCHER) ./test_malloc_overload_proxy.$(TEST_EXT) $(args)
|
||||
endif
|
||||
$(run_cmd) $(TEST_LAUNCHER) ./test_malloc_lib_unload.$(TEST_EXT) $(args)
|
||||
$(run_cmd) $(TEST_LAUNCHER) ./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 dependencies
|
||||
-include *.d
|
||||
@@ -0,0 +1,109 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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) $(DSE_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 on 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) $(DEFINE_KEY)__TBB_BUILD=1 > $@
|
||||
|
||||
.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 dependencies
|
||||
-include *.d
|
||||
@@ -0,0 +1,302 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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)
|
||||
TESTFILE=test
|
||||
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) $(if $(LINK_TBB.LIB),$(DEFINE_KEY)TEST_USES_TBB=1)
|
||||
|
||||
TEST_PREREQUISITE+=$(TBB.LIB)
|
||||
LINK_FILES+=$(LINK_TBB.LIB)
|
||||
|
||||
ifdef use_proxy
|
||||
USE_PROXY_FLAG = $(DEFINE_KEY)HARNESS_USE_RUNTIME_LOADER
|
||||
CPLUS_FLAGS += $(USE_PROXY_FLAG)
|
||||
LINK_TBB.LIB = $(PROXY.LIB)
|
||||
LIBS += $(LIBDL)
|
||||
endif
|
||||
|
||||
TEST_SUFFIXES=secondary compiler_builtins pic
|
||||
include $(tbb_root)/build/common_rules.inc
|
||||
|
||||
# Rules for the tests, which use TBB in a dynamically loadable library
|
||||
test_model_plugin.$(TEST_EXT): LINK_TBB.LIB =
|
||||
test_model_plugin.$(TEST_EXT): CPLUS_FLAGS := $(CPLUS_FLAGS:$(USE_PROXY_FLAG)=)
|
||||
test_model_plugin.$(TEST_EXT): LIBS += $(LIBDL)
|
||||
ifneq (,$(DYLIB_KEY))
|
||||
test_model_plugin.$(TEST_EXT): test_model_plugin_dll.$(DLL)
|
||||
endif
|
||||
|
||||
# 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) \
|
||||
test_global_control_whitebox.$(TEST_EXT) \
|
||||
test_concurrent_queue_whitebox.$(TEST_EXT)
|
||||
|
||||
# Necessary to locate version_string.ver referenced from directly included tbb_misc.cpp
|
||||
INCLUDES += $(INCLUDE_KEY). $(INCLUDE_TEST_HEADERS)
|
||||
|
||||
$(SCHEDULER_DIRECTLY_INCLUDED): WARNING_KEY += $(WARNING_SUPPRESS)
|
||||
$(SCHEDULER_DIRECTLY_INCLUDED): LIBS += $(LIBDL)
|
||||
#tbb.lib must not be linked to scheduler white box tests in order to not violate ODR
|
||||
$(SCHEDULER_DIRECTLY_INCLUDED): LINK_TBB.LIB =
|
||||
$(SCHEDULER_DIRECTLY_INCLUDED): LINK_FILES += $(SCHEDULER_DEPENDENCIES)
|
||||
$(SCHEDULER_DIRECTLY_INCLUDED): $(SCHEDULER_DEPENDENCIES)
|
||||
|
||||
# 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_set.$(TEST_EXT)
|
||||
|
||||
%_secondary.$(OBJ): CPLUS_FLAGS+=$(DEFINE_KEY)__TBB_TEST_SECONDARY=1
|
||||
|
||||
# Detecting "multiple definition" linker error using the test that covers the whole library
|
||||
$(TWICE_LINKED_TESTS): %.$(TEST_EXT): %.$(OBJ) %_secondary.$(OBJ)
|
||||
$(TWICE_LINKED_TESTS): LINK_FILES+=$(@:.$(TEST_EXT)=_secondary.$(OBJ))
|
||||
|
||||
# Checks that TBB works correctly in position independent code
|
||||
%_pic.$(OBJ): CPLUS_FLAGS+=$(PIC_KEY)
|
||||
%_pic.$(OBJ): CPLUS_FLAGS+=$(DEFINE_KEY)__TBB_TEST_PIC=1
|
||||
|
||||
# Test of generic gcc port and icc intrinsics port
|
||||
%_compiler_builtins.$(TEST_EXT): LINK_TBB.LIB =
|
||||
%_compiler_builtins.$(OBJ): CPLUS_FLAGS+=$(DEFINE_KEY)__TBB_TEST_BUILTINS=1 $(DEFINE_KEY)TBB_USE_ASSERT=0
|
||||
|
||||
# dynamic_link tests don't depend on the TBB library
|
||||
test_dynamic_link%.$(TEST_EXT): LINK_TBB.LIB =
|
||||
test_dynamic_link.$(TEST_EXT): LIBS += $(LIBDL)
|
||||
|
||||
TEST_BIG_OBJ = test_opencl_node.$(TEST_EXT) test_join_node.$(TEST_EXT) test_atomic.$(TEST_EXT)
|
||||
|
||||
ifeq (windows_windows,$(tbb_os)_$(target))
|
||||
ifneq (gcc,$(compiler))
|
||||
$(TEST_BIG_OBJ): override CXXFLAGS += /bigobj
|
||||
endif
|
||||
endif
|
||||
|
||||
# TODO: remove repetition of .$(TEST_EXT) in the list bellow
|
||||
# The main list of TBB tests
|
||||
TEST_TBB_PLAIN.EXE = test_assembly.$(TEST_EXT) \
|
||||
test_global_control.$(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_set.$(TEST_EXT) \
|
||||
test_concurrent_unordered_map.$(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_cache_aligned_allocator_STL.$(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_lambda.$(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_tuple.$(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_indexer_node.$(TEST_EXT) \
|
||||
test_multifunction_node.$(TEST_EXT) \
|
||||
test_split_node.$(TEST_EXT) \
|
||||
test_static_assert.$(TEST_EXT) \
|
||||
test_aggregator.$(TEST_EXT) \
|
||||
test_concurrent_lru_cache.$(TEST_EXT) \
|
||||
test_examples_common_utility.$(TEST_EXT) \
|
||||
test_dynamic_link.$(TEST_EXT) \
|
||||
test_parallel_for_vectorization.$(TEST_EXT) \
|
||||
test_tagged_msg.$(TEST_EXT) \
|
||||
test_partitioner_whitebox.$(TEST_EXT) \
|
||||
test_flow_graph_whitebox.$(TEST_EXT) \
|
||||
test_composite_node.$(TEST_EXT) \
|
||||
test_async_node.$(TEST_EXT) \
|
||||
test_async_msg.$(TEST_EXT) \
|
||||
test_tbb_version.$(TEST_EXT) # insert new files right above
|
||||
|
||||
# skip mode_plugin for now
|
||||
skip_tests += test_model_plugin
|
||||
|
||||
ifdef OPENMP_FLAG
|
||||
test_openmp.$(TEST_EXT): CPLUS_FLAGS += $(OPENMP_FLAG)
|
||||
|
||||
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
|
||||
# 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
|
||||
test_gfx_factory.$(TEST_EXT): LIBS += -lcilkrts
|
||||
endif
|
||||
test_tbb_cilk: test_cilk_interop.$(TEST_EXT)
|
||||
$(run_cmd) ./test_cilk_interop.$(TEST_EXT) $(args)
|
||||
else
|
||||
test_tbb_cilk:
|
||||
@echo "Intel(R) Cilk(TM) Plus is not available"
|
||||
endif
|
||||
|
||||
test_opencl_node.$(TEST_EXT): LIBS += $(OPENCL.LIB)
|
||||
|
||||
$(TEST_TBB_PLAIN.EXE): WARNING_KEY += $(TEST_WARNING_KEY)
|
||||
|
||||
# Run tests that are in SCHEDULER_DIRECTLY_INCLUDED and TEST_TBB_PLAIN.EXE but not in skip_tests (which is specified by user)
|
||||
TESTS_TO_RUN := $(filter-out $(addsuffix .$(TEST_EXT),$(skip_tests)),$(TEST_TBB_PLAIN.EXE) $(SCHEDULER_DIRECTLY_INCLUDED))
|
||||
|
||||
# This definition intentionally consists of two blank lines
|
||||
define eol
|
||||
|
||||
|
||||
endef
|
||||
|
||||
# First build the targets, then run them
|
||||
# Form a list of commands separated with end of line
|
||||
# Note that usually run_cmd is empty, and tests run directly
|
||||
|
||||
test_tbb_plain: $(TEST_PREREQUISITE) $(TESTS_TO_RUN)
|
||||
$(foreach test, $(TESTS_TO_RUN), $(run_cmd) ./$(test) $(args) $(eol))
|
||||
|
||||
|
||||
# For deprecated files, we don't mind warnings etc., thus compilation rules are most relaxed
|
||||
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_OLD.OBJ): CPLUS_FLAGS := $(CPLUS_FLAGS_DEPRECATED)
|
||||
|
||||
TEST_TBB_OLD.EXE = $(subst .$(OBJ),.$(TEST_EXT),$(TEST_TBB_OLD.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_queue_v2.$(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
|
||||
|
||||
time_%: time_%.$(TEST_EXT) $(TEST_PREREQUISITE)
|
||||
$(run_cmd) ./$< $(args)
|
||||
|
||||
|
||||
# for some reason, "perf_%.$(TEST_EXT): perf_dll.$(DLL)" does not work TODO: find out how to apply pattern here
|
||||
perf_sched.$(TEST_EXT): perf_dll.$(DLL)
|
||||
perf_%.$(TEST_EXT): TEST_LIBS = perf_dll.$(LIBEXT)
|
||||
perf_%: perf_%.$(TEST_EXT) $(TEST_PREREQUISITE)
|
||||
$(run_cmd) ./$< $(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 dependencies
|
||||
-include *.d
|
||||
@@ -0,0 +1,92 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
LIBDL = -ldl
|
||||
|
||||
CPLUS = g++
|
||||
CONLY = gcc
|
||||
LIB_LINK_FLAGS = -shared
|
||||
LIBS = -lpthread -lrt -ldl
|
||||
C_FLAGS = $(CPLUS_FLAGS) -x c
|
||||
|
||||
ifeq ($(cfg), release)
|
||||
CPLUS_FLAGS = -g -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
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# End of setting tbbmalloc data.
|
||||
#------------------------------------------------------------------------------
|
||||
@@ -0,0 +1,83 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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 -dumpversion)
|
||||
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 $(VERSION_FLAGS) >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)
|
||||
|
||||
TEST_LAUNCHER=sh $(tbb_root)/build/test_launcher.sh $(largs)
|
||||
@@ -0,0 +1,92 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
CPLUS = CC
|
||||
CONLY = cc
|
||||
|
||||
OPENMP_FLAG = -xopenmp
|
||||
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 -g -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,118 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
SDL_FLAGS = -fPIE -fPIC -fstack-protector -Wformat -Wformat-security
|
||||
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
|
||||
|
||||
CPLUS = $(TARGET_CXX)
|
||||
CONLY = $(TARGET_CC)
|
||||
|
||||
# -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) -z relro -z now
|
||||
|
||||
# pie is necessary for test executables to work and might be removed if newer NDK will add it implicitly
|
||||
PIE_FLAG = -pie
|
||||
ifeq ($(APP_PIE), false)
|
||||
PIE_FLAG=
|
||||
endif
|
||||
|
||||
LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
|
||||
C_FLAGS = $(CPLUS_FLAGS)
|
||||
|
||||
ifeq ($(cfg), release)
|
||||
SDL_FLAGS += -D_FORTIFY_SOURCE=2
|
||||
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
|
||||
|
||||
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) -lc++_shared
|
||||
ifneq (,$(findstring $(ndk_version),r12 r12b r13 r13b))
|
||||
LIBS += -lc++abi
|
||||
ifeq (arm,$(arch))
|
||||
LIBS += -lunwind
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq (arm,$(arch))
|
||||
CPLUS_FLAGS += $(DEFINE_KEY)__TBB_64BIT_ATOMICS=0
|
||||
endif
|
||||
|
||||
CPLUS_FLAGS += $(TARGET_CFLAGS)
|
||||
LIB_LINK_FLAGS += $(TARGET_CFLAGS) $(TARGET_LDFLAGS) -L$(CPLUS_LIB_PATH)
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# 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
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# End of setting tbbmalloc data.
|
||||
#------------------------------------------------------------------------------
|
||||
@@ -0,0 +1,117 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
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)
|
||||
|
||||
# pie is necessary for test executables to work and might be removed if newer NDK will add it implicitly
|
||||
PIE_FLAG = -pie
|
||||
ifeq ($(APP_PIE), false)
|
||||
PIE_FLAG=
|
||||
endif
|
||||
|
||||
LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
|
||||
C_FLAGS = $(CPLUS_FLAGS)
|
||||
|
||||
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
|
||||
|
||||
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
|
||||
|
||||
ifeq (ia32,$(arch))
|
||||
# TODO: Determine best setting of -march and add to CPLUS_FLAGS
|
||||
CPLUS_FLAGS += -m32
|
||||
LIB_LINK_FLAGS += -m32
|
||||
else ifeq (intel64,$(arch))
|
||||
CPLUS_FLAGS += -m64
|
||||
LIB_LINK_FLAGS += -m64
|
||||
else ifeq (arm,$(arch))
|
||||
CPLUS_FLAGS += -march=armv7-a $(DEFINE_KEY)TBB_USE_GCC_BUILTINS=1 $(DEFINE_KEY)__TBB_64BIT_ATOMICS=0
|
||||
else ifeq (arm64,$(arch))
|
||||
CPLUS_FLAGS += -march=armv8-a
|
||||
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
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# End of setting tbbmalloc data.
|
||||
#------------------------------------------------------------------------------
|
||||
@@ -0,0 +1,120 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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 =
|
||||
TEST_WARNING_KEY = -Wshadow -Woverloaded-virtual -Wextra
|
||||
|
||||
WARNING_SUPPRESS = -Wno-parentheses -Wno-non-virtual-dtor
|
||||
DYLIB_KEY = -shared
|
||||
EXPORT_KEY = -Wl,--version-script,
|
||||
LIBDL = -ldl
|
||||
|
||||
CPLUS = icpc
|
||||
CONLY = icc
|
||||
|
||||
# -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)
|
||||
|
||||
# pie is necessary for test executables to work and might be removed if newer NDK will add it implicitly
|
||||
PIE_FLAG = -pie
|
||||
ifeq ($(APP_PIE), false)
|
||||
PIE_FLAG=
|
||||
endif
|
||||
|
||||
LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
|
||||
C_FLAGS = $(CPLUS_FLAGS)
|
||||
|
||||
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
|
||||
|
||||
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)
|
||||
# the -static-intel flag is to remove the need to copy Intel-specific libs to the device.
|
||||
LIBS = -L$(CPLUS_LIB_PATH) -lgnustl_shared -static-intel
|
||||
|
||||
ifeq (ia32,$(arch))
|
||||
# TODO: Determine best setting of -march and add to CPLUS_FLAGS
|
||||
CPLUS_FLAGS += -m32 -march=pentium4 -falign-stack=maintain-16-byte
|
||||
LIB_LINK_FLAGS += -m32
|
||||
else
|
||||
ifeq (intel64,$(arch))
|
||||
CPLUS_FLAGS += -m64
|
||||
LIB_LINK_FLAGS += -m64
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq (arm,$(findstring arm,$(arch)))
|
||||
$(error "Unsupported architecture $(arch) for icc compiler")
|
||||
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
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# End of setting tbbmalloc data.
|
||||
#------------------------------------------------------------------------------
|
||||
@@ -0,0 +1,63 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
ifndef BUILDING_PHASE
|
||||
ifneq ("command line","$(origin arch)")
|
||||
ifeq (icc,$(compiler))
|
||||
export COMPILER_VERSION := ICC: $(shell icc -V </dev/null 2>&1 | grep 'Version')
|
||||
ifneq (,$(findstring running on IA-32, $(COMPILER_VERSION)))
|
||||
export arch:=ia32
|
||||
else ifneq (,$(findstring running on Intel(R) 64, $(COMPILER_VERSION)))
|
||||
export arch:=intel64
|
||||
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
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq ("$(arch)","")
|
||||
$(error "No target architecture specified and \'ANDROID_SERIAL\' environment variable specifying target device not set")
|
||||
endif
|
||||
|
||||
# Android platform only supported from TBB 4.1 forward
|
||||
NO_LEGACY_TESTS = 1
|
||||
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
ifdef ndk_version
|
||||
$(warning "NDK version $(ndk_version)")
|
||||
else
|
||||
$(warning "NDK version not set in environment, using \'unknown\' instead.")
|
||||
ndk_version:=unknown
|
||||
endif
|
||||
|
||||
export runtime:=$(target)_NDK$(ndk_version)_version_$(target_os_version)
|
||||
|
||||
AR = $(tbb_tool_prefix)ar
|
||||
MAKE_VERSIONS=sh $(tbb_root)/build/version_info_android.sh $(VERSION_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)
|
||||
LINK_MALLOCPROXY.LIB = $(MALLOCPROXY.LIB)
|
||||
|
||||
TEST_LAUNCHER=
|
||||
run_cmd ?= -sh $(tbb_root)/build/android.linux.launcher.sh $(largs)
|
||||
@@ -0,0 +1,148 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
# Usage:
|
||||
# android.linux.launcher.sh [-v] [-q] [-s] [-r <repeats>] [-u] [-l <library>] <executable> <arg1> <arg2> <argN>
|
||||
# where: -v enables verbose output
|
||||
# where: -q enables quiet mode
|
||||
# where: -s runs the test in stress mode (until non-zero exit code or ctrl-c pressed)
|
||||
# where: -r <repeats> specifies number of times to repeat execution
|
||||
# where: -u is ignored on Android
|
||||
# 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.
|
||||
# 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 #
|
||||
} #
|
||||
while getopts "qvsr:ul:" flag #
|
||||
do case $flag in #
|
||||
s ) # Stress testing mode
|
||||
echo Doing stress testing. Press Ctrl-C to terminate
|
||||
run_env='stressed() { while $*; do :; done; }; ' #
|
||||
run_prefix="stressed $run_prefix" ;; #
|
||||
r ) # Repeats test n times
|
||||
run_env="repeated() { for i in $(seq -s ' ' 1 $OPTARG) ; do echo \$i of $OPTARG:; \$*; done; }; " #
|
||||
run_prefix="repeated $run_prefix" ;; #
|
||||
l ) # Additional library
|
||||
ldpreload="$OPTARG " ;; #
|
||||
u ) # Stack limit
|
||||
;; #
|
||||
q ) # Quiet mode, removes 'done' but prepends any other output by test name
|
||||
OUTPUT='2>&1 | sed -e "s/done//;/^[[:space:]]*$/d;s!^!$exename: !"' ;; #
|
||||
v ) # Verbose mode
|
||||
SUPPRESS='' #
|
||||
verbose=1 ;; #
|
||||
esac done #
|
||||
shift `expr $OPTIND - 1` #
|
||||
[ -z "$OUTPUT" ] && OUTPUT='| sed -e "s/\\r$//"' #
|
||||
[ $verbose ] || SUPPRESS='>/dev/null' #
|
||||
# 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_STL_ANDROID}" ]; then #
|
||||
fnamelist="$fnamelist ${LIB_STL_ANDROID}" #
|
||||
else #
|
||||
fnamelist="$fnamelist libc++_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="$(ls libtbb* 2> /dev/null)" #
|
||||
[ -z "$files" ] || fnamelist="$fnamelist $files" #
|
||||
# Add any libraries built for specific tests.
|
||||
exeroot=${exename%\.*} #
|
||||
files="$(ls ${exeroot}*.so ${exeroot}*.so.* 2> /dev/null)" #
|
||||
[ -z "$files" ] || fnamelist="$fnamelist $files" #
|
||||
# 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
|
||||
[ $verbose ] && echo -n "Pushing $fullname: " #
|
||||
eval "adb push $fullname ${targetdir}/$(basename $fullname) $SUPPRESS 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 { #
|
||||
eval "adb shell 'mkdir $directory' $SUPPRESS 2>&1" #
|
||||
}; fi #
|
||||
# Transfer the input file to corresponding directory on target device
|
||||
[ $verbose ] && echo -n "Pushing $fullname: " #
|
||||
eval "adb push $fullname ${targetdir}/$fullname $SUPPRESS 2>&1" #
|
||||
}; fi #
|
||||
}; done #
|
||||
# Set LD_PRELOAD if necessary
|
||||
[ -z "$ldpreload" ] || run_prefix="LD_PRELOAD='$ldpreload' $run_prefix" #
|
||||
[ $verbose ] && echo Running $run_prefix ./$exename $* #
|
||||
run_env="$run_env cd $targetdir; export LD_LIBRARY_PATH=." #
|
||||
[ -z "$VIRTUAL_MACHINE" ] || run_env="$run_env; export VIRTUAL_MACHINE=$VIRTUAL_MACHINE" #
|
||||
# The return_code file is the best way found to return the status of the test execution when using adb shell.
|
||||
eval 'adb shell "$run_env; $run_prefix ./$exename $* || echo -n \$? >error_code"' "${OUTPUT}" #
|
||||
# Capture the return code string and remove the trailing \r from the return_code file contents
|
||||
err=`adb shell "cat $targetdir/error_code 2>/dev/null"` #
|
||||
[ -z $err ] || echo $exename: exited with error $err #
|
||||
do_cleanup #
|
||||
# Return the exit code of the test.
|
||||
exit $err #
|
||||
@@ -0,0 +1,76 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
ifdef ndk_version
|
||||
$(warning "NDK version $(ndk_version)")
|
||||
else
|
||||
$(warning "NDK version not set in environment, using \'unknown\' instead.")
|
||||
ndk_version:=unknown
|
||||
endif
|
||||
|
||||
export runtime:=$(target)_NDK$(ndk_version)_version_$(target_os_version)
|
||||
|
||||
AR = $(tbb_tool_prefix)ar
|
||||
MAKE_VERSIONS=sh $(tbb_root)/build/version_info_android.sh $(VERSION_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)
|
||||
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,77 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
ifdef ndk_version
|
||||
ndk_version:= $(firstword $(subst /, ,$(ndk_version)))
|
||||
ndk_version:= $(firstword $(subst \, ,$(ndk_version)))
|
||||
$(warning "NDK version $(ndk_version)")
|
||||
else
|
||||
$(warning "NDK version not set in environment, using \'unknown\' instead.")
|
||||
ndk_version:=unknown
|
||||
endif
|
||||
|
||||
export runtime:=$(target)_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 \,/,"$(VERSION_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,76 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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 usage of dynamic (shared) libraries is disabled
|
||||
# (via -D__TBB_DYNAMIC_LOAD_ENABLED=0 and LIBDL emptied) primarily for performance.
|
||||
|
||||
# OS specific settings =>
|
||||
LIB_LINK_CMD = ar rcs
|
||||
LIB_LINK_FLAGS =
|
||||
LIB_LINK_LIBS =
|
||||
LIB_OUTPUT_KEY =
|
||||
DYLIB_KEY =
|
||||
ifeq ($(tbb_os),linux)
|
||||
ifeq ($(compiler),clang)
|
||||
LIBS = -pthread -lrt
|
||||
endif
|
||||
ifeq ($(compiler),gcc)
|
||||
LIBS = -pthread -lrt
|
||||
endif
|
||||
ifeq ($(compiler),xl)
|
||||
LIBS = -lpthread -lrt
|
||||
endif
|
||||
LINK_FLAGS =
|
||||
endif
|
||||
override CXXFLAGS += -D__TBB_DYNAMIC_LOAD_ENABLED=0 -D__TBB_SOURCE_DIRECTLY_INCLUDED=1
|
||||
ITT_NOTIFY =
|
||||
DLL = a
|
||||
LIBEXT = a
|
||||
LIBPREF = lib
|
||||
LIBDL =
|
||||
# <= OS specific settings
|
||||
|
||||
TBB.DLL = $(LIBPREF)tbb$(DEBUG_SUFFIX).$(LIBEXT)
|
||||
LINK_TBB.LIB = $(TBB.DLL)
|
||||
TBB.LST =
|
||||
TBB.DEF =
|
||||
TBB_NO_VERSION.DLL =
|
||||
|
||||
MALLOC.DLL = $(LIBPREF)tbbmalloc$(DEBUG_SUFFIX).$(LIBEXT)
|
||||
LINK_MALLOC.LIB = $(MALLOC.DLL)
|
||||
MALLOC.DEF =
|
||||
MALLOC_NO_VERSION.DLL =
|
||||
MALLOCPROXY.DLL =
|
||||
MALLOCPROXY.DEF =
|
||||
@@ -0,0 +1,7 @@
|
||||
src/tbb
|
||||
src/tbbmalloc
|
||||
include/tbb
|
||||
src/rml/server
|
||||
src/rml/client
|
||||
src/rml/include
|
||||
source/malloc
|
||||
@@ -0,0 +1,162 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
ifdef cpp0x
|
||||
$(warning "Warning: deprecated cpp0x=$(cpp0x) is used, stdver must be used instead. Building in stdver=c++0x mode.")
|
||||
export stdver ?= c++0x
|
||||
override cpp0x=
|
||||
endif
|
||||
|
||||
ifneq (,$(stdver))
|
||||
ifeq (,$(findstring ++, $(stdver)))
|
||||
$(warning "Warning: unexpected stdver=$(stdver) is used.")
|
||||
endif
|
||||
|
||||
CXX_STD_FLAGS = -std=$(stdver) -D_TBB_CPP0X
|
||||
endif
|
||||
|
||||
# The requested option is added unconditionally.
|
||||
# If it is not supported, a compiler warning or error is expected.
|
||||
# Note that CXX_STD_FLAGS can be changed in <os>.<compiler>.inc.
|
||||
CXX_ONLY_FLAGS += $(CXX_STD_FLAGS)
|
||||
|
||||
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))
|
||||
# Setting default configuration to release
|
||||
cfg?=release
|
||||
|
||||
ifdef BUILDING_PHASE
|
||||
|
||||
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
|
||||
export 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)) ),)
|
||||
full_tbb_root:=$(CURDIR)/$(tbb_root)
|
||||
ifeq ($(origin_build_dir),undefined)
|
||||
#relative path are needed here as a workaround to support whitespaces in path
|
||||
override tbb_root:=../..
|
||||
else
|
||||
override tbb_root:=$(full_tbb_root)
|
||||
endif
|
||||
export tbb_root
|
||||
endif
|
||||
endif # !BUILDING_PHASE
|
||||
|
||||
.DELETE_ON_ERROR: # Make will delete target if error occurred when building it.
|
||||
|
||||
# MAKEOVERRIDES contains the command line variable definitions. Reseting it to
|
||||
# empty allows propogating all exported overridden variables to nested makes.
|
||||
# NOTEs:
|
||||
# 1. All variable set in command line are propagated to nested makes.
|
||||
# 2. All variables declared with the "export" keyword are propagated to
|
||||
# nested makes.
|
||||
# 3. "override" allows changing variables set in command line. But it doesn't
|
||||
# propagate new values to nested makes. For propagation, the "export" keyword
|
||||
# should be used.
|
||||
# 4. gmake v3.80 doesn't support exporting of target-specific variables using
|
||||
# the "export" keyword
|
||||
MAKEOVERRIDES =
|
||||
@@ -0,0 +1,165 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
ifneq (,$(findstring s,$(MAKEFLAGS)))
|
||||
override largs+=-q
|
||||
endif
|
||||
ifneq (,$(repeat))
|
||||
override largs+=-r $(repeat)
|
||||
endif
|
||||
ifneq (,$(largs)$(run_prefix))
|
||||
override run_cmd:=$(run_cmd) $(TEST_LAUNCHER)
|
||||
TEST_LAUNCHER=
|
||||
ifeq (,$(strip $(run_cmd)))
|
||||
$(warning Test launcher is not defined for the platform, ignoring launcher arguments)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifndef TEST_EXT
|
||||
TEST_EXT = exe
|
||||
endif
|
||||
|
||||
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)
|
||||
|
||||
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
|
||||
#$(1) - is the target pattern
|
||||
define make-cxx-obj
|
||||
$1: %.cpp
|
||||
$$(CPLUS) $$(OUTPUTOBJ_KEY)$$@ $$(COMPILE_ONLY) $$(CPLUS_FLAGS) $$(CXX_ONLY_FLAGS) $$(CXX_WARN_SUPPRESS) $$(INCLUDES) $$<
|
||||
endef
|
||||
|
||||
TEST_AFFIXES_OBJS=$(addsuffix .$(OBJ),$(addprefix %_,$(TEST_SUFFIXES)) $(addsuffix _%,$(TEST_PREFIXES)))
|
||||
|
||||
# Make will not process the same recipe for each test pattern (since the dependency on the same %.cpp)
|
||||
# thus the separated recipes should be provided
|
||||
$(foreach t,%.$(OBJ) $(TEST_AFFIXES_OBJS),$(eval $(call make-cxx-obj,$(t))))
|
||||
|
||||
.PRECIOUS: %.$(OBJ) %.$(TEST_EXT) %.res $(TEST_AFFIXES_OBJS)
|
||||
|
||||
# Rules for generating a test DLL
|
||||
%_dll.$(OBJ): %.cpp
|
||||
$(CPLUS) $(COMPILE_ONLY) $(OUTPUTOBJ_KEY)$@ $(CPLUS_FLAGS) $(PIC_KEY) $(DEFINE_KEY)_USRDLL $(INCLUDES) $<
|
||||
|
||||
#$(1) - is the binary name
|
||||
#$(2) - is the input obj files and libraries
|
||||
define make-test-binary
|
||||
$(CPLUS) $(OUTPUT_KEY)$(strip $1) $(CPLUS_FLAGS) $(2) $(LIBS) $(LINK_FLAGS)
|
||||
endef
|
||||
|
||||
# LINK_FILES the list of options to link test specific files (libraries and object files)
|
||||
LINK_FILES+=$(TEST_LIBS)
|
||||
# Rule for generating executable test
|
||||
%.$(TEST_EXT): %.$(OBJ) $(TEST_LIBS) $(TEST_PREREQUISITE) $(if $(use_proxy),$(PROXY.LIB))
|
||||
$(call make-test-binary,$@,$< $(LINK_FILES) $(PIE_FLAG))
|
||||
|
||||
# Rules for generating a test DLL
|
||||
%_dll.$(DLL): LINK_FLAGS += $(PIC_KEY) $(DYLIB_KEY)
|
||||
%_dll.$(DLL): TEST_LIBS := $(subst %_dll.$(DLL),,$(TEST_LIBS))
|
||||
%_dll.$(DLL): %_dll.$(OBJ)
|
||||
$(call make-test-binary,$@,$< $(LINK_FILES))
|
||||
.PRECIOUS: %_dll.$(OBJ) %_dll.$(DLL)
|
||||
|
||||
%.$(OBJ): %.c
|
||||
$(CONLY) $(COMPILE_ONLY) $(OUTPUTOBJ_KEY)$@ $(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 ICL treats an argument after PREPROC_ONLY as a file to open,
|
||||
# so 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
|
||||
$(KNOWN_WARNINGS): %.$(OBJ): %.cpp
|
||||
$(CPLUS) $(COMPILE_ONLY) $(subst $(WARNING_KEY),,$(CPLUS_FLAGS)) $(CXX_ONLY_FLAGS) $(CXX_WARN_SUPPRESS) $(INCLUDES) $<
|
||||
|
||||
tbb_misc.$(OBJ): version_string.ver
|
||||
tbb_misc.$(OBJ): INCLUDES+=$(INCLUDE_KEY).
|
||||
|
||||
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)) $<
|
||||
|
||||
# TODO: add $(LIB_LINK_LIBS) $(LIB_LINK_FLAGS) (in a separate line?) and remove useless $(INCLUDES)
|
||||
VERSION_FLAGS=$(CPLUS) $(CPLUS_FLAGS) $(CXX_ONLY_FLAGS) $(INCLUDES)
|
||||
|
||||
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"
|
||||
# TODO: fix parallel build by writing to a temporary file and rename it when complete
|
||||
else
|
||||
# TODO: make version strings directly representative for all the libraries
|
||||
version_string.ver:
|
||||
$(MAKE_VERSIONS)
|
||||
endif
|
||||
|
||||
test_% debug_%: test_%.$(TEST_EXT) $(TEST_PREREQUISITE)
|
||||
$(run_cmd) ./$< $(args)
|
||||
ifneq (,$(codecov))
|
||||
profmerge
|
||||
codecov $(if $(findstring -,$(codecov)),$(codecov),) -demang -comp $(tbb_root)/build/codecov.txt
|
||||
endif
|
||||
|
||||
@@ -0,0 +1,181 @@
|
||||
// Copyright (c) 2005-2016 Intel Corporation
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the 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 ia32=/[80|\s]x86/mgi;
|
||||
var arm=/ARM/mgi;
|
||||
if ( clVersion.match(intel64) ) {
|
||||
WScript.Echo( "intel64" );
|
||||
} else if ( clVersion.match(ia32) ) {
|
||||
WScript.Echo( "ia32" );
|
||||
} else if ( clVersion.match(arm) ) {
|
||||
WScript.Echo( "armv7" );
|
||||
} 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 vc120=/MSVCR120\.DLL/mgi;
|
||||
var vc140=/VCRUNTIME140\.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 if ( mapContext.match(vc120) ) {
|
||||
WScript.Echo( "vc12" );
|
||||
} else if ( mapContext.match(vc140) ) {
|
||||
WScript.Echo( "vc14" );
|
||||
} 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,65 @@
|
||||
@echo off
|
||||
REM
|
||||
REM Copyright (c) 2005-2016 Intel Corporation
|
||||
REM
|
||||
REM Licensed under the Apache License, Version 2.0 (the "License");
|
||||
REM you may not use this file except in compliance with the License.
|
||||
REM You may obtain a copy of the License at
|
||||
REM
|
||||
REM http://www.apache.org/licenses/LICENSE-2.0
|
||||
REM
|
||||
REM Unless required by applicable law or agreed to in writing, software
|
||||
REM distributed under the License is distributed on an "AS IS" BASIS,
|
||||
REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
REM See the License for the specific language governing permissions and
|
||||
REM limitations under the License.
|
||||
REM
|
||||
REM
|
||||
REM
|
||||
REM
|
||||
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
|
||||
|
||||
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
|
||||
|
||||
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
|
||||
|
||||
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
|
||||
|
||||
if not x%LIB_STL_ANDROID%==x (
|
||||
REM Workaround for copying Android* specific stl shared library to work folder
|
||||
copy /Y "%LIB_STL_ANDROID:/=\%" .
|
||||
)
|
||||
|
||||
endlocal
|
||||
exit
|
||||
@@ -0,0 +1,71 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
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 "\$${2}LIBRARY_PATH" ]; then #
|
||||
export ${2}LIBRARY_PATH="\${tbb_bin}" #
|
||||
else #
|
||||
export ${2}LIBRARY_PATH="\${tbb_bin}:\$${2}LIBRARY_PATH" #
|
||||
fi #
|
||||
if [ -z "\$${1}LD_LIBRARY_PATH" ]; then #
|
||||
export ${1}LD_LIBRARY_PATH="\${tbb_bin}" #
|
||||
else #
|
||||
export ${1}LD_LIBRARY_PATH="\${tbb_bin}:\$${1}LD_LIBRARY_PATH" #
|
||||
fi #
|
||||
${TBB_CUSTOM_VARS_SH} #
|
||||
EOF
|
||||
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 (! \$?${2}LIBRARY_PATH) then #
|
||||
setenv ${2}LIBRARY_PATH "\${tbb_bin}" #
|
||||
else #
|
||||
setenv ${2}LIBRARY_PATH "\${tbb_bin}:\$${2}LIBRARY_PATH" #
|
||||
endif #
|
||||
if (! \$?${1}LD_LIBRARY_PATH) then #
|
||||
setenv ${1}LD_LIBRARY_PATH "\${tbb_bin}" #
|
||||
else #
|
||||
setenv ${1}LD_LIBRARY_PATH "\${tbb_bin}:\$${1}LD_LIBRARY_PATH" #
|
||||
endif #
|
||||
${TBB_CUSTOM_VARS_CSH} #
|
||||
EOF
|
||||
# Workaround for copying Android* specific stl shared library to "."
|
||||
if [ ! -z "${LIB_STL_ANDROID}" ]; then #
|
||||
cp ${LIB_STL_ANDROID} . #
|
||||
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.
|
||||
In the following examples, replace <TT>make</TT> with the correct GNU make command for
|
||||
your system (for example, <TT>gmake</TT>). GNU make version 3.80 and more recent are supported.
|
||||
</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, <TT>make</TT>.
|
||||
</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>Explicitly specify the architecture when invoking GNU make, e.g. <TT>make arch=ia32</TT>.
|
||||
</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><TT>make test</TT> will build and run Intel TBB <A HREF="../src/test">unit-tests</A>;
|
||||
<LI><TT>make examples</TT> will build and run Intel TBB <A HREF="../examples/index.html">examples</A>. Available in the open-source version only.
|
||||
For the commercial version, you can download Intel TBB Samples at the <a href="https://software.intel.com/en-us/product-code-samples?topic=20828">Intel® Software Product Samples and Tutorials</a> website;
|
||||
<LI><TT>make all</TT> will do all of the above. Available in the open-source version only.
|
||||
</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 <TT>make tbb tbbmalloc</TT>.
|
||||
<DT><TT>make all</TT>
|
||||
<DD>Equivalent to <TT>make tbb tbbmalloc test examples</TT>. Available in the open-source version only.
|
||||
<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 <TT>make debug clean release</TT> from <A HREF="../examples/Makefile">the general example Makefile</A>.
|
||||
Available in the open-source version only.
|
||||
<DT><TT>make python</TT>
|
||||
<DD>Build, install, and test Python* API for Intel TBB. See <A HREF="../python/index.html">details here</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
|
||||
<ol>
|
||||
<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>
|
||||
</ol>
|
||||
<DT><TT>make compiler=clang stdlib=libc++ <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 stdver=<B>{</B>c++11, c++14, ...<B>}</B> <B>[</B>(above options or targets)<B>]</B></TT>
|
||||
<DD>Build and run as above, but additionally specify the version of the C++ standard or dialect to be used by
|
||||
the compiler. The specified value of <TT>stdver</TT> will be used as a parameter to the appropriate
|
||||
compiler option (such as <TT>-std</TT>); the behavior in case of unsupported value is compiler-specific.
|
||||
<DT><TT>make target_ui=win8ui [target_ui_mode=production] <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>(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 <TT>make</TT> 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-2016 Intel Corporation. All Rights Reserved.
|
||||
<P></P>
|
||||
Intel, the Intel logo and Itanium are trademarks of Intel Corporation or its subsidiaries in the U.S. and/or other countries.
|
||||
<p></p>
|
||||
* Other names and brands may be claimed as the property of others.
|
||||
</BODY>
|
||||
</HTML>
|
||||
@@ -0,0 +1,23 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
include $(tbb_root)/build/macos.clang.inc
|
||||
|
||||
CPLUS_FLAGS += -miphoneos-version-min=8.0
|
||||
LINK_FLAGS += -miphoneos-version-min=8.0
|
||||
LIB_LINK_FLAGS += -miphoneos-version-min=8.0
|
||||
@@ -0,0 +1,36 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
ifneq ($(arch),$(filter $(arch),ia32 intel64 armv7 armv7s arm64))
|
||||
$(error $(arch) is unknown architecture. Known arhitechtures are ia32 intel64 armv7 armv7s arm64)
|
||||
endif
|
||||
|
||||
# If target is ios but arch is ia32/intel64 then build for 32/64 simulator!
|
||||
ifeq (,$(SDKROOT))
|
||||
ifeq ($(arch),$(filter $(arch),ia32 intel64))
|
||||
export SDKROOT:=$(shell xcodebuild -sdk -version | grep -o -E '/.*SDKs/iPhoneSimulator.*' 2>/dev/null)
|
||||
else
|
||||
export SDKROOT:=$(shell xcodebuild -sdk -version | grep -o -E '/.*SDKs/iPhoneOS.*' 2>/dev/null)
|
||||
endif
|
||||
endif
|
||||
ifeq (,$(SDKROOT))
|
||||
$(error iOS* SDK not found)
|
||||
endif
|
||||
|
||||
ios_version:=$(shell echo $(SDKROOT) | sed -e "s/.*[a-z,A-Z]\(.*\).sdk/\1/")
|
||||
runtime:=cc$(clang_version)_ios$(ios_version)
|
||||
@@ -0,0 +1,115 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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 = -Wextra -Wshadow -Wcast-qual -Woverloaded-virtual -Wnon-virtual-dtor
|
||||
WARNING_SUPPRESS = -Wno-parentheses -Wno-non-virtual-dtor -Wno-dangling-else
|
||||
DYLIB_KEY = -shared
|
||||
EXPORT_KEY = -Wl,--version-script,
|
||||
LIBDL = -ldl
|
||||
|
||||
CPLUS = clang++
|
||||
CONLY = clang
|
||||
LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)
|
||||
LIBS += -lpthread -lrt
|
||||
LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
|
||||
C_FLAGS = $(CPLUS_FLAGS)
|
||||
|
||||
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 (,$(stdlib))
|
||||
CPLUS_FLAGS += -stdlib=$(stdlib)
|
||||
LIB_LINK_FLAGS += -stdlib=$(stdlib)
|
||||
endif
|
||||
|
||||
ifneq (,$(gcc_version))
|
||||
# TODO: do not assume that GCC minor and patchlevel versions are always single-digit.
|
||||
CPLUS_FLAGS += -DTBB_USE_GLIBCXX_VERSION=$(subst .,0,$(gcc_version))
|
||||
endif
|
||||
|
||||
TBB_ASM.OBJ=
|
||||
MALLOC_ASM.OBJ=
|
||||
|
||||
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 (bg,$(arch))
|
||||
CPLUS = bgclang++
|
||||
CONLY = bgclang
|
||||
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
|
||||
#------------------------------------------------------------------------------
|
||||
# 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,155 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
WARNING_SUPPRESS = -Wno-parentheses -Wno-non-virtual-dtor
|
||||
DYLIB_KEY = -shared
|
||||
EXPORT_KEY = -Wl,--version-script,
|
||||
LIBDL = -ldl
|
||||
|
||||
CPLUS = g++
|
||||
CONLY = gcc
|
||||
LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)
|
||||
LIBS += -lpthread -lrt
|
||||
LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
|
||||
C_FLAGS = $(CPLUS_FLAGS)
|
||||
|
||||
# gcc 4.2 and higher support OpenMP
|
||||
ifneq (,$(shell gcc -dumpversion | egrep "^(4\.[2-9]|[5-9])"))
|
||||
OPENMP_FLAG = -fopenmp
|
||||
endif
|
||||
|
||||
# gcc 4.8 and later support RTM intrinsics, but require command line switch to enable them
|
||||
ifneq (,$(shell gcc -dumpversion | egrep "^(4\.[8-9]|[5-9])"))
|
||||
RTM_KEY = -mrtm
|
||||
endif
|
||||
|
||||
# gcc 4.0 and later have -Wextra that is used by some our customers.
|
||||
ifneq (,$(shell gcc -dumpversion | egrep "^([4-9])"))
|
||||
TEST_WARNING_KEY += -Wextra
|
||||
endif
|
||||
|
||||
# gcc 5.0 and later have -Wsuggest-override option
|
||||
# enable it via a pre-included header in order to limit to C++11 and above
|
||||
ifneq (,$(shell gcc -dumpversion | egrep "^([5-9])"))
|
||||
INCLUDE_TEST_HEADERS = -include $(tbb_root)/src/test/harness_preload.h
|
||||
endif
|
||||
|
||||
# gcc 6.0 and later have -flifetime-dse option that controls
|
||||
# elimination of stores done outside the object lifetime
|
||||
ifneq (,$(shell gcc -dumpversion | egrep "^([6-9])"))
|
||||
# keep pre-contruction stores for zero initialization
|
||||
DSE_KEY = -flifetime-dse=1
|
||||
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
|
||||
|
||||
TBB_ASM.OBJ=
|
||||
MALLOC_ASM.OBJ=
|
||||
|
||||
ifeq (ia64,$(arch))
|
||||
# Position-independent code (PIC) is a must on IA-64 architecture, even for regular (not shared) executables
|
||||
CPLUS_FLAGS += $(PIC_KEY)
|
||||
endif
|
||||
|
||||
ifeq (intel64,$(arch))
|
||||
ITT_NOTIFY = -DDO_ITT_NOTIFY
|
||||
CPLUS_FLAGS += -m64 $(RTM_KEY)
|
||||
LIB_LINK_FLAGS += -m64
|
||||
endif
|
||||
|
||||
ifeq (ia32,$(arch))
|
||||
ITT_NOTIFY = -DDO_ITT_NOTIFY
|
||||
CPLUS_FLAGS += -m32 -march=pentium4 $(RTM_KEY)
|
||||
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 (bg,$(arch))
|
||||
CPLUS = $(firstword $(notdir $(shell which powerpc{64,32,}-bg{z..a}-linux-g++ 2>/dev/null)))
|
||||
CONLY = $(firstword $(notdir $(shell which powerpc{64,32,}-bg{z..a}-linux-gcc 2>/dev/null)))
|
||||
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
|
||||
|
||||
# automatically generate "IT" instructions when compiling for Thumb ISA
|
||||
ifeq (armv7,$(arch))
|
||||
CPLUS_FLAGS += -Wa,-mimplicit-it=thumb
|
||||
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,120 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
ifneq (,$(shell icc -dumpversion | egrep "1[2-9]\."))
|
||||
SDL_FLAGS = -fstack-protector -Wformat -Wformat-security
|
||||
endif
|
||||
|
||||
CPLUS = icpc
|
||||
CONLY = icc
|
||||
|
||||
ITT_NOTIFY = -DDO_ITT_NOTIFY
|
||||
ifeq (release,$(cfg))
|
||||
SDL_FLAGS += -D_FORTIFY_SOURCE=2
|
||||
CPLUS_FLAGS = $(ITT_NOTIFY) -O2 -g -DUSE_PTHREAD
|
||||
else
|
||||
CPLUS_FLAGS = $(ITT_NOTIFY) -O0 -g -DUSE_PTHREAD -DTBB_USE_DEBUG
|
||||
endif
|
||||
|
||||
LIB_LINK_FLAGS = -shared -static-intel -Wl,-soname=$(BUILDING_LIBRARY) -z relro -z now
|
||||
LIBS += -lpthread -lrt
|
||||
LINK_FLAGS = -rdynamic
|
||||
C_FLAGS = $(CPLUS_FLAGS)
|
||||
|
||||
ifneq (,$(shell icc -dumpversion | egrep "^1[6-9]\."))
|
||||
OPENMP_FLAG = -qopenmp
|
||||
else
|
||||
OPENMP_FLAG = -openmp
|
||||
endif
|
||||
|
||||
# ICC 12.0 and higher provide Intel(R) Cilk(TM) 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 architecture, 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
|
||||
# For ICC 16 and older, in std=c++14 mode -strict-ansi does not work with GNU C++ library headers
|
||||
# egrep returns 0 or 1, compare it in concatenation
|
||||
CPLUS_FLAGS += $(if $(findstring c++14_1,$(stdver)_$(shell icc -dumpversion| egrep -c "^1[1-6]\.")),-ansi,-strict-ansi)
|
||||
endif
|
||||
|
||||
ifneq (,$(codecov))
|
||||
# no tool support for code coverage, need profile data generation
|
||||
ITT_NOTIFY = -prof-genx
|
||||
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,142 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
####### Detections and Commands ###############################################
|
||||
|
||||
ifeq (icc,$(compiler))
|
||||
export COMPILER_VERSION := ICC: $(shell icc -V </dev/null 2>&1 | grep 'Version')
|
||||
ifneq (,$(findstring running on IA-32, $(COMPILER_VERSION)))
|
||||
export arch:=ia32
|
||||
else
|
||||
ifneq (,$(findstring running on Intel(R) 64, $(COMPILER_VERSION)))
|
||||
export arch:=intel64
|
||||
else
|
||||
ifneq (,$(findstring IA-64, $(COMPILER_VERSION)))
|
||||
export arch:=ia64
|
||||
endif
|
||||
endif
|
||||
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
|
||||
ifeq ($(uname_m),armv7l)
|
||||
export arch:=armv7
|
||||
endif
|
||||
ifndef arch
|
||||
export arch:=$(uname_m)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifndef runtime
|
||||
export 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 $(VERSION_FLAGS) >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
|
||||
MALLOC_DLL?=$(DLL)
|
||||
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 s390x)
|
||||
def_prefix = lin64
|
||||
endif
|
||||
ifeq ($(arch),armv7)
|
||||
def_prefix = lin32
|
||||
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).$(MALLOC_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)
|
||||
|
||||
TEST_LAUNCHER=sh $(tbb_root)/build/test_launcher.sh $(largs)
|
||||
|
||||
OPENCL.LIB = -lOpenCL
|
||||
@@ -0,0 +1,93 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
CPLUS = pathCC
|
||||
CONLY = pathcc
|
||||
LIB_LINK_FLAGS = $(DYLIB_KEY) -Wl,-soname=$(BUILDING_LIBRARY)
|
||||
LIBS += -lstl -lpthread -lrt
|
||||
LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
|
||||
C_FLAGS = $(CPLUS_FLAGS)
|
||||
|
||||
OPENMP_FLAG = -openmp
|
||||
|
||||
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
|
||||
|
||||
TBB_ASM.OBJ=
|
||||
MALLOC_ASM.OBJ=
|
||||
|
||||
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
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# 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
|
||||
#------------------------------------------------------------------------------
|
||||
# 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,104 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
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 (bg,$(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,123 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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 -Wno-dangling-else
|
||||
DYLIB_KEY = -dynamiclib
|
||||
EXPORT_KEY = -Wl,-exported_symbols_list,
|
||||
LIBDL = -ldl
|
||||
|
||||
LIBS = -lpthread
|
||||
LINK_FLAGS =
|
||||
LIB_LINK_FLAGS = -dynamiclib -install_name @rpath/$(BUILDING_LIBRARY)
|
||||
C_FLAGS = $(CPLUS_FLAGS)
|
||||
|
||||
ifeq ($(cfg), release)
|
||||
CPLUS_FLAGS = -g -O2
|
||||
else
|
||||
CPLUS_FLAGS = -g -O0 -DTBB_USE_DEBUG
|
||||
endif
|
||||
|
||||
CPLUS_FLAGS += -DUSE_PTHREAD
|
||||
|
||||
# For Clang, we add the option to support RTM intrinsics *iff* xtest is found in <immintrin.h>
|
||||
ifneq (,$(shell grep xtest `echo "\#include<immintrin.h>" | clang -E -M - 2>&1 | grep immintrin.h` 2>/dev/null))
|
||||
RTM_KEY = -mrtm
|
||||
endif
|
||||
|
||||
ifneq (,$(stdlib))
|
||||
CPLUS_FLAGS += -stdlib=$(stdlib)
|
||||
LIB_LINK_FLAGS += -stdlib=$(stdlib)
|
||||
endif
|
||||
|
||||
ifeq (intel64,$(arch))
|
||||
CPLUS_FLAGS += -m64 $(RTM_KEY)
|
||||
LINK_FLAGS += -m64
|
||||
LIB_LINK_FLAGS += -m64
|
||||
endif
|
||||
|
||||
ifeq (ia32,$(arch))
|
||||
CPLUS_FLAGS += -m32 $(RTM_KEY)
|
||||
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
|
||||
|
||||
ifeq ($(arch),$(filter $(arch),armv7 armv7s arm64))
|
||||
CPLUS_FLAGS += -arch $(arch)
|
||||
LINK_FLAGS += -arch $(arch)
|
||||
LIB_LINK_FLAGS += -arch $(arch)
|
||||
endif
|
||||
|
||||
ifdef SDKROOT
|
||||
CPLUS_FLAGS += -isysroot $(SDKROOT)
|
||||
LINK_FLAGS += -L$(SDKROOT)/usr/lib/system -L$(SDKROOT)/usr/lib/
|
||||
LIB_LINK_FLAGS += -L$(SDKROOT)/usr/lib/system -L$(SDKROOT)/usr/lib/
|
||||
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,112 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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 -install_name @rpath/$(BUILDING_LIBRARY)
|
||||
C_FLAGS = $(CPLUS_FLAGS)
|
||||
|
||||
ifeq ($(cfg), release)
|
||||
CPLUS_FLAGS = -g -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
|
||||
|
||||
ifeq (armv7,$(arch))
|
||||
CPLUS_FLAGS += -arch armv7
|
||||
LINK_FLAGS += -arch armv7
|
||||
LIB_LINK_FLAGS += -arch armv7
|
||||
endif
|
||||
|
||||
ifdef SDKROOT
|
||||
CPLUS_FLAGS += -isysroot $(SDKROOT)
|
||||
LIB_LINK_FLAGS += -L$(SDKROOT)/usr/lib/system -L$(SDKROOT)/usr/lib/
|
||||
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,107 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
ifneq (,$(shell icc -dumpversion | egrep "1[2-9]\."))
|
||||
SDL_FLAGS = -fstack-protector -Wformat -Wformat-security
|
||||
endif
|
||||
|
||||
DYLIB_KEY = -dynamiclib
|
||||
EXPORT_KEY = -Wl,-exported_symbols_list,
|
||||
LIBDL = -ldl
|
||||
|
||||
LIBS = -lpthread
|
||||
LINK_FLAGS =
|
||||
LIB_LINK_FLAGS = -dynamiclib -static-intel -install_name @rpath/$(BUILDING_LIBRARY)
|
||||
C_FLAGS = $(CPLUS_FLAGS)
|
||||
|
||||
ifneq (,$(shell icc -dumpversion | egrep "^1[6-9]\."))
|
||||
OPENMP_FLAG = -qopenmp
|
||||
else
|
||||
OPENMP_FLAG = -openmp
|
||||
endif
|
||||
|
||||
# ICC 12.0 and higher provide Intel(R) Cilk(TM) Plus
|
||||
ifneq (,$(shell icc -dumpversion | egrep "^1[2-9]\."))
|
||||
CILK_AVAILABLE = yes
|
||||
endif
|
||||
|
||||
ifeq ($(cfg), release)
|
||||
SDL_FLAGS += -D_FORTIFY_SOURCE=2
|
||||
CPLUS_FLAGS = -g -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
|
||||
|
||||
# ICC 14.0 and higher support usage of libc++, clang standard library
|
||||
# Extending minimal deployment version of official binaries to unsupported 10.8
|
||||
# per customer requests. TODO: make a dedicated variable for this
|
||||
ifneq (,$(shell icc -dumpversion | egrep "^1[4-9]\."))
|
||||
ifneq (,$(stdlib))
|
||||
CPLUS_FLAGS += -stdlib=$(stdlib) -mmacosx-version-min=10.8
|
||||
LIB_LINK_FLAGS += -stdlib=$(stdlib) -mmacosx-version-min=10.8
|
||||
endif
|
||||
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,107 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
####### Detections and Commands ###############################################
|
||||
|
||||
ifeq (icc,$(compiler))
|
||||
export COMPILER_VERSION := ICC: $(shell icc -V </dev/null 2>&1 | grep 'Version')
|
||||
ifneq (,$(findstring running on IA-32, $(COMPILER_VERSION)))
|
||||
export arch:=ia32
|
||||
else
|
||||
ifneq (,$(findstring running on Intel(R) 64, $(COMPILER_VERSION)))
|
||||
export arch:=intel64
|
||||
endif
|
||||
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
|
||||
clang_version:=$(shell clang -v 2>&1 >/dev/null | grep version | sed -e "s/.*version \(.*[0-9]\) .*/\1/")
|
||||
ifndef os_version
|
||||
os_version:=$(shell /usr/bin/sw_vers -productVersion)
|
||||
endif
|
||||
export runtime:=cc$(clang_version)_os$(os_version)
|
||||
endif
|
||||
|
||||
native_compiler := clang
|
||||
export compiler ?= clang
|
||||
debugger ?= lldb
|
||||
|
||||
export stdlib ?= libc++
|
||||
|
||||
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 $(VERSION_FLAGS) >version_string.ver
|
||||
MAKE_TBBVARS=sh $(tbb_root)/build/generate_tbbvars.sh DY
|
||||
|
||||
ifdef DYLD_LIBRARY_PATH
|
||||
export DYLD_LIBRARY_PATH := .:$(DYLD_LIBRARY_PATH)
|
||||
else
|
||||
export DYLD_LIBRARY_PATH := .
|
||||
endif
|
||||
|
||||
####### Build settings ########################################################
|
||||
|
||||
OBJ=o
|
||||
DLL=dylib
|
||||
MALLOC_DLL?=$(DLL)
|
||||
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).$(MALLOC_DLL)
|
||||
MALLOC.LIB = $(MALLOC.DLL)
|
||||
LINK_MALLOC.LIB = $(MALLOC.LIB)
|
||||
|
||||
MALLOCPROXY.DLL = libtbbmalloc_proxy$(DEBUG_SUFFIX).$(MALLOC_DLL)
|
||||
MALLOCPROXY.LIB = $(MALLOCPROXY.DLL)
|
||||
LINK_MALLOCPROXY.LIB = $(MALLOCPROXY.LIB)
|
||||
|
||||
TEST_LAUNCHER=sh $(tbb_root)/build/test_launcher.sh $(largs)
|
||||
|
||||
OPENCL.LIB = -framework OpenCL
|
||||
@@ -0,0 +1,79 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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 -Wl,-soname=$@
|
||||
EXPORT_KEY = -Wl,--version-script,
|
||||
NOINTRINSIC_KEY = -fno-builtin
|
||||
LIBDL = -ldl
|
||||
SDL_FLAGS = -fstack-protector -Wformat -Wformat-security
|
||||
CPLUS = icpc
|
||||
CONLY = icc
|
||||
|
||||
ifeq (release,$(cfg))
|
||||
SDL_FLAGS += -D_FORTIFY_SOURCE=2
|
||||
CPLUS_FLAGS = -O2 -g -DUSE_PTHREAD
|
||||
else
|
||||
CPLUS_FLAGS = -O0 -g -DUSE_PTHREAD -DTBB_USE_DEBUG
|
||||
endif
|
||||
|
||||
ifneq (,$(codecov))
|
||||
CPLUS_FLAGS += -prof-genx
|
||||
endif
|
||||
|
||||
ifneq (,$(shell icc -dumpversion | egrep "^1[6-9]\."))
|
||||
OPENMP_FLAG = -qopenmp
|
||||
else
|
||||
OPENMP_FLAG = -openmp
|
||||
endif
|
||||
|
||||
LIB_LINK_FLAGS = -shared -static-intel -Wl,-soname=$(BUILDING_LIBRARY) -z relro -z now
|
||||
LIBS += -lpthread -lrt
|
||||
C_FLAGS = $(CPLUS_FLAGS)
|
||||
CILK_AVAILABLE = yes
|
||||
|
||||
TBB_ASM.OBJ=
|
||||
MALLOC_ASM.OBJ=
|
||||
|
||||
CPLUS_FLAGS += -DHARNESS_INCOMPLETE_SOURCES=1 -D__TBB_MIC_NATIVE -DTBB_USE_EXCEPTIONS=0 -qopt-streaming-stores never
|
||||
CPLUS += -mmic
|
||||
CONLY += -mmic
|
||||
LINK_FLAGS = -Wl,-rpath-link=. -rdynamic
|
||||
# Tell the icc to not link against libcilk*. Otherwise icc tries to link and emits a warning message.
|
||||
LIB_LINK_FLAGS += -no-intel-extensions
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Setting tbbmalloc data.
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
M_CPLUS_FLAGS = $(CPLUS_FLAGS) -fno-rtti -fno-exceptions
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# End of setting tbbmalloc data.
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,43 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
ifeq (,$(tbb_build_prefix))
|
||||
tbb_build_prefix=mic_icc$(CPF_SUFFIX)
|
||||
endif
|
||||
# For examples
|
||||
mic_tbb_build_prefix=$(tbb_build_prefix)
|
||||
endif
|
||||
|
||||
MAKE_VERSIONS=sh $(tbb_root)/build/version_info_linux.sh $(VERSION_FLAGS) >version_string.ver
|
||||
MAKE_TBBVARS=sh $(tbb_root)/build/generate_tbbvars.sh MIC_ MIC_
|
||||
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,161 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
# Usage:
|
||||
# mic.linux.launcher.sh [-v] [-q] [-s] [-r <repeats>] [-u] [-l <library>] <executable> <arg1> <arg2> <argN>
|
||||
# where: -v enables verbose output
|
||||
# where: -q enables quiet mode
|
||||
# where: -s runs the test in stress mode (until non-zero exit code or ctrl-c pressed)
|
||||
# where: -r <repeats> specifies number of times to repeat execution
|
||||
# where: -u limits stack size
|
||||
# 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
|
||||
while getopts "qvsr:ul:" flag #
|
||||
do case $flag in #
|
||||
s ) # Stress testing mode
|
||||
echo Doing stress testing. Press Ctrl-C to terminate
|
||||
run_env='stressed() { while $*; do :; done; };' #
|
||||
run_prefix="stressed $run_prefix" ;; #
|
||||
r ) # Repeats test n times
|
||||
run_env="repeated() { for i in \$(seq 1 $OPTARG); do echo \$i of $OPTARG:; \$*; done; };" #
|
||||
run_prefix="repeated $run_prefix" ;; #
|
||||
l ) # Additional library
|
||||
ldd_list+="$OPTARG " #
|
||||
run_prefix+=" LD_PRELOAD=$OPTARG" ;; #
|
||||
u ) # Set stack limit
|
||||
run_prefix="ulimit -s 10240; $run_prefix" ;; #
|
||||
q ) # Quiet mode, removes 'done' but prepends any other output by test name
|
||||
SUPPRESS='>/dev/null' #
|
||||
verbose=1 ;; # TODO: implement a better quiet mode
|
||||
v ) # Verbose mode
|
||||
verbose=1 ;; #
|
||||
esac done #
|
||||
shift `expr $OPTIND - 1` #
|
||||
[ $verbose ] || SUPPRESS='>/dev/null' #
|
||||
#
|
||||
# Collect the executable name
|
||||
fexename="$1" #
|
||||
exename=`basename $1` #
|
||||
shift #
|
||||
#
|
||||
: ${MICDEV:=mic0} #
|
||||
RSH="sudo ssh $MICDEV" #
|
||||
RCP="sudo scp" #
|
||||
currentdir=$PWD #
|
||||
#
|
||||
# Prepare the target directory on the device
|
||||
targetdir="`$RSH mktemp -d /tmp/tbbtestXXXXXX 2>/dev/null`" #
|
||||
# Prepare the temporary directory on the host
|
||||
hostdir="`mktemp -d /tmp/tbbtestXXXXXX 2>/dev/null`" #
|
||||
#
|
||||
function copy_files { #
|
||||
[ $verbose ] && echo Going to copy $* #
|
||||
eval "cp $* $hostdir/ $SUPPRESS 2>/dev/null || exit \$?" #
|
||||
eval "$RCP $hostdir/* $MICDEV:$targetdir/ $SUPPRESS 2>/dev/null || exit \$?" #
|
||||
eval "rm $hostdir/* $SUPPRESS 2>/dev/null || exit \$?" #
|
||||
} # copy files
|
||||
#
|
||||
function clean_all() { #
|
||||
eval "$RSH rm -fr $targetdir $SUPPRESS" ||: #
|
||||
eval "rm -fr $hostdir $SUPPRESS" ||: #
|
||||
} # clean all temporary files
|
||||
#
|
||||
function kill_interrupt() { #
|
||||
echo -e "\n*** Killing remote $exename ***" && $RSH "killall $exename" #
|
||||
clean_all #
|
||||
} # kill target process
|
||||
#
|
||||
trap 'clean_all' SIGINT SIGQUIT # trap keyboard interrupt (control-c)
|
||||
#
|
||||
# Transfer the test executable file and its auxiliary libraries (named as {test}_dll.so) to the target device.
|
||||
copy_files $fexename `ls ${exename%\.*}*.so 2>/dev/null ||:` #
|
||||
#
|
||||
# Collect all dependencies of the test and its auxiliary libraries to transfer them to the target device.
|
||||
ldd_list+="libtbbmalloc*.so* libirml*.so* `$RSH ldd $targetdir/\* | 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 : " "` #
|
||||
[ $verbose ] && echo Searching libraries in $mic_dir_list
|
||||
for name in $ldd_list; do # adds the first matched name in specified dirs
|
||||
found="`find -L $mic_dir_list -name $name -a -readable -print -quit 2>/dev/null` "||: #
|
||||
[ $verbose ] && echo File $name: $found
|
||||
fnamelist+=$found
|
||||
done #
|
||||
#
|
||||
# Remove extra spaces.
|
||||
fnamelist=`echo $fnamelist` #
|
||||
# Transfer collected executable and library files to the target device.
|
||||
[ -n "$fnamelist" ] && copy_files $fnamelist
|
||||
#
|
||||
# Transfer input files used by example codes by scanning the executable argument list.
|
||||
argfiles= #
|
||||
args= #
|
||||
for arg in "$@"; do #
|
||||
if [ -r $arg ]; then #
|
||||
argfiles+="$arg " #
|
||||
args+="$(basename $arg) " #
|
||||
else #
|
||||
args+="$arg " #
|
||||
fi #
|
||||
done #
|
||||
[ -n "$argfiles" ] && copy_files $argfiles #
|
||||
#
|
||||
# Get the list of transferred files
|
||||
testfiles="`$RSH find $targetdir/ -type f | tr '\n' ' ' 2>/dev/null`" #
|
||||
#
|
||||
[ $verbose ] && echo Running $run_prefix ./$exename $args #
|
||||
# Run the test on the target device
|
||||
trap 'kill_interrupt' SIGINT SIGQUIT # trap keyboard interrupt (control-c)
|
||||
trap - ERR #
|
||||
run_env+="cd $targetdir; export LD_LIBRARY_PATH=.:\$LD_LIBRARY_PATH;" #
|
||||
$RSH "$run_env $run_prefix ./$exename $args" #
|
||||
#
|
||||
# Delete the test files and get the list of output files
|
||||
outfiles=`$RSH rm $testfiles 2>/dev/null; find $targetdir/ -type f 2>/dev/null` ||: #
|
||||
if [ -n "$outfiles" ]; then #
|
||||
for outfile in $outfiles; do #
|
||||
filename=$(basename $outfile) #
|
||||
subdir=$(dirname $outfile) #
|
||||
subdir="${subdir#$targetdir}" #
|
||||
[ -n $subdir ] subdir=$subdir/ #
|
||||
# Create directories on host
|
||||
[ ! -d "$hostdir/$subdir" ] && mkdir -p "$hostdir/$subdir" #
|
||||
[ ! -d "$currentdir/$subdir" ] && mkdir -p "$currentdir/$subdir" #
|
||||
# Copy the output file to the temporary directory on host
|
||||
eval "$RCP -r '$MICDEV:${outfile#}' '$hostdir/$subdir$filename' $SUPPRESS 2>&1 || exit \$?" #
|
||||
# Copy the output file from the temporary directory to the current directory
|
||||
eval "cp '$hostdir/$subdir$filename' '$currentdir/$subdir$filename' $SUPPRESS 2>&1 || exit \$?" #
|
||||
done #
|
||||
fi #
|
||||
#
|
||||
# Clean up temporary directories
|
||||
clean_all
|
||||
#
|
||||
# Return the exit code of the test.
|
||||
exit $? #
|
||||
@@ -0,0 +1,118 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
# The same build prefix should be used in mic.linux.inc
|
||||
mic_tbb_build_prefix=mic_icc$(CPF_SUFFIX)
|
||||
MIC_OFFLOAD_NATIVE_PATH?=../$(mic_tbb_build_prefix)_$(cfg)
|
||||
|
||||
ifdef BUILDING_PHASE
|
||||
ifeq ($(BUILDING_PHASE),1)
|
||||
# Tests
|
||||
export MIC_OFFLOAD_NATIVE_PATH
|
||||
LINK_TBB_NATIVE.LIB=$(MIC_OFFLOAD_NATIVE_PATH)/$(TBB.LIB)
|
||||
LINK_TBB.LIB=-qoffload-option,mic,ld,"$(LINK_TBB_NATIVE.LIB)" $(TBB.LIB)
|
||||
LINK_MALLOC_NATIVE.LIB=$(MIC_OFFLOAD_NATIVE_PATH)/$(MALLOC.DLL)
|
||||
LINK_MALLOC.LIB=-qoffload-option,mic,ld,"$(LINK_MALLOC_NATIVE.LIB)" $(MALLOC.LIB)
|
||||
LINK_MALLOCPROXY_NATIVE.LIB=$(MIC_OFFLOAD_NATIVE_PATH)/$(MALLOCPROXY.DLL)
|
||||
LINK_MALLOCPROXY.LIB=-qoffload-option,mic,ld,"$(LINK_MALLOCPROXY_NATIVE.LIB)" $(MALLOCPROXY.LIB)
|
||||
|
||||
# Export extensions for test_launcher
|
||||
export DLL
|
||||
export TEST_EXT=offload.exe
|
||||
OBJ=offload.o
|
||||
|
||||
# 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
|
||||
WARNING_AS_ERROR_KEY = Warning as error
|
||||
WARNING_KEY = -diag-warning 2426 -w0
|
||||
|
||||
CXX_MIC_STUFF = -qoffload-attribute-target=mic -D__TBB_MIC_OFFLOAD=1 -qoffload-option,mic,compiler,"-D__TBB_MIC_OFFLOAD=1 $(CXX_MIC_NATIVE_STUFF)"
|
||||
CXX_MIC_NATIVE_STUFF = -DHARNESS_INCOMPLETE_SOURCES=1 -D__TBB_MIC_NATIVE -DTBB_USE_EXCEPTIONS=0
|
||||
CPLUS_FLAGS += $(CXX_MIC_STUFF)
|
||||
|
||||
# Some tests require that an executable exports its symbols.
|
||||
LINK_FLAGS += -qoffload-option,mic,ld,"--export-dynamic"
|
||||
|
||||
# libcoi_device.so is needed for COIProcessProxyFlush used in Harness.
|
||||
LINK_FLAGS += -qoffload-option,mic,ld,"-lcoi_device"
|
||||
|
||||
# DSO-linking semantics forces linking libpthread and librt to a test.
|
||||
LINK_FLAGS += -qoffload-option,mic,ld,"-lpthread -lrt"
|
||||
|
||||
.PHONY: FORCE
|
||||
FORCE:
|
||||
|
||||
$(MIC_OFFLOAD_NATIVE_PATH)/%_dll.$(DLL): FORCE
|
||||
@$(MAKE) --no-print-directory -C "$(MIC_OFFLOAD_NATIVE_PATH)" target=mic offload= -f$(tbb_root)/build/Makefile.$(TESTFILE) $*_dll.$(DLL)
|
||||
%_dll.$(DLL): $(MIC_OFFLOAD_NATIVE_PATH)/%_dll.$(DLL) FORCE
|
||||
@$(MAKE) --no-print-directory offload= -f$(tbb_root)/build/Makefile.$(TESTFILE) $*_dll.$(DLL)
|
||||
|
||||
.PRECIOUS: $(MIC_OFFLOAD_NATIVE_PATH)/%_dll.$(DLL)
|
||||
|
||||
%.$(TEST_EXT): LINK_FILES+=-qoffload-option,mic,ld,"$(addprefix $(MIC_OFFLOAD_NATIVE_PATH)/,$(TEST_LIBS))"
|
||||
|
||||
TEST_LAUNCHER=sh $(tbb_root)/build/test_launcher.sh $(largs)
|
||||
|
||||
ifdef MIC_LD_LIBRARY_PATH
|
||||
export MIC_LD_LIBRARY_PATH := $(MIC_OFFLOAD_NATIVE_PATH):$(MIC_LD_LIBRARY_PATH)
|
||||
else
|
||||
export MIC_LD_LIBRARY_PATH := $(MIC_OFFLOAD_NATIVE_PATH)
|
||||
endif
|
||||
else
|
||||
# Examples
|
||||
export UI = con
|
||||
export x64 = 64
|
||||
endif
|
||||
else
|
||||
# Libraries
|
||||
LIB_TARGETS = tbb tbbmalloc tbbproxy rml
|
||||
addsuffixes = $(foreach suff,$(1),$(addsuffix $(suff),$(2)))
|
||||
|
||||
.PHONY: $(call addsuffixes, _debug _release _debug_mic _release_mic,$(LIB_TARGETS))
|
||||
|
||||
# The dependence on *_debug and *_release targets unifies the offload support
|
||||
# for top-level Makefile and src/Makefile
|
||||
$(LIB_TARGETS): %: %_release %_debug
|
||||
|
||||
# "override offload=" suppresses the "offload" variable value for nested makes
|
||||
$(LIB_TARGETS) $(call addsuffixes, _debug _release,$(LIB_TARGETS)): override offload=
|
||||
# Apply overriding for library builds
|
||||
export offload
|
||||
export tbb_build_prefix
|
||||
# Add the dependency on target libraries
|
||||
$(call addsuffixes, _debug _release,$(LIB_TARGETS)): %: %_mic
|
||||
|
||||
# tbb_build_prefix should be overridden since we want to restart make in "clear" environment
|
||||
$(call addsuffixes, _debug_mic _release_mic,$(LIB_TARGETS)): override tbb_build_prefix=
|
||||
$(call addsuffixes, _debug_mic _release_mic,$(LIB_TARGETS)): %_mic:
|
||||
@$(MAKE) --no-print-directory -C "$(full_tbb_root)/src" $* target=mic tbb_root=..
|
||||
|
||||
mic_clean: override tbb_build_prefix=
|
||||
mic_clean:
|
||||
@$(MAKE) --no-print-directory -C "$(full_tbb_root)/src" clean offload= target=mic tbb_root=..
|
||||
clean: mic_clean
|
||||
endif
|
||||
@@ -0,0 +1 @@
|
||||
hwcap_1 = OVERRIDE;
|
||||
@@ -0,0 +1,74 @@
|
||||
@echo off
|
||||
REM
|
||||
REM Copyright (c) 2005-2016 Intel Corporation
|
||||
REM
|
||||
REM Licensed under the Apache License, Version 2.0 (the "License");
|
||||
REM you may not use this file except in compliance with the License.
|
||||
REM You may obtain a copy of the License at
|
||||
REM
|
||||
REM http://www.apache.org/licenses/LICENSE-2.0
|
||||
REM
|
||||
REM Unless required by applicable law or agreed to in writing, software
|
||||
REM distributed under the License is distributed on an "AS IS" BASIS,
|
||||
REM WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
REM See the License for the specific language governing permissions and
|
||||
REM limitations under the License.
|
||||
REM
|
||||
REM
|
||||
REM
|
||||
REM
|
||||
REM
|
||||
|
||||
set cmd_line=
|
||||
if DEFINED run_prefix set cmd_line=%run_prefix%
|
||||
:while
|
||||
if NOT "%1"=="" (
|
||||
REM Verbose mode
|
||||
if "%1"=="-v" (
|
||||
set verbose=yes
|
||||
GOTO continue
|
||||
)
|
||||
REM Silent mode of 'make' requires additional support for associating
|
||||
REM of test output with the test name. Verbose mode is the simplest way
|
||||
if "%1"=="-q" (
|
||||
set verbose=yes
|
||||
GOTO continue
|
||||
)
|
||||
REM Run in stress mode
|
||||
if "%1"=="-s" (
|
||||
echo Doing stress testing. Press Ctrl-C to terminate
|
||||
set stress=yes
|
||||
GOTO continue
|
||||
)
|
||||
REM Repeat execution specified number of times
|
||||
if "%1"=="-r" (
|
||||
set repeat=%2
|
||||
SHIFT
|
||||
GOTO continue
|
||||
)
|
||||
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
|
||||
)
|
||||
set cmd_line=%cmd_line:./=.\%
|
||||
if DEFINED verbose echo Running %cmd_line%
|
||||
if DEFINED stress set cmd_line=%cmd_line% ^& IF NOT ERRORLEVEL 1 GOTO stress
|
||||
:stress
|
||||
if DEFINED repeat (
|
||||
for /L %%i in (1,1,%repeat%) do echo %%i of %repeat%: & %cmd_line%
|
||||
) else (
|
||||
%cmd_line%
|
||||
)
|
||||
@@ -0,0 +1,94 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
# Usage:
|
||||
# test_launcher.sh [-v] [-q] [-s] [-r <repeats>] [-u] [-l <library>] <executable> <arg1> <arg2> <argN>
|
||||
# where: -v enables verbose output
|
||||
# where: -q enables quiet mode
|
||||
# where: -s runs the test in stress mode (until non-zero exit code or ctrl-c pressed)
|
||||
# where: -r <repeats> specifies number of times to repeat execution
|
||||
# where: -u limits stack size
|
||||
# where: -l <library> specifies the library name to be assigned to LD_PRELOAD
|
||||
|
||||
while getopts "qvsr:ul:" flag #
|
||||
do case $flag in #
|
||||
s ) # Stress testing mode
|
||||
run_prefix="stressed $run_prefix" ;; #
|
||||
r ) # Repeats test n times
|
||||
repeat=$OPTARG #
|
||||
run_prefix="repeated $run_prefix" ;; #
|
||||
l ) if [ `uname` = 'Linux' ] ; then #
|
||||
LD_PRELOAD=$OPTARG #
|
||||
elif [ `uname` = 'Darwin' ] ; then #
|
||||
DYLD_INSERT_LIBRARIES=$OPTARG #
|
||||
else #
|
||||
echo 'skip' #
|
||||
exit #
|
||||
fi ;; #
|
||||
u ) # Set stack limit
|
||||
ulimit -s 10240 ;; #
|
||||
q ) # Quiet mode, removes 'done' but prepends any other output by test name
|
||||
OUTPUT='2>&1 | sed -e "s/done//;/^[[:space:]]*$/d;s!^!$1: !"' ;; #
|
||||
v ) # Verbose mode
|
||||
verbose=1 ;; #
|
||||
esac done #
|
||||
shift `expr $OPTIND - 1` #
|
||||
if [ $MIC_OFFLOAD_NATIVE_PATH ] ; then #
|
||||
LIB_NAME=${1/%.$TEST_EXT/_dll.$DLL} #
|
||||
if [ -f "$MIC_OFFLOAD_NATIVE_PATH/$LIB_NAME" ]; then #
|
||||
[ -z "$MIC_CARD" ] && MIC_CARD=mic0 #
|
||||
TMPDIR_HOST=`mktemp -d /tmp/tbbtestXXXXXX` #
|
||||
TMPDIR_MIC=`sudo ssh $MIC_CARD mktemp -d /tmp/tbbtestXXXXXX` #
|
||||
sudo ssh $MIC_CARD "chmod +x $TMPDIR_MIC" #
|
||||
# Test specific library may depend on libtbbmalloc*
|
||||
cp "$MIC_OFFLOAD_NATIVE_PATH/$LIB_NAME" "$MIC_OFFLOAD_NATIVE_PATH"/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 #
|
||||
fi #
|
||||
stressed() { echo Doing stress testing. Press Ctrl-C to terminate #
|
||||
while :; do $*; done;#
|
||||
} #
|
||||
repeated() { #
|
||||
i=0; while [ "$i" -lt $repeat ]; do i=`expr $i + 1`; echo $i of $repeat:; $*; done #
|
||||
} #
|
||||
# DYLD_LIBRARY_PATH can be purged on OS X 10.11, set it again
|
||||
if [ `uname` = 'Darwin' -a -z "$DYLD_LIBRARY_PATH" ] ; then #
|
||||
DYLD_LIBRARY_PATH=. #
|
||||
export DYLD_LIBRARY_PATH #
|
||||
fi #
|
||||
# Run the command line passed via parameters
|
||||
[ $verbose ] && echo Running $run_prefix $* #
|
||||
if [ -n "$LD_PRELOAD" ] ; then #
|
||||
export LD_PRELOAD #
|
||||
elif [ -n "$DYLD_INSERT_LIBRARIES" ] ; then #
|
||||
export DYLD_INSERT_LIBRARIES #
|
||||
fi #
|
||||
exec 4>&1 # extracting exit code of the first command in pipeline needs duplicated stdout
|
||||
# custom redirection needs eval, otherwise shell cannot parse it
|
||||
err=`eval '( $run_prefix $* || echo \$? >&3; )' ${OUTPUT} 3>&1 >&4` #
|
||||
[ -z "$err" ] || echo $1: exited with error $err #
|
||||
if [ $MIC_OFFLOAD_NATIVE_PATH ] ; 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 $err #
|
||||
@@ -0,0 +1,34 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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++ --version </dev/null 2>&1 | grep 'g++'`'" 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,33 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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_TARGET_CXX'"\t"`$TARGET_CXX --version | head -n1`'" 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,34 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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++ --version </dev/null 2>&1 | grep 'g++'`'" 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,32 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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_CLANG'"\t"`clang --version </dev/null 2>&1 | grep 'version '`'" ENDL \'
|
||||
echo '#N": BUILD_XCODE'"\t"`xcodebuild -version </dev/null 2>&1 | grep 'Xcode'`'" 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,31 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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,95 @@
|
||||
// Copyright (c) 2005-2016 Intel Corporation
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the 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_GCC\\t\\t" +
|
||||
tmpExec.StdOut.ReadLine() +
|
||||
"\" ENDL \\" );
|
||||
|
||||
} else if ( WScript.Arguments(0).toLowerCase().match("clang") ) {
|
||||
tmpExec = WshShell.Exec(WScript.Arguments(0) + " --version");
|
||||
WScript.echo( "#N \": BUILD_CLANG\\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())) );
|
||||
@@ -0,0 +1,30 @@
|
||||
<HTML>
|
||||
<BODY>
|
||||
|
||||
<H2>Overview</H2>
|
||||
This directory contains the Visual Studio* 2012 solution to build Intel® Threading Building Blocks.
|
||||
|
||||
|
||||
<H2>Files</H2>
|
||||
<DL>
|
||||
<DT><A HREF="makefile.sln">makefile.sln</A>
|
||||
<DD>Solution file.</DD>
|
||||
<DT><A HREF="tbb.vcxproj">tbb.vcxproj</A>
|
||||
<DD>Library project file.</DD>
|
||||
<DT><A HREF="tbbmalloc.vcxproj">tbbmalloc.vcxproj</A>
|
||||
<DD>Scalable allocator library project file.</DD>
|
||||
<DT><A HREF="tbbmalloc_proxy.vcxproj">tbbmalloc_proxy.vcxproj</A>
|
||||
<DD>Standard allocator replacement project file. </DD>
|
||||
</DL>
|
||||
|
||||
<HR>
|
||||
<A HREF="../index.html">Up to parent directory</A>
|
||||
<P></P>
|
||||
Copyright © 2016 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,78 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2012
|
||||
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.vcxproj", "{F62787DD-1327-448B-9818-030062BCFAA5}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tbbmalloc", "tbbmalloc.vcxproj", "{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "tbbmalloc_proxy", "tbbmalloc_proxy.vcxproj", "{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}"
|
||||
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,696 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug-MT|Win32">
|
||||
<Configuration>Debug-MT</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug-MT|x64">
|
||||
<Configuration>Debug-MT</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release-MT|Win32">
|
||||
<Configuration>Release-MT</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release-MT|x64">
|
||||
<Configuration>Release-MT</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{F62787DD-1327-448B-9818-030062BCFAA5}</ProjectGuid>
|
||||
<RootNamespace>tbb</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
<Import Project="$(VCTargetsPath)\BuildCustomizations\masm.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">false</LinkIncremental>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectName)_debug</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">$(ProjectName)_debug</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectName)_debug</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(ProjectName)_debug</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include</AdditionalOptions>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbb.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbb_debug.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Midl>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include</AdditionalOptions>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ShowIncludes>false</ShowIncludes>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbb.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbb_debug.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include</AdditionalOptions>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbb.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbb.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Midl>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include</AdditionalOptions>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbb.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbb.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include</AdditionalOptions>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbb.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbb_debug.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">
|
||||
<Midl>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include</AdditionalOptions>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ShowIncludes>false</ShowIncludes>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbb.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbb_debug.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include</AdditionalOptions>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbb.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbb.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">
|
||||
<Midl>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBB_BUILD=1 /W4 /I../../src /I../../src/rml/include /I../../include</AdditionalOptions>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbb.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbb.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
<ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<MASM Include="..\..\src\tbb\ia32-masm\atomic_support.asm">
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">/coff /Zi</AdditionalOptions>
|
||||
<UseSafeExceptionHandlers Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">true</UseSafeExceptionHandlers>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">true</ExcludedFromBuild>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">/coff /Zi</AdditionalOptions>
|
||||
<UseSafeExceptionHandlers Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</UseSafeExceptionHandlers>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">/coff</AdditionalOptions>
|
||||
<UseSafeExceptionHandlers Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">true</UseSafeExceptionHandlers>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">true</ExcludedFromBuild>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">/coff</AdditionalOptions>
|
||||
<UseSafeExceptionHandlers Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</UseSafeExceptionHandlers>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
</MASM>
|
||||
<CustomBuild Include="..\..\src\tbb\intel64-masm\atomic_support.asm">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">building atomic_support.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DUSE_FRAME_POINTER /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">building atomic_support.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DUSE_FRAME_POINTER /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">building atomic_support.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">building atomic_support.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\src\tbb\intel64-masm\intel64_misc.asm">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">building intel64_misc.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DUSE_FRAME_POINTER /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/intel64_misc.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">building intel64_misc.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DUSE_FRAME_POINTER /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/intel64_misc.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">building intel64_misc.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/intel64_misc.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">building intel64_misc.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/intel64_misc.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
<MASM Include="..\..\src\tbb\ia32-masm\itsx.asm">
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">/coff /Zi</AdditionalOptions>
|
||||
<UseSafeExceptionHandlers Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">true</UseSafeExceptionHandlers>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">true</ExcludedFromBuild>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">/coff /Zi</AdditionalOptions>
|
||||
<UseSafeExceptionHandlers Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</UseSafeExceptionHandlers>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">/coff</AdditionalOptions>
|
||||
<UseSafeExceptionHandlers Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">true</UseSafeExceptionHandlers>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">true</ExcludedFromBuild>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">/coff</AdditionalOptions>
|
||||
<UseSafeExceptionHandlers Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</UseSafeExceptionHandlers>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
</MASM>
|
||||
<CustomBuild Include="..\..\src\tbb\intel64-masm\itsx.asm">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">building itsx.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DUSE_FRAME_POINTER /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/itsx.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">building itsx.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DUSE_FRAME_POINTER /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/itsx.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">building itsx.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/itsx.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">building itsx.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/itsx.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
<MASM Include="..\..\src\tbb\ia32-masm\lock_byte.asm">
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">/coff /Zi</AdditionalOptions>
|
||||
<UseSafeExceptionHandlers Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">true</UseSafeExceptionHandlers>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">true</ExcludedFromBuild>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">/coff /Zi</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">/coff /Zi</AdditionalOptions>
|
||||
<UseSafeExceptionHandlers Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</UseSafeExceptionHandlers>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">/coff /Zi</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">/coff</AdditionalOptions>
|
||||
<UseSafeExceptionHandlers Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">true</UseSafeExceptionHandlers>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">true</ExcludedFromBuild>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">/coff</AdditionalOptions>
|
||||
<UseSafeExceptionHandlers Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</UseSafeExceptionHandlers>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
</MASM>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<CustomBuild Include="..\..\src\tbb\win32-tbb-export.def">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\src\tbb\win64-tbb-export.def">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">generating tbb.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)tbb.def;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\src\tbb\concurrent_hash_map.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\concurrent_queue.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\concurrent_vector.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\dynamic_link.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\itt_notify.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\cache_aligned_allocator.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\pipeline.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\queuing_mutex.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\queuing_rw_mutex.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\reader_writer_lock.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\spin_rw_mutex.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\x86_rtm_rw_mutex.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\spin_mutex.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\critical_section.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\mutex.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\recursive_mutex.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\condition_variable.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\tbb_thread.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\concurrent_monitor.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\semaphore.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\private_server.cpp" />
|
||||
<ClCompile Include="..\..\src\rml\client\rml_tbb.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\tbb_misc.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\tbb_misc_ex.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\task.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\task_group_context.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\governor.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\market.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\arena.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\scheduler.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\observer_proxy.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\tbb_statistics.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\tbb_main.cpp" />
|
||||
<ClCompile Include="..\..\src\old\concurrent_vector_v2.cpp" />
|
||||
<ClCompile Include="..\..\src\old\concurrent_queue_v2.cpp" />
|
||||
<ClCompile Include="..\..\src\old\spin_rw_mutex_v2.cpp" />
|
||||
<ClCompile Include="..\..\src\old\task_v2.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\include\tbb\internal\_concurrent_queue_impl.h" />
|
||||
<ClInclude Include="..\..\include\tbb\_tbb_windef.h" />
|
||||
<ClInclude Include="..\..\include\tbb\aligned_space.h" />
|
||||
<ClInclude Include="..\..\include\tbb\atomic.h" />
|
||||
<ClInclude Include="..\..\include\tbb\blocked_range.h" />
|
||||
<ClInclude Include="..\..\include\tbb\blocked_range2d.h" />
|
||||
<ClInclude Include="..\..\include\tbb\blocked_range3d.h" />
|
||||
<ClInclude Include="..\..\include\tbb\cache_aligned_allocator.h" />
|
||||
<ClInclude Include="..\..\include\tbb\combinable.h" />
|
||||
<ClInclude Include="..\..\include\tbb\concurrent_hash_map.h" />
|
||||
<ClInclude Include="..\..\src\tbb\concurrent_monitor.h" />
|
||||
<ClInclude Include="..\..\include\tbb\concurrent_priority_queue.h" />
|
||||
<ClInclude Include="..\..\include\tbb\concurrent_queue.h" />
|
||||
<ClInclude Include="..\..\src\old\concurrent_queue_v2.h" />
|
||||
<ClInclude Include="..\..\include\tbb\concurrent_vector.h" />
|
||||
<ClInclude Include="..\..\src\old\concurrent_vector_v2.h" />
|
||||
<ClInclude Include="..\..\include\tbb\critical_section.h" />
|
||||
<ClInclude Include="..\..\src\tbb\dynamic_link.h" />
|
||||
<ClInclude Include="..\..\include\tbb\enumerable_thread_specific.h" />
|
||||
<ClInclude Include="..\..\src\tbb\gate.h" />
|
||||
<ClInclude Include="..\..\src\test\harness.h" />
|
||||
<ClInclude Include="..\..\src\test\harness_allocator.h" />
|
||||
<ClInclude Include="..\..\src\test\harness_assert.h" />
|
||||
<ClInclude Include="..\..\src\test\harness_bad_expr.h" />
|
||||
<ClInclude Include="..\..\src\test\harness_barrier.h" />
|
||||
<ClInclude Include="..\..\src\test\harness_concurrency_tracker.h" />
|
||||
<ClInclude Include="..\..\src\test\harness_cpu.h" />
|
||||
<ClInclude Include="..\..\src\test\harness_eh.h" />
|
||||
<ClInclude Include="..\..\src\test\harness_iterator.h" />
|
||||
<ClInclude Include="..\..\src\test\harness_m128.h" />
|
||||
<ClInclude Include="..\..\src\test\harness_memory.h" />
|
||||
<ClInclude Include="..\..\src\test\harness_report.h" />
|
||||
<ClInclude Include="..\..\include\tbb\machine\ibm_aix51.h" />
|
||||
<ClInclude Include="..\..\src\tbb\itt_notify.h" />
|
||||
<ClInclude Include="..\..\include\tbb\machine\linux_common.h" />
|
||||
<ClInclude Include="..\..\include\tbb\machine\linux_ia32.h" />
|
||||
<ClInclude Include="..\..\include\tbb\machine\linux_ia64.h" />
|
||||
<ClInclude Include="..\..\include\tbb\machine\linux_intel64.h" />
|
||||
<ClInclude Include="..\..\include\tbb\machine\mac_ppc.h" />
|
||||
<ClInclude Include="..\..\include\tbb\mutex.h" />
|
||||
<ClInclude Include="..\..\include\tbb\null_mutex.h" />
|
||||
<ClInclude Include="..\..\include\tbb\null_rw_mutex.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_do.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_for.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_for_each.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_invoke.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_reduce.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_scan.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_sort.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_while.h" />
|
||||
<ClInclude Include="..\..\include\tbb\partitioner.h" />
|
||||
<ClInclude Include="..\..\include\tbb\pipeline.h" />
|
||||
<ClInclude Include="..\..\include\tbb\compat\ppl.h" />
|
||||
<ClInclude Include="..\..\include\tbb\queuing_mutex.h" />
|
||||
<ClInclude Include="..\..\include\tbb\queuing_rw_mutex.h" />
|
||||
<ClInclude Include="..\..\include\tbb\reader_writer_lock.h" />
|
||||
<ClInclude Include="..\..\include\tbb\recursive_mutex.h" />
|
||||
<ClInclude Include="..\..\include\tbb\scalable_allocator.h" />
|
||||
<ClInclude Include="..\..\src\tbb\semaphore.h" />
|
||||
<ClInclude Include="..\..\include\tbb\spin_mutex.h" />
|
||||
<ClInclude Include="..\..\include\tbb\spin_rw_mutex.h" />
|
||||
<ClInclude Include="..\..\src\old\spin_rw_mutex_v2.h" />
|
||||
<ClInclude Include="..\..\include\tbb\task.h" />
|
||||
<ClInclude Include="..\..\include\tbb\task_group.h" />
|
||||
<ClInclude Include="..\..\include\tbb\task_scheduler_init.h" />
|
||||
<ClInclude Include="..\..\include\tbb\task_scheduler_observer.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_allocator.h" />
|
||||
<ClInclude Include="..\..\src\tbb\tbb_assert_impl.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_config.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_exception.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_machine.h" />
|
||||
<ClInclude Include="..\..\src\tbb\tbb_misc.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_profiling.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_stddef.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_thread.h" />
|
||||
<ClInclude Include="..\..\src\tbb\tbb_version.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbbmalloc_proxy.h" />
|
||||
<ClInclude Include="..\..\src\test\test_allocator.h" />
|
||||
<ClInclude Include="..\..\src\test\test_allocator_STL.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tick_count.h" />
|
||||
<ClInclude Include="..\..\src\tbb\tls.h" />
|
||||
<ClInclude Include="..\..\include\tbb\machine\windows_ia32.h" />
|
||||
<ClInclude Include="..\..\include\tbb\machine\windows_intel64.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="..\..\src\tbb\tbb_resource.rc">
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
</ResourceCompile>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
<Import Project="$(VCTargetsPath)\BuildCustomizations\masm.targets" />
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
@@ -0,0 +1,558 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug-MT|Win32">
|
||||
<Configuration>Debug-MT</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug-MT|x64">
|
||||
<Configuration>Debug-MT</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release-MT|Win32">
|
||||
<Configuration>Release-MT</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release-MT|x64">
|
||||
<Configuration>Release-MT</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{B15F131E-328A-4D42-ADC2-9FF4CA6306D8}</ProjectGuid>
|
||||
<RootNamespace>tbbmalloc</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
<Import Project="$(VCTargetsPath)\BuildCustomizations\masm.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">false</LinkIncremental>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectName)_debug</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">$(ProjectName)_debug</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectName)_debug</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(ProjectName)_debug</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I.</AdditionalOptions>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>false</ExceptionHandling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbbmalloc.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc_debug.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Midl>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I.</AdditionalOptions>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ShowIncludes>false</ShowIncludes>
|
||||
<ExceptionHandling>false</ExceptionHandling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbbmalloc.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc_debug.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I.</AdditionalOptions>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>false</ExceptionHandling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbbmalloc.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Midl>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I.</AdditionalOptions>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>false</ExceptionHandling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbbmalloc.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I.</AdditionalOptions>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>false</ExceptionHandling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbbmalloc.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc_debug.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">
|
||||
<Midl>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I.</AdditionalOptions>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ShowIncludes>false</ShowIncludes>
|
||||
<ExceptionHandling>false</ExceptionHandling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbbmalloc.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc_debug.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I.</AdditionalOptions>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>false</ExceptionHandling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbbmalloc.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">
|
||||
<Midl>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<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=0x0502 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc /I.</AdditionalOptions>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ExceptionHandling>false</ExceptionHandling>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO /DEF:"$(IntDir)tbbmalloc.def" %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
<CustomBuild Include="..\..\src\tbb\intel64-masm\atomic_support.asm">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">building atomic_support.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DUSE_FRAME_POINTER /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">building atomic_support.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DUSE_FRAME_POINTER /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">building atomic_support.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">building atomic_support.obj</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">ml64 /Fo"$(IntDir)%(FileName).obj" /DEM64T=1 /c /Zi ../../src/tbb/intel64-masm/atomic_support.asm</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)%(FileName).obj;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<CustomBuild Include="..\..\src\tbbmalloc\win32-tbbmalloc-export.def">
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
<CustomBuild Include="..\..\src\tbbmalloc\win64-tbbmalloc-export.def">
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
<Message Condition="'$(Configuration)|$(Platform)'=='Release|x64'">generating tbbmalloc.def file</Message>
|
||||
<Command Condition="'$(Configuration)|$(Platform)'=='Release|x64'">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"
|
||||
</Command>
|
||||
<Outputs Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)tbbmalloc.def;%(Outputs)</Outputs>
|
||||
</CustomBuild>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClCompile Include="..\..\src\tbbmalloc\backend.cpp" />
|
||||
<ClCompile Include="..\..\src\tbbmalloc\large_objects.cpp" />
|
||||
<ClCompile Include="..\..\src\tbbmalloc\backref.cpp" />
|
||||
<ClCompile Include="..\..\src\tbbmalloc\tbbmalloc.cpp" />
|
||||
<ClCompile Include="..\..\src\tbb\itt_notify.cpp" />
|
||||
<ClCompile Include="..\..\src\tbbmalloc\frontend.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\include\tbb\internal\_concurrent_queue_impl.h" />
|
||||
<ClInclude Include="..\..\include\tbb\_tbb_windef.h" />
|
||||
<ClInclude Include="..\..\include\tbb\aligned_space.h" />
|
||||
<ClInclude Include="..\..\include\tbb\atomic.h" />
|
||||
<ClInclude Include="..\..\include\tbb\blocked_range.h" />
|
||||
<ClInclude Include="..\..\include\tbb\blocked_range2d.h" />
|
||||
<ClInclude Include="..\..\include\tbb\blocked_range3d.h" />
|
||||
<ClInclude Include="..\..\include\tbb\cache_aligned_allocator.h" />
|
||||
<ClInclude Include="..\..\include\tbb\combinable.h" />
|
||||
<ClInclude Include="..\..\include\tbb\concurrent_hash_map.h" />
|
||||
<ClInclude Include="..\..\include\tbb\concurrent_queue.h" />
|
||||
<ClInclude Include="..\..\include\tbb\concurrent_vector.h" />
|
||||
<ClInclude Include="..\..\include\tbb\critical_section.h" />
|
||||
<ClInclude Include="..\..\src\tbbmalloc\Customize.h" />
|
||||
<ClInclude Include="..\..\include\tbb\enumerable_thread_specific.h" />
|
||||
<ClInclude Include="..\..\src\tbbmalloc\LifoList.h" />
|
||||
<ClInclude Include="..\..\src\tbbmalloc\MapMemory.h" />
|
||||
<ClInclude Include="..\..\include\tbb\mutex.h" />
|
||||
<ClInclude Include="..\..\include\tbb\null_mutex.h" />
|
||||
<ClInclude Include="..\..\include\tbb\null_rw_mutex.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_do.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_for.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_for_each.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_invoke.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_reduce.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_scan.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_sort.h" />
|
||||
<ClInclude Include="..\..\include\tbb\parallel_while.h" />
|
||||
<ClInclude Include="..\..\include\tbb\partitioner.h" />
|
||||
<ClInclude Include="..\..\include\tbb\pipeline.h" />
|
||||
<ClInclude Include="..\..\src\tbbmalloc\proxy.h" />
|
||||
<ClInclude Include="..\..\include\tbb\queuing_mutex.h" />
|
||||
<ClInclude Include="..\..\include\tbb\queuing_rw_mutex.h" />
|
||||
<ClInclude Include="..\..\include\tbb\recursive_mutex.h" />
|
||||
<ClInclude Include="..\..\include\tbb\scalable_allocator.h" />
|
||||
<ClInclude Include="..\..\include\tbb\spin_mutex.h" />
|
||||
<ClInclude Include="..\..\include\tbb\spin_rw_mutex.h" />
|
||||
<ClInclude Include="..\..\src\tbbmalloc\Statistics.h" />
|
||||
<ClInclude Include="..\..\include\tbb\task.h" />
|
||||
<ClInclude Include="..\..\include\tbb\task_group.h" />
|
||||
<ClInclude Include="..\..\include\tbb\task_scheduler_init.h" />
|
||||
<ClInclude Include="..\..\include\tbb\task_scheduler_observer.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_allocator.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_config.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_exception.h" />
|
||||
<ClInclude Include="..\..\src\tbbmalloc\tbb_function_replacement.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_machine.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_profiling.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_stddef.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_thread.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbb_version.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbbmalloc_proxy.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tick_count.h" />
|
||||
<ClInclude Include="..\..\src\tbbmalloc\TypeDefinitions.h" />
|
||||
<ClInclude Include="..\..\include\tbb\machine\windows_ia32.h" />
|
||||
<ClInclude Include="..\..\include\tbb\machine\windows_intel64.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="..\..\src\tbbmalloc\tbbmalloc.rc">
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
</ResourceCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="tbb.vcxproj">
|
||||
<Project>{f62787dd-1327-448b-9818-030062bcfaa5}</Project>
|
||||
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
<Import Project="$(VCTargetsPath)\BuildCustomizations\masm.targets" />
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
@@ -0,0 +1,425 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
<ProjectConfiguration Include="Debug-MT|Win32">
|
||||
<Configuration>Debug-MT</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug-MT|x64">
|
||||
<Configuration>Debug-MT</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Debug|x64">
|
||||
<Configuration>Debug</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release-MT|Win32">
|
||||
<Configuration>Release-MT</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release-MT|x64">
|
||||
<Configuration>Release-MT</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>Win32</Platform>
|
||||
</ProjectConfiguration>
|
||||
<ProjectConfiguration Include="Release|x64">
|
||||
<Configuration>Release</Configuration>
|
||||
<Platform>x64</Platform>
|
||||
</ProjectConfiguration>
|
||||
</ItemGroup>
|
||||
<PropertyGroup Label="Globals">
|
||||
<ProjectGuid>{02F61511-D5B6-46E6-B4BB-DEAA96E6BCC7}</ProjectGuid>
|
||||
<RootNamespace>tbbmalloc_proxy</RootNamespace>
|
||||
<Keyword>Win32Proj</Keyword>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||
<ConfigurationType>DynamicLibrary</ConfigurationType>
|
||||
<CharacterSet>NotSet</CharacterSet>
|
||||
<PlatformToolset>v110</PlatformToolset>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
<Import Project="$(VCTargetsPath)\BuildCustomizations\masm.props" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="PropertySheets">
|
||||
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||
</ImportGroup>
|
||||
<PropertyGroup Label="UserMacros" />
|
||||
<PropertyGroup>
|
||||
<_ProjectFileVersion>10.0.40219.1</_ProjectFileVersion>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">false</LinkIncremental>
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">$(SolutionDir)$(Platform)\$(Configuration)\</OutDir>
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">$(SolutionDir)$(Platform)\$(ProjectName)\$(Configuration)\</IntDir>
|
||||
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">false</LinkIncremental>
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|x64'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" />
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectName)_debug</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">$(ProjectName)_debug</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectName)_debug</TargetName>
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">$(ProjectName)_debug</TargetName>
|
||||
</PropertyGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
<ClCompile>
|
||||
<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=0x0502 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc</AdditionalOptions>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc_proxy_debug.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||
<Midl>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<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=0x0502 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc</AdditionalOptions>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<ExceptionHandling>
|
||||
</ExceptionHandling>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ShowIncludes>false</ShowIncludes>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc_proxy_debug.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
<ClCompile>
|
||||
<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=0x0502 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc</AdditionalOptions>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ExceptionHandling>
|
||||
</ExceptionHandling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc_proxy.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||
<Midl>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<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=0x0502 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc</AdditionalOptions>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ExceptionHandling>
|
||||
</ExceptionHandling>
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc_proxy.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">
|
||||
<ClCompile>
|
||||
<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=0x0502 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc</AdditionalOptions>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<MinimalRebuild>true</MinimalRebuild>
|
||||
<ExceptionHandling>Sync</ExceptionHandling>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc_proxy_debug.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">
|
||||
<Midl>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<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=0x0502 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc</AdditionalOptions>
|
||||
<Optimization>Disabled</Optimization>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<MinimalRebuild>false</MinimalRebuild>
|
||||
<ExceptionHandling>
|
||||
</ExceptionHandling>
|
||||
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
<ShowIncludes>false</ShowIncludes>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc_proxy_debug.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">
|
||||
<ClCompile>
|
||||
<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=0x0502 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc</AdditionalOptions>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ExceptionHandling>
|
||||
</ExceptionHandling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc_proxy.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX86</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">
|
||||
<Midl>
|
||||
<TargetEnvironment>X64</TargetEnvironment>
|
||||
</Midl>
|
||||
<ClCompile>
|
||||
<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=0x0502 /W4 /D__TBBMALLOC_BUILD=1 /I../../src /I../../src/rml/include /I../../include /I../../src/tbbmalloc /I../../src/tbbmalloc</AdditionalOptions>
|
||||
<AdditionalIncludeDirectories>.;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
<PreprocessorDefinitions>%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
<ExceptionHandling>
|
||||
</ExceptionHandling>
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
<PrecompiledHeader>
|
||||
</PrecompiledHeader>
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
</ClCompile>
|
||||
<Link>
|
||||
<AdditionalOptions>/nologo /DLL /MAP /DEBUG /fixed:no /INCREMENTAL:NO %(AdditionalOptions)</AdditionalOptions>
|
||||
<OutputFile>$(OutDir)tbbmalloc_proxy.dll</OutputFile>
|
||||
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||
<SubSystem>Windows</SubSystem>
|
||||
<OptimizeReferences>true</OptimizeReferences>
|
||||
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||
<RandomizedBaseAddress>false</RandomizedBaseAddress>
|
||||
<DataExecutionPrevention>
|
||||
</DataExecutionPrevention>
|
||||
<TargetMachine>MachineX64</TargetMachine>
|
||||
</Link>
|
||||
</ItemDefinitionGroup>
|
||||
<ItemGroup>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ClInclude Include="..\..\src\tbbmalloc\tbb_function_replacement.h" />
|
||||
<ClInclude Include="..\..\include\tbb\tbbmalloc_proxy.h" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="..\..\src\tbbmalloc\tbbmalloc.rc">
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug-MT|Win32'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug-MT|x64'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release-MT|Win32'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release-MT|x64'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
<AdditionalOptions Condition="'$(Configuration)|$(Platform)'=='Release|x64'">/I../../src /I../../include /DDO_ITT_NOTIFY /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE /D_WIN32_WINNT=0x0400 %(AdditionalOptions)</AdditionalOptions>
|
||||
</ResourceCompile>
|
||||
<ClCompile Include="..\..\src\tbbmalloc\proxy.cpp" />
|
||||
<ClCompile Include="..\..\src\tbbmalloc\tbb_function_replacement.cpp" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="tbbmalloc.vcxproj">
|
||||
<Project>{b15f131e-328a-4d42-adc2-9ff4ca6306d8}</Project>
|
||||
<ReferenceOutputAssembly>false</ReferenceOutputAssembly>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||
<ImportGroup Label="ExtensionTargets">
|
||||
<Import Project="$(VCTargetsPath)\BuildCustomizations\masm.targets" />
|
||||
</ImportGroup>
|
||||
</Project>
|
||||
@@ -0,0 +1 @@
|
||||
#define __TBB_VERSION_STRINGS(N) "Empty"
|
||||
@@ -0,0 +1,147 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
ifneq (,$(stdver))
|
||||
CXX_STD_FLAGS = /std:$(stdver) /D_TBB_CPP0X
|
||||
endif
|
||||
|
||||
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
|
||||
|
||||
# Since VS2012, VC++ provides /volatile option to control semantics of volatile variables.
|
||||
# We want to use strict ISO semantics in the library and tests
|
||||
ifeq (ok,$(call detect_js,/minversion cl 17))
|
||||
CPLUS_FLAGS += /volatile:iso
|
||||
endif
|
||||
|
||||
# Since VS2013, VC++ uses the same .pdb file for different sources so we need
|
||||
# to add /FS (Force Synchronous PDB Writes)
|
||||
ifeq (ok,$(call detect_js,/minversion cl 18))
|
||||
CPLUS_FLAGS += /FS
|
||||
endif
|
||||
|
||||
CPLUS_FLAGS += /DUSE_WINTHREAD /D_CRT_SECURE_NO_DEPRECATE \
|
||||
/D_WIN32_WINNT=$(_WIN32_WINNT)
|
||||
C_FLAGS = $(subst $(EH_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 itsx.obj
|
||||
MALLOC_ASM.OBJ = atomic_support.obj
|
||||
else
|
||||
ifeq (armv7,$(arch))
|
||||
ASM=
|
||||
TBB_ASM.OBJ=
|
||||
else
|
||||
ASM=ml /nologo
|
||||
ASM_FLAGS += /c /coff /Zi /safeseh
|
||||
TBB_ASM.OBJ = atomic_support.obj lock_byte.obj itsx.obj
|
||||
endif
|
||||
endif
|
||||
#------------------------------------------------------------------------------
|
||||
# End of setting assembler data.
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Setting tbbmalloc data.
|
||||
#------------------------------------------------------------------------------
|
||||
M_CPLUS_FLAGS = $(CPLUS_FLAGS)
|
||||
#------------------------------------------------------------------------------
|
||||
# End of setting tbbmalloc data.
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# End of define compiler-specific variables.
|
||||
#------------------------------------------------------------------------------
|
||||
@@ -0,0 +1,134 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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 -Wno-non-virtual-dtor
|
||||
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.8 and later support RTM intrinsics, but require command line switch to enable them
|
||||
ifeq (ok,$(call detect_js,/minversion gcc 4.8))
|
||||
RTM_KEY = -mrtm
|
||||
endif
|
||||
|
||||
ifeq ($(cfg), release)
|
||||
CPLUS_FLAGS = -g -O2
|
||||
endif
|
||||
ifeq ($(cfg), debug)
|
||||
CPLUS_FLAGS = -g -O0 -DTBB_USE_DEBUG
|
||||
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 $(RTM_KEY)
|
||||
LIB_LINK_FLAGS += -m64
|
||||
endif
|
||||
|
||||
ifeq (ia32,$(arch))
|
||||
CPLUS_FLAGS += -m32 -march=i686 $(RTM_KEY)
|
||||
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,165 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the 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
|
||||
|
||||
ifneq (,$(stdver))
|
||||
CXX_STD_FLAGS = /Qstd=$(stdver) /D_TBB_CPP0X
|
||||
endif
|
||||
|
||||
# ICC 12.0 and higher provide Intel(R) Cilk(TM) Plus
|
||||
ifeq (ok,$(call 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 = $(subst $(EH_FLAGS),,$(CPLUS_FLAGS))
|
||||
|
||||
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),)
|
||||
VCCOMPAT_FLAG := $(if $(findstring vc12, $(VCVERSION)),/Qvc12)
|
||||
endif
|
||||
ifeq ($(VCCOMPAT_FLAG),)
|
||||
VCCOMPAT_FLAG := $(if $(findstring vc14, $(VCVERSION)),/Qvc14)
|
||||
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 itsx.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 itsx.obj
|
||||
endif
|
||||
#------------------------------------------------------------------------------
|
||||
# End of setting assembler data.
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Setting tbbmalloc data.
|
||||
#------------------------------------------------------------------------------
|
||||
M_CPLUS_FLAGS = $(CPLUS_FLAGS)
|
||||
#------------------------------------------------------------------------------
|
||||
# End of setting tbbmalloc data.
|
||||
#------------------------------------------------------------------------------
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# End of define compiler-specific variables.
|
||||
#------------------------------------------------------------------------------
|
||||
@@ -0,0 +1,111 @@
|
||||
# Copyright (c) 2005-2016 Intel Corporation
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#
|
||||
#
|
||||
#
|
||||
#
|
||||
|
||||
export SHELL = cmd
|
||||
|
||||
ifdef tbb_build_dir
|
||||
test_dir:=$(tbb_build_dir)
|
||||
else
|
||||
test_dir:=.
|
||||
endif
|
||||
|
||||
# A convenience wrapper for calls to detect.js.
|
||||
# $(1) is the full command line for the script, e.g. /minversion icl 12
|
||||
detect_js = $(shell cmd /C "cscript /nologo /E:jscript $(tbb_root)/build/detect.js $(1)")
|
||||
|
||||
# TODO give an error if archs doesn't match
|
||||
ifndef arch
|
||||
export arch:=$(call detect_js, /arch $(compiler))
|
||||
endif
|
||||
|
||||
ifndef runtime
|
||||
export runtime:=$(call 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 intel64,$(arch)),win64,win32)
|
||||
|
||||
# Target Windows version. Do not increase beyond 0x0502 without prior discussion!
|
||||
# Used as the value for macro definition option in windows.cl.inc etc.
|
||||
# For tests, we need at least Windows XP SP2 for sake of enabling stack backtraces.
|
||||
_WIN32_WINNT=0x0502
|
||||
|
||||
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.
|
||||
# Tests use this variable to detect dependency on TBB binary, so have to be non-empty.
|
||||
LINK_TBB.LIB = $(if $(crosstest),$(TBB.LIB),$(DEFINE_KEY)__TBB_IMPLICITLY_LINKED)
|
||||
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 \,/,"$(VERSION_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)
|
||||
|
||||
OPENCL.LIB = OpenCL.$(LIBEXT)
|
||||
@@ -0,0 +1,132 @@
|
||||
------------------------------------------------------------------------
|
||||
Intel(R) Threading Building Blocks - Release Notes
|
||||
Version 2017
|
||||
------------------------------------------------------------------------
|
||||
|
||||
|
||||
System Requirements
|
||||
-------------------
|
||||
|
||||
Intel(R) Threading Building Blocks (Intel(R) TBB) is available
|
||||
commercially (see http://software.intel.com/en-us/intel-tbb) as a
|
||||
binary distribution, and in open source, in both source and binary
|
||||
forms (see http://threadingbuildingblocks.org).
|
||||
|
||||
When built from source, Intel(R) TBB is intended to be highly portable
|
||||
and so supports a wide variety of operating systems and platforms (see
|
||||
http://threadingbuildingblocks.org for more details).
|
||||
|
||||
Binary distributions, including commercial distributions, are validated
|
||||
and officially supported for the hardware, software, operating systems
|
||||
and compilers listed here.
|
||||
|
||||
Hardware - Recommended
|
||||
|
||||
Microsoft* Windows* Systems
|
||||
Intel(R) Core(TM) processor family or higher
|
||||
Intel(R) Xeon(R) processor family or higher
|
||||
Intel(R) Xeon Phi(TM) processor family
|
||||
Linux* Systems
|
||||
Intel(R) Core(TM) processor family or higher
|
||||
Intel(R) Xeon(R) processor family or higher
|
||||
Intel(R) Xeon Phi(TM) processor family
|
||||
OS X* Systems
|
||||
Intel(R) Core(TM) processor family or higher
|
||||
Android* Systems
|
||||
Intel(R) Atom(TM) processor family
|
||||
|
||||
Hardware - Supported
|
||||
|
||||
Intel(R) Pentium(R) 4 processor family and higher
|
||||
Intel(R) Xeon Phi(TM) coprocessor
|
||||
Intel(R) Atom(TM) processor family
|
||||
Non Intel(R) processors compatible with the above processors
|
||||
|
||||
Software - Minimum Requirements
|
||||
|
||||
Supported operating system (see below)
|
||||
Supported compiler (see below)
|
||||
|
||||
Software - Recommended
|
||||
|
||||
Intel(R) Parallel Studio XE 2016 and higher
|
||||
Intel(R) System Studio 2016 and higher
|
||||
|
||||
Software - Supported Operating Systems
|
||||
|
||||
Systems with Microsoft* Windows* operating systems
|
||||
Microsoft* Windows* 10
|
||||
Microsoft* Windows* 8, 8.1
|
||||
Microsoft* Windows* 7 SP1
|
||||
Microsoft* Windows* Server 2012 R2
|
||||
Microsoft* Windows* Server 2012
|
||||
Microsoft* Windows* Server 2008 R2 SP1
|
||||
Microsoft* Windows* HPC Server 2008
|
||||
Windows Embedded 8.x, 10
|
||||
Systems with Linux* operating systems
|
||||
CentOS 6.5, 7.1
|
||||
Debian* 7, 8
|
||||
Fedora* 20, 21, 22, 23
|
||||
Intel(R) Cluster Ready
|
||||
Red Hat* Enterprise Linux* 6, 7
|
||||
SuSE* Linux* Enterprise Server 11, 12
|
||||
Ubuntu* 12.04 LTS, 13.10, 14.04 LTS, 15.04, 16.04 LTS
|
||||
WindRiver* Linux 7
|
||||
Yocto 1.7, 1.9 (2.0), 2.1
|
||||
Systems with OS X* operating systems
|
||||
OS X* 10.10 and higher
|
||||
Systems with Android* operating systems
|
||||
Android* 5.x, 6.x
|
||||
|
||||
Software - Supported Compilers
|
||||
|
||||
Intel(R) C++ Compiler 15.0 and higher
|
||||
Microsoft* Visual C++ 11.0 (Microsoft* Visual Studio* 2012,
|
||||
Windows* OS only) and higher
|
||||
Microsoft* Windows* Software Development Kit for Windows* 8
|
||||
and higher
|
||||
For each supported Linux* operating system, the standard gcc
|
||||
version provided with that operating system is supported,
|
||||
starting from
|
||||
GNU Compilers (gcc) 4.1 and higher
|
||||
GNU C Library (glibc) version 2.4 and higher
|
||||
Xcode* 6.3 and higher
|
||||
Android* NDK r10e and higher
|
||||
|
||||
Software - Supported Performance Analysis Tools
|
||||
|
||||
Intel(R) VTune(TM) Amplifier XE 2016 and higher.
|
||||
Intel(R) Inspector XE 2016 and higher.
|
||||
Intel(R) Advisor XE 2016 and higher.
|
||||
|
||||
Known Issues
|
||||
------------
|
||||
|
||||
Below is the list of known issues in this release of
|
||||
Intel(R) Threading Building Blocks (Intel(R) TBB).
|
||||
See the "Known Issues" appendix in the Intel(R) TBB Developer
|
||||
Reference for notes applicable to multiple releases of Intel(R) TBB.
|
||||
|
||||
Library Issues
|
||||
|
||||
- If you build Intel(R) TBB from sources with GCC 6, specify
|
||||
the -flifetime-dse=1 option to prevent crashes at runtime,
|
||||
or use Intel(R) TBB makefiles that automatically set this option.
|
||||
|
||||
- The current implementation of gfx_factory does not allow memory
|
||||
buffer objects to be used concurrently. As a result, several
|
||||
streaming nodes customized with gfx_factory cannot be connected
|
||||
with each other directly.
|
||||
|
||||
------------------------------------------------------------------------
|
||||
(C) 2016 Intel Corporation
|
||||
|
||||
Intel, the Intel logo, Intel Core, Xeon, Xeon Phi and Pentium are
|
||||
trademarks of Intel Corporation in the U.S. and/or other countries.
|
||||
|
||||
* Other names and brands may be claimed as the property of others.
|
||||
|
||||
Third Party and Open Source Licenses
|
||||
|
||||
Content of some examples or binaries may be covered by various open-source
|
||||
licenses. See the index.html file in each respective folder for details.
|
||||
@@ -0,0 +1,59 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>Requirements on range concept</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li class="current"><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="index.html">Main Page</a></li><li class="navelem"><a class="el" href="a00007.html">TBB concepts</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">Requirements on range concept </div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="textblock"><p>Class <code>R</code> implementing the concept of range must define:</p>
|
||||
<ul>
|
||||
<li><div class="fragment"><div class="line">R::R( <span class="keyword">const</span> R& ); </div>
|
||||
</div><!-- fragment --> Copy constructor</li>
|
||||
<li><div class="fragment"><div class="line">R::~R(); </div>
|
||||
</div><!-- fragment --> Destructor</li>
|
||||
<li><div class="fragment"><div class="line"><span class="keywordtype">bool</span> R::is_divisible() <span class="keyword">const</span>; </div>
|
||||
</div><!-- fragment --> True if range can be partitioned into two subranges</li>
|
||||
<li><div class="fragment"><div class="line"><span class="keywordtype">bool</span> R::empty() <span class="keyword">const</span>; </div>
|
||||
</div><!-- fragment --> True if range is empty</li>
|
||||
<li><div class="fragment"><div class="line">R::R( R& r, split ); </div>
|
||||
</div><!-- fragment --> Split range <code>r</code> into two subranges. </li>
|
||||
</ul>
|
||||
</div></div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
@@ -0,0 +1,55 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>Requirements on parallel_for body</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li class="current"><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="index.html">Main Page</a></li><li class="navelem"><a class="el" href="a00007.html">TBB concepts</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">Requirements on parallel_for body </div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="textblock"><p>Class <code>Body</code> implementing the concept of parallel_for body must define:</p>
|
||||
<ul>
|
||||
<li><div class="fragment"><div class="line">Body::Body( <span class="keyword">const</span> Body& ); </div>
|
||||
</div><!-- fragment --> Copy constructor</li>
|
||||
<li><div class="fragment"><div class="line">Body::~Body(); </div>
|
||||
</div><!-- fragment --> Destructor</li>
|
||||
<li><div class="fragment"><div class="line"><span class="keywordtype">void</span> Body::operator()( Range& r ) <span class="keyword">const</span>; </div>
|
||||
</div><!-- fragment --> Function call operator applying the body to range <code>r</code>. </li>
|
||||
</ul>
|
||||
</div></div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
@@ -0,0 +1,57 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>Requirements on parallel_reduce body</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li class="current"><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="index.html">Main Page</a></li><li class="navelem"><a class="el" href="a00007.html">TBB concepts</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">Requirements on parallel_reduce body </div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="textblock"><p>Class <code>Body</code> implementing the concept of parallel_reduce body must define:</p>
|
||||
<ul>
|
||||
<li><div class="fragment"><div class="line">Body::Body( Body&, split ); </div>
|
||||
</div><!-- fragment --> Splitting constructor. Must be able to run concurrently with operator() and method <code>join</code> </li>
|
||||
<li><div class="fragment"><div class="line">Body::~Body(); </div>
|
||||
</div><!-- fragment --> Destructor</li>
|
||||
<li><div class="fragment"><div class="line"><span class="keywordtype">void</span> Body::operator()( Range& r ); </div>
|
||||
</div><!-- fragment --> Function call operator applying body to range <code>r</code> and accumulating the result</li>
|
||||
<li><div class="fragment"><div class="line"><span class="keywordtype">void</span> Body::join( Body& b ); </div>
|
||||
</div><!-- fragment --> Join results. The result in <code>b</code> should be merged into the result of <code>this</code> </li>
|
||||
</ul>
|
||||
</div></div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
@@ -0,0 +1,43 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>Requirements on parallel_reduce anonymous function objects (lambda functions)</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li class="current"><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">Requirements on parallel_reduce anonymous function objects (lambda functions) </div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="textblock"><p>TO BE DOCUMENTED </p>
|
||||
</div></div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
@@ -0,0 +1,59 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>Requirements on parallel_scan body</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li class="current"><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="index.html">Main Page</a></li><li class="navelem"><a class="el" href="a00007.html">TBB concepts</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">Requirements on parallel_scan body </div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="textblock"><p>Class <code>Body</code> implementing the concept of parallel_scan body must define:</p>
|
||||
<ul>
|
||||
<li><div class="fragment"><div class="line">Body::Body( Body&, split ); </div>
|
||||
</div><!-- fragment --> Splitting constructor. Split <code>b</code> so that <code>this</code> and <code>b</code> can accumulate separately</li>
|
||||
<li><div class="fragment"><div class="line">Body::~Body(); </div>
|
||||
</div><!-- fragment --> Destructor</li>
|
||||
<li><div class="fragment"><div class="line"><span class="keywordtype">void</span> Body::operator()( <span class="keyword">const</span> Range& r, pre_scan_tag ); </div>
|
||||
</div><!-- fragment --> Preprocess iterations for range <code>r</code> </li>
|
||||
<li><div class="fragment"><div class="line"><span class="keywordtype">void</span> Body::operator()( <span class="keyword">const</span> Range& r, final_scan_tag ); </div>
|
||||
</div><!-- fragment --> Do final processing for iterations of range <code>r</code> </li>
|
||||
<li><div class="fragment"><div class="line"><span class="keywordtype">void</span> Body::reverse_join( Body& a ); </div>
|
||||
</div><!-- fragment --> Merge preprocessing state of <code>a</code> into <code>this</code>, where <code>a</code> was created earlier from <code>b</code> by b's splitting constructor </li>
|
||||
</ul>
|
||||
</div></div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
@@ -0,0 +1,53 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>Requirements on iterators for parallel_sort</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li class="current"><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="index.html">Main Page</a></li><li class="navelem"><a class="el" href="a00007.html">TBB concepts</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">Requirements on iterators for parallel_sort </div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="textblock"><p>Requirements on the iterator type <code>It</code> and its value type <code>T</code> for <code>parallel_sort:</code> </p>
|
||||
<ul>
|
||||
<li><div class="fragment"><div class="line"><span class="keywordtype">void</span> iter_swap( It a, It b ) </div>
|
||||
</div><!-- fragment --> Swaps the values of the elements the given iterators <code>a</code> and <code>b</code> are pointing to. <code>It</code> should be a random access iterator.</li>
|
||||
<li><div class="fragment"><div class="line"><span class="keywordtype">bool</span> Compare::operator()( <span class="keyword">const</span> T& x, <span class="keyword">const</span> T& y ) </div>
|
||||
</div><!-- fragment --> True if x comes before y; </li>
|
||||
</ul>
|
||||
</div></div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
@@ -0,0 +1,57 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>TBB concepts</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li class="current"><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="index.html">Main Page</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">TBB concepts </div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="textblock"><p>A concept is a set of requirements to a type, which are necessary and sufficient for the type to model a particular behavior or a set of behaviors. Some concepts are specific to a particular algorithm (e.g. algorithm body), while other ones are common to several algorithms (e.g. range concept).</p>
|
||||
<p>All TBB algorithms make use of different classes implementing various concepts. Implementation classes are supplied by the user as type arguments of template parameters and/or as objects passed as function call arguments. The library provides predefined implementations of some concepts (e.g. several kinds of <a class="el" href="a00001.html">ranges</a>), while other ones must always be implemented by the user.</p>
|
||||
<p>TBB defines a set of minimal requirements each concept must conform to. Here is the list of different concepts hyperlinked to the corresponding requirements specifications:</p>
|
||||
<ul>
|
||||
<li><a class="el" href="a00001.html">Requirements on range concept</a></li>
|
||||
<li>parallel_do_body_req</li>
|
||||
<li><a class="el" href="a00002.html">Requirements on parallel_for body</a></li>
|
||||
<li><a class="el" href="a00003.html">Requirements on parallel_reduce body</a></li>
|
||||
<li><a class="el" href="a00005.html">Requirements on parallel_scan body</a></li>
|
||||
<li><a class="el" href="a00006.html">Requirements on iterators for parallel_sort</a> </li>
|
||||
</ul>
|
||||
</div></div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
@@ -0,0 +1,54 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>__TBB_malloc_proxy_caller Struct Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="navrow2" class="tabs2">
|
||||
<ul class="tablist">
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="a00260.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">__TBB_malloc_proxy_caller Struct Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<hr/>The documentation for this struct was generated from the following file:<ul>
|
||||
<li>tbbmalloc_proxy.h</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
@@ -0,0 +1,144 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>tbb::interface5::concurrent_hash_map< Key, T, HashCompare, A >::accessor Class Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="navrow2" class="tabs2">
|
||||
<ul class="tablist">
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="a00234.html">tbb</a></li><li class="navelem"><b>interface5</b></li><li class="navelem"><a class="el" href="a00036.html">concurrent_hash_map</a></li><li class="navelem"><a class="el" href="a00009.html">accessor</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-types">Public Types</a> |
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="a00357.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">tbb::interface5::concurrent_hash_map< Key, T, HashCompare, A >::accessor Class Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Allows write access to elements and combines data access, locking, and garbage collection.
|
||||
<a href="a00009.html#details">More...</a></p>
|
||||
|
||||
<p><code>#include <concurrent_hash_map.h></code></p>
|
||||
<div class="dynheader">
|
||||
Inheritance diagram for tbb::interface5::concurrent_hash_map< Key, T, HashCompare, A >::accessor:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center">
|
||||
<img src="a00009.png" usemap="#tbb::interface5::concurrent_hash_map< Key, T, HashCompare, A >::accessor_map" alt=""/>
|
||||
<map id="tbb::interface5::concurrent_hash_map< Key, T, HashCompare, A >::accessor_map" name="tbb::interface5::concurrent_hash_map< Key, T, HashCompare, A >::accessor_map">
|
||||
<area href="a00047.html" title="Combines data access, locking, and garbage collection. " alt="tbb::interface5::concurrent_hash_map< Key, T, HashCompare, A >::const_accessor" shape="rect" coords="0,56,488,80"/>
|
||||
</map>
|
||||
</div></div>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
|
||||
Public Types</h2></td></tr>
|
||||
<tr class="memitem:a850178bbdcdbc4cf5955cab37eb8c42c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a850178bbdcdbc4cf5955cab37eb8c42c"></a>
|
||||
typedef <br class="typebreak"/>
|
||||
concurrent_hash_map::value_type </td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a850178bbdcdbc4cf5955cab37eb8c42c">value_type</a></td></tr>
|
||||
<tr class="memdesc:a850178bbdcdbc4cf5955cab37eb8c42c"><td class="mdescLeft"> </td><td class="mdescRight">Type of value. <br/></td></tr>
|
||||
<tr class="separator:a850178bbdcdbc4cf5955cab37eb8c42c"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="inherit_header pub_types_a00047"><td colspan="2" onclick="javascript:toggleInherit('pub_types_a00047')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="a00047.html">tbb::interface5::concurrent_hash_map< Key, T, HashCompare, A >::const_accessor</a></td></tr>
|
||||
<tr class="memitem:aa8ca5aef4ee14b7eddb64767b8cd5fda inherit pub_types_a00047"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa8ca5aef4ee14b7eddb64767b8cd5fda"></a>
|
||||
typedef const <br class="typebreak"/>
|
||||
concurrent_hash_map::value_type </td><td class="memItemRight" valign="bottom"><a class="el" href="a00047.html#aa8ca5aef4ee14b7eddb64767b8cd5fda">value_type</a></td></tr>
|
||||
<tr class="memdesc:aa8ca5aef4ee14b7eddb64767b8cd5fda inherit pub_types_a00047"><td class="mdescLeft"> </td><td class="mdescRight">Type of value. <br/></td></tr>
|
||||
<tr class="separator:aa8ca5aef4ee14b7eddb64767b8cd5fda inherit pub_types_a00047"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
||||
Public Member Functions</h2></td></tr>
|
||||
<tr class="memitem:a4e03905a33fbdafdb99113cc68d2bd4b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e03905a33fbdafdb99113cc68d2bd4b"></a>
|
||||
reference </td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#a4e03905a33fbdafdb99113cc68d2bd4b">operator*</a> () const </td></tr>
|
||||
<tr class="memdesc:a4e03905a33fbdafdb99113cc68d2bd4b"><td class="mdescLeft"> </td><td class="mdescRight">Return reference to associated value in hash table. <br/></td></tr>
|
||||
<tr class="separator:a4e03905a33fbdafdb99113cc68d2bd4b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ab04f73bd4a4ca7df0dc91a7b4d66f987"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab04f73bd4a4ca7df0dc91a7b4d66f987"></a>
|
||||
pointer </td><td class="memItemRight" valign="bottom"><a class="el" href="a00009.html#ab04f73bd4a4ca7df0dc91a7b4d66f987">operator-></a> () const </td></tr>
|
||||
<tr class="memdesc:ab04f73bd4a4ca7df0dc91a7b4d66f987"><td class="mdescLeft"> </td><td class="mdescRight">Return pointer to associated value in hash table. <br/></td></tr>
|
||||
<tr class="separator:ab04f73bd4a4ca7df0dc91a7b4d66f987"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="inherit_header pub_methods_a00047"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_a00047')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="a00047.html">tbb::interface5::concurrent_hash_map< Key, T, HashCompare, A >::const_accessor</a></td></tr>
|
||||
<tr class="memitem:a6299b523d2ae8e2613f1bc160ca99b85 inherit pub_methods_a00047"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6299b523d2ae8e2613f1bc160ca99b85"></a>
|
||||
bool </td><td class="memItemRight" valign="bottom"><a class="el" href="a00047.html#a6299b523d2ae8e2613f1bc160ca99b85">empty</a> () const </td></tr>
|
||||
<tr class="memdesc:a6299b523d2ae8e2613f1bc160ca99b85 inherit pub_methods_a00047"><td class="mdescLeft"> </td><td class="mdescRight">True if result is empty. <br/></td></tr>
|
||||
<tr class="separator:a6299b523d2ae8e2613f1bc160ca99b85 inherit pub_methods_a00047"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a18390cb369369d72bdf7c867755b5190 inherit pub_methods_a00047"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a18390cb369369d72bdf7c867755b5190"></a>
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00047.html#a18390cb369369d72bdf7c867755b5190">release</a> ()</td></tr>
|
||||
<tr class="memdesc:a18390cb369369d72bdf7c867755b5190 inherit pub_methods_a00047"><td class="mdescLeft"> </td><td class="mdescRight">Set to null. <br/></td></tr>
|
||||
<tr class="separator:a18390cb369369d72bdf7c867755b5190 inherit pub_methods_a00047"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a8adf04e33e7c8c876ba849f26807713a inherit pub_methods_a00047"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8adf04e33e7c8c876ba849f26807713a"></a>
|
||||
const_reference </td><td class="memItemRight" valign="bottom"><a class="el" href="a00047.html#a8adf04e33e7c8c876ba849f26807713a">operator*</a> () const </td></tr>
|
||||
<tr class="memdesc:a8adf04e33e7c8c876ba849f26807713a inherit pub_methods_a00047"><td class="mdescLeft"> </td><td class="mdescRight">Return reference to associated value in hash table. <br/></td></tr>
|
||||
<tr class="separator:a8adf04e33e7c8c876ba849f26807713a inherit pub_methods_a00047"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a28fa9b9e6c35d7e80217e69a7afe1ee5 inherit pub_methods_a00047"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a28fa9b9e6c35d7e80217e69a7afe1ee5"></a>
|
||||
const_pointer </td><td class="memItemRight" valign="bottom"><a class="el" href="a00047.html#a28fa9b9e6c35d7e80217e69a7afe1ee5">operator-></a> () const </td></tr>
|
||||
<tr class="memdesc:a28fa9b9e6c35d7e80217e69a7afe1ee5 inherit pub_methods_a00047"><td class="mdescLeft"> </td><td class="mdescRight">Return pointer to associated value in hash table. <br/></td></tr>
|
||||
<tr class="separator:a28fa9b9e6c35d7e80217e69a7afe1ee5 inherit pub_methods_a00047"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a7b26d22d228cf0d8678c9b346c63752c inherit pub_methods_a00047"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7b26d22d228cf0d8678c9b346c63752c"></a>
|
||||
 </td><td class="memItemRight" valign="bottom"><a class="el" href="a00047.html#a7b26d22d228cf0d8678c9b346c63752c">const_accessor</a> ()</td></tr>
|
||||
<tr class="memdesc:a7b26d22d228cf0d8678c9b346c63752c inherit pub_methods_a00047"><td class="mdescLeft"> </td><td class="mdescRight">Create empty result. <br/></td></tr>
|
||||
<tr class="separator:a7b26d22d228cf0d8678c9b346c63752c inherit pub_methods_a00047"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:afbc0c85a146c912b9a0f94a7695957c7 inherit pub_methods_a00047"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afbc0c85a146c912b9a0f94a7695957c7"></a>
|
||||
 </td><td class="memItemRight" valign="bottom"><a class="el" href="a00047.html#afbc0c85a146c912b9a0f94a7695957c7">~const_accessor</a> ()</td></tr>
|
||||
<tr class="memdesc:afbc0c85a146c912b9a0f94a7695957c7 inherit pub_methods_a00047"><td class="mdescLeft"> </td><td class="mdescRight">Destroy result after releasing the underlying reference. <br/></td></tr>
|
||||
<tr class="separator:afbc0c85a146c912b9a0f94a7695957c7 inherit pub_methods_a00047"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
|
||||
Additional Inherited Members</h2></td></tr>
|
||||
<tr class="inherit_header pro_methods_a00047"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_a00047')"><img src="closed.png" alt="-"/> Protected Member Functions inherited from <a class="el" href="a00047.html">tbb::interface5::concurrent_hash_map< Key, T, HashCompare, A >::const_accessor</a></td></tr>
|
||||
<tr class="memitem:a05b74d408d8cd7773f7b5edfef97da1b inherit pro_methods_a00047"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a05b74d408d8cd7773f7b5edfef97da1b"></a>
|
||||
bool </td><td class="memItemRight" valign="bottom"><b>is_writer</b> ()</td></tr>
|
||||
<tr class="separator:a05b74d408d8cd7773f7b5edfef97da1b inherit pro_methods_a00047"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="inherit_header pro_attribs_a00047"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_a00047')"><img src="closed.png" alt="-"/> Protected Attributes inherited from <a class="el" href="a00047.html">tbb::interface5::concurrent_hash_map< Key, T, HashCompare, A >::const_accessor</a></td></tr>
|
||||
<tr class="memitem:ac9b96f45483ddbff95a95e8e666a8f28 inherit pro_attribs_a00047"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac9b96f45483ddbff95a95e8e666a8f28"></a>
|
||||
<a class="el" href="a00083.html">node</a> * </td><td class="memItemRight" valign="bottom"><b>my_node</b></td></tr>
|
||||
<tr class="separator:ac9b96f45483ddbff95a95e8e666a8f28 inherit pro_attribs_a00047"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a5034084f595666b47734f99a6eaefa9f inherit pro_attribs_a00047"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5034084f595666b47734f99a6eaefa9f"></a>
|
||||
hashcode_t </td><td class="memItemRight" valign="bottom"><b>my_hash</b></td></tr>
|
||||
<tr class="separator:a5034084f595666b47734f99a6eaefa9f inherit pro_attribs_a00047"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><h3>template<typename Key, typename T, typename HashCompare = tbb_hash_compare<Key>, typename A = tbb_allocator<std::pair<Key, T> >><br/>
|
||||
class tbb::interface5::concurrent_hash_map< Key, T, HashCompare, A >::accessor</h3>
|
||||
|
||||
<p>Allows write access to elements and combines data access, locking, and garbage collection. </p>
|
||||
</div><hr/>The documentation for this class was generated from the following file:<ul>
|
||||
<li>concurrent_hash_map.h</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
|
After Width: | Height: | Size: 1.8 KiB |
@@ -0,0 +1,66 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>tbb::interface5::concurrent_hash_map< Key, T, HashCompare, A >::accessor_not_used Struct Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="navrow2" class="tabs2">
|
||||
<ul class="tablist">
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="a00234.html">tbb</a></li><li class="navelem"><b>interface5</b></li><li class="navelem"><a class="el" href="a00036.html">concurrent_hash_map</a></li><li class="navelem"><a class="el" href="a00010.html">accessor_not_used</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="a00358.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">tbb::interface5::concurrent_hash_map< Key, T, HashCompare, A >::accessor_not_used Struct Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
||||
Public Member Functions</h2></td></tr>
|
||||
<tr class="memitem:a28b496c90f07e4557a6dfa5a8dd3f4e1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a28b496c90f07e4557a6dfa5a8dd3f4e1"></a>
|
||||
void </td><td class="memItemRight" valign="bottom"><b>release</b> ()</td></tr>
|
||||
<tr class="separator:a28b496c90f07e4557a6dfa5a8dd3f4e1"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<hr/>The documentation for this struct was generated from the following file:<ul>
|
||||
<li>concurrent_hash_map.h</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
@@ -0,0 +1,125 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>tbb::interface6::aggregator Class Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="navrow2" class="tabs2">
|
||||
<ul class="tablist">
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="a00234.html">tbb</a></li><li class="navelem"><b>interface6</b></li><li class="navelem"><a class="el" href="a00011.html">aggregator</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="a00378.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">tbb::interface6::aggregator Class Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Basic aggregator interface.
|
||||
<a href="a00011.html#details">More...</a></p>
|
||||
|
||||
<p><code>#include <aggregator.h></code></p>
|
||||
<div class="dynheader">
|
||||
Inheritance diagram for tbb::interface6::aggregator:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center">
|
||||
<img src="a00011.png" usemap="#tbb::interface6::aggregator_map" alt=""/>
|
||||
<map id="tbb::interface6::aggregator_map" name="tbb::interface6::aggregator_map">
|
||||
<area href="a00012.html" alt="tbb::interface6::aggregator_ext< internal::basic_handler >" shape="rect" coords="0,0,335,24"/>
|
||||
</map>
|
||||
</div></div>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
||||
Public Member Functions</h2></td></tr>
|
||||
<tr class="memitem:aa7cc924b6f0d17578d61fd9002f59f84"><td class="memTemplParams" colspan="2">template<typename Body > </td></tr>
|
||||
<tr class="memitem:aa7cc924b6f0d17578d61fd9002f59f84"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00011.html#aa7cc924b6f0d17578d61fd9002f59f84">execute</a> (const Body &b)</td></tr>
|
||||
<tr class="memdesc:aa7cc924b6f0d17578d61fd9002f59f84"><td class="mdescLeft"> </td><td class="mdescRight">BASIC INTERFACE: Enter a function for exclusive execution by the aggregator. <a href="#aa7cc924b6f0d17578d61fd9002f59f84">More...</a><br/></td></tr>
|
||||
<tr class="separator:aa7cc924b6f0d17578d61fd9002f59f84"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
|
||||
Additional Inherited Members</h2></td></tr>
|
||||
<tr class="inherit_header pub_methods_a00012"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_a00012')"><img src="closed.png" alt="-"/> Private Member Functions inherited from <a class="el" href="a00012.html">tbb::interface6::aggregator_ext< internal::basic_handler ></a></td></tr>
|
||||
<tr class="memitem:a8ae120a21264cc1ea0a9cfafaa0634e4 inherit pub_methods_a00012"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8ae120a21264cc1ea0a9cfafaa0634e4"></a>
|
||||
 </td><td class="memItemRight" valign="bottom"><b>aggregator_ext</b> (const <a class="el" href="a00019.html">internal::basic_handler</a> &h)</td></tr>
|
||||
<tr class="separator:a8ae120a21264cc1ea0a9cfafaa0634e4 inherit pub_methods_a00012"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ae55b16ec6af204aa00d6a716fccec9f7 inherit pub_methods_a00012"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00012.html#ae55b16ec6af204aa00d6a716fccec9f7">process</a> (<a class="el" href="a00013.html">aggregator_operation</a> *op)</td></tr>
|
||||
<tr class="memdesc:ae55b16ec6af204aa00d6a716fccec9f7 inherit pub_methods_a00012"><td class="mdescLeft"> </td><td class="mdescRight">EXPERT INTERFACE: Enter a user-made operation into the aggregator's mailbox. <a href="#ae55b16ec6af204aa00d6a716fccec9f7">More...</a><br/></td></tr>
|
||||
<tr class="separator:ae55b16ec6af204aa00d6a716fccec9f7 inherit pub_methods_a00012"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ad376e5c31d10e885f33964592aa629d4 inherit pro_methods_a00012"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00012.html#ad376e5c31d10e885f33964592aa629d4">execute_impl</a> (<a class="el" href="a00013.html">aggregator_operation</a> &op)</td></tr>
|
||||
<tr class="separator:ad376e5c31d10e885f33964592aa629d4 inherit pro_methods_a00012"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Basic aggregator interface. </p>
|
||||
</div><h2 class="groupheader">Member Function Documentation</h2>
|
||||
<a class="anchor" id="aa7cc924b6f0d17578d61fd9002f59f84"></a>
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<div class="memtemplate">
|
||||
template<typename Body > </div>
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void tbb::interface6::aggregator::execute </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype">const Body & </td>
|
||||
<td class="paramname"><em>b</em>)</td><td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>BASIC INTERFACE: Enter a function for exclusive execution by the aggregator. </p>
|
||||
<p>The calling thread stores the function object in a basic_operation and places the operation in the aggregator's mailbox </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<hr/>The documentation for this class was generated from the following file:<ul>
|
||||
<li>aggregator.h</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
|
After Width: | Height: | Size: 1.0 KiB |
@@ -0,0 +1,151 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>tbb::interface6::aggregator_ext< handler_type > Class Template Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="navrow2" class="tabs2">
|
||||
<ul class="tablist">
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="a00234.html">tbb</a></li><li class="navelem"><b>interface6</b></li><li class="navelem"><a class="el" href="a00012.html">aggregator_ext</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="#pro-methods">Protected Member Functions</a> |
|
||||
<a href="a00377.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">tbb::interface6::aggregator_ext< handler_type > Class Template Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Aggregator base class and expert interface.
|
||||
<a href="a00012.html#details">More...</a></p>
|
||||
|
||||
<p><code>#include <aggregator.h></code></p>
|
||||
<div class="dynheader">
|
||||
Inheritance diagram for tbb::interface6::aggregator_ext< handler_type >:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center">
|
||||
<img src="a00012.png" usemap="#tbb::interface6::aggregator_ext< handler_type >_map" alt=""/>
|
||||
<map id="tbb::interface6::aggregator_ext< handler_type >_map" name="tbb::interface6::aggregator_ext< handler_type >_map">
|
||||
</map>
|
||||
</div></div>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
||||
Public Member Functions</h2></td></tr>
|
||||
<tr class="memitem:a8ae120a21264cc1ea0a9cfafaa0634e4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8ae120a21264cc1ea0a9cfafaa0634e4"></a>
|
||||
 </td><td class="memItemRight" valign="bottom"><b>aggregator_ext</b> (const handler_type &h)</td></tr>
|
||||
<tr class="separator:a8ae120a21264cc1ea0a9cfafaa0634e4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ae55b16ec6af204aa00d6a716fccec9f7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00012.html#ae55b16ec6af204aa00d6a716fccec9f7">process</a> (<a class="el" href="a00013.html">aggregator_operation</a> *op)</td></tr>
|
||||
<tr class="memdesc:ae55b16ec6af204aa00d6a716fccec9f7"><td class="mdescLeft"> </td><td class="mdescRight">EXPERT INTERFACE: Enter a user-made operation into the aggregator's mailbox. <a href="#ae55b16ec6af204aa00d6a716fccec9f7">More...</a><br/></td></tr>
|
||||
<tr class="separator:ae55b16ec6af204aa00d6a716fccec9f7"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
|
||||
Protected Member Functions</h2></td></tr>
|
||||
<tr class="memitem:ad376e5c31d10e885f33964592aa629d4"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00012.html#ad376e5c31d10e885f33964592aa629d4">execute_impl</a> (<a class="el" href="a00013.html">aggregator_operation</a> &op)</td></tr>
|
||||
<tr class="separator:ad376e5c31d10e885f33964592aa629d4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><h3>template<typename handler_type><br/>
|
||||
class tbb::interface6::aggregator_ext< handler_type ></h3>
|
||||
|
||||
<p>Aggregator base class and expert interface. </p>
|
||||
<p>An aggregator for collecting operations coming from multiple sources and executing them serially on a single thread. </p>
|
||||
</div><h2 class="groupheader">Member Function Documentation</h2>
|
||||
<a class="anchor" id="ad376e5c31d10e885f33964592aa629d4"></a>
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<div class="memtemplate">
|
||||
template<typename handler_type> </div>
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void <a class="el" href="a00012.html">tbb::interface6::aggregator_ext</a>< handler_type >::execute_impl </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype"><a class="el" href="a00013.html">aggregator_operation</a> & </td>
|
||||
<td class="paramname"><em>op</em>)</td><td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
<p>Place operation in mailbox, then either handle mailbox or wait for the operation to be completed by a different thread. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<a class="anchor" id="ae55b16ec6af204aa00d6a716fccec9f7"></a>
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<div class="memtemplate">
|
||||
template<typename handler_type> </div>
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void <a class="el" href="a00012.html">tbb::interface6::aggregator_ext</a>< handler_type >::process </td>
|
||||
<td>(</td>
|
||||
<td class="paramtype"><a class="el" href="a00013.html">aggregator_operation</a> * </td>
|
||||
<td class="paramname"><em>op</em>)</td><td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>EXPERT INTERFACE: Enter a user-made operation into the aggregator's mailbox. </p>
|
||||
<p>Details of user-made operations must be handled by user-provided handler </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<hr/>The documentation for this class was generated from the following file:<ul>
|
||||
<li>aggregator.h</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
|
After Width: | Height: | Size: 843 B |
@@ -0,0 +1,129 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>tbb::interface6::aggregator_operation Class Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="navrow2" class="tabs2">
|
||||
<ul class="tablist">
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="a00234.html">tbb</a></li><li class="navelem"><b>interface6</b></li><li class="navelem"><a class="el" href="a00013.html">aggregator_operation</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-types">Public Types</a> |
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="#friends">Friends</a> |
|
||||
<a href="a00376.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">tbb::interface6::aggregator_operation Class Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="dynheader">
|
||||
Inheritance diagram for tbb::interface6::aggregator_operation:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center">
|
||||
<img src="a00013.png" usemap="#tbb::interface6::aggregator_operation_map" alt=""/>
|
||||
<map id="tbb::interface6::aggregator_operation_map" name="tbb::interface6::aggregator_operation_map">
|
||||
<area href="a00021.html" alt="tbb::interface6::internal::basic_operation_base" shape="rect" coords="0,56,289,80"/>
|
||||
<area href="a00020.html" alt="tbb::interface6::internal::basic_operation< Body >" shape="rect" coords="0,112,289,136"/>
|
||||
</map>
|
||||
</div></div>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
|
||||
Public Types</h2></td></tr>
|
||||
<tr class="memitem:a855dc55cb1823ed4845f4ed6b0a87700"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><b>aggregator_operation_status</b> { <b>agg_waiting</b> =0,
|
||||
<b>agg_finished</b>
|
||||
}</td></tr>
|
||||
<tr class="separator:a855dc55cb1823ed4845f4ed6b0a87700"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
||||
Public Member Functions</h2></td></tr>
|
||||
<tr class="memitem:adc0e032aa604f1da85ffc7ec269b157f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adc0e032aa604f1da85ffc7ec269b157f"></a>
|
||||
void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00013.html#adc0e032aa604f1da85ffc7ec269b157f">start</a> ()</td></tr>
|
||||
<tr class="memdesc:adc0e032aa604f1da85ffc7ec269b157f"><td class="mdescLeft"> </td><td class="mdescRight">Call start before handling this operation. <br/></td></tr>
|
||||
<tr class="separator:adc0e032aa604f1da85ffc7ec269b157f"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ac7edadfe74f475783f3b429904e7010a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00013.html#ac7edadfe74f475783f3b429904e7010a">finish</a> ()</td></tr>
|
||||
<tr class="memdesc:ac7edadfe74f475783f3b429904e7010a"><td class="mdescLeft"> </td><td class="mdescRight">Call finish when done handling this operation. <a href="#ac7edadfe74f475783f3b429904e7010a">More...</a><br/></td></tr>
|
||||
<tr class="separator:ac7edadfe74f475783f3b429904e7010a"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:acbce3d13545770501b54df153bf1e690"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acbce3d13545770501b54df153bf1e690"></a>
|
||||
<a class="el" href="a00013.html">aggregator_operation</a> * </td><td class="memItemRight" valign="bottom"><b>next</b> ()</td></tr>
|
||||
<tr class="separator:acbce3d13545770501b54df153bf1e690"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a03cf9fad0ca21da61b83325a50e17d0b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a03cf9fad0ca21da61b83325a50e17d0b"></a>
|
||||
void </td><td class="memItemRight" valign="bottom"><b>set_next</b> (<a class="el" href="a00013.html">aggregator_operation</a> *n)</td></tr>
|
||||
<tr class="separator:a03cf9fad0ca21da61b83325a50e17d0b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
|
||||
Friends</h2></td></tr>
|
||||
<tr class="memitem:a7f6e7d315f893b1b66d06ffdad12038e"><td class="memTemplParams" colspan="2"><a class="anchor" id="a7f6e7d315f893b1b66d06ffdad12038e"></a>
|
||||
template<typename handler_type > </td></tr>
|
||||
<tr class="memitem:a7f6e7d315f893b1b66d06ffdad12038e"><td class="memTemplItemLeft" align="right" valign="top">class </td><td class="memTemplItemRight" valign="bottom"><b>aggregator_ext</b></td></tr>
|
||||
<tr class="separator:a7f6e7d315f893b1b66d06ffdad12038e"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<h2 class="groupheader">Member Function Documentation</h2>
|
||||
<a class="anchor" id="ac7edadfe74f475783f3b429904e7010a"></a>
|
||||
<div class="memitem">
|
||||
<div class="memproto">
|
||||
<table class="mlabels">
|
||||
<tr>
|
||||
<td class="mlabels-left">
|
||||
<table class="memname">
|
||||
<tr>
|
||||
<td class="memname">void tbb::interface6::aggregator_operation::finish </td>
|
||||
<td>(</td>
|
||||
<td class="paramname">)</td><td></td>
|
||||
<td></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td class="mlabels-right">
|
||||
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
|
||||
</tr>
|
||||
</table>
|
||||
</div><div class="memdoc">
|
||||
|
||||
<p>Call finish when done handling this operation. </p>
|
||||
<p>The operation will be released to its originating thread, and possibly deleted. </p>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<hr/>The documentation for this class was generated from the following file:<ul>
|
||||
<li>aggregator.h</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
|
After Width: | Height: | Size: 1.5 KiB |
@@ -0,0 +1,82 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>tbb::aligned_space< T, N > Class Template Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="navrow2" class="tabs2">
|
||||
<ul class="tablist">
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="a00234.html">tbb</a></li><li class="navelem"><a class="el" href="a00014.html">aligned_space</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="a00262.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">tbb::aligned_space< T, N > Class Template Reference<div class="ingroups"><a class="el" href="a00255.html">Memory Allocation</a></div></div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Block of space aligned sufficiently to construct an array T with N elements.
|
||||
<a href="a00014.html#details">More...</a></p>
|
||||
|
||||
<p><code>#include <aligned_space.h></code></p>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
||||
Public Member Functions</h2></td></tr>
|
||||
<tr class="memitem:a3525dbbac0d4eaedfe18bc57b7760857"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3525dbbac0d4eaedfe18bc57b7760857"></a>
|
||||
T * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#a3525dbbac0d4eaedfe18bc57b7760857">begin</a> ()</td></tr>
|
||||
<tr class="memdesc:a3525dbbac0d4eaedfe18bc57b7760857"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to beginning of array. <br/></td></tr>
|
||||
<tr class="separator:a3525dbbac0d4eaedfe18bc57b7760857"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:ae95620e1159984a2670bd418ed4748d0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae95620e1159984a2670bd418ed4748d0"></a>
|
||||
T * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00014.html#ae95620e1159984a2670bd418ed4748d0">end</a> ()</td></tr>
|
||||
<tr class="memdesc:ae95620e1159984a2670bd418ed4748d0"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to one past last element in array. <br/></td></tr>
|
||||
<tr class="separator:ae95620e1159984a2670bd418ed4748d0"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><h3>template<typename T, size_t N = 1><br/>
|
||||
class tbb::aligned_space< T, N ></h3>
|
||||
|
||||
<p>Block of space aligned sufficiently to construct an array T with N elements. </p>
|
||||
<p>The elements are not constructed or destroyed by this class. </p>
|
||||
</div><hr/>The documentation for this class was generated from the following file:<ul>
|
||||
<li>aligned_space.h</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
@@ -0,0 +1,91 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>tbb::atomic< T > Struct Template Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="navrow2" class="tabs2">
|
||||
<ul class="tablist">
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="a00234.html">tbb</a></li><li class="navelem"><a class="el" href="a00015.html">atomic</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="a00263.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">tbb::atomic< T > Struct Template Reference<div class="ingroups"><a class="el" href="a00256.html">Synchronization</a></div></div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Primary template for atomic.
|
||||
<a href="a00015.html#details">More...</a></p>
|
||||
|
||||
<p><code>#include <atomic.h></code></p>
|
||||
<div class="dynheader">
|
||||
Inheritance diagram for tbb::atomic< T >:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center">
|
||||
<img src="a00015.png" usemap="#tbb::atomic< T >_map" alt=""/>
|
||||
<map id="tbb::atomic< T >_map" name="tbb::atomic< T >_map">
|
||||
</map>
|
||||
</div></div>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
||||
Public Member Functions</h2></td></tr>
|
||||
<tr class="memitem:a8624826901f5a3267853386bf880bd88"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8624826901f5a3267853386bf880bd88"></a>
|
||||
constexpr </td><td class="memItemRight" valign="bottom"><b>atomic</b> (T arg)</td></tr>
|
||||
<tr class="separator:a8624826901f5a3267853386bf880bd88"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a5942feb81281f810edddc61a48dd7a39"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5942feb81281f810edddc61a48dd7a39"></a>
|
||||
T </td><td class="memItemRight" valign="bottom"><b>operator=</b> (T rhs)</td></tr>
|
||||
<tr class="separator:a5942feb81281f810edddc61a48dd7a39"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a7d65b6cae3bd11c79a8e51e25055be52"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7d65b6cae3bd11c79a8e51e25055be52"></a>
|
||||
<a class="el" href="a00015.html">atomic</a>< T > & </td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="a00015.html">atomic</a>< T > &rhs)</td></tr>
|
||||
<tr class="separator:a7d65b6cae3bd11c79a8e51e25055be52"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><h3>template<typename T><br/>
|
||||
struct tbb::atomic< T ></h3>
|
||||
|
||||
<p>Primary template for atomic. </p>
|
||||
<p>See the Reference for details. </p>
|
||||
</div><hr/>The documentation for this struct was generated from the following file:<ul>
|
||||
<li>atomic.h</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
|
After Width: | Height: | Size: 595 B |
@@ -0,0 +1,90 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>tbb::atomic< void * > Struct Template Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="navrow2" class="tabs2">
|
||||
<ul class="tablist">
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="a00234.html">tbb</a></li><li class="navelem"><a class="el" href="a00016.html">atomic< void * ></a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="a00264.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">tbb::atomic< void * > Struct Template Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Specialization for <a class="el" href="a00016.html" title="Specialization for atomic<void*>, for sake of not allowing arithmetic or operator->. ">atomic<void*></a>, for sake of not allowing arithmetic or operator->.
|
||||
<a href="a00016.html#details">More...</a></p>
|
||||
|
||||
<p><code>#include <atomic.h></code></p>
|
||||
<div class="dynheader">
|
||||
Inheritance diagram for tbb::atomic< void * >:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center">
|
||||
<img src="a00016.png" usemap="#tbb::atomic< void * >_map" alt=""/>
|
||||
<map id="tbb::atomic< void * >_map" name="tbb::atomic< void * >_map">
|
||||
</map>
|
||||
</div></div>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
||||
Public Member Functions</h2></td></tr>
|
||||
<tr class="memitem:a744970055554db56a922b83dd1125dcf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a744970055554db56a922b83dd1125dcf"></a>
|
||||
constexpr </td><td class="memItemRight" valign="bottom"><b>atomic</b> (void *arg)</td></tr>
|
||||
<tr class="separator:a744970055554db56a922b83dd1125dcf"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a3da2906b224154d9961054f07b2e310b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3da2906b224154d9961054f07b2e310b"></a>
|
||||
void * </td><td class="memItemRight" valign="bottom"><b>operator=</b> (void *rhs)</td></tr>
|
||||
<tr class="separator:a3da2906b224154d9961054f07b2e310b"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
<tr class="memitem:a8cb22d05fe655337f6129dc8f3ab6783"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8cb22d05fe655337f6129dc8f3ab6783"></a>
|
||||
<a class="el" href="a00015.html">atomic</a>< void * > & </td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="a00015.html">atomic</a>< void * > &rhs)</td></tr>
|
||||
<tr class="separator:a8cb22d05fe655337f6129dc8f3ab6783"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><h3>template<><br/>
|
||||
struct tbb::atomic< void * ></h3>
|
||||
|
||||
<p>Specialization for <a class="el" href="a00016.html" title="Specialization for atomic<void*>, for sake of not allowing arithmetic or operator->. ">atomic<void*></a>, for sake of not allowing arithmetic or operator->. </p>
|
||||
</div><hr/>The documentation for this struct was generated from the following file:<ul>
|
||||
<li>atomic.h</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
|
After Width: | Height: | Size: 688 B |
@@ -0,0 +1,63 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>tbb::interface7::task_arena::attach Struct Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="navrow2" class="tabs2">
|
||||
<ul class="tablist">
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="a00234.html">tbb</a></li><li class="navelem"><b>interface7</b></li><li class="navelem"><a class="el" href="a00144.html">task_arena</a></li><li class="navelem"><a class="el" href="a00017.html">attach</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="headertitle">
|
||||
<div class="title">tbb::interface7::task_arena::attach Struct Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Tag class used to indicate the "attaching" constructor.
|
||||
<a href="a00017.html#details">More...</a></p>
|
||||
|
||||
<p><code>#include <task_arena.h></code></p>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Tag class used to indicate the "attaching" constructor. </p>
|
||||
</div><hr/>The documentation for this struct was generated from the following file:<ul>
|
||||
<li>task_arena.h</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
@@ -0,0 +1,81 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>tbb::bad_last_alloc Class Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="navrow2" class="tabs2">
|
||||
<ul class="tablist">
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="a00234.html">tbb</a></li><li class="navelem"><a class="el" href="a00018.html">bad_last_alloc</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="a00314.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">tbb::bad_last_alloc Class Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
|
||||
<p>Exception for concurrent containers.
|
||||
<a href="a00018.html#details">More...</a></p>
|
||||
|
||||
<p><code>#include <tbb_exception.h></code></p>
|
||||
<div class="dynheader">
|
||||
Inheritance diagram for tbb::bad_last_alloc:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center">
|
||||
<img src="a00018.png" usemap="#tbb::bad_last_alloc_map" alt=""/>
|
||||
<map id="tbb::bad_last_alloc_map" name="tbb::bad_last_alloc_map">
|
||||
</map>
|
||||
</div></div>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
||||
Public Member Functions</h2></td></tr>
|
||||
<tr class="memitem:ad26fe8a6bd71e097ab339f3d3895d07c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad26fe8a6bd71e097ab339f3d3895d07c"></a>
|
||||
const char * </td><td class="memItemRight" valign="bottom"><b>what</b> () const __TBB_override throw ()</td></tr>
|
||||
<tr class="separator:ad26fe8a6bd71e097ab339f3d3895d07c"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
|
||||
<div class="textblock"><p>Exception for concurrent containers. </p>
|
||||
</div><hr/>The documentation for this class was generated from the following file:<ul>
|
||||
<li>tbb_exception.h</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
|
After Width: | Height: | Size: 490 B |
@@ -0,0 +1,66 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>tbb::interface6::internal::basic_handler Class Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="navrow2" class="tabs2">
|
||||
<ul class="tablist">
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="a00234.html">tbb</a></li><li class="navelem"><b>interface6</b></li><li class="navelem"><b>internal</b></li><li class="navelem"><a class="el" href="a00019.html">basic_handler</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="a00394.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">tbb::interface6::internal::basic_handler Class Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
||||
Public Member Functions</h2></td></tr>
|
||||
<tr class="memitem:afb0dec67968e9abdabb5a0e3ec8064a4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afb0dec67968e9abdabb5a0e3ec8064a4"></a>
|
||||
void </td><td class="memItemRight" valign="bottom"><b>operator()</b> (<a class="el" href="a00013.html">aggregator_operation</a> *op_list) const </td></tr>
|
||||
<tr class="separator:afb0dec67968e9abdabb5a0e3ec8064a4"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<hr/>The documentation for this class was generated from the following file:<ul>
|
||||
<li>aggregator.h</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
@@ -0,0 +1,84 @@
|
||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
||||
<meta name="generator" content="Doxygen 1.8.4"/>
|
||||
<title>tbb::interface6::internal::basic_operation< Body > Class Template Reference</title>
|
||||
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
||||
<script type="text/javascript" src="jquery.js"></script>
|
||||
<script type="text/javascript" src="dynsections.js"></script>
|
||||
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
||||
<!-- end header part -->
|
||||
<!-- Generated by Doxygen 1.8.4 -->
|
||||
<div id="navrow1" class="tabs">
|
||||
<ul class="tablist">
|
||||
<li><a href="index.html"><span>Main Page</span></a></li>
|
||||
<li><a href="pages.html"><span>Related Pages</span></a></li>
|
||||
<li><a href="modules.html"><span>Modules</span></a></li>
|
||||
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
|
||||
<li class="current"><a href="annotated.html"><span>Classes</span></a></li>
|
||||
<li><a href="files.html"><span>Files</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="navrow2" class="tabs2">
|
||||
<ul class="tablist">
|
||||
<li><a href="annotated.html"><span>Class List</span></a></li>
|
||||
<li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
|
||||
<li><a href="functions.html"><span>Class Members</span></a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="nav-path" class="navpath">
|
||||
<ul>
|
||||
<li class="navelem"><a class="el" href="a00234.html">tbb</a></li><li class="navelem"><b>interface6</b></li><li class="navelem"><b>internal</b></li><li class="navelem"><a class="el" href="a00020.html">basic_operation</a></li> </ul>
|
||||
</div>
|
||||
</div><!-- top -->
|
||||
<div class="header">
|
||||
<div class="summary">
|
||||
<a href="#pub-methods">Public Member Functions</a> |
|
||||
<a href="a00393.html">List of all members</a> </div>
|
||||
<div class="headertitle">
|
||||
<div class="title">tbb::interface6::internal::basic_operation< Body > Class Template Reference</div> </div>
|
||||
</div><!--header-->
|
||||
<div class="contents">
|
||||
<div class="dynheader">
|
||||
Inheritance diagram for tbb::interface6::internal::basic_operation< Body >:</div>
|
||||
<div class="dyncontent">
|
||||
<div class="center">
|
||||
<img src="a00020.png" usemap="#tbb::interface6::internal::basic_operation< Body >_map" alt=""/>
|
||||
<map id="tbb::interface6::internal::basic_operation< Body >_map" name="tbb::interface6::internal::basic_operation< Body >_map">
|
||||
<area href="a00021.html" alt="tbb::interface6::internal::basic_operation_base" shape="rect" coords="0,56,289,80"/>
|
||||
<area href="a00013.html" alt="tbb::interface6::aggregator_operation" shape="rect" coords="0,0,289,24"/>
|
||||
</map>
|
||||
</div></div>
|
||||
<table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
|
||||
Public Member Functions</h2></td></tr>
|
||||
<tr class="memitem:adf48b2339f7de2f002c24c8951a03057"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adf48b2339f7de2f002c24c8951a03057"></a>
|
||||
 </td><td class="memItemRight" valign="bottom"><b>basic_operation</b> (const Body &b)</td></tr>
|
||||
<tr class="separator:adf48b2339f7de2f002c24c8951a03057"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table><table class="memberdecls">
|
||||
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
|
||||
Additional Inherited Members</h2></td></tr>
|
||||
<tr class="inherit_header pub_types_a00013"><td colspan="2" onclick="javascript:toggleInherit('pub_types_a00013')"><img src="closed.png" alt="-"/> Public Types inherited from <a class="el" href="a00013.html">tbb::interface6::aggregator_operation</a></td></tr>
|
||||
<tr class="memitem:a855dc55cb1823ed4845f4ed6b0a87700 inherit pub_types_a00013"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><b>aggregator_operation_status</b> { <b>agg_waiting</b> =0,
|
||||
<b>agg_finished</b>
|
||||
}</td></tr>
|
||||
<tr class="separator:a855dc55cb1823ed4845f4ed6b0a87700 inherit pub_types_a00013"><td class="memSeparator" colspan="2"> </td></tr>
|
||||
</table>
|
||||
<hr/>The documentation for this class was generated from the following file:<ul>
|
||||
<li>aggregator.h</li>
|
||||
</ul>
|
||||
</div><!-- contents -->
|
||||
<hr>
|
||||
<p></p>
|
||||
Copyright © 2005-2016 Intel Corporation. All Rights Reserved.
|
||||
<p></p>
|
||||
Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune 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.
|
||||
|
After Width: | Height: | Size: 2.2 KiB |