source: mainline/meson/arch/ppc32/meson.build@ dc5c303

Last change on this file since dc5c303 was c89ae25, checked in by Jiří Zárevúcky <zarevucky.jiri@…>, 2 years ago

Fix and enable —gc-sections in /kernel and /boot

  • Property mode set to 100644
File size: 2.3 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
30_common_c_args = [ '-D__BE__', '-fno-omit-frame-pointer', '-m32', '-Wa,-a32', '-mcpu=powerpc' ]
31
32arch_kernel_c_args = _common_c_args + [ '-msoft-float' ]
33arch_uspace_c_args = _common_c_args + [ CONFIG_FPU ? '-mhard-float' : '-msoft-float' ]
34arch_boot_c_args = arch_kernel_c_args
35arch_kernel_link_args = [ '-nostdlib', '-Wl,-z,max-page-size=0x1000' ]
36arch_uspace_link_args = [ '-nostdlib', '-lgcc', '-Wl,-z,max-page-size=0x1000' ]
37arch_uspace_link_args += ldflags_ignore_rwx_segments
38arch_boot_link_args = ldflags_ignore_rwx_segments
39
40rd_essential += [
41 'app/ofw'
42]
43
44rd_essential_drv += [
45 'drv/platform/mac',
46 'drv/bus/adb/cuda_adb',
47 'drv/bus/pci/pciintel',
48 'drv/bus/usb/ohci',
49 'drv/bus/usb/usbdiag',
50 'drv/bus/usb/usbflbk',
51 'drv/bus/usb/usbhub',
52 'drv/bus/usb/usbmid',
53 'drv/bus/usb/vhc',
54 'drv/block/usbmast',
55 'drv/hid/adb-kbd',
56 'drv/hid/adb-mouse',
57 'drv/hid/usbhid',
58]
59
60rd_drv += rd_essential_drv
Note: See TracBrowser for help on using the repository browser.