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 |