|
1 |
| -#/* <copyright> |
2 |
| -# This file is provided under a dual BSD/GPLv2 license. When using or |
3 |
| -# redistributing this file, you may do so under either license. |
4 | 1 | #
|
5 |
| -# GPL LICENSE SUMMARY |
| 2 | +# Copyright (C) 2005-2019 Intel Corporation |
6 | 3 | #
|
7 |
| -# Copyright (c) 2005-2017 Intel Corporation. All rights reserved. |
| 4 | +# SPDX-License-Identifier: GPL-2.0-only OR BSD-3-Clause |
8 | 5 | #
|
9 |
| -# This program is free software; you can redistribute it and/or modify |
10 |
| -# it under the terms of version 2 of the GNU General Public License as |
11 |
| -# published by the Free Software Foundation. |
12 |
| -# |
13 |
| -# This program is distributed in the hope that it will be useful, but |
14 |
| -# WITHOUT ANY WARRANTY; without even the implied warranty of |
15 |
| -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
16 |
| -# General Public License for more details. |
17 |
| -# |
18 |
| -# You should have received a copy of the GNU General Public License |
19 |
| -# along with this program; if not, write to the Free Software |
20 |
| -# Foundation, Inc., 51 Franklin St - Fifth Floor, Boston, MA 02110-1301 USA. |
21 |
| -# The full GNU General Public License is included in this distribution |
22 |
| -# in the file called LICENSE.GPL. |
23 |
| -# |
24 |
| -# Contact Information: |
25 |
| -# http://software.intel.com/en-us/articles/intel-vtune-amplifier-xe/ |
26 |
| -# |
27 |
| -# BSD LICENSE |
28 |
| -# |
29 |
| -# Copyright (c) 2005-2017 Intel Corporation. All rights reserved. |
30 |
| -# All rights reserved. |
31 |
| -# |
32 |
| -# Redistribution and use in source and binary forms, with or without |
33 |
| -# modification, are permitted provided that the following conditions |
34 |
| -# are met: |
35 |
| -# |
36 |
| -# * Redistributions of source code must retain the above copyright |
37 |
| -# notice, this list of conditions and the following disclaimer. |
38 |
| -# * Redistributions in binary form must reproduce the above copyright |
39 |
| -# notice, this list of conditions and the following disclaimer in |
40 |
| -# the documentation and/or other materials provided with the |
41 |
| -# distribution. |
42 |
| -# * Neither the name of Intel Corporation nor the names of its |
43 |
| -# contributors may be used to endorse or promote products derived |
44 |
| -# from this software without specific prior written permission. |
45 |
| -# |
46 |
| -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
47 |
| -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
48 |
| -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
49 |
| -# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
50 |
| -# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
51 |
| -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
52 |
| -# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
53 |
| -# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
54 |
| -# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
55 |
| -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
56 |
| -# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
57 |
| -#</copyright> */ |
58 |
| -#******************************************************************************************************************************************************************************************************************************************************************************************** |
59 |
| - |
60 |
| -cmake_minimum_required(VERSION 2.8) |
| 6 | + |
| 7 | +cmake_minimum_required(VERSION 2.8.12) |
61 | 8 |
|
62 | 9 | project(ittapi)
|
63 | 10 |
|
64 | 11 | OPTION(FORCE_32 "Force a 32bit compile on 64bit" OFF)
|
| 12 | +OPTION(ITT_API_IPT_SUPPORT "ptmarks support") |
65 | 13 |
|
66 | 14 | IF(FORCE_32 AND UNIX)
|
67 | 15 | SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -m32")
|
@@ -99,26 +47,36 @@ set(ITT_PUBLIC_HDRS
|
99 | 47 | include/libittnotify.h
|
100 | 48 | )
|
101 | 49 |
|
102 |
| -file(GLOB ITT_SRCS "src/ittnotify/*.c" "src/ittnotify/*.h") |
| 50 | +if (ITT_API_IPT_SUPPORT) |
| 51 | + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DITT_API_IPT_SUPPORT") |
| 52 | + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DITT_API_IPT_SUPPORT") |
| 53 | + if (NOT WIN32) |
| 54 | + enable_language(ASM) |
| 55 | + if (ARCH_64) |
| 56 | + set(ITT_PT src/ittnotify/ittptmark64.S) |
| 57 | + else() |
| 58 | + set(ASM_OPTIONS "-m32") |
| 59 | + set(ITT_PT src/ittnotify/ittptmark32.S) |
| 60 | + endif() |
| 61 | + set(CMAKE_ASM_FLAGS "${CFLAGS} ${ASM_OPTIONS}" ) |
| 62 | + else() |
| 63 | + enable_language(ASM_MASM) |
| 64 | + if (ARCH_64) |
| 65 | + set(ITT_PT src/ittnotify/ittptmark64.asm) |
| 66 | + else() |
| 67 | + set(ITT_PT src/ittnotify/ittptmark32.asm) |
| 68 | + endif() |
| 69 | + endif() |
| 70 | +endif() |
103 | 71 |
|
104 |
| -add_library(ittnotify STATIC ${ITT_SRCS} ${ITT_PUBLIC_HDRS}) |
| 72 | +file(GLOB ITT_SRCS "src/ittnotify/*.c" "src/ittnotify/*.h") |
105 | 73 |
|
106 |
| -if(APPLE) |
107 |
| - SET_TARGET_PROPERTIES(ittnotify PROPERTIES OUTPUT_NAME ittnotify) |
108 |
| -endif() |
| 74 | +add_library(ittnotify STATIC ${ITT_SRCS} ${ITT_PUBLIC_HDRS} ${ITT_PT}) |
109 | 75 |
|
110 | 76 | if(WIN32)
|
111 |
| - if(ARCH_64) |
112 |
| - SET_TARGET_PROPERTIES(ittnotify PROPERTIES OUTPUT_NAME libittnotify64) |
113 |
| - else() |
114 |
| - SET_TARGET_PROPERTIES(ittnotify PROPERTIES OUTPUT_NAME libittnotify32) |
115 |
| - endif() |
| 77 | + SET_TARGET_PROPERTIES(ittnotify PROPERTIES OUTPUT_NAME libittnotify) |
116 | 78 | else()
|
117 |
| - if(ARCH_64) |
118 |
| - SET_TARGET_PROPERTIES(ittnotify PROPERTIES OUTPUT_NAME ittnotify64) |
119 |
| - else() |
120 |
| - SET_TARGET_PROPERTIES(ittnotify PROPERTIES OUTPUT_NAME ittnotify32) |
121 |
| - endif() |
| 79 | + SET_TARGET_PROPERTIES(ittnotify PROPERTIES OUTPUT_NAME ittnotify) |
122 | 80 | endif()
|
123 | 81 |
|
124 | 82 | if (NOT WIN32)
|
|
0 commit comments