]> CyberLeo.Net >> Repos - FreeBSD/releng/7.2.git/blob - sys/contrib/dev/ath/public/xscale-le-elf.inc
Create releng/7.2 from stable/7 in preparation for 7.2-RELEASE.
[FreeBSD/releng/7.2.git] / sys / contrib / dev / ath / public / xscale-le-elf.inc
1 #
2 # Copyright (c) 2002-2006 Sam Leffler, Errno Consulting
3 # All rights reserved.
4 #
5 # Redistribution and use in source and binary forms, with or without
6 # modification, are permitted provided that the following conditions
7 # are met:
8 # 1. Redistributions of source code must retain the above copyright
9 #    notice, this list of conditions and the following disclaimer,
10 #    without modification.
11 # 2. Redistributions in binary form must reproduce at minimum a disclaimer
12 #    similar to the "NO WARRANTY" disclaimer below ("Disclaimer") and any
13 #    redistribution must be conditioned upon including a substantially
14 #    similar Disclaimer requirement for further binary redistribution.
15 # 3. Neither the names of the above-listed copyright holders nor the names
16 #    of any contributors may be used to endorse or promote products derived
17 #    from this software without specific prior written permission.
18 #
19 # Alternatively, this software may be distributed under the terms of the
20 # GNU General Public License ("GPL") version 2 as published by the Free
21 # Software Foundation.
22 #
23 # NO WARRANTY
24 # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
25 # ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
26 # LIMITED TO, THE IMPLIED WARRANTIES OF NONINFRINGEMENT, MERCHANTIBILITY
27 # AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
28 # THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE LIABLE FOR SPECIAL, EXEMPLARY,
29 # OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
30 # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
31 # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
32 # IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
33 # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
34 # THE POSSIBILITY OF SUCH DAMAGES.
35 #
36 # $Id: //depot/sw/branches/sam_hal/public/xscale-le-elf.inc#3 $
37 #
38
39 #
40 # Compilation configuration for building little-endian XScale/arm-elf.
41 #
42 # NB: built with AH_REGOPS_FUNC to so that register accesses
43 #     can be done using the Linux readl/writel functions on
44 #     systems that need it.
45 #
46 # Reported to work on:
47 #       Compulab's ARMBASE using ARMCORE GX
48 #               (http://www.compulab.co.il/armbase.htm)
49 #
50
51 #
52 # Built with GNU cross-devel tools:
53 #
54 # PREFIX=/pub/gnu
55 # BINUTILS=binutils-2.14
56 # GCC=gcc-3.3.2
57 # target=arm-elf
58 #
59 # ${BINUTILS}/configure --target=$target --prefix=${PREFIX}
60 # ${GCC}/configure --target=$target   --prefix=${PREFIX} \
61 #       --enable-languages=c   --with-gnu-as --with-gnu-ld \
62 #       --with-newlib   --with-gxx-include-dir=${PREFIX}/$target/include
63 #
64 ifndef TOOLPREFIX
65 TOOLPREFIX=     /pub/gnu/bin/arm-elf-
66 endif
67 #
68 CC=     ${TOOLPREFIX}gcc
69 LD=     ${TOOLPREFIX}ld
70 STRIP=  ${TOOLPREFIX}strip
71 OBJCOPY=${TOOLPREFIX}objcopy
72 NM=     ${TOOLPREFIX}nm
73
74 #
75 # Force register read/write operations to go through a function.
76 #
77 AH_REGOPS_FUNC=1
78
79 LDOPTS= -EL
80 COPTS+= -DAH_BYTE_ORDER=AH_LITTLE_ENDIAN
81 COPTS+= -march=armv4 -mlittle-endian -fno-strict-aliasing -fno-common \
82         -mapcs-32 -mtune=xscale  -mshort-load-bytes