Makefile revision 4820
363N/A# The contents of this file are subject to the terms of the 363N/A# Common Development and Distribution License (the "License"). 363N/A# You may not use this file except in compliance with the License. 363N/A# See the License for the specific language governing permissions 363N/A# and limitations under the License. 363N/A# When distributing Covered Code, include this CDDL HEADER in each 363N/A# If applicable, add the following below this CDDL HEADER, with the 363N/A# fields enclosed by brackets "[]" replaced with your own identifying 363N/A# information: Portions Copyright [yyyy] [name of copyright owner] 3621N/A# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved. 797N/A# When new version of OpenSSL comes in, you must update both COMPONENT_VERSION 797N/A# and IPS_COMPONENT_VERSION. 797N/A# When upgrading OpenSSL, please, DON'T FORGET TO TEST WANBOOT too. 797N/A# For more information about wanboot-openssl testing, please refer to 797N/A# Version for IPS. It is easier to do it manually than convert the letter to a 797N/A# number while taking into account that there might be no letter at all. 4368N/A# Clone the patch files to the patches-all dir. 4368N/A# COPY_COMMON_FILES is there so that rsync is called as soon as 363N/A# OpenSSL does not use autoconf but its own configure system. 5123N/A# This is to force OpenSSL's Configure script to use gmake for 'make links'. 5123N/A# mksh: Fatal error in reader: Unmatched `(' on line 777N/A# Used in the configure options below. 363N/A# Configure options common to both regular OpenSSL and OpenSSL for wanboot. 363N/A# We use OpenSSL install code for installing only manual pages and we do that 797N/A# for 32-bit version only. 363N/A# MD2 is not enabled by default in OpensSSL but some software we have in 363N/A# Userland needs it. One example is nmap. 363N/A# Disable SSLv2 and SSLv3 protocols 1426N/A# We use both no-whirlpool and no-whrlpool since there is an inconsistency in 4371N/A# the OpenSSL code and one needs both to build OpenSSL successfully with 4371N/A# Whirlpool implementation removed. 363N/A# Some additional options needed for our engines. 1426N/A# We define our own compiler and linker option sets for Solaris. See Configure 363N/A# Options specific to regular build. 363N/A# They must not be specified as common, as they cannot be overridden. 797N/A# OpenSSL for wanboot specific options 797N/A# OpenSSL has its own configure system which must be run from the fully 797N/A# populated source code directory. However, the Userland configuration phase is 797N/A# run from the build directory. So, we must get the full source code into the 363N/A# 64 bits. Depending on the configuration option, OpenSSL's Configure script 797N/A# header file usable on both architectures. The patch was generated against the 363N/A# We do not ship our engines as patches since it would be more difficult to 363N/A# update the files which have been under continuous development. We rather copy 363N/A# the files to the right directories. 363N/A# not available in the stand-alone environment of wanboot. 363N/A ( echo "Cloning engines..."; \ 363N/A# Enable ASLR for this component 4820N/A# OpenSSL for wanboot is built on sparc only. 1426N/A# Linking of openssl bits for wanboot. 1426N/A# compiled to have functions in separate sections, unused sections get 797N/A# OpenSSL uses sections man[1357] by default so we must create the man 797N/A# directories we use for OpenSSL man pages in Solaris. Note that we patch the 797N/A# OpenSSL man page install script to use the correct directories. 363N/A# We must create man page directories manually since we patched OpenSSL install 363N/A# code to install into manXopenssl instead of manX. Also, OpenSSL does not 363N/A# install into <dir>/$(MACH64) for 64-bit install so no such directory is 363N/A# created and Userland install code would fail when installing lint libraries. 363N/A# The install_docs target will install man pages into $(PROTO_DIR)/$(MANDIR). We 363N/A# system pod2man. If not set, OpenSSL make would use an internal implementation 363N/A# from the tarball which would corrupt some man pages. 363N/A# We could run OpenSSL install code for 32 bits only to process header files and 364N/A# manual pages. However, lint libraries depend on install stamps so we run 363N/A# install for 64 bit as well. Note that we must take built binary files from 797N/A# build directories, not from the proto area which contains whatever was 363N/A# OpenSSL for wanboot is built on sparc only. 797N/A# the build directory. If we do not do that, lint will complain about md2.h 363N/A# Set modified lint flags for our lint library targets. 1426N/A# There are also separate STC test suites 'openssl' and 'openssl-engine' 1426N/A# for regression testing. These internal tests are unit tests only.