3649N/A# The contents of this file are subject to the terms of the 3649N/A# Common Development and Distribution License (the "License"). 3649N/A# You may not use this file except in compliance with the License. 3649N/A# See the License for the specific language governing permissions 3649N/A# and limitations under the License. 3649N/A# When distributing Covered Code, include this CDDL HEADER in each 3649N/A# If applicable, add the following below this CDDL HEADER, with the 3649N/A# fields enclosed by brackets "[]" replaced with your own identifying 3649N/A# information: Portions Copyright [yyyy] [name of copyright owner] 5590N/A# Copyright (c) 2012, 2016, Oracle and/or its affiliates. All rights reserved. 7243N/A# Enable adiheap and adistack security extensions 5051N/A# Mostly but not completely migrated from ON in S12. 3651N/A# Although we build 32_and_64, everything except libmilter just wants 64, 3651N/A# which is why the macros just below only have values for 64. libmilter 3651N/A# is dealt with further below. 3649N/A# Userland default includes -mt which links with libthread which we don't need. 3649N/A# We set ARCH to match sendmail's configure-like script: on x86, it simply 3649N/A# uses 'uname -m', but on sparc it shortens "sun4*" into "sun4". 3651N/A# libmilter is built 32- and 64-bit, but its Makefile installs into a common 3651N/A# location, so we use the macro below in its manifest to distinguish between 3651N/A# the different built objects. 3649N/A# This appends "+Sun" to the version string, which we do for historical 3649N/A# reasons. If we did this via patch, then we would have to revise the patch 3649N/A# with every new release, since the version string changes every time. 3649N/A# libmilter and sendmail must come before include, so appending to the default 3649N/A# value of LINT_FLAGS will not work; we must redefine it here. 5590N/A# Sendmail looks for its build configuration in various per-OS config files 5590N/A# create that file as part of the 'prep' phase. 5590N/A# * Uncomment the following line: 5590N/A# COMPONENT_BUILD_ENV += studio_OPT="" 5590N/A# * Uncomment the 'confOPTIMIZE' line in the recipe below, and move it 5590N/A#define(\`confOPTIMIZE', \`-g') 3651N/A# mailq's Makefile doesn't grok the 32- and 64-bit build. We just want 64. 3651N/A# So we clean before we build, and the last build (64) wins, which is what 3916N/A# from under $(COMPONENT_SRC), which is not what we want because it contains 3916N/A# information (user, hostname, date, build path) from the upstream machine 3916N/A# where the distro was created. So we build our own version here, using 3916N/A# $(M4_ARG), which suppresses the inclusion of all that information. 3916N/A# Then we copy it to $(PROTO_DIR)/cf/cf instead of the more intuitive 3916N/A# $(PROTOETCDIR)/mail/cf/cf to match the transform in the manifest that 3651N/A# The transforms below abstract out the 32- or 64-bit specific parts of 3651N/A# the results, so we can use a common "all" master file. 3649N/A '-e "s|$(SM_BUILD_SUB_DIR)|\\$$(SM_BUILD_SUB_DIR)|g" ' \ 3649N/A '-e "s|$(OS_VERSION)|\\$$(OS_VERSION)|g" ' \ 3649N/A '-e "s|$(ARCH)|\\$$(ARCH)|g" ' \ 3850N/A '-e "s|^$(CC).*$$|XXX_CC_XXX|g" ' \