--- a/components/p7zip/Makefile Wed Sep 07 00:15:35 2016 -0700
+++ b/components/p7zip/Makefile Wed Jul 27 11:32:28 2016 -0700
@@ -20,24 +20,29 @@
#
#
-# Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
#
+# When building with Studio, p7zip has many warnings about extra semicolons,
+# and at least one hard error due to an extra semicolon. It also suffers from
+# the pragma pack push/pop problem (15358176).
+COMPILER= gcc
+
include ../../make-rules/shared-macros.mk
PATH=$(SPRO_VROOT)/bin:/usr/bin:/usr/gnu/bin
COMPONENT_NAME= p7zip
-COMPONENT_VERSION= 9.20.1
+COMPONENT_VERSION= 15.14.1
COMPONENT_PROJECT_URL= http://p7zip.sourceforge.net/
COMPONENT_SRC= $(COMPONENT_NAME)_$(COMPONENT_VERSION)
COMPONENT_ARCHIVE= $(COMPONENT_SRC)_src_all.tar.bz2
COMPONENT_ARCHIVE_HASH= \
- sha256:49557e7ffca08100f9fc687f4dfc5aea703ca207640c76d9dee7b66f03cb4782
+ sha256:699db4da3621904113e040703220abb1148dfef477b55305e2f14a4f1f8f25d4
COMPONENT_ARCHIVE_URL= http://downloads.sourceforge.net/project/p7zip/p7zip/$(COMPONENT_VERSION)/$(COMPONENT_ARCHIVE)
COMPONENT_BUGDB= utility/p7zip
-TPNO= 20368
+TPNO= 27905
include $(WS_MAKE_RULES)/prep.mk
include $(WS_MAKE_RULES)/justmake.mk
@@ -47,35 +52,41 @@
COMPONENT_BUILD_TARGETS = all3
COMPONENT_INSTALL_ARGS += DEST_HOME=/usr DEST_DIR=$(PROTO_DIR)
-$(SOURCE_DIR)/DOCS/copying.txt $(SOURCE_DIR)/DOCS/unRarLicense.txt: prep
+# -Bdirect breaks x86 binaries - exceptions are not caught
+LD_B_DIRECT=
-$(BUILD_DIR)/%: $(SOURCE_DIR)/DOCS/%
+$(SOURCE_DIR)/DOC/copying.txt $(SOURCE_DIR)/DOC/unRarLicense.txt: prep
+
+$(BUILD_DIR)/%: $(SOURCE_DIR)/DOC/%
$(CP) $< $@
-$(BUILD_DIR)/copying.txt: $(SOURCE_DIR)/DOCS/copying.txt
- $(CP) $(SOURCE_DIR)/DOCS/copying.txt $@
+$(BUILD_DIR)/copying.txt: $(SOURCE_DIR)/DOC/copying.txt
+ $(CP) $(SOURCE_DIR)/DOC/copying.txt $@
+
+ASLR_MODE = $(ASLR_ENABLE)
# common targets
-build: $(BUILD_32)
+build: $(BUILD_64)
EXTRATARGETS = \
$(BUILD_DIR)/copying.txt $(BUILD_DIR)/unRarLicense.txt
-install: build $(INSTALL_32) $(EXTRATARGETS)
+install: build $(INSTALL_64) $(EXTRATARGETS)
# When p7zip's install target is run, it creates all its directories mode 555,
# so they're impossible to remove without adding the write bit first.
COMPONENT_POST_INSTALL_ACTION += $(CHMOD) -R u+w $(PROTO_DIR)
# build does this always
-test: $(BUILD_32)
- cd $(BUILD_DIR_32) && $(MAKE) -e test P7ZIP_HOME_DIR=$(BUILD_DIR_32)/bin
- cd $(BUILD_DIR_32) && $(MAKE) -e test_7z P7ZIP_HOME_DIR=$(BUILD_DIR_32)/bin
- cd $(BUILD_DIR_32) && $(MAKE) -e test_7zr P7ZIP_HOME_DIR=$(BUILD_DIR_32)/bin
+test: $(BUILD_64)
+ cd $(BUILD_DIR_64) && $(MAKE) -e test P7ZIP_HOME_DIR=$(BUILD_DIR_64)/bin
+ cd $(BUILD_DIR_64) && $(MAKE) -e test_7z P7ZIP_HOME_DIR=$(BUILD_DIR_64)/bin
+ cd $(BUILD_DIR_64) && $(MAKE) -e test_7zr P7ZIP_HOME_DIR=$(BUILD_DIR_64)/bin
REQUIRED_PACKAGES += shell/ksh93
REQUIRED_PACKAGES += system/library
-REQUIRED_PACKAGES += system/library/c++-runtime
+REQUIRED_PACKAGES += system/library/gcc/gcc-c++-runtime
+REQUIRED_PACKAGES += system/library/gcc/gcc-c-runtime
REQUIRED_PACKAGES += system/library/math