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

ticket/834-toolchain-update topic/msim-upgrade topic/simplify-dev-export
Last change on this file since c77cfd8 was 9754ed2, checked in by Jiri Svoboda <jiri@…>, 4 years ago

Make user-space mouse/keyboard work on Qemu sun4u machine

Now we can run it in graphical mode. Still need to add kernel keyboard
support for this strange hybrid machine.

  • Property mode set to 100644
File size: 2.9 KB
Line 
1#
2# Copyright (c) 2021 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
78if PROCESSOR == 'sun4v'
79 rd_essential_drv += [
80 'drv/platform/sun4v',
81 'drv/char/sun4v-con',
82 ]
83else
84 rd_essential_drv += [
85 'drv/platform/sun4u',
86 'drv/bus/pci/pciintel',
87 'drv/bus/isa',
88 'drv/intctl/obio',
89 'drv/char/ns8250',
90 'drv/char/i8042',
91 'drv/hid/ps2mouse',
92 'drv/hid/xtkbd',
93 ]
94endif
95
96rd_drv += rd_essential_drv
Note: See TracBrowser for help on using the repository browser.