Makefile revision 618
2N/A#
2N/A# CDDL HEADER START
2N/A#
2N/A# The contents of this file are subject to the terms of the
2N/A# Common Development and Distribution License (the "License").
2N/A# You may not use this file except in compliance with the License.
2N/A#
2N/A# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
2N/A# or http://www.opensolaris.org/os/licensing.
2N/A# See the License for the specific language governing permissions
2N/A# and limitations under the License.
2N/A#
2N/A# When distributing Covered Code, include this CDDL HEADER in each
2N/A# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
2N/A# If applicable, add the following below this CDDL HEADER, with the
2N/A# fields enclosed by brackets "[]" replaced with your own identifying
2N/A# information: Portions Copyright [yyyy] [name of copyright owner]
2N/A#
2N/A# CDDL HEADER END
2N/A#
58N/A# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
2N/A#
2N/Ainclude ../../make-rules/shared-macros.mk
32N/A
32N/APATH=$(dir $(CC)):/usr/bin:/usr/gnu/bin
2N/A
2N/A# I want to override PERL_VERSION and PERL_ARCH because when building
26N/A# a new version of perl it probably isn't installed so shared-macros.mk
38N/A# can't call it.
38N/A
38N/ACOMPONENT_NAME= perl
29N/ACOMPONENT_VERSION= 5.12.3
29N/APERL_VERSION= 5.12
29N/ACOMPONENT_PROJECT_URL= http://www.perl.org/
29N/ACOMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
26N/ACOMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.bz2
26N/ACOMPONENT_ARCHIVE_HASH= sha1:86d77c6cbc7a60068dc14c88ffd0729324d1174f
29N/ACOMPONENT_ARCHIVE_URL= http://www.cpan.org/src/5.0/$(COMPONENT_ARCHIVE)
26N/A
2N/Ainclude ../../make-rules/prep.mk
38N/Ainclude ../../make-rules/justmake.mk
2N/Ainclude ../../make-rules/ips.mk
6N/A
2N/A#
58N/A# Override these compiler settings because they are causing problems
2N/A# in the ON build of the contrib components.
2N/A# ON doesn't use or need these settings or the compiler has some of them
34N/A# on by default.
34N/A# This also produces a perl more inline with past perl's. For better
34N/A# or worse.
34N/A#
49N/Astudio_XBITS=
70N/Astudio_XREGS=
2N/Astudio_IROPTS=
34N/Astudio_C99MODE=
34N/Astudio_ALIGN=
34N/Astudio_MT=
59N/A
72N/A#
72N/A# The extra Configure parameters (cf_email, cf_by, myhostname) and
72N/A# the gawk and sed that follow are attempting to sanatize the
59N/A# resulting config.sh of values from our build environment that
2N/A# are discoverable in perl's config via "perl -V".
61N/A# I'm assuming our compilers live on a path that contains "SUNWspro".
61N/A# If that changes the sed filter needs to change.
61N/A#
61N/A
61N/ACOMPONENT_PRE_BUILD_ACTION= \
61N/A (cd $(@D); $(ENV) -i \
61N/A MAKE=$(GMAKE) \
61N/A PATH=$(dir $(CC.studio.32)):$(PATH) \
61N/A $(CONFIG_SHELL) ./Configure \
74N/A -Dprefix=/usr/perl5/$(PERL_VERSION) \
61N/A -Dprivlib=/usr/perl5/$(PERL_VERSION)/lib \
61N/A -Dsitelib=/usr/perl5/site_perl/$(PERL_VERSION) \
61N/A -Dvendorprefix=/usr/perl5/$(PERL_VERSION) \
61N/A -Dvendorlib=/usr/perl5/vendor_perl/$(PERL_VERSION) \
61N/A -Dlibperl=libperl.so \
61N/A -Duseshrplib \
61N/A -Dusedtrace \
61N/A -Duse64bitint \
61N/A -Dcc="cc" \
61N/A -Doptimize="$(CFLAGS.studio)" \
61N/A -Dcf_email="userland-discuss@opensolaris.org" \
43N/A -Dcf_by="perl-bugs" \
43N/A -Dmyhostname="localhost" \
64N/A -O \
64N/A -de ) ; \
64N/A (cd $(@D); \
43N/A cp config.sh config.sh_orig ; \
43N/A gawk \
64N/A '/^myuname=/{print $$1" localhost "$$3" "$$5" "$$6" "$$7"\047"} ; \
64N/A !/^myuname=/ {print}' config.sh_orig \
64N/A | \
64N/A sed -e 's/[^ ]*SUNWspro[^ ]*//g' > config.sh )
64N/A
64N/A
64N/ACOMPONENT_INSTALL_ENV += DESTDIR="$(PROTO_DIR)"
64N/A#
64N/A# perl's install path for sparc is based off the value of the
64N/A# "arch" command. So we must package that way also.
64N/A#
64N/APKG_MACROS += PERL_ARCH=$(shell arch)
43N/APKG_MACROS += PERL_VERSION=$(PERL_VERSION)
16N/A#
16N/A# Put studio compilers in PATH so we can tell Configure and gmake just
16N/A# use cc. Trying to avoid the full path so it doesn't end up in
34N/A# perl's config.
34N/A#
16N/ACOMPONENT_BUILD_ENV += PATH=$(dir $(CC.studio.32)):$(PATH)
6N/A
12N/Abuild: $(BUILD_32)
12N/A
12N/Ainstall: $(INSTALL_32)
12N/A
12N/Atest: $(TEST_32)
12N/A #
12N/A # 2 expected failures because of the use of cloney in this build.
12N/A # Without cloney all tests pass.
12N/A #
12N/A # Failed 2 tests out of 1697, 99.88% okay.
12N/A # ../cpan/Archive-Tar/t/02_methods.t
61N/A # ../lib/File/stat.t
61N/A #
61N/A
61N/ABUILD_PKG_DEPENDENCIES = $(BUILD_TOOLS)
61N/A
12N/Ainclude ../../make-rules/depend.mk
12N/A