components/gcc45/Makefile
author Rich Burridge <rich.burridge@oracle.com>
Tue, 08 Jan 2013 18:38:09 -0800
changeset 1112 7bc7f29cb517
parent 1058 34d7aaa03423
child 1138 6e1f85fa0151
child 2569 9b54136e00bb
permissions -rw-r--r--
15820219 SUNBT7202659 Move python/mysql from Desktop consolidation to Userland (fix package name)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
487
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
     1
#
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
     2
# CDDL HEADER START
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
     3
#
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
     4
# The contents of this file are subject to the terms of the
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
     5
# Common Development and Distribution License (the "License").
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
     6
# You may not use this file except in compliance with the License.
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
     7
#
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
     8
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
     9
# or http://www.opensolaris.org/os/licensing.
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    10
# See the License for the specific language governing permissions
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    11
# and limitations under the License.
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    12
#
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    13
# When distributing Covered Code, include this CDDL HEADER in each
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    14
# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    15
# If applicable, add the following below this CDDL HEADER, with the
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    16
# fields enclosed by brackets "[]" replaced with your own identifying
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    17
# information: Portions Copyright [yyyy] [name of copyright owner]
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    18
#
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    19
# CDDL HEADER END
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    20
#
704
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    21
# Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
487
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    22
#
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    23
include ../../make-rules/shared-macros.mk
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    24
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    25
COMPONENT_NAME=		gcc
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    26
COMPONENT_VERSION=	4.5.2
609
775168282b2f 7037821 Userland migration of data from Makefile to manifest may have been a little overzealous
Rich Burridge <rich.burridge@oracle.com>
parents: 523
diff changeset
    27
COMPONENT_PROJECT_URL=	http://gcc.gnu.org/
487
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    28
COMPONENT_SRC=		$(COMPONENT_NAME)-$(COMPONENT_VERSION)
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    29
COMPONENT_ARCHIVE=	$(COMPONENT_SRC).tar.gz
800
2ad056ed89ec 7163771 sha1 should not be used in userland-fetch and userland component/*/Makefile
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 704
diff changeset
    30
COMPONENT_ARCHIVE_HASH= \
2ad056ed89ec 7163771 sha1 should not be used in userland-fetch and userland component/*/Makefile
Mike Sullivan <Mike.Sullivan@Oracle.COM>
parents: 704
diff changeset
    31
    sha256:07b880faf29f3f9d9c0953717002ac29f5d061427797d2487a7c9c169e6395b3
487
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    32
COMPONENT_ARCHIVE_URL=	http://ftp.gnu.org/gnu/gcc/$(COMPONENT_SRC)/$(COMPONENT_ARCHIVE)
1058
34d7aaa03423 15886624 Auto-generation of Userland gate list - Phase 3
Rich Burridge <rich.burridge@oracle.com>
parents: 800
diff changeset
    33
COMPONENT_BUGDB=	utility/gnu-compiler
487
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    34
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    35
include ../../make-rules/prep.mk
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    36
include ../../make-rules/configure.mk
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    37
include ../../make-rules/ips.mk
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    38
523
607f4130cc3c 7090160 gcc4 seems to be shipping a lot 'fixed' includes
George Vasick <george.vasick@oracle.com>
parents: 487
diff changeset
    39
PATH=/usr/bin:/usr/gnu/bin:/usr/perl5/bin
607f4130cc3c 7090160 gcc4 seems to be shipping a lot 'fixed' includes
George Vasick <george.vasick@oracle.com>
parents: 487
diff changeset
    40
487
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    41
PARCH =         $(MACH:i386=i386-pc)
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    42
GNU_ARCH =      $(PARCH:sparc=sparc-sun)-solaris$(SOLARIS_VERSION)
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    43
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    44
PKG_MACROS +=   GNU_ARCH="$(GNU_ARCH)"
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    45
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    46
# This product bootstraps itself.  The gcc flags are not the same
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    47
# as Studio flags. -O2 means different things for the two compilers
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    48
CFLAGS=-g -O2 
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    49
CFLAGS_FOR_BUILD=$(CFLAGS)
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    50
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    51
# CC_BITS may get in the way
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    52
CC_BITS=
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    53
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    54
CONFIG_SHELL = /bin/sh
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    55
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    56
CONFIGURE_PREFIX = /usr/gcc/4.5
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    57
704
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    58
CONFIGURE_OPTIONS +=	--infodir=$(CONFIGURE_PREFIX)/share/info
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    59
CONFIGURE_OPTIONS +=	--libexecdir=$(CONFIGURE_PREFIX)/lib
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    60
CONFIGURE_OPTIONS +=	--enable-languages="c,c++,fortran,objc"
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    61
CONFIGURE_OPTIONS +=	--enable-shared
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    62
CONFIGURE_OPTIONS +=	--with-gmp-include=/usr/include/gmp
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    63
CONFIGURE_OPTIONS +=	--with-mpfr-include=/usr/include/mpfr
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    64
CONFIGURE_OPTIONS +=	--without-gnu-ld --with-ld=/usr/bin/ld
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    65
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    66
# sparc and x86 use different assemblers
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    67
CONFIGURE_OPTIONS.sparc +=	--without-gnu-as --with-as=/usr/bin/as
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    68
CONFIGURE_OPTIONS.i386 +=	--with-gnu-as --with-as=/usr/gnu/bin/as
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    69
CONFIGURE_OPTIONS +=    $(CONFIGURE_OPTIONS.$(MACH))
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    70
c4fe7d6370ec 7128466 gcc should support FMA4 and XOP instruction sets
George Vasick <george.vasick@oracle.com>
parents: 609
diff changeset
    71
CONFIGURE_OPTIONS +=	CFLAGS="$(CFLAGS)"
487
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    72
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    73
COMPONENT_BUILD_ENV += SHELL=$(CONFIG_SHELL)
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    74
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    75
COMPONENT_BUILD_TARGETS=bootstrap
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    76
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    77
build:		$(BUILD_32)
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    78
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    79
install:	$(INSTALL_32) 
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    80
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    81
test:		$(TEST_32)
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    82
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    83
BUILD_PKG_DEPENDENCIES =	$(BUILD_TOOLS)
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    84
4e721bcfa7d1 PSARC 2011/256 GCC 4.5: The GNU Compiler Collection 4.5
Ross Towle <ross.towle@oracle.com>
parents:
diff changeset
    85
include ../../make-rules/depend.mk