Makefile revision 844
f743002678eb67b99bbc29fee116b65d9530fec0wrowe# CDDL HEADER START
80833bb9a1bf25dcf19e814438a4b311d2e1f4cffuankg#
a34684a59b60a4173c25035d0c627ef17e6dc215rpluem# The contents of this file are subject to the terms of the
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic# Common Development and Distribution License (the "License").
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic# You may not use this file except in compliance with the License.
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic#
1337c7673efc1f80f634139fbad7cbb98a0dc657ylavic# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
4da61833a1cbbca94094f9653fd970582b97a72etrawick# or http://www.opensolaris.org/os/licensing.
4da61833a1cbbca94094f9653fd970582b97a72etrawick# See the License for the specific language governing permissions
4da61833a1cbbca94094f9653fd970582b97a72etrawick# and limitations under the License.
4da61833a1cbbca94094f9653fd970582b97a72etrawick#
4da61833a1cbbca94094f9653fd970582b97a72etrawick# When distributing Covered Code, include this CDDL HEADER in each
4789804be088bcd86ae637a29cdb7fda25169521jailletc# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
4789804be088bcd86ae637a29cdb7fda25169521jailletc# If applicable, add the following below this CDDL HEADER, with the
4789804be088bcd86ae637a29cdb7fda25169521jailletc# fields enclosed by brackets "[]" replaced with your own identifying
4789804be088bcd86ae637a29cdb7fda25169521jailletc# information: Portions Copyright [yyyy] [name of copyright owner]
e50c3026198fd496f183cda4c32a202925476778covener#
e50c3026198fd496f183cda4c32a202925476778covener# CDDL HEADER END
e50c3026198fd496f183cda4c32a202925476778covener#
5b88c8507d5ef6d0c4cfbc78230294968175b638minfrin
5b88c8507d5ef6d0c4cfbc78230294968175b638minfrin#
6c3b9cebb551140fbb25d58bae08b539b3802133ylavic# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
6c3b9cebb551140fbb25d58bae08b539b3802133ylavic#
6c3b9cebb551140fbb25d58bae08b539b3802133ylavic
4f29b65ab4b547ad5dbe506e2d0ff5d12ead9247ylavicinclude ../../make-rules/shared-macros.mk
4f29b65ab4b547ad5dbe506e2d0ff5d12ead9247ylavic
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavicPATH=$(dir $(CC)):/usr/bin:/usr/gnu/bin
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavic
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavicCOMPONENT_NAME= gmp
0a0df13b7f1f4f1a74fe295253d89ca3911b301aylavicCOMPONENT_VERSION= 4.3.2
69301145375a889e7e37caf7cc7321ac0f91801erpluemCOMPONENT_PROJECT_URL= http://gmplib.org/
69301145375a889e7e37caf7cc7321ac0f91801erpluemCOMPONENT_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
69301145375a889e7e37caf7cc7321ac0f91801erpluemCOMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
506bfe33206b2fece40ef25f695af39dd4130facjkaluzaCOMPONENT_ARCHIVE_HASH= \
506bfe33206b2fece40ef25f695af39dd4130facjkaluza sha256:7be3ad1641b99b17f6a8be6a976f1f954e997c41e919ad7e0c418fe848c13c97
506bfe33206b2fece40ef25f695af39dd4130facjkaluzaCOMPONENT_ARCHIVE_URL= http://ftp.gnu.org/gnu/gmp/$(COMPONENT_ARCHIVE)
506bfe33206b2fece40ef25f695af39dd4130facjkaluza
d58a848a016d401b965111e50ef829e1641f7834minfrininclude ../../make-rules/prep.mk
d58a848a016d401b965111e50ef829e1641f7834minfrininclude ../../make-rules/configure.mk
d58a848a016d401b965111e50ef829e1641f7834minfrininclude ../../make-rules/ips.mk
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sfinclude ../../make-rules/lint-libraries.mk
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sf
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sfPATCH_LEVEL = 0
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavicCLOBBER_PATHS += libgmp.pc libgmpxx.pc
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavicCFLAGS += -features=extinl,extensions
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavicCFLAGS += -xustr=ascii_utf16_ushort -xcsi
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavic# -xthreadvar=%all: allow thread-local storage via __thread
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavic# qualifier for all types of variables (global, static and dynamic)
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavicCFLAGS += -xthreadvar=%all $(CPP_C99_EXTENDED_MATH)
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicCFLAGS += $(studio_C99_ENABLE) $(CPP_XPG6MODE)
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicCFLAGS += $(studio_PIC)
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicCXXFLAGS = -mt -features=anachronisms,except,rtti,export,extensions,nestedaccess,tmplife,tmplrefstatic
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicCXXFLAGS += -instances=global -template=geninlinefuncs -verbose=template
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicCXXFLAGS += -xbuiltin=%none -xinline=%auto -xlibmil
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicCXXFLAGS += -xustr=ascii_utf16_ushort -xlibmopt
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicCXXFLAGS += $(studio_cplusplus_C99_ENABLE) $(studio_PIC)
d7205b1a86c51c27b71a2c458dc453fd53a261c1covenerCXXFLAGS += $(CPP_XPG5MODE)
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener# -Qoption ccfe -features=zla: allow VLA/ZLA in C++ (like in C99)
d7205b1a86c51c27b71a2c458dc453fd53a261c1covenerCXXFLAGS += -Qoption ccfe -features=zla
d7205b1a86c51c27b71a2c458dc453fd53a261c1covenerCXXFLAGS += -xF=%none -xthreadvar=%all
d7205b1a86c51c27b71a2c458dc453fd53a261c1covenerCPPFLAGS += $(CPP_POSIX) $(CPP_LARGEFILES)
44ff304057225e944e220e981d434a046d14cf06covenerLDFLAGS += $(LD_Z_REDLOCSYM) $(LD_Z_RESCAN_NOW)
44ff304057225e944e220e981d434a046d14cf06covener
44ff304057225e944e220e981d434a046d14cf06covener# assembler detection for GNU MP and GNU MPFR is done via MPN_PATH
44ff304057225e944e220e981d434a046d14cf06covener# at ./configure time. GNU MPFR wants to know GNU MP's MPN_PATH.
5d1ba75b8794925e67591c209085a49279791de9covenerMPN32_i386 = x86/pentium x86 generic
5d1ba75b8794925e67591c209085a49279791de9covenerMPN64_i386 = x86_64/pentium4 x86_64 generic
5d1ba75b8794925e67591c209085a49279791de9covenerMPN32_sparc = sparc32/v9 sparc32 generic
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrandMPN64_sparc = sparc64 generic
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrandMPN_32 = $(MPN32_$(MACH))
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrandMPN_64 = $(MPN64_$(MACH))
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrandGM4 = /usr/bin/gm4
caad2986f81ab263f7af41467dd622dc9add17f3ylavicGSED = /usr/bin/gsed
caad2986f81ab263f7af41467dd622dc9add17f3ylavic# libgmpxx.so.4 always gets built with unnecessary paths in RUNPATH/RPATH
caad2986f81ab263f7af41467dd622dc9add17f3ylavicELFEDIT = /usr/bin/elfedit
caad2986f81ab263f7af41467dd622dc9add17f3ylavic
45a10d38e6051fd7bdf9d742aaae633d97ff02abjailletcCONFIGURE_ENV += CC="$(CC)"
f7317ff316c2b141feea31bddb74d5d3fa1584edjortonCONFIGURE_ENV += CXX="$(CXX)"
f7317ff316c2b141feea31bddb74d5d3fa1584edjortonCONFIGURE_ENV += CFLAGS="$(CFLAGS)"
2165214331e4afafca4048f66f303d0253d7b001covenerCONFIGURE_ENV += CPPFLAGS="$(CPPFLAGS)"
a34684a59b60a4173c25035d0c627ef17e6dc215rpluemCONFIGURE_ENV += CXXFLAGS="$(CC_BITS) $(CXXFLAGS)"
a34684a59b60a4173c25035d0c627ef17e6dc215rpluemCONFIGURE_ENV += LD="$(CC) $(CFLAGS) $(LDFLAGS)"
1e2d421a36999d292042a5539971070d54aa6c63ylavicCONFIGURE_ENV += LDFLAGS="$(LDFLAGS)"
1e2d421a36999d292042a5539971070d54aa6c63ylavicCONFIGURE_ENV += CXXLD="$(CXX) $(CC_BITS) $(CXXFLAGS) $(LDFLAGS)"
1e2d421a36999d292042a5539971070d54aa6c63ylavicCONFIGURE_ENV += CPP="$(CC) $(CPPFLAGS) $(CFLAGS) -E"
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedoohCONFIGURE_ENV += CPP_FOR_BUILD="$(CC) $(CPPFLAGS) $(CFLAGS) -E"
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedoohCONFIGURE_ENV += CXXCPP="$(CXX) $(CC_BITS) $(CPPFLAGS) $(CXXFLAGS) -E"
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedoohCONFIGURE_ENV += INSTALL="$(INSTALL)"
0b67eb8568cd58bb77082703951679b42cf098actrawickCONFIGURE_ENV += CC_FOR_BUILD="$(CC) $(CPPFLAGS) $(CFLAGS)"
0b67eb8568cd58bb77082703951679b42cf098actrawickCONFIGURE_ENV += M4="$(GM4)"
0b67eb8568cd58bb77082703951679b42cf098actrawickCONFIGURE_ENV += SED="$(GSED)"
0b67eb8568cd58bb77082703951679b42cf098actrawickCONFIGURE_ENV += ABI="$(BITS)"
5ef3c61605a3a021ff71f488983cb0065f8e1a79covenerCONFIGURE_ENV += "MPN_PATH=$(MPN_$(BITS))"
fb1985a97912b25ec6564c73e610a31e5fc6e25fcovener
09c87c777bed1655621bb20e1c46cb6b1a63279dcovenerCONFIGURE_OPTIONS += --includedir=/usr/include/gmp
6502b7b32f980cc2093bb3ebce37e5e4dc68fba4ylavicCONFIGURE_OPTIONS += --localstatedir=/var
6502b7b32f980cc2093bb3ebce37e5e4dc68fba4ylavicCONFIGURE_OPTIONS += --enable-shared
3060ce7f798fbda7999cd4ddf89b525d2b294185covenerCONFIGURE_OPTIONS += --disable-static
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavicCONFIGURE_OPTIONS += --disable-libtool-lock
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavicCONFIGURE_OPTIONS += --disable-alloca
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavicCONFIGURE_OPTIONS += --enable-cxx
e6b4bd1113567627ab6bb6c6a7105e1e01a7d889jailletcCONFIGURE_OPTIONS += --enable-fft
e6b4bd1113567627ab6bb6c6a7105e1e01a7d889jailletcCONFIGURE_OPTIONS += --enable-mpbsd
e466c40e1801982602ee0200c9e8b61cc148742djailletcCONFIGURE_OPTIONS += --disable-fat
e466c40e1801982602ee0200c9e8b61cc148742djailletcCONFIGURE_OPTIONS += --with-pic
457468b82e59d01eba00dd9d0817309c8f5e414ejim
457468b82e59d01eba00dd9d0817309c8f5e414ejimPROTOUSRSHAREINFODIR = $(PROTOUSRSHAREDIR)/info
457468b82e59d01eba00dd9d0817309c8f5e414ejimPROTOUSRSHAREHTMLDIR = $(PROTOUSRSHAREDIR)/doc/gmp/html
04983e3bd1754764eec7d6bb772fe3b0bf391771jortonPROTOUSRSHAREMAN3DIR = $(PROTOUSRSHAREDIR)/man/man3
04983e3bd1754764eec7d6bb772fe3b0bf391771jortonPROTOUSRINCLUDEDIR = $(PROTOUSRDIR)/include
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluemPROTOPKGCONFIGDIR = $(PROTOUSRLIBDIR)/pkgconfig
15660979a30d251681463de2e0584853890082accovenerPROTOPKGCONFIGDIR64 = $(PROTOUSRLIBDIR64)/pkgconfig
15660979a30d251681463de2e0584853890082accovener
49dacedb6c387b786b7911082ff35121a45f414bcovenerCOMPONENT_POST_INSTALL_ACTION = \
49dacedb6c387b786b7911082ff35121a45f414bcovener ( $(MKDIR) $(PROTOUSRSHAREHTMLDIR) ; \
cfd9415521847b2f9394fad04fb701cfb955f503rjung $(MKDIR) $(PROTOUSRSHAREMAN3DIR) ; \
cfd9415521847b2f9394fad04fb701cfb955f503rjung $(MKDIR) $(PROTOPKGCONFIGDIR) ; \
cfd9415521847b2f9394fad04fb701cfb955f503rjung $(MKDIR) $(PROTOPKGCONFIGDIR64) ; \
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe $(ELFEDIT) -e "dyn:runpath $(USRLIBDIR)" \
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe $(PROTOUSRLIBDIR)/libgmpxx.so.4.1.2 ; \
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe $(ELFEDIT) -e "dyn:runpath $(USRLIBDIR64)" \
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe $(PROTOUSRLIBDIR64)/libgmpxx.so.4.1.2 ; \
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe $(ELFEDIT) -e "dyn:rpath $(USRLIBDIR)" \
8491e0600f69b0405e156ea8a419653c065c645bcovener $(PROTOUSRLIBDIR)/libgmpxx.so.4.1.2 ; \
63b9f1f5880391261705f696d7d65507bbe9ace3covener $(ELFEDIT) -e "dyn:rpath $(USRLIBDIR64)" \
63b9f1f5880391261705f696d7d65507bbe9ace3covener $(PROTOUSRLIBDIR64)/libgmpxx.so.4.1.2 ; \
63b9f1f5880391261705f696d7d65507bbe9ace3covener $(GSED) -e "s/MACH64/$(MACH64)/g" \
49dacedb6c387b786b7911082ff35121a45f414bcovener $(COMPONENT_DIR)/Solaris/libgmp-64.pc > $(COMPONENT_DIR)/libgmp.pc ; \
49dacedb6c387b786b7911082ff35121a45f414bcovener $(GSED) -e "s/MACH64/$(MACH64)/g" \
49dacedb6c387b786b7911082ff35121a45f414bcovener $(COMPONENT_DIR)/Solaris/libgmpxx-64.pc > \
49dacedb6c387b786b7911082ff35121a45f414bcovener $(COMPONENT_DIR)/libgmpxx.pc ; \
3c990331fc6702119e4f5b8ba9eae3021aea5265jim $(MV) $(PROTOUSRINCLUDEDIR)/gmp.h $(PROTOUSRINCLUDEDIR)/gmp/ ; \
3c990331fc6702119e4f5b8ba9eae3021aea5265jim $(MV) $(PROTOUSRINCLUDEDIR)/mp.h $(PROTOUSRINCLUDEDIR)/gmp/ ; \
3c990331fc6702119e4f5b8ba9eae3021aea5265jim $(INSTALL) -m 0644 $(COMPONENT_DIR)/Solaris/index.html \
3c990331fc6702119e4f5b8ba9eae3021aea5265jim $(PROTOUSRSHAREHTMLDIR)/ ; \
fc42512879dd0504532f52fe5d0d0383dda96a1eniq $(INSTALL) -m 0644 $(COMPONENT_DIR)/Solaris/libgmp.pc \
fc42512879dd0504532f52fe5d0d0383dda96a1eniq $(PROTOPKGCONFIGDIR) ; \
fc42512879dd0504532f52fe5d0d0383dda96a1eniq $(INSTALL) -m 0644 $(COMPONENT_DIR)/Solaris/libgmpxx.pc \
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niq $(PROTOPKGCONFIGDIR) ; \
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niq $(INSTALL) -m 0644 $(COMPONENT_DIR)/libgmp.pc \
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niq $(PROTOPKGCONFIGDIR64) ; \
da0442c0440caef34706e2c2f3af05cb65921cc0jailletc $(INSTALL) -m 0644 $(COMPONENT_DIR)/libgmpxx.pc \
983528026996668ea295be95aedb9c7a346af470ylavic $(PROTOPKGCONFIGDIR64) ; \
da0442c0440caef34706e2c2f3af05cb65921cc0jailletc $(INSTALL) -m 0644 $(COMPONENT_DIR)/Solaris/libgmp.3 \
da0442c0440caef34706e2c2f3af05cb65921cc0jailletc $(PROTOUSRSHAREMAN3DIR)/ )
06b8f183140c8e02e0974e938a05078b511d1603covener
06b8f183140c8e02e0974e938a05078b511d1603covener# common targets
06b8f183140c8e02e0974e938a05078b511d1603covenerbuild: $(BUILD_32_and_64)
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluem
259878293a997ff49f5ddfc53d3739cbdc25444ecovenerinstall: $(INSTALL_32_and_64)
259878293a997ff49f5ddfc53d3739cbdc25444ecovener
259878293a997ff49f5ddfc53d3739cbdc25444ecovenertest: $(TEST_32_and_64)
259878293a997ff49f5ddfc53d3739cbdc25444ecovener
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluemBUILD_PKG_DEPENDENCIES = $(BUILD_TOOLS)
b54b024c06a19926832d77d40ba35ad8c41e4d3dminfrin
b54b024c06a19926832d77d40ba35ad8c41e4d3dminfrininclude ../../make-rules/depend.mk
b54b024c06a19926832d77d40ba35ad8c41e4d3dminfrin
65967d05f839dbf27cf91d91fa79585eeae19660minfrin