components/imagemagick/Makefile
changeset 3798 c0f7a9f723ca
parent 2225 f064d3d3190d
child 3817 30b42c38bbc4
equal deleted inserted replaced
3776:b70e2d3bcc71 3798:c0f7a9f723ca
    18 #
    18 #
    19 # CDDL HEADER END
    19 # CDDL HEADER END
    20 #
    20 #
    21 
    21 
    22 #
    22 #
    23 # Copyright (c) 2011, 2014, Oracle and/or its affiliates. All rights reserved.
    23 # Copyright (c) 2011, 2015, Oracle and/or its affiliates. All rights reserved.
    24 #
    24 #
    25 
    25 
    26 include ../../make-rules/shared-macros.mk
    26 include ../../make-rules/shared-macros.mk
    27 
    27 
    28 COMPONENT_NAME=			ImageMagick
    28 COMPONENT_NAME=			ImageMagick
    45 
    45 
    46 PATH=$(SPRO_VROOT)/bin:/usr/bin:/usr/gnu/bin
    46 PATH=$(SPRO_VROOT)/bin:/usr/bin:/usr/gnu/bin
    47 
    47 
    48 # IPS_COMPONENT_VERSION is by default set to $(COMPONENT_VERSION) but in
    48 # IPS_COMPONENT_VERSION is by default set to $(COMPONENT_VERSION) but in
    49 # this case we need to replace the '-' by '.'.
    49 # this case we need to replace the '-' by '.'.
    50 #
       
    51 IPS_COMPONENT_VERSION=	$(COMPONENT_VERSION).$(COMPONENT_SUBVERSION)
    50 IPS_COMPONENT_VERSION=	$(COMPONENT_VERSION).$(COMPONENT_SUBVERSION)
    52 
    51 
    53 COMPONENT_POST_UNPACK_ACTION= ( $(MV) $(COMPONENT_SRC)-$(COMPONENT_SUBVERSION) \
    52 COMPONENT_POST_UNPACK_ACTION= ( $(MV) $(COMPONENT_SRC)-$(COMPONENT_SUBVERSION) \
    54     $(COMPONENT_SRC))
    53     $(COMPONENT_SRC))
    55 
    54 
    56 # To get the Perl modules built it is necessary to copy the PerlMagick directory
    55 # To get the Perl modules built it is necessary to copy the PerlMagick directory
    57 # to the build directory
    56 # to the build directory
    58 #
       
    59 COMPONENT_PRE_CONFIGURE_ACTION= ($(CP) -R $(SOURCE_DIR)/PerlMagick $(@D))
    57 COMPONENT_PRE_CONFIGURE_ACTION= ($(CP) -R $(SOURCE_DIR)/PerlMagick $(@D))
    60 
    58 
    61 LIBS += -lsocket -lnsl
       
    62 CONFIGURE_ENV += LIBS="$(LIBS)"
       
    63 
       
    64 # Show name of "error tag" as part of the warning
    59 # Show name of "error tag" as part of the warning
    65 #
       
    66 CFLAGS += -errtags=yes
    60 CFLAGS += -errtags=yes
    67 # To remove the complier complaints about __restrict keyword,
    61 # To remove the compiler complaints about __restrict keyword,
    68 # -D_magickcore_restrict should be used.
    62 # -D_magickcore_restrict should be used.
    69 CFLAGS += -xc99=%all -D_magickcore_restrict=
    63 CFLAGS += -xc99=%all -D_magickcore_restrict=
    70 
    64 
    71 # Needed to generate a decent RUNPATH for Magick.so
    65 # Needed to generate a decent RUNPATH for Magick.so
    72 #
    66 #
    81 CONFIGURE_OPTIONS+= --without-gvc
    75 CONFIGURE_OPTIONS+= --without-gvc
    82 CONFIGURE_OPTIONS+= --disable-openmp
    76 CONFIGURE_OPTIONS+= --disable-openmp
    83 # Using option 'with-fontconfig=no' so that the fonts/fonts path specified in
    77 # Using option 'with-fontconfig=no' so that the fonts/fonts path specified in
    84 # configuration file 'type-ghostscript.xml' is being used.
    78 # configuration file 'type-ghostscript.xml' is being used.
    85 CONFIGURE_OPTIONS+= --with-fontconfig=no
    79 CONFIGURE_OPTIONS+= --with-fontconfig=no
    86 # Configure option 'with-gs-font-dir' is required because some build systems might 
    80 # Configure option 'with-gs-font-dir' is required because some build systems
    87 # not have ghostscript fonts installed.
    81 # might not have ghostscript fonts installed.
    88 CONFIGURE_OPTIONS+= --with-gs-font-dir="/usr/share/ghostscript/fonts"
    82 CONFIGURE_OPTIONS+= --with-gs-font-dir="/usr/share/ghostscript/fonts"
    89 CONFIGURE_OPTIONS+= --x-libraries=$(CONFIGURE_LIBDIR.$(BITS)) 
    83 CONFIGURE_OPTIONS+= --x-libraries=$(CONFIGURE_LIBDIR.$(BITS)) 
    90 CONFIGURE_OPTIONS.32+= --with-perl=$(PERL)
    84 CONFIGURE_OPTIONS.32+= --with-perl=$(PERL)
    91 CONFIGURE_OPTIONS.32+= --with-perl-options="INSTALLDIRS=vendor"
    85 CONFIGURE_OPTIONS.32+= --with-perl-options="INSTALLDIRS=vendor"
    92 CONFIGURE_OPTIONS.64+= --without-perl
    86 CONFIGURE_OPTIONS.64+= --without-perl
    93 
    87 
    94 # common targets
    88 # Needed for "gmake test" to work successfully.  If SHELLOPTS is exported (as
    95 #
    89 # it is by the Userland Makefiles), then all shell options get exported to
       
    90 # child invocations of bash, which results in test failures due to nounset and
       
    91 # xtrace being set unexpectedly, and errors such as "$1: unbound variable" and
       
    92 # diffs failing due to script tracing in output files.
       
    93 unexport SHELLOPTS
       
    94 
       
    95 # Tests hang waiting for input unless stdin is redirected.
       
    96 COMPONENT_TEST_TARGETS = check < /dev/null
       
    97 
       
    98 ASLR_MODE = $(ASLR_ENABLE)
       
    99 
    96 configure:	$(CONFIGURE_32_and_64)
   100 configure:	$(CONFIGURE_32_and_64)
    97 
   101 
    98 build:		$(BUILD_32_and_64)
   102 build:		$(BUILD_32_and_64)
    99 
   103 
   100 # Remove build machine runpath from libMagick++-6.Q16.so.1.0.0 and
   104 # Remove build machine runpath from libMagick++-6.Q16.so.1.0.0 and
   115 	/usr/bin/elfedit -e 'dyn:delete RPATH' \
   119 	/usr/bin/elfedit -e 'dyn:delete RPATH' \
   116 	    $(PROTO_DIR)/usr/lib/libMagickCore-6.Q16.so.1.0.0; \
   120 	    $(PROTO_DIR)/usr/lib/libMagickCore-6.Q16.so.1.0.0; \
   117 	/usr/bin/elfedit -e 'dyn:delete RPATH' \
   121 	/usr/bin/elfedit -e 'dyn:delete RPATH' \
   118 	    $(PROTO_DIR)/usr/lib/$(MACH64)/libMagickCore-6.Q16.so.1.0.0
   122 	    $(PROTO_DIR)/usr/lib/$(MACH64)/libMagickCore-6.Q16.so.1.0.0
   119 
   123 
   120 # ImageMagick tests have hard-coded absolute paths inside, so essentially they
   124 test:		$(TEST_32_and_64)
   121 # can be run only after ImageMagick is actually installed and this is not 
       
   122 # possible, so the tests are not invoked.
       
   123 #
       
   124 test:		$(NO_TESTS)
       
   125 	@echo "Tests can be run only after ImageMagick is installed."
       
   126 
   125 
   127 BUILD_PKG_DEPENDENCIES= $(BUILD_TOOLS)
   126 BUILD_PKG_DEPENDENCIES= $(BUILD_TOOLS)
   128 
   127 
   129 include ../../make-rules/depend.mk
   128 include ../../make-rules/depend.mk