components/p7zip/Makefile
changeset 5923 125ce0e23ed8
parent 5682 94c0ca64c022
child 7053 6416ca905309
equal deleted inserted replaced
5922:bf5786b452ad 5923:125ce0e23ed8
    21 
    21 
    22 #
    22 #
    23 # Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
    23 # Copyright (c) 2011, 2016, Oracle and/or its affiliates. All rights reserved.
    24 #
    24 #
    25 BUILD_BITS= 64
    25 BUILD_BITS= 64
       
    26 # When building with Studio, p7zip has many warnings about extra semicolons,
       
    27 # and at least one hard error due to an extra semicolon.  It also suffers from
       
    28 # the pragma pack push/pop problem (15358176).
       
    29 COMPILER= gcc
    26 include ../../make-rules/shared-macros.mk
    30 include ../../make-rules/shared-macros.mk
    27 
    31 
    28 ifeq   ($(strip $(PARFAIT_BUILD)),yes)
    32 ifeq   ($(strip $(PARFAIT_BUILD)),yes)
    29 PATH=$(PARFAIT_TOOLS):$(SPRO_VROOT)/bin:$(USRBINDIR)
    33 PATH=$(PARFAIT_TOOLS):$(SPRO_VROOT)/bin:$(USRBINDIR)
    30 else
    34 else
    31 PATH=$(SPRO_VROOT)/bin:$(USRBINDIR):$(GNUBIN)
    35 PATH=$(SPRO_VROOT)/bin:$(USRBINDIR):$(GNUBIN)
    32 endif
    36 endif
    33 
    37 
    34 COMPONENT_NAME=		p7zip
    38 COMPONENT_NAME=		p7zip
    35 COMPONENT_VERSION=	9.20.1
    39 COMPONENT_VERSION=	15.14.1
    36 COMPONENT_PROJECT_URL=	http://p7zip.sourceforge.net/
    40 COMPONENT_PROJECT_URL=	http://p7zip.sourceforge.net/
    37 COMPONENT_SRC=		$(COMPONENT_NAME)_$(COMPONENT_VERSION)
    41 COMPONENT_SRC=		$(COMPONENT_NAME)_$(COMPONENT_VERSION)
    38 COMPONENT_ARCHIVE=	$(COMPONENT_SRC)_src_all.tar.bz2
    42 COMPONENT_ARCHIVE=	$(COMPONENT_SRC)_src_all.tar.bz2
    39 COMPONENT_ARCHIVE_HASH=	\
    43 COMPONENT_ARCHIVE_HASH=	\
    40     sha256:49557e7ffca08100f9fc687f4dfc5aea703ca207640c76d9dee7b66f03cb4782
    44     sha256:699db4da3621904113e040703220abb1148dfef477b55305e2f14a4f1f8f25d4
    41 COMPONENT_ARCHIVE_URL=	http://downloads.sourceforge.net/project/p7zip/p7zip/$(COMPONENT_VERSION)/$(COMPONENT_ARCHIVE)
    45 COMPONENT_ARCHIVE_URL=	http://downloads.sourceforge.net/p7zip/$(COMPONENT_ARCHIVE)
    42 
    46 
    43 TPNO=			20368
    47 TPNO=			27905
    44 
    48 
    45 BUILD_STYLE= justmake
    49 BUILD_STYLE= justmake
    46 INSTALL_TARGET=
    50 INSTALL_TARGET=
    47 include $(WS_MAKE_RULES)/common.mk
    51 include $(WS_MAKE_RULES)/common.mk
    48 
       
    49 # the tests fail horribly with -Bdirect
       
    50 LD_B_DIRECT=
       
    51 
    52 
    52 COMPONENT_TEST_DIR =		$(@D)
    53 COMPONENT_TEST_DIR =		$(@D)
    53 COMPONENT_TEST_ENV =		P7ZIP_HOME_DIR=$(BUILD_DIR)/$(MACH$(BITS))/bin
    54 COMPONENT_TEST_ENV =		P7ZIP_HOME_DIR=$(BUILD_DIR)/$(MACH$(BITS))/bin
    54 COMPONENT_TEST_TARGETS =	test test_7z test_7zr
    55 COMPONENT_TEST_TARGETS =	test test_7z test_7zr
    55 
    56 
    56 COMPONENT_PREP_ACTION = (cd $(@D); cp ../makefile.solaris makefile.machine)
    57 COMPONENT_PREP_ACTION = (cd $(@D); cp ../makefile.solaris makefile.machine)
    57 COMPONENT_BUILD_TARGETS = all3
    58 COMPONENT_BUILD_TARGETS = all3
    58 COMPONENT_INSTALL_ARGS += DEST_HOME=$(USRDIR) DEST_DIR=$(PROTO_DIR)
    59 COMPONENT_INSTALL_ARGS += DEST_HOME=$(USRDIR) DEST_DIR=$(PROTO_DIR)
    59 
    60 
    60 $(SOURCE_DIR)/DOCS/copying.txt $(SOURCE_DIR)/DOCS/unRarLicense.txt: prep
    61 $(SOURCE_DIR)/DOC/copying.txt $(SOURCE_DIR)/DOC/unRarLicense.txt: prep
    61 
    62 
    62 $(BUILD_DIR)/%: $(SOURCE_DIR)/DOCS/%
    63 $(BUILD_DIR)/%: $(SOURCE_DIR)/DOC/%
    63 	$(CP) $< $@
    64 	$(CP) $< $@
    64 
    65 
    65 $(BUILD_DIR)/copying.txt: $(SOURCE_DIR)/DOCS/copying.txt
    66 $(BUILD_DIR)/copying.txt: $(SOURCE_DIR)/DOC/copying.txt
    66 	$(CP) $(SOURCE_DIR)/DOCS/copying.txt $@
    67 	$(CP) $(SOURCE_DIR)/DOC/copying.txt $@
    67 
    68 
    68 # common targets
    69 # common targets
    69 EXTRATARGETS = \
    70 EXTRATARGETS = \
    70 	$(BUILD_DIR)/copying.txt $(BUILD_DIR)/unRarLicense.txt
    71 	$(BUILD_DIR)/copying.txt $(BUILD_DIR)/unRarLicense.txt
    71 
    72 
    72 install:	build $(INSTALL_64) $(EXTRATARGETS)
    73 install:	build $(INSTALL_64) $(EXTRATARGETS)
    73 
    74 
    74 # When p7zip's install target is run, it creates all its directories mode 555,
       
    75 # so they're impossible to remove without adding the write bit first.
       
    76 COMPONENT_POST_INSTALL_ACTION += $(CHMOD) -R u+w $(PROTO_DIR);
       
    77 # 7zr.1 is in DOS format for some reason, and geqn can't handle it.
    75 # 7zr.1 is in DOS format for some reason, and geqn can't handle it.
    78 COMPONENT_POST_INSTALL_ACTION += $(GSED) -i -e 's/\r//' $(PROTO_DIR)/usr/man/man1/7zr.1
    76 COMPONENT_POST_INSTALL_ACTION += $(GSED) -i -e 's/\r//' $(PROTO_DIR)/usr/man/man1/7zr.1
    79 
    77 
    80 REQUIRED_PACKAGES += shell/ksh93
    78 REQUIRED_PACKAGES += shell/ksh93
    81 REQUIRED_PACKAGES += system/library/c++-runtime
    79 REQUIRED_PACKAGES += system/library/gcc/gcc-c++-runtime
       
    80 REQUIRED_PACKAGES += system/library/gcc/gcc-c-runtime
    82 REQUIRED_PACKAGES += system/library/math
    81 REQUIRED_PACKAGES += system/library/math