Makefile revision 751
9c49c394b4218cc9c743a372a8fcfb787f5ea8caAndreas Gustafsson#
2dc5db0eb0ba6672fb1c23875e2a964e59c24cd1Tinderbox User# CDDL HEADER START
9c49c394b4218cc9c743a372a8fcfb787f5ea8caAndreas Gustafsson#
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# The contents of this file are subject to the terms of the
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# Common Development and Distribution License (the "License").
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrews# You may not use this file except in compliance with the License.
9c49c394b4218cc9c743a372a8fcfb787f5ea8caAndreas Gustafsson#
2eeb74d1cf5355dd98f6d507a10086e16bb08c4bTinderbox User# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt# or http://www.opensolaris.org/os/licensing.
83a28ca274521e15086fc39febde507bcc4e145eMark Andrews# See the License for the specific language governing permissions
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt# and limitations under the License.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt#
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt# When distributing Covered Code, include this CDDL HEADER in each
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt# If applicable, add the following below this CDDL HEADER, with the
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt# fields enclosed by brackets "[]" replaced with your own identifying
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein# information: Portions Copyright [yyyy] [name of copyright owner]
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt#
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein# CDDL HEADER END
072440df4f65033eb058c06f2cc72be450606720Jeremy Reed#
a8f6b2aa46f882c7c680b7bdab1dfb78a76787eaMark Andrews
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein#
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein#
072440df4f65033eb058c06f2cc72be450606720Jeremy Reed
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austeininclude ../../make-rules/shared-macros.mk
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinCOMPONENT_NAME= libtool
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinCOMPONENT_VERSION= 2.4.2
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinCOMPONENT_PROJECT_URL= http://www.gnu.org/software/libtool/
704e6c8876907aac0bf7380effca8bca400d4acdMark AndrewsCOMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
704e6c8876907aac0bf7380effca8bca400d4acdMark AndrewsCOMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
704e6c8876907aac0bf7380effca8bca400d4acdMark AndrewsCOMPONENT_ARCHIVE_HASH= sha1:22b71a8b5ce3ad86e1094e7285981cae10e6ff88
704e6c8876907aac0bf7380effca8bca400d4acdMark AndrewsCOMPONENT_ARCHIVE_URL= http://ftp.gnu.org/gnu/$(COMPONENT_NAME)/$(COMPONENT_ARCHIVE)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein# For now, we want to continue to provide the libltdl.so's (and their
26e2a07a0b6a3b1eccef82ba31270d0c54ad4f06Mark Andrews# links) from libtool 1.5.22.
c1a883f2e04d94e99c433b1f6cfd0c0338f4ed85Mark Andrews#
030aac3dbc57f99bad1d251b0783890ff0369952Automatic UpdaterCOMPONENT_VERSION_1 = 1.5.22
d60212e03fbef1d3dd7f7eb05c0545cc373cb9fcAutomatic UpdaterCOMPONENT_SRC_1 = $(COMPONENT_NAME)-$(COMPONENT_VERSION_1)
1b892cf691dd0907e0e75774df102dd4d92dd877Automatic UpdaterCOMPONENT_ARCHIVE_1 = $(COMPONENT_SRC_1).tar.gz
a9f68291c8db8111b88442635a04dfd35221411bAutomatic UpdaterCOMPONENT_ARCHIVE_HASH_1 = sha1:17353e66aeaac80ae188ea0a3a90609550ce3254
5fa46bc91672ef5737aee6f99763161511566c24Tinderbox UserCOMPONENT_ARCHIVE_URL_1 = http://ftp.gnu.org/gnu/$(COMPONENT_NAME)/$(COMPONENT_ARCHIVE_1)
938440694b33cd752e9e4b71a526368b4811c177Tinderbox UserSOURCE_DIR_1 = $(COMPONENT_DIR)/$(COMPONENT_SRC_1)
c10fda07d68c04221c2d552dc71a2de1352074cbTinderbox User
0c27b3fe77ac1d5094ba3521e8142d9e7973133fMark Andrewsinclude $(WS_TOP)/make-rules/prep.mk
2dc5db0eb0ba6672fb1c23875e2a964e59c24cd1Tinderbox Userinclude $(WS_TOP)/make-rules/configure.mk
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austeininclude $(WS_TOP)/make-rules/ips.mk
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinCONFIGURE_OPTIONS += --infodir=$(CONFIGURE_INFODIR)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinCONFIGURE_OPTIONS += --disable-static
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinCONFIGURE_OPTIONS += CFLAGS="$(CFLAGS)"
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntCONFIGURE_OPTIONS += PERL="$(PERL)"
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntCOMPONENT_PREP_ACTION = (cd $(@D) ; ./bootstrap)
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
e02fa56849131911e9554133b17a5325b37d0828Michał Kępień# Remove the hard-wired compiler locations in the LTCC and two CC lines
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt# in the two versions of the libtool script.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntCOMPONENT_POST_INSTALL_ACTION = \
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt (for dir in $(PROTOUSRBINDIR) $(PROTOUSRBINDIR)/$(MACH64) ; do \
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt cd $$dir; \
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt /usr/gnu/bin/sed -i \
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt -e 's|^LTCC="/.*$$|LTCC="cc"|' \
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt -e 's|^CC="/.*$$|CC="cc"|' libtool ; \
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein done)
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt# Macros to configure, build, and install the old version for the time being.
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntBUILD_OLD_DIR_32 = $(COMPONENT_DIR)/build/$(COMPONENT_VERSION_1)-$(MACH32)
14a656f94b1fd0ababd84a772228dfa52276ba15Evan HuntBUILD_OLD_DIR_64 = $(COMPONENT_DIR)/build/$(COMPONENT_VERSION_1)-$(MACH64)
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt$(BUILD_OLD_DIR_32)/.configured: CONFIGURE_SCRIPT = $(SOURCE_DIR_1)/configure
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt$(BUILD_OLD_DIR_64)/.configured: CONFIGURE_SCRIPT = $(SOURCE_DIR_1)/configure
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt$(BUILD_OLD_DIR_32)/.configured: BITS=32
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt$(BUILD_OLD_DIR_64)/.configured: BITS=64
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinBUILD_32 += $(BUILD_OLD_DIR_32)/.built
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinBUILD_64 += $(BUILD_OLD_DIR_64)/.built
14a656f94b1fd0ababd84a772228dfa52276ba15Evan Hunt
30eec077db2bdcb6f2a0dc388a3cdde2ede75ec1Mark AndrewsINSTALL_32 += $(BUILD_OLD_DIR_32)/.installed
268a4475065fe6a8cd7cc707820982cf5e98f430Rob AusteinINSTALL_64 += $(BUILD_OLD_DIR_64)/.installed
8f7de3db7ec299ddeded142905f5eb1f22076353Evan Hunt
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein# install the old version first
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein$(BUILD_DIR_32)/.installed: $(BUILD_OLD_DIR_32)/.installed
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein$(BUILD_DIR_64)/.installed: $(BUILD_OLD_DIR_64)/.installed
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein# we need to prep the old version too (this should be handled in prep.mk)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein$(SOURCE_DIR_1)/.unpacked: download Makefile $(PATCHES)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein $(RM) -r $(SOURCE_DIR_1)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein $(UNPACK) $(UNPACK_ARGS) $(COMPONENT_ARCHIVE_1)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein $(TOUCH) $@
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein# prep the old version first
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein$(SOURCE_DIR)/.prep: $(SOURCE_DIR_1)/.prep
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein$(SOURCE_DIR_1)/.prep: $(SOURCE_DIR_1)/.unpacked
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein $(TOUCH) $@
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austeinprep:: $(SOURCE_DIR_1)/.prep
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein# common targets
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austeinbuild: $(BUILD_32_and_64)
268a4475065fe6a8cd7cc707820982cf5e98f430Rob Austein
b98225ff8a5721a998ccb440df4d261488fef163Mark Andrewsinstall: $(INSTALL_32_and_64)
b98225ff8a5721a998ccb440df4d261488fef163Mark Andrews
8f7de3db7ec299ddeded142905f5eb1f22076353Evan Hunttest: $(TEST_32_and_64)
ca6e60cb704c4c8eea1385a9fbef3eaa476eca28Evan Hunt
ca6e60cb704c4c8eea1385a9fbef3eaa476eca28Evan HuntBUILD_PKG_DEPENDENCIES = $(BUILD_TOOLS)
ca6e60cb704c4c8eea1385a9fbef3eaa476eca28Evan Hunt
ca6e60cb704c4c8eea1385a9fbef3eaa476eca28Evan Huntinclude $(WS_TOP)/make-rules/depend.mk
b98225ff8a5721a998ccb440df4d261488fef163Mark Andrews