# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/profiles/arch/sparc/make.defaults,v 1.5 2011/03/18 22:09:09 vapier Exp $

ARCH="sparc"
ACCEPT_KEYWORDS="${ARCH}"

# 64bit kernel, 32bit userland
CHOST="sparc-unknown-linux-gnu"
PROFILE_ARCH="sparc64"

# We need sparc64 binutils for linux-headers
CTARGETS_BINUTILS="sparc-unknown-linux-gnu sparc64-unknown-linux-gnu"

# The funky stuffs for handling different kernel compiler than userland compiler
KERNEL_ABI="sparc64"
CHOST_sparc64="sparc64-unknown-linux-gnu"
LDFLAGS_sparc64="-m elf64_sparc"

# Multilib stuff
MULTILIB_ABIS="sparc32"
DEFAULT_ABI="sparc32"
ABI="${DEFAULT_ABI}"
CFLAGS_sparc32=""  # 32 bit is the default, so no need to set it.
LDFLAGS_sparc32="" # setting it would make gcc use -m32 and -m64 at the same time
CHOST_sparc32="sparc-unknown-linux-gnu"
CTARGET_sparc32="sparc-unknown-linux-gnu"
# do NOT set CFLAGS_sparc64 here it'd break linux-headers for non-multilib
# profiles

# Compiler flags
CFLAGS="-O2 -mcpu=ultrasparc -pipe"
CXXFLAGS=${CFLAGS}

# These are here to override features/32bit-userland's settings. DO NOT REMOVE!
FEATURES="-multilib-strict"
MULTILIB_STRICT_DIRS="/lib32 /usr/lib32 /usr/kde/*/lib32 /usr/qt/*/lib32 /usr/X11R6/lib32"

# 2006/10/05 - Gustavo Zacarias <gustavoz@gentoo.org>
# Defaults for video drivers
VIDEO_CARDS="fbdev glint mach64 mga r128 radeon sunbw2 suncg14 suncg3 \
	suncg6 sunffb sunleo tdfx voodoo"
