--- a/components/libtool/Makefile Mon Feb 27 10:14:30 2012 -0800
+++ b/components/libtool/Makefile Mon Feb 27 12:39:13 2012 -0800
@@ -20,19 +20,29 @@
#
#
-# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
#
include ../../make-rules/shared-macros.mk
COMPONENT_NAME= libtool
-COMPONENT_VERSION= 1.5.22
+COMPONENT_VERSION= 2.4.2
COMPONENT_PROJECT_URL= http://www.gnu.org/software/libtool/
COMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
COMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
-COMPONENT_ARCHIVE_HASH= sha1:17353e66aeaac80ae188ea0a3a90609550ce3254
+COMPONENT_ARCHIVE_HASH= sha1:22b71a8b5ce3ad86e1094e7285981cae10e6ff88
COMPONENT_ARCHIVE_URL= http://ftp.gnu.org/gnu/$(COMPONENT_NAME)/$(COMPONENT_ARCHIVE)
+# For now, we want to continue to provide the libltdl.so's (and their
+# links) from libtool 1.5.22.
+#
+COMPONENT_VERSION_1 = 1.5.22
+COMPONENT_SRC_1 = $(COMPONENT_NAME)-$(COMPONENT_VERSION_1)
+COMPONENT_ARCHIVE_1 = $(COMPONENT_SRC_1).tar.gz
+COMPONENT_ARCHIVE_HASH_1 = sha1:17353e66aeaac80ae188ea0a3a90609550ce3254
+COMPONENT_ARCHIVE_URL_1 = http://ftp.gnu.org/gnu/$(COMPONENT_NAME)/$(COMPONENT_ARCHIVE_1)
+SOURCE_DIR_1 = $(COMPONENT_DIR)/$(COMPONENT_SRC_1)
+
include $(WS_TOP)/make-rules/prep.mk
include $(WS_TOP)/make-rules/configure.mk
include $(WS_TOP)/make-rules/ips.mk
@@ -42,6 +52,42 @@
CONFIGURE_OPTIONS += CFLAGS="$(CFLAGS)"
CONFIGURE_OPTIONS += PERL="$(PERL)"
+COMPONENT_PREP_ACTION = (cd $(@D) ; ./bootstrap)
+
+# Macros to configure, build, and install the old version for the time being.
+BUILD_OLD_DIR_32 = $(COMPONENT_DIR)/build/$(COMPONENT_VERSION_1)-$(MACH32)
+BUILD_OLD_DIR_64 = $(COMPONENT_DIR)/build/$(COMPONENT_VERSION_1)-$(MACH64)
+
+$(BUILD_OLD_DIR_32)/.configured: CONFIGURE_SCRIPT = $(SOURCE_DIR_1)/configure
+$(BUILD_OLD_DIR_64)/.configured: CONFIGURE_SCRIPT = $(SOURCE_DIR_1)/configure
+$(BUILD_OLD_DIR_32)/.configured: BITS=32
+$(BUILD_OLD_DIR_64)/.configured: BITS=64
+
+BUILD_32 += $(BUILD_OLD_DIR_32)/.built
+BUILD_64 += $(BUILD_OLD_DIR_64)/.built
+
+INSTALL_32 += $(BUILD_OLD_DIR_32)/.installed
+INSTALL_64 += $(BUILD_OLD_DIR_64)/.installed
+
+# install the old version first
+$(BUILD_DIR_32)/.installed: $(BUILD_OLD_DIR_32)/.installed
+$(BUILD_DIR_64)/.installed: $(BUILD_OLD_DIR_64)/.installed
+
+# we need to prep the old version too (this should be handled in prep.mk)
+$(SOURCE_DIR_1)/.unpacked: download Makefile $(PATCHES)
+ $(RM) -r $(SOURCE_DIR_1)
+ $(UNPACK) $(UNPACK_ARGS) $(COMPONENT_ARCHIVE_1)
+ $(TOUCH) [email protected]
+
+# prep the old version first
+$(SOURCE_DIR)/.prep: $(SOURCE_DIR_1)/.prep
+
+$(SOURCE_DIR_1)/.prep: $(SOURCE_DIR_1)/.unpacked
+ $(TOUCH) [email protected]
+
+prep:: $(SOURCE_DIR_1)/.prep
+
+
# common targets
build: $(BUILD_32_and_64)