components/intel-openmp/Makefile
author Norm Jacobs <Norm.Jacobs@Oracle.COM>
Fri, 16 Sep 2016 23:33:54 -0500
changeset 6923 338aea22bf22
parent 6640 fd848af73662
child 7771 46912a8a1f29
permissions -rw-r--r--
24440950 GCC 4.9 should be updated to 4.9.4 23333897 GCC 4.9 can build with itself. 24403599 gcc49 shouldn't make use of private _XPG macros
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6624
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     1
#
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     2
# CDDL HEADER START
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     3
#
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     4
# The contents of this file are subject to the terms of the
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     5
# Common Development and Distribution License (the "License").
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     6
# You may not use this file except in compliance with the License.
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     7
#
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     8
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
     9
# or http://www.opensolaris.org/os/licensing.
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    10
# See the License for the specific language governing permissions
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    11
# and limitations under the License.
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    12
#
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    13
# When distributing Covered Code, include this CDDL HEADER in each
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    14
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    15
# If applicable, add the following below this CDDL HEADER, with the
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    16
# fields enclosed by brackets "[]" replaced with your own identifying
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    17
# information: Portions Copyright [yyyy] [name of copyright owner]
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    18
#
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    19
# CDDL HEADER END
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    20
#
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    21
# Copyright (c) 2016, Oracle and/or its affiliates. All rights reserved.
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    22
#
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    23
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    24
export PARFAIT_BUILD=no
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    25
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    26
BUILD_BITS = 64_and_32
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    27
COMPILER = gcc
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    28
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    29
include ../../make-rules/shared-macros.mk
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    30
6923
338aea22bf22 24440950 GCC 4.9 should be updated to 4.9.4
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 6640
diff changeset
    31
# We are using GCC 4.9 with LLVM, use it here too for the time being.
338aea22bf22 24440950 GCC 4.9 should be updated to 4.9.4
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 6640
diff changeset
    32
# Switch to GCC 5.3 if/when LLVM can.
338aea22bf22 24440950 GCC 4.9 should be updated to 4.9.4
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 6640
diff changeset
    33
GCC_ROOT=/usr/gcc/4.9
338aea22bf22 24440950 GCC 4.9 should be updated to 4.9.4
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 6640
diff changeset
    34
6624
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    35
COMPONENT_NAME        = libomp
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    36
COMPONENT_VERSION     = 20151009
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    37
COMPONENT_SRC         = $(COMPONENT_NAME)_$(COMPONENT_VERSION)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    38
COMPONENT_ARCHIVE     = $(COMPONENT_SRC)_oss.tgz
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    39
COMPONENT_ARCHIVE_HASH= \
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    40
         sha256:d4254420d0081c6844eb05237bab5e731e669a429a9c1c87e2e0221ccf0de6ac
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    41
COMPONENT_ARCHIVE_URL = http://www.openmprtl.org/sites/default/files/$(COMPONENT_ARCHIVE)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    42
COMPONENT_PROJECT_URL = http://www.openmprtl.org/
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    43
COMPONENT_BUGDB       = library/intel-openmp
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    44
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    45
TPNO = 27154
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    46
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    47
BUILD_STYLE = justmake
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    48
6640
fd848af73662 24490016 do not publish OpenMP when BUILD_TYPE=evaluation
John Beck <John.Beck@Oracle.COM>
parents: 6624
diff changeset
    49
# Uses an ON header file with S12-only features.
fd848af73662 24490016 do not publish OpenMP when BUILD_TYPE=evaluation
John Beck <John.Beck@Oracle.COM>
parents: 6624
diff changeset
    50
ifeq ($(BUILD_TYPE), evaluation)
fd848af73662 24490016 do not publish OpenMP when BUILD_TYPE=evaluation
John Beck <John.Beck@Oracle.COM>
parents: 6624
diff changeset
    51
BUILD_32_and_64=
fd848af73662 24490016 do not publish OpenMP when BUILD_TYPE=evaluation
John Beck <John.Beck@Oracle.COM>
parents: 6624
diff changeset
    52
INSTALL_32_and_64=
fd848af73662 24490016 do not publish OpenMP when BUILD_TYPE=evaluation
John Beck <John.Beck@Oracle.COM>
parents: 6624
diff changeset
    53
PUBLISH_STAMP=
fd848af73662 24490016 do not publish OpenMP when BUILD_TYPE=evaluation
John Beck <John.Beck@Oracle.COM>
parents: 6624
diff changeset
    54
endif
fd848af73662 24490016 do not publish OpenMP when BUILD_TYPE=evaluation
John Beck <John.Beck@Oracle.COM>
parents: 6624
diff changeset
    55
6624
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    56
include $(WS_MAKE_RULES)/common.mk
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    57
6923
338aea22bf22 24440950 GCC 4.9 should be updated to 4.9.4
Norm Jacobs <Norm.Jacobs@Oracle.COM>
parents: 6640
diff changeset
    58
export PATH=/usr/gnu/bin:$(GCC_ROOT)/bin:/usr/bin:/usr/perl5/5.22/bin
6624
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    59
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    60
PATCH_LEVEL := 0
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    61
DEBUG_BUILD := 0
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    62
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    63
# This component uses cmake to generate Makefiles and thus does not
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    64
# run any configure script
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    65
CMAKE = /usr/bin/cmake
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    66
CMAKE_PREFIX = /usr
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    67
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    68
CMAKE_BINDIR.32     = bin/$(MACH32)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    69
CMAKE_BINDIR.64     = bin
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    70
CMAKE_LIBDIR.32     = lib
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    71
CMAKE_LIBDIR.64     = lib/$(MACH64)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    72
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    73
ISA_CFLAGS.i386	= -fno-omit-frame-pointer -march=opteron -mtune=opteron
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    74
ISA_CFLAGS.sparc = -mptr$(BITS) -mtune=ultrasparc3 -mcpu=ultrasparc3
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    75
ISA_CFLAGS.sparc += -mvis2 -mhard-float -mno-unaligned-doubles
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    76
ISA_CFLAGS.sparc += -mimpure-text
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    77
ISA_CFLAGS = $(ISA_CFLAGS.$(MACH))
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    78
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    79
OMP_STATS = off
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    80
OFLAG = -O2
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    81
GFLAG =
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    82
DFLAG = -DNDEBUG
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    83
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    84
ifeq ($(DEBUG_BUILD),1)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    85
  OMP_STATS = on
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    86
  OFLAG = -O0
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    87
  GFLAG = -g3
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    88
  DFLAG =
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    89
endif
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    90
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    91
# Because of the weird way in which libiomp wants to build itself,
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    92
# we can't pass a -std=<N> on compile line. This is done internally
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    93
# by the cmake configuration files.
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    94
# The Userland default flags for GCC are broken.
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    95
CFLAGS = -m$(BITS) $(OFLAG) $(GFLAG) $(ISA_CFLAGS) -Wall
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    96
CFLAGS += -fkeep-static-consts -fno-strict-aliasing
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    97
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    98
CXXFLAGS = -m$(BITS) $(OFLAG) $(GFLAG) $(ISA_CFLAGS) -Wall
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
    99
CXXFLAGS += -fkeep-static-consts -fno-strict-aliasing
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   100
CXXFLAGS += -Wl,-z -Wl,relax=comdat
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   101
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   102
CPPFLAGS = -D__EXTENSIONS__=1 -DKMP_GOMP_COMPAT=1
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   103
CPPFLAGS += -DKMP_TDATA_GTID=1
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   104
LDFLAGS += -z ignore -z relax=comdat
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   105
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   106
LIBIOMP_RUNPATH_32	= /usr/gcc/4.9/lib
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   107
LIBIOMP_RUNPATH_64	= /usr/gcc/4.9/lib/$(MACH64)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   108
LIBIOMP_RUNPATH	= $(LIBIOMP_RUNPATH_$(BITS))
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   109
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   110
CFLAGS		+= -Wl,-R -Wl,$(LIBIOMP_RUNPATH)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   111
CXXFLAGS	+= -Wl,-R -Wl,$(LIBIOMP_RUNPATH)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   112
LDFLAGS		+= -R$(LIBIOMP_RUNPATH)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   113
LD_OPTIONS	= -z ignore -z relax=comdat
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   114
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   115
CMAKE_OPTIONS = -DCMAKE_C_COMPILER=$(CC)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   116
CMAKE_OPTIONS += -DCMAKE_CXX_COMPILER=$(CXX)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   117
CMAKE_OPTIONS += -DCFLAGS="$(CPPFLAGS) $(CFLAGS)"
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   118
CMAKE_OPTIONS += -DCXXFLAGS="$(CPPFLAGS) $(CXXFLAGS)"
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   119
CMAKE_OPTIONS += -DLDFLAGS="$(LDFLAGS)"
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   120
CMAKE_OPTIONS += -DCMAKE_INSTALL_PREFIX=$(CMAKE_PREFIX)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   121
CMAKE_OPTIONS += -DINSTALL_LIBDIR:PATH=$(CMAKE_LIBDIR)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   122
CMAKE_OPTIONS += -DCMAKE_INSTALL_LIBDIR:PATH=$(CMAKE_LIBDIR)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   123
CMAKE_OPTIONS += -DCMAKE_MAKE_PROGRAM=$(GMAKE)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   124
CMAKE_OPTIONS += -DCMAKE_SHARED_LIBRARY_SUFFIX=".so.5"
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   125
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   126
CMAKE_OPTIONS += -DCMAKE_C_FLAGS_RELEASE:STRING="$(OFLAG) $(GFLAG) $(DFLAG)"
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   127
CMAKE_OPTIONS += -DCMAKE_CXX_FLAGS_RELEASE:STRING="$(OFLAG) $(GFLAG) $(DFLAG)"
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   128
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   129
CMAKE_OPTIONS += -DCMAKE_VERBOSE_MAKEFILE=1
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   130
CMAKE_OPTIONS += -DCOMPILER_SUPPORTS_QUAD_PRECISION=true
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   131
CMAKE_OPTIONS += -DDEBUG_BUILD=false
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   132
CMAKE_OPTIONS += -DLIBOMP_OMPT_SUPPORT=on
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   133
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   134
CMAKE_OPTIONS += -DLIBOMP_USE_ADAPTIVE_LOCKS=true
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   135
CMAKE_OPTIONS += -DLIBOMP_STATS=$(OMP_STATS)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   136
CMAKE_OPTIONS += -DLIBOMP_FORTRAN_MODULES=true
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   137
CMAKE_OPTIONS += -DLIBOMP_VERSION=5
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   138
CMAKE_OPTIONS += -DLIBOMP_OMP_VERSION=41
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   139
CMAKE_OPTIONS += -DCMAKE_BUILD_TYPE=release
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   140
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   141
COMPONENT_BUILD_ENV += LD_OPTIONS="$(LD_OPTIONS)"
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   142
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   143
# THe tarball extracts to 'libomp_oss' which doesn't match
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   144
# the name constructed in $(COMPONENT_SRC). We fix that here.
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   145
COMPONENT_POST_UNPACK_ACTION = \
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   146
      $(MV) libomp_oss $(COMPONENT_SRC)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   147
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   148
COMPONENT_PRE_BUILD_ACTION += cd $(@D);
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   149
COMPONENT_PRE_BUILD_ACTION += echo Running cmake with $(CMAKE_OPTIONS) ;
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   150
COMPONENT_PRE_BUILD_ACTION += /usr/bin/env - $(COMPONENT_BUILD_ENV) \
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   151
			      $(CMAKE) $(CMAKE_OPTIONS) . ;
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   152
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   153
build: $(BUILD_32_and_64)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   154
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   155
install: $(INSTALL_32_and_64)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   156
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   157
# There are no tests for this version of the Intel OpenMP Library
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   158
# OpenMP tests will be integrated in ${WS_TOP}/components/bots.
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   159
test: $(NO_TESTS)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   160
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   161
system-test:    $(NO_TESTS)
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   162
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   163
REQUIRED_PACKAGES += developer/build/cmake
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   164
REQUIRED_PACKAGES += developer/gcc-4/gcc-common-49
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   165
REQUIRED_PACKAGES += system/core-os
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   166
REQUIRED_PACKAGES += system/library/gcc/gcc-runtime-49
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   167
REQUIRED_PACKAGES += system/library/gcc/gcc-c++-runtime-49
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   168
REQUIRED_PACKAGES += system/library/gcc/gcc-c-runtime-49
c6cfc48dd184 PSARC 2016/236 Intel OpenMP Runtime
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff changeset
   169
REQUIRED_PACKAGES += system/library/math