Makefile revision 919
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync#
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# CDDL HEADER START
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync#
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# The contents of this file are subject to the terms of the
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# Common Development and Distribution License (the "License").
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# You may not use this file except in compliance with the License.
e64031e20c39650a7bc902a3e1aba613b9415deevboxsync#
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# or http://www.opensolaris.org/os/licensing.
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# See the License for the specific language governing permissions
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# and limitations under the License.
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync#
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# When distributing Covered Code, include this CDDL HEADER in each
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# If applicable, add the following below this CDDL HEADER, with the
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# fields enclosed by brackets "[]" replaced with your own identifying
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# information: Portions Copyright [yyyy] [name of copyright owner]
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync#
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# CDDL HEADER END
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync#
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync#
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync#
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncinclude ../../make-rules/shared-macros.mk
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCOMPONENT_NAME= libtool
058e9c6d97c5306126f83d934148c658804f1d6cvboxsyncCOMPONENT_VERSION= 2.4.2
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCOMPONENT_PROJECT_URL= http://www.gnu.org/software/libtool/
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCOMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCOMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCOMPONENT_ARCHIVE_HASH= \
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync sha256:b38de44862a987293cd3d8dfae1c409d514b6c4e794ebc93648febf9afc38918
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCOMPONENT_ARCHIVE_URL= http://ftp.gnu.org/gnu/$(COMPONENT_NAME)/$(COMPONENT_ARCHIVE)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# For now, we want to continue to provide the libltdl.so's (and their
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# links) from libtool 1.5.22.
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync#
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCOMPONENT_VERSION_1 = 1.5.22
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCOMPONENT_SRC_1 = $(COMPONENT_NAME)-$(COMPONENT_VERSION_1)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCOMPONENT_ARCHIVE_1 = $(COMPONENT_SRC_1).tar.gz
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCOMPONENT_ARCHIVE_HASH_1 = \
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync sha256:88e9ffaaade21c1ddaf6297723dd2fb4ca18ccaef0499a28b6e672f02c8ceb5d
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCOMPONENT_ARCHIVE_URL_1 = http://ftp.gnu.org/gnu/$(COMPONENT_NAME)/$(COMPONENT_ARCHIVE_1)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncSOURCE_DIR_1 = $(COMPONENT_DIR)/$(COMPONENT_SRC_1)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncinclude $(WS_TOP)/make-rules/prep.mk
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncinclude $(WS_TOP)/make-rules/configure.mk
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncinclude $(WS_TOP)/make-rules/ips.mk
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCONFIGURE_OPTIONS += --infodir=$(CONFIGURE_INFODIR)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCONFIGURE_OPTIONS += --disable-static
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCONFIGURE_OPTIONS += CFLAGS="$(CFLAGS)"
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCONFIGURE_OPTIONS += PERL="$(PERL)"
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCOMPONENT_PREP_ACTION = (cd $(@D) ; ./bootstrap)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# Remove the hard-wired compiler locations in the LTCC and two CC lines
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# in the two versions of the libtool script.
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCOMPONENT_POST_INSTALL_ACTION = \
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync (for dir in $(PROTOUSRBINDIR) $(PROTOUSRBINDIR)/$(MACH64) ; do \
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync cd $$dir; \
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync /usr/gnu/bin/sed -i \
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync -e 's|^LTCC="/.*$$|LTCC="cc"|' \
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync -e 's|^CC="/.*$$|CC="cc"|' libtool ; \
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync done)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# Macros to configure, build, and install the old version for the time being.
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncBUILD_OLD_DIR_32 = $(COMPONENT_DIR)/build/$(COMPONENT_VERSION_1)-$(MACH32)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncBUILD_OLD_DIR_64 = $(COMPONENT_DIR)/build/$(COMPONENT_VERSION_1)-$(MACH64)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync$(BUILD_OLD_DIR_32)/.configured: CONFIGURE_SCRIPT = $(SOURCE_DIR_1)/configure
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync$(BUILD_OLD_DIR_64)/.configured: CONFIGURE_SCRIPT = $(SOURCE_DIR_1)/configure
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync$(BUILD_OLD_DIR_32)/.configured: BITS=32
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync$(BUILD_OLD_DIR_64)/.configured: BITS=64
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncBUILD_32 += $(BUILD_OLD_DIR_32)/.built
32bf313cd8c0de52ef27b486f15945c55c94b038vboxsyncBUILD_64 += $(BUILD_OLD_DIR_64)/.built
e66c95fa9950a4d9c567db63a4a495bf086cc4bfvboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncINSTALL_32 += $(BUILD_OLD_DIR_32)/.installed
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncINSTALL_64 += $(BUILD_OLD_DIR_64)/.installed
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# install the old version first
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync$(BUILD_DIR_32)/.installed: $(BUILD_OLD_DIR_32)/.installed
f0bff7899265b70fd1f37183a90d4c264b4cf593vboxsync$(BUILD_DIR_64)/.installed: $(BUILD_OLD_DIR_64)/.installed
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# we need to prep the old version too (this should be handled in prep.mk)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync$(SOURCE_DIR_1)/.unpacked: download Makefile $(PATCHES)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync $(RM) -r $(SOURCE_DIR_1)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync $(UNPACK) $(UNPACK_ARGS) $(COMPONENT_ARCHIVE_1)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync $(TOUCH) $@
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# prep the old version first
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync$(SOURCE_DIR)/.prep: $(SOURCE_DIR_1)/.prep
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync$(SOURCE_DIR_1)/.prep: $(SOURCE_DIR_1)/.unpacked
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync $(TOUCH) $@
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncprep:: $(SOURCE_DIR_1)/.prep
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncCLEAN_PATHS += $(SOURCE_DIR_1)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync# common targets
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncbuild: $(BUILD_32_and_64)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
d4e47db9ac03c394fdff9508b2bd919cd4db1943vboxsyncinstall: $(INSTALL_32_and_64)
d4e47db9ac03c394fdff9508b2bd919cd4db1943vboxsync
d4e47db9ac03c394fdff9508b2bd919cd4db1943vboxsynctest: $(TEST_32_and_64)
d4e47db9ac03c394fdff9508b2bd919cd4db1943vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncBUILD_PKG_DEPENDENCIES = $(BUILD_TOOLS)
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsyncinclude $(WS_TOP)/make-rules/depend.mk
41a839133aad7c96a0d55d927dc3475d0cbe9c22vboxsync