3 # The contents of this file are subject to the terms of the
4 # Common Development and Distribution License (the "License").
5 # You may not use this file except in compliance with the License.
7 # You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
8 # or http://www.opensolaris.org/os/licensing.
9 # See the License for the specific language governing permissions
10 # and limitations under the License.
12 # When distributing Covered Code, include this CDDL HEADER in each
13 # file and include the License file at usr/src/OPENSOLARIS.LICENSE.
14 # If applicable, add the following below this CDDL HEADER, with the
15 # fields enclosed by brackets "[]" replaced with your own identifying
16 # information: Portions Copyright [yyyy] [name of copyright owner]
22 # Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
23 # Copyright (c) 2016, Aurelien Larcher. All rights reserved.
24 # Copyright (c) 2019, Michal Nowak
28 USE_DEFAULT_TEST_TRANSFORMS
= yes
29 include ..
/..
/..
/make-rules
/shared-macros.mk
32 COMPONENT_VERSION
= 4.2.1
33 COMPONENT_SUMMARY
= The GNU Multiple Precision with IEEE Rounding Floating-Point Library
34 COMPONENT_PROJECT_URL
= https
://www.mpfr.org
/
35 COMPONENT_SRC
= $(COMPONENT_NAME
)-$(COMPONENT_VERSION
)
36 COMPONENT_ARCHIVE
= $(COMPONENT_SRC
).
tar.bz2
37 COMPONENT_ARCHIVE_URL
= $(COMPONENT_PROJECT_URL
)$(COMPONENT_SRC
)/$(COMPONENT_ARCHIVE
)
38 COMPONENT_ARCHIVE_HASH
= sha256
:b9df93635b20e4089c29623b19420c4ac848a1b29df1cfd59f26cab0d2666aa0
39 COMPONENT_FMRI
= library
/mpfr
40 COMPONENT_CLASSIFICATION
=Development
/High Performance Computing
41 COMPONENT_LICENSE
= LGPLv2.1
,GPLv2
,FDLv1.2
43 include $(WS_MAKE_RULES
)/common.mk
46 #IPS_COMPONENT_VERSION= $(COMPONENT_VERSION).$(MPFR_PATCHLEVEL)
47 #HUMAN_VERSION= $(COMPONENT_VERSION)-p$(MPFR_PATCHLEVEL)
49 PATH
= $(dir $(CC
)):$(PATH.illumos
)
51 CFLAGS
+= $(CPP_C99_EXTENDED_MATH
)
52 CFLAGS
+= -std
=c99
$(CPP_XPG6MODE
)
53 LDFLAGS
+= $(LD_Z_REDLOCSYM
) $(LD_Z_RESCAN_NOW
)
55 MPN32_i386
= x86
/pentium x86 generic
56 MPN64_i386
= x86_64
/pentium4 x86_64 generic
57 MPN32_sparc
= sparc32
/v9 sparc32 generic
58 MPN64_sparc
= sparc64
/ultrasparc34 sparc64
/ultrasparc1234 sparc64 generic
59 MPN32
= $(MPN32_
$(MACH
))
60 MPN64
= $(MPN64_
$(MACH
))
62 GMPLIBDIR_32
= /usr
/lib
63 GMPLIBDIR_64
= /usr
/lib
/$(MACH64
)
66 CONFIGURE_ENV
+= CPPFLAGS
="$(CPPFLAGS)"
67 CONFIGURE_ENV
+= LD
="$(CC) $(CFLAGS) $(LDFLAGS)"
68 CONFIGURE_ENV
+= CPP
="$(CC) $(CPPFLAGS) $(CFLAGS) -E"
69 CONFIGURE_ENV
+= INSTALL
="$(INSTALL)"
70 CONFIGURE_ENV
+= SED
="$(GSED)"
71 CONFIGURE_ENV
+= ABI
="$(BITS)"
72 CONFIGURE_ENV
+= "MPN_PATH=$(MPN_$(BITS))"
74 CONFIGURE_OPTIONS
+= --localstatedir
=/var
75 CONFIGURE_OPTIONS
+= --enable-shared
76 CONFIGURE_OPTIONS
+= --disable-static
77 CONFIGURE_OPTIONS
+= --disable-libtool-lock
78 CONFIGURE_OPTIONS
+= --enable-thread-safe
79 CONFIGURE_OPTIONS
+= --enable-tests-timeout
=0
80 CONFIGURE_OPTIONS
+= --with-gmp-lib
=$(GMPLIBDIR_
$(BITS
))
81 CONFIGURE_OPTIONS
+= --with-mulhigh-size
=$(MPFRMULHIGH
)
82 CONFIGURE_OPTIONS
+= --with-pic
84 # Auto-generated dependencies
85 REQUIRED_PACKAGES
+= library
/gmp
86 REQUIRED_PACKAGES
+= system
/library