4 # The contents of this file are subject to the terms of the
5 # Common Development and Distribution License (the "License").
6 # You may not use this file except in compliance with the License.
8 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 # or http://www.opensolaris.org/os/licensing.
10 # See the License for the specific language governing permissions
11 # and limitations under the License.
13 # When distributing Covered Code, include this CDDL HEADER in each
14 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 # If applicable, add the following below this CDDL HEADER, with the
16 # fields enclosed by brackets "[]" replaced with your own identifying
17 # information: Portions Copyright [yyyy] [name of copyright owner]
21 # Copyright (c) 2015-2017, Aurelien Larcher
25 include ..
/..
/..
/make-rules
/shared-macros.mk
27 COMPONENT_NAME
= lcms2
28 COMPONENT_MJR_VERSION
= 2.16
29 COMPONENT_VERSION
= $(COMPONENT_MJR_VERSION
)
30 COMPONENT_SUMMARY
= The Little Color Management System
31 COMPONENT_SRC
= $(COMPONENT_NAME
)-$(COMPONENT_VERSION
)
32 COMPONENT_PROJECT_URL
= https
://www.littlecms.com
/
33 COMPONENT_ARCHIVE
= $(COMPONENT_SRC
).
tar.gz
34 COMPONENT_ARCHIVE_HASH
= sha256
:d873d34ad8b9b4cea010631f1a6228d2087475e4dc5e763eb81acc23d9d45a51
35 COMPONENT_ARCHIVE_URL
= https
://sourceforge.net
/projects
/lcms
/files
/lcms
/$(COMPONENT_MJR_VERSION
)/$(COMPONENT_ARCHIVE
)
36 COMPONENT_FMRI
= library
/lcms2
37 COMPONENT_CLASSIFICATION
=System
/Libraries
38 COMPONENT_LICENSE
= MIT
39 COMPONENT_LICENSE_FILE
= LICENSE
41 include $(WS_MAKE_RULES
)/common.mk
43 # build with the distribution preferred libjpeg implementation
44 CFLAGS
+= $(JPEG_CPPFLAGS
) $(JPEG_CFLAGS
)
45 CXXFLAGS
+= $(JPEG_CPPFLAGS
) $(JPEG_CXXFLAGS
)
46 LDFLAGS
+= $(JPEG_LDFLAGS
)
48 # Seems that we have no other way to designate that we want large file support.
49 CFLAGS
+= $(CPP_LARGEFILES
)
51 # Need to ensure lcms custom chunk memory allocator aligns properly for all
52 # of our platforms - see _cmsALIGNMEM macro in src/lcms2_internal.h and
53 # _MAX_ALIGNMENT definition in per-platform sections of <sys/isa_defs.h>
54 CPPFLAGS
+= -DCMS_PTR_ALIGNMENT
=_MAX_ALIGNMENT
56 CONFIGURE_OPTIONS
+= --includedir=/usr
/include/lcms2
57 CONFIGURE_OPTIONS
+= --enable-shared
58 CONFIGURE_OPTIONS
+= --disable-static
59 CONFIGURE_OPTIONS
+= --with-jpeg
60 CONFIGURE_OPTIONS
+= --with-tiff
61 CONFIGURE_OPTIONS
+= --with-zlib
62 CONFIGURE_OPTIONS
+= --with-pic
64 COMPONENT_PRE_TEST_ACTION
= ( cd
$(@D
); $(MAKE
) -C testbed
clean )
66 COMPONENT_TEST_ARGS
= -k
-i
67 COMPONENT_TEST_TRANSFORMS
+= \
68 '-e "s|^.*test bed.*$$|XXX_REMOVE_XXX|g" ' \
69 '-e "s|^.*MPixel.*$$|XXX_REMOVE_XXX|g" ' \
70 '-e "s|^.*Single block hit.*$$|XXX_REMOVE_XXX|g" ' \
71 '-e "s|^.*$(CC).*$$|XXX_REMOVE_XXX|g" ' \
72 '-e "s|^.*source=.*libtool=no.*$$|XXX_REMOVE_XXX|g" ' \
73 '-e "s|^.*DEPDIR=.deps.*$$|XXX_REMOVE_XXX|g" ' \
74 '-e "s|^make.*(ignored)*$$|XXX_REMOVE_XXX|g" ' \
75 '-e "s|^make.*: Leaving directory.*$$|XXX_REMOVE_XXX|g" ' \
76 '-e "s|^make.*: Entering directory.*$$|XXX_REMOVE_XXX|g" ' \
77 '-e "/^XXX_REMOVE_XXX$$/d" '
79 # Auto-generated dependencies
80 REQUIRED_PACKAGES
+= $(JPEG_IMPLEM_PKG
)
81 REQUIRED_PACKAGES
+= image
/library
/libtiff
82 REQUIRED_PACKAGES
+= system
/library
83 REQUIRED_PACKAGES
+= system
/library
/math