components/p7zip/Makefile
changeset 5923 125ce0e23ed8
parent 5682 94c0ca64c022
child 7053 6416ca905309
--- a/components/p7zip/Makefile	Thu Apr 28 12:09:29 2016 -0700
+++ b/components/p7zip/Makefile	Fri Apr 29 10:29:28 2016 -0700
@@ -23,6 +23,10 @@
 # Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
 #
 BUILD_BITS= 64
+# 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
 
 ifeq   ($(strip $(PARFAIT_BUILD)),yes)
@@ -32,23 +36,20 @@
 endif
 
 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
-COMPONENT_ARCHIVE_URL=	http://downloads.sourceforge.net/project/p7zip/p7zip/$(COMPONENT_VERSION)/$(COMPONENT_ARCHIVE)
+    sha256:699db4da3621904113e040703220abb1148dfef477b55305e2f14a4f1f8f25d4
+COMPONENT_ARCHIVE_URL=	http://downloads.sourceforge.net/p7zip/$(COMPONENT_ARCHIVE)
 
-TPNO=			20368
+TPNO=			27905
 
 BUILD_STYLE= justmake
 INSTALL_TARGET=
 include $(WS_MAKE_RULES)/common.mk
 
-# the tests fail horribly with -Bdirect
-LD_B_DIRECT=
-
 COMPONENT_TEST_DIR =		$(@D)
 COMPONENT_TEST_ENV =		P7ZIP_HOME_DIR=$(BUILD_DIR)/$(MACH$(BITS))/bin
 COMPONENT_TEST_TARGETS =	test test_7z test_7zr
@@ -57,13 +58,13 @@
 COMPONENT_BUILD_TARGETS = all3
 COMPONENT_INSTALL_ARGS += DEST_HOME=$(USRDIR) DEST_DIR=$(PROTO_DIR)
 
-$(SOURCE_DIR)/DOCS/copying.txt $(SOURCE_DIR)/DOCS/unRarLicense.txt: prep
+$(SOURCE_DIR)/DOC/copying.txt $(SOURCE_DIR)/DOC/unRarLicense.txt: prep
 
-$(BUILD_DIR)/%: $(SOURCE_DIR)/DOCS/%
+$(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 $@
 
 # common targets
 EXTRATARGETS = \
@@ -71,12 +72,10 @@
 
 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);
 # 7zr.1 is in DOS format for some reason, and geqn can't handle it.
 COMPONENT_POST_INSTALL_ACTION += $(GSED) -i -e 's/\r//' $(PROTO_DIR)/usr/man/man1/7zr.1
 
 REQUIRED_PACKAGES += shell/ksh93
-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