Makefile revision 851
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, 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_SRC= $(COMPONENT_NAME)-$(COMPONENT_VERSION)
69301145375a889e7e37caf7cc7321ac0f91801erpluemCOMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.gz
69301145375a889e7e37caf7cc7321ac0f91801erpluemCOMPONENT_ARCHIVE_HASH= sha1:223c3c89ad98c62e5b8335a75ef37e8241f9bbb0
506bfe33206b2fece40ef25f695af39dd4130facjkaluzaCOMPONENT_ARCHIVE_URL= http://ftp.gnu.org/gnu/gmp/$(COMPONENT_ARCHIVE)
506bfe33206b2fece40ef25f695af39dd4130facjkaluza
506bfe33206b2fece40ef25f695af39dd4130facjkaluzainclude ../../make-rules/prep.mk
506bfe33206b2fece40ef25f695af39dd4130facjkaluzainclude ../../make-rules/configure.mk
d58a848a016d401b965111e50ef829e1641f7834minfrininclude ../../make-rules/ips.mk
d58a848a016d401b965111e50ef829e1641f7834minfrininclude ../../make-rules/lint-libraries.mk
d58a848a016d401b965111e50ef829e1641f7834minfrin
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sfPATCH_LEVEL = 0
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sf
2e6f4d654c96c98b761fb012fd25c5d5b1558c44sfCFLAGS += -features=extinl,extensions
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavicCFLAGS += -xustr=ascii_utf16_ushort -xcsi
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic# -xthreadvar=%all: allow thread-local storage via __thread
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavic# qualifier for all types of variables (global, static and dynamic)
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavicCFLAGS += -xthreadvar=%all $(CPP_C99_EXTENDED_MATH)
17e6c95f3b22d18acdf8380fb26a8d0e10c80767ylavicCFLAGS += $(studio_C99_ENABLE) $(CPP_XPG6MODE)
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavicCFLAGS += $(studio_PIC)
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavicCXXFLAGS = -mt -features=anachronisms,except,rtti,export,extensions,nestedaccess,tmplife,tmplrefstatic
e8bd80a4bb88199d2f9a24a50345688e52d9c116ylavicCXXFLAGS += -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)
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicCXXFLAGS += $(CPP_XPG5MODE)
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavic# -Qoption ccfe -features=zla: allow VLA/ZLA in C++ (like in C99)
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicCXXFLAGS += -Qoption ccfe -features=zla
330e16bea8fe9cace4de90c349750c03dfb1fe64ylavicCXXFLAGS += -xF=%none -xthreadvar=%all
d7205b1a86c51c27b71a2c458dc453fd53a261c1covenerCPPFLAGS += $(CPP_POSIX) $(CPP_LARGEFILES)
d7205b1a86c51c27b71a2c458dc453fd53a261c1covenerLDFLAGS += $(LD_Z_REDLOCSYM) $(LD_Z_RESCAN_NOW)
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener# assembler detection for GNU MP and GNU MPFR is done via MPN_PATH
d7205b1a86c51c27b71a2c458dc453fd53a261c1covener# at ./configure time. GNU MPFR wants to know GNU MP's MPN_PATH.
44ff304057225e944e220e981d434a046d14cf06covenerMPN32_i386 = x86/pentium x86 generic
44ff304057225e944e220e981d434a046d14cf06covenerMPN64_i386 = x86_64/pentium4 x86_64 generic
44ff304057225e944e220e981d434a046d14cf06covenerMPN32_sparc = sparc32/v9 sparc32 generic
44ff304057225e944e220e981d434a046d14cf06covenerMPN64_sparc = sparc64 generic
5d1ba75b8794925e67591c209085a49279791de9covenerMPN_32 = $(MPN32_$(MACH))
5d1ba75b8794925e67591c209085a49279791de9covenerMPN_64 = $(MPN64_$(MACH))
5d1ba75b8794925e67591c209085a49279791de9covenerGM4 = /usr/bin/gm4
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrandGSED = /usr/bin/gsed
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand# libgmpxx.so.4 always gets built with unnecessary paths in RUNPATH/RPATH
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrandELFEDIT = /usr/bin/elfedit
032982212dbcc7c3cce95bf89c503bb56e185ac7kbrand
caad2986f81ab263f7af41467dd622dc9add17f3ylavicCONFIGURE_ENV += CC="$(CC)"
caad2986f81ab263f7af41467dd622dc9add17f3ylavicCONFIGURE_ENV += CXX="$(CXX)"
caad2986f81ab263f7af41467dd622dc9add17f3ylavicCONFIGURE_ENV += CFLAGS="$(CFLAGS)"
caad2986f81ab263f7af41467dd622dc9add17f3ylavicCONFIGURE_ENV += CPPFLAGS="$(CPPFLAGS)"
45a10d38e6051fd7bdf9d742aaae633d97ff02abjailletcCONFIGURE_ENV += CXXFLAGS="$(CC_BITS) $(CXXFLAGS)"
f7317ff316c2b141feea31bddb74d5d3fa1584edjortonCONFIGURE_ENV += LD="$(CC) $(CFLAGS) $(LDFLAGS)"
f7317ff316c2b141feea31bddb74d5d3fa1584edjortonCONFIGURE_ENV += LDFLAGS="$(LDFLAGS)"
2165214331e4afafca4048f66f303d0253d7b001covenerCONFIGURE_ENV += CXXLD="$(CXX) $(CC_BITS) $(CXXFLAGS) $(LDFLAGS)"
a34684a59b60a4173c25035d0c627ef17e6dc215rpluemCONFIGURE_ENV += CPP="$(CC) $(CPPFLAGS) $(CFLAGS) -E"
a34684a59b60a4173c25035d0c627ef17e6dc215rpluemCONFIGURE_ENV += CPP_FOR_BUILD="$(CC) $(CPPFLAGS) $(CFLAGS) -E"
1e2d421a36999d292042a5539971070d54aa6c63ylavicCONFIGURE_ENV += CXXCPP="$(CXX) $(CC_BITS) $(CPPFLAGS) $(CXXFLAGS) -E"
1e2d421a36999d292042a5539971070d54aa6c63ylavicCONFIGURE_ENV += INSTALL="$(INSTALL)"
1e2d421a36999d292042a5539971070d54aa6c63ylavicCONFIGURE_ENV += CC_FOR_BUILD="$(CC) $(CPPFLAGS) $(CFLAGS)"
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedoohCONFIGURE_ENV += M4="$(GM4)"
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedoohCONFIGURE_ENV += SED="$(GSED)"
fa7ed98b9dc94c5845cf845aea0a44ecacd290c9humbedoohCONFIGURE_ENV += ABI="$(BITS)"
0b67eb8568cd58bb77082703951679b42cf098actrawickCONFIGURE_ENV += "MPN_PATH=$(MPN_$(BITS))"
0b67eb8568cd58bb77082703951679b42cf098actrawick
0b67eb8568cd58bb77082703951679b42cf098actrawickCONFIGURE_OPTIONS += --includedir=/usr/include/gmp
0b67eb8568cd58bb77082703951679b42cf098actrawickCONFIGURE_OPTIONS += --localstatedir=/var
5ef3c61605a3a021ff71f488983cb0065f8e1a79covenerCONFIGURE_OPTIONS += --enable-shared
fb1985a97912b25ec6564c73e610a31e5fc6e25fcovenerCONFIGURE_OPTIONS += --disable-static
09c87c777bed1655621bb20e1c46cb6b1a63279dcovenerCONFIGURE_OPTIONS += --disable-libtool-lock
6502b7b32f980cc2093bb3ebce37e5e4dc68fba4ylavicCONFIGURE_OPTIONS += --disable-alloca
6502b7b32f980cc2093bb3ebce37e5e4dc68fba4ylavicCONFIGURE_OPTIONS += --enable-cxx
3060ce7f798fbda7999cd4ddf89b525d2b294185covenerCONFIGURE_OPTIONS += --enable-fft
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavicCONFIGURE_OPTIONS += --enable-mpbsd
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavicCONFIGURE_OPTIONS += --disable-fat
c1a63b8fad09c419c1a64f75993feb8a343a6801ylavicCONFIGURE_OPTIONS += --with-pic
e6b4bd1113567627ab6bb6c6a7105e1e01a7d889jailletc
e6b4bd1113567627ab6bb6c6a7105e1e01a7d889jailletcPROTOUSRSHAREINFODIR = $(PROTOUSRSHAREDIR)/info
e466c40e1801982602ee0200c9e8b61cc148742djailletcPROTOUSRSHAREHTMLDIR = $(PROTOUSRSHAREDIR)/doc/gmp/html
e466c40e1801982602ee0200c9e8b61cc148742djailletcPROTOUSRSHAREMAN3DIR = $(PROTOUSRSHAREDIR)/man/man3
457468b82e59d01eba00dd9d0817309c8f5e414ejimPROTOUSRINCLUDEDIR = $(PROTOUSRDIR)/include
457468b82e59d01eba00dd9d0817309c8f5e414ejimPROTOPKGCONFIGDIR = $(PROTOUSRLIBDIR)/pkgconfig
457468b82e59d01eba00dd9d0817309c8f5e414ejimPROTOPKGCONFIGDIR64 = $(PROTOUSRLIBDIR64)/pkgconfig
04983e3bd1754764eec7d6bb772fe3b0bf391771jorton
04983e3bd1754764eec7d6bb772fe3b0bf391771jortonCOMPONENT_POST_INSTALL_ACTION = \
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluem ( $(MKDIR) $(PROTOUSRSHAREHTMLDIR) ; \
15660979a30d251681463de2e0584853890082accovener $(MKDIR) $(PROTOUSRSHAREMAN3DIR) ; \
15660979a30d251681463de2e0584853890082accovener $(MKDIR) $(PROTOPKGCONFIGDIR) ; \
49dacedb6c387b786b7911082ff35121a45f414bcovener $(MKDIR) $(PROTOPKGCONFIGDIR64) ; \
49dacedb6c387b786b7911082ff35121a45f414bcovener $(ELFEDIT) -e "dyn:runpath $(USRLIBDIR)" \
cfd9415521847b2f9394fad04fb701cfb955f503rjung $(PROTOUSRLIBDIR)/libgmpxx.so.4.1.2 ; \
cfd9415521847b2f9394fad04fb701cfb955f503rjung $(ELFEDIT) -e "dyn:runpath $(USRLIBDIR64)" \
cfd9415521847b2f9394fad04fb701cfb955f503rjung $(PROTOUSRLIBDIR64)/libgmpxx.so.4.1.2 ; \
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe $(ELFEDIT) -e "dyn:rpath $(USRLIBDIR)" \
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe $(PROTOUSRLIBDIR)/libgmpxx.so.4.1.2 ; \
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe $(ELFEDIT) -e "dyn:rpath $(USRLIBDIR64)" \
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe $(PROTOUSRLIBDIR64)/libgmpxx.so.4.1.2 ; \
28c31fb73c1264bd1d0ff932573677030b024c7dwrowe $(GSED) -e "s/MACH64/$(MACH64)/g" \
8491e0600f69b0405e156ea8a419653c065c645bcovener $(COMPONENT_DIR)/Solaris/libgmp-64.pc > $(COMPONENT_DIR)/libgmp.pc ; \
63b9f1f5880391261705f696d7d65507bbe9ace3covener $(GSED) -e "s/MACH64/$(MACH64)/g" \
63b9f1f5880391261705f696d7d65507bbe9ace3covener $(COMPONENT_DIR)/Solaris/libgmpxx-64.pc > \
63b9f1f5880391261705f696d7d65507bbe9ace3covener $(COMPONENT_DIR)/libgmpxx.pc ; \
49dacedb6c387b786b7911082ff35121a45f414bcovener $(MV) $(PROTOUSRINCLUDEDIR)/gmp.h $(PROTOUSRINCLUDEDIR)/gmp/ ; \
49dacedb6c387b786b7911082ff35121a45f414bcovener $(MV) $(PROTOUSRINCLUDEDIR)/mp.h $(PROTOUSRINCLUDEDIR)/gmp/ ; \
49dacedb6c387b786b7911082ff35121a45f414bcovener $(INSTALL) -m 0644 $(COMPONENT_DIR)/Solaris/index.html \
49dacedb6c387b786b7911082ff35121a45f414bcovener $(PROTOUSRSHAREHTMLDIR)/ ; \
3c990331fc6702119e4f5b8ba9eae3021aea5265jim $(INSTALL) -m 0644 $(COMPONENT_DIR)/Solaris/libgmp.pc \
3c990331fc6702119e4f5b8ba9eae3021aea5265jim $(PROTOPKGCONFIGDIR) ; \
3c990331fc6702119e4f5b8ba9eae3021aea5265jim $(INSTALL) -m 0644 $(COMPONENT_DIR)/Solaris/libgmpxx.pc \
3c990331fc6702119e4f5b8ba9eae3021aea5265jim $(PROTOPKGCONFIGDIR) ; \
fc42512879dd0504532f52fe5d0d0383dda96a1eniq $(INSTALL) -m 0644 $(COMPONENT_DIR)/libgmp.pc \
fc42512879dd0504532f52fe5d0d0383dda96a1eniq $(PROTOPKGCONFIGDIR64) ; \
fc42512879dd0504532f52fe5d0d0383dda96a1eniq $(INSTALL) -m 0644 $(COMPONENT_DIR)/libgmpxx.pc \
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niq $(PROTOPKGCONFIGDIR64) ; \
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niq $(INSTALL) -m 0644 $(COMPONENT_DIR)/Solaris/libgmp.3 \
0451df5dc50fa5d8b3e07d92ee6a92e36a1181a5niq $(PROTOUSRSHAREMAN3DIR)/ )
da0442c0440caef34706e2c2f3af05cb65921cc0jailletc
983528026996668ea295be95aedb9c7a346af470ylavic# common targets
da0442c0440caef34706e2c2f3af05cb65921cc0jailletcbuild: $(BUILD_32_and_64)
da0442c0440caef34706e2c2f3af05cb65921cc0jailletc
06b8f183140c8e02e0974e938a05078b511d1603covenerinstall: $(INSTALL_32_and_64)
06b8f183140c8e02e0974e938a05078b511d1603covener
06b8f183140c8e02e0974e938a05078b511d1603covenertest: $(TEST_32_and_64)
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluem
259878293a997ff49f5ddfc53d3739cbdc25444ecovenerBUILD_PKG_DEPENDENCIES = $(BUILD_TOOLS)
259878293a997ff49f5ddfc53d3739cbdc25444ecovener
259878293a997ff49f5ddfc53d3739cbdc25444ecovenerinclude ../../make-rules/depend.mk
259878293a997ff49f5ddfc53d3739cbdc25444ecovener
15890c9306ba98f6fc243e15a3c4778ddc7d773erpluem