source: mainline/meson/arch/sparc64/meson.build

Last change on this file was 4d58bac, checked in by Jiri Svoboda <jiri@…>, 21 months ago

Library and utility for printing OpenFirmware device tree

  • Property mode set to 100644
File size: 2.9 KB
Line 
1#
2# Copyright (c) 2023 Jiri Svoboda
3# Copyright (c) 2019 Jiří Zárevúcky
4# All rights reserved.
5#
6# Redistribution and use in source and binary forms, with or without
7# modification, are permitted provided that the following conditions
8# are met:
9#
10# - Redistributions of source code must retain the above copyright
11# notice, this list of conditions and the following disclaimer.
12# - Redistributions in binary form must reproduce the above copyright
13# notice, this list of conditions and the following disclaimer in the
14# documentation and/or other materials provided with the distribution.
15# - The name of the author may not be used to endorse or promote products
16# derived from this software without specific prior written permission.
17#
18# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
19# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
20# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
21# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
22# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
23# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
27# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28#
29
30arch_uspace_c_args = [ '-D__BE__', '-m64', '-mcmodel=medlow', '-mhard-float', '-m' + QUADFLOAT + '-quad-float' ]
31
32if PROCESSOR == 'sun4v'
33 arch_uspace_c_args += [ '-mcpu=niagara', '-mno-vis' ]
34else
35 arch_uspace_c_args += [ '-mcpu=ultrasparc' ]
36endif
37
38if PROCESSOR == 'us' or PROCESSOR == 'us3'
39 arch_uspace_c_args += [ '-DSUN4U' ]
40elif PROCESSOR == 'sun4v'
41 arch_uspace_c_args += [ '-DSUN4V' ]
42else
43 error('Unknown PROCESSOR: ' + PROCESSOR)
44endif
45
46
47arch_kernel_c_args = [ '-D__BE__', '-m64', '-mcmodel=medlow', '-mcpu=ultrasparc', '-mno-fpu' ]
48arch_boot_c_args = arch_kernel_c_args
49
50if PROCESSOR == 'us'
51 arch_kernel_c_args += [
52 '-DUS',
53 '-DSUN4U',
54 ]
55elif PROCESSOR == 'us3'
56 arch_kernel_c_args += [
57 '-DUS3',
58 '-DSUN4U',
59 ]
60elif PROCESSOR == 'sun4v'
61 arch_kernel_c_args += [
62 '-DSUN4V',
63 #MH
64 '-DUS',
65 ]
66endif
67
68arch_boot_link_args = []
69arch_kernel_link_args = [ '-nostdlib', '-Wl,-no-check-sections' ]
70arch_uspace_link_args = [ '-nostdlib', '-lgcc' ]
71
72if PROCESSOR == 'sun4v'
73 arch_uspace_link_args += [ '-Wl,-z,max-page-size=0x2000' ]
74else
75 arch_uspace_link_args += [ '-Wl,-z,max-page-size=0x4000' ]
76endif
77
78rd_essential += [
79 'app/ofw'
80]
81
82if PROCESSOR == 'sun4v'
83 rd_essential_drv += [
84 'drv/platform/sun4v',
85 'drv/char/sun4v-con',
86 ]
87else
88 rd_essential_drv += [
89 'drv/platform/sun4u',
90 'drv/bus/pci/pciintel',
91 'drv/bus/isa',
92 'drv/intctl/obio',
93 'drv/char/ns8250',
94 'drv/char/i8042',
95 'drv/hid/ps2mouse',
96 'drv/hid/xtkbd',
97 ]
98endif
99
100rd_drv += rd_essential_drv
Note: See TracBrowser for help on using the repository browser.